react-native-tree-multi-select 1.2.0 → 1.2.3

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 (152) hide show
  1. package/.editorconfig +15 -0
  2. package/.gitattributes +3 -0
  3. package/.github/FUNDING.yml +13 -0
  4. package/.github/ISSUE_TEMPLATE/bug-report.md +42 -0
  5. package/.github/ISSUE_TEMPLATE/feature_request.md +30 -0
  6. package/.github/actions/setup/action.yml +28 -0
  7. package/.github/assets/Jairaj_Jangle_Google_Pay_UPI_QR_Code.jpg +0 -0
  8. package/.github/assets/paypal_donate.png +0 -0
  9. package/.github/assets/upi.png +0 -0
  10. package/.github/workflows/ci.yml +225 -0
  11. package/.gitignore +73 -0
  12. package/.nvmrc +1 -0
  13. package/.watchmanconfig +1 -0
  14. package/.yarnrc +3 -0
  15. package/CHANGELOG.md +145 -0
  16. package/CODE_OF_CONDUCT.md +133 -0
  17. package/CONTRIBUTING.md +114 -0
  18. package/README.md +12 -3
  19. package/babel.config.js +3 -0
  20. package/example/.bundle/config +2 -0
  21. package/example/.watchmanconfig +1 -0
  22. package/example/Gemfile +6 -0
  23. package/example/README.md +79 -0
  24. package/example/android/app/build.gradle +130 -0
  25. package/example/android/app/debug.keystore +0 -0
  26. package/example/android/app/proguard-rules.pro +10 -0
  27. package/example/android/app/src/debug/AndroidManifest.xml +13 -0
  28. package/example/android/app/src/debug/java/com/treemultiselectexample/ReactNativeFlipper.java +75 -0
  29. package/example/android/app/src/main/AndroidManifest.xml +25 -0
  30. package/example/android/app/src/main/java/com/treemultiselectexample/MainActivity.java +32 -0
  31. package/example/android/app/src/main/java/com/treemultiselectexample/MainApplication.java +62 -0
  32. package/example/android/app/src/main/res/drawable/rn_edit_text_material.xml +36 -0
  33. package/example/android/app/src/main/res/mipmap-hdpi/ic_launcher.png +0 -0
  34. package/example/android/app/src/main/res/mipmap-hdpi/ic_launcher_round.png +0 -0
  35. package/example/android/app/src/main/res/mipmap-mdpi/ic_launcher.png +0 -0
  36. package/example/android/app/src/main/res/mipmap-mdpi/ic_launcher_round.png +0 -0
  37. package/example/android/app/src/main/res/mipmap-xhdpi/ic_launcher.png +0 -0
  38. package/example/android/app/src/main/res/mipmap-xhdpi/ic_launcher_round.png +0 -0
  39. package/example/android/app/src/main/res/mipmap-xxhdpi/ic_launcher.png +0 -0
  40. package/example/android/app/src/main/res/mipmap-xxhdpi/ic_launcher_round.png +0 -0
  41. package/example/android/app/src/main/res/mipmap-xxxhdpi/ic_launcher.png +0 -0
  42. package/example/android/app/src/main/res/mipmap-xxxhdpi/ic_launcher_round.png +0 -0
  43. package/example/android/app/src/main/res/values/strings.xml +3 -0
  44. package/example/android/app/src/main/res/values/styles.xml +9 -0
  45. package/example/android/app/src/release/java/com/treemultiselectexample/ReactNativeFlipper.java +20 -0
  46. package/example/android/build.gradle +23 -0
  47. package/example/android/gradle/wrapper/gradle-wrapper.jar +0 -0
  48. package/example/android/gradle/wrapper/gradle-wrapper.properties +6 -0
  49. package/example/android/gradle.properties +44 -0
  50. package/example/android/gradlew +244 -0
  51. package/example/android/gradlew.bat +92 -0
  52. package/example/android/settings.gradle +4 -0
  53. package/example/app.json +4 -0
  54. package/example/babel.config.js +17 -0
  55. package/example/index.js +5 -0
  56. package/example/ios/.xcode.env +11 -0
  57. package/example/ios/File.swift +6 -0
  58. package/example/ios/Podfile +62 -0
  59. package/example/ios/Podfile.lock +639 -0
  60. package/example/ios/TreeMultiSelectExample/AppDelegate.h +6 -0
  61. package/example/ios/TreeMultiSelectExample/AppDelegate.mm +26 -0
  62. package/example/ios/TreeMultiSelectExample/Images.xcassets/AppIcon.appiconset/Contents.json +53 -0
  63. package/example/ios/TreeMultiSelectExample/Images.xcassets/Contents.json +6 -0
  64. package/example/ios/TreeMultiSelectExample/Info.plist +74 -0
  65. package/example/ios/TreeMultiSelectExample/LaunchScreen.storyboard +47 -0
  66. package/example/ios/TreeMultiSelectExample/main.m +10 -0
  67. package/example/ios/TreeMultiSelectExample-Bridging-Header.h +3 -0
  68. package/example/ios/TreeMultiSelectExample.xcodeproj/project.pbxproj +706 -0
  69. package/example/ios/TreeMultiSelectExample.xcodeproj/xcshareddata/xcschemes/TreeMultiSelectExample.xcscheme +88 -0
  70. package/example/ios/TreeMultiSelectExample.xcworkspace/contents.xcworkspacedata +10 -0
  71. package/example/ios/TreeMultiSelectExample.xcworkspace/xcshareddata/IDEWorkspaceChecks.plist +8 -0
  72. package/example/ios/TreeMultiSelectExampleTests/Info.plist +24 -0
  73. package/example/ios/TreeMultiSelectExampleTests/TreeMultiSelectExampleTests.m +66 -0
  74. package/example/metro.config.js +45 -0
  75. package/example/package.json +41 -0
  76. package/example/react-native.config.js +10 -0
  77. package/example/src/App.tsx +70 -0
  78. package/example/src/components/CustomArrow.tsx +71 -0
  79. package/example/src/components/CustomCheckboxView.tsx +119 -0
  80. package/example/src/components/CustomNodeRowView.tsx +124 -0
  81. package/example/src/components/SearchInput.tsx +68 -0
  82. package/example/src/screens/CustomArrowScreen.tsx +99 -0
  83. package/example/src/screens/CustomCheckboxScreen.tsx +99 -0
  84. package/example/src/screens/CustomNodeRowViewScreen.tsx +99 -0
  85. package/example/src/screens/LargeDataScreen.tsx +95 -0
  86. package/example/src/screens/MediumDataScreen.tsx +96 -0
  87. package/example/src/screens/SmallDataScreen.tsx +96 -0
  88. package/example/src/screens/screens.styles.ts +25 -0
  89. package/example/src/utils/sampleDataGenerator.ts +32 -0
  90. package/example/yarn.lock +6368 -0
  91. package/lefthook.yml +17 -0
  92. package/lib/commonjs/TreeView.js +13 -3
  93. package/lib/commonjs/TreeView.js.map +1 -1
  94. package/lib/commonjs/helpers/expandCollapse.helper.js +88 -21
  95. package/lib/commonjs/helpers/expandCollapse.helper.js.map +1 -1
  96. package/lib/commonjs/helpers/toggleCheckbox.helper.js +0 -1
  97. package/lib/commonjs/helpers/toggleCheckbox.helper.js.map +1 -1
  98. package/lib/commonjs/utils/usePreviousState.js +20 -0
  99. package/lib/commonjs/utils/usePreviousState.js.map +1 -0
  100. package/lib/module/TreeView.js +14 -4
  101. package/lib/module/TreeView.js.map +1 -1
  102. package/lib/module/helpers/expandCollapse.helper.js +86 -21
  103. package/lib/module/helpers/expandCollapse.helper.js.map +1 -1
  104. package/lib/module/helpers/toggleCheckbox.helper.js +0 -1
  105. package/lib/module/helpers/toggleCheckbox.helper.js.map +1 -1
  106. package/lib/module/utils/usePreviousState.js +15 -0
  107. package/lib/module/utils/usePreviousState.js.map +1 -0
  108. package/lib/typescript/TreeView.d.ts.map +1 -1
  109. package/lib/typescript/__mocks__/generateTree.mock.d.ts +17 -0
  110. package/lib/typescript/__mocks__/generateTree.mock.d.ts.map +1 -0
  111. package/lib/typescript/__mocks__/zustand.d.ts +3 -0
  112. package/lib/typescript/__mocks__/zustand.d.ts.map +1 -0
  113. package/lib/typescript/__tests__/expandCollapse.helper.test.d.ts +2 -0
  114. package/lib/typescript/__tests__/expandCollapse.helper.test.d.ts.map +1 -0
  115. package/lib/typescript/__tests__/flattenTree.helper.test.d.ts +2 -0
  116. package/lib/typescript/__tests__/flattenTree.helper.test.d.ts.map +1 -0
  117. package/lib/typescript/__tests__/initNodeMap.helper.test.d.ts +2 -0
  118. package/lib/typescript/__tests__/initNodeMap.helper.test.d.ts.map +1 -0
  119. package/lib/typescript/__tests__/search.helper.test.d.ts +2 -0
  120. package/lib/typescript/__tests__/search.helper.test.d.ts.map +1 -0
  121. package/lib/typescript/__tests__/selectAll.helper.test.d.ts +2 -0
  122. package/lib/typescript/__tests__/selectAll.helper.test.d.ts.map +1 -0
  123. package/lib/typescript/__tests__/store.test.d.ts +2 -0
  124. package/lib/typescript/__tests__/store.test.d.ts.map +1 -0
  125. package/lib/typescript/__tests__/toggleCheckbox.helper.test.d.ts +2 -0
  126. package/lib/typescript/__tests__/toggleCheckbox.helper.test.d.ts.map +1 -0
  127. package/lib/typescript/helpers/expandCollapse.helper.d.ts +12 -0
  128. package/lib/typescript/helpers/expandCollapse.helper.d.ts.map +1 -1
  129. package/lib/typescript/types/treeView.types.d.ts +3 -0
  130. package/lib/typescript/types/treeView.types.d.ts.map +1 -1
  131. package/lib/typescript/utils/usePreviousState.d.ts +7 -0
  132. package/lib/typescript/utils/usePreviousState.d.ts.map +1 -0
  133. package/package.json +5 -3
  134. package/scripts/bootstrap.js +29 -0
  135. package/src/TreeView.tsx +25 -4
  136. package/src/__mocks__/generateTree.mock.ts +125 -0
  137. package/src/__mocks__/zustand.ts +24 -0
  138. package/src/__tests__/expandCollapse.helper.test.ts +189 -0
  139. package/src/__tests__/flattenTree.helper.test.ts +78 -0
  140. package/src/__tests__/initNodeMap.helper.test.ts +46 -0
  141. package/src/__tests__/search.helper.test.ts +47 -0
  142. package/src/__tests__/selectAll.helper.test.ts +233 -0
  143. package/src/__tests__/store.test.ts +208 -0
  144. package/src/__tests__/toggleCheckbox.helper.test.ts +124 -0
  145. package/src/helpers/expandCollapse.helper.ts +82 -21
  146. package/src/helpers/toggleCheckbox.helper.ts +1 -1
  147. package/src/types/treeView.types.ts +5 -0
  148. package/src/utils/usePreviousState.ts +16 -0
  149. package/tsconfig.build.json +5 -0
  150. package/tsconfig.json +31 -0
  151. package/turbo.json +34 -0
  152. package/yarn.lock +9953 -0
package/lefthook.yml ADDED
@@ -0,0 +1,17 @@
1
+ pre-commit:
2
+ parallel: true
3
+ commands:
4
+ test:
5
+ run: yarn test
6
+ lint:
7
+ glob: "*.{js,ts,jsx,tsx}"
8
+ run: yarn lint
9
+ types:
10
+ files: git diff --name-only @{push}
11
+ glob: "*.{js,ts,jsx,tsx}"
12
+ run: npx tsc --noEmit
13
+ commit-msg:
14
+ parallel: true
15
+ commands:
16
+ commitlint:
17
+ run: npx commitlint --edit
@@ -9,6 +9,7 @@ var _reactNative = require("react-native");
9
9
  var _NodeList = _interopRequireDefault(require("./components/NodeList"));
10
10
  var _helpers = require("./helpers");
11
11
  var _treeView = require("./store/treeView.store");
12
+ var _usePreviousState = _interopRequireDefault(require("./utils/usePreviousState"));
12
13
  function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
13
14
  const _TreeView = /*#__PURE__*/_react.default.forwardRef((props, ref) => {
14
15
  const {
@@ -16,6 +17,7 @@ const _TreeView = /*#__PURE__*/_react.default.forwardRef((props, ref) => {
16
17
  onCheck,
17
18
  onExpand,
18
19
  preselectedIds = [],
20
+ preExpandedIds = [],
19
21
  treeFlashListProps,
20
22
  checkBoxViewStyleProps,
21
23
  indentationMultiplier,
@@ -42,8 +44,11 @@ const _TreeView = /*#__PURE__*/_react.default.forwardRef((props, ref) => {
42
44
  unselectAllFiltered: _helpers.unselectAllFiltered,
43
45
  expandAll: _helpers.expandAll,
44
46
  collapseAll: _helpers.collapseAll,
47
+ expandNodes: _helpers.expandNodes,
48
+ collapseNodes: _helpers.collapseNodes,
45
49
  setSearchText
46
50
  }));
51
+ const prevSearchText = (0, _usePreviousState.default)(searchText);
47
52
  function setSearchText(text, keys = ["name"]) {
48
53
  updateSearchText(text);
49
54
  updateSearchKeys(keys);
@@ -52,8 +57,11 @@ const _TreeView = /*#__PURE__*/_react.default.forwardRef((props, ref) => {
52
57
  updateInitialTreeViewData(data);
53
58
  (0, _helpers.initializeNodeMaps)(data);
54
59
 
55
- // Check any preselected nodes
60
+ // Check any pre-selected nodes
56
61
  (0, _helpers.toggleCheckboxes)(preselectedIds, true);
62
+
63
+ // Expand pre-expanded nodes
64
+ (0, _helpers.expandNodes)(preExpandedIds);
57
65
  // eslint-disable-next-line react-hooks/exhaustive-deps
58
66
  }, []);
59
67
  const getIds = _react.default.useCallback(node => {
@@ -74,12 +82,14 @@ const _TreeView = /*#__PURE__*/_react.default.forwardRef((props, ref) => {
74
82
  _reactNative.InteractionManager.runAfterInteractions(() => {
75
83
  updateExpanded(new Set(initialTreeViewData.flatMap(item => getIds(item))));
76
84
  });
77
- } else {
85
+ } else if (prevSearchText && prevSearchText !== "") {
86
+ /* Collapse all nodes only if previous search query was non-empty: this is
87
+ done to prevent node collapse on first render if preExpandedIds is provided */
78
88
  _reactNative.InteractionManager.runAfterInteractions(() => {
79
89
  updateExpanded(new Set());
80
90
  });
81
91
  }
82
- }, [getIds, initialTreeViewData, searchText, updateExpanded]);
92
+ }, [getIds, initialTreeViewData, prevSearchText, searchText, updateExpanded]);
83
93
  _react.default.useEffect(() => {
84
94
  return () => {
85
95
  cleanUpTreeViewStore();
@@ -1 +1 @@
1
- {"version":3,"names":["_react","_interopRequireDefault","require","_reactNative","_NodeList","_helpers","_treeView","obj","__esModule","default","_TreeView","React","forwardRef","props","ref","data","onCheck","onExpand","preselectedIds","treeFlashListProps","checkBoxViewStyleProps","indentationMultiplier","CheckboxComponent","ExpandCollapseIconComponent","ExpandCollapseTouchableComponent","CustomNodeRowComponent","expanded","updateExpanded","initialTreeViewData","updateInitialTreeViewData","searchText","updateSearchText","updateSearchKeys","checked","cleanUpTreeViewStore","useTreeViewStore","useImperativeHandle","selectAll","unselectAll","selectAllFiltered","unselectAllFiltered","expandAll","collapseAll","setSearchText","text","keys","useEffect","initializeNodeMaps","toggleCheckboxes","getIds","useCallback","node","children","length","id","flatMap","item","Array","from","InteractionManager","runAfterInteractions","Set","createElement","TreeView","exports","memo"],"sourceRoot":"../../src","sources":["TreeView.tsx"],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"names":["_react","_interopRequireDefault","require","_reactNative","_NodeList","_helpers","_treeView","_usePreviousState","obj","__esModule","default","_TreeView","React","forwardRef","props","ref","data","onCheck","onExpand","preselectedIds","preExpandedIds","treeFlashListProps","checkBoxViewStyleProps","indentationMultiplier","CheckboxComponent","ExpandCollapseIconComponent","ExpandCollapseTouchableComponent","CustomNodeRowComponent","expanded","updateExpanded","initialTreeViewData","updateInitialTreeViewData","searchText","updateSearchText","updateSearchKeys","checked","cleanUpTreeViewStore","useTreeViewStore","useImperativeHandle","selectAll","unselectAll","selectAllFiltered","unselectAllFiltered","expandAll","collapseAll","expandNodes","collapseNodes","setSearchText","prevSearchText","usePreviousState","text","keys","useEffect","initializeNodeMaps","toggleCheckboxes","getIds","useCallback","node","children","length","id","flatMap","item","Array","from","InteractionManager","runAfterInteractions","Set","createElement","TreeView","exports","memo"],"sourceRoot":"../../src","sources":["TreeView.tsx"],"mappings":"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","ignoreList":[]}
@@ -4,7 +4,9 @@ Object.defineProperty(exports, "__esModule", {
4
4
  value: true
5
5
  });
6
6
  exports.collapseAll = collapseAll;
7
+ exports.collapseNodes = collapseNodes;
7
8
  exports.expandAll = expandAll;
9
+ exports.expandNodes = expandNodes;
8
10
  exports.handleToggleExpand = handleToggleExpand;
9
11
  var _treeView = require("../store/treeView.store");
10
12
  /**
@@ -39,28 +41,8 @@ function handleToggleExpand(id) {
39
41
  }
40
42
  }
41
43
 
42
- /**
43
- * Finds a node in the tree by its ID.
44
- *
45
- * @param nodes - The array of tree nodes to search through.
46
- * @returns The found tree node, or undefined if not found.
47
- */
48
- function findNode(nodes) {
49
- for (let node of nodes) {
50
- if (node.id === id) {
51
- return node;
52
- } else if (node.children) {
53
- const found = findNode(node.children);
54
- if (found) {
55
- return found;
56
- }
57
- }
58
- }
59
- return undefined;
60
- }
61
-
62
44
  // Find the node to expand or collapse
63
- const node = findNode(initialTreeViewData);
45
+ const node = findNode(initialTreeViewData, id);
64
46
  if (expanded.has(id)) {
65
47
  // If the node is currently expanded, collapse it and its descendants
66
48
  newExpanded.delete(id);
@@ -110,4 +92,89 @@ function collapseAll() {
110
92
  updateExpanded(newExpanded);
111
93
  }
112
94
  ;
95
+
96
+ /**
97
+ * Expand tree nodes of given ids. If the id is of a child, it also expands
98
+ * the parent which it belongs to.
99
+ * @param ids Ids of nodes to expand.
100
+ */
101
+ function expandNodes(ids) {
102
+ const {
103
+ expanded,
104
+ updateExpanded,
105
+ childToParentMap
106
+ } = _treeView.useTreeViewStore.getState();
107
+ const newExpanded = new Set(expanded);
108
+ const processedParents = new Set(); // To track already processed parents
109
+
110
+ ids.forEach(id => {
111
+ newExpanded.add(id); // Start by adding the node ID to the set
112
+ let currentId = id;
113
+ while (currentId && childToParentMap.has(currentId) && !processedParents.has(currentId)) {
114
+ const parentId = childToParentMap.get(currentId);
115
+ if (parentId) {
116
+ if (!newExpanded.has(parentId)) {
117
+ newExpanded.add(parentId); // Add the parent ID only if not already processed
118
+ processedParents.add(parentId);
119
+ }
120
+ currentId = parentId; // Move up to the next parent
121
+ } else {
122
+ break; // Break the loop if there's no further parent
123
+ }
124
+ }
125
+ });
126
+ updateExpanded(newExpanded);
127
+ }
128
+
129
+ /**
130
+ * Collapse tree nodes of given ids. If the id is of a parent, it also collapses
131
+ * the children inside it.
132
+ * @param ids Ids of nodes to collapse.
133
+ */
134
+ function collapseNodes(ids) {
135
+ const {
136
+ expanded,
137
+ updateExpanded,
138
+ nodeMap
139
+ } = _treeView.useTreeViewStore.getState();
140
+ const newExpanded = new Set(expanded);
141
+
142
+ // Function to recursively remove child nodes from the expanded set
143
+ const deleteChildrenFromExpanded = (nodeId, visited = new Set()) => {
144
+ var _node$children;
145
+ if (visited.has(nodeId)) return; // Prevent redundant processing
146
+ visited.add(nodeId);
147
+ const node = nodeMap.get(nodeId);
148
+ node === null || node === void 0 || (_node$children = node.children) === null || _node$children === void 0 || _node$children.forEach(child => {
149
+ newExpanded.delete(child.id);
150
+ deleteChildrenFromExpanded(child.id, visited);
151
+ });
152
+ };
153
+ ids.forEach(id => {
154
+ // Remove the node ID from the set and all its children
155
+ newExpanded.delete(id);
156
+ deleteChildrenFromExpanded(id);
157
+ });
158
+ updateExpanded(newExpanded);
159
+ }
160
+
161
+ /**
162
+ * Finds a node in the tree by its ID.
163
+ *
164
+ * @param nodes - The array of tree nodes to search through.
165
+ * @returns The found tree node, or undefined if not found.
166
+ */
167
+ function findNode(nodes, parentId) {
168
+ for (let node of nodes) {
169
+ if (node.id === parentId) {
170
+ return node;
171
+ } else if (node.children) {
172
+ const found = findNode(node.children, parentId);
173
+ if (found) {
174
+ return found;
175
+ }
176
+ }
177
+ }
178
+ return undefined;
179
+ }
113
180
  //# sourceMappingURL=expandCollapse.helper.js.map
@@ -1 +1 @@
1
- {"version":3,"names":["_treeView","require","handleToggleExpand","id","initialTreeViewData","expanded","updateExpanded","useTreeViewStore","getState","newExpanded","Set","deleteChildrenFromExpanded","node","children","child","delete","findNode","nodes","found","undefined","has","add","expandAll","nodeMap","keys","collapseAll"],"sourceRoot":"../../../src","sources":["helpers/expandCollapse.helper.ts"],"mappings":";;;;;;;;AACA,IAAAA,SAAA,GAAAC,OAAA;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACO,SAASC,kBAAkBA,CAACC,EAAU,EAAE;EAC3C,MAAM;IACFC,mBAAmB;IACnBC,QAAQ;IACRC;EACJ,CAAC,GAAGC,0BAAgB,CAACC,QAAQ,CAAC,CAAC;;EAE/B;EACA,MAAMC,WAAW,GAAG,IAAIC,GAAG,CAACL,QAAQ,CAAC;;EAErC;AACJ;AACA;AACA;AACA;EACI,SAASM,0BAA0BA,CAACC,IAAc,EAAE;IAChD,IAAIA,IAAI,CAACC,QAAQ,EAAE;MACf,KAAK,IAAIC,KAAK,IAAIF,IAAI,CAACC,QAAQ,EAAE;QAC7BJ,WAAW,CAACM,MAAM,CAACD,KAAK,CAACX,EAAE,CAAC;QAC5BQ,0BAA0B,CAACG,KAAK,CAAC;MACrC;IACJ;EACJ;;EAEA;AACJ;AACA;AACA;AACA;AACA;EACI,SAASE,QAAQA,CAACC,KAAiB,EAAwB;IACvD,KAAK,IAAIL,IAAI,IAAIK,KAAK,EAAE;MACpB,IAAIL,IAAI,CAACT,EAAE,KAAKA,EAAE,EAAE;QAChB,OAAOS,IAAI;MACf,CAAC,MAAM,IAAIA,IAAI,CAACC,QAAQ,EAAE;QACtB,MAAMK,KAAK,GAAGF,QAAQ,CAACJ,IAAI,CAACC,QAAQ,CAAC;QACrC,IAAIK,KAAK,EAAE;UACP,OAAOA,KAAK;QAChB;MACJ;IACJ;IACA,OAAOC,SAAS;EACpB;;EAEA;EACA,MAAMP,IAAI,GAAGI,QAAQ,CAACZ,mBAAmB,CAAC;EAE1C,IAAIC,QAAQ,CAACe,GAAG,CAACjB,EAAE,CAAC,EAAE;IAClB;IACAM,WAAW,CAACM,MAAM,CAACZ,EAAE,CAAC;IACtB;AACR;AACA;AACA;AACA;AACA;AACA;IACQ,IAAIS,IAAI,EAAE;MACND,0BAA0B,CAACC,IAAI,CAAC;IACpC;EACJ,CAAC,MAAM;IACH;IACAH,WAAW,CAACY,GAAG,CAAClB,EAAE,CAAC;EACvB;;EAEA;EACAG,cAAc,CAACG,WAAW,CAAC;AAC/B;AAAC;;AAED;AACA;AACA;AACO,SAASa,SAASA,CAAA,EAAG;EACxB,MAAM;IAAEC,OAAO;IAAEjB;EAAe,CAAC,GAAGC,0BAAgB,CAACC,QAAQ,CAAC,CAAC;EAC/D;EACA,MAAMC,WAAW,GAAG,IAAIC,GAAG,CAACa,OAAO,CAACC,IAAI,CAAC,CAAC,CAAC;EAC3ClB,cAAc,CAACG,WAAW,CAAC;AAC/B;AAAC;;AAED;AACA;AACA;AACO,SAASgB,WAAWA,CAAA,EAAG;EAC1B,MAAM;IAAEnB;EAAe,CAAC,GAAGC,0BAAgB,CAACC,QAAQ,CAAC,CAAC;EACtD;EACA,MAAMC,WAAW,GAAG,IAAIC,GAAG,CAAS,CAAC;EACrCJ,cAAc,CAACG,WAAW,CAAC;AAC/B;AAAC","ignoreList":[]}
1
+ {"version":3,"names":["_treeView","require","handleToggleExpand","id","initialTreeViewData","expanded","updateExpanded","useTreeViewStore","getState","newExpanded","Set","deleteChildrenFromExpanded","node","children","child","delete","findNode","has","add","expandAll","nodeMap","keys","collapseAll","expandNodes","ids","childToParentMap","processedParents","forEach","currentId","parentId","get","collapseNodes","nodeId","visited","_node$children","nodes","found","undefined"],"sourceRoot":"../../../src","sources":["helpers/expandCollapse.helper.ts"],"mappings":"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","ignoreList":[]}
@@ -166,5 +166,4 @@ function toggleCheckboxes(ids, forceCheck) {
166
166
  updateChecked(tempChecked);
167
167
  updateIndeterminate(tempIndeterminate);
168
168
  }
169
- ;
170
169
  //# sourceMappingURL=toggleCheckbox.helper.js.map
@@ -1 +1 @@
1
- {"version":3,"names":["_treeView","require","toggleCheckboxes","ids","forceCheck","checked","updateChecked","indeterminate","updateIndeterminate","nodeMap","childToParentMap","useTreeViewStore","getState","tempChecked","Set","tempIndeterminate","memoAllDescendantsChecked","Map","memoAnyDescendantsChecked","toggleNodeAndChildren","nodeId","isChecked","_node$children","add","delete","node","get","children","forEach","childNode","id","areAllDescendantsChecked","has","allChecked","set","areAnyDescendantsChecked","anyChecked","updateNodeAndAncestorsState","every","undefined","currentNodeId"],"sourceRoot":"../../../src","sources":["helpers/toggleCheckbox.helper.ts"],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"names":["_treeView","require","toggleCheckboxes","ids","forceCheck","checked","updateChecked","indeterminate","updateIndeterminate","nodeMap","childToParentMap","useTreeViewStore","getState","tempChecked","Set","tempIndeterminate","memoAllDescendantsChecked","Map","memoAnyDescendantsChecked","toggleNodeAndChildren","nodeId","isChecked","_node$children","add","delete","node","get","children","forEach","childNode","id","areAllDescendantsChecked","has","allChecked","set","areAnyDescendantsChecked","anyChecked","updateNodeAndAncestorsState","every","undefined","currentNodeId"],"sourceRoot":"../../../src","sources":["helpers/toggleCheckbox.helper.ts"],"mappings":"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","ignoreList":[]}
@@ -0,0 +1,20 @@
1
+ "use strict";
2
+
3
+ Object.defineProperty(exports, "__esModule", {
4
+ value: true
5
+ });
6
+ exports.default = usePreviousState;
7
+ var _react = require("react");
8
+ /**
9
+ * Get previous value of a state
10
+ * @param value state
11
+ * @returns previous value of @param value after it's updated
12
+ */
13
+ function usePreviousState(value) {
14
+ const ref = (0, _react.useRef)();
15
+ (0, _react.useEffect)(() => {
16
+ ref.current = value;
17
+ }, [value]);
18
+ return ref.current;
19
+ }
20
+ //# sourceMappingURL=usePreviousState.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"names":["_react","require","usePreviousState","value","ref","useRef","useEffect","current"],"sourceRoot":"../../../src","sources":["utils/usePreviousState.ts"],"mappings":";;;;;;AAAA,IAAAA,MAAA,GAAAC,OAAA;AAEA;AACA;AACA;AACA;AACA;AACe,SAASC,gBAAgBA,CAAIC,KAAQ,EAAE;EACpD,MAAMC,GAAG,GAAG,IAAAC,aAAM,EAAI,CAAC;EAEvB,IAAAC,gBAAS,EAAC,MAAM;IACdF,GAAG,CAACG,OAAO,GAAGJ,KAAK;EACrB,CAAC,EAAE,CAACA,KAAK,CAAC,CAAC;EAEX,OAAOC,GAAG,CAACG,OAAO;AACpB","ignoreList":[]}
@@ -1,14 +1,16 @@
1
1
  import React from 'react';
2
2
  import { InteractionManager } from 'react-native';
3
3
  import NodeList from './components/NodeList';
4
- import { selectAll, selectAllFiltered, unselectAll, unselectAllFiltered, initializeNodeMaps, expandAll, collapseAll, toggleCheckboxes } from './helpers';
4
+ import { selectAll, selectAllFiltered, unselectAll, unselectAllFiltered, initializeNodeMaps, expandAll, collapseAll, toggleCheckboxes, expandNodes, collapseNodes } from './helpers';
5
5
  import { useTreeViewStore } from './store/treeView.store';
6
+ import usePreviousState from './utils/usePreviousState';
6
7
  const _TreeView = /*#__PURE__*/React.forwardRef((props, ref) => {
7
8
  const {
8
9
  data,
9
10
  onCheck,
10
11
  onExpand,
11
12
  preselectedIds = [],
13
+ preExpandedIds = [],
12
14
  treeFlashListProps,
13
15
  checkBoxViewStyleProps,
14
16
  indentationMultiplier,
@@ -35,8 +37,11 @@ const _TreeView = /*#__PURE__*/React.forwardRef((props, ref) => {
35
37
  unselectAllFiltered,
36
38
  expandAll,
37
39
  collapseAll,
40
+ expandNodes,
41
+ collapseNodes,
38
42
  setSearchText
39
43
  }));
44
+ const prevSearchText = usePreviousState(searchText);
40
45
  function setSearchText(text, keys = ["name"]) {
41
46
  updateSearchText(text);
42
47
  updateSearchKeys(keys);
@@ -45,8 +50,11 @@ const _TreeView = /*#__PURE__*/React.forwardRef((props, ref) => {
45
50
  updateInitialTreeViewData(data);
46
51
  initializeNodeMaps(data);
47
52
 
48
- // Check any preselected nodes
53
+ // Check any pre-selected nodes
49
54
  toggleCheckboxes(preselectedIds, true);
55
+
56
+ // Expand pre-expanded nodes
57
+ expandNodes(preExpandedIds);
50
58
  // eslint-disable-next-line react-hooks/exhaustive-deps
51
59
  }, []);
52
60
  const getIds = React.useCallback(node => {
@@ -67,12 +75,14 @@ const _TreeView = /*#__PURE__*/React.forwardRef((props, ref) => {
67
75
  InteractionManager.runAfterInteractions(() => {
68
76
  updateExpanded(new Set(initialTreeViewData.flatMap(item => getIds(item))));
69
77
  });
70
- } else {
78
+ } else if (prevSearchText && prevSearchText !== "") {
79
+ /* Collapse all nodes only if previous search query was non-empty: this is
80
+ done to prevent node collapse on first render if preExpandedIds is provided */
71
81
  InteractionManager.runAfterInteractions(() => {
72
82
  updateExpanded(new Set());
73
83
  });
74
84
  }
75
- }, [getIds, initialTreeViewData, searchText, updateExpanded]);
85
+ }, [getIds, initialTreeViewData, prevSearchText, searchText, updateExpanded]);
76
86
  React.useEffect(() => {
77
87
  return () => {
78
88
  cleanUpTreeViewStore();
@@ -1 +1 @@
1
- {"version":3,"names":["React","InteractionManager","NodeList","selectAll","selectAllFiltered","unselectAll","unselectAllFiltered","initializeNodeMaps","expandAll","collapseAll","toggleCheckboxes","useTreeViewStore","_TreeView","forwardRef","props","ref","data","onCheck","onExpand","preselectedIds","treeFlashListProps","checkBoxViewStyleProps","indentationMultiplier","CheckboxComponent","ExpandCollapseIconComponent","ExpandCollapseTouchableComponent","CustomNodeRowComponent","expanded","updateExpanded","initialTreeViewData","updateInitialTreeViewData","searchText","updateSearchText","updateSearchKeys","checked","cleanUpTreeViewStore","useImperativeHandle","setSearchText","text","keys","useEffect","getIds","useCallback","node","children","length","id","flatMap","item","Array","from","runAfterInteractions","Set","createElement","TreeView","memo"],"sourceRoot":"../../src","sources":["TreeView.tsx"],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"names":["React","InteractionManager","NodeList","selectAll","selectAllFiltered","unselectAll","unselectAllFiltered","initializeNodeMaps","expandAll","collapseAll","toggleCheckboxes","expandNodes","collapseNodes","useTreeViewStore","usePreviousState","_TreeView","forwardRef","props","ref","data","onCheck","onExpand","preselectedIds","preExpandedIds","treeFlashListProps","checkBoxViewStyleProps","indentationMultiplier","CheckboxComponent","ExpandCollapseIconComponent","ExpandCollapseTouchableComponent","CustomNodeRowComponent","expanded","updateExpanded","initialTreeViewData","updateInitialTreeViewData","searchText","updateSearchText","updateSearchKeys","checked","cleanUpTreeViewStore","useImperativeHandle","setSearchText","prevSearchText","text","keys","useEffect","getIds","useCallback","node","children","length","id","flatMap","item","Array","from","runAfterInteractions","Set","createElement","TreeView","memo"],"sourceRoot":"../../src","sources":["TreeView.tsx"],"mappings":"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","ignoreList":[]}
@@ -32,28 +32,8 @@ export function handleToggleExpand(id) {
32
32
  }
33
33
  }
34
34
 
35
- /**
36
- * Finds a node in the tree by its ID.
37
- *
38
- * @param nodes - The array of tree nodes to search through.
39
- * @returns The found tree node, or undefined if not found.
40
- */
41
- function findNode(nodes) {
42
- for (let node of nodes) {
43
- if (node.id === id) {
44
- return node;
45
- } else if (node.children) {
46
- const found = findNode(node.children);
47
- if (found) {
48
- return found;
49
- }
50
- }
51
- }
52
- return undefined;
53
- }
54
-
55
35
  // Find the node to expand or collapse
56
- const node = findNode(initialTreeViewData);
36
+ const node = findNode(initialTreeViewData, id);
57
37
  if (expanded.has(id)) {
58
38
  // If the node is currently expanded, collapse it and its descendants
59
39
  newExpanded.delete(id);
@@ -103,4 +83,89 @@ export function collapseAll() {
103
83
  updateExpanded(newExpanded);
104
84
  }
105
85
  ;
86
+
87
+ /**
88
+ * Expand tree nodes of given ids. If the id is of a child, it also expands
89
+ * the parent which it belongs to.
90
+ * @param ids Ids of nodes to expand.
91
+ */
92
+ export function expandNodes(ids) {
93
+ const {
94
+ expanded,
95
+ updateExpanded,
96
+ childToParentMap
97
+ } = useTreeViewStore.getState();
98
+ const newExpanded = new Set(expanded);
99
+ const processedParents = new Set(); // To track already processed parents
100
+
101
+ ids.forEach(id => {
102
+ newExpanded.add(id); // Start by adding the node ID to the set
103
+ let currentId = id;
104
+ while (currentId && childToParentMap.has(currentId) && !processedParents.has(currentId)) {
105
+ const parentId = childToParentMap.get(currentId);
106
+ if (parentId) {
107
+ if (!newExpanded.has(parentId)) {
108
+ newExpanded.add(parentId); // Add the parent ID only if not already processed
109
+ processedParents.add(parentId);
110
+ }
111
+ currentId = parentId; // Move up to the next parent
112
+ } else {
113
+ break; // Break the loop if there's no further parent
114
+ }
115
+ }
116
+ });
117
+ updateExpanded(newExpanded);
118
+ }
119
+
120
+ /**
121
+ * Collapse tree nodes of given ids. If the id is of a parent, it also collapses
122
+ * the children inside it.
123
+ * @param ids Ids of nodes to collapse.
124
+ */
125
+ export function collapseNodes(ids) {
126
+ const {
127
+ expanded,
128
+ updateExpanded,
129
+ nodeMap
130
+ } = useTreeViewStore.getState();
131
+ const newExpanded = new Set(expanded);
132
+
133
+ // Function to recursively remove child nodes from the expanded set
134
+ const deleteChildrenFromExpanded = (nodeId, visited = new Set()) => {
135
+ var _node$children;
136
+ if (visited.has(nodeId)) return; // Prevent redundant processing
137
+ visited.add(nodeId);
138
+ const node = nodeMap.get(nodeId);
139
+ node === null || node === void 0 || (_node$children = node.children) === null || _node$children === void 0 || _node$children.forEach(child => {
140
+ newExpanded.delete(child.id);
141
+ deleteChildrenFromExpanded(child.id, visited);
142
+ });
143
+ };
144
+ ids.forEach(id => {
145
+ // Remove the node ID from the set and all its children
146
+ newExpanded.delete(id);
147
+ deleteChildrenFromExpanded(id);
148
+ });
149
+ updateExpanded(newExpanded);
150
+ }
151
+
152
+ /**
153
+ * Finds a node in the tree by its ID.
154
+ *
155
+ * @param nodes - The array of tree nodes to search through.
156
+ * @returns The found tree node, or undefined if not found.
157
+ */
158
+ function findNode(nodes, parentId) {
159
+ for (let node of nodes) {
160
+ if (node.id === parentId) {
161
+ return node;
162
+ } else if (node.children) {
163
+ const found = findNode(node.children, parentId);
164
+ if (found) {
165
+ return found;
166
+ }
167
+ }
168
+ }
169
+ return undefined;
170
+ }
106
171
  //# sourceMappingURL=expandCollapse.helper.js.map
@@ -1 +1 @@
1
- {"version":3,"names":["useTreeViewStore","handleToggleExpand","id","initialTreeViewData","expanded","updateExpanded","getState","newExpanded","Set","deleteChildrenFromExpanded","node","children","child","delete","findNode","nodes","found","undefined","has","add","expandAll","nodeMap","keys","collapseAll"],"sourceRoot":"../../../src","sources":["helpers/expandCollapse.helper.ts"],"mappings":"AACA,SAASA,gBAAgB,QAAQ,yBAAyB;;AAE1D;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,OAAO,SAASC,kBAAkBA,CAACC,EAAU,EAAE;EAC3C,MAAM;IACFC,mBAAmB;IACnBC,QAAQ;IACRC;EACJ,CAAC,GAAGL,gBAAgB,CAACM,QAAQ,CAAC,CAAC;;EAE/B;EACA,MAAMC,WAAW,GAAG,IAAIC,GAAG,CAACJ,QAAQ,CAAC;;EAErC;AACJ;AACA;AACA;AACA;EACI,SAASK,0BAA0BA,CAACC,IAAc,EAAE;IAChD,IAAIA,IAAI,CAACC,QAAQ,EAAE;MACf,KAAK,IAAIC,KAAK,IAAIF,IAAI,CAACC,QAAQ,EAAE;QAC7BJ,WAAW,CAACM,MAAM,CAACD,KAAK,CAACV,EAAE,CAAC;QAC5BO,0BAA0B,CAACG,KAAK,CAAC;MACrC;IACJ;EACJ;;EAEA;AACJ;AACA;AACA;AACA;AACA;EACI,SAASE,QAAQA,CAACC,KAAiB,EAAwB;IACvD,KAAK,IAAIL,IAAI,IAAIK,KAAK,EAAE;MACpB,IAAIL,IAAI,CAACR,EAAE,KAAKA,EAAE,EAAE;QAChB,OAAOQ,IAAI;MACf,CAAC,MAAM,IAAIA,IAAI,CAACC,QAAQ,EAAE;QACtB,MAAMK,KAAK,GAAGF,QAAQ,CAACJ,IAAI,CAACC,QAAQ,CAAC;QACrC,IAAIK,KAAK,EAAE;UACP,OAAOA,KAAK;QAChB;MACJ;IACJ;IACA,OAAOC,SAAS;EACpB;;EAEA;EACA,MAAMP,IAAI,GAAGI,QAAQ,CAACX,mBAAmB,CAAC;EAE1C,IAAIC,QAAQ,CAACc,GAAG,CAAChB,EAAE,CAAC,EAAE;IAClB;IACAK,WAAW,CAACM,MAAM,CAACX,EAAE,CAAC;IACtB;AACR;AACA;AACA;AACA;AACA;AACA;IACQ,IAAIQ,IAAI,EAAE;MACND,0BAA0B,CAACC,IAAI,CAAC;IACpC;EACJ,CAAC,MAAM;IACH;IACAH,WAAW,CAACY,GAAG,CAACjB,EAAE,CAAC;EACvB;;EAEA;EACAG,cAAc,CAACE,WAAW,CAAC;AAC/B;AAAC;;AAED;AACA;AACA;AACA,OAAO,SAASa,SAASA,CAAA,EAAG;EACxB,MAAM;IAAEC,OAAO;IAAEhB;EAAe,CAAC,GAAGL,gBAAgB,CAACM,QAAQ,CAAC,CAAC;EAC/D;EACA,MAAMC,WAAW,GAAG,IAAIC,GAAG,CAACa,OAAO,CAACC,IAAI,CAAC,CAAC,CAAC;EAC3CjB,cAAc,CAACE,WAAW,CAAC;AAC/B;AAAC;;AAED;AACA;AACA;AACA,OAAO,SAASgB,WAAWA,CAAA,EAAG;EAC1B,MAAM;IAAElB;EAAe,CAAC,GAAGL,gBAAgB,CAACM,QAAQ,CAAC,CAAC;EACtD;EACA,MAAMC,WAAW,GAAG,IAAIC,GAAG,CAAS,CAAC;EACrCH,cAAc,CAACE,WAAW,CAAC;AAC/B;AAAC","ignoreList":[]}
1
+ {"version":3,"names":["useTreeViewStore","handleToggleExpand","id","initialTreeViewData","expanded","updateExpanded","getState","newExpanded","Set","deleteChildrenFromExpanded","node","children","child","delete","findNode","has","add","expandAll","nodeMap","keys","collapseAll","expandNodes","ids","childToParentMap","processedParents","forEach","currentId","parentId","get","collapseNodes","nodeId","visited","_node$children","nodes","found","undefined"],"sourceRoot":"../../../src","sources":["helpers/expandCollapse.helper.ts"],"mappings":"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","ignoreList":[]}
@@ -161,5 +161,4 @@ export function toggleCheckboxes(ids, forceCheck) {
161
161
  updateChecked(tempChecked);
162
162
  updateIndeterminate(tempIndeterminate);
163
163
  }
164
- ;
165
164
  //# sourceMappingURL=toggleCheckbox.helper.js.map
@@ -1 +1 @@
1
- {"version":3,"names":["useTreeViewStore","toggleCheckboxes","ids","forceCheck","checked","updateChecked","indeterminate","updateIndeterminate","nodeMap","childToParentMap","getState","tempChecked","Set","tempIndeterminate","memoAllDescendantsChecked","Map","memoAnyDescendantsChecked","toggleNodeAndChildren","nodeId","isChecked","_node$children","add","delete","node","get","children","forEach","childNode","id","areAllDescendantsChecked","has","allChecked","set","areAnyDescendantsChecked","anyChecked","updateNodeAndAncestorsState","every","undefined","currentNodeId"],"sourceRoot":"../../../src","sources":["helpers/toggleCheckbox.helper.ts"],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"names":["useTreeViewStore","toggleCheckboxes","ids","forceCheck","checked","updateChecked","indeterminate","updateIndeterminate","nodeMap","childToParentMap","getState","tempChecked","Set","tempIndeterminate","memoAllDescendantsChecked","Map","memoAnyDescendantsChecked","toggleNodeAndChildren","nodeId","isChecked","_node$children","add","delete","node","get","children","forEach","childNode","id","areAllDescendantsChecked","has","allChecked","set","areAnyDescendantsChecked","anyChecked","updateNodeAndAncestorsState","every","undefined","currentNodeId"],"sourceRoot":"../../../src","sources":["helpers/toggleCheckbox.helper.ts"],"mappings":"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","ignoreList":[]}
@@ -0,0 +1,15 @@
1
+ import { useEffect, useRef } from "react";
2
+
3
+ /**
4
+ * Get previous value of a state
5
+ * @param value state
6
+ * @returns previous value of @param value after it's updated
7
+ */
8
+ export default function usePreviousState(value) {
9
+ const ref = useRef();
10
+ useEffect(() => {
11
+ ref.current = value;
12
+ }, [value]);
13
+ return ref.current;
14
+ }
15
+ //# sourceMappingURL=usePreviousState.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"names":["useEffect","useRef","usePreviousState","value","ref","current"],"sourceRoot":"../../../src","sources":["utils/usePreviousState.ts"],"mappings":"AAAA,SAASA,SAAS,EAAEC,MAAM,QAAQ,OAAO;;AAEzC;AACA;AACA;AACA;AACA;AACA,eAAe,SAASC,gBAAgBA,CAAIC,KAAQ,EAAE;EACpD,MAAMC,GAAG,GAAGH,MAAM,CAAI,CAAC;EAEvBD,SAAS,CAAC,MAAM;IACdI,GAAG,CAACC,OAAO,GAAGF,KAAK;EACrB,CAAC,EAAE,CAACA,KAAK,CAAC,CAAC;EAEX,OAAOC,GAAG,CAACC,OAAO;AACpB","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;AAqIhC,eAAO,MAAM,QAAQ,8GAAwB,CAAC"}
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;AA0JhC,eAAO,MAAM,QAAQ,8GAAwB,CAAC"}
@@ -0,0 +1,17 @@
1
+ import { TreeNode, __FlattenedTreeNode__ } from "../types/treeView.types";
2
+ export declare const tree3d2b: {
3
+ id: string;
4
+ name: string;
5
+ children: {
6
+ id: string;
7
+ name: string;
8
+ children: {
9
+ id: string;
10
+ name: string;
11
+ }[];
12
+ }[];
13
+ }[];
14
+ export declare function generateTree(depth: number, breadth: number, prefix?: string): TreeNode[];
15
+ export declare function generateExpectedFlatTree(nodes: TreeNode[], expandedIds: Set<string>, level?: number): __FlattenedTreeNode__[];
16
+ export declare function createRandomNumberSet(): Set<string>;
17
+ //# sourceMappingURL=generateTree.mock.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"generateTree.mock.d.ts","sourceRoot":"","sources":["../../../src/__mocks__/generateTree.mock.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,QAAQ,EAAE,qBAAqB,EAAE,MAAM,yBAAyB,CAAC;AAE1E,eAAO,MAAM,QAAQ;;;;;;;;;;;GAqEpB,CAAC;AAEF,wBAAgB,YAAY,CACxB,KAAK,EAAE,MAAM,EACb,OAAO,EAAE,MAAM,EACf,MAAM,GAAE,MAAW,GACpB,QAAQ,EAAE,CAiBZ;AAED,wBAAgB,wBAAwB,CACpC,KAAK,EAAE,QAAQ,EAAE,EACjB,WAAW,EAAE,GAAG,CAAC,MAAM,CAAC,EACxB,KAAK,GAAE,MAAU,GAClB,qBAAqB,EAAE,CAYzB;AAED,wBAAgB,qBAAqB,gBAUpC"}
@@ -0,0 +1,3 @@
1
+ import { StateCreator } from 'zustand';
2
+ export declare const create: <S>(createState: StateCreator<S>) => any;
3
+ //# sourceMappingURL=zustand.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"zustand.d.ts","sourceRoot":"","sources":["../../../src/__mocks__/zustand.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,YAAY,EAAE,MAAM,SAAS,CAAC;AAQvC,eAAO,MAAM,MAAM,mBAAoB,aAAa,CAAC,CAAC,QAKrD,CAAC"}
@@ -0,0 +1,2 @@
1
+ export {};
2
+ //# sourceMappingURL=expandCollapse.helper.test.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"expandCollapse.helper.test.d.ts","sourceRoot":"","sources":["../../../src/__tests__/expandCollapse.helper.test.ts"],"names":[],"mappings":""}
@@ -0,0 +1,2 @@
1
+ export {};
2
+ //# sourceMappingURL=flattenTree.helper.test.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"flattenTree.helper.test.d.ts","sourceRoot":"","sources":["../../../src/__tests__/flattenTree.helper.test.ts"],"names":[],"mappings":""}
@@ -0,0 +1,2 @@
1
+ export {};
2
+ //# sourceMappingURL=initNodeMap.helper.test.d.ts.map