@apia/tree 0.2.2 → 0.3.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.md +20 -20
- package/README.md +27 -27
- package/cleanDist.json +3 -0
- package/dist/index.d.ts +76 -13
- package/dist/index.js +391 -150
- package/dist/index.js.map +1 -1
- package/package.json +6 -6
package/dist/index.js
CHANGED
|
@@ -3,7 +3,7 @@ import { useMount, useDebounceFn, useUnmount } from 'ahooks';
|
|
|
3
3
|
import React, { useState, useEffect, memo } from 'react';
|
|
4
4
|
import { shallowEqual } from 'react-redux';
|
|
5
5
|
import { makeStyledComponent, Spinner, getVariant, Box } from '@apia/theme';
|
|
6
|
-
import { EventEmitter, PropsStore, addBoundary, getSpecificParent, usePropsSelector, formatMessage, useLatest } from '@apia/util';
|
|
6
|
+
import { EventEmitter, PropsStore, addBoundary, getSpecificParent, usePropsSelector, formatMessage, useLatest, HashedEventEmitter } from '@apia/util';
|
|
7
7
|
import { IconButton } from '@apia/components';
|
|
8
8
|
import { Icon } from '@apia/icons';
|
|
9
9
|
import { uniqueId } from 'lodash-es';
|
|
@@ -228,25 +228,25 @@ const selectAllNodesBetweenTwoNodes = (handler, oneNodeId, anotherNodeId, avoidF
|
|
|
228
228
|
}
|
|
229
229
|
};
|
|
230
230
|
|
|
231
|
-
var __defProp$
|
|
232
|
-
var __defProps$
|
|
233
|
-
var __getOwnPropDescs$
|
|
234
|
-
var __getOwnPropSymbols$
|
|
235
|
-
var __hasOwnProp$
|
|
236
|
-
var __propIsEnum$
|
|
237
|
-
var __defNormalProp$
|
|
238
|
-
var __spreadValues$
|
|
231
|
+
var __defProp$8 = Object.defineProperty;
|
|
232
|
+
var __defProps$7 = Object.defineProperties;
|
|
233
|
+
var __getOwnPropDescs$7 = Object.getOwnPropertyDescriptors;
|
|
234
|
+
var __getOwnPropSymbols$8 = Object.getOwnPropertySymbols;
|
|
235
|
+
var __hasOwnProp$8 = Object.prototype.hasOwnProperty;
|
|
236
|
+
var __propIsEnum$8 = Object.prototype.propertyIsEnumerable;
|
|
237
|
+
var __defNormalProp$8 = (obj, key, value) => key in obj ? __defProp$8(obj, key, { enumerable: true, configurable: true, writable: true, value }) : obj[key] = value;
|
|
238
|
+
var __spreadValues$8 = (a, b) => {
|
|
239
239
|
for (var prop in b || (b = {}))
|
|
240
|
-
if (__hasOwnProp$
|
|
241
|
-
__defNormalProp$
|
|
242
|
-
if (__getOwnPropSymbols$
|
|
243
|
-
for (var prop of __getOwnPropSymbols$
|
|
244
|
-
if (__propIsEnum$
|
|
245
|
-
__defNormalProp$
|
|
240
|
+
if (__hasOwnProp$8.call(b, prop))
|
|
241
|
+
__defNormalProp$8(a, prop, b[prop]);
|
|
242
|
+
if (__getOwnPropSymbols$8)
|
|
243
|
+
for (var prop of __getOwnPropSymbols$8(b)) {
|
|
244
|
+
if (__propIsEnum$8.call(b, prop))
|
|
245
|
+
__defNormalProp$8(a, prop, b[prop]);
|
|
246
246
|
}
|
|
247
247
|
return a;
|
|
248
248
|
};
|
|
249
|
-
var __spreadProps$
|
|
249
|
+
var __spreadProps$7 = (a, b) => __defProps$7(a, __getOwnPropDescs$7(b));
|
|
250
250
|
const trees = {};
|
|
251
251
|
const treesRecordEmitter = new class TreesRecordEmitter extends EventEmitter {
|
|
252
252
|
emit(eventName, params) {
|
|
@@ -305,7 +305,7 @@ class TreeDataController extends EventEmitter {
|
|
|
305
305
|
this.initRoot();
|
|
306
306
|
}
|
|
307
307
|
get configuration() {
|
|
308
|
-
return __spreadValues$
|
|
308
|
+
return __spreadValues$8({}, this._configuration);
|
|
309
309
|
}
|
|
310
310
|
get state() {
|
|
311
311
|
return this.propsStore.getFieldProps(
|
|
@@ -320,7 +320,7 @@ class TreeDataController extends EventEmitter {
|
|
|
320
320
|
}
|
|
321
321
|
append(node) {
|
|
322
322
|
var _a, _b, _c, _d, _e;
|
|
323
|
-
const newNode = __spreadProps$
|
|
323
|
+
const newNode = __spreadProps$7(__spreadValues$8({}, node), { nodeProps: (_a = node.nodeProps) != null ? _a : {} });
|
|
324
324
|
let father;
|
|
325
325
|
if (newNode.parentId !== void 0 && ((_b = this.propsStore.getFieldProps(newNode.parentId)) == null ? void 0 : _b.children)) {
|
|
326
326
|
father = newNode.parentId;
|
|
@@ -333,7 +333,7 @@ class TreeDataController extends EventEmitter {
|
|
|
333
333
|
}
|
|
334
334
|
this.propsStore.updateField(
|
|
335
335
|
newNode.id,
|
|
336
|
-
__spreadProps$
|
|
336
|
+
__spreadProps$7(__spreadValues$8({}, newNode), {
|
|
337
337
|
children: (_c = newNode.children) != null ? _c : []
|
|
338
338
|
}),
|
|
339
339
|
{ isUrgent: true }
|
|
@@ -355,11 +355,12 @@ class TreeDataController extends EventEmitter {
|
|
|
355
355
|
children: [
|
|
356
356
|
...this.propsStore.getFieldProps(father).children,
|
|
357
357
|
newNode.id
|
|
358
|
-
]
|
|
358
|
+
],
|
|
359
|
+
hasLoaded: true
|
|
359
360
|
},
|
|
360
|
-
{ noEmit:
|
|
361
|
+
{ noEmit: ((_d = this._configuration.current) == null ? void 0 : _d.emitUpdates) === false }
|
|
361
362
|
);
|
|
362
|
-
if (
|
|
363
|
+
if (((_e = this._configuration.current) == null ? void 0 : _e.emitUpdates) === false)
|
|
363
364
|
this.nonEmittedUpdates.push(father);
|
|
364
365
|
if (!this.hasApendedFirstChild) {
|
|
365
366
|
this.hasApendedFirstChild = true;
|
|
@@ -376,6 +377,13 @@ class TreeDataController extends EventEmitter {
|
|
|
376
377
|
this.config({ emitUpdates: false });
|
|
377
378
|
this.setState({ isLoading: true }, { isUrgent: true });
|
|
378
379
|
}
|
|
380
|
+
getNodesRecursive(nodeId = "root") {
|
|
381
|
+
const node = this.propsStore.getFieldProps(nodeId);
|
|
382
|
+
return node.children.reduce(
|
|
383
|
+
(prev, current) => [...prev, ...this.getNodesRecursive(current)],
|
|
384
|
+
[...node.children]
|
|
385
|
+
);
|
|
386
|
+
}
|
|
379
387
|
/**
|
|
380
388
|
* Cuando se quieren agregar muchos nodos, es conveniente llamar primero al
|
|
381
389
|
* método batchInit y luego de finalizar, al método batchFinish()
|
|
@@ -383,7 +391,7 @@ class TreeDataController extends EventEmitter {
|
|
|
383
391
|
batchFinish() {
|
|
384
392
|
this.config({ emitUpdates: true });
|
|
385
393
|
setTimeout(() => this.setState({ isLoading: false }), 0);
|
|
386
|
-
const children = [...this.
|
|
394
|
+
const children = [...this.getNodesRecursive()];
|
|
387
395
|
const deleteNodes = this.previousNodes.filter(
|
|
388
396
|
(current) => !children.find((search) => search === current)
|
|
389
397
|
);
|
|
@@ -393,7 +401,7 @@ class TreeDataController extends EventEmitter {
|
|
|
393
401
|
}
|
|
394
402
|
config(newConf) {
|
|
395
403
|
var _a;
|
|
396
|
-
if (
|
|
404
|
+
if (((_a = this._configuration.current) == null ? void 0 : _a.emitUpdates) === false && newConf.emitUpdates !== false) {
|
|
397
405
|
this.nonEmittedUpdates.forEach(
|
|
398
406
|
(current) => this.propsStore.updateField(current, {
|
|
399
407
|
children: [...this.propsStore.getFieldProps(current).children]
|
|
@@ -429,7 +437,7 @@ class TreeDataController extends EventEmitter {
|
|
|
429
437
|
};
|
|
430
438
|
}
|
|
431
439
|
getNodesAsArray() {
|
|
432
|
-
const allFields = __spreadValues$
|
|
440
|
+
const allFields = __spreadValues$8({}, this.propsStore.fields);
|
|
433
441
|
delete allFields[this.stateKey];
|
|
434
442
|
delete allFields.root;
|
|
435
443
|
return Object.values(allFields);
|
|
@@ -439,7 +447,7 @@ class TreeDataController extends EventEmitter {
|
|
|
439
447
|
* árbol
|
|
440
448
|
*/
|
|
441
449
|
getNodesIds() {
|
|
442
|
-
const allFields = __spreadValues$
|
|
450
|
+
const allFields = __spreadValues$8({}, this.propsStore.fields);
|
|
443
451
|
delete allFields[this.stateKey];
|
|
444
452
|
delete allFields.root;
|
|
445
453
|
return Object.keys(allFields);
|
|
@@ -758,7 +766,7 @@ class TreeDataController extends EventEmitter {
|
|
|
758
766
|
setState(updateProps, conf) {
|
|
759
767
|
this.propsStore.updateField(
|
|
760
768
|
this.stateKey,
|
|
761
|
-
__spreadValues$
|
|
769
|
+
__spreadValues$8(__spreadValues$8({}, this.state), updateProps),
|
|
762
770
|
conf
|
|
763
771
|
);
|
|
764
772
|
}
|
|
@@ -819,7 +827,7 @@ function useTreeSelector(handler, configuration) {
|
|
|
819
827
|
var _a;
|
|
820
828
|
return usePropsSelector(
|
|
821
829
|
(_a = handler == null ? void 0 : handler.stateKey) != null ? _a : "__NO__TREE__KEY__",
|
|
822
|
-
__spreadValues$
|
|
830
|
+
__spreadValues$8({
|
|
823
831
|
propsStore: handler == null ? void 0 : handler.propsStore
|
|
824
832
|
}, configuration)
|
|
825
833
|
);
|
|
@@ -829,32 +837,32 @@ function useTreeSelectorByName(treeName, configuration) {
|
|
|
829
837
|
const handler = useTreeDataController(treeName);
|
|
830
838
|
const selection = usePropsSelector(
|
|
831
839
|
(_a = handler == null ? void 0 : handler.stateKey) != null ? _a : "__NO__TREE__KEY__",
|
|
832
|
-
__spreadValues$
|
|
840
|
+
__spreadValues$8({
|
|
833
841
|
propsStore: handler == null ? void 0 : handler.propsStore
|
|
834
842
|
}, configuration)
|
|
835
843
|
);
|
|
836
844
|
return { selection, handler };
|
|
837
845
|
}
|
|
838
846
|
|
|
839
|
-
var __defProp$
|
|
840
|
-
var __defProps$
|
|
841
|
-
var __getOwnPropDescs$
|
|
842
|
-
var __getOwnPropSymbols$
|
|
843
|
-
var __hasOwnProp$
|
|
844
|
-
var __propIsEnum$
|
|
845
|
-
var __defNormalProp$
|
|
846
|
-
var __spreadValues$
|
|
847
|
+
var __defProp$7 = Object.defineProperty;
|
|
848
|
+
var __defProps$6 = Object.defineProperties;
|
|
849
|
+
var __getOwnPropDescs$6 = Object.getOwnPropertyDescriptors;
|
|
850
|
+
var __getOwnPropSymbols$7 = Object.getOwnPropertySymbols;
|
|
851
|
+
var __hasOwnProp$7 = Object.prototype.hasOwnProperty;
|
|
852
|
+
var __propIsEnum$7 = Object.prototype.propertyIsEnumerable;
|
|
853
|
+
var __defNormalProp$7 = (obj, key, value) => key in obj ? __defProp$7(obj, key, { enumerable: true, configurable: true, writable: true, value }) : obj[key] = value;
|
|
854
|
+
var __spreadValues$7 = (a, b) => {
|
|
847
855
|
for (var prop in b || (b = {}))
|
|
848
|
-
if (__hasOwnProp$
|
|
849
|
-
__defNormalProp$
|
|
850
|
-
if (__getOwnPropSymbols$
|
|
851
|
-
for (var prop of __getOwnPropSymbols$
|
|
852
|
-
if (__propIsEnum$
|
|
853
|
-
__defNormalProp$
|
|
856
|
+
if (__hasOwnProp$7.call(b, prop))
|
|
857
|
+
__defNormalProp$7(a, prop, b[prop]);
|
|
858
|
+
if (__getOwnPropSymbols$7)
|
|
859
|
+
for (var prop of __getOwnPropSymbols$7(b)) {
|
|
860
|
+
if (__propIsEnum$7.call(b, prop))
|
|
861
|
+
__defNormalProp$7(a, prop, b[prop]);
|
|
854
862
|
}
|
|
855
863
|
return a;
|
|
856
864
|
};
|
|
857
|
-
var __spreadProps$
|
|
865
|
+
var __spreadProps$6 = (a, b) => __defProps$6(a, __getOwnPropDescs$6(b));
|
|
858
866
|
function getActiveDescendantName(treeName, nodeId) {
|
|
859
867
|
return `${treeName}__${nodeId}`;
|
|
860
868
|
}
|
|
@@ -864,7 +872,7 @@ function getDomProps(_, treeName, type, par) {
|
|
|
864
872
|
case "node": {
|
|
865
873
|
const node = par;
|
|
866
874
|
const tree = getTreeDataController(treeName);
|
|
867
|
-
return __spreadProps$
|
|
875
|
+
return __spreadProps$6(__spreadValues$7({
|
|
868
876
|
"aria-disabled": node.isDisabled,
|
|
869
877
|
"aria-expanded": node.isLeaf ? void 0 : !!node.isExpanded,
|
|
870
878
|
"aria-label": node.label
|
|
@@ -889,25 +897,25 @@ function getDomProps(_, treeName, type, par) {
|
|
|
889
897
|
}
|
|
890
898
|
}
|
|
891
899
|
|
|
892
|
-
var __defProp$
|
|
893
|
-
var __defProps$
|
|
894
|
-
var __getOwnPropDescs$
|
|
895
|
-
var __getOwnPropSymbols$
|
|
896
|
-
var __hasOwnProp$
|
|
897
|
-
var __propIsEnum$
|
|
898
|
-
var __defNormalProp$
|
|
899
|
-
var __spreadValues$
|
|
900
|
+
var __defProp$6 = Object.defineProperty;
|
|
901
|
+
var __defProps$5 = Object.defineProperties;
|
|
902
|
+
var __getOwnPropDescs$5 = Object.getOwnPropertyDescriptors;
|
|
903
|
+
var __getOwnPropSymbols$6 = Object.getOwnPropertySymbols;
|
|
904
|
+
var __hasOwnProp$6 = Object.prototype.hasOwnProperty;
|
|
905
|
+
var __propIsEnum$6 = Object.prototype.propertyIsEnumerable;
|
|
906
|
+
var __defNormalProp$6 = (obj, key, value) => key in obj ? __defProp$6(obj, key, { enumerable: true, configurable: true, writable: true, value }) : obj[key] = value;
|
|
907
|
+
var __spreadValues$6 = (a, b) => {
|
|
900
908
|
for (var prop in b || (b = {}))
|
|
901
|
-
if (__hasOwnProp$
|
|
902
|
-
__defNormalProp$
|
|
903
|
-
if (__getOwnPropSymbols$
|
|
904
|
-
for (var prop of __getOwnPropSymbols$
|
|
905
|
-
if (__propIsEnum$
|
|
906
|
-
__defNormalProp$
|
|
909
|
+
if (__hasOwnProp$6.call(b, prop))
|
|
910
|
+
__defNormalProp$6(a, prop, b[prop]);
|
|
911
|
+
if (__getOwnPropSymbols$6)
|
|
912
|
+
for (var prop of __getOwnPropSymbols$6(b)) {
|
|
913
|
+
if (__propIsEnum$6.call(b, prop))
|
|
914
|
+
__defNormalProp$6(a, prop, b[prop]);
|
|
907
915
|
}
|
|
908
916
|
return a;
|
|
909
917
|
};
|
|
910
|
-
var __spreadProps$
|
|
918
|
+
var __spreadProps$5 = (a, b) => __defProps$5(a, __getOwnPropDescs$5(b));
|
|
911
919
|
const styles = {
|
|
912
920
|
height: "iconmd",
|
|
913
921
|
width: "iconmd",
|
|
@@ -920,26 +928,26 @@ const LoaderSpinner = makeStyledComponent(
|
|
|
920
928
|
({ className }) => {
|
|
921
929
|
return /* @__PURE__ */ jsx(
|
|
922
930
|
Spinner,
|
|
923
|
-
__spreadProps$
|
|
931
|
+
__spreadProps$5(__spreadValues$6({}, getVariant("layout.common.components.loaderSpinner")), {
|
|
924
932
|
className
|
|
925
933
|
})
|
|
926
934
|
);
|
|
927
935
|
}
|
|
928
936
|
);
|
|
929
937
|
|
|
930
|
-
var __defProp$
|
|
931
|
-
var __getOwnPropSymbols$
|
|
932
|
-
var __hasOwnProp$
|
|
933
|
-
var __propIsEnum$
|
|
934
|
-
var __defNormalProp$
|
|
935
|
-
var __spreadValues$
|
|
938
|
+
var __defProp$5 = Object.defineProperty;
|
|
939
|
+
var __getOwnPropSymbols$5 = Object.getOwnPropertySymbols;
|
|
940
|
+
var __hasOwnProp$5 = Object.prototype.hasOwnProperty;
|
|
941
|
+
var __propIsEnum$5 = Object.prototype.propertyIsEnumerable;
|
|
942
|
+
var __defNormalProp$5 = (obj, key, value) => key in obj ? __defProp$5(obj, key, { enumerable: true, configurable: true, writable: true, value }) : obj[key] = value;
|
|
943
|
+
var __spreadValues$5 = (a, b) => {
|
|
936
944
|
for (var prop in b || (b = {}))
|
|
937
|
-
if (__hasOwnProp$
|
|
938
|
-
__defNormalProp$
|
|
939
|
-
if (__getOwnPropSymbols$
|
|
940
|
-
for (var prop of __getOwnPropSymbols$
|
|
941
|
-
if (__propIsEnum$
|
|
942
|
-
__defNormalProp$
|
|
945
|
+
if (__hasOwnProp$5.call(b, prop))
|
|
946
|
+
__defNormalProp$5(a, prop, b[prop]);
|
|
947
|
+
if (__getOwnPropSymbols$5)
|
|
948
|
+
for (var prop of __getOwnPropSymbols$5(b)) {
|
|
949
|
+
if (__propIsEnum$5.call(b, prop))
|
|
950
|
+
__defNormalProp$5(a, prop, b[prop]);
|
|
943
951
|
}
|
|
944
952
|
return a;
|
|
945
953
|
};
|
|
@@ -954,7 +962,7 @@ const SearchLabel = ({
|
|
|
954
962
|
formatMessage(window.LBL_FILTERING_BY, { TOK1: searchString }),
|
|
955
963
|
/* @__PURE__ */ jsx(
|
|
956
964
|
IconButton,
|
|
957
|
-
__spreadValues$
|
|
965
|
+
__spreadValues$5({
|
|
958
966
|
icon: "Close",
|
|
959
967
|
"aria-label": window.LBL_DELETE_FILTER,
|
|
960
968
|
onClick: onDelete,
|
|
@@ -989,7 +997,8 @@ const DefaultIconRenderer = (props) => {
|
|
|
989
997
|
{
|
|
990
998
|
name: props.icon,
|
|
991
999
|
title: "",
|
|
992
|
-
size: (_a = props.iconSize) != null ? _a : "iconSm"
|
|
1000
|
+
size: (_a = props.iconSize) != null ? _a : "iconSm",
|
|
1001
|
+
className: "tree__node__icon"
|
|
993
1002
|
}
|
|
994
1003
|
);
|
|
995
1004
|
};
|
|
@@ -1002,25 +1011,25 @@ const Spacer = ({ level }) => {
|
|
|
1002
1011
|
return /* @__PURE__ */ jsx(Fragment, { children: Array(level).fill("").map((_, i) => i).map((current) => /* @__PURE__ */ jsx(Box, { className: "spacer" }, current)) });
|
|
1003
1012
|
};
|
|
1004
1013
|
|
|
1005
|
-
var __defProp$
|
|
1006
|
-
var __defProps$
|
|
1007
|
-
var __getOwnPropDescs$
|
|
1008
|
-
var __getOwnPropSymbols$
|
|
1009
|
-
var __hasOwnProp$
|
|
1010
|
-
var __propIsEnum$
|
|
1011
|
-
var __defNormalProp$
|
|
1012
|
-
var __spreadValues$
|
|
1014
|
+
var __defProp$4 = Object.defineProperty;
|
|
1015
|
+
var __defProps$4 = Object.defineProperties;
|
|
1016
|
+
var __getOwnPropDescs$4 = Object.getOwnPropertyDescriptors;
|
|
1017
|
+
var __getOwnPropSymbols$4 = Object.getOwnPropertySymbols;
|
|
1018
|
+
var __hasOwnProp$4 = Object.prototype.hasOwnProperty;
|
|
1019
|
+
var __propIsEnum$4 = Object.prototype.propertyIsEnumerable;
|
|
1020
|
+
var __defNormalProp$4 = (obj, key, value) => key in obj ? __defProp$4(obj, key, { enumerable: true, configurable: true, writable: true, value }) : obj[key] = value;
|
|
1021
|
+
var __spreadValues$4 = (a, b) => {
|
|
1013
1022
|
for (var prop in b || (b = {}))
|
|
1014
|
-
if (__hasOwnProp$
|
|
1015
|
-
__defNormalProp$
|
|
1016
|
-
if (__getOwnPropSymbols$
|
|
1017
|
-
for (var prop of __getOwnPropSymbols$
|
|
1018
|
-
if (__propIsEnum$
|
|
1019
|
-
__defNormalProp$
|
|
1023
|
+
if (__hasOwnProp$4.call(b, prop))
|
|
1024
|
+
__defNormalProp$4(a, prop, b[prop]);
|
|
1025
|
+
if (__getOwnPropSymbols$4)
|
|
1026
|
+
for (var prop of __getOwnPropSymbols$4(b)) {
|
|
1027
|
+
if (__propIsEnum$4.call(b, prop))
|
|
1028
|
+
__defNormalProp$4(a, prop, b[prop]);
|
|
1020
1029
|
}
|
|
1021
1030
|
return a;
|
|
1022
1031
|
};
|
|
1023
|
-
var __spreadProps$
|
|
1032
|
+
var __spreadProps$4 = (a, b) => __defProps$4(a, __getOwnPropDescs$4(b));
|
|
1024
1033
|
const TreeItemLabel = ({ level, treeKey }) => {
|
|
1025
1034
|
var _a, _b, _c;
|
|
1026
1035
|
const {
|
|
@@ -1063,19 +1072,19 @@ const TreeItemLabel = ({ level, treeKey }) => {
|
|
|
1063
1072
|
{
|
|
1064
1073
|
className: "tree__expandIcon",
|
|
1065
1074
|
onClick: handleToggle,
|
|
1066
|
-
name: props.isExpanded ? "
|
|
1075
|
+
name: props.isExpanded ? "ArrowDownThin" : "ArrowRightThin",
|
|
1067
1076
|
title: "",
|
|
1068
|
-
size:
|
|
1077
|
+
size: 20
|
|
1069
1078
|
}
|
|
1070
1079
|
) }),
|
|
1071
|
-
props.icon && IconRenderer && /* @__PURE__ */ jsx(IconRenderer, __spreadValues$
|
|
1080
|
+
props.icon && IconRenderer && /* @__PURE__ */ jsx(IconRenderer, __spreadValues$4({}, props)),
|
|
1072
1081
|
/* @__PURE__ */ jsx(
|
|
1073
1082
|
Box,
|
|
1074
1083
|
{
|
|
1075
1084
|
as: "span",
|
|
1076
1085
|
className: "tree__nodeItemLabelRenderer",
|
|
1077
1086
|
onClick: toggleNodesOnLabelClick !== false ? onClick : void 0,
|
|
1078
|
-
children: /* @__PURE__ */ jsx(Renderer, __spreadProps$
|
|
1087
|
+
children: /* @__PURE__ */ jsx(Renderer, __spreadProps$4(__spreadValues$4({}, props), { level }))
|
|
1079
1088
|
}
|
|
1080
1089
|
)
|
|
1081
1090
|
]
|
|
@@ -1084,25 +1093,25 @@ const TreeItemLabel = ({ level, treeKey }) => {
|
|
|
1084
1093
|
};
|
|
1085
1094
|
var TreeItemLabel$1 = React.memo(TreeItemLabel);
|
|
1086
1095
|
|
|
1087
|
-
var __defProp$
|
|
1088
|
-
var __defProps$
|
|
1089
|
-
var __getOwnPropDescs$
|
|
1090
|
-
var __getOwnPropSymbols$
|
|
1091
|
-
var __hasOwnProp$
|
|
1092
|
-
var __propIsEnum$
|
|
1093
|
-
var __defNormalProp$
|
|
1094
|
-
var __spreadValues$
|
|
1096
|
+
var __defProp$3 = Object.defineProperty;
|
|
1097
|
+
var __defProps$3 = Object.defineProperties;
|
|
1098
|
+
var __getOwnPropDescs$3 = Object.getOwnPropertyDescriptors;
|
|
1099
|
+
var __getOwnPropSymbols$3 = Object.getOwnPropertySymbols;
|
|
1100
|
+
var __hasOwnProp$3 = Object.prototype.hasOwnProperty;
|
|
1101
|
+
var __propIsEnum$3 = Object.prototype.propertyIsEnumerable;
|
|
1102
|
+
var __defNormalProp$3 = (obj, key, value) => key in obj ? __defProp$3(obj, key, { enumerable: true, configurable: true, writable: true, value }) : obj[key] = value;
|
|
1103
|
+
var __spreadValues$3 = (a, b) => {
|
|
1095
1104
|
for (var prop in b || (b = {}))
|
|
1096
|
-
if (__hasOwnProp$
|
|
1097
|
-
__defNormalProp$
|
|
1098
|
-
if (__getOwnPropSymbols$
|
|
1099
|
-
for (var prop of __getOwnPropSymbols$
|
|
1100
|
-
if (__propIsEnum$
|
|
1101
|
-
__defNormalProp$
|
|
1105
|
+
if (__hasOwnProp$3.call(b, prop))
|
|
1106
|
+
__defNormalProp$3(a, prop, b[prop]);
|
|
1107
|
+
if (__getOwnPropSymbols$3)
|
|
1108
|
+
for (var prop of __getOwnPropSymbols$3(b)) {
|
|
1109
|
+
if (__propIsEnum$3.call(b, prop))
|
|
1110
|
+
__defNormalProp$3(a, prop, b[prop]);
|
|
1102
1111
|
}
|
|
1103
1112
|
return a;
|
|
1104
1113
|
};
|
|
1105
|
-
var __spreadProps$
|
|
1114
|
+
var __spreadProps$3 = (a, b) => __defProps$3(a, __getOwnPropDescs$3(b));
|
|
1106
1115
|
const TreeItem = ({ level, treeKey }) => {
|
|
1107
1116
|
const { handler, name, forceUpdate, treeProps } = useTreeContext();
|
|
1108
1117
|
const props = usePropsSelector(treeKey, {
|
|
@@ -1121,9 +1130,9 @@ const TreeItem = ({ level, treeKey }) => {
|
|
|
1121
1130
|
},
|
|
1122
1131
|
[props.children, handler.propsStore]
|
|
1123
1132
|
);
|
|
1124
|
-
return /* @__PURE__ */ jsx(Fragment, { children: /* @__PURE__ */ jsxs(Box, __spreadProps$
|
|
1133
|
+
return /* @__PURE__ */ jsx(Fragment, { children: /* @__PURE__ */ jsxs(Box, __spreadProps$3(__spreadValues$3({ as: "li" }, getDomProps(treeProps, name, "node", props)), { children: [
|
|
1125
1134
|
/* @__PURE__ */ jsx(TreeItemLabel$1, { level, treeKey }),
|
|
1126
|
-
/* @__PURE__ */ jsx(
|
|
1135
|
+
props.isExpanded && /* @__PURE__ */ jsx(
|
|
1127
1136
|
TreeItemChildren$1,
|
|
1128
1137
|
{
|
|
1129
1138
|
forceUpdate,
|
|
@@ -1136,33 +1145,33 @@ const TreeItem = ({ level, treeKey }) => {
|
|
|
1136
1145
|
};
|
|
1137
1146
|
var TreeItem$1 = React.memo(TreeItem);
|
|
1138
1147
|
|
|
1139
|
-
var __defProp$
|
|
1140
|
-
var __defProps$
|
|
1141
|
-
var __getOwnPropDescs$
|
|
1142
|
-
var __getOwnPropSymbols$
|
|
1143
|
-
var __hasOwnProp$
|
|
1144
|
-
var __propIsEnum$
|
|
1145
|
-
var __defNormalProp$
|
|
1146
|
-
var __spreadValues$
|
|
1148
|
+
var __defProp$2 = Object.defineProperty;
|
|
1149
|
+
var __defProps$2 = Object.defineProperties;
|
|
1150
|
+
var __getOwnPropDescs$2 = Object.getOwnPropertyDescriptors;
|
|
1151
|
+
var __getOwnPropSymbols$2 = Object.getOwnPropertySymbols;
|
|
1152
|
+
var __hasOwnProp$2 = Object.prototype.hasOwnProperty;
|
|
1153
|
+
var __propIsEnum$2 = Object.prototype.propertyIsEnumerable;
|
|
1154
|
+
var __defNormalProp$2 = (obj, key, value) => key in obj ? __defProp$2(obj, key, { enumerable: true, configurable: true, writable: true, value }) : obj[key] = value;
|
|
1155
|
+
var __spreadValues$2 = (a, b) => {
|
|
1147
1156
|
for (var prop in b || (b = {}))
|
|
1148
|
-
if (__hasOwnProp$
|
|
1149
|
-
__defNormalProp$
|
|
1150
|
-
if (__getOwnPropSymbols$
|
|
1151
|
-
for (var prop of __getOwnPropSymbols$
|
|
1152
|
-
if (__propIsEnum$
|
|
1153
|
-
__defNormalProp$
|
|
1157
|
+
if (__hasOwnProp$2.call(b, prop))
|
|
1158
|
+
__defNormalProp$2(a, prop, b[prop]);
|
|
1159
|
+
if (__getOwnPropSymbols$2)
|
|
1160
|
+
for (var prop of __getOwnPropSymbols$2(b)) {
|
|
1161
|
+
if (__propIsEnum$2.call(b, prop))
|
|
1162
|
+
__defNormalProp$2(a, prop, b[prop]);
|
|
1154
1163
|
}
|
|
1155
1164
|
return a;
|
|
1156
1165
|
};
|
|
1157
|
-
var __spreadProps$
|
|
1166
|
+
var __spreadProps$2 = (a, b) => __defProps$2(a, __getOwnPropDescs$2(b));
|
|
1158
1167
|
var __objRest = (source, exclude) => {
|
|
1159
1168
|
var target = {};
|
|
1160
1169
|
for (var prop in source)
|
|
1161
|
-
if (__hasOwnProp$
|
|
1170
|
+
if (__hasOwnProp$2.call(source, prop) && exclude.indexOf(prop) < 0)
|
|
1162
1171
|
target[prop] = source[prop];
|
|
1163
|
-
if (source != null && __getOwnPropSymbols$
|
|
1164
|
-
for (var prop of __getOwnPropSymbols$
|
|
1165
|
-
if (exclude.indexOf(prop) < 0 && __propIsEnum$
|
|
1172
|
+
if (source != null && __getOwnPropSymbols$2)
|
|
1173
|
+
for (var prop of __getOwnPropSymbols$2(source)) {
|
|
1174
|
+
if (exclude.indexOf(prop) < 0 && __propIsEnum$2.call(source, prop))
|
|
1166
1175
|
target[prop] = source[prop];
|
|
1167
1176
|
}
|
|
1168
1177
|
return target;
|
|
@@ -1170,7 +1179,7 @@ var __objRest = (source, exclude) => {
|
|
|
1170
1179
|
const TreeItemChildren = React.forwardRef((_a, ref) => {
|
|
1171
1180
|
var _b = _a, { level, nodes, forceUpdate } = _b, props = __objRest(_b, ["level", "nodes", "forceUpdate"]);
|
|
1172
1181
|
const { handler } = useTreeContext();
|
|
1173
|
-
return /* @__PURE__ */ jsx(Box, __spreadProps$
|
|
1182
|
+
return /* @__PURE__ */ jsx(Box, __spreadProps$2(__spreadValues$2({ ref, as: "ul" }, props), { children: nodes == null ? void 0 : nodes.map((current) => {
|
|
1174
1183
|
const currentProps = handler.propsStore.getFieldProps(current.id);
|
|
1175
1184
|
if (!currentProps)
|
|
1176
1185
|
return null;
|
|
@@ -1312,30 +1321,30 @@ function useTreeData({ name, treeProps }) {
|
|
|
1312
1321
|
};
|
|
1313
1322
|
}
|
|
1314
1323
|
|
|
1315
|
-
var __defProp = Object.defineProperty;
|
|
1316
|
-
var __defProps = Object.defineProperties;
|
|
1317
|
-
var __getOwnPropDescs = Object.getOwnPropertyDescriptors;
|
|
1318
|
-
var __getOwnPropSymbols = Object.getOwnPropertySymbols;
|
|
1319
|
-
var __hasOwnProp = Object.prototype.hasOwnProperty;
|
|
1320
|
-
var __propIsEnum = Object.prototype.propertyIsEnumerable;
|
|
1321
|
-
var __defNormalProp = (obj, key, value) => key in obj ? __defProp(obj, key, { enumerable: true, configurable: true, writable: true, value }) : obj[key] = value;
|
|
1322
|
-
var __spreadValues = (a, b) => {
|
|
1324
|
+
var __defProp$1 = Object.defineProperty;
|
|
1325
|
+
var __defProps$1 = Object.defineProperties;
|
|
1326
|
+
var __getOwnPropDescs$1 = Object.getOwnPropertyDescriptors;
|
|
1327
|
+
var __getOwnPropSymbols$1 = Object.getOwnPropertySymbols;
|
|
1328
|
+
var __hasOwnProp$1 = Object.prototype.hasOwnProperty;
|
|
1329
|
+
var __propIsEnum$1 = Object.prototype.propertyIsEnumerable;
|
|
1330
|
+
var __defNormalProp$1 = (obj, key, value) => key in obj ? __defProp$1(obj, key, { enumerable: true, configurable: true, writable: true, value }) : obj[key] = value;
|
|
1331
|
+
var __spreadValues$1 = (a, b) => {
|
|
1323
1332
|
for (var prop in b || (b = {}))
|
|
1324
|
-
if (__hasOwnProp.call(b, prop))
|
|
1325
|
-
__defNormalProp(a, prop, b[prop]);
|
|
1326
|
-
if (__getOwnPropSymbols)
|
|
1327
|
-
for (var prop of __getOwnPropSymbols(b)) {
|
|
1328
|
-
if (__propIsEnum.call(b, prop))
|
|
1329
|
-
__defNormalProp(a, prop, b[prop]);
|
|
1333
|
+
if (__hasOwnProp$1.call(b, prop))
|
|
1334
|
+
__defNormalProp$1(a, prop, b[prop]);
|
|
1335
|
+
if (__getOwnPropSymbols$1)
|
|
1336
|
+
for (var prop of __getOwnPropSymbols$1(b)) {
|
|
1337
|
+
if (__propIsEnum$1.call(b, prop))
|
|
1338
|
+
__defNormalProp$1(a, prop, b[prop]);
|
|
1330
1339
|
}
|
|
1331
1340
|
return a;
|
|
1332
1341
|
};
|
|
1333
|
-
var __spreadProps = (a, b) => __defProps(a, __getOwnPropDescs(b));
|
|
1342
|
+
var __spreadProps$1 = (a, b) => __defProps$1(a, __getOwnPropDescs$1(b));
|
|
1334
1343
|
const Tree = (props) => {
|
|
1335
1344
|
var _a, _b, _c;
|
|
1336
1345
|
const { data, handler, keyHandler } = useTreeData({
|
|
1337
1346
|
name: props.name,
|
|
1338
|
-
treeProps: __spreadValues({}, props)
|
|
1347
|
+
treeProps: __spreadValues$1({}, props)
|
|
1339
1348
|
});
|
|
1340
1349
|
const [isLoading, setIsLoading] = React.useState(false);
|
|
1341
1350
|
const [currentSearchString, setCurrentSearchString] = React.useState("");
|
|
@@ -1411,7 +1420,7 @@ const Tree = (props) => {
|
|
|
1411
1420
|
}, [handler, props, data.forceUpdate]);
|
|
1412
1421
|
return /* @__PURE__ */ jsx(TreeContextProvider, { value: contextValue, children: /* @__PURE__ */ jsxs(
|
|
1413
1422
|
Box,
|
|
1414
|
-
__spreadProps(__spreadValues({
|
|
1423
|
+
__spreadProps$1(__spreadValues$1({
|
|
1415
1424
|
className: `tree ${(_a = props.className) != null ? _a : ""}`
|
|
1416
1425
|
}, getVariant((_b = props.variant) != null ? _b : "layout.common.trees.primary")), {
|
|
1417
1426
|
children: [
|
|
@@ -1425,7 +1434,7 @@ const Tree = (props) => {
|
|
|
1425
1434
|
),
|
|
1426
1435
|
/* @__PURE__ */ jsx(
|
|
1427
1436
|
TreeItemChildren$1,
|
|
1428
|
-
__spreadValues({
|
|
1437
|
+
__spreadValues$1({
|
|
1429
1438
|
"aria-activedescendant": focusedNode !== null ? getActiveDescendantName(props.name, focusedNode) : void 0,
|
|
1430
1439
|
"aria-label": props.label,
|
|
1431
1440
|
as: "ul",
|
|
@@ -1447,4 +1456,236 @@ const Tree = (props) => {
|
|
|
1447
1456
|
};
|
|
1448
1457
|
var Tree$1 = memo(Tree);
|
|
1449
1458
|
|
|
1450
|
-
|
|
1459
|
+
var __defProp = Object.defineProperty;
|
|
1460
|
+
var __defProps = Object.defineProperties;
|
|
1461
|
+
var __getOwnPropDescs = Object.getOwnPropertyDescriptors;
|
|
1462
|
+
var __getOwnPropSymbols = Object.getOwnPropertySymbols;
|
|
1463
|
+
var __hasOwnProp = Object.prototype.hasOwnProperty;
|
|
1464
|
+
var __propIsEnum = Object.prototype.propertyIsEnumerable;
|
|
1465
|
+
var __defNormalProp = (obj, key, value) => key in obj ? __defProp(obj, key, { enumerable: true, configurable: true, writable: true, value }) : obj[key] = value;
|
|
1466
|
+
var __spreadValues = (a, b) => {
|
|
1467
|
+
for (var prop in b || (b = {}))
|
|
1468
|
+
if (__hasOwnProp.call(b, prop))
|
|
1469
|
+
__defNormalProp(a, prop, b[prop]);
|
|
1470
|
+
if (__getOwnPropSymbols)
|
|
1471
|
+
for (var prop of __getOwnPropSymbols(b)) {
|
|
1472
|
+
if (__propIsEnum.call(b, prop))
|
|
1473
|
+
__defNormalProp(a, prop, b[prop]);
|
|
1474
|
+
}
|
|
1475
|
+
return a;
|
|
1476
|
+
};
|
|
1477
|
+
var __spreadProps = (a, b) => __defProps(a, __getOwnPropDescs(b));
|
|
1478
|
+
var __accessCheck$1 = (obj, member, msg) => {
|
|
1479
|
+
if (!member.has(obj))
|
|
1480
|
+
throw TypeError("Cannot " + msg);
|
|
1481
|
+
};
|
|
1482
|
+
var __privateGet$1 = (obj, member, getter) => {
|
|
1483
|
+
__accessCheck$1(obj, member, "read from private field");
|
|
1484
|
+
return getter ? getter.call(obj) : member.get(obj);
|
|
1485
|
+
};
|
|
1486
|
+
var __privateAdd$1 = (obj, member, value) => {
|
|
1487
|
+
if (member.has(obj))
|
|
1488
|
+
throw TypeError("Cannot add the same private member more than once");
|
|
1489
|
+
member instanceof WeakSet ? member.add(obj) : member.set(obj, value);
|
|
1490
|
+
};
|
|
1491
|
+
var _getByAbsoluteId;
|
|
1492
|
+
function isOOTreeNode(element) {
|
|
1493
|
+
return typeof element.attachToTree === "function";
|
|
1494
|
+
}
|
|
1495
|
+
const _OOTreeNode = class {
|
|
1496
|
+
constructor(tree, parent, props) {
|
|
1497
|
+
this.tree = tree;
|
|
1498
|
+
this.parent = parent;
|
|
1499
|
+
this.props = props;
|
|
1500
|
+
this.id = "";
|
|
1501
|
+
this.prefix = "";
|
|
1502
|
+
__privateAdd$1(this, _getByAbsoluteId, (id) => {
|
|
1503
|
+
const props = this.tree.getController().propsStore.getFieldProps(id);
|
|
1504
|
+
if (props === void 0)
|
|
1505
|
+
return void 0;
|
|
1506
|
+
return new _OOTreeNode(this.tree, props, props);
|
|
1507
|
+
});
|
|
1508
|
+
if (parent) {
|
|
1509
|
+
if (isOOTreeNode(parent)) {
|
|
1510
|
+
Object.assign(
|
|
1511
|
+
this,
|
|
1512
|
+
this.tree.calculateNodePrefix(props.id, parent == null ? void 0 : parent.prefix)
|
|
1513
|
+
);
|
|
1514
|
+
} else {
|
|
1515
|
+
this.prefix = parent.nodeProps.__prefix;
|
|
1516
|
+
this.id = String(parent.id);
|
|
1517
|
+
}
|
|
1518
|
+
}
|
|
1519
|
+
}
|
|
1520
|
+
attachToTree() {
|
|
1521
|
+
var _a, _b;
|
|
1522
|
+
const parentId = (_b = (_a = this.parent) == null ? void 0 : _a.id) != null ? _b : void 0;
|
|
1523
|
+
this.tree.getController().append(__spreadProps(__spreadValues({}, this.props), {
|
|
1524
|
+
id: this.id,
|
|
1525
|
+
label: this.props.label,
|
|
1526
|
+
parentId,
|
|
1527
|
+
nodeProps: __spreadProps(__spreadValues({}, this.props.nodeProps), {
|
|
1528
|
+
__prefix: this.prefix
|
|
1529
|
+
})
|
|
1530
|
+
}));
|
|
1531
|
+
}
|
|
1532
|
+
append(props) {
|
|
1533
|
+
const newNode = new _OOTreeNode(this.tree, this, props);
|
|
1534
|
+
newNode.attachToTree();
|
|
1535
|
+
return newNode;
|
|
1536
|
+
}
|
|
1537
|
+
getAll() {
|
|
1538
|
+
return this.tree.getController().propsStore.getFieldProps(this.id).children.map((current) => {
|
|
1539
|
+
return () => {
|
|
1540
|
+
return __privateGet$1(this, _getByAbsoluteId).call(this, String(current));
|
|
1541
|
+
};
|
|
1542
|
+
});
|
|
1543
|
+
}
|
|
1544
|
+
getById(id) {
|
|
1545
|
+
const { id: actualId } = this.tree.calculateNodePrefix(id, this.prefix);
|
|
1546
|
+
const props = this.tree.getController().propsStore.getFieldProps(actualId);
|
|
1547
|
+
if (props === void 0)
|
|
1548
|
+
return void 0;
|
|
1549
|
+
return new _OOTreeNode(this.tree, props, props);
|
|
1550
|
+
}
|
|
1551
|
+
getParent() {
|
|
1552
|
+
if (!this.parent)
|
|
1553
|
+
return null;
|
|
1554
|
+
const props = this.tree.getController().propsStore.getFieldProps(this.parent.id);
|
|
1555
|
+
return new _OOTreeNode(this.tree, props, props);
|
|
1556
|
+
}
|
|
1557
|
+
getProps() {
|
|
1558
|
+
return this.tree.getController().propsStore.getFieldProps(this.id);
|
|
1559
|
+
}
|
|
1560
|
+
remove() {
|
|
1561
|
+
this.tree.getController().remove(this.id, true);
|
|
1562
|
+
}
|
|
1563
|
+
update(props) {
|
|
1564
|
+
this.tree.getController().propsStore.updateField(this.id, props);
|
|
1565
|
+
}
|
|
1566
|
+
};
|
|
1567
|
+
let OOTreeNode = _OOTreeNode;
|
|
1568
|
+
_getByAbsoluteId = new WeakMap();
|
|
1569
|
+
|
|
1570
|
+
class OOTreeChildren extends OOTreeNode {
|
|
1571
|
+
constructor(tree) {
|
|
1572
|
+
super(tree, null, {});
|
|
1573
|
+
this.tree = tree;
|
|
1574
|
+
this.prefix = "c";
|
|
1575
|
+
}
|
|
1576
|
+
}
|
|
1577
|
+
|
|
1578
|
+
var __accessCheck = (obj, member, msg) => {
|
|
1579
|
+
if (!member.has(obj))
|
|
1580
|
+
throw TypeError("Cannot " + msg);
|
|
1581
|
+
};
|
|
1582
|
+
var __privateGet = (obj, member, getter) => {
|
|
1583
|
+
__accessCheck(obj, member, "read from private field");
|
|
1584
|
+
return getter ? getter.call(obj) : member.get(obj);
|
|
1585
|
+
};
|
|
1586
|
+
var __privateAdd = (obj, member, value) => {
|
|
1587
|
+
if (member.has(obj))
|
|
1588
|
+
throw TypeError("Cannot add the same private member more than once");
|
|
1589
|
+
member instanceof WeakSet ? member.add(obj) : member.set(obj, value);
|
|
1590
|
+
};
|
|
1591
|
+
var __privateSet = (obj, member, value, setter) => {
|
|
1592
|
+
__accessCheck(obj, member, "write to private field");
|
|
1593
|
+
setter ? setter.call(obj, value) : member.set(obj, value);
|
|
1594
|
+
return value;
|
|
1595
|
+
};
|
|
1596
|
+
var _onReady, _children, _controller;
|
|
1597
|
+
class OOTree extends HashedEventEmitter {
|
|
1598
|
+
constructor(label, name, hashMethod, onReady) {
|
|
1599
|
+
super(hashMethod);
|
|
1600
|
+
this.label = label;
|
|
1601
|
+
this.name = name;
|
|
1602
|
+
__privateAdd(this, _onReady, void 0);
|
|
1603
|
+
/**
|
|
1604
|
+
* Accessors
|
|
1605
|
+
*/
|
|
1606
|
+
__privateAdd(this, _children, null);
|
|
1607
|
+
__privateAdd(this, _controller, null);
|
|
1608
|
+
/**
|
|
1609
|
+
* Component
|
|
1610
|
+
*/
|
|
1611
|
+
this.getHandler = (handler) => {
|
|
1612
|
+
var _a;
|
|
1613
|
+
__privateSet(this, _controller, handler);
|
|
1614
|
+
__privateSet(this, _children, new OOTreeChildren(this));
|
|
1615
|
+
(_a = __privateGet(this, _onReady)) == null ? void 0 : _a.call(this);
|
|
1616
|
+
};
|
|
1617
|
+
this.Component = () => {
|
|
1618
|
+
return /* @__PURE__ */ jsx(
|
|
1619
|
+
Tree$1,
|
|
1620
|
+
{
|
|
1621
|
+
label: this.label,
|
|
1622
|
+
name: this.name,
|
|
1623
|
+
getHandler: this.getHandler
|
|
1624
|
+
}
|
|
1625
|
+
);
|
|
1626
|
+
};
|
|
1627
|
+
/**
|
|
1628
|
+
* Data manipulation
|
|
1629
|
+
*/
|
|
1630
|
+
this.prefixJoinCharacter = "$";
|
|
1631
|
+
this.prefixWithIdJoinCharacter = "__";
|
|
1632
|
+
this.prefixesMap = {};
|
|
1633
|
+
/**
|
|
1634
|
+
* Calcula el prefijo de un nodo que se está agregando al árbol evitando
|
|
1635
|
+
* colisiones. Ese prefijo estará asociado a cada nodo y se utilizará para dar
|
|
1636
|
+
* nombres únicos a sus hijos, no para el nodo en sí. Entonces, cada vez que
|
|
1637
|
+
* se construye un nodo, se le asigna un prefijo considerando el prefijo de su
|
|
1638
|
+
* padre, pero su nombre se hace a partir del prefijo del padre y su id.
|
|
1639
|
+
*/
|
|
1640
|
+
this.calculateNodePrefix = (id, prefix) => {
|
|
1641
|
+
const expectedPrefix = [prefix, String(id).charAt(0)].filter(Boolean).join(this.prefixJoinCharacter);
|
|
1642
|
+
let i = 1;
|
|
1643
|
+
let actualPrefix = expectedPrefix;
|
|
1644
|
+
while (this.prefixesMap[actualPrefix] !== void 0) {
|
|
1645
|
+
actualPrefix = `${expectedPrefix}${i++}`;
|
|
1646
|
+
}
|
|
1647
|
+
this.prefixesMap[actualPrefix] = {
|
|
1648
|
+
nodeId: id,
|
|
1649
|
+
prefix: actualPrefix
|
|
1650
|
+
};
|
|
1651
|
+
const data = {
|
|
1652
|
+
prefix: actualPrefix,
|
|
1653
|
+
id: [[prefix].filter(Boolean).join(this.prefixJoinCharacter), id].filter(Boolean).join(this.prefixWithIdJoinCharacter)
|
|
1654
|
+
};
|
|
1655
|
+
return data;
|
|
1656
|
+
};
|
|
1657
|
+
__privateSet(this, _onReady, onReady != null ? onReady : () => {
|
|
1658
|
+
});
|
|
1659
|
+
}
|
|
1660
|
+
getChildren() {
|
|
1661
|
+
if (__privateGet(this, _children) === null)
|
|
1662
|
+
throw new Error(
|
|
1663
|
+
"Children was not assigned yet, maybe you forgot to listen to onReady event on OOTree component."
|
|
1664
|
+
);
|
|
1665
|
+
return __privateGet(this, _children);
|
|
1666
|
+
}
|
|
1667
|
+
getController() {
|
|
1668
|
+
if (__privateGet(this, _controller) === null)
|
|
1669
|
+
throw new Error(
|
|
1670
|
+
"Controller was not assigned yet, maybe you forgot to listen to onReady event on OOTree component."
|
|
1671
|
+
);
|
|
1672
|
+
const c = this;
|
|
1673
|
+
return new Proxy(__privateGet(this, _controller), {
|
|
1674
|
+
get(target, prop) {
|
|
1675
|
+
if (prop === "removeAll") {
|
|
1676
|
+
return () => {
|
|
1677
|
+
var _a;
|
|
1678
|
+
c.prefixesMap = {};
|
|
1679
|
+
(_a = __privateGet(c, _controller)) == null ? void 0 : _a.removeAll();
|
|
1680
|
+
};
|
|
1681
|
+
}
|
|
1682
|
+
return target[prop];
|
|
1683
|
+
}
|
|
1684
|
+
});
|
|
1685
|
+
}
|
|
1686
|
+
}
|
|
1687
|
+
_onReady = new WeakMap();
|
|
1688
|
+
_children = new WeakMap();
|
|
1689
|
+
_controller = new WeakMap();
|
|
1690
|
+
|
|
1691
|
+
export { OOTree, OOTreeNode, Tree$1 as Tree, TreeDataController, isOOTreeNode, useTreeContext, useTreeData, useTreeDataController, useTreeSelector, useTreeSelectorByName };
|