@docsvision/webclient
Version:
Type definitions for DocsVision WebClient scripts and extensions.
74 lines (73 loc) • 4.39 kB
TypeScript
import { $DocumentCardController } from "@docsvision/webclient/Legacy/DocumentCard";
import { ISignatureListItemDataModel } from "@docsvision/webclient/Legacy/ISignatureListItemDataModel";
import { LoadingState } from "@docsvision/webclient/System/LoadingState";
import React from "react";
import { $LayoutDocumentController, $PowerOfAttorneyApiController, $SignatureController } from "@docsvision/webclient/Generated/DocsVision.WebClient.Controllers";
import { $WebViewIOSEnabled } from "@docsvision/webclient/StandardServices";
import { Popover } from "@docsvision/webclient/Helpers/PopoverHelpers/Popover";
import { GenModels } from "@docsvision/webclient/Generated/DocsVision.WebClient.Models";
import { ISignatureListItemDetailDataModel } from "@docsvision/webclient/Legacy/ISignatureListItemDetailDataModel";
import { $RequestManager } from "@docsvision/webclient/System/$RequestManager";
import { $CloudSignature } from "@docsvision/webclient/BackOffice/$CloudSignature";
import { $Resources } from "@docsvision/web/core/localization/$Resources";
import { $MessageBox } from "@docsvision/webclient/System/$MessageBox";
import { $Router } from "@docsvision/webclient/System/$Router";
/** @internal */
export interface IFileSignListDialogProps {
/** Идентификатор документа. */
documentId: string;
/** Вызывается после инициализации окна со списком подписей. */
onInit?: () => void;
/** Вызывается при закрытии окна со списком подписей. */
onClose?: () => void;
services: $DocumentCardController & $SignatureController & $LayoutDocumentController & $WebViewIOSEnabled & $RequestManager & $CloudSignature & $PowerOfAttorneyApiController & $Resources & $MessageBox & $Router;
}
/** @internal */
export interface IFileSignListDialogState {
/** Информация о стадии инициализации компонента. */
initLoading: LoadingState;
/** Список подписей. */
signatures: ISignatureListItemDataModel[];
/** Идентификатор выбранной подписи. */
selectedSignatureId: string;
}
/** @internal */
export declare class FileSignListDialog extends React.Component<IFileSignListDialogProps, IFileSignListDialogState> {
signInfoPopover: Popover;
validationStateStyle: {
[key: number]: string;
};
constructor(props: IFileSignListDialogProps);
/** @internal */
UNSAFE_componentWillMount(): void;
init(): Promise<void>;
componentDidMount(): void;
verifyInCloud(signature: ISignatureListItemDataModel): Promise<void>;
/** Обновляет журнал подписей. */
update: () => Promise<void>;
/** Выполняется при закрытии окна со списком подписей. */
protected onClose: () => void;
/**
* Отрисовывает строку таблицы с информацией о подписи.
* @param signature Подпись
* @param index Номер строки
*/
protected renderRow(signature: ISignatureListItemDataModel, index: number): JSX.Element;
protected showInfoPopover: (documentId: string, signaturePartId: string, signatureId: string, detail: ISignatureListItemDetailDataModel) => void;
protected hideInfoPopover: (detail: ISignatureListItemDetailDataModel) => void;
protected updateInfoPopopverPosition: () => void;
/**
* Отрисовывает подробную информацию о подписи.
* @param signatureId Идентификатор подписи
*/
protected renderSignatureDetails(signatureId: string, showTimestamp: boolean, detailsColumnCount: number, showExpireDate: boolean): any[];
private renderSignatureInfoPopover;
protected renderResultOfValidation(powerOfAttorneyData: GenModels.PowerOfAttorneyVerificationModel): JSX.Element;
private renderPowerOfAttorneyLink;
protected renderPowerOfAttorneyTitle(powerOfAttorneyData: GenModels.PowerOfAttorneyVerificationModel): JSX.Element;
protected renderPowerOfAttorneyInfo(powerOfAttorneyId: any): Promise<void>;
/** Отрисовывает таблицу с информацией о подписях. */
renderTable(): JSX.Element;
/** @internal */
render(): JSX.Element;
}