@office-iss/react-native-win32 0.78.4 → 0.79.0-preview.2

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 (600) hide show
  1. package/.flowconfig +4 -1
  2. package/CHANGELOG.json +166 -53
  3. package/CHANGELOG.md +53 -30
  4. package/IntegrationTests/AccessibilityManagerTest.js +17 -12
  5. package/IntegrationTests/AppEventsTest.js +47 -32
  6. package/IntegrationTests/GlobalEvalWithSourceUrlTest.js +10 -14
  7. package/IntegrationTests/ImageCachePolicyTest.js +64 -81
  8. package/IntegrationTests/ImageSnapshotTest.js +17 -20
  9. package/IntegrationTests/IntegrationTestHarnessTest.js +34 -52
  10. package/IntegrationTests/IntegrationTestsApp.js +11 -6
  11. package/IntegrationTests/LayoutEventsTest.js +17 -12
  12. package/IntegrationTests/LoggingTestModule.js +2 -1
  13. package/IntegrationTests/PromiseTest.js +51 -43
  14. package/IntegrationTests/SimpleSnapshotTest.js +19 -24
  15. package/IntegrationTests/SyncMethodTest.js +9 -13
  16. package/IntegrationTests/TimersTest.js +3 -3
  17. package/Libraries/ActionSheetIOS/ActionSheetIOS.js +39 -18
  18. package/Libraries/ActionSheetIOS/NativeActionSheetManager.js +2 -2
  19. package/Libraries/Alert/Alert.js +33 -10
  20. package/Libraries/Alert/Alert.win32.js +32 -9
  21. package/Libraries/Alert/NativeAlertManager.js +2 -2
  22. package/Libraries/Alert/RCTAlertManager.android.js +1 -1
  23. package/Libraries/Alert/RCTAlertManager.ios.js +1 -1
  24. package/Libraries/Alert/RCTAlertManager.js.flow +18 -0
  25. package/Libraries/Animated/Animated.js +8 -37
  26. package/Libraries/Animated/Animated.js.flow +15 -0
  27. package/Libraries/Animated/AnimatedExports.js +47 -0
  28. package/Libraries/Animated/AnimatedExports.js.flow +48 -0
  29. package/Libraries/Animated/AnimatedMock.js +1 -1
  30. package/Libraries/Animated/NativeAnimatedModule.js +2 -2
  31. package/Libraries/Animated/NativeAnimatedTurboModule.js +2 -2
  32. package/Libraries/Animated/animations/Animation.js +1 -4
  33. package/Libraries/Animated/createAnimatedComponent.js +3 -3
  34. package/Libraries/Animated/nodes/AnimatedObject.js +1 -0
  35. package/Libraries/Animated/nodes/AnimatedValue.js +30 -22
  36. package/Libraries/Animated/useAnimatedProps.js +4 -333
  37. package/Libraries/Animated/useAnimatedValue.js +1 -3
  38. package/Libraries/AppState/AppState.js +24 -7
  39. package/Libraries/AppState/NativeAppState.js +2 -2
  40. package/Libraries/BatchedBridge/BatchedBridge.js +4 -2
  41. package/Libraries/BatchedBridge/MessageQueue.js +5 -4
  42. package/Libraries/BatchedBridge/NativeModules.js +6 -4
  43. package/Libraries/Blob/Blob.js +5 -5
  44. package/Libraries/Blob/BlobManager.js +3 -2
  45. package/Libraries/Blob/BlobRegistry.js +3 -9
  46. package/Libraries/Blob/File.js +3 -2
  47. package/Libraries/Blob/FileReader.js +8 -174
  48. package/Libraries/Blob/FileReader_new.js +231 -0
  49. package/Libraries/Blob/FileReader_old.js +186 -0
  50. package/Libraries/Blob/NativeBlobModule.js +2 -2
  51. package/Libraries/Blob/NativeFileReaderModule.js +2 -2
  52. package/Libraries/Blob/URL.js +1 -1
  53. package/Libraries/Blob/URLSearchParams.js +9 -10
  54. package/Libraries/Blob/URLSearchParams.js.flow +23 -0
  55. package/Libraries/BugReporting/BugReporting.js +2 -2
  56. package/Libraries/BugReporting/NativeBugReporting.js +2 -2
  57. package/Libraries/BugReporting/dumpReactTree.js +2 -2
  58. package/Libraries/BugReporting/getReactData.js +1 -1
  59. package/Libraries/Components/AccessibilityInfo/AccessibilityInfo.js +1 -1
  60. package/Libraries/Components/AccessibilityInfo/AccessibilityInfo.win32.js +1 -1
  61. package/Libraries/Components/AccessibilityInfo/NativeAccessibilityInfo.js +2 -2
  62. package/Libraries/Components/AccessibilityInfo/NativeAccessibilityInfoWin32.js +2 -2
  63. package/Libraries/Components/AccessibilityInfo/NativeAccessibilityManager.js +2 -2
  64. package/Libraries/Components/AccessibilityInfo/legacySendAccessibilityEvent.android.js +1 -1
  65. package/Libraries/Components/AccessibilityInfo/legacySendAccessibilityEvent.ios.js +1 -1
  66. package/Libraries/Components/AccessibilityInfo/legacySendAccessibilityEvent.js.flow +20 -0
  67. package/Libraries/Components/AccessibilityInfo/legacySendAccessibilityEvent.win32.js +1 -1
  68. package/Libraries/Components/ActivityIndicator/ActivityIndicator.js +11 -11
  69. package/Libraries/Components/ActivityIndicator/ActivityIndicatorViewNativeComponent.js +2 -2
  70. package/Libraries/Components/Button.js +6 -6
  71. package/Libraries/Components/Button.win32.js +6 -9
  72. package/Libraries/Components/Clipboard/Clipboard.js +1 -1
  73. package/Libraries/Components/Clipboard/NativeClipboard.js +2 -2
  74. package/Libraries/Components/DrawerAndroid/AndroidDrawerLayoutNativeComponent.js +2 -2
  75. package/Libraries/Components/DrawerAndroid/DrawerLayoutAndroid.android.js +14 -100
  76. package/Libraries/Components/DrawerAndroid/DrawerLayoutAndroid.js +64 -4
  77. package/Libraries/Components/DrawerAndroid/DrawerLayoutAndroidTypes.js +138 -0
  78. package/Libraries/Components/Keyboard/Keyboard.js +9 -9
  79. package/Libraries/Components/Keyboard/KeyboardAvoidingView.js +24 -25
  80. package/Libraries/Components/Keyboard/NativeKeyboardObserver.js +2 -2
  81. package/Libraries/Components/LayoutConformance/LayoutConformance.js +7 -5
  82. package/Libraries/Components/LayoutConformance/LayoutConformanceNativeComponent.js +1 -1
  83. package/Libraries/Components/Pressable/Pressable.js +28 -73
  84. package/Libraries/Components/Pressable/Pressable.win32.js +29 -75
  85. package/Libraries/Components/Pressable/useAndroidRippleForView.js +17 -17
  86. package/Libraries/Components/ProgressBarAndroid/ProgressBarAndroid.android.js +4 -47
  87. package/Libraries/Components/ProgressBarAndroid/ProgressBarAndroid.js +13 -1
  88. package/Libraries/Components/ProgressBarAndroid/ProgressBarAndroidNativeComponent.js +2 -2
  89. package/Libraries/Components/ProgressBarAndroid/ProgressBarAndroidTypes.js +54 -0
  90. package/Libraries/Components/RefreshControl/AndroidSwipeRefreshLayoutNativeComponent.js +2 -2
  91. package/Libraries/Components/RefreshControl/PullToRefreshViewNativeComponent.js +2 -2
  92. package/Libraries/Components/RefreshControl/RefreshControl.js +17 -14
  93. package/Libraries/Components/RefreshControl/__mocks__/RefreshControlMock.js +2 -1
  94. package/Libraries/Components/SafeAreaView/RCTSafeAreaViewNativeComponent.js +2 -2
  95. package/Libraries/Components/SafeAreaView/SafeAreaView.js +1 -1
  96. package/Libraries/Components/SafeAreaView/SafeAreaView.win32.js +1 -1
  97. package/Libraries/Components/ScrollView/AndroidHorizontalScrollContentViewNativeComponent.js +2 -2
  98. package/Libraries/Components/ScrollView/AndroidHorizontalScrollViewNativeComponent.js +2 -4
  99. package/Libraries/Components/ScrollView/ScrollContentViewNativeComponent.js +2 -4
  100. package/Libraries/Components/ScrollView/ScrollView.js +139 -134
  101. package/Libraries/Components/ScrollView/ScrollViewCommands.js +3 -3
  102. package/Libraries/Components/ScrollView/ScrollViewNativeComponent.js +7 -9
  103. package/Libraries/Components/ScrollView/ScrollViewNativeComponentType.js +5 -2
  104. package/Libraries/Components/ScrollView/ScrollViewStickyHeader.js +10 -11
  105. package/Libraries/Components/ScrollView/processDecelerationRate.js +1 -1
  106. package/Libraries/Components/Sound/NativeSoundManager.js +2 -2
  107. package/Libraries/Components/Sound/SoundManager.js +1 -1
  108. package/Libraries/Components/StaticRenderer.js +4 -4
  109. package/Libraries/Components/StatusBar/NativeStatusBarManagerAndroid.js +2 -2
  110. package/Libraries/Components/StatusBar/NativeStatusBarManagerIOS.js +2 -2
  111. package/Libraries/Components/StatusBar/StatusBar.js +57 -31
  112. package/Libraries/Components/Switch/AndroidSwitchNativeComponent.js +2 -2
  113. package/Libraries/Components/Switch/Switch.js +74 -45
  114. package/Libraries/Components/Switch/SwitchNativeComponent.js +2 -2
  115. package/Libraries/Components/TextInput/AndroidTextInputNativeComponent.js +33 -35
  116. package/Libraries/Components/TextInput/InputAccessoryView.js +5 -3
  117. package/Libraries/Components/TextInput/RCTInputAccessoryViewNativeComponent.js +2 -2
  118. package/Libraries/Components/TextInput/RCTMultilineTextInputNativeComponent.js +2 -4
  119. package/Libraries/Components/TextInput/RCTSingelineTextInputNativeComponent.js +2 -4
  120. package/Libraries/Components/TextInput/RCTTextInputViewConfig.js +5 -2
  121. package/Libraries/Components/TextInput/Tests/TextInputTest.d.ts +1 -2
  122. package/Libraries/Components/TextInput/Tests/TextInputTest.js.map +1 -1
  123. package/Libraries/Components/TextInput/TextInput.flow.js +131 -121
  124. package/Libraries/Components/TextInput/TextInput.js +149 -146
  125. package/Libraries/Components/TextInput/TextInput.win32.js +151 -148
  126. package/Libraries/Components/TextInput/TextInputNativeCommands.js +1 -1
  127. package/Libraries/Components/TextInput/TextInputState.js +6 -20
  128. package/Libraries/Components/TextInput/TextInputState.win32.js +6 -20
  129. package/Libraries/Components/TextInput/Win32TextInputNativeComponent.js +1 -1
  130. package/Libraries/Components/ToastAndroid/NativeToastAndroid.js +2 -2
  131. package/Libraries/Components/ToastAndroid/ToastAndroid.android.js +1 -1
  132. package/Libraries/Components/ToastAndroid/ToastAndroid.d.ts +68 -6
  133. package/Libraries/Components/ToastAndroid/ToastAndroid.js +1 -1
  134. package/Libraries/Components/ToastAndroid/ToastAndroid.win32.js +1 -1
  135. package/Libraries/Components/Touchable/BoundingDimensions.js +1 -1
  136. package/Libraries/Components/Touchable/PooledClass.js +1 -1
  137. package/Libraries/Components/Touchable/Position.js +1 -1
  138. package/Libraries/Components/Touchable/Tests/TouchableWin32Test.d.ts +1 -2
  139. package/Libraries/Components/Touchable/Tests/TouchableWin32Test.js.map +1 -1
  140. package/Libraries/Components/Touchable/Touchable.js +23 -23
  141. package/Libraries/Components/Touchable/Touchable.win32.js +23 -23
  142. package/Libraries/Components/Touchable/TouchableBounce.js +6 -6
  143. package/Libraries/Components/Touchable/TouchableHighlight.js +44 -23
  144. package/Libraries/Components/Touchable/TouchableNativeFeedback.js +102 -54
  145. package/Libraries/Components/Touchable/TouchableNativeFeedback.win32.js +252 -47
  146. package/Libraries/Components/Touchable/TouchableOpacity.js +57 -15
  147. package/Libraries/Components/Touchable/TouchableWithoutFeedback.js +114 -61
  148. package/Libraries/Components/UnimplementedViews/UnimplementedNativeViewNativeComponent.js +2 -2
  149. package/Libraries/Components/UnimplementedViews/UnimplementedView.js +11 -3
  150. package/Libraries/Components/View/ReactNativeStyleAttributes.js +17 -3
  151. package/Libraries/Components/View/ReactNativeViewAttributes.js +1 -1
  152. package/Libraries/Components/View/ReactNativeViewAttributes.win32.js +1 -1
  153. package/Libraries/Components/View/View.js +2 -2
  154. package/Libraries/Components/View/View.win32.js +2 -2
  155. package/Libraries/Components/View/ViewAccessibility.js +245 -5
  156. package/Libraries/Components/View/ViewAccessibility.win32.js +245 -5
  157. package/Libraries/Components/View/ViewNativeComponent.js +2 -4
  158. package/Libraries/Components/View/ViewPropTypes.d.ts +14 -14
  159. package/Libraries/Components/View/ViewPropTypes.js +65 -253
  160. package/Libraries/Components/View/ViewPropTypes.win32.js +123 -312
  161. package/Libraries/Core/Devtools/getDevServer.js +1 -3
  162. package/Libraries/Core/Devtools/loadBundleFromServer.js +4 -2
  163. package/Libraries/Core/Devtools/loadBundleFromServer.win32.js +4 -2
  164. package/Libraries/Core/Devtools/openFileInEditor.js +2 -4
  165. package/Libraries/Core/Devtools/openURLInBrowser.js +5 -4
  166. package/Libraries/Core/Devtools/parseErrorStack.js +4 -4
  167. package/Libraries/Core/Devtools/parseHermesStack.js +2 -2
  168. package/Libraries/Core/Devtools/symbolicateStackTrace.js +6 -5
  169. package/Libraries/Core/ExceptionsManager.js +6 -4
  170. package/Libraries/Core/InitializeCore.js +7 -3
  171. package/Libraries/Core/NativeExceptionsManager.js +2 -2
  172. package/Libraries/Core/RawEventEmitter.js +2 -2
  173. package/Libraries/Core/ReactFiberErrorDialog.js +2 -2
  174. package/Libraries/Core/ReactNativeVersion.js +4 -6
  175. package/Libraries/Core/ReactNativeVersionCheck.js +2 -4
  176. package/Libraries/Core/ReactNativeVersionCheck.win32.js +2 -4
  177. package/Libraries/Core/SegmentFetcher/NativeSegmentFetcher.js +2 -2
  178. package/Libraries/Core/Timers/JSTimers.js +10 -8
  179. package/Libraries/Core/Timers/NativeTiming.js +2 -2
  180. package/Libraries/Core/Timers/immediateShim.js +2 -9
  181. package/Libraries/Core/polyfillPromise.js +1 -1
  182. package/Libraries/Core/registerCallableModule.js +1 -1
  183. package/Libraries/Core/setUpAlert.js +1 -1
  184. package/Libraries/Core/setUpBatchedBridge.js +13 -8
  185. package/Libraries/Core/setUpDeveloperTools.js +3 -35
  186. package/Libraries/Core/setUpErrorHandling.js +2 -2
  187. package/Libraries/Core/setUpReactDevTools.js +26 -6
  188. package/Libraries/Core/setUpReactRefresh.js +1 -1
  189. package/Libraries/Core/setUpTimers.js +45 -66
  190. package/Libraries/Core/setUpXHR.js +11 -8
  191. package/Libraries/Debugging/DebuggingOverlayNativeComponent.js +2 -2
  192. package/Libraries/Debugging/DebuggingOverlayRegistry.js +10 -7
  193. package/Libraries/EventEmitter/NativeEventEmitter.js +8 -2
  194. package/Libraries/EventEmitter/RCTDeviceEventEmitter.js +7 -5
  195. package/Libraries/EventEmitter/RCTEventEmitter.js +1 -1
  196. package/Libraries/EventEmitter/RCTNativeAppEventEmitter.js +1 -1
  197. package/Libraries/EventEmitter/__mocks__/NativeEventEmitter.js +3 -2
  198. package/Libraries/Events/CustomEvent.js +3 -3
  199. package/Libraries/Events/EventPolyfill.js +2 -2
  200. package/Libraries/Image/AssetRegistry.js +8 -1
  201. package/Libraries/Image/AssetSourceResolver.js +4 -4
  202. package/Libraries/Image/Image.android.js +2 -2
  203. package/Libraries/Image/Image.ios.js +1 -1
  204. package/Libraries/Image/Image.js.flow +27 -0
  205. package/Libraries/Image/Image.win32.js +1 -1
  206. package/Libraries/Image/ImageBackground.js +2 -2
  207. package/Libraries/Image/ImageProps.js +109 -39
  208. package/Libraries/Image/ImageTypes.flow.js +16 -6
  209. package/Libraries/Image/ImageViewNativeComponent.js +5 -7
  210. package/Libraries/Image/NativeImageEditor.js +2 -2
  211. package/Libraries/Image/NativeImageLoaderAndroid.js +2 -2
  212. package/Libraries/Image/NativeImageLoaderIOS.js +2 -2
  213. package/Libraries/Image/NativeImageLoaderWin32.js +2 -2
  214. package/Libraries/Image/NativeImageStoreAndroid.js +2 -2
  215. package/Libraries/Image/NativeImageStoreIOS.js +2 -2
  216. package/Libraries/Image/RelativeImageStub.js +3 -1
  217. package/Libraries/Image/Tests/ImageWin32Test.d.ts +1 -2
  218. package/Libraries/Image/Tests/ImageWin32Test.js.map +1 -1
  219. package/Libraries/Image/TextInlineImageNativeComponent.js +2 -4
  220. package/Libraries/Image/nativeImageSource.js +3 -3
  221. package/Libraries/Image/resolveAssetSource.js +4 -2
  222. package/Libraries/Image/resolveAssetSource.win32.js +1 -1
  223. package/Libraries/Interaction/FrameRateLogger.js +1 -1
  224. package/Libraries/Interaction/InteractionManager.js +20 -9
  225. package/Libraries/Interaction/InteractionManagerStub.js +10 -2
  226. package/Libraries/Interaction/JSEventLoopWatchdog.js +2 -2
  227. package/Libraries/Interaction/NativeFrameRateLogger.js +2 -2
  228. package/Libraries/Interaction/PanResponder.js +49 -46
  229. package/Libraries/Interaction/TaskQueue.js +4 -4
  230. package/Libraries/Interaction/TouchHistoryMath.js +27 -1
  231. package/Libraries/LayoutAnimation/LayoutAnimation.js +20 -6
  232. package/Libraries/Linking/Linking.d.ts +3 -3
  233. package/Libraries/Linking/Linking.js +10 -9
  234. package/Libraries/Linking/NativeIntentAndroid.js +2 -2
  235. package/Libraries/Linking/NativeLinkingManager.js +2 -2
  236. package/Libraries/Lists/FillRateHelper.js +4 -4
  237. package/Libraries/Lists/FlatList.js +30 -30
  238. package/Libraries/Lists/SectionList.js +10 -10
  239. package/Libraries/Lists/SectionListModern.js +9 -7
  240. package/Libraries/Lists/ViewabilityHelper.js +4 -3
  241. package/Libraries/Lists/VirtualizeUtils.js +3 -5
  242. package/Libraries/Lists/VirtualizedList.js +6 -6
  243. package/Libraries/Lists/VirtualizedListContext.js +5 -5
  244. package/Libraries/Lists/VirtualizedSectionList.js +5 -3
  245. package/Libraries/Lists/__flowtests__/FlatList-flowtest.js +1 -1
  246. package/Libraries/LogBox/Data/LogBoxData.js +15 -15
  247. package/Libraries/LogBox/Data/LogBoxLog.js +51 -29
  248. package/Libraries/LogBox/Data/parseLogBoxLog.js +10 -10
  249. package/Libraries/LogBox/LogBox.js +22 -2
  250. package/Libraries/LogBox/LogBoxInspectorContainer.js +3 -3
  251. package/Libraries/LogBox/LogBoxNotificationContainer.js +3 -3
  252. package/Libraries/LogBox/UI/AnsiHighlight.js +7 -3
  253. package/Libraries/LogBox/UI/LogBoxButton.js +8 -6
  254. package/Libraries/LogBox/UI/LogBoxInspector.js +1 -1
  255. package/Libraries/LogBox/UI/LogBoxInspectorBody.js +8 -2
  256. package/Libraries/LogBox/UI/LogBoxInspectorCodeFrame.js +50 -31
  257. package/Libraries/LogBox/UI/LogBoxInspectorCodeFrame.win32.js +50 -31
  258. package/Libraries/LogBox/UI/LogBoxInspectorFooter.js +11 -3
  259. package/Libraries/LogBox/UI/LogBoxInspectorFooterButton.js +2 -0
  260. package/Libraries/LogBox/UI/LogBoxInspectorHeader.js +8 -2
  261. package/Libraries/LogBox/UI/LogBoxInspectorHeader.win32.js +8 -2
  262. package/Libraries/LogBox/UI/LogBoxInspectorHeaderButton.js +2 -0
  263. package/Libraries/LogBox/UI/LogBoxInspectorMessageHeader.js +6 -4
  264. package/Libraries/LogBox/UI/LogBoxInspectorReactFrames.js +5 -3
  265. package/Libraries/LogBox/UI/LogBoxInspectorReactFrames.win32.js +5 -3
  266. package/Libraries/LogBox/UI/LogBoxInspectorSection.js +2 -2
  267. package/Libraries/LogBox/UI/LogBoxInspectorSourceMapStatus.js +4 -4
  268. package/Libraries/LogBox/UI/LogBoxInspectorStackFrame.js +5 -3
  269. package/Libraries/LogBox/UI/LogBoxInspectorStackFrame.win32.js +5 -3
  270. package/Libraries/LogBox/UI/LogBoxInspectorStackFrames.js +2 -2
  271. package/Libraries/LogBox/UI/LogBoxNotification.js +6 -2
  272. package/Libraries/LogBox/UI/LogBoxNotificationCountBadge.js +3 -1
  273. package/Libraries/LogBox/UI/LogBoxNotificationDismissButton.js +2 -0
  274. package/Libraries/LogBox/UI/LogBoxNotificationMessage.js +4 -1
  275. package/Libraries/Modal/Modal.js +82 -89
  276. package/Libraries/Modal/NativeModalManager.js +2 -2
  277. package/Libraries/Modal/RCTModalHostViewNativeComponent.js +2 -2
  278. package/Libraries/NativeComponent/BaseViewConfig.android.js +16 -6
  279. package/Libraries/NativeComponent/BaseViewConfig.ios.js +19 -9
  280. package/Libraries/NativeComponent/BaseViewConfig.js.flow +14 -0
  281. package/Libraries/NativeComponent/BaseViewConfig.win32.js +19 -9
  282. package/Libraries/NativeComponent/NativeComponentRegistry.js +1 -1
  283. package/Libraries/NativeComponent/StaticViewConfigValidator.js +5 -1
  284. package/Libraries/NativeModules/specs/NativeDevMenu.js +2 -2
  285. package/Libraries/NativeModules/specs/NativeDevSettings.js +2 -2
  286. package/Libraries/NativeModules/specs/NativeDeviceEventManager.js +2 -2
  287. package/Libraries/NativeModules/specs/NativeDialogManagerAndroid.js +2 -2
  288. package/Libraries/NativeModules/specs/NativeLogBox.js +2 -2
  289. package/Libraries/NativeModules/specs/NativeRedBox.js +2 -2
  290. package/Libraries/NativeModules/specs/NativeSourceCode.js +2 -2
  291. package/Libraries/Network/FormData.js +1 -1
  292. package/Libraries/Network/NativeNetworkingAndroid.js +2 -2
  293. package/Libraries/Network/NativeNetworkingIOS.js +2 -2
  294. package/Libraries/Network/RCTNetworking.android.js +1 -1
  295. package/Libraries/Network/RCTNetworking.ios.js +1 -1
  296. package/Libraries/Network/RCTNetworking.js.flow +44 -0
  297. package/Libraries/Network/RCTNetworking.win32.js +1 -1
  298. package/Libraries/Network/XMLHttpRequest.js +10 -685
  299. package/Libraries/Network/XMLHttpRequest_new.js +794 -0
  300. package/Libraries/Network/XMLHttpRequest_old.js +701 -0
  301. package/Libraries/Network/convertRequestBody.js +7 -4
  302. package/Libraries/Network/fetch.js +4 -3
  303. package/Libraries/PermissionsAndroid/NativePermissionsAndroid.js +2 -2
  304. package/Libraries/PermissionsAndroid/PermissionsAndroid.js +65 -63
  305. package/Libraries/Pressability/HoverState.js +1 -0
  306. package/Libraries/Pressability/HoverState.win32.js +1 -0
  307. package/Libraries/Pressability/Pressability.js +34 -34
  308. package/Libraries/Pressability/Pressability.win32.js +35 -35
  309. package/Libraries/Pressability/PressabilityDebug.js +2 -2
  310. package/Libraries/Pressability/PressabilityPerformanceEventEmitter.js +2 -2
  311. package/Libraries/Promise.js +2 -2
  312. package/Libraries/PushNotificationIOS/NativePushNotificationManagerIOS.js +2 -2
  313. package/Libraries/PushNotificationIOS/PushNotificationIOS.js +119 -16
  314. package/Libraries/ReactNative/AppContainer-dev.js +4 -3
  315. package/Libraries/ReactNative/AppContainer.js +3 -3
  316. package/Libraries/ReactNative/AppRegistry.js +4 -4
  317. package/Libraries/ReactNative/BridgelessUIManager.js +4 -9
  318. package/Libraries/ReactNative/FabricUIManager.js +22 -10
  319. package/Libraries/ReactNative/I18nManager.js +4 -3
  320. package/Libraries/ReactNative/NativeHeadlessJsTaskSupport.js +2 -2
  321. package/Libraries/ReactNative/NativeI18nManager.js +2 -2
  322. package/Libraries/ReactNative/NativeUIManager.js +2 -2
  323. package/Libraries/ReactNative/PaperUIManager.js +6 -6
  324. package/Libraries/ReactNative/PaperUIManager.win32.js +6 -6
  325. package/Libraries/ReactNative/ReactFabricPublicInstance/ReactFabricHostComponent.js +7 -5
  326. package/Libraries/ReactNative/ReactFabricPublicInstance/ReactFabricPublicInstance.js +85 -30
  327. package/Libraries/ReactNative/ReactNativeFeatureFlags.js +3 -3
  328. package/Libraries/ReactNative/ReactNativeRuntimeDiagnostics.js +3 -3
  329. package/Libraries/ReactNative/RendererImplementation.js +12 -5
  330. package/Libraries/ReactNative/RootTag.js +1 -1
  331. package/Libraries/ReactNative/UIManager.d.ts +1 -0
  332. package/Libraries/ReactNative/UIManager.js +3 -3
  333. package/Libraries/ReactNative/UIManagerProperties.js +1 -1
  334. package/Libraries/ReactNative/getNativeComponentAttributes.js +10 -9
  335. package/Libraries/ReactNative/requireNativeComponent.js +3 -2
  336. package/Libraries/ReactPrivate/ReactNativePrivateInterface.js +30 -10
  337. package/Libraries/Renderer/shims/ReactNativeTypes.js +40 -89
  338. package/Libraries/Settings/NativeSettingsManager.js +2 -2
  339. package/Libraries/Settings/Settings.ios.js +1 -1
  340. package/Libraries/Settings/Settings.js +3 -3
  341. package/Libraries/Settings/Settings.win32.js +3 -3
  342. package/Libraries/Share/NativeShareModule.js +2 -2
  343. package/Libraries/Share/Share.js +11 -4
  344. package/Libraries/StyleSheet/PlatformColorValueTypes.ios.js +1 -1
  345. package/Libraries/StyleSheet/PlatformColorValueTypes.js.flow +22 -0
  346. package/Libraries/StyleSheet/Rect.js +2 -2
  347. package/Libraries/StyleSheet/StyleSheet.js +4 -3
  348. package/Libraries/StyleSheet/StyleSheet.win32.js +5 -4
  349. package/Libraries/StyleSheet/StyleSheetTypes.d.ts +1 -1
  350. package/Libraries/StyleSheet/__flowtests__/StyleSheet-flowtest.js +1 -1
  351. package/Libraries/StyleSheet/flattenStyle.js +1 -1
  352. package/Libraries/StyleSheet/normalizeColor.js +1 -1
  353. package/Libraries/StyleSheet/private/_TransformStyle.js +18 -18
  354. package/Libraries/StyleSheet/processAspectRatio.js +1 -1
  355. package/Libraries/StyleSheet/processBackgroundImage.js +138 -136
  356. package/Libraries/StyleSheet/processBoxShadow.js +4 -0
  357. package/Libraries/StyleSheet/processColor.js +2 -2
  358. package/Libraries/StyleSheet/processColorArray.js +1 -1
  359. package/Libraries/StyleSheet/processFilter.js +4 -0
  360. package/Libraries/StyleSheet/processFontVariant.js +1 -1
  361. package/Libraries/StyleSheet/processTransform.js +1 -1
  362. package/Libraries/StyleSheet/setNormalizedColorAlpha.js +1 -1
  363. package/Libraries/Text/Text.d.ts +1 -1
  364. package/Libraries/Text/Text.js +19 -17
  365. package/Libraries/Text/Text.win32.js +19 -17
  366. package/Libraries/Text/TextAncestor.js +2 -3
  367. package/Libraries/Text/TextNativeComponent.js +3 -3
  368. package/Libraries/Text/TextNativeComponent.win32.js +3 -3
  369. package/Libraries/Text/TextProps.js +134 -94
  370. package/Libraries/Text/TextProps.win32.js +134 -94
  371. package/Libraries/TurboModule/TurboModuleRegistry.js +1 -1
  372. package/Libraries/TurboModule/samples/NativeSampleTurboModule.js +2 -2
  373. package/Libraries/Types/CodegenTypes.js +5 -4
  374. package/Libraries/Types/CoreEventTypes.js +119 -86
  375. package/Libraries/Types/CoreEventTypes.win32.js +131 -93
  376. package/Libraries/Types/ReactDevToolsTypes.js +4 -8
  377. package/Libraries/UTFSequence.js +4 -3
  378. package/Libraries/Utilities/Appearance.js +0 -8
  379. package/Libraries/Utilities/BackHandler.android.js +3 -3
  380. package/Libraries/Utilities/BackHandler.ios.js +7 -7
  381. package/Libraries/Utilities/BackHandler.js.flow +25 -0
  382. package/Libraries/Utilities/BackHandler.win32.js +3 -3
  383. package/Libraries/Utilities/DevLoadingView.js +1 -1
  384. package/Libraries/Utilities/DevSettings.js +15 -1
  385. package/Libraries/Utilities/DeviceInfo.js +1 -1
  386. package/Libraries/Utilities/DeviceInfo.win32.js +1 -1
  387. package/Libraries/Utilities/Dimensions.js +5 -0
  388. package/Libraries/Utilities/Dimensions.win32.js +5 -0
  389. package/Libraries/Utilities/FeatureDetection.js +2 -4
  390. package/Libraries/Utilities/FocusManager.win32.js +3 -3
  391. package/Libraries/Utilities/GlobalPerformanceLogger.js +1 -1
  392. package/Libraries/Utilities/HMRClient.js +7 -7
  393. package/Libraries/Utilities/HMRClientProdShim.js +1 -1
  394. package/Libraries/Utilities/NativeAppearance.js +2 -2
  395. package/Libraries/Utilities/NativeDevLoadingView.js +2 -2
  396. package/Libraries/Utilities/NativeDeviceInfo.js +2 -2
  397. package/Libraries/Utilities/NativePlatformConstantsAndroid.js +2 -2
  398. package/Libraries/Utilities/NativePlatformConstantsIOS.js +2 -2
  399. package/Libraries/Utilities/NativePlatformConstantsWin.js +2 -2
  400. package/Libraries/Utilities/Platform.android.js +6 -6
  401. package/Libraries/Utilities/Platform.ios.js +6 -6
  402. package/{flow/Position.js → Libraries/Utilities/Platform.js.flow} +3 -6
  403. package/Libraries/Utilities/Platform.win32.js +4 -4
  404. package/Libraries/Utilities/{Platform.flow.win32.js → PlatformTypes.js} +105 -14
  405. package/Libraries/Utilities/PolyfillFunctions.js +3 -5
  406. package/Libraries/Utilities/RCTLog.js +1 -1
  407. package/Libraries/Utilities/ReactNativeTestTools.js +6 -6
  408. package/Libraries/Utilities/SceneTracker.js +1 -1
  409. package/Libraries/Utilities/__mocks__/GlobalPerformanceLogger.js +2 -2
  410. package/Libraries/Utilities/binaryToBase64.js +1 -1
  411. package/Libraries/Utilities/codegenNativeCommands.js +2 -2
  412. package/Libraries/Utilities/codegenNativeComponent.js +3 -3
  413. package/Libraries/Utilities/deepFreezeAndThrowOnMutationInDev.js +1 -1
  414. package/Libraries/Utilities/defineLazyObjectProperty.js +1 -1
  415. package/Libraries/Utilities/differ/deepDiffer.js +6 -6
  416. package/Libraries/Utilities/differ/insetsDiffer.js +3 -3
  417. package/Libraries/Utilities/differ/matricesDiffer.js +3 -6
  418. package/Libraries/Utilities/differ/pointsDiffer.js +3 -3
  419. package/Libraries/Utilities/differ/sizesDiffer.js +3 -3
  420. package/Libraries/Utilities/dismissKeyboard.js +3 -2
  421. package/Libraries/Utilities/infoLog.js +1 -1
  422. package/Libraries/Utilities/logError.js +1 -1
  423. package/Libraries/Utilities/mapWithSeparator.js +1 -1
  424. package/Libraries/Utilities/stringifySafe.js +2 -2
  425. package/Libraries/Utilities/warnOnce.js +1 -1
  426. package/Libraries/Vibration/NativeVibration.js +2 -2
  427. package/Libraries/Vibration/Vibration.js +4 -4
  428. package/Libraries/WebSocket/NativeWebSocketModule.js +2 -2
  429. package/Libraries/WebSocket/WebSocket.js +8 -285
  430. package/Libraries/WebSocket/WebSocketEvent.js +2 -2
  431. package/Libraries/WebSocket/WebSocketInterceptor.js +39 -11
  432. package/Libraries/WebSocket/WebSocket_new.js +325 -0
  433. package/Libraries/WebSocket/WebSocket_old.js +297 -0
  434. package/Libraries/WebSocket/__mocks__/event-target-shim.js +1 -1
  435. package/Libraries/__flowtests__/ReactNativeTypes-flowtest.js +2 -4
  436. package/Libraries/vendor/core/ErrorUtils.js +1 -1
  437. package/Libraries/vendor/emitter/EventEmitter.js +21 -9
  438. package/flow/jest.js +14 -14
  439. package/index.js +153 -237
  440. package/index.win32.js +64 -55
  441. package/jest/mockScrollView.js +1 -1
  442. package/jest/setup.js +314 -264
  443. package/overrides.json +64 -75
  444. package/package.json +26 -26
  445. package/src/private/animated/createAnimatedPropsHook.js +360 -0
  446. package/src/private/animated/{useAnimatedPropsMemo.js → createAnimatedPropsMemoHook.js} +84 -32
  447. package/src/private/components/HScrollViewNativeComponents.js +2 -2
  448. package/src/private/components/SafeAreaView_INTERNAL_DO_NOT_USE.js +2 -2
  449. package/src/private/components/VScrollViewNativeComponents.js +1 -1
  450. package/src/private/debugging/ReactDevToolsSettingsManager.android.js +1 -1
  451. package/src/private/debugging/ReactDevToolsSettingsManager.win32.js +1 -1
  452. package/src/private/devmenu/DevMenu.js +2 -2
  453. package/src/private/featureflags/ReactNativeFeatureFlags.js +53 -75
  454. package/src/private/featureflags/ReactNativeFeatureFlagsBase.js +5 -7
  455. package/src/private/featureflags/specs/NativeReactNativeFeatureFlags.js +10 -12
  456. package/{Libraries/Inspector → src/private/inspector}/BorderBox.js +3 -3
  457. package/{Libraries/Inspector → src/private/inspector}/BoxInspector.js +9 -6
  458. package/{Libraries/Inspector → src/private/inspector}/ElementBox.js +9 -8
  459. package/{Libraries/Inspector → src/private/inspector}/ElementProperties.js +20 -15
  460. package/{Libraries/Inspector → src/private/inspector}/Inspector.js +21 -18
  461. package/{Libraries/Inspector → src/private/inspector}/InspectorOverlay.js +11 -10
  462. package/{Libraries/Inspector → src/private/inspector}/InspectorPanel.js +17 -15
  463. package/{Libraries/Inspector → src/private/inspector}/NetworkOverlay.js +43 -27
  464. package/{Libraries/Inspector → src/private/inspector}/PerformanceOverlay.js +8 -6
  465. package/{Libraries/Inspector → src/private/inspector}/ReactDevToolsOverlay.js +11 -10
  466. package/{Libraries/Inspector → src/private/inspector}/StyleInspector.js +6 -6
  467. package/{Libraries/Network → src/private/inspector}/XHRInterceptor.js +5 -2
  468. package/{Libraries/Inspector → src/private/inspector}/getInspectorDataForViewAtPoint.js +6 -6
  469. package/{Libraries/Inspector → src/private/inspector}/resolveBoxStyle.js +5 -4
  470. package/src/private/renderer/errorhandling/ErrorHandlers.js +5 -5
  471. package/src/private/setup/setUpDOM.js +43 -3
  472. package/src/private/{specs → specs_DEPRECATED}/components/ActivityIndicatorViewNativeComponent.js +3 -3
  473. package/src/private/{specs → specs_DEPRECATED}/components/AndroidDrawerLayoutNativeComponent.js +7 -7
  474. package/src/private/{specs → specs_DEPRECATED}/components/AndroidHorizontalScrollContentViewNativeComponent.js +3 -3
  475. package/src/private/{specs → specs_DEPRECATED}/components/AndroidSwipeRefreshLayoutNativeComponent.js +3 -3
  476. package/src/private/{specs → specs_DEPRECATED}/components/AndroidSwitchNativeComponent.js +5 -5
  477. package/src/private/{specs → specs_DEPRECATED}/components/DebuggingOverlayNativeComponent.js +3 -3
  478. package/src/private/{specs → specs_DEPRECATED}/components/ProgressBarAndroidNativeComponent.js +3 -3
  479. package/src/private/{specs → specs_DEPRECATED}/components/PullToRefreshViewNativeComponent.js +3 -3
  480. package/src/private/{specs → specs_DEPRECATED}/components/RCTInputAccessoryViewNativeComponent.js +3 -3
  481. package/src/private/{specs → specs_DEPRECATED}/components/RCTModalHostViewNativeComponent.js +5 -5
  482. package/src/private/{specs → specs_DEPRECATED}/components/RCTSafeAreaViewNativeComponent.js +3 -3
  483. package/src/private/{specs → specs_DEPRECATED}/components/SwitchNativeComponent.js +5 -5
  484. package/src/private/{specs → specs_DEPRECATED}/components/UnimplementedNativeViewNativeComponent.js +3 -3
  485. package/src/private/{specs → specs_DEPRECATED}/modules/NativeAccessibilityManager.js +2 -2
  486. package/src/private/{specs → specs_DEPRECATED}/modules/NativeActionSheetManager.js +7 -7
  487. package/src/private/{specs → specs_DEPRECATED}/modules/NativeAlertManager.js +2 -2
  488. package/src/private/{specs → specs_DEPRECATED}/modules/NativeAnimatedModule.js +2 -2
  489. package/src/private/{specs → specs_DEPRECATED}/modules/NativeAnimatedTurboModule.js +2 -2
  490. package/src/private/{specs → specs_DEPRECATED}/modules/NativeAppState.js +3 -3
  491. package/src/private/{specs → specs_DEPRECATED}/modules/NativeBlobModule.js +1 -1
  492. package/src/private/{specs → specs_DEPRECATED}/modules/NativeClipboard.js +1 -1
  493. package/src/private/{specs → specs_DEPRECATED}/modules/NativeDevMenu.js +0 -1
  494. package/src/private/{specs → specs_DEPRECATED}/modules/NativeDevSettings.js +0 -1
  495. package/src/private/{specs → specs_DEPRECATED}/modules/NativeDeviceInfo.js +8 -8
  496. package/src/private/{specs → specs_DEPRECATED}/modules/NativeDialogManagerAndroid.js +4 -4
  497. package/src/private/{specs → specs_DEPRECATED}/modules/NativeExceptionsManager.js +3 -3
  498. package/src/private/{specs → specs_DEPRECATED}/modules/NativeFrameRateLogger.js +1 -1
  499. package/src/private/{specs → specs_DEPRECATED}/modules/NativeI18nManager.js +2 -2
  500. package/src/private/{specs → specs_DEPRECATED}/modules/NativeImageEditor.js +9 -9
  501. package/src/private/{specs → specs_DEPRECATED}/modules/NativeImageLoaderAndroid.js +1 -1
  502. package/src/private/{specs → specs_DEPRECATED}/modules/NativeImageLoaderIOS.js +1 -1
  503. package/src/private/{specs → specs_DEPRECATED}/modules/NativeImageLoaderWin32.js +1 -1
  504. package/src/private/{specs → specs_DEPRECATED}/modules/NativeImageStoreAndroid.js +1 -1
  505. package/src/private/{specs → specs_DEPRECATED}/modules/NativeImageStoreIOS.js +3 -3
  506. package/src/private/{specs → specs_DEPRECATED}/modules/NativeNetworkingIOS.js +2 -2
  507. package/src/private/{specs → specs_DEPRECATED}/modules/NativePermissionsAndroid.js +5 -4
  508. package/src/private/{specs → specs_DEPRECATED}/modules/NativePlatformConstantsAndroid.js +4 -4
  509. package/src/private/{specs → specs_DEPRECATED}/modules/NativePlatformConstantsIOS.js +4 -4
  510. package/src/private/{specs → specs_DEPRECATED}/modules/NativePlatformConstantsWin.js +5 -10
  511. package/src/private/{specs → specs_DEPRECATED}/modules/NativePushNotificationManagerIOS.js +7 -7
  512. package/src/private/{specs → specs_DEPRECATED}/modules/NativeSampleTurboModule.js +2 -2
  513. package/src/private/{specs → specs_DEPRECATED}/modules/NativeSettingsManager.js +2 -2
  514. package/src/private/{specs → specs_DEPRECATED}/modules/NativeShareModule.js +3 -3
  515. package/src/private/{specs → specs_DEPRECATED}/modules/NativeSourceCode.js +2 -2
  516. package/src/private/{specs → specs_DEPRECATED}/modules/NativeStatusBarManagerAndroid.js +4 -4
  517. package/src/private/{specs → specs_DEPRECATED}/modules/NativeStatusBarManagerIOS.js +6 -6
  518. package/src/private/{specs → specs_DEPRECATED}/modules/NativeToastAndroid.js +2 -2
  519. package/src/private/specs_DEPRECATED/modules/NativeUIManager.js +184 -0
  520. package/src/private/{specs → specs_DEPRECATED}/modules/NativeVibration.js +1 -1
  521. package/src/private/{specs → specs_DEPRECATED}/modules/NativeWebSocketModule.js +1 -1
  522. package/{flow/react.js → src/private/types/HostComponent.js} +6 -5
  523. package/src/private/types/HostInstance.js +50 -0
  524. package/src/private/webapis/dom/events/CustomEvent.js +38 -0
  525. package/src/private/webapis/dom/events/Event.js +236 -0
  526. package/src/private/webapis/dom/events/EventHandlerAttributes.js +130 -0
  527. package/src/private/webapis/dom/events/EventTarget.js +436 -0
  528. package/src/private/webapis/dom/events/internals/EventInternals.js +120 -0
  529. package/src/private/webapis/dom/events/internals/EventTargetInternals.js +52 -0
  530. package/src/private/webapis/dom/nodes/ReactNativeDocument.js +121 -0
  531. package/src/private/webapis/dom/nodes/ReactNativeElement.js +82 -51
  532. package/src/private/webapis/dom/nodes/ReadOnlyCharacterData.js +7 -6
  533. package/src/private/webapis/dom/nodes/ReadOnlyElement.js +26 -26
  534. package/src/private/webapis/dom/nodes/ReadOnlyNode.js +56 -78
  535. package/src/private/webapis/dom/nodes/internals/NodeInternals.js +144 -0
  536. package/src/private/webapis/dom/nodes/internals/ReactNativeDocumentElementInstanceHandle.js +55 -0
  537. package/src/private/webapis/dom/nodes/internals/ReactNativeDocumentInstanceHandle.js +44 -0
  538. package/src/private/webapis/dom/nodes/specs/NativeDOM.js +305 -194
  539. package/src/private/webapis/dom/oldstylecollections/HTMLCollection.js +2 -2
  540. package/src/private/webapis/dom/oldstylecollections/NodeList.js +2 -2
  541. package/src/private/webapis/{dom/oldstylecollections → geometry}/DOMRectList.js +3 -3
  542. package/src/private/webapis/html/events/MessageEvent.js +56 -0
  543. package/src/private/webapis/intersectionobserver/IntersectionObserver.js +6 -6
  544. package/src/private/webapis/intersectionobserver/IntersectionObserverEntry.js +1 -1
  545. package/src/private/webapis/intersectionobserver/{IntersectionObserverManager.js → internals/IntersectionObserverManager.js} +20 -17
  546. package/src/private/webapis/mutationobserver/MutationObserver.js +11 -11
  547. package/src/private/webapis/mutationobserver/{MutationObserverManager.js → internals/MutationObserverManager.js} +12 -14
  548. package/src/private/webapis/performance/EventTiming.js +1 -1
  549. package/src/private/webapis/performance/Performance.js +3 -3
  550. package/src/private/webapis/performance/PerformanceObserver.js +8 -8
  551. package/src/private/webapis/performance/{RawPerformanceEntry.js → internals/RawPerformanceEntry.js} +6 -6
  552. package/src/private/webapis/performance/{Utilities.js → internals/Utilities.js} +1 -1
  553. package/src/private/webapis/performance/specs/__mocks__/NativePerformanceMock.js +1 -1
  554. package/src/private/webapis/websockets/events/CloseEvent.js +52 -0
  555. package/src/private/webapis/xhr/events/ProgressEvent.js +52 -0
  556. package/src/types/globals.d.ts +628 -0
  557. package/src-win/Libraries/Components/TextInput/Tests/TextInputTest.tsx +7 -7
  558. package/src-win/Libraries/Components/Touchable/Tests/TouchableWin32Test.tsx +3 -3
  559. package/src-win/Libraries/Components/View/ViewPropTypes.d.ts +14 -14
  560. package/src-win/Libraries/Image/Tests/ImageWin32Test.tsx +1 -1
  561. package/src-win/Libraries/Text/Text.d.ts +1 -1
  562. package/types/index.d.ts +2 -58
  563. package/Libraries/Animated/AnimatedWeb.js +0 -26
  564. package/Libraries/Inspector/Inspector.win32.js +0 -212
  565. package/Libraries/Inspector/InspectorOverlay.win32.js +0 -68
  566. package/Libraries/JSInspector/InspectorAgent.js +0 -27
  567. package/Libraries/JSInspector/JSInspector.js +0 -33
  568. package/Libraries/JSInspector/NetworkAgent.js +0 -295
  569. package/Libraries/Utilities/DebugEnvironment.js +0 -16
  570. package/Libraries/Utilities/Platform.flow.js +0 -91
  571. package/Libraries/YellowBox/YellowBoxDeprecated.d.ts +0 -19
  572. package/Libraries/YellowBox/YellowBoxDeprecated.js +0 -75
  573. package/src/private/specs/modules/NativeCPUTime.js +0 -24
  574. package/src/private/specs/modules/NativeFantom.js +0 -37
  575. package/src/private/specs/modules/NativeUIManager.js +0 -111
  576. package/types/modules/globals.d.ts +0 -599
  577. /package/src/private/{specs → specs_DEPRECATED}/modules/NativeAccessibilityInfo.js +0 -0
  578. /package/src/private/{specs → specs_DEPRECATED}/modules/NativeAccessibilityInfoWin32.js +0 -0
  579. /package/src/private/{specs → specs_DEPRECATED}/modules/NativeAppearance.js +0 -0
  580. /package/src/private/{specs → specs_DEPRECATED}/modules/NativeBugReporting.js +0 -0
  581. /package/src/private/{specs → specs_DEPRECATED}/modules/NativeDevLoadingView.js +0 -0
  582. /package/src/private/{specs → specs_DEPRECATED}/modules/NativeDeviceEventManager.js +0 -0
  583. /package/src/private/{specs → specs_DEPRECATED}/modules/NativeFileReaderModule.js +0 -0
  584. /package/src/private/{specs → specs_DEPRECATED}/modules/NativeHeadlessJsTaskSupport.js +0 -0
  585. /package/src/private/{specs → specs_DEPRECATED}/modules/NativeIntentAndroid.js +0 -0
  586. /package/src/private/{specs → specs_DEPRECATED}/modules/NativeJSCHeapCapture.js +0 -0
  587. /package/src/private/{specs → specs_DEPRECATED}/modules/NativeKeyboardObserver.js +0 -0
  588. /package/src/private/{specs → specs_DEPRECATED}/modules/NativeLinkingManager.js +0 -0
  589. /package/src/private/{specs → specs_DEPRECATED}/modules/NativeLogBox.js +0 -0
  590. /package/src/private/{specs → specs_DEPRECATED}/modules/NativeModalManager.js +0 -0
  591. /package/src/private/{specs → specs_DEPRECATED}/modules/NativeNetworkingAndroid.js +0 -0
  592. /package/src/private/{specs → specs_DEPRECATED}/modules/NativeReactDevToolsSettingsManager.js +0 -0
  593. /package/src/private/{specs → specs_DEPRECATED}/modules/NativeRedBox.js +0 -0
  594. /package/src/private/{specs → specs_DEPRECATED}/modules/NativeSegmentFetcher.js +0 -0
  595. /package/src/private/{specs → specs_DEPRECATED}/modules/NativeSoundManager.js +0 -0
  596. /package/src/private/{specs → specs_DEPRECATED}/modules/NativeTiming.js +0 -0
  597. /package/src/private/webapis/dom/nodes/{utilities → internals}/Traversal.js +0 -0
  598. /package/src/private/webapis/{dom/geometry → geometry}/DOMRect.js +0 -0
  599. /package/src/private/webapis/{dom/geometry → geometry}/DOMRectReadOnly.js +0 -0
  600. /package/src/private/webapis/{dom/oldstylecollections → utils}/ArrayLikeUtils.js +0 -0
@@ -12,32 +12,16 @@
12
12
  // TextInputs. All calls relating to the keyboard should be funneled
13
13
  // through here.
14
14
 
15
- import type {
16
- HostInstance,
17
- MeasureInWindowOnSuccessCallback,
18
- MeasureLayoutOnSuccessCallback,
19
- MeasureOnSuccessCallback,
20
- } from '../../Renderer/shims/ReactNativeTypes';
15
+ import type {HostInstance} from '../../../src/private/types/HostInstance';
21
16
 
22
17
  import {Commands as AndroidTextInputCommands} from '../../Components/TextInput/AndroidTextInputNativeComponent';
23
18
  import {Commands as iOSTextInputCommands} from '../../Components/TextInput/RCTSingelineTextInputNativeComponent';
24
19
 
25
20
  const {findNodeHandle} = require('../../ReactNative/RendererProxy');
26
- const Platform = require('../../Utilities/Platform');
21
+ const Platform = require('../../Utilities/Platform').default;
27
22
 
28
23
  let currentlyFocusedInputRef: ?HostInstance = null;
29
- const inputs = new Set<{
30
- blur(): void,
31
- focus(): void,
32
- measure(callback: MeasureOnSuccessCallback): void,
33
- measureInWindow(callback: MeasureInWindowOnSuccessCallback): void,
34
- measureLayout(
35
- relativeToNativeNode: number | HostInstance,
36
- onSuccess: MeasureLayoutOnSuccessCallback,
37
- onFail?: () => void,
38
- ): void,
39
- setNativeProps(nativeProps: {...}): void,
40
- }>();
24
+ const inputs = new Set<HostInstance>();
41
25
 
42
26
  function currentlyFocusedInput(): ?HostInstance {
43
27
  return currentlyFocusedInputRef;
@@ -196,7 +180,7 @@ function isTextInput(textField: HostInstance): boolean {
196
180
  return inputs.has(textField);
197
181
  }
198
182
 
199
- module.exports = {
183
+ const TextInputState = {
200
184
  currentlyFocusedInput,
201
185
  focusInput,
202
186
  blurInput,
@@ -210,3 +194,5 @@ module.exports = {
210
194
  unregisterInput,
211
195
  isTextInput,
212
196
  };
197
+
198
+ export default TextInputState;
@@ -12,33 +12,17 @@
12
12
  // TextInputs. All calls relating to the keyboard should be funneled
13
13
  // through here.
14
14
 
15
- import type {
16
- HostInstance,
17
- MeasureInWindowOnSuccessCallback,
18
- MeasureLayoutOnSuccessCallback,
19
- MeasureOnSuccessCallback,
20
- } from '../../Renderer/shims/ReactNativeTypes';
15
+ import type {HostInstance} from '../../../src/private/types/HostInstance';
21
16
 
22
17
  import {Commands as AndroidTextInputCommands} from '../../Components/TextInput/AndroidTextInputNativeComponent';
23
18
  import {Commands as iOSTextInputCommands} from '../../Components/TextInput/RCTSingelineTextInputNativeComponent';
24
19
  import {Commands as Win32TextInputCommands} from '../../Components/TextInput/Win32TextInputNativeComponent';
25
20
 
26
21
  const {findNodeHandle} = require('../../ReactNative/RendererProxy');
27
- const Platform = require('../../Utilities/Platform');
22
+ const Platform = require('../../Utilities/Platform').default;
28
23
 
29
24
  let currentlyFocusedInputRef: ?HostInstance = null;
30
- const inputs = new Set<{
31
- blur(): void,
32
- focus(): void,
33
- measure(callback: MeasureOnSuccessCallback): void,
34
- measureInWindow(callback: MeasureInWindowOnSuccessCallback): void,
35
- measureLayout(
36
- relativeToNativeNode: number | HostInstance,
37
- onSuccess: MeasureLayoutOnSuccessCallback,
38
- onFail?: () => void,
39
- ): void,
40
- setNativeProps(nativeProps: {...}): void,
41
- }>();
25
+ const inputs = new Set<HostInstance>();
42
26
 
43
27
  function currentlyFocusedInput(): ?HostInstance {
44
28
  return currentlyFocusedInputRef;
@@ -235,7 +219,7 @@ function isTextInput(textField: HostInstance): boolean {
235
219
  return inputs.has(textField);
236
220
  }
237
221
 
238
- module.exports = {
222
+ const TextInputState = {
239
223
  currentlyFocusedInput,
240
224
  focusInput,
241
225
  blurInput,
@@ -251,3 +235,5 @@ module.exports = {
251
235
  unregisterInput,
252
236
  isTextInput,
253
237
  };
238
+
239
+ export default TextInputState;
@@ -3,7 +3,7 @@
3
3
  * @format
4
4
  */
5
5
 
6
- import type {HostComponent} from '../../Renderer/shims/ReactNativeTypes';
6
+ import type {HostComponent} from '../../../src/private/types/HostComponent';
7
7
 
8
8
  import requireNativeComponent from '../../ReactNative/requireNativeComponent';
9
9
  import codegenNativeCommands from '../../Utilities/codegenNativeCommands';
@@ -8,6 +8,6 @@
8
8
  * @format
9
9
  */
10
10
 
11
- export * from '../../../src/private/specs/modules/NativeToastAndroid';
12
- import NativeToastAndroid from '../../../src/private/specs/modules/NativeToastAndroid';
11
+ export * from '../../../src/private/specs_DEPRECATED/modules/NativeToastAndroid';
12
+ import NativeToastAndroid from '../../../src/private/specs_DEPRECATED/modules/NativeToastAndroid';
13
13
  export default NativeToastAndroid;
@@ -71,4 +71,4 @@ const ToastAndroid = {
71
71
  },
72
72
  };
73
73
 
74
- module.exports = ToastAndroid;
74
+ export default ToastAndroid;
@@ -16,17 +16,51 @@
16
16
  *
17
17
  * There is also a function `showWithGravity` to specify the layout gravity. May be
18
18
  * ToastAndroid.TOP, ToastAndroid.BOTTOM, ToastAndroid.CENTER
19
+ *
20
+ * **Note**: Starting from Android API level 30 (Android R) or higher, for apps targeting
21
+ * that API level, setting toast gravity is a no-op for text toasts.
22
+ * This means that in many cases `TOP`, `BOTTOM`, `CENTER`, or offsets may not have
23
+ * any visible effect on actual toast positioning.
24
+ *
25
+ * Reference: https://developer.android.com/reference/android/widget/Toast#setGravity(int,%20int,%20int)
19
26
  */
20
27
  export interface ToastAndroidStatic {
21
28
  /**
22
- * String message: A string with the text to toast
23
- * int duration: The duration of the toast.
24
- * May be ToastAndroid.SHORT or ToastAndroid.LONG
29
+ * Display a toast message for a specified duration.
30
+ *
31
+ * @param message A string with the text to toast.
32
+ * @param duration The duration of the toast–either ToastAndroid.SHORT or ToastAndroid.LONG
25
33
  */
26
34
  show(message: string, duration: number): void;
27
- /** `gravity` may be ToastAndroid.TOP, ToastAndroid.BOTTOM, ToastAndroid.CENTER */
35
+
36
+ /**
37
+ * Display a toast message for a specified duration with a given gravity.
38
+ *
39
+ * @param message A string with the text to display in the toast.
40
+ * @param duration The duration of the toast.
41
+ * May be `ToastAndroid.SHORT` or `ToastAndroid.LONG`.
42
+ * @param gravity Positioning on the screen, e.g.,
43
+ * `ToastAndroid.TOP`, `ToastAndroid.BOTTOM`, or `ToastAndroid.CENTER`.
44
+ *
45
+ * **Note**: On Android R (API 30) or later (when targeting API 30+), this setting may
46
+ * not have any effect on text toast placement due to `setGravity` becoming a no-op.
47
+ */
28
48
  showWithGravity(message: string, duration: number, gravity: number): void;
29
49
 
50
+ /**
51
+ * Display a toast message for a specified duration with a given gravity and custom offsets.
52
+ *
53
+ * @param message A string with the text to display in the toast.
54
+ * @param duration The duration of the toast.
55
+ * May be `ToastAndroid.SHORT` or `ToastAndroid.LONG`.
56
+ * @param gravity Positioning on the screen, e.g.,
57
+ * `ToastAndroid.TOP`, `ToastAndroid.BOTTOM`, or `ToastAndroid.CENTER`.
58
+ * @param xOffset Horizontal offset from the given gravity.
59
+ * @param yOffset Vertical offset from the given gravity.
60
+ *
61
+ * **Note**: On Android R (API 30) or later (when targeting API 30+), setting gravity
62
+ * and offsets may not visibly affect the placement of text toasts.
63
+ */
30
64
  showWithGravityAndOffset(
31
65
  message: string,
32
66
  duration: number,
@@ -34,12 +68,40 @@ export interface ToastAndroidStatic {
34
68
  xOffset: number,
35
69
  yOffset: number,
36
70
  ): void;
37
- // Toast duration constants
71
+
72
+ /**
73
+ * Indicates a short duration on the screen.
74
+ *
75
+ * Value: 2000 milliseconds (2 seconds).
76
+ */
38
77
  SHORT: number;
78
+
79
+ /**
80
+ * Indicates a long duration on the screen.
81
+ *
82
+ * Value: 3500 milliseconds (3.5 seconds).
83
+ */
39
84
  LONG: number;
40
- // Toast gravity constants
85
+
86
+ /**
87
+ * Indicates that the toast message should appear at the top of the screen.
88
+ *
89
+ * **Note**: On Android R or later, this may not have any visible effect.
90
+ */
41
91
  TOP: number;
92
+
93
+ /**
94
+ * Indicates that the toast message should appear at the bottom of the screen.
95
+ *
96
+ * **Note**: On Android R or later, this may not have any visible effect.
97
+ */
42
98
  BOTTOM: number;
99
+
100
+ /**
101
+ * Indicates that the toast message should appear at the center of the screen.
102
+ *
103
+ * **Note**: On Android R or later, this may not have any visible effect.
104
+ */
43
105
  CENTER: number;
44
106
  }
45
107
 
@@ -42,4 +42,4 @@ const ToastAndroid = {
42
42
  },
43
43
  };
44
44
 
45
- module.exports = ToastAndroid;
45
+ export default ToastAndroid;
@@ -42,4 +42,4 @@ const ToastAndroid = {
42
42
  },
43
43
  };
44
44
 
45
- module.exports = ToastAndroid;
45
+ export default ToastAndroid;
@@ -50,4 +50,4 @@ BoundingDimensions.getPooledFromElement = function (
50
50
 
51
51
  PooledClass.addPoolingTo(BoundingDimensions as $FlowFixMe, twoArgumentPooler);
52
52
 
53
- module.exports = BoundingDimensions;
53
+ export default BoundingDimensions;
@@ -130,4 +130,4 @@ const PooledClass = {
130
130
  fourArgumentPooler: (fourArgumentPooler: Pooler),
131
131
  };
132
132
 
133
- module.exports = PooledClass;
133
+ export default PooledClass;
@@ -37,4 +37,4 @@ Position.prototype.destructor = function () {
37
37
 
38
38
  PooledClass.addPoolingTo(Position as $FlowFixMe, twoArgumentPooler);
39
39
 
40
- module.exports = Position;
40
+ export default Position;
@@ -1,9 +1,8 @@
1
- import React from 'react';
2
1
  export declare const displayName = "TouchableWin32 Examples";
3
2
  export declare const title = "TouchableWin32";
4
3
  export declare const description = "Demonstration of touchable + focus + hover behavior all in one component";
5
4
  export declare const examples: {
6
5
  title: string;
7
6
  description: string;
8
- render(): React.JSX.Element;
7
+ render(): JSX.Element;
9
8
  }[];
@@ -1 +1 @@
1
- {"version":3,"file":"TouchableWin32Test.js","sourceRoot":"","sources":["../../../../src-win/Libraries/Components/Touchable/Tests/TouchableWin32Test.tsx"],"names":[],"mappings":"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","sourcesContent":["'use strict';\n\nimport React from 'react'\nimport {NativeSyntheticEvent, StyleSheet, Text, ViewStyle } from 'react-native';\nimport {Insets} from 'react-native/types/public/Insets';\nimport { ViewWin32 } from '../../View/ViewWin32';\nimport { IViewWin32Props, IKeyboardEvent } from '../../View/ViewPropTypes';\nimport { TouchableWin32 } from '../TouchableWin32';\nimport { IPressEvent, IRenderChild } from '../TouchableWin32.Types';\nimport { ITouchableWin32State } from '../TouchableWin32.Props';\n\n/**\n * Styles used across both examples\n */\nconst styles = StyleSheet.create({\n largeContainer: {\n height: 200,\n width: 600,\n justifyContent: 'space-between',\n alignItems: 'center',\n flexDirection: 'row',\n },\n smallContainer: {\n height: 90,\n width: 90,\n justifyContent: 'center',\n alignContent: 'center',\n },\n highlight: {\n height: 150,\n width: 150,\n justifyContent: 'space-around',\n alignContent: 'center',\n alignItems: 'center',\n flexDirection: 'row',\n },\n outerTouch: {\n height: 150,\n width: 150,\n justifyContent: 'space-around',\n alignContent: 'center',\n alignItems: 'center',\n flexDirection: 'row',\n },\n innerTouch: {\n height: 90,\n width: 90,\n alignItems: 'center',\n justifyContent: 'center',\n },\n});\n\n/**\n * Constant press rect offset, used to demonstrate press geometry\n */\nconst PRESS_RETENTION_OFFSET: Insets = {\n top: 100,\n left: 100,\n right: 100,\n bottom: 100,\n};\n\ninterface ITouchableWin32WithoutFeedbackProps extends IViewWin32Props {\n delayLongPress?: number;\n delayPressIn?: number;\n delayPressOut?: number;\n onPress?: (e: IPressEvent) => void;\n onPressIn?: (e: IPressEvent) => void;\n onPressOut?: (e: IPressEvent) => void;\n onLongPress?: (e: IPressEvent) => void;\n pressRetentionOffset?: Insets;\n rejectResponderTermination?: boolean;\n}\n\ninterface ITouchableWin32WithoutFeedbackState {\n isFocused: boolean;\n}\n\n/**\n * Example implementation of TouchableWithoutFeedback - not meant for use outside these examples\n * This is mainly there to show the ability to respond to touches without providing visual feedback,\n * though we do show a red border on focus to know where starts start and end and whether press rect\n * offsets are respected.\n */\nclass TouchableWin32WithoutFeedback extends React.Component<ITouchableWin32WithoutFeedbackProps, ITouchableWin32WithoutFeedbackState> {\n constructor(props) {\n super(props);\n\n this.state = { isFocused: false };\n }\n\n public render() {\n return (\n <TouchableWin32\n focusable\n rejectResponderTermination={true}\n disabled={false}\n touchableHandleActivePressIn={this._touchableHandleActivePressIn}\n touchableHandleActivePressOut={this._touchableHandleActivePressOut}\n touchableHandlePress={this._touchableHandlePress}\n touchableHandleLongPress={this._touchableHandleLongPress}\n touchableGetHighlightDelayMS={this._touchableGetHighlightDelayMS}\n touchableGetPressRectOffset={this._touchableGetPressRectOffset}\n touchableGetLongPressDelayMS={this._touchableGetLongPressDelayMS}\n touchableGetPressOutDelayMS={this._touchableGetPressOutDelayMS}\n touchableGetHitSlop={this._touchableGetHitSlop}\n onFocus={this._onFocus}\n onBlur={this._onBlur}\n renderStyle={this._generateStyle}\n >\n {React.Children.only(this.props.children)}\n </TouchableWin32>\n );\n }\n\n private readonly _touchableHandlePress = (e: IPressEvent) => {\n this.props.onPress && this.props.onPress(e);\n };\n\n private readonly _touchableHandleActivePressIn = (e: IPressEvent) => {\n this.props.onPressIn && this.props.onPressIn(e);\n };\n\n private readonly _touchableHandleActivePressOut = (e: IPressEvent) => {\n this.props.onPressOut && this.props.onPressOut(e);\n };\n\n private readonly _touchableHandleLongPress = (e: IPressEvent) => {\n this.props.onLongPress && this.props.onLongPress(e);\n };\n\n private readonly _touchableGetPressRectOffset = (): Insets => {\n return this.props.pressRetentionOffset || PRESS_RETENTION_OFFSET;\n };\n\n private readonly _touchableGetHitSlop = (): Insets => {\n return this.props.hitSlop as Insets;\n };\n\n private readonly _touchableGetHighlightDelayMS = (): number => {\n return this.props.delayPressIn || 0;\n };\n\n private readonly _touchableGetLongPressDelayMS = (): number => {\n return this.props.delayLongPress === 0 ? 0 : this.props.delayLongPress || 500;\n };\n\n private readonly _touchableGetPressOutDelayMS = (): number => {\n return this.props.delayPressOut || 0;\n };\n\n private readonly _onFocus = () => {\n this.setState({ isFocused: true });\n };\n\n private readonly _onBlur = () => {\n this.setState({ isFocused: false });\n };\n\n /**\n * The generated style uses hard-coded border width values\n */\n private readonly _generateStyle = (state: ITouchableWin32State): ViewStyle => {\n const finalStyle: ViewStyle = {\n borderWidth: state.isFocused ? 5 : 0,\n borderColor: 'red',\n };\n return Object.assign({}, this.props.style, finalStyle);\n };\n}\n\ninterface ITouchableWin32HighlightProps extends Omit <IViewWin32Props, 'children'> {\n delayLongPress?: number;\n delayLongPressIn?: number;\n delayPressOut?: number;\n onPress?: (e: IPressEvent) => void;\n onPressIn?: (e: IPressEvent) => void;\n onPressOut?: (e: IPressEvent) => void;\n onLongPress?: (e: IPressEvent) => void;\n onKeyPress?: (e: IKeyboardEvent) => void;\n onKeyPressDown?: (e: IKeyboardEvent) => void;\n pressRetentionOffset?: Insets;\n rejectResponderTermination?: boolean;\n underlayColor?: string;\n children?: IRenderChild<ITouchableWin32State>;\n}\n\ninterface ITouchableWin32HighlightComponentProps extends ITouchableWin32HighlightProps {\n // Used as an imperative handle to the TouchableWin32 interface - primarily for focus()\n innerRef?: React.Ref<TouchableWin32>;\n}\n\n/**\n * Example implementation of TouchableHighlight - not meant for use outside these examples\n * The main difference between a full TouchableHighlight implementation and this example is that\n * TouchableHighlight should manipulate the opacity of the wrapped view to display the underlay color.\n * This example merely uses hard coded color values to distinguish between different control states\n */\nclass TouchableWin32HighlightComponent extends React.Component<ITouchableWin32HighlightComponentProps, {}> {\n\n public render() {\n return (\n <TouchableWin32\n focusable\n rejectResponderTermination={this.props.rejectResponderTermination}\n disabled={false}\n touchableHandleActivePressIn={this._touchableHandleActivePressIn}\n touchableHandleActivePressOut={this._touchableHandleActivePressOut}\n touchableHandlePress={this._touchableHandlePress}\n touchableHandleLongPress={this._touchableHandleLongPress}\n touchableGetHighlightDelayMS={this._touchableGetHighlightDelayMS}\n touchableGetPressRectOffset={this._touchableGetPressRectOffset}\n touchableGetLongPressDelayMS={this._touchableGetLongPressDelayMS}\n touchableGetPressOutDelayMS={this._touchableGetPressOutDelayMS}\n touchableGetHitSlop={this._touchableGetHitSlop}\n touchableHandleKeyPress={this._touchableHandleKeyPress}\n touchableHandleKeyPressDown={this._touchableHandleKeyPressDown}\n onFocus={this._onFocus}\n onBlur={this._onBlur}\n onMouseEnter={this._mouseEnter}\n onMouseLeave={this._mouseLeave}\n renderStyle={this._generateStyle}\n children={this.props.children}\n ref={this.props.innerRef}\n />\n );\n }\n\n private readonly _touchableHandlePress = (e: IPressEvent) => {\n this.props.onPress && this.props.onPress(e);\n this.setState({ isPressed: false });\n };\n private readonly _touchableHandleActivePressIn = (e: IPressEvent) => {\n this.props.onPressIn && this.props.onPressIn(e);\n this.setState({ isPressed: true });\n };\n private readonly _touchableHandleActivePressOut = (e: IPressEvent) => {\n this.props.onPressOut && this.props.onPressOut(e);\n this.setState({ isPressed: false });\n };\n private readonly _touchableHandleLongPress = (e: IPressEvent) => {\n this.props.onLongPress && this.props.onLongPress(e);\n };\n private readonly _touchableGetPressRectOffset = (): Insets => {\n return this.props.pressRetentionOffset || PRESS_RETENTION_OFFSET;\n };\n private readonly _touchableGetHitSlop = (): Insets => {\n return { left: 100, right: 100, top: 100, bottom: 100 };\n };\n private readonly _touchableGetHighlightDelayMS = (): number => {\n return this.props.delayLongPressIn || 0;\n };\n private readonly _touchableGetLongPressDelayMS = (): number => {\n return this.props.delayLongPress || 500;\n };\n private readonly _touchableGetPressOutDelayMS = (): number => {\n return this.props.delayPressOut || 0;\n };\n private readonly _touchableHandleKeyPress = (ev: IKeyboardEvent) => {\n this.props.onKeyPress && this.props.onKeyPress(ev);\n }\n private readonly _touchableHandleKeyPressDown = (ev: IKeyboardEvent) => {\n this.props.onKeyPressDown && this.props.onKeyPressDown(ev);\n }\n private readonly _mouseEnter = (mouseEvent): void => {\n this.props.onMouseEnter && this.props.onMouseEnter(mouseEvent);\n this.setState({ isMouseIn: true });\n };\n private readonly _mouseLeave = (mouseEvent): void => {\n this.props.onMouseLeave && this.props.onMouseLeave(mouseEvent);\n this.setState({ isMouseIn: false });\n };\n private readonly _onFocus = (ev: NativeSyntheticEvent<{}>): void => {\n this.props.onFocus && this.props.onFocus(ev);\n this.setState({ isFocused: true });\n };\n private readonly _onBlur = (ev: NativeSyntheticEvent<{}>): void => {\n this.props.onBlur && this.props.onBlur(ev);\n this.setState({ isFocused: false });\n };\n\n /**\n * The generated style uses hard-coded color values,\n * though it is trivial to pass these values as props.\n * This is an example of a render style (one that is a\n * function passed on to TouchableWin32 and resolved according\n * to the internal state of TouchableWin32).\n */\n private readonly _generateStyle = (state: ITouchableWin32State): ViewStyle => {\n const finalStyle: ViewStyle = {};\n finalStyle.borderColor = state.isFocused ? 'red' : 'blue';\n finalStyle.borderWidth = state.isFocused ? 10 : 5;\n if (state.isHovered) {\n if (state.isPressed) {\n finalStyle.backgroundColor = 'black';\n } else {\n finalStyle.backgroundColor = 'gray';\n }\n } else {\n if (state.isPressed) {\n finalStyle.backgroundColor = 'green';\n } else {\n finalStyle.backgroundColor = 'white';\n }\n }\n return Object.assign({}, this.props.style, finalStyle);\n };\n}\n\n// Demonstrating ref forwarding - forwarding a ref using an innerRef prop on a class component\nconst TouchableWin32Highlight = React.forwardRef<TouchableWin32, ITouchableWin32HighlightProps>(\n (props, ref) => {\n return (\n <TouchableWin32HighlightComponent innerRef={ref} {...props} />\n );\n }\n);\n\n/**\n * Both examples merely track number of presses\n */\ninterface IExampleState {\n numberOfPresses: number;\n}\n\n/**\n * TouchableHighlightExamples\n */\nclass TouchableWithoutFeedbackExample extends React.Component<{}, IExampleState> {\n constructor(props) {\n super(props);\n this.state = { numberOfPresses: 0 };\n }\n\n public render() {\n return (\n <ViewWin32 style={styles.largeContainer}>\n <TouchableWin32WithoutFeedback style={styles.outerTouch} onPress={this._onPress}>\n <ViewWin32>\n <Text>Press me</Text>\n </ViewWin32>\n </TouchableWin32WithoutFeedback>\n\n <TouchableWin32WithoutFeedback style={styles.outerTouch} onPress={this._onPress}>\n <ViewWin32 style={styles.smallContainer}>\n <TouchableWin32WithoutFeedback style={styles.innerTouch} onPress={this._onPress}>\n <ViewWin32>\n <Text>You can also have nested Touchables</Text>\n </ViewWin32>\n </TouchableWin32WithoutFeedback>\n </ViewWin32>\n </TouchableWin32WithoutFeedback>\n <Text>{'Number of Recognized Presses: ' + this.state.numberOfPresses}</Text>\n </ViewWin32>\n );\n }\n\n private readonly _onPress = () => {\n this.setState({ numberOfPresses: this.state.numberOfPresses + 1 });\n };\n}\n\n/**\n * TouchableHighlightExamples\n */\nclass TouchableHighlightExample extends React.Component<{}, IExampleState> {\n constructor(props) {\n super(props);\n this.state = { numberOfPresses: 0 };\n }\n\n public render() {\n return (\n <ViewWin32 style={styles.largeContainer}>\n <TouchableWin32Highlight style={styles.outerTouch} onPress={this._onPress}>\n <ViewWin32>\n <Text>Press me</Text>\n </ViewWin32>\n </TouchableWin32Highlight>\n\n <TouchableWin32Highlight style={styles.outerTouch} onPress={this._onPress}>\n <ViewWin32 style={styles.smallContainer}>\n <TouchableWin32Highlight style={styles.innerTouch} onPress={this._onPress} children={this._getChildrenOfInnerTouchable} />\n </ViewWin32>\n </TouchableWin32Highlight>\n <Text style={{ color: 'red' }} textStyle=\"None\">\n {'Number of Recognized Presses: ' + this.state.numberOfPresses}\n </Text>\n </ViewWin32>\n );\n }\n\n /**\n * This is primarily to demonstrate render children as a function\n * of state, here we change text color depending on interaction state.\n */\n private readonly _getChildrenOfInnerTouchable = (state: ITouchableWin32State) => {\n return (\n <ViewWin32\n style={{\n borderColor: state.isFocused ? 'green' : 'pink',\n borderWidth: state.isHovered ? 10 : 5,\n height: 70,\n width: 70,\n }}\n >\n <Text\n style={{\n color: this._pickColor(state.isHovered, state.isPressed),\n fontSize: state.isFocused ? 8 : 10,\n }}\n textStyle=\"None\"\n >\n Press Me!\n </Text>\n </ViewWin32>\n );\n };\n\n private _pickColor(hovered: boolean, pressed: boolean) {\n if (hovered) {\n if (pressed) {\n return 'white';\n } else {\n return 'red';\n }\n } else {\n if (pressed) {\n return 'purple';\n } else {\n return 'black';\n }\n }\n }\n\n private readonly _onPress = () => {\n this.setState({ numberOfPresses: this.state.numberOfPresses + 1 });\n };\n}\n\nconst TouchableFocusExample = () => {\n const [focused, setFocused] = React.useState(false);\n const focusableRef = React.useRef<TouchableWin32>(null);\n\n // onPress callback\n const focusOnPress = React.useCallback(() => {\n focusableRef.current && focusableRef.current.focus();\n focused || setFocused(true);\n }, [focused]);\n\n // onFocus and onBlur callbacks\n const onFocus = React.useCallback(() => {\n setFocused(true);\n }, []);\n const onBlur = React.useCallback(() => {\n setFocused(false);\n }, []);\n\n return (\n <ViewWin32 style={styles.largeContainer}>\n <TouchableWin32Highlight onPress={focusOnPress}>\n <Text>Press me to focus my friend</Text>\n </TouchableWin32Highlight>\n\n <TouchableWin32Highlight\n ref={focusableRef}\n onFocus={onFocus}\n onBlur={onBlur}\n >\n <Text>{'Focused: ' + focused}</Text>\n </TouchableWin32Highlight>\n </ViewWin32>\n );\n}\n\nexport const displayName = 'TouchableWin32 Examples';\nexport const title = 'TouchableWin32';\nexport const description = 'Demonstration of touchable + focus + hover behavior all in one component';\n\nexport const examples = [\n {\n title: 'TouchableWithoutFeedback Example',\n description: 'A simple example implementation of without feedback behavior',\n render() {\n return <TouchableWithoutFeedbackExample />;\n },\n },\n {\n title: 'TouchableHighlight Example',\n description: 'A simple example implementation of highlight behavior',\n render() {\n return <TouchableHighlightExample />;\n },\n },\n {\n title: 'Imperative Focus on TouchableWin32 Example',\n description: 'A simple example implementation of imperative focus behavior',\n render() {\n return <TouchableFocusExample />;\n },\n }\n];\n"]}
1
+ {"version":3,"file":"TouchableWin32Test.js","sourceRoot":"","sources":["../../../../src-win/Libraries/Components/Touchable/Tests/TouchableWin32Test.tsx"],"names":[],"mappings":"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","sourcesContent":["'use strict';\n\nimport React from 'react'\nimport {NativeSyntheticEvent, StyleSheet, Text, ViewStyle } from 'react-native';\nimport {Insets} from 'react-native/types/public/Insets';\nimport { ViewWin32 } from '../../View/ViewWin32';\nimport { IViewWin32Props, IKeyboardEvent } from '../../View/ViewPropTypes';\nimport { TouchableWin32 } from '../TouchableWin32';\nimport { IPressEvent, IRenderChild } from '../TouchableWin32.Types';\nimport { ITouchableWin32State } from '../TouchableWin32.Props';\n\n/**\n * Styles used across both examples\n */\nconst styles = StyleSheet.create({\n largeContainer: {\n height: 200,\n width: 600,\n justifyContent: 'space-between',\n alignItems: 'center',\n flexDirection: 'row',\n },\n smallContainer: {\n height: 90,\n width: 90,\n justifyContent: 'center',\n alignContent: 'center',\n },\n highlight: {\n height: 150,\n width: 150,\n justifyContent: 'space-around',\n alignContent: 'center',\n alignItems: 'center',\n flexDirection: 'row',\n },\n outerTouch: {\n height: 150,\n width: 150,\n justifyContent: 'space-around',\n alignContent: 'center',\n alignItems: 'center',\n flexDirection: 'row',\n },\n innerTouch: {\n height: 90,\n width: 90,\n alignItems: 'center',\n justifyContent: 'center',\n },\n});\n\n/**\n * Constant press rect offset, used to demonstrate press geometry\n */\nconst PRESS_RETENTION_OFFSET: Insets = {\n top: 100,\n left: 100,\n right: 100,\n bottom: 100,\n};\n\ninterface ITouchableWin32WithoutFeedbackProps extends IViewWin32Props {\n delayLongPress?: number;\n delayPressIn?: number;\n delayPressOut?: number;\n onPress?: (e: IPressEvent) => void;\n onPressIn?: (e: IPressEvent) => void;\n onPressOut?: (e: IPressEvent) => void;\n onLongPress?: (e: IPressEvent) => void;\n pressRetentionOffset?: Insets;\n rejectResponderTermination?: boolean;\n}\n\ninterface ITouchableWin32WithoutFeedbackState {\n isFocused: boolean;\n}\n\n/**\n * Example implementation of TouchableWithoutFeedback - not meant for use outside these examples\n * This is mainly there to show the ability to respond to touches without providing visual feedback,\n * though we do show a red border on focus to know where starts start and end and whether press rect\n * offsets are respected.\n */\nclass TouchableWin32WithoutFeedback extends React.Component<ITouchableWin32WithoutFeedbackProps, ITouchableWin32WithoutFeedbackState> {\n constructor(props) {\n super(props);\n\n this.state = { isFocused: false };\n }\n\n public render() {\n return (\n <TouchableWin32\n focusable\n rejectResponderTermination={true}\n disabled={false}\n touchableHandleActivePressIn={this._touchableHandleActivePressIn}\n touchableHandleActivePressOut={this._touchableHandleActivePressOut}\n touchableHandlePress={this._touchableHandlePress}\n touchableHandleLongPress={this._touchableHandleLongPress}\n touchableGetHighlightDelayMS={this._touchableGetHighlightDelayMS}\n touchableGetPressRectOffset={this._touchableGetPressRectOffset}\n touchableGetLongPressDelayMS={this._touchableGetLongPressDelayMS}\n touchableGetPressOutDelayMS={this._touchableGetPressOutDelayMS}\n touchableGetHitSlop={this._touchableGetHitSlop}\n onFocus={this._onFocus}\n onBlur={this._onBlur}\n renderStyle={this._generateStyle}\n >\n {React.Children.only(this.props.children)}\n </TouchableWin32>\n );\n }\n\n private readonly _touchableHandlePress = (e: IPressEvent) => {\n this.props.onPress && this.props.onPress(e);\n };\n\n private readonly _touchableHandleActivePressIn = (e: IPressEvent) => {\n this.props.onPressIn && this.props.onPressIn(e);\n };\n\n private readonly _touchableHandleActivePressOut = (e: IPressEvent) => {\n this.props.onPressOut && this.props.onPressOut(e);\n };\n\n private readonly _touchableHandleLongPress = (e: IPressEvent) => {\n this.props.onLongPress && this.props.onLongPress(e);\n };\n\n private readonly _touchableGetPressRectOffset = (): Insets => {\n return this.props.pressRetentionOffset || PRESS_RETENTION_OFFSET;\n };\n\n private readonly _touchableGetHitSlop = (): Insets => {\n return this.props.hitSlop as Insets;\n };\n\n private readonly _touchableGetHighlightDelayMS = (): number => {\n return this.props.delayPressIn || 0;\n };\n\n private readonly _touchableGetLongPressDelayMS = (): number => {\n return this.props.delayLongPress === 0 ? 0 : this.props.delayLongPress || 500;\n };\n\n private readonly _touchableGetPressOutDelayMS = (): number => {\n return this.props.delayPressOut || 0;\n };\n\n private readonly _onFocus = () => {\n this.setState({ isFocused: true });\n };\n\n private readonly _onBlur = () => {\n this.setState({ isFocused: false });\n };\n\n /**\n * The generated style uses hard-coded border width values\n */\n private readonly _generateStyle = (state: ITouchableWin32State): ViewStyle => {\n const finalStyle: ViewStyle = {\n borderWidth: state.isFocused ? 5 : 0,\n borderColor: 'red',\n };\n return Object.assign({}, this.props.style, finalStyle);\n };\n}\n\ninterface ITouchableWin32HighlightProps extends Omit <IViewWin32Props, 'children'> {\n delayLongPress?: number;\n delayLongPressIn?: number;\n delayPressOut?: number;\n onPress?: (e: IPressEvent) => void;\n onPressIn?: (e: IPressEvent) => void;\n onPressOut?: (e: IPressEvent) => void;\n onLongPress?: (e: IPressEvent) => void;\n onKeyPress?: (e: IKeyboardEvent) => void;\n onKeyPressDown?: (e: IKeyboardEvent) => void;\n pressRetentionOffset?: Insets;\n rejectResponderTermination?: boolean;\n underlayColor?: string;\n children?: IRenderChild<ITouchableWin32State>;\n}\n\ninterface ITouchableWin32HighlightComponentProps extends ITouchableWin32HighlightProps {\n // Used as an imperative handle to the TouchableWin32 interface - primarily for focus()\n innerRef?: React.Ref<TouchableWin32>;\n}\n\n/**\n * Example implementation of TouchableHighlight - not meant for use outside these examples\n * The main difference between a full TouchableHighlight implementation and this example is that\n * TouchableHighlight should manipulate the opacity of the wrapped view to display the underlay color.\n * This example merely uses hard coded color values to distinguish between different control states\n */\nclass TouchableWin32HighlightComponent extends React.Component<ITouchableWin32HighlightComponentProps, {}> {\n\n public render() {\n return (\n <TouchableWin32\n focusable\n rejectResponderTermination={this.props.rejectResponderTermination}\n disabled={false}\n touchableHandleActivePressIn={this._touchableHandleActivePressIn}\n touchableHandleActivePressOut={this._touchableHandleActivePressOut}\n touchableHandlePress={this._touchableHandlePress}\n touchableHandleLongPress={this._touchableHandleLongPress}\n touchableGetHighlightDelayMS={this._touchableGetHighlightDelayMS}\n touchableGetPressRectOffset={this._touchableGetPressRectOffset}\n touchableGetLongPressDelayMS={this._touchableGetLongPressDelayMS}\n touchableGetPressOutDelayMS={this._touchableGetPressOutDelayMS}\n touchableGetHitSlop={this._touchableGetHitSlop}\n touchableHandleKeyPress={this._touchableHandleKeyPress}\n touchableHandleKeyPressDown={this._touchableHandleKeyPressDown}\n onFocus={this._onFocus}\n onBlur={this._onBlur}\n onMouseEnter={this._mouseEnter}\n onMouseLeave={this._mouseLeave}\n renderStyle={this._generateStyle}\n children={this.props.children}\n ref={this.props.innerRef}\n />\n );\n }\n\n private readonly _touchableHandlePress = (e: IPressEvent) => {\n this.props.onPress && this.props.onPress(e);\n this.setState({ isPressed: false });\n };\n private readonly _touchableHandleActivePressIn = (e: IPressEvent) => {\n this.props.onPressIn && this.props.onPressIn(e);\n this.setState({ isPressed: true });\n };\n private readonly _touchableHandleActivePressOut = (e: IPressEvent) => {\n this.props.onPressOut && this.props.onPressOut(e);\n this.setState({ isPressed: false });\n };\n private readonly _touchableHandleLongPress = (e: IPressEvent) => {\n this.props.onLongPress && this.props.onLongPress(e);\n };\n private readonly _touchableGetPressRectOffset = (): Insets => {\n return this.props.pressRetentionOffset || PRESS_RETENTION_OFFSET;\n };\n private readonly _touchableGetHitSlop = (): Insets => {\n return { left: 100, right: 100, top: 100, bottom: 100 };\n };\n private readonly _touchableGetHighlightDelayMS = (): number => {\n return this.props.delayLongPressIn || 0;\n };\n private readonly _touchableGetLongPressDelayMS = (): number => {\n return this.props.delayLongPress || 500;\n };\n private readonly _touchableGetPressOutDelayMS = (): number => {\n return this.props.delayPressOut || 0;\n };\n private readonly _touchableHandleKeyPress = (ev: IKeyboardEvent) => {\n this.props.onKeyPress && this.props.onKeyPress(ev);\n }\n private readonly _touchableHandleKeyPressDown = (ev: IKeyboardEvent) => {\n this.props.onKeyPressDown && this.props.onKeyPressDown(ev);\n }\n private readonly _mouseEnter = (mouseEvent): void => {\n this.props.onMouseEnter && this.props.onMouseEnter(mouseEvent);\n this.setState({ isMouseIn: true });\n };\n private readonly _mouseLeave = (mouseEvent): void => {\n this.props.onMouseLeave && this.props.onMouseLeave(mouseEvent);\n this.setState({ isMouseIn: false });\n };\n private readonly _onFocus = (ev: NativeSyntheticEvent<{}>): void => {\n this.props.onFocus && this.props.onFocus(ev);\n this.setState({ isFocused: true });\n };\n private readonly _onBlur = (ev: NativeSyntheticEvent<{}>): void => {\n this.props.onBlur && this.props.onBlur(ev);\n this.setState({ isFocused: false });\n };\n\n /**\n * The generated style uses hard-coded color values,\n * though it is trivial to pass these values as props.\n * This is an example of a render style (one that is a\n * function passed on to TouchableWin32 and resolved according\n * to the internal state of TouchableWin32).\n */\n private readonly _generateStyle = (state: ITouchableWin32State): ViewStyle => {\n const finalStyle: ViewStyle = {};\n finalStyle.borderColor = state.isFocused ? 'red' : 'blue';\n finalStyle.borderWidth = state.isFocused ? 10 : 5;\n if (state.isHovered) {\n if (state.isPressed) {\n finalStyle.backgroundColor = 'black';\n } else {\n finalStyle.backgroundColor = 'gray';\n }\n } else {\n if (state.isPressed) {\n finalStyle.backgroundColor = 'green';\n } else {\n finalStyle.backgroundColor = 'white';\n }\n }\n return Object.assign({}, this.props.style, finalStyle);\n };\n}\n\n// Demonstrating ref forwarding - forwarding a ref using an innerRef prop on a class component\nconst TouchableWin32Highlight = React.forwardRef<TouchableWin32, ITouchableWin32HighlightProps>(\n (props, ref) => {\n return (\n <TouchableWin32HighlightComponent innerRef={ref} {...props} />\n );\n }\n);\n\n/**\n * Both examples merely track number of presses\n */\ninterface IExampleState {\n numberOfPresses: number;\n}\n\n/**\n * TouchableHighlightExamples\n */\nclass TouchableWithoutFeedbackExample extends React.Component<{}, IExampleState> {\n constructor(props) {\n super(props);\n this.state = { numberOfPresses: 0 };\n }\n\n public render() {\n return (\n <ViewWin32 style={styles.largeContainer}>\n <TouchableWin32WithoutFeedback style={styles.outerTouch} onPress={this._onPress}>\n <ViewWin32>\n <Text>Press me</Text>\n </ViewWin32>\n </TouchableWin32WithoutFeedback>\n\n <TouchableWin32WithoutFeedback style={styles.outerTouch} onPress={this._onPress}>\n <ViewWin32 style={styles.smallContainer}>\n <TouchableWin32WithoutFeedback style={styles.innerTouch} onPress={this._onPress}>\n <ViewWin32>\n <Text>You can also have nested Touchables</Text>\n </ViewWin32>\n </TouchableWin32WithoutFeedback>\n </ViewWin32>\n </TouchableWin32WithoutFeedback>\n <Text>{'Number of Recognized Presses: ' + this.state.numberOfPresses}</Text>\n </ViewWin32>\n );\n }\n\n private readonly _onPress = () => {\n this.setState({ numberOfPresses: this.state.numberOfPresses + 1 });\n };\n}\n\n/**\n * TouchableHighlightExamples\n */\nclass TouchableHighlightExample extends React.Component<{}, IExampleState> {\n constructor(props) {\n super(props);\n this.state = { numberOfPresses: 0 };\n }\n\n public render() {\n return (\n <ViewWin32 style={styles.largeContainer}>\n <TouchableWin32Highlight style={styles.outerTouch} onPress={this._onPress}>\n <ViewWin32>\n <Text>Press me</Text>\n </ViewWin32>\n </TouchableWin32Highlight>\n\n <TouchableWin32Highlight style={styles.outerTouch} onPress={this._onPress}>\n <ViewWin32 style={styles.smallContainer}>\n <TouchableWin32Highlight style={styles.innerTouch} onPress={this._onPress} children={this._getChildrenOfInnerTouchable} />\n </ViewWin32>\n </TouchableWin32Highlight>\n <Text style={{ color: 'red' }} textStyle=\"None\">\n {'Number of Recognized Presses: ' + this.state.numberOfPresses}\n </Text>\n </ViewWin32>\n );\n }\n\n /**\n * This is primarily to demonstrate render children as a function\n * of state, here we change text color depending on interaction state.\n */\n private readonly _getChildrenOfInnerTouchable = (state: ITouchableWin32State) => {\n return (\n <ViewWin32\n style={{\n borderColor: state.isFocused ? 'green' : 'pink',\n borderWidth: state.isHovered ? 10 : 5,\n height: 70,\n width: 70,\n }}\n >\n <Text\n style={{\n color: this._pickColor(state.isHovered, state.isPressed),\n fontSize: state.isFocused ? 8 : 10,\n }}\n textStyle=\"None\"\n >\n Press Me!\n </Text>\n </ViewWin32>\n );\n };\n\n private _pickColor(hovered: boolean, pressed: boolean) {\n if (hovered) {\n if (pressed) {\n return 'white';\n } else {\n return 'red';\n }\n } else {\n if (pressed) {\n return 'purple';\n } else {\n return 'black';\n }\n }\n }\n\n private readonly _onPress = () => {\n this.setState({ numberOfPresses: this.state.numberOfPresses + 1 });\n };\n}\n\nconst TouchableFocusExample = () => {\n const [focused, setFocused] = React.useState(false);\n const focusableRef = React.useRef<TouchableWin32>(null);\n\n // onPress callback\n const focusOnPress = React.useCallback(() => {\n focusableRef.current && focusableRef.current.focus();\n focused || setFocused(true);\n }, [focused]);\n\n // onFocus and onBlur callbacks\n const onFocus = React.useCallback(() => {\n setFocused(true);\n }, []);\n const onBlur = React.useCallback(() => {\n setFocused(false);\n }, []);\n\n return (\n <ViewWin32 style={styles.largeContainer}>\n <TouchableWin32Highlight onPress={focusOnPress}>\n <Text>Press me to focus my friend</Text>\n </TouchableWin32Highlight>\n\n <TouchableWin32Highlight\n ref={focusableRef}\n onFocus={onFocus}\n onBlur={onBlur}\n >\n <Text>{'Focused: ' + focused}</Text>\n </TouchableWin32Highlight>\n </ViewWin32>\n );\n}\n\nexport const displayName = 'TouchableWin32 Examples';\nexport const title = 'TouchableWin32';\nexport const description = 'Demonstration of touchable + focus + hover behavior all in one component';\n\nexport const examples = [\n {\n title: 'TouchableWithoutFeedback Example',\n description: 'A simple example implementation of without feedback behavior',\n render(): JSX.Element {\n return <TouchableWithoutFeedbackExample />;\n },\n },\n {\n title: 'TouchableHighlight Example',\n description: 'A simple example implementation of highlight behavior',\n render(): JSX.Element {\n return <TouchableHighlightExample />;\n },\n },\n {\n title: 'Imperative Focus on TouchableWin32 Example',\n description: 'A simple example implementation of imperative focus behavior',\n render(): JSX.Element {\n return <TouchableFocusExample />;\n },\n }\n];\n"]}
@@ -10,7 +10,7 @@
10
10
 
11
11
  import type {EdgeInsetsProp} from '../../StyleSheet/EdgeInsetsPropType';
12
12
  import type {ColorValue} from '../../StyleSheet/StyleSheet';
13
- import type {PressEvent} from '../../Types/CoreEventTypes';
13
+ import type {GestureResponderEvent} from '../../Types/CoreEventTypes';
14
14
 
15
15
  import {PressabilityDebugView} from '../../Pressability/PressabilityDebug';
16
16
  import UIManager from '../../ReactNative/UIManager';
@@ -21,7 +21,7 @@ import Position from './Position';
21
21
  import * as React from 'react';
22
22
 
23
23
  const extractSingleTouch = (nativeEvent: {
24
- +changedTouches: $ReadOnlyArray<PressEvent['nativeEvent']>,
24
+ +changedTouches: $ReadOnlyArray<GestureResponderEvent['nativeEvent']>,
25
25
  +force?: number,
26
26
  +identifier: number,
27
27
  +locationX: number,
@@ -30,7 +30,7 @@ const extractSingleTouch = (nativeEvent: {
30
30
  +pageY: number,
31
31
  +target: ?number,
32
32
  +timestamp: number,
33
- +touches: $ReadOnlyArray<PressEvent['nativeEvent']>,
33
+ +touches: $ReadOnlyArray<GestureResponderEvent['nativeEvent']>,
34
34
  }) => {
35
35
  const touches = nativeEvent.touches;
36
36
  const changedTouches = nativeEvent.changedTouches;
@@ -370,7 +370,7 @@ const LONG_PRESS_ALLOWED_MOVEMENT = 10;
370
370
  *
371
371
  * @lends Touchable.prototype
372
372
  */
373
- const TouchableMixin = {
373
+ const TouchableMixinImpl = {
374
374
  componentDidMount: function () {
375
375
  if (!Platform.isTV) {
376
376
  return;
@@ -398,7 +398,7 @@ const TouchableMixin = {
398
398
  touchableGetInitialState: function (): {
399
399
  touchable: {
400
400
  touchState: ?State,
401
- responderID: ?PressEvent['currentTarget'],
401
+ responderID: ?GestureResponderEvent['currentTarget'],
402
402
  },
403
403
  } {
404
404
  return {
@@ -434,12 +434,12 @@ const TouchableMixin = {
434
434
 
435
435
  /**
436
436
  * Place as callback for a DOM element's `onResponderGrant` event.
437
- * @param {SyntheticEvent} e Synthetic event from event system.
437
+ * @param {NativeSyntheticEvent} e Synthetic event from event system.
438
438
  *
439
439
  */
440
440
  /* $FlowFixMe[missing-this-annot] The 'this' type annotation(s) required by
441
441
  * Flow's LTI update could not be added via codemod */
442
- touchableHandleResponderGrant: function (e: PressEvent) {
442
+ touchableHandleResponderGrant: function (e: GestureResponderEvent) {
443
443
  const dispatchID = e.currentTarget;
444
444
  // Since e is used in a callback invoked on another event loop
445
445
  // (as in setTimeout etc), we need to call e.persist() on the
@@ -482,7 +482,7 @@ const TouchableMixin = {
482
482
  */
483
483
  /* $FlowFixMe[missing-this-annot] The 'this' type annotation(s) required by
484
484
  * Flow's LTI update could not be added via codemod */
485
- touchableHandleResponderRelease: function (e: PressEvent) {
485
+ touchableHandleResponderRelease: function (e: GestureResponderEvent) {
486
486
  this.pressInLocation = null;
487
487
  this._receiveSignal(Signals.RESPONDER_RELEASE, e);
488
488
  },
@@ -492,7 +492,7 @@ const TouchableMixin = {
492
492
  */
493
493
  /* $FlowFixMe[missing-this-annot] The 'this' type annotation(s) required by
494
494
  * Flow's LTI update could not be added via codemod */
495
- touchableHandleResponderTerminate: function (e: PressEvent) {
495
+ touchableHandleResponderTerminate: function (e: GestureResponderEvent) {
496
496
  this.pressInLocation = null;
497
497
  this._receiveSignal(Signals.RESPONDER_TERMINATED, e);
498
498
  },
@@ -502,7 +502,7 @@ const TouchableMixin = {
502
502
  */
503
503
  /* $FlowFixMe[missing-this-annot] The 'this' type annotation(s) required by
504
504
  * Flow's LTI update could not be added via codemod */
505
- touchableHandleResponderMove: function (e: PressEvent) {
505
+ touchableHandleResponderMove: function (e: GestureResponderEvent) {
506
506
  // Measurement may not have returned yet.
507
507
  if (!this.state.touchable.positionOnActivate) {
508
508
  return;
@@ -732,14 +732,14 @@ const TouchableMixin = {
732
732
 
733
733
  /* $FlowFixMe[missing-this-annot] The 'this' type annotation(s) required by
734
734
  * Flow's LTI update could not be added via codemod */
735
- _handleDelay: function (e: PressEvent) {
735
+ _handleDelay: function (e: GestureResponderEvent) {
736
736
  this.touchableDelayTimeout = null;
737
737
  this._receiveSignal(Signals.DELAY, e);
738
738
  },
739
739
 
740
740
  /* $FlowFixMe[missing-this-annot] The 'this' type annotation(s) required by
741
741
  * Flow's LTI update could not be added via codemod */
742
- _handleLongDelay: function (e: PressEvent) {
742
+ _handleLongDelay: function (e: GestureResponderEvent) {
743
743
  this.longPressDelayTimeout = null;
744
744
  const curState = this.state.touchable.touchState;
745
745
  if (
@@ -760,7 +760,7 @@ const TouchableMixin = {
760
760
  */
761
761
  /* $FlowFixMe[missing-this-annot] The 'this' type annotation(s) required by
762
762
  * Flow's LTI update could not be added via codemod */
763
- _receiveSignal: function (signal: Signal, e: PressEvent) {
763
+ _receiveSignal: function (signal: Signal, e: GestureResponderEvent) {
764
764
  const responderID = this.state.touchable.responderID;
765
765
  const curState = this.state.touchable.touchState;
766
766
  const nextState = Transitions[curState] && Transitions[curState][signal];
@@ -815,7 +815,7 @@ const TouchableMixin = {
815
815
 
816
816
  /* $FlowFixMe[missing-this-annot] The 'this' type annotation(s) required by
817
817
  * Flow's LTI update could not be added via codemod */
818
- _savePressInLocation: function (e: PressEvent) {
818
+ _savePressInLocation: function (e: GestureResponderEvent) {
819
819
  const touch = extractSingleTouch(e.nativeEvent);
820
820
  const pageX = touch && touch.pageX;
821
821
  const pageY = touch && touch.pageY;
@@ -852,7 +852,7 @@ const TouchableMixin = {
852
852
  curState: State,
853
853
  nextState: State,
854
854
  signal: Signal,
855
- e: PressEvent,
855
+ e: GestureResponderEvent,
856
856
  ) {
857
857
  const curIsHighlight = this._isHighlight(curState);
858
858
  const newIsHighlight = this._isHighlight(nextState);
@@ -911,14 +911,14 @@ const TouchableMixin = {
911
911
 
912
912
  /* $FlowFixMe[missing-this-annot] The 'this' type annotation(s) required by
913
913
  * Flow's LTI update could not be added via codemod */
914
- _startHighlight: function (e: PressEvent) {
914
+ _startHighlight: function (e: GestureResponderEvent) {
915
915
  this._savePressInLocation(e);
916
916
  this.touchableHandleActivePressIn && this.touchableHandleActivePressIn(e);
917
917
  },
918
918
 
919
919
  /* $FlowFixMe[missing-this-annot] The 'this' type annotation(s) required by
920
920
  * Flow's LTI update could not be added via codemod */
921
- _endHighlight: function (e: PressEvent) {
921
+ _endHighlight: function (e: GestureResponderEvent) {
922
922
  if (this.touchableHandleActivePressOut) {
923
923
  if (
924
924
  this.touchableGetPressOutDelayMS &&
@@ -946,12 +946,12 @@ const {
946
946
  touchableHandleFocus,
947
947
  touchableHandleBlur,
948
948
  ...TouchableMixinWithoutDefaultFocusAndBlur
949
- } = TouchableMixin;
950
- TouchableMixin.withoutDefaultFocusAndBlur =
949
+ } = TouchableMixinImpl;
950
+ TouchableMixinImpl.withoutDefaultFocusAndBlur =
951
951
  TouchableMixinWithoutDefaultFocusAndBlur;
952
952
 
953
- const Touchable = {
954
- Mixin: TouchableMixin,
953
+ const TouchableImpl = {
954
+ Mixin: TouchableMixinImpl,
955
955
  /**
956
956
  * Renders a debugging overlay to visualize touch target with hitSlop (might not work on Android).
957
957
  */
@@ -960,7 +960,7 @@ const Touchable = {
960
960
  hitSlop,
961
961
  }: {
962
962
  color: ColorValue,
963
- hitSlop: EdgeInsetsProp,
963
+ hitSlop?: EdgeInsetsProp,
964
964
  ...
965
965
  }): null | React.Node => {
966
966
  if (__DEV__) {
@@ -970,4 +970,4 @@ const Touchable = {
970
970
  },
971
971
  };
972
972
 
973
- export default Touchable;
973
+ export default TouchableImpl;