@office-iss/react-native-win32 0.71.5 → 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 (324) hide show
  1. package/.flowconfig +15 -3
  2. package/CHANGELOG.json +302 -47
  3. package/CHANGELOG.md +141 -27
  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/Components/View/ViewWin32.js +3 -3
  87. package/Libraries/Core/Devtools/openFileInEditor.js +1 -0
  88. package/Libraries/Core/Devtools/openURLInBrowser.js +1 -0
  89. package/Libraries/Core/Devtools/parseErrorStack.js +2 -2
  90. package/Libraries/Core/Devtools/parseHermesStack.js +54 -34
  91. package/Libraries/Core/ExceptionsManager.js +2 -2
  92. package/Libraries/Core/InitializeCore.js +2 -1
  93. package/Libraries/Core/ReactNativeVersion.js +3 -3
  94. package/Libraries/Core/ReactNativeVersionCheck.js +1 -9
  95. package/Libraries/Core/ReactNativeVersionCheck.win32.js +1 -9
  96. package/Libraries/Core/Timers/JSTimers.js +1 -1
  97. package/Libraries/Core/Timers/immediateShim.js +1 -0
  98. package/Libraries/Core/Timers/queueMicrotask.js +1 -1
  99. package/Libraries/Core/setUpAlert.js +1 -1
  100. package/Libraries/Core/setUpDOM.js +18 -0
  101. package/Libraries/Core/setUpDeveloperTools.js +1 -1
  102. package/Libraries/Core/setUpGlobals.js +5 -2
  103. package/Libraries/Core/setUpNavigator.js +6 -5
  104. package/Libraries/Core/setUpPerformance.js +23 -13
  105. package/Libraries/Core/setUpReactDevTools.js +2 -0
  106. package/Libraries/Core/setUpSegmentFetcher.js +0 -41
  107. package/Libraries/Core/setUpTimers.js +2 -2
  108. package/Libraries/DOM/Geometry/DOMRect.js +82 -0
  109. package/Libraries/DOM/Geometry/DOMRectReadOnly.js +188 -0
  110. package/Libraries/DOM/Nodes/ReactNativeElement.js +75 -0
  111. package/Libraries/DOM/Nodes/ReadOnlyElement.js +89 -0
  112. package/Libraries/DOM/Nodes/ReadOnlyNode.js +167 -0
  113. package/Libraries/DOM/OldStyleCollections/ArrayLikeUtils.js +46 -0
  114. package/Libraries/DOM/OldStyleCollections/DOMRectList.js +76 -0
  115. package/Libraries/DOM/OldStyleCollections/HTMLCollection.js +82 -0
  116. package/Libraries/DOM/OldStyleCollections/NodeList.js +104 -0
  117. package/Libraries/DevToolsSettings/DevToolsSettingsManager.android.js +35 -0
  118. package/Libraries/DevToolsSettings/DevToolsSettingsManager.d.ts +20 -0
  119. package/Libraries/DevToolsSettings/DevToolsSettingsManager.ios.js +49 -0
  120. package/Libraries/DevToolsSettings/DevToolsSettingsManager.win32.js +35 -0
  121. package/Libraries/{Utilities/NativeDevSplitBundleLoader.js → DevToolsSettings/NativeDevToolsSettingsManager.js} +7 -2
  122. package/Libraries/EventEmitter/NativeEventEmitter.d.ts +1 -2
  123. package/Libraries/EventEmitter/RCTDeviceEventEmitter.d.ts +1 -2
  124. package/Libraries/EventEmitter/RCTDeviceEventEmitter.js +9 -1
  125. package/Libraries/Events/EventPolyfill.js +1 -1
  126. package/Libraries/Image/AssetRegistry.js +1 -1
  127. package/Libraries/Image/AssetSourceResolver.js +3 -3
  128. package/Libraries/Image/Image.android.js +4 -1
  129. package/Libraries/Image/Image.d.ts +63 -2
  130. package/Libraries/Image/Image.ios.js +3 -0
  131. package/Libraries/Image/Image.win32.js +3 -0
  132. package/Libraries/Image/ImageBackground.js +1 -0
  133. package/Libraries/Image/ImageProps.js +1 -1
  134. package/Libraries/Image/ImageViewNativeComponent.js +4 -4
  135. package/Libraries/Image/RelativeImageStub.js +1 -1
  136. package/Libraries/Image/TextInlineImageNativeComponent.js +1 -1
  137. package/Libraries/Image/resolveAssetSource.js +1 -1
  138. package/Libraries/Inspector/DevtoolsOverlay.js +29 -19
  139. package/Libraries/Inspector/ElementBox.js +4 -1
  140. package/Libraries/Inspector/Inspector.js +5 -6
  141. package/Libraries/Inspector/Inspector.win32.js +7 -6
  142. package/Libraries/Inspector/InspectorOverlay.js +3 -3
  143. package/Libraries/Inspector/InspectorOverlay.win32.js +2 -1
  144. package/Libraries/Inspector/NetworkOverlay.js +1 -1
  145. package/Libraries/Interaction/JSEventLoopWatchdog.js +1 -1
  146. package/Libraries/Interaction/PanResponder.js +5 -6
  147. package/Libraries/LayoutAnimation/LayoutAnimation.js +2 -1
  148. package/Libraries/Linking/Linking.js +1 -4
  149. package/Libraries/Lists/FillRateHelper.js +4 -238
  150. package/Libraries/Lists/FlatList.d.ts +15 -22
  151. package/Libraries/Lists/FlatList.js +9 -6
  152. package/Libraries/Lists/SectionList.d.ts +10 -6
  153. package/Libraries/Lists/SectionList.js +5 -3
  154. package/Libraries/Lists/SectionListModern.js +3 -3
  155. package/Libraries/Lists/ViewabilityHelper.js +8 -344
  156. package/Libraries/Lists/VirtualizeUtils.js +4 -244
  157. package/Libraries/Lists/VirtualizedList.js +10 -1867
  158. package/Libraries/Lists/VirtualizedListContext.js +6 -104
  159. package/Libraries/Lists/VirtualizedSectionList.js +9 -602
  160. package/Libraries/Lists/__flowtests__/FlatList-flowtest.js +1 -0
  161. package/Libraries/Lists/__flowtests__/SectionList-flowtest.js +1 -1
  162. package/Libraries/LogBox/Data/LogBoxData.js +1 -1
  163. package/Libraries/LogBox/Data/parseLogBoxLog.js +1 -1
  164. package/Libraries/LogBox/LogBox.js +1 -1
  165. package/Libraries/LogBox/UI/LogBoxInspector.js +1 -3
  166. package/Libraries/LogBox/UI/LogBoxInspectorCodeFrame.win32.js +168 -0
  167. package/Libraries/LogBox/UI/LogBoxInspectorHeader.win32.js +3 -0
  168. package/Libraries/LogBox/UI/LogBoxInspectorReactFrames.win32.js +193 -0
  169. package/Libraries/LogBox/UI/LogBoxInspectorSourceMapStatus.js +1 -0
  170. package/Libraries/LogBox/UI/LogBoxInspectorStackFrame.js +2 -2
  171. package/Libraries/LogBox/UI/LogBoxInspectorStackFrame.win32.js +7 -3
  172. package/Libraries/LogBox/UI/LogBoxMessage.js +87 -5
  173. package/Libraries/LogBox/UI/LogBoxNotification.js +5 -7
  174. package/Libraries/Modal/Modal.js +2 -2
  175. package/Libraries/NativeComponent/BaseViewConfig.android.js +32 -12
  176. package/Libraries/NativeComponent/BaseViewConfig.ios.js +43 -19
  177. package/Libraries/NativeComponent/BaseViewConfig.win32.js +43 -19
  178. package/Libraries/NativeComponent/NativeComponentRegistryUnstable.js +4 -1
  179. package/Libraries/NativeComponent/ViewConfig.js +1 -0
  180. package/Libraries/NativeComponent/ViewConfigIgnore.js +1 -4
  181. package/Libraries/Network/RCTNetworking.android.js +2 -2
  182. package/Libraries/Network/RCTNetworking.ios.js +1 -1
  183. package/Libraries/Network/RCTNetworking.win32.js +1 -1
  184. package/Libraries/Network/XMLHttpRequest.js +1 -1
  185. package/Libraries/Pressability/Pressability.js +11 -5
  186. package/Libraries/Pressability/Pressability.win32.js +9 -3
  187. package/Libraries/ReactNative/AppContainer.js +7 -1
  188. package/Libraries/ReactNative/AppRegistry.d.ts +1 -1
  189. package/Libraries/ReactNative/AppRegistry.js +10 -13
  190. package/Libraries/ReactNative/FabricUIManager.js +24 -8
  191. package/Libraries/ReactNative/NativeUIManager.js +5 -5
  192. package/Libraries/ReactNative/ReactNativeFeatureFlags.js +10 -10
  193. package/Libraries/ReactNative/UIManager.js +142 -1
  194. package/Libraries/ReactNative/getCachedComponentWithDebugName.js +5 -5
  195. package/Libraries/ReactNative/getNativeComponentAttributes.js +1 -1
  196. package/Libraries/ReactNative/requireNativeComponent.d.ts +1 -1
  197. package/Libraries/ReactNative/requireNativeComponent.js +1 -1
  198. package/Libraries/ReactPrivate/ReactNativePrivateInterface.js +1 -0
  199. package/Libraries/Renderer/implementations/ReactFabric-dev.js +26 -3
  200. package/Libraries/Renderer/implementations/ReactFabric-prod.js +13 -1
  201. package/Libraries/Renderer/implementations/ReactFabric-profiling.js +13 -1
  202. package/Libraries/Renderer/public/ReactFabricPublicInstanceUtils.js +38 -0
  203. package/Libraries/Renderer/shims/ReactNativeTypes.js +38 -20
  204. package/Libraries/Renderer/shims/ReactNativeViewConfigRegistry.js +7 -7
  205. package/Libraries/Renderer/shims/createReactNativeComponentClass.js +2 -2
  206. package/Libraries/Share/Share.js +1 -1
  207. package/Libraries/StyleSheet/PlatformColorValueTypes.ios.js +1 -1
  208. package/Libraries/StyleSheet/StyleSheet.js +1 -1
  209. package/Libraries/StyleSheet/StyleSheet.win32.js +1 -1
  210. package/Libraries/StyleSheet/StyleSheetTypes.d.ts +115 -76
  211. package/Libraries/StyleSheet/StyleSheetTypes.js +188 -33
  212. package/Libraries/StyleSheet/flattenStyle.js +2 -0
  213. package/Libraries/StyleSheet/normalizeColor.js +1 -1
  214. package/Libraries/StyleSheet/processColor.js +1 -1
  215. package/Libraries/Text/Text.d.ts +12 -2
  216. package/Libraries/Text/Text.js +50 -41
  217. package/Libraries/Text/TextProps.js +3 -4
  218. package/Libraries/TurboModule/samples/NativeSampleTurboModule.js +6 -0
  219. package/Libraries/Types/CodegenTypes.js +1 -0
  220. package/Libraries/UTFSequence.js +3 -1
  221. package/Libraries/Utilities/Appearance.d.ts +10 -0
  222. package/Libraries/Utilities/Appearance.js +13 -0
  223. package/Libraries/Utilities/Dimensions.js +1 -1
  224. package/Libraries/Utilities/Dimensions.win32.js +1 -1
  225. package/Libraries/Utilities/GlobalPerformanceLogger.js +12 -1
  226. package/Libraries/Utilities/HMRClient.js +16 -10
  227. package/Libraries/Utilities/{createPerformanceLogger.d.ts → IPerformanceLogger.d.ts} +4 -4
  228. package/Libraries/Utilities/IPerformanceLogger.js +49 -0
  229. package/Libraries/Utilities/LoadingView.android.js +28 -11
  230. package/Libraries/Utilities/NativeAppearance.js +1 -0
  231. package/Libraries/Utilities/NativePlatformConstantsWin.js +1 -1
  232. package/Libraries/Utilities/PixelRatio.js +2 -2
  233. package/Libraries/Utilities/Platform.win32.js +1 -1
  234. package/Libraries/Utilities/ReactNativeTestTools.js +1 -1
  235. package/Libraries/Utilities/__mocks__/PixelRatio.js +1 -1
  236. package/Libraries/Utilities/codegenNativeCommands.js +2 -0
  237. package/Libraries/Utilities/createPerformanceLogger.js +55 -43
  238. package/Libraries/Utilities/stringifySafe.js +2 -7
  239. package/Libraries/Utilities/useColorScheme.js +1 -1
  240. package/Libraries/Utilities/useWindowDimensions.js +3 -3
  241. package/Libraries/WebPerformance/EventCounts.js +78 -0
  242. package/Libraries/WebPerformance/MemoryInfo.js +54 -0
  243. package/Libraries/WebPerformance/NativePerformance.js +38 -0
  244. package/Libraries/WebPerformance/NativePerformanceObserver.js +22 -7
  245. package/Libraries/WebPerformance/Performance.js +312 -0
  246. package/Libraries/WebPerformance/PerformanceEntry.js +45 -0
  247. package/Libraries/WebPerformance/PerformanceEventTiming.js +38 -0
  248. package/Libraries/WebPerformance/PerformanceObserver.js +196 -101
  249. package/Libraries/WebPerformance/RawPerformanceEntry.js +87 -0
  250. package/Libraries/WebPerformance/ReactNativeStartupTiming.js +65 -0
  251. package/Libraries/WebPerformance/__mocks__/NativePerformance.js +65 -0
  252. package/Libraries/WebPerformance/__mocks__/NativePerformanceObserver.js +101 -0
  253. package/Libraries/YellowBox/YellowBoxDeprecated.js +1 -1
  254. package/Libraries/vendor/core/ErrorUtils.js +1 -1
  255. package/Libraries/vendor/emitter/EventEmitter.d.ts +2 -2
  256. package/Libraries/vendor/emitter/EventEmitter.js +9 -1
  257. package/flow/global.js +29 -4
  258. package/flow/jest.js +258 -164
  259. package/index.js +56 -42
  260. package/index.win32.js +56 -42
  261. package/interface.js +1 -1
  262. package/jest/local-setup.js +33 -0
  263. package/jest/mockComponent.js +4 -2
  264. package/jest/mockNativeComponent.js +1 -1
  265. package/jest/mockScrollView.js +2 -1
  266. package/jest/react-native-env.js +1 -3
  267. package/jest/setup.js +11 -8
  268. package/overrides.json +115 -85
  269. package/package.json +38 -28
  270. package/rn-get-polyfills.js +1 -1
  271. package/src/Libraries/Components/TextInput/TextInput.Types.win32.ts +68 -0
  272. package/src/Libraries/Components/View/ViewAccessibility.win32.d.ts +5 -5
  273. package/src/Libraries/Components/View/ViewPropTypes.win32.d.ts +1 -1
  274. package/types/index.d.ts +2 -6
  275. package/types/modules/Codegen.d.ts +4 -4
  276. package/types/modules/globals.d.ts +27 -25
  277. package/types/public/DeprecatedPropertiesAlias.d.ts +0 -20
  278. package/types/public/ReactNativeRenderer.d.ts +2 -7
  279. package/Libraries/Animated/createAnimatedComponentInjection.js +0 -48
  280. package/Libraries/Animated/createAnimatedComponent_EXPERIMENTAL.js +0 -48
  281. package/Libraries/Components/AccessibilityInfo/AccessibilityInfo.flow.js +0 -208
  282. package/Libraries/Components/ActivityIndicator/ActivityIndicator.flow.js +0 -58
  283. package/Libraries/Components/DatePicker/DatePickerIOS.android.js +0 -47
  284. package/Libraries/Components/DatePicker/DatePickerIOS.d.ts +0 -92
  285. package/Libraries/Components/DatePicker/DatePickerIOS.flow.android.js +0 -14
  286. package/Libraries/Components/DatePicker/DatePickerIOS.flow.ios.js +0 -113
  287. package/Libraries/Components/DatePicker/DatePickerIOS.ios.js +0 -242
  288. package/Libraries/Components/DatePicker/DatePickerIOS.win32.js +0 -47
  289. package/Libraries/Components/DatePicker/RCTDatePickerNativeComponent.js +0 -60
  290. package/Libraries/Components/DatePickerAndroid/NativeDatePickerAndroid.js +0 -26
  291. package/Libraries/Components/ProgressViewIOS/ProgressViewIOS.android.js +0 -45
  292. package/Libraries/Components/ProgressViewIOS/ProgressViewIOS.d.ts +0 -62
  293. package/Libraries/Components/ProgressViewIOS/ProgressViewIOS.ios.js +0 -75
  294. package/Libraries/Components/ProgressViewIOS/ProgressViewIOS.win32.js +0 -45
  295. package/Libraries/Components/ProgressViewIOS/RCTProgressViewNativeComponent.js +0 -33
  296. package/Libraries/Components/SafeAreaView/SafeAreaView.flow.js +0 -19
  297. package/Libraries/Components/Slider/Slider.d.ts +0 -132
  298. package/Libraries/Components/Slider/Slider.js +0 -282
  299. package/Libraries/Components/Slider/SliderNativeComponent.js +0 -56
  300. package/Libraries/Components/TextInput/Win32TextInputNativeComponent.js +0 -23
  301. package/Libraries/Interaction/Batchinator.js +0 -76
  302. package/Libraries/Interaction/BridgeSpyStallHandler.js +0 -63
  303. package/Libraries/Interaction/InteractionStallDebugger.js +0 -23
  304. package/Libraries/Interaction/PanResponder.flow.js +0 -257
  305. package/Libraries/Lists/CellRenderMask.js +0 -155
  306. package/Libraries/Lists/ChildListCollection.js +0 -72
  307. package/Libraries/Lists/StateSafePureComponent.js +0 -85
  308. package/Libraries/Lists/VirtualizedList.d.ts +0 -347
  309. package/Libraries/Lists/VirtualizedListCellRenderer.js +0 -259
  310. package/Libraries/Lists/VirtualizedListProps.js +0 -279
  311. package/Libraries/Performance/PureComponentDebug.js +0 -74
  312. package/Libraries/Reliability/UserFlow.js +0 -158
  313. package/Libraries/Renderer/implementations/ReactNativeRenderer.d.ts +0 -149
  314. package/Libraries/Renderer/shims/ReactNativeTypes.d.ts +0 -141
  315. package/Libraries/Utilities/MatrixMath.js +0 -748
  316. package/Libraries/Utilities/buildStyleInterpolator.js +0 -209
  317. package/Libraries/Utilities/clamp.js +0 -23
  318. package/Libraries/Utilities/deprecatedPropType.js +0 -36
  319. package/Libraries/Utilities/groupByEveryN.js +0 -51
  320. package/Libraries/Utilities/mergeIntoFast.js +0 -26
  321. package/Libraries/Utilities/setAndForwardRef.js +0 -71
  322. package/Libraries/Utilities/truncate.js +0 -51
  323. package/flow/JSITimerInternalType.js +0 -30
  324. package/flow/use-sync-external-store.js +0 -19
@@ -1,209 +0,0 @@
1
- /**
2
- * Copyright (c) Meta Platforms, Inc. and affiliates.
3
- *
4
- * This source code is licensed under the MIT license found in the
5
- * LICENSE file in the root directory of this source tree.
6
- *
7
- * @format
8
- */
9
-
10
- 'use strict';
11
-
12
- const X_DIM = 'x';
13
- const Y_DIM = 'y';
14
- const Z_DIM = 'z';
15
-
16
- const InitialOperationField = {
17
- transformTranslate: [0, 0, 0],
18
- transformScale: [1, 1, 1],
19
- };
20
-
21
- const InterpolateMatrix = {
22
- transformScale: function (mat, x, y, z) {
23
- mat[0] = mat[0] * x;
24
- mat[1] = mat[1] * x;
25
- mat[2] = mat[2] * x;
26
- mat[3] = mat[3] * x;
27
- mat[4] = mat[4] * y;
28
- mat[5] = mat[5] * y;
29
- mat[6] = mat[6] * y;
30
- mat[7] = mat[7] * y;
31
- mat[8] = mat[8] * z;
32
- mat[9] = mat[9] * z;
33
- mat[10] = mat[10] * z;
34
- mat[11] = mat[11] * z;
35
- },
36
- transformTranslate: function (mat, x, y, z) {
37
- mat[12] = mat[0] * x + mat[4] * y + mat[8] * z + mat[12];
38
- mat[13] = mat[1] * x + mat[5] * y + mat[9] * z + mat[13];
39
- mat[14] = mat[2] * x + mat[6] * y + mat[10] * z + mat[14];
40
- mat[15] = mat[3] * x + mat[7] * y + mat[11] * z + mat[15];
41
- },
42
- };
43
-
44
- const computeNextValLinear = function (anim, from, to, value) {
45
- const hasRoundRatio = 'round' in anim;
46
- const roundRatio = anim.round;
47
- let ratio = (value - anim.min) / (anim.max - anim.min);
48
- if (!anim.extrapolate) {
49
- ratio = ratio > 1 ? 1 : ratio < 0 ? 0 : ratio;
50
- }
51
- let nextVal = from * (1 - ratio) + to * ratio;
52
- if (hasRoundRatio) {
53
- nextVal = Math.round(roundRatio * nextVal) / roundRatio;
54
- }
55
- if (!isFinite(nextVal)) {
56
- nextVal = null;
57
- }
58
- return nextVal;
59
- };
60
-
61
- const computeNextValLinearScalar = function (anim, value) {
62
- return computeNextValLinear(anim, anim.from, anim.to, value);
63
- };
64
-
65
- const setNextValAndDetectChange = function (result, name, nextVal, didChange) {
66
- if (!didChange) {
67
- const prevVal = result[name];
68
- result[name] = nextVal;
69
- didChange = didChange || nextVal !== prevVal;
70
- } else {
71
- result[name] = nextVal;
72
- }
73
- return didChange;
74
- };
75
-
76
- const initIdentity = function (mat) {
77
- mat[0] = 1;
78
- mat[1] = 0;
79
- mat[2] = 0;
80
- mat[3] = 0;
81
- mat[4] = 0;
82
- mat[5] = 1;
83
- mat[6] = 0;
84
- mat[7] = 0;
85
- mat[8] = 0;
86
- mat[9] = 0;
87
- mat[10] = 1;
88
- mat[11] = 0;
89
- mat[12] = 0;
90
- mat[13] = 0;
91
- mat[14] = 0;
92
- mat[15] = 1;
93
- };
94
-
95
- const computeNextMatrixOperationField = function (
96
- anim,
97
- name,
98
- dim,
99
- index,
100
- value,
101
- ) {
102
- if (anim.from[dim] !== undefined && anim.to[dim] !== undefined) {
103
- return computeNextValLinear(anim, anim.from[dim], anim.to[dim], value);
104
- } else {
105
- return InitialOperationField[name][index];
106
- }
107
- };
108
-
109
- const computeTransform = function (
110
- anim,
111
- name,
112
- value,
113
- result,
114
- didChange,
115
- didMatrix,
116
- ) {
117
- const transform =
118
- result.transform !== undefined
119
- ? result.transform
120
- : (result.transform = [{matrix: []}]);
121
- const mat = transform[0].matrix;
122
- const m0 = mat[0];
123
- const m1 = mat[1];
124
- const m2 = mat[2];
125
- const m3 = mat[3];
126
- const m4 = mat[4];
127
- const m5 = mat[5];
128
- const m6 = mat[6];
129
- const m7 = mat[7];
130
- const m8 = mat[8];
131
- const m9 = mat[9];
132
- const m10 = mat[10];
133
- const m11 = mat[11];
134
- const m12 = mat[12];
135
- const m13 = mat[13];
136
- const m14 = mat[14];
137
- const m15 = mat[15];
138
- if (!didMatrix) {
139
- initIdentity(mat); // This will be the first transform.
140
- }
141
- const x = computeNextMatrixOperationField(anim, name, X_DIM, 0, value);
142
- const y = computeNextMatrixOperationField(anim, name, Y_DIM, 1, value);
143
- const z = computeNextMatrixOperationField(anim, name, Z_DIM, 2, value);
144
- InterpolateMatrix[name](mat, x, y, z);
145
- if (!didChange) {
146
- didChange =
147
- m0 !== mat[0] ||
148
- m1 !== mat[1] ||
149
- m2 !== mat[2] ||
150
- m3 !== mat[3] ||
151
- m4 !== mat[4] ||
152
- m5 !== mat[5] ||
153
- m6 !== mat[6] ||
154
- m7 !== mat[7] ||
155
- m8 !== mat[8] ||
156
- m9 !== mat[9] ||
157
- m10 !== mat[10] ||
158
- m11 !== mat[11] ||
159
- m12 !== mat[12] ||
160
- m13 !== mat[13] ||
161
- m14 !== mat[14] ||
162
- m15 !== mat[15];
163
- }
164
- return didChange;
165
- };
166
-
167
- /**
168
- * @param {object} anims Animation configuration by style property name.
169
- * @return {function} Function accepting style object, that mutates that style
170
- * object and returns a boolean describing if any update was actually applied.
171
- */
172
- const buildStyleInterpolator = function (anims) {
173
- function styleInterpolator(result, value) {
174
- let didChange = false;
175
- let didMatrix = false;
176
- for (const name in anims) {
177
- const anim = anims[name];
178
- if (anim.type === 'linear') {
179
- if (name in InterpolateMatrix) {
180
- didChange = computeTransform(
181
- anim,
182
- name,
183
- value,
184
- result,
185
- didChange,
186
- didMatrix,
187
- );
188
- didMatrix = true;
189
- } else {
190
- const next = computeNextValLinearScalar(anim, value);
191
- didChange = setNextValAndDetectChange(result, name, next, didChange);
192
- }
193
- } else if (anim.type === 'constant') {
194
- const next = anim.value;
195
- didChange = setNextValAndDetectChange(result, name, next, didChange);
196
- } else if (anim.type === 'step') {
197
- const next = value >= anim.threshold ? anim.to : anim.from;
198
- didChange = setNextValAndDetectChange(result, name, next, didChange);
199
- } else if (anim.type === 'identity') {
200
- const next = value;
201
- didChange = setNextValAndDetectChange(result, name, next, didChange);
202
- }
203
- }
204
- return didChange;
205
- }
206
- return styleInterpolator;
207
- };
208
-
209
- module.exports = buildStyleInterpolator;
@@ -1,23 +0,0 @@
1
- /**
2
- * Copyright (c) Meta Platforms, Inc. and affiliates.
3
- *
4
- * This source code is licensed under the MIT license found in the
5
- * LICENSE file in the root directory of this source tree.
6
- *
7
- * @format
8
- * @flow strict
9
- */
10
-
11
- 'use strict';
12
-
13
- function clamp(min: number, value: number, max: number): number {
14
- if (value < min) {
15
- return min;
16
- }
17
- if (value > max) {
18
- return max;
19
- }
20
- return value;
21
- }
22
-
23
- module.exports = clamp;
@@ -1,36 +0,0 @@
1
- /**
2
- * Copyright (c) Meta Platforms, Inc. and affiliates.
3
- *
4
- * This source code is licensed under the MIT license found in the
5
- * LICENSE file in the root directory of this source tree.
6
- *
7
- * @format
8
- * @flow strict-local
9
- */
10
-
11
- import UIManager from '../ReactNative/UIManager';
12
-
13
- /**
14
- * Adds a deprecation warning when the prop is used.
15
- */
16
- function deprecatedPropType(
17
- propType: ReactPropsCheckType,
18
- explanation: string,
19
- ): ReactPropsCheckType {
20
- return function validate(props, propName, componentName, ...rest) {
21
- // Don't warn for native components.
22
- if (
23
- global.RN$Bridgeless !== true &&
24
- !UIManager.hasViewManagerConfig(componentName) &&
25
- props[propName] !== undefined
26
- ) {
27
- console.warn(
28
- `\`${propName}\` supplied to \`${componentName}\` has been deprecated. ${explanation}`,
29
- );
30
- }
31
-
32
- return propType(props, propName, componentName, ...rest);
33
- };
34
- }
35
-
36
- module.exports = deprecatedPropType;
@@ -1,51 +0,0 @@
1
- /**
2
- * Copyright (c) Meta Platforms, Inc. and affiliates.
3
- *
4
- * This source code is licensed under the MIT license found in the
5
- * LICENSE file in the root directory of this source tree.
6
- *
7
- * @format
8
- * @flow strict
9
- */
10
-
11
- /**
12
- * Useful method to split an array into groups of the same number of elements.
13
- * You can use it to generate grids, rows, pages...
14
- *
15
- * If the input length is not a multiple of the count, it'll fill the last
16
- * array with null so you can display a placeholder.
17
- *
18
- * Example:
19
- * groupByEveryN([1, 2, 3, 4, 5], 3)
20
- * => [[1, 2, 3], [4, 5, null]]
21
- *
22
- * groupByEveryN([1, 2, 3], 2).map(elems => {
23
- * return <Row>{elems.map(elem => <Elem>{elem}</Elem>)}</Row>;
24
- * })
25
- */
26
-
27
- 'use strict';
28
-
29
- function groupByEveryN<T>(array: Array<T>, n: number): Array<Array<?T>> {
30
- const result = [];
31
- let temp: Array<?T> = [];
32
-
33
- for (let i = 0; i < array.length; ++i) {
34
- if (i > 0 && i % n === 0) {
35
- result.push(temp);
36
- temp = [];
37
- }
38
- temp.push(array[i]);
39
- }
40
-
41
- if (temp.length > 0) {
42
- while (temp.length !== n) {
43
- temp.push(null);
44
- }
45
- result.push(temp);
46
- }
47
-
48
- return result;
49
- }
50
-
51
- module.exports = groupByEveryN;
@@ -1,26 +0,0 @@
1
- /**
2
- * Copyright (c) Meta Platforms, Inc. and affiliates.
3
- *
4
- * This source code is licensed under the MIT license found in the
5
- * LICENSE file in the root directory of this source tree.
6
- *
7
- * @format
8
- * @flow
9
- */
10
-
11
- 'use strict';
12
-
13
- /**
14
- * Faster version of `mergeInto` that doesn't check its arguments and
15
- * also copies over prototype inherited properties.
16
- *
17
- * @param {object} one Object to assign to.
18
- * @param {object} two Object to assign from.
19
- */
20
- const mergeIntoFast = function (one: Object, two: Object): void {
21
- for (const keyTwo in two) {
22
- one[keyTwo] = two[keyTwo];
23
- }
24
- };
25
-
26
- module.exports = mergeIntoFast;
@@ -1,71 +0,0 @@
1
- /**
2
- * Copyright (c) Meta Platforms, Inc. and affiliates.
3
- *
4
- * This source code is licensed under the MIT license found in the
5
- * LICENSE file in the root directory of this source tree.
6
- *
7
- * @format
8
- * @flow
9
- */
10
-
11
- 'use strict';
12
-
13
- import type {ElementRef, Ref} from 'react';
14
-
15
- type Args = $ReadOnly<{|
16
- getForwardedRef: () => ?Ref<any>,
17
- setLocalRef: (ref: ElementRef<any>) => mixed,
18
- |}>;
19
-
20
- /**
21
- * This is a helper function for when a component needs to be able to forward a ref
22
- * to a child component, but still needs to have access to that component as part of
23
- * its implementation.
24
- *
25
- * Its main use case is in wrappers for native components.
26
- *
27
- * Usage:
28
- *
29
- * class MyView extends React.Component {
30
- * _nativeRef = null;
31
- *
32
- * _setNativeRef = setAndForwardRef({
33
- * getForwardedRef: () => this.props.forwardedRef,
34
- * setLocalRef: ref => {
35
- * this._nativeRef = ref;
36
- * },
37
- * });
38
- *
39
- * render() {
40
- * return <View ref={this._setNativeRef} />;
41
- * }
42
- * }
43
- *
44
- * const MyViewWithRef = React.forwardRef((props, ref) => (
45
- * <MyView {...props} forwardedRef={ref} />
46
- * ));
47
- *
48
- * module.exports = MyViewWithRef;
49
- */
50
-
51
- function setAndForwardRef({
52
- getForwardedRef,
53
- setLocalRef,
54
- }: Args): (ref: ElementRef<any>) => void {
55
- return function forwardRef(ref: ElementRef<any>) {
56
- const forwardedRef = getForwardedRef();
57
-
58
- setLocalRef(ref);
59
-
60
- // Forward to user ref prop (if one has been specified)
61
- if (typeof forwardedRef === 'function') {
62
- // Handle function-based refs. String-based refs are handled as functions.
63
- forwardedRef(ref);
64
- } else if (typeof forwardedRef === 'object' && forwardedRef != null) {
65
- // Handle createRef-based refs
66
- forwardedRef.current = ref;
67
- }
68
- };
69
- }
70
-
71
- module.exports = setAndForwardRef;
@@ -1,51 +0,0 @@
1
- /**
2
- * Copyright (c) Meta Platforms, Inc. and affiliates.
3
- *
4
- * This source code is licensed under the MIT license found in the
5
- * LICENSE file in the root directory of this source tree.
6
- *
7
- * @format
8
- * @flow
9
- */
10
-
11
- 'use strict';
12
-
13
- type truncateOptions = {
14
- breakOnWords: boolean,
15
- minDelta: number,
16
- elipsis: string,
17
- ...
18
- };
19
-
20
- const defaultOptions = {
21
- breakOnWords: true,
22
- minDelta: 10, // Prevents truncating a tiny bit off the end
23
- elipsis: '...',
24
- };
25
-
26
- // maxChars (including ellipsis)
27
- const truncate = function (
28
- str: ?string,
29
- maxChars: number,
30
- options?: truncateOptions,
31
- ): ?string {
32
- options = {...defaultOptions, ...options};
33
- if (
34
- str &&
35
- str.length &&
36
- str.length - options.minDelta + options.elipsis.length >= maxChars
37
- ) {
38
- // If the slice is happening in the middle of a wide char, add one more char
39
- const extraChar =
40
- str.charCodeAt(maxChars - options.elipsis.length) > 255 ? 1 : 0;
41
- str = str.slice(0, maxChars - options.elipsis.length + 1 + extraChar);
42
- if (options.breakOnWords) {
43
- const ii = Math.max(str.lastIndexOf(' '), str.lastIndexOf('\n'));
44
- str = str.slice(0, ii);
45
- }
46
- str = str.trim() + options.elipsis;
47
- }
48
- return str;
49
- };
50
-
51
- module.exports = truncate;
@@ -1,30 +0,0 @@
1
- /**
2
- * Copyright (c) Meta Platforms, Inc. and affiliates.
3
- *
4
- * This source code is licensed under the MIT license found in the
5
- * LICENSE file in the root directory of this source tree.
6
- *
7
- * @flow strict
8
- * @format
9
- */
10
-
11
- // Declarations for functionality exposed by Hermes' TimerStats decorator.
12
- //
13
- // For backwards-compatibility, code that uses such functionality must also
14
- // check explicitly at run-time whether the object(s) and method(s) exist, and
15
- // fail safely if not.
16
-
17
- /**
18
- * JSITimerInternalType is the global object installed by Hermes' TimedRuntime
19
- * decorator, and it is used to extract runtime timing information.
20
- */
21
- declare type $JSITimerInternalType = {
22
- /**
23
- * Returns the counters that TimedRuntime keep track.
24
- * There are no guarantees about what keys exist in it, but they can be
25
- * printed for informational purposes.
26
- * @return An object that maps strings to various types of performance
27
- * statistics.
28
- */
29
- +getTimes?: () => {[string]: number | string, ...},
30
- };
@@ -1,19 +0,0 @@
1
- /**
2
- * Copyright (c) Meta Platforms, Inc. and affiliates.
3
- *
4
- * This source code is licensed under the MIT license found in the
5
- * LICENSE file in the root directory of this source tree.
6
- *
7
- * @flow strict
8
- * @format
9
- * @nolint
10
- */
11
-
12
- 'use strict';
13
-
14
- declare module 'use-sync-external-store/shim' {
15
- declare export function useSyncExternalStore<Value>(
16
- subscribe: (callback: Function) => () => void,
17
- getCurrentValue: () => Value,
18
- ): Value;
19
- }