react-native-tree-multi-select 0.5.4 → 0.8.4

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 (55) hide show
  1. package/README.md +5 -6
  2. package/lib/commonjs/TreeView.js +42 -48
  3. package/lib/commonjs/TreeView.js.map +1 -1
  4. package/lib/commonjs/components/NodeList.js +98 -92
  5. package/lib/commonjs/components/NodeList.js.map +1 -1
  6. package/lib/commonjs/helpers/expandCollapse.helper.js +21 -8
  7. package/lib/commonjs/helpers/expandCollapse.helper.js.map +1 -1
  8. package/lib/commonjs/helpers/initNodeMap.helper.js +14 -3
  9. package/lib/commonjs/helpers/initNodeMap.helper.js.map +1 -1
  10. package/lib/commonjs/helpers/selectAll.helper.js +32 -14
  11. package/lib/commonjs/helpers/selectAll.helper.js.map +1 -1
  12. package/lib/commonjs/helpers/toggleCheckbox.helper.js +34 -27
  13. package/lib/commonjs/helpers/toggleCheckbox.helper.js.map +1 -1
  14. package/lib/commonjs/store/global.store.js +92 -0
  15. package/lib/commonjs/store/global.store.js.map +1 -0
  16. package/lib/module/TreeView.js +42 -46
  17. package/lib/module/TreeView.js.map +1 -1
  18. package/lib/module/components/NodeList.js +96 -92
  19. package/lib/module/components/NodeList.js.map +1 -1
  20. package/lib/module/helpers/expandCollapse.helper.js +21 -8
  21. package/lib/module/helpers/expandCollapse.helper.js.map +1 -1
  22. package/lib/module/helpers/initNodeMap.helper.js +14 -3
  23. package/lib/module/helpers/initNodeMap.helper.js.map +1 -1
  24. package/lib/module/helpers/selectAll.helper.js +32 -14
  25. package/lib/module/helpers/selectAll.helper.js.map +1 -1
  26. package/lib/module/helpers/toggleCheckbox.helper.js +34 -27
  27. package/lib/module/helpers/toggleCheckbox.helper.js.map +1 -1
  28. package/lib/module/store/global.store.js +85 -0
  29. package/lib/module/store/global.store.js.map +1 -0
  30. package/lib/typescript/TreeView.d.ts.map +1 -1
  31. package/lib/typescript/components/NodeList.d.ts.map +1 -1
  32. package/lib/typescript/helpers/expandCollapse.helper.d.ts.map +1 -1
  33. package/lib/typescript/helpers/initNodeMap.helper.d.ts.map +1 -1
  34. package/lib/typescript/helpers/selectAll.helper.d.ts.map +1 -1
  35. package/lib/typescript/helpers/toggleCheckbox.helper.d.ts.map +1 -1
  36. package/lib/typescript/store/global.store.d.ts +24 -0
  37. package/lib/typescript/store/global.store.d.ts.map +1 -0
  38. package/lib/typescript/types/treeView.types.d.ts +0 -4
  39. package/lib/typescript/types/treeView.types.d.ts.map +1 -1
  40. package/package.json +9 -10
  41. package/src/TreeView.tsx +53 -62
  42. package/src/components/NodeList.tsx +102 -107
  43. package/src/helpers/expandCollapse.helper.ts +12 -12
  44. package/src/helpers/initNodeMap.helper.ts +15 -5
  45. package/src/helpers/selectAll.helper.ts +20 -13
  46. package/src/helpers/toggleCheckbox.helper.ts +36 -24
  47. package/src/store/global.store.ts +111 -0
  48. package/src/types/treeView.types.ts +0 -5
  49. package/lib/commonjs/signals/global.signals.js +0 -42
  50. package/lib/commonjs/signals/global.signals.js.map +0 -1
  51. package/lib/module/signals/global.signals.js +0 -26
  52. package/lib/module/signals/global.signals.js.map +0 -1
  53. package/lib/typescript/signals/global.signals.d.ts +0 -11
  54. package/lib/typescript/signals/global.signals.d.ts.map +0 -1
  55. package/src/signals/global.signals.ts +0 -36
package/README.md CHANGED
@@ -2,9 +2,7 @@
2
2
 
3
3
  Tree view with multi selection using checkbox + search filtering.
4
4
 
5
- [![npm version](https://badge.fury.io/js/react-native-tree-multi-select.svg)](https://badge.fury.io/js/react-native-tree-multi-select)![License](https://img.shields.io/github/license/JairajJangle/react-native-tree-multi-select) ![Workflow Status](https://github.com/JairajJangle/react-native-tree-multi-select/actions/workflows/ci.yml/badge.svg)
6
-
7
- ## Demo
5
+ [![npm version](https://img.shields.io/npm/v/react-native-tree-multi-select)](https://badge.fury.io/js/react-native-tree-multi-select) ![License](https://img.shields.io/github/license/JairajJangle/react-native-tree-multi-select) ![Workflow Status](https://github.com/JairajJangle/react-native-tree-multi-select/actions/workflows/ci.yml/badge.svg) ![Static Badge](https://img.shields.io/badge/platform-android%20%26%20ios-blue) ![GitHub issues](https://img.shields.io/github/issues/JairajJangle/react-native-tree-multi-select)
8
6
 
9
7
  <div align="left">
10
8
  <img src="https://media.giphy.com/media/v1.Y2lkPTc5MGI3NjExNHFleDNleTZsMXVoMjk1YnlpdXFtanZyZGprMDkwcDdteGhqYTNhcCZlcD12MV9pbnRlcm5hbF9naWZfYnlfaWQmY3Q9Zw/L0w26RrC32gdfWZ8Ux/giphy.gif" alt="demo" style="border: 1px solid gray;" />
@@ -15,19 +13,20 @@ Tree view with multi selection using checkbox + search filtering.
15
13
  Using yarn
16
14
 
17
15
  ```sh
18
- yarn add react-native-tree-multi-select
16
+ yarn add react-native-tree-multi-select && cd ios && pod install
19
17
  ```
20
18
 
21
19
  using npm:
22
20
 
23
21
  ```sh
24
- npm install react-native-tree-multi-select
22
+ npm install react-native-tree-multi-select && cd ios && pod install
25
23
  ```
26
24
 
27
25
  Dependencies required to be installed for this library to work:
28
26
 
29
27
  1. [@shopify/flash-list](https://github.com/Shopify/flash-list)
30
- 2. [react-native-vector-icons](https://github.com/oblador/react-native-vector-icons)
28
+ 2. [react-native-paper](https://github.com/callstack/react-native-paper)
29
+ 3. [react-native-vector-icons](https://github.com/oblador/react-native-vector-icons)
31
30
 
32
31
  Make sure to follow the native-related installation for these dependencies.
33
32
 
@@ -4,16 +4,13 @@ Object.defineProperty(exports, "__esModule", {
4
4
  value: true
5
5
  });
6
6
  exports.TreeView = void 0;
7
- var _react = _interopRequireWildcard(require("react"));
7
+ var _react = _interopRequireDefault(require("react"));
8
8
  var _NodeList = _interopRequireDefault(require("./components/NodeList"));
9
9
  var _helpers = require("./helpers");
10
- var _signalsReact = require("@preact/signals-react");
11
- var _global = require("./signals/global.signals");
10
+ var _global = require("./store/global.store");
12
11
  var _reactNative = require("react-native");
13
12
  function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
14
- function _getRequireWildcardCache(nodeInterop) { if (typeof WeakMap !== "function") return null; var cacheBabelInterop = new WeakMap(); var cacheNodeInterop = new WeakMap(); return (_getRequireWildcardCache = function (nodeInterop) { return nodeInterop ? cacheNodeInterop : cacheBabelInterop; })(nodeInterop); }
15
- function _interopRequireWildcard(obj, nodeInterop) { if (!nodeInterop && obj && obj.__esModule) { return obj; } if (obj === null || typeof obj !== "object" && typeof obj !== "function") { return { default: obj }; } var cache = _getRequireWildcardCache(nodeInterop); if (cache && cache.has(obj)) { return cache.get(obj); } var newObj = {}; var hasPropertyDescriptor = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var key in obj) { if (key !== "default" && Object.prototype.hasOwnProperty.call(obj, key)) { var desc = hasPropertyDescriptor ? Object.getOwnPropertyDescriptor(obj, key) : null; if (desc && (desc.get || desc.set)) { Object.defineProperty(newObj, key, desc); } else { newObj[key] = obj[key]; } } } newObj.default = obj; if (cache) { cache.set(obj, newObj); } return newObj; }
16
- const _TreeView = /*#__PURE__*/(0, _react.forwardRef)((props, ref) => {
13
+ const _TreeView = /*#__PURE__*/_react.default.forwardRef((props, ref) => {
17
14
  const {
18
15
  data,
19
16
  onCheck,
@@ -25,7 +22,18 @@ const _TreeView = /*#__PURE__*/(0, _react.forwardRef)((props, ref) => {
25
22
  ExpandCollapseIconComponent,
26
23
  ExpandCollapseTouchableComponent
27
24
  } = props;
28
- (0, _react.useImperativeHandle)(ref, () => ({
25
+ const {
26
+ cleanUpGlobalSignals,
27
+ expanded,
28
+ updateExpanded,
29
+ globalData,
30
+ updateGlobalData,
31
+ searchText,
32
+ updatedSearchText,
33
+ updatedSearchKeys,
34
+ checked
35
+ } = (0, _global.useStore)();
36
+ _react.default.useImperativeHandle(ref, () => ({
29
37
  selectAll: _helpers.selectAll,
30
38
  unselectAll: _helpers.unselectAll,
31
39
  selectAllFiltered: _helpers.selectAllFiltered,
@@ -36,49 +44,13 @@ const _TreeView = /*#__PURE__*/(0, _react.forwardRef)((props, ref) => {
36
44
  }));
37
45
  function setSearchText(text) {
38
46
  let keys = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : ["name"];
39
- _global.searchText.value = text;
40
- _global.searchKeys.value = keys;
47
+ updatedSearchText(text);
48
+ updatedSearchKeys(keys);
41
49
  }
42
- (0, _react.useEffect)(() => {
43
- _global.globalData.value = data;
50
+ _react.default.useEffect(() => {
51
+ updateGlobalData(data);
44
52
  (0, _helpers.initializeNodeMaps)(data, preselectedIds);
45
- }, [data, preselectedIds]);
46
- const disposeCheckedStateEffect = _react.default.useMemo(() => {
47
- return (0, _signalsReact.effect)(() => {
48
- onCheck && onCheck(Array.from(_global.state.value.checked));
49
- });
50
- // eslint-disable-next-line react-hooks/exhaustive-deps
51
- }, []);
52
- const disposeExpandedStateEffect = _react.default.useMemo(() => {
53
- return (0, _signalsReact.effect)(() => {
54
- onExpand && onExpand(Array.from(_global.expanded.value));
55
- });
56
- // eslint-disable-next-line react-hooks/exhaustive-deps
57
- }, []);
58
- const disposeSearchStateEffect = _react.default.useMemo(() => {
59
- return (0, _signalsReact.effect)(() => {
60
- if (_global.searchText.value) {
61
- _reactNative.InteractionManager.runAfterInteractions(() => {
62
- _global.expanded.value = new Set(_global.globalData.value.flatMap(item => getIds(item)));
63
- });
64
- } else {
65
- _reactNative.InteractionManager.runAfterInteractions(() => {
66
- _global.expanded.value = new Set();
67
- });
68
- }
69
- });
70
- // eslint-disable-next-line react-hooks/exhaustive-deps
71
- }, []);
72
- (0, _react.useEffect)(() => {
73
- return () => {
74
- // Cleanup all global signals and signal effects
75
- disposeCheckedStateEffect();
76
- disposeExpandedStateEffect();
77
- disposeSearchStateEffect();
78
- (0, _global.cleanUpGlobalSignals)();
79
- };
80
- // eslint-disable-next-line react-hooks/exhaustive-deps
81
- }, []);
53
+ }, [updateGlobalData, data, preselectedIds]);
82
54
  const getIds = _react.default.useCallback(node => {
83
55
  if (!node.children || node.children.length === 0) {
84
56
  return [node.id];
@@ -86,6 +58,28 @@ const _TreeView = /*#__PURE__*/(0, _react.forwardRef)((props, ref) => {
86
58
  return [node.id, ...node.children.flatMap(item => getIds(item))];
87
59
  }
88
60
  }, []);
61
+ _react.default.useEffect(() => {
62
+ onCheck && onCheck(Array.from(checked));
63
+ }, [onCheck, checked]);
64
+ _react.default.useEffect(() => {
65
+ onExpand && onExpand(Array.from(expanded));
66
+ }, [onExpand, expanded]);
67
+ _react.default.useEffect(() => {
68
+ if (searchText) {
69
+ _reactNative.InteractionManager.runAfterInteractions(() => {
70
+ updateExpanded(new Set(globalData.flatMap(item => getIds(item))));
71
+ });
72
+ } else {
73
+ _reactNative.InteractionManager.runAfterInteractions(() => {
74
+ updateExpanded(new Set());
75
+ });
76
+ }
77
+ }, [getIds, globalData, searchText, updateExpanded]);
78
+ _react.default.useEffect(() => {
79
+ return () => {
80
+ cleanUpGlobalSignals();
81
+ };
82
+ }, [cleanUpGlobalSignals]);
89
83
  return /*#__PURE__*/_react.default.createElement(_NodeList.default, {
90
84
  treeFlashListProps: treeFlashListProps,
91
85
  checkBoxViewStyleProps: checkBoxViewStyleProps,
@@ -1 +1 @@
1
- {"version":3,"names":["_react","_interopRequireWildcard","require","_NodeList","_interopRequireDefault","_helpers","_signalsReact","_global","_reactNative","obj","__esModule","default","_getRequireWildcardCache","nodeInterop","WeakMap","cacheBabelInterop","cacheNodeInterop","cache","has","get","newObj","hasPropertyDescriptor","Object","defineProperty","getOwnPropertyDescriptor","key","prototype","hasOwnProperty","call","desc","set","_TreeView","forwardRef","props","ref","data","onCheck","onExpand","preselectedIds","treeFlashListProps","checkBoxViewStyleProps","CheckboxComponent","ExpandCollapseIconComponent","ExpandCollapseTouchableComponent","useImperativeHandle","selectAll","unselectAll","selectAllFiltered","unselectAllFiltered","expandAll","collapseAll","setSearchText","text","keys","arguments","length","undefined","searchText","value","searchKeys","useEffect","globalData","initializeNodeMaps","disposeCheckedStateEffect","React","useMemo","effect","Array","from","state","checked","disposeExpandedStateEffect","expanded","disposeSearchStateEffect","InteractionManager","runAfterInteractions","Set","flatMap","item","getIds","cleanUpGlobalSignals","useCallback","node","children","id","createElement","TreeView","memo","exports"],"sourceRoot":"../../src","sources":["TreeView.tsx"],"mappings":"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"}
1
+ {"version":3,"names":["_react","_interopRequireDefault","require","_NodeList","_helpers","_global","_reactNative","obj","__esModule","default","_TreeView","React","forwardRef","props","ref","data","onCheck","onExpand","preselectedIds","treeFlashListProps","checkBoxViewStyleProps","CheckboxComponent","ExpandCollapseIconComponent","ExpandCollapseTouchableComponent","cleanUpGlobalSignals","expanded","updateExpanded","globalData","updateGlobalData","searchText","updatedSearchText","updatedSearchKeys","checked","useStore","useImperativeHandle","selectAll","unselectAll","selectAllFiltered","unselectAllFiltered","expandAll","collapseAll","setSearchText","text","keys","arguments","length","undefined","useEffect","initializeNodeMaps","getIds","useCallback","node","children","id","flatMap","item","Array","from","InteractionManager","runAfterInteractions","Set","createElement","TreeView","memo","exports"],"sourceRoot":"../../src","sources":["TreeView.tsx"],"mappings":"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"}
@@ -4,15 +4,16 @@ Object.defineProperty(exports, "__esModule", {
4
4
  value: true
5
5
  });
6
6
  exports.default = void 0;
7
- var _react = _interopRequireDefault(require("react"));
7
+ var _react = _interopRequireWildcard(require("react"));
8
8
  var _reactNative = require("react-native");
9
- var _signalsReact = require("@preact/signals-react");
10
9
  var _flashList = require("@shopify/flash-list");
11
- var _global = require("../signals/global.signals");
10
+ var _global = require("../store/global.store");
12
11
  var _helpers = require("../helpers");
13
12
  var _CheckboxView = require("./CheckboxView");
14
13
  var _CustomExpandCollapseIcon = _interopRequireDefault(require("./CustomExpandCollapseIcon"));
15
14
  function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
15
+ function _getRequireWildcardCache(nodeInterop) { if (typeof WeakMap !== "function") return null; var cacheBabelInterop = new WeakMap(); var cacheNodeInterop = new WeakMap(); return (_getRequireWildcardCache = function (nodeInterop) { return nodeInterop ? cacheNodeInterop : cacheBabelInterop; })(nodeInterop); }
16
+ function _interopRequireWildcard(obj, nodeInterop) { if (!nodeInterop && obj && obj.__esModule) { return obj; } if (obj === null || typeof obj !== "object" && typeof obj !== "function") { return { default: obj }; } var cache = _getRequireWildcardCache(nodeInterop); if (cache && cache.has(obj)) { return cache.get(obj); } var newObj = {}; var hasPropertyDescriptor = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var key in obj) { if (key !== "default" && Object.prototype.hasOwnProperty.call(obj, key)) { var desc = hasPropertyDescriptor ? Object.getOwnPropertyDescriptor(obj, key) : null; if (desc && (desc.get || desc.set)) { Object.defineProperty(newObj, key, desc); } else { newObj[key] = obj[key]; } } } newObj.default = obj; if (cache) { cache.set(obj, newObj); } return newObj; }
16
17
  function _extends() { _extends = Object.assign ? Object.assign.bind() : function (target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i]; for (var key in source) { if (Object.prototype.hasOwnProperty.call(source, key)) { target[key] = source[key]; } } } return target; }; return _extends.apply(this, arguments); }
17
18
  const NodeList = /*#__PURE__*/_react.default.memo(_NodeList);
18
19
  var _default = NodeList;
@@ -25,69 +26,72 @@ function _NodeList(props) {
25
26
  ExpandCollapseIconComponent,
26
27
  ExpandCollapseTouchableComponent
27
28
  } = props;
28
- const filteredTree = _react.default.useMemo(() => {
29
- return (0, _signalsReact.computed)(() => {
30
- const searchTrimmed = _global.searchText.value.trim().toLowerCase();
31
- const filterTreeData = _nodes => {
32
- let filtered = [];
33
- for (let node of _nodes) {
34
- if (!searchTrimmed || (0, _helpers.doesNodeContainSearchTerm)(node, searchTrimmed, _global.searchKeys.value)) {
35
- // If node itself matches, include it and all its descendants
36
- filtered.push(node);
37
- } else if (node.children) {
38
- // If node does not match, check its children and include them if they match
39
- const childMatches = filterTreeData(node.children);
40
- if (childMatches.length > 0) {
41
- // If any children match, include the node, replacing its children with the matching ones
42
- filtered.push({
43
- ...node,
44
- children: childMatches
45
- });
46
- }
47
- }
48
- }
49
- return filtered;
50
- };
51
- return filterTreeData(_global.globalData.value);
52
- });
53
- }, []);
54
- const flattenedFilteredNodes = _react.default.useMemo(() => {
55
- return (0, _signalsReact.computed)(() => {
56
- const flattenTreeData = function (_nodes) {
57
- let level = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : 0;
58
- let flattened = [];
59
- for (let node of _nodes) {
60
- flattened.push({
61
- ...node,
62
- level
63
- });
64
- if (node.children && _global.expanded.value.has(node.id)) {
65
- flattened = [...flattened, ...flattenTreeData(node.children, level + 1)];
29
+ const {
30
+ expanded,
31
+ globalData,
32
+ updatedInnerMostChildrenIds,
33
+ searchKeys,
34
+ searchText
35
+ } = (0, _global.useStore)();
36
+ const [filteredTree, setFilteredTree] = (0, _react.useState)([]);
37
+ const [flattenedFilteredNodes, setFlattenedFilteredNodes] = (0, _react.useState)([]);
38
+ (0, _react.useEffect)(() => {
39
+ const searchTrimmed = searchText.trim().toLowerCase();
40
+ const filterTreeData = _nodes => {
41
+ let filtered = [];
42
+ for (let node of _nodes) {
43
+ if (!searchTrimmed || (0, _helpers.doesNodeContainSearchTerm)(node, searchTrimmed, searchKeys)) {
44
+ // If node itself matches, include it and all its descendants
45
+ filtered.push(node);
46
+ } else if (node.children) {
47
+ // If node does not match, check its children and include them if they match
48
+ const childMatches = filterTreeData(node.children);
49
+ if (childMatches.length > 0) {
50
+ // If any children match, include the node, replacing its children with the matching ones
51
+ filtered.push({
52
+ ...node,
53
+ children: childMatches
54
+ });
66
55
  }
67
56
  }
68
- return flattened;
69
- };
70
- return flattenTreeData(filteredTree.value);
71
- });
72
- // eslint-disable-next-line react-hooks/exhaustive-deps
73
- }, []);
57
+ }
58
+ return filtered;
59
+ };
60
+ const tempFilterTree = filterTreeData(globalData);
61
+ setFilteredTree(tempFilterTree);
62
+ }, [searchText, searchKeys, globalData]);
74
63
  _react.default.useEffect(() => {
75
- (0, _signalsReact.effect)(() => {
76
- const allLeafIds = [];
77
- const getLeafNodes = _nodes => {
78
- for (let node of _nodes) {
79
- if (node.children) {
80
- getLeafNodes(node.children);
81
- } else {
82
- allLeafIds.push(node.id);
83
- }
64
+ const flattenTreeData = function (_nodes) {
65
+ let level = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : 0;
66
+ let flattened = [];
67
+ for (let node of _nodes) {
68
+ flattened.push({
69
+ ...node,
70
+ level
71
+ });
72
+ if (node.children && expanded.has(node.id)) {
73
+ flattened = [...flattened, ...flattenTreeData(node.children, level + 1)];
84
74
  }
85
- };
86
- getLeafNodes(filteredTree.value);
87
- _global.innerMostChildrenIds.value = allLeafIds;
88
- });
89
- // eslint-disable-next-line react-hooks/exhaustive-deps
90
- }, []);
75
+ }
76
+ return flattened;
77
+ };
78
+ const tempFlattenTreeData = flattenTreeData(filteredTree);
79
+ setFlattenedFilteredNodes(tempFlattenTreeData);
80
+ }, [filteredTree, expanded]);
81
+ (0, _react.useEffect)(() => {
82
+ const allLeafIds = [];
83
+ const getLeafNodes = _nodes => {
84
+ for (let node of _nodes) {
85
+ if (node.children) {
86
+ getLeafNodes(node.children);
87
+ } else {
88
+ allLeafIds.push(node.id);
89
+ }
90
+ }
91
+ };
92
+ getLeafNodes(filteredTree);
93
+ updatedInnerMostChildrenIds(allLeafIds);
94
+ }, [filteredTree, updatedInnerMostChildrenIds]);
91
95
  const nodeRenderer = _react.default.useCallback(_ref => {
92
96
  let {
93
97
  item
@@ -107,7 +111,7 @@ function _NodeList(props) {
107
111
  removeClippedSubviews: true,
108
112
  keyboardShouldPersistTaps: "handled",
109
113
  drawDistance: 50,
110
- data: flattenedFilteredNodes.value,
114
+ data: flattenedFilteredNodes,
111
115
  renderItem: nodeRenderer,
112
116
  keyExtractor: keyExtractor,
113
117
  ListHeaderComponent: /*#__PURE__*/_react.default.createElement(HeaderFooterView, null),
@@ -120,42 +124,44 @@ function HeaderFooterView() {
120
124
  style: styles.defaultHeaderFooter
121
125
  });
122
126
  }
127
+ function getValue(isChecked, isIndeterminate) {
128
+ if (isIndeterminate) {
129
+ return 'indeterminate';
130
+ } else if (isChecked) {
131
+ return true;
132
+ } else {
133
+ return false;
134
+ }
135
+ }
123
136
  const Node = /*#__PURE__*/_react.default.memo(_Node);
124
137
  function _Node(props) {
125
- var _node$value$children;
138
+ var _node$children;
126
139
  const {
127
- node: _node,
140
+ node,
128
141
  level,
129
142
  checkBoxViewStyleProps,
130
143
  ExpandCollapseIconComponent = _CustomExpandCollapseIcon.default,
131
144
  CheckboxComponent = _CheckboxView.CheckboxView,
132
145
  ExpandCollapseTouchableComponent = _reactNative.TouchableOpacity
133
146
  } = props;
134
- const node = (0, _signalsReact.useSignal)(_node);
135
- _react.default.useEffect(() => {
136
- node.value = _node;
137
- // eslint-disable-next-line react-hooks/exhaustive-deps
138
- }, [_node]);
139
- const isChecked = (0, _signalsReact.useComputed)(() => _global.state.value.checked.has(node.value.id));
140
- const isIndeterminate = (0, _signalsReact.useComputed)(() => _global.state.value.indeterminate.has(node.value.id));
141
- const value = (0, _signalsReact.useComputed)(() => {
142
- if (isIndeterminate.value) {
143
- return 'indeterminate';
144
- } else if (isChecked.value) {
145
- return true;
146
- } else {
147
- return false;
148
- }
149
- });
150
- const isExpanded = (0, _signalsReact.useComputed)(() => _global.expanded.value.has(node.value.id));
147
+ const {
148
+ expanded,
149
+ checked,
150
+ indeterminate
151
+ } = (0, _global.useStore)();
152
+ const isChecked = checked.has(node.id);
153
+ const isIndeterminate = indeterminate.has(node.id);
154
+ const isExpanded = expanded.has(node.id);
155
+ const [value, setValue] = (0, _react.useState)(getValue(isChecked, isIndeterminate));
156
+ (0, _react.useEffect)(() => {
157
+ setValue(getValue(isChecked, isIndeterminate));
158
+ }, [isChecked, isIndeterminate]);
151
159
  const _onToggleExpand = _react.default.useCallback(() => {
152
- (0, _helpers.handleToggleExpand)(node.value.id);
153
- // eslint-disable-next-line react-hooks/exhaustive-deps
154
- }, []);
160
+ (0, _helpers.handleToggleExpand)(node.id);
161
+ }, [node.id]);
155
162
  const _onCheck = _react.default.useCallback(() => {
156
- (0, _helpers.toggleCheckboxes)([node.value.id]);
157
- // eslint-disable-next-line react-hooks/exhaustive-deps
158
- }, []);
163
+ (0, _helpers.toggleCheckboxes)([node.id]);
164
+ }, [node.id]);
159
165
  return /*#__PURE__*/_react.default.createElement(_reactNative.View, {
160
166
  style: [styles.nodeParentView, {
161
167
  marginLeft: level * 15
@@ -163,14 +169,14 @@ function _Node(props) {
163
169
  }, /*#__PURE__*/_react.default.createElement(_reactNative.View, {
164
170
  style: styles.nodeCheckboxAndArrowRow
165
171
  }, /*#__PURE__*/_react.default.createElement(CheckboxComponent, _extends({
166
- text: node.value.name,
172
+ text: node.name,
167
173
  onValueChange: _onCheck,
168
- value: value.value
169
- }, checkBoxViewStyleProps)), (_node$value$children = node.value.children) !== null && _node$value$children !== void 0 && _node$value$children.length ? /*#__PURE__*/_react.default.createElement(ExpandCollapseTouchableComponent, {
174
+ value: value
175
+ }, checkBoxViewStyleProps)), (_node$children = node.children) !== null && _node$children !== void 0 && _node$children.length ? /*#__PURE__*/_react.default.createElement(ExpandCollapseTouchableComponent, {
170
176
  style: styles.nodeExpandableArrowTouchable,
171
177
  onPress: _onToggleExpand
172
178
  }, /*#__PURE__*/_react.default.createElement(ExpandCollapseIconComponent, {
173
- isExpanded: isExpanded.value
179
+ isExpanded: isExpanded
174
180
  })) : null));
175
181
  }
176
182
  ;
@@ -1 +1 @@
1
- {"version":3,"names":["_react","_interopRequireDefault","require","_reactNative","_signalsReact","_flashList","_global","_helpers","_CheckboxView","_CustomExpandCollapseIcon","obj","__esModule","default","_extends","Object","assign","bind","target","i","arguments","length","source","key","prototype","hasOwnProperty","call","apply","NodeList","React","memo","_NodeList","_default","exports","props","treeFlashListProps","checkBoxViewStyleProps","CheckboxComponent","ExpandCollapseIconComponent","ExpandCollapseTouchableComponent","filteredTree","useMemo","computed","searchTrimmed","searchText","value","trim","toLowerCase","filterTreeData","_nodes","filtered","node","doesNodeContainSearchTerm","searchKeys","push","children","childMatches","globalData","flattenedFilteredNodes","flattenTreeData","level","undefined","flattened","expanded","has","id","useEffect","effect","allLeafIds","getLeafNodes","innerMostChildrenIds","nodeRenderer","useCallback","_ref","item","createElement","Node","keyExtractor","FlashList","estimatedItemSize","removeClippedSubviews","keyboardShouldPersistTaps","drawDistance","data","renderItem","ListHeaderComponent","HeaderFooterView","ListFooterComponent","View","style","styles","defaultHeaderFooter","_Node","_node$value$children","_node","CustomExpandCollapseIcon","CheckboxView","TouchableOpacity","useSignal","isChecked","useComputed","state","checked","isIndeterminate","indeterminate","isExpanded","_onToggleExpand","handleToggleExpand","_onCheck","toggleCheckboxes","nodeParentView","marginLeft","nodeCheckboxAndArrowRow","text","name","onValueChange","nodeExpandableArrowTouchable","onPress","StyleSheet","create","padding","flex","flexDirection","alignItems","minWidth"],"sourceRoot":"../../../src","sources":["components/NodeList.tsx"],"mappings":"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"}
1
+ {"version":3,"names":["_react","_interopRequireWildcard","require","_reactNative","_flashList","_global","_helpers","_CheckboxView","_CustomExpandCollapseIcon","_interopRequireDefault","obj","__esModule","default","_getRequireWildcardCache","nodeInterop","WeakMap","cacheBabelInterop","cacheNodeInterop","cache","has","get","newObj","hasPropertyDescriptor","Object","defineProperty","getOwnPropertyDescriptor","key","prototype","hasOwnProperty","call","desc","set","_extends","assign","bind","target","i","arguments","length","source","apply","NodeList","React","memo","_NodeList","_default","exports","props","treeFlashListProps","checkBoxViewStyleProps","CheckboxComponent","ExpandCollapseIconComponent","ExpandCollapseTouchableComponent","expanded","globalData","updatedInnerMostChildrenIds","searchKeys","searchText","useStore","filteredTree","setFilteredTree","useState","flattenedFilteredNodes","setFlattenedFilteredNodes","useEffect","searchTrimmed","trim","toLowerCase","filterTreeData","_nodes","filtered","node","doesNodeContainSearchTerm","push","children","childMatches","tempFilterTree","flattenTreeData","level","undefined","flattened","id","tempFlattenTreeData","allLeafIds","getLeafNodes","nodeRenderer","useCallback","_ref","item","createElement","Node","keyExtractor","FlashList","estimatedItemSize","removeClippedSubviews","keyboardShouldPersistTaps","drawDistance","data","renderItem","ListHeaderComponent","HeaderFooterView","ListFooterComponent","View","style","styles","defaultHeaderFooter","getValue","isChecked","isIndeterminate","_Node","_node$children","CustomExpandCollapseIcon","CheckboxView","TouchableOpacity","checked","indeterminate","isExpanded","value","setValue","_onToggleExpand","handleToggleExpand","_onCheck","toggleCheckboxes","nodeParentView","marginLeft","nodeCheckboxAndArrowRow","text","name","onValueChange","nodeExpandableArrowTouchable","onPress","StyleSheet","create","padding","flex","flexDirection","alignItems","minWidth"],"sourceRoot":"../../../src","sources":["components/NodeList.tsx"],"mappings":"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"}
@@ -6,7 +6,7 @@ Object.defineProperty(exports, "__esModule", {
6
6
  exports.collapseAll = collapseAll;
7
7
  exports.expandAll = expandAll;
8
8
  exports.handleToggleExpand = handleToggleExpand;
9
- var _global = require("../signals/global.signals");
9
+ var _global = require("../store/global.store");
10
10
  /**
11
11
  * Toggle the expanded state of a tree node by its ID.
12
12
  *
@@ -16,8 +16,14 @@ var _global = require("../signals/global.signals");
16
16
  * @param id - The ID of the tree node to toggle.
17
17
  */
18
18
  function handleToggleExpand(id) {
19
+ const {
20
+ globalData,
21
+ expanded,
22
+ updateExpanded
23
+ } = _global.useStore.getState();
24
+
19
25
  // Create a new Set based on the current expanded state
20
- const newExpanded = new Set(_global.expanded.value);
26
+ const newExpanded = new Set(expanded);
21
27
 
22
28
  /**
23
29
  * Recursively deletes a node and its descendants from the expanded set.
@@ -54,8 +60,8 @@ function handleToggleExpand(id) {
54
60
  }
55
61
 
56
62
  // Find the node to expand or collapse
57
- const node = findNode(_global.globalData.value);
58
- if (_global.expanded.value.has(id)) {
63
+ const node = findNode(globalData);
64
+ if (expanded.has(id)) {
59
65
  // If the node is currently expanded, collapse it and its descendants
60
66
  newExpanded.delete(id);
61
67
  if (node) {
@@ -67,7 +73,7 @@ function handleToggleExpand(id) {
67
73
  }
68
74
 
69
75
  // Set the new expanded state
70
- _global.expanded.value = newExpanded;
76
+ updateExpanded(newExpanded);
71
77
  }
72
78
  ;
73
79
 
@@ -75,9 +81,13 @@ function handleToggleExpand(id) {
75
81
  * Expand all nodes in the tree.
76
82
  */
77
83
  function expandAll() {
84
+ const {
85
+ nodeMap,
86
+ updateExpanded
87
+ } = _global.useStore.getState();
78
88
  // Create a new Set containing the IDs of all nodes
79
- const newExpanded = new Set(_global.nodeMap.value.keys());
80
- _global.expanded.value = newExpanded;
89
+ const newExpanded = new Set(nodeMap.keys());
90
+ updateExpanded(newExpanded);
81
91
  }
82
92
  ;
83
93
 
@@ -85,9 +95,12 @@ function expandAll() {
85
95
  * Collapse all nodes in the tree.
86
96
  */
87
97
  function collapseAll() {
98
+ const {
99
+ updateExpanded
100
+ } = _global.useStore.getState();
88
101
  // Create an empty Set
89
102
  const newExpanded = new Set();
90
- _global.expanded.value = newExpanded;
103
+ updateExpanded(newExpanded);
91
104
  }
92
105
  ;
93
106
  //# sourceMappingURL=expandCollapse.helper.js.map
@@ -1 +1 @@
1
- {"version":3,"names":["_global","require","handleToggleExpand","id","newExpanded","Set","expanded","value","deleteChildrenFromExpanded","node","children","child","delete","findNode","nodes","found","undefined","globalData","has","add","expandAll","nodeMap","keys","collapseAll"],"sourceRoot":"../../../src","sources":["helpers/expandCollapse.helper.ts"],"mappings":";;;;;;;;AACA,IAAAA,OAAA,GAAAC,OAAA;AAMA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACO,SAASC,kBAAkBA,CAACC,EAAU,EAAE;EAC3C;EACA,MAAMC,WAAW,GAAG,IAAIC,GAAG,CAACC,gBAAQ,CAACC,KAAK,CAAC;;EAE3C;AACJ;AACA;AACA;AACA;EACI,SAASC,0BAA0BA,CAACC,IAAc,EAAE;IAChD,IAAIA,IAAI,CAACC,QAAQ,EAAE;MACf,KAAK,IAAIC,KAAK,IAAIF,IAAI,CAACC,QAAQ,EAAE;QAC7BN,WAAW,CAACQ,MAAM,CAACD,KAAK,CAACR,EAAE,CAAC;QAC5BK,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,CAACN,EAAE,KAAKA,EAAE,EAAE;QAChB,OAAOM,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,CAACI,kBAAU,CAACV,KAAK,CAAC;EAEvC,IAAID,gBAAQ,CAACC,KAAK,CAACW,GAAG,CAACf,EAAE,CAAC,EAAE;IACxB;IACAC,WAAW,CAACQ,MAAM,CAACT,EAAE,CAAC;IACtB,IAAIM,IAAI,EAAE;MACND,0BAA0B,CAACC,IAAI,CAAC;IACpC;EACJ,CAAC,MAAM;IACH;IACAL,WAAW,CAACe,GAAG,CAAChB,EAAE,CAAC;EACvB;;EAEA;EACAG,gBAAQ,CAACC,KAAK,GAAGH,WAAW;AAChC;AAAC;;AAED;AACA;AACA;AACO,SAASgB,SAASA,CAAA,EAAG;EACxB;EACA,MAAMhB,WAAW,GAAG,IAAIC,GAAG,CAACgB,eAAO,CAACd,KAAK,CAACe,IAAI,CAAC,CAAC,CAAC;EACjDhB,gBAAQ,CAACC,KAAK,GAAGH,WAAW;AAChC;AAAC;;AAED;AACA;AACA;AACO,SAASmB,WAAWA,CAAA,EAAG;EAC1B;EACA,MAAMnB,WAAW,GAAG,IAAIC,GAAG,CAAS,CAAC;EACrCC,gBAAQ,CAACC,KAAK,GAAGH,WAAW;AAChC;AAAC"}
1
+ {"version":3,"names":["_global","require","handleToggleExpand","id","globalData","expanded","updateExpanded","useStore","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,OAAA,GAAAC,OAAA;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACO,SAASC,kBAAkBA,CAACC,EAAU,EAAE;EAC3C,MAAM;IAAEC,UAAU;IAAEC,QAAQ;IAAEC;EAAe,CAAC,GAAGC,gBAAQ,CAACC,QAAQ,CAAC,CAAC;;EAEpE;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,UAAU,CAAC;EAEjC,IAAIC,QAAQ,CAACe,GAAG,CAACjB,EAAE,CAAC,EAAE;IAClB;IACAM,WAAW,CAACM,MAAM,CAACZ,EAAE,CAAC;IACtB,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,gBAAQ,CAACC,QAAQ,CAAC,CAAC;EACvD;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,gBAAQ,CAACC,QAAQ,CAAC,CAAC;EAC9C;EACA,MAAMC,WAAW,GAAG,IAAIC,GAAG,CAAS,CAAC;EACrCJ,cAAc,CAACG,WAAW,CAAC;AAC/B;AAAC"}