react-native-windows 0.72.14 → 0.73.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 (587) hide show
  1. package/.flowconfig +16 -5
  2. package/Chakra/ChakraHelpers.cpp +1 -1
  3. package/Chakra/ChakraUtils.cpp +1 -1
  4. package/Chakra/ChakraValue.h +1 -1
  5. package/Common/packages.lock.json +13 -0
  6. package/Directory.Build.props +6 -2
  7. package/Folly/TEMP_UntilFollyUpdate/dynamic-inl.h +1 -10
  8. package/Folly/TEMP_UntilFollyUpdate/hash/Hash.h +1016 -0
  9. package/Folly/TEMP_UntilFollyUpdate/lang/ToAscii.h +1 -1
  10. package/Folly/cgmanifest.json +1 -1
  11. package/Folly/packages.lock.json +23 -0
  12. package/Libraries/Animated/Animated.js +1 -1
  13. package/Libraries/Animated/AnimatedImplementation.js +1 -1
  14. package/Libraries/Animated/NativeAnimatedHelper.js +14 -10
  15. package/Libraries/Animated/NativeAnimatedModule.js +6 -2
  16. package/Libraries/Animated/NativeAnimatedTurboModule.js +7 -4
  17. package/Libraries/Animated/animations/Animation.js +57 -3
  18. package/Libraries/Animated/animations/DecayAnimation.js +9 -0
  19. package/Libraries/Animated/animations/SpringAnimation.js +8 -0
  20. package/Libraries/Animated/animations/TimingAnimation.js +8 -0
  21. package/Libraries/Animated/components/AnimatedFlatList.js +2 -1
  22. package/Libraries/Animated/components/AnimatedScrollView.js +2 -0
  23. package/Libraries/Animated/components/AnimatedSectionList.js +2 -1
  24. package/Libraries/Animated/createAnimatedComponent.js +1 -0
  25. package/Libraries/Animated/nodes/AnimatedColor.js +1 -1
  26. package/Libraries/Animated/nodes/AnimatedObject.js +146 -0
  27. package/Libraries/Animated/nodes/AnimatedProps.js +19 -7
  28. package/Libraries/Animated/nodes/AnimatedStyle.js +29 -55
  29. package/Libraries/Animated/nodes/AnimatedValueXY.js +3 -17
  30. package/Libraries/Animated/shouldUseTurboAnimatedModule.js +17 -0
  31. package/Libraries/Animated/useAnimatedProps.js +9 -10
  32. package/Libraries/AppState/AppState.d.ts +1 -1
  33. package/Libraries/AppState/NativeAppState.js +8 -4
  34. package/Libraries/AppTheme/AppTheme.js +5 -5
  35. package/Libraries/BatchedBridge/MessageQueue.js +45 -36
  36. package/Libraries/Blob/Blob.js +6 -2
  37. package/Libraries/Blob/BlobManager.js +9 -10
  38. package/Libraries/Blob/BlobRegistry.js +14 -9
  39. package/Libraries/Blob/File.js +1 -1
  40. package/Libraries/Blob/FileReader.js +1 -2
  41. package/Libraries/Components/Clipboard/Clipboard.d.ts +4 -4
  42. package/Libraries/Components/DrawerAndroid/DrawerLayoutAndroid.android.js +3 -1
  43. package/Libraries/Components/Glyph/Glyph.js +1 -1
  44. package/Libraries/Components/Keyboard/KeyboardAvoidingView.js +26 -6
  45. package/Libraries/Components/Keyboard/KeyboardExt.d.ts +4 -1
  46. package/Libraries/Components/Keyboard/KeyboardExt.js +3 -0
  47. package/Libraries/Components/Keyboard/KeyboardExt.js.map +1 -1
  48. package/Libraries/Components/Keyboard/KeyboardExtProps.d.ts +4 -29
  49. package/Libraries/Components/Keyboard/KeyboardExtProps.js +0 -17
  50. package/Libraries/Components/Keyboard/KeyboardExtProps.js.map +1 -1
  51. package/Libraries/Components/Pressable/Pressable.js +3 -2
  52. package/Libraries/Components/Pressable/Pressable.windows.js +4 -3
  53. package/Libraries/Components/Pressable/useAndroidRippleForView.js +1 -1
  54. package/Libraries/Components/ProgressBarAndroid/ProgressBarAndroid.js +20 -0
  55. package/Libraries/Components/ProgressBarAndroid/ProgressBarAndroid.windows.js +7 -1
  56. package/Libraries/Components/SafeAreaView/SafeAreaView.js +7 -7
  57. package/Libraries/Components/SafeAreaView/SafeAreaView.windows.js +7 -10
  58. package/Libraries/Components/ScrollView/ScrollView.js +3 -1
  59. package/Libraries/Components/ScrollView/ScrollView.windows.js +3 -1
  60. package/Libraries/Components/ScrollView/ScrollViewStickyHeader.js +39 -46
  61. package/Libraries/Components/Switch/Switch.js +1 -0
  62. package/Libraries/Components/Switch/Switch.windows.js +259 -0
  63. package/Libraries/Components/TextInput/RCTTextInputViewConfig.js +1 -0
  64. package/Libraries/Components/TextInput/TextInput.d.ts +49 -7
  65. package/Libraries/Components/TextInput/TextInput.flow.js +43 -10
  66. package/Libraries/Components/TextInput/TextInput.js +62 -10
  67. package/Libraries/Components/TextInput/TextInput.windows.js +100 -14
  68. package/Libraries/Components/ToastAndroid/{ToastAndroid.ios.js → ToastAndroid.js} +9 -1
  69. package/Libraries/Components/ToastAndroid/ToastAndroid.windows.js +9 -1
  70. package/Libraries/Components/Touchable/TouchableBounce.js +1 -1
  71. package/Libraries/Components/Touchable/TouchableHighlight.js +1 -1
  72. package/Libraries/Components/Touchable/TouchableHighlight.windows.js +1 -1
  73. package/Libraries/Components/Touchable/TouchableNativeFeedback.js +1 -1
  74. package/Libraries/Components/Touchable/TouchableOpacity.js +4 -1
  75. package/Libraries/Components/Touchable/TouchableOpacity.windows.js +4 -1
  76. package/Libraries/Components/Touchable/TouchableWithoutFeedback.js +1 -0
  77. package/Libraries/Components/Touchable/TouchableWithoutFeedback.windows.js +1 -0
  78. package/Libraries/Components/TraceUpdateOverlay/TraceUpdateOverlay.js +16 -6
  79. package/Libraries/Components/View/ReactNativeStyleAttributes.js +9 -0
  80. package/Libraries/Components/View/ReactNativeViewAttributes.js +1 -0
  81. package/Libraries/Components/View/ReactNativeViewAttributes.windows.js +1 -0
  82. package/Libraries/Components/View/View.js +46 -32
  83. package/Libraries/Components/View/View.windows.js +23 -7
  84. package/Libraries/Components/View/ViewAccessibility.d.ts +27 -1
  85. package/Libraries/Components/View/ViewAccessibility.windows.js +3 -0
  86. package/Libraries/Components/View/ViewNativeComponent.js +1 -0
  87. package/Libraries/Components/View/ViewPropTypes.d.ts +104 -1
  88. package/Libraries/Components/View/ViewPropTypes.js +18 -3
  89. package/Libraries/Components/View/ViewPropTypes.windows.js +33 -3
  90. package/Libraries/Core/Devtools/loadBundleFromServer.js +152 -0
  91. package/Libraries/Core/Devtools/symbolicateStackTrace.js +2 -1
  92. package/Libraries/Core/ExceptionsManager.js +16 -7
  93. package/Libraries/Core/ExtendedError.js +12 -0
  94. package/Libraries/Core/ReactNativeVersion.js +3 -3
  95. package/Libraries/Core/ReactNativeVersionCheck.js +0 -2
  96. package/Libraries/Core/__mocks__/NativeExceptionsManager.js +20 -0
  97. package/Libraries/Core/setUpDeveloperTools.js +5 -1
  98. package/Libraries/Core/setUpIntersectionObserver.js +16 -0
  99. package/Libraries/Core/setUpMutationObserver.js +16 -0
  100. package/Libraries/Core/setUpPerformance.js +6 -13
  101. package/Libraries/Core/setUpPerformanceObserver.js +16 -0
  102. package/Libraries/Core/setUpRegeneratorRuntime.js +4 -2
  103. package/Libraries/DOM/Nodes/ReactNativeElement.js +135 -18
  104. package/Libraries/DOM/Nodes/ReadOnlyCharacterData.js +72 -0
  105. package/Libraries/DOM/Nodes/ReadOnlyElement.js +209 -21
  106. package/Libraries/DOM/Nodes/ReadOnlyNode.js +206 -17
  107. package/Libraries/DOM/Nodes/ReadOnlyText.js +30 -0
  108. package/Libraries/DOM/Nodes/Utilities/Traversal.js +54 -0
  109. package/Libraries/EventEmitter/NativeEventEmitter.d.ts +0 -6
  110. package/Libraries/EventEmitter/RCTDeviceEventEmitter.js +15 -4
  111. package/Libraries/Image/Image.android.js +8 -2
  112. package/Libraries/Image/Image.d.ts +1 -1
  113. package/Libraries/Image/Image.ios.js +4 -1
  114. package/Libraries/Image/Image.windows.js +6 -3
  115. package/Libraries/Image/ImageBackground.js +3 -0
  116. package/Libraries/Inspector/DevtoolsOverlay.js +6 -3
  117. package/Libraries/Inspector/NetworkOverlay.js +2 -2
  118. package/Libraries/Interaction/JSEventLoopWatchdog.js +1 -5
  119. package/Libraries/Interaction/PanResponder.js +1 -4
  120. package/Libraries/IntersectionObserver/IntersectionObserver.js +252 -0
  121. package/Libraries/IntersectionObserver/IntersectionObserverEntry.js +140 -0
  122. package/Libraries/IntersectionObserver/IntersectionObserverManager.js +221 -0
  123. package/Libraries/IntersectionObserver/NativeIntersectionObserver.js +41 -0
  124. package/Libraries/IntersectionObserver/__mocks__/NativeIntersectionObserver.js +162 -0
  125. package/Libraries/LayoutAnimation/LayoutAnimation.js +1 -1
  126. package/Libraries/Lists/FlatList.d.ts +2 -1
  127. package/Libraries/Lists/FlatList.js +15 -5
  128. package/Libraries/Lists/SectionList.js +4 -0
  129. package/Libraries/LogBox/Data/LogBoxLog.js +4 -1
  130. package/Libraries/LogBox/Data/LogBoxSymbolication.js +5 -2
  131. package/Libraries/LogBox/Data/parseLogBoxLog.js +57 -20
  132. package/Libraries/LogBox/UI/AnsiHighlight.js +1 -1
  133. package/Libraries/LogBox/UI/LogBoxInspectorFooter.js +24 -31
  134. package/Libraries/LogBox/UI/LogBoxInspectorHeader.js +1 -1
  135. package/Libraries/LogBox/UI/LogBoxMessage.js +4 -7
  136. package/Libraries/MutationObserver/MutationObserver.js +184 -0
  137. package/Libraries/MutationObserver/MutationObserverManager.js +218 -0
  138. package/Libraries/MutationObserver/MutationRecord.js +82 -0
  139. package/Libraries/MutationObserver/NativeMutationObserver.js +58 -0
  140. package/Libraries/MutationObserver/__mocks__/NativeMutationObserver.js +327 -0
  141. package/Libraries/NativeComponent/BaseViewConfig.android.js +18 -3
  142. package/Libraries/NativeComponent/BaseViewConfig.ios.js +33 -0
  143. package/Libraries/NativeComponent/BaseViewConfig.windows.js +34 -4
  144. package/Libraries/NativeComponent/NativeComponentRegistry.js +3 -5
  145. package/Libraries/NativeModules/specs/NativeSourceCode.js +6 -6
  146. package/Libraries/Network/RCTNetworking.android.js +2 -1
  147. package/Libraries/Network/XMLHttpRequest.js +1 -1
  148. package/Libraries/NewAppScreen/components/DebugInstructions.js +4 -4
  149. package/Libraries/NewAppScreen/components/DebugInstructions.windows.js +2 -2
  150. package/Libraries/NewAppScreen/components/LearnMoreLinks.js +9 -2
  151. package/Libraries/Performance/QuickPerformanceLogger.js +1 -1
  152. package/Libraries/PermissionsAndroid/NativePermissionsAndroid.js +1 -0
  153. package/Libraries/PermissionsAndroid/PermissionsAndroid.d.ts +1 -0
  154. package/Libraries/PermissionsAndroid/PermissionsAndroid.js +3 -1
  155. package/Libraries/Pressability/Pressability.js +28 -3
  156. package/Libraries/Pressability/Pressability.windows.js +30 -5
  157. package/Libraries/ReactNative/AppContainer.js +2 -3
  158. package/Libraries/ReactNative/AppRegistry.d.ts +0 -5
  159. package/Libraries/ReactNative/AppRegistry.js +66 -53
  160. package/Libraries/ReactNative/BridgelessUIManager.js +38 -9
  161. package/Libraries/ReactNative/FabricUIManager.js +143 -34
  162. package/Libraries/ReactNative/I18nManager.js +5 -11
  163. package/Libraries/ReactNative/NativeI18nManager.js +7 -5
  164. package/Libraries/ReactNative/PaperUIManager.windows.js +2 -2
  165. package/Libraries/ReactNative/ReactFabricPublicInstance/ReactFabricHostComponent.js +151 -0
  166. package/Libraries/ReactNative/ReactFabricPublicInstance/ReactFabricPublicInstance.js +81 -0
  167. package/Libraries/ReactNative/ReactFabricPublicInstance/ReactNativeAttributePayload.js +492 -0
  168. package/Libraries/ReactNative/ReactFabricPublicInstance/warnForStyleProps.js +32 -0
  169. package/Libraries/ReactNative/ReactNativeFeatureFlags.js +19 -3
  170. package/Libraries/ReactNative/UIManager.js +8 -0
  171. package/Libraries/ReactNative/__mocks__/FabricUIManager.js +648 -0
  172. package/Libraries/ReactPrivate/ReactNativePrivateInterface.js +38 -2
  173. package/Libraries/Renderer/implementations/ReactFabric-dev.js +27 -27
  174. package/Libraries/Renderer/implementations/ReactFabric-prod.js +3 -3
  175. package/Libraries/Renderer/implementations/ReactFabric-profiling.js +3 -3
  176. package/Libraries/Renderer/implementations/ReactNativeRenderer-dev.js +27 -27
  177. package/Libraries/Renderer/implementations/ReactNativeRenderer-prod.js +3 -3
  178. package/Libraries/Renderer/implementations/ReactNativeRenderer-profiling.js +3 -3
  179. package/Libraries/Renderer/shims/ReactFabric.js +5 -6
  180. package/Libraries/Renderer/shims/ReactFeatureFlags.js +2 -3
  181. package/Libraries/Renderer/shims/ReactNative.js +2 -3
  182. package/Libraries/Renderer/shims/ReactNativeTypes.js +35 -17
  183. package/Libraries/Renderer/shims/ReactNativeViewConfigRegistry.js +3 -3
  184. package/Libraries/Renderer/shims/createReactNativeComponentClass.js +2 -3
  185. package/Libraries/Settings/{Settings.android.js → Settings.js} +4 -4
  186. package/Libraries/Share/Share.d.ts +3 -9
  187. package/Libraries/StyleSheet/PlatformColorValueTypes.android.js +9 -4
  188. package/Libraries/StyleSheet/PlatformColorValueTypes.ios.js +28 -13
  189. package/Libraries/StyleSheet/PlatformColorValueTypes.windows.js +10 -6
  190. package/Libraries/StyleSheet/PlatformColorValueTypesIOS.ios.js +1 -1
  191. package/Libraries/StyleSheet/StyleSheet.d.ts +10 -1
  192. package/Libraries/StyleSheet/StyleSheet.js +3 -0
  193. package/Libraries/StyleSheet/StyleSheetTypes.d.ts +31 -17
  194. package/Libraries/StyleSheet/StyleSheetTypes.js +90 -6
  195. package/Libraries/StyleSheet/flattenStyle.js +4 -0
  196. package/Libraries/StyleSheet/private/_TransformStyle.js +16 -2
  197. package/Libraries/StyleSheet/processColor.js +1 -2
  198. package/Libraries/StyleSheet/processTransformOrigin.js +136 -0
  199. package/Libraries/StyleSheet/splitLayoutProps.js +1 -0
  200. package/Libraries/Text/Text.d.ts +5 -5
  201. package/Libraries/Text/Text.js +17 -10
  202. package/Libraries/Text/Text.windows.js +53 -20
  203. package/Libraries/Text/TextProps.windows.js +275 -0
  204. package/Libraries/TurboModule/TurboModuleRegistry.js +47 -7
  205. package/Libraries/TurboModule/samples/NativeSampleTurboModule.js +6 -0
  206. package/Libraries/Types/CoreEventTypes.d.ts +5 -2
  207. package/Libraries/Utilities/GlobalPerformanceLogger.js +2 -12
  208. package/Libraries/Utilities/NativeDeviceInfo.js +8 -9
  209. package/Libraries/Utilities/NativePlatformConstantsAndroid.js +23 -18
  210. package/Libraries/Utilities/NativePlatformConstantsIOS.js +16 -13
  211. package/Libraries/Utilities/NativePlatformConstantsWin.js +13 -10
  212. package/Libraries/Utilities/PerformanceLoggerContext.js +1 -1
  213. package/Libraries/Utilities/Platform.android.js +12 -8
  214. package/Libraries/Utilities/Platform.d.ts +1 -0
  215. package/Libraries/Utilities/Platform.flow.js +84 -0
  216. package/Libraries/Utilities/Platform.flow.windows.js +111 -0
  217. package/Libraries/Utilities/Platform.ios.js +12 -8
  218. package/Libraries/Utilities/Platform.windows.js +12 -8
  219. package/Libraries/Utilities/PolyfillFunctions.js +1 -1
  220. package/Libraries/Utilities/ReactNativeTestTools.js +1 -2
  221. package/Libraries/Utilities/SceneTracker.js +1 -1
  222. package/Libraries/Utilities/createPerformanceLogger.js +63 -32
  223. package/Libraries/Utilities/useColorScheme.js +7 -8
  224. package/Libraries/WebPerformance/MemoryInfo.js +1 -1
  225. package/Libraries/WebPerformance/NativePerformance.js +3 -8
  226. package/Libraries/WebPerformance/NativePerformanceObserver.js +4 -0
  227. package/Libraries/WebPerformance/Performance.js +42 -15
  228. package/Libraries/WebPerformance/PerformanceEntry.js +14 -6
  229. package/Libraries/WebPerformance/PerformanceEventTiming.js +18 -1
  230. package/Libraries/WebPerformance/ReactNativeStartupTiming.js +40 -14
  231. package/Libraries/WebPerformance/__mocks__/NativePerformance.js +4 -2
  232. package/Libraries/WebPerformance/__mocks__/NativePerformanceObserver.js +21 -3
  233. package/Libraries/__tests__/ViewWindows-test.js +3 -3
  234. package/Libraries/platform-types.d.ts +6 -2
  235. package/Libraries/promiseRejectionTrackingOptions.js +1 -3
  236. package/Libraries/vendor/emitter/EventEmitter.js +17 -17
  237. package/Microsoft.ReactNative/Composition.Input.idl +103 -0
  238. package/Microsoft.ReactNative/CompositionContext.idl +31 -8
  239. package/Microsoft.ReactNative/CompositionRootView.idl +8 -4
  240. package/Microsoft.ReactNative/CompositionSwitcher.idl +28 -17
  241. package/Microsoft.ReactNative/Fabric/AbiViewComponentDescriptor.cpp +15 -28
  242. package/Microsoft.ReactNative/Fabric/AbiViewComponentDescriptor.h +7 -10
  243. package/Microsoft.ReactNative/Fabric/ComponentView.h +42 -4
  244. package/Microsoft.ReactNative/Fabric/Composition/AbiCompositionViewComponentView.cpp +57 -4
  245. package/Microsoft.ReactNative/Fabric/Composition/AbiCompositionViewComponentView.h +22 -1
  246. package/Microsoft.ReactNative/Fabric/Composition/ActivityIndicatorComponentView.cpp +137 -0
  247. package/Microsoft.ReactNative/Fabric/Composition/ActivityIndicatorComponentView.h +59 -0
  248. package/Microsoft.ReactNative/Fabric/Composition/ComponentViewRegistry.cpp +8 -2
  249. package/Microsoft.ReactNative/Fabric/Composition/Composition.Input.cpp +575 -0
  250. package/Microsoft.ReactNative/Fabric/Composition/Composition.Input.h +170 -0
  251. package/Microsoft.ReactNative/Fabric/Composition/CompositionContextHelper.cpp +890 -226
  252. package/Microsoft.ReactNative/Fabric/Composition/CompositionContextHelper.h +38 -6
  253. package/Microsoft.ReactNative/Fabric/Composition/CompositionContextHelper_emptyimpl.cpp +79 -0
  254. package/Microsoft.ReactNative/Fabric/Composition/CompositionDynamicAutomationProvider.cpp +130 -27
  255. package/Microsoft.ReactNative/Fabric/Composition/CompositionDynamicAutomationProvider.h +6 -1
  256. package/Microsoft.ReactNative/Fabric/Composition/CompositionEventHandler.cpp +382 -228
  257. package/Microsoft.ReactNative/Fabric/Composition/CompositionEventHandler.h +35 -8
  258. package/Microsoft.ReactNative/Fabric/Composition/CompositionHelpers.h +46 -8
  259. package/Microsoft.ReactNative/Fabric/Composition/CompositionHwndHost.cpp +5 -21
  260. package/Microsoft.ReactNative/Fabric/Composition/CompositionHwndHost.h +1 -1
  261. package/Microsoft.ReactNative/Fabric/Composition/CompositionRootAutomationProvider.cpp +232 -4
  262. package/Microsoft.ReactNative/Fabric/Composition/CompositionRootAutomationProvider.h +36 -1
  263. package/Microsoft.ReactNative/Fabric/Composition/CompositionRootView.cpp +51 -14
  264. package/Microsoft.ReactNative/Fabric/Composition/CompositionRootView.h +15 -6
  265. package/Microsoft.ReactNative/Fabric/Composition/CompositionRootView_emptyimpl.cpp +123 -0
  266. package/Microsoft.ReactNative/Fabric/Composition/CompositionUIService_emptyimpl.cpp +18 -0
  267. package/Microsoft.ReactNative/Fabric/Composition/CompositionViewComponentView.cpp +333 -137
  268. package/Microsoft.ReactNative/Fabric/Composition/CompositionViewComponentView.h +52 -8
  269. package/Microsoft.ReactNative/Fabric/Composition/ImageComponentView.cpp +32 -26
  270. package/Microsoft.ReactNative/Fabric/Composition/ImageComponentView.h +5 -3
  271. package/Microsoft.ReactNative/Fabric/Composition/ParagraphComponentView.cpp +183 -175
  272. package/Microsoft.ReactNative/Fabric/Composition/ParagraphComponentView.h +7 -4
  273. package/Microsoft.ReactNative/Fabric/Composition/ReactCompositionViewComponentBuilder.cpp +101 -2
  274. package/Microsoft.ReactNative/Fabric/Composition/ReactCompositionViewComponentBuilder.h +46 -2
  275. package/Microsoft.ReactNative/Fabric/Composition/RootComponentView.cpp +36 -9
  276. package/Microsoft.ReactNative/Fabric/Composition/RootComponentView.h +8 -2
  277. package/Microsoft.ReactNative/Fabric/Composition/ScrollViewComponentView.cpp +247 -42
  278. package/Microsoft.ReactNative/Fabric/Composition/ScrollViewComponentView.h +25 -8
  279. package/Microsoft.ReactNative/Fabric/Composition/SwitchComponentView.cpp +78 -50
  280. package/Microsoft.ReactNative/Fabric/Composition/SwitchComponentView.h +12 -4
  281. package/Microsoft.ReactNative/Fabric/Composition/TextInput/WindowsTextInputComponentDescriptor.h +26 -28
  282. package/Microsoft.ReactNative/Fabric/Composition/TextInput/WindowsTextInputComponentView.cpp +429 -89
  283. package/Microsoft.ReactNative/Fabric/Composition/TextInput/WindowsTextInputComponentView.h +24 -3
  284. package/Microsoft.ReactNative/Fabric/Composition/TextInput/WindowsTextInputProps.cpp +1 -0
  285. package/Microsoft.ReactNative/Fabric/Composition/TextInput/WindowsTextInputProps.h +3 -2
  286. package/Microsoft.ReactNative/Fabric/Composition/TextInput/WindowsTextInputShadowNode.cpp +5 -7
  287. package/Microsoft.ReactNative/Fabric/Composition/TextInput/WindowsTextInputShadowNode.h +4 -6
  288. package/Microsoft.ReactNative/Fabric/Composition/TextInput/WindowsTextInputState.cpp +1 -7
  289. package/Microsoft.ReactNative/Fabric/Composition/TextInput/WindowsTextInputState.h +1 -17
  290. package/Microsoft.ReactNative/Fabric/Composition/UiaHelpers.cpp +74 -3
  291. package/Microsoft.ReactNative/Fabric/Composition/UiaHelpers.h +12 -0
  292. package/Microsoft.ReactNative/Fabric/Composition/UnimplementedNativeViewComponentView.cpp +53 -59
  293. package/Microsoft.ReactNative/Fabric/Composition/UnimplementedNativeViewComponentView.h +3 -2
  294. package/Microsoft.ReactNative/Fabric/FabricUIManagerModule.cpp +5 -4
  295. package/Microsoft.ReactNative/Fabric/FabricUIManagerModule.h +2 -1
  296. package/Microsoft.ReactNative/Fabric/ImageRequest.cpp +1 -1
  297. package/Microsoft.ReactNative/Fabric/ReactTaggedView.h +1 -1
  298. package/Microsoft.ReactNative/Fabric/WindowsComponentDescriptorRegistry.cpp +3 -4
  299. package/Microsoft.ReactNative/Fabric/platform/react/renderer/components/view/HostPlatformTouch.h +10 -0
  300. package/Microsoft.ReactNative/Fabric/platform/react/renderer/components/view/HostPlatformViewEventEmitter.cpp +59 -0
  301. package/Microsoft.ReactNative/Fabric/platform/react/renderer/components/view/HostPlatformViewEventEmitter.h +31 -0
  302. package/Microsoft.ReactNative/Fabric/platform/react/renderer/components/view/HostPlatformViewProps.cpp +69 -0
  303. package/Microsoft.ReactNative/Fabric/platform/react/renderer/components/view/HostPlatformViewProps.h +25 -2
  304. package/Microsoft.ReactNative/Fabric/platform/react/renderer/components/view/HostPlatformViewTraitsInitializer.h +23 -0
  305. package/Microsoft.ReactNative/Fabric/platform/react/renderer/components/view/KeyEvent.h +113 -0
  306. package/Microsoft.ReactNative/Fabric/platform/react/renderer/components/view/WindowsViewEvents.h +75 -0
  307. package/Microsoft.ReactNative/Fabric/platform/react/renderer/core/graphicsConversions.h +18 -21
  308. package/Microsoft.ReactNative/Fabric/platform/react/renderer/graphics/Color.cpp +158 -7
  309. package/Microsoft.ReactNative/Fabric/platform/react/renderer/graphics/Color.h +15 -17
  310. package/Microsoft.ReactNative/Fabric/platform/react/renderer/textlayoutmanager/TextLayoutManager.cpp +1 -1
  311. package/Microsoft.ReactNative/GlyphViewManager.cpp +1 -1
  312. package/Microsoft.ReactNative/IJSValueReader.idl +2 -2
  313. package/Microsoft.ReactNative/IJSValueWriter.idl +2 -2
  314. package/Microsoft.ReactNative/IReactCompositionViewComponentBuilder.idl +23 -1
  315. package/Microsoft.ReactNative/IReactContext.cpp +1 -1
  316. package/Microsoft.ReactNative/IReactNotificationService.cpp +4 -3
  317. package/Microsoft.ReactNative/Microsoft.ReactNative.vcxproj +1 -4
  318. package/Microsoft.ReactNative/Modules/AlertModule.cpp +2 -2
  319. package/Microsoft.ReactNative/Modules/Animated/NativeAnimatedNodeManager.cpp +1 -2
  320. package/Microsoft.ReactNative/Modules/Animated/NativeAnimatedNodeManager.h +1 -1
  321. package/Microsoft.ReactNative/Modules/Animated/PropsAnimatedNode.cpp +3 -4
  322. package/Microsoft.ReactNative/Modules/AppStateModule.cpp +1 -1
  323. package/Microsoft.ReactNative/Modules/AppStateModule.h +2 -2
  324. package/Microsoft.ReactNative/Modules/AppearanceModule.h +1 -1
  325. package/Microsoft.ReactNative/Modules/DeviceInfoModule.cpp +4 -2
  326. package/Microsoft.ReactNative/Modules/DeviceInfoModule.h +1 -1
  327. package/Microsoft.ReactNative/Modules/I18nManagerModule.cpp +2 -2
  328. package/Microsoft.ReactNative/Modules/I18nManagerModule.h +1 -1
  329. package/Microsoft.ReactNative/Modules/NativeUIManager.cpp +21 -15
  330. package/Microsoft.ReactNative/Modules/PaperUIManagerModule.cpp +10 -6
  331. package/Microsoft.ReactNative/Modules/PaperUIManagerModule.h +4 -1
  332. package/Microsoft.ReactNative/QuirkSettings.idl +1 -1
  333. package/Microsoft.ReactNative/ReactApplication.cpp +13 -11
  334. package/Microsoft.ReactNative/ReactApplication.h +4 -4
  335. package/Microsoft.ReactNative/ReactCoreInjection.h +6 -5
  336. package/Microsoft.ReactNative/ReactHost/JSCallInvokerScheduler.cpp +2 -2
  337. package/Microsoft.ReactNative/ReactHost/MsoUtils.cpp +1 -1
  338. package/Microsoft.ReactNative/ReactHost/React.h +3 -6
  339. package/Microsoft.ReactNative/ReactHost/ReactHost.cpp +0 -16
  340. package/Microsoft.ReactNative/ReactHost/ReactInstanceWin.cpp +8 -16
  341. package/Microsoft.ReactNative/ReactInstanceSettings.cpp +6 -5
  342. package/Microsoft.ReactNative/ReactInstanceSettings.h +7 -7
  343. package/Microsoft.ReactNative/ReactNativeHost.h +4 -4
  344. package/Microsoft.ReactNative/ReactRootView.cpp +5 -4
  345. package/Microsoft.ReactNative/ReactRootView.h +2 -2
  346. package/Microsoft.ReactNative/ReactSupport.h +1 -1
  347. package/Microsoft.ReactNative/RedBox.cpp +1 -1
  348. package/Microsoft.ReactNative/RedBoxHandler.idl +1 -1
  349. package/Microsoft.ReactNative/Utils/UwpPreparedScriptStore.h +1 -1
  350. package/Microsoft.ReactNative/Utils/ValueUtils.cpp +49 -21
  351. package/Microsoft.ReactNative/Utils/ValueUtils.h +2 -1
  352. package/Microsoft.ReactNative/Views/DynamicAutomationPeer.cpp +31 -59
  353. package/Microsoft.ReactNative/Views/DynamicAutomationPeer.h +3 -4
  354. package/Microsoft.ReactNative/Views/DynamicAutomationProperties.cpp +15 -46
  355. package/Microsoft.ReactNative/Views/DynamicAutomationProperties.h +5 -13
  356. package/Microsoft.ReactNative/Views/FlyoutViewManager.cpp +4 -4
  357. package/Microsoft.ReactNative/Views/FrameworkElementTransferProperties.cpp +2 -8
  358. package/Microsoft.ReactNative/Views/FrameworkElementViewManager.cpp +127 -86
  359. package/Microsoft.ReactNative/Views/ICompositionRootView.h +1 -1
  360. package/Microsoft.ReactNative/Views/Image/ImageViewManager.cpp +1 -1
  361. package/Microsoft.ReactNative/Views/Image/Microsoft.UI.Composition.Effects_Impl.h +2 -2
  362. package/Microsoft.ReactNative/Views/Image/ReactImage.cpp +1 -1
  363. package/Microsoft.ReactNative/Views/SIPEventHandler.cpp +5 -5
  364. package/Microsoft.ReactNative/Views/SIPEventHandler.h +1 -1
  365. package/Microsoft.ReactNative/Views/ShadowNodeBase.h +8 -5
  366. package/Microsoft.ReactNative/Views/SwitchViewManager.cpp +2 -2
  367. package/Microsoft.ReactNative/Views/Text/TextTransformVisitor.cpp +1 -1
  368. package/Microsoft.ReactNative/Views/TextInputViewManager.cpp +32 -14
  369. package/Microsoft.ReactNative/Views/TouchEventHandler.cpp +1 -1
  370. package/Microsoft.ReactNative/Views/ViewManagerBase.cpp +14 -2
  371. package/Microsoft.ReactNative/Views/ViewManagerBase.h +1 -1
  372. package/Microsoft.ReactNative/Views/ViewPanel.cpp +20 -219
  373. package/Microsoft.ReactNative/Views/ViewPanel.h +0 -30
  374. package/Microsoft.ReactNative/Views/ViewViewManager.cpp +17 -158
  375. package/Microsoft.ReactNative/Views/cppwinrt/DynamicAutomationPeer.idl +9 -12
  376. package/Microsoft.ReactNative/Views/cppwinrt/ViewPanel.idl +1 -9
  377. package/Microsoft.ReactNative/XamlHelper.cpp +1 -1
  378. package/Microsoft.ReactNative/XamlHelper.h +1 -1
  379. package/Microsoft.ReactNative/packages.lock.json +128 -0
  380. package/Microsoft.ReactNative.Cxx/JSI/JsiAbiApi.cpp +1 -1
  381. package/Microsoft.ReactNative.Cxx/JSI/JsiAbiApi.h +1 -1
  382. package/Microsoft.ReactNative.Cxx/JSI/JsiApiContext.cpp +2 -2
  383. package/Microsoft.ReactNative.Cxx/JSValue.h +2 -2
  384. package/Microsoft.ReactNative.Cxx/Microsoft.ReactNative.Cxx.vcxitems +0 -1
  385. package/Microsoft.ReactNative.Cxx/NativeModules.h +4 -4
  386. package/Microsoft.ReactNative.Cxx/ReactHandleHelper.h +1 -1
  387. package/Microsoft.ReactNative.Cxx/ReactNonAbiValue.h +2 -2
  388. package/Microsoft.ReactNative.Cxx/ReactNotificationService.h +10 -9
  389. package/Microsoft.ReactNative.Cxx/ReactPropertyBag.h +13 -12
  390. package/Microsoft.ReactNative.Managed/JSValueReaderGenerator.cs +5 -5
  391. package/Microsoft.ReactNative.Managed/JSValueWriterGenerator.cs +5 -5
  392. package/Microsoft.ReactNative.Managed/Microsoft.ReactNative.Managed.csproj +8 -2
  393. package/Microsoft.ReactNative.Managed/ReactPackageBuilderExtensions.cs +1 -1
  394. package/Microsoft.ReactNative.Managed/ReflectionReactPackageProvider.cs +1 -1
  395. package/Microsoft.ReactNative.Managed/packages.lock.json +9 -9
  396. package/Microsoft.ReactNative.Managed.CodeGen/CodeAnalyzer.cs +2 -0
  397. package/Microsoft.ReactNative.Managed.CodeGen/CodeGenerator.Module.cs +4 -2
  398. package/Microsoft.ReactNative.Managed.CodeGen/CodeGenerator.ViewManager.cs +1 -1
  399. package/Microsoft.ReactNative.Managed.CodeGen/DiagnosticDescriptors.cs +1 -1
  400. package/Microsoft.ReactNative.Managed.CodeGen/packages.lock.json +3197 -0
  401. package/Mso/compilerAdapters/compilerFeatures.h +1 -1
  402. package/Mso/compilerAdapters/functionDecorations.h +6 -6
  403. package/Mso/debugAssertApi/debugAssertDetails.h +1 -1
  404. package/Mso/dispatchQueue/dispatchQueue.h +3 -3
  405. package/Mso/motifCpp/motifCppTest.h +1 -1
  406. package/Mso/motifCpp/testCheck.h +1 -1
  407. package/Mso/oacr/oacr.h +1 -1
  408. package/Mso/smartPtr/smartPointerBase.h +1 -1
  409. package/Mso/src/dispatchQueue/looperScheduler.cpp +2 -2
  410. package/Mso/src/dispatchQueue/queueService.cpp +1 -1
  411. package/Mso/src/dispatchQueue/taskQueue.h +1 -1
  412. package/Mso/src/dispatchQueue/threadPoolScheduler_win.cpp +2 -2
  413. package/Mso/src/dispatchQueue/uiScheduler_winrt.cpp +122 -45
  414. package/Mso/src/eventWaitHandle/eventWaitHandleImpl_win.cpp +2 -2
  415. package/Mso/src/future/futureImpl.cpp +5 -5
  416. package/Mso/src/future/futureImpl.h +1 -1
  417. package/PropertySheets/External/Microsoft.ReactNative.Common.props +3 -0
  418. package/PropertySheets/External/{Microsoft.ReactNative.WinAppSDK.Common.props → Microsoft.ReactNative.Composition.Common.props} +2 -2
  419. package/PropertySheets/External/{Microsoft.ReactNative.WinAppSDK.CSharpApp.props → Microsoft.ReactNative.Composition.CppApp.props} +7 -10
  420. package/PropertySheets/External/Microsoft.ReactNative.Composition.CppApp.targets +19 -0
  421. package/PropertySheets/External/Microsoft.ReactNative.Composition.Package.props +14 -0
  422. package/PropertySheets/External/Microsoft.ReactNative.Composition.Package.targets +18 -0
  423. package/PropertySheets/External/Microsoft.ReactNative.WindowsSdk.Default.props +1 -1
  424. package/PropertySheets/Generated/PackageVersion.g.props +4 -4
  425. package/PropertySheets/HybridCRT.props +34 -0
  426. package/PropertySheets/JSEngine.props +1 -2
  427. package/PropertySheets/React.Cpp.props +0 -1
  428. package/PropertySheets/Warnings.props +1 -1
  429. package/PropertySheets/WinUI.props +1 -1
  430. package/ReactCommon/ReactCommon.vcxproj +15 -9
  431. package/ReactCommon/ReactCommon.vcxproj.filters +0 -3
  432. package/ReactCommon/TEMP_UntilReactCommonUpdate/jsi/jsi/test/testlib.cpp +32 -5
  433. package/ReactCommon/TEMP_UntilReactCommonUpdate/react/bridging/Bridging.h +20 -0
  434. package/ReactCommon/TEMP_UntilReactCommonUpdate/react/renderer/components/view/YogaLayoutableShadowNode.cpp +1038 -0
  435. package/ReactCommon/TEMP_UntilReactCommonUpdate/react/renderer/components/view/YogaStylableProps.cpp +228 -38
  436. package/ReactCommon/TEMP_UntilReactCommonUpdate/react/renderer/components/view/conversions.h +895 -0
  437. package/ReactCommon/TEMP_UntilReactCommonUpdate/react/renderer/mounting/ShadowTree.cpp +543 -0
  438. package/ReactCommon/TEMP_UntilReactCommonUpdate/react/renderer/uimanager/UIManagerBinding.cpp +1509 -0
  439. package/ReactCommon/TEMP_UntilReactCommonUpdate/yoga/yoga/bits/NumericBitfield.h +67 -0
  440. package/ReactCommon/TEMP_UntilReactCommonUpdate/yoga/yoga/config/Config.h +93 -0
  441. package/ReactCommon/TEMP_UntilReactCommonUpdate/yoga/yoga/node/LayoutResults.h +88 -0
  442. package/ReactCommon/TEMP_UntilReactCommonUpdate/yoga/yoga/node/Node.cpp +606 -0
  443. package/ReactCommon/TEMP_UntilReactCommonUpdate/yoga/yoga/node/Node.h +344 -0
  444. package/ReactCommon/Yoga.cpp +497 -3895
  445. package/ReactCommon/packages.lock.json +30 -0
  446. package/Scripts/NuGetRestoreForceEvaluateAllSolutions.ps1 +22 -0
  447. package/Scripts/OfficeReact.Win32.nuspec +1 -0
  448. package/Scripts/rnw-dependencies.ps1 +79 -26
  449. package/Shared/BaseScriptStoreImpl.cpp +42 -13
  450. package/Shared/BaseScriptStoreImpl.h +1 -1
  451. package/Shared/Composition/AutoDraw.h +36 -0
  452. package/Shared/CxxMessageQueue.cpp +1 -1
  453. package/Shared/DevSettings.h +3 -0
  454. package/Shared/DevSupportManager.h +1 -1
  455. package/Shared/Hasher.cpp +64 -0
  456. package/Shared/Hasher.h +24 -0
  457. package/Shared/HermesRuntimeHolder.cpp +6 -6
  458. package/Shared/IDevSupportManager.h +1 -1
  459. package/Shared/JSI/ChakraApi.cpp +1 -1
  460. package/Shared/JSI/ChakraRuntime.cpp +10 -10
  461. package/Shared/JSI/ChakraRuntime.h +6 -6
  462. package/Shared/JSI/V8RuntimeHolder.cpp +1 -1
  463. package/Shared/Modules/IRequestBodyHandler.h +1 -1
  464. package/Shared/Modules/IUriHandler.h +1 -1
  465. package/Shared/Modules/PlatformConstantsModule.cpp +1 -1
  466. package/Shared/Modules/WebSocketModule.cpp +1 -1
  467. package/Shared/Networking/DefaultBlobResource.cpp +2 -2
  468. package/Shared/Networking/OriginPolicyHttpFilter.cpp +22 -16
  469. package/Shared/Networking/OriginPolicyHttpFilter.h +12 -11
  470. package/Shared/OInstance.cpp +9 -23
  471. package/Shared/OInstance.h +1 -1
  472. package/Shared/PackagerConnection.h +1 -1
  473. package/Shared/SafeLoadLibrary.cpp +8 -44
  474. package/Shared/SafeLoadLibrary.h +1 -5
  475. package/Shared/Shared.vcxitems +50 -20
  476. package/Shared/Shared.vcxitems.filters +26 -17
  477. package/Shared/Threading/BatchingQueueThread.cpp +5 -5
  478. package/Shared/Threading/BatchingQueueThread.h +4 -4
  479. package/Shared/TurboModuleManager.cpp +1 -1
  480. package/Shared/Utils.cpp +1 -1
  481. package/Shared/tracing/fbsystrace.h +1 -1
  482. package/codegen/NativeAnimatedModuleSpec.g.h +2 -0
  483. package/codegen/NativeAnimatedTurboModuleSpec.g.h +2 -0
  484. package/codegen/NativeAppStateSpec.g.h +11 -21
  485. package/codegen/NativeDeviceInfoSpec.g.h +4 -14
  486. package/codegen/NativeI18nManagerSpec.g.h +6 -16
  487. package/codegen/NativeIntersectionObserverSpec.g.h +96 -0
  488. package/codegen/NativeMutationObserverSpec.g.h +90 -0
  489. package/codegen/NativePerformanceObserverSpec.g.h +19 -13
  490. package/codegen/NativePerformanceSpec.g.h +6 -23
  491. package/codegen/NativePlatformConstantsAndroidSpec.g.h +22 -30
  492. package/codegen/NativePlatformConstantsIOSSpec.g.h +17 -25
  493. package/codegen/NativePlatformConstantsWinSpec.g.h +14 -22
  494. package/codegen/NativeSampleTurboModuleSpec.g.h +36 -0
  495. package/codegen/NativeSourceCodeSpec.g.h +3 -13
  496. package/codegen/react/components/rnwcore/EventEmitters.cpp +85 -58
  497. package/codegen/react/components/rnwcore/EventEmitters.h +17 -35
  498. package/codegen/react/components/rnwcore/Props.h +16 -17
  499. package/codegen/rnwcoreJSI-generated.cpp +1462 -319
  500. package/codegen/rnwcoreJSI.h +1609 -462
  501. package/fmt/packages.lock.json +13 -0
  502. package/index.windows.js +3 -3
  503. package/{Libraries/Components/ProgressBarAndroid/ProgressBarAndroid.ios.js → jest/ReactNativeInternalFeatureFlagsMock.js} +2 -1
  504. package/jest/__tests__/setup-test.js +18 -0
  505. package/jest/mockModal.js +6 -4
  506. package/jest/setup.js +61 -30
  507. package/just-task.js +1 -0
  508. package/package.json +37 -42
  509. package/template/cs-app/proj/MyApp.csproj +0 -1
  510. package/template/cs-lib/proj/MyLib.csproj +0 -1
  511. package/templates/.clang-format +4 -0
  512. package/templates/cpp-app/metro.config.js +51 -0
  513. package/templates/cpp-app/template.config.js +119 -0
  514. package/templates/cpp-app/windows/ExperimentalFeatures.props +12 -0
  515. package/templates/cpp-app/windows/MyApp/MyApp.cpp +284 -0
  516. package/templates/cpp-app/windows/MyApp/MyApp.h +3 -0
  517. package/templates/cpp-app/windows/MyApp/MyApp.ico +0 -0
  518. package/templates/cpp-app/windows/MyApp/MyApp.rc +0 -0
  519. package/templates/cpp-app/windows/MyApp/MyApp.vcxproj +142 -0
  520. package/templates/cpp-app/windows/MyApp/MyApp.vcxproj.filters +55 -0
  521. package/templates/cpp-app/windows/MyApp/_gitignore +1 -0
  522. package/templates/cpp-app/windows/MyApp/pch.cpp +1 -0
  523. package/templates/cpp-app/windows/MyApp/pch.h +35 -0
  524. package/templates/cpp-app/windows/MyApp/resource.h +18 -0
  525. package/templates/cpp-app/windows/MyApp/small.ico +0 -0
  526. package/templates/cpp-app/windows/MyApp/targetver.h +8 -0
  527. package/templates/cpp-app/windows/MyApp.Package/Images/LockScreenLogo.scale-200.png +0 -0
  528. package/templates/cpp-app/windows/MyApp.Package/Images/SplashScreen.scale-200.png +0 -0
  529. package/templates/cpp-app/windows/MyApp.Package/Images/Square150x150Logo.scale-200.png +0 -0
  530. package/templates/cpp-app/windows/MyApp.Package/Images/Square44x44Logo.scale-200.png +0 -0
  531. package/templates/cpp-app/windows/MyApp.Package/Images/Square44x44Logo.targetsize-24_altform-unplated.png +0 -0
  532. package/templates/cpp-app/windows/MyApp.Package/Images/StoreLogo.png +0 -0
  533. package/templates/cpp-app/windows/MyApp.Package/Images/Wide310x150Logo.scale-200.png +0 -0
  534. package/templates/cpp-app/windows/MyApp.Package/MyApp.Package.wapproj +78 -0
  535. package/{template/cs-app-WinAppSDK/MyApp → templates/cpp-app/windows/MyApp.Package}/Package.appxmanifest +9 -8
  536. package/templates/cpp-app/windows/MyApp.sln +176 -0
  537. package/templates/cpp-app/windows/_gitignore +41 -0
  538. package/templates/old/generateWrapper.js +67 -0
  539. package/templates/old/uwp-cpp-app/template.config.js +15 -0
  540. package/templates/old/uwp-cpp-lib/template.config.js +15 -0
  541. package/templates/old/uwp-cs-app/template.config.js +15 -0
  542. package/templates/old/uwp-cs-lib/template.config.js +15 -0
  543. package/types/experimental.d.ts +44 -0
  544. package/types/index.d.ts +2 -1
  545. package/types/modules/Devtools.d.ts +1 -0
  546. package/types/modules/globals.d.ts +16 -1
  547. package/Libraries/Components/View/ViewWindows.d.ts +0 -19
  548. package/Libraries/Components/View/ViewWindows.js +0 -22
  549. package/Libraries/Components/View/ViewWindows.js.map +0 -1
  550. package/Libraries/Components/View/ViewWindowsProps.d.ts +0 -69
  551. package/Libraries/Components/View/ViewWindowsProps.js +0 -8
  552. package/Libraries/Components/View/ViewWindowsProps.js.map +0 -1
  553. package/Libraries/Utilities/AcessibilityMapping.js +0 -154
  554. package/Libraries/Utilities/NativeDevSplitBundleLoader.js +0 -19
  555. package/Libraries/Utilities/useColorScheme.windows.js +0 -26
  556. package/Microsoft.ReactNative/Fabric/platform/react/components/view/windows/WindowsViewProps.cpp +0 -61
  557. package/Microsoft.ReactNative/Fabric/platform/react/components/view/windows/WindowsViewProps.h +0 -34
  558. package/Microsoft.ReactNative/Fabric/platform/react/components/view/windows/primitives.h +0 -42
  559. package/PropertySheets/External/Microsoft.ReactNative.WinAppSDK.CSharp.PackageReferences.props +0 -11
  560. package/PropertySheets/External/Microsoft.ReactNative.WinAppSDK.CSharpApp.targets +0 -51
  561. package/ReactCommon/TEMP_UntilReactCommonUpdate/react/renderer/components/view/TouchEventEmitter.cpp +0 -237
  562. package/ReactCommon/TEMP_UntilReactCommonUpdate/react/renderer/components/view/TouchEventEmitter.h +0 -59
  563. package/ReactCommon/TEMP_UntilReactCommonUpdate/react/renderer/components/view/ViewEventEmitter.cpp +0 -159
  564. package/ReactCommon/TEMP_UntilReactCommonUpdate/react/renderer/components/view/ViewEventEmitter.h +0 -94
  565. package/ReactCommon/TEMP_UntilReactCommonUpdate/react/renderer/components/view/ViewProps.cpp +0 -465
  566. package/ReactCommon/TEMP_UntilReactCommonUpdate/react/renderer/components/view/ViewProps.h +0 -116
  567. package/ReactCommon/TEMP_UntilReactCommonUpdate/react/renderer/components/view/ViewShadowNode.cpp +0 -98
  568. package/ReactCommon/TEMP_UntilReactCommonUpdate/react/renderer/components/view/primitives.h +0 -326
  569. package/Scripts/Microsoft.ReactNative.WindowsAppSDK.nuspec +0 -30
  570. package/Shared/V8JSIRuntimeHolder.cpp +0 -71
  571. package/Shared/V8JSIRuntimeHolder.h +0 -56
  572. package/codegen/NativeDevSplitBundleLoaderSpec.g.h +0 -34
  573. package/template/cs-app-WinAppSDK/MyApp/App.xaml +0 -16
  574. package/template/cs-app-WinAppSDK/MyApp/App.xaml.cs +0 -70
  575. package/template/cs-app-WinAppSDK/MyApp/MainWindow.xaml +0 -14
  576. package/template/cs-app-WinAppSDK/MyApp/MainWindow.xaml.cs +0 -38
  577. package/template/cs-app-WinAppSDK/MyApp/Properties/PublishProfiles/win10-arm64.pubxml +0 -19
  578. package/template/cs-app-WinAppSDK/MyApp/Properties/PublishProfiles/win10-x64.pubxml +0 -19
  579. package/template/cs-app-WinAppSDK/MyApp/Properties/PublishProfiles/win10-x86.pubxml +0 -19
  580. package/template/cs-app-WinAppSDK/MyApp/Properties/launchSettings.json +0 -10
  581. package/template/cs-app-WinAppSDK/MyApp/app.manifest +0 -15
  582. package/template/cs-app-WinAppSDK/proj/ExperimentalFeatures.props +0 -24
  583. package/template/cs-app-WinAppSDK/proj/MyApp.csproj +0 -53
  584. package/template/cs-app-WinAppSDK/proj/MyApp.sln +0 -43
  585. package/template/cs-app-WinAppSDK/proj/NuGet_Config +0 -19
  586. /package/Libraries/Components/DrawerAndroid/{DrawerLayoutAndroid.ios.js → DrawerLayoutAndroid.js} +0 -0
  587. /package/Libraries/{Renderer/public → ReactNative/ReactFabricPublicInstance}/ReactFabricPublicInstanceUtils.js +0 -0
@@ -4,9 +4,16 @@
4
4
  #include "Color.h"
5
5
  #include <Utils/ValueUtils.h>
6
6
 
7
+ #ifndef CORE_ABI
8
+ #include <XamlUtils.h>
9
+ #endif // CORE_ABI
10
+
11
+ #include <UI.Xaml.Media.h>
12
+ #include <winrt/Windows.UI.ViewManagement.h>
13
+
7
14
  namespace facebook::react {
8
15
 
9
- bool isColorMeaningful(SharedColor const &color) noexcept {
16
+ bool isColorMeaningful(const SharedColor &color) noexcept {
10
17
  if (!color) {
11
18
  return false;
12
19
  }
@@ -14,12 +21,156 @@ bool isColorMeaningful(SharedColor const &color) noexcept {
14
21
  return colorComponentsFromColor(color).alpha > 0;
15
22
  }
16
23
 
24
+ winrt::Windows::UI::Color ResolvePlatformColor(Color const *const color) {
25
+ if (!color->m_platformColor.empty()) {
26
+ for (auto platformColor : color->m_platformColor) {
27
+ #ifndef CORE_ABI
28
+ // If XAML is loaded, look in application resources
29
+ if (xaml::TryGetCurrentApplication()) {
30
+ xaml::Media::Brush brush{Microsoft::ReactNative::BrushFromColorObject(platformColor)};
31
+ if (auto scb{brush.try_as<xaml::Media::SolidColorBrush>()}) {
32
+ return scb.Color();
33
+ }
34
+ }
35
+ #endif // CORE_ABI
36
+
37
+ // Accent colors
38
+ // https://learn.microsoft.com/en-us/uwp/api/windows.ui.viewmanagement.uicolortype?view=winrt-22621
39
+ static std::unordered_map<
40
+ std::string,
41
+ winrt::Windows::UI::ViewManagement::UIColorType,
42
+ std::hash<std::string_view>,
43
+ std::equal_to<>>
44
+ s_uiColorTypes = {
45
+ {"Accent", winrt::Windows::UI::ViewManagement::UIColorType::Accent},
46
+ {"AccentDark1", winrt::Windows::UI::ViewManagement::UIColorType::AccentDark1},
47
+ {"AccentDark2", winrt::Windows::UI::ViewManagement::UIColorType::AccentDark2},
48
+ {"AccentDark3", winrt::Windows::UI::ViewManagement::UIColorType::AccentDark3},
49
+ {"AccentLight1", winrt::Windows::UI::ViewManagement::UIColorType::AccentLight1},
50
+ {"AccentLight2", winrt::Windows::UI::ViewManagement::UIColorType::AccentLight2},
51
+ {"AccentLight3", winrt::Windows::UI::ViewManagement::UIColorType::AccentLight3},
52
+ {"Background", winrt::Windows::UI::ViewManagement::UIColorType::Background},
53
+ {"Complement", winrt::Windows::UI::ViewManagement::UIColorType::Complement},
54
+ {"Foreground", winrt::Windows::UI::ViewManagement::UIColorType::Foreground}};
55
+
56
+ auto uiColor = s_uiColorTypes.find(platformColor);
57
+ if (uiColor != s_uiColorTypes.end()) {
58
+ auto uiSettings{winrt::Windows::UI::ViewManagement::UISettings()};
59
+ return uiSettings.GetColorValue(uiColor->second);
60
+ }
61
+
62
+ // UI element colors
63
+ // https://learn.microsoft.com/en-us/uwp/api/windows.ui.viewmanagement.uielementtype?view=winrt-22621
64
+ static std::unordered_map<
65
+ std::string,
66
+ winrt::Windows::UI::ViewManagement::UIElementType,
67
+ std::hash<std::string_view>,
68
+ std::equal_to<>>
69
+ s_uiElementTypes = {
70
+ {"AccentColor", winrt::Windows::UI::ViewManagement::UIElementType::AccentColor},
71
+ {"ActiveCaption", winrt::Windows::UI::ViewManagement::UIElementType::ActiveCaption},
72
+ {"Background", winrt::Windows::UI::ViewManagement::UIElementType::Background},
73
+ {"ButtonFace", winrt::Windows::UI::ViewManagement::UIElementType::ButtonFace},
74
+ {"ButtonText", winrt::Windows::UI::ViewManagement::UIElementType::ButtonText},
75
+ {"CaptionText", winrt::Windows::UI::ViewManagement::UIElementType::CaptionText},
76
+ {"GrayText", winrt::Windows::UI::ViewManagement::UIElementType::GrayText},
77
+ {"Highlight", winrt::Windows::UI::ViewManagement::UIElementType::Highlight},
78
+ {"HighlightText", winrt::Windows::UI::ViewManagement::UIElementType::HighlightText},
79
+ {"Hotlight", winrt::Windows::UI::ViewManagement::UIElementType::Hotlight},
80
+ {"InactiveCaption", winrt::Windows::UI::ViewManagement::UIElementType::InactiveCaption},
81
+ {"InactiveCaptionText", winrt::Windows::UI::ViewManagement::UIElementType::InactiveCaptionText},
82
+ {"NonTextHigh", winrt::Windows::UI::ViewManagement::UIElementType::NonTextHigh},
83
+ {"NonTextLow", winrt::Windows::UI::ViewManagement::UIElementType::NonTextLow},
84
+ {"NonTextMedium", winrt::Windows::UI::ViewManagement::UIElementType::NonTextMedium},
85
+ {"NonTextMediumHigh", winrt::Windows::UI::ViewManagement::UIElementType::NonTextMediumHigh},
86
+ {"NonTextMediumLow", winrt::Windows::UI::ViewManagement::UIElementType::NonTextMediumLow},
87
+ {"OverlayOutsidePopup", winrt::Windows::UI::ViewManagement::UIElementType::OverlayOutsidePopup},
88
+ {"PageBackground", winrt::Windows::UI::ViewManagement::UIElementType::PageBackground},
89
+ {"PopupBackground", winrt::Windows::UI::ViewManagement::UIElementType::PopupBackground},
90
+ {"TextContrastWithHigh", winrt::Windows::UI::ViewManagement::UIElementType::TextContrastWithHigh},
91
+ {"TextHigh", winrt::Windows::UI::ViewManagement::UIElementType::TextHigh},
92
+ {"TextLow", winrt::Windows::UI::ViewManagement::UIElementType::TextLow},
93
+ {"TextMedium", winrt::Windows::UI::ViewManagement::UIElementType::TextMedium},
94
+ {"Window", winrt::Windows::UI::ViewManagement::UIElementType::Window},
95
+ {"WindowText", winrt::Windows::UI::ViewManagement::UIElementType::WindowText}};
96
+
97
+ auto uiElement = s_uiElementTypes.find(platformColor);
98
+ if (uiElement != s_uiElementTypes.end()) {
99
+ auto uiSettings{winrt::Windows::UI::ViewManagement::UISettings()};
100
+ return uiSettings.UIElementColor(uiElement->second);
101
+ }
102
+
103
+ // Fallback light-theme XAML brushes
104
+ // Issue #11489. These are all the light-theme values. Which is better than no values.
105
+ // Where did these values come from? WinUI's common theme resources:
106
+ // https://github.com/microsoft/microsoft-ui-xaml/blob/7a33ad772d77d908aa6b316ec24e6d2eb3ebf571/dev/CommonStyles/Common_themeresources_any.xaml
107
+ // Specifically these are pulled from the "Light" ResourceDictionary. If any additional values
108
+ // are needed, they should be taken from that section (not "Dark" or "HighContrast").
109
+ // For control-specific values, they will be in a theme resource file for that control. Example:
110
+ // https://github.com/microsoft/microsoft-ui-xaml/blob/9052972906c8a0a1b6cb5d5c61b27d6d27cd7f11/dev/CommonStyles/Button_themeresources.xaml
111
+ static std::unordered_map<std::string, winrt::Windows::UI::Color, std::hash<std::string_view>, std::equal_to<>>
112
+ s_xamlBrushes = {
113
+ {"SolidBackgroundFillColorBase", {0xFF, 0xF3, 0xF3, 0xF3}},
114
+ {"ControlFillColorDefault", {0xB3, 0xFF, 0xFF, 0xFF}},
115
+ {"ControlFillColorSecondary", {0x80, 0xF9, 0xF9, 0xF9}},
116
+ {"ControlFillColorTertiary", {0x4D, 0xF9, 0xF9, 0xF9}},
117
+ {"ControlFillColorDisabled", {0x4D, 0xF9, 0xF9, 0xF9}},
118
+ {"ControlFillColorTransparent", {0x00, 0xFF, 0xFF, 0xFF}},
119
+ {"ControlStrokeColorDefault", {0x0F, 0x00, 0x00, 0x00}},
120
+ {"ControlStrokeColorSecondary", {0x29, 0x00, 0x00, 0x00}},
121
+ {"ControlStrokeColorOnAccentSecondary", {0x66, 0x00, 0x00, 0x00}},
122
+ {"TextFillColorPrimary", {0xE4, 0x00, 0x00, 0x00}},
123
+ {"TextFillColorSecondary", {0x9E, 0x00, 0x00, 0x00}},
124
+ {"TextFillColorDisabled", {0x5C, 0x00, 0x00, 0x00}},
125
+ // Arguably only the control-agnostic platform colors should be respected, and
126
+ // Button should be updated to use those instead, assuming that still holds up
127
+ // in high contrast and such.
128
+ {"ButtonBackgroundPressed", {0x4D, 0xF9, 0xF9, 0xF9}}, // ControlFillColorTertiary
129
+ {"ButtonForegroundPressed", {0x9E, 0x00, 0x00, 0x00}}, // TextFillColorSecondary
130
+ {"ButtonForegroundPointerOver", {0xE4, 0x00, 0x00, 0x00}}, // TextFillColorPrimary
131
+ {"ButtonBackground", {0xB3, 0xFF, 0xFF, 0xFF}}, // ControlFillColorDefault
132
+ {"ButtonBorderBrush",
133
+ {0x29, 0x00, 0x00, 0x00}}, // from ControlStrokeColorSecondary to ControlStrokeColorDefault
134
+ {"ButtonForeground", {0xE4, 0x00, 0x00, 0x00}}, // TextFillColorPrimary
135
+ {"ButtonBackgroundDisabled", {0x4D, 0xF9, 0xF9, 0xF9}}, // ControlFillColorDisabled
136
+ {"ButtonBorderBrushDisabled", {0x0F, 0x00, 0x00, 0x00}}, // ControlStrokeColorDefault
137
+ {"ButtonForegroundDisabled", {0x5C, 0x00, 0x00, 0x00}}, // TextFillColorDisabled
138
+ {"ButtonBackgroundPointerOver", {0x80, 0xF9, 0xF9, 0xF9}}, // ControlFillColorSecondary
139
+ {"ButtonBorderBrushPointerOver", {0x66, 0x00, 0x00, 0x00}}, // from ControlStrokeColorOnAccentSecondary to
140
+ // ControlStrokeColorOnAccentDefault
141
+ {"ButtonBorderBrushPressed", {0x00, 0xFF, 0xFF, 0xFF}}, // ControlFillColorTransparent
142
+ };
143
+
144
+ auto result = s_xamlBrushes.find(platformColor);
145
+ if (result != s_xamlBrushes.end()) {
146
+ return result->second;
147
+ }
148
+ }
149
+ }
150
+ return color->m_color;
151
+ }
152
+
153
+ D2D1::ColorF SharedColor::AsD2DColor() const {
154
+ if (!m_color) {
155
+ return D2D1::ColorF{0, 0.0};
156
+ }
157
+ winrt::Windows::UI::Color color = ResolvePlatformColor(m_color.get());
158
+ return {color.R / 255.0f, color.G / 255.0f, color.B / 255.0f, color.A / 255.0f};
159
+ }
160
+
161
+ winrt::Windows::UI::Color SharedColor::AsWindowsColor() const {
162
+ if (!m_color) {
163
+ return winrt::Windows::UI::Color{0, 0, 0, 0};
164
+ }
165
+ return ResolvePlatformColor(m_color.get());
166
+ }
167
+
17
168
  #ifndef CORE_ABI
18
169
  xaml::Media::Brush SharedColor::AsWindowsBrush() const {
19
170
  if (!m_color)
20
171
  return nullptr;
21
172
  if (!m_color->m_platformColor.empty()) {
22
- return Microsoft::ReactNative::BrushFromColorObject(winrt::to_hstring(m_color->m_platformColor));
173
+ return Microsoft::ReactNative::BrushFromColorObject(m_color->m_platformColor);
23
174
  }
24
175
  return xaml::Media::SolidColorBrush(m_color->m_color);
25
176
  }
@@ -27,11 +178,11 @@ xaml::Media::Brush SharedColor::AsWindowsBrush() const {
27
178
 
28
179
  SharedColor colorFromComponents(ColorComponents components) {
29
180
  float ratio = 255;
30
- return {ui::ColorHelper::FromArgb(
31
- (int)round(components.alpha * ratio) & 0xff,
32
- (int)round(components.red * ratio) & 0xff,
33
- (int)round(components.green * ratio) & 0xff,
34
- (int)round(components.blue * ratio) & 0xff)};
181
+ return winrt::Windows::UI::Color{
182
+ static_cast<uint8_t>((int)round(components.alpha * ratio) & 0xff),
183
+ static_cast<uint8_t>((int)round(components.red * ratio) & 0xff),
184
+ static_cast<uint8_t>((int)round(components.green * ratio) & 0xff),
185
+ static_cast<uint8_t>((int)round(components.blue * ratio) & 0xff)};
35
186
  }
36
187
 
37
188
  ColorComponents colorComponentsFromColor(SharedColor const &sharedColor) {
@@ -7,7 +7,6 @@
7
7
 
8
8
  #pragma once
9
9
 
10
- #include <cmath>
11
10
  #include <functional>
12
11
  #include <limits>
13
12
 
@@ -28,14 +27,16 @@ struct Color {
28
27
  }
29
28
 
30
29
  winrt::Windows::UI::Color m_color;
31
- std::string m_platformColor;
30
+ std::vector<std::string> m_platformColor;
32
31
  };
33
32
 
34
33
  /*
35
34
  * On Android, a color can be represented as 32 bits integer, so there is no
36
35
  * need to instantiate complex color objects and then pass them as shared
37
- * pointers. Hense instead of using shared_ptr, we use a simple wrapper class
38
- * which provides a pointer-like interface.
36
+ * pointers. Hence instead of using shared_ptr, we use a simple wrapper class
37
+ * which provides a pointer-like interface. On other platforms, colors may be
38
+ * represented by more complex objects that cannot be represented as 32-bits
39
+ * integers, so we hide the implementation detail in HostPlatformColor.h.
39
40
  */
40
41
  class SharedColor {
41
42
  friend std::hash<SharedColor>;
@@ -50,7 +51,7 @@ class SharedColor {
50
51
  m_color->m_color = color;
51
52
  }
52
53
 
53
- SharedColor(std::string &&windowsBrush) {
54
+ SharedColor(std::vector<std::string> &&windowsBrush) {
54
55
  m_color = std::make_shared<Color>();
55
56
  m_color->m_platformColor = std::move(windowsBrush);
56
57
  }
@@ -84,17 +85,9 @@ class SharedColor {
84
85
  return m_color != nullptr;
85
86
  }
86
87
 
87
- D2D1::ColorF AsD2DColor() const {
88
- return {
89
- m_color->m_color.R / 255.0f,
90
- m_color->m_color.G / 255.0f,
91
- m_color->m_color.B / 255.0f,
92
- m_color->m_color.A / 255.0f};
93
- }
88
+ D2D1::ColorF AsD2DColor() const;
94
89
 
95
- winrt::Windows::UI::Color AsWindowsColor() const {
96
- return m_color->m_color;
97
- }
90
+ winrt::Windows::UI::Color AsWindowsColor() const;
98
91
 
99
92
  COLORREF AsColorRefNoAlpha() const {
100
93
  return RGB(m_color->m_color.R, m_color->m_color.G, m_color->m_color.B);
@@ -112,7 +105,7 @@ class SharedColor {
112
105
  std::shared_ptr<Color> m_color;
113
106
  };
114
107
 
115
- bool isColorMeaningful(SharedColor const &color) noexcept;
108
+ bool isColorMeaningful(const SharedColor &color) noexcept;
116
109
  SharedColor colorFromComponents(ColorComponents components);
117
110
  ColorComponents colorComponentsFromColor(SharedColor const &color);
118
111
 
@@ -130,7 +123,12 @@ struct hash<facebook::react::SharedColor> {
130
123
  size_t operator()(const facebook::react::SharedColor &sharedColor) const {
131
124
  size_t h = sharedColor.m_color->m_color.A + (sharedColor.m_color->m_color.B << 8) +
132
125
  (sharedColor.m_color->m_color.G << 16) + (sharedColor.m_color->m_color.R << 24);
133
- return h ^ hash<decltype(sharedColor.m_color->m_platformColor)>{}(sharedColor.m_color->m_platformColor);
126
+
127
+ for (auto s : sharedColor.m_color->m_platformColor) {
128
+ h ^= hash<decltype(s)>{}(s);
129
+ }
130
+
131
+ return h;
134
132
  }
135
133
  };
136
134
  } // namespace std
@@ -54,7 +54,7 @@ void TextLayoutManager::GetTextLayout(
54
54
  // Recommended ratio of baseline to lineSpacing is 80%
55
55
  // https://learn.microsoft.com/en-us/windows/win32/api/dwrite/nf-dwrite-idwritetextformat-getlinespacing
56
56
  // It is possible we need to load full font metrics to calculate a better baseline value.
57
- // For a particular font, you can determine what lineSpacing and baseline should be by examing a
57
+ // For a particular font, you can determine what lineSpacing and baseline should be by examining a
58
58
  // DWRITE_FONT_METRICS method available from the GetMetrics method of IDWriteFont or IDWriteFontFace. For normal
59
59
  // behavior, you'd set lineSpacing to the sum of ascent, descent and lineGap (adjusted for the em size, of
60
60
  // course), and baseline to the ascent value.
@@ -101,7 +101,7 @@ void GlyphShadowNode::updateProperties(winrt::Microsoft::ReactNative::JSValueObj
101
101
  // Default emSize to match height, unless its been explicitly set
102
102
 
103
103
  // FUTURE: enable some default scaling of 0.75 to convert height px to em?
104
- // The SegouUI Emoji font renders the full area of the emSize
104
+ // The SegoeUI Emoji font renders the full area of the emSize
105
105
  // where emSize should be height * 0.75, but office icon fonts
106
106
  // do not and applying a scale would be wrong
107
107
 
@@ -43,8 +43,8 @@ namespace Microsoft.ReactNative
43
43
  "The `Microsoft.ReactNative.Cxx` and `Microsoft.ReactNative.Managed` projects offer "
44
44
  "serializer/deserializer functions for many standard types. Use them directly or to define "
45
45
  "serializer/deserializer functions for your types.")
46
- // TODO: [vmorozov] Add a reference to serializer and deserializer functions for some standard types.
47
- // TODO: [vmorozov] Add a reference to usage examples.
46
+ // TODO: [@vmoroz] Add a reference to serializer and deserializer functions for some standard types.
47
+ // TODO: [@vmoroz] Add a reference to usage examples.
48
48
  interface IJSValueReader
49
49
  {
50
50
  DOC_STRING("Gets the type of the current value.")
@@ -24,8 +24,8 @@ namespace Microsoft.ReactNative
24
24
  "The `Microsoft.ReactNative.Cxx` and `Microsoft.ReactNative.Managed` projects offer "
25
25
  "serializer/deserializer functions for many standard types. Use them directly or to define "
26
26
  "serializer/deserializer functions for your types.")
27
- // TODO: [vmorozov] Add a reference to serializer and deserializer functions for some standard types.
28
- // TODO: [vmorozov] Add a reference to usage examples.
27
+ // TODO: [@vmoroz] Add a reference to serializer and deserializer functions for some standard types.
28
+ // TODO: [@vmoroz] Add a reference to usage examples.
29
29
  interface IJSValueWriter
30
30
  {
31
31
  DOC_STRING("Writes a `Null` value.")
@@ -2,8 +2,10 @@
2
2
  // Licensed under the MIT License.
3
3
 
4
4
  #include "DocString.h"
5
+ import "Composition.Input.idl";
5
6
  import "CompositionSwitcher.idl";
6
7
  import "IJSValueReader.idl";
8
+ import "IReactContext.idl";
7
9
  import "ViewProps.idl";
8
10
 
9
11
  namespace Microsoft.ReactNative.Composition
@@ -17,7 +19,7 @@ namespace Microsoft.ReactNative.Composition
17
19
 
18
20
  [experimental]
19
21
  DOC_STRING("Provides a factory method to create an instance of a ViewComponent. See @IReactCompositionViewComponentBuilder.SetCreateView")
20
- delegate Object CompositionComponentFactory(ICompositionContext context);
22
+ delegate Object CompositionComponentFactory(Microsoft.ReactNative.IReactContext reactContext, ICompositionContext context);
21
23
 
22
24
  // TODO should make an event args, with a handled bit instead of return value
23
25
  [experimental]
@@ -44,6 +46,12 @@ namespace Microsoft.ReactNative.Composition
44
46
  DOC_STRING("A delegate that handles input messages for an instance of a ViewComponent. See @IReactCompositionViewComponentBuilder.SetMessageHandler")
45
47
  delegate Int64 MessageHandler(Object handle, UInt32 Msg, UInt64 WParam, Int64 LParam);
46
48
 
49
+ [experimental]
50
+ delegate void KeyHandler(Object handle, Microsoft.ReactNative.Composition.Input.KeyboardSource source, Microsoft.ReactNative.Composition.Input.KeyRoutedEventArgs args);
51
+
52
+ [experimental]
53
+ delegate void PointerHandler(Object handle, Microsoft.ReactNative.Composition.Input.PointerRoutedEventArgs args);
54
+
47
55
  [webhosthidden]
48
56
  [experimental]
49
57
  DOC_STRING(".")
@@ -79,6 +87,20 @@ namespace Microsoft.ReactNative.Composition
79
87
  DOC_STRING("Used to handle native input into this component.")
80
88
  // (Object handle, UInt32 Msg, UInt64 WParam, Int64 LParam) => Int64
81
89
  void SetMessageHandler(MessageHandler impl);
90
+
91
+ DOC_STRING("Used to handle key down events when this component is focused, or if a child component did not handle the key down")
92
+ void SetKeyDownHandler(KeyHandler impl);
93
+
94
+ DOC_STRING("Used to handle key up events when this component is focused, or if a child component did not handle the key up")
95
+ void SetKeyUpHandler(KeyHandler impl);
96
+
97
+ void SetPointerPressedHandler(PointerHandler impl);
98
+ void SetPointerReleasedHandler(PointerHandler impl);
99
+ void SetPointerMovedHandler(PointerHandler impl);
100
+ void SetPointerWheelChangedHandler(PointerHandler impl);
101
+ void SetPointerEnteredHandler(PointerHandler impl);
102
+ void SetPointerExitedHandler(PointerHandler impl);
103
+
82
104
  };
83
105
 
84
106
 
@@ -100,7 +100,7 @@ IReactDispatcher ReactContext::JSDispatcher() noexcept {
100
100
  return Properties().Get(ReactDispatcherHelper::JSDispatcherProperty()).try_as<IReactDispatcher>();
101
101
  }
102
102
 
103
- Windows::Foundation::IInspectable ReactContext::JSRuntime() noexcept {
103
+ winrt::Windows::Foundation::IInspectable ReactContext::JSRuntime() noexcept {
104
104
  return m_context->JsiRuntime();
105
105
  }
106
106
 
@@ -16,8 +16,8 @@ MSO_GUID(IReactNotificationSubscriptionPrivate, "09437980-3508-4690-930c-7c310e2
16
16
  struct IReactNotificationSubscriptionPrivate : ::IUnknown {
17
17
  virtual void SetParent(IReactNotificationSubscription const &parentSubscription) noexcept = 0;
18
18
  virtual void CallHandler(
19
- Windows::Foundation::IInspectable const &sender,
20
- Windows::Foundation::IInspectable const &data) noexcept = 0;
19
+ winrt::Windows::Foundation::IInspectable const &sender,
20
+ winrt::Windows::Foundation::IInspectable const &data) noexcept = 0;
21
21
  };
22
22
 
23
23
  // The Notification subscription class.
@@ -123,7 +123,8 @@ struct ReactNotificationSubscriptionView : implements<
123
123
  ReactNotificationSubscriptionView(
124
124
  weak_ref<ReactNotificationService> &&notificationService,
125
125
  IReactNotificationSubscription const &childSubscription) noexcept
126
- : m_notificationService{std::move(notificationService)}, m_childSubscription{weak_ref(childSubscription)} {
126
+ : m_notificationService{std::move(notificationService)},
127
+ m_childSubscription{weak_ref<IReactNotificationSubscription>(childSubscription)} {
127
128
  childSubscription.as<IReactNotificationSubscriptionPrivate>()->SetParent(*this);
128
129
  }
129
130
 
@@ -637,15 +637,12 @@
637
637
  <PackageReference Include="Microsoft.Windows.CppWinRT" Version="$(CppWinRTVersion)" PrivateAssets="all" />
638
638
  <PackageReference Include="Microsoft.JavaScript.Hermes" Version="$(HermesVersion)" />
639
639
  <PackageReference Include="$(WinUIPackageName)" Version="$(WinUIPackageVersion)" Condition="'$(OverrideWinUIPackage)'!='true'" />
640
- <PackageReference Include="Microsoft.Windows.SDK.BuildTools" Version="10.0.22000.194" />
641
640
  <PackageReference Include="$(V8PackageName)" Version="$(V8Version)" Condition="'$(UseV8)' == 'true'" />
642
641
  </ItemGroup>
643
642
  <Choose>
644
643
  <When Condition="'$(EnableSourceLink)' == 'true'">
645
644
  <ItemGroup>
646
- <PackageReference Include="Microsoft.Build.Tasks.Git" Version="1.0.0" />
647
- <PackageReference Include="Microsoft.SourceLink.Common" Version="1.0.0" />
648
- <PackageReference Include="Microsoft.SourceLink.GitHub" Version="1.0.0" />
645
+ <PackageReference Include="Microsoft.SourceLink.GitHub" Version="1.1.1" />
649
646
  </ItemGroup>
650
647
  </When>
651
648
  </Choose>
@@ -191,7 +191,7 @@ void Alert::ProcessPendingAlertRequestsMessageDialog() noexcept {
191
191
  }
192
192
 
193
193
  if (!args.cancelable.value_or(true)) {
194
- messageDialog.CancelCommandIndex(0xffffffff /* -1 doesn't allow cancelation of message dialog */);
194
+ messageDialog.CancelCommandIndex(0xffffffff /* -1 doesn't allow cancellation of message dialog */);
195
195
  }
196
196
 
197
197
  auto hwnd = winrt::Microsoft::ReactNative::implementation::ReactCoreInjection::GetTopLevelWindowId(
@@ -223,7 +223,7 @@ void Alert::ProcessPendingAlertRequests() noexcept {
223
223
  }
224
224
  #ifdef USE_FABRIC
225
225
  else {
226
- // If we dont have xaml loaded, fallback to using MessageDialog
226
+ // If we don't have xaml loaded, fallback to using MessageDialog
227
227
  ProcessPendingAlertRequestsMessageDialog();
228
228
  }
229
229
  #endif
@@ -46,8 +46,7 @@ comp::Compositor NativeAnimatedNodeManager::Compositor() const noexcept {
46
46
  winrt::Microsoft::ReactNative::Composition::implementation::CompositionUIService::GetCompositionContext(
47
47
  m_context.Properties().Handle());
48
48
  if (compositionContext) {
49
- return winrt::Microsoft::ReactNative::Composition::implementation::CompositionContextHelper::InnerCompositor(
50
- compositionContext);
49
+ return winrt::Microsoft::ReactNative::Composition::CompositionContextHelper::InnerCompositor(compositionContext);
51
50
  }
52
51
  #endif
53
52
  #ifndef CORE_ABI
@@ -25,7 +25,7 @@ namespace Microsoft::ReactNative {
25
25
  /// implementation drives UI changes.
26
26
  ///
27
27
  /// It implements a management interface for animated nodes graph and
28
- /// establishes a number of composistion animations and property sets to
28
+ /// establishes a number of composition animations and property sets to
29
29
  /// drive the animating of the nodes to the Xaml elements off the UI Thread
30
30
  ///
31
31
  /// </summary>
@@ -181,9 +181,8 @@ void PropsAnimatedNode::StartAnimations() {
181
181
  view.m_element.RotationAxis(m_rotationAxis);
182
182
  #ifdef USE_FABRIC
183
183
  } else {
184
- auto visual =
185
- winrt::Microsoft::ReactNative::Composition::implementation::CompositionContextHelper::InnerVisual(
186
- view.m_componentView->Visual());
184
+ auto visual = winrt::Microsoft::ReactNative::Composition::CompositionContextHelper::InnerVisual(
185
+ view.m_componentView->Visual());
187
186
  visual.RotationAxis(m_rotationAxis);
188
187
  #endif
189
188
  }
@@ -393,7 +392,7 @@ void PropsAnimatedNode::StartAnimation(
393
392
  view.m_element.StartAnimation(animation);
394
393
  #ifdef USE_FABRIC
395
394
  } else if (view.m_componentView) {
396
- auto visual = winrt::Microsoft::ReactNative::Composition::implementation::CompositionContextHelper::InnerVisual(
395
+ auto visual = winrt::Microsoft::ReactNative::Composition::CompositionContextHelper::InnerVisual(
397
396
  view.m_componentView->Visual());
398
397
  if (visual) {
399
398
  auto targetProp = animation.Target();
@@ -88,7 +88,7 @@ void AppState::RemoveListeners(double /*count*/) noexcept {
88
88
  // noop
89
89
  }
90
90
 
91
- ReactNativeSpecs::AppStateSpec_Constants AppState::GetConstants() noexcept {
91
+ ReactNativeSpecs::AppStateSpec_AppStateConstants AppState::GetConstants() noexcept {
92
92
  return {GetAppState()};
93
93
  }
94
94
 
@@ -14,7 +14,7 @@ namespace Microsoft::ReactNative {
14
14
  REACT_MODULE(AppState)
15
15
  struct AppState : public std::enable_shared_from_this<AppState> {
16
16
  using ModuleSpec = ReactNativeSpecs::AppStateSpec;
17
- using AppStateChangeArgs = ReactNativeSpecs::AppStateSpec_getCurrentAppState_success_appState;
17
+ using AppStateChangeArgs = ReactNativeSpecs::AppStateSpec_AppState;
18
18
 
19
19
  REACT_INIT(Initialize)
20
20
  void Initialize(winrt::Microsoft::ReactNative::ReactContext const &reactContext) noexcept;
@@ -31,7 +31,7 @@ struct AppState : public std::enable_shared_from_this<AppState> {
31
31
  void RemoveListeners(double count) noexcept;
32
32
 
33
33
  REACT_GET_CONSTANTS(GetConstants)
34
- ReactNativeSpecs::AppStateSpec_Constants GetConstants() noexcept;
34
+ ReactNativeSpecs::AppStateSpec_AppStateConstants GetConstants() noexcept;
35
35
 
36
36
  REACT_EVENT(AppStateDidChange, L"appStateDidChange")
37
37
  std::function<void(AppStateChangeArgs const &)> AppStateDidChange;
@@ -3,7 +3,7 @@
3
3
 
4
4
  #pragma once
5
5
 
6
- #include "../../codegen/NativeAppearanceSpec.g.h"
6
+ #include "codegen/NativeAppearanceSpec.g.h"
7
7
  #include <React.h>
8
8
  #include <winrt/Windows.UI.ViewManagement.h>
9
9
 
@@ -6,7 +6,9 @@
6
6
  #include <DesktopWindowBridge.h>
7
7
  #include <IReactDispatcher.h>
8
8
  #include <IReactPropertyBag.h>
9
+ #ifndef USE_WINUI3
9
10
  #include <UI.Xaml.Hosting.DesktopWindowXamlSource.h>
11
+ #endif
10
12
  #include <Utils/Helpers.h>
11
13
  #include <XamlUIService.h>
12
14
  #include <XamlUtils.h>
@@ -175,8 +177,8 @@ void DeviceInfoHolder::updateDeviceInfo() noexcept {
175
177
  }
176
178
  }
177
179
 
178
- ReactNativeSpecs::DeviceInfoSpec_Constants DeviceInfo::GetConstants() noexcept {
179
- ReactNativeSpecs::DeviceInfoSpec_Constants constants;
180
+ ReactNativeSpecs::DeviceInfoSpec_DeviceInfoConstants DeviceInfo::GetConstants() noexcept {
181
+ ReactNativeSpecs::DeviceInfoSpec_DeviceInfoConstants constants;
180
182
  constants.Dimensions = DeviceInfoHolder::GetDimensions(m_context.Properties());
181
183
  return constants;
182
184
  }
@@ -56,7 +56,7 @@ struct DeviceInfo : public std::enable_shared_from_this<DeviceInfo> {
56
56
  void Initialize(React::ReactContext const &reactContext) noexcept;
57
57
 
58
58
  REACT_GET_CONSTANTS(GetConstants)
59
- ReactNativeSpecs::DeviceInfoSpec_Constants GetConstants() noexcept;
59
+ ReactNativeSpecs::DeviceInfoSpec_DeviceInfoConstants GetConstants() noexcept;
60
60
 
61
61
  private:
62
62
  winrt::Microsoft::ReactNative::ReactContext m_context;
@@ -61,7 +61,7 @@ void I18nManager::SwapLeftAndRightInRTL(bool /*flipStyles*/) noexcept {
61
61
  // TODO - https://github.com/microsoft/react-native-windows/issues/4662
62
62
  }
63
63
 
64
- ReactNativeSpecs::I18nManagerSpec_Constants I18nManager::GetConstants() noexcept {
64
+ ReactNativeSpecs::I18nManagerSpec_I18nManagerConstants I18nManager::GetConstants() noexcept {
65
65
  std::string locale = "en-us";
66
66
 
67
67
  auto langs = winrt::Windows::Globalization::ApplicationLanguages::Languages();
@@ -69,7 +69,7 @@ ReactNativeSpecs::I18nManagerSpec_Constants I18nManager::GetConstants() noexcept
69
69
  locale = Microsoft::Common::Unicode::Utf16ToUtf8(langs.GetAt(0));
70
70
  }
71
71
 
72
- ReactNativeSpecs::I18nManagerSpec_Constants constants;
72
+ ReactNativeSpecs::I18nManagerSpec_I18nManagerConstants constants;
73
73
  constants.localeIdentifier = locale;
74
74
  constants.doLeftAndRightSwapInRTL = false;
75
75
  constants.isRTL = IsRTL(m_context.Properties());
@@ -24,7 +24,7 @@ struct I18nManager {
24
24
  void Initialize(React::ReactContext const &reactContext) noexcept;
25
25
 
26
26
  REACT_GET_CONSTANTS(GetConstants)
27
- ReactNativeSpecs::I18nManagerSpec_Constants GetConstants() noexcept;
27
+ ReactNativeSpecs::I18nManagerSpec_I18nManagerConstants GetConstants() noexcept;
28
28
 
29
29
  REACT_METHOD(AllowRTL, L"allowRTL")
30
30
  void AllowRTL(bool allowRTL) noexcept;