ng-devui
Version:
DevUI components based on Angular
122 lines (121 loc) • 4.75 kB
TypeScript
import { BehaviorSubject } from 'rxjs';
export interface Dictionary<T> {
[id: number]: T;
}
export interface ITreeNodeData {
id?: number | string;
parentId?: number | string;
title?: string;
isOpen?: boolean;
data?: any;
isParent?: boolean;
loading?: boolean;
isMatch?: boolean;
isHide?: boolean;
isActive?: boolean;
isChecked?: boolean;
disabled?: boolean;
[prop: string]: any;
children?: [];
}
export interface ITreeMap {
[index: number]: ITreeNodeData;
}
export interface ITreeItem {
title?: string;
open?: boolean;
loading?: boolean;
isMatch?: boolean;
items?: ITreeItem[];
isParent?: boolean;
data?: any;
id?: number | string;
isHide?: boolean;
isActive?: boolean;
isChecked?: boolean;
halfChecked?: boolean;
disabled?: boolean;
showCheckbox?: boolean;
[prop: string]: any;
disableAdd?: boolean;
disableEdit?: boolean;
disableDelete?: boolean;
disableSelect?: boolean;
disableToggle?: boolean;
}
export interface ITreeInput {
treeItems: Array<ITreeItem>;
parentId?: number | string;
treeNodeChildrenKey?: string;
treeNodeIdKey?: string;
checkboxDisabledKey?: string;
selectDisabledKey?: string;
toggleDisabledKey?: string;
treeNodeTitleKey?: string;
isVirtualScroll?: boolean;
}
export declare class TreeNode implements ITreeNodeData {
id: any;
parentId: any;
data: any;
constructor(id: any, parentId: any, data: any);
}
export declare class TreeFactory {
isVirtualScroll: any;
nodes: Dictionary<TreeNode>;
private idx;
private _checked;
private _treeRoot;
searchItem: string;
flattenNodes: BehaviorSubject<TreeNode[]>;
virtualScroll: boolean;
canIdEmpty: boolean;
static create(isVirtualScroll: any): TreeFactory;
static fromTree({ treeItems, isVirtualScroll, treeNodeChildrenKey, treeNodeIdKey, checkboxDisabledKey, selectDisabledKey, // 默认值与checkboxDisabledKey相同,为了兼容以前tree的disable情况
toggleDisabledKey, treeNodeTitleKey, }: ITreeInput): TreeFactory;
constructor(isVirtualScroll: any);
mapTreeItems: ({ treeItems, parentId, treeNodeChildrenKey, treeNodeIdKey, checkboxDisabledKey, selectDisabledKey, toggleDisabledKey, treeNodeTitleKey, }: ITreeInput, renderTree?: boolean) => this;
addNode({ id, parentId, ...data }: ITreeNodeData, index?: any, renderTree?: boolean): TreeNode;
editNodeTitle(id: number | string): void;
deleteNodeById(id: number | string, renderTree?: boolean): this;
toggleNodeById(id: number | string): this;
openNodesById(id: number | string): this;
closeNodesById(id: number | string, closeChildren?: boolean): this;
disabledNodesById(id: number | string): this;
private _disabledParentNodes;
checkNodesById(id: number | string, checked: boolean, checkableRelation?: 'upward' | 'downward' | 'both' | 'none'): Array<Object>;
checkParentNodes(node: TreeNode): void;
private checkChildNodes;
getLineage(node: TreeNode): Array<string>;
getCheckedNodes(): Array<any>;
getCheckedNodesWithoutHide(hideInVirtualScroll?: boolean): Array<any>;
getActivatedNodes(): Array<any>;
getDisabledNodes(): Array<any>;
activeNodeById(id: number | string, isMultiple?: boolean): void;
getChildrenById(id: number | string): Array<TreeNode>;
startLoading(id: number | string): void;
endLoading(id: number | string): void;
getNodeById(id: number | string): any;
getCompleteNodeById(id: number | string): any;
hideNodeById(id: number | string, hide: boolean): this;
private maintainCheckedNodeList;
private dfs;
addChildNode(parentNode: TreeNode, childNode: TreeNode, index?: any): void;
private removeChildNode;
resetSearchResults(): void;
searchTree(target: string, hideUnmatched?: boolean, keyword?: any, pattern?: any): any;
get treeRoot(): TreeNode[];
deactivateAllNodes(): void;
checkAllNodes(checked: boolean): void;
getNodeIndex(node: TreeNode): number;
checkIsParent(childNodeId: number | string, parentNodeId: number | string): any;
getFlattenNodes(): void;
flattenTree(): any[];
mergeTreeNodes(targetNode?: TreeNode[]): void;
renderFlattenTree(): void;
disableAllNodesChecked(disabled?: boolean): void;
disableAllNodesSelected(disabled?: boolean): void;
disableAllNodesToggled(disabled?: boolean): void;
toggleAllNodes(toggle?: boolean): void;
transferToTreeNode(originNode: any, parentId?: any, treeNodeChildrenKey?: string, treeNodeIdKey?: string, checkboxDisabledKey?: string, selectDisabledKey?: string, toggleDisabledKey?: string, treeNodeTitleKey?: string): TreeNode;
}