Définition API
TMangrove64TreeProps
typescript
export type TMangrove64TreeProps<T extends TMangreove64NodeItemData> = {
nodes: T[];
columns: TMangrove64TreeColumn<T>[];
draggable?: boolean;
nodeKey?: keyof TMangreove64NodeItemData;
parentKey?: keyof TMangreove64NodeItemData;
childrenKey?: keyof TMangreove64NodeItemData;
hasChildrenKey?: keyof TMangreove64NodeItemData;
disabledKey?: keyof TMangreove64NodeItemData;
orderKey?: keyof TMangreove64NodeItemData;
selectionMode?: TMangrove64SelectionMode;
resizableColumns?: boolean;
indentationPx?: number;
borderStrategy?: TMangrove64BorderStrategy;
tableCssClass?: string;
rowCssClass?: string;
cellCssClass?: string;
nodeKeyType?: TMangrove64NodeKeyType;
checkboxColor?: string;
onNodeExpand?: (nodeItem: TMangrove64NodeItem<T>) => Promise<void> | void;
onNodeCollapse?: (nodeItem: TMangrove64NodeItem<T>) => Promise<void> | void;
onNodeSelect?: (nodeItem: TMangrove64NodeItem<T>) => Promise<void> | void;
onNodeUnselect?: (nodeItem: TMangrove64NodeItem<T>) => Promise<void> | void;
onLazyLoadChildren?: (nodeItem: TMangrove64NodeItem<T>, nodeKeyValue: TMangrove64NodeKeyValue, done: (nodeData: T[]) => void) => Promise<void> | void;
onNodesMove?: (nodeItems: TMangrove64NodeItem<T>[]) => Promise<void> | void
};TMangrove64TreeColumn
typescript
export type TMangrove64TreeColumn<T extends TMangreove64NodeItemData> = {
name: string;
label: string;
fieldTarget?: keyof T;
cssClass?: string;
align?: "left" | "center" | "right";
format?: (nodeData: T) => string;
};TMangrove64TreeApi
typescript
export type TMangrove64TreeApi<T extends TMangreove64NodeItemData> = {
getSelectedNodeItems: () => TMangrove64NodeItem<T>[];
getExpandedNodeItems: () => TMangrove64NodeItem<T>[];
getNodeItemByKeyValue: (nodeKeyValue: TMangrove64NodeKeyValue) => TMangrove64NodeItem<T> | undefined;
updateNodes: (nodesData: T[]) => void;
addNodes: (nodesData: T[]) => void;
setNodes: (nodesData: T[]) => void;
removeNodes: (nodeKeyValues: TMangrove64NodeKeyValue[]) => void;
highlightNodes: (nodeKeyValues: TMangrove64NodeKeyValue[]) => void;
expandNodes: (nodeKeyValues: TMangrove64NodeKeyValue[]) => void;
};TMangreove64NodeItemData
typescript
export type TMangreove64NodeItemData = Record<string, unknown>;TMangrove64NodeItem
typescript
export type TMangrove64NodeItem<T extends TMangreove64NodeItemData> = {
dataIdentifierValue: TMangrove64NodeKeyValue;
dataIdentifierKey: keyof TMangreove64NodeItemData;
dataHasChildrenKey: keyof TMangreove64NodeItemData | undefined;
dataOrderKey: keyof TMangreove64NodeItemData | undefined;
parentKey: keyof TMangreove64NodeItemData | undefined;
childrenKey: keyof TMangreove64NodeItemData | undefined;
index: number;
expanded: boolean;
disabled: boolean;
selected: boolean;
level: number;
hidden: boolean;
loading: boolean;
isLeaf: boolean;
highlighted: boolean;
data: T;
}TMangrove64NodeKeyValue
typescript
export type TMangrove64NodeKeyValue = string | number | symbol;