react-native-tree-multi-select 1.5.0 → 1.6.0-beta.1

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.
Files changed (58) hide show
  1. package/lib/commonjs/TreeView.js +22 -17
  2. package/lib/commonjs/TreeView.js.map +1 -1
  3. package/lib/commonjs/components/NodeList.js +10 -7
  4. package/lib/commonjs/components/NodeList.js.map +1 -1
  5. package/lib/commonjs/constants/tests.constants.js +8 -0
  6. package/lib/commonjs/constants/tests.constants.js.map +1 -0
  7. package/lib/commonjs/helpers/expandCollapse.helper.js +15 -10
  8. package/lib/commonjs/helpers/expandCollapse.helper.js.map +1 -1
  9. package/lib/commonjs/helpers/selectAll.helper.js +16 -12
  10. package/lib/commonjs/helpers/selectAll.helper.js.map +1 -1
  11. package/lib/commonjs/helpers/toggleCheckbox.helper.js +3 -2
  12. package/lib/commonjs/helpers/toggleCheckbox.helper.js.map +1 -1
  13. package/lib/commonjs/helpers/treeNode.helper.js +3 -2
  14. package/lib/commonjs/helpers/treeNode.helper.js.map +1 -1
  15. package/lib/commonjs/store/treeView.store.js +77 -65
  16. package/lib/commonjs/store/treeView.store.js.map +1 -1
  17. package/lib/module/TreeView.js +20 -17
  18. package/lib/module/TreeView.js.map +1 -1
  19. package/lib/module/components/NodeList.js +10 -7
  20. package/lib/module/components/NodeList.js.map +1 -1
  21. package/lib/module/constants/tests.constants.js +4 -0
  22. package/lib/module/constants/tests.constants.js.map +1 -0
  23. package/lib/module/helpers/expandCollapse.helper.js +16 -11
  24. package/lib/module/helpers/expandCollapse.helper.js.map +1 -1
  25. package/lib/module/helpers/selectAll.helper.js +17 -13
  26. package/lib/module/helpers/selectAll.helper.js.map +1 -1
  27. package/lib/module/helpers/toggleCheckbox.helper.js +4 -3
  28. package/lib/module/helpers/toggleCheckbox.helper.js.map +1 -1
  29. package/lib/module/helpers/treeNode.helper.js +4 -3
  30. package/lib/module/helpers/treeNode.helper.js.map +1 -1
  31. package/lib/module/store/treeView.store.js +75 -64
  32. package/lib/module/store/treeView.store.js.map +1 -1
  33. package/lib/typescript/TreeView.d.ts.map +1 -1
  34. package/lib/typescript/components/NodeList.d.ts.map +1 -1
  35. package/lib/typescript/constants/tests.constants.d.ts +2 -0
  36. package/lib/typescript/constants/tests.constants.d.ts.map +1 -0
  37. package/lib/typescript/helpers/expandCollapse.helper.d.ts +5 -5
  38. package/lib/typescript/helpers/expandCollapse.helper.d.ts.map +1 -1
  39. package/lib/typescript/helpers/selectAll.helper.d.ts +4 -4
  40. package/lib/typescript/helpers/selectAll.helper.d.ts.map +1 -1
  41. package/lib/typescript/helpers/toggleCheckbox.helper.d.ts +1 -1
  42. package/lib/typescript/helpers/toggleCheckbox.helper.d.ts.map +1 -1
  43. package/lib/typescript/helpers/treeNode.helper.d.ts +1 -1
  44. package/lib/typescript/helpers/treeNode.helper.d.ts.map +1 -1
  45. package/lib/typescript/store/treeView.store.d.ts +3 -1
  46. package/lib/typescript/store/treeView.store.d.ts.map +1 -1
  47. package/lib/typescript/types/treeView.types.d.ts +3 -1
  48. package/lib/typescript/types/treeView.types.d.ts.map +1 -1
  49. package/package.json +14 -9
  50. package/src/TreeView.tsx +22 -17
  51. package/src/components/NodeList.tsx +13 -6
  52. package/src/constants/tests.constants.ts +1 -0
  53. package/src/helpers/expandCollapse.helper.ts +16 -11
  54. package/src/helpers/selectAll.helper.ts +17 -14
  55. package/src/helpers/toggleCheckbox.helper.ts +8 -3
  56. package/src/helpers/treeNode.helper.ts +4 -3
  57. package/src/store/treeView.store.ts +61 -46
  58. package/src/types/treeView.types.ts +3 -1
@@ -1 +1 @@
1
- {"version":3,"names":["useTreeViewStore","toggleCheckboxes","ids","forceCheck","checked","updateChecked","indeterminate","updateIndeterminate","nodeMap","childToParentMap","selectionPropagation","getState","toChildren","toParents","tempChecked","Set","tempIndeterminate","affectedNodes","nodeDepths","Map","forEach","id","node","get","isChecked","has","newCheckedState","undefined","add","delete","updateChildrenIteratively","nodesToUpdate","currentNodeId","parentNodeId","size","sortedNodes","Array","from","sort","a","b","getNodeDepth","nodeId","updateNodeState","rootId","childrenChecked","stack","length","pop","children","childNode","push","depth","set","allChildrenChecked","anyChildCheckedOrIndeterminate","child","isIndeterminate"],"sourceRoot":"../../../src","sources":["helpers/toggleCheckbox.helper.ts"],"mappings":";;AAAA,SAASA,gBAAgB,QAAQ,yBAAyB;;AAE1D;AACA;AACA;AACA;AACA;AACA;AACA;AACA,OAAO,SAASC,gBAAgBA,CAACC,GAAa,EAAEC,UAAoB,EAAE;EAClE,MAAM;IACFC,OAAO;IACPC,aAAa;IAEbC,aAAa;IACbC,mBAAmB;IAEnBC,OAAO;IACPC,gBAAgB;IAChBC;EACJ,CAAC,GAAGV,gBAAgB,CAACW,QAAQ,CAAC,CAAC;EAE/B,MAAM;IAAEC,UAAU;IAAEC;EAAU,CAAC,GAAGH,oBAAoB;;EAEtD;EACA,MAAMI,WAAW,GAAG,IAAIC,GAAG,CAACX,OAAO,CAAC;EACpC,MAAMY,iBAAiB,GAAG,IAAID,GAAG,CAACT,aAAa,CAAC;;EAEhD;EACA,MAAMW,aAAa,GAAG,IAAIF,GAAG,CAAS,CAAC;;EAEvC;EACA,MAAMG,UAAU,GAAG,IAAIC,GAAG,CAAiB,CAAC;;EAE5C;EACAjB,GAAG,CAACkB,OAAO,CAAEC,EAAE,IAAK;IAChB,MAAMC,IAAI,GAAGd,OAAO,CAACe,GAAG,CAACF,EAAE,CAAC;IAC5B,IAAI,CAACC,IAAI,EAAE;MACP;MACA;IACJ;IAEA,MAAME,SAAS,GAAGV,WAAW,CAACW,GAAG,CAACJ,EAAE,CAAC;IACrC,MAAMK,eAAe,GAAGvB,UAAU,KAAKwB,SAAS,GAAG,CAACH,SAAS,GAAGrB,UAAU;IAE1E,IAAIuB,eAAe,EAAE;MACjBZ,WAAW,CAACc,GAAG,CAACP,EAAE,CAAC;MACnBL,iBAAiB,CAACa,MAAM,CAACR,EAAE,CAAC;MAC5BJ,aAAa,CAACW,GAAG,CAACP,EAAE,CAAC;MACrB,IAAIT,UAAU,EAAE;QACZkB,yBAAyB,CAACT,EAAE,EAAE,IAAI,CAAC;MACvC;IACJ,CAAC,MAAM;MACHP,WAAW,CAACe,MAAM,CAACR,EAAE,CAAC;MACtBL,iBAAiB,CAACa,MAAM,CAACR,EAAE,CAAC;MAC5BJ,aAAa,CAACW,GAAG,CAACP,EAAE,CAAC;MACrB,IAAIT,UAAU,EAAE;QACZkB,yBAAyB,CAACT,EAAE,EAAE,KAAK,CAAC;MACxC;IACJ;EACJ,CAAC,CAAC;;EAEF;EACA,MAAMU,aAAa,GAAG,IAAIhB,GAAG,CAAS,CAAC;EAEvC,IAAIF,SAAS,EAAE;IACXI,aAAa,CAACG,OAAO,CAAEC,EAAE,IAAK;MAC1B,IAAIW,aAAiC,GAAGX,EAAE;MAC1C,OAAOW,aAAa,EAAE;QAClB,MAAMC,YAAY,GAAGxB,gBAAgB,CAACc,GAAG,CAACS,aAAa,CAAC;QACxD,IAAIC,YAAY,EAAE;UACdF,aAAa,CAACH,GAAG,CAACK,YAAY,CAAC;UAC/BD,aAAa,GAAGC,YAAY;QAChC,CAAC,MAAM;UACH;QACJ;MACJ;IACJ,CAAC,CAAC;EACN;;EAEA;EACA,IAAIpB,SAAS,IAAIkB,aAAa,CAACG,IAAI,GAAG,CAAC,EAAE;IACrC;IACA,MAAMC,WAAW,GAAGC,KAAK,CAACC,IAAI,CAACN,aAAa,CAAC,CAACO,IAAI,CAAC,CAACC,CAAC,EAAEC,CAAC,KAAK;MACzD,OAAOC,YAAY,CAACD,CAAC,CAAC,GAAGC,YAAY,CAACF,CAAC,CAAC;IAC5C,CAAC,CAAC;IAEFJ,WAAW,CAACf,OAAO,CAAEsB,MAAM,IAAK;MAC5BC,eAAe,CAACD,MAAM,CAAC;IAC3B,CAAC,CAAC;EACN;;EAEA;AACJ;AACA;AACA;AACA;EACI,SAASZ,yBAAyBA,CAACc,MAAc,EAAEC,eAAwB,EAAE;IACzE,MAAMC,KAAK,GAAG,CAACF,MAAM,CAAC;IAEtB,OAAOE,KAAK,CAACC,MAAM,GAAG,CAAC,EAAE;MACrB,MAAML,MAAM,GAAGI,KAAK,CAACE,GAAG,CAAC,CAAE;MAC3B,MAAM1B,IAAI,GAAGd,OAAO,CAACe,GAAG,CAACmB,MAAM,CAAC;MAChC,IAAI,CAACpB,IAAI,EAAE,SAAS,CAAC;;MAErB,IAAIuB,eAAe,EAAE;QACjB/B,WAAW,CAACc,GAAG,CAACc,MAAM,CAAC;QACvB1B,iBAAiB,CAACa,MAAM,CAACa,MAAM,CAAC;MACpC,CAAC,MAAM;QACH5B,WAAW,CAACe,MAAM,CAACa,MAAM,CAAC;QAC1B1B,iBAAiB,CAACa,MAAM,CAACa,MAAM,CAAC;MACpC;MACAzB,aAAa,CAACW,GAAG,CAACc,MAAM,CAAC;MAEzB,IAAIpB,IAAI,CAAC2B,QAAQ,IAAI3B,IAAI,CAAC2B,QAAQ,CAACF,MAAM,GAAG,CAAC,EAAE;QAC3C,KAAK,MAAMG,SAAS,IAAI5B,IAAI,CAAC2B,QAAQ,EAAE;UACnCH,KAAK,CAACK,IAAI,CAACD,SAAS,CAAC7B,EAAE,CAAC;QAC5B;MACJ;IACJ;EACJ;;EAEA;AACJ;AACA;AACA;AACA;EACI,SAASoB,YAAYA,CAACC,MAAc,EAAU;IAC1C,IAAIxB,UAAU,CAACO,GAAG,CAACiB,MAAM,CAAC,EAAE;MACxB,OAAOxB,UAAU,CAACK,GAAG,CAACmB,MAAM,CAAC;IACjC;IAEA,IAAIU,KAAK,GAAG,CAAC;IACb,IAAIpB,aAAiC,GAAGU,MAAM;IAC9C,OAAOV,aAAa,EAAE;MAClB,MAAMC,YAAY,GAAGxB,gBAAgB,CAACc,GAAG,CAACS,aAAa,CAAC;MACxD,IAAIC,YAAY,EAAE;QACdmB,KAAK,EAAE;QACPpB,aAAa,GAAGC,YAAY;MAChC,CAAC,MAAM;QACH;MACJ;IACJ;IAEAf,UAAU,CAACmC,GAAG,CAACX,MAAM,EAAEU,KAAK,CAAC;IAC7B,OAAOA,KAAK;EAChB;;EAEA;AACJ;AACA;AACA;EACI,SAAST,eAAeA,CAACD,MAAc,EAAE;IACrC,MAAMpB,IAAI,GAAGd,OAAO,CAACe,GAAG,CAACmB,MAAM,CAAC;IAChC,IAAI,CAACpB,IAAI,IAAI,CAACA,IAAI,CAAC2B,QAAQ,IAAI3B,IAAI,CAAC2B,QAAQ,CAACF,MAAM,KAAK,CAAC,EAAE;MACvD;MACA;IACJ;IAEA,IAAIO,kBAAkB,GAAG,IAAI;IAC7B,IAAIC,8BAA8B,GAAG,KAAK;IAE1C,KAAK,MAAMC,KAAK,IAAIlC,IAAI,CAAC2B,QAAQ,EAAE;MAC/B,MAAMzB,SAAS,GAAGV,WAAW,CAACW,GAAG,CAAC+B,KAAK,CAACnC,EAAE,CAAC;MAC3C,MAAMoC,eAAe,GAAGzC,iBAAiB,CAACS,GAAG,CAAC+B,KAAK,CAACnC,EAAE,CAAC;MAEvD,IAAIG,SAAS,EAAE;QACX+B,8BAA8B,GAAG,IAAI;MACzC,CAAC,MAAM,IAAIE,eAAe,EAAE;QACxBF,8BAA8B,GAAG,IAAI;QACrCD,kBAAkB,GAAG,KAAK;MAC9B,CAAC,MAAM;QACHA,kBAAkB,GAAG,KAAK;MAC9B;;MAEA;MACA,IAAI,CAACA,kBAAkB,IAAIC,8BAA8B,EAAE;QACvD;MACJ;IACJ;IAEA,IAAID,kBAAkB,EAAE;MACpBxC,WAAW,CAACc,GAAG,CAACc,MAAM,CAAC;MACvB1B,iBAAiB,CAACa,MAAM,CAACa,MAAM,CAAC;IACpC,CAAC,MAAM,IAAIa,8BAA8B,EAAE;MACvCzC,WAAW,CAACe,MAAM,CAACa,MAAM,CAAC;MAC1B1B,iBAAiB,CAACY,GAAG,CAACc,MAAM,CAAC;IACjC,CAAC,MAAM;MACH5B,WAAW,CAACe,MAAM,CAACa,MAAM,CAAC;MAC1B1B,iBAAiB,CAACa,MAAM,CAACa,MAAM,CAAC;IACpC;EACJ;;EAEA;EACArC,aAAa,CAACS,WAAW,CAAC;EAC1BP,mBAAmB,CAACS,iBAAiB,CAAC;AAC1C","ignoreList":[]}
1
+ {"version":3,"names":["getTreeViewStore","toggleCheckboxes","storeId","ids","forceCheck","treeViewStore","checked","updateChecked","indeterminate","updateIndeterminate","nodeMap","childToParentMap","selectionPropagation","getState","toChildren","toParents","tempChecked","Set","tempIndeterminate","affectedNodes","nodeDepths","Map","forEach","id","node","get","isChecked","has","newCheckedState","undefined","add","delete","updateChildrenIteratively","nodesToUpdate","currentNodeId","parentNodeId","size","sortedNodes","Array","from","sort","a","b","getNodeDepth","nodeId","updateNodeState","rootId","childrenChecked","stack","length","pop","children","childNode","push","depth","set","allChildrenChecked","anyChildCheckedOrIndeterminate","child","isIndeterminate"],"sourceRoot":"../../../src","sources":["helpers/toggleCheckbox.helper.ts"],"mappings":"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","ignoreList":[]}
@@ -1,6 +1,6 @@
1
1
  "use strict";
2
2
 
3
- import { useTreeViewStore } from "../store/treeView.store";
3
+ import { getTreeViewStore } from "../store/treeView.store";
4
4
 
5
5
  /**
6
6
  * Initialize the maps for tracking tree nodes and their parent-child relationships.
@@ -11,11 +11,12 @@ import { useTreeViewStore } from "../store/treeView.store";
11
11
  * @param initialData - An array of TreeNode objects that represent the initial tree structure.
12
12
  * @param preselectedIds - An optional array of TreeNode IDs that should be preselected.
13
13
  */
14
- export function initializeNodeMaps(initialData) {
14
+ export function initializeNodeMaps(storeId, initialData) {
15
+ const treeViewStore = getTreeViewStore(storeId);
15
16
  const {
16
17
  updateNodeMap,
17
18
  updateChildToParentMap
18
- } = useTreeViewStore.getState();
19
+ } = treeViewStore.getState();
19
20
  const tempNodeMap = new Map();
20
21
  ;
21
22
  const tempChildToParentMap = new Map();
@@ -1 +1 @@
1
- {"version":3,"names":["useTreeViewStore","initializeNodeMaps","initialData","updateNodeMap","updateChildToParentMap","getState","tempNodeMap","Map","tempChildToParentMap","processNodes","nodes","parentId","forEach","node","set","id","children"],"sourceRoot":"../../../src","sources":["helpers/treeNode.helper.ts"],"mappings":";;AACA,SACIA,gBAAgB,QACb,yBAAyB;;AAEhC;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,OAAO,SAASC,kBAAkBA,CAACC,WAAuB,EAAE;EACxD,MAAM;IACFC,aAAa;IACbC;EACJ,CAAC,GAAGJ,gBAAgB,CAACK,QAAQ,CAAC,CAAC;EAE/B,MAAMC,WAAkC,GAAG,IAAIC,GAAG,CAAC,CAAC;EAAC;EACrD,MAAMC,oBAAyC,GAAG,IAAID,GAAG,CAAC,CAAC;EAAC;;EAE5D;AACJ;AACA;AACA;AACA;AACA;EACI,MAAME,YAAY,GAAGA,CACjBC,KAAiB,EACjBC,QAAuB,GAAG,IAAI,KAC7B;IACDD,KAAK,CAACE,OAAO,CAAEC,IAAI,IAAK;MACpB;MACAP,WAAW,CAACQ,GAAG,CAACD,IAAI,CAACE,EAAE,EAAEF,IAAI,CAAC;MAC9B;MACA,IAAIF,QAAQ,EAAEH,oBAAoB,CAACM,GAAG,CAACD,IAAI,CAACE,EAAE,EAAEJ,QAAQ,CAAC;MACzD;MACA,IAAIE,IAAI,CAACG,QAAQ,EAAEP,YAAY,CAACI,IAAI,CAACG,QAAQ,EAAEH,IAAI,CAACE,EAAE,CAAC;IAC3D,CAAC,CAAC;EACN,CAAC;;EAED;EACAN,YAAY,CAACP,WAAW,CAAC;EAEzBC,aAAa,CAACG,WAAW,CAAC;EAC1BF,sBAAsB,CAACI,oBAAoB,CAAC;AAChD","ignoreList":[]}
1
+ {"version":3,"names":["getTreeViewStore","initializeNodeMaps","storeId","initialData","treeViewStore","updateNodeMap","updateChildToParentMap","getState","tempNodeMap","Map","tempChildToParentMap","processNodes","nodes","parentId","forEach","node","set","id","children"],"sourceRoot":"../../../src","sources":["helpers/treeNode.helper.ts"],"mappings":";;AACA,SACIA,gBAAgB,QACb,yBAAyB;;AAEhC;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,OAAO,SAASC,kBAAkBA,CAACC,OAAe,EAAEC,WAAuB,EAAE;EACzE,MAAMC,aAAa,GAAGJ,gBAAgB,CAACE,OAAO,CAAC;EAC/C,MAAM;IACFG,aAAa;IACbC;EACJ,CAAC,GAAGF,aAAa,CAACG,QAAQ,CAAC,CAAC;EAE5B,MAAMC,WAAkC,GAAG,IAAIC,GAAG,CAAC,CAAC;EAAC;EACrD,MAAMC,oBAAyC,GAAG,IAAID,GAAG,CAAC,CAAC;EAAC;;EAE5D;AACJ;AACA;AACA;AACA;AACA;EACI,MAAME,YAAY,GAAGA,CACjBC,KAAiB,EACjBC,QAAuB,GAAG,IAAI,KAC7B;IACDD,KAAK,CAACE,OAAO,CAAEC,IAAI,IAAK;MACpB;MACAP,WAAW,CAACQ,GAAG,CAACD,IAAI,CAACE,EAAE,EAAEF,IAAI,CAAC;MAC9B;MACA,IAAIF,QAAQ,EAAEH,oBAAoB,CAACM,GAAG,CAACD,IAAI,CAACE,EAAE,EAAEJ,QAAQ,CAAC;MACzD;MACA,IAAIE,IAAI,CAACG,QAAQ,EAAEP,YAAY,CAACI,IAAI,CAACG,QAAQ,EAAEH,IAAI,CAACE,EAAE,CAAC;IAC3D,CAAC,CAAC;EACN,CAAC;;EAED;EACAN,YAAY,CAACR,WAAW,CAAC;EAEzBE,aAAa,CAACG,WAAW,CAAC;EAC1BF,sBAAsB,CAACI,oBAAoB,CAAC;AAChD","ignoreList":[]}
@@ -1,68 +1,79 @@
1
1
  "use strict";
2
2
 
3
3
  import { create } from 'zustand';
4
- export const useTreeViewStore = create(set => ({
5
- checked: new Set(),
6
- updateChecked: checked => set({
7
- checked
8
- }),
9
- indeterminate: new Set(),
10
- updateIndeterminate: indeterminate => set({
11
- indeterminate
12
- }),
13
- expanded: new Set(),
14
- updateExpanded: expanded => set({
15
- expanded
16
- }),
17
- initialTreeViewData: [],
18
- updateInitialTreeViewData: initialTreeViewData => set({
19
- initialTreeViewData
20
- }),
21
- nodeMap: new Map(),
22
- updateNodeMap: nodeMap => set({
23
- nodeMap
24
- }),
25
- childToParentMap: new Map(),
26
- updateChildToParentMap: childToParentMap => set({
27
- childToParentMap
28
- }),
29
- searchText: "",
30
- updateSearchText: searchText => set({
31
- searchText
32
- }),
33
- searchKeys: [""],
34
- updateSearchKeys: searchKeys => set({
35
- searchKeys
36
- }),
37
- innerMostChildrenIds: [],
38
- updateInnerMostChildrenIds: innerMostChildrenIds => set({
39
- innerMostChildrenIds
40
- }),
41
- selectionPropagation: {
42
- toChildren: true,
43
- toParents: true
44
- },
45
- setSelectionPropagation: selectionPropagation => set({
46
- selectionPropagation: {
47
- // Default selection propagation for parent and children to true if not mentioned
48
- toChildren: selectionPropagation.toChildren ?? true,
49
- toParents: selectionPropagation.toParents ?? true
50
- }
51
- }),
52
- cleanUpTreeViewStore: () => set({
53
- checked: new Set(),
54
- indeterminate: new Set(),
55
- expanded: new Set(),
56
- initialTreeViewData: [],
57
- nodeMap: new Map(),
58
- childToParentMap: new Map(),
59
- searchText: "",
60
- searchKeys: [""],
61
- innerMostChildrenIds: [],
62
- selectionPropagation: {
63
- toChildren: true,
64
- toParents: true
65
- }
66
- })
67
- }));
4
+ // Map to store individual tree view stores by id
5
+ const treeViewStores = new Map();
6
+ export function getTreeViewStore(id) {
7
+ if (!treeViewStores.has(id)) {
8
+ const store = create(set => ({
9
+ checked: new Set(),
10
+ updateChecked: checked => set({
11
+ checked
12
+ }),
13
+ indeterminate: new Set(),
14
+ updateIndeterminate: indeterminate => set({
15
+ indeterminate
16
+ }),
17
+ expanded: new Set(),
18
+ updateExpanded: expanded => set({
19
+ expanded
20
+ }),
21
+ initialTreeViewData: [],
22
+ updateInitialTreeViewData: initialTreeViewData => set({
23
+ initialTreeViewData
24
+ }),
25
+ nodeMap: new Map(),
26
+ updateNodeMap: nodeMap => set({
27
+ nodeMap
28
+ }),
29
+ childToParentMap: new Map(),
30
+ updateChildToParentMap: childToParentMap => set({
31
+ childToParentMap
32
+ }),
33
+ searchText: "",
34
+ updateSearchText: searchText => set({
35
+ searchText
36
+ }),
37
+ searchKeys: [""],
38
+ updateSearchKeys: searchKeys => set({
39
+ searchKeys
40
+ }),
41
+ innerMostChildrenIds: [],
42
+ updateInnerMostChildrenIds: innerMostChildrenIds => set({
43
+ innerMostChildrenIds
44
+ }),
45
+ selectionPropagation: {
46
+ toChildren: true,
47
+ toParents: true
48
+ },
49
+ setSelectionPropagation: selectionPropagation => set({
50
+ selectionPropagation: {
51
+ // Default selection propagation for parent and children to true if not specified
52
+ toChildren: selectionPropagation.toChildren ?? true,
53
+ toParents: selectionPropagation.toParents ?? true
54
+ }
55
+ }),
56
+ cleanUpTreeViewStore: () => set({
57
+ checked: new Set(),
58
+ indeterminate: new Set(),
59
+ expanded: new Set(),
60
+ initialTreeViewData: [],
61
+ nodeMap: new Map(),
62
+ childToParentMap: new Map(),
63
+ searchText: "",
64
+ searchKeys: [""],
65
+ innerMostChildrenIds: [],
66
+ selectionPropagation: {
67
+ toChildren: true,
68
+ toParents: true
69
+ }
70
+ })
71
+ }));
72
+ treeViewStores.set(id, store);
73
+ }
74
+ return treeViewStores.get(id);
75
+ }
76
+ export function useTreeViewStore(id) {
77
+ return getTreeViewStore(id);
78
+ }
68
79
  //# sourceMappingURL=treeView.store.js.map
@@ -1 +1 @@
1
- {"version":3,"names":["create","useTreeViewStore","set","checked","Set","updateChecked","indeterminate","updateIndeterminate","expanded","updateExpanded","initialTreeViewData","updateInitialTreeViewData","nodeMap","Map","updateNodeMap","childToParentMap","updateChildToParentMap","searchText","updateSearchText","searchKeys","updateSearchKeys","innerMostChildrenIds","updateInnerMostChildrenIds","selectionPropagation","toChildren","toParents","setSelectionPropagation","cleanUpTreeViewStore"],"sourceRoot":"../../../src","sources":["store/treeView.store.ts"],"mappings":";;AAEA,SAASA,MAAM,QAAQ,SAAS;AAgDhC,OAAO,MAAMC,gBAAgB,GAAGD,MAAM,CAAiBE,GAAG,KAAM;EAC5DC,OAAO,EAAE,IAAIC,GAAG,CAAC,CAAC;EAClBC,aAAa,EAAGF,OAAoB,IAAKD,GAAG,CAAC;IAAEC;EAAQ,CAAC,CAAC;EAEzDG,aAAa,EAAE,IAAIF,GAAG,CAAC,CAAC;EACxBG,mBAAmB,EAAGD,aAA0B,IAAKJ,GAAG,CAAC;IAAEI;EAAc,CAAC,CAAC;EAE3EE,QAAQ,EAAE,IAAIJ,GAAG,CAAS,CAAC;EAC3BK,cAAc,EAAGD,QAAqB,IAAKN,GAAG,CAAC;IAAEM;EAAS,CAAC,CAAC;EAE5DE,mBAAmB,EAAE,EAAE;EACvBC,yBAAyB,EAAGD,mBAA+B,IAAKR,GAAG,CAAC;IAChEQ;EACJ,CAAC,CAAC;EAEFE,OAAO,EAAE,IAAIC,GAAG,CAAmB,CAAC;EACpCC,aAAa,EAAGF,OAA8B,IAAKV,GAAG,CAAC;IAAEU;EAAQ,CAAC,CAAC;EAEnEG,gBAAgB,EAAE,IAAIF,GAAG,CAAiB,CAAC;EAC3CG,sBAAsB,EAAGD,gBAAqC,IAAKb,GAAG,CAAC;IAAEa;EAAiB,CAAC,CAAC;EAE5FE,UAAU,EAAE,EAAE;EACdC,gBAAgB,EAAGD,UAAkB,IAAKf,GAAG,CAAC;IAAEe;EAAW,CAAC,CAAC;EAE7DE,UAAU,EAAE,CAAC,EAAE,CAAC;EAChBC,gBAAgB,EAAGD,UAAoB,IAAKjB,GAAG,CAAC;IAAEiB;EAAW,CAAC,CAAC;EAE/DE,oBAAoB,EAAE,EAAE;EACxBC,0BAA0B,EAAGD,oBAA8B,IAAKnB,GAAG,CAAC;IAAEmB;EAAqB,CAAC,CAAC;EAE7FE,oBAAoB,EAAE;IAAEC,UAAU,EAAE,IAAI;IAAEC,SAAS,EAAE;EAAK,CAAC;EAC3DC,uBAAuB,EAAGH,oBAAoB,IAAKrB,GAAG,CAClD;IACIqB,oBAAoB,EAAE;MAClB;MACAC,UAAU,EAAED,oBAAoB,CAACC,UAAU,IAAI,IAAI;MACnDC,SAAS,EAAEF,oBAAoB,CAACE,SAAS,IAAI;IACjD;EACJ,CACJ,CAAC;EAEDE,oBAAoB,EAAEA,CAAA,KAClBzB,GAAG,CAAC;IACAC,OAAO,EAAE,IAAIC,GAAG,CAAC,CAAC;IAClBE,aAAa,EAAE,IAAIF,GAAG,CAAC,CAAC;IACxBI,QAAQ,EAAE,IAAIJ,GAAG,CAAS,CAAC;IAC3BM,mBAAmB,EAAE,EAAE;IACvBE,OAAO,EAAE,IAAIC,GAAG,CAAmB,CAAC;IACpCE,gBAAgB,EAAE,IAAIF,GAAG,CAAiB,CAAC;IAC3CI,UAAU,EAAE,EAAE;IACdE,UAAU,EAAE,CAAC,EAAE,CAAC;IAChBE,oBAAoB,EAAE,EAAE;IACxBE,oBAAoB,EAAE;MAAEC,UAAU,EAAE,IAAI;MAAEC,SAAS,EAAE;IAAK;EAC9D,CAAC;AACT,CAAC,CAAC,CAAC","ignoreList":[]}
1
+ {"version":3,"names":["create","treeViewStores","Map","getTreeViewStore","id","has","store","set","checked","Set","updateChecked","indeterminate","updateIndeterminate","expanded","updateExpanded","initialTreeViewData","updateInitialTreeViewData","nodeMap","updateNodeMap","childToParentMap","updateChildToParentMap","searchText","updateSearchText","searchKeys","updateSearchKeys","innerMostChildrenIds","updateInnerMostChildrenIds","selectionPropagation","toChildren","toParents","setSelectionPropagation","cleanUpTreeViewStore","get","useTreeViewStore"],"sourceRoot":"../../../src","sources":["store/treeView.store.ts"],"mappings":";;AACA,SAASA,MAAM,QAAiC,SAAS;AAgDzD;AACA,MAAMC,cAAc,GAAG,IAAIC,GAAG,CAAiD,CAAC;AAEhF,OAAO,SAASC,gBAAgBA,CAACC,EAAU,EAA0C;EACjF,IAAI,CAACH,cAAc,CAACI,GAAG,CAACD,EAAE,CAAC,EAAE;IACzB,MAAME,KAAK,GAAGN,MAAM,CAAiBO,GAAG,KAAM;MAC1CC,OAAO,EAAE,IAAIC,GAAG,CAAC,CAAC;MAClBC,aAAa,EAAGF,OAAoB,IAAKD,GAAG,CAAC;QAAEC;MAAQ,CAAC,CAAC;MAEzDG,aAAa,EAAE,IAAIF,GAAG,CAAC,CAAC;MACxBG,mBAAmB,EAAGD,aAA0B,IAAKJ,GAAG,CAAC;QAAEI;MAAc,CAAC,CAAC;MAE3EE,QAAQ,EAAE,IAAIJ,GAAG,CAAS,CAAC;MAC3BK,cAAc,EAAGD,QAAqB,IAAKN,GAAG,CAAC;QAAEM;MAAS,CAAC,CAAC;MAE5DE,mBAAmB,EAAE,EAAE;MACvBC,yBAAyB,EAAGD,mBAA+B,IAAKR,GAAG,CAAC;QAChEQ;MACJ,CAAC,CAAC;MAEFE,OAAO,EAAE,IAAIf,GAAG,CAAmB,CAAC;MACpCgB,aAAa,EAAGD,OAA8B,IAAKV,GAAG,CAAC;QAAEU;MAAQ,CAAC,CAAC;MAEnEE,gBAAgB,EAAE,IAAIjB,GAAG,CAAiB,CAAC;MAC3CkB,sBAAsB,EAAGD,gBAAqC,IAAKZ,GAAG,CAAC;QACnEY;MACJ,CAAC,CAAC;MAEFE,UAAU,EAAE,EAAE;MACdC,gBAAgB,EAAGD,UAAkB,IAAKd,GAAG,CAAC;QAAEc;MAAW,CAAC,CAAC;MAE7DE,UAAU,EAAE,CAAC,EAAE,CAAC;MAChBC,gBAAgB,EAAGD,UAAoB,IAAKhB,GAAG,CAAC;QAAEgB;MAAW,CAAC,CAAC;MAE/DE,oBAAoB,EAAE,EAAE;MACxBC,0BAA0B,EAAGD,oBAA8B,IAAKlB,GAAG,CAAC;QAChEkB;MACJ,CAAC,CAAC;MAEFE,oBAAoB,EAAE;QAAEC,UAAU,EAAE,IAAI;QAAEC,SAAS,EAAE;MAAK,CAAC;MAC3DC,uBAAuB,EAAGH,oBAAoB,IAAKpB,GAAG,CAAC;QACnDoB,oBAAoB,EAAE;UAClB;UACAC,UAAU,EAAED,oBAAoB,CAACC,UAAU,IAAI,IAAI;UACnDC,SAAS,EAAEF,oBAAoB,CAACE,SAAS,IAAI;QACjD;MACJ,CAAC,CAAC;MAEFE,oBAAoB,EAAEA,CAAA,KAClBxB,GAAG,CAAC;QACAC,OAAO,EAAE,IAAIC,GAAG,CAAC,CAAC;QAClBE,aAAa,EAAE,IAAIF,GAAG,CAAC,CAAC;QACxBI,QAAQ,EAAE,IAAIJ,GAAG,CAAS,CAAC;QAC3BM,mBAAmB,EAAE,EAAE;QACvBE,OAAO,EAAE,IAAIf,GAAG,CAAmB,CAAC;QACpCiB,gBAAgB,EAAE,IAAIjB,GAAG,CAAiB,CAAC;QAC3CmB,UAAU,EAAE,EAAE;QACdE,UAAU,EAAE,CAAC,EAAE,CAAC;QAChBE,oBAAoB,EAAE,EAAE;QACxBE,oBAAoB,EAAE;UAAEC,UAAU,EAAE,IAAI;UAAEC,SAAS,EAAE;QAAK;MAC9D,CAAC;IACT,CAAC,CAAC,CAAC;IAEH5B,cAAc,CAACM,GAAG,CAACH,EAAE,EAAEE,KAAK,CAAC;EACjC;EACA,OAAOL,cAAc,CAAC+B,GAAG,CAAC5B,EAAE,CAAC;AACjC;AAEA,OAAO,SAAS6B,gBAAgBA,CAAC7B,EAAU,EAAE;EACzC,OAAOD,gBAAgB,CAACC,EAAE,CAAC;AAC/B","ignoreList":[]}
@@ -1 +1 @@
1
- {"version":3,"file":"TreeView.d.ts","sourceRoot":"","sources":["../../src/TreeView.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,MAAM,OAAO,CAAC;AAE1B,OAAO,KAAK,EAEV,aAAa,EACb,WAAW,EACZ,MAAM,wBAAwB,CAAC;AAkMhC,eAAO,MAAM,QAAQ,8GAAwB,CAAC"}
1
+ {"version":3,"file":"TreeView.d.ts","sourceRoot":"","sources":["../../src/TreeView.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAkB,MAAM,OAAO,CAAC;AAEvC,OAAO,KAAK,EAEV,aAAa,EACb,WAAW,EACZ,MAAM,wBAAwB,CAAC;AAuMhC,eAAO,MAAM,QAAQ,8GAAwB,CAAC"}
@@ -1 +1 @@
1
- {"version":3,"file":"NodeList.d.ts","sourceRoot":"","sources":["../../../src/components/NodeList.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,MAAM,OAAO,CAAC;AAS1B,OAAO,KAAK,EAGR,aAAa,EAEhB,MAAM,yBAAyB,CAAC;AAejC,QAAA,MAAM,QAAQ,6CAAwB,CAAC;AACvC,eAAe,QAAQ,CAAC;AAExB,iBAAS,SAAS,CAAC,KAAK,EAAE,aAAa,qBAwFtC"}
1
+ {"version":3,"file":"NodeList.d.ts","sourceRoot":"","sources":["../../../src/components/NodeList.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,MAAM,OAAO,CAAC;AAS1B,OAAO,KAAK,EAGR,aAAa,EAEhB,MAAM,yBAAyB,CAAC;AAejC,QAAA,MAAM,QAAQ,6CAAwB,CAAC;AACvC,eAAe,QAAQ,CAAC;AAExB,iBAAS,SAAS,CAAC,KAAK,EAAE,aAAa,qBA6FtC"}
@@ -0,0 +1,2 @@
1
+ export declare const testStoreId = "test-store-id";
2
+ //# sourceMappingURL=tests.constants.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"tests.constants.d.ts","sourceRoot":"","sources":["../../../src/constants/tests.constants.ts"],"names":[],"mappings":"AAAA,eAAO,MAAM,WAAW,kBAAkB,CAAC"}
@@ -6,25 +6,25 @@
6
6
  *
7
7
  * @param id - The ID of the tree node to toggle.
8
8
  */
9
- export declare function handleToggleExpand(id: string): void;
9
+ export declare function handleToggleExpand(storeId: string, id: string): void;
10
10
  /**
11
11
  * Expand all nodes in the tree.
12
12
  */
13
- export declare function expandAll(): void;
13
+ export declare function expandAll(storeId: string): void;
14
14
  /**
15
15
  * Collapse all nodes in the tree.
16
16
  */
17
- export declare function collapseAll(): void;
17
+ export declare function collapseAll(storeId: string): void;
18
18
  /**
19
19
  * Expand tree nodes of given ids. If the id is of a child, it also expands
20
20
  * its ancestors up to the root.
21
21
  * @param ids - Ids of nodes to expand.
22
22
  */
23
- export declare function expandNodes(ids: string[]): void;
23
+ export declare function expandNodes(storeId: string, ids: string[]): void;
24
24
  /**
25
25
  * Collapse tree nodes of given ids. If the id is of a parent, it also collapses
26
26
  * its descendants.
27
27
  * @param ids - Ids of nodes to collapse.
28
28
  */
29
- export declare function collapseNodes(ids: string[]): void;
29
+ export declare function collapseNodes(storeId: string, ids: string[]): void;
30
30
  //# sourceMappingURL=expandCollapse.helper.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"expandCollapse.helper.d.ts","sourceRoot":"","sources":["../../../src/helpers/expandCollapse.helper.ts"],"names":[],"mappings":"AAEA;;;;;;;GAOG;AACH,wBAAgB,kBAAkB,CAAC,EAAE,EAAE,MAAM,QAmC5C;AAED;;GAEG;AACH,wBAAgB,SAAS,SAKxB;AAED;;GAEG;AACH,wBAAgB,WAAW,SAI1B;AAED;;;;GAIG;AACH,wBAAgB,WAAW,CAAC,GAAG,EAAE,MAAM,EAAE,QAexC;AAED;;;;GAIG;AACH,wBAAgB,aAAa,CAAC,GAAG,EAAE,MAAM,EAAE,QA4B1C"}
1
+ {"version":3,"file":"expandCollapse.helper.d.ts","sourceRoot":"","sources":["../../../src/helpers/expandCollapse.helper.ts"],"names":[],"mappings":"AAEA;;;;;;;GAOG;AACH,wBAAgB,kBAAkB,CAAC,OAAO,EAAE,MAAM,EAAE,EAAE,EAAE,MAAM,QAoC7D;AAED;;GAEG;AACH,wBAAgB,SAAS,CAAC,OAAO,EAAE,MAAM,QAMxC;AAED;;GAEG;AACH,wBAAgB,WAAW,CAAC,OAAO,EAAE,MAAM,QAK1C;AAED;;;;GAIG;AACH,wBAAgB,WAAW,CAAC,OAAO,EAAE,MAAM,EAAE,GAAG,EAAE,MAAM,EAAE,QAgBzD;AAED;;;;GAIG;AACH,wBAAgB,aAAa,CAAC,OAAO,EAAE,MAAM,EAAE,GAAG,EAAE,MAAM,EAAE,QA6B3D"}
@@ -4,25 +4,25 @@ import { TreeNode } from "../types/treeView.types";
4
4
  *
5
5
  * If there is no search text, then it selects all nodes; otherwise, it selects all visible nodes.
6
6
  */
7
- export declare function selectAllFiltered(): void;
7
+ export declare function selectAllFiltered(storeId: string): void;
8
8
  /**
9
9
  * Unselects all nodes that are currently visible due to the applied filter.
10
10
  *
11
11
  * If there is no search text, then it unselects all nodes; otherwise, it unselects all visible nodes.
12
12
  */
13
- export declare function unselectAllFiltered(): void;
13
+ export declare function unselectAllFiltered(storeId: string): void;
14
14
  /**
15
15
  * Selects all nodes in the tree.
16
16
  *
17
17
  * This function selects all nodes by adding all node ids to the checked set and clearing the indeterminate set.
18
18
  */
19
- export declare function selectAll(): void;
19
+ export declare function selectAll(storeId: string): void;
20
20
  /**
21
21
  * Unselects all nodes in the tree.
22
22
  *
23
23
  * This function unselects all nodes by clearing both the checked and indeterminate sets.
24
24
  */
25
- export declare function unselectAll(): void;
25
+ export declare function unselectAll(storeId: string): void;
26
26
  /**
27
27
  * Get the ids of the innermost children in the tree
28
28
  *
@@ -1 +1 @@
1
- {"version":3,"file":"selectAll.helper.d.ts","sourceRoot":"","sources":["../../../src/helpers/selectAll.helper.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,QAAQ,EAAE,MAAM,yBAAyB,CAAC;AAInD;;;;GAIG;AACH,wBAAgB,iBAAiB,SAWhC;AAED;;;;GAIG;AACH,wBAAgB,mBAAmB,SAUlC;AAED;;;;GAIG;AACH,wBAAgB,SAAS,SAaxB;AAED;;;;GAIG;AACH,wBAAgB,WAAW,SAM1B;AAED;;;;;GAKG;AACH,wBAAgB,6BAA6B,CACzC,iBAAiB,EAAE,QAAQ,EAAE,GAC9B,MAAM,EAAE,CAgBV"}
1
+ {"version":3,"file":"selectAll.helper.d.ts","sourceRoot":"","sources":["../../../src/helpers/selectAll.helper.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,QAAQ,EAAE,MAAM,yBAAyB,CAAC;AAInD;;;;GAIG;AACH,wBAAgB,iBAAiB,CAAC,OAAO,EAAE,MAAM,QAWhD;AAED;;;;GAIG;AACH,wBAAgB,mBAAmB,CAAC,OAAO,EAAE,MAAM,QAWlD;AAED;;;;GAIG;AACH,wBAAgB,SAAS,CAAC,OAAO,EAAE,MAAM,QAcxC;AAED;;;;GAIG;AACH,wBAAgB,WAAW,CAAC,OAAO,EAAE,MAAM,QAO1C;AAED;;;;;GAKG;AACH,wBAAgB,6BAA6B,CACzC,iBAAiB,EAAE,QAAQ,EAAE,GAC9B,MAAM,EAAE,CAgBV"}
@@ -5,5 +5,5 @@
5
5
  * @param {boolean} [forceCheck] - Optional. If provided, will force the check state of the nodes to be this value.
6
6
  * If not provided, the check state will be toggled based on the current state.
7
7
  */
8
- export declare function toggleCheckboxes(ids: string[], forceCheck?: boolean): void;
8
+ export declare function toggleCheckboxes(storeId: string, ids: string[], forceCheck?: boolean): void;
9
9
  //# sourceMappingURL=toggleCheckbox.helper.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"toggleCheckbox.helper.d.ts","sourceRoot":"","sources":["../../../src/helpers/toggleCheckbox.helper.ts"],"names":[],"mappings":"AAEA;;;;;;GAMG;AACH,wBAAgB,gBAAgB,CAAC,GAAG,EAAE,MAAM,EAAE,EAAE,UAAU,CAAC,EAAE,OAAO,QA2LnE"}
1
+ {"version":3,"file":"toggleCheckbox.helper.d.ts","sourceRoot":"","sources":["../../../src/helpers/toggleCheckbox.helper.ts"],"names":[],"mappings":"AAEA;;;;;;GAMG;AACH,wBAAgB,gBAAgB,CAC5B,OAAO,EAAE,MAAM,EACf,GAAG,EAAE,MAAM,EAAE,EACb,UAAU,CAAC,EAAE,OAAO,QA6LvB"}
@@ -8,5 +8,5 @@ import type { TreeNode } from "../types/treeView.types";
8
8
  * @param initialData - An array of TreeNode objects that represent the initial tree structure.
9
9
  * @param preselectedIds - An optional array of TreeNode IDs that should be preselected.
10
10
  */
11
- export declare function initializeNodeMaps(initialData: TreeNode[]): void;
11
+ export declare function initializeNodeMaps(storeId: string, initialData: TreeNode[]): void;
12
12
  //# sourceMappingURL=treeNode.helper.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"treeNode.helper.d.ts","sourceRoot":"","sources":["../../../src/helpers/treeNode.helper.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,yBAAyB,CAAC;AAKxD;;;;;;;;GAQG;AACH,wBAAgB,kBAAkB,CAAC,WAAW,EAAE,QAAQ,EAAE,QAkCzD"}
1
+ {"version":3,"file":"treeNode.helper.d.ts","sourceRoot":"","sources":["../../../src/helpers/treeNode.helper.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,yBAAyB,CAAC;AAKxD;;;;;;;;GAQG;AACH,wBAAgB,kBAAkB,CAAC,OAAO,EAAE,MAAM,EAAE,WAAW,EAAE,QAAQ,EAAE,QAmC1E"}
@@ -1,4 +1,5 @@
1
1
  import type { SelectionPropagation, TreeNode } from "src/types/treeView.types";
2
+ import { StoreApi, UseBoundStore } from 'zustand';
2
3
  export type TreeViewState = {
3
4
  checked: Set<string>;
4
5
  updateChecked: (checked: Set<string>) => void;
@@ -22,5 +23,6 @@ export type TreeViewState = {
22
23
  setSelectionPropagation: (selectionPropagation: SelectionPropagation) => void;
23
24
  cleanUpTreeViewStore: () => void;
24
25
  };
25
- export declare const useTreeViewStore: import("zustand").UseBoundStore<import("zustand").StoreApi<TreeViewState>>;
26
+ export declare function getTreeViewStore(id: string): UseBoundStore<StoreApi<TreeViewState>>;
27
+ export declare function useTreeViewStore(id: string): UseBoundStore<StoreApi<TreeViewState>>;
26
28
  //# sourceMappingURL=treeView.store.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"treeView.store.d.ts","sourceRoot":"","sources":["../../../src/store/treeView.store.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,oBAAoB,EAAE,QAAQ,EAAE,MAAM,0BAA0B,CAAC;AAI/E,MAAM,MAAM,aAAa,GAAG;IAExB,OAAO,EAAE,GAAG,CAAC,MAAM,CAAC,CAAC;IACrB,aAAa,EAAE,CAAC,OAAO,EAAE,GAAG,CAAC,MAAM,CAAC,KAAK,IAAI,CAAC;IAG9C,aAAa,EAAE,GAAG,CAAC,MAAM,CAAC,CAAC;IAC3B,mBAAmB,EAAE,CAAC,aAAa,EAAE,GAAG,CAAC,MAAM,CAAC,KAAK,IAAI,CAAC;IAG1D,QAAQ,EAAE,GAAG,CAAC,MAAM,CAAC,CAAC;IACtB,cAAc,EAAE,CAAC,QAAQ,EAAE,GAAG,CAAC,MAAM,CAAC,KAAK,IAAI,CAAC;IAGhD,mBAAmB,EAAE,QAAQ,EAAE,CAAC;IAChC,yBAAyB,EAAE,CAAC,mBAAmB,EAAE,QAAQ,EAAE,KAAK,IAAI,CAAC;IAGrE,OAAO,EAAE,GAAG,CAAC,MAAM,EAAE,QAAQ,CAAC,CAAC;IAC/B,aAAa,EAAE,CAAC,OAAO,EAAE,GAAG,CAAC,MAAM,EAAE,QAAQ,CAAC,KAAK,IAAI,CAAC;IAGxD,gBAAgB,EAAE,GAAG,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;IACtC,sBAAsB,EAAE,CAAC,gBAAgB,EAAE,GAAG,CAAC,MAAM,EAAE,MAAM,CAAC,KAAK,IAAI,CAAC;IAGxE,UAAU,EAAE,MAAM,CAAC;IACnB,gBAAgB,EAAE,CAAC,UAAU,EAAE,MAAM,KAAK,IAAI,CAAC;IAG/C,UAAU,EAAE,MAAM,EAAE,CAAC;IACrB,gBAAgB,EAAE,CAAC,UAAU,EAAE,MAAM,EAAE,KAAK,IAAI,CAAC;IAGjD,oBAAoB,EAAE,MAAM,EAAE,CAAC;IAC/B,0BAA0B,EAAE,CAAC,oBAAoB,EAAE,MAAM,EAAE,KAAK,IAAI,CAAC;IAErE,oBAAoB,EAAE,oBAAoB,CAAC;IAC3C,uBAAuB,EAAE,CACrB,oBAAoB,EAAE,oBAAoB,KACzC,IAAI,CAAC;IAGV,oBAAoB,EAAE,MAAM,IAAI,CAAC;CACpC,CAAC;AAEF,eAAO,MAAM,gBAAgB,4EAsD1B,CAAC"}
1
+ {"version":3,"file":"treeView.store.d.ts","sourceRoot":"","sources":["../../../src/store/treeView.store.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,oBAAoB,EAAE,QAAQ,EAAE,MAAM,0BAA0B,CAAC;AAC/E,OAAO,EAAU,QAAQ,EAAE,aAAa,EAAE,MAAM,SAAS,CAAC;AAE1D,MAAM,MAAM,aAAa,GAAG;IAExB,OAAO,EAAE,GAAG,CAAC,MAAM,CAAC,CAAC;IACrB,aAAa,EAAE,CAAC,OAAO,EAAE,GAAG,CAAC,MAAM,CAAC,KAAK,IAAI,CAAC;IAG9C,aAAa,EAAE,GAAG,CAAC,MAAM,CAAC,CAAC;IAC3B,mBAAmB,EAAE,CAAC,aAAa,EAAE,GAAG,CAAC,MAAM,CAAC,KAAK,IAAI,CAAC;IAG1D,QAAQ,EAAE,GAAG,CAAC,MAAM,CAAC,CAAC;IACtB,cAAc,EAAE,CAAC,QAAQ,EAAE,GAAG,CAAC,MAAM,CAAC,KAAK,IAAI,CAAC;IAGhD,mBAAmB,EAAE,QAAQ,EAAE,CAAC;IAChC,yBAAyB,EAAE,CAAC,mBAAmB,EAAE,QAAQ,EAAE,KAAK,IAAI,CAAC;IAGrE,OAAO,EAAE,GAAG,CAAC,MAAM,EAAE,QAAQ,CAAC,CAAC;IAC/B,aAAa,EAAE,CAAC,OAAO,EAAE,GAAG,CAAC,MAAM,EAAE,QAAQ,CAAC,KAAK,IAAI,CAAC;IAGxD,gBAAgB,EAAE,GAAG,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;IACtC,sBAAsB,EAAE,CAAC,gBAAgB,EAAE,GAAG,CAAC,MAAM,EAAE,MAAM,CAAC,KAAK,IAAI,CAAC;IAGxE,UAAU,EAAE,MAAM,CAAC;IACnB,gBAAgB,EAAE,CAAC,UAAU,EAAE,MAAM,KAAK,IAAI,CAAC;IAG/C,UAAU,EAAE,MAAM,EAAE,CAAC;IACrB,gBAAgB,EAAE,CAAC,UAAU,EAAE,MAAM,EAAE,KAAK,IAAI,CAAC;IAGjD,oBAAoB,EAAE,MAAM,EAAE,CAAC;IAC/B,0BAA0B,EAAE,CAAC,oBAAoB,EAAE,MAAM,EAAE,KAAK,IAAI,CAAC;IAErE,oBAAoB,EAAE,oBAAoB,CAAC;IAC3C,uBAAuB,EAAE,CACrB,oBAAoB,EAAE,oBAAoB,KACzC,IAAI,CAAC;IAGV,oBAAoB,EAAE,MAAM,IAAI,CAAC;CACpC,CAAC;AAKF,wBAAgB,gBAAgB,CAAC,EAAE,EAAE,MAAM,GAAG,aAAa,CAAC,QAAQ,CAAC,aAAa,CAAC,CAAC,CA+DnF;AAED,wBAAgB,gBAAgB,CAAC,EAAE,EAAE,MAAM,0CAE1C"}
@@ -34,11 +34,13 @@ export interface TreeItemCustomizations {
34
34
  export interface NodeProps extends TreeItemCustomizations {
35
35
  node: __FlattenedTreeNode__;
36
36
  level: number;
37
+ storeId: string;
37
38
  }
38
39
  export interface NodeListProps extends TreeItemCustomizations {
39
40
  treeFlashListProps?: TreeFlatListProps;
41
+ storeId: string;
40
42
  }
41
- export interface TreeViewProps extends NodeListProps {
43
+ export interface TreeViewProps extends Omit<NodeListProps, "storeId"> {
42
44
  data: TreeNode[];
43
45
  onCheck?: (checkedIds: string[], indeterminateIds: string[]) => void;
44
46
  onExpand?: (expandedIds: string[]) => void;
@@ -1 +1 @@
1
- {"version":3,"file":"treeView.types.d.ts","sourceRoot":"","sources":["../../../src/types/treeView.types.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"treeView.types.d.ts","sourceRoot":"","sources":["../../../src/types/treeView.types.ts"],"names":[],"mappings":"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"}
package/package.json CHANGED
@@ -1,12 +1,12 @@
1
1
  {
2
2
  "name": "react-native-tree-multi-select",
3
- "version": "1.5.0",
4
- "description": "Super-fast Tree view with multi-selection capabilities, using checkboxes and search filtering.",
5
- "main": "lib/commonjs/index",
6
- "module": "lib/module/index",
3
+ "version": "1.6.0-beta.1",
4
+ "description": "A super-fast, customizable tree view component for React Native with multi-selection, checkboxes, and search filtering capabilities.",
5
+ "main": "lib/commonjs/index.js",
6
+ "module": "lib/module/index.js",
7
7
  "types": "lib/typescript/index.d.ts",
8
- "react-native": "src/index",
9
- "source": "src/index",
8
+ "react-native": "src/index.tsx",
9
+ "source": "src/index.tsx",
10
10
  "files": [
11
11
  "src",
12
12
  "lib",
@@ -66,11 +66,15 @@
66
66
  "expo",
67
67
  "web"
68
68
  ],
69
- "repository": "https://github.com/JairajJangle/react-native-tree-multi-select",
70
- "author": "Jairaj Jangle <jairaj.jangle@gmail.com> (https://github.com/JairajJangle)",
69
+ "repository": {
70
+ "type": "git",
71
+ "url": "https://github.com/JairajJangle/react-native-tree-multi-select.git"
72
+ },
73
+ "author": "Jairaj Jangle <reachout.jairaj.jangle@gmail.com> (https://github.com/JairajJangle)",
71
74
  "license": "MIT",
72
75
  "bugs": {
73
- "url": "https://github.com/JairajJangle/react-native-tree-multi-select/issues"
76
+ "url": "https://github.com/JairajJangle/react-native-tree-multi-select/issues",
77
+ "email": "reachout.jairaj.jangle@gmail.com"
74
78
  },
75
79
  "homepage": "https://github.com/JairajJangle/react-native-tree-multi-select#readme",
76
80
  "publishConfig": {
@@ -204,6 +208,7 @@
204
208
  ]
205
209
  },
206
210
  "dependencies": {
211
+ "react-native-uuid": "^2.0.3",
207
212
  "zustand": "^4.5.5"
208
213
  },
209
214
  "funding": [
package/src/TreeView.tsx CHANGED
@@ -1,4 +1,4 @@
1
- import React from 'react';
1
+ import React, { useMemo } from 'react';
2
2
  import { InteractionManager } from 'react-native';
3
3
  import type {
4
4
  TreeNode,
@@ -21,6 +21,7 @@ import {
21
21
  import { useTreeViewStore } from './store/treeView.store';
22
22
  import usePreviousState from './utils/usePreviousState';
23
23
  import { useShallow } from "zustand/react/shallow";
24
+ import uuid from "react-native-uuid";
24
25
 
25
26
  const _TreeView = React.forwardRef<TreeViewRef, TreeViewProps>(
26
27
  (props, ref) => {
@@ -47,6 +48,8 @@ const _TreeView = React.forwardRef<TreeViewRef, TreeViewProps>(
47
48
  CustomNodeRowComponent,
48
49
  } = props;
49
50
 
51
+ const storeId = useMemo(() => uuid.v4(), []);
52
+
50
53
  const {
51
54
  expanded,
52
55
  updateExpanded,
@@ -65,7 +68,7 @@ const _TreeView = React.forwardRef<TreeViewRef, TreeViewProps>(
65
68
  setSelectionPropagation,
66
69
 
67
70
  cleanUpTreeViewStore,
68
- } = useTreeViewStore(useShallow(
71
+ } = useTreeViewStore(storeId)(useShallow(
69
72
  state => ({
70
73
  expanded: state.expanded,
71
74
  updateExpanded: state.updateExpanded,
@@ -88,20 +91,20 @@ const _TreeView = React.forwardRef<TreeViewRef, TreeViewProps>(
88
91
  ));
89
92
 
90
93
  React.useImperativeHandle(ref, () => ({
91
- selectAll,
92
- unselectAll,
94
+ selectAll: () => selectAll(storeId),
95
+ unselectAll: () => unselectAll(storeId),
93
96
 
94
- selectAllFiltered,
95
- unselectAllFiltered,
97
+ selectAllFiltered: () => selectAllFiltered(storeId),
98
+ unselectAllFiltered: () => unselectAllFiltered(storeId),
96
99
 
97
- expandAll,
98
- collapseAll,
100
+ expandAll: () => expandAll(storeId),
101
+ collapseAll: () => collapseAll(storeId),
99
102
 
100
- expandNodes,
101
- collapseNodes,
103
+ expandNodes: (ids: string[]) => expandNodes(storeId, ids),
104
+ collapseNodes: (ids: string[]) => collapseNodes(storeId, ids),
102
105
 
103
- selectNodes,
104
- unselectNodes,
106
+ selectNodes: (ids: string[]) => selectNodes(ids),
107
+ unselectNodes: (ids: string[]) => unselectNodes(ids),
105
108
 
106
109
  setSearchText
107
110
  }));
@@ -114,22 +117,22 @@ const _TreeView = React.forwardRef<TreeViewRef, TreeViewProps>(
114
117
  if (selectionPropagation)
115
118
  setSelectionPropagation(selectionPropagation);
116
119
 
117
- initializeNodeMaps(data);
120
+ initializeNodeMaps(storeId, data);
118
121
 
119
122
  // Check any pre-selected nodes
120
- toggleCheckboxes(preselectedIds, true);
123
+ toggleCheckboxes(storeId, preselectedIds, true);
121
124
 
122
125
  // Expand pre-expanded nodes
123
- expandNodes(preExpandedIds);
126
+ expandNodes(storeId, preExpandedIds);
124
127
  // eslint-disable-next-line react-hooks/exhaustive-deps
125
128
  }, []);
126
129
 
127
130
  function selectNodes(ids: string[]) {
128
- toggleCheckboxes(ids, true);
131
+ toggleCheckboxes(storeId, ids, true);
129
132
  }
130
133
 
131
134
  function unselectNodes(ids: string[]) {
132
- toggleCheckboxes(ids, false);
135
+ toggleCheckboxes(storeId, ids, false);
133
136
  }
134
137
 
135
138
  function setSearchText(text: string, keys: string[] = ["name"]) {
@@ -184,6 +187,8 @@ const _TreeView = React.forwardRef<TreeViewRef, TreeViewProps>(
184
187
 
185
188
  return (
186
189
  <NodeList
190
+ storeId={storeId}
191
+
187
192
  treeFlashListProps={treeFlashListProps}
188
193
  checkBoxViewStyleProps={checkBoxViewStyleProps}
189
194
  indentationMultiplier={indentationMultiplier}
@@ -32,6 +32,8 @@ export default NodeList;
32
32
 
33
33
  function _NodeList(props: NodeListProps) {
34
34
  const {
35
+ storeId,
36
+
35
37
  treeFlashListProps,
36
38
  checkBoxViewStyleProps,
37
39
  indentationMultiplier,
@@ -48,7 +50,7 @@ function _NodeList(props: NodeListProps) {
48
50
  updateInnerMostChildrenIds,
49
51
  searchKeys,
50
52
  searchText
51
- } = useTreeViewStore(useShallow(
53
+ } = useTreeViewStore(storeId)(useShallow(
52
54
  state => ({
53
55
  expanded: state.expanded,
54
56
  initialTreeViewData: state.initialTreeViewData,
@@ -84,6 +86,8 @@ function _NodeList(props: NodeListProps) {
84
86
  ) => {
85
87
  return (
86
88
  <Node
89
+ storeId={storeId}
90
+
87
91
  node={item}
88
92
  level={item.level || 0}
89
93
 
@@ -97,6 +101,7 @@ function _NodeList(props: NodeListProps) {
97
101
  />
98
102
  );
99
103
  }, [
104
+ storeId,
100
105
  CheckboxComponent,
101
106
  ExpandCollapseIconComponent,
102
107
  ExpandCollapseTouchableComponent,
@@ -142,6 +147,8 @@ function getValue(
142
147
  const Node = React.memo(_Node);
143
148
  function _Node(props: NodeProps) {
144
149
  const {
150
+ storeId,
151
+
145
152
  node,
146
153
  level,
147
154
 
@@ -157,7 +164,7 @@ function _Node(props: NodeProps) {
157
164
  const {
158
165
  isExpanded,
159
166
  value,
160
- } = useTreeViewStore(useShallow(
167
+ } = useTreeViewStore(storeId)(useShallow(
161
168
  state => ({
162
169
  isExpanded: state.expanded.has(node.id),
163
170
  value: getValue(
@@ -168,12 +175,12 @@ function _Node(props: NodeProps) {
168
175
  ));
169
176
 
170
177
  const _onToggleExpand = React.useCallback(() => {
171
- handleToggleExpand(node.id);
172
- }, [node.id]);
178
+ handleToggleExpand(storeId, node.id);
179
+ }, [storeId, node.id]);
173
180
 
174
181
  const _onCheck = React.useCallback(() => {
175
- toggleCheckboxes([node.id]);
176
- }, [node.id]);
182
+ toggleCheckboxes(storeId, [node.id]);
183
+ }, [storeId, node.id]);
177
184
 
178
185
  if (!CustomNodeRowComponent) {
179
186
  return (
@@ -0,0 +1 @@
1
+ export const testStoreId = 'test-store-id';