@docsvision/webclient
Version:
Type definitions for DocsVision WebClient scripts and extensions.
71 lines (70 loc) • 5.35 kB
TypeScript
import { GenModels } from '@docsvision/webclient/Generated/DocsVision.WebClient.Models';
import { IDirectoryFilterChangeEventArgs } from "@docsvision/webclient/System/IDirectoryFilterChangeEventArgs";
import { DirectoryBaseImpl, DirectoryBaseState } from "@docsvision/webclient/System/DirectoryBaseImpl";
import { DirectorySelectDialog } from "@docsvision/webclient/System/DirectorySelectDialog";
import { InputBasedControl, InputBasedControlParams } from "@docsvision/webclient/System/InputBasedControl";
import { $EditOperationStore, $LayoutInfo } from "@docsvision/webclient/System/LayoutServices";
import { IBindingResult } from "@docsvision/webclient/System/IBindingResult";
import { BasicApiEvent, CancelableApiEvent } from "@docsvision/webclient/System/ApiEvent";
export declare class DirectoryBaseParams<ValueT extends NodeT | ItemT | NodeT[] | ItemT[], NodeT extends GenModels.IDirectoryItemData, ItemT extends GenModels.IDirectoryItemData> extends InputBasedControlParams<ValueT> {
/** Стандартный CSS класс со стилями элемента управления */
standardCssClass?: string;
/**
* Значение фильтра, которое которое недоступно для очистки в пользовательском интерфейсе.
* Внимание: при изменении значения параметра, значение {@link selectedFilterPath} сбрасывается.
*/
predefinedFilter?: NodeT;
/** Значение фильтра, которое было выбрано пользователем. */
selectedFilterPath?: NodeT[];
/** Текущий фильтр. Объединяет значения {@link predefinedFilter} и {@link selectedFilter} */
currentFilterPath?: NodeT[];
/** Задержка в милисекундах после изменения поискового запроса и перед отправкой запроса на сервер. */
searchDelay?: number;
/** Флаг, указывающий на состояние окна выбора организации/подразделения: true - открыто, false - закрыто. */
isDirectoryWindowShown?: boolean;
/** Ссылка на компонент модального окна для выбора контрагентов. */
directoryWindow?: DirectorySelectDialog<ValueT, NodeT, ItemT>;
/** Событие, возникающее перед открытием модального окна для выбора контрагентов. */
directoryWindowOpening?: CancelableApiEvent<void>;
/** Событие, возникающее после открытия модального окна для выбора контрагентов. */
directoryWindowOpened?: BasicApiEvent<void>;
/** Событие, возникающее перед закрытием модального окна для выбора контрагентов. */
directoryWindowClosing?: CancelableApiEvent<void>;
/** Событие, возникающее после закрытия модального окна для выбора контрагентов. */
directoryWindowClosed?: BasicApiEvent<void>;
/** Событие, возникающее перед изменением фильтра контрагентов. */
currentFilterChanging?: CancelableApiEvent<IDirectoryFilterChangeEventArgs<NodeT>>;
/** Событие, возникающее после изменения фильтра контрагентов. */
currentFilterChanged?: BasicApiEvent<IDirectoryFilterChangeEventArgs<NodeT>>;
}
export declare abstract class DirectoryBase<ValueT extends NodeT | ItemT | NodeT[] | ItemT[], NodeT extends GenModels.IDirectoryItemData, ItemT extends GenModels.IDirectoryItemData, ParamsT extends DirectoryBaseParams<ValueT, NodeT, ItemT> = DirectoryBaseParams<ValueT, NodeT, ItemT>, StateT extends DirectoryBaseState<ValueT, NodeT, ItemT> = DirectoryBaseState<ValueT, NodeT, ItemT>> extends InputBasedControl<ValueT, ParamsT, StateT> {
/** @internal */
protected get directoryImpl(): DirectoryBaseImpl<ValueT, NodeT, ItemT>;
protected abstract getServices(): $LayoutInfo & $EditOperationStore;
private set directoryBindingHandler(value);
private get currentFilterPath();
private set selectedFilterPath(value);
private set predefinedFilter(value);
/** @internal */
get isDictionaryShown(): boolean;
/** @internal */
protected getParamsToKeep(params: any): {
selectedFilterPath: any;
value: ValueT;
};
/**
* Проверяет возможность открытия модального окна выбора организации/подразделения.
* @return true - возможно (если значение редактируемое), false - невозможно.
*/
canShowDictionary(): boolean;
/**
* Открывает окно выбора организации/подразделения.
*/
showDictionary(): void;
/**
* Закрывает окно выбора организации/подразделения.
*/
hideDictionary(): void;
/** @internal */
protected getBindings(): IBindingResult<any>[];
}