react-native-windows 0.73.11 → 0.74.0-preview.2

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 (767) hide show
  1. package/.flowconfig +12 -7
  2. package/Chakra/ChakraUtils.cpp +5 -10
  3. package/Chakra/ChakraUtils.h +2 -2
  4. package/Common/packages.lock.json +3 -3
  5. package/Directory.Build.props +5 -5
  6. package/Folly/Folly.vcxproj +2 -2
  7. package/Folly/Folly.vcxproj.filters +7 -0
  8. package/Folly/TEMP_UntilFollyUpdate/dynamic-inl.h +22 -1
  9. package/Folly/TEMP_UntilFollyUpdate/lang/SafeAssert.h +4 -1
  10. package/Folly/cgmanifest.json +1 -1
  11. package/Libraries/ActionSheetIOS/ActionSheetIOS.d.ts +6 -0
  12. package/Libraries/ActionSheetIOS/ActionSheetIOS.js +6 -0
  13. package/Libraries/ActionSheetIOS/NativeActionSheetManager.js +4 -45
  14. package/Libraries/Alert/Alert.windows.js +2 -3
  15. package/Libraries/Alert/NativeAlertManager.js +4 -26
  16. package/Libraries/Animated/Animated.js +2 -2
  17. package/Libraries/Animated/AnimatedPlatformConfig.js +1 -1
  18. package/Libraries/Animated/NativeAnimatedHelper.js +14 -11
  19. package/Libraries/Animated/NativeAnimatedModule.js +4 -68
  20. package/Libraries/Animated/NativeAnimatedTurboModule.js +4 -69
  21. package/Libraries/Animated/animations/Animation.js +6 -22
  22. package/Libraries/Animated/components/AnimatedFlatList.js +1 -16
  23. package/Libraries/Animated/components/AnimatedScrollView.js +36 -31
  24. package/Libraries/Animated/components/AnimatedSectionList.js +1 -20
  25. package/Libraries/Animated/createAnimatedComponent.js +45 -40
  26. package/Libraries/Animated/nodes/AnimatedStyle.js +1 -1
  27. package/Libraries/Animated/shouldUseTurboAnimatedModule.js +1 -1
  28. package/Libraries/Animated/useAnimatedProps.js +21 -1
  29. package/Libraries/AppState/NativeAppState.js +4 -24
  30. package/Libraries/AppTheme/NativeAppTheme.js +4 -25
  31. package/Libraries/BatchedBridge/NativeModules.js +1 -1
  32. package/Libraries/Blob/Blob.js +1 -4
  33. package/Libraries/Blob/BlobManager.js +6 -8
  34. package/Libraries/Blob/File.js +1 -1
  35. package/Libraries/Blob/NativeBlobModule.js +4 -50
  36. package/Libraries/Blob/NativeFileReaderModule.js +4 -13
  37. package/Libraries/BugReporting/NativeBugReporting.js +4 -12
  38. package/Libraries/Components/AccessibilityInfo/NativeAccessibilityInfo.js +3 -23
  39. package/Libraries/Components/AccessibilityInfo/NativeAccessibilityManager.js +4 -57
  40. package/Libraries/Components/AccessibilityInfo/legacySendAccessibilityEvent.android.js +3 -2
  41. package/Libraries/Components/AccessibilityInfo/legacySendAccessibilityEvent.windows.js +3 -2
  42. package/Libraries/Components/ActivityIndicator/ActivityIndicator.js +9 -40
  43. package/Libraries/Components/ActivityIndicator/ActivityIndicatorViewNativeComponent.js +3 -43
  44. package/Libraries/Components/Button.js +103 -107
  45. package/Libraries/Components/Button.windows.js +199 -206
  46. package/Libraries/Components/Clipboard/NativeClipboard.js +3 -11
  47. package/Libraries/Components/DrawerAndroid/AndroidDrawerLayoutNativeComponent.js +3 -114
  48. package/Libraries/Components/DrawerAndroid/DrawerLayoutAndroid.android.js +1 -5
  49. package/Libraries/Components/Keyboard/KeyboardExt.d.ts +8 -8
  50. package/Libraries/Components/Keyboard/KeyboardExt.js +27 -27
  51. package/Libraries/Components/Keyboard/KeyboardExt.js.map +1 -1
  52. package/Libraries/Components/Keyboard/KeyboardExtProps.d.ts +17 -17
  53. package/Libraries/Components/Keyboard/KeyboardExtProps.js +7 -7
  54. package/Libraries/Components/Keyboard/KeyboardExtProps.js.map +1 -1
  55. package/Libraries/Components/Keyboard/NativeKeyboardObserver.js +3 -10
  56. package/Libraries/Components/Pressable/Pressable.js +1 -1
  57. package/Libraries/Components/Pressable/Pressable.windows.js +1 -2
  58. package/Libraries/Components/Pressable/useAndroidRippleForView.js +5 -4
  59. package/Libraries/Components/ProgressBarAndroid/ProgressBarAndroidNativeComponent.js +4 -24
  60. package/Libraries/Components/RefreshControl/AndroidSwipeRefreshLayoutNativeComponent.js +3 -64
  61. package/Libraries/Components/RefreshControl/PullToRefreshViewNativeComponent.js +3 -61
  62. package/Libraries/Components/RefreshControl/RefreshControl.js +1 -1
  63. package/Libraries/Components/RefreshControl/RefreshControl.windows.js +1 -1
  64. package/Libraries/Components/SafeAreaView/RCTSafeAreaViewNativeComponent.js +3 -15
  65. package/Libraries/Components/ScrollView/AndroidHorizontalScrollContentViewNativeComponent.js +3 -16
  66. package/Libraries/Components/ScrollView/ScrollContentViewNativeComponent.js +1 -1
  67. package/Libraries/Components/ScrollView/ScrollView.d.ts +5 -6
  68. package/Libraries/Components/ScrollView/ScrollView.js +12 -38
  69. package/Libraries/Components/ScrollView/ScrollViewStickyHeader.js +1 -2
  70. package/Libraries/Components/Sound/NativeSoundManager.js +3 -12
  71. package/Libraries/Components/StatusBar/NativeStatusBarManagerAndroid.js +3 -58
  72. package/Libraries/Components/StatusBar/NativeStatusBarManagerIOS.js +3 -79
  73. package/Libraries/Components/Switch/AndroidSwitchNativeComponent.js +4 -53
  74. package/Libraries/Components/Switch/Switch.js +0 -2
  75. package/Libraries/Components/Switch/Switch.windows.js +0 -2
  76. package/Libraries/Components/Switch/SwitchNativeComponent.js +4 -52
  77. package/Libraries/Components/TextInput/AndroidTextInputNativeComponent.js +8 -0
  78. package/Libraries/Components/TextInput/InputAccessoryView.js +18 -20
  79. package/Libraries/Components/TextInput/RCTInputAccessoryViewNativeComponent.js +4 -17
  80. package/Libraries/Components/TextInput/RCTTextInputViewConfig.js +3 -6
  81. package/Libraries/Components/TextInput/TextInput.d.ts +16 -0
  82. package/Libraries/Components/TextInput/TextInput.flow.js +16 -0
  83. package/Libraries/Components/TextInput/TextInput.js +65 -32
  84. package/Libraries/Components/TextInput/TextInput.windows.js +87 -38
  85. package/Libraries/Components/TextInput/WindowsTextInputNativeComponent.js +773 -9
  86. package/Libraries/Components/ToastAndroid/NativeToastAndroid.js +3 -28
  87. package/Libraries/Components/Touchable/PooledClass.js +1 -1
  88. package/Libraries/Components/Touchable/Touchable.js +2 -3
  89. package/Libraries/Components/Touchable/Touchable.windows.js +2 -3
  90. package/Libraries/Components/Touchable/TouchableHighlight.js +4 -4
  91. package/Libraries/Components/Touchable/TouchableHighlight.windows.js +4 -4
  92. package/Libraries/Components/Touchable/TouchableNativeFeedback.js +2 -1
  93. package/Libraries/Components/Touchable/TouchableOpacity.js +5 -2
  94. package/Libraries/Components/Touchable/TouchableOpacity.windows.js +5 -2
  95. package/Libraries/Components/UnimplementedViews/UnimplementedNativeViewNativeComponent.js +3 -16
  96. package/Libraries/Components/View/ReactNativeStyleAttributes.js +2 -1
  97. package/Libraries/Components/View/View.js +0 -11
  98. package/Libraries/Components/View/View.windows.js +19 -18
  99. package/Libraries/Components/View/ViewAccessibility.d.ts +33 -17
  100. package/Libraries/Components/View/ViewPropTypes.d.ts +28 -17
  101. package/Libraries/Components/View/ViewPropTypes.js +36 -36
  102. package/Libraries/Components/View/ViewPropTypes.windows.js +36 -36
  103. package/Libraries/Core/InitializeCore.js +1 -1
  104. package/Libraries/Core/NativeExceptionsManager.js +3 -93
  105. package/Libraries/Core/ReactNativeVersion.js +12 -6
  106. package/Libraries/Core/ReactNativeVersionCheck.js +6 -6
  107. package/Libraries/Core/SegmentFetcher/NativeSegmentFetcher.js +3 -18
  108. package/Libraries/Core/Timers/NativeTiming.js +3 -16
  109. package/Libraries/Core/registerCallableModule.d.ts +16 -0
  110. package/Libraries/Core/registerCallableModule.js +42 -0
  111. package/Libraries/Core/setUpPerformance.js +2 -2
  112. package/Libraries/Core/setUpPerformanceObserver.js +3 -1
  113. package/Libraries/Debugging/DebuggingOverlay.js +111 -0
  114. package/Libraries/Debugging/DebuggingOverlayNativeComponent.js +13 -0
  115. package/Libraries/Debugging/DebuggingOverlayRegistry.js +513 -0
  116. package/Libraries/Debugging/useSubscribeToDebuggingOverlayRegistry.js +32 -0
  117. package/Libraries/DevToolsSettings/NativeDevToolsSettingsManager.js +3 -14
  118. package/Libraries/HeapCapture/NativeJSCHeapCapture.js +3 -9
  119. package/Libraries/Image/AssetSourceResolver.js +5 -5
  120. package/Libraries/Image/AssetUtils.js +4 -5
  121. package/Libraries/Image/Image.android.js +146 -174
  122. package/Libraries/Image/Image.d.ts +1 -1
  123. package/Libraries/Image/Image.ios.js +53 -79
  124. package/Libraries/Image/Image.windows.js +53 -79
  125. package/Libraries/Image/ImageBackground.js +2 -2
  126. package/Libraries/Image/ImageInjection.js +76 -18
  127. package/Libraries/Image/ImageTypes.flow.js +71 -0
  128. package/Libraries/Image/ImageUtils.js +1 -1
  129. package/Libraries/Image/ImageViewNativeComponent.js +18 -0
  130. package/Libraries/Image/NativeImageEditor.js +3 -42
  131. package/Libraries/Image/NativeImageLoaderAndroid.js +4 -28
  132. package/Libraries/Image/NativeImageLoaderIOS.js +4 -28
  133. package/Libraries/Image/NativeImageStoreAndroid.js +3 -16
  134. package/Libraries/Image/NativeImageStoreIOS.js +3 -23
  135. package/Libraries/Image/resolveAssetSource.js +59 -26
  136. package/Libraries/Image/resolveAssetSource.windows.js +148 -0
  137. package/Libraries/Inspector/ElementProperties.js +26 -52
  138. package/Libraries/Inspector/Inspector.js +122 -186
  139. package/Libraries/Inspector/InspectorOverlay.js +21 -33
  140. package/Libraries/Inspector/InspectorPanel.js +3 -17
  141. package/Libraries/Inspector/ReactDevToolsOverlay.js +171 -0
  142. package/Libraries/Inspector/getInspectorDataForViewAtPoint.js +20 -8
  143. package/Libraries/Interaction/FrameRateLogger.js +8 -18
  144. package/Libraries/Interaction/NativeFrameRateLogger.js +4 -16
  145. package/Libraries/IntersectionObserver/IntersectionObserver.js +1 -1
  146. package/Libraries/IntersectionObserver/IntersectionObserverEntry.js +20 -19
  147. package/Libraries/IntersectionObserver/IntersectionObserverManager.js +84 -6
  148. package/Libraries/IntersectionObserver/NativeIntersectionObserver.js +3 -31
  149. package/Libraries/IntersectionObserver/__mocks__/NativeIntersectionObserver.js +12 -2
  150. package/Libraries/LayoutAnimation/LayoutAnimation.js +1 -2
  151. package/Libraries/Linking/NativeIntentAndroid.js +3 -20
  152. package/Libraries/Linking/NativeLinkingManager.js +3 -17
  153. package/Libraries/Lists/FillRateHelper.js +1 -1
  154. package/Libraries/Lists/FlatList.d.ts +2 -2
  155. package/Libraries/Lists/FlatList.js +6 -2
  156. package/Libraries/Lists/FlatList.windows.js +717 -0
  157. package/Libraries/Lists/SectionList.d.ts +6 -1
  158. package/Libraries/Lists/ViewabilityHelper.js +1 -1
  159. package/Libraries/Lists/VirtualizeUtils.js +1 -1
  160. package/Libraries/Lists/VirtualizedList.js +1 -1
  161. package/Libraries/Lists/VirtualizedListContext.js +1 -1
  162. package/Libraries/Lists/VirtualizedSectionList.js +1 -1
  163. package/Libraries/LogBox/LogBoxInspectorContainer.js +1 -1
  164. package/Libraries/Modal/Modal.js +43 -11
  165. package/Libraries/Modal/NativeModalManager.js +3 -11
  166. package/Libraries/Modal/RCTModalHostViewNativeComponent.js +3 -129
  167. package/Libraries/MutationObserver/MutationObserver.js +1 -1
  168. package/Libraries/MutationObserver/MutationObserverManager.js +2 -2
  169. package/Libraries/MutationObserver/MutationRecord.js +12 -10
  170. package/Libraries/MutationObserver/NativeMutationObserver.js +3 -48
  171. package/Libraries/MutationObserver/__mocks__/NativeMutationObserver.js +1 -1
  172. package/Libraries/NativeComponent/BaseViewConfig.android.js +1 -0
  173. package/Libraries/NativeComponent/BaseViewConfig.windows.js +3 -0
  174. package/Libraries/NativeComponent/NativeComponentRegistry.js +1 -1
  175. package/Libraries/NativeModules/specs/NativeAnimationsDebugModule.js +3 -10
  176. package/Libraries/NativeModules/specs/NativeDevMenu.js +3 -13
  177. package/Libraries/NativeModules/specs/NativeDevSettings.js +3 -23
  178. package/Libraries/NativeModules/specs/NativeDeviceEventManager.js +3 -9
  179. package/Libraries/NativeModules/specs/NativeDialogManagerAndroid.js +3 -38
  180. package/Libraries/NativeModules/specs/NativeDialogManagerWindows.js +11 -0
  181. package/Libraries/NativeModules/specs/NativeLogBox.js +3 -10
  182. package/Libraries/NativeModules/specs/NativeRedBox.js +4 -11
  183. package/Libraries/NativeModules/specs/NativeSourceCode.js +2 -25
  184. package/Libraries/Network/FormData.js +3 -1
  185. package/Libraries/Network/NativeNetworkingAndroid.js +4 -28
  186. package/Libraries/Network/NativeNetworkingIOS.js +4 -28
  187. package/Libraries/NewAppScreen/components/DebugInstructions.windows.js +4 -2
  188. package/Libraries/NewAppScreen/components/ReloadInstructions.windows.js +3 -1
  189. package/Libraries/Performance/NativeJSCSamplingProfiler.js +3 -9
  190. package/Libraries/PermissionsAndroid/NativePermissionsAndroid.js +4 -68
  191. package/Libraries/PermissionsAndroid/PermissionsAndroid.js +3 -3
  192. package/Libraries/Pressability/Pressability.js +12 -2
  193. package/Libraries/Pressability/Pressability.windows.js +13 -3
  194. package/Libraries/Pressability/usePressability.js +7 -0
  195. package/Libraries/PushNotificationIOS/NativePushNotificationManagerIOS.js +4 -70
  196. package/Libraries/PushNotificationIOS/PushNotificationIOS.js +45 -39
  197. package/Libraries/ReactNative/AppContainer-dev.js +211 -0
  198. package/Libraries/ReactNative/AppContainer-prod.js +53 -0
  199. package/Libraries/ReactNative/AppContainer.js +6 -149
  200. package/Libraries/ReactNative/AppRegistry.js +3 -1
  201. package/Libraries/ReactNative/BridgelessUIManager.js +375 -128
  202. package/Libraries/ReactNative/FabricUIManager.js +6 -0
  203. package/Libraries/ReactNative/NativeHeadlessJsTaskSupport.js +3 -10
  204. package/Libraries/ReactNative/NativeI18nManager.js +3 -18
  205. package/Libraries/ReactNative/NativeUIManager.js +4 -112
  206. package/Libraries/ReactNative/PaperUIManager.js +8 -7
  207. package/Libraries/ReactNative/PaperUIManager.windows.js +29 -8
  208. package/Libraries/ReactNative/ReactFabricInternals.js +1 -1
  209. package/Libraries/ReactNative/ReactFabricPublicInstance/ReactFabricPublicInstance.js +24 -5
  210. package/Libraries/ReactNative/ReactNativeFeatureFlags.js +0 -45
  211. package/Libraries/ReactNative/RendererImplementation.js +11 -0
  212. package/Libraries/ReactNative/UIManager.d.ts +11 -34
  213. package/Libraries/ReactNative/UIManager.js +2 -23
  214. package/Libraries/ReactNative/UIManagerProperties.js +0 -2
  215. package/Libraries/ReactNative/__mocks__/FabricUIManager.js +23 -1
  216. package/Libraries/ReactNative/getNativeComponentAttributes.js +5 -1
  217. package/Libraries/ReactNative/renderApplication.js +9 -6
  218. package/Libraries/ReactPrivate/ReactNativePrivateInterface.js +6 -1
  219. package/Libraries/Renderer/implementations/ReactFabric-dev.js +24771 -21123
  220. package/Libraries/Renderer/implementations/ReactFabric-prod.js +4160 -3109
  221. package/Libraries/Renderer/implementations/ReactFabric-profiling.js +4384 -3322
  222. package/Libraries/Renderer/implementations/ReactNativeRenderer-dev.js +25194 -21398
  223. package/Libraries/Renderer/implementations/ReactNativeRenderer-prod.js +3763 -2636
  224. package/Libraries/Renderer/implementations/ReactNativeRenderer-profiling.js +4027 -2867
  225. package/Libraries/Renderer/shims/ReactNativeTypes.js +8 -9
  226. package/Libraries/Renderer/shims/ReactNativeViewConfigRegistry.js +7 -12
  227. package/Libraries/Settings/NativeSettingsManager.js +4 -16
  228. package/Libraries/Share/NativeShareModule.js +3 -13
  229. package/Libraries/StyleSheet/PlatformColorValueTypes.windows.js +1 -1
  230. package/Libraries/StyleSheet/StyleSheet.d.ts +1 -20
  231. package/Libraries/StyleSheet/StyleSheet.js +5 -28
  232. package/Libraries/StyleSheet/StyleSheetTypes.d.ts +51 -7
  233. package/Libraries/StyleSheet/StyleSheetTypes.js +19 -11
  234. package/Libraries/StyleSheet/flattenStyle.js +2 -2
  235. package/Libraries/StyleSheet/normalizeColor.js +1 -1
  236. package/Libraries/StyleSheet/processAspectRatio.js +1 -1
  237. package/Libraries/StyleSheet/processFontVariant.js +1 -1
  238. package/Libraries/Text/Text.js +0 -6
  239. package/Libraries/Text/Text.windows.js +0 -6
  240. package/Libraries/Text/TextAncestor.js +2 -3
  241. package/Libraries/TurboModule/samples/NativeSampleTurboModule.js +4 -41
  242. package/Libraries/Types/ReactDevToolsTypes.js +58 -0
  243. package/Libraries/Types/UIManagerJSInterface.js +16 -0
  244. package/Libraries/Utilities/DebugEnvironment.js +1 -4
  245. package/Libraries/Utilities/Dimensions.js +8 -16
  246. package/Libraries/Utilities/GlobalPerformanceLogger.js +1 -2
  247. package/Libraries/Utilities/NativeAppearance.js +3 -26
  248. package/Libraries/Utilities/NativeDevLoadingView.js +3 -14
  249. package/Libraries/Utilities/NativeDeviceInfo.js +2 -47
  250. package/Libraries/Utilities/NativePlatformConstantsAndroid.js +3 -34
  251. package/Libraries/Utilities/NativePlatformConstantsIOS.js +3 -26
  252. package/Libraries/Utilities/NativePlatformConstantsWin.js +3 -23
  253. package/Libraries/Utilities/PixelRatio.d.ts +4 -4
  254. package/Libraries/Utilities/Platform.android.js +4 -0
  255. package/Libraries/Utilities/Platform.d.ts +3 -0
  256. package/Libraries/Utilities/Platform.flow.js +7 -0
  257. package/Libraries/Utilities/Platform.flow.windows.js +9 -0
  258. package/Libraries/Utilities/Platform.ios.js +11 -0
  259. package/Libraries/Utilities/Platform.windows.js +6 -0
  260. package/Libraries/Utilities/binaryToBase64.js +1 -1
  261. package/Libraries/Utilities/codegenNativeComponent.js +4 -6
  262. package/Libraries/Utilities/createPerformanceLogger.js +2 -74
  263. package/Libraries/Utilities/useMergeRefs.js +5 -9
  264. package/Libraries/Vibration/NativeVibration.js +3 -14
  265. package/Libraries/WebSocket/NativeWebSocketModule.js +4 -25
  266. package/Libraries/YellowBox/YellowBoxDeprecated.js +1 -1
  267. package/Libraries/vendor/emitter/EventEmitter.js +1 -0
  268. package/Microsoft.ReactNative/AsynchronousEventBeat.cpp +50 -0
  269. package/Microsoft.ReactNative/AsynchronousEventBeat.h +23 -0
  270. package/Microsoft.ReactNative/Base/CoreUIManagers.cpp +4 -0
  271. package/Microsoft.ReactNative/Base/CxxReactIncludes.h +1 -1
  272. package/Microsoft.ReactNative/Base/FollyIncludes.h +2 -2
  273. package/Microsoft.ReactNative/ComponentView.idl +106 -0
  274. package/Microsoft.ReactNative/Composition.Input.idl +16 -2
  275. package/Microsoft.ReactNative/CompositionComponentView.idl +117 -0
  276. package/Microsoft.ReactNative/CompositionContext.idl +1 -1
  277. package/Microsoft.ReactNative/CompositionRootView.idl +8 -0
  278. package/Microsoft.ReactNative/CompositionSwitcher.idl +25 -14
  279. package/Microsoft.ReactNative/DevMenuControl.idl +0 -3
  280. package/Microsoft.ReactNative/DevMenuControl.xaml +0 -15
  281. package/Microsoft.ReactNative/Fabric/AbiComponentDescriptor.cpp +189 -0
  282. package/Microsoft.ReactNative/Fabric/AbiComponentDescriptor.h +80 -0
  283. package/Microsoft.ReactNative/Fabric/AbiShadowNode.cpp +83 -0
  284. package/Microsoft.ReactNative/Fabric/AbiShadowNode.h +83 -0
  285. package/Microsoft.ReactNative/Fabric/AbiState.cpp +71 -0
  286. package/Microsoft.ReactNative/Fabric/AbiState.h +38 -0
  287. package/Microsoft.ReactNative/Fabric/AbiViewComponentDescriptor.cpp +48 -19
  288. package/Microsoft.ReactNative/Fabric/AbiViewComponentDescriptor.h +8 -16
  289. package/Microsoft.ReactNative/Fabric/AbiViewProps.cpp +97 -0
  290. package/Microsoft.ReactNative/Fabric/AbiViewProps.h +39 -0
  291. package/Microsoft.ReactNative/Fabric/AbiViewShadowNode.cpp +90 -0
  292. package/Microsoft.ReactNative/Fabric/AbiViewShadowNode.h +87 -0
  293. package/Microsoft.ReactNative/Fabric/ComponentView.cpp +340 -0
  294. package/Microsoft.ReactNative/Fabric/ComponentView.h +130 -64
  295. package/Microsoft.ReactNative/Fabric/Composition/ActivityIndicatorComponentView.cpp +48 -24
  296. package/Microsoft.ReactNative/Fabric/Composition/ActivityIndicatorComponentView.h +18 -14
  297. package/Microsoft.ReactNative/Fabric/Composition/ComponentViewRegistry.cpp +42 -27
  298. package/Microsoft.ReactNative/Fabric/Composition/ComponentViewRegistry.h +3 -1
  299. package/Microsoft.ReactNative/Fabric/Composition/Composition.Input.cpp +123 -28
  300. package/Microsoft.ReactNative/Fabric/Composition/Composition.Input.h +69 -13
  301. package/Microsoft.ReactNative/Fabric/Composition/CompositionContextHelper.cpp +651 -284
  302. package/Microsoft.ReactNative/Fabric/Composition/CompositionContextHelper.h +7 -7
  303. package/Microsoft.ReactNative/Fabric/Composition/CompositionContextHelper_emptyimpl.cpp +9 -9
  304. package/Microsoft.ReactNative/Fabric/Composition/CompositionDynamicAutomationProvider.cpp +120 -31
  305. package/Microsoft.ReactNative/Fabric/Composition/CompositionDynamicAutomationProvider.h +12 -2
  306. package/Microsoft.ReactNative/Fabric/Composition/CompositionEventHandler.cpp +308 -129
  307. package/Microsoft.ReactNative/Fabric/Composition/CompositionEventHandler.h +34 -6
  308. package/Microsoft.ReactNative/Fabric/Composition/CompositionHelpers.h +2 -1
  309. package/Microsoft.ReactNative/Fabric/Composition/CompositionHwndHost.cpp +61 -54
  310. package/Microsoft.ReactNative/Fabric/Composition/CompositionHwndHost.h +0 -9
  311. package/Microsoft.ReactNative/Fabric/Composition/CompositionRootAutomationProvider.cpp +99 -30
  312. package/Microsoft.ReactNative/Fabric/Composition/CompositionRootAutomationProvider.h +4 -3
  313. package/Microsoft.ReactNative/Fabric/Composition/CompositionRootView.cpp +273 -28
  314. package/Microsoft.ReactNative/Fabric/Composition/CompositionRootView.h +28 -3
  315. package/Microsoft.ReactNative/Fabric/Composition/CompositionRootView_emptyimpl.cpp +7 -3
  316. package/Microsoft.ReactNative/Fabric/Composition/CompositionUIService.cpp +4 -0
  317. package/Microsoft.ReactNative/Fabric/Composition/CompositionViewComponentView.cpp +479 -280
  318. package/Microsoft.ReactNative/Fabric/Composition/CompositionViewComponentView.h +133 -79
  319. package/Microsoft.ReactNative/Fabric/Composition/DebuggingOverlayComponentView.cpp +113 -0
  320. package/Microsoft.ReactNative/Fabric/Composition/DebuggingOverlayComponentView.h +39 -0
  321. package/Microsoft.ReactNative/Fabric/Composition/ImageComponentView.cpp +61 -41
  322. package/Microsoft.ReactNative/Fabric/Composition/ImageComponentView.h +19 -14
  323. package/Microsoft.ReactNative/Fabric/Composition/Modal/WindowsModalHostViewComponentDescriptor.h +39 -0
  324. package/Microsoft.ReactNative/Fabric/Composition/Modal/WindowsModalHostViewComponentView.cpp +343 -0
  325. package/Microsoft.ReactNative/Fabric/Composition/Modal/WindowsModalHostViewComponentView.h +67 -0
  326. package/Microsoft.ReactNative/Fabric/Composition/Modal/WindowsModalHostViewShadowNode.cpp +18 -0
  327. package/Microsoft.ReactNative/Fabric/Composition/Modal/WindowsModalHostViewShadowNode.h +39 -0
  328. package/Microsoft.ReactNative/Fabric/Composition/ParagraphComponentView.cpp +53 -186
  329. package/Microsoft.ReactNative/Fabric/Composition/ParagraphComponentView.h +20 -12
  330. package/Microsoft.ReactNative/Fabric/Composition/ReactCompositionViewComponentBuilder.cpp +59 -150
  331. package/Microsoft.ReactNative/Fabric/Composition/ReactCompositionViewComponentBuilder.h +27 -76
  332. package/Microsoft.ReactNative/Fabric/Composition/RootComponentView.cpp +81 -32
  333. package/Microsoft.ReactNative/Fabric/Composition/RootComponentView.h +27 -14
  334. package/Microsoft.ReactNative/Fabric/Composition/ScrollViewComponentView.cpp +707 -64
  335. package/Microsoft.ReactNative/Fabric/Composition/ScrollViewComponentView.h +47 -26
  336. package/Microsoft.ReactNative/Fabric/Composition/SwitchComponentView.cpp +225 -125
  337. package/Microsoft.ReactNative/Fabric/Composition/SwitchComponentView.h +34 -21
  338. package/Microsoft.ReactNative/Fabric/Composition/TextDrawing.cpp +179 -0
  339. package/Microsoft.ReactNative/Fabric/Composition/TextDrawing.h +25 -0
  340. package/Microsoft.ReactNative/Fabric/Composition/TextInput/WindowsTextInputComponentDescriptor.h +110 -115
  341. package/Microsoft.ReactNative/Fabric/Composition/TextInput/WindowsTextInputComponentView.cpp +228 -79
  342. package/Microsoft.ReactNative/Fabric/Composition/TextInput/WindowsTextInputComponentView.h +43 -22
  343. package/Microsoft.ReactNative/Fabric/Composition/TextInput/WindowsTextInputEventEmitter.cpp +18 -0
  344. package/Microsoft.ReactNative/Fabric/Composition/TextInput/WindowsTextInputEventEmitter.h +12 -0
  345. package/Microsoft.ReactNative/Fabric/Composition/TextInput/WindowsTextInputProps.h +5 -5
  346. package/Microsoft.ReactNative/Fabric/Composition/TextInput/WindowsTextInputShadowNode.cpp +5 -1
  347. package/Microsoft.ReactNative/Fabric/Composition/TextInput/WindowsTextInputShadowNode.h +1 -2
  348. package/Microsoft.ReactNative/Fabric/Composition/TextInput/WindowsTextInputState.cpp +4 -44
  349. package/Microsoft.ReactNative/Fabric/Composition/TextInput/WindowsTextInputState.h +11 -9
  350. package/Microsoft.ReactNative/Fabric/Composition/Theme.cpp +550 -0
  351. package/Microsoft.ReactNative/Fabric/Composition/Theme.h +73 -0
  352. package/Microsoft.ReactNative/Fabric/Composition/Theme_emptyimpl.cpp +85 -0
  353. package/Microsoft.ReactNative/Fabric/Composition/UiaHelpers.cpp +48 -26
  354. package/Microsoft.ReactNative/Fabric/Composition/UiaHelpers.h +6 -2
  355. package/Microsoft.ReactNative/Fabric/Composition/UnimplementedNativeViewComponentView.cpp +30 -65
  356. package/Microsoft.ReactNative/Fabric/Composition/UnimplementedNativeViewComponentView.h +16 -25
  357. package/Microsoft.ReactNative/Fabric/FabricUIManagerModule.cpp +72 -88
  358. package/Microsoft.ReactNative/Fabric/FabricUIManagerModule.h +5 -2
  359. package/Microsoft.ReactNative/Fabric/IComponentViewRegistry.h +3 -2
  360. package/Microsoft.ReactNative/Fabric/ReactNativeConfigProperties.cpp +6 -6
  361. package/Microsoft.ReactNative/Fabric/ReactNativeConfigProperties.h +2 -2
  362. package/Microsoft.ReactNative/Fabric/ReactTaggedView.h +12 -7
  363. package/Microsoft.ReactNative/Fabric/WindowsComponentDescriptorRegistry.cpp +28 -19
  364. package/Microsoft.ReactNative/Fabric/WindowsComponentDescriptorRegistry.h +5 -0
  365. package/Microsoft.ReactNative/Fabric/platform/react/renderer/components/view/HostPlatformViewEventEmitter.cpp +0 -2
  366. package/Microsoft.ReactNative/Fabric/platform/react/renderer/components/view/HostPlatformViewTraitsInitializer.h +5 -1
  367. package/Microsoft.ReactNative/Fabric/platform/react/renderer/components/view/WindowsViewEvents.h +2 -4
  368. package/Microsoft.ReactNative/Fabric/platform/react/renderer/graphics/Float.h +20 -0
  369. package/Microsoft.ReactNative/Fabric/platform/react/renderer/graphics/HostPlatformColor.h +86 -0
  370. package/Microsoft.ReactNative/Fabric/platform/react/renderer/graphics/PlatformColorParser.h +38 -0
  371. package/Microsoft.ReactNative/Fabric/platform/react/renderer/graphics/{Color.cpp → PlatformColorUtils.cpp} +7 -77
  372. package/Microsoft.ReactNative/Fabric/platform/react/renderer/graphics/PlatformColorUtils.h +12 -0
  373. package/Microsoft.ReactNative/Fabric/platform/react/renderer/textlayoutmanager/TextLayoutManager.cpp +1 -0
  374. package/Microsoft.ReactNative/Fabric/platform/react/renderer/textlayoutmanager/TextLayoutManager.h +2 -0
  375. package/Microsoft.ReactNative/IReactCompositionViewComponentBuilder.idl +6 -87
  376. package/Microsoft.ReactNative/IReactContext.idl +3 -0
  377. package/Microsoft.ReactNative/IReactViewComponentBuilder.idl +71 -1
  378. package/Microsoft.ReactNative/JsiApi.cpp +17 -7
  379. package/Microsoft.ReactNative/JsiApi.h +2 -2
  380. package/Microsoft.ReactNative/JsiApi.idl +5 -4
  381. package/Microsoft.ReactNative/Microsoft.ReactNative.vcxproj +13 -22
  382. package/Microsoft.ReactNative/Microsoft.ReactNative.vcxproj.filters +6 -2
  383. package/Microsoft.ReactNative/Modules/AccessibilityInfoModule.h +1 -1
  384. package/Microsoft.ReactNative/Modules/AlertModule.h +2 -2
  385. package/Microsoft.ReactNative/Modules/Animated/PropsAnimatedNode.cpp +12 -8
  386. package/Microsoft.ReactNative/Modules/Animated/PropsAnimatedNode.h +1 -1
  387. package/Microsoft.ReactNative/Modules/AppStateModule.h +2 -2
  388. package/Microsoft.ReactNative/Modules/AppThemeModuleUwp.cpp +5 -3
  389. package/Microsoft.ReactNative/Modules/AppThemeModuleUwp.h +4 -4
  390. package/Microsoft.ReactNative/Modules/AppearanceModule.cpp +10 -1
  391. package/Microsoft.ReactNative/Modules/ClipboardModule.h +1 -1
  392. package/Microsoft.ReactNative/Modules/DeviceInfoModule.cpp +71 -38
  393. package/Microsoft.ReactNative/Modules/DeviceInfoModule.h +5 -5
  394. package/Microsoft.ReactNative/Modules/ExceptionsManager.cpp +110 -0
  395. package/Microsoft.ReactNative/Modules/ExceptionsManager.h +54 -0
  396. package/Microsoft.ReactNative/Modules/ImageViewManagerModule.h +11 -10
  397. package/Microsoft.ReactNative/Modules/LinkingManagerModule.h +8 -6
  398. package/Microsoft.ReactNative/Modules/LogBoxModule.h +3 -3
  399. package/Microsoft.ReactNative/Modules/NativeUIManager.cpp +5 -28
  400. package/Microsoft.ReactNative/Modules/NativeUIManager.h +1 -1
  401. package/Microsoft.ReactNative/Modules/PaperUIManagerModule.cpp +8 -5
  402. package/Microsoft.ReactNative/Modules/PaperUIManagerModule.h +3 -3
  403. package/Microsoft.ReactNative/Modules/PlatformConstantsWinModule.cpp +49 -0
  404. package/Microsoft.ReactNative/Modules/PlatformConstantsWinModule.h +18 -0
  405. package/Microsoft.ReactNative/Modules/SourceCode.cpp +31 -0
  406. package/Microsoft.ReactNative/Modules/SourceCode.h +28 -0
  407. package/Microsoft.ReactNative/Modules/StatusBarManager.h +12 -0
  408. package/Microsoft.ReactNative/Modules/Timing.cpp +325 -0
  409. package/Microsoft.ReactNative/Modules/Timing.h +121 -0
  410. package/Microsoft.ReactNative/QuirkSettings.cpp +32 -0
  411. package/Microsoft.ReactNative/QuirkSettings.h +9 -0
  412. package/Microsoft.ReactNative/QuirkSettings.idl +6 -0
  413. package/Microsoft.ReactNative/ReactCoreInjection.cpp +15 -0
  414. package/Microsoft.ReactNative/ReactCoreInjection.h +4 -0
  415. package/Microsoft.ReactNative/ReactCoreInjection.idl +8 -0
  416. package/Microsoft.ReactNative/ReactHost/IReactInstance.h +1 -1
  417. package/Microsoft.ReactNative/ReactHost/MsoReactContext.cpp +1 -1
  418. package/Microsoft.ReactNative/ReactHost/ReactInstanceWin.cpp +556 -234
  419. package/Microsoft.ReactNative/ReactHost/ReactInstanceWin.h +36 -9
  420. package/Microsoft.ReactNative/ReactInstanceSettings.idl +3 -0
  421. package/Microsoft.ReactNative/ReactPointerEventArgs.cpp +8 -0
  422. package/Microsoft.ReactNative/ReactPointerEventArgs.h +4 -0
  423. package/Microsoft.ReactNative/ReactPointerEventArgs.idl +12 -0
  424. package/Microsoft.ReactNative/SchedulerSettings.cpp +23 -0
  425. package/Microsoft.ReactNative/SchedulerSettings.h +9 -1
  426. package/Microsoft.ReactNative/SynchronousEventBeat.cpp +41 -0
  427. package/Microsoft.ReactNative/SynchronousEventBeat.h +29 -0
  428. package/Microsoft.ReactNative/Theme.idl +57 -0
  429. package/Microsoft.ReactNative/Timer.cpp +63 -0
  430. package/Microsoft.ReactNative/{CoreAppPage.h → Timer.h} +12 -5
  431. package/Microsoft.ReactNative/Timer.idl +34 -0
  432. package/Microsoft.ReactNative/TurboModulesProvider.cpp +4 -0
  433. package/Microsoft.ReactNative/Utils/ImageUtils.cpp +37 -3
  434. package/Microsoft.ReactNative/Utils/ImageUtils.h +0 -1
  435. package/Microsoft.ReactNative/Utils/LocalBundleReader.cpp +11 -12
  436. package/Microsoft.ReactNative/Utils/LocalBundleReader.h +3 -3
  437. package/Microsoft.ReactNative/Utils/ThemeUtils.cpp +33 -0
  438. package/Microsoft.ReactNative/Utils/ThemeUtils.h +13 -0
  439. package/Microsoft.ReactNative/Utils/ValueUtils.cpp +0 -5
  440. package/Microsoft.ReactNative/Utils/ValueUtils.h +0 -3
  441. package/Microsoft.ReactNative/ViewProps.idl +17 -0
  442. package/Microsoft.ReactNative/Views/ActivityIndicatorViewManager.cpp +1 -0
  443. package/Microsoft.ReactNative/Views/DebuggingOverlayViewManager.cpp +54 -0
  444. package/Microsoft.ReactNative/Views/DebuggingOverlayViewManager.h +30 -0
  445. package/Microsoft.ReactNative/Views/DevMenu.cpp +1 -20
  446. package/Microsoft.ReactNative/Views/DynamicAutomationPeer.cpp +157 -0
  447. package/Microsoft.ReactNative/Views/DynamicAutomationPeer.h +5 -0
  448. package/Microsoft.ReactNative/Views/DynamicAutomationProperties.cpp +20 -0
  449. package/Microsoft.ReactNative/Views/DynamicAutomationProperties.h +4 -0
  450. package/Microsoft.ReactNative/Views/FlyoutViewManager.cpp +1 -5
  451. package/Microsoft.ReactNative/Views/FrameworkElementViewManager.cpp +137 -0
  452. package/Microsoft.ReactNative/Views/ICompositionRootView.h +0 -1
  453. package/Microsoft.ReactNative/Views/Image/ImageViewManager.cpp +0 -5
  454. package/Microsoft.ReactNative/Views/PopupViewManager.cpp +1 -5
  455. package/Microsoft.ReactNative/Views/ShadowNodeBase.cpp +11 -0
  456. package/Microsoft.ReactNative/Views/ShadowNodeBase.h +3 -4
  457. package/Microsoft.ReactNative/Views/TextInputViewManager.cpp +0 -6
  458. package/Microsoft.ReactNative/Views/TextViewManager.cpp +0 -11
  459. package/Microsoft.ReactNative/Views/TouchEventHandler.cpp +1 -1
  460. package/Microsoft.ReactNative/Views/UnimplementedViewManager.cpp +79 -0
  461. package/Microsoft.ReactNative/Views/UnimplementedViewManager.h +27 -0
  462. package/Microsoft.ReactNative/Views/ViewManagerBase.cpp +46 -0
  463. package/Microsoft.ReactNative/Views/ViewManagerBase.h +1 -1
  464. package/Microsoft.ReactNative/Views/cppwinrt/DynamicAutomationPeer.idl +77 -2
  465. package/Microsoft.ReactNative/microsoft.reactnative.def +0 -3
  466. package/Microsoft.ReactNative/packages.lock.json +9 -6
  467. package/{Shared/Composition → Microsoft.ReactNative.Cxx}/AutoDraw.h +2 -0
  468. package/{Shared/Composition → Microsoft.ReactNative.Cxx}/CompositionSwitcher.interop.h +4 -10
  469. package/Microsoft.ReactNative.Cxx/CppWinRTIncludes.h +0 -5
  470. package/Microsoft.ReactNative.Cxx/DesktopWindowBridge.h +5 -0
  471. package/Microsoft.ReactNative.Cxx/JSI/JsiAbiApi.cpp +19 -10
  472. package/Microsoft.ReactNative.Cxx/JSI/JsiAbiApi.h +2 -0
  473. package/Microsoft.ReactNative.Cxx/JSValueComposition.h +22 -0
  474. package/Microsoft.ReactNative.Cxx/JSValueReader.h +19 -0
  475. package/Microsoft.ReactNative.Cxx/JSValueXaml.h +1 -1
  476. package/Microsoft.ReactNative.Cxx/Microsoft.ReactNative.Cxx.vcxitems +6 -4
  477. package/Microsoft.ReactNative.Cxx/Microsoft.ReactNative.Cxx.vcxitems.filters +0 -1
  478. package/Microsoft.ReactNative.Cxx/NativeModules.h +15 -15
  479. package/Microsoft.ReactNative.Cxx/TurboModuleProvider.cpp +1 -1
  480. package/Microsoft.ReactNative.Managed/ReactSettingsSnapshot.cs +2 -0
  481. package/Microsoft.ReactNative.Managed/packages.lock.json +6 -3
  482. package/Microsoft.ReactNative.Managed.CodeGen/Microsoft.ReactNative.Managed.CodeGen.csproj +0 -1
  483. package/Mso/future/details/executor.h +1 -1
  484. package/Mso/src/debugAssertApi/debugAssertApi.cpp +1 -1
  485. package/PropertySheets/External/Microsoft.ReactNative.Composition.Common.props +8 -0
  486. package/PropertySheets/External/Microsoft.ReactNative.Composition.CppLib.props +24 -0
  487. package/PropertySheets/External/Microsoft.ReactNative.Composition.CppLib.targets +20 -0
  488. package/PropertySheets/External/Microsoft.ReactNative.Cpp.Dependencies.props +1 -1
  489. package/PropertySheets/External/Microsoft.ReactNative.WindowsSdk.Default.props +2 -0
  490. package/PropertySheets/Generated/PackageVersion.g.props +4 -4
  491. package/PropertySheets/JSEngine.props +0 -8
  492. package/PropertySheets/React.Cpp.props +14 -3
  493. package/PropertySheets/ReactCommunity.cpp.props +2 -2
  494. package/PropertySheets/Release.props +0 -1
  495. package/PropertySheets/WinUI.props +21 -1
  496. package/PropertySheets/x64.props +3 -0
  497. package/PropertySheets/x86.props +3 -0
  498. package/ReactCommon/ReactCommon.vcxproj +13 -8
  499. package/ReactCommon/ReactCommon.vcxproj.filters +12 -1
  500. package/ReactCommon/TEMP_UntilReactCommonUpdate/jsi/jsi/test/testlib.cpp +114 -19
  501. package/ReactCommon/TEMP_UntilReactCommonUpdate/react/nativemodule/core/ReactCommon/TurboModule.cpp +66 -0
  502. package/ReactCommon/TEMP_UntilReactCommonUpdate/react/nativemodule/core/ReactCommon/TurboModuleBinding.cpp +114 -52
  503. package/ReactCommon/TEMP_UntilReactCommonUpdate/react/nativemodule/core/ReactCommon/TurboModuleUtils.h +13 -15
  504. package/ReactCommon/TEMP_UntilReactCommonUpdate/react/renderer/components/scrollview/ScrollViewProps.cpp +535 -0
  505. package/ReactCommon/TEMP_UntilReactCommonUpdate/react/runtime/ReactInstance.cpp +437 -0
  506. package/ReactCommon/TEMP_UntilReactCommonUpdate/react/utils/jsi-utils.cpp +39 -0
  507. package/ReactCommon/TEMP_UntilReactCommonUpdate/react/utils/jsi-utils.h +31 -0
  508. package/ReactCommon/TEMP_UntilReactCommonUpdate/yoga/yoga/YGEnums.h +19 -24
  509. package/ReactCommon/TEMP_UntilReactCommonUpdate/yoga/yoga/algorithm/CalculateLayout.cpp +600 -980
  510. package/ReactCommon/TEMP_UntilReactCommonUpdate/yoga/yoga/enums/ExperimentalFeature.h +5 -11
  511. package/ReactCommon/cgmanifest.json +1 -1
  512. package/Scripts/EnableInternalWinAppSDKFeed.ps1 +21 -0
  513. package/Scripts/IntegrationTests.ps1 +26 -15
  514. package/Scripts/Microsoft.ReactNative.targets +0 -6
  515. package/Scripts/OfficeReact.Win32.nuspec +1 -2
  516. package/Scripts/TestServers.ps1 +2 -28
  517. package/Scripts/Tfs/Start-TestServers.ps1 +1 -21
  518. package/Scripts/Tfs/Stop-TestServers.ps1 +0 -5
  519. package/Scripts/rnw-dependencies.ps1 +38 -67
  520. package/Shared/CreateInstance.h +25 -0
  521. package/Shared/DevServerHelper.h +0 -3
  522. package/Shared/DevSettings.h +9 -0
  523. package/Shared/HermesRuntimeHolder.cpp +17 -0
  524. package/Shared/HermesRuntimeHolder.h +17 -0
  525. package/Shared/HermesSamplingProfiler.cpp +12 -10
  526. package/Shared/HermesSamplingProfiler.h +5 -4
  527. package/Shared/IDevSupportManager.h +4 -2
  528. package/Shared/InstanceManager.cpp +13 -11
  529. package/Shared/InstanceManager.h +8 -18
  530. package/Shared/JSI/ChakraRuntime.cpp +66 -9
  531. package/Shared/JSI/ChakraRuntime.h +8 -0
  532. package/Shared/JSI/JSExecutorFactoryDelegate.h +12 -0
  533. package/Shared/JSI/JSExecutorFactorySettings.cpp +30 -0
  534. package/Shared/JSI/JSExecutorFactorySettings.h +21 -0
  535. package/Shared/Modules/BlobModule.h +1 -1
  536. package/Shared/Modules/FileReaderModule.h +1 -1
  537. package/Shared/Modules/HttpModule.h +1 -1
  538. package/Shared/Modules/WebSocketTurboModule.h +1 -1
  539. package/Shared/OInstance.cpp +212 -165
  540. package/Shared/OInstance.h +19 -0
  541. package/Shared/Shared.vcxitems +134 -50
  542. package/Shared/Shared.vcxitems.filters +81 -24
  543. package/Shared/Utils.cpp +12 -10
  544. package/Shared/Utils.h +2 -2
  545. package/Shared/WebSocketJSExecutorFactory.h +1 -0
  546. package/codegen/NativeBugReportingSpec.g.h +0 -6
  547. package/codegen/NativeFrameRateLoggerSpec.g.h +0 -2
  548. package/codegen/NativeImageLoaderAndroidSpec.g.h +10 -23
  549. package/codegen/NativePerformanceObserverSpec.g.h +6 -0
  550. package/codegen/NativePlatformConstantsIOSSpec.g.h +2 -0
  551. package/codegen/NativePlatformConstantsWinSpec.g.h +17 -0
  552. package/codegen/NativePushNotificationManagerIOSSpec.g.h +8 -6
  553. package/codegen/NativeReactNativeFeatureFlagsSpec.g.h +88 -0
  554. package/codegen/NativeUIManagerSpec.g.h +83 -95
  555. package/codegen/react/components/rnwcore/ComponentDescriptors.h +9 -7
  556. package/codegen/react/components/rnwcore/EventEmitters.cpp +35 -56
  557. package/codegen/react/components/rnwcore/EventEmitters.h +58 -85
  558. package/codegen/react/components/rnwcore/Props.cpp +53 -95
  559. package/codegen/react/components/rnwcore/Props.h +188 -239
  560. package/codegen/react/components/rnwcore/ShadowNodes.cpp +5 -7
  561. package/codegen/react/components/rnwcore/ShadowNodes.h +27 -29
  562. package/codegen/react/components/rnwcore/States.cpp +3 -5
  563. package/codegen/react/components/rnwcore/States.h +17 -19
  564. package/codegen/rnwcoreJSI-generated.cpp +1442 -1398
  565. package/codegen/rnwcoreJSI.h +6066 -3593
  566. package/index.js +61 -99
  567. package/index.windows.js +60 -102
  568. package/jest/assetFileTransformer.js +1 -1
  569. package/jest/local-setup.js +0 -5
  570. package/jest/mockModal.js +2 -1
  571. package/jest/mockScrollView.js +1 -2
  572. package/jest/renderer.js +1 -1
  573. package/jest/setup.js +6 -3
  574. package/just-task.js +1 -1
  575. package/package.json +31 -29
  576. package/{Libraries/Core → src/private/core}/setUpDOM.js +2 -2
  577. package/src/private/featureflags/NativeReactNativeFeatureFlags.js +42 -0
  578. package/src/private/featureflags/ReactNativeFeatureFlags.js +140 -0
  579. package/src/private/featureflags/ReactNativeFeatureFlagsBase.js +84 -0
  580. package/src/private/featureflags/__tests__/ReactNativeFeatureFlags-test.js +92 -0
  581. package/src/private/specs/components/ActivityIndicatorViewNativeComponent.js +53 -0
  582. package/src/private/specs/components/AndroidDrawerLayoutNativeComponent.js +124 -0
  583. package/src/private/specs/components/AndroidHorizontalScrollContentViewNativeComponent.js +26 -0
  584. package/src/private/specs/components/AndroidSwipeRefreshLayoutNativeComponent.js +74 -0
  585. package/src/private/specs/components/AndroidSwitchNativeComponent.js +62 -0
  586. package/src/private/specs/components/DebuggingOverlayNativeComponent.js +61 -0
  587. package/src/private/specs/components/ProgressBarAndroidNativeComponent.js +36 -0
  588. package/src/private/specs/components/PullToRefreshViewNativeComponent.js +71 -0
  589. package/src/private/specs/components/RCTInputAccessoryViewNativeComponent.js +26 -0
  590. package/src/private/specs/components/RCTModalHostViewNativeComponent.js +139 -0
  591. package/src/private/specs/components/RCTSafeAreaViewNativeComponent.js +25 -0
  592. package/src/private/specs/components/SwitchNativeComponent.js +61 -0
  593. package/src/private/specs/components/UnimplementedNativeViewNativeComponent.js +26 -0
  594. package/src/private/specs/modules/NativeAccessibilityInfo.js +33 -0
  595. package/src/private/specs/modules/NativeAccessibilityManager.js +66 -0
  596. package/src/private/specs/modules/NativeActionSheetManager.js +54 -0
  597. package/src/private/specs/modules/NativeAlertManager.js +35 -0
  598. package/src/private/specs/modules/NativeAnimatedModule.js +77 -0
  599. package/src/private/specs/modules/NativeAnimatedTurboModule.js +78 -0
  600. package/src/private/specs/modules/NativeAnimationsDebugModule.js +20 -0
  601. package/src/private/specs/modules/NativeAppState.js +33 -0
  602. package/src/private/specs/modules/NativeAppTheme.js +33 -0
  603. package/src/private/specs/modules/NativeAppearance.js +36 -0
  604. package/src/private/specs/modules/NativeBlobModule.js +59 -0
  605. package/src/private/specs/modules/NativeBugReporting.js +20 -0
  606. package/src/private/specs/modules/NativeClipboard.js +21 -0
  607. package/src/private/specs/modules/NativeDevLoadingView.js +24 -0
  608. package/src/private/specs/modules/NativeDevMenu.js +23 -0
  609. package/src/private/specs/modules/NativeDevSettings.js +33 -0
  610. package/src/private/specs/modules/NativeDevToolsSettingsManager.js +24 -0
  611. package/src/private/specs/modules/NativeDeviceEventManager.js +19 -0
  612. package/src/private/specs/modules/NativeDeviceInfo.js +58 -0
  613. package/src/private/specs/modules/NativeDialogManagerAndroid.js +48 -0
  614. package/{Libraries/Alert → src/private/specs/modules}/NativeDialogManagerWindows.js +5 -4
  615. package/src/private/specs/modules/NativeExceptionsManager.js +103 -0
  616. package/src/private/specs/modules/NativeFileReaderModule.js +22 -0
  617. package/src/private/specs/modules/NativeFrameRateLogger.js +22 -0
  618. package/src/private/specs/modules/NativeHeadlessJsTaskSupport.js +20 -0
  619. package/src/private/specs/modules/NativeI18nManager.js +28 -0
  620. package/src/private/specs/modules/NativeImageEditor.js +52 -0
  621. package/src/private/specs/modules/NativeImageLoaderAndroid.js +30 -0
  622. package/src/private/specs/modules/NativeImageLoaderIOS.js +37 -0
  623. package/src/private/specs/modules/NativeImageStoreAndroid.js +26 -0
  624. package/src/private/specs/modules/NativeImageStoreIOS.js +33 -0
  625. package/src/private/specs/modules/NativeIntentAndroid.js +30 -0
  626. package/src/private/specs/modules/NativeIntersectionObserver.js +41 -0
  627. package/src/private/specs/modules/NativeJSCHeapCapture.js +19 -0
  628. package/src/private/specs/modules/NativeJSCSamplingProfiler.js +19 -0
  629. package/src/private/specs/modules/NativeKeyboardObserver.js +20 -0
  630. package/src/private/specs/modules/NativeLinkingManager.js +27 -0
  631. package/src/private/specs/modules/NativeLogBox.js +20 -0
  632. package/src/private/specs/modules/NativeModalManager.js +21 -0
  633. package/src/private/specs/modules/NativeMutationObserver.js +58 -0
  634. package/src/private/specs/modules/NativeNetworkingAndroid.js +37 -0
  635. package/src/private/specs/modules/NativeNetworkingIOS.js +37 -0
  636. package/src/private/specs/modules/NativePermissionsAndroid.js +77 -0
  637. package/src/private/specs/modules/NativePlatformConstantsAndroid.js +44 -0
  638. package/src/private/specs/modules/NativePlatformConstantsIOS.js +37 -0
  639. package/src/private/specs/modules/NativePlatformConstantsWin.js +38 -0
  640. package/src/private/specs/modules/NativePushNotificationManagerIOS.js +107 -0
  641. package/src/private/specs/modules/NativeRedBox.js +20 -0
  642. package/src/private/specs/modules/NativeSampleTurboModule.js +53 -0
  643. package/src/private/specs/modules/NativeSegmentFetcher.js +28 -0
  644. package/src/private/specs/modules/NativeSettingsManager.js +25 -0
  645. package/src/private/specs/modules/NativeShareModule.js +23 -0
  646. package/src/private/specs/modules/NativeSoundManager.js +22 -0
  647. package/src/private/specs/modules/NativeSourceCode.js +36 -0
  648. package/src/private/specs/modules/NativeStatusBarManagerAndroid.js +68 -0
  649. package/src/private/specs/modules/NativeStatusBarManagerIOS.js +89 -0
  650. package/src/private/specs/modules/NativeTiming.js +26 -0
  651. package/src/private/specs/modules/NativeToastAndroid.js +38 -0
  652. package/src/private/specs/modules/NativeUIManager.js +118 -0
  653. package/src/private/specs/modules/NativeVibration.js +24 -0
  654. package/src/private/specs/modules/NativeWebSocketModule.js +34 -0
  655. package/{Libraries/DOM/Nodes → src/private/webapis/dom/nodes}/ReactNativeElement.js +6 -6
  656. package/{Libraries/DOM/Nodes → src/private/webapis/dom/nodes}/ReadOnlyCharacterData.js +2 -2
  657. package/{Libraries/DOM/Nodes → src/private/webapis/dom/nodes}/ReadOnlyElement.js +5 -5
  658. package/{Libraries/DOM/Nodes → src/private/webapis/dom/nodes}/ReadOnlyNode.js +19 -10
  659. package/{Libraries/DOM/OldStyleCollections → src/private/webapis/dom/oldstylecollections}/DOMRectList.js +1 -1
  660. package/src/private/webapis/dom/oldstylecollections/__tests__/DOMRectList-test.js +85 -0
  661. package/src/private/webapis/dom/oldstylecollections/__tests__/HTMLCollection-test.js +80 -0
  662. package/src/private/webapis/dom/oldstylecollections/__tests__/NodeList-test.js +161 -0
  663. package/{Libraries/WebPerformance → src/private/webapis/performance}/NativePerformance.js +2 -2
  664. package/{Libraries/WebPerformance → src/private/webapis/performance}/NativePerformanceObserver.js +3 -2
  665. package/{Libraries/WebPerformance → src/private/webapis/performance}/Performance.js +2 -2
  666. package/{Libraries/WebPerformance → src/private/webapis/performance}/PerformanceEventTiming.js +1 -1
  667. package/{Libraries/WebPerformance → src/private/webapis/performance}/PerformanceObserver.js +21 -2
  668. package/{Libraries/WebPerformance → src/private/webapis/performance}/RawPerformanceEntry.js +1 -1
  669. package/{Libraries/WebPerformance → src/private/webapis/performance}/__mocks__/NativePerformanceObserver.js +9 -0
  670. package/src/private/webapis/performance/__tests__/EventCounts-test.js +116 -0
  671. package/src/private/webapis/performance/__tests__/NativePerformanceMock-test.js +82 -0
  672. package/src/private/webapis/performance/__tests__/NativePerformanceObserverMock-test.js +108 -0
  673. package/src/private/webapis/performance/__tests__/Performance-test.js +117 -0
  674. package/src/private/webapis/performance/__tests__/PerformanceObserver-test.js +208 -0
  675. package/template/cpp-app/src/App.cpp +2 -2
  676. package/template/cs-app/src/App.xaml.cs +2 -2
  677. package/templates/cpp-app/jest.config.windows.js +3 -0
  678. package/templates/cpp-app/metro.config.js +0 -2
  679. package/templates/cpp-app/template.config.js +24 -9
  680. package/templates/cpp-app/windows/ExperimentalFeatures.props +1 -1
  681. package/templates/cpp-app/windows/MyApp/AutolinkedNativeModules.g.cpp +13 -0
  682. package/templates/cpp-app/windows/MyApp/AutolinkedNativeModules.g.h +10 -0
  683. package/templates/cpp-app/windows/MyApp/MyApp.cpp +134 -249
  684. package/templates/cpp-app/windows/MyApp/MyApp.vcxproj +12 -11
  685. package/templates/cpp-app/windows/MyApp/MyApp.vcxproj.filters +6 -3
  686. package/templates/cpp-app/windows/MyApp/pch.h +12 -9
  687. package/templates/cpp-app/windows/MyApp/resource.h +0 -1
  688. package/templates/cpp-app/windows/MyApp.sln +26 -26
  689. package/templates/cpp-lib/example/metro.config.js +74 -0
  690. package/templates/cpp-lib/template.config.js +235 -0
  691. package/templates/cpp-lib/windows/ExperimentalFeatures.props +11 -0
  692. package/templates/cpp-lib/windows/MyLib/MyLib.cpp +18 -0
  693. package/templates/cpp-lib/windows/MyLib/MyLib.def +3 -0
  694. package/templates/cpp-lib/windows/MyLib/MyLib.h +31 -0
  695. package/templates/cpp-lib/windows/MyLib/MyLib.rc +0 -0
  696. package/templates/cpp-lib/windows/MyLib/MyLib.vcxproj +148 -0
  697. package/templates/cpp-lib/windows/MyLib/MyLib.vcxproj.filters +44 -0
  698. package/templates/cpp-lib/windows/MyLib/ReactPackageProvider.cpp +20 -0
  699. package/templates/cpp-lib/windows/MyLib/ReactPackageProvider.h +24 -0
  700. package/templates/cpp-lib/windows/MyLib/ReactPackageProvider.idl +9 -0
  701. package/templates/cpp-lib/windows/MyLib/pch.cpp +1 -0
  702. package/templates/cpp-lib/windows/MyLib/pch.h +30 -0
  703. package/templates/cpp-lib/windows/MyLib/resource.h +5 -0
  704. package/templates/cpp-lib/windows/MyLib/targetver.h +8 -0
  705. package/templates/cpp-lib/windows/MyLib.sln +156 -0
  706. package/templates/cpp-lib/windows/_gitignore +41 -0
  707. package/templates/templateUtils.js +137 -0
  708. package/types/index.d.ts +1 -0
  709. package/types/modules/globals.d.ts +1 -0
  710. package/Folly/TEMP_UntilFollyUpdate/hash/Hash.h +0 -1016
  711. package/Libraries/Components/Button.flow.js +0 -265
  712. package/Libraries/Components/DrawerAndroid/DrawerLayoutAndroid.windows.js +0 -8
  713. package/Libraries/Components/ProgressBarAndroid/ProgressBarAndroid.windows.js +0 -14
  714. package/Libraries/Components/SafeAreaView/SafeAreaView.windows.js +0 -34
  715. package/Libraries/Components/ScrollView/ScrollView.windows.js +0 -1941
  716. package/Libraries/Components/ScrollView/ScrollViewViewConfig.js +0 -85
  717. package/Libraries/Components/ToastAndroid/ToastAndroid.windows.js +0 -45
  718. package/Libraries/Components/Touchable/Touchable.flow.js +0 -284
  719. package/Libraries/Components/TraceUpdateOverlay/TraceUpdateOverlay.js +0 -189
  720. package/Libraries/Components/TraceUpdateOverlay/TraceUpdateOverlayNativeComponent.js +0 -43
  721. package/Libraries/Image/Image.flow.js +0 -64
  722. package/Libraries/Inspector/DevtoolsOverlay.js +0 -223
  723. package/Libraries/Performance/QuickPerformanceLogger.js +0 -142
  724. package/Libraries/Settings/Settings.windows.js +0 -28
  725. package/Microsoft.ReactNative/CoreApp.cpp +0 -303
  726. package/Microsoft.ReactNative/CoreAppPage.cpp +0 -21
  727. package/Microsoft.ReactNative/CoreAppPage.idl +0 -12
  728. package/Microsoft.ReactNative/CoreAppPage.xaml +0 -14
  729. package/Microsoft.ReactNative/Fabric/Composition/AbiCompositionViewComponentView.cpp +0 -197
  730. package/Microsoft.ReactNative/Fabric/Composition/AbiCompositionViewComponentView.h +0 -84
  731. package/Microsoft.ReactNative/Fabric/platform/react/renderer/components/rnwcore/EventEmitters.h +0 -5
  732. package/Microsoft.ReactNative/Fabric/platform/react/renderer/components/rnwcore/Props.h +0 -5
  733. package/Microsoft.ReactNative/Fabric/platform/react/renderer/components/rnwcore/ShadowNodes.h +0 -5
  734. package/Microsoft.ReactNative/Fabric/platform/react/renderer/components/rnwcore/States.h +0 -5
  735. package/Microsoft.ReactNative/Fabric/platform/react/renderer/core/graphicsConversions.h +0 -245
  736. package/Microsoft.ReactNative/Fabric/platform/react/renderer/graphics/Color.h +0 -134
  737. package/Microsoft.ReactNative/Fabric/platform/react/renderer/graphics/conversions.h +0 -27
  738. package/Microsoft.ReactNative/Modules/TimingModule.cpp +0 -229
  739. package/Microsoft.ReactNative/Modules/TimingModule.h +0 -88
  740. package/Microsoft.ReactNative.Cxx/CoreApp.h +0 -60
  741. package/ReactCommon/TEMP_UntilReactCommonUpdate/react/bridging/LongLivedObject.cpp +0 -60
  742. package/ReactCommon/TEMP_UntilReactCommonUpdate/react/bridging/LongLivedObject.h +0 -60
  743. package/ReactCommon/TEMP_UntilReactCommonUpdate/react/nativemodule/core/ReactCommon/TurboModuleBinding.h +0 -63
  744. package/ReactCommon/TEMP_UntilReactCommonUpdate/react/renderer/components/view/YogaLayoutableShadowNode.cpp +0 -1038
  745. package/ReactCommon/TEMP_UntilReactCommonUpdate/react/renderer/components/view/YogaStylableProps.cpp +0 -503
  746. package/ReactCommon/TEMP_UntilReactCommonUpdate/react/renderer/components/view/conversions.h +0 -895
  747. package/ReactCommon/TEMP_UntilReactCommonUpdate/react/renderer/mapbuffer/MapBufferBuilder.cpp +0 -182
  748. package/ReactCommon/TEMP_UntilReactCommonUpdate/react/renderer/mounting/ShadowTree.cpp +0 -543
  749. package/ReactCommon/TEMP_UntilReactCommonUpdate/react/renderer/uimanager/UIManagerBinding.cpp +0 -1505
  750. package/ReactCommon/TEMP_UntilReactCommonUpdate/yoga/yoga/bits/NumericBitfield.h +0 -67
  751. package/ReactCommon/TEMP_UntilReactCommonUpdate/yoga/yoga/config/Config.h +0 -93
  752. package/ReactCommon/TEMP_UntilReactCommonUpdate/yoga/yoga/node/LayoutResults.h +0 -88
  753. package/ReactCommon/TEMP_UntilReactCommonUpdate/yoga/yoga/node/Node.cpp +0 -606
  754. package/ReactCommon/TEMP_UntilReactCommonUpdate/yoga/yoga/node/Node.h +0 -344
  755. package/ReactCommon/Yoga.cpp +0 -961
  756. /package/{Libraries/DOM/Geometry → src/private/webapis/dom/geometry}/DOMRect.js +0 -0
  757. /package/{Libraries/DOM/Geometry → src/private/webapis/dom/geometry}/DOMRectReadOnly.js +0 -0
  758. /package/{Libraries/DOM/Nodes → src/private/webapis/dom/nodes}/ReadOnlyText.js +0 -0
  759. /package/{Libraries/DOM/Nodes/Utilities → src/private/webapis/dom/nodes/utilities}/Traversal.js +0 -0
  760. /package/{Libraries/DOM/OldStyleCollections → src/private/webapis/dom/oldstylecollections}/ArrayLikeUtils.js +0 -0
  761. /package/{Libraries/DOM/OldStyleCollections → src/private/webapis/dom/oldstylecollections}/HTMLCollection.js +0 -0
  762. /package/{Libraries/DOM/OldStyleCollections → src/private/webapis/dom/oldstylecollections}/NodeList.js +0 -0
  763. /package/{Libraries/WebPerformance → src/private/webapis/performance}/EventCounts.js +0 -0
  764. /package/{Libraries/WebPerformance → src/private/webapis/performance}/MemoryInfo.js +0 -0
  765. /package/{Libraries/WebPerformance → src/private/webapis/performance}/PerformanceEntry.js +0 -0
  766. /package/{Libraries/WebPerformance → src/private/webapis/performance}/ReactNativeStartupTiming.js +0 -0
  767. /package/{Libraries/WebPerformance → src/private/webapis/performance}/__mocks__/NativePerformance.js +0 -0
@@ -59,8 +59,13 @@ export type SectionListRenderItem<ItemT, SectionT = DefaultSectionT> = (
59
59
  info: SectionListRenderItemInfo<ItemT, SectionT>,
60
60
  ) => React.ReactElement | null;
61
61
 
62
+ type VirtualizedListWithoutPreConfiguredProps<ItemT> = Omit<
63
+ VirtualizedListWithoutRenderItemProps<ItemT>,
64
+ 'stickyHeaderIndices'
65
+ >;
66
+
62
67
  export interface SectionListProps<ItemT, SectionT = DefaultSectionT>
63
- extends VirtualizedListWithoutRenderItemProps<ItemT> {
68
+ extends VirtualizedListWithoutPreConfiguredProps<ItemT> {
64
69
  /**
65
70
  * Rendered in between each section.
66
71
  */
@@ -4,7 +4,7 @@
4
4
  * This source code is licensed under the MIT license found in the
5
5
  * LICENSE file in the root directory of this source tree.
6
6
  *
7
- * @flow
7
+ * @flow strict-local
8
8
  * @format
9
9
  */
10
10
 
@@ -4,7 +4,7 @@
4
4
  * This source code is licensed under the MIT license found in the
5
5
  * LICENSE file in the root directory of this source tree.
6
6
  *
7
- * @flow
7
+ * @flow strict-local
8
8
  * @format
9
9
  */
10
10
 
@@ -4,7 +4,7 @@
4
4
  * This source code is licensed under the MIT license found in the
5
5
  * LICENSE file in the root directory of this source tree.
6
6
  *
7
- * @flow
7
+ * @flow strict-local
8
8
  * @format
9
9
  */
10
10
 
@@ -4,7 +4,7 @@
4
4
  * This source code is licensed under the MIT license found in the
5
5
  * LICENSE file in the root directory of this source tree.
6
6
  *
7
- * @flow
7
+ * @flow strict-local
8
8
  * @format
9
9
  */
10
10
 
@@ -4,7 +4,7 @@
4
4
  * This source code is licensed under the MIT license found in the
5
5
  * LICENSE file in the root directory of this source tree.
6
6
  *
7
- * @flow
7
+ * @flow strict-local
8
8
  * @format
9
9
  */
10
10
 
@@ -4,7 +4,7 @@
4
4
  * This source code is licensed under the MIT license found in the
5
5
  * LICENSE file in the root directory of this source tree.
6
6
  *
7
- * @flow
7
+ * @flow strict-local
8
8
  * @format
9
9
  */
10
10
 
@@ -173,7 +173,13 @@ function confirmProps(props: Props) {
173
173
  }
174
174
  }
175
175
 
176
- class Modal extends React.Component<Props> {
176
+ // Create a state to track whether the Modal is rendering or not.
177
+ // This is the only prop that controls whether the modal is rendered or not.
178
+ type State = {
179
+ isRendered: boolean,
180
+ };
181
+
182
+ class Modal extends React.Component<Props, State> {
177
183
  static defaultProps: {|hardwareAccelerated: boolean, visible: boolean|} = {
178
184
  visible: true,
179
185
  hardwareAccelerated: false,
@@ -190,6 +196,9 @@ class Modal extends React.Component<Props> {
190
196
  confirmProps(props);
191
197
  }
192
198
  this._identifier = uniqueModalIdentifier++;
199
+ this.state = {
200
+ isRendered: props.visible === true,
201
+ };
193
202
  }
194
203
 
195
204
  componentDidMount() {
@@ -198,28 +207,44 @@ class Modal extends React.Component<Props> {
198
207
  this._eventSubscription = ModalEventEmitter.addListener(
199
208
  'modalDismissed',
200
209
  event => {
201
- if (event.modalID === this._identifier && this.props.onDismiss) {
202
- this.props.onDismiss();
203
- }
210
+ this.setState({isRendered: false}, () => {
211
+ if (event.modalID === this._identifier && this.props.onDismiss) {
212
+ this.props.onDismiss();
213
+ }
214
+ });
204
215
  },
205
216
  );
206
217
  }
207
218
  }
208
219
 
209
220
  componentWillUnmount() {
221
+ this.setState({isRendered: false});
210
222
  if (this._eventSubscription) {
211
223
  this._eventSubscription.remove();
212
224
  }
213
225
  }
214
226
 
215
- componentDidUpdate() {
227
+ componentDidUpdate(prevProps: Props) {
228
+ if (prevProps.visible === false && this.props.visible === true) {
229
+ this.setState({isRendered: true});
230
+ }
231
+
216
232
  if (__DEV__) {
217
233
  confirmProps(this.props);
218
234
  }
219
235
  }
220
236
 
237
+ // Helper function to encapsulate platform specific logic to show or not the Modal.
238
+ _shouldShowModal(): boolean {
239
+ if (Platform.OS === 'ios') {
240
+ return this.props.visible === true || this.state.isRendered === true;
241
+ }
242
+
243
+ return this.props.visible === true;
244
+ }
245
+
221
246
  render(): React.Node {
222
- if (this.props.visible !== true) {
247
+ if (!this._shouldShowModal()) {
223
248
  return null;
224
249
  }
225
250
 
@@ -244,6 +269,17 @@ class Modal extends React.Component<Props> {
244
269
  this.props.children
245
270
  );
246
271
 
272
+ const onDismiss = () => {
273
+ // OnDismiss is implemented on iOS only.
274
+ if (Platform.OS === 'ios') {
275
+ this.setState({isRendered: false}, () => {
276
+ if (this.props.onDismiss) {
277
+ this.props.onDismiss();
278
+ }
279
+ });
280
+ }
281
+ };
282
+
247
283
  return (
248
284
  <RCTModalHostView
249
285
  animationType={animationType}
@@ -252,11 +288,7 @@ class Modal extends React.Component<Props> {
252
288
  hardwareAccelerated={this.props.hardwareAccelerated}
253
289
  onRequestClose={this.props.onRequestClose}
254
290
  onShow={this.props.onShow}
255
- onDismiss={() => {
256
- if (this.props.onDismiss) {
257
- this.props.onDismiss();
258
- }
259
- }}
291
+ onDismiss={onDismiss}
260
292
  visible={this.props.visible}
261
293
  statusBarTranslucent={this.props.statusBarTranslucent}
262
294
  identifier={this._identifier}
@@ -8,14 +8,6 @@
8
8
  * @format
9
9
  */
10
10
 
11
- import type {TurboModule} from '../TurboModule/RCTExport';
12
-
13
- import * as TurboModuleRegistry from '../TurboModule/TurboModuleRegistry';
14
-
15
- export interface Spec extends TurboModule {
16
- // RCTEventEmitter
17
- +addListener: (eventName: string) => void;
18
- +removeListeners: (count: number) => void;
19
- }
20
-
21
- export default (TurboModuleRegistry.get<Spec>('ModalManager'): ?Spec);
11
+ export * from '../../src/private/specs/modules/NativeModalManager';
12
+ import NativeModalManager from '../../src/private/specs/modules/NativeModalManager';
13
+ export default NativeModalManager;
@@ -8,132 +8,6 @@
8
8
  * @flow strict-local
9
9
  */
10
10
 
11
- import type {ViewProps} from '../Components/View/ViewPropTypes';
12
- import type {HostComponent} from '../Renderer/shims/ReactNativeTypes';
13
- import type {
14
- DirectEventHandler,
15
- Int32,
16
- WithDefault,
17
- } from '../Types/CodegenTypes';
18
-
19
- import codegenNativeComponent from '../Utilities/codegenNativeComponent';
20
-
21
- type OrientationChangeEvent = $ReadOnly<{|
22
- orientation: 'portrait' | 'landscape',
23
- |}>;
24
-
25
- type NativeProps = $ReadOnly<{|
26
- ...ViewProps,
27
-
28
- /**
29
- * The `animationType` prop controls how the modal animates.
30
- *
31
- * See https://reactnative.dev/docs/modal#animationtype
32
- */
33
- animationType?: WithDefault<'none' | 'slide' | 'fade', 'none'>,
34
-
35
- /**
36
- * The `presentationStyle` prop controls how the modal appears.
37
- *
38
- * See https://reactnative.dev/docs/modal#presentationstyle
39
- */
40
- presentationStyle?: WithDefault<
41
- 'fullScreen' | 'pageSheet' | 'formSheet' | 'overFullScreen',
42
- 'fullScreen',
43
- >,
44
-
45
- /**
46
- * The `transparent` prop determines whether your modal will fill the
47
- * entire view.
48
- *
49
- * See https://reactnative.dev/docs/modal#transparent
50
- */
51
- transparent?: WithDefault<boolean, false>,
52
-
53
- /**
54
- * The `statusBarTranslucent` prop determines whether your modal should go under
55
- * the system statusbar.
56
- *
57
- * See https://reactnative.dev/docs/modal#statusBarTranslucent
58
- */
59
- statusBarTranslucent?: WithDefault<boolean, false>,
60
-
61
- /**
62
- * The `hardwareAccelerated` prop controls whether to force hardware
63
- * acceleration for the underlying window.
64
- *
65
- * See https://reactnative.dev/docs/modal#hardwareaccelerated
66
- */
67
- hardwareAccelerated?: WithDefault<boolean, false>,
68
-
69
- /**
70
- * The `onRequestClose` callback is called when the user taps the hardware
71
- * back button on Android or the menu button on Apple TV.
72
- *
73
- * This is required on Apple TV and Android.
74
- *
75
- * See https://reactnative.dev/docs/modal#onrequestclose
76
- */
77
- onRequestClose?: ?DirectEventHandler<null>,
78
-
79
- /**
80
- * The `onShow` prop allows passing a function that will be called once the
81
- * modal has been shown.
82
- *
83
- * See https://reactnative.dev/docs/modal#onshow
84
- */
85
- onShow?: ?DirectEventHandler<null>,
86
-
87
- /**
88
- * The `onDismiss` prop allows passing a function that will be called once
89
- * the modal has been dismissed.
90
- *
91
- * See https://reactnative.dev/docs/modal#ondismiss
92
- */
93
- onDismiss?: ?DirectEventHandler<null>,
94
-
95
- /**
96
- * The `visible` prop determines whether your modal is visible.
97
- *
98
- * See https://reactnative.dev/docs/modal#visible
99
- */
100
- visible?: WithDefault<boolean, false>,
101
-
102
- /**
103
- * Deprecated. Use the `animationType` prop instead.
104
- */
105
- animated?: WithDefault<boolean, false>,
106
-
107
- /**
108
- * The `supportedOrientations` prop allows the modal to be rotated to any of the specified orientations.
109
- *
110
- * See https://reactnative.dev/docs/modal#supportedorientations
111
- */
112
- supportedOrientations?: WithDefault<
113
- $ReadOnlyArray<
114
- | 'portrait'
115
- | 'portrait-upside-down'
116
- | 'landscape'
117
- | 'landscape-left'
118
- | 'landscape-right',
119
- >,
120
- 'portrait',
121
- >,
122
-
123
- /**
124
- * The `onOrientationChange` callback is called when the orientation changes while the modal is being displayed.
125
- *
126
- * See https://reactnative.dev/docs/modal#onorientationchange
127
- */
128
- onOrientationChange?: ?DirectEventHandler<OrientationChangeEvent>,
129
-
130
- /**
131
- * The `identifier` is the unique number for identifying Modal components.
132
- */
133
- identifier?: WithDefault<Int32, 0>,
134
- |}>;
135
-
136
- export default (codegenNativeComponent<NativeProps>('ModalHostView', {
137
- interfaceOnly: true,
138
- paperComponentName: 'RCTModalHostView',
139
- }): HostComponent<NativeProps>);
11
+ export * from '../../src/private/specs/components/RCTModalHostViewNativeComponent';
12
+ import RCTModalHostViewNativeComponent from '../../src/private/specs/components/RCTModalHostViewNativeComponent';
13
+ export default RCTModalHostViewNativeComponent;
@@ -13,7 +13,7 @@
13
13
  import type {MutationObserverId} from './MutationObserverManager';
14
14
  import type MutationRecord from './MutationRecord';
15
15
 
16
- import ReactNativeElement from '../DOM/Nodes/ReactNativeElement';
16
+ import ReactNativeElement from '../../src/private/webapis/dom/nodes/ReactNativeElement';
17
17
  import * as MutationObserverManager from './MutationObserverManager';
18
18
 
19
19
  export type MutationObserverCallback = (
@@ -18,7 +18,7 @@
18
18
  * the notifications together.
19
19
  */
20
20
 
21
- import type ReactNativeElement from '../DOM/Nodes/ReactNativeElement';
21
+ import type ReactNativeElement from '../../src/private/webapis/dom/nodes/ReactNativeElement';
22
22
  import type MutationObserver, {
23
23
  MutationObserverCallback,
24
24
  } from './MutationObserver';
@@ -27,7 +27,7 @@ import type MutationRecord from './MutationRecord';
27
27
  import {
28
28
  getPublicInstanceFromInternalInstanceHandle,
29
29
  getShadowNode,
30
- } from '../DOM/Nodes/ReadOnlyNode';
30
+ } from '../../src/private/webapis/dom/nodes/ReadOnlyNode';
31
31
  import * as Systrace from '../Performance/Systrace';
32
32
  import warnOnce from '../Utilities/warnOnce';
33
33
  import {createMutationRecord} from './MutationRecord';
@@ -10,11 +10,13 @@
10
10
 
11
11
  // flowlint unsafe-getters-setters:off
12
12
 
13
- import type ReactNativeElement from '../DOM/Nodes/ReactNativeElement';
14
- import type ReadOnlyNode from '../DOM/Nodes/ReadOnlyNode';
13
+ import type ReactNativeElement from '../../src/private/webapis/dom/nodes/ReactNativeElement';
14
+ import type ReadOnlyNode from '../../src/private/webapis/dom/nodes/ReadOnlyNode';
15
15
  import type {NativeMutationRecord} from './NativeMutationObserver';
16
16
 
17
- import NodeList, {createNodeList} from '../DOM/OldStyleCollections/NodeList';
17
+ import NodeList, {
18
+ createNodeList,
19
+ } from '../../src/private/webapis/dom/oldstylecollections/NodeList';
18
20
 
19
21
  export type MutationType = 'attributes' | 'characterData' | 'childList';
20
22
 
@@ -30,15 +32,15 @@ export default class MutationRecord {
30
32
  _removedNodes: NodeList<ReadOnlyNode>;
31
33
 
32
34
  constructor(nativeRecord: NativeMutationRecord) {
33
- // $FlowExpectedError[incompatible-cast] the codegen doesn't support the actual type.
34
- const target = (nativeRecord.target: ReactNativeElement);
35
+ // $FlowExpectedError[incompatible-type] the codegen doesn't support the actual type.
36
+ const target: ReactNativeElement = nativeRecord.target;
35
37
  this._target = target;
36
- // $FlowExpectedError[incompatible-cast] the codegen doesn't support the actual type.
37
- const addedNodes = (nativeRecord.addedNodes: $ReadOnlyArray<ReadOnlyNode>);
38
+ // $FlowExpectedError[incompatible-type] the codegen doesn't support the actual type.
39
+ const addedNodes: $ReadOnlyArray<ReadOnlyNode> = nativeRecord.addedNodes;
38
40
  this._addedNodes = createNodeList(addedNodes);
39
- const removedNodes =
40
- // $FlowExpectedError[incompatible-cast] the codegen doesn't support the actual type.
41
- (nativeRecord.removedNodes: $ReadOnlyArray<ReadOnlyNode>);
41
+ const removedNodes: $ReadOnlyArray<ReadOnlyNode> =
42
+ // $FlowFixMe[incompatible-type]
43
+ nativeRecord.removedNodes;
42
44
  this._removedNodes = createNodeList(removedNodes);
43
45
  }
44
46
 
@@ -8,51 +8,6 @@
8
8
  * @format
9
9
  */
10
10
 
11
- import type {TurboModule} from '../TurboModule/RCTExport';
12
-
13
- import * as TurboModuleRegistry from '../TurboModule/TurboModuleRegistry';
14
-
15
- export type MutationObserverId = number;
16
-
17
- // These types are not supported by the codegen.
18
- type ShadowNode = mixed;
19
- type InstanceHandle = mixed;
20
- type ReactNativeElement = mixed;
21
- type ReadOnlyNode = mixed;
22
-
23
- export type NativeMutationRecord = {
24
- mutationObserverId: MutationObserverId,
25
- target: ReactNativeElement,
26
- addedNodes: $ReadOnlyArray<ReadOnlyNode>,
27
- removedNodes: $ReadOnlyArray<ReadOnlyNode>,
28
- ...
29
- };
30
-
31
- export type NativeMutationObserverObserveOptions = {
32
- mutationObserverId: number,
33
- targetShadowNode: ShadowNode,
34
- subtree: boolean,
35
- };
36
-
37
- export interface Spec extends TurboModule {
38
- +observe: (options: NativeMutationObserverObserveOptions) => void;
39
- +unobserve: (
40
- mutationObserverId: number,
41
- targetShadowNode: ShadowNode,
42
- ) => void;
43
- +connect: (
44
- notifyMutationObservers: () => void,
45
- // We need this to retain the public instance before React removes the
46
- // reference to it (which happen in mutations that remove nodes, or when
47
- // nodes are removed between the change and the callback is executed in JS).
48
- getPublicInstanceFromInstanceHandle: (
49
- instanceHandle: InstanceHandle,
50
- ) => ReadOnlyNode,
51
- ) => void;
52
- +disconnect: () => void;
53
- +takeRecords: () => $ReadOnlyArray<NativeMutationRecord>;
54
- }
55
-
56
- export default (TurboModuleRegistry.get<Spec>(
57
- 'NativeMutationObserverCxx',
58
- ): ?Spec);
11
+ export * from '../../src/private/specs/modules/NativeMutationObserver';
12
+ import NativeMutationObserver from '../../src/private/specs/modules/NativeMutationObserver';
13
+ export default NativeMutationObserver;
@@ -28,7 +28,7 @@ import type {
28
28
  Spec,
29
29
  } from '../NativeMutationObserver';
30
30
 
31
- import ReadOnlyNode from '../../DOM/Nodes/ReadOnlyNode';
31
+ import ReadOnlyNode from '../../../src/private/webapis/dom/nodes/ReadOnlyNode';
32
32
  import {
33
33
  type NodeMock,
34
34
  type UIManagerCommitHook,
@@ -304,6 +304,7 @@ const validAttributesForEventProps = {
304
304
  onTouchCancel: true,
305
305
 
306
306
  // Pointer events
307
+ onClick: true,
307
308
  onPointerEnter: true,
308
309
  onPointerEnterCapture: true,
309
310
  onPointerLeave: true,
@@ -427,6 +427,9 @@ const validAttributesForEventProps = {
427
427
  onKeyDown: true,
428
428
  onKeyUp: true,
429
429
  onPointerCancelCapture: true,
430
+
431
+ onBlur: true,
432
+ onFocus: true,
430
433
  // Windows]
431
434
  // [Windows
432
435
  };
@@ -15,7 +15,7 @@ import type {
15
15
 
16
16
  import getNativeComponentAttributes from '../ReactNative/getNativeComponentAttributes';
17
17
  import UIManager from '../ReactNative/UIManager';
18
- import ReactNativeViewConfigRegistry from '../Renderer/shims/ReactNativeViewConfigRegistry';
18
+ import * as ReactNativeViewConfigRegistry from '../Renderer/shims/ReactNativeViewConfigRegistry';
19
19
  import verifyComponentAttributeEquivalence from '../Utilities/verifyComponentAttributeEquivalence';
20
20
  import * as StaticViewConfigValidator from './StaticViewConfigValidator';
21
21
  import {createViewConfig} from './ViewConfig';
@@ -8,13 +8,6 @@
8
8
  * @format
9
9
  */
10
10
 
11
- import type {TurboModule} from '../../TurboModule/RCTExport';
12
-
13
- import * as TurboModuleRegistry from '../../TurboModule/TurboModuleRegistry';
14
-
15
- export interface Spec extends TurboModule {
16
- +startRecordingFps: () => void;
17
- +stopRecordingFps: (animationStopTimeMs: number) => void;
18
- }
19
-
20
- export default (TurboModuleRegistry.get<Spec>('AnimationsDebugModule'): ?Spec);
11
+ export * from '../../../src/private/specs/modules/NativeAnimationsDebugModule';
12
+ import NativeAnimationsDebugModule from '../../../src/private/specs/modules/NativeAnimationsDebugModule';
13
+ export default NativeAnimationsDebugModule;
@@ -8,16 +8,6 @@
8
8
  * @format
9
9
  */
10
10
 
11
- import type {TurboModule} from '../../TurboModule/RCTExport';
12
-
13
- import * as TurboModuleRegistry from '../../TurboModule/TurboModuleRegistry';
14
-
15
- export interface Spec extends TurboModule {
16
- +show: () => void;
17
- +reload: () => void;
18
- +debugRemotely: (enableDebug: boolean) => void;
19
- +setProfilingEnabled: (enabled: boolean) => void;
20
- +setHotLoadingEnabled: (enabled: boolean) => void;
21
- }
22
-
23
- export default (TurboModuleRegistry.getEnforcing<Spec>('DevMenu'): Spec);
11
+ export * from '../../../src/private/specs/modules/NativeDevMenu';
12
+ import NativeDevMenu from '../../../src/private/specs/modules/NativeDevMenu';
13
+ export default NativeDevMenu;
@@ -8,26 +8,6 @@
8
8
  * @format
9
9
  */
10
10
 
11
- import type {TurboModule} from '../../TurboModule/RCTExport';
12
-
13
- import * as TurboModuleRegistry from '../../TurboModule/TurboModuleRegistry';
14
-
15
- export interface Spec extends TurboModule {
16
- +reload: () => void;
17
- +reloadWithReason?: (reason: string) => void;
18
- +onFastRefresh?: () => void;
19
- +setHotLoadingEnabled: (isHotLoadingEnabled: boolean) => void;
20
- +setIsDebuggingRemotely: (isDebuggingRemotelyEnabled: boolean) => void;
21
- +setProfilingEnabled: (isProfilingEnabled: boolean) => void;
22
- +toggleElementInspector: () => void;
23
- +addMenuItem: (title: string) => void;
24
-
25
- // Events
26
- +addListener: (eventName: string) => void;
27
- +removeListeners: (count: number) => void;
28
-
29
- // iOS only.
30
- +setIsShakeToShowDevMenuEnabled: (enabled: boolean) => void;
31
- }
32
-
33
- export default (TurboModuleRegistry.getEnforcing<Spec>('DevSettings'): Spec);
11
+ export * from '../../../src/private/specs/modules/NativeDevSettings';
12
+ import NativeDevSettings from '../../../src/private/specs/modules/NativeDevSettings';
13
+ export default NativeDevSettings;
@@ -8,12 +8,6 @@
8
8
  * @format
9
9
  */
10
10
 
11
- import type {TurboModule} from '../../TurboModule/RCTExport';
12
-
13
- import * as TurboModuleRegistry from '../../TurboModule/TurboModuleRegistry';
14
-
15
- export interface Spec extends TurboModule {
16
- +invokeDefaultBackPressHandler: () => void;
17
- }
18
-
19
- export default (TurboModuleRegistry.get<Spec>('DeviceEventManager'): ?Spec);
11
+ export * from '../../../src/private/specs/modules/NativeDeviceEventManager';
12
+ import NativeDeviceEventManager from '../../../src/private/specs/modules/NativeDeviceEventManager';
13
+ export default NativeDeviceEventManager;
@@ -8,41 +8,6 @@
8
8
  * @format
9
9
  */
10
10
 
11
- import type {TurboModule} from '../../TurboModule/RCTExport';
12
-
13
- import * as TurboModuleRegistry from '../../TurboModule/TurboModuleRegistry';
14
-
15
- /* 'buttonClicked' | 'dismissed' */
16
- type DialogAction = string;
17
- /*
18
- buttonPositive = -1,
19
- buttonNegative = -2,
20
- buttonNeutral = -3
21
- */
22
- type DialogButtonKey = number;
23
- export type DialogOptions = {|
24
- title?: string,
25
- message?: string,
26
- buttonPositive?: string,
27
- buttonNegative?: string,
28
- buttonNeutral?: string,
29
- items?: Array<string>,
30
- cancelable?: boolean,
31
- |};
32
-
33
- export interface Spec extends TurboModule {
34
- +getConstants: () => {|
35
- +buttonClicked: DialogAction,
36
- +dismissed: DialogAction,
37
- +buttonPositive: DialogButtonKey,
38
- +buttonNegative: DialogButtonKey,
39
- +buttonNeutral: DialogButtonKey,
40
- |};
41
- +showAlert: (
42
- config: DialogOptions,
43
- onError: (error: string) => void,
44
- onAction: (action: DialogAction, buttonKey?: DialogButtonKey) => void,
45
- ) => void;
46
- }
47
-
48
- export default (TurboModuleRegistry.get<Spec>('DialogManagerAndroid'): ?Spec);
11
+ export * from '../../../src/private/specs/modules/NativeDialogManagerAndroid';
12
+ import NativeDialogManagerAndroid from '../../../src/private/specs/modules/NativeDialogManagerAndroid';
13
+ export default NativeDialogManagerAndroid;
@@ -0,0 +1,11 @@
1
+ /**
2
+ * Copyright (c) Microsoft Corporation.
3
+ * Licensed under the MIT License.
4
+ *
5
+ * @format
6
+ * @flow strict-local
7
+ */
8
+
9
+ export * from '../../../src/private/specs/modules/NativeDialogManagerWindows';
10
+ import NativeDialogManagerWindows from '../../../src/private/specs/modules/NativeDialogManagerWindows';
11
+ export default NativeDialogManagerWindows;
@@ -8,13 +8,6 @@
8
8
  * @format
9
9
  */
10
10
 
11
- import type {TurboModule} from '../../TurboModule/RCTExport';
12
-
13
- import * as TurboModuleRegistry from '../../TurboModule/TurboModuleRegistry';
14
-
15
- export interface Spec extends TurboModule {
16
- +show: () => void;
17
- +hide: () => void;
18
- }
19
-
20
- export default (TurboModuleRegistry.get<Spec>('LogBox'): ?Spec);
11
+ export * from '../../../src/private/specs/modules/NativeLogBox';
12
+ import NativeLogBox from '../../../src/private/specs/modules/NativeLogBox';
13
+ export default NativeLogBox;