UNPKG

@docsvision/webclient

Version:

Type definitions for DocsVision WebClient scripts and extensions.

101 lines (100 loc) 4.47 kB
import { GenModels } from "@docsvision/webclient/Generated/DocsVision.WebClient.Models"; import { Layout } from "@docsvision/webclient/System/Layout"; import { $LayoutInfo } from '@docsvision/webclient/System/LayoutServices'; import { ILayoutContainer } from "@docsvision/webclient/System/ILayoutContainer"; import { ServiceContainer } from '@docsvision/web/core/services'; import { IRealTimeCommunicationMessage } from '@docsvision/webclient/System/IRealTimeCommunicationMessage'; export declare const LAYOUT_ROOT_CONTAINER_CLASSNAME = "layout-root-container"; /** Сервисный класс, обеспечивающий функционирование разметки. */ export declare class LayoutContainer<T extends GenModels.LayoutViewModel> implements ILayoutContainer<T> { private layoutContainerParams; private layoutContainerInfo; private layoutResolver; private initialized; layoutServiceContainer: ServiceContainer; services: $LayoutInfo; private constructor(); /** * Скрывать ли диалог подтверждения действия пользователя при изменении маршрута */ get pageLeaveConfirmationDisabled(): boolean; set pageLeaveConfirmationDisabled(value: boolean); /** * Возвращает ID текущей разметки * @internal */ get id(): string; /** * Возвращает разметку карточки. */ get layout(): Layout; /** * Возвращает корневой элемент, в котором расположена разметка. */ get rootElement(): HTMLElement; /** Модель разметки, поступившая с сервера Web-клиента. */ get layoutViewModel(): T; /** * Возвращает контейнеры дочерних разметок */ get children(): ILayoutContainer<GenModels.LayoutViewModel>[]; /** * Возвращает родительский контейнер, в котором находится текущий контейнер */ get parent(): ILayoutContainer<GenModels.LayoutViewModel>; /** @internal */ static create<T extends GenModels.LayoutViewModel>(options: { layoutViewModel: T; name: string; root: string | HTMLElement; positionName: string; parent: LayoutContainer<GenModels.LayoutViewModel>; unmountCallback?: (layoutContainer: LayoutContainer<GenModels.LayoutViewModel>) => void; mountCallback: (layoutContainer: LayoutContainer<GenModels.LayoutViewModel>) => void; services: ServiceContainer; }): Promise<LayoutContainer<T>>; /** * @internal */ removeChild(layoutContainer: LayoutContainer<GenModels.LayoutViewModel>): void; /** * @internal */ addChild(layoutContainer: LayoutContainer<GenModels.LayoutViewModel>): void; /** * Инициализация разметки. */ protected initialize(deferred: Promise<Layout>): Promise<void>; /** * Перезагрузка разметки с данными, переданными в параметре layoutViewModel */ reload(layoutViewModel: T): Promise<void>; /** * Уничтожение разметки. */ destroy(): Promise<void>; protected onCardChanged: (message: IRealTimeCommunicationMessage<any>) => void; protected onCardDisabled: (message: IRealTimeCommunicationMessage<any>) => void; /** @internal */ protected mapLayout(layoutResolver: () => Layout): void; /** @internal */ protected prepareModel(deferred: Promise<Layout>): void; /** @internal */ protected renderLayout(deferred: Promise<Layout>): void; protected loadAsyncControls(): Promise<void>; /** * Возвращает наименование позиции. */ get positionName(): string; get PositionName(): string; /** * @deprecated Возвращает наименование разметки */ get name(): string; /** * @deprecated Возвращает идентификатор корневого элемента, в котором расположена разметка. */ get rootElementId(): string; /** @deprecated Модель разметки, поступившая с сервера Web-клиента. */ get layoutCardModel(): T; }