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
@@ -10,6 +10,7 @@
10
10
 
11
11
  import type {
12
12
  HostComponent,
13
+ HostInstance,
13
14
  InternalInstanceHandle,
14
15
  Node,
15
16
  } from '../Renderer/shims/ReactNativeTypes';
@@ -34,7 +35,7 @@ export function renderElement({
34
35
  useConcurrentRoot: boolean,
35
36
  }): void {
36
37
  if (useFabric) {
37
- require('../Renderer/shims/ReactFabric').render(
38
+ require('../Renderer/shims/ReactFabric').default.render(
38
39
  element,
39
40
  rootTag,
40
41
  null,
@@ -46,7 +47,7 @@ export function renderElement({
46
47
  },
47
48
  );
48
49
  } else {
49
- require('../Renderer/shims/ReactNative').render(
50
+ require('../Renderer/shims/ReactNative').default.render(
50
51
  element,
51
52
  rootTag,
52
53
  undefined,
@@ -61,8 +62,8 @@ export function renderElement({
61
62
 
62
63
  export function findHostInstance_DEPRECATED<TElementType: ElementType>(
63
64
  componentOrHandle: ?(ElementRef<TElementType> | number),
64
- ): ?ElementRef<HostComponent<mixed>> {
65
- return require('../Renderer/shims/ReactNative').findHostInstance_DEPRECATED(
65
+ ): ?HostInstance {
66
+ return require('../Renderer/shims/ReactNative').default.findHostInstance_DEPRECATED(
66
67
  componentOrHandle,
67
68
  );
68
69
  }
@@ -70,26 +71,26 @@ export function findHostInstance_DEPRECATED<TElementType: ElementType>(
70
71
  export function findNodeHandle<TElementType: ElementType>(
71
72
  componentOrHandle: ?(ElementRef<TElementType> | number),
72
73
  ): ?number {
73
- return require('../Renderer/shims/ReactNative').findNodeHandle(
74
+ return require('../Renderer/shims/ReactNative').default.findNodeHandle(
74
75
  componentOrHandle,
75
76
  );
76
77
  }
77
78
 
78
79
  export function dispatchCommand(
79
- handle: ElementRef<HostComponent<mixed>>,
80
+ handle: HostInstance,
80
81
  command: string,
81
82
  args: Array<mixed>,
82
83
  ): void {
83
84
  if (global.RN$Bridgeless === true) {
84
85
  // Note: this function has the same implementation in the legacy and new renderer.
85
86
  // However, evaluating the old renderer comes with some side effects.
86
- return require('../Renderer/shims/ReactFabric').dispatchCommand(
87
+ return require('../Renderer/shims/ReactFabric').default.dispatchCommand(
87
88
  handle,
88
89
  command,
89
90
  args,
90
91
  );
91
92
  } else {
92
- return require('../Renderer/shims/ReactNative').dispatchCommand(
93
+ return require('../Renderer/shims/ReactNative').default.dispatchCommand(
93
94
  handle,
94
95
  command,
95
96
  args,
@@ -98,10 +99,10 @@ export function dispatchCommand(
98
99
  }
99
100
 
100
101
  export function sendAccessibilityEvent(
101
- handle: ElementRef<HostComponent<mixed>>,
102
+ handle: HostInstance,
102
103
  eventType: string,
103
104
  ): void {
104
- return require('../Renderer/shims/ReactNative').sendAccessibilityEvent(
105
+ return require('../Renderer/shims/ReactNative').default.sendAccessibilityEvent(
105
106
  handle,
106
107
  eventType,
107
108
  );
@@ -114,7 +115,7 @@ export function sendAccessibilityEvent(
114
115
  export function unmountComponentAtNodeAndRemoveContainer(rootTag: RootTag) {
115
116
  // $FlowExpectedError[incompatible-type] rootTag is an opaque type so we can't really cast it as is.
116
117
  const rootTagAsNumber: number = rootTag;
117
- require('../Renderer/shims/ReactNative').unmountComponentAtNodeAndRemoveContainer(
118
+ require('../Renderer/shims/ReactNative').default.unmountComponentAtNodeAndRemoveContainer(
118
119
  rootTagAsNumber,
119
120
  );
120
121
  }
@@ -124,7 +125,7 @@ export function unstable_batchedUpdates<T>(
124
125
  bookkeeping: T,
125
126
  ): void {
126
127
  // This doesn't actually do anything when batching updates for a Fabric root.
127
- return require('../Renderer/shims/ReactNative').unstable_batchedUpdates(
128
+ return require('../Renderer/shims/ReactNative').default.unstable_batchedUpdates(
128
129
  fn,
129
130
  bookkeeping,
130
131
  );
@@ -135,10 +136,10 @@ export function isProfilingRenderer(): boolean {
135
136
  }
136
137
 
137
138
  export function isChildPublicInstance(
138
- parentInstance: ReactFabricHostComponent | HostComponent<mixed>,
139
- childInstance: ReactFabricHostComponent | HostComponent<mixed>,
139
+ parentInstance: ReactFabricHostComponent | HostComponent<empty>,
140
+ childInstance: ReactFabricHostComponent | HostComponent<empty>,
140
141
  ): boolean {
141
- return require('../Renderer/shims/ReactNative').isChildPublicInstance(
142
+ return require('../Renderer/shims/ReactNative').default.isChildPublicInstance(
142
143
  parentInstance,
143
144
  childInstance,
144
145
  );
@@ -148,7 +149,7 @@ export function getNodeFromInternalInstanceHandle(
148
149
  internalInstanceHandle: InternalInstanceHandle,
149
150
  ): ?Node {
150
151
  // This is only available in Fabric
151
- return require('../Renderer/shims/ReactFabric').getNodeFromInternalInstanceHandle(
152
+ return require('../Renderer/shims/ReactFabric').default.getNodeFromInternalInstanceHandle(
152
153
  internalInstanceHandle,
153
154
  );
154
155
  }
@@ -157,7 +158,7 @@ export function getPublicInstanceFromInternalInstanceHandle(
157
158
  internalInstanceHandle: InternalInstanceHandle,
158
159
  ): mixed /*PublicInstance | PublicTextInstance | null*/ {
159
160
  // This is only available in Fabric
160
- return require('../Renderer/shims/ReactFabric').getPublicInstanceFromInternalInstanceHandle(
161
+ return require('../Renderer/shims/ReactFabric').default.getPublicInstanceFromInternalInstanceHandle(
161
162
  internalInstanceHandle,
162
163
  );
163
164
  }
@@ -8,11 +8,9 @@
8
8
  * @format
9
9
  */
10
10
 
11
- import type {AbstractComponent} from 'react';
12
-
13
11
  import * as React from 'react';
14
12
 
15
- type NoopComponent = AbstractComponent<{children: React.Node}>;
13
+ type NoopComponent = component(children: React.Node);
16
14
 
17
15
  const cache: Map<
18
16
  string, // displayName
@@ -23,10 +23,12 @@ import * as React from 'react';
23
23
  // require BackHandler so it sets the default handler that exits the app if no listeners respond
24
24
  import '../Utilities/BackHandler';
25
25
 
26
- type ActivityType = React.AbstractComponent<{
27
- mode: 'visible' | 'hidden',
28
- children: React.Node,
29
- }>;
26
+ type ActivityType = component(
27
+ ...{
28
+ mode: 'visible' | 'hidden',
29
+ children: React.Node,
30
+ }
31
+ );
30
32
 
31
33
  export default function renderApplication<Props: Object>(
32
34
  RootComponent: React.ComponentType<Props>,
@@ -39,7 +41,6 @@ export default function renderApplication<Props: Object>(
39
41
  isLogBox?: boolean,
40
42
  debugName?: string,
41
43
  displayMode?: ?DisplayModeType,
42
- useConcurrentRoot?: boolean,
43
44
  useOffscreen?: boolean,
44
45
  ) {
45
46
  invariant(rootTag, 'Expect to have a valid rootTag, instead got ', rootTag);
@@ -85,12 +86,12 @@ export default function renderApplication<Props: Object>(
85
86
  }
86
87
 
87
88
  // We want to have concurrentRoot always enabled when you're on Fabric.
88
- const useConcurrentRootOverride = fabric;
89
+ const useConcurrentRoot = Boolean(fabric);
89
90
 
90
91
  performanceLogger.startTimespan('renderApplication_React_render');
91
92
  performanceLogger.setExtra(
92
93
  'usedReactConcurrentRoot',
93
- useConcurrentRootOverride ? '1' : '0',
94
+ useConcurrentRoot ? '1' : '0',
94
95
  );
95
96
  performanceLogger.setExtra('usedReactFabric', fabric ? '1' : '0');
96
97
  performanceLogger.setExtra(
@@ -101,7 +102,7 @@ export default function renderApplication<Props: Object>(
101
102
  element: renderable,
102
103
  rootTag,
103
104
  useFabric: Boolean(fabric),
104
- useConcurrentRoot: Boolean(useConcurrentRootOverride),
105
+ useConcurrentRoot,
105
106
  });
106
107
  performanceLogger.stopTimespan('renderApplication_React_render');
107
108
  }
@@ -12,7 +12,8 @@
12
12
 
13
13
  import type {HostComponent} from '../Renderer/shims/ReactNativeTypes';
14
14
 
15
- const createReactNativeComponentClass = require('../Renderer/shims/createReactNativeComponentClass');
15
+ const createReactNativeComponentClass =
16
+ require('../Renderer/shims/createReactNativeComponentClass').default;
16
17
  const getNativeComponentAttributes = require('./getNativeComponentAttributes');
17
18
 
18
19
  /**
@@ -24,7 +25,9 @@ const getNativeComponentAttributes = require('./getNativeComponentAttributes');
24
25
  *
25
26
  */
26
27
 
27
- const requireNativeComponent = <T>(uiViewClassName: string): HostComponent<T> =>
28
+ const requireNativeComponent = <T: {...}>(
29
+ uiViewClassName: string,
30
+ ): HostComponent<T> =>
28
31
  ((createReactNativeComponentClass(uiViewClassName, () =>
29
32
  getNativeComponentAttributes(uiViewClassName),
30
33
  ): any): HostComponent<T>);
@@ -7,7 +7,7 @@
7
7
  * @noformat
8
8
  * @nolint
9
9
  * @flow
10
- * @generated SignedSource<<bb39e39880fecbf572b5f8e7c2a95c5d>>
10
+ * @generated SignedSource<<cf323fc5ca893bab5669c7d321660412>>
11
11
  */
12
12
 
13
13
  'use strict';
@@ -16,7 +16,7 @@ import {BatchedBridge} from 'react-native/Libraries/ReactPrivate/ReactNativePriv
16
16
 
17
17
  import type {ReactFabricType} from './ReactNativeTypes';
18
18
 
19
- let ReactFabric;
19
+ let ReactFabric: ReactFabricType;
20
20
 
21
21
  if (__DEV__) {
22
22
  ReactFabric = require('../implementations/ReactFabric-dev');
@@ -30,4 +30,4 @@ if (global.RN$Bridgeless !== true) {
30
30
  BatchedBridge.registerCallableModule('ReactFabric', ReactFabric);
31
31
  }
32
32
 
33
- module.exports = (ReactFabric: ReactFabricType);
33
+ export default ReactFabric;
@@ -7,7 +7,7 @@
7
7
  * @noformat
8
8
  * @nolint
9
9
  * @flow strict-local
10
- * @generated SignedSource<<b1b5e34e426103a69612278fd5c9f77c>>
10
+ * @generated SignedSource<<908f5fb85384725318e261f40e49d9a6>>
11
11
  */
12
12
 
13
13
  'use strict';
@@ -16,4 +16,4 @@ const ReactFeatureFlags = {
16
16
  debugRenderPhaseSideEffects: false,
17
17
  };
18
18
 
19
- module.exports = ReactFeatureFlags;
19
+ export default ReactFeatureFlags;
@@ -7,13 +7,13 @@
7
7
  * @noformat
8
8
  * @nolint
9
9
  * @flow
10
- * @generated SignedSource<<475c7d864efc2948c6125ddb8a38a4fc>>
10
+ * @generated SignedSource<<8f46fdc9267fcc4fdc9e76842fe24066>>
11
11
  */
12
12
  'use strict';
13
13
 
14
14
  import type {ReactNativeType} from './ReactNativeTypes';
15
15
 
16
- let ReactNative;
16
+ let ReactNative: ReactNativeType;
17
17
 
18
18
  if (__DEV__) {
19
19
  ReactNative = require('../implementations/ReactNativeRenderer-dev');
@@ -21,4 +21,4 @@ if (__DEV__) {
21
21
  ReactNative = require('../implementations/ReactNativeRenderer-prod');
22
22
  }
23
23
 
24
- module.exports = (ReactNative: ReactNativeType);
24
+ export default ReactNative;
@@ -7,15 +7,10 @@
7
7
  * @noformat
8
8
  * @nolint
9
9
  * @flow strict
10
- * @generated SignedSource<<89361333bb6b688486e35849a9c669a6>>
10
+ * @generated SignedSource<<9cf3e28d6ca0299bc0bb5caa75b19556>>
11
11
  */
12
12
 
13
- import type {
14
- ElementRef,
15
- ElementType,
16
- MixedElement,
17
- AbstractComponent,
18
- } from 'react';
13
+ import type {ElementRef, ElementType, MixedElement} from 'react';
19
14
 
20
15
  export type MeasureOnSuccessCallback = (
21
16
  x: number,
@@ -113,38 +108,34 @@ export interface INativeMethods {
113
108
  measure(callback: MeasureOnSuccessCallback): void;
114
109
  measureInWindow(callback: MeasureInWindowOnSuccessCallback): void;
115
110
  measureLayout(
116
- relativeToNativeNode: number | ElementRef<HostComponent<mixed>>,
111
+ relativeToNativeNode: number | HostInstance,
117
112
  onSuccess: MeasureLayoutOnSuccessCallback,
118
113
  onFail?: () => void,
119
114
  ): void;
120
115
  setNativeProps(nativeProps: {...}): void;
121
116
  }
122
117
 
123
- export type NativeMethods = $ReadOnly<{|
118
+ export type NativeMethods = $ReadOnly<{
124
119
  blur(): void,
125
120
  focus(): void,
126
121
  measure(callback: MeasureOnSuccessCallback): void,
127
122
  measureInWindow(callback: MeasureInWindowOnSuccessCallback): void,
128
123
  measureLayout(
129
- relativeToNativeNode: number | ElementRef<HostComponent<mixed>>,
124
+ relativeToNativeNode: number | HostInstance,
130
125
  onSuccess: MeasureLayoutOnSuccessCallback,
131
126
  onFail?: () => void,
132
127
  ): void,
133
128
  setNativeProps(nativeProps: {...}): void,
134
- |}>;
129
+ }>;
135
130
 
136
131
  // This validates that INativeMethods and NativeMethods stay in sync using Flow!
137
132
  declare const ensureNativeMethodsAreSynced: NativeMethods;
138
133
  (ensureNativeMethodsAreSynced: INativeMethods);
139
134
 
140
- export type HostComponent<T> = AbstractComponent<T, $ReadOnly<NativeMethods>>;
141
-
142
- type SecretInternalsType = {
143
- computeComponentStackForErrorReporting(tag: number): string,
144
- // TODO (bvaughn) Decide which additional types to expose here?
145
- // And how much information to fill in for the above types.
146
- ...
147
- };
135
+ export type HostInstance = NativeMethods;
136
+ /*::
137
+ export type HostComponent<Config: {...}> = component(ref: React$RefSetter<HostInstance>, ...Config);
138
+ */
148
139
 
149
140
  type InspectorDataProps = $ReadOnly<{
150
141
  [propName: string]: string,
@@ -180,6 +171,7 @@ export type TouchedViewDataAtPoint = $ReadOnly<{
180
171
  width: number,
181
172
  height: number,
182
173
  }>,
174
+ closestPublicInstance?: PublicInstance,
183
175
  ...InspectorData,
184
176
  }>;
185
177
 
@@ -209,23 +201,22 @@ export type RenderRootOptions = {
209
201
  export type ReactNativeType = {
210
202
  findHostInstance_DEPRECATED<TElementType: ElementType>(
211
203
  componentOrHandle: ?(ElementRef<TElementType> | number),
212
- ): ?ElementRef<HostComponent<mixed>>,
204
+ ): ?HostInstance,
213
205
  findNodeHandle<TElementType: ElementType>(
214
206
  componentOrHandle: ?(ElementRef<TElementType> | number),
215
207
  ): ?number,
216
208
  isChildPublicInstance(
217
- parent: PublicInstance | HostComponent<mixed>,
218
- child: PublicInstance | HostComponent<mixed>,
209
+ // eslint-disable-next-line no-undef
210
+ parent: PublicInstance | HostComponent<empty>,
211
+ // eslint-disable-next-line no-undef
212
+ child: PublicInstance | HostComponent<empty>,
219
213
  ): boolean,
220
214
  dispatchCommand(
221
- handle: ElementRef<HostComponent<mixed>>,
215
+ handle: HostInstance,
222
216
  command: string,
223
217
  args: Array<mixed>,
224
218
  ): void,
225
- sendAccessibilityEvent(
226
- handle: ElementRef<HostComponent<mixed>>,
227
- eventType: string,
228
- ): void,
219
+ sendAccessibilityEvent(handle: HostInstance, eventType: string): void,
229
220
  render(
230
221
  element: MixedElement,
231
222
  containerTag: number,
@@ -234,8 +225,7 @@ export type ReactNativeType = {
234
225
  ): ?ElementRef<ElementType>,
235
226
  unmountComponentAtNode(containerTag: number): void,
236
227
  unmountComponentAtNodeAndRemoveContainer(containerTag: number): void,
237
- unstable_batchedUpdates: <T>(fn: (T) => void, bookkeeping: T) => void,
238
- __SECRET_INTERNALS_DO_NOT_USE_OR_YOU_WILL_BE_FIRED: SecretInternalsType,
228
+ +unstable_batchedUpdates: <T>(fn: (T) => void, bookkeeping: T) => void,
239
229
  ...
240
230
  };
241
231
 
@@ -247,20 +237,17 @@ type PublicTextInstance = mixed;
247
237
  export type ReactFabricType = {
248
238
  findHostInstance_DEPRECATED<TElementType: ElementType>(
249
239
  componentOrHandle: ?(ElementRef<TElementType> | number),
250
- ): ?ElementRef<HostComponent<mixed>>,
240
+ ): ?HostInstance,
251
241
  findNodeHandle<TElementType: ElementType>(
252
242
  componentOrHandle: ?(ElementRef<TElementType> | number),
253
243
  ): ?number,
254
244
  dispatchCommand(
255
- handle: ElementRef<HostComponent<mixed>>,
245
+ handle: HostInstance,
256
246
  command: string,
257
247
  args: Array<mixed>,
258
248
  ): void,
259
249
  isChildPublicInstance(parent: PublicInstance, child: PublicInstance): boolean,
260
- sendAccessibilityEvent(
261
- handle: ElementRef<HostComponent<mixed>>,
262
- eventType: string,
263
- ): void,
250
+ sendAccessibilityEvent(handle: HostInstance, eventType: string): void,
264
251
  render(
265
252
  element: MixedElement,
266
253
  containerTag: number,
@@ -7,7 +7,7 @@
7
7
  * @noformat
8
8
  * @nolint
9
9
  * @flow strict-local
10
- * @generated SignedSource<<69d0cc554d77cddb1c779dfbdf569505>>
10
+ * @generated SignedSource<<83073425aa3f71ced2c8c51f25a25938>>
11
11
  */
12
12
 
13
13
  'use strict';
@@ -94,8 +94,8 @@ export function register(name: string, callback: () => ViewConfig): string {
94
94
  * This configuration will be lazy-loaded from UIManager.
95
95
  */
96
96
  export function get(name: string): ViewConfig {
97
- let viewConfig;
98
- if (!viewConfigs.has(name)) {
97
+ let viewConfig = viewConfigs.get(name);
98
+ if (viewConfig == null) {
99
99
  const callback = viewConfigCallbacks.get(name);
100
100
  if (typeof callback !== 'function') {
101
101
  invariant(
@@ -110,15 +110,14 @@ export function get(name: string): ViewConfig {
110
110
  );
111
111
  }
112
112
  viewConfig = callback();
113
+ invariant(viewConfig, 'View config not found for component `%s`', name);
114
+
113
115
  processEventTypes(viewConfig);
114
116
  viewConfigs.set(name, viewConfig);
115
117
 
116
118
  // Clear the callback after the config is set so that
117
119
  // we don't mask any errors during registration.
118
120
  viewConfigCallbacks.set(name, null);
119
- } else {
120
- viewConfig = viewConfigs.get(name);
121
121
  }
122
- invariant(viewConfig, 'View config not found for name %s', name);
123
122
  return viewConfig;
124
123
  }
@@ -7,7 +7,7 @@
7
7
  * @noformat
8
8
  * @nolint
9
9
  * @flow strict-local
10
- * @generated SignedSource<<62e766b69d440dab0a2d249f0cea38e0>>
10
+ * @generated SignedSource<<52163887de05f1cff05388145cf85b3b>>
11
11
  */
12
12
 
13
13
  'use strict';
@@ -32,4 +32,4 @@ const createReactNativeComponentClass = function (
32
32
  return register(name, callback);
33
33
  };
34
34
 
35
- module.exports = createReactNativeComponentClass;
35
+ export default createReactNativeComponentClass;
@@ -170,7 +170,13 @@ if (hairlineWidth === 0) {
170
170
  hairlineWidth = 1 / PixelRatio.get();
171
171
  }
172
172
 
173
- const absoluteFill = {
173
+ const absoluteFill: {
174
+ +bottom: 0,
175
+ +left: 0,
176
+ +position: 'absolute',
177
+ +right: 0,
178
+ +top: 0,
179
+ } = {
174
180
  position: 'absolute',
175
181
  left: 0,
176
182
  right: 0,
@@ -55,7 +55,8 @@ export interface FlexStyle {
55
55
  borderTopWidth?: number | undefined;
56
56
  borderWidth?: number | undefined;
57
57
  bottom?: DimensionValue | undefined;
58
- display?: 'none' | 'flex' | undefined;
58
+ boxSizing?: 'border-box' | 'content-box' | undefined;
59
+ display?: 'none' | 'flex' | 'contents' | undefined;
59
60
  end?: DimensionValue | undefined;
60
61
  flex?: number | undefined;
61
62
  flexBasis?: DimensionValue | undefined;
@@ -411,6 +412,10 @@ export interface ViewStyle extends FlexStyle, ShadowStyleIOS, TransformsStyle {
411
412
  borderTopLeftRadius?: AnimatableNumericValue | string | undefined;
412
413
  borderTopRightRadius?: AnimatableNumericValue | string | undefined;
413
414
  borderTopStartRadius?: AnimatableNumericValue | string | undefined;
415
+ outlineColor?: ColorValue | undefined;
416
+ outlineOffset?: AnimatableNumericValue | undefined;
417
+ outlineStyle?: 'solid' | 'dotted' | 'dashed' | undefined;
418
+ outlineWidth?: AnimatableNumericValue | undefined;
414
419
  opacity?: AnimatableNumericValue | undefined;
415
420
  /**
416
421
  * Sets the elevation of a view, using Android's underlying
@@ -429,6 +434,12 @@ export interface ViewStyle extends FlexStyle, ShadowStyleIOS, TransformsStyle {
429
434
  cursor?: CursorValue | undefined;
430
435
  boxShadow?: ReadonlyArray<BoxShadowValue> | string | undefined;
431
436
  filter?: ReadonlyArray<FilterFunction> | string | undefined;
437
+
438
+ mixBlendMode?: BlendMode | undefined;
439
+ experimental_backgroundImage?:
440
+ | ReadonlyArray<GradientValue>
441
+ | string
442
+ | undefined;
432
443
  }
433
444
 
434
445
  export type FontVariant =
@@ -557,6 +568,6 @@ export interface ImageStyle extends FlexStyle, ShadowStyleIOS, TransformsStyle {
557
568
  overlayColor?: ColorValue | undefined;
558
569
  tintColor?: ColorValue | undefined;
559
570
  opacity?: AnimatableNumericValue | undefined;
560
- objectFit?: 'cover' | 'contain' | 'fill' | 'scale-down' | undefined;
571
+ objectFit?: 'cover' | 'contain' | 'fill' | 'scale-down' | 'none' | undefined;
561
572
  cursor?: CursorValue | undefined;
562
573
  }
@@ -11,6 +11,7 @@
11
11
  'use strict';
12
12
 
13
13
  import type AnimatedNode from '../Animated/nodes/AnimatedNode';
14
+ import type {ImageResizeMode} from './../Image/ImageResizeMode';
14
15
  import type {
15
16
  ____DangerouslyImpreciseStyle_InternalOverrides,
16
17
  ____ImageStyle_InternalOverrides,
@@ -58,7 +59,7 @@ type ____LayoutStyle_Internal = $ReadOnly<{
58
59
  * It works similarly to `display` in CSS, but only support 'flex' and 'none'.
59
60
  * 'flex' is the default.
60
61
  */
61
- display?: 'none' | 'flex',
62
+ display?: 'none' | 'flex' | 'contents',
62
63
 
63
64
  /** `width` sets the width of this component.
64
65
  *
@@ -612,6 +613,19 @@ type ____LayoutStyle_Internal = $ReadOnly<{
612
613
  */
613
614
  aspectRatio?: number | string,
614
615
 
616
+ /**
617
+ * Box sizing controls whether certain size properties apply to the node's
618
+ * content box or border box. The size properties in question include `width`,
619
+ * `height`, `minWidth`, `minHeight`, `maxWidth`, `maxHeight`, and `flexBasis`.
620
+ *
621
+ * e.g: Say a node has 10px of padding and 10px of borders on all
622
+ * sides and a defined `width` and `height` of 100px and 50px. Then the total
623
+ * size of the node (content area + padding + border) would be 100px by 50px
624
+ * under `boxSizing: border-box` and 120px by 70px under
625
+ * `boxSizing: content-box`.
626
+ */
627
+ boxSizing?: 'border-box' | 'content-box',
628
+
615
629
  /** `zIndex` controls which components display on top of others.
616
630
  * Normally, you don't use `zIndex`. Components render according to
617
631
  * their order in the document tree, so later components draw over
@@ -785,12 +799,16 @@ export type ____ViewStyle_InternalCore = $ReadOnly<{
785
799
  borderStartWidth?: AnimatableNumericValue,
786
800
  borderTopWidth?: AnimatableNumericValue,
787
801
  opacity?: AnimatableNumericValue,
802
+ outlineColor?: ____ColorValue_Internal,
803
+ outlineOffset?: AnimatableNumericValue,
804
+ outlineStyle?: 'solid' | 'dotted' | 'dashed',
805
+ outlineWidth?: AnimatableNumericValue,
788
806
  elevation?: number,
789
807
  pointerEvents?: 'auto' | 'none' | 'box-none' | 'box-only',
790
808
  cursor?: CursorValue,
791
809
  boxShadow?: $ReadOnlyArray<BoxShadowValue> | string,
792
810
  filter?: $ReadOnlyArray<FilterFunction> | string,
793
- experimental_mixBlendMode?: ____BlendMode_Internal,
811
+ mixBlendMode?: ____BlendMode_Internal,
794
812
  experimental_backgroundImage?: $ReadOnlyArray<GradientValue> | string,
795
813
  isolation?: 'auto' | 'isolate',
796
814
  }>;
@@ -924,8 +942,8 @@ export type ____TextStyle_Internal = $ReadOnly<{
924
942
 
925
943
  export type ____ImageStyle_InternalCore = $ReadOnly<{
926
944
  ...$Exact<____ViewStyle_Internal>,
927
- resizeMode?: 'contain' | 'cover' | 'stretch' | 'center' | 'repeat',
928
- objectFit?: 'cover' | 'contain' | 'fill' | 'scale-down',
945
+ resizeMode?: ImageResizeMode,
946
+ objectFit?: 'cover' | 'contain' | 'fill' | 'scale-down' | 'none',
929
947
  tintColor?: ____ColorValue_Internal,
930
948
  overlayColor?: string,
931
949
  }>;
@@ -937,8 +955,8 @@ export type ____ImageStyle_Internal = $ReadOnly<{
937
955
 
938
956
  export type ____DangerouslyImpreciseStyle_InternalCore = $ReadOnly<{
939
957
  ...$Exact<____TextStyle_Internal>,
940
- resizeMode?: 'contain' | 'cover' | 'stretch' | 'center' | 'repeat',
941
- objectFit?: 'cover' | 'contain' | 'fill' | 'scale-down',
958
+ resizeMode?: ImageResizeMode,
959
+ objectFit?: 'cover' | 'contain' | 'fill' | 'scale-down' | 'none',
942
960
  tintColor?: ____ColorValue_Internal,
943
961
  overlayColor?: string,
944
962
  }>;