nakedobjects.spa
Version:
Single Page Application client for a Naked Objects application.
73 lines (72 loc) • 3.31 kB
TypeScript
import { MessageViewModel } from './message-view-model';
import { ColorService } from '../color.service';
import { ContextService } from '../context.service';
import { ViewModelFactoryService } from '../view-model-factory.service';
import { UrlManagerService } from '../url-manager.service';
import { ErrorService } from '../error.service';
import { PaneRouteData, Pane } from '../route-data';
import { ChoiceViewModel } from './choice-view-model';
import { ActionViewModel } from './action-view-model';
import { MenuItemViewModel } from './menu-item-view-model';
import { PropertyViewModel } from './property-view-model';
import { CollectionViewModel } from './collection-view-model';
import * as Models from '../models';
import { ConfigService } from '../config.service';
import { IMenuHolderViewModel } from './imenu-holder-view-model';
export declare class DomainObjectViewModel extends MessageViewModel implements IMenuHolderViewModel {
private readonly colorService;
private readonly contextService;
private readonly viewModelFactory;
private readonly urlManager;
private readonly error;
private readonly configService;
routeData: PaneRouteData;
constructor(colorService: ColorService, contextService: ContextService, viewModelFactory: ViewModelFactoryService, urlManager: UrlManagerService, error: ErrorService, configService: ConfigService, obj: Models.DomainObjectRepresentation, routeData: PaneRouteData, forceReload: boolean);
private readonly keySeparator;
private props;
private instanceId;
unsaved: boolean;
value: string;
reference: string;
selectedChoice: ChoiceViewModel | null;
color: string;
draggableType: string;
draggableTitle: () => string;
domainObject: Models.DomainObjectRepresentation;
onPaneId: Pane;
title: string;
friendlyName: string;
presentationHint: string;
domainType: string;
isInEdit: boolean;
actions: ActionViewModel[];
menuItems: MenuItemViewModel[];
properties: PropertyViewModel[];
collections: CollectionViewModel[];
private readonly editProperties;
private readonly isFormOrTransient;
private readonly cancelHandler;
private readonly saveHandler;
private readonly validateHandler;
private handleWrappedError(reject);
private propertyMap;
private wrapAction(a);
private reset(obj, routeData, resetting);
concurrency(): void;
readonly clientValid: () => boolean;
readonly tooltip: () => string;
readonly actionsTooltip: () => "Close actions" | "No actions available" | "Open actions (Alt-a)";
readonly toggleActionMenu: () => void;
readonly setProperties: () => PropertyViewModel[];
readonly doEditCancel: () => void;
readonly clearCachedFiles: () => PropertyViewModel[];
readonly doSave: (viewObject: boolean, onSuccess: () => void) => Promise<void>;
readonly currentPaneData: () => PaneRouteData;
readonly doSaveValidate: () => Promise<boolean>;
readonly doEdit: () => void;
readonly doReload: () => void;
readonly hideEdit: () => boolean;
readonly noActions: () => boolean;
readonly canDropOn: (targetType: string) => Promise<boolean>;
readonly showActions: () => boolean;
}