react-native-windows 0.76.2 → 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 (459) 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 +88 -57
  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 +370 -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/CompositionComponentView.idl +2 -1
  194. package/Microsoft.ReactNative/FBReactNativeSpec/FBReactNativeSpecJSI.h +5 -0
  195. package/Microsoft.ReactNative/Fabric/AbiComponentDescriptor.cpp +6 -3
  196. package/Microsoft.ReactNative/Fabric/AbiViewComponentDescriptor.cpp +1 -1
  197. package/Microsoft.ReactNative/Fabric/AbiViewProps.cpp +7 -0
  198. package/Microsoft.ReactNative/Fabric/AbiViewProps.h +2 -0
  199. package/Microsoft.ReactNative/Fabric/ComponentView.cpp +45 -50
  200. package/Microsoft.ReactNative/Fabric/ComponentView.h +14 -22
  201. package/Microsoft.ReactNative/Fabric/Composition/BorderPrimitive.cpp +943 -0
  202. package/Microsoft.ReactNative/Fabric/Composition/BorderPrimitive.h +80 -0
  203. package/Microsoft.ReactNative/Fabric/Composition/CompositionDynamicAutomationProvider.cpp +223 -21
  204. package/Microsoft.ReactNative/Fabric/Composition/CompositionDynamicAutomationProvider.h +19 -1
  205. package/Microsoft.ReactNative/Fabric/Composition/CompositionEventHandler.cpp +187 -6
  206. package/Microsoft.ReactNative/Fabric/Composition/CompositionEventHandler.h +10 -1
  207. package/Microsoft.ReactNative/Fabric/Composition/CompositionRootAutomationProvider.cpp +8 -32
  208. package/Microsoft.ReactNative/Fabric/Composition/CompositionViewComponentView.cpp +349 -929
  209. package/Microsoft.ReactNative/Fabric/Composition/CompositionViewComponentView.h +32 -29
  210. package/Microsoft.ReactNative/Fabric/Composition/ContentIslandComponentView.cpp +9 -2
  211. package/Microsoft.ReactNative/Fabric/Composition/ContentIslandComponentView.h +2 -1
  212. package/Microsoft.ReactNative/Fabric/Composition/DebuggingOverlayComponentView.cpp +1 -1
  213. package/Microsoft.ReactNative/Fabric/Composition/Modal/WindowsModalHostViewComponentView.cpp +181 -123
  214. package/Microsoft.ReactNative/Fabric/Composition/Modal/WindowsModalHostViewComponentView.h +16 -8
  215. package/Microsoft.ReactNative/Fabric/Composition/ReactCompositionViewComponentBuilder.cpp +99 -37
  216. package/Microsoft.ReactNative/Fabric/Composition/ReactCompositionViewComponentBuilder.h +25 -3
  217. package/Microsoft.ReactNative/Fabric/Composition/ReactNativeIsland.cpp +64 -3
  218. package/Microsoft.ReactNative/Fabric/Composition/ReactNativeIsland.h +12 -0
  219. package/Microsoft.ReactNative/Fabric/Composition/RootComponentView.cpp +51 -3
  220. package/Microsoft.ReactNative/Fabric/Composition/RootComponentView.h +3 -0
  221. package/Microsoft.ReactNative/Fabric/Composition/ScrollViewComponentView.cpp +18 -8
  222. package/Microsoft.ReactNative/Fabric/Composition/ScrollViewComponentView.h +3 -0
  223. package/Microsoft.ReactNative/Fabric/Composition/TextInput/WindowsTextInputComponentDescriptor.h +6 -8
  224. package/Microsoft.ReactNative/Fabric/Composition/TextInput/WindowsTextInputComponentView.cpp +56 -7
  225. package/Microsoft.ReactNative/Fabric/Composition/TextInput/WindowsTextInputComponentView.h +8 -0
  226. package/Microsoft.ReactNative/Fabric/Composition/TextInput/WindowsTextInputShadowNode.cpp +3 -2
  227. package/Microsoft.ReactNative/Fabric/Composition/Theme.cpp +9 -3
  228. package/Microsoft.ReactNative/Fabric/Composition/TooltipService.cpp +1 -1
  229. package/Microsoft.ReactNative/Fabric/Composition/UiaHelpers.cpp +35 -0
  230. package/Microsoft.ReactNative/Fabric/Composition/UiaHelpers.h +7 -0
  231. package/Microsoft.ReactNative/Fabric/Composition/UnimplementedNativeViewComponentView.cpp +1 -1
  232. package/Microsoft.ReactNative/Fabric/FabricUIManagerModule.cpp +12 -12
  233. package/Microsoft.ReactNative/Fabric/FabricUIManagerModule.h +4 -4
  234. package/Microsoft.ReactNative/Fabric/ImageRequest.cpp +4 -8
  235. package/Microsoft.ReactNative/Fabric/platform/react/renderer/components/view/HostPlatformViewProps.cpp +16 -15
  236. package/Microsoft.ReactNative/Fabric/platform/react/renderer/components/view/HostPlatformViewTraitsInitializer.h +1 -5
  237. package/Microsoft.ReactNative/IReactCompositionViewComponentBuilder.idl +26 -0
  238. package/Microsoft.ReactNative/IReactViewComponentBuilder.idl +1 -1
  239. package/Microsoft.ReactNative/Modules/AccessibilityInfoModule.cpp +15 -0
  240. package/Microsoft.ReactNative/Modules/AccessibilityInfoModule.h +9 -0
  241. package/Microsoft.ReactNative/ReactHost/ReactHost.cpp +20 -1
  242. package/Microsoft.ReactNative/ReactHost/ReactInstanceWin.cpp +11 -6
  243. package/Microsoft.ReactNative/ReactHost/ReactInstanceWin.h +1 -1
  244. package/Microsoft.ReactNative/ReactNativeIsland.idl +3 -2
  245. package/Microsoft.ReactNative/SynchronousEventBeat.cpp +14 -4
  246. package/Microsoft.ReactNative/SynchronousEventBeat.h +4 -2
  247. package/Microsoft.ReactNative/ViewProps.idl +2 -0
  248. package/Microsoft.ReactNative.Cxx/ApiLoaders/JSRuntimeApi.cpp +78 -0
  249. package/Microsoft.ReactNative.Cxx/ApiLoaders/JSRuntimeApi.h +51 -0
  250. package/Microsoft.ReactNative.Cxx/ApiLoaders/JSRuntimeApi.inc +48 -0
  251. package/Microsoft.ReactNative.Cxx/ApiLoaders/NodeApi.cpp +41 -0
  252. package/Microsoft.ReactNative.Cxx/ApiLoaders/NodeApi.h +127 -0
  253. package/Microsoft.ReactNative.Cxx/ApiLoaders/NodeApi.inc +125 -0
  254. package/Microsoft.ReactNative.Cxx/ApiLoaders/NodeApi_posix.cpp +16 -0
  255. package/Microsoft.ReactNative.Cxx/ApiLoaders/NodeApi_win.cpp +23 -0
  256. package/Microsoft.ReactNative.Cxx/ComponentView.Experimental.interop.h +14 -0
  257. package/Microsoft.ReactNative.Cxx/JSI/decorator.h +834 -0
  258. package/Microsoft.ReactNative.Cxx/JSI/instrumentation.h +117 -0
  259. package/Microsoft.ReactNative.Cxx/JSI/jsi-inl.h +366 -0
  260. package/Microsoft.ReactNative.Cxx/JSI/jsi.cpp +560 -0
  261. package/Microsoft.ReactNative.Cxx/JSI/jsi.h +1611 -0
  262. package/Microsoft.ReactNative.Cxx/JSI/threadsafe.h +79 -0
  263. package/Microsoft.ReactNative.Cxx/Microsoft.ReactNative.Cxx.vcxitems +7 -11
  264. package/Microsoft.ReactNative.Cxx/Microsoft.ReactNative.Cxx.vcxitems.filters +1 -1
  265. package/Microsoft.ReactNative.Cxx/NodeApiJsiRuntime.cpp +2878 -0
  266. package/Microsoft.ReactNative.Cxx/NodeApiJsiRuntime.h +36 -0
  267. package/Microsoft.ReactNative.Cxx/ReactCommon/CallInvoker.h +64 -0
  268. package/Microsoft.ReactNative.Cxx/ReactCommon/SchedulerPriority.h +22 -0
  269. package/{ReactCommon/TEMP_UntilReactCommonUpdate/react/nativemodule/core → Microsoft.ReactNative.Cxx}/ReactCommon/TurboModule.cpp +63 -63
  270. package/Microsoft.ReactNative.Cxx/ReactCommon/TurboModule.h +165 -0
  271. package/Microsoft.ReactNative.Cxx/ReactCommon/TurboModuleUtils.cpp +105 -0
  272. package/{ReactCommon/TEMP_UntilReactCommonUpdate/react/nativemodule/core → Microsoft.ReactNative.Cxx}/ReactCommon/TurboModuleUtils.h +57 -58
  273. package/Microsoft.ReactNative.Cxx/ReactCommon/react/bridging/AString.h +42 -0
  274. package/Microsoft.ReactNative.Cxx/ReactCommon/react/bridging/Array.h +151 -0
  275. package/{ReactCommon/TEMP_UntilReactCommonUpdate → Microsoft.ReactNative.Cxx/ReactCommon}/react/bridging/Base.h +177 -154
  276. package/Microsoft.ReactNative.Cxx/ReactCommon/react/bridging/Bool.h +25 -0
  277. package/Microsoft.ReactNative.Cxx/ReactCommon/react/bridging/Bridging.h +21 -0
  278. package/Microsoft.ReactNative.Cxx/ReactCommon/react/bridging/CallbackWrapper.h +67 -0
  279. package/Microsoft.ReactNative.Cxx/ReactCommon/react/bridging/Class.h +90 -0
  280. package/{ReactCommon/TEMP_UntilReactCommonUpdate → Microsoft.ReactNative.Cxx/ReactCommon}/react/bridging/Convert.h +170 -172
  281. package/Microsoft.ReactNative.Cxx/ReactCommon/react/bridging/Error.h +51 -0
  282. package/{ReactCommon/TEMP_UntilReactCommonUpdate → Microsoft.ReactNative.Cxx/ReactCommon}/react/bridging/EventEmitter.h +134 -136
  283. package/{ReactCommon/TEMP_UntilReactCommonUpdate → Microsoft.ReactNative.Cxx/ReactCommon}/react/bridging/Function.h +283 -283
  284. package/Microsoft.ReactNative.Cxx/ReactCommon/react/bridging/LongLivedObject.cpp +63 -0
  285. package/Microsoft.ReactNative.Cxx/ReactCommon/react/bridging/LongLivedObject.h +61 -0
  286. package/Microsoft.ReactNative.Cxx/ReactCommon/react/bridging/Object.h +93 -0
  287. package/Microsoft.ReactNative.Cxx/ReactCommon/react/bridging/Promise.h +104 -0
  288. package/Microsoft.ReactNative.Cxx/ReactCommon/react/bridging/Value.h +107 -0
  289. package/Microsoft.ReactNative.Cxx/ReactCommon/react/debug/flags.h +22 -0
  290. package/Microsoft.ReactNative.Cxx/ReactCommon/react/debug/react_native_assert.h +72 -0
  291. package/Microsoft.ReactNative.Cxx/node-api/js_native_api.h +553 -0
  292. package/Microsoft.ReactNative.Cxx/node-api/js_native_api_types.h +167 -0
  293. package/Microsoft.ReactNative.Cxx/node-api/js_runtime_api.h +186 -0
  294. package/Microsoft.ReactNative.Cxx/stubs/glog/logging.h +82 -0
  295. package/PropertySheets/Bundle.Common.targets +1 -1
  296. package/PropertySheets/Bundle.props +3 -0
  297. package/PropertySheets/Generated/PackageVersion.g.props +4 -4
  298. package/PropertySheets/ManagedCodeGen/Microsoft.ReactNative.Managed.CodeGen.targets +1 -1
  299. package/PropertySheets/OutputMSBuildProperties.targets +3 -1
  300. package/ReactCommon/ReactCommon.vcxproj +5 -0
  301. package/ReactCommon/TEMP_UntilReactCommonUpdate/cxxreact/JSExecutor.cpp +2 -3
  302. package/ReactCommon/TEMP_UntilReactCommonUpdate/jsi/jsi/test/testlib.cpp +61 -0
  303. package/ReactCommon/TEMP_UntilReactCommonUpdate/react/nativemodule/core/ReactCommon/TurboModule.h +26 -23
  304. package/ReactCommon/TEMP_UntilReactCommonUpdate/react/renderer/componentregistry/ComponentDescriptorRegistry.cpp +150 -0
  305. package/ReactCommon/TEMP_UntilReactCommonUpdate/react/renderer/components/view/AccessibilityPrimitives.h +252 -0
  306. package/ReactCommon/TEMP_UntilReactCommonUpdate/react/renderer/components/view/accessibilityPropsConversions.h +795 -0
  307. package/ReactCommon/TEMP_UntilReactCommonUpdate/react/renderer/runtimescheduler/SchedulerPriorityUtils.h +59 -0
  308. package/ReactCommon/TEMP_UntilReactCommonUpdate/react/runtime/ReactInstance.cpp +188 -39
  309. package/Scripts/Microsoft.ReactNative.Managed.CodeGen.targets +1 -1
  310. package/Scripts/Tfs/Layout-MSRN-Headers.ps1 +97 -62
  311. package/Shared/InspectorPackagerConnection.cpp +3 -6
  312. package/Shared/InspectorPackagerConnection.h +2 -2
  313. package/Shared/InstanceManager.h +1 -1
  314. package/Shared/OInstance.h +1 -1
  315. package/Shared/Shared.vcxitems +20 -2
  316. package/Shared/Shared.vcxitems.filters +4 -1
  317. package/Shared/TurboModuleManager.cpp +29 -4
  318. package/codegen/NativeAccessibilityInfoSpec.g.h +28 -9
  319. package/codegen/NativeAccessibilityManagerSpec.g.h +20 -13
  320. package/codegen/NativeActionSheetManagerSpec.g.h +5 -0
  321. package/codegen/NativeAlertManagerSpec.g.h +1 -0
  322. package/codegen/NativeAnimatedModuleSpec.g.h +1 -0
  323. package/codegen/NativeAnimatedTurboModuleSpec.g.h +1 -0
  324. package/codegen/NativeAppStateSpec.g.h +1 -0
  325. package/codegen/NativeAppThemeSpec.g.h +1 -0
  326. package/codegen/NativeAppearanceSpec.g.h +1 -0
  327. package/codegen/NativeBlobModuleSpec.g.h +1 -0
  328. package/codegen/NativeBugReportingSpec.g.h +1 -0
  329. package/codegen/NativeClipboardSpec.g.h +1 -0
  330. package/codegen/NativeDOMSpec.g.h +1 -0
  331. package/codegen/NativeDevLoadingViewSpec.g.h +1 -0
  332. package/codegen/NativeDevMenuSpec.g.h +1 -0
  333. package/codegen/NativeDevSettingsSpec.g.h +1 -0
  334. package/codegen/NativeDeviceEventManagerSpec.g.h +1 -0
  335. package/codegen/NativeDeviceInfoSpec.g.h +1 -0
  336. package/codegen/NativeDialogManagerAndroidSpec.g.h +1 -0
  337. package/codegen/NativeDialogManagerWindowsSpec.g.h +1 -0
  338. package/codegen/NativeExceptionsManagerSpec.g.h +2 -7
  339. package/codegen/NativeFileReaderModuleSpec.g.h +1 -0
  340. package/codegen/NativeFrameRateLoggerSpec.g.h +1 -0
  341. package/codegen/NativeHeadlessJsTaskSupportSpec.g.h +1 -0
  342. package/codegen/NativeI18nManagerSpec.g.h +1 -0
  343. package/codegen/NativeIdleCallbacksSpec.g.h +1 -0
  344. package/codegen/NativeImageEditorSpec.g.h +1 -0
  345. package/codegen/NativeImageLoaderAndroidSpec.g.h +1 -0
  346. package/codegen/NativeImageLoaderIOSSpec.g.h +1 -0
  347. package/codegen/NativeImageStoreAndroidSpec.g.h +1 -0
  348. package/codegen/NativeImageStoreIOSSpec.g.h +1 -0
  349. package/codegen/NativeIntentAndroidSpec.g.h +1 -0
  350. package/codegen/NativeIntersectionObserverSpec.g.h +3 -0
  351. package/codegen/NativeJSCHeapCaptureSpec.g.h +1 -0
  352. package/codegen/NativeJSCSamplingProfilerSpec.g.h +1 -0
  353. package/codegen/NativeKeyboardObserverSpec.g.h +1 -0
  354. package/codegen/NativeLinkingManagerSpec.g.h +1 -0
  355. package/codegen/NativeLogBoxSpec.g.h +1 -0
  356. package/codegen/NativeMicrotasksSpec.g.h +1 -0
  357. package/codegen/NativeModalManagerSpec.g.h +1 -0
  358. package/codegen/NativeMutationObserverSpec.g.h +1 -0
  359. package/codegen/NativeNetworkingAndroidSpec.g.h +1 -0
  360. package/codegen/NativeNetworkingIOSSpec.g.h +1 -0
  361. package/codegen/NativePerformanceSpec.g.h +128 -3
  362. package/codegen/NativePermissionsAndroidSpec.g.h +1 -0
  363. package/codegen/NativePlatformConstantsAndroidSpec.g.h +1 -0
  364. package/codegen/NativePlatformConstantsIOSSpec.g.h +1 -0
  365. package/codegen/NativePlatformConstantsWindowsSpec.g.h +1 -0
  366. package/codegen/NativePushNotificationManagerIOSSpec.g.h +1 -0
  367. package/codegen/NativeReactDevToolsRuntimeSettingsModuleSpec.g.h +67 -0
  368. package/codegen/NativeReactDevToolsSettingsManagerSpec.g.h +41 -0
  369. package/codegen/NativeReactNativeFeatureFlagsSpec.g.h +126 -137
  370. package/codegen/NativeRedBoxSpec.g.h +1 -0
  371. package/codegen/NativeSampleTurboModuleSpec.g.h +1 -0
  372. package/codegen/NativeSegmentFetcherSpec.g.h +1 -0
  373. package/codegen/NativeSettingsManagerSpec.g.h +1 -0
  374. package/codegen/NativeShareModuleSpec.g.h +1 -0
  375. package/codegen/NativeSoundManagerSpec.g.h +1 -0
  376. package/codegen/NativeSourceCodeSpec.g.h +1 -0
  377. package/codegen/NativeStatusBarManagerAndroidSpec.g.h +1 -0
  378. package/codegen/NativeStatusBarManagerIOSSpec.g.h +1 -0
  379. package/codegen/NativeTimingSpec.g.h +1 -0
  380. package/codegen/NativeToastAndroidSpec.g.h +1 -0
  381. package/codegen/NativeUIManagerSpec.g.h +1 -0
  382. package/codegen/NativeVibrationSpec.g.h +1 -0
  383. package/codegen/NativeWebSocketModuleSpec.g.h +1 -0
  384. package/codegen/react/components/rnwcore/ComponentDescriptors.h +0 -1
  385. package/codegen/react/components/rnwcore/Props.cpp +1 -0
  386. package/codegen/react/components/rnwcore/Props.h +1 -0
  387. package/codegen/react/components/rnwcore/ShadowNodes.cpp +0 -1
  388. package/codegen/react/components/rnwcore/ShadowNodes.h +0 -11
  389. package/codegen/react/components/rnwcore/States.h +0 -12
  390. package/codegen/rnwcoreJSI-generated.cpp +219 -186
  391. package/codegen/rnwcoreJSI.h +942 -511
  392. package/index.js +10 -3
  393. package/index.windows.js +10 -3
  394. package/jest/setup.js +36 -1
  395. package/just-task.js +15 -0
  396. package/package.json +22 -22
  397. package/src/private/animated/NativeAnimatedHelper.js +18 -16
  398. package/src/private/animated/useAnimatedPropsMemo.js +348 -0
  399. package/src/private/animated/useAnimatedPropsMemo.windows.js +356 -0
  400. package/src/private/components/HScrollViewNativeComponents.js +1 -27
  401. package/src/private/components/SafeAreaView_INTERNAL_DO_NOT_USE.js +11 -8
  402. package/src/private/components/VScrollViewNativeComponents.js +2 -25
  403. package/src/private/debugging/ReactDevToolsSettingsManager.android.js +20 -0
  404. package/src/private/debugging/ReactDevToolsSettingsManager.ios.js +30 -0
  405. package/src/private/debugging/ReactDevToolsSettingsManager.windows.js +20 -0
  406. package/src/private/{fusebox → debugging}/setUpFuseboxReactDevToolsDispatcher.js +6 -0
  407. package/src/private/devmenu/DevMenu.d.ts +20 -0
  408. package/src/private/devmenu/DevMenu.js +31 -0
  409. package/src/private/featureflags/ReactNativeFeatureFlags.js +95 -86
  410. package/src/private/featureflags/ReactNativeFeatureFlagsBase.js +8 -2
  411. package/src/private/featureflags/specs/NativeReactNativeFeatureFlags.js +17 -19
  412. package/src/private/fusebox/specs/NativeReactDevToolsRuntimeSettingsModule.js +34 -0
  413. package/src/private/setup/setUpDOM.js +14 -6
  414. package/src/private/setup/setUpMutationObserver.js +5 -0
  415. package/src/private/specs/components/AndroidHorizontalScrollContentViewNativeComponent.js +1 -0
  416. package/src/private/specs/components/RCTModalHostViewNativeComponent.js +8 -0
  417. package/src/private/specs/modules/NativeAccessibilityInfo.js +9 -0
  418. package/src/private/specs/modules/NativeAccessibilityManager.js +4 -0
  419. package/src/private/specs/modules/NativeActionSheetManager.js +2 -0
  420. package/src/private/specs/modules/NativeAppearance.js +4 -10
  421. package/src/private/specs/modules/NativeExceptionsManager.js +0 -12
  422. package/src/private/specs/modules/{NativeDevToolsSettingsManager.js → NativeReactDevToolsSettingsManager.js} +3 -5
  423. package/src/private/webapis/dom/geometry/DOMRect.js +2 -2
  424. package/src/private/webapis/dom/geometry/DOMRectReadOnly.js +2 -2
  425. package/src/private/webapis/dom/nodes/ReactNativeElement.js +2 -3
  426. package/src/private/webapis/intersectionobserver/IntersectionObserver.js +102 -11
  427. package/src/private/webapis/intersectionobserver/IntersectionObserverEntry.js +26 -0
  428. package/src/private/webapis/intersectionobserver/IntersectionObserverManager.js +1 -0
  429. package/src/private/webapis/intersectionobserver/specs/NativeIntersectionObserver.js +1 -0
  430. package/src/private/webapis/intersectionobserver/specs/__mocks__/NativeIntersectionObserver.js +9 -0
  431. package/src/private/webapis/performance/EventTiming.js +13 -8
  432. package/src/private/webapis/performance/Performance.js +66 -73
  433. package/src/private/webapis/performance/PerformanceEntry.js +2 -5
  434. package/src/private/webapis/performance/PerformanceObserver.js +65 -164
  435. package/src/private/webapis/performance/RawPerformanceEntry.js +1 -1
  436. package/src/private/webapis/performance/UserTiming.js +11 -7
  437. package/src/private/webapis/performance/Utilities.js +18 -0
  438. package/src/private/webapis/performance/specs/NativePerformance.js +71 -2
  439. package/src/private/webapis/performance/specs/__mocks__/NativePerformanceMock.js +267 -0
  440. package/templates/cpp-lib/template.config.js +13 -7
  441. package/templates/templateUtils.js +10 -0
  442. package/types/index.d.ts +1 -1
  443. package/types/public/ReactNativeTypes.d.ts +4 -8
  444. package/Libraries/DevToolsSettings/DevToolsSettingsManager.android.js +0 -35
  445. package/Libraries/DevToolsSettings/DevToolsSettingsManager.d.ts +0 -20
  446. package/Libraries/DevToolsSettings/DevToolsSettingsManager.ios.js +0 -49
  447. package/Libraries/DevToolsSettings/DevToolsSettingsManager.windows.js +0 -35
  448. package/Libraries/DevToolsSettings/NativeDevToolsSettingsManager.js +0 -13
  449. package/Libraries/ReactNative/ReactFabricInternals.js +0 -17
  450. package/ReactCommon/TEMP_UntilReactCommonUpdate/react/bridging/CallbackWrapper.h +0 -101
  451. package/ReactCommon/TEMP_UntilReactCommonUpdate/react/renderer/components/scrollview/ScrollViewProps.cpp +0 -569
  452. package/codegen/NativeDevToolsSettingsManagerSpec.g.h +0 -52
  453. package/codegen/NativePerformanceObserverSpec.g.h +0 -130
  454. package/src/private/components/useSyncOnScroll.js +0 -48
  455. package/src/private/webapis/performance/specs/NativePerformanceObserver.js +0 -61
  456. package/src/private/webapis/performance/specs/__mocks__/NativePerformance.js +0 -67
  457. package/src/private/webapis/performance/specs/__mocks__/NativePerformanceObserver.js +0 -127
  458. package/types/experimental.d.ts +0 -59
  459. /package/src/private/{fusebox → debugging}/FuseboxSessionObserver.js +0 -0
@@ -218,7 +218,6 @@ const validAttributesForNonEventProps = {
218
218
  testID: true,
219
219
  backgroundColor: {process: require('../StyleSheet/processColor').default},
220
220
  backfaceVisibility: true,
221
- cursor: true,
222
221
  opacity: true,
223
222
  shadowColor: {process: require('../StyleSheet/processColor').default},
224
223
  shadowOffset: {diff: require('../Utilities/differ/sizesDiffer')},
@@ -237,21 +236,19 @@ const validAttributesForNonEventProps = {
237
236
  role: true,
238
237
  borderRadius: true,
239
238
  borderColor: {process: require('../StyleSheet/processColor').default},
240
- borderBlockColor: {process: require('../StyleSheet/processColor').default},
241
239
  borderCurve: true,
242
240
  borderWidth: true,
243
- borderBlockWidth: true,
244
241
  borderStyle: true,
245
242
  hitSlop: {diff: require('../Utilities/differ/insetsDiffer')},
246
243
  collapsable: true,
247
244
  collapsableChildren: true,
248
- filter: {
245
+ experimental_filter: {
249
246
  process: require('../StyleSheet/processFilter').default,
250
247
  },
251
248
  boxShadow: {
252
249
  process: require('../StyleSheet/processBoxShadow').default,
253
250
  },
254
- experimental_mixBlendMode: true,
251
+ mixBlendMode: true,
255
252
  isolation: true,
256
253
 
257
254
  borderTopWidth: true,
@@ -263,15 +260,9 @@ const validAttributesForNonEventProps = {
263
260
  borderLeftWidth: true,
264
261
  borderLeftColor: {process: require('../StyleSheet/processColor').default},
265
262
  borderStartWidth: true,
266
- borderBlockStartWidth: true,
267
263
  borderStartColor: {process: require('../StyleSheet/processColor').default},
268
- borderBlockStartColor: {
269
- process: require('../StyleSheet/processColor').default,
270
- },
271
264
  borderEndWidth: true,
272
- borderBlockEndWidth: true,
273
265
  borderEndColor: {process: require('../StyleSheet/processColor').default},
274
- borderBlockEndColor: {process: require('../StyleSheet/processColor').default},
275
266
 
276
267
  borderTopLeftRadius: true,
277
268
  borderTopRightRadius: true,
@@ -368,6 +359,7 @@ const validAttributesForNonEventProps = {
368
359
  alignContent: true,
369
360
  position: true,
370
361
  aspectRatio: true,
362
+ boxSizing: true,
371
363
 
372
364
  // Also declared as ViewProps
373
365
  // overflow: true,
@@ -48,7 +48,7 @@ export function setRuntimeConfigProvider(
48
48
  * The supplied `viewConfigProvider` may or may not be invoked and utilized,
49
49
  * depending on how `setRuntimeConfigProvider` is configured.
50
50
  */
51
- export function get<Config>(
51
+ export function get<Config: {...}>(
52
52
  name: string,
53
53
  viewConfigProvider: () => PartialViewConfig,
54
54
  ): HostComponent<Config> {
@@ -121,10 +121,10 @@ export function get<Config>(
121
121
  * that the return value of this is not `HostComponent` because the returned
122
122
  * component instance is not guaranteed to have native methods.
123
123
  */
124
- export function getWithFallback_DEPRECATED<Config>(
124
+ export function getWithFallback_DEPRECATED<Config: {...}>(
125
125
  name: string,
126
126
  viewConfigProvider: () => PartialViewConfig,
127
- ): React.AbstractComponent<Config> {
127
+ ): React.ComponentType<Config> {
128
128
  if (getRuntimeConfig == null) {
129
129
  // `getRuntimeConfig == null` when static view configs are disabled
130
130
  // If `setRuntimeConfigProvider` is not configured, use native reflection.
@@ -9,7 +9,6 @@
9
9
  */
10
10
 
11
11
  import {type ViewConfig} from '../Renderer/shims/ReactNativeTypes';
12
- import {isIgnored} from './ViewConfigIgnore';
13
12
 
14
13
  export type Difference =
15
14
  | {
@@ -5,20 +5,57 @@
5
5
  * LICENSE file in the root directory of this source tree.
6
6
  *
7
7
  * @format
8
+ * @flow strict-local
8
9
  */
9
10
 
10
11
  'use strict';
11
12
 
12
13
  const XMLHttpRequest = require('./XMLHttpRequest');
14
+ // $FlowFixMe[method-unbinding]
13
15
  const originalXHROpen = XMLHttpRequest.prototype.open;
16
+ // $FlowFixMe[method-unbinding]
14
17
  const originalXHRSend = XMLHttpRequest.prototype.send;
18
+ // $FlowFixMe[method-unbinding]
15
19
  const originalXHRSetRequestHeader = XMLHttpRequest.prototype.setRequestHeader;
16
20
 
17
- let openCallback;
18
- let sendCallback;
19
- let requestHeaderCallback;
20
- let headerReceivedCallback;
21
- let responseCallback;
21
+ type XHRInterceptorOpenCallback = (
22
+ method: string,
23
+ url: string,
24
+ request: XMLHttpRequest,
25
+ ) => void;
26
+
27
+ type XHRInterceptorSendCallback = (
28
+ data: string,
29
+ request: XMLHttpRequest,
30
+ ) => void;
31
+
32
+ type XHRInterceptorRequestHeaderCallback = (
33
+ header: string,
34
+ value: string,
35
+ request: XMLHttpRequest,
36
+ ) => void;
37
+
38
+ type XHRInterceptorHeaderReceivedCallback = (
39
+ responseContentType: string | void,
40
+ responseSize: number | void,
41
+ allHeaders: string,
42
+ request: XMLHttpRequest,
43
+ ) => void;
44
+
45
+ type XHRInterceptorResponseCallback = (
46
+ status: number,
47
+ timeout: number,
48
+ response: string,
49
+ responseURL: string,
50
+ responseType: string,
51
+ request: XMLHttpRequest,
52
+ ) => void;
53
+
54
+ let openCallback: XHRInterceptorOpenCallback | null;
55
+ let sendCallback: XHRInterceptorSendCallback | null;
56
+ let requestHeaderCallback: XHRInterceptorRequestHeaderCallback | null;
57
+ let headerReceivedCallback: XHRInterceptorHeaderReceivedCallback | null;
58
+ let responseCallback: XHRInterceptorResponseCallback | null;
22
59
 
23
60
  let isInterceptorEnabled = false;
24
61
 
@@ -33,39 +70,39 @@ const XHRInterceptor = {
33
70
  /**
34
71
  * Invoked before XMLHttpRequest.open(...) is called.
35
72
  */
36
- setOpenCallback(callback) {
73
+ setOpenCallback(callback: XHRInterceptorOpenCallback) {
37
74
  openCallback = callback;
38
75
  },
39
76
 
40
77
  /**
41
78
  * Invoked before XMLHttpRequest.send(...) is called.
42
79
  */
43
- setSendCallback(callback) {
80
+ setSendCallback(callback: XHRInterceptorSendCallback) {
44
81
  sendCallback = callback;
45
82
  },
46
83
 
47
84
  /**
48
85
  * Invoked after xhr's readyState becomes xhr.HEADERS_RECEIVED.
49
86
  */
50
- setHeaderReceivedCallback(callback) {
87
+ setHeaderReceivedCallback(callback: XHRInterceptorHeaderReceivedCallback) {
51
88
  headerReceivedCallback = callback;
52
89
  },
53
90
 
54
91
  /**
55
92
  * Invoked after xhr's readyState becomes xhr.DONE.
56
93
  */
57
- setResponseCallback(callback) {
94
+ setResponseCallback(callback: XHRInterceptorResponseCallback) {
58
95
  responseCallback = callback;
59
96
  },
60
97
 
61
98
  /**
62
99
  * Invoked before XMLHttpRequest.setRequestHeader(...) is called.
63
100
  */
64
- setRequestHeaderCallback(callback) {
101
+ setRequestHeaderCallback(callback: XHRInterceptorRequestHeaderCallback) {
65
102
  requestHeaderCallback = callback;
66
103
  },
67
104
 
68
- isInterceptorEnabled() {
105
+ isInterceptorEnabled(): boolean {
69
106
  return isInterceptorEnabled;
70
107
  },
71
108
 
@@ -75,7 +112,9 @@ const XHRInterceptor = {
75
112
  }
76
113
  // Override `open` method for all XHR requests to intercept the request
77
114
  // method and url, then pass them through the `openCallback`.
78
- XMLHttpRequest.prototype.open = function (method, url) {
115
+ // $FlowFixMe[cannot-write]
116
+ // $FlowFixMe[missing-this-annot]
117
+ XMLHttpRequest.prototype.open = function (method: string, url: string) {
79
118
  if (openCallback) {
80
119
  openCallback(method, url, this);
81
120
  }
@@ -84,7 +123,12 @@ const XHRInterceptor = {
84
123
 
85
124
  // Override `setRequestHeader` method for all XHR requests to intercept
86
125
  // the request headers, then pass them through the `requestHeaderCallback`.
87
- XMLHttpRequest.prototype.setRequestHeader = function (header, value) {
126
+ // $FlowFixMe[cannot-write]
127
+ // $FlowFixMe[missing-this-annot]
128
+ XMLHttpRequest.prototype.setRequestHeader = function (
129
+ header: string,
130
+ value: string,
131
+ ) {
88
132
  if (requestHeaderCallback) {
89
133
  requestHeaderCallback(header, value, this);
90
134
  }
@@ -93,7 +137,9 @@ const XHRInterceptor = {
93
137
 
94
138
  // Override `send` method of all XHR requests to intercept the data sent,
95
139
  // register listeners to intercept the response, and invoke the callbacks.
96
- XMLHttpRequest.prototype.send = function (data) {
140
+ // $FlowFixMe[cannot-write]
141
+ // $FlowFixMe[missing-this-annot]
142
+ XMLHttpRequest.prototype.send = function (data: string) {
97
143
  if (sendCallback) {
98
144
  sendCallback(data, this);
99
145
  }
@@ -151,8 +197,11 @@ const XHRInterceptor = {
151
197
  return;
152
198
  }
153
199
  isInterceptorEnabled = false;
200
+ // $FlowFixMe[cannot-write]
154
201
  XMLHttpRequest.prototype.send = originalXHRSend;
202
+ // $FlowFixMe[cannot-write]
155
203
  XMLHttpRequest.prototype.open = originalXHROpen;
204
+ // $FlowFixMe[cannot-write]
156
205
  XMLHttpRequest.prototype.setRequestHeader = originalXHRSetRequestHeader;
157
206
  responseCallback = null;
158
207
  openCallback = null;
@@ -22,6 +22,7 @@ const base64 = require('base64-js');
22
22
  const invariant = require('invariant');
23
23
 
24
24
  const DEBUG_NETWORK_SEND_DELAY: false = false; // Set to a number of milliseconds when debugging
25
+ const LABEL_FOR_MISSING_URL_FOR_PROFILING = 'Unknown URL';
25
26
 
26
27
  export type NativeResponseType = 'base64' | 'blob' | 'text';
27
28
  export type ResponseType =
@@ -101,6 +102,7 @@ class XMLHttpRequest extends (EventTarget(...XHR_EVENTS): typeof EventTarget) {
101
102
  static DONE: number = DONE;
102
103
 
103
104
  static _interceptor: ?XHRInterceptor = null;
105
+ static _profiling: boolean = false;
104
106
 
105
107
  UNSENT: number = UNSENT;
106
108
  OPENED: number = OPENED;
@@ -144,12 +146,17 @@ class XMLHttpRequest extends (EventTarget(...XHR_EVENTS): typeof EventTarget) {
144
146
  _timedOut: boolean = false;
145
147
  _trackingName: string = 'unknown';
146
148
  _incrementalEvents: boolean = false;
149
+ _startTime: ?number = null;
147
150
  _performanceLogger: IPerformanceLogger = GlobalPerformanceLogger;
148
151
 
149
152
  static setInterceptor(interceptor: ?XHRInterceptor) {
150
153
  XMLHttpRequest._interceptor = interceptor;
151
154
  }
152
155
 
156
+ static enableProfiling(enableProfiling: boolean): void {
157
+ XMLHttpRequest._profiling = enableProfiling;
158
+ }
159
+
153
160
  constructor() {
154
161
  super();
155
162
  this._reset();
@@ -356,6 +363,11 @@ class XMLHttpRequest extends (EventTarget(...XHR_EVENTS): typeof EventTarget) {
356
363
  this._response += responseText;
357
364
  }
358
365
 
366
+ if (XMLHttpRequest._profiling) {
367
+ performance.mark(
368
+ 'Track:XMLHttpRequest:Incremental Data: ' + this._getMeasureURL(),
369
+ );
370
+ }
359
371
  XMLHttpRequest._interceptor &&
360
372
  XMLHttpRequest._interceptor.dataReceived(requestId, responseText);
361
373
 
@@ -398,7 +410,13 @@ class XMLHttpRequest extends (EventTarget(...XHR_EVENTS): typeof EventTarget) {
398
410
  this._clearSubscriptions();
399
411
  this._requestId = null;
400
412
  this.setReadyState(this.DONE);
401
-
413
+ if (XMLHttpRequest._profiling && this._startTime != null) {
414
+ const start = this._startTime;
415
+ performance.measure('Track:XMLHttpRequest:' + this._getMeasureURL(), {
416
+ start,
417
+ end: performance.now(),
418
+ });
419
+ }
402
420
  if (error) {
403
421
  XMLHttpRequest._interceptor &&
404
422
  XMLHttpRequest._interceptor.loadingFailed(requestId, error);
@@ -572,6 +590,7 @@ class XMLHttpRequest extends (EventTarget(...XHR_EVENTS): typeof EventTarget) {
572
590
  this._trackingName !== 'unknown' ? this._trackingName : this._url;
573
591
  this._perfKey = 'network_XMLHttpRequest_' + String(friendlyName);
574
592
  this._performanceLogger.startTimespan(this._perfKey);
593
+ this._startTime = performance.now();
575
594
  invariant(
576
595
  this._method,
577
596
  'XMLHttpRequest method needs to be defined (%s).',
@@ -668,6 +687,12 @@ class XMLHttpRequest extends (EventTarget(...XHR_EVENTS): typeof EventTarget) {
668
687
  }
669
688
  super.addEventListener(type, listener);
670
689
  }
690
+
691
+ _getMeasureURL(): string {
692
+ return (
693
+ this._trackingName ?? this._url ?? LABEL_FOR_MISSING_URL_FOR_PROFILING
694
+ );
695
+ }
671
696
  }
672
697
 
673
698
  module.exports = XMLHttpRequest;
@@ -40,8 +40,8 @@ const HermesBadge = (): Node => {
40
40
  const styles = StyleSheet.create({
41
41
  badge: {
42
42
  position: 'absolute',
43
- top: 8,
44
43
  right: 12,
44
+ bottom: 8,
45
45
  },
46
46
  badgeText: {
47
47
  fontSize: 14,
@@ -66,11 +66,58 @@ export interface PermissionsAndroidStatic {
66
66
  /**
67
67
  * A list of permission results that are returned
68
68
  */
69
- RESULTS: {[key: string]: PermissionStatus};
69
+ RESULTS: {
70
+ [key in 'GRANTED' | 'DENIED' | 'NEVER_ASK_AGAIN']: PermissionStatus;
71
+ };
70
72
  /**
71
73
  * A list of specified "dangerous" permissions that require prompting the user
72
74
  */
73
- PERMISSIONS: {[key: string]: Permission};
75
+ PERMISSIONS: {
76
+ [key in
77
+ | 'READ_CALENDAR'
78
+ | 'WRITE_CALENDAR'
79
+ | 'CAMERA'
80
+ | 'READ_CONTACTS'
81
+ | 'WRITE_CONTACTS'
82
+ | 'GET_ACCOUNTS'
83
+ | 'ACCESS_FINE_LOCATION'
84
+ | 'ACCESS_COARSE_LOCATION'
85
+ | 'ACCESS_BACKGROUND_LOCATION'
86
+ | 'RECORD_AUDIO'
87
+ | 'READ_PHONE_STATE'
88
+ | 'CALL_PHONE'
89
+ | 'READ_CALL_LOG'
90
+ | 'WRITE_CALL_LOG'
91
+ | 'ADD_VOICEMAIL'
92
+ | 'READ_VOICEMAIL'
93
+ | 'WRITE_VOICEMAIL'
94
+ | 'USE_SIP'
95
+ | 'PROCESS_OUTGOING_CALLS'
96
+ | 'BODY_SENSORS'
97
+ | 'BODY_SENSORS_BACKGROUND'
98
+ | 'SEND_SMS'
99
+ | 'RECEIVE_SMS'
100
+ | 'READ_SMS'
101
+ | 'RECEIVE_WAP_PUSH'
102
+ | 'RECEIVE_MMS'
103
+ | 'READ_EXTERNAL_STORAGE'
104
+ | 'READ_MEDIA_IMAGES'
105
+ | 'READ_MEDIA_VIDEO'
106
+ | 'READ_MEDIA_AUDIO'
107
+ | 'READ_MEDIA_VISUAL_USER_SELECTED'
108
+ | 'WRITE_EXTERNAL_STORAGE'
109
+ | 'BLUETOOTH_CONNECT'
110
+ | 'BLUETOOTH_SCAN'
111
+ | 'BLUETOOTH_ADVERTISE'
112
+ | 'ACCESS_MEDIA_LOCATION'
113
+ | 'ACCEPT_HANDOVER'
114
+ | 'ACTIVITY_RECOGNITION'
115
+ | 'ANSWER_PHONE_CALLS'
116
+ | 'READ_PHONE_NUMBERS'
117
+ | 'UWB_RANGING'
118
+ | 'POST_NOTIFICATIONS'
119
+ | 'NEARBY_WIFI_DEVICES']: Permission;
120
+ };
74
121
  new (): PermissionsAndroidStatic;
75
122
  /**
76
123
  * @deprecated Use check instead
@@ -88,7 +88,7 @@ const PERMISSIONS = Object.freeze({
88
88
  */
89
89
 
90
90
  class PermissionsAndroid {
91
- PERMISSIONS: {|
91
+ PERMISSIONS: $ReadOnly<{|
92
92
  ACCEPT_HANDOVER: string,
93
93
  ACCESS_BACKGROUND_LOCATION: string,
94
94
  ACCESS_COARSE_LOCATION: string,
@@ -132,12 +132,12 @@ class PermissionsAndroid {
132
132
  WRITE_CALL_LOG: string,
133
133
  WRITE_CONTACTS: string,
134
134
  WRITE_EXTERNAL_STORAGE: string,
135
- |} = PERMISSIONS;
136
- RESULTS: {|
135
+ |}> = PERMISSIONS;
136
+ RESULTS: $ReadOnly<{|
137
137
  DENIED: 'denied',
138
138
  GRANTED: 'granted',
139
139
  NEVER_ASK_AGAIN: 'never_ask_again',
140
- |} = PERMISSION_REQUEST_RESULT;
140
+ |}> = PERMISSION_REQUEST_RESULT;
141
141
 
142
142
  /**
143
143
  * DEPRECATED - use check
@@ -12,6 +12,8 @@ import Platform from '../Utilities/Platform';
12
12
 
13
13
  let isEnabled = false;
14
14
 
15
+ /* $FlowFixMe[incompatible-type] Error found due to incomplete typing of
16
+ * Platform.flow.js */
15
17
  if (Platform.OS === 'web') {
16
18
  const canUseDOM = Boolean(
17
19
  typeof window !== 'undefined' &&
@@ -8,7 +8,7 @@
8
8
  * @format
9
9
  */
10
10
 
11
- import type {HostComponent} from '../Renderer/shims/ReactNativeTypes';
11
+ import type {HostInstance} from '../Renderer/shims/ReactNativeTypes';
12
12
  import type {
13
13
  BlurEvent,
14
14
  FocusEvent,
@@ -26,7 +26,6 @@ import {isHoverEnabled} from './HoverState';
26
26
  import PressabilityPerformanceEventEmitter from './PressabilityPerformanceEventEmitter.js';
27
27
  import {type PressabilityTouchSignal as TouchSignal} from './PressabilityTypes.js';
28
28
  import invariant from 'invariant';
29
- import * as React from 'react';
30
29
 
31
30
  export type PressabilityConfig = $ReadOnly<{|
32
31
  /**
@@ -378,7 +377,7 @@ export default class Pressability {
378
377
  _longPressDelayTimeout: ?TimeoutID = null;
379
378
  _pressDelayTimeout: ?TimeoutID = null;
380
379
  _pressOutDelayTimeout: ?TimeoutID = null;
381
- _responderID: ?number | React.ElementRef<HostComponent<mixed>> = null;
380
+ _responderID: ?number | HostInstance = null;
382
381
  _responderRegion: ?$ReadOnly<{|
383
382
  bottom: number,
384
383
  left: number,
@@ -8,7 +8,7 @@
8
8
  * @format
9
9
  */
10
10
 
11
- import type {HostComponent} from '../Renderer/shims/ReactNativeTypes';
11
+ import type {HostInstance} from '../Renderer/shims/ReactNativeTypes';
12
12
  import type {
13
13
  BlurEvent,
14
14
  FocusEvent,
@@ -27,7 +27,6 @@ import {isHoverEnabled} from './HoverState';
27
27
  import PressabilityPerformanceEventEmitter from './PressabilityPerformanceEventEmitter.js';
28
28
  import {type PressabilityTouchSignal as TouchSignal} from './PressabilityTypes.js';
29
29
  import invariant from 'invariant';
30
- import * as React from 'react';
31
30
 
32
31
  export type PressabilityConfig = $ReadOnly<{|
33
32
  /**
@@ -409,7 +408,7 @@ export default class Pressability {
409
408
  _longPressDelayTimeout: ?TimeoutID = null;
410
409
  _pressDelayTimeout: ?TimeoutID = null;
411
410
  _pressOutDelayTimeout: ?TimeoutID = null;
412
- _responderID: ?number | React.ElementRef<HostComponent<mixed>> = null;
411
+ _responderID: ?number | HostInstance = null;
413
412
  _responderRegion: ?$ReadOnly<{|
414
413
  bottom: number,
415
414
  left: number,
@@ -14,6 +14,9 @@ import Pressability, {
14
14
  } from './Pressability';
15
15
  import {useEffect, useRef} from 'react';
16
16
 
17
+ declare function usePressability(config: PressabilityConfig): EventHandlers;
18
+ declare function usePressability(config: null | void): null | EventHandlers;
19
+
17
20
  /**
18
21
  * Creates a persistent instance of `Pressability` that automatically configures
19
22
  * itself and resets. Accepts null `config` to support lazy initialization. Once
@@ -28,7 +31,7 @@ import {useEffect, useRef} from 'react';
28
31
  */
29
32
  export default function usePressability(
30
33
  config: ?PressabilityConfig,
31
- ): ?EventHandlers {
34
+ ): null | EventHandlers {
32
35
  const pressabilityRef = useRef<?Pressability>(null);
33
36
  if (config != null && pressabilityRef.current == null) {
34
37
  pressabilityRef.current = new Pressability(config);
@@ -24,7 +24,7 @@ export type Props = $ReadOnly<{|
24
24
  internal_excludeInspector?: boolean,
25
25
  |}>;
26
26
 
27
- const AppContainer: React.AbstractComponent<Props> = __DEV__
27
+ const AppContainer: component(...Props) = __DEV__
28
28
  ? require('./AppContainer-dev').default
29
29
  : require('./AppContainer-prod').default;
30
30
 
@@ -13,8 +13,8 @@ import type {RootTag} from '../Types/RootTagTypes';
13
13
  import type {IPerformanceLogger} from '../Utilities/createPerformanceLogger';
14
14
  import type {DisplayModeType} from './DisplayMode';
15
15
 
16
- import registerCallableModule from '../Core/registerCallableModule';
17
16
  import BugReporting from '../BugReporting/BugReporting';
17
+ import registerCallableModule from '../Core/registerCallableModule';
18
18
  import createPerformanceLogger from '../Utilities/createPerformanceLogger';
19
19
  import infoLog from '../Utilities/infoLog';
20
20
  import SceneTracker from '../Utilities/SceneTracker';
@@ -46,7 +46,6 @@ type AppParameters = {
46
46
  initialProps: $ReadOnly<{[string]: mixed, ...}>,
47
47
  rootTag: RootTag,
48
48
  fabric?: boolean,
49
- concurrentRoot?: boolean,
50
49
  };
51
50
  export type Runnable = (
52
51
  appParameters: AppParameters,
@@ -120,10 +119,6 @@ const AppRegistry = {
120
119
  ): string {
121
120
  const scopedPerformanceLogger = createPerformanceLogger();
122
121
  runnables[appKey] = (appParameters, displayMode) => {
123
- const concurrentRootEnabled = Boolean(
124
- appParameters.initialProps?.concurrentRoot ||
125
- appParameters.concurrentRoot,
126
- );
127
122
  renderApplication(
128
123
  componentProviderInstrumentationHook(
129
124
  componentProvider,
@@ -138,7 +133,6 @@ const AppRegistry = {
138
133
  appKey === 'LogBox', // is logbox
139
134
  appKey,
140
135
  displayMode,
141
- concurrentRootEnabled,
142
136
  );
143
137
  };
144
138
  if (section) {
@@ -361,10 +355,6 @@ global.RN$SurfaceRegistry = {
361
355
  setSurfaceProps: AppRegistry.setSurfaceProps,
362
356
  };
363
357
 
364
- if (global.RN$Bridgeless === true) {
365
- console.log('Bridgeless mode is enabled');
366
- }
367
-
368
358
  registerCallableModule('AppRegistry', AppRegistry);
369
359
 
370
360
  module.exports = AppRegistry;
@@ -12,7 +12,7 @@ export opaque type DisplayModeType = number;
12
12
 
13
13
  /** DisplayMode should be in sync with the method displayModeToInt from
14
14
  * react/renderer/uimanager/primitives.h. */
15
- const DisplayMode: {[string]: DisplayModeType} = Object.freeze({
15
+ const DisplayMode: {+[string]: DisplayModeType} = Object.freeze({
16
16
  VISIBLE: 1,
17
17
  SUSPENDED: 2,
18
18
  HIDDEN: 3,
@@ -9,7 +9,7 @@
9
9
  */
10
10
 
11
11
  import type {
12
- HostComponent,
12
+ HostInstance,
13
13
  INativeMethods,
14
14
  InternalInstanceHandle,
15
15
  MeasureInWindowOnSuccessCallback,
@@ -17,7 +17,6 @@ import type {
17
17
  MeasureOnSuccessCallback,
18
18
  ViewConfig,
19
19
  } from '../../Renderer/shims/ReactNativeTypes';
20
- import type {ElementRef} from 'react';
21
20
 
22
21
  import TextInputState from '../../Components/TextInput/TextInputState';
23
22
  import {getNodeFromInternalInstanceHandle} from '../../ReactNative/RendererProxy';
@@ -85,7 +84,7 @@ export default class ReactFabricHostComponent implements INativeMethods {
85
84
  }
86
85
 
87
86
  measureLayout(
88
- relativeToNativeNode: number | ElementRef<HostComponent<mixed>>,
87
+ relativeToNativeNode: number | HostInstance,
89
88
  onSuccess: MeasureLayoutOnSuccessCallback,
90
89
  onFail?: () => void /* currently unused */,
91
90
  ) {