@docsvision/webclient
Version:
Type definitions for DocsVision WebClient scripts and extensions.
72 lines (71 loc) • 5.13 kB
TypeScript
/// <reference types="react" />
import { IPartnerDataLoadingEventArgs } from "@docsvision/webclient/BackOffice/IPartnerDataLoadingEventArgs";
import { PartnerDirectoryItemVisualiser } from "@docsvision/webclient/BackOffice/PartnerDirectoryItemVisualiser";
import { $DepartmentController, $LayoutPartnerController, $LayoutRowController, $LayoutStaffController } from "@docsvision/webclient/Generated/DocsVision.WebClient.Controllers";
import { GenModels } from "@docsvision/webclient/Generated/DocsVision.WebClient.Models";
import { LayoutControl } from '@docsvision/webclient/System/BaseControl';
import { DirectorySelectDialog, IDirectorySelectDialogProps, IDirectorySelectDialogState } from '@docsvision/webclient/System/DirectorySelectDialog';
import { IDirectoryChildrenLoadResponse, IDirectoryItem, IDirectorySearchItem, IDirectorySearchResponse } from '@docsvision/webclient/System/DirectoryServerModels';
import { $LocationContainerControlServices } from '@docsvision/webclient/System/LocationContainerControl';
import { BasicApiEvent, CancelableApiEvent } from "@docsvision/webclient/System/ApiEvent";
declare type ValueT = GenModels.DepartmentModel | GenModels.EmployeeDataModel;
declare type NodeT = GenModels.DepartmentModel;
declare type ItemT = GenModels.EmployeeDataModel;
/** @internal */
export interface IPartnerDirectorySelectDialogSearchPathOptions {
path: GenModels.DepartmentModel[];
notAppendToSelectedFilterPath?: boolean;
}
/** @internal */
export interface IPartnerDirectorySelectDialogProps extends IDirectorySelectDialogProps<ValueT, NodeT, ItemT> {
itemVisualiser: PartnerDirectoryItemVisualiser;
searchResultsLoading: CancelableApiEvent<IPartnerDataLoadingEventArgs>;
searchResultsLoaded: BasicApiEvent<IPartnerDataLoadingEventArgs>;
allowDirectoryEdit: boolean;
parent: LayoutControl;
services: $LayoutPartnerController & $LayoutRowController & $LocationContainerControlServices & $LayoutStaffController & $DepartmentController;
}
/** @internal */
export interface IPartnerDirectorySelectDialogState extends IDirectorySelectDialogState<ValueT, NodeT, ItemT> {
searchMode: GenModels.PartnerSearchMode;
openActionMenuItem: GenModels.PartnerDirectoryItem | undefined;
openInfoItem: GenModels.PartnerDirectoryItem | undefined;
}
/** @internal */
export declare class PartnerDirectorySelectDialog extends DirectorySelectDialog<ValueT, NodeT, ItemT, IPartnerDirectorySelectDialogProps, IPartnerDirectorySelectDialogState> {
constructor(props: IPartnerDirectorySelectDialogProps);
protected itemHasChildren(item: IDirectoryItem<NodeT | ItemT>): boolean;
protected itemIsNode(item: IDirectoryItem<NodeT | ItemT>): boolean;
protected getSearchItemDisplayName(item: IDirectorySearchItem<NodeT, NodeT | ItemT>): string;
protected getSearchItemIconClassName(item: IDirectorySearchItem<NodeT, NodeT | ItemT>): string;
protected getSearchItemTooltip(item: IDirectorySearchItem<NodeT, NodeT | ItemT>): string;
protected getItemDisplayName(item: IDirectoryItem<NodeT | ItemT>): string;
protected getItemIconClassName(item: IDirectoryItem<NodeT | ItemT>): string;
protected getItemTooltip(item: IDirectoryItem<NodeT | ItemT>): string;
protected loadChildrenList(nodeId: string, nodeType: any, from: number, to: number): Promise<IDirectoryChildrenLoadResponse<NodeT | ItemT>>;
protected search(searchText: string, nodeId: string, nodeType: any, maxCount: number, skip: number, reset: boolean): Promise<IDirectorySearchResponse<NodeT, NodeT | ItemT>>;
protected onToggleSearchMode: () => void;
protected onOpenActionMenu: (item: GenModels.PartnerDirectoryItem | GenModels.PartnerDirectorySearchItem) => void;
protected onCloseActionMenu: () => void;
protected isGoToButtonActive(item: IDirectoryItem<NodeT | ItemT>): boolean;
protected getGoToButtonTitle(item: IDirectoryItem<NodeT | ItemT>): string;
protected isGoToButtonVisible(item: IDirectoryItem<NodeT | ItemT>): boolean;
protected onShowInfo: (item: GenModels.PartnerDirectoryItem) => void;
protected onHideInfo: () => void;
protected onEdit: (item: GenModels.PartnerDirectoryItem) => Promise<void>;
protected onDelete: (item: GenModels.PartnerDirectoryItem) => void;
protected onCreateOrganization: () => Promise<void>;
protected onCreateDepartment: () => Promise<void>;
protected onCreateEmployee: () => Promise<void>;
protected renderActionButton: (item: IDirectoryItem<NodeT | ItemT>) => JSX.Element;
protected renderActionMenu: (item: IDirectoryItem<NodeT | ItemT>) => JSX.Element;
protected renderSearchItemPath(item: IDirectorySearchItem<NodeT, NodeT | ItemT>): JSX.Element;
protected getMatchedPropertyNameTranslation(item: IDirectorySearchItem<NodeT, NodeT | ItemT>): string;
protected renderDialogBreadcrumbs(): JSX.Element;
protected renderSearchModeToggle(): JSX.Element;
protected getSearchInputClassName(): string;
protected getSearchInputPlaceholder(): string;
protected renderExtraDialogButtons(): JSX.Element;
protected getDialogHeader(): JSX.Element;
}
export {};