@docsvision/webclient
Version:
Type definitions for DocsVision WebClient scripts and extensions.
60 lines (59 loc) • 2.82 kB
TypeScript
import { GenModels } from "@docsvision/webclient/Generated/DocsVision.WebClient.Models";
import { BaseNavigationMainMenuItemImpl, IBaseNavigationMainMenuItemState } from "@docsvision/webclient/Platform/BaseNavigationMainMenuItemImpl";
import { FolderMainMenuItemParams } from "@docsvision/webclient/Platform/FolderMainMenuItem";
import { RequestHelper } from "@docsvision/webclient/System/RequestHelper";
import React from "react";
import { FolderManagementOperationType } from "@docsvision/webclient/Platform/FolderManagementData";
/** @internal */
export interface IFolderMainMenuItemState extends FolderMainMenuItemParams, IBaseNavigationMainMenuItemState {
/**
* Загрузка вместе с подэлементами до нужного уровня
* @param levelCount Количество уровней
*/
loadWithChildren(levelCount?: number): Promise<GenModels.FolderNode>;
/**
* Генерирование имени контрола
* @param folderId Идентификатор папки
*/
generateControlName(folderId: string): string;
loader: RequestHelper;
controlNames: {
[folderId: string]: string;
};
}
export interface FolderMainMenuItemState extends IFolderMainMenuItemState {
}
/** @internal */
export declare type FolderMainMenuItemImplState = IFolderMainMenuItemState;
/** @internal */
export declare class FolderMainMenuItemImpl extends BaseNavigationMainMenuItemImpl<FolderMainMenuItemParams, IFolderMainMenuItemState> {
private unreadCounter;
private operationManager;
constructor(props: FolderMainMenuItemParams, state: IFolderMainMenuItemState);
componentDidMount(): void;
generateControlName(folderId: string): void;
protected getAutoExpandLevelsCount: () => number;
protected getChildrenAutoExpandLevelsCount: () => number;
protected canAutoExpand: () => boolean;
protected autoExpand(): Promise<void>;
getChildLevel(): number;
renderChildren(): React.ReactNode[];
protected hasSubfolders(): boolean;
loadChildren(levelsDown?: number): Promise<GenModels.FolderNode>;
onToggleClick(ev: React.MouseEvent): void;
toggleInternal(): Promise<void>;
getNavigationHref(): string;
onContentClick(): void;
protected getIconClass(): string;
protected getFolderManagementAdaptiveMenu(): JSX.Element;
protected getUnreadCount(): number;
private attachUnreadCounter;
updateUnreadCounter(count: number): void;
protected setFolderOperation(operationType: FolderManagementOperationType): Promise<void>;
private updateTreeAfterFolderDeleted;
private updateTreeAfterSubfolderAdded;
private updateTreeAfterFolderEdited;
renderSelfContent(): JSX.Element;
protected getCssClass(): string;
renderControl(): JSX.Element;
}