@hanzogui/animate-presence 3.0.2 → 7.3.0

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.
@@ -5,73 +5,109 @@ import { Children, isValidElement, useContext, useMemo, useRef, useState } from
5
5
  import { LayoutGroupContext } from "./LayoutGroupContext.mjs";
6
6
  import { PresenceChild } from "./PresenceChild.mjs";
7
7
  import { Fragment, jsx } from "react/jsx-runtime";
8
- const getChildKey = child => child.key || (() => {
9
- const ct = child.type,
10
- defaultName = ct.displayName || ct.name || "";
11
- return ct && typeof ct == "object" && "staticConfig" in ct && ct.staticConfig.componentName || defaultName;
12
- })();
8
+ const getChildKey = child => {
9
+ return child.key || (() => {
10
+ const ct = child.type;
11
+ const defaultName = ct["displayName"] || ct["name"] || "";
12
+ if (ct && typeof ct === "object" && "staticConfig" in ct) {
13
+ return ct.staticConfig.componentName || defaultName;
14
+ }
15
+ return defaultName;
16
+ })();
17
+ };
13
18
  function onlyElements(children) {
14
19
  const filtered = [];
15
- return Children.forEach(children, child => {
16
- isValidElement(child) && filtered.push(child);
17
- }), filtered;
20
+ Children.forEach(children, child => {
21
+ if (isValidElement(child)) filtered.push(child);
22
+ });
23
+ return filtered;
18
24
  }
19
25
  const AnimatePresence = ({
20
26
  children,
21
27
  enterVariant,
22
28
  exitVariant,
23
29
  enterExitVariant,
24
- initial = !0,
30
+ initial = true,
25
31
  onExitComplete,
26
32
  exitBeforeEnter,
27
33
  mode,
28
- presenceAffectsLayout = !0,
34
+ presenceAffectsLayout = true,
29
35
  custom,
30
36
  passThrough
31
37
  }) => {
32
- const effectiveMode = mode ?? (exitBeforeEnter ? "wait" : "sync"),
33
- presentChildren = useMemo(() => onlyElements(children), [children]),
34
- presentKeys = presentChildren.map(getChildKey),
35
- isInitialRender = useRef(!0),
36
- frozenCustomRef = useRef(/* @__PURE__ */new Map()),
37
- pendingPresentChildren = useRef(presentChildren),
38
- exitComplete = useConstant(() => /* @__PURE__ */new Map()),
39
- [diffedChildren, setDiffedChildren] = useState(presentChildren),
40
- [renderedChildren, setRenderedChildren] = useState(presentChildren),
41
- forceRender = useContext(LayoutGroupContext).forceRender ?? useForceUpdate();
42
- if (passThrough) return /* @__PURE__ */jsx(Fragment, {
43
- children
44
- });
45
- if (useInsertionEffect(() => {
46
- isInitialRender.current = !1, pendingPresentChildren.current = presentChildren;
38
+ const effectiveMode = mode ?? (exitBeforeEnter ? "wait" : "sync");
39
+ const presentChildren = useMemo(() => onlyElements(children), [children]);
40
+ const presentKeys = presentChildren.map(getChildKey);
41
+ const isInitialRender = useRef(true);
42
+ const frozenCustomRef = useRef(/* @__PURE__ */new Map());
43
+ const pendingPresentChildren = useRef(presentChildren);
44
+ const exitComplete = useConstant(() => /* @__PURE__ */new Map());
45
+ const [diffedChildren, setDiffedChildren] = useState(presentChildren);
46
+ const [renderedChildren, setRenderedChildren] = useState(presentChildren);
47
+ const forceRender = useContext(LayoutGroupContext).forceRender ?? useForceUpdate();
48
+ if (passThrough) {
49
+ return /* @__PURE__ */jsx(Fragment, {
50
+ children
51
+ });
52
+ }
53
+ useInsertionEffect(() => {
54
+ isInitialRender.current = false;
55
+ pendingPresentChildren.current = presentChildren;
47
56
  for (let i = 0; i < renderedChildren.length; i++) {
48
57
  const key = getChildKey(renderedChildren[i]);
49
- presentKeys.includes(key) ? (exitComplete.delete(key), frozenCustomRef.current.delete(key)) : exitComplete.get(key) !== !0 && exitComplete.set(key, !1);
58
+ if (!presentKeys.includes(key)) {
59
+ if (exitComplete.get(key) !== true) {
60
+ exitComplete.set(key, false);
61
+ }
62
+ } else {
63
+ exitComplete.delete(key);
64
+ frozenCustomRef.current.delete(key);
65
+ }
50
66
  }
51
- }, [renderedChildren, presentKeys.length, presentKeys.join("-")]), presentChildren !== diffedChildren) {
67
+ }, [renderedChildren, presentKeys.length, presentKeys.join("-")]);
68
+ if (presentChildren !== diffedChildren) {
52
69
  let nextChildren = [...presentChildren];
53
70
  for (let i = 0; i < renderedChildren.length; i++) {
54
- const child = renderedChildren[i],
55
- key = getChildKey(child);
56
- presentKeys.includes(key) || (nextChildren.splice(i, 0, child), frozenCustomRef.current.has(key) || frozenCustomRef.current.set(key, custom));
71
+ const child = renderedChildren[i];
72
+ const key = getChildKey(child);
73
+ if (!presentKeys.includes(key)) {
74
+ nextChildren.splice(i, 0, child);
75
+ if (!frozenCustomRef.current.has(key)) {
76
+ frozenCustomRef.current.set(key, custom);
77
+ }
78
+ }
57
79
  }
58
80
  const exitingChildren = renderedChildren.filter(child => !presentKeys.includes(getChildKey(child)));
59
- return effectiveMode === "wait" && exitingChildren.length && (nextChildren = exitingChildren), setRenderedChildren(onlyElements(nextChildren)), setDiffedChildren(presentChildren), null;
81
+ if (effectiveMode === "wait" && exitingChildren.length) {
82
+ nextChildren = exitingChildren;
83
+ }
84
+ setRenderedChildren(onlyElements(nextChildren));
85
+ setDiffedChildren(presentChildren);
86
+ return null;
60
87
  }
61
88
  return /* @__PURE__ */jsx(Fragment, {
62
89
  children: renderedChildren.map(child => {
63
- const key = getChildKey(child),
64
- isPresent = presentChildren === renderedChildren || presentKeys.includes(key),
65
- onExit = () => {
66
- if (exitComplete.has(key)) exitComplete.set(key, !0);else return;
67
- let isEveryExitComplete = !0;
68
- exitComplete.forEach(isExitComplete => {
69
- isExitComplete || (isEveryExitComplete = !1);
70
- }), isEveryExitComplete && (forceRender?.(), setRenderedChildren(pendingPresentChildren.current), onExitComplete?.());
71
- };
90
+ const key = getChildKey(child);
91
+ const isPresent = presentChildren === renderedChildren || presentKeys.includes(key);
92
+ const onExit = () => {
93
+ if (exitComplete.has(key)) {
94
+ exitComplete.set(key, true);
95
+ } else {
96
+ return;
97
+ }
98
+ let isEveryExitComplete = true;
99
+ exitComplete.forEach(isExitComplete => {
100
+ if (!isExitComplete) isEveryExitComplete = false;
101
+ });
102
+ if (isEveryExitComplete) {
103
+ forceRender?.();
104
+ setRenderedChildren(pendingPresentChildren.current);
105
+ onExitComplete?.();
106
+ }
107
+ };
72
108
  return /* @__PURE__ */jsx(PresenceChild, {
73
109
  isPresent,
74
- initial: !isInitialRender.current || initial ? void 0 : !1,
110
+ initial: !isInitialRender.current || initial ? void 0 : false,
75
111
  custom: isPresent ? custom : frozenCustomRef.current.get(key) ?? custom,
76
112
  presenceAffectsLayout,
77
113
  enterExitVariant,
@@ -1 +1 @@
1
- {"version":3,"names":["useInsertionEffect","useConstant","useForceUpdate","Children","isValidElement","useContext","useMemo","useRef","useState","LayoutGroupContext","PresenceChild","Fragment","jsx","getChildKey","child","key","ct","type","defaultName","displayName","name","staticConfig","componentName","onlyElements","children","filtered","forEach","push","AnimatePresence","enterVariant","exitVariant","enterExitVariant","initial","onExitComplete","exitBeforeEnter","mode","presenceAffectsLayout","custom","passThrough","effectiveMode","presentChildren","presentKeys","map","isInitialRender","frozenCustomRef","Map","pendingPresentChildren","exitComplete","diffedChildren","setDiffedChildren","renderedChildren","setRenderedChildren","forceRender","current","i","length","includes","delete","get","set","join","nextChildren","splice","has","exitingChildren","filter","isPresent","onExit","isEveryExitComplete","isExitComplete"],"sources":["../../src/AnimatePresence.tsx"],"sourcesContent":[null],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"names":["useInsertionEffect","useConstant","useForceUpdate","Children","isValidElement","useContext","useMemo","useRef","useState","LayoutGroupContext","PresenceChild","Fragment","jsx","getChildKey","child","key","ct","type","defaultName","staticConfig","componentName","onlyElements","children","filtered","forEach","push","AnimatePresence","enterVariant","exitVariant","enterExitVariant","initial","onExitComplete","exitBeforeEnter","mode","presenceAffectsLayout","custom","passThrough","effectiveMode","presentChildren","presentKeys","map","isInitialRender","frozenCustomRef","Map","pendingPresentChildren","exitComplete","diffedChildren","setDiffedChildren","renderedChildren","setRenderedChildren","forceRender","current","i","length","includes","get","set","delete","join","nextChildren","splice","has","exitingChildren","filter","isPresent","onExit","isEveryExitComplete","isExitComplete","displayName"],"sources":["../../src/AnimatePresence.tsx"],"sourcesContent":[null],"mappings":"AAAA,SAASA,kBAAA,QAA0B;AACnC,SAASC,WAAA,QAAmB;AAC5B,SAASC,cAAA,QAAsB;AAE/B,SAASC,QAAA,EAAUC,cAAA,EAAgBC,UAAA,EAAYC,OAAA,EAASC,MAAA,EAAQC,QAAA,QAAgB;AAChF,SAASC,kBAAA,QAA0B;AACnC,SAASC,aAAA,QAAqB;AAiGnB,SAAAC,QAAA,EAAAC,GAAA;AA5FX,MAAMC,WAAA,GAAeC,KAAA,IAA2C;EAC9D,OACEA,KAAA,CAAMC,GAAA,KACL,MAAM;IAEL,MAAMC,EAAA,GAAKF,KAAA,CAAMG,IAAA;IACjB,MAAMC,WAAA,GAAcF,EAAA,CAAG,aAAa,KAAKA,EAAA,CAAG,MAAM,KAAK;IACvD,IAAIA,EAAA,IAAM,OAAOA,EAAA,KAAO,YAAY,kBAAkBA,EAAA,EAAI;MAExD,OAAOA,EAAA,CAAGG,YAAA,CAAaC,aAAA,IAAiBF,WAAA;IAC1C;IACA,OAAOA,WAAA;EACT,GAAG;AAEP;AAEA,SAASG,aAAaC,QAAA,EAA0C;EAC9D,MAAMC,QAAA,GAAgC,EAAC;EAEvCpB,QAAA,CAASqB,OAAA,CAAQF,QAAA,EAAWR,KAAA,IAAU;IACpC,IAAIV,cAAA,CAAeU,KAAK,GAAGS,QAAA,CAASE,IAAA,CAAKX,KAAK;EAChD,CAAC;EACD,OAAOS,QAAA;AACT;AAEO,MAAMG,eAAA,GAETA,CAAC;EACHJ,QAAA;EACAK,YAAA;EACAC,WAAA;EACAC,gBAAA;EACAC,OAAA,GAAU;EACVC,cAAA;EACAC,eAAA;EACAC,IAAA;EACAC,qBAAA,GAAwB;EACxBC,MAAA;EACAC;AACF,MAAM;EAEJ,MAAMC,aAAA,GAAgBJ,IAAA,KAASD,eAAA,GAAkB,SAAS;EAO1D,MAAMM,eAAA,GAAkBhC,OAAA,CAAQ,MAAMe,YAAA,CAAaC,QAAQ,GAAG,CAACA,QAAQ,CAAC;EAKxE,MAAMiB,WAAA,GAAcD,eAAA,CAAgBE,GAAA,CAAI3B,WAAW;EAKnD,MAAM4B,eAAA,GAAkBlC,MAAA,CAAO,IAAI;EAKnC,MAAMmC,eAAA,GAAkBnC,MAAA,CAAO,mBAAIoC,GAAA,CAAuB,CAAC;EAO3D,MAAMC,sBAAA,GAAyBrC,MAAA,CAAO+B,eAAe;EAKrD,MAAMO,YAAA,GAAe5C,WAAA,CAAY,MAAM,mBAAI0C,GAAA,CAA2B,CAAC;EAMvE,MAAM,CAACG,cAAA,EAAgBC,iBAAiB,IAAIvC,QAAA,CAAS8B,eAAe;EACpE,MAAM,CAACU,gBAAA,EAAkBC,mBAAmB,IAAIzC,QAAA,CAAS8B,eAAe;EAOxE,MAAMY,WAAA,GAAc7C,UAAA,CAAWI,kBAAkB,EAAEyC,WAAA,IAAehD,cAAA,CAAe;EAEjF,IAAIkC,WAAA,EAAa;IACf,OAAO,eAAAxB,GAAA,CAAAD,QAAA;MAAGW;IAAA,CAAS;EACrB;EAMAtB,kBAAA,CAAmB,MAAM;IACvByC,eAAA,CAAgBU,OAAA,GAAU;IAC1BP,sBAAA,CAAuBO,OAAA,GAAUb,eAAA;IAKjC,SAASc,CAAA,GAAI,GAAGA,CAAA,GAAIJ,gBAAA,CAAiBK,MAAA,EAAQD,CAAA,IAAK;MAChD,MAAMrC,GAAA,GAAMF,WAAA,CAAYmC,gBAAA,CAAiBI,CAAC,CAAC;MAE3C,IAAI,CAACb,WAAA,CAAYe,QAAA,CAASvC,GAAG,GAAG;QAC9B,IAAI8B,YAAA,CAAaU,GAAA,CAAIxC,GAAG,MAAM,MAAM;UAClC8B,YAAA,CAAaW,GAAA,CAAIzC,GAAA,EAAK,KAAK;QAC7B;MACF,OAAO;QACL8B,YAAA,CAAaY,MAAA,CAAO1C,GAAG;QACvB2B,eAAA,CAAgBS,OAAA,CAAQM,MAAA,CAAO1C,GAAG;MACpC;IACF;EACF,GAAG,CAACiC,gBAAA,EAAkBT,WAAA,CAAYc,MAAA,EAAQd,WAAA,CAAYmB,IAAA,CAAK,GAAG,CAAC,CAAC;EAEhE,IAAIpB,eAAA,KAAoBQ,cAAA,EAAgB;IACtC,IAAIa,YAAA,GAAe,CAAC,GAAGrB,eAAe;IAMtC,SAASc,CAAA,GAAI,GAAGA,CAAA,GAAIJ,gBAAA,CAAiBK,MAAA,EAAQD,CAAA,IAAK;MAChD,MAAMtC,KAAA,GAAQkC,gBAAA,CAAiBI,CAAC;MAChC,MAAMrC,GAAA,GAAMF,WAAA,CAAYC,KAAK;MAE7B,IAAI,CAACyB,WAAA,CAAYe,QAAA,CAASvC,GAAG,GAAG;QAC9B4C,YAAA,CAAaC,MAAA,CAAOR,CAAA,EAAG,GAAGtC,KAAK;QAE/B,IAAI,CAAC4B,eAAA,CAAgBS,OAAA,CAAQU,GAAA,CAAI9C,GAAG,GAAG;UACrC2B,eAAA,CAAgBS,OAAA,CAAQK,GAAA,CAAIzC,GAAA,EAAKoB,MAAM;QACzC;MACF;IACF;IAMA,MAAM2B,eAAA,GAAkBd,gBAAA,CAAiBe,MAAA,CACtCjD,KAAA,IAAU,CAACyB,WAAA,CAAYe,QAAA,CAASzC,WAAA,CAAYC,KAAK,CAAC,CACrD;IACA,IAAIuB,aAAA,KAAkB,UAAUyB,eAAA,CAAgBT,MAAA,EAAQ;MACtDM,YAAA,GAAeG,eAAA;IACjB;IAEAb,mBAAA,CAAoB5B,YAAA,CAAasC,YAAY,CAAC;IAC9CZ,iBAAA,CAAkBT,eAAe;IAMjC,OAAO;EACT;EAEA,OACE,eAAA1B,GAAA,CAAAD,QAAA;IACGW,QAAA,EAAA0B,gBAAA,CAAiBR,GAAA,CAAK1B,KAAA,IAAU;MAC/B,MAAMC,GAAA,GAAMF,WAAA,CAAYC,KAAK;MAC7B,MAAMkD,SAAA,GACJ1B,eAAA,KAAoBU,gBAAA,IAAoBT,WAAA,CAAYe,QAAA,CAASvC,GAAG;MAElE,MAAMkD,MAAA,GAASA,CAAA,KAAM;QACnB,IAAIpB,YAAA,CAAagB,GAAA,CAAI9C,GAAG,GAAG;UACzB8B,YAAA,CAAaW,GAAA,CAAIzC,GAAA,EAAK,IAAI;QAC5B,OAAO;UACL;QACF;QAEA,IAAImD,mBAAA,GAAsB;QAC1BrB,YAAA,CAAarB,OAAA,CAAS2C,cAAA,IAAmB;UACvC,IAAI,CAACA,cAAA,EAAgBD,mBAAA,GAAsB;QAC7C,CAAC;QAED,IAAIA,mBAAA,EAAqB;UACvBhB,WAAA,GAAc;UACdD,mBAAA,CAAoBL,sBAAA,CAAuBO,OAAO;UAClDpB,cAAA,GAAiB;QACnB;MACF;MAEA,OACE,eAAAnB,GAAA,CAACF,aAAA;QAECsD,SAAA;QACAlC,OAAA,EAAS,CAACW,eAAA,CAAgBU,OAAA,IAAWrB,OAAA,GAAU,SAAY;QAC3DK,MAAA,EAAQ6B,SAAA,GAAY7B,MAAA,GAAUO,eAAA,CAAgBS,OAAA,CAAQI,GAAA,CAAIxC,GAAG,KAAKoB,MAAA;QAClED,qBAAA;QACAL,gBAAA;QACAF,YAAA;QACAC,WAAA;QACAG,cAAA,EAAgBiC,SAAA,GAAY,SAAYC,MAAA;QAEvC3C,QAAA,EAAAR;MAAA,GAVIC,GAWP;IAEJ,CAAC;EAAA,CACH;AAEJ;AAEAW,eAAA,CAAgB0C,WAAA,GAAc","ignoreList":[]}
@@ -8,85 +8,120 @@ import { PresenceChild } from "./PresenceChild.native.js";
8
8
  function _type_of(obj) {
9
9
  "@swc/helpers - typeof";
10
10
 
11
- return obj && typeof Symbol < "u" && obj.constructor === Symbol ? "symbol" : typeof obj;
11
+ return obj && typeof Symbol !== "undefined" && obj.constructor === Symbol ? "symbol" : typeof obj;
12
12
  }
13
13
  var getChildKey = function (child) {
14
14
  return child.key || function () {
15
- var ct = child.type,
16
- defaultName = ct.displayName || ct.name || "";
17
- return ct && (typeof ct > "u" ? "undefined" : _type_of(ct)) === "object" && "staticConfig" in ct && ct.staticConfig.componentName || defaultName;
15
+ var ct = child.type;
16
+ var defaultName = ct["displayName"] || ct["name"] || "";
17
+ if (ct && (typeof ct === "undefined" ? "undefined" : _type_of(ct)) === "object" && "staticConfig" in ct) {
18
+ return ct.staticConfig.componentName || defaultName;
19
+ }
20
+ return defaultName;
18
21
  }();
19
22
  };
20
23
  function onlyElements(children) {
21
24
  var filtered = [];
22
- return Children.forEach(children, function (child) {
23
- /* @__PURE__ */isValidElement(child) && filtered.push(child);
24
- }), filtered;
25
+ Children.forEach(children, function (child) {
26
+ if (/* @__PURE__ */isValidElement(child)) filtered.push(child);
27
+ });
28
+ return filtered;
25
29
  }
26
30
  var AnimatePresence = function (param) {
27
31
  var {
28
- children,
29
- enterVariant,
30
- exitVariant,
31
- enterExitVariant,
32
- initial = !0,
33
- onExitComplete,
34
- exitBeforeEnter,
35
- mode,
36
- presenceAffectsLayout = !0,
37
- custom,
38
- passThrough
39
- } = param,
40
- effectiveMode = mode ?? (exitBeforeEnter ? "wait" : "sync"),
41
- presentChildren = useMemo(function () {
42
- return onlyElements(children);
43
- }, [children]),
44
- presentKeys = presentChildren.map(getChildKey),
45
- isInitialRender = useRef(!0),
46
- frozenCustomRef = useRef(/* @__PURE__ */new Map()),
47
- pendingPresentChildren = useRef(presentChildren),
48
- exitComplete = useConstant(function () {
49
- return /* @__PURE__ */new Map();
50
- }),
51
- [diffedChildren, setDiffedChildren] = useState(presentChildren),
52
- [renderedChildren, setRenderedChildren] = useState(presentChildren),
53
- _useContext_forceRender,
54
- forceRender = (_useContext_forceRender = useContext(LayoutGroupContext).forceRender) !== null && _useContext_forceRender !== void 0 ? _useContext_forceRender : useForceUpdate();
55
- if (passThrough) return /* @__PURE__ */_jsx(_Fragment, {
56
- children
32
+ children,
33
+ enterVariant,
34
+ exitVariant,
35
+ enterExitVariant,
36
+ initial = true,
37
+ onExitComplete,
38
+ exitBeforeEnter,
39
+ mode,
40
+ presenceAffectsLayout = true,
41
+ custom,
42
+ passThrough
43
+ } = param;
44
+ var effectiveMode = mode !== null && mode !== void 0 ? mode : exitBeforeEnter ? "wait" : "sync";
45
+ var presentChildren = useMemo(function () {
46
+ return onlyElements(children);
47
+ }, [children]);
48
+ var presentKeys = presentChildren.map(getChildKey);
49
+ var isInitialRender = useRef(true);
50
+ var frozenCustomRef = useRef(/* @__PURE__ */new Map());
51
+ var pendingPresentChildren = useRef(presentChildren);
52
+ var exitComplete = useConstant(function () {
53
+ return /* @__PURE__ */new Map();
57
54
  });
58
- if (useInsertionEffect(function () {
59
- isInitialRender.current = !1, pendingPresentChildren.current = presentChildren;
55
+ var [diffedChildren, setDiffedChildren] = useState(presentChildren);
56
+ var [renderedChildren, setRenderedChildren] = useState(presentChildren);
57
+ var _useContext_forceRender;
58
+ var forceRender = (_useContext_forceRender = useContext(LayoutGroupContext).forceRender) !== null && _useContext_forceRender !== void 0 ? _useContext_forceRender : useForceUpdate();
59
+ if (passThrough) {
60
+ return /* @__PURE__ */_jsx(_Fragment, {
61
+ children
62
+ });
63
+ }
64
+ useInsertionEffect(function () {
65
+ isInitialRender.current = false;
66
+ pendingPresentChildren.current = presentChildren;
60
67
  for (var i2 = 0; i2 < renderedChildren.length; i2++) {
61
68
  var key2 = getChildKey(renderedChildren[i2]);
62
- presentKeys.includes(key2) ? (exitComplete.delete(key2), frozenCustomRef.current.delete(key2)) : exitComplete.get(key2) !== !0 && exitComplete.set(key2, !1);
69
+ if (!presentKeys.includes(key2)) {
70
+ if (exitComplete.get(key2) !== true) {
71
+ exitComplete.set(key2, false);
72
+ }
73
+ } else {
74
+ exitComplete.delete(key2);
75
+ frozenCustomRef.current.delete(key2);
76
+ }
63
77
  }
64
- }, [renderedChildren, presentKeys.length, presentKeys.join("-")]), presentChildren !== diffedChildren) {
65
- for (var nextChildren = [...presentChildren], i = 0; i < renderedChildren.length; i++) {
66
- var child = renderedChildren[i],
67
- key = getChildKey(child);
68
- presentKeys.includes(key) || (nextChildren.splice(i, 0, child), frozenCustomRef.current.has(key) || frozenCustomRef.current.set(key, custom));
78
+ }, [renderedChildren, presentKeys.length, presentKeys.join("-")]);
79
+ if (presentChildren !== diffedChildren) {
80
+ var nextChildren = [...presentChildren];
81
+ for (var i = 0; i < renderedChildren.length; i++) {
82
+ var child = renderedChildren[i];
83
+ var key = getChildKey(child);
84
+ if (!presentKeys.includes(key)) {
85
+ nextChildren.splice(i, 0, child);
86
+ if (!frozenCustomRef.current.has(key)) {
87
+ frozenCustomRef.current.set(key, custom);
88
+ }
89
+ }
69
90
  }
70
91
  var exitingChildren = renderedChildren.filter(function (child2) {
71
92
  return !presentKeys.includes(getChildKey(child2));
72
93
  });
73
- return effectiveMode === "wait" && exitingChildren.length && (nextChildren = exitingChildren), setRenderedChildren(onlyElements(nextChildren)), setDiffedChildren(presentChildren), null;
94
+ if (effectiveMode === "wait" && exitingChildren.length) {
95
+ nextChildren = exitingChildren;
96
+ }
97
+ setRenderedChildren(onlyElements(nextChildren));
98
+ setDiffedChildren(presentChildren);
99
+ return null;
74
100
  }
75
101
  return /* @__PURE__ */_jsx(_Fragment, {
76
102
  children: renderedChildren.map(function (child2) {
77
- var key2 = getChildKey(child2),
78
- isPresent = presentChildren === renderedChildren || presentKeys.includes(key2),
79
- onExit = function () {
80
- if (exitComplete.has(key2)) exitComplete.set(key2, !0);else return;
81
- var isEveryExitComplete = !0;
82
- exitComplete.forEach(function (isExitComplete) {
83
- isExitComplete || (isEveryExitComplete = !1);
84
- }), isEveryExitComplete && (forceRender?.(), setRenderedChildren(pendingPresentChildren.current), onExitComplete?.());
85
- },
86
- _frozenCustomRef_current_get;
103
+ var key2 = getChildKey(child2);
104
+ var isPresent = presentChildren === renderedChildren || presentKeys.includes(key2);
105
+ var onExit = function () {
106
+ if (exitComplete.has(key2)) {
107
+ exitComplete.set(key2, true);
108
+ } else {
109
+ return;
110
+ }
111
+ var isEveryExitComplete = true;
112
+ exitComplete.forEach(function (isExitComplete) {
113
+ if (!isExitComplete) isEveryExitComplete = false;
114
+ });
115
+ if (isEveryExitComplete) {
116
+ forceRender === null || forceRender === void 0 ? void 0 : forceRender();
117
+ setRenderedChildren(pendingPresentChildren.current);
118
+ onExitComplete === null || onExitComplete === void 0 ? void 0 : onExitComplete();
119
+ }
120
+ };
121
+ var _frozenCustomRef_current_get;
87
122
  return /* @__PURE__ */_jsx(PresenceChild, {
88
123
  isPresent,
89
- initial: !isInitialRender.current || initial ? void 0 : !1,
124
+ initial: !isInitialRender.current || initial ? void 0 : false,
90
125
  custom: isPresent ? custom : (_frozenCustomRef_current_get = frozenCustomRef.current.get(key2)) !== null && _frozenCustomRef_current_get !== void 0 ? _frozenCustomRef_current_get : custom,
91
126
  presenceAffectsLayout,
92
127
  enterExitVariant,
@@ -1 +1 @@
1
- {"version":3,"names":["jsx","_jsx","Fragment","_Fragment","useInsertionEffect","useConstant","useForceUpdate","Children","isValidElement","useContext","useMemo","useRef","useState","LayoutGroupContext","PresenceChild","_type_of","obj","Symbol","constructor","getChildKey","child","key","ct","type","defaultName","displayName","name","staticConfig","componentName","onlyElements","children","filtered","forEach","push","AnimatePresence","param","enterVariant","exitVariant","enterExitVariant","initial","onExitComplete","exitBeforeEnter","mode","presenceAffectsLayout","custom","passThrough","effectiveMode","presentChildren","presentKeys","map","isInitialRender","frozenCustomRef","Map","pendingPresentChildren","exitComplete","diffedChildren","setDiffedChildren","renderedChildren","setRenderedChildren","_useContext_forceRender","forceRender","current","i2","length","key2","includes","delete","get","set","join","nextChildren","i","splice","has","exitingChildren","filter","child2","isPresent","onExit","isEveryExitComplete","isExitComplete","_frozenCustomRef_current_get"],"sources":["../../src/AnimatePresence.tsx"],"sourcesContent":[null],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"names":["jsx","_jsx","Fragment","_Fragment","useInsertionEffect","useConstant","useForceUpdate","Children","isValidElement","useContext","useMemo","useRef","useState","LayoutGroupContext","PresenceChild","_type_of","obj","Symbol","constructor","getChildKey","child","key","ct","type","defaultName","staticConfig","componentName","onlyElements","children","filtered","forEach","push","AnimatePresence","param","enterVariant","exitVariant","enterExitVariant","initial","onExitComplete","exitBeforeEnter","mode","presenceAffectsLayout","custom","passThrough","effectiveMode","presentChildren","presentKeys","map","isInitialRender","frozenCustomRef","Map","pendingPresentChildren","exitComplete","diffedChildren","setDiffedChildren","renderedChildren","setRenderedChildren","_useContext_forceRender","forceRender","current","i2","length","key2","includes","get","set","delete","join","nextChildren","i","splice","has","exitingChildren","filter","child2","isPresent","onExit","isEveryExitComplete","isExitComplete","_frozenCustomRef_current_get"],"sources":["../../src/AnimatePresence.tsx"],"sourcesContent":[null],"mappings":"AAAA,SAASA,GAAA,IAAAC,IAAA,EAAAC,QAAA,IAAAC,SAA0B;AACnC,SAASC,kBAAA,QAAmB;AAC5B,SAASC,WAAA,gCAAsB;AAE/B,SAASC,cAAU,oCAAqC;AACxD,SAASC,QAAA,EAAAC,cAAA,EAA0BC,UAAA,EAAAC,OAAA,EAAAC,MAAA,EAAAC,QAAA;AACnC,SAASC,kBAAA,QAAqB;AAiGnB,SAAAC,aAAA;AA5FX,SAAMC,SAAAC,GAAe;EACnB,uBAEG;;EAEC,OAAAA,GAAM,IAAK,OAAMC,MAAA,oBAAAD,GAAA,CAAAE,WAAA,KAAAD,MAAA,qBAAAD,GAAA;AACjB;AACA,IAAAG,WAAU,YAAAA,CAAOC,KAAO;EAEtB,OAAAA,KAAO,CAAAC,GAAG,gBAAa;IACzB,IAAAC,EAAA,GAAAF,KAAA,CAAAG,IAAA;IACA,IAAAC,WAAO,GAAAF,EAAA,mBAAAA,EAAA;IACT,IAAGA,EAAA,YAAAA,EAAA,iCAAAP,QAAA,CAAAO,EAAA,qCAAAA,EAAA;MAEP,OAAAA,EAAA,CAAAG,YAAA,CAAAC,aAAA,IAAAF,WAAA;IAEA;IACE,OAAMA,WAAiC;EAEvC;AACE;AAA8C,SAC/CG,aAAAC,QAAA;EACD,IAAAC,QAAO;EACTtB,QAAA,CAAAuB,OAAA,CAAAF,QAAA,YAAAR,KAAA;IAEO,IAAM,eAETZ,cAAC,CAAAY,KAAA,GAAAS,QAAA,CAAAE,IAAA,CAAAX,KAAA;EACH;EACA,OAAAS,QAAA;AAAA;AACA,IACAG,eAAA,YAAAA,CAAAC,KAAA;EACA;IAAAL,QAAU;IAAAM,YAAA;IAAAC,WAAA;IAAAC,gBAAA;IAAAC,OAAA;IAAAC,cAAA;IAAAC,eAAA;IAAAC,IAAA;IAAAC,qBAAA;IAAAC,MAAA;IAAAC;EAAA,IAAAV,KAAA;EACV,IAAAW,aAAA,GAAAJ,IAAA,aAAAA,IAAA,cAAAA,IAAA,GAAAD,eAAA;EACA,IAAAM,eAAA,GAAAnC,OAAA;IACA,OAAAiB,YAAA,CAAAC,QAAA;EACA,IACAA,QAAA,CACA;EACF,IAAMkB,WAAA,GAAAD,eAAA,CAAAE,GAAA,CAAA5B,WAAA;EAEJ,IAAA6B,eAAM,GAAgBrC,MAAA,KAAS;EAO/B,IAAAsC,eAAM,GAAAtC,MAAkB,gBAAc,IAAAuC,GAAa;EAKnD,IAAAC,sBAAoB,GAAAxC,MAAA,CAAgBkC,eAAe;EAKnD,IAAAO,YAAM,GAAA/C,WAAkB,CAAO,YAAI;IAKnC,OAAM,eAAkB,IAAA6C,GAAO;EAO/B;EAKA,KAAAG,cAAM,EAAeC,iBAAY,CAAM,GAAA1C,QAAA,CAAAiC,eAAgC;EAMvE,KAAAU,gBAAO,EAAgBC,mBAAiB,IAAI5C,QAAS,CAAAiC,eAAe;EACpE,IAAAY,uBAAyB;EAOzB,IAAAC,WAAM,IAAAD,uBAAyB,GAAAhD,UAAoB,CAAAI,kBAAe,EAAA6C,WAAe,cAAAD,uBAAA,cAAAA,uBAAA,GAAAnD,cAAA;EAEjF,IAAIqC,WAAA,EAAa;IACf,OAAO,eAAA1C,IAAA,CAAAE,SAAA,EAAG;MACZyB;IAMA;EACE;EACAxB,kBAAA,aAAuB;IAKvB4C,eAAa,CAAGW,OAAI;IAClBR,sBAAY,CAAAQ,OAAY,GAAAd,eAAmB;IAE3C,SAAKe,EAAA,MAAAA,EAAY,GAAAL,gBAAe,CAAAM,MAAA,EAAAD,EAAA;MAC9B,IAAAE,IAAI,GAAA3C,WAAa,CAAIoC,gBAAe,CAAAK,EAAA;MAClC,KAAAd,WAAA,CAAaiB,QAAI,CAAKD,IAAA,CAAK;QAC7B,IAAAV,YAAA,CAAAY,GAAA,CAAAF,IAAA;UACFV,YAAO,CAAAa,GAAA,CAAAH,IAAA;QACL;MACA;QACFV,YAAA,CAAAc,MAAA,CAAAJ,IAAA;QACFb,eAAA,CAAAU,OAAA,CAAAO,MAAA,CAAAJ,IAAA;MACE;IAEJ;EACE,IAMAP,gBAAgB,EACdT,WAAM,CAAAe,MAAQ,EACdf,WAAM,CAAAqB,IAAM,MAEZ;EACE,IAAAtB,eAAa,KAAAQ,cAAkB;IAE/B,IAAAe,YAAK,IACH,GAAAvB,eAAA,CAAuC;IACzC,KACF,IAAAwB,CAAA,MAAAA,CAAA,GAAAd,gBAAA,CAAAM,MAAA,EAAAQ,CAAA;MACF,IAAAjD,KAAA,GAAAmC,gBAAA,CAAAc,CAAA;MAMA,IAAMhD,GAAA,GAAAF,WAAA,CAAkBC,KAAA;MACtB,IAAC,CAAA0B,WAAW,CAAAiB,QAAY,CAAA1C,GAAA;QAC1B+C,YAAA,CAAAE,MAAA,CAAAD,CAAA,KAAAjD,KAAA;QACI,KAAA6B,eAAkB,CAAAU,OAAU,CAAAY,GAAA,CAAAlD,GAAA;UAC9B4B,eAAe,CAAAU,OAAA,CAAAM,GAAA,CAAA5C,GAAA,EAAAqB,MAAA;QACjB;MAEA;IACA;IAMA,IAAA8B,eAAO,GAAAjB,gBAAA,CAAAkB,MAAA,WAAAC,MAAA;MACT,QAAA5B,WAAA,CAAAiB,QAAA,CAAA5C,WAAA,CAAAuD,MAAA;IAEA;IAGM,IAAA9B,aAAY,WAAY,IAAK4B,eAAA,CAAAX,MAAA;MAC7BO,YAAM,GAAAI,eACJ;IAEF;IACEhB,mBAAiB,CAAA7B,YAAU,CAAAyC,YAAA;IACzBd,iBAAa,CAAAT,eAAa;IAAA,OAC5B,IAAO;EACL;EAAA,OACF,eAAA5C,IAAA,CAAAE,SAAA;IAEAyB,QAAI,EAAA2B,gBAAA,CAAAR,GAAsB,WAAA2B,MAAA;MAC1B,IAAAZ,IAAA,GAAA3C,WAAsB,CAAAuD,MAAA;MACpB,IAAAC,SAAK,GAAA9B,eAAgB,KAAAU,gBAAsB,IAAAT,WAAA,CAAAiB,QAAA,CAAAD,IAAA;MAC7C,IAACc,MAAA,YAAAA,CAAA;QAED,IAAIxB,YAAA,CAAAmB,GAAA,CAAAT,IAAqB;UACvBV,YAAc,CAAAa,GAAA,CAAAH,IAAA;QACd;UACA;QACF;QACF,IAAAe,mBAAA;QAEAzB,YACE,CAAAtB,OAAA,WAAAgD,cAAA;UAAC,KAAAA,cAAA,EAAAD,mBAAA;QAAA;QAEC,IAAAA,mBAAA;UACAnB,WAAU,aAAgBA,WAAW,UAAU,SAAY,IAAAA,WAAA;UAC3DF,mBAAoB,CAAAL,sBAAU,CAAgBQ,OAAA,CAAQ;UACtDrB,cAAA,aAAAA,cAAA,uBAAAA,cAAA;QACA;MAAA;MACA,IACAyC,4BAAA;MAAA,OACA,eAAgB9E,IAAA,CAAAa,aAAwB;QAEvC6D,SAAA;QAAAtC,OAAA,GAAAW,eAAA,CAAAW,OAAA,IAAAtB,OAAA;QAVIK,MAAA,EAAAiC,SAAA,GAAAjC,MAAA,IAAAqC,4BAAA,GAAA9B,eAAA,CAAAU,OAAA,CAAAK,GAAA,CAAAF,IAAA,eAAAiB,4BAAA,cAAAA,4BAAA,GAAArC,MAAA;QAWPD,qBAAA;QAGNL,gBAAA;QAEJF,YAAA;QAEAC,WAAgB","ignoreList":[]}
@@ -14,9 +14,10 @@ const PresenceChild = React.memo(({
14
14
  presenceAffectsLayout,
15
15
  custom
16
16
  }) => {
17
- const presenceChildren = useConstant(newChildrenMap),
18
- id = useId() || "",
19
- context = React.useMemo(() => ({
17
+ const presenceChildren = useConstant(newChildrenMap);
18
+ const id = useId() || "";
19
+ const context = React.useMemo(() => {
20
+ return {
20
21
  id,
21
22
  initial,
22
23
  isPresent,
@@ -25,24 +26,34 @@ const PresenceChild = React.memo(({
25
26
  enterVariant,
26
27
  enterExitVariant,
27
28
  onExitComplete: () => {
28
- presenceChildren.set(id, !0);
29
- for (const isComplete of presenceChildren.values()) if (!isComplete) return;
29
+ presenceChildren.set(id, true);
30
+ for (const isComplete of presenceChildren.values()) {
31
+ if (!isComplete) {
32
+ return;
33
+ }
34
+ }
30
35
  onExitComplete?.();
31
36
  },
32
- register: () => (presenceChildren.set(id, !1), () => presenceChildren.delete(id))
33
- }),
34
- /**
35
- * If the presence of a child affects the layout of the components around it,
36
- * we want to make a new context value to ensure they get re-rendered
37
- * so they can detect that layout change.
38
- */
39
- // @ts-expect-error its ok
40
- presenceAffectsLayout ? void 0 : [isPresent, exitVariant, enterVariant]);
41
- return React.useMemo(() => {
42
- presenceChildren.forEach((_, key) => presenceChildren.set(key, !1));
43
- }, [isPresent]), React.useEffect(() => {
37
+ register: () => {
38
+ presenceChildren.set(id, false);
39
+ return () => presenceChildren.delete(id);
40
+ }
41
+ };
42
+ },
43
+ /**
44
+ * If the presence of a child affects the layout of the components around it,
45
+ * we want to make a new context value to ensure they get re-rendered
46
+ * so they can detect that layout change.
47
+ */
48
+ // @ts-expect-error its ok
49
+ presenceAffectsLayout ? void 0 : [isPresent, exitVariant, enterVariant]);
50
+ React.useMemo(() => {
51
+ presenceChildren.forEach((_, key) => presenceChildren.set(key, false));
52
+ }, [isPresent]);
53
+ React.useEffect(() => {
44
54
  !isPresent && !presenceChildren.size && onExitComplete?.();
45
- }, [isPresent]), /* @__PURE__ */jsx(PresenceContext.Provider, {
55
+ }, [isPresent]);
56
+ return /* @__PURE__ */jsx(PresenceContext.Provider, {
46
57
  value: context,
47
58
  children
48
59
  });
@@ -1 +1 @@
1
- {"version":3,"names":["useConstant","PresenceContext","React","useId","jsx","PresenceChild","memo","children","initial","isPresent","onExitComplete","exitVariant","enterVariant","enterExitVariant","presenceAffectsLayout","custom","presenceChildren","newChildrenMap","id","context","useMemo","set","isComplete","values","register","delete","forEach","_","key","useEffect","size","Provider","value","Map"],"sources":["../../src/PresenceChild.tsx"],"sourcesContent":[null],"mappings":"AAAA,SAASA,WAAA,QAAmB;AAC5B,SAASC,eAAA,QAAuB;AAEhC,YAAYC,KAAA,MAAW;AACvB,SAASC,KAAA,QAAa;AA+EX,SAAAC,GAAA;AA9DJ,MAAMC,aAAA,GAAgBH,KAAA,CAAMI,IAAA,CACjC,CAAC;EACCC,QAAA;EACAC,OAAA;EACAC,SAAA;EACAC,cAAA;EACAC,WAAA;EACAC,YAAA;EACAC,gBAAA;EACAC,qBAAA;EACAC;AACF,MAA0B;EACxB,MAAMC,gBAAA,GAAmBhB,WAAA,CAAYiB,cAAc;IAC7CC,EAAA,GAAKf,KAAA,CAAM,KAAK;IAEhBgB,OAAA,GAAUjB,KAAA,CAAMkB,OAAA,CACpB,OACS;MACLF,EAAA;MACAV,OAAA;MACAC,SAAA;MACAM,MAAA;MACAJ,WAAA;MACAC,YAAA;MACAC,gBAAA;MACAH,cAAA,EAAgBA,CAAA,KAAM;QACpBM,gBAAA,CAAiBK,GAAA,CAAIH,EAAA,EAAI,EAAI;QAC7B,WAAWI,UAAA,IAAcN,gBAAA,CAAiBO,MAAA,CAAO,GAC/C,IAAI,CAACD,UAAA,EACH;QAGJZ,cAAA,GAAiB;MACnB;MACAc,QAAA,EAAUA,CAAA,MACRR,gBAAA,CAAiBK,GAAA,CAAIH,EAAA,EAAI,EAAK,GACvB,MAAMF,gBAAA,CAAiBS,MAAA,CAAOP,EAAE;IAE3C;IAAA;AAAA;AAAA;AAAA;AAAA;IAAA;IASFJ,qBAAA,GAAwB,SAAY,CAACL,SAAA,EAAWE,WAAA,EAAaC,YAAY,CAC3E;EAEA,OAAAV,KAAA,CAAMkB,OAAA,CAAQ,MAAM;IAClBJ,gBAAA,CAAiBU,OAAA,CAAQ,CAACC,CAAA,EAAGC,GAAA,KAAQZ,gBAAA,CAAiBK,GAAA,CAAIO,GAAA,EAAK,EAAK,CAAC;EACvE,GAAG,CAACnB,SAAS,CAAC,GAMdP,KAAA,CAAM2B,SAAA,CAAU,MAAM;IACpB,CAACpB,SAAA,IAAa,CAACO,gBAAA,CAAiBc,IAAA,IAAQpB,cAAA,GAAiB;EAC3D,GAAG,CAACD,SAAS,CAAC,GAEP,eAAAL,GAAA,CAACH,eAAA,CAAgB8B,QAAA,EAAhB;IAAyBC,KAAA,EAAOb,OAAA;IAAUZ;EAAA,CAAS;AAC7D,CACF;AAEA,SAASU,eAAA,EAAuC;EAC9C,OAAO,mBAAIgB,GAAA,CAAI;AACjB","ignoreList":[]}
1
+ {"version":3,"names":["useConstant","PresenceContext","React","useId","jsx","PresenceChild","memo","children","initial","isPresent","onExitComplete","exitVariant","enterVariant","enterExitVariant","presenceAffectsLayout","custom","presenceChildren","newChildrenMap","id","context","useMemo","set","isComplete","values","register","delete","forEach","_","key","useEffect","size","Provider","value","Map"],"sources":["../../src/PresenceChild.tsx"],"sourcesContent":[null],"mappings":"AAAA,SAASA,WAAA,QAAmB;AAC5B,SAASC,eAAA,QAAuB;AAEhC,YAAYC,KAAA,MAAW;AACvB,SAASC,KAAA,QAAa;AA+EX,SAAAC,GAAA;AA9DJ,MAAMC,aAAA,GAAgBH,KAAA,CAAMI,IAAA,CACjC,CAAC;EACCC,QAAA;EACAC,OAAA;EACAC,SAAA;EACAC,cAAA;EACAC,WAAA;EACAC,YAAA;EACAC,gBAAA;EACAC,qBAAA;EACAC;AACF,MAA0B;EACxB,MAAMC,gBAAA,GAAmBhB,WAAA,CAAYiB,cAAc;EACnD,MAAMC,EAAA,GAAKf,KAAA,CAAM,KAAK;EAEtB,MAAMgB,OAAA,GAAUjB,KAAA,CAAMkB,OAAA,CACpB,MAA4B;IAC1B,OAAO;MACLF,EAAA;MACAV,OAAA;MACAC,SAAA;MACAM,MAAA;MACAJ,WAAA;MACAC,YAAA;MACAC,gBAAA;MACAH,cAAA,EAAgBA,CAAA,KAAM;QACpBM,gBAAA,CAAiBK,GAAA,CAAIH,EAAA,EAAI,IAAI;QAC7B,WAAWI,UAAA,IAAcN,gBAAA,CAAiBO,MAAA,CAAO,GAAG;UAClD,IAAI,CAACD,UAAA,EAAY;YACf;UACF;QACF;QACAZ,cAAA,GAAiB;MACnB;MACAc,QAAA,EAAUA,CAAA,KAAM;QACdR,gBAAA,CAAiBK,GAAA,CAAIH,EAAA,EAAI,KAAK;QAC9B,OAAO,MAAMF,gBAAA,CAAiBS,MAAA,CAAOP,EAAE;MACzC;IACF;EACF;EAAA;AAAA;AAAA;AAAA;AAAA;EAAA;EAQAJ,qBAAA,GAAwB,SAAY,CAACL,SAAA,EAAWE,WAAA,EAAaC,YAAY,CAC3E;EAEAV,KAAA,CAAMkB,OAAA,CAAQ,MAAM;IAClBJ,gBAAA,CAAiBU,OAAA,CAAQ,CAACC,CAAA,EAAGC,GAAA,KAAQZ,gBAAA,CAAiBK,GAAA,CAAIO,GAAA,EAAK,KAAK,CAAC;EACvE,GAAG,CAACnB,SAAS,CAAC;EAMdP,KAAA,CAAM2B,SAAA,CAAU,MAAM;IACpB,CAACpB,SAAA,IAAa,CAACO,gBAAA,CAAiBc,IAAA,IAAQpB,cAAA,GAAiB;EAC3D,GAAG,CAACD,SAAS,CAAC;EAEd,OAAO,eAAAL,GAAA,CAACH,eAAA,CAAgB8B,QAAA,EAAhB;IAAyBC,KAAA,EAAOb,OAAA;IAAUZ;EAAA,CAAS;AAC7D,CACF;AAEA,SAASU,eAAA,EAAuC;EAC9C,OAAO,mBAAIgB,GAAA,CAAI;AACjB","ignoreList":[]}
@@ -5,69 +5,79 @@ import * as React from "react";
5
5
  import { useId } from "react";
6
6
  var PresenceChild = /* @__PURE__ */React.memo(function (param) {
7
7
  var {
8
- children,
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,
9
23
  initial,
10
24
  isPresent,
11
- onExitComplete,
25
+ custom,
12
26
  exitVariant,
13
27
  enterVariant,
14
28
  enterExitVariant,
15
- presenceAffectsLayout,
16
- custom
17
- } = param,
18
- presenceChildren = useConstant(newChildrenMap),
19
- id = useId() || "",
20
- 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, !0);
31
- var _iteratorNormalCompletion = !0,
32
- _didIteratorError = !1,
33
- _iteratorError = void 0;
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 {
34
45
  try {
35
- for (var _iterator = presenceChildren.values()[Symbol.iterator](), _step; !(_iteratorNormalCompletion = (_step = _iterator.next()).done); _iteratorNormalCompletion = !0) {
36
- var isComplete = _step.value;
37
- if (!isComplete) return;
46
+ if (!_iteratorNormalCompletion && _iterator.return != null) {
47
+ _iterator.return();
38
48
  }
39
- } catch (err) {
40
- _didIteratorError = !0, _iteratorError = err;
41
49
  } finally {
42
- try {
43
- !_iteratorNormalCompletion && _iterator.return != null && _iterator.return();
44
- } finally {
45
- if (_didIteratorError) throw _iteratorError;
50
+ if (_didIteratorError) {
51
+ throw _iteratorError;
46
52
  }
47
53
  }
48
- onExitComplete?.();
49
- },
50
- register: function () {
51
- return presenceChildren.set(id, !1), function () {
52
- return presenceChildren.delete(id);
53
- };
54
54
  }
55
- };
56
- },
57
- /**
58
- * If the presence of a child affects the layout of the components around it,
59
- * we want to make a new context value to ensure they get re-rendered
60
- * so they can detect that layout change.
61
- */
62
- // @ts-expect-error its ok
63
- presenceAffectsLayout ? void 0 : [isPresent, exitVariant, enterVariant]);
64
- return React.useMemo(function () {
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 () {
65
73
  presenceChildren.forEach(function (_, key) {
66
- return presenceChildren.set(key, !1);
74
+ return presenceChildren.set(key, false);
67
75
  });
68
- }, [isPresent]), React.useEffect(function () {
69
- !isPresent && !presenceChildren.size && onExitComplete?.();
70
- }, [isPresent]), /* @__PURE__ */_jsx(PresenceContext.Provider, {
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, {
71
81
  value: context,
72
82
  children
73
83
  });
@@ -1 +1 @@
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,iCAAuB;AAEhC,SAAAC,eAAuB;AACvB,YAASC,KAAA,MAAa;AA+EX,SAAAC,KAAA;AA9DJ,IAAAC,aAAM,kBAAsBF,KAAA,CAAAG,IAAA,WAAAC,KAAA;EACjC,IAAC;MAAAC,QAAA;MAAAC,OAAA;MAAAC,SAAA;MAAAC,cAAA;MAAAC,WAAA;MAAAC,YAAA;MAAAC,gBAAA;MAAAC,qBAAA;MAAAC;IAAA,IAAAT,KAAA;IAAAU,gBAAA,GAAAhB,WAAA,CAAAiB,cAAA;IAAAC,EAAA,GAAAf,KAAA;IAAAgB,OAAA,GAAAjB,KAAA,CAAAkB,OAAA,CACC;MACA;QACAF,EAAA;QACAV,OAAA;QACAC,SAAA;QACAM,MAAA;QACAJ,WAAA;QACAC,YAAA;QACAC,gBAAA;QACwBH,cAAA,WAAAA,CAAA;UAClBM,gBAAA,CAAAK,GAAmB,CAAAH,EAAA;UAIvB,IACSI,yBAAA;YAAAC,iBAAA;YAAAC,cAAA;UACL;YACA,SAAAC,SAAA,GAAAT,gBAAA,CAAAU,MAAA,GAAAC,MAAA,CAAAC,QAAA,KAAAC,KAAA,IAAAP,yBAAA,IAAAO,KAAA,GAAAJ,SAAA,CAAAK,IAAA,IAAAC,IAAA,GAAAT,yBAAA;cACA,IAAAU,UAAA,GAAAH,KAAA,CAAAI,KAAA;cACA,KAAAD,UAAA,EACA;YACA;UACA,SAAAE,GAAA;YACAX,iBAAgB,GAAM,IAAAC,cAAA,GAAAU,GAAA;UACpB;YACA;cACE,CAAAZ,yBAAK,IAAAG,SAAA,CAAAU,MAAA,YAAAV,SAAA,CAAAU,MAAA;YACH;cAGJ,IAAAZ,iBAAiB,EACnB,MAAAC,cAAA;YACA;UAIF;UAAAd,cAAA;QAAA;QAAA0B,QAAA,WAAAA,CAAA;UAAA,OAAApB,gBAAA,CAAAK,GAAA,CAAAH,EAAA;YAAA,OAAAF,gBAAA,CAAAqB,MAAA,CAAAnB,EAAA;UAAA;QASF;MACF;IAEA;IACE;AAAqE;AAQrE;AAAyD;AAGA;IAE/D;IAEAJ,qBAAS,GAAuC,UAC9CL,SAAO,EACTE,WAAA,E","ignoreList":[]}
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":[]}