nakedobjects.spa
Version:
Single Page Application client for a Naked Objects application.
90 lines (89 loc) • 2.85 kB
TypeScript
/// <reference types="lodash" />
import * as Models from './models';
import { ConfigService } from './config.service';
import { LoggerService } from './logger.service';
import { Dictionary } from 'lodash';
export declare type PaneName = "pane1" | "pane2";
export declare type PaneType = "single" | "split";
export interface ICustomActivatedRouteData {
pane: number;
paneType: PaneType;
dynamicType?: ViewType.Object | ViewType.List;
}
export declare enum ViewType {
Home = 0,
Object = 1,
List = 2,
Error = 3,
Recent = 4,
Attachment = 5,
ApplicationProperties = 6,
MultiLineDialog = 7,
}
export declare enum CollectionViewState {
Summary = 0,
List = 1,
Table = 2,
}
export declare enum ApplicationMode {
Gemini = 0,
Cicero = 1,
}
export declare enum InteractionMode {
View = 0,
Edit = 1,
Transient = 2,
Form = 3,
NotPersistent = 4,
}
export declare class RouteData {
private readonly configService;
private readonly loggerService;
constructor(configService: ConfigService, loggerService: LoggerService);
pane1: PaneRouteData;
pane2: PaneRouteData;
pane: (pane: Pane) => PaneRouteData;
}
export declare enum Pane {
Pane1 = 1,
Pane2 = 2,
}
export declare function getOtherPane(paneId: Pane): Pane;
export declare class PaneRouteData {
paneId: Pane;
private readonly doUrlValidation;
private readonly loggerService;
constructor(paneId: Pane, doUrlValidation: boolean, loggerService: LoggerService);
rawParms: Dictionary<string>;
rawParmsWithoutReload: Dictionary<string>;
location: ViewType;
objectId: string;
menuId: string;
collections: Dictionary<CollectionViewState>;
selectedCollectionItems: Dictionary<boolean[]>;
actionsOpen: string;
actionId: string;
actionParams: Dictionary<Models.Value>;
state: CollectionViewState;
dialogId: string;
dialogFields: Dictionary<Models.Value>;
page: number;
pageSize: number;
interactionMode: InteractionMode;
errorCategory: Models.ErrorCategory;
attachmentId: string;
private validatingUrl;
isValid(name: string): void;
private isNull;
private isNotNull;
private isLength0;
private isEmptyMap;
private assertMustBe(context, name, contextCondition, valueCondition);
assertMustBeEmptyOutsideContext(context: string, name: string): void;
assertMustBeNullOutsideContext(context: string, name: string): void;
assertMustBeNullInContext(context: string, name: string): void;
assertMustBeZeroLengthInContext(context: string, name: string): void;
validate(url: string): void;
isEqual(other: PaneRouteData): boolean;
isEqualIgnoringReload(other: PaneRouteData): boolean;
}