@office-iss/react-native-win32 0.0.0-canary.297 → 0.0.0-canary.298

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 (334) hide show
  1. package/.flowconfig +4 -2
  2. package/CHANGELOG.json +28 -1
  3. package/CHANGELOG.md +15 -5
  4. package/IntegrationTests/AccessibilityManagerTest.js +1 -1
  5. package/IntegrationTests/AppEventsTest.js +1 -1
  6. package/IntegrationTests/GlobalEvalWithSourceUrlTest.js +1 -1
  7. package/IntegrationTests/ImageCachePolicyTest.js +2 -2
  8. package/IntegrationTests/ImageSnapshotTest.js +1 -1
  9. package/IntegrationTests/IntegrationTestHarnessTest.js +1 -1
  10. package/IntegrationTests/IntegrationTestsApp.js +1 -1
  11. package/IntegrationTests/LayoutEventsTest.js +1 -1
  12. package/IntegrationTests/PromiseTest.js +1 -1
  13. package/IntegrationTests/SimpleSnapshotTest.js +1 -1
  14. package/IntegrationTests/SyncMethodTest.js +1 -1
  15. package/IntegrationTests/TimersTest.js +1 -1
  16. package/IntegrationTests/WebSocketTest.js +1 -1
  17. package/Libraries/Alert/Alert.js +1 -1
  18. package/Libraries/Alert/Alert.win32.js +1 -1
  19. package/Libraries/Alert/RCTAlertManager.ios.js +1 -1
  20. package/Libraries/Alert/RCTAlertManager.js.flow +1 -1
  21. package/Libraries/Animated/AnimatedExports.js +2 -2
  22. package/Libraries/Animated/Easing.js +1 -1
  23. package/Libraries/Animated/SpringConfig.js +1 -1
  24. package/Libraries/Animated/components/AnimatedFlatList.js +7 -6
  25. package/Libraries/Animated/components/AnimatedSectionList.js +11 -7
  26. package/Libraries/Animated/nodes/AnimatedProps.js +36 -4
  27. package/Libraries/Animated/nodes/AnimatedStyle.js +35 -34
  28. package/Libraries/BatchedBridge/BatchedBridge.js +1 -1
  29. package/Libraries/BatchedBridge/NativeModules.js +1 -1
  30. package/Libraries/Blob/BlobManager.js +4 -0
  31. package/Libraries/Blob/URL.js +1 -1
  32. package/Libraries/Blob/URLSearchParams.js +5 -1
  33. package/Libraries/Blob/URLSearchParams.js.flow +2 -1
  34. package/Libraries/BugReporting/BugReporting.js +1 -1
  35. package/Libraries/BugReporting/dumpReactTree.js +1 -1
  36. package/Libraries/BugReporting/getReactData.js +1 -1
  37. package/Libraries/Components/AccessibilityInfo/legacySendAccessibilityEvent.android.js +1 -1
  38. package/Libraries/Components/AccessibilityInfo/legacySendAccessibilityEvent.ios.js +1 -1
  39. package/Libraries/Components/AccessibilityInfo/legacySendAccessibilityEvent.js.flow +1 -1
  40. package/Libraries/Components/AccessibilityInfo/legacySendAccessibilityEvent.win32.js +1 -1
  41. package/Libraries/Components/ActivityIndicator/ActivityIndicator.js +1 -1
  42. package/Libraries/Components/ActivityIndicator/ActivityIndicatorViewNativeComponent.js +1 -1
  43. package/Libraries/Components/Button.js +1 -1
  44. package/Libraries/Components/Button.win32.js +1 -1
  45. package/Libraries/Components/Clipboard/Clipboard.js +1 -1
  46. package/Libraries/Components/DrawerAndroid/AndroidDrawerLayoutNativeComponent.js +1 -1
  47. package/Libraries/Components/DrawerAndroid/DrawerLayoutAndroid.android.js +1 -1
  48. package/Libraries/Components/DrawerAndroid/DrawerLayoutAndroid.ios.js +1 -1
  49. package/Libraries/Components/DrawerAndroid/DrawerLayoutAndroid.js +1 -1
  50. package/Libraries/Components/DrawerAndroid/DrawerLayoutAndroid.js.flow +1 -1
  51. package/Libraries/Components/DrawerAndroid/DrawerLayoutAndroidFallback.js +1 -1
  52. package/Libraries/Components/Keyboard/Keyboard.js +1 -1
  53. package/Libraries/Components/Keyboard/KeyboardAvoidingView.js +1 -1
  54. package/Libraries/Components/ProgressBarAndroid/ProgressBarAndroid.js +1 -1
  55. package/Libraries/Components/ProgressBarAndroid/ProgressBarAndroidNativeComponent.js +1 -1
  56. package/Libraries/Components/RefreshControl/AndroidSwipeRefreshLayoutNativeComponent.js +1 -1
  57. package/Libraries/Components/RefreshControl/PullToRefreshViewNativeComponent.js +1 -1
  58. package/Libraries/Components/RefreshControl/RefreshControl.js +1 -1
  59. package/Libraries/Components/SafeAreaView/RCTSafeAreaViewNativeComponent.js +1 -1
  60. package/Libraries/Components/ScrollView/AndroidHorizontalScrollContentViewNativeComponent.js +1 -1
  61. package/Libraries/Components/ScrollView/ScrollContentViewNativeComponent.js +1 -1
  62. package/Libraries/Components/ScrollView/ScrollView.d.ts +14 -0
  63. package/Libraries/Components/ScrollView/ScrollView.js +4 -2
  64. package/Libraries/Components/ScrollView/ScrollViewCommands.js +1 -1
  65. package/Libraries/Components/ScrollView/processDecelerationRate.js +1 -1
  66. package/Libraries/Components/Sound/SoundManager.js +1 -1
  67. package/Libraries/Components/StaticRenderer.js +1 -1
  68. package/Libraries/Components/StatusBar/StatusBar.js +1 -1
  69. package/Libraries/Components/Switch/AndroidSwitchNativeComponent.js +1 -1
  70. package/Libraries/Components/Switch/SwitchNativeComponent.js +1 -1
  71. package/Libraries/Components/TextInput/AndroidTextInputNativeComponent.js +0 -12
  72. package/Libraries/Components/TextInput/RCTInputAccessoryViewNativeComponent.js +1 -1
  73. package/Libraries/Components/TextInput/RCTTextInputViewConfig.js +1 -1
  74. package/Libraries/Components/TextInput/TextInput.d.ts +9 -3
  75. package/Libraries/Components/TextInput/TextInput.flow.js +11 -9
  76. package/Libraries/Components/TextInput/TextInput.flow.win32.js +11 -9
  77. package/Libraries/Components/TextInput/TextInput.js +14 -10
  78. package/Libraries/Components/TextInput/TextInput.win32.js +14 -10
  79. package/Libraries/Components/TextInput/TextInputState.js +1 -1
  80. package/Libraries/Components/TextInput/TextInputState.win32.js +1 -1
  81. package/Libraries/Components/ToastAndroid/ToastAndroid.android.js +1 -1
  82. package/Libraries/Components/ToastAndroid/ToastAndroid.ios.js +1 -1
  83. package/Libraries/Components/ToastAndroid/ToastAndroid.js +1 -1
  84. package/Libraries/Components/ToastAndroid/ToastAndroid.js.flow +1 -1
  85. package/Libraries/Components/ToastAndroid/ToastAndroid.win32.js +1 -1
  86. package/Libraries/Components/ToastAndroid/ToastAndroidFallback.js +1 -1
  87. package/Libraries/Components/Touchable/BoundingDimensions.js +1 -1
  88. package/Libraries/Components/Touchable/PooledClass.js +1 -1
  89. package/Libraries/Components/Touchable/Position.js +1 -1
  90. package/Libraries/Components/Touchable/Touchable.js +10 -0
  91. package/Libraries/Components/Touchable/Touchable.win32.js +10 -0
  92. package/Libraries/Components/Touchable/TouchableWithoutFeedback.js +1 -1
  93. package/Libraries/Components/UnimplementedViews/UnimplementedNativeViewNativeComponent.js +1 -1
  94. package/Libraries/Components/View/ReactNativeStyleAttributes.js +1 -1
  95. package/Libraries/Components/View/View.js +1 -1
  96. package/Libraries/Components/View/View.win32.js +1 -1
  97. package/Libraries/Components/View/ViewAccessibility.js +1 -1
  98. package/Libraries/Components/View/ViewAccessibility.win32.js +1 -1
  99. package/Libraries/Components/View/ViewPropTypes.d.ts +18 -2
  100. package/Libraries/Components/View/ViewPropTypes.js +1 -1
  101. package/Libraries/Components/View/ViewPropTypes.win32.js +1 -1
  102. package/Libraries/Core/Devtools/getDevServer.js +1 -1
  103. package/Libraries/Core/Devtools/openFileInEditor.js +1 -1
  104. package/Libraries/Core/Devtools/openURLInBrowser.js +1 -1
  105. package/Libraries/Core/Devtools/parseErrorStack.js +1 -1
  106. package/Libraries/Core/Devtools/parseHermesStack.js +1 -1
  107. package/Libraries/Core/Devtools/symbolicateStackTrace.js +1 -1
  108. package/Libraries/Core/ExceptionsManager.js +1 -1
  109. package/Libraries/Core/InitializeCore.js +1 -1
  110. package/Libraries/Core/ReactFiberErrorDialog.js +1 -1
  111. package/Libraries/Core/ReactNativeVersion.js +1 -1
  112. package/Libraries/Core/Timers/JSTimers.js +1 -1
  113. package/Libraries/Core/Timers/immediateShim.js +1 -1
  114. package/Libraries/Core/Timers/queueMicrotask.js +1 -1
  115. package/Libraries/Core/setUpDeveloperTools.js +13 -11
  116. package/Libraries/Debugging/DebuggingOverlay.js +6 -6
  117. package/Libraries/Debugging/DebuggingOverlayNativeComponent.js +1 -1
  118. package/Libraries/EventEmitter/RCTEventEmitter.js +1 -1
  119. package/Libraries/EventEmitter/RCTNativeAppEventEmitter.js +1 -1
  120. package/Libraries/Image/ImageInjection.js +1 -1
  121. package/Libraries/Image/RelativeImageStub.js +1 -1
  122. package/Libraries/Image/TextInlineImageNativeComponent.js +1 -1
  123. package/Libraries/Image/resolveAssetSource.js +1 -1
  124. package/Libraries/Interaction/FrameRateLogger.js +1 -1
  125. package/Libraries/Interaction/InteractionManager.js +62 -53
  126. package/Libraries/Interaction/TaskQueue.js +8 -9
  127. package/Libraries/Interaction/TouchHistoryMath.js +1 -1
  128. package/Libraries/Linking/Linking.js +1 -1
  129. package/Libraries/LogBox/Data/parseLogBoxLog.js +2 -0
  130. package/Libraries/LogBox/LogBox.js +2 -0
  131. package/Libraries/Modal/Modal.js +5 -1
  132. package/Libraries/Modal/RCTModalHostViewNativeComponent.js +1 -1
  133. package/Libraries/NativeComponent/BaseViewConfig.android.js +17 -5
  134. package/Libraries/NativeComponent/BaseViewConfig.ios.js +4 -4
  135. package/Libraries/NativeComponent/BaseViewConfig.js.flow +1 -1
  136. package/Libraries/NativeComponent/BaseViewConfig.win32.js +4 -4
  137. package/Libraries/NativeComponent/PlatformBaseViewConfig.js +1 -1
  138. package/Libraries/NativeComponent/ViewConfigIgnore.js +3 -3
  139. package/Libraries/Network/FormData.js +1 -1
  140. package/Libraries/Network/RCTNetworking.android.js +2 -2
  141. package/Libraries/Network/RCTNetworking.ios.js +1 -1
  142. package/Libraries/Network/RCTNetworking.js.flow +1 -1
  143. package/Libraries/Network/RCTNetworking.win32.js +1 -1
  144. package/Libraries/Network/XMLHttpRequest.js +3 -3
  145. package/Libraries/PermissionsAndroid/PermissionsAndroid.js +1 -1
  146. package/Libraries/Pressability/Pressability.js +1 -1
  147. package/Libraries/Pressability/Pressability.win32.js +1 -1
  148. package/Libraries/Promise.js +1 -1
  149. package/Libraries/PushNotificationIOS/PushNotificationIOS.js +3 -2
  150. package/Libraries/ReactNative/AppContainer.js +1 -1
  151. package/Libraries/ReactNative/AppRegistryImpl.js +2 -3
  152. package/Libraries/ReactNative/ReactFabricPublicInstance/ReactFabricHostComponent.js +1 -1
  153. package/Libraries/ReactNative/ReactFabricPublicInstance/ReactFabricPublicInstance.js +1 -1
  154. package/Libraries/ReactNative/ReactFabricPublicInstance/ReactFabricPublicInstanceUtils.js +1 -1
  155. package/Libraries/ReactNative/ReactFabricPublicInstance/ReactNativeAttributePayload.js +1 -1
  156. package/Libraries/ReactNative/ReactFabricPublicInstance/warnForStyleProps.js +1 -1
  157. package/Libraries/ReactNative/RendererImplementation.js +1 -1
  158. package/Libraries/ReactNative/RendererProxy.js +1 -1
  159. package/Libraries/ReactNative/renderApplication.js +1 -1
  160. package/Libraries/ReactPrivate/ReactNativePrivateInitializeCore.js +1 -1
  161. package/Libraries/ReactPrivate/ReactNativePrivateInterface.js +1 -1
  162. package/Libraries/ReactPrivate/ReactNativePrivateInterface.js.flow +1 -1
  163. package/Libraries/Settings/Settings.ios.js +1 -1
  164. package/Libraries/Settings/Settings.js +1 -1
  165. package/Libraries/Settings/SettingsFallback.js +1 -1
  166. package/Libraries/Share/Share.js +1 -1
  167. package/Libraries/StyleSheet/EdgeInsetsPropType.js +1 -1
  168. package/Libraries/StyleSheet/PlatformColorValueTypes.android.js +1 -1
  169. package/Libraries/StyleSheet/PlatformColorValueTypes.ios.js +1 -1
  170. package/Libraries/StyleSheet/PlatformColorValueTypes.js.flow +1 -1
  171. package/Libraries/StyleSheet/PlatformColorValueTypesIOS.ios.js +1 -1
  172. package/Libraries/StyleSheet/PlatformColorValueTypesIOS.js +1 -1
  173. package/Libraries/StyleSheet/PointPropType.js +1 -1
  174. package/Libraries/StyleSheet/Rect.js +1 -1
  175. package/Libraries/StyleSheet/normalizeColor.js +1 -1
  176. package/Libraries/StyleSheet/processAspectRatio.js +1 -1
  177. package/Libraries/StyleSheet/processBackgroundImage.js +1 -1
  178. package/Libraries/StyleSheet/processColor.js +1 -1
  179. package/Libraries/StyleSheet/processColorArray.js +1 -1
  180. package/Libraries/StyleSheet/processFilter.js +1 -1
  181. package/Libraries/StyleSheet/processFontVariant.js +1 -1
  182. package/Libraries/StyleSheet/processTransform.js +1 -1
  183. package/Libraries/StyleSheet/processTransformOrigin.js +1 -1
  184. package/Libraries/StyleSheet/setNormalizedColorAlpha.js +1 -1
  185. package/Libraries/Text/Text.js +1 -1
  186. package/Libraries/Text/Text.win32.js +1 -1
  187. package/Libraries/Text/TextNativeComponent.js +4 -0
  188. package/Libraries/Text/TextNativeComponent.win32.js +4 -0
  189. package/Libraries/Types/CodegenTypes.js +1 -1
  190. package/Libraries/Types/CodegenTypesNamespace.js +1 -1
  191. package/Libraries/Types/CoreEventTypes.d.ts +4 -0
  192. package/Libraries/Utilities/Appearance.js +1 -1
  193. package/Libraries/Utilities/BackHandler.js.flow +1 -1
  194. package/Libraries/Utilities/DevLoadingView.js +1 -1
  195. package/Libraries/Utilities/DeviceInfo.js +1 -1
  196. package/Libraries/Utilities/Dimensions.js +1 -1
  197. package/Libraries/Utilities/Dimensions.win32.js +1 -1
  198. package/Libraries/Utilities/HMRClient.js +1 -1
  199. package/Libraries/Utilities/HMRClientProdShim.js +1 -1
  200. package/Libraries/Utilities/PixelRatio.js +1 -1
  201. package/Libraries/Utilities/Platform.android.js +1 -1
  202. package/Libraries/Utilities/Platform.ios.js +1 -1
  203. package/Libraries/Utilities/Platform.js +1 -1
  204. package/Libraries/Utilities/Platform.win32.js +1 -1
  205. package/Libraries/Utilities/RCTLog.js +1 -1
  206. package/Libraries/Utilities/SceneTracker.js +1 -1
  207. package/Libraries/Utilities/binaryToBase64.js +1 -1
  208. package/Libraries/Utilities/codegenNativeCommands.js +1 -1
  209. package/Libraries/Utilities/codegenNativeComponent.js +1 -1
  210. package/Libraries/Utilities/createPerformanceLogger.js +27 -20
  211. package/Libraries/Utilities/deepFreezeAndThrowOnMutationInDev.js +1 -1
  212. package/Libraries/Utilities/defineLazyObjectProperty.js +1 -1
  213. package/Libraries/Utilities/differ/deepDiffer.js +1 -1
  214. package/Libraries/Utilities/differ/insetsDiffer.js +1 -1
  215. package/Libraries/Utilities/differ/matricesDiffer.js +1 -1
  216. package/Libraries/Utilities/differ/pointsDiffer.js +1 -1
  217. package/Libraries/Utilities/logError.js +1 -1
  218. package/Libraries/Utilities/mapWithSeparator.js +1 -1
  219. package/Libraries/Utilities/stringifySafe.js +1 -1
  220. package/Libraries/Utilities/stringifyViewConfig.js +1 -1
  221. package/Libraries/Utilities/useColorScheme.js +1 -1
  222. package/Libraries/Utilities/useWindowDimensions.js +1 -1
  223. package/Libraries/Utilities/warnOnce.js +1 -1
  224. package/Libraries/Vibration/Vibration.js +1 -2
  225. package/Libraries/WebSocket/WebSocket.js +1 -1
  226. package/Libraries/WebSocket/WebSocketInterceptor.js +1 -1
  227. package/Libraries/promiseRejectionTrackingOptions.js +1 -1
  228. package/Libraries/vendor/core/ErrorUtils.js +1 -1
  229. package/index.js +1 -1
  230. package/index.win32.js +3 -1
  231. package/interface.js +1 -1
  232. package/jest/MockNativeMethods.js +9 -3
  233. package/jest/RefreshControlMock.js +32 -0
  234. package/jest/assetFileTransformer.js +1 -0
  235. package/jest/local-setup.js +4 -3
  236. package/jest/mock.js +39 -0
  237. package/jest/mockComponent.js +47 -17
  238. package/jest/mockNativeComponent.js +24 -14
  239. package/jest/mocks/AccessibilityInfo.js +62 -0
  240. package/jest/mocks/ActivityIndicator.js +23 -0
  241. package/jest/mocks/AppState.js +19 -0
  242. package/{flow/Stringish.js → jest/mocks/Clipboard.js} +6 -4
  243. package/jest/mocks/Image.js +23 -0
  244. package/jest/mocks/InitializeCore.js +9 -0
  245. package/jest/mocks/Linking.js +28 -0
  246. package/jest/mocks/Modal.js +33 -0
  247. package/jest/mocks/NativeComponentRegistry.js +30 -0
  248. package/jest/mocks/NativeModules.js +239 -0
  249. package/jest/mocks/RefreshControl.js +31 -0
  250. package/jest/mocks/RendererProxy.js +45 -0
  251. package/jest/mocks/ScrollView.js +58 -0
  252. package/jest/mocks/Text.js +27 -0
  253. package/jest/mocks/TextInput.js +32 -0
  254. package/jest/mocks/UIManager.js +60 -0
  255. package/jest/mocks/Vibration.js +16 -0
  256. package/jest/mocks/View.js +27 -0
  257. package/jest/mocks/ViewNativeComponent.js +23 -0
  258. package/jest/mocks/requireNativeComponent.js +22 -0
  259. package/{Libraries/Utilities/infoLog.js → jest/mocks/useColorScheme.js} +7 -9
  260. package/jest/react-native-env.js +1 -0
  261. package/jest/renderer.js +1 -1
  262. package/jest/resolver.js +1 -0
  263. package/jest/setup.js +63 -445
  264. package/overrides.json +28 -28
  265. package/package.json +14 -14
  266. package/src/private/animated/NativeAnimatedHelper.js +2 -0
  267. package/src/private/animated/NativeAnimatedHelper.win32.js +2 -0
  268. package/src/private/devsupport/devmenu/elementinspector/BorderBox.js +1 -1
  269. package/src/private/devsupport/devmenu/elementinspector/BoxInspector.js +1 -1
  270. package/src/private/devsupport/devmenu/elementinspector/ElementBox.js +1 -1
  271. package/src/private/devsupport/devmenu/elementinspector/ElementProperties.js +1 -1
  272. package/src/private/devsupport/devmenu/elementinspector/Inspector.js +1 -1
  273. package/src/private/devsupport/devmenu/elementinspector/InspectorOverlay.js +1 -1
  274. package/src/private/devsupport/devmenu/elementinspector/InspectorPanel.js +1 -1
  275. package/src/private/devsupport/devmenu/elementinspector/NetworkOverlay.js +1 -1
  276. package/src/private/devsupport/devmenu/elementinspector/ReactDevToolsOverlay.js +1 -1
  277. package/src/private/devsupport/devmenu/elementinspector/StyleInspector.js +1 -1
  278. package/src/private/devsupport/devmenu/elementinspector/XHRInterceptor.js +1 -1
  279. package/src/private/devsupport/devmenu/elementinspector/getInspectorDataForViewAtPoint.js +1 -1
  280. package/src/private/devsupport/devmenu/elementinspector/resolveBoxStyle.js +1 -1
  281. package/src/private/devsupport/devmenu/perfmonitor/PerformanceOverlay.js +1 -1
  282. package/src/private/featureflags/ReactNativeFeatureFlags.js +33 -8
  283. package/src/private/featureflags/ReactNativeFeatureFlagsBase.js +2 -0
  284. package/src/private/featureflags/specs/NativeReactNativeFeatureFlags.js +6 -1
  285. package/src/private/renderer/errorhandling/ErrorHandlers.js +1 -1
  286. package/src/private/specs_DEPRECATED/components/ActivityIndicatorViewNativeComponent.js +1 -1
  287. package/src/private/specs_DEPRECATED/components/AndroidDrawerLayoutNativeComponent.js +1 -1
  288. package/src/private/specs_DEPRECATED/components/AndroidHorizontalScrollContentViewNativeComponent.js +1 -1
  289. package/src/private/specs_DEPRECATED/components/AndroidSwipeRefreshLayoutNativeComponent.js +1 -1
  290. package/src/private/specs_DEPRECATED/components/PullToRefreshViewNativeComponent.js +1 -1
  291. package/src/private/specs_DEPRECATED/components/RCTModalHostViewNativeComponent.js +1 -1
  292. package/src/private/specs_DEPRECATED/components/RCTSafeAreaViewNativeComponent.js +1 -1
  293. package/src/private/specs_DEPRECATED/components/UnimplementedNativeViewNativeComponent.js +1 -1
  294. package/src/private/specs_DEPRECATED/modules/NativeBugReporting.js +1 -1
  295. package/src/private/specs_DEPRECATED/modules/NativeFrameRateLogger.js +1 -1
  296. package/src/private/specs_DEPRECATED/modules/NativePermissionsAndroid.js +1 -1
  297. package/src/private/specs_DEPRECATED/modules/NativePushNotificationManagerIOS.js +1 -1
  298. package/src/private/types/HostInstance.js +1 -1
  299. package/src/private/webapis/dom/nodes/ReactNativeDocument.js +1 -1
  300. package/src/private/webapis/dom/nodes/ReactNativeElement.js +1 -1
  301. package/src/private/webapis/dom/nodes/ReadOnlyCharacterData.js +1 -1
  302. package/src/private/webapis/dom/nodes/ReadOnlyElement.js +1 -1
  303. package/src/private/webapis/dom/nodes/ReadOnlyNode.js +1 -1
  304. package/src/private/webapis/dom/nodes/ReadOnlyText.js +1 -1
  305. package/src/private/webapis/dom/nodes/internals/NodeInternals.js +1 -1
  306. package/src/private/webapis/dom/nodes/internals/ReactNativeDocumentElementInstanceHandle.js +1 -1
  307. package/src/private/webapis/dom/nodes/internals/ReactNativeDocumentInstanceHandle.js +1 -1
  308. package/src/private/webapis/dom/nodes/internals/Traversal.js +1 -1
  309. package/src/private/webapis/dom/oldstylecollections/HTMLCollection.js +1 -1
  310. package/src/private/webapis/dom/oldstylecollections/NodeList.js +1 -1
  311. package/src/private/webapis/geometry/DOMRectList.js +1 -1
  312. package/src/private/webapis/intersectionobserver/IntersectionObserver.js +7 -12
  313. package/src/private/webapis/intersectionobserver/internals/IntersectionObserverManager.js +4 -14
  314. package/src/private/webapis/intersectionobserver/specs/NativeIntersectionObserver.js +0 -1
  315. package/src/private/webapis/mutationobserver/MutationObserver.js +2 -17
  316. package/src/private/webapis/mutationobserver/internals/MutationObserverManager.js +19 -73
  317. package/src/private/webapis/mutationobserver/specs/NativeMutationObserver.js +1 -7
  318. package/src/private/webapis/performance/EventTiming.js +1 -1
  319. package/src/private/webapis/performance/LongTasks.js +1 -1
  320. package/src/private/webapis/performance/Performance.js +1 -1
  321. package/src/private/webapis/performance/PerformanceEntry.js +1 -1
  322. package/src/private/webapis/performance/PerformanceObserver.js +1 -1
  323. package/src/private/webapis/performance/UserTiming.js +1 -1
  324. package/src/private/webapis/performance/internals/RawPerformanceEntry.js +1 -1
  325. package/src/private/webapis/performance/internals/Utilities.js +1 -1
  326. package/src/private/webapis/utils/ArrayLikeUtils.js +1 -1
  327. package/src-win/Libraries/Components/View/ViewPropTypes.d.ts +18 -2
  328. package/types/modules/Devtools.d.ts +23 -9
  329. package/Libraries/Interaction/JSEventLoopWatchdog.js +0 -88
  330. package/flow/HermesInternalType.js +0 -114
  331. package/flow/console.js +0 -49
  332. package/flow/global.js +0 -88
  333. package/jest/mockModal.js +0 -32
  334. package/jest/mockScrollView.js +0 -35
@@ -0,0 +1,239 @@
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
+ // TODO: Split this up into separate files.
12
+ const NativeModules = {
13
+ AlertManager: {
14
+ alertWithArgs: jest.fn() as JestMockFn<$FlowFixMe, $FlowFixMe>,
15
+ },
16
+ AsyncLocalStorage: {
17
+ multiGet: jest.fn((keys, callback) =>
18
+ process.nextTick(() => callback(null, [])),
19
+ ) as JestMockFn<$FlowFixMe, $FlowFixMe>,
20
+ multiSet: jest.fn((entries, callback) =>
21
+ process.nextTick(() => callback(null)),
22
+ ) as JestMockFn<$FlowFixMe, $FlowFixMe>,
23
+ multiRemove: jest.fn((keys, callback) =>
24
+ process.nextTick(() => callback(null)),
25
+ ) as JestMockFn<$FlowFixMe, $FlowFixMe>,
26
+ multiMerge: jest.fn((entries, callback) =>
27
+ process.nextTick(() => callback(null)),
28
+ ) as JestMockFn<$FlowFixMe, $FlowFixMe>,
29
+ clear: jest.fn(callback =>
30
+ process.nextTick(() => callback(null)),
31
+ ) as JestMockFn<$FlowFixMe, $FlowFixMe>,
32
+ getAllKeys: jest.fn(callback =>
33
+ process.nextTick(() => callback(null, [])),
34
+ ) as JestMockFn<$FlowFixMe, $FlowFixMe>,
35
+ },
36
+ DeviceInfo: {
37
+ getConstants(): $FlowFixMe {
38
+ return {
39
+ Dimensions: {
40
+ window: {
41
+ fontScale: 2,
42
+ height: 1334,
43
+ scale: 2,
44
+ width: 750,
45
+ },
46
+ screen: {
47
+ fontScale: 2,
48
+ height: 1334,
49
+ scale: 2,
50
+ width: 750,
51
+ },
52
+ },
53
+ };
54
+ },
55
+ },
56
+ DevSettings: {
57
+ addMenuItem: jest.fn() as JestMockFn<$FlowFixMe, $FlowFixMe>,
58
+ reload: jest.fn() as JestMockFn<$FlowFixMe, $FlowFixMe>,
59
+ },
60
+ ImageLoader: {
61
+ getSize: jest.fn(url => Promise.resolve([320, 240])) as JestMockFn<
62
+ $FlowFixMe,
63
+ $FlowFixMe,
64
+ >,
65
+ getSizeWithHeaders: jest.fn((url, headers) =>
66
+ Promise.resolve({height: 222, width: 333}),
67
+ ) as JestMockFn<$FlowFixMe, $FlowFixMe>,
68
+ prefetchImage: jest.fn() as JestMockFn<$FlowFixMe, $FlowFixMe>,
69
+ prefetchImageWithMetadata: jest.fn() as JestMockFn<$FlowFixMe, $FlowFixMe>,
70
+ queryCache: jest.fn() as JestMockFn<$FlowFixMe, $FlowFixMe>,
71
+ },
72
+ ImageViewManager: {
73
+ getSize: jest.fn((uri, success) =>
74
+ process.nextTick(() => success(320, 240)),
75
+ ) as JestMockFn<$FlowFixMe, $FlowFixMe>,
76
+ prefetchImage: jest.fn() as JestMockFn<$FlowFixMe, $FlowFixMe>,
77
+ },
78
+ KeyboardObserver: {
79
+ addListener: jest.fn() as JestMockFn<$FlowFixMe, $FlowFixMe>,
80
+ removeListeners: jest.fn() as JestMockFn<$FlowFixMe, $FlowFixMe>,
81
+ },
82
+ NativeAnimatedModule: {
83
+ createAnimatedNode: jest.fn() as JestMockFn<$FlowFixMe, $FlowFixMe>,
84
+ updateAnimatedNodeConfig: jest.fn() as JestMockFn<$FlowFixMe, $FlowFixMe>,
85
+ getValue: jest.fn() as JestMockFn<$FlowFixMe, $FlowFixMe>,
86
+ startListeningToAnimatedNodeValue: jest.fn() as JestMockFn<
87
+ $FlowFixMe,
88
+ $FlowFixMe,
89
+ >,
90
+ stopListeningToAnimatedNodeValue: jest.fn() as JestMockFn<
91
+ $FlowFixMe,
92
+ $FlowFixMe,
93
+ >,
94
+ connectAnimatedNodes: jest.fn() as JestMockFn<$FlowFixMe, $FlowFixMe>,
95
+ disconnectAnimatedNodes: jest.fn() as JestMockFn<$FlowFixMe, $FlowFixMe>,
96
+ startAnimatingNode: jest.fn((animationId, nodeTag, config, endCallback) => {
97
+ setTimeout(() => endCallback({finished: true}), 16);
98
+ }) as JestMockFn<$FlowFixMe, $FlowFixMe>,
99
+ stopAnimation: jest.fn() as JestMockFn<$FlowFixMe, $FlowFixMe>,
100
+ setAnimatedNodeValue: jest.fn() as JestMockFn<$FlowFixMe, $FlowFixMe>,
101
+ setAnimatedNodeOffset: jest.fn() as JestMockFn<$FlowFixMe, $FlowFixMe>,
102
+ flattenAnimatedNodeOffset: jest.fn() as JestMockFn<$FlowFixMe, $FlowFixMe>,
103
+ extractAnimatedNodeOffset: jest.fn() as JestMockFn<$FlowFixMe, $FlowFixMe>,
104
+ connectAnimatedNodeToView: jest.fn() as JestMockFn<$FlowFixMe, $FlowFixMe>,
105
+ disconnectAnimatedNodeFromView: jest.fn() as JestMockFn<
106
+ $FlowFixMe,
107
+ $FlowFixMe,
108
+ >,
109
+ restoreDefaultValues: jest.fn() as JestMockFn<$FlowFixMe, $FlowFixMe>,
110
+ dropAnimatedNode: jest.fn() as JestMockFn<$FlowFixMe, $FlowFixMe>,
111
+ addAnimatedEventToView: jest.fn() as JestMockFn<$FlowFixMe, $FlowFixMe>,
112
+ removeAnimatedEventFromView: jest.fn() as JestMockFn<
113
+ $FlowFixMe,
114
+ $FlowFixMe,
115
+ >,
116
+ addListener: jest.fn() as JestMockFn<$FlowFixMe, $FlowFixMe>,
117
+ removeListener: jest.fn() as JestMockFn<$FlowFixMe, $FlowFixMe>,
118
+ removeListeners: jest.fn() as JestMockFn<$FlowFixMe, $FlowFixMe>,
119
+ },
120
+ Networking: {
121
+ sendRequest: jest.fn() as JestMockFn<$FlowFixMe, $FlowFixMe>,
122
+ abortRequest: jest.fn() as JestMockFn<$FlowFixMe, $FlowFixMe>,
123
+ addListener: jest.fn() as JestMockFn<$FlowFixMe, $FlowFixMe>,
124
+ removeListeners: jest.fn() as JestMockFn<$FlowFixMe, $FlowFixMe>,
125
+ },
126
+ PlatformConstants: {
127
+ getConstants(): $FlowFixMe {
128
+ return {
129
+ reactNativeVersion: {
130
+ major: 1000,
131
+ minor: 0,
132
+ patch: 0,
133
+ prerelease: undefined,
134
+ },
135
+ };
136
+ },
137
+ },
138
+ PushNotificationManager: {
139
+ presentLocalNotification: jest.fn() as JestMockFn<$FlowFixMe, $FlowFixMe>,
140
+ scheduleLocalNotification: jest.fn() as JestMockFn<$FlowFixMe, $FlowFixMe>,
141
+ cancelAllLocalNotifications: jest.fn() as JestMockFn<
142
+ $FlowFixMe,
143
+ $FlowFixMe,
144
+ >,
145
+ removeAllDeliveredNotifications: jest.fn() as JestMockFn<
146
+ $FlowFixMe,
147
+ $FlowFixMe,
148
+ >,
149
+ getDeliveredNotifications: jest.fn(callback =>
150
+ process.nextTick(() => []),
151
+ ) as JestMockFn<$FlowFixMe, $FlowFixMe>,
152
+ removeDeliveredNotifications: jest.fn() as JestMockFn<
153
+ $FlowFixMe,
154
+ $FlowFixMe,
155
+ >,
156
+ setApplicationIconBadgeNumber: jest.fn() as JestMockFn<
157
+ $FlowFixMe,
158
+ $FlowFixMe,
159
+ >,
160
+ getApplicationIconBadgeNumber: jest.fn(callback =>
161
+ process.nextTick(() => callback(0)),
162
+ ) as JestMockFn<$FlowFixMe, $FlowFixMe>,
163
+ cancelLocalNotifications: jest.fn() as JestMockFn<$FlowFixMe, $FlowFixMe>,
164
+ getScheduledLocalNotifications: jest.fn(callback =>
165
+ process.nextTick(() => callback()),
166
+ ) as JestMockFn<$FlowFixMe, $FlowFixMe>,
167
+ requestPermissions: jest.fn(() =>
168
+ Promise.resolve({alert: true, badge: true, sound: true}),
169
+ ) as JestMockFn<$FlowFixMe, $FlowFixMe>,
170
+ abandonPermissions: jest.fn() as JestMockFn<$FlowFixMe, $FlowFixMe>,
171
+ checkPermissions: jest.fn(callback =>
172
+ process.nextTick(() => callback({alert: true, badge: true, sound: true})),
173
+ ) as JestMockFn<$FlowFixMe, $FlowFixMe>,
174
+ getInitialNotification: jest.fn(() => Promise.resolve(null)) as JestMockFn<
175
+ $FlowFixMe,
176
+ $FlowFixMe,
177
+ >,
178
+ addListener: jest.fn() as JestMockFn<$FlowFixMe, $FlowFixMe>,
179
+ removeListeners: jest.fn() as JestMockFn<$FlowFixMe, $FlowFixMe>,
180
+ },
181
+ SourceCode: {
182
+ getConstants(): $FlowFixMe {
183
+ return {
184
+ scriptURL: null,
185
+ };
186
+ },
187
+ },
188
+ StatusBarManager: {
189
+ setColor: jest.fn() as JestMockFn<$FlowFixMe, $FlowFixMe>,
190
+ setStyle: jest.fn() as JestMockFn<$FlowFixMe, $FlowFixMe>,
191
+ setHidden: jest.fn() as JestMockFn<$FlowFixMe, $FlowFixMe>,
192
+ setNetworkActivityIndicatorVisible: jest.fn() as JestMockFn<
193
+ $FlowFixMe,
194
+ $FlowFixMe,
195
+ >,
196
+ setBackgroundColor: jest.fn() as JestMockFn<$FlowFixMe, $FlowFixMe>,
197
+ setTranslucent: jest.fn() as JestMockFn<$FlowFixMe, $FlowFixMe>,
198
+ getConstants: (): $FlowFixMe => ({
199
+ HEIGHT: 42,
200
+ }),
201
+ },
202
+ Timing: {
203
+ createTimer: jest.fn() as JestMockFn<$FlowFixMe, $FlowFixMe>,
204
+ deleteTimer: jest.fn() as JestMockFn<$FlowFixMe, $FlowFixMe>,
205
+ },
206
+ UIManager: {},
207
+ BlobModule: {
208
+ getConstants: (): $FlowFixMe => ({
209
+ BLOB_URI_SCHEME: 'content',
210
+ BLOB_URI_HOST: null,
211
+ }),
212
+ addNetworkingHandler: jest.fn() as JestMockFn<$FlowFixMe, $FlowFixMe>,
213
+ enableBlobSupport: jest.fn() as JestMockFn<$FlowFixMe, $FlowFixMe>,
214
+ disableBlobSupport: jest.fn() as JestMockFn<$FlowFixMe, $FlowFixMe>,
215
+ createFromParts: jest.fn() as JestMockFn<$FlowFixMe, $FlowFixMe>,
216
+ sendBlob: jest.fn() as JestMockFn<$FlowFixMe, $FlowFixMe>,
217
+ release: jest.fn() as JestMockFn<$FlowFixMe, $FlowFixMe>,
218
+ },
219
+ WebSocketModule: {
220
+ connect: jest.fn() as JestMockFn<$FlowFixMe, $FlowFixMe>,
221
+ send: jest.fn() as JestMockFn<$FlowFixMe, $FlowFixMe>,
222
+ sendBinary: jest.fn() as JestMockFn<$FlowFixMe, $FlowFixMe>,
223
+ ping: jest.fn() as JestMockFn<$FlowFixMe, $FlowFixMe>,
224
+ close: jest.fn() as JestMockFn<$FlowFixMe, $FlowFixMe>,
225
+ addListener: jest.fn() as JestMockFn<$FlowFixMe, $FlowFixMe>,
226
+ removeListeners: jest.fn() as JestMockFn<$FlowFixMe, $FlowFixMe>,
227
+ },
228
+ I18nManager: {
229
+ allowRTL: jest.fn() as JestMockFn<$FlowFixMe, $FlowFixMe>,
230
+ forceRTL: jest.fn() as JestMockFn<$FlowFixMe, $FlowFixMe>,
231
+ swapLeftAndRightInRTL: jest.fn() as JestMockFn<$FlowFixMe, $FlowFixMe>,
232
+ getConstants: (): $FlowFixMe => ({
233
+ isRTL: false,
234
+ doLeftAndRightSwapInRTL: true,
235
+ }),
236
+ },
237
+ };
238
+
239
+ export default NativeModules;
@@ -0,0 +1,31 @@
1
+ /**
2
+ * Copyright (c) Meta Platforms, Inc. and affiliates.
3
+ *
4
+ * This source code is licensed under the MIT license found in the
5
+ * LICENSE file in the root directory of this source tree.
6
+ *
7
+ * @flow strict-local
8
+ * @format
9
+ */
10
+
11
+ import type {RefreshControlProps} from '../../Libraries/Components/RefreshControl/RefreshControl';
12
+ import type {HostComponent} from '../../src/private/types/HostComponent';
13
+
14
+ import requireNativeComponent from '../../Libraries/ReactNative/requireNativeComponent';
15
+ import * as React from 'react';
16
+
17
+ const RCTRefreshControl: HostComponent<{}> = requireNativeComponent<{}>(
18
+ 'RCTRefreshControl',
19
+ );
20
+
21
+ export default class RefreshControlMock extends React.Component<RefreshControlProps> {
22
+ static latestRef: ?RefreshControlMock;
23
+
24
+ render(): React.Node {
25
+ return <RCTRefreshControl />;
26
+ }
27
+
28
+ componentDidMount() {
29
+ RefreshControlMock.latestRef = this;
30
+ }
31
+ }
@@ -0,0 +1,45 @@
1
+ /**
2
+ * Copyright (c) Meta Platforms, Inc. and affiliates.
3
+ *
4
+ * This source code is licensed under the MIT license found in the
5
+ * LICENSE file in the root directory of this source tree.
6
+ *
7
+ * @flow strict-local
8
+ * @format
9
+ */
10
+
11
+ // In tests, we can use the default version without dependency injection.
12
+
13
+ import typeof * as TRendererImplementation from '../../Libraries/ReactNative/RendererImplementation';
14
+
15
+ const {
16
+ dispatchCommand,
17
+ findHostInstance_DEPRECATED,
18
+ findNodeHandle,
19
+ getNodeFromInternalInstanceHandle,
20
+ getPublicInstanceFromInternalInstanceHandle,
21
+ getPublicInstanceFromRootTag,
22
+ isChildPublicInstance,
23
+ isProfilingRenderer,
24
+ renderElement,
25
+ sendAccessibilityEvent,
26
+ unmountComponentAtNodeAndRemoveContainer,
27
+ unstable_batchedUpdates,
28
+ } = jest.requireActual<TRendererImplementation>(
29
+ '../../Libraries/ReactNative/RendererImplementation',
30
+ ) as TRendererImplementation;
31
+
32
+ export {
33
+ dispatchCommand,
34
+ findHostInstance_DEPRECATED,
35
+ findNodeHandle,
36
+ getNodeFromInternalInstanceHandle,
37
+ getPublicInstanceFromInternalInstanceHandle,
38
+ getPublicInstanceFromRootTag,
39
+ isChildPublicInstance,
40
+ isProfilingRenderer,
41
+ renderElement,
42
+ sendAccessibilityEvent,
43
+ unmountComponentAtNodeAndRemoveContainer,
44
+ unstable_batchedUpdates,
45
+ };
@@ -0,0 +1,58 @@
1
+ /**
2
+ * Copyright (c) Meta Platforms, Inc. and affiliates.
3
+ *
4
+ * This source code is licensed under the MIT license found in the
5
+ * LICENSE file in the root directory of this source tree.
6
+ *
7
+ * @flow strict-local
8
+ * @format
9
+ */
10
+
11
+ import typeof TScrollView from '../../Libraries/Components/ScrollView/ScrollView';
12
+ import type {ScrollViewNativeProps} from '../../Libraries/Components/ScrollView/ScrollViewNativeComponentType';
13
+ import typeof * as TmockComponent from '../mockComponent';
14
+ import typeof * as TMockNativeMethods from '../MockNativeMethods';
15
+
16
+ import View from '../../Libraries/Components/View/View';
17
+ import requireNativeComponent from '../../Libraries/ReactNative/requireNativeComponent';
18
+ import * as React from 'react';
19
+
20
+ const mockComponent =
21
+ jest.requireActual<TmockComponent>('../mockComponent').default;
22
+ const MockNativeMethods = jest.requireActual<TMockNativeMethods>(
23
+ '../MockNativeMethods',
24
+ ).default;
25
+
26
+ const RCTScrollView =
27
+ requireNativeComponent<ScrollViewNativeProps>('RCTScrollView');
28
+
29
+ const BaseComponent = mockComponent(
30
+ '../Libraries/Components/ScrollView/ScrollView',
31
+ {
32
+ ...MockNativeMethods,
33
+ getScrollResponder: jest.fn(),
34
+ getScrollableNode: jest.fn(),
35
+ getInnerViewNode: jest.fn(),
36
+ getInnerViewRef: jest.fn(),
37
+ getNativeScrollRef: jest.fn(),
38
+ scrollTo: jest.fn(),
39
+ scrollToEnd: jest.fn(),
40
+ flashScrollIndicators: jest.fn(),
41
+ scrollResponderZoomTo: jest.fn(),
42
+ scrollResponderScrollNativeHandleToKeyboard: jest.fn(),
43
+ }, // instanceMethods
44
+ true, // isESModule
45
+ ) as TScrollView;
46
+
47
+ // $FlowFixMe[incompatible-extend]
48
+ // $FlowFixMe[invalid-exported-annotation]
49
+ export default class ScrollViewMock extends BaseComponent {
50
+ render(): React.Node {
51
+ return (
52
+ <RCTScrollView {...this.props}>
53
+ {this.props.refreshControl}
54
+ <View>{this.props.children}</View>
55
+ </RCTScrollView>
56
+ );
57
+ }
58
+ }
@@ -0,0 +1,27 @@
1
+ /**
2
+ * Copyright (c) Meta Platforms, Inc. and affiliates.
3
+ *
4
+ * This source code is licensed under the MIT license found in the
5
+ * LICENSE file in the root directory of this source tree.
6
+ *
7
+ * @flow strict-local
8
+ * @format
9
+ */
10
+
11
+ import typeof TText from '../../Libraries/Text/Text';
12
+ import typeof * as TmockComponent from '../mockComponent';
13
+ import typeof * as TMockNativeMethods from '../MockNativeMethods';
14
+
15
+ const mockComponent =
16
+ jest.requireActual<TmockComponent>('../mockComponent').default;
17
+ const MockNativeMethods = jest.requireActual<TMockNativeMethods>(
18
+ '../MockNativeMethods',
19
+ ).default;
20
+
21
+ const Text = mockComponent(
22
+ '../Libraries/Text/Text',
23
+ MockNativeMethods, // instanceMethods
24
+ true, // isESModule
25
+ ) as TText;
26
+
27
+ export default Text;
@@ -0,0 +1,32 @@
1
+ /**
2
+ * Copyright (c) Meta Platforms, Inc. and affiliates.
3
+ *
4
+ * This source code is licensed under the MIT license found in the
5
+ * LICENSE file in the root directory of this source tree.
6
+ *
7
+ * @flow strict-local
8
+ * @format
9
+ */
10
+
11
+ import typeof TTextInput from '../../Libraries/Components/TextInput/TextInput';
12
+ import typeof * as TmockComponent from '../mockComponent';
13
+ import typeof * as TMockNativeMethods from '../MockNativeMethods';
14
+
15
+ const mockComponent =
16
+ jest.requireActual<TmockComponent>('../mockComponent').default;
17
+ const MockNativeMethods = jest.requireActual<TMockNativeMethods>(
18
+ '../MockNativeMethods',
19
+ ).default;
20
+
21
+ const TextInput = mockComponent(
22
+ '../Libraries/Components/TextInput/TextInput',
23
+ {
24
+ ...MockNativeMethods,
25
+ isFocused: jest.fn(),
26
+ clear: jest.fn(),
27
+ getNativeRef: jest.fn(),
28
+ }, // instanceMethods
29
+ true, // isESModule
30
+ ) as TTextInput;
31
+
32
+ export default TextInput;
@@ -0,0 +1,60 @@
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
+ const UIManager = {
12
+ AndroidViewPager: {
13
+ Commands: {
14
+ setPage: jest.fn() as JestMockFn<$FlowFixMe, $FlowFixMe>,
15
+ setPageWithoutAnimation: jest.fn() as JestMockFn<$FlowFixMe, $FlowFixMe>,
16
+ },
17
+ },
18
+ blur: jest.fn() as JestMockFn<$FlowFixMe, $FlowFixMe>,
19
+ createView: jest.fn() as JestMockFn<$FlowFixMe, $FlowFixMe>,
20
+ customBubblingEventTypes: {},
21
+ customDirectEventTypes: {},
22
+ dispatchViewManagerCommand: jest.fn() as JestMockFn<$FlowFixMe, $FlowFixMe>,
23
+ focus: jest.fn() as JestMockFn<$FlowFixMe, $FlowFixMe>,
24
+ getViewManagerConfig: jest.fn(name => {
25
+ if (name === 'AndroidDrawerLayout') {
26
+ return {
27
+ Constants: {
28
+ DrawerPosition: {
29
+ Left: 10,
30
+ },
31
+ },
32
+ };
33
+ }
34
+ }) as JestMockFn<[string], $FlowFixMe>,
35
+ hasViewManagerConfig: jest.fn(name => {
36
+ return name === 'AndroidDrawerLayout';
37
+ }) as JestMockFn<[string], boolean>,
38
+ measure: jest.fn() as JestMockFn<$FlowFixMe, $FlowFixMe>,
39
+ manageChildren: jest.fn() as JestMockFn<$FlowFixMe, $FlowFixMe>,
40
+ setChildren: jest.fn() as JestMockFn<$FlowFixMe, $FlowFixMe>,
41
+ updateView: jest.fn() as JestMockFn<$FlowFixMe, $FlowFixMe>,
42
+ AndroidDrawerLayout: {
43
+ Constants: {
44
+ DrawerPosition: {
45
+ Left: 10,
46
+ },
47
+ },
48
+ },
49
+ AndroidTextInput: {
50
+ Commands: {},
51
+ },
52
+ ScrollView: {
53
+ Constants: {},
54
+ },
55
+ View: {
56
+ Constants: {},
57
+ },
58
+ };
59
+
60
+ export default UIManager;
@@ -0,0 +1,16 @@
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
+ const Vibration = {
12
+ vibrate: jest.fn() as JestMockFn<$FlowFixMe, $FlowFixMe>,
13
+ cancel: jest.fn() as JestMockFn<$FlowFixMe, $FlowFixMe>,
14
+ };
15
+
16
+ export default Vibration;
@@ -0,0 +1,27 @@
1
+ /**
2
+ * Copyright (c) Meta Platforms, Inc. and affiliates.
3
+ *
4
+ * This source code is licensed under the MIT license found in the
5
+ * LICENSE file in the root directory of this source tree.
6
+ *
7
+ * @flow strict-local
8
+ * @format
9
+ */
10
+
11
+ import typeof TView from '../../Libraries/Components/View/View';
12
+ import typeof * as TmockComponent from '../mockComponent';
13
+ import typeof * as TMockNativeMethods from '../MockNativeMethods';
14
+
15
+ const mockComponent =
16
+ jest.requireActual<TmockComponent>('../mockComponent').default;
17
+ const MockNativeMethods = jest.requireActual<TMockNativeMethods>(
18
+ '../MockNativeMethods',
19
+ ).default;
20
+
21
+ const View = mockComponent(
22
+ '../Libraries/Components/View/View',
23
+ MockNativeMethods, // instanceMethods
24
+ true, // isESModule
25
+ ) as TView;
26
+
27
+ export default View;
@@ -0,0 +1,23 @@
1
+ /**
2
+ * Copyright (c) Meta Platforms, Inc. and affiliates.
3
+ *
4
+ * This source code is licensed under the MIT license found in the
5
+ * LICENSE file in the root directory of this source tree.
6
+ *
7
+ * @flow strict-local
8
+ * @format
9
+ */
10
+
11
+ import type {ViewProps} from '../../Libraries/Components/View/ViewPropTypes';
12
+
13
+ import * as React from 'react';
14
+ import {createElement} from 'react';
15
+
16
+ export default class View extends React.Component<ViewProps> {
17
+ render(): React.Node {
18
+ // $FlowIgnore[not-a-function]
19
+ return createElement('View', this.props, this.props.children);
20
+ }
21
+ }
22
+
23
+ View.displayName = 'View';
@@ -0,0 +1,22 @@
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
+ import type {HostComponent} from '../../src/private/types/HostComponent';
12
+ import typeof * as TmockNativeComponent from '../mockNativeComponent';
13
+
14
+ const mockNativeComponent = jest.requireActual<TmockNativeComponent>(
15
+ '../mockNativeComponent',
16
+ ).default;
17
+
18
+ export default function requireNativeComponent<T: {...}>(
19
+ uiViewClassName: string,
20
+ ): HostComponent<T> {
21
+ return mockNativeComponent<T>(uiViewClassName);
22
+ }
@@ -4,17 +4,15 @@
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
- * @format
8
7
  * @flow strict
8
+ * @format
9
9
  */
10
10
 
11
- 'use strict';
11
+ import type {ColorSchemeName} from '../../Libraries/Utilities/NativeAppearance';
12
12
 
13
- /**
14
- * Intentional info-level logging for clear separation from ad-hoc console debug logging.
15
- */
16
- function infoLog(...args: Array<mixed>): void {
17
- return console.log(...args);
18
- }
13
+ const useColorScheme = jest.fn(() => 'light') as JestMockFn<
14
+ [],
15
+ ColorSchemeName,
16
+ >;
19
17
 
20
- export default infoLog;
18
+ export default useColorScheme;
@@ -4,6 +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
+ * @noflow
7
8
  * @format
8
9
  */
9
10
 
package/jest/renderer.js CHANGED
@@ -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
7
+ * @flow strict
8
8
  * @format
9
9
  */
10
10
 
package/jest/resolver.js CHANGED
@@ -4,6 +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
+ * @noflow
7
8
  * @format
8
9
  */
9
10