@docsvision/webclient
Version:
Type definitions for DocsVision WebClient scripts and extensions.
231 lines (230 loc) • 15.6 kB
TypeScript
import { LinkItem } from "@docsvision/webclient/BackOffice/LinkItem";
import { LinkSelectionItem } from '@docsvision/webclient/BackOffice/LinkSelectionItem';
import { ViewDisplayMode } from '@docsvision/webclient/BackOffice/ViewDisplayMode';
import { ILinkEventArgs } from "@docsvision/webclient/BackOffice/ILinkEventArgs";
import { LinksImpl, LinksState } from "@docsvision/webclient/BackOffice/LinksImpl";
import { $LayoutFileController, $LayoutLinksController, $LayoutController, $CardOperationsController } from "@docsvision/webclient/Generated/DocsVision.WebClient.Controllers";
import { GenModels } from "@docsvision/webclient/Generated/DocsVision.WebClient.Models";
import { $FileController } from "@docsvision/webclient/Legacy/FileController";
import { Panel, PanelParams } from '@docsvision/webclient/Platform/Panel';
import { $ApplicationSettings, $DeviceType } from '@docsvision/webclient/StandardServices';
import { $Layout } from "@docsvision/webclient/System/$Layout";
import { $CardId, $CardInfo, $CardTimestamp, $EditOperationStore, $LayoutInfo } from "@docsvision/webclient/System/LayoutServices";
import { BasicApiEvent, CancelableApiEvent } from "@docsvision/webclient/System/ApiEvent";
import { IEventArgs } from "@docsvision/webclient/System/IEventArgs";
import { $LayoutManager } from '@docsvision/webclient/System/$LayoutManager';
import { $LocalStorage } from '@docsvision/webclient/System/$LocalStorage';
import { $LinksSearchCards } from '@docsvision/webclient/BackOffice/$LinksSearchCardsService';
import { Optional } from '@docsvision/web/core/services';
import { $LayoutCheck } from '@docsvision/webclient/System/$LayoutCheckService';
import { $RequestManager } from '@docsvision/webclient/System/$RequestManager';
import { $FileService } from '@docsvision/webclient/System/$FileService';
import { $FilePreview } from '@docsvision/webclient/Platform/$FilePreview';
import { ISelectedCardsAddingEventArgs } from "@docsvision/webclient/BackOffice/ISelectedCardsAddingEventArgs";
/**
* Публичные свойства для контрола {@link Links}.
*/
export declare class LinksParams extends PanelParams {
/** Стандартный CSS класс со стилями элемента управления */
standardCssClass?: string;
/** Модель с данными о ссылке. */
model?: GenModels.LinksDataModel;
/** Список ссылок */
links?: LinkItem[];
/** Режим отображения для просмотра. */
viewDisplayMode?: ViewDisplayMode;
/** Доступно ли создание ссылок */
createLinkAvailable?: boolean;
/** Доступно ли добавление ссылок */
addLinkAvailable?: boolean;
/** Доступно ли добавление гиперссылок */
addUrlAvailable?: boolean;
/** Доступно ли добавление файлов */
addFileAvailable?: boolean;
/** Доступно ли изменение файлов */
editFileAvailable?: boolean;
/** Доступно ли удаление ссылок */
deleteLinkAvailable?: boolean;
/** Доступно ли изменение ссылок */
editLinkAvailable?: boolean;
/** Заголовок блока ссылок */
header?: string;
/** Отображать ли раскрытым */
showOpened?: boolean;
/** Хранить ли сильную ссылку */
saveHardLink?: boolean;
/** Доступно ли создание ссылок */
createLinkEnabled?: boolean;
/** Доступно ли добавление существующих ссылок */
addLinkEnabled?: boolean;
/** Доступно ли добавление гиперссылок */
addUrlEnabled?: boolean;
/** Доступно ли добавление файлов */
addFileEnabled?: boolean;
/** Раскрыт ли контрол */
isExpanded?: boolean;
/** Раскрыта ли командная панель */
commandBarExpanded?: boolean;
/** Типы ссылок при добавлении ссылки */
addLinkLinkTypes?: GenModels.LinkTypeModel[];
/** Типы ссылок при добавлении гиперссылки */
addUrlLinkTypes?: GenModels.LinkTypeModel[];
/** Типы ссылок при добавлении файла */
addFileLinkTypes?: GenModels.LinkTypeModel[];
/** Типы ссылок для которых нужно показывать файлы. */
showFilesForLinksTypes?: GenModels.LinkTypeModel[];
/** Виды карточек при создании ссылки */
createLinkKinds?: GenModels.AllowedCardKind[];
/** Типы ссылок при создании ссылки */
createLinkLinkTypes?: GenModels.LinkTypeModel[];
/** Типы карточек при добавлении ссылки */
addLinkTypes?: GenModels.CardNodeInfo[];
/** Вид карточки при добавлении файла. */
addFileKind?: GenModels.CardNodeInfo;
/** Протокол по умолчанию */
defaultProtocol?: string;
/** Конфигурация порядка и видимости отображаемых столбцов. */
linkColumns?: GenModels.LinksColumnsConfiguration;
/** Доступно ли пользователю конфигурировать порядок и видимость отображаемых столбцов. По умолчанию: true */
allowColumnSetup?: boolean;
/** Определяет содержимое окна с дополнительной информацией о ссылке. */
detailedInfoViewMode?: GenModels.LinksDetailedInfoViewMode;
/** Выделенные ссылки в режиме групповых операций. */
selection?: LinkSelectionItem[];
/** Находится ли контрол в режиме групповых операций. */
batchOperationsMode?: boolean;
/**
* Выражение, которое будет передану в css-функцию calc для вычисления ширины столбца "Тип ссылки".
*
* В выражении должна присутствовать последовательность {0}, вместо которой будет подставлено
* число - максимальная длина строки (колличество символов) в данном столбце.
*
* По умолчанию: {0}ex * 1.3 + 18px
*/
linkTypeColumnWidthFormula?: string;
/** Список папок, из которых можно выбирать карточки для добавления ссылки. */
addLinkFolders?: GenModels.FolderListModel;
/** Идентификатор поискового запроса, используемого для поиска карточек в окне добавления ссылки. */
addLinkSearchQuery?: string;
/** Фильтр отображения ссылок. */
linksFilter?: (item: LinkItem) => boolean;
/** Событие возникает перед добавлением ссылки на существующую карточку. */
linkAdding?: CancelableApiEvent<IEventArgs>;
/** Событие возникает перед удалением ссылки. */
linkDeleting?: CancelableApiEvent<ILinkEventArgs>;
/** Событие возникает перед удалением файла. */
linkFileDeleting?: CancelableApiEvent<ILinkEventArgs>;
/** Событие возникает перед скачиванием файла. */
linkFileDownloading?: CancelableApiEvent<ILinkEventArgs>;
/** Событие возникает перед добавлением ссылки на новую карточку. */
linkCardCreating?: CancelableApiEvent<IEventArgs>;
/** Событие возникает перед открытием тултипа с информацией о карточке. */
linkInfoOpening?: CancelableApiEvent<ILinkEventArgs>;
/** Событие возникает перед закрытием тултипа с информацией о карточке. */
linkInfoClosing?: CancelableApiEvent<ILinkEventArgs>;
/** Событие возникает перед редактированием комментария к ссылке. */
linkInfoEditing?: CancelableApiEvent<ILinkEventArgs>;
/** Событие возникает перед открытием предпросмотра файла. */
linkFilePreviewing?: CancelableApiEvent<ILinkEventArgs>;
/** Событие, возникающее перед открытием окна выбора файлов */
linkFilesSelecting?: CancelableApiEvent<IEventArgs>;
/** Событие, возникающее после открытия окна выбора файлов, но до загрузки файлов на сервер и установления значения контрола. */
linkFilesSelected?: CancelableApiEvent<File[]>;
/** Событие возникает перед открытием карточки. */
linkCardOpening?: CancelableApiEvent<ILinkEventArgs>;
/** Событие возникает перед сворачиванием контрола. */
collapsing?: CancelableApiEvent<IEventArgs>;
/** Событие возникает перед разворачиванием контрола. */
expanding?: CancelableApiEvent<IEventArgs>;
/** Событие возникает перед перед добавлением ссылок на выбранные карточки */
selectedCardsAdding?: CancelableApiEvent<ISelectedCardsAddingEventArgs>;
/** Событие возникает перед кликом по имени ссылки. */
nameLinkClicking?: CancelableApiEvent<ILinkEventArgs>;
/** Событие возникает перед открытием меню ссылки. */
linkMenuOpening?: CancelableApiEvent<ILinkEventArgs>;
/** Событие возникает при добавлении ссылки на существующую карточку. */
linkAdded?: BasicApiEvent<ILinkEventArgs>;
/** Событие возникает при удалении ссылки. */
linkDeleted?: BasicApiEvent<ILinkEventArgs>;
/** Событие возникает при удалении файла. */
linkFileDeleted?: BasicApiEvent<ILinkEventArgs>;
/** Событие возникает при скачивании файла. */
linkFileDownloaded?: BasicApiEvent<ILinkEventArgs>;
/** Событие возникает при редактировании комментария к ссылке. */
linkInfoEdited?: BasicApiEvent<ILinkEventArgs>;
/** Событие возникает при открытии предпросмотра файла. */
linkFilePreviewed?: BasicApiEvent<ILinkEventArgs>;
/** Событие возникает при сворачивании контрола. */
collapsed?: BasicApiEvent<IEventArgs>;
/** Событие возникает при разворачивании контрола. */
expanded?: BasicApiEvent<IEventArgs>;
/** Событие возникает при изменении выделенных ссылок в режиме групповых операций. */
selectionChanged?: BasicApiEvent<IEventArgs>;
/** Событие возникает после переключения режима групповых операций. */
batchOperationsModeToggled?: BasicApiEvent<boolean>;
/** Событие возникает после загрузки данных контрола (актуально при асинхронной загрузке данных). */
dataLoaded?: BasicApiEvent<IEventArgs>;
/** Событие возникает при клике на строку таблицы. */
rowClick?: BasicApiEvent<ILinkEventArgs>;
/** Событие возникает после открытия меню ссылки. */
linkMenuOpened?: BasicApiEvent<ILinkEventArgs>;
/** Сервисы */
services?: $FileController & $LayoutFileController & $LayoutController & $LayoutLinksController & $EditOperationStore & $ApplicationSettings & $Layout & $LayoutManager & $LocalStorage & $DeviceType & $CardId & $CardTimestamp & $LayoutInfo & Optional<$LinksSearchCards> & $LayoutCheck & $CardInfo & $RequestManager & $FileService & $CardOperationsController & Optional<$FilePreview>;
}
export declare const defaultColumns: GenModels.LinksColumnsConfiguration;
/**
* Представляет элемент управления Ссылки
*/
export declare class Links extends Panel<LinksParams, LinksState> {
protected createParams(): LinksParams;
private get linksImpl();
init(): void;
private set addLinkEnabled(value);
private set addUrlEnabled(value);
private set addFileEnabled(value);
private set createLinkEnabled(value);
private set binding(value);
private set createLinkOperationBinding(value);
private set addLinkOperationBinding(value);
private set addUrlOperationBinding(value);
private set addFileOperationBinding(value);
private set removeLinkOperationBinding(value);
private set editLinkOperationBinding(value);
private set createLinkLinkTypes(value);
private set createLinkKinds(value);
private set addLinkLinkTypes(value);
private set addUrlLinkTypes(value);
private set addFileLinkTypes(value);
private set showFilesForLinksTypes(value);
private set addLinkTypes(value);
private set addFileKind(value);
private set showOpened(value);
private set model(value);
private set isExpanded(value);
private set commandBarExpanded(value);
private set addLinkFolders(value);
/** Открывает диалог для возможности добавления существующей карточки. */
openAddExitingCardDialog(): void;
/** Предоставляет доступ к хранилищу операций редактирования. */
openAddNewCardDialog(): void;
/** Открывает диалог для предпросмотра переданного файла. */
openFilePreview(linkItem: LinkItem): void;
/** Возвращает URL переданной ссылки. */
getLinkUrl(linkItem: LinkItem): string;
/** Удаляет переданную ссылку. */
deleteLink(linkItem: LinkItem): void;
/** Выделяет все ссылки в режиме групповых операций. */
selectAll(): Promise<unknown>;
/** Сбрасывает выделение в режиме групповых операций. */
clearSelection(): Promise<unknown>;
/** Меняет состояние выделения отдельной ссылки в режиме груповых операций. */
toggleItemSelection(link: LinkItem): void;
/**
* Добавляет/удаляет css класс строки таблицы.
* @param link LinkItem.
* @param style Класс, который будет добавлен к строке.
*/
toggleRowClass(link: LinkItem, style: string): void;
/** @internal */
protected createImpl(): LinksImpl;
}