Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- import { Injectable } from '@angular/core';
- import { Observable } from 'rxjs';
- import * as backand from '@backand/vanilla-sdk';
- @Injectable()
- export class BackandService {
- init(config: IBackandConfigOptions | any): void {
- backand.init(config);
- if (config.observable) {
- Object.keys(backand).forEach(key => {
- this[key] = Observable.fromPromise(backand[key]);
- });
- }
- else {
- Object.keys(backand).forEach(key => {
- this[key] = backand[key];
- });
- }
- }
- constants: any;
- helpers: any;
- defaults: any;
- object: IBackandObject | any;
- file: any;
- query: any;
- user: any;
- offline: any;
- bulk: any;
- fn: any;
- invoke: any;
- // auth
- useAnonymousAuth (): any {};
- signin (username: string, password: string): any {};
- signup (firstName: string, lastName: string, email: string, password: string, confirmPassword: string, parameters?: any): any {};
- socialSignin (provider: string): any {};
- socialSigninWithToken (provider: string, token: string): any {};
- socialSignup (provider: string, email: string): any {};
- requestResetPassword (username: string): any {};
- resetPassword (newPassword: string, resetToken: string): any {};
- changePassword (oldPassword: string, newPassword: string): any {};
- signout (): any {};
- getSocialProviders (): any {};
- // socket
- on (eventName: string, callback?: (response?: any) => void): void {};
- }
- export class Response {
- status: number;
- statusText: string;
- headers: any;
- config: any;
- data: any;
- }
- export interface IBackandConfigOptions {
- appName: string;
- anonymousToken: string;
- allowUpdatesinOfflineMode?: boolean;
- afterExecuteOfflineItem?: Function;
- apiUrl?: string;
- beforeExecuteOfflineItem?: Function;
- isMobile?: boolean;
- manageRefreshToken?: boolean;
- mobilePlatform?: string;
- runOffline?: boolean;
- runSigninAfterSignup?: boolean;
- runSocket?: boolean;
- signUpToken?: string;
- storage?: Object;
- storagePrefix?: string;
- socketUrl?: string;
- useAnonymousTokenByDefault?: boolean;
- }
- export interface IBackandObject {
- getList(objectName:string, params?: {}): any;
- getOne(objectName:string, id:number, params?: {}): any;
- create(objectName:string, data:{}, params?: {}): any;
- update(objectName:string, id:number, data:{}, params?: {}): any;
- remove(objectName:string, id:number): any;
- action: IBackandAction;
- // TODO ADD ALL OPTIONS //
- }
- export interface IBackandAction {
- get(objectName:string, action:string, params?: {}): any;
- post(objectName:string, action:string, data: {}, params?: {}): any;
- }
Add Comment
Please, Sign In to add comment