react-native 0.82.0-nightly-20250724-e1ae619fc → 0.82.0-nightly-20250726-01eaa6db9

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 (144) hide show
  1. package/Libraries/Alert/RCTAlertManager.android.js +2 -0
  2. package/Libraries/Animated/AnimatedImplementation.js +2 -0
  3. package/Libraries/Animated/Easing.js +2 -0
  4. package/Libraries/Animated/animations/TimingAnimation.js +2 -0
  5. package/Libraries/BatchedBridge/MessageQueue.js +4 -0
  6. package/Libraries/Components/View/View.js +5 -1
  7. package/Libraries/Core/ReactNativeVersion.js +1 -1
  8. package/Libraries/LayoutAnimation/LayoutAnimation.js +2 -0
  9. package/React/Base/RCTVersion.m +1 -1
  10. package/React/FBReactNativeSpec/FBReactNativeSpecJSI-generated.cpp +18 -0
  11. package/React/FBReactNativeSpec/FBReactNativeSpecJSI.h +27 -0
  12. package/React/Fabric/Mounting/ComponentViews/VirtualView/RCTVirtualViewComponentView.mm +6 -16
  13. package/React/Fabric/Mounting/ComponentViews/VirtualViewExperimental/RCTVirtualViewExperimentalComponentView.mm +6 -16
  14. package/React/Fabric/Mounting/ComponentViews/VirtualViewExperimental/RCTVirtualViewMode.h +18 -0
  15. package/React/Fabric/Mounting/ComponentViews/VirtualViewExperimental/RCTVirtualViewRenderState.h +17 -0
  16. package/ReactAndroid/gradle.properties +1 -1
  17. package/ReactAndroid/src/main/java/com/facebook/react/internal/featureflags/ReactNativeFeatureFlags.kt +19 -1
  18. package/ReactAndroid/src/main/java/com/facebook/react/internal/featureflags/ReactNativeFeatureFlagsCxxAccessor.kt +31 -1
  19. package/ReactAndroid/src/main/java/com/facebook/react/internal/featureflags/ReactNativeFeatureFlagsCxxInterop.kt +7 -1
  20. package/ReactAndroid/src/main/java/com/facebook/react/internal/featureflags/ReactNativeFeatureFlagsDefaults.kt +7 -1
  21. package/ReactAndroid/src/main/java/com/facebook/react/internal/featureflags/ReactNativeFeatureFlagsLocalAccessor.kt +34 -1
  22. package/ReactAndroid/src/main/java/com/facebook/react/internal/featureflags/ReactNativeFeatureFlagsProvider.kt +7 -1
  23. package/ReactAndroid/src/main/java/com/facebook/react/modules/systeminfo/ReactNativeVersion.kt +1 -1
  24. package/ReactAndroid/src/main/jni/react/devsupport/JCxxInspectorPackagerConnection.cpp +1 -1
  25. package/ReactAndroid/src/main/jni/react/devsupport/JCxxInspectorPackagerConnectionWebSocketDelegate.cpp +2 -1
  26. package/ReactAndroid/src/main/jni/react/devsupport/OnLoad.cpp +1 -1
  27. package/ReactAndroid/src/main/jni/react/fabric/ComponentFactory.cpp +1 -1
  28. package/ReactAndroid/src/main/jni/react/fabric/EventEmitterWrapper.cpp +6 -3
  29. package/ReactAndroid/src/main/jni/react/fabric/EventEmitterWrapper.h +2 -2
  30. package/ReactAndroid/src/main/jni/react/fabric/FabricMountingManager.cpp +8 -8
  31. package/ReactAndroid/src/main/jni/react/fabric/FabricUIManagerBinding.cpp +16 -12
  32. package/ReactAndroid/src/main/jni/react/fabric/MountItem.cpp +59 -10
  33. package/ReactAndroid/src/main/jni/react/fabric/OnLoad.cpp +1 -1
  34. package/ReactAndroid/src/main/jni/react/fabric/SurfaceHandlerBinding.cpp +8 -7
  35. package/ReactAndroid/src/main/jni/react/featureflags/JReactNativeFeatureFlagsCxxInterop.cpp +43 -1
  36. package/ReactAndroid/src/main/jni/react/featureflags/JReactNativeFeatureFlagsCxxInterop.h +10 -1
  37. package/ReactAndroid/src/main/jni/react/featureflags/OnLoad.cpp +1 -1
  38. package/ReactAndroid/src/main/jni/react/hermes/instrumentation/HermesSamplingProfiler.cpp +4 -4
  39. package/ReactAndroid/src/main/jni/react/hermes/instrumentation/HermesSamplingProfiler.h +1 -1
  40. package/ReactAndroid/src/main/jni/react/hermes/instrumentation/OnLoad.cpp +1 -1
  41. package/ReactAndroid/src/main/jni/react/jni/CatalystInstanceImpl.cpp +5 -4
  42. package/ReactAndroid/src/main/jni/react/jni/CatalystInstanceImpl.h +1 -1
  43. package/ReactAndroid/src/main/jni/react/jni/JDynamicNative.cpp +2 -2
  44. package/ReactAndroid/src/main/jni/react/jni/JInspector.cpp +3 -3
  45. package/ReactAndroid/src/main/jni/react/jni/JMessageQueueThread.cpp +1 -1
  46. package/ReactAndroid/src/main/jni/react/jni/JReactCxxErrorHandler.cpp +3 -1
  47. package/ReactAndroid/src/main/jni/react/jni/JReactMarker.cpp +1 -1
  48. package/ReactAndroid/src/main/jni/react/jni/JReactMarker.h +1 -1
  49. package/ReactAndroid/src/main/jni/react/jni/JReactSoftExceptionLogger.cpp +4 -1
  50. package/ReactAndroid/src/main/jni/react/jni/JRuntimeExecutor.cpp +3 -1
  51. package/ReactAndroid/src/main/jni/react/jni/JRuntimeScheduler.cpp +3 -1
  52. package/ReactAndroid/src/main/jni/react/jni/JSLoader.cpp +4 -4
  53. package/ReactAndroid/src/main/jni/react/jni/JavaModuleWrapper.cpp +1 -3
  54. package/ReactAndroid/src/main/jni/react/jni/JniJSModulesUnbundle.cpp +8 -5
  55. package/ReactAndroid/src/main/jni/react/jni/JniJSModulesUnbundle.h +1 -1
  56. package/ReactAndroid/src/main/jni/react/jni/MethodInvoker.cpp +4 -2
  57. package/ReactAndroid/src/main/jni/react/jni/ReactInstanceManagerInspectorTarget.cpp +1 -1
  58. package/ReactAndroid/src/main/jni/react/jni/ReadableNativeMap.cpp +3 -2
  59. package/ReactAndroid/src/main/jni/react/jni/WritableNativeMap.cpp +3 -3
  60. package/ReactAndroid/src/main/jni/react/jni/WritableNativeMap.h +2 -2
  61. package/ReactAndroid/src/main/jni/react/mapbuffer/react/common/mapbuffer/JWritableMapBuffer.cpp +1 -1
  62. package/ReactAndroid/src/main/jni/react/newarchdefaults/DefaultComponentsRegistry.cpp +1 -1
  63. package/ReactAndroid/src/main/jni/react/newarchdefaults/DefaultTurboModuleManagerDelegate.cpp +2 -2
  64. package/ReactAndroid/src/main/jni/react/newarchdefaults/OnLoad.cpp +1 -1
  65. package/ReactAndroid/src/main/jni/react/reactnativeblob/BlobCollector.cpp +6 -6
  66. package/ReactAndroid/src/main/jni/react/reactnativeblob/BlobCollector.h +1 -1
  67. package/ReactAndroid/src/main/jni/react/reactnativeblob/OnLoad.cpp +1 -1
  68. package/ReactAndroid/src/main/jni/react/runtime/hermes/jni/OnLoad.cpp +1 -1
  69. package/ReactAndroid/src/main/jni/react/runtime/jni/JReactHostInspectorTarget.cpp +2 -2
  70. package/ReactAndroid/src/main/jni/react/runtime/jni/JavaTimerRegistry.cpp +3 -1
  71. package/ReactAndroid/src/main/jni/react/turbomodule/ReactCommon/OnLoad.cpp +2 -2
  72. package/ReactAndroid/src/main/jni/react/turbomodule/ReactCommon/TurboModuleManager.cpp +4 -6
  73. package/ReactAndroid/src/main/jni/react/uimanager/OnLoad.cpp +1 -1
  74. package/ReactCommon/cxxreact/ReactNativeVersion.h +1 -1
  75. package/ReactCommon/cxxreact/TraceSection.h +4 -4
  76. package/ReactCommon/hermes/inspector-modern/chrome/ConnectionDemux.cpp +9 -8
  77. package/ReactCommon/hermes/inspector-modern/chrome/HermesRuntimeAgentDelegate.cpp +4 -2
  78. package/ReactCommon/jsinspector-modern/FallbackRuntimeAgentDelegate.cpp +3 -1
  79. package/ReactCommon/jsinspector-modern/HostAgent.cpp +147 -50
  80. package/ReactCommon/jsinspector-modern/HostTarget.cpp +2 -1
  81. package/ReactCommon/jsinspector-modern/InspectorInterfaces.cpp +13 -12
  82. package/ReactCommon/jsinspector-modern/InspectorPackagerConnection.cpp +23 -13
  83. package/ReactCommon/jsinspector-modern/InspectorPackagerConnectionImpl.h +9 -8
  84. package/ReactCommon/jsinspector-modern/InstanceAgent.cpp +2 -0
  85. package/ReactCommon/jsinspector-modern/InstanceTarget.cpp +5 -3
  86. package/ReactCommon/jsinspector-modern/InstanceTarget.h +1 -1
  87. package/ReactCommon/jsinspector-modern/NetworkIOAgent.cpp +4 -5
  88. package/ReactCommon/jsinspector-modern/RuntimeAgent.cpp +17 -50
  89. package/ReactCommon/jsinspector-modern/RuntimeAgent.h +1 -1
  90. package/ReactCommon/jsinspector-modern/RuntimeTarget.cpp +9 -7
  91. package/ReactCommon/jsinspector-modern/RuntimeTarget.h +2 -2
  92. package/ReactCommon/jsinspector-modern/TracingAgent.cpp +14 -0
  93. package/ReactCommon/jsinspector-modern/TracingAgent.h +5 -2
  94. package/ReactCommon/jsinspector-modern/Utf8.h +1 -0
  95. package/ReactCommon/jsinspector-modern/tests/ConsoleApiTest.cpp +4 -3
  96. package/ReactCommon/jsinspector-modern/tests/FollyDynamicMatchers.cpp +1 -1
  97. package/ReactCommon/jsinspector-modern/tests/FollyDynamicMatchers.h +1 -1
  98. package/ReactCommon/jsinspector-modern/tests/HostTargetTest.cpp +2 -2
  99. package/ReactCommon/jsinspector-modern/tests/InspectorPackagerConnectionTest.cpp +36 -37
  100. package/ReactCommon/jsinspector-modern/tests/JsiIntegrationTest.cpp +58 -10
  101. package/ReactCommon/jsinspector-modern/tests/ReactInstanceIntegrationTest.cpp +1 -2
  102. package/ReactCommon/jsinspector-modern/tests/ReactInstanceIntegrationTest.h +1 -0
  103. package/ReactCommon/jsinspector-modern/tests/engines/JsiIntegrationTestGenericEngineAdapter.cpp +0 -2
  104. package/ReactCommon/jsinspector-modern/tracing/PerformanceTracer.cpp +2 -4
  105. package/ReactCommon/react/bridging/tests/ClassTest.cpp +14 -8
  106. package/ReactCommon/react/featureflags/ReactNativeFeatureFlags.cpp +13 -1
  107. package/ReactCommon/react/featureflags/ReactNativeFeatureFlags.h +16 -1
  108. package/ReactCommon/react/featureflags/ReactNativeFeatureFlagsAccessor.cpp +118 -64
  109. package/ReactCommon/react/featureflags/ReactNativeFeatureFlagsAccessor.h +8 -2
  110. package/ReactCommon/react/featureflags/ReactNativeFeatureFlagsDefaults.h +13 -1
  111. package/ReactCommon/react/featureflags/ReactNativeFeatureFlagsDynamicProvider.h +28 -1
  112. package/ReactCommon/react/featureflags/ReactNativeFeatureFlagsProvider.h +4 -1
  113. package/ReactCommon/react/nativemodule/core/ReactCommon/CxxTurboModuleUtils.cpp +4 -1
  114. package/ReactCommon/react/nativemodule/core/ReactCommon/CxxTurboModuleUtils.h +3 -3
  115. package/ReactCommon/react/nativemodule/core/ReactCommon/TurboCxxModule.cpp +13 -14
  116. package/ReactCommon/react/nativemodule/core/ReactCommon/TurboModule.cpp +4 -3
  117. package/ReactCommon/react/nativemodule/core/ReactCommon/TurboModule.h +2 -2
  118. package/ReactCommon/react/nativemodule/core/ReactCommon/TurboModuleBinding.cpp +1 -1
  119. package/ReactCommon/react/nativemodule/core/ReactCommon/TurboModuleUtils.cpp +2 -2
  120. package/ReactCommon/react/nativemodule/core/ReactCommon/TurboModuleUtils.h +1 -1
  121. package/ReactCommon/react/nativemodule/core/platform/android/ReactCommon/JavaInteropTurboModule.cpp +5 -4
  122. package/ReactCommon/react/nativemodule/core/platform/android/ReactCommon/JavaInteropTurboModule.h +1 -1
  123. package/ReactCommon/react/nativemodule/core/platform/android/ReactCommon/JavaTurboModule.cpp +11 -11
  124. package/ReactCommon/react/nativemodule/core/tests/TurboModuleTestFixture.h +72 -0
  125. package/ReactCommon/react/nativemodule/dom/NativeDOM.cpp +1 -1
  126. package/ReactCommon/react/nativemodule/featureflags/NativeReactNativeFeatureFlags.cpp +16 -1
  127. package/ReactCommon/react/nativemodule/featureflags/NativeReactNativeFeatureFlags.h +7 -1
  128. package/ReactCommon/react/nativemodule/idlecallbacks/NativeIdleCallbacks.cpp +1 -1
  129. package/ReactCommon/react/nativemodule/mutationobserver/NativeMutationObserver.cpp +2 -2
  130. package/ReactCommon/react/nativemodule/mutationobserver/NativeMutationObserver.h +1 -1
  131. package/ReactCommon/react/nativemodule/samples/platform/android/ReactCommon/SampleTurboModuleSpec.cpp +47 -25
  132. package/ReactCommon/react/nativemodule/webperformance/NativePerformance.cpp +6 -6
  133. package/ReactCommon/react/nativemodule/webperformance/NativePerformance.h +4 -4
  134. package/ReactCommon/react/performance/timeline/PerformanceEntryKeyedBuffer.cpp +1 -3
  135. package/ReactCommon/yoga/yoga/Yoga.h +8 -8
  136. package/jest/setup.js +11 -0
  137. package/package.json +11 -11
  138. package/sdks/hermesc/osx-bin/hermes +0 -0
  139. package/sdks/hermesc/osx-bin/hermesc +0 -0
  140. package/sdks/hermesc/win64-bin/hermesc.exe +0 -0
  141. package/src/private/animated/NativeAnimatedHelper.js +8 -0
  142. package/src/private/featureflags/ReactNativeFeatureFlags.js +16 -1
  143. package/src/private/featureflags/specs/NativeReactNativeFeatureFlags.js +4 -1
  144. package/types_generated/Libraries/Components/View/View.d.ts +4 -2
@@ -28,6 +28,8 @@ export function alertWithArgs(
28
28
  args,
29
29
  emptyCallback,
30
30
  // $FlowFixMe[incompatible-call] - Mismatched platform interfaces.
31
+ /* $FlowFixMe[constant-condition] Error discovered during Constant
32
+ * Condition roll out. See https://fburl.com/workplace/1v97vimq. */
31
33
  callback || emptyCallback,
32
34
  );
33
35
  }
@@ -94,6 +94,8 @@ const _combineCallbacks = function (
94
94
  if (callback && config.onComplete) {
95
95
  return (...args: Array<EndResult>) => {
96
96
  config.onComplete && config.onComplete(...args);
97
+ /* $FlowFixMe[constant-condition] Error discovered during Constant
98
+ * Condition roll out. See https://fburl.com/workplace/1v97vimq. */
97
99
  callback && callback(...args);
98
100
  };
99
101
  } else {
@@ -91,6 +91,8 @@ const EasingStatic = {
91
91
  * http://cubic-bezier.com/#.42,0,1,1
92
92
  */
93
93
  ease(t: number): number {
94
+ /* $FlowFixMe[constant-condition] Error discovered during Constant
95
+ * Condition roll out. See https://fburl.com/workplace/1v97vimq. */
94
96
  if (!ease) {
95
97
  ease = EasingStatic.bezier(0.42, 0, 1, 1);
96
98
  }
@@ -49,6 +49,8 @@ export type TimingAnimationConfigSingle = $ReadOnly<{
49
49
 
50
50
  let _easeInOut;
51
51
  function easeInOut() {
52
+ /* $FlowFixMe[constant-condition] Error discovered during Constant Condition
53
+ * roll out. See https://fburl.com/workplace/1v97vimq. */
52
54
  if (!_easeInOut) {
53
55
  const Easing = require('../Easing').default;
54
56
  _easeInOut = Easing.inOut(Easing.ease);
@@ -162,6 +162,8 @@ class MessageQueue {
162
162
 
163
163
  getCallableModule(name: string): {...} | null {
164
164
  const getValue = this._lazyCallableModules[name];
165
+ /* $FlowFixMe[constant-condition] Error discovered during Constant
166
+ * Condition roll out. See https://fburl.com/workplace/1v97vimq. */
165
167
  return getValue ? getValue() : null;
166
168
  }
167
169
 
@@ -466,6 +468,8 @@ class MessageQueue {
466
468
  const profileName = debug
467
469
  ? '<callback for ' + module + '.' + method + '>'
468
470
  : cbID;
471
+ /* $FlowFixMe[constant-condition] Error discovered during Constant
472
+ * Condition roll out. See https://fburl.com/workplace/1v97vimq. */
469
473
  if (callback && this.__spy) {
470
474
  this.__spy({type: TO_JS, module: null, method: profileName, args});
471
475
  }
@@ -23,7 +23,7 @@ import {use} from 'react';
23
23
  *
24
24
  * @see https://reactnative.dev/docs/view
25
25
  */
26
- export default component View(
26
+ component View(
27
27
  ref?: React.RefSetter<React.ElementRef<typeof ViewNativeComponent>>,
28
28
  ...props: ViewProps
29
29
  ) {
@@ -213,3 +213,7 @@ export default component View(
213
213
  }
214
214
  return actualView;
215
215
  }
216
+
217
+ View.displayName = 'View';
218
+
219
+ export default View;
@@ -29,7 +29,7 @@ export default class ReactNativeVersion {
29
29
  static major: number = 0;
30
30
  static minor: number = 82;
31
31
  static patch: number = 0;
32
- static prerelease: string | null = 'nightly-20250724-e1ae619fc';
32
+ static prerelease: string | null = 'nightly-20250726-01eaa6db9';
33
33
 
34
34
  static getVersionString(): string {
35
35
  return `${this.major}.${this.minor}.${this.patch}${this.prerelease != null ? `-${this.prerelease}` : ''}`;
@@ -108,6 +108,8 @@ function configureNext(
108
108
  if (UIManager?.configureNextLayoutAnimation) {
109
109
  UIManager.configureNextLayoutAnimation(
110
110
  config,
111
+ /* $FlowFixMe[constant-condition] Error discovered during Constant
112
+ * Condition roll out. See https://fburl.com/workplace/1v97vimq. */
111
113
  onAnimationComplete ?? function () {},
112
114
  onAnimationDidFail ??
113
115
  function () {} /* this should never be called in Non-Fabric */,
@@ -24,7 +24,7 @@ NSDictionary* RCTGetReactNativeVersion(void)
24
24
  RCTVersionMajor: @(0),
25
25
  RCTVersionMinor: @(82),
26
26
  RCTVersionPatch: @(0),
27
- RCTVersionPrerelease: @"nightly-20250724-e1ae619fc",
27
+ RCTVersionPrerelease: @"nightly-20250726-01eaa6db9",
28
28
  };
29
29
  });
30
30
  return __rnVersion;
@@ -92,6 +92,11 @@ static jsi::Value __hostFunction_NativeReactNativeFeatureFlagsCxxSpecJSI_commonT
92
92
  rt
93
93
  );
94
94
  }
95
+ static jsi::Value __hostFunction_NativeReactNativeFeatureFlagsCxxSpecJSI_cdpInteractionMetricsEnabled(jsi::Runtime &rt, TurboModule &turboModule, const jsi::Value* args, size_t count) {
96
+ return static_cast<NativeReactNativeFeatureFlagsCxxSpecJSI *>(&turboModule)->cdpInteractionMetricsEnabled(
97
+ rt
98
+ );
99
+ }
95
100
  static jsi::Value __hostFunction_NativeReactNativeFeatureFlagsCxxSpecJSI_cxxNativeAnimatedEnabled(jsi::Runtime &rt, TurboModule &turboModule, const jsi::Value* args, size_t count) {
96
101
  return static_cast<NativeReactNativeFeatureFlagsCxxSpecJSI *>(&turboModule)->cxxNativeAnimatedEnabled(
97
102
  rt
@@ -102,6 +107,11 @@ static jsi::Value __hostFunction_NativeReactNativeFeatureFlagsCxxSpecJSI_cxxNati
102
107
  rt
103
108
  );
104
109
  }
110
+ static jsi::Value __hostFunction_NativeReactNativeFeatureFlagsCxxSpecJSI_disableFabricCommitInCXXAnimated(jsi::Runtime &rt, TurboModule &turboModule, const jsi::Value* args, size_t count) {
111
+ return static_cast<NativeReactNativeFeatureFlagsCxxSpecJSI *>(&turboModule)->disableFabricCommitInCXXAnimated(
112
+ rt
113
+ );
114
+ }
105
115
  static jsi::Value __hostFunction_NativeReactNativeFeatureFlagsCxxSpecJSI_disableMountItemReorderingAndroid(jsi::Runtime &rt, TurboModule &turboModule, const jsi::Value* args, size_t count) {
106
116
  return static_cast<NativeReactNativeFeatureFlagsCxxSpecJSI *>(&turboModule)->disableMountItemReorderingAndroid(
107
117
  rt
@@ -317,6 +327,11 @@ static jsi::Value __hostFunction_NativeReactNativeFeatureFlagsCxxSpecJSI_hideOff
317
327
  rt
318
328
  );
319
329
  }
330
+ static jsi::Value __hostFunction_NativeReactNativeFeatureFlagsCxxSpecJSI_perfMonitorV2Enabled(jsi::Runtime &rt, TurboModule &turboModule, const jsi::Value* args, size_t count) {
331
+ return static_cast<NativeReactNativeFeatureFlagsCxxSpecJSI *>(&turboModule)->perfMonitorV2Enabled(
332
+ rt
333
+ );
334
+ }
320
335
  static jsi::Value __hostFunction_NativeReactNativeFeatureFlagsCxxSpecJSI_preparedTextCacheSize(jsi::Runtime &rt, TurboModule &turboModule, const jsi::Value* args, size_t count) {
321
336
  return static_cast<NativeReactNativeFeatureFlagsCxxSpecJSI *>(&turboModule)->preparedTextCacheSize(
322
337
  rt
@@ -412,8 +427,10 @@ NativeReactNativeFeatureFlagsCxxSpecJSI::NativeReactNativeFeatureFlagsCxxSpecJSI
412
427
  : TurboModule("NativeReactNativeFeatureFlagsCxx", jsInvoker) {
413
428
  methodMap_["commonTestFlag"] = MethodMetadata {0, __hostFunction_NativeReactNativeFeatureFlagsCxxSpecJSI_commonTestFlag};
414
429
  methodMap_["commonTestFlagWithoutNativeImplementation"] = MethodMetadata {0, __hostFunction_NativeReactNativeFeatureFlagsCxxSpecJSI_commonTestFlagWithoutNativeImplementation};
430
+ methodMap_["cdpInteractionMetricsEnabled"] = MethodMetadata {0, __hostFunction_NativeReactNativeFeatureFlagsCxxSpecJSI_cdpInteractionMetricsEnabled};
415
431
  methodMap_["cxxNativeAnimatedEnabled"] = MethodMetadata {0, __hostFunction_NativeReactNativeFeatureFlagsCxxSpecJSI_cxxNativeAnimatedEnabled};
416
432
  methodMap_["cxxNativeAnimatedRemoveJsSync"] = MethodMetadata {0, __hostFunction_NativeReactNativeFeatureFlagsCxxSpecJSI_cxxNativeAnimatedRemoveJsSync};
433
+ methodMap_["disableFabricCommitInCXXAnimated"] = MethodMetadata {0, __hostFunction_NativeReactNativeFeatureFlagsCxxSpecJSI_disableFabricCommitInCXXAnimated};
417
434
  methodMap_["disableMountItemReorderingAndroid"] = MethodMetadata {0, __hostFunction_NativeReactNativeFeatureFlagsCxxSpecJSI_disableMountItemReorderingAndroid};
418
435
  methodMap_["disableOldAndroidAttachmentMetricsWorkarounds"] = MethodMetadata {0, __hostFunction_NativeReactNativeFeatureFlagsCxxSpecJSI_disableOldAndroidAttachmentMetricsWorkarounds};
419
436
  methodMap_["disableTextLayoutManagerCacheAndroid"] = MethodMetadata {0, __hostFunction_NativeReactNativeFeatureFlagsCxxSpecJSI_disableTextLayoutManagerCacheAndroid};
@@ -457,6 +474,7 @@ NativeReactNativeFeatureFlagsCxxSpecJSI::NativeReactNativeFeatureFlagsCxxSpecJSI
457
474
  methodMap_["fuseboxEnabledRelease"] = MethodMetadata {0, __hostFunction_NativeReactNativeFeatureFlagsCxxSpecJSI_fuseboxEnabledRelease};
458
475
  methodMap_["fuseboxNetworkInspectionEnabled"] = MethodMetadata {0, __hostFunction_NativeReactNativeFeatureFlagsCxxSpecJSI_fuseboxNetworkInspectionEnabled};
459
476
  methodMap_["hideOffscreenVirtualViewsOnIOS"] = MethodMetadata {0, __hostFunction_NativeReactNativeFeatureFlagsCxxSpecJSI_hideOffscreenVirtualViewsOnIOS};
477
+ methodMap_["perfMonitorV2Enabled"] = MethodMetadata {0, __hostFunction_NativeReactNativeFeatureFlagsCxxSpecJSI_perfMonitorV2Enabled};
460
478
  methodMap_["preparedTextCacheSize"] = MethodMetadata {0, __hostFunction_NativeReactNativeFeatureFlagsCxxSpecJSI_preparedTextCacheSize};
461
479
  methodMap_["preventShadowTreeCommitExhaustion"] = MethodMetadata {0, __hostFunction_NativeReactNativeFeatureFlagsCxxSpecJSI_preventShadowTreeCommitExhaustion};
462
480
  methodMap_["releaseImageDataWhenConsumed"] = MethodMetadata {0, __hostFunction_NativeReactNativeFeatureFlagsCxxSpecJSI_releaseImageDataWhenConsumed};
@@ -328,8 +328,10 @@ protected:
328
328
  public:
329
329
  virtual bool commonTestFlag(jsi::Runtime &rt) = 0;
330
330
  virtual bool commonTestFlagWithoutNativeImplementation(jsi::Runtime &rt) = 0;
331
+ virtual bool cdpInteractionMetricsEnabled(jsi::Runtime &rt) = 0;
331
332
  virtual bool cxxNativeAnimatedEnabled(jsi::Runtime &rt) = 0;
332
333
  virtual bool cxxNativeAnimatedRemoveJsSync(jsi::Runtime &rt) = 0;
334
+ virtual bool disableFabricCommitInCXXAnimated(jsi::Runtime &rt) = 0;
333
335
  virtual bool disableMountItemReorderingAndroid(jsi::Runtime &rt) = 0;
334
336
  virtual bool disableOldAndroidAttachmentMetricsWorkarounds(jsi::Runtime &rt) = 0;
335
337
  virtual bool disableTextLayoutManagerCacheAndroid(jsi::Runtime &rt) = 0;
@@ -373,6 +375,7 @@ public:
373
375
  virtual bool fuseboxEnabledRelease(jsi::Runtime &rt) = 0;
374
376
  virtual bool fuseboxNetworkInspectionEnabled(jsi::Runtime &rt) = 0;
375
377
  virtual bool hideOffscreenVirtualViewsOnIOS(jsi::Runtime &rt) = 0;
378
+ virtual bool perfMonitorV2Enabled(jsi::Runtime &rt) = 0;
376
379
  virtual double preparedTextCacheSize(jsi::Runtime &rt) = 0;
377
380
  virtual bool preventShadowTreeCommitExhaustion(jsi::Runtime &rt) = 0;
378
381
  virtual bool releaseImageDataWhenConsumed(jsi::Runtime &rt) = 0;
@@ -437,6 +440,14 @@ private:
437
440
  return bridging::callFromJs<bool>(
438
441
  rt, &T::commonTestFlagWithoutNativeImplementation, jsInvoker_, instance_);
439
442
  }
443
+ bool cdpInteractionMetricsEnabled(jsi::Runtime &rt) override {
444
+ static_assert(
445
+ bridging::getParameterCount(&T::cdpInteractionMetricsEnabled) == 1,
446
+ "Expected cdpInteractionMetricsEnabled(...) to have 1 parameters");
447
+
448
+ return bridging::callFromJs<bool>(
449
+ rt, &T::cdpInteractionMetricsEnabled, jsInvoker_, instance_);
450
+ }
440
451
  bool cxxNativeAnimatedEnabled(jsi::Runtime &rt) override {
441
452
  static_assert(
442
453
  bridging::getParameterCount(&T::cxxNativeAnimatedEnabled) == 1,
@@ -453,6 +464,14 @@ private:
453
464
  return bridging::callFromJs<bool>(
454
465
  rt, &T::cxxNativeAnimatedRemoveJsSync, jsInvoker_, instance_);
455
466
  }
467
+ bool disableFabricCommitInCXXAnimated(jsi::Runtime &rt) override {
468
+ static_assert(
469
+ bridging::getParameterCount(&T::disableFabricCommitInCXXAnimated) == 1,
470
+ "Expected disableFabricCommitInCXXAnimated(...) to have 1 parameters");
471
+
472
+ return bridging::callFromJs<bool>(
473
+ rt, &T::disableFabricCommitInCXXAnimated, jsInvoker_, instance_);
474
+ }
456
475
  bool disableMountItemReorderingAndroid(jsi::Runtime &rt) override {
457
476
  static_assert(
458
477
  bridging::getParameterCount(&T::disableMountItemReorderingAndroid) == 1,
@@ -797,6 +816,14 @@ private:
797
816
  return bridging::callFromJs<bool>(
798
817
  rt, &T::hideOffscreenVirtualViewsOnIOS, jsInvoker_, instance_);
799
818
  }
819
+ bool perfMonitorV2Enabled(jsi::Runtime &rt) override {
820
+ static_assert(
821
+ bridging::getParameterCount(&T::perfMonitorV2Enabled) == 1,
822
+ "Expected perfMonitorV2Enabled(...) to have 1 parameters");
823
+
824
+ return bridging::callFromJs<bool>(
825
+ rt, &T::perfMonitorV2Enabled, jsInvoker_, instance_);
826
+ }
800
827
  double preparedTextCacheSize(jsi::Runtime &rt) override {
801
828
  static_assert(
802
829
  bridging::getParameterCount(&T::preparedTextCacheSize) == 1,
@@ -21,23 +21,13 @@
21
21
  #import <react/renderer/components/virtualview/VirtualViewComponentDescriptor.h>
22
22
  #import <react/renderer/components/virtualview/VirtualViewShadowNode.h>
23
23
 
24
+ #import "../VirtualViewExperimental/RCTVirtualViewMode.h"
25
+ #import "../VirtualViewExperimental/RCTVirtualViewRenderState.h"
24
26
  #import "RCTFabricComponentsPlugins.h"
25
27
 
26
28
  using namespace facebook;
27
29
  using namespace facebook::react;
28
30
 
29
- typedef NS_ENUM(NSInteger, RCTVirtualViewMode) {
30
- RCTVirtualViewModeVisible = 0,
31
- RCTVirtualViewModePrerender = 1,
32
- RCTVirtualViewModeHidden = 2,
33
- };
34
-
35
- typedef NS_ENUM(NSInteger, RCTVirtualViewRenderState) {
36
- RCTVirtualViewRenderStateUnknown = 0,
37
- RCTVirtualViewRenderStateRendered = 1,
38
- RCTVirtualViewRenderStateNone = 2,
39
- };
40
-
41
31
  /**
42
32
  * Checks whether one CGRect overlaps with another CGRect.
43
33
  *
@@ -72,8 +62,8 @@ static BOOL CGRectOverlaps(CGRect rect1, CGRect rect2)
72
62
 
73
63
  @implementation RCTVirtualViewComponentView {
74
64
  RCTScrollViewComponentView *_lastParentScrollViewComponentView;
75
- std::optional<enum RCTVirtualViewMode> _mode;
76
- enum RCTVirtualViewRenderState _renderState;
65
+ std::optional<RCTVirtualViewMode> _mode;
66
+ RCTVirtualViewRenderState _renderState;
77
67
  std::optional<CGRect> _targetRect;
78
68
  }
79
69
 
@@ -234,7 +224,7 @@ static BOOL sIsAccessibilityUsed = NO;
234
224
  _targetRect = targetRect;
235
225
  }
236
226
 
237
- enum RCTVirtualViewMode newMode;
227
+ RCTVirtualViewMode newMode;
238
228
  CGRect thresholdRect = CGRectMake(
239
229
  scrollView.contentOffset.x,
240
230
  scrollView.contentOffset.y,
@@ -278,7 +268,7 @@ static BOOL sIsAccessibilityUsed = NO;
278
268
  .height = thresholdRect.size.height},
279
269
  };
280
270
 
281
- const std::optional<enum RCTVirtualViewMode> oldMode = _mode;
271
+ const std::optional<RCTVirtualViewMode> oldMode = _mode;
282
272
  _mode = newMode;
283
273
 
284
274
  switch (newMode) {
@@ -22,22 +22,12 @@
22
22
  #import <react/renderer/components/virtualviewexperimental/VirtualViewExperimentalShadowNode.h>
23
23
 
24
24
  #import "RCTFabricComponentsPlugins.h"
25
+ #import "RCTVirtualViewMode.h"
26
+ #import "RCTVirtualViewRenderState.h"
25
27
 
26
28
  using namespace facebook;
27
29
  using namespace facebook::react;
28
30
 
29
- typedef NS_ENUM(NSInteger, RCTVirtualViewMode) {
30
- RCTVirtualViewModeVisible = 0,
31
- RCTVirtualViewModePrerender = 1,
32
- RCTVirtualViewModeHidden = 2,
33
- };
34
-
35
- typedef NS_ENUM(NSInteger, RCTVirtualViewRenderState) {
36
- RCTVirtualViewRenderStateUnknown = 0,
37
- RCTVirtualViewRenderStateRendered = 1,
38
- RCTVirtualViewRenderStateNone = 2,
39
- };
40
-
41
31
  /**
42
32
  * Checks whether one CGRect overlaps with another CGRect.
43
33
  *
@@ -72,8 +62,8 @@ static BOOL CGRectOverlaps(CGRect rect1, CGRect rect2)
72
62
 
73
63
  @implementation RCTVirtualViewExperimentalComponentView {
74
64
  RCTScrollViewComponentView *_lastParentScrollViewComponentView;
75
- std::optional<enum RCTVirtualViewMode> _mode;
76
- enum RCTVirtualViewRenderState _renderState;
65
+ std::optional<RCTVirtualViewMode> _mode;
66
+ RCTVirtualViewRenderState _renderState;
77
67
  std::optional<CGRect> _targetRect;
78
68
  }
79
69
 
@@ -234,7 +224,7 @@ static BOOL sIsAccessibilityUsed = NO;
234
224
  _targetRect = targetRect;
235
225
  }
236
226
 
237
- enum RCTVirtualViewMode newMode;
227
+ RCTVirtualViewMode newMode;
238
228
  CGRect thresholdRect = CGRectMake(
239
229
  scrollView.contentOffset.x,
240
230
  scrollView.contentOffset.y,
@@ -278,7 +268,7 @@ static BOOL sIsAccessibilityUsed = NO;
278
268
  .height = thresholdRect.size.height},
279
269
  };
280
270
 
281
- const std::optional<enum RCTVirtualViewMode> oldMode = _mode;
271
+ const std::optional<RCTVirtualViewMode> oldMode = _mode;
282
272
  _mode = newMode;
283
273
 
284
274
  switch (newMode) {
@@ -0,0 +1,18 @@
1
+ /*
2
+ * Copyright (c) Meta Platforms, Inc. and affiliates.
3
+ *
4
+ * This source code is licensed under the MIT license found in the
5
+ * LICENSE file in the root directory of this source tree.
6
+ */
7
+
8
+ #import <Foundation/Foundation.h>
9
+ #ifndef RCTVirtualViewMode_h
10
+ #define RCTVirtualViewMode_h
11
+
12
+ // Enum for virtual view modes
13
+ using RCTVirtualViewMode = NS_ENUM(NSInteger){
14
+ RCTVirtualViewModeVisible = 0,
15
+ RCTVirtualViewModePrerender = 1,
16
+ RCTVirtualViewModeHidden = 2,
17
+ };
18
+ #endif /* RCTVirtualViewMode_h */
@@ -0,0 +1,17 @@
1
+ /*
2
+ * Copyright (c) Meta Platforms, Inc. and affiliates.
3
+ *
4
+ * This source code is licensed under the MIT license found in the
5
+ * LICENSE file in the root directory of this source tree.
6
+ */
7
+
8
+ #import <Foundation/Foundation.h>
9
+ #ifndef RCTVirtualViewRenderState_h
10
+ #define RCTVirtualViewRenderState_h
11
+
12
+ using RCTVirtualViewRenderState = NS_ENUM(NSInteger){
13
+ RCTVirtualViewRenderStateUnknown = 0,
14
+ RCTVirtualViewRenderStateRendered = 1,
15
+ RCTVirtualViewRenderStateNone = 2,
16
+ };
17
+ #endif /* RCTVirtualViewRenderState_h */
@@ -1,4 +1,4 @@
1
- VERSION_NAME=0.82.0-nightly-20250724-e1ae619fc
1
+ VERSION_NAME=0.82.0-nightly-20250726-01eaa6db9
2
2
  react.internal.publishingGroup=com.facebook.react
3
3
 
4
4
  android.useAndroidX=true
@@ -4,7 +4,7 @@
4
4
  * This source code is licensed under the MIT license found in the
5
5
  * LICENSE file in the root directory of this source tree.
6
6
  *
7
- * @generated SignedSource<<92170b32c13dc405a81b4a5cf5677afb>>
7
+ * @generated SignedSource<<23d0b6132cde79fd2e82e329aec3ba97>>
8
8
  */
9
9
 
10
10
  /**
@@ -36,6 +36,12 @@ public object ReactNativeFeatureFlags {
36
36
  @JvmStatic
37
37
  public fun commonTestFlag(): Boolean = accessor.commonTestFlag()
38
38
 
39
+ /**
40
+ * Enable emitting of InteractionEntry live metrics to the debugger. Requires `enableBridgelessArchitecture`.
41
+ */
42
+ @JvmStatic
43
+ public fun cdpInteractionMetricsEnabled(): Boolean = accessor.cdpInteractionMetricsEnabled()
44
+
39
45
  /**
40
46
  * Use a C++ implementation of Native Animated instead of the platform implementation.
41
47
  */
@@ -48,6 +54,12 @@ public object ReactNativeFeatureFlags {
48
54
  @JvmStatic
49
55
  public fun cxxNativeAnimatedRemoveJsSync(): Boolean = accessor.cxxNativeAnimatedRemoveJsSync()
50
56
 
57
+ /**
58
+ * Prevents use of Fabric commit in C++ Animated implementation
59
+ */
60
+ @JvmStatic
61
+ public fun disableFabricCommitInCXXAnimated(): Boolean = accessor.disableFabricCommitInCXXAnimated()
62
+
51
63
  /**
52
64
  * Prevent FabricMountingManager from reordering mountItems, which may lead to invalid state on the UI thread
53
65
  */
@@ -306,6 +318,12 @@ public object ReactNativeFeatureFlags {
306
318
  @JvmStatic
307
319
  public fun hideOffscreenVirtualViewsOnIOS(): Boolean = accessor.hideOffscreenVirtualViewsOnIOS()
308
320
 
321
+ /**
322
+ * Enable the V2 in-app Performance Monitor. This flag is global and should not be changed across React Host lifetimes.
323
+ */
324
+ @JvmStatic
325
+ public fun perfMonitorV2Enabled(): Boolean = accessor.perfMonitorV2Enabled()
326
+
309
327
  /**
310
328
  * Number cached PreparedLayouts in TextLayoutManager cache
311
329
  */
@@ -4,7 +4,7 @@
4
4
  * This source code is licensed under the MIT license found in the
5
5
  * LICENSE file in the root directory of this source tree.
6
6
  *
7
- * @generated SignedSource<<34c0a7def872e270cd542785d9bfde40>>
7
+ * @generated SignedSource<<de705ded06ca10697411e99c91903724>>
8
8
  */
9
9
 
10
10
  /**
@@ -21,8 +21,10 @@ package com.facebook.react.internal.featureflags
21
21
 
22
22
  internal class ReactNativeFeatureFlagsCxxAccessor : ReactNativeFeatureFlagsAccessor {
23
23
  private var commonTestFlagCache: Boolean? = null
24
+ private var cdpInteractionMetricsEnabledCache: Boolean? = null
24
25
  private var cxxNativeAnimatedEnabledCache: Boolean? = null
25
26
  private var cxxNativeAnimatedRemoveJsSyncCache: Boolean? = null
27
+ private var disableFabricCommitInCXXAnimatedCache: Boolean? = null
26
28
  private var disableMountItemReorderingAndroidCache: Boolean? = null
27
29
  private var disableOldAndroidAttachmentMetricsWorkaroundsCache: Boolean? = null
28
30
  private var disableTextLayoutManagerCacheAndroidCache: Boolean? = null
@@ -66,6 +68,7 @@ internal class ReactNativeFeatureFlagsCxxAccessor : ReactNativeFeatureFlagsAcces
66
68
  private var fuseboxEnabledReleaseCache: Boolean? = null
67
69
  private var fuseboxNetworkInspectionEnabledCache: Boolean? = null
68
70
  private var hideOffscreenVirtualViewsOnIOSCache: Boolean? = null
71
+ private var perfMonitorV2EnabledCache: Boolean? = null
69
72
  private var preparedTextCacheSizeCache: Double? = null
70
73
  private var preventShadowTreeCommitExhaustionCache: Boolean? = null
71
74
  private var releaseImageDataWhenConsumedCache: Boolean? = null
@@ -94,6 +97,15 @@ internal class ReactNativeFeatureFlagsCxxAccessor : ReactNativeFeatureFlagsAcces
94
97
  return cached
95
98
  }
96
99
 
100
+ override fun cdpInteractionMetricsEnabled(): Boolean {
101
+ var cached = cdpInteractionMetricsEnabledCache
102
+ if (cached == null) {
103
+ cached = ReactNativeFeatureFlagsCxxInterop.cdpInteractionMetricsEnabled()
104
+ cdpInteractionMetricsEnabledCache = cached
105
+ }
106
+ return cached
107
+ }
108
+
97
109
  override fun cxxNativeAnimatedEnabled(): Boolean {
98
110
  var cached = cxxNativeAnimatedEnabledCache
99
111
  if (cached == null) {
@@ -112,6 +124,15 @@ internal class ReactNativeFeatureFlagsCxxAccessor : ReactNativeFeatureFlagsAcces
112
124
  return cached
113
125
  }
114
126
 
127
+ override fun disableFabricCommitInCXXAnimated(): Boolean {
128
+ var cached = disableFabricCommitInCXXAnimatedCache
129
+ if (cached == null) {
130
+ cached = ReactNativeFeatureFlagsCxxInterop.disableFabricCommitInCXXAnimated()
131
+ disableFabricCommitInCXXAnimatedCache = cached
132
+ }
133
+ return cached
134
+ }
135
+
115
136
  override fun disableMountItemReorderingAndroid(): Boolean {
116
137
  var cached = disableMountItemReorderingAndroidCache
117
138
  if (cached == null) {
@@ -499,6 +520,15 @@ internal class ReactNativeFeatureFlagsCxxAccessor : ReactNativeFeatureFlagsAcces
499
520
  return cached
500
521
  }
501
522
 
523
+ override fun perfMonitorV2Enabled(): Boolean {
524
+ var cached = perfMonitorV2EnabledCache
525
+ if (cached == null) {
526
+ cached = ReactNativeFeatureFlagsCxxInterop.perfMonitorV2Enabled()
527
+ perfMonitorV2EnabledCache = cached
528
+ }
529
+ return cached
530
+ }
531
+
502
532
  override fun preparedTextCacheSize(): Double {
503
533
  var cached = preparedTextCacheSizeCache
504
534
  if (cached == null) {
@@ -4,7 +4,7 @@
4
4
  * This source code is licensed under the MIT license found in the
5
5
  * LICENSE file in the root directory of this source tree.
6
6
  *
7
- * @generated SignedSource<<3c9a5f37b4d141ffcf9a2ec152f70563>>
7
+ * @generated SignedSource<<59fecbad8533e88844ba114d49613794>>
8
8
  */
9
9
 
10
10
  /**
@@ -30,10 +30,14 @@ public object ReactNativeFeatureFlagsCxxInterop {
30
30
 
31
31
  @DoNotStrip @JvmStatic public external fun commonTestFlag(): Boolean
32
32
 
33
+ @DoNotStrip @JvmStatic public external fun cdpInteractionMetricsEnabled(): Boolean
34
+
33
35
  @DoNotStrip @JvmStatic public external fun cxxNativeAnimatedEnabled(): Boolean
34
36
 
35
37
  @DoNotStrip @JvmStatic public external fun cxxNativeAnimatedRemoveJsSync(): Boolean
36
38
 
39
+ @DoNotStrip @JvmStatic public external fun disableFabricCommitInCXXAnimated(): Boolean
40
+
37
41
  @DoNotStrip @JvmStatic public external fun disableMountItemReorderingAndroid(): Boolean
38
42
 
39
43
  @DoNotStrip @JvmStatic public external fun disableOldAndroidAttachmentMetricsWorkarounds(): Boolean
@@ -120,6 +124,8 @@ public object ReactNativeFeatureFlagsCxxInterop {
120
124
 
121
125
  @DoNotStrip @JvmStatic public external fun hideOffscreenVirtualViewsOnIOS(): Boolean
122
126
 
127
+ @DoNotStrip @JvmStatic public external fun perfMonitorV2Enabled(): Boolean
128
+
123
129
  @DoNotStrip @JvmStatic public external fun preparedTextCacheSize(): Double
124
130
 
125
131
  @DoNotStrip @JvmStatic public external fun preventShadowTreeCommitExhaustion(): Boolean
@@ -4,7 +4,7 @@
4
4
  * This source code is licensed under the MIT license found in the
5
5
  * LICENSE file in the root directory of this source tree.
6
6
  *
7
- * @generated SignedSource<<728ae563ec31340ccc8c4c593d566c64>>
7
+ * @generated SignedSource<<275f6f2c36b2a0f7d83765d98ab60daf>>
8
8
  */
9
9
 
10
10
  /**
@@ -25,10 +25,14 @@ public open class ReactNativeFeatureFlagsDefaults : ReactNativeFeatureFlagsProvi
25
25
 
26
26
  override fun commonTestFlag(): Boolean = false
27
27
 
28
+ override fun cdpInteractionMetricsEnabled(): Boolean = false
29
+
28
30
  override fun cxxNativeAnimatedEnabled(): Boolean = false
29
31
 
30
32
  override fun cxxNativeAnimatedRemoveJsSync(): Boolean = false
31
33
 
34
+ override fun disableFabricCommitInCXXAnimated(): Boolean = false
35
+
32
36
  override fun disableMountItemReorderingAndroid(): Boolean = false
33
37
 
34
38
  override fun disableOldAndroidAttachmentMetricsWorkarounds(): Boolean = true
@@ -115,6 +119,8 @@ public open class ReactNativeFeatureFlagsDefaults : ReactNativeFeatureFlagsProvi
115
119
 
116
120
  override fun hideOffscreenVirtualViewsOnIOS(): Boolean = false
117
121
 
122
+ override fun perfMonitorV2Enabled(): Boolean = false
123
+
118
124
  override fun preparedTextCacheSize(): Double = 200.0
119
125
 
120
126
  override fun preventShadowTreeCommitExhaustion(): Boolean = false
@@ -4,7 +4,7 @@
4
4
  * This source code is licensed under the MIT license found in the
5
5
  * LICENSE file in the root directory of this source tree.
6
6
  *
7
- * @generated SignedSource<<9a5b0bdc0bd9ab0889e548b25cfe5371>>
7
+ * @generated SignedSource<<acbbd313189620438b486593634a0523>>
8
8
  */
9
9
 
10
10
  /**
@@ -25,8 +25,10 @@ internal class ReactNativeFeatureFlagsLocalAccessor : ReactNativeFeatureFlagsAcc
25
25
  private val accessedFeatureFlags = mutableSetOf<String>()
26
26
 
27
27
  private var commonTestFlagCache: Boolean? = null
28
+ private var cdpInteractionMetricsEnabledCache: Boolean? = null
28
29
  private var cxxNativeAnimatedEnabledCache: Boolean? = null
29
30
  private var cxxNativeAnimatedRemoveJsSyncCache: Boolean? = null
31
+ private var disableFabricCommitInCXXAnimatedCache: Boolean? = null
30
32
  private var disableMountItemReorderingAndroidCache: Boolean? = null
31
33
  private var disableOldAndroidAttachmentMetricsWorkaroundsCache: Boolean? = null
32
34
  private var disableTextLayoutManagerCacheAndroidCache: Boolean? = null
@@ -70,6 +72,7 @@ internal class ReactNativeFeatureFlagsLocalAccessor : ReactNativeFeatureFlagsAcc
70
72
  private var fuseboxEnabledReleaseCache: Boolean? = null
71
73
  private var fuseboxNetworkInspectionEnabledCache: Boolean? = null
72
74
  private var hideOffscreenVirtualViewsOnIOSCache: Boolean? = null
75
+ private var perfMonitorV2EnabledCache: Boolean? = null
73
76
  private var preparedTextCacheSizeCache: Double? = null
74
77
  private var preventShadowTreeCommitExhaustionCache: Boolean? = null
75
78
  private var releaseImageDataWhenConsumedCache: Boolean? = null
@@ -99,6 +102,16 @@ internal class ReactNativeFeatureFlagsLocalAccessor : ReactNativeFeatureFlagsAcc
99
102
  return cached
100
103
  }
101
104
 
105
+ override fun cdpInteractionMetricsEnabled(): Boolean {
106
+ var cached = cdpInteractionMetricsEnabledCache
107
+ if (cached == null) {
108
+ cached = currentProvider.cdpInteractionMetricsEnabled()
109
+ accessedFeatureFlags.add("cdpInteractionMetricsEnabled")
110
+ cdpInteractionMetricsEnabledCache = cached
111
+ }
112
+ return cached
113
+ }
114
+
102
115
  override fun cxxNativeAnimatedEnabled(): Boolean {
103
116
  var cached = cxxNativeAnimatedEnabledCache
104
117
  if (cached == null) {
@@ -119,6 +132,16 @@ internal class ReactNativeFeatureFlagsLocalAccessor : ReactNativeFeatureFlagsAcc
119
132
  return cached
120
133
  }
121
134
 
135
+ override fun disableFabricCommitInCXXAnimated(): Boolean {
136
+ var cached = disableFabricCommitInCXXAnimatedCache
137
+ if (cached == null) {
138
+ cached = currentProvider.disableFabricCommitInCXXAnimated()
139
+ accessedFeatureFlags.add("disableFabricCommitInCXXAnimated")
140
+ disableFabricCommitInCXXAnimatedCache = cached
141
+ }
142
+ return cached
143
+ }
144
+
122
145
  override fun disableMountItemReorderingAndroid(): Boolean {
123
146
  var cached = disableMountItemReorderingAndroidCache
124
147
  if (cached == null) {
@@ -549,6 +572,16 @@ internal class ReactNativeFeatureFlagsLocalAccessor : ReactNativeFeatureFlagsAcc
549
572
  return cached
550
573
  }
551
574
 
575
+ override fun perfMonitorV2Enabled(): Boolean {
576
+ var cached = perfMonitorV2EnabledCache
577
+ if (cached == null) {
578
+ cached = currentProvider.perfMonitorV2Enabled()
579
+ accessedFeatureFlags.add("perfMonitorV2Enabled")
580
+ perfMonitorV2EnabledCache = cached
581
+ }
582
+ return cached
583
+ }
584
+
552
585
  override fun preparedTextCacheSize(): Double {
553
586
  var cached = preparedTextCacheSizeCache
554
587
  if (cached == null) {