@office-iss/react-native-win32 0.0.0-canary.284 → 0.0.0-canary.286

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 (473) hide show
  1. package/.flowconfig +1 -1
  2. package/CHANGELOG.json +55 -1
  3. package/CHANGELOG.md +28 -8
  4. package/IntegrationTests/LayoutEventsTest.js +16 -11
  5. package/Libraries/ActionSheetIOS/ActionSheetIOS.js +38 -17
  6. package/Libraries/ActionSheetIOS/NativeActionSheetManager.js +2 -2
  7. package/Libraries/Alert/Alert.js +32 -9
  8. package/Libraries/Alert/Alert.win32.js +31 -8
  9. package/Libraries/Alert/NativeAlertManager.js +2 -2
  10. package/Libraries/Animated/NativeAnimatedModule.js +2 -2
  11. package/Libraries/Animated/NativeAnimatedTurboModule.js +2 -2
  12. package/Libraries/Animated/animations/Animation.js +1 -4
  13. package/Libraries/Animated/createAnimatedComponent.js +3 -3
  14. package/Libraries/Animated/nodes/AnimatedObject.js +1 -0
  15. package/Libraries/Animated/useAnimatedProps.js +4 -294
  16. package/Libraries/AppState/AppState.js +24 -7
  17. package/Libraries/AppState/NativeAppState.js +2 -2
  18. package/Libraries/BatchedBridge/MessageQueue.js +3 -2
  19. package/Libraries/BatchedBridge/NativeModules.js +2 -1
  20. package/Libraries/Blob/Blob.js +1 -1
  21. package/Libraries/Blob/FileReader.js +8 -174
  22. package/Libraries/Blob/FileReader_new.js +231 -0
  23. package/Libraries/Blob/FileReader_old.js +186 -0
  24. package/Libraries/Blob/NativeBlobModule.js +2 -2
  25. package/Libraries/Blob/NativeFileReaderModule.js +2 -2
  26. package/Libraries/Blob/URL.js +1 -1
  27. package/Libraries/Blob/URLSearchParams.js +9 -10
  28. package/Libraries/BugReporting/NativeBugReporting.js +2 -2
  29. package/Libraries/Components/AccessibilityInfo/NativeAccessibilityInfo.js +2 -2
  30. package/Libraries/Components/AccessibilityInfo/NativeAccessibilityInfoWin32.js +2 -2
  31. package/Libraries/Components/AccessibilityInfo/NativeAccessibilityManager.js +2 -2
  32. package/Libraries/Components/ActivityIndicator/ActivityIndicatorViewNativeComponent.js +2 -2
  33. package/Libraries/Components/Button.js +3 -3
  34. package/Libraries/Components/Button.win32.js +3 -6
  35. package/Libraries/Components/Clipboard/NativeClipboard.js +2 -2
  36. package/Libraries/Components/DrawerAndroid/AndroidDrawerLayoutNativeComponent.js +2 -2
  37. package/Libraries/Components/DrawerAndroid/DrawerLayoutAndroid.js +2 -1
  38. package/Libraries/Components/Keyboard/KeyboardAvoidingView.js +14 -18
  39. package/Libraries/Components/Keyboard/NativeKeyboardObserver.js +2 -2
  40. package/Libraries/Components/LayoutConformance/LayoutConformance.js +1 -1
  41. package/Libraries/Components/Pressable/Pressable.js +9 -9
  42. package/Libraries/Components/Pressable/Pressable.win32.js +9 -9
  43. package/Libraries/Components/Pressable/useAndroidRippleForView.js +7 -7
  44. package/Libraries/Components/ProgressBarAndroid/ProgressBarAndroid.js +7 -1
  45. package/Libraries/Components/ProgressBarAndroid/ProgressBarAndroidNativeComponent.js +2 -2
  46. package/Libraries/Components/RefreshControl/AndroidSwipeRefreshLayoutNativeComponent.js +2 -2
  47. package/Libraries/Components/RefreshControl/PullToRefreshViewNativeComponent.js +2 -2
  48. package/Libraries/Components/RefreshControl/RefreshControl.js +1 -1
  49. package/Libraries/Components/SafeAreaView/RCTSafeAreaViewNativeComponent.js +2 -2
  50. package/Libraries/Components/ScrollView/AndroidHorizontalScrollContentViewNativeComponent.js +2 -2
  51. package/Libraries/Components/ScrollView/ScrollView.js +74 -59
  52. package/Libraries/Components/ScrollView/ScrollViewNativeComponent.js +5 -5
  53. package/Libraries/Components/ScrollView/ScrollViewNativeComponentType.js +5 -2
  54. package/Libraries/Components/ScrollView/ScrollViewStickyHeader.js +3 -3
  55. package/Libraries/Components/Sound/NativeSoundManager.js +2 -2
  56. package/Libraries/Components/StatusBar/NativeStatusBarManagerAndroid.js +2 -2
  57. package/Libraries/Components/StatusBar/NativeStatusBarManagerIOS.js +2 -2
  58. package/Libraries/Components/Switch/AndroidSwitchNativeComponent.js +2 -2
  59. package/Libraries/Components/Switch/Switch.js +2 -2
  60. package/Libraries/Components/Switch/SwitchNativeComponent.js +2 -2
  61. package/Libraries/Components/TextInput/InputAccessoryView.js +4 -2
  62. package/Libraries/Components/TextInput/RCTInputAccessoryViewNativeComponent.js +2 -2
  63. package/Libraries/Components/TextInput/RCTTextInputViewConfig.js +4 -2
  64. package/Libraries/Components/TextInput/TextInput.flow.js +106 -94
  65. package/Libraries/Components/TextInput/TextInput.js +112 -103
  66. package/Libraries/Components/TextInput/TextInput.win32.js +114 -105
  67. package/Libraries/Components/TextInput/TextInputState.js +4 -2
  68. package/Libraries/Components/TextInput/TextInputState.win32.js +4 -2
  69. package/Libraries/Components/ToastAndroid/NativeToastAndroid.js +2 -2
  70. package/Libraries/Components/ToastAndroid/ToastAndroid.android.js +1 -1
  71. package/Libraries/Components/ToastAndroid/ToastAndroid.js +1 -1
  72. package/Libraries/Components/ToastAndroid/ToastAndroid.win32.js +1 -1
  73. package/Libraries/Components/Touchable/BoundingDimensions.js +1 -1
  74. package/Libraries/Components/Touchable/PooledClass.js +1 -1
  75. package/Libraries/Components/Touchable/Position.js +1 -1
  76. package/Libraries/Components/Touchable/Touchable.js +16 -16
  77. package/Libraries/Components/Touchable/Touchable.win32.js +16 -16
  78. package/Libraries/Components/Touchable/TouchableBounce.js +1 -1
  79. package/Libraries/Components/Touchable/TouchableHighlight.js +1 -1
  80. package/Libraries/Components/Touchable/TouchableNativeFeedback.js +3 -3
  81. package/Libraries/Components/Touchable/TouchableNativeFeedback.win32.js +1 -1
  82. package/Libraries/Components/Touchable/TouchableOpacity.js +1 -1
  83. package/Libraries/Components/Touchable/TouchableWithoutFeedback.js +9 -9
  84. package/Libraries/Components/UnimplementedViews/UnimplementedNativeViewNativeComponent.js +2 -2
  85. package/Libraries/Components/UnimplementedViews/UnimplementedView.js +2 -2
  86. package/Libraries/Components/View/ReactNativeStyleAttributes.js +17 -3
  87. package/Libraries/Components/View/ReactNativeViewAttributes.js +1 -1
  88. package/Libraries/Components/View/ReactNativeViewAttributes.win32.js +1 -1
  89. package/Libraries/Components/View/View.js +1 -1
  90. package/Libraries/Components/View/View.win32.js +1 -1
  91. package/Libraries/Components/View/ViewAccessibility.js +243 -3
  92. package/Libraries/Components/View/ViewAccessibility.win32.js +243 -3
  93. package/Libraries/Components/View/ViewPropTypes.d.ts +14 -14
  94. package/Libraries/Components/View/ViewPropTypes.js +35 -226
  95. package/Libraries/Components/View/ViewPropTypes.win32.js +37 -229
  96. package/Libraries/Core/Devtools/getDevServer.js +1 -3
  97. package/Libraries/Core/Devtools/loadBundleFromServer.js +4 -2
  98. package/Libraries/Core/Devtools/loadBundleFromServer.win32.js +4 -2
  99. package/Libraries/Core/Devtools/openFileInEditor.js +2 -4
  100. package/Libraries/Core/Devtools/openURLInBrowser.js +5 -4
  101. package/Libraries/Core/Devtools/parseErrorStack.js +4 -4
  102. package/Libraries/Core/Devtools/parseHermesStack.js +2 -2
  103. package/Libraries/Core/Devtools/symbolicateStackTrace.js +6 -5
  104. package/Libraries/Core/ExceptionsManager.js +6 -4
  105. package/Libraries/Core/InitializeCore.js +7 -3
  106. package/Libraries/Core/NativeExceptionsManager.js +2 -2
  107. package/Libraries/Core/ReactFiberErrorDialog.js +2 -2
  108. package/Libraries/Core/ReactNativeVersion.js +1 -1
  109. package/Libraries/Core/ReactNativeVersionCheck.js +2 -4
  110. package/Libraries/Core/ReactNativeVersionCheck.win32.js +2 -4
  111. package/Libraries/Core/SegmentFetcher/NativeSegmentFetcher.js +2 -2
  112. package/Libraries/Core/Timers/JSTimers.js +7 -5
  113. package/Libraries/Core/Timers/NativeTiming.js +2 -2
  114. package/Libraries/Core/Timers/immediateShim.js +2 -9
  115. package/Libraries/Core/setUpBatchedBridge.js +13 -8
  116. package/Libraries/Core/setUpDeveloperTools.js +5 -36
  117. package/Libraries/Core/setUpErrorHandling.js +1 -6
  118. package/Libraries/Core/setUpReactDevTools.js +23 -5
  119. package/Libraries/Core/setUpReactRefresh.js +1 -1
  120. package/Libraries/Core/setUpTimers.js +17 -17
  121. package/Libraries/Core/setUpXHR.js +6 -3
  122. package/Libraries/Debugging/DebuggingOverlayNativeComponent.js +2 -2
  123. package/Libraries/EventEmitter/NativeEventEmitter.js +8 -2
  124. package/Libraries/EventEmitter/RCTDeviceEventEmitter.js +5 -4
  125. package/Libraries/EventEmitter/RCTEventEmitter.js +1 -1
  126. package/Libraries/EventEmitter/RCTNativeAppEventEmitter.js +1 -1
  127. package/Libraries/EventEmitter/__mocks__/NativeEventEmitter.js +3 -2
  128. package/Libraries/Events/CustomEvent.js +1 -1
  129. package/Libraries/Events/EventPolyfill.js +2 -2
  130. package/Libraries/Image/AssetRegistry.js +3 -1
  131. package/Libraries/Image/AssetSourceResolver.js +2 -2
  132. package/Libraries/Image/Image.android.js +3 -1
  133. package/Libraries/Image/Image.ios.js +1 -1
  134. package/Libraries/Image/Image.win32.js +1 -1
  135. package/Libraries/Image/ImageBackground.js +1 -1
  136. package/Libraries/Image/ImageProps.js +8 -5
  137. package/Libraries/Image/ImageViewNativeComponent.js +5 -6
  138. package/Libraries/Image/NativeImageEditor.js +2 -2
  139. package/Libraries/Image/NativeImageLoaderAndroid.js +2 -2
  140. package/Libraries/Image/NativeImageLoaderIOS.js +2 -2
  141. package/Libraries/Image/NativeImageLoaderWin32.js +2 -2
  142. package/Libraries/Image/NativeImageStoreAndroid.js +2 -2
  143. package/Libraries/Image/NativeImageStoreIOS.js +2 -2
  144. package/Libraries/Image/RelativeImageStub.js +3 -1
  145. package/Libraries/Image/nativeImageSource.js +1 -1
  146. package/Libraries/Image/resolveAssetSource.js +4 -2
  147. package/Libraries/Image/resolveAssetSource.win32.js +1 -1
  148. package/Libraries/Interaction/FrameRateLogger.js +1 -1
  149. package/Libraries/Interaction/InteractionManager.js +9 -7
  150. package/Libraries/Interaction/InteractionManagerStub.js +10 -2
  151. package/Libraries/Interaction/JSEventLoopWatchdog.js +2 -2
  152. package/Libraries/Interaction/NativeFrameRateLogger.js +2 -2
  153. package/Libraries/Interaction/PanResponder.js +34 -31
  154. package/Libraries/Interaction/TaskQueue.js +2 -2
  155. package/Libraries/Interaction/TouchHistoryMath.js +1 -1
  156. package/Libraries/LayoutAnimation/LayoutAnimation.js +20 -6
  157. package/Libraries/Linking/Linking.d.ts +3 -3
  158. package/Libraries/Linking/Linking.js +10 -8
  159. package/Libraries/Linking/NativeIntentAndroid.js +2 -2
  160. package/Libraries/Linking/NativeLinkingManager.js +2 -2
  161. package/Libraries/Lists/FillRateHelper.js +4 -4
  162. package/Libraries/Lists/FlatList.js +14 -14
  163. package/Libraries/Lists/SectionList.js +3 -1
  164. package/Libraries/Lists/SectionListModern.js +3 -1
  165. package/Libraries/Lists/ViewabilityHelper.js +4 -3
  166. package/Libraries/Lists/VirtualizeUtils.js +3 -5
  167. package/Libraries/Lists/VirtualizedList.js +6 -6
  168. package/Libraries/Lists/VirtualizedListContext.js +5 -5
  169. package/Libraries/Lists/VirtualizedSectionList.js +5 -3
  170. package/Libraries/Lists/__flowtests__/FlatList-flowtest.js +1 -1
  171. package/Libraries/LogBox/Data/LogBoxData.js +1 -1
  172. package/Libraries/LogBox/LogBox.js +9 -1
  173. package/Libraries/LogBox/UI/AnsiHighlight.js +7 -3
  174. package/Libraries/LogBox/UI/LogBoxButton.js +4 -2
  175. package/Libraries/LogBox/UI/LogBoxInspector.js +1 -1
  176. package/Libraries/LogBox/UI/LogBoxInspectorFooter.js +11 -3
  177. package/Libraries/LogBox/UI/LogBoxInspectorFooterButton.js +2 -0
  178. package/Libraries/LogBox/UI/LogBoxInspectorHeader.js +8 -2
  179. package/Libraries/LogBox/UI/LogBoxInspectorHeader.win32.js +8 -2
  180. package/Libraries/LogBox/UI/LogBoxInspectorHeaderButton.js +2 -0
  181. package/Libraries/LogBox/UI/LogBoxInspectorMessageHeader.js +4 -2
  182. package/Libraries/LogBox/UI/LogBoxInspectorReactFrames.js +3 -1
  183. package/Libraries/LogBox/UI/LogBoxInspectorReactFrames.win32.js +3 -1
  184. package/Libraries/LogBox/UI/LogBoxInspectorSourceMapStatus.js +2 -2
  185. package/Libraries/LogBox/UI/LogBoxInspectorStackFrame.js +5 -3
  186. package/Libraries/LogBox/UI/LogBoxInspectorStackFrame.win32.js +5 -3
  187. package/Libraries/LogBox/UI/LogBoxNotification.js +6 -2
  188. package/Libraries/LogBox/UI/LogBoxNotificationCountBadge.js +3 -1
  189. package/Libraries/LogBox/UI/LogBoxNotificationDismissButton.js +2 -0
  190. package/Libraries/LogBox/UI/LogBoxNotificationMessage.js +4 -1
  191. package/Libraries/Modal/Modal.js +77 -84
  192. package/Libraries/Modal/NativeModalManager.js +2 -2
  193. package/Libraries/Modal/RCTModalHostViewNativeComponent.js +2 -2
  194. package/Libraries/NativeComponent/BaseViewConfig.android.js +16 -6
  195. package/Libraries/NativeComponent/BaseViewConfig.ios.js +19 -9
  196. package/Libraries/NativeComponent/BaseViewConfig.win32.js +19 -9
  197. package/Libraries/NativeComponent/StaticViewConfigValidator.js +5 -1
  198. package/Libraries/NativeModules/specs/NativeDevMenu.js +2 -2
  199. package/Libraries/NativeModules/specs/NativeDevSettings.js +2 -2
  200. package/Libraries/NativeModules/specs/NativeDeviceEventManager.js +2 -2
  201. package/Libraries/NativeModules/specs/NativeDialogManagerAndroid.js +2 -2
  202. package/Libraries/NativeModules/specs/NativeLogBox.js +2 -2
  203. package/Libraries/NativeModules/specs/NativeRedBox.js +2 -2
  204. package/Libraries/NativeModules/specs/NativeSourceCode.js +2 -2
  205. package/Libraries/Network/FormData.js +1 -1
  206. package/Libraries/Network/NativeNetworkingAndroid.js +2 -2
  207. package/Libraries/Network/NativeNetworkingIOS.js +2 -2
  208. package/Libraries/Network/RCTNetworking.android.js +1 -1
  209. package/Libraries/Network/RCTNetworking.ios.js +1 -1
  210. package/Libraries/Network/RCTNetworking.win32.js +1 -1
  211. package/Libraries/Network/XMLHttpRequest.js +10 -685
  212. package/Libraries/Network/XMLHttpRequest_new.js +791 -0
  213. package/Libraries/Network/XMLHttpRequest_old.js +698 -0
  214. package/Libraries/Network/convertRequestBody.js +4 -3
  215. package/Libraries/Network/fetch.js +4 -3
  216. package/Libraries/PermissionsAndroid/NativePermissionsAndroid.js +2 -2
  217. package/Libraries/PermissionsAndroid/PermissionsAndroid.js +63 -61
  218. package/Libraries/Pressability/Pressability.js +23 -23
  219. package/Libraries/Pressability/Pressability.win32.js +23 -23
  220. package/Libraries/PushNotificationIOS/NativePushNotificationManagerIOS.js +2 -2
  221. package/Libraries/PushNotificationIOS/PushNotificationIOS.js +119 -16
  222. package/Libraries/ReactNative/AppContainer-dev.js +4 -3
  223. package/Libraries/ReactNative/AppContainer.js +1 -1
  224. package/Libraries/ReactNative/AppRegistry.js +4 -4
  225. package/Libraries/ReactNative/BridgelessUIManager.js +1 -1
  226. package/Libraries/ReactNative/FabricUIManager.js +18 -8
  227. package/Libraries/ReactNative/I18nManager.js +1 -1
  228. package/Libraries/ReactNative/NativeHeadlessJsTaskSupport.js +2 -2
  229. package/Libraries/ReactNative/NativeI18nManager.js +2 -2
  230. package/Libraries/ReactNative/NativeUIManager.js +2 -2
  231. package/Libraries/ReactNative/PaperUIManager.js +5 -5
  232. package/Libraries/ReactNative/PaperUIManager.win32.js +5 -5
  233. package/Libraries/ReactNative/ReactFabricPublicInstance/ReactFabricPublicInstance.js +85 -30
  234. package/Libraries/ReactNative/ReactNativeFeatureFlags.js +1 -1
  235. package/Libraries/ReactNative/ReactNativeRuntimeDiagnostics.js +1 -1
  236. package/Libraries/ReactNative/RendererImplementation.js +9 -0
  237. package/Libraries/ReactNative/RootTag.js +1 -1
  238. package/Libraries/ReactNative/UIManager.d.ts +1 -0
  239. package/Libraries/ReactNative/UIManager.js +3 -3
  240. package/Libraries/ReactNative/UIManagerProperties.js +1 -1
  241. package/Libraries/ReactNative/getNativeComponentAttributes.js +10 -9
  242. package/Libraries/ReactNative/requireNativeComponent.js +2 -1
  243. package/Libraries/ReactPrivate/ReactNativePrivateInterface.js +15 -8
  244. package/Libraries/Renderer/shims/ReactNativeTypes.js +4 -1
  245. package/Libraries/Settings/NativeSettingsManager.js +2 -2
  246. package/Libraries/Settings/Settings.ios.js +1 -1
  247. package/Libraries/Settings/Settings.js +3 -3
  248. package/Libraries/Settings/Settings.win32.js +3 -3
  249. package/Libraries/Share/NativeShareModule.js +2 -2
  250. package/Libraries/Share/Share.js +11 -4
  251. package/Libraries/StyleSheet/PlatformColorValueTypes.ios.js +1 -1
  252. package/Libraries/StyleSheet/StyleSheet.js +3 -2
  253. package/Libraries/StyleSheet/StyleSheet.win32.js +4 -3
  254. package/Libraries/StyleSheet/__flowtests__/StyleSheet-flowtest.js +1 -1
  255. package/Libraries/StyleSheet/flattenStyle.js +1 -1
  256. package/Libraries/StyleSheet/normalizeColor.js +1 -1
  257. package/Libraries/StyleSheet/processAspectRatio.js +1 -1
  258. package/Libraries/StyleSheet/processBoxShadow.js +4 -0
  259. package/Libraries/StyleSheet/processColor.js +2 -2
  260. package/Libraries/StyleSheet/processColorArray.js +1 -1
  261. package/Libraries/StyleSheet/processFilter.js +4 -0
  262. package/Libraries/StyleSheet/processFontVariant.js +1 -1
  263. package/Libraries/StyleSheet/processTransform.js +1 -1
  264. package/Libraries/StyleSheet/setNormalizedColorAlpha.js +1 -1
  265. package/Libraries/Text/Text.js +16 -16
  266. package/Libraries/Text/Text.win32.js +16 -16
  267. package/Libraries/Text/TextAncestor.js +2 -2
  268. package/Libraries/Text/TextNativeComponent.js +2 -2
  269. package/Libraries/Text/TextNativeComponent.win32.js +2 -2
  270. package/Libraries/Text/TextProps.js +11 -11
  271. package/Libraries/Text/TextProps.win32.js +11 -11
  272. package/Libraries/TurboModule/samples/NativeSampleTurboModule.js +2 -2
  273. package/Libraries/Types/CodegenTypes.js +3 -3
  274. package/Libraries/Types/CoreEventTypes.js +103 -70
  275. package/Libraries/Types/CoreEventTypes.win32.js +115 -77
  276. package/Libraries/UTFSequence.js +2 -1
  277. package/Libraries/Utilities/Appearance.js +0 -8
  278. package/Libraries/Utilities/BackHandler.android.js +1 -1
  279. package/Libraries/Utilities/BackHandler.ios.js +5 -5
  280. package/Libraries/Utilities/BackHandler.win32.js +1 -1
  281. package/Libraries/Utilities/DevLoadingView.js +1 -1
  282. package/Libraries/Utilities/DevSettings.js +1 -1
  283. package/Libraries/Utilities/DeviceInfo.js +1 -1
  284. package/Libraries/Utilities/DeviceInfo.win32.js +1 -1
  285. package/Libraries/Utilities/FeatureDetection.js +2 -4
  286. package/Libraries/Utilities/FocusManager.win32.js +3 -3
  287. package/Libraries/Utilities/GlobalPerformanceLogger.js +1 -1
  288. package/Libraries/Utilities/HMRClient.js +5 -33
  289. package/Libraries/Utilities/HMRClientProdShim.js +1 -2
  290. package/Libraries/Utilities/NativeAppearance.js +2 -2
  291. package/Libraries/Utilities/NativeDevLoadingView.js +2 -2
  292. package/Libraries/Utilities/NativeDeviceInfo.js +2 -2
  293. package/Libraries/Utilities/NativePlatformConstantsAndroid.js +2 -2
  294. package/Libraries/Utilities/NativePlatformConstantsIOS.js +2 -2
  295. package/Libraries/Utilities/NativePlatformConstantsWin.js +2 -2
  296. package/Libraries/Utilities/Platform.android.js +2 -2
  297. package/Libraries/Utilities/Platform.ios.js +2 -2
  298. package/Libraries/Utilities/Platform.win32.js +2 -2
  299. package/Libraries/Utilities/{Platform.flow.win32.js → PlatformTypes.js} +1 -0
  300. package/Libraries/Utilities/PolyfillFunctions.js +3 -5
  301. package/Libraries/Utilities/RCTLog.js +1 -1
  302. package/Libraries/Utilities/ReactNativeTestTools.js +4 -5
  303. package/Libraries/Utilities/SceneTracker.js +1 -1
  304. package/Libraries/Utilities/__mocks__/GlobalPerformanceLogger.js +2 -2
  305. package/Libraries/Utilities/binaryToBase64.js +1 -1
  306. package/Libraries/Utilities/deepFreezeAndThrowOnMutationInDev.js +1 -1
  307. package/Libraries/Utilities/defineLazyObjectProperty.js +1 -1
  308. package/Libraries/Utilities/differ/deepDiffer.js +3 -3
  309. package/Libraries/Utilities/differ/insetsDiffer.js +3 -3
  310. package/Libraries/Utilities/differ/matricesDiffer.js +3 -6
  311. package/Libraries/Utilities/differ/pointsDiffer.js +3 -3
  312. package/Libraries/Utilities/differ/sizesDiffer.js +3 -3
  313. package/Libraries/Utilities/dismissKeyboard.js +3 -2
  314. package/Libraries/Utilities/infoLog.js +1 -1
  315. package/Libraries/Utilities/logError.js +1 -1
  316. package/Libraries/Utilities/mapWithSeparator.js +1 -1
  317. package/Libraries/Utilities/warnOnce.js +1 -1
  318. package/Libraries/Vibration/NativeVibration.js +2 -2
  319. package/Libraries/Vibration/Vibration.js +3 -3
  320. package/Libraries/WebSocket/NativeWebSocketModule.js +2 -2
  321. package/Libraries/WebSocket/WebSocket.js +8 -285
  322. package/Libraries/WebSocket/WebSocketEvent.js +1 -1
  323. package/Libraries/WebSocket/WebSocketInterceptor.js +39 -11
  324. package/Libraries/WebSocket/WebSocket_new.js +325 -0
  325. package/Libraries/WebSocket/WebSocket_old.js +297 -0
  326. package/Libraries/WebSocket/__mocks__/event-target-shim.js +1 -1
  327. package/Libraries/vendor/emitter/EventEmitter.js +21 -9
  328. package/index.js +138 -225
  329. package/index.win32.js +46 -39
  330. package/jest/mockScrollView.js +1 -1
  331. package/jest/setup.js +100 -67
  332. package/overrides.json +54 -65
  333. package/package.json +19 -19
  334. package/src/private/animated/createAnimatedPropsHook.js +360 -0
  335. package/src/private/animated/{useAnimatedPropsMemo.js → createAnimatedPropsMemoHook.js} +84 -32
  336. package/src/private/components/HScrollViewNativeComponents.js +1 -1
  337. package/src/private/components/SafeAreaView_INTERNAL_DO_NOT_USE.js +2 -2
  338. package/src/private/debugging/ReactDevToolsSettingsManager.android.js +1 -1
  339. package/src/private/debugging/ReactDevToolsSettingsManager.win32.js +1 -1
  340. package/src/private/devmenu/DevMenu.js +2 -2
  341. package/src/private/featureflags/ReactNativeFeatureFlags.js +39 -47
  342. package/src/private/featureflags/ReactNativeFeatureFlagsBase.js +5 -7
  343. package/src/private/featureflags/specs/NativeReactNativeFeatureFlags.js +6 -10
  344. package/{Libraries/Inspector → src/private/inspector}/BorderBox.js +3 -3
  345. package/{Libraries/Inspector → src/private/inspector}/BoxInspector.js +9 -6
  346. package/{Libraries/Inspector → src/private/inspector}/ElementBox.js +9 -8
  347. package/{Libraries/Inspector → src/private/inspector}/ElementProperties.js +16 -12
  348. package/{Libraries/Inspector → src/private/inspector}/Inspector.js +18 -15
  349. package/{Libraries/Inspector → src/private/inspector}/InspectorOverlay.js +7 -7
  350. package/{Libraries/Inspector → src/private/inspector}/InspectorPanel.js +12 -10
  351. package/{Libraries/Inspector → src/private/inspector}/NetworkOverlay.js +37 -22
  352. package/{Libraries/Inspector → src/private/inspector}/PerformanceOverlay.js +6 -5
  353. package/{Libraries/Inspector → src/private/inspector}/ReactDevToolsOverlay.js +11 -10
  354. package/{Libraries/Inspector → src/private/inspector}/StyleInspector.js +6 -6
  355. package/{Libraries/Network → src/private/inspector}/XHRInterceptor.js +5 -2
  356. package/{Libraries/Inspector → src/private/inspector}/getInspectorDataForViewAtPoint.js +5 -3
  357. package/{Libraries/Inspector → src/private/inspector}/resolveBoxStyle.js +3 -2
  358. package/src/private/renderer/errorhandling/ErrorHandlers.js +5 -5
  359. package/src/private/setup/setUpDOM.js +7 -2
  360. package/src/private/{specs → specs_DEPRECATED}/modules/NativeDevMenu.js +0 -1
  361. package/src/private/{specs → specs_DEPRECATED}/modules/NativeDevSettings.js +0 -1
  362. package/src/private/{specs → specs_DEPRECATED}/modules/NativeExceptionsManager.js +1 -1
  363. package/src/private/{specs → specs_DEPRECATED}/modules/NativePermissionsAndroid.js +5 -4
  364. package/src/private/specs_DEPRECATED/modules/NativeUIManager.js +184 -0
  365. package/src/private/webapis/dom/events/CustomEvent.js +38 -0
  366. package/src/private/webapis/dom/events/Event.js +236 -0
  367. package/src/private/webapis/dom/events/EventHandlerAttributes.js +130 -0
  368. package/src/private/webapis/dom/events/EventTarget.js +436 -0
  369. package/src/private/webapis/dom/events/internals/EventInternals.js +120 -0
  370. package/src/private/webapis/dom/events/internals/EventTargetInternals.js +52 -0
  371. package/src/private/webapis/dom/nodes/ReactNativeDocument.js +120 -0
  372. package/src/private/webapis/dom/nodes/ReactNativeElement.js +48 -25
  373. package/src/private/webapis/dom/nodes/ReadOnlyCharacterData.js +6 -5
  374. package/src/private/webapis/dom/nodes/ReadOnlyElement.js +25 -25
  375. package/src/private/webapis/dom/nodes/ReadOnlyNode.js +55 -77
  376. package/src/private/webapis/dom/nodes/internals/NodeInternals.js +144 -0
  377. package/src/private/webapis/dom/nodes/internals/ReactNativeDocumentElementInstanceHandle.js +55 -0
  378. package/src/private/webapis/dom/nodes/internals/ReactNativeDocumentInstanceHandle.js +44 -0
  379. package/src/private/webapis/dom/nodes/specs/NativeDOM.js +305 -194
  380. package/src/private/webapis/dom/oldstylecollections/HTMLCollection.js +2 -2
  381. package/src/private/webapis/dom/oldstylecollections/NodeList.js +2 -2
  382. package/src/private/webapis/{dom/oldstylecollections → geometry}/DOMRectList.js +3 -3
  383. package/src/private/webapis/html/events/MessageEvent.js +56 -0
  384. package/src/private/webapis/intersectionobserver/IntersectionObserverEntry.js +1 -1
  385. package/src/private/webapis/intersectionobserver/internals/IntersectionObserverManager.js +12 -9
  386. package/src/private/webapis/mutationobserver/internals/MutationObserverManager.js +4 -6
  387. package/src/private/webapis/websockets/events/CloseEvent.js +52 -0
  388. package/src/private/webapis/xhr/events/ProgressEvent.js +52 -0
  389. package/src-win/Libraries/Components/View/ViewPropTypes.d.ts +14 -14
  390. package/types/index.d.ts +0 -5
  391. package/Libraries/Animated/AnimatedWeb.js +0 -44
  392. package/Libraries/Inspector/Inspector.win32.js +0 -212
  393. package/Libraries/Inspector/InspectorOverlay.win32.js +0 -68
  394. package/Libraries/JSInspector/InspectorAgent.js +0 -27
  395. package/Libraries/JSInspector/JSInspector.js +0 -33
  396. package/Libraries/JSInspector/NetworkAgent.js +0 -296
  397. package/Libraries/Utilities/DebugEnvironment.js +0 -16
  398. package/Libraries/Utilities/Platform.flow.js +0 -91
  399. package/Libraries/YellowBox/YellowBoxDeprecated.d.ts +0 -19
  400. package/Libraries/YellowBox/YellowBoxDeprecated.js +0 -76
  401. package/flow/react.js +0 -15
  402. package/src/private/specs/modules/NativeCPUTime.js +0 -24
  403. package/src/private/specs/modules/NativeFantom.js +0 -43
  404. package/src/private/specs/modules/NativeUIManager.js +0 -111
  405. /package/src/private/{specs → specs_DEPRECATED}/components/ActivityIndicatorViewNativeComponent.js +0 -0
  406. /package/src/private/{specs → specs_DEPRECATED}/components/AndroidDrawerLayoutNativeComponent.js +0 -0
  407. /package/src/private/{specs → specs_DEPRECATED}/components/AndroidHorizontalScrollContentViewNativeComponent.js +0 -0
  408. /package/src/private/{specs → specs_DEPRECATED}/components/AndroidSwipeRefreshLayoutNativeComponent.js +0 -0
  409. /package/src/private/{specs → specs_DEPRECATED}/components/AndroidSwitchNativeComponent.js +0 -0
  410. /package/src/private/{specs → specs_DEPRECATED}/components/DebuggingOverlayNativeComponent.js +0 -0
  411. /package/src/private/{specs → specs_DEPRECATED}/components/ProgressBarAndroidNativeComponent.js +0 -0
  412. /package/src/private/{specs → specs_DEPRECATED}/components/PullToRefreshViewNativeComponent.js +0 -0
  413. /package/src/private/{specs → specs_DEPRECATED}/components/RCTInputAccessoryViewNativeComponent.js +0 -0
  414. /package/src/private/{specs → specs_DEPRECATED}/components/RCTModalHostViewNativeComponent.js +0 -0
  415. /package/src/private/{specs → specs_DEPRECATED}/components/RCTSafeAreaViewNativeComponent.js +0 -0
  416. /package/src/private/{specs → specs_DEPRECATED}/components/SwitchNativeComponent.js +0 -0
  417. /package/src/private/{specs → specs_DEPRECATED}/components/UnimplementedNativeViewNativeComponent.js +0 -0
  418. /package/src/private/{specs → specs_DEPRECATED}/modules/NativeAccessibilityInfo.js +0 -0
  419. /package/src/private/{specs → specs_DEPRECATED}/modules/NativeAccessibilityInfoWin32.js +0 -0
  420. /package/src/private/{specs → specs_DEPRECATED}/modules/NativeAccessibilityManager.js +0 -0
  421. /package/src/private/{specs → specs_DEPRECATED}/modules/NativeActionSheetManager.js +0 -0
  422. /package/src/private/{specs → specs_DEPRECATED}/modules/NativeAlertManager.js +0 -0
  423. /package/src/private/{specs → specs_DEPRECATED}/modules/NativeAnimatedModule.js +0 -0
  424. /package/src/private/{specs → specs_DEPRECATED}/modules/NativeAnimatedTurboModule.js +0 -0
  425. /package/src/private/{specs → specs_DEPRECATED}/modules/NativeAppState.js +0 -0
  426. /package/src/private/{specs → specs_DEPRECATED}/modules/NativeAppearance.js +0 -0
  427. /package/src/private/{specs → specs_DEPRECATED}/modules/NativeBlobModule.js +0 -0
  428. /package/src/private/{specs → specs_DEPRECATED}/modules/NativeBugReporting.js +0 -0
  429. /package/src/private/{specs → specs_DEPRECATED}/modules/NativeClipboard.js +0 -0
  430. /package/src/private/{specs → specs_DEPRECATED}/modules/NativeDevLoadingView.js +0 -0
  431. /package/src/private/{specs → specs_DEPRECATED}/modules/NativeDeviceEventManager.js +0 -0
  432. /package/src/private/{specs → specs_DEPRECATED}/modules/NativeDeviceInfo.js +0 -0
  433. /package/src/private/{specs → specs_DEPRECATED}/modules/NativeDialogManagerAndroid.js +0 -0
  434. /package/src/private/{specs → specs_DEPRECATED}/modules/NativeFileReaderModule.js +0 -0
  435. /package/src/private/{specs → specs_DEPRECATED}/modules/NativeFrameRateLogger.js +0 -0
  436. /package/src/private/{specs → specs_DEPRECATED}/modules/NativeHeadlessJsTaskSupport.js +0 -0
  437. /package/src/private/{specs → specs_DEPRECATED}/modules/NativeI18nManager.js +0 -0
  438. /package/src/private/{specs → specs_DEPRECATED}/modules/NativeImageEditor.js +0 -0
  439. /package/src/private/{specs → specs_DEPRECATED}/modules/NativeImageLoaderAndroid.js +0 -0
  440. /package/src/private/{specs → specs_DEPRECATED}/modules/NativeImageLoaderIOS.js +0 -0
  441. /package/src/private/{specs → specs_DEPRECATED}/modules/NativeImageLoaderWin32.js +0 -0
  442. /package/src/private/{specs → specs_DEPRECATED}/modules/NativeImageStoreAndroid.js +0 -0
  443. /package/src/private/{specs → specs_DEPRECATED}/modules/NativeImageStoreIOS.js +0 -0
  444. /package/src/private/{specs → specs_DEPRECATED}/modules/NativeIntentAndroid.js +0 -0
  445. /package/src/private/{specs → specs_DEPRECATED}/modules/NativeJSCHeapCapture.js +0 -0
  446. /package/src/private/{specs → specs_DEPRECATED}/modules/NativeKeyboardObserver.js +0 -0
  447. /package/src/private/{specs → specs_DEPRECATED}/modules/NativeLinkingManager.js +0 -0
  448. /package/src/private/{specs → specs_DEPRECATED}/modules/NativeLogBox.js +0 -0
  449. /package/src/private/{specs → specs_DEPRECATED}/modules/NativeModalManager.js +0 -0
  450. /package/src/private/{specs → specs_DEPRECATED}/modules/NativeNetworkingAndroid.js +0 -0
  451. /package/src/private/{specs → specs_DEPRECATED}/modules/NativeNetworkingIOS.js +0 -0
  452. /package/src/private/{specs → specs_DEPRECATED}/modules/NativePlatformConstantsAndroid.js +0 -0
  453. /package/src/private/{specs → specs_DEPRECATED}/modules/NativePlatformConstantsIOS.js +0 -0
  454. /package/src/private/{specs → specs_DEPRECATED}/modules/NativePlatformConstantsWin.js +0 -0
  455. /package/src/private/{specs → specs_DEPRECATED}/modules/NativePushNotificationManagerIOS.js +0 -0
  456. /package/src/private/{specs → specs_DEPRECATED}/modules/NativeReactDevToolsSettingsManager.js +0 -0
  457. /package/src/private/{specs → specs_DEPRECATED}/modules/NativeRedBox.js +0 -0
  458. /package/src/private/{specs → specs_DEPRECATED}/modules/NativeSampleTurboModule.js +0 -0
  459. /package/src/private/{specs → specs_DEPRECATED}/modules/NativeSegmentFetcher.js +0 -0
  460. /package/src/private/{specs → specs_DEPRECATED}/modules/NativeSettingsManager.js +0 -0
  461. /package/src/private/{specs → specs_DEPRECATED}/modules/NativeShareModule.js +0 -0
  462. /package/src/private/{specs → specs_DEPRECATED}/modules/NativeSoundManager.js +0 -0
  463. /package/src/private/{specs → specs_DEPRECATED}/modules/NativeSourceCode.js +0 -0
  464. /package/src/private/{specs → specs_DEPRECATED}/modules/NativeStatusBarManagerAndroid.js +0 -0
  465. /package/src/private/{specs → specs_DEPRECATED}/modules/NativeStatusBarManagerIOS.js +0 -0
  466. /package/src/private/{specs → specs_DEPRECATED}/modules/NativeTiming.js +0 -0
  467. /package/src/private/{specs → specs_DEPRECATED}/modules/NativeToastAndroid.js +0 -0
  468. /package/src/private/{specs → specs_DEPRECATED}/modules/NativeVibration.js +0 -0
  469. /package/src/private/{specs → specs_DEPRECATED}/modules/NativeWebSocketModule.js +0 -0
  470. /package/src/private/webapis/dom/nodes/{utilities → internals}/Traversal.js +0 -0
  471. /package/src/private/webapis/{dom/geometry → geometry}/DOMRect.js +0 -0
  472. /package/src/private/webapis/{dom/geometry → geometry}/DOMRectReadOnly.js +0 -0
  473. /package/src/private/webapis/{dom/oldstylecollections → utils}/ArrayLikeUtils.js +0 -0
@@ -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
- const checkVersions = function checkVersions(): void {
24
+ export function checkVersions(): void {
25
25
  const nativeVersion = Platform.constants.reactNativeVersion;
26
26
  if (
27
27
  ReactNativeVersion.version.major !== nativeVersion.major ||
@@ -37,7 +37,7 @@ const checkVersions = function checkVersions(): void {
37
37
  '`watchman watch-del-all && npx react-native start --reset-cache`.',
38
38
  );
39
39
  }
40
- };
40
+ }
41
41
 
42
42
  function _formatVersion(
43
43
  version: (typeof Platform)['constants']['reactNativeVersion'],
@@ -48,5 +48,3 @@ function _formatVersion(
48
48
  (version.prerelease != undefined ? `-${version.prerelease}` : '')
49
49
  );
50
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
- const checkVersions = function checkVersions(): void {
24
+ export function checkVersions(): void {
25
25
  const nativeVersion = Platform.constants.reactNativeVersion;
26
26
  if (
27
27
  ReactNativeVersion.version.major !== nativeVersion.major ||
@@ -39,7 +39,7 @@ const checkVersions = function checkVersions(): void {
39
39
  '`watchman watch-del-all && npx @react-native-community/cli start --reset-cache`.',
40
40
  );
41
41
  }
42
- };
42
+ }
43
43
 
44
44
  function _formatVersion(
45
45
  version: (typeof Platform)['constants']['reactNativeVersion'],
@@ -50,5 +50,3 @@ function _formatVersion(
50
50
  (version.prerelease != undefined ? `-${version.prerelease}` : '')
51
51
  );
52
52
  }
53
-
54
- module.exports = {checkVersions};
@@ -8,6 +8,6 @@
8
8
  * @format
9
9
  */
10
10
 
11
- export * from '../../../src/private/specs/modules/NativeSegmentFetcher';
12
- import NativeSegmentFetcher from '../../../src/private/specs/modules/NativeSegmentFetcher';
11
+ export * from '../../../src/private/specs_DEPRECATED/modules/NativeSegmentFetcher';
12
+ import NativeSegmentFetcher from '../../../src/private/specs_DEPRECATED/modules/NativeSegmentFetcher';
13
13
  export default NativeSegmentFetcher;
@@ -36,6 +36,7 @@ const IDLE_CALLBACK_FRAME_DEADLINE = 1;
36
36
  const callbacks: Array<?Function> = [];
37
37
  const types: Array<?JSTimerType> = [];
38
38
  const timerIDs: Array<?number> = [];
39
+ const freeIdxs: Array<number> = [];
39
40
  let reactNativeMicrotasks: Array<number> = [];
40
41
  let requestIdleCallbacks: Array<number> = [];
41
42
  const requestIdleCallbackTimeouts: {[number]: number, ...} = {};
@@ -47,11 +48,11 @@ let hasEmittedTimeDriftWarning = false;
47
48
 
48
49
  // Returns a free index if one is available, and the next consecutive index otherwise.
49
50
  function _getFreeIndex(): number {
50
- let freeIndex = timerIDs.indexOf(null);
51
- if (freeIndex === -1) {
52
- freeIndex = timerIDs.length;
51
+ const freeIdx = freeIdxs.pop();
52
+ if (freeIdx === undefined) {
53
+ return timerIDs.length;
53
54
  }
54
- return freeIndex;
55
+ return freeIdx;
55
56
  }
56
57
 
57
58
  function _allocateCallback(func: Function, type: JSTimerType): number {
@@ -171,6 +172,7 @@ function _clearIndex(i: number) {
171
172
  timerIDs[i] = null;
172
173
  callbacks[i] = null;
173
174
  types[i] = null;
175
+ freeIdxs.push(i);
174
176
  }
175
177
 
176
178
  function _freeCallback(timerID: number) {
@@ -484,4 +486,4 @@ BatchedBridge.setReactNativeMicrotasksCallback(
484
486
  JSTimers.callReactNativeMicrotasks,
485
487
  );
486
488
 
487
- module.exports = ExportedJSTimers;
489
+ export default ExportedJSTimers;
@@ -8,6 +8,6 @@
8
8
  * @format
9
9
  */
10
10
 
11
- export * from '../../../src/private/specs/modules/NativeTiming';
12
- import NativeTiming from '../../../src/private/specs/modules/NativeTiming';
11
+ export * from '../../../src/private/specs_DEPRECATED/modules/NativeTiming';
12
+ import NativeTiming from '../../../src/private/specs_DEPRECATED/modules/NativeTiming';
13
13
  export default NativeTiming;
@@ -21,7 +21,7 @@ const clearedImmediates: Set<number> = new Set();
21
21
  * @param {function} func Callback to be invoked before the end of the
22
22
  * current JavaScript execution loop.
23
23
  */
24
- function setImmediate(callback: Function, ...args: any): number {
24
+ export function setImmediate(callback: Function, ...args: any): number {
25
25
  if (arguments.length < 1) {
26
26
  throw new TypeError(
27
27
  'setImmediate must be called with at least one argument (a function to call)',
@@ -56,13 +56,6 @@ function setImmediate(callback: Function, ...args: any): number {
56
56
  /**
57
57
  * @param {number} immediateID The ID of the immediate to be clearred.
58
58
  */
59
- function clearImmediate(immediateID: number) {
59
+ export function clearImmediate(immediateID: number) {
60
60
  clearedImmediates.add(immediateID);
61
61
  }
62
-
63
- const immediateShim = {
64
- setImmediate: setImmediate,
65
- clearImmediate: clearImmediate,
66
- };
67
-
68
- module.exports = immediateShim;
@@ -14,22 +14,27 @@ import registerModule from './registerCallableModule';
14
14
 
15
15
  registerModule('Systrace', () => require('../Performance/Systrace'));
16
16
  if (!(global.RN$Bridgeless === true)) {
17
- registerModule('JSTimers', () => require('./Timers/JSTimers'));
17
+ registerModule('JSTimers', () => require('./Timers/JSTimers').default);
18
18
  }
19
- registerModule('RCTLog', () => require('../Utilities/RCTLog'));
19
+ registerModule('RCTLog', () => require('../Utilities/RCTLog').default);
20
20
  registerModule(
21
21
  'RCTDeviceEventEmitter',
22
22
  () => require('../EventEmitter/RCTDeviceEventEmitter').default,
23
23
  );
24
- registerModule('RCTNativeAppEventEmitter', () =>
25
- require('../EventEmitter/RCTNativeAppEventEmitter'),
24
+ registerModule(
25
+ 'RCTNativeAppEventEmitter',
26
+ () => require('../EventEmitter/RCTNativeAppEventEmitter').default,
26
27
  );
27
- registerModule('GlobalPerformanceLogger', () =>
28
- require('../Utilities/GlobalPerformanceLogger'),
28
+ registerModule(
29
+ 'GlobalPerformanceLogger',
30
+ () => require('../Utilities/GlobalPerformanceLogger').default,
29
31
  );
30
32
 
31
33
  if (__DEV__) {
32
- registerModule('HMRClient', () => require('../Utilities/HMRClient'));
34
+ registerModule('HMRClient', () => require('../Utilities/HMRClient').default);
33
35
  } else {
34
- registerModule('HMRClient', () => require('../Utilities/HMRClientProdShim'));
36
+ registerModule(
37
+ 'HMRClient',
38
+ () => require('../Utilities/HMRClientProdShim').default,
39
+ );
35
40
  }
@@ -17,32 +17,11 @@ declare var console: {[string]: $FlowFixMe};
17
17
  * You can use this module directly, or just require InitializeCore.
18
18
  */
19
19
  if (__DEV__) {
20
- // Set up inspector
21
- const JSInspector = require('../JSInspector/JSInspector');
22
- JSInspector.registerAgent(require('../JSInspector/NetworkAgent'));
23
-
24
- // Note we can't check if console is "native" because it would appear "native" in JSC and Hermes.
25
- // We also can't check any properties that don't exist in the Chrome worker environment.
26
- // So we check a navigator property that's set to a particular value ("Netscape") in all real browsers.
27
- const isLikelyARealBrowser =
28
- global.navigator != null &&
29
- /* _
30
- * | |
31
- * _ __ ___| |_ ___ ___ __ _ _ __ ___
32
- * | '_ \ / _ \ __/ __|/ __/ _` | '_ \ / _ \
33
- * | | | | __/ |_\__ \ (_| (_| | |_) | __/
34
- * |_| |_|\___|\__|___/\___\__,_| .__/ \___|
35
- * | |
36
- * |_|
37
- */
38
- global.navigator.appName === 'Netscape'; // Any real browser
39
-
40
20
  if (!Platform.isTesting) {
41
- const HMRClient = require('../Utilities/HMRClient');
21
+ const HMRClient = require('../Utilities/HMRClient').default;
42
22
 
43
- if (global.__FUSEBOX_HAS_FULL_CONSOLE_SUPPORT__) {
44
- HMRClient.unstable_notifyFuseboxConsoleEnabled();
45
- } else if (console._isPolyfilled) {
23
+ // TODO(T214991636): Remove legacy Metro log forwarding
24
+ if (console._isPolyfilled) {
46
25
  // We assume full control over the console and send JavaScript logs to Metro.
47
26
  [
48
27
  'trace',
@@ -61,21 +40,11 @@ if (__DEV__) {
61
40
  originalFunction.apply(console, args);
62
41
  };
63
42
  });
64
- } else {
65
- // We assume the environment has a real rich console (like Chrome), and don't hijack it to log to Metro.
66
- // It's likely the developer is using rich console to debug anyway, and hijacking it would
67
- // lose the filenames in console.log calls: https://github.com/facebook/react-native/issues/26788.
68
- HMRClient.log('log', [
69
- `JavaScript logs will appear in your ${
70
- isLikelyARealBrowser ? 'browser' : 'environment'
71
- } console`,
72
- ]);
73
43
  }
74
44
  }
75
45
 
76
46
  require('./setUpReactRefresh');
77
47
 
78
- global[
79
- `${global.__METRO_GLOBAL_PREFIX__ ?? ''}__loadBundleAsync`
80
- ] = require('./Devtools/loadBundleFromServer');
48
+ global[`${global.__METRO_GLOBAL_PREFIX__ ?? ''}__loadBundleAsync`] =
49
+ require('./Devtools/loadBundleFromServer').default;
81
50
  }
@@ -10,17 +10,12 @@
10
10
 
11
11
  'use strict';
12
12
 
13
- if (__DEV__) {
14
- // React DevTools need to be set up before the console.error patch.
15
- require('./setUpReactDevTools');
16
- }
17
-
18
13
  if (global.RN$useAlwaysAvailableJSErrorHandling !== true) {
19
14
  /**
20
15
  * Sets up the console and exception handling (redbox) for React Native.
21
16
  * You can use this module directly, or just require InitializeCore.
22
17
  */
23
- const ExceptionsManager = require('./ExceptionsManager');
18
+ const ExceptionsManager = require('./ExceptionsManager').default;
24
19
  ExceptionsManager.installConsoleErrorReporter();
25
20
 
26
21
  // Set up error handler
@@ -13,6 +13,22 @@
13
13
  import type {Domain} from '../../src/private/debugging/setUpFuseboxReactDevToolsDispatcher';
14
14
  import type {Spec as NativeReactDevToolsRuntimeSettingsModuleSpec} from '../../src/private/fusebox/specs/NativeReactDevToolsRuntimeSettingsModule';
15
15
 
16
+ if (__DEV__) {
17
+ if (typeof global.queueMicrotask !== 'function') {
18
+ console.error(
19
+ 'queueMicrotask should exist before setting up React DevTools.',
20
+ );
21
+ }
22
+
23
+ // Keep in sync with ExceptionsManager/installConsoleErrorReporter
24
+ // $FlowExpectedError[prop-missing]
25
+ if (console._errorOriginal != null) {
26
+ console.error(
27
+ 'ExceptionsManager should be set up after React DevTools to avoid console.error arguments mutation',
28
+ );
29
+ }
30
+ }
31
+
16
32
  if (__DEV__) {
17
33
  // Register dispatcher on global, which can be used later by Chrome DevTools frontend
18
34
  require('../../src/private/debugging/setUpFuseboxReactDevToolsDispatcher');
@@ -54,8 +70,9 @@ if (__DEV__) {
54
70
  const reactDevToolsFuseboxGlobalBindingName =
55
71
  fuseboxReactDevToolsDispatcher.BINDING_NAME;
56
72
 
57
- const ReactNativeStyleAttributes = require('../Components/View/ReactNativeStyleAttributes');
58
- const resolveRNStyle = require('../StyleSheet/flattenStyle');
73
+ const ReactNativeStyleAttributes =
74
+ require('../Components/View/ReactNativeStyleAttributes').default;
75
+ const resolveRNStyle = require('../StyleSheet/flattenStyle').default;
59
76
 
60
77
  function handleReactDevToolsSettingsUpdate(settings: Object) {
61
78
  reactDevToolsSettingsManager.setGlobalHookSettings(
@@ -115,7 +132,7 @@ if (__DEV__) {
115
132
  // TODO(t12832058) This check is broken
116
133
  if (!window.document) {
117
134
  const AppState = require('../AppState/AppState').default;
118
- const getDevServer = require('./Devtools/getDevServer');
135
+ const getDevServer = require('./Devtools/getDevServer').default;
119
136
 
120
137
  // Don't steal the DevTools from currently active app.
121
138
  // Note: if you add any AppState subscriptions to this file,
@@ -139,7 +156,7 @@ if (__DEV__) {
139
156
  ? window.__REACT_DEVTOOLS_PORT__
140
157
  : 8097;
141
158
 
142
- const WebSocket = require('../WebSocket/WebSocket');
159
+ const WebSocket = require('../WebSocket/WebSocket').default;
143
160
  ws = new WebSocket('ws://' + host + ':' + port);
144
161
  ws.addEventListener('close', event => {
145
162
  isWebSocketOpen = false;
@@ -192,7 +209,8 @@ if (__DEV__) {
192
209
  );
193
210
 
194
211
  // 3. Fallback to attempting to connect WS-based RDT frontend
195
- const RCTNativeAppEventEmitter = require('../EventEmitter/RCTNativeAppEventEmitter');
212
+ const RCTNativeAppEventEmitter =
213
+ require('../EventEmitter/RCTNativeAppEventEmitter').default;
196
214
  RCTNativeAppEventEmitter.addListener(
197
215
  'RCTDevMenuShown',
198
216
  connectToWSBasedReactDevToolsFrontend,
@@ -11,7 +11,7 @@
11
11
  'use strict';
12
12
 
13
13
  if (__DEV__) {
14
- const DevSettings = require('../Utilities/DevSettings');
14
+ const DevSettings = require('../Utilities/DevSettings').default;
15
15
 
16
16
  if (typeof DevSettings.reload !== 'function') {
17
17
  throw new Error('Could not find the reload() implementation.');
@@ -20,20 +20,6 @@ if (__DEV__) {
20
20
 
21
21
  // In bridgeless mode, timers are host functions installed from cpp.
22
22
  if (global.RN$Bridgeless === true) {
23
- polyfillGlobal(
24
- 'requestIdleCallback',
25
- () =>
26
- require('../../src/private/webapis/idlecallbacks/specs/NativeIdleCallbacks')
27
- .default.requestIdleCallback,
28
- );
29
-
30
- polyfillGlobal(
31
- 'cancelIdleCallback',
32
- () =>
33
- require('../../src/private/webapis/idlecallbacks/specs/NativeIdleCallbacks')
34
- .default.cancelIdleCallback,
35
- );
36
-
37
23
  // This is the flag that tells React to use `queueMicrotask` to batch state
38
24
  // updates, instead of using the scheduler to schedule a regular task.
39
25
  // We use a global variable because we don't currently have any other
@@ -57,6 +43,20 @@ if (global.RN$Bridgeless === true) {
57
43
  'clearImmediate',
58
44
  () => require('./Timers/immediateShim').clearImmediate,
59
45
  );
46
+
47
+ polyfillGlobal(
48
+ 'requestIdleCallback',
49
+ () =>
50
+ require('../../src/private/webapis/idlecallbacks/specs/NativeIdleCallbacks')
51
+ .default.requestIdleCallback,
52
+ );
53
+
54
+ polyfillGlobal(
55
+ 'cancelIdleCallback',
56
+ () =>
57
+ require('../../src/private/webapis/idlecallbacks/specs/NativeIdleCallbacks')
58
+ .default.cancelIdleCallback,
59
+ );
60
60
  } else {
61
61
  /**
62
62
  * Set up timers.
@@ -73,7 +73,7 @@ if (global.RN$Bridgeless === true) {
73
73
  | 'setInterval'
74
74
  | 'setTimeout',
75
75
  ) => {
76
- polyfillGlobal(name, () => require('./Timers/JSTimers')[name]);
76
+ polyfillGlobal(name, () => require('./Timers/JSTimers').default[name]);
77
77
  };
78
78
  defineLazyTimer('setTimeout');
79
79
  defineLazyTimer('clearTimeout');
@@ -95,10 +95,10 @@ if (global.RN$Bridgeless === true) {
95
95
  // Note that in bridgeless mode, immediate APIs are installed from cpp.
96
96
  polyfillGlobal(
97
97
  'setImmediate',
98
- () => require('./Timers/JSTimers').queueReactNativeMicrotask,
98
+ () => require('./Timers/JSTimers').default.queueReactNativeMicrotask,
99
99
  );
100
100
  polyfillGlobal(
101
101
  'clearImmediate',
102
- () => require('./Timers/JSTimers').clearReactNativeMicrotask,
102
+ () => require('./Timers/JSTimers').default.clearReactNativeMicrotask,
103
103
  );
104
104
  }
@@ -18,14 +18,17 @@ const {polyfillGlobal} = require('../Utilities/PolyfillFunctions');
18
18
  *
19
19
  * You can use this module directly, or just require InitializeCore.
20
20
  */
21
- polyfillGlobal('XMLHttpRequest', () => require('../Network/XMLHttpRequest'));
22
- polyfillGlobal('FormData', () => require('../Network/FormData'));
21
+ polyfillGlobal(
22
+ 'XMLHttpRequest',
23
+ () => require('../Network/XMLHttpRequest').default,
24
+ );
25
+ polyfillGlobal('FormData', () => require('../Network/FormData').default);
23
26
 
24
27
  polyfillGlobal('fetch', () => require('../Network/fetch').fetch);
25
28
  polyfillGlobal('Headers', () => require('../Network/fetch').Headers);
26
29
  polyfillGlobal('Request', () => require('../Network/fetch').Request);
27
30
  polyfillGlobal('Response', () => require('../Network/fetch').Response);
28
- polyfillGlobal('WebSocket', () => require('../WebSocket/WebSocket'));
31
+ polyfillGlobal('WebSocket', () => require('../WebSocket/WebSocket').default);
29
32
  polyfillGlobal('Blob', () => require('../Blob/Blob').default);
30
33
  polyfillGlobal('File', () => require('../Blob/File').default);
31
34
  polyfillGlobal('FileReader', () => require('../Blob/FileReader').default);
@@ -8,6 +8,6 @@
8
8
  * @flow strict-local
9
9
  */
10
10
 
11
- export * from '../../src/private/specs/components/DebuggingOverlayNativeComponent';
12
- import DebuggingOverlayNativeComponent from '../../src/private/specs/components/DebuggingOverlayNativeComponent';
11
+ export * from '../../src/private/specs_DEPRECATED/components/DebuggingOverlayNativeComponent';
12
+ import DebuggingOverlayNativeComponent from '../../src/private/specs_DEPRECATED/components/DebuggingOverlayNativeComponent';
13
13
  export default DebuggingOverlayNativeComponent;
@@ -26,6 +26,9 @@ interface NativeModule {
26
26
 
27
27
  export type {EventSubscription};
28
28
 
29
+ // $FlowFixMe[unclear-type] unclear type of events
30
+ type UnsafeObject = Object;
31
+
29
32
  /**
30
33
  * `NativeEventEmitter` is intended for use by Native Modules to emit events to
31
34
  * JavaScript listeners. If a `NativeModule` is supplied to the constructor, it
@@ -36,8 +39,11 @@ export type {EventSubscription};
36
39
  * This means event names must be globally unique, and it means that call sites
37
40
  * can theoretically listen to `RCTDeviceEventEmitter` (although discouraged).
38
41
  */
39
- export default class NativeEventEmitter<TEventToArgsMap: {...}>
40
- implements IEventEmitter<TEventToArgsMap>
42
+ export default class NativeEventEmitter<
43
+ TEventToArgsMap: $ReadOnly<
44
+ Record<string, $ReadOnlyArray<UnsafeObject>>,
45
+ > = $ReadOnly<Record<string, $ReadOnlyArray<UnsafeObject>>>,
46
+ > implements IEventEmitter<TEventToArgsMap>
41
47
  {
42
48
  _nativeModule: ?NativeModule;
43
49
 
@@ -23,7 +23,7 @@ type RCTDeviceEventDefinitions = {[name: string]: Array<any>};
23
23
  *
24
24
  * NativeModules that emit events should instead subclass `NativeEventEmitter`.
25
25
  */
26
- class RCTDeviceEventEmitter extends EventEmitter<RCTDeviceEventDefinitions> {
26
+ class RCTDeviceEventEmitterImpl extends EventEmitter<RCTDeviceEventDefinitions> {
27
27
  // Add systrace to RCTDeviceEventEmitter.emit method for debugging
28
28
  emit<TEvent: $Keys<RCTDeviceEventDefinitions>>(
29
29
  eventType: TEvent,
@@ -34,11 +34,12 @@ class RCTDeviceEventEmitter extends EventEmitter<RCTDeviceEventDefinitions> {
34
34
  endEvent();
35
35
  }
36
36
  }
37
- const instance = new RCTDeviceEventEmitter();
37
+ const RCTDeviceEventEmitter: IEventEmitter<RCTDeviceEventDefinitions> =
38
+ new RCTDeviceEventEmitterImpl();
38
39
 
39
40
  Object.defineProperty(global, '__rctDeviceEventEmitter', {
40
41
  configurable: true,
41
- value: instance,
42
+ value: RCTDeviceEventEmitter,
42
43
  });
43
44
 
44
- export default (instance: IEventEmitter<RCTDeviceEventDefinitions>);
45
+ export default (RCTDeviceEventEmitter: IEventEmitter<RCTDeviceEventDefinitions>);
@@ -18,4 +18,4 @@ const RCTEventEmitter = {
18
18
  },
19
19
  };
20
20
 
21
- module.exports = RCTEventEmitter;
21
+ export default RCTEventEmitter;
@@ -15,4 +15,4 @@ import RCTDeviceEventEmitter from './RCTDeviceEventEmitter';
15
15
  * adding all event listeners directly to RCTNativeAppEventEmitter.
16
16
  */
17
17
  const RCTNativeAppEventEmitter = RCTDeviceEventEmitter;
18
- module.exports = RCTNativeAppEventEmitter;
18
+ export default RCTNativeAppEventEmitter;
@@ -18,8 +18,9 @@ import RCTDeviceEventEmitter from '../RCTDeviceEventEmitter';
18
18
  /**
19
19
  * Mock `NativeEventEmitter` to ignore Native Modules.
20
20
  */
21
- export default class NativeEventEmitter<TEventToArgsMap: {...}>
22
- implements IEventEmitter<TEventToArgsMap>
21
+ export default class NativeEventEmitter<
22
+ TEventToArgsMap: $ReadOnly<Record<string, $ReadOnlyArray<mixed>>>,
23
+ > implements IEventEmitter<TEventToArgsMap>
23
24
  {
24
25
  addListener<TEvent: $Keys<TEventToArgsMap>>(
25
26
  eventType: TEvent,
@@ -25,7 +25,7 @@ class CustomEvent extends EventPolyfill {
25
25
  const {bubbles, cancelable, composed} = options;
26
26
  super(typeArg, {bubbles, cancelable, composed});
27
27
 
28
- this.detail = options.detail; // this would correspond to `NativeEvent` in SyntheticEvent
28
+ this.detail = options.detail; // this would correspond to `NativeEvent` in NativeSyntheticEvent
29
29
  }
30
30
  }
31
31
 
@@ -152,9 +152,9 @@ class EventPolyfill implements IEvent {
152
152
  /** @deprecated */
153
153
  srcElement: Element; // TODO: nullable
154
154
 
155
- // React Native-specific: proxy data to a SyntheticEvent when
155
+ // React Native-specific: proxy data to a NativeSyntheticEvent when
156
156
  // certain methods are called.
157
- // SyntheticEvent will also have a reference to this instance -
157
+ // NativeSyntheticEvent will also have a reference to this instance -
158
158
  // it is circular - and both classes use this reference to keep
159
159
  // data with the other in sync.
160
160
  _syntheticEvent: mixed;
@@ -12,7 +12,9 @@
12
12
 
13
13
  import type {PackagerAsset} from '@react-native/assets-registry/registry';
14
14
 
15
- module.exports = require('@react-native/assets-registry/registry') as {
15
+ const AssetRegistry = require('@react-native/assets-registry/registry') as {
16
16
  registerAsset: (asset: PackagerAsset) => number,
17
17
  getAssetByID: (assetId: number) => PackagerAsset,
18
18
  };
19
+
20
+ module.exports = AssetRegistry;
@@ -24,7 +24,7 @@ import type {
24
24
  } from '@react-native/assets-registry/registry';
25
25
 
26
26
  const PixelRatio = require('../Utilities/PixelRatio').default;
27
- const Platform = require('../Utilities/Platform');
27
+ const Platform = require('../Utilities/Platform').default;
28
28
  const {pickScale} = require('./AssetUtils');
29
29
  const {
30
30
  getAndroidResourceFolderName,
@@ -210,4 +210,4 @@ class AssetSourceResolver {
210
210
  pickScale;
211
211
  }
212
212
 
213
- module.exports = AssetSourceResolver;
213
+ export default AssetSourceResolver;
@@ -133,6 +133,7 @@ let BaseImage: AbstractImageAndroid = React.forwardRef(
133
133
  width: undefined,
134
134
  height: undefined,
135
135
  };
136
+ const defaultSource = resolveAssetSource(props.defaultSource);
136
137
  const loadingIndicatorSource = resolveAssetSource(
137
138
  props.loadingIndicatorSource,
138
139
  );
@@ -178,6 +179,7 @@ let BaseImage: AbstractImageAndroid = React.forwardRef(
178
179
  /* $FlowFixMe(>=0.78.0 site=react_native_android_fb) This issue was found
179
180
  * when making Flow check .android.js files. */
180
181
  headers: (source?.[0]?.headers || source?.headers: ?{[string]: string}),
182
+ defaultSource: defaultSource ? defaultSource.uri : null,
181
183
  loadingIndicatorSrc: loadingIndicatorSource
182
184
  ? loadingIndicatorSource.uri
183
185
  : null,
@@ -319,4 +321,4 @@ const styles = StyleSheet.create({
319
321
  },
320
322
  });
321
323
 
322
- module.exports = Image;
324
+ export default Image;
@@ -249,4 +249,4 @@ const styles = StyleSheet.create({
249
249
  },
250
250
  });
251
251
 
252
- module.exports = Image;
252
+ export default Image;
@@ -284,4 +284,4 @@ const styles = StyleSheet.create({
284
284
  },
285
285
  });
286
286
 
287
- module.exports = Image;
287
+ export default Image;
@@ -103,4 +103,4 @@ class ImageBackground extends React.Component<ImageBackgroundProps> {
103
103
  }
104
104
  }
105
105
 
106
- module.exports = ImageBackground;
106
+ export default ImageBackground;
@@ -17,13 +17,16 @@ import type {
17
17
  ImageStyleProp,
18
18
  ViewStyleProp,
19
19
  } from '../StyleSheet/StyleSheet';
20
- import type {LayoutEvent, SyntheticEvent} from '../Types/CoreEventTypes';
20
+ import type {
21
+ LayoutChangeEvent,
22
+ NativeSyntheticEvent,
23
+ } from '../Types/CoreEventTypes';
21
24
  import typeof Image from './Image';
22
25
  import type {ImageResizeMode} from './ImageResizeMode';
23
26
  import type {ImageSource} from './ImageSource';
24
27
  import type {ElementRef, Node, RefSetter} from 'react';
25
28
 
26
- export type ImageLoadEvent = SyntheticEvent<
29
+ export type ImageLoadEvent = NativeSyntheticEvent<
27
30
  $ReadOnly<{
28
31
  source: $ReadOnly<{
29
32
  width: number,
@@ -52,7 +55,7 @@ type IOSImageProps = $ReadOnly<{
52
55
  * See https://reactnative.dev/docs/image#onprogress
53
56
  */
54
57
  onProgress?: ?(
55
- event: SyntheticEvent<$ReadOnly<{loaded: number, total: number}>>,
58
+ event: NativeSyntheticEvent<$ReadOnly<{loaded: number, total: number}>>,
56
59
  ) => void,
57
60
  }>;
58
61
 
@@ -163,7 +166,7 @@ export type ImageProps = $ReadOnly<{
163
166
  * See https://reactnative.dev/docs/image#onerror
164
167
  */
165
168
  onError?: ?(
166
- event: SyntheticEvent<
169
+ event: NativeSyntheticEvent<
167
170
  $ReadOnly<{
168
171
  error: string,
169
172
  }>,
@@ -177,7 +180,7 @@ export type ImageProps = $ReadOnly<{
177
180
  * See https://reactnative.dev/docs/image#onlayout
178
181
  */
179
182
 
180
- onLayout?: ?(event: LayoutEvent) => mixed,
183
+ onLayout?: ?(event: LayoutChangeEvent) => mixed,
181
184
 
182
185
  /**
183
186
  * Invoked when load completes successfully.