@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
@@ -15,6 +15,30 @@ import Platform from '../Utilities/Platform';
15
15
  import NativePushNotificationManagerIOS from './NativePushNotificationManagerIOS';
16
16
  import invariant from 'invariant';
17
17
 
18
+ export type PushNotificationPermissions = {
19
+ alert: boolean,
20
+ badge: boolean,
21
+ sound: boolean,
22
+ [key: string]: boolean | number,
23
+ };
24
+
25
+ type PresentLocalNotificationDetails = {
26
+ alertBody: string,
27
+ alertAction?: string,
28
+ alertTitle?: string,
29
+ soundName?: string,
30
+ category?: string,
31
+ userInfo?: Object,
32
+ applicationIconBadgeNumber?: number,
33
+ fireDate?: number,
34
+ isSilent?: boolean,
35
+ };
36
+
37
+ type ScheduleLocalNotificationDetails = {
38
+ ...PresentLocalNotificationDetails,
39
+ repeatInterval?: 'year' | 'month' | 'week' | 'day' | 'hour' | 'minute',
40
+ };
41
+
18
42
  type NativePushNotificationIOSEventDefinitions = {
19
43
  remoteNotificationReceived: [
20
44
  {
@@ -56,9 +80,9 @@ const DEVICE_LOCAL_NOTIF_EVENT = 'localNotificationReceived';
56
80
  export type ContentAvailable = 1 | null | void;
57
81
 
58
82
  export type FetchResult = {
59
- NewData: string,
60
- NoData: string,
61
- ResultFailed: string,
83
+ NewData: 'UIBackgroundFetchResultNewData',
84
+ NoData: 'UIBackgroundFetchResultNoData',
85
+ ResultFailed: 'UIBackgroundFetchResultFailed',
62
86
  ...
63
87
  };
64
88
 
@@ -94,6 +118,54 @@ export type PushNotificationEventName = $Keys<{
94
118
  ...
95
119
  }>;
96
120
 
121
+ export interface PushNotification {
122
+ /**
123
+ * An alias for `getAlert` to get the notification's main message string
124
+ */
125
+ getMessage(): ?string | ?Object;
126
+
127
+ /**
128
+ * Gets the sound string from the `aps` object
129
+ */
130
+ getSound(): ?string;
131
+
132
+ /**
133
+ * Gets the category string from the `aps` object
134
+ */
135
+ getCategory(): ?string;
136
+
137
+ /**
138
+ * Gets the notification's main message from the `aps` object
139
+ */
140
+ getAlert(): ?string | ?Object;
141
+
142
+ /**
143
+ * Gets the content-available number from the `aps` object
144
+ */
145
+ getContentAvailable(): ContentAvailable;
146
+
147
+ /**
148
+ * Gets the badge count number from the `aps` object
149
+ */
150
+ getBadgeCount(): ?number;
151
+
152
+ /**
153
+ * Gets the data object on the notif
154
+ */
155
+ getData(): ?Object;
156
+
157
+ /**
158
+ * Gets the thread ID on the notif
159
+ */
160
+ getThreadID(): ?string;
161
+
162
+ /**
163
+ * iOS Only
164
+ * Signifies remote notification handling is complete
165
+ */
166
+ finish(result: string): void;
167
+ }
168
+
97
169
  /**
98
170
  *
99
171
  * Handle notifications for your app, including scheduling and permissions.
@@ -119,28 +191,50 @@ class PushNotificationIOS {
119
191
  };
120
192
 
121
193
  /**
122
- * Schedules a local notification for immediate presentation.
194
+ * Schedules the localNotification for immediate presentation.
195
+ * details is an object containing:
196
+ * alertBody : The message displayed in the notification alert.
197
+ * alertAction : The "action" displayed beneath an actionable notification. Defaults to "view";
198
+ * soundName : The sound played when the notification is fired (optional).
199
+ * category : The category of this notification, required for actionable notifications (optional).
200
+ * userInfo : An optional object containing additional notification data.
201
+ * applicationIconBadgeNumber (optional) : The number to display as the app's icon badge. The default value of this property is 0, which means that no badge is displayed.
123
202
  *
124
203
  * See https://reactnative.dev/docs/pushnotificationios#presentlocalnotification
125
204
  */
126
- static presentLocalNotification(details: Object): void {
205
+ static presentLocalNotification(
206
+ details: PresentLocalNotificationDetails,
207
+ ): void {
127
208
  invariant(
128
209
  NativePushNotificationManagerIOS,
129
210
  'PushNotificationManager is not available.',
130
211
  );
212
+ // $FlowFixMe[prop-missing]
131
213
  NativePushNotificationManagerIOS.presentLocalNotification(details);
132
214
  }
133
215
 
134
216
  /**
135
217
  * Schedules a local notification for future presentation.
136
218
  *
219
+ * details is an object containing:
220
+ * fireDate : The date and time when the system should deliver the notification.
221
+ * alertBody : The message displayed in the notification alert.
222
+ * alertAction : The "action" displayed beneath an actionable notification. Defaults to "view";
223
+ * soundName : The sound played when the notification is fired (optional).
224
+ * category : The category of this notification, required for actionable notifications (optional).
225
+ * userInfo : An optional object containing additional notification data.
226
+ * applicationIconBadgeNumber (optional) : The number to display as the app's icon badge. Setting the number to 0 removes the icon badge.
227
+ *
137
228
  * See https://reactnative.dev/docs/pushnotificationios#schedulelocalnotification
138
229
  */
139
- static scheduleLocalNotification(details: Object): void {
230
+ static scheduleLocalNotification(
231
+ details: ScheduleLocalNotificationDetails,
232
+ ): void {
140
233
  invariant(
141
234
  NativePushNotificationManagerIOS,
142
235
  'PushNotificationManager is not available.',
143
236
  );
237
+ // $FlowFixMe[prop-missing]
144
238
  NativePushNotificationManagerIOS.scheduleLocalNotification(details);
145
239
  }
146
240
 
@@ -331,12 +425,9 @@ class PushNotificationIOS {
331
425
  *
332
426
  * See https://reactnative.dev/docs/pushnotificationios#requestpermissions
333
427
  */
334
- static requestPermissions(permissions?: {
335
- alert?: boolean,
336
- badge?: boolean,
337
- sound?: boolean,
338
- ...
339
- }): Promise<{
428
+ static requestPermissions(
429
+ permissions?: PushNotificationPermissions,
430
+ ): Promise<{
340
431
  alert: boolean,
341
432
  badge: boolean,
342
433
  sound: boolean,
@@ -365,7 +456,13 @@ class PushNotificationIOS {
365
456
 
366
457
  /**
367
458
  * Unregister for all remote notifications received via Apple Push Notification
368
- * service. This should be called in rare circumstances only.
459
+ * service.
460
+ * You should call this method in rare circumstances only, such as when
461
+ * a new version of the app removes support for all types of remote
462
+ * notifications. Users can temporarily prevent apps from receiving
463
+ * remote notifications through the Notifications section of the
464
+ * Settings app. Apps unregistered through this method can always
465
+ * re-register.
369
466
  *
370
467
  * See https://reactnative.dev/docs/pushnotificationios#abandonpermissions
371
468
  */
@@ -381,9 +478,15 @@ class PushNotificationIOS {
381
478
  * Check which push permissions are currently enabled. `callback` will be
382
479
  * invoked with a `Permissions` object.
383
480
  *
481
+ * - `alert` :boolean
482
+ * - `badge` :boolean
483
+ * - `sound` :boolean
484
+ *
384
485
  * See https://reactnative.dev/docs/pushnotificationios#checkpermissions
385
486
  */
386
- static checkPermissions(callback: Function): void {
487
+ static checkPermissions(
488
+ callback: (permissions: PushNotificationPermissions) => void,
489
+ ): void {
387
490
  invariant(typeof callback === 'function', 'Must provide a valid callback');
388
491
  invariant(
389
492
  NativePushNotificationManagerIOS,
@@ -398,7 +501,7 @@ class PushNotificationIOS {
398
501
  *
399
502
  * See https://reactnative.dev/docs/pushnotificationios#getinitialnotification
400
503
  */
401
- static getInitialNotification(): Promise<?PushNotificationIOS> {
504
+ static getInitialNotification(): Promise<?PushNotification> {
402
505
  invariant(
403
506
  NativePushNotificationManagerIOS,
404
507
  'PushNotificationManager is not available.',
@@ -566,4 +669,4 @@ class PushNotificationIOS {
566
669
  }
567
670
  }
568
671
 
569
- module.exports = PushNotificationIOS;
672
+ export default PushNotificationIOS;
@@ -33,7 +33,8 @@ const reactDevToolsHook: ReactDevToolsGlobalHook =
33
33
  // Required for React DevTools to view / edit React Native styles in Flipper.
34
34
  // Flipper doesn't inject these values when initializing DevTools.
35
35
  if (reactDevToolsHook) {
36
- reactDevToolsHook.resolveRNStyle = require('../StyleSheet/flattenStyle');
36
+ reactDevToolsHook.resolveRNStyle =
37
+ require('../StyleSheet/flattenStyle').default;
37
38
  reactDevToolsHook.nativeStyleEditorValidAttributes = Object.keys(
38
39
  ReactNativeStyleAttributes,
39
40
  );
@@ -52,7 +53,7 @@ const InspectorDeferred = ({
52
53
  }: InspectorDeferredProps) => {
53
54
  // D39382967 adds a require cycle: InitializeCore -> AppContainer -> Inspector -> InspectorPanel -> ScrollView -> InitializeCore
54
55
  // We can't remove it yet, fallback to dynamic require for now. This is the only reason why this logic is in a separate function.
55
- const Inspector = require('../Inspector/Inspector');
56
+ const Inspector = require('../../src/private/inspector/Inspector').default;
56
57
 
57
58
  return (
58
59
  <Inspector
@@ -73,7 +74,7 @@ const ReactDevToolsOverlayDeferred = ({
73
74
  reactDevToolsAgent,
74
75
  }: ReactDevToolsOverlayDeferredProps) => {
75
76
  const ReactDevToolsOverlay =
76
- require('../Inspector/ReactDevToolsOverlay').default;
77
+ require('../../src/private/inspector/ReactDevToolsOverlay').default;
77
78
 
78
79
  return (
79
80
  <ReactDevToolsOverlay
@@ -28,4 +28,4 @@ const AppContainer: component(...Props) = __DEV__
28
28
  ? require('./AppContainer-dev').default
29
29
  : require('./AppContainer-prod').default;
30
30
 
31
- module.exports = AppContainer;
31
+ export default AppContainer;
@@ -30,11 +30,11 @@ export type TaskProvider = () => Task;
30
30
  type TaskCanceller = () => void;
31
31
  type TaskCancelProvider = () => TaskCanceller;
32
32
 
33
- export type ComponentProvider = () => React$ComponentType<any>;
33
+ export type ComponentProvider = () => React.ComponentType<any>;
34
34
  export type ComponentProviderInstrumentationHook = (
35
35
  component_: ComponentProvider,
36
36
  scopedPerformanceLogger: IPerformanceLogger,
37
- ) => React$ComponentType<any>;
37
+ ) => React.ComponentType<any>;
38
38
  export type AppConfig = {
39
39
  appKey: string,
40
40
  component?: ComponentProvider,
@@ -59,7 +59,7 @@ export type Registry = {
59
59
  };
60
60
  export type WrapperComponentProvider = (
61
61
  appParameters: Object,
62
- ) => React$ComponentType<any>;
62
+ ) => React.ComponentType<any>;
63
63
  export type RootViewStyleProvider = (appParameters: Object) => ViewStyleProp;
64
64
 
65
65
  const runnables: Runnables = {};
@@ -357,4 +357,4 @@ global.RN$SurfaceRegistry = {
357
357
 
358
358
  registerCallableModule('AppRegistry', AppRegistry);
359
359
 
360
- module.exports = AppRegistry;
360
+ export default AppRegistry;
@@ -411,4 +411,4 @@ if (getUIManagerConstants) {
411
411
  }
412
412
  }
413
413
 
414
- module.exports = UIManagerJS;
414
+ export default UIManagerJS;
@@ -4,12 +4,13 @@
4
4
  * This source code is licensed under the MIT license found in the
5
5
  * LICENSE file in the root directory of this source tree.
6
6
  *
7
- * @flow strict
7
+ * @flow strict-local
8
8
  * @format
9
9
  */
10
10
 
11
11
  'use strict';
12
12
 
13
+ import type {NativeElementReference} from '../../src/private/webapis/dom/nodes/specs/NativeDOM';
13
14
  import type {
14
15
  InternalInstanceHandle,
15
16
  LayoutAnimationConfig,
@@ -40,14 +41,17 @@ export interface Spec {
40
41
  +appendChild: (parentNode: Node, child: Node) => Node;
41
42
  +appendChildToSet: (childSet: NodeSet, child: Node) => void;
42
43
  +completeRoot: (rootTag: RootTag, childSet: NodeSet) => void;
43
- +measure: (node: Node, callback: MeasureOnSuccessCallback) => void;
44
+ +measure: (
45
+ node: Node | NativeElementReference,
46
+ callback: MeasureOnSuccessCallback,
47
+ ) => void;
44
48
  +measureInWindow: (
45
- node: Node,
49
+ node: Node | NativeElementReference,
46
50
  callback: MeasureInWindowOnSuccessCallback,
47
51
  ) => void;
48
52
  +measureLayout: (
49
- node: Node,
50
- relativeNode: Node,
53
+ node: Node | NativeElementReference,
54
+ relativeNode: Node | NativeElementReference,
51
55
  onFail: () => void,
52
56
  onSuccess: MeasureLayoutOnSuccessCallback,
53
57
  ) => void;
@@ -58,7 +62,10 @@ export interface Spec {
58
62
  ) => void;
59
63
  +sendAccessibilityEvent: (node: Node, eventType: string) => void;
60
64
  +findShadowNodeByTag_DEPRECATED: (reactTag: number) => ?Node;
61
- +setNativeProps: (node: Node, newProps: NodeProps) => void;
65
+ +setNativeProps: (
66
+ node: Node | NativeElementReference,
67
+ newProps: NodeProps,
68
+ ) => void;
62
69
  +dispatchCommand: (
63
70
  node: Node,
64
71
  commandName: string,
@@ -70,9 +77,12 @@ export interface Spec {
70
77
  locationY: number,
71
78
  callback: (instanceHandle: ?InternalInstanceHandle) => void,
72
79
  ) => void;
73
- +compareDocumentPosition: (node: Node, otherNode: Node) => number;
80
+ +compareDocumentPosition: (
81
+ node: Node | NativeElementReference,
82
+ otherNode: Node | NativeElementReference,
83
+ ) => number;
74
84
  +getBoundingClientRect: (
75
- node: Node,
85
+ node: Node | NativeElementReference,
76
86
  includeTransform: boolean,
77
87
  ) => ?[
78
88
  /* x: */ number,
@@ -27,7 +27,7 @@ function getI18nManagerConstants(): I18nManagerConstants {
27
27
  };
28
28
  }
29
29
 
30
- module.exports = {
30
+ export default {
31
31
  getConstants: (): I18nManagerConstants => {
32
32
  return i18nConstants;
33
33
  },
@@ -8,6 +8,6 @@
8
8
  * @format
9
9
  */
10
10
 
11
- export * from '../../src/private/specs/modules/NativeHeadlessJsTaskSupport';
12
- import NativeHeadlessJsTaskSupport from '../../src/private/specs/modules/NativeHeadlessJsTaskSupport';
11
+ export * from '../../src/private/specs_DEPRECATED/modules/NativeHeadlessJsTaskSupport';
12
+ import NativeHeadlessJsTaskSupport from '../../src/private/specs_DEPRECATED/modules/NativeHeadlessJsTaskSupport';
13
13
  export default NativeHeadlessJsTaskSupport;
@@ -8,6 +8,6 @@
8
8
  * @format
9
9
  */
10
10
 
11
- export * from '../../src/private/specs/modules/NativeI18nManager';
12
- import NativeI18nManager from '../../src/private/specs/modules/NativeI18nManager';
11
+ export * from '../../src/private/specs_DEPRECATED/modules/NativeI18nManager';
12
+ import NativeI18nManager from '../../src/private/specs_DEPRECATED/modules/NativeI18nManager';
13
13
  export default NativeI18nManager;
@@ -8,6 +8,6 @@
8
8
  * @format
9
9
  */
10
10
 
11
- export * from '../../src/private/specs/modules/NativeUIManager';
12
- import NativeUIManager from '../../src/private/specs/modules/NativeUIManager';
11
+ export * from '../../src/private/specs_DEPRECATED/modules/NativeUIManager';
12
+ import NativeUIManager from '../../src/private/specs_DEPRECATED/modules/NativeUIManager';
13
13
  export default NativeUIManager;
@@ -15,9 +15,10 @@ import NativeUIManager from './NativeUIManager';
15
15
  import nullthrows from 'nullthrows';
16
16
 
17
17
  const NativeModules = require('../BatchedBridge/NativeModules').default;
18
- const defineLazyObjectProperty = require('../Utilities/defineLazyObjectProperty');
19
- const Platform = require('../Utilities/Platform');
20
- const UIManagerProperties = require('./UIManagerProperties');
18
+ const defineLazyObjectProperty =
19
+ require('../Utilities/defineLazyObjectProperty').default;
20
+ const Platform = require('../Utilities/Platform').default;
21
+ const UIManagerProperties = require('./UIManagerProperties').default;
21
22
 
22
23
  const viewManagerConfigs: {[string]: any | null} = {};
23
24
 
@@ -36,7 +37,6 @@ function getConstants(): Object {
36
37
  function getViewManagerConfig(viewManagerName: string): any {
37
38
  if (
38
39
  viewManagerConfigs[viewManagerName] === undefined &&
39
- global.nativeCallSyncHook && // If we're in the Chrome Debugger, let's not even try calling the sync method
40
40
  NativeUIManager.getConstantsForViewManager
41
41
  ) {
42
42
  try {
@@ -188,4 +188,4 @@ if (!global.nativeCallSyncHook) {
188
188
  });
189
189
  }
190
190
 
191
- module.exports = UIManagerJS;
191
+ export default UIManagerJS;
@@ -15,9 +15,10 @@ import NativeUIManager from './NativeUIManager';
15
15
  import nullthrows from 'nullthrows';
16
16
 
17
17
  const NativeModules = require('../BatchedBridge/NativeModules').default;
18
- const defineLazyObjectProperty = require('../Utilities/defineLazyObjectProperty');
19
- const Platform = require('../Utilities/Platform');
20
- const UIManagerProperties = require('./UIManagerProperties');
18
+ const defineLazyObjectProperty =
19
+ require('../Utilities/defineLazyObjectProperty').default;
20
+ const Platform = require('../Utilities/Platform').default;
21
+ const UIManagerProperties = require('./UIManagerProperties').default;
21
22
 
22
23
  const viewManagerConfigs: {[string]: any | null} = {};
23
24
 
@@ -36,7 +37,6 @@ function getConstants(): Object {
36
37
  function getViewManagerConfig(viewManagerName: string): any {
37
38
  if (
38
39
  viewManagerConfigs[viewManagerName] === undefined &&
39
- global.nativeCallSyncHook && // If we're in the Chrome Debugger, let's not even try calling the sync method
40
40
  NativeUIManager.getConstantsForViewManager
41
41
  ) {
42
42
  try {
@@ -207,4 +207,4 @@ if (!global.nativeCallSyncHook) {
207
207
  });
208
208
  }
209
209
 
210
- module.exports = UIManagerJS;
210
+ export default UIManagerJS;
@@ -13,65 +13,118 @@
13
13
  * instances and get some data from them (like their instance handle / fiber).
14
14
  */
15
15
 
16
- import type ReactNativeElement from '../../../src/private/webapis/dom/nodes/ReactNativeElement';
17
- import type ReadOnlyText from '../../../src/private/webapis/dom/nodes/ReadOnlyText';
16
+ import type ReactNativeDocumentT from '../../../src/private/webapis/dom/nodes/ReactNativeDocument';
17
+ import typeof * as ReactNativeDocumentModuleT from '../../../src/private/webapis/dom/nodes/ReactNativeDocument';
18
+ import type ReactNativeElementT from '../../../src/private/webapis/dom/nodes/ReactNativeElement';
19
+ import type ReadOnlyTextT from '../../../src/private/webapis/dom/nodes/ReadOnlyText';
18
20
  import typeof * as RendererProxyT from '../../ReactNative/RendererProxy';
19
21
  import type {
20
22
  InternalInstanceHandle,
21
23
  Node,
22
24
  ViewConfig,
23
25
  } from '../../Renderer/shims/ReactNativeTypes';
24
- import type ReactFabricHostComponent from './ReactFabricHostComponent';
26
+ import type {RootTag} from '../RootTag';
27
+ import type ReactFabricHostComponentT from './ReactFabricHostComponent';
25
28
 
26
29
  import * as ReactNativeFeatureFlags from '../../../src/private/featureflags/ReactNativeFeatureFlags';
27
30
 
28
- // Lazy loaded to avoid evaluating the module when using the legacy renderer.
29
- let PublicInstanceClass:
30
- | Class<ReactFabricHostComponent>
31
- | Class<ReactNativeElement>;
32
- let ReadOnlyTextClass: Class<ReadOnlyText>;
31
+ export opaque type PublicRootInstance = mixed;
33
32
 
34
33
  // Lazy loaded to avoid evaluating the module when using the legacy renderer.
34
+ let ReactNativeDocumentModuleObject: ?ReactNativeDocumentModuleT;
35
+ let ReactFabricHostComponentClass: Class<ReactFabricHostComponentT>;
36
+ let ReactNativeElementClass: Class<ReactNativeElementT>;
37
+ let ReadOnlyTextClass: Class<ReadOnlyTextT>;
35
38
  let RendererProxy: RendererProxyT;
36
39
 
37
- export function createPublicInstance(
38
- tag: number,
39
- viewConfig: ViewConfig,
40
- internalInstanceHandle: InternalInstanceHandle,
41
- ): ReactFabricHostComponent | ReactNativeElement {
42
- if (PublicInstanceClass == null) {
43
- // We don't use inline requires in react-native, so this forces lazy loading
44
- // the right module to avoid eagerly loading both.
45
- if (ReactNativeFeatureFlags.enableAccessToHostTreeInFabric()) {
46
- PublicInstanceClass =
47
- require('../../../src/private/webapis/dom/nodes/ReactNativeElement').default;
48
- } else {
49
- PublicInstanceClass = require('./ReactFabricHostComponent').default;
50
- }
40
+ function getReactNativeDocumentModule(): ReactNativeDocumentModuleT {
41
+ if (ReactNativeDocumentModuleObject == null) {
42
+ // We initialize this lazily to avoid a require cycle.
43
+ ReactNativeDocumentModuleObject = require('../../../src/private/webapis/dom/nodes/ReactNativeDocument');
51
44
  }
52
45
 
53
- return new PublicInstanceClass(tag, viewConfig, internalInstanceHandle);
46
+ return ReactNativeDocumentModuleObject;
54
47
  }
55
48
 
56
- export function createPublicTextInstance(
57
- internalInstanceHandle: InternalInstanceHandle,
58
- ): ReadOnlyText {
49
+ function getReactNativeElementClass(): Class<ReactNativeElementT> {
50
+ if (ReactNativeElementClass == null) {
51
+ ReactNativeElementClass =
52
+ require('../../../src/private/webapis/dom/nodes/ReactNativeElement').default;
53
+ }
54
+ return ReactNativeElementClass;
55
+ }
56
+
57
+ function getReactFabricHostComponentClass(): Class<ReactFabricHostComponentT> {
58
+ if (ReactFabricHostComponentClass == null) {
59
+ ReactFabricHostComponentClass =
60
+ require('./ReactFabricHostComponent').default;
61
+ }
62
+ return ReactFabricHostComponentClass;
63
+ }
64
+
65
+ function getReadOnlyTextClass(): Class<ReadOnlyTextT> {
59
66
  if (ReadOnlyTextClass == null) {
60
67
  ReadOnlyTextClass =
61
68
  require('../../../src/private/webapis/dom/nodes/ReadOnlyText').default;
62
69
  }
70
+ return ReadOnlyTextClass;
71
+ }
72
+
73
+ export function createPublicRootInstance(rootTag: RootTag): PublicRootInstance {
74
+ if (
75
+ ReactNativeFeatureFlags.enableAccessToHostTreeInFabric() &&
76
+ ReactNativeFeatureFlags.enableDOMDocumentAPI()
77
+ ) {
78
+ const ReactNativeDocumentModule = getReactNativeDocumentModule();
79
+
80
+ // $FlowExpectedError[incompatible-return]
81
+ return ReactNativeDocumentModule.createReactNativeDocument(rootTag);
82
+ }
83
+
84
+ // $FlowExpectedError[incompatible-return]
85
+ return null;
86
+ }
87
+
88
+ export function createPublicInstance(
89
+ tag: number,
90
+ viewConfig: ViewConfig,
91
+ internalInstanceHandle: InternalInstanceHandle,
92
+ ownerDocument: ReactNativeDocumentT,
93
+ ): ReactFabricHostComponentT | ReactNativeElementT {
94
+ if (ReactNativeFeatureFlags.enableAccessToHostTreeInFabric()) {
95
+ const ReactNativeElement = getReactNativeElementClass();
96
+ return new ReactNativeElement(
97
+ tag,
98
+ viewConfig,
99
+ internalInstanceHandle,
100
+ ownerDocument,
101
+ );
102
+ } else {
103
+ const ReactFabricHostComponent = getReactFabricHostComponentClass();
104
+ return new ReactFabricHostComponent(
105
+ tag,
106
+ viewConfig,
107
+ internalInstanceHandle,
108
+ );
109
+ }
110
+ }
63
111
 
64
- return new ReadOnlyTextClass(internalInstanceHandle);
112
+ export function createPublicTextInstance(
113
+ internalInstanceHandle: InternalInstanceHandle,
114
+ ownerDocument: ReactNativeDocumentT,
115
+ ): ReadOnlyTextT {
116
+ const ReadOnlyText = getReadOnlyTextClass();
117
+ return new ReadOnlyText(internalInstanceHandle, ownerDocument);
65
118
  }
66
119
 
67
120
  export function getNativeTagFromPublicInstance(
68
- publicInstance: ReactFabricHostComponent | ReactNativeElement,
121
+ publicInstance: ReactFabricHostComponentT | ReactNativeElementT,
69
122
  ): number {
70
123
  return publicInstance.__nativeTag;
71
124
  }
72
125
 
73
126
  export function getNodeFromPublicInstance(
74
- publicInstance: ReactFabricHostComponent | ReactNativeElement,
127
+ publicInstance: ReactFabricHostComponentT | ReactNativeElementT,
75
128
  ): ?Node {
76
129
  // Avoid loading ReactFabric if using an instance from the legacy renderer.
77
130
  if (publicInstance.__internalInstanceHandle == null) {
@@ -82,12 +135,13 @@ export function getNodeFromPublicInstance(
82
135
  RendererProxy = require('../../ReactNative/RendererProxy');
83
136
  }
84
137
  return RendererProxy.getNodeFromInternalInstanceHandle(
138
+ // $FlowExpectedError[incompatible-call] __internalInstanceHandle is always an InternalInstanceHandle from React when we get here.
85
139
  publicInstance.__internalInstanceHandle,
86
140
  );
87
141
  }
88
142
 
89
143
  export function getInternalInstanceHandleFromPublicInstance(
90
- publicInstance: ReactFabricHostComponent | ReactNativeElement,
144
+ publicInstance: ReactFabricHostComponentT | ReactNativeElementT,
91
145
  ): InternalInstanceHandle {
92
146
  // TODO(T174762768): Remove this once OSS versions of renderers will be synced.
93
147
  // $FlowExpectedError[prop-missing] Keeping this for backwards-compatibility with the renderers versions in open source.
@@ -96,5 +150,6 @@ export function getInternalInstanceHandleFromPublicInstance(
96
150
  return publicInstance._internalInstanceHandle;
97
151
  }
98
152
 
153
+ // $FlowExpectedError[incompatible-return] __internalInstanceHandle is always an InternalInstanceHandle from React when we get here.
99
154
  return publicInstance.__internalInstanceHandle;
100
155
  }
@@ -28,4 +28,4 @@ const ReactNativeFeatureFlags: FeatureFlags = {
28
28
  shouldPressibilityUseW3CPointerEventsForHover: () => false,
29
29
  };
30
30
 
31
- module.exports = ReactNativeFeatureFlags;
31
+ export default ReactNativeFeatureFlags;
@@ -65,4 +65,4 @@ const ReactNativeRuntimeDiagnostics: RuntimeDiagnostics = {
65
65
  },
66
66
  };
67
67
 
68
- module.exports = ReactNativeRuntimeDiagnostics;
68
+ export default ReactNativeRuntimeDiagnostics;
@@ -162,3 +162,12 @@ export function getPublicInstanceFromInternalInstanceHandle(
162
162
  internalInstanceHandle,
163
163
  );
164
164
  }
165
+
166
+ export function getPublicInstanceFromRootTag(
167
+ rootTag: number,
168
+ ): mixed /*PublicRootInstance | null*/ {
169
+ // This is only available in Fabric
170
+ return require('../Renderer/shims/ReactFabric').default.getPublicInstanceFromRootTag(
171
+ rootTag,
172
+ );
173
+ }
@@ -12,7 +12,7 @@ import * as React from 'react';
12
12
 
13
13
  export opaque type RootTag = number;
14
14
 
15
- export const RootTagContext: React$Context<RootTag> =
15
+ export const RootTagContext: React.Context<RootTag> =
16
16
  React.createContext<RootTag>(0);
17
17
 
18
18
  if (__DEV__) {
@@ -111,3 +111,4 @@ export interface UIManagerStatic {
111
111
 
112
112
  export const UIManager: UIManagerStatic;
113
113
  export type UIManager = UIManagerStatic;
114
+ export default UIManager;