react-native-windows 0.81.1 → 0.82.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 (724) hide show
  1. package/.flowconfig +11 -10
  2. package/Directory.Build.props +3 -3
  3. package/Folly/Folly.vcxproj +1 -3
  4. package/Libraries/ActionSheetIOS/ActionSheetIOS.js +7 -3
  5. package/Libraries/Alert/RCTAlertManager.android.js +4 -2
  6. package/Libraries/Animated/Animated.d.ts +2 -0
  7. package/Libraries/Animated/AnimatedEvent.js +1 -1
  8. package/Libraries/Animated/AnimatedExports.js.flow +1 -0
  9. package/Libraries/Animated/AnimatedImplementation.js +4 -2
  10. package/Libraries/Animated/AnimatedMock.js +1 -1
  11. package/Libraries/Animated/Easing.js +2 -0
  12. package/Libraries/Animated/NativeAnimatedAllowlist.js +1 -0
  13. package/Libraries/Animated/animations/Animation.js +19 -20
  14. package/Libraries/Animated/animations/TimingAnimation.js +2 -0
  15. package/Libraries/Animated/components/AnimatedScrollView.js +3 -2
  16. package/Libraries/Animated/components/AnimatedSectionList.js +1 -1
  17. package/Libraries/Animated/nodes/AnimatedColor.js +9 -9
  18. package/Libraries/Animated/nodes/AnimatedInterpolation.js +4 -4
  19. package/Libraries/Animated/nodes/AnimatedNode.js +14 -7
  20. package/Libraries/Animated/nodes/AnimatedObject.js +7 -7
  21. package/Libraries/Animated/nodes/AnimatedProps.js +32 -32
  22. package/Libraries/Animated/nodes/AnimatedStyle.js +23 -21
  23. package/Libraries/Animated/nodes/AnimatedTransform.js +6 -6
  24. package/Libraries/Animated/nodes/AnimatedValue.js +18 -18
  25. package/Libraries/AppState/AppState.js +8 -4
  26. package/Libraries/BatchedBridge/MessageQueue.js +4 -0
  27. package/Libraries/BatchedBridge/NativeModules.js +1 -1
  28. package/Libraries/Blob/BlobManager.js +1 -1
  29. package/Libraries/Blob/URLSearchParams.js +2 -0
  30. package/Libraries/Components/AccessibilityInfo/AccessibilityInfo.js +2 -2
  31. package/Libraries/Components/AccessibilityInfo/AccessibilityInfo.windows.js +2 -2
  32. package/Libraries/Components/Button.js +1 -1
  33. package/Libraries/Components/Button.windows.js +1 -1
  34. package/Libraries/Components/Flyout/FlyoutNativeComponent.js +2 -2
  35. package/Libraries/Components/Glyph/GlyphNativeComponent.js +1 -1
  36. package/Libraries/Components/Popup/PopupNativeComponent.js +1 -0
  37. package/Libraries/Components/Pressable/Pressable.d.ts +8 -0
  38. package/Libraries/Components/Pressable/Pressable.js +10 -1
  39. package/Libraries/Components/Pressable/Pressable.windows.js +30 -2
  40. package/Libraries/Components/Pressable/useAndroidRippleForView.js +2 -2
  41. package/Libraries/Components/ScrollView/ScrollView.js +13 -4
  42. package/Libraries/Components/ScrollView/ScrollView.windows.js +14 -5
  43. package/Libraries/Components/ScrollView/ScrollViewStickyHeader.js +1 -1
  44. package/Libraries/Components/StatusBar/StatusBar.js +2 -2
  45. package/Libraries/Components/Switch/Switch.js +2 -2
  46. package/Libraries/Components/Switch/Switch.windows.js +2 -2
  47. package/Libraries/Components/TextInput/TextInput.flow.js +12 -5
  48. package/Libraries/Components/TextInput/TextInput.flow.windows.js +12 -5
  49. package/Libraries/Components/TextInput/TextInput.js +14 -5
  50. package/Libraries/Components/TextInput/TextInput.windows.js +23 -11
  51. package/Libraries/Components/TextInput/TextInputState.js +1 -1
  52. package/Libraries/Components/TextInput/TextInputState.windows.js +1 -1
  53. package/Libraries/Components/Touchable/TouchableBounce.js +1 -1
  54. package/Libraries/Components/Touchable/TouchableHighlight.js +1 -1
  55. package/Libraries/Components/Touchable/TouchableNativeFeedback.js +1 -1
  56. package/Libraries/Components/Touchable/TouchableOpacity.js +1 -1
  57. package/Libraries/Components/Touchable/TouchableWithoutFeedback.js +3 -3
  58. package/Libraries/Components/Touchable/TouchableWithoutFeedback.windows.js +1 -1
  59. package/Libraries/Components/View/View.js +81 -167
  60. package/Libraries/Components/View/View.windows.js +202 -302
  61. package/Libraries/Core/Devtools/loadBundleFromServer.js +1 -1
  62. package/Libraries/Core/Devtools/loadBundleFromServer.windows.js +1 -1
  63. package/Libraries/Core/ExceptionsManager.js +4 -2
  64. package/Libraries/Core/ReactFiberErrorDialog.js +3 -3
  65. package/Libraries/Core/ReactNativeVersion.js +37 -10
  66. package/Libraries/Core/Timers/JSTimers.js +3 -1
  67. package/Libraries/Core/Timers/immediateShim.js +1 -1
  68. package/Libraries/Core/Timers/queueMicrotask.js +1 -0
  69. package/Libraries/Core/setUpPerformance.js +2 -1
  70. package/Libraries/Debugging/DebuggingOverlayRegistry.js +5 -3
  71. package/Libraries/Image/AssetSourceResolver.windows.js +2 -2
  72. package/Libraries/Image/Image.android.js +327 -111
  73. package/Libraries/Image/Image.ios.js +6 -1
  74. package/Libraries/Image/Image.windows.js +28 -61
  75. package/Libraries/Image/ImageSourceUtils.js +8 -2
  76. package/Libraries/Image/resolveAssetSource.js +1 -1
  77. package/Libraries/Image/resolveAssetSource.windows.js +1 -1
  78. package/Libraries/Interaction/InteractionManager.js +118 -167
  79. package/Libraries/Interaction/PanResponder.js +1 -1
  80. package/Libraries/LayoutAnimation/LayoutAnimation.js +2 -0
  81. package/Libraries/Lists/FlatList.js +5 -6
  82. package/Libraries/LogBox/Data/LogBoxData.js +5 -2
  83. package/Libraries/LogBox/Data/parseLogBoxLog.js +1 -1
  84. package/Libraries/LogBox/UI/LogBoxInspectorSourceMapStatus.js +1 -1
  85. package/Libraries/Modal/Modal.js +3 -3
  86. package/Libraries/Modal/Modal.windows.js +2 -2
  87. package/Libraries/NativeComponent/NativeComponentRegistry.js +1 -1
  88. package/Libraries/NativeComponent/ViewConfig.js +2 -2
  89. package/Libraries/Network/RCTNetworking.android.js +1 -1
  90. package/Libraries/Network/RCTNetworking.ios.js +1 -1
  91. package/Libraries/Network/RCTNetworking.windows.js +1 -1
  92. package/Libraries/Network/XMLHttpRequest.js +20 -5
  93. package/Libraries/Network/convertRequestBody.js +1 -1
  94. package/Libraries/PermissionsAndroid/PermissionsAndroid.js +10 -9
  95. package/Libraries/Pressability/HoverState.js +2 -0
  96. package/Libraries/Pressability/Pressability.js +1 -1
  97. package/Libraries/Pressability/Pressability.windows.js +5 -5
  98. package/Libraries/PushNotificationIOS/PushNotificationIOS.js +2 -2
  99. package/Libraries/ReactNative/AppRegistryImpl.js +4 -2
  100. package/Libraries/ReactNative/PaperUIManager.windows.js +4 -4
  101. package/Libraries/ReactNative/ReactFabricPublicInstance/ReactFabricHostComponent.js +2 -0
  102. package/Libraries/ReactNative/ReactFabricPublicInstance/ReactFabricPublicInstance.js +3 -3
  103. package/Libraries/ReactNative/RendererImplementation.js +116 -116
  104. package/Libraries/ReactNative/UIManager.js +3 -3
  105. package/Libraries/ReactNative/renderApplication.js +1 -0
  106. package/Libraries/ReactPrivate/ReactNativePrivateInterface.js +1 -1
  107. package/Libraries/Renderer/implementations/ReactFabric-dev.js +38 -35
  108. package/Libraries/Renderer/implementations/ReactFabric-prod.js +51 -22
  109. package/Libraries/Renderer/implementations/ReactFabric-profiling.js +54 -24
  110. package/Libraries/Renderer/implementations/ReactNativeRenderer-dev.js +36 -33
  111. package/Libraries/Renderer/implementations/ReactNativeRenderer-prod.js +5 -5
  112. package/Libraries/Renderer/implementations/ReactNativeRenderer-profiling.js +5 -5
  113. package/Libraries/Renderer/shims/ReactNativeViewConfigRegistry.js +3 -1
  114. package/Libraries/Share/Share.js +4 -0
  115. package/Libraries/StyleSheet/PlatformColorValueTypes.android.js +2 -2
  116. package/Libraries/StyleSheet/PlatformColorValueTypes.ios.js +2 -2
  117. package/Libraries/StyleSheet/PlatformColorValueTypes.windows.js +2 -0
  118. package/Libraries/StyleSheet/StyleSheet.d.ts +7 -22
  119. package/Libraries/StyleSheet/StyleSheetExports.js +2 -8
  120. package/Libraries/StyleSheet/StyleSheetExports.js.flow +11 -18
  121. package/Libraries/StyleSheet/flattenStyle.js +2 -2
  122. package/Libraries/StyleSheet/processAspectRatio.js +2 -0
  123. package/Libraries/StyleSheet/processFilter.js +5 -5
  124. package/Libraries/StyleSheet/splitLayoutProps.js +2 -2
  125. package/Libraries/Text/Text.js +534 -234
  126. package/Libraries/Text/Text.windows.js +622 -265
  127. package/Libraries/Text/TextNativeComponent.js +2 -2
  128. package/Libraries/Utilities/Appearance.d.ts +3 -5
  129. package/Libraries/Utilities/Appearance.js +5 -17
  130. package/Libraries/Utilities/HMRClient.js +2 -1
  131. package/Libraries/Utilities/Platform.android.js +3 -3
  132. package/Libraries/Utilities/Platform.d.ts +1 -0
  133. package/Libraries/Utilities/Platform.ios.js +1 -1
  134. package/Libraries/Utilities/Platform.windows.js +3 -3
  135. package/Libraries/Utilities/PlatformTypes.js +1 -1
  136. package/Libraries/Utilities/ReactNativeTestTools.js +12 -0
  137. package/Libraries/Utilities/SceneTracker.js +1 -1
  138. package/Libraries/Utilities/codegenNativeCommands.js +1 -1
  139. package/Libraries/Utilities/codegenNativeComponent.js +1 -1
  140. package/Libraries/Utilities/createPerformanceLogger.js +32 -0
  141. package/Libraries/Utilities/deepFreezeAndThrowOnMutationInDev.js +2 -0
  142. package/Libraries/Utilities/differ/pointsDiffer.js +1 -1
  143. package/Libraries/Utilities/useMergeRefs.js +1 -1
  144. package/Libraries/WebSocket/WebSocketInterceptor.js +2 -0
  145. package/Libraries/promiseRejectionTrackingOptions.js +17 -31
  146. package/Libraries/vendor/emitter/EventEmitter.js +1 -1
  147. package/Microsoft.ReactNative/App.xaml +5 -0
  148. package/Microsoft.ReactNative/Base/CxxReactIncludes.h +0 -3
  149. package/Microsoft.ReactNative/CompositionContext.idl +0 -2
  150. package/Microsoft.ReactNative/Fabric/AbiViewProps.cpp +2 -2
  151. package/Microsoft.ReactNative/Fabric/AbiViewProps.h +0 -2
  152. package/Microsoft.ReactNative/Fabric/ComponentView.cpp +26 -0
  153. package/Microsoft.ReactNative/Fabric/ComponentView.h +2 -0
  154. package/Microsoft.ReactNative/Fabric/Composition/ActivityIndicatorComponentView.cpp +0 -1
  155. package/Microsoft.ReactNative/Fabric/Composition/Composition.Input.cpp +0 -69
  156. package/Microsoft.ReactNative/Fabric/Composition/Composition.Input.h +1 -15
  157. package/Microsoft.ReactNative/Fabric/Composition/CompositionAnnotationProvider.cpp +2 -5
  158. package/Microsoft.ReactNative/Fabric/Composition/CompositionAnnotationProvider.h +1 -4
  159. package/Microsoft.ReactNative/Fabric/Composition/CompositionContextHelper.cpp +0 -31
  160. package/Microsoft.ReactNative/Fabric/Composition/CompositionContextHelper.h +0 -10
  161. package/Microsoft.ReactNative/Fabric/Composition/CompositionContextHelper_emptyimpl.cpp +0 -4
  162. package/Microsoft.ReactNative/Fabric/Composition/CompositionDynamicAutomationProvider.cpp +65 -32
  163. package/Microsoft.ReactNative/Fabric/Composition/CompositionDynamicAutomationProvider.h +9 -0
  164. package/Microsoft.ReactNative/Fabric/Composition/CompositionEventHandler.cpp +8 -6
  165. package/Microsoft.ReactNative/Fabric/Composition/CompositionEventHandler.h +0 -2
  166. package/Microsoft.ReactNative/Fabric/Composition/CompositionHelpers.h +0 -2
  167. package/Microsoft.ReactNative/Fabric/Composition/CompositionHwndHost.cpp +0 -9
  168. package/Microsoft.ReactNative/Fabric/Composition/CompositionRootAutomationProvider.cpp +2 -11
  169. package/Microsoft.ReactNative/Fabric/Composition/CompositionRootAutomationProvider.h +0 -4
  170. package/Microsoft.ReactNative/Fabric/Composition/CompositionTextProvider.cpp +4 -7
  171. package/Microsoft.ReactNative/Fabric/Composition/CompositionTextProvider.h +1 -5
  172. package/Microsoft.ReactNative/Fabric/Composition/CompositionTextRangeProvider.cpp +68 -53
  173. package/Microsoft.ReactNative/Fabric/Composition/CompositionTextRangeProvider.h +1 -5
  174. package/Microsoft.ReactNative/Fabric/Composition/CompositionViewComponentView.cpp +20 -18
  175. package/Microsoft.ReactNative/Fabric/Composition/CompositionViewComponentView.h +10 -3
  176. package/Microsoft.ReactNative/Fabric/Composition/ContentIslandComponentView.cpp +30 -9
  177. package/Microsoft.ReactNative/Fabric/Composition/ContentIslandComponentView.h +4 -1
  178. package/Microsoft.ReactNative/Fabric/Composition/DebuggingOverlayComponentView.cpp +3 -2
  179. package/Microsoft.ReactNative/Fabric/Composition/ImageComponentView.cpp +0 -2
  180. package/Microsoft.ReactNative/Fabric/Composition/ImageComponentView.h +0 -1
  181. package/Microsoft.ReactNative/Fabric/Composition/ParagraphComponentView.cpp +550 -4
  182. package/Microsoft.ReactNative/Fabric/Composition/ParagraphComponentView.h +52 -0
  183. package/Microsoft.ReactNative/Fabric/Composition/ReactCompositionViewComponentBuilder.cpp +16 -0
  184. package/Microsoft.ReactNative/Fabric/Composition/ReactCompositionViewComponentBuilder.h +6 -0
  185. package/Microsoft.ReactNative/Fabric/Composition/ReactNativeIsland.cpp +0 -6
  186. package/Microsoft.ReactNative/Fabric/Composition/ReactNativeIsland.h +0 -2
  187. package/Microsoft.ReactNative/Fabric/Composition/RootComponentView.cpp +53 -2
  188. package/Microsoft.ReactNative/Fabric/Composition/RootComponentView.h +8 -1
  189. package/Microsoft.ReactNative/Fabric/Composition/ScrollViewComponentView.cpp +0 -2
  190. package/Microsoft.ReactNative/Fabric/Composition/SwitchComponentView.cpp +0 -1
  191. package/Microsoft.ReactNative/Fabric/Composition/TextInput/WindowsTextInputComponentView.cpp +5 -2
  192. package/Microsoft.ReactNative/Fabric/Composition/TextInput/WindowsTextInputShadowNode.cpp +4 -1
  193. package/Microsoft.ReactNative/Fabric/Composition/Theme.cpp +6 -30
  194. package/Microsoft.ReactNative/Fabric/Composition/Theme.h +1 -3
  195. package/Microsoft.ReactNative/Fabric/Composition/TooltipService.cpp +1 -1
  196. package/Microsoft.ReactNative/Fabric/Composition/UiaHelpers.cpp +36 -14
  197. package/Microsoft.ReactNative/Fabric/Composition/UnimplementedNativeViewComponentView.cpp +0 -1
  198. package/Microsoft.ReactNative/Fabric/FabricUIManagerModule.cpp +0 -1
  199. package/Microsoft.ReactNative/Fabric/ImageManager.cpp +0 -4
  200. package/Microsoft.ReactNative/Fabric/ReactTaggedView.h +1 -1
  201. package/Microsoft.ReactNative/Fabric/WindowsComponentDescriptorRegistry.cpp +8 -0
  202. package/Microsoft.ReactNative/Fabric/WindowsComponentDescriptorRegistry.h +3 -0
  203. package/Microsoft.ReactNative/Fabric/platform/react/renderer/graphics/PlatformColorUtils.cpp +0 -11
  204. package/Microsoft.ReactNative/Fabric/platform/react/renderer/textlayoutmanager/WindowsTextLayoutManager.h +2 -1
  205. package/Microsoft.ReactNative/IReactContext.cpp +2 -25
  206. package/Microsoft.ReactNative/IReactContext.h +0 -7
  207. package/Microsoft.ReactNative/IReactContext.idl +4 -29
  208. package/Microsoft.ReactNative/IReactModuleBuilder.cpp +24 -140
  209. package/Microsoft.ReactNative/IReactModuleBuilder.h +0 -11
  210. package/Microsoft.ReactNative/IReactPackageBuilder.idl +1 -16
  211. package/Microsoft.ReactNative/IReactPackageProvider.idl +0 -1
  212. package/Microsoft.ReactNative/IReactViewComponentBuilder.idl +10 -0
  213. package/Microsoft.ReactNative/JsiApi.cpp +4 -3
  214. package/Microsoft.ReactNative/JsiApi.h +2 -3
  215. package/Microsoft.ReactNative/JsiApi.idl +3 -2
  216. package/Microsoft.ReactNative/Microsoft.ReactNative.vcxproj +6 -214
  217. package/Microsoft.ReactNative/Microsoft.ReactNative.vcxproj.filters +0 -252
  218. package/Microsoft.ReactNative/Modules/AccessibilityInfoModule.cpp +0 -37
  219. package/Microsoft.ReactNative/Modules/AlertModule.cpp +2 -140
  220. package/Microsoft.ReactNative/Modules/AlertModule.h +0 -2
  221. package/Microsoft.ReactNative/Modules/Animated/NativeAnimatedNodeManager.cpp +5 -10
  222. package/Microsoft.ReactNative/Modules/Animated/NativeAnimatedNodeManager.h +0 -1
  223. package/Microsoft.ReactNative/Modules/Animated/PropsAnimatedNode.cpp +1 -96
  224. package/Microsoft.ReactNative/Modules/Animated/PropsAnimatedNode.h +0 -14
  225. package/Microsoft.ReactNative/Modules/AppStateModule.cpp +0 -53
  226. package/Microsoft.ReactNative/Modules/AppStateModule.h +0 -5
  227. package/Microsoft.ReactNative/Modules/AppThemeModuleUwp.cpp +5 -14
  228. package/Microsoft.ReactNative/Modules/AppThemeModuleUwp.h +0 -2
  229. package/Microsoft.ReactNative/Modules/AppearanceModule.cpp +1 -9
  230. package/Microsoft.ReactNative/Modules/DevSettingsModule.cpp +0 -4
  231. package/Microsoft.ReactNative/Modules/DevSettingsModule.h +0 -2
  232. package/Microsoft.ReactNative/Modules/DeviceInfoModule.cpp +16 -90
  233. package/Microsoft.ReactNative/Modules/I18nManagerModule.cpp +3 -8
  234. package/Microsoft.ReactNative/Modules/ImageViewManagerModule.cpp +11 -48
  235. package/Microsoft.ReactNative/Modules/LinkingManagerModule.cpp +0 -3
  236. package/Microsoft.ReactNative/Modules/LogBoxModule.cpp +30 -102
  237. package/Microsoft.ReactNative/Modules/LogBoxModule.h +0 -7
  238. package/Microsoft.ReactNative/Modules/Timing.cpp +7 -9
  239. package/Microsoft.ReactNative/Pch/pch.h +0 -28
  240. package/Microsoft.ReactNative/ReactCoreInjection.h +0 -1
  241. package/Microsoft.ReactNative/ReactHost/IReactInstance.h +0 -8
  242. package/Microsoft.ReactNative/ReactHost/MsoReactContext.cpp +0 -15
  243. package/Microsoft.ReactNative/ReactHost/MsoReactContext.h +0 -2
  244. package/Microsoft.ReactNative/ReactHost/React.h +0 -44
  245. package/Microsoft.ReactNative/ReactHost/ReactHost.cpp +10 -47
  246. package/Microsoft.ReactNative/ReactHost/ReactHost.h +1 -1
  247. package/Microsoft.ReactNative/ReactHost/ReactInstanceWin.cpp +30 -586
  248. package/Microsoft.ReactNative/ReactHost/ReactInstanceWin.h +2 -37
  249. package/Microsoft.ReactNative/ReactHost/ReactNativeHeaders.h +0 -13
  250. package/Microsoft.ReactNative/ReactHost/React_Win.h +0 -1
  251. package/Microsoft.ReactNative/ReactInstanceSettings.cpp +0 -8
  252. package/Microsoft.ReactNative/ReactInstanceSettings.h +0 -13
  253. package/Microsoft.ReactNative/ReactInstanceSettings.idl +7 -23
  254. package/Microsoft.ReactNative/ReactNativeHost.cpp +10 -35
  255. package/Microsoft.ReactNative/ReactNativeHost.h +0 -1
  256. package/Microsoft.ReactNative/ReactNativeIsland.idl +0 -4
  257. package/Microsoft.ReactNative/ReactPackageBuilder.cpp +9 -36
  258. package/Microsoft.ReactNative/ReactPackageBuilder.h +4 -38
  259. package/Microsoft.ReactNative/RedBox.cpp +9 -362
  260. package/Microsoft.ReactNative/Theme.idl +0 -2
  261. package/Microsoft.ReactNative/Timer.cpp +3 -2
  262. package/Microsoft.ReactNative/Utils/Helpers.cpp +0 -47
  263. package/Microsoft.ReactNative/Utils/Helpers.h +0 -5
  264. package/Microsoft.ReactNative/Utils/IcuUtils.cpp +84 -0
  265. package/Microsoft.ReactNative/Utils/IcuUtils.h +42 -0
  266. package/Microsoft.ReactNative/Utils/KeyboardUtils.cpp +0 -11
  267. package/Microsoft.ReactNative/Utils/ThemeUtils.cpp +0 -4
  268. package/Microsoft.ReactNative/Utils/ThemeUtils.h +1 -5
  269. package/Microsoft.ReactNative/Utils/UwpPreparedScriptStore.h +0 -2
  270. package/Microsoft.ReactNative/Utils/ValueUtils.cpp +0 -245
  271. package/Microsoft.ReactNative/Utils/ValueUtils.h +0 -23
  272. package/Microsoft.ReactNative/ViewProps.idl +0 -2
  273. package/Microsoft.ReactNative/Views/DevMenu.cpp +2 -278
  274. package/Microsoft.ReactNative/Views/DevMenu.h +0 -5
  275. package/Microsoft.ReactNative/XamlApplication.cpp +71 -0
  276. package/Microsoft.ReactNative/XamlApplication.h +47 -0
  277. package/Microsoft.ReactNative/XamlApplication.idl +19 -0
  278. package/Microsoft.ReactNative/XamlUIService.cpp +0 -54
  279. package/Microsoft.ReactNative/XamlUIService.h +0 -12
  280. package/Microsoft.ReactNative/XamlUIService.idl +0 -12
  281. package/Microsoft.ReactNative.Cxx/CppWinRTIncludes.h +0 -19
  282. package/Microsoft.ReactNative.Cxx/DesktopWindowBridge.h +1 -1
  283. package/Microsoft.ReactNative.Cxx/JSI/decorator.h +191 -114
  284. package/Microsoft.ReactNative.Cxx/JSI/instrumentation.h +5 -0
  285. package/Microsoft.ReactNative.Cxx/JSI/jsi-inl.h +37 -0
  286. package/Microsoft.ReactNative.Cxx/JSI/jsi.cpp +68 -0
  287. package/Microsoft.ReactNative.Cxx/JSI/jsi.h +77 -11
  288. package/Microsoft.ReactNative.Cxx/Microsoft.ReactNative.Cxx.vcxitems +2 -2
  289. package/Microsoft.ReactNative.Cxx/NamespaceRedirect.h +0 -5
  290. package/Microsoft.ReactNative.Cxx/NodeApiJsiRuntime.cpp +93 -1
  291. package/Microsoft.ReactNative.Cxx/ReactCommon/TurboModule.cpp +4 -3
  292. package/Microsoft.ReactNative.Cxx/ReactCommon/TurboModule.h +2 -2
  293. package/Microsoft.ReactNative.Cxx/ReactCommon/TurboModuleUtils.cpp +2 -55
  294. package/Microsoft.ReactNative.Cxx/ReactCommon/TurboModuleUtils.h +4 -8
  295. package/Microsoft.ReactNative.Cxx/ReactCommon/react/bridging/Class.h +5 -0
  296. package/Microsoft.ReactNative.Cxx/ReactCommon/react/timing/primitives.h +32 -4
  297. package/Microsoft.ReactNative.Cxx/ReactContext.h +0 -13
  298. package/Microsoft.ReactNative.Cxx/StructInfo.h +8 -1
  299. package/Microsoft.ReactNative.Cxx/UI.Composition.Effects.h +0 -4
  300. package/Microsoft.ReactNative.Cxx/UI.Composition.h +0 -4
  301. package/Microsoft.ReactNative.Cxx/UI.Input.h +0 -4
  302. package/Microsoft.ReactNative.Cxx/UI.Popups.h +0 -4
  303. package/Microsoft.ReactNative.Cxx/UI.Text.h +0 -4
  304. package/Microsoft.ReactNative.Cxx/XamlUtils.h +0 -33
  305. package/Microsoft.ReactNative.Managed/JSValueReader.cs +0 -4
  306. package/Microsoft.ReactNative.Managed/Microsoft.ReactNative.Managed.csproj +0 -3
  307. package/Microsoft.ReactNative.Managed/ReactContext.cs +0 -5
  308. package/Microsoft.ReactNative.Managed/ReactContextGenerator.cs +0 -4
  309. package/Microsoft.ReactNative.Managed/ReactPackageBuilderExtensions.cs +0 -25
  310. package/Microsoft.ReactNative.Managed/ReactSettingsSnapshot.cs +0 -4
  311. package/Microsoft.ReactNative.Managed/ReflectionReactPackageProvider.cs +1 -2
  312. package/Microsoft.ReactNative.Managed.CodeGen/CodeAnalyzer.cs +0 -10
  313. package/Microsoft.ReactNative.Managed.CodeGen/CodeGenerator.ViewManager.cs +0 -36
  314. package/Microsoft.ReactNative.Managed.CodeGen/CodeGenerator.cs +0 -6
  315. package/Microsoft.ReactNative.Managed.CodeGen/Model/ReactAssembly.cs +0 -2
  316. package/Microsoft.ReactNative.Managed.CodeGen/Model/ReactTypes.cs +0 -2
  317. package/Microsoft.ReactNative.Managed.CodeGen/ReactNativeNames.cs +0 -2
  318. package/Mso/src/dispatchQueue/queueService.cpp +3 -1
  319. package/Mso/src/dispatchQueue/uiScheduler_winrt.cpp +2 -10
  320. package/PropertySheets/Bundle.Common.targets +1 -1
  321. package/PropertySheets/Bundle.props +3 -4
  322. package/PropertySheets/External/Microsoft.ReactNative.Common.props +0 -1
  323. package/PropertySheets/External/Microsoft.ReactNative.Uwp.CSharpApp.targets +1 -1
  324. package/PropertySheets/External/Microsoft.ReactNative.Uwp.CppApp.targets +1 -1
  325. package/PropertySheets/Generated/PackageVersion.g.props +4 -4
  326. package/PropertySheets/JSEngine.props +1 -1
  327. package/PropertySheets/NuGet.LockFile.props +0 -8
  328. package/PropertySheets/OutputMSBuildProperties.targets +0 -1
  329. package/PropertySheets/React.Cpp.props +3 -5
  330. package/PropertySheets/WinUI.props +3 -3
  331. package/README.md +1 -5
  332. package/ReactCommon/ReactCommon.vcxproj +12 -31
  333. package/ReactCommon/ReactCommon.vcxproj.filters +0 -3
  334. package/ReactCommon/TEMP_UntilReactCommonUpdate/cxxreact/CxxNativeModule.cpp +3 -2
  335. package/ReactCommon/TEMP_UntilReactCommonUpdate/cxxreact/NativeToJsBridge.cpp +5 -2
  336. package/ReactCommon/TEMP_UntilReactCommonUpdate/cxxreact/TraceSection.h +20 -4
  337. package/ReactCommon/TEMP_UntilReactCommonUpdate/jsi/jsi/test/testlib.cpp +113 -1
  338. package/ReactCommon/TEMP_UntilReactCommonUpdate/jsinspector-modern/NetworkIOAgent.cpp +14 -6
  339. package/ReactCommon/TEMP_UntilReactCommonUpdate/jsinspector-modern/Utf8.h +1 -0
  340. package/ReactCommon/TEMP_UntilReactCommonUpdate/jsinspector-modern/tracing/RuntimeSamplingProfileTraceEventSerializer.cpp +351 -0
  341. package/ReactCommon/TEMP_UntilReactCommonUpdate/react/nativemodule/core/ReactCommon/TurboModule.h +2 -2
  342. package/ReactCommon/TEMP_UntilReactCommonUpdate/react/nativemodule/dom/NativeDOM.cpp +42 -36
  343. package/ReactCommon/TEMP_UntilReactCommonUpdate/react/nativemodule/dom/NativeDOM.h +15 -3
  344. package/ReactCommon/TEMP_UntilReactCommonUpdate/react/renderer/componentregistry/ComponentDescriptorRegistry.cpp +1 -1
  345. package/ReactCommon/TEMP_UntilReactCommonUpdate/react/renderer/components/image/conversions.h +174 -0
  346. package/ReactCommon/TEMP_UntilReactCommonUpdate/react/renderer/components/text/ParagraphShadowNode.cpp +1 -0
  347. package/ReactCommon/TEMP_UntilReactCommonUpdate/react/renderer/components/view/AccessibilityPrimitives.h +26 -3
  348. package/ReactCommon/TEMP_UntilReactCommonUpdate/react/renderer/components/view/conversions.h +1 -1
  349. package/ReactCommon/TEMP_UntilReactCommonUpdate/react/renderer/core/ShadowNode.cpp +1 -1
  350. package/ReactCommon/TEMP_UntilReactCommonUpdate/react/renderer/imagemanager/primitives.h +189 -0
  351. package/ReactCommon/TEMP_UntilReactCommonUpdate/reactperflogger/reactperflogger/ReactPerfettoLogger.cpp +27 -8
  352. package/ReactCommon/cgmanifest.json +1 -1
  353. package/Scripts/Microsoft.ReactNative.nuspec +15 -33
  354. package/Scripts/NuGetRestoreForceEvaluateAllSolutions.ps1 +23 -23
  355. package/Scripts/OfficeReact.Win32.nuspec +0 -3
  356. package/Scripts/creaternwapp.cmd +1 -1
  357. package/Shared/DevServerHelper.h +17 -21
  358. package/Shared/DevSettings.h +1 -25
  359. package/Shared/DevSupportManager.cpp +0 -50
  360. package/Shared/DevSupportManager.h +0 -4
  361. package/Shared/Hermes/HermesRuntimeTargetDelegate.cpp +5 -1
  362. package/Shared/HermesRuntimeHolder.cpp +0 -31
  363. package/Shared/HermesRuntimeHolder.h +0 -14
  364. package/Shared/IDevSupportManager.h +0 -6
  365. package/Shared/InstanceManager.cpp +0 -97
  366. package/Shared/InstanceManager.h +0 -53
  367. package/Shared/JSI/ScriptStore.h +1 -1
  368. package/Shared/Logging.cpp +1 -12
  369. package/Shared/Modules/CxxModuleUtilities.cpp +0 -9
  370. package/Shared/Modules/CxxModuleUtilities.h +0 -8
  371. package/Shared/Networking/OriginPolicyHttpFilter.cpp +9 -1
  372. package/Shared/OInstance.cpp +144 -424
  373. package/Shared/OInstance.h +0 -81
  374. package/Shared/Shared.vcxitems +83 -203
  375. package/Shared/Shared.vcxitems.filters +8 -67
  376. package/Shared/Threading/MessageQueueThreadFactory.cpp +0 -6
  377. package/Shared/Threading/MessageQueueThreadFactory.h +0 -4
  378. package/Shared/TurboModuleManager.cpp +0 -4
  379. package/Shared/Utils.cpp +26 -0
  380. package/Shared/Utils.h +3 -0
  381. package/codegen/NativeDOMSpec.g.h +41 -35
  382. package/codegen/NativeIntersectionObserverSpec.g.h +9 -21
  383. package/codegen/NativePerformanceSpec.g.h +47 -35
  384. package/codegen/NativeReactNativeFeatureFlagsSpec.g.h +177 -129
  385. package/codegen/react/components/rnwcore/ActivityIndicatorView.g.h +14 -0
  386. package/codegen/react/components/rnwcore/AndroidDrawerLayout.g.h +14 -0
  387. package/codegen/react/components/rnwcore/AndroidHorizontalScrollContentView.g.h +14 -0
  388. package/codegen/react/components/rnwcore/AndroidProgressBar.g.h +14 -0
  389. package/codegen/react/components/rnwcore/AndroidSwipeRefreshLayout.g.h +14 -0
  390. package/codegen/react/components/rnwcore/AndroidSwitch.g.h +14 -0
  391. package/codegen/react/components/rnwcore/DebuggingOverlay.g.h +14 -0
  392. package/codegen/react/components/rnwcore/EventEmitters.cpp +25 -0
  393. package/codegen/react/components/rnwcore/EventEmitters.h +25 -0
  394. package/codegen/react/components/rnwcore/InputAccessory.g.h +14 -0
  395. package/codegen/react/components/rnwcore/ModalHostView.g.h +14 -0
  396. package/codegen/react/components/rnwcore/Props.cpp +41 -2
  397. package/codegen/react/components/rnwcore/Props.h +51 -2
  398. package/codegen/react/components/rnwcore/PullToRefreshView.g.h +14 -0
  399. package/codegen/react/components/rnwcore/SafeAreaView.g.h +14 -0
  400. package/codegen/react/components/rnwcore/Switch.g.h +14 -0
  401. package/codegen/react/components/rnwcore/UnimplementedNativeView.g.h +14 -0
  402. package/codegen/react/components/rnwcore/VirtualView.g.h +18 -0
  403. package/codegen/react/components/rnwcore/VirtualViewExperimental.g.h +240 -0
  404. package/codegen/rnwcoreJSI-generated.cpp +106 -51
  405. package/codegen/rnwcoreJSI.h +148 -67
  406. package/fmt/cgmanifest.json +1 -1
  407. package/fmt/fmt.vcxproj +0 -8
  408. package/index.js +8 -2
  409. package/index.windows.js +8 -2
  410. package/jest/local-setup.js +2 -2
  411. package/jest/mock.js +1 -1
  412. package/jest/mockComponent.js +9 -9
  413. package/jest/mockNativeComponent.js +3 -2
  414. package/jest/mocks/Modal.js +1 -1
  415. package/jest/mocks/ScrollView.js +1 -1
  416. package/jest/mocks/ViewNativeComponent.js +1 -1
  417. package/jest/setup.js +23 -12
  418. package/just-task.js +14 -0
  419. package/package.json +31 -32
  420. package/src/private/animated/NativeAnimatedHelper.js +16 -5
  421. package/src/private/animated/createAnimatedPropsHook.js +11 -60
  422. package/src/private/animated/createAnimatedPropsMemoHook.js +8 -54
  423. package/src/private/components/virtualview/VirtualView.js +43 -12
  424. package/src/private/components/virtualview/VirtualViewExperimentalNativeComponent.js +93 -0
  425. package/src/private/components/virtualview/VirtualViewNativeComponent.js +6 -0
  426. package/src/private/devsupport/devmenu/elementinspector/Inspector.js +2 -2
  427. package/src/private/devsupport/devmenu/elementinspector/ReactDevToolsOverlay.js +2 -2
  428. package/src/private/featureflags/ReactNativeFeatureFlags.js +80 -52
  429. package/src/private/featureflags/ReactNativeFeatureFlagsBase.js +23 -4
  430. package/src/private/featureflags/specs/NativeReactNativeFeatureFlags.js +14 -6
  431. package/src/private/renderer/errorhandling/ErrorHandlers.js +3 -3
  432. package/src/private/specs_DEPRECATED/components/SwitchNativeComponent.js +0 -1
  433. package/src/private/types/HostInstance.js +4 -1
  434. package/src/private/webapis/dom/nodes/ReactNativeDocument.js +22 -2
  435. package/src/private/webapis/dom/nodes/ReactNativeElement.js +1 -1
  436. package/src/private/webapis/dom/nodes/ReadOnlyElement.js +5 -3
  437. package/src/private/webapis/dom/nodes/ReadOnlyNode.js +16 -13
  438. package/src/private/webapis/dom/nodes/internals/NodeInternals.js +45 -22
  439. package/src/private/webapis/dom/nodes/internals/ReactNativeDocumentInstanceHandle.js +1 -1
  440. package/src/private/webapis/dom/nodes/specs/NativeDOM.js +26 -192
  441. package/src/private/webapis/dom/oldstylecollections/HTMLCollection.js +15 -12
  442. package/src/private/webapis/dom/oldstylecollections/NodeList.js +14 -11
  443. package/src/private/webapis/geometry/DOMRectList.js +2 -2
  444. package/src/private/webapis/intersectionobserver/internals/IntersectionObserverManager.js +19 -74
  445. package/src/private/webapis/intersectionobserver/specs/NativeIntersectionObserver.js +0 -4
  446. package/src/private/webapis/mutationobserver/internals/MutationObserverManager.js +1 -1
  447. package/src/private/webapis/performance/EventTiming.js +6 -10
  448. package/src/private/webapis/performance/Performance.js +309 -164
  449. package/src/private/webapis/performance/PerformanceEntry.js +20 -16
  450. package/src/private/webapis/performance/PerformanceObserver.js +8 -29
  451. package/src/private/webapis/performance/UserTiming.js +71 -18
  452. package/src/private/webapis/performance/UserTimingExtensibility.js.flow +38 -0
  453. package/src/private/webapis/performance/internals/Utilities.js +9 -0
  454. package/src/private/webapis/performance/specs/NativePerformance.js +21 -23
  455. package/src/private/webapis/structuredClone/structuredClone.js +10 -10
  456. package/stubs/double-conversion/README.md +1 -1
  457. package/template/cpp-lib/proj/MyLib.sln +0 -5
  458. package/template/cpp-lib/src/pch.h +0 -5
  459. package/template/cs-lib/proj/MyLib.sln +0 -5
  460. package/template/metro.config.js +1 -0
  461. package/templates/cpp-app/metro.config.js +2 -1
  462. package/templates/cpp-app/windows/MyApp.sln +0 -5
  463. package/templates/cpp-lib/example/metro.config.js +3 -4
  464. package/templates/cpp-lib/windows/MyLib.sln +0 -5
  465. package/Chakra/Chakra.vcxitems +0 -32
  466. package/Chakra/Chakra.vcxitems.filters +0 -54
  467. package/Chakra/ChakraHelpers.cpp +0 -468
  468. package/Chakra/ChakraHelpers.h +0 -146
  469. package/Chakra/ChakraInstanceArgs.h +0 -52
  470. package/Chakra/ChakraPlatform.cpp +0 -42
  471. package/Chakra/ChakraPlatform.h +0 -51
  472. package/Chakra/ChakraTracing.cpp +0 -275
  473. package/Chakra/ChakraTracing.h +0 -11
  474. package/Chakra/ChakraUtils.cpp +0 -190
  475. package/Chakra/ChakraUtils.h +0 -72
  476. package/Chakra/ChakraValue.cpp +0 -257
  477. package/Chakra/ChakraValue.h +0 -308
  478. package/Chakra/Utf8DebugExtensions.cpp +0 -62
  479. package/Chakra/Utf8DebugExtensions.h +0 -29
  480. package/Libraries/Interaction/InteractionManagerStub.js +0 -184
  481. package/Libraries/Interaction/TaskQueue.js +0 -183
  482. package/Libraries/ReactNative/ReactNativeFeatureFlags.js +0 -31
  483. package/Microsoft.ReactNative/ABICxxModule.cpp +0 -51
  484. package/Microsoft.ReactNative/ABICxxModule.h +0 -38
  485. package/Microsoft.ReactNative/ABIViewManager.cpp +0 -263
  486. package/Microsoft.ReactNative/ABIViewManager.h +0 -100
  487. package/Microsoft.ReactNative/Base/CoreUIManagers.cpp +0 -55
  488. package/Microsoft.ReactNative/DevMenuControl.cpp +0 -14
  489. package/Microsoft.ReactNative/DevMenuControl.h +0 -20
  490. package/Microsoft.ReactNative/DevMenuControl.idl +0 -28
  491. package/Microsoft.ReactNative/DevMenuControl.xaml +0 -139
  492. package/Microsoft.ReactNative/GlyphViewManager.cpp +0 -167
  493. package/Microsoft.ReactNative/GlyphViewManager.h +0 -24
  494. package/Microsoft.ReactNative/INativeUIManager.h +0 -75
  495. package/Microsoft.ReactNative/IViewManager.idl +0 -120
  496. package/Microsoft.ReactNative/IViewManagerCore.idl +0 -45
  497. package/Microsoft.ReactNative/LayoutService.cpp +0 -51
  498. package/Microsoft.ReactNative/LayoutService.h +0 -32
  499. package/Microsoft.ReactNative/LayoutService.idl +0 -41
  500. package/Microsoft.ReactNative/Modules/NativeUIManager.cpp +0 -1187
  501. package/Microsoft.ReactNative/Modules/NativeUIManager.h +0 -128
  502. package/Microsoft.ReactNative/Modules/PaperUIManagerModule.cpp +0 -891
  503. package/Microsoft.ReactNative/Modules/PaperUIManagerModule.h +0 -185
  504. package/Microsoft.ReactNative/NativeModulesProvider.cpp +0 -49
  505. package/Microsoft.ReactNative/NativeModulesProvider.h +0 -25
  506. package/Microsoft.ReactNative/ReactApplication.cpp +0 -276
  507. package/Microsoft.ReactNative/ReactApplication.h +0 -156
  508. package/Microsoft.ReactNative/ReactApplication.idl +0 -48
  509. package/Microsoft.ReactNative/ReactHost/ViewManagerProvider.h +0 -19
  510. package/Microsoft.ReactNative/ReactPointerEventArgs.cpp +0 -55
  511. package/Microsoft.ReactNative/ReactPointerEventArgs.h +0 -32
  512. package/Microsoft.ReactNative/ReactPointerEventArgs.idl +0 -79
  513. package/Microsoft.ReactNative/ReactRootView.cpp +0 -592
  514. package/Microsoft.ReactNative/ReactRootView.h +0 -127
  515. package/Microsoft.ReactNative/ReactRootView.idl +0 -40
  516. package/Microsoft.ReactNative/TestHook.cpp +0 -99
  517. package/Microsoft.ReactNative/TestHook.h +0 -15
  518. package/Microsoft.ReactNative/Utils/AccessibilityUtils.cpp +0 -36
  519. package/Microsoft.ReactNative/Utils/AccessibilityUtils.h +0 -15
  520. package/Microsoft.ReactNative/Utils/BatchingEventEmitter.cpp +0 -171
  521. package/Microsoft.ReactNative/Utils/BatchingEventEmitter.h +0 -72
  522. package/Microsoft.ReactNative/Utils/PropertyHandlerUtils.h +0 -87
  523. package/Microsoft.ReactNative/Utils/PropertyUtils.h +0 -568
  524. package/Microsoft.ReactNative/Utils/ResourceBrushUtils.cpp +0 -182
  525. package/Microsoft.ReactNative/Utils/ResourceBrushUtils.h +0 -58
  526. package/Microsoft.ReactNative/Utils/ShadowNodeTypeUtils.h +0 -26
  527. package/Microsoft.ReactNative/Utils/XamlIslandUtils.cpp +0 -93
  528. package/Microsoft.ReactNative/Utils/XamlIslandUtils.h +0 -48
  529. package/Microsoft.ReactNative/ViewManagersProvider.cpp +0 -39
  530. package/Microsoft.ReactNative/ViewManagersProvider.h +0 -27
  531. package/Microsoft.ReactNative/Views/ActivityIndicatorViewManager.cpp +0 -62
  532. package/Microsoft.ReactNative/Views/ActivityIndicatorViewManager.h +0 -29
  533. package/Microsoft.ReactNative/Views/ConfigureBundlerDlg.cpp +0 -186
  534. package/Microsoft.ReactNative/Views/ConfigureBundlerDlg.h +0 -11
  535. package/Microsoft.ReactNative/Views/ControlViewManager.cpp +0 -143
  536. package/Microsoft.ReactNative/Views/ControlViewManager.h +0 -38
  537. package/Microsoft.ReactNative/Views/DebuggingOverlayViewManager.cpp +0 -53
  538. package/Microsoft.ReactNative/Views/DebuggingOverlayViewManager.h +0 -30
  539. package/Microsoft.ReactNative/Views/DynamicAutomationPeer.cpp +0 -586
  540. package/Microsoft.ReactNative/Views/DynamicAutomationPeer.h +0 -104
  541. package/Microsoft.ReactNative/Views/DynamicAutomationProperties.cpp +0 -330
  542. package/Microsoft.ReactNative/Views/DynamicAutomationProperties.h +0 -111
  543. package/Microsoft.ReactNative/Views/DynamicValueProvider.cpp +0 -59
  544. package/Microsoft.ReactNative/Views/DynamicValueProvider.h +0 -32
  545. package/Microsoft.ReactNative/Views/ExpressionAnimationStore.cpp +0 -61
  546. package/Microsoft.ReactNative/Views/ExpressionAnimationStore.h +0 -26
  547. package/Microsoft.ReactNative/Views/FlyoutViewManager.cpp +0 -559
  548. package/Microsoft.ReactNative/Views/FlyoutViewManager.h +0 -34
  549. package/Microsoft.ReactNative/Views/FrameworkElementTransferProperties.cpp +0 -126
  550. package/Microsoft.ReactNative/Views/FrameworkElementTransferProperties.h +0 -23
  551. package/Microsoft.ReactNative/Views/FrameworkElementViewManager.cpp +0 -957
  552. package/Microsoft.ReactNative/Views/FrameworkElementViewManager.h +0 -41
  553. package/Microsoft.ReactNative/Views/IXamlRootView.h +0 -17
  554. package/Microsoft.ReactNative/Views/Image/ImageViewManager.cpp +0 -245
  555. package/Microsoft.ReactNative/Views/Image/ImageViewManager.h +0 -45
  556. package/Microsoft.ReactNative/Views/Image/ReactImage.cpp +0 -469
  557. package/Microsoft.ReactNative/Views/Image/ReactImage.h +0 -80
  558. package/Microsoft.ReactNative/Views/Image/ReactImageBrush.cpp +0 -247
  559. package/Microsoft.ReactNative/Views/Image/ReactImageBrush.h +0 -67
  560. package/Microsoft.ReactNative/Views/KeyboardEventHandler.cpp +0 -261
  561. package/Microsoft.ReactNative/Views/KeyboardEventHandler.h +0 -132
  562. package/Microsoft.ReactNative/Views/PaperShadowNode.cpp +0 -18
  563. package/Microsoft.ReactNative/Views/PaperShadowNode.h +0 -38
  564. package/Microsoft.ReactNative/Views/PopupViewManager.cpp +0 -349
  565. package/Microsoft.ReactNative/Views/PopupViewManager.h +0 -36
  566. package/Microsoft.ReactNative/Views/RawTextViewManager.cpp +0 -69
  567. package/Microsoft.ReactNative/Views/RawTextViewManager.h +0 -46
  568. package/Microsoft.ReactNative/Views/ReactViewInstance.cpp +0 -43
  569. package/Microsoft.ReactNative/Views/ReactViewInstance.h +0 -53
  570. package/Microsoft.ReactNative/Views/RefreshControlManager.cpp +0 -116
  571. package/Microsoft.ReactNative/Views/RefreshControlManager.h +0 -28
  572. package/Microsoft.ReactNative/Views/RootViewManager.cpp +0 -65
  573. package/Microsoft.ReactNative/Views/RootViewManager.h +0 -36
  574. package/Microsoft.ReactNative/Views/SIPEventHandler.cpp +0 -117
  575. package/Microsoft.ReactNative/Views/SIPEventHandler.h +0 -45
  576. package/Microsoft.ReactNative/Views/ScrollContentViewManager.cpp +0 -16
  577. package/Microsoft.ReactNative/Views/ScrollContentViewManager.h +0 -19
  578. package/Microsoft.ReactNative/Views/ScrollViewManager.cpp +0 -540
  579. package/Microsoft.ReactNative/Views/ScrollViewManager.h +0 -42
  580. package/Microsoft.ReactNative/Views/ShadowNodeBase.cpp +0 -228
  581. package/Microsoft.ReactNative/Views/ShadowNodeBase.h +0 -169
  582. package/Microsoft.ReactNative/Views/ShadowNodeRegistry.cpp +0 -68
  583. package/Microsoft.ReactNative/Views/ShadowNodeRegistry.h +0 -40
  584. package/Microsoft.ReactNative/Views/SliderViewManager.cpp +0 -97
  585. package/Microsoft.ReactNative/Views/SliderViewManager.h +0 -32
  586. package/Microsoft.ReactNative/Views/SwitchViewManager.cpp +0 -227
  587. package/Microsoft.ReactNative/Views/SwitchViewManager.h +0 -31
  588. package/Microsoft.ReactNative/Views/Text/TextHighlighterVisitor.cpp +0 -52
  589. package/Microsoft.ReactNative/Views/Text/TextHighlighterVisitor.h +0 -37
  590. package/Microsoft.ReactNative/Views/Text/TextHitTestUtils.cpp +0 -348
  591. package/Microsoft.ReactNative/Views/Text/TextHitTestUtils.h +0 -13
  592. package/Microsoft.ReactNative/Views/Text/TextHitTestVisitor.cpp +0 -76
  593. package/Microsoft.ReactNative/Views/Text/TextHitTestVisitor.h +0 -32
  594. package/Microsoft.ReactNative/Views/Text/TextParentVisitor.cpp +0 -12
  595. package/Microsoft.ReactNative/Views/Text/TextParentVisitor.h +0 -19
  596. package/Microsoft.ReactNative/Views/Text/TextPropertyChangedParentVisitor.cpp +0 -75
  597. package/Microsoft.ReactNative/Views/Text/TextPropertyChangedParentVisitor.h +0 -43
  598. package/Microsoft.ReactNative/Views/Text/TextTransformParentVisitor.cpp +0 -21
  599. package/Microsoft.ReactNative/Views/Text/TextTransformParentVisitor.h +0 -23
  600. package/Microsoft.ReactNative/Views/Text/TextTransformVisitor.cpp +0 -70
  601. package/Microsoft.ReactNative/Views/Text/TextTransformVisitor.h +0 -34
  602. package/Microsoft.ReactNative/Views/Text/TextVisitor.cpp +0 -56
  603. package/Microsoft.ReactNative/Views/Text/TextVisitor.h +0 -34
  604. package/Microsoft.ReactNative/Views/Text/TextVisitorScope.h +0 -35
  605. package/Microsoft.ReactNative/Views/Text/TextVisitors.h +0 -47
  606. package/Microsoft.ReactNative/Views/TextInputViewManager.cpp +0 -1003
  607. package/Microsoft.ReactNative/Views/TextInputViewManager.h +0 -33
  608. package/Microsoft.ReactNative/Views/TextViewManager.cpp +0 -414
  609. package/Microsoft.ReactNative/Views/TextViewManager.h +0 -47
  610. package/Microsoft.ReactNative/Views/TouchEventHandler.cpp +0 -608
  611. package/Microsoft.ReactNative/Views/TouchEventHandler.h +0 -116
  612. package/Microsoft.ReactNative/Views/UnimplementedViewManager.cpp +0 -79
  613. package/Microsoft.ReactNative/Views/UnimplementedViewManager.h +0 -27
  614. package/Microsoft.ReactNative/Views/ViewControl.cpp +0 -43
  615. package/Microsoft.ReactNative/Views/ViewControl.h +0 -32
  616. package/Microsoft.ReactNative/Views/ViewManager.h +0 -33
  617. package/Microsoft.ReactNative/Views/ViewManagerBase.cpp +0 -487
  618. package/Microsoft.ReactNative/Views/ViewManagerBase.h +0 -121
  619. package/Microsoft.ReactNative/Views/ViewPanel.cpp +0 -164
  620. package/Microsoft.ReactNative/Views/ViewPanel.h +0 -82
  621. package/Microsoft.ReactNative/Views/ViewViewManager.cpp +0 -507
  622. package/Microsoft.ReactNative/Views/ViewViewManager.h +0 -52
  623. package/Microsoft.ReactNative/Views/VirtualTextViewManager.cpp +0 -143
  624. package/Microsoft.ReactNative/Views/VirtualTextViewManager.h +0 -57
  625. package/Microsoft.ReactNative/Views/XamlFeatures.cpp +0 -11
  626. package/Microsoft.ReactNative/Views/XamlFeatures.h +0 -11
  627. package/Microsoft.ReactNative/Views/cppwinrt/AccessibilityAction.idl +0 -12
  628. package/Microsoft.ReactNative/Views/cppwinrt/DynamicAutomationPeer.idl +0 -231
  629. package/Microsoft.ReactNative/Views/cppwinrt/ViewPanel.idl +0 -48
  630. package/Microsoft.ReactNative/XamlHelper.cpp +0 -78
  631. package/Microsoft.ReactNative/XamlHelper.h +0 -54
  632. package/Microsoft.ReactNative/XamlHelper.idl +0 -30
  633. package/Microsoft.ReactNative/XamlLoadState.cpp +0 -217
  634. package/Microsoft.ReactNative/XamlLoadState.h +0 -44
  635. package/Microsoft.ReactNative/XamlView.cpp +0 -59
  636. package/Microsoft.ReactNative/XamlView.h +0 -58
  637. package/Microsoft.ReactNative/getLayoutProps.ps1 +0 -5
  638. package/Microsoft.ReactNative.Cxx/UI.Xaml.Automation.Peers.h +0 -10
  639. package/Microsoft.ReactNative.Cxx/UI.Xaml.Automation.h +0 -10
  640. package/Microsoft.ReactNative.Cxx/UI.Xaml.Controls.Primitives.h +0 -10
  641. package/Microsoft.ReactNative.Cxx/UI.Xaml.Controls.h +0 -13
  642. package/Microsoft.ReactNative.Cxx/UI.Xaml.Documents.h +0 -10
  643. package/Microsoft.ReactNative.Cxx/UI.Xaml.Hosting.DesktopWindowXamlSource.h +0 -11
  644. package/Microsoft.ReactNative.Cxx/UI.Xaml.Hosting.h +0 -10
  645. package/Microsoft.ReactNative.Cxx/UI.Xaml.Input.h +0 -10
  646. package/Microsoft.ReactNative.Cxx/UI.Xaml.Markup.h +0 -10
  647. package/Microsoft.ReactNative.Cxx/UI.Xaml.Media.Imaging.h +0 -10
  648. package/Microsoft.ReactNative.Cxx/UI.Xaml.Media.Media3D.h +0 -10
  649. package/Microsoft.ReactNative.Cxx/UI.Xaml.Media.h +0 -10
  650. package/Microsoft.ReactNative.Cxx/UI.Xaml.Navigation.h +0 -10
  651. package/Microsoft.ReactNative.Cxx/UI.Xaml.Shapes.h +0 -10
  652. package/Microsoft.ReactNative.Managed/AttributedViewManager.cs +0 -527
  653. package/Microsoft.ReactNative.Managed/ViewManagerAttributes.cs +0 -91
  654. package/Microsoft.ReactNative.Managed/ViewManagerEvent.cs +0 -13
  655. package/ReactCommon/TEMP_UntilReactCommonUpdate/react/renderer/components/view/AccessibilityProps.cpp +0 -344
  656. package/ReactCommon/TEMP_UntilReactCommonUpdate/react/renderer/core/DynamicEventPayload.cpp +0 -42
  657. package/ReactCommon/TEMP_UntilReactCommonUpdate/yoga/yoga/YGEnums.h +0 -146
  658. package/ReactCommon/TEMP_UntilReactCommonUpdate/yoga/yoga/algorithm/CalculateLayout.cpp +0 -2435
  659. package/ReactCommon/TEMP_UntilReactCommonUpdate/yoga/yoga/enums/ExperimentalFeature.h +0 -40
  660. package/Shared/BatchingMessageQueueThread.h +0 -20
  661. package/Shared/ChakraRuntimeHolder.cpp +0 -62
  662. package/Shared/ChakraRuntimeHolder.h +0 -46
  663. package/Shared/CreateInstance.h +0 -25
  664. package/Shared/Executors/WebSocketJSExecutor.cpp +0 -294
  665. package/Shared/Executors/WebSocketJSExecutor.h +0 -123
  666. package/Shared/Executors/WebSocketJSExecutorFactory.cpp +0 -25
  667. package/Shared/Hermes/HermesSamplingProfiler.cpp +0 -114
  668. package/Shared/Hermes/HermesSamplingProfiler.h +0 -26
  669. package/Shared/JSI/ChakraApi.cpp +0 -436
  670. package/Shared/JSI/ChakraApi.h +0 -474
  671. package/Shared/JSI/ChakraJsiRuntime_edgemode.cpp +0 -100
  672. package/Shared/JSI/ChakraRuntime.cpp +0 -1132
  673. package/Shared/JSI/ChakraRuntime.h +0 -512
  674. package/Shared/JSI/ChakraRuntimeArgs.h +0 -45
  675. package/Shared/JSI/ChakraRuntimeFactory.h +0 -15
  676. package/Shared/JSI/JSExecutorFactoryDelegate.h +0 -12
  677. package/Shared/JSI/JSExecutorFactorySettings.cpp +0 -30
  678. package/Shared/JSI/JSExecutorFactorySettings.h +0 -21
  679. package/Shared/NativeModuleProvider.h +0 -40
  680. package/Shared/SystemChakraRuntime.h +0 -38
  681. package/Shared/Threading/BatchingQueueThread.cpp +0 -128
  682. package/Shared/Threading/BatchingQueueThread.h +0 -59
  683. package/Shared/WebSocketJSExecutorFactory.h +0 -27
  684. package/fmt/TEMP_UntilFmtUpdate/core.h +0 -2925
  685. package/template/cpp-app/proj/MyApp.sln +0 -166
  686. package/template/cpp-app/proj/MyApp.vcxproj +0 -176
  687. package/template/cpp-app/proj/MyApp.vcxproj.filters +0 -62
  688. package/template/cpp-app/src/App.cpp +0 -93
  689. package/template/cpp-app/src/App.h +0 -21
  690. package/template/cpp-app/src/App.idl +0 -3
  691. package/template/cpp-app/src/AutolinkedNativeModules.g.cpp +0 -13
  692. package/template/cpp-app/src/AutolinkedNativeModules.g.h +0 -10
  693. package/template/cpp-app/src/MainPage.cpp +0 -20
  694. package/template/cpp-app/src/MainPage.h +0 -19
  695. package/template/cpp-app/src/MainPage.idl +0 -10
  696. package/template/cpp-app/src/PropertySheet.props +0 -16
  697. package/template/cpp-app/src/ReactPackageProvider.cpp +0 -15
  698. package/template/cpp-app/src/ReactPackageProvider.h +0 -13
  699. package/template/cpp-app/src/pch.cpp +0 -1
  700. package/template/cpp-app/src/pch.h +0 -24
  701. package/template/cs-app/proj/MyApp.csproj +0 -162
  702. package/template/cs-app/proj/MyApp.sln +0 -191
  703. package/template/cs-app/src/App.xaml.cs +0 -62
  704. package/template/cs-app/src/AutolinkedNativeModules.g.cs +0 -13
  705. package/template/cs-app/src/MainPage.xaml.cs +0 -34
  706. package/template/cs-app/src/Properties/AssemblyInfo.cs +0 -29
  707. package/template/cs-app/src/Properties/Default.rd.xml +0 -32
  708. package/template/cs-app/src/ReactPackageProvider.cs +0 -17
  709. package/template/shared-app/assets/LockScreenLogo.scale-200.png +0 -0
  710. package/template/shared-app/assets/SplashScreen.scale-200.png +0 -0
  711. package/template/shared-app/assets/Square150x150Logo.scale-200.png +0 -0
  712. package/template/shared-app/assets/Square44x44Logo.scale-200.png +0 -0
  713. package/template/shared-app/assets/Square44x44Logo.targetsize-24_altform-unplated.png +0 -0
  714. package/template/shared-app/assets/StoreLogo.png +0 -0
  715. package/template/shared-app/assets/Wide310x150Logo.scale-200.png +0 -0
  716. package/template/shared-app/proj/ExperimentalFeatures.props +0 -32
  717. package/template/shared-app/proj/NuGet_Config +0 -19
  718. package/template/shared-app/src/App.xaml +0 -10
  719. package/template/shared-app/src/AutolinkedNativeModules.g.props +0 -6
  720. package/template/shared-app/src/AutolinkedNativeModules.g.targets +0 -6
  721. package/template/shared-app/src/MainPage.xaml +0 -21
  722. package/template/shared-app/src/Package.appxmanifest +0 -50
  723. package/templates/old/uwp-cpp-app/template.config.js +0 -15
  724. package/templates/old/uwp-cs-app/template.config.js +0 -15
@@ -6,7 +6,6 @@
6
6
  #include <AppModelHelpers.h>
7
7
  #include <CallInvoker.h>
8
8
  #include <CppRuntimeOptions.h>
9
- #include <CreateInstance.h>
10
9
  #include <CreateModules.h>
11
10
  #include <JSCallInvokerScheduler.h>
12
11
  #include <OInstance.h>
@@ -17,7 +16,6 @@
17
16
  #include <Threading/MessageQueueThreadFactory.h>
18
17
  #include <TurboModuleManager.h>
19
18
  #include <Utils/Helpers.h>
20
- #include <Views/ViewManager.h>
21
19
  #include <appModel.h>
22
20
  #include <comUtil/qiCast.h>
23
21
  #include <dispatchQueue/dispatchQueue.h>
@@ -26,7 +24,6 @@
26
24
  #include <winrt/Windows.Storage.h>
27
25
  #include <tuple>
28
26
  #include "BaseScriptStoreImpl.h"
29
- #include "ChakraRuntimeHolder.h"
30
27
  #include "CrashManager.h"
31
28
  #include "DevMenu.h"
32
29
  #include "DynamicWriter.h"
@@ -34,7 +31,6 @@
34
31
  #include "IReactContext.h"
35
32
  #include "IReactDispatcher.h"
36
33
  #include "IReactNotificationService.h"
37
- #include "JSI/JSExecutorFactorySettings.h"
38
34
  #include "JsiApi.h"
39
35
  #include "Modules/DevSettingsModule.h"
40
36
  #include "Modules/ExceptionsManager.h"
@@ -47,13 +43,11 @@
47
43
  #include "MoveOnCopy.h"
48
44
  #include "MsoUtils.h"
49
45
  #include "NativeModules.h"
50
- #include "NativeModulesProvider.h"
51
46
  #include "ReactCoreInjection.h"
52
47
  #include "ReactErrorProvider.h"
53
48
  #include "RedBox.h"
54
49
  #include "Unicode.h"
55
50
 
56
- #ifdef USE_FABRIC
57
51
  #include <Fabric/Composition/UriImageManager.h>
58
52
  #include <Fabric/FabricUIManagerModule.h>
59
53
  #include <Fabric/WindowsComponentDescriptorRegistry.h>
@@ -67,19 +61,10 @@
67
61
  #include <react/runtime/TimerManager.h>
68
62
  #include <react/threading/MessageQueueThreadImpl.h>
69
63
  #include "Inspector/ReactInspectorThread.h"
70
- #endif
71
-
72
- #if !defined(CORE_ABI) && !defined(USE_FABRIC)
73
- #include <LayoutService.h>
74
- #include <XamlUIService.h>
75
- #include "Modules/NativeUIManager.h"
76
- #include "Modules/PaperUIManagerModule.h"
77
- #endif
78
64
 
79
65
  #ifndef CORE_ABI
80
66
  #include <Utils/UwpPreparedScriptStore.h>
81
67
  #include <Utils/UwpScriptStore.h>
82
- #include "ConfigureBundlerDlg.h"
83
68
  #include "Modules/AccessibilityInfoModule.h"
84
69
  #include "Modules/AlertModule.h"
85
70
  #include "Modules/AppStateModule.h"
@@ -89,8 +74,6 @@
89
74
  #include "Modules/I18nManagerModule.h"
90
75
  #include "Modules/LinkingManagerModule.h"
91
76
  #include "Modules/LogBoxModule.h"
92
- #else
93
- #include "Modules/DesktopTimingModule.h"
94
77
  #endif
95
78
  #include "Modules/ExceptionsManager.h"
96
79
  #include "Modules/PlatformConstantsWinModule.h"
@@ -98,28 +81,14 @@
98
81
  #include "Modules/SourceCode.h"
99
82
  #include "Modules/StatusBarManager.h"
100
83
 
101
- #if !defined(CORE_ABI) || defined(USE_FABRIC)
102
84
  #include <Modules/ImageViewManagerModule.h>
103
85
  #include "Modules/Animated/NativeAnimatedModule.h"
104
- #endif
105
86
 
106
87
  #if defined(USE_V8)
107
88
  #include "JSI/V8RuntimeHolder.h"
108
89
  #include "V8JSIRuntimeHolder.h"
109
90
  #endif // USE_V8
110
91
 
111
- namespace Microsoft::ReactNative {
112
-
113
- void AddStandardViewManagers(
114
- std::vector<std::unique_ptr<Microsoft::ReactNative::IViewManager>> &viewManagers,
115
- const Mso::React::IReactContext &context) noexcept;
116
-
117
- std::shared_ptr<facebook::react::IUIManager> CreateUIManager2(
118
- Mso::React::IReactContext *context,
119
- std::vector<Microsoft::ReactNative::IViewManager> &&viewManagers) noexcept;
120
-
121
- } // namespace Microsoft::ReactNative
122
-
123
92
  using namespace winrt::Microsoft::ReactNative;
124
93
 
125
94
  namespace Mso::React {
@@ -149,77 +118,6 @@ struct LoadedCallbackGuard {
149
118
  Mso::CntPtr<ReactInstanceWin> m_reactInstance;
150
119
  };
151
120
 
152
- struct BridgeUIBatchInstanceCallback final : public facebook::react::InstanceCallback {
153
- BridgeUIBatchInstanceCallback(Mso::WeakPtr<ReactInstanceWin> wkInstance) : m_wkInstance(wkInstance) {}
154
- virtual ~BridgeUIBatchInstanceCallback() = default;
155
- void onBatchComplete() override {
156
- if (auto instance = m_wkInstance.GetStrongPtr()) {
157
- auto state = instance->State();
158
- if (state != ReactInstanceState::HasError && state != ReactInstanceState::Unloaded) {
159
- if (instance->UseWebDebugger()) {
160
- // While using a CxxModule for UIManager (which we do when running under webdebugger)
161
- // We need to post the batch complete to the NativeQueue to ensure that the UIManager
162
- // has posted everything from this batch into its queue before we complete the batch.
163
- instance->m_jsDispatchQueue.Load().Post([wkInstance = m_wkInstance]() {
164
- if (auto instance = wkInstance.GetStrongPtr()) {
165
- instance->m_batchingUIThread->runOnQueue([wkInstance]() {
166
- if (auto instance = wkInstance.GetStrongPtr()) {
167
- auto propBag = ReactPropertyBag(instance->m_reactContext->Properties());
168
- if (auto callback = propBag.Get(winrt::Microsoft::ReactNative::implementation::ReactCoreInjection::
169
- UIBatchCompleteCallbackProperty())) {
170
- (*callback)(instance->m_reactContext->Properties());
171
- }
172
- #if !defined(CORE_ABI) && !defined(USE_FABRIC)
173
- if (auto uiManager = Microsoft::ReactNative::GetNativeUIManager(*instance->m_reactContext).lock()) {
174
- uiManager->onBatchComplete();
175
- }
176
- #endif
177
- }
178
- });
179
-
180
- // For UWP we use a batching message queue to optimize the usage
181
- // of the CoreDispatcher. Win32 already has an optimized queue.
182
- facebook::react::BatchingMessageQueueThread *batchingUIThread =
183
- static_cast<facebook::react::BatchingMessageQueueThread *>(instance->m_batchingUIThread.get());
184
- if (batchingUIThread != nullptr) {
185
- batchingUIThread->onBatchComplete();
186
- }
187
- }
188
- });
189
- } else {
190
- instance->m_batchingUIThread->runOnQueue([wkInstance = m_wkInstance]() {
191
- if (auto instance = wkInstance.GetStrongPtr()) {
192
- auto propBag = ReactPropertyBag(instance->m_reactContext->Properties());
193
- if (auto callback = propBag.Get(winrt::Microsoft::ReactNative::implementation::ReactCoreInjection::
194
- UIBatchCompleteCallbackProperty())) {
195
- (*callback)(instance->m_reactContext->Properties());
196
- }
197
- #if !defined(CORE_ABI) && !defined(USE_FABRIC)
198
- if (auto uiManager = Microsoft::ReactNative::GetNativeUIManager(*instance->m_reactContext).lock()) {
199
- uiManager->onBatchComplete();
200
- }
201
- #endif
202
- }
203
- });
204
- // For UWP we use a batching message queue to optimize the usage
205
- // of the CoreDispatcher. Win32 already has an optimized queue.
206
- facebook::react::BatchingMessageQueueThread *batchingUIThread =
207
- static_cast<facebook::react::BatchingMessageQueueThread *>(instance->m_batchingUIThread.get());
208
- if (batchingUIThread != nullptr) {
209
- batchingUIThread->onBatchComplete();
210
- }
211
- }
212
- }
213
- }
214
- }
215
- void incrementPendingJSCalls() override {}
216
- void decrementPendingJSCalls() override {}
217
-
218
- Mso::WeakPtr<ReactInstanceWin> m_wkInstance;
219
- Mso::CntPtr<Mso::React::ReactContext> m_context;
220
- std::weak_ptr<facebook::react::MessageQueueThread> m_uiThread;
221
- };
222
-
223
121
  //=============================================================================================
224
122
  // ReactInstanceWin implementation
225
123
  //=============================================================================================
@@ -240,7 +138,6 @@ ReactInstanceWin::ReactInstanceWin(
240
138
  m_isFastReloadEnabled(options.UseFastRefresh()),
241
139
  m_isLiveReloadEnabled(options.UseLiveReload()),
242
140
  m_updateUI{std::move(updateUI)},
243
- m_useWebDebugger(options.UseWebDebugger()),
244
141
  m_useDirectDebugger(options.UseDirectDebugger()),
245
142
  m_debuggerBreakOnNextLine(options.DebuggerBreakOnNextLine()),
246
143
  m_reactContext{Mso::Make<ReactContext>(
@@ -278,7 +175,6 @@ ReactInstanceWin::ReactInstanceWin(
278
175
  propBag = m_options.Properties,
279
176
  reactContext = m_reactContext]() noexcept {
280
177
  whenLoaded.TryCancel(); // It only has an effect if whenLoaded was not set before
281
- Microsoft::ReactNative::HermesRuntimeHolder::storeTo(ReactPropertyBag(reactContext->Properties()), nullptr);
282
178
  if (onDestroyed) {
283
179
  onDestroyed.Get()->Invoke(reactContext);
284
180
  }
@@ -333,31 +229,15 @@ void ReactInstanceWin::InstanceCrashHandler(int fileDescriptor) noexcept {
333
229
 
334
230
  void ReactInstanceWin::LoadModules(
335
231
  const std::shared_ptr<facebook::react::DevSettings> &devSettings,
336
- const std::shared_ptr<winrt::Microsoft::ReactNative::NativeModulesProvider> &nativeModulesProvider,
337
232
  const std::shared_ptr<winrt::Microsoft::ReactNative::TurboModulesProvider> &turboModulesProvider) noexcept {
338
- auto registerTurboModule = [this, &nativeModulesProvider, &turboModulesProvider](
233
+ auto registerTurboModule = [this, &turboModulesProvider](
339
234
  const wchar_t *name, const ReactModuleProvider &provider) noexcept {
340
- if (m_options.UseWebDebugger()) {
341
- nativeModulesProvider->AddModuleProvider(name, provider);
342
- } else {
343
- turboModulesProvider->AddModuleProvider(name, provider, false);
344
- }
235
+ turboModulesProvider->AddModuleProvider(name, provider, false);
345
236
  };
346
237
 
347
- #ifdef USE_FABRIC
348
- if (Microsoft::ReactNative::IsFabricEnabled(m_reactContext->Properties())) {
349
- registerTurboModule(
350
- L"FabricUIManagerBinding",
351
- winrt::Microsoft::ReactNative::MakeModuleProvider<::Microsoft::ReactNative::FabricUIManager>());
352
- }
353
- #endif
354
-
355
- #if !defined(CORE_ABI) && !defined(USE_FABRIC)
356
238
  registerTurboModule(
357
- L"UIManager",
358
- // TODO: Use MakeTurboModuleProvider after it satisfies ReactNativeSpecs::UIManagerSpec
359
- winrt::Microsoft::ReactNative::MakeModuleProvider<::Microsoft::ReactNative::UIManager>());
360
- #endif
239
+ L"FabricUIManagerBinding",
240
+ winrt::Microsoft::ReactNative::MakeModuleProvider<::Microsoft::ReactNative::FabricUIManager>());
361
241
 
362
242
  #ifndef CORE_ABI
363
243
  registerTurboModule(
@@ -393,23 +273,18 @@ void ReactInstanceWin::LoadModules(
393
273
  winrt::Microsoft::ReactNative::MakeModuleProvider<::Microsoft::ReactNative::NativeAnimatedModule>());
394
274
 
395
275
  #else
396
- if (Microsoft::ReactNative::IsFabricEnabled(m_reactContext->Properties())) {
397
- registerTurboModule(
398
- L"ImageLoader",
399
- winrt::Microsoft::ReactNative::MakeTurboModuleProvider<::Microsoft::ReactNative::ImageLoader>());
400
-
401
- registerTurboModule(
402
- L"NativeAnimatedModule",
403
- winrt::Microsoft::ReactNative::MakeModuleProvider<::Microsoft::ReactNative::NativeAnimatedModule>());
404
- }
276
+ registerTurboModule(
277
+ L"ImageLoader", winrt::Microsoft::ReactNative::MakeTurboModuleProvider<::Microsoft::ReactNative::ImageLoader>());
278
+
279
+ registerTurboModule(
280
+ L"NativeAnimatedModule",
281
+ winrt::Microsoft::ReactNative::MakeModuleProvider<::Microsoft::ReactNative::NativeAnimatedModule>());
405
282
  #endif
406
283
 
407
- if (!m_options.UseWebDebugger()) {
408
- turboModulesProvider->AddModuleProvider(
409
- L"SampleTurboModule",
410
- winrt::Microsoft::ReactNative::MakeTurboModuleProvider<::Microsoft::ReactNative::SampleTurboModule>(),
411
- false);
412
- }
284
+ turboModulesProvider->AddModuleProvider(
285
+ L"SampleTurboModule",
286
+ winrt::Microsoft::ReactNative::MakeTurboModuleProvider<::Microsoft::ReactNative::SampleTurboModule>(),
287
+ false);
413
288
 
414
289
  ::Microsoft::ReactNative::ExceptionsManager::SetRedBoxHander(
415
290
  winrt::Microsoft::ReactNative::ReactPropertyBag(m_reactContext->Properties()), m_redboxHandler);
@@ -425,22 +300,21 @@ void ReactInstanceWin::LoadModules(
425
300
  L"PlatformConstants",
426
301
  winrt::Microsoft::ReactNative::MakeTurboModuleProvider<::Microsoft::ReactNative::PlatformConstants>());
427
302
  uint32_t hermesBytecodeVersion = 0;
428
- #if defined(USE_HERMES) && defined(ENABLE_DEVSERVER_HBCBUNDLES)
303
+ #if defined(ENABLE_DEVSERVER_HBCBUNDLES)
429
304
  hermesBytecodeVersion = ::hermes::hbc::BYTECODE_VERSION;
430
305
  #endif
431
306
 
432
- std::string bundleUrl = (devSettings->useWebDebugger || devSettings->liveReloadCallback)
433
- ? facebook::react::DevServerHelper::get_BundleUrl(
434
- devSettings->sourceBundleHost,
435
- devSettings->sourceBundlePort,
436
- devSettings->debugBundlePath,
437
- devSettings->platformName,
438
- devSettings->bundleAppId,
439
- devSettings->devBundle,
440
- devSettings->useFastRefresh,
441
- devSettings->inlineSourceMap,
442
- hermesBytecodeVersion)
443
- : devSettings->bundleRootPath;
307
+ std::string bundleUrl = devSettings->liveReloadCallback ? facebook::react::DevServerHelper::get_BundleUrl(
308
+ devSettings->sourceBundleHost,
309
+ devSettings->sourceBundlePort,
310
+ devSettings->debugBundlePath,
311
+ devSettings->platformName,
312
+ devSettings->bundleAppId,
313
+ devSettings->devBundle,
314
+ devSettings->useFastRefresh,
315
+ devSettings->inlineSourceMap,
316
+ hermesBytecodeVersion)
317
+ : devSettings->bundleRootPath;
444
318
  ::Microsoft::ReactNative::SourceCode::SetScriptUrl(
445
319
  winrt::Microsoft::ReactNative::ReactPropertyBag(m_reactContext->Properties()), bundleUrl);
446
320
 
@@ -457,17 +331,9 @@ void ReactInstanceWin::LoadModules(
457
331
  registerTurboModule(
458
332
  L"LinkingManager",
459
333
  winrt::Microsoft::ReactNative::MakeTurboModuleProvider<::Microsoft::ReactNative::LinkingManager>());
334
+ #endif
460
335
 
461
336
  registerTurboModule(L"Timing", winrt::Microsoft::ReactNative::MakeModuleProvider<::Microsoft::ReactNative::Timing>());
462
- #else
463
-
464
- if (Microsoft::ReactNative::IsFabricEnabled(m_reactContext->Properties())) {
465
- registerTurboModule(
466
- L"Timing", winrt::Microsoft::ReactNative::MakeModuleProvider<::Microsoft::ReactNative::Timing>());
467
- } else {
468
- registerTurboModule(L"Timing", winrt::Microsoft::ReactNative::MakeModuleProvider<::facebook::react::Timing>());
469
- }
470
- #endif
471
337
 
472
338
  registerTurboModule(
473
339
  ::Microsoft::React::GetWebSocketTurboModuleName(), ::Microsoft::React::GetWebSocketModuleProvider());
@@ -482,22 +348,11 @@ void ReactInstanceWin::LoadModules(
482
348
 
483
349
  //! Initialize() is called from the native queue.
484
350
  void ReactInstanceWin::Initialize() noexcept {
485
- #ifdef USE_FABRIC
486
- if (Microsoft::ReactNative::IsFabricEnabled(m_reactContext->Properties())) {
487
- InitializeBridgeless();
488
- } else
489
- #endif
490
- {
491
- InitializeWithBridge();
492
- }
351
+ InitializeBridgeless();
493
352
  }
494
353
 
495
354
  void ReactInstanceWin::InitDevMenu() noexcept {
496
- Microsoft::ReactNative::DevMenuManager::InitDevMenu(m_reactContext, [weakReactHost = m_weakReactHost]() noexcept {
497
- #if !defined(CORE_ABI) && !defined(USE_FABRIC)
498
- Microsoft::ReactNative::ShowConfigureBundlerDialog(weakReactHost);
499
- #endif // CORE_ABI
500
- });
355
+ Microsoft::ReactNative::DevMenuManager::InitDevMenu(m_reactContext, [weakReactHost = m_weakReactHost]() noexcept {});
501
356
  }
502
357
 
503
358
  void ReactInstanceWin::InitUIDependentCalls() noexcept {
@@ -525,13 +380,10 @@ std::shared_ptr<facebook::react::DevSettings> ReactInstanceWin::CreateDevSetting
525
380
  devSettings->debuggerBreakOnNextLine = m_debuggerBreakOnNextLine;
526
381
  devSettings->debuggerPort = m_options.DeveloperSettings.DebuggerPort;
527
382
  devSettings->debuggerRuntimeName = m_options.DeveloperSettings.DebuggerRuntimeName;
528
- devSettings->useWebDebugger = m_useWebDebugger;
529
383
  devSettings->useFastRefresh = m_isFastReloadEnabled;
530
384
  devSettings->bundleRootPath = BundleRootPath();
531
385
  devSettings->platformName =
532
386
  winrt::Microsoft::ReactNative::implementation::ReactCoreInjection::GetPlatformName(m_reactContext->Properties());
533
- devSettings->waitingForDebuggerCallback = GetWaitingForDebuggerCallback();
534
- devSettings->debuggerAttachCallback = GetDebuggerAttachCallback();
535
387
  devSettings->enableDefaultCrashHandler = m_options.EnableDefaultCrashHandler();
536
388
  devSettings->bundleAppId = BundleAppId();
537
389
  devSettings->devBundle = RequestDevBundle();
@@ -583,8 +435,6 @@ std::unique_ptr<facebook::jsi::PreparedScriptStore> CreatePreparedScriptStore()
583
435
  return preparedScriptStore;
584
436
  }
585
437
 
586
- #ifdef USE_FABRIC
587
-
588
438
  typedef HRESULT(__stdcall *SetThreadDescriptionFn)(HANDLE, PCWSTR);
589
439
  void SetJSThreadDescription() noexcept {
590
440
  // Office still supports Server 2016 so we need to use Run Time Dynamic Linking and cannot just use:
@@ -635,8 +485,7 @@ void ReactInstanceWin::InitializeBridgeless() noexcept {
635
485
  if (devSettings->useFastRefresh || devSettings->liveReloadCallback) {
636
486
  Microsoft::ReactNative::PackagerConnection::CreateOrReusePackagerConnection(*devSettings);
637
487
  }
638
- // null moduleProvider since native modules are not supported in bridgeless
639
- LoadModules(devSettings, nullptr, m_options.TurboModuleProvider);
488
+ LoadModules(devSettings, m_options.TurboModuleProvider);
640
489
 
641
490
  auto jsMessageThread = std::make_shared<facebook::react::MessageQueueThreadImpl>();
642
491
  m_jsMessageThread.Exchange(jsMessageThread);
@@ -763,7 +612,6 @@ void ReactInstanceWin::InitializeBridgeless() noexcept {
763
612
  }
764
613
  });
765
614
  }
766
- #endif
767
615
 
768
616
  void ReactInstanceWin::FireInstanceCreatedCallback() noexcept {
769
617
  // The InstanceCreated event can be used to augment the JS environment for all JS code. So it needs to be
@@ -777,158 +625,6 @@ void ReactInstanceWin::FireInstanceCreatedCallback() noexcept {
777
625
  });
778
626
  }
779
627
 
780
- void ReactInstanceWin::InitializeWithBridge() noexcept {
781
- InitJSMessageThread();
782
- InitNativeMessageThread();
783
-
784
- InitUIQueue();
785
- InitUIMessageThread();
786
-
787
- #if !defined(CORE_ABI) && !defined(USE_FABRIC)
788
- // InitUIManager uses m_legacyReactInstance
789
- InitUIManager();
790
- #endif
791
-
792
- InitDevMenu();
793
- #ifdef USE_FABRIC
794
- winrt::Microsoft::ReactNative::Composition::implementation::UriImageManager::Install(
795
- ReactPropertyBag(m_reactContext->Properties()), m_options.UriImageManager);
796
- #endif
797
-
798
- m_uiQueue->Post([this, weakThis = Mso::WeakPtr{this}]() noexcept {
799
- // Objects that must be created on the UI thread
800
- if (auto strongThis = weakThis.GetStrongPtr()) {
801
- InitUIDependentCalls();
802
- strongThis->Queue().Post([this, weakThis]() noexcept {
803
- if (auto strongThis = weakThis.GetStrongPtr()) {
804
- auto devSettings = strongThis->CreateDevSettings();
805
-
806
- auto getBoolProperty = [properties = ReactPropertyBag{m_options.Properties}](
807
- const wchar_t *ns, const wchar_t *name, bool defaultValue) noexcept -> bool {
808
- ReactPropertyId<bool> propId{ns == nullptr ? ReactPropertyNamespace() : ReactPropertyNamespace(ns), name};
809
- std::optional<bool> propValue = properties.Get(propId);
810
- return propValue.value_or(defaultValue);
811
- };
812
-
813
- devSettings->useWebSocketTurboModule = getBoolProperty(nullptr, L"UseWebSocketTurboModule", false);
814
-
815
- std::vector<facebook::react::NativeModuleDescription> cxxModules;
816
- auto nmp = std::make_shared<winrt::Microsoft::ReactNative::NativeModulesProvider>();
817
-
818
- LoadModules(devSettings, nmp, m_options.TurboModuleProvider);
819
-
820
- auto modules = nmp->GetModules(m_reactContext, m_jsMessageThread.Load());
821
- cxxModules.insert(
822
- cxxModules.end(), std::make_move_iterator(modules.begin()), std::make_move_iterator(modules.end()));
823
-
824
- if (m_options.ModuleProvider != nullptr) {
825
- std::vector<facebook::react::NativeModuleDescription> customCxxModules =
826
- m_options.ModuleProvider->GetModules(m_reactContext, m_jsMessageThread.Load());
827
- cxxModules.insert(std::end(cxxModules), std::begin(customCxxModules), std::end(customCxxModules));
828
- }
829
-
830
- std::unique_ptr<facebook::jsi::ScriptStore> scriptStore = nullptr;
831
- std::unique_ptr<facebook::jsi::PreparedScriptStore> preparedScriptStore = nullptr;
832
-
833
- if (const auto jsExecutorFactoryDelegate =
834
- Microsoft::JSI::JSExecutorFactorySettings::GetJSExecutorFactoryDelegate(
835
- winrt::Microsoft::ReactNative::ReactPropertyBag(strongThis->Options().Properties))) {
836
- devSettings->jsExecutorFactoryDelegate = jsExecutorFactoryDelegate;
837
- if (m_options.JsiEngine() == JSIEngine::Hermes) {
838
- devSettings->jsiEngineOverride = facebook::react::JSIEngineOverride::Hermes;
839
- }
840
- } else {
841
- switch (m_options.JsiEngine()) {
842
- case JSIEngine::Hermes: {
843
- preparedScriptStore = CreatePreparedScriptStore();
844
-
845
- auto hermesRuntimeHolder = std::make_shared<Microsoft::ReactNative::HermesRuntimeHolder>(
846
- devSettings, m_jsMessageThread.Load(), std::move(preparedScriptStore));
847
- Microsoft::ReactNative::HermesRuntimeHolder::storeTo(
848
- ReactPropertyBag(m_reactContext->Properties()), hermesRuntimeHolder);
849
- devSettings->jsiRuntimeHolder = hermesRuntimeHolder;
850
- break;
851
- }
852
- case JSIEngine::V8:
853
- #if defined(USE_V8)
854
- {
855
- preparedScriptStore = CreatePreparedScriptStore();
856
- bool enableMultiThreadSupport{false};
857
- #ifdef USE_FABRIC
858
- enableMultiThreadSupport = Microsoft::ReactNative::IsFabricEnabled(m_reactContext->Properties());
859
- #endif // USE_FABRIC
860
-
861
- if (m_options.JsiEngineV8NodeApi()) {
862
- devSettings->jsiRuntimeHolder = std::make_shared<Microsoft::ReactNative::V8RuntimeHolder>(
863
- devSettings, m_jsMessageThread.Load(), std::move(preparedScriptStore), enableMultiThreadSupport);
864
- } else {
865
- devSettings->jsiRuntimeHolder = std::make_shared<facebook::react::V8JSIRuntimeHolder>(
866
- devSettings,
867
- m_jsMessageThread.Load(),
868
- std::move(scriptStore),
869
- std::move(preparedScriptStore),
870
- enableMultiThreadSupport);
871
- }
872
-
873
- break;
874
- }
875
- #endif // USE_V8
876
- case JSIEngine::Chakra:
877
- #ifndef CORE_ABI
878
- if (m_options.EnableByteCodeCaching || !m_options.ByteCodeFileUri.empty()) {
879
- scriptStore = std::make_unique<Microsoft::ReactNative::UwpScriptStore>();
880
- preparedScriptStore = std::make_unique<Microsoft::ReactNative::UwpPreparedScriptStore>(
881
- winrt::to_hstring(m_options.ByteCodeFileUri));
882
- }
883
- #endif
884
- devSettings->jsiRuntimeHolder = std::make_shared<Microsoft::JSI::ChakraRuntimeHolder>(
885
- devSettings, m_jsMessageThread.Load(), std::move(scriptStore), std::move(preparedScriptStore));
886
- break;
887
- }
888
- }
889
-
890
- m_jsiRuntimeHolder = devSettings->jsiRuntimeHolder;
891
-
892
- try {
893
- // We need to keep the instance wrapper alive as its destruction shuts down the native queue.
894
- m_options.TurboModuleProvider->SetReactContext(
895
- winrt::make<implementation::ReactContext>(Mso::Copy(m_reactContext)));
896
-
897
- auto bundleRootPath = devSettings->bundleRootPath;
898
- auto jsiRuntimeHolder = devSettings->jsiRuntimeHolder;
899
- auto instanceWrapper = facebook::react::CreateReactInstance(
900
- std::shared_ptr<facebook::react::Instance>(strongThis->m_instance.Load()),
901
- std::move(bundleRootPath), // bundleRootPath
902
- std::move(cxxModules),
903
- m_options.TurboModuleProvider,
904
- m_options.TurboModuleProvider->LongLivedObjectCollection(),
905
- m_reactContext->Properties(),
906
- std::make_unique<BridgeUIBatchInstanceCallback>(weakThis),
907
- m_jsMessageThread.Load(),
908
- m_nativeMessageThread.Load(),
909
- std::move(devSettings));
910
-
911
- m_instanceWrapper.Exchange(std::move(instanceWrapper));
912
-
913
- FireInstanceCreatedCallback();
914
- LoadJSBundles();
915
- SetupHMRClient();
916
-
917
- } catch (std::exception &e) {
918
- OnErrorWithMessage(e.what());
919
- OnErrorWithMessage("UwpReactInstance: Failed to create React Instance.");
920
- } catch (winrt::hresult_error const &e) {
921
- OnErrorWithMessage(Microsoft::Common::Unicode::Utf16ToUtf8(e.message().c_str(), e.message().size()));
922
- OnErrorWithMessage("UwpReactInstance: Failed to create React Instance.");
923
- } catch (...) {
924
- OnErrorWithMessage("UwpReactInstance: Failed to create React Instance.");
925
- }
926
- }
927
- });
928
- };
929
- });
930
- }
931
-
932
628
  void ReactInstanceWin::SetupHMRClient() noexcept {
933
629
  if (UseDeveloperSupport() && State() != ReactInstanceState::HasError) {
934
630
  folly::dynamic params = folly::dynamic::array(
@@ -943,65 +639,6 @@ void ReactInstanceWin::SetupHMRClient() noexcept {
943
639
  }
944
640
  }
945
641
 
946
- void ReactInstanceWin::LoadJSBundles() noexcept {
947
- //
948
- // We use m_jsMessageThread to load JS bundles synchronously. In that case we only load
949
- // them if the m_jsMessageThread is not shut down (quitSynchronous() is not called).
950
- // After the load we call OnReactInstanceLoaded callback on native queue.
951
- //
952
- // Note that the instance could be destroyed while we are loading JS Bundles.
953
- // Though, the JS engine is not destroyed until this work item is not finished.
954
- // Thus, we check the m_isDestroyed flag to see if we should do an early exit.
955
- // Also, since we have to guarantee that the OnReactInstanceLoaded callback is called before
956
- // the OnReactInstanceDestroyed callback, the OnReactInstanceLoaded is called right before the
957
- // OnReactInstanceDestroyed callback in the Destroy() method. In that case any OnReactInstanceLoaded
958
- // calls after we finish this JS message queue work item is ignored.
959
- //
960
- // The LoadedCallbackGuard is used for the case when runOnQueue does not execute the lambda
961
- // before destroying it. It may happen if the m_jsMessageThread is already shutdown.
962
- // In that case, the LoadedCallbackGuard notifies about cancellation by calling OnReactInstanceLoaded.
963
- // The OnReactInstanceLoaded internally only accepts the first call and ignores others.
964
- //
965
-
966
- if (m_useWebDebugger || m_isFastReloadEnabled) {
967
- // Getting bundle from the packager, so do everything async.
968
- auto instanceWrapper = m_instanceWrapper.LoadWithLock();
969
- instanceWrapper->loadBundle(Mso::Copy(JavaScriptBundleFile()));
970
-
971
- m_jsMessageThread.Load()->runOnQueue(
972
- [weakThis = Mso::WeakPtr{this},
973
- loadCallbackGuard = Mso::MakeMoveOnCopyWrapper(LoadedCallbackGuard{*this})]() noexcept {
974
- if (auto strongThis = weakThis.GetStrongPtr()) {
975
- if (strongThis->State() != ReactInstanceState::HasError) {
976
- strongThis->OnReactInstanceLoaded(Mso::ErrorCode{});
977
- }
978
- }
979
- });
980
- } else {
981
- m_jsMessageThread.Load()->runOnQueue(
982
- [weakThis = Mso::WeakPtr{this},
983
- loadCallbackGuard = Mso::MakeMoveOnCopyWrapper(LoadedCallbackGuard{*this})]() noexcept {
984
- if (auto strongThis = weakThis.GetStrongPtr()) {
985
- auto instance = strongThis->m_instance.LoadWithLock();
986
- auto instanceWrapper = strongThis->m_instanceWrapper.LoadWithLock();
987
- if (!instance || !instanceWrapper) {
988
- return;
989
- }
990
-
991
- try {
992
- instanceWrapper->loadBundleSync(Mso::Copy(strongThis->JavaScriptBundleFile()));
993
- if (strongThis->State() != ReactInstanceState::HasError) {
994
- strongThis->OnReactInstanceLoaded(Mso::ErrorCode{});
995
- }
996
- } catch (...) {
997
- strongThis->OnReactInstanceLoaded(Mso::ExceptionErrorProvider().MakeErrorCode(std::current_exception()));
998
- }
999
- }
1000
- });
1001
- }
1002
- }
1003
-
1004
- #ifdef USE_FABRIC
1005
642
  void ReactInstanceWin::LoadJSBundlesBridgeless(std::shared_ptr<facebook::react::DevSettings> devSettings) noexcept {
1006
643
  if (m_isFastReloadEnabled) {
1007
644
  // Getting bundle from the packager, so do everything async.
@@ -1042,7 +679,6 @@ void ReactInstanceWin::LoadJSBundlesBridgeless(std::shared_ptr<facebook::react::
1042
679
  });
1043
680
  }
1044
681
  }
1045
- #endif
1046
682
 
1047
683
  void ReactInstanceWin::OnReactInstanceLoaded(const Mso::ErrorCode &errorCode) noexcept {
1048
684
  bool isLoadedExpected = false;
@@ -1071,22 +707,6 @@ Mso::Future<void> ReactInstanceWin::Destroy() noexcept {
1071
707
  m_state = ReactInstanceState::Unloaded;
1072
708
  AbandonJSCallQueue();
1073
709
 
1074
- // Make sure that the instance is not destroyed yet
1075
- if (auto instance = m_instance.Exchange(nullptr)) {
1076
- {
1077
- // Release the JSI runtime
1078
- std::scoped_lock lock{m_mutex};
1079
- m_jsiRuntimeHolder = nullptr;
1080
- m_jsiRuntime = nullptr;
1081
- }
1082
- // Release the message queues before the ui manager and instance.
1083
- m_nativeMessageThread.Exchange(nullptr);
1084
- m_jsMessageThread.Exchange(nullptr);
1085
- m_instanceWrapper.Exchange(nullptr);
1086
- m_jsDispatchQueue.Exchange(nullptr);
1087
- }
1088
-
1089
- #ifdef USE_FABRIC
1090
710
  if (m_bridgelessReactInstance) {
1091
711
  if (auto jsMessageThread = m_jsMessageThread.Exchange(nullptr)) {
1092
712
  jsMessageThread->runOnQueueSync([&]() noexcept {
@@ -1114,7 +734,6 @@ Mso::Future<void> ReactInstanceWin::Destroy() noexcept {
1114
734
  });
1115
735
  }
1116
736
  }
1117
- #endif
1118
737
 
1119
738
  return m_whenDestroyedResult;
1120
739
  }
@@ -1127,89 +746,11 @@ ReactInstanceState ReactInstanceWin::State() const noexcept {
1127
746
  return m_state;
1128
747
  }
1129
748
 
1130
- void ReactInstanceWin::InitJSMessageThread() noexcept {
1131
- m_instance.Exchange(std::make_shared<facebook::react::Instance>());
1132
-
1133
- auto callInvoker = m_instance.Load()->getJSCallInvoker();
1134
- auto scheduler = Mso::MakeJSCallInvokerScheduler(
1135
- CreateDispatchQueueSettings(m_reactContext->Notifications()),
1136
- std::shared_ptr<facebook::react::CallInvoker>(callInvoker),
1137
- Mso::MakeWeakMemberFunctor(this, &ReactInstanceWin::OnError),
1138
- Mso::Copy(m_whenDestroyed));
1139
- auto jsDispatchQueue = Mso::DispatchQueue::MakeCustomQueue(Mso::CntPtr(scheduler));
1140
-
1141
- winrt::Microsoft::ReactNative::implementation::CallInvoker::SetProperties(
1142
- ReactPropertyBag(m_options.Properties),
1143
- winrt::make<winrt::Microsoft::ReactNative::implementation::CallInvoker>(
1144
- *m_reactContext, std::shared_ptr<facebook::react::CallInvoker>(callInvoker)));
1145
-
1146
- auto jsDispatcher =
1147
- winrt::make<winrt::Microsoft::ReactNative::implementation::ReactDispatcher>(Mso::Copy(jsDispatchQueue));
1148
- m_options.Properties.Set(ReactDispatcherHelper::JSDispatcherProperty(), jsDispatcher);
1149
-
1150
- m_jsMessageThread.Exchange(qi_cast<Mso::IJSCallInvokerQueueScheduler>(scheduler.Get())->GetMessageQueue());
1151
- m_jsDispatchQueue.Exchange(std::move(jsDispatchQueue));
1152
- }
1153
-
1154
- void ReactInstanceWin::InitNativeMessageThread() noexcept {
1155
- // Native queue was already given us in constructor.
1156
- m_nativeMessageThread.Exchange(
1157
- std::make_shared<MessageDispatchQueue>(Queue(), Mso::MakeWeakMemberFunctor(this, &ReactInstanceWin::OnError)));
1158
- }
1159
-
1160
749
  void ReactInstanceWin::InitUIQueue() noexcept {
1161
750
  m_uiQueue = winrt::Microsoft::ReactNative::implementation::ReactDispatcher::GetUIDispatchQueue2(m_options.Properties);
1162
751
  VerifyElseCrashSz(m_uiQueue, "No UI Dispatcher provided");
1163
752
  }
1164
753
 
1165
- void ReactInstanceWin::InitUIMessageThread() noexcept {
1166
- m_uiMessageThread.Exchange(std::make_shared<MessageDispatchQueue2>(
1167
- *m_uiQueue, Mso::MakeWeakMemberFunctor(this, &ReactInstanceWin::OnError)));
1168
-
1169
- auto batchingUIThread = Microsoft::ReactNative::MakeBatchingQueueThread(m_uiMessageThread.Load());
1170
- m_batchingUIThread = batchingUIThread;
1171
-
1172
- ReactPropertyBag(m_reactContext->Properties())
1173
- .Set(
1174
- winrt::Microsoft::ReactNative::implementation::ReactCoreInjection::PostToUIBatchingQueueProperty(),
1175
- [wkBatchingUIThread = std::weak_ptr<facebook::react::BatchingMessageQueueThread>(batchingUIThread)](
1176
- winrt::Microsoft::ReactNative::ReactDispatcherCallback const &callback) {
1177
- if (auto batchingUIThread = wkBatchingUIThread.lock()) {
1178
- batchingUIThread->runOnQueue(callback);
1179
- }
1180
- });
1181
-
1182
- m_jsDispatchQueue.Load().Post(
1183
- [batchingUIThread, instance = std::weak_ptr<facebook::react::Instance>(m_instance.Load())]() noexcept {
1184
- batchingUIThread->decoratedNativeCallInvokerReady(instance);
1185
- });
1186
- }
1187
-
1188
- #if !defined(CORE_ABI) && !defined(USE_FABRIC)
1189
- void ReactInstanceWin::InitUIManager() noexcept {
1190
- std::vector<std::unique_ptr<Microsoft::ReactNative::IViewManager>> viewManagers;
1191
-
1192
- // Custom view managers
1193
- if (m_options.ViewManagerProvider) {
1194
- viewManagers = m_options.ViewManagerProvider->GetViewManagers(m_reactContext);
1195
- }
1196
-
1197
- Microsoft::ReactNative::AddStandardViewManagers(viewManagers, *m_reactContext);
1198
-
1199
- auto uiManagerSettings = std::make_unique<Microsoft::ReactNative::UIManagerSettings>(
1200
- m_batchingUIThread, m_uiMessageThread.Load(), std::move(viewManagers));
1201
- Microsoft::ReactNative::UIManager::SetSettings(m_reactContext->Properties(), std::move(uiManagerSettings));
1202
-
1203
- m_reactContext->Properties().Set(
1204
- implementation::XamlUIService::XamlUIServiceProperty().Handle(),
1205
- winrt::make<implementation::XamlUIService>(m_reactContext));
1206
-
1207
- m_reactContext->Properties().Set(
1208
- implementation::LayoutService::LayoutServiceProperty().Handle(),
1209
- winrt::make<implementation::LayoutService>(m_reactContext));
1210
- }
1211
- #endif
1212
-
1213
754
  facebook::react::NativeLoggingHook ReactInstanceWin::GetLoggingCallback() noexcept {
1214
755
  if (m_options.OnLogging) {
1215
756
  return [logCallback = m_options.OnLogging](facebook::react::RCTLogLevel logLevel, const char *message) {
@@ -1273,7 +814,6 @@ std::function<void()> ReactInstanceWin::GetLiveReloadCallback() noexcept {
1273
814
 
1274
815
  std::string ReactInstanceWin::GetBytecodeFileName() noexcept {
1275
816
  // use bytecode caching if enabled and not debugging
1276
- // (ChakraCore debugging does not work when bytecode caching is enabled)
1277
817
  // TODO: implement
1278
818
  // bool useByteCode = Mso::React::BytecodeOptimizationEnabled() && !m_options.DeveloperSettings.UseDirectDebugger;
1279
819
  // return useByteCode ? Mso::React::GetBytecodeFilePath(m_options.Identity) : "";
@@ -1304,7 +844,6 @@ void ReactInstanceWin::OnError(const Mso::ErrorCode &errorCode) noexcept {
1304
844
  m_updateUI();
1305
845
  }
1306
846
 
1307
- #ifdef USE_FABRIC
1308
847
  void ReactInstanceWin::OnJSError(
1309
848
  facebook::jsi::Runtime &runtime,
1310
849
  const facebook::react::JsErrorHandler::ProcessedError &error) noexcept {
@@ -1333,7 +872,6 @@ void ReactInstanceWin::OnJSError(
1333
872
 
1334
873
  m_updateUI();
1335
874
  }
1336
- #endif
1337
875
 
1338
876
  void ReactInstanceWin::OnLiveReload() noexcept {
1339
877
  if (auto reactHost = m_weakReactHost.GetStrongPtr()) {
@@ -1341,14 +879,6 @@ void ReactInstanceWin::OnLiveReload() noexcept {
1341
879
  }
1342
880
  }
1343
881
 
1344
- std::function<void()> ReactInstanceWin::GetWaitingForDebuggerCallback() noexcept {
1345
- if (m_useWebDebugger) {
1346
- return Mso::MakeWeakMemberStdFunction(this, &ReactInstanceWin::OnWaitingForDebugger);
1347
- }
1348
-
1349
- return {};
1350
- }
1351
-
1352
882
  void ReactInstanceWin::OnWaitingForDebugger() noexcept {
1353
883
  auto state = m_state.load();
1354
884
  while (state == ReactInstanceState::Loading) {
@@ -1360,14 +890,6 @@ void ReactInstanceWin::OnWaitingForDebugger() noexcept {
1360
890
  m_updateUI();
1361
891
  }
1362
892
 
1363
- std::function<void()> ReactInstanceWin::GetDebuggerAttachCallback() noexcept {
1364
- if (m_useWebDebugger) {
1365
- return Mso::MakeWeakMemberStdFunction(this, &ReactInstanceWin::OnDebuggerAttach);
1366
- }
1367
-
1368
- return {};
1369
- }
1370
-
1371
893
  void ReactInstanceWin::OnDebuggerAttach() noexcept {
1372
894
  m_updateUI();
1373
895
  }
@@ -1386,13 +908,8 @@ void ReactInstanceWin::DrainJSCallQueue() noexcept {
1386
908
  }
1387
909
  }
1388
910
 
1389
- #ifdef USE_FABRIC
1390
911
  if (m_bridgelessReactInstance) {
1391
912
  m_bridgelessReactInstance->callFunctionOnModule(entry.ModuleName, entry.MethodName, std::move(entry.Args));
1392
- } else
1393
- #endif
1394
- if (auto instance = m_instance.LoadWithLock()) {
1395
- instance->callJSFunction(std::move(entry.ModuleName), std::move(entry.MethodName), std::move(entry.Args));
1396
913
  }
1397
914
  }
1398
915
  }
@@ -1425,13 +942,8 @@ void ReactInstanceWin::CallJsFunction(
1425
942
  }
1426
943
 
1427
944
  if (shouldCall) {
1428
- #ifdef USE_FABRIC
1429
945
  if (m_bridgelessReactInstance) {
1430
946
  m_bridgelessReactInstance->callFunctionOnModule(moduleName, method, std::move(params));
1431
- } else
1432
- #endif
1433
- if (auto instance = m_instance.LoadWithLock()) {
1434
- instance->callJSFunction(std::move(moduleName), std::move(method), std::move(params));
1435
947
  }
1436
948
  }
1437
949
  }
@@ -1466,74 +978,10 @@ winrt::Microsoft::ReactNative::JsiRuntime ReactInstanceWin::JsiRuntime() noexcep
1466
978
  }
1467
979
  }
1468
980
 
1469
- std::shared_ptr<facebook::react::Instance> ReactInstanceWin::GetInnerInstance() noexcept {
1470
- return m_instance.LoadWithLock();
1471
- }
1472
-
1473
981
  bool ReactInstanceWin::IsLoaded() const noexcept {
1474
982
  return m_state == ReactInstanceState::Loaded;
1475
983
  }
1476
984
 
1477
- void ReactInstanceWin::AttachMeasuredRootView(
1478
- facebook::react::IReactRootView *rootView,
1479
- const winrt::Microsoft::ReactNative::JSValueArgWriter &initialProps,
1480
- bool useFabric) noexcept {
1481
- if (State() == ReactInstanceState::HasError)
1482
- return;
1483
-
1484
- assert(!useFabric);
1485
- #ifndef CORE_ABI
1486
- if (!useFabric || m_useWebDebugger) {
1487
- int64_t rootTag = -1;
1488
-
1489
- #if !defined(CORE_ABI) && !defined(USE_FABRIC)
1490
- if (auto uiManager = Microsoft::ReactNative::GetNativeUIManager(*m_reactContext).lock()) {
1491
- rootTag = uiManager->AddMeasuredRootView(rootView);
1492
- rootView->SetTag(rootTag);
1493
- } else {
1494
- assert(false);
1495
- }
1496
- #endif
1497
-
1498
- std::string jsMainModuleName = rootView->JSComponentName();
1499
- folly::dynamic params = folly::dynamic::array(
1500
- std::move(jsMainModuleName),
1501
- folly::dynamic::object("initialProps", DynamicWriter::ToDynamic(initialProps))("rootTag", rootTag)(
1502
- "fabric", false));
1503
- CallJsFunction("AppRegistry", "runApplication", std::move(params));
1504
- }
1505
- #endif
1506
- }
1507
-
1508
- void ReactInstanceWin::DetachRootView(facebook::react::IReactRootView *rootView, bool useFabric) noexcept {
1509
- if (State() == ReactInstanceState::HasError)
1510
- return;
1511
-
1512
- auto rootTag = rootView->GetTag();
1513
- folly::dynamic params = folly::dynamic::array(rootTag);
1514
-
1515
- #ifdef USE_FABRIC
1516
- if (useFabric && !m_useWebDebugger) {
1517
- auto uiManager = ::Microsoft::ReactNative::FabricUIManager::FromProperties(
1518
- winrt::Microsoft::ReactNative::ReactPropertyBag(m_reactContext->Properties()));
1519
- uiManager->stopSurface(static_cast<facebook::react::SurfaceId>(rootTag));
1520
- } else
1521
- #endif
1522
- {
1523
- CallJsFunction("AppRegistry", "unmountApplicationComponentAtRootTag", std::move(params));
1524
- }
1525
-
1526
- // QUIRK: Legacy sync behavior can be re-enabled via EnableSyncDetachRootView option
1527
- // The sync call was removed to prevent deadlocks with Hermes GC operations
1528
- bool useSyncCall = winrt::Microsoft::ReactNative::implementation::QuirkSettings::GetUseRunOnQueueSync(
1529
- winrt::Microsoft::ReactNative::ReactPropertyBag(m_reactContext->Properties()));
1530
- if (useSyncCall) {
1531
- // Legacy behavior: wait for JS thread to finish executing (can cause deadlocks)
1532
- m_jsMessageThread.Load()->runOnQueueSync([]() {});
1533
- }
1534
- // Default behavior: no synchronization call to prevent deadlocks
1535
- }
1536
-
1537
985
  Mso::CntPtr<IReactInstanceInternal> MakeReactInstance(
1538
986
  IReactHost &reactHost,
1539
987
  ReactOptions &&options,
@@ -1544,10 +992,6 @@ Mso::CntPtr<IReactInstanceInternal> MakeReactInstance(
1544
992
  reactHost, std::move(options), std::move(whenCreated), std::move(whenLoaded), std::move(updateUI));
1545
993
  }
1546
994
 
1547
- bool ReactInstanceWin::UseWebDebugger() const noexcept {
1548
- return m_useWebDebugger;
1549
- }
1550
-
1551
995
  bool ReactInstanceWin::UseFastRefresh() const noexcept {
1552
996
  return m_isFastReloadEnabled;
1553
997
  }