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

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (479) hide show
  1. package/.eslintignore +1 -1
  2. package/.flowconfig +11 -3
  3. package/CHANGELOG.json +411 -54
  4. package/CHANGELOG.md +157 -30
  5. package/IntegrationTests/AccessibilityManagerTest.js +2 -2
  6. package/IntegrationTests/AppEventsTest.js +2 -2
  7. package/IntegrationTests/LayoutEventsTest.js +8 -10
  8. package/IntegrationTests/LoggingTestModule.js +1 -2
  9. package/IntegrationTests/websocket_integration_test_server.js +1 -1
  10. package/Libraries/ActionSheetIOS/ActionSheetIOS.d.ts +6 -0
  11. package/Libraries/ActionSheetIOS/ActionSheetIOS.js +6 -0
  12. package/Libraries/ActionSheetIOS/NativeActionSheetManager.js +4 -45
  13. package/Libraries/Alert/NativeAlertManager.js +4 -26
  14. package/Libraries/Animated/Animated.js +2 -2
  15. package/Libraries/Animated/AnimatedPlatformConfig.js +1 -1
  16. package/Libraries/Animated/NativeAnimatedHelper.js +14 -11
  17. package/Libraries/Animated/NativeAnimatedHelper.win32.js +14 -11
  18. package/Libraries/Animated/NativeAnimatedModule.js +4 -68
  19. package/Libraries/Animated/NativeAnimatedTurboModule.js +4 -69
  20. package/Libraries/Animated/animations/Animation.js +6 -22
  21. package/Libraries/Animated/components/AnimatedFlatList.js +1 -16
  22. package/Libraries/Animated/components/AnimatedScrollView.js +36 -31
  23. package/Libraries/Animated/components/AnimatedSectionList.js +1 -20
  24. package/Libraries/Animated/createAnimatedComponent.js +45 -40
  25. package/Libraries/Animated/nodes/AnimatedStyle.js +1 -1
  26. package/Libraries/Animated/shouldUseTurboAnimatedModule.js +1 -1
  27. package/Libraries/Animated/useAnimatedProps.js +21 -1
  28. package/Libraries/AppState/NativeAppState.js +4 -24
  29. package/Libraries/BatchedBridge/NativeModules.js +1 -1
  30. package/Libraries/Blob/Blob.js +1 -4
  31. package/Libraries/Blob/BlobManager.js +6 -8
  32. package/Libraries/Blob/File.js +1 -1
  33. package/Libraries/Blob/NativeBlobModule.js +4 -50
  34. package/Libraries/Blob/NativeFileReaderModule.js +4 -13
  35. package/Libraries/BugReporting/NativeBugReporting.js +4 -12
  36. package/Libraries/Components/AccessibilityInfo/AccessibilityInfo.d.ts +5 -1
  37. package/Libraries/Components/AccessibilityInfo/AccessibilityInfo.win32.js +48 -7
  38. package/Libraries/Components/AccessibilityInfo/NativeAccessibilityInfo.js +3 -23
  39. package/Libraries/Components/AccessibilityInfo/NativeAccessibilityInfoWin32.js +11 -0
  40. package/Libraries/Components/AccessibilityInfo/NativeAccessibilityManager.js +4 -57
  41. package/Libraries/Components/AccessibilityInfo/legacySendAccessibilityEvent.android.js +3 -2
  42. package/Libraries/Components/AccessibilityInfo/legacySendAccessibilityEvent.win32.js +3 -2
  43. package/Libraries/Components/ActivityIndicator/ActivityIndicator.js +9 -40
  44. package/Libraries/Components/ActivityIndicator/ActivityIndicatorViewNativeComponent.js +3 -43
  45. package/Libraries/Components/Button/ButtonWin32.Props.d.ts +36 -36
  46. package/Libraries/Components/Button/ButtonWin32.Props.js +2 -2
  47. package/Libraries/Components/Button/ButtonWin32.Props.js.map +1 -1
  48. package/Libraries/Components/Button/ButtonWin32.d.ts +19 -19
  49. package/Libraries/Components/Button/ButtonWin32.js +82 -82
  50. package/Libraries/Components/Button/ButtonWin32.js.map +1 -1
  51. package/Libraries/Components/Button.js +103 -107
  52. package/Libraries/Components/Button.win32.js +297 -301
  53. package/Libraries/Components/Clipboard/NativeClipboard.js +3 -11
  54. package/Libraries/Components/DrawerAndroid/AndroidDrawerLayoutNativeComponent.js +3 -114
  55. package/Libraries/Components/DrawerAndroid/DrawerLayoutAndroid.android.js +1 -5
  56. package/Libraries/Components/EnterString.win32.d.ts +12 -12
  57. package/Libraries/Components/EnterString.win32.js +81 -81
  58. package/Libraries/Components/EnterString.win32.js.map +1 -1
  59. package/Libraries/Components/Keyboard/NativeKeyboardObserver.js +3 -10
  60. package/Libraries/Components/PopupMenuAndroid/PopupMenuAndroid.android.js +69 -0
  61. package/Libraries/Components/PopupMenuAndroid/PopupMenuAndroid.d.ts +24 -0
  62. package/Libraries/Components/PopupMenuAndroid/PopupMenuAndroid.js +33 -0
  63. package/Libraries/Components/PopupMenuAndroid/PopupMenuAndroidNativeComponent.js +13 -0
  64. package/Libraries/Components/Pressable/Pressable.js +1 -1
  65. package/Libraries/Components/Pressable/Pressable.win32.js +1 -1
  66. package/Libraries/Components/Pressable/useAndroidRippleForView.js +5 -4
  67. package/Libraries/Components/ProgressBarAndroid/ProgressBarAndroidNativeComponent.js +4 -24
  68. package/Libraries/Components/RefreshControl/AndroidSwipeRefreshLayoutNativeComponent.js +3 -64
  69. package/Libraries/Components/RefreshControl/PullToRefreshViewNativeComponent.js +3 -61
  70. package/Libraries/Components/RefreshControl/RefreshControl.js +1 -1
  71. package/Libraries/Components/SafeAreaView/RCTSafeAreaViewNativeComponent.js +3 -15
  72. package/Libraries/Components/ScrollView/AndroidHorizontalScrollContentViewNativeComponent.js +3 -16
  73. package/Libraries/Components/ScrollView/ScrollContentViewNativeComponent.js +1 -1
  74. package/Libraries/Components/ScrollView/ScrollView.d.ts +5 -6
  75. package/Libraries/Components/ScrollView/ScrollView.js +12 -38
  76. package/Libraries/Components/ScrollView/ScrollView.win32.js +12 -38
  77. package/Libraries/Components/ScrollView/ScrollViewStickyHeader.js +1 -2
  78. package/Libraries/Components/Sound/NativeSoundManager.js +3 -12
  79. package/Libraries/Components/StatusBar/NativeStatusBarManagerAndroid.js +3 -58
  80. package/Libraries/Components/StatusBar/NativeStatusBarManagerIOS.js +3 -79
  81. package/Libraries/Components/Switch/AndroidSwitchNativeComponent.js +4 -53
  82. package/Libraries/Components/Switch/Switch.js +0 -2
  83. package/Libraries/Components/Switch/SwitchNativeComponent.js +4 -52
  84. package/Libraries/Components/TextInput/AndroidTextInputNativeComponent.js +8 -0
  85. package/Libraries/Components/TextInput/InputAccessoryView.js +18 -20
  86. package/Libraries/Components/TextInput/RCTInputAccessoryViewNativeComponent.js +4 -17
  87. package/Libraries/Components/TextInput/RCTTextInputViewConfig.js +3 -6
  88. package/Libraries/Components/TextInput/Tests/TextInputTest.d.ts +8 -8
  89. package/Libraries/Components/TextInput/Tests/TextInputTest.js +127 -127
  90. package/Libraries/Components/TextInput/Tests/TextInputTest.js.map +1 -1
  91. package/Libraries/Components/TextInput/TextInput.d.ts +16 -0
  92. package/Libraries/Components/TextInput/TextInput.flow.js +16 -0
  93. package/Libraries/Components/TextInput/TextInput.js +65 -32
  94. package/Libraries/Components/TextInput/TextInput.win32.js +70 -37
  95. package/Libraries/Components/ToastAndroid/NativeToastAndroid.js +3 -28
  96. package/Libraries/Components/Touchable/PooledClass.js +1 -1
  97. package/Libraries/Components/Touchable/Tests/TouchableWin32Test.d.ts +8 -8
  98. package/Libraries/Components/Touchable/Tests/TouchableWin32Test.js +343 -344
  99. package/Libraries/Components/Touchable/Tests/TouchableWin32Test.js.map +1 -1
  100. package/Libraries/Components/Touchable/Touchable.js +2 -3
  101. package/Libraries/Components/Touchable/Touchable.win32.js +2 -3
  102. package/Libraries/Components/Touchable/TouchableHighlight.js +4 -4
  103. package/Libraries/Components/Touchable/TouchableNativeFeedback.js +2 -1
  104. package/Libraries/Components/Touchable/TouchableOpacity.js +5 -2
  105. package/Libraries/Components/Touchable/TouchableWin32.Props.d.ts +37 -37
  106. package/Libraries/Components/Touchable/TouchableWin32.Props.js +2 -2
  107. package/Libraries/Components/Touchable/TouchableWin32.Props.js.map +1 -1
  108. package/Libraries/Components/Touchable/TouchableWin32.Types.d.ts +114 -114
  109. package/Libraries/Components/Touchable/TouchableWin32.Types.js +2 -2
  110. package/Libraries/Components/Touchable/TouchableWin32.Types.js.map +1 -1
  111. package/Libraries/Components/Touchable/TouchableWin32.d.ts +91 -91
  112. package/Libraries/Components/Touchable/TouchableWin32.js +506 -506
  113. package/Libraries/Components/Touchable/TouchableWin32.js.map +1 -1
  114. package/Libraries/Components/UnimplementedViews/UnimplementedNativeViewNativeComponent.js +3 -16
  115. package/Libraries/Components/View/ReactNativeStyleAttributes.js +1 -1
  116. package/Libraries/Components/View/View.js +0 -11
  117. package/Libraries/Components/View/View.win32.js +18 -17
  118. package/Libraries/Components/View/ViewAccessibility.d.ts +33 -17
  119. package/Libraries/Components/View/ViewPropTypes.d.ts +28 -17
  120. package/Libraries/Components/View/ViewPropTypes.js +36 -36
  121. package/Libraries/Components/View/ViewPropTypes.win32.js +36 -36
  122. package/Libraries/Core/InitializeCore.js +1 -1
  123. package/Libraries/Core/NativeExceptionsManager.js +3 -93
  124. package/Libraries/Core/ReactNativeVersion.js +12 -6
  125. package/Libraries/Core/ReactNativeVersionCheck.js +6 -6
  126. package/Libraries/Core/ReactNativeVersionCheck.win32.js +6 -6
  127. package/Libraries/Core/SegmentFetcher/NativeSegmentFetcher.js +3 -18
  128. package/Libraries/Core/Timers/NativeTiming.js +3 -16
  129. package/Libraries/Core/registerCallableModule.js +42 -0
  130. package/Libraries/Core/setUpPerformance.js +2 -2
  131. package/Libraries/Core/setUpPerformanceObserver.js +3 -1
  132. package/Libraries/Debugging/DebuggingOverlay.js +111 -0
  133. package/Libraries/Debugging/DebuggingOverlayNativeComponent.js +13 -0
  134. package/Libraries/Debugging/DebuggingOverlayRegistry.js +513 -0
  135. package/Libraries/Debugging/useSubscribeToDebuggingOverlayRegistry.js +32 -0
  136. package/Libraries/DevToolsSettings/NativeDevToolsSettingsManager.js +3 -14
  137. package/Libraries/HeapCapture/NativeJSCHeapCapture.js +3 -9
  138. package/Libraries/Image/AssetSourceResolver.js +5 -5
  139. package/Libraries/Image/AssetUtils.js +4 -5
  140. package/Libraries/Image/Image.android.js +146 -174
  141. package/Libraries/Image/Image.d.ts +1 -1
  142. package/Libraries/Image/Image.ios.js +53 -79
  143. package/Libraries/Image/Image.win32.js +52 -74
  144. package/Libraries/Image/ImageBackground.js +2 -2
  145. package/Libraries/Image/ImageInjection.js +76 -18
  146. package/Libraries/Image/ImageTypes.d.ts +25 -25
  147. package/Libraries/Image/ImageTypes.flow.js +71 -0
  148. package/Libraries/Image/ImageTypes.js +7 -7
  149. package/Libraries/Image/ImageTypes.js.map +1 -1
  150. package/Libraries/Image/ImageUtils.js +1 -1
  151. package/Libraries/Image/ImageViewNativeComponent.js +18 -0
  152. package/Libraries/Image/NativeImageEditor.js +3 -42
  153. package/Libraries/Image/NativeImageLoaderAndroid.js +4 -28
  154. package/Libraries/Image/NativeImageLoaderIOS.js +4 -28
  155. package/Libraries/Image/NativeImageLoaderWin32.js +4 -36
  156. package/Libraries/Image/NativeImageStoreAndroid.js +3 -16
  157. package/Libraries/Image/NativeImageStoreIOS.js +3 -23
  158. package/Libraries/Image/Tests/ImageWin32Test.d.ts +8 -8
  159. package/Libraries/Image/Tests/ImageWin32Test.js +21 -21
  160. package/Libraries/Image/Tests/ImageWin32Test.js.map +1 -1
  161. package/Libraries/Image/resolveAssetSource.js +59 -26
  162. package/Libraries/Inspector/ElementProperties.js +26 -52
  163. package/Libraries/Inspector/Inspector.js +122 -186
  164. package/Libraries/Inspector/Inspector.win32.js +118 -185
  165. package/Libraries/Inspector/InspectorOverlay.js +21 -33
  166. package/Libraries/Inspector/InspectorOverlay.win32.js +22 -33
  167. package/Libraries/Inspector/InspectorPanel.js +3 -17
  168. package/Libraries/Inspector/ReactDevToolsOverlay.js +171 -0
  169. package/Libraries/Inspector/getInspectorDataForViewAtPoint.js +20 -8
  170. package/Libraries/Interaction/FrameRateLogger.js +8 -18
  171. package/Libraries/Interaction/NativeFrameRateLogger.js +4 -16
  172. package/Libraries/IntersectionObserver/IntersectionObserver.js +1 -1
  173. package/Libraries/IntersectionObserver/IntersectionObserverEntry.js +20 -19
  174. package/Libraries/IntersectionObserver/IntersectionObserverManager.js +84 -6
  175. package/Libraries/IntersectionObserver/NativeIntersectionObserver.js +3 -31
  176. package/Libraries/IntersectionObserver/__mocks__/NativeIntersectionObserver.js +12 -2
  177. package/Libraries/LayoutAnimation/LayoutAnimation.js +1 -2
  178. package/Libraries/Linking/NativeIntentAndroid.js +3 -20
  179. package/Libraries/Linking/NativeLinkingManager.js +3 -17
  180. package/Libraries/Lists/FillRateHelper.js +1 -1
  181. package/Libraries/Lists/FlatList.d.ts +2 -2
  182. package/Libraries/Lists/FlatList.js +6 -1
  183. package/Libraries/Lists/SectionList.d.ts +6 -1
  184. package/Libraries/Lists/ViewabilityHelper.js +1 -1
  185. package/Libraries/Lists/VirtualizeUtils.js +1 -1
  186. package/Libraries/Lists/VirtualizedList.js +1 -1
  187. package/Libraries/Lists/VirtualizedListContext.js +1 -1
  188. package/Libraries/Lists/VirtualizedSectionList.js +1 -1
  189. package/Libraries/LogBox/Data/parseLogBoxLog.js +1 -1
  190. package/Libraries/LogBox/LogBoxInspectorContainer.js +1 -1
  191. package/Libraries/Modal/Modal.js +43 -11
  192. package/Libraries/Modal/NativeModalManager.js +3 -11
  193. package/Libraries/Modal/RCTModalHostViewNativeComponent.js +3 -129
  194. package/Libraries/MutationObserver/MutationObserver.js +1 -1
  195. package/Libraries/MutationObserver/MutationObserverManager.js +2 -2
  196. package/Libraries/MutationObserver/MutationRecord.js +12 -10
  197. package/Libraries/MutationObserver/NativeMutationObserver.js +3 -48
  198. package/Libraries/MutationObserver/__mocks__/NativeMutationObserver.js +1 -1
  199. package/Libraries/NativeComponent/BaseViewConfig.android.js +1 -0
  200. package/Libraries/NativeComponent/NativeComponentRegistry.js +1 -1
  201. package/Libraries/NativeModules/specs/NativeAnimationsDebugModule.js +3 -10
  202. package/Libraries/NativeModules/specs/NativeDevMenu.js +3 -13
  203. package/Libraries/NativeModules/specs/NativeDevSettings.js +3 -23
  204. package/Libraries/NativeModules/specs/NativeDeviceEventManager.js +3 -9
  205. package/Libraries/NativeModules/specs/NativeDialogManagerAndroid.js +3 -38
  206. package/Libraries/NativeModules/specs/NativeLogBox.js +3 -10
  207. package/Libraries/NativeModules/specs/NativeRedBox.js +4 -11
  208. package/Libraries/NativeModules/specs/NativeSourceCode.js +2 -25
  209. package/Libraries/Network/FormData.js +3 -1
  210. package/Libraries/Network/NativeNetworkingAndroid.js +4 -28
  211. package/Libraries/Network/NativeNetworkingIOS.js +4 -28
  212. package/Libraries/Performance/NativeJSCSamplingProfiler.js +3 -9
  213. package/Libraries/PermissionsAndroid/NativePermissionsAndroid.js +4 -68
  214. package/Libraries/PermissionsAndroid/PermissionsAndroid.js +3 -3
  215. package/Libraries/PersonaCoin/PersonaCoin.d.ts +3 -3
  216. package/Libraries/PersonaCoin/PersonaCoin.js +14 -14
  217. package/Libraries/PersonaCoin/PersonaCoin.js.map +1 -1
  218. package/Libraries/PersonaCoin/PersonaCoinPropTypes.d.ts +2 -2
  219. package/Libraries/PersonaCoin/PersonaCoinPropTypes.js +19 -19
  220. package/Libraries/PersonaCoin/PersonaCoinPropTypes.js.map +1 -1
  221. package/Libraries/PersonaCoin/PersonaCoinTypes.d.ts +33 -33
  222. package/Libraries/PersonaCoin/PersonaCoinTypes.js +23 -23
  223. package/Libraries/PersonaCoin/PersonaCoinTypes.js.map +1 -1
  224. package/Libraries/Pressability/Pressability.js +12 -2
  225. package/Libraries/Pressability/Pressability.win32.js +12 -2
  226. package/Libraries/Pressability/usePressability.js +7 -0
  227. package/Libraries/PushNotificationIOS/NativePushNotificationManagerIOS.js +4 -70
  228. package/Libraries/PushNotificationIOS/PushNotificationIOS.js +45 -39
  229. package/Libraries/ReactNative/AppContainer-dev.js +192 -0
  230. package/Libraries/ReactNative/AppContainer-prod.js +53 -0
  231. package/Libraries/ReactNative/AppContainer.js +6 -149
  232. package/Libraries/ReactNative/AppRegistry.js +3 -1
  233. package/Libraries/ReactNative/BridgelessUIManager.js +375 -128
  234. package/Libraries/ReactNative/FabricUIManager.js +6 -0
  235. package/Libraries/ReactNative/NativeHeadlessJsTaskSupport.js +3 -10
  236. package/Libraries/ReactNative/NativeI18nManager.js +3 -18
  237. package/Libraries/ReactNative/NativeUIManager.js +4 -112
  238. package/Libraries/ReactNative/PaperUIManager.js +8 -7
  239. package/Libraries/ReactNative/PaperUIManager.win32.js +26 -7
  240. package/Libraries/ReactNative/ReactFabricInternals.js +1 -1
  241. package/Libraries/ReactNative/ReactFabricPublicInstance/ReactFabricPublicInstance.js +24 -5
  242. package/Libraries/ReactNative/ReactNativeFeatureFlags.js +0 -45
  243. package/Libraries/ReactNative/RendererImplementation.js +11 -0
  244. package/Libraries/ReactNative/UIManager.d.ts +11 -34
  245. package/Libraries/ReactNative/UIManager.js +2 -23
  246. package/Libraries/ReactNative/UIManagerProperties.js +0 -2
  247. package/Libraries/ReactNative/__mocks__/FabricUIManager.js +23 -1
  248. package/Libraries/ReactNative/getNativeComponentAttributes.js +5 -1
  249. package/Libraries/ReactNative/renderApplication.js +9 -6
  250. package/Libraries/ReactPrivate/ReactNativePrivateInterface.js +6 -1
  251. package/Libraries/Renderer/implementations/ReactFabric-dev.js +24771 -21123
  252. package/Libraries/Renderer/implementations/ReactFabric-prod.js +4160 -3109
  253. package/Libraries/Renderer/implementations/ReactFabric-profiling.js +4384 -3322
  254. package/Libraries/Renderer/implementations/ReactNativeRenderer-dev.js +25194 -21398
  255. package/Libraries/Renderer/implementations/ReactNativeRenderer-prod.js +3763 -2636
  256. package/Libraries/Renderer/implementations/ReactNativeRenderer-profiling.js +4027 -2867
  257. package/Libraries/Renderer/shims/ReactNativeTypes.js +8 -9
  258. package/Libraries/Renderer/shims/ReactNativeViewConfigRegistry.js +7 -12
  259. package/Libraries/Settings/NativeSettingsManager.js +4 -16
  260. package/Libraries/Share/NativeShareModule.js +3 -13
  261. package/Libraries/StyleSheet/PlatformColorValueTypes.win32.js +1 -1
  262. package/Libraries/StyleSheet/PlatformColorValueTypesWin32.d.ts +1 -1
  263. package/Libraries/StyleSheet/PlatformColorValueTypesWin32.js +1 -1
  264. package/Libraries/StyleSheet/StyleSheet.d.ts +1 -20
  265. package/Libraries/StyleSheet/StyleSheet.js +5 -28
  266. package/Libraries/StyleSheet/StyleSheet.win32.js +5 -28
  267. package/Libraries/StyleSheet/StyleSheetTypes.d.ts +47 -7
  268. package/Libraries/StyleSheet/StyleSheetTypes.js +16 -11
  269. package/Libraries/StyleSheet/flattenStyle.js +2 -2
  270. package/Libraries/StyleSheet/normalizeColor.js +1 -1
  271. package/Libraries/StyleSheet/processAspectRatio.js +1 -1
  272. package/Libraries/StyleSheet/processFontVariant.js +1 -1
  273. package/Libraries/Text/Text.d.ts +5 -6
  274. package/Libraries/Text/Text.js +0 -6
  275. package/Libraries/Text/Text.win32.js +0 -6
  276. package/Libraries/Text/TextAncestor.js +2 -3
  277. package/Libraries/TurboModule/samples/NativeSampleTurboModule.js +4 -41
  278. package/Libraries/Types/ReactDevToolsTypes.js +58 -0
  279. package/Libraries/Types/UIManagerJSInterface.js +16 -0
  280. package/Libraries/Utilities/DebugEnvironment.js +1 -4
  281. package/Libraries/Utilities/Dimensions.js +8 -16
  282. package/Libraries/Utilities/Dimensions.win32.js +8 -16
  283. package/Libraries/Utilities/FocusManager.win32.js +2 -0
  284. package/Libraries/Utilities/GlobalPerformanceLogger.js +1 -2
  285. package/Libraries/Utilities/NativeAppearance.js +3 -26
  286. package/Libraries/Utilities/NativeDevLoadingView.js +3 -14
  287. package/Libraries/Utilities/NativeDeviceInfo.js +2 -47
  288. package/Libraries/Utilities/NativePlatformConstantsAndroid.js +3 -34
  289. package/Libraries/Utilities/NativePlatformConstantsIOS.js +3 -26
  290. package/Libraries/Utilities/NativePlatformConstantsWin.js +3 -23
  291. package/Libraries/Utilities/PixelRatio.d.ts +4 -4
  292. package/Libraries/Utilities/Platform.android.js +4 -0
  293. package/Libraries/Utilities/Platform.d.ts +3 -0
  294. package/Libraries/Utilities/Platform.flow.js +7 -0
  295. package/Libraries/Utilities/Platform.flow.win32.js +18 -5
  296. package/Libraries/Utilities/Platform.ios.js +11 -0
  297. package/Libraries/Utilities/Platform.win32.js +9 -1
  298. package/Libraries/Utilities/binaryToBase64.js +1 -1
  299. package/Libraries/Utilities/codegenNativeComponent.js +4 -6
  300. package/Libraries/Utilities/createPerformanceLogger.js +2 -74
  301. package/Libraries/Utilities/useMergeRefs.js +5 -9
  302. package/Libraries/Vibration/NativeVibration.js +3 -14
  303. package/Libraries/WebSocket/NativeWebSocketModule.js +4 -25
  304. package/Libraries/YellowBox/YellowBoxDeprecated.js +1 -1
  305. package/Libraries/platform-types.d.ts +2 -3
  306. package/Libraries/vendor/emitter/EventEmitter.js +1 -0
  307. package/babel.config.js +1 -1
  308. package/flow/jest.js +1 -1
  309. package/flow/react.js +15 -0
  310. package/index.js +66 -99
  311. package/index.win32.js +60 -101
  312. package/jest/assetFileTransformer.js +1 -1
  313. package/jest/local-setup.js +0 -5
  314. package/jest/mockModal.js +2 -1
  315. package/jest/mockScrollView.js +1 -2
  316. package/jest/renderer.js +1 -1
  317. package/jest/setup.js +6 -3
  318. package/jest.config.js +2 -1
  319. package/overrides.json +152 -131
  320. package/package.json +26 -26
  321. package/{Libraries/Core → src/private/core}/setUpDOM.js +2 -2
  322. package/src/private/featureflags/NativeReactNativeFeatureFlags.js +42 -0
  323. package/src/private/featureflags/ReactNativeFeatureFlags.js +140 -0
  324. package/src/private/featureflags/ReactNativeFeatureFlagsBase.js +84 -0
  325. package/src/private/featureflags/__tests__/ReactNativeFeatureFlags-test.js +92 -0
  326. package/src/private/specs/components/ActivityIndicatorViewNativeComponent.js +53 -0
  327. package/src/private/specs/components/AndroidDrawerLayoutNativeComponent.js +124 -0
  328. package/src/private/specs/components/AndroidHorizontalScrollContentViewNativeComponent.js +26 -0
  329. package/src/private/specs/components/AndroidSwipeRefreshLayoutNativeComponent.js +74 -0
  330. package/src/private/specs/components/AndroidSwitchNativeComponent.js +62 -0
  331. package/src/private/specs/components/DebuggingOverlayNativeComponent.js +61 -0
  332. package/src/private/specs/components/PopupMenuAndroidNativeComponent.js +47 -0
  333. package/src/private/specs/components/ProgressBarAndroidNativeComponent.js +36 -0
  334. package/src/private/specs/components/PullToRefreshViewNativeComponent.js +71 -0
  335. package/src/private/specs/components/RCTInputAccessoryViewNativeComponent.js +26 -0
  336. package/src/private/specs/components/RCTModalHostViewNativeComponent.js +139 -0
  337. package/src/private/specs/components/RCTSafeAreaViewNativeComponent.js +25 -0
  338. package/src/private/specs/components/SwitchNativeComponent.js +61 -0
  339. package/src/private/specs/components/UnimplementedNativeViewNativeComponent.js +26 -0
  340. package/src/private/specs/modules/NativeAccessibilityInfo.js +33 -0
  341. package/src/private/specs/modules/NativeAccessibilityInfoWin32.js +39 -0
  342. package/src/private/specs/modules/NativeAccessibilityManager.js +66 -0
  343. package/src/private/specs/modules/NativeActionSheetManager.js +54 -0
  344. package/src/private/specs/modules/NativeAlertManager.js +35 -0
  345. package/src/private/specs/modules/NativeAnimatedModule.js +77 -0
  346. package/src/private/specs/modules/NativeAnimatedTurboModule.js +78 -0
  347. package/src/private/specs/modules/NativeAnimationsDebugModule.js +20 -0
  348. package/src/private/specs/modules/NativeAppState.js +33 -0
  349. package/src/private/specs/modules/NativeAppearance.js +36 -0
  350. package/src/private/specs/modules/NativeBlobModule.js +59 -0
  351. package/src/private/specs/modules/NativeBugReporting.js +20 -0
  352. package/src/private/specs/modules/NativeClipboard.js +21 -0
  353. package/src/private/specs/modules/NativeDevLoadingView.js +24 -0
  354. package/src/private/specs/modules/NativeDevMenu.js +23 -0
  355. package/src/private/specs/modules/NativeDevSettings.js +33 -0
  356. package/src/private/specs/modules/NativeDevToolsSettingsManager.js +24 -0
  357. package/src/private/specs/modules/NativeDeviceEventManager.js +19 -0
  358. package/src/private/specs/modules/NativeDeviceInfo.js +58 -0
  359. package/src/private/specs/modules/NativeDialogManagerAndroid.js +48 -0
  360. package/src/private/specs/modules/NativeExceptionsManager.js +103 -0
  361. package/src/private/specs/modules/NativeFileReaderModule.js +22 -0
  362. package/src/private/specs/modules/NativeFrameRateLogger.js +22 -0
  363. package/src/private/specs/modules/NativeHeadlessJsTaskSupport.js +20 -0
  364. package/src/private/specs/modules/NativeI18nManager.js +28 -0
  365. package/src/private/specs/modules/NativeImageEditor.js +52 -0
  366. package/src/private/specs/modules/NativeImageLoaderAndroid.js +30 -0
  367. package/src/private/specs/modules/NativeImageLoaderIOS.js +37 -0
  368. package/src/private/specs/modules/NativeImageLoaderWin32.js +45 -0
  369. package/src/private/specs/modules/NativeImageStoreAndroid.js +26 -0
  370. package/src/private/specs/modules/NativeImageStoreIOS.js +33 -0
  371. package/src/private/specs/modules/NativeIntentAndroid.js +30 -0
  372. package/src/private/specs/modules/NativeIntersectionObserver.js +41 -0
  373. package/src/private/specs/modules/NativeJSCHeapCapture.js +19 -0
  374. package/src/private/specs/modules/NativeJSCSamplingProfiler.js +19 -0
  375. package/src/private/specs/modules/NativeKeyboardObserver.js +20 -0
  376. package/src/private/specs/modules/NativeLinkingManager.js +27 -0
  377. package/src/private/specs/modules/NativeLogBox.js +20 -0
  378. package/src/private/specs/modules/NativeModalManager.js +21 -0
  379. package/src/private/specs/modules/NativeMutationObserver.js +58 -0
  380. package/src/private/specs/modules/NativeNetworkingAndroid.js +37 -0
  381. package/src/private/specs/modules/NativeNetworkingIOS.js +37 -0
  382. package/src/private/specs/modules/NativePermissionsAndroid.js +77 -0
  383. package/src/private/specs/modules/NativePlatformConstantsAndroid.js +44 -0
  384. package/src/private/specs/modules/NativePlatformConstantsIOS.js +37 -0
  385. package/src/private/specs/modules/NativePlatformConstantsWin.js +37 -0
  386. package/src/private/specs/modules/NativePushNotificationManagerIOS.js +107 -0
  387. package/src/private/specs/modules/NativeRedBox.js +20 -0
  388. package/src/private/specs/modules/NativeSampleTurboModule.js +53 -0
  389. package/src/private/specs/modules/NativeSegmentFetcher.js +28 -0
  390. package/src/private/specs/modules/NativeSettingsManager.js +25 -0
  391. package/src/private/specs/modules/NativeShareModule.js +23 -0
  392. package/src/private/specs/modules/NativeSoundManager.js +22 -0
  393. package/src/private/specs/modules/NativeSourceCode.js +36 -0
  394. package/src/private/specs/modules/NativeStatusBarManagerAndroid.js +68 -0
  395. package/src/private/specs/modules/NativeStatusBarManagerIOS.js +89 -0
  396. package/src/private/specs/modules/NativeTiming.js +26 -0
  397. package/src/private/specs/modules/NativeToastAndroid.js +38 -0
  398. package/src/private/specs/modules/NativeUIManager.js +118 -0
  399. package/src/private/specs/modules/NativeVibration.js +24 -0
  400. package/src/private/specs/modules/NativeWebSocketModule.js +34 -0
  401. package/{Libraries/DOM/Nodes → src/private/webapis/dom/nodes}/ReactNativeElement.js +6 -6
  402. package/{Libraries/DOM/Nodes → src/private/webapis/dom/nodes}/ReadOnlyCharacterData.js +2 -2
  403. package/{Libraries/DOM/Nodes → src/private/webapis/dom/nodes}/ReadOnlyElement.js +5 -5
  404. package/{Libraries/DOM/Nodes → src/private/webapis/dom/nodes}/ReadOnlyNode.js +19 -10
  405. package/{Libraries/DOM/OldStyleCollections → src/private/webapis/dom/oldstylecollections}/DOMRectList.js +1 -1
  406. package/src/private/webapis/dom/oldstylecollections/__tests__/DOMRectList-test.js +85 -0
  407. package/src/private/webapis/dom/oldstylecollections/__tests__/HTMLCollection-test.js +80 -0
  408. package/src/private/webapis/dom/oldstylecollections/__tests__/NodeList-test.js +161 -0
  409. package/{Libraries/WebPerformance → src/private/webapis/performance}/NativePerformance.js +2 -2
  410. package/{Libraries/WebPerformance → src/private/webapis/performance}/NativePerformanceObserver.js +3 -2
  411. package/{Libraries/WebPerformance → src/private/webapis/performance}/Performance.js +2 -2
  412. package/{Libraries/WebPerformance → src/private/webapis/performance}/PerformanceEventTiming.js +1 -1
  413. package/{Libraries/WebPerformance → src/private/webapis/performance}/PerformanceObserver.js +21 -2
  414. package/{Libraries/WebPerformance → src/private/webapis/performance}/RawPerformanceEntry.js +1 -1
  415. package/{Libraries/WebPerformance → src/private/webapis/performance}/__mocks__/NativePerformanceObserver.js +9 -0
  416. package/src/private/webapis/performance/__tests__/EventCounts-test.js +116 -0
  417. package/src/private/webapis/performance/__tests__/NativePerformanceMock-test.js +82 -0
  418. package/src/private/webapis/performance/__tests__/NativePerformanceObserverMock-test.js +108 -0
  419. package/src/private/webapis/performance/__tests__/Performance-test.js +117 -0
  420. package/src/private/webapis/performance/__tests__/PerformanceObserver-test.js +208 -0
  421. package/src-win/Libraries/Components/AccessibilityInfo/AccessibilityInfo.d.ts +161 -0
  422. package/{src → src-win}/Libraries/Components/Button/ButtonWin32.tsx +3 -3
  423. package/{src → src-win}/Libraries/Components/Touchable/Tests/TouchableWin32Test.tsx +9 -10
  424. package/{src → src-win}/Libraries/Components/View/ViewAccessibility.d.ts +33 -17
  425. package/{src → src-win}/Libraries/Components/View/ViewPropTypes.d.ts +28 -17
  426. package/{src → src-win}/Libraries/StyleSheet/PlatformColorValueTypesWin32.d.ts +1 -1
  427. package/{src → src-win}/Libraries/Text/Text.d.ts +5 -6
  428. package/{src → src-win}/Libraries/platform-types.d.ts +2 -3
  429. package/types/modules/globals.d.ts +1 -0
  430. package/Libraries/Components/Button.flow.js +0 -265
  431. package/Libraries/Components/ScrollView/ScrollViewViewConfig.js +0 -85
  432. package/Libraries/Components/Text/TextWin32.Props.d.ts +0 -63
  433. package/Libraries/Components/Text/TextWin32.Props.js +0 -3
  434. package/Libraries/Components/Text/TextWin32.Props.js.map +0 -1
  435. package/Libraries/Components/Text/TextWin32.d.ts +0 -6
  436. package/Libraries/Components/Text/TextWin32.js +0 -18
  437. package/Libraries/Components/Text/TextWin32.js.map +0 -1
  438. package/Libraries/Components/Touchable/Touchable.flow.js +0 -284
  439. package/Libraries/Components/TraceUpdateOverlay/TraceUpdateOverlay.js +0 -189
  440. package/Libraries/Components/TraceUpdateOverlay/TraceUpdateOverlayNativeComponent.js +0 -43
  441. package/Libraries/Image/Image.flow.js +0 -64
  442. package/Libraries/Inspector/DevtoolsOverlay.js +0 -223
  443. package/Libraries/Performance/QuickPerformanceLogger.js +0 -142
  444. package/src/Libraries/Components/Text/TextWin32.Props.ts +0 -82
  445. package/src/Libraries/Components/Text/TextWin32.tsx +0 -25
  446. /package/{Libraries/DOM/Geometry → src/private/webapis/dom/geometry}/DOMRect.js +0 -0
  447. /package/{Libraries/DOM/Geometry → src/private/webapis/dom/geometry}/DOMRectReadOnly.js +0 -0
  448. /package/{Libraries/DOM/Nodes → src/private/webapis/dom/nodes}/ReadOnlyText.js +0 -0
  449. /package/{Libraries/DOM/Nodes/Utilities → src/private/webapis/dom/nodes/utilities}/Traversal.js +0 -0
  450. /package/{Libraries/DOM/OldStyleCollections → src/private/webapis/dom/oldstylecollections}/ArrayLikeUtils.js +0 -0
  451. /package/{Libraries/DOM/OldStyleCollections → src/private/webapis/dom/oldstylecollections}/HTMLCollection.js +0 -0
  452. /package/{Libraries/DOM/OldStyleCollections → src/private/webapis/dom/oldstylecollections}/NodeList.js +0 -0
  453. /package/{Libraries/WebPerformance → src/private/webapis/performance}/EventCounts.js +0 -0
  454. /package/{Libraries/WebPerformance → src/private/webapis/performance}/MemoryInfo.js +0 -0
  455. /package/{Libraries/WebPerformance → src/private/webapis/performance}/PerformanceEntry.js +0 -0
  456. /package/{Libraries/WebPerformance → src/private/webapis/performance}/ReactNativeStartupTiming.js +0 -0
  457. /package/{Libraries/WebPerformance → src/private/webapis/performance}/__mocks__/NativePerformance.js +0 -0
  458. /package/{src → src-win}/Libraries/Components/Button/ButtonWin32.Props.ts +0 -0
  459. /package/{src → src-win}/Libraries/Components/EnterString.win32.tsx +0 -0
  460. /package/{src → src-win}/Libraries/Components/TextInput/Tests/TextInputTest.tsx +0 -0
  461. /package/{src → src-win}/Libraries/Components/Touchable/TouchableNativeFeedback.d.ts +0 -0
  462. /package/{src → src-win}/Libraries/Components/Touchable/TouchableWin32.Props.tsx +0 -0
  463. /package/{src → src-win}/Libraries/Components/Touchable/TouchableWin32.Types.tsx +0 -0
  464. /package/{src → src-win}/Libraries/Components/Touchable/TouchableWin32.tsx +0 -0
  465. /package/{src → src-win}/Libraries/Components/View/ViewWin32.d.ts +0 -0
  466. /package/{src → src-win}/Libraries/Image/ImageTypes.ts +0 -0
  467. /package/{src → src-win}/Libraries/Image/Tests/ImageWin32Test.tsx +0 -0
  468. /package/{src → src-win}/Libraries/Image/Tests/img/dpitest.png +0 -0
  469. /package/{src → src-win}/Libraries/Image/Tests/img/dpitest@1.5x.png +0 -0
  470. /package/{src → src-win}/Libraries/Image/Tests/img/dpitest@2x.png +0 -0
  471. /package/{src → src-win}/Libraries/Image/Tests/img/dpitest@3x.png +0 -0
  472. /package/{src → src-win}/Libraries/Image/Tests/img/en-us/dpitest.png +0 -0
  473. /package/{src → src-win}/Libraries/Image/Tests/img/en-us/dpitest@1.5x.png +0 -0
  474. /package/{src → src-win}/Libraries/Image/Tests/img/en-us/dpitest@3x.png +0 -0
  475. /package/{src → src-win}/Libraries/PersonaCoin/PersonaCoin.tsx +0 -0
  476. /package/{src → src-win}/Libraries/PersonaCoin/PersonaCoinPropTypes.ts +0 -0
  477. /package/{src → src-win}/Libraries/PersonaCoin/PersonaCoinTypes.ts +0 -0
  478. /package/{src → src-win}/Libraries/Utilities/FocusManager.win32.d.ts +0 -0
  479. /package/{src → src-win}/Libraries/__tests__/__snapshots__/ButtonWin32-test.js.snap +0 -0
@@ -4,47 +4,10 @@
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
7
+ * @flow strict-local
8
8
  * @format
9
9
  */
10
10
 
11
- import type {UnsafeObject} from '../../Types/CodegenTypes';
12
- import type {RootTag, TurboModule} from '../RCTExport';
13
-
14
- import * as TurboModuleRegistry from '../TurboModuleRegistry';
15
-
16
- export enum EnumInt {
17
- A = 23,
18
- B = 42,
19
- }
20
-
21
- export interface Spec extends TurboModule {
22
- // Exported methods.
23
- +getConstants: () => {|
24
- const1: boolean,
25
- const2: number,
26
- const3: string,
27
- |};
28
- +voidFunc: () => void;
29
- +getBool: (arg: boolean) => boolean;
30
- +getEnum?: (arg: EnumInt) => EnumInt;
31
- +getNumber: (arg: number) => number;
32
- +getString: (arg: string) => string;
33
- +getArray: (arg: Array<any>) => Array<any>;
34
- +getObject: (arg: Object) => Object;
35
- +getUnsafeObject: (arg: UnsafeObject) => UnsafeObject;
36
- +getRootTag: (arg: RootTag) => RootTag;
37
- +getValue: (x: number, y: string, z: Object) => Object;
38
- +getValueWithCallback: (callback: (value: string) => void) => void;
39
- +getValueWithPromise: (error: boolean) => Promise<string>;
40
- +voidFuncThrows?: () => void;
41
- +getObjectThrows?: (arg: Object) => Object;
42
- +promiseThrows?: () => Promise<void>;
43
- +voidFuncAssert?: () => void;
44
- +getObjectAssert?: (arg: Object) => Object;
45
- +promiseAssert?: () => Promise<void>;
46
- }
47
-
48
- export default (TurboModuleRegistry.getEnforcing<Spec>(
49
- 'SampleTurboModule',
50
- ): Spec);
11
+ export * from '../../../src/private/specs/modules/NativeSampleTurboModule';
12
+ import NativeSampleTurboModule from '../../../src/private/specs/modules/NativeSampleTurboModule';
13
+ export default NativeSampleTurboModule;
@@ -0,0 +1,58 @@
1
+ /**
2
+ * Copyright (c) Meta Platforms, Inc. and affiliates.
3
+ *
4
+ * This source code is licensed under the MIT license found in the
5
+ * LICENSE file in the root directory of this source tree.
6
+ *
7
+ * @flow strict-local
8
+ * @format
9
+ * @oncall react_native
10
+ */
11
+
12
+ import type {NativeMethods} from '../Renderer/shims/ReactNativeTypes';
13
+
14
+ type PublicInstance = {
15
+ ...NativeMethods,
16
+ };
17
+
18
+ export type InstanceFromReactDevTools =
19
+ | PublicInstance
20
+ | {
21
+ canonical?:
22
+ | PublicInstance // TODO: remove this variant when syncing the new version of the renderer from React to React Native.
23
+ | {
24
+ publicInstance?: PublicInstance,
25
+ },
26
+ };
27
+
28
+ export type ReactDevToolsAgentEvents = {
29
+ drawTraceUpdates: [Array<{node: InstanceFromReactDevTools, color: string}>],
30
+ disableTraceUpdates: [],
31
+
32
+ showNativeHighlight: [nodes: Array<InstanceFromReactDevTools>],
33
+ hideNativeHighlight: [],
34
+ shutdown: [],
35
+ startInspectingNative: [],
36
+ stopInspectingNative: [],
37
+ };
38
+
39
+ export type ReactDevToolsAgent = {
40
+ selectNode(node: mixed): void,
41
+ stopInspectingNative(value: boolean): void,
42
+ addListener<Event: $Keys<ReactDevToolsAgentEvents>>(
43
+ event: Event,
44
+ listener: (...ReactDevToolsAgentEvents[Event]) => void,
45
+ ): void,
46
+ removeListener(
47
+ event: $Keys<ReactDevToolsAgentEvents>,
48
+ listener: () => void,
49
+ ): void,
50
+ };
51
+
52
+ export type ReactDevToolsGlobalHook = {
53
+ on: (eventName: string, (agent: ReactDevToolsAgent) => void) => void,
54
+ off: (eventName: string, (agent: ReactDevToolsAgent) => void) => void,
55
+ reactDevtoolsAgent?: ReactDevToolsAgent,
56
+ resolveRNStyle?: mixed,
57
+ nativeStyleEditorValidAttributes?: Array<string>,
58
+ };
@@ -0,0 +1,16 @@
1
+ /**
2
+ * Copyright (c) Meta Platforms, Inc. and affiliates.
3
+ *
4
+ * This source code is licensed under the MIT license found in the
5
+ * LICENSE file in the root directory of this source tree.
6
+ *
7
+ * @flow
8
+ * @format
9
+ */
10
+
11
+ import type {Spec} from '../ReactNative/NativeUIManager';
12
+
13
+ export interface UIManagerJSInterface extends Spec {
14
+ +getViewManagerConfig: (viewManagerName: string) => Object;
15
+ +hasViewManagerConfig: (viewManagerName: string) => boolean;
16
+ }
@@ -12,8 +12,5 @@ export let isAsyncDebugging: boolean = false;
12
12
 
13
13
  if (__DEV__) {
14
14
  // These native interfaces don't exist in asynchronous debugging environments.
15
- isAsyncDebugging =
16
- !global.nativeExtensions &&
17
- !global.nativeCallSyncHook &&
18
- !global.RN$Bridgeless;
15
+ isAsyncDebugging = !global.nativeCallSyncHook && !global.RN$Bridgeless;
19
16
  }
@@ -110,21 +110,13 @@ class Dimensions {
110
110
  }
111
111
  }
112
112
 
113
- let initialDims: ?$ReadOnly<DimensionsPayload> =
114
- global.nativeExtensions &&
115
- global.nativeExtensions.DeviceInfo &&
116
- global.nativeExtensions.DeviceInfo.Dimensions;
117
- if (!initialDims) {
118
- // Subscribe before calling getConstants to make sure we don't miss any updates in between.
119
- RCTDeviceEventEmitter.addListener(
120
- 'didUpdateDimensions',
121
- (update: DimensionsPayload) => {
122
- Dimensions.set(update);
123
- },
124
- );
125
- initialDims = NativeDeviceInfo.getConstants().Dimensions;
126
- }
127
-
128
- Dimensions.set(initialDims);
113
+ // Subscribe before calling getConstants to make sure we don't miss any updates in between.
114
+ RCTDeviceEventEmitter.addListener(
115
+ 'didUpdateDimensions',
116
+ (update: DimensionsPayload) => {
117
+ Dimensions.set(update);
118
+ },
119
+ );
120
+ Dimensions.set(NativeDeviceInfo.getConstants().Dimensions);
129
121
 
130
122
  export default Dimensions;
@@ -111,21 +111,13 @@ class Dimensions {
111
111
  }
112
112
  }
113
113
 
114
- let initialDims: ?$ReadOnly<DimensionsPayload> =
115
- global.nativeExtensions &&
116
- global.nativeExtensions.DeviceInfo &&
117
- global.nativeExtensions.DeviceInfo.Dimensions;
118
- if (!initialDims) {
119
- // Subscribe before calling getConstants to make sure we don't miss any updates in between.
120
- RCTDeviceEventEmitter.addListener(
121
- 'didUpdateDimensions',
122
- (update: DimensionsPayload) => {
123
- Dimensions.set(update);
124
- },
125
- );
126
- initialDims = NativeDeviceInfo.getConstants().Dimensions;
127
- }
128
-
129
- Dimensions.set(initialDims);
114
+ // Subscribe before calling getConstants to make sure we don't miss any updates in between.
115
+ RCTDeviceEventEmitter.addListener(
116
+ 'didUpdateDimensions',
117
+ (update: DimensionsPayload) => {
118
+ Dimensions.set(update);
119
+ },
120
+ );
121
+ Dimensions.set(NativeDeviceInfo.getConstants().Dimensions);
130
122
 
131
123
  export default Dimensions;
@@ -22,12 +22,14 @@ class FocusManager {
22
22
  if (ref) {
23
23
  if (setWindowFocus) {
24
24
  UIManager.dispatchViewManagerCommand(
25
+ // $FlowIgnoreMe[incompatible-call]
25
26
  findNodeHandle(ref),
26
27
  UIManager.getViewManagerConfig('RCTView').Commands.aggressivefocus,
27
28
  null,
28
29
  );
29
30
  } else {
30
31
  UIManager.dispatchViewManagerCommand(
32
+ // $FlowIgnoreMe[incompatible-call]
31
33
  findNodeHandle(ref),
32
34
  UIManager.getViewManagerConfig('RCTView').Commands.politefocus,
33
35
  null,
@@ -19,7 +19,6 @@ import createPerformanceLogger from './createPerformanceLogger';
19
19
  * that are logged during loading bundle. If you want to log something from your
20
20
  * React component you should use PerformanceLoggerContext instead.
21
21
  */
22
- const GlobalPerformanceLogger: IPerformanceLogger =
23
- createPerformanceLogger(true);
22
+ const GlobalPerformanceLogger: IPerformanceLogger = createPerformanceLogger();
24
23
 
25
24
  module.exports = GlobalPerformanceLogger;
@@ -8,29 +8,6 @@
8
8
  * @format
9
9
  */
10
10
 
11
- import type {TurboModule} from '../TurboModule/RCTExport';
12
-
13
- import * as TurboModuleRegistry from '../TurboModule/TurboModuleRegistry';
14
-
15
- export type ColorSchemeName = 'light' | 'dark';
16
-
17
- export type AppearancePreferences = {|
18
- // TODO: (hramos) T52919652 Use ?ColorSchemeName once codegen supports union
19
- // types.
20
- /* 'light' | 'dark' */
21
- colorScheme?: ?string,
22
- |};
23
-
24
- export interface Spec extends TurboModule {
25
- // TODO: (hramos) T52919652 Use ?ColorSchemeName once codegen supports union
26
- // types.
27
- /* 'light' | 'dark' */
28
- +getColorScheme: () => ?string;
29
- +setColorScheme?: (colorScheme: string) => void;
30
-
31
- // RCTEventEmitter
32
- +addListener: (eventName: string) => void;
33
- +removeListeners: (count: number) => void;
34
- }
35
-
36
- export default (TurboModuleRegistry.get<Spec>('Appearance'): ?Spec);
11
+ export type * from '../../src/private/specs/modules/NativeAppearance';
12
+ import NativeAppearance from '../../src/private/specs/modules/NativeAppearance';
13
+ export default NativeAppearance;
@@ -8,17 +8,6 @@
8
8
  * @format
9
9
  */
10
10
 
11
- import type {TurboModule} from '../TurboModule/RCTExport';
12
-
13
- import * as TurboModuleRegistry from '../TurboModule/TurboModuleRegistry';
14
-
15
- export interface Spec extends TurboModule {
16
- +showMessage: (
17
- message: string,
18
- withColor: ?number,
19
- withBackgroundColor: ?number,
20
- ) => void;
21
- +hide: () => void;
22
- }
23
-
24
- export default (TurboModuleRegistry.get<Spec>('DevLoadingView'): ?Spec);
11
+ export * from '../../src/private/specs/modules/NativeDevLoadingView';
12
+ import NativeDevLoadingView from '../../src/private/specs/modules/NativeDevLoadingView';
13
+ export default NativeDevLoadingView;
@@ -8,51 +8,6 @@
8
8
  * @format
9
9
  */
10
10
 
11
- import type {TurboModule} from '../TurboModule/RCTExport';
12
-
13
- import * as TurboModuleRegistry from '../TurboModule/TurboModuleRegistry';
14
-
15
- export type DisplayMetricsAndroid = {|
16
- width: number,
17
- height: number,
18
- scale: number,
19
- fontScale: number,
20
- densityDpi: number,
21
- |};
22
-
23
- export type DisplayMetrics = {|
24
- width: number,
25
- height: number,
26
- scale: number,
27
- fontScale: number,
28
- |};
29
-
30
- export type DimensionsPayload = {|
31
- window?: DisplayMetrics,
32
- screen?: DisplayMetrics,
33
- windowPhysicalPixels?: DisplayMetricsAndroid,
34
- screenPhysicalPixels?: DisplayMetricsAndroid,
35
- |};
36
-
37
- export type DeviceInfoConstants = {|
38
- +Dimensions: DimensionsPayload,
39
- +isIPhoneX_deprecated?: boolean,
40
- |};
41
-
42
- export interface Spec extends TurboModule {
43
- +getConstants: () => DeviceInfoConstants;
44
- }
45
-
46
- const NativeModule: Spec = TurboModuleRegistry.getEnforcing<Spec>('DeviceInfo');
47
- let constants: ?DeviceInfoConstants = null;
48
-
49
- const NativeDeviceInfo = {
50
- getConstants(): DeviceInfoConstants {
51
- if (constants == null) {
52
- constants = NativeModule.getConstants();
53
- }
54
- return constants;
55
- },
56
- };
57
-
11
+ export * from '../../src/private/specs/modules/NativeDeviceInfo';
12
+ import NativeDeviceInfo from '../../src/private/specs/modules/NativeDeviceInfo';
58
13
  export default NativeDeviceInfo;
@@ -8,37 +8,6 @@
8
8
  * @format
9
9
  */
10
10
 
11
- import type {TurboModule} from '../TurboModule/RCTExport';
12
-
13
- import * as TurboModuleRegistry from '../TurboModule/TurboModuleRegistry';
14
-
15
- export type ReactNativeVersionAndroid = {|
16
- major: number,
17
- minor: number,
18
- patch: number,
19
- prerelease: ?number,
20
- |};
21
-
22
- export type PlatformConstantsAndroid = {|
23
- isTesting: boolean,
24
- isDisableAnimations?: boolean,
25
- reactNativeVersion: ReactNativeVersionAndroid,
26
- Version: number,
27
- Release: string,
28
- Serial: string,
29
- Fingerprint: string,
30
- Model: string,
31
- ServerHost?: string,
32
- uiMode: string,
33
- Brand: string,
34
- Manufacturer: string,
35
- |};
36
-
37
- export interface Spec extends TurboModule {
38
- +getConstants: () => PlatformConstantsAndroid;
39
- +getAndroidID: () => string;
40
- }
41
-
42
- export default (TurboModuleRegistry.getEnforcing<Spec>(
43
- 'PlatformConstants',
44
- ): Spec);
11
+ export * from '../../src/private/specs/modules/NativePlatformConstantsAndroid';
12
+ import NativePlatformConstantsAndroid from '../../src/private/specs/modules/NativePlatformConstantsAndroid';
13
+ export default NativePlatformConstantsAndroid;
@@ -8,29 +8,6 @@
8
8
  * @format
9
9
  */
10
10
 
11
- import type {TurboModule} from '../TurboModule/RCTExport';
12
-
13
- import * as TurboModuleRegistry from '../TurboModule/TurboModuleRegistry';
14
-
15
- export type PlatformConstantsIOS = {|
16
- isTesting: boolean,
17
- isDisableAnimations?: boolean,
18
- reactNativeVersion: {|
19
- major: number,
20
- minor: number,
21
- patch: number,
22
- prerelease: ?number,
23
- |},
24
- forceTouchAvailable: boolean,
25
- osVersion: string,
26
- systemName: string,
27
- interfaceIdiom: string,
28
- |};
29
-
30
- export interface Spec extends TurboModule {
31
- +getConstants: () => PlatformConstantsIOS;
32
- }
33
-
34
- export default (TurboModuleRegistry.getEnforcing<Spec>(
35
- 'PlatformConstants',
36
- ): Spec);
11
+ export * from '../../src/private/specs/modules/NativePlatformConstantsIOS';
12
+ import NativePlatformConstantsIOS from '../../src/private/specs/modules/NativePlatformConstantsIOS';
13
+ export default NativePlatformConstantsIOS;
@@ -6,26 +6,6 @@
6
6
  * @flow strict
7
7
  */
8
8
 
9
- import type {TurboModule} from '../TurboModule/RCTExport';
10
-
11
- import * as TurboModuleRegistry from '../TurboModule/TurboModuleRegistry';
12
-
13
- export type PlatformConstantsWin32 = {|
14
- isTesting: boolean,
15
- isDisableAnimations?: boolean,
16
- reactNativeVersion: {|
17
- major: number,
18
- minor: number,
19
- patch: number,
20
- prerelease: ?string | number,
21
- |},
22
- osVersion: number,
23
- |};
24
-
25
- export interface Spec extends TurboModule {
26
- +getConstants: () => PlatformConstantsWin32;
27
- }
28
-
29
- export default (TurboModuleRegistry.getEnforcing<Spec>(
30
- 'PlatformConstants',
31
- ): Spec);
9
+ export * from '../../src/private/specs/modules/NativePlatformConstantsWin';
10
+ import NativePlatformConstantsWin from '../../src/private/specs/modules/NativePlatformConstantsWin';
11
+ export default NativePlatformConstantsWin;
@@ -32,11 +32,11 @@ export interface PixelRatioStatic {
32
32
  used to calculate the absolute font size, so any elements that
33
33
  heavily depend on that should use this to do calculations.
34
34
 
35
- If a font scale is not set, this returns the device pixel ratio.
35
+ * on Android value reflects the user preference set in Settings > Display > Font size
36
+ * on iOS value reflects the user preference set in Settings > Display & Brightness > Text Size,
37
+ value can also be updated in Settings > Accessibility > Display & Text Size > Larger Text
36
38
 
37
- Currently this is only implemented on Android and reflects the user
38
- preference set in Settings > Display > Font size,
39
- on iOS it will always return the default pixel ratio.
39
+ If a font scale is not set, this returns the device pixel ratio.
40
40
  */
41
41
  getFontScale(): number;
42
42
 
@@ -69,6 +69,10 @@ const Platform: PlatformType = {
69
69
  // $FlowFixMe[object-this-reference]
70
70
  return this.constants.uiMode === 'tv';
71
71
  },
72
+ // $FlowFixMe[unsafe-getters-setters]
73
+ get isVision(): boolean {
74
+ return false;
75
+ },
72
76
  select: <T>(spec: PlatformSelectSpec<T>): T =>
73
77
  'android' in spec
74
78
  ? // $FlowFixMe[incompatible-return]
@@ -50,10 +50,13 @@ interface PlatformIOSStatic extends PlatformStatic {
50
50
  interfaceIdiom: string;
51
51
  osVersion: string;
52
52
  systemName: string;
53
+ isMacCatalyst?: boolean | undefined;
53
54
  };
54
55
  OS: 'ios';
55
56
  isPad: boolean;
56
57
  isTV: boolean;
58
+ isVision: boolean;
59
+ isMacCatalyst?: boolean | undefined;
57
60
  Version: string;
58
61
  }
59
62
 
@@ -35,15 +35,20 @@ type IOSPlatform = {
35
35
  prerelease: ?number,
36
36
  |},
37
37
  systemName: string,
38
+ isMacCatalyst?: boolean,
38
39
  |},
39
40
  // $FlowFixMe[unsafe-getters-setters]
40
41
  get isPad(): boolean,
41
42
  // $FlowFixMe[unsafe-getters-setters]
42
43
  get isTV(): boolean,
43
44
  // $FlowFixMe[unsafe-getters-setters]
45
+ get isVision(): boolean,
46
+ // $FlowFixMe[unsafe-getters-setters]
44
47
  get isTesting(): boolean,
45
48
  // $FlowFixMe[unsafe-getters-setters]
46
49
  get isDisableAnimations(): boolean,
50
+ // $FlowFixMe[unsafe-getters-setters]
51
+ get isMacCatalyst(): boolean,
47
52
  select: <T>(spec: PlatformSelectSpec<T>) => T,
48
53
  };
49
54
 
@@ -75,6 +80,8 @@ type AndroidPlatform = {
75
80
  // $FlowFixMe[unsafe-getters-setters]
76
81
  get isTV(): boolean,
77
82
  // $FlowFixMe[unsafe-getters-setters]
83
+ get isVision(): boolean,
84
+ // $FlowFixMe[unsafe-getters-setters]
78
85
  get isTesting(): boolean,
79
86
  // $FlowFixMe[unsafe-getters-setters]
80
87
  get isDisableAnimations(): boolean,
@@ -21,30 +21,35 @@ type IOSPlatform = {
21
21
  __constants: null,
22
22
  OS: $TEMPORARY$string<'ios'>,
23
23
  // $FlowFixMe[unsafe-getters-setters]
24
- get Version(): string,
24
+ get Version(): number,
25
25
  // $FlowFixMe[unsafe-getters-setters]
26
26
  get constants(): {|
27
27
  forceTouchAvailable: boolean,
28
28
  interfaceIdiom: string,
29
29
  isTesting: boolean,
30
30
  isDisableAnimations?: boolean,
31
- osVersion: string,
31
+ osVersion: number,
32
+ systemName: string,
32
33
  reactNativeVersion: {|
33
34
  major: number,
34
35
  minor: number,
35
36
  patch: number,
36
- prerelease: ?number,
37
+ prerelease: ?string | number,
37
38
  |},
38
- systemName: string,
39
+ isMacCatalyst?: boolean,
39
40
  |},
40
41
  // $FlowFixMe[unsafe-getters-setters]
41
42
  get isPad(): boolean,
42
43
  // $FlowFixMe[unsafe-getters-setters]
43
44
  get isTV(): boolean,
44
45
  // $FlowFixMe[unsafe-getters-setters]
46
+ get isVision(): boolean,
47
+ // $FlowFixMe[unsafe-getters-setters]
45
48
  get isTesting(): boolean,
46
49
  // $FlowFixMe[unsafe-getters-setters]
47
50
  get isDisableAnimations(): boolean,
51
+ // $FlowFixMe[unsafe-getters-setters]
52
+ get isMacCatalyst(): boolean,
48
53
  select: <T>(spec: PlatformSelectSpec<T>) => T,
49
54
  };
50
55
 
@@ -76,6 +81,8 @@ type AndroidPlatform = {
76
81
  // $FlowFixMe[unsafe-getters-setters]
77
82
  get isTV(): boolean,
78
83
  // $FlowFixMe[unsafe-getters-setters]
84
+ get isVision(): boolean,
85
+ // $FlowFixMe[unsafe-getters-setters]
79
86
  get isTesting(): boolean,
80
87
  // $FlowFixMe[unsafe-getters-setters]
81
88
  get isDisableAnimations(): boolean,
@@ -89,19 +96,25 @@ type Win32Platform = {
89
96
  get Version(): number,
90
97
  // $FlowFixMe[unsafe-getters-setters]
91
98
  get constants(): {|
99
+ forceTouchAvailable: boolean,
100
+ interfaceIdiom: string,
92
101
  isTesting: boolean,
93
102
  isDisableAnimations?: boolean,
103
+ osVersion: number,
94
104
  reactNativeVersion: {|
95
105
  major: number,
96
106
  minor: number,
97
107
  patch: number,
98
108
  prerelease: ?string | number,
99
109
  |},
100
- osVersion: number,
110
+ systemName: string,
111
+ isMacCatalyst?: boolean,
101
112
  |},
102
113
  // $FlowFixMe[unsafe-getters-setters]
103
114
  get isTV(): boolean,
104
115
  // $FlowFixMe[unsafe-getters-setters]
116
+ get isVision(): boolean,
117
+ // $FlowFixMe[unsafe-getters-setters]
105
118
  get isTesting(): boolean,
106
119
  // $FlowFixMe[unsafe-getters-setters]
107
120
  get isDisableAnimations(): boolean,
@@ -37,6 +37,7 @@ const Platform: PlatformType = {
37
37
  prerelease: ?number,
38
38
  |},
39
39
  systemName: string,
40
+ isMacCatalyst?: boolean,
40
41
  |} {
41
42
  // $FlowFixMe[object-this-reference]
42
43
  if (this.__constants == null) {
@@ -57,6 +58,11 @@ const Platform: PlatformType = {
57
58
  return this.constants.interfaceIdiom === 'tv';
58
59
  },
59
60
  // $FlowFixMe[unsafe-getters-setters]
61
+ get isVision(): boolean {
62
+ // $FlowFixMe[object-this-reference]
63
+ return this.constants.interfaceIdiom === 'vision';
64
+ },
65
+ // $FlowFixMe[unsafe-getters-setters]
60
66
  get isTesting(): boolean {
61
67
  if (__DEV__) {
62
68
  // $FlowFixMe[object-this-reference]
@@ -69,6 +75,11 @@ const Platform: PlatformType = {
69
75
  // $FlowFixMe[object-this-reference]
70
76
  return this.constants.isDisableAnimations ?? this.isTesting;
71
77
  },
78
+ // $FlowFixMe[unsafe-getters-setters]
79
+ get isMacCatalyst(): boolean {
80
+ // $FlowFixMe[object-this-reference]
81
+ return this.constants.isMacCatalyst ?? false;
82
+ },
72
83
  select: <T>(spec: PlatformSelectSpec<T>): T =>
73
84
  // $FlowFixMe[incompatible-return]
74
85
  'ios' in spec ? spec.ios : 'native' in spec ? spec.native : spec.default,
@@ -23,15 +23,19 @@ const Platform: PlatformType = {
23
23
  },
24
24
  // $FlowFixMe[unsafe-getters-setters]
25
25
  get constants(): {|
26
+ forceTouchAvailable: boolean,
27
+ interfaceIdiom: string,
26
28
  isTesting: boolean,
27
29
  isDisableAnimations?: boolean,
30
+ osVersion: number,
28
31
  reactNativeVersion: {|
29
32
  major: number,
30
33
  minor: number,
31
34
  patch: number,
32
35
  prerelease: ?string | number,
33
36
  |},
34
- osVersion: number,
37
+ systemName: string,
38
+ isMacCatalyst?: boolean,
35
39
  |} {
36
40
  // $FlowFixMe[object-this-reference]
37
41
  if (this.__constants == null) {
@@ -59,6 +63,10 @@ const Platform: PlatformType = {
59
63
  // $FlowFixMe[object-this-reference]
60
64
  return false;
61
65
  },
66
+ // $FlowFixMe[unsafe-getters-setters]
67
+ get isVision(): boolean {
68
+ return false;
69
+ },
62
70
  select: <T>(spec: PlatformSelectSpec<T>): T =>
63
71
  'win32' in spec
64
72
  ? // $FlowFixMe[incompatible-return]
@@ -24,7 +24,7 @@ function binaryToBase64(data: ArrayBuffer | $ArrayBufferView): string {
24
24
  throw new Error('data must be ArrayBuffer or typed array');
25
25
  }
26
26
  // Already checked that `data` is `DataView` in `ArrayBuffer.isView(data)`
27
- const {buffer, byteOffset, byteLength} = ((data: $FlowFixMe): DataView);
27
+ const {buffer, byteOffset, byteLength}: DataView = (data: $FlowFixMe);
28
28
  return base64.fromByteArray(new Uint8Array(buffer, byteOffset, byteLength));
29
29
  }
30
30