react-native-reanimated 4.5.2 → 4.5.3

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 (29) hide show
  1. package/Common/cpp/reanimated/Fabric/updates/AnimatedPropsRegistry.cpp +54 -24
  2. package/Common/cpp/reanimated/Fabric/updates/AnimatedPropsRegistry.h +13 -6
  3. package/Common/cpp/reanimated/LayoutAnimations/LayoutAnimationsProxy_Legacy.cpp +40 -1
  4. package/Common/cpp/reanimated/LayoutAnimations/LayoutAnimationsProxy_Legacy.h +4 -0
  5. package/Common/cpp/reanimated/NativeModules/ReanimatedModuleProxy.cpp +3 -5
  6. package/android/build.gradle.kts +9 -0
  7. package/lib/module/PropsRegistryGarbageCollector.js +3 -6
  8. package/lib/module/PropsRegistryGarbageCollector.js.map +1 -1
  9. package/lib/module/animation/styleAnimation.js +4 -3
  10. package/lib/module/animation/styleAnimation.js.map +1 -1
  11. package/lib/module/createAnimatedComponent/AnimatedComponent.js +1 -1
  12. package/lib/module/createAnimatedComponent/AnimatedComponent.js.map +1 -1
  13. package/lib/module/layoutReanimation/animationsManager.js +9 -6
  14. package/lib/module/layoutReanimation/animationsManager.js.map +1 -1
  15. package/lib/module/platform-specific/jsVersion.js +1 -1
  16. package/lib/typescript/PropsRegistryGarbageCollector.d.ts +0 -1
  17. package/lib/typescript/PropsRegistryGarbageCollector.d.ts.map +1 -1
  18. package/lib/typescript/animation/styleAnimation.d.ts +1 -1
  19. package/lib/typescript/animation/styleAnimation.d.ts.map +1 -1
  20. package/lib/typescript/createAnimatedComponent/AnimatedComponent.d.ts.map +1 -1
  21. package/lib/typescript/layoutReanimation/animationsManager.d.ts.map +1 -1
  22. package/lib/typescript/platform-specific/jsVersion.d.ts +1 -1
  23. package/package.json +2 -2
  24. package/scripts/reanimated_utils.rb +7 -0
  25. package/src/PropsRegistryGarbageCollector.ts +3 -6
  26. package/src/animation/styleAnimation.ts +5 -3
  27. package/src/createAnimatedComponent/AnimatedComponent.tsx +3 -1
  28. package/src/layoutReanimation/animationsManager.ts +9 -7
  29. package/src/platform-specific/jsVersion.ts +1 -1
@@ -5,8 +5,10 @@
5
5
 
6
6
  #include <react/debug/react_native_assert.h>
7
7
 
8
+ #include <functional>
8
9
  #include <memory>
9
10
  #include <utility>
11
+ #include <vector>
10
12
 
11
13
  namespace reanimated {
12
14
 
@@ -35,26 +37,65 @@ void AnimatedPropsRegistry::update(jsi::Runtime &rt, const jsi::Value &operation
35
37
  addUpdatesToBatch(shadowNode->getFamilyShared(), jsi::dynamicFromValue(rt, updates));
36
38
  }
37
39
 
38
- if constexpr (StaticFeatureFlags::getFlag("FORCE_REACT_RENDER_FOR_SETTLED_ANIMATIONS")) {
39
- timestampMap_[shadowNode->getTag()] = timestamp;
40
+ // When USE_ANIMATION_BACKEND is enabled, updates bypass `updatesRegistry_`,
41
+ // so entries added to `timestampMap_` would never be synced and thus never
42
+ // evicted, leaking until view unmount.
43
+ if constexpr (
44
+ StaticFeatureFlags::getFlag("FORCE_REACT_RENDER_FOR_SETTLED_ANIMATIONS") &&
45
+ !StaticFeatureFlags::getFlag("USE_ANIMATION_BACKEND")) {
46
+ const auto tag = shadowNode->getTag();
47
+ timestampMap_[tag] = timestamp;
48
+ // If JS already has a `settledProps` snapshot for this tag, it is now
49
+ // stale — schedule a refresh on the next `collectSettledUpdates`.
50
+ if (syncedTags_.erase(tag) > 0) {
51
+ invalidatedTags_.insert(tag);
52
+ }
40
53
  }
41
54
  }
42
55
  }
43
56
 
44
- jsi::Value AnimatedPropsRegistry::getUpdatesOlderThanTimestamp(
45
- jsi::Runtime &rt,
46
- const double timestamp,
47
- const double cleanupTimestamp) {
57
+ jsi::Value AnimatedPropsRegistry::collectSettledUpdates(jsi::Runtime &rt, const double settledTimestamp) {
48
58
  react_native_assert(UpdatesRegistryManager::isLockedByCurrentThread());
49
- removeUpdatesOlderThanTimestamp(cleanupTimestamp);
50
59
 
51
60
  std::vector<std::pair<Tag, std::reference_wrapper<const folly::dynamic>>> updates;
52
61
 
53
- for (const auto &[viewTag, pair] : updatesRegistry_) {
54
- auto it = timestampMap_.find(viewTag);
55
- if (it != timestampMap_.end() && it->second < timestamp) {
56
- updates.emplace_back(viewTag, std::cref(pair.second));
62
+ for (auto it = updatesRegistry_.begin(); it != updatesRegistry_.end();) {
63
+ const auto viewTag = it->first;
64
+
65
+ if (syncedTags_.contains(viewTag)) {
66
+ // React already has the latest value for this tag (synced on a previous
67
+ // call, so the `settledProps` state is committed by now) — the registry
68
+ // entry is redundant. `syncedTags_` is intentionally retained to detect
69
+ // re-animation staleness. Note that `syncedTags_` and `invalidatedTags_`
70
+ // are disjoint — `update()` moves tags from the former to the latter.
71
+ timestampMap_.erase(viewTag);
72
+ it = updatesRegistry_.erase(it);
73
+ continue;
74
+ }
75
+
76
+ const auto timestampIt = timestampMap_.find(viewTag);
77
+ if (timestampIt == timestampMap_.end()) {
78
+ ++it;
79
+ continue;
80
+ }
81
+ const bool isSettled = timestampIt->second < settledTimestamp;
82
+ const auto invalidatedIt = invalidatedTags_.find(viewTag);
83
+ const bool isInvalidated = invalidatedIt != invalidatedTags_.end();
84
+ if (isSettled || isInvalidated) {
85
+ updates.emplace_back(viewTag, std::cref(it->second.second));
86
+ if (isSettled) {
87
+ // Only settled-path tags are tracked as "synced" so that an ongoing
88
+ // animation doesn't re-trigger an invalidation/sync on every GC tick.
89
+ syncedTags_.insert(viewTag);
90
+ }
91
+ if (isInvalidated) {
92
+ // Only erase serviced invalidations; if a tag was invalidated but the
93
+ // matching update batch hasn't been flushed into updatesRegistry_ yet,
94
+ // we leave the entry so the next sync picks it up.
95
+ invalidatedTags_.erase(invalidatedIt);
96
+ }
57
97
  }
98
+ ++it;
58
99
  }
59
100
 
60
101
  const jsi::Array array(rt, updates.size());
@@ -69,22 +110,11 @@ jsi::Value AnimatedPropsRegistry::getUpdatesOlderThanTimestamp(
69
110
  return jsi::Value(rt, array);
70
111
  }
71
112
 
72
- void AnimatedPropsRegistry::removeUpdatesOlderThanTimestamp(const double timestamp) {
73
- for (auto it = timestampMap_.begin(); it != timestampMap_.end();) {
74
- const auto viewTag = it->first;
75
- const auto viewTimestamp = it->second;
76
- if (viewTimestamp < timestamp) {
77
- it = timestampMap_.erase(it);
78
- updatesRegistry_.erase(viewTag);
79
- } else {
80
- it++;
81
- }
82
- }
83
- }
84
-
85
113
  void AnimatedPropsRegistry::removeTag(const Tag tag) {
86
114
  updatesRegistry_.erase(tag);
87
115
  timestampMap_.erase(tag);
116
+ syncedTags_.erase(tag);
117
+ invalidatedTags_.erase(tag);
88
118
  }
89
119
 
90
120
  } // namespace reanimated
@@ -4,10 +4,8 @@
4
4
 
5
5
  #include <react/renderer/uimanager/UIManager.h>
6
6
 
7
- #include <memory>
8
- #include <string>
9
7
  #include <unordered_map>
10
- #include <vector>
8
+ #include <unordered_set>
11
9
 
12
10
  namespace reanimated {
13
11
 
@@ -15,13 +13,22 @@ class AnimatedPropsRegistry : public UpdatesRegistry {
15
13
  public:
16
14
  void update(jsi::Runtime &rt, const jsi::Value &operations, double timestamp);
17
15
 
18
- /// Also removes updates older than `cleanupTimestamp` from the registry.
19
- jsi::Value getUpdatesOlderThanTimestamp(jsi::Runtime &rt, double timestamp, double cleanupTimestamp);
16
+ /// Returns updates that settled (received no update since `settledTimestamp`)
17
+ /// or whose synced `settledProps` snapshot was invalidated by a fresh update.
18
+ /// Also evicts entries that have already been synced to React — by the time
19
+ /// of the next call, the corresponding `settledProps` state is guaranteed to
20
+ /// be committed, so the registry entries are redundant.
21
+ jsi::Value collectSettledUpdates(jsi::Runtime &rt, double settledTimestamp);
20
22
 
21
23
  private:
22
24
  std::unordered_map<Tag, double> timestampMap_;
25
+ // Tags whose latest values have already been pushed to React `settledProps`.
26
+ // Intentionally retained after eviction to detect re-animation staleness.
27
+ std::unordered_set<Tag> syncedTags_;
28
+ // Tags that were synced to React but received a fresh worklet update since;
29
+ // their `settledProps` are stale and need to be refreshed on the next sync.
30
+ std::unordered_set<Tag> invalidatedTags_;
23
31
 
24
- void removeUpdatesOlderThanTimestamp(double timestamp);
25
32
  void removeTag(Tag tag) override;
26
33
  };
27
34
 
@@ -38,6 +38,8 @@ std::optional<MountingTransaction> LayoutAnimationsProxy_Legacy::pullTransaction
38
38
  std::vector<std::shared_ptr<MutationNode>> roots;
39
39
  std::unordered_map<Tag, Tag> movedViews;
40
40
 
41
+ reconcileContradictedRemovals(mutations, filteredMutations, surfaceId);
42
+
41
43
  addOngoingAnimations(surfaceId, filteredMutations);
42
44
 
43
45
  #ifdef ANDROID
@@ -69,6 +71,40 @@ std::optional<MountingTransaction> LayoutAnimationsProxy_Legacy::pullTransaction
69
71
  return MountingTransaction{surfaceId, transactionNumber, std::move(filteredMutations), telemetry};
70
72
  }
71
73
 
74
+ // If React re-creates or re-inserts a tag whose exiting removal we are still
75
+ // withholding, it has contradicted that withheld Remove/Delete. Flush it now
76
+ // instead of letting it fire later against a stale hierarchy (which would
77
+ // unmount the wrong, still-live view and crash the mounting layer).
78
+ //
79
+ // This must run before addOngoingAnimations (which would otherwise emit an
80
+ // Update for a tag we are about to Delete this frame) and before
81
+ // parseRemoveMutations, so the rest of the pipeline sees clean bookkeeping.
82
+ void LayoutAnimationsProxy_Legacy::reconcileContradictedRemovals(
83
+ ShadowViewMutationList &mutations,
84
+ ShadowViewMutationList &filteredMutations,
85
+ SurfaceId surfaceId) const {
86
+ auto &[deadNodes] = surfaceContext_[surfaceId];
87
+ for (auto &mutation : mutations) {
88
+ if (mutation.type != ShadowViewMutation::Type::Create && mutation.type != ShadowViewMutation::Type::Insert) {
89
+ continue;
90
+ }
91
+ auto tag = mutation.newChildShadowView.tag;
92
+ auto it = nodeForTag_.find(tag);
93
+ // Only a MutationNode represents a withheld removal; a plain Node is just a
94
+ // live parent of some removed child and must be left untouched.
95
+ if (it == nodeForTag_.end() || !it->second->isMutationNode()) {
96
+ continue;
97
+ }
98
+ auto node = std::static_pointer_cast<MutationNode>(it->second);
99
+ // Flush the withheld Remove/Delete for this tag (and its withheld subtree)
100
+ // right now, mirroring the deadNodes cleanup in handleRemovals. This removes
101
+ // the stale view before React's Create/Insert re-registers the same tag.
102
+ endAnimationsRecursively(node, filteredMutations);
103
+ maybeDropAncestors(node->unflattenedParent, node, filteredMutations);
104
+ deadNodes.erase(node);
105
+ }
106
+ }
107
+
72
108
  std::optional<SurfaceId> LayoutAnimationsProxy_Legacy::progressLayoutAnimation(int tag, const jsi::Object &newStyle) {
73
109
  #ifdef LAYOUT_ANIMATIONS_LOGS
74
110
  LOG(INFO) << "progress layout animation for tag " << tag << std::endl;
@@ -127,7 +163,10 @@ std::optional<SurfaceId> LayoutAnimationsProxy_Legacy::endLayoutAnimation(int ta
127
163
  }
128
164
 
129
165
  auto node = nodeForTag_[tag];
130
- react_native_assert(node->isMutationNode() && "exiting tag must map to a MutationNode");
166
+ if (!node->isMutationNode()) {
167
+ react_native_assert(false && "exiting tag must map to a MutationNode");
168
+ return {};
169
+ }
131
170
  auto mutationNode = std::static_pointer_cast<MutationNode>(node);
132
171
  mutationNode->state = ExitingState_Legacy::DEAD;
133
172
  auto &[deadNodes] = surfaceContext_[surfaceId];
@@ -148,6 +148,10 @@ struct LayoutAnimationsProxy_Legacy : public LayoutAnimationsProxyCommon,
148
148
  std::optional<SurfaceId> endLayoutAnimation(int tag, bool shouldRemove) override;
149
149
  void maybeCancelAnimation(const int tag) const;
150
150
 
151
+ void reconcileContradictedRemovals(
152
+ ShadowViewMutationList &mutations,
153
+ ShadowViewMutationList &filteredMutations,
154
+ SurfaceId surfaceId) const;
151
155
  void parseRemoveMutations(
152
156
  std::unordered_map<Tag, Tag> &movedViews,
153
157
  ShadowViewMutationList &mutations,
@@ -651,16 +651,14 @@ jsi::Value ReanimatedModuleProxy::getSettledUpdates(jsi::Runtime &rt) {
651
651
  StaticFeatureFlags::getFlag("FORCE_REACT_RENDER_FOR_SETTLED_ANIMATIONS") &&
652
652
  "getSettledUpdates requires FORCE_REACT_RENDER_FOR_SETTLED_ANIMATIONS static feature flag to be enabled");
653
653
 
654
+ constexpr double SETTLED_ANIMATION_THRESHOLD_MS = 1000;
655
+
654
656
  // TODO(future): use unified timestamp
655
657
  const auto currentTimestamp = getAnimationTimestamp_();
656
658
 
657
- // TODO: fix bug when threshold difference is smaller than 1 second
658
659
  // TODO(future): flush updates from CSS animations and CSS transitions registries
659
- // TODO(future): find a better way to obtain timestamp for removing updates
660
- // TODO(future): move removing old updates to separate method
661
660
  auto lock = updatesRegistryManager_->lock();
662
- return animatedPropsRegistry_->getUpdatesOlderThanTimestamp(
663
- rt, currentTimestamp - 1000 /* 1 second */, currentTimestamp - 2000 /* 2 seconds */);
661
+ return animatedPropsRegistry_->collectSettledUpdates(rt, currentTimestamp - SETTLED_ANIMATION_THRESHOLD_MS);
664
662
  }
665
663
 
666
664
  bool ReanimatedModuleProxy::handleEvent(
@@ -99,6 +99,15 @@ fun validateConflictingFeatureFlags(featureFlags: HashMap<String, String>) {
99
99
  "[Reanimated] The feature flags `ANDROID_SYNCHRONOUSLY_UPDATE_UI_PROPS` and `ENABLE_SHARED_ELEMENT_TRANSITIONS` cannot be enabled simultaneously. Please disable one of them in your package.json."
100
100
  )
101
101
  }
102
+
103
+ val useAnimationBackend = featureFlags["USE_ANIMATION_BACKEND"] == "true"
104
+ val forceReactRenderForSettledAnimations = featureFlags["FORCE_REACT_RENDER_FOR_SETTLED_ANIMATIONS"] == "true"
105
+
106
+ if (useAnimationBackend && forceReactRenderForSettledAnimations) {
107
+ throw GradleException(
108
+ "[Reanimated] The feature flags `USE_ANIMATION_BACKEND` and `FORCE_REACT_RENDER_FOR_SETTLED_ANIMATIONS` cannot be enabled simultaneously. If you want to use the animation backend, you need to explicitly disable `FORCE_REACT_RENDER_FOR_SETTLED_ANIMATIONS` feature flag (enabled by default) in your package.json."
109
+ )
110
+ }
102
111
  }
103
112
 
104
113
  if (project != rootProject) {
@@ -4,7 +4,6 @@ import { unprocessColor, unprocessColorsInProps } from "./common/style/processor
4
4
  import { ReanimatedModule } from './ReanimatedModule';
5
5
  const FLUSH_INTERVAL_MS = 500;
6
6
  export const PropsRegistryGarbageCollector = {
7
- viewsCount: 0,
8
7
  viewsMap: new Map(),
9
8
  intervalId: null,
10
9
  registerView(viewTag, component) {
@@ -17,15 +16,13 @@ export const PropsRegistryGarbageCollector = {
17
16
  return;
18
17
  }
19
18
  this.viewsMap.set(viewTag, component);
20
- this.viewsCount++;
21
- if (this.viewsCount === 1) {
19
+ if (this.viewsMap.size === 1) {
22
20
  this.registerInterval();
23
21
  }
24
22
  },
25
23
  unregisterView(viewTag) {
26
- this.viewsMap.delete(viewTag);
27
- this.viewsCount--;
28
- if (this.viewsCount === 0) {
24
+ const deleted = this.viewsMap.delete(viewTag);
25
+ if (deleted && this.viewsMap.size === 0) {
29
26
  this.unregisterInterval();
30
27
  }
31
28
  },
@@ -1 +1 @@
1
- {"version":3,"names":["unprocessColor","unprocessColorsInProps","ReanimatedModule","FLUSH_INTERVAL_MS","PropsRegistryGarbageCollector","viewsCount","viewsMap","Map","intervalId","registerView","viewTag","component","has","set","registerInterval","unregisterView","delete","unregisterInterval","syncPropsBackToReact","settledUpdates","getSettledUpdates","styleProps","get","unprocessProps","_syncStylePropsBackToReact","setInterval","bind","clearInterval","props","unprocessBoxShadow","Array","isArray","boxShadow","map","color"],"sourceRoot":"../../src","sources":["PropsRegistryGarbageCollector.ts"],"mappings":"AAAA,YAAY;;AAEZ,SACEA,cAAc,EACdC,sBAAsB,QACjB,qCAAkC;AAGzC,SAASC,gBAAgB,QAAQ,oBAAoB;AAErD,MAAMC,iBAAiB,GAAG,GAAG;AAE7B,OAAO,MAAMC,6BAA6B,GAAG;EAC3CC,UAAU,EAAE,CAAC;EACbC,QAAQ,EAAE,IAAIC,GAAG,CAAqC,CAAC;EACvDC,UAAU,EAAE,IAA6B;EAEzCC,YAAYA,CAACC,OAAe,EAAEC,SAAqC,EAAE;IACnE,IAAI,IAAI,CAACL,QAAQ,CAACM,GAAG,CAACF,OAAO,CAAC,EAAE;MAC9B;MACA;MACA;MACA;MACA;MACA;IACF;IACA,IAAI,CAACJ,QAAQ,CAACO,GAAG,CAACH,OAAO,EAAEC,SAAS,CAAC;IACrC,IAAI,CAACN,UAAU,EAAE;IACjB,IAAI,IAAI,CAACA,UAAU,KAAK,CAAC,EAAE;MACzB,IAAI,CAACS,gBAAgB,CAAC,CAAC;IACzB;EACF,CAAC;EAEDC,cAAcA,CAACL,OAAe,EAAE;IAC9B,IAAI,CAACJ,QAAQ,CAACU,MAAM,CAACN,OAAO,CAAC;IAC7B,IAAI,CAACL,UAAU,EAAE;IACjB,IAAI,IAAI,CAACA,UAAU,KAAK,CAAC,EAAE;MACzB,IAAI,CAACY,kBAAkB,CAAC,CAAC;IAC3B;EACF,CAAC;EAEDC,oBAAoBA,CAAA,EAAG;IACrB,MAAMC,cAAc,GAAGjB,gBAAgB,CAACkB,iBAAiB,CAAC,CAAC;IAC3D,KAAK,MAAM;MAAEV,OAAO;MAAEW;IAAW,CAAC,IAAIF,cAAc,EAAE;MACpD,IAAIE,UAAU,KAAK,IAAI,EAAE;QACvB;MACF;MACA,MAAMV,SAAS,GAAG,IAAI,CAACL,QAAQ,CAACgB,GAAG,CAACZ,OAAO,CAAC;MAC5Ca,cAAc,CAACF,UAAU,CAAC;MAC1BV,SAAS,EAAEa,0BAA0B,CAACH,UAAU,CAAC;IACnD;EACF,CAAC;EAEDP,gBAAgBA,CAAA,EAAG;IACjB,IAAI,CAACN,UAAU,GAAGiB,WAAW,CAC3B,IAAI,CAACP,oBAAoB,CAACQ,IAAI,CAAC,IAAI,CAAC,EACpCvB,iBACF,CAAC;EACH,CAAC;EAEDc,kBAAkBA,CAAA,EAAG;IACnB,IAAI,IAAI,CAACT,UAAU,KAAK,IAAI,EAAE;MAC5BmB,aAAa,CAAC,IAAI,CAACnB,UAAU,CAAC;MAC9B,IAAI,CAACA,UAAU,GAAG,IAAI;IACxB;EACF;AACF,CAAC;AAED,SAASe,cAAcA,CAACK,KAAiB,EAAE;EACzC3B,sBAAsB,CAAC2B,KAAK,CAAC;EAC7BC,kBAAkB,CAACD,KAAK,CAAC;AAC3B;AAEA,SAASC,kBAAkBA,CAACD,KAAiB,EAAE;EAC7C,IAAIE,KAAK,CAACC,OAAO,CAACH,KAAK,CAACI,SAAS,CAAC,EAAE;IAClC;IACAJ,KAAK,CAACI,SAAS,GAAGJ,KAAK,CAACI,SAAS,CAACC,GAAG,CAAED,SAAS,KAAM;MACpD,GAAGA,SAAS;MACZE,KAAK,EAAElC,cAAc,CAACgC,SAAS,CAACE,KAAK;IACvC,CAAC,CAAC,CAAC;EACL;AACF","ignoreList":[]}
1
+ {"version":3,"names":["unprocessColor","unprocessColorsInProps","ReanimatedModule","FLUSH_INTERVAL_MS","PropsRegistryGarbageCollector","viewsMap","Map","intervalId","registerView","viewTag","component","has","set","size","registerInterval","unregisterView","deleted","delete","unregisterInterval","syncPropsBackToReact","settledUpdates","getSettledUpdates","styleProps","get","unprocessProps","_syncStylePropsBackToReact","setInterval","bind","clearInterval","props","unprocessBoxShadow","Array","isArray","boxShadow","map","color"],"sourceRoot":"../../src","sources":["PropsRegistryGarbageCollector.ts"],"mappings":"AAAA,YAAY;;AAEZ,SACEA,cAAc,EACdC,sBAAsB,QACjB,qCAAkC;AAGzC,SAASC,gBAAgB,QAAQ,oBAAoB;AAErD,MAAMC,iBAAiB,GAAG,GAAG;AAE7B,OAAO,MAAMC,6BAA6B,GAAG;EAC3CC,QAAQ,EAAE,IAAIC,GAAG,CAAqC,CAAC;EACvDC,UAAU,EAAE,IAA6B;EAEzCC,YAAYA,CAACC,OAAe,EAAEC,SAAqC,EAAE;IACnE,IAAI,IAAI,CAACL,QAAQ,CAACM,GAAG,CAACF,OAAO,CAAC,EAAE;MAC9B;MACA;MACA;MACA;MACA;MACA;IACF;IACA,IAAI,CAACJ,QAAQ,CAACO,GAAG,CAACH,OAAO,EAAEC,SAAS,CAAC;IACrC,IAAI,IAAI,CAACL,QAAQ,CAACQ,IAAI,KAAK,CAAC,EAAE;MAC5B,IAAI,CAACC,gBAAgB,CAAC,CAAC;IACzB;EACF,CAAC;EAEDC,cAAcA,CAACN,OAAe,EAAE;IAC9B,MAAMO,OAAO,GAAG,IAAI,CAACX,QAAQ,CAACY,MAAM,CAACR,OAAO,CAAC;IAC7C,IAAIO,OAAO,IAAI,IAAI,CAACX,QAAQ,CAACQ,IAAI,KAAK,CAAC,EAAE;MACvC,IAAI,CAACK,kBAAkB,CAAC,CAAC;IAC3B;EACF,CAAC;EAEDC,oBAAoBA,CAAA,EAAG;IACrB,MAAMC,cAAc,GAAGlB,gBAAgB,CAACmB,iBAAiB,CAAC,CAAC;IAC3D,KAAK,MAAM;MAAEZ,OAAO;MAAEa;IAAW,CAAC,IAAIF,cAAc,EAAE;MACpD,IAAIE,UAAU,KAAK,IAAI,EAAE;QACvB;MACF;MACA,MAAMZ,SAAS,GAAG,IAAI,CAACL,QAAQ,CAACkB,GAAG,CAACd,OAAO,CAAC;MAC5Ce,cAAc,CAACF,UAAU,CAAC;MAC1BZ,SAAS,EAAEe,0BAA0B,CAACH,UAAU,CAAC;IACnD;EACF,CAAC;EAEDR,gBAAgBA,CAAA,EAAG;IACjB,IAAI,CAACP,UAAU,GAAGmB,WAAW,CAC3B,IAAI,CAACP,oBAAoB,CAACQ,IAAI,CAAC,IAAI,CAAC,EACpCxB,iBACF,CAAC;EACH,CAAC;EAEDe,kBAAkBA,CAAA,EAAG;IACnB,IAAI,IAAI,CAACX,UAAU,KAAK,IAAI,EAAE;MAC5BqB,aAAa,CAAC,IAAI,CAACrB,UAAU,CAAC;MAC9B,IAAI,CAACA,UAAU,GAAG,IAAI;IACxB;EACF;AACF,CAAC;AAED,SAASiB,cAAcA,CAACK,KAAiB,EAAE;EACzC5B,sBAAsB,CAAC4B,KAAK,CAAC;EAC7BC,kBAAkB,CAACD,KAAK,CAAC;AAC3B;AAEA,SAASC,kBAAkBA,CAACD,KAAiB,EAAE;EAC7C,IAAIE,KAAK,CAACC,OAAO,CAACH,KAAK,CAACI,SAAS,CAAC,EAAE;IAClC;IACAJ,KAAK,CAACI,SAAS,GAAGJ,KAAK,CAACI,SAAS,CAACC,GAAG,CAAED,SAAS,KAAM;MACpD,GAAGA,SAAS;MACZE,KAAK,EAAEnC,cAAc,CAACiC,SAAS,CAACE,KAAK;IACvC,CAAC,CAAC,CAAC;EACL;AACF","ignoreList":[]}
@@ -45,7 +45,7 @@ function setPath(obj, path, value) {
45
45
  }
46
46
  export function withStyleAnimation(
47
47
  // eslint-disable-next-line @typescript-eslint/no-explicit-any
48
- styleAnimations) {
48
+ styleAnimations, callback) {
49
49
  'worklet';
50
50
 
51
51
  return defineAnimation({}, () => {
@@ -148,7 +148,7 @@ styleAnimations) {
148
148
  }
149
149
  }
150
150
  };
151
- const callback = finished => {
151
+ const styleAnimationCallback = finished => {
152
152
  if (!finished) {
153
153
  const animationsToCheck = [styleAnimations];
154
154
  while (animationsToCheck.length > 0) {
@@ -169,6 +169,7 @@ styleAnimations) {
169
169
  }
170
170
  }
171
171
  }
172
+ callback?.(finished);
172
173
  };
173
174
  return {
174
175
  isHigherOrder: true,
@@ -176,7 +177,7 @@ styleAnimations) {
176
177
  onStart,
177
178
  current: {},
178
179
  styleAnimations,
179
- callback
180
+ callback: styleAnimationCallback
180
181
  };
181
182
  });
182
183
  }
@@ -1 +1 @@
1
- {"version":3,"names":["ColorProperties","logger","processColor","withTiming","defineAnimation","isValidLayoutAnimationProp","resolvePath","obj","path","keys","Array","isArray","reduce","acc","current","undefined","setPath","value","currObj","i","length","withStyleAnimation","styleAnimations","onFrame","animation","now","stillGoing","entriesToCheck","currentEntry","pop","index","push","concat","key","Object","currentStyleAnimation","finished","callback","isAnimatingColorProp","includes","onStart","previousAnimation","prevAnimation","prevVal","__DEV__","warn","join","propName","trim","currentAnimation","duration","animationsToCheck","element","values","isHigherOrder"],"sourceRoot":"../../../src","sources":["animation/styleAnimation.ts"],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"names":["ColorProperties","logger","processColor","withTiming","defineAnimation","isValidLayoutAnimationProp","resolvePath","obj","path","keys","Array","isArray","reduce","acc","current","undefined","setPath","value","currObj","i","length","withStyleAnimation","styleAnimations","callback","onFrame","animation","now","stillGoing","entriesToCheck","currentEntry","pop","index","push","concat","key","Object","currentStyleAnimation","finished","isAnimatingColorProp","includes","onStart","previousAnimation","prevAnimation","prevVal","__DEV__","warn","join","propName","trim","currentAnimation","duration","styleAnimationCallback","animationsToCheck","element","values","isHigherOrder"],"sourceRoot":"../../../src","sources":["animation/styleAnimation.ts"],"mappings":"AAAA,YAAY;;AACZ,SAASA,eAAe,QAAQ,cAAW;AAC3C,SAASC,MAAM,EAAEC,YAAY,QAAQ,oBAAW;AAWhD,SAASC,UAAU,QAAQ,aAAU;AACrC,SAASC,eAAe,EAAEC,0BAA0B,QAAQ,WAAQ;;AAEpE;AACA;AACA,SAASC,WAAWA,CAClBC,GAAoB,EACpBC,IAAyC,EACN;EACnC,SAAS;;EACT,MAAMC,IAAuB,GAAGC,KAAK,CAACC,OAAO,CAACH,IAAI,CAAC,GAAGA,IAAI,GAAG,CAACA,IAAI,CAAC;EACnE,OAAOC,IAAI,CAACG,MAAM,CAAoC,CAACC,GAAG,EAAEC,OAAO,KAAK;IACtE,IAAIJ,KAAK,CAACC,OAAO,CAACE,GAAG,CAAC,IAAI,OAAOC,OAAO,KAAK,QAAQ,EAAE;MACrD,OAAOD,GAAG,CAACC,OAAO,CAAC;IACrB,CAAC,MAAM,IACLD,GAAG,KAAK,IAAI,IACZ,OAAOA,GAAG,KAAK,QAAQ,IACtBC,OAAO,IAAwBD,GAAG,EACnC;MACA,OAAQA,GAAG,CACTC,OAAO,CACR;IACH;IACA,OAAOC,SAAS;EAClB,CAAC,EAAER,GAAG,CAAC;AACT;;AAEA;;AAEA,SAASS,OAAOA,CACdT,GAAoB,EACpBC,IAAU,EACVS,KAA4B,EACtB;EACN,SAAS;;EACT,MAAMR,IAAU,GAAGC,KAAK,CAACC,OAAO,CAACH,IAAI,CAAC,GAAGA,IAAI,GAAG,CAACA,IAAI,CAAC;EACtD,IAAIU,OAA8B,GAAGX,GAAG;EACxC,KAAK,IAAIY,CAAC,GAAG,CAAC,EAAEA,CAAC,GAAGV,IAAI,CAACW,MAAM,GAAG,CAAC,EAAED,CAAC,EAAE,EAAE;IACxC;IACAD,OAAO,GAAGA,OAAmD;IAC7D,IAAI,EAAET,IAAI,CAACU,CAAC,CAAC,IAAID,OAAO,CAAC,EAAE;MACzB;MACA,IAAI,OAAOT,IAAI,CAACU,CAAC,GAAG,CAAC,CAAC,KAAK,QAAQ,EAAE;QACnCD,OAAO,CAACT,IAAI,CAACU,CAAC,CAAC,CAAC,GAAG,EAAE;MACvB,CAAC,MAAM;QACLD,OAAO,CAACT,IAAI,CAACU,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC;MACvB;IACF;IACAD,OAAO,GAAGA,OAAO,CAACT,IAAI,CAACU,CAAC,CAAC,CAAC;EAC5B;EAECD,OAAO,CAA8CT,IAAI,CAACA,IAAI,CAACW,MAAM,GAAG,CAAC,CAAC,CAAC,GAC1EH,KAAK;AACT;AAOA,OAAO,SAASI,kBAAkBA;AAChC;AACAC,eAAmC,EACnCC,QAAsC,EAChB;EACtB,SAAS;;EACT,OAAOnB,eAAe,CAAuB,CAAC,CAAC,EAAE,MAAM;IACrD,SAAS;;IAET,MAAMoB,OAAO,GAAGA,CACdC,SAA+B,EAC/BC,GAAc,KACF;MACZ,IAAIC,UAAU,GAAG,KAAK;MACtB,MAAMC,cAAoD,GAAG,CAC3D;QAAEX,KAAK,EAAEQ,SAAS,CAACH,eAAe;QAAEd,IAAI,EAAE;MAAG,CAAC,CAC/C;MACD,OAAOoB,cAAc,CAACR,MAAM,GAAG,CAAC,EAAE;QAChC,MAAMS,YAAgD,GACpDD,cAAc,CAACE,GAAG,CAAC,CAAuC;QAC5D,IAAIpB,KAAK,CAACC,OAAO,CAACkB,YAAY,CAACZ,KAAK,CAAC,EAAE;UACrC,KAAK,IAAIc,KAAK,GAAG,CAAC,EAAEA,KAAK,GAAGF,YAAY,CAACZ,KAAK,CAACG,MAAM,EAAEW,KAAK,EAAE,EAAE;YAC9DH,cAAc,CAACI,IAAI,CAAC;cAClBf,KAAK,EAAEY,YAAY,CAACZ,KAAK,CAACc,KAAK,CAAC;cAChCvB,IAAI,EAAEqB,YAAY,CAACrB,IAAI,CAACyB,MAAM,CAACF,KAAK;YACtC,CAAC,CAAC;UACJ;QACF,CAAC,MAAM,IACL,OAAOF,YAAY,CAACZ,KAAK,KAAK,QAAQ,IACtCY,YAAY,CAACZ,KAAK,CAACO,OAAO,KAAKT,SAAS,EACxC;UACA;UACA,KAAK,MAAMmB,GAAG,IAAIC,MAAM,CAAC1B,IAAI,CAACoB,YAAY,CAACZ,KAAK,CAAC,EAAE;YACjDW,cAAc,CAACI,IAAI,CAAC;cAClBf,KAAK,EAAEY,YAAY,CAACZ,KAAK,CAACiB,GAAG,CAAC;cAC9B1B,IAAI,EAAEqB,YAAY,CAACrB,IAAI,CAACyB,MAAM,CAACC,GAAG;YACpC,CAAC,CAAC;UACJ;QACF,CAAC,MAAM;UACL,MAAME,qBAAsC,GAC1CP,YAAY,CAACZ,KAAwB;UACvC,IAAImB,qBAAqB,CAACC,QAAQ,EAAE;YAClC;UACF;UACA,MAAMA,QAAQ,GAAGD,qBAAqB,CAACZ,OAAO,CAC5CY,qBAAqB,EACrBV,GACF,CAAC;UACD,IAAIW,QAAQ,EAAE;YACZD,qBAAqB,CAACC,QAAQ,GAAG,IAAI;YACrC,IAAID,qBAAqB,CAACb,QAAQ,EAAE;cAClCa,qBAAqB,CAACb,QAAQ,CAAC,IAAI,CAAC;YACtC;UACF,CAAC,MAAM;YACLI,UAAU,GAAG,IAAI;UACnB;;UAEA;UACA;UACA,MAAMW,oBAAoB,GACxBtC,eAAe,CAACuC,QAAQ,CAACV,YAAY,CAACrB,IAAI,CAAC,CAAC,CAAW,CAAC,IACvDqB,YAAY,CAACrB,IAAI,CAAC,CAAC,CAAC,KAAK,WAAW,IACnCqB,YAAY,CAACrB,IAAI,CAACY,MAAM,GAAG,CAAC,IAC5BS,YAAY,CAACrB,IAAI,CAAC,CAAC,CAAC,KAAK,OAAQ;UAErCQ,OAAO,CACLS,SAAS,CAACX,OAAO,EACjBe,YAAY,CAACrB,IAAI,EACjB8B,oBAAoB,GAChBpC,YAAY,CAACkC,qBAAqB,CAACtB,OAAO,CAAC,GAC3CsB,qBAAqB,CAACtB,OAC5B,CAAC;QACH;MACF;MACA,OAAO,CAACa,UAAU;IACpB,CAAC;IAED,MAAMa,OAAO,GAAGA,CACdf,SAA+B,EAE/BR,KAAyB,EACzBS,GAAc,EACde,iBAAuC,KAC9B;MACT,MAAMb,cAEH,GAAG,CAAC;QAAEX,KAAK,EAAEK,eAAe;QAAEd,IAAI,EAAE;MAAG,CAAC,CAAC;MAC5C,OAAOoB,cAAc,CAACR,MAAM,GAAG,CAAC,EAAE;QAChC,MAAMS,YAEL,GAAGD,cAAc,CAACE,GAAG,CAAC,CAEtB;QACD,IAAIpB,KAAK,CAACC,OAAO,CAACkB,YAAY,CAACZ,KAAK,CAAC,EAAE;UACrC,KAAK,IAAIc,KAAK,GAAG,CAAC,EAAEA,KAAK,GAAGF,YAAY,CAACZ,KAAK,CAACG,MAAM,EAAEW,KAAK,EAAE,EAAE;YAC9DH,cAAc,CAACI,IAAI,CAAC;cAClBf,KAAK,EAAEY,YAAY,CAACZ,KAAK,CAACc,KAAK,CAAC;cAChCvB,IAAI,EAAEqB,YAAY,CAACrB,IAAI,CAACyB,MAAM,CAACF,KAAK;YACtC,CAAC,CAAC;UACJ;QACF,CAAC,MAAM,IACL,OAAOF,YAAY,CAACZ,KAAK,KAAK,QAAQ,IACtCY,YAAY,CAACZ,KAAK,CAACuB,OAAO,KAAKzB,SAAS,EACxC;UACA,KAAK,MAAMmB,GAAG,IAAIC,MAAM,CAAC1B,IAAI,CAACoB,YAAY,CAACZ,KAAK,CAAC,EAAE;YACjDW,cAAc,CAACI,IAAI,CAAC;cAClBf,KAAK,EAAEY,YAAY,CAACZ,KAAK,CAACiB,GAAG,CAAC;cAC9B1B,IAAI,EAAEqB,YAAY,CAACrB,IAAI,CAACyB,MAAM,CAACC,GAAG;YACpC,CAAC,CAAC;UACJ;QACF,CAAC,MAAM;UACL,MAAMQ,aAAa,GAAGpC,WAAW,CAC/BmC,iBAAiB,EAAEnB,eAAe,EAClCO,YAAY,CAACrB,IACf,CAAC;UACD,IAAImC,OAAO,GAAGrC,WAAW,CAACW,KAAK,EAAEY,YAAY,CAACrB,IAAI,CAAC;UACnD,IAAIkC,aAAa,IAAI,CAACC,OAAO,EAAE;YAC7B;YACAA,OAAO,GAAID,aAAa,CAAS5B,OAAO;UAC1C;UACA,IAAI8B,OAAO,EAAE;YACX,IAAID,OAAO,KAAK5B,SAAS,EAAE;cACzBd,MAAM,CAAC4C,IAAI,CACT,yDAAyDhB,YAAY,CAACrB,IAAI,CAACsC,IAAI,CAC7E,GACF,CAAC,EACH,CAAC;YACH;YACA,MAAMC,QAAQ,GAAGlB,YAAY,CAACrB,IAAI,CAAC,CAAC,CAAC;YACrC,IACE,OAAOuC,QAAQ,KAAK,QAAQ,IAC5B,CAAC1C,0BAA0B,CAAC0C,QAAQ,CAACC,IAAI,CAAC,CAAC,CAAC,EAC5C;cACA/C,MAAM,CAAC4C,IAAI,CACT,IAAIE,QAAQ,4FACd,CAAC;YACH;UACF;UACA/B,OAAO,CAACS,SAAS,CAACX,OAAO,EAAEe,YAAY,CAACrB,IAAI,EAAEmC,OAAO,CAAC;UACtD,IAAIM,gBAAiC;UACrC,IACE,OAAOpB,YAAY,CAACZ,KAAK,KAAK,QAAQ,IACtC,CAACY,YAAY,CAACZ,KAAK,CAACuB,OAAO,EAC3B;YACAS,gBAAgB,GAAG9C,UAAU,CAC3B0B,YAAY,CAACZ,KAAK,EAClB;cAAEiC,QAAQ,EAAE;YAAE,CAChB,CAAoB,CAAC,CAAC;YACtBlC,OAAO,CACLS,SAAS,CAACH,eAAe,EACzBO,YAAY,CAACrB,IAAI,EACjByC,gBACF,CAAC;UACH,CAAC,MAAM;YACLA,gBAAgB,GAAGpB,YAAY,CAACZ,KAAmC;UACrE;UACAgC,gBAAgB,CAACT,OAAO,CACtBS,gBAAgB,EAChBN,OAAO,EACPjB,GAAG,EACHgB,aACF,CAAC;QACH;MACF;IACF,CAAC;IAED,MAAMS,sBAAsB,GAAId,QAAiB,IAAW;MAC1D,IAAI,CAACA,QAAQ,EAAE;QACb,MAAMe,iBAAwD,GAAG,CAC/D9B,eAAe,CAChB;QACD,OAAO8B,iBAAiB,CAAChC,MAAM,GAAG,CAAC,EAAE;UACnC,MAAM6B,gBAAqD,GACzDG,iBAAiB,CAACtB,GAAG,CAAC,CAAwC;UAChE,IAAIpB,KAAK,CAACC,OAAO,CAACsC,gBAAgB,CAAC,EAAE;YACnC,KAAK,MAAMI,OAAO,IAAIJ,gBAAgB,EAAE;cACtCG,iBAAiB,CAACpB,IAAI,CAACqB,OAAO,CAAC;YACjC;UACF,CAAC,MAAM,IACL,OAAOJ,gBAAgB,KAAK,QAAQ,IACpCA,gBAAgB,CAACT,OAAO,KAAKzB,SAAS,EACtC;YACA,KAAK,MAAME,KAAK,IAAIkB,MAAM,CAACmB,MAAM,CAACL,gBAAgB,CAAC,EAAE;cACnDG,iBAAiB,CAACpB,IAAI,CAACf,KAAK,CAAC;YAC/B;UACF,CAAC,MAAM;YACL,MAAMmB,qBAAsC,GAC1Ca,gBAAmC;YACrC,IACE,CAACb,qBAAqB,CAACC,QAAQ,IAC/BD,qBAAqB,CAACb,QAAQ,EAC9B;cACAa,qBAAqB,CAACb,QAAQ,CAAC,KAAK,CAAC;YACvC;UACF;QACF;MACF;MACAA,QAAQ,GAAGc,QAAQ,CAAC;IACtB,CAAC;IAED,OAAO;MACLkB,aAAa,EAAE,IAAI;MACnB/B,OAAO;MACPgB,OAAO;MACP1B,OAAO,EAAE,CAAC,CAAC;MACXQ,eAAe;MACfC,QAAQ,EAAE4B;IACZ,CAAC;EACH,CAAC,CAAC;AACJ","ignoreList":[]}
@@ -25,7 +25,7 @@ let id = 0;
25
25
  if (IS_WEB) {
26
26
  configureWebLayoutAnimations();
27
27
  }
28
- const FORCE_REACT_RENDER_FOR_SETTLED_ANIMATIONS = getStaticFeatureFlag('FORCE_REACT_RENDER_FOR_SETTLED_ANIMATIONS') && !IS_WEB;
28
+ const FORCE_REACT_RENDER_FOR_SETTLED_ANIMATIONS = getStaticFeatureFlag('FORCE_REACT_RENDER_FOR_SETTLED_ANIMATIONS') && !getStaticFeatureFlag('USE_ANIMATION_BACKEND') && !IS_WEB;
29
29
  export default class AnimatedComponent extends ReanimatedAnimatedComponent {
30
30
  _animatedStyles = [];
31
31
  _prevAnimatedStyles = [];
@@ -1 +1 @@
1
- {"version":3,"names":["Fragment","checkStyleOverwriting","maybeBuild","IS_JEST","IS_WEB","logger","LayoutAnimationType","SkipEnteringContext","ReanimatedAnimatedComponent","getStaticFeatureFlag","SharedTransition","configureWebLayoutAnimations","getReducedMotionFromConfig","saveSnapshot","startWebLayoutAnimation","tryActivateLayoutTransition","addHTMLMutationObserver","PropsRegistryGarbageCollector","updateLayoutAnimations","InlinePropManager","jsPropsUpdater","NativeEventsManager","PropsFilter","filterStyles","flattenArray","jsx","_jsx","id","FORCE_REACT_RENDER_FOR_SETTLED_ANIMATIONS","AnimatedComponent","_animatedStyles","_prevAnimatedStyles","_animatedProps","_prevAnimatedProps","_isFirstRender","jestAnimatedStyle","value","jestAnimatedProps","_InlinePropManager","_PropsFilter","contextType","reanimatedID","constructor","ChildComponent","props","displayName","options","_options","_displayName","state","settledProps","_configureSharedTransition","entering","skipEntering","context","current","_configureLayoutAnimation","ENTERING","componentDidMount","_NativeEventsManager","attachEvents","_updateAnimatedStylesAndProps","attachInlineProps","_getViewInfo","viewTag","getComponentViewTag","registerView","jsProps","length","registerComponent","LAYOUT","layout","EXITING","exiting","_componentDOMRef","element","dummyClone","firstChild","appendChild","callbackV","style","visibility","componentWillUnmount","detachEvents","_detachStyles","detachInlineProps","unregisterView","unregisterComponent","_syncStylePropsBackToReact","setState","viewDescriptors","remove","animatedProp","setNativeProps","_componentRef","_handleAnimatedStylesUpdate","prevStyles","currentStyles","jestAnimatedStyleOrProps","shadowNodeWrapper","newStyles","Set","isStyleAttached","has","hasOneSameStyle","prevStyle","isPresent","some","delete","forEach","add","tag","styleUpdaterContainer","Object","assign","initial","jestAnimatedValues","componentDidUpdate","prevProps","_prevState","snapshot","updateEvents","_updateStyles","filteredStyles","animatedStyles","filteredAnimatedProps","animatedProps","cssStyle","__DEV__","warn","_cssStyle","mergedProps","type","currentConfig","previousConfig","_hasWarnedAboutLayoutAnimationStyleOverwriting","onWarn","useNativeId","sharedTransitionTag","_sharedTransitionTag","SHARED_ELEMENT_TRANSITION_NATIVE_ID","SHARED_ELEMENT_TRANSITION","undefined","sharedTransition","sharedTransitionStyle","_sharedTransition","getSnapshotBeforeUpdate","getBoundingClientRect","render","filteredProps","filterNonAnimatedProps","Array","isArray","concat","nativeID","jestProps","jestInlineStyle","filterOutAnimatedStyles","children","filter","styleElement","map"],"sourceRoot":"../../../src","sources":["createAnimatedComponent/AnimatedComponent.tsx"],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"names":["Fragment","checkStyleOverwriting","maybeBuild","IS_JEST","IS_WEB","logger","LayoutAnimationType","SkipEnteringContext","ReanimatedAnimatedComponent","getStaticFeatureFlag","SharedTransition","configureWebLayoutAnimations","getReducedMotionFromConfig","saveSnapshot","startWebLayoutAnimation","tryActivateLayoutTransition","addHTMLMutationObserver","PropsRegistryGarbageCollector","updateLayoutAnimations","InlinePropManager","jsPropsUpdater","NativeEventsManager","PropsFilter","filterStyles","flattenArray","jsx","_jsx","id","FORCE_REACT_RENDER_FOR_SETTLED_ANIMATIONS","AnimatedComponent","_animatedStyles","_prevAnimatedStyles","_animatedProps","_prevAnimatedProps","_isFirstRender","jestAnimatedStyle","value","jestAnimatedProps","_InlinePropManager","_PropsFilter","contextType","reanimatedID","constructor","ChildComponent","props","displayName","options","_options","_displayName","state","settledProps","_configureSharedTransition","entering","skipEntering","context","current","_configureLayoutAnimation","ENTERING","componentDidMount","_NativeEventsManager","attachEvents","_updateAnimatedStylesAndProps","attachInlineProps","_getViewInfo","viewTag","getComponentViewTag","registerView","jsProps","length","registerComponent","LAYOUT","layout","EXITING","exiting","_componentDOMRef","element","dummyClone","firstChild","appendChild","callbackV","style","visibility","componentWillUnmount","detachEvents","_detachStyles","detachInlineProps","unregisterView","unregisterComponent","_syncStylePropsBackToReact","setState","viewDescriptors","remove","animatedProp","setNativeProps","_componentRef","_handleAnimatedStylesUpdate","prevStyles","currentStyles","jestAnimatedStyleOrProps","shadowNodeWrapper","newStyles","Set","isStyleAttached","has","hasOneSameStyle","prevStyle","isPresent","some","delete","forEach","add","tag","styleUpdaterContainer","Object","assign","initial","jestAnimatedValues","componentDidUpdate","prevProps","_prevState","snapshot","updateEvents","_updateStyles","filteredStyles","animatedStyles","filteredAnimatedProps","animatedProps","cssStyle","__DEV__","warn","_cssStyle","mergedProps","type","currentConfig","previousConfig","_hasWarnedAboutLayoutAnimationStyleOverwriting","onWarn","useNativeId","sharedTransitionTag","_sharedTransitionTag","SHARED_ELEMENT_TRANSITION_NATIVE_ID","SHARED_ELEMENT_TRANSITION","undefined","sharedTransition","sharedTransitionStyle","_sharedTransition","getSnapshotBeforeUpdate","getBoundingClientRect","render","filteredProps","filterNonAnimatedProps","Array","isArray","concat","nativeID","jestProps","jestInlineStyle","filterOutAnimatedStyles","children","filter","styleElement","map"],"sourceRoot":"../../../src","sources":["createAnimatedComponent/AnimatedComponent.tsx"],"mappings":"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","ignoreList":[]}
@@ -1,7 +1,7 @@
1
1
  'use strict';
2
2
 
3
3
  import { runOnUISync } from 'react-native-worklets';
4
- import { withStyleAnimation } from "../animation/index.js";
4
+ import { cancelAnimation, withStyleAnimation } from "../animation/index.js";
5
5
  import { SHOULD_BE_USE_WEB } from "../common/index.js";
6
6
  import { LayoutAnimationType } from "../commonTypes.js";
7
7
  import { getStaticFeatureFlag } from "../featureFlags/index.js";
@@ -77,8 +77,7 @@ function createLayoutAnimationManager() {
77
77
  stopObservingProgress(tag, value, scheduleFlush);
78
78
  value._value = style.initialValues;
79
79
  }
80
- const animation = withStyleAnimation(currentAnimation);
81
- animation.callback = finished => {
80
+ const animation = withStyleAnimation(currentAnimation, finished => {
82
81
  if (finished) {
83
82
  currentAnimationForTag.delete(tag);
84
83
  mutableValuesForTag.delete(tag);
@@ -86,9 +85,9 @@ function createLayoutAnimationManager() {
86
85
  stopObservingProgress(tag, value, scheduleFlush, shouldRemoveView);
87
86
  }
88
87
  if (style.callback) {
89
- style.callback(finished === undefined ? false : finished);
88
+ style.callback(finished);
90
89
  }
91
- };
90
+ });
92
91
  startObservingProgress(tag, value, scheduleFlush);
93
92
  value.value = animation;
94
93
  },
@@ -97,7 +96,11 @@ function createLayoutAnimationManager() {
97
96
  if (!value) {
98
97
  return;
99
98
  }
100
- stopObservingProgress(tag, value, scheduleFlush);
99
+ // native already made its cleanup, so we just do cleanup here on JS side
100
+ value.removeListener(tag + TAG_OFFSET);
101
+ cancelAnimation(value);
102
+ currentAnimationForTag.delete(tag);
103
+ mutableValuesForTag.delete(tag);
101
104
  }
102
105
  };
103
106
  }
@@ -1 +1 @@
1
- {"version":3,"names":["runOnUISync","withStyleAnimation","SHOULD_BE_USE_WEB","LayoutAnimationType","getStaticFeatureFlag","makeMutableUI","TAG_OFFSET","USE_ANIMATION_BACKEND","startObservingProgress","tag","sharedValue","scheduleFlush","addListener","global","_notifyAboutProgress","value","stopObservingProgress","removeView","removeListener","_notifyAboutEnd","createLayoutAnimationManager","currentAnimationForTag","Map","mutableValuesForTag","flushRequested","globalThis","requestAnimationFrameFinalizer","_maybeFlushUIUpdatesQueue","start","type","yogaValues","config","style","currentAnimation","animations","previousAnimation","get","set","undefined","initialValues","_value","animation","callback","finished","delete","shouldRemoveView","EXITING","stop","LayoutAnimationsManager"],"sourceRoot":"../../../src","sources":["layoutReanimation/animationsManager.ts"],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"names":["runOnUISync","cancelAnimation","withStyleAnimation","SHOULD_BE_USE_WEB","LayoutAnimationType","getStaticFeatureFlag","makeMutableUI","TAG_OFFSET","USE_ANIMATION_BACKEND","startObservingProgress","tag","sharedValue","scheduleFlush","addListener","global","_notifyAboutProgress","value","stopObservingProgress","removeView","removeListener","_notifyAboutEnd","createLayoutAnimationManager","currentAnimationForTag","Map","mutableValuesForTag","flushRequested","globalThis","requestAnimationFrameFinalizer","_maybeFlushUIUpdatesQueue","start","type","yogaValues","config","style","currentAnimation","animations","previousAnimation","get","set","undefined","initialValues","_value","animation","finished","delete","shouldRemoveView","EXITING","callback","stop","LayoutAnimationsManager"],"sourceRoot":"../../../src","sources":["layoutReanimation/animationsManager.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.5.2';
8
+ export const jsVersion = '4.5.3';
9
9
  //# sourceMappingURL=jsVersion.js.map
@@ -1,6 +1,5 @@
1
1
  import type { IAnimatedComponentInternal } from './createAnimatedComponent/commonTypes';
2
2
  export declare const PropsRegistryGarbageCollector: {
3
- viewsCount: number;
4
3
  viewsMap: Map<number, IAnimatedComponentInternal>;
5
4
  intervalId: NodeJS.Timeout | null;
6
5
  registerView(viewTag: number, component: IAnimatedComponentInternal): void;
@@ -1 +1 @@
1
- {"version":3,"file":"PropsRegistryGarbageCollector.d.ts","sourceRoot":"","sources":["../../src/PropsRegistryGarbageCollector.ts"],"names":[],"mappings":"AAOA,OAAO,KAAK,EAAE,0BAA0B,EAAE,MAAM,uCAAuC,CAAC;AAKxF,eAAO,MAAM,6BAA6B;;;gBAGpB,MAAM,CAAC,OAAO,GAAG,IAAI;0BAEnB,MAAM,aAAa,0BAA0B;4BAgB3C,MAAM;;;;CAiC/B,CAAC"}
1
+ {"version":3,"file":"PropsRegistryGarbageCollector.d.ts","sourceRoot":"","sources":["../../src/PropsRegistryGarbageCollector.ts"],"names":[],"mappings":"AAOA,OAAO,KAAK,EAAE,0BAA0B,EAAE,MAAM,uCAAuC,CAAC;AAKxF,eAAO,MAAM,6BAA6B;;gBAEpB,MAAM,CAAC,OAAO,GAAG,IAAI;0BAEnB,MAAM,aAAa,0BAA0B;4BAe3C,MAAM;;;;CAgC/B,CAAC"}
@@ -1,4 +1,4 @@
1
1
  import type { AnimatedStyle } from '../commonTypes';
2
2
  import type { StyleLayoutAnimation } from './commonTypes';
3
- export declare function withStyleAnimation(styleAnimations: AnimatedStyle<any>): StyleLayoutAnimation;
3
+ export declare function withStyleAnimation(styleAnimations: AnimatedStyle<any>, callback?: (finished: boolean) => void): StyleLayoutAnimation;
4
4
  //# sourceMappingURL=styleAnimation.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"styleAnimation.d.ts","sourceRoot":"","sources":["../../../src/animation/styleAnimation.ts"],"names":[],"mappings":"AAGA,OAAO,KAAK,EAEV,aAAa,EAMd,MAAM,gBAAgB,CAAC;AACxB,OAAO,KAAK,EAAE,oBAAoB,EAAE,MAAM,eAAe,CAAC;AA6D1D,wBAAgB,kBAAkB,CAEhC,eAAe,EAAE,aAAa,CAAC,GAAG,CAAC,GAClC,oBAAoB,CA4MtB"}
1
+ {"version":3,"file":"styleAnimation.d.ts","sourceRoot":"","sources":["../../../src/animation/styleAnimation.ts"],"names":[],"mappings":"AAGA,OAAO,KAAK,EAEV,aAAa,EAMd,MAAM,gBAAgB,CAAC;AACxB,OAAO,KAAK,EAAE,oBAAoB,EAAE,MAAM,eAAe,CAAC;AA6D1D,wBAAgB,kBAAkB,CAEhC,eAAe,EAAE,aAAa,CAAC,GAAG,CAAC,EACnC,QAAQ,CAAC,EAAE,CAAC,QAAQ,EAAE,OAAO,KAAK,IAAI,GACrC,oBAAoB,CA6MtB"}
@@ -1 +1 @@
1
- {"version":3,"file":"AnimatedComponent.d.ts","sourceRoot":"","sources":["../../../src/createAnimatedComponent/AnimatedComponent.tsx"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"AnimatedComponent.d.ts","sourceRoot":"","sources":["../../../src/createAnimatedComponent/AnimatedComponent.tsx"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"animationsManager.d.ts","sourceRoot":"","sources":["../../../src/layoutReanimation/animationsManager.ts"],"names":[],"mappings":"AAMA,OAAO,KAAK,EAEV,4BAA4B,EAG7B,MAAM,gBAAgB,CAAC;AAiCxB,iBAAS,4BAA4B,IAAI;IACvC,KAAK,EAAE,4BAA4B,CAAC;IACpC,IAAI,EAAE,CAAC,GAAG,EAAE,MAAM,KAAK,IAAI,CAAC;CAC7B,CAkFA;AAUD,MAAM,MAAM,uBAAuB,GAAG,UAAU,CAC9C,OAAO,4BAA4B,CACpC,CAAC"}
1
+ {"version":3,"file":"animationsManager.d.ts","sourceRoot":"","sources":["../../../src/layoutReanimation/animationsManager.ts"],"names":[],"mappings":"AAMA,OAAO,KAAK,EAEV,4BAA4B,EAG7B,MAAM,gBAAgB,CAAC;AAiCxB,iBAAS,4BAA4B,IAAI;IACvC,KAAK,EAAE,4BAA4B,CAAC;IACpC,IAAI,EAAE,CAAC,GAAG,EAAE,MAAM,KAAK,IAAI,CAAC;CAC7B,CAoFA;AAUD,MAAM,MAAM,uBAAuB,GAAG,UAAU,CAC9C,OAAO,4BAA4B,CACpC,CAAC"}
@@ -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.5.2";
6
+ export declare const jsVersion = "4.5.3";
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.5.2",
3
+ "version": "4.5.3",
4
4
  "description": "More powerful alternative to Animated library for React Native.",
5
5
  "keywords": [
6
6
  "react-native",
@@ -136,7 +136,7 @@
136
136
  "react-native": "0.86.0",
137
137
  "react-native-svg": "15.15.4",
138
138
  "react-native-web": "0.21.1",
139
- "react-native-worklets": "0.11.0",
139
+ "react-native-worklets": "0.11.1",
140
140
  "react-test-renderer": "19.2.3",
141
141
  "typescript": "5.9.3"
142
142
  },
@@ -62,6 +62,13 @@ module ReanimatedUtils
62
62
  if ios_sync_ui_props && shared_element_transitions
63
63
  raise "[Reanimated] The feature flags `IOS_SYNCHRONOUSLY_UPDATE_UI_PROPS` and `ENABLE_SHARED_ELEMENT_TRANSITIONS` cannot be enabled simultaneously. Please disable one of them in your package.json"
64
64
  end
65
+
66
+ use_animation_backend = feature_flags['USE_ANIMATION_BACKEND'] == 'true'
67
+ force_react_render_for_settled_animations = feature_flags['FORCE_REACT_RENDER_FOR_SETTLED_ANIMATIONS'] == 'true'
68
+
69
+ if use_animation_backend && force_react_render_for_settled_animations
70
+ raise "[Reanimated] The feature flags `USE_ANIMATION_BACKEND` and `FORCE_REACT_RENDER_FOR_SETTLED_ANIMATIONS` cannot be enabled simultaneously. If you want to use the animation backend, you need to explicitly disable `FORCE_REACT_RENDER_FOR_SETTLED_ANIMATIONS` feature flag (enabled by default) in your package.json"
71
+ end
65
72
  end
66
73
 
67
74
  def get_static_feature_flags()
@@ -11,7 +11,6 @@ import { ReanimatedModule } from './ReanimatedModule';
11
11
  const FLUSH_INTERVAL_MS = 500;
12
12
 
13
13
  export const PropsRegistryGarbageCollector = {
14
- viewsCount: 0,
15
14
  viewsMap: new Map<number, IAnimatedComponentInternal>(),
16
15
  intervalId: null as NodeJS.Timeout | null,
17
16
 
@@ -25,16 +24,14 @@ export const PropsRegistryGarbageCollector = {
25
24
  return;
26
25
  }
27
26
  this.viewsMap.set(viewTag, component);
28
- this.viewsCount++;
29
- if (this.viewsCount === 1) {
27
+ if (this.viewsMap.size === 1) {
30
28
  this.registerInterval();
31
29
  }
32
30
  },
33
31
 
34
32
  unregisterView(viewTag: number) {
35
- this.viewsMap.delete(viewTag);
36
- this.viewsCount--;
37
- if (this.viewsCount === 0) {
33
+ const deleted = this.viewsMap.delete(viewTag);
34
+ if (deleted && this.viewsMap.size === 0) {
38
35
  this.unregisterInterval();
39
36
  }
40
37
  },
@@ -73,7 +73,8 @@ interface NestedObjectEntry<T> {
73
73
 
74
74
  export function withStyleAnimation(
75
75
  // eslint-disable-next-line @typescript-eslint/no-explicit-any
76
- styleAnimations: AnimatedStyle<any>
76
+ styleAnimations: AnimatedStyle<any>,
77
+ callback?: (finished: boolean) => void
77
78
  ): StyleLayoutAnimation {
78
79
  'worklet';
79
80
  return defineAnimation<StyleLayoutAnimation>({}, () => {
@@ -236,7 +237,7 @@ export function withStyleAnimation(
236
237
  }
237
238
  };
238
239
 
239
- const callback = (finished: boolean): void => {
240
+ const styleAnimationCallback = (finished: boolean): void => {
240
241
  if (!finished) {
241
242
  const animationsToCheck: NestedObjectValues<AnimationObject>[] = [
242
243
  styleAnimations,
@@ -267,6 +268,7 @@ export function withStyleAnimation(
267
268
  }
268
269
  }
269
270
  }
271
+ callback?.(finished);
270
272
  };
271
273
 
272
274
  return {
@@ -275,7 +277,7 @@ export function withStyleAnimation(
275
277
  onStart,
276
278
  current: {},
277
279
  styleAnimations,
278
- callback,
280
+ callback: styleAnimationCallback,
279
281
  } as StyleLayoutAnimation;
280
282
  });
281
283
  }
@@ -51,7 +51,9 @@ if (IS_WEB) {
51
51
  }
52
52
 
53
53
  const FORCE_REACT_RENDER_FOR_SETTLED_ANIMATIONS =
54
- getStaticFeatureFlag('FORCE_REACT_RENDER_FOR_SETTLED_ANIMATIONS') && !IS_WEB;
54
+ getStaticFeatureFlag('FORCE_REACT_RENDER_FOR_SETTLED_ANIMATIONS') &&
55
+ !getStaticFeatureFlag('USE_ANIMATION_BACKEND') &&
56
+ !IS_WEB;
55
57
 
56
58
  export type Options<P> = {
57
59
  setNativeProps?: (ref: AnimatedComponentRef, props: P) => void;
@@ -2,7 +2,7 @@
2
2
 
3
3
  import { runOnUISync } from 'react-native-worklets';
4
4
 
5
- import { withStyleAnimation } from '../animation';
5
+ import { cancelAnimation, withStyleAnimation } from '../animation';
6
6
  import { SHOULD_BE_USE_WEB } from '../common';
7
7
  import type {
8
8
  LayoutAnimation,
@@ -102,9 +102,7 @@ function createLayoutAnimationManager(): {
102
102
  value._value = style.initialValues;
103
103
  }
104
104
 
105
- const animation = withStyleAnimation(currentAnimation);
106
-
107
- animation.callback = (finished?: boolean) => {
105
+ const animation = withStyleAnimation(currentAnimation, (finished) => {
108
106
  if (finished) {
109
107
  currentAnimationForTag.delete(tag);
110
108
  mutableValuesForTag.delete(tag);
@@ -112,9 +110,9 @@ function createLayoutAnimationManager(): {
112
110
  stopObservingProgress(tag, value, scheduleFlush, shouldRemoveView);
113
111
  }
114
112
  if (style.callback) {
115
- style.callback(finished === undefined ? false : finished);
113
+ style.callback(finished);
116
114
  }
117
- };
115
+ });
118
116
 
119
117
  startObservingProgress(tag, value, scheduleFlush);
120
118
  value.value = animation;
@@ -124,7 +122,11 @@ function createLayoutAnimationManager(): {
124
122
  if (!value) {
125
123
  return;
126
124
  }
127
- stopObservingProgress(tag, value, scheduleFlush);
125
+ // native already made its cleanup, so we just do cleanup here on JS side
126
+ value.removeListener(tag + TAG_OFFSET);
127
+ cancelAnimation(value);
128
+ currentAnimationForTag.delete(tag);
129
+ mutableValuesForTag.delete(tag);
128
130
  },
129
131
  };
130
132
  }
@@ -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.5.2';
7
+ export const jsVersion = '4.5.3';