react-native-tree-multi-select 1.9.2 → 1.9.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.
- package/README.md +1 -1
- package/lib/commonjs/handlers/ScrollToNodeHandler.js +2 -2
- package/lib/commonjs/handlers/ScrollToNodeHandler.js.map +1 -1
- package/lib/commonjs/utils/useDeepCompareEffect.js +2 -2
- package/lib/commonjs/utils/useDeepCompareEffect.js.map +1 -1
- package/lib/module/handlers/ScrollToNodeHandler.js +2 -2
- package/lib/module/handlers/ScrollToNodeHandler.js.map +1 -1
- package/lib/module/utils/useDeepCompareEffect.js +2 -2
- package/lib/module/utils/useDeepCompareEffect.js.map +1 -1
- package/lib/typescript/utils/useDeepCompareEffect.d.ts.map +1 -1
- package/package.json +2 -3
- package/src/handlers/ScrollToNodeHandler.tsx +2 -2
- package/src/utils/useDeepCompareEffect.ts +5 -2
package/README.md
CHANGED
|
@@ -9,7 +9,7 @@ var _expandCollapse = require("../helpers/expandCollapse.helper");
|
|
|
9
9
|
var _treeView = require("../store/treeView.store");
|
|
10
10
|
var _shallow = require("zustand/react/shallow");
|
|
11
11
|
var _typedMemo = require("../utils/typedMemo");
|
|
12
|
-
var
|
|
12
|
+
var _fastIsEqual = require("fast-is-equal");
|
|
13
13
|
function _interopRequireDefault(e) { return e && e.__esModule ? e : { default: e }; }
|
|
14
14
|
/**
|
|
15
15
|
* ScrollToNodeHandler Component
|
|
@@ -99,7 +99,7 @@ function _innerScrollToNodeHandler(props, ref) {
|
|
|
99
99
|
perform the scroll using the latest node list. */
|
|
100
100
|
_react.default.useLayoutEffect(() => {
|
|
101
101
|
if (queuedScrollToNodeParams.current === null) return;
|
|
102
|
-
if (!(0,
|
|
102
|
+
if (!(0, _fastIsEqual.fastIsEqual)(expandAndScrollToNodeQueue, [ExpandQueueAction.EXPANDED, ExpandQueueAction.RENDERED])) {
|
|
103
103
|
return;
|
|
104
104
|
}
|
|
105
105
|
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["_react","_interopRequireDefault","require","_expandCollapse","_treeView","_shallow","_typedMemo","
|
|
1
|
+
{"version":3,"names":["_react","_interopRequireDefault","require","_expandCollapse","_treeView","_shallow","_typedMemo","_fastIsEqual","e","__esModule","default","ExpandQueueAction","_innerScrollToNodeHandler","props","ref","storeId","flashListRef","flattenedFilteredNodes","setInitialScrollIndex","initialScrollNodeID","expanded","childToParentMap","useTreeViewStore","useShallow","state","React","useImperativeHandle","scrollToNodeID","params","queuedScrollToNodeParams","current","setExpandAndScrollToNodeQueue","EXPANDED","expandNodes","nodeId","expandScrolledNode","useRef","expandAndScrollToNodeQueue","useState","latestFlattenedFilteredNodesRef","useEffect","prevQueue","includes","RENDERED","useLayoutEffect","fastIsEqual","parentId","has","get","animated","viewOffset","viewPosition","scrollToItem","index","findIndex","item","id","scrollToIndex","__DEV__","console","info","initialScrollDone","_ScrollToNodeHandler","forwardRef","ScrollToNodeHandler","exports","typedMemo"],"sourceRoot":"../../../src","sources":["handlers/ScrollToNodeHandler.tsx"],"mappings":"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","ignoreList":[]}
|
|
@@ -5,7 +5,7 @@ Object.defineProperty(exports, "__esModule", {
|
|
|
5
5
|
});
|
|
6
6
|
exports.default = useDeepCompareEffect;
|
|
7
7
|
var _react = _interopRequireDefault(require("react"));
|
|
8
|
-
var
|
|
8
|
+
var _fastIsEqual = require("fast-is-equal");
|
|
9
9
|
function _interopRequireDefault(e) { return e && e.__esModule ? e : { default: e }; }
|
|
10
10
|
/**
|
|
11
11
|
* Deep compare effect hook.
|
|
@@ -25,7 +25,7 @@ function useDeepCompareEffect(effect, deps) {
|
|
|
25
25
|
const dependenciesRef = _react.default.useRef(memoizedDependencies);
|
|
26
26
|
|
|
27
27
|
// Check for dependency changes
|
|
28
|
-
const dependenciesChanged = !(0,
|
|
28
|
+
const dependenciesChanged = !(0, _fastIsEqual.fastIsEqual)(dependenciesRef.current, memoizedDependencies);
|
|
29
29
|
if (dependenciesChanged) {
|
|
30
30
|
dependenciesRef.current = memoizedDependencies;
|
|
31
31
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["_react","_interopRequireDefault","require","
|
|
1
|
+
{"version":3,"names":["_react","_interopRequireDefault","require","_fastIsEqual","e","__esModule","default","useDeepCompareEffect","effect","deps","firstRenderRef","React","useRef","memoizedDependencies","useMemo","dependenciesRef","dependenciesChanged","fastIsEqual","current","useEffect"],"sourceRoot":"../../../src","sources":["utils/useDeepCompareEffect.ts"],"mappings":";;;;;;AAAA,IAAAA,MAAA,GAAAC,sBAAA,CAAAC,OAAA;AACA,IAAAC,YAAA,GAAAD,OAAA;AAA4C,SAAAD,uBAAAG,CAAA,WAAAA,CAAA,IAAAA,CAAA,CAAAC,UAAA,GAAAD,CAAA,KAAAE,OAAA,EAAAF,CAAA;AAE5C;AACA;AACA;AACA;AACA;AACA;AACA;AACe,SAASG,oBAAoBA,CAC1CC,MAA4B,EAC5BC,IAA0B,EAC1B;EACA;EACA,MAAMC,cAAc,GAAGC,cAAK,CAACC,MAAM,CAAU,IAAI,CAAC;;EAElD;EACA,MAAMC,oBAAoB,GAAGF,cAAK,CAACG,OAAO,CAAC,MAAML,IAAI,EAAE,CAACA,IAAI,CAAC,CAAC;;EAE9D;EACA,MAAMM,eAAe,GAAGJ,cAAK,CAACC,MAAM,CAAuBC,oBAAoB,CAAC;;EAEhF;EACA,MAAMG,mBAAmB,GAAG,CAAC,IAAAC,wBAAW,EACtCF,eAAe,CAACG,OAAO,EACvBL,oBACF,CAAC;EACD,IAAIG,mBAAmB,EAAE;IACvBD,eAAe,CAACG,OAAO,GAAGL,oBAAoB;EAChD;EAEAF,cAAK,CAACQ,SAAS,CAAC,MAAM;IACpB,IAAIT,cAAc,CAACQ,OAAO,EAAE;MAC1BR,cAAc,CAACQ,OAAO,GAAG,KAAK;IAChC;IAEA,OAAOV,MAAM,CAAC,CAAC;IACf;EACF,CAAC,EAAE,CAACQ,mBAAmB,CAAC,CAAC,CAAC,CAAC;AAC7B","ignoreList":[]}
|
|
@@ -39,7 +39,7 @@ import { expandNodes } from "../helpers/expandCollapse.helper";
|
|
|
39
39
|
import { useTreeViewStore } from "../store/treeView.store";
|
|
40
40
|
import { useShallow } from "zustand/react/shallow";
|
|
41
41
|
import { typedMemo } from "../utils/typedMemo";
|
|
42
|
-
import {
|
|
42
|
+
import { fastIsEqual } from "fast-is-equal";
|
|
43
43
|
// Enum representing the two milestones needed before scrolling
|
|
44
44
|
var ExpandQueueAction = /*#__PURE__*/function (ExpandQueueAction) {
|
|
45
45
|
ExpandQueueAction[ExpandQueueAction["EXPANDED"] = 0] = "EXPANDED";
|
|
@@ -95,7 +95,7 @@ function _innerScrollToNodeHandler(props, ref) {
|
|
|
95
95
|
perform the scroll using the latest node list. */
|
|
96
96
|
React.useLayoutEffect(() => {
|
|
97
97
|
if (queuedScrollToNodeParams.current === null) return;
|
|
98
|
-
if (!
|
|
98
|
+
if (!fastIsEqual(expandAndScrollToNodeQueue, [ExpandQueueAction.EXPANDED, ExpandQueueAction.RENDERED])) {
|
|
99
99
|
return;
|
|
100
100
|
}
|
|
101
101
|
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["React","expandNodes","useTreeViewStore","useShallow","typedMemo","
|
|
1
|
+
{"version":3,"names":["React","expandNodes","useTreeViewStore","useShallow","typedMemo","fastIsEqual","ExpandQueueAction","_innerScrollToNodeHandler","props","ref","storeId","flashListRef","flattenedFilteredNodes","setInitialScrollIndex","initialScrollNodeID","expanded","childToParentMap","state","useImperativeHandle","scrollToNodeID","params","queuedScrollToNodeParams","current","setExpandAndScrollToNodeQueue","EXPANDED","nodeId","expandScrolledNode","useRef","expandAndScrollToNodeQueue","useState","latestFlattenedFilteredNodesRef","useEffect","prevQueue","includes","RENDERED","useLayoutEffect","parentId","has","get","animated","viewOffset","viewPosition","scrollToItem","index","findIndex","item","id","scrollToIndex","__DEV__","console","info","initialScrollDone","_ScrollToNodeHandler","forwardRef","ScrollToNodeHandler"],"sourceRoot":"../../../src","sources":["handlers/ScrollToNodeHandler.tsx"],"mappings":"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","ignoreList":[]}
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
|
|
3
3
|
import React from "react";
|
|
4
|
-
import
|
|
4
|
+
import { fastIsEqual } from "fast-is-equal";
|
|
5
5
|
|
|
6
6
|
/**
|
|
7
7
|
* Deep compare effect hook.
|
|
@@ -21,7 +21,7 @@ export default function useDeepCompareEffect(effect, deps) {
|
|
|
21
21
|
const dependenciesRef = React.useRef(memoizedDependencies);
|
|
22
22
|
|
|
23
23
|
// Check for dependency changes
|
|
24
|
-
const dependenciesChanged = !
|
|
24
|
+
const dependenciesChanged = !fastIsEqual(dependenciesRef.current, memoizedDependencies);
|
|
25
25
|
if (dependenciesChanged) {
|
|
26
26
|
dependenciesRef.current = memoizedDependencies;
|
|
27
27
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["React","
|
|
1
|
+
{"version":3,"names":["React","fastIsEqual","useDeepCompareEffect","effect","deps","firstRenderRef","useRef","memoizedDependencies","useMemo","dependenciesRef","dependenciesChanged","current","useEffect"],"sourceRoot":"../../../src","sources":["utils/useDeepCompareEffect.ts"],"mappings":";;AAAA,OAAOA,KAAK,MAAM,OAAO;AACzB,SAASC,WAAW,QAAQ,eAAe;;AAE3C;AACA;AACA;AACA;AACA;AACA;AACA;AACA,eAAe,SAASC,oBAAoBA,CAC1CC,MAA4B,EAC5BC,IAA0B,EAC1B;EACA;EACA,MAAMC,cAAc,GAAGL,KAAK,CAACM,MAAM,CAAU,IAAI,CAAC;;EAElD;EACA,MAAMC,oBAAoB,GAAGP,KAAK,CAACQ,OAAO,CAAC,MAAMJ,IAAI,EAAE,CAACA,IAAI,CAAC,CAAC;;EAE9D;EACA,MAAMK,eAAe,GAAGT,KAAK,CAACM,MAAM,CAAuBC,oBAAoB,CAAC;;EAEhF;EACA,MAAMG,mBAAmB,GAAG,CAACT,WAAW,CACtCQ,eAAe,CAACE,OAAO,EACvBJ,oBACF,CAAC;EACD,IAAIG,mBAAmB,EAAE;IACvBD,eAAe,CAACE,OAAO,GAAGJ,oBAAoB;EAChD;EAEAP,KAAK,CAACY,SAAS,CAAC,MAAM;IACpB,IAAIP,cAAc,CAACM,OAAO,EAAE;MAC1BN,cAAc,CAACM,OAAO,GAAG,KAAK;IAChC;IAEA,OAAOR,MAAM,CAAC,CAAC;IACf;EACF,CAAC,EAAE,CAACO,mBAAmB,CAAC,CAAC,CAAC,CAAC;AAC7B","ignoreList":[]}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"useDeepCompareEffect.d.ts","sourceRoot":"","sources":["../../../src/utils/useDeepCompareEffect.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,MAAM,OAAO,CAAC;AAG1B;;;;;;GAMG;AACH,MAAM,CAAC,OAAO,UAAU,oBAAoB,CAC1C,MAAM,EAAE,KAAK,CAAC,cAAc,EAC5B,IAAI,EAAE,KAAK,CAAC,cAAc,
|
|
1
|
+
{"version":3,"file":"useDeepCompareEffect.d.ts","sourceRoot":"","sources":["../../../src/utils/useDeepCompareEffect.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,MAAM,OAAO,CAAC;AAG1B;;;;;;GAMG;AACH,MAAM,CAAC,OAAO,UAAU,oBAAoB,CAC1C,MAAM,EAAE,KAAK,CAAC,cAAc,EAC5B,IAAI,EAAE,KAAK,CAAC,cAAc,QA4B3B"}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "react-native-tree-multi-select",
|
|
3
|
-
"version": "1.9.
|
|
3
|
+
"version": "1.9.3",
|
|
4
4
|
"description": "A super-fast, customizable tree view component for React Native with multi-selection, checkboxes, and search filtering capabilities.",
|
|
5
5
|
"main": "lib/commonjs/index.js",
|
|
6
6
|
"module": "lib/module/index.js",
|
|
@@ -96,7 +96,6 @@
|
|
|
96
96
|
"@testing-library/react-native": "^12.6.1",
|
|
97
97
|
"@types/color": "^3.0.6",
|
|
98
98
|
"@types/jest": "^29.5.3",
|
|
99
|
-
"@types/lodash": "^4.17.16",
|
|
100
99
|
"@types/react": "^18.0.24",
|
|
101
100
|
"@types/react-native": "0.70.0",
|
|
102
101
|
"@types/react-native-vector-icons": "^6.4.18",
|
|
@@ -208,7 +207,7 @@
|
|
|
208
207
|
]
|
|
209
208
|
},
|
|
210
209
|
"dependencies": {
|
|
211
|
-
"
|
|
210
|
+
"fast-is-equal": "^1.0.2",
|
|
212
211
|
"react-native-uuid": "^2.0.3",
|
|
213
212
|
"zustand": "^5.0.3"
|
|
214
213
|
},
|
|
@@ -38,7 +38,7 @@ import { useTreeViewStore } from "../store/treeView.store";
|
|
|
38
38
|
import { useShallow } from "zustand/react/shallow";
|
|
39
39
|
import { __FlattenedTreeNode__ } from "../types/treeView.types";
|
|
40
40
|
import { typedMemo } from "../utils/typedMemo";
|
|
41
|
-
import {
|
|
41
|
+
import { fastIsEqual } from "fast-is-equal";
|
|
42
42
|
|
|
43
43
|
interface Props<ID> {
|
|
44
44
|
storeId: string;
|
|
@@ -131,7 +131,7 @@ function _innerScrollToNodeHandler<ID>(
|
|
|
131
131
|
if (queuedScrollToNodeParams.current === null)
|
|
132
132
|
return;
|
|
133
133
|
|
|
134
|
-
if (!
|
|
134
|
+
if (!fastIsEqual(
|
|
135
135
|
expandAndScrollToNodeQueue,
|
|
136
136
|
[ExpandQueueAction.EXPANDED, ExpandQueueAction.RENDERED]
|
|
137
137
|
)) {
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import React from "react";
|
|
2
|
-
import
|
|
2
|
+
import { fastIsEqual } from "fast-is-equal";
|
|
3
3
|
|
|
4
4
|
/**
|
|
5
5
|
* Deep compare effect hook.
|
|
@@ -22,7 +22,10 @@ export default function useDeepCompareEffect(
|
|
|
22
22
|
const dependenciesRef = React.useRef<React.DependencyList>(memoizedDependencies);
|
|
23
23
|
|
|
24
24
|
// Check for dependency changes
|
|
25
|
-
const dependenciesChanged = !
|
|
25
|
+
const dependenciesChanged = !fastIsEqual(
|
|
26
|
+
dependenciesRef.current,
|
|
27
|
+
memoizedDependencies
|
|
28
|
+
);
|
|
26
29
|
if (dependenciesChanged) {
|
|
27
30
|
dependenciesRef.current = memoizedDependencies;
|
|
28
31
|
}
|