@tamagui/animations-motion 1.132.9 → 1.132.10

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.
@@ -15,7 +15,14 @@ import {
15
15
  useMotionValue,
16
16
  useMotionValueEvent
17
17
  } from "motion/react";
18
- import React, { forwardRef, useEffect, useMemo, useRef, useState } from "react";
18
+ import React, {
19
+ forwardRef,
20
+ useEffect,
21
+ useLayoutEffect,
22
+ useMemo,
23
+ useRef,
24
+ useState
25
+ } from "react";
19
26
  import { jsx } from "react/jsx-runtime";
20
27
  const MotionValueStrategy = /* @__PURE__ */ new WeakMap();
21
28
  function createAnimations(animationsProp) {
@@ -37,7 +44,10 @@ function createAnimations(animationsProp) {
37
44
  usePresence,
38
45
  ResetPresence,
39
46
  useAnimations: (animationProps) => {
40
- const { props, style, componentState, stateRef, useStyleEmitter, presence } = animationProps, animationKey = Array.isArray(props.animation) ? props.animation[0] : props.animation, disableAnimation = componentState.unmounted === !0 || !animationKey, isExiting = presence?.[0] === !1, sendExitComplete = presence?.[1], isFirstRender = useRef(!0), [scope, animate] = useAnimate(), lastAnimationStyle = useRef(null), lastDontAnimate = useRef({}), controls = useRef(null), styleKey = JSON.stringify(style), shouldDebug = process.env.NODE_ENV === "development" && props.debug && props.debug !== "profile", {
47
+ const { props, style, componentState, stateRef, useStyleEmitter, presence } = animationProps, animationKey = Array.isArray(props.animation) ? props.animation[0] : props.animation, disableAnimation = componentState.unmounted === !0 || !animationKey, isExiting = presence?.[0] === !1, sendExitComplete = presence?.[1], isFirstRender = useRef(!0), [scope, animate] = useAnimate(), lastAnimationStyle = useRef(null), controls = useRef(null), styleKey = JSON.stringify(style), shouldDebug = (
48
+ // process.env.NODE_ENV === 'development' &&
49
+ props.debug && props.debug !== "profile"
50
+ ), {
41
51
  dontAnimate = {},
42
52
  doAnimate,
43
53
  animationOptions
@@ -45,12 +55,10 @@ function createAnimations(animationsProp) {
45
55
  props,
46
56
  style,
47
57
  disableAnimation
48
- ), [isExiting, animationKey, styleKey]), animationsQueue = useRef([]), lastAnimateAt = useRef(0), minTimeBetweenAnimations = 16.667, disposed = useRef(!1);
49
- useIsomorphicLayoutEffect(() => {
50
- lastDontAnimate.current = dontAnimate;
51
- }), useEffect(() => (isFirstRender.current = !1, () => {
58
+ ), [isExiting, animationKey, styleKey]), animationsQueue = useRef([]), lastAnimateAt = useRef(0), minTimeBetweenAnimations = 16.667, disposed = useRef(!1), [firstRenderStyle] = useState(style), lastDontAnimate = useRef(firstRenderStyle);
59
+ useLayoutEffect(() => () => {
52
60
  disposed.current = !0;
53
- }), []);
61
+ }, []);
54
62
  const runAnimation = (props2) => {
55
63
  const waitForNextAnimationFrame = () => {
56
64
  const queue = animationsQueue.current, last = queue[queue.length - 1];
@@ -61,31 +69,31 @@ function createAnimations(animationsProp) {
61
69
  if (!props2) return;
62
70
  const elapsed = Date.now() - lastAnimateAt.current;
63
71
  elapsed > minTimeBetweenAnimations && animationsQueue.current.length && console.info("slow", elapsed, { props: props2 }), scope.current ? flushAnimation(props2) : disposed.current || requestAnimationFrame(waitForNextAnimationFrame);
64
- }, hasQueue = animationsQueue.current.length, shouldWait = hasQueue || Date.now() - lastAnimateAt.current > minTimeBetweenAnimations;
72
+ }, hasQueue = animationsQueue.current.length, shouldWait = hasQueue || lastAnimateAt.current && Date.now() - lastAnimateAt.current > minTimeBetweenAnimations;
65
73
  isExiting || isFirstRender.current || scope.current && !shouldWait ? flushAnimation(props2) : (animationsQueue.current.push(props2), hasQueue || waitForNextAnimationFrame());
66
- }, flushAnimation = ({
74
+ }, updateFirstAnimationStyle = () => stateRef.current.host instanceof HTMLElement ? lastAnimationStyle.current ? !1 : (lastAnimationStyle.current = style, animate(scope.current, doAnimate || {}, {
75
+ type: !1
76
+ }).complete(), scope.animations = [], shouldDebug && (console.groupCollapsed("[motion] \u{1F30A} FIRST"), console.info(doAnimate), console.groupEnd()), !0) : !1, flushAnimation = ({
67
77
  doAnimate: doAnimate2,
68
78
  dontAnimate: dontAnimate2,
69
79
  animationOptions: animationOptions2 = {}
70
80
  }) => {
71
81
  try {
72
82
  const node = stateRef.current.host;
73
- if (!(node instanceof HTMLElement))
74
- return;
75
- if (!lastAnimationStyle.current) {
76
- lastAnimationStyle.current = style, animate(scope.current, doAnimate2 || {}, {
77
- type: !1
78
- }).complete(), shouldDebug && (console.groupCollapsed("[motion] \u{1F30A} FIRST"), console.info(doAnimate2), console.groupEnd());
79
- return;
80
- }
81
- if (!doAnimate2 && !dontAnimate2)
83
+ if (!(node instanceof HTMLElement) || !doAnimate2 && !dontAnimate2)
82
84
  return;
83
85
  const next = doAnimate2 || {};
84
- if (dontAnimate2 && node) {
85
- getDiff(lastDontAnimate.current, dontAnimate2) && (lastDontAnimate.current = dontAnimate2, Object.assign(node.style, dontAnimate2));
86
- for (const key in lastDontAnimate.current)
87
- key in dontAnimate2 || (console.info("deleting!", key, { dontAnimate: dontAnimate2, doAnimate: doAnimate2 }), delete node.style[key]);
86
+ if (dontAnimate2) {
87
+ const curDontAnimate = lastDontAnimate.current;
88
+ if (node && curDontAnimate) {
89
+ for (const key in curDontAnimate)
90
+ key in style || (console.info("deleting!", key, { dontAnimate: dontAnimate2, doAnimate: doAnimate2 }), delete node.style[key]);
91
+ const newDontAnimate = getDiff(curDontAnimate, dontAnimate2);
92
+ newDontAnimate && Object.assign(node.style, newDontAnimate);
93
+ }
88
94
  }
95
+ if (lastDontAnimate.current = dontAnimate2 || {}, updateFirstAnimationStyle())
96
+ return;
89
97
  const diff = getDiff(lastAnimationStyle.current, next);
90
98
  if (shouldDebug && (console.groupCollapsed(
91
99
  `[motion] \u{1F30A} animate (${JSON.stringify(diff, null, 2)})`
@@ -96,9 +104,9 @@ function createAnimations(animationsProp) {
96
104
  diff,
97
105
  lastAnimationStyle: { ...lastAnimationStyle.current },
98
106
  isExiting
99
- }), console.groupEnd()), !diff)
107
+ }), console.trace(), console.groupEnd()), lastAnimationStyle.current = next, lastAnimateAt.current = Date.now(), !diff)
100
108
  return;
101
- lastAnimateAt.current = Date.now(), controls.current = animate(scope.current, diff, animationOptions2), lastAnimationStyle.current = next;
109
+ controls.current = animate(scope.current, diff, animationOptions2);
102
110
  } finally {
103
111
  isExiting && (controls.current ? controls.current.finished.then(() => {
104
112
  sendExitComplete?.();
@@ -114,24 +122,33 @@ function createAnimations(animationsProp) {
114
122
  runAnimation(animationProps2);
115
123
  }), useEffect(() => () => {
116
124
  lastAnimationStyle.current = null;
117
- }, []), useIsomorphicLayoutEffect(() => {
118
- !doAnimate && !isExiting || (animationsQueue.current = [], runAnimation({
125
+ }, []);
126
+ const animateKey = JSON.stringify(doAnimate);
127
+ useIsomorphicLayoutEffect(() => {
128
+ if (isFirstRender.current) {
129
+ updateFirstAnimationStyle(), isFirstRender.current = !1;
130
+ return;
131
+ }
132
+ !doAnimate && !isExiting || (animationsQueue.current = [], flushAnimation({
119
133
  doAnimate,
134
+ dontAnimate,
120
135
  animationOptions
121
136
  }));
122
- }, [JSON.stringify(doAnimate), isExiting, lastAnimationStyle]);
137
+ }, [animateKey, isExiting, lastAnimationStyle]);
123
138
  const [initialStyle] = useState(() => ({ ...dontAnimate, ...doAnimate }));
124
139
  return shouldDebug && (console.groupCollapsed("[motion] \u{1F30A} render"), console.info({
125
140
  style,
126
141
  doAnimate,
127
142
  dontAnimate,
143
+ animateKey,
128
144
  scope,
129
145
  animationOptions,
130
146
  initialStyle,
131
- isExiting
147
+ isExiting,
148
+ isFirstRender: isFirstRender.current
132
149
  }), console.groupEnd()), {
133
- // avoid first render returning wrong styles - always render all, after that we can just mutate
134
- style: isFirstRender.current ? style : dontAnimate,
150
+ // we never change this, after first render on
151
+ style: firstRenderStyle,
135
152
  ref: scope,
136
153
  tag: "div"
137
154
  };
@@ -233,6 +250,10 @@ const disableAnimationProps = /* @__PURE__ */ new Set([
233
250
  "flexGrow",
234
251
  "flexShrink",
235
252
  "justifyContent",
253
+ "marginRight",
254
+ "marginLeft",
255
+ "marginBottom",
256
+ "marginTop",
236
257
  "maxHeight",
237
258
  "maxWidth",
238
259
  "minHeight",
@@ -247,7 +268,8 @@ const disableAnimationProps = /* @__PURE__ */ new Set([
247
268
  "position",
248
269
  "textWrap",
249
270
  "transformOrigin",
250
- "zIndex"
271
+ "zIndex",
272
+ "WebkitBackdropFilter"
251
273
  ]), MotionView = createMotionView("div"), MotionText = createMotionView("span");
252
274
  function createMotionView(defaultTag) {
253
275
  const isText = defaultTag === "span", Component = forwardRef((propsIn, ref) => {
@@ -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": ["props", "doAnimate", "dontAnimate", "animationOptions", "animationProps"]
6
6
  }
@@ -1,7 +1,7 @@
1
1
  import { fixStyles, getSplitStyles, hooks, styleToCSS, Text, useComposedRefs, useIsomorphicLayoutEffect, useThemeWithState, View } from "@tamagui/core";
2
2
  import { ResetPresence, usePresence } from "@tamagui/use-presence";
3
3
  import { useAnimate, useMotionValue, useMotionValueEvent } from "motion/react";
4
- import React, { forwardRef, useEffect, useMemo, useRef, useState } from "react";
4
+ import React, { forwardRef, useEffect, useLayoutEffect, useMemo, useRef, useState } from "react";
5
5
  import { jsx } from "react/jsx-runtime";
6
6
  const MotionValueStrategy = /* @__PURE__ */new WeakMap();
7
7
  function createAnimations(animationsProp) {
@@ -37,10 +37,11 @@ function createAnimations(animationsProp) {
37
37
  isFirstRender = useRef(!0),
38
38
  [scope, animate] = useAnimate(),
39
39
  lastAnimationStyle = useRef(null),
40
- lastDontAnimate = useRef({}),
41
40
  controls = useRef(null),
42
41
  styleKey = JSON.stringify(style),
43
- shouldDebug = process.env.NODE_ENV === "development" && props.debug && props.debug !== "profile",
42
+ shouldDebug =
43
+ // process.env.NODE_ENV === 'development' &&
44
+ props.debug && props.debug !== "profile",
44
45
  {
45
46
  dontAnimate = {},
46
47
  doAnimate,
@@ -49,12 +50,12 @@ function createAnimations(animationsProp) {
49
50
  animationsQueue = useRef([]),
50
51
  lastAnimateAt = useRef(0),
51
52
  minTimeBetweenAnimations = 16.667,
52
- disposed = useRef(!1);
53
- useIsomorphicLayoutEffect(() => {
54
- lastDontAnimate.current = dontAnimate;
55
- }), useEffect(() => (isFirstRender.current = !1, () => {
53
+ disposed = useRef(!1),
54
+ [firstRenderStyle] = useState(style),
55
+ lastDontAnimate = useRef(firstRenderStyle);
56
+ useLayoutEffect(() => () => {
56
57
  disposed.current = !0;
57
- }), []);
58
+ }, []);
58
59
  const runAnimation = props2 => {
59
60
  const waitForNextAnimationFrame = () => {
60
61
  const queue = animationsQueue.current,
@@ -70,9 +71,12 @@ function createAnimations(animationsProp) {
70
71
  }), scope.current ? flushAnimation(props2) : disposed.current || requestAnimationFrame(waitForNextAnimationFrame);
71
72
  },
72
73
  hasQueue = animationsQueue.current.length,
73
- shouldWait = hasQueue || Date.now() - lastAnimateAt.current > minTimeBetweenAnimations;
74
+ shouldWait = hasQueue || lastAnimateAt.current && Date.now() - lastAnimateAt.current > minTimeBetweenAnimations;
74
75
  isExiting || isFirstRender.current || scope.current && !shouldWait ? flushAnimation(props2) : (animationsQueue.current.push(props2), hasQueue || waitForNextAnimationFrame());
75
76
  },
77
+ updateFirstAnimationStyle = () => stateRef.current.host instanceof HTMLElement ? lastAnimationStyle.current ? !1 : (lastAnimationStyle.current = style, animate(scope.current, doAnimate || {}, {
78
+ type: !1
79
+ }).complete(), scope.animations = [], shouldDebug && (console.groupCollapsed("[motion] \u{1F30A} FIRST"), console.info(doAnimate), console.groupEnd()), !0) : !1,
76
80
  flushAnimation = ({
77
81
  doAnimate: doAnimate2,
78
82
  dontAnimate: dontAnimate2,
@@ -80,22 +84,20 @@ function createAnimations(animationsProp) {
80
84
  }) => {
81
85
  try {
82
86
  const node = stateRef.current.host;
83
- if (!(node instanceof HTMLElement)) return;
84
- if (!lastAnimationStyle.current) {
85
- lastAnimationStyle.current = style, animate(scope.current, doAnimate2 || {}, {
86
- type: !1
87
- }).complete(), shouldDebug && (console.groupCollapsed("[motion] \u{1F30A} FIRST"), console.info(doAnimate2), console.groupEnd());
88
- return;
89
- }
90
- if (!doAnimate2 && !dontAnimate2) return;
87
+ if (!(node instanceof HTMLElement) || !doAnimate2 && !dontAnimate2) return;
91
88
  const next = doAnimate2 || {};
92
- if (dontAnimate2 && node) {
93
- getDiff(lastDontAnimate.current, dontAnimate2) && (lastDontAnimate.current = dontAnimate2, Object.assign(node.style, dontAnimate2));
94
- for (const key in lastDontAnimate.current) key in dontAnimate2 || (console.info("deleting!", key, {
95
- dontAnimate: dontAnimate2,
96
- doAnimate: doAnimate2
97
- }), delete node.style[key]);
89
+ if (dontAnimate2) {
90
+ const curDontAnimate = lastDontAnimate.current;
91
+ if (node && curDontAnimate) {
92
+ for (const key in curDontAnimate) key in style || (console.info("deleting!", key, {
93
+ dontAnimate: dontAnimate2,
94
+ doAnimate: doAnimate2
95
+ }), delete node.style[key]);
96
+ const newDontAnimate = getDiff(curDontAnimate, dontAnimate2);
97
+ newDontAnimate && Object.assign(node.style, newDontAnimate);
98
+ }
98
99
  }
100
+ if (lastDontAnimate.current = dontAnimate2 || {}, updateFirstAnimationStyle()) return;
99
101
  const diff = getDiff(lastAnimationStyle.current, next);
100
102
  if (shouldDebug && (console.groupCollapsed(`[motion] \u{1F30A} animate (${JSON.stringify(diff, null, 2)})`), console.info({
101
103
  next,
@@ -106,8 +108,8 @@ function createAnimations(animationsProp) {
106
108
  ...lastAnimationStyle.current
107
109
  },
108
110
  isExiting
109
- }), console.groupEnd()), !diff) return;
110
- lastAnimateAt.current = Date.now(), controls.current = animate(scope.current, diff, animationOptions2), lastAnimationStyle.current = next;
111
+ }), console.trace(), console.groupEnd()), lastAnimationStyle.current = next, lastAnimateAt.current = Date.now(), !diff) return;
112
+ controls.current = animate(scope.current, diff, animationOptions2);
111
113
  } finally {
112
114
  isExiting && (controls.current ? controls.current.finished.then(() => {
113
115
  sendExitComplete?.();
@@ -119,12 +121,19 @@ function createAnimations(animationsProp) {
119
121
  runAnimation(animationProps2);
120
122
  }), useEffect(() => () => {
121
123
  lastAnimationStyle.current = null;
122
- }, []), useIsomorphicLayoutEffect(() => {
123
- !doAnimate && !isExiting || (animationsQueue.current = [], runAnimation({
124
+ }, []);
125
+ const animateKey = JSON.stringify(doAnimate);
126
+ useIsomorphicLayoutEffect(() => {
127
+ if (isFirstRender.current) {
128
+ updateFirstAnimationStyle(), isFirstRender.current = !1;
129
+ return;
130
+ }
131
+ !doAnimate && !isExiting || (animationsQueue.current = [], flushAnimation({
124
132
  doAnimate,
133
+ dontAnimate,
125
134
  animationOptions
126
135
  }));
127
- }, [JSON.stringify(doAnimate), isExiting, lastAnimationStyle]);
136
+ }, [animateKey, isExiting, lastAnimationStyle]);
128
137
  const [initialStyle] = useState(() => ({
129
138
  ...dontAnimate,
130
139
  ...doAnimate
@@ -133,13 +142,15 @@ function createAnimations(animationsProp) {
133
142
  style,
134
143
  doAnimate,
135
144
  dontAnimate,
145
+ animateKey,
136
146
  scope,
137
147
  animationOptions,
138
148
  initialStyle,
139
- isExiting
149
+ isExiting,
150
+ isFirstRender: isFirstRender.current
140
151
  }), console.groupEnd()), {
141
- // avoid first render returning wrong styles - always render all, after that we can just mutate
142
- style: isFirstRender.current ? style : dontAnimate,
152
+ // we never change this, after first render on
153
+ style: firstRenderStyle,
143
154
  ref: scope,
144
155
  tag: "div"
145
156
  };
@@ -218,7 +229,7 @@ function createAnimations(animationsProp) {
218
229
  };
219
230
  }
220
231
  }
221
- const disableAnimationProps = /* @__PURE__ */new Set(["alignContent", "alignItems", "aspectRatio", "backdropFilter", "boxSizing", "contain", "display", "flexBasis", "flexDirection", "flexGrow", "flexShrink", "justifyContent", "maxHeight", "maxWidth", "minHeight", "minWidth", "outlineColor", "outlineStyle", "outlineWidth", "overflow", "overflowX", "overflowY", "pointerEvents", "position", "textWrap", "transformOrigin", "zIndex"]),
232
+ const disableAnimationProps = /* @__PURE__ */new Set(["alignContent", "alignItems", "aspectRatio", "backdropFilter", "boxSizing", "contain", "display", "flexBasis", "flexDirection", "flexGrow", "flexShrink", "justifyContent", "marginRight", "marginLeft", "marginBottom", "marginTop", "maxHeight", "maxWidth", "minHeight", "minWidth", "outlineColor", "outlineStyle", "outlineWidth", "overflow", "overflowX", "overflowY", "pointerEvents", "position", "textWrap", "transformOrigin", "zIndex", "WebkitBackdropFilter"]),
222
233
  MotionView = createMotionView("div"),
223
234
  MotionText = createMotionView("span");
224
235
  function createMotionView(defaultTag) {
@@ -1 +1 @@
1
- {"version":3,"names":["fixStyles","getSplitStyles","hooks","styleToCSS","Text","useComposedRefs","useIsomorphicLayoutEffect","useThemeWithState","View","ResetPresence","usePresence","useAnimate","useMotionValue","useMotionValueEvent","React","forwardRef","useEffect","useMemo","useRef","useState","jsx","MotionValueStrategy","WeakMap","createAnimations","animationsProp","animations","key","type","MotionView","MotionText","isReactNative","supportsCSS","needsWebStyles","avoidReRenders","useAnimations","animationProps","props","style","componentState","stateRef","useStyleEmitter","presence","animationKey","Array","isArray","animation","disableAnimation","unmounted","isExiting","sendExitComplete","isFirstRender","scope","animate","lastAnimationStyle","lastDontAnimate","controls","styleKey","JSON","stringify","shouldDebug","process","env","NODE_ENV","debug","dontAnimate","doAnimate","animationOptions","getMotionAnimatedProps","animationsQueue","lastAnimateAt","minTimeBetweenAnimations","disposed","current","runAnimation","props2","waitForNextAnimationFrame","queue","last","length","console","error","elapsed","Date","now","info","flushAnimation","requestAnimationFrame","hasQueue","shouldWait","push","doAnimate2","dontAnimate2","animationOptions2","node","host","HTMLElement","complete","groupCollapsed","groupEnd","next","getDiff","Object","assign","diff","finished","then","nextStyle","animationProps2","initialStyle","ref","tag","useAnimatedNumber","initial","motionValue","getInstance","getValue","get","setValue","config","onFinish","set","unsubscribe","on","value","Math","abs","stop","useAnimatedNumberReaction","onValue","instance","useAnimatedNumberStyle","val","getStyleProp","getStyleRef","getStyle","cur","disable","animationPropToAnimationConfig","animateOnly","disableAnimationProps","has","includes","animationProp","defaultAnimationKey","specificAnimations","defaultConfig","default","fromEntries","entries","flatMap","propName","animationNameOrConfig","Set","createMotionView","defaultTag","isText","Component","propsIn","forwardedRef","propsRest","hostRef","composedRefs","_","state","styles","animatedStyle","nonAnimatedStyles","find","x","filter","getProps","out","staticConfig","theme","name","isAnimated","noClass","resolveValues","viewProps","Element","transformedProps","usePropsTransform","animationConfig","webStyle","motionAnimationConfig","duration","acceptTagProp","previous"],"sources":["../../src/createAnimations.tsx"],"sourcesContent":[null],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"names":["fixStyles","getSplitStyles","hooks","styleToCSS","Text","useComposedRefs","useIsomorphicLayoutEffect","useThemeWithState","View","ResetPresence","usePresence","useAnimate","useMotionValue","useMotionValueEvent","React","forwardRef","useEffect","useLayoutEffect","useMemo","useRef","useState","jsx","MotionValueStrategy","WeakMap","createAnimations","animationsProp","animations","key","type","MotionView","MotionText","isReactNative","supportsCSS","needsWebStyles","avoidReRenders","useAnimations","animationProps","props","style","componentState","stateRef","useStyleEmitter","presence","animationKey","Array","isArray","animation","disableAnimation","unmounted","isExiting","sendExitComplete","isFirstRender","scope","animate","lastAnimationStyle","controls","styleKey","JSON","stringify","shouldDebug","debug","dontAnimate","doAnimate","animationOptions","getMotionAnimatedProps","animationsQueue","lastAnimateAt","minTimeBetweenAnimations","disposed","firstRenderStyle","lastDontAnimate","current","runAnimation","props2","waitForNextAnimationFrame","queue","last","length","console","error","elapsed","Date","now","info","flushAnimation","requestAnimationFrame","hasQueue","shouldWait","push","updateFirstAnimationStyle","host","HTMLElement","complete","groupCollapsed","groupEnd","doAnimate2","dontAnimate2","animationOptions2","node","next","curDontAnimate","newDontAnimate","getDiff","Object","assign","diff","trace","finished","then","nextStyle","animationProps2","animateKey","initialStyle","ref","tag","useAnimatedNumber","initial","motionValue","getInstance","getValue","get","setValue","config","onFinish","set","unsubscribe","on","value","Math","abs","stop","useAnimatedNumberReaction","onValue","instance","useAnimatedNumberStyle","val","getStyleProp","getStyleRef","getStyle","cur","disable","animationPropToAnimationConfig","animateOnly","disableAnimationProps","has","includes","animationProp","defaultAnimationKey","specificAnimations","defaultConfig","default","fromEntries","entries","flatMap","propName","animationNameOrConfig","Set","createMotionView","defaultTag","isText","Component","propsIn","forwardedRef","propsRest","hostRef","composedRefs","_","state","styles","animatedStyle","nonAnimatedStyles","find","x","filter","getProps","out","staticConfig","theme","name","isAnimated","noClass","resolveValues","viewProps","Element","transformedProps","usePropsTransform","animationConfig","webStyle","motionAnimationConfig","duration","acceptTagProp","previous"],"sources":["../../src/createAnimations.tsx"],"sourcesContent":[null],"mappings":"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","ignoreList":[]}
@@ -2,7 +2,7 @@ import { jsx as _jsx } from "react/jsx-runtime";
2
2
  import { fixStyles, getSplitStyles, hooks, styleToCSS, Text, useComposedRefs, useIsomorphicLayoutEffect, useThemeWithState, View } from "@tamagui/core";
3
3
  import { ResetPresence, usePresence } from "@tamagui/use-presence";
4
4
  import { useAnimate, useMotionValue, useMotionValueEvent } from "motion/react";
5
- import React, { forwardRef, useEffect, useMemo, useRef, useState } from "react";
5
+ import React, { forwardRef, useEffect, useLayoutEffect, useMemo, useRef, useState } from "react";
6
6
  var MotionValueStrategy = /* @__PURE__ */new WeakMap();
7
7
  function createAnimations(animationsProp) {
8
8
  var animations = {};
@@ -38,10 +38,11 @@ function createAnimations(animationsProp) {
38
38
  isFirstRender = useRef(!0),
39
39
  [scope, animate] = useAnimate(),
40
40
  lastAnimationStyle = useRef(null),
41
- lastDontAnimate = useRef({}),
42
41
  controls = useRef(null),
43
42
  styleKey = JSON.stringify(style),
44
- shouldDebug = process.env.NODE_ENV === "development" && props.debug && props.debug !== "profile",
43
+ shouldDebug =
44
+ // process.env.NODE_ENV === 'development' &&
45
+ props.debug && props.debug !== "profile",
45
46
  {
46
47
  dontAnimate = {},
47
48
  doAnimate,
@@ -53,11 +54,11 @@ function createAnimations(animationsProp) {
53
54
  animationsQueue = useRef([]),
54
55
  lastAnimateAt = useRef(0),
55
56
  minTimeBetweenAnimations = 16.667,
56
- disposed = useRef(!1);
57
- useIsomorphicLayoutEffect(function () {
58
- lastDontAnimate.current = dontAnimate;
59
- }), useEffect(function () {
60
- return isFirstRender.current = !1, function () {
57
+ disposed = useRef(!1),
58
+ [firstRenderStyle] = useState(style),
59
+ lastDontAnimate = useRef(firstRenderStyle);
60
+ useLayoutEffect(function () {
61
+ return function () {
61
62
  disposed.current = !0;
62
63
  };
63
64
  }, []);
@@ -77,9 +78,21 @@ function createAnimations(animationsProp) {
77
78
  }
78
79
  },
79
80
  hasQueue = animationsQueue.current.length,
80
- shouldWait = hasQueue || Date.now() - lastAnimateAt.current > minTimeBetweenAnimations;
81
+ shouldWait = hasQueue || lastAnimateAt.current && Date.now() - lastAnimateAt.current > minTimeBetweenAnimations;
81
82
  isExiting || isFirstRender.current || scope.current && !shouldWait ? flushAnimation(props2) : (animationsQueue.current.push(props2), hasQueue || waitForNextAnimationFrame());
82
83
  },
84
+ updateFirstAnimationStyle = function () {
85
+ var node = stateRef.current.host;
86
+ if (!(node instanceof HTMLElement)) return !1;
87
+ if (!lastAnimationStyle.current) {
88
+ lastAnimationStyle.current = style;
89
+ var firstAnimation = animate(scope.current, doAnimate || {}, {
90
+ type: !1
91
+ });
92
+ return firstAnimation.complete(), scope.animations = [], shouldDebug && (console.groupCollapsed("[motion] \u{1F30A} FIRST"), console.info(doAnimate), console.groupEnd()), !0;
93
+ }
94
+ return !1;
95
+ },
83
96
  flushAnimation = function (param) {
84
97
  var {
85
98
  doAnimate: doAnimate2,
@@ -88,37 +101,32 @@ function createAnimations(animationsProp) {
88
101
  } = param;
89
102
  try {
90
103
  var node = stateRef.current.host;
91
- if (!(node instanceof HTMLElement)) return;
92
- if (!lastAnimationStyle.current) {
93
- lastAnimationStyle.current = style;
94
- var firstAnimation = animate(scope.current, doAnimate2 || {}, {
95
- type: !1
96
- });
97
- firstAnimation.complete(), shouldDebug && (console.groupCollapsed("[motion] \u{1F30A} FIRST"), console.info(doAnimate2), console.groupEnd());
98
- return;
99
- }
100
- if (!doAnimate2 && !dontAnimate2) return;
104
+ if (!(node instanceof HTMLElement) || !doAnimate2 && !dontAnimate2) return;
101
105
  var next = doAnimate2 || {};
102
- if (dontAnimate2 && node) {
103
- var diff = getDiff(lastDontAnimate.current, dontAnimate2);
104
- diff && (lastDontAnimate.current = dontAnimate2, Object.assign(node.style, dontAnimate2));
105
- for (var key2 in lastDontAnimate.current) key2 in dontAnimate2 || (console.info("deleting!", key2, {
106
- dontAnimate: dontAnimate2,
107
- doAnimate: doAnimate2
108
- }), delete node.style[key2]);
106
+ if (dontAnimate2) {
107
+ var curDontAnimate = lastDontAnimate.current;
108
+ if (node && curDontAnimate) {
109
+ for (var key2 in curDontAnimate) key2 in style || (console.info("deleting!", key2, {
110
+ dontAnimate: dontAnimate2,
111
+ doAnimate: doAnimate2
112
+ }), delete node.style[key2]);
113
+ var newDontAnimate = getDiff(curDontAnimate, dontAnimate2);
114
+ newDontAnimate && Object.assign(node.style, newDontAnimate);
115
+ }
109
116
  }
110
- var diff1 = getDiff(lastAnimationStyle.current, next);
111
- if (shouldDebug && (console.groupCollapsed(`[motion] \u{1F30A} animate (${JSON.stringify(diff1, null, 2)})`), console.info({
117
+ if (lastDontAnimate.current = dontAnimate2 || {}, updateFirstAnimationStyle()) return;
118
+ var diff = getDiff(lastAnimationStyle.current, next);
119
+ if (shouldDebug && (console.groupCollapsed(`[motion] \u{1F30A} animate (${JSON.stringify(diff, null, 2)})`), console.info({
112
120
  next,
113
121
  animationOptions: animationOptions2,
114
122
  animationProps,
115
- diff: diff1,
123
+ diff,
116
124
  lastAnimationStyle: {
117
125
  ...lastAnimationStyle.current
118
126
  },
119
127
  isExiting
120
- }), console.groupEnd()), !diff1) return;
121
- lastAnimateAt.current = Date.now(), controls.current = animate(scope.current, diff1, animationOptions2), lastAnimationStyle.current = next;
128
+ }), console.trace(), console.groupEnd()), lastAnimationStyle.current = next, lastAnimateAt.current = Date.now(), !diff) return;
129
+ controls.current = animate(scope.current, diff, animationOptions2);
122
130
  } finally {
123
131
  isExiting && (controls.current ? controls.current.finished.then(function () {
124
132
  sendExitComplete?.();
@@ -132,12 +140,19 @@ function createAnimations(animationsProp) {
132
140
  return function () {
133
141
  lastAnimationStyle.current = null;
134
142
  };
135
- }, []), useIsomorphicLayoutEffect(function () {
136
- !doAnimate && !isExiting || (animationsQueue.current = [], runAnimation({
143
+ }, []);
144
+ var animateKey = JSON.stringify(doAnimate);
145
+ useIsomorphicLayoutEffect(function () {
146
+ if (isFirstRender.current) {
147
+ updateFirstAnimationStyle(), isFirstRender.current = !1;
148
+ return;
149
+ }
150
+ !doAnimate && !isExiting || (animationsQueue.current = [], flushAnimation({
137
151
  doAnimate,
152
+ dontAnimate,
138
153
  animationOptions
139
154
  }));
140
- }, [JSON.stringify(doAnimate), isExiting, lastAnimationStyle]);
155
+ }, [animateKey, isExiting, lastAnimationStyle]);
141
156
  var [initialStyle] = useState(function () {
142
157
  return {
143
158
  ...dontAnimate,
@@ -148,13 +163,15 @@ function createAnimations(animationsProp) {
148
163
  style,
149
164
  doAnimate,
150
165
  dontAnimate,
166
+ animateKey,
151
167
  scope,
152
168
  animationOptions,
153
169
  initialStyle,
154
- isExiting
170
+ isExiting,
171
+ isFirstRender: isFirstRender.current
155
172
  }), console.groupEnd()), {
156
- // avoid first render returning wrong styles - always render all, after that we can just mutate
157
- style: isFirstRender.current ? style : dontAnimate,
173
+ // we never change this, after first render on
174
+ style: firstRenderStyle,
158
175
  ref: scope,
159
176
  tag: "div"
160
177
  };
@@ -245,7 +262,7 @@ function createAnimations(animationsProp) {
245
262
  };
246
263
  }
247
264
  }
248
- var disableAnimationProps = /* @__PURE__ */new Set(["alignContent", "alignItems", "aspectRatio", "backdropFilter", "boxSizing", "contain", "display", "flexBasis", "flexDirection", "flexGrow", "flexShrink", "justifyContent", "maxHeight", "maxWidth", "minHeight", "minWidth", "outlineColor", "outlineStyle", "outlineWidth", "overflow", "overflowX", "overflowY", "pointerEvents", "position", "textWrap", "transformOrigin", "zIndex"]),
265
+ var disableAnimationProps = /* @__PURE__ */new Set(["alignContent", "alignItems", "aspectRatio", "backdropFilter", "boxSizing", "contain", "display", "flexBasis", "flexDirection", "flexGrow", "flexShrink", "justifyContent", "marginRight", "marginLeft", "marginBottom", "marginTop", "maxHeight", "maxWidth", "minHeight", "minWidth", "outlineColor", "outlineStyle", "outlineWidth", "overflow", "overflowX", "overflowY", "pointerEvents", "position", "textWrap", "transformOrigin", "zIndex", "WebkitBackdropFilter"]),
249
266
  MotionView = createMotionView("div"),
250
267
  MotionText = createMotionView("span");
251
268
  function createMotionView(defaultTag) {