react-native-windows 0.76.3 → 0.77.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 (369) hide show
  1. package/.flowconfig +5 -1
  2. package/Libraries/ActionSheetIOS/ActionSheetIOS.d.ts +1 -0
  3. package/Libraries/ActionSheetIOS/ActionSheetIOS.js +13 -0
  4. package/Libraries/Animated/AnimatedEvent.js +1 -1
  5. package/Libraries/Animated/AnimatedImplementation.js +2 -2
  6. package/Libraries/Animated/NativeAnimatedAllowlist.js +20 -9
  7. package/Libraries/Animated/NativeAnimatedAllowlist.windows.js +122 -0
  8. package/Libraries/Animated/animations/Animation.js +60 -25
  9. package/Libraries/Animated/animations/DecayAnimation.js +26 -38
  10. package/Libraries/Animated/animations/SpringAnimation.js +33 -39
  11. package/Libraries/Animated/animations/TimingAnimation.js +34 -42
  12. package/Libraries/Animated/components/AnimatedFlatList.js +1 -1
  13. package/Libraries/Animated/components/AnimatedSectionList.js +3 -1
  14. package/Libraries/Animated/createAnimatedComponent.js +60 -33
  15. package/Libraries/Animated/nodes/AnimatedColor.js +1 -1
  16. package/Libraries/Animated/nodes/AnimatedInterpolation.js +1 -1
  17. package/Libraries/Animated/nodes/AnimatedNode.js +39 -45
  18. package/Libraries/Animated/nodes/AnimatedObject.js +13 -3
  19. package/Libraries/Animated/nodes/AnimatedProps.js +96 -46
  20. package/Libraries/Animated/nodes/AnimatedProps.windows.js +281 -0
  21. package/Libraries/Animated/nodes/AnimatedStyle.js +108 -39
  22. package/Libraries/Animated/nodes/AnimatedStyle.windows.js +251 -0
  23. package/Libraries/Animated/nodes/AnimatedTransform.js +56 -23
  24. package/Libraries/Animated/nodes/AnimatedValue.js +1 -1
  25. package/Libraries/Animated/nodes/AnimatedWithChildren.js +1 -3
  26. package/Libraries/Animated/useAnimatedProps.js +41 -35
  27. package/Libraries/Components/AccessibilityInfo/AccessibilityInfo.d.ts +19 -3
  28. package/Libraries/Components/AccessibilityInfo/AccessibilityInfo.js +77 -5
  29. package/Libraries/Components/AccessibilityInfo/AccessibilityInfo.windows.js +82 -5
  30. package/Libraries/Components/ActivityIndicator/ActivityIndicator.js +4 -4
  31. package/Libraries/Components/Button.js +9 -4
  32. package/Libraries/Components/Button.windows.js +19 -5
  33. package/Libraries/Components/DrawerAndroid/DrawerLayoutAndroid.js +3 -1
  34. package/Libraries/Components/Glyph/Glyph.js +2 -1
  35. package/Libraries/Components/Keyboard/KeyboardAvoidingView.js +7 -0
  36. package/Libraries/Components/Popup/PopupNativeComponent.js +0 -1
  37. package/Libraries/Components/Pressable/Pressable.js +4 -4
  38. package/Libraries/Components/Pressable/Pressable.windows.js +10 -4
  39. package/Libraries/Components/ProgressBarAndroid/ProgressBarAndroid.android.js +13 -7
  40. package/Libraries/Components/RefreshControl/__mocks__/RefreshControlMock.js +3 -2
  41. package/Libraries/Components/SafeAreaView/SafeAreaView.js +4 -4
  42. package/Libraries/Components/ScrollView/AndroidHorizontalScrollViewNativeComponent.js +0 -1
  43. package/Libraries/Components/ScrollView/ScrollView.js +49 -88
  44. package/Libraries/Components/ScrollView/ScrollViewCommands.js +1 -1
  45. package/Libraries/Components/ScrollView/ScrollViewContext.js +2 -0
  46. package/Libraries/Components/ScrollView/ScrollViewNativeComponent.js +0 -2
  47. package/Libraries/Components/ScrollView/ScrollViewNativeComponent.windows.js +0 -5
  48. package/Libraries/Components/ScrollView/ScrollViewStickyHeader.js +8 -9
  49. package/Libraries/Components/Switch/Switch.js +8 -6
  50. package/Libraries/Components/Switch/Switch.windows.js +8 -6
  51. package/Libraries/Components/TextInput/InputAccessoryView.js +1 -1
  52. package/Libraries/Components/TextInput/RCTMultilineTextInputNativeComponent.js +4 -4
  53. package/Libraries/Components/TextInput/RCTSingelineTextInputNativeComponent.js +6 -4
  54. package/Libraries/Components/TextInput/RCTTextInputViewConfig.js +2 -1
  55. package/Libraries/Components/TextInput/TextInput.d.ts +27 -4
  56. package/Libraries/Components/TextInput/TextInput.flow.js +36 -19
  57. package/Libraries/Components/TextInput/TextInput.js +37 -13
  58. package/Libraries/Components/TextInput/TextInput.windows.js +47 -16
  59. package/Libraries/Components/TextInput/TextInputState.js +11 -13
  60. package/Libraries/Components/TextInput/TextInputState.windows.js +11 -13
  61. package/Libraries/Components/Touchable/BoundingDimensions.js +11 -3
  62. package/Libraries/Components/Touchable/Position.js +7 -2
  63. package/Libraries/Components/Touchable/Touchable.js +4 -0
  64. package/Libraries/Components/Touchable/Touchable.windows.js +4 -0
  65. package/Libraries/Components/Touchable/TouchableBounce.js +6 -2
  66. package/Libraries/Components/Touchable/TouchableBounce.windows.js +227 -0
  67. package/Libraries/Components/Touchable/TouchableHighlight.js +5 -5
  68. package/Libraries/Components/Touchable/TouchableHighlight.windows.js +5 -5
  69. package/Libraries/Components/Touchable/TouchableNativeFeedback.windows.js +371 -0
  70. package/Libraries/Components/Touchable/TouchableOpacity.js +6 -5
  71. package/Libraries/Components/Touchable/TouchableOpacity.windows.js +11 -5
  72. package/Libraries/Components/Touchable/TouchableWithoutFeedback.js +1 -2
  73. package/Libraries/Components/Touchable/TouchableWithoutFeedback.windows.js +9 -3
  74. package/Libraries/Components/View/ReactNativeStyleAttributes.js +6 -1
  75. package/Libraries/Components/View/View.js +4 -4
  76. package/Libraries/Components/View/View.windows.js +12 -5
  77. package/Libraries/Components/View/ViewAccessibility.d.ts +10 -0
  78. package/Libraries/Components/View/ViewAccessibility.windows.js +2 -0
  79. package/Libraries/Components/View/ViewNativeComponent.js +6 -98
  80. package/Libraries/Components/View/ViewPropTypes.d.ts +7 -0
  81. package/Libraries/Components/View/ViewPropTypes.js +0 -3
  82. package/Libraries/Components/View/ViewPropTypes.windows.js +2 -3
  83. package/Libraries/Core/ExceptionsManager.js +50 -29
  84. package/Libraries/Core/ReactNativeVersion.js +3 -3
  85. package/Libraries/Core/__mocks__/NativeExceptionsManager.js +0 -1
  86. package/Libraries/Core/setUpBatchedBridge.js +1 -10
  87. package/Libraries/Core/setUpDeveloperTools.js +1 -5
  88. package/Libraries/Core/setUpErrorHandling.js +20 -18
  89. package/Libraries/Core/setUpReactDevTools.js +107 -8
  90. package/Libraries/Core/setUpSegmentFetcher.js +1 -0
  91. package/Libraries/Core/setUpTimers.js +21 -18
  92. package/Libraries/Debugging/DebuggingOverlay.js +4 -5
  93. package/Libraries/Image/AssetSourceResolver.js +12 -1
  94. package/Libraries/Image/AssetSourceResolver.windows.js +12 -1
  95. package/Libraries/Image/Image.android.js +1 -5
  96. package/Libraries/Image/Image.d.ts +20 -29
  97. package/Libraries/Image/Image.ios.js +0 -2
  98. package/Libraries/Image/Image.windows.js +5 -1
  99. package/Libraries/Image/ImageBackground.js +2 -5
  100. package/Libraries/Image/ImageProps.js +7 -6
  101. package/Libraries/Image/ImageResizeMode.d.ts +8 -1
  102. package/Libraries/Image/ImageResizeMode.js +4 -1
  103. package/Libraries/Image/ImageSource.d.ts +0 -2
  104. package/Libraries/Image/ImageSource.js +0 -2
  105. package/Libraries/Image/ImageTypes.flow.js +11 -9
  106. package/Libraries/Image/ImageUtils.js +6 -3
  107. package/Libraries/Image/ImageViewNativeComponent.js +5 -3
  108. package/Libraries/Inspector/Inspector.js +1 -0
  109. package/Libraries/Inspector/NetworkOverlay.js +4 -0
  110. package/Libraries/Inspector/ReactDevToolsOverlay.js +8 -14
  111. package/Libraries/Inspector/getInspectorDataForViewAtPoint.js +3 -5
  112. package/Libraries/Interaction/InteractionManager.js +6 -1
  113. package/Libraries/Interaction/InteractionManagerStub.js +176 -0
  114. package/Libraries/Interaction/TouchHistoryMath.js +22 -19
  115. package/Libraries/JSInspector/NetworkAgent.js +1 -1
  116. package/Libraries/Lists/FlatList.d.ts +1 -2
  117. package/Libraries/Lists/FlatList.js +2 -2
  118. package/Libraries/Lists/SectionListModern.js +7 -7
  119. package/Libraries/Lists/__flowtests__/FlatList-flowtest.js +2 -2
  120. package/Libraries/Lists/__flowtests__/SectionList-flowtest.js +1 -1
  121. package/Libraries/LogBox/Data/LogBoxData.js +3 -3
  122. package/Libraries/LogBox/LogBox.js +18 -5
  123. package/Libraries/LogBox/LogBoxInspectorContainer.js +1 -1
  124. package/Libraries/LogBox/LogBoxNotificationContainer.js +2 -2
  125. package/Libraries/LogBox/UI/AnsiHighlight.js +26 -17
  126. package/Libraries/LogBox/UI/LogBoxInspectorCodeFrame.js +6 -1
  127. package/Libraries/LogBox/UI/LogBoxInspectorCodeFrame.windows.js +6 -1
  128. package/Libraries/LogBox/UI/LogBoxInspectorHeader.js +1 -1
  129. package/Libraries/LogBox/UI/LogBoxInspectorHeader.windows.js +1 -1
  130. package/Libraries/LogBox/UI/LogBoxInspectorStackFrames.js +1 -1
  131. package/Libraries/LogBox/UI/LogBoxMessage.js +2 -2
  132. package/Libraries/Modal/Modal.d.ts +12 -0
  133. package/Libraries/Modal/Modal.js +31 -4
  134. package/Libraries/Modal/Modal.windows.js +18 -0
  135. package/Libraries/NativeComponent/BaseViewConfig.android.js +72 -1
  136. package/Libraries/NativeComponent/BaseViewConfig.ios.js +2 -1
  137. package/Libraries/NativeComponent/BaseViewConfig.windows.js +3 -11
  138. package/Libraries/NativeComponent/NativeComponentRegistry.js +3 -3
  139. package/Libraries/NativeComponent/StaticViewConfigValidator.js +0 -1
  140. package/Libraries/Network/XHRInterceptor.js +63 -14
  141. package/Libraries/Network/XMLHttpRequest.js +26 -1
  142. package/Libraries/NewAppScreen/components/HermesBadge.js +1 -1
  143. package/Libraries/PermissionsAndroid/PermissionsAndroid.d.ts +49 -2
  144. package/Libraries/PermissionsAndroid/PermissionsAndroid.js +4 -4
  145. package/Libraries/Pressability/HoverState.js +2 -0
  146. package/Libraries/Pressability/Pressability.js +2 -3
  147. package/Libraries/Pressability/Pressability.windows.js +2 -3
  148. package/Libraries/Pressability/usePressability.js +4 -1
  149. package/Libraries/ReactNative/AppContainer.js +1 -1
  150. package/Libraries/ReactNative/AppRegistry.js +1 -11
  151. package/Libraries/ReactNative/DisplayMode.js +1 -1
  152. package/Libraries/ReactNative/ReactFabricPublicInstance/ReactFabricHostComponent.js +2 -3
  153. package/Libraries/ReactNative/RendererImplementation.js +18 -17
  154. package/Libraries/ReactNative/getCachedComponentWithDebugName.js +1 -3
  155. package/Libraries/ReactNative/renderApplication.js +9 -8
  156. package/Libraries/ReactNative/requireNativeComponent.js +5 -2
  157. package/Libraries/Renderer/shims/ReactFabric.js +3 -3
  158. package/Libraries/Renderer/shims/ReactFeatureFlags.js +2 -2
  159. package/Libraries/Renderer/shims/ReactNative.js +3 -3
  160. package/Libraries/Renderer/shims/ReactNativeTypes.js +22 -35
  161. package/Libraries/Renderer/shims/ReactNativeViewConfigRegistry.js +5 -6
  162. package/Libraries/Renderer/shims/createReactNativeComponentClass.js +2 -2
  163. package/Libraries/StyleSheet/StyleSheet.js +7 -1
  164. package/Libraries/StyleSheet/StyleSheetTypes.d.ts +13 -2
  165. package/Libraries/StyleSheet/StyleSheetTypes.js +24 -6
  166. package/Libraries/StyleSheet/processBackgroundImage.js +87 -110
  167. package/Libraries/StyleSheet/processTransform.js +3 -34
  168. package/Libraries/Text/Text.js +248 -249
  169. package/Libraries/Text/Text.windows.js +298 -292
  170. package/Libraries/Text/TextNativeComponent.js +0 -1
  171. package/Libraries/Text/TextProps.windows.js +2 -0
  172. package/Libraries/TurboModule/TurboModuleRegistry.js +5 -5
  173. package/Libraries/Types/CoreEventTypes.d.ts +3 -10
  174. package/Libraries/Types/CoreEventTypes.js +4 -6
  175. package/Libraries/Types/CoreEventTypes.windows.js +4 -6
  176. package/Libraries/Utilities/Appearance.js +3 -1
  177. package/Libraries/Utilities/BackHandler.android.js +6 -18
  178. package/Libraries/Utilities/BackHandler.d.ts +0 -4
  179. package/Libraries/Utilities/BackHandler.ios.js +0 -7
  180. package/Libraries/Utilities/BackHandler.windows.js +6 -18
  181. package/Libraries/Utilities/HMRClient.js +3 -4
  182. package/Libraries/Utilities/Platform.flow.js +2 -2
  183. package/Libraries/Utilities/Platform.flow.windows.js +3 -2
  184. package/Libraries/Utilities/__mocks__/BackHandler.js +3 -8
  185. package/Libraries/Utilities/codegenNativeComponent.js +1 -1
  186. package/Libraries/Utilities/useMergeRefs.js +26 -7
  187. package/Libraries/WebSocket/WebSocketEvent.js +4 -1
  188. package/Libraries/WebSocket/WebSocketInterceptor.js +31 -13
  189. package/Libraries/__flowtests__/ReactNativeTypes-flowtest.js +6 -5
  190. package/Libraries/promiseRejectionTrackingOptions.js +1 -1
  191. package/Microsoft.ReactNative/AsynchronousEventBeat.cpp +9 -8
  192. package/Microsoft.ReactNative/AsynchronousEventBeat.h +5 -5
  193. package/Microsoft.ReactNative/FBReactNativeSpec/FBReactNativeSpecJSI.h +5 -0
  194. package/Microsoft.ReactNative/Fabric/AbiComponentDescriptor.cpp +2 -2
  195. package/Microsoft.ReactNative/Fabric/Composition/CompositionDynamicAutomationProvider.cpp +197 -18
  196. package/Microsoft.ReactNative/Fabric/Composition/CompositionDynamicAutomationProvider.h +19 -1
  197. package/Microsoft.ReactNative/Fabric/Composition/CompositionViewComponentView.cpp +13 -0
  198. package/Microsoft.ReactNative/Fabric/Composition/ReactNativeIsland.cpp +1 -1
  199. package/Microsoft.ReactNative/Fabric/Composition/TextInput/WindowsTextInputComponentDescriptor.h +6 -8
  200. package/Microsoft.ReactNative/Fabric/Composition/TextInput/WindowsTextInputComponentView.cpp +2 -2
  201. package/Microsoft.ReactNative/Fabric/Composition/TextInput/WindowsTextInputShadowNode.cpp +3 -2
  202. package/Microsoft.ReactNative/Fabric/Composition/TooltipService.cpp +1 -1
  203. package/Microsoft.ReactNative/Fabric/Composition/UiaHelpers.cpp +24 -0
  204. package/Microsoft.ReactNative/Fabric/Composition/UiaHelpers.h +5 -0
  205. package/Microsoft.ReactNative/Fabric/FabricUIManagerModule.cpp +12 -12
  206. package/Microsoft.ReactNative/Fabric/FabricUIManagerModule.h +4 -4
  207. package/Microsoft.ReactNative/Fabric/ImageRequest.cpp +4 -8
  208. package/Microsoft.ReactNative/Fabric/platform/react/renderer/components/view/HostPlatformViewProps.cpp +16 -15
  209. package/Microsoft.ReactNative/Modules/AccessibilityInfoModule.cpp +15 -0
  210. package/Microsoft.ReactNative/Modules/AccessibilityInfoModule.h +9 -0
  211. package/Microsoft.ReactNative/ReactHost/ReactHost.cpp +20 -1
  212. package/Microsoft.ReactNative/ReactHost/ReactInstanceWin.cpp +11 -6
  213. package/Microsoft.ReactNative/ReactHost/ReactInstanceWin.h +1 -1
  214. package/Microsoft.ReactNative/SynchronousEventBeat.cpp +14 -4
  215. package/Microsoft.ReactNative/SynchronousEventBeat.h +4 -2
  216. package/Microsoft.ReactNative.Cxx/ApiLoaders/JSRuntimeApi.cpp +78 -0
  217. package/Microsoft.ReactNative.Cxx/ApiLoaders/JSRuntimeApi.h +51 -0
  218. package/Microsoft.ReactNative.Cxx/ApiLoaders/JSRuntimeApi.inc +48 -0
  219. package/Microsoft.ReactNative.Cxx/ApiLoaders/NodeApi.cpp +41 -0
  220. package/Microsoft.ReactNative.Cxx/ApiLoaders/NodeApi.h +127 -0
  221. package/Microsoft.ReactNative.Cxx/ApiLoaders/NodeApi.inc +125 -0
  222. package/Microsoft.ReactNative.Cxx/ApiLoaders/NodeApi_posix.cpp +16 -0
  223. package/Microsoft.ReactNative.Cxx/ApiLoaders/NodeApi_win.cpp +23 -0
  224. package/Microsoft.ReactNative.Cxx/JSI/decorator.h +834 -0
  225. package/Microsoft.ReactNative.Cxx/JSI/instrumentation.h +117 -0
  226. package/Microsoft.ReactNative.Cxx/JSI/jsi-inl.h +366 -0
  227. package/Microsoft.ReactNative.Cxx/JSI/jsi.cpp +560 -0
  228. package/Microsoft.ReactNative.Cxx/JSI/jsi.h +1611 -0
  229. package/Microsoft.ReactNative.Cxx/JSI/threadsafe.h +79 -0
  230. package/Microsoft.ReactNative.Cxx/Microsoft.ReactNative.Cxx.vcxitems +7 -11
  231. package/Microsoft.ReactNative.Cxx/Microsoft.ReactNative.Cxx.vcxitems.filters +1 -1
  232. package/Microsoft.ReactNative.Cxx/NodeApiJsiRuntime.cpp +2878 -0
  233. package/Microsoft.ReactNative.Cxx/NodeApiJsiRuntime.h +36 -0
  234. package/Microsoft.ReactNative.Cxx/ReactCommon/CallInvoker.h +64 -0
  235. package/Microsoft.ReactNative.Cxx/ReactCommon/SchedulerPriority.h +22 -0
  236. package/{ReactCommon/TEMP_UntilReactCommonUpdate/react/nativemodule/core → Microsoft.ReactNative.Cxx}/ReactCommon/TurboModule.cpp +63 -63
  237. package/Microsoft.ReactNative.Cxx/ReactCommon/TurboModule.h +165 -0
  238. package/Microsoft.ReactNative.Cxx/ReactCommon/TurboModuleUtils.cpp +105 -0
  239. package/{ReactCommon/TEMP_UntilReactCommonUpdate/react/nativemodule/core → Microsoft.ReactNative.Cxx}/ReactCommon/TurboModuleUtils.h +57 -58
  240. package/Microsoft.ReactNative.Cxx/ReactCommon/react/bridging/AString.h +42 -0
  241. package/Microsoft.ReactNative.Cxx/ReactCommon/react/bridging/Array.h +151 -0
  242. package/{ReactCommon/TEMP_UntilReactCommonUpdate → Microsoft.ReactNative.Cxx/ReactCommon}/react/bridging/Base.h +177 -154
  243. package/Microsoft.ReactNative.Cxx/ReactCommon/react/bridging/Bool.h +25 -0
  244. package/Microsoft.ReactNative.Cxx/ReactCommon/react/bridging/Bridging.h +21 -0
  245. package/Microsoft.ReactNative.Cxx/ReactCommon/react/bridging/CallbackWrapper.h +67 -0
  246. package/Microsoft.ReactNative.Cxx/ReactCommon/react/bridging/Class.h +90 -0
  247. package/{ReactCommon/TEMP_UntilReactCommonUpdate → Microsoft.ReactNative.Cxx/ReactCommon}/react/bridging/Convert.h +170 -172
  248. package/Microsoft.ReactNative.Cxx/ReactCommon/react/bridging/Error.h +51 -0
  249. package/{ReactCommon/TEMP_UntilReactCommonUpdate → Microsoft.ReactNative.Cxx/ReactCommon}/react/bridging/EventEmitter.h +134 -136
  250. package/{ReactCommon/TEMP_UntilReactCommonUpdate → Microsoft.ReactNative.Cxx/ReactCommon}/react/bridging/Function.h +283 -283
  251. package/Microsoft.ReactNative.Cxx/ReactCommon/react/bridging/LongLivedObject.cpp +63 -0
  252. package/Microsoft.ReactNative.Cxx/ReactCommon/react/bridging/LongLivedObject.h +61 -0
  253. package/Microsoft.ReactNative.Cxx/ReactCommon/react/bridging/Object.h +93 -0
  254. package/Microsoft.ReactNative.Cxx/ReactCommon/react/bridging/Promise.h +104 -0
  255. package/Microsoft.ReactNative.Cxx/ReactCommon/react/bridging/Value.h +107 -0
  256. package/Microsoft.ReactNative.Cxx/ReactCommon/react/debug/flags.h +22 -0
  257. package/Microsoft.ReactNative.Cxx/ReactCommon/react/debug/react_native_assert.h +72 -0
  258. package/Microsoft.ReactNative.Cxx/node-api/js_native_api.h +553 -0
  259. package/Microsoft.ReactNative.Cxx/node-api/js_native_api_types.h +167 -0
  260. package/Microsoft.ReactNative.Cxx/node-api/js_runtime_api.h +186 -0
  261. package/Microsoft.ReactNative.Cxx/stubs/glog/logging.h +82 -0
  262. package/PropertySheets/Bundle.Common.targets +1 -1
  263. package/PropertySheets/Bundle.props +3 -0
  264. package/PropertySheets/Generated/PackageVersion.g.props +4 -4
  265. package/PropertySheets/ManagedCodeGen/Microsoft.ReactNative.Managed.CodeGen.targets +1 -1
  266. package/PropertySheets/OutputMSBuildProperties.targets +3 -1
  267. package/ReactCommon/ReactCommon.vcxproj +5 -0
  268. package/ReactCommon/TEMP_UntilReactCommonUpdate/cxxreact/JSExecutor.cpp +2 -3
  269. package/ReactCommon/TEMP_UntilReactCommonUpdate/jsi/jsi/test/testlib.cpp +61 -0
  270. package/ReactCommon/TEMP_UntilReactCommonUpdate/react/nativemodule/core/ReactCommon/TurboModule.h +26 -23
  271. package/ReactCommon/TEMP_UntilReactCommonUpdate/react/renderer/componentregistry/ComponentDescriptorRegistry.cpp +150 -0
  272. package/ReactCommon/TEMP_UntilReactCommonUpdate/react/renderer/components/view/AccessibilityPrimitives.h +252 -0
  273. package/ReactCommon/TEMP_UntilReactCommonUpdate/react/renderer/components/view/accessibilityPropsConversions.h +795 -0
  274. package/ReactCommon/TEMP_UntilReactCommonUpdate/react/renderer/runtimescheduler/SchedulerPriorityUtils.h +59 -0
  275. package/ReactCommon/TEMP_UntilReactCommonUpdate/react/runtime/ReactInstance.cpp +188 -39
  276. package/Scripts/Microsoft.ReactNative.Managed.CodeGen.targets +1 -1
  277. package/Scripts/Tfs/Layout-MSRN-Headers.ps1 +97 -62
  278. package/Shared/InspectorPackagerConnection.cpp +3 -6
  279. package/Shared/InspectorPackagerConnection.h +2 -2
  280. package/Shared/InstanceManager.h +1 -1
  281. package/Shared/OInstance.h +1 -1
  282. package/Shared/Shared.vcxitems +17 -2
  283. package/Shared/Shared.vcxitems.filters +3 -1
  284. package/Shared/TurboModuleManager.cpp +29 -4
  285. package/codegen/NativeAccessibilityInfoSpec.g.h +27 -9
  286. package/codegen/NativeAccessibilityManagerSpec.g.h +19 -13
  287. package/codegen/NativeActionSheetManagerSpec.g.h +4 -0
  288. package/codegen/NativeExceptionsManagerSpec.g.h +1 -7
  289. package/codegen/NativeIntersectionObserverSpec.g.h +2 -0
  290. package/codegen/NativePerformanceSpec.g.h +127 -3
  291. package/codegen/NativeReactDevToolsRuntimeSettingsModuleSpec.g.h +67 -0
  292. package/codegen/NativeReactDevToolsSettingsManagerSpec.g.h +41 -0
  293. package/codegen/NativeReactNativeFeatureFlagsSpec.g.h +125 -137
  294. package/codegen/react/components/rnwcore/ComponentDescriptors.h +0 -1
  295. package/codegen/react/components/rnwcore/Props.cpp +1 -0
  296. package/codegen/react/components/rnwcore/Props.h +1 -0
  297. package/codegen/react/components/rnwcore/ShadowNodes.cpp +0 -1
  298. package/codegen/react/components/rnwcore/ShadowNodes.h +0 -11
  299. package/codegen/react/components/rnwcore/States.h +0 -12
  300. package/codegen/rnwcoreJSI-generated.cpp +219 -186
  301. package/codegen/rnwcoreJSI.h +942 -511
  302. package/index.js +10 -3
  303. package/index.windows.js +10 -3
  304. package/jest/setup.js +36 -1
  305. package/just-task.js +15 -0
  306. package/package.json +22 -22
  307. package/src/private/animated/NativeAnimatedHelper.js +18 -16
  308. package/src/private/animated/useAnimatedPropsMemo.js +348 -0
  309. package/src/private/animated/useAnimatedPropsMemo.windows.js +356 -0
  310. package/src/private/components/HScrollViewNativeComponents.js +1 -27
  311. package/src/private/components/SafeAreaView_INTERNAL_DO_NOT_USE.js +11 -8
  312. package/src/private/components/VScrollViewNativeComponents.js +2 -25
  313. package/src/private/debugging/ReactDevToolsSettingsManager.android.js +20 -0
  314. package/src/private/debugging/ReactDevToolsSettingsManager.ios.js +30 -0
  315. package/src/private/debugging/ReactDevToolsSettingsManager.windows.js +20 -0
  316. package/src/private/{fusebox → debugging}/setUpFuseboxReactDevToolsDispatcher.js +6 -0
  317. package/src/private/devmenu/DevMenu.d.ts +20 -0
  318. package/src/private/devmenu/DevMenu.js +31 -0
  319. package/src/private/featureflags/ReactNativeFeatureFlags.js +95 -86
  320. package/src/private/featureflags/ReactNativeFeatureFlagsBase.js +8 -2
  321. package/src/private/featureflags/specs/NativeReactNativeFeatureFlags.js +17 -19
  322. package/src/private/fusebox/specs/NativeReactDevToolsRuntimeSettingsModule.js +34 -0
  323. package/src/private/setup/setUpDOM.js +14 -6
  324. package/src/private/setup/setUpMutationObserver.js +5 -0
  325. package/src/private/specs/components/AndroidHorizontalScrollContentViewNativeComponent.js +1 -0
  326. package/src/private/specs/components/RCTModalHostViewNativeComponent.js +8 -0
  327. package/src/private/specs/modules/NativeAccessibilityInfo.js +9 -0
  328. package/src/private/specs/modules/NativeAccessibilityManager.js +4 -0
  329. package/src/private/specs/modules/NativeActionSheetManager.js +2 -0
  330. package/src/private/specs/modules/NativeAppearance.js +4 -10
  331. package/src/private/specs/modules/NativeExceptionsManager.js +0 -12
  332. package/src/private/specs/modules/{NativeDevToolsSettingsManager.js → NativeReactDevToolsSettingsManager.js} +3 -5
  333. package/src/private/webapis/dom/geometry/DOMRect.js +2 -2
  334. package/src/private/webapis/dom/geometry/DOMRectReadOnly.js +2 -2
  335. package/src/private/webapis/dom/nodes/ReactNativeElement.js +2 -3
  336. package/src/private/webapis/intersectionobserver/IntersectionObserver.js +102 -11
  337. package/src/private/webapis/intersectionobserver/IntersectionObserverEntry.js +26 -0
  338. package/src/private/webapis/intersectionobserver/IntersectionObserverManager.js +1 -0
  339. package/src/private/webapis/intersectionobserver/specs/NativeIntersectionObserver.js +1 -0
  340. package/src/private/webapis/intersectionobserver/specs/__mocks__/NativeIntersectionObserver.js +9 -0
  341. package/src/private/webapis/performance/EventTiming.js +13 -8
  342. package/src/private/webapis/performance/Performance.js +66 -73
  343. package/src/private/webapis/performance/PerformanceEntry.js +2 -5
  344. package/src/private/webapis/performance/PerformanceObserver.js +65 -164
  345. package/src/private/webapis/performance/RawPerformanceEntry.js +1 -1
  346. package/src/private/webapis/performance/UserTiming.js +11 -7
  347. package/src/private/webapis/performance/Utilities.js +18 -0
  348. package/src/private/webapis/performance/specs/NativePerformance.js +71 -2
  349. package/src/private/webapis/performance/specs/__mocks__/NativePerformanceMock.js +267 -0
  350. package/templates/cpp-lib/template.config.js +13 -7
  351. package/templates/templateUtils.js +10 -0
  352. package/types/index.d.ts +1 -1
  353. package/types/public/ReactNativeTypes.d.ts +4 -8
  354. package/Libraries/DevToolsSettings/DevToolsSettingsManager.android.js +0 -35
  355. package/Libraries/DevToolsSettings/DevToolsSettingsManager.d.ts +0 -20
  356. package/Libraries/DevToolsSettings/DevToolsSettingsManager.ios.js +0 -49
  357. package/Libraries/DevToolsSettings/DevToolsSettingsManager.windows.js +0 -35
  358. package/Libraries/DevToolsSettings/NativeDevToolsSettingsManager.js +0 -13
  359. package/Libraries/ReactNative/ReactFabricInternals.js +0 -17
  360. package/ReactCommon/TEMP_UntilReactCommonUpdate/react/bridging/CallbackWrapper.h +0 -101
  361. package/ReactCommon/TEMP_UntilReactCommonUpdate/react/renderer/components/scrollview/ScrollViewProps.cpp +0 -569
  362. package/codegen/NativeDevToolsSettingsManagerSpec.g.h +0 -53
  363. package/codegen/NativePerformanceObserverSpec.g.h +0 -131
  364. package/src/private/components/useSyncOnScroll.js +0 -48
  365. package/src/private/webapis/performance/specs/NativePerformanceObserver.js +0 -61
  366. package/src/private/webapis/performance/specs/__mocks__/NativePerformance.js +0 -67
  367. package/src/private/webapis/performance/specs/__mocks__/NativePerformanceObserver.js +0 -127
  368. package/types/experimental.d.ts +0 -59
  369. /package/src/private/{fusebox → debugging}/FuseboxSessionObserver.js +0 -0
@@ -0,0 +1,59 @@
1
+ /*
2
+ * Copyright (c) Meta Platforms, Inc. and affiliates.
3
+ *
4
+ * This source code is licensed under the MIT license found in the
5
+ * LICENSE file in the root directory of this source tree.
6
+ */
7
+
8
+ #pragma once
9
+
10
+ #include <ReactCommon/SchedulerPriority.h>
11
+ #include <react/debug/react_native_assert.h>
12
+ #include <chrono>
13
+
14
+ namespace facebook::react {
15
+
16
+ static constexpr std::underlying_type<SchedulerPriority>::type serialize(
17
+ SchedulerPriority schedulerPriority) {
18
+ return static_cast<std::underlying_type<SchedulerPriority>::type>(
19
+ schedulerPriority);
20
+ }
21
+
22
+ static inline SchedulerPriority fromRawValue(double value) {
23
+ switch ((int)value) {
24
+ case 1:
25
+ return SchedulerPriority::ImmediatePriority;
26
+ case 2:
27
+ return SchedulerPriority::UserBlockingPriority;
28
+ case 3:
29
+ return SchedulerPriority::NormalPriority;
30
+ case 4:
31
+ return SchedulerPriority::LowPriority;
32
+ case 5:
33
+ return SchedulerPriority::IdlePriority;
34
+ default:
35
+ react_native_assert(false && "Unsupported SchedulerPriority value");
36
+ return SchedulerPriority::NormalPriority;
37
+ }
38
+ }
39
+
40
+ static inline std::chrono::milliseconds timeoutForSchedulerPriority(
41
+ SchedulerPriority schedulerPriority) noexcept {
42
+ switch (schedulerPriority) {
43
+ case SchedulerPriority::ImmediatePriority:
44
+ return std::chrono::milliseconds(0);
45
+ case SchedulerPriority::UserBlockingPriority:
46
+ return std::chrono::milliseconds(250);
47
+ case SchedulerPriority::NormalPriority:
48
+ return std::chrono::seconds(5);
49
+ case SchedulerPriority::LowPriority:
50
+ return std::chrono::seconds(10);
51
+ case SchedulerPriority::IdlePriority:
52
+ return std::chrono::minutes(5);
53
+ default:
54
+ react_native_assert(false && "Unsupported SchedulerPriority value");
55
+ return std::chrono::seconds(5);
56
+ }
57
+ }
58
+
59
+ } // namespace facebook::react
@@ -19,6 +19,7 @@
19
19
  #include <jsinspector-modern/HostTarget.h>
20
20
  #include <jsireact/JSIExecutor.h>
21
21
  #include <react/featureflags/ReactNativeFeatureFlags.h>
22
+ #include <react/renderer/core/ShadowNode.h>
22
23
  #include <react/renderer/runtimescheduler/RuntimeSchedulerBinding.h>
23
24
  #include <react/utils/jsi-utils.h>
24
25
  #include <iostream>
@@ -27,6 +28,24 @@
27
28
 
28
29
  namespace facebook::react {
29
30
 
31
+ namespace {
32
+
33
+ std::shared_ptr<RuntimeScheduler> createRuntimeScheduler(
34
+ RuntimeExecutor runtimeExecutor,
35
+ RuntimeSchedulerTaskErrorHandler taskErrorHandler) {
36
+ std::shared_ptr<RuntimeScheduler> scheduler =
37
+ std::make_shared<RuntimeScheduler>(
38
+ runtimeExecutor, RuntimeSchedulerClock::now, taskErrorHandler);
39
+ scheduler->setPerformanceEntryReporter(
40
+ // FIXME: Move creation of PerformanceEntryReporter to here and
41
+ // guarantee that its lifetime is the same as the runtime.
42
+ PerformanceEntryReporter::getInstance().get());
43
+
44
+ return scheduler;
45
+ }
46
+
47
+ } // namespace
48
+
30
49
  ReactInstance::ReactInstance(
31
50
  std::unique_ptr<JSRuntime> runtime,
32
51
  std::shared_ptr<MessageQueueThread> jsMessageQueueThread,
@@ -74,17 +93,22 @@ ReactInstance::ReactInstance(
74
93
  jsi::Runtime& jsiRuntime = runtime->getRuntime();
75
94
  SystraceSection s("ReactInstance::_runtimeExecutor[Callback]");
76
95
  try {
96
+ ShadowNode::setUseRuntimeShadowNodeReferenceUpdateOnThread(true);
77
97
  callback(jsiRuntime);
78
98
 
79
99
  // If we have first-class support for microtasks,
80
100
  // they would've been called as part of the previous callback.
81
- if (!ReactNativeFeatureFlags::enableMicrotasks()) {
101
+ if (ReactNativeFeatureFlags::disableEventLoopOnBridgeless()) {
82
102
  if (auto timerManager = weakTimerManager.lock()) {
83
103
  timerManager->callReactNativeMicrotasks(jsiRuntime);
84
104
  }
85
105
  }
86
106
  } catch (jsi::JSError& originalError) {
87
- jsErrorHandler->handleFatalError(jsiRuntime, originalError);
107
+ jsErrorHandler->handleError(jsiRuntime, originalError, true);
108
+ } catch (std::exception& ex) {
109
+ jsi::JSError error(
110
+ jsiRuntime, std::string("Non-js exception: ") + ex.what());
111
+ jsErrorHandler->handleError(jsiRuntime, error, true);
88
112
  }
89
113
  });
90
114
  }
@@ -93,13 +117,34 @@ ReactInstance::ReactInstance(
93
117
  if (parentInspectorTarget_) {
94
118
  auto executor = parentInspectorTarget_->executorFromThis();
95
119
 
96
- auto runtimeExecutorThatWaitsForInspectorSetup =
120
+ auto bufferedRuntimeExecutorThatWaitsForInspectorSetup =
97
121
  std::make_shared<BufferedRuntimeExecutor>(runtimeExecutor);
122
+ auto runtimeExecutorThatExecutesAfterInspectorSetup =
123
+ [bufferedRuntimeExecutorThatWaitsForInspectorSetup](
124
+ std::function<void(jsi::Runtime & runtime)>&& callback) {
125
+ bufferedRuntimeExecutorThatWaitsForInspectorSetup->execute(
126
+ std::move(callback));
127
+ };
128
+
129
+ runtimeScheduler_ = createRuntimeScheduler(
130
+ runtimeExecutorThatExecutesAfterInspectorSetup,
131
+ [jsErrorHandler = jsErrorHandler_](
132
+ jsi::Runtime& runtime, jsi::JSError& error) {
133
+ jsErrorHandler->handleError(runtime, error, true);
134
+ });
135
+
136
+ auto runtimeExecutorThatGoesThroughRuntimeScheduler =
137
+ [runtimeScheduler = runtimeScheduler_.get()](
138
+ std::function<void(jsi::Runtime & runtime)>&& callback) {
139
+ runtimeScheduler->scheduleWork(std::move(callback));
140
+ };
98
141
 
99
142
  // This code can execute from any thread, so we need to make sure we set up
100
143
  // the inspector logic in the right one. The callback executes immediately
101
144
  // if we are already in the right thread.
102
- executor([this, runtimeExecutor, runtimeExecutorThatWaitsForInspectorSetup](
145
+ executor([this,
146
+ runtimeExecutorThatGoesThroughRuntimeScheduler,
147
+ bufferedRuntimeExecutorThatWaitsForInspectorSetup](
103
148
  jsinspector_modern::HostTarget& hostTarget) {
104
149
  // Callbacks scheduled through the page target executor are generally
105
150
  // not guaranteed to run (e.g.: if the page target is destroyed)
@@ -110,32 +155,18 @@ ReactInstance::ReactInstance(
110
155
  // creation task to finish before starting the destruction.
111
156
  inspectorTarget_ = &hostTarget.registerInstance(*this);
112
157
  runtimeInspectorTarget_ =
113
- &inspectorTarget_->registerRuntime(*runtime_, runtimeExecutor); // [Windows #13172]
114
- runtimeExecutorThatWaitsForInspectorSetup->flush();
158
+ &inspectorTarget_->registerRuntime(*runtime_, runtimeExecutorThatGoesThroughRuntimeScheduler); // [Windows #13172]
159
+ bufferedRuntimeExecutorThatWaitsForInspectorSetup->flush();
115
160
  });
116
-
117
- // We decorate the runtime executor used everywhere else to wait for the
118
- // inspector to finish its setup.
119
- runtimeExecutor =
120
- [runtimeExecutorThatWaitsForInspectorSetup](
121
- std::function<void(jsi::Runtime & runtime)>&& callback) {
122
- runtimeExecutorThatWaitsForInspectorSetup->execute(
123
- std::move(callback));
124
- };
161
+ } else {
162
+ runtimeScheduler_ = createRuntimeScheduler(
163
+ runtimeExecutor,
164
+ [jsErrorHandler = jsErrorHandler_](
165
+ jsi::Runtime& runtime, jsi::JSError& error) {
166
+ jsErrorHandler->handleError(runtime, error, true);
167
+ });
125
168
  }
126
169
 
127
- runtimeScheduler_ = std::make_shared<RuntimeScheduler>(
128
- runtimeExecutor,
129
- RuntimeSchedulerClock::now,
130
- [jsErrorHandler = jsErrorHandler_](
131
- jsi::Runtime& runtime, jsi::JSError& error) {
132
- jsErrorHandler->handleFatalError(runtime, error);
133
- });
134
- runtimeScheduler_->setPerformanceEntryReporter(
135
- // FIXME: Move creation of PerformanceEntryReporter to here and guarantee
136
- // that its lifetime is the same as the runtime.
137
- PerformanceEntryReporter::getInstance().get());
138
-
139
170
  bufferedRuntimeExecutor_ = std::make_shared<BufferedRuntimeExecutor>(
140
171
  [runtimeScheduler = runtimeScheduler_.get()](
141
172
  std::function<void(jsi::Runtime & runtime)>&& callback) {
@@ -255,6 +286,12 @@ void ReactInstance::callFunctionOnModule(
255
286
  const std::string& moduleName,
256
287
  const std::string& methodName,
257
288
  folly::dynamic&& args) {
289
+ if (bufferedRuntimeExecutor_ == nullptr) {
290
+ LOG(ERROR)
291
+ << "Calling callFunctionOnModule with null BufferedRuntimeExecutor";
292
+ return;
293
+ }
294
+
258
295
  bufferedRuntimeExecutor_->execute([this,
259
296
  moduleName = moduleName,
260
297
  methodName = methodName,
@@ -377,6 +414,73 @@ void ReactInstance::initializeRuntime(
377
414
 
378
415
  defineReactInstanceFlags(runtime, options);
379
416
 
417
+ defineReadOnlyGlobal(
418
+ runtime,
419
+ "RN$useAlwaysAvailableJSErrorHandling",
420
+ jsi::Value(
421
+ ReactNativeFeatureFlags::useAlwaysAvailableJSErrorHandling()));
422
+
423
+ defineReadOnlyGlobal(
424
+ runtime,
425
+ "RN$isRuntimeReady",
426
+ jsi::Function::createFromHostFunction(
427
+ runtime,
428
+ jsi::PropNameID::forAscii(runtime, "isRuntimeReady"),
429
+ 0,
430
+ [jsErrorHandler = jsErrorHandler_](
431
+ jsi::Runtime& /*runtime*/,
432
+ const jsi::Value& /*unused*/,
433
+ const jsi::Value* /*args*/,
434
+ size_t /*count*/) {
435
+ return jsErrorHandler->isRuntimeReady();
436
+ }));
437
+
438
+ defineReadOnlyGlobal(
439
+ runtime,
440
+ "RN$hasHandledFatalException",
441
+ jsi::Function::createFromHostFunction(
442
+ runtime,
443
+ jsi::PropNameID::forAscii(runtime, "hasHandledFatalException"),
444
+ 0,
445
+ [jsErrorHandler = jsErrorHandler_](
446
+ jsi::Runtime& /*runtime*/,
447
+ const jsi::Value& /*unused*/,
448
+ const jsi::Value* /*args*/,
449
+ size_t /*count*/) {
450
+ return jsErrorHandler->hasHandledFatalError();
451
+ }));
452
+
453
+ defineReadOnlyGlobal(
454
+ runtime,
455
+ "RN$notifyOfFatalException",
456
+ jsi::Function::createFromHostFunction(
457
+ runtime,
458
+ jsi::PropNameID::forAscii(runtime, "notifyOfFatalException"),
459
+ 0,
460
+ [jsErrorHandler = jsErrorHandler_](
461
+ jsi::Runtime& /*runtime*/,
462
+ const jsi::Value& /*unused*/,
463
+ const jsi::Value* /*args*/,
464
+ size_t /*count*/) {
465
+ jsErrorHandler->notifyOfFatalError();
466
+ return jsi::Value::undefined();
467
+ }));
468
+
469
+ defineReadOnlyGlobal(
470
+ runtime,
471
+ "RN$inExceptionHandler",
472
+ jsi::Function::createFromHostFunction(
473
+ runtime,
474
+ jsi::PropNameID::forAscii(runtime, "inExceptionHandler"),
475
+ 0,
476
+ [jsErrorHandler = jsErrorHandler_](
477
+ jsi::Runtime& /*runtime*/,
478
+ const jsi::Value& /*unused*/,
479
+ const jsi::Value* /*args*/,
480
+ size_t /*count*/) {
481
+ return jsErrorHandler->inErrorHandler();
482
+ }));
483
+
380
484
  // TODO(T196834299): We should really use a C++ turbomodule for this
381
485
  defineReadOnlyGlobal(
382
486
  runtime,
@@ -384,7 +488,7 @@ void ReactInstance::initializeRuntime(
384
488
  jsi::Function::createFromHostFunction(
385
489
  runtime,
386
490
  jsi::PropNameID::forAscii(runtime, "handleException"),
387
- 2,
491
+ 3,
388
492
  [jsErrorHandler = jsErrorHandler_](
389
493
  jsi::Runtime& runtime,
390
494
  const jsi::Value& /*unused*/,
@@ -393,26 +497,71 @@ void ReactInstance::initializeRuntime(
393
497
  if (count < 2) {
394
498
  throw jsi::JSError(
395
499
  runtime,
396
- "handleException requires 2 arguments: error, isFatal");
500
+ "handleException requires 3 arguments: error, isFatal, logToConsole (optional)");
397
501
  }
398
502
 
399
503
  auto isFatal = isTruthy(runtime, args[1]);
400
- if (jsErrorHandler->isRuntimeReady()) {
401
- if (isFatal) {
402
- jsErrorHandler->notifyOfFatalError();
504
+
505
+ if (!ReactNativeFeatureFlags::
506
+ useAlwaysAvailableJSErrorHandling()) {
507
+ if (jsErrorHandler->isRuntimeReady()) {
508
+ return jsi::Value(false);
403
509
  }
510
+ }
511
+
512
+ auto jsError =
513
+ jsi::JSError(runtime, jsi::Value(runtime, args[0]));
514
+
515
+ if (count == 2) {
516
+ jsErrorHandler->handleError(runtime, jsError, isFatal);
517
+ } else {
518
+ auto logToConsole = isTruthy(runtime, args[2]);
519
+ jsErrorHandler->handleError(
520
+ runtime, jsError, isFatal, logToConsole);
521
+ }
522
+
523
+ return jsi::Value(true);
524
+ }));
404
525
 
405
- return jsi::Value(false);
526
+ defineReadOnlyGlobal(
527
+ runtime,
528
+ "RN$registerExceptionListener",
529
+ jsi::Function::createFromHostFunction(
530
+ runtime,
531
+ jsi::PropNameID::forAscii(runtime, "registerExceptionListener"),
532
+ 1,
533
+ [errorListeners = std::vector<std::shared_ptr<jsi::Function>>(),
534
+ jsErrorHandler = jsErrorHandler_](
535
+ jsi::Runtime& runtime,
536
+ const jsi::Value& /*unused*/,
537
+ const jsi::Value* args,
538
+ size_t count) mutable {
539
+ if (count < 1) {
540
+ throw jsi::JSError(
541
+ runtime,
542
+ "registerExceptionListener: requires 1 argument: fn");
406
543
  }
407
544
 
408
- if (isFatal) {
409
- auto jsError =
410
- jsi::JSError(runtime, jsi::Value(runtime, args[0]));
411
- jsErrorHandler->handleFatalError(runtime, jsError);
412
- return jsi::Value(true);
545
+ if (!args[0].isObject() ||
546
+ !args[0].getObject(runtime).isFunction(runtime)) {
547
+ throw jsi::JSError(
548
+ runtime,
549
+ "registerExceptionListener: The first argument must be a function");
413
550
  }
414
551
 
415
- return jsi::Value(false);
552
+ auto errorListener = std::make_shared<jsi::Function>(
553
+ args[0].getObject(runtime).getFunction(runtime));
554
+ errorListeners.emplace_back(errorListener);
555
+
556
+ jsErrorHandler->registerErrorListener(
557
+ [weakErrorListener = std::weak_ptr<jsi::Function>(
558
+ errorListener)](jsi::Runtime& runtime, jsi::Value data) {
559
+ if (auto strongErrorListener = weakErrorListener.lock()) {
560
+ strongErrorListener->call(runtime, data);
561
+ }
562
+ });
563
+
564
+ return jsi::Value::undefined();
416
565
  }));
417
566
 
418
567
  defineReadOnlyGlobal(
@@ -59,7 +59,7 @@
59
59
  <WriteLinesToFile File="$(_ReactNativeCodeGenResponseFile)" Lines="@(_ReactNativeCodeGenResponseFileLines)" WriteOnlyWhenDifferent="true" Encoding="Unicode"/>
60
60
 
61
61
  <!-- Execute teh code generation /> -->
62
- <Exec Command="$(_ReactNativeCodeGenToolExecutable) @$(_ReactNativeCodeGenResponseFile)" />
62
+ <Exec Command="&quot;$(_ReactNativeCodeGenToolExecutable)&quot; @&quot;$(_ReactNativeCodeGenResponseFile)&quot;" />
63
63
 
64
64
  <ItemGroup>
65
65
  <Compile Include="$(ReactNativeCodeGenFile)"/>
@@ -7,13 +7,17 @@ param(
7
7
  [System.IO.DirectoryInfo] $ReactWindowsRoot = "$SourceRoot\vnext",
8
8
  [System.IO.DirectoryInfo] $ReactNativeRoot = "$SourceRoot\node_modules\react-native",
9
9
  [System.IO.DirectoryInfo] $ReactCommonOverrideRoot = "$ReactWindowsRoot\ReactCommon\TEMP_UntilReactCommonUpdate",
10
- [string[]] $Extensions = ('h', 'hpp')
10
+ [string[]] $Extensions = ('h', 'hpp'),
11
+
12
+ # Just setup the local MS.RN.Cxx folder with files that should be there.
13
+ [switch] $GenerateLocalCxx = $false
11
14
  )
12
15
 
13
16
  Write-Host "Source root: [$SourceRoot]"
14
17
  Write-Host "Destination root: [$TargetRoot]"
15
18
  Write-Host "React Native root: [$ReactNativeRoot]"
16
19
  Write-Host "ReactCommon Override root: [$ReactCommonOverrideRoot]"
20
+ Write-Host "GenerateLocalCxx: [$GenerateLocalCxx]"
17
21
 
18
22
  [xml]$props = gc $PSScriptRoot\..\..\Directory.Build.props
19
23
  [string] $NodeApiJsiCommitHash = $props.Project.PropertyGroup.NodeApiJsiCommitHash;
@@ -32,83 +36,114 @@ if (!(Test-Path $NodeApiJsiRoot)) {
32
36
  Expand-Archive -LiteralPath $NodeApiJsiZip -DestinationPath $NodeApiJsiDest
33
37
  }
34
38
 
35
- md -Force $TargetRoot
39
+ $MSRNCxxTargetRoot = "${TargetRoot}\Microsoft.ReactNative.Cxx"
40
+ if (($GenerateLocalCxx)) {
41
+ $MSRNCxxTargetRoot = "${ReactWindowsRoot}\Microsoft.ReactNative.Cxx"
42
+ }
43
+
44
+ if (!($GenerateLocalCxx)) {
45
+ md -Force $TargetRoot
46
+ }
36
47
 
37
48
  $patterns = $Extensions| ForEach-Object {"*.$_"}
38
49
 
39
50
  # include headers
40
- Copy-Item -Force -Recurse -Path $ReactWindowsRoot\include -Destination $TargetRoot\inc
51
+ if (!($GenerateLocalCxx)) {
52
+ Copy-Item -Force -Recurse -Path $ReactWindowsRoot\include -Destination $TargetRoot\inc
53
+ }
41
54
 
42
55
  # Microsoft.ReactNative.CXX project
43
- Copy-Item -Force -Recurse -Path $ReactWindowsRoot\Microsoft.ReactNative.Cxx -Destination $TargetRoot\
56
+ if (!($GenerateLocalCxx)) {
57
+ Copy-Item -Force -Recurse -Path $ReactWindowsRoot\Microsoft.ReactNative.Cxx -Destination $TargetRoot\
58
+ }
44
59
 
45
60
  # Copy native module spec files
46
- Copy-Item -Force -Recurse -Path $ReactWindowsRoot\codegen -Destination $TargetRoot\inc
61
+ if (!($GenerateLocalCxx)) {
62
+ Copy-Item -Force -Recurse -Path $ReactWindowsRoot\codegen -Destination $TargetRoot\inc
63
+ }
47
64
 
48
65
  # Overwrite temporary ReactCommon files (since this script can runs on a different machine than where ReactCommon was built)
49
66
  Copy-Item -Force -Recurse -Path $ReactCommonOverrideRoot\* -Destination $ReactNativeRoot\ReactCommon\
50
67
 
51
68
  # Microsoft.ReactNative.CXX project JSI files
52
- Copy-Item -Force -Path $NodeApiJsiRoot\jsi\jsi\decorator.h -Destination $TargetRoot\Microsoft.ReactNative.Cxx\jsi\
53
- Copy-Item -Force -Path $NodeApiJsiRoot\jsi\jsi\instrumentation.h -Destination $TargetRoot\Microsoft.ReactNative.Cxx\jsi\
54
- Copy-Item -Force -Path $NodeApiJsiRoot\jsi\jsi\jsi.cpp -Destination $TargetRoot\Microsoft.ReactNative.Cxx\jsi\
55
- Copy-Item -Force -Path $NodeApiJsiRoot\jsi\jsi\jsi.h -Destination $TargetRoot\Microsoft.ReactNative.Cxx\jsi\
56
- Copy-Item -Force -Path $NodeApiJsiRoot\jsi\jsi\jsi-inl.h -Destination $TargetRoot\Microsoft.ReactNative.Cxx\jsi\
57
- Copy-Item -Force -Path $NodeApiJsiRoot\jsi\jsi\threadsafe.h -Destination $TargetRoot\Microsoft.ReactNative.Cxx\jsi\
69
+ Copy-Item -Force -Path $NodeApiJsiRoot\jsi\jsi\decorator.h -Destination $MSRNCxxTargetRoot\jsi\
70
+ Copy-Item -Force -Path $NodeApiJsiRoot\jsi\jsi\instrumentation.h -Destination $MSRNCxxTargetRoot\jsi\
71
+ Copy-Item -Force -Path $NodeApiJsiRoot\jsi\jsi\jsi.cpp -Destination $MSRNCxxTargetRoot\jsi\
72
+ Copy-Item -Force -Path $NodeApiJsiRoot\jsi\jsi\jsi.h -Destination $MSRNCxxTargetRoot\jsi\
73
+ Copy-Item -Force -Path $NodeApiJsiRoot\jsi\jsi\jsi-inl.h -Destination $MSRNCxxTargetRoot\jsi\
74
+ Copy-Item -Force -Path $NodeApiJsiRoot\jsi\jsi\threadsafe.h -Destination $MSRNCxxTargetRoot\jsi\
58
75
 
59
76
  # Microsoft.ReactNative.CXX project Node-API files
60
- New-Item $TargetRoot\Microsoft.ReactNative.Cxx\node-api -ItemType Directory -Force
61
- Copy-Item -Force -Path $NodeApiJsiRoot\node-api\js_native_api.h -Destination $TargetRoot\Microsoft.ReactNative.Cxx\node-api\
62
- Copy-Item -Force -Path $NodeApiJsiRoot\node-api\js_native_api_types.h -Destination $TargetRoot\Microsoft.ReactNative.Cxx\node-api\
63
- Copy-Item -Force -Path $NodeApiJsiRoot\node-api\js_runtime_api.h -Destination $TargetRoot\Microsoft.ReactNative.Cxx\node-api\
77
+ New-Item $MSRNCxxTargetRoot\node-api -ItemType Directory -Force
78
+ Copy-Item -Force -Path $NodeApiJsiRoot\node-api\js_native_api.h -Destination $MSRNCxxTargetRoot\node-api\
79
+ Copy-Item -Force -Path $NodeApiJsiRoot\node-api\js_native_api_types.h -Destination $MSRNCxxTargetRoot\node-api\
80
+ Copy-Item -Force -Path $NodeApiJsiRoot\node-api\js_runtime_api.h -Destination $MSRNCxxTargetRoot\node-api\
64
81
 
65
82
  # Microsoft.ReactNative.CXX project Node-API JSI files
66
- New-Item $TargetRoot\Microsoft.ReactNative.Cxx\ApiLoaders -ItemType Directory -Force
67
- Copy-Item -Force -Path $NodeApiJsiRoot\src\ApiLoaders\JSRuntimeApi.cpp -Destination $TargetRoot\Microsoft.ReactNative.Cxx\ApiLoaders\
68
- Copy-Item -Force -Path $NodeApiJsiRoot\src\ApiLoaders\JSRuntimeApi.h -Destination $TargetRoot\Microsoft.ReactNative.Cxx\ApiLoaders\
69
- Copy-Item -Force -Path $NodeApiJsiRoot\src\ApiLoaders\JSRuntimeApi.inc -Destination $TargetRoot\Microsoft.ReactNative.Cxx\ApiLoaders\
70
- Copy-Item -Force -Path $NodeApiJsiRoot\src\ApiLoaders\NodeApi.cpp -Destination $TargetRoot\Microsoft.ReactNative.Cxx\ApiLoaders\
71
- Copy-Item -Force -Path $NodeApiJsiRoot\src\ApiLoaders\NodeApi.h -Destination $TargetRoot\Microsoft.ReactNative.Cxx\ApiLoaders\
72
- Copy-Item -Force -Path $NodeApiJsiRoot\src\ApiLoaders\NodeApi.inc -Destination $TargetRoot\Microsoft.ReactNative.Cxx\ApiLoaders\
73
- Copy-Item -Force -Path $NodeApiJsiRoot\src\ApiLoaders\NodeApi_posix.cpp -Destination $TargetRoot\Microsoft.ReactNative.Cxx\ApiLoaders\
74
- Copy-Item -Force -Path $NodeApiJsiRoot\src\ApiLoaders\NodeApi_win.cpp -Destination $TargetRoot\Microsoft.ReactNative.Cxx\ApiLoaders\
75
- Copy-Item -Force -Path $NodeApiJsiRoot\src\NodeApiJsiRuntime.cpp -Destination $TargetRoot\Microsoft.ReactNative.Cxx\
76
- Copy-Item -Force -Path $NodeApiJsiRoot\src\NodeApiJsiRuntime.h -Destination $TargetRoot\Microsoft.ReactNative.Cxx\
83
+ New-Item $MSRNCxxTargetRoot\ApiLoaders -ItemType Directory -Force
84
+ Copy-Item -Force -Path $NodeApiJsiRoot\src\ApiLoaders\JSRuntimeApi.cpp -Destination $MSRNCxxTargetRoot\ApiLoaders\
85
+ Copy-Item -Force -Path $NodeApiJsiRoot\src\ApiLoaders\JSRuntimeApi.h -Destination $MSRNCxxTargetRoot\ApiLoaders\
86
+ Copy-Item -Force -Path $NodeApiJsiRoot\src\ApiLoaders\JSRuntimeApi.inc -Destination $MSRNCxxTargetRoot\ApiLoaders\
87
+ Copy-Item -Force -Path $NodeApiJsiRoot\src\ApiLoaders\NodeApi.cpp -Destination $MSRNCxxTargetRoot\ApiLoaders\
88
+ Copy-Item -Force -Path $NodeApiJsiRoot\src\ApiLoaders\NodeApi.h -Destination $MSRNCxxTargetRoot\ApiLoaders\
89
+ Copy-Item -Force -Path $NodeApiJsiRoot\src\ApiLoaders\NodeApi.inc -Destination $MSRNCxxTargetRoot\ApiLoaders\
90
+ Copy-Item -Force -Path $NodeApiJsiRoot\src\ApiLoaders\NodeApi_posix.cpp -Destination $MSRNCxxTargetRoot\ApiLoaders\
91
+ Copy-Item -Force -Path $NodeApiJsiRoot\src\ApiLoaders\NodeApi_win.cpp -Destination $MSRNCxxTargetRoot\ApiLoaders\
92
+ Copy-Item -Force -Path $NodeApiJsiRoot\src\NodeApiJsiRuntime.cpp -Destination $MSRNCxxTargetRoot\
93
+ Copy-Item -Force -Path $NodeApiJsiRoot\src\NodeApiJsiRuntime.h -Destination $MSRNCxxTargetRoot\
77
94
 
78
95
  # Microsoft.ReactNative.CXX project TurboModule files
79
- New-Item -ItemType Directory -Path $TargetRoot\Microsoft.ReactNative.Cxx\ReactCommon -Force
80
- Copy-Item -Force -Path $ReactNativeRoot\ReactCommon\callinvoker\ReactCommon\CallInvoker.h -Destination $TargetRoot\Microsoft.ReactNative.Cxx\ReactCommon\
81
- Copy-Item -Force -Path $ReactNativeRoot\ReactCommon\callinvoker\ReactCommon\SchedulerPriority.h -Destination $TargetRoot\Microsoft.ReactNative.Cxx\ReactCommon\
82
- Copy-Item -Force -Path $ReactNativeRoot\ReactCommon\react\bridging\CallbackWrapper.h -Destination $TargetRoot\Microsoft.ReactNative.Cxx\ReactCommon\
83
- Copy-Item -Force -Path $ReactNativeRoot\ReactCommon\react\bridging\LongLivedObject.cpp -Destination $TargetRoot\Microsoft.ReactNative.Cxx\ReactCommon\
84
- Copy-Item -Force -Path $ReactNativeRoot\ReactCommon\react\bridging\LongLivedObject.h -Destination $TargetRoot\Microsoft.ReactNative.Cxx\ReactCommon\
85
- Copy-Item -Force -Path $ReactNativeRoot\ReactCommon\react\bridging\EventEmitter.h -Destination $TargetRoot\Microsoft.ReactNative.Cxx\ReactCommon\
86
- Copy-Item -Force -Path $ReactNativeRoot\ReactCommon\react\bridging\Function.h -Destination $TargetRoot\Microsoft.ReactNative.Cxx\ReactCommon\
87
- Copy-Item -Force -Path $ReactNativeRoot\ReactCommon\react\bridging\Base.h -Destination $TargetRoot\Microsoft.ReactNative.Cxx\ReactCommon\
88
- Copy-Item -Force -Path $ReactNativeRoot\ReactCommon\react\bridging\Convert.h -Destination $TargetRoot\Microsoft.ReactNative.Cxx\ReactCommon\
89
- Copy-Item -Force -Path $ReactNativeRoot\ReactCommon\react\nativemodule\core\ReactCommon\TurboModule.cpp -Destination $TargetRoot\Microsoft.ReactNative.Cxx\ReactCommon\
90
- Copy-Item -Force -Path $ReactNativeRoot\ReactCommon\react\nativemodule\core\ReactCommon\TurboModule.h -Destination $TargetRoot\Microsoft.ReactNative.Cxx\ReactCommon\
91
- Copy-Item -Force -Path $ReactNativeRoot\ReactCommon\react\nativemodule\core\ReactCommon\TurboModuleUtils.cpp -Destination $TargetRoot\Microsoft.ReactNative.Cxx\ReactCommon\
92
- Copy-Item -Force -Path $ReactNativeRoot\ReactCommon\react\nativemodule\core\ReactCommon\TurboModuleUtils.h -Destination $TargetRoot\Microsoft.ReactNative.Cxx\ReactCommon\
93
-
94
- # NUSPEC
95
- Copy-Item -Force -Path $ReactWindowsRoot\Scripts\*.nuspec -Destination $TargetRoot
96
-
97
- #Copy StripAdditionalPlatformsFromNuspec.ps1 for use by publish task
98
- Copy-Item -Force -Path $ReactWindowsRoot\Scripts\StripAdditionalPlatformsFromNuspec.ps1 -Destination $TargetRoot
99
-
100
- # Microsoft.ReactNative.VersionCheck.targets
101
- Copy-Item -Force -Path $ReactWindowsRoot\Scripts\Microsoft.ReactNative.VersionCheck.targets -Destination $TargetRoot
102
-
103
- # Microsoft.ReactNative.targets
104
- Copy-Item -Force -Path $ReactWindowsRoot\Scripts\Microsoft.ReactNative.targets -Destination $TargetRoot
105
-
106
- # Microsoft.ReactNative.Cxx.targets
107
- Copy-Item -Force -Path $ReactWindowsRoot\Scripts\Microsoft.ReactNative.Cxx.targets -Destination $TargetRoot
108
-
109
- # Microsoft.ReactNative.Managed.targets
110
- Copy-Item -Force -Path $ReactWindowsRoot\Scripts\Microsoft.ReactNative.Managed.targets -Destination $TargetRoot
111
-
112
- # Microsoft.ReactNative.Managed.CodeGen.targets
113
- Copy-Item -Force -Path $ReactWindowsRoot\Scripts\Microsoft.ReactNative.Managed.CodeGen.targets -Destination $TargetRoot
114
-
96
+ New-Item -ItemType Directory -Path $MSRNCxxTargetRoot\ReactCommon -Force
97
+ Copy-Item -Force -Path $ReactNativeRoot\ReactCommon\callinvoker\ReactCommon\CallInvoker.h -Destination $MSRNCxxTargetRoot\ReactCommon\
98
+ Copy-Item -Force -Path $ReactNativeRoot\ReactCommon\callinvoker\ReactCommon\SchedulerPriority.h -Destination $MSRNCxxTargetRoot\ReactCommon\
99
+ New-Item -ItemType Directory -Path $MSRNCxxTargetRoot\ReactCommon\react\bridging -Force
100
+ Copy-Item -Force -Path $ReactNativeRoot\ReactCommon\react\bridging\Array.h -Destination $MSRNCxxTargetRoot\ReactCommon\react\bridging\
101
+ Copy-Item -Force -Path $ReactNativeRoot\ReactCommon\react\bridging\AString.h -Destination $MSRNCxxTargetRoot\ReactCommon\react\bridging\
102
+ Copy-Item -Force -Path $ReactNativeRoot\ReactCommon\react\bridging\Base.h -Destination $MSRNCxxTargetRoot\ReactCommon\react\bridging\
103
+ Copy-Item -Force -Path $ReactNativeRoot\ReactCommon\react\bridging\Bool.h -Destination $MSRNCxxTargetRoot\ReactCommon\react\bridging\
104
+ Copy-Item -Force -Path $ReactNativeRoot\ReactCommon\react\bridging\Bridging.h -Destination $MSRNCxxTargetRoot\ReactCommon\react\bridging\
105
+ Copy-Item -Force -Path $ReactNativeRoot\ReactCommon\react\bridging\CallbackWrapper.h -Destination $MSRNCxxTargetRoot\ReactCommon\react\bridging\
106
+ Copy-Item -Force -Path $ReactNativeRoot\ReactCommon\react\bridging\Class.h -Destination $MSRNCxxTargetRoot\ReactCommon\react\bridging\
107
+ Copy-Item -Force -Path $ReactNativeRoot\ReactCommon\react\bridging\Convert.h -Destination $MSRNCxxTargetRoot\ReactCommon\react\bridging\
108
+ Copy-Item -Force -Path $ReactNativeRoot\ReactCommon\react\bridging\Error.h -Destination $MSRNCxxTargetRoot\ReactCommon\react\bridging\
109
+ Copy-Item -Force -Path $ReactNativeRoot\ReactCommon\react\bridging\EventEmitter.h -Destination $MSRNCxxTargetRoot\ReactCommon\react\bridging\
110
+ Copy-Item -Force -Path $ReactNativeRoot\ReactCommon\react\bridging\Function.h -Destination $MSRNCxxTargetRoot\ReactCommon\react\bridging\
111
+ Copy-Item -Force -Path $ReactNativeRoot\ReactCommon\react\bridging\LongLivedObject.cpp -Destination $MSRNCxxTargetRoot\ReactCommon\react\bridging\
112
+ Copy-Item -Force -Path $ReactNativeRoot\ReactCommon\react\bridging\LongLivedObject.h -Destination $MSRNCxxTargetRoot\ReactCommon\react\bridging\
113
+ Copy-Item -Force -Path $ReactNativeRoot\ReactCommon\react\bridging\Object.h -Destination $MSRNCxxTargetRoot\ReactCommon\react\bridging\
114
+ Copy-Item -Force -Path $ReactNativeRoot\ReactCommon\react\bridging\Promise.h -Destination $MSRNCxxTargetRoot\ReactCommon\react\bridging\
115
+ Copy-Item -Force -Path $ReactNativeRoot\ReactCommon\react\bridging\Value.h -Destination $MSRNCxxTargetRoot\ReactCommon\react\bridging\
116
+ Copy-Item -Force -Path $ReactNativeRoot\ReactCommon\react\nativemodule\core\ReactCommon\TurboModule.cpp -Destination $MSRNCxxTargetRoot\ReactCommon\
117
+ Copy-Item -Force -Path $ReactNativeRoot\ReactCommon\react\nativemodule\core\ReactCommon\TurboModule.h -Destination $MSRNCxxTargetRoot\ReactCommon\
118
+ Copy-Item -Force -Path $ReactNativeRoot\ReactCommon\react\nativemodule\core\ReactCommon\TurboModuleUtils.cpp -Destination $MSRNCxxTargetRoot\ReactCommon\
119
+ Copy-Item -Force -Path $ReactNativeRoot\ReactCommon\react\nativemodule\core\ReactCommon\TurboModuleUtils.h -Destination $MSRNCxxTargetRoot\ReactCommon\
120
+ New-Item -ItemType Directory -Path $MSRNCxxTargetRoot\ReactCommon\react\debug -Force
121
+ Copy-Item -Force -Path $ReactNativeRoot\ReactCommon\react\debug\flags.h -Destination $MSRNCxxTargetRoot\ReactCommon\react\debug\
122
+ Copy-Item -Force -Path $ReactNativeRoot\ReactCommon\react\debug\react_native_assert.h -Destination $MSRNCxxTargetRoot\ReactCommon\react\debug\
123
+ New-Item -ItemType Directory -Path $MSRNCxxTargetRoot\stubs\glog -Force
124
+ Copy-Item -Force -Path $ReactWindowsRoot\stubs\glog\logging.h -Destination $MSRNCxxTargetRoot\stubs\glog\
125
+
126
+ if (!($GenerateLocalCxx)) {
127
+
128
+ # NUSPEC
129
+ Copy-Item -Force -Path $ReactWindowsRoot\Scripts\*.nuspec -Destination $TargetRoot
130
+
131
+ #Copy StripAdditionalPlatformsFromNuspec.ps1 for use by publish task
132
+ Copy-Item -Force -Path $ReactWindowsRoot\Scripts\StripAdditionalPlatformsFromNuspec.ps1 -Destination $TargetRoot
133
+
134
+ # Microsoft.ReactNative.VersionCheck.targets
135
+ Copy-Item -Force -Path $ReactWindowsRoot\Scripts\Microsoft.ReactNative.VersionCheck.targets -Destination $TargetRoot
136
+
137
+ # Microsoft.ReactNative.targets
138
+ Copy-Item -Force -Path $ReactWindowsRoot\Scripts\Microsoft.ReactNative.targets -Destination $TargetRoot
139
+
140
+ # Microsoft.ReactNative.Cxx.targets
141
+ Copy-Item -Force -Path $ReactWindowsRoot\Scripts\Microsoft.ReactNative.Cxx.targets -Destination $TargetRoot
142
+
143
+ # Microsoft.ReactNative.Managed.targets
144
+ Copy-Item -Force -Path $ReactWindowsRoot\Scripts\Microsoft.ReactNative.Managed.targets -Destination $TargetRoot
145
+
146
+ # Microsoft.ReactNative.Managed.CodeGen.targets
147
+ Copy-Item -Force -Path $ReactWindowsRoot\Scripts\Microsoft.ReactNative.Managed.CodeGen.targets -Destination $TargetRoot
148
+
149
+ }
@@ -78,7 +78,7 @@ struct InspectorProtocol {
78
78
  for (const facebook::react::jsinspector_modern::InspectorPage &page : pages) {
79
79
  folly::dynamic pageDyn = folly::dynamic::object;
80
80
  pageDyn["id"] = page.id;
81
- pageDyn["title"] = page.title;
81
+ pageDyn["title"] = page.description;
82
82
  pageDyn["vm"] = page.vm;
83
83
 
84
84
  pageDyn["isLastBundleDownloadSuccess"] = bundleStatus.m_isLastDownloadSuccess;
@@ -148,17 +148,14 @@ InspectorPackagerConnection::InspectorPackagerConnection(
148
148
  winrt::fire_and_forget InspectorPackagerConnection::disconnectAsync() {
149
149
  co_await winrt::resume_background();
150
150
  std::string reason("Explicit close");
151
- m_packagerWebSocketConnection->Close(
152
- Microsoft::React::Networking::WinRTWebSocketResource::CloseCode::GoingAway, reason);
151
+ m_packagerWebSocketConnection->Close(Microsoft::React::Networking::IWebSocketResource::CloseCode::GoingAway, reason);
153
152
  co_return;
154
153
  }
155
154
 
156
155
  winrt::fire_and_forget InspectorPackagerConnection::connectAsync() {
157
156
  co_await winrt::resume_background();
158
157
 
159
- std::vector<winrt::Windows::Security::Cryptography::Certificates::ChainValidationResult> certExceptions;
160
- m_packagerWebSocketConnection =
161
- std::make_shared<Microsoft::React::Networking::WinRTWebSocketResource>(std::move(certExceptions));
158
+ m_packagerWebSocketConnection = Microsoft::React::Networking::IWebSocketResource::Make();
162
159
 
163
160
  m_packagerWebSocketConnection->SetOnError([](const Microsoft::React::Networking::IWebSocketResource::Error &err) {
164
161
  facebook::react::tracing::error(err.Message.c_str());
@@ -3,7 +3,7 @@
3
3
 
4
4
  #pragma once
5
5
 
6
- #include <Networking/WinRTWebSocketResource.h>
6
+ #include <Networking/IWebSocketResource.h>
7
7
  #include <jsinspector-modern/InspectorInterfaces.h>
8
8
 
9
9
  namespace Microsoft::ReactNative {
@@ -42,7 +42,7 @@ class InspectorPackagerConnection final : public std::enable_shared_from_this<In
42
42
  private:
43
43
  std::unordered_map<int32_t, std::unique_ptr<facebook::react::jsinspector_modern::ILocalConnection>>
44
44
  m_localConnections;
45
- std::shared_ptr<Microsoft::React::Networking::WinRTWebSocketResource> m_packagerWebSocketConnection;
45
+ std::shared_ptr<Microsoft::React::Networking::IWebSocketResource> m_packagerWebSocketConnection;
46
46
  std::shared_ptr<IBundleStatusProvider> m_bundleStatusProvider;
47
47
  std::string m_url;
48
48
  };
@@ -4,9 +4,9 @@
4
4
  #pragma once
5
5
 
6
6
  #include <Logging.h>
7
- #include <ReactCommon/LongLivedObject.h>
8
7
  #include <cxxreact/CxxModule.h>
9
8
  #include <cxxreact/JSBigString.h>
9
+ #include <react/bridging/LongLivedObject.h>
10
10
  #include <map>
11
11
  #include <memory>
12
12
  #include <string>
@@ -10,8 +10,8 @@
10
10
  #include "InstanceManager.h"
11
11
 
12
12
  // React Native
13
- #include <ReactCommon/LongLivedObject.h>
14
13
  #include <cxxreact/Instance.h>
14
+ #include <react/bridging/LongLivedObject.h>
15
15
  #include <react/renderer/runtimescheduler/RuntimeScheduler.h>
16
16
 
17
17
  // Standard Library