react-native-windows 0.83.0-preview.2 → 0.84.0-preview.2

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 (221) hide show
  1. package/.flowconfig +2 -2
  2. package/Folly/Folly.vcxproj +2 -0
  3. package/Libraries/Animated/AnimatedEvent.js +2 -2
  4. package/Libraries/Animated/animations/Animation.js +1 -3
  5. package/Libraries/Animated/createAnimatedComponent.js +8 -5
  6. package/Libraries/Animated/nodes/AnimatedColor.js +1 -1
  7. package/Libraries/Animated/nodes/AnimatedInterpolation.js +40 -4
  8. package/Libraries/Animated/nodes/AnimatedNode.js +3 -3
  9. package/Libraries/Animated/nodes/AnimatedObject.js +16 -11
  10. package/Libraries/Animated/nodes/AnimatedProps.js +43 -12
  11. package/Libraries/Animated/nodes/AnimatedStyle.js +12 -12
  12. package/Libraries/Animated/nodes/AnimatedValue.js +6 -3
  13. package/Libraries/Animated/nodes/AnimatedValueXY.js +1 -1
  14. package/Libraries/BatchedBridge/MessageQueue.js +24 -22
  15. package/Libraries/Blob/URL.js +34 -3
  16. package/Libraries/Blob/URLSearchParams.js +1 -0
  17. package/Libraries/Components/AccessibilityInfo/AccessibilityInfo.d.ts +9 -1
  18. package/Libraries/Components/AccessibilityInfo/AccessibilityInfo.js +6 -1
  19. package/Libraries/Components/AccessibilityInfo/AccessibilityInfo.windows.js +6 -1
  20. package/Libraries/Components/Button.js +2 -5
  21. package/Libraries/Components/Button.windows.js +2 -5
  22. package/Libraries/Components/DrawerAndroid/DrawerLayoutAndroid.android.js +1 -1
  23. package/Libraries/Components/DrawerAndroid/DrawerLayoutAndroidTypes.js +4 -4
  24. package/Libraries/Components/Keyboard/Keyboard.js +2 -2
  25. package/Libraries/Components/Pressable/Pressable.js +8 -8
  26. package/Libraries/Components/Pressable/Pressable.windows.js +14 -13
  27. package/Libraries/Components/TextInput/TextInput.flow.js +13 -13
  28. package/Libraries/Components/TextInput/TextInput.flow.windows.js +19 -18
  29. package/Libraries/Components/TextInput/TextInput.js +33 -34
  30. package/Libraries/Components/TextInput/TextInput.windows.js +40 -39
  31. package/Libraries/Components/Touchable/PooledClass.js +2 -2
  32. package/Libraries/Components/Touchable/TouchableBounce.js +3 -3
  33. package/Libraries/Components/Touchable/TouchableBounce.windows.js +3 -3
  34. package/Libraries/Components/Touchable/TouchableNativeFeedback.js +1 -1
  35. package/Libraries/Components/Touchable/TouchableNativeFeedback.windows.js +1 -1
  36. package/Libraries/Components/Touchable/TouchableWithoutFeedback.js +9 -9
  37. package/Libraries/Components/Touchable/TouchableWithoutFeedback.windows.js +9 -9
  38. package/Libraries/Components/View/ViewPropTypes.js +16 -6
  39. package/Libraries/Components/View/ViewPropTypes.windows.js +21 -11
  40. package/Libraries/Core/Devtools/loadBundleFromServer.js +6 -3
  41. package/Libraries/Core/Devtools/loadBundleFromServer.windows.js +6 -3
  42. package/Libraries/Core/Devtools/symbolicateStackTrace.js +1 -1
  43. package/Libraries/Core/ExceptionsManager.js +3 -3
  44. package/Libraries/Core/RawEventEmitter.js +1 -1
  45. package/Libraries/Core/ReactFiberErrorDialog.js +1 -1
  46. package/Libraries/Core/ReactNativeVersion.js +3 -3
  47. package/Libraries/Core/setUpDeveloperTools.js +1 -1
  48. package/Libraries/Core/setUpErrorHandling.js +1 -1
  49. package/Libraries/EventEmitter/NativeEventEmitter.js +2 -2
  50. package/Libraries/Image/Image.android.js +2 -2
  51. package/Libraries/Image/Image.ios.js +2 -2
  52. package/Libraries/Image/Image.windows.js +2 -2
  53. package/Libraries/Image/ImageProps.js +1 -1
  54. package/Libraries/Image/ImageTypes.flow.js +2 -2
  55. package/Libraries/Interaction/InteractionManager.js +3 -3
  56. package/Libraries/Interaction/PanResponder.js +1 -1
  57. package/Libraries/LayoutAnimation/LayoutAnimation.js +1 -1
  58. package/Libraries/Linking/Linking.js +1 -1
  59. package/Libraries/Lists/FlatList.js +2 -2
  60. package/Libraries/LogBox/Data/LogBoxData.js +31 -4
  61. package/Libraries/LogBox/Data/LogBoxLog.js +2 -2
  62. package/Libraries/LogBox/Data/LogBoxSymbolication.js +1 -1
  63. package/Libraries/LogBox/Data/parseLogBoxLog.js +5 -5
  64. package/Libraries/LogBox/LogBox.js +7 -7
  65. package/Libraries/NativeComponent/BaseViewConfig.android.js +12 -0
  66. package/Libraries/NativeComponent/StaticViewConfigValidator.js +4 -4
  67. package/Libraries/NativeComponent/ViewConfigIgnore.js +1 -1
  68. package/Libraries/NativeComponent/ViewConfigIgnore.windows.js +1 -1
  69. package/Libraries/Network/RCTNetworking.android.js +3 -3
  70. package/Libraries/Network/RCTNetworking.ios.js +2 -2
  71. package/Libraries/Network/RCTNetworking.js.flow +2 -2
  72. package/Libraries/Network/RCTNetworking.windows.js +2 -2
  73. package/Libraries/Pressability/Pressability.js +9 -9
  74. package/Libraries/Pressability/Pressability.windows.js +17 -16
  75. package/Libraries/ReactNative/AppRegistry.flow.js +1 -1
  76. package/Libraries/ReactNative/BridgelessUIManager.js +1 -1
  77. package/Libraries/ReactNative/FabricUIManager.js +1 -1
  78. package/Libraries/ReactNative/PaperUIManager.js +1 -1
  79. package/Libraries/ReactNative/PaperUIManager.windows.js +1 -1
  80. package/Libraries/ReactNative/ReactFabricPublicInstance/ReactFabricPublicInstance.js +1 -1
  81. package/Libraries/ReactNative/ReactFabricPublicInstance/ReactFabricPublicInstanceUtils.js +2 -2
  82. package/Libraries/ReactNative/ReactFabricPublicInstance/ReactNativeAttributePayload.js +1 -1
  83. package/Libraries/ReactNative/RendererImplementation.js +1 -1
  84. package/Libraries/ReactNative/getNativeComponentAttributes.js +1 -1
  85. package/Libraries/ReactPrivate/ReactNativePrivateInterface.js +1 -2
  86. package/Libraries/Renderer/implementations/ReactFabric-dev.js +3 -3
  87. package/Libraries/Renderer/implementations/ReactFabric-prod.js +3 -3
  88. package/Libraries/Renderer/implementations/ReactFabric-profiling.js +3 -3
  89. package/Libraries/Renderer/implementations/ReactNativeRenderer-dev.js +11 -4
  90. package/Libraries/Renderer/implementations/ReactNativeRenderer-prod.js +11 -4
  91. package/Libraries/Renderer/implementations/ReactNativeRenderer-profiling.js +11 -4
  92. package/Libraries/Renderer/shims/ReactFabric.js +3 -1
  93. package/Libraries/Renderer/shims/ReactFeatureFlags.js +3 -1
  94. package/Libraries/Renderer/shims/ReactNative.js +2 -2
  95. package/Libraries/Renderer/shims/ReactNativeTypes.js +3 -1
  96. package/Libraries/Renderer/shims/ReactNativeTypes.windows.js +3 -1
  97. package/Libraries/Renderer/shims/ReactNativeViewConfigRegistry.js +3 -1
  98. package/Libraries/Renderer/shims/createReactNativeComponentClass.js +3 -1
  99. package/Libraries/Settings/Settings.ios.js +1 -1
  100. package/Libraries/StyleSheet/PlatformColorValueTypes.android.js +2 -2
  101. package/Libraries/StyleSheet/PlatformColorValueTypes.ios.js +1 -1
  102. package/Libraries/StyleSheet/PlatformColorValueTypes.js.flow +4 -2
  103. package/Libraries/StyleSheet/StyleSheetExports.js +1 -1
  104. package/Libraries/StyleSheet/StyleSheetTypes.d.ts +99 -4
  105. package/Libraries/StyleSheet/StyleSheetTypes.js +6 -8
  106. package/Libraries/StyleSheet/processFilter.js +1 -1
  107. package/Libraries/Text/Text.js +46 -6
  108. package/Libraries/Text/Text.windows.js +46 -6
  109. package/Libraries/Text/TextNativeComponent.js +1 -1
  110. package/Libraries/Text/TextProps.js +7 -7
  111. package/Libraries/Text/TextProps.windows.js +7 -7
  112. package/Libraries/Types/CodegenTypes.js +1 -1
  113. package/Libraries/Types/CoreEventTypes.js +31 -0
  114. package/Libraries/Types/CoreEventTypes.windows.js +31 -13
  115. package/Libraries/Types/ReactDevToolsTypes.js +2 -2
  116. package/Libraries/Utilities/Appearance.js +2 -2
  117. package/Libraries/Utilities/DevLoadingView.js +8 -1
  118. package/Libraries/Utilities/DevSettings.js +3 -3
  119. package/Libraries/Utilities/HMRClient.js +4 -3
  120. package/Libraries/Utilities/RCTLog.js +3 -3
  121. package/Libraries/Utilities/ReactNativeTestTools.js +1 -1
  122. package/Libraries/Utilities/SceneTracker.js +1 -1
  123. package/Libraries/Utilities/codegenNativeCommands.js +1 -1
  124. package/Libraries/Utilities/deepFreezeAndThrowOnMutationInDev.js +3 -3
  125. package/Libraries/Utilities/logError.js +1 -1
  126. package/Libraries/Utilities/stringifySafe.js +7 -7
  127. package/Libraries/Utilities/useRefEffect.js +1 -1
  128. package/Libraries/WebSocket/WebSocketInterceptor.js +3 -3
  129. package/Libraries/promiseRejectionTrackingOptions.js +8 -8
  130. package/Libraries/vendor/core/ErrorUtils.js +10 -10
  131. package/Libraries/vendor/emitter/EventEmitter.js +6 -6
  132. package/Microsoft.ReactNative/Fabric/AbiViewProps.cpp +5 -0
  133. package/Microsoft.ReactNative/Fabric/AbiViewProps.h +1 -0
  134. package/Microsoft.ReactNative/Fabric/Composition/CompositionEventHandler.cpp +25 -5
  135. package/Microsoft.ReactNative/Fabric/Composition/CompositionEventHandler.h +2 -1
  136. package/Microsoft.ReactNative/Fabric/Composition/CompositionViewComponentView.cpp +9 -3
  137. package/Microsoft.ReactNative/Fabric/FabricUIManagerModule.cpp +2 -3
  138. package/Microsoft.ReactNative/Fabric/ReactTaggedView.h +2 -2
  139. package/Microsoft.ReactNative/IReactCompositionViewComponentBuilder.idl +2 -0
  140. package/Microsoft.ReactNative/ReactHost/ReactInstanceWin.cpp +6 -0
  141. package/Microsoft.ReactNative/ViewProps.idl +9 -0
  142. package/Microsoft.ReactNative.Cxx/ReactCommon/TurboModule.h +12 -2
  143. package/PropertySheets/Generated/PackageVersion.g.props +3 -3
  144. package/ReactCommon/ReactCommon.vcxproj +7 -1
  145. package/ReactCommon/ReactCommon.vcxproj.filters +0 -3
  146. package/ReactCommon/TEMP_UntilReactCommonUpdate/cxxreact/JSIndexedRAMBundle.cpp +5 -5
  147. package/ReactCommon/TEMP_UntilReactCommonUpdate/cxxreact/ReactMarker.cpp +0 -1
  148. package/ReactCommon/TEMP_UntilReactCommonUpdate/jsiexecutor/jsireact/JSIExecutor.cpp +2 -43
  149. package/ReactCommon/TEMP_UntilReactCommonUpdate/react/nativemodule/core/ReactCommon/TurboModule.h +12 -2
  150. package/ReactCommon/TEMP_UntilReactCommonUpdate/react/renderer/attributedstring/TextAttributes.cpp +291 -0
  151. package/ReactCommon/TEMP_UntilReactCommonUpdate/react/renderer/core/EventDispatcher.cpp +0 -1
  152. package/ReactCommon/TEMP_UntilReactCommonUpdate/react/renderer/core/EventQueueProcessor.cpp +1 -3
  153. package/ReactCommon/TEMP_UntilReactCommonUpdate/react/renderer/core/propsConversions.h +199 -0
  154. package/ReactCommon/TEMP_UntilReactCommonUpdate/react/renderer/uimanager/UIManager.cpp +6 -0
  155. package/ReactCommon/TEMP_UntilReactCommonUpdate/react/runtime/ReactInstance.cpp +17 -10
  156. package/Scripts/creaternwapp.cmd +8 -1
  157. package/Scripts/creaternwlib.cmd +21 -2
  158. package/Shared/DevSettings.h +0 -3
  159. package/Shared/Modules/WebSocketModule.cpp +0 -1
  160. package/Shared/Modules/WebSocketModule.h +62 -3
  161. package/Shared/OInstance.cpp +5 -0
  162. package/Shared/Shared.vcxitems +4 -6
  163. package/Shared/Shared.vcxitems.filters +218 -709
  164. package/codegen/NativeAccessibilityManagerSpec.g.h +2 -0
  165. package/codegen/NativeAnimatedModuleSpec.g.h +21 -15
  166. package/codegen/NativeDevLoadingViewSpec.g.h +3 -3
  167. package/codegen/NativeIntentAndroidSpec.g.h +16 -3
  168. package/codegen/NativeReactNativeFeatureFlagsSpec.g.h +209 -191
  169. package/codegen/react/components/rnwcore/EventEmitters.h +1 -0
  170. package/codegen/react/components/rnwcore/Props.h +14 -0
  171. package/codegen/rnwcoreJSI.h +246 -211
  172. package/index.js +3 -0
  173. package/index.windows.js +3 -0
  174. package/jest/mock.js +2 -2
  175. package/jest/mockComponent.js +1 -1
  176. package/jest/setup.js +1 -1
  177. package/package.json +22 -21
  178. package/src/private/animated/NativeAnimatedHelper.js +130 -125
  179. package/src/private/animated/NativeAnimatedValidation.js +7 -4
  180. package/src/private/animated/createAnimatedPropsHook.js +13 -5
  181. package/src/private/animated/createAnimatedPropsMemoHook.js +10 -10
  182. package/src/private/components/virtualview/VirtualView.js +16 -9
  183. package/src/private/components/virtualview/logger/VirtualViewLogger.js +21 -0
  184. package/src/private/components/virtualview/logger/VirtualViewLoggerTypes.js +24 -0
  185. package/src/private/devsupport/devmenu/elementinspector/ElementProperties.js +1 -1
  186. package/src/private/devsupport/devmenu/elementinspector/Inspector.js +6 -25
  187. package/src/private/devsupport/devmenu/elementinspector/InspectorPanel.js +1 -27
  188. package/src/private/devsupport/devmenu/elementinspector/XHRInterceptor.js +3 -2
  189. package/src/private/featureflags/ReactNativeFeatureFlags.js +63 -42
  190. package/src/private/featureflags/ReactNativeFeatureFlagsBase.js +3 -3
  191. package/src/private/featureflags/specs/NativeReactNativeFeatureFlags.js +12 -9
  192. package/src/private/renderer/errorhandling/ErrorHandlers.js +7 -4
  193. package/src/private/specs_DEPRECATED/modules/NativeAccessibilityManager.js +1 -1
  194. package/src/private/specs_DEPRECATED/modules/NativeAnimatedModule.js +4 -0
  195. package/src/private/specs_DEPRECATED/modules/NativeDevLoadingView.js +1 -0
  196. package/src/private/webapis/dom/events/CustomEvent.js +3 -3
  197. package/src/private/webapis/dom/nodes/internals/ReactNativeDocumentElementInstanceHandle.js +1 -1
  198. package/src/private/webapis/dom/nodes/internals/ReactNativeDocumentInstanceHandle.js +1 -1
  199. package/src/private/webapis/dom/nodes/specs/NativeDOM.js +29 -29
  200. package/src/private/webapis/dom/oldstylecollections/HTMLCollection.js +1 -1
  201. package/src/private/webapis/dom/oldstylecollections/NodeList.js +2 -2
  202. package/src/private/webapis/geometry/DOMRectReadOnly.js +1 -1
  203. package/src/private/webapis/html/events/MessageEvent.js +3 -3
  204. package/src/private/webapis/idlecallbacks/specs/NativeIdleCallbacks.js +3 -3
  205. package/src/private/webapis/intersectionobserver/IntersectionObserver.js +53 -5
  206. package/src/private/webapis/intersectionobserver/internals/IntersectionObserverManager.js +2 -2
  207. package/src/private/webapis/intersectionobserver/specs/NativeIntersectionObserver.js +4 -4
  208. package/src/private/webapis/microtasks/specs/NativeMicrotasks.js +1 -1
  209. package/src/private/webapis/mutationobserver/MutationObserver.js +1 -1
  210. package/src/private/webapis/mutationobserver/MutationRecord.js +1 -1
  211. package/src/private/webapis/mutationobserver/specs/NativeMutationObserver.js +4 -4
  212. package/src/private/webapis/performance/Performance.js +1 -1
  213. package/src/private/webapis/performance/UserTiming.js +1 -1
  214. package/src/private/webapis/performance/specs/NativePerformance.js +3 -3
  215. package/src/private/webapis/structuredClone/structuredClone.js +3 -3
  216. package/src/types/globals.d.ts +30 -1
  217. package/ReactCommon/TEMP_UntilReactCommonUpdate/react/renderer/components/image/conversions.h +0 -178
  218. package/ReactCommon/TEMP_UntilReactCommonUpdate/react/renderer/imagemanager/primitives.h +0 -183
  219. package/Shared/Modules/WebSocketTurboModule.h +0 -71
  220. package/src/private/devsupport/devmenu/elementinspector/NetworkOverlay.js +0 -628
  221. package/src/private/devsupport/devmenu/perfmonitor/PerformanceOverlay.js +0 -66
@@ -15,6 +15,7 @@ import type {NativeModeChangeEvent} from './VirtualViewNativeComponent';
15
15
 
16
16
  import StyleSheet from '../../../../Libraries/StyleSheet/StyleSheet';
17
17
  import * as ReactNativeFeatureFlags from '../../featureflags/ReactNativeFeatureFlags';
18
+ import {useVirtualViewLogging} from './logger/VirtualViewLogger';
18
19
  import VirtualViewExperimentalNativeComponent from './VirtualViewExperimentalNativeComponent';
19
20
  import VirtualViewClassicNativeComponent from './VirtualViewNativeComponent';
20
21
  import nullthrows from 'nullthrows';
@@ -45,6 +46,7 @@ export type Rect = $ReadOnly<{
45
46
 
46
47
  export type ModeChangeEvent = $ReadOnly<{
47
48
  ...Omit<NativeModeChangeEvent, 'mode'>,
49
+ renderState: VirtualViewRenderState,
48
50
  mode: VirtualViewMode,
49
51
  target: HostInstance,
50
52
  }>;
@@ -90,21 +92,26 @@ function createVirtualView(initialState: State): VirtualViewComponent {
90
92
  _logs.states?.push(state);
91
93
  }
92
94
  const isHidden = state !== NotHidden;
95
+ const loggingCallbacksRef = useVirtualViewLogging(isHidden, nativeID);
93
96
 
94
97
  const handleModeChange = (
95
98
  event: NativeSyntheticEvent<NativeModeChangeEvent>,
96
99
  ) => {
97
100
  const mode = nullthrows(VirtualViewMode.cast(event.nativeEvent.mode));
101
+ const modeChangeEvent: ModeChangeEvent = {
102
+ mode,
103
+ renderState: isHidden
104
+ ? VirtualViewRenderState.None
105
+ : VirtualViewRenderState.Rendered,
106
+ // $FlowFixMe[incompatible-type] - we know this is a HostInstance
107
+ target: event.currentTarget as HostInstance,
108
+ targetRect: event.nativeEvent.targetRect,
109
+ thresholdRect: event.nativeEvent.thresholdRect,
110
+ };
111
+ loggingCallbacksRef.current?.logModeChange(modeChangeEvent);
112
+
98
113
  const emitModeChange =
99
- onModeChange == null
100
- ? null
101
- : onModeChange.bind(null, {
102
- mode,
103
- // $FlowFixMe[incompatible-type] - we know this is a HostInstance
104
- target: event.currentTarget as HostInstance,
105
- targetRect: event.nativeEvent.targetRect,
106
- thresholdRect: event.nativeEvent.thresholdRect,
107
- });
114
+ onModeChange == null ? null : onModeChange.bind(null, modeChangeEvent);
108
115
 
109
116
  match (mode) {
110
117
  VirtualViewMode.Visible => {
@@ -0,0 +1,21 @@
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
+ * @flow strict-local
8
+ * @format
9
+ * @oncall react_native
10
+ */
11
+
12
+ import type {IVirtualViewLogFunctions} from './VirtualViewLoggerTypes';
13
+
14
+ import {useRef} from 'react';
15
+
16
+ export hook useVirtualViewLogging(
17
+ initiallyHidden: boolean,
18
+ nativeID?: string,
19
+ ): React.RefObject<?IVirtualViewLogFunctions> {
20
+ return useRef(null);
21
+ }
@@ -0,0 +1,24 @@
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
+ * @flow strict-local
8
+ * @format
9
+ * @oncall react_native
10
+ */
11
+
12
+ import type {ModeChangeEvent} from '../../../../..';
13
+
14
+ export interface IVirtualViewLogFunctions {
15
+ logMount: () => void;
16
+ logModeChange: (event: ModeChangeEvent) => void;
17
+ logUnmount: () => void;
18
+ }
19
+ export interface IVirtualViewLogger {
20
+ getVirtualViewLoggingCallbacks(
21
+ initiallyHidden: boolean,
22
+ nativeID?: string,
23
+ ): IVirtualViewLogFunctions;
24
+ }
@@ -35,7 +35,7 @@ type Props = $ReadOnly<{
35
35
  style?: ?ViewStyleProp,
36
36
  frame?: ?Object,
37
37
  selection?: ?number,
38
- setSelection?: number => mixed,
38
+ setSelection?: number => unknown,
39
39
  }>;
40
40
 
41
41
  class ElementProperties extends React.Component<Props> {
@@ -39,10 +39,6 @@ const InspectorPanel = require('./InspectorPanel').default;
39
39
  const {useState} = React;
40
40
 
41
41
  type PanelPosition = 'top' | 'bottom';
42
- type SelectedTab =
43
- | 'elements-inspector'
44
- | 'network-profiling'
45
- | 'performance-profiling';
46
42
 
47
43
  export type InspectedElementFrame = TouchedViewDataAtPoint['frame'];
48
44
  export type InspectedElement = $ReadOnly<{
@@ -62,8 +58,7 @@ function Inspector({
62
58
  onRequestRerenderApp,
63
59
  reactDevToolsAgent,
64
60
  }: Props): React.Node {
65
- const [selectedTab, setSelectedTab] =
66
- useState<?SelectedTab>('elements-inspector');
61
+ const [inspecting, setInspecting] = useState<boolean>(true);
67
62
 
68
63
  const [panelPosition, setPanelPosition] = useState<PanelPosition>('bottom');
69
64
  const [inspectedElement, setInspectedElement] =
@@ -137,18 +132,8 @@ function Inspector({
137
132
  );
138
133
  };
139
134
 
140
- const setInspecting = (enabled: boolean) => {
141
- setSelectedTab(enabled ? 'elements-inspector' : null);
142
- setInspectedElement(null);
143
- };
144
-
145
- const setPerfing = (enabled: boolean) => {
146
- setSelectedTab(enabled ? 'performance-profiling' : null);
147
- setInspectedElement(null);
148
- };
149
-
150
- const setNetworking = (enabled: boolean) => {
151
- setSelectedTab(enabled ? 'network-profiling' : null);
135
+ const handleSetInspecting = (enabled: boolean) => {
136
+ setInspecting(enabled);
152
137
  setInspectedElement(null);
153
138
  };
154
139
 
@@ -164,7 +149,7 @@ function Inspector({
164
149
 
165
150
  return (
166
151
  <View style={styles.container} pointerEvents="box-none">
167
- {selectedTab === 'elements-inspector' && (
152
+ {inspecting && (
168
153
  <InspectorOverlay
169
154
  inspected={inspectedElement}
170
155
  onTouchPoint={onTouchPoint}
@@ -174,18 +159,14 @@ function Inspector({
174
159
  <SafeAreaView style={[styles.panelContainer, panelContainerStyle]}>
175
160
  <InspectorPanel
176
161
  devtoolsIsOpen={!!reactDevToolsAgent}
177
- inspecting={selectedTab === 'elements-inspector'}
178
- perfing={selectedTab === 'performance-profiling'}
179
- setPerfing={setPerfing}
180
- setInspecting={setInspecting}
162
+ inspecting={inspecting}
163
+ setInspecting={handleSetInspecting}
181
164
  inspected={inspectedElement}
182
165
  hierarchy={elementsHierarchy}
183
166
  selection={selectionIndex}
184
167
  setSelection={setSelection}
185
168
  touchTargeting={PressabilityDebug.isEnabled()}
186
169
  setTouchTargeting={setTouchTargeting}
187
- networking={selectedTab === 'network-profiling'}
188
- setNetworking={setNetworking}
189
170
  />
190
171
  </SafeAreaView>
191
172
  </View>
@@ -23,23 +23,17 @@ const View = require('../../../../../Libraries/Components/View/View').default;
23
23
  const StyleSheet =
24
24
  require('../../../../../Libraries/StyleSheet/StyleSheet').default;
25
25
  const Text = require('../../../../../Libraries/Text/Text').default;
26
- const PerformanceOverlay = require('../perfmonitor/PerformanceOverlay').default;
27
26
  const ElementProperties = require('./ElementProperties').default;
28
- const NetworkOverlay = require('./NetworkOverlay').default;
29
27
 
30
28
  type Props = $ReadOnly<{
31
29
  devtoolsIsOpen: boolean,
32
30
  inspecting: boolean,
33
31
  setInspecting: (val: boolean) => void,
34
- perfing: boolean,
35
- setPerfing: (val: boolean) => void,
36
32
  touchTargeting: boolean,
37
33
  setTouchTargeting: (val: boolean) => void,
38
- networking: boolean,
39
- setNetworking: (val: boolean) => void,
40
34
  hierarchy?: ?ElementsHierarchy,
41
35
  selection?: ?number,
42
- setSelection: number => mixed,
36
+ setSelection: number => unknown,
43
37
  inspected?: ?InspectedElement,
44
38
  }>;
45
39
 
@@ -67,10 +61,6 @@ class InspectorPanel extends React.Component<Props> {
67
61
  />
68
62
  </ScrollView>
69
63
  );
70
- } else if (this.props.perfing) {
71
- contents = <PerformanceOverlay />;
72
- } else if (this.props.networking) {
73
- contents = <NetworkOverlay />;
74
64
  } else {
75
65
  contents = <View style={styles.waiting}>{this.renderWaiting()}</View>;
76
66
  }
@@ -83,22 +73,6 @@ class InspectorPanel extends React.Component<Props> {
83
73
  pressed={this.props.inspecting}
84
74
  onClick={this.props.setInspecting}
85
75
  />
86
- {global.RN$Bridgeless === true ? null : (
87
- // These Inspector Panel sub-features are removed under the New Arch.
88
- // See https://github.com/react-native-community/discussions-and-proposals/pull/777
89
- <>
90
- <InspectorPanelButton
91
- title={'Perf'}
92
- pressed={this.props.perfing}
93
- onClick={this.props.setPerfing}
94
- />
95
- <InspectorPanelButton
96
- title={'Network'}
97
- pressed={this.props.networking}
98
- onClick={this.props.setNetworking}
99
- />
100
- </>
101
- )}
102
76
  <InspectorPanelButton
103
77
  title={'Touchables'}
104
78
  pressed={this.props.touchTargeting}
@@ -64,10 +64,11 @@ let isInterceptorEnabled = false;
64
64
 
65
65
  /**
66
66
  * A network interceptor which monkey-patches XMLHttpRequest methods
67
- * to gather all network requests/responses, in order to show their
68
- * information in the React Native inspector development tool.
67
+ * to gather all network requests/responses.
69
68
  * This supports interception with XMLHttpRequest API, including Fetch API
70
69
  * and any other third party libraries that depend on XMLHttpRequest.
70
+ *
71
+ * @deprecated Since React Native 0.84
71
72
  */
72
73
  const XHRInterceptor = {
73
74
  /**
@@ -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<<474b28e49cdb8a46a361a32df3c92eed>>
7
+ * @generated SignedSource<<db4650fb28b7c07c73eb75775a7e7811>>
8
8
  * @flow strict
9
9
  * @noformat
10
10
  */
@@ -40,6 +40,7 @@ export type ReactNativeFeatureFlagsJsOnly = $ReadOnly<{
40
40
  reduceDefaultPropsInImage: Getter<boolean>,
41
41
  reduceDefaultPropsInText: Getter<boolean>,
42
42
  shouldUseAnimatedObjectForTransform: Getter<boolean>,
43
+ shouldUseLinkRoleForPressableText: Getter<boolean>,
43
44
  shouldUseRemoveClippedSubviewsAsDefaultOnIOS: Getter<boolean>,
44
45
  shouldUseSetNativePropsInFabric: Getter<boolean>,
45
46
  virtualViewActivityBehavior: Getter<string>,
@@ -53,14 +54,16 @@ export type ReactNativeFeatureFlags = $ReadOnly<{
53
54
  commonTestFlagWithoutNativeImplementation: Getter<boolean>,
54
55
  cdpInteractionMetricsEnabled: Getter<boolean>,
55
56
  cxxNativeAnimatedEnabled: Getter<boolean>,
56
- cxxNativeAnimatedRemoveJsSync: Getter<boolean>,
57
57
  disableEarlyViewCommandExecution: Getter<boolean>,
58
- disableFabricCommitInCXXAnimated: Getter<boolean>,
58
+ disableImageViewPreallocationAndroid: Getter<boolean>,
59
59
  disableMountItemReorderingAndroid: Getter<boolean>,
60
60
  disableOldAndroidAttachmentMetricsWorkarounds: Getter<boolean>,
61
+ disableSubviewClippingAndroid: Getter<boolean>,
61
62
  disableTextLayoutManagerCacheAndroid: Getter<boolean>,
63
+ disableViewPreallocationAndroid: Getter<boolean>,
62
64
  enableAccessibilityOrder: Getter<boolean>,
63
65
  enableAccumulatedUpdatesInRawPropsAndroid: Getter<boolean>,
66
+ enableAndroidAntialiasedBorderRadiusClipping: Getter<boolean>,
64
67
  enableAndroidLinearText: Getter<boolean>,
65
68
  enableAndroidTextMeasurementOptimizations: Getter<boolean>,
66
69
  enableBridgelessArchitecture: Getter<boolean>,
@@ -70,12 +73,14 @@ export type ReactNativeFeatureFlags = $ReadOnly<{
70
73
  enableDoubleMeasurementFixAndroid: Getter<boolean>,
71
74
  enableEagerMainQueueModulesOnIOS: Getter<boolean>,
72
75
  enableEagerRootViewAttachment: Getter<boolean>,
76
+ enableExclusivePropsUpdateAndroid: Getter<boolean>,
73
77
  enableFabricLogs: Getter<boolean>,
74
78
  enableFabricRenderer: Getter<boolean>,
75
79
  enableFontScaleChangesUpdatingLayout: Getter<boolean>,
76
80
  enableIOSTextBaselineOffsetPerLine: Getter<boolean>,
77
81
  enableIOSViewClipToPaddingBox: Getter<boolean>,
78
82
  enableImagePrefetchingAndroid: Getter<boolean>,
83
+ enableImagePrefetchingJNIBatchingAndroid: Getter<boolean>,
79
84
  enableImagePrefetchingOnUiThreadAndroid: Getter<boolean>,
80
85
  enableImmediateUpdateModeForContentOffsetChanges: Getter<boolean>,
81
86
  enableImperativeFocus: Getter<boolean>,
@@ -90,7 +95,6 @@ export type ReactNativeFeatureFlags = $ReadOnly<{
90
95
  enableNetworkEventReporting: Getter<boolean>,
91
96
  enablePreparedTextLayout: Getter<boolean>,
92
97
  enablePropsUpdateReconciliationAndroid: Getter<boolean>,
93
- enableResourceTimingAPI: Getter<boolean>,
94
98
  enableSwiftUIBasedFilters: Getter<boolean>,
95
99
  enableViewCulling: Getter<boolean>,
96
100
  enableViewRecycling: Getter<boolean>,
@@ -98,13 +102,13 @@ export type ReactNativeFeatureFlags = $ReadOnly<{
98
102
  enableViewRecyclingForScrollView: Getter<boolean>,
99
103
  enableViewRecyclingForText: Getter<boolean>,
100
104
  enableViewRecyclingForView: Getter<boolean>,
101
- enableVirtualViewClippingWithoutScrollViewClipping: Getter<boolean>,
102
105
  enableVirtualViewContainerStateExperimental: Getter<boolean>,
103
106
  enableVirtualViewDebugFeatures: Getter<boolean>,
104
107
  enableVirtualViewRenderState: Getter<boolean>,
105
108
  enableVirtualViewWindowFocusDetection: Getter<boolean>,
106
109
  enableWebPerformanceAPIsByDefault: Getter<boolean>,
107
110
  fixMappingOfEventPrioritiesBetweenFabricAndReact: Getter<boolean>,
111
+ fixTextClippingAndroid15useBoundsForWidth: Getter<boolean>,
108
112
  fuseboxAssertSingleHostState: Getter<boolean>,
109
113
  fuseboxEnabledRelease: Getter<boolean>,
110
114
  fuseboxNetworkInspectionEnabled: Getter<boolean>,
@@ -115,17 +119,17 @@ export type ReactNativeFeatureFlags = $ReadOnly<{
115
119
  preparedTextCacheSize: Getter<number>,
116
120
  preventShadowTreeCommitExhaustion: Getter<boolean>,
117
121
  shouldPressibilityUseW3CPointerEventsForHover: Getter<boolean>,
122
+ shouldResetClickableWhenRecyclingView: Getter<boolean>,
123
+ shouldResetOnClickListenerWhenRecyclingView: Getter<boolean>,
124
+ shouldSetEnabledBasedOnAccessibilityState: Getter<boolean>,
125
+ shouldSetIsClickableByDefault: Getter<boolean>,
118
126
  shouldTriggerResponderTransferOnScrollAndroid: Getter<boolean>,
119
127
  skipActivityIdentityAssertionOnHostPause: Getter<boolean>,
120
- sweepActiveTouchOnChildNativeGesturesAndroid: Getter<boolean>,
121
128
  traceTurboModulePromiseRejectionsOnAndroid: Getter<boolean>,
122
129
  updateRuntimeShadowNodeReferencesOnCommit: Getter<boolean>,
123
130
  useAlwaysAvailableJSErrorHandling: Getter<boolean>,
124
131
  useFabricInterop: Getter<boolean>,
125
- useNativeEqualsInNativeReadableArrayAndroid: Getter<boolean>,
126
- useNativeTransformHelperAndroid: Getter<boolean>,
127
132
  useNativeViewConfigsInBridgelessMode: Getter<boolean>,
128
- useOptimizedEventBatchingOnAndroid: Getter<boolean>,
129
133
  useRawPropsJsiValue: Getter<boolean>,
130
134
  useShadowNodeStateOnClone: Getter<boolean>,
131
135
  useSharedAnimatedBackend: Getter<boolean>,
@@ -197,6 +201,11 @@ export const reduceDefaultPropsInText: Getter<boolean> = createJavaScriptFlagGet
197
201
  */
198
202
  export const shouldUseAnimatedObjectForTransform: Getter<boolean> = createJavaScriptFlagGetter('shouldUseAnimatedObjectForTransform', false);
199
203
 
204
+ /**
205
+ * Set accessibilityRole to "link" for pressable Text components by default.
206
+ */
207
+ export const shouldUseLinkRoleForPressableText: Getter<boolean> = createJavaScriptFlagGetter('shouldUseLinkRoleForPressableText', true);
208
+
200
209
  /**
201
210
  * removeClippedSubviews prop will be used as the default in FlatList on iOS to match Android
202
211
  */
@@ -228,18 +237,14 @@ export const cdpInteractionMetricsEnabled: Getter<boolean> = createNativeFlagGet
228
237
  * Use a C++ implementation of Native Animated instead of the platform implementation.
229
238
  */
230
239
  export const cxxNativeAnimatedEnabled: Getter<boolean> = createNativeFlagGetter('cxxNativeAnimatedEnabled', false);
231
- /**
232
- * Removes JS sync at end of native animation
233
- */
234
- export const cxxNativeAnimatedRemoveJsSync: Getter<boolean> = createNativeFlagGetter('cxxNativeAnimatedRemoveJsSync', false);
235
240
  /**
236
241
  * Dispatch view commands in mount item order.
237
242
  */
238
243
  export const disableEarlyViewCommandExecution: Getter<boolean> = createNativeFlagGetter('disableEarlyViewCommandExecution', false);
239
244
  /**
240
- * Prevents use of Fabric commit in C++ Animated implementation
245
+ * Force disable view preallocation for images triggered from createNode off the main thread on Android
241
246
  */
242
- export const disableFabricCommitInCXXAnimated: Getter<boolean> = createNativeFlagGetter('disableFabricCommitInCXXAnimated', false);
247
+ export const disableImageViewPreallocationAndroid: Getter<boolean> = createNativeFlagGetter('disableImageViewPreallocationAndroid', false);
243
248
  /**
244
249
  * Prevent FabricMountingManager from reordering mountItems, which may lead to invalid state on the UI thread
245
250
  */
@@ -248,10 +253,18 @@ export const disableMountItemReorderingAndroid: Getter<boolean> = createNativeFl
248
253
  * Disable some workarounds for old Android versions in TextLayoutManager logic for retrieving attachment metrics
249
254
  */
250
255
  export const disableOldAndroidAttachmentMetricsWorkarounds: Getter<boolean> = createNativeFlagGetter('disableOldAndroidAttachmentMetricsWorkarounds', true);
256
+ /**
257
+ * Force disable subview clipping for ReactViewGroup on Android
258
+ */
259
+ export const disableSubviewClippingAndroid: Getter<boolean> = createNativeFlagGetter('disableSubviewClippingAndroid', false);
251
260
  /**
252
261
  * Turns off the global measurement cache used by TextLayoutManager on Android.
253
262
  */
254
263
  export const disableTextLayoutManagerCacheAndroid: Getter<boolean> = createNativeFlagGetter('disableTextLayoutManagerCacheAndroid', false);
264
+ /**
265
+ * Force disable view preallocation triggered from createNode off the main thread on Android
266
+ */
267
+ export const disableViewPreallocationAndroid: Getter<boolean> = createNativeFlagGetter('disableViewPreallocationAndroid', false);
255
268
  /**
256
269
  * When enabled, the accessibilityOrder prop will propagate to native platforms and define the accessibility order.
257
270
  */
@@ -260,6 +273,10 @@ export const enableAccessibilityOrder: Getter<boolean> = createNativeFlagGetter(
260
273
  * When enabled, Android will accumulate updates in rawProps to reduce the number of mounting instructions for cascading re-renders.
261
274
  */
262
275
  export const enableAccumulatedUpdatesInRawPropsAndroid: Getter<boolean> = createNativeFlagGetter('enableAccumulatedUpdatesInRawPropsAndroid', false);
276
+ /**
277
+ * Enable antialiased border radius clipping for Android API 28 and below using manual masking with Porter-Duff compositing
278
+ */
279
+ export const enableAndroidAntialiasedBorderRadiusClipping: Getter<boolean> = createNativeFlagGetter('enableAndroidAntialiasedBorderRadiusClipping', false);
263
280
  /**
264
281
  * Enables linear text rendering on Android wherever subpixel text rendering is enabled
265
282
  */
@@ -296,6 +313,10 @@ export const enableEagerMainQueueModulesOnIOS: Getter<boolean> = createNativeFla
296
313
  * Feature flag to configure eager attachment of the root view/initialisation of the JS code.
297
314
  */
298
315
  export const enableEagerRootViewAttachment: Getter<boolean> = createNativeFlagGetter('enableEagerRootViewAttachment', false);
316
+ /**
317
+ * When enabled, Android will disable Props 1.5 raw value merging when Props 2.0 is available.
318
+ */
319
+ export const enableExclusivePropsUpdateAndroid: Getter<boolean> = createNativeFlagGetter('enableExclusivePropsUpdateAndroid', false);
299
320
  /**
300
321
  * This feature flag enables logs for Fabric.
301
322
  */
@@ -320,6 +341,10 @@ export const enableIOSViewClipToPaddingBox: Getter<boolean> = createNativeFlagGe
320
341
  * When enabled, Android will build and initiate image prefetch requests on ImageShadowNode::layout
321
342
  */
322
343
  export const enableImagePrefetchingAndroid: Getter<boolean> = createNativeFlagGetter('enableImagePrefetchingAndroid', false);
344
+ /**
345
+ * When enabled, Android will build and initiate image prefetch requests on ImageShadowNode::layout and batch them together in a single JNI call
346
+ */
347
+ export const enableImagePrefetchingJNIBatchingAndroid: Getter<boolean> = createNativeFlagGetter('enableImagePrefetchingJNIBatchingAndroid', false);
323
348
  /**
324
349
  * When enabled, Android will initiate image prefetch requested on ImageShadowNode::layout on the UI thread
325
350
  */
@@ -365,7 +390,7 @@ export const enableModuleArgumentNSNullConversionIOS: Getter<boolean> = createNa
365
390
  */
366
391
  export const enableNativeCSSParsing: Getter<boolean> = createNativeFlagGetter('enableNativeCSSParsing', false);
367
392
  /**
368
- * Enable network event reporting hooks in each native platform through `NetworkReporter`. This flag should be combined with `enableResourceTimingAPI` and `fuseboxNetworkInspectionEnabled` to enable end-to-end reporting behaviour via the Web Performance API and CDP debugging respectively.
393
+ * Enable network event reporting hooks in each native platform through `NetworkReporter` (Web Perf APIs + CDP). This flag should be combined with `fuseboxNetworkInspectionEnabled` to enable Network CDP debugging.
369
394
  */
370
395
  export const enableNetworkEventReporting: Getter<boolean> = createNativeFlagGetter('enableNetworkEventReporting', true);
371
396
  /**
@@ -376,10 +401,6 @@ export const enablePreparedTextLayout: Getter<boolean> = createNativeFlagGetter(
376
401
  * When enabled, Android will receive prop updates based on the differences between the last rendered shadow node and the last committed shadow node.
377
402
  */
378
403
  export const enablePropsUpdateReconciliationAndroid: Getter<boolean> = createNativeFlagGetter('enablePropsUpdateReconciliationAndroid', false);
379
- /**
380
- * Enables the reporting of network resource timings through `PerformanceObserver`.
381
- */
382
- export const enableResourceTimingAPI: Getter<boolean> = createNativeFlagGetter('enableResourceTimingAPI', true);
383
404
  /**
384
405
  * When enabled, it will use SwiftUI for filter effects like blur on iOS.
385
406
  */
@@ -408,10 +429,6 @@ export const enableViewRecyclingForText: Getter<boolean> = createNativeFlagGette
408
429
  * Enables View Recycling for <View> via ReactViewGroup/ReactViewManager.
409
430
  */
410
431
  export const enableViewRecyclingForView: Getter<boolean> = createNativeFlagGetter('enableViewRecyclingForView', true);
411
- /**
412
- * Set clipping to drawingRect of ScrollView.
413
- */
414
- export const enableVirtualViewClippingWithoutScrollViewClipping: Getter<boolean> = createNativeFlagGetter('enableVirtualViewClippingWithoutScrollViewClipping', true);
415
432
  /**
416
433
  * Enables the experimental version of `VirtualViewContainerState`.
417
434
  */
@@ -436,6 +453,10 @@ export const enableWebPerformanceAPIsByDefault: Getter<boolean> = createNativeFl
436
453
  * Uses the default event priority instead of the discreet event priority by default when dispatching events from Fabric to React.
437
454
  */
438
455
  export const fixMappingOfEventPrioritiesBetweenFabricAndReact: Getter<boolean> = createNativeFlagGetter('fixMappingOfEventPrioritiesBetweenFabricAndReact', false);
456
+ /**
457
+ * Fix text clipping starting in Android 15 due to usage of useBoundsForWidth
458
+ */
459
+ export const fixTextClippingAndroid15useBoundsForWidth: Getter<boolean> = createNativeFlagGetter('fixTextClippingAndroid15useBoundsForWidth', false);
439
460
  /**
440
461
  * Enable system assertion validating that Fusebox is configured with a single host. When set, the CDP backend will dynamically disable features (Perf and Network) in the event that multiple hosts are registered (undefined behaviour), and broadcast this over `ReactNativeApplication.systemStateChanged`.
441
462
  */
@@ -457,7 +478,7 @@ export const hideOffscreenVirtualViewsOnIOS: Getter<boolean> = createNativeFlagG
457
478
  */
458
479
  export const overrideBySynchronousMountPropsAtMountingAndroid: Getter<boolean> = createNativeFlagGetter('overrideBySynchronousMountPropsAtMountingAndroid', false);
459
480
  /**
460
- * Enable reporting Performance Issues (`detail.rnPerfIssue`). Displayed in the V2 Performance Monitor and the "Performance Issues" sub-panel in DevTools.
481
+ * Enable reporting Performance Issues (`detail.devtools.performanceIssue`). Displayed in the V2 Performance Monitor and the "Performance Issues" sub-panel in DevTools.
461
482
  */
462
483
  export const perfIssuesEnabled: Getter<boolean> = createNativeFlagGetter('perfIssuesEnabled', false);
463
484
  /**
@@ -476,6 +497,22 @@ export const preventShadowTreeCommitExhaustion: Getter<boolean> = createNativeFl
476
497
  * Function used to enable / disable Pressibility from using W3C Pointer Events for its hover callbacks
477
498
  */
478
499
  export const shouldPressibilityUseW3CPointerEventsForHover: Getter<boolean> = createNativeFlagGetter('shouldPressibilityUseW3CPointerEventsForHover', false);
500
+ /**
501
+ * Reset isClickable to false when recycling views on Android to avoid accessibility tools finding views with incorrect state after recycling.
502
+ */
503
+ export const shouldResetClickableWhenRecyclingView: Getter<boolean> = createNativeFlagGetter('shouldResetClickableWhenRecyclingView', true);
504
+ /**
505
+ * Reset OnClickListener to null when recycling views on Android to avoid accessibility tools finding views with incorrect state after recycling.
506
+ */
507
+ export const shouldResetOnClickListenerWhenRecyclingView: Getter<boolean> = createNativeFlagGetter('shouldResetOnClickListenerWhenRecyclingView', true);
508
+ /**
509
+ * Fix BaseViewManager to properly set view.setEnabled() based on accessibilityState.disabled.
510
+ */
511
+ export const shouldSetEnabledBasedOnAccessibilityState: Getter<boolean> = createNativeFlagGetter('shouldSetEnabledBasedOnAccessibilityState', true);
512
+ /**
513
+ * Sets isClickable=true by default on all React Native views on Android to improve UI harvesting detection while maintaining focusable=false to preserve expected behavior.
514
+ */
515
+ export const shouldSetIsClickableByDefault: Getter<boolean> = createNativeFlagGetter('shouldSetIsClickableByDefault', false);
479
516
  /**
480
517
  * Do not emit touchcancel from Android ScrollView, instead native topScroll event will trigger responder transfer and terminate in RN renderer.
481
518
  */
@@ -484,10 +521,6 @@ export const shouldTriggerResponderTransferOnScrollAndroid: Getter<boolean> = cr
484
521
  * Skip activity identity assertion in ReactHostImpl::onHostPause()
485
522
  */
486
523
  export const skipActivityIdentityAssertionOnHostPause: Getter<boolean> = createNativeFlagGetter('skipActivityIdentityAssertionOnHostPause', false);
487
- /**
488
- * A flag to tell Fabric to sweep active touches from JSTouchDispatcher in Android when a child native gesture is started.
489
- */
490
- export const sweepActiveTouchOnChildNativeGesturesAndroid: Getter<boolean> = createNativeFlagGetter('sweepActiveTouchOnChildNativeGesturesAndroid', true);
491
524
  /**
492
525
  * Enables storing js caller stack when creating promise in native module. This is useful in case of Promise rejection and tracing the cause.
493
526
  */
@@ -504,22 +537,10 @@ export const useAlwaysAvailableJSErrorHandling: Getter<boolean> = createNativeFl
504
537
  * Should this application enable the Fabric Interop Layer for Android? If yes, the application will behave so that it can accept non-Fabric components and render them on Fabric. This toggle is controlling extra logic such as custom event dispatching that are needed for the Fabric Interop Layer to work correctly.
505
538
  */
506
539
  export const useFabricInterop: Getter<boolean> = createNativeFlagGetter('useFabricInterop', true);
507
- /**
508
- * Use a native implementation of equals in NativeReadableArray.
509
- */
510
- export const useNativeEqualsInNativeReadableArrayAndroid: Getter<boolean> = createNativeFlagGetter('useNativeEqualsInNativeReadableArrayAndroid', true);
511
- /**
512
- * Use a native implementation of TransformHelper
513
- */
514
- export const useNativeTransformHelperAndroid: Getter<boolean> = createNativeFlagGetter('useNativeTransformHelperAndroid', true);
515
540
  /**
516
541
  * When enabled, the native view configs are used in bridgeless mode.
517
542
  */
518
543
  export const useNativeViewConfigsInBridgelessMode: Getter<boolean> = createNativeFlagGetter('useNativeViewConfigsInBridgelessMode', false);
519
- /**
520
- * Uses an optimized mechanism for event batching on Android that does not need to wait for a Choreographer frame callback.
521
- */
522
- export const useOptimizedEventBatchingOnAndroid: Getter<boolean> = createNativeFlagGetter('useOptimizedEventBatchingOnAndroid', false);
523
544
  /**
524
545
  * Instead of using folly::dynamic as internal representation in RawProps and RawValue, use jsi::Value
525
546
  */
@@ -527,7 +548,7 @@ export const useRawPropsJsiValue: Getter<boolean> = createNativeFlagGetter('useR
527
548
  /**
528
549
  * Use the state stored on the source shadow node when cloning it instead of reading in the most recent state on the shadow node family.
529
550
  */
530
- export const useShadowNodeStateOnClone: Getter<boolean> = createNativeFlagGetter('useShadowNodeStateOnClone', false);
551
+ export const useShadowNodeStateOnClone: Getter<boolean> = createNativeFlagGetter('useShadowNodeStateOnClone', true);
531
552
  /**
532
553
  * Use shared animation backend in C++ Animated
533
554
  */
@@ -67,13 +67,13 @@ export function createJavaScriptFlagGetter<
67
67
  );
68
68
  }
69
69
 
70
- type NativeFeatureFlags = $NonMaybeType<typeof NativeReactNativeFeatureFlags>;
70
+ type NativeFeatureFlags = NonNullable<typeof NativeReactNativeFeatureFlags>;
71
71
 
72
72
  export function createNativeFlagGetter<K: $Keys<NativeFeatureFlags>>(
73
73
  configName: K,
74
- defaultValue: ReturnType<$NonMaybeType<NativeFeatureFlags[K]>>,
74
+ defaultValue: ReturnType<NonNullable<NativeFeatureFlags[K]>>,
75
75
  skipUnavailableNativeModuleError: boolean = false,
76
- ): Getter<ReturnType<$NonMaybeType<NativeFeatureFlags[K]>>> {
76
+ ): Getter<ReturnType<NonNullable<NativeFeatureFlags[K]>>> {
77
77
  return createGetter(
78
78
  configName,
79
79
  () => {
@@ -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<<fecd2198c65b74c22fa1a6ce96343228>>
7
+ * @generated SignedSource<<14b4f8916fccd1d255b4a260556d11da>>
8
8
  * @flow strict
9
9
  * @noformat
10
10
  */
@@ -28,14 +28,16 @@ export interface Spec extends TurboModule {
28
28
  +commonTestFlagWithoutNativeImplementation?: () => boolean;
29
29
  +cdpInteractionMetricsEnabled?: () => boolean;
30
30
  +cxxNativeAnimatedEnabled?: () => boolean;
31
- +cxxNativeAnimatedRemoveJsSync?: () => boolean;
32
31
  +disableEarlyViewCommandExecution?: () => boolean;
33
- +disableFabricCommitInCXXAnimated?: () => boolean;
32
+ +disableImageViewPreallocationAndroid?: () => boolean;
34
33
  +disableMountItemReorderingAndroid?: () => boolean;
35
34
  +disableOldAndroidAttachmentMetricsWorkarounds?: () => boolean;
35
+ +disableSubviewClippingAndroid?: () => boolean;
36
36
  +disableTextLayoutManagerCacheAndroid?: () => boolean;
37
+ +disableViewPreallocationAndroid?: () => boolean;
37
38
  +enableAccessibilityOrder?: () => boolean;
38
39
  +enableAccumulatedUpdatesInRawPropsAndroid?: () => boolean;
40
+ +enableAndroidAntialiasedBorderRadiusClipping?: () => boolean;
39
41
  +enableAndroidLinearText?: () => boolean;
40
42
  +enableAndroidTextMeasurementOptimizations?: () => boolean;
41
43
  +enableBridgelessArchitecture?: () => boolean;
@@ -45,12 +47,14 @@ export interface Spec extends TurboModule {
45
47
  +enableDoubleMeasurementFixAndroid?: () => boolean;
46
48
  +enableEagerMainQueueModulesOnIOS?: () => boolean;
47
49
  +enableEagerRootViewAttachment?: () => boolean;
50
+ +enableExclusivePropsUpdateAndroid?: () => boolean;
48
51
  +enableFabricLogs?: () => boolean;
49
52
  +enableFabricRenderer?: () => boolean;
50
53
  +enableFontScaleChangesUpdatingLayout?: () => boolean;
51
54
  +enableIOSTextBaselineOffsetPerLine?: () => boolean;
52
55
  +enableIOSViewClipToPaddingBox?: () => boolean;
53
56
  +enableImagePrefetchingAndroid?: () => boolean;
57
+ +enableImagePrefetchingJNIBatchingAndroid?: () => boolean;
54
58
  +enableImagePrefetchingOnUiThreadAndroid?: () => boolean;
55
59
  +enableImmediateUpdateModeForContentOffsetChanges?: () => boolean;
56
60
  +enableImperativeFocus?: () => boolean;
@@ -65,7 +69,6 @@ export interface Spec extends TurboModule {
65
69
  +enableNetworkEventReporting?: () => boolean;
66
70
  +enablePreparedTextLayout?: () => boolean;
67
71
  +enablePropsUpdateReconciliationAndroid?: () => boolean;
68
- +enableResourceTimingAPI?: () => boolean;
69
72
  +enableSwiftUIBasedFilters?: () => boolean;
70
73
  +enableViewCulling?: () => boolean;
71
74
  +enableViewRecycling?: () => boolean;
@@ -73,13 +76,13 @@ export interface Spec extends TurboModule {
73
76
  +enableViewRecyclingForScrollView?: () => boolean;
74
77
  +enableViewRecyclingForText?: () => boolean;
75
78
  +enableViewRecyclingForView?: () => boolean;
76
- +enableVirtualViewClippingWithoutScrollViewClipping?: () => boolean;
77
79
  +enableVirtualViewContainerStateExperimental?: () => boolean;
78
80
  +enableVirtualViewDebugFeatures?: () => boolean;
79
81
  +enableVirtualViewRenderState?: () => boolean;
80
82
  +enableVirtualViewWindowFocusDetection?: () => boolean;
81
83
  +enableWebPerformanceAPIsByDefault?: () => boolean;
82
84
  +fixMappingOfEventPrioritiesBetweenFabricAndReact?: () => boolean;
85
+ +fixTextClippingAndroid15useBoundsForWidth?: () => boolean;
83
86
  +fuseboxAssertSingleHostState?: () => boolean;
84
87
  +fuseboxEnabledRelease?: () => boolean;
85
88
  +fuseboxNetworkInspectionEnabled?: () => boolean;
@@ -90,17 +93,17 @@ export interface Spec extends TurboModule {
90
93
  +preparedTextCacheSize?: () => number;
91
94
  +preventShadowTreeCommitExhaustion?: () => boolean;
92
95
  +shouldPressibilityUseW3CPointerEventsForHover?: () => boolean;
96
+ +shouldResetClickableWhenRecyclingView?: () => boolean;
97
+ +shouldResetOnClickListenerWhenRecyclingView?: () => boolean;
98
+ +shouldSetEnabledBasedOnAccessibilityState?: () => boolean;
99
+ +shouldSetIsClickableByDefault?: () => boolean;
93
100
  +shouldTriggerResponderTransferOnScrollAndroid?: () => boolean;
94
101
  +skipActivityIdentityAssertionOnHostPause?: () => boolean;
95
- +sweepActiveTouchOnChildNativeGesturesAndroid?: () => boolean;
96
102
  +traceTurboModulePromiseRejectionsOnAndroid?: () => boolean;
97
103
  +updateRuntimeShadowNodeReferencesOnCommit?: () => boolean;
98
104
  +useAlwaysAvailableJSErrorHandling?: () => boolean;
99
105
  +useFabricInterop?: () => boolean;
100
- +useNativeEqualsInNativeReadableArrayAndroid?: () => boolean;
101
- +useNativeTransformHelperAndroid?: () => boolean;
102
106
  +useNativeViewConfigsInBridgelessMode?: () => boolean;
103
- +useOptimizedEventBatchingOnAndroid?: () => boolean;
104
107
  +useRawPropsJsiValue?: () => boolean;
105
108
  +useShadowNodeStateOnClone?: () => boolean;
106
109
  +useSharedAnimatedBackend?: () => boolean;