UNPKG

@docsvision/webclient

Version:

Type definitions for DocsVision WebClient scripts and extensions.

75 lines (74 loc) 5.26 kB
import { $PowersDirectoryController } from '@docsvision/webclient/Generated/DocsVision.WebClient.Controllers'; import { GenModels } from "@docsvision/webclient/Generated/DocsVision.WebClient.Models"; import { FieldNameAccessor } from '@docsvision/webclient/Helpers/DynamicModel/FieldNameAccessor'; import { FuncAccessor } from '@docsvision/webclient/Helpers/DynamicModel/FuncAccessor'; import { DirectorySelectDialog, IDirectorySelectDialogProps, IDirectorySelectDialogState } from '@docsvision/webclient/System/DirectorySelectDialog'; import { IDirectoryChildrenLoadResponse, IDirectoryItem, IDirectorySearchItem, IDirectorySearchResponse } from '@docsvision/webclient/System/DirectoryServerModels'; import { BasicApiEvent, CancelableApiEvent } from "@docsvision/webclient/System/ApiEvent"; import React from "react"; import { $CardInfo } from "@docsvision/webclient/System/LayoutServices"; import { PowersValueType, PowersNodeType } from "@docsvision/webclient/BackOffice/Powers"; import { IPowersDialog } from "@docsvision/webclient/BackOffice/IPowersDialog"; import { IPowersDataLoadingEventArgs } from "@docsvision/webclient/BackOffice/IPowersDataLoadingEventArgs"; import { IPowerModel } from '@docsvision/webclient/BackOffice/IPowerModel'; declare type ItemT = IPowerModel; /** @internal */ export interface IPowersSelectDialogSearchPathOptions { path: GenModels.DepartmentModel[]; notAppendToSelectedFilterPath?: boolean; } /** @internal */ export interface IPowersSelectDialogProps extends IDirectorySelectDialogProps<PowersValueType, PowersNodeType, ItemT> { searchResultsLoading: CancelableApiEvent<IPowersDataLoadingEventArgs>; searchResultsLoaded: BasicApiEvent<IPowersDataLoadingEventArgs>; onSelectedValuesChanged: (values: ItemT[]) => void; multipleSelection: boolean; initialSelectedValues: ItemT[]; services: $PowersDirectoryController & $CardInfo; } /** @internal */ export interface IPowersSelectDialogState extends IDirectorySelectDialogState<PowersValueType, PowersNodeType, ItemT> { selectedValues: ItemT[]; previousSelected: ItemT; isGroupSearch: boolean; } /** @internal */ export declare class PowersSelectDialog extends DirectorySelectDialog<PowersValueType, PowersNodeType, ItemT, IPowersSelectDialogProps, IPowersSelectDialogState> implements IPowersDialog { directoryDataId: FieldNameAccessor<IPowerModel, string>; directoryDataName: FuncAccessor<IPowerModel, string>; directoryDataTip: FuncAccessor<IPowerModel, string>; constructor(props: IPowersSelectDialogProps); protected getSearchItemDisplayName(item: IDirectorySearchItem<IPowerModel, IPowerModel>): string; protected search(searchText: string, nodeId: string, nodeType: GenModels.DirectoryDataType, maxCount: number, skip: number, reset: boolean): Promise<IDirectorySearchResponse<IPowerModel, IPowerModel>>; protected getSearchItemIconClassName(item: IDirectorySearchItem<PowersNodeType, PowersNodeType | ItemT>): string; protected getSearchItemTooltip(item: IDirectorySearchItem<PowersNodeType, PowersNodeType | ItemT>): string; protected getItemDisplayName(item: IDirectoryItem<ItemT>): string; protected getItemIconClassName(item: IDirectoryItem<ItemT>): string; protected getItemTooltip(item: IDirectoryItem<ItemT>): string; get selectedItems(): IPowerModel[]; set selectedItems(items: IPowerModel[]); protected itemHasChildren(item: IDirectoryItem<PowersNodeType | ItemT>): boolean; protected itemIsNode(item: IDirectoryItem<PowersNodeType | ItemT>): boolean; protected loadChildrenList(nodeId: string, nodeType: GenModels.DirectoryDataType, from: number, to: number): Promise<IDirectoryChildrenLoadResponse<PowersNodeType | ItemT>>; isPowersItemSelected(item: IDirectoryItem<ItemT>): boolean; protected onChildrenListItemFocus(item: IDirectoryItem<ItemT>, ev: React.FocusEvent): void; protected onChildrenListItemClick(item: IDirectoryItem<ItemT>, ev: React.MouseEvent): void; protected onChildrenListItemSelectSibling(mode: 'prev' | 'next', index: number, getCollectionData: () => IDirectoryItem<ItemT>[]): void; private onPowersItemClick; protected onDialogAccept(): void; protected processMultiSelectValue(item: IDirectoryItem<ItemT>): void; protected isGoToButtonActive(item: IDirectoryItem<ItemT>): boolean; protected onChildrenListItemKeyDown(item: IDirectoryItem<ItemT>, ev: React.KeyboardEvent<unknown>): boolean; protected onChildrenListItemDoubleClick(item: IDirectoryItem<ItemT>, ev: React.MouseEvent<unknown>): boolean; protected isItemAllowedToAccept(item: IDirectoryItem<ItemT>): boolean; protected onItemDoubleClick(item: IDirectoryItem<ItemT>, ev: React.MouseEvent<unknown>): boolean; protected onPowersItemKeyDown(item: IDirectoryItem<ItemT>, ev: React.KeyboardEvent<unknown>): boolean; protected onRemoveMultiSelectItemClick(item: IPowerModel): void; protected renderDialogBreadcrumbs(): JSX.Element; protected getDialogHeader(): JSX.Element; protected renderSearchInput(): any; protected renderItemName(item: IDirectoryItem<ItemT>): JSX.Element; protected isDialogSelectButtonEnabled(): boolean; protected renderDialogSelectButtonName(): string; } export {};