tree-element 0.1.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/LICENSE +201 -0
- package/README.md +221 -0
- package/lib/animation.d.ts +5 -0
- package/lib/animation.d.ts.map +1 -0
- package/lib/animation.js +39 -0
- package/lib/animation.js.map +1 -0
- package/lib/classNames.d.ts +34 -0
- package/lib/classNames.d.ts.map +1 -0
- package/lib/classNames.js +39 -0
- package/lib/classNames.js.map +1 -0
- package/lib/dataLoader.d.ts +25 -0
- package/lib/dataLoader.d.ts.map +1 -0
- package/lib/dataLoader.js +69 -0
- package/lib/dataLoader.js.map +1 -0
- package/lib/dragAndDropHandler/binarySearch.d.ts +3 -0
- package/lib/dragAndDropHandler/binarySearch.d.ts.map +1 -0
- package/lib/dragAndDropHandler/binarySearch.js +23 -0
- package/lib/dragAndDropHandler/binarySearch.js.map +1 -0
- package/lib/dragAndDropHandler/dragElement.d.ts +20 -0
- package/lib/dragAndDropHandler/dragElement.d.ts.map +1 -0
- package/lib/dragAndDropHandler/dragElement.js +39 -0
- package/lib/dragAndDropHandler/dragElement.js.map +1 -0
- package/lib/dragAndDropHandler/generateHitAreas.d.ts +13 -0
- package/lib/dragAndDropHandler/generateHitAreas.d.ts.map +1 -0
- package/lib/dragAndDropHandler/generateHitAreas.js +130 -0
- package/lib/dragAndDropHandler/generateHitAreas.js.map +1 -0
- package/lib/dragAndDropHandler/index.d.ts +76 -0
- package/lib/dragAndDropHandler/index.d.ts.map +1 -0
- package/lib/dragAndDropHandler/index.js +311 -0
- package/lib/dragAndDropHandler/index.js.map +1 -0
- package/lib/dragAndDropHandler/iterateVisibleNodes.d.ts +11 -0
- package/lib/dragAndDropHandler/iterateVisibleNodes.d.ts.map +1 -0
- package/lib/dragAndDropHandler/iterateVisibleNodes.js +54 -0
- package/lib/dragAndDropHandler/iterateVisibleNodes.js.map +1 -0
- package/lib/dragAndDropHandler/types.d.ts +11 -0
- package/lib/dragAndDropHandler/types.d.ts.map +1 -0
- package/lib/elementsRenderer.d.ts +53 -0
- package/lib/elementsRenderer.d.ts.map +1 -0
- package/lib/elementsRenderer.js +251 -0
- package/lib/elementsRenderer.js.map +1 -0
- package/lib/events.d.ts +224 -0
- package/lib/events.d.ts.map +1 -0
- package/lib/index.d.ts +367 -0
- package/lib/index.d.ts.map +1 -0
- package/lib/index.js +1098 -0
- package/lib/index.js.map +1 -0
- package/lib/keyHandler.d.ts +29 -0
- package/lib/keyHandler.d.ts.map +1 -0
- package/lib/keyHandler.js +107 -0
- package/lib/keyHandler.js.map +1 -0
- package/lib/methodTypes.d.ts +21 -0
- package/lib/methodTypes.d.ts.map +1 -0
- package/lib/mouseHandler.d.ts +60 -0
- package/lib/mouseHandler.d.ts.map +1 -0
- package/lib/mouseHandler.js +283 -0
- package/lib/mouseHandler.js.map +1 -0
- package/lib/mouseUtils.d.ts +9 -0
- package/lib/mouseUtils.d.ts.map +1 -0
- package/lib/mouseUtils.js +15 -0
- package/lib/mouseUtils.js.map +1 -0
- package/lib/node.d.ts +320 -0
- package/lib/node.d.ts.map +1 -0
- package/lib/node.js +737 -0
- package/lib/node.js.map +1 -0
- package/lib/nodeElement/borderDropHint.d.ts +9 -0
- package/lib/nodeElement/borderDropHint.d.ts.map +1 -0
- package/lib/nodeElement/borderDropHint.js +24 -0
- package/lib/nodeElement/borderDropHint.js.map +1 -0
- package/lib/nodeElement/folderElement.d.ts +22 -0
- package/lib/nodeElement/folderElement.d.ts.map +1 -0
- package/lib/nodeElement/folderElement.js +100 -0
- package/lib/nodeElement/folderElement.js.map +1 -0
- package/lib/nodeElement/ghostDropHint.d.ts +18 -0
- package/lib/nodeElement/ghostDropHint.d.ts.map +1 -0
- package/lib/nodeElement/ghostDropHint.js +67 -0
- package/lib/nodeElement/ghostDropHint.js.map +1 -0
- package/lib/nodeElement/index.d.ts +28 -0
- package/lib/nodeElement/index.d.ts.map +1 -0
- package/lib/nodeElement/index.js +66 -0
- package/lib/nodeElement/index.js.map +1 -0
- package/lib/nodeUtils.d.ts +7 -0
- package/lib/nodeUtils.d.ts.map +1 -0
- package/lib/nodeUtils.js +4 -0
- package/lib/nodeUtils.js.map +1 -0
- package/lib/options.d.ts +310 -0
- package/lib/options.d.ts.map +1 -0
- package/lib/package.json +3 -0
- package/lib/positionUtils.d.ts +8 -0
- package/lib/positionUtils.d.ts.map +1 -0
- package/lib/positionUtils.js +14 -0
- package/lib/positionUtils.js.map +1 -0
- package/lib/requestUrl.d.ts +9 -0
- package/lib/requestUrl.d.ts.map +1 -0
- package/lib/requestUrl.js +37 -0
- package/lib/requestUrl.js.map +1 -0
- package/lib/saveStateHandler.d.ts +46 -0
- package/lib/saveStateHandler.d.ts.map +1 -0
- package/lib/saveStateHandler.js +204 -0
- package/lib/saveStateHandler.js.map +1 -0
- package/lib/scrollHandler/containerScrollParent.d.ts +12 -0
- package/lib/scrollHandler/containerScrollParent.d.ts.map +1 -0
- package/lib/scrollHandler/containerScrollParent.js +49 -0
- package/lib/scrollHandler/containerScrollParent.js.map +1 -0
- package/lib/scrollHandler/createScrollParent.d.ts +4 -0
- package/lib/scrollHandler/createScrollParent.d.ts.map +1 -0
- package/lib/scrollHandler/createScrollParent.js +38 -0
- package/lib/scrollHandler/createScrollParent.js.map +1 -0
- package/lib/scrollHandler/documentScrollParent.d.ts +22 -0
- package/lib/scrollHandler/documentScrollParent.d.ts.map +1 -0
- package/lib/scrollHandler/documentScrollParent.js +71 -0
- package/lib/scrollHandler/documentScrollParent.js.map +1 -0
- package/lib/scrollHandler/scrollParent.d.ts +26 -0
- package/lib/scrollHandler/scrollParent.d.ts.map +1 -0
- package/lib/scrollHandler/scrollParent.js +79 -0
- package/lib/scrollHandler/scrollParent.js.map +1 -0
- package/lib/scrollHandler.d.ts +20 -0
- package/lib/scrollHandler.d.ts.map +1 -0
- package/lib/scrollHandler.js +41 -0
- package/lib/scrollHandler.js.map +1 -0
- package/lib/selectNodeHandler.d.ts +38 -0
- package/lib/selectNodeHandler.d.ts.map +1 -0
- package/lib/selectNodeHandler.js +166 -0
- package/lib/selectNodeHandler.js.map +1 -0
- package/lib/setDefaultOptions.d.ts +4 -0
- package/lib/setDefaultOptions.d.ts.map +1 -0
- package/lib/setDefaultOptions.js +86 -0
- package/lib/setDefaultOptions.js.map +1 -0
- package/lib/triggerCustomEvent.d.ts +3 -0
- package/lib/triggerCustomEvent.d.ts.map +1 -0
- package/lib/triggerCustomEvent.js +13 -0
- package/lib/triggerCustomEvent.js.map +1 -0
- package/lib/util.d.ts +3 -0
- package/lib/util.d.ts.map +1 -0
- package/lib/util.js +5 -0
- package/lib/util.js.map +1 -0
- package/lib/version.d.ts +3 -0
- package/lib/version.d.ts.map +1 -0
- package/lib/version.js +5 -0
- package/lib/version.js.map +1 -0
- package/package.json +110 -0
- package/src/animation.ts +48 -0
- package/src/classNames.ts +70 -0
- package/src/dataLoader.ts +92 -0
- package/src/dragAndDropHandler/binarySearch.ts +27 -0
- package/src/dragAndDropHandler/dragElement.ts +62 -0
- package/src/dragAndDropHandler/generateHitAreas.ts +195 -0
- package/src/dragAndDropHandler/index.ts +442 -0
- package/src/dragAndDropHandler/iterateVisibleNodes.ts +91 -0
- package/src/dragAndDropHandler/types.ts +12 -0
- package/src/elementsRenderer.ts +367 -0
- package/src/events.ts +237 -0
- package/src/header.txt +16 -0
- package/src/index.ts +1290 -0
- package/src/keyHandler.ts +139 -0
- package/src/methodTypes.ts +44 -0
- package/src/mouseHandler.ts +391 -0
- package/src/mouseUtils.ts +23 -0
- package/src/node.ts +831 -0
- package/src/nodeElement/borderDropHint.ts +37 -0
- package/src/nodeElement/folderElement.ts +140 -0
- package/src/nodeElement/ghostDropHint.ts +84 -0
- package/src/nodeElement/index.ts +103 -0
- package/src/nodeUtils.ts +12 -0
- package/src/options.ts +325 -0
- package/src/positionUtils.ts +18 -0
- package/src/requestUrl.ts +41 -0
- package/src/saveStateHandler.ts +279 -0
- package/src/scrollHandler/containerScrollParent.ts +71 -0
- package/src/scrollHandler/createScrollParent.ts +51 -0
- package/src/scrollHandler/documentScrollParent.ts +104 -0
- package/src/scrollHandler/scrollParent.ts +117 -0
- package/src/scrollHandler.ts +55 -0
- package/src/selectNodeHandler.ts +192 -0
- package/src/setDefaultOptions.ts +79 -0
- package/src/triggerCustomEvent.ts +14 -0
- package/src/util.ts +5 -0
- package/src/version.ts +4 -0
- package/tree_element.css +195 -0
- package/tree_element.debug.js +4153 -0
- package/tree_element.debug.js.map +1 -0
- package/tree_element.js +21 -0
- package/tree_element.js.map +1 -0
package/lib/index.d.ts
ADDED
|
@@ -0,0 +1,367 @@
|
|
|
1
|
+
import type { MoveInfo, TreeEvent, TreeEventName, TreeEvents } from "./events.js";
|
|
2
|
+
import type { NodeData, NodeId, Position } from "./node.js";
|
|
3
|
+
import type { TreeElementOptions } from "./options.js";
|
|
4
|
+
import type { SavedState } from "./saveStateHandler.js";
|
|
5
|
+
import type { SelectNodeOptions } from "./selectNodeHandler.js";
|
|
6
|
+
import { Node } from "./node.js";
|
|
7
|
+
export type { MoveInfo, Node, NodeData, NodeId, Position, SavedState, SelectNodeOptions, TreeElementOptions, TreeEvent, TreeEventName, TreeEvents, };
|
|
8
|
+
export type TriggerEventProvider = (element: HTMLElement, eventName: TreeEventName, values?: TreeEvents[TreeEventName]) => boolean;
|
|
9
|
+
interface TreeElementParams extends Partial<TreeElementOptions> {
|
|
10
|
+
/** The element the tree is rendered into. Its content is replaced. */
|
|
11
|
+
htmlElement: HTMLElement;
|
|
12
|
+
/** Replaces how events are dispatched. It must return whether the event
|
|
13
|
+
* was not cancelled. This exists for tests and for integrating with
|
|
14
|
+
* another event system. */
|
|
15
|
+
overrideTriggerEventProvider?: TriggerEventProvider;
|
|
16
|
+
}
|
|
17
|
+
export default class TreeElement {
|
|
18
|
+
/** @hidden */
|
|
19
|
+
tree: Node;
|
|
20
|
+
private classNames;
|
|
21
|
+
private dataLoader;
|
|
22
|
+
private dndHandler;
|
|
23
|
+
private htmlElement;
|
|
24
|
+
private isInitialized;
|
|
25
|
+
private keyHandler;
|
|
26
|
+
private mouseHandler;
|
|
27
|
+
private nodeMap;
|
|
28
|
+
private options;
|
|
29
|
+
private renderer;
|
|
30
|
+
private saveStateHandler;
|
|
31
|
+
private scrollHandler;
|
|
32
|
+
private selectNodeHandler;
|
|
33
|
+
private triggerEventProvider;
|
|
34
|
+
/** @hidden */
|
|
35
|
+
constructor({ htmlElement, overrideTriggerEventProvider, ...options }: TreeElementParams);
|
|
36
|
+
/**
|
|
37
|
+
* Adds a sibling after a node.
|
|
38
|
+
*
|
|
39
|
+
* @returns The new node, or `null` when the node has no parent.
|
|
40
|
+
* @group Changing the tree
|
|
41
|
+
*/
|
|
42
|
+
addNodeAfter(nodeData: NodeData, existingNode: Node): Node | null;
|
|
43
|
+
/**
|
|
44
|
+
* Adds a sibling before a node.
|
|
45
|
+
*
|
|
46
|
+
* @returns The new node, or `null` when the node has no parent.
|
|
47
|
+
* @group Changing the tree
|
|
48
|
+
*/
|
|
49
|
+
addNodeBefore(nodeData: NodeData, existingNode: Node): Node | null;
|
|
50
|
+
/**
|
|
51
|
+
* Inserts a new node between a node and its parent, taking the node as its
|
|
52
|
+
* child.
|
|
53
|
+
*
|
|
54
|
+
* @returns The new node, or `null` when the node has no parent.
|
|
55
|
+
* @group Changing the tree
|
|
56
|
+
*/
|
|
57
|
+
addParentNode(nodeData: NodeData, existingNode: Node): Node | null;
|
|
58
|
+
/**
|
|
59
|
+
* Adds a node to the selection instead of replacing it.
|
|
60
|
+
*
|
|
61
|
+
* @param mustSetFocus - Move the focus to the node. Default `true`.
|
|
62
|
+
* @group Selection
|
|
63
|
+
*/
|
|
64
|
+
addToSelection(node: Node, mustSetFocus?: boolean): void;
|
|
65
|
+
/**
|
|
66
|
+
* Adds a node as the last child of a parent.
|
|
67
|
+
*
|
|
68
|
+
* @example
|
|
69
|
+
* ```js
|
|
70
|
+
* tree.appendNode({ name: "child", id: 5 }, tree.getNodeById(1));
|
|
71
|
+
* ```
|
|
72
|
+
*
|
|
73
|
+
* @returns The new node.
|
|
74
|
+
* @group Changing the tree
|
|
75
|
+
*/
|
|
76
|
+
appendNode(nodeData: NodeData, parentNode: Node): Node;
|
|
77
|
+
/**
|
|
78
|
+
* Closes a folder.
|
|
79
|
+
*
|
|
80
|
+
* @param slide - Override the `slide` option for this call.
|
|
81
|
+
* @group Opening and closing
|
|
82
|
+
*/
|
|
83
|
+
closeNode(node: Node, slide?: boolean): void;
|
|
84
|
+
/**
|
|
85
|
+
* Empties the element and removes the tree's document-level keyboard
|
|
86
|
+
* listener. Call it when you remove the tree from the page.
|
|
87
|
+
*
|
|
88
|
+
* @group Other
|
|
89
|
+
*/
|
|
90
|
+
deinit(): void;
|
|
91
|
+
/**
|
|
92
|
+
* Returns the node that belongs to a `li` element the tree rendered.
|
|
93
|
+
*
|
|
94
|
+
* @group Finding nodes
|
|
95
|
+
*/
|
|
96
|
+
getNode(element: HTMLElement): Node | null;
|
|
97
|
+
/**
|
|
98
|
+
* Returns the first node for which the callback returns `true`.
|
|
99
|
+
*
|
|
100
|
+
* @example
|
|
101
|
+
* ```js
|
|
102
|
+
* const node = tree.getNodeByCallback((node) => node.children.length > 3);
|
|
103
|
+
* ```
|
|
104
|
+
*
|
|
105
|
+
* @group Finding nodes
|
|
106
|
+
*/
|
|
107
|
+
getNodeByCallback(callback: (node: Node) => boolean): Node | null;
|
|
108
|
+
/**
|
|
109
|
+
* Returns the node with this id.
|
|
110
|
+
*
|
|
111
|
+
* @example
|
|
112
|
+
* ```js
|
|
113
|
+
* const node = tree.getNodeById(1);
|
|
114
|
+
* ```
|
|
115
|
+
*
|
|
116
|
+
* @group Finding nodes
|
|
117
|
+
*/
|
|
118
|
+
getNodeById(id: NodeId): Node | null;
|
|
119
|
+
/**
|
|
120
|
+
* Returns the first node with this name.
|
|
121
|
+
*
|
|
122
|
+
* @group Finding nodes
|
|
123
|
+
*/
|
|
124
|
+
getNodeByName(name: string): Node | null;
|
|
125
|
+
/**
|
|
126
|
+
* Like `getNodeByName`, but throws when there is no such node. Convenient
|
|
127
|
+
* in tests and when a missing node is a bug.
|
|
128
|
+
*
|
|
129
|
+
* @group Finding nodes
|
|
130
|
+
*/
|
|
131
|
+
getNodeByNameMustExist(name: string): Node;
|
|
132
|
+
/**
|
|
133
|
+
* Returns all nodes with this property value.
|
|
134
|
+
*
|
|
135
|
+
* @example
|
|
136
|
+
* ```js
|
|
137
|
+
* tree.getNodesByProperty("color", "green");
|
|
138
|
+
* ```
|
|
139
|
+
*
|
|
140
|
+
* @group Finding nodes
|
|
141
|
+
*/
|
|
142
|
+
getNodesByProperty(key: string, value: unknown): Node[];
|
|
143
|
+
/**
|
|
144
|
+
* Returns the selected node, or `false` when nothing is selected.
|
|
145
|
+
*
|
|
146
|
+
* @group Selection
|
|
147
|
+
*/
|
|
148
|
+
getSelectedNode(): false | Node;
|
|
149
|
+
/**
|
|
150
|
+
* Returns the selected nodes.
|
|
151
|
+
*
|
|
152
|
+
* @group Selection
|
|
153
|
+
*/
|
|
154
|
+
getSelectedNodes(): Node[];
|
|
155
|
+
/**
|
|
156
|
+
* Returns the current state — `open_nodes` and `selected_node` — whether or
|
|
157
|
+
* not `saveState` is enabled.
|
|
158
|
+
*
|
|
159
|
+
* @group State
|
|
160
|
+
*/
|
|
161
|
+
getState(): null | SavedState;
|
|
162
|
+
/**
|
|
163
|
+
* Returns the state as it is stored.
|
|
164
|
+
*
|
|
165
|
+
* @group State
|
|
166
|
+
*/
|
|
167
|
+
getStateFromStorage(): null | SavedState;
|
|
168
|
+
/**
|
|
169
|
+
* Returns the root node. It is not rendered; its `children` are the
|
|
170
|
+
* top-level nodes. Also available as the `tree` property.
|
|
171
|
+
*
|
|
172
|
+
* @group Finding nodes
|
|
173
|
+
*/
|
|
174
|
+
getTree(): Node;
|
|
175
|
+
/**
|
|
176
|
+
* Returns the version of tree-element.
|
|
177
|
+
*
|
|
178
|
+
* @group Other
|
|
179
|
+
*/
|
|
180
|
+
getVersion(): string;
|
|
181
|
+
/**
|
|
182
|
+
* Returns whether the user is dragging a node.
|
|
183
|
+
*
|
|
184
|
+
* @group Other
|
|
185
|
+
*/
|
|
186
|
+
isDragging(): boolean;
|
|
187
|
+
/**
|
|
188
|
+
* Returns whether the node is selected.
|
|
189
|
+
*
|
|
190
|
+
* @group Selection
|
|
191
|
+
*/
|
|
192
|
+
isNodeSelected(node: Node): boolean;
|
|
193
|
+
/**
|
|
194
|
+
* Loads data into the tree.
|
|
195
|
+
*
|
|
196
|
+
* @param parentNode - Replace this node's children instead of the whole
|
|
197
|
+
* tree.
|
|
198
|
+
* @group Loading data
|
|
199
|
+
*/
|
|
200
|
+
loadData(data: NodeData[] | null, parentNode?: Node): void;
|
|
201
|
+
/**
|
|
202
|
+
* Fetches data and loads it into the tree, or into `parentNode`.
|
|
203
|
+
*
|
|
204
|
+
* @param url - Defaults to the `dataUrl` option.
|
|
205
|
+
* @group Loading data
|
|
206
|
+
*/
|
|
207
|
+
loadDataFromUrl(url?: string, parentNode?: Node): Promise<void>;
|
|
208
|
+
/**
|
|
209
|
+
* Selects the next visible node, like the down arrow key.
|
|
210
|
+
*
|
|
211
|
+
* @group Selection
|
|
212
|
+
*/
|
|
213
|
+
moveDown(): void;
|
|
214
|
+
/**
|
|
215
|
+
* Moves a node inside the tree.
|
|
216
|
+
*
|
|
217
|
+
* @example
|
|
218
|
+
* ```js
|
|
219
|
+
* tree.moveNode(tree.getNodeById(2), tree.getNodeById(1), "inside");
|
|
220
|
+
* ```
|
|
221
|
+
*
|
|
222
|
+
* @param position - `"before"`, `"after"` or `"inside"`.
|
|
223
|
+
* @group Changing the tree
|
|
224
|
+
*/
|
|
225
|
+
moveNode(node: Node, targetNode: Node, position: Position): void;
|
|
226
|
+
/**
|
|
227
|
+
* Selects the previous visible node, like the up arrow key.
|
|
228
|
+
*
|
|
229
|
+
* @group Selection
|
|
230
|
+
*/
|
|
231
|
+
moveUp(): void;
|
|
232
|
+
/**
|
|
233
|
+
* Opens a folder, and the folders above it. A node marked `load_on_demand`
|
|
234
|
+
* is fetched first, so await the promise when you need to know it is really
|
|
235
|
+
* open.
|
|
236
|
+
*
|
|
237
|
+
* @example
|
|
238
|
+
* ```js
|
|
239
|
+
* await tree.openNode(node);
|
|
240
|
+
* console.log("open");
|
|
241
|
+
* ```
|
|
242
|
+
*
|
|
243
|
+
* @param slide - Override the `slide` option for this call.
|
|
244
|
+
* @group Opening and closing
|
|
245
|
+
*/
|
|
246
|
+
openNode(node: Node, slide?: boolean): Promise<void>;
|
|
247
|
+
/**
|
|
248
|
+
* Adds a node as the first child of a parent.
|
|
249
|
+
*
|
|
250
|
+
* @returns The new node.
|
|
251
|
+
* @group Changing the tree
|
|
252
|
+
*/
|
|
253
|
+
prependNode(nodeData: NodeData, parentNode: Node): Node;
|
|
254
|
+
/**
|
|
255
|
+
* Re-renders the whole tree. Needed after changing node data directly
|
|
256
|
+
* instead of through these methods.
|
|
257
|
+
*
|
|
258
|
+
* @group Changing the tree
|
|
259
|
+
*/
|
|
260
|
+
refresh(): void;
|
|
261
|
+
/**
|
|
262
|
+
* Recomputes the drop targets. Call this if the layout changes during a
|
|
263
|
+
* drag.
|
|
264
|
+
*
|
|
265
|
+
* @group Other
|
|
266
|
+
*/
|
|
267
|
+
refreshHitAreas(): void;
|
|
268
|
+
/**
|
|
269
|
+
* Removes a node from the selection.
|
|
270
|
+
*
|
|
271
|
+
* @group Selection
|
|
272
|
+
*/
|
|
273
|
+
removeFromSelection(node: Node): void;
|
|
274
|
+
/**
|
|
275
|
+
* Removes a node and its children.
|
|
276
|
+
*
|
|
277
|
+
* @group Changing the tree
|
|
278
|
+
*/
|
|
279
|
+
removeNode(node: Node): void;
|
|
280
|
+
/**
|
|
281
|
+
* Scrolls the node into view.
|
|
282
|
+
*
|
|
283
|
+
* @group Selection
|
|
284
|
+
*/
|
|
285
|
+
scrollToNode(node: Node): void;
|
|
286
|
+
/**
|
|
287
|
+
* Replaces the selection, and opens the parents of the node.
|
|
288
|
+
*
|
|
289
|
+
* @param node - `null` clears the selection.
|
|
290
|
+
* @param options - `mustSetFocus`: move focus to the node, default `true`.
|
|
291
|
+
* `mustToggle`: deselect the node if it is already selected, default
|
|
292
|
+
* `false`.
|
|
293
|
+
* @group Selection
|
|
294
|
+
*/
|
|
295
|
+
selectNode(node: Node | null, options?: SelectNodeOptions): void;
|
|
296
|
+
/**
|
|
297
|
+
* Changes an option after construction. See
|
|
298
|
+
* [Options](/reference/options#changing-an-option-later) for the caveats.
|
|
299
|
+
*
|
|
300
|
+
* @group Other
|
|
301
|
+
*/
|
|
302
|
+
setOption(option: string, value: unknown): void;
|
|
303
|
+
/**
|
|
304
|
+
* Applies a state to the tree.
|
|
305
|
+
*
|
|
306
|
+
* @group State
|
|
307
|
+
*/
|
|
308
|
+
setState(state: SavedState): void;
|
|
309
|
+
/**
|
|
310
|
+
* Closes an open node and opens a closed one.
|
|
311
|
+
*
|
|
312
|
+
* @param slide - Override the `slide` option for this call.
|
|
313
|
+
* @group Opening and closing
|
|
314
|
+
*/
|
|
315
|
+
toggle(node: Node, slide?: boolean | null): void;
|
|
316
|
+
/**
|
|
317
|
+
* Returns the tree as a json string, including changes made through the
|
|
318
|
+
* api.
|
|
319
|
+
*
|
|
320
|
+
* @group Other
|
|
321
|
+
*/
|
|
322
|
+
toJson(): string;
|
|
323
|
+
/**
|
|
324
|
+
* Updates the data of a node and re-renders it. A string updates just the
|
|
325
|
+
* name.
|
|
326
|
+
*
|
|
327
|
+
* Changing the `id` re-indexes the node. `children` and `parent` are
|
|
328
|
+
* ignored — use `loadData` or `moveNode` for those.
|
|
329
|
+
*
|
|
330
|
+
* @example
|
|
331
|
+
* ```js
|
|
332
|
+
* tree.updateNode(node, "new name");
|
|
333
|
+
* tree.updateNode(node, { name: "new name", color: "red" });
|
|
334
|
+
* ```
|
|
335
|
+
*
|
|
336
|
+
* @group Changing the tree
|
|
337
|
+
*/
|
|
338
|
+
updateNode(node: Node, data: NodeData): void;
|
|
339
|
+
private createFolderElement;
|
|
340
|
+
private createNodeElement;
|
|
341
|
+
private createRequestUrl;
|
|
342
|
+
private deselectCurrentNode;
|
|
343
|
+
private deselectNodes;
|
|
344
|
+
private getAutoOpenMaxLevel;
|
|
345
|
+
private getNodeElement;
|
|
346
|
+
private getNodeElementForNode;
|
|
347
|
+
private getNodeIdToBeSelected;
|
|
348
|
+
private initData;
|
|
349
|
+
private initTree;
|
|
350
|
+
private isFocusOnTree;
|
|
351
|
+
private isSelectedNodeInSubtree;
|
|
352
|
+
private loadFolderOnDemand;
|
|
353
|
+
private loadSubtree;
|
|
354
|
+
private mouseCapture;
|
|
355
|
+
private mouseDrag;
|
|
356
|
+
private mouseStart;
|
|
357
|
+
private mouseStop;
|
|
358
|
+
private openParents;
|
|
359
|
+
private refreshElements;
|
|
360
|
+
private saveState;
|
|
361
|
+
private selectCurrentNode;
|
|
362
|
+
private setInitialState;
|
|
363
|
+
private setInitialStateOnDemand;
|
|
364
|
+
private setNodeElement;
|
|
365
|
+
private triggerEvent;
|
|
366
|
+
}
|
|
367
|
+
//# sourceMappingURL=index.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"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"}
|