@office-iss/react-native-win32 0.71.4 → 0.72.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 (323) hide show
  1. package/.flowconfig +15 -3
  2. package/CHANGELOG.json +310 -40
  3. package/CHANGELOG.md +145 -23
  4. package/IntegrationTests/IntegrationTestHarnessTest.js +1 -0
  5. package/Libraries/ActionSheetIOS/ActionSheetIOS.js +1 -1
  6. package/Libraries/Alert/Alert.d.ts +4 -4
  7. package/Libraries/Alert/Alert.win32.js +1 -0
  8. package/Libraries/Animated/Animated.d.ts +17 -6
  9. package/Libraries/Animated/NativeAnimatedHelper.js +18 -6
  10. package/Libraries/Animated/NativeAnimatedHelper.win32.js +606 -0
  11. package/Libraries/Animated/bezier.js +1 -1
  12. package/Libraries/Animated/components/AnimatedFlatList.js +8 -3
  13. package/Libraries/Animated/components/AnimatedScrollView.js +4 -1
  14. package/Libraries/Animated/components/AnimatedSectionList.js +12 -3
  15. package/Libraries/Animated/createAnimatedComponent.js +26 -239
  16. package/Libraries/Animated/nodes/AnimatedColor.js +47 -80
  17. package/Libraries/Animated/nodes/AnimatedInterpolation.js +167 -121
  18. package/Libraries/Animated/nodes/AnimatedNode.js +3 -5
  19. package/Libraries/Animated/nodes/AnimatedProps.js +7 -6
  20. package/Libraries/Animated/nodes/AnimatedStyle.js +42 -8
  21. package/Libraries/Animated/nodes/AnimatedTransform.js +1 -1
  22. package/Libraries/Animated/nodes/AnimatedValue.js +8 -12
  23. package/Libraries/Animated/nodes/AnimatedWithChildren.js +1 -1
  24. package/Libraries/Animated/useAnimatedProps.js +7 -10
  25. package/Libraries/BatchedBridge/MessageQueue.js +2 -1
  26. package/Libraries/BatchedBridge/NativeModules.d.ts +1 -1
  27. package/Libraries/BatchedBridge/NativeModules.js +1 -0
  28. package/Libraries/Blob/Blob.js +4 -0
  29. package/Libraries/Blob/FileReader.js +30 -2
  30. package/Libraries/Blob/URL.js +3 -1
  31. package/Libraries/Components/AccessibilityInfo/AccessibilityInfo.d.ts +2 -2
  32. package/Libraries/Components/AccessibilityInfo/AccessibilityInfo.js +2 -3
  33. package/Libraries/Components/AccessibilityInfo/AccessibilityInfo.win32.js +2 -3
  34. package/Libraries/Components/ActivityIndicator/ActivityIndicator.js +6 -4
  35. package/Libraries/Components/Button.js +3 -2
  36. package/Libraries/Components/Button.win32.js +451 -0
  37. package/Libraries/Components/Clipboard/Clipboard.js +1 -1
  38. package/Libraries/Components/DrawerAndroid/DrawerLayoutAndroid.android.js +4 -0
  39. package/Libraries/Components/Keyboard/KeyboardAvoidingView.js +1 -0
  40. package/Libraries/Components/Pressable/Pressable.d.ts +1 -1
  41. package/Libraries/Components/Pressable/Pressable.js +1 -1
  42. package/Libraries/Components/RefreshControl/RefreshControl.js +1 -0
  43. package/Libraries/Components/SafeAreaView/SafeAreaView.js +1 -2
  44. package/Libraries/Components/SafeAreaView/SafeAreaView.win32.js +1 -2
  45. package/Libraries/Components/ScrollView/AndroidHorizontalScrollViewNativeComponent.js +12 -6
  46. package/Libraries/Components/ScrollView/ScrollView.d.ts +2 -2
  47. package/Libraries/Components/ScrollView/ScrollView.js +149 -91
  48. package/Libraries/Components/ScrollView/ScrollView.win32.js +1939 -0
  49. package/Libraries/Components/ScrollView/ScrollViewNativeComponent.js +16 -6
  50. package/Libraries/Components/ScrollView/ScrollViewStickyHeader.js +5 -7
  51. package/Libraries/Components/ScrollView/ScrollViewViewConfig.js +1 -1
  52. package/Libraries/Components/StatusBar/StatusBar.js +3 -0
  53. package/Libraries/Components/Switch/Switch.js +3 -1
  54. package/Libraries/Components/TextInput/AndroidTextInputNativeComponent.js +21 -11
  55. package/Libraries/Components/TextInput/InputAccessoryView.d.ts +1 -1
  56. package/Libraries/Components/TextInput/RCTTextInputViewConfig.js +11 -5
  57. package/Libraries/Components/TextInput/TextInput.Types.win32.d.ts +51 -0
  58. package/Libraries/Components/TextInput/TextInput.Types.win32.js +3 -0
  59. package/Libraries/Components/TextInput/TextInput.Types.win32.js.map +1 -0
  60. package/Libraries/Components/TextInput/TextInput.d.ts +15 -5
  61. package/Libraries/Components/TextInput/TextInput.flow.js +1 -1
  62. package/Libraries/Components/TextInput/TextInput.js +130 -103
  63. package/Libraries/Components/TextInput/TextInput.win32.js +202 -890
  64. package/Libraries/Components/Touchable/Touchable.d.ts +1 -1
  65. package/Libraries/Components/Touchable/Touchable.flow.js +30 -4
  66. package/Libraries/Components/Touchable/Touchable.js +6 -3
  67. package/Libraries/Components/Touchable/Touchable.win32.js +6 -3
  68. package/Libraries/Components/Touchable/TouchableHighlight.js +1 -1
  69. package/Libraries/Components/Touchable/TouchableNativeFeedback.js +2 -2
  70. package/Libraries/Components/Touchable/TouchableOpacity.js +3 -0
  71. package/Libraries/Components/Touchable/TouchableWithoutFeedback.d.ts +1 -1
  72. package/Libraries/Components/Touchable/TouchableWithoutFeedback.js +2 -2
  73. package/Libraries/Components/TraceUpdateOverlay/TraceUpdateOverlay.js +189 -0
  74. package/Libraries/Components/TraceUpdateOverlay/TraceUpdateOverlayNativeComponent.js +43 -0
  75. package/Libraries/Components/View/ReactNativeStyleAttributes.js +26 -0
  76. package/Libraries/Components/View/View.js +71 -45
  77. package/Libraries/Components/View/View.win32.js +38 -16
  78. package/Libraries/Components/View/ViewAccessibility.d.ts +6 -6
  79. package/Libraries/Components/View/ViewAccessibility.js +10 -1
  80. package/Libraries/Components/View/ViewAccessibility.win32.d.ts +5 -5
  81. package/Libraries/Components/View/ViewNativeComponent.js +32 -8
  82. package/Libraries/Components/View/ViewPropTypes.d.ts +1 -1
  83. package/Libraries/Components/View/ViewPropTypes.js +1 -1
  84. package/Libraries/Components/View/ViewPropTypes.win32.d.ts +1 -1
  85. package/Libraries/Components/View/ViewPropTypes.win32.js +1 -1
  86. package/Libraries/Core/Devtools/openFileInEditor.js +1 -0
  87. package/Libraries/Core/Devtools/openURLInBrowser.js +1 -0
  88. package/Libraries/Core/Devtools/parseErrorStack.js +2 -2
  89. package/Libraries/Core/Devtools/parseHermesStack.js +54 -34
  90. package/Libraries/Core/ExceptionsManager.js +2 -2
  91. package/Libraries/Core/InitializeCore.js +2 -1
  92. package/Libraries/Core/ReactNativeVersion.js +3 -3
  93. package/Libraries/Core/ReactNativeVersionCheck.js +1 -9
  94. package/Libraries/Core/ReactNativeVersionCheck.win32.js +1 -9
  95. package/Libraries/Core/Timers/JSTimers.js +1 -1
  96. package/Libraries/Core/Timers/immediateShim.js +1 -0
  97. package/Libraries/Core/Timers/queueMicrotask.js +1 -1
  98. package/Libraries/Core/setUpAlert.js +1 -1
  99. package/Libraries/Core/setUpDOM.js +18 -0
  100. package/Libraries/Core/setUpDeveloperTools.js +1 -1
  101. package/Libraries/Core/setUpGlobals.js +5 -2
  102. package/Libraries/Core/setUpNavigator.js +6 -5
  103. package/Libraries/Core/setUpPerformance.js +23 -13
  104. package/Libraries/Core/setUpReactDevTools.js +2 -0
  105. package/Libraries/Core/setUpSegmentFetcher.js +0 -41
  106. package/Libraries/Core/setUpTimers.js +2 -2
  107. package/Libraries/DOM/Geometry/DOMRect.js +82 -0
  108. package/Libraries/DOM/Geometry/DOMRectReadOnly.js +188 -0
  109. package/Libraries/DOM/Nodes/ReactNativeElement.js +75 -0
  110. package/Libraries/DOM/Nodes/ReadOnlyElement.js +89 -0
  111. package/Libraries/DOM/Nodes/ReadOnlyNode.js +167 -0
  112. package/Libraries/DOM/OldStyleCollections/ArrayLikeUtils.js +46 -0
  113. package/Libraries/DOM/OldStyleCollections/DOMRectList.js +76 -0
  114. package/Libraries/DOM/OldStyleCollections/HTMLCollection.js +82 -0
  115. package/Libraries/DOM/OldStyleCollections/NodeList.js +104 -0
  116. package/Libraries/DevToolsSettings/DevToolsSettingsManager.android.js +35 -0
  117. package/Libraries/DevToolsSettings/DevToolsSettingsManager.d.ts +20 -0
  118. package/Libraries/DevToolsSettings/DevToolsSettingsManager.ios.js +49 -0
  119. package/Libraries/DevToolsSettings/DevToolsSettingsManager.win32.js +35 -0
  120. package/Libraries/{Utilities/NativeDevSplitBundleLoader.js → DevToolsSettings/NativeDevToolsSettingsManager.js} +7 -2
  121. package/Libraries/EventEmitter/NativeEventEmitter.d.ts +1 -2
  122. package/Libraries/EventEmitter/RCTDeviceEventEmitter.d.ts +1 -2
  123. package/Libraries/EventEmitter/RCTDeviceEventEmitter.js +9 -1
  124. package/Libraries/Events/EventPolyfill.js +1 -1
  125. package/Libraries/Image/AssetRegistry.js +1 -1
  126. package/Libraries/Image/AssetSourceResolver.js +3 -3
  127. package/Libraries/Image/Image.android.js +4 -1
  128. package/Libraries/Image/Image.d.ts +63 -2
  129. package/Libraries/Image/Image.ios.js +3 -0
  130. package/Libraries/Image/Image.win32.js +3 -0
  131. package/Libraries/Image/ImageBackground.js +1 -0
  132. package/Libraries/Image/ImageProps.js +1 -1
  133. package/Libraries/Image/ImageViewNativeComponent.js +4 -4
  134. package/Libraries/Image/RelativeImageStub.js +1 -1
  135. package/Libraries/Image/TextInlineImageNativeComponent.js +1 -1
  136. package/Libraries/Image/resolveAssetSource.js +1 -1
  137. package/Libraries/Inspector/DevtoolsOverlay.js +29 -19
  138. package/Libraries/Inspector/ElementBox.js +4 -1
  139. package/Libraries/Inspector/Inspector.js +5 -6
  140. package/Libraries/Inspector/Inspector.win32.js +7 -6
  141. package/Libraries/Inspector/InspectorOverlay.js +3 -3
  142. package/Libraries/Inspector/InspectorOverlay.win32.js +2 -1
  143. package/Libraries/Inspector/NetworkOverlay.js +1 -1
  144. package/Libraries/Interaction/JSEventLoopWatchdog.js +1 -1
  145. package/Libraries/Interaction/PanResponder.js +5 -6
  146. package/Libraries/LayoutAnimation/LayoutAnimation.js +2 -1
  147. package/Libraries/Linking/Linking.js +1 -4
  148. package/Libraries/Lists/FillRateHelper.js +4 -238
  149. package/Libraries/Lists/FlatList.d.ts +15 -22
  150. package/Libraries/Lists/FlatList.js +9 -6
  151. package/Libraries/Lists/SectionList.d.ts +10 -6
  152. package/Libraries/Lists/SectionList.js +5 -3
  153. package/Libraries/Lists/SectionListModern.js +3 -3
  154. package/Libraries/Lists/ViewabilityHelper.js +8 -344
  155. package/Libraries/Lists/VirtualizeUtils.js +4 -244
  156. package/Libraries/Lists/VirtualizedList.js +10 -1867
  157. package/Libraries/Lists/VirtualizedListContext.js +6 -104
  158. package/Libraries/Lists/VirtualizedSectionList.js +9 -602
  159. package/Libraries/Lists/__flowtests__/FlatList-flowtest.js +1 -0
  160. package/Libraries/Lists/__flowtests__/SectionList-flowtest.js +1 -1
  161. package/Libraries/LogBox/Data/LogBoxData.js +1 -1
  162. package/Libraries/LogBox/Data/parseLogBoxLog.js +1 -1
  163. package/Libraries/LogBox/LogBox.js +1 -1
  164. package/Libraries/LogBox/UI/LogBoxInspector.js +1 -3
  165. package/Libraries/LogBox/UI/LogBoxInspectorCodeFrame.win32.js +168 -0
  166. package/Libraries/LogBox/UI/LogBoxInspectorHeader.win32.js +3 -0
  167. package/Libraries/LogBox/UI/LogBoxInspectorReactFrames.win32.js +193 -0
  168. package/Libraries/LogBox/UI/LogBoxInspectorSourceMapStatus.js +1 -0
  169. package/Libraries/LogBox/UI/LogBoxInspectorStackFrame.js +2 -2
  170. package/Libraries/LogBox/UI/LogBoxInspectorStackFrame.win32.js +7 -3
  171. package/Libraries/LogBox/UI/LogBoxMessage.js +87 -5
  172. package/Libraries/LogBox/UI/LogBoxNotification.js +5 -7
  173. package/Libraries/Modal/Modal.js +2 -2
  174. package/Libraries/NativeComponent/BaseViewConfig.android.js +32 -12
  175. package/Libraries/NativeComponent/BaseViewConfig.ios.js +43 -19
  176. package/Libraries/NativeComponent/BaseViewConfig.win32.js +43 -19
  177. package/Libraries/NativeComponent/NativeComponentRegistryUnstable.js +4 -1
  178. package/Libraries/NativeComponent/ViewConfig.js +1 -0
  179. package/Libraries/NativeComponent/ViewConfigIgnore.js +1 -4
  180. package/Libraries/Network/RCTNetworking.android.js +2 -2
  181. package/Libraries/Network/RCTNetworking.ios.js +1 -1
  182. package/Libraries/Network/RCTNetworking.win32.js +1 -1
  183. package/Libraries/Network/XMLHttpRequest.js +1 -1
  184. package/Libraries/Pressability/Pressability.js +11 -5
  185. package/Libraries/Pressability/Pressability.win32.js +9 -3
  186. package/Libraries/ReactNative/AppContainer.js +7 -1
  187. package/Libraries/ReactNative/AppRegistry.d.ts +1 -1
  188. package/Libraries/ReactNative/AppRegistry.js +10 -13
  189. package/Libraries/ReactNative/FabricUIManager.js +24 -8
  190. package/Libraries/ReactNative/NativeUIManager.js +5 -5
  191. package/Libraries/ReactNative/ReactNativeFeatureFlags.js +10 -10
  192. package/Libraries/ReactNative/UIManager.js +142 -1
  193. package/Libraries/ReactNative/getCachedComponentWithDebugName.js +5 -5
  194. package/Libraries/ReactNative/getNativeComponentAttributes.js +1 -1
  195. package/Libraries/ReactNative/requireNativeComponent.d.ts +1 -1
  196. package/Libraries/ReactNative/requireNativeComponent.js +1 -1
  197. package/Libraries/ReactPrivate/ReactNativePrivateInterface.js +1 -0
  198. package/Libraries/Renderer/implementations/ReactFabric-dev.js +26 -3
  199. package/Libraries/Renderer/implementations/ReactFabric-prod.js +13 -1
  200. package/Libraries/Renderer/implementations/ReactFabric-profiling.js +13 -1
  201. package/Libraries/Renderer/public/ReactFabricPublicInstanceUtils.js +38 -0
  202. package/Libraries/Renderer/shims/ReactNativeTypes.js +38 -20
  203. package/Libraries/Renderer/shims/ReactNativeViewConfigRegistry.js +7 -7
  204. package/Libraries/Renderer/shims/createReactNativeComponentClass.js +2 -2
  205. package/Libraries/Share/Share.js +1 -1
  206. package/Libraries/StyleSheet/PlatformColorValueTypes.ios.js +1 -1
  207. package/Libraries/StyleSheet/StyleSheet.js +1 -1
  208. package/Libraries/StyleSheet/StyleSheet.win32.js +1 -1
  209. package/Libraries/StyleSheet/StyleSheetTypes.d.ts +115 -76
  210. package/Libraries/StyleSheet/StyleSheetTypes.js +188 -33
  211. package/Libraries/StyleSheet/flattenStyle.js +2 -0
  212. package/Libraries/StyleSheet/normalizeColor.js +1 -1
  213. package/Libraries/StyleSheet/processColor.js +1 -1
  214. package/Libraries/Text/Text.d.ts +12 -2
  215. package/Libraries/Text/Text.js +50 -41
  216. package/Libraries/Text/TextProps.js +3 -4
  217. package/Libraries/TurboModule/samples/NativeSampleTurboModule.js +6 -0
  218. package/Libraries/Types/CodegenTypes.js +1 -0
  219. package/Libraries/UTFSequence.js +3 -1
  220. package/Libraries/Utilities/Appearance.d.ts +10 -0
  221. package/Libraries/Utilities/Appearance.js +13 -0
  222. package/Libraries/Utilities/Dimensions.js +1 -1
  223. package/Libraries/Utilities/Dimensions.win32.js +1 -1
  224. package/Libraries/Utilities/GlobalPerformanceLogger.js +12 -1
  225. package/Libraries/Utilities/HMRClient.js +16 -10
  226. package/Libraries/Utilities/{createPerformanceLogger.d.ts → IPerformanceLogger.d.ts} +4 -4
  227. package/Libraries/Utilities/IPerformanceLogger.js +49 -0
  228. package/Libraries/Utilities/LoadingView.android.js +28 -11
  229. package/Libraries/Utilities/NativeAppearance.js +1 -0
  230. package/Libraries/Utilities/NativePlatformConstantsWin.js +1 -1
  231. package/Libraries/Utilities/PixelRatio.js +2 -2
  232. package/Libraries/Utilities/Platform.win32.js +1 -1
  233. package/Libraries/Utilities/ReactNativeTestTools.js +1 -1
  234. package/Libraries/Utilities/__mocks__/PixelRatio.js +1 -1
  235. package/Libraries/Utilities/codegenNativeCommands.js +2 -0
  236. package/Libraries/Utilities/createPerformanceLogger.js +55 -43
  237. package/Libraries/Utilities/stringifySafe.js +2 -7
  238. package/Libraries/Utilities/useColorScheme.js +1 -1
  239. package/Libraries/Utilities/useWindowDimensions.js +3 -3
  240. package/Libraries/WebPerformance/EventCounts.js +78 -0
  241. package/Libraries/WebPerformance/MemoryInfo.js +54 -0
  242. package/Libraries/WebPerformance/NativePerformance.js +38 -0
  243. package/Libraries/WebPerformance/NativePerformanceObserver.js +22 -7
  244. package/Libraries/WebPerformance/Performance.js +312 -0
  245. package/Libraries/WebPerformance/PerformanceEntry.js +45 -0
  246. package/Libraries/WebPerformance/PerformanceEventTiming.js +38 -0
  247. package/Libraries/WebPerformance/PerformanceObserver.js +196 -101
  248. package/Libraries/WebPerformance/RawPerformanceEntry.js +87 -0
  249. package/Libraries/WebPerformance/ReactNativeStartupTiming.js +65 -0
  250. package/Libraries/WebPerformance/__mocks__/NativePerformance.js +65 -0
  251. package/Libraries/WebPerformance/__mocks__/NativePerformanceObserver.js +101 -0
  252. package/Libraries/YellowBox/YellowBoxDeprecated.js +1 -1
  253. package/Libraries/vendor/core/ErrorUtils.js +1 -1
  254. package/Libraries/vendor/emitter/EventEmitter.d.ts +2 -2
  255. package/Libraries/vendor/emitter/EventEmitter.js +9 -1
  256. package/flow/global.js +29 -4
  257. package/flow/jest.js +258 -164
  258. package/index.js +56 -42
  259. package/index.win32.js +56 -42
  260. package/interface.js +1 -1
  261. package/jest/local-setup.js +33 -0
  262. package/jest/mockComponent.js +4 -2
  263. package/jest/mockNativeComponent.js +1 -1
  264. package/jest/mockScrollView.js +2 -1
  265. package/jest/react-native-env.js +1 -3
  266. package/jest/setup.js +11 -8
  267. package/overrides.json +115 -85
  268. package/package.json +38 -28
  269. package/rn-get-polyfills.js +1 -1
  270. package/src/Libraries/Components/TextInput/TextInput.Types.win32.ts +68 -0
  271. package/src/Libraries/Components/View/ViewAccessibility.win32.d.ts +5 -5
  272. package/src/Libraries/Components/View/ViewPropTypes.win32.d.ts +1 -1
  273. package/types/index.d.ts +2 -6
  274. package/types/modules/Codegen.d.ts +4 -4
  275. package/types/modules/globals.d.ts +27 -25
  276. package/types/public/DeprecatedPropertiesAlias.d.ts +0 -20
  277. package/types/public/ReactNativeRenderer.d.ts +2 -7
  278. package/Libraries/Animated/createAnimatedComponentInjection.js +0 -48
  279. package/Libraries/Animated/createAnimatedComponent_EXPERIMENTAL.js +0 -48
  280. package/Libraries/Components/AccessibilityInfo/AccessibilityInfo.flow.js +0 -208
  281. package/Libraries/Components/ActivityIndicator/ActivityIndicator.flow.js +0 -58
  282. package/Libraries/Components/DatePicker/DatePickerIOS.android.js +0 -47
  283. package/Libraries/Components/DatePicker/DatePickerIOS.d.ts +0 -92
  284. package/Libraries/Components/DatePicker/DatePickerIOS.flow.android.js +0 -14
  285. package/Libraries/Components/DatePicker/DatePickerIOS.flow.ios.js +0 -113
  286. package/Libraries/Components/DatePicker/DatePickerIOS.ios.js +0 -242
  287. package/Libraries/Components/DatePicker/DatePickerIOS.win32.js +0 -47
  288. package/Libraries/Components/DatePicker/RCTDatePickerNativeComponent.js +0 -60
  289. package/Libraries/Components/DatePickerAndroid/NativeDatePickerAndroid.js +0 -26
  290. package/Libraries/Components/ProgressViewIOS/ProgressViewIOS.android.js +0 -45
  291. package/Libraries/Components/ProgressViewIOS/ProgressViewIOS.d.ts +0 -62
  292. package/Libraries/Components/ProgressViewIOS/ProgressViewIOS.ios.js +0 -75
  293. package/Libraries/Components/ProgressViewIOS/ProgressViewIOS.win32.js +0 -45
  294. package/Libraries/Components/ProgressViewIOS/RCTProgressViewNativeComponent.js +0 -33
  295. package/Libraries/Components/SafeAreaView/SafeAreaView.flow.js +0 -19
  296. package/Libraries/Components/Slider/Slider.d.ts +0 -132
  297. package/Libraries/Components/Slider/Slider.js +0 -282
  298. package/Libraries/Components/Slider/SliderNativeComponent.js +0 -56
  299. package/Libraries/Components/TextInput/Win32TextInputNativeComponent.js +0 -23
  300. package/Libraries/Interaction/Batchinator.js +0 -76
  301. package/Libraries/Interaction/BridgeSpyStallHandler.js +0 -63
  302. package/Libraries/Interaction/InteractionStallDebugger.js +0 -23
  303. package/Libraries/Interaction/PanResponder.flow.js +0 -257
  304. package/Libraries/Lists/CellRenderMask.js +0 -155
  305. package/Libraries/Lists/ChildListCollection.js +0 -72
  306. package/Libraries/Lists/StateSafePureComponent.js +0 -85
  307. package/Libraries/Lists/VirtualizedList.d.ts +0 -347
  308. package/Libraries/Lists/VirtualizedListCellRenderer.js +0 -259
  309. package/Libraries/Lists/VirtualizedListProps.js +0 -279
  310. package/Libraries/Performance/PureComponentDebug.js +0 -74
  311. package/Libraries/Reliability/UserFlow.js +0 -158
  312. package/Libraries/Renderer/implementations/ReactNativeRenderer.d.ts +0 -149
  313. package/Libraries/Renderer/shims/ReactNativeTypes.d.ts +0 -141
  314. package/Libraries/Utilities/MatrixMath.js +0 -748
  315. package/Libraries/Utilities/buildStyleInterpolator.js +0 -209
  316. package/Libraries/Utilities/clamp.js +0 -23
  317. package/Libraries/Utilities/deprecatedPropType.js +0 -36
  318. package/Libraries/Utilities/groupByEveryN.js +0 -51
  319. package/Libraries/Utilities/mergeIntoFast.js +0 -26
  320. package/Libraries/Utilities/setAndForwardRef.js +0 -71
  321. package/Libraries/Utilities/truncate.js +0 -51
  322. package/flow/JSITimerInternalType.js +0 -30
  323. package/flow/use-sync-external-store.js +0 -19
@@ -176,10 +176,10 @@ const validAttributesForNonEventProps = {
176
176
  accessibilityElementsHidden: true,
177
177
  accessibilityIgnoresInvertColors: true,
178
178
  testID: true,
179
- backgroundColor: {process: require('../StyleSheet/processColor')},
179
+ backgroundColor: {process: require('../StyleSheet/processColor').default},
180
180
  backfaceVisibility: true,
181
181
  opacity: true,
182
- shadowColor: {process: require('../StyleSheet/processColor')},
182
+ shadowColor: {process: require('../StyleSheet/processColor').default},
183
183
  shadowOffset: {diff: require('../Utilities/differ/sizesDiffer')},
184
184
  shadowOpacity: true,
185
185
  shadowRadius: true,
@@ -193,7 +193,7 @@ const validAttributesForNonEventProps = {
193
193
  pointerEvents: true,
194
194
  removeClippedSubviews: true,
195
195
  borderRadius: true,
196
- borderColor: {process: require('../StyleSheet/processColor')},
196
+ borderColor: {process: require('../StyleSheet/processColor').default},
197
197
  borderCurve: true,
198
198
  borderWidth: true,
199
199
  borderStyle: true,
@@ -201,17 +201,17 @@ const validAttributesForNonEventProps = {
201
201
  collapsable: true,
202
202
 
203
203
  borderTopWidth: true,
204
- borderTopColor: {process: require('../StyleSheet/processColor')},
204
+ borderTopColor: {process: require('../StyleSheet/processColor').default},
205
205
  borderRightWidth: true,
206
- borderRightColor: {process: require('../StyleSheet/processColor')},
206
+ borderRightColor: {process: require('../StyleSheet/processColor').default},
207
207
  borderBottomWidth: true,
208
- borderBottomColor: {process: require('../StyleSheet/processColor')},
208
+ borderBottomColor: {process: require('../StyleSheet/processColor').default},
209
209
  borderLeftWidth: true,
210
- borderLeftColor: {process: require('../StyleSheet/processColor')},
210
+ borderLeftColor: {process: require('../StyleSheet/processColor').default},
211
211
  borderStartWidth: true,
212
- borderStartColor: {process: require('../StyleSheet/processColor')},
212
+ borderStartColor: {process: require('../StyleSheet/processColor').default},
213
213
  borderEndWidth: true,
214
- borderEndColor: {process: require('../StyleSheet/processColor')},
214
+ borderEndColor: {process: require('../StyleSheet/processColor').default},
215
215
 
216
216
  borderTopLeftRadius: true,
217
217
  borderTopRightRadius: true,
@@ -221,6 +221,10 @@ const validAttributesForNonEventProps = {
221
221
  borderBottomRightRadius: true,
222
222
  borderBottomStartRadius: true,
223
223
  borderBottomEndRadius: true,
224
+ borderEndEndRadius: true,
225
+ borderEndStartRadius: true,
226
+ borderStartEndRadius: true,
227
+ borderStartStartRadius: true,
224
228
  display: true,
225
229
  zIndex: true,
226
230
 
@@ -232,6 +236,14 @@ const validAttributesForNonEventProps = {
232
236
  bottom: true,
233
237
  left: true,
234
238
 
239
+ inset: true,
240
+ insetBlock: true,
241
+ insetBlockEnd: true,
242
+ insetBlockStart: true,
243
+ insetInline: true,
244
+ insetInlineEnd: true,
245
+ insetInlineStart: true,
246
+
235
247
  width: true,
236
248
  height: true,
237
249
 
@@ -249,25 +261,37 @@ const validAttributesForNonEventProps = {
249
261
  // borderEndWidth: true,
250
262
  // borderWidth: true,
251
263
 
252
- marginTop: true,
253
- marginRight: true,
264
+ margin: true,
265
+ marginBlock: true,
266
+ marginBlockEnd: true,
267
+ marginBlockStart: true,
254
268
  marginBottom: true,
269
+ marginEnd: true,
270
+ marginHorizontal: true,
271
+ marginInline: true,
272
+ marginInlineEnd: true,
273
+ marginInlineStart: true,
255
274
  marginLeft: true,
275
+ marginRight: true,
256
276
  marginStart: true,
257
- marginEnd: true,
277
+ marginTop: true,
258
278
  marginVertical: true,
259
- marginHorizontal: true,
260
- margin: true,
261
279
 
262
- paddingTop: true,
263
- paddingRight: true,
280
+ padding: true,
281
+ paddingBlock: true,
282
+ paddingBlockEnd: true,
283
+ paddingBlockStart: true,
264
284
  paddingBottom: true,
285
+ paddingEnd: true,
286
+ paddingHorizontal: true,
287
+ paddingInline: true,
288
+ paddingInlineEnd: true,
289
+ paddingInlineStart: true,
265
290
  paddingLeft: true,
291
+ paddingRight: true,
266
292
  paddingStart: true,
267
- paddingEnd: true,
293
+ paddingTop: true,
268
294
  paddingVertical: true,
269
- paddingHorizontal: true,
270
- padding: true,
271
295
 
272
296
  flex: true,
273
297
  flexGrow: true,
@@ -176,10 +176,10 @@ const validAttributesForNonEventProps = {
176
176
  accessibilityElementsHidden: true,
177
177
  accessibilityIgnoresInvertColors: true,
178
178
  testID: true,
179
- backgroundColor: {process: require('../StyleSheet/processColor')},
179
+ backgroundColor: {process: require('../StyleSheet/processColor').default},
180
180
  backfaceVisibility: true,
181
181
  opacity: true,
182
- shadowColor: {process: require('../StyleSheet/processColor')},
182
+ shadowColor: {process: require('../StyleSheet/processColor').default},
183
183
  shadowOffset: {diff: require('../Utilities/differ/sizesDiffer')},
184
184
  shadowOpacity: true,
185
185
  shadowRadius: true,
@@ -193,7 +193,7 @@ const validAttributesForNonEventProps = {
193
193
  pointerEvents: true,
194
194
  removeClippedSubviews: true,
195
195
  borderRadius: true,
196
- borderColor: {process: require('../StyleSheet/processColor')},
196
+ borderColor: {process: require('../StyleSheet/processColor').default},
197
197
  borderCurve: true,
198
198
  borderWidth: true,
199
199
  borderStyle: true,
@@ -201,17 +201,17 @@ const validAttributesForNonEventProps = {
201
201
  collapsable: true,
202
202
 
203
203
  borderTopWidth: true,
204
- borderTopColor: {process: require('../StyleSheet/processColor')},
204
+ borderTopColor: {process: require('../StyleSheet/processColor').default},
205
205
  borderRightWidth: true,
206
- borderRightColor: {process: require('../StyleSheet/processColor')},
206
+ borderRightColor: {process: require('../StyleSheet/processColor').default},
207
207
  borderBottomWidth: true,
208
- borderBottomColor: {process: require('../StyleSheet/processColor')},
208
+ borderBottomColor: {process: require('../StyleSheet/processColor').default},
209
209
  borderLeftWidth: true,
210
- borderLeftColor: {process: require('../StyleSheet/processColor')},
210
+ borderLeftColor: {process: require('../StyleSheet/processColor').default},
211
211
  borderStartWidth: true,
212
- borderStartColor: {process: require('../StyleSheet/processColor')},
212
+ borderStartColor: {process: require('../StyleSheet/processColor').default},
213
213
  borderEndWidth: true,
214
- borderEndColor: {process: require('../StyleSheet/processColor')},
214
+ borderEndColor: {process: require('../StyleSheet/processColor').default},
215
215
 
216
216
  borderTopLeftRadius: true,
217
217
  borderTopRightRadius: true,
@@ -221,6 +221,10 @@ const validAttributesForNonEventProps = {
221
221
  borderBottomRightRadius: true,
222
222
  borderBottomStartRadius: true,
223
223
  borderBottomEndRadius: true,
224
+ borderEndEndRadius: true,
225
+ borderEndStartRadius: true,
226
+ borderStartEndRadius: true,
227
+ borderStartStartRadius: true,
224
228
  display: true,
225
229
  zIndex: true,
226
230
 
@@ -232,6 +236,14 @@ const validAttributesForNonEventProps = {
232
236
  bottom: true,
233
237
  left: true,
234
238
 
239
+ inset: true,
240
+ insetBlock: true,
241
+ insetBlockEnd: true,
242
+ insetBlockStart: true,
243
+ insetInline: true,
244
+ insetInlineEnd: true,
245
+ insetInlineStart: true,
246
+
235
247
  width: true,
236
248
  height: true,
237
249
 
@@ -249,25 +261,37 @@ const validAttributesForNonEventProps = {
249
261
  // borderEndWidth: true,
250
262
  // borderWidth: true,
251
263
 
252
- marginTop: true,
253
- marginRight: true,
264
+ margin: true,
265
+ marginBlock: true,
266
+ marginBlockEnd: true,
267
+ marginBlockStart: true,
254
268
  marginBottom: true,
269
+ marginEnd: true,
270
+ marginHorizontal: true,
271
+ marginInline: true,
272
+ marginInlineEnd: true,
273
+ marginInlineStart: true,
255
274
  marginLeft: true,
275
+ marginRight: true,
256
276
  marginStart: true,
257
- marginEnd: true,
277
+ marginTop: true,
258
278
  marginVertical: true,
259
- marginHorizontal: true,
260
- margin: true,
261
279
 
262
- paddingTop: true,
263
- paddingRight: true,
280
+ padding: true,
281
+ paddingBlock: true,
282
+ paddingBlockEnd: true,
283
+ paddingBlockStart: true,
264
284
  paddingBottom: true,
285
+ paddingEnd: true,
286
+ paddingHorizontal: true,
287
+ paddingInline: true,
288
+ paddingInlineEnd: true,
289
+ paddingInlineStart: true,
265
290
  paddingLeft: true,
291
+ paddingRight: true,
266
292
  paddingStart: true,
267
- paddingEnd: true,
293
+ paddingTop: true,
268
294
  paddingVertical: true,
269
- paddingHorizontal: true,
270
- padding: true,
271
295
 
272
296
  flex: true,
273
297
  flexGrow: true,
@@ -3,6 +3,9 @@
3
3
  *
4
4
  * This source code is licensed under the MIT license found in the
5
5
  * LICENSE file in the root directory of this source tree.
6
+ *
7
+ * @flow strict
8
+ * @format
6
9
  */
7
10
 
8
11
  let componentNameToExists: Map<string, boolean> = new Map();
@@ -11,7 +14,7 @@ let componentNameToExists: Map<string, boolean> = new Map();
11
14
  * Unstable API. Do not use!
12
15
  *
13
16
  * This method returns if the component with name received as a parameter
14
- * is registed in the native platform.
17
+ * is registered in the native platform.
15
18
  */
16
19
  export function unstable_hasComponent(name: string): boolean {
17
20
  let hasNativeComponent = componentNameToExists.get(name);
@@ -32,6 +32,7 @@ export function createViewConfig(
32
32
  PlatformBaseViewConfig.directEventTypes,
33
33
  partialViewConfig.directEventTypes,
34
34
  ),
35
+ // $FlowFixMe[incompatible-return]
35
36
  validAttributes: composeIndexers(
36
37
  // $FlowFixMe[incompatible-call] `style` property confuses Flow.
37
38
  PlatformBaseViewConfig.validAttributes,
@@ -37,10 +37,7 @@ export function DynamicallyInjectedByGestureHandler<T: {...}>(object: T): T {
37
37
  export function ConditionallyIgnoredEventHandlers<T: {[name: string]: true}>(
38
38
  value: T,
39
39
  ): T | void {
40
- if (
41
- Platform.OS === 'ios' &&
42
- !(global.RN$ViewConfigEventValidAttributesDisabled === true)
43
- ) {
40
+ if (Platform.OS === 'ios') {
44
41
  return value;
45
42
  }
46
43
  return undefined;
@@ -22,7 +22,7 @@ type Header = [string, string];
22
22
  // Convert FormData headers to arrays, which are easier to consume in
23
23
  // native on Android.
24
24
  function convertHeadersMapToArray(headers: Object): Array<Header> {
25
- const headerArray = [];
25
+ const headerArray: Array<Header> = [];
26
26
  for (const name in headers) {
27
27
  headerArray.push([name, headers[name]]);
28
28
  }
@@ -91,4 +91,4 @@ class RCTNetworking extends NativeEventEmitter<$FlowFixMe> {
91
91
  }
92
92
  }
93
93
 
94
- module.exports = (new RCTNetworking(): RCTNetworking);
94
+ export default (new RCTNetworking(): RCTNetworking);
@@ -109,4 +109,4 @@ const RCTNetworking = {
109
109
  },
110
110
  };
111
111
 
112
- module.exports = RCTNetworking;
112
+ export default RCTNetworking;
@@ -115,4 +115,4 @@ const RCTNetworking = {
115
115
  },
116
116
  };
117
117
 
118
- module.exports = RCTNetworking;
118
+ export default RCTNetworking;
@@ -16,7 +16,7 @@ import {type EventSubscription} from '../vendor/emitter/EventEmitter';
16
16
 
17
17
  const BlobManager = require('../Blob/BlobManager');
18
18
  const GlobalPerformanceLogger = require('../Utilities/GlobalPerformanceLogger');
19
- const RCTNetworking = require('./RCTNetworking');
19
+ const RCTNetworking = require('./RCTNetworking').default;
20
20
  const base64 = require('base64-js');
21
21
  const EventTarget = require('event-target-shim');
22
22
  const invariant = require('invariant');
@@ -112,7 +112,7 @@ export type PressabilityConfig = $ReadOnly<{|
112
112
  onLongPress?: ?(event: PressEvent) => mixed,
113
113
 
114
114
  /**
115
- * Called when a press gestute has been triggered.
115
+ * Called when a press gesture has been triggered.
116
116
  */
117
117
  onPress?: ?(event: PressEvent) => mixed,
118
118
 
@@ -281,6 +281,8 @@ const DEFAULT_PRESS_RECT_OFFSETS = {
281
281
  };
282
282
  const DEFAULT_MIN_PRESS_DURATION = 130;
283
283
 
284
+ const DEFAULT_LONG_PRESS_DEACTIVATION_DISTANCE = 10;
285
+ let longPressDeactivationDistance = DEFAULT_LONG_PRESS_DEACTIVATION_DISTANCE;
284
286
  /**
285
287
  * Pressability implements press handling capabilities.
286
288
  *
@@ -293,7 +295,7 @@ const DEFAULT_MIN_PRESS_DURATION = 130;
293
295
  *
294
296
  * - When a press has activated (e.g. highlight an element)
295
297
  * - When a press has deactivated (e.g. un-highlight an element)
296
- * - When a press sould trigger an action, meaning it activated and deactivated
298
+ * - When a press should trigger an action, meaning it activated and deactivated
297
299
  * while within the geometry of the element without the lock being stolen.
298
300
  *
299
301
  * A high quality interaction isn't as simple as you might think. There should
@@ -430,6 +432,10 @@ export default class Pressability {
430
432
  return this._eventHandlers;
431
433
  }
432
434
 
435
+ static setLongPressDeactivationDistance(distance: number): void {
436
+ longPressDeactivationDistance = distance;
437
+ }
438
+
433
439
  _createEventHandlers(): EventHandlers {
434
440
  const focusEventHandlers = {
435
441
  onBlur: (event: BlurEvent): void => {
@@ -508,7 +514,7 @@ export default class Pressability {
508
514
  if (this._touchActivatePosition != null) {
509
515
  const deltaX = this._touchActivatePosition.pageX - touch.pageX;
510
516
  const deltaY = this._touchActivatePosition.pageY - touch.pageY;
511
- if (Math.hypot(deltaX, deltaY) > 10) {
517
+ if (Math.hypot(deltaX, deltaY) > longPressDeactivationDistance) {
512
518
  this._cancelLongPressDelayTimeout();
513
519
  }
514
520
  }
@@ -559,8 +565,8 @@ export default class Pressability {
559
565
  ReactNativeFeatureFlags.shouldPressibilityUseW3CPointerEventsForHover()
560
566
  ) {
561
567
  const hoverPointerEvents = {
562
- onPointerEnter: undefined,
563
- onPointerLeave: undefined,
568
+ onPointerEnter: (undefined: void | (PointerEvent => void)),
569
+ onPointerLeave: (undefined: void | (PointerEvent => void)),
564
570
  };
565
571
  const {onHoverIn, onHoverOut} = this._config;
566
572
  if (onHoverIn != null) {
@@ -312,6 +312,8 @@ const DEFAULT_PRESS_RECT_OFFSETS = {
312
312
  };
313
313
  const DEFAULT_MIN_PRESS_DURATION = 130;
314
314
 
315
+ const DEFAULT_LONG_PRESS_DEACTIVATION_DISTANCE = 10;
316
+ let longPressDeactivationDistance = DEFAULT_LONG_PRESS_DEACTIVATION_DISTANCE;
315
317
  /**
316
318
  * Pressability implements press handling capabilities.
317
319
  *
@@ -461,6 +463,10 @@ export default class Pressability {
461
463
  return this._eventHandlers;
462
464
  }
463
465
 
466
+ static setLongPressDeactivationDistance(distance: number): void {
467
+ longPressDeactivationDistance = distance;
468
+ }
469
+
464
470
  _createEventHandlers(): EventHandlers {
465
471
  const focusEventHandlers = {
466
472
  onBlur: (event: BlurEvent): void => {
@@ -539,7 +545,7 @@ export default class Pressability {
539
545
  if (this._touchActivatePosition != null) {
540
546
  const deltaX = this._touchActivatePosition.pageX - touch.pageX;
541
547
  const deltaY = this._touchActivatePosition.pageY - touch.pageY;
542
- if (Math.hypot(deltaX, deltaY) > 10) {
548
+ if (Math.hypot(deltaX, deltaY) > longPressDeactivationDistance) {
543
549
  this._cancelLongPressDelayTimeout();
544
550
  }
545
551
  }
@@ -627,8 +633,8 @@ export default class Pressability {
627
633
  ReactNativeFeatureFlags.shouldPressibilityUseW3CPointerEventsForHover()
628
634
  ) {
629
635
  const hoverPointerEvents = {
630
- onPointerEnter: undefined,
631
- onPointerLeave: undefined,
636
+ onPointerEnter: (undefined: void | (PointerEvent => void)),
637
+ onPointerLeave: (undefined: void | (PointerEvent => void)),
632
638
  };
633
639
  const {onHoverIn, onHoverOut} = this._config;
634
640
  if (onHoverIn != null) {
@@ -32,6 +32,7 @@ type Props = $ReadOnly<{|
32
32
  type State = {|
33
33
  inspector: ?React.Node,
34
34
  devtoolsOverlay: ?React.Node,
35
+ traceUpdateOverlay: ?React.Node,
35
36
  mainKey: number,
36
37
  hasError: boolean,
37
38
  |};
@@ -40,6 +41,7 @@ class AppContainer extends React.Component<Props, State> {
40
41
  state: State = {
41
42
  inspector: null,
42
43
  devtoolsOverlay: null,
44
+ traceUpdateOverlay: null,
43
45
  mainKey: 1,
44
46
  hasError: false,
45
47
  };
@@ -75,7 +77,10 @@ class AppContainer extends React.Component<Props, State> {
75
77
  const devtoolsOverlay = (
76
78
  <DevtoolsOverlay inspectedView={this._mainRef} />
77
79
  );
78
- this.setState({devtoolsOverlay});
80
+ const TraceUpdateOverlay =
81
+ require('../Components/TraceUpdateOverlay/TraceUpdateOverlay').default;
82
+ const traceUpdateOverlay = <TraceUpdateOverlay />;
83
+ this.setState({devtoolsOverlay, traceUpdateOverlay});
79
84
  }
80
85
  }
81
86
  }
@@ -127,6 +132,7 @@ class AppContainer extends React.Component<Props, State> {
127
132
  <RootTagContext.Provider value={createRootTag(this.props.rootTag)}>
128
133
  <View style={styles.appContainer} pointerEvents="box-none">
129
134
  {!this.state.hasError && innerView}
135
+ {this.state.traceUpdateOverlay}
130
136
  {this.state.devtoolsOverlay}
131
137
  {this.state.inspector}
132
138
  {logBox}
@@ -8,7 +8,7 @@
8
8
  */
9
9
 
10
10
  import type * as React from 'react';
11
- import type {IPerformanceLogger} from '../Utilities/createPerformanceLogger';
11
+ import type {IPerformanceLogger} from '../Utilities/IPerformanceLogger';
12
12
 
13
13
  type Task = (taskData: any) => Promise<void>;
14
14
  type TaskProvider = () => Task;
@@ -312,6 +312,7 @@ const AppRegistry = {
312
312
  NativeHeadlessJsTaskSupport &&
313
313
  reason instanceof HeadlessJsTaskError
314
314
  ) {
315
+ // $FlowFixMe[unused-promise]
315
316
  NativeHeadlessJsTaskSupport.notifyTaskRetry(taskId).then(
316
317
  retryPosted => {
317
318
  if (!retryPosted) {
@@ -340,19 +341,15 @@ const AppRegistry = {
340
341
  if (!(global.RN$Bridgeless === true)) {
341
342
  BatchedBridge.registerCallableModule('AppRegistry', AppRegistry);
342
343
 
343
- if (__DEV__) {
344
- const LogBoxInspector =
345
- require('../LogBox/LogBoxInspectorContainer').default;
346
- AppRegistry.registerComponent('LogBox', () => LogBoxInspector);
347
- } else {
348
- AppRegistry.registerComponent(
349
- 'LogBox',
350
- () =>
351
- function NoOp() {
352
- return null;
353
- },
354
- );
355
- }
344
+ AppRegistry.registerComponent('LogBox', () => {
345
+ if (__DEV__) {
346
+ return require('../LogBox/LogBoxInspectorContainer').default;
347
+ } else {
348
+ return function NoOp() {
349
+ return null;
350
+ };
351
+ }
352
+ });
356
353
  }
357
354
 
358
355
  module.exports = AppRegistry;
@@ -4,7 +4,7 @@
4
4
  * This source code is licensed under the MIT license found in the
5
5
  * LICENSE file in the root directory of this source tree.
6
6
  *
7
- * @flow strict-local
7
+ * @flow strict
8
8
  * @format
9
9
  */
10
10
 
@@ -19,7 +19,7 @@ import type {
19
19
  import type {RootTag} from '../Types/RootTagTypes';
20
20
 
21
21
  // TODO: type these properly.
22
- type Node = {...};
22
+ export opaque type Node = {...};
23
23
  type NodeSet = Array<Node>;
24
24
  type NodeProps = {...};
25
25
  type InstanceHandle = {...};
@@ -53,13 +53,29 @@ export type Spec = {|
53
53
  +configureNextLayoutAnimation: (
54
54
  config: LayoutAnimationConfig,
55
55
  callback: () => void, // check what is returned here
56
- // This error isn't currently called anywhere, so the `error` object is really not defined
57
- // $FlowFixMe[unclear-type]
58
- errorCallback: (error: Object) => void,
56
+ errorCallback: () => void,
59
57
  ) => void,
60
58
  +sendAccessibilityEvent: (node: Node, eventType: string) => void,
59
+ +findShadowNodeByTag_DEPRECATED: (reactTag: number) => ?Node,
60
+ +getBoundingClientRect: (
61
+ node: Node,
62
+ ) => [
63
+ /* x:*/ number,
64
+ /* y:*/ number,
65
+ /* width:*/ number,
66
+ /* height:*/ number,
67
+ ],
68
+ +setNativeProps: (node: Node, newProps: NodeProps) => void,
69
+ +dispatchCommand: (
70
+ node: Node,
71
+ commandName: string,
72
+ args: Array<mixed>,
73
+ ) => void,
61
74
  |};
62
75
 
63
- const FabricUIManager: ?Spec = global.nativeFabricUIManager;
64
-
65
- module.exports = FabricUIManager;
76
+ // This is exposed as a getter because apps using the legacy renderer AND
77
+ // Fabric can define the binding lazily. If we evaluated the global and cached
78
+ // it in the module we might be caching an `undefined` value before it is set.
79
+ export function getFabricUIManager(): ?Spec {
80
+ return global.nativeFabricUIManager;
81
+ }
@@ -44,7 +44,7 @@ export interface Spec extends TurboModule {
44
44
  commandArgs: ?Array<any>,
45
45
  ) => void;
46
46
  +measure: (
47
- reactTag: ?number,
47
+ reactTag: number,
48
48
  callback: (
49
49
  left: number,
50
50
  top: number,
@@ -55,7 +55,7 @@ export interface Spec extends TurboModule {
55
55
  ) => void,
56
56
  ) => void;
57
57
  +measureInWindow: (
58
- reactTag: ?number,
58
+ reactTag: number,
59
59
  callback: (x: number, y: number, width: number, height: number) => void,
60
60
  ) => void;
61
61
  +viewIsDescendantOf: (
@@ -64,8 +64,8 @@ export interface Spec extends TurboModule {
64
64
  callback: (result: Array<boolean>) => void,
65
65
  ) => void;
66
66
  +measureLayout: (
67
- reactTag: ?number,
68
- ancestorReactTag: ?number,
67
+ reactTag: number,
68
+ ancestorReactTag: number,
69
69
  errorCallback: (error: Object) => void,
70
70
  callback: (
71
71
  left: number,
@@ -75,7 +75,7 @@ export interface Spec extends TurboModule {
75
75
  ) => void,
76
76
  ) => void;
77
77
  +measureLayoutRelativeToParent: (
78
- reactTag: ?number,
78
+ reactTag: number,
79
79
  errorCallback: (error: Object) => void,
80
80
  callback: (
81
81
  left: number,
@@ -4,12 +4,10 @@
4
4
  * This source code is licensed under the MIT license found in the
5
5
  * LICENSE file in the root directory of this source tree.
6
6
  *
7
- * @flow strict-local
7
+ * @flow strict
8
8
  * @format
9
9
  */
10
10
 
11
- 'use strict';
12
-
13
11
  export type FeatureFlags = {|
14
12
  /**
15
13
  * Function used to enable / disabled Layout Animations in React Native.
@@ -39,12 +37,14 @@ export type FeatureFlags = {|
39
37
  */
40
38
  animatedShouldUseSingleOp: () => boolean,
41
39
  /**
42
- * This feature flag enables an experimental render system that allows
43
- * to render react components driven by classes written in C++.
40
+ * Enables GlobalPerformanceLogger replacement with a WebPerformance API based
41
+ * implementation
44
42
  */
45
- enableCppRenderSystem: () => boolean,
46
-
47
- removeListenersOnDetach: () => boolean,
43
+ isGlobalWebPerformanceLoggerEnabled: () => boolean,
44
+ /**
45
+ * Enables access to the host tree in Fabric using DOM-compatible APIs.
46
+ */
47
+ enableAccessToHostTreeInFabric: () => boolean,
48
48
  |};
49
49
 
50
50
  const ReactNativeFeatureFlags: FeatureFlags = {
@@ -53,8 +53,8 @@ const ReactNativeFeatureFlags: FeatureFlags = {
53
53
  shouldPressibilityUseW3CPointerEventsForHover: () => false,
54
54
  animatedShouldDebounceQueueFlush: () => false,
55
55
  animatedShouldUseSingleOp: () => false,
56
- enableCppRenderSystem: () => false,
57
- removeListenersOnDetach: () => false,
56
+ isGlobalWebPerformanceLoggerEnabled: () => false,
57
+ enableAccessToHostTreeInFabric: () => false,
58
58
  };
59
59
 
60
60
  module.exports = ReactNativeFeatureFlags;