@office-iss/react-native-win32 0.0.0-canary.30 → 0.0.0-canary.301

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 (1512) hide show
  1. package/.eslintignore +5 -2
  2. package/.eslintrc.js +27 -2
  3. package/.flowconfig +96 -44
  4. package/CHANGELOG.json +6246 -1
  5. package/CHANGELOG.md +2486 -4
  6. package/IntegrationTests/AccessibilityManagerTest.js +24 -22
  7. package/IntegrationTests/AppEventsTest.js +49 -34
  8. package/IntegrationTests/GlobalEvalWithSourceUrlTest.js +22 -19
  9. package/IntegrationTests/ImageCachePolicyTest.js +67 -84
  10. package/IntegrationTests/ImageSnapshotTest.js +19 -22
  11. package/IntegrationTests/IntegrationTestHarnessTest.js +36 -51
  12. package/IntegrationTests/IntegrationTestsApp.js +27 -26
  13. package/IntegrationTests/LayoutEventsTest.js +25 -21
  14. package/IntegrationTests/LoggingTestModule.js +18 -23
  15. package/IntegrationTests/PromiseTest.js +53 -44
  16. package/IntegrationTests/SimpleSnapshotTest.js +21 -28
  17. package/IntegrationTests/SyncMethodTest.js +11 -15
  18. package/IntegrationTests/TimersTest.js +25 -9
  19. package/IntegrationTests/WebSocketTest.js +7 -6
  20. package/IntegrationTests/launchWebSocketServer.sh +12 -0
  21. package/IntegrationTests/websocket_integration_test_server.js +3 -3
  22. package/Libraries/ActionSheetIOS/ActionSheetIOS.d.ts +87 -0
  23. package/Libraries/ActionSheetIOS/ActionSheetIOS.js +87 -26
  24. package/Libraries/ActionSheetIOS/NativeActionSheetManager.js +5 -42
  25. package/Libraries/Alert/Alert.d.ts +94 -0
  26. package/Libraries/Alert/Alert.js +69 -22
  27. package/Libraries/Alert/Alert.win32.js +38 -13
  28. package/Libraries/Alert/NativeAlertManager.js +5 -25
  29. package/Libraries/Alert/RCTAlertManager.android.js +21 -15
  30. package/Libraries/Alert/RCTAlertManager.ios.js +12 -15
  31. package/Libraries/Alert/RCTAlertManager.js +15 -0
  32. package/Libraries/Alert/RCTAlertManager.js.flow +16 -0
  33. package/Libraries/Animated/Animated.d.ts +628 -0
  34. package/Libraries/Animated/Animated.js +18 -0
  35. package/Libraries/Animated/Animated.js.flow +12 -0
  36. package/Libraries/Animated/AnimatedEvent.js +258 -0
  37. package/Libraries/Animated/AnimatedExports.js +46 -0
  38. package/Libraries/Animated/AnimatedExports.js.flow +192 -0
  39. package/Libraries/Animated/AnimatedImplementation.js +635 -0
  40. package/Libraries/Animated/AnimatedMock.js +195 -0
  41. package/Libraries/Animated/AnimatedPlatformConfig.js +13 -0
  42. package/Libraries/Animated/Easing.d.ts +37 -0
  43. package/Libraries/Animated/Easing.js +250 -0
  44. package/Libraries/Animated/NativeAnimatedAllowlist.js +122 -0
  45. package/Libraries/Animated/NativeAnimatedModule.js +14 -0
  46. package/Libraries/Animated/NativeAnimatedTurboModule.js +14 -0
  47. package/Libraries/Animated/SpringConfig.js +98 -0
  48. package/Libraries/Animated/animations/Animation.js +201 -0
  49. package/Libraries/Animated/animations/DecayAnimation.js +122 -0
  50. package/Libraries/Animated/animations/SpringAnimation.js +373 -0
  51. package/Libraries/Animated/animations/TimingAnimation.js +176 -0
  52. package/Libraries/Animated/bezier.js +164 -0
  53. package/Libraries/Animated/components/AnimatedFlatList.js +21 -0
  54. package/Libraries/Animated/components/AnimatedImage.js +22 -0
  55. package/Libraries/Animated/components/AnimatedScrollView.js +145 -0
  56. package/Libraries/Animated/components/AnimatedSectionList.js +26 -0
  57. package/Libraries/Animated/components/AnimatedText.js +19 -0
  58. package/Libraries/Animated/components/AnimatedView.js +21 -0
  59. package/Libraries/Animated/createAnimatedComponent.js +151 -0
  60. package/Libraries/Animated/nodes/AnimatedAddition.js +71 -0
  61. package/Libraries/Animated/nodes/AnimatedColor.js +323 -0
  62. package/Libraries/Animated/nodes/AnimatedDiffClamp.js +80 -0
  63. package/Libraries/Animated/nodes/AnimatedDivision.js +87 -0
  64. package/Libraries/Animated/nodes/AnimatedInterpolation.js +420 -0
  65. package/Libraries/Animated/nodes/AnimatedModulo.js +66 -0
  66. package/Libraries/Animated/nodes/AnimatedMultiplication.js +70 -0
  67. package/Libraries/Animated/nodes/AnimatedNode.js +180 -0
  68. package/Libraries/Animated/nodes/AnimatedObject.js +169 -0
  69. package/Libraries/Animated/nodes/AnimatedProps.js +332 -0
  70. package/Libraries/Animated/nodes/AnimatedStyle.js +256 -0
  71. package/Libraries/Animated/nodes/AnimatedSubtraction.js +71 -0
  72. package/Libraries/Animated/nodes/AnimatedTracking.js +104 -0
  73. package/Libraries/Animated/nodes/AnimatedTransform.js +202 -0
  74. package/Libraries/Animated/nodes/AnimatedValue.js +379 -0
  75. package/Libraries/Animated/nodes/AnimatedValueXY.js +240 -0
  76. package/Libraries/Animated/nodes/AnimatedWithChildren.js +85 -0
  77. package/Libraries/Animated/shouldUseTurboAnimatedModule.js +22 -0
  78. package/Libraries/Animated/useAnimatedProps.js +18 -0
  79. package/Libraries/Animated/useAnimatedValue.d.ts +15 -0
  80. package/Libraries/Animated/useAnimatedValue.js +23 -0
  81. package/Libraries/AppState/AppState.d.ts +58 -0
  82. package/Libraries/AppState/AppState.js +113 -144
  83. package/Libraries/AppState/NativeAppState.js +5 -21
  84. package/Libraries/BatchedBridge/BatchedBridge.js +6 -4
  85. package/Libraries/BatchedBridge/MessageQueue.js +146 -119
  86. package/Libraries/BatchedBridge/NativeModules.d.ts +25 -0
  87. package/Libraries/BatchedBridge/NativeModules.js +42 -23
  88. package/Libraries/Blob/Blob.js +24 -7
  89. package/Libraries/Blob/BlobManager.js +14 -11
  90. package/Libraries/Blob/BlobRegistry.js +18 -19
  91. package/Libraries/Blob/BlobTypes.js +1 -1
  92. package/Libraries/Blob/File.js +5 -5
  93. package/Libraries/Blob/FileReader.js +96 -31
  94. package/Libraries/Blob/NativeBlobModule.js +5 -17
  95. package/Libraries/Blob/NativeFileReaderModule.js +5 -14
  96. package/Libraries/Blob/URL.js +65 -89
  97. package/Libraries/Blob/URLSearchParams.js +149 -0
  98. package/Libraries/Blob/URLSearchParams.js.flow +29 -0
  99. package/Libraries/Components/AccessibilityInfo/AccessibilityInfo.d.ts +177 -0
  100. package/Libraries/Components/AccessibilityInfo/AccessibilityInfo.js +493 -0
  101. package/Libraries/Components/AccessibilityInfo/AccessibilityInfo.win32.js +466 -96
  102. package/Libraries/Components/AccessibilityInfo/NativeAccessibilityInfo.js +4 -19
  103. package/Libraries/Components/AccessibilityInfo/NativeAccessibilityInfoWin32.js +10 -0
  104. package/Libraries/Components/AccessibilityInfo/NativeAccessibilityManager.js +4 -51
  105. package/Libraries/Components/AccessibilityInfo/legacySendAccessibilityEvent.android.js +36 -0
  106. package/Libraries/Components/AccessibilityInfo/legacySendAccessibilityEvent.ios.js +26 -0
  107. package/Libraries/Components/AccessibilityInfo/legacySendAccessibilityEvent.js +17 -0
  108. package/Libraries/Components/AccessibilityInfo/legacySendAccessibilityEvent.js.flow +20 -0
  109. package/Libraries/Components/AccessibilityInfo/legacySendAccessibilityEvent.win32.js +36 -0
  110. package/Libraries/Components/ActivityIndicator/ActivityIndicator.d.ts +86 -0
  111. package/Libraries/Components/ActivityIndicator/ActivityIndicator.js +88 -62
  112. package/Libraries/Components/ActivityIndicator/ActivityIndicatorViewNativeComponent.js +4 -48
  113. package/Libraries/Components/Button/ButtonWin32.Props.d.ts +36 -36
  114. package/Libraries/Components/Button/ButtonWin32.Props.js +3 -3
  115. package/Libraries/Components/Button/ButtonWin32.Props.js.map +1 -0
  116. package/Libraries/Components/Button/ButtonWin32.d.ts +19 -19
  117. package/Libraries/Components/Button/ButtonWin32.js +83 -103
  118. package/Libraries/Components/Button/ButtonWin32.js.map +1 -0
  119. package/Libraries/Components/Button.d.ts +42 -0
  120. package/Libraries/Components/Button.js +335 -129
  121. package/Libraries/Components/Button.win32.js +463 -0
  122. package/Libraries/Components/Clipboard/Clipboard.d.ts +28 -0
  123. package/Libraries/Components/Clipboard/Clipboard.js +4 -6
  124. package/Libraries/Components/Clipboard/NativeClipboard.js +4 -14
  125. package/Libraries/Components/DrawerAndroid/AndroidDrawerLayoutNativeComponent.js +4 -117
  126. package/Libraries/Components/DrawerAndroid/DrawerLayoutAndroid.android.js +47 -127
  127. package/Libraries/Components/DrawerAndroid/DrawerLayoutAndroid.d.ts +141 -0
  128. package/Libraries/Components/DrawerAndroid/DrawerLayoutAndroid.ios.js +5 -2
  129. package/Libraries/Components/DrawerAndroid/DrawerLayoutAndroid.js +8 -3
  130. package/Libraries/Components/DrawerAndroid/DrawerLayoutAndroid.js.flow +18 -0
  131. package/Libraries/Components/DrawerAndroid/DrawerLayoutAndroidFallback.js +71 -0
  132. package/Libraries/Components/DrawerAndroid/DrawerLayoutAndroidTypes.js +138 -0
  133. package/Libraries/Components/EnterString.win32.d.ts +12 -12
  134. package/Libraries/Components/EnterString.win32.js +82 -114
  135. package/Libraries/Components/EnterString.win32.js.map +1 -0
  136. package/Libraries/Components/Keyboard/Keyboard.d.ts +109 -0
  137. package/Libraries/Components/Keyboard/Keyboard.js +92 -80
  138. package/Libraries/Components/Keyboard/KeyboardAvoidingView.d.ts +46 -0
  139. package/Libraries/Components/Keyboard/KeyboardAvoidingView.js +134 -64
  140. package/Libraries/Components/Keyboard/NativeKeyboardObserver.js +4 -13
  141. package/Libraries/Components/LayoutConformance/LayoutConformance.d.ts +21 -0
  142. package/Libraries/Components/LayoutConformance/LayoutConformance.js +60 -0
  143. package/Libraries/Components/LayoutConformance/LayoutConformanceNativeComponent.js +29 -0
  144. package/Libraries/Components/Pressable/Pressable.d.ts +167 -0
  145. package/Libraries/Components/Pressable/Pressable.js +198 -76
  146. package/Libraries/Components/Pressable/Pressable.win32.js +419 -0
  147. package/Libraries/Components/Pressable/useAndroidRippleForView.js +49 -34
  148. package/Libraries/Components/ProgressBarAndroid/ProgressBarAndroid.android.js +32 -65
  149. package/Libraries/Components/ProgressBarAndroid/ProgressBarAndroid.d.ts +83 -0
  150. package/Libraries/Components/ProgressBarAndroid/ProgressBarAndroid.js +36 -2
  151. package/Libraries/Components/ProgressBarAndroid/ProgressBarAndroidNativeComponent.js +3 -26
  152. package/Libraries/Components/ProgressBarAndroid/ProgressBarAndroidTypes.js +63 -0
  153. package/Libraries/Components/RefreshControl/AndroidSwipeRefreshLayoutNativeComponent.js +4 -78
  154. package/Libraries/Components/RefreshControl/PullToRefreshViewNativeComponent.js +5 -56
  155. package/Libraries/Components/RefreshControl/RefreshControl.d.ts +87 -0
  156. package/Libraries/Components/RefreshControl/RefreshControl.js +31 -50
  157. package/Libraries/Components/SafeAreaView/RCTSafeAreaViewNativeComponent.js +4 -21
  158. package/Libraries/Components/SafeAreaView/SafeAreaView.d.ts +33 -0
  159. package/Libraries/Components/SafeAreaView/SafeAreaView.js +13 -39
  160. package/Libraries/Components/SafeAreaView/SafeAreaView.win32.js +13 -41
  161. package/Libraries/Components/ScrollView/AndroidHorizontalScrollContentViewNativeComponent.js +4 -32
  162. package/Libraries/Components/ScrollView/AndroidHorizontalScrollViewNativeComponent.js +36 -21
  163. package/Libraries/Components/ScrollView/ScrollContentViewNativeComponent.js +11 -20
  164. package/Libraries/Components/ScrollView/ScrollView.d.ts +937 -0
  165. package/Libraries/Components/ScrollView/ScrollView.js +1189 -484
  166. package/Libraries/Components/ScrollView/ScrollViewCommands.js +8 -8
  167. package/Libraries/Components/ScrollView/ScrollViewContext.js +25 -0
  168. package/Libraries/Components/ScrollView/ScrollViewNativeComponent.js +166 -18
  169. package/Libraries/Components/ScrollView/ScrollViewNativeComponentType.js +15 -18
  170. package/Libraries/Components/ScrollView/ScrollViewStickyHeader.js +222 -66
  171. package/Libraries/Components/ScrollView/processDecelerationRate.js +4 -6
  172. package/Libraries/Components/Sound/NativeSoundManager.js +4 -15
  173. package/Libraries/Components/Sound/SoundManager.js +4 -5
  174. package/Libraries/Components/StaticRenderer.js +6 -6
  175. package/Libraries/Components/StatusBar/NativeStatusBarManagerAndroid.js +4 -27
  176. package/Libraries/Components/StatusBar/NativeStatusBarManagerIOS.js +4 -35
  177. package/Libraries/Components/StatusBar/StatusBar.d.ts +142 -0
  178. package/Libraries/Components/StatusBar/StatusBar.js +100 -89
  179. package/Libraries/Components/Switch/AndroidSwitchNativeComponent.js +3 -55
  180. package/Libraries/Components/Switch/Switch.d.ts +118 -0
  181. package/Libraries/Components/Switch/Switch.js +217 -148
  182. package/Libraries/Components/Switch/SwitchNativeComponent.js +3 -49
  183. package/Libraries/Components/TextInput/AndroidTextInputNativeComponent.js +254 -100
  184. package/Libraries/Components/TextInput/InputAccessoryView.d.ts +34 -0
  185. package/Libraries/Components/TextInput/InputAccessoryView.js +32 -25
  186. package/Libraries/Components/TextInput/RCTInputAccessoryViewNativeComponent.js +3 -17
  187. package/Libraries/Components/TextInput/RCTMultilineTextInputNativeComponent.js +27 -34
  188. package/Libraries/Components/TextInput/RCTSingelineTextInputNativeComponent.js +22 -42
  189. package/Libraries/Components/TextInput/RCTTextInputViewConfig.js +170 -0
  190. package/Libraries/Components/TextInput/Tests/TextInputTest.d.ts +9 -8
  191. package/Libraries/Components/TextInput/Tests/TextInputTest.js +128 -126
  192. package/Libraries/Components/TextInput/Tests/TextInputTest.js.map +1 -0
  193. package/Libraries/Components/TextInput/TextInput.d.ts +1055 -0
  194. package/Libraries/Components/TextInput/TextInput.flow.js +1172 -0
  195. package/Libraries/Components/TextInput/TextInput.flow.win32.js +1206 -0
  196. package/Libraries/Components/TextInput/TextInput.js +682 -914
  197. package/Libraries/Components/TextInput/TextInput.win32.js +1108 -179
  198. package/Libraries/Components/TextInput/TextInputNativeCommands.js +29 -0
  199. package/Libraries/Components/TextInput/TextInputState.js +30 -23
  200. package/Libraries/Components/TextInput/TextInputState.win32.js +43 -32
  201. package/Libraries/Components/TextInput/Win32TextInputNativeComponent.js +26 -0
  202. package/Libraries/Components/ToastAndroid/NativeToastAndroid.js +4 -31
  203. package/Libraries/Components/ToastAndroid/ToastAndroid.android.js +13 -12
  204. package/Libraries/Components/ToastAndroid/ToastAndroid.d.ts +109 -0
  205. package/Libraries/Components/ToastAndroid/ToastAndroid.ios.js +4 -30
  206. package/Libraries/Components/ToastAndroid/ToastAndroid.js +17 -0
  207. package/Libraries/Components/ToastAndroid/ToastAndroid.js.flow +109 -0
  208. package/Libraries/Components/ToastAndroid/ToastAndroid.win32.js +7 -29
  209. package/Libraries/Components/ToastAndroid/ToastAndroidFallback.js +45 -0
  210. package/Libraries/Components/Touchable/BoundingDimensions.js +14 -7
  211. package/Libraries/Components/Touchable/PooledClass.js +28 -17
  212. package/Libraries/Components/Touchable/Position.js +10 -6
  213. package/Libraries/Components/Touchable/Tests/TouchableWin32Test.d.ts +9 -8
  214. package/Libraries/Components/Touchable/Tests/TouchableWin32Test.js +344 -381
  215. package/Libraries/Components/Touchable/Tests/TouchableWin32Test.js.map +1 -0
  216. package/Libraries/Components/Touchable/Touchable.d.ts +90 -0
  217. package/Libraries/Components/Touchable/Touchable.js +149 -146
  218. package/Libraries/Components/Touchable/Touchable.win32.js +992 -0
  219. package/Libraries/Components/Touchable/TouchableBounce.js +81 -63
  220. package/Libraries/Components/Touchable/TouchableHighlight.d.ts +62 -0
  221. package/Libraries/Components/Touchable/TouchableHighlight.js +118 -75
  222. package/Libraries/Components/Touchable/TouchableNativeFeedback.d.ts +119 -0
  223. package/Libraries/Components/Touchable/TouchableNativeFeedback.js +187 -118
  224. package/Libraries/Components/Touchable/TouchableNativeFeedback.win32.js +307 -51
  225. package/Libraries/Components/Touchable/TouchableOpacity.d.ts +82 -0
  226. package/Libraries/Components/Touchable/TouchableOpacity.js +161 -70
  227. package/Libraries/Components/Touchable/TouchableWin32.Props.d.ts +37 -34
  228. package/Libraries/Components/Touchable/TouchableWin32.Props.js +3 -3
  229. package/Libraries/Components/Touchable/TouchableWin32.Props.js.map +1 -0
  230. package/Libraries/Components/Touchable/TouchableWin32.Types.d.ts +114 -114
  231. package/Libraries/Components/Touchable/TouchableWin32.Types.js +3 -3
  232. package/Libraries/Components/Touchable/TouchableWin32.Types.js.map +1 -0
  233. package/Libraries/Components/Touchable/TouchableWin32.d.ts +91 -91
  234. package/Libraries/Components/Touchable/TouchableWin32.js +507 -529
  235. package/Libraries/Components/Touchable/TouchableWin32.js.map +1 -0
  236. package/Libraries/Components/Touchable/TouchableWithoutFeedback.d.ts +151 -0
  237. package/Libraries/Components/Touchable/TouchableWithoutFeedback.js +236 -142
  238. package/Libraries/Components/UnimplementedViews/UnimplementedNativeViewNativeComponent.js +4 -20
  239. package/Libraries/Components/UnimplementedViews/UnimplementedView.js +13 -6
  240. package/Libraries/Components/View/ReactNativeStyleAttributes.js +206 -70
  241. package/Libraries/Components/View/ReactNativeViewAttributes.js +8 -4
  242. package/Libraries/Components/View/ReactNativeViewAttributes.win32.js +38 -14
  243. package/Libraries/Components/View/View.d.ts +29 -0
  244. package/Libraries/Components/View/View.js +112 -20
  245. package/Libraries/Components/View/View.win32.js +287 -0
  246. package/Libraries/Components/View/ViewAccessibility.d.ts +567 -0
  247. package/Libraries/Components/View/ViewAccessibility.js +351 -13
  248. package/Libraries/Components/View/ViewAccessibility.win32.js +421 -0
  249. package/Libraries/Components/View/ViewNativeComponent.js +15 -71
  250. package/Libraries/Components/View/ViewPropTypes.d.ts +374 -0
  251. package/Libraries/Components/View/ViewPropTypes.js +196 -178
  252. package/Libraries/Components/View/ViewPropTypes.win32.js +596 -0
  253. package/Libraries/Components/View/ViewWin32.d.ts +30 -12
  254. package/Libraries/Components/View/ViewWin32.js +130 -80
  255. package/Libraries/Core/Devtools/getDevServer.js +10 -11
  256. package/Libraries/Core/Devtools/loadBundleFromServer.js +196 -0
  257. package/Libraries/Core/Devtools/loadBundleFromServer.win32.js +197 -0
  258. package/Libraries/Core/Devtools/openFileInEditor.js +8 -6
  259. package/Libraries/Core/Devtools/openURLInBrowser.js +8 -6
  260. package/Libraries/Core/Devtools/parseErrorStack.js +17 -26
  261. package/Libraries/Core/Devtools/parseHermesStack.js +73 -46
  262. package/Libraries/Core/Devtools/symbolicateStackTrace.js +17 -61
  263. package/Libraries/Core/ExceptionsManager.js +145 -114
  264. package/Libraries/Core/ExtendedError.js +33 -0
  265. package/Libraries/Core/InitializeCore.js +6 -19
  266. package/Libraries/Core/NativeExceptionsManager.js +5 -99
  267. package/Libraries/Core/RawEventEmitter.js +39 -0
  268. package/Libraries/Core/ReactFiberErrorDialog.js +48 -39
  269. package/Libraries/Core/ReactNativeVersion.js +41 -9
  270. package/Libraries/Core/ReactNativeVersionCheck.js +10 -9
  271. package/Libraries/Core/ReactNativeVersionCheck.win32.js +10 -9
  272. package/Libraries/Core/SegmentFetcher/NativeSegmentFetcher.js +5 -20
  273. package/Libraries/Core/Timers/JSTimers.js +105 -129
  274. package/Libraries/Core/Timers/NativeTiming.js +5 -18
  275. package/Libraries/Core/Timers/immediateShim.js +61 -0
  276. package/Libraries/Core/Timers/queueMicrotask.js +42 -0
  277. package/Libraries/Core/checkNativeVersion.js +2 -1
  278. package/Libraries/Core/polyfillPromise.js +19 -3
  279. package/Libraries/Core/registerCallableModule.d.ts +16 -0
  280. package/Libraries/Core/registerCallableModule.js +42 -0
  281. package/Libraries/Core/setUpAlert.js +3 -3
  282. package/Libraries/Core/setUpBatchedBridge.js +21 -27
  283. package/Libraries/Core/setUpDeveloperTools.js +21 -53
  284. package/Libraries/Core/setUpErrorHandling.js +21 -19
  285. package/Libraries/Core/setUpGlobals.js +8 -6
  286. package/Libraries/Core/setUpNavigator.js +8 -7
  287. package/Libraries/Core/setUpPerformance.js +32 -0
  288. package/Libraries/Core/setUpReactDevTools.js +234 -15
  289. package/Libraries/Core/setUpReactRefresh.js +5 -7
  290. package/Libraries/Core/setUpRegeneratorRuntime.js +28 -9
  291. package/Libraries/Core/setUpSegmentFetcher.js +9 -47
  292. package/Libraries/Core/setUpTimers.js +78 -8
  293. package/Libraries/Core/setUpXHR.js +16 -13
  294. package/Libraries/Debugging/DebuggingOverlay.js +108 -0
  295. package/Libraries/Debugging/DebuggingOverlayNativeComponent.js +14 -0
  296. package/Libraries/Debugging/DebuggingOverlayRegistry.js +515 -0
  297. package/Libraries/Debugging/useSubscribeToDebuggingOverlayRegistry.js +31 -0
  298. package/Libraries/EventEmitter/NativeEventEmitter.d.ts +63 -0
  299. package/Libraries/EventEmitter/NativeEventEmitter.js +104 -41
  300. package/Libraries/EventEmitter/RCTDeviceEventEmitter.d.ts +29 -0
  301. package/Libraries/EventEmitter/RCTDeviceEventEmitter.js +29 -68
  302. package/Libraries/EventEmitter/RCTEventEmitter.js +5 -5
  303. package/Libraries/EventEmitter/RCTNativeAppEventEmitter.d.ts +32 -0
  304. package/Libraries/EventEmitter/RCTNativeAppEventEmitter.js +4 -6
  305. package/Libraries/Image/AssetRegistry.js +5 -29
  306. package/Libraries/Image/AssetSourceResolver.js +95 -45
  307. package/Libraries/Image/AssetUtils.js +47 -0
  308. package/Libraries/Image/Image.android.js +181 -240
  309. package/Libraries/Image/Image.d.ts +389 -0
  310. package/Libraries/Image/Image.ios.js +151 -102
  311. package/Libraries/Image/Image.js +17 -0
  312. package/Libraries/Image/Image.js.flow +27 -0
  313. package/Libraries/Image/Image.win32.js +158 -93
  314. package/Libraries/Image/ImageAnalyticsTagContext.js +22 -0
  315. package/Libraries/Image/ImageBackground.js +32 -14
  316. package/Libraries/Image/ImageInjection.js +87 -0
  317. package/Libraries/Image/ImageProps.js +262 -61
  318. package/Libraries/Image/ImageResizeMode.d.ts +56 -0
  319. package/Libraries/Image/ImageResizeMode.js +5 -2
  320. package/Libraries/Image/ImageSource.d.ts +79 -0
  321. package/Libraries/Image/ImageSource.js +75 -23
  322. package/Libraries/Image/ImageSourceUtils.js +82 -0
  323. package/Libraries/Image/ImageTypes.d.ts +25 -25
  324. package/Libraries/Image/ImageTypes.flow.js +88 -0
  325. package/Libraries/Image/ImageTypes.js +8 -8
  326. package/Libraries/Image/ImageTypes.js.map +1 -0
  327. package/Libraries/Image/ImageUtils.js +25 -0
  328. package/Libraries/Image/ImageViewNativeComponent.js +145 -30
  329. package/Libraries/Image/NativeImageEditor.js +14 -0
  330. package/Libraries/Image/NativeImageLoaderAndroid.js +5 -31
  331. package/Libraries/Image/NativeImageLoaderIOS.js +5 -23
  332. package/Libraries/Image/NativeImageLoaderWin32.js +5 -31
  333. package/Libraries/Image/NativeImageStoreAndroid.js +14 -0
  334. package/Libraries/Image/NativeImageStoreIOS.js +14 -0
  335. package/Libraries/Image/RelativeImageStub.js +7 -4
  336. package/Libraries/Image/Tests/ImageWin32Test.d.ts +9 -8
  337. package/Libraries/Image/Tests/ImageWin32Test.js +22 -19
  338. package/Libraries/Image/Tests/ImageWin32Test.js.map +1 -0
  339. package/Libraries/Image/TextInlineImageNativeComponent.js +37 -8
  340. package/Libraries/Image/assetPaths.js +36 -0
  341. package/Libraries/Image/nativeImageSource.js +7 -9
  342. package/Libraries/Image/resolveAssetSource.js +68 -32
  343. package/Libraries/Image/resolveAssetSource.win32.js +19 -7
  344. package/Libraries/Interaction/FrameRateLogger.js +12 -24
  345. package/Libraries/Interaction/InteractionManager.d.ts +87 -0
  346. package/Libraries/Interaction/InteractionManager.js +86 -120
  347. package/Libraries/Interaction/NativeFrameRateLogger.js +5 -15
  348. package/Libraries/Interaction/PanResponder.d.ts +202 -0
  349. package/Libraries/Interaction/PanResponder.js +55 -54
  350. package/Libraries/Interaction/TouchHistoryMath.js +59 -30
  351. package/Libraries/LayoutAnimation/LayoutAnimation.d.ts +84 -0
  352. package/Libraries/LayoutAnimation/LayoutAnimation.js +115 -46
  353. package/Libraries/Linking/Linking.d.ts +61 -0
  354. package/Libraries/Linking/Linking.js +57 -47
  355. package/Libraries/Linking/NativeIntentAndroid.js +14 -0
  356. package/Libraries/Linking/NativeLinkingManager.js +14 -0
  357. package/Libraries/Lists/FillRateHelper.js +7 -233
  358. package/Libraries/Lists/FlatList.d.ts +248 -0
  359. package/Libraries/Lists/FlatList.js +219 -156
  360. package/Libraries/Lists/SectionList.d.ts +267 -0
  361. package/Libraries/Lists/SectionList.js +72 -70
  362. package/Libraries/Lists/SectionListModern.js +248 -0
  363. package/Libraries/Lists/ViewabilityHelper.js +12 -328
  364. package/Libraries/Lists/VirtualizeUtils.js +5 -236
  365. package/Libraries/Lists/VirtualizedList.js +13 -2225
  366. package/Libraries/Lists/VirtualizedListContext.js +18 -0
  367. package/Libraries/Lists/VirtualizedSectionList.js +13 -566
  368. package/Libraries/LogBox/Data/LogBoxData.js +127 -90
  369. package/Libraries/LogBox/Data/LogBoxLog.js +152 -17
  370. package/Libraries/LogBox/Data/LogBoxSymbolication.js +10 -9
  371. package/Libraries/LogBox/Data/parseLogBoxLog.js +299 -84
  372. package/Libraries/LogBox/LogBox.d.ts +28 -0
  373. package/Libraries/LogBox/LogBox.js +199 -121
  374. package/Libraries/LogBox/LogBoxInspectorContainer.js +9 -9
  375. package/Libraries/LogBox/LogBoxNotificationContainer.js +13 -10
  376. package/Libraries/LogBox/UI/AnsiHighlight.js +47 -25
  377. package/Libraries/LogBox/UI/LogBoxButton.js +15 -13
  378. package/Libraries/LogBox/UI/LogBoxImages/alert-triangle.png +0 -0
  379. package/Libraries/LogBox/UI/LogBoxImages/chevron-left.png +0 -0
  380. package/Libraries/LogBox/UI/LogBoxImages/chevron-right.png +0 -0
  381. package/Libraries/LogBox/UI/LogBoxImages/close.png +0 -0
  382. package/Libraries/LogBox/UI/LogBoxImages/loader.png +0 -0
  383. package/Libraries/LogBox/UI/LogBoxInspector.js +14 -78
  384. package/Libraries/LogBox/UI/LogBoxInspectorBody.js +93 -0
  385. package/Libraries/LogBox/UI/LogBoxInspectorCodeFrame.js +65 -39
  386. package/Libraries/LogBox/UI/LogBoxInspectorCodeFrame.win32.js +192 -0
  387. package/Libraries/LogBox/UI/LogBoxInspectorFooter.js +18 -54
  388. package/Libraries/LogBox/UI/LogBoxInspectorFooterButton.js +60 -0
  389. package/Libraries/LogBox/UI/LogBoxInspectorHeader.js +27 -81
  390. package/Libraries/LogBox/UI/LogBoxInspectorHeader.win32.js +119 -0
  391. package/Libraries/LogBox/UI/LogBoxInspectorHeaderButton.js +78 -0
  392. package/Libraries/LogBox/UI/LogBoxInspectorMessageHeader.js +12 -11
  393. package/Libraries/LogBox/UI/LogBoxInspectorReactFrames.js +23 -18
  394. package/Libraries/LogBox/UI/LogBoxInspectorReactFrames.win32.js +199 -0
  395. package/Libraries/LogBox/UI/LogBoxInspectorSection.js +5 -7
  396. package/Libraries/LogBox/UI/LogBoxInspectorSourceMapStatus.js +12 -15
  397. package/Libraries/LogBox/UI/LogBoxInspectorSourceMapStatus.win32.js +141 -0
  398. package/Libraries/LogBox/UI/LogBoxInspectorStackFrame.js +12 -12
  399. package/Libraries/LogBox/UI/LogBoxInspectorStackFrame.win32.js +120 -0
  400. package/Libraries/LogBox/UI/LogBoxInspectorStackFrames.js +22 -13
  401. package/Libraries/LogBox/UI/LogBoxMessage.js +100 -19
  402. package/Libraries/LogBox/UI/LogBoxNotification.js +24 -158
  403. package/Libraries/LogBox/UI/LogBoxNotificationCountBadge.js +65 -0
  404. package/Libraries/LogBox/UI/LogBoxNotificationDismissButton.js +69 -0
  405. package/Libraries/LogBox/UI/LogBoxNotificationMessage.js +60 -0
  406. package/Libraries/LogBox/UI/LogBoxStyle.js +1 -3
  407. package/Libraries/LogBox/UI/LogBoxStyle.win32.js +65 -0
  408. package/Libraries/Modal/Modal.d.ts +122 -0
  409. package/Libraries/Modal/Modal.js +264 -128
  410. package/Libraries/Modal/NativeModalManager.js +5 -13
  411. package/Libraries/Modal/RCTModalHostViewNativeComponent.js +5 -117
  412. package/Libraries/NativeComponent/BaseViewConfig.android.js +436 -0
  413. package/Libraries/NativeComponent/BaseViewConfig.ios.js +424 -0
  414. package/Libraries/NativeComponent/BaseViewConfig.js +17 -0
  415. package/Libraries/NativeComponent/BaseViewConfig.js.flow +14 -0
  416. package/Libraries/NativeComponent/BaseViewConfig.win32.js +415 -0
  417. package/Libraries/NativeComponent/NativeComponentRegistry.js +164 -0
  418. package/Libraries/NativeComponent/NativeComponentRegistryUnstable.js +30 -0
  419. package/Libraries/NativeComponent/PlatformBaseViewConfig.js +25 -0
  420. package/Libraries/NativeComponent/StaticViewConfigValidator.js +148 -0
  421. package/Libraries/NativeComponent/ViewConfig.js +52 -0
  422. package/Libraries/NativeComponent/ViewConfigIgnore.js +51 -0
  423. package/Libraries/NativeModules/specs/NativeDevMenu.js +5 -15
  424. package/Libraries/NativeModules/specs/NativeDevSettings.js +5 -25
  425. package/Libraries/NativeModules/specs/NativeDeviceEventManager.js +5 -11
  426. package/Libraries/NativeModules/specs/NativeDialogManagerAndroid.js +5 -40
  427. package/Libraries/NativeModules/specs/NativeLogBox.js +5 -12
  428. package/Libraries/NativeModules/specs/NativeRedBox.js +5 -12
  429. package/Libraries/NativeModules/specs/NativeSourceCode.js +5 -13
  430. package/Libraries/Network/FormData.js +22 -6
  431. package/Libraries/Network/NativeNetworkingAndroid.js +5 -29
  432. package/Libraries/Network/NativeNetworkingIOS.js +5 -29
  433. package/Libraries/Network/RCTNetworking.android.js +34 -22
  434. package/Libraries/Network/RCTNetworking.ios.js +23 -19
  435. package/Libraries/Network/RCTNetworking.js +17 -0
  436. package/Libraries/Network/RCTNetworking.js.flow +44 -0
  437. package/Libraries/Network/RCTNetworking.win32.js +41 -70
  438. package/Libraries/Network/RCTNetworkingEventDefinitions.flow.js +57 -0
  439. package/Libraries/Network/XMLHttpRequest.js +276 -89
  440. package/Libraries/Network/convertRequestBody.js +9 -6
  441. package/Libraries/Network/fetch.js +6 -4
  442. package/Libraries/Performance/Systrace.d.ts +66 -0
  443. package/Libraries/Performance/Systrace.js +117 -172
  444. package/Libraries/PermissionsAndroid/NativePermissionsAndroid.js +5 -51
  445. package/Libraries/PermissionsAndroid/PermissionsAndroid.d.ts +163 -0
  446. package/Libraries/PermissionsAndroid/PermissionsAndroid.js +106 -66
  447. package/Libraries/PersonaCoin/PersonaCoin.d.ts +3 -3
  448. package/Libraries/PersonaCoin/PersonaCoin.js +16 -22
  449. package/Libraries/PersonaCoin/PersonaCoin.js.map +1 -0
  450. package/Libraries/PersonaCoin/PersonaCoinPropTypes.d.ts +2 -2
  451. package/Libraries/PersonaCoin/PersonaCoinPropTypes.js +20 -20
  452. package/Libraries/PersonaCoin/PersonaCoinPropTypes.js.map +1 -0
  453. package/Libraries/PersonaCoin/PersonaCoinTypes.d.ts +33 -33
  454. package/Libraries/PersonaCoin/PersonaCoinTypes.js +24 -24
  455. package/Libraries/PersonaCoin/PersonaCoinTypes.js.map +1 -0
  456. package/Libraries/Pressability/HoverState.js +5 -4
  457. package/Libraries/Pressability/HoverState.win32.js +63 -0
  458. package/Libraries/Pressability/Pressability.js +275 -181
  459. package/Libraries/Pressability/Pressability.win32.js +1093 -0
  460. package/Libraries/Pressability/PressabilityDebug.js +33 -29
  461. package/Libraries/Pressability/PressabilityPerformanceEventEmitter.js +49 -0
  462. package/Libraries/Pressability/PressabilityTypes.js +18 -0
  463. package/Libraries/Pressability/usePressability.js +28 -11
  464. package/Libraries/Promise.js +7 -37
  465. package/Libraries/PushNotificationIOS/NativePushNotificationManagerIOS.js +5 -65
  466. package/Libraries/PushNotificationIOS/PushNotificationIOS.d.ts +295 -0
  467. package/Libraries/PushNotificationIOS/PushNotificationIOS.js +249 -94
  468. package/Libraries/QuirkSettings/CachingNativeQuirkSettings.js +30 -0
  469. package/Libraries/QuirkSettings/NativeQuirkSettings.js +17 -0
  470. package/Libraries/QuirkSettings/QuirkSettings.js +34 -0
  471. package/Libraries/QuirkSettings/Quirks.js +17 -0
  472. package/Libraries/ReactNative/AppContainer-dev.js +210 -0
  473. package/Libraries/ReactNative/AppContainer-prod.js +49 -0
  474. package/Libraries/ReactNative/AppContainer.js +16 -141
  475. package/Libraries/ReactNative/AppRegistry.d.ts +121 -0
  476. package/Libraries/ReactNative/AppRegistry.flow.js +49 -0
  477. package/Libraries/ReactNative/AppRegistry.js +21 -292
  478. package/Libraries/ReactNative/AppRegistry.js.flow +23 -0
  479. package/Libraries/ReactNative/AppRegistryImpl.js +307 -0
  480. package/Libraries/ReactNative/BridgelessUIManager.js +414 -0
  481. package/Libraries/ReactNative/DisplayMode.js +32 -0
  482. package/Libraries/ReactNative/FabricUIManager.js +140 -29
  483. package/Libraries/ReactNative/HeadlessJsTaskError.js +1 -3
  484. package/Libraries/ReactNative/I18nManager.d.ts +25 -0
  485. package/Libraries/ReactNative/I18nManager.js +22 -16
  486. package/Libraries/ReactNative/NativeHeadlessJsTaskSupport.js +5 -12
  487. package/Libraries/ReactNative/NativeI18nManager.js +5 -17
  488. package/Libraries/ReactNative/NativeUIManager.js +5 -113
  489. package/Libraries/ReactNative/PaperUIManager.js +82 -55
  490. package/Libraries/ReactNative/PaperUIManager.win32.js +210 -0
  491. package/Libraries/ReactNative/ReactFabricPublicInstance/ReactFabricHostComponent.js +150 -0
  492. package/Libraries/ReactNative/ReactFabricPublicInstance/ReactFabricPublicInstance.js +152 -0
  493. package/Libraries/ReactNative/ReactFabricPublicInstance/ReactFabricPublicInstanceUtils.js +38 -0
  494. package/Libraries/ReactNative/ReactFabricPublicInstance/ReactNativeAttributePayload.js +511 -0
  495. package/Libraries/ReactNative/ReactFabricPublicInstance/warnForStyleProps.js +33 -0
  496. package/Libraries/ReactNative/ReactNativeRuntimeDiagnostics.js +68 -0
  497. package/Libraries/ReactNative/RendererImplementation.js +176 -0
  498. package/Libraries/ReactNative/RendererProxy.d.ts +20 -0
  499. package/Libraries/ReactNative/RendererProxy.js +26 -0
  500. package/Libraries/ReactNative/RootTag.d.ts +13 -0
  501. package/Libraries/ReactNative/RootTag.js +27 -0
  502. package/Libraries/ReactNative/UIManager.d.ts +114 -0
  503. package/Libraries/ReactNative/UIManager.js +180 -26
  504. package/Libraries/ReactNative/UIManagerProperties.js +6 -9
  505. package/Libraries/ReactNative/getCachedComponentWithDebugName.js +33 -0
  506. package/Libraries/ReactNative/getNativeComponentAttributes.js +59 -31
  507. package/Libraries/ReactNative/renderApplication.js +82 -24
  508. package/Libraries/ReactNative/requireNativeComponent.d.ts +23 -0
  509. package/Libraries/ReactNative/requireNativeComponent.js +10 -6
  510. package/Libraries/ReactPrivate/ReactNativePrivateInitializeCore.js +2 -2
  511. package/Libraries/ReactPrivate/ReactNativePrivateInterface.js +97 -21
  512. package/Libraries/ReactPrivate/ReactNativePrivateInterface.js.flow +51 -0
  513. package/Libraries/Renderer/implementations/ReactFabric-dev.js +16364 -19918
  514. package/Libraries/Renderer/implementations/ReactFabric-prod.js +8703 -5492
  515. package/Libraries/Renderer/implementations/ReactFabric-profiling.js +9377 -5787
  516. package/Libraries/Renderer/implementations/ReactNativeRenderer-dev.js +16614 -20522
  517. package/Libraries/Renderer/implementations/ReactNativeRenderer-prod.js +8620 -5484
  518. package/Libraries/Renderer/implementations/ReactNativeRenderer-profiling.js +9363 -5842
  519. package/Libraries/Renderer/shims/ReactFabric.js +12 -9
  520. package/Libraries/Renderer/shims/ReactFeatureFlags.js +7 -3
  521. package/Libraries/Renderer/shims/ReactNative.js +8 -5
  522. package/Libraries/Renderer/shims/ReactNativeTypes.js +202 -118
  523. package/Libraries/Renderer/shims/ReactNativeTypes.win32.js +261 -0
  524. package/Libraries/Renderer/shims/ReactNativeViewConfigRegistry.js +29 -37
  525. package/Libraries/Renderer/shims/createReactNativeComponentClass.js +10 -7
  526. package/Libraries/Settings/NativeSettingsManager.js +5 -17
  527. package/Libraries/Settings/Settings.d.ts +18 -0
  528. package/Libraries/Settings/Settings.ios.js +10 -9
  529. package/Libraries/Settings/Settings.js +27 -0
  530. package/Libraries/Settings/Settings.win32.js +20 -21
  531. package/Libraries/Settings/SettingsFallback.js +33 -0
  532. package/Libraries/Share/NativeShareModule.js +5 -15
  533. package/Libraries/Share/Share.d.ts +80 -0
  534. package/Libraries/Share/Share.js +42 -27
  535. package/Libraries/StyleSheet/EdgeInsetsPropType.js +6 -3
  536. package/Libraries/StyleSheet/PlatformColorValueTypes.android.js +11 -12
  537. package/Libraries/StyleSheet/PlatformColorValueTypes.d.ts +18 -0
  538. package/Libraries/StyleSheet/PlatformColorValueTypes.ios.js +54 -18
  539. package/Libraries/StyleSheet/PlatformColorValueTypes.js +15 -0
  540. package/Libraries/StyleSheet/PlatformColorValueTypes.js.flow +22 -0
  541. package/Libraries/StyleSheet/PlatformColorValueTypes.win32.js +15 -5
  542. package/Libraries/StyleSheet/PlatformColorValueTypesIOS.d.ts +25 -0
  543. package/Libraries/StyleSheet/PlatformColorValueTypesIOS.ios.js +12 -6
  544. package/Libraries/StyleSheet/PlatformColorValueTypesIOS.js +11 -5
  545. package/Libraries/StyleSheet/PlatformColorValueTypesWin32.d.ts +2 -4
  546. package/Libraries/StyleSheet/PlatformColorValueTypesWin32.js +2 -2
  547. package/Libraries/StyleSheet/PointPropType.js +2 -2
  548. package/Libraries/StyleSheet/Rect.js +5 -6
  549. package/Libraries/StyleSheet/StyleSheet.d.ts +150 -0
  550. package/Libraries/StyleSheet/StyleSheet.js +49 -224
  551. package/Libraries/StyleSheet/StyleSheet.js.flow +188 -0
  552. package/Libraries/StyleSheet/StyleSheetExports.js +210 -0
  553. package/Libraries/StyleSheet/StyleSheetExports.js.flow +112 -0
  554. package/Libraries/StyleSheet/StyleSheetTypes.d.ts +573 -0
  555. package/Libraries/StyleSheet/StyleSheetTypes.js +549 -144
  556. package/Libraries/StyleSheet/flattenStyle.js +24 -9
  557. package/Libraries/StyleSheet/normalizeColor.js +12 -371
  558. package/Libraries/StyleSheet/private/_StyleSheetTypesOverrides.js +15 -0
  559. package/Libraries/StyleSheet/private/_TransformStyle.js +97 -0
  560. package/Libraries/StyleSheet/processAspectRatio.js +65 -0
  561. package/Libraries/StyleSheet/processBackgroundImage.js +819 -0
  562. package/Libraries/StyleSheet/processBoxShadow.js +212 -0
  563. package/Libraries/StyleSheet/processColor.d.ts +16 -0
  564. package/Libraries/StyleSheet/processColor.js +8 -10
  565. package/Libraries/StyleSheet/processColorArray.js +20 -9
  566. package/Libraries/StyleSheet/processFilter.js +324 -0
  567. package/Libraries/StyleSheet/processFontVariant.js +30 -0
  568. package/Libraries/StyleSheet/processTransform.js +133 -113
  569. package/Libraries/StyleSheet/processTransformOrigin.js +136 -0
  570. package/Libraries/StyleSheet/setNormalizedColorAlpha.js +3 -3
  571. package/Libraries/StyleSheet/splitLayoutProps.js +57 -49
  572. package/Libraries/Text/Text.d.ts +313 -0
  573. package/Libraries/Text/Text.js +515 -269
  574. package/Libraries/Text/Text.win32.js +588 -0
  575. package/Libraries/Text/TextAncestor.js +5 -7
  576. package/Libraries/Text/TextAncestorContext.js +23 -0
  577. package/Libraries/Text/TextNativeComponent.js +82 -0
  578. package/Libraries/Text/TextNativeComponent.win32.js +117 -0
  579. package/Libraries/Text/TextProps.js +175 -88
  580. package/Libraries/Text/TextProps.win32.js +291 -0
  581. package/Libraries/TurboModule/RCTExport.d.ts +12 -0
  582. package/Libraries/TurboModule/RCTExport.js +3 -1
  583. package/Libraries/TurboModule/TurboModuleRegistry.d.ts +13 -0
  584. package/Libraries/TurboModule/TurboModuleRegistry.js +24 -16
  585. package/Libraries/TurboModule/samples/NativeSampleTurboModule.js +5 -27
  586. package/Libraries/Types/CodegenTypes.js +13 -5
  587. package/Libraries/Types/CodegenTypesNamespace.d.ts +45 -0
  588. package/Libraries/Types/CodegenTypesNamespace.js +15 -0
  589. package/Libraries/Types/CoreEventTypes.d.ts +268 -0
  590. package/Libraries/Types/CoreEventTypes.js +260 -92
  591. package/Libraries/Types/CoreEventTypes.win32.js +378 -0
  592. package/Libraries/Types/ReactDevToolsTypes.js +53 -0
  593. package/Libraries/Types/RootTagTypes.js +11 -0
  594. package/Libraries/Types/UIManagerJSInterface.js +16 -0
  595. package/Libraries/UTFSequence.js +10 -7
  596. package/Libraries/Utilities/Appearance.d.ts +53 -0
  597. package/Libraries/Utilities/Appearance.js +112 -63
  598. package/Libraries/Utilities/BackHandler.android.js +20 -40
  599. package/Libraries/Utilities/BackHandler.d.ts +34 -0
  600. package/Libraries/Utilities/BackHandler.ios.js +20 -110
  601. package/Libraries/Utilities/BackHandler.js +17 -0
  602. package/Libraries/Utilities/BackHandler.js.flow +25 -0
  603. package/Libraries/Utilities/BackHandler.win32.js +96 -7
  604. package/Libraries/Utilities/DevLoadingView.js +64 -0
  605. package/Libraries/Utilities/DevSettings.d.ts +32 -0
  606. package/Libraries/Utilities/DevSettings.js +69 -48
  607. package/Libraries/Utilities/DeviceInfo.js +4 -4
  608. package/Libraries/Utilities/Dimensions.d.ts +79 -0
  609. package/Libraries/Utilities/Dimensions.js +35 -49
  610. package/Libraries/Utilities/Dimensions.win32.js +112 -19
  611. package/Libraries/Utilities/FeatureDetection.js +29 -0
  612. package/Libraries/Utilities/FocusManager.win32.d.ts +12 -0
  613. package/Libraries/Utilities/FocusManager.win32.js +42 -0
  614. package/Libraries/Utilities/GlobalPerformanceLogger.js +5 -6
  615. package/Libraries/Utilities/HMRClient.js +89 -44
  616. package/Libraries/Utilities/HMRClientProdShim.js +3 -3
  617. package/Libraries/Utilities/IPerformanceLogger.d.ts +48 -0
  618. package/Libraries/Utilities/IPerformanceLogger.js +49 -0
  619. package/Libraries/Utilities/NativeAppearance.js +5 -27
  620. package/Libraries/Utilities/NativeDevLoadingView.js +5 -16
  621. package/Libraries/Utilities/NativeDeviceInfo.js +4 -41
  622. package/Libraries/Utilities/NativePlatformConstantsAndroid.js +5 -29
  623. package/Libraries/Utilities/NativePlatformConstantsIOS.js +5 -25
  624. package/Libraries/Utilities/NativePlatformConstantsWin.js +4 -20
  625. package/Libraries/Utilities/PerformanceLoggerContext.js +17 -10
  626. package/Libraries/Utilities/PixelRatio.d.ts +64 -0
  627. package/Libraries/Utilities/PixelRatio.js +7 -7
  628. package/Libraries/Utilities/Platform.android.js +39 -21
  629. package/Libraries/Utilities/Platform.d.ts +106 -0
  630. package/Libraries/Utilities/Platform.ios.js +41 -24
  631. package/Libraries/Utilities/Platform.js +17 -0
  632. package/Libraries/Utilities/Platform.js.flow +13 -0
  633. package/Libraries/Utilities/Platform.win32.js +42 -18
  634. package/Libraries/Utilities/PlatformTypes.js +224 -0
  635. package/Libraries/Utilities/PolyfillFunctions.js +9 -11
  636. package/Libraries/Utilities/RCTLog.js +7 -6
  637. package/Libraries/Utilities/ReactNativeTestTools.js +38 -60
  638. package/Libraries/Utilities/SceneTracker.js +8 -7
  639. package/Libraries/Utilities/binaryToBase64.js +7 -5
  640. package/Libraries/Utilities/codegenNativeCommands.d.ts +18 -0
  641. package/Libraries/Utilities/codegenNativeCommands.js +11 -9
  642. package/Libraries/Utilities/codegenNativeComponent.d.ts +26 -0
  643. package/Libraries/Utilities/codegenNativeComponent.js +29 -19
  644. package/Libraries/Utilities/createPerformanceLogger.js +298 -244
  645. package/Libraries/Utilities/deepFreezeAndThrowOnMutationInDev.js +13 -7
  646. package/Libraries/Utilities/defineLazyObjectProperty.js +4 -4
  647. package/Libraries/Utilities/differ/deepDiffer.js +9 -9
  648. package/Libraries/Utilities/differ/insetsDiffer.js +5 -5
  649. package/Libraries/Utilities/differ/matricesDiffer.js +5 -4
  650. package/Libraries/Utilities/differ/pointsDiffer.js +5 -5
  651. package/Libraries/Utilities/differ/sizesDiffer.js +13 -7
  652. package/Libraries/Utilities/dismissKeyboard.js +4 -3
  653. package/Libraries/Utilities/logError.js +4 -4
  654. package/Libraries/Utilities/mapWithSeparator.js +3 -3
  655. package/Libraries/Utilities/stringifySafe.js +10 -10
  656. package/Libraries/Utilities/stringifyViewConfig.js +22 -0
  657. package/Libraries/Utilities/useColorScheme.js +11 -17
  658. package/Libraries/Utilities/useMergeRefs.js +59 -0
  659. package/Libraries/Utilities/useRefEffect.js +45 -0
  660. package/Libraries/Utilities/useWindowDimensions.js +16 -9
  661. package/Libraries/Utilities/warnOnce.js +4 -6
  662. package/Libraries/Vibration/NativeVibration.js +5 -16
  663. package/Libraries/Vibration/Vibration.d.ts +43 -0
  664. package/Libraries/Vibration/Vibration.js +19 -18
  665. package/Libraries/WebSocket/NativeWebSocketModule.js +5 -26
  666. package/Libraries/WebSocket/WebSocket.js +93 -45
  667. package/Libraries/WebSocket/WebSocketInterceptor.js +78 -31
  668. package/Libraries/__tests__/ButtonWin32-test.js +17 -0
  669. package/Libraries/platform-types.d.ts +25 -0
  670. package/Libraries/promiseRejectionTrackingOptions.js +58 -0
  671. package/Libraries/vendor/core/ErrorUtils.d.ts +15 -0
  672. package/Libraries/vendor/core/ErrorUtils.js +30 -4
  673. package/Libraries/vendor/emitter/EventEmitter.d.ts +164 -0
  674. package/Libraries/vendor/emitter/EventEmitter.js +137 -191
  675. package/babel.config.js +3 -0
  676. package/flow/HermesInternalType.js +114 -0
  677. package/flow/Stringish.js +1 -1
  678. package/flow/bom.js.flow +554 -0
  679. package/flow/console.js +1 -1
  680. package/flow/cssom.js.flow +575 -0
  681. package/flow/dom.js.flow +6289 -0
  682. package/flow/global.js +88 -0
  683. package/flow/prettier.js.flow +14 -0
  684. package/flow/streams.js.flow +140 -0
  685. package/index.js +271 -502
  686. package/index.win32.js +520 -44
  687. package/interface.js +9 -13
  688. package/jest/MockNativeMethods.js +10 -4
  689. package/jest/RefreshControlMock.js +32 -0
  690. package/jest/assetFileTransformer.js +8 -5
  691. package/jest/local-setup.js +29 -0
  692. package/jest/mock.js +39 -0
  693. package/jest/mockComponent.js +65 -23
  694. package/jest/mockNativeComponent.js +51 -0
  695. package/jest/mocks/AccessibilityInfo.js +62 -0
  696. package/jest/mocks/ActivityIndicator.js +23 -0
  697. package/jest/mocks/AppState.js +19 -0
  698. package/jest/mocks/Clipboard.js +16 -0
  699. package/jest/mocks/Image.js +23 -0
  700. package/jest/mocks/InitializeCore.js +9 -0
  701. package/jest/mocks/Linking.js +28 -0
  702. package/jest/mocks/Modal.js +33 -0
  703. package/jest/mocks/NativeComponentRegistry.js +30 -0
  704. package/jest/mocks/NativeModules.js +239 -0
  705. package/jest/mocks/RefreshControl.js +31 -0
  706. package/jest/mocks/RendererProxy.js +45 -0
  707. package/jest/mocks/ScrollView.js +58 -0
  708. package/jest/mocks/Text.js +27 -0
  709. package/jest/mocks/TextInput.js +32 -0
  710. package/jest/mocks/UIManager.js +60 -0
  711. package/jest/mocks/Vibration.js +16 -0
  712. package/jest/mocks/View.js +27 -0
  713. package/jest/mocks/ViewNativeComponent.js +23 -0
  714. package/jest/mocks/requireNativeComponent.js +22 -0
  715. package/jest/mocks/useColorScheme.js +18 -0
  716. package/jest/react-native-env.js +17 -0
  717. package/jest/renderer.js +28 -22
  718. package/jest/resolver.js +32 -0
  719. package/jest/setup.js +121 -336
  720. package/jest-snapshot-resolver.js +2 -0
  721. package/jest.config.js +38 -0
  722. package/just-task.js +11 -53
  723. package/metro.config.js +5 -20
  724. package/metroShortPathAssetDataPlugin.js +15 -0
  725. package/overrides.json +314 -248
  726. package/package.json +86 -47
  727. package/react-native.config.js +2 -0
  728. package/rn-get-polyfills.js +3 -6
  729. package/saveAssetPlugin.js +45 -0
  730. package/src/private/animated/NativeAnimatedHelper.js +467 -0
  731. package/src/private/animated/NativeAnimatedHelper.win32.js +470 -0
  732. package/src/private/animated/NativeAnimatedValidation.js +64 -0
  733. package/src/private/animated/createAnimatedPropsHook.js +318 -0
  734. package/src/private/animated/createAnimatedPropsMemoHook.js +360 -0
  735. package/src/private/components/safeareaview/SafeAreaView_INTERNAL_DO_NOT_USE.js +31 -0
  736. package/src/private/components/scrollview/HScrollViewNativeComponents.js +29 -0
  737. package/src/private/components/scrollview/VScrollViewNativeComponents.js +24 -0
  738. package/src/private/components/virtualview/VirtualView.js +161 -0
  739. package/src/private/components/virtualview/VirtualViewExperimentalNativeComponent.js +93 -0
  740. package/src/private/components/virtualview/VirtualViewNativeComponent.js +90 -0
  741. package/src/private/devsupport/devmenu/DevMenu.d.ts +20 -0
  742. package/src/private/devsupport/devmenu/DevMenu.js +31 -0
  743. package/src/private/devsupport/devmenu/elementinspector/BorderBox.js +44 -0
  744. package/src/private/devsupport/devmenu/elementinspector/BoxInspector.js +131 -0
  745. package/src/private/devsupport/devmenu/elementinspector/ElementBox.js +153 -0
  746. package/src/private/devsupport/devmenu/elementinspector/ElementProperties.js +126 -0
  747. package/src/private/devsupport/devmenu/elementinspector/Inspector.js +211 -0
  748. package/src/private/devsupport/devmenu/elementinspector/InspectorOverlay.js +67 -0
  749. package/src/private/devsupport/devmenu/elementinspector/InspectorPanel.js +167 -0
  750. package/src/private/devsupport/devmenu/elementinspector/NetworkOverlay.js +628 -0
  751. package/src/private/devsupport/devmenu/elementinspector/ReactDevToolsOverlay.js +166 -0
  752. package/src/private/devsupport/devmenu/elementinspector/StyleInspector.js +77 -0
  753. package/src/private/devsupport/devmenu/elementinspector/XHRInterceptor.js +217 -0
  754. package/src/private/devsupport/devmenu/elementinspector/getInspectorDataForViewAtPoint.js +81 -0
  755. package/src/private/devsupport/devmenu/elementinspector/resolveBoxStyle.js +115 -0
  756. package/src/private/devsupport/devmenu/perfmonitor/PerformanceOverlay.js +66 -0
  757. package/src/private/devsupport/devmenu/specs/NativeDevMenu.js +22 -0
  758. package/src/private/devsupport/rndevtools/FuseboxSessionObserver.js +41 -0
  759. package/src/private/devsupport/rndevtools/ReactDevToolsSettingsManager.android.js +19 -0
  760. package/src/private/devsupport/rndevtools/ReactDevToolsSettingsManager.ios.js +27 -0
  761. package/src/private/devsupport/rndevtools/ReactDevToolsSettingsManager.win32.js +19 -0
  762. package/src/private/devsupport/rndevtools/setUpFuseboxReactDevToolsDispatcher.js +113 -0
  763. package/src/private/devsupport/rndevtools/specs/NativeReactDevToolsRuntimeSettingsModule.js +33 -0
  764. package/src/private/devsupport/rndevtools/specs/NativeReactDevToolsSettingsManager.js +22 -0
  765. package/src/private/featureflags/ReactNativeFeatureFlags.js +455 -0
  766. package/src/private/featureflags/ReactNativeFeatureFlagsBase.js +136 -0
  767. package/src/private/featureflags/specs/NativeReactNativeFeatureFlags.js +102 -0
  768. package/src/private/renderer/errorhandling/ErrorHandlers.js +83 -0
  769. package/src/private/setup/setUpDOM.js +76 -0
  770. package/src/private/setup/setUpDefaultReactNativeEnvironment.js +44 -0
  771. package/src/private/setup/setUpIntersectionObserver.js +27 -0
  772. package/src/private/setup/setUpMutationObserver.js +31 -0
  773. package/src/private/setup/setUpPerformanceObserver.js +71 -0
  774. package/src/private/specs_DEPRECATED/components/ActivityIndicatorViewNativeComponent.js +56 -0
  775. package/src/private/specs_DEPRECATED/components/AndroidDrawerLayoutNativeComponent.js +124 -0
  776. package/src/private/specs_DEPRECATED/components/AndroidHorizontalScrollContentViewNativeComponent.js +27 -0
  777. package/src/private/specs_DEPRECATED/components/AndroidSwipeRefreshLayoutNativeComponent.js +74 -0
  778. package/src/private/specs_DEPRECATED/components/AndroidSwitchNativeComponent.js +65 -0
  779. package/src/private/specs_DEPRECATED/components/DebuggingOverlayNativeComponent.js +62 -0
  780. package/src/private/specs_DEPRECATED/components/ProgressBarAndroidNativeComponent.js +39 -0
  781. package/src/private/specs_DEPRECATED/components/PullToRefreshViewNativeComponent.js +74 -0
  782. package/src/private/specs_DEPRECATED/components/RCTInputAccessoryViewNativeComponent.js +29 -0
  783. package/src/private/specs_DEPRECATED/components/RCTModalHostViewNativeComponent.js +156 -0
  784. package/src/private/specs_DEPRECATED/components/RCTSafeAreaViewNativeComponent.js +28 -0
  785. package/src/private/specs_DEPRECATED/components/SwitchNativeComponent.js +61 -0
  786. package/src/private/specs_DEPRECATED/components/UnimplementedNativeViewNativeComponent.js +26 -0
  787. package/src/private/specs_DEPRECATED/modules/NativeAccessibilityInfo.js +42 -0
  788. package/src/private/specs_DEPRECATED/modules/NativeAccessibilityInfoWin32.js +48 -0
  789. package/src/private/specs_DEPRECATED/modules/NativeAccessibilityManager.js +70 -0
  790. package/src/private/specs_DEPRECATED/modules/NativeActionSheetManager.js +56 -0
  791. package/src/private/specs_DEPRECATED/modules/NativeAlertManager.js +35 -0
  792. package/src/private/specs_DEPRECATED/modules/NativeAnimatedModule.js +77 -0
  793. package/src/private/specs_DEPRECATED/modules/NativeAnimatedTurboModule.js +78 -0
  794. package/src/private/specs_DEPRECATED/modules/NativeAppState.js +33 -0
  795. package/src/private/specs_DEPRECATED/modules/NativeAppearance.js +30 -0
  796. package/src/private/specs_DEPRECATED/modules/NativeBlobModule.js +61 -0
  797. package/src/private/specs_DEPRECATED/modules/NativeClipboard.js +21 -0
  798. package/src/private/specs_DEPRECATED/modules/NativeDevLoadingView.js +24 -0
  799. package/src/private/specs_DEPRECATED/modules/NativeDevSettings.js +33 -0
  800. package/src/private/specs_DEPRECATED/modules/NativeDeviceEventManager.js +19 -0
  801. package/src/private/specs_DEPRECATED/modules/NativeDeviceInfo.js +59 -0
  802. package/src/private/specs_DEPRECATED/modules/NativeDialogManagerAndroid.js +48 -0
  803. package/src/private/specs_DEPRECATED/modules/NativeExceptionsManager.js +91 -0
  804. package/src/private/specs_DEPRECATED/modules/NativeFileReaderModule.js +22 -0
  805. package/src/private/specs_DEPRECATED/modules/NativeFrameRateLogger.js +22 -0
  806. package/src/private/specs_DEPRECATED/modules/NativeHeadlessJsTaskSupport.js +20 -0
  807. package/src/private/specs_DEPRECATED/modules/NativeI18nManager.js +28 -0
  808. package/src/private/specs_DEPRECATED/modules/NativeImageEditor.js +52 -0
  809. package/src/private/specs_DEPRECATED/modules/NativeImageLoaderAndroid.js +30 -0
  810. package/src/private/specs_DEPRECATED/modules/NativeImageLoaderIOS.js +37 -0
  811. package/src/private/specs_DEPRECATED/modules/NativeImageLoaderWin32.js +45 -0
  812. package/src/private/specs_DEPRECATED/modules/NativeImageStoreAndroid.js +26 -0
  813. package/src/private/specs_DEPRECATED/modules/NativeImageStoreIOS.js +33 -0
  814. package/src/private/specs_DEPRECATED/modules/NativeIntentAndroid.js +30 -0
  815. package/src/private/specs_DEPRECATED/modules/NativeJSCHeapCapture.js +19 -0
  816. package/src/private/specs_DEPRECATED/modules/NativeKeyboardObserver.js +20 -0
  817. package/src/private/specs_DEPRECATED/modules/NativeLinkingManager.js +27 -0
  818. package/src/private/specs_DEPRECATED/modules/NativeLogBox.js +20 -0
  819. package/src/private/specs_DEPRECATED/modules/NativeModalManager.js +21 -0
  820. package/src/private/specs_DEPRECATED/modules/NativeNetworkingAndroid.js +37 -0
  821. package/src/private/specs_DEPRECATED/modules/NativeNetworkingIOS.js +37 -0
  822. package/src/private/specs_DEPRECATED/modules/NativePermissionsAndroid.js +78 -0
  823. package/src/private/specs_DEPRECATED/modules/NativePlatformConstantsAndroid.js +44 -0
  824. package/src/private/specs_DEPRECATED/modules/NativePlatformConstantsIOS.js +37 -0
  825. package/src/private/specs_DEPRECATED/modules/NativePlatformConstantsWin.js +39 -0
  826. package/src/private/specs_DEPRECATED/modules/NativePushNotificationManagerIOS.js +103 -0
  827. package/src/private/specs_DEPRECATED/modules/NativeRedBox.js +20 -0
  828. package/src/private/specs_DEPRECATED/modules/NativeSampleTurboModule.js +69 -0
  829. package/src/private/specs_DEPRECATED/modules/NativeSegmentFetcher.js +28 -0
  830. package/src/private/specs_DEPRECATED/modules/NativeSettingsManager.js +25 -0
  831. package/src/private/specs_DEPRECATED/modules/NativeShareModule.js +23 -0
  832. package/src/private/specs_DEPRECATED/modules/NativeSoundManager.js +22 -0
  833. package/src/private/specs_DEPRECATED/modules/NativeSourceCode.js +36 -0
  834. package/src/private/specs_DEPRECATED/modules/NativeStatusBarManagerAndroid.js +68 -0
  835. package/src/private/specs_DEPRECATED/modules/NativeStatusBarManagerIOS.js +89 -0
  836. package/src/private/specs_DEPRECATED/modules/NativeTiming.js +26 -0
  837. package/src/private/specs_DEPRECATED/modules/NativeToastAndroid.js +38 -0
  838. package/src/private/specs_DEPRECATED/modules/NativeUIManager.js +187 -0
  839. package/src/private/specs_DEPRECATED/modules/NativeVibration.js +24 -0
  840. package/src/private/specs_DEPRECATED/modules/NativeWebSocketModule.js +34 -0
  841. package/src/private/styles/composeStyles.js +27 -0
  842. package/src/private/types/HostComponent.js +16 -0
  843. package/src/private/types/HostInstance.js +116 -0
  844. package/src/private/webapis/dom/events/CustomEvent.js +38 -0
  845. package/src/private/webapis/dom/events/Event.js +239 -0
  846. package/src/private/webapis/dom/events/EventHandlerAttributes.js +130 -0
  847. package/src/private/webapis/dom/events/EventTarget.js +439 -0
  848. package/src/private/webapis/dom/events/internals/EventInternals.js +120 -0
  849. package/src/private/webapis/dom/events/internals/EventTargetInternals.js +52 -0
  850. package/src/private/webapis/dom/nodes/ReactNativeDocument.js +121 -0
  851. package/src/private/webapis/dom/nodes/ReactNativeElement.js +242 -0
  852. package/src/private/webapis/dom/nodes/ReadOnlyCharacterData.js +72 -0
  853. package/src/private/webapis/dom/nodes/ReadOnlyElement.js +247 -0
  854. package/src/private/webapis/dom/nodes/ReadOnlyNode.js +334 -0
  855. package/src/private/webapis/dom/nodes/ReadOnlyText.js +30 -0
  856. package/src/private/webapis/dom/nodes/internals/NodeInternals.js +150 -0
  857. package/src/private/webapis/dom/nodes/internals/ReactNativeDocumentElementInstanceHandle.js +55 -0
  858. package/src/private/webapis/dom/nodes/internals/ReactNativeDocumentInstanceHandle.js +44 -0
  859. package/src/private/webapis/dom/nodes/internals/Traversal.js +54 -0
  860. package/src/private/webapis/dom/nodes/specs/NativeDOM.js +617 -0
  861. package/src/private/webapis/dom/oldstylecollections/HTMLCollection.js +85 -0
  862. package/src/private/webapis/dom/oldstylecollections/NodeList.js +107 -0
  863. package/src/private/webapis/errors/DOMException.js +166 -0
  864. package/src/private/webapis/geometry/DOMRect.js +87 -0
  865. package/src/private/webapis/geometry/DOMRectList.js +79 -0
  866. package/src/private/webapis/geometry/DOMRectReadOnly.js +194 -0
  867. package/src/private/webapis/html/events/MessageEvent.js +56 -0
  868. package/src/private/webapis/idlecallbacks/specs/NativeIdleCallbacks.js +36 -0
  869. package/src/private/webapis/intersectionobserver/IntersectionObserver.js +353 -0
  870. package/src/private/webapis/intersectionobserver/IntersectionObserverEntry.js +170 -0
  871. package/src/private/webapis/intersectionobserver/internals/IntersectionObserverManager.js +290 -0
  872. package/src/private/webapis/intersectionobserver/specs/NativeIntersectionObserver.js +51 -0
  873. package/src/private/webapis/microtasks/specs/NativeMicrotasks.js +21 -0
  874. package/src/private/webapis/mutationobserver/MutationObserver.js +161 -0
  875. package/src/private/webapis/mutationobserver/MutationRecord.js +85 -0
  876. package/src/private/webapis/mutationobserver/internals/MutationObserverManager.js +203 -0
  877. package/src/private/webapis/mutationobserver/specs/NativeMutationObserver.js +55 -0
  878. package/src/private/webapis/performance/EventTiming.js +141 -0
  879. package/src/private/webapis/performance/LongTasks.js +39 -0
  880. package/src/private/webapis/performance/MemoryInfo.js +57 -0
  881. package/src/private/webapis/performance/Performance.js +459 -0
  882. package/src/private/webapis/performance/PerformanceEntry.js +81 -0
  883. package/src/private/webapis/performance/PerformanceObserver.js +215 -0
  884. package/src/private/webapis/performance/ReactNativeStartupTiming.js +94 -0
  885. package/src/private/webapis/performance/ResourceTiming.js +108 -0
  886. package/src/private/webapis/performance/UserTiming.js +125 -0
  887. package/src/private/webapis/performance/UserTimingExtensibility.js.flow +38 -0
  888. package/src/private/webapis/performance/internals/RawPerformanceEntry.js +125 -0
  889. package/src/private/webapis/performance/internals/Utilities.js +27 -0
  890. package/src/private/webapis/performance/specs/NativePerformance.js +99 -0
  891. package/src/private/webapis/structuredClone/structuredClone.js +233 -0
  892. package/src/private/webapis/utils/ArrayLikeUtils.js +46 -0
  893. package/src/private/webapis/webidl/PlatformObjects.js +59 -0
  894. package/src/private/webapis/websockets/events/CloseEvent.js +52 -0
  895. package/src/private/webapis/xhr/events/ProgressEvent.js +52 -0
  896. package/src/types/globals.d.ts +670 -0
  897. package/src-win/Libraries/Components/AccessibilityInfo/AccessibilityInfo.d.ts +177 -0
  898. package/src-win/Libraries/Components/Button/ButtonWin32.Props.ts +45 -0
  899. package/src-win/Libraries/Components/Button/ButtonWin32.tsx +94 -0
  900. package/src-win/Libraries/Components/EnterString.win32.tsx +110 -0
  901. package/src-win/Libraries/Components/TextInput/Tests/TextInputTest.tsx +185 -0
  902. package/src-win/Libraries/Components/Touchable/Tests/TouchableWin32Test.tsx +502 -0
  903. package/src-win/Libraries/Components/Touchable/TouchableNativeFeedback.d.ts +119 -0
  904. package/src-win/Libraries/Components/Touchable/TouchableWin32.Props.tsx +46 -0
  905. package/src-win/Libraries/Components/Touchable/TouchableWin32.Types.tsx +137 -0
  906. package/src-win/Libraries/Components/Touchable/TouchableWin32.tsx +624 -0
  907. package/src-win/Libraries/Components/View/ViewAccessibility.d.ts +567 -0
  908. package/src-win/Libraries/Components/View/ViewPropTypes.d.ts +374 -0
  909. package/src-win/Libraries/Components/View/ViewWin32.d.ts +30 -0
  910. package/src-win/Libraries/Image/ImageTypes.ts +27 -0
  911. package/src-win/Libraries/Image/Tests/ImageWin32Test.tsx +22 -0
  912. package/src-win/Libraries/Image/Tests/img/dpitest.png +0 -0
  913. package/src-win/Libraries/Image/Tests/img/dpitest@1.5x.png +0 -0
  914. package/src-win/Libraries/Image/Tests/img/dpitest@2x.png +0 -0
  915. package/src-win/Libraries/Image/Tests/img/dpitest@3x.png +0 -0
  916. package/src-win/Libraries/Image/Tests/img/en-us/dpitest.png +0 -0
  917. package/src-win/Libraries/Image/Tests/img/en-us/dpitest@1.5x.png +0 -0
  918. package/src-win/Libraries/Image/Tests/img/en-us/dpitest@3x.png +0 -0
  919. package/src-win/Libraries/PersonaCoin/PersonaCoin.tsx +13 -0
  920. package/src-win/Libraries/PersonaCoin/PersonaCoinPropTypes.ts +17 -0
  921. package/src-win/Libraries/PersonaCoin/PersonaCoinTypes.ts +36 -0
  922. package/src-win/Libraries/StyleSheet/PlatformColorValueTypesWin32.d.ts +38 -0
  923. package/src-win/Libraries/Text/Text.d.ts +313 -0
  924. package/src-win/Libraries/Utilities/FocusManager.win32.d.ts +12 -0
  925. package/src-win/Libraries/__tests__/__snapshots__/ButtonWin32-test.js.snap +22 -0
  926. package/src-win/Libraries/platform-types.d.ts +25 -0
  927. package/types/index.d.ts +166 -0
  928. package/types/modules/BatchedBridge.d.ts +32 -0
  929. package/types/modules/Codegen.d.ts +80 -0
  930. package/types/modules/Devtools.d.ts +46 -0
  931. package/types/private/TimerMixin.d.ts +19 -0
  932. package/types/private/Utilities.d.ts +10 -0
  933. package/types/public/DeprecatedPropertiesAlias.d.ts +185 -0
  934. package/types/public/Insets.d.ts +15 -0
  935. package/types/public/ReactNativeRenderer.d.ts +144 -0
  936. package/types/public/ReactNativeTypes.d.ts +139 -0
  937. package/IntegrationTests/AsyncStorageTest.js +0 -217
  938. package/IntegrationTests/PropertiesUpdateTest.js +0 -29
  939. package/IntegrationTests/RCTRootViewIntegrationTestApp.js +0 -92
  940. package/IntegrationTests/ReactContentSizeUpdateTest.js +0 -91
  941. package/IntegrationTests/SizeFlexibilityUpdateTest.js +0 -108
  942. package/IntegrationTests/launchWebSocketServer.command +0 -18
  943. package/Libraries/Animated/examples/demo.html +0 -712
  944. package/Libraries/Animated/examples/pic1.jpg +0 -0
  945. package/Libraries/Animated/examples/pic2.jpg +0 -0
  946. package/Libraries/Animated/examples/pic3.jpg +0 -0
  947. package/Libraries/Animated/release/gulpfile.js +0 -155
  948. package/Libraries/Animated/src/Animated.js +0 -49
  949. package/Libraries/Animated/src/AnimatedEvent.js +0 -233
  950. package/Libraries/Animated/src/AnimatedImplementation.js +0 -712
  951. package/Libraries/Animated/src/AnimatedMock.js +0 -156
  952. package/Libraries/Animated/src/AnimatedWeb.js +0 -23
  953. package/Libraries/Animated/src/Easing.js +0 -252
  954. package/Libraries/Animated/src/NativeAnimatedHelper.js +0 -342
  955. package/Libraries/Animated/src/NativeAnimatedModule.js +0 -66
  956. package/Libraries/Animated/src/SpringConfig.js +0 -103
  957. package/Libraries/Animated/src/animations/Animation.js +0 -73
  958. package/Libraries/Animated/src/animations/DecayAnimation.js +0 -120
  959. package/Libraries/Animated/src/animations/SpringAnimation.js +0 -359
  960. package/Libraries/Animated/src/animations/TimingAnimation.js +0 -165
  961. package/Libraries/Animated/src/bezier.js +0 -153
  962. package/Libraries/Animated/src/components/AnimatedFlatList.js +0 -32
  963. package/Libraries/Animated/src/components/AnimatedImage.js +0 -25
  964. package/Libraries/Animated/src/components/AnimatedScrollView.js +0 -32
  965. package/Libraries/Animated/src/components/AnimatedSectionList.js +0 -32
  966. package/Libraries/Animated/src/components/AnimatedText.js +0 -25
  967. package/Libraries/Animated/src/components/AnimatedView.js +0 -23
  968. package/Libraries/Animated/src/createAnimatedComponent.js +0 -223
  969. package/Libraries/Animated/src/nodes/AnimatedAddition.js +0 -63
  970. package/Libraries/Animated/src/nodes/AnimatedDiffClamp.js +0 -71
  971. package/Libraries/Animated/src/nodes/AnimatedDivision.js +0 -68
  972. package/Libraries/Animated/src/nodes/AnimatedInterpolation.js +0 -373
  973. package/Libraries/Animated/src/nodes/AnimatedModulo.js +0 -62
  974. package/Libraries/Animated/src/nodes/AnimatedMultiplication.js +0 -63
  975. package/Libraries/Animated/src/nodes/AnimatedNode.js +0 -184
  976. package/Libraries/Animated/src/nodes/AnimatedProps.js +0 -176
  977. package/Libraries/Animated/src/nodes/AnimatedStyle.js +0 -127
  978. package/Libraries/Animated/src/nodes/AnimatedSubtraction.js +0 -63
  979. package/Libraries/Animated/src/nodes/AnimatedTracking.js +0 -102
  980. package/Libraries/Animated/src/nodes/AnimatedTransform.js +0 -121
  981. package/Libraries/Animated/src/nodes/AnimatedValue.js +0 -265
  982. package/Libraries/Animated/src/nodes/AnimatedValueXY.js +0 -226
  983. package/Libraries/Animated/src/nodes/AnimatedWithChildren.js +0 -87
  984. package/Libraries/Animated/src/polyfills/InteractionManager.js +0 -15
  985. package/Libraries/Animated/src/polyfills/Set.js +0 -26
  986. package/Libraries/Animated/src/polyfills/flattenStyle.js +0 -13
  987. package/Libraries/BatchedBridge/__mocks__/MessageQueueTestConfig.js +0 -38
  988. package/Libraries/BatchedBridge/__mocks__/MessageQueueTestModule.js +0 -22
  989. package/Libraries/Blob/__mocks__/BlobModule.js +0 -16
  990. package/Libraries/Blob/__mocks__/FileReaderModule.js +0 -20
  991. package/Libraries/BugReporting/BugReporting.js +0 -141
  992. package/Libraries/BugReporting/NativeBugReporting.js +0 -20
  993. package/Libraries/BugReporting/dumpReactTree.js +0 -151
  994. package/Libraries/BugReporting/getReactData.js +0 -178
  995. package/Libraries/Components/AccessibilityInfo/AccessibilityInfo.android.js +0 -162
  996. package/Libraries/Components/AccessibilityInfo/AccessibilityInfo.ios.js +0 -271
  997. package/Libraries/Components/AccessibilityInfo/NativeAccessibilityInfo.win32.js +0 -33
  998. package/Libraries/Components/AppleTV/NativeTVNavigationEventEmitter.js +0 -23
  999. package/Libraries/Components/AppleTV/TVEventHandler.js +0 -52
  1000. package/Libraries/Components/CheckBox/AndroidCheckBoxNativeComponent.js +0 -74
  1001. package/Libraries/Components/CheckBox/CheckBox.android.js +0 -228
  1002. package/Libraries/Components/CheckBox/CheckBox.ios.js +0 -13
  1003. package/Libraries/Components/CheckBox/CheckBox.win32.js +0 -12
  1004. package/Libraries/Components/DatePicker/DatePickerIOS.android.js +0 -46
  1005. package/Libraries/Components/DatePicker/DatePickerIOS.ios.js +0 -189
  1006. package/Libraries/Components/DatePicker/DatePickerIOS.win32.js +0 -46
  1007. package/Libraries/Components/DatePicker/RCTDatePickerNativeComponent.js +0 -60
  1008. package/Libraries/Components/DatePickerAndroid/DatePickerAndroid.android.js +0 -89
  1009. package/Libraries/Components/DatePickerAndroid/DatePickerAndroid.ios.js +0 -30
  1010. package/Libraries/Components/DatePickerAndroid/DatePickerAndroid.win32.js +0 -30
  1011. package/Libraries/Components/DatePickerAndroid/DatePickerAndroidTypes.js +0 -30
  1012. package/Libraries/Components/DatePickerAndroid/NativeDatePickerAndroid.js +0 -22
  1013. package/Libraries/Components/MaskedView/MaskedViewIOS.android.js +0 -13
  1014. package/Libraries/Components/MaskedView/MaskedViewIOS.ios.js +0 -93
  1015. package/Libraries/Components/MaskedView/MaskedViewIOS.win32.js +0 -13
  1016. package/Libraries/Components/MaskedView/RCTMaskedViewNativeComponent.js +0 -21
  1017. package/Libraries/Components/Picker/AndroidDialogPickerNativeComponent.js +0 -68
  1018. package/Libraries/Components/Picker/AndroidDropdownPickerNativeComponent.js +0 -68
  1019. package/Libraries/Components/Picker/Picker.js +0 -159
  1020. package/Libraries/Components/Picker/Picker.win32.d.ts +0 -1
  1021. package/Libraries/Components/Picker/Picker.win32.js +0 -80
  1022. package/Libraries/Components/Picker/PickerAndroid.android.js +0 -146
  1023. package/Libraries/Components/Picker/PickerAndroid.ios.js +0 -12
  1024. package/Libraries/Components/Picker/PickerAndroid.js +0 -12
  1025. package/Libraries/Components/Picker/PickerIOS.android.js +0 -14
  1026. package/Libraries/Components/Picker/PickerIOS.ios.js +0 -164
  1027. package/Libraries/Components/Picker/PickerIOS.js +0 -14
  1028. package/Libraries/Components/Picker/RCTPickerNativeComponent.js +0 -63
  1029. package/Libraries/Components/ProgressBarAndroid/ProgressBarAndroid.ios.js +0 -12
  1030. package/Libraries/Components/ProgressViewIOS/ProgressViewIOS.android.js +0 -46
  1031. package/Libraries/Components/ProgressViewIOS/ProgressViewIOS.ios.js +0 -77
  1032. package/Libraries/Components/ProgressViewIOS/ProgressViewIOS.win32.js +0 -8
  1033. package/Libraries/Components/ProgressViewIOS/RCTProgressViewNativeComponent.js +0 -35
  1034. package/Libraries/Components/RefreshControl/__mocks__/RefreshControlMock.js +0 -33
  1035. package/Libraries/Components/ScrollResponder.js +0 -773
  1036. package/Libraries/Components/ScrollView/ScrollViewViewConfig.js +0 -77
  1037. package/Libraries/Components/ScrollView/__mocks__/ScrollViewMock.js +0 -39
  1038. package/Libraries/Components/SegmentedControlIOS/RCTSegmentedControlNativeComponent.js +0 -46
  1039. package/Libraries/Components/SegmentedControlIOS/SegmentedControlIOS.android.js +0 -46
  1040. package/Libraries/Components/SegmentedControlIOS/SegmentedControlIOS.ios.js +0 -123
  1041. package/Libraries/Components/SegmentedControlIOS/SegmentedControlIOS.js +0 -46
  1042. package/Libraries/Components/Slider/Slider.js +0 -276
  1043. package/Libraries/Components/Slider/SliderNativeComponent.js +0 -60
  1044. package/Libraries/Components/StaticContainer.react.js +0 -51
  1045. package/Libraries/Components/StatusBar/StatusBarIOS.js +0 -22
  1046. package/Libraries/Components/Text/TextWin32.Props.d.ts +0 -26
  1047. package/Libraries/Components/Text/TextWin32.Props.js +0 -3
  1048. package/Libraries/Components/Text/TextWin32.d.ts +0 -6
  1049. package/Libraries/Components/Text/TextWin32.js +0 -41
  1050. package/Libraries/Components/TextInput/AndroidTextInputViewConfig.js +0 -84
  1051. package/Libraries/Components/TextInput/RCTSinglelineTextInputViewConfig.js +0 -134
  1052. package/Libraries/Components/TextInput/TextInput.Types.win32.d.ts +0 -51
  1053. package/Libraries/Components/TextInput/TextInput.Types.win32.js +0 -3
  1054. package/Libraries/Components/TextInput/TextInput.win32.d.ts +0 -68
  1055. package/Libraries/Components/Touchable/TVTouchable.js +0 -55
  1056. package/Libraries/Components/Touchable/TouchableNativeFeedback.Props.d.ts +0 -7
  1057. package/Libraries/Components/Touchable/TouchableNativeFeedback.Props.js +0 -3
  1058. package/Libraries/Components/Touchable/TouchableNativeFeedback.win32.d.ts +0 -16
  1059. package/Libraries/Components/Touchable/__mocks__/ensureComponentIsNative.js +0 -12
  1060. package/Libraries/Components/Touchable/ensurePositiveDelayProps.js +0 -26
  1061. package/Libraries/Components/View/ReactNativeViewViewConfig.js +0 -347
  1062. package/Libraries/Components/View/ReactNativeViewViewConfig.win32.js +0 -384
  1063. package/Libraries/Components/View/ReactNativeViewViewConfigAndroid.js +0 -74
  1064. package/Libraries/Components/View/Tests/ViewWin32Test.d.ts +0 -8
  1065. package/Libraries/Components/View/Tests/ViewWin32Test.js +0 -235
  1066. package/Libraries/Components/View/ViewWin32.Props.d.ts +0 -149
  1067. package/Libraries/Components/View/ViewWin32.Props.js +0 -11
  1068. package/Libraries/Core/__mocks__/ErrorUtils.js +0 -33
  1069. package/Libraries/Core/setUpSystrace.js +0 -21
  1070. package/Libraries/DeprecatedPropTypes/DeprecatedColorPropType.js +0 -76
  1071. package/Libraries/DeprecatedPropTypes/DeprecatedEdgeInsetsPropType.js +0 -28
  1072. package/Libraries/DeprecatedPropTypes/DeprecatedImagePropType.js +0 -82
  1073. package/Libraries/DeprecatedPropTypes/DeprecatedImageSourcePropType.js +0 -40
  1074. package/Libraries/DeprecatedPropTypes/DeprecatedImageStylePropTypes.js +0 -76
  1075. package/Libraries/DeprecatedPropTypes/DeprecatedLayoutPropTypes.js +0 -233
  1076. package/Libraries/DeprecatedPropTypes/DeprecatedPointPropType.js +0 -24
  1077. package/Libraries/DeprecatedPropTypes/DeprecatedShadowPropTypesIOS.js +0 -30
  1078. package/Libraries/DeprecatedPropTypes/DeprecatedStyleSheetPropType.js +0 -32
  1079. package/Libraries/DeprecatedPropTypes/DeprecatedTVViewPropTypes.js +0 -23
  1080. package/Libraries/DeprecatedPropTypes/DeprecatedTextInputPropTypes.js +0 -622
  1081. package/Libraries/DeprecatedPropTypes/DeprecatedTextPropTypes.js +0 -158
  1082. package/Libraries/DeprecatedPropTypes/DeprecatedTextStylePropTypes.js +0 -157
  1083. package/Libraries/DeprecatedPropTypes/DeprecatedTransformPropTypes.js +0 -99
  1084. package/Libraries/DeprecatedPropTypes/DeprecatedViewAccessibility.js +0 -44
  1085. package/Libraries/DeprecatedPropTypes/DeprecatedViewPropTypes.js +0 -408
  1086. package/Libraries/DeprecatedPropTypes/DeprecatedViewStylePropTypes.js +0 -68
  1087. package/Libraries/DeprecatedPropTypes/deprecatedCreateStrictShapeTypeChecker.js +0 -86
  1088. package/Libraries/EventEmitter/__mocks__/NativeEventEmitter.js +0 -25
  1089. package/Libraries/HeapCapture/HeapCapture.js +0 -31
  1090. package/Libraries/HeapCapture/NativeJSCHeapCapture.js +0 -20
  1091. package/Libraries/Image/ImagePickerIOS.js +0 -105
  1092. package/Libraries/Image/ImageViewViewConfig.js +0 -68
  1093. package/Libraries/Image/NativeImagePickerIOS.js +0 -40
  1094. package/Libraries/Image/assetPathUtils.js +0 -91
  1095. package/Libraries/Inspector/BorderBox.js +0 -32
  1096. package/Libraries/Inspector/BoxInspector.js +0 -110
  1097. package/Libraries/Inspector/ElementBox.js +0 -138
  1098. package/Libraries/Inspector/ElementProperties.js +0 -147
  1099. package/Libraries/Inspector/Inspector.js +0 -312
  1100. package/Libraries/Inspector/Inspector.win32.js +0 -318
  1101. package/Libraries/Inspector/InspectorOverlay.js +0 -90
  1102. package/Libraries/Inspector/InspectorOverlay.win32.js +0 -91
  1103. package/Libraries/Inspector/InspectorPanel.js +0 -170
  1104. package/Libraries/Inspector/NetworkOverlay.js +0 -601
  1105. package/Libraries/Inspector/PerformanceOverlay.js +0 -63
  1106. package/Libraries/Inspector/StyleInspector.js +0 -70
  1107. package/Libraries/Inspector/resolveBoxStyle.js +0 -114
  1108. package/Libraries/Interaction/Batchinator.js +0 -76
  1109. package/Libraries/Interaction/BridgeSpyStallHandler.js +0 -62
  1110. package/Libraries/Interaction/InteractionMixin.js +0 -55
  1111. package/Libraries/Interaction/InteractionStallDebugger.js +0 -23
  1112. package/Libraries/Interaction/JSEventLoopWatchdog.js +0 -93
  1113. package/Libraries/Interaction/TaskQueue.js +0 -184
  1114. package/Libraries/JSInspector/InspectorAgent.js +0 -27
  1115. package/Libraries/JSInspector/JSInspector.js +0 -36
  1116. package/Libraries/JSInspector/NetworkAgent.js +0 -300
  1117. package/Libraries/Linking/NativeLinking.js +0 -41
  1118. package/Libraries/Lists/__flowtests__/FlatList-flowtest.js +0 -117
  1119. package/Libraries/Lists/__flowtests__/SectionList-flowtest.js +0 -134
  1120. package/Libraries/NativeModules/specs/NativeAnimationsDebugModule.js +0 -21
  1121. package/Libraries/Network/XHRInterceptor.js +0 -166
  1122. package/Libraries/NewAppScreen/components/Colors.js +0 -20
  1123. package/Libraries/NewAppScreen/components/DebugInstructions.js +0 -38
  1124. package/Libraries/NewAppScreen/components/Header.js +0 -55
  1125. package/Libraries/NewAppScreen/components/LearnMoreLinks.js +0 -123
  1126. package/Libraries/NewAppScreen/components/ReloadInstructions.js +0 -36
  1127. package/Libraries/NewAppScreen/components/logo.png +0 -0
  1128. package/Libraries/NewAppScreen/index.js +0 -19
  1129. package/Libraries/Performance/NativeJSCSamplingProfiler.js +0 -20
  1130. package/Libraries/Performance/PureComponentDebug.js +0 -73
  1131. package/Libraries/Performance/QuickPerformanceLogger.js +0 -101
  1132. package/Libraries/Performance/SamplingProfiler.js +0 -39
  1133. package/Libraries/ReactNative/DummyUIManager.js +0 -123
  1134. package/Libraries/ReactNative/ReactFabricInternals.js +0 -17
  1135. package/Libraries/ReactNative/RootTagContext.js +0 -15
  1136. package/Libraries/ReactNative/queryLayoutByID.js +0 -58
  1137. package/Libraries/Renderer/implementations/ReactFabric-dev.fb.js +0 -20493
  1138. package/Libraries/Renderer/implementations/ReactFabric-prod.fb.js +0 -7440
  1139. package/Libraries/Renderer/implementations/ReactFabric-profiling.fb.js +0 -7718
  1140. package/Libraries/Renderer/implementations/ReactNativeRenderer-dev.fb.js +0 -21091
  1141. package/Libraries/Renderer/implementations/ReactNativeRenderer-prod.fb.js +0 -7677
  1142. package/Libraries/Renderer/implementations/ReactNativeRenderer-profiling.fb.js +0 -7955
  1143. package/Libraries/Renderer/shims/ReactTypes.js +0 -192
  1144. package/Libraries/Settings/Settings.android.js +0 -33
  1145. package/Libraries/Storage/AsyncStorage.js +0 -360
  1146. package/Libraries/Storage/NativeAsyncStorage.js +0 -44
  1147. package/Libraries/StyleSheet/PlatformColorValueTypesAndroid.android.js +0 -18
  1148. package/Libraries/StyleSheet/PlatformColorValueTypesAndroid.js +0 -17
  1149. package/Libraries/StyleSheet/StyleSheet.win32.js +0 -366
  1150. package/Libraries/StyleSheet/StyleSheetValidation.js +0 -97
  1151. package/Libraries/StyleSheet/StyleSheetValidation.win32.js +0 -102
  1152. package/Libraries/StyleSheet/__flowtests__/StyleSheet-flowtest.js +0 -82
  1153. package/Libraries/Utilities/BackHandler.win32.d.ts +0 -2
  1154. package/Libraries/Utilities/DeviceInfo.win32.js +0 -21
  1155. package/Libraries/Utilities/JSDevSupportModule.js +0 -40
  1156. package/Libraries/Utilities/LoadingView.android.js +0 -29
  1157. package/Libraries/Utilities/LoadingView.ios.js +0 -40
  1158. package/Libraries/Utilities/LoadingView.js +0 -16
  1159. package/Libraries/Utilities/MatrixMath.js +0 -752
  1160. package/Libraries/Utilities/NativeJSDevSupport.js +0 -25
  1161. package/Libraries/Utilities/__mocks__/BackHandler.js +0 -50
  1162. package/Libraries/Utilities/__mocks__/GlobalPerformanceLogger.js +0 -16
  1163. package/Libraries/Utilities/__mocks__/PixelRatio.js +0 -25
  1164. package/Libraries/Utilities/buildStyleInterpolator.js +0 -211
  1165. package/Libraries/Utilities/clamp.js +0 -23
  1166. package/Libraries/Utilities/deprecatedPropType.js +0 -38
  1167. package/Libraries/Utilities/groupByEveryN.js +0 -51
  1168. package/Libraries/Utilities/infoLog.js +0 -19
  1169. package/Libraries/Utilities/mergeIntoFast.js +0 -26
  1170. package/Libraries/Utilities/registerGeneratedViewConfig.js +0 -83
  1171. package/Libraries/Utilities/setAndForwardRef.js +0 -71
  1172. package/Libraries/Utilities/truncate.js +0 -51
  1173. package/Libraries/Utilities/verifyComponentAttributeEquivalence.js +0 -134
  1174. package/Libraries/WebSocket/WebSocketEvent.js +0 -27
  1175. package/Libraries/WebSocket/__mocks__/event-target-shim.js +0 -27
  1176. package/Libraries/YellowBox/YellowBoxDeprecated.js +0 -75
  1177. package/Libraries/__flowtests__/ReactNativeTypes-flowtest.js +0 -32
  1178. package/Libraries/polyfills/Object.es7.js +0 -58
  1179. package/Libraries/polyfills/console.js +0 -641
  1180. package/Libraries/polyfills/error-guard.js +0 -115
  1181. package/Libraries/promiseRejectionIsError.js +0 -24
  1182. package/Libraries/vendor/emitter/EmitterSubscription.js +0 -59
  1183. package/Libraries/vendor/emitter/EventSubscription.js +0 -40
  1184. package/Libraries/vendor/emitter/EventSubscriptionVendor.js +0 -101
  1185. package/RNTester/APIExamples/AccessibilityExampleWin32.d.ts +0 -8
  1186. package/RNTester/APIExamples/AccessibilityExampleWin32.js +0 -262
  1187. package/RNTester/APIExamples/ThemingModuleAPI.d.ts +0 -8
  1188. package/RNTester/APIExamples/ThemingModuleAPI.js +0 -80
  1189. package/RNTester/js/RNTesterApp.android.js +0 -363
  1190. package/RNTester/js/RNTesterApp.ios.js +0 -272
  1191. package/RNTester/js/RNTesterApp.win32.js +0 -285
  1192. package/RNTester/js/assets/bandaged.png +0 -0
  1193. package/RNTester/js/assets/bunny.png +0 -0
  1194. package/RNTester/js/assets/call.png +0 -0
  1195. package/RNTester/js/assets/dislike.png +0 -0
  1196. package/RNTester/js/assets/fist.png +0 -0
  1197. package/RNTester/js/assets/flowers.png +0 -0
  1198. package/RNTester/js/assets/flux@3x.png +0 -0
  1199. package/RNTester/js/assets/hawk.png +0 -0
  1200. package/RNTester/js/assets/heart.png +0 -0
  1201. package/RNTester/js/assets/helloworld.html +0 -25
  1202. package/RNTester/js/assets/imageMask.png +0 -0
  1203. package/RNTester/js/assets/like.png +0 -0
  1204. package/RNTester/js/assets/liking.png +0 -0
  1205. package/RNTester/js/assets/messagingtest.html +0 -28
  1206. package/RNTester/js/assets/party.png +0 -0
  1207. package/RNTester/js/assets/poke.png +0 -0
  1208. package/RNTester/js/assets/relay@3x.png +0 -0
  1209. package/RNTester/js/assets/slider-left.png +0 -0
  1210. package/RNTester/js/assets/slider-left@2x.png +0 -0
  1211. package/RNTester/js/assets/slider-right.png +0 -0
  1212. package/RNTester/js/assets/slider-right@2x.png +0 -0
  1213. package/RNTester/js/assets/slider.png +0 -0
  1214. package/RNTester/js/assets/slider@2x.png +0 -0
  1215. package/RNTester/js/assets/superlike.png +0 -0
  1216. package/RNTester/js/assets/trees.jpg +0 -0
  1217. package/RNTester/js/assets/tumblr_mfqekpMktw1rn90umo1_500.gif +0 -0
  1218. package/RNTester/js/assets/uie_comment_highlighted@2x.png +0 -0
  1219. package/RNTester/js/assets/uie_comment_normal@2x.png +0 -0
  1220. package/RNTester/js/assets/uie_thumb_big.png +0 -0
  1221. package/RNTester/js/assets/uie_thumb_normal@2x.png +0 -0
  1222. package/RNTester/js/assets/uie_thumb_selected@2x.png +0 -0
  1223. package/RNTester/js/assets/victory.png +0 -0
  1224. package/RNTester/js/components/ListExampleShared.js +0 -377
  1225. package/RNTester/js/components/ListExampleShared.win32.js +0 -384
  1226. package/RNTester/js/components/RNTesterBlock.js +0 -105
  1227. package/RNTester/js/components/RNTesterButton.js +0 -50
  1228. package/RNTester/js/components/RNTesterExampleContainer.js +0 -80
  1229. package/RNTester/js/components/RNTesterExampleFilter.js +0 -120
  1230. package/RNTester/js/components/RNTesterExampleFilter.win32.js +0 -120
  1231. package/RNTester/js/components/RNTesterExampleList.js +0 -254
  1232. package/RNTester/js/components/RNTesterPage.js +0 -76
  1233. package/RNTester/js/components/RNTesterSettingSwitchRow.js +0 -60
  1234. package/RNTester/js/components/RNTesterTheme.js +0 -90
  1235. package/RNTester/js/components/RNTesterTitle.js +0 -58
  1236. package/RNTester/js/components/TextInlineView.js +0 -207
  1237. package/RNTester/js/components/TextLegend.js +0 -248
  1238. package/RNTester/js/components/createExamplePage.js +0 -31
  1239. package/RNTester/js/examples/Accessibility/AccessibilityAndroidExample.android.js +0 -177
  1240. package/RNTester/js/examples/Accessibility/AccessibilityExample.js +0 -792
  1241. package/RNTester/js/examples/Accessibility/AccessibilityIOSExample.js +0 -72
  1242. package/RNTester/js/examples/Accessibility/check.png +0 -0
  1243. package/RNTester/js/examples/Accessibility/mixed.png +0 -0
  1244. package/RNTester/js/examples/Accessibility/uncheck.png +0 -0
  1245. package/RNTester/js/examples/ActionSheetIOS/ActionSheetIOSExample.js +0 -342
  1246. package/RNTester/js/examples/ActivityIndicator/ActivityIndicatorExample.js +0 -162
  1247. package/RNTester/js/examples/Alert/AlertExample.js +0 -158
  1248. package/RNTester/js/examples/Alert/AlertIOSExample.js +0 -204
  1249. package/RNTester/js/examples/Animated/AnimatedExample.js +0 -347
  1250. package/RNTester/js/examples/Animated/AnimatedGratuitousApp/AnExApp.js +0 -407
  1251. package/RNTester/js/examples/Animated/AnimatedGratuitousApp/AnExBobble.js +0 -171
  1252. package/RNTester/js/examples/Animated/AnimatedGratuitousApp/AnExChained.js +0 -120
  1253. package/RNTester/js/examples/Animated/AnimatedGratuitousApp/AnExScroll.js +0 -124
  1254. package/RNTester/js/examples/Animated/AnimatedGratuitousApp/AnExSet.js +0 -149
  1255. package/RNTester/js/examples/Animated/AnimatedGratuitousApp/AnExSlides.md +0 -107
  1256. package/RNTester/js/examples/Animated/AnimatedGratuitousApp/AnExTilt.js +0 -154
  1257. package/RNTester/js/examples/AppState/AppStateExample.js +0 -106
  1258. package/RNTester/js/examples/Appearance/AppearanceExample.js +0 -219
  1259. package/RNTester/js/examples/AsyncStorage/AsyncStorageExample.js +0 -103
  1260. package/RNTester/js/examples/Border/BorderExample.js +0 -301
  1261. package/RNTester/js/examples/BoxShadow/BoxShadowExample.js +0 -100
  1262. package/RNTester/js/examples/Button/ButtonExample.js +0 -127
  1263. package/RNTester/js/examples/CheckBox/CheckBoxExample.js +0 -148
  1264. package/RNTester/js/examples/Clipboard/ClipboardExample.js +0 -68
  1265. package/RNTester/js/examples/ColorGradientWin32Example.js +0 -109
  1266. package/RNTester/js/examples/Crash/CrashExample.js +0 -52
  1267. package/RNTester/js/examples/DatePicker/DatePickerAndroidExample.js +0 -170
  1268. package/RNTester/js/examples/DatePicker/DatePickerIOSExample.js +0 -150
  1269. package/RNTester/js/examples/DevSettings/DevSettingsExample.js +0 -47
  1270. package/RNTester/js/examples/Dimensions/DimensionsExample.js +0 -68
  1271. package/RNTester/js/examples/FlatList/FlatListExample.js +0 -287
  1272. package/RNTester/js/examples/Image/ImageCapInsetsExample.js +0 -68
  1273. package/RNTester/js/examples/Image/ImageExample.js +0 -955
  1274. package/RNTester/js/examples/InputAccessoryView/InputAccessoryViewExample.js +0 -121
  1275. package/RNTester/js/examples/JSResponderHandlerExample/JSResponderHandlerExample.js +0 -77
  1276. package/RNTester/js/examples/KeyboardAvoidingView/KeyboardAvoidingViewExample.js +0 -120
  1277. package/RNTester/js/examples/Layout/LayoutAnimationExample.js +0 -221
  1278. package/RNTester/js/examples/Layout/LayoutEventsExample.js +0 -165
  1279. package/RNTester/js/examples/Layout/LayoutExample.js +0 -206
  1280. package/RNTester/js/examples/Linking/LinkingExample.js +0 -128
  1281. package/RNTester/js/examples/MaskedView/MaskedViewExample.js +0 -236
  1282. package/RNTester/js/examples/Modal/ModalExample.js +0 -283
  1283. package/RNTester/js/examples/MultiColumn/MultiColumnExample.js +0 -189
  1284. package/RNTester/js/examples/NativeAnimation/NativeAnimationsExample.js +0 -702
  1285. package/RNTester/js/examples/NewAppScreen/NewAppScreenExample.js +0 -77
  1286. package/RNTester/js/examples/OrientationChange/OrientationChangeExample.js +0 -66
  1287. package/RNTester/js/examples/PanResponder/PanResponderExample.js +0 -154
  1288. package/RNTester/js/examples/PermissionsAndroid/PermissionsExample.js +0 -130
  1289. package/RNTester/js/examples/Picker/PickerExample.js +0 -220
  1290. package/RNTester/js/examples/Picker/PickerIOSExample.js +0 -190
  1291. package/RNTester/js/examples/PlatformColor/PlatformColorExample.js +0 -355
  1292. package/RNTester/js/examples/PointerEvents/PointerEventsExample.js +0 -240
  1293. package/RNTester/js/examples/Pressable/PressableExample.js +0 -426
  1294. package/RNTester/js/examples/ProgressBarAndroid/ProgressBarAndroidExample.android.js +0 -94
  1295. package/RNTester/js/examples/ProgressViewIOS/ProgressViewIOSExample.js +0 -103
  1296. package/RNTester/js/examples/PushNotificationIOS/PushNotificationIOSExample.js +0 -267
  1297. package/RNTester/js/examples/RCTRootView/RCTRootViewIOSExample.js +0 -95
  1298. package/RNTester/js/examples/RTL/RTLExample.js +0 -747
  1299. package/RNTester/js/examples/RefreshControl/RefreshControlExample.js +0 -127
  1300. package/RNTester/js/examples/RootViewSizeFlexibilityExample/RootViewSizeFlexibilityExampleApp.js +0 -68
  1301. package/RNTester/js/examples/SafeAreaView/SafeAreaViewExample.js +0 -137
  1302. package/RNTester/js/examples/ScrollView/ScrollViewAnimatedExample.js +0 -107
  1303. package/RNTester/js/examples/ScrollView/ScrollViewExample.js +0 -346
  1304. package/RNTester/js/examples/ScrollView/ScrollViewSimpleExample.js +0 -105
  1305. package/RNTester/js/examples/SectionList/SectionListExample.js +0 -301
  1306. package/RNTester/js/examples/SegmentedControlIOS/SegmentedControlIOSExample.js +0 -183
  1307. package/RNTester/js/examples/SetPropertiesExample/SetPropertiesExampleApp.js +0 -34
  1308. package/RNTester/js/examples/Share/ShareExample.js +0 -124
  1309. package/RNTester/js/examples/Slider/SliderExample.js +0 -136
  1310. package/RNTester/js/examples/Snapshot/SnapshotExample.js +0 -69
  1311. package/RNTester/js/examples/Snapshot/SnapshotViewIOS.android.js +0 -12
  1312. package/RNTester/js/examples/Snapshot/SnapshotViewIOS.ios.js +0 -67
  1313. package/RNTester/js/examples/StatusBar/StatusBarExample.js +0 -522
  1314. package/RNTester/js/examples/Switch/SwitchExample.js +0 -239
  1315. package/RNTester/js/examples/TVEventHandler/TVEventHandlerExample.js +0 -88
  1316. package/RNTester/js/examples/Text/TextExample.android.js +0 -864
  1317. package/RNTester/js/examples/Text/TextExample.ios.js +0 -1153
  1318. package/RNTester/js/examples/TextInput/TextInputExample.android.js +0 -424
  1319. package/RNTester/js/examples/TextInput/TextInputExample.ios.js +0 -710
  1320. package/RNTester/js/examples/TextInput/TextInputSharedExamples.js +0 -618
  1321. package/RNTester/js/examples/Timer/TimerExample.js +0 -373
  1322. package/RNTester/js/examples/ToastAndroid/ToastAndroidExample.android.js +0 -136
  1323. package/RNTester/js/examples/Touchable/TouchableExample.js +0 -664
  1324. package/RNTester/js/examples/Transform/TransformExample.js +0 -336
  1325. package/RNTester/js/examples/TransparentHitTest/TransparentHitTestExample.js +0 -50
  1326. package/RNTester/js/examples/TurboModule/SampleTurboModuleExample.js +0 -190
  1327. package/RNTester/js/examples/TurboModule/TurboModuleExample.js +0 -26
  1328. package/RNTester/js/examples/Vibration/VibrationExample.js +0 -127
  1329. package/RNTester/js/examples/View/ViewExample.js +0 -471
  1330. package/RNTester/js/examples/WebSocket/WebSocketExample.js +0 -356
  1331. package/RNTester/js/examples/WebSocket/http_test_server.js +0 -33
  1332. package/RNTester/js/examples/WebSocket/websocket_test_server.js +0 -46
  1333. package/RNTester/js/examples/XHR/XHRExample.js +0 -62
  1334. package/RNTester/js/examples/XHR/XHRExampleAbortController.js +0 -58
  1335. package/RNTester/js/examples/XHR/XHRExampleBinaryUpload.js +0 -149
  1336. package/RNTester/js/examples/XHR/XHRExampleDownload.js +0 -242
  1337. package/RNTester/js/examples/XHR/XHRExampleFetch.js +0 -133
  1338. package/RNTester/js/examples/XHR/XHRExampleHeaders.js +0 -114
  1339. package/RNTester/js/examples/XHR/XHRExampleOnTimeOut.js +0 -99
  1340. package/RNTester/js/types/RNTesterTypes.js +0 -47
  1341. package/RNTester/js/utils/RNTesterActions.js +0 -53
  1342. package/RNTester/js/utils/RNTesterList.android.js +0 -257
  1343. package/RNTester/js/utils/RNTesterList.ios.js +0 -366
  1344. package/RNTester/js/utils/RNTesterList.win32.js +0 -240
  1345. package/RNTester/js/utils/RNTesterNavigationReducer.js +0 -49
  1346. package/RNTester/js/utils/RNTesterStatePersister.js +0 -86
  1347. package/RNTester/js/utils/URIActionMap.js +0 -48
  1348. package/api-extractor.json +0 -25
  1349. package/demo/DocPagePropsList.d.ts +0 -18
  1350. package/demo/DocPagePropsList.js +0 -7
  1351. package/demo/DocPagePropsList.js.map +0 -1
  1352. package/docs/api/index.md +0 -12
  1353. package/docs/api/react-native-win32.accessibilityactionevent.md +0 -13
  1354. package/docs/api/react-native-win32.accessibilityactioninfo.md +0 -14
  1355. package/docs/api/react-native-win32.accessibilityactionname.md +0 -11
  1356. package/docs/api/react-native-win32.accessibilityannotationinfo.md +0 -16
  1357. package/docs/api/react-native-win32.accessibilitystate.md +0 -14
  1358. package/docs/api/react-native-win32.annotationtype.md +0 -11
  1359. package/docs/api/react-native-win32.ariarole.md +0 -11
  1360. package/docs/api/react-native-win32.basepropswin32.md +0 -17
  1361. package/docs/api/react-native-win32.buttonwin32._constructor_.md +0 -20
  1362. package/docs/api/react-native-win32.buttonwin32.md +0 -27
  1363. package/docs/api/react-native-win32.buttonwin32.render.md +0 -15
  1364. package/docs/api/react-native-win32.buttonwin32omitstyles.md +0 -11
  1365. package/docs/api/react-native-win32.colorgradientwin32.md +0 -15
  1366. package/docs/api/react-native-win32.cursor.md +0 -11
  1367. package/docs/api/react-native-win32.eventphase.md +0 -21
  1368. package/docs/api/react-native-win32.gradientcolorstop.md +0 -16
  1369. package/docs/api/react-native-win32.gradientcolorvaluewin32.md +0 -16
  1370. package/docs/api/react-native-win32.ibuttonwin32props.md +0 -25
  1371. package/docs/api/react-native-win32.ibuttonwin32props.onblur.md +0 -13
  1372. package/docs/api/react-native-win32.ibuttonwin32props.onfocus.md +0 -13
  1373. package/docs/api/react-native-win32.ibuttonwin32props.onmouseenter.md +0 -13
  1374. package/docs/api/react-native-win32.ibuttonwin32props.onmouseleave.md +0 -13
  1375. package/docs/api/react-native-win32.ibuttonwin32props.ontouchend.md +0 -13
  1376. package/docs/api/react-native-win32.ibuttonwin32props.ontouchstart.md +0 -13
  1377. package/docs/api/react-native-win32.ibuttonwin32props.style.md +0 -13
  1378. package/docs/api/react-native-win32.ibuttonwin32style.md +0 -13
  1379. package/docs/api/react-native-win32.ichildasfunction.md +0 -13
  1380. package/docs/api/react-native-win32.idimensions.height.md +0 -11
  1381. package/docs/api/react-native-win32.idimensions.md +0 -21
  1382. package/docs/api/react-native-win32.idimensions.width.md +0 -11
  1383. package/docs/api/react-native-win32.ihandledkeyboardevent.md +0 -11
  1384. package/docs/api/react-native-win32.ikeyboardevent.md +0 -11
  1385. package/docs/api/react-native-win32.inativekeyboardevent.altkey.md +0 -11
  1386. package/docs/api/react-native-win32.inativekeyboardevent.ctrlkey.md +0 -11
  1387. package/docs/api/react-native-win32.inativekeyboardevent.eventphase.md +0 -11
  1388. package/docs/api/react-native-win32.inativekeyboardevent.key.md +0 -11
  1389. package/docs/api/react-native-win32.inativekeyboardevent.md +0 -23
  1390. package/docs/api/react-native-win32.inativekeyboardevent.metakey.md +0 -11
  1391. package/docs/api/react-native-win32.inativekeyboardevent.shiftkey.md +0 -11
  1392. package/docs/api/react-native-win32.ipersonacoinprops.brandiconsource.md +0 -11
  1393. package/docs/api/react-native-win32.ipersonacoinprops.color.md +0 -11
  1394. package/docs/api/react-native-win32.ipersonacoinprops.disabled.md +0 -11
  1395. package/docs/api/react-native-win32.ipersonacoinprops.displayname.md +0 -11
  1396. package/docs/api/react-native-win32.ipersonacoinprops.emailaddress.md +0 -11
  1397. package/docs/api/react-native-win32.ipersonacoinprops.initials.md +0 -11
  1398. package/docs/api/react-native-win32.ipersonacoinprops.md +0 -29
  1399. package/docs/api/react-native-win32.ipersonacoinprops.onerror.md +0 -11
  1400. package/docs/api/react-native-win32.ipersonacoinprops.onload.md +0 -11
  1401. package/docs/api/react-native-win32.ipersonacoinprops.presence.md +0 -11
  1402. package/docs/api/react-native-win32.ipersonacoinprops.size.md +0 -11
  1403. package/docs/api/react-native-win32.ipersonacoinprops.source.md +0 -11
  1404. package/docs/api/react-native-win32.iposition.left.md +0 -11
  1405. package/docs/api/react-native-win32.iposition.md +0 -21
  1406. package/docs/api/react-native-win32.iposition.top.md +0 -11
  1407. package/docs/api/react-native-win32.ipressevent.md +0 -24
  1408. package/docs/api/react-native-win32.ipressinlocation.locationx.md +0 -11
  1409. package/docs/api/react-native-win32.ipressinlocation.locationy.md +0 -11
  1410. package/docs/api/react-native-win32.ipressinlocation.md +0 -23
  1411. package/docs/api/react-native-win32.ipressinlocation.pagex.md +0 -11
  1412. package/docs/api/react-native-win32.ipressinlocation.pagey.md +0 -11
  1413. package/docs/api/react-native-win32.irenderchild.md +0 -13
  1414. package/docs/api/react-native-win32.irenderstyle.md +0 -13
  1415. package/docs/api/react-native-win32.irespondersyntheticevent.md +0 -21
  1416. package/docs/api/react-native-win32.irespondersyntheticevent.touchhistory.md +0 -16
  1417. package/docs/api/react-native-win32.isignal.md +0 -13
  1418. package/docs/api/react-native-win32.istate.md +0 -13
  1419. package/docs/api/react-native-win32.istateconditions.md +0 -15
  1420. package/docs/api/react-native-win32.itextwin32props.md +0 -20
  1421. package/docs/api/react-native-win32.itextwin32props.textstyle.md +0 -25
  1422. package/docs/api/react-native-win32.itextwin32props.tooltip.md +0 -13
  1423. package/docs/api/react-native-win32.itouchablewin32props.children.md +0 -11
  1424. package/docs/api/react-native-win32.itouchablewin32props.disabled.md +0 -11
  1425. package/docs/api/react-native-win32.itouchablewin32props.filterkeys.md +0 -13
  1426. package/docs/api/react-native-win32.itouchablewin32props.md +0 -36
  1427. package/docs/api/react-native-win32.itouchablewin32props.onlongpress.md +0 -11
  1428. package/docs/api/react-native-win32.itouchablewin32props.rejectrespondertermination.md +0 -11
  1429. package/docs/api/react-native-win32.itouchablewin32props.renderstyle.md +0 -11
  1430. package/docs/api/react-native-win32.itouchablewin32props.touchablegethighlightdelayms.md +0 -11
  1431. package/docs/api/react-native-win32.itouchablewin32props.touchablegethitslop.md +0 -11
  1432. package/docs/api/react-native-win32.itouchablewin32props.touchablegetlongpressdelayms.md +0 -11
  1433. package/docs/api/react-native-win32.itouchablewin32props.touchablegetpressoutdelayms.md +0 -11
  1434. package/docs/api/react-native-win32.itouchablewin32props.touchablegetpressrectoffset.md +0 -11
  1435. package/docs/api/react-native-win32.itouchablewin32props.touchablehandleactivepressin.md +0 -11
  1436. package/docs/api/react-native-win32.itouchablewin32props.touchablehandleactivepressout.md +0 -11
  1437. package/docs/api/react-native-win32.itouchablewin32props.touchablehandlekeypress.md +0 -11
  1438. package/docs/api/react-native-win32.itouchablewin32props.touchablehandlekeypressdown.md +0 -11
  1439. package/docs/api/react-native-win32.itouchablewin32props.touchablehandlelongpress.md +0 -11
  1440. package/docs/api/react-native-win32.itouchablewin32props.touchablehandlepress.md +0 -11
  1441. package/docs/api/react-native-win32.itouchablewin32props.touchsounddisabled.md +0 -11
  1442. package/docs/api/react-native-win32.itouchablewin32state.isfocused.md +0 -11
  1443. package/docs/api/react-native-win32.itouchablewin32state.ishovered.md +0 -11
  1444. package/docs/api/react-native-win32.itouchablewin32state.ispressed.md +0 -11
  1445. package/docs/api/react-native-win32.itouchablewin32state.md +0 -20
  1446. package/docs/api/react-native-win32.itouchinfo.currentpagex.md +0 -11
  1447. package/docs/api/react-native-win32.itouchinfo.currentpagey.md +0 -11
  1448. package/docs/api/react-native-win32.itouchinfo.currenttimestamp.md +0 -11
  1449. package/docs/api/react-native-win32.itouchinfo.md +0 -29
  1450. package/docs/api/react-native-win32.itouchinfo.previouspagex.md +0 -11
  1451. package/docs/api/react-native-win32.itouchinfo.previouspagey.md +0 -11
  1452. package/docs/api/react-native-win32.itouchinfo.previoustimestamp.md +0 -11
  1453. package/docs/api/react-native-win32.itouchinfo.startpagex.md +0 -11
  1454. package/docs/api/react-native-win32.itouchinfo.startpagey.md +0 -11
  1455. package/docs/api/react-native-win32.itouchinfo.starttimestamp.md +0 -11
  1456. package/docs/api/react-native-win32.itouchinfo.touchactive.md +0 -11
  1457. package/docs/api/react-native-win32.itransitions.md +0 -15
  1458. package/docs/api/react-native-win32.iviewwin32.focus.md +0 -11
  1459. package/docs/api/react-native-win32.iviewwin32.md +0 -18
  1460. package/docs/api/react-native-win32.iviewwin32props.acceptskeyboardfocus.md +0 -16
  1461. package/docs/api/react-native-win32.iviewwin32props.accessibilityactions.md +0 -11
  1462. package/docs/api/react-native-win32.iviewwin32props.accessibilityannotation.md +0 -15
  1463. package/docs/api/react-native-win32.iviewwin32props.accessibilitylevel.md +0 -11
  1464. package/docs/api/react-native-win32.iviewwin32props.accessibilitypositioninset.md +0 -11
  1465. package/docs/api/react-native-win32.iviewwin32props.accessibilitysetsize.md +0 -11
  1466. package/docs/api/react-native-win32.iviewwin32props.animationclass.md +0 -11
  1467. package/docs/api/react-native-win32.iviewwin32props.children.md +0 -11
  1468. package/docs/api/react-native-win32.iviewwin32props.cursor.md +0 -11
  1469. package/docs/api/react-native-win32.iviewwin32props.focusable.md +0 -11
  1470. package/docs/api/react-native-win32.iviewwin32props.keydownevents.md +0 -11
  1471. package/docs/api/react-native-win32.iviewwin32props.keyupevents.md +0 -11
  1472. package/docs/api/react-native-win32.iviewwin32props.md +0 -44
  1473. package/docs/api/react-native-win32.iviewwin32props.onblur.md +0 -15
  1474. package/docs/api/react-native-win32.iviewwin32props.onblurcapture.md +0 -15
  1475. package/docs/api/react-native-win32.iviewwin32props.onfocus.md +0 -15
  1476. package/docs/api/react-native-win32.iviewwin32props.onfocuscapture.md +0 -15
  1477. package/docs/api/react-native-win32.iviewwin32props.onkeydown.md +0 -11
  1478. package/docs/api/react-native-win32.iviewwin32props.onkeydowncapture.md +0 -11
  1479. package/docs/api/react-native-win32.iviewwin32props.onkeyup.md +0 -11
  1480. package/docs/api/react-native-win32.iviewwin32props.onkeyupcapture.md +0 -11
  1481. package/docs/api/react-native-win32.iviewwin32props.onmouseenter.md +0 -11
  1482. package/docs/api/react-native-win32.iviewwin32props.onmouseleave.md +0 -11
  1483. package/docs/api/react-native-win32.iviewwin32props.tooltip.md +0 -13
  1484. package/docs/api/react-native-win32.iviewwin32props.type.md +0 -11
  1485. package/docs/api/react-native-win32.md +0 -85
  1486. package/docs/api/react-native-win32.omittedaccessibilitypropswin32.md +0 -15
  1487. package/docs/api/react-native-win32.personacoin.md +0 -11
  1488. package/docs/api/react-native-win32.personacoinpresence.md +0 -25
  1489. package/docs/api/react-native-win32.personacoinsize.md +0 -23
  1490. package/docs/api/react-native-win32.sharedaccessibilitypropsiosandwin32.md +0 -13
  1491. package/docs/api/react-native-win32.textstyle.md +0 -13
  1492. package/docs/api/react-native-win32.textwin32._constructor_.md +0 -20
  1493. package/docs/api/react-native-win32.textwin32.md +0 -25
  1494. package/docs/api/react-native-win32.textwin32.render.md +0 -15
  1495. package/docs/api/react-native-win32.textwin32omittypes.md +0 -11
  1496. package/docs/api/react-native-win32.touchablewin32._constructor_.md +0 -20
  1497. package/docs/api/react-native-win32.touchablewin32.componentwillunmount.md +0 -15
  1498. package/docs/api/react-native-win32.touchablewin32.focus.md +0 -11
  1499. package/docs/api/react-native-win32.touchablewin32.md +0 -34
  1500. package/docs/api/react-native-win32.touchablewin32.render.md +0 -15
  1501. package/docs/api/react-native-win32.usefrom.md +0 -13
  1502. package/docs/api/react-native-win32.viewwin32.md +0 -11
  1503. package/docs/api/react-native-win32.viewwin32omittypes.md +0 -11
  1504. package/etc/react-native-win32.api.md +0 -481
  1505. package/flow/Position.js +0 -16
  1506. package/flow/Promise.js +0 -47
  1507. package/flow/fbjs.js +0 -258
  1508. package/flow/jest.js +0 -1189
  1509. package/flow/use-subscription.js +0 -19
  1510. package/jest/preprocessor.js +0 -120
  1511. package/typings-index.d.ts +0 -20
  1512. package/typings-index.js +0 -40
@@ -1,703 +1,247 @@
1
1
  /**
2
- * Copyright (c) Facebook, Inc. and its affiliates.
2
+ * Copyright (c) Meta Platforms, Inc. and affiliates.
3
3
  *
4
4
  * This source code is licensed under the MIT license found in the
5
5
  * LICENSE file in the root directory of this source tree.
6
6
  *
7
- * @flow
7
+ * @flow strict-local
8
8
  * @format
9
9
  */
10
10
 
11
- 'use strict';
12
-
13
- const DeprecatedTextInputPropTypes = require('../../DeprecatedPropTypes/DeprecatedTextInputPropTypes');
14
- const Platform = require('../../Utilities/Platform');
15
- const React = require('react');
16
- const ReactNative = require('../../Renderer/shims/ReactNative');
17
- const StyleSheet = require('../../StyleSheet/StyleSheet');
18
- const Text = require('../../Text/Text');
19
- const TextAncestor = require('../../Text/TextAncestor');
20
- const TextInputState = require('./TextInputState');
21
- const TouchableWithoutFeedback = require('../Touchable/TouchableWithoutFeedback');
22
-
23
- const invariant = require('invariant');
24
- const nullthrows = require('nullthrows');
25
- const setAndForwardRef = require('../../Utilities/setAndForwardRef');
26
-
27
- import type {TextStyleProp, ViewStyleProp} from '../../StyleSheet/StyleSheet';
28
- import type {ColorValue} from '../../StyleSheet/StyleSheetTypes';
29
- import type {ViewProps} from '../View/ViewPropTypes';
30
- import type {SyntheticEvent, ScrollEvent} from '../../Types/CoreEventTypes';
31
- import type {PressEvent} from '../../Types/CoreEventTypes';
32
- import type {HostComponent} from '../../Renderer/shims/ReactNativeTypes';
33
-
34
- const {useEffect, useRef, useState} = React;
35
-
36
- type ReactRefSetter<T> = {current: null | T, ...} | ((ref: null | T) => mixed);
11
+ import type {HostInstance} from '../../../src/private/types/HostInstance';
12
+ import type {____TextStyle_Internal as TextStyleInternal} from '../../StyleSheet/StyleSheetTypes';
13
+ import type {
14
+ BlurEvent,
15
+ FocusEvent,
16
+ GestureResponderEvent,
17
+ ScrollEvent,
18
+ } from '../../Types/CoreEventTypes';
19
+ import type {
20
+ AutoCapitalize,
21
+ EnterKeyHintType,
22
+ EnterKeyHintTypeAndroid,
23
+ EnterKeyHintTypeIOS,
24
+ EnterKeyHintTypeOptions,
25
+ InputModeOptions,
26
+ KeyboardType,
27
+ KeyboardTypeAndroid,
28
+ KeyboardTypeIOS,
29
+ KeyboardTypeOptions,
30
+ ReturnKeyType,
31
+ ReturnKeyTypeAndroid,
32
+ ReturnKeyTypeIOS,
33
+ ReturnKeyTypeOptions,
34
+ Selection,
35
+ SubmitBehavior,
36
+ TextContentType,
37
+ TextInputAndroidProps,
38
+ TextInputBlurEvent,
39
+ TextInputChangeEvent,
40
+ TextInputContentSizeChangeEvent,
41
+ TextInputEditingEvent,
42
+ TextInputEndEditingEvent,
43
+ TextInputEvent,
44
+ TextInputFocusEvent,
45
+ TextInputInstance,
46
+ TextInputIOSProps,
47
+ TextInputKeyPressEvent,
48
+ TextInputProps,
49
+ TextInputSelectionChangeEvent,
50
+ TextInputSubmitEditingEvent,
51
+ TextInputType,
52
+ } from './TextInput.flow';
53
+
54
+ import usePressability from '../../Pressability/usePressability';
55
+ import flattenStyle from '../../StyleSheet/flattenStyle';
56
+ import StyleSheet, {type TextStyleProp} from '../../StyleSheet/StyleSheet';
57
+ import Text from '../../Text/Text';
58
+ import TextAncestorContext from '../../Text/TextAncestorContext';
59
+ import Platform from '../../Utilities/Platform';
60
+ import useMergeRefs from '../../Utilities/useMergeRefs';
61
+ import TextInputState from './TextInputState';
62
+ import invariant from 'invariant';
63
+ import nullthrows from 'nullthrows';
64
+ import * as React from 'react';
65
+ import {useCallback, useLayoutEffect, useMemo, useRef, useState} from 'react';
37
66
 
38
67
  let AndroidTextInput;
39
68
  let AndroidTextInputCommands;
40
- let RCTMultilineTextInputView;
41
69
  let RCTSinglelineTextInputView;
70
+ let RCTSinglelineTextInputNativeCommands;
71
+ let RCTMultilineTextInputView;
72
+ let RCTMultilineTextInputNativeCommands;
42
73
 
43
74
  if (Platform.OS === 'android') {
44
75
  AndroidTextInput = require('./AndroidTextInputNativeComponent').default;
45
- AndroidTextInputCommands = require('./AndroidTextInputNativeComponent')
46
- .Commands;
76
+ AndroidTextInputCommands =
77
+ require('./AndroidTextInputNativeComponent').Commands;
47
78
  } else if (Platform.OS === 'ios') {
48
- RCTMultilineTextInputView = require('./RCTMultilineTextInputNativeComponent')
49
- .default;
50
- RCTSinglelineTextInputView = require('./RCTSingelineTextInputNativeComponent')
51
- .default;
79
+ RCTSinglelineTextInputView =
80
+ require('./RCTSingelineTextInputNativeComponent').default;
81
+ RCTSinglelineTextInputNativeCommands =
82
+ require('./RCTSingelineTextInputNativeComponent').Commands;
83
+ RCTMultilineTextInputView =
84
+ require('./RCTMultilineTextInputNativeComponent').default;
85
+ RCTMultilineTextInputNativeCommands =
86
+ require('./RCTMultilineTextInputNativeComponent').Commands;
52
87
  }
53
88
 
54
- export type ChangeEvent = SyntheticEvent<
55
- $ReadOnly<{|
56
- eventCount: number,
57
- target: number,
58
- text: string,
59
- |}>,
60
- >;
61
-
62
- export type TextInputEvent = SyntheticEvent<
63
- $ReadOnly<{|
64
- eventCount: number,
65
- previousText: string,
66
- range: $ReadOnly<{|
67
- start: number,
68
- end: number,
69
- |}>,
70
- target: number,
71
- text: string,
72
- |}>,
73
- >;
74
-
75
- export type ContentSizeChangeEvent = SyntheticEvent<
76
- $ReadOnly<{|
77
- target: number,
78
- contentSize: $ReadOnly<{|
79
- width: number,
80
- height: number,
81
- |}>,
82
- |}>,
83
- >;
84
-
85
- type TargetEvent = SyntheticEvent<
86
- $ReadOnly<{|
87
- target: number,
88
- |}>,
89
- >;
90
-
91
- export type BlurEvent = TargetEvent;
92
- export type FocusEvent = TargetEvent;
93
-
94
- type Selection = $ReadOnly<{|
95
- start: number,
96
- end: number,
97
- |}>;
98
-
99
- export type SelectionChangeEvent = SyntheticEvent<
100
- $ReadOnly<{|
101
- selection: Selection,
102
- target: number,
103
- |}>,
104
- >;
105
-
106
- export type KeyPressEvent = SyntheticEvent<
107
- $ReadOnly<{|
108
- key: string,
109
- target?: ?number,
110
- eventCount?: ?number,
111
- |}>,
112
- >;
113
-
114
- export type EditingEvent = SyntheticEvent<
115
- $ReadOnly<{|
116
- eventCount: number,
117
- text: string,
118
- target: number,
119
- |}>,
120
- >;
121
-
122
- type DataDetectorTypesType =
123
- | 'phoneNumber'
124
- | 'link'
125
- | 'address'
126
- | 'calendarEvent'
127
- | 'none'
128
- | 'all';
129
-
130
- export type KeyboardType =
131
- // Cross Platform
132
- | 'default'
133
- | 'email-address'
134
- | 'numeric'
135
- | 'phone-pad'
136
- | 'number-pad'
137
- | 'decimal-pad'
138
- // iOS-only
139
- | 'ascii-capable'
140
- | 'numbers-and-punctuation'
141
- | 'url'
142
- | 'name-phone-pad'
143
- | 'twitter'
144
- | 'web-search'
145
- // iOS 10+ only
146
- | 'ascii-capable-number-pad'
147
- // Android-only
148
- | 'visible-password';
149
-
150
- export type ReturnKeyType =
151
- // Cross Platform
152
- | 'done'
153
- | 'go'
154
- | 'next'
155
- | 'search'
156
- | 'send'
157
- // Android-only
158
- | 'none'
159
- | 'previous'
160
- // iOS-only
161
- | 'default'
162
- | 'emergency-call'
163
- | 'google'
164
- | 'join'
165
- | 'route'
166
- | 'yahoo';
167
-
168
- export type AutoCapitalize = 'none' | 'sentences' | 'words' | 'characters';
169
-
170
- export type TextContentType =
171
- | 'none'
172
- | 'URL'
173
- | 'addressCity'
174
- | 'addressCityAndState'
175
- | 'addressState'
176
- | 'countryName'
177
- | 'creditCardNumber'
178
- | 'emailAddress'
179
- | 'familyName'
180
- | 'fullStreetAddress'
181
- | 'givenName'
182
- | 'jobTitle'
183
- | 'location'
184
- | 'middleName'
185
- | 'name'
186
- | 'namePrefix'
187
- | 'nameSuffix'
188
- | 'nickname'
189
- | 'organizationName'
190
- | 'postalCode'
191
- | 'streetAddressLine1'
192
- | 'streetAddressLine2'
193
- | 'sublocality'
194
- | 'telephoneNumber'
195
- | 'username'
196
- | 'password'
197
- | 'newPassword'
198
- | 'oneTimeCode';
199
-
200
- type PasswordRules = string;
201
-
202
- type IOSProps = $ReadOnly<{|
203
- /**
204
- * If `false`, disables spell-check style (i.e. red underlines).
205
- * The default value is inherited from `autoCorrect`.
206
- * @platform ios
207
- */
208
- spellCheck?: ?boolean,
209
-
210
- /**
211
- * Determines the color of the keyboard.
212
- * @platform ios
213
- */
214
- keyboardAppearance?: ?('default' | 'light' | 'dark'),
215
-
216
- /**
217
- * If `true`, the keyboard disables the return key when there is no text and
218
- * automatically enables it when there is text. The default value is `false`.
219
- * @platform ios
220
- */
221
- enablesReturnKeyAutomatically?: ?boolean,
222
-
223
- /**
224
- * When the clear button should appear on the right side of the text view.
225
- * This property is supported only for single-line TextInput component.
226
- * @platform ios
227
- */
228
- clearButtonMode?: ?('never' | 'while-editing' | 'unless-editing' | 'always'),
229
-
230
- /**
231
- * If `true`, clears the text field automatically when editing begins.
232
- * @platform ios
233
- */
234
- clearTextOnFocus?: ?boolean,
235
-
236
- /**
237
- * Determines the types of data converted to clickable URLs in the text input.
238
- * Only valid if `multiline={true}` and `editable={false}`.
239
- * By default no data types are detected.
240
- *
241
- * You can provide one type or an array of many types.
242
- *
243
- * Possible values for `dataDetectorTypes` are:
244
- *
245
- * - `'phoneNumber'`
246
- * - `'link'`
247
- * - `'address'`
248
- * - `'calendarEvent'`
249
- * - `'none'`
250
- * - `'all'`
251
- *
252
- * @platform ios
253
- */
254
- dataDetectorTypes?:
255
- | ?DataDetectorTypesType
256
- | $ReadOnlyArray<DataDetectorTypesType>,
257
-
258
- /**
259
- * An optional identifier which links a custom InputAccessoryView to
260
- * this text input. The InputAccessoryView is rendered above the
261
- * keyboard when this text input is focused.
262
- * @platform ios
263
- */
264
- inputAccessoryViewID?: ?string,
265
-
266
- /**
267
- * Give the keyboard and the system information about the
268
- * expected semantic meaning for the content that users enter.
269
- * @platform ios
270
- */
271
- textContentType?: ?TextContentType,
272
-
273
- /**
274
- * Provide rules for your password.
275
- * For example, say you want to require a password with at least eight characters consisting of a mix of uppercase and lowercase letters, at least one number, and at most two consecutive characters.
276
- * "required: upper; required: lower; required: digit; max-consecutive: 2; minlength: 8;"
277
- * @platform ios
278
- */
279
- passwordRules?: ?PasswordRules,
280
-
281
- /*
282
- * If `true`, allows TextInput to pass touch events to the parent component.
283
- * This allows components to be swipeable from the TextInput on iOS,
284
- * as is the case on Android by default.
285
- * If `false`, TextInput always asks to handle the input (except when disabled).
286
- * @platform ios
287
- */
288
- rejectResponderTermination?: ?boolean,
289
-
290
- /**
291
- * If `false`, scrolling of the text view will be disabled.
292
- * The default value is `true`. Does only work with 'multiline={true}'.
293
- * @platform ios
294
- */
295
- scrollEnabled?: ?boolean,
296
- |}>;
297
-
298
- type AndroidProps = $ReadOnly<{|
299
- /**
300
- * Determines which content to suggest on auto complete, e.g.`username`.
301
- * To disable auto complete, use `off`.
302
- *
303
- * *Android Only*
304
- *
305
- * The following values work on Android only:
306
- *
307
- * - `username`
308
- * - `password`
309
- * - `email`
310
- * - `name`
311
- * - `tel`
312
- * - `street-address`
313
- * - `postal-code`
314
- * - `cc-number`
315
- * - `cc-csc`
316
- * - `cc-exp`
317
- * - `cc-exp-month`
318
- * - `cc-exp-year`
319
- * - `off`
320
- *
321
- * @platform android
322
- */
323
- autoCompleteType?: ?(
324
- | 'cc-csc'
325
- | 'cc-exp'
326
- | 'cc-exp-month'
327
- | 'cc-exp-year'
328
- | 'cc-number'
329
- | 'email'
330
- | 'name'
331
- | 'password'
332
- | 'postal-code'
333
- | 'street-address'
334
- | 'tel'
335
- | 'username'
336
- | 'off'
337
- ),
338
-
339
- /**
340
- * Sets the return key to the label. Use it instead of `returnKeyType`.
341
- * @platform android
342
- */
343
- returnKeyLabel?: ?string,
344
-
345
- /**
346
- * Sets the number of lines for a `TextInput`. Use it with multiline set to
347
- * `true` to be able to fill the lines.
348
- * @platform android
349
- */
350
- numberOfLines?: ?number,
351
-
352
- /**
353
- * When `false`, if there is a small amount of space available around a text input
354
- * (e.g. landscape orientation on a phone), the OS may choose to have the user edit
355
- * the text inside of a full screen text input mode. When `true`, this feature is
356
- * disabled and users will always edit the text directly inside of the text input.
357
- * Defaults to `false`.
358
- * @platform android
359
- */
360
- disableFullscreenUI?: ?boolean,
361
-
362
- /**
363
- * Set text break strategy on Android API Level 23+, possible values are `simple`, `highQuality`, `balanced`
364
- * The default value is `simple`.
365
- * @platform android
366
- */
367
- textBreakStrategy?: ?('simple' | 'highQuality' | 'balanced'),
368
-
369
- /**
370
- * The color of the `TextInput` underline.
371
- * @platform android
372
- */
373
- underlineColorAndroid?: ?ColorValue,
374
-
375
- /**
376
- * If defined, the provided image resource will be rendered on the left.
377
- * The image resource must be inside `/android/app/src/main/res/drawable` and referenced
378
- * like
379
- * ```
380
- * <TextInput
381
- * inlineImageLeft='search_icon'
382
- * />
383
- * ```
384
- * @platform android
385
- */
386
- inlineImageLeft?: ?string,
387
-
388
- /**
389
- * Padding between the inline image, if any, and the text input itself.
390
- * @platform android
391
- */
392
- inlineImagePadding?: ?number,
393
-
394
- importantForAutofill?: ?(
395
- | 'auto'
396
- | 'no'
397
- | 'noExcludeDescendants'
398
- | 'yes'
399
- | 'yesExcludeDescendants'
400
- ),
401
-
402
- /**
403
- * When `false`, it will prevent the soft keyboard from showing when the field is focused.
404
- * Defaults to `true`.
405
- * @platform android
406
- */
407
- showSoftInputOnFocus?: ?boolean,
408
- |}>;
409
-
410
- export type Props = $ReadOnly<{|
411
- ...$Diff<ViewProps, $ReadOnly<{|style: ?ViewStyleProp|}>>,
412
- ...IOSProps,
413
- ...AndroidProps,
414
-
415
- /**
416
- * Can tell `TextInput` to automatically capitalize certain characters.
417
- *
418
- * - `characters`: all characters.
419
- * - `words`: first letter of each word.
420
- * - `sentences`: first letter of each sentence (*default*).
421
- * - `none`: don't auto capitalize anything.
422
- */
423
- autoCapitalize?: ?AutoCapitalize,
424
-
425
- /**
426
- * If `false`, disables auto-correct. The default value is `true`.
427
- */
428
- autoCorrect?: ?boolean,
429
-
430
- /**
431
- * If `true`, focuses the input on `componentDidMount`.
432
- * The default value is `false`.
433
- */
434
- autoFocus?: ?boolean,
435
-
436
- /**
437
- * Specifies whether fonts should scale to respect Text Size accessibility settings. The
438
- * default is `true`.
439
- */
440
- allowFontScaling?: ?boolean,
441
-
442
- /**
443
- * Specifies largest possible scale a font can reach when `allowFontScaling` is enabled.
444
- * Possible values:
445
- * `null/undefined` (default): inherit from the parent node or the global default (0)
446
- * `0`: no max, ignore parent/global default
447
- * `>= 1`: sets the maxFontSizeMultiplier of this node to this value
448
- */
449
- maxFontSizeMultiplier?: ?number,
450
-
451
- /**
452
- * If `false`, text is not editable. The default value is `true`.
453
- */
454
- editable?: ?boolean,
455
-
456
- /**
457
- * Determines which keyboard to open, e.g.`numeric`.
458
- *
459
- * The following values work across platforms:
460
- *
461
- * - `default`
462
- * - `numeric`
463
- * - `number-pad`
464
- * - `decimal-pad`
465
- * - `email-address`
466
- * - `phone-pad`
467
- *
468
- * *iOS Only*
469
- *
470
- * The following values work on iOS only:
471
- *
472
- * - `ascii-capable`
473
- * - `numbers-and-punctuation`
474
- * - `url`
475
- * - `name-phone-pad`
476
- * - `twitter`
477
- * - `web-search`
478
- *
479
- * *Android Only*
480
- *
481
- * The following values work on Android only:
482
- *
483
- * - `visible-password`
484
- */
485
- keyboardType?: ?KeyboardType,
486
-
487
- /**
488
- * Determines how the return key should look. On Android you can also use
489
- * `returnKeyLabel`.
490
- *
491
- * *Cross platform*
492
- *
493
- * The following values work across platforms:
494
- *
495
- * - `done`
496
- * - `go`
497
- * - `next`
498
- * - `search`
499
- * - `send`
500
- *
501
- * *Android Only*
502
- *
503
- * The following values work on Android only:
504
- *
505
- * - `none`
506
- * - `previous`
507
- *
508
- * *iOS Only*
509
- *
510
- * The following values work on iOS only:
511
- *
512
- * - `default`
513
- * - `emergency-call`
514
- * - `google`
515
- * - `join`
516
- * - `route`
517
- * - `yahoo`
518
- */
519
- returnKeyType?: ?ReturnKeyType,
520
-
521
- /**
522
- * Limits the maximum number of characters that can be entered. Use this
523
- * instead of implementing the logic in JS to avoid flicker.
524
- */
525
- maxLength?: ?number,
526
-
527
- /**
528
- * If `true`, the text input can be multiple lines.
529
- * The default value is `false`.
530
- */
531
- multiline?: ?boolean,
532
-
533
- /**
534
- * Callback that is called when the text input is blurred.
535
- */
536
- onBlur?: ?(e: BlurEvent) => mixed,
537
-
538
- /**
539
- * Callback that is called when the text input is focused.
540
- */
541
- onFocus?: ?(e: FocusEvent) => mixed,
542
-
543
- /**
544
- * Callback that is called when the text input's text changes.
545
- */
546
- onChange?: ?(e: ChangeEvent) => mixed,
547
-
548
- /**
549
- * Callback that is called when the text input's text changes.
550
- * Changed text is passed as an argument to the callback handler.
551
- */
552
- onChangeText?: ?(text: string) => mixed,
553
-
554
- /**
555
- * Callback that is called when the text input's content size changes.
556
- * This will be called with
557
- * `{ nativeEvent: { contentSize: { width, height } } }`.
558
- *
559
- * Only called for multiline text inputs.
560
- */
561
- onContentSizeChange?: ?(e: ContentSizeChangeEvent) => mixed,
562
-
563
- /**
564
- * Callback that is called when text input ends.
565
- */
566
- onEndEditing?: ?(e: EditingEvent) => mixed,
567
-
568
- /**
569
- * Callback that is called when the text input selection is changed.
570
- * This will be called with
571
- * `{ nativeEvent: { selection: { start, end } } }`.
572
- */
573
- onSelectionChange?: ?(e: SelectionChangeEvent) => mixed,
574
-
575
- /**
576
- * Callback that is called when the text input's submit button is pressed.
577
- * Invalid if `multiline={true}` is specified.
578
- */
579
- onSubmitEditing?: ?(e: EditingEvent) => mixed,
580
-
581
- /**
582
- * Callback that is called when a key is pressed.
583
- * This will be called with `{ nativeEvent: { key: keyValue } }`
584
- * where `keyValue` is `'Enter'` or `'Backspace'` for respective keys and
585
- * the typed-in character otherwise including `' '` for space.
586
- * Fires before `onChange` callbacks.
587
- */
588
- onKeyPress?: ?(e: KeyPressEvent) => mixed,
589
-
590
- /**
591
- * Invoked on content scroll with `{ nativeEvent: { contentOffset: { x, y } } }`.
592
- * May also contain other properties from ScrollEvent but on Android contentSize
593
- * is not provided for performance reasons.
594
- */
595
- onScroll?: ?(e: ScrollEvent) => mixed,
89
+ export type {
90
+ AutoCapitalize,
91
+ BlurEvent,
92
+ EnterKeyHintType,
93
+ EnterKeyHintTypeAndroid,
94
+ EnterKeyHintTypeIOS,
95
+ EnterKeyHintTypeOptions,
96
+ FocusEvent,
97
+ InputModeOptions,
98
+ KeyboardType,
99
+ KeyboardTypeAndroid,
100
+ KeyboardTypeIOS,
101
+ KeyboardTypeOptions,
102
+ ReturnKeyType,
103
+ ReturnKeyTypeAndroid,
104
+ ReturnKeyTypeIOS,
105
+ ReturnKeyTypeOptions,
106
+ SubmitBehavior,
107
+ TextContentType,
108
+ TextInputAndroidProps,
109
+ TextInputBlurEvent,
110
+ TextInputChangeEvent,
111
+ TextInputContentSizeChangeEvent,
112
+ TextInputEditingEvent,
113
+ TextInputEndEditingEvent,
114
+ TextInputEvent,
115
+ TextInputFocusEvent,
116
+ TextInputIOSProps,
117
+ TextInputKeyPressEvent,
118
+ TextInputProps,
119
+ TextInputSelectionChangeEvent,
120
+ TextInputSubmitEditingEvent,
121
+ };
596
122
 
123
+ type TextInputStateType = $ReadOnly<{
597
124
  /**
598
- * The string that will be rendered before text input has been entered.
125
+ * @deprecated Use currentlyFocusedInput
126
+ * Returns the ID of the currently focused text field, if one exists
127
+ * If no text field is focused it returns null
599
128
  */
600
- placeholder?: ?Stringish,
129
+ currentlyFocusedField: () => ?number,
601
130
 
602
131
  /**
603
- * The text color of the placeholder string.
132
+ * Returns the ref of the currently focused text field, if one exists
133
+ * If no text field is focused it returns null
604
134
  */
605
- placeholderTextColor?: ?ColorValue,
135
+ currentlyFocusedInput: () => ?HostInstance,
606
136
 
607
137
  /**
608
- * If `true`, the text input obscures the text entered so that sensitive text
609
- * like passwords stay secure. The default value is `false`. Does not work with 'multiline={true}'.
138
+ * @param textField ref of the text field to focus
139
+ * Focuses the specified text field
140
+ * noop if the text field was already focused
610
141
  */
611
- secureTextEntry?: ?boolean,
142
+ focusTextInput: (textField: ?HostInstance) => void,
612
143
 
613
144
  /**
614
- * The highlight and cursor color of the text input.
145
+ * @param textField ref of the text field to focus
146
+ * Unfocuses the specified text field
147
+ * noop if it wasn't focused
615
148
  */
616
- selectionColor?: ?ColorValue,
149
+ blurTextInput: (textField: ?HostInstance) => void,
150
+ }>;
617
151
 
618
- /**
619
- * The start and end of the text input's selection. Set start and end to
620
- * the same value to position the cursor.
621
- */
622
- selection?: ?$ReadOnly<{|
623
- start: number,
624
- end?: ?number,
625
- |}>,
152
+ type ViewCommands = $NonMaybeType<
153
+ | typeof AndroidTextInputCommands
154
+ | typeof RCTMultilineTextInputNativeCommands
155
+ | typeof RCTSinglelineTextInputNativeCommands,
156
+ >;
626
157
 
627
- /**
628
- * The value to show for the text input. `TextInput` is a controlled
629
- * component, which means the native value will be forced to match this
630
- * value prop if provided. For most uses, this works great, but in some
631
- * cases this may cause flickering - one common cause is preventing edits
632
- * by keeping value the same. In addition to simply setting the same value,
633
- * either set `editable={false}`, or set/update `maxLength` to prevent
634
- * unwanted edits without flicker.
635
- */
636
- value?: ?Stringish,
158
+ type LastNativeSelection = {
159
+ selection: Selection,
160
+ mostRecentEventCount: number,
161
+ };
637
162
 
638
- /**
639
- * Provides an initial value that will change when the user starts typing.
640
- * Useful for simple use-cases where you do not want to deal with listening
641
- * to events and updating the value prop to keep the controlled state in sync.
642
- */
643
- defaultValue?: ?Stringish,
163
+ const emptyFunctionThatReturnsTrue = () => true;
644
164
 
645
- /**
646
- * If `true`, all text will automatically be selected on focus.
647
- */
648
- selectTextOnFocus?: ?boolean,
165
+ /**
166
+ * This hook handles the synchronization between the state of the text input
167
+ * in native and in JavaScript. This is necessary due to the asynchronous nature
168
+ * of text input events.
169
+ */
170
+ function useTextInputStateSynchronization({
171
+ props,
172
+ mostRecentEventCount,
173
+ selection,
174
+ inputRef,
175
+ text,
176
+ viewCommands,
177
+ }: {
178
+ props: TextInputProps,
179
+ mostRecentEventCount: number,
180
+ selection: ?Selection,
181
+ inputRef: React.RefObject<null | TextInputInstance>,
182
+ text?: string,
183
+ viewCommands: ViewCommands,
184
+ }): {
185
+ setLastNativeText: string => void,
186
+ setLastNativeSelection: LastNativeSelection => void,
187
+ } {
188
+ const [lastNativeText, setLastNativeText] = useState<?Stringish>(props.value);
189
+ const [lastNativeSelectionState, setLastNativeSelection] =
190
+ useState<LastNativeSelection>({
191
+ selection: {start: -1, end: -1},
192
+ mostRecentEventCount: mostRecentEventCount,
193
+ });
649
194
 
650
- /**
651
- * If `true`, the text field will blur when submitted.
652
- * The default value is true for single-line fields and false for
653
- * multiline fields. Note that for multiline fields, setting `blurOnSubmit`
654
- * to `true` means that pressing return will blur the field and trigger the
655
- * `onSubmitEditing` event instead of inserting a newline into the field.
656
- */
657
- blurOnSubmit?: ?boolean,
195
+ const lastNativeSelection = lastNativeSelectionState.selection;
658
196
 
659
- /**
660
- * Note that not all Text styles are supported, an incomplete list of what is not supported includes:
661
- *
662
- * - `borderLeftWidth`
663
- * - `borderTopWidth`
664
- * - `borderRightWidth`
665
- * - `borderBottomWidth`
666
- * - `borderTopLeftRadius`
667
- * - `borderTopRightRadius`
668
- * - `borderBottomRightRadius`
669
- * - `borderBottomLeftRadius`
670
- *
671
- * see [Issue#7070](https://github.com/facebook/react-native/issues/7070)
672
- * for more detail.
673
- *
674
- * [Styles](docs/style.html)
675
- */
676
- style?: ?TextStyleProp,
197
+ // This is necessary in case native updates the text and JS decides
198
+ // that the update should be ignored and we should stick with the value
199
+ // that we have in JS.
200
+ useLayoutEffect(() => {
201
+ const nativeUpdate: {text?: string, selection?: Selection} = {};
677
202
 
678
- /**
679
- * If `true`, caret is hidden. The default value is `false`.
680
- * This property is supported only for single-line TextInput component on iOS.
681
- */
682
- caretHidden?: ?boolean,
203
+ if (lastNativeText !== props.value && typeof props.value === 'string') {
204
+ nativeUpdate.text = props.value;
205
+ setLastNativeText(props.value);
206
+ }
683
207
 
684
- /*
685
- * If `true`, contextMenuHidden is hidden. The default value is `false`.
686
- */
687
- contextMenuHidden?: ?boolean,
208
+ if (
209
+ selection &&
210
+ lastNativeSelection &&
211
+ (lastNativeSelection.start !== selection.start ||
212
+ lastNativeSelection.end !== selection.end)
213
+ ) {
214
+ nativeUpdate.selection = selection;
215
+ setLastNativeSelection({selection, mostRecentEventCount});
216
+ }
688
217
 
689
- forwardedRef?: ?ReactRefSetter<
690
- React.ElementRef<HostComponent<mixed>> & ImperativeMethods,
691
- >,
692
- |}>;
218
+ if (Object.keys(nativeUpdate).length === 0) {
219
+ return;
220
+ }
693
221
 
694
- type ImperativeMethods = $ReadOnly<{|
695
- clear: () => void,
696
- isFocused: () => boolean,
697
- getNativeRef: () => ?React.ElementRef<HostComponent<mixed>>,
698
- |}>;
222
+ if (inputRef.current != null) {
223
+ viewCommands.setTextAndSelection(
224
+ inputRef.current,
225
+ mostRecentEventCount,
226
+ text,
227
+ selection?.start ?? -1,
228
+ selection?.end ?? -1,
229
+ );
230
+ }
231
+ }, [
232
+ mostRecentEventCount,
233
+ inputRef,
234
+ props.value,
235
+ props.defaultValue,
236
+ lastNativeText,
237
+ selection,
238
+ lastNativeSelection,
239
+ text,
240
+ viewCommands,
241
+ ]);
699
242
 
700
- const emptyFunctionThatReturnsTrue = () => true;
243
+ return {setLastNativeText, setLastNativeSelection};
244
+ }
701
245
 
702
246
  /**
703
247
  * A foundational component for inputting text into the app via a
@@ -753,8 +297,8 @@ const emptyFunctionThatReturnsTrue = () => true;
753
297
  * return (
754
298
  * <TextInput
755
299
  * {...this.props} // Inherit any props passed to it; e.g., multiline, numberOfLines below
756
- * editable = {true}
757
- * maxLength = {40}
300
+ * editable={true}
301
+ * maxLength={40}
758
302
  * />
759
303
  * );
760
304
  * }
@@ -778,8 +322,8 @@ const emptyFunctionThatReturnsTrue = () => true;
778
322
  * borderBottomWidth: 1 }}
779
323
  * >
780
324
  * <UselessTextInput
781
- * multiline = {true}
782
- * numberOfLines = {4}
325
+ * multiline={true}
326
+ * numberOfLines={4}
783
327
  * onChangeText={(text) => this.setState({text})}
784
328
  * value={this.state.text}
785
329
  * />
@@ -810,96 +354,58 @@ const emptyFunctionThatReturnsTrue = () => true;
810
354
  * or control this param programmatically with native code.
811
355
  *
812
356
  */
813
- function InternalTextInput(props: Props): React.Node {
814
- const inputRef = useRef<null | React.ElementRef<HostComponent<mixed>>>(null);
815
-
816
- // Android sends a "onTextChanged" event followed by a "onSelectionChanged" event, for
817
- // the same "most recent event count".
818
- // For controlled selection, that means that immediately after text is updated,
819
- // a controlled component will pass in the *previous* selection, even if the controlled
820
- // component didn't mean to modify the selection at all.
821
- // Therefore, we ignore selections and pass them through until the selection event has
822
- // been sent.
823
- // Note that this mitigation is NOT needed for Fabric.
824
- let selection: ?Selection =
825
- props.selection == null
357
+ function InternalTextInput(props: TextInputProps): React.Node {
358
+ const {
359
+ 'aria-busy': ariaBusy,
360
+ 'aria-checked': ariaChecked,
361
+ 'aria-disabled': ariaDisabled,
362
+ 'aria-expanded': ariaExpanded,
363
+ 'aria-selected': ariaSelected,
364
+ accessibilityState,
365
+ id,
366
+ tabIndex,
367
+ selection: propsSelection,
368
+ selectionColor,
369
+ selectionHandleColor,
370
+ cursorColor,
371
+ ...otherProps
372
+ } = props;
373
+
374
+ const inputRef = useRef<null | TextInputInstance>(null);
375
+
376
+ const selection: ?Selection =
377
+ propsSelection == null
826
378
  ? null
827
379
  : {
828
- start: props.selection.start,
829
- end: props.selection.end ?? props.selection.start,
380
+ start: propsSelection.start,
381
+ end: propsSelection.end ?? propsSelection.start,
830
382
  };
831
383
 
832
- const [mostRecentEventCount, setMostRecentEventCount] = useState<number>(0);
833
-
834
- const [lastNativeText, setLastNativeText] = useState<?Stringish>(props.value);
835
- const [lastNativeSelectionState, setLastNativeSelection] = useState<{|
836
- selection: ?Selection,
837
- mostRecentEventCount: number,
838
- |}>({selection, mostRecentEventCount});
839
-
840
- const lastNativeSelection = lastNativeSelectionState.selection;
841
- const lastNativeSelectionEventCount =
842
- lastNativeSelectionState.mostRecentEventCount;
843
-
844
- if (lastNativeSelectionEventCount < mostRecentEventCount) {
845
- selection = null;
846
- }
847
-
848
384
  const text =
849
385
  typeof props.value === 'string'
850
386
  ? props.value
851
387
  : typeof props.defaultValue === 'string'
852
- ? props.defaultValue
853
- : '';
388
+ ? props.defaultValue
389
+ : undefined;
854
390
 
855
- // This is necessary in case native updates the text and JS decides
856
- // that the update should be ignored and we should stick with the value
857
- // that we have in JS.
858
- useEffect(() => {
859
- const nativeUpdate = {};
860
-
861
- if (lastNativeText !== props.value && typeof props.value === 'string') {
862
- nativeUpdate.text = props.value;
863
- setLastNativeText(props.value);
864
- }
391
+ const viewCommands =
392
+ AndroidTextInputCommands ||
393
+ (props.multiline === true
394
+ ? RCTMultilineTextInputNativeCommands
395
+ : RCTSinglelineTextInputNativeCommands);
865
396
 
866
- if (
867
- selection &&
868
- lastNativeSelection &&
869
- (lastNativeSelection.start !== selection.start ||
870
- lastNativeSelection.end !== selection.end)
871
- ) {
872
- nativeUpdate.selection = selection;
873
- setLastNativeSelection({selection, mostRecentEventCount});
874
- }
875
-
876
- if (Object.keys(nativeUpdate).length === 0) {
877
- return;
878
- }
879
-
880
- if (AndroidTextInputCommands && inputRef.current != null) {
881
- AndroidTextInputCommands.setTextAndSelection(
882
- inputRef.current,
883
- mostRecentEventCount,
884
- text,
885
- selection?.start ?? -1,
886
- selection?.end ?? -1,
887
- );
888
- } else if (inputRef.current != null) {
889
- inputRef.current.setNativeProps(nativeUpdate);
890
- }
891
- }, [
892
- mostRecentEventCount,
893
- inputRef,
894
- props.value,
895
- props.defaultValue,
896
- lastNativeText,
897
- selection,
898
- lastNativeSelection,
899
- text,
900
- ]);
397
+ const [mostRecentEventCount, setMostRecentEventCount] = useState<number>(0);
398
+ const {setLastNativeText, setLastNativeSelection} =
399
+ useTextInputStateSynchronization({
400
+ props,
401
+ inputRef,
402
+ mostRecentEventCount,
403
+ selection,
404
+ text,
405
+ viewCommands,
406
+ });
901
407
 
902
- useEffect(() => {
408
+ useLayoutEffect(() => {
903
409
  const inputRefValue = inputRef.current;
904
410
 
905
411
  if (inputRefValue != null) {
@@ -907,98 +413,87 @@ function InternalTextInput(props: Props): React.Node {
907
413
 
908
414
  return () => {
909
415
  TextInputState.unregisterInput(inputRefValue);
416
+
417
+ if (TextInputState.currentlyFocusedInput() === inputRefValue) {
418
+ nullthrows(inputRefValue).blur();
419
+ }
910
420
  };
911
421
  }
912
- }, [inputRef]);
913
-
914
- useEffect(() => {
915
- // When unmounting we need to blur the input
916
- return () => {
917
- if (isFocused()) {
918
- nullthrows(inputRef.current).blur();
919
- }
920
- };
921
- }, [inputRef]);
422
+ }, []);
922
423
 
923
- function clear(): void {
924
- if (AndroidTextInputCommands && inputRef.current != null) {
925
- AndroidTextInputCommands.setTextAndSelection(
926
- inputRef.current,
927
- mostRecentEventCount,
928
- '',
929
- 0,
930
- 0,
931
- );
932
- } else if (inputRef.current != null) {
933
- inputRef.current.setNativeProps({text: ''});
934
- }
935
- }
936
-
937
- // TODO: Fix this returning true on null === null, when no input is focused
938
- function isFocused(): boolean {
939
- return TextInputState.currentlyFocusedInput() === inputRef.current;
940
- }
941
-
942
- function getNativeRef(): ?React.ElementRef<HostComponent<mixed>> {
943
- return inputRef.current;
944
- }
945
-
946
- const _setNativeRef = setAndForwardRef({
947
- getForwardedRef: () => props.forwardedRef,
948
- setLocalRef: ref => {
949
- inputRef.current = ref;
424
+ const setLocalRef = useCallback(
425
+ (instance: HostInstance | null) => {
426
+ // $FlowExpectedError[incompatible-type]
427
+ inputRef.current = instance;
950
428
 
951
429
  /*
952
- Hi reader from the future. I'm sorry for this.
953
-
954
- This is a hack. Ideally we would forwardRef to the underlying
955
- host component. However, since TextInput has it's own methods that can be
956
- called as well, if we used the standard forwardRef then these
957
- methods wouldn't be accessible and thus be a breaking change.
958
-
959
- We have a couple of options of how to handle this:
960
- - Return a new ref with everything we methods from both. This is problematic
961
- because we need React to also know it is a host component which requires
962
- internals of the class implementation of the ref.
963
- - Break the API and have some other way to call one set of the methods or
964
- the other. This is our long term approach as we want to eventually
965
- get the methods on host components off the ref. So instead of calling
966
- ref.measure() you might call ReactNative.measure(ref). This would hopefully
967
- let the ref for TextInput then have the methods like `.clear`. Or we do it
968
- the other way and make it TextInput.clear(textInputRef) which would be fine
969
- too. Either way though is a breaking change that is longer term.
970
- - Mutate this ref. :( Gross, but accomplishes what we need in the meantime
971
- before we can get to the long term breaking change.
972
- */
973
- if (ref) {
974
- ref.clear = clear;
975
- ref.isFocused = isFocused;
976
- ref.getNativeRef = getNativeRef;
430
+ Hi reader from the future. I'm sorry for this.
431
+
432
+ This is a hack. Ideally we would forwardRef to the underlying
433
+ host component. However, since TextInput has it's own methods that can be
434
+ called as well, if we used the standard forwardRef then these
435
+ methods wouldn't be accessible and thus be a breaking change.
436
+
437
+ We have a couple of options of how to handle this:
438
+ - Return a new ref with everything we methods from both. This is problematic
439
+ because we need React to also know it is a host component which requires
440
+ internals of the class implementation of the ref.
441
+ - Break the API and have some other way to call one set of the methods or
442
+ the other. This is our long term approach as we want to eventually
443
+ get the methods on host components off the ref. So instead of calling
444
+ ref.measure() you might call ReactNative.measure(ref). This would hopefully
445
+ let the ref for TextInput then have the methods like `.clear`. Or we do it
446
+ the other way and make it TextInput.clear(textInputRef) which would be fine
447
+ too. Either way though is a breaking change that is longer term.
448
+ - Mutate this ref. :( Gross, but accomplishes what we need in the meantime
449
+ before we can get to the long term breaking change.
450
+ */
451
+ if (instance != null) {
452
+ // $FlowFixMe[prop-missing] - See the explanation above.
453
+ // $FlowFixMe[unsafe-object-assign]
454
+ Object.assign(instance, {
455
+ clear(): void {
456
+ if (inputRef.current != null) {
457
+ viewCommands.setTextAndSelection(
458
+ inputRef.current,
459
+ mostRecentEventCount,
460
+ '',
461
+ 0,
462
+ 0,
463
+ );
464
+ }
465
+ },
466
+ // TODO: Fix this returning true on null === null, when no input is focused
467
+ isFocused(): boolean {
468
+ return TextInputState.currentlyFocusedInput() === inputRef.current;
469
+ },
470
+ getNativeRef(): ?TextInputInstance {
471
+ return inputRef.current;
472
+ },
473
+ setSelection(start: number, end: number): void {
474
+ if (inputRef.current != null) {
475
+ viewCommands.setTextAndSelection(
476
+ inputRef.current,
477
+ mostRecentEventCount,
478
+ null,
479
+ start,
480
+ end,
481
+ );
482
+ }
483
+ },
484
+ });
977
485
  }
978
486
  },
979
- });
487
+ [mostRecentEventCount, viewCommands],
488
+ );
980
489
 
981
- const _onPress = (event: PressEvent) => {
982
- if (props.editable || props.editable === undefined) {
983
- nullthrows(inputRef.current).focus();
984
- }
985
- };
490
+ // $FlowExpectedError[incompatible-call]
491
+ const ref = useMergeRefs<HostInstance>(setLocalRef, props.forwardedRef);
986
492
 
987
- const _onChange = (event: ChangeEvent) => {
988
- if (AndroidTextInputCommands && inputRef.current != null) {
989
- // Do nothing
990
- } else if (inputRef.current != null) {
991
- // Make sure to fire the mostRecentEventCount first so it is already set on
992
- // native when the text value is set.
993
- // This is now only relevant on iOS until we migrate to ViewCommands everywhere
994
- inputRef.current.setNativeProps({
995
- mostRecentEventCount: event.nativeEvent.eventCount,
996
- });
997
- }
998
-
999
- const text = event.nativeEvent.text;
493
+ const _onChange = (event: TextInputChangeEvent) => {
494
+ const currentText = event.nativeEvent.text;
1000
495
  props.onChange && props.onChange(event);
1001
- props.onChangeText && props.onChangeText(text);
496
+ props.onChangeText && props.onChangeText(currentText);
1002
497
 
1003
498
  if (inputRef.current == null) {
1004
499
  // calling `props.onChange` or `props.onChangeText`
@@ -1006,7 +501,7 @@ function InternalTextInput(props: Props): React.Node {
1006
501
  return;
1007
502
  }
1008
503
 
1009
- setLastNativeText(text);
504
+ setLastNativeText(currentText);
1010
505
  // This must happen last, after we call setLastNativeText.
1011
506
  // Different ordering can cause bugs when editing AndroidTextInputs
1012
507
  // with multiple Fragments.
@@ -1014,7 +509,7 @@ function InternalTextInput(props: Props): React.Node {
1014
509
  setMostRecentEventCount(event.nativeEvent.eventCount);
1015
510
  };
1016
511
 
1017
- const _onSelectionChange = (event: SelectionChangeEvent) => {
512
+ const _onSelectionChange = (event: TextInputSelectionChangeEvent) => {
1018
513
  props.onSelectionChange && props.onSelectionChange(event);
1019
514
 
1020
515
  if (inputRef.current == null) {
@@ -1048,31 +543,153 @@ function InternalTextInput(props: Props): React.Node {
1048
543
  };
1049
544
 
1050
545
  let textInput = null;
1051
- let additionalTouchableProps: {|
1052
- rejectResponderTermination?: $PropertyType<
1053
- Props,
1054
- 'rejectResponderTermination',
1055
- >,
1056
- // This is a hack to let Flow know we want an exact object
1057
- |} = {...null};
1058
546
 
1059
- if (Platform.OS === 'ios') {
1060
- const RCTTextInputView = props.multiline
1061
- ? RCTMultilineTextInputView
1062
- : RCTSinglelineTextInputView;
547
+ const multiline = props.multiline ?? false;
548
+
549
+ let submitBehavior: SubmitBehavior;
550
+ if (props.submitBehavior != null) {
551
+ // `submitBehavior` is set explicitly
552
+ if (!multiline && props.submitBehavior === 'newline') {
553
+ // For single line text inputs, `'newline'` is not a valid option
554
+ submitBehavior = 'blurAndSubmit';
555
+ } else {
556
+ submitBehavior = props.submitBehavior;
557
+ }
558
+ } else if (multiline) {
559
+ if (props.blurOnSubmit === true) {
560
+ submitBehavior = 'blurAndSubmit';
561
+ } else {
562
+ submitBehavior = 'newline';
563
+ }
564
+ } else {
565
+ // Single line
566
+ if (props.blurOnSubmit !== false) {
567
+ submitBehavior = 'blurAndSubmit';
568
+ } else {
569
+ submitBehavior = 'submit';
570
+ }
571
+ }
1063
572
 
1064
- const style = props.multiline
1065
- ? [styles.multilineInput, props.style]
1066
- : props.style;
573
+ const accessible = props.accessible !== false;
574
+ const focusable = props.focusable !== false;
575
+
576
+ const {
577
+ editable,
578
+ hitSlop,
579
+ onPress,
580
+ onPressIn,
581
+ onPressOut,
582
+ rejectResponderTermination,
583
+ } = props;
584
+
585
+ const config = useMemo(
586
+ () => ({
587
+ hitSlop,
588
+ onPress: (event: GestureResponderEvent) => {
589
+ onPress?.(event);
590
+ if (editable !== false) {
591
+ if (inputRef.current != null) {
592
+ inputRef.current.focus();
593
+ }
594
+ }
595
+ },
596
+ onPressIn: onPressIn,
597
+ onPressOut: onPressOut,
598
+ cancelable: Platform.OS === 'ios' ? !rejectResponderTermination : null,
599
+ }),
600
+ [
601
+ editable,
602
+ hitSlop,
603
+ onPress,
604
+ onPressIn,
605
+ onPressOut,
606
+ rejectResponderTermination,
607
+ ],
608
+ );
609
+
610
+ // Hide caret during test runs due to a flashing caret
611
+ // makes screenshot tests flakey
612
+ let caretHidden = props.caretHidden;
613
+ if (Platform.isTesting) {
614
+ caretHidden = true;
615
+ }
616
+
617
+ // TextInput handles onBlur and onFocus events
618
+ // so omitting onBlur and onFocus pressability handlers here.
619
+ const {onBlur, onFocus, ...eventHandlers} = usePressability(config);
620
+
621
+ let _accessibilityState;
622
+ if (
623
+ accessibilityState != null ||
624
+ ariaBusy != null ||
625
+ ariaChecked != null ||
626
+ ariaDisabled != null ||
627
+ ariaExpanded != null ||
628
+ ariaSelected != null
629
+ ) {
630
+ _accessibilityState = {
631
+ busy: ariaBusy ?? accessibilityState?.busy,
632
+ checked: ariaChecked ?? accessibilityState?.checked,
633
+ disabled: ariaDisabled ?? accessibilityState?.disabled,
634
+ expanded: ariaExpanded ?? accessibilityState?.expanded,
635
+ selected: ariaSelected ?? accessibilityState?.selected,
636
+ };
637
+ }
638
+
639
+ // Keep the original (potentially nested) style when possible, as React can diff these more efficiently
640
+ let _style = props.style;
641
+ const flattenedStyle = flattenStyle<TextStyleProp>(props.style);
642
+ if (flattenedStyle != null) {
643
+ let overrides: ?{...TextStyleInternal} = null;
644
+ if (typeof flattenedStyle?.fontWeight === 'number') {
645
+ overrides = overrides || ({}: {...TextStyleInternal});
646
+ overrides.fontWeight =
647
+ // $FlowFixMe[incompatible-cast]
648
+ (flattenedStyle.fontWeight.toString(): TextStyleInternal['fontWeight']);
649
+ }
650
+
651
+ if (flattenedStyle.verticalAlign != null) {
652
+ overrides = overrides || ({}: {...TextStyleInternal});
653
+ overrides.textAlignVertical =
654
+ verticalAlignToTextAlignVerticalMap[flattenedStyle.verticalAlign];
655
+ overrides.verticalAlign = undefined;
656
+ }
657
+
658
+ if (overrides != null) {
659
+ // $FlowFixMe[incompatible-type]
660
+ _style = [_style, overrides];
661
+ }
662
+ }
1067
663
 
1068
- additionalTouchableProps.rejectResponderTermination =
1069
- props.rejectResponderTermination;
664
+ if (Platform.OS === 'ios') {
665
+ const RCTTextInputView =
666
+ props.multiline === true
667
+ ? RCTMultilineTextInputView
668
+ : RCTSinglelineTextInputView;
669
+
670
+ const useMultilineDefaultStyle =
671
+ props.multiline === true &&
672
+ (flattenedStyle == null ||
673
+ (flattenedStyle.padding == null &&
674
+ flattenedStyle.paddingVertical == null &&
675
+ flattenedStyle.paddingTop == null));
1070
676
 
1071
677
  textInput = (
1072
678
  <RCTTextInputView
1073
- ref={_setNativeRef}
1074
- {...props}
679
+ // Figure out imperative + forward refs.
680
+ ref={(ref: $FlowFixMe)}
681
+ {...otherProps}
682
+ {...eventHandlers}
683
+ acceptDragAndDropTypes={props.experimental_acceptDragAndDropTypes}
684
+ accessibilityState={_accessibilityState}
685
+ accessible={accessible}
686
+ submitBehavior={submitBehavior}
687
+ caretHidden={caretHidden}
1075
688
  dataDetectorTypes={props.dataDetectorTypes}
689
+ focusable={tabIndex !== undefined ? !tabIndex : focusable}
690
+ mostRecentEventCount={mostRecentEventCount}
691
+ nativeID={id ?? props.nativeID}
692
+ numberOfLines={props.rows ?? props.numberOfLines}
1076
693
  onBlur={_onBlur}
1077
694
  onChange={_onChange}
1078
695
  onContentSizeChange={props.onContentSizeChange}
@@ -1081,91 +698,247 @@ function InternalTextInput(props: Props): React.Node {
1081
698
  onSelectionChange={_onSelectionChange}
1082
699
  onSelectionChangeShouldSetResponder={emptyFunctionThatReturnsTrue}
1083
700
  selection={selection}
1084
- style={style}
701
+ selectionColor={selectionColor}
702
+ style={StyleSheet.compose(
703
+ useMultilineDefaultStyle ? styles.multilineDefault : null,
704
+ _style,
705
+ )}
1085
706
  text={text}
1086
707
  />
1087
708
  );
1088
709
  } else if (Platform.OS === 'android') {
1089
- const style = [props.style];
1090
710
  const autoCapitalize = props.autoCapitalize || 'sentences';
711
+ const _accessibilityLabelledBy =
712
+ props?.['aria-labelledby'] ?? props?.accessibilityLabelledBy;
713
+ const placeholder = props.placeholder ?? '';
1091
714
  let children = props.children;
1092
- let childCount = 0;
1093
- React.Children.forEach(children, () => ++childCount);
715
+ const childCount = React.Children.count(children);
1094
716
  invariant(
1095
- !(props.value && childCount),
717
+ !(props.value != null && childCount),
1096
718
  'Cannot specify both value and children.',
1097
719
  );
1098
720
  if (childCount > 1) {
1099
721
  children = <Text>{children}</Text>;
1100
722
  }
1101
-
723
+ // For consistency with iOS set cursor/selectionHandle color as selectionColor
724
+ const colorProps = {
725
+ selectionColor,
726
+ selectionHandleColor:
727
+ selectionHandleColor === undefined
728
+ ? selectionColor
729
+ : selectionHandleColor,
730
+ cursorColor: cursorColor === undefined ? selectionColor : cursorColor,
731
+ };
1102
732
  textInput = (
1103
- /* $FlowFixMe the types for AndroidTextInput don't match up exactly with
1104
- the props for TextInput. This will need to get fixed */
733
+ /* $FlowFixMe[prop-missing] the types for AndroidTextInput don't match up
734
+ * exactly with the props for TextInput. This will need to get fixed */
735
+ /* $FlowFixMe[incompatible-type] the types for AndroidTextInput don't
736
+ * match up exactly with the props for TextInput. This will need to get
737
+ * fixed */
738
+ /* $FlowFixMe[incompatible-type-arg] the types for AndroidTextInput don't
739
+ * match up exactly with the props for TextInput. This will need to get
740
+ * fixed */
1105
741
  <AndroidTextInput
1106
- ref={_setNativeRef}
1107
- {...props}
742
+ // Figure out imperative + forward refs.
743
+ ref={(ref: $FlowFixMe)}
744
+ {...otherProps}
745
+ {...colorProps}
746
+ {...eventHandlers}
747
+ accessibilityState={_accessibilityState}
748
+ accessibilityLabelledBy={_accessibilityLabelledBy}
749
+ accessible={accessible}
750
+ acceptDragAndDropTypes={props.experimental_acceptDragAndDropTypes}
1108
751
  autoCapitalize={autoCapitalize}
752
+ submitBehavior={submitBehavior}
753
+ caretHidden={caretHidden}
1109
754
  children={children}
1110
755
  disableFullscreenUI={props.disableFullscreenUI}
756
+ focusable={tabIndex !== undefined ? !tabIndex : focusable}
1111
757
  mostRecentEventCount={mostRecentEventCount}
758
+ nativeID={id ?? props.nativeID}
759
+ numberOfLines={props.rows ?? props.numberOfLines}
1112
760
  onBlur={_onBlur}
1113
761
  onChange={_onChange}
1114
762
  onFocus={_onFocus}
1115
- /* $FlowFixMe the types for AndroidTextInput don't match up exactly
1116
- * with the props for TextInput. This will need to get fixed */
763
+ /* $FlowFixMe[prop-missing] the types for AndroidTextInput don't match
764
+ * up exactly with the props for TextInput. This will need to get fixed
765
+ */
766
+ /* $FlowFixMe[incompatible-type-arg] the types for AndroidTextInput
767
+ * don't match up exactly with the props for TextInput. This will need
768
+ * to get fixed */
1117
769
  onScroll={_onScroll}
1118
770
  onSelectionChange={_onSelectionChange}
1119
- selection={selection}
1120
- style={style}
771
+ placeholder={placeholder}
772
+ style={_style}
1121
773
  text={text}
1122
774
  textBreakStrategy={props.textBreakStrategy}
1123
775
  />
1124
776
  );
1125
777
  }
1126
- return (
1127
- <TextAncestor.Provider value={true}>
1128
- <TouchableWithoutFeedback
1129
- onLayout={props.onLayout}
1130
- onPress={_onPress}
1131
- accessible={props.accessible}
1132
- accessibilityLabel={props.accessibilityLabel}
1133
- accessibilityRole={props.accessibilityRole}
1134
- accessibilityState={props.accessibilityState}
1135
- nativeID={props.nativeID}
1136
- testID={props.testID}
1137
- {...additionalTouchableProps}>
1138
- {textInput}
1139
- </TouchableWithoutFeedback>
1140
- </TextAncestor.Provider>
1141
- );
778
+ return <TextAncestorContext value={true}>{textInput}</TextAncestorContext>;
1142
779
  }
1143
780
 
1144
- const ExportedForwardRef: React.AbstractComponent<
1145
- React.ElementConfig<typeof InternalTextInput>,
1146
- React.ElementRef<HostComponent<mixed>> & ImperativeMethods,
1147
- > = React.forwardRef(function TextInput(
1148
- props,
1149
- forwardedRef: ReactRefSetter<
1150
- React.ElementRef<HostComponent<mixed>> & ImperativeMethods,
1151
- >,
1152
- ) {
1153
- return <InternalTextInput {...props} forwardedRef={forwardedRef} />;
1154
- });
1155
-
1156
- // $FlowFixMe
1157
- ExportedForwardRef.defaultProps = {
1158
- allowFontScaling: true,
1159
- rejectResponderTermination: true,
1160
- underlineColorAndroid: 'transparent',
781
+ const enterKeyHintToReturnTypeMap = {
782
+ enter: 'default',
783
+ done: 'done',
784
+ go: 'go',
785
+ next: 'next',
786
+ previous: 'previous',
787
+ search: 'search',
788
+ send: 'send',
789
+ } as const;
790
+
791
+ const inputModeToKeyboardTypeMap = {
792
+ none: 'default',
793
+ text: 'default',
794
+ decimal: 'decimal-pad',
795
+ numeric: 'number-pad',
796
+ tel: 'phone-pad',
797
+ search:
798
+ Platform.OS === 'ios' ? ('web-search' as const) : ('default' as const),
799
+ email: 'email-address',
800
+ url: 'url',
801
+ } as const;
802
+
803
+ // Map HTML autocomplete values to Android autoComplete values
804
+ const autoCompleteWebToAutoCompleteAndroidMap = {
805
+ 'address-line1': 'postal-address-region',
806
+ 'address-line2': 'postal-address-locality',
807
+ bday: 'birthdate-full',
808
+ 'bday-day': 'birthdate-day',
809
+ 'bday-month': 'birthdate-month',
810
+ 'bday-year': 'birthdate-year',
811
+ 'cc-csc': 'cc-csc',
812
+ 'cc-exp': 'cc-exp',
813
+ 'cc-exp-month': 'cc-exp-month',
814
+ 'cc-exp-year': 'cc-exp-year',
815
+ 'cc-number': 'cc-number',
816
+ country: 'postal-address-country',
817
+ 'current-password': 'password',
818
+ email: 'email',
819
+ 'honorific-prefix': 'name-prefix',
820
+ 'honorific-suffix': 'name-suffix',
821
+ name: 'name',
822
+ 'additional-name': 'name-middle',
823
+ 'family-name': 'name-family',
824
+ 'given-name': 'name-given',
825
+ 'new-password': 'password-new',
826
+ off: 'off',
827
+ 'one-time-code': 'sms-otp',
828
+ 'postal-code': 'postal-code',
829
+ sex: 'gender',
830
+ 'street-address': 'street-address',
831
+ tel: 'tel',
832
+ 'tel-country-code': 'tel-country-code',
833
+ 'tel-national': 'tel-national',
834
+ username: 'username',
835
+ } as const;
836
+
837
+ // Map HTML autocomplete values to iOS textContentType values
838
+ const autoCompleteWebToTextContentTypeMap = {
839
+ 'address-line1': 'streetAddressLine1',
840
+ 'address-line2': 'streetAddressLine2',
841
+ bday: 'birthdate',
842
+ 'bday-day': 'birthdateDay',
843
+ 'bday-month': 'birthdateMonth',
844
+ 'bday-year': 'birthdateYear',
845
+ 'cc-csc': 'creditCardSecurityCode',
846
+ 'cc-exp-month': 'creditCardExpirationMonth',
847
+ 'cc-exp-year': 'creditCardExpirationYear',
848
+ 'cc-exp': 'creditCardExpiration',
849
+ 'cc-given-name': 'creditCardGivenName',
850
+ 'cc-additional-name': 'creditCardMiddleName',
851
+ 'cc-family-name': 'creditCardFamilyName',
852
+ 'cc-name': 'creditCardName',
853
+ 'cc-number': 'creditCardNumber',
854
+ 'cc-type': 'creditCardType',
855
+ 'current-password': 'password',
856
+ country: 'countryName',
857
+ email: 'emailAddress',
858
+ name: 'name',
859
+ 'additional-name': 'middleName',
860
+ 'family-name': 'familyName',
861
+ 'given-name': 'givenName',
862
+ nickname: 'nickname',
863
+ 'honorific-prefix': 'namePrefix',
864
+ 'honorific-suffix': 'nameSuffix',
865
+ 'new-password': 'newPassword',
866
+ off: 'none',
867
+ 'one-time-code': 'oneTimeCode',
868
+ organization: 'organizationName',
869
+ 'organization-title': 'jobTitle',
870
+ 'postal-code': 'postalCode',
871
+ 'street-address': 'fullStreetAddress',
872
+ tel: 'telephoneNumber',
873
+ url: 'URL',
874
+ username: 'username',
875
+ } as const;
876
+
877
+ const TextInput: component(
878
+ ref?: React.RefSetter<TextInputInstance>,
879
+ ...props: React.ElementConfig<typeof InternalTextInput>
880
+ ) = function TextInput({
881
+ ref: forwardedRef,
882
+ allowFontScaling = true,
883
+ rejectResponderTermination = true,
884
+ underlineColorAndroid = 'transparent',
885
+ autoComplete,
886
+ textContentType,
887
+ readOnly,
888
+ editable,
889
+ enterKeyHint,
890
+ returnKeyType,
891
+ inputMode,
892
+ showSoftInputOnFocus,
893
+ keyboardType,
894
+ ...restProps
895
+ }: {
896
+ ref?: React.RefSetter<TextInputInstance>,
897
+ ...React.ElementConfig<typeof InternalTextInput>,
898
+ }) {
899
+ return (
900
+ <InternalTextInput
901
+ allowFontScaling={allowFontScaling}
902
+ rejectResponderTermination={rejectResponderTermination}
903
+ underlineColorAndroid={underlineColorAndroid}
904
+ editable={readOnly !== undefined ? !readOnly : editable}
905
+ returnKeyType={
906
+ enterKeyHint ? enterKeyHintToReturnTypeMap[enterKeyHint] : returnKeyType
907
+ }
908
+ keyboardType={
909
+ inputMode ? inputModeToKeyboardTypeMap[inputMode] : keyboardType
910
+ }
911
+ showSoftInputOnFocus={
912
+ inputMode == null ? showSoftInputOnFocus : inputMode !== 'none'
913
+ }
914
+ autoComplete={
915
+ Platform.OS === 'android'
916
+ ? // $FlowFixMe[invalid-computed-prop]
917
+ // $FlowFixMe[prop-missing]
918
+ (autoCompleteWebToAutoCompleteAndroidMap[autoComplete] ??
919
+ autoComplete)
920
+ : undefined
921
+ }
922
+ textContentType={
923
+ textContentType != null
924
+ ? textContentType
925
+ : Platform.OS === 'ios' &&
926
+ autoComplete &&
927
+ autoComplete in autoCompleteWebToTextContentTypeMap
928
+ ? // $FlowFixMe[prop-missing]
929
+ autoCompleteWebToTextContentTypeMap[autoComplete]
930
+ : textContentType
931
+ }
932
+ {...restProps}
933
+ forwardedRef={forwardedRef}
934
+ />
935
+ );
1161
936
  };
1162
937
 
1163
- // TODO: Deprecate this
1164
- // $FlowFixMe
1165
- ExportedForwardRef.propTypes = DeprecatedTextInputPropTypes;
938
+ TextInput.displayName = 'TextInput';
1166
939
 
1167
- // $FlowFixMe
1168
- ExportedForwardRef.State = {
940
+ // $FlowFixMe[prop-missing]
941
+ TextInput.State = {
1169
942
  currentlyFocusedInput: TextInputState.currentlyFocusedInput,
1170
943
 
1171
944
  currentlyFocusedField: TextInputState.currentlyFocusedField,
@@ -1173,18 +946,12 @@ ExportedForwardRef.State = {
1173
946
  blurTextInput: TextInputState.blurTextInput,
1174
947
  };
1175
948
 
1176
- type TextInputComponentStatics = $ReadOnly<{|
1177
- State: $ReadOnly<{|
1178
- currentlyFocusedInput: typeof TextInputState.currentlyFocusedInput,
1179
- currentlyFocusedField: typeof TextInputState.currentlyFocusedField,
1180
- focusTextInput: typeof TextInputState.focusTextInput,
1181
- blurTextInput: typeof TextInputState.blurTextInput,
1182
- |}>,
1183
- propTypes: typeof DeprecatedTextInputPropTypes,
1184
- |}>;
949
+ export type TextInputComponentStatics = $ReadOnly<{
950
+ State: TextInputStateType,
951
+ }>;
1185
952
 
1186
953
  const styles = StyleSheet.create({
1187
- multilineInput: {
954
+ multilineDefault: {
1188
955
  // This default top inset makes RCTMultilineTextInputView seem as close as possible
1189
956
  // to single-line RCTSinglelineTextInputView defaults, using the system defaults
1190
957
  // of font size 17 and a height of 31 points.
@@ -1192,11 +959,12 @@ const styles = StyleSheet.create({
1192
959
  },
1193
960
  });
1194
961
 
1195
- module.exports = ((ExportedForwardRef: any): React.AbstractComponent<
1196
- React.ElementConfig<typeof InternalTextInput>,
1197
- $ReadOnly<{|
1198
- ...React.ElementRef<HostComponent<mixed>>,
1199
- ...ImperativeMethods,
1200
- |}>,
1201
- > &
1202
- TextInputComponentStatics);
962
+ const verticalAlignToTextAlignVerticalMap = {
963
+ auto: 'auto',
964
+ top: 'top',
965
+ bottom: 'bottom',
966
+ middle: 'center',
967
+ } as const;
968
+
969
+ // $FlowFixMe[unclear-type] Unclear type. Using `any` type is not safe.
970
+ export default TextInput as any as TextInputType;