react-native-reanimated 4.3.0-nightly-20251215-ac491ac0a → 4.3.0-nightly-20251218-f17ee52ac

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 (41) hide show
  1. package/lib/module/common/web/index.js +1 -0
  2. package/lib/module/common/web/index.js.map +1 -1
  3. package/lib/module/common/web/utils/dom.js +16 -0
  4. package/lib/module/common/web/utils/dom.js.map +1 -0
  5. package/lib/module/common/web/utils/index.js +1 -0
  6. package/lib/module/common/web/utils/index.js.map +1 -1
  7. package/lib/module/css/native/managers/CSSAnimationsManager.js +3 -3
  8. package/lib/module/css/native/managers/CSSAnimationsManager.js.map +1 -1
  9. package/lib/module/css/web/managers/CSSAnimationsManager.js +2 -6
  10. package/lib/module/css/web/managers/CSSAnimationsManager.js.map +1 -1
  11. package/lib/module/layoutReanimation/web/animationsManager.js +2 -2
  12. package/lib/module/layoutReanimation/web/animationsManager.js.map +1 -1
  13. package/lib/module/layoutReanimation/web/componentUtils.js +39 -3
  14. package/lib/module/layoutReanimation/web/componentUtils.js.map +1 -1
  15. package/lib/module/layoutReanimation/web/createAnimation.js +44 -38
  16. package/lib/module/layoutReanimation/web/createAnimation.js.map +1 -1
  17. package/lib/module/platform-specific/jsVersion.js +1 -1
  18. package/lib/typescript/common/web/index.d.ts +1 -0
  19. package/lib/typescript/common/web/index.d.ts.map +1 -1
  20. package/lib/typescript/common/web/utils/dom.d.ts +2 -0
  21. package/lib/typescript/common/web/utils/dom.d.ts.map +1 -0
  22. package/lib/typescript/common/web/utils/index.d.ts +1 -0
  23. package/lib/typescript/common/web/utils/index.d.ts.map +1 -1
  24. package/lib/typescript/css/native/types/animation.d.ts +2 -2
  25. package/lib/typescript/css/web/managers/CSSAnimationsManager.d.ts.map +1 -1
  26. package/lib/typescript/layoutReanimation/web/animationsManager.d.ts.map +1 -1
  27. package/lib/typescript/layoutReanimation/web/componentUtils.d.ts.map +1 -1
  28. package/lib/typescript/layoutReanimation/web/createAnimation.d.ts +3 -2
  29. package/lib/typescript/layoutReanimation/web/createAnimation.d.ts.map +1 -1
  30. package/lib/typescript/platform-specific/jsVersion.d.ts +1 -1
  31. package/package.json +2 -2
  32. package/src/common/web/index.ts +1 -0
  33. package/src/common/web/utils/dom.ts +16 -0
  34. package/src/common/web/utils/index.ts +1 -0
  35. package/src/css/native/managers/CSSAnimationsManager.ts +4 -4
  36. package/src/css/native/types/animation.ts +2 -2
  37. package/src/css/web/managers/CSSAnimationsManager.ts +2 -6
  38. package/src/layoutReanimation/web/animationsManager.ts +4 -2
  39. package/src/layoutReanimation/web/componentUtils.ts +52 -3
  40. package/src/layoutReanimation/web/createAnimation.ts +58 -40
  41. package/src/platform-specific/jsVersion.ts +1 -1
@@ -1,4 +1,5 @@
1
1
  'use strict';
2
2
 
3
3
  export * from './style';
4
+ export * from './utils';
4
5
  //# sourceMappingURL=index.js.map
@@ -1 +1 @@
1
- {"version":3,"names":[],"sourceRoot":"../../../../src","sources":["common/web/index.ts"],"mappings":"AAAA,YAAY;;AACZ,cAAc,SAAS","ignoreList":[]}
1
+ {"version":3,"names":[],"sourceRoot":"../../../../src","sources":["common/web/index.ts"],"mappings":"AAAA,YAAY;;AACZ,cAAc,SAAS;AACvB,cAAc,SAAS","ignoreList":[]}
@@ -0,0 +1,16 @@
1
+ 'use strict';
2
+
3
+ export function removeElementAnimation(element) {
4
+ if (!element.style) {
5
+ return;
6
+ }
7
+ element.style.animationName = '';
8
+ element.style.animationDuration = '';
9
+ element.style.animationDelay = '';
10
+ element.style.animationFillMode = '';
11
+ element.style.animationPlayState = '';
12
+ element.style.animationDirection = '';
13
+ element.style.animationTimingFunction = '';
14
+ element.style.animationIterationCount = '';
15
+ }
16
+ //# sourceMappingURL=dom.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"names":["removeElementAnimation","element","style","animationName","animationDuration","animationDelay","animationFillMode","animationPlayState","animationDirection","animationTimingFunction","animationIterationCount"],"sourceRoot":"../../../../../src","sources":["common/web/utils/dom.ts"],"mappings":"AAAA,YAAY;;AAEZ,OAAO,SAASA,sBAAsBA,CAACC,OAAoB,EAAE;EAC3D,IAAI,CAACA,OAAO,CAACC,KAAK,EAAE;IAClB;EACF;EAEAD,OAAO,CAACC,KAAK,CAACC,aAAa,GAAG,EAAE;EAChCF,OAAO,CAACC,KAAK,CAACE,iBAAiB,GAAG,EAAE;EACpCH,OAAO,CAACC,KAAK,CAACG,cAAc,GAAG,EAAE;EACjCJ,OAAO,CAACC,KAAK,CAACI,iBAAiB,GAAG,EAAE;EACpCL,OAAO,CAACC,KAAK,CAACK,kBAAkB,GAAG,EAAE;EACrCN,OAAO,CAACC,KAAK,CAACM,kBAAkB,GAAG,EAAE;EACrCP,OAAO,CAACC,KAAK,CAACO,uBAAuB,GAAG,EAAE;EAC1CR,OAAO,CAACC,KAAK,CAACQ,uBAAuB,GAAG,EAAE;AAC5C","ignoreList":[]}
@@ -1,4 +1,5 @@
1
1
  'use strict';
2
2
 
3
3
  export * from './colors';
4
+ export * from './dom';
4
5
  //# sourceMappingURL=index.js.map
@@ -1 +1 @@
1
- {"version":3,"names":[],"sourceRoot":"../../../../../src","sources":["common/web/utils/index.ts"],"mappings":"AAAA,YAAY;;AACZ,cAAc,UAAU","ignoreList":[]}
1
+ {"version":3,"names":[],"sourceRoot":"../../../../../src","sources":["common/web/utils/index.ts"],"mappings":"AAAA,YAAY;;AACZ,cAAc,UAAU;AACxB,cAAc,OAAO","ignoreList":[]}
@@ -130,14 +130,14 @@ export default class CSSAnimationsManager {
130
130
  newAnimationSettings[i] = normalizedSettings;
131
131
  return;
132
132
  }
133
+
134
+ // Check if the order of animations has changed
135
+ animationsArrayChanged ||= this.attachedAnimations[i].keyframesRule.name !== keyframesRule.name;
133
136
  const updates = getAnimationSettingsUpdates(oldAnimation.normalizedSettings, normalizedSettings);
134
137
  if (Object.keys(updates).length > 0) {
135
138
  hasSettingsUpdates = true;
136
139
  settingsUpdates[i] = updates;
137
140
  }
138
- if (oldAnimation.keyframesRule.name !== keyframesRule.name) {
139
- animationsArrayChanged = true;
140
- }
141
141
  });
142
142
  const result = {};
143
143
  if (animationsArrayChanged) {
@@ -1 +1 @@
1
- {"version":3,"names":["cssKeyframesRegistry","CSSKeyframesRuleImpl","createSingleCSSAnimationProperties","getAnimationSettingsUpdates","normalizeSingleCSSAnimationSettings","applyCSSAnimations","unregisterCSSAnimations","CSSAnimationsManager","attachedAnimations","constructor","shadowNodeWrapper","viewName","viewTag","update","animationProperties","detach","processedAnimations","processAnimations","registerKeyframesUsage","animationUpdates","getAnimationUpdates","animationNames","length","unmountCleanup","unregisterKeyframesUsage","newAnimationNames","Set","forEach","keyframesRule","add","name","has","remove","singleAnimationPropertiesArray","map","properties","keyframes","animationName","cssText","JSON","stringify","get","normalizedSettings","buildAnimationsMap","animations","reduceRight","acc","animation","push","newAnimationSettings","settingsUpdates","animationsArrayChanged","hasNewAnimations","hasSettingsUpdates","oldAnimations","i","oldAnimation","pop","updates","Object","keys","result"],"sourceRoot":"../../../../../src","sources":["css/native/managers/CSSAnimationsManager.ts"],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"names":["cssKeyframesRegistry","CSSKeyframesRuleImpl","createSingleCSSAnimationProperties","getAnimationSettingsUpdates","normalizeSingleCSSAnimationSettings","applyCSSAnimations","unregisterCSSAnimations","CSSAnimationsManager","attachedAnimations","constructor","shadowNodeWrapper","viewName","viewTag","update","animationProperties","detach","processedAnimations","processAnimations","registerKeyframesUsage","animationUpdates","getAnimationUpdates","animationNames","length","unmountCleanup","unregisterKeyframesUsage","newAnimationNames","Set","forEach","keyframesRule","add","name","has","remove","singleAnimationPropertiesArray","map","properties","keyframes","animationName","cssText","JSON","stringify","get","normalizedSettings","buildAnimationsMap","animations","reduceRight","acc","animation","push","newAnimationSettings","settingsUpdates","animationsArrayChanged","hasNewAnimations","hasSettingsUpdates","oldAnimations","i","oldAnimation","pop","updates","Object","keys","result"],"sourceRoot":"../../../../../src","sources":["css/native/managers/CSSAnimationsManager.ts"],"mappings":"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","ignoreList":[]}
@@ -1,6 +1,7 @@
1
1
  'use strict';
2
2
 
3
3
  import { convertPropertiesToArrays, kebabizeCamelCase, maybeAddSuffix } from '../../../common';
4
+ import { removeElementAnimation } from '../../../common/web';
4
5
  import { normalizeTimeUnit } from '../../utils';
5
6
  import { processKeyframeDefinitions } from '../animationParser';
6
7
  import { configureWebCSSAnimations, insertCSSAnimation, removeCSSAnimation } from '../domUtils';
@@ -83,12 +84,7 @@ export default class CSSAnimationsManager {
83
84
  if (attachedAnimations.length === 0) {
84
85
  return;
85
86
  }
86
- this.element.style.animationDuration = '';
87
- this.element.style.animationDelay = '';
88
- this.element.style.animationDirection = '';
89
- this.element.style.animationFillMode = '';
90
- this.element.style.animationPlayState = '';
91
- this.element.style.animationTimingFunction = '';
87
+ removeElementAnimation(this.element);
92
88
  this.removeAnimationsFromStyleSheet(attachedAnimations);
93
89
  this.unmountCleanupCalled = false;
94
90
  this.attachedAnimations = {};
@@ -1 +1 @@
1
- {"version":3,"names":["convertPropertiesToArrays","kebabizeCamelCase","maybeAddSuffix","normalizeTimeUnit","processKeyframeDefinitions","configureWebCSSAnimations","insertCSSAnimation","removeCSSAnimation","CSSKeyframesRuleImpl","maybeAddSuffixes","parseTimingFunction","isCSSKeyframesRuleImpl","keyframes","CSSAnimationsManager","attachedAnimations","unmountCleanupCalled","constructor","element","update","animationProperties","detach","animationName","definitions","animationSettings","length","timestamp","Date","now","processedAnimations","map","definition","processedAnimation","processedKeyframes","keyframesRule","removable","creationTimestamp","elapsedTime","updateAttachedAnimations","setElementAnimations","unmountCleanup","setTimeout","removeAnimationsFromStyleSheet","Object","values","style","animationDuration","animationDelay","animationDirection","animationFillMode","animationPlayState","animationTimingFunction","newAttachedAnimations","forEach","rule","name","join","animationDelays","i","providedDelay","animationIterationCount","animations"],"sourceRoot":"../../../../../src","sources":["css/web/managers/CSSAnimationsManager.ts"],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"names":["convertPropertiesToArrays","kebabizeCamelCase","maybeAddSuffix","removeElementAnimation","normalizeTimeUnit","processKeyframeDefinitions","configureWebCSSAnimations","insertCSSAnimation","removeCSSAnimation","CSSKeyframesRuleImpl","maybeAddSuffixes","parseTimingFunction","isCSSKeyframesRuleImpl","keyframes","CSSAnimationsManager","attachedAnimations","unmountCleanupCalled","constructor","element","update","animationProperties","detach","animationName","definitions","animationSettings","length","timestamp","Date","now","processedAnimations","map","definition","processedAnimation","processedKeyframes","keyframesRule","removable","creationTimestamp","elapsedTime","updateAttachedAnimations","setElementAnimations","unmountCleanup","setTimeout","removeAnimationsFromStyleSheet","Object","values","newAttachedAnimations","forEach","rule","name","style","join","animationDuration","animationDelays","animationDelay","i","providedDelay","animationIterationCount","animationDirection","animationFillMode","animationPlayState","animationTimingFunction","animations"],"sourceRoot":"../../../../../src","sources":["css/web/managers/CSSAnimationsManager.ts"],"mappings":"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","ignoreList":[]}
@@ -58,14 +58,14 @@ function tryGetAnimationConfig(props, animationType) {
58
58
  const hasInitialValues = config.initialValues !== undefined;
59
59
  let animationName;
60
60
  if (isCustomKeyframe) {
61
- animationName = createCustomKeyFrameAnimation(config.definitions);
61
+ animationName = createCustomKeyFrameAnimation(config.definitions, animationType);
62
62
  } else if (typeof config === 'function') {
63
63
  animationName = config.presetName;
64
64
  } else {
65
65
  animationName = config.constructor.presetName;
66
66
  }
67
67
  if (hasInitialValues) {
68
- animationName = createAnimationWithInitialValues(animationName, config.initialValues);
68
+ animationName = createAnimationWithInitialValues(animationName, config.initialValues, animationType);
69
69
  }
70
70
  const shouldFail = checkUndefinedAnimationFail(animationName, isLayoutTransition || isCustomKeyframe || hasInitialValues);
71
71
  if (shouldFail) {
@@ -1 +1 @@
1
- {"version":3,"names":["logger","LayoutAnimationType","EasingNameSymbol","Keyframe","makeElementVisible","getProcessedConfig","handleExitingAnimation","handleLayoutTransition","maybeModifyStyleForKeyframe","setElementAnimation","Animations","createAnimationWithInitialValues","createCustomKeyFrameAnimation","areDOMRectsEqual","chooseConfig","animationType","props","config","ENTERING","entering","EXITING","exiting","LAYOUT","layout","checkUndefinedAnimationFail","initialAnimationName","needsCustomization","warn","maybeReportOverwrittenProperties","keyframe","styles","propertyRegex","animationProperties","Set","match","matchAll","add","commonProperties","Array","from","filter","style","has","length","join","chooseAction","animationConfig","element","transitionData","reversed","tryGetAnimationConfig","isLayoutTransition","isCustomKeyframe","hasInitialValues","initialValues","undefined","animationName","definitions","presetName","constructor","shouldFail","keyframeTimestamps","Object","keys","includes","startWebLayoutAnimation","tryActivateLayoutTransition","snapshot","rect","getBoundingClientRect","enteringAnimation","enteringV","exitingAnimation","exitingV","deltaX","width","deltaY","height","translateX","x","translateY","y","scaleX","scaleY","easingX","easingXV","easingY","easingYV"],"sourceRoot":"../../../../src","sources":["layoutReanimation/web/animationsManager.ts"],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"names":["logger","LayoutAnimationType","EasingNameSymbol","Keyframe","makeElementVisible","getProcessedConfig","handleExitingAnimation","handleLayoutTransition","maybeModifyStyleForKeyframe","setElementAnimation","Animations","createAnimationWithInitialValues","createCustomKeyFrameAnimation","areDOMRectsEqual","chooseConfig","animationType","props","config","ENTERING","entering","EXITING","exiting","LAYOUT","layout","checkUndefinedAnimationFail","initialAnimationName","needsCustomization","warn","maybeReportOverwrittenProperties","keyframe","styles","propertyRegex","animationProperties","Set","match","matchAll","add","commonProperties","Array","from","filter","style","has","length","join","chooseAction","animationConfig","element","transitionData","reversed","tryGetAnimationConfig","isLayoutTransition","isCustomKeyframe","hasInitialValues","initialValues","undefined","animationName","definitions","presetName","constructor","shouldFail","keyframeTimestamps","Object","keys","includes","startWebLayoutAnimation","tryActivateLayoutTransition","snapshot","rect","getBoundingClientRect","enteringAnimation","enteringV","exitingAnimation","exitingV","deltaX","width","deltaY","height","translateX","x","translateY","y","scaleX","scaleY","easingX","easingXV","easingY","easingYV"],"sourceRoot":"../../../../src","sources":["layoutReanimation/web/animationsManager.ts"],"mappings":"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","ignoreList":[]}
@@ -1,6 +1,7 @@
1
1
  'use strict';
2
2
 
3
3
  import { logger } from '../../common';
4
+ import { removeElementAnimation } from '../../common/web';
4
5
  import { LayoutAnimationType, ReduceMotion } from '../../commonTypes';
5
6
  import { EasingNameSymbol } from '../../Easing';
6
7
  import { _updatePropsJS } from '../../ReanimatedModule/js-reanimated';
@@ -12,6 +13,22 @@ import { TransitionGenerator } from './createAnimation';
12
13
  import { scheduleAnimationCleanup } from './domUtils';
13
14
  import { getEasingByName, maybeGetBezierEasing, WebEasings } from './Easing.web';
14
15
  import { prepareCurvedTransition } from './transition/Curved.web';
16
+ function getSnapshotForElement(element) {
17
+ const existingSnapshot = snapshots.get(element);
18
+ if (existingSnapshot) {
19
+ return existingSnapshot;
20
+ }
21
+ const rect = element.getBoundingClientRect();
22
+ const fallbackSnapshot = {
23
+ top: rect.top,
24
+ left: rect.left,
25
+ width: rect.width,
26
+ height: rect.height,
27
+ scrollOffsets: getElementScrollValue(element)
28
+ };
29
+ snapshots.set(element, fallbackSnapshot);
30
+ return fallbackSnapshot;
31
+ }
15
32
  function getEasingFromConfig(config) {
16
33
  if (!config.easingV) {
17
34
  return getEasingByName('linear');
@@ -110,10 +127,12 @@ export function setElementAnimation(element, animationConfig, shouldSavePosition
110
127
  } = animationConfig;
111
128
  const configureAnimation = () => {
112
129
  element.style.animationName = animationName;
113
- element.style.animationFillMode = 'backwards';
114
130
  element.style.animationDuration = `${duration}s`;
115
131
  element.style.animationDelay = `${delay}s`;
116
132
  element.style.animationTimingFunction = easing;
133
+ if (animationConfig.animationType === LayoutAnimationType.ENTERING && delay > 0) {
134
+ element.style.animationFillMode = 'backwards';
135
+ }
117
136
  };
118
137
  if (animationConfig.animationType === LayoutAnimationType.ENTERING) {
119
138
  // On chrome sometimes entering animations flicker. This is most likely caused by animation being interrupted
@@ -161,7 +180,7 @@ export function setElementAnimation(element, animationConfig, shouldSavePosition
161
180
  if (!(animationName in Animations)) {
162
181
  scheduleAnimationCleanup(animationName, duration + delay, () => {
163
182
  if (shouldSavePosition) {
164
- setElementPosition(element, snapshots.get(element));
183
+ setElementPosition(element, getSnapshotForElement(element));
165
184
  }
166
185
  maybeRemoveElement();
167
186
  maybeCallCallback(false);
@@ -228,6 +247,19 @@ function getElementScrollValue(element) {
228
247
  }
229
248
  return scrollOffsets;
230
249
  }
250
+ function cleanupEnteringAnimations(element) {
251
+ const animationName = element.style.animationName;
252
+
253
+ // Check if the animation name indicates it's an entering animation
254
+ if (animationName && animationName.startsWith('REA-ENTERING-')) {
255
+ removeElementAnimation(element);
256
+ }
257
+ for (const child of Array.from(element.children)) {
258
+ if (child instanceof HTMLElement) {
259
+ cleanupEnteringAnimations(child);
260
+ }
261
+ }
262
+ }
231
263
  export function handleExitingAnimation(element, animationConfig) {
232
264
  const parent = element.offsetParent;
233
265
  const dummy = element.cloneNode();
@@ -250,6 +282,10 @@ export function handleExitingAnimation(element, animationConfig) {
250
282
  };
251
283
  saveScrollPosition(element);
252
284
 
285
+ // Clean up entering animations on all descendants before moving them to the dummy.
286
+ // This prevents entering animations from restarting when elements are moved to a new parent.
287
+ cleanupEnteringAnimations(element);
288
+
253
289
  // After cloning the element, we want to move all children from original element to its clone. This is because original element
254
290
  // will be unmounted, therefore when this code executes in child component, parent will be either empty or removed soon.
255
291
  // Using element.cloneNode(true) doesn't solve the problem, because it creates copy of children and we won't be able to set their animations
@@ -270,7 +306,7 @@ export function handleExitingAnimation(element, animationConfig) {
270
306
  }
271
307
  };
272
308
  restoreScrollPosition(dummy);
273
- const snapshot = snapshots.get(element);
309
+ const snapshot = getSnapshotForElement(element);
274
310
  const scrollOffsets = getElementScrollValue(element);
275
311
 
276
312
  // Scroll does not trigger snapshotting, therefore if we start exiting animation after
@@ -1 +1 @@
1
- {"version":3,"names":["logger","LayoutAnimationType","ReduceMotion","EasingNameSymbol","_updatePropsJS","ReducedMotionManager","Keyframe","setElementPosition","snapshots","Animations","TransitionType","TransitionGenerator","scheduleAnimationCleanup","getEasingByName","maybeGetBezierEasing","WebEasings","prepareCurvedTransition","getEasingFromConfig","config","easingV","easingName","bezierEasing","warn","getRandomDelay","maxDelay","Math","floor","random","getDelayFromConfig","shouldRandomizeDelay","randomizeDelay","delay","delayV","getReducedMotionFromConfig","reduceMotionV","jsValue","Never","Always","getDurationFromConfig","animationName","defaultDuration","duration","durationV","undefined","getCallbackFromConfig","callbackV","getReversedFromConfig","reversed","getProcessedConfig","animationType","easing","callback","maybeModifyStyleForKeyframe","element","style","animationFillMode","timestampRules","Object","values","definitions","position","saveSnapshot","rect","getBoundingClientRect","snapshot","top","left","width","height","scrollOffsets","getElementScrollValue","set","setElementAnimation","animationConfig","shouldSavePosition","parent","configureAnimation","animationDuration","animationDelay","animationTimingFunction","ENTERING","requestAnimationFrame","maybeRemoveElement","isDummy","contains","removedAfterAnimation","removeChild","wasCallbackCalled","maybeCallCallback","finished","onanimationend","removeEventListener","animationCancelHandler","onanimationstart","visibility","addEventListener","get","handleLayoutTransition","transitionData","LINEAR","SEQUENCED","FADING","JUMPING","CURVED","ENTRY_EXIT","transitionKeyframeName","dummyTransitionKeyframeName","dummy","dummyAnimationConfig","current","scrollTopOffset","scrollLeftOffset","scrollTop","scrollLeft","parentElement","handleExitingAnimation","offsetParent","cloneNode","dummyClone","scrollPositions","Map","saveScrollPosition","node","child","Array","from","children","firstChild","appendChild","restoreScrollPosition","scrollPosition","currentScrollTopOffset","lastScrollTopOffset","currentScrollLeftOffset","lastScrollLeftOffset"],"sourceRoot":"../../../../src","sources":["layoutReanimation/web/componentUtils.ts"],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"names":["logger","removeElementAnimation","LayoutAnimationType","ReduceMotion","EasingNameSymbol","_updatePropsJS","ReducedMotionManager","Keyframe","setElementPosition","snapshots","Animations","TransitionType","TransitionGenerator","scheduleAnimationCleanup","getEasingByName","maybeGetBezierEasing","WebEasings","prepareCurvedTransition","getSnapshotForElement","element","existingSnapshot","get","rect","getBoundingClientRect","fallbackSnapshot","top","left","width","height","scrollOffsets","getElementScrollValue","set","getEasingFromConfig","config","easingV","easingName","bezierEasing","warn","getRandomDelay","maxDelay","Math","floor","random","getDelayFromConfig","shouldRandomizeDelay","randomizeDelay","delay","delayV","getReducedMotionFromConfig","reduceMotionV","jsValue","Never","Always","getDurationFromConfig","animationName","defaultDuration","duration","durationV","undefined","getCallbackFromConfig","callbackV","getReversedFromConfig","reversed","getProcessedConfig","animationType","easing","callback","maybeModifyStyleForKeyframe","style","animationFillMode","timestampRules","Object","values","definitions","position","saveSnapshot","snapshot","setElementAnimation","animationConfig","shouldSavePosition","parent","configureAnimation","animationDuration","animationDelay","animationTimingFunction","ENTERING","requestAnimationFrame","maybeRemoveElement","isDummy","contains","removedAfterAnimation","removeChild","wasCallbackCalled","maybeCallCallback","finished","onanimationend","removeEventListener","animationCancelHandler","onanimationstart","visibility","addEventListener","handleLayoutTransition","transitionData","LINEAR","SEQUENCED","FADING","JUMPING","CURVED","ENTRY_EXIT","transitionKeyframeName","dummyTransitionKeyframeName","dummy","dummyAnimationConfig","current","scrollTopOffset","scrollLeftOffset","scrollTop","scrollLeft","parentElement","cleanupEnteringAnimations","startsWith","child","Array","from","children","HTMLElement","handleExitingAnimation","offsetParent","cloneNode","dummyClone","scrollPositions","Map","saveScrollPosition","node","firstChild","appendChild","restoreScrollPosition","scrollPosition","currentScrollTopOffset","lastScrollTopOffset","currentScrollLeftOffset","lastScrollLeftOffset"],"sourceRoot":"../../../../src","sources":["layoutReanimation/web/componentUtils.ts"],"mappings":"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","ignoreList":[]}
@@ -1,5 +1,7 @@
1
1
  'use strict';
2
2
 
3
+ import { maybeAddSuffix } from '../../common';
4
+ import { LayoutAnimationType } from '../../commonTypes';
3
5
  import { convertAnimationObjectToKeyframes } from './animationParser';
4
6
  import { AnimationsData, TransitionType } from './config';
5
7
  import { insertWebAnimation } from './domUtils';
@@ -9,11 +11,21 @@ import { FadingTransition } from './transition/Fading.web';
9
11
  import { JumpingTransition } from './transition/Jumping.web';
10
12
  import { LinearTransition } from './transition/Linear.web';
11
13
  import { SequencedTransition } from './transition/Sequenced.web';
14
+ function assignTransformRules(map, transform) {
15
+ if (!transform) {
16
+ return;
17
+ }
18
+ for (const rule of transform) {
19
+ for (const [property, value] of Object.entries(rule)) {
20
+ map.set(property, value);
21
+ }
22
+ }
23
+ }
24
+
12
25
  // Translate values are passed as numbers. However, if `translate` property receives number, it will not automatically
13
26
  // convert it to `px`. Therefore if we want to keep transform we have to add 'px' suffix to each of translate values
14
27
  // that are present inside transform.
15
28
  //
16
-
17
29
  function addPxToTransform(transform) {
18
30
  // @ts-ignore `existingTransform` cannot be string because in that case
19
31
  // we throw error in `extractTransformFromStyle`
@@ -33,7 +45,7 @@ function addPxToTransform(transform) {
33
45
  });
34
46
  return newTransform;
35
47
  }
36
- export function createCustomKeyFrameAnimation(keyframeDefinitions) {
48
+ export function createCustomKeyFrameAnimation(keyframeDefinitions, animationType) {
37
49
  for (const value of Object.values(keyframeDefinitions)) {
38
50
  if (value.transform) {
39
51
  value.transform = addPxToTransform(value.transform);
@@ -44,7 +56,7 @@ export function createCustomKeyFrameAnimation(keyframeDefinitions) {
44
56
  style: keyframeDefinitions,
45
57
  duration: -1
46
58
  };
47
- animationData.name = generateNextCustomKeyframeName();
59
+ animationData.name = generateNextCustomKeyframeName(animationType);
48
60
 
49
61
  // Move keyframe easings one keyframe up (our LA Keyframe definition is different
50
62
  // from the CSS keyframes and expects easing to be present in the keyframe to which
@@ -61,43 +73,32 @@ export function createCustomKeyFrameAnimation(keyframeDefinitions) {
61
73
  insertWebAnimation(animationData.name, parsedKeyframe);
62
74
  return animationData.name;
63
75
  }
64
- export function createAnimationWithInitialValues(animationName, initialValues) {
76
+ export function createAnimationWithInitialValues(animationName, initialValues, animationType) {
65
77
  const animationStyle = structuredClone(AnimationsData[animationName].style);
66
78
  const firstAnimationStep = animationStyle['0'];
67
79
  const {
68
80
  transform,
81
+ originX,
82
+ originY,
69
83
  ...rest
70
84
  } = initialValues;
71
- const transformWithPx = addPxToTransform(transform);
85
+ const transformStyle = new Map();
86
+ assignTransformRules(transformStyle, firstAnimationStep.transform);
72
87
  if (transform) {
73
- // If there was no predefined transform, we can simply assign transform from `initialValues`.
74
- if (!firstAnimationStep.transform) {
75
- firstAnimationStep.transform = transformWithPx;
76
- } else {
77
- // Othwerwise we have to merge predefined transform with the one provided in `initialValues`.
78
- // To do that, we create `Map` that will contain final transform.
79
- const transformStyle = new Map();
80
-
81
- // First we assign all of the predefined rules
82
- for (const rule of firstAnimationStep.transform) {
83
- // In most cases there will be just one iteration
84
- for (const [property, value] of Object.entries(rule)) {
85
- transformStyle.set(property, value);
86
- }
87
- }
88
-
89
- // Then we either add new rule, or override one that already exists.
90
- for (const rule of transformWithPx) {
91
- for (const [property, value] of Object.entries(rule)) {
92
- transformStyle.set(property, value);
93
- }
94
- }
95
-
96
- // Finally, we convert `Map` with final transform back into array of objects.
97
- firstAnimationStep.transform = Array.from(transformStyle, ([property, value]) => ({
98
- [property]: value
99
- }));
100
- }
88
+ const transformWithPx = addPxToTransform(transform);
89
+ assignTransformRules(transformStyle, transformWithPx);
90
+ }
91
+ if (originX !== undefined) {
92
+ transformStyle.set('translateX', maybeAddSuffix(originX, 'px'));
93
+ }
94
+ if (originY !== undefined) {
95
+ transformStyle.set('translateY', maybeAddSuffix(originY, 'px'));
96
+ }
97
+ const mergedTransform = Array.from(transformStyle, ([property, value]) => ({
98
+ [property]: value
99
+ }));
100
+ if (transformStyle.size) {
101
+ firstAnimationStep.transform = mergedTransform;
101
102
  }
102
103
  animationStyle['0'] = {
103
104
  ...animationStyle['0'],
@@ -105,7 +106,7 @@ export function createAnimationWithInitialValues(animationName, initialValues) {
105
106
  };
106
107
 
107
108
  // TODO: Maybe we can extract the logic below into separate function
108
- const keyframeName = generateNextCustomKeyframeName();
109
+ const keyframeName = generateNextCustomKeyframeName(animationType);
109
110
  const animationObject = {
110
111
  name: keyframeName,
111
112
  style: animationStyle,
@@ -116,8 +117,13 @@ export function createAnimationWithInitialValues(animationName, initialValues) {
116
117
  return keyframeName;
117
118
  }
118
119
  let customKeyframeCounter = 0;
119
- function generateNextCustomKeyframeName() {
120
- return `REA${customKeyframeCounter++}`;
120
+ const ANIMATION_TYPE_STRINGS = {
121
+ [LayoutAnimationType.ENTERING]: 'ENTERING',
122
+ [LayoutAnimationType.EXITING]: 'EXITING',
123
+ [LayoutAnimationType.LAYOUT]: 'LAYOUT'
124
+ };
125
+ function generateNextCustomKeyframeName(animationType) {
126
+ return `REA-${ANIMATION_TYPE_STRINGS[animationType] ?? ''}-${customKeyframeCounter++}`;
121
127
  }
122
128
 
123
129
  /**
@@ -130,7 +136,7 @@ function generateNextCustomKeyframeName() {
130
136
  * @returns Keyframe name that represents transition.
131
137
  */
132
138
  export function TransitionGenerator(transitionType, transitionData) {
133
- const transitionKeyframeName = generateNextCustomKeyframeName();
139
+ const transitionKeyframeName = generateNextCustomKeyframeName(LayoutAnimationType.LAYOUT);
134
140
  let dummyTransitionKeyframeName;
135
141
  let transitionObject;
136
142
  switch (transitionType) {
@@ -150,7 +156,7 @@ export function TransitionGenerator(transitionType, transitionData) {
150
156
  // Here code block with {} is necessary because of eslint
151
157
  case TransitionType.CURVED:
152
158
  {
153
- dummyTransitionKeyframeName = generateNextCustomKeyframeName();
159
+ dummyTransitionKeyframeName = generateNextCustomKeyframeName(LayoutAnimationType.LAYOUT);
154
160
  const {
155
161
  firstKeyframeObj,
156
162
  secondKeyframeObj
@@ -1 +1 @@
1
- {"version":3,"names":["convertAnimationObjectToKeyframes","AnimationsData","TransitionType","insertWebAnimation","CurvedTransition","EntryExitTransition","FadingTransition","JumpingTransition","LinearTransition","SequencedTransition","addPxToTransform","transform","newTransform","map","transformProp","newTransformProp","key","value","Object","entries","includes","createCustomKeyFrameAnimation","keyframeDefinitions","values","animationData","name","style","duration","generateNextCustomKeyframeName","offsets","keys","i","length","easing","parsedKeyframe","createAnimationWithInitialValues","animationName","initialValues","animationStyle","structuredClone","firstAnimationStep","rest","transformWithPx","transformStyle","Map","rule","property","set","Array","from","keyframeName","animationObject","keyframe","customKeyframeCounter","TransitionGenerator","transitionType","transitionData","transitionKeyframeName","dummyTransitionKeyframeName","transitionObject","LINEAR","SEQUENCED","FADING","JUMPING","CURVED","firstKeyframeObj","secondKeyframeObj","dummyKeyframe","ENTRY_EXIT","transitionKeyframe"],"sourceRoot":"../../../../src","sources":["layoutReanimation/web/createAnimation.ts"],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"names":["maybeAddSuffix","LayoutAnimationType","convertAnimationObjectToKeyframes","AnimationsData","TransitionType","insertWebAnimation","CurvedTransition","EntryExitTransition","FadingTransition","JumpingTransition","LinearTransition","SequencedTransition","assignTransformRules","map","transform","rule","property","value","Object","entries","set","addPxToTransform","newTransform","transformProp","newTransformProp","key","includes","createCustomKeyFrameAnimation","keyframeDefinitions","animationType","values","animationData","name","style","duration","generateNextCustomKeyframeName","offsets","keys","i","length","easing","parsedKeyframe","createAnimationWithInitialValues","animationName","initialValues","animationStyle","structuredClone","firstAnimationStep","originX","originY","rest","transformStyle","Map","transformWithPx","undefined","mergedTransform","Array","from","size","keyframeName","animationObject","keyframe","customKeyframeCounter","ANIMATION_TYPE_STRINGS","ENTERING","EXITING","LAYOUT","TransitionGenerator","transitionType","transitionData","transitionKeyframeName","dummyTransitionKeyframeName","transitionObject","LINEAR","SEQUENCED","FADING","JUMPING","CURVED","firstKeyframeObj","secondKeyframeObj","dummyKeyframe","ENTRY_EXIT","transitionKeyframe"],"sourceRoot":"../../../../src","sources":["layoutReanimation/web/createAnimation.ts"],"mappings":"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","ignoreList":[]}
@@ -5,5 +5,5 @@
5
5
  * version used to build the native part of the library in runtime. Remember to
6
6
  * keep this in sync with the version declared in `package.json`
7
7
  */
8
- export const jsVersion = '4.3.0-nightly-20251215-ac491ac0a';
8
+ export const jsVersion = '4.3.0-nightly-20251218-f17ee52ac';
9
9
  //# sourceMappingURL=jsVersion.js.map
@@ -1,2 +1,3 @@
1
1
  export * from './style';
2
+ export * from './utils';
2
3
  //# sourceMappingURL=index.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../src/common/web/index.ts"],"names":[],"mappings":"AACA,cAAc,SAAS,CAAC"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../src/common/web/index.ts"],"names":[],"mappings":"AACA,cAAc,SAAS,CAAC;AACxB,cAAc,SAAS,CAAC"}
@@ -0,0 +1,2 @@
1
+ export declare function removeElementAnimation(element: HTMLElement): void;
2
+ //# sourceMappingURL=dom.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"dom.d.ts","sourceRoot":"","sources":["../../../../../src/common/web/utils/dom.ts"],"names":[],"mappings":"AAEA,wBAAgB,sBAAsB,CAAC,OAAO,EAAE,WAAW,QAa1D"}
@@ -1,2 +1,3 @@
1
1
  export * from './colors';
2
+ export * from './dom';
2
3
  //# sourceMappingURL=index.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../../src/common/web/utils/index.ts"],"names":[],"mappings":"AACA,cAAc,UAAU,CAAC"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../../src/common/web/utils/index.ts"],"names":[],"mappings":"AACA,cAAc,UAAU,CAAC;AACzB,cAAc,OAAO,CAAC"}
@@ -26,8 +26,8 @@ export type NormalizedSingleCSSAnimationSettings = {
26
26
  };
27
27
  export type CSSAnimationUpdates = {
28
28
  animationNames?: string[];
29
- newAnimationSettings?: Record<string, NormalizedSingleCSSAnimationSettings>;
30
- settingsUpdates?: Record<string, Partial<NormalizedSingleCSSAnimationSettings>>;
29
+ newAnimationSettings?: Record<number, NormalizedSingleCSSAnimationSettings>;
30
+ settingsUpdates?: Record<number, Partial<NormalizedSingleCSSAnimationSettings>>;
31
31
  };
32
32
  export {};
33
33
  //# sourceMappingURL=animation.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"CSSAnimationsManager.d.ts","sourceRoot":"","sources":["../../../../../src/css/web/managers/CSSAnimationsManager.ts"],"names":[],"mappings":"AAOA,OAAO,KAAK,EAAE,qBAAqB,EAAE,MAAM,yCAAyC,CAAC;AACrF,OAAO,KAAK,EAGV,8BAA8B,EAC9B,qBAAqB,EACtB,MAAM,aAAa,CAAC;AAyBrB,MAAM,CAAC,OAAO,OAAO,oBAAqB,YAAW,qBAAqB;IACxE,OAAO,CAAC,QAAQ,CAAC,OAAO,CAAwB;IAGhD,OAAO,CAAC,kBAAkB,CAA0C;IACpE,OAAO,CAAC,oBAAoB,CAAS;gBAEzB,OAAO,EAAE,qBAAqB;IAM1C,MAAM,CAAC,mBAAmB,EAAE,8BAA8B,GAAG,IAAI;IA8DjE,cAAc,IAAI,IAAI;IAetB,OAAO,CAAC,MAAM;IAmBd,OAAO,CAAC,wBAAwB;IA2BhC,OAAO,CAAC,oBAAoB;IAsD5B,OAAO,CAAC,8BAA8B;CASvC"}
1
+ {"version":3,"file":"CSSAnimationsManager.d.ts","sourceRoot":"","sources":["../../../../../src/css/web/managers/CSSAnimationsManager.ts"],"names":[],"mappings":"AAQA,OAAO,KAAK,EAAE,qBAAqB,EAAE,MAAM,yCAAyC,CAAC;AACrF,OAAO,KAAK,EAGV,8BAA8B,EAC9B,qBAAqB,EACtB,MAAM,aAAa,CAAC;AAyBrB,MAAM,CAAC,OAAO,OAAO,oBAAqB,YAAW,qBAAqB;IACxE,OAAO,CAAC,QAAQ,CAAC,OAAO,CAAwB;IAGhD,OAAO,CAAC,kBAAkB,CAA0C;IACpE,OAAO,CAAC,oBAAoB,CAAS;gBAEzB,OAAO,EAAE,qBAAqB;IAM1C,MAAM,CAAC,mBAAmB,EAAE,8BAA8B,GAAG,IAAI;IA8DjE,cAAc,IAAI,IAAI;IAetB,OAAO,CAAC,MAAM;IAcd,OAAO,CAAC,wBAAwB;IA2BhC,OAAO,CAAC,oBAAoB;IAsD5B,OAAO,CAAC,8BAA8B;CASvC"}
@@ -1 +1 @@
1
- {"version":3,"file":"animationsManager.d.ts","sourceRoot":"","sources":["../../../../src/layoutReanimation/web/animationsManager.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,mBAAmB,EAAE,MAAM,mBAAmB,CAAC;AACxD,OAAO,KAAK,EACV,sBAAsB,EAEvB,MAAM,2CAA2C,CAAC;AAEnD,OAAO,KAAK,EAAE,qBAAqB,EAAE,MAAM,sCAAsC,CAAC;AAElF,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,mBAAmB,CAAC;AA4KxD,wBAAgB,uBAAuB,CACrC,cAAc,SAAS,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,EAE9C,KAAK,EAAE,QAAQ,CAAC,sBAAsB,CAAC,cAAc,CAAC,CAAC,EACvD,OAAO,EAAE,qBAAqB,EAC9B,aAAa,EAAE,mBAAmB,EAClC,cAAc,CAAC,EAAE,cAAc,QAuBhC;AAED,wBAAgB,2BAA2B,CACzC,cAAc,SAAS,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,EAE9C,KAAK,EAAE,QAAQ,CAAC,sBAAsB,CAAC,cAAc,CAAC,CAAC,EACvD,OAAO,EAAE,qBAAqB,EAC9B,QAAQ,EAAE,OAAO,QAsClB"}
1
+ {"version":3,"file":"animationsManager.d.ts","sourceRoot":"","sources":["../../../../src/layoutReanimation/web/animationsManager.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,mBAAmB,EAAE,MAAM,mBAAmB,CAAC;AACxD,OAAO,KAAK,EACV,sBAAsB,EAEvB,MAAM,2CAA2C,CAAC;AAEnD,OAAO,KAAK,EAAE,qBAAqB,EAAE,MAAM,sCAAsC,CAAC;AAElF,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,mBAAmB,CAAC;AA8KxD,wBAAgB,uBAAuB,CACrC,cAAc,SAAS,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,EAE9C,KAAK,EAAE,QAAQ,CAAC,sBAAsB,CAAC,cAAc,CAAC,CAAC,EACvD,OAAO,EAAE,qBAAqB,EAC9B,aAAa,EAAE,mBAAmB,EAClC,cAAc,CAAC,EAAE,cAAc,QAuBhC;AAED,wBAAgB,2BAA2B,CACzC,cAAc,SAAS,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,EAE9C,KAAK,EAAE,QAAQ,CAAC,sBAAsB,CAAC,cAAc,CAAC,CAAC,EACvD,OAAO,EAAE,qBAAqB,EAC9B,QAAQ,EAAE,OAAO,QAsClB"}
@@ -1 +1 @@
1
- {"version":3,"file":"componentUtils.d.ts","sourceRoot":"","sources":["../../../../src/layoutReanimation/web/componentUtils.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,mBAAmB,EAAgB,MAAM,mBAAmB,CAAC;AAGtE,OAAO,KAAK,EAAE,qBAAqB,EAAE,MAAM,sCAAsC,CAAC;AAIlF,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,mBAAmB,CAAC;AAGxD,OAAO,KAAK,EAEV,eAAe,EAEf,YAAY,EAGb,MAAM,UAAU,CAAC;AAwDlB,wBAAgB,0BAA0B,CAAC,MAAM,EAAE,YAAY,WAa9D;AA2BD,wBAAgB,kBAAkB,CAChC,aAAa,EAAE,MAAM,EACrB,aAAa,EAAE,mBAAmB,EAClC,MAAM,EAAE,YAAY,GACnB,eAAe,CAUjB;AAED,wBAAgB,2BAA2B,CACzC,OAAO,EAAE,WAAW,EACpB,MAAM,EAAE,YAAY,QAkBrB;AAED,wBAAgB,YAAY,CAAC,OAAO,EAAE,WAAW,QAYhD;AAED,wBAAgB,mBAAmB,CACjC,OAAO,EAAE,qBAAqB,EAC9B,eAAe,EAAE,eAAe,EAChC,kBAAkB,UAAQ,EAC1B,MAAM,GAAE,OAAO,GAAG,IAAW,QAwE9B;AAED,wBAAgB,sBAAsB,CACpC,OAAO,EAAE,qBAAqB,EAC9B,eAAe,EAAE,eAAe,EAChC,cAAc,EAAE,cAAc,QA8C/B;AAyBD,wBAAgB,sBAAsB,CACpC,OAAO,EAAE,qBAAqB,EAC9B,eAAe,EAAE,eAAe,QA4EjC"}
1
+ {"version":3,"file":"componentUtils.d.ts","sourceRoot":"","sources":["../../../../src/layoutReanimation/web/componentUtils.ts"],"names":[],"mappings":"AAIA,OAAO,EAAE,mBAAmB,EAAgB,MAAM,mBAAmB,CAAC;AAGtE,OAAO,KAAK,EAAE,qBAAqB,EAAE,MAAM,sCAAsC,CAAC;AAIlF,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,mBAAmB,CAAC;AAGxD,OAAO,KAAK,EAEV,eAAe,EAEf,YAAY,EAGb,MAAM,UAAU,CAAC;AA8ElB,wBAAgB,0BAA0B,CAAC,MAAM,EAAE,YAAY,WAa9D;AA2BD,wBAAgB,kBAAkB,CAChC,aAAa,EAAE,MAAM,EACrB,aAAa,EAAE,mBAAmB,EAClC,MAAM,EAAE,YAAY,GACnB,eAAe,CAUjB;AAED,wBAAgB,2BAA2B,CACzC,OAAO,EAAE,WAAW,EACpB,MAAM,EAAE,YAAY,QAkBrB;AAED,wBAAgB,YAAY,CAAC,OAAO,EAAE,WAAW,QAYhD;AAED,wBAAgB,mBAAmB,CACjC,OAAO,EAAE,qBAAqB,EAC9B,eAAe,EAAE,eAAe,EAChC,kBAAkB,UAAQ,EAC1B,MAAM,GAAE,OAAO,GAAG,IAAW,QA8E9B;AAED,wBAAgB,sBAAsB,CACpC,OAAO,EAAE,qBAAqB,EAC9B,eAAe,EAAE,eAAe,EAChC,cAAc,EAAE,cAAc,QA8C/B;AAwCD,wBAAgB,sBAAsB,CACpC,OAAO,EAAE,qBAAqB,EAC9B,eAAe,EAAE,eAAe,QAgFjC"}
@@ -1,8 +1,9 @@
1
+ import { LayoutAnimationType } from '../../commonTypes';
1
2
  import type { TransitionData } from './animationParser';
2
3
  import type { InitialValuesStyleProps, KeyframeDefinitions } from './config';
3
4
  import { TransitionType } from './config';
4
- export declare function createCustomKeyFrameAnimation(keyframeDefinitions: KeyframeDefinitions): string;
5
- export declare function createAnimationWithInitialValues(animationName: string, initialValues: InitialValuesStyleProps): string;
5
+ export declare function createCustomKeyFrameAnimation(keyframeDefinitions: KeyframeDefinitions, animationType: LayoutAnimationType): string;
6
+ export declare function createAnimationWithInitialValues(animationName: string, initialValues: InitialValuesStyleProps, animationType: LayoutAnimationType): string;
6
7
  /**
7
8
  * Creates transition of given type, appends it to stylesheet and returns
8
9
  * keyframe name.
@@ -1 +1 @@
1
- {"version":3,"file":"createAnimation.d.ts","sourceRoot":"","sources":["../../../../src/layoutReanimation/web/createAnimation.ts"],"names":[],"mappings":"AAIA,OAAO,KAAK,EAGV,cAAc,EACf,MAAM,mBAAmB,CAAC;AAE3B,OAAO,KAAK,EAAE,uBAAuB,EAAE,mBAAmB,EAAE,MAAM,UAAU,CAAC;AAC7E,OAAO,EAAkB,cAAc,EAAE,MAAM,UAAU,CAAC;AA0C1D,wBAAgB,6BAA6B,CAC3C,mBAAmB,EAAE,mBAAmB,UAoCzC;AAED,wBAAgB,gCAAgC,CAC9C,aAAa,EAAE,MAAM,EACrB,aAAa,EAAE,uBAAuB,UA6DvC;AAQD;;;;;;;;GAQG;AACH,wBAAgB,mBAAmB,CACjC,cAAc,EAAE,cAAc,EAC9B,cAAc,EAAE,cAAc;;;EAkE/B"}
1
+ {"version":3,"file":"createAnimation.d.ts","sourceRoot":"","sources":["../../../../src/layoutReanimation/web/createAnimation.ts"],"names":[],"mappings":"AAKA,OAAO,EAAE,mBAAmB,EAAE,MAAM,mBAAmB,CAAC;AACxD,OAAO,KAAK,EAGV,cAAc,EACf,MAAM,mBAAmB,CAAC;AAE3B,OAAO,KAAK,EAAE,uBAAuB,EAAE,mBAAmB,EAAE,MAAM,UAAU,CAAC;AAC7E,OAAO,EAAkB,cAAc,EAAE,MAAM,UAAU,CAAC;AAyD1D,wBAAgB,6BAA6B,CAC3C,mBAAmB,EAAE,mBAAmB,EACxC,aAAa,EAAE,mBAAmB,UAoCnC;AAED,wBAAgB,gCAAgC,CAC9C,aAAa,EAAE,MAAM,EACrB,aAAa,EAAE,uBAAuB,EACtC,aAAa,EAAE,mBAAmB,UAkDnC;AAcD;;;;;;;;GAQG;AACH,wBAAgB,mBAAmB,CACjC,cAAc,EAAE,cAAc,EAC9B,cAAc,EAAE,cAAc;;;EAsE/B"}
@@ -3,5 +3,5 @@
3
3
  * version used to build the native part of the library in runtime. Remember to
4
4
  * keep this in sync with the version declared in `package.json`
5
5
  */
6
- export declare const jsVersion = "4.3.0-nightly-20251215-ac491ac0a";
6
+ export declare const jsVersion = "4.3.0-nightly-20251218-f17ee52ac";
7
7
  //# sourceMappingURL=jsVersion.d.ts.map
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "react-native-reanimated",
3
- "version": "4.3.0-nightly-20251215-ac491ac0a",
3
+ "version": "4.3.0-nightly-20251218-f17ee52ac",
4
4
  "description": "More powerful alternative to Animated library for React Native.",
5
5
  "keywords": [
6
6
  "react-native",
@@ -98,7 +98,7 @@
98
98
  "peerDependencies": {
99
99
  "react": "*",
100
100
  "react-native": "*",
101
- "react-native-worklets": "0.8.0-nightly-20251215-ac491ac0a"
101
+ "react-native-worklets": "0.8.0-nightly-20251218-f17ee52ac"
102
102
  },
103
103
  "devDependencies": {
104
104
  "@babel/core": "7.28.4",
@@ -1,2 +1,3 @@
1
1
  'use strict';
2
2
  export * from './style';
3
+ export * from './utils';
@@ -0,0 +1,16 @@
1
+ 'use strict';
2
+
3
+ export function removeElementAnimation(element: HTMLElement) {
4
+ if (!element.style) {
5
+ return;
6
+ }
7
+
8
+ element.style.animationName = '';
9
+ element.style.animationDuration = '';
10
+ element.style.animationDelay = '';
11
+ element.style.animationFillMode = '';
12
+ element.style.animationPlayState = '';
13
+ element.style.animationDirection = '';
14
+ element.style.animationTimingFunction = '';
15
+ element.style.animationIterationCount = '';
16
+ }
@@ -1,2 +1,3 @@
1
1
  'use strict';
2
2
  export * from './colors';
3
+ export * from './dom';
@@ -191,6 +191,10 @@ export default class CSSAnimationsManager implements ICSSAnimationsManager {
191
191
  return;
192
192
  }
193
193
 
194
+ // Check if the order of animations has changed
195
+ animationsArrayChanged ||=
196
+ this.attachedAnimations[i].keyframesRule.name !== keyframesRule.name;
197
+
194
198
  const updates = getAnimationSettingsUpdates(
195
199
  oldAnimation.normalizedSettings,
196
200
  normalizedSettings
@@ -200,10 +204,6 @@ export default class CSSAnimationsManager implements ICSSAnimationsManager {
200
204
  hasSettingsUpdates = true;
201
205
  settingsUpdates[i] = updates;
202
206
  }
203
-
204
- if (oldAnimation.keyframesRule.name !== keyframesRule.name) {
205
- animationsArrayChanged = true;
206
- }
207
207
  });
208
208
 
209
209
  const result: CSSAnimationUpdates = {};
@@ -47,9 +47,9 @@ export type NormalizedSingleCSSAnimationSettings = {
47
47
 
48
48
  export type CSSAnimationUpdates = {
49
49
  animationNames?: string[];
50
- newAnimationSettings?: Record<string, NormalizedSingleCSSAnimationSettings>;
50
+ newAnimationSettings?: Record<number, NormalizedSingleCSSAnimationSettings>;
51
51
  settingsUpdates?: Record<
52
- string,
52
+ number,
53
53
  Partial<NormalizedSingleCSSAnimationSettings>
54
54
  >;
55
55
  };
@@ -5,6 +5,7 @@ import {
5
5
  kebabizeCamelCase,
6
6
  maybeAddSuffix,
7
7
  } from '../../../common';
8
+ import { removeElementAnimation } from '../../../common/web';
8
9
  import type { ReanimatedHTMLElement } from '../../../ReanimatedModule/js-reanimated';
9
10
  import type {
10
11
  CSSAnimationKeyframes,
@@ -133,12 +134,7 @@ export default class CSSAnimationsManager implements ICSSAnimationsManager {
133
134
  return;
134
135
  }
135
136
 
136
- this.element.style.animationDuration = '';
137
- this.element.style.animationDelay = '';
138
- this.element.style.animationDirection = '';
139
- this.element.style.animationFillMode = '';
140
- this.element.style.animationPlayState = '';
141
- this.element.style.animationTimingFunction = '';
137
+ removeElementAnimation(this.element);
142
138
 
143
139
  this.removeAnimationsFromStyleSheet(attachedAnimations);
144
140
  this.unmountCleanupCalled = false;
@@ -132,7 +132,8 @@ function tryGetAnimationConfig<ComponentProps extends Record<string, unknown>>(
132
132
 
133
133
  if (isCustomKeyframe) {
134
134
  animationName = createCustomKeyFrameAnimation(
135
- (config as CustomConfig).definitions as KeyframeDefinitions
135
+ (config as CustomConfig).definitions as KeyframeDefinitions,
136
+ animationType
136
137
  );
137
138
  } else if (typeof config === 'function') {
138
139
  animationName = config.presetName;
@@ -144,7 +145,8 @@ function tryGetAnimationConfig<ComponentProps extends Record<string, unknown>>(
144
145
  if (hasInitialValues) {
145
146
  animationName = createAnimationWithInitialValues(
146
147
  animationName,
147
- (config as CustomConfig).initialValues as InitialValuesStyleProps
148
+ (config as CustomConfig).initialValues as InitialValuesStyleProps,
149
+ animationType
148
150
  );
149
151
  }
150
152
 
@@ -1,5 +1,7 @@
1
1
  'use strict';
2
+
2
3
  import { logger } from '../../common';
4
+ import { removeElementAnimation } from '../../common/web';
3
5
  import { LayoutAnimationType, ReduceMotion } from '../../commonTypes';
4
6
  import type { EasingFunctionFactory } from '../../Easing';
5
7
  import { EasingNameSymbol } from '../../Easing';
@@ -29,6 +31,28 @@ import {
29
31
  } from './Easing.web';
30
32
  import { prepareCurvedTransition } from './transition/Curved.web';
31
33
 
34
+ function getSnapshotForElement(element: HTMLElement): ReanimatedSnapshot {
35
+ const existingSnapshot = snapshots.get(element);
36
+
37
+ if (existingSnapshot) {
38
+ return existingSnapshot;
39
+ }
40
+
41
+ const rect = element.getBoundingClientRect();
42
+
43
+ const fallbackSnapshot: ReanimatedSnapshot = {
44
+ top: rect.top,
45
+ left: rect.left,
46
+ width: rect.width,
47
+ height: rect.height,
48
+ scrollOffsets: getElementScrollValue(element),
49
+ };
50
+
51
+ snapshots.set(element, fallbackSnapshot);
52
+
53
+ return fallbackSnapshot;
54
+ }
55
+
32
56
  function getEasingFromConfig(config: CustomConfig): string {
33
57
  if (!config.easingV) {
34
58
  return getEasingByName('linear');
@@ -175,10 +199,16 @@ export function setElementAnimation(
175
199
 
176
200
  const configureAnimation = () => {
177
201
  element.style.animationName = animationName;
178
- element.style.animationFillMode = 'backwards';
179
202
  element.style.animationDuration = `${duration}s`;
180
203
  element.style.animationDelay = `${delay}s`;
181
204
  element.style.animationTimingFunction = easing;
205
+
206
+ if (
207
+ animationConfig.animationType === LayoutAnimationType.ENTERING &&
208
+ delay > 0
209
+ ) {
210
+ element.style.animationFillMode = 'backwards';
211
+ }
182
212
  };
183
213
 
184
214
  if (animationConfig.animationType === LayoutAnimationType.ENTERING) {
@@ -234,7 +264,7 @@ export function setElementAnimation(
234
264
  if (!(animationName in Animations)) {
235
265
  scheduleAnimationCleanup(animationName, duration + delay, () => {
236
266
  if (shouldSavePosition) {
237
- setElementPosition(element, snapshots.get(element)!);
267
+ setElementPosition(element, getSnapshotForElement(element));
238
268
  }
239
269
 
240
270
  maybeRemoveElement();
@@ -317,6 +347,21 @@ function getElementScrollValue(element: HTMLElement): ScrollOffsets {
317
347
  return scrollOffsets;
318
348
  }
319
349
 
350
+ function cleanupEnteringAnimations(element: HTMLElement) {
351
+ const animationName = element.style.animationName;
352
+
353
+ // Check if the animation name indicates it's an entering animation
354
+ if (animationName && animationName.startsWith('REA-ENTERING-')) {
355
+ removeElementAnimation(element);
356
+ }
357
+
358
+ for (const child of Array.from(element.children)) {
359
+ if (child instanceof HTMLElement) {
360
+ cleanupEnteringAnimations(child);
361
+ }
362
+ }
363
+ }
364
+
320
365
  export function handleExitingAnimation(
321
366
  element: ReanimatedHTMLElement,
322
367
  animationConfig: AnimationConfig
@@ -344,6 +389,10 @@ export function handleExitingAnimation(
344
389
  };
345
390
  saveScrollPosition(element);
346
391
 
392
+ // Clean up entering animations on all descendants before moving them to the dummy.
393
+ // This prevents entering animations from restarting when elements are moved to a new parent.
394
+ cleanupEnteringAnimations(element);
395
+
347
396
  // After cloning the element, we want to move all children from original element to its clone. This is because original element
348
397
  // will be unmounted, therefore when this code executes in child component, parent will be either empty or removed soon.
349
398
  // Using element.cloneNode(true) doesn't solve the problem, because it creates copy of children and we won't be able to set their animations
@@ -367,7 +416,7 @@ export function handleExitingAnimation(
367
416
  };
368
417
  restoreScrollPosition(dummy);
369
418
 
370
- const snapshot = snapshots.get(element)!;
419
+ const snapshot = getSnapshotForElement(element);
371
420
 
372
421
  const scrollOffsets = getElementScrollValue(element);
373
422
 
@@ -2,6 +2,8 @@
2
2
 
3
3
  import type { TransformsStyle } from 'react-native';
4
4
 
5
+ import { maybeAddSuffix } from '../../common';
6
+ import { LayoutAnimationType } from '../../commonTypes';
5
7
  import type {
6
8
  AnimationData,
7
9
  ReanimatedWebTransformProperties,
@@ -19,12 +21,27 @@ import { LinearTransition } from './transition/Linear.web';
19
21
  import { SequencedTransition } from './transition/Sequenced.web';
20
22
 
21
23
  type TransformType = NonNullable<TransformsStyle['transform']>;
24
+ type TransformValue = string | number;
25
+
26
+ function assignTransformRules(
27
+ map: Map<string, TransformValue>,
28
+ transform?: ReanimatedWebTransformProperties[]
29
+ ) {
30
+ if (!transform) {
31
+ return;
32
+ }
33
+
34
+ for (const rule of transform) {
35
+ for (const [property, value] of Object.entries(rule)) {
36
+ map.set(property, value as TransformValue);
37
+ }
38
+ }
39
+ }
22
40
 
23
41
  // Translate values are passed as numbers. However, if `translate` property receives number, it will not automatically
24
42
  // convert it to `px`. Therefore if we want to keep transform we have to add 'px' suffix to each of translate values
25
43
  // that are present inside transform.
26
44
  //
27
-
28
45
  function addPxToTransform(transform: TransformType) {
29
46
  type RNTransformProp = NonNullable<(typeof transform)[number]>;
30
47
 
@@ -52,7 +69,8 @@ function addPxToTransform(transform: TransformType) {
52
69
  }
53
70
 
54
71
  export function createCustomKeyFrameAnimation(
55
- keyframeDefinitions: KeyframeDefinitions
72
+ keyframeDefinitions: KeyframeDefinitions,
73
+ animationType: LayoutAnimationType
56
74
  ) {
57
75
  for (const value of Object.values(keyframeDefinitions)) {
58
76
  if (value.transform) {
@@ -66,7 +84,7 @@ export function createCustomKeyFrameAnimation(
66
84
  duration: -1,
67
85
  };
68
86
 
69
- animationData.name = generateNextCustomKeyframeName();
87
+ animationData.name = generateNextCustomKeyframeName(animationType);
70
88
 
71
89
  // Move keyframe easings one keyframe up (our LA Keyframe definition is different
72
90
  // from the CSS keyframes and expects easing to be present in the keyframe to which
@@ -92,46 +110,36 @@ export function createCustomKeyFrameAnimation(
92
110
 
93
111
  export function createAnimationWithInitialValues(
94
112
  animationName: string,
95
- initialValues: InitialValuesStyleProps
113
+ initialValues: InitialValuesStyleProps,
114
+ animationType: LayoutAnimationType
96
115
  ) {
97
116
  const animationStyle = structuredClone(AnimationsData[animationName].style);
98
117
  const firstAnimationStep = animationStyle['0'];
99
118
 
100
- const { transform, ...rest } = initialValues;
101
- const transformWithPx = addPxToTransform(transform as TransformType);
119
+ const { transform, originX, originY, ...rest } = initialValues;
120
+
121
+ const transformStyle = new Map<string, TransformValue>();
122
+ assignTransformRules(transformStyle, firstAnimationStep.transform);
102
123
 
103
124
  if (transform) {
104
- // If there was no predefined transform, we can simply assign transform from `initialValues`.
105
- if (!firstAnimationStep.transform) {
106
- firstAnimationStep.transform = transformWithPx;
107
- } else {
108
- // Othwerwise we have to merge predefined transform with the one provided in `initialValues`.
109
- // To do that, we create `Map` that will contain final transform.
110
- const transformStyle = new Map<string, any>();
111
-
112
- // First we assign all of the predefined rules
113
- for (const rule of firstAnimationStep.transform) {
114
- // In most cases there will be just one iteration
115
- for (const [property, value] of Object.entries(rule)) {
116
- transformStyle.set(property, value);
117
- }
118
- }
125
+ const transformWithPx = addPxToTransform(transform as TransformType);
126
+ assignTransformRules(transformStyle, transformWithPx);
127
+ }
119
128
 
120
- // Then we either add new rule, or override one that already exists.
121
- for (const rule of transformWithPx) {
122
- for (const [property, value] of Object.entries(rule)) {
123
- transformStyle.set(property, value);
124
- }
125
- }
129
+ if (originX !== undefined) {
130
+ transformStyle.set('translateX', maybeAddSuffix(originX, 'px'));
131
+ }
126
132
 
127
- // Finally, we convert `Map` with final transform back into array of objects.
128
- firstAnimationStep.transform = Array.from(
129
- transformStyle,
130
- ([property, value]) => ({
131
- [property]: value,
132
- })
133
- );
134
- }
133
+ if (originY !== undefined) {
134
+ transformStyle.set('translateY', maybeAddSuffix(originY, 'px'));
135
+ }
136
+
137
+ const mergedTransform = Array.from(transformStyle, ([property, value]) => ({
138
+ [property]: value,
139
+ }));
140
+
141
+ if (transformStyle.size) {
142
+ firstAnimationStep.transform = mergedTransform;
135
143
  }
136
144
 
137
145
  animationStyle['0'] = {
@@ -140,7 +148,7 @@ export function createAnimationWithInitialValues(
140
148
  };
141
149
 
142
150
  // TODO: Maybe we can extract the logic below into separate function
143
- const keyframeName = generateNextCustomKeyframeName();
151
+ const keyframeName = generateNextCustomKeyframeName(animationType);
144
152
 
145
153
  const animationObject: AnimationData = {
146
154
  name: keyframeName,
@@ -157,8 +165,14 @@ export function createAnimationWithInitialValues(
157
165
 
158
166
  let customKeyframeCounter = 0;
159
167
 
160
- function generateNextCustomKeyframeName() {
161
- return `REA${customKeyframeCounter++}`;
168
+ const ANIMATION_TYPE_STRINGS: Partial<Record<LayoutAnimationType, string>> = {
169
+ [LayoutAnimationType.ENTERING]: 'ENTERING',
170
+ [LayoutAnimationType.EXITING]: 'EXITING',
171
+ [LayoutAnimationType.LAYOUT]: 'LAYOUT',
172
+ };
173
+
174
+ function generateNextCustomKeyframeName(animationType: LayoutAnimationType) {
175
+ return `REA-${ANIMATION_TYPE_STRINGS[animationType] ?? ''}-${customKeyframeCounter++}`;
162
176
  }
163
177
 
164
178
  /**
@@ -174,7 +188,9 @@ export function TransitionGenerator(
174
188
  transitionType: TransitionType,
175
189
  transitionData: TransitionData
176
190
  ) {
177
- const transitionKeyframeName = generateNextCustomKeyframeName();
191
+ const transitionKeyframeName = generateNextCustomKeyframeName(
192
+ LayoutAnimationType.LAYOUT
193
+ );
178
194
  let dummyTransitionKeyframeName;
179
195
 
180
196
  let transitionObject;
@@ -207,7 +223,9 @@ export function TransitionGenerator(
207
223
 
208
224
  // Here code block with {} is necessary because of eslint
209
225
  case TransitionType.CURVED: {
210
- dummyTransitionKeyframeName = generateNextCustomKeyframeName();
226
+ dummyTransitionKeyframeName = generateNextCustomKeyframeName(
227
+ LayoutAnimationType.LAYOUT
228
+ );
211
229
 
212
230
  const { firstKeyframeObj, secondKeyframeObj } = CurvedTransition(
213
231
  transitionKeyframeName,
@@ -4,4 +4,4 @@
4
4
  * version used to build the native part of the library in runtime. Remember to
5
5
  * keep this in sync with the version declared in `package.json`
6
6
  */
7
- export const jsVersion = '4.3.0-nightly-20251215-ac491ac0a';
7
+ export const jsVersion = '4.3.0-nightly-20251218-f17ee52ac';