react-native-windows 0.80.1 → 0.81.0-preview.4

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 (679) hide show
  1. package/.flowconfig +10 -5
  2. package/Directory.Build.props +1 -1
  3. package/Libraries/ActionSheetIOS/NativeActionSheetManager.js +1 -0
  4. package/Libraries/Alert/Alert.js +3 -3
  5. package/Libraries/Alert/Alert.windows.js +5 -2
  6. package/Libraries/Alert/NativeAlertManager.js +1 -0
  7. package/Libraries/Alert/RCTAlertManager.android.js +19 -13
  8. package/Libraries/Alert/RCTAlertManager.ios.js +10 -12
  9. package/Libraries/Alert/RCTAlertManager.js +1 -3
  10. package/Libraries/Alert/RCTAlertManager.js.flow +5 -7
  11. package/Libraries/Animated/Animated.js +0 -1
  12. package/Libraries/Animated/Animated.js.flow +0 -1
  13. package/Libraries/Animated/AnimatedEvent.js +4 -3
  14. package/Libraries/Animated/AnimatedExports.js +0 -1
  15. package/Libraries/Animated/AnimatedExports.js.flow +5 -1
  16. package/Libraries/Animated/AnimatedImplementation.js +44 -44
  17. package/Libraries/Animated/AnimatedMock.js +2 -2
  18. package/Libraries/Animated/Easing.js +1 -1
  19. package/Libraries/Animated/NativeAnimatedModule.js +1 -0
  20. package/Libraries/Animated/NativeAnimatedTurboModule.js +1 -0
  21. package/Libraries/Animated/SpringConfig.js +1 -1
  22. package/Libraries/Animated/animations/Animation.js +10 -2
  23. package/Libraries/Animated/components/AnimatedScrollView.js +58 -56
  24. package/Libraries/Animated/components/AnimatedText.js +2 -5
  25. package/Libraries/Animated/components/AnimatedView.js +2 -1
  26. package/Libraries/Animated/createAnimatedComponent.js +39 -37
  27. package/Libraries/Animated/nodes/AnimatedObject.js +2 -3
  28. package/Libraries/Animated/nodes/AnimatedProps.js +31 -4
  29. package/Libraries/Animated/nodes/AnimatedStyle.js +35 -34
  30. package/Libraries/Animated/shouldUseTurboAnimatedModule.js +6 -1
  31. package/Libraries/AppState/NativeAppState.js +1 -0
  32. package/Libraries/AppTheme/AppTheme.js +1 -1
  33. package/Libraries/BatchedBridge/BatchedBridge.js +1 -1
  34. package/Libraries/BatchedBridge/NativeModules.js +1 -1
  35. package/Libraries/Blob/BlobManager.js +4 -0
  36. package/Libraries/Blob/NativeBlobModule.js +1 -0
  37. package/Libraries/Blob/NativeFileReaderModule.js +1 -0
  38. package/Libraries/Blob/URL.js +1 -1
  39. package/Libraries/Blob/URLSearchParams.js +5 -1
  40. package/Libraries/Blob/URLSearchParams.js.flow +2 -1
  41. package/Libraries/Components/AccessibilityInfo/NativeAccessibilityInfo.js +1 -2
  42. package/Libraries/Components/AccessibilityInfo/NativeAccessibilityManager.js +1 -2
  43. package/Libraries/Components/AccessibilityInfo/legacySendAccessibilityEvent.android.js +1 -1
  44. package/Libraries/Components/AccessibilityInfo/legacySendAccessibilityEvent.ios.js +1 -1
  45. package/Libraries/Components/AccessibilityInfo/legacySendAccessibilityEvent.js.flow +1 -1
  46. package/Libraries/Components/AccessibilityInfo/legacySendAccessibilityEvent.windows.js +1 -1
  47. package/Libraries/Components/ActivityIndicator/ActivityIndicator.js +19 -19
  48. package/Libraries/Components/ActivityIndicator/ActivityIndicatorViewNativeComponent.js +2 -3
  49. package/Libraries/Components/Button.js +10 -7
  50. package/Libraries/Components/Button.windows.js +4 -4
  51. package/Libraries/Components/Clipboard/Clipboard.js +1 -1
  52. package/Libraries/Components/Clipboard/NativeClipboard.js +1 -2
  53. package/Libraries/Components/DrawerAndroid/AndroidDrawerLayoutNativeComponent.js +2 -3
  54. package/Libraries/Components/DrawerAndroid/DrawerLayoutAndroid.android.js +3 -4
  55. package/Libraries/Components/DrawerAndroid/DrawerLayoutAndroid.ios.js +1 -1
  56. package/Libraries/Components/DrawerAndroid/DrawerLayoutAndroid.js +1 -1
  57. package/Libraries/Components/DrawerAndroid/DrawerLayoutAndroid.js.flow +1 -1
  58. package/Libraries/Components/DrawerAndroid/DrawerLayoutAndroidFallback.js +1 -1
  59. package/Libraries/Components/Flyout/FlyoutNativeComponent.js +1 -1
  60. package/Libraries/Components/Glyph/GlyphNativeComponent.js +1 -1
  61. package/Libraries/Components/Keyboard/Keyboard.js +1 -1
  62. package/Libraries/Components/Keyboard/KeyboardAvoidingView.js +3 -2
  63. package/Libraries/Components/Keyboard/NativeKeyboardObserver.js +1 -2
  64. package/Libraries/Components/LayoutConformance/LayoutConformance.js +0 -1
  65. package/Libraries/Components/Popup/PopupNativeComponent.js +1 -1
  66. package/Libraries/Components/Pressable/Pressable.js +17 -8
  67. package/Libraries/Components/Pressable/Pressable.windows.js +17 -14
  68. package/Libraries/Components/ProgressBarAndroid/ProgressBarAndroid.android.js +14 -13
  69. package/Libraries/Components/ProgressBarAndroid/ProgressBarAndroid.js +1 -1
  70. package/Libraries/Components/ProgressBarAndroid/ProgressBarAndroidNativeComponent.js +2 -3
  71. package/Libraries/Components/RefreshControl/AndroidSwipeRefreshLayoutNativeComponent.js +2 -3
  72. package/Libraries/Components/RefreshControl/PullToRefreshViewNativeComponent.js +2 -1
  73. package/Libraries/Components/RefreshControl/RefreshControl.js +1 -1
  74. package/Libraries/Components/RefreshControl/RefreshControl.windows.js +1 -1
  75. package/Libraries/Components/SafeAreaView/RCTSafeAreaViewNativeComponent.js +2 -3
  76. package/Libraries/Components/SafeAreaView/SafeAreaView.d.ts +9 -0
  77. package/Libraries/Components/SafeAreaView/SafeAreaView.js +3 -2
  78. package/Libraries/Components/ScrollView/AndroidHorizontalScrollContentViewNativeComponent.js +2 -3
  79. package/Libraries/Components/ScrollView/ScrollContentViewNativeComponent.js +1 -1
  80. package/Libraries/Components/ScrollView/ScrollView.d.ts +33 -6
  81. package/Libraries/Components/ScrollView/ScrollView.js +25 -15
  82. package/Libraries/Components/ScrollView/ScrollView.windows.js +25 -14
  83. package/Libraries/Components/ScrollView/ScrollViewCommands.js +1 -1
  84. package/Libraries/Components/ScrollView/ScrollViewContext.js +2 -1
  85. package/Libraries/Components/ScrollView/ScrollViewNativeComponentType.js +1 -1
  86. package/Libraries/Components/ScrollView/ScrollViewStickyHeader.js +19 -6
  87. package/Libraries/Components/ScrollView/processDecelerationRate.js +1 -1
  88. package/Libraries/Components/Sound/NativeSoundManager.js +1 -2
  89. package/Libraries/Components/Sound/SoundManager.js +1 -1
  90. package/Libraries/Components/StaticRenderer.js +1 -1
  91. package/Libraries/Components/StatusBar/NativeStatusBarManagerAndroid.js +1 -2
  92. package/Libraries/Components/StatusBar/NativeStatusBarManagerIOS.js +1 -2
  93. package/Libraries/Components/StatusBar/StatusBar.d.ts +4 -0
  94. package/Libraries/Components/StatusBar/StatusBar.js +6 -1
  95. package/Libraries/Components/Switch/AndroidSwitchNativeComponent.js +2 -3
  96. package/Libraries/Components/Switch/Switch.js +10 -3
  97. package/Libraries/Components/Switch/Switch.windows.js +10 -3
  98. package/Libraries/Components/Switch/SwitchNativeComponent.js +2 -3
  99. package/Libraries/Components/TextInput/AndroidTextInputNativeComponent.js +9 -24
  100. package/Libraries/Components/TextInput/RCTInputAccessoryViewNativeComponent.js +2 -3
  101. package/Libraries/Components/TextInput/RCTTextInputViewConfig.js +1 -1
  102. package/Libraries/Components/TextInput/TextInput.d.ts +9 -3
  103. package/Libraries/Components/TextInput/TextInput.flow.js +13 -15
  104. package/Libraries/Components/TextInput/TextInput.flow.windows.js +12 -15
  105. package/Libraries/Components/TextInput/TextInput.js +42 -39
  106. package/Libraries/Components/TextInput/TextInput.windows.js +69 -38
  107. package/Libraries/Components/TextInput/TextInputState.js +1 -1
  108. package/Libraries/Components/TextInput/TextInputState.windows.js +1 -1
  109. package/Libraries/Components/TextInput/WindowsTextInputNativeComponent.js +1 -17
  110. package/Libraries/Components/ToastAndroid/NativeToastAndroid.js +1 -2
  111. package/Libraries/Components/ToastAndroid/ToastAndroid.android.js +1 -1
  112. package/Libraries/Components/ToastAndroid/ToastAndroid.ios.js +1 -1
  113. package/Libraries/Components/ToastAndroid/ToastAndroid.js +1 -1
  114. package/Libraries/Components/ToastAndroid/ToastAndroid.js.flow +1 -1
  115. package/Libraries/Components/ToastAndroid/ToastAndroidFallback.js +1 -1
  116. package/Libraries/Components/Touchable/BoundingDimensions.js +1 -1
  117. package/Libraries/Components/Touchable/PooledClass.js +1 -1
  118. package/Libraries/Components/Touchable/Position.js +1 -1
  119. package/Libraries/Components/Touchable/Touchable.js +17 -3
  120. package/Libraries/Components/Touchable/Touchable.windows.js +17 -3
  121. package/Libraries/Components/Touchable/TouchableBounce.js +9 -3
  122. package/Libraries/Components/Touchable/TouchableBounce.windows.js +9 -3
  123. package/Libraries/Components/Touchable/TouchableHighlight.js +14 -5
  124. package/Libraries/Components/Touchable/TouchableHighlight.windows.js +14 -5
  125. package/Libraries/Components/Touchable/TouchableNativeFeedback.js +5 -3
  126. package/Libraries/Components/Touchable/TouchableNativeFeedback.windows.js +5 -3
  127. package/Libraries/Components/Touchable/TouchableOpacity.d.ts +1 -0
  128. package/Libraries/Components/Touchable/TouchableOpacity.js +10 -5
  129. package/Libraries/Components/Touchable/TouchableOpacity.windows.js +10 -5
  130. package/Libraries/Components/Touchable/TouchableWithoutFeedback.js +3 -3
  131. package/Libraries/Components/Touchable/TouchableWithoutFeedback.windows.js +3 -3
  132. package/Libraries/Components/UnimplementedViews/UnimplementedNativeViewNativeComponent.js +2 -3
  133. package/Libraries/Components/View/ReactNativeStyleAttributes.js +7 -16
  134. package/Libraries/Components/View/View.js +114 -29
  135. package/Libraries/Components/View/View.windows.js +261 -217
  136. package/Libraries/Components/View/ViewAccessibility.js +1 -8
  137. package/Libraries/Components/View/ViewAccessibility.windows.js +1 -8
  138. package/Libraries/Components/View/ViewPropTypes.d.ts +21 -1
  139. package/Libraries/Components/View/ViewPropTypes.js +9 -1
  140. package/Libraries/Components/View/ViewPropTypes.windows.js +9 -1
  141. package/Libraries/Core/Devtools/getDevServer.js +1 -1
  142. package/Libraries/Core/Devtools/loadBundleFromServer.js +49 -7
  143. package/Libraries/Core/Devtools/loadBundleFromServer.windows.js +49 -7
  144. package/Libraries/Core/Devtools/openFileInEditor.js +1 -1
  145. package/Libraries/Core/Devtools/openURLInBrowser.js +1 -1
  146. package/Libraries/Core/Devtools/parseErrorStack.js +1 -1
  147. package/Libraries/Core/Devtools/parseHermesStack.js +1 -1
  148. package/Libraries/Core/Devtools/symbolicateStackTrace.js +1 -1
  149. package/Libraries/Core/ExceptionsManager.js +27 -16
  150. package/Libraries/Core/InitializeCore.js +2 -23
  151. package/Libraries/Core/NativeExceptionsManager.js +1 -0
  152. package/Libraries/Core/ReactFiberErrorDialog.js +1 -1
  153. package/Libraries/Core/ReactNativeVersion.js +3 -2
  154. package/Libraries/Core/SegmentFetcher/NativeSegmentFetcher.js +1 -0
  155. package/Libraries/Core/Timers/JSTimers.js +1 -1
  156. package/Libraries/Core/Timers/NativeTiming.js +1 -0
  157. package/Libraries/Core/Timers/immediateShim.js +1 -1
  158. package/Libraries/Core/Timers/queueMicrotask.js +1 -1
  159. package/Libraries/Core/checkNativeVersion.js +1 -0
  160. package/Libraries/Core/setUpDeveloperTools.js +13 -11
  161. package/Libraries/Core/setUpReactDevTools.js +21 -4
  162. package/Libraries/Debugging/DebuggingOverlay.js +12 -14
  163. package/Libraries/Debugging/DebuggingOverlayNativeComponent.js +2 -1
  164. package/Libraries/Debugging/DebuggingOverlayRegistry.js +0 -1
  165. package/Libraries/Debugging/useSubscribeToDebuggingOverlayRegistry.js +0 -1
  166. package/Libraries/EventEmitter/NativeEventEmitter.js +3 -3
  167. package/Libraries/EventEmitter/RCTEventEmitter.js +1 -1
  168. package/Libraries/EventEmitter/RCTNativeAppEventEmitter.js +1 -1
  169. package/Libraries/Image/AssetRegistry.js +4 -10
  170. package/Libraries/Image/Image.android.js +113 -107
  171. package/Libraries/Image/Image.ios.js +10 -2
  172. package/Libraries/Image/Image.windows.js +30 -20
  173. package/Libraries/Image/ImageAnalyticsTagContext.js +2 -2
  174. package/Libraries/Image/ImageInjection.js +1 -1
  175. package/Libraries/Image/ImageSource.d.ts +5 -0
  176. package/Libraries/Image/ImageViewNativeComponent.js +3 -3
  177. package/Libraries/Image/NativeImageEditor.js +1 -0
  178. package/Libraries/Image/NativeImageLoaderAndroid.js +1 -0
  179. package/Libraries/Image/NativeImageLoaderIOS.js +1 -0
  180. package/Libraries/Image/NativeImageStoreAndroid.js +1 -0
  181. package/Libraries/Image/NativeImageStoreIOS.js +1 -0
  182. package/Libraries/Image/RelativeImageStub.js +2 -1
  183. package/Libraries/Image/TextInlineImageNativeComponent.js +4 -4
  184. package/Libraries/Image/resolveAssetSource.js +1 -1
  185. package/Libraries/Image/resolveAssetSource.windows.js +1 -1
  186. package/Libraries/Interaction/FrameRateLogger.js +1 -1
  187. package/Libraries/Interaction/InteractionManager.js +64 -54
  188. package/Libraries/Interaction/NativeFrameRateLogger.js +1 -0
  189. package/Libraries/Interaction/TaskQueue.js +8 -9
  190. package/Libraries/Interaction/TouchHistoryMath.js +1 -1
  191. package/Libraries/LayoutAnimation/LayoutAnimation.js +12 -8
  192. package/Libraries/Linking/Linking.js +1 -1
  193. package/Libraries/Linking/NativeIntentAndroid.js +1 -0
  194. package/Libraries/Linking/NativeLinkingManager.js +1 -0
  195. package/Libraries/Lists/FlatList.d.ts +9 -5
  196. package/Libraries/Lists/FlatList.js +6 -7
  197. package/Libraries/Lists/SectionList.js +4 -4
  198. package/Libraries/Lists/SectionListModern.js +9 -3
  199. package/Libraries/Lists/VirtualizedList.js +3 -2
  200. package/Libraries/LogBox/Data/LogBoxData.js +7 -4
  201. package/Libraries/LogBox/Data/parseLogBoxLog.js +2 -0
  202. package/Libraries/LogBox/LogBox.js +72 -99
  203. package/Libraries/LogBox/UI/LogBoxButton.js +2 -1
  204. package/Libraries/LogBox/UI/LogBoxInspectorReactFrames.js +2 -1
  205. package/Libraries/LogBox/UI/LogBoxInspectorReactFrames.windows.js +2 -1
  206. package/Libraries/LogBox/UI/LogBoxInspectorSourceMapStatus.js +3 -2
  207. package/Libraries/LogBox/UI/LogBoxInspectorStackFrames.js +2 -1
  208. package/Libraries/Modal/Modal.d.ts +8 -2
  209. package/Libraries/Modal/Modal.js +24 -3
  210. package/Libraries/Modal/Modal.windows.js +24 -3
  211. package/Libraries/Modal/NativeModalManager.js +1 -0
  212. package/Libraries/Modal/RCTModalHostViewNativeComponent.js +2 -1
  213. package/Libraries/NativeComponent/BaseViewConfig.android.js +21 -18
  214. package/Libraries/NativeComponent/BaseViewConfig.ios.js +8 -17
  215. package/Libraries/NativeComponent/BaseViewConfig.js.flow +1 -1
  216. package/Libraries/NativeComponent/BaseViewConfig.windows.js +9 -18
  217. package/Libraries/NativeComponent/PlatformBaseViewConfig.js +1 -1
  218. package/Libraries/NativeComponent/ViewConfigIgnore.js +3 -3
  219. package/Libraries/NativeModules/specs/NativeDevMenu.js +1 -0
  220. package/Libraries/NativeModules/specs/NativeDevSettings.js +1 -0
  221. package/Libraries/NativeModules/specs/NativeDeviceEventManager.js +1 -0
  222. package/Libraries/NativeModules/specs/NativeDialogManagerAndroid.js +1 -0
  223. package/Libraries/NativeModules/specs/NativeDialogManagerWindows.js +1 -0
  224. package/Libraries/NativeModules/specs/NativeLogBox.js +1 -0
  225. package/Libraries/NativeModules/specs/NativeRedBox.js +1 -0
  226. package/Libraries/NativeModules/specs/NativeSourceCode.js +1 -0
  227. package/Libraries/Network/FormData.js +1 -1
  228. package/Libraries/Network/NativeNetworkingAndroid.js +1 -0
  229. package/Libraries/Network/NativeNetworkingIOS.js +1 -0
  230. package/Libraries/Network/RCTNetworking.android.js +2 -2
  231. package/Libraries/Network/RCTNetworking.ios.js +1 -1
  232. package/Libraries/Network/RCTNetworking.js.flow +1 -1
  233. package/Libraries/Network/RCTNetworking.windows.js +1 -1
  234. package/Libraries/Network/XMLHttpRequest.js +3 -3
  235. package/Libraries/PermissionsAndroid/NativePermissionsAndroid.js +1 -0
  236. package/Libraries/PermissionsAndroid/PermissionsAndroid.js +4 -3
  237. package/Libraries/Pressability/Pressability.js +1 -1
  238. package/Libraries/Pressability/Pressability.windows.js +1 -1
  239. package/Libraries/Promise.js +1 -1
  240. package/Libraries/PushNotificationIOS/NativePushNotificationManagerIOS.js +1 -0
  241. package/Libraries/PushNotificationIOS/PushNotificationIOS.js +3 -2
  242. package/Libraries/ReactNative/AppContainer-dev.js +4 -4
  243. package/Libraries/ReactNative/AppContainer-prod.js +0 -1
  244. package/Libraries/ReactNative/AppContainer.js +1 -1
  245. package/Libraries/ReactNative/AppRegistry.flow.js +2 -2
  246. package/Libraries/ReactNative/AppRegistryImpl.js +2 -13
  247. package/Libraries/ReactNative/BridgelessUIManager.js +1 -1
  248. package/Libraries/ReactNative/NativeHeadlessJsTaskSupport.js +1 -0
  249. package/Libraries/ReactNative/NativeI18nManager.js +1 -0
  250. package/Libraries/ReactNative/NativeUIManager.js +1 -0
  251. package/Libraries/ReactNative/ReactFabricPublicInstance/ReactFabricHostComponent.js +1 -1
  252. package/Libraries/ReactNative/ReactFabricPublicInstance/ReactFabricPublicInstance.js +1 -1
  253. package/Libraries/ReactNative/ReactFabricPublicInstance/ReactFabricPublicInstanceUtils.js +1 -1
  254. package/Libraries/ReactNative/ReactFabricPublicInstance/ReactNativeAttributePayload.js +81 -62
  255. package/Libraries/ReactNative/ReactFabricPublicInstance/warnForStyleProps.js +1 -1
  256. package/Libraries/ReactNative/RendererImplementation.js +1 -1
  257. package/Libraries/ReactNative/RendererProxy.js +1 -1
  258. package/Libraries/ReactNative/RootTag.js +2 -2
  259. package/Libraries/ReactNative/renderApplication.js +1 -1
  260. package/Libraries/ReactPrivate/ReactNativePrivateInitializeCore.js +1 -1
  261. package/Libraries/ReactPrivate/ReactNativePrivateInterface.js +2 -1
  262. package/Libraries/ReactPrivate/ReactNativePrivateInterface.js.flow +3 -3
  263. package/Libraries/Renderer/implementations/ReactFabric-dev.js +3 -1
  264. package/Libraries/Renderer/implementations/ReactFabric-prod.js +3 -1
  265. package/Libraries/Renderer/implementations/ReactFabric-profiling.js +3 -1
  266. package/Libraries/Renderer/shims/ReactNativeTypes.js +23 -36
  267. package/Libraries/Renderer/shims/ReactNativeTypes.windows.js +261 -0
  268. package/Libraries/Settings/NativeSettingsManager.js +1 -0
  269. package/Libraries/Settings/Settings.ios.js +1 -1
  270. package/Libraries/Settings/Settings.js +1 -1
  271. package/Libraries/Settings/SettingsFallback.js +1 -1
  272. package/Libraries/Share/NativeShareModule.js +1 -0
  273. package/Libraries/Share/Share.js +1 -1
  274. package/Libraries/StyleSheet/EdgeInsetsPropType.js +1 -1
  275. package/Libraries/StyleSheet/PlatformColorValueTypes.android.js +1 -1
  276. package/Libraries/StyleSheet/PlatformColorValueTypes.ios.js +1 -1
  277. package/Libraries/StyleSheet/PlatformColorValueTypes.js.flow +1 -1
  278. package/Libraries/StyleSheet/PlatformColorValueTypesIOS.ios.js +1 -1
  279. package/Libraries/StyleSheet/PlatformColorValueTypesIOS.js +1 -1
  280. package/Libraries/StyleSheet/PointPropType.js +1 -1
  281. package/Libraries/StyleSheet/Rect.js +1 -1
  282. package/Libraries/StyleSheet/StyleSheet.js +1 -0
  283. package/Libraries/StyleSheet/StyleSheetTypes.js +0 -1
  284. package/Libraries/StyleSheet/normalizeColor.js +1 -1
  285. package/Libraries/StyleSheet/processAspectRatio.js +1 -1
  286. package/Libraries/StyleSheet/processBackgroundImage.js +1 -1
  287. package/Libraries/StyleSheet/processBoxShadow.js +0 -1
  288. package/Libraries/StyleSheet/processColor.js +1 -1
  289. package/Libraries/StyleSheet/processColorArray.js +1 -1
  290. package/Libraries/StyleSheet/processFilter.js +1 -2
  291. package/Libraries/StyleSheet/processFontVariant.js +1 -1
  292. package/Libraries/StyleSheet/processTransform.js +1 -1
  293. package/Libraries/StyleSheet/processTransformOrigin.js +1 -1
  294. package/Libraries/StyleSheet/setNormalizedColorAlpha.js +1 -1
  295. package/Libraries/Text/Text.d.ts +1 -2
  296. package/Libraries/Text/Text.js +255 -246
  297. package/Libraries/Text/Text.windows.js +282 -301
  298. package/Libraries/Text/TextAncestor.js +3 -9
  299. package/Libraries/Text/TextAncestorContext.js +23 -0
  300. package/Libraries/Text/TextNativeComponent.js +4 -0
  301. package/Libraries/Text/TextProps.js +2 -5
  302. package/Libraries/Text/TextProps.windows.js +2 -6
  303. package/Libraries/TurboModule/samples/NativeSampleTurboModule.js +1 -0
  304. package/Libraries/Types/CodegenTypes.js +1 -1
  305. package/Libraries/Types/CodegenTypesNamespace.js +2 -1
  306. package/Libraries/Types/CoreEventTypes.d.ts +4 -0
  307. package/Libraries/Types/ReactDevToolsTypes.js +0 -1
  308. package/Libraries/Utilities/Appearance.js +1 -1
  309. package/Libraries/Utilities/BackHandler.js.flow +1 -1
  310. package/Libraries/Utilities/DevLoadingView.js +1 -1
  311. package/Libraries/Utilities/DeviceInfo.js +1 -1
  312. package/Libraries/Utilities/Dimensions.js +1 -1
  313. package/Libraries/Utilities/HMRClient.js +13 -3
  314. package/Libraries/Utilities/HMRClientProdShim.js +1 -1
  315. package/Libraries/Utilities/NativeAppearance.js +1 -0
  316. package/Libraries/Utilities/NativeDevLoadingView.js +1 -0
  317. package/Libraries/Utilities/NativeDeviceInfo.js +1 -2
  318. package/Libraries/Utilities/NativePlatformConstantsAndroid.js +1 -0
  319. package/Libraries/Utilities/NativePlatformConstantsIOS.js +1 -0
  320. package/Libraries/Utilities/NativePlatformConstantsWin.js +1 -0
  321. package/Libraries/Utilities/PerformanceLoggerContext.js +2 -2
  322. package/Libraries/Utilities/PixelRatio.js +1 -1
  323. package/Libraries/Utilities/Platform.android.js +2 -5
  324. package/Libraries/Utilities/Platform.ios.js +2 -5
  325. package/Libraries/Utilities/Platform.js +1 -1
  326. package/Libraries/Utilities/Platform.js.flow +2 -2
  327. package/Libraries/Utilities/Platform.windows.js +2 -5
  328. package/Libraries/Utilities/PlatformTypes.js +2 -2
  329. package/Libraries/Utilities/RCTLog.js +1 -1
  330. package/Libraries/Utilities/SceneTracker.js +1 -1
  331. package/Libraries/Utilities/binaryToBase64.js +1 -1
  332. package/Libraries/Utilities/codegenNativeCommands.js +5 -3
  333. package/Libraries/Utilities/codegenNativeComponent.js +4 -4
  334. package/Libraries/Utilities/createPerformanceLogger.js +27 -20
  335. package/Libraries/Utilities/deepFreezeAndThrowOnMutationInDev.js +1 -1
  336. package/Libraries/Utilities/defineLazyObjectProperty.js +1 -1
  337. package/Libraries/Utilities/differ/deepDiffer.js +1 -1
  338. package/Libraries/Utilities/differ/insetsDiffer.js +1 -1
  339. package/Libraries/Utilities/differ/matricesDiffer.js +1 -1
  340. package/Libraries/Utilities/differ/pointsDiffer.js +1 -1
  341. package/Libraries/Utilities/logError.js +1 -1
  342. package/Libraries/Utilities/mapWithSeparator.js +1 -1
  343. package/Libraries/Utilities/stringifySafe.js +1 -1
  344. package/Libraries/Utilities/stringifyViewConfig.js +1 -1
  345. package/Libraries/Utilities/useColorScheme.js +1 -1
  346. package/Libraries/Utilities/useWindowDimensions.js +1 -1
  347. package/Libraries/Utilities/warnOnce.js +1 -1
  348. package/Libraries/Vibration/NativeVibration.js +1 -0
  349. package/Libraries/Vibration/Vibration.js +1 -2
  350. package/Libraries/WebSocket/NativeWebSocketModule.js +1 -0
  351. package/Libraries/WebSocket/WebSocket.js +1 -1
  352. package/Libraries/WebSocket/WebSocketInterceptor.js +1 -1
  353. package/Libraries/promiseRejectionTrackingOptions.js +1 -1
  354. package/Libraries/vendor/core/ErrorUtils.js +1 -1
  355. package/Libraries/vendor/emitter/EventEmitter.js +6 -6
  356. package/Microsoft.ReactNative/CompositionSwitcher.idl +163 -162
  357. package/Microsoft.ReactNative/Fabric/AbiComponentDescriptor.cpp +3 -3
  358. package/Microsoft.ReactNative/Fabric/AbiComponentDescriptor.h +3 -3
  359. package/Microsoft.ReactNative/Fabric/AbiShadowNode.cpp +2 -1
  360. package/Microsoft.ReactNative/Fabric/AbiShadowNode.h +2 -2
  361. package/Microsoft.ReactNative/Fabric/AbiViewComponentDescriptor.h +3 -3
  362. package/Microsoft.ReactNative/Fabric/AbiViewShadowNode.cpp +2 -1
  363. package/Microsoft.ReactNative/Fabric/AbiViewShadowNode.h +1 -1
  364. package/Microsoft.ReactNative/Fabric/Composition/CompositionContextHelper.cpp +104 -4
  365. package/Microsoft.ReactNative/Fabric/Composition/CompositionDynamicAutomationProvider.cpp +18 -7
  366. package/Microsoft.ReactNative/Fabric/Composition/DebuggerUIIsland.cpp +169 -0
  367. package/Microsoft.ReactNative/Fabric/Composition/DebuggerUIIsland.h +42 -0
  368. package/Microsoft.ReactNative/Fabric/Composition/DebuggingOverlayComponentView.cpp +1 -1
  369. package/Microsoft.ReactNative/Fabric/Composition/Modal/WindowsModalHostViewComponentView.cpp +41 -33
  370. package/Microsoft.ReactNative/Fabric/Composition/ReactNativeIsland.cpp +68 -1
  371. package/Microsoft.ReactNative/Fabric/Composition/ReactNativeIsland.h +9 -0
  372. package/Microsoft.ReactNative/Fabric/Composition/ScrollViewComponentView.cpp +19 -0
  373. package/Microsoft.ReactNative/Fabric/Composition/TextInput/WindowsTextInputComponentDescriptor.h +3 -3
  374. package/Microsoft.ReactNative/Fabric/Composition/TextInput/WindowsTextInputComponentView.cpp +108 -24
  375. package/Microsoft.ReactNative/Fabric/Composition/TextInput/WindowsTextInputComponentView.h +1 -0
  376. package/Microsoft.ReactNative/Fabric/Composition/TextInput/WindowsTextInputShadowNode.cpp +21 -17
  377. package/Microsoft.ReactNative/Fabric/Composition/TextInput/WindowsTextInputShadowNode.h +4 -4
  378. package/Microsoft.ReactNative/Fabric/Composition/TextInput/WindowsTextInputState.cpp +19 -0
  379. package/Microsoft.ReactNative/Fabric/Composition/TextInput/WindowsTextInputState.h +76 -0
  380. package/Microsoft.ReactNative/Fabric/FabricUIManagerModule.cpp +12 -1
  381. package/Microsoft.ReactNative/Fabric/FabricUIManagerModule.h +2 -0
  382. package/Microsoft.ReactNative/Fabric/platform/react/renderer/graphics/HostPlatformColor.h +6 -0
  383. package/Microsoft.ReactNative/Fabric/platform/react/renderer/textlayoutmanager/WindowsTextLayoutManager.cpp +62 -39
  384. package/Microsoft.ReactNative/Fabric/platform/react/threading/TaskDispatchThread.cpp +75 -24
  385. package/Microsoft.ReactNative/Fabric/platform/react/threading/TaskDispatchThread.h +4 -25
  386. package/Microsoft.ReactNative/JsiApi.cpp +1 -1
  387. package/Microsoft.ReactNative/Microsoft.ReactNative.vcxproj +1 -0
  388. package/Microsoft.ReactNative/Microsoft.ReactNative.vcxproj.filters +3 -0
  389. package/Microsoft.ReactNative/Modules/Animated/NativeAnimatedNodeManager.h +0 -2
  390. package/Microsoft.ReactNative/Modules/AppThemeModuleUwp.cpp +0 -1
  391. package/Microsoft.ReactNative/Modules/CreateModules.cpp +0 -3
  392. package/Microsoft.ReactNative/Modules/NativeUIManager.cpp +27 -11
  393. package/Microsoft.ReactNative/Modules/PaperUIManagerModule.cpp +19 -2
  394. package/Microsoft.ReactNative/QuirkSettings.cpp +16 -0
  395. package/Microsoft.ReactNative/QuirkSettings.h +3 -0
  396. package/Microsoft.ReactNative/QuirkSettings.idl +5 -0
  397. package/Microsoft.ReactNative/ReactHost/DebuggerNotifications.h +54 -0
  398. package/Microsoft.ReactNative/ReactHost/React.h +11 -4
  399. package/Microsoft.ReactNative/ReactHost/ReactHost.cpp +199 -29
  400. package/Microsoft.ReactNative/ReactHost/ReactHost.h +22 -4
  401. package/Microsoft.ReactNative/ReactHost/ReactInstanceWin.cpp +68 -52
  402. package/Microsoft.ReactNative/ReactHost/ReactInstanceWin.h +1 -1
  403. package/Microsoft.ReactNative/ReactRootView.cpp +108 -0
  404. package/Microsoft.ReactNative/ReactRootView.h +6 -0
  405. package/Microsoft.ReactNative/Utils/LocalBundleReader.cpp +1 -0
  406. package/Microsoft.ReactNative/Views/DevMenu.cpp +1 -1
  407. package/Microsoft.ReactNative/Views/ShadowNodeBase.cpp +36 -8
  408. package/Microsoft.ReactNative/Views/ShadowNodeRegistry.cpp +6 -2
  409. package/Microsoft.ReactNative/Views/ViewManager.h +0 -1
  410. package/Microsoft.ReactNative/Views/ViewManagerBase.cpp +9 -1
  411. package/Microsoft.ReactNative.Cxx/JSI/decorator.h +41 -0
  412. package/Microsoft.ReactNative.Cxx/JSI/jsi-inl.h +16 -0
  413. package/Microsoft.ReactNative.Cxx/JSI/jsi.cpp +125 -0
  414. package/Microsoft.ReactNative.Cxx/JSI/jsi.h +167 -1
  415. package/Microsoft.ReactNative.Cxx/Microsoft.ReactNative.Cxx.vcxitems +2 -2
  416. package/Microsoft.ReactNative.Cxx/NodeApiJsiRuntime.cpp +110 -38
  417. package/Microsoft.ReactNative.Cxx/ReactCommon/CallInvoker.h +5 -5
  418. package/Microsoft.ReactNative.Cxx/ReactCommon/SchedulerPriority.h +0 -2
  419. package/Microsoft.ReactNative.Cxx/ReactCommon/TurboModuleUtils.h +0 -19
  420. package/Microsoft.ReactNative.Cxx/ReactCommon/react/bridging/Base.h +45 -34
  421. package/Microsoft.ReactNative.Cxx/ReactCommon/react/bridging/Bool.h +1 -1
  422. package/Microsoft.ReactNative.Cxx/ReactCommon/react/bridging/Bridging.h +1 -0
  423. package/Microsoft.ReactNative.Cxx/ReactCommon/react/bridging/Class.h +36 -33
  424. package/Microsoft.ReactNative.Cxx/ReactCommon/react/bridging/Number.h +10 -10
  425. package/Microsoft.ReactNative.Cxx/ReactCommon/react/bridging/Promise.h +14 -8
  426. package/Microsoft.ReactNative.Cxx/node-api/js_native_api.h +44 -31
  427. package/Microsoft.ReactNative.Cxx/node-api/js_native_api_types.h +13 -14
  428. package/Microsoft.ReactNative.Cxx/node-api/js_runtime_api.h +19 -4
  429. package/Microsoft.ReactNative.Cxx/node-api/node_api.h +270 -0
  430. package/Microsoft.ReactNative.Cxx/node-api/node_api_types.h +52 -0
  431. package/Mso/src/dispatchQueue/threadPoolScheduler_win.cpp +13 -4
  432. package/PropertySheets/External/Microsoft.ReactNative.Cpp.Dependencies.props +10 -0
  433. package/PropertySheets/Generated/PackageVersion.g.props +4 -4
  434. package/PropertySheets/JSEngine.props +1 -1
  435. package/PropertySheets/React.Cpp.props +6 -4
  436. package/README.md +1 -1
  437. package/ReactCommon/ReactCommon.vcxproj +29 -21
  438. package/ReactCommon/ReactCommon.vcxproj.filters +36 -13
  439. package/ReactCommon/TEMP_UntilReactCommonUpdate/cxxreact/CxxNativeModule.cpp +5 -0
  440. package/ReactCommon/TEMP_UntilReactCommonUpdate/cxxreact/NativeToJsBridge.cpp +6 -2
  441. package/ReactCommon/TEMP_UntilReactCommonUpdate/jsi/jsi/test/testlib.cpp +111 -7
  442. package/ReactCommon/TEMP_UntilReactCommonUpdate/jsinspector-modern/NetworkIOAgent.cpp +57 -4
  443. package/ReactCommon/TEMP_UntilReactCommonUpdate/jsinspector-modern/NetworkIOAgent.h +17 -1
  444. package/ReactCommon/TEMP_UntilReactCommonUpdate/jsinspector-modern/network/HttpUtils.cpp +175 -0
  445. package/ReactCommon/TEMP_UntilReactCommonUpdate/react/bridging/Bridging.h +1 -0
  446. package/ReactCommon/TEMP_UntilReactCommonUpdate/react/nativemodule/dom/NativeDOM.cpp +69 -56
  447. package/ReactCommon/TEMP_UntilReactCommonUpdate/react/nativemodule/dom/NativeDOM.h +35 -18
  448. package/ReactCommon/TEMP_UntilReactCommonUpdate/react/renderer/components/text/ParagraphShadowNode.cpp +445 -0
  449. package/ReactCommon/TEMP_UntilReactCommonUpdate/react/renderer/components/text/platform/android/react/renderer/components/text/ParagraphState.h +92 -0
  450. package/ReactCommon/TEMP_UntilReactCommonUpdate/react/renderer/components/view/AccessibilityPrimitives.h +35 -0
  451. package/ReactCommon/TEMP_UntilReactCommonUpdate/react/renderer/components/view/AccessibilityProps.cpp +37 -1
  452. package/ReactCommon/TEMP_UntilReactCommonUpdate/react/renderer/components/view/conversions.h +250 -80
  453. package/ReactCommon/TEMP_UntilReactCommonUpdate/react/renderer/core/ShadowNode.cpp +528 -0
  454. package/ReactCommon/TEMP_UntilReactCommonUpdate/react/renderer/css/CSSTokenizer.h +1 -2
  455. package/ReactCommon/TEMP_UntilReactCommonUpdate/reactperflogger/reactperflogger/ReactPerfettoLogger.cpp +9 -12
  456. package/ReactCommon/cgmanifest.json +1 -1
  457. package/Scripts/Analyze-Crash.ps1 +87 -3
  458. package/Scripts/OfficeReact.Win32.nuspec +0 -1
  459. package/Scripts/Tfs/Layout-MSRN-Headers.ps1 +2 -0
  460. package/Scripts/Tfs/Start-TestServers.ps1 +2 -1
  461. package/Scripts/creaternwapp.cmd +10 -6
  462. package/Scripts/rnw-dependencies.ps1 +33 -4
  463. package/Shared/CreateModules.h +0 -35
  464. package/Shared/DevServerHelper.h +13 -3
  465. package/Shared/DevSettings.h +6 -5
  466. package/Shared/DevSupportManager.cpp +79 -20
  467. package/Shared/DevSupportManager.h +7 -19
  468. package/Shared/Hermes/HermesRuntimeAgentDelegate.cpp +99 -0
  469. package/Shared/Hermes/HermesRuntimeAgentDelegate.h +81 -0
  470. package/Shared/Hermes/HermesRuntimeTargetDelegate.cpp +274 -0
  471. package/Shared/Hermes/HermesRuntimeTargetDelegate.h +77 -0
  472. package/Shared/HermesRuntimeHolder.cpp +29 -111
  473. package/Shared/HermesRuntimeHolder.h +214 -32
  474. package/Shared/IDevSupportManager.h +5 -2
  475. package/Shared/Inspector/ReactInspectorPackagerConnectionDelegate.cpp +108 -0
  476. package/Shared/Inspector/ReactInspectorPackagerConnectionDelegate.h +19 -0
  477. package/Shared/Inspector/ReactInspectorThread.h +18 -0
  478. package/Shared/JSI/RuntimeHolder.h +5 -2
  479. package/Shared/Modules/BlobModule.cpp +0 -90
  480. package/Shared/Modules/BlobModule.h +0 -40
  481. package/Shared/Modules/FileReaderModule.cpp +0 -104
  482. package/Shared/Modules/FileReaderModule.h +0 -38
  483. package/Shared/Modules/HttpModule.cpp +0 -172
  484. package/Shared/Modules/HttpModule.h +0 -47
  485. package/Shared/Modules/WebSocketModule.cpp +0 -287
  486. package/Shared/Modules/WebSocketModule.h +1 -94
  487. package/Shared/OInstance.cpp +45 -139
  488. package/Shared/OInstance.h +0 -1
  489. package/Shared/Shared.vcxitems +33 -32
  490. package/Shared/Shared.vcxitems.filters +38 -51
  491. package/Shared/TurboModuleManager.cpp +0 -1
  492. package/codegen/NativeDOMSpec.g.h +6 -0
  493. package/codegen/NativeDeviceInfoSpec.g.h +2 -0
  494. package/codegen/NativeIntersectionObserverSpec.g.h +19 -5
  495. package/codegen/NativeMutationObserverSpec.g.h +4 -4
  496. package/codegen/NativeReactNativeFeatureFlagsSpec.g.h +159 -93
  497. package/codegen/react/components/rnwcore/EventEmitters.cpp +25 -0
  498. package/codegen/react/components/rnwcore/EventEmitters.h +25 -0
  499. package/codegen/react/components/rnwcore/ModalHostView.g.h +4 -0
  500. package/codegen/react/components/rnwcore/Props.cpp +535 -24
  501. package/codegen/react/components/rnwcore/Props.h +138 -0
  502. package/codegen/react/components/rnwcore/States.h +9 -78
  503. package/codegen/react/components/rnwcore/VirtualView.g.h +226 -0
  504. package/codegen/rnwcoreJSI-generated.cpp +101 -31
  505. package/codegen/rnwcoreJSI.h +169 -88
  506. package/include/Shared/II18nModule.h +0 -1
  507. package/index.js +22 -2
  508. package/index.windows.js +131 -221
  509. package/interface.js +1 -1
  510. package/jest/MockNativeMethods.js +9 -3
  511. package/jest/RefreshControlMock.js +32 -0
  512. package/jest/assetFileTransformer.js +1 -0
  513. package/jest/local-setup.js +4 -3
  514. package/jest/mock.js +39 -0
  515. package/jest/mockComponent.js +47 -17
  516. package/jest/mockNativeComponent.js +26 -15
  517. package/jest/mocks/AccessibilityInfo.js +62 -0
  518. package/jest/mocks/ActivityIndicator.js +23 -0
  519. package/jest/mocks/AppState.js +19 -0
  520. package/jest/mocks/Clipboard.js +16 -0
  521. package/jest/mocks/Image.js +23 -0
  522. package/jest/mocks/InitializeCore.js +9 -0
  523. package/jest/mocks/Linking.js +28 -0
  524. package/jest/mocks/Modal.js +33 -0
  525. package/jest/mocks/NativeComponentRegistry.js +30 -0
  526. package/jest/mocks/NativeModules.js +239 -0
  527. package/jest/mocks/RefreshControl.js +31 -0
  528. package/jest/mocks/RendererProxy.js +45 -0
  529. package/jest/mocks/ScrollView.js +58 -0
  530. package/jest/mocks/Text.js +27 -0
  531. package/jest/mocks/TextInput.js +32 -0
  532. package/jest/mocks/UIManager.js +60 -0
  533. package/jest/mocks/Vibration.js +16 -0
  534. package/jest/mocks/View.js +27 -0
  535. package/jest/mocks/ViewNativeComponent.js +23 -0
  536. package/jest/mocks/requireNativeComponent.js +22 -0
  537. package/{Libraries/Utilities/infoLog.js → jest/mocks/useColorScheme.js} +7 -9
  538. package/jest/react-native-env.js +1 -0
  539. package/jest/renderer.js +1 -2
  540. package/jest/resolver.js +1 -0
  541. package/jest/setup.js +64 -449
  542. package/package.json +24 -24
  543. package/src/private/animated/NativeAnimatedHelper.js +8 -1
  544. package/src/private/animated/createAnimatedPropsHook.js +14 -4
  545. package/src/private/animated/createAnimatedPropsMemoHook.js +2 -3
  546. package/src/private/components/safeareaview/SafeAreaView_INTERNAL_DO_NOT_USE.js +0 -1
  547. package/src/private/components/scrollview/HScrollViewNativeComponents.js +0 -1
  548. package/src/private/components/scrollview/VScrollViewNativeComponents.js +0 -1
  549. package/src/private/components/virtualview/VirtualView.js +145 -0
  550. package/src/private/components/virtualview/VirtualViewNativeComponent.js +90 -0
  551. package/src/private/devsupport/devmenu/elementinspector/BorderBox.js +1 -1
  552. package/src/private/devsupport/devmenu/elementinspector/BoxInspector.js +1 -1
  553. package/src/private/devsupport/devmenu/elementinspector/ElementBox.js +1 -1
  554. package/src/private/devsupport/devmenu/elementinspector/ElementProperties.js +1 -1
  555. package/src/private/devsupport/devmenu/elementinspector/Inspector.js +1 -1
  556. package/src/private/devsupport/devmenu/elementinspector/InspectorOverlay.js +1 -1
  557. package/src/private/devsupport/devmenu/elementinspector/InspectorPanel.js +1 -1
  558. package/src/private/devsupport/devmenu/elementinspector/NetworkOverlay.js +1 -1
  559. package/src/private/devsupport/devmenu/elementinspector/ReactDevToolsOverlay.js +1 -1
  560. package/src/private/devsupport/devmenu/elementinspector/StyleInspector.js +1 -1
  561. package/src/private/devsupport/devmenu/elementinspector/XHRInterceptor.js +1 -1
  562. package/src/private/devsupport/devmenu/elementinspector/getInspectorDataForViewAtPoint.js +1 -1
  563. package/src/private/devsupport/devmenu/elementinspector/resolveBoxStyle.js +1 -1
  564. package/src/private/devsupport/devmenu/perfmonitor/PerformanceOverlay.js +1 -1
  565. package/src/private/devsupport/rndevtools/FuseboxSessionObserver.js +0 -1
  566. package/src/private/devsupport/rndevtools/ReactDevToolsSettingsManager.android.js +8 -9
  567. package/src/private/devsupport/rndevtools/ReactDevToolsSettingsManager.ios.js +12 -15
  568. package/src/private/devsupport/rndevtools/ReactDevToolsSettingsManager.windows.js +8 -9
  569. package/src/private/devsupport/rndevtools/setUpFuseboxReactDevToolsDispatcher.js +0 -1
  570. package/src/private/devsupport/rndevtools/specs/NativeReactDevToolsRuntimeSettingsModule.js +0 -1
  571. package/src/private/featureflags/ReactNativeFeatureFlags.js +88 -8
  572. package/src/private/featureflags/ReactNativeFeatureFlagsBase.js +2 -0
  573. package/src/private/featureflags/specs/NativeReactNativeFeatureFlags.js +15 -3
  574. package/src/private/renderer/errorhandling/ErrorHandlers.js +1 -1
  575. package/src/private/setup/setUpDefaultReactNativeEnvironment.js +44 -0
  576. package/src/private/setup/setUpPerformanceObserver.js +7 -0
  577. package/src/private/specs_DEPRECATED/components/ActivityIndicatorViewNativeComponent.js +8 -5
  578. package/src/private/specs_DEPRECATED/components/AndroidDrawerLayoutNativeComponent.js +4 -4
  579. package/src/private/specs_DEPRECATED/components/AndroidHorizontalScrollContentViewNativeComponent.js +4 -4
  580. package/src/private/specs_DEPRECATED/components/AndroidSwipeRefreshLayoutNativeComponent.js +4 -4
  581. package/src/private/specs_DEPRECATED/components/AndroidSwitchNativeComponent.js +10 -7
  582. package/src/private/specs_DEPRECATED/components/DebuggingOverlayNativeComponent.js +5 -4
  583. package/src/private/specs_DEPRECATED/components/ProgressBarAndroidNativeComponent.js +7 -4
  584. package/src/private/specs_DEPRECATED/components/PullToRefreshViewNativeComponent.js +10 -7
  585. package/src/private/specs_DEPRECATED/components/RCTInputAccessoryViewNativeComponent.js +9 -6
  586. package/src/private/specs_DEPRECATED/components/RCTModalHostViewNativeComponent.js +15 -6
  587. package/src/private/specs_DEPRECATED/components/RCTSafeAreaViewNativeComponent.js +9 -6
  588. package/src/private/specs_DEPRECATED/components/SwitchNativeComponent.js +5 -5
  589. package/src/private/specs_DEPRECATED/components/UnimplementedNativeViewNativeComponent.js +4 -4
  590. package/src/private/specs_DEPRECATED/modules/NativeDeviceInfo.js +1 -0
  591. package/src/private/specs_DEPRECATED/modules/NativeFrameRateLogger.js +1 -1
  592. package/src/private/specs_DEPRECATED/modules/NativePermissionsAndroid.js +1 -1
  593. package/src/private/specs_DEPRECATED/modules/NativePushNotificationManagerIOS.js +1 -1
  594. package/src/private/specs_DEPRECATED/modules/NativeUIManager.js +9 -6
  595. package/src/private/styles/composeStyles.js +5 -12
  596. package/src/private/types/HostInstance.js +1 -1
  597. package/src/private/webapis/dom/events/Event.js +3 -0
  598. package/src/private/webapis/dom/events/EventTarget.js +3 -0
  599. package/src/private/webapis/dom/nodes/ReactNativeDocument.js +1 -1
  600. package/src/private/webapis/dom/nodes/ReactNativeElement.js +7 -24
  601. package/src/private/webapis/dom/nodes/ReadOnlyCharacterData.js +1 -1
  602. package/src/private/webapis/dom/nodes/ReadOnlyElement.js +1 -1
  603. package/src/private/webapis/dom/nodes/ReadOnlyNode.js +4 -2
  604. package/src/private/webapis/dom/nodes/ReadOnlyText.js +1 -1
  605. package/src/private/webapis/dom/nodes/internals/NodeInternals.js +1 -1
  606. package/src/private/webapis/dom/nodes/internals/ReactNativeDocumentElementInstanceHandle.js +1 -1
  607. package/src/private/webapis/dom/nodes/internals/ReactNativeDocumentInstanceHandle.js +1 -1
  608. package/src/private/webapis/dom/nodes/internals/Traversal.js +1 -1
  609. package/src/private/webapis/dom/nodes/specs/NativeDOM.js +38 -0
  610. package/src/private/webapis/dom/oldstylecollections/HTMLCollection.js +4 -1
  611. package/src/private/webapis/dom/oldstylecollections/NodeList.js +4 -1
  612. package/src/private/webapis/errors/DOMException.js +166 -0
  613. package/src/private/webapis/geometry/DOMRect.js +5 -0
  614. package/src/private/webapis/geometry/DOMRectList.js +4 -1
  615. package/src/private/webapis/geometry/DOMRectReadOnly.js +6 -0
  616. package/src/private/webapis/idlecallbacks/specs/NativeIdleCallbacks.js +4 -2
  617. package/src/private/webapis/intersectionobserver/IntersectionObserver.js +15 -7
  618. package/src/private/webapis/intersectionobserver/IntersectionObserverEntry.js +3 -0
  619. package/src/private/webapis/intersectionobserver/internals/IntersectionObserverManager.js +83 -18
  620. package/src/private/webapis/intersectionobserver/specs/NativeIntersectionObserver.js +12 -0
  621. package/src/private/webapis/mutationobserver/MutationObserver.js +13 -38
  622. package/src/private/webapis/mutationobserver/MutationRecord.js +3 -0
  623. package/src/private/webapis/mutationobserver/internals/MutationObserverManager.js +7 -29
  624. package/src/private/webapis/mutationobserver/specs/NativeMutationObserver.js +1 -4
  625. package/src/private/webapis/performance/EventTiming.js +1 -1
  626. package/src/private/webapis/performance/LongTasks.js +1 -1
  627. package/src/private/webapis/performance/MemoryInfo.js +4 -1
  628. package/src/private/webapis/performance/Performance.js +20 -9
  629. package/src/private/webapis/performance/PerformanceEntry.js +5 -1
  630. package/src/private/webapis/performance/PerformanceObserver.js +32 -28
  631. package/src/private/webapis/performance/ReactNativeStartupTiming.js +4 -1
  632. package/src/private/webapis/performance/ResourceTiming.js +108 -0
  633. package/src/private/webapis/performance/UserTiming.js +1 -1
  634. package/src/private/webapis/performance/internals/RawPerformanceEntry.js +50 -33
  635. package/src/private/webapis/performance/internals/Utilities.js +1 -1
  636. package/src/private/webapis/performance/specs/NativePerformance.js +1 -1
  637. package/src/private/webapis/structuredClone/structuredClone.js +233 -0
  638. package/src/private/webapis/utils/ArrayLikeUtils.js +1 -1
  639. package/src/private/webapis/webidl/PlatformObjects.js +59 -0
  640. package/template/metro.config.js +2 -4
  641. package/templates/cpp-app/metro.config.js +2 -4
  642. package/templates/cpp-lib/example/metro.config.js +2 -3
  643. package/templates/cpp-lib/template.config.js +24 -0
  644. package/templates/cpp-lib/windows/MyLib/MyLib.h +20 -1
  645. package/templates/cpp-lib/windows/MyLib/MyLib.vcxproj +0 -1
  646. package/types/modules/Devtools.d.ts +23 -9
  647. package/Libraries/BugReporting/BugReporting.js +0 -140
  648. package/Libraries/BugReporting/NativeBugReporting.js +0 -13
  649. package/Libraries/BugReporting/dumpReactTree.js +0 -151
  650. package/Libraries/BugReporting/getReactData.js +0 -187
  651. package/Libraries/Interaction/JSEventLoopWatchdog.js +0 -88
  652. package/ReactCommon/TEMP_UntilReactCommonUpdate/cxxreact/JSExecutor.cpp +0 -78
  653. package/ReactCommon/TEMP_UntilReactCommonUpdate/cxxreact/JSExecutor.h +0 -196
  654. package/ReactCommon/TEMP_UntilReactCommonUpdate/jserrorhandler/JsErrorHandler.cpp +0 -429
  655. package/ReactCommon/TEMP_UntilReactCommonUpdate/jsitooling/react/runtime/JSRuntimeFactory.cpp +0 -45
  656. package/ReactCommon/TEMP_UntilReactCommonUpdate/jsitooling/react/runtime/JSRuntimeFactory.h +0 -91
  657. package/ReactCommon/TEMP_UntilReactCommonUpdate/react/renderer/mounting/internal/CullingContext.cpp +0 -49
  658. package/ReactCommon/TEMP_UntilReactCommonUpdate/react/renderer/mounting/internal/sliceChildShadowNodeViewPairs.cpp +0 -191
  659. package/ReactCommon/TEMP_UntilReactCommonUpdate/react/runtime/ReactInstance.cpp +0 -670
  660. package/Shared/InspectorPackagerConnection.cpp +0 -232
  661. package/Shared/InspectorPackagerConnection.h +0 -61
  662. package/Shared/Modules/ExceptionsManagerModule.cpp +0 -209
  663. package/Shared/Modules/ExceptionsManagerModule.h +0 -32
  664. package/Shared/Modules/I18nModule.cpp +0 -36
  665. package/Shared/Modules/I18nModule.h +0 -28
  666. package/Shared/Modules/NetworkingModule.cpp +0 -432
  667. package/Shared/Modules/NetworkingModule.h +0 -34
  668. package/Shared/Modules/PlatformConstantsModule.cpp +0 -60
  669. package/Shared/Modules/PlatformConstantsModule.h +0 -23
  670. package/Shared/Modules/SourceCodeModule.cpp +0 -35
  671. package/Shared/Modules/SourceCodeModule.h +0 -27
  672. package/Shared/Modules/StatusBarManagerModule.cpp +0 -25
  673. package/Shared/Modules/StatusBarManagerModule.h +0 -19
  674. package/codegen/NativeBugReportingSpec.g.h +0 -41
  675. package/jest/mockModal.js +0 -32
  676. package/jest/mockScrollView.js +0 -35
  677. package/src/private/specs_DEPRECATED/modules/NativeBugReporting.js +0 -20
  678. /package/Shared/{HermesSamplingProfiler.cpp → Hermes/HermesSamplingProfiler.cpp} +0 -0
  679. /package/Shared/{HermesSamplingProfiler.h → Hermes/HermesSamplingProfiler.h} +0 -0
@@ -4,8 +4,8 @@
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
- * @format
8
7
  * @flow strict-local
8
+ * @format
9
9
  */
10
10
 
11
11
  'use strict';
@@ -4,10 +4,9 @@
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
- * @format
8
7
  * @flow strict-local
8
+ * @format
9
9
  */
10
10
 
11
11
  export * from '../../../src/private/specs_DEPRECATED/components/ProgressBarAndroidNativeComponent';
12
- import ProgressBarAndroidNativeComponent from '../../../src/private/specs_DEPRECATED/components/ProgressBarAndroidNativeComponent';
13
- export default ProgressBarAndroidNativeComponent;
12
+ export {default} from '../../../src/private/specs_DEPRECATED/components/ProgressBarAndroidNativeComponent';
@@ -4,10 +4,9 @@
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
- * @format
8
7
  * @flow strict-local
8
+ * @format
9
9
  */
10
10
 
11
11
  export * from '../../../src/private/specs_DEPRECATED/components/AndroidSwipeRefreshLayoutNativeComponent';
12
- import AndroidSwipeRefreshLayoutNativeComponent from '../../../src/private/specs_DEPRECATED/components/AndroidSwipeRefreshLayoutNativeComponent';
13
- export default AndroidSwipeRefreshLayoutNativeComponent;
12
+ export {default} from '../../../src/private/specs_DEPRECATED/components/AndroidSwipeRefreshLayoutNativeComponent';
@@ -4,10 +4,11 @@
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
- * @format
8
7
  * @flow strict-local
8
+ * @format
9
9
  */
10
10
 
11
11
  export * from '../../../src/private/specs_DEPRECATED/components/PullToRefreshViewNativeComponent';
12
12
  import PullToRefreshViewNativeComponent from '../../../src/private/specs_DEPRECATED/components/PullToRefreshViewNativeComponent';
13
+
13
14
  export default PullToRefreshViewNativeComponent;
@@ -4,8 +4,8 @@
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
- * @format
8
7
  * @flow strict-local
8
+ * @format
9
9
  */
10
10
 
11
11
  import type {ColorValue} from '../../StyleSheet/StyleSheet';
@@ -4,8 +4,8 @@
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
- * @format
8
7
  * @flow strict-local
8
+ * @format
9
9
  */
10
10
 
11
11
  import type {ColorValue} from '../../StyleSheet/StyleSheet';
@@ -4,10 +4,9 @@
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
- * @format
8
7
  * @flow strict-local
8
+ * @format
9
9
  */
10
10
 
11
11
  export * from '../../../src/private/specs_DEPRECATED/components/RCTSafeAreaViewNativeComponent';
12
- import RCTSafeAreaViewNativeComponent from '../../../src/private/specs_DEPRECATED/components/RCTSafeAreaViewNativeComponent';
13
- export default RCTSafeAreaViewNativeComponent;
12
+ export {default} from '../../../src/private/specs_DEPRECATED/components/RCTSafeAreaViewNativeComponent';
@@ -13,12 +13,21 @@ import {NativeMethods} from '../../../types/public/ReactNativeTypes';
13
13
  import {ViewProps} from '../View/ViewPropTypes';
14
14
 
15
15
  /**
16
+ * @deprecated
17
+ * Use `react-native-safe-area-context` instead. This component is deprecated and will be removed in a future release.
18
+ *
16
19
  * Renders nested content and automatically applies paddings reflect the portion of the view
17
20
  * that is not covered by navigation bars, tab bars, toolbars, and other ancestor views.
18
21
  * Moreover, and most importantly, Safe Area's paddings reflect physical limitation of the screen,
19
22
  * such as rounded corners or camera notches (aka sensor housing area on iPhone X).
20
23
  */
21
24
  declare class SafeAreaViewComponent extends React.Component<ViewProps> {}
25
+
22
26
  declare const SafeAreaViewBase: Constructor<NativeMethods> &
23
27
  typeof SafeAreaViewComponent;
28
+
29
+ /**
30
+ * @deprecated
31
+ * Use `react-native-safe-area-context` instead. This component is deprecated and will be removed in a future release.
32
+ */
24
33
  export class SafeAreaView extends SafeAreaViewBase {}
@@ -22,8 +22,9 @@ import * as React from 'react';
22
22
  * Moreover, and most importantly, Safe Area's paddings reflect physical
23
23
  * limitation of the screen, such as rounded corners or camera notches (aka
24
24
  * sensor housing area on iPhone X).
25
+ * @deprecated Use `react-native-safe-area-context` instead. This component will be removed in a future release.
25
26
  */
26
- const exported: component(
27
+ const SafeAreaView: component(
27
28
  ref?: React.RefSetter<React.ElementRef<typeof View>>,
28
29
  ...props: ViewProps
29
30
  ) = Platform.select({
@@ -31,4 +32,4 @@ const exported: component(
31
32
  default: View,
32
33
  });
33
34
 
34
- export default exported;
35
+ export default SafeAreaView;
@@ -4,10 +4,9 @@
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
- * @format
8
7
  * @flow strict-local
8
+ * @format
9
9
  */
10
10
 
11
11
  export * from '../../../src/private/specs_DEPRECATED/components/AndroidHorizontalScrollContentViewNativeComponent';
12
- import AndroidHorizontalScrollContentViewNativeComponent from '../../../src/private/specs_DEPRECATED/components/AndroidHorizontalScrollContentViewNativeComponent';
13
- export default AndroidHorizontalScrollContentViewNativeComponent;
12
+ export {default} from '../../../src/private/specs_DEPRECATED/components/AndroidHorizontalScrollContentViewNativeComponent';
@@ -4,8 +4,8 @@
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
- * @format
8
7
  * @flow strict-local
8
+ * @format
9
9
  */
10
10
 
11
11
  import type {HostComponent} from '../../../src/private/types/HostComponent';
@@ -10,6 +10,7 @@
10
10
  import type * as React from 'react';
11
11
  import {Constructor} from '../../../types/private/Utilities';
12
12
  import {Insets} from '../../../types/public/Insets';
13
+ import {HostInstance} from '../../../types/public/ReactNativeTypes';
13
14
  import {ColorValue, StyleProp} from '../../StyleSheet/StyleSheet';
14
15
  import {ViewStyle} from '../../StyleSheet/StyleSheetTypes';
15
16
  import {
@@ -19,6 +20,7 @@ import {
19
20
  import {RefreshControlProps} from '../RefreshControl/RefreshControl';
20
21
  import {Touchable} from '../Touchable/Touchable';
21
22
  import {ViewProps} from '../View/ViewPropTypes';
23
+ import {View} from '../View/View';
22
24
 
23
25
  // See https://reactnative.dev/docs/scrollview#contentoffset
24
26
  export interface PointProp {
@@ -565,16 +567,20 @@ export interface ScrollViewPropsAndroid {
565
567
  nestedScrollEnabled?: boolean | undefined;
566
568
 
567
569
  /**
568
- * Fades out the edges of the scroll content.
570
+ * Controls the fading effect at the edges of the scroll content.
569
571
  *
570
- * If the value is greater than 0, the fading edges will be set accordingly
571
- * to the current scroll direction and position,
572
- * indicating if there is more content to show.
572
+ * A value greater than 0 will apply the fading effect, indicating more content is available
573
+ * to scroll.
574
+ *
575
+ * You can specify a single number to apply the same fading length to both edges.
576
+ * Alternatively, use an object with `start` and `end` properties to set different
577
+ * fading lengths for the start and end of the scroll content.
573
578
  *
574
579
  * The default value is 0.
580
+ *
575
581
  * @platform android
576
582
  */
577
- fadingEdgeLength?: number | undefined;
583
+ fadingEdgeLength?: number | {start: number; end: number} | undefined;
578
584
 
579
585
  /**
580
586
  * Causes the scrollbars not to turn transparent when they are not in use. The default value is false.
@@ -604,6 +610,19 @@ export interface ScrollViewProps
604
610
  */
605
611
  contentContainerStyle?: StyleProp<ViewStyle> | undefined;
606
612
 
613
+ /**
614
+ * A ref to the inner View element of the ScrollView. This should be used
615
+ * instead of calling `getInnerViewRef`.
616
+ */
617
+ innerViewRef?: React.RefObject<View> | undefined;
618
+
619
+ /**
620
+ * A ref to the Native ScrollView component. This ref can be used to call
621
+ * all of ScrollView's public methods, in addition to native methods like
622
+ * measure, measureLayout, etc.
623
+ */
624
+ scrollViewRef?: React.RefObject<ScrollView> | undefined;
625
+
607
626
  /**
608
627
  * A floating-point number that determines how quickly the scroll view
609
628
  * decelerates after the user lifts their finger. You may also use string
@@ -659,7 +678,9 @@ export interface ScrollViewProps
659
678
  * It's implemented using onLayout handler attached to the content container which this ScrollView renders.
660
679
  *
661
680
  */
662
- onContentSizeChange?: ((w: number, h: number) => void) | undefined;
681
+ onContentSizeChange?:
682
+ | ((contentWidth: number, contentHeight: number) => void)
683
+ | undefined;
663
684
 
664
685
  /**
665
686
  * Fires at most once per frame during scrolling.
@@ -860,6 +881,12 @@ export class ScrollView extends ScrollViewBase {
860
881
  // Undocumented
861
882
  getInnerViewNode(): any;
862
883
 
884
+ /**
885
+ * Returns a reference to the underlying native scroll view, or null if the
886
+ * native instance is not mounted.
887
+ */
888
+ getNativeScrollRef: () => HostInstance | null;
889
+
863
890
  /**
864
891
  * @deprecated Use scrollTo instead
865
892
  */
@@ -4,8 +4,8 @@
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
- * @format
8
7
  * @flow strict-local
8
+ * @format
9
9
  */
10
10
 
11
11
  import type {HostInstance} from '../../../src/private/types/HostInstance';
@@ -52,6 +52,7 @@ import invariant from 'invariant';
52
52
  import memoize from 'memoize-one';
53
53
  import nullthrows from 'nullthrows';
54
54
  import * as React from 'react';
55
+ import {cloneElement} from 'react';
55
56
 
56
57
  /*
57
58
  * iOS scroll event timing nuances:
@@ -372,17 +373,20 @@ export type ScrollViewPropsAndroid = $ReadOnly<{
372
373
  */
373
374
  persistentScrollbar?: ?boolean,
374
375
  /**
375
- * Fades out the edges of the scroll content.
376
+ * Controls the fading effect at the edges of the scroll content.
377
+ *
378
+ * A value greater than 0 will apply the fading effect, indicating more content is available
379
+ * to scroll.
376
380
  *
377
- * If the value is greater than 0, the fading edges will be set accordingly
378
- * to the current scroll direction and position,
379
- * indicating if there is more content to show.
381
+ * You can specify a single number to apply the same fading length to both edges.
382
+ * Alternatively, use an object with `start` and `end` properties to set different
383
+ * fading lengths for the start and end of the scroll content.
380
384
  *
381
385
  * The default value is 0.
382
386
  *
383
387
  * @platform android
384
388
  */
385
- fadingEdgeLength?: ?number,
389
+ fadingEdgeLength?: ?number | {start: number, end: number},
386
390
  }>;
387
391
 
388
392
  type StickyHeaderComponentType = component(
@@ -669,7 +673,7 @@ type ScrollViewBaseProps = $ReadOnly<{
669
673
  }>;
670
674
 
671
675
  export type ScrollViewProps = $ReadOnly<{
672
- ...ViewProps,
676
+ ...Omit<ViewProps, 'experimental_accessibilityOrder'>,
673
677
  ...ScrollViewPropsIOS,
674
678
  ...ScrollViewPropsAndroid,
675
679
  ...ScrollViewBaseProps,
@@ -1476,6 +1480,7 @@ class ScrollView extends React.Component<ScrollViewProps, ScrollViewState> {
1476
1480
  // then the second tap goes to the actual interior view)
1477
1481
  const {keyboardShouldPersistTaps} = this.props;
1478
1482
  const keyboardNeverPersistTaps =
1483
+ // $FlowFixMe[sketchy-null-bool]
1479
1484
  !keyboardShouldPersistTaps || keyboardShouldPersistTaps === 'never';
1480
1485
 
1481
1486
  if (typeof e.target === 'number') {
@@ -1558,6 +1563,7 @@ class ScrollView extends React.Component<ScrollViewProps, ScrollViewState> {
1558
1563
 
1559
1564
  const {keyboardShouldPersistTaps} = this.props;
1560
1565
  const keyboardNeverPersistsTaps =
1566
+ // $FlowFixMe[sketchy-null-bool]
1561
1567
  !keyboardShouldPersistTaps || keyboardShouldPersistTaps === 'never';
1562
1568
 
1563
1569
  // Dismiss the keyboard now if we didn't become responder in capture phase
@@ -1642,7 +1648,9 @@ class ScrollView extends React.Component<ScrollViewProps, ScrollViewState> {
1642
1648
  if (__DEV__ && this.props.style !== undefined) {
1643
1649
  // $FlowFixMe[underconstrained-implicit-instantiation]
1644
1650
  const style = flattenStyle(this.props.style);
1645
- const childLayoutProps = ['alignItems', 'justifyContent'].filter(
1651
+ const childLayoutProps = (
1652
+ ['alignItems', 'justifyContent'] as const
1653
+ ).filter(
1646
1654
  // $FlowFixMe[incompatible-use]
1647
1655
  prop => style && style[prop] !== undefined,
1648
1656
  );
@@ -1827,7 +1835,7 @@ class ScrollView extends React.Component<ScrollViewProps, ScrollViewState> {
1827
1835
  // however, the ScrollView still needs the baseStyle to be scrollable
1828
1836
  const {outer, inner} = splitLayoutProps(flattenStyle(props.style));
1829
1837
  // $FlowFixMe[incompatible-call]
1830
- return React.cloneElement(
1838
+ return cloneElement(
1831
1839
  refreshControl,
1832
1840
  {style: StyleSheet.compose(baseStyle, outer)},
1833
1841
  <NativeScrollView
@@ -1907,23 +1915,25 @@ function createRefForwarder<TNativeInstance, TPublicInstance>(
1907
1915
  return state;
1908
1916
  }
1909
1917
 
1910
- // TODO: After upgrading to React 19, remove `forwardRef` from this component.
1911
1918
  // NOTE: This wrapper component is necessary because `ScrollView` is a class
1912
1919
  // component and we need to map `ref` to a differently named prop. This can be
1913
1920
  // removed when `ScrollView` is a functional component.
1914
1921
  const ScrollViewWrapper: component(
1915
1922
  ref?: React.RefSetter<PublicScrollViewInstance>,
1916
1923
  ...props: ScrollViewProps
1917
- ) = React.forwardRef(function Wrapper(
1918
- props: ScrollViewProps,
1919
- ref: ?React.RefSetter<PublicScrollViewInstance>,
1920
- ): React.Node {
1924
+ ) = function Wrapper({
1925
+ ref,
1926
+ ...props
1927
+ }: {
1928
+ ref?: React.RefSetter<PublicScrollViewInstance>,
1929
+ ...ScrollViewProps,
1930
+ }): React.Node {
1921
1931
  return ref == null ? (
1922
1932
  <ScrollView {...props} />
1923
1933
  ) : (
1924
1934
  <ScrollView {...props} scrollViewRef={ref} />
1925
1935
  );
1926
- });
1936
+ };
1927
1937
  ScrollViewWrapper.displayName = 'ScrollView';
1928
1938
  // $FlowExpectedError[prop-missing]
1929
1939
  ScrollViewWrapper.Context = ScrollViewContext;
@@ -4,8 +4,8 @@
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
- * @format
8
7
  * @flow strict-local
8
+ * @format
9
9
  */
10
10
 
11
11
  import type {HostInstance} from '../../../src/private/types/HostInstance';
@@ -52,6 +52,7 @@ import invariant from 'invariant';
52
52
  import memoize from 'memoize-one';
53
53
  import nullthrows from 'nullthrows';
54
54
  import * as React from 'react';
55
+ import {cloneElement} from 'react';
55
56
 
56
57
  /*
57
58
  * iOS scroll event timing nuances:
@@ -372,17 +373,20 @@ export type ScrollViewPropsAndroid = $ReadOnly<{
372
373
  */
373
374
  persistentScrollbar?: ?boolean,
374
375
  /**
375
- * Fades out the edges of the scroll content.
376
+ * Controls the fading effect at the edges of the scroll content.
377
+ *
378
+ * A value greater than 0 will apply the fading effect, indicating more content is available
379
+ * to scroll.
376
380
  *
377
- * If the value is greater than 0, the fading edges will be set accordingly
378
- * to the current scroll direction and position,
379
- * indicating if there is more content to show.
381
+ * You can specify a single number to apply the same fading length to both edges.
382
+ * Alternatively, use an object with `start` and `end` properties to set different
383
+ * fading lengths for the start and end of the scroll content.
380
384
  *
381
385
  * The default value is 0.
382
386
  *
383
387
  * @platform android
384
388
  */
385
- fadingEdgeLength?: ?number,
389
+ fadingEdgeLength?: ?number | {start: number, end: number},
386
390
  }>;
387
391
 
388
392
  type StickyHeaderComponentType = component(
@@ -1165,6 +1169,7 @@ class ScrollView extends React.Component<ScrollViewProps, ScrollViewState> {
1165
1169
  // they are callable from the ref.
1166
1170
 
1167
1171
  // $FlowFixMe[prop-missing] - Known issue with appending custom methods.
1172
+ // $FlowFixMe[unsafe-object-assign] - Using Object.assign to append methods to native instance
1168
1173
  const publicInstance: PublicScrollViewInstance = Object.assign(
1169
1174
  nativeInstance,
1170
1175
  {
@@ -1475,6 +1480,7 @@ class ScrollView extends React.Component<ScrollViewProps, ScrollViewState> {
1475
1480
  // then the second tap goes to the actual interior view)
1476
1481
  const {keyboardShouldPersistTaps} = this.props;
1477
1482
  const keyboardNeverPersistTaps =
1483
+ // $FlowFixMe[sketchy-null-bool]
1478
1484
  !keyboardShouldPersistTaps || keyboardShouldPersistTaps === 'never';
1479
1485
 
1480
1486
  if (typeof e.target === 'number') {
@@ -1557,6 +1563,7 @@ class ScrollView extends React.Component<ScrollViewProps, ScrollViewState> {
1557
1563
 
1558
1564
  const {keyboardShouldPersistTaps} = this.props;
1559
1565
  const keyboardNeverPersistsTaps =
1566
+ // $FlowFixMe[sketchy-null-bool]
1560
1567
  !keyboardShouldPersistTaps || keyboardShouldPersistTaps === 'never';
1561
1568
 
1562
1569
  // Dismiss the keyboard now if we didn't become responder in capture phase
@@ -1641,7 +1648,9 @@ class ScrollView extends React.Component<ScrollViewProps, ScrollViewState> {
1641
1648
  if (__DEV__ && this.props.style !== undefined) {
1642
1649
  // $FlowFixMe[underconstrained-implicit-instantiation]
1643
1650
  const style = flattenStyle(this.props.style);
1644
- const childLayoutProps = ['alignItems', 'justifyContent'].filter(
1651
+ const childLayoutProps = (
1652
+ ['alignItems', 'justifyContent'] as const
1653
+ ).filter(
1645
1654
  // $FlowFixMe[incompatible-use]
1646
1655
  prop => style && style[prop] !== undefined,
1647
1656
  );
@@ -1829,7 +1838,7 @@ class ScrollView extends React.Component<ScrollViewProps, ScrollViewState> {
1829
1838
  // however, the ScrollView still needs the baseStyle to be scrollable
1830
1839
  const {outer, inner} = splitLayoutProps(flattenStyle(props.style));
1831
1840
  // $FlowFixMe[incompatible-call]
1832
- return React.cloneElement(
1841
+ return cloneElement(
1833
1842
  refreshControl,
1834
1843
  {style: StyleSheet.compose(baseStyle, outer)},
1835
1844
  <NativeScrollView
@@ -1909,23 +1918,25 @@ function createRefForwarder<TNativeInstance, TPublicInstance>(
1909
1918
  return state;
1910
1919
  }
1911
1920
 
1912
- // TODO: After upgrading to React 19, remove `forwardRef` from this component.
1913
1921
  // NOTE: This wrapper component is necessary because `ScrollView` is a class
1914
1922
  // component and we need to map `ref` to a differently named prop. This can be
1915
1923
  // removed when `ScrollView` is a functional component.
1916
1924
  const ScrollViewWrapper: component(
1917
1925
  ref?: React.RefSetter<PublicScrollViewInstance>,
1918
1926
  ...props: ScrollViewProps
1919
- ) = React.forwardRef(function Wrapper(
1920
- props: ScrollViewProps,
1921
- ref: ?React.RefSetter<PublicScrollViewInstance>,
1922
- ): React.Node {
1927
+ ) = function Wrapper({
1928
+ ref,
1929
+ ...props
1930
+ }: {
1931
+ ref?: React.RefSetter<PublicScrollViewInstance>,
1932
+ ...ScrollViewProps,
1933
+ }): React.Node {
1923
1934
  return ref == null ? (
1924
1935
  <ScrollView {...props} />
1925
1936
  ) : (
1926
1937
  <ScrollView {...props} scrollViewRef={ref} />
1927
1938
  );
1928
- });
1939
+ };
1929
1940
  ScrollViewWrapper.displayName = 'ScrollView';
1930
1941
  // $FlowExpectedError[prop-missing]
1931
1942
  ScrollViewWrapper.Context = ScrollViewContext;
@@ -4,8 +4,8 @@
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
- * @format
8
7
  * @flow strict-local
8
+ * @format
9
9
  */
10
10
 
11
11
  import type {HostComponent} from '../../../src/private/types/HostComponent';
@@ -9,10 +9,11 @@
9
9
  */
10
10
 
11
11
  import * as React from 'react';
12
+ import {createContext} from 'react';
12
13
 
13
14
  type Value = {horizontal: boolean} | null;
14
15
 
15
- const ScrollViewContext: React.Context<Value> = React.createContext(null);
16
+ const ScrollViewContext: React.Context<Value> = createContext(null);
16
17
  if (__DEV__) {
17
18
  ScrollViewContext.displayName = 'ScrollViewContext';
18
19
  }
@@ -42,7 +42,7 @@ export type ScrollViewNativeProps = $ReadOnly<{
42
42
  directionalLockEnabled?: ?boolean,
43
43
  disableIntervalMomentum?: ?boolean,
44
44
  endFillColor?: ?ColorValue,
45
- fadingEdgeLength?: ?number,
45
+ fadingEdgeLength?: ?number | {start: number, end: number},
46
46
  indicatorStyle?: ?('default' | 'black' | 'white'),
47
47
  isInvertedVirtualizedList?: ?boolean,
48
48
  keyboardDismissMode?: ?('none' | 'on-drag' | 'interactive'),
@@ -16,7 +16,14 @@ import StyleSheet from '../../StyleSheet/StyleSheet';
16
16
  import Platform from '../../Utilities/Platform';
17
17
  import useMergeRefs from '../../Utilities/useMergeRefs';
18
18
  import * as React from 'react';
19
- import {useCallback, useEffect, useMemo, useRef, useState} from 'react';
19
+ import {
20
+ cloneElement,
21
+ useCallback,
22
+ useEffect,
23
+ useMemo,
24
+ useRef,
25
+ useState,
26
+ } from 'react';
20
27
 
21
28
  export type ScrollViewStickyHeaderProps = $ReadOnly<{
22
29
  children?: React.Node,
@@ -36,10 +43,16 @@ interface Instance extends React.ElementRef<typeof Animated.View> {
36
43
  +setNextHeaderY: number => void;
37
44
  }
38
45
 
39
- const ScrollViewStickyHeaderWithForwardedRef: component(
46
+ const ScrollViewStickyHeader: component(
40
47
  ref: React.RefSetter<Instance>,
41
48
  ...props: ScrollViewStickyHeaderProps
42
- ) = React.forwardRef(function ScrollViewStickyHeader(props, forwardedRef) {
49
+ ) = function ScrollViewStickyHeader({
50
+ ref: forwardedRef,
51
+ ...props
52
+ }: {
53
+ ref?: React.RefSetter<Instance>,
54
+ ...ScrollViewStickyHeaderProps,
55
+ }) {
43
56
  const {
44
57
  inverted,
45
58
  scrollViewHeight,
@@ -289,13 +302,13 @@ const ScrollViewStickyHeaderWithForwardedRef: component(
289
302
  passthroughAnimatedPropExplicitValues={
290
303
  passthroughAnimatedPropExplicitValues
291
304
  }>
292
- {React.cloneElement(child, {
305
+ {cloneElement(child, {
293
306
  style: styles.fill, // We transfer the child style to the wrapper.
294
307
  onLayout: undefined, // we call this manually through our this._onLayout
295
308
  })}
296
309
  </Animated.View>
297
310
  );
298
- });
311
+ };
299
312
 
300
313
  const styles = StyleSheet.create({
301
314
  header: {
@@ -306,4 +319,4 @@ const styles = StyleSheet.create({
306
319
  },
307
320
  });
308
321
 
309
- export default ScrollViewStickyHeaderWithForwardedRef;
322
+ export default ScrollViewStickyHeader;
@@ -4,8 +4,8 @@
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
- * @format
8
7
  * @flow strict-local
8
+ * @format
9
9
  */
10
10
 
11
11
  import Platform from '../../Utilities/Platform';
@@ -9,5 +9,4 @@
9
9
  */
10
10
 
11
11
  export * from '../../../src/private/specs_DEPRECATED/modules/NativeSoundManager';
12
- import NativeSoundManager from '../../../src/private/specs_DEPRECATED/modules/NativeSoundManager';
13
- export default NativeSoundManager;
12
+ export {default} from '../../../src/private/specs_DEPRECATED/modules/NativeSoundManager';
@@ -4,8 +4,8 @@
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
- * @format
8
7
  * @flow strict
8
+ * @format
9
9
  */
10
10
 
11
11
  import NativeSoundManager from './NativeSoundManager';
@@ -4,8 +4,8 @@
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
- * @format
8
7
  * @flow strict-local
8
+ * @format
9
9
  */
10
10
 
11
11
  'use strict';
@@ -9,5 +9,4 @@
9
9
  */
10
10
 
11
11
  export * from '../../../src/private/specs_DEPRECATED/modules/NativeStatusBarManagerAndroid';
12
- import NativeStatusBarManagerAndroid from '../../../src/private/specs_DEPRECATED/modules/NativeStatusBarManagerAndroid';
13
- export default NativeStatusBarManagerAndroid;
12
+ export {default} from '../../../src/private/specs_DEPRECATED/modules/NativeStatusBarManagerAndroid';
@@ -9,5 +9,4 @@
9
9
  */
10
10
 
11
11
  export * from '../../../src/private/specs_DEPRECATED/modules/NativeStatusBarManagerIOS';
12
- import NativeStatusBarManagerIOS from '../../../src/private/specs_DEPRECATED/modules/NativeStatusBarManagerIOS';
13
- export default NativeStatusBarManagerIOS;
12
+ export {default} from '../../../src/private/specs_DEPRECATED/modules/NativeStatusBarManagerIOS';
@@ -35,6 +35,8 @@ export interface StatusBarPropsAndroid {
35
35
  /**
36
36
  * The background color of the status bar.
37
37
  *
38
+ * Please note that this prop has no effect on Android 15+
39
+ *
38
40
  * @platform android
39
41
  */
40
42
  backgroundColor?: ColorValue | undefined;
@@ -44,6 +46,8 @@ export interface StatusBarPropsAndroid {
44
46
  * the app will draw under the status bar. This is useful when using a
45
47
  * semi transparent status bar color.
46
48
  *
49
+ * Please note that this prop has no effect on Android 15+
50
+ *
47
51
  * @platform android
48
52
  */
49
53
  translucent?: boolean | undefined;