ng-zorro-antd
Version:
An enterprise-class UI components based on Ant Design and Angular
340 lines (327 loc) • 10.3 kB
TypeScript
import { NzSafeAny } from 'ng-zorro-antd/core/types';
import { BehaviorSubject } from 'rxjs';
import * as i0 from '@angular/core';
import { InjectionToken } from '@angular/core';
/**
* Use of this source code is governed by an MIT-style license that can be
* found in the LICENSE file at https://github.com/NG-ZORRO/ng-zorro-antd/blob/master/LICENSE
*/
interface NzFormatEmitEvent {
eventName: string;
node?: NzTreeNode | null;
event?: MouseEvent | DragEvent | null;
dragNode?: NzTreeNode;
selectedKeys?: NzTreeNode[];
checkedKeys?: NzTreeNode[];
matchedKeys?: NzTreeNode[];
nodes?: NzTreeNode[];
keys?: string[];
}
interface NzFormatBeforeDropEvent {
dragNode: NzTreeNode;
node: NzTreeNode;
pos: number;
}
interface NzTreeNodeBaseComponent {
markForCheck(): void;
}
declare class NzTreeBaseService {
DRAG_SIDE_RANGE: number;
DRAG_MIN_GAP: number;
isCheckStrictly: boolean;
isMultiple: boolean;
selectedNode: NzTreeNode;
rootNodes: NzTreeNode[];
flattenNodes$: BehaviorSubject<NzTreeNode[]>;
selectedNodeList: NzTreeNode[];
expandedNodeList: NzTreeNode[];
checkedNodeList: NzTreeNode[];
halfCheckedNodeList: NzTreeNode[];
matchedNodeList: NzTreeNode[];
/**
* handle to post process a tree node when it's instantiating, note that its children haven't been initiated yet
*/
treeNodePostProcessor?: (node: NzTreeNode) => void;
/**
* reset tree nodes will clear default node list
*/
initTree(nzNodes: NzTreeNode[]): void;
flattenTreeData(nzNodes: NzTreeNode[], expandedKeys?: NzTreeNodeKey[] | true): void;
getSelectedNode(): NzTreeNode | null;
/**
* get some list
*/
getSelectedNodeList(): NzTreeNode[];
/**
* get checked node keys
*/
getCheckedNodeKeys(): NzTreeNodeKey[];
/**
* return checked nodes
*/
getCheckedNodeList(): NzTreeNode[];
getHalfCheckedNodeList(): NzTreeNode[];
/**
* return expanded nodes
*/
getExpandedNodeList(): NzTreeNode[];
/**
* return search matched nodes
*/
getMatchedNodeList(): NzTreeNode[];
isArrayOfNzTreeNode(value: NzSafeAny[]): boolean;
/**
* set drag node
*/
setSelectedNode(node: NzTreeNode): void;
/**
* set node selected status
*/
setNodeActive(node: NzTreeNode): void;
/**
* add or remove node to selectedNodeList
*/
setSelectedNodeList(node: NzTreeNode, isMultiple?: boolean): void;
/**
* merge checked nodes
*/
setHalfCheckedNodeList(node: NzTreeNode): void;
setCheckedNodeList(node: NzTreeNode): void;
/**
* conduct checked/selected/expanded keys
*/
conductNodeState(type?: string): NzTreeNode[];
/**
* set expanded nodes
*/
setExpandedNodeList(node: NzTreeNode): void;
setMatchedNodeList(node: NzTreeNode): void;
/**
* check state
*
* @param isCheckStrictly
*/
refreshCheckState(isCheckStrictly?: boolean): void;
conduct(node: NzTreeNode, isCheckStrictly?: boolean): void;
/**
* 1、children half checked
* 2、children all checked, parent checked
* 3、no children checked
*/
conductUp(node: NzTreeNode): void;
/**
* reset child check state
*/
conductDown(node: NzTreeNode, value: boolean): void;
/**
* flush after delete node
*/
afterRemove(nodes: NzTreeNode[]): void;
/**
* drag event
*/
refreshDragNode(node: NzTreeNode): void;
resetNodeLevel(node: NzTreeNode): void;
calcDropPosition(event: DragEvent): number;
/**
* drop
* 0: inner -1: pre 1: next
*/
dropAndApply(targetNode: NzTreeNode, dragPos?: number): void;
/**
* emit Structure
* eventName
* node
* event: MouseEvent / DragEvent
* dragNode
*/
formatEvent(eventName: string, node: NzTreeNode | null, event: MouseEvent | DragEvent | null): NzFormatEmitEvent;
/**
* New functions for flatten nodes
*/
getIndexOfArray(list: NzTreeNode[], key: string): number;
/**
* Render by nzCheckedKeys
* When keys equals null, just render with checkStrictly
*
* @param keys
* @param checkStrictly
*/
conductCheck(keys: NzTreeNodeKey[] | null, checkStrictly: boolean): void;
conductExpandedKeys(keys?: NzTreeNodeKey[] | true): void;
conductSelectedKeys(keys: NzTreeNodeKey[], isMulti: boolean): void;
/**
* Expand parent nodes by child node
*
* @param node
*/
expandNodeAllParentBySearch(node: NzTreeNode): void;
static ɵfac: i0.ɵɵFactoryDeclaration<NzTreeBaseService, never>;
static ɵprov: i0.ɵɵInjectableDeclaration<NzTreeBaseService>;
}
/**
* Use of this source code is governed by an MIT-style license that can be
* found in the LICENSE file at https://github.com/NG-ZORRO/ng-zorro-antd/blob/master/LICENSE
*/
type NzTreeNodeKey = string | number;
interface FlattenNode {
parent: FlattenNode | null;
children: FlattenNode[];
pos: string;
data: NzTreeNode;
isStart: boolean[];
isEnd: boolean[];
}
interface NzTreeNodeOptions {
title: string;
key: string;
icon?: string;
isLeaf?: boolean;
checked?: boolean;
selected?: boolean;
selectable?: boolean;
disabled?: boolean;
disableCheckbox?: boolean;
expanded?: boolean;
children?: NzTreeNodeOptions[];
[ ]: NzSafeAny;
}
declare class NzTreeNode {
private _title;
key: string;
level: number;
origin: NzTreeNodeOptions;
parentNode: NzTreeNode | null;
private _icon;
private _children;
private _isLeaf;
private _isChecked;
private _isSelectable;
private _isDisabled;
private _isDisableCheckbox;
private _isExpanded;
private _isHalfChecked;
private _isSelected;
private _isLoading;
canHide: boolean;
isMatched: boolean;
service: NzTreeBaseService | null;
component: NzTreeNodeBaseComponent;
/** New added in Tree for easy data access */
isStart?: boolean[];
isEnd?: boolean[];
get treeService(): NzTreeBaseService | null;
/**
* Init nzTreeNode
*
* @param option option user's input
* @param parent parent node
* @param service base nzTreeService
*/
constructor(option: NzTreeNodeOptions | NzTreeNode, parent?: NzTreeNode | null, service?: NzTreeBaseService | null);
/**
* auto generate
* get
* set
*/
get title(): string;
set title(value: string);
get icon(): string;
set icon(value: string);
get children(): NzTreeNode[];
set children(value: NzTreeNode[]);
get isLeaf(): boolean;
set isLeaf(value: boolean);
get isChecked(): boolean;
set isChecked(value: boolean);
get isHalfChecked(): boolean;
set isHalfChecked(value: boolean);
get isSelectable(): boolean;
set isSelectable(value: boolean);
get isDisabled(): boolean;
set isDisabled(value: boolean);
get isDisableCheckbox(): boolean;
set isDisableCheckbox(value: boolean);
get isExpanded(): boolean;
set isExpanded(value: boolean);
get isSelected(): boolean;
set isSelected(value: boolean);
get isLoading(): boolean;
set isLoading(value: boolean);
setSyncChecked(checked?: boolean, halfChecked?: boolean): void;
setChecked(checked?: boolean, halfChecked?: boolean): void;
setExpanded(value: boolean): void;
getParentNode(): NzTreeNode | null;
getChildren(): NzTreeNode[];
/**
* Support appending child nodes by position. Leaf node cannot be appended.
*/
addChildren(children: NzSafeAny[], childPos?: number): void;
clearChildren(): void;
remove(): void;
afterValueChange(key: string): void;
update(): void;
}
/**
* Use of this source code is governed by an MIT-style license that can be
* found in the LICENSE file at https://github.com/NG-ZORRO/ng-zorro-antd/blob/master/LICENSE
*/
declare const NzTreeHigherOrderServiceToken: InjectionToken<NzTreeBaseService>;
/**
* Use of this source code is governed by an MIT-style license that can be
* found in the LICENSE file at https://github.com/NG-ZORRO/ng-zorro-antd/blob/master/LICENSE
*/
declare class NzTreeBase {
nzTreeService: NzTreeBaseService;
constructor(nzTreeService: NzTreeBaseService);
/**
* Coerces a value({@link any[]}) to a TreeNodes({@link NzTreeNode[]})
*/
coerceTreeNodes(value: NzSafeAny[]): NzTreeNode[];
/**
* Get all nodes({@link NzTreeNode})
*/
getTreeNodes(): NzTreeNode[];
/**
* Get {@link NzTreeNode} with key
*/
getTreeNodeByKey(key: string): NzTreeNode | null;
/**
* Get checked nodes(merged)
*/
getCheckedNodeList(): NzTreeNode[];
/**
* Get selected nodes
*/
getSelectedNodeList(): NzTreeNode[];
/**
* Get half checked nodes
*/
getHalfCheckedNodeList(): NzTreeNode[];
/**
* Get expanded nodes
*/
getExpandedNodeList(): NzTreeNode[];
/**
* Get matched nodes(if nzSearchValue is not null)
*/
getMatchedNodeList(): NzTreeNode[];
}
/**
* Use of this source code is governed by an MIT-style license that can be
* found in the LICENSE file at https://github.com/NG-ZORRO/ng-zorro-antd/blob/master/LICENSE
*/
declare function isCheckDisabled(node: NzTreeNode): boolean;
declare function isInArray(needle: NzSafeAny, haystack: NzSafeAny[]): boolean;
declare function getPosition(level: string | number, index: number): string;
declare function getKey(key: NzTreeNodeKey, pos: string): NzTreeNodeKey;
/**
* Flat nest tree data into flatten list. This is used for virtual list render.
*
* @param treeNodeList Origin data node list
* @param expandedKeys
* need expanded keys, provides `true` means all expanded (used in `rc-tree-select`).
*/
declare function flattenTreeData(treeNodeList?: NzTreeNode[], expandedKeys?: NzTreeNodeKey[] | true): FlattenNode[];
export { NzTreeBase, NzTreeBaseService, NzTreeHigherOrderServiceToken, NzTreeNode, flattenTreeData, getKey, getPosition, isCheckDisabled, isInArray };
export type { FlattenNode, NzFormatBeforeDropEvent, NzFormatEmitEvent, NzTreeNodeBaseComponent, NzTreeNodeKey, NzTreeNodeOptions };