@hanzogui/animate-presence 8.3.0 → 8.3.2

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 (66) hide show
  1. package/dist/cjs/AnimatePresence.js +161 -0
  2. package/dist/cjs/AnimatePresence.js.map +1 -0
  3. package/dist/cjs/LayoutGroupContext.js +7 -0
  4. package/dist/cjs/LayoutGroupContext.js.map +1 -0
  5. package/dist/cjs/PresenceChild.js +60 -0
  6. package/dist/cjs/PresenceChild.js.map +1 -0
  7. package/dist/cjs/index.js +8 -0
  8. package/dist/cjs/index.js.map +1 -0
  9. package/dist/cjs/package.json +1 -0
  10. package/dist/cjs/types.js +3 -0
  11. package/dist/cjs/types.js.map +1 -0
  12. package/dist/esm/AnimatePresence.js +157 -0
  13. package/dist/esm/AnimatePresence.js.map +1 -0
  14. package/dist/esm/LayoutGroupContext.js +3 -0
  15. package/dist/esm/LayoutGroupContext.js.map +1 -0
  16. package/dist/esm/PresenceChild.js +56 -0
  17. package/dist/esm/PresenceChild.js.map +1 -0
  18. package/dist/esm/index.js +5 -5
  19. package/dist/esm/index.js.map +1 -1
  20. package/dist/esm/types.js +2 -0
  21. package/dist/esm/types.js.map +1 -0
  22. package/package.json +19 -19
  23. package/src/AnimatePresence.tsx +3 -3
  24. package/src/PresenceChild.tsx +1 -1
  25. package/src/index.ts +3 -3
  26. package/types/AnimatePresence.d.ts +1 -1
  27. package/types/AnimatePresence.d.ts.map +1 -1
  28. package/types/PresenceChild.d.ts +2 -2
  29. package/types/PresenceChild.d.ts.map +1 -1
  30. package/types/index.d.ts +3 -3
  31. package/types/index.d.ts.map +1 -1
  32. package/dist/cjs/AnimatePresence.cjs +0 -149
  33. package/dist/cjs/AnimatePresence.native.js +0 -166
  34. package/dist/cjs/AnimatePresence.native.js.map +0 -1
  35. package/dist/cjs/LayoutGroupContext.cjs +0 -40
  36. package/dist/cjs/LayoutGroupContext.native.js +0 -43
  37. package/dist/cjs/LayoutGroupContext.native.js.map +0 -1
  38. package/dist/cjs/PresenceChild.cjs +0 -101
  39. package/dist/cjs/PresenceChild.native.js +0 -128
  40. package/dist/cjs/PresenceChild.native.js.map +0 -1
  41. package/dist/cjs/index.cjs +0 -23
  42. package/dist/cjs/index.native.js +0 -26
  43. package/dist/cjs/index.native.js.map +0 -1
  44. package/dist/cjs/types.cjs +0 -18
  45. package/dist/cjs/types.native.js +0 -21
  46. package/dist/cjs/types.native.js.map +0 -1
  47. package/dist/esm/AnimatePresence.mjs +0 -124
  48. package/dist/esm/AnimatePresence.mjs.map +0 -1
  49. package/dist/esm/AnimatePresence.native.js +0 -138
  50. package/dist/esm/AnimatePresence.native.js.map +0 -1
  51. package/dist/esm/LayoutGroupContext.mjs +0 -4
  52. package/dist/esm/LayoutGroupContext.mjs.map +0 -1
  53. package/dist/esm/LayoutGroupContext.native.js +0 -4
  54. package/dist/esm/LayoutGroupContext.native.js.map +0 -1
  55. package/dist/esm/PresenceChild.mjs +0 -65
  56. package/dist/esm/PresenceChild.mjs.map +0 -1
  57. package/dist/esm/PresenceChild.native.js +0 -89
  58. package/dist/esm/PresenceChild.native.js.map +0 -1
  59. package/dist/esm/index.mjs +0 -5
  60. package/dist/esm/index.mjs.map +0 -1
  61. package/dist/esm/index.native.js +0 -5
  62. package/dist/esm/index.native.js.map +0 -1
  63. package/dist/esm/types.mjs +0 -2
  64. package/dist/esm/types.mjs.map +0 -1
  65. package/dist/esm/types.native.js +0 -2
  66. package/dist/esm/types.native.js.map +0 -1
@@ -1,89 +0,0 @@
1
- import { jsx as _jsx } from "react/jsx-runtime";
2
- import { useConstant } from "@hanzogui/use-constant";
3
- import { PresenceContext } from "@hanzogui/use-presence";
4
- import * as React from "react";
5
- import { useId } from "react";
6
- var PresenceChild = /* @__PURE__ */React.memo(function (param) {
7
- var {
8
- children,
9
- initial,
10
- isPresent,
11
- onExitComplete,
12
- exitVariant,
13
- enterVariant,
14
- enterExitVariant,
15
- presenceAffectsLayout,
16
- custom
17
- } = param;
18
- var presenceChildren = useConstant(newChildrenMap);
19
- var id = useId() || "";
20
- var context = React.useMemo(function () {
21
- return {
22
- id,
23
- initial,
24
- isPresent,
25
- custom,
26
- exitVariant,
27
- enterVariant,
28
- enterExitVariant,
29
- onExitComplete: function () {
30
- presenceChildren.set(id, true);
31
- var _iteratorNormalCompletion = true,
32
- _didIteratorError = false,
33
- _iteratorError = void 0;
34
- try {
35
- for (var _iterator = presenceChildren.values()[Symbol.iterator](), _step; !(_iteratorNormalCompletion = (_step = _iterator.next()).done); _iteratorNormalCompletion = true) {
36
- var isComplete = _step.value;
37
- if (!isComplete) {
38
- return;
39
- }
40
- }
41
- } catch (err) {
42
- _didIteratorError = true;
43
- _iteratorError = err;
44
- } finally {
45
- try {
46
- if (!_iteratorNormalCompletion && _iterator.return != null) {
47
- _iterator.return();
48
- }
49
- } finally {
50
- if (_didIteratorError) {
51
- throw _iteratorError;
52
- }
53
- }
54
- }
55
- onExitComplete === null || onExitComplete === void 0 ? void 0 : onExitComplete();
56
- },
57
- register: function () {
58
- presenceChildren.set(id, false);
59
- return function () {
60
- return presenceChildren.delete(id);
61
- };
62
- }
63
- };
64
- },
65
- /**
66
- * If the presence of a child affects the layout of the components around it,
67
- * we want to make a new context value to ensure they get re-rendered
68
- * so they can detect that layout change.
69
- */
70
- // @ts-expect-error its ok
71
- presenceAffectsLayout ? void 0 : [isPresent, exitVariant, enterVariant]);
72
- React.useMemo(function () {
73
- presenceChildren.forEach(function (_, key) {
74
- return presenceChildren.set(key, false);
75
- });
76
- }, [isPresent]);
77
- React.useEffect(function () {
78
- !isPresent && !presenceChildren.size && (onExitComplete === null || onExitComplete === void 0 ? void 0 : onExitComplete());
79
- }, [isPresent]);
80
- return /* @__PURE__ */_jsx(PresenceContext.Provider, {
81
- value: context,
82
- children
83
- });
84
- });
85
- function newChildrenMap() {
86
- return /* @__PURE__ */new Map();
87
- }
88
- export { PresenceChild };
89
- //# sourceMappingURL=PresenceChild.native.js.map
@@ -1 +0,0 @@
1
- {"version":3,"names":["jsx","_jsx","useConstant","PresenceContext","React","useId","PresenceChild","memo","param","children","initial","isPresent","onExitComplete","exitVariant","enterVariant","enterExitVariant","presenceAffectsLayout","custom","presenceChildren","newChildrenMap","id","context","useMemo","set","_iteratorNormalCompletion","_didIteratorError","_iteratorError","_iterator","values","Symbol","iterator","_step","next","done","isComplete","value","err","return","register","delete"],"sources":["../../src/PresenceChild.tsx"],"sourcesContent":[null],"mappings":"AAAA,SAASA,GAAA,IAAAC,IAAA,QAAmB;AAC5B,SAASC,WAAA,gCAAuB;AAEhC,SAAAC,eAAuB;AACvB,YAASC,KAAA,MAAa;AA+EX,SAAAC,KAAA;AA9DJ,IAAAC,aAAM,kBAAsBF,KAAA,CAAAG,IAAA,WAAAC,KAAA;EACjC,IAAC;IAAAC,QAAA;IAAAC,OAAA;IAAAC,SAAA;IAAAC,cAAA;IAAAC,WAAA;IAAAC,YAAA;IAAAC,gBAAA;IAAAC,qBAAA;IAAAC;EAAA,IAAAT,KAAA;EAAA,IACCU,gBAAA,GAAAhB,WAAA,CAAAiB,cAAA;EAAA,IACAC,EAAA,GAAAf,KAAA;EAAA,IACAgB,OAAA,GAAAjB,KAAA,CAAAkB,OAAA,CACA;IACA;MACAF,EAAA;MACAV,OAAA;MACAC,SAAA;MACAM,MAAA;MACwBJ,WAAA;MACxBC,YAAM;MACNC,gBAAiB;MAEjBH,cAAgB,WAAAA,CAAA,EAAM;QACpBM,gBAA4B,CAAAK,GAAA,CAAAH,EAAA;QAC1B,IAAAI,yBAAO;UAAAC,iBAAA;UAAAC,cAAA;QACL;UACA,SAAAC,SAAA,GAAAT,gBAAA,CAAAU,MAAA,GAAAC,MAAA,CAAAC,QAAA,KAAAC,KAAA,IAAAP,yBAAA,IAAAO,KAAA,GAAAJ,SAAA,CAAAK,IAAA,IAAAC,IAAA,GAAAT,yBAAA;YACA,IAAAU,UAAA,GAAAH,KAAA,CAAAI,KAAA;YACA,KAAAD,UAAA;cACA;YACA;UACA;QACA,SAAAE,GAAA;UACEX,iBAAiB,OAAI;UACrBC,cAAW,GAAAU,GAAA;QACT,UAAK;UACH;YACF,KAAAZ,yBAAA,IAAAG,SAAA,CAAAU,MAAA;cACFV,SAAA,CAAAU,MAAA;YACA;UACF;YACA,IAAAZ,iBAAgB;cACd,MAAAC,cAAqB;YACrB;UACF;QACF;QACFd,cAAA,aAAAA,cAAA,uBAAAA,cAAA;MAAA;MAAA0B,QAAA,WAAAA,CAAA;QAAApB,gBAAA,CAAAK,GAAA,CAAAH,EAAA;QAAA;UAAA,OAAAF,gBAAA,CAAAqB,MAAA,CAAAnB,EAAA;QAAA;MAQA;IACF;EAEA;EACE;AAAqE;AAOvE;AACE;AAAyD;EAG3D;EACFJ,qBAAA,aACFL,SAAA,EAEAE,WAAS,EACPC,YAAO,C","ignoreList":[]}
@@ -1,5 +0,0 @@
1
- export * from "./AnimatePresence.mjs";
2
- export * from "@hanzogui/use-presence";
3
- export * from "./types.mjs";
4
- export * from "./PresenceChild.mjs";
5
- //# sourceMappingURL=index.mjs.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,5 +0,0 @@
1
- export * from "./AnimatePresence.native.js";
2
- export * from "@hanzogui/use-presence";
3
- export * from "./types.native.js";
4
- export * from "./PresenceChild.native.js";
5
- //# sourceMappingURL=index.native.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,2 +0,0 @@
1
-
2
- //# sourceMappingURL=types.mjs.map
@@ -1 +0,0 @@
1
- {"version":3,"names":[],"sources":[],"sourcesContent":[],"mappings":"","ignoreList":[]}
@@ -1,2 +0,0 @@
1
-
2
- //# sourceMappingURL=types.native.js.map
@@ -1 +0,0 @@
1
- {"version":3,"names":[],"sources":[],"sourcesContent":[],"mappings":"","ignoreList":[]}