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
@@ -51,43 +51,19 @@ winrt::AutomationPeer ViewPanel::OnCreateAutomationPeer() {
51
51
  }
52
52
 
53
53
  /*static*/ xaml::DependencyProperty ViewPanel::ViewBackgroundProperty() {
54
- static xaml::DependencyProperty s_viewBackgroundProperty = xaml::DependencyProperty::Register(
55
- L"ViewBackground",
56
- winrt::xaml_typename<winrt::Brush>(),
57
- viewPanelTypeName,
58
- winrt::PropertyMetadata(xaml::Media::SolidColorBrush(), ViewPanel::VisualPropertyChanged));
59
-
60
- return s_viewBackgroundProperty;
54
+ return xaml::Controls::Panel::BackgroundProperty();
61
55
  }
62
56
 
63
57
  /*static*/ xaml::DependencyProperty ViewPanel::BorderThicknessProperty() {
64
- static xaml::DependencyProperty s_borderThicknessProperty = xaml::DependencyProperty::Register(
65
- L"BorderThickness",
66
- winrt::xaml_typename<winrt::Thickness>(),
67
- viewPanelTypeName,
68
- winrt::PropertyMetadata(winrt::box_value(winrt::Thickness()), ViewPanel::VisualPropertyChanged));
69
-
70
- return s_borderThicknessProperty;
58
+ return xaml::Controls::Grid::BorderThicknessProperty();
71
59
  }
72
60
 
73
61
  /*static*/ xaml::DependencyProperty ViewPanel::BorderBrushProperty() {
74
- static xaml::DependencyProperty s_borderBrushProperty = xaml::DependencyProperty::Register(
75
- L"BorderBrush",
76
- winrt::xaml_typename<winrt::Brush>(),
77
- viewPanelTypeName,
78
- winrt::PropertyMetadata(xaml::Media::SolidColorBrush(), ViewPanel::VisualPropertyChanged));
79
-
80
- return s_borderBrushProperty;
62
+ return xaml::Controls::Grid::BorderBrushProperty();
81
63
  }
82
64
 
83
65
  /*static*/ xaml::DependencyProperty ViewPanel::CornerRadiusProperty() {
84
- static xaml::DependencyProperty s_cornerRadiusProperty = xaml::DependencyProperty::Register(
85
- L"CornerRadius",
86
- winrt::xaml_typename<xaml::CornerRadius>(),
87
- viewPanelTypeName,
88
- winrt::PropertyMetadata(winrt::box_value(xaml::CornerRadius()), ViewPanel::VisualPropertyChanged));
89
-
90
- return s_cornerRadiusProperty;
66
+ return xaml::Controls::Grid::CornerRadiusProperty();
91
67
  }
92
68
 
93
69
  /*static*/ xaml::DependencyProperty ViewPanel::TopProperty() {
@@ -98,16 +74,6 @@ winrt::AutomationPeer ViewPanel::OnCreateAutomationPeer() {
98
74
  return xaml::Controls::Canvas::LeftProperty();
99
75
  }
100
76
 
101
- /*static*/ xaml::DependencyProperty ViewPanel::ClipChildrenProperty() {
102
- static xaml::DependencyProperty s_clipChildrenProperty = xaml::DependencyProperty::Register(
103
- L"ClipChildren",
104
- winrt::xaml_typename<bool>(),
105
- viewPanelTypeName,
106
- winrt::PropertyMetadata(winrt::box_value(false), ViewPanel::VisualPropertyChanged));
107
-
108
- return s_clipChildrenProperty;
109
- }
110
-
111
77
  /*static*/ void ViewPanel::SetTop(xaml::UIElement const &element, double value) {
112
78
  element.SetValue(TopProperty(), winrt::box_value<double>(value));
113
79
  InvalidateForArrange(element);
@@ -141,52 +107,34 @@ winrt::Size ViewPanel::MeasureOverride(winrt::Size /*availableSize*/) {
141
107
  }
142
108
 
143
109
  winrt::Size ViewPanel::ArrangeOverride(winrt::Size finalSize) {
144
- // Sometimes we create outerBorder(i.e. when CornerRadius is true) instead of innerBorder,
145
- // Yoga has no notion of outerBorder when calculating the child's position, so we
146
- // need to make adujustment in arrange for outerborder's thickness.
147
- float outerBorderLeft = 0;
148
- float outerBorderTop = 0;
149
- if (auto outerBorder = GetOuterBorder()) {
150
- auto borderThickness = outerBorder.BorderThickness();
151
- outerBorderLeft = static_cast<float>(borderThickness.Left);
152
- outerBorderTop = static_cast<float>(borderThickness.Top);
153
- }
154
110
  for (xaml::UIElement child : Children()) {
155
111
  double childHeight = 0.0;
156
112
  double childWidth = 0.0;
157
113
 
158
- // A Border or inner ViewPanel should take up the same space as this panel
159
- if (child == m_border) {
160
- childWidth = finalSize.Width;
161
- childHeight = finalSize.Height;
162
- } else {
163
- // We expect elements to have been arranged by yoga which means their
164
- // Width & Height are set
165
- xaml::FrameworkElement fe = child.try_as<xaml::FrameworkElement>();
166
- if (fe != nullptr) {
167
- childWidth = fe.Width();
168
- childHeight = fe.Height();
169
- }
170
- // But we fall back to the measured size otherwise
171
- else {
172
- childWidth = child.DesiredSize().Width;
173
- childHeight = child.DesiredSize().Height;
174
- }
114
+ // We expect elements to have been arranged by yoga which means their
115
+ // Width & Height are set
116
+ xaml::FrameworkElement fe = child.try_as<xaml::FrameworkElement>();
117
+ if (fe != nullptr) {
118
+ childWidth = fe.Width();
119
+ childHeight = fe.Height();
120
+ }
121
+ // But we fall back to the measured size otherwise
122
+ else {
123
+ childWidth = child.DesiredSize().Width;
124
+ childHeight = child.DesiredSize().Height;
175
125
  }
176
126
 
177
127
  // Guard against negative values
178
128
  childWidth = std::max<double>(0.0f, childWidth);
179
129
  childHeight = std::max<double>(0.0f, childHeight);
180
130
 
181
- float adjustedLeft = static_cast<float>(ViewPanel::GetLeft(child)) - outerBorderLeft;
182
- float adjustedTop = static_cast<float>(ViewPanel::GetTop(child)) - outerBorderTop;
183
-
184
- child.Arrange(
185
- winrt::Rect(adjustedLeft, adjustedTop, static_cast<float>(childWidth), static_cast<float>(childHeight)));
131
+ child.Arrange(winrt::Rect(
132
+ static_cast<float>(ViewPanel::GetLeft(child)),
133
+ static_cast<float>(ViewPanel::GetTop(child)),
134
+ static_cast<float>(childWidth),
135
+ static_cast<float>(childHeight)));
186
136
  }
187
137
 
188
- UpdateClip(finalSize);
189
-
190
138
  return finalSize;
191
139
  }
192
140
 
@@ -213,151 +161,4 @@ void ViewPanel::ViewBackground(winrt::Brush const &value) {
213
161
  SetValue(ViewBackgroundProperty(), winrt::box_value(value));
214
162
  }
215
163
 
216
- void ViewPanel::BorderThickness(winrt::Thickness const &value) {
217
- SetValue(BorderThicknessProperty(), winrt::box_value(value));
218
- }
219
-
220
- void ViewPanel::BorderBrush(winrt::Brush const &value) {
221
- SetValue(BorderBrushProperty(), winrt::box_value(value));
222
- }
223
-
224
- void ViewPanel::CornerRadius(xaml::CornerRadius const &value) {
225
- SetValue(CornerRadiusProperty(), winrt::box_value(value));
226
- }
227
-
228
- void ViewPanel::ClipChildren(bool value) {
229
- SetValue(ClipChildrenProperty(), winrt::box_value(value));
230
- }
231
-
232
- void ViewPanel::FinalizeProperties() {
233
- SystraceSection s("ViewPanel::FinalizeProperties");
234
- if (!m_propertiesChanged)
235
- return;
236
-
237
- // There are 3 different solutions
238
- //
239
- // A) No Border
240
- // -- No need for any border properties so just contain real children
241
- // >> Background applied to ViewPanel
242
- //
243
- // B) Inner Border (child of this panel along with real children)
244
- // -- Border created and made a child of this panel, alongside standard
245
- // children
246
- // >> Border* properties applied to Border, Background applied to
247
- // ViewPanel
248
- //
249
- // C) Outer Border
250
- // -- Border created but handed out to view manager to make parent of
251
- // this ViewPanel
252
- // >> Border* properties and Background applied to Border
253
-
254
- const auto unsetValue = xaml::DependencyProperty::UnsetValue();
255
- const Thickness emptyThickness = ThicknessHelper::FromUniformLength(0.0);
256
-
257
- bool hasBackground = ReadLocalValue(ViewBackgroundProperty()) != unsetValue;
258
- bool hasBorderBrush = ReadLocalValue(BorderBrushProperty()) != unsetValue;
259
- bool hasBorderThickness = BorderThickness() != emptyThickness;
260
- bool hasCornerRadius = ReadLocalValue(CornerRadiusProperty()) != unsetValue;
261
- bool displayBorder = hasBorderThickness;
262
-
263
- // Determine which scenario our current properties have put us into
264
- enum class Scenario { OuterBorder, InnerBorder, NoBorder } scenario;
265
- if (hasCornerRadius) {
266
- scenario = Scenario::OuterBorder;
267
- m_hasOuterBorder = true;
268
- } else if (!displayBorder) {
269
- scenario = Scenario::NoBorder;
270
- m_hasOuterBorder = false;
271
- } else if (ClipChildren()) {
272
- scenario = Scenario::OuterBorder;
273
- m_hasOuterBorder = true;
274
- } else {
275
- scenario = Scenario::InnerBorder;
276
- m_hasOuterBorder = false;
277
- }
278
-
279
- // Detach this Panel from the outer Border if needed
280
- if (scenario != Scenario::OuterBorder && m_border != nullptr) {
281
- m_border.Child(nullptr);
282
- }
283
-
284
- // Border element
285
- if (scenario != Scenario::NoBorder) {
286
- // Ensure Border is created
287
- if (m_border == nullptr) {
288
- m_border = xaml::Controls::Border();
289
-
290
- // Add border as the top child if using as inner border
291
- if (scenario == Scenario::InnerBorder)
292
- Children().Append(m_border);
293
- }
294
-
295
- // TODO: Can Binding be used here?
296
- if (hasBorderBrush)
297
- m_border.BorderBrush(BorderBrush());
298
- else if (!hasBorderThickness) {
299
- m_border.ClearValue(xaml::Controls::Border::BorderBrushProperty());
300
- }
301
-
302
- if (hasBorderThickness) {
303
- m_border.BorderThickness(BorderThickness());
304
- if (!hasBorderBrush) {
305
- // Borders with no brush draw something other than transparent on other platforms.
306
- // To match, we'll use a default border brush if one isn't already set.
307
- // Note: Keep this in sync with code in TryUpdateBorderProperties().
308
- m_border.BorderBrush(::Microsoft::ReactNative::DefaultBrushStore::Instance().GetDefaultBorderBrush());
309
- }
310
- } else
311
- m_border.ClearValue(xaml::Controls::Border::BorderThicknessProperty());
312
-
313
- if (hasCornerRadius)
314
- m_border.CornerRadius(CornerRadius());
315
- else
316
- m_border.ClearValue(xaml::Controls::Border::CornerRadiusProperty());
317
- } else if (m_border != nullptr) {
318
- // Clean up and remove the Border element
319
- m_border.Child(nullptr);
320
- Remove(m_border);
321
- m_border = nullptr;
322
- }
323
-
324
- if (scenario == Scenario::OuterBorder) {
325
- if (hasBackground)
326
- m_border.Background(ViewBackground());
327
- else
328
- m_border.ClearValue(xaml::Controls::Border::BackgroundProperty());
329
-
330
- ClearValue(winrt::Panel::BackgroundProperty());
331
-
332
- // Ensure the Border is not parented to this Panel
333
- Remove(m_border);
334
- } else {
335
- // Set any background on this Panel
336
- if (hasBackground)
337
- SetValue(winrt::Panel::BackgroundProperty(), ViewBackground());
338
- else
339
- ClearValue(winrt::Panel::BackgroundProperty());
340
- }
341
-
342
- m_propertiesChanged = false;
343
- }
344
-
345
- xaml::Controls::Border ViewPanel::GetOuterBorder() {
346
- if (m_hasOuterBorder && (m_border != nullptr))
347
- return m_border;
348
- else
349
- return xaml::Controls::Border(nullptr);
350
- }
351
-
352
- void ViewPanel::UpdateClip(winrt::Size &finalSize) {
353
- if (ClipChildren()) {
354
- winrt::RectangleGeometry clipGeometry;
355
- clipGeometry.Rect(winrt::Rect(0, 0, static_cast<float>(finalSize.Width), static_cast<float>(finalSize.Height)));
356
-
357
- Clip(clipGeometry);
358
- } else {
359
- Clip(nullptr);
360
- }
361
- }
362
-
363
164
  } // namespace winrt::Microsoft::ReactNative::implementation
@@ -28,41 +28,17 @@ struct ViewPanel : ViewPanelT<ViewPanel> {
28
28
  void RemoveAt(uint32_t const index) const;
29
29
  void Clear() const;
30
30
 
31
- void FinalizeProperties();
32
- xaml::Controls::Border GetOuterBorder();
33
-
34
31
  // Public Properties
35
32
  xaml::Media::Brush ViewBackground() {
36
33
  return GetValue(ViewBackgroundProperty()).as<xaml::Media::Brush>();
37
34
  }
38
35
  void ViewBackground(xaml::Media::Brush const &value);
39
36
 
40
- xaml::Thickness BorderThickness() {
41
- return winrt::unbox_value<xaml::Thickness>(GetValue(BorderThicknessProperty()));
42
- }
43
- void BorderThickness(xaml::Thickness const &value);
44
-
45
- xaml::Media::Brush BorderBrush() {
46
- return GetValue(BorderBrushProperty()).as<xaml::Media::Brush>();
47
- }
48
- void BorderBrush(xaml::Media::Brush const &value);
49
-
50
- xaml::CornerRadius CornerRadius() {
51
- return winrt::unbox_value<xaml::CornerRadius>(GetValue(CornerRadiusProperty()));
52
- }
53
- void CornerRadius(xaml::CornerRadius const &value);
54
-
55
- bool ClipChildren() {
56
- return winrt::unbox_value<bool>(GetValue(ClipChildrenProperty()));
57
- }
58
- void ClipChildren(bool value);
59
-
60
37
  // ViewPanel Properties
61
38
  static xaml::DependencyProperty ViewBackgroundProperty();
62
39
  static xaml::DependencyProperty BorderThicknessProperty();
63
40
  static xaml::DependencyProperty BorderBrushProperty();
64
41
  static xaml::DependencyProperty CornerRadiusProperty();
65
- static xaml::DependencyProperty ClipChildrenProperty();
66
42
 
67
43
  // Attached Properties
68
44
  static xaml::DependencyProperty TopProperty();
@@ -82,15 +58,9 @@ struct ViewPanel : ViewPanelT<ViewPanel> {
82
58
  private:
83
59
  void Remove(xaml::UIElement element) const;
84
60
 
85
- void UpdateClip(winrt::Windows::Foundation::Size &finalSize);
86
-
87
61
  private:
88
62
  bool m_propertiesChanged{false};
89
63
 
90
- // Child Elements
91
- xaml::Controls::Border m_border{nullptr};
92
- bool m_hasOuterBorder{false};
93
-
94
64
  private:
95
65
  static void VisualPropertyChanged(xaml::DependencyObject sender, xaml::DependencyPropertyChangedEventArgs e);
96
66
  };
@@ -89,13 +89,6 @@ class ViewShadowNode : public ShadowNodeBase {
89
89
  m_isControl = isControl;
90
90
  }
91
91
 
92
- bool HasOuterBorder() {
93
- return m_hasOuterBorder;
94
- }
95
- void HasOuterBorder(bool hasOuterBorder) {
96
- m_hasOuterBorder = hasOuterBorder;
97
- }
98
-
99
92
  bool EnableFocusRing() {
100
93
  return m_enableFocusRing;
101
94
  }
@@ -161,12 +154,6 @@ class ViewShadowNode : public ShadowNodeBase {
161
154
  cdebug << "Tearing down, IsControl=true but the control is not a ContentControl, it's a " << name << "\n";
162
155
  }
163
156
  }
164
-
165
- if (HasOuterBorder()) {
166
- if (auto border = current.try_as<xaml::Controls::Border>()) {
167
- border.Child(nullptr);
168
- }
169
- }
170
157
  }
171
158
 
172
159
  void ReplaceChild(const XamlView &oldChildView, const XamlView &newChildView) override {
@@ -200,12 +187,6 @@ class ViewShadowNode : public ShadowNodeBase {
200
187
  }
201
188
  }
202
189
 
203
- if (HasOuterBorder()) {
204
- if (auto border = current.try_as<xaml::Controls::Border>()) {
205
- current = border.Child().try_as<XamlView>();
206
- }
207
- }
208
-
209
190
  auto panel = current.try_as<xaml::Controls::Panel>();
210
191
  assert(panel != nullptr);
211
192
 
@@ -242,8 +223,6 @@ class ViewShadowNode : public ShadowNodeBase {
242
223
 
243
224
  private:
244
225
  bool m_isControl = false;
245
- bool m_hasOuterBorder = false;
246
-
247
226
  bool m_enableFocusRing = true;
248
227
  bool m_onClick = false;
249
228
  int32_t m_tabIndex = std::numeric_limits<std::int32_t>::max();
@@ -252,87 +231,6 @@ class ViewShadowNode : public ShadowNodeBase {
252
231
  xaml::Controls::ContentControl::LostFocus_revoker m_contentControlLostFocusRevoker{};
253
232
  };
254
233
 
255
- // ViewPanel uses a ViewBackground property, not Background, so need to
256
- // specialize
257
- // PropertyUtils' TryUpdateBackgroundBrush to use ViewBackground.
258
- // Issue #2172: Additionally, we need to use
259
- // winrt::Microsoft::ReactNative::ViewPanel::implementation::ViewBackgroundProperty
260
- // rather than the proper projected type, because of how we're using cppwinrt.
261
-
262
- template <>
263
- bool TryUpdateBackgroundBrush(
264
- const winrt::Microsoft::ReactNative::ViewPanel &element,
265
- const std::string &propertyName,
266
- const winrt::Microsoft::ReactNative::JSValue &propertyValue) {
267
- if (propertyName == "backgroundColor") {
268
- if (IsValidColorValue(propertyValue))
269
- element.ViewBackground(BrushFrom(propertyValue));
270
- else if (propertyValue.IsNull())
271
- element.ClearValue(ViewPanel::ViewBackgroundProperty());
272
-
273
- return true;
274
- }
275
-
276
- return false;
277
- }
278
-
279
- // Issue #2172: Calling winrt::Microsoft::ReactNative::ViewPanel::BorderBrushProperty fails
280
- // to call
281
- // down into winrt::Microsoft::ReactNative::implementation::ViewPanel::BorderBrushProperty
282
- // because of how we're using cppwinrt. So we specialize PropertyUtils'
283
- // TryUpdateBorderProperties
284
- // to use winrt::Microsoft::ReactNative::ViewPanel::implementation::BorderBrushProperty
285
-
286
- template <>
287
- bool TryUpdateBorderProperties(
288
- ShadowNodeBase *node,
289
- const winrt::Microsoft::ReactNative::ViewPanel &element,
290
- const std::string &propertyName,
291
- const winrt::Microsoft::ReactNative::JSValue &propertyValue) {
292
- bool isBorderProperty = true;
293
-
294
- if (propertyName == "borderColor") {
295
- if (IsValidColorValue(propertyValue))
296
- element.BorderBrush(BrushFrom(propertyValue));
297
- else if (propertyValue.IsNull())
298
- element.ClearValue(ViewPanel::BorderBrushProperty());
299
- } else if (propertyName == "borderLeftWidth") {
300
- if (propertyValue.Type() == winrt::Microsoft::ReactNative::JSValueType::Double ||
301
- propertyValue.Type() == winrt::Microsoft::ReactNative::JSValueType::Int64)
302
- SetBorderThickness(node, element, ShadowEdges::Left, propertyValue.AsDouble());
303
- } else if (propertyName == "borderTopWidth") {
304
- if (propertyValue.Type() == winrt::Microsoft::ReactNative::JSValueType::Double ||
305
- propertyValue.Type() == winrt::Microsoft::ReactNative::JSValueType::Int64)
306
- SetBorderThickness(node, element, ShadowEdges::Top, propertyValue.AsDouble());
307
- } else if (propertyName == "borderRightWidth") {
308
- if (propertyValue.Type() == winrt::Microsoft::ReactNative::JSValueType::Double ||
309
- propertyValue.Type() == winrt::Microsoft::ReactNative::JSValueType::Int64)
310
- SetBorderThickness(node, element, ShadowEdges::Right, propertyValue.AsDouble());
311
- } else if (propertyName == "borderBottomWidth") {
312
- if (propertyValue.Type() == winrt::Microsoft::ReactNative::JSValueType::Double ||
313
- propertyValue.Type() == winrt::Microsoft::ReactNative::JSValueType::Int64)
314
- SetBorderThickness(node, element, ShadowEdges::Bottom, propertyValue.AsDouble());
315
- } else if (propertyName == "borderStartWidth") {
316
- if (propertyValue.Type() == winrt::Microsoft::ReactNative::JSValueType::Double ||
317
- propertyValue.Type() == winrt::Microsoft::ReactNative::JSValueType::Int64)
318
- SetBorderThickness(node, element, ShadowEdges::Start, propertyValue.AsDouble());
319
- } else if (propertyName == "borderEndWidth") {
320
- if (propertyValue.Type() == winrt::Microsoft::ReactNative::JSValueType::Double ||
321
- propertyValue.Type() == winrt::Microsoft::ReactNative::JSValueType::Int64)
322
- SetBorderThickness(node, element, ShadowEdges::End, propertyValue.AsDouble());
323
- } else if (propertyName == "borderWidth") {
324
- if (propertyValue.Type() == winrt::Microsoft::ReactNative::JSValueType::Double ||
325
- propertyValue.Type() == winrt::Microsoft::ReactNative::JSValueType::Int64)
326
- SetBorderThickness(node, element, ShadowEdges::AllEdges, propertyValue.AsDouble());
327
- else if (propertyValue.IsNull())
328
- element.ClearValue(ViewPanel::BorderThicknessProperty());
329
- } else {
330
- isBorderProperty = false;
331
- }
332
-
333
- return isBorderProperty;
334
- }
335
-
336
234
  // ViewViewManager
337
235
 
338
236
  ViewViewManager::ViewViewManager(const Mso::React::IReactContext &context) : Super(context) {}
@@ -345,11 +243,6 @@ void ViewViewManager::GetExportedCustomDirectEventTypeConstants(
345
243
  const winrt::Microsoft::ReactNative::IJSValueWriter &writer) const {
346
244
  Super::GetExportedCustomDirectEventTypeConstants(writer);
347
245
 
348
- writer.WritePropertyName(L"topClick");
349
- writer.WriteObjectBegin();
350
- winrt::Microsoft::ReactNative::WriteProperty(writer, L"registrationName", L"onClick");
351
- writer.WriteObjectEnd();
352
-
353
246
  writer.WritePropertyName(L"topAccessibilityTap");
354
247
  writer.WriteObjectBegin();
355
248
  winrt::Microsoft::ReactNative::WriteProperty(writer, L"registrationName", L"onAccessibilityTap");
@@ -364,7 +257,7 @@ XamlView ViewViewManager::CreateViewCore(int64_t /*tag*/, const winrt::Microsoft
364
257
  auto panel = winrt::make<winrt::Microsoft::ReactNative::implementation::ViewPanel>();
365
258
  panel.VerticalAlignment(xaml::VerticalAlignment::Stretch);
366
259
  panel.HorizontalAlignment(xaml::HorizontalAlignment::Stretch);
367
-
260
+ panel.BorderBrush(DefaultBrushStore::Instance().GetDefaultBorderBrush());
368
261
  return panel.as<XamlView>();
369
262
  }
370
263
 
@@ -389,19 +282,18 @@ bool ViewViewManager::UpdateProperty(
389
282
  auto pPanel = pViewShadowNode->GetPanel().as<winrt::Microsoft::ReactNative::ViewPanel>();
390
283
  bool ret = true;
391
284
  if (pPanel != nullptr) {
392
- if (TryUpdateBackgroundBrush(pPanel, propertyName, propertyValue)) {
285
+ if (TryUpdateBackgroundBrush(pPanel.as<xaml::Controls::Panel>(), propertyName, propertyValue)) {
393
286
  } else if (TryUpdateBorderProperties(nodeToUpdate, pPanel, propertyName, propertyValue)) {
394
287
  } else if (TryUpdateCornerRadiusOnNode(nodeToUpdate, pPanel, propertyName, propertyValue)) {
395
288
  // Do not clamp until a size has been set for the View
396
289
  auto maxCornerRadius = std::numeric_limits<double>::max();
397
290
  // The Width and Height properties are not always set on ViewPanel. In
398
- // cases where it is embedded in a Control or outer Border, the values
399
- // dimensions are set on those wrapper elements. We cannot depend on the
400
- // default behavior of `UpdateCornerRadiusOnElement` to check for the
401
- // clamp dimension from only the ViewPanel.
402
- const xaml::FrameworkElement sizingElement = pViewShadowNode->IsControl() ? pViewShadowNode->GetControl()
403
- : pViewShadowNode->HasOuterBorder() ? pPanel.GetOuterBorder().as<xaml::FrameworkElement>()
404
- : pPanel;
291
+ // cases where it is embedded in a Control, the values dimensions are
292
+ // set on those wrapper elements. We cannot depend on the default
293
+ // behavior of `UpdateCornerRadiusOnElement` to check for the clamp
294
+ // dimension from only the ViewPanel.
295
+ const xaml::FrameworkElement sizingElement =
296
+ pViewShadowNode->IsControl() ? pViewShadowNode->GetControl().as<xaml::FrameworkElement>() : pPanel;
405
297
  if (sizingElement.ReadLocalValue(xaml::FrameworkElement::WidthProperty()) !=
406
298
  xaml::DependencyProperty::UnsetValue() &&
407
299
  sizingElement.ReadLocalValue(xaml::FrameworkElement::HeightProperty()) !=
@@ -412,11 +304,6 @@ bool ViewViewManager::UpdateProperty(
412
304
  } else if (TryUpdateMouseEvents(nodeToUpdate, propertyName, propertyValue)) {
413
305
  } else if (propertyName == "onClick") {
414
306
  pViewShadowNode->OnClick(propertyValue.AsBoolean());
415
- } else if (propertyName == "overflow") {
416
- if (propertyValue.Type() == winrt::Microsoft::ReactNative::JSValueType::String) {
417
- bool clipChildren = propertyValue.AsString() == "hidden";
418
- pPanel.ClipChildren(clipChildren);
419
- }
420
307
  } else if (propertyName == "focusable") {
421
308
  pViewShadowNode->IsFocusable(propertyValue.AsBoolean());
422
309
  } else if (propertyName == "enableFocusRing") {
@@ -476,8 +363,6 @@ void ViewViewManager::OnPropertiesUpdated(ShadowNodeBase *node) {
476
363
  shouldBeControl = shouldBeControl || HasDynamicAutomationProperties(view);
477
364
  }
478
365
 
479
- panel.FinalizeProperties();
480
-
481
366
  TryUpdateView(viewShadowNode, panel, shouldBeControl);
482
367
  SyncFocusableAndAccessible(viewShadowNode, shouldBeControl);
483
368
  }
@@ -487,21 +372,19 @@ void ViewViewManager::TryUpdateView(
487
372
  winrt::Microsoft::ReactNative::ViewPanel &pPanel,
488
373
  bool useControl) {
489
374
  bool isControl = pViewShadowNode->IsControl();
490
- bool hadOuterBorder = pViewShadowNode->HasOuterBorder();
491
- bool hasOuterBorder = pPanel.GetOuterBorder() != nullptr;
492
375
 
493
376
  // This short-circuits all of the update code when we have the same hierarchy
494
- if (isControl == useControl && hadOuterBorder == hasOuterBorder)
377
+ if (isControl == useControl)
495
378
  return;
496
379
 
497
380
  //
498
381
  // 1. Ensure we have the new 'root' and do the child replacement
499
- // This is first to ensure that we can re-parent the Border or ViewPanel
382
+ // This is first to ensure that we can re-parent the ViewPanel
500
383
  // we already have
501
384
  // 2. Transfer properties
502
385
  // There are likely some complexities to handle here
503
386
  // 3. Do any sub=parenting
504
- // This means Panel under Border and/or Border under Control
387
+ // This means Panel under Control
505
388
  //
506
389
 
507
390
  XamlView oldXamlView(pViewShadowNode->GetView());
@@ -520,20 +403,15 @@ void ViewViewManager::TryUpdateView(
520
403
  }
521
404
 
522
405
  // Clean up child of Control if needed
523
- if (isControl && (!useControl || (hasOuterBorder != hadOuterBorder))) {
406
+ if (isControl) {
524
407
  pViewShadowNode->GetControl().Content(nullptr);
525
408
  }
526
409
 
527
- // If don't need a control, then set Outer Border or the Panel as the view
528
- // root
410
+ // If don't need a control, then set the Panel as the view root
529
411
  if (!useControl) {
530
- newXamlView = hasOuterBorder ? pPanel.GetOuterBorder().try_as<XamlView>() : pPanel.try_as<XamlView>();
412
+ newXamlView = pPanel;
531
413
  }
532
414
 
533
- // Clean up child of Border if needed
534
- if (hasOuterBorder && !hadOuterBorder)
535
- pPanel.GetOuterBorder().Child(nullptr);
536
-
537
415
  // ASSERT: One of the scenarios should be true, so we should have a root view
538
416
  assert(newXamlView != nullptr);
539
417
 
@@ -546,13 +424,8 @@ void ViewViewManager::TryUpdateView(
546
424
  TransferProperties(oldXamlView, newXamlView);
547
425
  }
548
426
 
549
- // Since we transferred properties to the new view we need to make the call to
550
- // finalize
551
- pPanel.FinalizeProperties();
552
-
553
427
  // Update the meta-data in the shadow node
554
428
  pViewShadowNode->IsControl(useControl);
555
- pViewShadowNode->HasOuterBorder(hasOuterBorder);
556
429
 
557
430
  //
558
431
  // 3. Setup any new parent-child relationships
@@ -579,19 +452,8 @@ void ViewViewManager::TryUpdateView(
579
452
  }
580
453
  }
581
454
 
582
- // Ensure parenting is setup properly
583
- auto visualRoot = pPanel.try_as<xaml::UIElement>();
584
-
585
- if (hasOuterBorder) {
586
- xaml::Controls::Border outerBorder = pPanel.GetOuterBorder();
587
- if (outerBorder.Child() == nullptr)
588
- outerBorder.Child(pPanel.try_as<xaml::UIElement>());
589
-
590
- visualRoot = outerBorder;
591
- }
592
-
593
455
  if (useControl)
594
- pViewShadowNode->GetControl().Content(visualRoot);
456
+ pViewShadowNode->GetControl().Content(pPanel);
595
457
  }
596
458
 
597
459
  void ViewViewManager::SyncFocusableAndAccessible(ViewShadowNode *pViewShadowNode, bool useControl) {
@@ -627,13 +489,10 @@ void ViewViewManager::SetLayoutProps(
627
489
 
628
490
  Super::SetLayoutProps(nodeToUpdate, viewToUpdate, left, top, width, height);
629
491
  if (pPanel.ReadLocalValue(ViewPanel::CornerRadiusProperty()) != xaml::DependencyProperty::UnsetValue()) {
630
- // Rather than use ViewPanel::FinalizeProperties, only perform the explicit
631
- // logic required to propagate the CornerRadius value to the Border parent.
632
- auto border = pPanel.GetOuterBorder();
633
- if (border) {
492
+ if (pPanel.GetValue(React::ViewPanel::CornerRadiusProperty()) != xaml::DependencyProperty::UnsetValue()) {
634
493
  const auto maxCornerRadius = std::min(width, height) / 2;
635
494
  UpdateCornerRadiusOnElement(&nodeToUpdate, pPanel, maxCornerRadius);
636
- border.CornerRadius(pPanel.CornerRadius());
495
+ pPanel.CornerRadius(pPanel.CornerRadius());
637
496
  }
638
497
  }
639
498
  }