react-native-windows 0.71.7 → 0.72.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 (620) hide show
  1. package/.flowconfig +13 -3
  2. package/Directory.Build.props +19 -19
  3. package/Libraries/ActionSheetIOS/ActionSheetIOS.js +1 -1
  4. package/Libraries/Alert/Alert.d.ts +4 -4
  5. package/Libraries/Alert/Alert.windows.js +2 -0
  6. package/Libraries/Alert/NativeDialogManagerWindows.js +1 -0
  7. package/Libraries/Animated/Animated.d.ts +17 -6
  8. package/Libraries/Animated/NativeAnimatedHelper.js +18 -6
  9. package/Libraries/Animated/bezier.js +1 -1
  10. package/Libraries/Animated/components/AnimatedFlatList.js +8 -3
  11. package/Libraries/Animated/components/AnimatedScrollView.js +4 -1
  12. package/Libraries/Animated/components/AnimatedSectionList.js +12 -3
  13. package/Libraries/Animated/createAnimatedComponent.js +26 -239
  14. package/Libraries/Animated/nodes/AnimatedColor.js +47 -80
  15. package/Libraries/Animated/nodes/AnimatedInterpolation.js +167 -121
  16. package/Libraries/Animated/nodes/AnimatedNode.js +3 -5
  17. package/Libraries/Animated/nodes/AnimatedProps.js +7 -6
  18. package/Libraries/Animated/nodes/AnimatedStyle.js +42 -8
  19. package/Libraries/Animated/nodes/AnimatedTransform.js +1 -1
  20. package/Libraries/Animated/nodes/AnimatedValue.js +8 -12
  21. package/Libraries/Animated/nodes/AnimatedWithChildren.js +1 -1
  22. package/Libraries/Animated/useAnimatedProps.js +7 -10
  23. package/Libraries/AppTheme/AppTheme.js +1 -0
  24. package/Libraries/AppTheme/AppThemeTypes.d.ts +1 -1
  25. package/Libraries/BatchedBridge/MessageQueue.js +2 -1
  26. package/Libraries/BatchedBridge/NativeModules.d.ts +1 -1
  27. package/Libraries/BatchedBridge/NativeModules.js +1 -0
  28. package/Libraries/Blob/Blob.js +4 -0
  29. package/Libraries/Blob/FileReader.js +30 -2
  30. package/Libraries/Blob/URL.js +3 -1
  31. package/Libraries/Components/AccessibilityInfo/AccessibilityInfo.d.ts +2 -2
  32. package/Libraries/Components/AccessibilityInfo/AccessibilityInfo.js +2 -3
  33. package/Libraries/Components/AccessibilityInfo/AccessibilityInfo.windows.js +2 -3
  34. package/Libraries/Components/ActivityIndicator/ActivityIndicator.js +6 -4
  35. package/Libraries/Components/Button.js +3 -2
  36. package/Libraries/Components/Button.windows.js +3 -2
  37. package/Libraries/Components/Clipboard/Clipboard.js +1 -1
  38. package/Libraries/Components/DrawerAndroid/DrawerLayoutAndroid.android.js +4 -0
  39. package/Libraries/Components/Flyout/Flyout.d.ts +55 -19
  40. package/Libraries/Components/Flyout/Flyout.js +110 -51
  41. package/Libraries/Components/Flyout/FlyoutNativeComponent.js +45 -0
  42. package/Libraries/Components/Glyph/Glyph.d.ts +29 -12
  43. package/Libraries/Components/Glyph/Glyph.js +43 -30
  44. package/Libraries/Components/Glyph/GlyphNativeComponent.js +31 -0
  45. package/Libraries/Components/Keyboard/KeyboardAvoidingView.js +1 -0
  46. package/Libraries/Components/Keyboard/KeyboardExtProps.d.ts +2 -2
  47. package/Libraries/Components/Keyboard/KeyboardExtProps.js.map +1 -1
  48. package/Libraries/Components/Popup/Popup.d.ts +41 -19
  49. package/Libraries/Components/Popup/Popup.js +86 -52
  50. package/Libraries/Components/Popup/PopupNativeComponent.js +49 -0
  51. package/Libraries/Components/Pressable/Pressable.d.ts +1 -1
  52. package/Libraries/Components/Pressable/Pressable.js +1 -1
  53. package/Libraries/Components/RefreshControl/RefreshControl.js +1 -0
  54. package/Libraries/Components/RefreshControl/RefreshControl.windows.js +1 -0
  55. package/Libraries/Components/SafeAreaView/SafeAreaView.js +1 -2
  56. package/Libraries/Components/SafeAreaView/SafeAreaView.windows.js +1 -2
  57. package/Libraries/Components/ScrollView/AndroidHorizontalScrollViewNativeComponent.js +12 -6
  58. package/Libraries/Components/ScrollView/ScrollView.d.ts +2 -2
  59. package/Libraries/Components/ScrollView/ScrollView.js +149 -91
  60. package/Libraries/Components/ScrollView/ScrollView.windows.js +1939 -0
  61. package/Libraries/Components/ScrollView/ScrollViewNativeComponent.js +16 -6
  62. package/Libraries/Components/ScrollView/ScrollViewNativeComponent.windows.js +175 -0
  63. package/Libraries/Components/ScrollView/ScrollViewStickyHeader.js +5 -7
  64. package/Libraries/Components/ScrollView/ScrollViewViewConfig.js +1 -1
  65. package/Libraries/Components/StatusBar/StatusBar.js +3 -0
  66. package/Libraries/Components/Switch/Switch.js +3 -1
  67. package/Libraries/Components/TextInput/AndroidTextInputNativeComponent.js +21 -11
  68. package/Libraries/Components/TextInput/InputAccessoryView.d.ts +1 -1
  69. package/Libraries/Components/TextInput/RCTTextInputViewConfig.js +11 -5
  70. package/Libraries/Components/TextInput/TextInput.d.ts +15 -5
  71. package/Libraries/Components/TextInput/TextInput.flow.js +1 -1
  72. package/Libraries/Components/TextInput/TextInput.js +130 -103
  73. package/Libraries/Components/TextInput/TextInput.windows.js +152 -115
  74. package/Libraries/Components/TextInput/WindowsTextInputNativeComponent.js +1 -1
  75. package/Libraries/Components/Touchable/Touchable.d.ts +1 -1
  76. package/Libraries/Components/Touchable/Touchable.flow.js +30 -4
  77. package/Libraries/Components/Touchable/Touchable.js +6 -3
  78. package/Libraries/Components/Touchable/Touchable.windows.js +6 -3
  79. package/Libraries/Components/Touchable/TouchableHighlight.js +1 -1
  80. package/Libraries/Components/Touchable/TouchableHighlight.windows.js +2 -1
  81. package/Libraries/Components/Touchable/TouchableNativeFeedback.js +2 -2
  82. package/Libraries/Components/Touchable/TouchableOpacity.js +3 -0
  83. package/Libraries/Components/Touchable/TouchableOpacity.windows.js +4 -0
  84. package/Libraries/Components/Touchable/TouchableWithoutFeedback.d.ts +1 -1
  85. package/Libraries/Components/Touchable/TouchableWithoutFeedback.js +2 -2
  86. package/Libraries/Components/Touchable/TouchableWithoutFeedback.windows.js +2 -2
  87. package/Libraries/Components/TraceUpdateOverlay/TraceUpdateOverlay.js +189 -0
  88. package/Libraries/Components/TraceUpdateOverlay/TraceUpdateOverlayNativeComponent.js +43 -0
  89. package/Libraries/Components/View/ReactNativeStyleAttributes.js +26 -0
  90. package/Libraries/Components/View/View.js +71 -45
  91. package/Libraries/Components/View/View.windows.js +40 -16
  92. package/Libraries/Components/View/ViewAccessibility.d.ts +6 -6
  93. package/Libraries/Components/View/ViewAccessibility.js +10 -1
  94. package/Libraries/Components/View/ViewAccessibility.windows.js +9 -0
  95. package/Libraries/Components/View/ViewNativeComponent.js +32 -8
  96. package/Libraries/Components/View/ViewPropTypes.d.ts +1 -1
  97. package/Libraries/Components/View/ViewPropTypes.js +1 -1
  98. package/Libraries/Components/View/ViewPropTypes.windows.js +3 -1
  99. package/Libraries/Core/Devtools/openFileInEditor.js +1 -0
  100. package/Libraries/Core/Devtools/openURLInBrowser.js +1 -0
  101. package/Libraries/Core/Devtools/parseErrorStack.js +2 -2
  102. package/Libraries/Core/Devtools/parseHermesStack.js +54 -34
  103. package/Libraries/Core/ExceptionsManager.js +2 -2
  104. package/Libraries/Core/InitializeCore.js +2 -1
  105. package/Libraries/Core/ReactNativeVersion.js +3 -3
  106. package/Libraries/Core/ReactNativeVersionCheck.js +1 -9
  107. package/Libraries/Core/Timers/JSTimers.js +1 -1
  108. package/Libraries/Core/Timers/immediateShim.js +1 -0
  109. package/Libraries/Core/Timers/queueMicrotask.js +1 -1
  110. package/Libraries/Core/setUpAlert.js +1 -1
  111. package/Libraries/Core/setUpDOM.js +18 -0
  112. package/Libraries/Core/setUpDeveloperTools.js +1 -1
  113. package/Libraries/Core/setUpGlobals.js +5 -2
  114. package/Libraries/Core/setUpNavigator.js +6 -5
  115. package/Libraries/Core/setUpPerformance.js +23 -13
  116. package/Libraries/Core/setUpReactDevTools.js +2 -0
  117. package/Libraries/Core/setUpSegmentFetcher.js +0 -41
  118. package/Libraries/Core/setUpTimers.js +2 -2
  119. package/Libraries/DOM/Geometry/DOMRect.js +82 -0
  120. package/Libraries/DOM/Geometry/DOMRectReadOnly.js +188 -0
  121. package/Libraries/DOM/Nodes/ReactNativeElement.js +75 -0
  122. package/Libraries/DOM/Nodes/ReadOnlyElement.js +89 -0
  123. package/Libraries/DOM/Nodes/ReadOnlyNode.js +167 -0
  124. package/Libraries/DOM/OldStyleCollections/ArrayLikeUtils.js +46 -0
  125. package/Libraries/DOM/OldStyleCollections/DOMRectList.js +76 -0
  126. package/Libraries/DOM/OldStyleCollections/HTMLCollection.js +82 -0
  127. package/Libraries/DOM/OldStyleCollections/NodeList.js +104 -0
  128. package/Libraries/DevToolsSettings/DevToolsSettingsManager.android.js +35 -0
  129. package/Libraries/DevToolsSettings/DevToolsSettingsManager.d.ts +20 -0
  130. package/Libraries/DevToolsSettings/DevToolsSettingsManager.ios.js +49 -0
  131. package/Libraries/DevToolsSettings/DevToolsSettingsManager.windows.js +35 -0
  132. package/Libraries/{Utilities/NativeDevSplitBundleLoader.js → DevToolsSettings/NativeDevToolsSettingsManager.js} +7 -2
  133. package/Libraries/EventEmitter/NativeEventEmitter.d.ts +1 -2
  134. package/Libraries/EventEmitter/RCTDeviceEventEmitter.d.ts +1 -2
  135. package/Libraries/EventEmitter/RCTDeviceEventEmitter.js +9 -1
  136. package/Libraries/Events/EventPolyfill.js +1 -1
  137. package/Libraries/Image/AssetRegistry.js +1 -1
  138. package/Libraries/Image/AssetSourceResolver.js +3 -3
  139. package/Libraries/Image/Image.android.js +4 -1
  140. package/Libraries/Image/Image.d.ts +63 -2
  141. package/Libraries/Image/Image.ios.js +3 -0
  142. package/Libraries/Image/Image.windows.js +3 -0
  143. package/Libraries/Image/ImageBackground.js +1 -0
  144. package/Libraries/Image/ImageProps.js +1 -1
  145. package/Libraries/Image/ImageViewNativeComponent.js +4 -4
  146. package/Libraries/Image/RelativeImageStub.js +1 -1
  147. package/Libraries/Image/TextInlineImageNativeComponent.js +1 -1
  148. package/Libraries/Image/resolveAssetSource.js +1 -1
  149. package/Libraries/Inspector/DevtoolsOverlay.js +29 -19
  150. package/Libraries/Inspector/ElementBox.js +4 -1
  151. package/Libraries/Inspector/Inspector.js +5 -6
  152. package/Libraries/Inspector/InspectorOverlay.js +3 -3
  153. package/Libraries/Inspector/NetworkOverlay.js +1 -1
  154. package/Libraries/Interaction/JSEventLoopWatchdog.js +1 -1
  155. package/Libraries/Interaction/PanResponder.js +5 -6
  156. package/Libraries/LayoutAnimation/LayoutAnimation.js +2 -1
  157. package/Libraries/Linking/Linking.js +1 -4
  158. package/Libraries/Lists/FillRateHelper.js +4 -238
  159. package/Libraries/Lists/FlatList.d.ts +15 -22
  160. package/Libraries/Lists/FlatList.js +9 -6
  161. package/Libraries/Lists/SectionList.d.ts +10 -6
  162. package/Libraries/Lists/SectionList.js +5 -3
  163. package/Libraries/Lists/SectionListModern.js +3 -3
  164. package/Libraries/Lists/ViewabilityHelper.js +8 -344
  165. package/Libraries/Lists/VirtualizeUtils.js +4 -244
  166. package/Libraries/Lists/VirtualizedList.js +10 -1867
  167. package/Libraries/Lists/VirtualizedListContext.js +6 -104
  168. package/Libraries/Lists/VirtualizedSectionList.js +9 -602
  169. package/Libraries/Lists/__flowtests__/FlatList-flowtest.js +1 -0
  170. package/Libraries/Lists/__flowtests__/SectionList-flowtest.js +1 -1
  171. package/Libraries/LogBox/Data/LogBoxData.js +1 -1
  172. package/Libraries/LogBox/Data/parseLogBoxLog.js +1 -1
  173. package/Libraries/LogBox/LogBox.js +1 -1
  174. package/Libraries/LogBox/UI/LogBoxInspector.js +1 -3
  175. package/Libraries/LogBox/UI/LogBoxInspectorCodeFrame.windows.js +167 -0
  176. package/Libraries/LogBox/UI/LogBoxInspectorHeader.windows.js +172 -0
  177. package/Libraries/LogBox/UI/LogBoxInspectorReactFrames.windows.js +193 -0
  178. package/Libraries/LogBox/UI/LogBoxInspectorSourceMapStatus.js +1 -0
  179. package/Libraries/LogBox/UI/LogBoxInspectorStackFrame.js +2 -2
  180. package/Libraries/LogBox/UI/LogBoxInspectorStackFrame.windows.js +118 -0
  181. package/Libraries/LogBox/UI/LogBoxMessage.js +87 -5
  182. package/Libraries/LogBox/UI/LogBoxNotification.js +5 -7
  183. package/Libraries/Modal/Modal.js +2 -2
  184. package/Libraries/NativeComponent/BaseViewConfig.android.js +32 -12
  185. package/Libraries/NativeComponent/BaseViewConfig.ios.js +43 -19
  186. package/Libraries/NativeComponent/BaseViewConfig.windows.js +77 -19
  187. package/Libraries/NativeComponent/NativeComponentRegistryUnstable.js +4 -1
  188. package/Libraries/NativeComponent/ViewConfig.js +1 -0
  189. package/Libraries/NativeComponent/ViewConfigIgnore.js +1 -4
  190. package/Libraries/Network/RCTNetworking.android.js +2 -2
  191. package/Libraries/Network/RCTNetworking.ios.js +1 -1
  192. package/Libraries/Network/RCTNetworking.windows.js +1 -1
  193. package/Libraries/Network/XMLHttpRequest.js +1 -1
  194. package/Libraries/Pressability/Pressability.js +11 -5
  195. package/Libraries/Pressability/Pressability.windows.js +11 -4
  196. package/Libraries/ReactNative/AppContainer.js +7 -1
  197. package/Libraries/ReactNative/AppRegistry.d.ts +1 -1
  198. package/Libraries/ReactNative/AppRegistry.js +10 -13
  199. package/Libraries/ReactNative/FabricUIManager.js +24 -8
  200. package/Libraries/ReactNative/NativeUIManager.js +5 -5
  201. package/Libraries/ReactNative/ReactNativeFeatureFlags.js +10 -10
  202. package/Libraries/ReactNative/UIManager.js +142 -1
  203. package/Libraries/ReactNative/getCachedComponentWithDebugName.js +5 -5
  204. package/Libraries/ReactNative/getNativeComponentAttributes.js +1 -1
  205. package/Libraries/ReactNative/requireNativeComponent.d.ts +1 -1
  206. package/Libraries/ReactNative/requireNativeComponent.js +1 -1
  207. package/Libraries/ReactPrivate/ReactNativePrivateInterface.js +1 -0
  208. package/Libraries/Renderer/implementations/ReactFabric-dev.js +26 -3
  209. package/Libraries/Renderer/implementations/ReactFabric-prod.js +13 -1
  210. package/Libraries/Renderer/implementations/ReactFabric-profiling.js +13 -1
  211. package/Libraries/Renderer/public/ReactFabricPublicInstanceUtils.js +38 -0
  212. package/Libraries/Renderer/shims/ReactNativeTypes.js +38 -20
  213. package/Libraries/Renderer/shims/ReactNativeViewConfigRegistry.js +7 -7
  214. package/Libraries/Renderer/shims/createReactNativeComponentClass.js +2 -2
  215. package/Libraries/Share/Share.js +1 -1
  216. package/Libraries/StyleSheet/PlatformColorValueTypes.ios.js +1 -1
  217. package/Libraries/StyleSheet/StyleSheet.js +1 -1
  218. package/Libraries/StyleSheet/StyleSheetTypes.d.ts +115 -76
  219. package/Libraries/StyleSheet/StyleSheetTypes.js +188 -33
  220. package/Libraries/StyleSheet/flattenStyle.js +2 -0
  221. package/Libraries/StyleSheet/normalizeColor.js +1 -1
  222. package/Libraries/StyleSheet/processColor.js +1 -1
  223. package/Libraries/Text/Text.d.ts +12 -2
  224. package/Libraries/Text/Text.js +50 -41
  225. package/Libraries/Text/Text.windows.js +48 -38
  226. package/Libraries/Text/TextProps.js +3 -4
  227. package/Libraries/TurboModule/samples/NativeSampleTurboModule.js +6 -0
  228. package/Libraries/Types/CodegenTypes.js +1 -0
  229. package/Libraries/UTFSequence.js +3 -1
  230. package/Libraries/Utilities/Appearance.d.ts +10 -0
  231. package/Libraries/Utilities/Appearance.js +13 -0
  232. package/Libraries/Utilities/Dimensions.js +1 -1
  233. package/Libraries/Utilities/GlobalPerformanceLogger.js +12 -1
  234. package/Libraries/Utilities/HMRClient.js +16 -10
  235. package/Libraries/Utilities/{createPerformanceLogger.d.ts → IPerformanceLogger.d.ts} +4 -4
  236. package/Libraries/Utilities/IPerformanceLogger.js +49 -0
  237. package/Libraries/Utilities/LoadingView.android.js +28 -11
  238. package/Libraries/Utilities/NativeAppearance.js +1 -0
  239. package/Libraries/Utilities/NativePlatformConstantsWin.js +1 -1
  240. package/Libraries/Utilities/PixelRatio.js +2 -2
  241. package/Libraries/Utilities/Platform.windows.js +1 -1
  242. package/Libraries/Utilities/ReactNativeTestTools.js +1 -1
  243. package/Libraries/Utilities/__mocks__/PixelRatio.js +1 -1
  244. package/Libraries/Utilities/codegenNativeCommands.js +2 -0
  245. package/Libraries/Utilities/createPerformanceLogger.js +55 -43
  246. package/Libraries/Utilities/stringifySafe.js +2 -7
  247. package/Libraries/Utilities/useColorScheme.js +1 -1
  248. package/Libraries/Utilities/useWindowDimensions.js +3 -3
  249. package/Libraries/WebPerformance/EventCounts.js +78 -0
  250. package/Libraries/WebPerformance/MemoryInfo.js +54 -0
  251. package/Libraries/WebPerformance/NativePerformance.js +38 -0
  252. package/Libraries/WebPerformance/NativePerformanceObserver.js +22 -7
  253. package/Libraries/WebPerformance/Performance.js +312 -0
  254. package/Libraries/WebPerformance/PerformanceEntry.js +45 -0
  255. package/Libraries/WebPerformance/PerformanceEventTiming.js +38 -0
  256. package/Libraries/WebPerformance/PerformanceObserver.js +196 -101
  257. package/Libraries/WebPerformance/RawPerformanceEntry.js +87 -0
  258. package/Libraries/WebPerformance/ReactNativeStartupTiming.js +65 -0
  259. package/Libraries/WebPerformance/__mocks__/NativePerformance.js +65 -0
  260. package/Libraries/WebPerformance/__mocks__/NativePerformanceObserver.js +101 -0
  261. package/Libraries/YellowBox/YellowBoxDeprecated.js +1 -1
  262. package/Libraries/platform-types.d.ts +3 -5
  263. package/Libraries/vendor/core/ErrorUtils.js +1 -1
  264. package/Libraries/vendor/emitter/EventEmitter.d.ts +2 -2
  265. package/Libraries/vendor/emitter/EventEmitter.js +9 -1
  266. package/Microsoft.ReactNative/Base/CoreNativeModules.cpp +0 -15
  267. package/Microsoft.ReactNative/CompositionHwndHost.idl +6 -0
  268. package/Microsoft.ReactNative/CompositionRootView.idl +35 -0
  269. package/Microsoft.ReactNative/CompositionSwitcher.idl +19 -0
  270. package/Microsoft.ReactNative/Fabric/AbiViewComponentDescriptor.cpp +174 -0
  271. package/Microsoft.ReactNative/Fabric/AbiViewComponentDescriptor.h +91 -0
  272. package/Microsoft.ReactNative/Fabric/AbiViewProps.cpp +48 -0
  273. package/Microsoft.ReactNative/Fabric/AbiViewProps.h +48 -0
  274. package/Microsoft.ReactNative/Fabric/ComponentView.h +19 -2
  275. package/Microsoft.ReactNative/Fabric/Composition/AbiCompositionViewComponentView.cpp +144 -0
  276. package/Microsoft.ReactNative/Fabric/Composition/AbiCompositionViewComponentView.h +63 -0
  277. package/Microsoft.ReactNative/Fabric/Composition/ComponentViewRegistry.cpp +27 -6
  278. package/Microsoft.ReactNative/Fabric/Composition/CompositionContextHelper.cpp +97 -0
  279. package/Microsoft.ReactNative/Fabric/Composition/CompositionDynamicAutomationProvider.cpp +227 -0
  280. package/Microsoft.ReactNative/Fabric/Composition/CompositionDynamicAutomationProvider.h +38 -0
  281. package/Microsoft.ReactNative/Fabric/Composition/CompositionEventHandler.cpp +112 -95
  282. package/Microsoft.ReactNative/Fabric/Composition/CompositionEventHandler.h +12 -8
  283. package/Microsoft.ReactNative/Fabric/Composition/CompositionHelpers.h +0 -2
  284. package/Microsoft.ReactNative/Fabric/Composition/CompositionHwndHost.cpp +27 -6
  285. package/Microsoft.ReactNative/Fabric/Composition/CompositionHwndHost.h +8 -0
  286. package/Microsoft.ReactNative/Fabric/Composition/CompositionRootAutomationProvider.cpp +147 -0
  287. package/Microsoft.ReactNative/Fabric/Composition/CompositionRootAutomationProvider.h +46 -0
  288. package/Microsoft.ReactNative/Fabric/Composition/CompositionRootView.cpp +31 -4
  289. package/Microsoft.ReactNative/Fabric/Composition/CompositionRootView.h +37 -0
  290. package/Microsoft.ReactNative/Fabric/Composition/CompositionViewComponentView.cpp +255 -50
  291. package/Microsoft.ReactNative/Fabric/Composition/CompositionViewComponentView.h +34 -15
  292. package/Microsoft.ReactNative/Fabric/Composition/ImageComponentView.cpp +127 -47
  293. package/Microsoft.ReactNative/Fabric/Composition/ImageComponentView.h +11 -7
  294. package/Microsoft.ReactNative/Fabric/Composition/ParagraphComponentView.cpp +109 -39
  295. package/Microsoft.ReactNative/Fabric/Composition/ParagraphComponentView.h +10 -7
  296. package/Microsoft.ReactNative/Fabric/Composition/ReactCompositionViewComponentBuilder.cpp +106 -0
  297. package/Microsoft.ReactNative/Fabric/Composition/ReactCompositionViewComponentBuilder.h +63 -0
  298. package/Microsoft.ReactNative/Fabric/Composition/RootComponentView.cpp +116 -0
  299. package/Microsoft.ReactNative/Fabric/Composition/RootComponentView.h +43 -0
  300. package/Microsoft.ReactNative/Fabric/Composition/ScrollViewComponentView.cpp +53 -38
  301. package/Microsoft.ReactNative/Fabric/Composition/ScrollViewComponentView.h +12 -8
  302. package/Microsoft.ReactNative/Fabric/Composition/SwitchComponentView.cpp +262 -0
  303. package/Microsoft.ReactNative/Fabric/Composition/SwitchComponentView.h +62 -0
  304. package/Microsoft.ReactNative/Fabric/Composition/TextInput/WindowsTextInputComponentView.cpp +35 -30
  305. package/Microsoft.ReactNative/Fabric/Composition/TextInput/WindowsTextInputComponentView.h +11 -9
  306. package/Microsoft.ReactNative/Fabric/Composition/TextInput/WindowsTextInputProps.cpp +9 -0
  307. package/Microsoft.ReactNative/Fabric/Composition/TextInput/WindowsTextInputProps.h +3 -0
  308. package/Microsoft.ReactNative/Fabric/Composition/TextInput/WindowsTextInputShadowNode.cpp +2 -1
  309. package/Microsoft.ReactNative/Fabric/Composition/UiaHelpers.cpp +72 -0
  310. package/Microsoft.ReactNative/Fabric/Composition/UiaHelpers.h +16 -0
  311. package/Microsoft.ReactNative/Fabric/Composition/UnimplementedNativeViewComponentView.cpp +168 -0
  312. package/Microsoft.ReactNative/Fabric/Composition/UnimplementedNativeViewComponentView.h +49 -0
  313. package/Microsoft.ReactNative/Fabric/FabricUIManagerModule.cpp +19 -53
  314. package/Microsoft.ReactNative/Fabric/FabricUIManagerModule.h +2 -3
  315. package/Microsoft.ReactNative/Fabric/ReactTaggedView.h +8 -9
  316. package/Microsoft.ReactNative/Fabric/WindowsComponentDescriptorRegistry.cpp +100 -0
  317. package/Microsoft.ReactNative/Fabric/WindowsComponentDescriptorRegistry.h +43 -0
  318. package/Microsoft.ReactNative/Fabric/platform/react/components/view/windows/WindowsViewProps.cpp +61 -0
  319. package/Microsoft.ReactNative/Fabric/platform/react/components/view/windows/WindowsViewProps.h +34 -0
  320. package/Microsoft.ReactNative/Fabric/platform/react/components/view/windows/primitives.h +42 -0
  321. package/Microsoft.ReactNative/Fabric/platform/react/renderer/components/view/HostPlatformViewProps.h +10 -0
  322. package/Microsoft.ReactNative/Fabric/platform/react/renderer/core/graphicsConversions.h +248 -0
  323. package/Microsoft.ReactNative/Fabric/platform/react/renderer/graphics/Color.cpp +5 -0
  324. package/Microsoft.ReactNative/Fabric/platform/react/renderer/graphics/Color.h +135 -4
  325. package/Microsoft.ReactNative/Fabric/platform/react/renderer/graphics/conversions.h +18 -240
  326. package/Microsoft.ReactNative/Fabric/platform/react/renderer/textlayoutmanager/TextLayoutManager.cpp +107 -17
  327. package/Microsoft.ReactNative/Fabric/platform/react/renderer/textlayoutmanager/TextLayoutManager.h +13 -2
  328. package/Microsoft.ReactNative/IReactCompositionViewComponentBuilder.idl +87 -0
  329. package/Microsoft.ReactNative/IReactContext.cpp +4 -0
  330. package/Microsoft.ReactNative/IReactContext.h +1 -0
  331. package/Microsoft.ReactNative/IReactContext.idl +5 -0
  332. package/Microsoft.ReactNative/IReactDispatcher.cpp +4 -0
  333. package/Microsoft.ReactNative/IReactDispatcher.h +1 -0
  334. package/Microsoft.ReactNative/IReactPackageBuilderFabric.idl +23 -0
  335. package/Microsoft.ReactNative/IReactViewComponentBuilder.idl +23 -0
  336. package/Microsoft.ReactNative/Microsoft.ReactNative.vcxproj +4 -118
  337. package/Microsoft.ReactNative/Microsoft.ReactNative.vcxproj.filters +1 -7
  338. package/Microsoft.ReactNative/Modules/AccessibilityInfoModule.cpp +2 -2
  339. package/Microsoft.ReactNative/Modules/AccessibilityInfoModule.h +1 -1
  340. package/Microsoft.ReactNative/Modules/AlertModule.cpp +100 -4
  341. package/Microsoft.ReactNative/Modules/AlertModule.h +4 -0
  342. package/Microsoft.ReactNative/Modules/Animated/NativeAnimatedModule.cpp +9 -0
  343. package/Microsoft.ReactNative/Modules/Animated/NativeAnimatedModule.h +2 -0
  344. package/Microsoft.ReactNative/Modules/Animated/NativeAnimatedNodeManager.cpp +7 -5
  345. package/Microsoft.ReactNative/Modules/Animated/PropsAnimatedNode.cpp +17 -3
  346. package/Microsoft.ReactNative/Modules/Animated/ValueAnimatedNode.h +1 -0
  347. package/Microsoft.ReactNative/Modules/AppearanceModule.cpp +4 -0
  348. package/Microsoft.ReactNative/Modules/AppearanceModule.h +3 -0
  349. package/Microsoft.ReactNative/Modules/ClipboardModule.cpp +4 -4
  350. package/Microsoft.ReactNative/Modules/ClipboardModule.h +2 -2
  351. package/Microsoft.ReactNative/Modules/ImageViewManagerModule.cpp +27 -7
  352. package/Microsoft.ReactNative/Modules/ImageViewManagerModule.h +9 -5
  353. package/Microsoft.ReactNative/Modules/LinkingManagerModule.cpp +10 -12
  354. package/Microsoft.ReactNative/Modules/LinkingManagerModule.h +4 -4
  355. package/Microsoft.ReactNative/Modules/NativeUIManager.cpp +21 -1
  356. package/Microsoft.ReactNative/QuirkSettings.cpp +17 -0
  357. package/Microsoft.ReactNative/QuirkSettings.h +5 -0
  358. package/Microsoft.ReactNative/QuirkSettings.idl +6 -0
  359. package/Microsoft.ReactNative/ReactApplication.cpp +8 -0
  360. package/Microsoft.ReactNative/ReactApplication.h +3 -0
  361. package/Microsoft.ReactNative/ReactApplication.idl +3 -0
  362. package/Microsoft.ReactNative/ReactCoreInjection.cpp +29 -0
  363. package/Microsoft.ReactNative/ReactCoreInjection.h +6 -0
  364. package/Microsoft.ReactNative/ReactCoreInjection.idl +13 -0
  365. package/Microsoft.ReactNative/ReactHost/MsoReactContext.cpp +7 -0
  366. package/Microsoft.ReactNative/ReactHost/MsoReactContext.h +1 -0
  367. package/Microsoft.ReactNative/ReactHost/React.h +2 -0
  368. package/Microsoft.ReactNative/ReactHost/ReactInstanceWin.cpp +57 -16
  369. package/Microsoft.ReactNative/ReactHost/ReactInstanceWin.h +1 -0
  370. package/Microsoft.ReactNative/ReactInstanceSettings.h +12 -0
  371. package/Microsoft.ReactNative/ReactInstanceSettings.idl +6 -0
  372. package/Microsoft.ReactNative/ReactNativeHost.cpp +17 -0
  373. package/Microsoft.ReactNative/ReactPackageBuilder.cpp +18 -0
  374. package/Microsoft.ReactNative/ReactPackageBuilder.h +24 -1
  375. package/Microsoft.ReactNative/ReactRootView.cpp +2 -2
  376. package/Microsoft.ReactNative/RedBox.cpp +2 -1
  377. package/Microsoft.ReactNative/Utils/Helpers.cpp +0 -32
  378. package/Microsoft.ReactNative/Utils/Helpers.h +0 -8
  379. package/Microsoft.ReactNative/Utils/ImageUtils.cpp +69 -6
  380. package/Microsoft.ReactNative/Utils/ImageUtils.h +3 -1
  381. package/Microsoft.ReactNative/Utils/KeyboardUtils.cpp +416 -0
  382. package/Microsoft.ReactNative/Utils/KeyboardUtils.h +15 -0
  383. package/Microsoft.ReactNative/Utils/TransformableText.h +1 -0
  384. package/Microsoft.ReactNative/Utils/ValueUtils.cpp +1 -9
  385. package/Microsoft.ReactNative/Utils/ValueUtils.h +0 -2
  386. package/Microsoft.ReactNative/ViewProps.idl +30 -0
  387. package/Microsoft.ReactNative/Views/ControlViewManager.cpp +6 -2
  388. package/Microsoft.ReactNative/Views/DevMenu.cpp +369 -230
  389. package/Microsoft.ReactNative/Views/DevMenu.h +3 -15
  390. package/Microsoft.ReactNative/Views/FlyoutViewManager.cpp +6 -3
  391. package/Microsoft.ReactNative/Views/Image/ImageViewManager.cpp +11 -3
  392. package/Microsoft.ReactNative/Views/Image/ImageViewManager.h +5 -1
  393. package/Microsoft.ReactNative/Views/Image/ReactImage.cpp +29 -22
  394. package/Microsoft.ReactNative/Views/Image/ReactImage.h +2 -2
  395. package/Microsoft.ReactNative/Views/KeyboardEventHandler.cpp +10 -405
  396. package/Microsoft.ReactNative/Views/KeyboardEventHandler.h +0 -3
  397. package/Microsoft.ReactNative/Views/PopupViewManager.cpp +1 -0
  398. package/Microsoft.ReactNative/Views/ScrollViewManager.cpp +2 -2
  399. package/Microsoft.ReactNative/Views/ShadowNodeBase.cpp +7 -0
  400. package/Microsoft.ReactNative/Views/ShadowNodeBase.h +3 -0
  401. package/Microsoft.ReactNative/Views/Text/TextHitTestUtils.cpp +6 -1
  402. package/Microsoft.ReactNative/Views/Text/TextPropertyChangedParentVisitor.cpp +1 -0
  403. package/Microsoft.ReactNative/Views/TextInputViewManager.cpp +38 -2
  404. package/Microsoft.ReactNative/Views/TextViewManager.cpp +3 -0
  405. package/Microsoft.ReactNative/Views/TouchEventHandler.h +0 -4
  406. package/Microsoft.ReactNative/Views/ViewManagerBase.cpp +0 -8
  407. package/Microsoft.ReactNative/Views/ViewPanel.cpp +1 -1
  408. package/Microsoft.ReactNative/Views/ViewViewManager.cpp +12 -3
  409. package/Microsoft.ReactNative/XamlHelper.cpp +36 -0
  410. package/Microsoft.ReactNative/XamlHelper.h +27 -0
  411. package/Microsoft.ReactNative.Cxx/JSI/JsiAbiApi.cpp +4 -4
  412. package/Microsoft.ReactNative.Cxx/JSI/JsiAbiApi.h +4 -4
  413. package/Microsoft.ReactNative.Cxx/JSI/LongLivedJsiValue.h +1 -1
  414. package/Microsoft.ReactNative.Cxx/JSI/NodeApiJsiRuntime.cpp +10 -8
  415. package/Microsoft.ReactNative.Cxx/JSI/NodeApiJsiRuntime.h +3 -3
  416. package/Microsoft.ReactNative.Cxx/Microsoft.ReactNative.Cxx.vcxitems +4 -1
  417. package/Microsoft.ReactNative.Cxx/Microsoft.ReactNative.Cxx.vcxitems.filters +3 -0
  418. package/Microsoft.ReactNative.Cxx/NativeModules.h +16 -1
  419. package/Microsoft.ReactNative.Managed/ReactSettingsSnapshot.cs +2 -0
  420. package/Microsoft.ReactNative.Managed/packages.lock.json +5 -5
  421. package/PropertySheets/External/Microsoft.ReactNative.Cpp.ProjectReferences.props +3 -0
  422. package/PropertySheets/Generated/PackageVersion.g.props +4 -4
  423. package/PropertySheets/JSEngine.props +2 -3
  424. package/PropertySheets/Warnings.props +1 -1
  425. package/ReactCommon/ReactCommon.vcxproj +2 -4
  426. package/ReactCommon/ReactCommon.vcxproj.filters +3 -0
  427. package/ReactCommon/TEMP_UntilReactCommonUpdate/react/bridging/CallbackWrapper.h +1 -1
  428. package/ReactCommon/TEMP_UntilReactCommonUpdate/react/bridging/LongLivedObject.cpp +60 -0
  429. package/ReactCommon/TEMP_UntilReactCommonUpdate/react/bridging/LongLivedObject.h +60 -0
  430. package/ReactCommon/TEMP_UntilReactCommonUpdate/react/nativemodule/core/ReactCommon/TurboModuleBinding.cpp +116 -0
  431. package/ReactCommon/TEMP_UntilReactCommonUpdate/react/nativemodule/core/ReactCommon/TurboModuleBinding.h +63 -0
  432. package/ReactCommon/TEMP_UntilReactCommonUpdate/react/nativemodule/core/ReactCommon/TurboModuleUtils.h +2 -2
  433. package/ReactCommon/TEMP_UntilReactCommonUpdate/react/renderer/components/view/TouchEventEmitter.cpp +237 -0
  434. package/ReactCommon/TEMP_UntilReactCommonUpdate/react/renderer/components/view/TouchEventEmitter.h +59 -0
  435. package/ReactCommon/TEMP_UntilReactCommonUpdate/react/renderer/components/view/ViewEventEmitter.cpp +159 -0
  436. package/ReactCommon/TEMP_UntilReactCommonUpdate/react/renderer/components/view/ViewEventEmitter.h +94 -0
  437. package/ReactCommon/TEMP_UntilReactCommonUpdate/react/renderer/components/view/ViewProps.cpp +465 -0
  438. package/ReactCommon/TEMP_UntilReactCommonUpdate/react/renderer/components/view/ViewProps.h +116 -0
  439. package/ReactCommon/TEMP_UntilReactCommonUpdate/react/renderer/components/view/ViewShadowNode.cpp +98 -0
  440. package/ReactCommon/TEMP_UntilReactCommonUpdate/react/renderer/components/view/YogaStylableProps.cpp +362 -0
  441. package/ReactCommon/TEMP_UntilReactCommonUpdate/react/renderer/components/view/primitives.h +326 -0
  442. package/ReactCommon/Yoga.cpp +60 -127
  443. package/Scripts/OfficeReact.Win32.nuspec +1 -0
  444. package/Scripts/Tfs/Layout-MSRN-Headers.ps1 +1 -0
  445. package/Scripts/rnw-dependencies.ps1 +12 -4
  446. package/Shared/Composition/CompositionSwitcher.interop.h +1 -0
  447. package/Shared/DevServerHelper.h +11 -2
  448. package/Shared/DevSettings.h +1 -0
  449. package/Shared/DevSupportManager.cpp +11 -1
  450. package/Shared/DevSupportManager.h +1 -0
  451. package/Shared/HermesRuntimeHolder.cpp +53 -30
  452. package/Shared/HermesRuntimeHolder.h +26 -11
  453. package/Shared/HermesSamplingProfiler.cpp +61 -8
  454. package/Shared/HermesSamplingProfiler.h +6 -3
  455. package/Shared/HermesShim.cpp +86 -82
  456. package/Shared/HermesShim.h +28 -8
  457. package/Shared/JSI/ChakraRuntime.cpp +7 -4
  458. package/Shared/JSI/ChakraRuntime.h +4 -4
  459. package/Shared/JSI/NapiJsiV8RuntimeHolder.h +2 -0
  460. package/Shared/JSI/RuntimeHolder.h +2 -2
  461. package/Shared/Logging.cpp +1 -1
  462. package/Shared/Modules/BlobModule.cpp +3 -4
  463. package/Shared/Modules/BlobModule.h +0 -4
  464. package/Shared/Networking/OriginPolicyHttpFilter.cpp +13 -17
  465. package/Shared/Networking/OriginPolicyHttpFilter.h +11 -12
  466. package/Shared/Networking/WinRTWebSocketResource.cpp +59 -45
  467. package/Shared/OInstance.cpp +9 -2
  468. package/Shared/Shared.vcxitems +265 -58
  469. package/Shared/Shared.vcxitems.filters +312 -42
  470. package/Shared/V8JSIRuntimeHolder.cpp +1 -0
  471. package/Shared/V8JSIRuntimeHolder.h +7 -2
  472. package/codegen/NativeAppearanceSpec.g.h +9 -3
  473. package/codegen/NativeClipboardSpec.g.h +3 -3
  474. package/codegen/NativeDevToolsSettingsManagerSpec.g.h +51 -0
  475. package/codegen/NativeDialogManagerWindowsSpec.g.h +2 -0
  476. package/codegen/NativeFileReaderModuleSpec.g.h +6 -6
  477. package/codegen/NativeHeadlessJsTaskSupportSpec.g.h +3 -3
  478. package/codegen/NativeImageLoaderAndroidSpec.g.h +25 -9
  479. package/codegen/NativeImageLoaderIOSSpec.g.h +20 -12
  480. package/codegen/NativeIntentAndroidSpec.g.h +15 -15
  481. package/codegen/NativeLinkingManagerSpec.g.h +12 -12
  482. package/codegen/NativePerformanceObserverSpec.g.h +48 -10
  483. package/codegen/NativePerformanceSpec.g.h +63 -0
  484. package/codegen/NativePermissionsAndroidSpec.g.h +9 -9
  485. package/codegen/NativePlatformConstantsWinSpec.g.h +1 -1
  486. package/codegen/NativePushNotificationManagerIOSSpec.g.h +6 -6
  487. package/codegen/NativeSampleTurboModuleSpec.g.h +25 -19
  488. package/codegen/NativeShareModuleSpec.g.h +9 -3
  489. package/codegen/NativeUIManagerSpec.g.h +12 -12
  490. package/codegen/react/components/rnwcore/ComponentDescriptors.h +1 -2
  491. package/codegen/react/components/rnwcore/EventEmitters.cpp +21 -29
  492. package/codegen/react/components/rnwcore/EventEmitters.h +30 -30
  493. package/codegen/react/components/rnwcore/Props.cpp +47 -48
  494. package/codegen/react/components/rnwcore/Props.h +59 -166
  495. package/codegen/react/components/rnwcore/ShadowNodes.cpp +1 -2
  496. package/codegen/react/components/rnwcore/ShadowNodes.h +11 -22
  497. package/codegen/react/components/rnwcore/States.h +15 -30
  498. package/codegen/rnwcoreJSI-generated.cpp +87 -25
  499. package/codegen/rnwcoreJSI.h +1077 -417
  500. package/generate.js +6 -1
  501. package/include/Include.vcxitems +0 -1
  502. package/include/Include.vcxitems.filters +0 -3
  503. package/index.js +56 -42
  504. package/index.windows.js +56 -42
  505. package/interface.js +1 -1
  506. package/jest/local-setup.js +33 -0
  507. package/jest/mockComponent.js +4 -2
  508. package/jest/mockNativeComponent.js +1 -1
  509. package/jest/mockScrollView.js +2 -1
  510. package/jest/react-native-env.js +1 -3
  511. package/jest/setup.js +11 -8
  512. package/just-task.js +12 -5
  513. package/package.json +32 -29
  514. package/rn-get-polyfills.js +1 -1
  515. package/template/metro.config.js +2 -0
  516. package/Libraries/Animated/createAnimatedComponentInjection.js +0 -48
  517. package/Libraries/Animated/createAnimatedComponent_EXPERIMENTAL.js +0 -48
  518. package/Libraries/Components/AccessibilityInfo/AccessibilityInfo.flow.js +0 -208
  519. package/Libraries/Components/ActivityIndicator/ActivityIndicator.flow.js +0 -58
  520. package/Libraries/Components/DatePicker/DatePickerIOS.android.js +0 -47
  521. package/Libraries/Components/DatePicker/DatePickerIOS.d.ts +0 -92
  522. package/Libraries/Components/DatePicker/DatePickerIOS.flow.android.js +0 -14
  523. package/Libraries/Components/DatePicker/DatePickerIOS.flow.ios.js +0 -113
  524. package/Libraries/Components/DatePicker/DatePickerIOS.ios.js +0 -242
  525. package/Libraries/Components/DatePicker/DatePickerIOS.windows.js +0 -47
  526. package/Libraries/Components/DatePicker/RCTDatePickerNativeComponent.js +0 -60
  527. package/Libraries/Components/DatePickerAndroid/NativeDatePickerAndroid.js +0 -26
  528. package/Libraries/Components/Flyout/Flyout.js.map +0 -1
  529. package/Libraries/Components/Flyout/FlyoutProps.d.ts +0 -25
  530. package/Libraries/Components/Flyout/FlyoutProps.js +0 -3
  531. package/Libraries/Components/Flyout/FlyoutProps.js.map +0 -1
  532. package/Libraries/Components/Glyph/Glyph.js.map +0 -1
  533. package/Libraries/Components/Glyph/GlyphProps.d.ts +0 -16
  534. package/Libraries/Components/Glyph/GlyphProps.js +0 -8
  535. package/Libraries/Components/Glyph/GlyphProps.js.map +0 -1
  536. package/Libraries/Components/Popup/Popup.js.map +0 -1
  537. package/Libraries/Components/Popup/PopupProps.d.ts +0 -27
  538. package/Libraries/Components/Popup/PopupProps.js +0 -8
  539. package/Libraries/Components/Popup/PopupProps.js.map +0 -1
  540. package/Libraries/Components/ProgressViewIOS/ProgressViewIOS.android.js +0 -45
  541. package/Libraries/Components/ProgressViewIOS/ProgressViewIOS.d.ts +0 -62
  542. package/Libraries/Components/ProgressViewIOS/ProgressViewIOS.ios.js +0 -75
  543. package/Libraries/Components/ProgressViewIOS/ProgressViewIOS.windows.js +0 -45
  544. package/Libraries/Components/ProgressViewIOS/RCTProgressViewNativeComponent.js +0 -33
  545. package/Libraries/Components/SafeAreaView/SafeAreaView.flow.js +0 -19
  546. package/Libraries/Components/Slider/Slider.d.ts +0 -132
  547. package/Libraries/Components/Slider/Slider.js +0 -282
  548. package/Libraries/Components/Slider/SliderNativeComponent.js +0 -56
  549. package/Libraries/Interaction/Batchinator.js +0 -76
  550. package/Libraries/Interaction/BridgeSpyStallHandler.js +0 -63
  551. package/Libraries/Interaction/InteractionStallDebugger.js +0 -23
  552. package/Libraries/Interaction/PanResponder.flow.js +0 -257
  553. package/Libraries/Lists/CellRenderMask.js +0 -155
  554. package/Libraries/Lists/ChildListCollection.js +0 -72
  555. package/Libraries/Lists/StateSafePureComponent.js +0 -85
  556. package/Libraries/Lists/VirtualizedList.d.ts +0 -347
  557. package/Libraries/Lists/VirtualizedListCellRenderer.js +0 -259
  558. package/Libraries/Lists/VirtualizedListProps.js +0 -279
  559. package/Libraries/Performance/PureComponentDebug.js +0 -74
  560. package/Libraries/Reliability/UserFlow.js +0 -158
  561. package/Libraries/Renderer/implementations/ReactNativeRenderer.d.ts +0 -149
  562. package/Libraries/Renderer/shims/ReactNativeTypes.d.ts +0 -141
  563. package/Libraries/Utilities/MatrixMath.js +0 -748
  564. package/Libraries/Utilities/buildStyleInterpolator.js +0 -209
  565. package/Libraries/Utilities/clamp.js +0 -23
  566. package/Libraries/Utilities/deprecatedPropType.js +0 -36
  567. package/Libraries/Utilities/groupByEveryN.js +0 -51
  568. package/Libraries/Utilities/mergeIntoFast.js +0 -26
  569. package/Libraries/Utilities/setAndForwardRef.js +0 -71
  570. package/Libraries/Utilities/truncate.js +0 -51
  571. package/Microsoft.ReactNative/Fabric/platform/react/components/image/conversions.h +0 -5
  572. package/Microsoft.ReactNative/Fabric/platform/react/components/view/ConcreteViewShadowNode.h +0 -5
  573. package/Microsoft.ReactNative/Fabric/platform/react/components/view/ViewEventEmitter.h +0 -5
  574. package/Microsoft.ReactNative/Fabric/platform/react/components/view/ViewProps.h +0 -5
  575. package/Microsoft.ReactNative/Fabric/platform/react/core/ConcreteComponentDescriptor.h +0 -5
  576. package/Microsoft.ReactNative/Fabric/platform/react/core/PropsParserContext.h +0 -5
  577. package/Microsoft.ReactNative/Fabric/platform/react/core/propsConversions.h +0 -5
  578. package/Microsoft.ReactNative/Fabric/platform/react/graphics/Color.h +0 -5
  579. package/Microsoft.ReactNative/Fabric/platform/react/imagemanager/primitives.h +0 -5
  580. package/Microsoft.ReactNative/Fabric/platform/react/renderer/components/iostextinput/TextInputEventEmitter.h +0 -5
  581. package/Microsoft.ReactNative/Fabric/platform/react/renderer/components/iostextinput/TextInputProps.h +0 -5
  582. package/Microsoft.ReactNative/Fabric/platform/react/renderer/components/iostextinput/TextInputShadowNode.h +0 -5
  583. package/Microsoft.ReactNative/Fabric/platform/react/renderer/components/iostextinput/TextInputState.h +0 -5
  584. package/Microsoft.ReactNative/Fabric/platform/react/renderer/components/iostextinput/conversions.h +0 -5
  585. package/Microsoft.ReactNative/Fabric/platform/react/renderer/components/iostextinput/primitives.h +0 -5
  586. package/Microsoft.ReactNative/Fabric/platform/react/renderer/components/iostextinput/propsConversions.h +0 -5
  587. package/Microsoft.ReactNative/Fabric/platform/react/renderer/components/rncore/EventEmitters.h +0 -5
  588. package/Microsoft.ReactNative/Fabric/platform/react/renderer/components/rncore/Props.h +0 -5
  589. package/Microsoft.ReactNative/Fabric/platform/react/renderer/components/rncore/States.h +0 -5
  590. package/Microsoft.ReactNative/Fabric/platform/react/renderer/graphics/Float.h +0 -5
  591. package/Microsoft.ReactNative/Fabric/platform/react/renderer/graphics/platform/cxx/react/renderer/graphics/Color.h +0 -135
  592. package/ReactCommon/TEMP_UntilReactCommonUpdate/react/renderer/core/ConcreteComponentDescriptor.h +0 -217
  593. package/ReactCommon/TEMP_UntilReactCommonUpdate/react/renderer/graphics/RectangleEdges.h +0 -100
  594. package/Shared/AsyncStorage/AsyncStorageManager.cpp +0 -149
  595. package/Shared/AsyncStorage/AsyncStorageManager.h +0 -71
  596. package/Shared/AsyncStorage/FollyDynamicConverter.cpp +0 -51
  597. package/Shared/AsyncStorage/FollyDynamicConverter.h +0 -24
  598. package/Shared/AsyncStorage/KeyValueStorage.cpp +0 -248
  599. package/Shared/AsyncStorage/KeyValueStorage.h +0 -50
  600. package/Shared/AsyncStorage/StorageFileIO.cpp +0 -160
  601. package/Shared/AsyncStorage/StorageFileIO.h +0 -40
  602. package/Shared/AsyncStorageModule.h +0 -25
  603. package/Shared/Modules/AsyncStorageModule.cpp +0 -87
  604. package/Shared/Modules/AsyncStorageModuleWin32.cpp +0 -496
  605. package/Shared/Modules/AsyncStorageModuleWin32.h +0 -75
  606. package/codegen/NativeDatePickerAndroidSpec.g.h +0 -33
  607. package/codegen/NativeDevSplitBundleLoaderSpec.g.h +0 -33
  608. package/include/Shared/AsyncStorageModuleWin32Config.h +0 -15
  609. package/types/index.d.ts +0 -216
  610. package/types/modules/BatchedBridge.d.ts +0 -32
  611. package/types/modules/Codegen.d.ts +0 -74
  612. package/types/modules/Devtools.d.ts +0 -31
  613. package/types/modules/LaunchScreen.d.ts +0 -18
  614. package/types/modules/globals.d.ts +0 -577
  615. package/types/private/TimerMixin.d.ts +0 -19
  616. package/types/private/Utilities.d.ts +0 -10
  617. package/types/public/DeprecatedPropertiesAlias.d.ts +0 -205
  618. package/types/public/Insets.d.ts +0 -15
  619. package/types/public/ReactNativeRenderer.d.ts +0 -149
  620. package/types/public/ReactNativeTypes.d.ts +0 -143
@@ -33,7 +33,9 @@ export type EdgeInsetsValue = {
33
33
  right: number,
34
34
  bottom: number,
35
35
  };
36
- export type DimensionValue = null | number | string | AnimatedNode;
36
+
37
+ export type DimensionValue = number | string | 'auto' | AnimatedNode | null;
38
+ export type AnimatableNumericValue = number | AnimatedNode;
37
39
 
38
40
  /**
39
41
  * React Native's layout system is based on Flexbox and is powered both
@@ -132,6 +134,80 @@ type ____LayoutStyle_Internal = $ReadOnly<{
132
134
  */
133
135
  top?: DimensionValue,
134
136
 
137
+ /** `inset` is a shorthand that corresponds to the top, right, bottom, and/or left properties.
138
+ *
139
+ * It works similarly to `inset` in CSS, but in React Native you
140
+ * must use points or percentages. Ems and other units are not supported.
141
+ *
142
+ * See https://developer.mozilla.org/en-US/docs/Web/CSS/inset
143
+ * for more details of how `inset` affects layout.
144
+ */
145
+ inset?: DimensionValue,
146
+
147
+ /** `insetBlock` is a shorthand that corresponds to the `insetBlockStart` and `insetBlockEnd` properties.
148
+ *
149
+ * It works similarly to `inset-block` in CSS, but in React Native you
150
+ * must use points or percentages. Ems and other units are not supported.
151
+ *
152
+ * See https://developer.mozilla.org/en-US/docs/Web/CSS/inset-block
153
+ * for more details of how `inset-block` affects layout.
154
+ */
155
+ insetBlock?: DimensionValue,
156
+
157
+ /** `insetBlockEnd` is a logical property that sets the length that an
158
+ * element is offset in the block direction from its ending edge.
159
+ *
160
+ * It works similarly to `inset-block-end` in CSS, but in React Native you
161
+ * must use points or percentages. Ems and other units are not supported.
162
+ *
163
+ * See https://developer.mozilla.org/en-US/docs/Web/CSS/inset-block-end
164
+ * for more details of how `inset-block-end` affects layout.
165
+ */
166
+ insetBlockEnd?: DimensionValue,
167
+
168
+ /** `insetBlockStart` is a logical property that sets the length that an
169
+ * element is offset in the block direction from its starting edge.
170
+ *
171
+ * It works similarly to `inset-block-start` in CSS, but in React Native you
172
+ * must use points or percentages. Ems and other units are not supported.
173
+ *
174
+ * See https://developer.mozilla.org/en-US/docs/Web/CSS/inset-block-start
175
+ * for more details of how `inset-block-start` affects layout.
176
+ */
177
+ insetBlockStart?: DimensionValue,
178
+
179
+ /** `insetInline` is a shorthand that corresponds to the `insetInlineStart` and `insetInlineEnd` properties.
180
+ *
181
+ * It works similarly to `inset-inline` in CSS, but in React Native you
182
+ * must use points or percentages. Ems and other units are not supported.
183
+ *
184
+ * See https://developer.mozilla.org/en-US/docs/Web/CSS/inset-inline
185
+ * for more details of how `inset-inline` affects layout.
186
+ */
187
+ insetInline?: DimensionValue,
188
+
189
+ /** `insetInlineEnd` is a logical property that sets the length that an
190
+ * element is offset in the starting inline direction.
191
+ *
192
+ * It works similarly to `inset-inline-end` in CSS, but in React Native you
193
+ * must use points or percentages. Ems and other units are not supported.
194
+ *
195
+ * See https://developer.mozilla.org/en-US/docs/Web/CSS/inset-inline-end
196
+ * for more details of how `inset-inline-end` affects layout.
197
+ */
198
+ insetInlineEnd?: DimensionValue,
199
+
200
+ /** `insetInlineStart` is a logical property that sets the length that an
201
+ * element is offset in the starting inline direction.
202
+ *
203
+ * It works similarly to `inset-inline-start` in CSS, but in React Native you
204
+ * must use points or percentages. Ems and other units are not supported.
205
+ *
206
+ * See https://developer.mozilla.org/en-US/docs/Web/CSS/inset-inline-start
207
+ * for more details of how `inset-inline-start` affects layout.
208
+ */
209
+ insetInlineStart?: DimensionValue,
210
+
135
211
  /** `minWidth` is the minimum width for this component, in logical pixels.
136
212
  *
137
213
  * It works similarly to `min-width` in CSS, but in React Native you
@@ -179,8 +255,27 @@ type ____LayoutStyle_Internal = $ReadOnly<{
179
255
  */
180
256
  margin?: DimensionValue,
181
257
 
258
+ /** Setting `marginBlock` has the same effect as setting both
259
+ * `marginTop` and `marginBottom`.
260
+ */
261
+ marginBlock?: DimensionValue,
262
+
263
+ /** `marginBlockEnd` works like `margin-block-end`in CSS. Because React
264
+ * Native doesn not support `writing-mode` this is always mapped to
265
+ * `margin-bottom`. See https://developer.mozilla.org/en-US/docs/Web/CSS/margin-block-end
266
+ * for more details.
267
+ */
268
+ marginBlockEnd?: DimensionValue,
269
+
270
+ /** `marginBlockEnd` works like `margin-block-end`in CSS. Because React
271
+ * Native doesn not support `writing-mode` this is always mapped to
272
+ * `margin-top`. See https://developer.mozilla.org/en-US/docs/Web/CSS/margin-block-end
273
+ * for more details.
274
+ */
275
+ marginBlockStart?: DimensionValue,
276
+
182
277
  /** `marginBottom` works like `margin-bottom` in CSS.
183
- * See https://developer.mozilla.org/en-US/docs/Web/CSS/margin-bottom
278
+ * See https://developer.mozilla.org/en-US/docs/Web/CSS/margin-block-start
184
279
  * for more details.
185
280
  */
186
281
  marginBottom?: DimensionValue,
@@ -196,6 +291,23 @@ type ____LayoutStyle_Internal = $ReadOnly<{
196
291
  */
197
292
  marginHorizontal?: DimensionValue,
198
293
 
294
+ /** Setting `marginInline` has the same effect as setting
295
+ * both `marginLeft` and `marginRight`.
296
+ */
297
+ marginInline?: DimensionValue,
298
+
299
+ /**
300
+ * When direction is `ltr`, `marginInlineEnd` is equivalent to `marginRight`.
301
+ * When direction is `rtl`, `marginInlineEnd` is equivalent to `marginLeft`.
302
+ */
303
+ marginInlineEnd?: DimensionValue,
304
+
305
+ /**
306
+ * When direction is `ltr`, `marginInlineStart` is equivalent to `marginLeft`.
307
+ * When direction is `rtl`, `marginInlineStart` is equivalent to `marginRight`.
308
+ */
309
+ marginInlineStart?: DimensionValue,
310
+
199
311
  /** `marginLeft` works like `margin-left` in CSS.
200
312
  * See https://developer.mozilla.org/en-US/docs/Web/CSS/margin-left
201
313
  * for more details.
@@ -232,6 +344,25 @@ type ____LayoutStyle_Internal = $ReadOnly<{
232
344
  */
233
345
  padding?: DimensionValue,
234
346
 
347
+ /** Setting `paddingBlock` is like setting both of
348
+ * `paddingTop` and `paddingBottom`.
349
+ * See https://developer.mozilla.org/en-US/docs/Web/CSS/padding-block
350
+ * for more details.
351
+ */
352
+ paddingBlock?: DimensionValue,
353
+
354
+ /** `paddingBlockEnd` works like `padding-bottom` in CSS.
355
+ * See https://developer.mozilla.org/en-US/docs/Web/CSS/padding-block-end
356
+ * for more details.
357
+ */
358
+ paddingBlockEnd?: DimensionValue,
359
+
360
+ /** `paddingBlockStart` works like `padding-top` in CSS.
361
+ * See https://developer.mozilla.org/en-US/docs/Web/CSS/padding-block-start
362
+ * for more details.
363
+ */
364
+ paddingBlockStart?: DimensionValue,
365
+
235
366
  /** `paddingBottom` works like `padding-bottom` in CSS.
236
367
  * See https://developer.mozilla.org/en-US/docs/Web/CSS/padding-bottom
237
368
  * for more details.
@@ -249,6 +380,23 @@ type ____LayoutStyle_Internal = $ReadOnly<{
249
380
  */
250
381
  paddingHorizontal?: DimensionValue,
251
382
 
383
+ /** Setting `paddingInline` is like setting both of
384
+ * `paddingLeft` and `paddingRight`.
385
+ */
386
+ paddingInline?: DimensionValue,
387
+
388
+ /**
389
+ * When direction is `ltr`, `paddingInlineEnd` is equivalent to `paddingRight`.
390
+ * When direction is `rtl`, `paddingInlineEnd` is equivalent to `paddingLeft`.
391
+ */
392
+ paddingInlineEnd?: DimensionValue,
393
+
394
+ /**
395
+ * When direction is `ltr`, `paddingInlineStart` is equivalent to `paddingLeft`.
396
+ * When direction is `rtl`, `paddingInlineStart` is equivalent to `paddingRight`.
397
+ */
398
+ paddingInlineStart?: DimensionValue,
399
+
252
400
  /** `paddingLeft` works like `padding-left` in CSS.
253
401
  * See https://developer.mozilla.org/en-US/docs/Web/CSS/padding-left
254
402
  * for more details.
@@ -482,6 +630,19 @@ type ____LayoutStyle_Internal = $ReadOnly<{
482
630
  * @platform ios
483
631
  */
484
632
  direction?: 'inherit' | 'ltr' | 'rtl',
633
+
634
+ /**
635
+ * In React Native, gap works the same way it does in CSS.
636
+ * If there are two or more children in a container, they will be separated from each other
637
+ * by the value of the gap - but the children will not be separated from the edges of their parent container.
638
+ * For horizontal gaps, use columnGap, for vertical gaps, use rowGap, and to apply both at the same time, it's gap.
639
+ * When align-content or justify-content are set to space-between or space-around, the separation
640
+ * between children may be larger than the gap value.
641
+ * See https://developer.mozilla.org/en-US/docs/Web/CSS/gap for more details.
642
+ */
643
+ rowGap?: number,
644
+ columnGap?: number,
645
+ gap?: number,
485
646
  }>;
486
647
 
487
648
  /**
@@ -512,25 +673,12 @@ export type ____ShadowStyle_InternalCore = $ReadOnly<{
512
673
  * Sets the drop shadow opacity (multiplied by the color's alpha component)
513
674
  * @platform ios
514
675
  */
515
- shadowOpacity?: number | AnimatedNode,
676
+ shadowOpacity?: AnimatableNumericValue,
516
677
  /**
517
678
  * Sets the drop shadow blur radius
518
679
  * @platform ios
519
680
  */
520
681
  shadowRadius?: number,
521
-
522
- /**
523
- * In React Native, gap works the same way it does in CSS.
524
- * If there are two or more children in a container, they will be separated from each other
525
- * by the value of the gap - but the children will not be separated from the edges of their parent container.
526
- * For horizontal gaps, use columnGap, for vertical gaps, use rowGap, and to apply both at the same time, it's gap.
527
- * When align-content or justify-content are set to space-between or space-around, the separation
528
- * between children may be larger than the gap value.
529
- * See https://developer.mozilla.org/en-US/docs/Web/CSS/gap for more details.
530
- */
531
- rowGap?: number,
532
- columnGap?: number,
533
- gap?: number,
534
682
  }>;
535
683
 
536
684
  export type ____ShadowStyle_Internal = $ReadOnly<{
@@ -552,24 +700,31 @@ export type ____ViewStyle_InternalCore = $ReadOnly<{
552
700
  borderRightColor?: ____ColorValue_Internal,
553
701
  borderStartColor?: ____ColorValue_Internal,
554
702
  borderTopColor?: ____ColorValue_Internal,
555
- borderRadius?: number | AnimatedNode,
556
- borderBottomEndRadius?: number | AnimatedNode,
557
- borderBottomLeftRadius?: number | AnimatedNode,
558
- borderBottomRightRadius?: number | AnimatedNode,
559
- borderBottomStartRadius?: number | AnimatedNode,
560
- borderTopEndRadius?: number | AnimatedNode,
561
- borderTopLeftRadius?: number | AnimatedNode,
562
- borderTopRightRadius?: number | AnimatedNode,
563
- borderTopStartRadius?: number | AnimatedNode,
703
+ borderBlockColor?: ____ColorValue_Internal,
704
+ borderBlockEndColor?: ____ColorValue_Internal,
705
+ borderBlockStartColor?: ____ColorValue_Internal,
706
+ borderRadius?: AnimatableNumericValue,
707
+ borderBottomEndRadius?: AnimatableNumericValue,
708
+ borderBottomLeftRadius?: AnimatableNumericValue,
709
+ borderBottomRightRadius?: AnimatableNumericValue,
710
+ borderBottomStartRadius?: AnimatableNumericValue,
711
+ borderEndEndRadius?: AnimatableNumericValue,
712
+ borderEndStartRadius?: AnimatableNumericValue,
713
+ borderStartEndRadius?: AnimatableNumericValue,
714
+ borderStartStartRadius?: AnimatableNumericValue,
715
+ borderTopEndRadius?: AnimatableNumericValue,
716
+ borderTopLeftRadius?: AnimatableNumericValue,
717
+ borderTopRightRadius?: AnimatableNumericValue,
718
+ borderTopStartRadius?: AnimatableNumericValue,
564
719
  borderStyle?: 'solid' | 'dotted' | 'dashed',
565
- borderWidth?: number | AnimatedNode,
566
- borderBottomWidth?: number | AnimatedNode,
567
- borderEndWidth?: number | AnimatedNode,
568
- borderLeftWidth?: number | AnimatedNode,
569
- borderRightWidth?: number | AnimatedNode,
570
- borderStartWidth?: number | AnimatedNode,
571
- borderTopWidth?: number | AnimatedNode,
572
- opacity?: number | AnimatedNode,
720
+ borderWidth?: AnimatableNumericValue,
721
+ borderBottomWidth?: AnimatableNumericValue,
722
+ borderEndWidth?: AnimatableNumericValue,
723
+ borderLeftWidth?: AnimatableNumericValue,
724
+ borderRightWidth?: AnimatableNumericValue,
725
+ borderStartWidth?: AnimatableNumericValue,
726
+ borderTopWidth?: AnimatableNumericValue,
727
+ opacity?: AnimatableNumericValue,
573
728
  elevation?: number,
574
729
  pointerEvents?: 'auto' | 'none' | 'box-none' | 'box-only',
575
730
  }>;
@@ -15,6 +15,7 @@ import type {____FlattenStyleProp_Internal} from './StyleSheetTypes';
15
15
 
16
16
  function flattenStyle<+TStyleProp: DangerouslyImpreciseStyleProp>(
17
17
  style: ?TStyleProp,
18
+ // $FlowFixMe[underconstrained-implicit-instantiation]
18
19
  ): ?____FlattenStyleProp_Internal<TStyleProp> {
19
20
  if (style === null || typeof style !== 'object') {
20
21
  return undefined;
@@ -26,6 +27,7 @@ function flattenStyle<+TStyleProp: DangerouslyImpreciseStyleProp>(
26
27
 
27
28
  const result: {[string]: $FlowFixMe} = {};
28
29
  for (let i = 0, styleLength = style.length; i < styleLength; ++i) {
30
+ // $FlowFixMe[underconstrained-implicit-instantiation]
29
31
  const computedStyle = flattenStyle(style[i]);
30
32
  if (computedStyle) {
31
33
  for (const key in computedStyle) {
@@ -13,7 +13,7 @@
13
13
  import type {ProcessedColorValue} from './processColor';
14
14
  import type {ColorValue} from './StyleSheet';
15
15
 
16
- import _normalizeColor from '@react-native/normalize-color';
16
+ import _normalizeColor from '@react-native/normalize-colors';
17
17
 
18
18
  function normalizeColor(
19
19
  color: ?(ColorValue | ProcessedColorValue),
@@ -57,4 +57,4 @@ function processColor(color?: ?(number | ColorValue)): ?ProcessedColorValue {
57
57
  return normalizedColor;
58
58
  }
59
59
 
60
- module.exports = processColor;
60
+ export default processColor;
@@ -27,7 +27,7 @@ export interface TextPropsIOS {
27
27
  adjustsFontSizeToFit?: boolean | undefined;
28
28
 
29
29
  /**
30
- * The Dynamic Text scale ramp to apply to this element on iOS.
30
+ * The Dynamic Type scale ramp to apply to this element on iOS.
31
31
  */
32
32
  dynamicTypeRamp?:
33
33
  | 'caption2'
@@ -53,6 +53,16 @@ export interface TextPropsIOS {
53
53
  * default, a gray oval highlights the text on press down.
54
54
  */
55
55
  suppressHighlighting?: boolean | undefined;
56
+
57
+ /**
58
+ * Set line break strategy on iOS.
59
+ */
60
+ lineBreakStrategyIOS?:
61
+ | 'none'
62
+ | 'standard'
63
+ | 'hangul-word'
64
+ | 'push-out'
65
+ | undefined;
56
66
  }
57
67
 
58
68
  export interface TextPropsAndroid {
@@ -107,7 +117,7 @@ export interface TextProps
107
117
  */
108
118
  allowFontScaling?: boolean | undefined;
109
119
 
110
- children?: React.ReactNode;
120
+ children?: React.ReactNode | undefined;
111
121
 
112
122
  /**
113
123
  * This can be one of the following values:
@@ -9,17 +9,16 @@
9
9
  */
10
10
 
11
11
  import type {PressEvent} from '../Types/CoreEventTypes';
12
+ import type {TextProps} from './TextProps';
12
13
 
13
14
  import * as PressabilityDebug from '../Pressability/PressabilityDebug';
14
15
  import usePressability from '../Pressability/usePressability';
15
16
  import flattenStyle from '../StyleSheet/flattenStyle';
16
17
  import processColor from '../StyleSheet/processColor';
17
- import StyleSheet from '../StyleSheet/StyleSheet';
18
18
  import {getAccessibilityRoleFromRole} from '../Utilities/AcessibilityMapping';
19
19
  import Platform from '../Utilities/Platform';
20
20
  import TextAncestor from './TextAncestor';
21
21
  import {NativeText, NativeVirtualText} from './TextNativeComponent';
22
- import {type TextProps} from './TextProps';
23
22
  import * as React from 'react';
24
23
  import {useContext, useMemo, useState} from 'react';
25
24
 
@@ -36,6 +35,7 @@ const Text: React.AbstractComponent<
36
35
  accessible,
37
36
  accessibilityLabel,
38
37
  accessibilityRole,
38
+ accessibilityState,
39
39
  allowFontScaling,
40
40
  'aria-busy': ariaBusy,
41
41
  'aria-checked': ariaChecked,
@@ -64,13 +64,23 @@ const Text: React.AbstractComponent<
64
64
 
65
65
  const [isHighlighted, setHighlighted] = useState(false);
66
66
 
67
- const _accessibilityState = {
68
- busy: ariaBusy ?? props.accessibilityState?.busy,
69
- checked: ariaChecked ?? props.accessibilityState?.checked,
70
- disabled: ariaDisabled ?? props.accessibilityState?.disabled,
71
- expanded: ariaExpanded ?? props.accessibilityState?.expanded,
72
- selected: ariaSelected ?? props.accessibilityState?.selected,
73
- };
67
+ let _accessibilityState;
68
+ if (
69
+ accessibilityState != null ||
70
+ ariaBusy != null ||
71
+ ariaChecked != null ||
72
+ ariaDisabled != null ||
73
+ ariaExpanded != null ||
74
+ ariaSelected != null
75
+ ) {
76
+ _accessibilityState = {
77
+ busy: ariaBusy ?? accessibilityState?.busy,
78
+ checked: ariaChecked ?? accessibilityState?.checked,
79
+ disabled: ariaDisabled ?? accessibilityState?.disabled,
80
+ expanded: ariaExpanded ?? accessibilityState?.expanded,
81
+ selected: ariaSelected ?? accessibilityState?.selected,
82
+ };
83
+ }
74
84
 
75
85
  const _disabled =
76
86
  restProps.disabled != null
@@ -174,25 +184,11 @@ const Text: React.AbstractComponent<
174
184
  ? null
175
185
  : processColor(restProps.selectionColor);
176
186
 
177
- let style = flattenStyle(restProps.style);
178
-
179
- let _selectable = restProps.selectable;
180
- if (style?.userSelect != null) {
181
- _selectable = userSelectToSelectableMap[style.userSelect];
182
- }
183
-
184
- if (style?.verticalAlign != null) {
185
- style = StyleSheet.compose(style, {
186
- textAlignVertical:
187
- verticalAlignToTextAlignVerticalMap[style.verticalAlign],
188
- });
189
- }
187
+ let style = restProps.style;
190
188
 
191
189
  if (__DEV__) {
192
190
  if (PressabilityDebug.isEnabled() && onPress != null) {
193
- style = StyleSheet.compose(restProps.style, {
194
- color: 'magenta',
195
- });
191
+ style = [restProps.style, {color: 'magenta'}];
196
192
  }
197
193
  }
198
194
 
@@ -211,10 +207,23 @@ const Text: React.AbstractComponent<
211
207
  default: accessible,
212
208
  });
213
209
 
214
- let flattenedStyle = flattenStyle(style);
210
+ // $FlowFixMe[underconstrained-implicit-instantiation]
211
+ style = flattenStyle(style);
212
+
213
+ if (typeof style?.fontWeight === 'number') {
214
+ style.fontWeight = style?.fontWeight.toString();
215
+ }
216
+
217
+ let _selectable = restProps.selectable;
218
+ if (style?.userSelect != null) {
219
+ _selectable = userSelectToSelectableMap[style.userSelect];
220
+ delete style.userSelect;
221
+ }
215
222
 
216
- if (typeof flattenedStyle?.fontWeight === 'number') {
217
- flattenedStyle.fontWeight = flattenedStyle?.fontWeight.toString();
223
+ if (style?.verticalAlign != null) {
224
+ style.textAlignVertical =
225
+ verticalAlignToTextAlignVerticalMap[style.verticalAlign];
226
+ delete style.verticalAlign;
218
227
  }
219
228
 
220
229
  const _hasOnPressOrOnLongPress =
@@ -223,46 +232,46 @@ const Text: React.AbstractComponent<
223
232
  return hasTextAncestor ? (
224
233
  <NativeVirtualText
225
234
  {...restProps}
226
- accessibilityState={_accessibilityState}
227
235
  {...eventHandlersForText}
228
236
  accessibilityLabel={ariaLabel ?? accessibilityLabel}
229
237
  accessibilityRole={
230
238
  role ? getAccessibilityRoleFromRole(role) : accessibilityRole
231
239
  }
240
+ accessibilityState={_accessibilityState}
232
241
  isHighlighted={isHighlighted}
233
242
  isPressable={isPressable}
234
- selectable={_selectable}
235
243
  nativeID={id ?? nativeID}
236
244
  numberOfLines={numberOfLines}
237
- selectionColor={selectionColor}
238
- style={flattenedStyle}
239
245
  ref={forwardedRef}
246
+ selectable={_selectable}
247
+ selectionColor={selectionColor}
248
+ style={style}
240
249
  />
241
250
  ) : (
242
251
  <TextAncestor.Provider value={true}>
243
252
  <NativeText
244
253
  {...restProps}
245
254
  {...eventHandlersForText}
246
- disabled={_disabled}
247
- selectable={_selectable}
255
+ accessibilityLabel={ariaLabel ?? accessibilityLabel}
256
+ accessibilityRole={
257
+ role ? getAccessibilityRoleFromRole(role) : accessibilityRole
258
+ }
259
+ accessibilityState={nativeTextAccessibilityState}
248
260
  accessible={
249
261
  accessible == null && Platform.OS === 'android'
250
262
  ? _hasOnPressOrOnLongPress
251
263
  : _accessible
252
264
  }
253
- accessibilityLabel={ariaLabel ?? accessibilityLabel}
254
- accessibilityState={nativeTextAccessibilityState}
255
- accessibilityRole={
256
- role ? getAccessibilityRoleFromRole(role) : accessibilityRole
257
- }
258
265
  allowFontScaling={allowFontScaling !== false}
266
+ disabled={_disabled}
259
267
  ellipsizeMode={ellipsizeMode ?? 'tail'}
260
268
  isHighlighted={isHighlighted}
261
269
  nativeID={id ?? nativeID}
262
270
  numberOfLines={numberOfLines}
263
- selectionColor={selectionColor}
264
- style={flattenedStyle}
265
271
  ref={forwardedRef}
272
+ selectable={_selectable}
273
+ selectionColor={selectionColor}
274
+ style={style}
266
275
  />
267
276
  </TextAncestor.Provider>
268
277
  );
@@ -10,17 +10,16 @@
10
10
  */
11
11
 
12
12
  import type {PressEvent} from '../Types/CoreEventTypes';
13
+ import type {TextProps} from './TextProps';
13
14
 
14
15
  import * as PressabilityDebug from '../Pressability/PressabilityDebug';
15
16
  import usePressability from '../Pressability/usePressability';
16
17
  import flattenStyle from '../StyleSheet/flattenStyle';
17
18
  import processColor from '../StyleSheet/processColor';
18
- import StyleSheet from '../StyleSheet/StyleSheet';
19
19
  import {getAccessibilityRoleFromRole} from '../Utilities/AcessibilityMapping';
20
20
  import Platform from '../Utilities/Platform';
21
21
  import TextAncestor from './TextAncestor';
22
22
  import {NativeText, NativeVirtualText} from './TextNativeComponent';
23
- import {type TextProps} from './TextProps';
24
23
  import * as React from 'react';
25
24
  import {useContext, useMemo, useState} from 'react';
26
25
 
@@ -40,6 +39,7 @@ const Text: React.AbstractComponent<
40
39
  accessible,
41
40
  accessibilityLabel,
42
41
  accessibilityRole,
42
+ accessibilityState,
43
43
  allowFontScaling,
44
44
  'aria-busy': ariaBusy,
45
45
  'aria-checked': ariaChecked,
@@ -68,13 +68,23 @@ const Text: React.AbstractComponent<
68
68
 
69
69
  const [isHighlighted, setHighlighted] = useState(false);
70
70
 
71
- const _accessibilityState = {
72
- busy: ariaBusy ?? props.accessibilityState?.busy,
73
- checked: ariaChecked ?? props.accessibilityState?.checked,
74
- disabled: ariaDisabled ?? props.accessibilityState?.disabled,
75
- expanded: ariaExpanded ?? props.accessibilityState?.expanded,
76
- selected: ariaSelected ?? props.accessibilityState?.selected,
77
- };
71
+ let _accessibilityState;
72
+ if (
73
+ accessibilityState != null ||
74
+ ariaBusy != null ||
75
+ ariaChecked != null ||
76
+ ariaDisabled != null ||
77
+ ariaExpanded != null ||
78
+ ariaSelected != null
79
+ ) {
80
+ _accessibilityState = {
81
+ busy: ariaBusy ?? accessibilityState?.busy,
82
+ checked: ariaChecked ?? accessibilityState?.checked,
83
+ disabled: ariaDisabled ?? accessibilityState?.disabled,
84
+ expanded: ariaExpanded ?? accessibilityState?.expanded,
85
+ selected: ariaSelected ?? accessibilityState?.selected,
86
+ };
87
+ }
78
88
 
79
89
  const _disabled =
80
90
  restProps.disabled != null
@@ -178,25 +188,11 @@ const Text: React.AbstractComponent<
178
188
  ? null
179
189
  : processColor(restProps.selectionColor);
180
190
 
181
- let style = flattenStyle(restProps.style);
182
-
183
- let _selectable = restProps.selectable;
184
- if (style?.userSelect != null) {
185
- _selectable = userSelectToSelectableMap[style.userSelect];
186
- }
187
-
188
- if (style?.verticalAlign != null) {
189
- style = StyleSheet.compose(style, {
190
- textAlignVertical:
191
- verticalAlignToTextAlignVerticalMap[style.verticalAlign],
192
- });
193
- }
191
+ let style = restProps.style;
194
192
 
195
193
  if (__DEV__) {
196
194
  if (PressabilityDebug.isEnabled() && onPress != null) {
197
- style = StyleSheet.compose(restProps.style, {
198
- color: 'magenta',
199
- });
195
+ style = [restProps.style, {color: 'magenta'}];
200
196
  }
201
197
  }
202
198
 
@@ -215,10 +211,23 @@ const Text: React.AbstractComponent<
215
211
  default: accessible,
216
212
  });
217
213
 
218
- let flattenedStyle = flattenStyle(style);
214
+ // $FlowFixMe[underconstrained-implicit-instantiation]
215
+ style = flattenStyle(style);
219
216
 
220
- if (typeof flattenedStyle?.fontWeight === 'number') {
221
- flattenedStyle.fontWeight = flattenedStyle?.fontWeight.toString();
217
+ if (typeof style?.fontWeight === 'number') {
218
+ style.fontWeight = style?.fontWeight.toString();
219
+ }
220
+
221
+ let _selectable = restProps.selectable;
222
+ if (style?.userSelect != null) {
223
+ _selectable = userSelectToSelectableMap[style.userSelect];
224
+ delete style.userSelect;
225
+ }
226
+
227
+ if (style?.verticalAlign != null) {
228
+ style.textAlignVertical =
229
+ verticalAlignToTextAlignVerticalMap[style.verticalAlign];
230
+ delete style.verticalAlign;
222
231
  }
223
232
 
224
233
  const _hasOnPressOrOnLongPress =
@@ -229,27 +238,27 @@ const Text: React.AbstractComponent<
229
238
  <NativeVirtualText
230
239
  {...restProps}
231
240
  {...eventHandlersForText}
232
- disabled={_disabled}
233
- selectable={_selectable}
241
+ accessibilityLabel={ariaLabel ?? accessibilityLabel}
242
+ accessibilityRole={
243
+ role ? getAccessibilityRoleFromRole(role) : accessibilityRole
244
+ }
245
+ accessibilityState={nativeTextAccessibilityState}
234
246
  accessible={
235
247
  accessible == null && Platform.OS === 'android'
236
248
  ? _hasOnPressOrOnLongPress
237
249
  : _accessible
238
250
  }
239
- accessibilityLabel={ariaLabel ?? accessibilityLabel}
240
- accessibilityState={nativeTextAccessibilityState}
241
- accessibilityRole={
242
- role ? getAccessibilityRoleFromRole(role) : accessibilityRole
243
- }
244
251
  allowFontScaling={allowFontScaling !== false}
252
+ disabled={_disabled}
245
253
  ellipsizeMode={ellipsizeMode ?? 'tail'}
246
254
  isHighlighted={isHighlighted}
247
255
  nativeID={id ?? nativeID}
248
256
  isPressable={isPressable}
249
257
  numberOfLines={numberOfLines}
250
- selectionColor={selectionColor}
251
- style={flattenedStyle}
252
258
  ref={forwardedRef}
259
+ selectable={_selectable}
260
+ selectionColor={selectionColor}
261
+ style={style}
253
262
  />
254
263
  );
255
264
  } else {
@@ -266,7 +275,8 @@ const Text: React.AbstractComponent<
266
275
  styleProps.borderTopWidth)
267
276
  ) {
268
277
  let textStyleProps = Array.isArray(styleProps)
269
- ? StyleSheet.flatten(styleProps)
278
+ ? // $FlowFixMe[underconstrained-implicit-instantiation]
279
+ flattenStyle(styleProps)
270
280
  : styleProps;
271
281
  let {
272
282
  margin,