@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.
Files changed (109) hide show
  1. package/dist/cjs/index.cjs +7 -5
  2. package/dist/cjs/index.native.js +7 -5
  3. package/dist/cjs/index.native.js.map +1 -1
  4. package/dist/cjs/useClickOutside.cjs +24 -15
  5. package/dist/cjs/useClickOutside.native.js +34 -22
  6. package/dist/cjs/useClickOutside.native.js.map +1 -1
  7. package/dist/cjs/useDebouncePrepend.cjs +47 -27
  8. package/dist/cjs/useDebouncePrepend.native.js +48 -32
  9. package/dist/cjs/useDebouncePrepend.native.js.map +1 -1
  10. package/dist/cjs/useDeepMemoizedObject.cjs +154 -95
  11. package/dist/cjs/useDeepMemoizedObject.native.js +177 -111
  12. package/dist/cjs/useDeepMemoizedObject.native.js.map +1 -1
  13. package/dist/cjs/useDeepMemoizedObject.test.cjs +269 -199
  14. package/dist/cjs/useDeepMemoizedObject.test.native.js +265 -202
  15. package/dist/cjs/useDeepMemoizedObject.test.native.js.map +1 -1
  16. package/dist/cjs/useDeferredBoolean.cjs +20 -15
  17. package/dist/cjs/useDeferredBoolean.native.js +22 -17
  18. package/dist/cjs/useDeferredBoolean.native.js.map +1 -1
  19. package/dist/cjs/useEffectOnceGlobally.cjs +24 -12
  20. package/dist/cjs/useEffectOnceGlobally.native.js +27 -15
  21. package/dist/cjs/useEffectOnceGlobally.native.js.map +1 -1
  22. package/dist/cjs/useEvent.cjs +14 -11
  23. package/dist/cjs/useEvent.native.js +17 -12
  24. package/dist/cjs/useEvent.native.js.map +1 -1
  25. package/dist/cjs/useIsMounted.cjs +17 -14
  26. package/dist/cjs/useIsMounted.native.js +20 -17
  27. package/dist/cjs/useIsMounted.native.js.map +1 -1
  28. package/dist/cjs/useLastValue.cjs +13 -11
  29. package/dist/cjs/useLastValue.native.js +13 -11
  30. package/dist/cjs/useLastValue.native.js.map +1 -1
  31. package/dist/cjs/useLastValueIf.cjs +21 -14
  32. package/dist/cjs/useLastValueIf.native.js +21 -14
  33. package/dist/cjs/useLastValueIf.native.js.map +1 -1
  34. package/dist/cjs/useMemoStable.cjs +17 -14
  35. package/dist/cjs/useMemoStable.native.js +17 -14
  36. package/dist/cjs/useMemoStable.native.js.map +1 -1
  37. package/dist/cjs/useMemoizedObjectList.cjs +45 -29
  38. package/dist/cjs/useMemoizedObjectList.native.js +60 -39
  39. package/dist/cjs/useMemoizedObjectList.native.js.map +1 -1
  40. package/dist/cjs/useThrottle.cjs +34 -21
  41. package/dist/cjs/useThrottle.native.js +41 -27
  42. package/dist/cjs/useThrottle.native.js.map +1 -1
  43. package/dist/cjs/useWarnIfDepsChange.cjs +38 -27
  44. package/dist/cjs/useWarnIfDepsChange.native.js +38 -28
  45. package/dist/cjs/useWarnIfDepsChange.native.js.map +1 -1
  46. package/dist/cjs/useWarnIfMemoChangesOften.cjs +24 -15
  47. package/dist/cjs/useWarnIfMemoChangesOften.native.js +27 -21
  48. package/dist/cjs/useWarnIfMemoChangesOften.native.js.map +1 -1
  49. package/dist/esm/useClickOutside.mjs +10 -3
  50. package/dist/esm/useClickOutside.mjs.map +1 -1
  51. package/dist/esm/useClickOutside.native.js +20 -10
  52. package/dist/esm/useClickOutside.native.js.map +1 -1
  53. package/dist/esm/useDebouncePrepend.mjs +33 -15
  54. package/dist/esm/useDebouncePrepend.mjs.map +1 -1
  55. package/dist/esm/useDebouncePrepend.native.js +34 -20
  56. package/dist/esm/useDebouncePrepend.native.js.map +1 -1
  57. package/dist/esm/useDeepMemoizedObject.mjs +142 -85
  58. package/dist/esm/useDeepMemoizedObject.mjs.map +1 -1
  59. package/dist/esm/useDeepMemoizedObject.native.js +165 -101
  60. package/dist/esm/useDeepMemoizedObject.native.js.map +1 -1
  61. package/dist/esm/useDeepMemoizedObject.test.mjs +267 -197
  62. package/dist/esm/useDeepMemoizedObject.test.mjs.map +1 -1
  63. package/dist/esm/useDeepMemoizedObject.test.native.js +263 -200
  64. package/dist/esm/useDeepMemoizedObject.test.native.js.map +1 -1
  65. package/dist/esm/useDeferredBoolean.mjs +8 -5
  66. package/dist/esm/useDeferredBoolean.mjs.map +1 -1
  67. package/dist/esm/useDeferredBoolean.native.js +8 -5
  68. package/dist/esm/useDeferredBoolean.native.js.map +1 -1
  69. package/dist/esm/useEffectOnceGlobally.mjs +12 -2
  70. package/dist/esm/useEffectOnceGlobally.mjs.map +1 -1
  71. package/dist/esm/useEffectOnceGlobally.native.js +13 -3
  72. package/dist/esm/useEffectOnceGlobally.native.js.map +1 -1
  73. package/dist/esm/useEvent.mjs +2 -1
  74. package/dist/esm/useEvent.mjs.map +1 -1
  75. package/dist/esm/useEvent.native.js +5 -2
  76. package/dist/esm/useEvent.native.js.map +1 -1
  77. package/dist/esm/useIsMounted.mjs +5 -4
  78. package/dist/esm/useIsMounted.mjs.map +1 -1
  79. package/dist/esm/useIsMounted.native.js +5 -4
  80. package/dist/esm/useIsMounted.native.js.map +1 -1
  81. package/dist/esm/useLastValue.mjs +1 -1
  82. package/dist/esm/useLastValue.mjs.map +1 -1
  83. package/dist/esm/useLastValue.native.js +1 -1
  84. package/dist/esm/useLastValue.native.js.map +1 -1
  85. package/dist/esm/useLastValueIf.mjs +9 -4
  86. package/dist/esm/useLastValueIf.mjs.map +1 -1
  87. package/dist/esm/useLastValueIf.native.js +9 -4
  88. package/dist/esm/useLastValueIf.native.js.map +1 -1
  89. package/dist/esm/useMemoStable.mjs +3 -2
  90. package/dist/esm/useMemoStable.mjs.map +1 -1
  91. package/dist/esm/useMemoStable.native.js +3 -2
  92. package/dist/esm/useMemoStable.native.js.map +1 -1
  93. package/dist/esm/useMemoizedObjectList.mjs +31 -17
  94. package/dist/esm/useMemoizedObjectList.mjs.map +1 -1
  95. package/dist/esm/useMemoizedObjectList.native.js +46 -27
  96. package/dist/esm/useMemoizedObjectList.native.js.map +1 -1
  97. package/dist/esm/useThrottle.mjs +20 -9
  98. package/dist/esm/useThrottle.mjs.map +1 -1
  99. package/dist/esm/useThrottle.native.js +24 -12
  100. package/dist/esm/useThrottle.native.js.map +1 -1
  101. package/dist/esm/useWarnIfDepsChange.mjs +24 -15
  102. package/dist/esm/useWarnIfDepsChange.mjs.map +1 -1
  103. package/dist/esm/useWarnIfDepsChange.native.js +24 -16
  104. package/dist/esm/useWarnIfDepsChange.native.js.map +1 -1
  105. package/dist/esm/useWarnIfMemoChangesOften.mjs +10 -3
  106. package/dist/esm/useWarnIfMemoChangesOften.mjs.map +1 -1
  107. package/dist/esm/useWarnIfMemoChangesOften.native.js +10 -6
  108. package/dist/esm/useWarnIfMemoChangesOften.native.js.map +1 -1
  109. package/package.json +3 -3
@@ -1,9 +1,19 @@
1
1
  import { useEffect } from "react";
2
2
  const executedKeys = /* @__PURE__ */new Set();
3
3
  function useEffectOnceGlobally(key, callback) {
4
- const keyString = key ? typeof key == "string" ? key : Array.isArray(key) ? typeof key[0] == "string" ? key.sort().join("") : key.map(item => item.id).sort().join("") : key.id : void 0;
4
+ const keyString = !key ? void 0 : typeof key === "string" ? key : Array.isArray(key) ? typeof key[0] === "string" ? key.sort().join("") : key.map(item => item.id).sort().join("") : key.id;
5
5
  useEffect(() => {
6
- !keyString || executedKeys.has(keyString) || (executedKeys.add(keyString), key !== void 0 ? callback(key) : callback());
6
+ if (!keyString || executedKeys.has(keyString)) {
7
+ return;
8
+ }
9
+ executedKeys.add(keyString);
10
+ if (key !== void 0) {
11
+ ;
12
+ callback(key);
13
+ } else {
14
+ ;
15
+ callback();
16
+ }
7
17
  }, [keyString, callback, key]);
8
18
  }
9
19
  export { useEffectOnceGlobally };
@@ -1 +1 @@
1
- {"version":3,"names":["useEffect","executedKeys","Set","useEffectOnceGlobally","key","callback","keyString","Array","isArray","sort","join","map","item","id","has","add"],"sources":["../../src/useEffectOnceGlobally.ts"],"sourcesContent":[null],"mappings":"AAAA,SAASA,SAAA,QAAiB;AAE1B,MAAMC,YAAA,GAAe,mBAAIC,GAAA,CAAY;AAU9B,SAASC,sBACdC,GAAA,EACAC,QAAA,EACA;EACA,MAAMC,SAAA,GAAaF,GAAA,GAEf,OAAOA,GAAA,IAAQ,WACbA,GAAA,GACAG,KAAA,CAAMC,OAAA,CAAQJ,GAAG,IACf,OAAOA,GAAA,CAAI,CAAC,KAAM,WACfA,GAAA,CAAiBK,IAAA,CAAK,EAAEC,IAAA,CAAK,EAAE,IAC/BN,GAAA,CACEO,GAAA,CAAKC,IAAA,IAASA,IAAA,CAAKC,EAAE,EACrBJ,IAAA,CAAK,EACLC,IAAA,CAAK,EAAE,IACXN,GAAA,CAAeS,EAAA,GAVpB;EAYJb,SAAA,CAAU,MAAM;IACV,CAACM,SAAA,IAAaL,YAAA,CAAaa,GAAA,CAAIR,SAAS,MAG5CL,YAAA,CAAac,GAAA,CAAIT,SAAS,GACtBF,GAAA,KAAQ,SACRC,QAAA,CAA6CD,GAAqB,IAElEC,QAAA,CAAwB;EAE9B,GAAG,CAACC,SAAA,EAAWD,QAAA,EAAUD,GAAG,CAAC;AAC/B","ignoreList":[]}
1
+ {"version":3,"names":["useEffect","executedKeys","Set","useEffectOnceGlobally","key","callback","keyString","Array","isArray","sort","join","map","item","id","has","add"],"sources":["../../src/useEffectOnceGlobally.ts"],"sourcesContent":[null],"mappings":"AAAA,SAASA,SAAA,QAAiB;AAE1B,MAAMC,YAAA,GAAe,mBAAIC,GAAA,CAAY;AAU9B,SAASC,sBACdC,GAAA,EACAC,QAAA,EACA;EACA,MAAMC,SAAA,GAAY,CAACF,GAAA,GACf,SACA,OAAOA,GAAA,KAAQ,WACbA,GAAA,GACAG,KAAA,CAAMC,OAAA,CAAQJ,GAAG,IACf,OAAOA,GAAA,CAAI,CAAC,MAAM,WACfA,GAAA,CAAiBK,IAAA,CAAK,EAAEC,IAAA,CAAK,EAAE,IAC/BN,GAAA,CACEO,GAAA,CAAKC,IAAA,IAASA,IAAA,CAAKC,EAAE,EACrBJ,IAAA,CAAK,EACLC,IAAA,CAAK,EAAE,IACXN,GAAA,CAAeS,EAAA;EAExBb,SAAA,CAAU,MAAM;IACd,IAAI,CAACM,SAAA,IAAaL,YAAA,CAAaa,GAAA,CAAIR,SAAS,GAAG;MAC7C;IACF;IACAL,YAAA,CAAac,GAAA,CAAIT,SAAS;IAC1B,IAAIF,GAAA,KAAQ,QAAW;MACrB;MAAEC,QAAA,CAA6CD,GAAqB;IACtE,OAAO;MACL;MAAEC,QAAA,CAAwB;IAC5B;EACF,GAAG,CAACC,SAAA,EAAWD,QAAA,EAAUD,GAAG,CAAC;AAC/B","ignoreList":[]}
@@ -1,11 +1,21 @@
1
1
  import { useEffect } from "react";
2
2
  var executedKeys = /* @__PURE__ */new Set();
3
3
  function useEffectOnceGlobally(key, callback) {
4
- var keyString = key ? typeof key == "string" ? key : Array.isArray(key) ? typeof key[0] == "string" ? key.sort().join("") : key.map(function (item) {
4
+ var keyString = !key ? void 0 : typeof key === "string" ? key : Array.isArray(key) ? typeof key[0] === "string" ? key.sort().join("") : key.map(function (item) {
5
5
  return item.id;
6
- }).sort().join("") : key.id : void 0;
6
+ }).sort().join("") : key.id;
7
7
  useEffect(function () {
8
- !keyString || executedKeys.has(keyString) || (executedKeys.add(keyString), key !== void 0 ? callback(key) : callback());
8
+ if (!keyString || executedKeys.has(keyString)) {
9
+ return;
10
+ }
11
+ executedKeys.add(keyString);
12
+ if (key !== void 0) {
13
+ ;
14
+ callback(key);
15
+ } else {
16
+ ;
17
+ callback();
18
+ }
9
19
  }, [keyString, callback, key]);
10
20
  }
11
21
  export { useEffectOnceGlobally };
@@ -1 +1 @@
1
- {"version":3,"names":["useEffect","executedKeys","Set","useEffectOnceGlobally","key","callback","keyString","Array","isArray","sort","join","map","item","id","has","add"],"sources":["../../src/useEffectOnceGlobally.ts"],"sourcesContent":[null],"mappings":"AAAA,SAASA,SAAA,QAAiB;AAE1B,IAAAC,YAAM,kBAAe,IAAAC,GAAI;AAUlB,SAASC,sBACdC,GAAA,EACAC,QAAA,EACA;EACA,IAAAC,SAAM,GAAAF,GAAa,UAEfA,GAAO,YAAQ,GAAAA,GACb,GAAAG,KACA,CAAAC,OAAM,CAAAJ,GAAQ,IAAG,OACfA,GAAO,GAAI,IAAC,QAAM,GAAAA,GACf,CAAAK,IAAiB,GAAKC,IAAE,GAAK,IAAEN,GAC/B,CAAAO,GACE,WAAKC,IAAS;IAK3B,OAAAA,IAAU,CAAAC,EAAM;EACd,EAAI,CAACJ,IAAA,GAAAC,IAAA,GAAa,IAAAN,GAAA,CAAAS,EAAA,GAAa,KAAI;EASrCb,SAAI,aAAW;IACjB,CAAAM,SAAA,IAAAL,YAAA,CAAAa,GAAA,CAAAR,SAAA,MAAAL,YAAA,CAAAc,GAAA,CAAAT,SAAA,GAAAF,GAAA,cAAAC,QAAA,CAAAD,GAAA,IAAAC,QAAA","ignoreList":[]}
1
+ {"version":3,"names":["useEffect","executedKeys","Set","useEffectOnceGlobally","key","callback","keyString","Array","isArray","sort","join","map","item","id","has","add"],"sources":["../../src/useEffectOnceGlobally.ts"],"sourcesContent":[null],"mappings":"AAAA,SAASA,SAAA,QAAiB;AAE1B,IAAAC,YAAM,kBAAe,IAAAC,GAAI;AAUlB,SAASC,sBACdC,GAAA,EACAC,QAAA,EACA;EACA,IAAAC,SAAM,IAAAF,GAAa,QACf,WACAA,GAAO,aAAQ,GAAAA,GACb,GAAAG,KACA,CAAAC,OAAM,CAAAJ,GAAQ,IAAG,OACfA,GAAO,GAAI,KAAC,QAAM,GAAAA,GACf,CAAAK,IAAiB,GAAKC,IAAE,GAAK,IAAEN,GAC/B,CAAAO,GACE,WAAKC,IAAS;IAK3B,OAAAA,IAAU,CAAAC,EAAM;EACd,GAAAJ,IAAK,GAAAC,IAAA,OAAaN,GAAA,CAAAS,EAAA;EAChBb,SAAA;IACF,KAAAM,SAAA,IAAAL,YAAA,CAAAa,GAAA,CAAAR,SAAA;MACA;IACA;IACEL,YAAA,CAAAc,GAAA,CAAAT,SAAA;IAAC,IAACF,GAAA,KAA6C,KAAqB;MACtE;MACEC,QAAA,CAAAD,GAAA;IAAC,OAAC;MACJ;MACEC,QAAA;IACN","ignoreList":[]}
@@ -1,7 +1,8 @@
1
1
  import { useCallback, useRef } from "react";
2
2
  function useEvent(fn) {
3
3
  const ref = useRef(fn);
4
- return ref.current = fn, useCallback((...args) => ref.current(...args), []);
4
+ ref.current = fn;
5
+ return useCallback((...args) => ref.current(...args), []);
5
6
  }
6
7
  export { useEvent };
7
8
  //# sourceMappingURL=useEvent.mjs.map
@@ -1 +1 @@
1
- {"version":3,"names":["useCallback","useRef","useEvent","fn","ref","current","args"],"sources":["../../src/useEvent.ts"],"sourcesContent":[null],"mappings":"AAAA,SAASA,WAAA,EAAaC,MAAA,QAAc;AAE7B,SAASC,SAA4CC,EAAA,EAAU;EACpE,MAAMC,GAAA,GAAMH,MAAA,CAAOE,EAAE;EACrB,OAAAC,GAAA,CAAIC,OAAA,GAAUF,EAAA,EACPH,WAAA,CAAY,IAAIM,IAAA,KAAwBF,GAAA,CAAIC,OAAA,CAAQ,GAAGC,IAAI,GAAG,EAAE;AACzE","ignoreList":[]}
1
+ {"version":3,"names":["useCallback","useRef","useEvent","fn","ref","current","args"],"sources":["../../src/useEvent.ts"],"sourcesContent":[null],"mappings":"AAAA,SAASA,WAAA,EAAaC,MAAA,QAAc;AAE7B,SAASC,SAA4CC,EAAA,EAAU;EACpE,MAAMC,GAAA,GAAMH,MAAA,CAAOE,EAAE;EACrBC,GAAA,CAAIC,OAAA,GAAUF,EAAA;EACd,OAAOH,WAAA,CAAY,IAAIM,IAAA,KAAwBF,GAAA,CAAIC,OAAA,CAAQ,GAAGC,IAAI,GAAG,EAAE;AACzE","ignoreList":[]}
@@ -1,8 +1,11 @@
1
1
  import { useCallback, useRef } from "react";
2
2
  function useEvent(fn) {
3
3
  var ref = useRef(fn);
4
- return ref.current = fn, useCallback(function () {
5
- for (var _len = arguments.length, args = new Array(_len), _key = 0; _key < _len; _key++) args[_key] = arguments[_key];
4
+ ref.current = fn;
5
+ return useCallback(function () {
6
+ for (var _len = arguments.length, args = new Array(_len), _key = 0; _key < _len; _key++) {
7
+ args[_key] = arguments[_key];
8
+ }
6
9
  return ref.current(...args);
7
10
  }, []);
8
11
  }
@@ -1 +1 @@
1
- {"version":3,"names":["useCallback","useRef","useEvent","fn","ref","current","_len","arguments","length","args","Array","_key"],"sources":["../../src/useEvent.ts"],"sourcesContent":[null],"mappings":"AAAA,SAASA,WAAA,EAAaC,MAAA,QAAc;AAE7B,SAASC,SAA4CC,EAAA,EAAU;EACpE,IAAAC,GAAM,GAAAH,MAAM,CAAAE,EAAO;EACnB,OAAAC,GAAA,CAAIC,OAAA,GAAUF,EAAA,EACPH,WAAA,CAAY,YAAI;IACzB,SAAAM,IAAA,GAAAC,SAAA,CAAAC,MAAA,EAAAC,IAAA,OAAAC,KAAA,CAAAJ,IAAA,GAAAK,IAAA,MAAAA,IAAA,GAAAL,IAAA,EAAAK,IAAA,I","ignoreList":[]}
1
+ {"version":3,"names":["useCallback","useRef","useEvent","fn","ref","current","_len","arguments","length","args","Array","_key"],"sources":["../../src/useEvent.ts"],"sourcesContent":[null],"mappings":"AAAA,SAASA,WAAA,EAAaC,MAAA,QAAc;AAE7B,SAASC,SAA4CC,EAAA,EAAU;EACpE,IAAAC,GAAM,GAAAH,MAAM,CAAAE,EAAO;EACnBC,GAAA,CAAIC,OAAA,GAAUF,EAAA;EACd,OAAOH,WAAA,CAAY,YAAI;IACzB,SAAAM,IAAA,GAAAC,SAAA,CAAAC,MAAA,EAAAC,IAAA,OAAAC,KAAA,CAAAJ,IAAA,GAAAK,IAAA,MAAAA,IAAA,GAAAL,IAAA,EAAAK,IAAA","ignoreList":[]}
@@ -1,9 +1,10 @@
1
1
  import { useEffect, useState } from "react";
2
2
  const useIsMounted = () => {
3
- const [state, setState] = useState(!1);
4
- return useEffect(() => {
5
- setState(!0);
6
- }, []), state;
3
+ const [state, setState] = useState(false);
4
+ useEffect(() => {
5
+ setState(true);
6
+ }, []);
7
+ return state;
7
8
  };
8
9
  export { useIsMounted };
9
10
  //# sourceMappingURL=useIsMounted.mjs.map
@@ -1 +1 @@
1
- {"version":3,"names":["useEffect","useState","useIsMounted","state","setState"],"sources":["../../src/useIsMounted.ts"],"sourcesContent":[null],"mappings":"AAAA,SAASA,SAAA,EAAWC,QAAA,QAAgB;AAE7B,MAAMC,YAAA,GAAeA,CAAA,KAAM;EAChC,MAAM,CAACC,KAAA,EAAOC,QAAQ,IAAIH,QAAA,CAAS,EAAK;EAExC,OAAAD,SAAA,CAAU,MAAM;IACdI,QAAA,CAAS,EAAI;EACf,GAAG,EAAE,GAEED,KAAA;AACT","ignoreList":[]}
1
+ {"version":3,"names":["useEffect","useState","useIsMounted","state","setState"],"sources":["../../src/useIsMounted.ts"],"sourcesContent":[null],"mappings":"AAAA,SAASA,SAAA,EAAWC,QAAA,QAAgB;AAE7B,MAAMC,YAAA,GAAeA,CAAA,KAAM;EAChC,MAAM,CAACC,KAAA,EAAOC,QAAQ,IAAIH,QAAA,CAAS,KAAK;EAExCD,SAAA,CAAU,MAAM;IACdI,QAAA,CAAS,IAAI;EACf,GAAG,EAAE;EAEL,OAAOD,KAAA;AACT","ignoreList":[]}
@@ -1,9 +1,10 @@
1
1
  import { useEffect, useState } from "react";
2
2
  var useIsMounted = function () {
3
- var [state, setState] = useState(!1);
4
- return useEffect(function () {
5
- setState(!0);
6
- }, []), state;
3
+ var [state, setState] = useState(false);
4
+ useEffect(function () {
5
+ setState(true);
6
+ }, []);
7
+ return state;
7
8
  };
8
9
  export { useIsMounted };
9
10
  //# sourceMappingURL=useIsMounted.native.js.map
@@ -1 +1 @@
1
- {"version":3,"names":["useEffect","useState","useIsMounted","state","setState"],"sources":["../../src/useIsMounted.ts"],"sourcesContent":[null],"mappings":"AAAA,SAASA,SAAA,EAAWC,QAAA,QAAgB;AAE7B,IAAAC,YAAM,YAAAA,CAAA,EAAqB;EAChC,KAAAC,KAAO,EAAAC,QAAO,IAAQH,QAAI,GAAS;EAEnC,OAAAD,SAAA,CAAU,YAAM;IACdI,QAAA,CAAS,EAAI;EACf,GAAG,EAAE,GAEED,KAAA;AACT","ignoreList":[]}
1
+ {"version":3,"names":["useEffect","useState","useIsMounted","state","setState"],"sources":["../../src/useIsMounted.ts"],"sourcesContent":[null],"mappings":"AAAA,SAASA,SAAA,EAAWC,QAAA,QAAgB;AAE7B,IAAAC,YAAM,YAAAA,CAAA,EAAqB;EAChC,KAAAC,KAAO,EAAAC,QAAO,IAAQH,QAAI,MAAS;EAEnCD,SAAA,CAAU,YAAM;IACdI,QAAA,CAAS,IAAI;EACf,GAAG,EAAE;EAEL,OAAOD,KAAA;AACT","ignoreList":[]}
@@ -1,6 +1,6 @@
1
1
  import { useLastValueIf } from "./useLastValueIf.mjs";
2
2
  function useLastValue(value) {
3
- return useLastValueIf(value, !0);
3
+ return useLastValueIf(value, true);
4
4
  }
5
5
  export { useLastValue };
6
6
  //# sourceMappingURL=useLastValue.mjs.map
@@ -1 +1 @@
1
- {"version":3,"names":["useLastValueIf","useLastValue","value"],"sources":["../../src/useLastValue.ts"],"sourcesContent":[null],"mappings":"AAAA,SAASA,cAAA,QAAsB;AAExB,SAASC,aAAgBC,KAAA,EAAyB;EACvD,OAAOF,cAAA,CAAeE,KAAA,EAAO,EAAI;AACnC","ignoreList":[]}
1
+ {"version":3,"names":["useLastValueIf","useLastValue","value"],"sources":["../../src/useLastValue.ts"],"sourcesContent":[null],"mappings":"AAAA,SAASA,cAAA,QAAsB;AAExB,SAASC,aAAgBC,KAAA,EAAyB;EACvD,OAAOF,cAAA,CAAeE,KAAA,EAAO,IAAI;AACnC","ignoreList":[]}
@@ -1,6 +1,6 @@
1
1
  import { useLastValueIf } from "./useLastValueIf.native.js";
2
2
  function useLastValue(value) {
3
- return useLastValueIf(value, !0);
3
+ return useLastValueIf(value, true);
4
4
  }
5
5
  export { useLastValue };
6
6
  //# sourceMappingURL=useLastValue.native.js.map
@@ -1 +1 @@
1
- {"version":3,"names":["useLastValueIf","useLastValue","value"],"sources":["../../src/useLastValue.ts"],"sourcesContent":[null],"mappings":"AAAA,SAASA,cAAA,QAAsB;AAExB,SAASC,aAAgBC,KAAA,EAAyB;EACvD,OAAOF,cAAA,CAAeE,KAAA,EAAO,EAAI;AACnC","ignoreList":[]}
1
+ {"version":3,"names":["useLastValueIf","useLastValue","value"],"sources":["../../src/useLastValue.ts"],"sourcesContent":[null],"mappings":"AAAA,SAASA,cAAA,QAAsB;AAExB,SAASC,aAAgBC,KAAA,EAAyB;EACvD,OAAOF,cAAA,CAAeE,KAAA,EAAO,IAAI;AACnC","ignoreList":[]}
@@ -1,8 +1,13 @@
1
1
  import { useRef } from "react";
2
- function useLastValueIf(value, keepLast = !0) {
3
- const lastTwoValuesRef = useRef([]),
4
- [latest] = lastTwoValuesRef.current;
5
- return keepLast && latest !== value && (lastTwoValuesRef.current = [value, latest]), lastTwoValuesRef.current[1];
2
+ function useLastValueIf(value, keepLast = true) {
3
+ const lastTwoValuesRef = useRef([]);
4
+ const [latest] = lastTwoValuesRef.current;
5
+ if (keepLast) {
6
+ if (latest !== value) {
7
+ lastTwoValuesRef.current = [value, latest];
8
+ }
9
+ }
10
+ return lastTwoValuesRef.current[1];
6
11
  }
7
12
  export { useLastValueIf };
8
13
  //# sourceMappingURL=useLastValueIf.mjs.map
@@ -1 +1 @@
1
- {"version":3,"names":["useRef","useLastValueIf","value","keepLast","lastTwoValuesRef","latest","current"],"sources":["../../src/useLastValueIf.ts"],"sourcesContent":[null],"mappings":"AAAA,SAASA,MAAA,QAAc;AAEhB,SAASC,eAAkBC,KAAA,EAAUC,QAAA,GAAW,IAAqB;EAE1E,MAAMC,gBAAA,GAAmBJ,MAAA,CAA0B,EAAE;IAE/C,CAACK,MAAM,IAAID,gBAAA,CAAiBE,OAAA;EAClC,OAAIH,QAAA,IACEE,MAAA,KAAWH,KAAA,KACbE,gBAAA,CAAiBE,OAAA,GAAU,CAACJ,KAAA,EAAOG,MAAM,IAItCD,gBAAA,CAAiBE,OAAA,CAAQ,CAAC;AACnC","ignoreList":[]}
1
+ {"version":3,"names":["useRef","useLastValueIf","value","keepLast","lastTwoValuesRef","latest","current"],"sources":["../../src/useLastValueIf.ts"],"sourcesContent":[null],"mappings":"AAAA,SAASA,MAAA,QAAc;AAEhB,SAASC,eAAkBC,KAAA,EAAUC,QAAA,GAAW,MAAqB;EAE1E,MAAMC,gBAAA,GAAmBJ,MAAA,CAA0B,EAAE;EAErD,MAAM,CAACK,MAAM,IAAID,gBAAA,CAAiBE,OAAA;EAClC,IAAIH,QAAA,EAAU;IACZ,IAAIE,MAAA,KAAWH,KAAA,EAAO;MACpBE,gBAAA,CAAiBE,OAAA,GAAU,CAACJ,KAAA,EAAOG,MAAM;IAC3C;EACF;EAEA,OAAOD,gBAAA,CAAiBE,OAAA,CAAQ,CAAC;AACnC","ignoreList":[]}
@@ -1,9 +1,14 @@
1
1
  import { useRef } from "react";
2
2
  function useLastValueIf(value) {
3
- var keepLast = arguments.length > 1 && arguments[1] !== void 0 ? arguments[1] : !0,
4
- lastTwoValuesRef = useRef([]),
5
- [latest] = lastTwoValuesRef.current;
6
- return keepLast && latest !== value && (lastTwoValuesRef.current = [value, latest]), lastTwoValuesRef.current[1];
3
+ var keepLast = arguments.length > 1 && arguments[1] !== void 0 ? arguments[1] : true;
4
+ var lastTwoValuesRef = useRef([]);
5
+ var [latest] = lastTwoValuesRef.current;
6
+ if (keepLast) {
7
+ if (latest !== value) {
8
+ lastTwoValuesRef.current = [value, latest];
9
+ }
10
+ }
11
+ return lastTwoValuesRef.current[1];
7
12
  }
8
13
  export { useLastValueIf };
9
14
  //# sourceMappingURL=useLastValueIf.native.js.map
@@ -1 +1 @@
1
- {"version":3,"names":["useRef","useLastValueIf","value","keepLast","arguments","length","lastTwoValuesRef","latest","current"],"sources":["../../src/useLastValueIf.ts"],"sourcesContent":[null],"mappings":"AAAA,SAASA,MAAA,QAAc;AAEhB,SAASC,eAAkBC,KAAA,EAAU;EAE1C,IAAAC,QAAM,GAAAC,SAAA,CAAmBC,MAAA,GAA4B,KAE9CD,SAAU,iBAAiBA,SAAA;IAAAE,gBAAA,GAAAN,MAAA;IAAA,CAAAO,MAAA,IAAAD,gBAAA,CAAAE,OAAA;EAClC,OAAIL,QAAA,IACEI,MAAA,KAAWL,KAAA,KACbI,gBAAA,CAAiBE,OAAA,GAAU,CAKjCN,KAAA,E","ignoreList":[]}
1
+ {"version":3,"names":["useRef","useLastValueIf","value","keepLast","arguments","length","lastTwoValuesRef","latest","current"],"sources":["../../src/useLastValueIf.ts"],"sourcesContent":[null],"mappings":"AAAA,SAASA,MAAA,QAAc;AAEhB,SAASC,eAAkBC,KAAA,EAAU;EAE1C,IAAAC,QAAM,GAAAC,SAAA,CAAmBC,MAAA,GAA4B,KAAAD,SAAA,iBAAAA,SAAA;EAErD,IAAAE,gBAAiB,GAAAN,MAAA;EACjB,IAAI,CAAAO,MAAA,IAAUD,gBAAA,CAAAE,OAAA;EACZ,IAAAL,QAAI;IACF,IAAAI,MAAA,KAAAL,KAAiB;MACnBI,gBAAA,CAAAE,OAAA,IACFN,KAAA,EAEAK,MAAO,CACT","ignoreList":[]}
@@ -1,9 +1,10 @@
1
1
  import { useMemo } from "react";
2
2
  import { useWarnIfDepsChange } from "./useWarnIfDepsChange.mjs";
3
3
  function useMemoStable(getValue, deps, options = {
4
- name: "(untitled)"
4
+ name: `(untitled)`
5
5
  }) {
6
- return useWarnIfDepsChange(deps, options), useMemo(getValue, deps);
6
+ useWarnIfDepsChange(deps, options);
7
+ return useMemo(getValue, deps);
7
8
  }
8
9
  export { useMemoStable };
9
10
  //# sourceMappingURL=useMemoStable.mjs.map
@@ -1 +1 @@
1
- {"version":3,"names":["useMemo","useWarnIfDepsChange","useMemoStable","getValue","deps","options","name"],"sources":["../../src/useMemoStable.ts"],"sourcesContent":[null],"mappings":"AAAA,SAASA,OAAA,QAAe;AAExB,SAASC,mBAAA,QAA2B;AAW7B,SAASC,cACdC,QAAA,EACAC,IAAA,EACAC,OAAA,GAAgC;EAC9BC,IAAA,EAAM;AACR,GACO;EACP,OAAAL,mBAAA,CAAoBG,IAAA,EAAMC,OAAO,GAG1BL,OAAA,CAAQG,QAAA,EAAUC,IAAI;AAC/B","ignoreList":[]}
1
+ {"version":3,"names":["useMemo","useWarnIfDepsChange","useMemoStable","getValue","deps","options","name"],"sources":["../../src/useMemoStable.ts"],"sourcesContent":[null],"mappings":"AAAA,SAASA,OAAA,QAAe;AAExB,SAASC,mBAAA,QAA2B;AAW7B,SAASC,cACdC,QAAA,EACAC,IAAA,EACAC,OAAA,GAAgC;EAC9BC,IAAA,EAAM;AACR,GACO;EACPL,mBAAA,CAAoBG,IAAA,EAAMC,OAAO;EAGjC,OAAOL,OAAA,CAAQG,QAAA,EAAUC,IAAI;AAC/B","ignoreList":[]}
@@ -2,9 +2,10 @@ import { useMemo } from "react";
2
2
  import { useWarnIfDepsChange } from "./useWarnIfDepsChange.native.js";
3
3
  function useMemoStable(getValue, deps) {
4
4
  var options = arguments.length > 2 && arguments[2] !== void 0 ? arguments[2] : {
5
- name: "(untitled)"
5
+ name: `(untitled)`
6
6
  };
7
- return useWarnIfDepsChange(deps, options), useMemo(getValue, deps);
7
+ useWarnIfDepsChange(deps, options);
8
+ return useMemo(getValue, deps);
8
9
  }
9
10
  export { useMemoStable };
10
11
  //# sourceMappingURL=useMemoStable.native.js.map
@@ -1 +1 @@
1
- {"version":3,"names":["useMemo","useWarnIfDepsChange","useMemoStable","getValue","deps","options","arguments","length","name"],"sources":["../../src/useMemoStable.ts"],"sourcesContent":[null],"mappings":"AAAA,SAASA,OAAA,QAAe;AAExB,SAASC,mBAAA,QAA2B;AAW7B,SAASC,cACdC,QAAA,EACAC,IAAA,EACA;EACE,IAAAC,OAAM,GAAAC,SAAA,CAAAC,MAAA,QAAAD,SAAA,iBAAAA,SAAA;IAEDE,IAAA;EACP;EAIF,OAAAP,mBAAA,CAAAG,IAAA,EAAAC,OAAA,GAAAL,OAAA,CAAAG,QAAA,EAAAC,IAAA","ignoreList":[]}
1
+ {"version":3,"names":["useMemo","useWarnIfDepsChange","useMemoStable","getValue","deps","options","arguments","length","name"],"sources":["../../src/useMemoStable.ts"],"sourcesContent":[null],"mappings":"AAAA,SAASA,OAAA,QAAe;AAExB,SAASC,mBAAA,QAA2B;AAW7B,SAASC,cACdC,QAAA,EACAC,IAAA,EACA;EACE,IAAAC,OAAM,GAAAC,SAAA,CAAAC,MAAA,QAAAD,SAAA,iBAAAA,SAAA;IAEDE,IAAA;EACP;EAGAP,mBAAe,CAAAG,IAAA,EAAUC,OAAI;EAC/B,OAAAL,OAAA,CAAAG,QAAA,EAAAC,IAAA","ignoreList":[]}
@@ -1,25 +1,39 @@
1
1
  import { isEqualDeepLite } from "@take-out/helpers";
2
2
  import { useEffect, useMemo, useRef } from "react";
3
3
  function useMemoizedObjectList(list, identityKey) {
4
- const memoizedItems = useRef({}),
5
- memoizedList = useRef(list),
6
- val = useMemo(() => {
7
- let res = list,
8
- didFindChange = !1;
9
- const next = [],
10
- lastItems = memoizedItems.current;
11
- list.length !== memoizedList.current.length && (didFindChange = !0);
12
- for (const item_ of list) {
13
- const item = item_,
14
- id = item[identityKey],
15
- last = lastItems[id];
16
- !last || !isEqualDeepLite(last, item) ? (didFindChange = !0, lastItems[id] = item, next.push(item)) : next.push(last);
4
+ const memoizedItems = useRef({});
5
+ const memoizedList = useRef(list);
6
+ const val = useMemo(() => {
7
+ let res = list;
8
+ let didFindChange = false;
9
+ const next = [];
10
+ const lastItems = memoizedItems.current;
11
+ if (list.length !== memoizedList.current.length) {
12
+ didFindChange = true;
13
+ }
14
+ for (const item_ of list) {
15
+ const item = item_;
16
+ const id = item[identityKey];
17
+ const last = lastItems[id];
18
+ if (!last || !isEqualDeepLite(last, item)) {
19
+ didFindChange = true;
20
+ lastItems[id] = item;
21
+ next.push(item);
22
+ } else {
23
+ next.push(last);
17
24
  }
18
- return didFindChange ? res = next : res = memoizedList.current, res;
19
- }, [identityKey, list]);
20
- return useEffect(() => {
25
+ }
26
+ if (didFindChange) {
27
+ res = next;
28
+ } else {
29
+ res = memoizedList.current;
30
+ }
31
+ return res;
32
+ }, [identityKey, list]);
33
+ useEffect(() => {
21
34
  memoizedList.current = val;
22
- }, [val]), val;
35
+ }, [val]);
36
+ return val;
23
37
  }
24
38
  export { useMemoizedObjectList };
25
39
  //# sourceMappingURL=useMemoizedObjectList.mjs.map
@@ -1 +1 @@
1
- {"version":3,"names":["isEqualDeepLite","useEffect","useMemo","useRef","useMemoizedObjectList","list","identityKey","memoizedItems","memoizedList","val","res","didFindChange","next","lastItems","current","length","item_","item","id","last","push"],"sources":["../../src/useMemoizedObjectList.ts"],"sourcesContent":[null],"mappings":"AAAA,SAASA,eAAA,QAAuB;AAChC,SAASC,SAAA,EAAWC,OAAA,EAASC,MAAA,QAAc;AAapC,SAASC,sBAIdC,IAAA,EAAaC,WAAA,EAA6B;EAC1C,MAAMC,aAAA,GAAgBJ,MAAA,CAA4B,CAAC,CAAC;IAC9CK,YAAA,GAAeL,MAAA,CAAcE,IAAI;IAEjCI,GAAA,GAAMP,OAAA,CAAQ,MAAM;MACxB,IAAIQ,GAAA,GAAML,IAAA;QACNM,aAAA,GAAgB;MACpB,MAAMC,IAAA,GAAe,EAAC;QAChBC,SAAA,GAAYN,aAAA,CAAcO,OAAA;MAG5BT,IAAA,CAAKU,MAAA,KAAWP,YAAA,CAAaM,OAAA,CAAQC,MAAA,KACvCJ,aAAA,GAAgB;MAGlB,WAAWK,KAAA,IAASX,IAAA,EAAM;QACxB,MAAMY,IAAA,GAAOD,KAAA;UACPE,EAAA,GAAKD,IAAA,CAAKX,WAAW;UACrBa,IAAA,GAAON,SAAA,CAAUK,EAAE;QAGrB,CAACC,IAAA,IAAQ,CAACnB,eAAA,CAAgBmB,IAAA,EAAMF,IAAI,KACtCN,aAAA,GAAgB,IAWhBE,SAAA,CAAUK,EAAE,IAAID,IAAA,EAChBL,IAAA,CAAKQ,IAAA,CAAKH,IAAI,KAEdL,IAAA,CAAKQ,IAAA,CAAKD,IAAI;MAElB;MAGA,OAAIR,aAAA,GACFD,GAAA,GAAME,IAAA,GAENF,GAAA,GAAMF,YAAA,CAAaM,OAAA,EAGdJ,GAAA;IACT,GAAG,CAACJ,WAAA,EAAaD,IAAI,CAAC;EAEtB,OAAAJ,SAAA,CAAU,MAAM;IACdO,YAAA,CAAaM,OAAA,GAAUL,GAAA;EACzB,GAAG,CAACA,GAAG,CAAC,GAEDA,GAAA;AACT","ignoreList":[]}
1
+ {"version":3,"names":["isEqualDeepLite","useEffect","useMemo","useRef","useMemoizedObjectList","list","identityKey","memoizedItems","memoizedList","val","res","didFindChange","next","lastItems","current","length","item_","item","id","last","push"],"sources":["../../src/useMemoizedObjectList.ts"],"sourcesContent":[null],"mappings":"AAAA,SAASA,eAAA,QAAuB;AAChC,SAASC,SAAA,EAAWC,OAAA,EAASC,MAAA,QAAc;AAapC,SAASC,sBAIdC,IAAA,EAAaC,WAAA,EAA6B;EAC1C,MAAMC,aAAA,GAAgBJ,MAAA,CAA4B,CAAC,CAAC;EACpD,MAAMK,YAAA,GAAeL,MAAA,CAAcE,IAAI;EAEvC,MAAMI,GAAA,GAAMP,OAAA,CAAQ,MAAM;IACxB,IAAIQ,GAAA,GAAML,IAAA;IACV,IAAIM,aAAA,GAAgB;IACpB,MAAMC,IAAA,GAAe,EAAC;IACtB,MAAMC,SAAA,GAAYN,aAAA,CAAcO,OAAA;IAGhC,IAAIT,IAAA,CAAKU,MAAA,KAAWP,YAAA,CAAaM,OAAA,CAAQC,MAAA,EAAQ;MAC/CJ,aAAA,GAAgB;IAClB;IAEA,WAAWK,KAAA,IAASX,IAAA,EAAM;MACxB,MAAMY,IAAA,GAAOD,KAAA;MACb,MAAME,EAAA,GAAKD,IAAA,CAAKX,WAAW;MAC3B,MAAMa,IAAA,GAAON,SAAA,CAAUK,EAAE;MAGzB,IAAI,CAACC,IAAA,IAAQ,CAACnB,eAAA,CAAgBmB,IAAA,EAAMF,IAAI,GAAG;QACzCN,aAAA,GAAgB;QAWhBE,SAAA,CAAUK,EAAE,IAAID,IAAA;QAChBL,IAAA,CAAKQ,IAAA,CAAKH,IAAI;MAChB,OAAO;QACLL,IAAA,CAAKQ,IAAA,CAAKD,IAAI;MAChB;IACF;IAGA,IAAIR,aAAA,EAAe;MACjBD,GAAA,GAAME,IAAA;IACR,OAAO;MACLF,GAAA,GAAMF,YAAA,CAAaM,OAAA;IACrB;IAEA,OAAOJ,GAAA;EACT,GAAG,CAACJ,WAAA,EAAaD,IAAI,CAAC;EAEtBJ,SAAA,CAAU,MAAM;IACdO,YAAA,CAAaM,OAAA,GAAUL,GAAA;EACzB,GAAG,CAACA,GAAG,CAAC;EAER,OAAOA,GAAA;AACT","ignoreList":[]}
@@ -1,39 +1,58 @@
1
1
  import { isEqualDeepLite } from "@take-out/helpers";
2
2
  import { useEffect, useMemo, useRef } from "react";
3
3
  function useMemoizedObjectList(list, identityKey) {
4
- var memoizedItems = useRef({}),
5
- memoizedList = useRef(list),
6
- val = useMemo(function () {
7
- var res = list,
8
- didFindChange = !1,
9
- next = [],
10
- lastItems = memoizedItems.current;
11
- list.length !== memoizedList.current.length && (didFindChange = !0);
12
- var _iteratorNormalCompletion = !0,
13
- _didIteratorError = !1,
14
- _iteratorError = void 0;
4
+ var memoizedItems = useRef({});
5
+ var memoizedList = useRef(list);
6
+ var val = useMemo(function () {
7
+ var res = list;
8
+ var didFindChange = false;
9
+ var next = [];
10
+ var lastItems = memoizedItems.current;
11
+ if (list.length !== memoizedList.current.length) {
12
+ didFindChange = true;
13
+ }
14
+ var _iteratorNormalCompletion = true,
15
+ _didIteratorError = false,
16
+ _iteratorError = void 0;
17
+ try {
18
+ for (var _iterator = list[Symbol.iterator](), _step; !(_iteratorNormalCompletion = (_step = _iterator.next()).done); _iteratorNormalCompletion = true) {
19
+ var item_ = _step.value;
20
+ var item = item_;
21
+ var id = item[identityKey];
22
+ var last = lastItems[id];
23
+ if (!last || !isEqualDeepLite(last, item)) {
24
+ didFindChange = true;
25
+ lastItems[id] = item;
26
+ next.push(item);
27
+ } else {
28
+ next.push(last);
29
+ }
30
+ }
31
+ } catch (err) {
32
+ _didIteratorError = true;
33
+ _iteratorError = err;
34
+ } finally {
15
35
  try {
16
- for (var _iterator = list[Symbol.iterator](), _step; !(_iteratorNormalCompletion = (_step = _iterator.next()).done); _iteratorNormalCompletion = !0) {
17
- var item_ = _step.value,
18
- item = item_,
19
- id = item[identityKey],
20
- last = lastItems[id];
21
- !last || !isEqualDeepLite(last, item) ? (didFindChange = !0, lastItems[id] = item, next.push(item)) : next.push(last);
36
+ if (!_iteratorNormalCompletion && _iterator.return != null) {
37
+ _iterator.return();
22
38
  }
23
- } catch (err) {
24
- _didIteratorError = !0, _iteratorError = err;
25
39
  } finally {
26
- try {
27
- !_iteratorNormalCompletion && _iterator.return != null && _iterator.return();
28
- } finally {
29
- if (_didIteratorError) throw _iteratorError;
40
+ if (_didIteratorError) {
41
+ throw _iteratorError;
30
42
  }
31
43
  }
32
- return didFindChange ? res = next : res = memoizedList.current, res;
33
- }, [identityKey, list]);
34
- return useEffect(function () {
44
+ }
45
+ if (didFindChange) {
46
+ res = next;
47
+ } else {
48
+ res = memoizedList.current;
49
+ }
50
+ return res;
51
+ }, [identityKey, list]);
52
+ useEffect(function () {
35
53
  memoizedList.current = val;
36
- }, [val]), val;
54
+ }, [val]);
55
+ return val;
37
56
  }
38
57
  export { useMemoizedObjectList };
39
58
  //# sourceMappingURL=useMemoizedObjectList.native.js.map
@@ -1 +1 @@
1
- {"version":3,"names":["isEqualDeepLite","useEffect","useMemo","useRef","useMemoizedObjectList","list","identityKey","memoizedItems","memoizedList","val","res","didFindChange","next","lastItems","current","length","_iteratorNormalCompletion","_didIteratorError","_iteratorError","_iterator","Symbol","iterator","_step","done","item_","value","item","id","last","push","err","return"],"sources":["../../src/useMemoizedObjectList.ts"],"sourcesContent":[null],"mappings":"AAAA,SAASA,eAAA,QAAuB;AAChC,SAASC,SAAA,EAAWC,OAAA,EAASC,MAAA,QAAc;AAapC,SAASC,sBAIdC,IAAA,EAAaC,WAAA,EAA6B;EAC1C,IAAAC,aAAM,GAAAJ,MAAgB,GAA4B,CAAC;IAACK,YAC9C,GAAAL,MAAe,CAAAE,IAAc;IAAII,GAEjC,GAAAP,OAAM,aAAc;MACxB,IAAIQ,GAAA,GAAML,IAAA;QACNM,aAAA,GAAgB;QAAAC,IAAA;QAAAC,SAAA,GAAAN,aAAA,CAAAO,OAAA;MACpBT,IAAA,CAAAU,MAAM,KAAgBP,YAChB,CAAYM,OAAA,CAAAC,MAAc,KAAAJ,aAAA;MAG5B,IAAAK,yBAA6B;QAAAC,iBAC/B;QAAAC,cAAgB;MAGlB;QACE,SAAMC,SAAO,GACPd,IAAK,CAAAe,MAAK,CAAAC,QAAW,GACrB,EAAAC,KAAO,IAAAN,yBAAY,IAAAM,KAAA,GAAAH,SAAA,CAAAP,IAAA,IAAAW,IAAA,GAAAP,yBAAA;UAGpB,IAAAQ,KAAS,GAAAF,KAAA,CAAAG,KAAA;YAAgBC,IAAA,GAAMF,KAAI;YACtCG,EAAA,GAAAD,IAAA,CAAApB,WAWA;YAAAsB,IAAA,GAAUf,SAAM,CAAAc,EAChB;UAIJ,CAAAC,IAAA,KAAA5B,eAAA,CAAA4B,IAAA,EAAAF,IAAA,KAAAf,aAAA,OAAAE,SAAA,CAAAc,EAAA,IAAAD,IAAA,EAAAd,IAAA,CAAAiB,IAAA,CAAAH,IAAA,KAAAd,IAAA,CAAAiB,IAAA,CAAAD,IAAA;QAGA;MAOF,CAAG,CAAC,OAAAE,GAAA;QAEJb,iBAAU,GAAM,IAAAC,cAAA,GAAAY,GAAA;MACd;QACE,IAAI;UAGV,CAAAd,yBAAA,IAAAG,SAAA,CAAAY,MAAA,YAAAZ,SAAA,CAAAY,MAAA","ignoreList":[]}
1
+ {"version":3,"names":["isEqualDeepLite","useEffect","useMemo","useRef","useMemoizedObjectList","list","identityKey","memoizedItems","memoizedList","val","res","didFindChange","next","lastItems","current","length","_iteratorNormalCompletion","_didIteratorError","_iteratorError","_iterator","Symbol","iterator","_step","done","item_","value","item","id","last","push","err","return"],"sources":["../../src/useMemoizedObjectList.ts"],"sourcesContent":[null],"mappings":"AAAA,SAASA,eAAA,QAAuB;AAChC,SAASC,SAAA,EAAWC,OAAA,EAASC,MAAA,QAAc;AAapC,SAASC,sBAIdC,IAAA,EAAaC,WAAA,EAA6B;EAC1C,IAAAC,aAAM,GAAAJ,MAAgB,GAA4B,CAAC;EACnD,IAAAK,YAAM,GAAAL,MAAe,CAAAE,IAAc;EAEnC,IAAAI,GAAM,GAAAP,OAAM,aAAc;IACxB,IAAIQ,GAAA,GAAML,IAAA;IACV,IAAIM,aAAA,GAAgB;IACpB,IAAAC,IAAM,KAAe;IACrB,IAAAC,SAAM,GAAAN,aAAY,CAAAO,OAAc;IAGhC,IAAIT,IAAA,CAAKU,MAAA,KAAWP,YAAA,CAAaM,OAAA,CAAQC,MAAA,EAAQ;MAC/CJ,aAAA,GAAgB;IAClB;IAEA,IAAAK,yBAA0B;MAAAC,iBAAA;MAAAC,cAAA;IACxB;MACA,SAAMC,SAAU,GAAAd,IAAA,CAAAe,MAAW,CAAAC,QAAA,KAAAC,KAAA,IAAAN,yBAAA,IAAAM,KAAA,GAAAH,SAAA,CAAAP,IAAA,IAAAW,IAAA,GAAAP,yBAAA;QAC3B,IAAMQ,KAAA,GAAOF,KAAA,CAAAG,KAAY;QAGzB,IAAKC,IAAA,GAAQF,KAAC;QACZ,IAAAG,EAAA,GAAAD,IAAA,CAAApB,WAAgB;QAWhB,IAAAsB,IAAA,GAAUf,SAAM,CAAAc,EAAA;QAChB,KAAKC,IAAA,IAAK,CAAI5B,eAAA,CAAA4B,IAAA,EAAAF,IAAA;UAChBf,aAAO;UACLE,SAAU,CAAAc,EAAI,IAAAD,IAAA;UAChBd,IAAA,CAAAiB,IAAA,CAAAH,IAAA;QACF;UAGId,IAAA,CAAAiB,IAAA,CAAAD,IAAe;QACjB;MACF;IACE,SAAME,GAAA;MACRb,iBAAA;MAEAC,cAAO,GAAAY,GAAA;IACT,CAAG,SAAC;MAEJ;QACE,KAAAd,yBAAuB,IAAAG,SAAA,CAAAY,MAAA;UACjBZ,SAAA,CAAAY,MAAA;QAER;MACF","ignoreList":[]}
@@ -1,16 +1,27 @@
1
1
  import { useRef } from "react";
2
2
  import { useEvent } from "./useEvent.mjs";
3
3
  const useThrottle = (fn, delay = 100) => {
4
- const lastCallTime = useRef(0),
5
- timeoutRef = useRef(null),
6
- stableFn = useEvent(fn);
7
- return useEvent((...args) => {
8
- const now = Date.now(),
9
- timeSinceLastCall = now - lastCallTime.current;
10
- timeSinceLastCall >= delay ? (lastCallTime.current = now, stableFn(...args)) : (timeoutRef.current && clearTimeout(timeoutRef.current), timeoutRef.current = setTimeout(() => {
11
- lastCallTime.current = Date.now(), stableFn(...args), timeoutRef.current = null;
12
- }, delay - timeSinceLastCall));
4
+ const lastCallTime = useRef(0);
5
+ const timeoutRef = useRef(null);
6
+ const stableFn = useEvent(fn);
7
+ const throttledFn = useEvent((...args) => {
8
+ const now = Date.now();
9
+ const timeSinceLastCall = now - lastCallTime.current;
10
+ if (timeSinceLastCall >= delay) {
11
+ lastCallTime.current = now;
12
+ stableFn(...args);
13
+ } else {
14
+ if (timeoutRef.current) {
15
+ clearTimeout(timeoutRef.current);
16
+ }
17
+ timeoutRef.current = setTimeout(() => {
18
+ lastCallTime.current = Date.now();
19
+ stableFn(...args);
20
+ timeoutRef.current = null;
21
+ }, delay - timeSinceLastCall);
22
+ }
13
23
  });
24
+ return throttledFn;
14
25
  };
15
26
  export { useThrottle };
16
27
  //# sourceMappingURL=useThrottle.mjs.map
@@ -1 +1 @@
1
- {"version":3,"names":["useRef","useEvent","useThrottle","fn","delay","lastCallTime","timeoutRef","stableFn","args","now","Date","timeSinceLastCall","current","clearTimeout","setTimeout"],"sources":["../../src/useThrottle.ts"],"sourcesContent":[null],"mappings":"AAAA,SAASA,MAAA,QAAc;AAEvB,SAASC,QAAA,QAAgB;AAIlB,MAAMC,WAAA,GAAcA,CAAoCC,EAAA,EAAOC,KAAA,GAAQ,QAAW;EACvF,MAAMC,YAAA,GAAeL,MAAA,CAAe,CAAC;IAC/BM,UAAA,GAAaN,MAAA,CAAqB,IAAI;IAEtCO,QAAA,GAAWN,QAAA,CAASE,EAAE;EAwB5B,OAtBoBF,QAAA,CAAS,IAAIO,IAAA,KAAwB;IACvD,MAAMC,GAAA,GAAMC,IAAA,CAAKD,GAAA,CAAI;MACfE,iBAAA,GAAoBF,GAAA,GAAMJ,YAAA,CAAaO,OAAA;IAEzCD,iBAAA,IAAqBP,KAAA,IAEvBC,YAAA,CAAaO,OAAA,GAAUH,GAAA,EACvBF,QAAA,CAAS,GAAGC,IAAI,MAGZF,UAAA,CAAWM,OAAA,IACbC,YAAA,CAAaP,UAAA,CAAWM,OAAO,GAGjCN,UAAA,CAAWM,OAAA,GAAUE,UAAA,CAAW,MAAM;MACpCT,YAAA,CAAaO,OAAA,GAAUF,IAAA,CAAKD,GAAA,CAAI,GAChCF,QAAA,CAAS,GAAGC,IAAI,GAChBF,UAAA,CAAWM,OAAA,GAAU;IACvB,GAAGR,KAAA,GAAQO,iBAAiB;EAEhC,CAAC;AAGH","ignoreList":[]}
1
+ {"version":3,"names":["useRef","useEvent","useThrottle","fn","delay","lastCallTime","timeoutRef","stableFn","throttledFn","args","now","Date","timeSinceLastCall","current","clearTimeout","setTimeout"],"sources":["../../src/useThrottle.ts"],"sourcesContent":[null],"mappings":"AAAA,SAASA,MAAA,QAAc;AAEvB,SAASC,QAAA,QAAgB;AAIlB,MAAMC,WAAA,GAAcA,CAAoCC,EAAA,EAAOC,KAAA,GAAQ,QAAW;EACvF,MAAMC,YAAA,GAAeL,MAAA,CAAe,CAAC;EACrC,MAAMM,UAAA,GAAaN,MAAA,CAAqB,IAAI;EAE5C,MAAMO,QAAA,GAAWN,QAAA,CAASE,EAAE;EAE5B,MAAMK,WAAA,GAAcP,QAAA,CAAS,IAAIQ,IAAA,KAAwB;IACvD,MAAMC,GAAA,GAAMC,IAAA,CAAKD,GAAA,CAAI;IACrB,MAAME,iBAAA,GAAoBF,GAAA,GAAML,YAAA,CAAaQ,OAAA;IAE7C,IAAID,iBAAA,IAAqBR,KAAA,EAAO;MAE9BC,YAAA,CAAaQ,OAAA,GAAUH,GAAA;MACvBH,QAAA,CAAS,GAAGE,IAAI;IAClB,OAAO;MAEL,IAAIH,UAAA,CAAWO,OAAA,EAAS;QACtBC,YAAA,CAAaR,UAAA,CAAWO,OAAO;MACjC;MAEAP,UAAA,CAAWO,OAAA,GAAUE,UAAA,CAAW,MAAM;QACpCV,YAAA,CAAaQ,OAAA,GAAUF,IAAA,CAAKD,GAAA,CAAI;QAChCH,QAAA,CAAS,GAAGE,IAAI;QAChBH,UAAA,CAAWO,OAAA,GAAU;MACvB,GAAGT,KAAA,GAAQQ,iBAAiB;IAC9B;EACF,CAAC;EAED,OAAOJ,WAAA;AACT","ignoreList":[]}
@@ -1,18 +1,30 @@
1
1
  import { useRef } from "react";
2
2
  import { useEvent } from "./useEvent.native.js";
3
3
  var useThrottle = function (fn) {
4
- var delay = arguments.length > 1 && arguments[1] !== void 0 ? arguments[1] : 100,
5
- lastCallTime = useRef(0),
6
- timeoutRef = useRef(null),
7
- stableFn = useEvent(fn),
8
- throttledFn = useEvent(function () {
9
- for (var _len = arguments.length, args = new Array(_len), _key = 0; _key < _len; _key++) args[_key] = arguments[_key];
10
- var now = Date.now(),
11
- timeSinceLastCall = now - lastCallTime.current;
12
- timeSinceLastCall >= delay ? (lastCallTime.current = now, stableFn(...args)) : (timeoutRef.current && clearTimeout(timeoutRef.current), timeoutRef.current = setTimeout(function () {
13
- lastCallTime.current = Date.now(), stableFn(...args), timeoutRef.current = null;
14
- }, delay - timeSinceLastCall));
15
- });
4
+ var delay = arguments.length > 1 && arguments[1] !== void 0 ? arguments[1] : 100;
5
+ var lastCallTime = useRef(0);
6
+ var timeoutRef = useRef(null);
7
+ var stableFn = useEvent(fn);
8
+ var throttledFn = useEvent(function () {
9
+ for (var _len = arguments.length, args = new Array(_len), _key = 0; _key < _len; _key++) {
10
+ args[_key] = arguments[_key];
11
+ }
12
+ var now = Date.now();
13
+ var timeSinceLastCall = now - lastCallTime.current;
14
+ if (timeSinceLastCall >= delay) {
15
+ lastCallTime.current = now;
16
+ stableFn(...args);
17
+ } else {
18
+ if (timeoutRef.current) {
19
+ clearTimeout(timeoutRef.current);
20
+ }
21
+ timeoutRef.current = setTimeout(function () {
22
+ lastCallTime.current = Date.now();
23
+ stableFn(...args);
24
+ timeoutRef.current = null;
25
+ }, delay - timeSinceLastCall);
26
+ }
27
+ });
16
28
  return throttledFn;
17
29
  };
18
30
  export { useThrottle };
@@ -1 +1 @@
1
- {"version":3,"names":["useRef","useEvent","useThrottle","fn","delay","arguments","length","lastCallTime","timeoutRef","stableFn","throttledFn","_len","args","Array","_key","now","Date","timeSinceLastCall","current","clearTimeout","setTimeout"],"sources":["../../src/useThrottle.ts"],"sourcesContent":[null],"mappings":"AAAA,SAASA,MAAA,QAAc;AAEvB,SAASC,QAAA,QAAgB;AAIlB,IAAAC,WAAM,YAAAA,CAAyDC,EAAA;EACpE,IAAAC,KAAM,GAAAC,SAAe,CAAAC,MAAe,GAAC,CAC/B,IAAAD,SAAa,QAAqB,KAAI,CAEtC,GAAAA,SAAW,SAAS;IAAEE,YAAA,GAAAP,MAAA;IAAAQ,UAAA,GAAAR,MAAA;IAAAS,QAAA,GAAAR,QAAA,CAAAE,EAAA;IAAAO,WAAA,GAAAT,QAAA;MAwB5B,KAtBoB,IAAAU,IAAA,GAASN,SAAI,CAAAC,MAAwB,EAAAM,IAAA,OAAAC,KAAA,CAAAF,IAAA,GAAAG,IAAA,MAAAA,IAAA,GAAAH,IAAA,EAAAG,IAAA,IACvDF,IAAM,CAAAE,IAAA,CAAM,GAAAT,SACN,CAAAS,IAAA;MAEF,IAAAC,GAAA,GAAAC,IAAA,CAAAD,GAAA;QAAqBE,iBAEvB,GAAAF,GAAa,GAAAR,YACb,CAAAW,OAAS;MAQPD,iBAAa,IAAAb,KAAU,IAAKG,YAC5B,CAAAW,OAAY,GAAIH,GAChB,EAAAN,QAAA,CAAW,GAAAG,IAAA,MAAUJ,UAAA,CAAAU,OAAA,IAAAC,YAAA,CAAAX,UAAA,CAAAU,OAAA,GAAAV,UAAA,CAAAU,OAAA,GAAAE,UAAA;QACvBb,YAAW,CAAAW,OAAA,GAAAF,IAAiB,CAAAD,GAAA,IAAAN,QAAA,IAAAG,IAAA,GAAAJ,UAAA,CAAAU,OAAA;MAE/B,GAAAd,KAAA,GAAAa,iBAAA;IAGH","ignoreList":[]}
1
+ {"version":3,"names":["useRef","useEvent","useThrottle","fn","delay","arguments","length","lastCallTime","timeoutRef","stableFn","throttledFn","_len","args","Array","_key","now","Date","timeSinceLastCall","current","clearTimeout","setTimeout"],"sources":["../../src/useThrottle.ts"],"sourcesContent":[null],"mappings":"AAAA,SAASA,MAAA,QAAc;AAEvB,SAASC,QAAA,QAAgB;AAIlB,IAAAC,WAAM,YAAAA,CAAyDC,EAAA;EACpE,IAAAC,KAAM,GAAAC,SAAe,CAAAC,MAAe,GAAC,KAAAD,SAAA,iBAAAA,SAAA;EACrC,IAAAE,YAAM,GAAaP,MAAA,CAAqB;EAExC,IAAAQ,UAAM,GAAWR,MAAA,KAAW;EAE5B,IAAAS,QAAM,GAAAR,QAAc,CAAAE,EAAA;EAClB,IAAAO,WAAY,GAAAT,QAAS;IACrB,SAAMU,IAAA,GAAAN,SAAA,CAAoBC,MAAM,EAAAM,IAAA,OAAaC,KAAA,CAAAF,IAAA,GAAAG,IAAA,MAAAA,IAAA,GAAAH,IAAA,EAAAG,IAAA;MAE7CF,IAAI,CAAAE,IAAA,IAAAT,SAAA,CAAqBS,IAAA;IAEvB;IACA,IAAAC,GAAA,GAAAC,IAAY,CAAAD,GAAI;IAClB,IAAAE,iBAAO,GAAAF,GAAA,GAAAR,YAAA,CAAAW,OAAA;IAEL,IAAAD,iBAAe,IAAAb,KAAS;MACtBG,YAAA,CAAAW,OAAa,GAAAH,GAAW;MAC1BN,QAAA,IAAAG,IAAA;IAEA;MACE,IAAAJ,UAAA,CAAaU,OAAA;QACbC,YAAY,CAAAX,UAAI,CAAAU,OAAA;MAChB;MACFV,UAAG,CAAQU,OAAA,GAAAE,UAAiB;QAC9Bb,YAAA,CAAAW,OAAA,GAAAF,IAAA,CAAAD,GAAA;QACDN,QAAA,IAAAG,IAAA;QAEDJ,UAAO,CAAAU,OAAA;MACT,GAAAd,KAAA,GAAAa,iBAAA","ignoreList":[]}
@@ -2,26 +2,35 @@ import { getCurrentComponentStack } from "@take-out/helpers";
2
2
  import { useEffect, useId, useRef } from "react";
3
3
  function useWarnIfDepsChange(deps, options) {
4
4
  const {
5
- maxChanges = 0,
6
- name,
7
- ignoreIndexBefore = 0
8
- } = options,
9
- changeCountRef = useRef(0),
10
- prevDepsRef = useRef(void 0),
11
- id = useId();
5
+ maxChanges = 0,
6
+ name,
7
+ ignoreIndexBefore = 0
8
+ } = options;
9
+ const changeCountRef = useRef(0);
10
+ const prevDepsRef = useRef(void 0);
11
+ const id = useId();
12
12
  useEffect(() => {
13
13
  if (process.env.NODE_ENV === "development") {
14
14
  if (prevDepsRef.current !== void 0) {
15
15
  const changedDeps = [];
16
- (ignoreIndexBefore ? deps.slice(ignoreIndexBefore) : deps).forEach((dep, indexIn) => {
16
+ const compareDeps = ignoreIndexBefore ? deps.slice(ignoreIndexBefore) : deps;
17
+ compareDeps.forEach((dep, indexIn) => {
17
18
  const index = indexIn + ignoreIndexBefore;
18
- prevDepsRef.current && prevDepsRef.current[index] !== dep && changedDeps.push({
19
- index,
20
- prev: prevDepsRef.current[index],
21
- next: dep
22
- });
23
- }), changedDeps.length > 0 && (changeCountRef.current++, changeCountRef.current > maxChanges && console.info(`\u{1F504} useWarnIfDepsChange "${name}" is changing too often! Changed ${changeCountRef.current} times (max: ${maxChanges})`, changedDeps, `
24
- id (${id}) at:`, getCurrentComponentStack("short")));
19
+ if (prevDepsRef.current && prevDepsRef.current[index] !== dep) {
20
+ changedDeps.push({
21
+ index,
22
+ prev: prevDepsRef.current[index],
23
+ next: dep
24
+ });
25
+ }
26
+ });
27
+ if (changedDeps.length > 0) {
28
+ changeCountRef.current++;
29
+ if (changeCountRef.current > maxChanges) {
30
+ console.info(`\u{1F504} useWarnIfDepsChange "${name}" is changing too often! Changed ${changeCountRef.current} times (max: ${maxChanges})`, changedDeps, `
31
+ id (${id}) at:`, getCurrentComponentStack("short"));
32
+ }
33
+ }
25
34
  }
26
35
  prevDepsRef.current = deps;
27
36
  }
@@ -1 +1 @@
1
- {"version":3,"names":["getCurrentComponentStack","useEffect","useId","useRef","useWarnIfDepsChange","deps","options","maxChanges","name","ignoreIndexBefore","changeCountRef","prevDepsRef","id","process","env","NODE_ENV","current","changedDeps","slice","forEach","dep","indexIn","index","push","prev","next","length","console","info"],"sources":["../../src/useWarnIfDepsChange.ts"],"sourcesContent":[null],"mappings":"AAAA,SAASA,wBAAA,QAAgC;AACzC,SAASC,SAAA,EAAWC,KAAA,EAAOC,MAAA,QAAc;AAQlC,SAASC,oBACdC,IAAA,EACAC,OAAA,EACM;EACN,MAAM;MAAEC,UAAA,GAAa;MAAGC,IAAA;MAAMC,iBAAA,GAAoB;IAAE,IAAIH,OAAA;IAElDI,cAAA,GAAiBP,MAAA,CAAO,CAAC;IACzBQ,WAAA,GAAcR,MAAA,CAAsB,MAAS;IAC7CS,EAAA,GAAKV,KAAA,CAAM;EAEjBD,SAAA,CAAU,MAAM;IACd,IAAIY,OAAA,CAAQC,GAAA,CAAIC,QAAA,KAAa,eAAe;MAC1C,IAAIJ,WAAA,CAAYK,OAAA,KAAY,QAAW;QACrC,MAAMC,WAAA,GAID,EAAC;QAIN,CAFoBR,iBAAA,GAAoBJ,IAAA,CAAKa,KAAA,CAAMT,iBAAiB,IAAIJ,IAAA,EAE5Dc,OAAA,CAAQ,CAACC,GAAA,EAAKC,OAAA,KAAY;UACpC,MAAMC,KAAA,GAAQD,OAAA,GAAUZ,iBAAA;UAEpBE,WAAA,CAAYK,OAAA,IAAWL,WAAA,CAAYK,OAAA,CAAQM,KAAK,MAAMF,GAAA,IACxDH,WAAA,CAAYM,IAAA,CAAK;YACfD,KAAA;YACAE,IAAA,EAAMb,WAAA,CAAYK,OAAA,CAAQM,KAAK;YAC/BG,IAAA,EAAML;UACR,CAAC;QAEL,CAAC,GAEGH,WAAA,CAAYS,MAAA,GAAS,MACvBhB,cAAA,CAAeM,OAAA,IAEXN,cAAA,CAAeM,OAAA,GAAUT,UAAA,IAE3BoB,OAAA,CAAQC,IAAA,CACN,kCAA2BpB,IAAI,oCAAoCE,cAAA,CAAeM,OAAO,gBAAgBT,UAAU,KACnHU,WAAA,EACA;AAAA,OAAUL,EAAE,SACZZ,wBAAA,CAAyB,OAAO,CAClC;MAGN;MAEAW,WAAA,CAAYK,OAAA,GAAUX,IAAA;IACxB;EACF,CAAC;AACH","ignoreList":[]}
1
+ {"version":3,"names":["getCurrentComponentStack","useEffect","useId","useRef","useWarnIfDepsChange","deps","options","maxChanges","name","ignoreIndexBefore","changeCountRef","prevDepsRef","id","process","env","NODE_ENV","current","changedDeps","compareDeps","slice","forEach","dep","indexIn","index","push","prev","next","length","console","info"],"sources":["../../src/useWarnIfDepsChange.ts"],"sourcesContent":[null],"mappings":"AAAA,SAASA,wBAAA,QAAgC;AACzC,SAASC,SAAA,EAAWC,KAAA,EAAOC,MAAA,QAAc;AAQlC,SAASC,oBACdC,IAAA,EACAC,OAAA,EACM;EACN,MAAM;IAAEC,UAAA,GAAa;IAAGC,IAAA;IAAMC,iBAAA,GAAoB;EAAE,IAAIH,OAAA;EAExD,MAAMI,cAAA,GAAiBP,MAAA,CAAO,CAAC;EAC/B,MAAMQ,WAAA,GAAcR,MAAA,CAAsB,MAAS;EACnD,MAAMS,EAAA,GAAKV,KAAA,CAAM;EAEjBD,SAAA,CAAU,MAAM;IACd,IAAIY,OAAA,CAAQC,GAAA,CAAIC,QAAA,KAAa,eAAe;MAC1C,IAAIJ,WAAA,CAAYK,OAAA,KAAY,QAAW;QACrC,MAAMC,WAAA,GAID,EAAC;QAEN,MAAMC,WAAA,GAAcT,iBAAA,GAAoBJ,IAAA,CAAKc,KAAA,CAAMV,iBAAiB,IAAIJ,IAAA;QAExEa,WAAA,CAAYE,OAAA,CAAQ,CAACC,GAAA,EAAKC,OAAA,KAAY;UACpC,MAAMC,KAAA,GAAQD,OAAA,GAAUb,iBAAA;UAExB,IAAIE,WAAA,CAAYK,OAAA,IAAWL,WAAA,CAAYK,OAAA,CAAQO,KAAK,MAAMF,GAAA,EAAK;YAC7DJ,WAAA,CAAYO,IAAA,CAAK;cACfD,KAAA;cACAE,IAAA,EAAMd,WAAA,CAAYK,OAAA,CAAQO,KAAK;cAC/BG,IAAA,EAAML;YACR,CAAC;UACH;QACF,CAAC;QAED,IAAIJ,WAAA,CAAYU,MAAA,GAAS,GAAG;UAC1BjB,cAAA,CAAeM,OAAA;UAEf,IAAIN,cAAA,CAAeM,OAAA,GAAUT,UAAA,EAAY;YAEvCqB,OAAA,CAAQC,IAAA,CACN,kCAA2BrB,IAAI,oCAAoCE,cAAA,CAAeM,OAAO,gBAAgBT,UAAU,KACnHU,WAAA,EACA;AAAA,OAAUL,EAAE,SACZZ,wBAAA,CAAyB,OAAO,CAClC;UACF;QACF;MACF;MAEAW,WAAA,CAAYK,OAAA,GAAUX,IAAA;IACxB;EACF,CAAC;AACH","ignoreList":[]}