@tamagui/use-async 2.7.6 → 3.0.0-beta.637.1

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 (48) hide show
  1. package/dist/cjs/errors.cjs +20 -23
  2. package/dist/cjs/errors.native.cjs +138 -0
  3. package/dist/cjs/errors.native.js +102 -110
  4. package/dist/cjs/errors.native.js.map +1 -1
  5. package/dist/cjs/idle.cjs +46 -53
  6. package/dist/cjs/idle.native.cjs +66 -0
  7. package/dist/cjs/idle.native.js +49 -55
  8. package/dist/cjs/idle.native.js.map +1 -1
  9. package/dist/cjs/index.cjs +10 -11
  10. package/dist/cjs/index.native.cjs +24 -0
  11. package/dist/cjs/index.native.js +10 -10
  12. package/dist/cjs/index.native.js.map +1 -1
  13. package/dist/cjs/sleep.cjs +19 -22
  14. package/dist/cjs/sleep.native.cjs +35 -0
  15. package/dist/cjs/sleep.native.js +22 -24
  16. package/dist/cjs/sleep.native.js.map +1 -1
  17. package/dist/cjs/useAsyncEffect.cjs +50 -51
  18. package/dist/cjs/useAsyncEffect.native.cjs +86 -0
  19. package/dist/cjs/useAsyncEffect.native.js +60 -61
  20. package/dist/cjs/useAsyncEffect.native.js.map +1 -1
  21. package/dist/esm/errors.mjs +7 -6
  22. package/dist/esm/errors.mjs.map +1 -1
  23. package/dist/esm/errors.native.js +88 -93
  24. package/dist/esm/errors.native.js.map +1 -1
  25. package/dist/esm/idle.mjs +33 -35
  26. package/dist/esm/idle.mjs.map +1 -1
  27. package/dist/esm/idle.native.js +36 -38
  28. package/dist/esm/idle.native.js.map +1 -1
  29. package/dist/esm/index.mjs +7 -5
  30. package/dist/esm/index.native.js +7 -5
  31. package/dist/esm/sleep.mjs +6 -4
  32. package/dist/esm/sleep.mjs.map +1 -1
  33. package/dist/esm/sleep.native.js +9 -7
  34. package/dist/esm/sleep.native.js.map +1 -1
  35. package/dist/esm/useAsyncEffect.mjs +35 -33
  36. package/dist/esm/useAsyncEffect.mjs.map +1 -1
  37. package/dist/esm/useAsyncEffect.native.js +45 -44
  38. package/dist/esm/useAsyncEffect.native.js.map +1 -1
  39. package/package.json +8 -8
  40. package/types/errors.d.ts +5 -0
  41. package/types/idle.d.ts +7 -0
  42. package/types/index.d.ts +6 -0
  43. package/types/sleep.d.ts +3 -0
  44. package/types/useAsyncEffect.d.ts +8 -0
  45. package/dist/esm/index.js +0 -5
  46. package/dist/esm/index.js.map +0 -1
  47. package/dist/esm/index.mjs.map +0 -1
  48. package/dist/esm/index.native.js.map +0 -1
@@ -1 +1 @@
1
- {"version":3,"names":["AbortError","sleep","idleCb","requestIdleCallback","cb","setTimeout","idleAsync","Promise","res","idle","signal","options","max","min","fully","idleFn","fullyIdle","race","all","aborted"],"sources":["../../src/idle.ts"],"sourcesContent":[null],"mappings":"AAAA,SAASA,UAAA,QAAkB;AAC3B,SAASC,KAAA,QAAa;AAStB,IAAAC,MAAM,UACJC,mBAAO,gBAAwB,aAC1BC,EAAmB;EAG1B,OAAMC,UAAY,CAAAD,EAAA,EAAM;AACtB,IAAAD,mBAAoB;AAClB,IAAAG,SAAO,GAAG,SAAAA,CAAA;EACZ,OAAC,IAAAC,OAAA,WAAAC,GAAA;IACHN,MAAA,CAAAM,GAAA;EAEO;AAQL;AAEA,IAAAC,IAAM,kBAAAA,CAAiBC,MAAA,EAAAC,OAAY;EAEnC,IAAI;IAAAC,GAAA;IAAOC,GAAA;IAAAC;EAAO,IAAMH,OAAK;EAC3B,IAAAI,MAAM,GAAAD,KAAQ,GAAKE,SAAS,GAAAV,SAAY;EAC1C,IAAAM,GAAA,IAAWC,GAAA,IAAKA,GAAA,GAAAD,GAAA;IACd,MAAML,OAAA,CAAQU,IAAA,CAAK,CACrBV,OAAW,CAAAW,GAAA,CAAK,CACdH,MAAM,IACRd,KAAO,CAAAY,GAAA,EACL,GACFZ,KAAA,CAAAW,GAAA,EAEA,CAAI;EACF,WAAMA,GAAI;IACZ,MAAAL,OAAA,CAAAU,IAAA,EACFF,MAAA,IAEMd,KAAA,CAAAW,GAAA,EACJ;EACE,WAAMC,GAAA;IACN,MAAMN,OAAK,CAAAW,GAAM,EACjBH,MAAM,IACNd,KAAM,CAAAY,GAAA,EAGN;EACE;IACF,MAAAE,MAAA;EAGA;EACE,IAAAL,MAAM,KAAI,QAAAA,MAAW,uBAAAA,MAAA,CAAAS,OAAA;IACvB,UAAAnB,UAAA;EACF;AACF","ignoreList":[]}
1
+ {"version":3,"file":"idle.native.js","names":[],"sources":["esm/idle.native.js"],"sourcesContent":["import { AbortError } from \"./errors\";\nimport { sleep } from \"./sleep\";\nvar idleCb = typeof requestIdleCallback === \"undefined\" ? function(cb) {\n return setTimeout(cb, 1);\n} : requestIdleCallback;\nvar idleAsync = function() {\n return new Promise(function(res) {\n idleCb(res);\n });\n};\nvar idle = async function(signal, options) {\n var { max, min, fully } = options || {};\n var idleFn = fully ? fullyIdle : idleAsync;\n if (max && min && min < max) {\n await Promise.race([\n Promise.all([\n idleFn(),\n sleep(min)\n ]),\n sleep(max)\n ]);\n } else if (max) {\n await Promise.race([\n idleFn(),\n sleep(max)\n ]);\n } else if (min) {\n await Promise.all([\n idleFn(),\n sleep(min)\n ]);\n } else {\n await idleFn();\n }\n if (signal === null || signal === void 0 ? void 0 : signal.aborted) {\n throw new AbortError();\n }\n};\nvar fullyIdle = async function(signal) {\n while (true) {\n var startTime = Date.now();\n await idle(signal);\n var endTime = Date.now();\n var duration = endTime - startTime;\n if (duration < 15) {\n break;\n }\n if (signal === null || signal === void 0 ? void 0 : signal.aborted) {\n throw new AbortError();\n }\n }\n};\nexport {\n idle\n};\n//# sourceMappingURL=idle.js.map\n"],"mappings":";;;;AAEA,IAAI,SAAS,OAAO,wBAAwB,cAAc,SAAS,IAAI;CACrE,OAAO,WAAW,IAAI,CAAC;AACzB,IAAI;AACJ,IAAI,YAAY,WAAW;CACzB,OAAO,IAAI,QAAQ,SAAS,KAAK;EAC/B,OAAO,GAAG;CACZ,CAAC;AACH;AACA,IAAI,OAAO,eAAe,QAAQ,SAAS;CACzC,IAAI,EAAE,KAAK,KAAK,UAAU,WAAW,CAAC;CACtC,IAAI,SAAS,QAAQ,YAAY;CACjC,IAAI,OAAO,OAAO,MAAM,KAAK;EAC3B,MAAM,QAAQ,KAAK,CACjB,QAAQ,IAAI,CACV,OAAO,GACP,MAAM,GAAG,CACX,CAAC,GACD,MAAM,GAAG,CACX,CAAC;CACH,OAAO,IAAI,KAAK;EACd,MAAM,QAAQ,KAAK,CACjB,OAAO,GACP,MAAM,GAAG,CACX,CAAC;CACH,OAAO,IAAI,KAAK;EACd,MAAM,QAAQ,IAAI,CAChB,OAAO,GACP,MAAM,GAAG,CACX,CAAC;CACH,OAAO;EACL,MAAM,OAAO;CACf;CACA,IAAI,WAAW,QAAQ,WAAW,KAAK,IAAI,KAAK,IAAI,OAAO,SAAS;EAClE,MAAM,IAAI,WAAW;CACvB;AACF;AACA,IAAI,YAAY,eAAe,QAAQ;CACrC,OAAO,MAAM;EACX,IAAI,YAAY,KAAK,IAAI;EACzB,MAAM,KAAK,MAAM;EACjB,IAAI,UAAU,KAAK,IAAI;EACvB,IAAI,WAAW,UAAU;EACzB,IAAI,WAAW,IAAI;GACjB;EACF;EACA,IAAI,WAAW,QAAQ,WAAW,KAAK,IAAI,KAAK,IAAI,OAAO,SAAS;GAClE,MAAM,IAAI,WAAW;EACvB;CACF;AACF"}
@@ -1,5 +1,7 @@
1
- export * from "./useAsyncEffect.mjs";
2
- export * from "./sleep.mjs";
3
- export * from "./idle.mjs";
4
- export * from "./errors.mjs";
5
- //# sourceMappingURL=index.mjs.map
1
+ export * from "./useAsyncEffect.mjs"
2
+
3
+ export * from "./sleep.mjs"
4
+
5
+ export * from "./idle.mjs"
6
+
7
+ export * from "./errors.mjs"
@@ -1,5 +1,7 @@
1
- export * from "./useAsyncEffect.native.js";
2
- export * from "./sleep.native.js";
3
- export * from "./idle.native.js";
4
- export * from "./errors.native.js";
5
- //# sourceMappingURL=index.native.js.map
1
+ export * from "./useAsyncEffect.native.js"
2
+
3
+ export * from "./sleep.native.js"
4
+
5
+ export * from "./idle.native.js"
6
+
7
+ export * from "./errors.native.js"
@@ -1,9 +1,11 @@
1
1
  import { AbortError } from "./errors.mjs";
2
+
2
3
  const sleep = async (ms, signal) => {
3
- await new Promise(res => setTimeout(res, ms));
4
- if (signal?.aborted) {
5
- throw new AbortError();
6
- }
4
+ await new Promise((res) => setTimeout(res, ms));
5
+ if (signal?.aborted) {
6
+ throw new AbortError();
7
+ }
7
8
  };
9
+
8
10
  export { sleep };
9
11
  //# sourceMappingURL=sleep.mjs.map
@@ -1 +1 @@
1
- {"version":3,"names":["AbortError","sleep","ms","signal","Promise","res","setTimeout","aborted"],"sources":["../../src/sleep.ts"],"sourcesContent":[null],"mappings":"AAAA,SAASA,UAAA,QAAkB;AAEpB,MAAMC,KAAA,GAAQ,MAAAA,CAAOC,EAAA,EAAYC,MAAA,KAAwC;EAC9E,MAAM,IAAIC,OAAA,CAASC,GAAA,IAAQC,UAAA,CAAWD,GAAA,EAAKH,EAAE,CAAC;EAC9C,IAAIC,MAAA,EAAQI,OAAA,EAAS;IACnB,MAAM,IAAIP,UAAA,CAAW;EACvB;AACF","ignoreList":[]}
1
+ {"version":3,"file":"sleep.js","names":[],"sources":["esm/sleep.js"],"sourcesContent":["import { AbortError } from \"./errors\";\nconst sleep = async (ms, signal) => {\n await new Promise((res) => setTimeout(res, ms));\n if (signal?.aborted) {\n throw new AbortError();\n }\n};\nexport {\n sleep\n};\n//# sourceMappingURL=sleep.js.map\n"],"mappings":";;;AACA,MAAM,QAAQ,OAAO,IAAI,WAAW;CAClC,MAAM,IAAI,SAAS,QAAQ,WAAW,KAAK,EAAE,CAAC;CAC9C,IAAI,QAAQ,SAAS;EACnB,MAAM,IAAI,WAAW;CACvB;AACF"}
@@ -1,11 +1,13 @@
1
1
  import { AbortError } from "./errors.native.js";
2
- var sleep = async function (ms, signal) {
3
- await new Promise(function (res) {
4
- return setTimeout(res, ms);
5
- });
6
- if (signal === null || signal === void 0 ? void 0 : signal.aborted) {
7
- throw new AbortError();
8
- }
2
+
3
+ var sleep = async function(ms, signal) {
4
+ await new Promise(function(res) {
5
+ return setTimeout(res, ms);
6
+ });
7
+ if (signal === null || signal === void 0 ? void 0 : signal.aborted) {
8
+ throw new AbortError();
9
+ }
9
10
  };
11
+
10
12
  export { sleep };
11
13
  //# sourceMappingURL=sleep.native.js.map
@@ -1 +1 @@
1
- {"version":3,"names":["AbortError","sleep","ms","signal","Promise","res","setTimeout","aborted"],"sources":["../../src/sleep.ts"],"sourcesContent":[null],"mappings":"AAAA,SAASA,UAAA,QAAkB;AAEpB,IAAAC,KAAM,kBAAAA,CAA2BC,EAAA,EAAAC,MAAwC;EAC9E,MAAM,IAAIC,OAAA,CAAQ,UAASC,GAAA;IAC3B,OAAIC,UAAQ,CAAAD,GAAS,EAAAH,EAAA;EACnB;EACF,IAAAC,MAAA,aAAAA,MAAA,uBAAAA,MAAA,CAAAI,OAAA;IACF,UAAAP,UAAA","ignoreList":[]}
1
+ {"version":3,"file":"sleep.native.js","names":[],"sources":["esm/sleep.native.js"],"sourcesContent":["import { AbortError } from \"./errors\";\nvar sleep = async function(ms, signal) {\n await new Promise(function(res) {\n return setTimeout(res, ms);\n });\n if (signal === null || signal === void 0 ? void 0 : signal.aborted) {\n throw new AbortError();\n }\n};\nexport {\n sleep\n};\n//# sourceMappingURL=sleep.js.map\n"],"mappings":";;;AACA,IAAI,QAAQ,eAAe,IAAI,QAAQ;CACrC,MAAM,IAAI,QAAQ,SAAS,KAAK;EAC9B,OAAO,WAAW,KAAK,EAAE;CAC3B,CAAC;CACD,IAAI,WAAW,QAAQ,WAAW,KAAK,IAAI,KAAK,IAAI,OAAO,SAAS;EAClE,MAAM,IAAI,WAAW;CACvB;AACF"}
@@ -1,44 +1,46 @@
1
1
  import { useEffect, useLayoutEffect } from "react";
2
2
  import { AbortError } from "./errors.mjs";
3
+
3
4
  const DEBUG_LEVEL = 0;
4
5
  function useAsyncEffect(cb, deps = []) {
5
- useAsyncEffectOfType(useEffect, cb, deps);
6
+ useAsyncEffectOfType(useEffect, cb, deps);
6
7
  }
7
8
  function useAsyncLayoutEffect(cb, deps = []) {
8
- useAsyncEffectOfType(useLayoutEffect, cb, deps);
9
+ useAsyncEffectOfType(useLayoutEffect, cb, deps);
9
10
  }
10
11
  function useAsyncEffectOfType(type, cb, deps = []) {
11
- type(() => {
12
- const controller = new AbortController();
13
- const signal = controller.signal;
14
- try {
15
- const value = cb(signal, ...deps);
16
- Promise.resolve(value).then(async res => {
17
- if (res && typeof res === "function") {
18
- if (signal.aborted) return res();
19
- signal.addEventListener("abort", res);
20
- }
21
- }).catch(handleError);
22
- } catch (error) {
23
- handleError(error);
24
- }
25
- function handleError(error) {
26
- if (error instanceof AbortError) {
27
- if (DEBUG_LEVEL > 2) {
28
- console.info(`\u{1F41B} useAsyncEffect aborted: ${error.message}`);
29
- }
30
- return null;
31
- }
32
- if (typeof error === "object" && error.name === "AbortError") {
33
- return null;
34
- }
35
- throw error;
36
- }
37
- return () => {
38
- if (signal.aborted) return;
39
- controller.abort();
40
- };
41
- }, deps);
12
+ type(() => {
13
+ const controller = new AbortController();
14
+ const signal = controller.signal;
15
+ try {
16
+ const value = cb(signal, ...deps);
17
+ Promise.resolve(value).then(async (res) => {
18
+ if (res && typeof res === "function") {
19
+ if (signal.aborted) return res();
20
+ signal.addEventListener("abort", res);
21
+ }
22
+ }).catch(handleError);
23
+ } catch (error) {
24
+ handleError(error);
25
+ }
26
+ function handleError(error) {
27
+ if (error instanceof AbortError) {
28
+ if (DEBUG_LEVEL > 2) {
29
+ console.info(`\u{1F41B} useAsyncEffect aborted: ${error.message}`);
30
+ }
31
+ return null;
32
+ }
33
+ if (typeof error === "object" && error.name === "AbortError") {
34
+ return null;
35
+ }
36
+ throw error;
37
+ }
38
+ return () => {
39
+ if (signal.aborted) return;
40
+ controller.abort();
41
+ };
42
+ }, deps);
42
43
  }
44
+
43
45
  export { useAsyncEffect, useAsyncEffectOfType, useAsyncLayoutEffect };
44
46
  //# sourceMappingURL=useAsyncEffect.mjs.map
@@ -1 +1 @@
1
- {"version":3,"names":["useEffect","useLayoutEffect","AbortError","DEBUG_LEVEL","useAsyncEffect","cb","deps","useAsyncEffectOfType","useAsyncLayoutEffect","type","controller","AbortController","signal","value","Promise","resolve","then","res","aborted","addEventListener","catch","handleError","error","console","info","message","name","abort"],"sources":["../../src/useAsyncEffect.ts"],"sourcesContent":[null],"mappings":"AAEA,SAASA,SAAA,EAAWC,eAAA,QAAuB;AAC3C,SAASC,UAAA,QAAkB;AAE3B,MAAMC,WAAA,GAAc;AASb,SAASC,eAAeC,EAAA,EAAyBC,IAAA,GAAc,EAAC,EAAS;EAC9EC,oBAAA,CAAqBP,SAAA,EAAWK,EAAA,EAAIC,IAAI;AAC1C;AAEO,SAASE,qBAAqBH,EAAA,EAAyBC,IAAA,GAAc,EAAC,EAAS;EACpFC,oBAAA,CAAqBN,eAAA,EAAiBI,EAAA,EAAIC,IAAI;AAChD;AAEO,SAASC,qBACdE,IAAA,EACAJ,EAAA,EACAC,IAAA,GAAc,EAAC,EACT;EACNG,IAAA,CAAK,MAAM;IACT,MAAMC,UAAA,GAAa,IAAIC,eAAA,CAAgB;IACvC,MAAMC,MAAA,GAASF,UAAA,CAAWE,MAAA;IAG1B,IAAI;MACF,MAAMC,KAAA,GAAQR,EAAA,CAAGO,MAAA,EAAQ,GAAGN,IAAI;MAEhCQ,OAAA,CAAQC,OAAA,CAAQF,KAAK,EAClBG,IAAA,CAAK,MAAOC,GAAA,IAAQ;QACnB,IAAIA,GAAA,IAAO,OAAOA,GAAA,KAAQ,YAAY;UACpC,IAAIL,MAAA,CAAOM,OAAA,EAAS,OAAOD,GAAA,CAAI;UAC/BL,MAAA,CAAOO,gBAAA,CAAiB,SAASF,GAAG;QACtC;MACF,CAAC,EACAG,KAAA,CAAMC,WAAW;IACtB,SAASC,KAAA,EAAO;MACdD,WAAA,CAAYC,KAAK;IACnB;IAEA,SAASD,YAAYC,KAAA,EAAY;MAC/B,IAAIA,KAAA,YAAiBpB,UAAA,EAAY;QAC/B,IAAIC,WAAA,GAAc,GAAG;UACnBoB,OAAA,CAAQC,IAAA,CAAK,qCAA8BF,KAAA,CAAMG,OAAO,EAAE;QAC5D;QACA,OAAO;MACT;MAIA,IAAI,OAAOH,KAAA,KAAU,YAAYA,KAAA,CAAMI,IAAA,KAAS,cAAc;QAC5D,OAAO;MACT;MAKA,MAAMJ,KAAA;IACR;IAEA,OAAO,MAAM;MACX,IAAIV,MAAA,CAAOM,OAAA,EAAS;MACpBR,UAAA,CAAWiB,KAAA,CAAM;IACnB;EACF,GAAGrB,IAAI;AACT","ignoreList":[]}
1
+ {"version":3,"file":"useAsyncEffect.js","names":[],"sources":["esm/useAsyncEffect.js"],"sourcesContent":["import { useEffect, useLayoutEffect } from \"react\";\nimport { AbortError } from \"./errors\";\nconst DEBUG_LEVEL = 0;\nfunction useAsyncEffect(cb, deps = []) {\n useAsyncEffectOfType(useEffect, cb, deps);\n}\nfunction useAsyncLayoutEffect(cb, deps = []) {\n useAsyncEffectOfType(useLayoutEffect, cb, deps);\n}\nfunction useAsyncEffectOfType(type, cb, deps = []) {\n type(() => {\n const controller = new AbortController();\n const signal = controller.signal;\n try {\n const value = cb(signal, ...deps);\n Promise.resolve(value).then(async (res) => {\n if (res && typeof res === \"function\") {\n if (signal.aborted) return res();\n signal.addEventListener(\"abort\", res);\n }\n }).catch(handleError);\n } catch (error) {\n handleError(error);\n }\n function handleError(error) {\n if (error instanceof AbortError) {\n if (DEBUG_LEVEL > 2) {\n console.info(`\\u{1F41B} useAsyncEffect aborted: ${error.message}`);\n }\n return null;\n }\n if (typeof error === \"object\" && error.name === \"AbortError\") {\n return null;\n }\n throw error;\n }\n return () => {\n if (signal.aborted) return;\n controller.abort();\n };\n }, deps);\n}\nexport {\n useAsyncEffect,\n useAsyncEffectOfType,\n useAsyncLayoutEffect\n};\n//# sourceMappingURL=useAsyncEffect.js.map\n"],"mappings":";;;;AAEA,MAAM,cAAc;AACpB,SAAS,eAAe,IAAI,OAAO,CAAC,GAAG;CACrC,qBAAqB,WAAW,IAAI,IAAI;AAC1C;AACA,SAAS,qBAAqB,IAAI,OAAO,CAAC,GAAG;CAC3C,qBAAqB,iBAAiB,IAAI,IAAI;AAChD;AACA,SAAS,qBAAqB,MAAM,IAAI,OAAO,CAAC,GAAG;CACjD,WAAW;EACT,MAAM,aAAa,IAAI,gBAAgB;EACvC,MAAM,SAAS,WAAW;EAC1B,IAAI;GACF,MAAM,QAAQ,GAAG,QAAQ,GAAG,IAAI;GAChC,QAAQ,QAAQ,KAAK,EAAE,KAAK,OAAO,QAAQ;IACzC,IAAI,OAAO,OAAO,QAAQ,YAAY;KACpC,IAAI,OAAO,SAAS,OAAO,IAAI;KAC/B,OAAO,iBAAiB,SAAS,GAAG;IACtC;GACF,CAAC,EAAE,MAAM,WAAW;EACtB,SAAS,OAAO;GACd,YAAY,KAAK;EACnB;EACA,SAAS,YAAY,OAAO;GAC1B,IAAI,iBAAiB,YAAY;IAC/B,IAAI,cAAc,GAAG;KACnB,QAAQ,KAAK,qCAAqC,MAAM,SAAS;IACnE;IACA,OAAO;GACT;GACA,IAAI,OAAO,UAAU,YAAY,MAAM,SAAS,cAAc;IAC5D,OAAO;GACT;GACA,MAAM;EACR;EACA,aAAa;GACX,IAAI,OAAO,SAAS;GACpB,WAAW,MAAM;EACnB;CACF,GAAG,IAAI;AACT"}
@@ -1,59 +1,60 @@
1
1
  import { useEffect, useLayoutEffect } from "react";
2
2
  import { AbortError } from "./errors.native.js";
3
+
3
4
  function _instanceof(left, right) {
4
- if (right != null && typeof Symbol !== "undefined" && right[Symbol.hasInstance]) {
5
- return !!right[Symbol.hasInstance](left);
6
- } else {
7
- return left instanceof right;
8
- }
5
+ if (right != null && typeof Symbol !== "undefined" && right[Symbol.hasInstance]) {
6
+ return !!right[Symbol.hasInstance](left);
7
+ } else {
8
+ return left instanceof right;
9
+ }
9
10
  }
10
11
  function _type_of(obj) {
11
- "@swc/helpers - typeof";
12
-
13
- return obj && typeof Symbol !== "undefined" && obj.constructor === Symbol ? "symbol" : typeof obj;
12
+ "@swc/helpers - typeof";
13
+ return obj && typeof Symbol !== "undefined" && obj.constructor === Symbol ? "symbol" : typeof obj;
14
14
  }
15
15
  var DEBUG_LEVEL = 0;
16
16
  function useAsyncEffect(cb) {
17
- var deps = arguments.length > 1 && arguments[1] !== void 0 ? arguments[1] : [];
18
- useAsyncEffectOfType(useEffect, cb, deps);
17
+ var deps = arguments.length > 1 && arguments[1] !== void 0 ? arguments[1] : [];
18
+ useAsyncEffectOfType(useEffect, cb, deps);
19
19
  }
20
20
  function useAsyncLayoutEffect(cb) {
21
- var deps = arguments.length > 1 && arguments[1] !== void 0 ? arguments[1] : [];
22
- useAsyncEffectOfType(useLayoutEffect, cb, deps);
21
+ var deps = arguments.length > 1 && arguments[1] !== void 0 ? arguments[1] : [];
22
+ useAsyncEffectOfType(useLayoutEffect, cb, deps);
23
23
  }
24
24
  function useAsyncEffectOfType(type, cb) {
25
- var deps = arguments.length > 2 && arguments[2] !== void 0 ? arguments[2] : [];
26
- type(function () {
27
- var controller = new AbortController();
28
- var signal = controller.signal;
29
- try {
30
- var value = cb(signal, ...deps);
31
- Promise.resolve(value).then(async function (res) {
32
- if (res && typeof res === "function") {
33
- if (signal.aborted) return res();
34
- signal.addEventListener("abort", res);
35
- }
36
- }).catch(handleError);
37
- } catch (error) {
38
- handleError(error);
39
- }
40
- function handleError(error) {
41
- if (_instanceof(error, AbortError)) {
42
- if (DEBUG_LEVEL > 2) {
43
- console.info(`\u{1F41B} useAsyncEffect aborted: ${error.message}`);
44
- }
45
- return null;
46
- }
47
- if ((typeof error === "undefined" ? "undefined" : _type_of(error)) === "object" && error.name === "AbortError") {
48
- return null;
49
- }
50
- throw error;
51
- }
52
- return function () {
53
- if (signal.aborted) return;
54
- controller.abort();
55
- };
56
- }, deps);
25
+ var deps = arguments.length > 2 && arguments[2] !== void 0 ? arguments[2] : [];
26
+ type(function() {
27
+ var controller = new AbortController();
28
+ var signal = controller.signal;
29
+ try {
30
+ var value = cb(signal, ...deps);
31
+ Promise.resolve(value).then(async function(res) {
32
+ if (res && typeof res === "function") {
33
+ if (signal.aborted) return res();
34
+ signal.addEventListener("abort", res);
35
+ }
36
+ }).catch(handleError);
37
+ } catch (error) {
38
+ handleError(error);
39
+ }
40
+ function handleError(error) {
41
+ if (_instanceof(error, AbortError)) {
42
+ if (DEBUG_LEVEL > 2) {
43
+ console.info(`\u{1F41B} useAsyncEffect aborted: ${error.message}`);
44
+ }
45
+ return null;
46
+ }
47
+ if ((typeof error === "undefined" ? "undefined" : _type_of(error)) === "object" && error.name === "AbortError") {
48
+ return null;
49
+ }
50
+ throw error;
51
+ }
52
+ return function() {
53
+ if (signal.aborted) return;
54
+ controller.abort();
55
+ };
56
+ }, deps);
57
57
  }
58
+
58
59
  export { useAsyncEffect, useAsyncEffectOfType, useAsyncLayoutEffect };
59
60
  //# sourceMappingURL=useAsyncEffect.native.js.map
@@ -1 +1 @@
1
- {"version":3,"names":["useEffect","useLayoutEffect","AbortError","_instanceof","left","right","Symbol","hasInstance","_type_of","obj","constructor","DEBUG_LEVEL","useAsyncEffect","cb","deps","arguments","length","useAsyncEffectOfType","useAsyncLayoutEffect","type","controller","AbortController","signal","value","Promise","resolve","then","res","aborted","addEventListener","catch","handleError","error","console","info","message"],"sources":["../../src/useAsyncEffect.ts"],"sourcesContent":[null],"mappings":"AAEA,SAASA,SAAA,EAAWC,eAAA,QAAuB;AAC3C,SAASC,UAAA,QAAkB;AAE3B,SAAMC,WAAcA,CAAAC,IAAA,EAAAC,KAAA;EASb,IAAAA,KAAS,mBAAwCC,MAAe,KAAS,eAAAD,KAAA,CAAAC,MAAA,CAAAC,WAAA;IAC9E,SAAAF,KAAA,CAAAC,MAAqB,CAAAC,WAAW,CAAI,CAAAH,IAAI;EAC1C;IAEO,OAASA,IAAA,YAAAC,KAAqB;EACnC;AACF;AAEO,SAASG,SAAAC,GAAA;EAKd,uBAAW;;EACT,OAAAA,GAAM,WAAaH,MAAI,gBAAgB,IAAAG,GAAA,CAAAC,WAAA,KAAAJ,MAAA,qBAAAG,GAAA;AACvC;AAGA,IAAAE,WAAI;AACF,SAAAC,cAAiBA,CAAAC,EAAA;EAEjB,IAAAC,IAAA,GAAAC,SAAgB,CAAAC,MACb,QAAKD,SAAO,GAAQ,cAAAA,SAAA;EACnBE,oBAAW,CAAAjB,SAAO,EAAQa,EAAA,EAAAC,IAAA;AACxB;AACA,SAAAI,oBAAOA,CAAAL,EAAA,EAAiB;EAAY,IAAAC,IACtC,GAAAC,SAAA,CAAAC,MAAA,QAAAD,SAAA,iBAAAA,SAAA;EAAAE,oBAEK,CAAAhB,eAAW,EAAAY,EAAA,EAAAC,IAAA;AAAA;AAEpB,SAAAG,oBAAiBA,CAAAE,IAAA,EAAAN,EAAA;EAAA,IACnBC,IAAA,GAAAC,SAAA,CAAAC,MAAA,QAAAD,SAAA,iBAAAA,SAAA;EAEAI,IAAA,aAAS;IACP,IAAAC,UAAI,OAAAC,eAA6B;IAC/B,IAAAC,MAAI,GAAAF,UAAc,CAAAE,MAAG;IACnB;MAA0D,IAC5DC,KAAA,GAAAV,EAAA,CAAAS,MAAA,KAAAR,IAAA;MACAU,OAAA,CAAAC,OAAO,CAAAF,KAAA,EAAAG,IAAA,iBAAAC,GAAA;QACT,IAAAA,GAAA,WAAAA,GAAA;UAII,IAAAL,MAAO,CAAAM,OAAU,SAAAD,GAAY;UAC/BL,MAAO,CAAAO,gBAAA,UAAAF,GAAA;QACT;MAKA,GAAAG,KAAM,CAAAC,WAAA;IACR,SAAAC,KAAA;MAEAD,WAAa,CAAAC,KAAA;IACX;IACA,SAAAD,WAAiBA,CAAAC,KAAA;MACnB,IAAA7B,WAAA,CAAA6B,KAAA,EAAA9B,UAAA;QACC,IAAIS,WAAA;UACTsB,OAAA,CAAAC,IAAA,sCAAAF,KAAA,CAAAG,OAAA","ignoreList":[]}
1
+ {"version":3,"file":"useAsyncEffect.native.js","names":[],"sources":["esm/useAsyncEffect.native.js"],"sourcesContent":["import { useEffect, useLayoutEffect } from \"react\";\nimport { AbortError } from \"./errors\";\nfunction _instanceof(left, right) {\n if (right != null && typeof Symbol !== \"undefined\" && right[Symbol.hasInstance]) {\n return !!right[Symbol.hasInstance](left);\n } else {\n return left instanceof right;\n }\n}\nfunction _type_of(obj) {\n \"@swc/helpers - typeof\";\n return obj && typeof Symbol !== \"undefined\" && obj.constructor === Symbol ? \"symbol\" : typeof obj;\n}\nvar DEBUG_LEVEL = 0;\nfunction useAsyncEffect(cb) {\n var deps = arguments.length > 1 && arguments[1] !== void 0 ? arguments[1] : [];\n useAsyncEffectOfType(useEffect, cb, deps);\n}\nfunction useAsyncLayoutEffect(cb) {\n var deps = arguments.length > 1 && arguments[1] !== void 0 ? arguments[1] : [];\n useAsyncEffectOfType(useLayoutEffect, cb, deps);\n}\nfunction useAsyncEffectOfType(type, cb) {\n var deps = arguments.length > 2 && arguments[2] !== void 0 ? arguments[2] : [];\n type(function() {\n var controller = new AbortController();\n var signal = controller.signal;\n try {\n var value = cb(signal, ...deps);\n Promise.resolve(value).then(async function(res) {\n if (res && typeof res === \"function\") {\n if (signal.aborted) return res();\n signal.addEventListener(\"abort\", res);\n }\n }).catch(handleError);\n } catch (error) {\n handleError(error);\n }\n function handleError(error) {\n if (_instanceof(error, AbortError)) {\n if (DEBUG_LEVEL > 2) {\n console.info(`\\u{1F41B} useAsyncEffect aborted: ${error.message}`);\n }\n return null;\n }\n if ((typeof error === \"undefined\" ? \"undefined\" : _type_of(error)) === \"object\" && error.name === \"AbortError\") {\n return null;\n }\n throw error;\n }\n return function() {\n if (signal.aborted) return;\n controller.abort();\n };\n }, deps);\n}\nexport {\n useAsyncEffect,\n useAsyncEffectOfType,\n useAsyncLayoutEffect\n};\n//# sourceMappingURL=useAsyncEffect.js.map\n"],"mappings":";;;;AAEA,SAAS,YAAY,MAAM,OAAO;CAChC,IAAI,SAAS,QAAQ,OAAO,WAAW,eAAe,MAAM,OAAO,cAAc;EAC/E,OAAO,CAAC,CAAC,MAAM,OAAO,aAAa,IAAI;CACzC,OAAO;EACL,OAAO,gBAAgB;CACzB;AACF;AACA,SAAS,SAAS,KAAK;CACrB;CACA,OAAO,OAAO,OAAO,WAAW,eAAe,IAAI,gBAAgB,SAAS,WAAW,OAAO;AAChG;AACA,IAAI,cAAc;AAClB,SAAS,eAAe,IAAI;CAC1B,IAAI,OAAO,UAAU,SAAS,KAAK,UAAU,OAAO,KAAK,IAAI,UAAU,KAAK,CAAC;CAC7E,qBAAqB,WAAW,IAAI,IAAI;AAC1C;AACA,SAAS,qBAAqB,IAAI;CAChC,IAAI,OAAO,UAAU,SAAS,KAAK,UAAU,OAAO,KAAK,IAAI,UAAU,KAAK,CAAC;CAC7E,qBAAqB,iBAAiB,IAAI,IAAI;AAChD;AACA,SAAS,qBAAqB,MAAM,IAAI;CACtC,IAAI,OAAO,UAAU,SAAS,KAAK,UAAU,OAAO,KAAK,IAAI,UAAU,KAAK,CAAC;CAC7E,KAAK,WAAW;EACd,IAAI,aAAa,IAAI,gBAAgB;EACrC,IAAI,SAAS,WAAW;EACxB,IAAI;GACF,IAAI,QAAQ,GAAG,QAAQ,GAAG,IAAI;GAC9B,QAAQ,QAAQ,KAAK,EAAE,KAAK,eAAe,KAAK;IAC9C,IAAI,OAAO,OAAO,QAAQ,YAAY;KACpC,IAAI,OAAO,SAAS,OAAO,IAAI;KAC/B,OAAO,iBAAiB,SAAS,GAAG;IACtC;GACF,CAAC,EAAE,MAAM,WAAW;EACtB,SAAS,OAAO;GACd,YAAY,KAAK;EACnB;EACA,SAAS,YAAY,OAAO;GAC1B,IAAI,YAAY,OAAO,UAAU,GAAG;IAClC,IAAI,cAAc,GAAG;KACnB,QAAQ,KAAK,qCAAqC,MAAM,SAAS;IACnE;IACA,OAAO;GACT;GACA,KAAK,OAAO,UAAU,cAAc,cAAc,SAAS,KAAK,OAAO,YAAY,MAAM,SAAS,cAAc;IAC9G,OAAO;GACT;GACA,MAAM;EACR;EACA,OAAO,WAAW;GAChB,IAAI,OAAO,SAAS;GACpB,WAAW,MAAM;EACnB;CACF,GAAG,IAAI;AACT"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@tamagui/use-async",
3
- "version": "2.7.6",
3
+ "version": "3.0.0-beta.637.1",
4
4
  "files": [
5
5
  "src",
6
6
  "types",
@@ -8,13 +8,13 @@
8
8
  ],
9
9
  "type": "module",
10
10
  "sideEffects": false,
11
- "main": "dist/cjs",
12
- "module": "dist/esm",
13
- "types": "./src",
11
+ "main": "./dist/cjs/index.cjs",
12
+ "module": "./dist/esm/index.mjs",
13
+ "types": "./types/index.d.ts",
14
14
  "exports": {
15
15
  "./package.json": "./package.json",
16
16
  ".": {
17
- "types": "./src/index.ts",
17
+ "types": "./types/index.d.ts",
18
18
  "react-native": "./dist/esm/index.native.js",
19
19
  "browser": "./dist/esm/index.mjs",
20
20
  "module": "./dist/esm/index.mjs",
@@ -27,13 +27,13 @@
27
27
  "access": "public"
28
28
  },
29
29
  "scripts": {
30
- "build": "tamagui-build --skip-types",
31
- "watch": "tamagui-build --skip-types --watch",
30
+ "build": "tamagui-build",
31
+ "watch": "tamagui-build --watch",
32
32
  "clean": "tamagui-build clean",
33
33
  "clean:build": "tamagui-build clean:build"
34
34
  },
35
35
  "devDependencies": {
36
- "@tamagui/build": "2.7.6",
36
+ "@tamagui/build": "3.0.0-beta.637.1",
37
37
  "react": ">=19"
38
38
  },
39
39
  "peerDependencies": {
@@ -0,0 +1,5 @@
1
+ export declare class AbortError extends Error {
2
+ constructor(message?: string);
3
+ }
4
+
5
+ //# sourceMappingURL=errors.d.ts.map
@@ -0,0 +1,7 @@
1
+ export declare const idle: (signal?: AbortSignal, options?: {
2
+ max?: number;
3
+ min?: number;
4
+ fully?: boolean;
5
+ }) => Promise<void>;
6
+
7
+ //# sourceMappingURL=idle.d.ts.map
@@ -0,0 +1,6 @@
1
+ export * from "./useAsyncEffect";
2
+ export * from "./sleep";
3
+ export * from "./idle";
4
+ export * from "./errors";
5
+
6
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1,3 @@
1
+ export declare const sleep: (ms: number, signal?: AbortSignal) => Promise<void>;
2
+
3
+ //# sourceMappingURL=sleep.d.ts.map
@@ -0,0 +1,8 @@
1
+ type Cleanup = () => void;
2
+ type AsyncEffectCallback = (signal: AbortSignal, ...deps: any[]) => Promise<Cleanup | void> | void;
3
+ export declare function useAsyncEffect(cb: AsyncEffectCallback, deps?: any[]): void;
4
+ export declare function useAsyncLayoutEffect(cb: AsyncEffectCallback, deps?: any[]): void;
5
+ export declare function useAsyncEffectOfType(type: Function, cb: AsyncEffectCallback, deps?: any[]): void;
6
+ export {};
7
+
8
+ //# sourceMappingURL=useAsyncEffect.d.ts.map
package/dist/esm/index.js DELETED
@@ -1,5 +0,0 @@
1
- export * from "./useAsyncEffect.mjs";
2
- export * from "./sleep.mjs";
3
- export * from "./idle.mjs";
4
- export * from "./errors.mjs";
5
- //# sourceMappingURL=index.js.map
@@ -1 +0,0 @@
1
- {"version":3,"names":[],"sources":["../../src/index.ts"],"sourcesContent":[null],"mappings":"AAAA,cAAc;AACd,cAAc;AACd,cAAc;AACd,cAAc","ignoreList":[]}
@@ -1 +0,0 @@
1
- {"version":3,"names":[],"sources":["../../src/index.ts"],"sourcesContent":[null],"mappings":"AAAA,cAAc;AACd,cAAc;AACd,cAAc;AACd,cAAc","ignoreList":[]}
@@ -1 +0,0 @@
1
- {"version":3,"names":[],"sources":["../../src/index.ts"],"sourcesContent":[null],"mappings":"AAAA,cAAc;AACd,cAAc;AACd,cAAc;AACd,cAAc","ignoreList":[]}