UNPKG

@docsvision/webclient

Version:

Type definitions for DocsVision WebClient scripts and extensions.

108 lines (107 loc) 5.33 kB
import { IEditPopoverProps } from "@docsvision/webclient/Helpers/PopoverHelpers/EditPopover/IEditPopoverProps"; import { IEditPopoverState } from "@docsvision/webclient/Helpers/PopoverHelpers/EditPopover/IEditPopoverState"; import { IBasicEvent } from "@docsvision/webclient/System/IBasicEvent"; import { ICancelableEvent } from "@docsvision/webclient/System/ICancelableEvent"; import { IEventArgs } from "@docsvision/webclient/System/IEventArgs"; import React from "react"; /** * Использует {@link Popover} для отображения вслывающего окна контролов, в режиме edit-in-place. * * Для создания всплывающего окна следует исполдьзовать статический метод {@link EditPopover.CreatePopover} */ export declare class EditPopover extends React.Component<IEditPopoverProps, IEditPopoverState> { private contentRoot; private wrapper; private popover; constructor(props: IEditPopoverProps); /** Событие, возникающее перед показом окна */ get showing(): ICancelableEvent<IEventArgs>; /** Событие, возникающее после показа окна */ get shown(): IBasicEvent<IEventArgs>; /** Событие, возникающее перед нажатием кнопки OK */ get accepting(): ICancelableEvent<IEventArgs>; /** Событие, возникающее после нажатия кнопки ОК */ get accepted(): IBasicEvent<IEventArgs>; /** Событие, возникающее перед закрытием окна путем нажатия кнопки Отмена, клавиши Esc или щелчка вне вслывающего окна) */ get canceling(): ICancelableEvent<IEventArgs>; /** Событие, возникающее после нажатия кнопки Отмена, клавиши Esc или щелчка вне вслывающего окна. */ get canceled(): IBasicEvent<IEventArgs>; /** Событие, возникающее перед показом окна */ get hidding(): ICancelableEvent<IEventArgs>; /** Событие, возникающее после скрытия окна */ get hidden(): IBasicEvent<IEventArgs>; /** Css-класс */ get className(): string; set className(val: string); /** Css-класс рутового элемента */ get rootClassName(): string; set rootClassName(val: string); /** * Создает экземпляр вслывающего окна. * * После создания следует использовать {@link contentElement} свойство для задания содержимого, и методы {@link show} и {@link hide} * для управления всплывающим окном. */ static CreatePopover(popoverOptions: IEditPopoverProps): Promise<EditPopover>; /** * HTMLElement, в который следует поместить содержимое всплывающего окна. * * Внимание! Значение свойства будет принициализировано только после вызова {@link IEditPopoverProps.onMounted} */ get contentElement(): HTMLElement; /** * Отображает всплыающее окно на экране. */ show(): Promise<void>; /** * Скрывает всплыающее окно. */ hide(): Promise<unknown>; /** * Отображается всплыающее окно на экране в данный момент или нет. */ get visible(): boolean; set visible(val: boolean); /** * Настройка, определяющая, будет ли окно скрываться по клику во вне. */ get hideByClickOutside(): boolean; set hideByClickOutside(val: boolean); /** * Настройка, определяющая, будет ли окно скрываться по нажатию Esc */ get hideByEsc(): boolean; set hideByEsc(val: boolean); /** * Настройка, определяющая, будет ли иницироваться применение изменений по нажатию клавиши Enter. */ get acceptByEnter(): boolean; set acceptByEnter(val: boolean); get ignoreOutsideClicksSelectors(): string[] | undefined; set ignoreOutsideClicksSelectors(val: string[] | undefined); /** * Корректно очищает содержимое {@link contentElement} */ clearContent(): void; /** * Скрывает окно и очищает все используемые ресурсы. */ dispose(): void; /** * Перессчитать позицию окна. */ updatePositions(): void; private attachPopover; private onKeyEnter; private onKeyEsc; private attachContentRoot; private hideInternal; accept(): Promise<unknown>; cancel(): Promise<unknown>; private onOkClick; private onCancelClick; private onClickOutside; private renderSaveCancelButtons; /** @internal */ render(): JSX.Element; }