react-native 0.82.0-nightly-20250725-2c683c578 → 0.82.0-nightly-20250727-df3f0967b

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 (44) 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 +81 -167
  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/ReactAndroid/gradle.properties +1 -1
  13. package/ReactAndroid/src/main/java/com/facebook/react/internal/featureflags/ReactNativeFeatureFlags.kt +19 -1
  14. package/ReactAndroid/src/main/java/com/facebook/react/internal/featureflags/ReactNativeFeatureFlagsCxxAccessor.kt +31 -1
  15. package/ReactAndroid/src/main/java/com/facebook/react/internal/featureflags/ReactNativeFeatureFlagsCxxInterop.kt +7 -1
  16. package/ReactAndroid/src/main/java/com/facebook/react/internal/featureflags/ReactNativeFeatureFlagsDefaults.kt +7 -1
  17. package/ReactAndroid/src/main/java/com/facebook/react/internal/featureflags/ReactNativeFeatureFlagsLocalAccessor.kt +34 -1
  18. package/ReactAndroid/src/main/java/com/facebook/react/internal/featureflags/ReactNativeFeatureFlagsProvider.kt +7 -1
  19. package/ReactAndroid/src/main/java/com/facebook/react/modules/systeminfo/ReactNativeVersion.kt +1 -1
  20. package/ReactAndroid/src/main/jni/react/featureflags/JReactNativeFeatureFlagsCxxInterop.cpp +43 -1
  21. package/ReactAndroid/src/main/jni/react/featureflags/JReactNativeFeatureFlagsCxxInterop.h +10 -1
  22. package/ReactCommon/cxxreact/ReactNativeVersion.h +1 -1
  23. package/ReactCommon/cxxreact/TraceSection.h +4 -4
  24. package/ReactCommon/jsinspector-modern/HostAgent.cpp +70 -2
  25. package/ReactCommon/jsinspector-modern/RuntimeAgent.cpp +12 -47
  26. package/ReactCommon/jsinspector-modern/tests/JsiIntegrationTest.cpp +49 -0
  27. package/ReactCommon/react/featureflags/ReactNativeFeatureFlags.cpp +13 -1
  28. package/ReactCommon/react/featureflags/ReactNativeFeatureFlags.h +16 -1
  29. package/ReactCommon/react/featureflags/ReactNativeFeatureFlagsAccessor.cpp +118 -64
  30. package/ReactCommon/react/featureflags/ReactNativeFeatureFlagsAccessor.h +8 -2
  31. package/ReactCommon/react/featureflags/ReactNativeFeatureFlagsDefaults.h +13 -1
  32. package/ReactCommon/react/featureflags/ReactNativeFeatureFlagsDynamicProvider.h +28 -1
  33. package/ReactCommon/react/featureflags/ReactNativeFeatureFlagsProvider.h +4 -1
  34. package/ReactCommon/react/nativemodule/core/tests/TurboModuleTestFixture.h +72 -0
  35. package/ReactCommon/react/nativemodule/featureflags/NativeReactNativeFeatureFlags.cpp +16 -1
  36. package/ReactCommon/react/nativemodule/featureflags/NativeReactNativeFeatureFlags.h +7 -1
  37. package/jest/setup.js +11 -0
  38. package/package.json +9 -9
  39. package/sdks/hermesc/osx-bin/hermes +0 -0
  40. package/sdks/hermesc/osx-bin/hermesc +0 -0
  41. package/sdks/hermesc/win64-bin/hermesc.exe +0 -0
  42. package/src/private/animated/NativeAnimatedHelper.js +8 -0
  43. package/src/private/featureflags/ReactNativeFeatureFlags.js +16 -7
  44. package/src/private/featureflags/specs/NativeReactNativeFeatureFlags.js +4 -1
@@ -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
  }
@@ -10,7 +10,6 @@
10
10
 
11
11
  import type {ViewProps} from './ViewPropTypes';
12
12
 
13
- import * as ReactNativeFeatureFlags from '../../../src/private/featureflags/ReactNativeFeatureFlags';
14
13
  import TextAncestorContext from '../../Text/TextAncestorContext';
15
14
  import ViewNativeComponent from './ViewNativeComponent';
16
15
  import * as React from 'react';
@@ -29,182 +28,97 @@ component View(
29
28
  ) {
30
29
  const hasTextAncestor = use(TextAncestorContext);
31
30
 
32
- let actualView;
33
- if (ReactNativeFeatureFlags.reduceDefaultPropsInView()) {
34
- const {
35
- accessibilityState,
36
- accessibilityValue,
37
- 'aria-busy': ariaBusy,
38
- 'aria-checked': ariaChecked,
39
- 'aria-disabled': ariaDisabled,
40
- 'aria-expanded': ariaExpanded,
41
- 'aria-hidden': ariaHidden,
42
- 'aria-label': ariaLabel,
43
- 'aria-labelledby': ariaLabelledBy,
44
- 'aria-live': ariaLive,
45
- 'aria-selected': ariaSelected,
46
- 'aria-valuemax': ariaValueMax,
47
- 'aria-valuemin': ariaValueMin,
48
- 'aria-valuenow': ariaValueNow,
49
- 'aria-valuetext': ariaValueText,
50
- id,
51
- tabIndex,
52
- ...otherProps
53
- } = props;
54
-
55
- // Since we destructured props, we can now treat it as mutable
56
- const processedProps = otherProps as {...ViewProps};
57
-
58
- const parsedAriaLabelledBy = ariaLabelledBy?.split(/\s*,\s*/g);
59
- if (parsedAriaLabelledBy !== undefined) {
60
- processedProps.accessibilityLabelledBy = parsedAriaLabelledBy;
61
- }
31
+ const {
32
+ accessibilityState,
33
+ accessibilityValue,
34
+ 'aria-busy': ariaBusy,
35
+ 'aria-checked': ariaChecked,
36
+ 'aria-disabled': ariaDisabled,
37
+ 'aria-expanded': ariaExpanded,
38
+ 'aria-hidden': ariaHidden,
39
+ 'aria-label': ariaLabel,
40
+ 'aria-labelledby': ariaLabelledBy,
41
+ 'aria-live': ariaLive,
42
+ 'aria-selected': ariaSelected,
43
+ 'aria-valuemax': ariaValueMax,
44
+ 'aria-valuemin': ariaValueMin,
45
+ 'aria-valuenow': ariaValueNow,
46
+ 'aria-valuetext': ariaValueText,
47
+ id,
48
+ tabIndex,
49
+ ...otherProps
50
+ } = props;
51
+
52
+ // Since we destructured props, we can now treat it as mutable
53
+ const processedProps = otherProps as {...ViewProps};
54
+
55
+ const parsedAriaLabelledBy = ariaLabelledBy?.split(/\s*,\s*/g);
56
+ if (parsedAriaLabelledBy !== undefined) {
57
+ processedProps.accessibilityLabelledBy = parsedAriaLabelledBy;
58
+ }
62
59
 
63
- if (ariaLabel !== undefined) {
64
- processedProps.accessibilityLabel = ariaLabel;
65
- }
60
+ if (ariaLabel !== undefined) {
61
+ processedProps.accessibilityLabel = ariaLabel;
62
+ }
66
63
 
67
- if (ariaLive !== undefined) {
68
- processedProps.accessibilityLiveRegion =
69
- ariaLive === 'off' ? 'none' : ariaLive;
70
- }
64
+ if (ariaLive !== undefined) {
65
+ processedProps.accessibilityLiveRegion =
66
+ ariaLive === 'off' ? 'none' : ariaLive;
67
+ }
71
68
 
72
- if (ariaHidden !== undefined) {
73
- processedProps.accessibilityElementsHidden = ariaHidden;
74
- if (ariaHidden === true) {
75
- processedProps.importantForAccessibility = 'no-hide-descendants';
76
- }
69
+ if (ariaHidden !== undefined) {
70
+ processedProps.accessibilityElementsHidden = ariaHidden;
71
+ if (ariaHidden === true) {
72
+ processedProps.importantForAccessibility = 'no-hide-descendants';
77
73
  }
74
+ }
78
75
 
79
- if (id !== undefined) {
80
- processedProps.nativeID = id;
81
- }
76
+ if (id !== undefined) {
77
+ processedProps.nativeID = id;
78
+ }
82
79
 
83
- if (tabIndex !== undefined) {
84
- processedProps.focusable = !tabIndex;
85
- }
80
+ if (tabIndex !== undefined) {
81
+ processedProps.focusable = !tabIndex;
82
+ }
86
83
 
87
- if (
88
- accessibilityState != null ||
89
- ariaBusy != null ||
90
- ariaChecked != null ||
91
- ariaDisabled != null ||
92
- ariaExpanded != null ||
93
- ariaSelected != null
94
- ) {
95
- processedProps.accessibilityState = {
96
- busy: ariaBusy ?? accessibilityState?.busy,
97
- checked: ariaChecked ?? accessibilityState?.checked,
98
- disabled: ariaDisabled ?? accessibilityState?.disabled,
99
- expanded: ariaExpanded ?? accessibilityState?.expanded,
100
- selected: ariaSelected ?? accessibilityState?.selected,
101
- };
102
- }
84
+ if (
85
+ accessibilityState != null ||
86
+ ariaBusy != null ||
87
+ ariaChecked != null ||
88
+ ariaDisabled != null ||
89
+ ariaExpanded != null ||
90
+ ariaSelected != null
91
+ ) {
92
+ processedProps.accessibilityState = {
93
+ busy: ariaBusy ?? accessibilityState?.busy,
94
+ checked: ariaChecked ?? accessibilityState?.checked,
95
+ disabled: ariaDisabled ?? accessibilityState?.disabled,
96
+ expanded: ariaExpanded ?? accessibilityState?.expanded,
97
+ selected: ariaSelected ?? accessibilityState?.selected,
98
+ };
99
+ }
103
100
 
104
- if (
105
- accessibilityValue != null ||
106
- ariaValueMax != null ||
107
- ariaValueMin != null ||
108
- ariaValueNow != null ||
109
- ariaValueText != null
110
- ) {
111
- processedProps.accessibilityValue = {
112
- max: ariaValueMax ?? accessibilityValue?.max,
113
- min: ariaValueMin ?? accessibilityValue?.min,
114
- now: ariaValueNow ?? accessibilityValue?.now,
115
- text: ariaValueText ?? accessibilityValue?.text,
116
- };
117
- }
101
+ if (
102
+ accessibilityValue != null ||
103
+ ariaValueMax != null ||
104
+ ariaValueMin != null ||
105
+ ariaValueNow != null ||
106
+ ariaValueText != null
107
+ ) {
108
+ processedProps.accessibilityValue = {
109
+ max: ariaValueMax ?? accessibilityValue?.max,
110
+ min: ariaValueMin ?? accessibilityValue?.min,
111
+ now: ariaValueNow ?? accessibilityValue?.now,
112
+ text: ariaValueText ?? accessibilityValue?.text,
113
+ };
114
+ }
118
115
 
119
- actualView =
120
- ref == null ? (
121
- <ViewNativeComponent {...processedProps} />
122
- ) : (
123
- <ViewNativeComponent {...processedProps} ref={ref} />
124
- );
125
- } else {
126
- const {
127
- accessibilityElementsHidden,
128
- accessibilityLabel,
129
- accessibilityLabelledBy,
130
- accessibilityLiveRegion,
131
- accessibilityState,
132
- accessibilityValue,
133
- 'aria-busy': ariaBusy,
134
- 'aria-checked': ariaChecked,
135
- 'aria-disabled': ariaDisabled,
136
- 'aria-expanded': ariaExpanded,
137
- 'aria-hidden': ariaHidden,
138
- 'aria-label': ariaLabel,
139
- 'aria-labelledby': ariaLabelledBy,
140
- 'aria-live': ariaLive,
141
- 'aria-selected': ariaSelected,
142
- 'aria-valuemax': ariaValueMax,
143
- 'aria-valuemin': ariaValueMin,
144
- 'aria-valuenow': ariaValueNow,
145
- 'aria-valuetext': ariaValueText,
146
- focusable,
147
- id,
148
- importantForAccessibility,
149
- nativeID,
150
- tabIndex,
151
- ...otherProps
152
- } = props;
153
- const _accessibilityLabelledBy =
154
- ariaLabelledBy?.split(/\s*,\s*/g) ?? accessibilityLabelledBy;
155
-
156
- const _accessibilityState =
157
- accessibilityState != null ||
158
- ariaBusy != null ||
159
- ariaChecked != null ||
160
- ariaDisabled != null ||
161
- ariaExpanded != null ||
162
- ariaSelected != null
163
- ? {
164
- busy: ariaBusy ?? accessibilityState?.busy,
165
- checked: ariaChecked ?? accessibilityState?.checked,
166
- disabled: ariaDisabled ?? accessibilityState?.disabled,
167
- expanded: ariaExpanded ?? accessibilityState?.expanded,
168
- selected: ariaSelected ?? accessibilityState?.selected,
169
- }
170
- : undefined;
171
-
172
- const _accessibilityValue =
173
- accessibilityValue != null ||
174
- ariaValueMax != null ||
175
- ariaValueMin != null ||
176
- ariaValueNow != null ||
177
- ariaValueText != null
178
- ? {
179
- max: ariaValueMax ?? accessibilityValue?.max,
180
- min: ariaValueMin ?? accessibilityValue?.min,
181
- now: ariaValueNow ?? accessibilityValue?.now,
182
- text: ariaValueText ?? accessibilityValue?.text,
183
- }
184
- : undefined;
185
-
186
- actualView = (
187
- <ViewNativeComponent
188
- {...otherProps}
189
- accessibilityLiveRegion={
190
- ariaLive === 'off' ? 'none' : ariaLive ?? accessibilityLiveRegion
191
- }
192
- accessibilityLabel={ariaLabel ?? accessibilityLabel}
193
- focusable={tabIndex !== undefined ? !tabIndex : focusable}
194
- accessibilityState={_accessibilityState}
195
- accessibilityElementsHidden={ariaHidden ?? accessibilityElementsHidden}
196
- accessibilityLabelledBy={_accessibilityLabelledBy}
197
- accessibilityValue={_accessibilityValue}
198
- importantForAccessibility={
199
- ariaHidden === true
200
- ? 'no-hide-descendants'
201
- : importantForAccessibility
202
- }
203
- nativeID={id ?? nativeID}
204
- ref={ref}
205
- />
116
+ const actualView =
117
+ ref == null ? (
118
+ <ViewNativeComponent {...processedProps} />
119
+ ) : (
120
+ <ViewNativeComponent {...processedProps} ref={ref} />
206
121
  );
207
- }
208
122
 
209
123
  if (hasTextAncestor) {
210
124
  return (
@@ -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-20250725-2c683c578';
32
+ static prerelease: string | null = 'nightly-20250727-df3f0967b';
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-20250725-2c683c578",
27
+ RCTVersionPrerelease: @"nightly-20250727-df3f0967b",
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,
@@ -1,4 +1,4 @@
1
- VERSION_NAME=0.82.0-nightly-20250725-2c683c578
1
+ VERSION_NAME=0.82.0-nightly-20250727-df3f0967b
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