@hanzogui/animations-motion 2.0.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (38) hide show
  1. package/LICENSE +21 -0
  2. package/README.md +72 -0
  3. package/dist/cjs/createAnimations.cjs +449 -0
  4. package/dist/cjs/createAnimations.native.js +548 -0
  5. package/dist/cjs/createAnimations.native.js.map +1 -0
  6. package/dist/cjs/index.cjs +19 -0
  7. package/dist/cjs/index.native.js +37 -0
  8. package/dist/cjs/index.native.js.map +1 -0
  9. package/dist/cjs/polyfill.cjs +1 -0
  10. package/dist/cjs/polyfill.native.js +4 -0
  11. package/dist/cjs/polyfill.native.js.map +1 -0
  12. package/dist/esm/createAnimations.mjs +414 -0
  13. package/dist/esm/createAnimations.mjs.map +1 -0
  14. package/dist/esm/createAnimations.native.js +510 -0
  15. package/dist/esm/createAnimations.native.js.map +1 -0
  16. package/dist/esm/index.js +2 -0
  17. package/dist/esm/index.js.map +1 -0
  18. package/dist/esm/index.mjs +2 -0
  19. package/dist/esm/index.mjs.map +1 -0
  20. package/dist/esm/index.native.js +11 -0
  21. package/dist/esm/index.native.js.map +1 -0
  22. package/dist/esm/polyfill.mjs +2 -0
  23. package/dist/esm/polyfill.mjs.map +1 -0
  24. package/dist/esm/polyfill.native.js +2 -0
  25. package/dist/esm/polyfill.native.js.map +1 -0
  26. package/package.json +53 -0
  27. package/src/createAnimations.tsx +905 -0
  28. package/src/index.native.ts +28 -0
  29. package/src/index.ts +3 -0
  30. package/src/polyfill.ts +4 -0
  31. package/types/createAnimations.d.ts +8 -0
  32. package/types/createAnimations.d.ts.map +11 -0
  33. package/types/index.d.ts +4 -0
  34. package/types/index.d.ts.map +11 -0
  35. package/types/index.native.d.ts +4 -0
  36. package/types/index.native.d.ts.map +11 -0
  37. package/types/polyfill.d.ts +2 -0
  38. package/types/polyfill.d.ts.map +11 -0
@@ -0,0 +1,414 @@
1
+ import { getEffectiveAnimation, normalizeTransition } from "@hanzogui/animation-helpers";
2
+ import { ResetPresence, usePresence } from "@hanzogui/use-presence";
3
+ import { fixStyles, getConfig, getSplitStyles, hooks, styleToCSS, Text, useComposedRefs, useIsomorphicLayoutEffect, useThemeWithState, View } from "@hanzogui/web";
4
+ import { useAnimate, useMotionValue, useMotionValueEvent } from "motion/react";
5
+ import React, { forwardRef, useEffect, useLayoutEffect, useMemo, useRef, useState } from "react";
6
+ import { jsx } from "react/jsx-runtime";
7
+ const isServer = typeof window > "u";
8
+ function useAnimateSSRSafe() {
9
+ return isServer ? [useRef(null), () => {}] : useAnimate();
10
+ }
11
+ const MotionValueStrategy = /* @__PURE__ */new WeakMap();
12
+ function createAnimations(animations) {
13
+ let isHydratingGlobal;
14
+ const hydratingComponents = /* @__PURE__ */new Set();
15
+ return {
16
+ View: MotionView,
17
+ Text: MotionText,
18
+ isReactNative: !1,
19
+ inputStyle: "css",
20
+ outputStyle: "inline",
21
+ avoidReRenders: !0,
22
+ animations,
23
+ usePresence,
24
+ ResetPresence,
25
+ onMount() {
26
+ isHydratingGlobal = !1, hydratingComponents.forEach(cb => cb());
27
+ },
28
+ useAnimations: animationProps => {
29
+ isHydratingGlobal === void 0 && !getConfig().settings.disableSSR && (isHydratingGlobal = !0);
30
+ const {
31
+ props,
32
+ style,
33
+ componentState,
34
+ stateRef,
35
+ useStyleEmitter,
36
+ presence
37
+ } = animationProps,
38
+ animationKey = Array.isArray(props.transition) ? props.transition[0] : props.transition,
39
+ isComponentHydrating = componentState.unmounted === !0,
40
+ isMounting = componentState.unmounted === "should-enter",
41
+ isEntering = !!componentState.unmounted,
42
+ isExiting = presence?.[0] === !1,
43
+ sendExitComplete = presence?.[1],
44
+ refs = useRef(null);
45
+ refs.current || (refs.current = {
46
+ isFirstRender: !0,
47
+ lastDoAnimate: null,
48
+ lastDontAnimate: null,
49
+ controls: null,
50
+ lastAnimateAt: 0,
51
+ disposed: !1,
52
+ wasExiting: !1,
53
+ isExiting: !1,
54
+ sendExitComplete: void 0,
55
+ animationState: "default",
56
+ frozenExitTarget: null,
57
+ exitCompleteScheduled: !1,
58
+ wasEntering: !1
59
+ });
60
+ const justFinishedEntering = refs.current.wasEntering && !isEntering;
61
+ useEffect(() => {
62
+ refs.current.wasEntering = isEntering;
63
+ });
64
+ const animationState = isExiting ? "exit" : isMounting || justFinishedEntering ? "enter" : "default",
65
+ disableAnimation = isComponentHydrating || isMounting || !animationKey,
66
+ [scope, animate] = useAnimateSSRSafe();
67
+ refs.current.isExiting = isExiting, refs.current.sendExitComplete = sendExitComplete, refs.current.animationState = animationState;
68
+ const justStartedExiting = isExiting && !refs.current.wasExiting,
69
+ justStoppedExiting = !isExiting && refs.current.wasExiting;
70
+ (justStartedExiting || justStoppedExiting) && (refs.current.frozenExitTarget = null, refs.current.exitCompleteScheduled = !1), useEffect(() => {
71
+ refs.current.wasExiting = isExiting;
72
+ });
73
+ const {
74
+ dontAnimate = {},
75
+ doAnimate,
76
+ animationOptions
77
+ } = getMotionAnimatedProps(props, style, disableAnimation, animationState),
78
+ [firstRenderStyle] = useState(style);
79
+ refs.current.isFirstRender && (refs.current.lastDontAnimate = firstRenderStyle);
80
+ const [isHydrating, setIsHydrating] = useState(isHydratingGlobal);
81
+ useLayoutEffect(() => (isHydratingGlobal && hydratingComponents.add(() => {
82
+ setIsHydrating(!1);
83
+ }), () => {
84
+ refs.current.disposed = !0;
85
+ }), []);
86
+ const flushAnimation = ({
87
+ doAnimate: doAnimateRaw = {},
88
+ animationOptions: passedOptions = {},
89
+ dontAnimate: dontAnimate2
90
+ }) => {
91
+ let startedControls = null;
92
+ const isCurrentlyExiting = refs.current.isExiting,
93
+ currentSendExitComplete = refs.current.sendExitComplete;
94
+ let doAnimate2 = doAnimateRaw;
95
+ isCurrentlyExiting && refs.current.frozenExitTarget && (doAnimate2 = refs.current.frozenExitTarget);
96
+ const animationOptions2 = isCurrentlyExiting && currentSendExitComplete ? getAnimationOptions(props.transition ?? null, "exit") : passedOptions;
97
+ try {
98
+ const node = stateRef.current.host;
99
+ if (refs.current.isFirstRender && (refs.current.lastDontAnimate = null, refs.current.lastDoAnimate = null), process.env.NODE_ENV === "development" && props.debug && props.debug !== "profile" && (console.groupCollapsed(`[motion] animate (${JSON.stringify(getDiff(refs.current.lastDoAnimate, doAnimate2), null, 2)})`), console.info({
100
+ props,
101
+ componentState,
102
+ doAnimate: doAnimate2,
103
+ dontAnimate: dontAnimate2,
104
+ animationOptions: animationOptions2,
105
+ animationProps,
106
+ lastDoAnimate: {
107
+ ...refs.current.lastDoAnimate
108
+ },
109
+ lastDontAnimate: {
110
+ ...refs.current.lastDontAnimate
111
+ },
112
+ isExiting,
113
+ style,
114
+ node
115
+ }), console.groupCollapsed("trace >"), console.trace(), console.groupEnd(), console.groupEnd()), !(node instanceof HTMLElement)) return;
116
+ const prevDont = refs.current.lastDontAnimate;
117
+ if (dontAnimate2) if (prevDont) {
118
+ removeRemovedStyles(prevDont, dontAnimate2, node, doAnimate2);
119
+ const changed = getDiff(prevDont, dontAnimate2);
120
+ changed && Object.assign(node.style, changed);
121
+ } else Object.assign(node.style, dontAnimate2);
122
+ if (doAnimate2) {
123
+ if (prevDont) for (const key in prevDont) key in doAnimate2 && (node.style[key] = prevDont[key], refs.current.lastDoAnimate && (refs.current.lastDoAnimate[key] = prevDont[key]));
124
+ const lastAnimated = refs.current.lastDoAnimate;
125
+ lastAnimated && removeRemovedStyles(lastAnimated, doAnimate2, node, dontAnimate2);
126
+ const diff = getDiff(refs.current.lastDoAnimate, doAnimate2);
127
+ if (diff) {
128
+ isCurrentlyExiting && !refs.current.frozenExitTarget && (refs.current.frozenExitTarget = {
129
+ ...doAnimate2
130
+ });
131
+ const isPopperPosition = node.hasAttribute("data-popper-animate-position");
132
+ let midFlightValues = null;
133
+ if (refs.current.controls) {
134
+ try {
135
+ const computed = getComputedStyle(node);
136
+ midFlightValues = {};
137
+ for (const key in diff) {
138
+ const val = computed[key];
139
+ val !== void 0 && val !== "" && (midFlightValues[key] = val);
140
+ }
141
+ } catch {}
142
+ if (isCurrentlyExiting && refs.current.controls.stop(), midFlightValues) for (const key in midFlightValues) node.style[key] = midFlightValues[key];
143
+ if (isPopperPosition) {
144
+ const anims = node.getAnimations();
145
+ for (const anim of anims) anim.cancel();
146
+ }
147
+ }
148
+ const fixedDiff = fixTransparentColors(diff, refs.current.lastDoAnimate, doAnimate2);
149
+ midFlightValues?.transform && fixedDiff.transform && (fixedDiff.transform = [midFlightValues.transform, fixedDiff.transform]), startedControls = animate(scope.current, fixedDiff, animationOptions2), refs.current.controls = startedControls, refs.current.lastAnimateAt = Date.now();
150
+ }
151
+ }
152
+ refs.current.lastDontAnimate = dontAnimate2 ? {
153
+ ...dontAnimate2
154
+ } : {}, refs.current.lastDoAnimate = doAnimate2 ? {
155
+ ...doAnimate2
156
+ } : {};
157
+ } finally {
158
+ isCurrentlyExiting && currentSendExitComplete && (startedControls ? (refs.current.exitCompleteScheduled = !0, startedControls.finished.then(() => {
159
+ refs.current.isExiting && currentSendExitComplete();
160
+ }).catch(() => {
161
+ refs.current.isExiting && currentSendExitComplete();
162
+ })) : refs.current.exitCompleteScheduled || currentSendExitComplete());
163
+ }
164
+ };
165
+ return useStyleEmitter?.((nextStyle, effectiveTransition) => {
166
+ const animationProps2 = getMotionAnimatedProps(props, nextStyle, disableAnimation, refs.current.animationState, effectiveTransition);
167
+ flushAnimation(animationProps2);
168
+ }), useIsomorphicLayoutEffect(() => {
169
+ if (refs.current.isFirstRender) {
170
+ if (refs.current.isFirstRender = !1, isHydrating) {
171
+ doAnimate && Object.keys(doAnimate).length > 0 ? refs.current.lastDoAnimate = {
172
+ ...doAnimate
173
+ } : refs.current.lastDoAnimate = dontAnimate ? {
174
+ ...dontAnimate
175
+ } : {}, refs.current.lastDontAnimate = dontAnimate ? {
176
+ ...dontAnimate
177
+ } : {}, refs.current.lastAnimateAt = Date.now();
178
+ return;
179
+ }
180
+ refs.current.lastDontAnimate = dontAnimate ? {
181
+ ...dontAnimate
182
+ } : {}, refs.current.lastDoAnimate = doAnimate ? {
183
+ ...doAnimate
184
+ } : {};
185
+ return;
186
+ }
187
+ flushAnimation({
188
+ doAnimate,
189
+ dontAnimate,
190
+ animationOptions
191
+ });
192
+ }, [style, isExiting, disableAnimation]), process.env.NODE_ENV === "development" && props.debug && props.debug !== "profile" && (console.groupCollapsed("[motion] render"), console.info({
193
+ style,
194
+ doAnimate,
195
+ dontAnimate,
196
+ scope,
197
+ animationOptions,
198
+ isExiting,
199
+ isFirstRender: refs.current.isFirstRender,
200
+ animationProps
201
+ }), console.groupEnd()), {
202
+ style: firstRenderStyle,
203
+ ref: scope,
204
+ render: "div"
205
+ };
206
+ },
207
+ useAnimatedNumber(initial) {
208
+ const motionValue = useMotionValue(initial);
209
+ return React.useMemo(() => ({
210
+ getInstance() {
211
+ return motionValue;
212
+ },
213
+ getValue() {
214
+ return motionValue.get();
215
+ },
216
+ setValue(next, config = {
217
+ type: "spring"
218
+ }, onFinish) {
219
+ if (config.type === "direct") MotionValueStrategy.set(motionValue, {
220
+ type: "direct"
221
+ }), motionValue.set(next), onFinish?.();else {
222
+ if (MotionValueStrategy.set(motionValue, config), onFinish) {
223
+ const unsubscribe = motionValue.on("change", value => {
224
+ Math.abs(value - next) < 0.01 && (unsubscribe(), onFinish());
225
+ });
226
+ }
227
+ motionValue.set(next);
228
+ }
229
+ },
230
+ stop() {
231
+ motionValue.stop();
232
+ }
233
+ }), [motionValue]);
234
+ },
235
+ useAnimatedNumberReaction({
236
+ value
237
+ }, onValue) {
238
+ const instance = value.getInstance();
239
+ useMotionValueEvent(instance, "change", onValue);
240
+ },
241
+ useAnimatedNumberStyle(val, getStyleProp) {
242
+ const motionValue = val.getInstance(),
243
+ getStyleRef = useRef(getStyleProp);
244
+ return getStyleRef.current = getStyleProp, useMemo(() => ({
245
+ getStyle: cur => getStyleRef.current(cur),
246
+ motionValue
247
+ }), []);
248
+ }
249
+ };
250
+ function getMotionAnimatedProps(props, style, disable, animationState = "default", transitionOverride) {
251
+ if (disable) return {
252
+ dontAnimate: style
253
+ };
254
+ const animationOptions = getAnimationOptions(transitionOverride ?? props.transition ?? null, animationState);
255
+ let dontAnimate, doAnimate;
256
+ const animateOnly = props.animateOnly;
257
+ for (const key in style) {
258
+ const value = style[key];
259
+ disableAnimationProps.has(key) || animateOnly && !animateOnly.includes(key) ? (dontAnimate ||= {}, dontAnimate[key] = value) : (doAnimate ||= {}, doAnimate[key] = value);
260
+ }
261
+ return {
262
+ dontAnimate,
263
+ doAnimate,
264
+ animationOptions
265
+ };
266
+ }
267
+ function getAnimationOptions(transitionProp, animationState = "default") {
268
+ const normalized = normalizeTransition(transitionProp);
269
+ let effectiveKey = getEffectiveAnimation(normalized, animationState);
270
+ !effectiveKey && animationState === "default" && (effectiveKey = normalized.enter || normalized.exit || null);
271
+ const globalConfigOverride = normalized.config ? {
272
+ ...normalized.config
273
+ } : void 0;
274
+ if (!effectiveKey && Object.keys(normalized.properties).length === 0 && !globalConfigOverride) return {};
275
+ const defaultConfig = effectiveKey ? withInferredType(animations[effectiveKey]) : null,
276
+ delay = normalized.delay,
277
+ result = {};
278
+ defaultConfig && Object.assign(result, defaultConfig), globalConfigOverride && (Object.assign(result, globalConfigOverride), result.type === void 0 && result.duration !== void 0 && result.damping === void 0 && result.stiffness === void 0 && result.mass === void 0 && (result.type = "tween")), delay && (result.delay = delay), (defaultConfig || globalConfigOverride || delay) && (result.default = {
279
+ ...defaultConfig,
280
+ ...globalConfigOverride,
281
+ ...(delay ? {
282
+ delay
283
+ } : null)
284
+ });
285
+ for (const [propName, animationNameOrConfig] of Object.entries(normalized.properties)) if (typeof animationNameOrConfig == "string") result[propName] = withInferredType(animations[animationNameOrConfig]);else if (animationNameOrConfig && typeof animationNameOrConfig == "object") {
286
+ const baseConfig = animationNameOrConfig.type ? withInferredType(animations[animationNameOrConfig.type]) : defaultConfig;
287
+ result[propName] = {
288
+ ...baseConfig,
289
+ ...animationNameOrConfig
290
+ };
291
+ }
292
+ convertMsToS(result), convertMsToS(result.default);
293
+ for (const key in result) key !== "default" && typeof result[key] == "object" && convertMsToS(result[key]);
294
+ return result;
295
+ }
296
+ }
297
+ function withInferredType(config) {
298
+ return config ? {
299
+ type: config.duration !== void 0 && config.damping === void 0 && config.stiffness === void 0 && config.mass === void 0 ? "tween" : "spring",
300
+ ...config
301
+ } : {
302
+ type: "spring"
303
+ };
304
+ }
305
+ function convertMsToS(config) {
306
+ config && (typeof config.delay == "number" && (config.delay = config.delay / 1e3), typeof config.duration == "number" && (config.type === "tween" || config.type === void 0 && config.damping === void 0 && config.stiffness === void 0 && config.mass === void 0) && (config.duration = config.duration / 1e3));
307
+ }
308
+ function removeRemovedStyles(prev, next, node, dontClearIfIn) {
309
+ for (const key in prev) if (!(key in next)) {
310
+ if (dontClearIfIn && key in dontClearIfIn) continue;
311
+ node.style[key] = "";
312
+ }
313
+ }
314
+ const disableAnimationProps = /* @__PURE__ */new Set(["alignContent", "alignItems", "boxSizing", "contain", "containerType", "display", "flexBasis", "flexDirection", "fontFamily", "justifyContent", "overflow", "overflowX", "overflowY", "pointerEvents", "position", "textWrap", "userSelect"]),
315
+ MotionView = createMotionView("div"),
316
+ MotionText = createMotionView("span");
317
+ function createMotionView(defaultTag) {
318
+ const isText = defaultTag === "span",
319
+ Component = forwardRef((propsIn, ref) => {
320
+ const {
321
+ forwardedRef,
322
+ animation,
323
+ render = defaultTag,
324
+ style,
325
+ ...propsRest
326
+ } = propsIn,
327
+ [scope, animate] = useAnimateSSRSafe(),
328
+ hostRef = useRef(null),
329
+ composedRefs = useComposedRefs(forwardedRef, ref, hostRef, scope),
330
+ stateRef = useRef(null);
331
+ stateRef.current || (stateRef.current = {
332
+ get host() {
333
+ return hostRef.current;
334
+ }
335
+ });
336
+ const [_, state] = useThemeWithState({}),
337
+ styles = Array.isArray(style) ? style : [style],
338
+ [animatedStyle, nonAnimatedStyles] = (() => {
339
+ let animatedStyle2;
340
+ const nonAnimatedStyles2 = [];
341
+ for (const style2 of styles) style2.getStyle ? animatedStyle2 = style2 : nonAnimatedStyles2.push(style2);
342
+ return [animatedStyle2, nonAnimatedStyles2];
343
+ })();
344
+ function getProps(props2) {
345
+ const out = getSplitStyles(props2, isText ? Text.staticConfig : View.staticConfig, state?.theme, state?.name, {
346
+ unmounted: !1
347
+ }, {
348
+ isAnimated: !1,
349
+ noClass: !0,
350
+ resolveValues: "auto"
351
+ });
352
+ return out ? (out.viewProps.style && (fixStyles(out.viewProps.style), styleToCSS(out.viewProps.style)), out.viewProps) : {};
353
+ }
354
+ const props = getProps({
355
+ ...propsRest,
356
+ style: nonAnimatedStyles
357
+ }),
358
+ Element = render || "div",
359
+ transformedProps = hooks.usePropsTransform?.(render, props, stateRef, !1);
360
+ return useEffect(() => {
361
+ if (animatedStyle) return animatedStyle.motionValue.on("change", value => {
362
+ const nextStyle = animatedStyle.getStyle(value),
363
+ animationConfig = MotionValueStrategy.get(animatedStyle.motionValue),
364
+ node = hostRef.current,
365
+ webStyle = getProps({
366
+ style: nextStyle
367
+ }).style;
368
+ if (webStyle && node instanceof HTMLElement) {
369
+ const motionAnimationConfig = animationConfig?.type === "timing" ? {
370
+ type: "tween",
371
+ duration: (animationConfig?.duration || 0) / 1e3
372
+ } : animationConfig?.type === "direct" ? {
373
+ type: "tween",
374
+ duration: 0
375
+ } : {
376
+ type: "spring",
377
+ ...animationConfig
378
+ };
379
+ animate(node, webStyle, motionAnimationConfig);
380
+ }
381
+ });
382
+ }, [animatedStyle]), /* @__PURE__ */jsx(Element, {
383
+ ...transformedProps,
384
+ ref: composedRefs
385
+ });
386
+ });
387
+ return Component.acceptRenderProp = !0, Component;
388
+ }
389
+ function getDiff(previous, next) {
390
+ if (!previous) return next;
391
+ let diff = null;
392
+ for (const key in next) next[key] !== previous[key] && (diff ||= {}, diff[key] = next[key]);
393
+ return diff;
394
+ }
395
+ function fixTransparentColors(diff, previous, next) {
396
+ let result = diff;
397
+ for (const key in diff) if (diff[key] === "transparent") {
398
+ let fixed = "rgba(0, 0, 0, 0)";
399
+ const candidates = [previous?.[key], next?.[key]];
400
+ for (const candidate of candidates) if (typeof candidate == "string" && candidate !== "transparent") {
401
+ const rgbaMatch = candidate.match(/^rgba?\(([^,]+),\s*([^,]+),\s*([^,)]+)/);
402
+ if (rgbaMatch) {
403
+ fixed = `rgba(${rgbaMatch[1]}, ${rgbaMatch[2]}, ${rgbaMatch[3]}, 0)`;
404
+ break;
405
+ }
406
+ }
407
+ result === diff && (result = {
408
+ ...diff
409
+ }), result[key] = fixed;
410
+ }
411
+ return result;
412
+ }
413
+ export { createAnimations, disableAnimationProps };
414
+ //# sourceMappingURL=createAnimations.mjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"names":["getEffectiveAnimation","normalizeTransition","ResetPresence","usePresence","fixStyles","getConfig","getSplitStyles","hooks","styleToCSS","Text","useComposedRefs","useIsomorphicLayoutEffect","useThemeWithState","View","useAnimate","useMotionValue","useMotionValueEvent","React","forwardRef","useEffect","useLayoutEffect","useMemo","useRef","useState","jsx","isServer","window","useAnimateSSRSafe","MotionValueStrategy","WeakMap","createAnimations","animations","isHydratingGlobal","hydratingComponents","Set","MotionView","MotionText","isReactNative","inputStyle","outputStyle","avoidReRenders","onMount","forEach","cb","useAnimations","animationProps","settings","disableSSR","props","style","componentState","stateRef","useStyleEmitter","presence","animationKey","Array","isArray","transition","isComponentHydrating","unmounted","isMounting","isEntering","isExiting","sendExitComplete","refs","current","isFirstRender","lastDoAnimate","lastDontAnimate","controls","lastAnimateAt","disposed","wasExiting","animationState","frozenExitTarget","exitCompleteScheduled","wasEntering","justFinishedEntering","disableAnimation","scope","animate","justStartedExiting","justStoppedExiting","dontAnimate","doAnimate","animationOptions","getMotionAnimatedProps","firstRenderStyle","isHydrating","setIsHydrating","add","flushAnimation","doAnimateRaw","passedOptions","dontAnimate2","startedControls","isCurrentlyExiting","currentSendExitComplete","doAnimate2","animationOptions2","getAnimationOptions","node","host","process","env","NODE_ENV","debug","console","groupCollapsed","JSON","stringify","getDiff","info","trace","groupEnd","HTMLElement","prevDont","removeRemovedStyles","changed","Object","assign","key","lastAnimated","diff","isPopperPosition","hasAttribute","midFlightValues","computed","getComputedStyle","val","stop","anims","getAnimations","anim","cancel","fixedDiff","fixTransparentColors","transform","Date","now","finished","then","catch","nextStyle","effectiveTransition","animationProps2","keys","length","ref","render","useAnimatedNumber","initial","motionValue","getInstance","getValue","get","setValue","next","config","type","onFinish","set","unsubscribe","on","value","Math","abs","useAnimatedNumberReaction","onValue","instance","useAnimatedNumberStyle","getStyleProp","getStyleRef","getStyle","cur","disable","transitionOverride","animateOnly","disableAnimationProps","has","includes","transitionProp","normalized","effectiveKey","enter","exit","globalConfigOverride","properties","defaultConfig","withInferredType","delay","result","duration","damping","stiffness","mass","default","propName","animationNameOrConfig","entries","baseConfig","convertMsToS","prev","dontClearIfIn","createMotionView","defaultTag","isText","Component","propsIn","forwardedRef","animation","propsRest","hostRef","composedRefs","_","state","styles","animatedStyle","nonAnimatedStyles","animatedStyle2","nonAnimatedStyles2","style2","push","getProps","props2","out","staticConfig","theme","name","isAnimated","noClass","resolveValues","viewProps","Element","transformedProps","usePropsTransform","animationConfig","webStyle","motionAnimationConfig","acceptRenderProp","previous","fixed","candidates","candidate","rgbaMatch","match"],"sources":["../../src/createAnimations.tsx"],"sourcesContent":[null],"mappings":"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","ignoreList":[]}