dynamicsmobile
Version:
Allows development of off-line mobile and web business apps over the Dynamics Mobile platform. More info on https://www.dynamicsmobile.com
58 lines (57 loc) • 2.18 kB
TypeScript
import { DmsApplicationService } from './application-context-service';
import { Application } from './application';
export type RouteObject = {
pageName: string;
name: string;
path: string;
validate: boolean;
preserveContext: boolean;
routeId: string;
lastStepId: string;
};
export type ViewNavigationState = {
routeId: string;
routeTarget: string;
preserveContext: boolean;
currentTaskId: string;
currentStepId: string;
isValidating: boolean;
};
export declare abstract class DmsTask {
protected _viewClasses: Array<any>;
protected _viewInstances: Array<any>;
protected _taskId: string;
protected _appCode: string;
protected _isTestMode: boolean;
protected _app: Application;
protected _isanonymousAccessAllowed: boolean;
dms: DmsApplicationService;
protected domManager: any;
constructor(appCode: string, taskId: string, app: Application, isanonymousAccessAllowed: boolean, viewClasses: Array<any>);
protected abstract setupInjectableServices(): void;
private findViewInstanceByViewId;
findViewClassByViewId(viewId: any): any;
private getCookie;
protected showViewOverlay(): void;
protected hideViewOverlay(): void;
protected doCreateView(page: any, dms: DmsApplicationService): Promise<void>;
protected applyColorTheme(): Promise<void>;
protected applyPlatformTheme(): string;
validateView(_currentViewInstance: any, routeObject: RouteObject): Promise<boolean>;
protected findRoute(stepId: string, routeId: string): RouteObject;
private attachEventEmitterEvents;
private processSecurityByTask;
protected initializeUIFramework({ theme, allTaskRoutes }: {
theme: string;
allTaskRoutes: any[];
}): Promise<void>;
private processTaskRoutes;
private registerComponent;
private registerViewComponents;
private callComponentsHook;
protected getUrlParameter(name: string): string;
abstract run(isTestMode?: boolean): Promise<void>;
protected internalRun(isTestMode?: boolean): Promise<void>;
protected internalNavigate(routeObect: RouteObject): Promise<void>;
dispose(): void;
}