react-native-windows 0.72.14 → 0.73.0-preview.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (587) hide show
  1. package/.flowconfig +16 -5
  2. package/Chakra/ChakraHelpers.cpp +1 -1
  3. package/Chakra/ChakraUtils.cpp +1 -1
  4. package/Chakra/ChakraValue.h +1 -1
  5. package/Common/packages.lock.json +13 -0
  6. package/Directory.Build.props +6 -2
  7. package/Folly/TEMP_UntilFollyUpdate/dynamic-inl.h +1 -10
  8. package/Folly/TEMP_UntilFollyUpdate/hash/Hash.h +1016 -0
  9. package/Folly/TEMP_UntilFollyUpdate/lang/ToAscii.h +1 -1
  10. package/Folly/cgmanifest.json +1 -1
  11. package/Folly/packages.lock.json +23 -0
  12. package/Libraries/Animated/Animated.js +1 -1
  13. package/Libraries/Animated/AnimatedImplementation.js +1 -1
  14. package/Libraries/Animated/NativeAnimatedHelper.js +14 -10
  15. package/Libraries/Animated/NativeAnimatedModule.js +6 -2
  16. package/Libraries/Animated/NativeAnimatedTurboModule.js +7 -4
  17. package/Libraries/Animated/animations/Animation.js +57 -3
  18. package/Libraries/Animated/animations/DecayAnimation.js +9 -0
  19. package/Libraries/Animated/animations/SpringAnimation.js +8 -0
  20. package/Libraries/Animated/animations/TimingAnimation.js +8 -0
  21. package/Libraries/Animated/components/AnimatedFlatList.js +2 -1
  22. package/Libraries/Animated/components/AnimatedScrollView.js +2 -0
  23. package/Libraries/Animated/components/AnimatedSectionList.js +2 -1
  24. package/Libraries/Animated/createAnimatedComponent.js +1 -0
  25. package/Libraries/Animated/nodes/AnimatedColor.js +1 -1
  26. package/Libraries/Animated/nodes/AnimatedObject.js +146 -0
  27. package/Libraries/Animated/nodes/AnimatedProps.js +19 -7
  28. package/Libraries/Animated/nodes/AnimatedStyle.js +29 -55
  29. package/Libraries/Animated/nodes/AnimatedValueXY.js +3 -17
  30. package/Libraries/Animated/shouldUseTurboAnimatedModule.js +17 -0
  31. package/Libraries/Animated/useAnimatedProps.js +9 -10
  32. package/Libraries/AppState/AppState.d.ts +1 -1
  33. package/Libraries/AppState/NativeAppState.js +8 -4
  34. package/Libraries/AppTheme/AppTheme.js +5 -5
  35. package/Libraries/BatchedBridge/MessageQueue.js +45 -36
  36. package/Libraries/Blob/Blob.js +6 -2
  37. package/Libraries/Blob/BlobManager.js +9 -10
  38. package/Libraries/Blob/BlobRegistry.js +14 -9
  39. package/Libraries/Blob/File.js +1 -1
  40. package/Libraries/Blob/FileReader.js +1 -2
  41. package/Libraries/Components/Clipboard/Clipboard.d.ts +4 -4
  42. package/Libraries/Components/DrawerAndroid/DrawerLayoutAndroid.android.js +3 -1
  43. package/Libraries/Components/Glyph/Glyph.js +1 -1
  44. package/Libraries/Components/Keyboard/KeyboardAvoidingView.js +26 -6
  45. package/Libraries/Components/Keyboard/KeyboardExt.d.ts +4 -1
  46. package/Libraries/Components/Keyboard/KeyboardExt.js +3 -0
  47. package/Libraries/Components/Keyboard/KeyboardExt.js.map +1 -1
  48. package/Libraries/Components/Keyboard/KeyboardExtProps.d.ts +4 -29
  49. package/Libraries/Components/Keyboard/KeyboardExtProps.js +0 -17
  50. package/Libraries/Components/Keyboard/KeyboardExtProps.js.map +1 -1
  51. package/Libraries/Components/Pressable/Pressable.js +3 -2
  52. package/Libraries/Components/Pressable/Pressable.windows.js +4 -3
  53. package/Libraries/Components/Pressable/useAndroidRippleForView.js +1 -1
  54. package/Libraries/Components/ProgressBarAndroid/ProgressBarAndroid.js +20 -0
  55. package/Libraries/Components/ProgressBarAndroid/ProgressBarAndroid.windows.js +7 -1
  56. package/Libraries/Components/SafeAreaView/SafeAreaView.js +7 -7
  57. package/Libraries/Components/SafeAreaView/SafeAreaView.windows.js +7 -10
  58. package/Libraries/Components/ScrollView/ScrollView.js +3 -1
  59. package/Libraries/Components/ScrollView/ScrollView.windows.js +3 -1
  60. package/Libraries/Components/ScrollView/ScrollViewStickyHeader.js +39 -46
  61. package/Libraries/Components/Switch/Switch.js +1 -0
  62. package/Libraries/Components/Switch/Switch.windows.js +259 -0
  63. package/Libraries/Components/TextInput/RCTTextInputViewConfig.js +1 -0
  64. package/Libraries/Components/TextInput/TextInput.d.ts +49 -7
  65. package/Libraries/Components/TextInput/TextInput.flow.js +43 -10
  66. package/Libraries/Components/TextInput/TextInput.js +62 -10
  67. package/Libraries/Components/TextInput/TextInput.windows.js +100 -14
  68. package/Libraries/Components/ToastAndroid/{ToastAndroid.ios.js → ToastAndroid.js} +9 -1
  69. package/Libraries/Components/ToastAndroid/ToastAndroid.windows.js +9 -1
  70. package/Libraries/Components/Touchable/TouchableBounce.js +1 -1
  71. package/Libraries/Components/Touchable/TouchableHighlight.js +1 -1
  72. package/Libraries/Components/Touchable/TouchableHighlight.windows.js +1 -1
  73. package/Libraries/Components/Touchable/TouchableNativeFeedback.js +1 -1
  74. package/Libraries/Components/Touchable/TouchableOpacity.js +4 -1
  75. package/Libraries/Components/Touchable/TouchableOpacity.windows.js +4 -1
  76. package/Libraries/Components/Touchable/TouchableWithoutFeedback.js +1 -0
  77. package/Libraries/Components/Touchable/TouchableWithoutFeedback.windows.js +1 -0
  78. package/Libraries/Components/TraceUpdateOverlay/TraceUpdateOverlay.js +16 -6
  79. package/Libraries/Components/View/ReactNativeStyleAttributes.js +9 -0
  80. package/Libraries/Components/View/ReactNativeViewAttributes.js +1 -0
  81. package/Libraries/Components/View/ReactNativeViewAttributes.windows.js +1 -0
  82. package/Libraries/Components/View/View.js +46 -32
  83. package/Libraries/Components/View/View.windows.js +23 -7
  84. package/Libraries/Components/View/ViewAccessibility.d.ts +27 -1
  85. package/Libraries/Components/View/ViewAccessibility.windows.js +3 -0
  86. package/Libraries/Components/View/ViewNativeComponent.js +1 -0
  87. package/Libraries/Components/View/ViewPropTypes.d.ts +104 -1
  88. package/Libraries/Components/View/ViewPropTypes.js +18 -3
  89. package/Libraries/Components/View/ViewPropTypes.windows.js +33 -3
  90. package/Libraries/Core/Devtools/loadBundleFromServer.js +152 -0
  91. package/Libraries/Core/Devtools/symbolicateStackTrace.js +2 -1
  92. package/Libraries/Core/ExceptionsManager.js +16 -7
  93. package/Libraries/Core/ExtendedError.js +12 -0
  94. package/Libraries/Core/ReactNativeVersion.js +3 -3
  95. package/Libraries/Core/ReactNativeVersionCheck.js +0 -2
  96. package/Libraries/Core/__mocks__/NativeExceptionsManager.js +20 -0
  97. package/Libraries/Core/setUpDeveloperTools.js +5 -1
  98. package/Libraries/Core/setUpIntersectionObserver.js +16 -0
  99. package/Libraries/Core/setUpMutationObserver.js +16 -0
  100. package/Libraries/Core/setUpPerformance.js +6 -13
  101. package/Libraries/Core/setUpPerformanceObserver.js +16 -0
  102. package/Libraries/Core/setUpRegeneratorRuntime.js +4 -2
  103. package/Libraries/DOM/Nodes/ReactNativeElement.js +135 -18
  104. package/Libraries/DOM/Nodes/ReadOnlyCharacterData.js +72 -0
  105. package/Libraries/DOM/Nodes/ReadOnlyElement.js +209 -21
  106. package/Libraries/DOM/Nodes/ReadOnlyNode.js +206 -17
  107. package/Libraries/DOM/Nodes/ReadOnlyText.js +30 -0
  108. package/Libraries/DOM/Nodes/Utilities/Traversal.js +54 -0
  109. package/Libraries/EventEmitter/NativeEventEmitter.d.ts +0 -6
  110. package/Libraries/EventEmitter/RCTDeviceEventEmitter.js +15 -4
  111. package/Libraries/Image/Image.android.js +8 -2
  112. package/Libraries/Image/Image.d.ts +1 -1
  113. package/Libraries/Image/Image.ios.js +4 -1
  114. package/Libraries/Image/Image.windows.js +6 -3
  115. package/Libraries/Image/ImageBackground.js +3 -0
  116. package/Libraries/Inspector/DevtoolsOverlay.js +6 -3
  117. package/Libraries/Inspector/NetworkOverlay.js +2 -2
  118. package/Libraries/Interaction/JSEventLoopWatchdog.js +1 -5
  119. package/Libraries/Interaction/PanResponder.js +1 -4
  120. package/Libraries/IntersectionObserver/IntersectionObserver.js +252 -0
  121. package/Libraries/IntersectionObserver/IntersectionObserverEntry.js +140 -0
  122. package/Libraries/IntersectionObserver/IntersectionObserverManager.js +221 -0
  123. package/Libraries/IntersectionObserver/NativeIntersectionObserver.js +41 -0
  124. package/Libraries/IntersectionObserver/__mocks__/NativeIntersectionObserver.js +162 -0
  125. package/Libraries/LayoutAnimation/LayoutAnimation.js +1 -1
  126. package/Libraries/Lists/FlatList.d.ts +2 -1
  127. package/Libraries/Lists/FlatList.js +15 -5
  128. package/Libraries/Lists/SectionList.js +4 -0
  129. package/Libraries/LogBox/Data/LogBoxLog.js +4 -1
  130. package/Libraries/LogBox/Data/LogBoxSymbolication.js +5 -2
  131. package/Libraries/LogBox/Data/parseLogBoxLog.js +57 -20
  132. package/Libraries/LogBox/UI/AnsiHighlight.js +1 -1
  133. package/Libraries/LogBox/UI/LogBoxInspectorFooter.js +24 -31
  134. package/Libraries/LogBox/UI/LogBoxInspectorHeader.js +1 -1
  135. package/Libraries/LogBox/UI/LogBoxMessage.js +4 -7
  136. package/Libraries/MutationObserver/MutationObserver.js +184 -0
  137. package/Libraries/MutationObserver/MutationObserverManager.js +218 -0
  138. package/Libraries/MutationObserver/MutationRecord.js +82 -0
  139. package/Libraries/MutationObserver/NativeMutationObserver.js +58 -0
  140. package/Libraries/MutationObserver/__mocks__/NativeMutationObserver.js +327 -0
  141. package/Libraries/NativeComponent/BaseViewConfig.android.js +18 -3
  142. package/Libraries/NativeComponent/BaseViewConfig.ios.js +33 -0
  143. package/Libraries/NativeComponent/BaseViewConfig.windows.js +34 -4
  144. package/Libraries/NativeComponent/NativeComponentRegistry.js +3 -5
  145. package/Libraries/NativeModules/specs/NativeSourceCode.js +6 -6
  146. package/Libraries/Network/RCTNetworking.android.js +2 -1
  147. package/Libraries/Network/XMLHttpRequest.js +1 -1
  148. package/Libraries/NewAppScreen/components/DebugInstructions.js +4 -4
  149. package/Libraries/NewAppScreen/components/DebugInstructions.windows.js +2 -2
  150. package/Libraries/NewAppScreen/components/LearnMoreLinks.js +9 -2
  151. package/Libraries/Performance/QuickPerformanceLogger.js +1 -1
  152. package/Libraries/PermissionsAndroid/NativePermissionsAndroid.js +1 -0
  153. package/Libraries/PermissionsAndroid/PermissionsAndroid.d.ts +1 -0
  154. package/Libraries/PermissionsAndroid/PermissionsAndroid.js +3 -1
  155. package/Libraries/Pressability/Pressability.js +28 -3
  156. package/Libraries/Pressability/Pressability.windows.js +30 -5
  157. package/Libraries/ReactNative/AppContainer.js +2 -3
  158. package/Libraries/ReactNative/AppRegistry.d.ts +0 -5
  159. package/Libraries/ReactNative/AppRegistry.js +66 -53
  160. package/Libraries/ReactNative/BridgelessUIManager.js +38 -9
  161. package/Libraries/ReactNative/FabricUIManager.js +143 -34
  162. package/Libraries/ReactNative/I18nManager.js +5 -11
  163. package/Libraries/ReactNative/NativeI18nManager.js +7 -5
  164. package/Libraries/ReactNative/PaperUIManager.windows.js +2 -2
  165. package/Libraries/ReactNative/ReactFabricPublicInstance/ReactFabricHostComponent.js +151 -0
  166. package/Libraries/ReactNative/ReactFabricPublicInstance/ReactFabricPublicInstance.js +81 -0
  167. package/Libraries/ReactNative/ReactFabricPublicInstance/ReactNativeAttributePayload.js +492 -0
  168. package/Libraries/ReactNative/ReactFabricPublicInstance/warnForStyleProps.js +32 -0
  169. package/Libraries/ReactNative/ReactNativeFeatureFlags.js +19 -3
  170. package/Libraries/ReactNative/UIManager.js +8 -0
  171. package/Libraries/ReactNative/__mocks__/FabricUIManager.js +648 -0
  172. package/Libraries/ReactPrivate/ReactNativePrivateInterface.js +38 -2
  173. package/Libraries/Renderer/implementations/ReactFabric-dev.js +27 -27
  174. package/Libraries/Renderer/implementations/ReactFabric-prod.js +3 -3
  175. package/Libraries/Renderer/implementations/ReactFabric-profiling.js +3 -3
  176. package/Libraries/Renderer/implementations/ReactNativeRenderer-dev.js +27 -27
  177. package/Libraries/Renderer/implementations/ReactNativeRenderer-prod.js +3 -3
  178. package/Libraries/Renderer/implementations/ReactNativeRenderer-profiling.js +3 -3
  179. package/Libraries/Renderer/shims/ReactFabric.js +5 -6
  180. package/Libraries/Renderer/shims/ReactFeatureFlags.js +2 -3
  181. package/Libraries/Renderer/shims/ReactNative.js +2 -3
  182. package/Libraries/Renderer/shims/ReactNativeTypes.js +35 -17
  183. package/Libraries/Renderer/shims/ReactNativeViewConfigRegistry.js +3 -3
  184. package/Libraries/Renderer/shims/createReactNativeComponentClass.js +2 -3
  185. package/Libraries/Settings/{Settings.android.js → Settings.js} +4 -4
  186. package/Libraries/Share/Share.d.ts +3 -9
  187. package/Libraries/StyleSheet/PlatformColorValueTypes.android.js +9 -4
  188. package/Libraries/StyleSheet/PlatformColorValueTypes.ios.js +28 -13
  189. package/Libraries/StyleSheet/PlatformColorValueTypes.windows.js +10 -6
  190. package/Libraries/StyleSheet/PlatformColorValueTypesIOS.ios.js +1 -1
  191. package/Libraries/StyleSheet/StyleSheet.d.ts +10 -1
  192. package/Libraries/StyleSheet/StyleSheet.js +3 -0
  193. package/Libraries/StyleSheet/StyleSheetTypes.d.ts +31 -17
  194. package/Libraries/StyleSheet/StyleSheetTypes.js +90 -6
  195. package/Libraries/StyleSheet/flattenStyle.js +4 -0
  196. package/Libraries/StyleSheet/private/_TransformStyle.js +16 -2
  197. package/Libraries/StyleSheet/processColor.js +1 -2
  198. package/Libraries/StyleSheet/processTransformOrigin.js +136 -0
  199. package/Libraries/StyleSheet/splitLayoutProps.js +1 -0
  200. package/Libraries/Text/Text.d.ts +5 -5
  201. package/Libraries/Text/Text.js +17 -10
  202. package/Libraries/Text/Text.windows.js +53 -20
  203. package/Libraries/Text/TextProps.windows.js +275 -0
  204. package/Libraries/TurboModule/TurboModuleRegistry.js +47 -7
  205. package/Libraries/TurboModule/samples/NativeSampleTurboModule.js +6 -0
  206. package/Libraries/Types/CoreEventTypes.d.ts +5 -2
  207. package/Libraries/Utilities/GlobalPerformanceLogger.js +2 -12
  208. package/Libraries/Utilities/NativeDeviceInfo.js +8 -9
  209. package/Libraries/Utilities/NativePlatformConstantsAndroid.js +23 -18
  210. package/Libraries/Utilities/NativePlatformConstantsIOS.js +16 -13
  211. package/Libraries/Utilities/NativePlatformConstantsWin.js +13 -10
  212. package/Libraries/Utilities/PerformanceLoggerContext.js +1 -1
  213. package/Libraries/Utilities/Platform.android.js +12 -8
  214. package/Libraries/Utilities/Platform.d.ts +1 -0
  215. package/Libraries/Utilities/Platform.flow.js +84 -0
  216. package/Libraries/Utilities/Platform.flow.windows.js +111 -0
  217. package/Libraries/Utilities/Platform.ios.js +12 -8
  218. package/Libraries/Utilities/Platform.windows.js +12 -8
  219. package/Libraries/Utilities/PolyfillFunctions.js +1 -1
  220. package/Libraries/Utilities/ReactNativeTestTools.js +1 -2
  221. package/Libraries/Utilities/SceneTracker.js +1 -1
  222. package/Libraries/Utilities/createPerformanceLogger.js +63 -32
  223. package/Libraries/Utilities/useColorScheme.js +7 -8
  224. package/Libraries/WebPerformance/MemoryInfo.js +1 -1
  225. package/Libraries/WebPerformance/NativePerformance.js +3 -8
  226. package/Libraries/WebPerformance/NativePerformanceObserver.js +4 -0
  227. package/Libraries/WebPerformance/Performance.js +42 -15
  228. package/Libraries/WebPerformance/PerformanceEntry.js +14 -6
  229. package/Libraries/WebPerformance/PerformanceEventTiming.js +18 -1
  230. package/Libraries/WebPerformance/ReactNativeStartupTiming.js +40 -14
  231. package/Libraries/WebPerformance/__mocks__/NativePerformance.js +4 -2
  232. package/Libraries/WebPerformance/__mocks__/NativePerformanceObserver.js +21 -3
  233. package/Libraries/__tests__/ViewWindows-test.js +3 -3
  234. package/Libraries/platform-types.d.ts +6 -2
  235. package/Libraries/promiseRejectionTrackingOptions.js +1 -3
  236. package/Libraries/vendor/emitter/EventEmitter.js +17 -17
  237. package/Microsoft.ReactNative/Composition.Input.idl +103 -0
  238. package/Microsoft.ReactNative/CompositionContext.idl +31 -8
  239. package/Microsoft.ReactNative/CompositionRootView.idl +8 -4
  240. package/Microsoft.ReactNative/CompositionSwitcher.idl +28 -17
  241. package/Microsoft.ReactNative/Fabric/AbiViewComponentDescriptor.cpp +15 -28
  242. package/Microsoft.ReactNative/Fabric/AbiViewComponentDescriptor.h +7 -10
  243. package/Microsoft.ReactNative/Fabric/ComponentView.h +42 -4
  244. package/Microsoft.ReactNative/Fabric/Composition/AbiCompositionViewComponentView.cpp +57 -4
  245. package/Microsoft.ReactNative/Fabric/Composition/AbiCompositionViewComponentView.h +22 -1
  246. package/Microsoft.ReactNative/Fabric/Composition/ActivityIndicatorComponentView.cpp +137 -0
  247. package/Microsoft.ReactNative/Fabric/Composition/ActivityIndicatorComponentView.h +59 -0
  248. package/Microsoft.ReactNative/Fabric/Composition/ComponentViewRegistry.cpp +8 -2
  249. package/Microsoft.ReactNative/Fabric/Composition/Composition.Input.cpp +575 -0
  250. package/Microsoft.ReactNative/Fabric/Composition/Composition.Input.h +170 -0
  251. package/Microsoft.ReactNative/Fabric/Composition/CompositionContextHelper.cpp +890 -226
  252. package/Microsoft.ReactNative/Fabric/Composition/CompositionContextHelper.h +38 -6
  253. package/Microsoft.ReactNative/Fabric/Composition/CompositionContextHelper_emptyimpl.cpp +79 -0
  254. package/Microsoft.ReactNative/Fabric/Composition/CompositionDynamicAutomationProvider.cpp +130 -27
  255. package/Microsoft.ReactNative/Fabric/Composition/CompositionDynamicAutomationProvider.h +6 -1
  256. package/Microsoft.ReactNative/Fabric/Composition/CompositionEventHandler.cpp +382 -228
  257. package/Microsoft.ReactNative/Fabric/Composition/CompositionEventHandler.h +35 -8
  258. package/Microsoft.ReactNative/Fabric/Composition/CompositionHelpers.h +46 -8
  259. package/Microsoft.ReactNative/Fabric/Composition/CompositionHwndHost.cpp +5 -21
  260. package/Microsoft.ReactNative/Fabric/Composition/CompositionHwndHost.h +1 -1
  261. package/Microsoft.ReactNative/Fabric/Composition/CompositionRootAutomationProvider.cpp +232 -4
  262. package/Microsoft.ReactNative/Fabric/Composition/CompositionRootAutomationProvider.h +36 -1
  263. package/Microsoft.ReactNative/Fabric/Composition/CompositionRootView.cpp +51 -14
  264. package/Microsoft.ReactNative/Fabric/Composition/CompositionRootView.h +15 -6
  265. package/Microsoft.ReactNative/Fabric/Composition/CompositionRootView_emptyimpl.cpp +123 -0
  266. package/Microsoft.ReactNative/Fabric/Composition/CompositionUIService_emptyimpl.cpp +18 -0
  267. package/Microsoft.ReactNative/Fabric/Composition/CompositionViewComponentView.cpp +333 -137
  268. package/Microsoft.ReactNative/Fabric/Composition/CompositionViewComponentView.h +52 -8
  269. package/Microsoft.ReactNative/Fabric/Composition/ImageComponentView.cpp +32 -26
  270. package/Microsoft.ReactNative/Fabric/Composition/ImageComponentView.h +5 -3
  271. package/Microsoft.ReactNative/Fabric/Composition/ParagraphComponentView.cpp +183 -175
  272. package/Microsoft.ReactNative/Fabric/Composition/ParagraphComponentView.h +7 -4
  273. package/Microsoft.ReactNative/Fabric/Composition/ReactCompositionViewComponentBuilder.cpp +101 -2
  274. package/Microsoft.ReactNative/Fabric/Composition/ReactCompositionViewComponentBuilder.h +46 -2
  275. package/Microsoft.ReactNative/Fabric/Composition/RootComponentView.cpp +36 -9
  276. package/Microsoft.ReactNative/Fabric/Composition/RootComponentView.h +8 -2
  277. package/Microsoft.ReactNative/Fabric/Composition/ScrollViewComponentView.cpp +247 -42
  278. package/Microsoft.ReactNative/Fabric/Composition/ScrollViewComponentView.h +25 -8
  279. package/Microsoft.ReactNative/Fabric/Composition/SwitchComponentView.cpp +78 -50
  280. package/Microsoft.ReactNative/Fabric/Composition/SwitchComponentView.h +12 -4
  281. package/Microsoft.ReactNative/Fabric/Composition/TextInput/WindowsTextInputComponentDescriptor.h +26 -28
  282. package/Microsoft.ReactNative/Fabric/Composition/TextInput/WindowsTextInputComponentView.cpp +429 -89
  283. package/Microsoft.ReactNative/Fabric/Composition/TextInput/WindowsTextInputComponentView.h +24 -3
  284. package/Microsoft.ReactNative/Fabric/Composition/TextInput/WindowsTextInputProps.cpp +1 -0
  285. package/Microsoft.ReactNative/Fabric/Composition/TextInput/WindowsTextInputProps.h +3 -2
  286. package/Microsoft.ReactNative/Fabric/Composition/TextInput/WindowsTextInputShadowNode.cpp +5 -7
  287. package/Microsoft.ReactNative/Fabric/Composition/TextInput/WindowsTextInputShadowNode.h +4 -6
  288. package/Microsoft.ReactNative/Fabric/Composition/TextInput/WindowsTextInputState.cpp +1 -7
  289. package/Microsoft.ReactNative/Fabric/Composition/TextInput/WindowsTextInputState.h +1 -17
  290. package/Microsoft.ReactNative/Fabric/Composition/UiaHelpers.cpp +74 -3
  291. package/Microsoft.ReactNative/Fabric/Composition/UiaHelpers.h +12 -0
  292. package/Microsoft.ReactNative/Fabric/Composition/UnimplementedNativeViewComponentView.cpp +53 -59
  293. package/Microsoft.ReactNative/Fabric/Composition/UnimplementedNativeViewComponentView.h +3 -2
  294. package/Microsoft.ReactNative/Fabric/FabricUIManagerModule.cpp +5 -4
  295. package/Microsoft.ReactNative/Fabric/FabricUIManagerModule.h +2 -1
  296. package/Microsoft.ReactNative/Fabric/ImageRequest.cpp +1 -1
  297. package/Microsoft.ReactNative/Fabric/ReactTaggedView.h +1 -1
  298. package/Microsoft.ReactNative/Fabric/WindowsComponentDescriptorRegistry.cpp +3 -4
  299. package/Microsoft.ReactNative/Fabric/platform/react/renderer/components/view/HostPlatformTouch.h +10 -0
  300. package/Microsoft.ReactNative/Fabric/platform/react/renderer/components/view/HostPlatformViewEventEmitter.cpp +59 -0
  301. package/Microsoft.ReactNative/Fabric/platform/react/renderer/components/view/HostPlatformViewEventEmitter.h +31 -0
  302. package/Microsoft.ReactNative/Fabric/platform/react/renderer/components/view/HostPlatformViewProps.cpp +69 -0
  303. package/Microsoft.ReactNative/Fabric/platform/react/renderer/components/view/HostPlatformViewProps.h +25 -2
  304. package/Microsoft.ReactNative/Fabric/platform/react/renderer/components/view/HostPlatformViewTraitsInitializer.h +23 -0
  305. package/Microsoft.ReactNative/Fabric/platform/react/renderer/components/view/KeyEvent.h +113 -0
  306. package/Microsoft.ReactNative/Fabric/platform/react/renderer/components/view/WindowsViewEvents.h +75 -0
  307. package/Microsoft.ReactNative/Fabric/platform/react/renderer/core/graphicsConversions.h +18 -21
  308. package/Microsoft.ReactNative/Fabric/platform/react/renderer/graphics/Color.cpp +158 -7
  309. package/Microsoft.ReactNative/Fabric/platform/react/renderer/graphics/Color.h +15 -17
  310. package/Microsoft.ReactNative/Fabric/platform/react/renderer/textlayoutmanager/TextLayoutManager.cpp +1 -1
  311. package/Microsoft.ReactNative/GlyphViewManager.cpp +1 -1
  312. package/Microsoft.ReactNative/IJSValueReader.idl +2 -2
  313. package/Microsoft.ReactNative/IJSValueWriter.idl +2 -2
  314. package/Microsoft.ReactNative/IReactCompositionViewComponentBuilder.idl +23 -1
  315. package/Microsoft.ReactNative/IReactContext.cpp +1 -1
  316. package/Microsoft.ReactNative/IReactNotificationService.cpp +4 -3
  317. package/Microsoft.ReactNative/Microsoft.ReactNative.vcxproj +1 -4
  318. package/Microsoft.ReactNative/Modules/AlertModule.cpp +2 -2
  319. package/Microsoft.ReactNative/Modules/Animated/NativeAnimatedNodeManager.cpp +1 -2
  320. package/Microsoft.ReactNative/Modules/Animated/NativeAnimatedNodeManager.h +1 -1
  321. package/Microsoft.ReactNative/Modules/Animated/PropsAnimatedNode.cpp +3 -4
  322. package/Microsoft.ReactNative/Modules/AppStateModule.cpp +1 -1
  323. package/Microsoft.ReactNative/Modules/AppStateModule.h +2 -2
  324. package/Microsoft.ReactNative/Modules/AppearanceModule.h +1 -1
  325. package/Microsoft.ReactNative/Modules/DeviceInfoModule.cpp +4 -2
  326. package/Microsoft.ReactNative/Modules/DeviceInfoModule.h +1 -1
  327. package/Microsoft.ReactNative/Modules/I18nManagerModule.cpp +2 -2
  328. package/Microsoft.ReactNative/Modules/I18nManagerModule.h +1 -1
  329. package/Microsoft.ReactNative/Modules/NativeUIManager.cpp +21 -15
  330. package/Microsoft.ReactNative/Modules/PaperUIManagerModule.cpp +10 -6
  331. package/Microsoft.ReactNative/Modules/PaperUIManagerModule.h +4 -1
  332. package/Microsoft.ReactNative/QuirkSettings.idl +1 -1
  333. package/Microsoft.ReactNative/ReactApplication.cpp +13 -11
  334. package/Microsoft.ReactNative/ReactApplication.h +4 -4
  335. package/Microsoft.ReactNative/ReactCoreInjection.h +6 -5
  336. package/Microsoft.ReactNative/ReactHost/JSCallInvokerScheduler.cpp +2 -2
  337. package/Microsoft.ReactNative/ReactHost/MsoUtils.cpp +1 -1
  338. package/Microsoft.ReactNative/ReactHost/React.h +3 -6
  339. package/Microsoft.ReactNative/ReactHost/ReactHost.cpp +0 -16
  340. package/Microsoft.ReactNative/ReactHost/ReactInstanceWin.cpp +8 -16
  341. package/Microsoft.ReactNative/ReactInstanceSettings.cpp +6 -5
  342. package/Microsoft.ReactNative/ReactInstanceSettings.h +7 -7
  343. package/Microsoft.ReactNative/ReactNativeHost.h +4 -4
  344. package/Microsoft.ReactNative/ReactRootView.cpp +5 -4
  345. package/Microsoft.ReactNative/ReactRootView.h +2 -2
  346. package/Microsoft.ReactNative/ReactSupport.h +1 -1
  347. package/Microsoft.ReactNative/RedBox.cpp +1 -1
  348. package/Microsoft.ReactNative/RedBoxHandler.idl +1 -1
  349. package/Microsoft.ReactNative/Utils/UwpPreparedScriptStore.h +1 -1
  350. package/Microsoft.ReactNative/Utils/ValueUtils.cpp +49 -21
  351. package/Microsoft.ReactNative/Utils/ValueUtils.h +2 -1
  352. package/Microsoft.ReactNative/Views/DynamicAutomationPeer.cpp +31 -59
  353. package/Microsoft.ReactNative/Views/DynamicAutomationPeer.h +3 -4
  354. package/Microsoft.ReactNative/Views/DynamicAutomationProperties.cpp +15 -46
  355. package/Microsoft.ReactNative/Views/DynamicAutomationProperties.h +5 -13
  356. package/Microsoft.ReactNative/Views/FlyoutViewManager.cpp +4 -4
  357. package/Microsoft.ReactNative/Views/FrameworkElementTransferProperties.cpp +2 -8
  358. package/Microsoft.ReactNative/Views/FrameworkElementViewManager.cpp +127 -86
  359. package/Microsoft.ReactNative/Views/ICompositionRootView.h +1 -1
  360. package/Microsoft.ReactNative/Views/Image/ImageViewManager.cpp +1 -1
  361. package/Microsoft.ReactNative/Views/Image/Microsoft.UI.Composition.Effects_Impl.h +2 -2
  362. package/Microsoft.ReactNative/Views/Image/ReactImage.cpp +1 -1
  363. package/Microsoft.ReactNative/Views/SIPEventHandler.cpp +5 -5
  364. package/Microsoft.ReactNative/Views/SIPEventHandler.h +1 -1
  365. package/Microsoft.ReactNative/Views/ShadowNodeBase.h +8 -5
  366. package/Microsoft.ReactNative/Views/SwitchViewManager.cpp +2 -2
  367. package/Microsoft.ReactNative/Views/Text/TextTransformVisitor.cpp +1 -1
  368. package/Microsoft.ReactNative/Views/TextInputViewManager.cpp +32 -14
  369. package/Microsoft.ReactNative/Views/TouchEventHandler.cpp +1 -1
  370. package/Microsoft.ReactNative/Views/ViewManagerBase.cpp +14 -2
  371. package/Microsoft.ReactNative/Views/ViewManagerBase.h +1 -1
  372. package/Microsoft.ReactNative/Views/ViewPanel.cpp +20 -219
  373. package/Microsoft.ReactNative/Views/ViewPanel.h +0 -30
  374. package/Microsoft.ReactNative/Views/ViewViewManager.cpp +17 -158
  375. package/Microsoft.ReactNative/Views/cppwinrt/DynamicAutomationPeer.idl +9 -12
  376. package/Microsoft.ReactNative/Views/cppwinrt/ViewPanel.idl +1 -9
  377. package/Microsoft.ReactNative/XamlHelper.cpp +1 -1
  378. package/Microsoft.ReactNative/XamlHelper.h +1 -1
  379. package/Microsoft.ReactNative/packages.lock.json +128 -0
  380. package/Microsoft.ReactNative.Cxx/JSI/JsiAbiApi.cpp +1 -1
  381. package/Microsoft.ReactNative.Cxx/JSI/JsiAbiApi.h +1 -1
  382. package/Microsoft.ReactNative.Cxx/JSI/JsiApiContext.cpp +2 -2
  383. package/Microsoft.ReactNative.Cxx/JSValue.h +2 -2
  384. package/Microsoft.ReactNative.Cxx/Microsoft.ReactNative.Cxx.vcxitems +0 -1
  385. package/Microsoft.ReactNative.Cxx/NativeModules.h +4 -4
  386. package/Microsoft.ReactNative.Cxx/ReactHandleHelper.h +1 -1
  387. package/Microsoft.ReactNative.Cxx/ReactNonAbiValue.h +2 -2
  388. package/Microsoft.ReactNative.Cxx/ReactNotificationService.h +10 -9
  389. package/Microsoft.ReactNative.Cxx/ReactPropertyBag.h +13 -12
  390. package/Microsoft.ReactNative.Managed/JSValueReaderGenerator.cs +5 -5
  391. package/Microsoft.ReactNative.Managed/JSValueWriterGenerator.cs +5 -5
  392. package/Microsoft.ReactNative.Managed/Microsoft.ReactNative.Managed.csproj +8 -2
  393. package/Microsoft.ReactNative.Managed/ReactPackageBuilderExtensions.cs +1 -1
  394. package/Microsoft.ReactNative.Managed/ReflectionReactPackageProvider.cs +1 -1
  395. package/Microsoft.ReactNative.Managed/packages.lock.json +9 -9
  396. package/Microsoft.ReactNative.Managed.CodeGen/CodeAnalyzer.cs +2 -0
  397. package/Microsoft.ReactNative.Managed.CodeGen/CodeGenerator.Module.cs +4 -2
  398. package/Microsoft.ReactNative.Managed.CodeGen/CodeGenerator.ViewManager.cs +1 -1
  399. package/Microsoft.ReactNative.Managed.CodeGen/DiagnosticDescriptors.cs +1 -1
  400. package/Microsoft.ReactNative.Managed.CodeGen/packages.lock.json +3197 -0
  401. package/Mso/compilerAdapters/compilerFeatures.h +1 -1
  402. package/Mso/compilerAdapters/functionDecorations.h +6 -6
  403. package/Mso/debugAssertApi/debugAssertDetails.h +1 -1
  404. package/Mso/dispatchQueue/dispatchQueue.h +3 -3
  405. package/Mso/motifCpp/motifCppTest.h +1 -1
  406. package/Mso/motifCpp/testCheck.h +1 -1
  407. package/Mso/oacr/oacr.h +1 -1
  408. package/Mso/smartPtr/smartPointerBase.h +1 -1
  409. package/Mso/src/dispatchQueue/looperScheduler.cpp +2 -2
  410. package/Mso/src/dispatchQueue/queueService.cpp +1 -1
  411. package/Mso/src/dispatchQueue/taskQueue.h +1 -1
  412. package/Mso/src/dispatchQueue/threadPoolScheduler_win.cpp +2 -2
  413. package/Mso/src/dispatchQueue/uiScheduler_winrt.cpp +122 -45
  414. package/Mso/src/eventWaitHandle/eventWaitHandleImpl_win.cpp +2 -2
  415. package/Mso/src/future/futureImpl.cpp +5 -5
  416. package/Mso/src/future/futureImpl.h +1 -1
  417. package/PropertySheets/External/Microsoft.ReactNative.Common.props +3 -0
  418. package/PropertySheets/External/{Microsoft.ReactNative.WinAppSDK.Common.props → Microsoft.ReactNative.Composition.Common.props} +2 -2
  419. package/PropertySheets/External/{Microsoft.ReactNative.WinAppSDK.CSharpApp.props → Microsoft.ReactNative.Composition.CppApp.props} +7 -10
  420. package/PropertySheets/External/Microsoft.ReactNative.Composition.CppApp.targets +19 -0
  421. package/PropertySheets/External/Microsoft.ReactNative.Composition.Package.props +14 -0
  422. package/PropertySheets/External/Microsoft.ReactNative.Composition.Package.targets +18 -0
  423. package/PropertySheets/External/Microsoft.ReactNative.WindowsSdk.Default.props +1 -1
  424. package/PropertySheets/Generated/PackageVersion.g.props +4 -4
  425. package/PropertySheets/HybridCRT.props +34 -0
  426. package/PropertySheets/JSEngine.props +1 -2
  427. package/PropertySheets/React.Cpp.props +0 -1
  428. package/PropertySheets/Warnings.props +1 -1
  429. package/PropertySheets/WinUI.props +1 -1
  430. package/ReactCommon/ReactCommon.vcxproj +15 -9
  431. package/ReactCommon/ReactCommon.vcxproj.filters +0 -3
  432. package/ReactCommon/TEMP_UntilReactCommonUpdate/jsi/jsi/test/testlib.cpp +32 -5
  433. package/ReactCommon/TEMP_UntilReactCommonUpdate/react/bridging/Bridging.h +20 -0
  434. package/ReactCommon/TEMP_UntilReactCommonUpdate/react/renderer/components/view/YogaLayoutableShadowNode.cpp +1038 -0
  435. package/ReactCommon/TEMP_UntilReactCommonUpdate/react/renderer/components/view/YogaStylableProps.cpp +228 -38
  436. package/ReactCommon/TEMP_UntilReactCommonUpdate/react/renderer/components/view/conversions.h +895 -0
  437. package/ReactCommon/TEMP_UntilReactCommonUpdate/react/renderer/mounting/ShadowTree.cpp +543 -0
  438. package/ReactCommon/TEMP_UntilReactCommonUpdate/react/renderer/uimanager/UIManagerBinding.cpp +1509 -0
  439. package/ReactCommon/TEMP_UntilReactCommonUpdate/yoga/yoga/bits/NumericBitfield.h +67 -0
  440. package/ReactCommon/TEMP_UntilReactCommonUpdate/yoga/yoga/config/Config.h +93 -0
  441. package/ReactCommon/TEMP_UntilReactCommonUpdate/yoga/yoga/node/LayoutResults.h +88 -0
  442. package/ReactCommon/TEMP_UntilReactCommonUpdate/yoga/yoga/node/Node.cpp +606 -0
  443. package/ReactCommon/TEMP_UntilReactCommonUpdate/yoga/yoga/node/Node.h +344 -0
  444. package/ReactCommon/Yoga.cpp +497 -3895
  445. package/ReactCommon/packages.lock.json +30 -0
  446. package/Scripts/NuGetRestoreForceEvaluateAllSolutions.ps1 +22 -0
  447. package/Scripts/OfficeReact.Win32.nuspec +1 -0
  448. package/Scripts/rnw-dependencies.ps1 +79 -26
  449. package/Shared/BaseScriptStoreImpl.cpp +42 -13
  450. package/Shared/BaseScriptStoreImpl.h +1 -1
  451. package/Shared/Composition/AutoDraw.h +36 -0
  452. package/Shared/CxxMessageQueue.cpp +1 -1
  453. package/Shared/DevSettings.h +3 -0
  454. package/Shared/DevSupportManager.h +1 -1
  455. package/Shared/Hasher.cpp +64 -0
  456. package/Shared/Hasher.h +24 -0
  457. package/Shared/HermesRuntimeHolder.cpp +6 -6
  458. package/Shared/IDevSupportManager.h +1 -1
  459. package/Shared/JSI/ChakraApi.cpp +1 -1
  460. package/Shared/JSI/ChakraRuntime.cpp +10 -10
  461. package/Shared/JSI/ChakraRuntime.h +6 -6
  462. package/Shared/JSI/V8RuntimeHolder.cpp +1 -1
  463. package/Shared/Modules/IRequestBodyHandler.h +1 -1
  464. package/Shared/Modules/IUriHandler.h +1 -1
  465. package/Shared/Modules/PlatformConstantsModule.cpp +1 -1
  466. package/Shared/Modules/WebSocketModule.cpp +1 -1
  467. package/Shared/Networking/DefaultBlobResource.cpp +2 -2
  468. package/Shared/Networking/OriginPolicyHttpFilter.cpp +22 -16
  469. package/Shared/Networking/OriginPolicyHttpFilter.h +12 -11
  470. package/Shared/OInstance.cpp +9 -23
  471. package/Shared/OInstance.h +1 -1
  472. package/Shared/PackagerConnection.h +1 -1
  473. package/Shared/SafeLoadLibrary.cpp +8 -44
  474. package/Shared/SafeLoadLibrary.h +1 -5
  475. package/Shared/Shared.vcxitems +50 -20
  476. package/Shared/Shared.vcxitems.filters +26 -17
  477. package/Shared/Threading/BatchingQueueThread.cpp +5 -5
  478. package/Shared/Threading/BatchingQueueThread.h +4 -4
  479. package/Shared/TurboModuleManager.cpp +1 -1
  480. package/Shared/Utils.cpp +1 -1
  481. package/Shared/tracing/fbsystrace.h +1 -1
  482. package/codegen/NativeAnimatedModuleSpec.g.h +2 -0
  483. package/codegen/NativeAnimatedTurboModuleSpec.g.h +2 -0
  484. package/codegen/NativeAppStateSpec.g.h +11 -21
  485. package/codegen/NativeDeviceInfoSpec.g.h +4 -14
  486. package/codegen/NativeI18nManagerSpec.g.h +6 -16
  487. package/codegen/NativeIntersectionObserverSpec.g.h +96 -0
  488. package/codegen/NativeMutationObserverSpec.g.h +90 -0
  489. package/codegen/NativePerformanceObserverSpec.g.h +19 -13
  490. package/codegen/NativePerformanceSpec.g.h +6 -23
  491. package/codegen/NativePlatformConstantsAndroidSpec.g.h +22 -30
  492. package/codegen/NativePlatformConstantsIOSSpec.g.h +17 -25
  493. package/codegen/NativePlatformConstantsWinSpec.g.h +14 -22
  494. package/codegen/NativeSampleTurboModuleSpec.g.h +36 -0
  495. package/codegen/NativeSourceCodeSpec.g.h +3 -13
  496. package/codegen/react/components/rnwcore/EventEmitters.cpp +85 -58
  497. package/codegen/react/components/rnwcore/EventEmitters.h +17 -35
  498. package/codegen/react/components/rnwcore/Props.h +16 -17
  499. package/codegen/rnwcoreJSI-generated.cpp +1462 -319
  500. package/codegen/rnwcoreJSI.h +1609 -462
  501. package/fmt/packages.lock.json +13 -0
  502. package/index.windows.js +3 -3
  503. package/{Libraries/Components/ProgressBarAndroid/ProgressBarAndroid.ios.js → jest/ReactNativeInternalFeatureFlagsMock.js} +2 -1
  504. package/jest/__tests__/setup-test.js +18 -0
  505. package/jest/mockModal.js +6 -4
  506. package/jest/setup.js +61 -30
  507. package/just-task.js +1 -0
  508. package/package.json +37 -42
  509. package/template/cs-app/proj/MyApp.csproj +0 -1
  510. package/template/cs-lib/proj/MyLib.csproj +0 -1
  511. package/templates/.clang-format +4 -0
  512. package/templates/cpp-app/metro.config.js +51 -0
  513. package/templates/cpp-app/template.config.js +119 -0
  514. package/templates/cpp-app/windows/ExperimentalFeatures.props +12 -0
  515. package/templates/cpp-app/windows/MyApp/MyApp.cpp +284 -0
  516. package/templates/cpp-app/windows/MyApp/MyApp.h +3 -0
  517. package/templates/cpp-app/windows/MyApp/MyApp.ico +0 -0
  518. package/templates/cpp-app/windows/MyApp/MyApp.rc +0 -0
  519. package/templates/cpp-app/windows/MyApp/MyApp.vcxproj +142 -0
  520. package/templates/cpp-app/windows/MyApp/MyApp.vcxproj.filters +55 -0
  521. package/templates/cpp-app/windows/MyApp/_gitignore +1 -0
  522. package/templates/cpp-app/windows/MyApp/pch.cpp +1 -0
  523. package/templates/cpp-app/windows/MyApp/pch.h +35 -0
  524. package/templates/cpp-app/windows/MyApp/resource.h +18 -0
  525. package/templates/cpp-app/windows/MyApp/small.ico +0 -0
  526. package/templates/cpp-app/windows/MyApp/targetver.h +8 -0
  527. package/templates/cpp-app/windows/MyApp.Package/Images/LockScreenLogo.scale-200.png +0 -0
  528. package/templates/cpp-app/windows/MyApp.Package/Images/SplashScreen.scale-200.png +0 -0
  529. package/templates/cpp-app/windows/MyApp.Package/Images/Square150x150Logo.scale-200.png +0 -0
  530. package/templates/cpp-app/windows/MyApp.Package/Images/Square44x44Logo.scale-200.png +0 -0
  531. package/templates/cpp-app/windows/MyApp.Package/Images/Square44x44Logo.targetsize-24_altform-unplated.png +0 -0
  532. package/templates/cpp-app/windows/MyApp.Package/Images/StoreLogo.png +0 -0
  533. package/templates/cpp-app/windows/MyApp.Package/Images/Wide310x150Logo.scale-200.png +0 -0
  534. package/templates/cpp-app/windows/MyApp.Package/MyApp.Package.wapproj +78 -0
  535. package/{template/cs-app-WinAppSDK/MyApp → templates/cpp-app/windows/MyApp.Package}/Package.appxmanifest +9 -8
  536. package/templates/cpp-app/windows/MyApp.sln +176 -0
  537. package/templates/cpp-app/windows/_gitignore +41 -0
  538. package/templates/old/generateWrapper.js +67 -0
  539. package/templates/old/uwp-cpp-app/template.config.js +15 -0
  540. package/templates/old/uwp-cpp-lib/template.config.js +15 -0
  541. package/templates/old/uwp-cs-app/template.config.js +15 -0
  542. package/templates/old/uwp-cs-lib/template.config.js +15 -0
  543. package/types/experimental.d.ts +44 -0
  544. package/types/index.d.ts +2 -1
  545. package/types/modules/Devtools.d.ts +1 -0
  546. package/types/modules/globals.d.ts +16 -1
  547. package/Libraries/Components/View/ViewWindows.d.ts +0 -19
  548. package/Libraries/Components/View/ViewWindows.js +0 -22
  549. package/Libraries/Components/View/ViewWindows.js.map +0 -1
  550. package/Libraries/Components/View/ViewWindowsProps.d.ts +0 -69
  551. package/Libraries/Components/View/ViewWindowsProps.js +0 -8
  552. package/Libraries/Components/View/ViewWindowsProps.js.map +0 -1
  553. package/Libraries/Utilities/AcessibilityMapping.js +0 -154
  554. package/Libraries/Utilities/NativeDevSplitBundleLoader.js +0 -19
  555. package/Libraries/Utilities/useColorScheme.windows.js +0 -26
  556. package/Microsoft.ReactNative/Fabric/platform/react/components/view/windows/WindowsViewProps.cpp +0 -61
  557. package/Microsoft.ReactNative/Fabric/platform/react/components/view/windows/WindowsViewProps.h +0 -34
  558. package/Microsoft.ReactNative/Fabric/platform/react/components/view/windows/primitives.h +0 -42
  559. package/PropertySheets/External/Microsoft.ReactNative.WinAppSDK.CSharp.PackageReferences.props +0 -11
  560. package/PropertySheets/External/Microsoft.ReactNative.WinAppSDK.CSharpApp.targets +0 -51
  561. package/ReactCommon/TEMP_UntilReactCommonUpdate/react/renderer/components/view/TouchEventEmitter.cpp +0 -237
  562. package/ReactCommon/TEMP_UntilReactCommonUpdate/react/renderer/components/view/TouchEventEmitter.h +0 -59
  563. package/ReactCommon/TEMP_UntilReactCommonUpdate/react/renderer/components/view/ViewEventEmitter.cpp +0 -159
  564. package/ReactCommon/TEMP_UntilReactCommonUpdate/react/renderer/components/view/ViewEventEmitter.h +0 -94
  565. package/ReactCommon/TEMP_UntilReactCommonUpdate/react/renderer/components/view/ViewProps.cpp +0 -465
  566. package/ReactCommon/TEMP_UntilReactCommonUpdate/react/renderer/components/view/ViewProps.h +0 -116
  567. package/ReactCommon/TEMP_UntilReactCommonUpdate/react/renderer/components/view/ViewShadowNode.cpp +0 -98
  568. package/ReactCommon/TEMP_UntilReactCommonUpdate/react/renderer/components/view/primitives.h +0 -326
  569. package/Scripts/Microsoft.ReactNative.WindowsAppSDK.nuspec +0 -30
  570. package/Shared/V8JSIRuntimeHolder.cpp +0 -71
  571. package/Shared/V8JSIRuntimeHolder.h +0 -56
  572. package/codegen/NativeDevSplitBundleLoaderSpec.g.h +0 -34
  573. package/template/cs-app-WinAppSDK/MyApp/App.xaml +0 -16
  574. package/template/cs-app-WinAppSDK/MyApp/App.xaml.cs +0 -70
  575. package/template/cs-app-WinAppSDK/MyApp/MainWindow.xaml +0 -14
  576. package/template/cs-app-WinAppSDK/MyApp/MainWindow.xaml.cs +0 -38
  577. package/template/cs-app-WinAppSDK/MyApp/Properties/PublishProfiles/win10-arm64.pubxml +0 -19
  578. package/template/cs-app-WinAppSDK/MyApp/Properties/PublishProfiles/win10-x64.pubxml +0 -19
  579. package/template/cs-app-WinAppSDK/MyApp/Properties/PublishProfiles/win10-x86.pubxml +0 -19
  580. package/template/cs-app-WinAppSDK/MyApp/Properties/launchSettings.json +0 -10
  581. package/template/cs-app-WinAppSDK/MyApp/app.manifest +0 -15
  582. package/template/cs-app-WinAppSDK/proj/ExperimentalFeatures.props +0 -24
  583. package/template/cs-app-WinAppSDK/proj/MyApp.csproj +0 -53
  584. package/template/cs-app-WinAppSDK/proj/MyApp.sln +0 -43
  585. package/template/cs-app-WinAppSDK/proj/NuGet_Config +0 -19
  586. /package/Libraries/Components/DrawerAndroid/{DrawerLayoutAndroid.ios.js → DrawerLayoutAndroid.js} +0 -0
  587. /package/Libraries/{Renderer/public → ReactNative/ReactFabricPublicInstance}/ReactFabricPublicInstanceUtils.js +0 -0
@@ -10,9 +10,9 @@
10
10
 
11
11
  import type {ViewProps} from './ViewPropTypes';
12
12
 
13
+ import ReactNativeFeatureFlags from '../../ReactNative/ReactNativeFeatureFlags';
13
14
  import flattenStyle from '../../StyleSheet/flattenStyle';
14
15
  import TextAncestor from '../../Text/TextAncestor';
15
- import {getAccessibilityRoleFromRole} from '../../Utilities/AcessibilityMapping';
16
16
  import ViewNativeComponent from './ViewNativeComponent';
17
17
  import * as React from 'react';
18
18
  import invariant from 'invariant'; // [Windows]
@@ -38,8 +38,10 @@ const View: React.AbstractComponent<
38
38
  accessibilityElementsHidden,
39
39
  accessibilityLabel,
40
40
  accessibilityLabelledBy,
41
+ accessibilityLevel, // Windows
41
42
  accessibilityLiveRegion,
42
- accessibilityRole,
43
+ accessibilityPosInSet, // Windows
44
+ accessibilitySetSize, // Windows
43
45
  accessibilityState,
44
46
  accessibilityValue,
45
47
  'aria-busy': ariaBusy,
@@ -49,8 +51,11 @@ const View: React.AbstractComponent<
49
51
  'aria-hidden': ariaHidden,
50
52
  'aria-label': ariaLabel,
51
53
  'aria-labelledby': ariaLabelledBy,
54
+ 'aria-level': ariaLevel,
52
55
  'aria-live': ariaLive,
56
+ 'aria-posinset': ariaPosinset, // Windows
53
57
  'aria-selected': ariaSelected,
58
+ 'aria-setsize': ariaSetsize, // Windows
54
59
  'aria-valuemax': ariaValueMax,
55
60
  'aria-valuemin': ariaValueMin,
56
61
  'aria-valuenow': ariaValueNow,
@@ -61,7 +66,6 @@ const View: React.AbstractComponent<
61
66
  importantForAccessibility,
62
67
  nativeID,
63
68
  pointerEvents,
64
- role,
65
69
  tabIndex,
66
70
  ...otherProps
67
71
  }: ViewProps,
@@ -106,7 +110,17 @@ const View: React.AbstractComponent<
106
110
  // $FlowFixMe[underconstrained-implicit-instantiation]
107
111
  let style = flattenStyle(otherProps.style);
108
112
 
113
+ // $FlowFixMe[sketchy-null-mixed]
109
114
  const newPointerEvents = style?.pointerEvents || pointerEvents;
115
+ const collapsableOverride =
116
+ ReactNativeFeatureFlags.shouldForceUnflattenForElevation()
117
+ ? {
118
+ collapsable:
119
+ style != null && style.elevation != null && style.elevation !== 0
120
+ ? false
121
+ : otherProps.collapsable,
122
+ }
123
+ : {};
110
124
 
111
125
  const _keyDown = (event: KeyEvent) => {
112
126
  if (otherProps.keyDownEvents && event.isPropagationStopped() !== true) {
@@ -192,7 +206,7 @@ const View: React.AbstractComponent<
192
206
 
193
207
  if (_focusable === true && _accessible === false) {
194
208
  console.warn(
195
- 'All focusable views should report proper accessiblity information. Views marked as focusable should always be accessible.',
209
+ 'All focusable views should report proper accessibility information. Views marked as focusable should always be accessible.',
196
210
  );
197
211
  }
198
212
 
@@ -212,18 +226,19 @@ const View: React.AbstractComponent<
212
226
  return (
213
227
  <ViewNativeComponent
214
228
  {...otherProps}
229
+ {...collapsableOverride}
215
230
  accessibilityLiveRegion={
216
231
  ariaLive === 'off'
217
232
  ? 'none'
218
233
  : ariaLive ?? accessibilityLiveRegion
219
234
  }
220
235
  accessibilityLabel={ariaLabel ?? accessibilityLabel}
236
+ accessibilityLevel={ariaLevel ?? accessibilityLevel}
237
+ accessibilityPosInSet={ariaPosinset ?? accessibilityPosInSet}
238
+ accessibilitySetSize={ariaSetsize ?? accessibilitySetSize}
221
239
  focusable={_focusable}
222
240
  disabled={disabled}
223
241
  accessibilityState={_accessibilityState}
224
- accessibilityRole={
225
- role ? getAccessibilityRoleFromRole(role) : accessibilityRole
226
- }
227
242
  accessibilityElementsHidden={
228
243
  ariaHidden ?? accessibilityElementsHidden
229
244
  }
@@ -236,6 +251,7 @@ const View: React.AbstractComponent<
236
251
  }
237
252
  nativeID={id ?? nativeID}
238
253
  style={style}
254
+ // $FlowFixMe[incompatible-type]
239
255
  pointerEvents={newPointerEvents}
240
256
  ref={forwardedRef}
241
257
  onKeyDown={_keyDown}
@@ -38,6 +38,29 @@ export interface AccessibilityProps
38
38
  */
39
39
  'aria-label'?: string | undefined;
40
40
 
41
+ accessibilityLevel?: number | undefined; // Windows
42
+ 'aria-level'?: number | undefined; // Windows
43
+
44
+ /**
45
+ * Indicates to accessibility services that the UI Component is within a set and has the given numbered position.
46
+ */
47
+ accessibilityPosInSet?: number | undefined; // Windows
48
+
49
+ /**
50
+ * Indicates to accessibility services that the UI Component is within a set and has the given numbered position.
51
+ */
52
+ 'aria-posinset'?: number | undefined; // Windows
53
+
54
+ /**
55
+ * Indicates to accessibility services that the UI Component is within a set with the given size.
56
+ */
57
+ accessibilitySetSize?: number | undefined; // Window
58
+
59
+ /**
60
+ * Indicates to accessibility services that the UI Component is within a set with the given size.
61
+ */
62
+ 'aria-setsize'?: number | undefined; // Windows
63
+
41
64
  /**
42
65
  * Accessibility Role tells a person using either VoiceOver on iOS or TalkBack on Android the type of element that is focused on.
43
66
  */
@@ -57,7 +80,6 @@ export interface AccessibilityProps
57
80
  'aria-disabled'?: boolean | undefined;
58
81
  'aria-expanded'?: boolean | undefined;
59
82
  'aria-selected'?: boolean | undefined;
60
-
61
83
  /**
62
84
  * Represents the nativeID of the associated label text. When the assistive technology focuses on the component with this props, the text is read aloud.
63
85
  *
@@ -223,6 +245,10 @@ export type AccessibilityRole =
223
245
  | 'tablist'
224
246
  | 'timer'
225
247
  | 'list'
248
+ | 'group' // Windows
249
+ | 'tree' // Windows
250
+ | 'treeitem' // Windows
251
+ | 'listitem' // Windows
226
252
  | 'toolbar';
227
253
 
228
254
  export interface AccessibilityPropsAndroid {
@@ -84,6 +84,9 @@ export type AccessibilityRole =
84
84
  | 'grid'
85
85
  | 'pager'
86
86
  | 'scrollview'
87
+ | 'group' // Windows
88
+ | 'tree' // Windows
89
+ | 'treeitem' // Windows
87
90
  | 'horizontalscrollview'
88
91
  | 'viewgroup'
89
92
  | 'webview'
@@ -98,6 +98,7 @@ export const __INTERNAL_VIEW_CONFIG: PartialViewConfig =
98
98
  focusable: true,
99
99
  overflow: true,
100
100
  backfaceVisibility: true,
101
+ experimental_layoutConformance: true,
101
102
  },
102
103
  }
103
104
  : {
@@ -12,7 +12,14 @@ import {Insets} from '../../../types/public/Insets';
12
12
  import {GestureResponderHandlers} from '../../../types/public/ReactNativeRenderer';
13
13
  import {StyleProp} from '../../StyleSheet/StyleSheet';
14
14
  import {ViewStyle} from '../../StyleSheet/StyleSheetTypes';
15
- import {LayoutChangeEvent, PointerEvents} from '../../Types/CoreEventTypes';
15
+ import {
16
+ LayoutChangeEvent,
17
+ MouseEvent, // Windows
18
+ NativeSyntheticEvent, // Windows
19
+ PointerEvents,
20
+ } from 'react-native/Libraries/Types/CoreEventTypes';
21
+
22
+ import {IKeyboardProps} from '../Keyboard/KeyboardExtProps'; // Windows
16
23
  import {Touchable} from '../Touchable/Touchable';
17
24
  import {AccessibilityProps} from './ViewAccessibility';
18
25
 
@@ -163,12 +170,108 @@ export interface ViewPropsAndroid {
163
170
  focusable?: boolean | undefined;
164
171
  }
165
172
 
173
+ // [Windows
174
+
175
+ export enum EventPhase {
176
+ None = 0,
177
+ Capturing,
178
+ AtTarget,
179
+ Bubbling,
180
+ }
181
+
182
+ export enum HandledEventPhase {
183
+ Capturing = EventPhase.Capturing,
184
+ Bubbling = EventPhase.Bubbling,
185
+ }
186
+
187
+ export interface INativeKeyboardEvent {
188
+ altKey: boolean;
189
+ ctrlKey: boolean;
190
+ metaKey: boolean;
191
+ shiftKey: boolean;
192
+ key: string;
193
+ code: string;
194
+ eventPhase: EventPhase;
195
+ }
196
+
197
+ export interface IHandledKeyboardEvent {
198
+ altKey?: boolean;
199
+ ctrlKey?: boolean;
200
+ metaKey?: boolean;
201
+ shiftKey?: boolean;
202
+ code: string;
203
+ handledEventPhase?: HandledEventPhase;
204
+ }
205
+
206
+ export type IKeyboardEvent = NativeSyntheticEvent<INativeKeyboardEvent>;
207
+
208
+ export type INativeMouseEvent = {
209
+ target: number;
210
+ identifier: number;
211
+ pageX: number;
212
+ pageY: number;
213
+ locationX: number;
214
+ locationY: number;
215
+ timestamp: number;
216
+ pointerType: string;
217
+ force: number;
218
+ isLeftButton: boolean;
219
+ isRightButton: boolean;
220
+ isMiddleButton: boolean;
221
+ isBarrelButtonPressed: boolean;
222
+ isHorizontalScrollWheel: boolean;
223
+ isEraser: boolean;
224
+ shiftKey: boolean;
225
+ ctrlKey: boolean;
226
+ altKey: boolean;
227
+ };
228
+
229
+ export type IMouseEvent = NativeSyntheticEvent<INativeMouseEvent>;
230
+
231
+ export interface ViewPropsWindows {
232
+ /**
233
+ * Specifies the Tooltip for the view
234
+ */
235
+ tooltip?: string;
236
+
237
+ /**
238
+ * Indicates the TabIndex to use for this view
239
+ */
240
+ tabIndex?: number;
241
+
242
+ /**
243
+ * Specifies if the control should show System focus visuals
244
+ */
245
+ enableFocusRing?: boolean;
246
+
247
+ /**
248
+ * Event fired when the mouse leaves the view
249
+ */
250
+ onMouseLeave?: (args: IMouseEvent) => void;
251
+
252
+ /**
253
+ * Event fired when the mouse enters the view
254
+ */
255
+ onMouseEnter?: (args: IMouseEvent) => void;
256
+
257
+ onKeyDown?: (args: IKeyboardEvent) => void;
258
+ onKeyDownCapture?: (args: IKeyboardEvent) => void;
259
+ onKeyUp?: (args: IKeyboardEvent) => void;
260
+ onKeyUpCapture?: (args: IKeyboardEvent) => void;
261
+
262
+ keyDownEvents?: IHandledKeyboardEvent[];
263
+ keyUpEvents?: IHandledKeyboardEvent[];
264
+ }
265
+
266
+ // Windows]
267
+
166
268
  /**
167
269
  * @see https://reactnative.dev/docs/view#props
168
270
  */
169
271
  export interface ViewProps
170
272
  extends ViewPropsAndroid,
171
273
  ViewPropsIOS,
274
+ ViewPropsWindows,
172
275
  GestureResponderHandlers,
173
276
  Touchable,
174
277
  PointerEvents,
@@ -87,6 +87,8 @@ type MouseEventProps = $ReadOnly<{|
87
87
 
88
88
  // Experimental/Work in Progress Pointer Event Callbacks (not yet ready for use)
89
89
  type PointerEventProps = $ReadOnly<{|
90
+ onClick?: ?(event: PointerEvent) => void,
91
+ onClickCapture?: ?(event: PointerEvent) => void,
90
92
  onPointerEnter?: ?(event: PointerEvent) => void,
91
93
  onPointerEnterCapture?: ?(event: PointerEvent) => void,
92
94
  onPointerLeave?: ?(event: PointerEvent) => void,
@@ -103,6 +105,10 @@ type PointerEventProps = $ReadOnly<{|
103
105
  onPointerOverCapture?: ?(e: PointerEvent) => void,
104
106
  onPointerOut?: ?(e: PointerEvent) => void,
105
107
  onPointerOutCapture?: ?(e: PointerEvent) => void,
108
+ onGotPointerCapture?: ?(e: PointerEvent) => void,
109
+ onGotPointerCaptureCapture?: ?(e: PointerEvent) => void,
110
+ onLostPointerCapture?: ?(e: PointerEvent) => void,
111
+ onLostPointerCaptureCapture?: ?(e: PointerEvent) => void,
106
112
  |}>;
107
113
 
108
114
  type FocusEventProps = $ReadOnly<{|
@@ -158,8 +164,8 @@ type GestureResponderEventProps = $ReadOnly<{|
158
164
  * `View.props.onResponderGrant: (event) => {}`, where `event` is a synthetic
159
165
  * touch event as described above.
160
166
  *
161
- * PanResponder includes a note `// TODO: t7467124 investigate if this can be removed` that
162
- * should help fixing this return type.
167
+ * Return true from this callback to prevent any other native components from
168
+ * becoming responder until this responder terminates (Android-only).
163
169
  *
164
170
  * See https://reactnative.dev/docs/view#onrespondergrant
165
171
  */
@@ -563,7 +569,16 @@ export type ViewProps = $ReadOnly<{|
563
569
  collapsable?: ?boolean,
564
570
 
565
571
  /**
566
- * Used to locate this view from native classes.
572
+ * Contols whether this view, and its transitive children, are laid in a way
573
+ * consistent with web browsers ('strict'), or consistent with existing
574
+ * React Native code which may rely on incorrect behavior ('classic').
575
+ *
576
+ * This prop only works when using Fabric.
577
+ */
578
+ experimental_layoutConformance?: ?('strict' | 'classic'),
579
+
580
+ /**
581
+ * Used to locate this view from native classes. Has precedence over `nativeID` prop.
567
582
  *
568
583
  * > This disables the 'layout-only view removal' optimization for this view!
569
584
  *
@@ -88,6 +88,8 @@ type MouseEventProps = $ReadOnly<{|
88
88
 
89
89
  // Experimental/Work in Progress Pointer Event Callbacks (not yet ready for use)
90
90
  type PointerEventProps = $ReadOnly<{|
91
+ onClick?: ?(event: PointerEvent) => void,
92
+ onClickCapture?: ?(event: PointerEvent) => void,
91
93
  onPointerEnter?: ?(event: PointerEvent) => void,
92
94
  onPointerEnterCapture?: ?(event: PointerEvent) => void,
93
95
  onPointerLeave?: ?(event: PointerEvent) => void,
@@ -104,6 +106,10 @@ type PointerEventProps = $ReadOnly<{|
104
106
  onPointerOverCapture?: ?(e: PointerEvent) => void,
105
107
  onPointerOut?: ?(e: PointerEvent) => void,
106
108
  onPointerOutCapture?: ?(e: PointerEvent) => void,
109
+ onGotPointerCapture?: ?(e: PointerEvent) => void,
110
+ onGotPointerCaptureCapture?: ?(e: PointerEvent) => void,
111
+ onLostPointerCapture?: ?(e: PointerEvent) => void,
112
+ onLostPointerCaptureCapture?: ?(e: PointerEvent) => void,
107
113
  |}>;
108
114
 
109
115
  type FocusEventProps = $ReadOnly<{|
@@ -159,8 +165,8 @@ type GestureResponderEventProps = $ReadOnly<{|
159
165
  * `View.props.onResponderGrant: (event) => {}`, where `event` is a synthetic
160
166
  * touch event as described above.
161
167
  *
162
- * PanResponder includes a note `// TODO: t7467124 investigate if this can be removed` that
163
- * should help fixing this return type.
168
+ * Return true from this callback to prevent any other native components from
169
+ * becoming responder until this responder terminates (Android-only).
164
170
  *
165
171
  * See https://reactnative.dev/docs/view#onrespondergrant
166
172
  */
@@ -434,6 +440,17 @@ type IOSViewProps = $ReadOnly<{|
434
440
  |}>;
435
441
 
436
442
  // [Windows
443
+ export const EventPhase = {
444
+ None: 0,
445
+ Capturing: 1,
446
+ AtTarget: 2,
447
+ Bubbling: 3,
448
+ };
449
+
450
+ export const HandledEventPhase = {
451
+ Capturing: EventPhase.Capturing,
452
+ Bubbling: EventPhase.Bubbling,
453
+ };
437
454
 
438
455
  export type HandledKeyboardEvent = $ReadOnly<{|
439
456
  altKey?: ?boolean,
@@ -467,8 +484,12 @@ type WindowsViewProps = $ReadOnly<{|
467
484
 
468
485
  disabled?: ?boolean,
469
486
 
487
+ accessibilityLevel?: ?number,
488
+ 'aria-level'?: ?number,
470
489
  accessibilityPosInSet?: ?number,
490
+ 'aria-posinset'?: ?number,
471
491
  accessibilitySetSize?: ?number,
492
+ 'aria-setsize'?: ?number,
472
493
 
473
494
  /**
474
495
  * Specifies if the control should show System focus visuals
@@ -614,7 +635,16 @@ export type ViewProps = $ReadOnly<{|
614
635
  collapsable?: ?boolean,
615
636
 
616
637
  /**
617
- * Used to locate this view from native classes.
638
+ * Contols whether this view, and its transitive children, are laid in a way
639
+ * consistent with web browsers ('strict'), or consistent with existing
640
+ * React Native code which may rely on incorrect behavior ('classic').
641
+ *
642
+ * This prop only works when using Fabric.
643
+ */
644
+ experimental_layoutConformance?: ?('strict' | 'classic'),
645
+
646
+ /**
647
+ * Used to locate this view from native classes. Has precedence over `nativeID` prop.
618
648
  *
619
649
  * > This disables the 'layout-only view removal' optimization for this view!
620
650
  *
@@ -0,0 +1,152 @@
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
+ * @flow strict-local
8
+ * @format
9
+ * @oncall react_native
10
+ */
11
+
12
+ import Networking from '../../Network/RCTNetworking';
13
+ import HMRClient from '../../Utilities/HMRClient';
14
+ import LoadingView from '../../Utilities/LoadingView';
15
+ import getDevServer from './getDevServer';
16
+
17
+ declare var global: {globalEvalWithSourceUrl?: (string, string) => mixed, ...};
18
+
19
+ let pendingRequests = 0;
20
+
21
+ const cachedPromisesByUrl = new Map<string, Promise<void>>();
22
+
23
+ function asyncRequest(
24
+ url: string,
25
+ ): Promise<{body: string, headers: {[string]: string}}> {
26
+ let id = null;
27
+ let responseText = null;
28
+ let headers = null;
29
+ let dataListener;
30
+ let completeListener;
31
+ let responseListener;
32
+ let incrementalDataListener;
33
+ return new Promise<{body: string, headers: {[string]: string}}>(
34
+ (resolve, reject) => {
35
+ dataListener = Networking.addListener(
36
+ 'didReceiveNetworkData',
37
+ ([requestId, response]) => {
38
+ if (requestId === id) {
39
+ responseText = response;
40
+ }
41
+ },
42
+ );
43
+ incrementalDataListener = Networking.addListener(
44
+ 'didReceiveNetworkIncrementalData',
45
+ ([requestId, data]) => {
46
+ if (requestId === id) {
47
+ if (responseText != null) {
48
+ responseText += data;
49
+ } else {
50
+ responseText = data;
51
+ }
52
+ }
53
+ },
54
+ );
55
+ responseListener = Networking.addListener(
56
+ 'didReceiveNetworkResponse',
57
+ ([requestId, status, responseHeaders]) => {
58
+ if (requestId === id) {
59
+ headers = responseHeaders;
60
+ }
61
+ },
62
+ );
63
+ completeListener = Networking.addListener(
64
+ 'didCompleteNetworkResponse',
65
+ ([requestId, error]) => {
66
+ if (requestId === id) {
67
+ if (error) {
68
+ reject(error);
69
+ } else {
70
+ //$FlowFixMe[incompatible-call]
71
+ resolve({body: responseText, headers});
72
+ }
73
+ }
74
+ },
75
+ );
76
+ Networking.sendRequest(
77
+ 'GET',
78
+ 'asyncRequest',
79
+ url,
80
+ {},
81
+ '',
82
+ 'text',
83
+ true,
84
+ 0,
85
+ requestId => {
86
+ id = requestId;
87
+ },
88
+ true,
89
+ );
90
+ },
91
+ ).finally(() => {
92
+ dataListener?.remove();
93
+ completeListener?.remove();
94
+ responseListener?.remove();
95
+ incrementalDataListener?.remove();
96
+ });
97
+ }
98
+
99
+ function buildUrlForBundle(bundlePathAndQuery: string) {
100
+ const {url: serverUrl} = getDevServer();
101
+ return (
102
+ serverUrl.replace(/\/+$/, '') + '/' + bundlePathAndQuery.replace(/^\/+/, '')
103
+ );
104
+ }
105
+
106
+ module.exports = function (bundlePathAndQuery: string): Promise<void> {
107
+ const requestUrl = buildUrlForBundle(bundlePathAndQuery);
108
+ let loadPromise = cachedPromisesByUrl.get(requestUrl);
109
+
110
+ if (loadPromise) {
111
+ return loadPromise;
112
+ }
113
+ LoadingView.showMessage('Downloading...', 'load');
114
+ ++pendingRequests;
115
+
116
+ loadPromise = asyncRequest(requestUrl)
117
+ .then<void>(({body, headers}) => {
118
+ if (
119
+ headers['Content-Type'] != null &&
120
+ headers['Content-Type'].indexOf('application/json') >= 0
121
+ ) {
122
+ // Errors are returned as JSON.
123
+ throw new Error(
124
+ JSON.parse(body).message ||
125
+ `Unknown error fetching '${bundlePathAndQuery}'`,
126
+ );
127
+ }
128
+
129
+ HMRClient.registerBundle(requestUrl);
130
+
131
+ // Some engines do not support `sourceURL` as a comment. We expose a
132
+ // `globalEvalWithSourceUrl` function to handle updates in that case.
133
+ if (global.globalEvalWithSourceUrl) {
134
+ global.globalEvalWithSourceUrl(body, requestUrl);
135
+ } else {
136
+ // eslint-disable-next-line no-eval
137
+ eval(body);
138
+ }
139
+ })
140
+ .catch<void>(e => {
141
+ cachedPromisesByUrl.delete(requestUrl);
142
+ throw e;
143
+ })
144
+ .finally(() => {
145
+ if (!--pendingRequests) {
146
+ LoadingView.hide();
147
+ }
148
+ });
149
+
150
+ cachedPromisesByUrl.set(requestUrl, loadPromise);
151
+ return loadPromise;
152
+ };
@@ -31,6 +31,7 @@ export type SymbolicatedStackTrace = $ReadOnly<{
31
31
 
32
32
  async function symbolicateStackTrace(
33
33
  stack: Array<StackFrame>,
34
+ extraData?: mixed,
34
35
  ): Promise<SymbolicatedStackTrace> {
35
36
  const devServer = getDevServer();
36
37
  if (!devServer.bundleLoadedFromServer) {
@@ -41,7 +42,7 @@ async function symbolicateStackTrace(
41
42
  const fetch = global.fetch ?? require('../../Network/fetch');
42
43
  const response = await fetch(devServer.url + 'symbolicate', {
43
44
  method: 'POST',
44
- body: JSON.stringify({stack}),
45
+ body: JSON.stringify({stack, extraData}),
45
46
  });
46
47
  return await response.json();
47
48
  }
@@ -78,6 +78,19 @@ function reportException(
78
78
  message =
79
79
  e.jsEngine == null ? message : `${message}, js engine: ${e.jsEngine}`;
80
80
 
81
+ // $FlowFixMe[unclear-type]
82
+ const extraData: Object = {
83
+ // $FlowFixMe[incompatible-use] we can't define a type with a Symbol-keyed field in flow
84
+ ...e[decoratedExtraDataKey],
85
+ jsEngine: e.jsEngine,
86
+ rawStack: e.stack,
87
+ };
88
+ if (e.cause != null && typeof e.cause === 'object') {
89
+ extraData.stackSymbols = e.cause.stackSymbols;
90
+ extraData.stackReturnAddresses = e.cause.stackReturnAddresses;
91
+ extraData.stackElements = e.cause.stackElements;
92
+ }
93
+
81
94
  const data = preprocessException({
82
95
  message,
83
96
  originalMessage: message === originalMessage ? null : originalMessage,
@@ -87,12 +100,7 @@ function reportException(
87
100
  stack,
88
101
  id: currentExceptionID,
89
102
  isFatal,
90
- extraData: {
91
- // $FlowFixMe[incompatible-use] we can't define a type with a Symbol-keyed field in flow
92
- ...e[decoratedExtraDataKey],
93
- jsEngine: e.jsEngine,
94
- rawStack: e.stack,
95
- },
103
+ extraData,
96
104
  });
97
105
 
98
106
  if (reportToConsole) {
@@ -117,7 +125,8 @@ function reportException(
117
125
  }
118
126
  }
119
127
 
120
- declare var console: typeof console & {
128
+ declare var console: {
129
+ error: typeof console.error,
121
130
  _errorOriginal: typeof console.error,
122
131
  reportErrorsAsExceptions: boolean,
123
132
  ...
@@ -18,4 +18,16 @@ export type ExtendedError = Error &
18
18
  // Note: A field keyed by the Symbol ExceptionsManager.decoratedExtraDataKey is also read from ExtendedErrors.
19
19
  // This field isn't documented in the types as Flow does not support this usecase, but it's effectively:
20
20
  // [decoratedExtraDataKey]?: {[string]: mixed},
21
+
22
+ // Included for native errors
23
+ cause?: {
24
+ name: string,
25
+ message: string,
26
+ // $FlowFixMe[unclear-type]
27
+ stackElements?: $ReadOnlyArray<Object>,
28
+ // $FlowFixMe[unclear-type]
29
+ stackSymbols?: $ReadOnlyArray<Object>,
30
+ // $FlowFixMe[unclear-type]
31
+ stackReturnAddresses?: $ReadOnlyArray<Object>,
32
+ },
21
33
  };
@@ -11,7 +11,7 @@
11
11
 
12
12
  exports.version = {
13
13
  major: 0,
14
- minor: 72,
15
- patch: 6,
16
- prerelease: null,
14
+ minor: 73,
15
+ patch: 0,
16
+ prerelease: 'rc.1',
17
17
  };
@@ -39,8 +39,6 @@ exports.checkVersions = function checkVersions(): void {
39
39
  }
40
40
  };
41
41
 
42
- // Note: in OSS, the prerelease version is usually 0.Y.0-rc.W, so it is a string and not a number
43
- // Then we need to keep supporting that object shape.
44
42
  function _formatVersion(
45
43
  version:
46
44
  | (typeof Platform)['constants']['reactNativeVersion']