@tamagui/animate-presence 1.110.4 → 1.111.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.
@@ -18,33 +18,7 @@ __export(AnimatePresence_exports, {
18
18
  AnimatePresence: () => AnimatePresence
19
19
  });
20
20
  module.exports = __toCommonJS(AnimatePresence_exports);
21
- var import_jsx_runtime = require("react/jsx-runtime"), import_use_force_update = require("@tamagui/use-force-update"), import_react = require("react"), import_LayoutGroupContext = require("./LayoutGroupContext"), import_PresenceChild = require("./PresenceChild");
22
- function _array_like_to_array(arr, len) {
23
- (len == null || len > arr.length) && (len = arr.length);
24
- for (var i = 0, arr2 = new Array(len); i < len; i++) arr2[i] = arr[i];
25
- return arr2;
26
- }
27
- function _array_without_holes(arr) {
28
- if (Array.isArray(arr)) return _array_like_to_array(arr);
29
- }
30
- function _iterable_to_array(iter) {
31
- if (typeof Symbol < "u" && iter[Symbol.iterator] != null || iter["@@iterator"] != null) return Array.from(iter);
32
- }
33
- function _non_iterable_spread() {
34
- throw new TypeError("Invalid attempt to spread non-iterable instance.\\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.");
35
- }
36
- function _to_consumable_array(arr) {
37
- return _array_without_holes(arr) || _iterable_to_array(arr) || _unsupported_iterable_to_array(arr) || _non_iterable_spread();
38
- }
39
- function _unsupported_iterable_to_array(o, minLen) {
40
- if (o) {
41
- if (typeof o == "string") return _array_like_to_array(o, minLen);
42
- var n = Object.prototype.toString.call(o).slice(8, -1);
43
- if (n === "Object" && o.constructor && (n = o.constructor.name), n === "Map" || n === "Set") return Array.from(n);
44
- if (n === "Arguments" || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)) return _array_like_to_array(o, minLen);
45
- }
46
- }
47
- var getChildKey = function(child) {
21
+ var import_jsx_runtime = require("react/jsx-runtime"), import_use_force_update = require("@tamagui/use-force-update"), import_react = require("react"), import_LayoutGroupContext = require("./LayoutGroupContext"), import_PresenceChild = require("./PresenceChild"), getChildKey = function(child) {
48
22
  return child.key || "";
49
23
  };
50
24
  function updateChildLookup(children, allChildren) {
@@ -60,7 +34,7 @@ function onlyElements(children) {
60
34
  }), filtered;
61
35
  }
62
36
  var AnimatePresence = function(param) {
63
- var children = param.children, enterVariant = param.enterVariant, exitVariant = param.exitVariant, enterExitVariant = param.enterExitVariant, _param_initial = param.initial, initial = _param_initial === void 0 ? !0 : _param_initial, onExitComplete = param.onExitComplete, exitBeforeEnter = param.exitBeforeEnter, _param_presenceAffectsLayout = param.presenceAffectsLayout, presenceAffectsLayout = _param_presenceAffectsLayout === void 0 ? !0 : _param_presenceAffectsLayout, custom = param.custom, _useContext_forceRender, forceRender = (_useContext_forceRender = (0, import_react.useContext)(import_LayoutGroupContext.LayoutGroupContext).forceRender) !== null && _useContext_forceRender !== void 0 ? _useContext_forceRender : (0, import_use_force_update.useForceUpdate)(), filteredChildren = onlyElements(children), presentChildren = (0, import_react.useRef)(filteredChildren), allChildren = (0, import_react.useRef)(/* @__PURE__ */ new Map()).current, exiting = (0, import_react.useRef)(/* @__PURE__ */ new Set()).current;
37
+ var { children, enterVariant, exitVariant, enterExitVariant, initial = !0, onExitComplete, exitBeforeEnter, presenceAffectsLayout = !0, custom } = param, _useContext_forceRender, forceRender = (_useContext_forceRender = (0, import_react.useContext)(import_LayoutGroupContext.LayoutGroupContext).forceRender) !== null && _useContext_forceRender !== void 0 ? _useContext_forceRender : (0, import_use_force_update.useForceUpdate)(), filteredChildren = onlyElements(children), presentChildren = (0, import_react.useRef)(filteredChildren), allChildren = (0, import_react.useRef)(/* @__PURE__ */ new Map()).current, exiting = (0, import_react.useRef)(/* @__PURE__ */ new Set()).current;
64
38
  updateChildLookup(filteredChildren, allChildren);
65
39
  var isInitialRender = (0, import_react.useRef)(!0);
66
40
  if (isInitialRender.current)
@@ -78,7 +52,9 @@ var AnimatePresence = function(param) {
78
52
  }, getChildKey(child));
79
53
  })
80
54
  });
81
- for (var childrenToRender = _to_consumable_array(filteredChildren), presentKeys = presentChildren.current.map(getChildKey), targetKeys = filteredChildren.map(getChildKey), numPresent = presentKeys.length, i = 0; i < numPresent; i++) {
55
+ for (var childrenToRender = [
56
+ ...filteredChildren
57
+ ], presentKeys = presentChildren.current.map(getChildKey), targetKeys = filteredChildren.map(getChildKey), numPresent = presentKeys.length, i = 0; i < numPresent; i++) {
82
58
  var key = presentKeys[i];
83
59
  targetKeys.indexOf(key) === -1 ? exiting.add(key) : exiting.delete(key);
84
60
  }
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "version": 3,
3
3
  "sources": ["../../src/Users/n8/tamagui/code/ui/animate-presence/src/AnimatePresence.tsx"],
4
- "mappings": "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",
4
+ "mappings": "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",
5
5
  "names": ["getChildKey", "child", "key", "updateChildLookup", "children", "allChildren", "forEach", "set", "onlyElements", "filtered", "Children", "isValidElement", "push", "AnimatePresence", "enterVariant", "exitVariant", "enterExitVariant", "initial", "onExitComplete", "exitBeforeEnter", "presenceAffectsLayout", "custom", "useContext", "forceRender", "LayoutGroupContext", "useForceUpdate", "filteredChildren", "presentChildren", "useRef", "Map", "current", "exiting", "Set", "isInitialRender", "_jsx", "_Fragment", "map", "PresenceChild", "isPresent", "undefined", "childrenToRender", "presentKeys", "targetKeys", "numPresent", "length", "i", "indexOf", "add", "delete", "size", "get", "insertionIndex", "onExit", "removeIndex", "findIndex", "presentChild", "splice", "exitingComponent", "has", "cloneElement", "displayName"]
6
6
  }
@@ -27,7 +27,7 @@ __export(PresenceChild_exports, {
27
27
  });
28
28
  module.exports = __toCommonJS(PresenceChild_exports);
29
29
  var import_jsx_runtime = require("react/jsx-runtime"), import_use_constant = require("@tamagui/use-constant"), import_use_presence = require("@tamagui/use-presence"), React = __toESM(require("react")), import_react = require("react"), PresenceChild = /* @__PURE__ */ React.memo(function(param) {
30
- var children = param.children, initial = param.initial, isPresent = param.isPresent, onExitComplete = param.onExitComplete, exitVariant = param.exitVariant, enterVariant = param.enterVariant, enterExitVariant = param.enterExitVariant, presenceAffectsLayout = param.presenceAffectsLayout, custom = param.custom, presenceChildren = (0, import_use_constant.useConstant)(newChildrenMap), id = (0, import_react.useId)() || "", context = React.useMemo(
30
+ var { children, initial, isPresent, onExitComplete, exitVariant, enterVariant, enterExitVariant, presenceAffectsLayout, custom } = param, presenceChildren = (0, import_use_constant.useConstant)(newChildrenMap), id = (0, import_react.useId)() || "", context = React.useMemo(
31
31
  function() {
32
32
  return {
33
33
  id,
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "version": 3,
3
3
  "sources": ["../../src/Users/n8/tamagui/code/ui/animate-presence/src/PresenceChild.tsx"],
4
- "mappings": ";;;;;;;;;;;;;;;;;;;;;;;;;;;;uDAAA,sBAA4B,kCAC5B,sBAAgC,kCAEhC,QAAuB,2BACvB,eAAsB,kBAiBTA,gBAAgBC,sBAAMC,KACjC,SAAA,OAAA;MACEC,WAAAA,MAAAA,UACAC,UAAAA,MAAAA,SACAC,YAAAA,MAAAA,WACAC,iBAAAA,MAAAA,gBACAC,cAAAA,MAAAA,aACAC,eAAAA,MAAAA,cACAC,mBAAAA,MAAAA,kBACAC,wBAAAA,MAAAA,uBACAC,SAAAA,MAAAA,QAEMC,uBAAmBC,iCAAYC,cAAAA,GAC/BC,SAAKC,oBAAAA,KAAW,IAEhBC,UAAUhB,MAAMiB;IACpB,WAAA;AACE,aAAO;QACLH;QACAX;QACAC;QACAM;QACAJ;QACAC;QACAC;QACAH,gBAAgB,WAAA;AACdM,2BAAiBO,IAAIJ,IAAI,EAAA;cACpB,4BAAA,IAAA,oBAAA,IAAA,iBAAA;;AAAL,qBAAK,YAAoBH,iBAAiBQ,OAAM,EAAA,OAAA,QAAA,EAAA,GAA3C,OAAA,EAAA,6BAAA,QAAA,UAAA,KAAA,GAAA,OAAA,4BAAA,IAA+C;AAA/C,kBAAMC,aAAN,MAAA;AACH,kBAAI,CAACA;AACH;YAEJ;;AAJK,gCAAA,IAAA,iBAAA;;;eAAA,6BAAA,UAAA,UAAA,QAAA,UAAA,OAAA;;kBAAA;sBAAA;;;AAKLf,4BAAAA,QAAAA,eAAAA;QACF;QACAgB,UAAU,WAAA;AACRV,kCAAiBO,IAAIJ,IAAI,EAAA,GAClB,WAAA;mBAAMH,iBAAiBW,OAAOR,EAAAA;;QACvC;MACF;IACF;;;;;;;IAQAL,wBAAwBc,SAAY;MAACnB;MAAWE;MAAaC;;EAAa;AAG5EP,eAAMiB,QAAQ,WAAA;AACZN,qBAAiBa,QAAQ,SAACC,GAAGC,KAAAA;aAAQf,iBAAiBO,IAAIQ,KAAK,EAAA;;EACjE,GAAG;IAACtB;GAAU,GAMdJ,MAAM2B,UAAU,WAAA;AACd,KAACvB,aAAa,CAACO,iBAAiBiB,SAAQvB,kBAAAA,QAAAA,eAAAA;EAC1C,GAAG;IAACD;GAAU,GAEP,uCAAAyB,KAACC,oCAAgBC,UAAQ;IAACC,OAAOhB;;;AAC1C,CAAA;AAGF,SAASH,iBAAAA;AACP,SAAO,oBAAIoB,IAAAA;AACb;",
4
+ "mappings": ";;;;;;;;;;;;;;;;;;;;;;;;;;;;uDAAA,sBAA4B,kCAC5B,sBAAgC,kCAEhC,QAAuB,2BACvB,eAAsB,kBAiBTA,gBAAgBC,sBAAMC,KACjC,SAAA,OAAA;MAAC,EACCC,UACAC,SACAC,WACAC,gBACAC,aACAC,cACAC,kBACAC,uBACAC,OAAM,IACa,OACbC,uBAAmBC,iCAAYC,cAAAA,GAC/BC,SAAKC,oBAAAA,KAAW,IAEhBC,UAAUhB,MAAMiB;IACpB,WAAA;AACE,aAAO;QACLH;QACAX;QACAC;QACAM;QACAJ;QACAC;QACAC;QACAH,gBAAgB,WAAA;AACdM,2BAAiBO,IAAIJ,IAAI,EAAA;cACpB,4BAAA,IAAA,oBAAA,IAAA,iBAAA;;AAAL,qBAAK,YAAoBH,iBAAiBQ,OAAM,EAAA,OAAA,QAAA,EAAA,GAA3C,OAAA,EAAA,6BAAA,QAAA,UAAA,KAAA,GAAA,OAAA,4BAAA,IAA+C;AAA/C,kBAAMC,aAAN,MAAA;AACH,kBAAI,CAACA;AACH;YAEJ;;AAJK,gCAAA,IAAA,iBAAA;;;eAAA,6BAAA,UAAA,UAAA,QAAA,UAAA,OAAA;;kBAAA;sBAAA;;;AAKLf,4BAAAA,QAAAA,eAAAA;QACF;QACAgB,UAAU,WAAA;AACRV,kCAAiBO,IAAIJ,IAAI,EAAA,GAClB,WAAA;mBAAMH,iBAAiBW,OAAOR,EAAAA;;QACvC;MACF;IACF;;;;;;;IAQAL,wBAAwBc,SAAY;MAACnB;MAAWE;MAAaC;;EAAa;AAG5EP,eAAMiB,QAAQ,WAAA;AACZN,qBAAiBa,QAAQ,SAACC,GAAGC,KAAAA;aAAQf,iBAAiBO,IAAIQ,KAAK,EAAA;;EACjE,GAAG;IAACtB;GAAU,GAMdJ,MAAM2B,UAAU,WAAA;AACd,KAACvB,aAAa,CAACO,iBAAiBiB,SAAQvB,kBAAAA,QAAAA,eAAAA;EAC1C,GAAG;IAACD;GAAU,GAEP,uCAAAyB,KAACC,oCAAgBC,UAAQ;IAACC,OAAOhB;;;AAC1C,CAAA;AAGF,SAASH,iBAAAA;AACP,SAAO,oBAAIoB,IAAAA;AACb;",
5
5
  "names": ["PresenceChild", "React", "memo", "children", "initial", "isPresent", "onExitComplete", "exitVariant", "enterVariant", "enterExitVariant", "presenceAffectsLayout", "custom", "presenceChildren", "useConstant", "newChildrenMap", "id", "useId", "context", "useMemo", "set", "values", "isComplete", "register", "delete", "undefined", "forEach", "_", "key", "useEffect", "size", "_jsx", "PresenceContext", "Provider", "value", "Map"]
6
6
  }
@@ -3,31 +3,6 @@ import { useForceUpdate } from "@tamagui/use-force-update";
3
3
  import { Children, cloneElement, isValidElement, useContext, useRef } from "react";
4
4
  import { LayoutGroupContext } from "./LayoutGroupContext";
5
5
  import { PresenceChild } from "./PresenceChild";
6
- function _array_like_to_array(arr, len) {
7
- (len == null || len > arr.length) && (len = arr.length);
8
- for (var i = 0, arr2 = new Array(len); i < len; i++) arr2[i] = arr[i];
9
- return arr2;
10
- }
11
- function _array_without_holes(arr) {
12
- if (Array.isArray(arr)) return _array_like_to_array(arr);
13
- }
14
- function _iterable_to_array(iter) {
15
- if (typeof Symbol < "u" && iter[Symbol.iterator] != null || iter["@@iterator"] != null) return Array.from(iter);
16
- }
17
- function _non_iterable_spread() {
18
- throw new TypeError("Invalid attempt to spread non-iterable instance.\\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.");
19
- }
20
- function _to_consumable_array(arr) {
21
- return _array_without_holes(arr) || _iterable_to_array(arr) || _unsupported_iterable_to_array(arr) || _non_iterable_spread();
22
- }
23
- function _unsupported_iterable_to_array(o, minLen) {
24
- if (o) {
25
- if (typeof o == "string") return _array_like_to_array(o, minLen);
26
- var n = Object.prototype.toString.call(o).slice(8, -1);
27
- if (n === "Object" && o.constructor && (n = o.constructor.name), n === "Map" || n === "Set") return Array.from(n);
28
- if (n === "Arguments" || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)) return _array_like_to_array(o, minLen);
29
- }
30
- }
31
6
  var getChildKey = function(child) {
32
7
  return child.key || "";
33
8
  };
@@ -44,7 +19,7 @@ function onlyElements(children) {
44
19
  }), filtered;
45
20
  }
46
21
  var AnimatePresence = function(param) {
47
- var children = param.children, enterVariant = param.enterVariant, exitVariant = param.exitVariant, enterExitVariant = param.enterExitVariant, _param_initial = param.initial, initial = _param_initial === void 0 ? !0 : _param_initial, onExitComplete = param.onExitComplete, exitBeforeEnter = param.exitBeforeEnter, _param_presenceAffectsLayout = param.presenceAffectsLayout, presenceAffectsLayout = _param_presenceAffectsLayout === void 0 ? !0 : _param_presenceAffectsLayout, custom = param.custom, _useContext_forceRender, forceRender = (_useContext_forceRender = useContext(LayoutGroupContext).forceRender) !== null && _useContext_forceRender !== void 0 ? _useContext_forceRender : useForceUpdate(), filteredChildren = onlyElements(children), presentChildren = useRef(filteredChildren), allChildren = useRef(/* @__PURE__ */ new Map()).current, exiting = useRef(/* @__PURE__ */ new Set()).current;
22
+ var { children, enterVariant, exitVariant, enterExitVariant, initial = !0, onExitComplete, exitBeforeEnter, presenceAffectsLayout = !0, custom } = param, _useContext_forceRender, forceRender = (_useContext_forceRender = useContext(LayoutGroupContext).forceRender) !== null && _useContext_forceRender !== void 0 ? _useContext_forceRender : useForceUpdate(), filteredChildren = onlyElements(children), presentChildren = useRef(filteredChildren), allChildren = useRef(/* @__PURE__ */ new Map()).current, exiting = useRef(/* @__PURE__ */ new Set()).current;
48
23
  updateChildLookup(filteredChildren, allChildren);
49
24
  var isInitialRender = useRef(!0);
50
25
  if (isInitialRender.current)
@@ -62,7 +37,9 @@ var AnimatePresence = function(param) {
62
37
  }, getChildKey(child));
63
38
  })
64
39
  });
65
- for (var childrenToRender = _to_consumable_array(filteredChildren), presentKeys = presentChildren.current.map(getChildKey), targetKeys = filteredChildren.map(getChildKey), numPresent = presentKeys.length, i = 0; i < numPresent; i++) {
40
+ for (var childrenToRender = [
41
+ ...filteredChildren
42
+ ], presentKeys = presentChildren.current.map(getChildKey), targetKeys = filteredChildren.map(getChildKey), numPresent = presentKeys.length, i = 0; i < numPresent; i++) {
66
43
  var key = presentKeys[i];
67
44
  targetKeys.indexOf(key) === -1 ? exiting.add(key) : exiting.delete(key);
68
45
  }
@@ -75,7 +52,7 @@ var AnimatePresence = function(param) {
75
52
  var removeIndex = presentChildren.current.findIndex(function(presentChild) {
76
53
  return presentChild.key === key2;
77
54
  });
78
- presentChildren.current.splice(removeIndex, 1), exiting.size || (presentChildren.current = filteredChildren, forceRender(), onExitComplete == null || onExitComplete());
55
+ presentChildren.current.splice(removeIndex, 1), exiting.size || (presentChildren.current = filteredChildren, forceRender(), onExitComplete?.());
79
56
  }, exitingComponent = /* @__PURE__ */ _jsx(PresenceChild, {
80
57
  isPresent: !1,
81
58
  onExitComplete: onExit,
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "version": 3,
3
3
  "sources": ["../../src/Users/n8/tamagui/code/ui/animate-presence/src/AnimatePresence.tsx"],
4
- "mappings": "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",
4
+ "mappings": "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",
5
5
  "names": ["useForceUpdate", "Children", "cloneElement", "isValidElement", "useContext", "useRef", "LayoutGroupContext", "PresenceChild", "getChildKey", "child", "key", "updateChildLookup", "children", "allChildren", "forEach", "set", "onlyElements", "filtered", "push", "AnimatePresence", "enterVariant", "exitVariant", "enterExitVariant", "initial", "onExitComplete", "exitBeforeEnter", "presenceAffectsLayout", "custom", "forceRender", "filteredChildren", "presentChildren", "Map", "current", "exiting", "Set", "isInitialRender", "map", "isPresent", "undefined", "childrenToRender", "presentKeys", "targetKeys", "numPresent", "length", "i", "indexOf", "add", "delete", "size", "get", "insertionIndex", "onExit", "removeIndex", "findIndex", "presentChild", "splice", "exitingComponent", "has", "displayName"]
6
6
  }
@@ -0,0 +1,105 @@
1
+ import { jsx as _jsx, Fragment as _Fragment } from "react/jsx-runtime";
2
+ import { useForceUpdate } from "@tamagui/use-force-update";
3
+ import { Children, cloneElement, isValidElement, useContext, useRef } from "react";
4
+ import { LayoutGroupContext } from "./LayoutGroupContext.mjs";
5
+ import { PresenceChild } from "./PresenceChild.mjs";
6
+ var getChildKey = function (child) {
7
+ return child.key || "";
8
+ };
9
+ function updateChildLookup(children, allChildren) {
10
+ children.forEach(function (child) {
11
+ var key = getChildKey(child);
12
+ allChildren.set(key, child);
13
+ });
14
+ }
15
+ function onlyElements(children) {
16
+ var filtered = [];
17
+ return Children.forEach(children, function (child) {
18
+ /* @__PURE__ */isValidElement(child) && filtered.push(child);
19
+ }), filtered;
20
+ }
21
+ var AnimatePresence = function (param) {
22
+ var {
23
+ children,
24
+ enterVariant,
25
+ exitVariant,
26
+ enterExitVariant,
27
+ initial = !0,
28
+ onExitComplete,
29
+ exitBeforeEnter,
30
+ presenceAffectsLayout = !0,
31
+ custom
32
+ } = param,
33
+ _useContext_forceRender,
34
+ forceRender = (_useContext_forceRender = useContext(LayoutGroupContext).forceRender) !== null && _useContext_forceRender !== void 0 ? _useContext_forceRender : useForceUpdate(),
35
+ filteredChildren = onlyElements(children),
36
+ presentChildren = useRef(filteredChildren),
37
+ allChildren = useRef(/* @__PURE__ */new Map()).current,
38
+ exiting = useRef(/* @__PURE__ */new Set()).current;
39
+ updateChildLookup(filteredChildren, allChildren);
40
+ var isInitialRender = useRef(!0);
41
+ if (isInitialRender.current) return isInitialRender.current = !1, /* @__PURE__ */_jsx(_Fragment, {
42
+ children: filteredChildren.map(function (child) {
43
+ return /* @__PURE__ */_jsx(PresenceChild, {
44
+ isPresent: !0,
45
+ enterExitVariant,
46
+ exitVariant,
47
+ enterVariant,
48
+ initial: initial ? void 0 : !1,
49
+ presenceAffectsLayout,
50
+ custom,
51
+ children: child
52
+ }, getChildKey(child));
53
+ })
54
+ });
55
+ for (var childrenToRender = [...filteredChildren], presentKeys = presentChildren.current.map(getChildKey), targetKeys = filteredChildren.map(getChildKey), numPresent = presentKeys.length, i = 0; i < numPresent; i++) {
56
+ var key = presentKeys[i];
57
+ targetKeys.indexOf(key) === -1 ? exiting.add(key) : exiting.delete(key);
58
+ }
59
+ return exitBeforeEnter && exiting.size && (childrenToRender = []), exiting.forEach(function (key2) {
60
+ if (targetKeys.indexOf(key2) === -1) {
61
+ var child = allChildren.get(key2);
62
+ if (child) {
63
+ var insertionIndex = presentKeys.indexOf(key2),
64
+ onExit = function () {
65
+ allChildren.delete(key2), exiting.delete(key2);
66
+ var removeIndex = presentChildren.current.findIndex(function (presentChild) {
67
+ return presentChild.key === key2;
68
+ });
69
+ presentChildren.current.splice(removeIndex, 1), exiting.size || (presentChildren.current = filteredChildren, forceRender(), onExitComplete?.());
70
+ },
71
+ exitingComponent = /* @__PURE__ */_jsx(PresenceChild, {
72
+ isPresent: !1,
73
+ onExitComplete: onExit,
74
+ presenceAffectsLayout,
75
+ enterExitVariant,
76
+ enterVariant,
77
+ exitVariant,
78
+ custom,
79
+ children: child
80
+ }, getChildKey(child));
81
+ childrenToRender.splice(insertionIndex, 0, exitingComponent);
82
+ }
83
+ }
84
+ }), childrenToRender = childrenToRender.map(function (child) {
85
+ var key2 = child.key;
86
+ return exiting.has(key2) ? child : /* @__PURE__ */_jsx(PresenceChild, {
87
+ isPresent: !0,
88
+ exitVariant,
89
+ enterVariant,
90
+ enterExitVariant,
91
+ presenceAffectsLayout,
92
+ custom,
93
+ children: child
94
+ }, getChildKey(child));
95
+ }), presentChildren.current = childrenToRender, /* @__PURE__ */_jsx(_Fragment, {
96
+ children: exiting.size ? childrenToRender :
97
+ // biome-ignore lint/correctness/useJsxKeyInIterable: <explanation>
98
+ childrenToRender.map(function (child) {
99
+ return /* @__PURE__ */cloneElement(child);
100
+ })
101
+ });
102
+ };
103
+ AnimatePresence.displayName = "AnimatePresence";
104
+ export { AnimatePresence };
105
+ //# sourceMappingURL=AnimatePresence.native.mjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"names":["jsx","_jsx","Fragment","_Fragment","useForceUpdate","Children","cloneElement","isValidElement","useContext","useRef","LayoutGroupContext","PresenceChild","getChildKey","child","key","updateChildLookup","children","allChildren","forEach","set","onlyElements","filtered","push","AnimatePresence","param","enterVariant","exitVariant","enterExitVariant","initial","onExitComplete","exitBeforeEnter","presenceAffectsLayout","custom","_useContext_forceRender","forceRender","filteredChildren","presentChildren","Map","current","exiting","Set","isInitialRender","map","isPresent","childrenToRender","presentKeys","targetKeys","numPresent","length","i","indexOf","add","delete","size","key2","get","insertionIndex","onExit","removeIndex","findIndex","presentChild","splice","exitingComponent","has","displayName"],"sources":["../../src/AnimatePresence.tsx"],"sourcesContent":[null],"mappings":"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","ignoreList":[]}
@@ -0,0 +1,4 @@
1
+ import React from "react";
2
+ var LayoutGroupContext = /* @__PURE__ */React.createContext({});
3
+ export { LayoutGroupContext };
4
+ //# sourceMappingURL=LayoutGroupContext.native.mjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"names":["React","LayoutGroupContext","createContext"],"sources":["../../src/LayoutGroupContext.tsx"],"sourcesContent":[null],"mappings":"AAAA,OAAOA,KAAA,MAAW;AAOX,IAAAC,kBAAM,kBAA2BD,KAAA,CAAuCE,aAAE","ignoreList":[]}
@@ -4,7 +4,7 @@ import { PresenceContext } from "@tamagui/use-presence";
4
4
  import * as React from "react";
5
5
  import { useId } from "react";
6
6
  var PresenceChild = /* @__PURE__ */ React.memo(function(param) {
7
- var children = param.children, initial = param.initial, isPresent = param.isPresent, onExitComplete = param.onExitComplete, exitVariant = param.exitVariant, enterVariant = param.enterVariant, enterExitVariant = param.enterExitVariant, presenceAffectsLayout = param.presenceAffectsLayout, custom = param.custom, presenceChildren = useConstant(newChildrenMap), id = useId() || "", context = React.useMemo(
7
+ var { children, initial, isPresent, onExitComplete, exitVariant, enterVariant, enterExitVariant, presenceAffectsLayout, custom } = param, presenceChildren = useConstant(newChildrenMap), id = useId() || "", context = React.useMemo(
8
8
  function() {
9
9
  return {
10
10
  id,
@@ -33,7 +33,7 @@ var PresenceChild = /* @__PURE__ */ React.memo(function(param) {
33
33
  throw _iteratorError;
34
34
  }
35
35
  }
36
- onExitComplete == null || onExitComplete();
36
+ onExitComplete?.();
37
37
  },
38
38
  register: function() {
39
39
  return presenceChildren.set(id, !1), function() {
@@ -61,7 +61,7 @@ var PresenceChild = /* @__PURE__ */ React.memo(function(param) {
61
61
  }, [
62
62
  isPresent
63
63
  ]), React.useEffect(function() {
64
- !isPresent && !presenceChildren.size && (onExitComplete == null || onExitComplete());
64
+ !isPresent && !presenceChildren.size && onExitComplete?.();
65
65
  }, [
66
66
  isPresent
67
67
  ]), /* @__PURE__ */ _jsx(PresenceContext.Provider, {
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "version": 3,
3
3
  "sources": ["../../src/Users/n8/tamagui/code/ui/animate-presence/src/PresenceChild.tsx"],
4
- "mappings": ";AAAA,SAASA,mBAAmB;AAC5B,SAASC,uBAAuB;AAEhC,YAAYC,WAAW;AACvB,SAASC,aAAa;AAiBf,IAAMC,gBAAgBF,sBAAMG,KACjC,SAAA,OAAA;MACEC,WAAAA,MAAAA,UACAC,UAAAA,MAAAA,SACAC,YAAAA,MAAAA,WACAC,iBAAAA,MAAAA,gBACAC,cAAAA,MAAAA,aACAC,eAAAA,MAAAA,cACAC,mBAAAA,MAAAA,kBACAC,wBAAAA,MAAAA,uBACAC,SAAAA,MAAAA,QAEMC,mBAAmBf,YAAYgB,cAAAA,GAC/BC,KAAKd,MAAAA,KAAW,IAEhBe,UAAUhB,MAAMiB;IACpB,WAAA;AACE,aAAO;QACLF;QACAV;QACAC;QACAM;QACAJ;QACAC;QACAC;QACAH,gBAAgB,WAAA;AACdM,2BAAiBK,IAAIH,IAAI,EAAA;cACpB,4BAAA,IAAA,oBAAA,IAAA,iBAAA;;AAAL,qBAAK,YAAoBF,iBAAiBM,OAAM,EAAA,OAAA,QAAA,EAAA,GAA3C,OAAA,EAAA,6BAAA,QAAA,UAAA,KAAA,GAAA,OAAA,4BAAA,IAA+C;AAA/C,kBAAMC,aAAN,MAAA;AACH,kBAAI,CAACA;AACH;YAEJ;;AAJK,gCAAA,IAAA,iBAAA;;;eAAA,6BAAA,UAAA,UAAA,QAAA,UAAA,OAAA;;kBAAA;sBAAA;;;AAKLb,4BAAAA,QAAAA,eAAAA;QACF;QACAc,UAAU,WAAA;AACRR,kCAAiBK,IAAIH,IAAI,EAAA,GAClB,WAAA;mBAAMF,iBAAiBS,OAAOP,EAAAA;;QACvC;MACF;IACF;;;;;;;IAQAJ,wBAAwBY,SAAY;MAACjB;MAAWE;MAAaC;;EAAa;AAG5ET,eAAMiB,QAAQ,WAAA;AACZJ,qBAAiBW,QAAQ,SAACC,GAAGC,KAAAA;aAAQb,iBAAiBK,IAAIQ,KAAK,EAAA;;EACjE,GAAG;IAACpB;GAAU,GAMdN,MAAM2B,UAAU,WAAA;AACd,KAACrB,aAAa,CAACO,iBAAiBe,SAAQrB,kBAAAA,QAAAA,eAAAA;EAC1C,GAAG;IAACD;GAAU,GAEP,qBAACP,gBAAgB8B,UAAQ;IAACC,OAAOd;;;AAC1C,CAAA;AAGF,SAASF,iBAAAA;AACP,SAAO,oBAAIiB,IAAAA;AACb;",
4
+ "mappings": ";AAAA,SAASA,mBAAmB;AAC5B,SAASC,uBAAuB;AAEhC,YAAYC,WAAW;AACvB,SAASC,aAAa;AAiBf,IAAMC,gBAAgBF,sBAAMG,KACjC,SAAA,OAAA;MAAC,EACCC,UACAC,SACAC,WACAC,gBACAC,aACAC,cACAC,kBACAC,uBACAC,OAAM,IACa,OACbC,mBAAmBf,YAAYgB,cAAAA,GAC/BC,KAAKd,MAAAA,KAAW,IAEhBe,UAAUhB,MAAMiB;IACpB,WAAA;AACE,aAAO;QACLF;QACAV;QACAC;QACAM;QACAJ;QACAC;QACAC;QACAH,gBAAgB,WAAA;AACdM,2BAAiBK,IAAIH,IAAI,EAAA;cACpB,4BAAA,IAAA,oBAAA,IAAA,iBAAA;;AAAL,qBAAK,YAAoBF,iBAAiBM,OAAM,EAAA,OAAA,QAAA,EAAA,GAA3C,OAAA,EAAA,6BAAA,QAAA,UAAA,KAAA,GAAA,OAAA,4BAAA,IAA+C;AAA/C,kBAAMC,aAAN,MAAA;AACH,kBAAI,CAACA;AACH;YAEJ;;AAJK,gCAAA,IAAA,iBAAA;;;eAAA,6BAAA,UAAA,UAAA,QAAA,UAAA,OAAA;;kBAAA;sBAAA;;;AAKLb,UAAAA,iBAAAA;QACF;QACAc,UAAU,WAAA;AACRR,kCAAiBK,IAAIH,IAAI,EAAA,GAClB,WAAA;mBAAMF,iBAAiBS,OAAOP,EAAAA;;QACvC;MACF;IACF;;;;;;;IAQAJ,wBAAwBY,SAAY;MAACjB;MAAWE;MAAaC;;EAAa;AAG5ET,eAAMiB,QAAQ,WAAA;AACZJ,qBAAiBW,QAAQ,SAACC,GAAGC,KAAAA;aAAQb,iBAAiBK,IAAIQ,KAAK,EAAA;;EACjE,GAAG;IAACpB;GAAU,GAMdN,MAAM2B,UAAU,WAAA;AACd,KAACrB,aAAa,CAACO,iBAAiBe,QAAQrB,iBAAAA;EAC1C,GAAG;IAACD;GAAU,GAEP,qBAACP,gBAAgB8B,UAAQ;IAACC,OAAOd;;;AAC1C,CAAA;AAGF,SAASF,iBAAAA;AACP,SAAO,oBAAIiB,IAAAA;AACb;",
5
5
  "names": ["useConstant", "PresenceContext", "React", "useId", "PresenceChild", "memo", "children", "initial", "isPresent", "onExitComplete", "exitVariant", "enterVariant", "enterExitVariant", "presenceAffectsLayout", "custom", "presenceChildren", "newChildrenMap", "id", "context", "useMemo", "set", "values", "isComplete", "register", "delete", "undefined", "forEach", "_", "key", "useEffect", "size", "Provider", "value", "Map"]
6
6
  }
@@ -0,0 +1,79 @@
1
+ import { jsx as _jsx } from "react/jsx-runtime";
2
+ import { useConstant } from "@tamagui/use-constant";
3
+ import { PresenceContext } from "@tamagui/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
+ 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;
34
+ 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;
38
+ }
39
+ } catch (err) {
40
+ _didIteratorError = !0, _iteratorError = err;
41
+ } finally {
42
+ try {
43
+ !_iteratorNormalCompletion && _iterator.return != null && _iterator.return();
44
+ } finally {
45
+ if (_didIteratorError) throw _iteratorError;
46
+ }
47
+ }
48
+ onExitComplete?.();
49
+ },
50
+ register: function () {
51
+ return presenceChildren.set(id, !1), function () {
52
+ return presenceChildren.delete(id);
53
+ };
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 () {
65
+ presenceChildren.forEach(function (_, key) {
66
+ return presenceChildren.set(key, !1);
67
+ });
68
+ }, [isPresent]), React.useEffect(function () {
69
+ !isPresent && !presenceChildren.size && onExitComplete?.();
70
+ }, [isPresent]), /* @__PURE__ */_jsx(PresenceContext.Provider, {
71
+ value: context,
72
+ children
73
+ });
74
+ });
75
+ function newChildrenMap() {
76
+ return /* @__PURE__ */new Map();
77
+ }
78
+ export { PresenceChild };
79
+ //# sourceMappingURL=PresenceChild.native.mjs.map
@@ -0,0 +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,+BAAuB;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":[]}
@@ -0,0 +1,5 @@
1
+ export * from "./AnimatePresence.mjs";
2
+ export * from "@tamagui/use-presence";
3
+ export * from "./types.mjs";
4
+ export * from "./PresenceChild.mjs";
5
+ //# sourceMappingURL=index.native.mjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"names":[],"sources":["../../src/index.ts"],"sourcesContent":[null],"mappings":"AAAA,cAAc;AACd,cAAc;AACd,cAAc;AACd,cAAc","ignoreList":[]}
@@ -0,0 +1,2 @@
1
+
2
+ //# sourceMappingURL=types.native.mjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"names":[],"sources":[],"sourcesContent":[],"mappings":"","ignoreList":[]}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@tamagui/animate-presence",
3
- "version": "1.110.4",
3
+ "version": "1.111.0",
4
4
  "source": "src/index.ts",
5
5
  "sideEffects": false,
6
6
  "license": "MIT",
@@ -13,14 +13,14 @@
13
13
  "dist"
14
14
  ],
15
15
  "dependencies": {
16
- "@tamagui/helpers": "1.110.4",
17
- "@tamagui/use-constant": "1.110.4",
18
- "@tamagui/use-force-update": "1.110.4",
19
- "@tamagui/use-presence": "1.110.4",
20
- "@tamagui/web": "1.110.4"
16
+ "@tamagui/helpers": "1.111.0",
17
+ "@tamagui/use-constant": "1.111.0",
18
+ "@tamagui/use-force-update": "1.111.0",
19
+ "@tamagui/use-presence": "1.111.0",
20
+ "@tamagui/web": "1.111.0"
21
21
  },
22
22
  "devDependencies": {
23
- "@tamagui/build": "1.110.4"
23
+ "@tamagui/build": "1.111.0"
24
24
  },
25
25
  "scripts": {
26
26
  "build": "tamagui-build",