@take-out/hooks 0.4.3 → 0.4.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.
- package/dist/cjs/index.cjs +7 -5
- package/dist/cjs/index.native.js +7 -5
- package/dist/cjs/index.native.js.map +1 -1
- package/dist/cjs/useClickOutside.cjs +24 -15
- package/dist/cjs/useClickOutside.native.js +34 -22
- package/dist/cjs/useClickOutside.native.js.map +1 -1
- package/dist/cjs/useDebouncePrepend.cjs +47 -27
- package/dist/cjs/useDebouncePrepend.native.js +48 -32
- package/dist/cjs/useDebouncePrepend.native.js.map +1 -1
- package/dist/cjs/useDeepMemoizedObject.cjs +154 -95
- package/dist/cjs/useDeepMemoizedObject.native.js +177 -111
- package/dist/cjs/useDeepMemoizedObject.native.js.map +1 -1
- package/dist/cjs/useDeepMemoizedObject.test.cjs +269 -199
- package/dist/cjs/useDeepMemoizedObject.test.native.js +265 -202
- package/dist/cjs/useDeepMemoizedObject.test.native.js.map +1 -1
- package/dist/cjs/useDeferredBoolean.cjs +20 -15
- package/dist/cjs/useDeferredBoolean.native.js +22 -17
- package/dist/cjs/useDeferredBoolean.native.js.map +1 -1
- package/dist/cjs/useEffectOnceGlobally.cjs +24 -12
- package/dist/cjs/useEffectOnceGlobally.native.js +27 -15
- package/dist/cjs/useEffectOnceGlobally.native.js.map +1 -1
- package/dist/cjs/useEvent.cjs +14 -11
- package/dist/cjs/useEvent.native.js +17 -12
- package/dist/cjs/useEvent.native.js.map +1 -1
- package/dist/cjs/useIsMounted.cjs +17 -14
- package/dist/cjs/useIsMounted.native.js +20 -17
- package/dist/cjs/useIsMounted.native.js.map +1 -1
- package/dist/cjs/useLastValue.cjs +13 -11
- package/dist/cjs/useLastValue.native.js +13 -11
- package/dist/cjs/useLastValue.native.js.map +1 -1
- package/dist/cjs/useLastValueIf.cjs +21 -14
- package/dist/cjs/useLastValueIf.native.js +21 -14
- package/dist/cjs/useLastValueIf.native.js.map +1 -1
- package/dist/cjs/useMemoStable.cjs +17 -14
- package/dist/cjs/useMemoStable.native.js +17 -14
- package/dist/cjs/useMemoStable.native.js.map +1 -1
- package/dist/cjs/useMemoizedObjectList.cjs +45 -29
- package/dist/cjs/useMemoizedObjectList.native.js +60 -39
- package/dist/cjs/useMemoizedObjectList.native.js.map +1 -1
- package/dist/cjs/useThrottle.cjs +34 -21
- package/dist/cjs/useThrottle.native.js +41 -27
- package/dist/cjs/useThrottle.native.js.map +1 -1
- package/dist/cjs/useWarnIfDepsChange.cjs +38 -27
- package/dist/cjs/useWarnIfDepsChange.native.js +38 -28
- package/dist/cjs/useWarnIfDepsChange.native.js.map +1 -1
- package/dist/cjs/useWarnIfMemoChangesOften.cjs +24 -15
- package/dist/cjs/useWarnIfMemoChangesOften.native.js +27 -21
- package/dist/cjs/useWarnIfMemoChangesOften.native.js.map +1 -1
- package/dist/esm/useClickOutside.mjs +10 -3
- package/dist/esm/useClickOutside.mjs.map +1 -1
- package/dist/esm/useClickOutside.native.js +20 -10
- package/dist/esm/useClickOutside.native.js.map +1 -1
- package/dist/esm/useDebouncePrepend.mjs +33 -15
- package/dist/esm/useDebouncePrepend.mjs.map +1 -1
- package/dist/esm/useDebouncePrepend.native.js +34 -20
- package/dist/esm/useDebouncePrepend.native.js.map +1 -1
- package/dist/esm/useDeepMemoizedObject.mjs +142 -85
- package/dist/esm/useDeepMemoizedObject.mjs.map +1 -1
- package/dist/esm/useDeepMemoizedObject.native.js +165 -101
- package/dist/esm/useDeepMemoizedObject.native.js.map +1 -1
- package/dist/esm/useDeepMemoizedObject.test.mjs +267 -197
- package/dist/esm/useDeepMemoizedObject.test.mjs.map +1 -1
- package/dist/esm/useDeepMemoizedObject.test.native.js +263 -200
- package/dist/esm/useDeepMemoizedObject.test.native.js.map +1 -1
- package/dist/esm/useDeferredBoolean.mjs +8 -5
- package/dist/esm/useDeferredBoolean.mjs.map +1 -1
- package/dist/esm/useDeferredBoolean.native.js +8 -5
- package/dist/esm/useDeferredBoolean.native.js.map +1 -1
- package/dist/esm/useEffectOnceGlobally.mjs +12 -2
- package/dist/esm/useEffectOnceGlobally.mjs.map +1 -1
- package/dist/esm/useEffectOnceGlobally.native.js +13 -3
- package/dist/esm/useEffectOnceGlobally.native.js.map +1 -1
- package/dist/esm/useEvent.mjs +2 -1
- package/dist/esm/useEvent.mjs.map +1 -1
- package/dist/esm/useEvent.native.js +5 -2
- package/dist/esm/useEvent.native.js.map +1 -1
- package/dist/esm/useIsMounted.mjs +5 -4
- package/dist/esm/useIsMounted.mjs.map +1 -1
- package/dist/esm/useIsMounted.native.js +5 -4
- package/dist/esm/useIsMounted.native.js.map +1 -1
- package/dist/esm/useLastValue.mjs +1 -1
- package/dist/esm/useLastValue.mjs.map +1 -1
- package/dist/esm/useLastValue.native.js +1 -1
- package/dist/esm/useLastValue.native.js.map +1 -1
- package/dist/esm/useLastValueIf.mjs +9 -4
- package/dist/esm/useLastValueIf.mjs.map +1 -1
- package/dist/esm/useLastValueIf.native.js +9 -4
- package/dist/esm/useLastValueIf.native.js.map +1 -1
- package/dist/esm/useMemoStable.mjs +3 -2
- package/dist/esm/useMemoStable.mjs.map +1 -1
- package/dist/esm/useMemoStable.native.js +3 -2
- package/dist/esm/useMemoStable.native.js.map +1 -1
- package/dist/esm/useMemoizedObjectList.mjs +31 -17
- package/dist/esm/useMemoizedObjectList.mjs.map +1 -1
- package/dist/esm/useMemoizedObjectList.native.js +46 -27
- package/dist/esm/useMemoizedObjectList.native.js.map +1 -1
- package/dist/esm/useThrottle.mjs +20 -9
- package/dist/esm/useThrottle.mjs.map +1 -1
- package/dist/esm/useThrottle.native.js +24 -12
- package/dist/esm/useThrottle.native.js.map +1 -1
- package/dist/esm/useWarnIfDepsChange.mjs +24 -15
- package/dist/esm/useWarnIfDepsChange.mjs.map +1 -1
- package/dist/esm/useWarnIfDepsChange.native.js +24 -16
- package/dist/esm/useWarnIfDepsChange.native.js.map +1 -1
- package/dist/esm/useWarnIfMemoChangesOften.mjs +10 -3
- package/dist/esm/useWarnIfMemoChangesOften.mjs.map +1 -1
- package/dist/esm/useWarnIfMemoChangesOften.native.js +10 -6
- package/dist/esm/useWarnIfMemoChangesOften.native.js.map +1 -1
- package/package.json +3 -3
package/dist/cjs/index.cjs
CHANGED
|
@@ -3,15 +3,17 @@ var __getOwnPropDesc = Object.getOwnPropertyDescriptor;
|
|
|
3
3
|
var __getOwnPropNames = Object.getOwnPropertyNames;
|
|
4
4
|
var __hasOwnProp = Object.prototype.hasOwnProperty;
|
|
5
5
|
var __copyProps = (to, from, except, desc) => {
|
|
6
|
-
|
|
6
|
+
if (from && typeof from === "object" || typeof from === "function") {
|
|
7
|
+
for (let key of __getOwnPropNames(from)) if (!__hasOwnProp.call(to, key) && key !== except) __defProp(to, key, {
|
|
7
8
|
get: () => from[key],
|
|
8
9
|
enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable
|
|
9
10
|
});
|
|
10
|
-
|
|
11
|
-
|
|
12
|
-
|
|
11
|
+
}
|
|
12
|
+
return to;
|
|
13
|
+
};
|
|
14
|
+
var __reExport = (target, mod, secondTarget) => (__copyProps(target, mod, "default"), secondTarget && __copyProps(secondTarget, mod, "default"));
|
|
13
15
|
var __toCommonJS = mod => __copyProps(__defProp({}, "__esModule", {
|
|
14
|
-
value:
|
|
16
|
+
value: true
|
|
15
17
|
}), mod);
|
|
16
18
|
var index_exports = {};
|
|
17
19
|
module.exports = __toCommonJS(index_exports);
|
package/dist/cjs/index.native.js
CHANGED
|
@@ -5,15 +5,17 @@ var __getOwnPropDesc = Object.getOwnPropertyDescriptor;
|
|
|
5
5
|
var __getOwnPropNames = Object.getOwnPropertyNames;
|
|
6
6
|
var __hasOwnProp = Object.prototype.hasOwnProperty;
|
|
7
7
|
var __copyProps = (to, from, except, desc) => {
|
|
8
|
-
|
|
8
|
+
if (from && typeof from === "object" || typeof from === "function") {
|
|
9
|
+
for (let key of __getOwnPropNames(from)) if (!__hasOwnProp.call(to, key) && key !== except) __defProp(to, key, {
|
|
9
10
|
get: () => from[key],
|
|
10
11
|
enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable
|
|
11
12
|
});
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
|
|
13
|
+
}
|
|
14
|
+
return to;
|
|
15
|
+
};
|
|
16
|
+
var __reExport = (target, mod, secondTarget) => (__copyProps(target, mod, "default"), secondTarget && __copyProps(secondTarget, mod, "default"));
|
|
15
17
|
var __toCommonJS = mod => __copyProps(__defProp({}, "__esModule", {
|
|
16
|
-
value:
|
|
18
|
+
value: true
|
|
17
19
|
}), mod);
|
|
18
20
|
var index_exports = {};
|
|
19
21
|
module.exports = __toCommonJS(index_exports);
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["__toCommonJS","mod","__copyProps","__defProp","value","index_exports","module","exports","__reExport","require"],"sources":["../../src/index.ts"],"sourcesContent":[null],"mappings":"
|
|
1
|
+
{"version":3,"names":["__toCommonJS","mod","__copyProps","__defProp","value","index_exports","module","exports","__reExport","require"],"sources":["../../src/index.ts"],"sourcesContent":[null],"mappings":";;;;;;;;;;;;;;;;AAAA,IAAAA,YAAA,GAAAC,GAAA,IAAAC,WAAA,CAAAC,SAAA;EAAAC,KAAA;AAAA,IAAAH,GAAA;AAAA,IAAAI,aAAA;AAAAC,MAAA,CAAAC,OAAA,GAAAP,YAAc,CAAAK,aAAA;AACdG,UAAA,CAAAH,aAAA,EAAcI,OAAA,iCAAAH,MADd,CAAAC,OAAA;AAEAC,UAAA,CAAAH,aAAA,EAAcI,OAAA,oCAAAH,MAFd,CAAAC,OAAA;AAGAC,UAAA,CAAAH,aAAA,EAAcI,OAAA,oCAHd,GAAAH,MAAA,CAAAC,OAAA;AAIAC,UAAA,CAAAH,aAAA,EAAcI,OAAA,oCAAAH,MAJd,CAAAC,OAAA;AAKAC,UAAA,CAAAH,aAAA,EAAcI,OAAA,oCALd,GAAAH,MAAA,CAAAC,OAAA;AAMAC,UAAA,CAAAH,aAAA,EAAcI,OAAA,8BANdH,MAAA,CAAAC,OAAA;AAOAC,UAAA,CAAAH,aAAA,EAAcI,OAAA,8BAAAH,MAPd,CAAAC,OAAA;AAQAC,UAAA,CAAAH,aAAA,EAAcI,OAAA,gCAAAH,MAAA,CARdC,OAAA;AASAC,UAAA,CAAAH,aAAA,EAAcI,OAAA,oCATd,GAAAH,MAAA,CAAAC,OAAA;AAUAC,UAAA,CAAAH,aAAA,EAAcI,OAAA,6BAVd,EAAAH,MAAA,CAAAC,OAAA;AAWAC,UAAA,CAAAH,aAAA,EAAcI,OAAA,6BAAAH,MAAA,CAAAC,OAXd;AAYAC,UAAA,CAAAH,aAAA,EAAcI,OAAA,qCAAAH,MAZd,CAAAC,OAAA","ignoreList":[]}
|
|
@@ -3,40 +3,49 @@ var __getOwnPropDesc = Object.getOwnPropertyDescriptor;
|
|
|
3
3
|
var __getOwnPropNames = Object.getOwnPropertyNames;
|
|
4
4
|
var __hasOwnProp = Object.prototype.hasOwnProperty;
|
|
5
5
|
var __export = (target, all) => {
|
|
6
|
-
|
|
7
|
-
|
|
8
|
-
|
|
9
|
-
|
|
10
|
-
|
|
11
|
-
|
|
12
|
-
|
|
6
|
+
for (var name in all) __defProp(target, name, {
|
|
7
|
+
get: all[name],
|
|
8
|
+
enumerable: true
|
|
9
|
+
});
|
|
10
|
+
};
|
|
11
|
+
var __copyProps = (to, from, except, desc) => {
|
|
12
|
+
if (from && typeof from === "object" || typeof from === "function") {
|
|
13
|
+
for (let key of __getOwnPropNames(from)) if (!__hasOwnProp.call(to, key) && key !== except) __defProp(to, key, {
|
|
13
14
|
get: () => from[key],
|
|
14
15
|
enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable
|
|
15
16
|
});
|
|
16
|
-
|
|
17
|
-
|
|
17
|
+
}
|
|
18
|
+
return to;
|
|
19
|
+
};
|
|
18
20
|
var __toCommonJS = mod => __copyProps(__defProp({}, "__esModule", {
|
|
19
|
-
value:
|
|
21
|
+
value: true
|
|
20
22
|
}), mod);
|
|
21
23
|
var useClickOutside_exports = {};
|
|
22
24
|
__export(useClickOutside_exports, {
|
|
23
25
|
useClickOutside: () => useClickOutside
|
|
24
26
|
});
|
|
25
27
|
module.exports = __toCommonJS(useClickOutside_exports);
|
|
26
|
-
var import_helpers = require("@take-out/helpers")
|
|
27
|
-
|
|
28
|
+
var import_helpers = require("@take-out/helpers");
|
|
29
|
+
var import_react = require("react");
|
|
28
30
|
const useClickOutside = ({
|
|
29
31
|
ref,
|
|
30
32
|
active,
|
|
31
33
|
onClickOutside
|
|
32
34
|
}) => {
|
|
33
35
|
(0, import_react.useEffect)(() => {
|
|
34
|
-
if (!import_helpers.isWeb
|
|
36
|
+
if (!import_helpers.isWeb) return;
|
|
37
|
+
if (!active) return;
|
|
38
|
+
if (!onClickOutside) return;
|
|
35
39
|
const handleClickOutside = e => {
|
|
36
40
|
const node = ref.current;
|
|
37
|
-
|
|
41
|
+
if (!node) return;
|
|
42
|
+
if (!(e.target instanceof HTMLElement)) return;
|
|
43
|
+
if (!node.contains(e.target)) {
|
|
44
|
+
onClickOutside();
|
|
45
|
+
}
|
|
38
46
|
};
|
|
39
|
-
|
|
47
|
+
document.addEventListener("click", handleClickOutside);
|
|
48
|
+
return () => {
|
|
40
49
|
document.removeEventListener("click", handleClickOutside);
|
|
41
50
|
};
|
|
42
51
|
}, [ref, active, onClickOutside]);
|
|
@@ -5,30 +5,36 @@ var __getOwnPropDesc = Object.getOwnPropertyDescriptor;
|
|
|
5
5
|
var __getOwnPropNames = Object.getOwnPropertyNames;
|
|
6
6
|
var __hasOwnProp = Object.prototype.hasOwnProperty;
|
|
7
7
|
var __export = (target, all) => {
|
|
8
|
-
|
|
9
|
-
|
|
10
|
-
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
|
|
8
|
+
for (var name in all) __defProp(target, name, {
|
|
9
|
+
get: all[name],
|
|
10
|
+
enumerable: true
|
|
11
|
+
});
|
|
12
|
+
};
|
|
13
|
+
var __copyProps = (to, from, except, desc) => {
|
|
14
|
+
if (from && typeof from === "object" || typeof from === "function") {
|
|
15
|
+
for (let key of __getOwnPropNames(from)) if (!__hasOwnProp.call(to, key) && key !== except) __defProp(to, key, {
|
|
15
16
|
get: () => from[key],
|
|
16
17
|
enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable
|
|
17
18
|
});
|
|
18
|
-
|
|
19
|
-
|
|
19
|
+
}
|
|
20
|
+
return to;
|
|
21
|
+
};
|
|
20
22
|
var __toCommonJS = mod => __copyProps(__defProp({}, "__esModule", {
|
|
21
|
-
value:
|
|
23
|
+
value: true
|
|
22
24
|
}), mod);
|
|
23
25
|
var useClickOutside_exports = {};
|
|
24
26
|
__export(useClickOutside_exports, {
|
|
25
27
|
useClickOutside: () => useClickOutside
|
|
26
28
|
});
|
|
27
29
|
module.exports = __toCommonJS(useClickOutside_exports);
|
|
28
|
-
var import_helpers = require("@take-out/helpers")
|
|
29
|
-
|
|
30
|
+
var import_helpers = require("@take-out/helpers");
|
|
31
|
+
var import_react = require("react");
|
|
30
32
|
function _instanceof(left, right) {
|
|
31
|
-
|
|
33
|
+
if (right != null && typeof Symbol !== "undefined" && right[Symbol.hasInstance]) {
|
|
34
|
+
return !!right[Symbol.hasInstance](left);
|
|
35
|
+
} else {
|
|
36
|
+
return left instanceof right;
|
|
37
|
+
}
|
|
32
38
|
}
|
|
33
39
|
var useClickOutside = function (param) {
|
|
34
40
|
var {
|
|
@@ -37,15 +43,21 @@ var useClickOutside = function (param) {
|
|
|
37
43
|
onClickOutside
|
|
38
44
|
} = param;
|
|
39
45
|
(0, import_react.useEffect)(function () {
|
|
40
|
-
if (import_helpers.isWeb
|
|
41
|
-
|
|
42
|
-
|
|
43
|
-
|
|
44
|
-
|
|
45
|
-
|
|
46
|
-
|
|
47
|
-
|
|
48
|
-
|
|
46
|
+
if (!import_helpers.isWeb) return;
|
|
47
|
+
if (!active) return;
|
|
48
|
+
if (!onClickOutside) return;
|
|
49
|
+
var handleClickOutside = function (e) {
|
|
50
|
+
var node = ref.current;
|
|
51
|
+
if (!node) return;
|
|
52
|
+
if (!_instanceof(e.target, HTMLElement)) return;
|
|
53
|
+
if (!node.contains(e.target)) {
|
|
54
|
+
onClickOutside();
|
|
55
|
+
}
|
|
56
|
+
};
|
|
57
|
+
document.addEventListener("click", handleClickOutside);
|
|
58
|
+
return function () {
|
|
59
|
+
document.removeEventListener("click", handleClickOutside);
|
|
60
|
+
};
|
|
49
61
|
}, [ref, active, onClickOutside]);
|
|
50
62
|
};
|
|
51
63
|
//# sourceMappingURL=useClickOutside.native.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["__toCommonJS","mod","__copyProps","__defProp","value","useClickOutside_exports","__export","useClickOutside","module","exports","import_helpers","require","import_react","_instanceof","left","right","Symbol","hasInstance","param","ref","active","onClickOutside","useEffect","isWeb","handleClickOutside","e","node","current","target","HTMLElement","contains","document","addEventListener"
|
|
1
|
+
{"version":3,"names":["__toCommonJS","mod","__copyProps","__defProp","value","useClickOutside_exports","__export","useClickOutside","module","exports","import_helpers","require","import_react","_instanceof","left","right","Symbol","hasInstance","param","ref","active","onClickOutside","useEffect","isWeb","handleClickOutside","e","node","current","target","HTMLElement","contains","document","addEventListener"],"sources":["../../src/useClickOutside.ts"],"sourcesContent":[null],"mappings":";;;;;;;;;;;;;;;;;;;;;AAAA,IAAAA,YAAA,GAAAC,GAAA,IAAAC,WAAA,CAAAC,SAAA;EAAAC,KAAA;AAAA,IAAAH,GAAA;AAAA,IAAAI,uBAAA;AAAAC,QAAA,CAAAD,uBAAA;EAAAE,eAAA,EAAAA,CAAA,KAAAA;AAAA;AAAAC,MAAA,CAAAC,OAAA,GAAAT,YAAsB,CAAAK,uBAAA;AACtB,IAAAK,cAAA,GAA0BC,OAAA;AAQnB,IAAAC,YAAM,GAAAD,OAAmB;AAAA,SAC9BE,YAAAC,IAAA,EAAAC,KAAA;EACA,IAAAA,KAAA,mBAAAC,MAAA,oBAAAD,KAAA,CAAAC,MAAA,CAAAC,WAAA;IACA,SAAAF,KAAA,CAAAC,MAAA,CAAAC,WAAA,EAAAH,IAAA;EACF,OAA4B;IAC1B,OAAAA,IAAA,YAAAC,KAAU;EACR;AACA;AACA,IAAAR,eAAK,YAAAA,CAAgBW,KAAA;EAErB;IAAAC,GAAM;IAAAC,MAAA;IAAAC;EAAsB,IAAkBH,KAAA;EAC5C,IAAAN,YAAM,CAAOU,SAAI;IACjB,KAAAZ,cAAW,CAAAa,KAAA;IACX,KAAAH,MAAQ;IACR,KAAAC,cAAU,EAAS;IACjB,IAAAG,kBAAe,YAAAA,CAAAC,CAAA;MACjB,IAAAC,IAAA,GAAAP,GAAA,CAAAQ,OAAA;MACF,KAAAD,IAAA;MAEA,KAAAb,WAAS,CAAAY,CAAA,CAAAG,MAAiB,EAAAC,WAAS;MACnC,KAAOH,IAAA,CAAAI,QAAM,CAAAL,CAAA,CAAAG,MAAA;QACXP,cAAS;MACX;IACF,CAAG;IACLU,QAAA,CAAAC,gBAAA,UAAAR,kBAAA","ignoreList":[]}
|
|
@@ -3,44 +3,64 @@ var __getOwnPropDesc = Object.getOwnPropertyDescriptor;
|
|
|
3
3
|
var __getOwnPropNames = Object.getOwnPropertyNames;
|
|
4
4
|
var __hasOwnProp = Object.prototype.hasOwnProperty;
|
|
5
5
|
var __export = (target, all) => {
|
|
6
|
-
|
|
7
|
-
|
|
8
|
-
|
|
9
|
-
|
|
10
|
-
|
|
11
|
-
|
|
12
|
-
|
|
6
|
+
for (var name in all) __defProp(target, name, {
|
|
7
|
+
get: all[name],
|
|
8
|
+
enumerable: true
|
|
9
|
+
});
|
|
10
|
+
};
|
|
11
|
+
var __copyProps = (to, from, except, desc) => {
|
|
12
|
+
if (from && typeof from === "object" || typeof from === "function") {
|
|
13
|
+
for (let key of __getOwnPropNames(from)) if (!__hasOwnProp.call(to, key) && key !== except) __defProp(to, key, {
|
|
13
14
|
get: () => from[key],
|
|
14
15
|
enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable
|
|
15
16
|
});
|
|
16
|
-
|
|
17
|
-
|
|
17
|
+
}
|
|
18
|
+
return to;
|
|
19
|
+
};
|
|
18
20
|
var __toCommonJS = mod => __copyProps(__defProp({}, "__esModule", {
|
|
19
|
-
value:
|
|
21
|
+
value: true
|
|
20
22
|
}), mod);
|
|
21
23
|
var useDebouncePrepend_exports = {};
|
|
22
24
|
__export(useDebouncePrepend_exports, {
|
|
23
25
|
useDebouncePrepend: () => useDebouncePrepend
|
|
24
26
|
});
|
|
25
27
|
module.exports = __toCommonJS(useDebouncePrepend_exports);
|
|
26
|
-
var import_helpers = require("@take-out/helpers")
|
|
27
|
-
|
|
28
|
+
var import_helpers = require("@take-out/helpers");
|
|
29
|
+
var import_react = require("react");
|
|
28
30
|
function useDebouncePrepend(list, delay) {
|
|
29
|
-
const [current, setCurrent] = (0, import_react.useState)(list)
|
|
30
|
-
|
|
31
|
-
|
|
32
|
-
|
|
33
|
-
|
|
34
|
-
|
|
35
|
-
|
|
36
|
-
|
|
37
|
-
|
|
38
|
-
|
|
39
|
-
|
|
40
|
-
|
|
41
|
-
|
|
42
|
-
|
|
31
|
+
const [current, setCurrent] = (0, import_react.useState)(list);
|
|
32
|
+
const [previous, setPrevious] = (0, import_react.useState)(list);
|
|
33
|
+
const [pendingUpdate, setPendingUpdate] = (0, import_react.useState)(null);
|
|
34
|
+
const debouncedUpdate = (0, import_react.useMemo)(() => {
|
|
35
|
+
return (0, import_helpers.debounce)(newList => {
|
|
36
|
+
setCurrent(newList);
|
|
37
|
+
setPendingUpdate(null);
|
|
38
|
+
}, delay);
|
|
39
|
+
}, [delay]);
|
|
40
|
+
const updateState = (0, import_react.useCallback)(newList => {
|
|
41
|
+
setCurrent(prevCurrent => {
|
|
42
|
+
const currentList = pendingUpdate || prevCurrent;
|
|
43
|
+
const isPrepending = newList.length > previous.length && newList[0]?.id !== previous[0]?.id;
|
|
44
|
+
if (isPrepending) {
|
|
45
|
+
debouncedUpdate.cancel();
|
|
46
|
+
setPendingUpdate(newList);
|
|
47
|
+
debouncedUpdate(newList);
|
|
48
|
+
return currentList;
|
|
49
|
+
}
|
|
50
|
+
debouncedUpdate.cancel();
|
|
51
|
+
setPendingUpdate(null);
|
|
52
|
+
return newList;
|
|
53
|
+
});
|
|
54
|
+
}, [previous, pendingUpdate, debouncedUpdate]);
|
|
55
|
+
(0, import_react.useEffect)(() => {
|
|
56
|
+
if (list === previous) {
|
|
57
|
+
return;
|
|
58
|
+
}
|
|
59
|
+
setPrevious(list);
|
|
60
|
+
updateState(list);
|
|
61
|
+
return () => {
|
|
43
62
|
debouncedUpdate.cancel();
|
|
44
63
|
};
|
|
45
|
-
}, [list, previous, updateState, debouncedUpdate])
|
|
64
|
+
}, [list, previous, updateState, debouncedUpdate]);
|
|
65
|
+
return current;
|
|
46
66
|
}
|
|
@@ -5,50 +5,66 @@ var __getOwnPropDesc = Object.getOwnPropertyDescriptor;
|
|
|
5
5
|
var __getOwnPropNames = Object.getOwnPropertyNames;
|
|
6
6
|
var __hasOwnProp = Object.prototype.hasOwnProperty;
|
|
7
7
|
var __export = (target, all) => {
|
|
8
|
-
|
|
9
|
-
|
|
10
|
-
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
|
|
8
|
+
for (var name in all) __defProp(target, name, {
|
|
9
|
+
get: all[name],
|
|
10
|
+
enumerable: true
|
|
11
|
+
});
|
|
12
|
+
};
|
|
13
|
+
var __copyProps = (to, from, except, desc) => {
|
|
14
|
+
if (from && typeof from === "object" || typeof from === "function") {
|
|
15
|
+
for (let key of __getOwnPropNames(from)) if (!__hasOwnProp.call(to, key) && key !== except) __defProp(to, key, {
|
|
15
16
|
get: () => from[key],
|
|
16
17
|
enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable
|
|
17
18
|
});
|
|
18
|
-
|
|
19
|
-
|
|
19
|
+
}
|
|
20
|
+
return to;
|
|
21
|
+
};
|
|
20
22
|
var __toCommonJS = mod => __copyProps(__defProp({}, "__esModule", {
|
|
21
|
-
value:
|
|
23
|
+
value: true
|
|
22
24
|
}), mod);
|
|
23
25
|
var useDebouncePrepend_exports = {};
|
|
24
26
|
__export(useDebouncePrepend_exports, {
|
|
25
27
|
useDebouncePrepend: () => useDebouncePrepend
|
|
26
28
|
});
|
|
27
29
|
module.exports = __toCommonJS(useDebouncePrepend_exports);
|
|
28
|
-
var import_helpers = require("@take-out/helpers")
|
|
29
|
-
|
|
30
|
+
var import_helpers = require("@take-out/helpers");
|
|
31
|
+
var import_react = require("react");
|
|
30
32
|
function useDebouncePrepend(list, delay) {
|
|
31
|
-
var [current, setCurrent] = (0, import_react.useState)(list)
|
|
32
|
-
|
|
33
|
-
|
|
34
|
-
|
|
35
|
-
|
|
36
|
-
|
|
37
|
-
|
|
38
|
-
},
|
|
39
|
-
|
|
40
|
-
|
|
41
|
-
|
|
42
|
-
|
|
43
|
-
|
|
44
|
-
|
|
45
|
-
|
|
46
|
-
|
|
47
|
-
|
|
48
|
-
|
|
49
|
-
|
|
33
|
+
var [current, setCurrent] = (0, import_react.useState)(list);
|
|
34
|
+
var [previous, setPrevious] = (0, import_react.useState)(list);
|
|
35
|
+
var [pendingUpdate, setPendingUpdate] = (0, import_react.useState)(null);
|
|
36
|
+
var debouncedUpdate = (0, import_react.useMemo)(function () {
|
|
37
|
+
return (0, import_helpers.debounce)(function (newList) {
|
|
38
|
+
setCurrent(newList);
|
|
39
|
+
setPendingUpdate(null);
|
|
40
|
+
}, delay);
|
|
41
|
+
}, [delay]);
|
|
42
|
+
var updateState = (0, import_react.useCallback)(function (newList) {
|
|
43
|
+
setCurrent(function (prevCurrent) {
|
|
44
|
+
var _newList_, _previous_;
|
|
45
|
+
var currentList = pendingUpdate || prevCurrent;
|
|
46
|
+
var isPrepending = newList.length > previous.length && ((_newList_ = newList[0]) === null || _newList_ === void 0 ? void 0 : _newList_.id) !== ((_previous_ = previous[0]) === null || _previous_ === void 0 ? void 0 : _previous_.id);
|
|
47
|
+
if (isPrepending) {
|
|
48
|
+
debouncedUpdate.cancel();
|
|
49
|
+
setPendingUpdate(newList);
|
|
50
|
+
debouncedUpdate(newList);
|
|
51
|
+
return currentList;
|
|
52
|
+
}
|
|
53
|
+
debouncedUpdate.cancel();
|
|
54
|
+
setPendingUpdate(null);
|
|
55
|
+
return newList;
|
|
56
|
+
});
|
|
57
|
+
}, [previous, pendingUpdate, debouncedUpdate]);
|
|
58
|
+
(0, import_react.useEffect)(function () {
|
|
59
|
+
if (list === previous) {
|
|
60
|
+
return;
|
|
61
|
+
}
|
|
62
|
+
setPrevious(list);
|
|
63
|
+
updateState(list);
|
|
64
|
+
return function () {
|
|
50
65
|
debouncedUpdate.cancel();
|
|
51
66
|
};
|
|
52
|
-
}, [list, previous, updateState, debouncedUpdate])
|
|
67
|
+
}, [list, previous, updateState, debouncedUpdate]);
|
|
68
|
+
return current;
|
|
53
69
|
}
|
|
54
70
|
//# sourceMappingURL=useDebouncePrepend.native.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["__toCommonJS","mod","__copyProps","__defProp","value","useDebouncePrepend_exports","__export","useDebouncePrepend","module","exports","import_helpers","require","import_react","list","delay","current","setCurrent","useState","previous","setPrevious","pendingUpdate","setPendingUpdate","debouncedUpdate","useMemo","debounce","newList","updateState","useCallback","prevCurrent","_newList_","_previous_","currentList","isPrepending","length","id","cancel","useEffect"],"sources":["../../src/useDebouncePrepend.ts"],"sourcesContent":[null],"mappings":"
|
|
1
|
+
{"version":3,"names":["__toCommonJS","mod","__copyProps","__defProp","value","useDebouncePrepend_exports","__export","useDebouncePrepend","module","exports","import_helpers","require","import_react","list","delay","current","setCurrent","useState","previous","setPrevious","pendingUpdate","setPendingUpdate","debouncedUpdate","useMemo","debounce","newList","updateState","useCallback","prevCurrent","_newList_","_previous_","currentList","isPrepending","length","id","cancel","useEffect"],"sources":["../../src/useDebouncePrepend.ts"],"sourcesContent":[null],"mappings":";;;;;;;;;;;;;;;;;;;;;AAAA,IAAAA,YAAA,GAAAC,GAAA,IAAAC,WAAA,CAAAC,SAAA;EAAAC,KAAA;AAAA,IAAAH,GAAA;AAAA,IAAAI,0BAAA;AAAAC,QAAA,CAAAD,0BAAA;EAAAE,kBAAA,EAAAA,CAAA,KAAAA;AAAA;AAAAC,MAAA,CAAAC,OAAA,GAAAT,YAAyB,CAAAK,0BAAA;AACzB,IAAAK,cAAA,GAA0DC,OAAA;AAEnD,IAAAC,YAAS,GAAAD,OAAA,QAEd;AAEA,SAAOJ,kBAASA,CAAUM,IAAA,EAAAC,KAAI;EAC9B,KAAAC,OAAO,EAAAC,UAAU,IAAW,IAAAJ,YAAI,CAAAK,QAAA,EAAAJ,IAAS;EACzC,KAAAK,QAAO,EAAAC,WAAe,QAAAP,YAAoB,CAAAK,QAAA,EAAAJ,IAAA;EAE1C,KAAAO,aAAM,EAAAC,gBAAkB,QAAAT,YAAc,CAAAK,QAAA;EACpC,IAAAK,eAAO,OAAAV,YAAS,CAACW,OAAA,cAAe;IAC9B,WAAAb,cAAkB,CAAAc,QAAA,YAAAC,OAAA;MAClBT,UAAA,CAAAS,OAAiB;MACnBJ,gBAAQ;IACV,CAAG,EAACP,KAAM;EAEV,IACEA,KAAC,CACC;EAEE,IAAAY,WAAM,OAAAd,YAAc,CAAAe,WAAiB,YAAAF,OAAA;IAGrCT,UAAM,WAAAY,WACJ,EAAQ;MAEV,IAAAC,SAAI,EAAAC,UAAc;MAEhB,IAAAC,WAAA,GAAAX,aAAuB,IAAAQ,WAAA;MACvB,IAAAI,YAAA,GAAAP,OAAiB,CAAAQ,MAAO,GAAAf,QAAA,CAAAe,MAAA,MAAAJ,SAAA,GAAAJ,OAAA,iBAAAI,SAAA,uBAAAA,SAAA,CAAAK,EAAA,QAAAJ,UAAA,GAAAZ,QAAA,iBAAAY,UAAA,uBAAAA,UAAA,CAAAI,EAAA;MACxB,IAAAF,YAAA;QACAV,eAAO,CAAAa,MAAA;QACTd,gBAAA,CAAAI,OAAA;QAGAH,eAAA,CAAgBG,OAAO;QACvB,OAAAM,WAAiB;MACjB;MACFT,eAAC,CAAAa,MAAA;MACHd,gBAAA;MACC,OAAAI,OAAU;IACb;EAEA,IACEP,QAAI,EACFE,aAAA,EACFE,eAAA,CAGA;EAGA,IAAAV,YAAY,CAAAwB,SAAI;IAEhB,IAAAvB,IAAO,KAAMK,QAAA;MACX;IACF;IACFC,WAAU,CAAAN,IAAA;IAEVa,WAAO,CAAAb,IAAA;IACT","ignoreList":[]}
|