react-native 0.84.0-nightly-20251205-95cc1e767 → 0.84.0-nightly-20251206-63b0aef13

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 (42) hide show
  1. package/Libraries/Animated/nodes/AnimatedProps.js +29 -3
  2. package/Libraries/Core/ReactNativeVersion.js +1 -1
  3. package/Libraries/NativeAnimation/RCTNativeAnimatedTurboModule.mm +7 -0
  4. package/Libraries/NativeAnimation/React-RCTAnimation.podspec +1 -0
  5. package/React/Base/RCTVersion.m +1 -1
  6. package/React/FBReactNativeSpec/FBReactNativeSpec/FBReactNativeSpec-generated.mm +7 -0
  7. package/React/FBReactNativeSpec/FBReactNativeSpec/FBReactNativeSpec.h +2 -0
  8. package/React/FBReactNativeSpec/FBReactNativeSpecJSI.h +10 -0
  9. package/ReactAndroid/gradle.properties +1 -1
  10. package/ReactAndroid/src/main/java/com/facebook/react/modules/systeminfo/ReactNativeVersion.kt +1 -1
  11. package/ReactAndroid/src/main/java/com/facebook/react/views/scroll/ReactScrollView.java +1 -10
  12. package/ReactAndroid/src/main/java/com/facebook/react/views/text/ReactTextViewAccessibilityDelegate.kt +1 -0
  13. package/ReactAndroid/src/main/java/com/facebook/react/views/text/TextLayoutManager.kt +42 -28
  14. package/ReactCommon/cxxreact/ReactNativeVersion.h +1 -1
  15. package/ReactCommon/jsi/jsi/jsi.cpp +2 -1
  16. package/ReactCommon/jsinspector-modern/HostAgent.cpp +2 -2
  17. package/ReactCommon/jsinspector-modern/InspectorInterfaces.cpp +10 -5
  18. package/ReactCommon/jsinspector-modern/InspectorInterfaces.h +2 -2
  19. package/ReactCommon/jsinspector-modern/TracingAgent.cpp +1 -1
  20. package/ReactCommon/react/renderer/animated/AnimatedModule.cpp +19 -1
  21. package/ReactCommon/react/renderer/animated/AnimatedModule.h +8 -0
  22. package/ReactCommon/react/renderer/animated/NativeAnimatedNodesManager.cpp +83 -9
  23. package/ReactCommon/react/renderer/animated/NativeAnimatedNodesManager.h +6 -0
  24. package/ReactCommon/react/renderer/animated/drivers/FrameAnimationDriver.cpp +1 -0
  25. package/ReactCommon/react/renderer/animated/nodes/ColorAnimatedNode.cpp +0 -1
  26. package/ReactCommon/react/renderer/animated/nodes/PropsAnimatedNode.h +1 -0
  27. package/ReactCommon/react/renderer/animated/nodes/RoundAnimatedNode.cpp +1 -1
  28. package/ReactCommon/react/renderer/animated/nodes/ValueAnimatedNode.cpp +1 -1
  29. package/ReactCommon/react/renderer/animated/tests/AnimatedNodeTests.cpp +67 -0
  30. package/ReactCommon/react/renderer/animated/tests/AnimationDriverTests.cpp +59 -0
  31. package/ReactCommon/react/renderer/animationbackend/AnimatedPropsRegistry.cpp +81 -0
  32. package/ReactCommon/react/renderer/animationbackend/AnimatedPropsRegistry.h +83 -0
  33. package/ReactCommon/react/renderer/animationbackend/AnimationBackend.cpp +26 -15
  34. package/ReactCommon/react/renderer/animationbackend/AnimationBackend.h +7 -4
  35. package/ReactCommon/react/renderer/animationbackend/AnimationBackendCommitHook.cpp +69 -0
  36. package/ReactCommon/react/renderer/animationbackend/AnimationBackendCommitHook.h +32 -0
  37. package/ReactCommon/react/renderer/uimanager/UIManager.cpp +6 -0
  38. package/ReactCommon/react/renderer/uimanager/UIManagerAnimationBackend.h +1 -0
  39. package/package.json +9 -9
  40. package/sdks/hermes-engine/version.properties +1 -1
  41. package/src/private/animated/NativeAnimatedHelper.js +29 -1
  42. package/src/private/specs_DEPRECATED/modules/NativeAnimatedModule.js +4 -0
@@ -17,6 +17,8 @@ import type {
17
17
  AnimatedNodeConfig,
18
18
  EventMapping,
19
19
  } from '../../../Libraries/Animated/NativeAnimatedModule';
20
+ import type {Spec as NativeAnimatedTurboModuleSpec} from '../../../Libraries/Animated/NativeAnimatedTurboModule';
21
+ import type {Node} from '../../../Libraries/Renderer/shims/ReactNativeTypes';
20
22
  import type {EventSubscription} from '../../../Libraries/vendor/emitter/EventEmitter';
21
23
 
22
24
  import NativeAnimatedNonTurboModule from '../../../Libraries/Animated/NativeAnimatedModule';
@@ -28,8 +30,17 @@ import * as ReactNativeFeatureFlags from '../featureflags/ReactNativeFeatureFlag
28
30
  import invariant from 'invariant';
29
31
  import nullthrows from 'nullthrows';
30
32
 
33
+ interface NativeAnimatedModuleSpec extends NativeAnimatedTurboModuleSpec {
34
+ // connectAnimatedNodeToShadowNodeFamily is available only in NativeAnimatedNonTurboModule
35
+ +connectAnimatedNodeToShadowNodeFamily?: (
36
+ nodeTag: number,
37
+ // $FlowExpectedError[unclear-type].
38
+ shadowNode: Object,
39
+ ) => void;
40
+ }
41
+
31
42
  // TODO T69437152 @petetheheat - Delete this fork when Fabric ships to 100%.
32
- const NativeAnimatedModule: typeof NativeAnimatedTurboModule =
43
+ const NativeAnimatedModule: ?NativeAnimatedModuleSpec =
33
44
  NativeAnimatedNonTurboModule ?? NativeAnimatedTurboModule;
34
45
 
35
46
  let __nativeAnimatedNodeTagCount = 1; /* used for animated nodes */
@@ -84,6 +95,13 @@ function createNativeOperations(): $NonMaybeType<typeof NativeAnimatedModule> {
84
95
  'addListener', // 20
85
96
  'removeListener', // 21
86
97
  ];
98
+ if (
99
+ ReactNativeFeatureFlags.cxxNativeAnimatedEnabled() &&
100
+ //eslint-disable-next-line
101
+ ReactNativeFeatureFlags.useSharedAnimatedBackend()
102
+ ) {
103
+ methodNames.push('connectAnimatedNodeToShadowNodeFamily');
104
+ }
87
105
  const nativeOperations: {
88
106
  [$Values<typeof methodNames>]: (...$ReadOnlyArray<mixed>) => void,
89
107
  } = {};
@@ -312,6 +330,16 @@ const API = {
312
330
  NativeOperations.connectAnimatedNodeToView(nodeTag, viewTag);
313
331
  },
314
332
 
333
+ connectAnimatedNodeToShadowNodeFamily(
334
+ nodeTag: number,
335
+ shadowNode: Node,
336
+ ): void {
337
+ NativeOperations.connectAnimatedNodeToShadowNodeFamily?.(
338
+ nodeTag,
339
+ shadowNode,
340
+ );
341
+ },
342
+
315
343
  disconnectAnimatedNodeFromView(nodeTag: number, viewTag: number): void {
316
344
  NativeOperations.disconnectAnimatedNodeFromView(nodeTag, viewTag);
317
345
  },
@@ -49,6 +49,10 @@ export interface Spec extends TurboModule {
49
49
  +flattenAnimatedNodeOffset: (nodeTag: number) => void;
50
50
  +extractAnimatedNodeOffset: (nodeTag: number) => void;
51
51
  +connectAnimatedNodeToView: (nodeTag: number, viewTag: number) => void;
52
+ +connectAnimatedNodeToShadowNodeFamily?: (
53
+ nodeTag: number,
54
+ shadowNode: Object,
55
+ ) => void;
52
56
  +disconnectAnimatedNodeFromView: (nodeTag: number, viewTag: number) => void;
53
57
  +restoreDefaultValues: (nodeTag: number) => void;
54
58
  +dropAnimatedNode: (tag: number) => void;