@tamagui/animations-moti 1.105.3 → 1.105.4

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -119,18 +119,19 @@ function createAnimations(animations) {
119
119
  return (0, import_react_native_reanimated.useAnimatedStyle)(() => getStyle(derivedValue.value), [val, getStyle, derivedValue, instance]);
120
120
  },
121
121
  useAnimations: (animationProps) => {
122
- const { props, presence, style, componentState } = animationProps, presenceContext = (0, import_react.useContext)(import_use_presence.PresenceContext), animationKey = Array.isArray(props.animation) ? props.animation[0] : props.animation, isHydrating = componentState.unmounted === !0;
122
+ const { props, presence, style, componentState } = animationProps, animationKey = Array.isArray(props.animation) ? props.animation[0] : props.animation, isHydrating = componentState.unmounted === !0, disableAnimation = isHydrating || !animationKey;
123
123
  let animate = {}, dontAnimate = {};
124
- const preventAnimation = isHydrating || !animationKey || // if we don't do this moti seems to flicker a frame before applying animation
125
- componentState.unmounted === "should-enter";
126
- if (preventAnimation)
127
- return dontAnimate = style, (0, import_moti.useMotify)({}), [dontAnimate];
128
- const animateOnly = props.animateOnly;
129
- for (const key in style) {
130
- const value = style[key];
131
- !onlyAnimateKeys[key] || value === "auto" || typeof value == "string" && value.startsWith("calc") || animateOnly && !animateOnly.includes(key) ? dontAnimate[key] = value : animate[key] = value;
124
+ if (disableAnimation)
125
+ dontAnimate = style;
126
+ else {
127
+ const animateOnly = props.animateOnly;
128
+ for (const key in style) {
129
+ const value = style[key];
130
+ !onlyAnimateKeys[key] || value === "auto" || typeof value == "string" && value.startsWith("calc") || animateOnly && !animateOnly.includes(key) ? dontAnimate[key] = value : animate[key] = value;
131
+ }
132
132
  }
133
- const styles = animate, isExiting = !!presence?.[1], usePresenceValue = presence || void 0, transition = isHydrating ? { type: "transition", duration: 0 } : {
133
+ componentState.unmounted === "should-enter" && (dontAnimate = style);
134
+ const animateStr = JSON.stringify(animate), styles = (0, import_react.useMemo)(() => JSON.parse(animateStr), [animateStr]), isExiting = !!presence?.[1], presenceContext = (0, import_react.useContext)(import_use_presence.PresenceContext), usePresenceValue = presence || void 0, transition = isHydrating ? { type: "transition", duration: 0 } : {
134
135
  ...animations[animationKey]
135
136
  };
136
137
  if (Array.isArray(props.animation)) {
@@ -142,7 +143,7 @@ function createAnimations(animations) {
142
143
  }
143
144
  }
144
145
  const motiProps = {
145
- animate: preventAnimation || isExiting || componentState.unmounted === !0 ? {} : styles,
146
+ animate: isExiting || componentState.unmounted === !0 ? {} : styles,
146
147
  transition: componentState.unmounted ? { duration: 0 } : transition,
147
148
  usePresenceValue,
148
149
  presenceContext,
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "version": 3,
3
3
  "sources": ["../../src/createAnimations.tsx"],
4
- "mappings": "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",
4
+ "mappings": "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",
5
5
  "names": ["Animated"]
6
6
  }
@@ -164,18 +164,22 @@ function createAnimations(animations) {
164
164
  );
165
165
  },
166
166
  useAnimations: function(animationProps) {
167
- var props = animationProps.props, presence = animationProps.presence, style = animationProps.style, componentState = animationProps.componentState, presenceContext = (0, import_react.useContext)(import_use_presence.PresenceContext), animationKey = Array.isArray(props.animation) ? props.animation[0] : props.animation, isHydrating = componentState.unmounted === !0, animate = {}, dontAnimate = {}, preventAnimation = isHydrating || !animationKey || // if we don't do this moti seems to flicker a frame before applying animation
168
- componentState.unmounted === "should-enter";
169
- if (preventAnimation)
170
- return dontAnimate = style, (0, import_moti.useMotify)({}), [
171
- dontAnimate
172
- ];
173
- var animateOnly = props.animateOnly;
174
- for (var key in style) {
175
- var value = style[key];
176
- !onlyAnimateKeys[key] || value === "auto" || typeof value == "string" && value.startsWith("calc") || animateOnly && !animateOnly.includes(key) ? dontAnimate[key] = value : animate[key] = value;
167
+ var props = animationProps.props, presence = animationProps.presence, style = animationProps.style, componentState = animationProps.componentState, animationKey = Array.isArray(props.animation) ? props.animation[0] : props.animation, isHydrating = componentState.unmounted === !0, disableAnimation = isHydrating || !animationKey, animate = {}, dontAnimate = {};
168
+ if (disableAnimation)
169
+ dontAnimate = style;
170
+ else {
171
+ var animateOnly = props.animateOnly;
172
+ for (var key in style) {
173
+ var value = style[key];
174
+ !onlyAnimateKeys[key] || value === "auto" || typeof value == "string" && value.startsWith("calc") || animateOnly && !animateOnly.includes(key) ? dontAnimate[key] = value : animate[key] = value;
175
+ }
177
176
  }
178
- var styles = animate, isExiting = !!(presence != null && presence[1]), usePresenceValue = presence || void 0, transition = isHydrating ? {
177
+ componentState.unmounted === "should-enter" && (dontAnimate = style);
178
+ var animateStr = JSON.stringify(animate), styles = (0, import_react.useMemo)(function() {
179
+ return JSON.parse(animateStr);
180
+ }, [
181
+ animateStr
182
+ ]), isExiting = !!(presence != null && presence[1]), presenceContext = (0, import_react.useContext)(import_use_presence.PresenceContext), usePresenceValue = presence || void 0, transition = isHydrating ? {
179
183
  type: "transition",
180
184
  duration: 0
181
185
  } : _object_spread({}, animations[animationKey]);
@@ -188,7 +192,7 @@ function createAnimations(animations) {
188
192
  }
189
193
  }
190
194
  var motiProps = {
191
- animate: preventAnimation || isExiting || componentState.unmounted === !0 ? {} : styles,
195
+ animate: isExiting || componentState.unmounted === !0 ? {} : styles,
192
196
  transition: componentState.unmounted ? {
193
197
  duration: 0
194
198
  } : transition,
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "version": 3,
3
3
  "sources": ["../../src/Users/n8/tamagui/code/core/animations-moti/src/createAnimations.tsx"],
4
- "mappings": "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",
5
- "names": ["onlyAnimateKeys", "transform", "opacity", "height", "width", "backgroundColor", "borderColor", "borderLeftColor", "borderRightColor", "borderTopColor", "borderBottomColor", "borderRadius", "borderTopLeftRadius", "borderTopRightRadius", "borderBottomLeftRadius", "borderBottomRightRadius", "borderLeftWidth", "borderRightWidth", "borderTopWidth", "borderBottomWidth", "color", "left", "right", "top", "bottom", "createAnimations", "animations", "View", "Animated", "Text", "isReactNative", "usePresence", "ResetPresence", "useAnimatedNumber", "initial", "sharedValue", "useSharedValue", "useMemo", "getInstance", "getValue", "value", "setValue", "next", "config", "type", "onFinish", "withSpring", "runOnJS", "undefined", "withTiming", "stop", "cancelAnimation", "useAnimatedNumberReaction", "onValue", "instance", "useAnimatedReaction", "prev", "useAnimatedNumberStyle", "val", "getStyle", "derivedValue", "useDerivedValue", "useAnimatedStyle", "useAnimations", "animationProps", "props", "presence", "style", "componentState", "presenceContext", "useContext", "PresenceContext", "animationKey", "Array", "isArray", "animation", "isHydrating", "unmounted", "animate", "dontAnimate", "preventAnimation", "useMotify", "animateOnly", "key", "startsWith", "includes", "styles", "isExiting", "Boolean", "usePresenceValue", "transition", "duration", "motiProps", "exit", "moti", "process", "env", "NODE_ENV", "console", "info", "JSON", "stringify"]
4
+ "mappings": "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",
5
+ "names": ["onlyAnimateKeys", "transform", "opacity", "height", "width", "backgroundColor", "borderColor", "borderLeftColor", "borderRightColor", "borderTopColor", "borderBottomColor", "borderRadius", "borderTopLeftRadius", "borderTopRightRadius", "borderBottomLeftRadius", "borderBottomRightRadius", "borderLeftWidth", "borderRightWidth", "borderTopWidth", "borderBottomWidth", "color", "left", "right", "top", "bottom", "createAnimations", "animations", "View", "Animated", "Text", "isReactNative", "usePresence", "ResetPresence", "useAnimatedNumber", "initial", "sharedValue", "useSharedValue", "useMemo", "getInstance", "getValue", "value", "setValue", "next", "config", "type", "onFinish", "withSpring", "runOnJS", "undefined", "withTiming", "stop", "cancelAnimation", "useAnimatedNumberReaction", "onValue", "instance", "useAnimatedReaction", "prev", "useAnimatedNumberStyle", "val", "getStyle", "derivedValue", "useDerivedValue", "useAnimatedStyle", "useAnimations", "animationProps", "props", "presence", "style", "componentState", "animationKey", "Array", "isArray", "animation", "isHydrating", "unmounted", "disableAnimation", "animate", "dontAnimate", "animateOnly", "key", "startsWith", "includes", "animateStr", "JSON", "stringify", "styles", "parse", "isExiting", "Boolean", "presenceContext", "useContext", "PresenceContext", "usePresenceValue", "transition", "duration", "motiProps", "exit", "moti", "useMotify", "process", "env", "NODE_ENV", "console", "info"]
6
6
  }
@@ -104,18 +104,19 @@ function createAnimations(animations) {
104
104
  return useAnimatedStyle(() => getStyle(derivedValue.value), [val, getStyle, derivedValue, instance]);
105
105
  },
106
106
  useAnimations: (animationProps) => {
107
- const { props, presence, style, componentState } = animationProps, presenceContext = useContext(PresenceContext), animationKey = Array.isArray(props.animation) ? props.animation[0] : props.animation, isHydrating = componentState.unmounted === !0;
107
+ const { props, presence, style, componentState } = animationProps, animationKey = Array.isArray(props.animation) ? props.animation[0] : props.animation, isHydrating = componentState.unmounted === !0, disableAnimation = isHydrating || !animationKey;
108
108
  let animate = {}, dontAnimate = {};
109
- const preventAnimation = isHydrating || !animationKey || // if we don't do this moti seems to flicker a frame before applying animation
110
- componentState.unmounted === "should-enter";
111
- if (preventAnimation)
112
- return dontAnimate = style, useMotify({}), [dontAnimate];
113
- const animateOnly = props.animateOnly;
114
- for (const key in style) {
115
- const value = style[key];
116
- !onlyAnimateKeys[key] || value === "auto" || typeof value == "string" && value.startsWith("calc") || animateOnly && !animateOnly.includes(key) ? dontAnimate[key] = value : animate[key] = value;
109
+ if (disableAnimation)
110
+ dontAnimate = style;
111
+ else {
112
+ const animateOnly = props.animateOnly;
113
+ for (const key in style) {
114
+ const value = style[key];
115
+ !onlyAnimateKeys[key] || value === "auto" || typeof value == "string" && value.startsWith("calc") || animateOnly && !animateOnly.includes(key) ? dontAnimate[key] = value : animate[key] = value;
116
+ }
117
117
  }
118
- const styles = animate, isExiting = !!presence?.[1], usePresenceValue = presence || void 0, transition = isHydrating ? { type: "transition", duration: 0 } : {
118
+ componentState.unmounted === "should-enter" && (dontAnimate = style);
119
+ const animateStr = JSON.stringify(animate), styles = useMemo(() => JSON.parse(animateStr), [animateStr]), isExiting = !!presence?.[1], presenceContext = useContext(PresenceContext), usePresenceValue = presence || void 0, transition = isHydrating ? { type: "transition", duration: 0 } : {
119
120
  ...animations[animationKey]
120
121
  };
121
122
  if (Array.isArray(props.animation)) {
@@ -127,7 +128,7 @@ function createAnimations(animations) {
127
128
  }
128
129
  }
129
130
  const motiProps = {
130
- animate: preventAnimation || isExiting || componentState.unmounted === !0 ? {} : styles,
131
+ animate: isExiting || componentState.unmounted === !0 ? {} : styles,
131
132
  transition: componentState.unmounted ? { duration: 0 } : transition,
132
133
  usePresenceValue,
133
134
  presenceContext,
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "version": 3,
3
3
  "sources": ["../../src/createAnimations.tsx"],
4
- "mappings": "AAAA,SAAS,iBAAiB,eAAe,mBAAmB;AAG5D,SAAS,iBAAiB;AAC1B,SAAS,YAAY,eAAmC;AAGxD,OAAO;AAAA,EACL;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,OACK;AA8BP,MAAM,kBAAgF;AAAA,EACpF,WAAW;AAAA,EACX,SAAS;AAAA,EACT,QAAQ;AAAA,EACR,OAAO;AAAA,EACP,iBAAiB;AAAA,EACjB,aAAa;AAAA,EACb,iBAAiB;AAAA,EACjB,kBAAkB;AAAA,EAClB,gBAAgB;AAAA,EAChB,mBAAmB;AAAA,EACnB,cAAc;AAAA,EACd,qBAAqB;AAAA,EACrB,sBAAsB;AAAA,EACtB,wBAAwB;AAAA,EACxB,yBAAyB;AAAA,EACzB,iBAAiB;AAAA,EACjB,kBAAkB;AAAA,EAClB,gBAAgB;AAAA,EAChB,mBAAmB;AAAA,EACnB,OAAO;AAAA,EACP,MAAM;AAAA,EACN,OAAO;AAAA,EACP,KAAK;AAAA,EACL,QAAQ;AACV;AAEO,SAAS,iBACd,YACoB;AACpB,SAAO;AAAA;AAAA;AAAA,IAGL,MAAM,SAAS;AAAA,IACf,MAAM,SAAS;AAAA,IACf,eAAe;AAAA,IACf;AAAA,IACA;AAAA,IACA;AAAA,IAEA,kBAAkB,SAA4D;AAC5E,YAAM,cAAc,eAAe,OAAO;AAE1C,aAAO;AAAA,QACL,OAAO;AAAA,UACL,cAAc;AACZ;AACA,mBAAO;AAAA,UACT;AAAA,UACA,WAAW;AACT;AACA,mBAAO,YAAY;AAAA,UACrB;AAAA,UACA,SAAS,MAAM,SAAS,EAAE,MAAM,SAAS,GAAG,UAAU;AACpD;AACA,YAAI,OAAO,SAAS,YAClB,YAAY,QAAQ,MACpB,WAAW,KACF,OAAO,SAAS,WACzB,YAAY,QAAQ;AAAA,cAClB;AAAA,cACA;AAAA,cACA,WACI,MAAM;AACJ;AACA,wBAAQ,QAAQ,EAAE;AAAA,cACpB,IACA;AAAA,YACN,IAEA,YAAY,QAAQ;AAAA,cAClB;AAAA,cACA;AAAA,cACA,WACI,MAAM;AACJ;AACA,wBAAQ,QAAQ,EAAE;AAAA,cACpB,IACA;AAAA,YACN;AAAA,UAEJ;AAAA,UACA,OAAO;AACL;AACA,4BAAgB,WAAW;AAAA,UAC7B;AAAA,QACF;AAAA,QACA,CAAC,WAAW;AAAA,MACd;AAAA,IACF;AAAA,IAEA,0BAA0B,EAAE,MAAM,GAAG,SAAS;AAC5C,YAAM,WAAW,MAAM,YAAY;AACnC,aAAO;AAAA,QACL,MACS,SAAS;AAAA,QAElB,CAAC,MAAM,SAAS;AACd,UAAI,SAAS,QAGX,QAAQ,OAAO,EAAE,IAAI;AAAA,QAEzB;AAAA;AAAA,QAEA,CAAC,SAAS,QAAQ;AAAA,MACpB;AAAA,IACF;AAAA;AAAA;AAAA;AAAA,IAKA,uBAAuB,KAAK,UAAU;AACpC,YAAM,WAAW,IAAI,YAAY,GAG3B,eAAe,gBAAgB,MAC5B,SAAS,OAEf,CAAC,UAAU,QAAQ,CAAC;AAEvB,aAAO,iBAAiB,MACf,SAAS,aAAa,KAAK,GAEjC,CAAC,KAAK,UAAU,cAAc,QAAQ,CAAC;AAAA,IAC5C;AAAA,IAEA,eAAe,CAAC,mBAAmB;AACjC,YAAM,EAAE,OAAO,UAAU,OAAO,eAAe,IAAI,gBAC7C,kBAAkB,WAAW,eAAe,GAC5C,eAAe,MAAM,QAAQ,MAAM,SAAS,IAC9C,MAAM,UAAU,CAAC,IACjB,MAAM,WAEJ,cAAc,eAAe,cAAc;AACjD,UAAI,UAAU,CAAC,GACX,cAAc,CAAC;AAEnB,YAAM,mBACJ,eACA,CAAC;AAAA,MAED,eAAe,cAAc;AAE/B,UAAI;AACF,6BAAc,OAGd,UAAU,CAAC,CAAC,GAEL,CAAC,WAAW;AAGrB,YAAM,cAAc,MAAM;AAC1B,iBAAW,OAAO,OAAO;AACvB,cAAM,QAAQ,MAAM,GAAG;AACvB,QACE,CAAC,gBAAgB,GAAG,KACpB,UAAU,UACT,OAAO,SAAU,YAAY,MAAM,WAAW,MAAM,KACpD,eAAe,CAAC,YAAY,SAAS,GAAG,IAEzC,YAAY,GAAG,IAAI,QAEnB,QAAQ,GAAG,IAAI;AAAA,MAEnB;AAEA,YAAM,SAAS,SACT,YAAY,EAAQ,WAAW,CAAC,GAChC,mBAAoB,YAAY,QAKhC,aAAa,cACf,EAAE,MAAM,cAAc,UAAU,EAAE,IAClC;AAAA,QACE,GAAI,WAAW,YAAuC;AAAA,MACxD;AAEJ,UAAI,MAAM,QAAQ,MAAM,SAAS,GAAG;AAClC,cAAM,SAAS,MAAM,UAAU,CAAC;AAChC,YAAI,UAAU,OAAO,UAAW;AAC9B,qBAAW,OAAO,QAAQ;AACxB,kBAAM,MAAM,OAAO,GAAG;AAEtB,YAAI,OAAO,OAAQ,WACjB,WAAW,GAAG,IAAI,WAAW,GAAG,IAEhC,WAAW,GAAG,IAAI;AAAA,UAEtB;AAAA,MAEJ;AAEA,YAAM,YAAY;AAAA,QAChB,SACE,oBAAoB,aAAa,eAAe,cAAc,KAC1D,CAAC,IACD;AAAA,QACN,YAAY,eAAe,YAAY,EAAE,UAAU,EAAE,IAAI;AAAA,QACzD;AAAA,QACA;AAAA,QACA,MAAM,YAAY,SAAS;AAAA,MAC7B,GAEM,OAAO,UAAU,SAAS;AAEhC,aAAI,QAAQ,IAAI,aAAa,iBAAiB,MAAM,SAClD,QAAQ,KAAK,cAAc,KAAK,UAAU,WAAW,MAAM,CAAC,IAAI,KAAK;AAAA,QACnE;AAAA,QACA;AAAA,QACA;AAAA,QACA,OAAO,CAAC,aAAa,KAAK,KAAK;AAAA,MACjC,CAAC,GAGI;AAAA,QACL,OAAO,CAAC,aAAa,KAAK,KAAK;AAAA,MACjC;AAAA,IACF;AAAA,EACF;AACF;",
4
+ "mappings": "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",
5
5
  "names": []
6
6
  }
@@ -98,22 +98,23 @@ function createAnimations(animations) {
98
98
  style,
99
99
  componentState
100
100
  } = animationProps,
101
- presenceContext = useContext(PresenceContext),
102
101
  animationKey = Array.isArray(props.animation) ? props.animation[0] : props.animation,
103
- isHydrating = componentState.unmounted === !0;
102
+ isHydrating = componentState.unmounted === !0,
103
+ disableAnimation = isHydrating || !animationKey;
104
104
  let animate = {},
105
105
  dontAnimate = {};
106
- const preventAnimation = isHydrating || !animationKey ||
107
- // if we don't do this moti seems to flicker a frame before applying animation
108
- componentState.unmounted === "should-enter";
109
- if (preventAnimation) return dontAnimate = style, useMotify({}), [dontAnimate];
110
- const animateOnly = props.animateOnly;
111
- for (const key in style) {
112
- const value = style[key];
113
- !onlyAnimateKeys[key] || value === "auto" || typeof value == "string" && value.startsWith("calc") || animateOnly && !animateOnly.includes(key) ? dontAnimate[key] = value : animate[key] = value;
106
+ if (disableAnimation) dontAnimate = style;else {
107
+ const animateOnly = props.animateOnly;
108
+ for (const key in style) {
109
+ const value = style[key];
110
+ !onlyAnimateKeys[key] || value === "auto" || typeof value == "string" && value.startsWith("calc") || animateOnly && !animateOnly.includes(key) ? dontAnimate[key] = value : animate[key] = value;
111
+ }
114
112
  }
115
- const styles = animate,
113
+ componentState.unmounted === "should-enter" && (dontAnimate = style);
114
+ const animateStr = JSON.stringify(animate),
115
+ styles = useMemo(() => JSON.parse(animateStr), [animateStr]),
116
116
  isExiting = !!presence?.[1],
117
+ presenceContext = useContext(PresenceContext),
117
118
  usePresenceValue = presence || void 0,
118
119
  transition = isHydrating ? {
119
120
  type: "transition",
@@ -129,7 +130,7 @@ function createAnimations(animations) {
129
130
  }
130
131
  }
131
132
  const motiProps = {
132
- animate: preventAnimation || isExiting || componentState.unmounted === !0 ? {} : styles,
133
+ animate: isExiting || componentState.unmounted === !0 ? {} : styles,
133
134
  transition: componentState.unmounted ? {
134
135
  duration: 0
135
136
  } : transition,
@@ -1 +1 @@
1
- {"version":3,"names":["PresenceContext","ResetPresence","usePresence","useMotify","useContext","useMemo","Animated","cancelAnimation","runOnJS","useAnimatedReaction","useAnimatedStyle","useDerivedValue","useSharedValue","withSpring","withTiming","onlyAnimateKeys","transform","opacity","height","width","backgroundColor","borderColor","borderLeftColor","borderRightColor","borderTopColor","borderBottomColor","borderRadius","borderTopLeftRadius","borderTopRightRadius","borderBottomLeftRadius","borderBottomRightRadius","borderLeftWidth","borderRightWidth","borderTopWidth","borderBottomWidth","color","left","right","top","bottom","createAnimations","animations","View","Text","isReactNative","useAnimatedNumber","initial","sharedValue","getInstance","getValue","value","setValue","next","config","type","onFinish","stop","useAnimatedNumberReaction","onValue","instance","prev","useAnimatedNumberStyle","val","getStyle","derivedValue","useAnimations","animationProps","props","presence","style","componentState","presenceContext","animationKey","Array","isArray","animation","isHydrating","unmounted","animate","dontAnimate","preventAnimation","animateOnly","key","startsWith","includes","styles","isExiting","usePresenceValue","transition","duration","motiProps","exit","moti","process","env","NODE_ENV","debug","console","info","JSON","stringify"],"sources":["../../src/createAnimations.tsx"],"sourcesContent":[null],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"names":["PresenceContext","ResetPresence","usePresence","useMotify","useContext","useMemo","Animated","cancelAnimation","runOnJS","useAnimatedReaction","useAnimatedStyle","useDerivedValue","useSharedValue","withSpring","withTiming","onlyAnimateKeys","transform","opacity","height","width","backgroundColor","borderColor","borderLeftColor","borderRightColor","borderTopColor","borderBottomColor","borderRadius","borderTopLeftRadius","borderTopRightRadius","borderBottomLeftRadius","borderBottomRightRadius","borderLeftWidth","borderRightWidth","borderTopWidth","borderBottomWidth","color","left","right","top","bottom","createAnimations","animations","View","Text","isReactNative","useAnimatedNumber","initial","sharedValue","getInstance","getValue","value","setValue","next","config","type","onFinish","stop","useAnimatedNumberReaction","onValue","instance","prev","useAnimatedNumberStyle","val","getStyle","derivedValue","useAnimations","animationProps","props","presence","style","componentState","animationKey","Array","isArray","animation","isHydrating","unmounted","disableAnimation","animate","dontAnimate","animateOnly","key","startsWith","includes","animateStr","JSON","stringify","styles","parse","isExiting","presenceContext","usePresenceValue","transition","duration","motiProps","exit","moti","process","env","NODE_ENV","debug","console","info"],"sources":["../../src/createAnimations.tsx"],"sourcesContent":[null],"mappings":"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","ignoreList":[]}
@@ -139,18 +139,22 @@ function createAnimations(animations) {
139
139
  );
140
140
  },
141
141
  useAnimations: function(animationProps) {
142
- var props = animationProps.props, presence = animationProps.presence, style = animationProps.style, componentState = animationProps.componentState, presenceContext = useContext(PresenceContext), animationKey = Array.isArray(props.animation) ? props.animation[0] : props.animation, isHydrating = componentState.unmounted === !0, animate = {}, dontAnimate = {}, preventAnimation = isHydrating || !animationKey || // if we don't do this moti seems to flicker a frame before applying animation
143
- componentState.unmounted === "should-enter";
144
- if (preventAnimation)
145
- return dontAnimate = style, useMotify({}), [
146
- dontAnimate
147
- ];
148
- var animateOnly = props.animateOnly;
149
- for (var key in style) {
150
- var value = style[key];
151
- !onlyAnimateKeys[key] || value === "auto" || typeof value == "string" && value.startsWith("calc") || animateOnly && !animateOnly.includes(key) ? dontAnimate[key] = value : animate[key] = value;
142
+ var props = animationProps.props, presence = animationProps.presence, style = animationProps.style, componentState = animationProps.componentState, animationKey = Array.isArray(props.animation) ? props.animation[0] : props.animation, isHydrating = componentState.unmounted === !0, disableAnimation = isHydrating || !animationKey, animate = {}, dontAnimate = {};
143
+ if (disableAnimation)
144
+ dontAnimate = style;
145
+ else {
146
+ var animateOnly = props.animateOnly;
147
+ for (var key in style) {
148
+ var value = style[key];
149
+ !onlyAnimateKeys[key] || value === "auto" || typeof value == "string" && value.startsWith("calc") || animateOnly && !animateOnly.includes(key) ? dontAnimate[key] = value : animate[key] = value;
150
+ }
152
151
  }
153
- var styles = animate, isExiting = !!(presence != null && presence[1]), usePresenceValue = presence || void 0, transition = isHydrating ? {
152
+ componentState.unmounted === "should-enter" && (dontAnimate = style);
153
+ var animateStr = JSON.stringify(animate), styles = useMemo(function() {
154
+ return JSON.parse(animateStr);
155
+ }, [
156
+ animateStr
157
+ ]), isExiting = !!(presence != null && presence[1]), presenceContext = useContext(PresenceContext), usePresenceValue = presence || void 0, transition = isHydrating ? {
154
158
  type: "transition",
155
159
  duration: 0
156
160
  } : _object_spread({}, animations[animationKey]);
@@ -163,7 +167,7 @@ function createAnimations(animations) {
163
167
  }
164
168
  }
165
169
  var motiProps = {
166
- animate: preventAnimation || isExiting || componentState.unmounted === !0 ? {} : styles,
170
+ animate: isExiting || componentState.unmounted === !0 ? {} : styles,
167
171
  transition: componentState.unmounted ? {
168
172
  duration: 0
169
173
  } : transition,
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "version": 3,
3
3
  "sources": ["../../src/Users/n8/tamagui/code/core/animations-moti/src/createAnimations.tsx"],
4
- "mappings": "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",
5
- "names": ["PresenceContext", "ResetPresence", "usePresence", "useMotify", "useContext", "useMemo", "Animated", "cancelAnimation", "runOnJS", "useAnimatedReaction", "useAnimatedStyle", "useDerivedValue", "useSharedValue", "withSpring", "withTiming", "onlyAnimateKeys", "transform", "opacity", "height", "width", "backgroundColor", "borderColor", "borderLeftColor", "borderRightColor", "borderTopColor", "borderBottomColor", "borderRadius", "borderTopLeftRadius", "borderTopRightRadius", "borderBottomLeftRadius", "borderBottomRightRadius", "borderLeftWidth", "borderRightWidth", "borderTopWidth", "borderBottomWidth", "color", "left", "right", "top", "bottom", "createAnimations", "animations", "View", "Text", "isReactNative", "useAnimatedNumber", "initial", "sharedValue", "getInstance", "getValue", "value", "setValue", "next", "config", "type", "onFinish", "undefined", "stop", "useAnimatedNumberReaction", "onValue", "instance", "prev", "useAnimatedNumberStyle", "val", "getStyle", "derivedValue", "useAnimations", "animationProps", "props", "presence", "style", "componentState", "presenceContext", "animationKey", "Array", "isArray", "animation", "isHydrating", "unmounted", "animate", "dontAnimate", "preventAnimation", "animateOnly", "key", "startsWith", "includes", "styles", "isExiting", "Boolean", "usePresenceValue", "transition", "duration", "motiProps", "exit", "moti", "process", "env", "NODE_ENV", "console", "info", "JSON", "stringify"]
4
+ "mappings": "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",
5
+ "names": ["PresenceContext", "ResetPresence", "usePresence", "useMotify", "useContext", "useMemo", "Animated", "cancelAnimation", "runOnJS", "useAnimatedReaction", "useAnimatedStyle", "useDerivedValue", "useSharedValue", "withSpring", "withTiming", "onlyAnimateKeys", "transform", "opacity", "height", "width", "backgroundColor", "borderColor", "borderLeftColor", "borderRightColor", "borderTopColor", "borderBottomColor", "borderRadius", "borderTopLeftRadius", "borderTopRightRadius", "borderBottomLeftRadius", "borderBottomRightRadius", "borderLeftWidth", "borderRightWidth", "borderTopWidth", "borderBottomWidth", "color", "left", "right", "top", "bottom", "createAnimations", "animations", "View", "Text", "isReactNative", "useAnimatedNumber", "initial", "sharedValue", "getInstance", "getValue", "value", "setValue", "next", "config", "type", "onFinish", "undefined", "stop", "useAnimatedNumberReaction", "onValue", "instance", "prev", "useAnimatedNumberStyle", "val", "getStyle", "derivedValue", "useAnimations", "animationProps", "props", "presence", "style", "componentState", "animationKey", "Array", "isArray", "animation", "isHydrating", "unmounted", "disableAnimation", "animate", "dontAnimate", "animateOnly", "key", "startsWith", "includes", "animateStr", "JSON", "stringify", "styles", "parse", "isExiting", "Boolean", "presenceContext", "usePresenceValue", "transition", "duration", "motiProps", "exit", "moti", "process", "env", "NODE_ENV", "console", "info"]
6
6
  }
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@tamagui/animations-moti",
3
- "version": "1.105.3",
3
+ "version": "1.105.4",
4
4
  "source": "src/index.ts",
5
5
  "license": "MIT",
6
6
  "types": "./types/index.d.ts",
@@ -15,11 +15,11 @@
15
15
  "dist"
16
16
  ],
17
17
  "dependencies": {
18
- "@tamagui/use-presence": "1.105.3",
19
- "@tamagui/web": "1.105.3"
18
+ "@tamagui/use-presence": "1.105.4",
19
+ "@tamagui/web": "1.105.4"
20
20
  },
21
21
  "devDependencies": {
22
- "@tamagui/build": "1.105.3",
22
+ "@tamagui/build": "1.105.4",
23
23
  "moti": "^0.29.0",
24
24
  "react": "^18.2.0",
25
25
  "react-native-reanimated": "~3.11.0"
@@ -173,47 +173,47 @@ export function createAnimations<A extends Record<string, TransitionConfig>>(
173
173
 
174
174
  useAnimations: (animationProps) => {
175
175
  const { props, presence, style, componentState } = animationProps
176
- const presenceContext = useContext(PresenceContext)
177
176
  const animationKey = Array.isArray(props.animation)
178
177
  ? props.animation[0]
179
178
  : props.animation
180
179
 
181
180
  const isHydrating = componentState.unmounted === true
181
+ const disableAnimation = isHydrating || !animationKey
182
+
182
183
  let animate = {}
183
184
  let dontAnimate = {}
184
185
 
185
- const preventAnimation =
186
- isHydrating ||
187
- !animationKey ||
188
- // if we don't do this moti seems to flicker a frame before applying animation
189
- componentState.unmounted === 'should-enter'
190
-
191
- if (preventAnimation) {
186
+ if (disableAnimation) {
192
187
  dontAnimate = style
193
-
194
- // keep the hook but do nothing
195
- useMotify({})
196
-
197
- return [dontAnimate] as any
188
+ } else {
189
+ const animateOnly = props.animateOnly as string[]
190
+ for (const key in style) {
191
+ const value = style[key]
192
+ if (
193
+ !onlyAnimateKeys[key] ||
194
+ value === 'auto' ||
195
+ (typeof value === 'string' && value.startsWith('calc')) ||
196
+ (animateOnly && !animateOnly.includes(key))
197
+ ) {
198
+ dontAnimate[key] = value
199
+ } else {
200
+ animate[key] = value
201
+ }
202
+ }
198
203
  }
199
204
 
200
- const animateOnly = props.animateOnly as string[]
201
- for (const key in style) {
202
- const value = style[key]
203
- if (
204
- !onlyAnimateKeys[key] ||
205
- value === 'auto' ||
206
- (typeof value === 'string' && value.startsWith('calc')) ||
207
- (animateOnly && !animateOnly.includes(key))
208
- ) {
209
- dontAnimate[key] = value
210
- } else {
211
- animate[key] = value
212
- }
205
+ // if we don't do this moti seems to flicker a frame before applying animation
206
+ if (componentState.unmounted === 'should-enter') {
207
+ dontAnimate = style
213
208
  }
214
209
 
215
- const styles = animate
210
+ // without this, the driver breaks on native
211
+ // stringifying -> parsing fixes that
212
+ const animateStr = JSON.stringify(animate)
213
+ const styles = useMemo(() => JSON.parse(animateStr), [animateStr])
214
+
216
215
  const isExiting = Boolean(presence?.[1])
216
+ const presenceContext = useContext(PresenceContext)
217
217
  const usePresenceValue = (presence || undefined) as any
218
218
 
219
219
  type UseMotiProps = Parameters<typeof useMotify>[0]
@@ -241,10 +241,7 @@ export function createAnimations<A extends Record<string, TransitionConfig>>(
241
241
  }
242
242
 
243
243
  const motiProps = {
244
- animate:
245
- preventAnimation || isExiting || componentState.unmounted === true
246
- ? {}
247
- : styles,
244
+ animate: isExiting || componentState.unmounted === true ? {} : styles,
248
245
  transition: componentState.unmounted ? { duration: 0 } : transition,
249
246
  usePresenceValue,
250
247
  presenceContext,
@@ -1 +1 @@
1
- {"version":3,"file":"createAnimations.d.ts","sourceRoot":"","sources":["../src/createAnimations.tsx"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,eAAe,EAA2B,MAAM,cAAc,CAAA;AAC5E,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,MAAM,CAAA;AAuE5C,wBAAgB,gBAAgB,CAAC,CAAC,SAAS,MAAM,CAAC,MAAM,EAAE,gBAAgB,CAAC,EACzE,UAAU,EAAE,CAAC,GACZ,eAAe,CAAC,CAAC,CAAC,CAkMpB"}
1
+ {"version":3,"file":"createAnimations.d.ts","sourceRoot":"","sources":["../src/createAnimations.tsx"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,eAAe,EAA2B,MAAM,cAAc,CAAA;AAC5E,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,MAAM,CAAA;AAuE5C,wBAAgB,gBAAgB,CAAC,CAAC,SAAS,MAAM,CAAC,MAAM,EAAE,gBAAgB,CAAC,EACzE,UAAU,EAAE,CAAC,GACZ,eAAe,CAAC,CAAC,CAAC,CA+LpB"}