react-native-windows 0.84.0 → 0.85.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 (461) hide show
  1. package/.flowconfig +1 -5
  2. package/Directory.Build.props +1 -16
  3. package/Directory.Build.targets +12 -4
  4. package/Folly/ThreadNameStub.cpp +4 -6
  5. package/Libraries/ActionSheetIOS/ActionSheetIOS.js +3 -3
  6. package/Libraries/Animated/Animated.d.ts +8 -1
  7. package/Libraries/Animated/AnimatedEvent.js +4 -4
  8. package/Libraries/Animated/AnimatedImplementation.js +2 -2
  9. package/Libraries/Animated/animations/Animation.js +3 -3
  10. package/Libraries/Animated/animations/DecayAnimation.js +4 -4
  11. package/Libraries/Animated/animations/SpringAnimation.js +5 -5
  12. package/Libraries/Animated/animations/TimingAnimation.js +5 -5
  13. package/Libraries/Animated/createAnimatedComponent.js +7 -7
  14. package/Libraries/Animated/nodes/AnimatedColor.js +2 -2
  15. package/Libraries/Animated/nodes/AnimatedInterpolation.js +12 -12
  16. package/Libraries/Animated/nodes/AnimatedNode.js +3 -3
  17. package/Libraries/Animated/nodes/AnimatedObject.js +3 -3
  18. package/Libraries/Animated/nodes/AnimatedProps.js +6 -6
  19. package/Libraries/Animated/nodes/AnimatedStyle.js +7 -7
  20. package/Libraries/Animated/nodes/AnimatedTransform.js +13 -13
  21. package/Libraries/Animated/nodes/AnimatedValue.js +1 -1
  22. package/Libraries/Animated/nodes/AnimatedValueXY.js +1 -1
  23. package/Libraries/Animated/nodes/AnimatedWithChildren.js +1 -1
  24. package/Libraries/Animated/useAnimatedColor.d.ts +15 -0
  25. package/Libraries/Animated/useAnimatedColor.js +25 -0
  26. package/Libraries/Animated/useAnimatedValueXY.d.ts +15 -0
  27. package/Libraries/Animated/useAnimatedValueXY.js +26 -0
  28. package/Libraries/AppState/AppState.js +1 -1
  29. package/Libraries/BatchedBridge/MessageQueue.js +3 -3
  30. package/Libraries/BatchedBridge/NativeModules.js +12 -10
  31. package/Libraries/Components/AccessibilityInfo/AccessibilityInfo.js +30 -26
  32. package/Libraries/Components/AccessibilityInfo/AccessibilityInfo.windows.js +34 -30
  33. package/Libraries/Components/ActivityIndicator/ActivityIndicator.js +2 -2
  34. package/Libraries/Components/Button.js +2 -2
  35. package/Libraries/Components/Button.windows.js +2 -2
  36. package/Libraries/Components/DrawerAndroid/DrawerLayoutAndroidTypes.js +2 -2
  37. package/Libraries/Components/Keyboard/Keyboard.js +6 -6
  38. package/Libraries/Components/Keyboard/KeyboardAvoidingView.js +1 -1
  39. package/Libraries/Components/LayoutConformance/LayoutConformance.js +1 -1
  40. package/Libraries/Components/LayoutConformance/LayoutConformanceNativeComponent.js +1 -1
  41. package/Libraries/Components/Pressable/Pressable.d.ts +5 -0
  42. package/Libraries/Components/Pressable/Pressable.js +3 -3
  43. package/Libraries/Components/Pressable/Pressable.windows.js +3 -3
  44. package/Libraries/Components/Pressable/useAndroidRippleForView.js +4 -4
  45. package/Libraries/Components/ProgressBarAndroid/ProgressBarAndroid.js +1 -1
  46. package/Libraries/Components/ProgressBarAndroid/ProgressBarAndroidTypes.js +3 -3
  47. package/Libraries/Components/RefreshControl/RefreshControl.js +5 -5
  48. package/Libraries/Components/RefreshControl/RefreshControl.windows.js +5 -5
  49. package/Libraries/Components/ScrollView/AndroidHorizontalScrollViewNativeComponent.js +8 -12
  50. package/Libraries/Components/ScrollView/ScrollView.d.ts +9 -0
  51. package/Libraries/Components/ScrollView/ScrollView.js +19 -9
  52. package/Libraries/Components/ScrollView/ScrollView.windows.js +19 -9
  53. package/Libraries/Components/ScrollView/ScrollViewNativeComponent.js +8 -18
  54. package/Libraries/Components/ScrollView/ScrollViewNativeComponent.windows.js +8 -18
  55. package/Libraries/Components/ScrollView/ScrollViewNativeComponentType.js +4 -3
  56. package/Libraries/Components/ScrollView/ScrollViewStickyHeader.js +1 -1
  57. package/Libraries/Components/StaticRenderer.js +1 -1
  58. package/Libraries/Components/StatusBar/StatusBar.js +8 -8
  59. package/Libraries/Components/Switch/Switch.js +3 -3
  60. package/Libraries/Components/Switch/Switch.windows.js +3 -3
  61. package/Libraries/Components/TextInput/AndroidTextInputNativeComponent.js +33 -48
  62. package/Libraries/Components/TextInput/InputAccessoryView.js +1 -1
  63. package/Libraries/Components/TextInput/RCTTextInputViewConfig.js +6 -11
  64. package/Libraries/Components/TextInput/TextInput.flow.js +21 -20
  65. package/Libraries/Components/TextInput/TextInput.flow.windows.js +23 -22
  66. package/Libraries/Components/TextInput/TextInput.js +8 -4
  67. package/Libraries/Components/TextInput/TextInput.windows.js +3 -4
  68. package/Libraries/Components/TextInput/WindowsTextInputNativeComponent.js +33 -48
  69. package/Libraries/Components/Touchable/PooledClass.js +1 -1
  70. package/Libraries/Components/Touchable/Touchable.js +2 -2
  71. package/Libraries/Components/Touchable/Touchable.windows.js +2 -2
  72. package/Libraries/Components/Touchable/TouchableBounce.js +4 -4
  73. package/Libraries/Components/Touchable/TouchableBounce.windows.js +4 -4
  74. package/Libraries/Components/Touchable/TouchableHighlight.js +8 -8
  75. package/Libraries/Components/Touchable/TouchableHighlight.windows.js +9 -9
  76. package/Libraries/Components/Touchable/TouchableNativeFeedback.js +7 -7
  77. package/Libraries/Components/Touchable/TouchableNativeFeedback.windows.js +7 -7
  78. package/Libraries/Components/Touchable/TouchableOpacity.js +4 -4
  79. package/Libraries/Components/Touchable/TouchableOpacity.windows.js +4 -4
  80. package/Libraries/Components/Touchable/TouchableWithoutFeedback.js +1 -1
  81. package/Libraries/Components/Touchable/TouchableWithoutFeedback.windows.js +1 -1
  82. package/Libraries/Components/UnimplementedViews/UnimplementedView.js +1 -1
  83. package/Libraries/Components/View/ReactNativeStyleAttributes.js +68 -31
  84. package/Libraries/Components/View/View.windows.js +1 -1
  85. package/Libraries/Components/View/ViewAccessibility.js +7 -7
  86. package/Libraries/Components/View/ViewAccessibility.windows.js +7 -7
  87. package/Libraries/Components/View/ViewPropTypes.js +14 -14
  88. package/Libraries/Components/View/ViewPropTypes.windows.js +18 -16
  89. package/Libraries/Core/Devtools/parseHermesStack.js +8 -8
  90. package/Libraries/Core/Devtools/symbolicateStackTrace.js +2 -2
  91. package/Libraries/Core/ExceptionsManager.js +2 -2
  92. package/Libraries/Core/ExtendedError.js +3 -3
  93. package/Libraries/Core/RawEventEmitter.js +1 -1
  94. package/Libraries/Core/ReactNativeVersion.js +2 -2
  95. package/Libraries/Core/Timers/JSTimers.js +3 -2
  96. package/Libraries/Core/setUpDeveloperTools.js +1 -1
  97. package/Libraries/Core/setUpErrorHandling.js +4 -2
  98. package/Libraries/Core/setUpReactDevTools.js +23 -6
  99. package/Libraries/Core/setUpSegmentFetcher.js +1 -1
  100. package/Libraries/Debugging/DebuggingOverlay.js +2 -2
  101. package/Libraries/EventEmitter/NativeEventEmitter.js +7 -9
  102. package/Libraries/EventEmitter/RCTDeviceEventEmitter.js +1 -1
  103. package/Libraries/Image/AssetSourceResolver.js +1 -1
  104. package/Libraries/Image/AssetSourceResolver.windows.js +1 -1
  105. package/Libraries/Image/Image.android.js +172 -306
  106. package/Libraries/Image/ImageProps.js +9 -11
  107. package/Libraries/Image/ImageSource.js +2 -2
  108. package/Libraries/Image/ImageSourceUtils.js +8 -4
  109. package/Libraries/Image/ImageTypes.flow.js +2 -2
  110. package/Libraries/Image/ImageViewNativeComponent.js +7 -16
  111. package/Libraries/Image/nativeImageSource.js +1 -1
  112. package/Libraries/Interaction/InteractionManager.js +5 -4
  113. package/Libraries/Interaction/PanResponder.js +1 -1
  114. package/Libraries/LayoutAnimation/LayoutAnimation.js +2 -2
  115. package/Libraries/Linking/Linking.js +1 -1
  116. package/Libraries/Lists/FlatList.js +3 -3
  117. package/Libraries/Lists/SectionList.js +1 -1
  118. package/Libraries/Lists/SectionListModern.js +2 -2
  119. package/Libraries/LogBox/Data/LogBoxData.js +38 -24
  120. package/Libraries/LogBox/Data/LogBoxLog.js +43 -112
  121. package/Libraries/LogBox/Data/parseLogBoxLog.js +21 -117
  122. package/Libraries/LogBox/LogBox.js +42 -19
  123. package/Libraries/LogBox/LogBoxInspectorContainer.js +2 -2
  124. package/Libraries/LogBox/LogBoxNotificationContainer.js +2 -2
  125. package/Libraries/LogBox/UI/LogBoxButton.js +14 -16
  126. package/Libraries/LogBox/UI/LogBoxInspector.js +2 -2
  127. package/Libraries/LogBox/UI/LogBoxInspectorCodeFrame.js +6 -9
  128. package/Libraries/LogBox/UI/LogBoxInspectorCodeFrame.windows.js +6 -9
  129. package/Libraries/LogBox/UI/LogBoxInspectorFooter.js +1 -1
  130. package/Libraries/LogBox/UI/LogBoxInspectorFooterButton.js +1 -1
  131. package/Libraries/LogBox/UI/LogBoxInspectorHeader.js +1 -1
  132. package/Libraries/LogBox/UI/LogBoxInspectorHeader.windows.js +1 -1
  133. package/Libraries/LogBox/UI/LogBoxInspectorHeaderButton.js +1 -1
  134. package/Libraries/LogBox/UI/LogBoxInspectorMessageHeader.js +10 -15
  135. package/Libraries/LogBox/UI/LogBoxInspectorReactFrames.js +25 -18
  136. package/Libraries/LogBox/UI/LogBoxInspectorReactFrames.windows.js +15 -16
  137. package/Libraries/LogBox/UI/LogBoxInspectorSection.js +5 -7
  138. package/Libraries/LogBox/UI/LogBoxInspectorSourceMapStatus.js +8 -10
  139. package/Libraries/LogBox/UI/LogBoxInspectorStackFrame.js +8 -6
  140. package/Libraries/LogBox/UI/LogBoxInspectorStackFrame.windows.js +3 -5
  141. package/Libraries/LogBox/UI/LogBoxInspectorStackFrames.js +17 -29
  142. package/Libraries/LogBox/UI/LogBoxMessage.js +28 -37
  143. package/Libraries/LogBox/UI/LogBoxNotification.js +1 -1
  144. package/Libraries/Modal/Modal.d.ts +4 -0
  145. package/Libraries/Modal/Modal.js +3 -3
  146. package/Libraries/Modal/Modal.windows.js +7 -3
  147. package/Libraries/NativeComponent/BaseViewConfig.android.js +28 -52
  148. package/Libraries/NativeComponent/BaseViewConfig.ios.js +19 -21
  149. package/Libraries/NativeComponent/BaseViewConfig.windows.js +26 -17
  150. package/Libraries/Network/RCTNetworking.android.js +1 -1
  151. package/Libraries/Network/RCTNetworking.ios.js +1 -1
  152. package/Libraries/Network/RCTNetworking.js.flow +1 -1
  153. package/Libraries/Network/RCTNetworking.windows.js +1 -1
  154. package/Libraries/Network/RCTNetworkingEventDefinitions.flow.js +1 -1
  155. package/Libraries/Network/XMLHttpRequest.js +1 -1
  156. package/Libraries/PermissionsAndroid/PermissionsAndroid.js +3 -3
  157. package/Libraries/Pressability/Pressability.js +5 -5
  158. package/Libraries/Pressability/Pressability.windows.js +5 -5
  159. package/Libraries/Pressability/PressabilityDebug.js +1 -1
  160. package/Libraries/Pressability/PressabilityPerformanceEventEmitter.js +1 -1
  161. package/Libraries/Pressability/usePressability.js +3 -14
  162. package/Libraries/PushNotificationIOS/PushNotificationIOS.js +2 -2
  163. package/Libraries/ReactNative/AppContainer-dev.js +18 -1
  164. package/Libraries/ReactNative/AppContainer.js +1 -1
  165. package/Libraries/ReactNative/AppRegistry.flow.js +2 -2
  166. package/Libraries/ReactNative/AppRegistryImpl.js +2 -2
  167. package/Libraries/ReactNative/FabricUIManager.js +1 -1
  168. package/Libraries/ReactNative/RendererImplementation.js +4 -4
  169. package/Libraries/ReactNative/UIManagerProperties.js +1 -1
  170. package/Libraries/Renderer/implementations/ReactNativeRenderer-dev.js +3 -2
  171. package/Libraries/Renderer/implementations/ReactNativeRenderer-prod.js +3 -2
  172. package/Libraries/Renderer/implementations/ReactNativeRenderer-profiling.js +3 -2
  173. package/Libraries/Renderer/shims/ReactFabric.js +1 -3
  174. package/Libraries/Renderer/shims/ReactFeatureFlags.js +1 -3
  175. package/Libraries/Renderer/shims/ReactNative.js +3 -2
  176. package/Libraries/Renderer/shims/ReactNativeTypes.js +1 -3
  177. package/Libraries/Renderer/shims/ReactNativeTypes.windows.js +1 -3
  178. package/Libraries/Renderer/shims/ReactNativeViewConfigRegistry.js +1 -3
  179. package/Libraries/Renderer/shims/createReactNativeComponentClass.js +1 -3
  180. package/Libraries/StyleSheet/PointPropType.js +1 -1
  181. package/Libraries/StyleSheet/Rect.js +1 -1
  182. package/Libraries/StyleSheet/StyleSheet.d.ts +0 -5
  183. package/Libraries/StyleSheet/StyleSheet.js +1 -1
  184. package/Libraries/StyleSheet/StyleSheet.js.flow +1 -1
  185. package/Libraries/StyleSheet/StyleSheetExports.js +16 -25
  186. package/Libraries/StyleSheet/StyleSheetExports.js.flow +2 -7
  187. package/Libraries/StyleSheet/StyleSheetTypes.js +33 -35
  188. package/Libraries/StyleSheet/private/_StyleSheetTypesOverrides.js +5 -5
  189. package/Libraries/StyleSheet/private/_TransformStyle.js +7 -7
  190. package/Libraries/StyleSheet/processBackgroundImage.js +7 -7
  191. package/Libraries/StyleSheet/processBackgroundPosition.js +4 -4
  192. package/Libraries/StyleSheet/processBackgroundRepeat.js +4 -4
  193. package/Libraries/StyleSheet/processBackgroundSize.js +4 -4
  194. package/Libraries/StyleSheet/processBoxShadow.js +44 -4
  195. package/Libraries/StyleSheet/processColorArray.js +2 -2
  196. package/Libraries/StyleSheet/processFilter.js +2 -2
  197. package/Libraries/Text/Text.js +295 -627
  198. package/Libraries/Text/Text.windows.js +342 -717
  199. package/Libraries/Text/TextNativeComponent.js +14 -7
  200. package/Libraries/Text/TextProps.js +4 -4
  201. package/Libraries/Text/TextProps.windows.js +4 -4
  202. package/Libraries/Types/CodegenTypes.js +1 -1
  203. package/Libraries/Types/CoreEventTypes.js +21 -21
  204. package/Libraries/Types/CoreEventTypes.windows.js +21 -21
  205. package/Libraries/Types/ReactDevToolsTypes.js +2 -2
  206. package/Libraries/Utilities/Appearance.js +6 -1
  207. package/Libraries/Utilities/Dimensions.js +1 -1
  208. package/Libraries/Utilities/HMRClient.js +32 -5
  209. package/Libraries/Utilities/IPerformanceLogger.js +4 -4
  210. package/Libraries/Utilities/codegenNativeCommands.js +4 -4
  211. package/Libraries/Utilities/codegenNativeComponent.d.ts +2 -0
  212. package/Libraries/Utilities/codegenNativeComponent.js +2 -2
  213. package/Libraries/Utilities/logError.js +1 -1
  214. package/Libraries/Utilities/stringifySafe.js +3 -3
  215. package/Libraries/Utilities/useMergeRefs.js +2 -2
  216. package/Libraries/vendor/core/ErrorUtils.js +4 -4
  217. package/Libraries/vendor/emitter/EventEmitter.js +16 -20
  218. package/Microsoft.ReactNative/CallInvoker.cpp +14 -4
  219. package/Microsoft.ReactNative/Fabric/AbiComponentDescriptor.cpp +1 -1
  220. package/Microsoft.ReactNative/Fabric/AbiPortalShadowNode.cpp +2 -2
  221. package/Microsoft.ReactNative/Fabric/AbiViewComponentDescriptor.h +1 -1
  222. package/Microsoft.ReactNative/Fabric/Composition/BorderPrimitive.cpp +73 -97
  223. package/Microsoft.ReactNative/Fabric/Composition/BorderPrimitive.h +4 -1
  224. package/Microsoft.ReactNative/Fabric/Composition/CompositionContextHelper.cpp +0 -1
  225. package/Microsoft.ReactNative/Fabric/Composition/CompositionEventHandler.cpp +4 -4
  226. package/Microsoft.ReactNative/Fabric/Composition/CompositionViewComponentView.cpp +135 -18
  227. package/Microsoft.ReactNative/Fabric/Composition/CompositionViewComponentView.h +10 -0
  228. package/Microsoft.ReactNative/Fabric/Composition/ImageComponentView.cpp +7 -2
  229. package/Microsoft.ReactNative/Fabric/Composition/ImageComponentView.h +2 -0
  230. package/Microsoft.ReactNative/Fabric/Composition/Modal/WindowsModalHostViewComponentView.cpp +63 -15
  231. package/Microsoft.ReactNative/Fabric/Composition/ParagraphComponentView.cpp +3 -1
  232. package/Microsoft.ReactNative/Fabric/Composition/TextInput/WindowsTextInputComponentView.cpp +1 -1
  233. package/Microsoft.ReactNative/Fabric/Composition/TextInput/WindowsTextInputState.cpp +1 -1
  234. package/Microsoft.ReactNative/Fabric/FabricUIManagerModule.cpp +11 -0
  235. package/Microsoft.ReactNative/Fabric/FabricUIManagerModule.h +1 -0
  236. package/Microsoft.ReactNative/Fabric/platform/react/renderer/graphics/HostPlatformColor.h +3 -0
  237. package/Microsoft.ReactNative/Fabric/platform/react/renderer/graphics/PlatformColorUtils.cpp +0 -3
  238. package/Microsoft.ReactNative/Fabric/platform/react/renderer/textlayoutmanager/WindowsTextLayoutManager.cpp +2 -7
  239. package/Microsoft.ReactNative/IReactPackageBuilder.idl +6 -0
  240. package/Microsoft.ReactNative/Microsoft.ReactNative.vcxproj +1 -61
  241. package/Microsoft.ReactNative/Microsoft.ReactNative.vcxproj.filters +1 -26
  242. package/Microsoft.ReactNative/Modules/AlertModule.cpp +2 -1
  243. package/Microsoft.ReactNative/Modules/AppStateModule.cpp +2 -17
  244. package/Microsoft.ReactNative/Modules/AppStateModule.h +0 -4
  245. package/Microsoft.ReactNative/Modules/AppThemeModuleUwp.cpp +0 -2
  246. package/Microsoft.ReactNative/Modules/AppearanceModule.cpp +16 -15
  247. package/Microsoft.ReactNative/Modules/AppearanceModule.h +5 -1
  248. package/Microsoft.ReactNative/Modules/DeviceInfoModule.cpp +2 -7
  249. package/Microsoft.ReactNative/Modules/DeviceInfoModule.h +0 -1
  250. package/Microsoft.ReactNative/Modules/I18nManagerModule.h +4 -4
  251. package/Microsoft.ReactNative/QuirkSettings.cpp +0 -133
  252. package/Microsoft.ReactNative/QuirkSettings.h +0 -43
  253. package/Microsoft.ReactNative/QuirkSettings.idl +0 -41
  254. package/Microsoft.ReactNative/ReactHost/CrashManager.cpp +0 -4
  255. package/Microsoft.ReactNative/ReactHost/MsoReactContext.cpp +0 -2
  256. package/Microsoft.ReactNative/ReactHost/React.h +0 -5
  257. package/Microsoft.ReactNative/ReactHost/ReactHost.cpp +0 -1
  258. package/Microsoft.ReactNative/ReactHost/ReactInstanceWin.cpp +3 -26
  259. package/Microsoft.ReactNative/ReactHost/ReactInstanceWin.h +0 -5
  260. package/Microsoft.ReactNative/ReactHost/React_Win.h +0 -2
  261. package/Microsoft.ReactNative/ReactNativeAppBuilder.idl +3 -0
  262. package/Microsoft.ReactNative/ReactPackageBuilder.cpp +7 -0
  263. package/Microsoft.ReactNative/ReactPackageBuilder.h +1 -0
  264. package/Microsoft.ReactNative/RedBox.cpp +0 -9
  265. package/Microsoft.ReactNative/RedBoxHandler.cpp +0 -4
  266. package/Microsoft.ReactNative/TurboModulesProvider.cpp +5 -10
  267. package/Microsoft.ReactNative/TurboModulesProvider.h +2 -0
  268. package/Microsoft.ReactNative/Utils/ValueUtils.cpp +1 -1
  269. package/Microsoft.ReactNative.Cxx/CppWinRTIncludes.h +0 -7
  270. package/Microsoft.ReactNative.Cxx/DesktopWindowBridge.h +0 -22
  271. package/Microsoft.ReactNative.Cxx/ModuleRegistration.cpp +8 -2
  272. package/Microsoft.ReactNative.Cxx/ModuleRegistration.h +36 -20
  273. package/Microsoft.ReactNative.Cxx/NamespaceRedirect.h +0 -3
  274. package/Microsoft.ReactNative.Cxx/NativeModules.h +8 -2
  275. package/Microsoft.ReactNative.Cxx/XamlUtils.h +0 -9
  276. package/Microsoft.ReactNative.Managed/ReactContext.cs +0 -9
  277. package/PropertySheets/Autolink.props +1 -1
  278. package/PropertySheets/Bundle.props +1 -1
  279. package/PropertySheets/Codegen.props +1 -1
  280. package/PropertySheets/Generated/PackageVersion.g.props +3 -3
  281. package/PropertySheets/NuGet.LockFile.props +8 -0
  282. package/PropertySheets/React.Cpp.props +4 -4
  283. package/PropertySheets/ReactNativeArchitecture.props +6 -24
  284. package/ReactCommon/ReactCommon.vcxproj +5 -6
  285. package/ReactCommon/TEMP_UntilReactCommonUpdate/jsi/jsi/test/testlib.cpp +1 -1
  286. package/ReactCommon/TEMP_UntilReactCommonUpdate/jsinspector-modern/NetworkIOAgent.cpp +15 -4
  287. package/ReactCommon/TEMP_UntilReactCommonUpdate/jsinspector-modern/NetworkIOAgent.h +13 -0
  288. package/ReactCommon/TEMP_UntilReactCommonUpdate/react/nativemodule/defaults/DefaultTurboModules.cpp +69 -0
  289. package/ReactCommon/TEMP_UntilReactCommonUpdate/react/renderer/animationbackend/AnimatedPropSerializer.cpp +717 -0
  290. package/ReactCommon/TEMP_UntilReactCommonUpdate/react/renderer/components/text/ParagraphShadowNode.cpp +10 -10
  291. package/ReactCommon/TEMP_UntilReactCommonUpdate/react/renderer/components/view/AccessibilityPrimitives.h +2 -21
  292. package/ReactCommon/TEMP_UntilReactCommonUpdate/react/renderer/components/view/TouchEventEmitter.cpp +151 -0
  293. package/ReactCommon/TEMP_UntilReactCommonUpdate/react/renderer/components/view/TouchEventEmitter.h +50 -0
  294. package/ReactCommon/TEMP_UntilReactCommonUpdate/react/renderer/mapbuffer/MapBuffer.cpp +178 -0
  295. package/ReactCommon/TEMP_UntilReactCommonUpdate/react/renderer/uimanager/UIManager.cpp +69 -39
  296. package/Scripts/OfficeReact.Win32.nuspec +0 -1
  297. package/Scripts/Tfs/Layout-Desktop-Headers.ps1 +4 -39
  298. package/Scripts/creaternwapp.cmd +1 -9
  299. package/Scripts/creaternwlib.cmd +4 -24
  300. package/Shared/DevSettings.h +0 -3
  301. package/Shared/Networking/WinRTWebSocketResource.cpp +23 -408
  302. package/Shared/Networking/WinRTWebSocketResource.h +3 -119
  303. package/Shared/Shared.vcxitems +63 -38
  304. package/Shared/Shared.vcxitems.filters +54 -0
  305. package/Shared/Utils.cpp +0 -88
  306. package/Shared/Utils.h +0 -14
  307. package/Shared/WebSocketResourceFactory.cpp +28 -0
  308. package/Shared/tracing/fbsystrace.h +1 -0
  309. package/codegen/NativeReactNativeFeatureFlagsSpec.g.h +172 -160
  310. package/codegen/react/components/rnwcore/ModalHostView.g.h +8 -0
  311. package/codegen/react/components/rnwcore/Props.cpp +17 -7
  312. package/codegen/react/components/rnwcore/Props.h +3 -1
  313. package/codegen/react/components/rnwcore/VirtualViewExperimental.g.h +4 -4
  314. package/codegen/rnwcoreJSI.h +93 -77
  315. package/index.js +9 -0
  316. package/index.windows.js +9 -0
  317. package/jest/RefreshControlMock.js +2 -2
  318. package/jest/assetFileTransformer.js +8 -3
  319. package/jest/mockComponent.js +3 -4
  320. package/jest/mockNativeComponent.js +1 -1
  321. package/jest/mocks/ActivityIndicator.js +2 -2
  322. package/jest/mocks/Image.js +2 -2
  323. package/jest/mocks/Modal.js +2 -2
  324. package/jest/mocks/RefreshControl.js +3 -3
  325. package/jest/mocks/RendererProxy.js +2 -2
  326. package/jest/mocks/ScrollView.js +5 -5
  327. package/jest/mocks/Text.js +2 -2
  328. package/jest/mocks/TextInput.js +2 -2
  329. package/jest/mocks/View.js +2 -2
  330. package/jest/mocks/ViewNativeComponent.js +1 -1
  331. package/jest/mocks/requireNativeComponent.js +1 -1
  332. package/jest/mocks/useColorScheme.js +1 -1
  333. package/jest/setup.js +68 -31
  334. package/package.json +27 -22
  335. package/src/private/animated/NativeAnimatedHelper.js +2 -2
  336. package/src/private/animated/createAnimatedPropsMemoHook.js +19 -19
  337. package/src/private/components/virtualview/VirtualView.js +14 -21
  338. package/src/private/components/virtualview/VirtualViewExperimentalNativeComponent.js +11 -10
  339. package/src/private/components/virtualview/VirtualViewNativeComponent.js +4 -4
  340. package/src/private/devsupport/devmenu/elementinspector/BorderBox.js +2 -2
  341. package/src/private/devsupport/devmenu/elementinspector/BoxInspector.js +3 -3
  342. package/src/private/devsupport/devmenu/elementinspector/ElementBox.js +4 -4
  343. package/src/private/devsupport/devmenu/elementinspector/ElementProperties.js +1 -1
  344. package/src/private/devsupport/devmenu/elementinspector/Inspector.js +39 -17
  345. package/src/private/devsupport/devmenu/elementinspector/InspectorOverlay.js +15 -3
  346. package/src/private/devsupport/devmenu/elementinspector/InspectorPanel.js +2 -2
  347. package/src/private/devsupport/devmenu/elementinspector/ReactDevToolsOverlay.js +2 -8
  348. package/src/private/devsupport/devmenu/elementinspector/StyleInspector.js +1 -1
  349. package/src/private/devsupport/devmenu/elementinspector/resolveBoxStyle.js +1 -1
  350. package/src/private/devsupport/devmenu/elementinspector/useExternalInspection.js +102 -0
  351. package/src/private/devsupport/rndevtools/FuseboxSessionObserver.js +12 -25
  352. package/src/private/devsupport/rndevtools/GlobalStateObserver.js +56 -0
  353. package/src/private/devsupport/rndevtools/TracingStateObserver.js +28 -0
  354. package/src/private/featureflags/ReactNativeFeatureFlags.js +71 -79
  355. package/src/private/featureflags/ReactNativeFeatureFlagsBase.js +2 -2
  356. package/src/private/featureflags/specs/NativeReactNativeFeatureFlags.js +14 -12
  357. package/src/private/setup/setUpDefaultReactNativeEnvironment.js +6 -0
  358. package/src/private/specs_DEPRECATED/components/ActivityIndicatorViewNativeComponent.js +1 -1
  359. package/src/private/specs_DEPRECATED/components/AndroidDrawerLayoutNativeComponent.js +3 -3
  360. package/src/private/specs_DEPRECATED/components/AndroidHorizontalScrollContentViewNativeComponent.js +1 -1
  361. package/src/private/specs_DEPRECATED/components/AndroidSwipeRefreshLayoutNativeComponent.js +2 -2
  362. package/src/private/specs_DEPRECATED/components/AndroidSwitchNativeComponent.js +2 -2
  363. package/src/private/specs_DEPRECATED/components/DebuggingOverlayNativeComponent.js +3 -3
  364. package/src/private/specs_DEPRECATED/components/ProgressBarAndroidNativeComponent.js +1 -1
  365. package/src/private/specs_DEPRECATED/components/PullToRefreshViewNativeComponent.js +1 -1
  366. package/src/private/specs_DEPRECATED/components/RCTInputAccessoryViewNativeComponent.js +1 -1
  367. package/src/private/specs_DEPRECATED/components/RCTModalHostViewNativeComponent.js +7 -3
  368. package/src/private/specs_DEPRECATED/components/RCTSafeAreaViewNativeComponent.js +1 -1
  369. package/src/private/specs_DEPRECATED/components/SwitchNativeComponent.js +2 -2
  370. package/src/private/specs_DEPRECATED/components/UnimplementedNativeViewNativeComponent.js +1 -1
  371. package/src/private/specs_DEPRECATED/modules/NativeImageLoaderIOS.js +1 -1
  372. package/src/private/styles/composeStyles.js +1 -1
  373. package/src/private/utilities/toError.js +27 -0
  374. package/src/private/utilities/toExtendedError.js +30 -0
  375. package/src/private/webapis/dom/events/Event.js +1 -1
  376. package/src/private/webapis/dom/events/EventHandlerAttributes.js +2 -2
  377. package/src/private/webapis/dom/events/EventTarget.js +3 -3
  378. package/src/private/webapis/dom/events/internals/EventInternals.js +2 -2
  379. package/src/private/webapis/dom/nodes/ReadOnlyElement.js +1 -1
  380. package/src/private/webapis/dom/nodes/ReadOnlyNode.js +2 -2
  381. package/src/private/webapis/dom/nodes/specs/NativeDOM.js +14 -14
  382. package/src/private/webapis/dom/oldstylecollections/HTMLCollection.js +2 -2
  383. package/src/private/webapis/dom/oldstylecollections/NodeList.js +2 -2
  384. package/src/private/webapis/geometry/DOMRectList.js +2 -2
  385. package/src/private/webapis/intersectionobserver/IntersectionObserver.js +8 -8
  386. package/src/private/webapis/intersectionobserver/specs/NativeIntersectionObserver.js +6 -6
  387. package/src/private/webapis/mutationobserver/MutationObserver.js +2 -2
  388. package/src/private/webapis/mutationobserver/MutationRecord.js +2 -2
  389. package/src/private/webapis/mutationobserver/internals/MutationObserverManager.js +1 -1
  390. package/src/private/webapis/mutationobserver/specs/NativeMutationObserver.js +3 -3
  391. package/src/private/webapis/performance/LongTasks.js +3 -3
  392. package/src/private/webapis/performance/Performance.js +4 -4
  393. package/src/private/webapis/performance/PerformanceEntry.js +1 -1
  394. package/src/private/webapis/performance/PerformanceObserver.js +2 -2
  395. package/src/private/webapis/performance/specs/NativePerformance.js +8 -8
  396. package/src/private/webapis/structuredClone/structuredClone.js +2 -2
  397. package/src/types/globals.d.ts +4 -4
  398. package/template/cpp-lib/proj/MyLib.sln +0 -33
  399. package/template/cpp-lib/proj/MyLib.vcxproj +1 -1
  400. package/template/cs-lib/proj/MyLib.sln +0 -33
  401. package/template/metro.config.js +12 -2
  402. package/templates/cpp-app/metro.config.js +12 -2
  403. package/templates/cpp-app/windows/MyApp/MyApp.cpp +9 -6
  404. package/templates/cpp-app/windows/MyApp/MyApp.vcxproj +1 -1
  405. package/templates/cpp-app/windows/MyApp.sln +0 -33
  406. package/templates/cpp-lib/example/metro.config.js +12 -2
  407. package/templates/cpp-lib/windows/MyLib/MyLib.vcxproj +1 -1
  408. package/templates/cpp-lib/windows/MyLib.sln +0 -33
  409. package/types/index.d.ts +2 -0
  410. package/Folly/.clang-format +0 -2
  411. package/Folly/Folly.natvis +0 -25
  412. package/Folly/Folly.vcxproj +0 -378
  413. package/Folly/Folly.vcxproj.filters +0 -558
  414. package/Folly/TEMP_UntilFollyUpdate/ConstexprMath.h +0 -978
  415. package/Folly/TEMP_UntilFollyUpdate/Conv.cpp +0 -1205
  416. package/Folly/TEMP_UntilFollyUpdate/chrono/Hardware.h +0 -155
  417. package/Folly/TEMP_UntilFollyUpdate/concurrency/CacheLocality.cpp +0 -633
  418. package/Folly/TEMP_UntilFollyUpdate/json/dynamic-inl.h +0 -1438
  419. package/Folly/TEMP_UntilFollyUpdate/json/json.cpp +0 -1118
  420. package/Folly/TEMP_UntilFollyUpdate/lang/SafeAssert.h +0 -188
  421. package/Folly/TEMP_UntilFollyUpdate/lang/ToAscii.cpp +0 -348
  422. package/Folly/TEMP_UntilFollyUpdate/lang/ToAscii.h +0 -182
  423. package/Folly/TEMP_UntilFollyUpdate/portability/Unistd.cpp +0 -33
  424. package/Folly/cgmanifest.json +0 -25
  425. package/Libraries/Components/View/ReactNativeViewAttributes.js +0 -60
  426. package/Libraries/Components/View/ReactNativeViewAttributes.windows.js +0 -64
  427. package/Libraries/Image/TextInlineImageNativeComponent.js +0 -49
  428. package/Microsoft.ReactNative/Fabric/Composition/CompositionContextHelper_emptyimpl.cpp +0 -75
  429. package/Microsoft.ReactNative/Fabric/Composition/CompositionUIService_emptyimpl.cpp +0 -27
  430. package/Microsoft.ReactNative/Fabric/Composition/Theme_emptyimpl.cpp +0 -81
  431. package/Microsoft.ReactNative/Modules/CreateModules.cpp +0 -24
  432. package/Microsoft.ReactNative/ReactSupport.cpp +0 -221
  433. package/Microsoft.ReactNative/ReactSupport.h +0 -13
  434. package/Microsoft.ReactNative/Utils/UwpPreparedScriptStore.cpp +0 -107
  435. package/Microsoft.ReactNative/Utils/UwpPreparedScriptStore.h +0 -62
  436. package/Microsoft.ReactNative/Utils/UwpScriptStore.cpp +0 -56
  437. package/Microsoft.ReactNative/Utils/UwpScriptStore.h +0 -23
  438. package/Microsoft.ReactNative/XamlUIService.cpp +0 -68
  439. package/Microsoft.ReactNative/XamlUIService.h +0 -37
  440. package/Microsoft.ReactNative/XamlUIService.idl +0 -53
  441. package/ReactCommon/TEMP_UntilReactCommonUpdate/cxxreact/CxxNativeModule.cpp +0 -259
  442. package/ReactCommon/TEMP_UntilReactCommonUpdate/cxxreact/Instance.cpp +0 -381
  443. package/ReactCommon/TEMP_UntilReactCommonUpdate/cxxreact/JSIndexedRAMBundle.cpp +0 -145
  444. package/ReactCommon/TEMP_UntilReactCommonUpdate/cxxreact/MethodCall.cpp +0 -100
  445. package/ReactCommon/TEMP_UntilReactCommonUpdate/cxxreact/ModuleRegistry.cpp +0 -256
  446. package/ReactCommon/TEMP_UntilReactCommonUpdate/cxxreact/NativeToJsBridge.cpp +0 -363
  447. package/ReactCommon/TEMP_UntilReactCommonUpdate/cxxreact/RAMBundleRegistry.cpp +0 -93
  448. package/ReactCommon/TEMP_UntilReactCommonUpdate/cxxreact/ReactMarker.cpp +0 -148
  449. package/ReactCommon/TEMP_UntilReactCommonUpdate/cxxreact/TraceSection.h +0 -190
  450. package/ReactCommon/TEMP_UntilReactCommonUpdate/jsiexecutor/jsireact/JSINativeModules.cpp +0 -123
  451. package/ReactCommon/TEMP_UntilReactCommonUpdate/react/nativemodule/core/ReactCommon/TurboModuleWithJSIBindings.cpp +0 -27
  452. package/ReactCommon/TEMP_UntilReactCommonUpdate/react/nativemodule/webperformance/NativePerformance.cpp +0 -414
  453. package/ReactCommon/TEMP_UntilReactCommonUpdate/react/renderer/components/text/platform/android/react/renderer/components/text/ParagraphState.h +0 -91
  454. package/ReactCommon/TEMP_UntilReactCommonUpdate/react/renderer/core/EventDispatcher.cpp +0 -80
  455. package/ReactCommon/TEMP_UntilReactCommonUpdate/react/renderer/core/EventQueueProcessor.cpp +0 -138
  456. package/fmt/.clang-format +0 -2
  457. package/fmt/cgmanifest.json +0 -15
  458. package/fmt/fmt.vcxproj +0 -153
  459. package/fmt/fmt.vcxproj.filters +0 -59
  460. package/fmt/pch.cpp +0 -4
  461. package/fmt/pch.h +0 -2
@@ -22,53 +22,12 @@ namespace Microsoft.ReactNative
22
22
  "to update their code to not rely on these settings.")
23
23
  static runtimeclass QuirkSettings
24
24
  {
25
- DOC_STRING(
26
- "Older versions of react-native-windows did not use [Yoga](https://github.com/facebook/yoga)'s legacy "
27
- "stretch behavior. This meant that react-native-windows would layout views "
28
- "slightly differently that in iOS and Android.\n"
29
- "Set this setting to false to maintain the behavior from react-native-windows <= 0.62.")
30
- DOC_DEFAULT("true")
31
- static void SetMatchAndroidAndIOSStretchBehavior(ReactInstanceSettings settings, Boolean value);
32
-
33
- DOC_STRING(
34
- "There is a chance that cached flex basis values can cause text truncation in some re-layout scenarios. "
35
- "Enabling [Yoga](https://github.com/facebook/yoga)'s experimental web flex basis behavior fixes this issue, "
36
- "however using it may result in performance regressions due to additional layout passes.")
37
- DOC_DEFAULT("false")
38
- static void SetUseWebFlexBasisBehavior(ReactInstanceSettings settings, Boolean value);
39
-
40
- DOC_STRING("Runtime setting allowing Networking (HTTP, WebSocket) connections to skip certificate validation.")
41
- static void SetAcceptSelfSigned(ReactInstanceSettings settings, Boolean value);
42
-
43
25
  DOC_STRING(
44
26
  "By default `react-native-windows` will handle various back events and forward them to JavaScript. "
45
27
  "Setting this to @BackNavigationHandlerKind.Native prevents `react-native-windows` from handling "
46
28
  "these events, including forwarding to JavaScript. This will allow applications to handle back "
47
29
  "navigation in native code, but will prevent the `BackHandler` native module from receiving events.")
48
30
  static void SetBackHandlerKind(ReactInstanceSettings settings, BackNavigationHandlerKind kind);
49
-
50
- DOC_STRING(
51
- "By default `react-native-windows` will only track `active` and `background` `AppState`. "
52
- "Setting this to true enables `react-native-windows` to also track `inactive` `AppState` which [maps closely to iOS.](https://reactnative.dev/docs/appstate)"
53
- "`inactive` tracks the [Window.Activated Event](https://docs.microsoft.com/uwp/api/windows.ui.core.corewindow.activated) when the window is deactivated.")
54
- DOC_DEFAULT("false")
55
- static void SetMapWindowDeactivatedToAppStateInactive(ReactInstanceSettings settings, Boolean value);
56
-
57
- DOC_STRING(
58
- "When running multiple windows from a single UI thread, focusing a native view causes the parent "
59
- "window of that view to get focus as well. Set this setting to true to prevent focus of a blurred "
60
- "window when a view in that window is programmatically focused.")
61
- static void SetSuppressWindowFocusOnViewFocus(ReactInstanceSettings settings, Boolean value);
62
-
63
- DOC_STRING(
64
- "By default `react-native-windows` will use the new RuntimeScheduler."
65
- "Setting this to false will revert the behavior to previous scheduling logic.")
66
- static void SetUseRuntimeScheduler(ReactInstanceSettings settings, Boolean value);
67
-
68
- DOC_STRING(
69
- "By default `react-native-windows` will not call sync JS call: runOnQueueSync."
70
- "Setting this to true will revert the behavior to previous logic and might result in hang.")
71
- static void SetUseRunOnQueueSync(ReactInstanceSettings settings, Boolean value);
72
31
  }
73
32
 
74
33
  } // namespace Microsoft.ReactNative
@@ -47,13 +47,9 @@ void __cdecl on_sigabrt(int signum) {
47
47
 
48
48
  void InternalRegisterCustomHandler() noexcept {
49
49
  // Do this now because by the time we catch the exception we may be in OOM
50
- #ifndef CORE_ABI // win32 vs uwp file permissions
51
50
  wchar_t currentDirectory[MAX_PATH]{};
52
51
  VerifyElseCrash(!!GetTempPath(MAX_PATH, currentDirectory));
53
52
  g_logFileName = currentDirectory;
54
- #else
55
- g_logFileName = winrt::Windows::Storage::ApplicationData::Current().LocalFolder().Path() + L"\\";
56
- #endif
57
53
 
58
54
  g_logFileName += L"ReactNativeCrashDetails_" + std::to_wstring(GetCurrentProcessId()) + L".txt";
59
55
 
@@ -178,11 +178,9 @@ void ReactContext::CallJSFunction(std::string &&module, std::string &&method, fo
178
178
  }
179
179
 
180
180
  void ReactContext::DispatchEvent(int64_t viewTag, std::string &&eventName, folly::dynamic &&eventData) const noexcept {
181
- #ifndef CORE_ABI // requires instance
182
181
  if (auto instance = m_reactInstance.GetStrongPtr()) {
183
182
  instance->DispatchEvent(viewTag, std::move(eventName), std::move(eventData));
184
183
  }
185
- #endif
186
184
  }
187
185
 
188
186
  winrt::Microsoft::ReactNative::JsiRuntime ReactContext::JsiRuntime() const noexcept {
@@ -16,11 +16,6 @@
16
16
 
17
17
  #include <TurboModulesProvider.h>
18
18
 
19
- #ifdef CORE_ABI
20
- #include <folly/dynamic.h>
21
- #undef GetCurrentTime
22
- #endif
23
-
24
19
  #include <IReactInstance.h>
25
20
 
26
21
  #include <Shared/IReactRootView.h>
@@ -614,7 +614,6 @@ void ReactHost::AddInspectorPage() noexcept {
614
614
 
615
615
  jsinspector_modern::InspectorTargetCapabilities capabilities;
616
616
  capabilities.nativePageReloads = true;
617
- capabilities.prefersFuseboxFrontend = true;
618
617
 
619
618
  auto metadata = m_inspectorHostTargetDelegate->getMetadata();
620
619
  std::string pageName;
@@ -68,20 +68,17 @@
68
68
  #include <react/threading/MessageQueueThreadImpl.h>
69
69
  #include "Inspector/ReactInspectorThread.h"
70
70
 
71
- #ifndef CORE_ABI
72
- #include <Utils/UwpPreparedScriptStore.h>
73
- #include <Utils/UwpScriptStore.h>
74
71
  #include "Modules/AccessibilityInfoModule.h"
75
72
  #include "Modules/AlertModule.h"
76
73
  #include "Modules/AppStateModule.h"
77
74
  #include "Modules/AppThemeModuleUwp.h"
75
+ #include "Modules/AppearanceModule.h"
78
76
  #include "Modules/ClipboardModule.h"
79
77
  #include "Modules/DeviceInfoModule.h"
78
+ #include "Modules/ExceptionsManager.h"
80
79
  #include "Modules/I18nManagerModule.h"
81
80
  #include "Modules/LinkingManagerModule.h"
82
81
  #include "Modules/LogBoxModule.h"
83
- #endif
84
- #include "Modules/ExceptionsManager.h"
85
82
  #include "Modules/PlatformConstantsWinModule.h"
86
83
  #include "Modules/ReactRootViewTagGenerator.h"
87
84
  #include "Modules/SourceCode.h"
@@ -244,8 +241,8 @@ void ReactInstanceWin::LoadModules(
244
241
  registerTurboModule(
245
242
  L"FabricUIManagerBinding",
246
243
  winrt::Microsoft::ReactNative::MakeModuleProvider<::Microsoft::ReactNative::FabricUIManager>());
244
+ turboModulesProvider->AddEagerInit("FabricUIManagerBinding");
247
245
 
248
- #ifndef CORE_ABI
249
246
  registerTurboModule(
250
247
  L"AccessibilityInfo",
251
248
  winrt::Microsoft::ReactNative::MakeTurboModuleProvider<::Microsoft::ReactNative::AccessibilityInfo>());
@@ -278,15 +275,6 @@ void ReactInstanceWin::LoadModules(
278
275
  L"NativeAnimatedModule",
279
276
  winrt::Microsoft::ReactNative::MakeModuleProvider<::Microsoft::ReactNative::NativeAnimatedModule>());
280
277
 
281
- #else
282
- registerTurboModule(
283
- L"ImageLoader", winrt::Microsoft::ReactNative::MakeTurboModuleProvider<::Microsoft::ReactNative::ImageLoader>());
284
-
285
- registerTurboModule(
286
- L"NativeAnimatedModule",
287
- winrt::Microsoft::ReactNative::MakeModuleProvider<::Microsoft::ReactNative::NativeAnimatedModule>());
288
- #endif
289
-
290
278
  turboModulesProvider->AddModuleProvider(
291
279
  L"SampleTurboModule",
292
280
  winrt::Microsoft::ReactNative::MakeTurboModuleProvider<::Microsoft::ReactNative::SampleTurboModule>(),
@@ -330,14 +318,12 @@ void ReactInstanceWin::LoadModules(
330
318
  registerTurboModule(
331
319
  L"DevSettings", winrt::Microsoft::ReactNative::MakeTurboModuleProvider<::Microsoft::ReactNative::DevSettings>());
332
320
 
333
- #ifndef CORE_ABI
334
321
  registerTurboModule(
335
322
  L"I18nManager", winrt::Microsoft::ReactNative::MakeTurboModuleProvider<::Microsoft::ReactNative::I18nManager>());
336
323
 
337
324
  registerTurboModule(
338
325
  L"LinkingManager",
339
326
  winrt::Microsoft::ReactNative::MakeTurboModuleProvider<::Microsoft::ReactNative::LinkingManager>());
340
- #endif
341
327
 
342
328
  registerTurboModule(L"Timing", winrt::Microsoft::ReactNative::MakeModuleProvider<::Microsoft::ReactNative::Timing>());
343
329
 
@@ -362,13 +348,11 @@ void ReactInstanceWin::InitDevMenu() noexcept {
362
348
  }
363
349
 
364
350
  void ReactInstanceWin::InitUIDependentCalls() noexcept {
365
- #ifndef CORE_ABI
366
351
  Microsoft::ReactNative::AppThemeHolder::InitAppThemeHolder(GetReactContext());
367
352
  Microsoft::ReactNative::I18nManager::InitI18nInfo(
368
353
  winrt::Microsoft::ReactNative::ReactPropertyBag(Options().Properties));
369
354
  Microsoft::ReactNative::Appearance::InitOnUIThread(GetReactContext());
370
355
  Microsoft::ReactNative::DeviceInfoHolder::InitDeviceInfoHolder(GetReactContext());
371
- #endif // CORE_ABI
372
356
  }
373
357
 
374
358
  std::shared_ptr<facebook::react::DevSettings> ReactInstanceWin::CreateDevSettings() noexcept {
@@ -400,11 +384,6 @@ std::shared_ptr<facebook::react::DevSettings> ReactInstanceWin::CreateDevSetting
400
384
  }
401
385
  };
402
386
 
403
- bool useRuntimeScheduler = winrt::Microsoft::ReactNative::implementation::QuirkSettings::GetUseRuntimeScheduler(
404
- winrt::Microsoft::ReactNative::ReactPropertyBag(m_reactContext->Properties()));
405
-
406
- devSettings->useRuntimeScheduler = useRuntimeScheduler;
407
-
408
387
  devSettings->inspectorHostTarget = m_options.InspectorHostTarget;
409
388
 
410
389
  return devSettings;
@@ -797,14 +776,12 @@ facebook::react::NativeLoggingHook ReactInstanceWin::GetLoggingCallback() noexce
797
776
  std::shared_ptr<IRedBoxHandler> ReactInstanceWin::GetRedBoxHandler() noexcept {
798
777
  if (m_options.RedBoxHandler) {
799
778
  return m_options.RedBoxHandler;
800
- #ifndef CORE_ABI
801
779
  } else if (UseDeveloperSupport()) {
802
780
  auto localWkReactHost = m_weakReactHost;
803
781
  return CreateDefaultRedBoxHandler(
804
782
  winrt::Microsoft::ReactNative::ReactPropertyBag(m_reactContext->Properties()),
805
783
  std::move(localWkReactHost),
806
784
  *m_uiQueue);
807
- #endif
808
785
  } else {
809
786
  return {};
810
787
  }
@@ -12,11 +12,6 @@
12
12
  #include "React_win.h"
13
13
  #include "activeObject/activeObject.h"
14
14
 
15
- #ifndef CORE_ABI
16
- #include <Modules/AppearanceModule.h>
17
- #include <Modules/I18nManagerModule.h>
18
- #endif
19
-
20
15
  #include <react/runtime/ReactInstance.h>
21
16
 
22
17
  namespace winrt::Microsoft::ReactNative {
@@ -3,9 +3,7 @@
3
3
 
4
4
  #pragma once
5
5
 
6
- #ifndef CORE_ABI
7
6
  #include <IReactInstance.h>
8
- #endif
9
7
 
10
8
  #include <functional/functor.h>
11
9
  #include <string>
@@ -3,6 +3,7 @@ import "ReactNativeHost.idl";
3
3
  import "ReactNativeIsland.idl";
4
4
  import "ReactInstanceSettings.idl";
5
5
  import "IReactPackageProvider.idl";
6
+ import "ReactNativeWindow.idl";
6
7
 
7
8
  #include "DocString.h"
8
9
 
@@ -14,6 +15,8 @@ namespace Microsoft.ReactNative {
14
15
  // Properties
15
16
  Microsoft.UI.Windowing.AppWindow AppWindow {get;};
16
17
 
18
+ ReactNativeWindow ReactNativeWindow {get;};
19
+
17
20
  ReactNativeHost ReactNativeHost {get;};
18
21
 
19
22
  ReactViewOptions ReactViewOptions {get;};
@@ -34,6 +34,13 @@ void ReactPackageBuilder::AddTurboModule(
34
34
  m_turboModulesProvider->AddModuleProvider(moduleName, moduleProvider, true);
35
35
  }
36
36
 
37
+ void ReactPackageBuilder::AddEagerInitTurboModule(
38
+ hstring const &moduleName,
39
+ ReactModuleProvider const &moduleProvider) noexcept {
40
+ m_turboModulesProvider->AddModuleProvider(moduleName, moduleProvider, true);
41
+ m_turboModulesProvider->AddEagerInit(winrt::to_string(moduleName));
42
+ }
43
+
37
44
  void ReactPackageBuilder::AddViewComponent(
38
45
  winrt::hstring componentName,
39
46
  ReactViewComponentProvider const &viewComponentProvider) noexcept {
@@ -20,6 +20,7 @@ struct ReactPackageBuilder : winrt::implements<ReactPackageBuilder, IReactPackag
20
20
  public: // IReactPackageBuilder
21
21
  void AddModule(hstring const &moduleName, ReactModuleProvider const &moduleProvider) noexcept;
22
22
  void AddTurboModule(hstring const &moduleName, ReactModuleProvider const &moduleProvider) noexcept;
23
+ void AddEagerInitTurboModule(hstring const &moduleName, ReactModuleProvider const &moduleProvider) noexcept;
23
24
 
24
25
  // IReactPackageBuilderFabric
25
26
  void AddViewComponent(winrt::hstring componentName, ReactViewComponentProvider const &viewComponentProvider) noexcept;
@@ -14,8 +14,6 @@
14
14
  #include <winrt/Windows.Foundation.Collections.h>
15
15
  #include <winrt/Windows.Foundation.h>
16
16
 
17
- #ifndef CORE_ABI
18
-
19
17
  #include <ReactCoreInjection.h>
20
18
  #include <Shobjidl.h>
21
19
  #include <Utils/Helpers.h>
@@ -27,7 +25,6 @@
27
25
  #include <winrt/Windows.Web.Http.h>
28
26
  #include "CppWinRTIncludes.h"
29
27
  #include "Utils/Helpers.h"
30
- #endif // CORE_ABI
31
28
  #include "XamlUtils.h"
32
29
 
33
30
  using namespace winrt::Windows::Foundation;
@@ -36,7 +33,6 @@ namespace Mso::React {
36
33
 
37
34
  using IInspectable = winrt::Windows::Foundation::IInspectable;
38
35
 
39
- #ifndef CORE_ABI
40
36
  struct RedBox : public std::enable_shared_from_this<RedBox> {
41
37
  RedBox(
42
38
  winrt::Microsoft::ReactNative::ReactPropertyBag &propBag,
@@ -272,7 +268,6 @@ struct DefaultRedBoxHandler final : public std::enable_shared_from_this<DefaultR
272
268
  std::vector<std::shared_ptr<RedBox>> m_redBoxes; // Protected by m_lockRedBox
273
269
  const Mso::WeakPtr<IReactHost> m_weakReactHost;
274
270
  };
275
- #endif // CORE_ABI
276
271
 
277
272
  struct RedBoxHandler final : public Mso::React::IRedBoxHandler {
278
273
  RedBoxHandler(winrt::Microsoft::ReactNative::IRedBoxHandler const &redBoxHandler) : m_redBoxHandler(redBoxHandler) {}
@@ -316,11 +311,7 @@ std::shared_ptr<IRedBoxHandler> CreateDefaultRedBoxHandler(
316
311
  const winrt::Microsoft::ReactNative::ReactPropertyBag &propBag,
317
312
  Mso::WeakPtr<IReactHost> &&weakReactHost,
318
313
  const Mso::React::IDispatchQueue2 &uiQueue) noexcept {
319
- #ifndef CORE_ABI
320
314
  return std::make_shared<DefaultRedBoxHandler>(propBag, std::move(weakReactHost), uiQueue);
321
- #else
322
- return nullptr;
323
- #endif
324
315
  }
325
316
 
326
317
  } // namespace Mso::React
@@ -61,11 +61,7 @@ struct DefaultRedBoxHandler : winrt::implements<DefaultRedBoxHandler, IRedBoxHan
61
61
  };
62
62
 
63
63
  IRedBoxHandler RedBoxHelper::CreateDefaultHandler(winrt::Microsoft::ReactNative::ReactNativeHost const &host) noexcept {
64
- #ifndef CORE_ABI
65
64
  return winrt::make<DefaultRedBoxHandler>(host);
66
- #else
67
- return nullptr;
68
- #endif
69
65
  }
70
66
 
71
67
  } // namespace winrt::Microsoft::ReactNative::implementation
@@ -494,16 +494,11 @@ std::shared_ptr<facebook::react::TurboModule> TurboModulesProvider::getModule(
494
494
  }
495
495
 
496
496
  std::vector<std::string> TurboModulesProvider::getEagerInitModuleNames() noexcept {
497
- std::vector<std::string> eagerModules;
498
- auto it = m_moduleProviders.find("UIManager");
499
- if (it != m_moduleProviders.end()) {
500
- eagerModules.push_back("UIManager");
501
- }
502
- it = m_moduleProviders.find("FabricUIManagerBinding");
503
- if (it != m_moduleProviders.end()) {
504
- eagerModules.push_back("FabricUIManagerBinding");
505
- }
506
- return eagerModules;
497
+ return m_eagerInitModuleNames;
498
+ }
499
+
500
+ void TurboModulesProvider::AddEagerInit(std::string moduleName) noexcept {
501
+ m_eagerInitModuleNames.push_back(moduleName);
507
502
  }
508
503
 
509
504
  void TurboModulesProvider::SetReactContext(const IReactContext &reactContext) noexcept {
@@ -26,6 +26,7 @@ class TurboModulesProvider final : public facebook::react::TurboModuleRegistry {
26
26
  winrt::hstring const &moduleName,
27
27
  ReactModuleProvider const &moduleProvider,
28
28
  bool overwriteExisting) noexcept;
29
+ void AddEagerInit(std::string moduleName) noexcept;
29
30
  std::shared_ptr<facebook::react::LongLivedObjectCollection> const &LongLivedObjectCollection() noexcept;
30
31
 
31
32
  private:
@@ -33,6 +34,7 @@ class TurboModulesProvider final : public facebook::react::TurboModuleRegistry {
33
34
  std::shared_ptr<facebook::react::LongLivedObjectCollection> m_longLivedObjectCollection{
34
35
  std::make_shared<facebook::react::LongLivedObjectCollection>()};
35
36
  std::unordered_map<std::string, ReactModuleProvider> m_moduleProviders;
37
+ std::vector<std::string> m_eagerInitModuleNames;
36
38
  IReactContext m_reactContext;
37
39
  };
38
40
 
@@ -48,7 +48,7 @@ struct ColorComp {
48
48
  };
49
49
 
50
50
  winrt::Color ColorFromNumber(DWORD argb) noexcept {
51
- return xaml::FromArgb(GetAFromArgb(argb), GetRFromArgb(argb), GetGFromArgb(argb), GetBFromArgb(argb));
51
+ return winrt::Windows::UI::Color{GetAFromArgb(argb), GetRFromArgb(argb), GetGFromArgb(argb), GetBFromArgb(argb)};
52
52
  }
53
53
 
54
54
  REACTWINDOWS_API_(winrt::Color) ColorFrom(const folly::dynamic &d) {
@@ -2,14 +2,11 @@
2
2
  // Licensed under the MIT License.
3
3
 
4
4
  #pragma once
5
- #include "NamespaceRedirect.h"
6
-
7
5
  #include <winrt/Windows.Foundation.Collections.h>
8
6
  #include <winrt/Windows.Foundation.h>
9
7
 
10
8
  #include <winrt/Microsoft.UI.Xaml.h>
11
9
 
12
- #define XAML_CPPWINRT_NAMESPACE winrt::Microsoft::UI::Xaml
13
10
  namespace xaml = winrt::Microsoft::UI::Xaml;
14
11
  namespace comp = winrt::Microsoft::UI::Composition;
15
12
  namespace ui = winrt::Microsoft::UI;
@@ -28,7 +25,3 @@ using namespace Windows::UI::Core;
28
25
  using namespace Windows::Foundation;
29
26
  using namespace Windows::Foundation::Collections;
30
27
  } // namespace winrt
31
-
32
- #define _QUOTE(x) L#x
33
- #define QUOTE(x) _QUOTE(x)
34
- #define XAML_NAMESPACE_STR QUOTE(XAML_NAMESPACE)
@@ -8,9 +8,6 @@
8
8
  #include <winrt/Windows.Foundation.h>
9
9
  #include <functional>
10
10
 
11
- #if !defined(CORE_ABI) && !defined(__APPLE__) && \
12
- WINAPI_FAMILY_PARTITION(WINAPI_PARTITION_APP | WINAPI_PARTITION_SYSTEM | WINAPI_PARTITION_GAMES)
13
-
14
11
  #include <winrt/Microsoft.ReactNative.h>
15
12
 
16
13
  #include "CppWinRTIncludes.h"
@@ -63,25 +60,6 @@ inline std::unordered_map<uint32_t, ReactNotificationSubscription> SubscribeToWi
63
60
  return result;
64
61
  }
65
62
 
66
- #else
67
- namespace winrt::Microsoft::ReactNative {
68
-
69
- /// Stubs for UWP
70
- template <typename... T>
71
- void ForwardWindowMessage(const ReactNotificationService &svc, T &&...) noexcept {}
72
-
73
- template <typename... T>
74
- ReactNotificationSubscription SubscribeToWindowMessage(const ReactNotificationService &svc, T &&...) noexcept {
75
- return nullptr;
76
- }
77
-
78
- template <typename... T>
79
- std::unordered_map<uint32_t, ReactNotificationSubscription>
80
- SubscribeToWindowMessage(const ReactNotificationService &svc, std::initializer_list<uint32_t> msgs, T &&...) noexcept {
81
- return std::unordered_map<uint32_t, ReactNotificationSubscription>{};
82
- }
83
- #endif
84
-
85
63
  namespace details {
86
64
  struct IndirectLibraryDeleter {
87
65
  void operator()(void *l) {
@@ -18,7 +18,10 @@ ModuleRegistration::ModuleRegistration(wchar_t const *moduleName) noexcept : m_m
18
18
  void AddAttributedModules(IReactPackageBuilder const &packageBuilder, bool useTurboModules) noexcept {
19
19
  for (auto const *reg = ModuleRegistration::Head(); reg != nullptr; reg = reg->Next()) {
20
20
  if (useTurboModules || reg->ShouldRegisterAsTurboModule())
21
- packageBuilder.AddTurboModule(reg->ModuleName(), reg->MakeModuleProvider());
21
+ if (reg->IsEagerInit())
22
+ packageBuilder.AddEagerInitTurboModule(reg->ModuleName(), reg->MakeModuleProvider());
23
+ else
24
+ packageBuilder.AddTurboModule(reg->ModuleName(), reg->MakeModuleProvider());
22
25
  else
23
26
  packageBuilder.AddModule(reg->ModuleName(), reg->MakeModuleProvider());
24
27
  }
@@ -31,7 +34,10 @@ bool TryAddAttributedModule(
31
34
  for (auto const *reg = ModuleRegistration::Head(); reg != nullptr; reg = reg->Next()) {
32
35
  if (moduleName == reg->ModuleName()) {
33
36
  if (useTurboModule || reg->ShouldRegisterAsTurboModule()) {
34
- packageBuilder.AddTurboModule(moduleName, reg->MakeModuleProvider());
37
+ if (reg->IsEagerInit())
38
+ packageBuilder.AddEagerInitTurboModule(moduleName, reg->MakeModuleProvider());
39
+ else
40
+ packageBuilder.AddTurboModule(moduleName, reg->MakeModuleProvider());
35
41
  } else {
36
42
  packageBuilder.AddModule(moduleName, reg->MakeModuleProvider());
37
43
  }
@@ -17,19 +17,24 @@
17
17
  // The macros below are internal implementation details for macro defined in nativeModules.h
18
18
  //
19
19
 
20
+ // ADL-based fallback: returns false for any type not tagged by the macros below.
21
+ // Using ADL instead of explicit template specialization allows the macros to be
22
+ // used inside a namespace (explicit specializations of a global template must
23
+ // occur at global scope, which the macros cannot guarantee).
20
24
  template <typename T>
21
- struct IsReactTurboModule;
25
+ constexpr bool ReactIsReactTurboModuleImpl(T *) noexcept {
26
+ return false;
27
+ }
22
28
 
23
- // Default to false if no specific override
24
29
  template <typename T>
25
- struct IsReactTurboModule : std::false_type {};
30
+ struct IsReactTurboModule : std::bool_constant<ReactIsReactTurboModuleImpl(static_cast<T *>(nullptr))> {};
26
31
 
27
32
  #define INTERNAL_REACT_MODULE_REGISTRATION_AND_PROVIDER( \
28
- moduleStruct, moduleName, eventEmitterName, isReactTurboModule) \
33
+ moduleStruct, moduleName, eventEmitterName, isReactTurboModule, isEagerInit) \
29
34
  struct moduleStruct; \
30
35
  \
31
- template <> \
32
- struct IsReactTurboModule<moduleStruct> : std::isReactTurboModule##_type {}; \
36
+ constexpr bool ReactIsReactTurboModuleImpl(moduleStruct *) noexcept { return isReactTurboModule; } \
37
+ constexpr bool ReactIsEagerInitTurboModuleImpl(moduleStruct *) noexcept { return isEagerInit; } \
33
38
  \
34
39
  template <class TDummy> \
35
40
  struct moduleStruct##_ModuleRegistration final : winrt::Microsoft::ReactNative::ModuleRegistration { \
@@ -40,6 +45,7 @@ struct IsReactTurboModule : std::false_type {};
40
45
  } \
41
46
  \
42
47
  bool ShouldRegisterAsTurboModule() const noexcept override { return isReactTurboModule; } \
48
+ bool IsEagerInit() const noexcept override { return isEagerInit; } \
43
49
  \
44
50
  static const moduleStruct##_ModuleRegistration Registration; \
45
51
  }; \
@@ -55,7 +61,7 @@ struct IsReactTurboModule : std::false_type {};
55
61
  }
56
62
 
57
63
  #define INTERNAL_REACT_MODULE_3_ARGS(moduleStruct, moduleName, eventEmitterName) \
58
- INTERNAL_REACT_MODULE_REGISTRATION_AND_PROVIDER(moduleStruct, moduleName, eventEmitterName, false)
64
+ INTERNAL_REACT_MODULE_REGISTRATION_AND_PROVIDER(moduleStruct, moduleName, eventEmitterName, false, false)
59
65
 
60
66
  #define INTERNAL_REACT_MODULE_2_ARGS(moduleStruct, moduleName) \
61
67
  INTERNAL_REACT_MODULE_3_ARGS(moduleStruct, moduleName, L"")
@@ -66,17 +72,16 @@ struct IsReactTurboModule : std::false_type {};
66
72
  INTERNAL_REACT_RECOMPOSER_4( \
67
73
  (__VA_ARGS__, INTERNAL_REACT_MODULE_3_ARGS, INTERNAL_REACT_MODULE_2_ARGS, INTERNAL_REACT_MODULE_1_ARG, ))
68
74
 
69
- #define INTERNAL_REACT_MODULE_NO_REGISTRATION_AND_PROVIDER( \
70
- moduleStruct, moduleName, eventEmitterName, isReactTurboModule) \
71
- struct moduleStruct; \
72
- \
73
- template <> \
74
- struct IsReactTurboModule<moduleStruct> : std::isReactTurboModule##_type {}; \
75
- \
76
- template <class TRegistry> \
77
- constexpr void GetReactModuleInfo(moduleStruct *, TRegistry &registry) noexcept { \
78
- registry.RegisterModule( \
79
- moduleName, eventEmitterName, winrt::Microsoft::ReactNative::ReactAttributeId<__COUNTER__>{}); \
75
+ #define INTERNAL_REACT_MODULE_NO_REGISTRATION_AND_PROVIDER( \
76
+ moduleStruct, moduleName, eventEmitterName, isReactTurboModule) \
77
+ struct moduleStruct; \
78
+ \
79
+ [[maybe_unused]] constexpr bool ReactIsReactTurboModuleImpl(moduleStruct *) noexcept { return isReactTurboModule; } \
80
+ \
81
+ template <class TRegistry> \
82
+ constexpr void GetReactModuleInfo(moduleStruct *, TRegistry &registry) noexcept { \
83
+ registry.RegisterModule( \
84
+ moduleName, eventEmitterName, winrt::Microsoft::ReactNative::ReactAttributeId<__COUNTER__>{}); \
80
85
  }
81
86
 
82
87
  // Another version of REACT_MODULE but does not do auto registration
@@ -101,17 +106,27 @@ struct IsReactTurboModule : std::false_type {};
101
106
 
102
107
  // Register struct as a ReactNative module.
103
108
  #define INTERNAL_REACT_TURBO_MODULE_2_ARGS(moduleStruct, moduleName) \
104
- INTERNAL_REACT_MODULE_REGISTRATION_AND_PROVIDER(moduleStruct, moduleName, L"", true)
109
+ INTERNAL_REACT_MODULE_REGISTRATION_AND_PROVIDER(moduleStruct, moduleName, L"", true, false)
110
+
111
+ #define INTERNAL_REACT_EAGER_TURBO_MODULE_2_ARGS(moduleStruct, moduleName) \
112
+ INTERNAL_REACT_MODULE_REGISTRATION_AND_PROVIDER(moduleStruct, moduleName, L"", true, true)
105
113
 
106
114
  #define INTERNAL_REACT_TURBO_MODULE_1_ARG(moduleStruct) \
107
115
  INTERNAL_REACT_TURBO_MODULE_2_ARGS(moduleStruct, L## #moduleStruct)
108
116
 
117
+ #define INTERNAL_REACT_EAGER_TURBO_MODULE_1_ARG(moduleStruct) \
118
+ INTERNAL_REACT_EAGER_TURBO_MODULE_2_ARGS(moduleStruct, L## #moduleStruct)
119
+
109
120
  #define INTERNAL_REACT_TURBO_MODULE(...) \
110
121
  INTERNAL_REACT_RECOMPOSER_3((__VA_ARGS__, INTERNAL_REACT_TURBO_MODULE_2_ARGS, INTERNAL_REACT_TURBO_MODULE_1_ARG, ))
111
122
 
123
+ #define INTERNAL_REACT_EAGER_TURBO_MODULE(...) \
124
+ INTERNAL_REACT_RECOMPOSER_3( \
125
+ (__VA_ARGS__, INTERNAL_REACT_EAGER_TURBO_MODULE_2_ARGS, INTERNAL_REACT_EAGER_TURBO_MODULE_1_ARG, ))
126
+
112
127
  // Another version of REACT_MODULE but does not do auto registration
113
128
  #define INTERNAL_REACT_TURBO_MODULE_NOREG_2_ARGS(moduleStruct, moduleName) \
114
- INTERNAL_REACT_MODULE_NO_REGISTRATION_AND_PROVIDER(moduleStruct, moduleName, L"", true)
129
+ INTERNAL_REACT_MODULE_NO_REGISTRATION_AND_PROVIDER(moduleStruct, moduleName, L"", true, false)
115
130
 
116
131
  #define INTERNAL_REACT_TURBO_MODULE_NOREG_1_ARG(moduleStruct) \
117
132
  INTERNAL_REACT_TURBO_MODULE_NOREG_2_ARGS(moduleStruct, L## #moduleStruct)
@@ -150,6 +165,7 @@ struct ModuleRegistration {
150
165
 
151
166
  virtual ReactModuleProvider MakeModuleProvider() const noexcept = 0;
152
167
  virtual bool ShouldRegisterAsTurboModule() const noexcept = 0;
168
+ virtual bool IsEagerInit() const noexcept = 0;
153
169
 
154
170
  static ModuleRegistration const *Head() noexcept {
155
171
  return s_head;
@@ -1,4 +1 @@
1
1
  #pragma once
2
-
3
- #define XAML_NAMESPACE Microsoft.UI.Xaml
4
- #define COMP_NAMESPACE Microsoft.UI.Composition
@@ -47,6 +47,11 @@
47
47
  #define REACT_TURBO_MODULE(/* moduleStruct, [opt] moduleName */...) \
48
48
  INTERNAL_REACT_TURBO_MODULE(__VA_ARGS__)(__VA_ARGS__)
49
49
 
50
+ // Same as REACT_TURBO_MODULE, but will register using AddEagerInitTurboModule, and this module
51
+ // will be created and init'd on instance creation.
52
+ #define REACT_EAGER_TURBO_MODULE(/* moduleStruct, [opt] moduleName */...) \
53
+ INTERNAL_REACT_EAGER_TURBO_MODULE(__VA_ARGS__)(__VA_ARGS__)
54
+
50
55
  // REACT_MODULE_NOREG is REACT_MODULE without auto registration
51
56
  // they have the same arguments
52
57
  #define REACT_MODULE_NOREG(/* moduleStruct, [opt] moduleName, [opt] eventEmitterName */...) \
@@ -522,7 +527,8 @@ struct ModuleJsiInitMethodInfo<void (TModule::*)(ReactContext const &, facebook:
522
527
  return
523
528
  [module = static_cast<ModuleType *>(module), method](
524
529
  ReactContext const &reactContext, winrt::Windows::Foundation::IInspectable const &runtimeHandle) noexcept {
525
- (module->*method)(reactContext, GetOrCreateContextRuntime(reactContext, runtimeHandle));
530
+ if (runtimeHandle)
531
+ (module->*method)(reactContext, GetOrCreateContextRuntime(reactContext, runtimeHandle));
526
532
  };
527
533
  }
528
534
  };
@@ -918,7 +924,7 @@ struct ModuleEventFieldInfo<TFunc<void(TArgs...)> TModule::*> {
918
924
  return [module = static_cast<ModuleType *>(module), field](IReactContext const &) noexcept {
919
925
  // Default emitter will do nothing
920
926
  // This will be replaced with a method that will call the jsi EventEmitter when JS requests the emitter
921
- module->*field = [](TArgs... args) noexcept {};
927
+ module->*field = [](TArgs... /*args*/) noexcept {};
922
928
  };
923
929
  } else {
924
930
  return [module = static_cast<ModuleType *>(module), field, eventName, eventEmitterName](
@@ -30,12 +30,3 @@ WINRT_IMPL_GetModuleHandleW(_In_opt_ LPCWSTR lpModuleName);
30
30
  #endif
31
31
  WINRT_IMPL_LINK(GetModuleHandleW, 4);
32
32
  #undef WINRT_IMPL_LINK
33
-
34
- namespace XAML_CPPWINRT_NAMESPACE {
35
-
36
- // Using Windows::UI::ColorHelper causes the process to load Windows.UI.Xaml.dll which is not needed just to fill a
37
- // Color struct
38
- inline winrt::Windows::UI::Color FromArgb(uint8_t a, uint8_t r, uint8_t g, uint8_t b) {
39
- return winrt::Windows::UI::Color{a, r, g, b};
40
- }
41
- } // namespace XAML_CPPWINRT_NAMESPACE
@@ -34,15 +34,6 @@ namespace Microsoft.ReactNative.Managed
34
34
 
35
35
  public void DispatchEvent<T>(FrameworkElement view, string eventName, T arg)
36
36
  {
37
- var argWriter = arg as JSValueArgWriter;
38
- if (argWriter != null)
39
- {
40
- XamlUIService.FromContext(Handle).DispatchEvent(view, eventName, argWriter);
41
- }
42
- else
43
- {
44
- XamlUIService.FromContext(Handle).DispatchEvent(view, eventName, (IJSValueWriter writer) => writer.WriteValue(arg));
45
- }
46
37
  }
47
38
 
48
39
  public void CallJSFunction(string moduleName, string methodName)