react-native-reanimated 3.19.3 → 3.19.5

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 (63) hide show
  1. package/Common/cpp/reanimated/LayoutAnimations/LayoutAnimationsProxy.cpp +34 -8
  2. package/Common/cpp/reanimated/LayoutAnimations/LayoutAnimationsProxy.h +26 -2
  3. package/Common/cpp/reanimated/NativeModules/ReanimatedModuleProxy.cpp +1 -1
  4. package/Common/cpp/reanimated/RuntimeDecorators/RNRuntimeDecorator.cpp +25 -5
  5. package/Common/cpp/reanimated/RuntimeDecorators/RNRuntimeDecorator.h +7 -0
  6. package/Common/cpp/reanimated/Tools/ReanimatedSystraceSection.h +1 -1
  7. package/Common/cpp/worklets/WorkletRuntime/RNRuntimeWorkletDecorator.h +5 -0
  8. package/android/CMakeLists.txt +12 -9
  9. package/apple/reanimated/apple/LayoutReanimation/REASharedTransitionManager.m +1 -2
  10. package/apple/reanimated/apple/LayoutReanimation/REASwizzledUIManager.mm +10 -9
  11. package/lib/module/ReanimatedModule/NativeReanimated.js.map +1 -1
  12. package/lib/module/ReanimatedModule/js-reanimated/index.js.map +1 -1
  13. package/lib/module/commonTypes.js.map +1 -1
  14. package/lib/module/createAnimatedComponent/createAnimatedComponent.js +14 -6
  15. package/lib/module/createAnimatedComponent/createAnimatedComponent.js.map +1 -1
  16. package/lib/module/fabricUtils.js +5 -28
  17. package/lib/module/fabricUtils.js.map +1 -1
  18. package/lib/module/hook/useAnimatedRef.js +7 -6
  19. package/lib/module/hook/useAnimatedRef.js.map +1 -1
  20. package/lib/module/layoutReanimation/web/animationsManager.js +2 -2
  21. package/lib/module/layoutReanimation/web/animationsManager.js.map +1 -1
  22. package/lib/module/layoutReanimation/web/componentUtils.js +46 -5
  23. package/lib/module/layoutReanimation/web/componentUtils.js.map +1 -1
  24. package/lib/module/layoutReanimation/web/createAnimation.js +45 -36
  25. package/lib/module/layoutReanimation/web/createAnimation.js.map +1 -1
  26. package/lib/module/layoutReanimation/web/domUtils.js +1 -1
  27. package/lib/module/layoutReanimation/web/domUtils.js.map +1 -1
  28. package/lib/module/layoutReanimation/web/transition/Curved.web.js +1 -1
  29. package/lib/module/layoutReanimation/web/transition/Curved.web.js.map +1 -1
  30. package/lib/module/mock.js +1 -1
  31. package/lib/module/mock.js.map +1 -1
  32. package/lib/module/platform-specific/findHostInstance.js.map +1 -1
  33. package/lib/module/platform-specific/jsVersion.js +1 -1
  34. package/lib/typescript/ReanimatedModule/js-reanimated/index.d.ts +2 -1
  35. package/lib/typescript/ReanimatedModule/js-reanimated/index.d.ts.map +1 -1
  36. package/lib/typescript/commonTypes.d.ts +7 -2
  37. package/lib/typescript/commonTypes.d.ts.map +1 -1
  38. package/lib/typescript/fabricUtils.d.ts +2 -2
  39. package/lib/typescript/fabricUtils.d.ts.map +1 -1
  40. package/lib/typescript/hook/useAnimatedRef.d.ts.map +1 -1
  41. package/lib/typescript/layoutReanimation/web/animationsManager.d.ts.map +1 -1
  42. package/lib/typescript/layoutReanimation/web/componentUtils.d.ts +1 -1
  43. package/lib/typescript/layoutReanimation/web/componentUtils.d.ts.map +1 -1
  44. package/lib/typescript/layoutReanimation/web/createAnimation.d.ts +3 -2
  45. package/lib/typescript/layoutReanimation/web/createAnimation.d.ts.map +1 -1
  46. package/lib/typescript/platform-specific/findHostInstance.d.ts +2 -2
  47. package/lib/typescript/platform-specific/findHostInstance.d.ts.map +1 -1
  48. package/lib/typescript/platform-specific/jsVersion.d.ts +1 -1
  49. package/package.json +2 -2
  50. package/src/ReanimatedModule/NativeReanimated.ts +1 -3
  51. package/src/ReanimatedModule/js-reanimated/index.ts +2 -1
  52. package/src/commonTypes.ts +14 -1
  53. package/src/createAnimatedComponent/createAnimatedComponent.tsx +15 -7
  54. package/src/fabricUtils.ts +11 -38
  55. package/src/hook/useAnimatedRef.ts +7 -6
  56. package/src/layoutReanimation/web/animationsManager.ts +4 -2
  57. package/src/layoutReanimation/web/componentUtils.ts +60 -6
  58. package/src/layoutReanimation/web/createAnimation.ts +60 -38
  59. package/src/layoutReanimation/web/domUtils.ts +1 -1
  60. package/src/layoutReanimation/web/transition/Curved.web.ts +1 -1
  61. package/src/mock.ts +1 -1
  62. package/src/platform-specific/findHostInstance.ts +2 -1
  63. package/src/platform-specific/jsVersion.ts +1 -1
@@ -1 +1 @@
1
- {"version":3,"names":["ReanimatedError","isFabric","findHostInstanceFastPath","maybeNativeRef","undefined","__internalInstanceHandle","__nativeTag","_viewConfig","_nativeTag","viewConfig","resolveFindHostInstance_DEPRECATED","findHostInstance_DEPRECATED","ReactFabric","require","default","e","ReactNative","findHostInstance","component","hostInstance","_componentRef","_hasAnimatedRef"],"sourceRoot":"../../../src","sources":["platform-specific/findHostInstance.ts"],"mappings":"AAAA;AACA,YAAY;;AAGZ,SAASA,eAAe,QAAQ,cAAW;AAC3C,SAASC,QAAQ,QAAQ,uBAAoB;AAe7C,SAASC,wBAAwBA,CAACC,cAAwC,EAAE;EAC1E,IAAI,CAACA,cAAc,EAAE;IACnB,OAAOC,SAAS;EAClB;EACA,IACED,cAAc,CAACE,wBAAwB,IACvCF,cAAc,CAACG,WAAW,IAC1BH,cAAc,CAACI,WAAW,EAC1B;IACA;IACA,OAAOJ,cAAc;EACvB;EACA,IAAIA,cAAc,CAACK,UAAU,IAAIL,cAAc,CAACM,UAAU,EAAE;IAC1D;IACA,OAAON,cAAc;EACvB;EACA;EACA;EACA,OAAOC,SAAS;AAClB;AAEA,SAASM,kCAAkCA,CAAA,EAAG;EAC5C,IAAIC,2BAA2B,KAAKP,SAAS,EAAE;IAC7C;EACF;EACA,IAAIH,QAAQ,CAAC,CAAC,EAAE;IACd,IAAI;MACF,MAAMW,WAAW,GAAGC,OAAO,CAAC,mDAAmD,CAAC;MAChF;MACA;MACAF,2BAA2B,GACzBC,WAAW,EAAEE,OAAO,EAAEH,2BAA2B,IACjDC,WAAW,EAAED,2BAA2B;IAC5C,CAAC,CAAC,OAAOI,CAAC,EAAE;MACV,MAAM,IAAIf,eAAe,CACvB,+CACF,CAAC;IACH;EACF,CAAC,MAAM;IACL,MAAMgB,WAAW,GAAGH,OAAO,CAAC,mDAAmD,CAAC;IAChF;IACA;IACAF,2BAA2B,GACzBK,WAAW,EAAEF,OAAO,EAAEH,2BAA2B,IACjDK,WAAW,EAAEL,2BAA2B;EAC5C;AACF;AAEA,IAAIA,2BAA2D;AAC/D,OAAO,SAASM,gBAAgBA,CAC9BC,SAAuD,EACzC;EACd;EACA,MAAMC,YAAY,GAAGjB,wBAAwB,CAC1CgB,SAAS,CAAgCE,aAC5C,CAAC;EACD,IAAID,YAAY,KAAKf,SAAS,EAAE;IAC9B,OAAOe,YAAY;EACrB;EAEAT,kCAAkC,CAAC,CAAC;EACpC;AACF;AACA;AACA;AACA;AACA;EACE,OAAOC,2BAA2B,CAChC,CAACV,QAAQ,CAAC,CAAC,IAAKiB,SAAS,CAAgCG,eAAe,GACnEH,SAAS,CAAgCE,aAAa,GACvDF,SACN,CAAC;AACH","ignoreList":[]}
1
+ {"version":3,"names":["ReanimatedError","isFabric","findHostInstanceFastPath","maybeNativeRef","undefined","__internalInstanceHandle","__nativeTag","_viewConfig","_nativeTag","viewConfig","resolveFindHostInstance_DEPRECATED","findHostInstance_DEPRECATED","ReactFabric","require","default","e","ReactNative","findHostInstance","component","hostInstance","_componentRef","_hasAnimatedRef"],"sourceRoot":"../../../src","sources":["platform-specific/findHostInstance.ts"],"mappings":"AAAA;AACA,YAAY;;AAIZ,SAASA,eAAe,QAAQ,cAAW;AAC3C,SAASC,QAAQ,QAAQ,uBAAoB;AAe7C,SAASC,wBAAwBA,CAACC,cAAwC,EAAE;EAC1E,IAAI,CAACA,cAAc,EAAE;IACnB,OAAOC,SAAS;EAClB;EACA,IACED,cAAc,CAACE,wBAAwB,IACvCF,cAAc,CAACG,WAAW,IAC1BH,cAAc,CAACI,WAAW,EAC1B;IACA;IACA,OAAOJ,cAAc;EACvB;EACA,IAAIA,cAAc,CAACK,UAAU,IAAIL,cAAc,CAACM,UAAU,EAAE;IAC1D;IACA,OAAON,cAAc;EACvB;EACA;EACA;EACA,OAAOC,SAAS;AAClB;AAEA,SAASM,kCAAkCA,CAAA,EAAG;EAC5C,IAAIC,2BAA2B,KAAKP,SAAS,EAAE;IAC7C;EACF;EACA,IAAIH,QAAQ,CAAC,CAAC,EAAE;IACd,IAAI;MACF,MAAMW,WAAW,GAAGC,OAAO,CAAC,mDAAmD,CAAC;MAChF;MACA;MACAF,2BAA2B,GACzBC,WAAW,EAAEE,OAAO,EAAEH,2BAA2B,IACjDC,WAAW,EAAED,2BAA2B;IAC5C,CAAC,CAAC,OAAOI,CAAC,EAAE;MACV,MAAM,IAAIf,eAAe,CACvB,+CACF,CAAC;IACH;EACF,CAAC,MAAM;IACL,MAAMgB,WAAW,GAAGH,OAAO,CAAC,mDAAmD,CAAC;IAChF;IACA;IACAF,2BAA2B,GACzBK,WAAW,EAAEF,OAAO,EAAEH,2BAA2B,IACjDK,WAAW,EAAEL,2BAA2B;EAC5C;AACF;AAEA,IAAIA,2BAA2D;AAC/D,OAAO,SAASM,gBAAgBA,CAC9BC,SAA4D,EAC9C;EACd;EACA,MAAMC,YAAY,GAAGjB,wBAAwB,CAC1CgB,SAAS,CAAgCE,aAC5C,CAAC;EACD,IAAID,YAAY,KAAKf,SAAS,EAAE;IAC9B,OAAOe,YAAY;EACrB;EAEAT,kCAAkC,CAAC,CAAC;EACpC;AACF;AACA;AACA;AACA;AACA;EACE,OAAOC,2BAA2B,CAChC,CAACV,QAAQ,CAAC,CAAC,IAAKiB,SAAS,CAAgCG,eAAe,GACnEH,SAAS,CAAgCE,aAAa,GACvDF,SACN,CAAC;AACH","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 = '3.19.3';
8
+ export const jsVersion = '3.19.5';
9
9
  //# sourceMappingURL=jsVersion.js.map
@@ -16,7 +16,8 @@ export interface ReanimatedHTMLElement extends HTMLElement {
16
16
  _touchableNode: {
17
17
  setAttribute: (key: string, props: unknown) => void;
18
18
  };
19
- reanimatedDummy?: boolean;
19
+ isDummy?: boolean;
20
+ dummyClone?: ReanimatedHTMLElement;
20
21
  removedAfterAnimation?: boolean;
21
22
  }
22
23
  export declare const _updatePropsJS: (updates: StyleProps | AnimatedStyle<any>, viewRef: (JSReanimatedComponent | ReanimatedHTMLElement) & {
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../src/ReanimatedModule/js-reanimated/index.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,aAAa,EAAE,UAAU,EAAE,MAAM,mBAAmB,CAAC;AAUnE,OAAO,EAAE,wBAAwB,EAAE,MAAM,gBAAgB,CAAC;AAqB1D,UAAU,qBAAqB;IAC7B,aAAa,EAAE,UAAU,CAAC;IAC1B,cAAc,CAAC,EAAE,CAAC,KAAK,EAAE,UAAU,KAAK,IAAI,CAAC;IAC7C,KAAK,CAAC,EAAE,UAAU,CAAC;IACnB,KAAK,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,GAAG,MAAM,CAAC,CAAC;IACvC,cAAc,EAAE;QACd,YAAY,EAAE,CAAC,GAAG,EAAE,MAAM,EAAE,KAAK,EAAE,OAAO,KAAK,IAAI,CAAC;KACrD,CAAC;CACH;AAED,MAAM,WAAW,qBAAsB,SAAQ,WAAW;IACxD,aAAa,EAAE,UAAU,CAAC;IAC1B,cAAc,CAAC,EAAE,CAAC,KAAK,EAAE,UAAU,KAAK,IAAI,CAAC;IAC7C,KAAK,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,GAAG,MAAM,CAAC,CAAC;IACvC,cAAc,EAAE;QACd,YAAY,EAAE,CAAC,GAAG,EAAE,MAAM,EAAE,KAAK,EAAE,OAAO,KAAK,IAAI,CAAC;KACrD,CAAC;IACF,eAAe,CAAC,EAAE,OAAO,CAAC;IAC1B,qBAAqB,CAAC,EAAE,OAAO,CAAC;CACjC;AAGD,eAAO,MAAM,cAAc,YAEhB,UAAU,GAAG,cAAc,GAAG,CAAC,WAC/B,CAAC,qBAAqB,GAAG,qBAAqB,CAAC,GAAG;IACzD,gBAAgB,CAAC,EAAE,MAAM,qBAAqB,GAAG,qBAAqB,CAAC;CACxE,oBACiB,OAAO,KACxB,IA2CF,CAAC"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../src/ReanimatedModule/js-reanimated/index.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,aAAa,EAAE,UAAU,EAAE,MAAM,mBAAmB,CAAC;AAUnE,OAAO,EAAE,wBAAwB,EAAE,MAAM,gBAAgB,CAAC;AAqB1D,UAAU,qBAAqB;IAC7B,aAAa,EAAE,UAAU,CAAC;IAC1B,cAAc,CAAC,EAAE,CAAC,KAAK,EAAE,UAAU,KAAK,IAAI,CAAC;IAC7C,KAAK,CAAC,EAAE,UAAU,CAAC;IACnB,KAAK,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,GAAG,MAAM,CAAC,CAAC;IACvC,cAAc,EAAE;QACd,YAAY,EAAE,CAAC,GAAG,EAAE,MAAM,EAAE,KAAK,EAAE,OAAO,KAAK,IAAI,CAAC;KACrD,CAAC;CACH;AAED,MAAM,WAAW,qBAAsB,SAAQ,WAAW;IACxD,aAAa,EAAE,UAAU,CAAC;IAC1B,cAAc,CAAC,EAAE,CAAC,KAAK,EAAE,UAAU,KAAK,IAAI,CAAC;IAC7C,KAAK,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,GAAG,MAAM,CAAC,CAAC;IACvC,cAAc,EAAE;QACd,YAAY,EAAE,CAAC,GAAG,EAAE,MAAM,EAAE,KAAK,EAAE,OAAO,KAAK,IAAI,CAAC;KACrD,CAAC;IACF,OAAO,CAAC,EAAE,OAAO,CAAC;IAClB,UAAU,CAAC,EAAE,qBAAqB,CAAC;IACnC,qBAAqB,CAAC,EAAE,OAAO,CAAC;CACjC;AAGD,eAAO,MAAM,cAAc,YAEhB,UAAU,GAAG,cAAc,GAAG,CAAC,WAC/B,CAAC,qBAAqB,GAAG,qBAAqB,CAAC,GAAG;IACzD,gBAAgB,CAAC,EAAE,MAAM,qBAAqB,GAAG,qBAAqB,CAAC;CACxE,oBACiB,OAAO,KACxB,IA2CF,CAAC"}
@@ -1,5 +1,5 @@
1
1
  /// <reference types="react" />
2
- import type { ImageStyle, TextStyle, TransformsStyle, ViewStyle } from 'react-native';
2
+ import type { HostInstance, ImageStyle, ScrollView, TextStyle, TransformsStyle, ViewStyle } from 'react-native';
3
3
  import type { EasingFunctionFactory } from './Easing';
4
4
  import type { ReanimatedModuleProxy } from './ReanimatedModule';
5
5
  import type { WorkletsModuleProxy } from './worklets';
@@ -318,7 +318,7 @@ export declare enum InterfaceOrientation {
318
318
  ROTATION_270 = 270
319
319
  }
320
320
  export type ShadowNodeWrapper = {
321
- __hostObjectShadowNodeWrapper: never;
321
+ __nativeStateShadowNodeWrapper: never;
322
322
  };
323
323
  export declare enum KeyboardState {
324
324
  UNKNOWN = 0,
@@ -379,5 +379,10 @@ export type AnimatedTransform = MaybeSharedValueRecursive<TransformsStyle['trans
379
379
  export type AnimateStyle<Style = DefaultStyle> = AnimatedStyle<Style>;
380
380
  /** @deprecated This type is no longer relevant. */
381
381
  export type StylesOrDefault<T> = 'style' extends keyof T ? MaybeSharedValueRecursive<T['style']> : Record<string, unknown>;
382
+ export type InternalHostInstance = Partial<HostInstance & {
383
+ getNativeScrollRef: () => Partial<InternalHostInstance & typeof ScrollView> | undefined | null;
384
+ __internalInstanceHandle: Record<string, any>;
385
+ _reactInternals: unknown;
386
+ }>;
382
387
  export {};
383
388
  //# sourceMappingURL=commonTypes.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"commonTypes.d.ts","sourceRoot":"","sources":["../../src/commonTypes.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"commonTypes.d.ts","sourceRoot":"","sources":["../../src/commonTypes.ts"],"names":[],"mappings":"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"}
@@ -1,5 +1,5 @@
1
1
  /// <reference types="react" />
2
- import type { ShadowNodeWrapper } from './commonTypes';
2
+ import type { InternalHostInstance, ShadowNodeWrapper } from './commonTypes';
3
3
  import { HostInstance } from './platform-specific/findHostInstance';
4
- export declare function getShadowNodeWrapperFromRef(ref: React.Component, hostInstance?: HostInstance): ShadowNodeWrapper;
4
+ export declare function getShadowNodeWrapperFromRef(ref: React.Component & InternalHostInstance, hostInstance?: HostInstance): ShadowNodeWrapper;
5
5
  //# sourceMappingURL=fabricUtils.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"fabricUtils.d.ts","sourceRoot":"","sources":["../../src/fabricUtils.ts"],"names":[],"mappings":";AAGA,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,eAAe,CAAC;AACvD,OAAO,EAEL,YAAY,EACb,MAAM,sCAAsC,CAAC;AAM9C,wBAAgB,2BAA2B,CACzC,GAAG,EAAE,KAAK,CAAC,SAAS,EACpB,YAAY,CAAC,EAAE,YAAY,GAC1B,iBAAiB,CAoCnB"}
1
+ {"version":3,"file":"fabricUtils.d.ts","sourceRoot":"","sources":["../../src/fabricUtils.ts"],"names":[],"mappings":";AAGA,OAAO,KAAK,EAAE,oBAAoB,EAAE,iBAAiB,EAAE,MAAM,eAAe,CAAC;AAC7E,OAAO,EAEL,YAAY,EACb,MAAM,sCAAsC,CAAC;AAG9C,wBAAgB,2BAA2B,CACzC,GAAG,EAAE,KAAK,CAAC,SAAS,GAAG,oBAAoB,EAC3C,YAAY,CAAC,EAAE,YAAY,GAC1B,iBAAiB,CAYnB"}
@@ -1 +1 @@
1
- {"version":3,"file":"useAnimatedRef.d.ts","sourceRoot":"","sources":["../../../src/hook/useAnimatedRef.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,OAAO,CAAC;AAWvC,OAAO,KAAK,EACV,WAAW,EAIZ,MAAM,eAAe,CAAC;AA6HvB,iBAAS,iBAAiB,CACxB,UAAU,SAAS,SAAS,KACzB,WAAW,CAAC,UAAU,CAAC,CAI3B;AAED;;;;;;GAMG;AACH,eAAO,MAAM,cAAc,0BAEH,CAAC"}
1
+ {"version":3,"file":"useAnimatedRef.d.ts","sourceRoot":"","sources":["../../../src/hook/useAnimatedRef.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,OAAO,CAAC;AAWvC,OAAO,KAAK,EACV,WAAW,EAIZ,MAAM,eAAe,CAAC;AA8HvB,iBAAS,iBAAiB,CACxB,UAAU,SAAS,SAAS,KACzB,WAAW,CAAC,UAAU,CAAC,CAI3B;AAED;;;;;;GAMG;AACH,eAAO,MAAM,cAAc,0BAEH,CAAC"}
@@ -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;AAGnD,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;AAGnD,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"}
@@ -8,5 +8,5 @@ export declare function maybeModifyStyleForKeyframe(element: HTMLElement, config
8
8
  export declare function saveSnapshot(element: HTMLElement): void;
9
9
  export declare function setElementAnimation(element: ReanimatedHTMLElement, animationConfig: AnimationConfig, shouldSavePosition?: boolean, parent?: Element | null): void;
10
10
  export declare function handleLayoutTransition(element: ReanimatedHTMLElement, animationConfig: AnimationConfig, transitionData: TransitionData): void;
11
- export declare function handleExitingAnimation(element: HTMLElement, animationConfig: AnimationConfig): void;
11
+ export declare function handleExitingAnimation(element: ReanimatedHTMLElement, animationConfig: AnimationConfig): void;
12
12
  //# sourceMappingURL=componentUtils.d.ts.map
@@ -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;AAItE,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,QAuE9B;AAED,wBAAgB,sBAAsB,CACpC,OAAO,EAAE,qBAAqB,EAC9B,eAAe,EAAE,eAAe,EAChC,cAAc,EAAE,cAAc,QA8C/B;AAyBD,wBAAgB,sBAAsB,CACpC,OAAO,EAAE,WAAW,EACpB,eAAe,EAAE,eAAe,QA0EjC"}
1
+ {"version":3,"file":"componentUtils.d.ts","sourceRoot":"","sources":["../../../../src/layoutReanimation/web/componentUtils.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,mBAAmB,EAAgB,MAAM,mBAAmB,CAAC;AAItE,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;AA4CD,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":"AAIA,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;AA8D1D,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"}
@@ -1,4 +1,4 @@
1
- /// <reference types="react" />
1
+ import type { InternalHostInstance } from '../commonTypes';
2
2
  import type { IAnimatedComponentInternal } from '../createAnimatedComponent/commonTypes';
3
3
  type HostInstanceFabric = {
4
4
  __internalInstanceHandle?: Record<string, unknown>;
@@ -10,6 +10,6 @@ type HostInstancePaper = {
10
10
  viewConfig?: Record<string, unknown>;
11
11
  };
12
12
  export type HostInstance = HostInstanceFabric & HostInstancePaper;
13
- export declare function findHostInstance(component: IAnimatedComponentInternal | React.Component): HostInstance;
13
+ export declare function findHostInstance(component: IAnimatedComponentInternal | InternalHostInstance): HostInstance;
14
14
  export {};
15
15
  //# sourceMappingURL=findHostInstance.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"findHostInstance.d.ts","sourceRoot":"","sources":["../../../src/platform-specific/findHostInstance.ts"],"names":[],"mappings":";AAGA,OAAO,KAAK,EAAE,0BAA0B,EAAE,MAAM,wCAAwC,CAAC;AAIzF,KAAK,kBAAkB,GAAG;IACxB,wBAAwB,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;IACnD,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,WAAW,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;CACvC,CAAC;AAEF,KAAK,iBAAiB,GAAG;IACvB,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,UAAU,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;CACtC,CAAC;AAEF,MAAM,MAAM,YAAY,GAAG,kBAAkB,GAAG,iBAAiB,CAAC;AAmDlE,wBAAgB,gBAAgB,CAC9B,SAAS,EAAE,0BAA0B,GAAG,KAAK,CAAC,SAAS,GACtD,YAAY,CAqBd"}
1
+ {"version":3,"file":"findHostInstance.d.ts","sourceRoot":"","sources":["../../../src/platform-specific/findHostInstance.ts"],"names":[],"mappings":"AAGA,OAAO,KAAK,EAAE,oBAAoB,EAAE,MAAM,gBAAgB,CAAC;AAC3D,OAAO,KAAK,EAAE,0BAA0B,EAAE,MAAM,wCAAwC,CAAC;AAIzF,KAAK,kBAAkB,GAAG;IACxB,wBAAwB,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;IACnD,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,WAAW,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;CACvC,CAAC;AAEF,KAAK,iBAAiB,GAAG;IACvB,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,UAAU,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;CACtC,CAAC;AAEF,MAAM,MAAM,YAAY,GAAG,kBAAkB,GAAG,iBAAiB,CAAC;AAmDlE,wBAAgB,gBAAgB,CAC9B,SAAS,EAAE,0BAA0B,GAAG,oBAAoB,GAC3D,YAAY,CAqBd"}
@@ -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 = "3.19.3";
6
+ export declare const jsVersion = "3.19.5";
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": "3.19.3",
3
+ "version": "3.19.5",
4
4
  "description": "More powerful alternative to Animated library for React Native.",
5
5
  "scripts": {
6
6
  "test": "jest",
@@ -124,7 +124,7 @@
124
124
  "axios": "^1.7.4",
125
125
  "babel-eslint": "^10.1.0",
126
126
  "babel-plugin-module-resolver": "^5.0.0",
127
- "clang-format": "^1.6.0",
127
+ "clang-format-node": "1.3.5",
128
128
  "code-tag": "^1.1.0",
129
129
  "cspell": "^8.8.0",
130
130
  "eslint": "^8.57.0",
@@ -138,9 +138,7 @@ See https://docs.swmansion.com/react-native-reanimated/docs/guides/troubleshooti
138
138
  ) {
139
139
  let shadowNodeWrapper;
140
140
  if (isFabric()) {
141
- shadowNodeWrapper = getShadowNodeWrapperFromRef(
142
- component as React.Component
143
- );
141
+ shadowNodeWrapper = getShadowNodeWrapperFromRef(component!);
144
142
  return this.#reanimatedModuleProxy.getViewProp(
145
143
  shadowNodeWrapper,
146
144
  propName,
@@ -47,7 +47,8 @@ export interface ReanimatedHTMLElement extends HTMLElement {
47
47
  _touchableNode: {
48
48
  setAttribute: (key: string, props: unknown) => void;
49
49
  };
50
- reanimatedDummy?: boolean;
50
+ isDummy?: boolean;
51
+ dummyClone?: ReanimatedHTMLElement;
51
52
  removedAfterAnimation?: boolean;
52
53
  }
53
54
 
@@ -1,6 +1,8 @@
1
1
  'use strict';
2
2
  import type {
3
+ HostInstance,
3
4
  ImageStyle,
5
+ ScrollView,
4
6
  TextStyle,
5
7
  TransformsStyle,
6
8
  ViewStyle,
@@ -508,7 +510,7 @@ export enum InterfaceOrientation {
508
510
  }
509
511
 
510
512
  export type ShadowNodeWrapper = {
511
- __hostObjectShadowNodeWrapper: never;
513
+ __nativeStateShadowNodeWrapper: never;
512
514
  };
513
515
 
514
516
  export enum KeyboardState {
@@ -608,3 +610,14 @@ export type AnimateStyle<Style = DefaultStyle> = AnimatedStyle<Style>;
608
610
  export type StylesOrDefault<T> = 'style' extends keyof T
609
611
  ? MaybeSharedValueRecursive<T['style']>
610
612
  : Record<string, unknown>;
613
+
614
+ export type InternalHostInstance = Partial<
615
+ HostInstance & {
616
+ getNativeScrollRef: () =>
617
+ | Partial<InternalHostInstance & typeof ScrollView>
618
+ | undefined
619
+ | null;
620
+ __internalInstanceHandle: Record<string, any>;
621
+ _reactInternals: unknown;
622
+ }
623
+ >;
@@ -199,9 +199,18 @@ export function createAnimatedComponent(
199
199
  this.props.exiting
200
200
  );
201
201
 
202
- if (IS_WEB) {
203
- if (this.props.exiting && this._componentDOMRef) {
204
- saveSnapshot(this._componentDOMRef);
202
+ if (IS_WEB && this._componentDOMRef) {
203
+ const element = this._componentDOMRef as ReanimatedHTMLElement;
204
+ const dummyClone = element.dummyClone;
205
+ // If the element was cloned (because of the exiting animation), we need bring it
206
+ // back to the DOM
207
+ while (dummyClone?.firstChild) {
208
+ element.appendChild(dummyClone.firstChild);
209
+ }
210
+ delete element.dummyClone;
211
+
212
+ if (this.props.exiting) {
213
+ saveSnapshot(element);
205
214
  }
206
215
 
207
216
  if (!this.props.entering) {
@@ -211,7 +220,6 @@ export function createAnimatedComponent(
211
220
 
212
221
  if (getReducedMotionFromConfig(this.props.entering as CustomConfig)) {
213
222
  this._isFirstRender = false;
214
-
215
223
  (this.props.entering as BaseAnimationBuilder).callbackV?.(true);
216
224
  return;
217
225
  }
@@ -221,11 +229,11 @@ export function createAnimatedComponent(
221
229
  if (!skipEntering) {
222
230
  startWebLayoutAnimation(
223
231
  this.props,
224
- this._componentDOMRef as ReanimatedHTMLElement,
232
+ element,
225
233
  LayoutAnimationType.ENTERING
226
234
  );
227
- } else if (this._componentDOMRef) {
228
- this._componentDOMRef.style.visibility = 'initial';
235
+ } else if (element.style) {
236
+ element.style.visibility = 'initial';
229
237
  }
230
238
  }
231
239
 
@@ -1,53 +1,26 @@
1
1
  'use strict';
2
2
  /* eslint-disable */
3
3
 
4
- import type { ShadowNodeWrapper } from './commonTypes';
4
+ import type { InternalHostInstance, ShadowNodeWrapper } from './commonTypes';
5
5
  import {
6
6
  findHostInstance,
7
7
  HostInstance,
8
8
  } from './platform-specific/findHostInstance';
9
-
10
- let getInternalInstanceHandleFromPublicInstance: (ref: unknown) => {
11
- stateNode: { node: unknown };
12
- };
9
+ import { ReanimatedError } from './errors';
13
10
 
14
11
  export function getShadowNodeWrapperFromRef(
15
- ref: React.Component,
12
+ ref: React.Component & InternalHostInstance,
16
13
  hostInstance?: HostInstance
17
14
  ): ShadowNodeWrapper {
18
- if (getInternalInstanceHandleFromPublicInstance === undefined) {
19
- try {
20
- getInternalInstanceHandleFromPublicInstance =
21
- require('react-native/Libraries/ReactNative/ReactFabricPublicInstance/ReactFabricPublicInstance')
22
- .getInternalInstanceHandleFromPublicInstance ??
23
- ((_ref: any) => _ref._internalInstanceHandle);
24
- } catch (e) {
25
- getInternalInstanceHandleFromPublicInstance = (_ref: any) =>
26
- _ref._internalInstanceHandle;
27
- }
28
- }
29
-
30
- // TODO: Clean this up since 0.74 is the minimum supported version now.
31
- // taken from https://github.com/facebook/react-native/commit/803bb16531697233686efd475f004c1643e03617#diff-d8172256c6d63b5d32db10e54d7b10f37a26b337d5280d89f5bfd7bcea778292R196
32
- // @ts-ignore some weird stuff on RN 0.74 - see examples with scrollView
33
- const scrollViewRef = ref?.getScrollResponder?.()?.getNativeScrollRef?.();
34
- // @ts-ignore some weird stuff on RN 0.74 - see examples with scrollView
35
- const otherScrollViewRef = ref?.getNativeScrollRef?.();
36
- // @ts-ignore some weird stuff on RN 0.74 - see setNativeProps example
37
- const textInputRef = ref?.__internalInstanceHandle?.stateNode?.node;
15
+ const resolvedInstance =
16
+ hostInstance?.__internalInstanceHandle ??
17
+ ref?.__internalInstanceHandle ??
18
+ ref?.getNativeScrollRef?.()?.__internalInstanceHandle ??
19
+ (ref._reactInternals && findHostInstance(ref).__internalInstanceHandle);
38
20
 
39
- let resolvedRef;
40
- if (scrollViewRef) {
41
- resolvedRef = scrollViewRef.__internalInstanceHandle.stateNode.node;
42
- } else if (otherScrollViewRef) {
43
- resolvedRef = otherScrollViewRef.__internalInstanceHandle.stateNode.node;
44
- } else if (textInputRef) {
45
- resolvedRef = textInputRef;
46
- } else {
47
- const instance = hostInstance ?? findHostInstance(ref);
48
- resolvedRef =
49
- getInternalInstanceHandleFromPublicInstance(instance).stateNode.node;
21
+ if (!resolvedInstance) {
22
+ throw new ReanimatedError('Failed to find host instance for a ref.');
50
23
  }
51
24
 
52
- return resolvedRef;
25
+ return (resolvedInstance as any).stateNode.node as ShadowNodeWrapper;
53
26
  }
@@ -30,12 +30,12 @@ interface MaybeScrollableComponent extends Component {
30
30
  }
31
31
 
32
32
  function getComponentOrScrollable(component: MaybeScrollableComponent) {
33
- if (component.getNativeScrollRef) {
34
- return component.getNativeScrollRef();
35
- }
36
33
  if (component.getScrollableNode) {
37
34
  return component.getScrollableNode();
38
35
  }
36
+ if (component.getNativeScrollRef) {
37
+ return component.getNativeScrollRef();
38
+ }
39
39
  return component;
40
40
  }
41
41
 
@@ -57,7 +57,8 @@ function useAnimatedRefBase<TComponent extends Component>(
57
57
  tagOrWrapperRef.current = getWrapper(component);
58
58
 
59
59
  // We have to unwrap the tag from the shadow node wrapper.
60
- fun.getTag = () => findNodeHandle(getComponentOrScrollable(component));
60
+ // eslint-disable-next-line @typescript-eslint/no-explicit-any
61
+ fun.getTag = () => findNodeHandle(component as any);
61
62
  fun.current = component;
62
63
 
63
64
  if (observers.size) {
@@ -110,9 +111,9 @@ function useAnimatedRefNative<
110
111
  const ref = useAnimatedRefBase<TComponent>((component) => {
111
112
  const getTagOrWrapper = isFabric()
112
113
  ? getShadowNodeWrapperFromRef
113
- : findNodeHandle;
114
+ : (comp: TComponent) => findNodeHandle(getComponentOrScrollable(comp));
114
115
 
115
- tagOrWrapper.value = getTagOrWrapper(getComponentOrScrollable(component));
116
+ tagOrWrapper.value = getTagOrWrapper(component);
116
117
 
117
118
  if (viewName) {
118
119
  viewName.value =
@@ -133,7 +133,8 @@ function tryGetAnimationConfig<ComponentProps extends Record<string, unknown>>(
133
133
 
134
134
  if (isCustomKeyframe) {
135
135
  animationName = createCustomKeyFrameAnimation(
136
- (config as CustomConfig).definitions as KeyframeDefinitions
136
+ (config as CustomConfig).definitions as KeyframeDefinitions,
137
+ animationType
137
138
  );
138
139
  } else if (typeof config === 'function') {
139
140
  animationName = config.presetName;
@@ -145,7 +146,8 @@ function tryGetAnimationConfig<ComponentProps extends Record<string, unknown>>(
145
146
  if (hasInitialValues) {
146
147
  animationName = createAnimationWithInitialValues(
147
148
  animationName,
148
- (config as CustomConfig).initialValues as InitialValuesStyleProps
149
+ (config as CustomConfig).initialValues as InitialValuesStyleProps,
150
+ animationType
149
151
  );
150
152
  }
151
153
 
@@ -30,6 +30,28 @@ import {
30
30
  } from './Easing.web';
31
31
  import { prepareCurvedTransition } from './transition/Curved.web';
32
32
 
33
+ function getSnapshotForElement(element: HTMLElement): ReanimatedSnapshot {
34
+ const existingSnapshot = snapshots.get(element);
35
+
36
+ if (existingSnapshot) {
37
+ return existingSnapshot;
38
+ }
39
+
40
+ const rect = element.getBoundingClientRect();
41
+
42
+ const fallbackSnapshot: ReanimatedSnapshot = {
43
+ top: rect.top,
44
+ left: rect.left,
45
+ width: rect.width,
46
+ height: rect.height,
47
+ scrollOffsets: getElementScrollValue(element),
48
+ };
49
+
50
+ snapshots.set(element, fallbackSnapshot);
51
+
52
+ return fallbackSnapshot;
53
+ }
54
+
33
55
  function getEasingFromConfig(config: CustomConfig): string {
34
56
  if (!config.easingV) {
35
57
  return getEasingByName('linear');
@@ -179,6 +201,13 @@ export function setElementAnimation(
179
201
  element.style.animationDuration = `${duration}s`;
180
202
  element.style.animationDelay = `${delay}s`;
181
203
  element.style.animationTimingFunction = easing;
204
+
205
+ if (
206
+ animationConfig.animationType === LayoutAnimationType.ENTERING &&
207
+ delay > 0
208
+ ) {
209
+ element.style.animationFillMode = 'backwards';
210
+ }
182
211
  };
183
212
 
184
213
  if (animationConfig.animationType === LayoutAnimationType.ENTERING) {
@@ -190,7 +219,7 @@ export function setElementAnimation(
190
219
  }
191
220
 
192
221
  const maybeRemoveElement = () => {
193
- if (element.reanimatedDummy && parent?.contains(element)) {
222
+ if (element.isDummy && parent?.contains(element)) {
194
223
  element.removedAfterAnimation = true;
195
224
  parent.removeChild(element);
196
225
  }
@@ -234,7 +263,7 @@ export function setElementAnimation(
234
263
  if (!(animationName in Animations)) {
235
264
  scheduleAnimationCleanup(animationName, duration + delay, () => {
236
265
  if (shouldSavePosition) {
237
- setElementPosition(element, snapshots.get(element)!);
266
+ setElementPosition(element, getSnapshotForElement(element));
238
267
  }
239
268
 
240
269
  maybeRemoveElement();
@@ -317,17 +346,38 @@ function getElementScrollValue(element: HTMLElement): ScrollOffsets {
317
346
  return scrollOffsets;
318
347
  }
319
348
 
349
+ function cleanupEnteringAnimations(element: HTMLElement) {
350
+ const animationName = element.style.animationName;
351
+
352
+ // Check if the animation name indicates it's an entering animation
353
+ if (animationName && animationName.startsWith('REA-ENTERING-')) {
354
+ element.style.animationName = '';
355
+ element.style.animationDuration = '';
356
+ element.style.animationDelay = '';
357
+ element.style.animationFillMode = '';
358
+ element.style.animationTimingFunction = '';
359
+ }
360
+
361
+ for (const child of Array.from(element.children)) {
362
+ if (child instanceof HTMLElement) {
363
+ cleanupEnteringAnimations(child);
364
+ }
365
+ }
366
+ }
367
+
320
368
  export function handleExitingAnimation(
321
- element: HTMLElement,
369
+ element: ReanimatedHTMLElement,
322
370
  animationConfig: AnimationConfig
323
371
  ) {
324
372
  const parent = element.offsetParent;
325
373
  const dummy = element.cloneNode() as ReanimatedHTMLElement;
326
- dummy.reanimatedDummy = true;
327
374
 
328
- element.style.animationName = '';
375
+ dummy.isDummy = true;
329
376
  dummy.style.animationName = '';
330
377
 
378
+ element.dummyClone = dummy;
379
+ element.style.animationName = '';
380
+
331
381
  // Moving elements in DOM resets their scroll positions
332
382
  // so we memorize them here and restore after
333
383
  const scrollPositions = new Map<Element, { top: number; left: number }>();
@@ -342,6 +392,10 @@ export function handleExitingAnimation(
342
392
  };
343
393
  saveScrollPosition(element);
344
394
 
395
+ // Clean up entering animations on all descendants before moving them to the dummy.
396
+ // This prevents entering animations from restarting when elements are moved to a new parent.
397
+ cleanupEnteringAnimations(element);
398
+
345
399
  // After cloning the element, we want to move all children from original element to its clone. This is because original element
346
400
  // will be unmounted, therefore when this code executes in child component, parent will be either empty or removed soon.
347
401
  // 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
@@ -365,7 +419,7 @@ export function handleExitingAnimation(
365
419
  };
366
420
  restoreScrollPosition(dummy);
367
421
 
368
- const snapshot = snapshots.get(element)!;
422
+ const snapshot = getSnapshotForElement(element);
369
423
 
370
424
  const scrollOffsets = getElementScrollValue(element);
371
425