UNPKG

@docsvision/webclient

Version:

Type definitions for DocsVision WebClient scripts and extensions.

151 lines (150 loc) 7.74 kB
import { FileListAttachedElements } from "@docsvision/webclient/BackOffice/FileListAttachElements"; import { LinkItem } from "@docsvision/webclient/BackOffice/LinkItem"; import { LinkSelectionItem } from '@docsvision/webclient/BackOffice/LinkSelectionItem'; import { LoadingLinkItem } from "@docsvision/webclient/BackOffice/LoadingLinkItem"; import { LinksParams } from "@docsvision/webclient/BackOffice/Links"; import { GenModels } from "@docsvision/webclient/Generated/DocsVision.WebClient.Models"; import { Popover } from "@docsvision/webclient/Helpers/PopoverHelpers/Popover"; import { PerformOnce } from "@docsvision/webclient/Legacy/Utils"; import { PanelImpl, IPanelState } from '@docsvision/webclient/Platform/PanelImpl'; import { IBindingResult } from '@docsvision/webclient/System/IBindingResult'; import { RequestHelper } from "@docsvision/webclient/System/RequestHelper"; import React from "react"; import { $LinksSearchCards } from '@docsvision/webclient/BackOffice/$LinksSearchCardsService'; import { $LayoutLinksController } from '@docsvision/webclient/Generated/DocsVision.WebClient.Controllers'; import { $CardTimestamp, $CardId } from '@docsvision/webclient/System/LayoutServices'; /** @internal */ export interface LinksState extends LinksParams, IPanelState { modifiedRows: string[]; sourceLayoutMode: string; model: GenModels.LinksDataModel; bindingInfo: GenModels.SimpleBindingInfo; binding: IBindingResult<any>; createLinkBinding: IBindingResult<any>; addLinkBinding: IBindingResult<any>; addUrlBinding: IBindingResult<any>; addFileBinding: IBindingResult<any>; deleteLinkBinding: IBindingResult<any>; editLinkBinding: IBindingResult<any>; loadingLinks: LoadingLinkItem[]; totalLinksCount: number; linksLoaded: boolean; isAddUrlDialogShown: boolean; editOperationAllowed: boolean; lastMaximized: boolean; } /** @internal */ export declare type LinksImplState = LinksState; /** @internal */ export declare class LinksImpl extends PanelImpl<LinksParams, LinksState> { fileUploadAttach: FileListAttachedElements; requestHelper: RequestHelper; headerSelectionCheckbox: HTMLInputElement; addLinkOnce: PerformOnce; linkInfoPopover: Popover; constructor(props: LinksParams, state: LinksState); UNSAFE_componentWillMount(): void; componentDidMount(): void; componentDidUpdate(preProps: any, prevState: any, snapshot: any): void; componentWillUnmount(): void; private attachLinkInfoPopover; private attachHeaderSelectionCheckbox; protected getCssClass(): string; protected isBatchModeAvailable(): boolean; protected getColumnsLocalStorageKey(): string; protected initFileUpload: (attach: FileListAttachedElements) => void; protected openFileSelectDialog(): Promise<void>; protected onFilesAdded(data: any): Promise<void>; protected setFiles(files: File[]): Promise<void>; protected onAddExistingCardLink: (services: $LinksSearchCards & $LayoutLinksController & $CardId & $CardTimestamp, callback?: Function) => Promise<any>; protected closeAllMenus(): void; set model(model: GenModels.LinksDataModel); set isExpanded(val: boolean); set commandBarExpanded(val: boolean); loadLinksModel(model: GenModels.LinksDataModel, force?: boolean, callback?: Function): Promise<unknown>; protected getCardCreateLink(cardTypeId: string, kindId: string, linkTypeId: string): string; protected onDocumentClick(ev: any): void; protected onLinkClick(linkItem: LinkItem, ev?: React.MouseEvent): void; protected processBatchModeEnablingRowClick(linkItem: LinkItem, ev: React.MouseEvent): boolean; protected onRowClick(linkItem: LinkItem, ev: React.MouseEvent): void; protected makeLinkUrl(url: string): string; onHeaderClick(): void; protected onCollapsed(): void; protected onExpanded(): void; onCommandBarClick(ev?: React.MouseEvent<any>): void; onAddNewFileClick: (ev?: React.MouseEvent) => void; onAddNewUrlClick: (ev?: React.MouseEvent) => void; addNewUrl: (url: string, linkType: string) => Promise<void>; closeAddNewUrlDialog: () => void; onAddNewCardLinkClick(ev?: React.MouseEvent<any>): Promise<void>; onAddExistingCardLinkClick(ev?: React.MouseEvent): void; setLastMaximized: (value: any) => void; protected onViewFileMenuClick(linkItem: LinkItem): void; protected onFollowLinkClick(linkItem: LinkItem): void; onDeleteMenuClick(linkItem: LinkItem): void; protected onDeleteFileMenuClick(linkItem: LinkItem): void; protected onLinkMenuClick(linkItem: LinkItem): void; protected getLinkIconClass(linkItem: LinkItem): "dv-ico icon-spin loader-animate" | "dv-ico ico-dv-card" | "dv-ico ico-file" | "dv-ico ico-url"; protected afterLinkAdded: () => Promise<string[]>; protected onDownloadFile(linkItem: LinkItem): void; protected getShowFilesForLinksTypesIds: () => string[]; protected hideInfoPopover(linkItem: LinkItem): void; protected showInfoPopover(linkItem: LinkItem): void; protected updateInfoPopopverPosition: (ev: MouseEvent, element: Popover) => void; protected onLinkInfoEdited(linkItem: LinkItem): void; protected preventDisclosureToggle: (event: React.MouseEvent<any>) => void; protected onShowColumnSettingsDialog: () => Promise<void>; protected toggleBatchMode: () => void; toggleItemSelection: (link: LinkItem) => void; protected onChangeItemSelection: (link: LinkItem, ev: React.ChangeEvent<HTMLInputElement>) => void; protected onChangeHeaderSelectionCheckbox: (ev: React.ChangeEvent<HTMLInputElement>) => void; selectAll(): Promise<unknown>; clearSelection(): Promise<unknown>; setSelection(selection: LinkSelectionItem[]): Promise<unknown>; protected onAttachRow(linkItem: LinkItem, elem: HTMLElement): void; protected createLinkItemKey: (linkItem: LinkItem) => string; protected renderFileUploadForm(attach: FileListAttachedElements): JSX.Element; protected getLinksCount(): number; protected renderHeader(): JSX.Element; protected renderLinksTable(): JSX.Element; protected renderLinksTableRow({ prevLink, link, nextLink }: { prevLink: LinkItem; link: LinkItem; nextLink: LinkItem; }, options: { batchSelectionColumnWidth: string; kindColumnWidth: string; infoColumnWidth: string; settingsColumnWidth: string; }): JSX.Element; protected renderLinkDescription(link: LinkItem): JSX.Element; protected renderLinksTableLoadingRow(link: LoadingLinkItem, options: { batchSelectionColumnWidth: string; kindColumnWidth: string; infoColumnWidth: string; settingsColumnWidth: string; }): JSX.Element; protected noLinksExists(): boolean; protected renderEasyLinksTable(): JSX.Element; protected renderEasyLinksTableRow(link: LinkItem, options: { infoColumnWidth: string; linksCount: number; }): JSX.Element; protected renderEasyLinksTableLoadingRow(link: LoadingLinkItem, options: { infoColumnWidth: string; linksCount: number; }): JSX.Element; protected renderLinkItemUnion({ prevLink, link, nextLink }: { prevLink: LinkItem; link: LinkItem; nextLink: LinkItem; }): JSX.Element; protected renderPlaceholders(): any[]; protected getLoaderWidth(i: number): number; protected onMenuClose(linkItem: LinkItem): void; protected renderSettingsMenu(linkItem: LinkItem): JSX.Element; renderControl(): JSX.Element; openFilePreview(linkItem: LinkItem): void; getLinkUrl(linkItem: LinkItem): string; onToggleRowClass(link: LinkItem, style: string): void; }