@tamagui/animations-react-native 2.0.0-1769144929270 → 2.0.0-1769189735283
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.
- package/dist/cjs/createAnimations.cjs +11 -4
- package/dist/cjs/createAnimations.js +16 -6
- package/dist/cjs/createAnimations.js.map +1 -1
- package/dist/cjs/createAnimations.native.js +12 -4
- package/dist/cjs/createAnimations.native.js.map +1 -1
- package/dist/esm/createAnimations.js +17 -7
- package/dist/esm/createAnimations.js.map +1 -1
- package/dist/esm/createAnimations.mjs +12 -5
- package/dist/esm/createAnimations.mjs.map +1 -1
- package/dist/esm/createAnimations.native.js +13 -5
- package/dist/esm/createAnimations.native.js.map +1 -1
- package/package.json +6 -6
- package/src/createAnimations.tsx +33 -7
- package/types/createAnimations.d.ts.map +1 -1
|
@@ -165,11 +165,18 @@ function createAnimations(animations) {
|
|
|
165
165
|
animationsState = import_react.default.useRef(/* @__PURE__ */new WeakMap()),
|
|
166
166
|
animateOnly = props.animateOnly || [],
|
|
167
167
|
hasTransitionOnly = !!props.animateOnly,
|
|
168
|
-
|
|
168
|
+
isEntering = !!componentState.unmounted,
|
|
169
|
+
wasEnteringRef = import_react.default.useRef(isEntering),
|
|
170
|
+
justFinishedEntering = wasEnteringRef.current && !isEntering;
|
|
171
|
+
import_react.default.useEffect(() => {
|
|
172
|
+
wasEnteringRef.current = isEntering;
|
|
173
|
+
});
|
|
174
|
+
const args = [JSON.stringify(style), componentState, isExiting, !!onDidAnimate, isDark, justFinishedEntering],
|
|
169
175
|
isThereNoNativeStyleKeys = import_react.default.useMemo(() => import_constants.isWeb ? !0 : Object.keys(style).some(key => animateOnly ? !animatedStyleKey[key] && animateOnly.indexOf(key) === -1 : !animatedStyleKey[key]), args),
|
|
170
176
|
res = import_react.default.useMemo(() => {
|
|
171
177
|
const runners = [],
|
|
172
178
|
completions = [],
|
|
179
|
+
animationState = isExiting ? "exit" : isEntering || justFinishedEntering ? "enter" : "default",
|
|
173
180
|
nonAnimatedStyle = {};
|
|
174
181
|
for (const key in style) {
|
|
175
182
|
const rawVal = style[key],
|
|
@@ -235,7 +242,7 @@ function createAnimations(animations) {
|
|
|
235
242
|
interpolation: value.interpolate(interpolateArgs),
|
|
236
243
|
animateToValue: curInterpolation?.animateToValue ? 0 : 1
|
|
237
244
|
})), value) {
|
|
238
|
-
const animationConfig = getAnimationConfig(key, animations, props.transition);
|
|
245
|
+
const animationConfig = getAnimationConfig(key, animations, props.transition, animationState);
|
|
239
246
|
let resolve;
|
|
240
247
|
const promise = new Promise(res2 => {
|
|
241
248
|
resolve = res2;
|
|
@@ -292,13 +299,13 @@ function getInterpolated(current, next, postfix = "deg") {
|
|
|
292
299
|
outputRange
|
|
293
300
|
};
|
|
294
301
|
}
|
|
295
|
-
function getAnimationConfig(key, animations, transition) {
|
|
302
|
+
function getAnimationConfig(key, animations, transition, animationState = "default") {
|
|
296
303
|
const normalized = (0, import_animation_helpers.normalizeTransition)(transition),
|
|
297
304
|
shortKey = transformShorthands[key],
|
|
298
305
|
propAnimation = normalized.properties[key] ?? normalized.properties[shortKey];
|
|
299
306
|
let animationType = null,
|
|
300
307
|
extraConf = {};
|
|
301
|
-
return typeof propAnimation == "string" ? animationType = propAnimation : propAnimation && typeof propAnimation == "object" ? (animationType = propAnimation.type || normalized
|
|
308
|
+
return typeof propAnimation == "string" ? animationType = propAnimation : propAnimation && typeof propAnimation == "object" ? (animationType = propAnimation.type || (0, import_animation_helpers.getEffectiveAnimation)(normalized, animationState), extraConf = propAnimation) : animationType = (0, import_animation_helpers.getEffectiveAnimation)(normalized, animationState), normalized.delay && !extraConf.delay && (extraConf = {
|
|
302
309
|
...extraConf,
|
|
303
310
|
delay: normalized.delay
|
|
304
311
|
}), {
|
|
@@ -123,14 +123,19 @@ function createAnimations(animations) {
|
|
|
123
123
|
useAnimations: ({ props, onDidAnimate, style, componentState, presence }) => {
|
|
124
124
|
const isDisabled = import_constants.isWeb && componentState.unmounted === !0, isExiting = presence?.[0] === !1, sendExitComplete = presence?.[1], [, themeState] = (0, import_web.useThemeWithState)({}), isDark = themeState?.scheme === "dark" || themeState?.name?.startsWith("dark"), animateStyles = import_react.default.useRef({}), animatedTranforms = import_react.default.useRef([]), animationsState = import_react.default.useRef(
|
|
125
125
|
/* @__PURE__ */ new WeakMap()
|
|
126
|
-
), animateOnly = props.animateOnly || [], hasTransitionOnly = !!props.animateOnly,
|
|
126
|
+
), animateOnly = props.animateOnly || [], hasTransitionOnly = !!props.animateOnly, isEntering = !!componentState.unmounted, wasEnteringRef = import_react.default.useRef(isEntering), justFinishedEntering = wasEnteringRef.current && !isEntering;
|
|
127
|
+
import_react.default.useEffect(() => {
|
|
128
|
+
wasEnteringRef.current = isEntering;
|
|
129
|
+
});
|
|
130
|
+
const args = [
|
|
127
131
|
JSON.stringify(style),
|
|
128
132
|
componentState,
|
|
129
133
|
isExiting,
|
|
130
134
|
!!onDidAnimate,
|
|
131
|
-
isDark
|
|
135
|
+
isDark,
|
|
136
|
+
justFinishedEntering
|
|
132
137
|
], isThereNoNativeStyleKeys = import_react.default.useMemo(() => import_constants.isWeb ? !0 : Object.keys(style).some((key) => animateOnly ? !animatedStyleKey[key] && animateOnly.indexOf(key) === -1 : !animatedStyleKey[key]), args), res = import_react.default.useMemo(() => {
|
|
133
|
-
const runners = [], completions = [], nonAnimatedStyle = {};
|
|
138
|
+
const runners = [], completions = [], animationState = isExiting ? "exit" : isEntering || justFinishedEntering ? "enter" : "default", nonAnimatedStyle = {};
|
|
134
139
|
for (const key in style) {
|
|
135
140
|
const rawVal = style[key], val = resolveDynamicValue(rawVal, isDark);
|
|
136
141
|
if (val !== void 0 && !isDisabled) {
|
|
@@ -200,7 +205,12 @@ function createAnimations(animations) {
|
|
|
200
205
|
interpolation: value.interpolate(interpolateArgs),
|
|
201
206
|
animateToValue: curInterpolation?.animateToValue ? 0 : 1
|
|
202
207
|
})), value) {
|
|
203
|
-
const animationConfig = getAnimationConfig(
|
|
208
|
+
const animationConfig = getAnimationConfig(
|
|
209
|
+
key,
|
|
210
|
+
animations,
|
|
211
|
+
props.transition,
|
|
212
|
+
animationState
|
|
213
|
+
);
|
|
204
214
|
let resolve;
|
|
205
215
|
const promise = new Promise((res2) => {
|
|
206
216
|
resolve = res2;
|
|
@@ -262,10 +272,10 @@ function getInterpolated(current, next, postfix = "deg") {
|
|
|
262
272
|
outputRange
|
|
263
273
|
};
|
|
264
274
|
}
|
|
265
|
-
function getAnimationConfig(key, animations, transition) {
|
|
275
|
+
function getAnimationConfig(key, animations, transition, animationState = "default") {
|
|
266
276
|
const normalized = (0, import_animation_helpers.normalizeTransition)(transition), shortKey = transformShorthands[key], propAnimation = normalized.properties[key] ?? normalized.properties[shortKey];
|
|
267
277
|
let animationType = null, extraConf = {};
|
|
268
|
-
return typeof propAnimation == "string" ? animationType = propAnimation : propAnimation && typeof propAnimation == "object" ? (animationType = propAnimation.type || normalized
|
|
278
|
+
return typeof propAnimation == "string" ? animationType = propAnimation : propAnimation && typeof propAnimation == "object" ? (animationType = propAnimation.type || (0, import_animation_helpers.getEffectiveAnimation)(normalized, animationState), extraConf = propAnimation) : animationType = (0, import_animation_helpers.getEffectiveAnimation)(normalized, animationState), normalized.delay && !extraConf.delay && (extraConf = { ...extraConf, delay: normalized.delay }), {
|
|
269
279
|
...animationType ? animations[animationType] : {},
|
|
270
280
|
...extraConf
|
|
271
281
|
};
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"version": 3,
|
|
3
3
|
"sources": ["../../src/createAnimations.tsx"],
|
|
4
|
-
"mappings": ";;;;;;;;;;;;;;;;;;;;;;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,+
|
|
4
|
+
"mappings": "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",
|
|
5
5
|
"names": ["React", "res"]
|
|
6
6
|
}
|
|
@@ -190,7 +190,13 @@ function createAnimations(animations) {
|
|
|
190
190
|
animationsState = import_react.default.useRef(/* @__PURE__ */new WeakMap()),
|
|
191
191
|
animateOnly = props.animateOnly || [],
|
|
192
192
|
hasTransitionOnly = !!props.animateOnly,
|
|
193
|
-
|
|
193
|
+
isEntering = !!componentState.unmounted,
|
|
194
|
+
wasEnteringRef = import_react.default.useRef(isEntering),
|
|
195
|
+
justFinishedEntering = wasEnteringRef.current && !isEntering;
|
|
196
|
+
import_react.default.useEffect(function () {
|
|
197
|
+
wasEnteringRef.current = isEntering;
|
|
198
|
+
});
|
|
199
|
+
var args = [JSON.stringify(style), componentState, isExiting, !!onDidAnimate, isDark, justFinishedEntering],
|
|
194
200
|
isThereNoNativeStyleKeys = import_react.default.useMemo(function () {
|
|
195
201
|
return import_constants.isWeb ? !0 : Object.keys(style).some(function (key) {
|
|
196
202
|
return animateOnly ? !animatedStyleKey[key] && animateOnly.indexOf(key) === -1 : !animatedStyleKey[key];
|
|
@@ -199,6 +205,7 @@ function createAnimations(animations) {
|
|
|
199
205
|
res = import_react.default.useMemo(function () {
|
|
200
206
|
var runners = [],
|
|
201
207
|
completions = [],
|
|
208
|
+
animationState = isExiting ? "exit" : isEntering || justFinishedEntering ? "enter" : "default",
|
|
202
209
|
nonAnimatedStyle = {};
|
|
203
210
|
for (var key in style) {
|
|
204
211
|
var rawVal = style[key],
|
|
@@ -289,7 +296,7 @@ function createAnimations(animations) {
|
|
|
289
296
|
interpolation: value.interpolate(interpolateArgs),
|
|
290
297
|
animateToValue: curInterpolation?.animateToValue ? 0 : 1
|
|
291
298
|
})), value) {
|
|
292
|
-
var animationConfig = getAnimationConfig(key2, animations, props.transition),
|
|
299
|
+
var animationConfig = getAnimationConfig(key2, animations, props.transition, animationState),
|
|
293
300
|
resolve,
|
|
294
301
|
promise = new Promise(function (res2) {
|
|
295
302
|
resolve = res2;
|
|
@@ -352,13 +359,14 @@ function getInterpolated(current, next) {
|
|
|
352
359
|
};
|
|
353
360
|
}
|
|
354
361
|
function getAnimationConfig(key, animations, transition) {
|
|
355
|
-
var
|
|
362
|
+
var animationState = arguments.length > 3 && arguments[3] !== void 0 ? arguments[3] : "default",
|
|
363
|
+
normalized = (0, import_animation_helpers.normalizeTransition)(transition),
|
|
356
364
|
shortKey = transformShorthands[key],
|
|
357
365
|
_normalized_properties_key,
|
|
358
366
|
propAnimation = (_normalized_properties_key = normalized.properties[key]) !== null && _normalized_properties_key !== void 0 ? _normalized_properties_key : normalized.properties[shortKey],
|
|
359
367
|
animationType = null,
|
|
360
368
|
extraConf = {};
|
|
361
|
-
typeof propAnimation == "string" ? animationType = propAnimation : propAnimation && (typeof propAnimation > "u" ? "undefined" : _type_of(propAnimation)) === "object" ? (animationType = propAnimation.type || normalized
|
|
369
|
+
typeof propAnimation == "string" ? animationType = propAnimation : propAnimation && (typeof propAnimation > "u" ? "undefined" : _type_of(propAnimation)) === "object" ? (animationType = propAnimation.type || (0, import_animation_helpers.getEffectiveAnimation)(normalized, animationState), extraConf = propAnimation) : animationType = (0, import_animation_helpers.getEffectiveAnimation)(normalized, animationState), normalized.delay && !extraConf.delay && (extraConf = {
|
|
362
370
|
...extraConf,
|
|
363
371
|
delay: normalized.delay
|
|
364
372
|
});
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["__toCommonJS","mod","__copyProps","__defProp","value","createAnimations_exports","__export","AnimatedText","AnimatedView","createAnimations","useAnimatedNumber","useAnimatedNumberReaction","useAnimatedNumberStyle","module","exports","import_animation_helpers","require","import_constants","import_use_presence","import_web","import_react","__toESM","import_react_native","_type_of","obj","Symbol","constructor","resolveDynamicValue","isDark","dynamicValue","dynamic","dark","light","animatedStyleKey","transform","opacity","colorStyleKey","backgroundColor","color","borderColor","borderLeftColor","borderRightColor","borderTopColor","borderBottomColor","costlyToAnimateStyleKey","borderRadius","borderTopLeftRadius","borderTopRightRadius","borderBottomLeftRadius","borderBottomRightRadius","borderWidth","borderLeftWidth","borderRightWidth","borderTopWidth","borderBottomWidth","Animated","View","Text","initial","state","default","useRef","current","composite","val","Value","strategy","type","getInstance","getValue","_value","stop","_state_current_composite","setValue","next","config","arguments","length","onFinish","handleFinish","param","finished","spring","toValue","useNativeDriver","isWeb","start","_state_current_composite1","composite1","timing","onValue","onChange","useEvent","useEffect","id","addListener","removeListener","getStyle","animations","isReactNative","usePresence","ResetPresence","useAnimations","props","onDidAnimate","style","componentState","presence","_themeState_name","isDisabled","unmounted","isExiting","sendExitComplete","themeState","useThemeWithState","scheme","name","startsWith","animateStyles","animatedTranforms","animationsState","WeakMap","animateOnly","hasTransitionOnly","args","JSON","stringify","isThereNoNativeStyleKeys","useMemo","Object","keys","some","key","indexOf","res","runners","completions","nonAnimatedStyle","rawVal","includes","update","console","warn","_iteratorNormalCompletion","_didIteratorError","_iteratorError","_iterator","entries","iterator","_step","done","index","_animatedTranforms_current_index","tkey","currentTransform","err","return","animatedStyle","fromEntries","map","param2","k","v","_animationsState_current_get","get","interpolation","r","key2","val2","animated","valIn","isColorStyleKey","animateToValue","curInterpolation","interpolateArgs","_curInterpolation_current","getInterpolated","set","interpolate","getColorInterpolated","animationConfig","getAnimationConfig","transition","resolve","promise","Promise","res2","push","stopAnimation","getAnimation","animation","delay","sequence","process","env","NODE_ENV","debug","info","useIsomorphicLayoutEffect","forEach","cancel","all","then"],"sources":["../../src/createAnimations.tsx"],"sourcesContent":[null],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;kBAAA;EAAAA,YAAA,GAAAC,GAAA,IAAAC,WAAA,CAAAC,SAAA;IAAAC,KAAA;EAAA,IAAAH,GAAA;AAAA,IAAAI,wBAAA;AAAAC,QAAA,CAAAD,wBAAA;EAAAE,YAAA,EAAAA,CAAA,KAAAA,YAAA;EAAAC,YAAA,EAAAA,CAAA,KAAAA,YAAA;EAAAC,gBAAA,EAAAA,CAAA,KAAAA,gBAAA;EAAAC,iBAAA,EAAAA,CAAA,KAAAA,iBAAA;EAAAC,yBAAA,EAAAA,CAAA,KAAAA,yBAAA;EAAAC,sBAAA,EAAAA,CAAA,KAAAA;AAAA;AAAAC,MAAA,CAAAC,OAAA,GAAAd,YAAA,CAAAK,wBAAoC;AAgBpC,IAAAU,wBAA4B,GAACC,OAAY,6BACnB;EAAAC,gBAAsB,GAAAD,OAAA,CAAa,oBACvB;EAAME,mBAAe,GAAMF,OAAQ,wBA4B/D;EAAAG,UAAmB,GAAAH,OAAA;EAAAI,YAAA,GAAAC,OAAA,CAAAL,OAAA;EAAAM,mBAAA,GAAAN,OAAA;AAAA,SACvBO,QAAWA,CAAAC,GAAA;EACX,uBAAS;;EACX,OAEMA,GAAA,WAAgBC,MAAA,UAAAD,GAAA,CAAAE,WAAA,KAAAD,MAAA,qBAAAD,GAAA;AAAA;AACH,IACjBG,mBAAO,YAAAA,CAAAvB,KAAA,EAAAwB,MAAA;IACP,IAAAxB,KAAA,IAAa,QAAAA,KAAA,uBAAAmB,QAAA,CAAAnB,KAAA,gCAAAA,KAAA;MACb,IAAAyB,YAAiB,GAAAD,MAAA,GAAAxB,KAAA,CAAA0B,OAAA,CAAAC,IAAA,GAAA3B,KAAA,CAAA0B,OAAA,CAAAE,KAAA;MACjB,OAAAH,YAAkB;IAClB;IACA,OAAAzB,KAAA;EACF;EAGM6B,gBAAA;IACJC,SAAA;IACAC,OAAA;EAAqB;EACrBC,aAAA;IACAC,eAAA;IACAC,KAAA;IACAC,WAAA,EAAa;IACbC,eAAA,EAAiB;IACjBC,gBAAA,EAAkB;IAClBC,cAAA,EAAgB;IAChBC,iBAAA,EAAmB;EAAA;EACnBC,uBAAG;IAAAC,YAAA;IAELC,mBAEqE;IAG9DC,oBAAS;IAGdC,sBAAc;IAAMC,uBAClB;IAKFC,WAAA;IACAC,eAAW;IACOC,gBACH;IAAAC,cACF;IAAsBC,iBACnB,GAAM;IACpB,GAAAlB;EAGK;EAAA5B,YACL,GAAcc,mBAAA,CAAAiC,QAAA,CAAAC,IAAA;EAAAjD,YAAA,GAAAe,mBAAA,CAAAiC,QAAA,CAAAE,IAAA;AACZ,SAAA/C,iBAAaA,CAAQgD,OAAA;EAAA,IACvBC,KAAA,GAAAvC,YAAA,CAAAwC,OAAA,CAAAC,MAAA;EAAA,OACAF,KAAA,CAAWG,OAAA,KAAAH,KAAA,CAAAG,OAAA;IACTC,SAAO,MAAM;IACfC,GAAA,MAAA1C,mBAAA,CAAAiC,QAAA,CAAAU,KAAA,CAAAP,OAAA;IACAQ,QAAO;MACLC,IAAA,EAAM;IAER;EAAA,EACA;IACEC,WAAMA,CAAA,EAAM;MAMZ,OAAIT,KAAA,CAASG,OAAA,CAAAE,GAAA;IACX;IAAiBK,SAAA,EACR;MACT,OAAAV,KAAM,CAAAG,OAAQ,CAAAE,GAAA,CAAAM,MAAW;IACzB;IAAuCC,KAAA,EACrC;MAAG,IACHC,wBAAS;MAAA,CAAAA,wBACS,GAAAb,KAAA,CAAAG,OAAA,CAAAC,SAAA,cAAAS,wBAAA,eAAAA,wBAAA,CAAAD,IAAA,IAAAZ,KAAA,CAAAG,OAAA,CAAAC,SAAA;IAAA;IAEpBU,SAAAC,IAAA,EAAU;MAEZ;UAAAP,IAAO;UAAA,GAAAQ;QAAA,IAAAC,SAAA,CAAAC,MAAA,QAAAD,SAAA,iBAAAA,SAAA;UACLT,IAAA,EAAM;QACN;QAAAW,QAAM,GAAAF,SAAY,CAAAC,MAAA,OAAAD,SAAA,GAAS,QAAO;QAAAZ,GAAK,GAAAL,KAAA,CAAAG,OAAA,CAAAE,GAAA;QAAAe,YAAA,GAAAD,QAAA,aAAAE,KAAA;UAAA,IACrC;YAAGC;UAAA,IAAAD,KAAA;UAAA,OACHC,QAAS,GAAAH,QAAA;QAAA,IACT;MAAkB,IACnBX,IAAA,eACDH,GAAA,CAAAS,QAAU,CAAAC,IAAM,OAElB,IAAAP,IAAA;QACF,IAAAK,wBAAA;QACF,CAAAA,wBAAA,GAAAb,KAAA,CAAAG,OAAA,CAAAC,SAAA,cAAAS,wBAAA,eAAAA,wBAAA,CAAAD,IAAA;QACF,IAAAR,SAAA,GAAAzC,mBAAA,CAAAiC,QAAA,CAAA2B,MAAA,CAAAlB,GAAA;UAIa,GAAAW,MAAA;UAILQ,OAAA,EAAAT,IAAW;UACfU,eAAqB,GAAAnE,gBAAA,CAAAoE;QACtB;QAEDtB,SAAA,CAAAuB,KAAM,CAAAP,YAAU,GAAMpB,KAAA,CAAAG,OAAA,CAAAC,SAAA,GAAAA,SAAA;MACpB,OAAM;QACN,IAAOwB,yBAAM;QACX,CAAAA,yBAAoB,GAAA5B,KAAe,CAAEG,OAAA,CAAAC,SAAA,cAAAwB,yBAAA,eAAAA,yBAAA,CAAAhB,IAAA;QACvC,IAAAiB,UAAA,GAAAlE,mBAAA,CAAAiC,QAAA,CAAAkC,MAAA,CAAAzB,GAAA;UACE,GAAOW,MAAA;UAGAQ,OAAA,EAAAT,IAAA;UAOGU,eAAA,EACd,CAAAnE,gBACoB,CAAAoE;QACpB,CAAO;QACLG,UAAA,CAAeF,KAAA,CAAAP,YAAA,GAAApB,KAAA,CAAAG,OAAA,CAAAC,SAAA,GAAAyB,UAAA;MACf;IACA;EAAM;AACA;AACN,IACA7E,yBAAA,YAAAA,CAAAqE,KAAA,EAAAU,OAAA;IAAA,IACA;QAAAtF;MAAA,IAAA4E,KAAA;MAAAW,QAAA,OAAAxE,UAAA,CAAAyE,QAAA,YAAA9B,OAAA;QACA4B,OAAA,CAAA5B,OAAA,CAAA1D,KAAA;MAAA,EACA;IAAAgB,YACA,CAAAwC,OAAkB,CAAAiC,SAAO,aAAc;MACrC,IAAAC,EAAA,GAAM1F,KAAA,CAAAgE,WAAa,GAAA2B,WAAA,CAAAJ,QAAS;MAUE,OAC5B;QASFvF,KAEM,CAAAgE,WAAe,GAAA4B,cAAM,CAAAF,EAAA,CAA4B;MAG1C;IACS,IACpB1F,KACA,EAAAuF,QACE;EACF;EAAA/E,sBAII,YAAAA,CAA2BR,KAAA,EAAA6F,QAAA;IAW/B,OAAAA,QAAM,CAAA7F,KAAA,CAAsBgE,WACtB;EAIN;AACE,SAAA3D,gBAAeA,CAAAyF,UAAS,EAElB;EACN;IAMAC,aAAI;IACFD,UAAA;IACA1C,IAAA,EAAAhD,YAAA;IAAAiD,IAAA,EAAAlD,YACF;IAEAG,iBAAI;IACFC,yBAAA;IACAC,sBAAA;IAAAwF,WACF,EAAAlF,mBAAA,CAAAkF,WAAA;IAEAC,aAAI,EAAAnF,mBAAqB,CAAAmF,aAAA;IACvBC,aAAA,WAAAA,CAActB,KAAA;MACd;UAAAuB,KAAA;UAAAC,YAAA;UAAAC,KAAA;UAAAC,cAAA;UAAAC;QAAA,IAAA3B,KAAA;QAAA4B,gBAAA;QAAAC,UAAA,GAAA5F,gBAAA,CAAAoE,KAAA,IAAAqB,cAAA,CAAAI,SAAA;QAAAC,SAAA,GAAAJ,QAAA;QAAAK,gBAAA,GAAAL,QAAA;QAAA,GAAAM,UAAA,QAAA9F,UAAA,CAAA+F,iBAAA;QAAAtF,MAAA,GAAAqF,UAAA,EAAAE,MAAA,gBAAAF,UAAA,aAAAL,gBAAA,GAAAK,UAAA,CAAAG,IAAA,cAAAR,gBAAA,uBAAAA,gBAAA,CAAAS,UAAA;QAAAC,aAAA,GAAAlG,YAAA,CAAAwC,OAAA,CAAAC,MAAA;QAAA0D,iBAAA,GAAAnG,YAAA,CAAAwC,OAAA,CAAAC,MAAA;QAAA2D,eAAA,GAAApG,YAAA,CAAAwC,OAAA,CAAAC,MAAA,oBAAA4D,OAAA;QAAAC,WAAA,GAAAnB,KAAA,CAAAmB,WAAA;QAAAC,iBAAA,KAAApB,KAAA,CAAAmB,WAAA;QAAAE,IAAA,IAAAC,IACF,CAAAC,SAAA,CAAArB,KAAA,GAGAC,cACA,EAAAK,SAAA,EACE,EAAAP,YAAA,EACA5E,MAAA;QAAAmG,wBACF,GAAA3G,YAAA,CAAAwC,OAAA,CAAAoE,OAAA;UAEA,OAAA/G,gBAAY,CAAAoE,KAAO,KAAS,GAAA4C,MAAS,CAAAC,IAAA,CAAAzB,KAAW,EAAA0B,IAAA,WAAAC,GAAA;YAC9C,OAAAV,WAAK,GAAW,CAAAzF,gBAAA,CAAAmG,GAAA,KAAAV,WAAA,CAAAW,OAAA,CAAAD,GAAA,YAAAnG,gBAAA,CAAAmG,GAAA;UAEhB;QAEA,GAAAR,IAAA;QAAAU,GAAA,GAAAlH,YAAkB,CAAAwC,OAAQ,CAAAoE,OAAK,CAAI;UAAA,IAAAO,OAChC,KAAI;YAAGC,WAAO,GAAM;YAAAC,gBAAkB;UAAe,SACxDL,GACA,IAAA3B,KAAA;YAAyD,IAC3DiC,MAAA,GAAAjC,KAAA,CAAA2B,GAAA;cAAApE,GAAA,GAAArC,mBAAA,CAAA+G,MAAA,EAAA9G,MAAA;YAAA,IAAAoC,GAAA,gBAAA6C,UAAA;cAAA,IAAA5E,gBAAA,CAAAmG,GAAA,cAAAxF,uBAAA,CAAAwF,GAAA;gBACFK,gBAAA,CAAAL,GAAA,IAAApE,GAAA;gBAEM;cACJ;cACE,IAAA2D,iBAAe,KAAAD,WAAqB,CAAEiB,QAAM,CAAGP,GAAC;gBAC9CK,gBAAA,CAAAL,GAAA,IAAApE,GAAA;gBACA;cACF;cACF,IAAAoE,GAAA;gBACAd,aAAW,CAAAxD,OAAA,CAAAsE,GAAkB,IAAAQ,MAAQ,CAAAR,GAAK,EAAAd,aAAM,CAAAxD,OAAA,CAAAsE,GAAA,GAAApE,GAAA;gBAC9C;cAEA;cACD,IAAAA,GAAA;gBACH,WAAAA,GAAA;kBAEO6E,OAAA,CAAAC,IAAA;kBACL;gBACA;gBACA,IAAQC,yBAAkB;kBAAaC,iBAAA;kBAAAC,cAAA;gBACzC;kBAEA,KAAS,IACPC,SACA,GAAAlF,GACA,CAAAmF,OACA,GAAA1H,MAAA,CAAA2H,QAAA,KAAAC,KAAA,IAAAN,yBAAA,IAAAM,KAAA,GAAAH,SAAA,CAAAxE,IAAA,IAAA4E,IAAA,GAAAP,yBAAA;oBACM,KAAAQ,KAAA,EAAArH,SAAkB,IAAAmH,KAAc,CAAAjJ,KAChC;sBAACoJ,gCAAgC;oBACnC,IAAAtH,SAAiB;sBACf,IAAQuH,IAAA,GAAAxB,MAAY,CAAAC,IAAI,CAAAhG,SAAA;wBAAAwH,gBAAS,GAAM,CAAGF,gCACvB,GAAAjC,iBAA4B,CAAAzD,OAAK,CAAAyF,KAAA,eAAAC,gCAAA,uBAAAA,gCAAA,CAAAC,IAAA;sBAEtDlC,iBAAA,CAAAzD,OAAA,CAAAyF,KAAA;wBACA,CACFE,IAAA,GAAAb,MAAA,CAAAa,IAAkB,EAAAC,gBAAA,EAAAxH,SAAA,CAAAuH,IAAA;sBAChB,GAAAlC,iBAAkB,CAAWzD,OAAM,IACnC,GAAAyD,iBAAA,CAAAzD,OAAA,CACA;oBAEF;kBACE;gBACA,SAAS6F,GAAA;kBAITX,iBAAA,GACF,IAAAC,cAAiB,GAAAU,GAAA;gBAEf;kBAAkB;oBAElB,CAAAZ,yBAAA,IAAAG,SAAA,CAAAU,MAAA,YAAAV,SAAA,CAAAU,MAAA;kBACA;oBAEF,IAAAZ,iBAAyB,EACvB,MAASC,cAAA;kBACT;gBACA;cACD;YAID;UAEA;UACA,IAAAY,aAAM,GAAU;YACd,GAAA5B,MAAA,CAAA6B,WAAU,CAAA7B,MAAA,CAAAkB,OAAA,CAAA7B,aAAA,CAAAxD,OAAA,EAAAiG,GAAA,WAAAC,MAAA;cACZ,IAAC,CAAAC,CAAA,EAAAC,CAAA,IAAAF,MAAA;gBAAAG,4BAAA;cACD,QAGEF,CAAA,EAEA,EAAAE,4BAAwB,GAAA3C,eAAA,CAAA1D,OAAA,CAAAsG,GAAA,CAAAF,CAAA,eAAAC,4BAAA,uBAAAA,4BAAA,CAAAE,aAAA,KAAAH,CAAA,CACtB;YAAyD;YAC9ChI,SACT,EAAAqF,iBAAkB,CAAAzD,OAAA,CAAAiG,GAAA,WAAAO,CAAA,EAAU;cAAA,IAAAH,4BACzB;gBAAAI,IAAA,GAAAtC,MAAA,CAAAC,IAAA,CAAAoC,CAAA;gBAAAE,IAAA,KAAAL,4BAAA,GAAA3C,eAAA,CAAA1D,OAAA,CAAAsG,GAAA,CAAAE,CAAA,CAAAC,IAAA,gBAAAJ,4BAAA,uBAAAA,4BAAA,CAAAE,aAAA,KAAAC,CAAA,CAAAC,IAAA;cAAA,OACJ;gBACH,CAAAA,IAAA,GAAAC;cASA;YANsB;UACoB;UACvB,OACd;YAIHjC,OAAI;YACMC,WAEX;YAAA/B,KACF,GACHgC,gBAAA,EAEAoB,aAAY;UAIN;UACA,SACAjB,MAASA,CAAA2B,IAAM,EAAAE,QAAS,EAAAC,KAAA;YAAA,IACxBC,eAAA,GAAAvI,aAAA,CAAAmI,IAAA;cAAA,CAAAC,IAAA,EAAArG,IAAA,IAAAwG,eAAA,IACA,GACA,UACAtG,QAAA,CAAAqG,KAAA;cAAAE,cAAA,GAAAJ,IAAA;cAAApK,KAAA,GAAAqK,QAAA,QAAAnJ,mBAAA,CAAAiC,QAAA,CAAAU,KAAA,CAAAuG,IAAA;cAAAK,gBAAA,GAAArD,eAAA,CAAA1D,OAAA,CAAAsG,GAAA,CAAAhK,KAAA;cAAA0K,eAAA;YAAA,IACA3G,IAAA;cACA,IAAA4G,yBAAA;cACFD,eAGG,GAAAE,eAAA,EAAAD,yBAAA,GAAAF,gBAAA,EAAA/G,OAAA,cAAAiH,yBAAA,cAAAA,yBAAA,GAAA3K,KAAA,CAAAkE,MAAA,EAAAkG,IAAA,EAAArG,IAAA,GAAAqD,eAAA,CAAA1D,OAAA,CAAAmH,GAAA,CAAA7K,KAAA;gBACTiK,aAAA,EAAAjK,KAAA,CAAA8K,WAAA,CAAAJ,eAAA;gBACKhH,OAAA,EAAA0G;cAEP;YACE;YACA,IAAIG,eAAS,KAAAC,cAAA,GAAAC,gBAAA,EAAAD,cAAA,UAAAE,eAAA,GAAAK,oBAAA,CACbN,gBAAY,EAAA/G,OAAI;YACV;YAMC4G,KAAA,EACLE,cACF,GAAApD,eAAA,CAAA1D,OAAA,CAAAmH,GAAA,CAAA7K,KAAA;cACC0D,OAEC,EAAA4G,KAAQ;cAOdL,aAAA,EAAAjK,KAAA,CAAA8K,WAAA,CAAAJ,eAAA;cACFF,cAAA,EAAAC,gBAAA,EAAAD,cAAA;YACF,KAAAxK,KAAA;cAES,IAAAgL,eACP,GAAAC,kBACA,CAAAd,IACA,EAAArE,UAAA,EACAK,KAAA,CAAA+E,UAAA;gBAAAC,OAAA;gBAAAC,OAAA,OAAAC,OAAA,WAAAC,IAAA;kBACMH,OAAa,GAACG,IAAI;gBAEpB;cAKFlD,WAAA,CAAAmD,IAAA,CAAAH,OAAA,GAAAjD,OAAA,CAAAoD,IAAA;gBACAvL,KAAA,CAAAwL,aAAA;gBACF,SAAAC,aAAA;kBACF,OAAAvK,mBAAA,CAAAiC,QAAA,CAAA6H,eAAA,CAAAjH,IAAA,cAAA/D,KAAA;oBAES+E,OAAgB,EAAAyF,cAA+B;oBACzCxF,eACD,GAAAnE,gBAAO,CAAAoE,KAAA,KAAA0C,wBAAA;oBAEb,GAAaqD;kBAER;gBAKT;gBACA,IAAAU,SAAA,GAAAV,eAAA,CAAAW,KAAA,GAAAzK,mBAAA,CAAAiC,QAAA,CAAAyI,QAAA,EACF1K,mBAAA,CAAAiC,QAAA,CAAAwI,KAAA,CAAAX,eAAA,CAAAW,KAAA,GACFF,YAAA,GAES,IAAAA,YACP,EACA;gBAGMC,SAAA,CAAAxG,KAAa,WAAA0E,MAAA;kBAMf;oBAA+B/E;kBAC/B,IAAA+E,MAAkB;kBAEX/E,QAAA,IAAAsG,OAAkB;gBAiBf;cAGT;YACL;YACF,OAAAU,OAAA,CAAAC,GAAA,CAAAC,QAAA,sBAAA5F,KAAA,CAAA6F,KAAA,kBAAAvD,OAAA,CAAAwD,IAAA,uBAAA9B,IAAA,WAAAnK,KAAA,CAAAkE,MAAA,QAAAoG,KAAA,MAAAF,IAAA,aAAArG,IAAA,iBAAA2G,eAAA,GAAA1K,KAAA;UAGM;QACD,GAAAwH,IAAA;MACA,WAAA3G,gBAAA,CAAAqL,yBAAA;QACHhE,GAAA,CAAAC,OAAY,CAAAgE,OAAA,WAAAjC,CAAA;UACZ,OAAYA,CAAA;QACd;QAEA,IAASkC,MAAS;QACZ,OAAOf,OAAU,CAAAgB,GAAA,CAAAnE,GAAA,CAAAE,WAAA,EAAAkE,IAAA;UACnBF,MAAQ,KAAKhG,YAAA,MAAAO,SAAA,IAAAC,gBAAA;QAET,CAAC,GAAG,YAAQ;UACVwF,MAAC,GAAQ;QACnB","ignoreList":[]}
|
|
1
|
+
{"version":3,"names":["__toCommonJS","mod","__copyProps","__defProp","value","createAnimations_exports","__export","AnimatedText","AnimatedView","createAnimations","useAnimatedNumber","useAnimatedNumberReaction","useAnimatedNumberStyle","module","exports","import_animation_helpers","require","import_constants","import_use_presence","import_web","import_react","__toESM","import_react_native","_type_of","obj","Symbol","constructor","resolveDynamicValue","isDark","dynamicValue","dynamic","dark","light","animatedStyleKey","transform","opacity","colorStyleKey","backgroundColor","color","borderColor","borderLeftColor","borderRightColor","borderTopColor","borderBottomColor","costlyToAnimateStyleKey","borderRadius","borderTopLeftRadius","borderTopRightRadius","borderBottomLeftRadius","borderBottomRightRadius","borderWidth","borderLeftWidth","borderRightWidth","borderTopWidth","borderBottomWidth","Animated","View","Text","initial","state","default","useRef","current","composite","val","Value","strategy","type","getInstance","getValue","_value","stop","_state_current_composite","setValue","next","config","arguments","length","onFinish","handleFinish","param","finished","spring","toValue","useNativeDriver","isWeb","start","_state_current_composite1","composite1","timing","onValue","onChange","useEvent","useEffect","id","addListener","removeListener","getStyle","animations","isReactNative","usePresence","ResetPresence","useAnimations","props","onDidAnimate","style","componentState","presence","_themeState_name","isDisabled","unmounted","isExiting","sendExitComplete","themeState","useThemeWithState","scheme","name","startsWith","animateStyles","animatedTranforms","animationsState","WeakMap","animateOnly","hasTransitionOnly","isEntering","wasEnteringRef","justFinishedEntering","args","JSON","stringify","isThereNoNativeStyleKeys","useMemo","Object","keys","some","key","indexOf","res","runners","completions","animationState","nonAnimatedStyle","rawVal","includes","update","console","warn","_iteratorNormalCompletion","_didIteratorError","_iteratorError","_iterator","entries","iterator","_step","done","index","_animatedTranforms_current_index","tkey","currentTransform","err","return","animatedStyle","fromEntries","map","param2","k","v","_animationsState_current_get","get","interpolation","r","key2","val2","animated","valIn","isColorStyleKey","animateToValue","curInterpolation","interpolateArgs","_curInterpolation_current","getInterpolated","set","interpolate","getColorInterpolated","animationConfig","getAnimationConfig","transition","resolve","promise","Promise","res2","push","stopAnimation","getAnimation","animation","delay","sequence","process","env","NODE_ENV","debug","info","useIsomorphicLayoutEffect","forEach","cancel","all","then","response","inputStyle"],"sources":["../../src/createAnimations.tsx"],"sourcesContent":[null],"mappings":"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","ignoreList":[]}
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import { normalizeTransition } from "@tamagui/animation-helpers";
|
|
1
|
+
import { normalizeTransition, getEffectiveAnimation } from "@tamagui/animation-helpers";
|
|
2
2
|
import { isWeb, useIsomorphicLayoutEffect } from "@tamagui/constants";
|
|
3
3
|
import { ResetPresence, usePresence } from "@tamagui/use-presence";
|
|
4
4
|
import { useEvent, useThemeWithState } from "@tamagui/web";
|
|
@@ -96,14 +96,19 @@ function createAnimations(animations) {
|
|
|
96
96
|
useAnimations: ({ props, onDidAnimate, style, componentState, presence }) => {
|
|
97
97
|
const isDisabled = isWeb && componentState.unmounted === !0, isExiting = presence?.[0] === !1, sendExitComplete = presence?.[1], [, themeState] = useThemeWithState({}), isDark = themeState?.scheme === "dark" || themeState?.name?.startsWith("dark"), animateStyles = React.useRef({}), animatedTranforms = React.useRef([]), animationsState = React.useRef(
|
|
98
98
|
/* @__PURE__ */ new WeakMap()
|
|
99
|
-
), animateOnly = props.animateOnly || [], hasTransitionOnly = !!props.animateOnly,
|
|
99
|
+
), animateOnly = props.animateOnly || [], hasTransitionOnly = !!props.animateOnly, isEntering = !!componentState.unmounted, wasEnteringRef = React.useRef(isEntering), justFinishedEntering = wasEnteringRef.current && !isEntering;
|
|
100
|
+
React.useEffect(() => {
|
|
101
|
+
wasEnteringRef.current = isEntering;
|
|
102
|
+
});
|
|
103
|
+
const args = [
|
|
100
104
|
JSON.stringify(style),
|
|
101
105
|
componentState,
|
|
102
106
|
isExiting,
|
|
103
107
|
!!onDidAnimate,
|
|
104
|
-
isDark
|
|
108
|
+
isDark,
|
|
109
|
+
justFinishedEntering
|
|
105
110
|
], isThereNoNativeStyleKeys = React.useMemo(() => isWeb ? !0 : Object.keys(style).some((key) => animateOnly ? !animatedStyleKey[key] && animateOnly.indexOf(key) === -1 : !animatedStyleKey[key]), args), res = React.useMemo(() => {
|
|
106
|
-
const runners = [], completions = [], nonAnimatedStyle = {};
|
|
111
|
+
const runners = [], completions = [], animationState = isExiting ? "exit" : isEntering || justFinishedEntering ? "enter" : "default", nonAnimatedStyle = {};
|
|
107
112
|
for (const key in style) {
|
|
108
113
|
const rawVal = style[key], val = resolveDynamicValue(rawVal, isDark);
|
|
109
114
|
if (val !== void 0 && !isDisabled) {
|
|
@@ -173,7 +178,12 @@ function createAnimations(animations) {
|
|
|
173
178
|
interpolation: value.interpolate(interpolateArgs),
|
|
174
179
|
animateToValue: curInterpolation?.animateToValue ? 0 : 1
|
|
175
180
|
})), value) {
|
|
176
|
-
const animationConfig = getAnimationConfig(
|
|
181
|
+
const animationConfig = getAnimationConfig(
|
|
182
|
+
key,
|
|
183
|
+
animations,
|
|
184
|
+
props.transition,
|
|
185
|
+
animationState
|
|
186
|
+
);
|
|
177
187
|
let resolve;
|
|
178
188
|
const promise = new Promise((res2) => {
|
|
179
189
|
resolve = res2;
|
|
@@ -235,10 +245,10 @@ function getInterpolated(current, next, postfix = "deg") {
|
|
|
235
245
|
outputRange
|
|
236
246
|
};
|
|
237
247
|
}
|
|
238
|
-
function getAnimationConfig(key, animations, transition) {
|
|
248
|
+
function getAnimationConfig(key, animations, transition, animationState = "default") {
|
|
239
249
|
const normalized = normalizeTransition(transition), shortKey = transformShorthands[key], propAnimation = normalized.properties[key] ?? normalized.properties[shortKey];
|
|
240
250
|
let animationType = null, extraConf = {};
|
|
241
|
-
return typeof propAnimation == "string" ? animationType = propAnimation : propAnimation && typeof propAnimation == "object" ? (animationType = propAnimation.type || normalized
|
|
251
|
+
return typeof propAnimation == "string" ? animationType = propAnimation : propAnimation && typeof propAnimation == "object" ? (animationType = propAnimation.type || getEffectiveAnimation(normalized, animationState), extraConf = propAnimation) : animationType = getEffectiveAnimation(normalized, animationState), normalized.delay && !extraConf.delay && (extraConf = { ...extraConf, delay: normalized.delay }), {
|
|
242
252
|
...animationType ? animations[animationType] : {},
|
|
243
253
|
...extraConf
|
|
244
254
|
};
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"version": 3,
|
|
3
3
|
"sources": ["../../src/createAnimations.tsx"],
|
|
4
|
-
"mappings": "AAAA,SAAS,
|
|
4
|
+
"mappings": "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",
|
|
5
5
|
"names": ["res"]
|
|
6
6
|
}
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import { normalizeTransition } from "@tamagui/animation-helpers";
|
|
1
|
+
import { normalizeTransition, getEffectiveAnimation } from "@tamagui/animation-helpers";
|
|
2
2
|
import { isWeb, useIsomorphicLayoutEffect } from "@tamagui/constants";
|
|
3
3
|
import { ResetPresence, usePresence } from "@tamagui/use-presence";
|
|
4
4
|
import { useEvent, useThemeWithState } from "@tamagui/web";
|
|
@@ -124,11 +124,18 @@ function createAnimations(animations) {
|
|
|
124
124
|
animationsState = React.useRef(/* @__PURE__ */new WeakMap()),
|
|
125
125
|
animateOnly = props.animateOnly || [],
|
|
126
126
|
hasTransitionOnly = !!props.animateOnly,
|
|
127
|
-
|
|
127
|
+
isEntering = !!componentState.unmounted,
|
|
128
|
+
wasEnteringRef = React.useRef(isEntering),
|
|
129
|
+
justFinishedEntering = wasEnteringRef.current && !isEntering;
|
|
130
|
+
React.useEffect(() => {
|
|
131
|
+
wasEnteringRef.current = isEntering;
|
|
132
|
+
});
|
|
133
|
+
const args = [JSON.stringify(style), componentState, isExiting, !!onDidAnimate, isDark, justFinishedEntering],
|
|
128
134
|
isThereNoNativeStyleKeys = React.useMemo(() => isWeb ? !0 : Object.keys(style).some(key => animateOnly ? !animatedStyleKey[key] && animateOnly.indexOf(key) === -1 : !animatedStyleKey[key]), args),
|
|
129
135
|
res = React.useMemo(() => {
|
|
130
136
|
const runners = [],
|
|
131
137
|
completions = [],
|
|
138
|
+
animationState = isExiting ? "exit" : isEntering || justFinishedEntering ? "enter" : "default",
|
|
132
139
|
nonAnimatedStyle = {};
|
|
133
140
|
for (const key in style) {
|
|
134
141
|
const rawVal = style[key],
|
|
@@ -194,7 +201,7 @@ function createAnimations(animations) {
|
|
|
194
201
|
interpolation: value.interpolate(interpolateArgs),
|
|
195
202
|
animateToValue: curInterpolation?.animateToValue ? 0 : 1
|
|
196
203
|
})), value) {
|
|
197
|
-
const animationConfig = getAnimationConfig(key, animations, props.transition);
|
|
204
|
+
const animationConfig = getAnimationConfig(key, animations, props.transition, animationState);
|
|
198
205
|
let resolve;
|
|
199
206
|
const promise = new Promise(res2 => {
|
|
200
207
|
resolve = res2;
|
|
@@ -251,13 +258,13 @@ function getInterpolated(current, next, postfix = "deg") {
|
|
|
251
258
|
outputRange
|
|
252
259
|
};
|
|
253
260
|
}
|
|
254
|
-
function getAnimationConfig(key, animations, transition) {
|
|
261
|
+
function getAnimationConfig(key, animations, transition, animationState = "default") {
|
|
255
262
|
const normalized = normalizeTransition(transition),
|
|
256
263
|
shortKey = transformShorthands[key],
|
|
257
264
|
propAnimation = normalized.properties[key] ?? normalized.properties[shortKey];
|
|
258
265
|
let animationType = null,
|
|
259
266
|
extraConf = {};
|
|
260
|
-
return typeof propAnimation == "string" ? animationType = propAnimation : propAnimation && typeof propAnimation == "object" ? (animationType = propAnimation.type || normalized
|
|
267
|
+
return typeof propAnimation == "string" ? animationType = propAnimation : propAnimation && typeof propAnimation == "object" ? (animationType = propAnimation.type || getEffectiveAnimation(normalized, animationState), extraConf = propAnimation) : animationType = getEffectiveAnimation(normalized, animationState), normalized.delay && !extraConf.delay && (extraConf = {
|
|
261
268
|
...extraConf,
|
|
262
269
|
delay: normalized.delay
|
|
263
270
|
}), {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["normalizeTransition","isWeb","useIsomorphicLayoutEffect","ResetPresence","usePresence","useEvent","useThemeWithState","React","Animated","resolveDynamicValue","value","isDark","dynamic","dark","light","animatedStyleKey","transform","opacity","colorStyleKey","backgroundColor","color","borderColor","borderLeftColor","borderRightColor","borderTopColor","borderBottomColor","costlyToAnimateStyleKey","borderRadius","borderTopLeftRadius","borderTopRightRadius","borderBottomLeftRadius","borderBottomRightRadius","borderWidth","borderLeftWidth","borderRightWidth","borderTopWidth","borderBottomWidth","AnimatedView","View","AnimatedText","Text","useAnimatedNumber","initial","state","useRef","current","composite","val","Value","strategy","type","getInstance","getValue","_value","stop","setValue","next","config","onFinish","handleFinish","finished","spring","toValue","useNativeDriver","start","timing","useAnimatedNumberReaction","onValue","onChange","useEffect","id","addListener","removeListener","useAnimatedNumberStyle","getStyle","createAnimations","animations","isReactNative","useAnimations","props","onDidAnimate","style","componentState","presence","isDisabled","unmounted","isExiting","sendExitComplete","themeState","scheme","name","startsWith","animateStyles","animatedTranforms","animationsState","WeakMap","animateOnly","hasTransitionOnly","args","JSON","stringify","isThereNoNativeStyleKeys","useMemo","Object","keys","some","key","indexOf","res","runners","completions","nonAnimatedStyle","rawVal","includes","update","console","warn","index","entries","tkey","currentTransform","animatedStyle","fromEntries","map","k","v","get","interpolation","r","animated","valIn","isColorStyleKey","animateToValue","curInterpolation","interpolateArgs","getInterpolated","set","interpolate","getColorInterpolated","animationConfig","getAnimationConfig","transition","resolve","promise","Promise","res2","push","stopAnimation","getAnimation","delay","sequence","process","env","NODE_ENV","debug","info","forEach","cancel","all","then","response","inputStyle","currentColor","nextColor","inputRange","outputRange","reverse","postfix","normalized","shortKey","transformShorthands","propAnimation","properties","animationType","extraConf","default","x","y","translateX","translateY","input","isColor","_","number","after","match"],"sources":["../../src/createAnimations.tsx"],"sourcesContent":[null],"mappings":"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","ignoreList":[]}
|
|
1
|
+
{"version":3,"names":["normalizeTransition","getEffectiveAnimation","isWeb","useIsomorphicLayoutEffect","ResetPresence","usePresence","useEvent","useThemeWithState","React","Animated","resolveDynamicValue","value","isDark","dynamic","dark","light","animatedStyleKey","transform","opacity","colorStyleKey","backgroundColor","color","borderColor","borderLeftColor","borderRightColor","borderTopColor","borderBottomColor","costlyToAnimateStyleKey","borderRadius","borderTopLeftRadius","borderTopRightRadius","borderBottomLeftRadius","borderBottomRightRadius","borderWidth","borderLeftWidth","borderRightWidth","borderTopWidth","borderBottomWidth","AnimatedView","View","AnimatedText","Text","useAnimatedNumber","initial","state","useRef","current","composite","val","Value","strategy","type","getInstance","getValue","_value","stop","setValue","next","config","onFinish","handleFinish","finished","spring","toValue","useNativeDriver","start","timing","useAnimatedNumberReaction","onValue","onChange","useEffect","id","addListener","removeListener","useAnimatedNumberStyle","getStyle","createAnimations","animations","isReactNative","useAnimations","props","onDidAnimate","style","componentState","presence","isDisabled","unmounted","isExiting","sendExitComplete","themeState","scheme","name","startsWith","animateStyles","animatedTranforms","animationsState","WeakMap","animateOnly","hasTransitionOnly","isEntering","wasEnteringRef","justFinishedEntering","args","JSON","stringify","isThereNoNativeStyleKeys","useMemo","Object","keys","some","key","indexOf","res","runners","completions","animationState","nonAnimatedStyle","rawVal","includes","update","console","warn","index","entries","tkey","currentTransform","animatedStyle","fromEntries","map","k","v","get","interpolation","r","animated","valIn","isColorStyleKey","animateToValue","curInterpolation","interpolateArgs","getInterpolated","set","interpolate","getColorInterpolated","animationConfig","getAnimationConfig","transition","resolve","promise","Promise","res2","push","stopAnimation","getAnimation","delay","sequence","process","env","NODE_ENV","debug","info","forEach","cancel","all","then","response","inputStyle","currentColor","nextColor","inputRange","outputRange","reverse","postfix","normalized","shortKey","transformShorthands","propAnimation","properties","animationType","extraConf","x","y","translateX","translateY","input","isColor","_","number","after","match"],"sources":["../../src/createAnimations.tsx"],"sourcesContent":[null],"mappings":"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","ignoreList":[]}
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import { normalizeTransition } from "@tamagui/animation-helpers";
|
|
1
|
+
import { normalizeTransition, getEffectiveAnimation } from "@tamagui/animation-helpers";
|
|
2
2
|
import { isWeb, useIsomorphicLayoutEffect } from "@tamagui/constants";
|
|
3
3
|
import { ResetPresence, usePresence } from "@tamagui/use-presence";
|
|
4
4
|
import { useEvent, useThemeWithState } from "@tamagui/web";
|
|
@@ -147,7 +147,13 @@ function createAnimations(animations) {
|
|
|
147
147
|
animationsState = React.useRef(/* @__PURE__ */new WeakMap()),
|
|
148
148
|
animateOnly = props.animateOnly || [],
|
|
149
149
|
hasTransitionOnly = !!props.animateOnly,
|
|
150
|
-
|
|
150
|
+
isEntering = !!componentState.unmounted,
|
|
151
|
+
wasEnteringRef = React.useRef(isEntering),
|
|
152
|
+
justFinishedEntering = wasEnteringRef.current && !isEntering;
|
|
153
|
+
React.useEffect(function () {
|
|
154
|
+
wasEnteringRef.current = isEntering;
|
|
155
|
+
});
|
|
156
|
+
var args = [JSON.stringify(style), componentState, isExiting, !!onDidAnimate, isDark, justFinishedEntering],
|
|
151
157
|
isThereNoNativeStyleKeys = React.useMemo(function () {
|
|
152
158
|
return isWeb ? !0 : Object.keys(style).some(function (key) {
|
|
153
159
|
return animateOnly ? !animatedStyleKey[key] && animateOnly.indexOf(key) === -1 : !animatedStyleKey[key];
|
|
@@ -156,6 +162,7 @@ function createAnimations(animations) {
|
|
|
156
162
|
res = React.useMemo(function () {
|
|
157
163
|
var runners = [],
|
|
158
164
|
completions = [],
|
|
165
|
+
animationState = isExiting ? "exit" : isEntering || justFinishedEntering ? "enter" : "default",
|
|
159
166
|
nonAnimatedStyle = {};
|
|
160
167
|
for (var key in style) {
|
|
161
168
|
var rawVal = style[key],
|
|
@@ -246,7 +253,7 @@ function createAnimations(animations) {
|
|
|
246
253
|
interpolation: value.interpolate(interpolateArgs),
|
|
247
254
|
animateToValue: curInterpolation?.animateToValue ? 0 : 1
|
|
248
255
|
})), value) {
|
|
249
|
-
var animationConfig = getAnimationConfig(key2, animations, props.transition),
|
|
256
|
+
var animationConfig = getAnimationConfig(key2, animations, props.transition, animationState),
|
|
250
257
|
resolve,
|
|
251
258
|
promise = new Promise(function (res2) {
|
|
252
259
|
resolve = res2;
|
|
@@ -309,13 +316,14 @@ function getInterpolated(current, next) {
|
|
|
309
316
|
};
|
|
310
317
|
}
|
|
311
318
|
function getAnimationConfig(key, animations, transition) {
|
|
312
|
-
var
|
|
319
|
+
var animationState = arguments.length > 3 && arguments[3] !== void 0 ? arguments[3] : "default",
|
|
320
|
+
normalized = normalizeTransition(transition),
|
|
313
321
|
shortKey = transformShorthands[key],
|
|
314
322
|
_normalized_properties_key,
|
|
315
323
|
propAnimation = (_normalized_properties_key = normalized.properties[key]) !== null && _normalized_properties_key !== void 0 ? _normalized_properties_key : normalized.properties[shortKey],
|
|
316
324
|
animationType = null,
|
|
317
325
|
extraConf = {};
|
|
318
|
-
typeof propAnimation == "string" ? animationType = propAnimation : propAnimation && (typeof propAnimation > "u" ? "undefined" : _type_of(propAnimation)) === "object" ? (animationType = propAnimation.type || normalized
|
|
326
|
+
typeof propAnimation == "string" ? animationType = propAnimation : propAnimation && (typeof propAnimation > "u" ? "undefined" : _type_of(propAnimation)) === "object" ? (animationType = propAnimation.type || getEffectiveAnimation(normalized, animationState), extraConf = propAnimation) : animationType = getEffectiveAnimation(normalized, animationState), normalized.delay && !extraConf.delay && (extraConf = {
|
|
319
327
|
...extraConf,
|
|
320
328
|
delay: normalized.delay
|
|
321
329
|
});
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["normalizeTransition","isWeb","useIsomorphicLayoutEffect","ResetPresence","usePresence","useEvent","useThemeWithState","React","Animated","_type_of","obj","Symbol","constructor","resolveDynamicValue","value","isDark","dynamicValue","dynamic","dark","light","animatedStyleKey","transform","opacity","colorStyleKey","backgroundColor","color","borderColor","borderLeftColor","borderRightColor","borderTopColor","borderBottomColor","costlyToAnimateStyleKey","borderRadius","borderTopLeftRadius","borderTopRightRadius","borderBottomLeftRadius","borderBottomRightRadius","borderWidth","borderLeftWidth","borderRightWidth","borderTopWidth","borderBottomWidth","AnimatedView","View","AnimatedText","Text","useAnimatedNumber","initial","state","useRef","current","composite","val","Value","strategy","type","getInstance","getValue","_value","stop","_state_current_composite","setValue","next","config","arguments","length","onFinish","handleFinish","param","finished","spring","toValue","useNativeDriver","start","_state_current_composite1","composite1","timing","useAnimatedNumberReaction","onValue","onChange","useEffect","id","addListener","removeListener","useAnimatedNumberStyle","getStyle","createAnimations","animations","isReactNative","useAnimations","props","onDidAnimate","style","componentState","presence","_themeState_name","isDisabled","unmounted","isExiting","sendExitComplete","themeState","scheme","name","startsWith","animateStyles","animatedTranforms","animationsState","WeakMap","animateOnly","hasTransitionOnly","args","JSON","stringify","isThereNoNativeStyleKeys","useMemo","Object","keys","some","key","indexOf","res","runners","completions","nonAnimatedStyle","rawVal","includes","update","console","warn","_iteratorNormalCompletion","_didIteratorError","_iteratorError","_iterator","entries","iterator","_step","done","index","_animatedTranforms_current_index","tkey","currentTransform","err","return","animatedStyle","fromEntries","map","param2","k","v","_animationsState_current_get","get","interpolation","r","key2","val2","animated","valIn","isColorStyleKey","animateToValue","curInterpolation","interpolateArgs","_curInterpolation_current","getInterpolated","set","interpolate","getColorInterpolated","animationConfig","getAnimationConfig","transition","resolve","promise","Promise","res2","push","stopAnimation","getAnimation","animation","delay","sequence","process","env","NODE_ENV","debug","info","forEach","cancel","all","then"],"sources":["../../src/createAnimations.tsx"],"sourcesContent":[null],"mappings":"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","ignoreList":[]}
|
|
1
|
+
{"version":3,"names":["normalizeTransition","getEffectiveAnimation","isWeb","useIsomorphicLayoutEffect","ResetPresence","usePresence","useEvent","useThemeWithState","React","Animated","_type_of","obj","Symbol","constructor","resolveDynamicValue","value","isDark","dynamicValue","dynamic","dark","light","animatedStyleKey","transform","opacity","colorStyleKey","backgroundColor","color","borderColor","borderLeftColor","borderRightColor","borderTopColor","borderBottomColor","costlyToAnimateStyleKey","borderRadius","borderTopLeftRadius","borderTopRightRadius","borderBottomLeftRadius","borderBottomRightRadius","borderWidth","borderLeftWidth","borderRightWidth","borderTopWidth","borderBottomWidth","AnimatedView","View","AnimatedText","Text","useAnimatedNumber","initial","state","useRef","current","composite","val","Value","strategy","type","getInstance","getValue","_value","stop","_state_current_composite","setValue","next","config","arguments","length","onFinish","handleFinish","param","finished","spring","toValue","useNativeDriver","start","_state_current_composite1","composite1","timing","useAnimatedNumberReaction","onValue","onChange","useEffect","id","addListener","removeListener","useAnimatedNumberStyle","getStyle","createAnimations","animations","isReactNative","useAnimations","props","onDidAnimate","style","componentState","presence","_themeState_name","isDisabled","unmounted","isExiting","sendExitComplete","themeState","scheme","name","startsWith","animateStyles","animatedTranforms","animationsState","WeakMap","animateOnly","hasTransitionOnly","isEntering","wasEnteringRef","justFinishedEntering","args","JSON","stringify","isThereNoNativeStyleKeys","useMemo","Object","keys","some","key","indexOf","res","runners","completions","animationState","nonAnimatedStyle","rawVal","includes","update","console","warn","_iteratorNormalCompletion","_didIteratorError","_iteratorError","_iterator","entries","iterator","_step","done","index","_animatedTranforms_current_index","tkey","currentTransform","err","return","animatedStyle","fromEntries","map","param2","k","v","_animationsState_current_get","get","interpolation","r","key2","val2","animated","valIn","isColorStyleKey","animateToValue","curInterpolation","interpolateArgs","_curInterpolation_current","getInterpolated","set","interpolate","getColorInterpolated","animationConfig","getAnimationConfig","transition","resolve","promise","Promise","res2","push","stopAnimation","getAnimation","animation","delay","sequence","process","env","NODE_ENV","debug","info","forEach","cancel","all","then","response","inputStyle"],"sources":["../../src/createAnimations.tsx"],"sourcesContent":[null],"mappings":"AAAA,SAASA,mBAAA,EAAqBC,qBAAA,QAA6B;AAC3D,SAASC,KAAA,EAAOC,yBAAA,QAAiC;AACjD,SAASC,aAAA,EAAeC,WAAA,QAAmB;AAS3C,SAASC,QAAA,EAAUC,iBAAA,QAAyB;AAC5C,OAAOC,KAAA,MAAW;AAClB,SAASC,QAAA,QAAsC;AAG/C,SAAMC,SAAAC,GAAA;EA+BJ,uBAAW;;EACX,OAAAA,GAAS,WAAAC,MAAA,UAAAD,GAAA,CAAAE,WAAA,KAAAD,MAAA,qBAAAD,GAAA;AACX;AAEsB,IACpBG,mBAAiB,YAAAA,CAAAC,KAAA,EAAAC,MAAA;IACjB,IAAAD,KAAO,YAAAA,KAAA,uBAAAL,QAAA,CAAAK,KAAA,gCAAAA,KAAA;MACP,IAAAE,YAAa,GAAAD,MAAA,GAAAD,KAAA,CAAAG,OAAA,CAAAC,IAAA,GAAAJ,KAAA,CAAAG,OAAA,CAAAE,KAAA;MACb,OAAAH,YAAiB;IACjB;IACA,OAAAF,KAAA;EAAgB;EAChBM,gBAAA,GAAmB;IACrBC,SAGM;IACJC,OAAA;EAAc;EACdC,aAAA;IACAC,eAAA;IACAC,KAAA;IACAC,WAAA;IACAC,eAAa;IACbC,gBAAA,EAAiB;IACjBC,cAAA,IAAkB;IAClBC,iBAAgB;EAAA;EAChBC,uBAAmB;IACnBC,YAAG;IAAAC,mBAAA;IAELC,oBAEqE;IAG9DC,sBAAS,GACd;IAEAC,uBAAoB;IAAAC,WAClB;IAKFC,eAAA;IACAC,gBAAW;IACOC,cACH;IAAAC,iBACF,GAAS;IAAa,GAC/BlB;EAA2B;EAC7BmB,YAGK,GAAAlC,QAAA,CAAAmC,IAAA;EAAAC,YAAA,GAAApC,QAAA,CAAAqC,IAAA;AAAA,SACLC,iBAAcA,CAAAC,OAAA;EACZ,IAAAC,KAAA,GAAOzC,KAAM,CAAA0C,MAAA,CAAQ;EAAA,OACvBD,KAAA,CAAAE,OAAA,KAAAF,KAAA,CAAAE,OAAA;IACAC,SAAA,EAAW;IACTC,GAAA,MAAO5C,QAAM,CAAA6C,KAAQ,CAAAN,OAAI;IAC3BO,QAAA;MACAC,IAAA,EAAO;IACL;EAC0B,EAC5B;IACAC,WAASA,CAAA;MACP,OAAMR,KAAM,CAAAE,OAAM,CAAAE,GAAA;IAMlB;IACEK,QAAIA,CAAA;MAAa,OAAAT,KACR,CAAAE,OAAS,CAAAE,GAAA,CAAAM,MAAU;IAC5B;IACAC,KAAA;MAAuC,IACrCC,wBAAG;MAAA,CAAAA,wBACM,GAAAZ,KAAA,CAAAE,OAAA,CAAAC,SAAA,cAAAS,wBAAA,eAAAA,wBAAA,CAAAD,IAAA,IAAAX,KAAA,CAAAE,OAAA,CAAAC,SAAA;IAAA;IACSU,QACnBA,CAAAC,IAAA;MACD;UAAAP,IAAA;UAAU,GAAAQ;QAAM,IAAAC,SAChB,CAAAC,MAAM,QAAQD,SAAY,iBAAAA,SAAA;UAC5BT,IAAA,EAAO;QACL;QAAAW,QAAM,GAAAF,SAAQ,CAAAC,MAAW,GAAK,IAAAD,SAAA;QAAAZ,GAAA,GAAAJ,KAAA,CAAAE,OAAA,CAAAE,GAAA;QAAAe,YAAA,GAAAD,QAAA,aAAAE,KAAA;UAC9B;YAAMC;UAAA,IAAYD,KAAA;UAAqB,OAClCC,QAAA,GAAAH,QAAA;QAAA,IACH;MAAS,IACTX,IAAA,aAAiB,EACnBH,GAAC,CAAAS,QAAA,CAAAC,IAAA,OACD,IAAAP,IAAU,KAAM;QAElB,IAAAK,wBAAA;QACF,CAAAA,wBAAA,GAAAZ,KAAA,CAAAE,OAAA,CAAAC,SAAA,cAAAS,wBAAA,eAAAA,wBAAA,CAAAD,IAAA;QACF,IAAAR,SAAA,GAAA3C,QAAA,CAAA8D,MAAA,CAAAlB,GAAA;UACF,GAAAW,MAAA;UAIaQ,OAAA,EAAAT,IAAA;UAILU,eAAW,GAASvE;QACxB;QACDkD,SAAA,CAAAsB,KAAA,CAAAN,YAAA,GAAAnB,KAAA,CAAAE,OAAA,CAAAC,SAAA,GAAAA,SAAA;MAED,OAAM;QACJ,IAAMuB,yBAAyB;QAC/B,CAAAA,yBAAa,GAAA1B,KAAA,CAAAE,OAAA,CAAAC,SAAA,cAAAuB,yBAAA,eAAAA,yBAAA,CAAAf,IAAA;QACX,IAAMgB,UAAA,GAAYnE,QAAE,CAAAoE,MAAA,CAAexB,GAAE;UACvC,GAAAW,MAAA;UACEQ,OAAO,EAAAT,IAAS;UAGTU,eAAA,GAAgEvE;QAOtE,CAAS;QAGd0E,UAAO,CAAAF,KAAA,CAAAN,YAAA,GAAAnB,KAAA,CAAAE,OAAA,CAAAC,SAAA,GAAAwB,UAAA;MACL;IACA;EAAA;AACM;AACA,IACNE,yBAAA,YAAAA,CAAAT,KAAA,EAAAU,OAAA;IAAA,IACA;QAAAhE;MAAA,IAAAsD,KAAA;MAAAW,QAAA,GAAA1E,QAAA,WAAA6C,OAAA;QACA4B,OAAA,CAAA5B,OAAA,CAAApC,KAAA;MAAA,EACA;IAAAP,KACA,CAAAyE,SAAA;MACA,IAAAC,EAAA,GAAAnE,KAAA,CAAe0C,WAAU,GAAA0B,WAAc,CAAAH,QAAO;MAC5C,mBAAM;QAUwBjE,KAC5B,CAAA0C,WAAA,GAAA2B,cAQE,CAAAF,EAAA;MAAA;IAWJ,IACEnE,KAAA,EAAyBiE,QAC1B,CAED;EAAa;EAAAK,sBACI,GAAK,SAAAA,CAAAtE,KAAA,EAAAuE,QAAA;IAAA,OACpBA,QAAA,CAAAvE,KAAA,CAAA0C,WAAA;EAAA;AACA,SACC8B,gBAACA,CAAAC,UAAA;EAAA,OACF;IAAAC,aACA;IAAAD,UAII;IAWJ5C,IAAA,EAAAD,YAAM;IAaNG,IAAA,EAAAD,YAAW;IACTE,iBAAM;IAGN+B,yBAAY;IAMZO,sBAAI;IACFhF,WAAA;IACAD,aAAA;IAAAsF,aACF,WAAAA,CAAArB,KAAA;MAEA;UAAAsB,KAAI;UAAAC,YAAA;UAAAC,KAAsB;UAAAC,cAAY;UAAAC;QAAe,IAAA1B,KAAA;QAAA2B,gBAAA;QAAAC,UAAA,GAAA/F,KAAA,IAAA4F,cAAA,CAAAI,SAAA;QAAAC,SAAA,GAAAJ,QAAA;QAAAK,gBAAA,GAAAL,QAAA;QAAA,GAAAM,UAAA,IAAA9F,iBAAA;QAAAS,MAAA,GAAAqF,UAAA,EAAAC,MAAA,gBAAAD,UAAA,aAAAL,gBAAA,GAAAK,UAAA,CAAAE,IAAA,cAAAP,gBAAA,uBAAAA,gBAAA,CAAAQ,UAAA;QAAAC,aAAA,GAAAjG,KAAA,CAAA0C,MAAA;QAAAwD,iBAAA,GAAAlG,KAAA,CAAA0C,MAAA;QAAAyD,eAAA,GAAAnG,KAAA,CAAA0C,MAAA,oBAAA0D,OAAA;QAAAC,WAAA,GAAAlB,KAAA,CAAAkB,WAAA;QAAAC,iBAAA,KAAAnB,KAAA,CAAAkB,WAAA;QAAAE,UAAA,KAAAjB,cAAA,CAAAI,SAAA;QAAAc,cAAA,GAAAxG,KAAA,CAAA0C,MAAA,CAAA6D,UAAA;QAAAE,oBAAA,GAAAD,cAAA,CAAA7D,OAAA,KAAA4D,UAAA;MACnDvG,KAAA,CAAAyE,SAAA,aAAiB;QACjB+B,cAAA,CAAA7D,OAAA,GAAA4D,UAAA;MAAA;MAGF,IAAAG,IAAA,GAAI,CACFC,IAAA,CAAAC,SAAA,CAAAvB,KAAc,GACdC,cAAA,EAAAK,SACF,EAGA,EAAAP,YACA,EAAA5E,MAAA,EACEiG,oBAAQ,CACR;QAAAI,wBAAA,GAAA7G,KAAA,CAAA8G,OAAA;UAAA,OACFpH,KAAA,QAAAqH,MAAA,CAAAC,IAAA,CAAA3B,KAAA,EAAA4B,IAAA,WAAAC,GAAA;YAEA,OAAAb,WAAY,IAAAxF,gBAAqB,CAAAqG,GAAI,KAAAb,WAAW,CAAAc,OAAA,CAAAD,GAAA,YAAArG,gBAAA,CAAAqG,GAAA;UAC9C;QAEA,GAAAR,IAAA;QAAAU,GAAA,GAAMpH,KAAA,CAAA8G,OAAO,CAAO,YAAK;UAEzB,IAAAO,OAAA;YAAAC,WAAkB,KAAQ;YAAAC,cAAS,GAAA5B,SAAA,YAAAY,UAAA,IAAAE,oBAAA;YAAAe,gBAAA;UAAA,SAAAN,GAChC,IAAI7B,KAAG;YAA8C,IAAAoC,MAExD,GAAApC,KAAA,CAAA6B,GAAA;cAAArE,GAAkB,GAAAvC,mBAAc,CAAAmH,MAAA,EAAkBjH,MAAA,CAAO;YAAA,IAC3DqC,GAAA,gBAAA4C,UAAA;cAAA,IAAA5E,gBAAA,CAAAqG,GAAA,cAAA1F,uBAAA,CAAA0F,GAAA;gBAAAM,gBAAA,CAAAN,GAAA,IAAArE,GAAA;gBACF;cAEA;cACE,IAAGyD,iBAAO,KAAAD,WAAA,CAAAqB,QAAA,CAAAR,GAAA;gBACRM,gBAAe,CAAAN,GAAA,IAAArE,GAAc;gBAC3B;cAAA;cAEF,IAACqE,GAAA;gBACHjB,aAAA,CAAAtD,OAAA,CAAAuE,GAAA,IAAAS,MAAA,CAAAT,GAAA,EAAAjB,aAAA,CAAAtD,OAAA,CAAAuE,GAAA,GAAArE,GAAA;gBACA;cACE;cAEA,IAAAA,GAAO,EAAE;gBACV,WAAAA,GAAA;kBACH+E,OAAA,CAAAC,IAAA;kBAEO;gBACL;gBACA,IAAAC,yBAAA;kBAAAC,iBAAA;kBAAAC,cAAA;gBACA,IAAQ;kBACV,SAAAC,SAAA,GAAApF,GAAA,CAAAqF,OAAA,GAAA9H,MAAA,CAAA+H,QAAA,KAAAC,KAAA,IAAAN,yBAAA,IAAAM,KAAA,GAAAH,SAAA,CAAA1E,IAAA,IAAA8E,IAAA,GAAAP,yBAAA;oBAES,KAAAQ,KACP,EACAxH,SACA,IAAAsH,KACA,CAAA7H,KAAA;sBAAAgI,gCAAA;oBACM,IAAAzH,SAAA;sBAEF,IAAA0H,IAAA,GAAiBzB,MAAA,CAAAC,IAAA,CAAAlG,SAAA;wBAAA2H,gBAAA,IAAAF,gCAAA,GAAArC,iBAAA,CAAAvD,OAAA,CAAA2F,KAAA,eAAAC,gCAAA,uBAAAA,gCAAA,CAAAC,IAAA;sBACftC,iBAAoB,CAAAvD,OAAI,CAAA2F,KAAS,IAAM;wBAGzC,CAAAE,IAAA,GAAAb,MAAA,CAAAa,IAAA,EAAAC,gBAAA,EAAA3H,SAAA,CAAA0H,IAAA;sBACA,GACFtC,iBAAA,CAAkBvD,OAAA,IAChB,GAAAuD,iBAA6B,CAAAvD,OAAM,CACnC;oBACA;kBAEF;gBACE,SAAA+F,GAAA,EAAe;kBACfX,iBAAS,OAAAC,cAAA,GAAAU,GAAA;gBACV,CAGC;kBAGA;oBAAkB,CAAAZ,yBAAA,IAAAG,SAAA,CAAAU,MAAA,YAAAV,SAAA,CAAAU,MAAA;kBAElB;oBACA,IAAAZ,iBAAA,EAEF,MAAAC,cAAyB;kBACvB;gBACA;cACA;YACF;UAIA;UAAwB,IAAAY,aACtB;YAAA,GAAA7B,MACA,CAAA8B,WAAA,CAAA9B,MAAA,CAAAmB,OAAA,CAAAjC,aAAA,CAAAtD,OAAA,EAAAmG,GAAA,WAAAC,MAAA;cAAA,IACA,CAAAC,CAAA,EAAMC,CAAA,IAAAF,MAAA;gBAAAG,4BAAA;cAAA,OACN,CACFF,CAAA,EAEA,EAAIE,4BAAA,GAAA/C,eAAA,CAAAxD,OAAA,CAAAwG,GAAA,CAAAF,CAAA,eAAAC,4BAAA,uBAAAA,4BAAA,CAAAE,aAAA,KAAAH,CAAA,CACJ;YACE;YAAUnI,SACX,EAAAoF,iBAAA,CAAAvD,OAAA,CAAAmG,GAAA,WAAAO,CAAA;cACD,IAAAH,4BAEA;gBAAAI,IAAQ,GAAKvC,MAAM,CAAAC,IAAA,CAAAqC,CAAA;gBAAAE,IAAA,KAAAL,4BAAA,GAAA/C,eAAA,CAAAxD,OAAA,CAAAwG,GAAA,CAAAE,CAAA,CAAAC,IAAA,gBAAAJ,4BAAA,uBAAAA,4BAAA,CAAAE,aAAA,KAAAC,CAAA,CAAAC,IAAA;cACjB;gBAEA,CAAAA,IAAA,GAAAC;cACE;YAAyD;UAC9C;UACmB;YACzBlC,OACJ;YAAAC,WACH;YASAjC,KAPkB,GACImC,gBACP,EAA2BoB,aACpC;UAKJ;UACU,SAEXjB,OAAA2B,IAAA,EAAAE,QAAA,EAAAC,KAAA;YAAA,IACFC,eAAA,GAAA1I,aAAA,CAAAsI,IAAA;cAAA,CAAAC,IAAA,EAAAvG,IAAA,IAAA0G,eAAA,IACH,GAEA,KAAI,EAGQ,GACNxG,QAAA,CAAAuG,KAAA;cAAAE,cAAA,GAAAJ,IAAA;cAAAhJ,KAAA,GAAAiJ,QAAA,QAAAvJ,QAAA,CAAA6C,KAAA,CAAAyG,IAAA;cAAAK,gBAAA,GAAAzD,eAAA,CAAAxD,OAAA,CAAAwG,GAAA,CAAA5I,KAAA;cAAAsJ,eAAA;YAAA,IACA7G,IAAA;cACA,IAAA8G,yBAAwB;cACxBD,eAAA,GAAAE,eAAA,EAAAD,yBAAA,GAAAF,gBAAA,EAAAjH,OAAA,cAAAmH,yBAAA,cAAAA,yBAAA,GAAAvJ,KAAA,CAAA4C,MAAA,EAAAoG,IAAA,EAAAvG,IAAA,GAAAmD,eAAA,CAAAxD,OAAA,CAAAqH,GAAA,CAAAzJ,KAAA;gBACA6I,aAAO,EAAA7I,KAAA,CAAA0J,WAAA,CAAAJ,eAAA;gBACPlH,OAAA,EAAA4G;cACA;YAAA;YACA,IACAG,eAAA,KAAAC,cAAA,GAAAC,gBAAA,EAAAD,cAAA,UAAAE,eAAA,GAAAK,oBAAA,CACFN,gBAGG,EAAAjH,OAAA;YACT;YACC8G,KAAI,EAEPE,cACE,GAAIxD,eAAgB,CAACxD,OAAM,CAAEqH,GAAC,CAAAzJ,KAAA;cAC1BoC,OAAA,EAAS8G,KAAA;cACbL,aAAQ,EAAI7I,KAAI,CAAA0J,WAAa,CAAAJ,eAAW;cAClCF,cACJ,EAAAC,gBACI,EAAAD,cACF;YAEH,EACM,GAAApJ,KAAM;cACX,IAAA4J,eAAS,GAAAC,kBAAA,CAAAd,IAAA,EAAAtE,UAAA,EAAAG,KAAA,CAAAkF,UAAA,EAAA9C,cAAA;gBAAA+C,OAAA;gBAAAC,OAAA,OAAAC,OAAA,WAAAC,IAAA;kBACXH,OAAA,GAAAG,IAAA;gBACC,CAAI;cASTnD,WAAA,CAAAoD,IAAA,CAAAH,OAAA,GAAAlD,OAAA,CAAAqD,IAAA;gBACFnK,KAAA,CAAAoK,aAAA;gBACF,SAAAC,aAAA;kBAES,OAAA3K,QACP,CAAAkK,eACA,CAAAnH,IAAA,IACA,UAAAzC,KACA;oBACMyD,OAAiB,EAAC2F,cAClB;oBACF1F,eAEF,GAAAvE,KAAA,IAAY,CAAAmH,wBAEP;oBACL,GAAAsD;kBACA;gBACF;gBACF,IAAAU,SAAA,GAAAV,eAAA,CAAAW,KAAA,GAAA7K,QAAA,CAAA8K,QAAA,EAES9K,QAAA,CAAgB6K,KAAA,CAAAX,eAA+B,CAAAW,KAAU,GACnDF,YACX,GAEI,IAAAA,YAAuB;gBAEzBC,SAAO,CAAA3G,KACT,WAAW6E,MAAA,EAAQ;kBAInB;oBAAAjF;kBAAA,IAAAiF,MAAA;kBACAjF,QAAA,IAAAwG,OAAA;gBACF;cACF;YAES;YAMD,OAAAU,OAAa,CAAAC,GAAA,CAAAC,QAAA,KAAoB,aACjC,IAAA/F,KAAA,CAAWgG,KAAA,kBAAuBvD,OAGlC,CAAAwD,IAAA,qBAA2B,EAAA9B,IAAA,EAAW,SAAQ/I,KAAA,CAAA4C,MAAW,QAAAsG,KAAW,MAAQF,IAAA,aAAAvG,IAAA,iBAAA6G,eAAA,GAAAtJ,KAAA;UAE9E;QAGJ,GAAImG,IAAA;MAqBF,OAFY/G,yBAA2B,aAAa;QAGjDyH,GAAA,CAAAC,OAAA,CAAAgE,OAAA,WAAAhC,CAAA;UACL,OAAAA,CAAA;QACF;QAGM,IAAAiC,MAAA;QACD,OAAAd,OAAA,CAAAe,GAAA,CAAAnE,GAAA,CAAAE,WAAA,EAAAkE,IAAA;UACAF,MAAA,KAAAlG,YAAA,MAAAO,SAAA,IAAAC,gBAAA;QACH,gBAAY;UACZ0F,MAAY;QACd;MAEA,GAAS5E,IAAA,GAAAsE,OAAS,CAAAC,GAAwB,CAAAC,QAAU,KAAO,iBAAA/F,KAAA,CAAAgG,KAAA,kBAAAvD,OAAA,CAAAwD,IAAA;QACrDK,QAAO,EAAArE,GAAA;QACTsE,UAAa,EAAArG,KAAA;QAETM;MACN,IAAQyB,GAAC;IACX","ignoreList":[]}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@tamagui/animations-react-native",
|
|
3
|
-
"version": "2.0.0-
|
|
3
|
+
"version": "2.0.0-1769189735283",
|
|
4
4
|
"type": "module",
|
|
5
5
|
"source": "src/index.ts",
|
|
6
6
|
"removeSideEffects": true,
|
|
@@ -32,13 +32,13 @@
|
|
|
32
32
|
}
|
|
33
33
|
},
|
|
34
34
|
"dependencies": {
|
|
35
|
-
"@tamagui/animation-helpers": "2.0.0-
|
|
36
|
-
"@tamagui/constants": "2.0.0-
|
|
37
|
-
"@tamagui/use-presence": "2.0.0-
|
|
38
|
-
"@tamagui/web": "2.0.0-
|
|
35
|
+
"@tamagui/animation-helpers": "2.0.0-1769189735283",
|
|
36
|
+
"@tamagui/constants": "2.0.0-1769189735283",
|
|
37
|
+
"@tamagui/use-presence": "2.0.0-1769189735283",
|
|
38
|
+
"@tamagui/web": "2.0.0-1769189735283"
|
|
39
39
|
},
|
|
40
40
|
"devDependencies": {
|
|
41
|
-
"@tamagui/build": "2.0.0-
|
|
41
|
+
"@tamagui/build": "2.0.0-1769189735283",
|
|
42
42
|
"react": "*",
|
|
43
43
|
"react-native": "0.81.5"
|
|
44
44
|
},
|
package/src/createAnimations.tsx
CHANGED
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import { normalizeTransition } from '@tamagui/animation-helpers'
|
|
1
|
+
import { normalizeTransition, getEffectiveAnimation } from '@tamagui/animation-helpers'
|
|
2
2
|
import { isWeb, useIsomorphicLayoutEffect } from '@tamagui/constants'
|
|
3
3
|
import { ResetPresence, usePresence } from '@tamagui/use-presence'
|
|
4
4
|
import type {
|
|
@@ -203,12 +203,22 @@ export function createAnimations<A extends AnimationsConfig>(
|
|
|
203
203
|
const animateOnly = (props.animateOnly as string[]) || []
|
|
204
204
|
const hasTransitionOnly = !!props.animateOnly
|
|
205
205
|
|
|
206
|
+
// Track if we just finished entering (transition from entering to not entering)
|
|
207
|
+
// must be declared before args array that uses justFinishedEntering
|
|
208
|
+
const isEntering = !!componentState.unmounted
|
|
209
|
+
const wasEnteringRef = React.useRef(isEntering)
|
|
210
|
+
const justFinishedEntering = wasEnteringRef.current && !isEntering
|
|
211
|
+
React.useEffect(() => {
|
|
212
|
+
wasEnteringRef.current = isEntering
|
|
213
|
+
})
|
|
214
|
+
|
|
206
215
|
const args = [
|
|
207
216
|
JSON.stringify(style),
|
|
208
217
|
componentState,
|
|
209
218
|
isExiting,
|
|
210
219
|
!!onDidAnimate,
|
|
211
220
|
isDark,
|
|
221
|
+
justFinishedEntering,
|
|
212
222
|
]
|
|
213
223
|
|
|
214
224
|
// check if there is any style that is not supported by native driver
|
|
@@ -226,6 +236,14 @@ export function createAnimations<A extends AnimationsConfig>(
|
|
|
226
236
|
const runners: Function[] = []
|
|
227
237
|
const completions: Promise<void>[] = []
|
|
228
238
|
|
|
239
|
+
// Determine animation state for enter/exit transitions
|
|
240
|
+
// Use 'enter' if we're entering OR if we just finished entering
|
|
241
|
+
const animationState: 'enter' | 'exit' | 'default' = isExiting
|
|
242
|
+
? 'exit'
|
|
243
|
+
: isEntering || justFinishedEntering
|
|
244
|
+
? 'enter'
|
|
245
|
+
: 'default'
|
|
246
|
+
|
|
229
247
|
const nonAnimatedStyle = {}
|
|
230
248
|
|
|
231
249
|
for (const key in style) {
|
|
@@ -332,7 +350,12 @@ export function createAnimations<A extends AnimationsConfig>(
|
|
|
332
350
|
}
|
|
333
351
|
|
|
334
352
|
if (value) {
|
|
335
|
-
const animationConfig = getAnimationConfig(
|
|
353
|
+
const animationConfig = getAnimationConfig(
|
|
354
|
+
key,
|
|
355
|
+
animations,
|
|
356
|
+
props.transition,
|
|
357
|
+
animationState
|
|
358
|
+
)
|
|
336
359
|
|
|
337
360
|
let resolve
|
|
338
361
|
const promise = new Promise<void>((res) => {
|
|
@@ -448,7 +471,8 @@ function getInterpolated(current: number, next: number, postfix = 'deg') {
|
|
|
448
471
|
function getAnimationConfig(
|
|
449
472
|
key: string,
|
|
450
473
|
animations: AnimationsConfig,
|
|
451
|
-
transition?: TransitionProp
|
|
474
|
+
transition?: TransitionProp,
|
|
475
|
+
animationState: 'enter' | 'exit' | 'default' = 'default'
|
|
452
476
|
): AnimationConfig {
|
|
453
477
|
const normalized = normalizeTransition(transition)
|
|
454
478
|
const shortKey = transformShorthands[key]
|
|
@@ -464,11 +488,13 @@ function getAnimationConfig(
|
|
|
464
488
|
animationType = propAnimation
|
|
465
489
|
} else if (propAnimation && typeof propAnimation === 'object') {
|
|
466
490
|
// Config object: { x: { type: 'quick', delay: 100 } }
|
|
467
|
-
|
|
491
|
+
// Use effective animation based on state if no explicit type in config
|
|
492
|
+
animationType =
|
|
493
|
+
propAnimation.type || getEffectiveAnimation(normalized, animationState)
|
|
468
494
|
extraConf = propAnimation
|
|
469
|
-
} else
|
|
470
|
-
// Fall back to default
|
|
471
|
-
animationType = normalized
|
|
495
|
+
} else {
|
|
496
|
+
// Fall back to effective animation based on state (enter/exit/default)
|
|
497
|
+
animationType = getEffectiveAnimation(normalized, animationState)
|
|
472
498
|
}
|
|
473
499
|
|
|
474
500
|
// Apply global delay if no property-specific delay
|
|
@@ -10,7 +10,7 @@
|
|
|
10
10
|
"src/createAnimations.tsx"
|
|
11
11
|
],
|
|
12
12
|
"sourcesContent": [
|
|
13
|
-
"import { normalizeTransition } from '@tamagui/animation-helpers'\nimport { isWeb, useIsomorphicLayoutEffect } from '@tamagui/constants'\nimport { ResetPresence, usePresence } from '@tamagui/use-presence'\nimport type {\n AnimatedNumberStrategy,\n AnimationDriver,\n TransitionProp,\n UniversalAnimatedNumber,\n UseAnimatedNumberReaction,\n UseAnimatedNumberStyle,\n} from '@tamagui/web'\nimport { useEvent, useThemeWithState } from '@tamagui/web'\nimport React from 'react'\nimport { Animated, type Text, type View } from 'react-native'\n\n// Helper to resolve dynamic theme values like {dynamic: {dark: \"value\", light: undefined}}\nconst resolveDynamicValue = (value: any, isDark: boolean): any => {\n if (value && typeof value === 'object' && 'dynamic' in value) {\n const dynamicValue = isDark ? value.dynamic.dark : value.dynamic.light\n return dynamicValue\n }\n return value\n}\n\ntype AnimationsConfig<A extends Object = any> = { [Key in keyof A]: AnimationConfig }\n\ntype SpringConfig = { type?: 'spring' } & Partial<\n Pick<\n Animated.SpringAnimationConfig,\n | 'delay'\n | 'bounciness'\n | 'damping'\n | 'friction'\n | 'mass'\n | 'overshootClamping'\n | 'speed'\n | 'stiffness'\n | 'tension'\n | 'velocity'\n >\n>\n\ntype TimingConfig = { type: 'timing' } & Partial<Animated.TimingAnimationConfig>\n\ntype AnimationConfig = SpringConfig | TimingConfig\n\nconst animatedStyleKey = {\n transform: true,\n opacity: true,\n}\n\nconst colorStyleKey = {\n backgroundColor: true,\n color: true,\n borderColor: true,\n borderLeftColor: true,\n borderRightColor: true,\n borderTopColor: true,\n borderBottomColor: true,\n}\n\n// these are the styles that are costly to animate because they don't support useNativeDriver and some of them are changing layout\nconst costlyToAnimateStyleKey = {\n borderRadius: true,\n borderTopLeftRadius: true,\n borderTopRightRadius: true,\n borderBottomLeftRadius: true,\n borderBottomRightRadius: true,\n borderWidth: true,\n borderLeftWidth: true,\n borderRightWidth: true,\n borderTopWidth: true,\n borderBottomWidth: true,\n ...colorStyleKey,\n // TODO for other keys like height or width, it's better to not add them here till layout animations are ready\n}\n\nexport const AnimatedView: Animated.AnimatedComponent<typeof View> = Animated.View\nexport const AnimatedText: Animated.AnimatedComponent<typeof Text> = Animated.Text\n\nexport function useAnimatedNumber(\n initial: number\n): UniversalAnimatedNumber<Animated.Value> {\n const state = React.useRef(\n null as any as {\n val: Animated.Value\n composite: Animated.CompositeAnimation | null\n strategy: AnimatedNumberStrategy\n }\n )\n if (!state.current) {\n state.current = {\n composite: null,\n val: new Animated.Value(initial),\n strategy: { type: 'spring' },\n }\n }\n\n return {\n getInstance() {\n return state.current.val\n },\n getValue() {\n return state.current.val['_value']\n },\n stop() {\n state.current.composite?.stop()\n state.current.composite = null\n },\n setValue(next: number, { type, ...config } = { type: 'spring' }, onFinish) {\n const val = state.current.val\n\n const handleFinish = onFinish\n ? ({ finished }) => (finished ? onFinish() : null)\n : undefined\n\n if (type === 'direct') {\n val.setValue(next)\n } else if (type === 'spring') {\n state.current.composite?.stop()\n const composite = Animated.spring(val, {\n ...config,\n toValue: next,\n useNativeDriver: !isWeb,\n })\n composite.start(handleFinish)\n state.current.composite = composite\n } else {\n state.current.composite?.stop()\n const composite = Animated.timing(val, {\n ...config,\n toValue: next,\n useNativeDriver: !isWeb,\n })\n composite.start(handleFinish)\n state.current.composite = composite\n }\n },\n }\n}\n\ntype RNAnimatedNum = UniversalAnimatedNumber<Animated.Value>\n\nexport const useAnimatedNumberReaction: UseAnimatedNumberReaction<RNAnimatedNum> = (\n { value },\n onValue\n) => {\n const onChange = useEvent((current) => {\n onValue(current.value)\n })\n\n React.useEffect(() => {\n const id = value.getInstance().addListener(onChange)\n return () => {\n value.getInstance().removeListener(id)\n }\n }, [value, onChange])\n}\n\nexport const useAnimatedNumberStyle: UseAnimatedNumberStyle<RNAnimatedNum> = (\n value,\n getStyle\n) => {\n return getStyle(value.getInstance())\n}\n\nexport function createAnimations<A extends AnimationsConfig>(\n animations: A\n): AnimationDriver<A> {\n return {\n isReactNative: true,\n animations,\n View: AnimatedView,\n Text: AnimatedText,\n useAnimatedNumber,\n useAnimatedNumberReaction,\n useAnimatedNumberStyle,\n usePresence,\n ResetPresence,\n useAnimations: ({ props, onDidAnimate, style, componentState, presence }) => {\n const isDisabled = isWeb && componentState.unmounted === true\n const isExiting = presence?.[0] === false\n const sendExitComplete = presence?.[1]\n const [, themeState] = useThemeWithState({})\n // Check scheme first, then fall back to checking theme name for 'dark'\n const isDark = themeState?.scheme === 'dark' || themeState?.name?.startsWith('dark')\n\n /** store Animated value of each key e.g: color: AnimatedValue */\n const animateStyles = React.useRef<Record<string, Animated.Value>>({})\n const animatedTranforms = React.useRef<{ [key: string]: Animated.Value }[]>([])\n const animationsState = React.useRef(\n new WeakMap<\n Animated.Value,\n {\n interpolation: Animated.AnimatedInterpolation<any>\n current?: number | string | undefined\n // only for colors\n animateToValue?: number\n }\n >()\n )\n\n const animateOnly = (props.animateOnly as string[]) || []\n const hasTransitionOnly = !!props.animateOnly\n\n const args = [\n JSON.stringify(style),\n componentState,\n isExiting,\n !!onDidAnimate,\n isDark,\n ]\n\n // check if there is any style that is not supported by native driver\n const isThereNoNativeStyleKeys = React.useMemo(() => {\n if (isWeb) return true\n return Object.keys(style).some((key) => {\n if (animateOnly) {\n return !animatedStyleKey[key] && animateOnly.indexOf(key) === -1\n }\n return !animatedStyleKey[key]\n })\n }, args)\n\n const res = React.useMemo(() => {\n const runners: Function[] = []\n const completions: Promise<void>[] = []\n\n const nonAnimatedStyle = {}\n\n for (const key in style) {\n const rawVal = style[key]\n // Resolve dynamic theme values (like $theme-dark)\n const val = resolveDynamicValue(rawVal, isDark)\n if (val === undefined) continue\n\n if (isDisabled) {\n continue\n }\n\n if (animatedStyleKey[key] == null && !costlyToAnimateStyleKey[key]) {\n nonAnimatedStyle[key] = val\n continue\n }\n\n if (hasTransitionOnly && !animateOnly.includes(key)) {\n nonAnimatedStyle[key] = val\n continue\n }\n\n if (key !== 'transform') {\n animateStyles.current[key] = update(key, animateStyles.current[key], val)\n continue\n }\n // key: 'transform'\n // for now just support one transform key\n if (!val) continue\n if (typeof val === 'string') {\n console.warn(`Warning: Tamagui can't animate string transforms yet!`)\n continue\n }\n\n for (const [index, transform] of val.entries()) {\n if (!transform) continue\n // tkey: e.g: 'translateX'\n const tkey = Object.keys(transform)[0]\n const currentTransform = animatedTranforms.current[index]?.[tkey]\n animatedTranforms.current[index] = {\n [tkey]: update(tkey, currentTransform, transform[tkey]),\n }\n animatedTranforms.current = [...animatedTranforms.current]\n }\n }\n\n const animatedStyle = {\n ...Object.fromEntries(\n Object.entries(animateStyles.current).map(([k, v]) => [\n k,\n animationsState.current!.get(v)?.interpolation || v,\n ])\n ),\n transform: animatedTranforms.current.map((r) => {\n const key = Object.keys(r)[0]\n const val = animationsState.current!.get(r[key])?.interpolation || r[key]\n return { [key]: val }\n }),\n }\n\n return {\n runners,\n completions,\n style: [nonAnimatedStyle, animatedStyle],\n }\n\n function update(\n key: string,\n animated: Animated.Value | undefined,\n valIn: string | number\n ) {\n const isColorStyleKey = colorStyleKey[key]\n const [val, type] = isColorStyleKey ? [0, undefined] : getValue(valIn)\n let animateToValue = val\n const value = animated || new Animated.Value(val)\n const curInterpolation = animationsState.current.get(value)\n\n let interpolateArgs: any\n if (type) {\n interpolateArgs = getInterpolated(\n curInterpolation?.current ?? value['_value'],\n val,\n type\n )\n animationsState.current!.set(value, {\n interpolation: value.interpolate(interpolateArgs),\n current: val,\n })\n }\n\n if (isColorStyleKey) {\n animateToValue = curInterpolation?.animateToValue ? 0 : 1\n interpolateArgs = getColorInterpolated(\n curInterpolation?.current as string,\n // valIn is the next color\n valIn as string,\n animateToValue\n )\n animationsState.current!.set(value, {\n current: valIn,\n interpolation: value.interpolate(interpolateArgs),\n animateToValue: curInterpolation?.animateToValue ? 0 : 1,\n })\n }\n\n if (value) {\n const animationConfig = getAnimationConfig(key, animations, props.transition)\n\n let resolve\n const promise = new Promise<void>((res) => {\n resolve = res\n })\n completions.push(promise)\n\n runners.push(() => {\n value.stopAnimation()\n\n function getAnimation() {\n return Animated[animationConfig.type || 'spring'](value, {\n toValue: animateToValue,\n useNativeDriver: !isWeb && !isThereNoNativeStyleKeys,\n ...animationConfig,\n })\n }\n\n const animation = animationConfig.delay\n ? Animated.sequence([\n Animated.delay(animationConfig.delay),\n getAnimation(),\n ])\n : getAnimation()\n\n animation.start(({ finished }) => {\n if (finished) {\n resolve()\n }\n })\n })\n }\n\n if (process.env.NODE_ENV === 'development') {\n if (props['debug'] === 'verbose') {\n // prettier-ignore\n console.info(\n ' 💠 animate',\n key,\n `from (${value['_value']}) to`,\n valIn,\n `(${val})`,\n 'type',\n type,\n 'interpolate',\n interpolateArgs\n )\n }\n }\n return value\n }\n }, args)\n\n useIsomorphicLayoutEffect(() => {\n res.runners.forEach((r) => r())\n let cancel = false\n Promise.all(res.completions).then(() => {\n if (cancel) return\n onDidAnimate?.()\n if (isExiting) {\n sendExitComplete?.()\n }\n })\n return () => {\n cancel = true\n }\n }, args)\n\n if (process.env.NODE_ENV === 'development') {\n if (props['debug'] === 'verbose') {\n console.info(`Animated`, { response: res, inputStyle: style, isExiting })\n }\n }\n\n return res\n },\n }\n}\n\nfunction getColorInterpolated(\n currentColor: string | undefined,\n nextColor: string,\n animateToValue: number\n) {\n const inputRange = [0, 1]\n const outputRange = [currentColor ? currentColor : nextColor, nextColor]\n if (animateToValue === 0) {\n // because we are animating from value 1 to 0, we need to put target color at the beginning\n outputRange.reverse()\n }\n return {\n inputRange,\n outputRange,\n }\n}\n\nfunction getInterpolated(current: number, next: number, postfix = 'deg') {\n if (next === current) {\n current = next - 0.000000001\n }\n const inputRange = [current, next]\n const outputRange = [`${current}${postfix}`, `${next}${postfix}`]\n if (next < current) {\n inputRange.reverse()\n outputRange.reverse()\n }\n return {\n inputRange,\n outputRange,\n }\n}\n\nfunction getAnimationConfig(\n key: string,\n animations: AnimationsConfig,\n transition?: TransitionProp\n): AnimationConfig {\n const normalized = normalizeTransition(transition)\n const shortKey = transformShorthands[key]\n\n // Check for property-specific animation\n const propAnimation = normalized.properties[key] ?? normalized.properties[shortKey]\n\n let animationType: string | null = null\n let extraConf: any = {}\n\n if (typeof propAnimation === 'string') {\n // Direct animation name: { x: 'quick' }\n animationType = propAnimation\n } else if (propAnimation && typeof propAnimation === 'object') {\n // Config object: { x: { type: 'quick', delay: 100 } }\n animationType = propAnimation.type || normalized.default\n extraConf = propAnimation\n } else if (normalized.default) {\n // Fall back to default\n animationType = normalized.default\n }\n\n // Apply global delay if no property-specific delay\n if (normalized.delay && !extraConf.delay) {\n extraConf = { ...extraConf, delay: normalized.delay }\n }\n\n const found = animationType ? animations[animationType] : {}\n return {\n ...found,\n ...extraConf,\n }\n}\n\n// try both combos\nconst transformShorthands = {\n x: 'translateX',\n y: 'translateY',\n translateX: 'x',\n translateY: 'y',\n}\n\nfunction getValue(input: number | string, isColor = false) {\n if (typeof input !== 'string') {\n return [input] as const\n }\n const [_, number, after] = input.match(/([-0-9]+)(deg|%|px)/) ?? []\n return [+number, after] as const\n}\n"
|
|
13
|
+
"import { normalizeTransition, getEffectiveAnimation } from '@tamagui/animation-helpers'\nimport { isWeb, useIsomorphicLayoutEffect } from '@tamagui/constants'\nimport { ResetPresence, usePresence } from '@tamagui/use-presence'\nimport type {\n AnimatedNumberStrategy,\n AnimationDriver,\n TransitionProp,\n UniversalAnimatedNumber,\n UseAnimatedNumberReaction,\n UseAnimatedNumberStyle,\n} from '@tamagui/web'\nimport { useEvent, useThemeWithState } from '@tamagui/web'\nimport React from 'react'\nimport { Animated, type Text, type View } from 'react-native'\n\n// Helper to resolve dynamic theme values like {dynamic: {dark: \"value\", light: undefined}}\nconst resolveDynamicValue = (value: any, isDark: boolean): any => {\n if (value && typeof value === 'object' && 'dynamic' in value) {\n const dynamicValue = isDark ? value.dynamic.dark : value.dynamic.light\n return dynamicValue\n }\n return value\n}\n\ntype AnimationsConfig<A extends Object = any> = { [Key in keyof A]: AnimationConfig }\n\ntype SpringConfig = { type?: 'spring' } & Partial<\n Pick<\n Animated.SpringAnimationConfig,\n | 'delay'\n | 'bounciness'\n | 'damping'\n | 'friction'\n | 'mass'\n | 'overshootClamping'\n | 'speed'\n | 'stiffness'\n | 'tension'\n | 'velocity'\n >\n>\n\ntype TimingConfig = { type: 'timing' } & Partial<Animated.TimingAnimationConfig>\n\ntype AnimationConfig = SpringConfig | TimingConfig\n\nconst animatedStyleKey = {\n transform: true,\n opacity: true,\n}\n\nconst colorStyleKey = {\n backgroundColor: true,\n color: true,\n borderColor: true,\n borderLeftColor: true,\n borderRightColor: true,\n borderTopColor: true,\n borderBottomColor: true,\n}\n\n// these are the styles that are costly to animate because they don't support useNativeDriver and some of them are changing layout\nconst costlyToAnimateStyleKey = {\n borderRadius: true,\n borderTopLeftRadius: true,\n borderTopRightRadius: true,\n borderBottomLeftRadius: true,\n borderBottomRightRadius: true,\n borderWidth: true,\n borderLeftWidth: true,\n borderRightWidth: true,\n borderTopWidth: true,\n borderBottomWidth: true,\n ...colorStyleKey,\n // TODO for other keys like height or width, it's better to not add them here till layout animations are ready\n}\n\nexport const AnimatedView: Animated.AnimatedComponent<typeof View> = Animated.View\nexport const AnimatedText: Animated.AnimatedComponent<typeof Text> = Animated.Text\n\nexport function useAnimatedNumber(\n initial: number\n): UniversalAnimatedNumber<Animated.Value> {\n const state = React.useRef(\n null as any as {\n val: Animated.Value\n composite: Animated.CompositeAnimation | null\n strategy: AnimatedNumberStrategy\n }\n )\n if (!state.current) {\n state.current = {\n composite: null,\n val: new Animated.Value(initial),\n strategy: { type: 'spring' },\n }\n }\n\n return {\n getInstance() {\n return state.current.val\n },\n getValue() {\n return state.current.val['_value']\n },\n stop() {\n state.current.composite?.stop()\n state.current.composite = null\n },\n setValue(next: number, { type, ...config } = { type: 'spring' }, onFinish) {\n const val = state.current.val\n\n const handleFinish = onFinish\n ? ({ finished }) => (finished ? onFinish() : null)\n : undefined\n\n if (type === 'direct') {\n val.setValue(next)\n } else if (type === 'spring') {\n state.current.composite?.stop()\n const composite = Animated.spring(val, {\n ...config,\n toValue: next,\n useNativeDriver: !isWeb,\n })\n composite.start(handleFinish)\n state.current.composite = composite\n } else {\n state.current.composite?.stop()\n const composite = Animated.timing(val, {\n ...config,\n toValue: next,\n useNativeDriver: !isWeb,\n })\n composite.start(handleFinish)\n state.current.composite = composite\n }\n },\n }\n}\n\ntype RNAnimatedNum = UniversalAnimatedNumber<Animated.Value>\n\nexport const useAnimatedNumberReaction: UseAnimatedNumberReaction<RNAnimatedNum> = (\n { value },\n onValue\n) => {\n const onChange = useEvent((current) => {\n onValue(current.value)\n })\n\n React.useEffect(() => {\n const id = value.getInstance().addListener(onChange)\n return () => {\n value.getInstance().removeListener(id)\n }\n }, [value, onChange])\n}\n\nexport const useAnimatedNumberStyle: UseAnimatedNumberStyle<RNAnimatedNum> = (\n value,\n getStyle\n) => {\n return getStyle(value.getInstance())\n}\n\nexport function createAnimations<A extends AnimationsConfig>(\n animations: A\n): AnimationDriver<A> {\n return {\n isReactNative: true,\n animations,\n View: AnimatedView,\n Text: AnimatedText,\n useAnimatedNumber,\n useAnimatedNumberReaction,\n useAnimatedNumberStyle,\n usePresence,\n ResetPresence,\n useAnimations: ({ props, onDidAnimate, style, componentState, presence }) => {\n const isDisabled = isWeb && componentState.unmounted === true\n const isExiting = presence?.[0] === false\n const sendExitComplete = presence?.[1]\n const [, themeState] = useThemeWithState({})\n // Check scheme first, then fall back to checking theme name for 'dark'\n const isDark = themeState?.scheme === 'dark' || themeState?.name?.startsWith('dark')\n\n /** store Animated value of each key e.g: color: AnimatedValue */\n const animateStyles = React.useRef<Record<string, Animated.Value>>({})\n const animatedTranforms = React.useRef<{ [key: string]: Animated.Value }[]>([])\n const animationsState = React.useRef(\n new WeakMap<\n Animated.Value,\n {\n interpolation: Animated.AnimatedInterpolation<any>\n current?: number | string | undefined\n // only for colors\n animateToValue?: number\n }\n >()\n )\n\n const animateOnly = (props.animateOnly as string[]) || []\n const hasTransitionOnly = !!props.animateOnly\n\n // Track if we just finished entering (transition from entering to not entering)\n // must be declared before args array that uses justFinishedEntering\n const isEntering = !!componentState.unmounted\n const wasEnteringRef = React.useRef(isEntering)\n const justFinishedEntering = wasEnteringRef.current && !isEntering\n React.useEffect(() => {\n wasEnteringRef.current = isEntering\n })\n\n const args = [\n JSON.stringify(style),\n componentState,\n isExiting,\n !!onDidAnimate,\n isDark,\n justFinishedEntering,\n ]\n\n // check if there is any style that is not supported by native driver\n const isThereNoNativeStyleKeys = React.useMemo(() => {\n if (isWeb) return true\n return Object.keys(style).some((key) => {\n if (animateOnly) {\n return !animatedStyleKey[key] && animateOnly.indexOf(key) === -1\n }\n return !animatedStyleKey[key]\n })\n }, args)\n\n const res = React.useMemo(() => {\n const runners: Function[] = []\n const completions: Promise<void>[] = []\n\n // Determine animation state for enter/exit transitions\n // Use 'enter' if we're entering OR if we just finished entering\n const animationState: 'enter' | 'exit' | 'default' = isExiting\n ? 'exit'\n : isEntering || justFinishedEntering\n ? 'enter'\n : 'default'\n\n const nonAnimatedStyle = {}\n\n for (const key in style) {\n const rawVal = style[key]\n // Resolve dynamic theme values (like $theme-dark)\n const val = resolveDynamicValue(rawVal, isDark)\n if (val === undefined) continue\n\n if (isDisabled) {\n continue\n }\n\n if (animatedStyleKey[key] == null && !costlyToAnimateStyleKey[key]) {\n nonAnimatedStyle[key] = val\n continue\n }\n\n if (hasTransitionOnly && !animateOnly.includes(key)) {\n nonAnimatedStyle[key] = val\n continue\n }\n\n if (key !== 'transform') {\n animateStyles.current[key] = update(key, animateStyles.current[key], val)\n continue\n }\n // key: 'transform'\n // for now just support one transform key\n if (!val) continue\n if (typeof val === 'string') {\n console.warn(`Warning: Tamagui can't animate string transforms yet!`)\n continue\n }\n\n for (const [index, transform] of val.entries()) {\n if (!transform) continue\n // tkey: e.g: 'translateX'\n const tkey = Object.keys(transform)[0]\n const currentTransform = animatedTranforms.current[index]?.[tkey]\n animatedTranforms.current[index] = {\n [tkey]: update(tkey, currentTransform, transform[tkey]),\n }\n animatedTranforms.current = [...animatedTranforms.current]\n }\n }\n\n const animatedStyle = {\n ...Object.fromEntries(\n Object.entries(animateStyles.current).map(([k, v]) => [\n k,\n animationsState.current!.get(v)?.interpolation || v,\n ])\n ),\n transform: animatedTranforms.current.map((r) => {\n const key = Object.keys(r)[0]\n const val = animationsState.current!.get(r[key])?.interpolation || r[key]\n return { [key]: val }\n }),\n }\n\n return {\n runners,\n completions,\n style: [nonAnimatedStyle, animatedStyle],\n }\n\n function update(\n key: string,\n animated: Animated.Value | undefined,\n valIn: string | number\n ) {\n const isColorStyleKey = colorStyleKey[key]\n const [val, type] = isColorStyleKey ? [0, undefined] : getValue(valIn)\n let animateToValue = val\n const value = animated || new Animated.Value(val)\n const curInterpolation = animationsState.current.get(value)\n\n let interpolateArgs: any\n if (type) {\n interpolateArgs = getInterpolated(\n curInterpolation?.current ?? value['_value'],\n val,\n type\n )\n animationsState.current!.set(value, {\n interpolation: value.interpolate(interpolateArgs),\n current: val,\n })\n }\n\n if (isColorStyleKey) {\n animateToValue = curInterpolation?.animateToValue ? 0 : 1\n interpolateArgs = getColorInterpolated(\n curInterpolation?.current as string,\n // valIn is the next color\n valIn as string,\n animateToValue\n )\n animationsState.current!.set(value, {\n current: valIn,\n interpolation: value.interpolate(interpolateArgs),\n animateToValue: curInterpolation?.animateToValue ? 0 : 1,\n })\n }\n\n if (value) {\n const animationConfig = getAnimationConfig(\n key,\n animations,\n props.transition,\n animationState\n )\n\n let resolve\n const promise = new Promise<void>((res) => {\n resolve = res\n })\n completions.push(promise)\n\n runners.push(() => {\n value.stopAnimation()\n\n function getAnimation() {\n return Animated[animationConfig.type || 'spring'](value, {\n toValue: animateToValue,\n useNativeDriver: !isWeb && !isThereNoNativeStyleKeys,\n ...animationConfig,\n })\n }\n\n const animation = animationConfig.delay\n ? Animated.sequence([\n Animated.delay(animationConfig.delay),\n getAnimation(),\n ])\n : getAnimation()\n\n animation.start(({ finished }) => {\n if (finished) {\n resolve()\n }\n })\n })\n }\n\n if (process.env.NODE_ENV === 'development') {\n if (props['debug'] === 'verbose') {\n // prettier-ignore\n console.info(\n ' 💠 animate',\n key,\n `from (${value['_value']}) to`,\n valIn,\n `(${val})`,\n 'type',\n type,\n 'interpolate',\n interpolateArgs\n )\n }\n }\n return value\n }\n }, args)\n\n useIsomorphicLayoutEffect(() => {\n res.runners.forEach((r) => r())\n let cancel = false\n Promise.all(res.completions).then(() => {\n if (cancel) return\n onDidAnimate?.()\n if (isExiting) {\n sendExitComplete?.()\n }\n })\n return () => {\n cancel = true\n }\n }, args)\n\n if (process.env.NODE_ENV === 'development') {\n if (props['debug'] === 'verbose') {\n console.info(`Animated`, { response: res, inputStyle: style, isExiting })\n }\n }\n\n return res\n },\n }\n}\n\nfunction getColorInterpolated(\n currentColor: string | undefined,\n nextColor: string,\n animateToValue: number\n) {\n const inputRange = [0, 1]\n const outputRange = [currentColor ? currentColor : nextColor, nextColor]\n if (animateToValue === 0) {\n // because we are animating from value 1 to 0, we need to put target color at the beginning\n outputRange.reverse()\n }\n return {\n inputRange,\n outputRange,\n }\n}\n\nfunction getInterpolated(current: number, next: number, postfix = 'deg') {\n if (next === current) {\n current = next - 0.000000001\n }\n const inputRange = [current, next]\n const outputRange = [`${current}${postfix}`, `${next}${postfix}`]\n if (next < current) {\n inputRange.reverse()\n outputRange.reverse()\n }\n return {\n inputRange,\n outputRange,\n }\n}\n\nfunction getAnimationConfig(\n key: string,\n animations: AnimationsConfig,\n transition?: TransitionProp,\n animationState: 'enter' | 'exit' | 'default' = 'default'\n): AnimationConfig {\n const normalized = normalizeTransition(transition)\n const shortKey = transformShorthands[key]\n\n // Check for property-specific animation\n const propAnimation = normalized.properties[key] ?? normalized.properties[shortKey]\n\n let animationType: string | null = null\n let extraConf: any = {}\n\n if (typeof propAnimation === 'string') {\n // Direct animation name: { x: 'quick' }\n animationType = propAnimation\n } else if (propAnimation && typeof propAnimation === 'object') {\n // Config object: { x: { type: 'quick', delay: 100 } }\n // Use effective animation based on state if no explicit type in config\n animationType =\n propAnimation.type || getEffectiveAnimation(normalized, animationState)\n extraConf = propAnimation\n } else {\n // Fall back to effective animation based on state (enter/exit/default)\n animationType = getEffectiveAnimation(normalized, animationState)\n }\n\n // Apply global delay if no property-specific delay\n if (normalized.delay && !extraConf.delay) {\n extraConf = { ...extraConf, delay: normalized.delay }\n }\n\n const found = animationType ? animations[animationType] : {}\n return {\n ...found,\n ...extraConf,\n }\n}\n\n// try both combos\nconst transformShorthands = {\n x: 'translateX',\n y: 'translateY',\n translateX: 'x',\n translateY: 'y',\n}\n\nfunction getValue(input: number | string, isColor = false) {\n if (typeof input !== 'string') {\n return [input] as const\n }\n const [_, number, after] = input.match(/([-0-9]+)(deg|%|px)/) ?? []\n return [+number, after] as const\n}\n"
|
|
14
14
|
],
|
|
15
15
|
"version": 3
|
|
16
16
|
}
|