@office-iss/react-native-win32 0.73.2 → 0.74.0-preview.1

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 (479) hide show
  1. package/.eslintignore +1 -1
  2. package/.flowconfig +11 -3
  3. package/CHANGELOG.json +411 -54
  4. package/CHANGELOG.md +157 -30
  5. package/IntegrationTests/AccessibilityManagerTest.js +2 -2
  6. package/IntegrationTests/AppEventsTest.js +2 -2
  7. package/IntegrationTests/LayoutEventsTest.js +8 -10
  8. package/IntegrationTests/LoggingTestModule.js +1 -2
  9. package/IntegrationTests/websocket_integration_test_server.js +1 -1
  10. package/Libraries/ActionSheetIOS/ActionSheetIOS.d.ts +6 -0
  11. package/Libraries/ActionSheetIOS/ActionSheetIOS.js +6 -0
  12. package/Libraries/ActionSheetIOS/NativeActionSheetManager.js +4 -45
  13. package/Libraries/Alert/NativeAlertManager.js +4 -26
  14. package/Libraries/Animated/Animated.js +2 -2
  15. package/Libraries/Animated/AnimatedPlatformConfig.js +1 -1
  16. package/Libraries/Animated/NativeAnimatedHelper.js +14 -11
  17. package/Libraries/Animated/NativeAnimatedHelper.win32.js +14 -11
  18. package/Libraries/Animated/NativeAnimatedModule.js +4 -68
  19. package/Libraries/Animated/NativeAnimatedTurboModule.js +4 -69
  20. package/Libraries/Animated/animations/Animation.js +6 -22
  21. package/Libraries/Animated/components/AnimatedFlatList.js +1 -16
  22. package/Libraries/Animated/components/AnimatedScrollView.js +36 -31
  23. package/Libraries/Animated/components/AnimatedSectionList.js +1 -20
  24. package/Libraries/Animated/createAnimatedComponent.js +45 -40
  25. package/Libraries/Animated/nodes/AnimatedStyle.js +1 -1
  26. package/Libraries/Animated/shouldUseTurboAnimatedModule.js +1 -1
  27. package/Libraries/Animated/useAnimatedProps.js +21 -1
  28. package/Libraries/AppState/NativeAppState.js +4 -24
  29. package/Libraries/BatchedBridge/NativeModules.js +1 -1
  30. package/Libraries/Blob/Blob.js +1 -4
  31. package/Libraries/Blob/BlobManager.js +6 -8
  32. package/Libraries/Blob/File.js +1 -1
  33. package/Libraries/Blob/NativeBlobModule.js +4 -50
  34. package/Libraries/Blob/NativeFileReaderModule.js +4 -13
  35. package/Libraries/BugReporting/NativeBugReporting.js +4 -12
  36. package/Libraries/Components/AccessibilityInfo/AccessibilityInfo.d.ts +5 -1
  37. package/Libraries/Components/AccessibilityInfo/AccessibilityInfo.win32.js +48 -7
  38. package/Libraries/Components/AccessibilityInfo/NativeAccessibilityInfo.js +3 -23
  39. package/Libraries/Components/AccessibilityInfo/NativeAccessibilityInfoWin32.js +11 -0
  40. package/Libraries/Components/AccessibilityInfo/NativeAccessibilityManager.js +4 -57
  41. package/Libraries/Components/AccessibilityInfo/legacySendAccessibilityEvent.android.js +3 -2
  42. package/Libraries/Components/AccessibilityInfo/legacySendAccessibilityEvent.win32.js +3 -2
  43. package/Libraries/Components/ActivityIndicator/ActivityIndicator.js +9 -40
  44. package/Libraries/Components/ActivityIndicator/ActivityIndicatorViewNativeComponent.js +3 -43
  45. package/Libraries/Components/Button/ButtonWin32.Props.d.ts +36 -36
  46. package/Libraries/Components/Button/ButtonWin32.Props.js +2 -2
  47. package/Libraries/Components/Button/ButtonWin32.Props.js.map +1 -1
  48. package/Libraries/Components/Button/ButtonWin32.d.ts +19 -19
  49. package/Libraries/Components/Button/ButtonWin32.js +82 -82
  50. package/Libraries/Components/Button/ButtonWin32.js.map +1 -1
  51. package/Libraries/Components/Button.js +103 -107
  52. package/Libraries/Components/Button.win32.js +297 -301
  53. package/Libraries/Components/Clipboard/NativeClipboard.js +3 -11
  54. package/Libraries/Components/DrawerAndroid/AndroidDrawerLayoutNativeComponent.js +3 -114
  55. package/Libraries/Components/DrawerAndroid/DrawerLayoutAndroid.android.js +1 -5
  56. package/Libraries/Components/EnterString.win32.d.ts +12 -12
  57. package/Libraries/Components/EnterString.win32.js +81 -81
  58. package/Libraries/Components/EnterString.win32.js.map +1 -1
  59. package/Libraries/Components/Keyboard/NativeKeyboardObserver.js +3 -10
  60. package/Libraries/Components/PopupMenuAndroid/PopupMenuAndroid.android.js +69 -0
  61. package/Libraries/Components/PopupMenuAndroid/PopupMenuAndroid.d.ts +24 -0
  62. package/Libraries/Components/PopupMenuAndroid/PopupMenuAndroid.js +33 -0
  63. package/Libraries/Components/PopupMenuAndroid/PopupMenuAndroidNativeComponent.js +13 -0
  64. package/Libraries/Components/Pressable/Pressable.js +1 -1
  65. package/Libraries/Components/Pressable/Pressable.win32.js +1 -1
  66. package/Libraries/Components/Pressable/useAndroidRippleForView.js +5 -4
  67. package/Libraries/Components/ProgressBarAndroid/ProgressBarAndroidNativeComponent.js +4 -24
  68. package/Libraries/Components/RefreshControl/AndroidSwipeRefreshLayoutNativeComponent.js +3 -64
  69. package/Libraries/Components/RefreshControl/PullToRefreshViewNativeComponent.js +3 -61
  70. package/Libraries/Components/RefreshControl/RefreshControl.js +1 -1
  71. package/Libraries/Components/SafeAreaView/RCTSafeAreaViewNativeComponent.js +3 -15
  72. package/Libraries/Components/ScrollView/AndroidHorizontalScrollContentViewNativeComponent.js +3 -16
  73. package/Libraries/Components/ScrollView/ScrollContentViewNativeComponent.js +1 -1
  74. package/Libraries/Components/ScrollView/ScrollView.d.ts +5 -6
  75. package/Libraries/Components/ScrollView/ScrollView.js +12 -38
  76. package/Libraries/Components/ScrollView/ScrollView.win32.js +12 -38
  77. package/Libraries/Components/ScrollView/ScrollViewStickyHeader.js +1 -2
  78. package/Libraries/Components/Sound/NativeSoundManager.js +3 -12
  79. package/Libraries/Components/StatusBar/NativeStatusBarManagerAndroid.js +3 -58
  80. package/Libraries/Components/StatusBar/NativeStatusBarManagerIOS.js +3 -79
  81. package/Libraries/Components/Switch/AndroidSwitchNativeComponent.js +4 -53
  82. package/Libraries/Components/Switch/Switch.js +0 -2
  83. package/Libraries/Components/Switch/SwitchNativeComponent.js +4 -52
  84. package/Libraries/Components/TextInput/AndroidTextInputNativeComponent.js +8 -0
  85. package/Libraries/Components/TextInput/InputAccessoryView.js +18 -20
  86. package/Libraries/Components/TextInput/RCTInputAccessoryViewNativeComponent.js +4 -17
  87. package/Libraries/Components/TextInput/RCTTextInputViewConfig.js +3 -6
  88. package/Libraries/Components/TextInput/Tests/TextInputTest.d.ts +8 -8
  89. package/Libraries/Components/TextInput/Tests/TextInputTest.js +127 -127
  90. package/Libraries/Components/TextInput/Tests/TextInputTest.js.map +1 -1
  91. package/Libraries/Components/TextInput/TextInput.d.ts +16 -0
  92. package/Libraries/Components/TextInput/TextInput.flow.js +16 -0
  93. package/Libraries/Components/TextInput/TextInput.js +65 -32
  94. package/Libraries/Components/TextInput/TextInput.win32.js +70 -37
  95. package/Libraries/Components/ToastAndroid/NativeToastAndroid.js +3 -28
  96. package/Libraries/Components/Touchable/PooledClass.js +1 -1
  97. package/Libraries/Components/Touchable/Tests/TouchableWin32Test.d.ts +8 -8
  98. package/Libraries/Components/Touchable/Tests/TouchableWin32Test.js +343 -344
  99. package/Libraries/Components/Touchable/Tests/TouchableWin32Test.js.map +1 -1
  100. package/Libraries/Components/Touchable/Touchable.js +2 -3
  101. package/Libraries/Components/Touchable/Touchable.win32.js +2 -3
  102. package/Libraries/Components/Touchable/TouchableHighlight.js +4 -4
  103. package/Libraries/Components/Touchable/TouchableNativeFeedback.js +2 -1
  104. package/Libraries/Components/Touchable/TouchableOpacity.js +5 -2
  105. package/Libraries/Components/Touchable/TouchableWin32.Props.d.ts +37 -37
  106. package/Libraries/Components/Touchable/TouchableWin32.Props.js +2 -2
  107. package/Libraries/Components/Touchable/TouchableWin32.Props.js.map +1 -1
  108. package/Libraries/Components/Touchable/TouchableWin32.Types.d.ts +114 -114
  109. package/Libraries/Components/Touchable/TouchableWin32.Types.js +2 -2
  110. package/Libraries/Components/Touchable/TouchableWin32.Types.js.map +1 -1
  111. package/Libraries/Components/Touchable/TouchableWin32.d.ts +91 -91
  112. package/Libraries/Components/Touchable/TouchableWin32.js +506 -506
  113. package/Libraries/Components/Touchable/TouchableWin32.js.map +1 -1
  114. package/Libraries/Components/UnimplementedViews/UnimplementedNativeViewNativeComponent.js +3 -16
  115. package/Libraries/Components/View/ReactNativeStyleAttributes.js +1 -1
  116. package/Libraries/Components/View/View.js +0 -11
  117. package/Libraries/Components/View/View.win32.js +18 -17
  118. package/Libraries/Components/View/ViewAccessibility.d.ts +33 -17
  119. package/Libraries/Components/View/ViewPropTypes.d.ts +28 -17
  120. package/Libraries/Components/View/ViewPropTypes.js +36 -36
  121. package/Libraries/Components/View/ViewPropTypes.win32.js +36 -36
  122. package/Libraries/Core/InitializeCore.js +1 -1
  123. package/Libraries/Core/NativeExceptionsManager.js +3 -93
  124. package/Libraries/Core/ReactNativeVersion.js +12 -6
  125. package/Libraries/Core/ReactNativeVersionCheck.js +6 -6
  126. package/Libraries/Core/ReactNativeVersionCheck.win32.js +6 -6
  127. package/Libraries/Core/SegmentFetcher/NativeSegmentFetcher.js +3 -18
  128. package/Libraries/Core/Timers/NativeTiming.js +3 -16
  129. package/Libraries/Core/registerCallableModule.js +42 -0
  130. package/Libraries/Core/setUpPerformance.js +2 -2
  131. package/Libraries/Core/setUpPerformanceObserver.js +3 -1
  132. package/Libraries/Debugging/DebuggingOverlay.js +111 -0
  133. package/Libraries/Debugging/DebuggingOverlayNativeComponent.js +13 -0
  134. package/Libraries/Debugging/DebuggingOverlayRegistry.js +513 -0
  135. package/Libraries/Debugging/useSubscribeToDebuggingOverlayRegistry.js +32 -0
  136. package/Libraries/DevToolsSettings/NativeDevToolsSettingsManager.js +3 -14
  137. package/Libraries/HeapCapture/NativeJSCHeapCapture.js +3 -9
  138. package/Libraries/Image/AssetSourceResolver.js +5 -5
  139. package/Libraries/Image/AssetUtils.js +4 -5
  140. package/Libraries/Image/Image.android.js +146 -174
  141. package/Libraries/Image/Image.d.ts +1 -1
  142. package/Libraries/Image/Image.ios.js +53 -79
  143. package/Libraries/Image/Image.win32.js +52 -74
  144. package/Libraries/Image/ImageBackground.js +2 -2
  145. package/Libraries/Image/ImageInjection.js +76 -18
  146. package/Libraries/Image/ImageTypes.d.ts +25 -25
  147. package/Libraries/Image/ImageTypes.flow.js +71 -0
  148. package/Libraries/Image/ImageTypes.js +7 -7
  149. package/Libraries/Image/ImageTypes.js.map +1 -1
  150. package/Libraries/Image/ImageUtils.js +1 -1
  151. package/Libraries/Image/ImageViewNativeComponent.js +18 -0
  152. package/Libraries/Image/NativeImageEditor.js +3 -42
  153. package/Libraries/Image/NativeImageLoaderAndroid.js +4 -28
  154. package/Libraries/Image/NativeImageLoaderIOS.js +4 -28
  155. package/Libraries/Image/NativeImageLoaderWin32.js +4 -36
  156. package/Libraries/Image/NativeImageStoreAndroid.js +3 -16
  157. package/Libraries/Image/NativeImageStoreIOS.js +3 -23
  158. package/Libraries/Image/Tests/ImageWin32Test.d.ts +8 -8
  159. package/Libraries/Image/Tests/ImageWin32Test.js +21 -21
  160. package/Libraries/Image/Tests/ImageWin32Test.js.map +1 -1
  161. package/Libraries/Image/resolveAssetSource.js +59 -26
  162. package/Libraries/Inspector/ElementProperties.js +26 -52
  163. package/Libraries/Inspector/Inspector.js +122 -186
  164. package/Libraries/Inspector/Inspector.win32.js +118 -185
  165. package/Libraries/Inspector/InspectorOverlay.js +21 -33
  166. package/Libraries/Inspector/InspectorOverlay.win32.js +22 -33
  167. package/Libraries/Inspector/InspectorPanel.js +3 -17
  168. package/Libraries/Inspector/ReactDevToolsOverlay.js +171 -0
  169. package/Libraries/Inspector/getInspectorDataForViewAtPoint.js +20 -8
  170. package/Libraries/Interaction/FrameRateLogger.js +8 -18
  171. package/Libraries/Interaction/NativeFrameRateLogger.js +4 -16
  172. package/Libraries/IntersectionObserver/IntersectionObserver.js +1 -1
  173. package/Libraries/IntersectionObserver/IntersectionObserverEntry.js +20 -19
  174. package/Libraries/IntersectionObserver/IntersectionObserverManager.js +84 -6
  175. package/Libraries/IntersectionObserver/NativeIntersectionObserver.js +3 -31
  176. package/Libraries/IntersectionObserver/__mocks__/NativeIntersectionObserver.js +12 -2
  177. package/Libraries/LayoutAnimation/LayoutAnimation.js +1 -2
  178. package/Libraries/Linking/NativeIntentAndroid.js +3 -20
  179. package/Libraries/Linking/NativeLinkingManager.js +3 -17
  180. package/Libraries/Lists/FillRateHelper.js +1 -1
  181. package/Libraries/Lists/FlatList.d.ts +2 -2
  182. package/Libraries/Lists/FlatList.js +6 -1
  183. package/Libraries/Lists/SectionList.d.ts +6 -1
  184. package/Libraries/Lists/ViewabilityHelper.js +1 -1
  185. package/Libraries/Lists/VirtualizeUtils.js +1 -1
  186. package/Libraries/Lists/VirtualizedList.js +1 -1
  187. package/Libraries/Lists/VirtualizedListContext.js +1 -1
  188. package/Libraries/Lists/VirtualizedSectionList.js +1 -1
  189. package/Libraries/LogBox/Data/parseLogBoxLog.js +1 -1
  190. package/Libraries/LogBox/LogBoxInspectorContainer.js +1 -1
  191. package/Libraries/Modal/Modal.js +43 -11
  192. package/Libraries/Modal/NativeModalManager.js +3 -11
  193. package/Libraries/Modal/RCTModalHostViewNativeComponent.js +3 -129
  194. package/Libraries/MutationObserver/MutationObserver.js +1 -1
  195. package/Libraries/MutationObserver/MutationObserverManager.js +2 -2
  196. package/Libraries/MutationObserver/MutationRecord.js +12 -10
  197. package/Libraries/MutationObserver/NativeMutationObserver.js +3 -48
  198. package/Libraries/MutationObserver/__mocks__/NativeMutationObserver.js +1 -1
  199. package/Libraries/NativeComponent/BaseViewConfig.android.js +1 -0
  200. package/Libraries/NativeComponent/NativeComponentRegistry.js +1 -1
  201. package/Libraries/NativeModules/specs/NativeAnimationsDebugModule.js +3 -10
  202. package/Libraries/NativeModules/specs/NativeDevMenu.js +3 -13
  203. package/Libraries/NativeModules/specs/NativeDevSettings.js +3 -23
  204. package/Libraries/NativeModules/specs/NativeDeviceEventManager.js +3 -9
  205. package/Libraries/NativeModules/specs/NativeDialogManagerAndroid.js +3 -38
  206. package/Libraries/NativeModules/specs/NativeLogBox.js +3 -10
  207. package/Libraries/NativeModules/specs/NativeRedBox.js +4 -11
  208. package/Libraries/NativeModules/specs/NativeSourceCode.js +2 -25
  209. package/Libraries/Network/FormData.js +3 -1
  210. package/Libraries/Network/NativeNetworkingAndroid.js +4 -28
  211. package/Libraries/Network/NativeNetworkingIOS.js +4 -28
  212. package/Libraries/Performance/NativeJSCSamplingProfiler.js +3 -9
  213. package/Libraries/PermissionsAndroid/NativePermissionsAndroid.js +4 -68
  214. package/Libraries/PermissionsAndroid/PermissionsAndroid.js +3 -3
  215. package/Libraries/PersonaCoin/PersonaCoin.d.ts +3 -3
  216. package/Libraries/PersonaCoin/PersonaCoin.js +14 -14
  217. package/Libraries/PersonaCoin/PersonaCoin.js.map +1 -1
  218. package/Libraries/PersonaCoin/PersonaCoinPropTypes.d.ts +2 -2
  219. package/Libraries/PersonaCoin/PersonaCoinPropTypes.js +19 -19
  220. package/Libraries/PersonaCoin/PersonaCoinPropTypes.js.map +1 -1
  221. package/Libraries/PersonaCoin/PersonaCoinTypes.d.ts +33 -33
  222. package/Libraries/PersonaCoin/PersonaCoinTypes.js +23 -23
  223. package/Libraries/PersonaCoin/PersonaCoinTypes.js.map +1 -1
  224. package/Libraries/Pressability/Pressability.js +12 -2
  225. package/Libraries/Pressability/Pressability.win32.js +12 -2
  226. package/Libraries/Pressability/usePressability.js +7 -0
  227. package/Libraries/PushNotificationIOS/NativePushNotificationManagerIOS.js +4 -70
  228. package/Libraries/PushNotificationIOS/PushNotificationIOS.js +45 -39
  229. package/Libraries/ReactNative/AppContainer-dev.js +192 -0
  230. package/Libraries/ReactNative/AppContainer-prod.js +53 -0
  231. package/Libraries/ReactNative/AppContainer.js +6 -149
  232. package/Libraries/ReactNative/AppRegistry.js +3 -1
  233. package/Libraries/ReactNative/BridgelessUIManager.js +375 -128
  234. package/Libraries/ReactNative/FabricUIManager.js +6 -0
  235. package/Libraries/ReactNative/NativeHeadlessJsTaskSupport.js +3 -10
  236. package/Libraries/ReactNative/NativeI18nManager.js +3 -18
  237. package/Libraries/ReactNative/NativeUIManager.js +4 -112
  238. package/Libraries/ReactNative/PaperUIManager.js +8 -7
  239. package/Libraries/ReactNative/PaperUIManager.win32.js +26 -7
  240. package/Libraries/ReactNative/ReactFabricInternals.js +1 -1
  241. package/Libraries/ReactNative/ReactFabricPublicInstance/ReactFabricPublicInstance.js +24 -5
  242. package/Libraries/ReactNative/ReactNativeFeatureFlags.js +0 -45
  243. package/Libraries/ReactNative/RendererImplementation.js +11 -0
  244. package/Libraries/ReactNative/UIManager.d.ts +11 -34
  245. package/Libraries/ReactNative/UIManager.js +2 -23
  246. package/Libraries/ReactNative/UIManagerProperties.js +0 -2
  247. package/Libraries/ReactNative/__mocks__/FabricUIManager.js +23 -1
  248. package/Libraries/ReactNative/getNativeComponentAttributes.js +5 -1
  249. package/Libraries/ReactNative/renderApplication.js +9 -6
  250. package/Libraries/ReactPrivate/ReactNativePrivateInterface.js +6 -1
  251. package/Libraries/Renderer/implementations/ReactFabric-dev.js +24771 -21123
  252. package/Libraries/Renderer/implementations/ReactFabric-prod.js +4160 -3109
  253. package/Libraries/Renderer/implementations/ReactFabric-profiling.js +4384 -3322
  254. package/Libraries/Renderer/implementations/ReactNativeRenderer-dev.js +25194 -21398
  255. package/Libraries/Renderer/implementations/ReactNativeRenderer-prod.js +3763 -2636
  256. package/Libraries/Renderer/implementations/ReactNativeRenderer-profiling.js +4027 -2867
  257. package/Libraries/Renderer/shims/ReactNativeTypes.js +8 -9
  258. package/Libraries/Renderer/shims/ReactNativeViewConfigRegistry.js +7 -12
  259. package/Libraries/Settings/NativeSettingsManager.js +4 -16
  260. package/Libraries/Share/NativeShareModule.js +3 -13
  261. package/Libraries/StyleSheet/PlatformColorValueTypes.win32.js +1 -1
  262. package/Libraries/StyleSheet/PlatformColorValueTypesWin32.d.ts +1 -1
  263. package/Libraries/StyleSheet/PlatformColorValueTypesWin32.js +1 -1
  264. package/Libraries/StyleSheet/StyleSheet.d.ts +1 -20
  265. package/Libraries/StyleSheet/StyleSheet.js +5 -28
  266. package/Libraries/StyleSheet/StyleSheet.win32.js +5 -28
  267. package/Libraries/StyleSheet/StyleSheetTypes.d.ts +47 -7
  268. package/Libraries/StyleSheet/StyleSheetTypes.js +16 -11
  269. package/Libraries/StyleSheet/flattenStyle.js +2 -2
  270. package/Libraries/StyleSheet/normalizeColor.js +1 -1
  271. package/Libraries/StyleSheet/processAspectRatio.js +1 -1
  272. package/Libraries/StyleSheet/processFontVariant.js +1 -1
  273. package/Libraries/Text/Text.d.ts +5 -6
  274. package/Libraries/Text/Text.js +0 -6
  275. package/Libraries/Text/Text.win32.js +0 -6
  276. package/Libraries/Text/TextAncestor.js +2 -3
  277. package/Libraries/TurboModule/samples/NativeSampleTurboModule.js +4 -41
  278. package/Libraries/Types/ReactDevToolsTypes.js +58 -0
  279. package/Libraries/Types/UIManagerJSInterface.js +16 -0
  280. package/Libraries/Utilities/DebugEnvironment.js +1 -4
  281. package/Libraries/Utilities/Dimensions.js +8 -16
  282. package/Libraries/Utilities/Dimensions.win32.js +8 -16
  283. package/Libraries/Utilities/FocusManager.win32.js +2 -0
  284. package/Libraries/Utilities/GlobalPerformanceLogger.js +1 -2
  285. package/Libraries/Utilities/NativeAppearance.js +3 -26
  286. package/Libraries/Utilities/NativeDevLoadingView.js +3 -14
  287. package/Libraries/Utilities/NativeDeviceInfo.js +2 -47
  288. package/Libraries/Utilities/NativePlatformConstantsAndroid.js +3 -34
  289. package/Libraries/Utilities/NativePlatformConstantsIOS.js +3 -26
  290. package/Libraries/Utilities/NativePlatformConstantsWin.js +3 -23
  291. package/Libraries/Utilities/PixelRatio.d.ts +4 -4
  292. package/Libraries/Utilities/Platform.android.js +4 -0
  293. package/Libraries/Utilities/Platform.d.ts +3 -0
  294. package/Libraries/Utilities/Platform.flow.js +7 -0
  295. package/Libraries/Utilities/Platform.flow.win32.js +18 -5
  296. package/Libraries/Utilities/Platform.ios.js +11 -0
  297. package/Libraries/Utilities/Platform.win32.js +9 -1
  298. package/Libraries/Utilities/binaryToBase64.js +1 -1
  299. package/Libraries/Utilities/codegenNativeComponent.js +4 -6
  300. package/Libraries/Utilities/createPerformanceLogger.js +2 -74
  301. package/Libraries/Utilities/useMergeRefs.js +5 -9
  302. package/Libraries/Vibration/NativeVibration.js +3 -14
  303. package/Libraries/WebSocket/NativeWebSocketModule.js +4 -25
  304. package/Libraries/YellowBox/YellowBoxDeprecated.js +1 -1
  305. package/Libraries/platform-types.d.ts +2 -3
  306. package/Libraries/vendor/emitter/EventEmitter.js +1 -0
  307. package/babel.config.js +1 -1
  308. package/flow/jest.js +1 -1
  309. package/flow/react.js +15 -0
  310. package/index.js +66 -99
  311. package/index.win32.js +60 -101
  312. package/jest/assetFileTransformer.js +1 -1
  313. package/jest/local-setup.js +0 -5
  314. package/jest/mockModal.js +2 -1
  315. package/jest/mockScrollView.js +1 -2
  316. package/jest/renderer.js +1 -1
  317. package/jest/setup.js +6 -3
  318. package/jest.config.js +2 -1
  319. package/overrides.json +152 -131
  320. package/package.json +26 -26
  321. package/{Libraries/Core → src/private/core}/setUpDOM.js +2 -2
  322. package/src/private/featureflags/NativeReactNativeFeatureFlags.js +42 -0
  323. package/src/private/featureflags/ReactNativeFeatureFlags.js +140 -0
  324. package/src/private/featureflags/ReactNativeFeatureFlagsBase.js +84 -0
  325. package/src/private/featureflags/__tests__/ReactNativeFeatureFlags-test.js +92 -0
  326. package/src/private/specs/components/ActivityIndicatorViewNativeComponent.js +53 -0
  327. package/src/private/specs/components/AndroidDrawerLayoutNativeComponent.js +124 -0
  328. package/src/private/specs/components/AndroidHorizontalScrollContentViewNativeComponent.js +26 -0
  329. package/src/private/specs/components/AndroidSwipeRefreshLayoutNativeComponent.js +74 -0
  330. package/src/private/specs/components/AndroidSwitchNativeComponent.js +62 -0
  331. package/src/private/specs/components/DebuggingOverlayNativeComponent.js +61 -0
  332. package/src/private/specs/components/PopupMenuAndroidNativeComponent.js +47 -0
  333. package/src/private/specs/components/ProgressBarAndroidNativeComponent.js +36 -0
  334. package/src/private/specs/components/PullToRefreshViewNativeComponent.js +71 -0
  335. package/src/private/specs/components/RCTInputAccessoryViewNativeComponent.js +26 -0
  336. package/src/private/specs/components/RCTModalHostViewNativeComponent.js +139 -0
  337. package/src/private/specs/components/RCTSafeAreaViewNativeComponent.js +25 -0
  338. package/src/private/specs/components/SwitchNativeComponent.js +61 -0
  339. package/src/private/specs/components/UnimplementedNativeViewNativeComponent.js +26 -0
  340. package/src/private/specs/modules/NativeAccessibilityInfo.js +33 -0
  341. package/src/private/specs/modules/NativeAccessibilityInfoWin32.js +39 -0
  342. package/src/private/specs/modules/NativeAccessibilityManager.js +66 -0
  343. package/src/private/specs/modules/NativeActionSheetManager.js +54 -0
  344. package/src/private/specs/modules/NativeAlertManager.js +35 -0
  345. package/src/private/specs/modules/NativeAnimatedModule.js +77 -0
  346. package/src/private/specs/modules/NativeAnimatedTurboModule.js +78 -0
  347. package/src/private/specs/modules/NativeAnimationsDebugModule.js +20 -0
  348. package/src/private/specs/modules/NativeAppState.js +33 -0
  349. package/src/private/specs/modules/NativeAppearance.js +36 -0
  350. package/src/private/specs/modules/NativeBlobModule.js +59 -0
  351. package/src/private/specs/modules/NativeBugReporting.js +20 -0
  352. package/src/private/specs/modules/NativeClipboard.js +21 -0
  353. package/src/private/specs/modules/NativeDevLoadingView.js +24 -0
  354. package/src/private/specs/modules/NativeDevMenu.js +23 -0
  355. package/src/private/specs/modules/NativeDevSettings.js +33 -0
  356. package/src/private/specs/modules/NativeDevToolsSettingsManager.js +24 -0
  357. package/src/private/specs/modules/NativeDeviceEventManager.js +19 -0
  358. package/src/private/specs/modules/NativeDeviceInfo.js +58 -0
  359. package/src/private/specs/modules/NativeDialogManagerAndroid.js +48 -0
  360. package/src/private/specs/modules/NativeExceptionsManager.js +103 -0
  361. package/src/private/specs/modules/NativeFileReaderModule.js +22 -0
  362. package/src/private/specs/modules/NativeFrameRateLogger.js +22 -0
  363. package/src/private/specs/modules/NativeHeadlessJsTaskSupport.js +20 -0
  364. package/src/private/specs/modules/NativeI18nManager.js +28 -0
  365. package/src/private/specs/modules/NativeImageEditor.js +52 -0
  366. package/src/private/specs/modules/NativeImageLoaderAndroid.js +30 -0
  367. package/src/private/specs/modules/NativeImageLoaderIOS.js +37 -0
  368. package/src/private/specs/modules/NativeImageLoaderWin32.js +45 -0
  369. package/src/private/specs/modules/NativeImageStoreAndroid.js +26 -0
  370. package/src/private/specs/modules/NativeImageStoreIOS.js +33 -0
  371. package/src/private/specs/modules/NativeIntentAndroid.js +30 -0
  372. package/src/private/specs/modules/NativeIntersectionObserver.js +41 -0
  373. package/src/private/specs/modules/NativeJSCHeapCapture.js +19 -0
  374. package/src/private/specs/modules/NativeJSCSamplingProfiler.js +19 -0
  375. package/src/private/specs/modules/NativeKeyboardObserver.js +20 -0
  376. package/src/private/specs/modules/NativeLinkingManager.js +27 -0
  377. package/src/private/specs/modules/NativeLogBox.js +20 -0
  378. package/src/private/specs/modules/NativeModalManager.js +21 -0
  379. package/src/private/specs/modules/NativeMutationObserver.js +58 -0
  380. package/src/private/specs/modules/NativeNetworkingAndroid.js +37 -0
  381. package/src/private/specs/modules/NativeNetworkingIOS.js +37 -0
  382. package/src/private/specs/modules/NativePermissionsAndroid.js +77 -0
  383. package/src/private/specs/modules/NativePlatformConstantsAndroid.js +44 -0
  384. package/src/private/specs/modules/NativePlatformConstantsIOS.js +37 -0
  385. package/src/private/specs/modules/NativePlatformConstantsWin.js +37 -0
  386. package/src/private/specs/modules/NativePushNotificationManagerIOS.js +107 -0
  387. package/src/private/specs/modules/NativeRedBox.js +20 -0
  388. package/src/private/specs/modules/NativeSampleTurboModule.js +53 -0
  389. package/src/private/specs/modules/NativeSegmentFetcher.js +28 -0
  390. package/src/private/specs/modules/NativeSettingsManager.js +25 -0
  391. package/src/private/specs/modules/NativeShareModule.js +23 -0
  392. package/src/private/specs/modules/NativeSoundManager.js +22 -0
  393. package/src/private/specs/modules/NativeSourceCode.js +36 -0
  394. package/src/private/specs/modules/NativeStatusBarManagerAndroid.js +68 -0
  395. package/src/private/specs/modules/NativeStatusBarManagerIOS.js +89 -0
  396. package/src/private/specs/modules/NativeTiming.js +26 -0
  397. package/src/private/specs/modules/NativeToastAndroid.js +38 -0
  398. package/src/private/specs/modules/NativeUIManager.js +118 -0
  399. package/src/private/specs/modules/NativeVibration.js +24 -0
  400. package/src/private/specs/modules/NativeWebSocketModule.js +34 -0
  401. package/{Libraries/DOM/Nodes → src/private/webapis/dom/nodes}/ReactNativeElement.js +6 -6
  402. package/{Libraries/DOM/Nodes → src/private/webapis/dom/nodes}/ReadOnlyCharacterData.js +2 -2
  403. package/{Libraries/DOM/Nodes → src/private/webapis/dom/nodes}/ReadOnlyElement.js +5 -5
  404. package/{Libraries/DOM/Nodes → src/private/webapis/dom/nodes}/ReadOnlyNode.js +19 -10
  405. package/{Libraries/DOM/OldStyleCollections → src/private/webapis/dom/oldstylecollections}/DOMRectList.js +1 -1
  406. package/src/private/webapis/dom/oldstylecollections/__tests__/DOMRectList-test.js +85 -0
  407. package/src/private/webapis/dom/oldstylecollections/__tests__/HTMLCollection-test.js +80 -0
  408. package/src/private/webapis/dom/oldstylecollections/__tests__/NodeList-test.js +161 -0
  409. package/{Libraries/WebPerformance → src/private/webapis/performance}/NativePerformance.js +2 -2
  410. package/{Libraries/WebPerformance → src/private/webapis/performance}/NativePerformanceObserver.js +3 -2
  411. package/{Libraries/WebPerformance → src/private/webapis/performance}/Performance.js +2 -2
  412. package/{Libraries/WebPerformance → src/private/webapis/performance}/PerformanceEventTiming.js +1 -1
  413. package/{Libraries/WebPerformance → src/private/webapis/performance}/PerformanceObserver.js +21 -2
  414. package/{Libraries/WebPerformance → src/private/webapis/performance}/RawPerformanceEntry.js +1 -1
  415. package/{Libraries/WebPerformance → src/private/webapis/performance}/__mocks__/NativePerformanceObserver.js +9 -0
  416. package/src/private/webapis/performance/__tests__/EventCounts-test.js +116 -0
  417. package/src/private/webapis/performance/__tests__/NativePerformanceMock-test.js +82 -0
  418. package/src/private/webapis/performance/__tests__/NativePerformanceObserverMock-test.js +108 -0
  419. package/src/private/webapis/performance/__tests__/Performance-test.js +117 -0
  420. package/src/private/webapis/performance/__tests__/PerformanceObserver-test.js +208 -0
  421. package/src-win/Libraries/Components/AccessibilityInfo/AccessibilityInfo.d.ts +161 -0
  422. package/{src → src-win}/Libraries/Components/Button/ButtonWin32.tsx +3 -3
  423. package/{src → src-win}/Libraries/Components/Touchable/Tests/TouchableWin32Test.tsx +9 -10
  424. package/{src → src-win}/Libraries/Components/View/ViewAccessibility.d.ts +33 -17
  425. package/{src → src-win}/Libraries/Components/View/ViewPropTypes.d.ts +28 -17
  426. package/{src → src-win}/Libraries/StyleSheet/PlatformColorValueTypesWin32.d.ts +1 -1
  427. package/{src → src-win}/Libraries/Text/Text.d.ts +5 -6
  428. package/{src → src-win}/Libraries/platform-types.d.ts +2 -3
  429. package/types/modules/globals.d.ts +1 -0
  430. package/Libraries/Components/Button.flow.js +0 -265
  431. package/Libraries/Components/ScrollView/ScrollViewViewConfig.js +0 -85
  432. package/Libraries/Components/Text/TextWin32.Props.d.ts +0 -63
  433. package/Libraries/Components/Text/TextWin32.Props.js +0 -3
  434. package/Libraries/Components/Text/TextWin32.Props.js.map +0 -1
  435. package/Libraries/Components/Text/TextWin32.d.ts +0 -6
  436. package/Libraries/Components/Text/TextWin32.js +0 -18
  437. package/Libraries/Components/Text/TextWin32.js.map +0 -1
  438. package/Libraries/Components/Touchable/Touchable.flow.js +0 -284
  439. package/Libraries/Components/TraceUpdateOverlay/TraceUpdateOverlay.js +0 -189
  440. package/Libraries/Components/TraceUpdateOverlay/TraceUpdateOverlayNativeComponent.js +0 -43
  441. package/Libraries/Image/Image.flow.js +0 -64
  442. package/Libraries/Inspector/DevtoolsOverlay.js +0 -223
  443. package/Libraries/Performance/QuickPerformanceLogger.js +0 -142
  444. package/src/Libraries/Components/Text/TextWin32.Props.ts +0 -82
  445. package/src/Libraries/Components/Text/TextWin32.tsx +0 -25
  446. /package/{Libraries/DOM/Geometry → src/private/webapis/dom/geometry}/DOMRect.js +0 -0
  447. /package/{Libraries/DOM/Geometry → src/private/webapis/dom/geometry}/DOMRectReadOnly.js +0 -0
  448. /package/{Libraries/DOM/Nodes → src/private/webapis/dom/nodes}/ReadOnlyText.js +0 -0
  449. /package/{Libraries/DOM/Nodes/Utilities → src/private/webapis/dom/nodes/utilities}/Traversal.js +0 -0
  450. /package/{Libraries/DOM/OldStyleCollections → src/private/webapis/dom/oldstylecollections}/ArrayLikeUtils.js +0 -0
  451. /package/{Libraries/DOM/OldStyleCollections → src/private/webapis/dom/oldstylecollections}/HTMLCollection.js +0 -0
  452. /package/{Libraries/DOM/OldStyleCollections → src/private/webapis/dom/oldstylecollections}/NodeList.js +0 -0
  453. /package/{Libraries/WebPerformance → src/private/webapis/performance}/EventCounts.js +0 -0
  454. /package/{Libraries/WebPerformance → src/private/webapis/performance}/MemoryInfo.js +0 -0
  455. /package/{Libraries/WebPerformance → src/private/webapis/performance}/PerformanceEntry.js +0 -0
  456. /package/{Libraries/WebPerformance → src/private/webapis/performance}/ReactNativeStartupTiming.js +0 -0
  457. /package/{Libraries/WebPerformance → src/private/webapis/performance}/__mocks__/NativePerformance.js +0 -0
  458. /package/{src → src-win}/Libraries/Components/Button/ButtonWin32.Props.ts +0 -0
  459. /package/{src → src-win}/Libraries/Components/EnterString.win32.tsx +0 -0
  460. /package/{src → src-win}/Libraries/Components/TextInput/Tests/TextInputTest.tsx +0 -0
  461. /package/{src → src-win}/Libraries/Components/Touchable/TouchableNativeFeedback.d.ts +0 -0
  462. /package/{src → src-win}/Libraries/Components/Touchable/TouchableWin32.Props.tsx +0 -0
  463. /package/{src → src-win}/Libraries/Components/Touchable/TouchableWin32.Types.tsx +0 -0
  464. /package/{src → src-win}/Libraries/Components/Touchable/TouchableWin32.tsx +0 -0
  465. /package/{src → src-win}/Libraries/Components/View/ViewWin32.d.ts +0 -0
  466. /package/{src → src-win}/Libraries/Image/ImageTypes.ts +0 -0
  467. /package/{src → src-win}/Libraries/Image/Tests/ImageWin32Test.tsx +0 -0
  468. /package/{src → src-win}/Libraries/Image/Tests/img/dpitest.png +0 -0
  469. /package/{src → src-win}/Libraries/Image/Tests/img/dpitest@1.5x.png +0 -0
  470. /package/{src → src-win}/Libraries/Image/Tests/img/dpitest@2x.png +0 -0
  471. /package/{src → src-win}/Libraries/Image/Tests/img/dpitest@3x.png +0 -0
  472. /package/{src → src-win}/Libraries/Image/Tests/img/en-us/dpitest.png +0 -0
  473. /package/{src → src-win}/Libraries/Image/Tests/img/en-us/dpitest@1.5x.png +0 -0
  474. /package/{src → src-win}/Libraries/Image/Tests/img/en-us/dpitest@3x.png +0 -0
  475. /package/{src → src-win}/Libraries/PersonaCoin/PersonaCoin.tsx +0 -0
  476. /package/{src → src-win}/Libraries/PersonaCoin/PersonaCoinPropTypes.ts +0 -0
  477. /package/{src → src-win}/Libraries/PersonaCoin/PersonaCoinTypes.ts +0 -0
  478. /package/{src → src-win}/Libraries/Utilities/FocusManager.win32.d.ts +0 -0
  479. /package/{src → src-win}/Libraries/__tests__/__snapshots__/ButtonWin32-test.js.snap +0 -0
@@ -267,28 +267,21 @@ type AndroidDrawableRipple = $ReadOnly<{|
267
267
  type AndroidDrawable = AndroidDrawableThemeAttr | AndroidDrawableRipple;
268
268
 
269
269
  type AndroidViewProps = $ReadOnly<{|
270
- nativeBackgroundAndroid?: ?AndroidDrawable,
271
- nativeForegroundAndroid?: ?AndroidDrawable,
272
-
273
270
  /**
274
- * Whether this `View` should render itself (and all of its children) into a
275
- * single hardware texture on the GPU.
271
+ * Identifies the element that labels the element it is applied to. When the assistive technology focuses on the component with this props,
272
+ * the text is read aloud. The value should should match the nativeID of the related element.
276
273
  *
277
274
  * @platform android
278
- *
279
- * See https://reactnative.dev/docs/view#rendertohardwaretextureandroid
280
275
  */
281
- renderToHardwareTextureAndroid?: ?boolean,
276
+ accessibilityLabelledBy?: ?string | ?Array<string>,
282
277
 
283
278
  /**
284
- * Whether this `View` needs to rendered offscreen and composited with an
285
- * alpha in order to preserve 100% correct colors and blending behavior.
279
+ * Identifies the element that labels the element it is applied to. When the assistive technology focuses on the component with this props,
280
+ * the text is read aloud. The value should should match the nativeID of the related element.
286
281
  *
287
282
  * @platform android
288
- *
289
- * See https://reactnative.dev/docs/view#needsoffscreenalphacompositing
290
283
  */
291
- needsOffscreenAlphaCompositing?: ?boolean,
284
+ 'aria-labelledby'?: ?string,
292
285
 
293
286
  /**
294
287
  * Indicates to accessibility services whether the user should be notified
@@ -310,6 +303,19 @@ type AndroidViewProps = $ReadOnly<{|
310
303
  */
311
304
  'aria-live'?: ?('polite' | 'assertive' | 'off'),
312
305
 
306
+ nativeBackgroundAndroid?: ?AndroidDrawable,
307
+ nativeForegroundAndroid?: ?AndroidDrawable,
308
+
309
+ /**
310
+ * Whether this `View` should render itself (and all of its children) into a
311
+ * single hardware texture on the GPU.
312
+ *
313
+ * @platform android
314
+ *
315
+ * See https://reactnative.dev/docs/view#rendertohardwaretextureandroid
316
+ */
317
+ renderToHardwareTextureAndroid?: ?boolean,
318
+
313
319
  /**
314
320
  * Controls how view is important for accessibility which is if it
315
321
  * fires accessibility events and if it is reported to accessibility services
@@ -429,6 +435,15 @@ type IOSViewProps = $ReadOnly<{|
429
435
  */
430
436
  accessibilityElementsHidden?: ?boolean,
431
437
 
438
+ /**
439
+ * Indicates to the accessibility services that the UI component is in
440
+ * a specific language. The provided string should be formatted following
441
+ * the BCP 47 specification (https://www.rfc-editor.org/info/bcp47).
442
+ *
443
+ * @platform ios
444
+ */
445
+ accessibilityLanguage?: ?Stringish,
446
+
432
447
  /**
433
448
  * Whether this `View` should be rendered as a bitmap before compositing.
434
449
  *
@@ -545,15 +560,6 @@ export type ViewProps = $ReadOnly<{|
545
560
  */
546
561
  'aria-label'?: ?Stringish,
547
562
 
548
- /**
549
- * Indicates to the accessibility services that the UI component is in
550
- * a specific language. The provided string should be formatted following
551
- * the BCP 47 specification (https://www.rfc-editor.org/info/bcp47).
552
- *
553
- * @platform ios
554
- */
555
- accessibilityLanguage?: ?Stringish,
556
-
557
563
  /**
558
564
  * Indicates to accessibility services to treat UI component like a specific role.
559
565
  */
@@ -585,13 +591,6 @@ export type ViewProps = $ReadOnly<{|
585
591
  */
586
592
  accessibilityActions?: ?$ReadOnlyArray<AccessibilityActionInfo>,
587
593
 
588
- /**
589
- * Specifies the nativeID of the associated label text. When the assistive technology focuses on the component with this props, the text is read aloud.
590
- *
591
- * @platform android
592
- */
593
- accessibilityLabelledBy?: ?string | ?Array<string>,
594
-
595
594
  /**
596
595
  * alias for accessibilityState
597
596
  *
@@ -609,13 +608,6 @@ export type ViewProps = $ReadOnly<{|
609
608
  */
610
609
  'aria-hidden'?: ?boolean,
611
610
 
612
- /**
613
- * It represents the nativeID of the associated label text. When the assistive technology focuses on the component with this props, the text is read aloud.
614
- *
615
- * @platform android
616
- */
617
- 'aria-labelledby'?: ?string,
618
-
619
611
  /**
620
612
  * Views that are only used to layout their children or otherwise don't draw
621
613
  * anything may be automatically removed from the native hierarchy as an
@@ -665,6 +657,14 @@ export type ViewProps = $ReadOnly<{|
665
657
  */
666
658
  nativeID?: ?string,
667
659
 
660
+ /**
661
+ * Whether this `View` needs to rendered offscreen and composited with an
662
+ * alpha in order to preserve 100% correct colors and blending behavior.
663
+ *
664
+ * See https://reactnative.dev/docs/view#needsoffscreenalphacompositing
665
+ */
666
+ needsOffscreenAlphaCompositing?: ?boolean,
667
+
668
668
  /**
669
669
  * This defines how far a touch event can start away from the view.
670
670
  * Typical interface guidelines recommend touch targets that are at least
@@ -27,7 +27,7 @@
27
27
  const start = Date.now();
28
28
 
29
29
  require('./setUpGlobals');
30
- require('./setUpDOM');
30
+ require('../../src/private/core/setUpDOM');
31
31
  require('./setUpPerformance');
32
32
  require('./setUpErrorHandling');
33
33
  require('./polyfillPromise');
@@ -8,96 +8,6 @@
8
8
  * @format
9
9
  */
10
10
 
11
- import type {TurboModule} from '../TurboModule/RCTExport';
12
-
13
- import * as TurboModuleRegistry from '../TurboModule/TurboModuleRegistry';
14
-
15
- const Platform = require('../Utilities/Platform');
16
-
17
- export type StackFrame = {|
18
- column: ?number,
19
- file: ?string,
20
- lineNumber: ?number,
21
- methodName: string,
22
- collapse?: boolean,
23
- |};
24
- export type ExceptionData = {
25
- message: string,
26
- originalMessage: ?string,
27
- name: ?string,
28
- componentStack: ?string,
29
- stack: Array<StackFrame>,
30
- id: number,
31
- isFatal: boolean,
32
- // flowlint-next-line unclear-type:off
33
- extraData?: Object,
34
- ...
35
- };
36
- export interface Spec extends TurboModule {
37
- // Deprecated: Use `reportException`
38
- +reportFatalException: (
39
- message: string,
40
- stack: Array<StackFrame>,
41
- exceptionId: number,
42
- ) => void;
43
- // Deprecated: Use `reportException`
44
- +reportSoftException: (
45
- message: string,
46
- stack: Array<StackFrame>,
47
- exceptionId: number,
48
- ) => void;
49
- +reportException?: (data: ExceptionData) => void;
50
- +updateExceptionMessage: (
51
- message: string,
52
- stack: Array<StackFrame>,
53
- exceptionId: number,
54
- ) => void;
55
- // TODO(T53311281): This is a noop on iOS now. Implement it.
56
- +dismissRedbox?: () => void;
57
- }
58
-
59
- const NativeModule =
60
- TurboModuleRegistry.getEnforcing<Spec>('ExceptionsManager');
61
-
62
- const ExceptionsManager = {
63
- reportFatalException(
64
- message: string,
65
- stack: Array<StackFrame>,
66
- exceptionId: number,
67
- ) {
68
- NativeModule.reportFatalException(message, stack, exceptionId);
69
- },
70
- reportSoftException(
71
- message: string,
72
- stack: Array<StackFrame>,
73
- exceptionId: number,
74
- ) {
75
- NativeModule.reportSoftException(message, stack, exceptionId);
76
- },
77
- updateExceptionMessage(
78
- message: string,
79
- stack: Array<StackFrame>,
80
- exceptionId: number,
81
- ) {
82
- NativeModule.updateExceptionMessage(message, stack, exceptionId);
83
- },
84
- dismissRedbox(): void {
85
- if (Platform.OS !== 'ios' && NativeModule.dismissRedbox) {
86
- // TODO(T53311281): This is a noop on iOS now. Implement it.
87
- NativeModule.dismissRedbox();
88
- }
89
- },
90
- reportException(data: ExceptionData): void {
91
- if (NativeModule.reportException) {
92
- NativeModule.reportException(data);
93
- return;
94
- }
95
- if (data.isFatal) {
96
- ExceptionsManager.reportFatalException(data.message, data.stack, data.id);
97
- } else {
98
- ExceptionsManager.reportSoftException(data.message, data.stack, data.id);
99
- }
100
- },
101
- };
102
-
103
- export default ExceptionsManager;
11
+ export * from '../../src/private/specs/modules/NativeExceptionsManager';
12
+ import NativeExceptionsManager from '../../src/private/specs/modules/NativeExceptionsManager';
13
+ export default NativeExceptionsManager;
@@ -1,17 +1,23 @@
1
1
  /**
2
- * @generated by scripts/set-rn-version.js
3
- *
4
2
  * Copyright (c) Meta Platforms, Inc. and affiliates.
5
3
  *
6
4
  * This source code is licensed under the MIT license found in the
7
5
  * LICENSE file in the root directory of this source tree.
8
6
  *
9
7
  * @flow strict
8
+ * @generated by scripts/releases/set-rn-version.js
10
9
  */
11
10
 
12
- exports.version = {
11
+ const version: $ReadOnly<{
12
+ major: number,
13
+ minor: number,
14
+ patch: number,
15
+ prerelease: string | null,
16
+ }> = {
13
17
  major: 0,
14
- minor: 73,
15
- patch: 6,
16
- prerelease: null,
18
+ minor: 74,
19
+ patch: 0,
20
+ prerelease: 'rc.0',
17
21
  };
22
+
23
+ module.exports = {version};
@@ -21,7 +21,7 @@ const ReactNativeVersion = require('./ReactNativeVersion');
21
21
  * implementations for other platforms (ex: Windows) may override this module
22
22
  * and rely on its existence as a separate module.
23
23
  */
24
- exports.checkVersions = function checkVersions(): void {
24
+ const checkVersions = function checkVersions(): void {
25
25
  const nativeVersion = Platform.constants.reactNativeVersion;
26
26
  if (
27
27
  ReactNativeVersion.version.major !== nativeVersion.major ||
@@ -29,20 +29,18 @@ exports.checkVersions = function checkVersions(): void {
29
29
  ) {
30
30
  console.error(
31
31
  `React Native version mismatch.\n\nJavaScript version: ${_formatVersion(
32
- ReactNativeVersion.version,
32
+ (ReactNativeVersion.version: $FlowFixMe),
33
33
  )}\n` +
34
34
  `Native version: ${_formatVersion(nativeVersion)}\n\n` +
35
35
  'Make sure that you have rebuilt the native code. If the problem ' +
36
36
  'persists try clearing the Watchman and packager caches with ' +
37
- '`watchman watch-del-all && react-native start --reset-cache`.',
37
+ '`watchman watch-del-all && npx react-native start --reset-cache`.',
38
38
  );
39
39
  }
40
40
  };
41
41
 
42
42
  function _formatVersion(
43
- version:
44
- | (typeof Platform)['constants']['reactNativeVersion']
45
- | {major: number, minor: number, patch: number, prerelease: ?string},
43
+ version: (typeof Platform)['constants']['reactNativeVersion'],
46
44
  ): string {
47
45
  return (
48
46
  `${version.major}.${version.minor}.${version.patch}` +
@@ -50,3 +48,5 @@ function _formatVersion(
50
48
  (version.prerelease != undefined ? `-${version.prerelease}` : '')
51
49
  );
52
50
  }
51
+
52
+ module.exports = {checkVersions};
@@ -21,7 +21,7 @@ const ReactNativeVersion = require('./ReactNativeVersion');
21
21
  * implementations for other platforms (ex: Windows) may override this module
22
22
  * and rely on its existence as a separate module.
23
23
  */
24
- exports.checkVersions = function checkVersions(): void {
24
+ const checkVersions = function checkVersions(): void {
25
25
  const nativeVersion = Platform.constants.reactNativeVersion;
26
26
  if (
27
27
  ReactNativeVersion.version.major !== nativeVersion.major ||
@@ -31,20 +31,18 @@ exports.checkVersions = function checkVersions(): void {
31
31
  console.warn(
32
32
  // Win32]
33
33
  `React Native version mismatch.\n\nJavaScript version: ${_formatVersion(
34
- ReactNativeVersion.version,
34
+ (ReactNativeVersion.version: $FlowFixMe),
35
35
  )}\n` +
36
36
  `Native version: ${_formatVersion(nativeVersion)}\n\n` +
37
37
  'Make sure that you have rebuilt the native code. If the problem ' +
38
38
  'persists try clearing the Watchman and packager caches with ' +
39
- '`watchman watch-del-all && react-native start --reset-cache`.',
39
+ '`watchman watch-del-all && npx react-native start --reset-cache`.',
40
40
  );
41
41
  }
42
42
  };
43
43
 
44
44
  function _formatVersion(
45
- version:
46
- | (typeof Platform)['constants']['reactNativeVersion']
47
- | {major: number, minor: number, patch: number, prerelease: ?string},
45
+ version: (typeof Platform)['constants']['reactNativeVersion'],
48
46
  ): string {
49
47
  return (
50
48
  `${version.major}.${version.minor}.${version.patch}` +
@@ -52,3 +50,5 @@ function _formatVersion(
52
50
  (version.prerelease != undefined ? `-${version.prerelease}` : '')
53
51
  );
54
52
  }
53
+
54
+ module.exports = {checkVersions};
@@ -8,21 +8,6 @@
8
8
  * @format
9
9
  */
10
10
 
11
- import type {TurboModule} from '../../TurboModule/RCTExport';
12
-
13
- import * as TurboModuleRegistry from '../../TurboModule/TurboModuleRegistry';
14
-
15
- export interface Spec extends TurboModule {
16
- +fetchSegment: (
17
- segmentId: number,
18
- options: Object, // flowlint-line unclear-type: off
19
- callback: (error: ?Object) => void, // flowlint-line unclear-type: off
20
- ) => void;
21
- +getSegment?: (
22
- segmentId: number,
23
- options: Object, // flowlint-line unclear-type: off
24
- callback: (error: ?Object, path: ?string) => void, // flowlint-line unclear-type: off
25
- ) => void;
26
- }
27
-
28
- export default (TurboModuleRegistry.getEnforcing<Spec>('SegmentFetcher'): Spec);
11
+ export * from '../../../src/private/specs/modules/NativeSegmentFetcher';
12
+ import NativeSegmentFetcher from '../../../src/private/specs/modules/NativeSegmentFetcher';
13
+ export default NativeSegmentFetcher;
@@ -8,19 +8,6 @@
8
8
  * @format
9
9
  */
10
10
 
11
- import type {TurboModule} from '../../TurboModule/RCTExport';
12
-
13
- import * as TurboModuleRegistry from '../../TurboModule/TurboModuleRegistry';
14
-
15
- export interface Spec extends TurboModule {
16
- +createTimer: (
17
- callbackID: number,
18
- duration: number,
19
- jsSchedulingTime: number,
20
- repeats: boolean,
21
- ) => void;
22
- +deleteTimer: (timerID: number) => void;
23
- +setSendIdleEvents: (sendIdleEvents: boolean) => void;
24
- }
25
-
26
- export default (TurboModuleRegistry.get<Spec>('Timing'): ?Spec);
11
+ export * from '../../../src/private/specs/modules/NativeTiming';
12
+ import NativeTiming from '../../../src/private/specs/modules/NativeTiming';
13
+ export default NativeTiming;
@@ -0,0 +1,42 @@
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
+ */
10
+
11
+ 'use strict';
12
+
13
+ type Module = {...};
14
+ type RegisterCallableModule = (
15
+ name: string,
16
+ moduleOrFactory: Module | (void => Module),
17
+ ) => void;
18
+
19
+ const registerCallableModule: RegisterCallableModule = (function () {
20
+ if (global.RN$Bridgeless === true) {
21
+ return (name, moduleOrFactory) => {
22
+ if (typeof moduleOrFactory === 'function') {
23
+ global.RN$registerCallableModule(name, moduleOrFactory);
24
+ return;
25
+ }
26
+
27
+ global.RN$registerCallableModule(name, () => moduleOrFactory);
28
+ };
29
+ }
30
+
31
+ const BatchedBridge = require('../BatchedBridge/BatchedBridge');
32
+ return (name, moduleOrFactory) => {
33
+ if (typeof moduleOrFactory === 'function') {
34
+ BatchedBridge.registerLazyCallableModule(name, moduleOrFactory);
35
+ return;
36
+ }
37
+
38
+ BatchedBridge.registerCallableModule(name, moduleOrFactory);
39
+ };
40
+ })();
41
+
42
+ export default registerCallableModule;
@@ -8,8 +8,8 @@
8
8
  * @format
9
9
  */
10
10
 
11
- import NativePerformance from '../WebPerformance/NativePerformance';
12
- import Performance from '../WebPerformance/Performance';
11
+ import NativePerformance from '../../src/private/webapis/performance/NativePerformance';
12
+ import Performance from '../../src/private/webapis/performance/Performance';
13
13
 
14
14
  // In case if the native implementation of the Performance API is available, use it,
15
15
  // otherwise fall back to the legacy/default one, which only defines 'Performance.now()'
@@ -12,5 +12,7 @@ import {polyfillGlobal} from '../Utilities/PolyfillFunctions';
12
12
 
13
13
  polyfillGlobal(
14
14
  'PerformanceObserver',
15
- () => require('../WebPerformance/PerformanceObserver').default,
15
+ () =>
16
+ require('../../src/private/webapis/performance/PerformanceObserver')
17
+ .default,
16
18
  );
@@ -0,0 +1,111 @@
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
+ */
10
+
11
+ import type {
12
+ ElementRectangle,
13
+ TraceUpdate,
14
+ } from './DebuggingOverlayNativeComponent';
15
+
16
+ import View from '../Components/View/View';
17
+ import UIManager from '../ReactNative/UIManager';
18
+ import StyleSheet from '../StyleSheet/StyleSheet';
19
+ import DebuggingOverlayNativeComponent, {
20
+ Commands,
21
+ } from './DebuggingOverlayNativeComponent';
22
+ import * as React from 'react';
23
+
24
+ const {useRef, useImperativeHandle} = React;
25
+ const isNativeComponentReady =
26
+ UIManager.hasViewManagerConfig('DebuggingOverlay');
27
+
28
+ type DebuggingOverlayHandle = {
29
+ highlightTraceUpdates(updates: TraceUpdate[]): void,
30
+ highlightElements(elements: ElementRectangle[]): void,
31
+ clearElementsHighlight(): void,
32
+ };
33
+
34
+ function DebuggingOverlay(
35
+ _props: {},
36
+ ref: React.RefSetter<DebuggingOverlayHandle>,
37
+ ): React.Node {
38
+ useImperativeHandle(
39
+ ref,
40
+ () => ({
41
+ highlightTraceUpdates(updates) {
42
+ if (!isNativeComponentReady) {
43
+ return;
44
+ }
45
+
46
+ const nonEmptyRectangles = updates.filter(
47
+ ({rectangle, color}) => rectangle.width >= 0 && rectangle.height >= 0,
48
+ );
49
+
50
+ if (nativeComponentRef.current != null) {
51
+ Commands.highlightTraceUpdates(
52
+ nativeComponentRef.current,
53
+ nonEmptyRectangles,
54
+ );
55
+ }
56
+ },
57
+ highlightElements(elements) {
58
+ if (!isNativeComponentReady) {
59
+ return;
60
+ }
61
+
62
+ if (nativeComponentRef.current != null) {
63
+ Commands.highlightElements(nativeComponentRef.current, elements);
64
+ }
65
+ },
66
+ clearElementsHighlight() {
67
+ if (!isNativeComponentReady) {
68
+ return;
69
+ }
70
+
71
+ if (nativeComponentRef.current != null) {
72
+ Commands.clearElementsHighlights(nativeComponentRef.current);
73
+ }
74
+ },
75
+ }),
76
+ [],
77
+ );
78
+
79
+ const nativeComponentRef = useRef<React.ElementRef<
80
+ typeof DebuggingOverlayNativeComponent,
81
+ > | null>(null);
82
+
83
+ return (
84
+ isNativeComponentReady && (
85
+ <View pointerEvents="none" style={styles.overlay}>
86
+ <DebuggingOverlayNativeComponent
87
+ ref={nativeComponentRef}
88
+ style={styles.overlay}
89
+ />
90
+ </View>
91
+ )
92
+ );
93
+ }
94
+
95
+ const styles = StyleSheet.create({
96
+ overlay: {
97
+ position: 'absolute',
98
+ top: 0,
99
+ bottom: 0,
100
+ left: 0,
101
+ right: 0,
102
+ },
103
+ });
104
+
105
+ const DebuggingOverlayWithForwardedRef: React.AbstractComponent<
106
+ {},
107
+ DebuggingOverlayHandle,
108
+ React.Node,
109
+ > = React.forwardRef(DebuggingOverlay);
110
+
111
+ export default DebuggingOverlayWithForwardedRef;
@@ -0,0 +1,13 @@
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
+ * @format
8
+ * @flow strict-local
9
+ */
10
+
11
+ export * from '../../src/private/specs/components/DebuggingOverlayNativeComponent';
12
+ import DebuggingOverlayNativeComponent from '../../src/private/specs/components/DebuggingOverlayNativeComponent';
13
+ export default DebuggingOverlayNativeComponent;