@office-iss/react-native-win32 0.0.0-canary.31 → 0.0.0-canary.310

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 (1517) hide show
  1. package/.eslintignore +5 -2
  2. package/.eslintrc.js +27 -2
  3. package/.flowconfig +93 -45
  4. package/CHANGELOG.json +16015 -9584
  5. package/CHANGELOG.md +2572 -15
  6. package/IntegrationTests/AccessibilityManagerTest.js +27 -22
  7. package/IntegrationTests/AppEventsTest.js +49 -34
  8. package/IntegrationTests/GlobalEvalWithSourceUrlTest.js +22 -19
  9. package/IntegrationTests/ImageCachePolicyTest.js +71 -88
  10. package/IntegrationTests/ImageSnapshotTest.js +19 -22
  11. package/IntegrationTests/IntegrationTestHarnessTest.js +36 -51
  12. package/IntegrationTests/IntegrationTestsApp.js +28 -27
  13. package/IntegrationTests/LayoutEventsTest.js +26 -22
  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 +26 -10
  19. package/IntegrationTests/WebSocketTest.js +8 -7
  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 +91 -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 +193 -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 +123 -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 +198 -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 +23 -0
  54. package/Libraries/Animated/components/AnimatedImage.js +23 -0
  55. package/Libraries/Animated/components/AnimatedScrollView.js +146 -0
  56. package/Libraries/Animated/components/AnimatedSectionList.js +26 -0
  57. package/Libraries/Animated/components/AnimatedText.js +23 -0
  58. package/Libraries/Animated/components/AnimatedView.js +22 -0
  59. package/Libraries/Animated/createAnimatedComponent.js +166 -0
  60. package/Libraries/Animated/nodes/AnimatedAddition.js +71 -0
  61. package/Libraries/Animated/nodes/AnimatedColor.js +339 -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 +456 -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 +187 -0
  68. package/Libraries/Animated/nodes/AnimatedObject.js +174 -0
  69. package/Libraries/Animated/nodes/AnimatedProps.js +363 -0
  70. package/Libraries/Animated/nodes/AnimatedStyle.js +258 -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 +374 -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 +117 -144
  83. package/Libraries/AppState/NativeAppState.js +5 -21
  84. package/Libraries/BatchedBridge/BatchedBridge.js +7 -4
  85. package/Libraries/BatchedBridge/MessageQueue.js +149 -119
  86. package/Libraries/BatchedBridge/NativeModules.d.ts +25 -0
  87. package/Libraries/BatchedBridge/NativeModules.js +44 -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 +98 -91
  97. package/Libraries/Blob/URLSearchParams.js +152 -0
  98. package/Libraries/Blob/URLSearchParams.js.flow +29 -0
  99. package/Libraries/Components/AccessibilityInfo/AccessibilityInfo.d.ts +183 -0
  100. package/Libraries/Components/AccessibilityInfo/AccessibilityInfo.js +532 -0
  101. package/Libraries/Components/AccessibilityInfo/AccessibilityInfo.win32.js +507 -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 +332 -129
  121. package/Libraries/Components/Button.win32.js +460 -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 +48 -128
  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 +420 -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 +1199 -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 +225 -69
  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 +218 -149
  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 +1052 -0
  194. package/Libraries/Components/TextInput/TextInput.flow.js +1179 -0
  195. package/Libraries/Components/TextInput/TextInput.flow.win32.js +1213 -0
  196. package/Libraries/Components/TextInput/TextInput.js +704 -917
  197. package/Libraries/Components/TextInput/TextInput.win32.js +1126 -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 +45 -34
  201. package/Libraries/Components/TextInput/Win32TextInputNativeComponent.js +25 -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 +30 -19
  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 +87 -69
  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 +510 -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 +229 -75
  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 +291 -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 +28 -72
  250. package/Libraries/Components/View/ViewPropTypes.d.ts +374 -0
  251. package/Libraries/Components/View/ViewPropTypes.js +211 -183
  252. package/Libraries/Components/View/ViewPropTypes.win32.js +606 -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 +199 -0
  257. package/Libraries/Core/Devtools/loadBundleFromServer.win32.js +200 -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 +146 -115
  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 +49 -40
  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 +108 -129
  274. package/Libraries/Core/Timers/NativeTiming.js +6 -18
  275. package/Libraries/Core/Timers/immediateShim.js +62 -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 +523 -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 +31 -67
  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 +424 -267
  309. package/Libraries/Image/Image.d.ts +389 -0
  310. package/Libraries/Image/Image.ios.js +156 -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 +163 -93
  314. package/Libraries/Image/ImageAnalyticsTagContext.js +22 -0
  315. package/Libraries/Image/ImageBackground.js +32 -14
  316. package/Libraries/Image/ImageInjection.js +84 -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 +88 -0
  323. package/Libraries/Image/ImageTypes.d.ts +25 -25
  324. package/Libraries/Image/ImageTypes.flow.js +84 -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 +58 -102
  350. package/Libraries/Interaction/TouchHistoryMath.js +59 -30
  351. package/Libraries/LayoutAnimation/LayoutAnimation.d.ts +84 -0
  352. package/Libraries/LayoutAnimation/LayoutAnimation.js +116 -47
  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 +224 -162
  360. package/Libraries/Lists/SectionList.d.ts +271 -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 +14 -2225
  366. package/Libraries/Lists/VirtualizedListContext.js +18 -0
  367. package/Libraries/Lists/VirtualizedSectionList.js +13 -566
  368. package/Libraries/LogBox/Data/LogBoxData.js +158 -94
  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 +50 -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 +457 -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.d.ts +98 -0
  418. package/Libraries/NativeComponent/NativeComponentRegistry.js +166 -0
  419. package/Libraries/NativeComponent/NativeComponentRegistryUnstable.js +32 -0
  420. package/Libraries/NativeComponent/PlatformBaseViewConfig.js +25 -0
  421. package/Libraries/NativeComponent/StaticViewConfigValidator.js +148 -0
  422. package/Libraries/NativeComponent/ViewConfig.js +52 -0
  423. package/Libraries/NativeComponent/ViewConfigIgnore.js +51 -0
  424. package/Libraries/NativeModules/specs/NativeDevMenu.js +5 -15
  425. package/Libraries/NativeModules/specs/NativeDevSettings.js +5 -25
  426. package/Libraries/NativeModules/specs/NativeDeviceEventManager.js +5 -11
  427. package/Libraries/NativeModules/specs/NativeDialogManagerAndroid.js +5 -40
  428. package/Libraries/NativeModules/specs/NativeLogBox.js +5 -12
  429. package/Libraries/NativeModules/specs/NativeRedBox.js +5 -12
  430. package/Libraries/NativeModules/specs/NativeSourceCode.js +5 -13
  431. package/Libraries/Network/FormData.js +22 -6
  432. package/Libraries/Network/NativeNetworkingAndroid.js +5 -29
  433. package/Libraries/Network/NativeNetworkingIOS.js +5 -29
  434. package/Libraries/Network/RCTNetworking.android.js +38 -24
  435. package/Libraries/Network/RCTNetworking.ios.js +26 -19
  436. package/Libraries/Network/RCTNetworking.js +17 -0
  437. package/Libraries/Network/RCTNetworking.js.flow +44 -0
  438. package/Libraries/Network/RCTNetworking.win32.js +44 -70
  439. package/Libraries/Network/RCTNetworkingEventDefinitions.flow.js +57 -0
  440. package/Libraries/Network/XMLHttpRequest.js +237 -90
  441. package/Libraries/Network/convertRequestBody.js +9 -6
  442. package/Libraries/Network/fetch.js +6 -4
  443. package/Libraries/Performance/Systrace.d.ts +66 -0
  444. package/Libraries/Performance/Systrace.js +117 -172
  445. package/Libraries/PermissionsAndroid/NativePermissionsAndroid.js +5 -51
  446. package/Libraries/PermissionsAndroid/PermissionsAndroid.d.ts +163 -0
  447. package/Libraries/PermissionsAndroid/PermissionsAndroid.js +107 -66
  448. package/Libraries/PersonaCoin/PersonaCoin.d.ts +3 -3
  449. package/Libraries/PersonaCoin/PersonaCoin.js +16 -22
  450. package/Libraries/PersonaCoin/PersonaCoin.js.map +1 -0
  451. package/Libraries/PersonaCoin/PersonaCoinPropTypes.d.ts +2 -2
  452. package/Libraries/PersonaCoin/PersonaCoinPropTypes.js +20 -20
  453. package/Libraries/PersonaCoin/PersonaCoinPropTypes.js.map +1 -0
  454. package/Libraries/PersonaCoin/PersonaCoinTypes.d.ts +33 -33
  455. package/Libraries/PersonaCoin/PersonaCoinTypes.js +24 -24
  456. package/Libraries/PersonaCoin/PersonaCoinTypes.js.map +1 -0
  457. package/Libraries/Pressability/HoverState.js +7 -4
  458. package/Libraries/Pressability/HoverState.win32.js +65 -0
  459. package/Libraries/Pressability/Pressability.js +279 -185
  460. package/Libraries/Pressability/Pressability.win32.js +1094 -0
  461. package/Libraries/Pressability/PressabilityDebug.js +33 -29
  462. package/Libraries/Pressability/PressabilityPerformanceEventEmitter.js +49 -0
  463. package/Libraries/Pressability/PressabilityTypes.js +18 -0
  464. package/Libraries/Pressability/usePressability.js +31 -14
  465. package/Libraries/Promise.js +7 -37
  466. package/Libraries/PushNotificationIOS/NativePushNotificationManagerIOS.js +5 -65
  467. package/Libraries/PushNotificationIOS/PushNotificationIOS.d.ts +295 -0
  468. package/Libraries/PushNotificationIOS/PushNotificationIOS.js +249 -94
  469. package/Libraries/QuirkSettings/CachingNativeQuirkSettings.js +30 -0
  470. package/Libraries/QuirkSettings/NativeQuirkSettings.js +17 -0
  471. package/Libraries/QuirkSettings/QuirkSettings.js +34 -0
  472. package/Libraries/QuirkSettings/Quirks.js +17 -0
  473. package/Libraries/ReactNative/AppContainer-dev.js +210 -0
  474. package/Libraries/ReactNative/AppContainer-prod.js +49 -0
  475. package/Libraries/ReactNative/AppContainer.js +16 -141
  476. package/Libraries/ReactNative/AppRegistry.d.ts +121 -0
  477. package/Libraries/ReactNative/AppRegistry.flow.js +49 -0
  478. package/Libraries/ReactNative/AppRegistry.js +21 -292
  479. package/Libraries/ReactNative/AppRegistry.js.flow +23 -0
  480. package/Libraries/ReactNative/AppRegistryImpl.js +307 -0
  481. package/Libraries/ReactNative/BridgelessUIManager.js +414 -0
  482. package/Libraries/ReactNative/DisplayMode.js +32 -0
  483. package/Libraries/ReactNative/FabricUIManager.js +140 -29
  484. package/Libraries/ReactNative/HeadlessJsTaskError.js +1 -3
  485. package/Libraries/ReactNative/I18nManager.d.ts +25 -0
  486. package/Libraries/ReactNative/I18nManager.js +22 -16
  487. package/Libraries/ReactNative/NativeHeadlessJsTaskSupport.js +5 -12
  488. package/Libraries/ReactNative/NativeI18nManager.js +5 -17
  489. package/Libraries/ReactNative/NativeUIManager.js +5 -113
  490. package/Libraries/ReactNative/PaperUIManager.js +82 -55
  491. package/Libraries/ReactNative/PaperUIManager.win32.js +210 -0
  492. package/Libraries/ReactNative/ReactFabricPublicInstance/ReactFabricPublicInstance.js +90 -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 +71 -31
  507. package/Libraries/ReactNative/renderApplication.js +83 -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 +96 -21
  512. package/Libraries/ReactPrivate/ReactNativePrivateInterface.js.flow +51 -0
  513. package/Libraries/Renderer/implementations/ReactFabric-dev.js +18637 -19910
  514. package/Libraries/Renderer/implementations/ReactFabric-prod.js +8804 -5543
  515. package/Libraries/Renderer/implementations/ReactFabric-profiling.js +10682 -5895
  516. package/Libraries/Renderer/implementations/ReactNativeRenderer-dev.js +19144 -20468
  517. package/Libraries/Renderer/implementations/ReactNativeRenderer-prod.js +8878 -5423
  518. package/Libraries/Renderer/implementations/ReactNativeRenderer-profiling.js +10550 -5572
  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 +9 -5
  522. package/Libraries/Renderer/shims/ReactNativeTypes.js +205 -118
  523. package/Libraries/Renderer/shims/ReactNativeTypes.win32.js +264 -0
  524. package/Libraries/Renderer/shims/ReactNativeViewConfigRegistry.js +31 -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 +11 -10
  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 +46 -27
  535. package/Libraries/StyleSheet/EdgeInsetsPropType.js +6 -3
  536. package/Libraries/StyleSheet/PlatformColorValueTypes.android.js +12 -13
  537. package/Libraries/StyleSheet/PlatformColorValueTypes.d.ts +18 -0
  538. package/Libraries/StyleSheet/PlatformColorValueTypes.ios.js +55 -19
  539. package/Libraries/StyleSheet/PlatformColorValueTypes.js +15 -0
  540. package/Libraries/StyleSheet/PlatformColorValueTypes.js.flow +24 -0
  541. package/Libraries/StyleSheet/PlatformColorValueTypes.win32.js +19 -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 +135 -0
  550. package/Libraries/StyleSheet/StyleSheet.js +49 -224
  551. package/Libraries/StyleSheet/StyleSheet.js.flow +188 -0
  552. package/Libraries/StyleSheet/StyleSheetExports.js +204 -0
  553. package/Libraries/StyleSheet/StyleSheetExports.js.flow +105 -0
  554. package/Libraries/StyleSheet/StyleSheetTypes.d.ts +668 -0
  555. package/Libraries/StyleSheet/StyleSheetTypes.js +591 -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/processBackgroundPosition.js +284 -0
  563. package/Libraries/StyleSheet/processBackgroundRepeat.js +105 -0
  564. package/Libraries/StyleSheet/processBackgroundSize.js +104 -0
  565. package/Libraries/StyleSheet/processBoxShadow.js +212 -0
  566. package/Libraries/StyleSheet/processColor.d.ts +16 -0
  567. package/Libraries/StyleSheet/processColor.js +8 -10
  568. package/Libraries/StyleSheet/processColorArray.js +20 -9
  569. package/Libraries/StyleSheet/processFilter.js +324 -0
  570. package/Libraries/StyleSheet/processFontVariant.js +30 -0
  571. package/Libraries/StyleSheet/processTransform.js +133 -113
  572. package/Libraries/StyleSheet/processTransformOrigin.js +136 -0
  573. package/Libraries/StyleSheet/setNormalizedColorAlpha.js +3 -3
  574. package/Libraries/StyleSheet/splitLayoutProps.js +57 -49
  575. package/Libraries/Text/Text.d.ts +313 -0
  576. package/Libraries/Text/Text.js +853 -267
  577. package/Libraries/Text/Text.win32.js +1001 -0
  578. package/Libraries/Text/TextAncestor.js +5 -7
  579. package/Libraries/Text/TextAncestorContext.js +23 -0
  580. package/Libraries/Text/TextNativeComponent.js +92 -0
  581. package/Libraries/Text/TextNativeComponent.win32.js +127 -0
  582. package/Libraries/Text/TextProps.js +176 -89
  583. package/Libraries/Text/TextProps.win32.js +291 -0
  584. package/Libraries/TurboModule/RCTExport.d.ts +12 -0
  585. package/Libraries/TurboModule/RCTExport.js +3 -1
  586. package/Libraries/TurboModule/TurboModuleRegistry.d.ts +13 -0
  587. package/Libraries/TurboModule/TurboModuleRegistry.js +18 -16
  588. package/Libraries/TurboModule/samples/NativeSampleTurboModule.js +5 -27
  589. package/Libraries/Types/CodegenTypes.js +13 -5
  590. package/Libraries/Types/CodegenTypesNamespace.d.ts +45 -0
  591. package/Libraries/Types/CodegenTypesNamespace.js +15 -0
  592. package/Libraries/Types/CoreEventTypes.d.ts +268 -0
  593. package/Libraries/Types/CoreEventTypes.js +291 -92
  594. package/Libraries/Types/CoreEventTypes.win32.js +395 -0
  595. package/Libraries/Types/ReactDevToolsTypes.js +53 -0
  596. package/Libraries/Types/RootTagTypes.js +11 -0
  597. package/Libraries/Types/UIManagerJSInterface.js +16 -0
  598. package/Libraries/UTFSequence.js +10 -7
  599. package/Libraries/Utilities/Appearance.d.ts +51 -0
  600. package/Libraries/Utilities/Appearance.js +101 -64
  601. package/Libraries/Utilities/BackHandler.android.js +20 -40
  602. package/Libraries/Utilities/BackHandler.d.ts +34 -0
  603. package/Libraries/Utilities/BackHandler.ios.js +20 -110
  604. package/Libraries/Utilities/BackHandler.js +17 -0
  605. package/Libraries/Utilities/BackHandler.js.flow +25 -0
  606. package/Libraries/Utilities/BackHandler.win32.js +96 -7
  607. package/Libraries/Utilities/DevLoadingView.js +79 -0
  608. package/Libraries/Utilities/DevSettings.d.ts +32 -0
  609. package/Libraries/Utilities/DevSettings.js +69 -48
  610. package/Libraries/Utilities/DeviceInfo.js +4 -4
  611. package/Libraries/Utilities/Dimensions.d.ts +79 -0
  612. package/Libraries/Utilities/Dimensions.js +35 -49
  613. package/Libraries/Utilities/Dimensions.win32.js +112 -19
  614. package/Libraries/Utilities/FeatureDetection.js +29 -0
  615. package/Libraries/Utilities/FocusManager.win32.d.ts +12 -0
  616. package/Libraries/Utilities/FocusManager.win32.js +42 -0
  617. package/Libraries/Utilities/GlobalPerformanceLogger.js +5 -6
  618. package/Libraries/Utilities/HMRClient.js +100 -45
  619. package/Libraries/Utilities/HMRClientProdShim.js +3 -3
  620. package/Libraries/Utilities/IPerformanceLogger.d.ts +48 -0
  621. package/Libraries/Utilities/IPerformanceLogger.js +49 -0
  622. package/Libraries/Utilities/NativeAppearance.js +5 -27
  623. package/Libraries/Utilities/NativeDevLoadingView.js +5 -16
  624. package/Libraries/Utilities/NativeDeviceInfo.js +4 -41
  625. package/Libraries/Utilities/NativePlatformConstantsAndroid.js +5 -29
  626. package/Libraries/Utilities/NativePlatformConstantsIOS.js +5 -25
  627. package/Libraries/Utilities/NativePlatformConstantsWin.js +4 -20
  628. package/Libraries/Utilities/PerformanceLoggerContext.js +17 -10
  629. package/Libraries/Utilities/PixelRatio.d.ts +64 -0
  630. package/Libraries/Utilities/PixelRatio.js +7 -7
  631. package/Libraries/Utilities/Platform.android.js +39 -21
  632. package/Libraries/Utilities/Platform.d.ts +107 -0
  633. package/Libraries/Utilities/Platform.ios.js +41 -24
  634. package/Libraries/Utilities/Platform.js +17 -0
  635. package/Libraries/Utilities/Platform.js.flow +13 -0
  636. package/Libraries/Utilities/Platform.win32.js +42 -18
  637. package/Libraries/Utilities/PlatformTypes.js +224 -0
  638. package/Libraries/Utilities/PolyfillFunctions.js +9 -11
  639. package/Libraries/Utilities/RCTLog.js +7 -6
  640. package/Libraries/Utilities/ReactNativeTestTools.js +51 -61
  641. package/Libraries/Utilities/SceneTracker.js +9 -8
  642. package/Libraries/Utilities/binaryToBase64.js +7 -5
  643. package/Libraries/Utilities/codegenNativeCommands.d.ts +18 -0
  644. package/Libraries/Utilities/codegenNativeCommands.js +11 -9
  645. package/Libraries/Utilities/codegenNativeComponent.d.ts +26 -0
  646. package/Libraries/Utilities/codegenNativeComponent.js +29 -19
  647. package/Libraries/Utilities/createPerformanceLogger.js +298 -244
  648. package/Libraries/Utilities/deepFreezeAndThrowOnMutationInDev.js +15 -7
  649. package/Libraries/Utilities/defineLazyObjectProperty.js +4 -4
  650. package/Libraries/Utilities/differ/deepDiffer.js +9 -9
  651. package/Libraries/Utilities/differ/insetsDiffer.js +5 -5
  652. package/Libraries/Utilities/differ/matricesDiffer.js +5 -4
  653. package/Libraries/Utilities/differ/pointsDiffer.js +6 -6
  654. package/Libraries/Utilities/differ/sizesDiffer.js +13 -7
  655. package/Libraries/Utilities/dismissKeyboard.js +4 -3
  656. package/Libraries/Utilities/logError.js +4 -4
  657. package/Libraries/Utilities/mapWithSeparator.js +3 -3
  658. package/Libraries/Utilities/stringifySafe.js +13 -13
  659. package/Libraries/Utilities/stringifyViewConfig.js +22 -0
  660. package/Libraries/Utilities/useColorScheme.js +11 -17
  661. package/Libraries/Utilities/useMergeRefs.js +59 -0
  662. package/Libraries/Utilities/useRefEffect.js +45 -0
  663. package/Libraries/Utilities/useWindowDimensions.js +16 -9
  664. package/Libraries/Utilities/warnOnce.js +4 -6
  665. package/Libraries/Vibration/NativeVibration.js +5 -16
  666. package/Libraries/Vibration/Vibration.d.ts +43 -0
  667. package/Libraries/Vibration/Vibration.js +19 -18
  668. package/Libraries/WebSocket/NativeWebSocketModule.js +5 -26
  669. package/Libraries/WebSocket/WebSocket.js +93 -45
  670. package/Libraries/WebSocket/WebSocketInterceptor.js +83 -34
  671. package/Libraries/__tests__/ButtonWin32-test.js +17 -0
  672. package/Libraries/platform-types.d.ts +25 -0
  673. package/Libraries/promiseRejectionTrackingOptions.js +58 -0
  674. package/Libraries/vendor/core/ErrorUtils.d.ts +15 -0
  675. package/Libraries/vendor/core/ErrorUtils.js +30 -4
  676. package/Libraries/vendor/emitter/EventEmitter.d.ts +164 -0
  677. package/Libraries/vendor/emitter/EventEmitter.js +137 -191
  678. package/babel.config.js +3 -0
  679. package/flow/HermesInternalType.js +114 -0
  680. package/flow/Stringish.js +1 -1
  681. package/flow/bom.js.flow +719 -0
  682. package/flow/console.js +1 -1
  683. package/flow/cssom.js.flow +575 -0
  684. package/flow/dom.js.flow +6290 -0
  685. package/flow/global.js +88 -0
  686. package/flow/prettier.js.flow +14 -0
  687. package/flow/streams.js.flow +140 -0
  688. package/index.js +284 -497
  689. package/index.win32.js +306 -511
  690. package/index.win32.js.flow +496 -0
  691. package/interface.js +9 -13
  692. package/jest/MockNativeMethods.js +10 -4
  693. package/jest/RefreshControlMock.js +32 -0
  694. package/jest/assetFileTransformer.js +8 -5
  695. package/jest/local-setup.js +29 -0
  696. package/jest/mock.js +39 -0
  697. package/jest/mockComponent.js +65 -23
  698. package/jest/mockNativeComponent.js +52 -0
  699. package/jest/mocks/AccessibilityInfo.js +62 -0
  700. package/jest/mocks/ActivityIndicator.js +23 -0
  701. package/jest/mocks/AppState.js +19 -0
  702. package/jest/mocks/Clipboard.js +16 -0
  703. package/jest/mocks/Image.js +23 -0
  704. package/jest/mocks/InitializeCore.js +9 -0
  705. package/jest/mocks/Linking.js +28 -0
  706. package/jest/mocks/Modal.js +33 -0
  707. package/jest/mocks/NativeComponentRegistry.js +30 -0
  708. package/jest/mocks/NativeModules.js +239 -0
  709. package/jest/mocks/RefreshControl.js +31 -0
  710. package/jest/mocks/RendererProxy.js +45 -0
  711. package/jest/mocks/ScrollView.js +58 -0
  712. package/jest/mocks/Text.js +27 -0
  713. package/jest/mocks/TextInput.js +32 -0
  714. package/jest/mocks/UIManager.js +60 -0
  715. package/jest/mocks/Vibration.js +16 -0
  716. package/jest/mocks/View.js +27 -0
  717. package/jest/mocks/ViewNativeComponent.js +23 -0
  718. package/jest/mocks/requireNativeComponent.js +22 -0
  719. package/jest/mocks/useColorScheme.js +18 -0
  720. package/jest/react-native-env.js +17 -0
  721. package/jest/renderer.js +28 -22
  722. package/jest/resolver.js +32 -0
  723. package/jest/setup.js +126 -336
  724. package/jest-snapshot-resolver.js +2 -0
  725. package/jest.config.js +38 -0
  726. package/just-task.js +11 -53
  727. package/metro.config.js +5 -20
  728. package/metroShortPathAssetDataPlugin.js +15 -0
  729. package/overrides.json +319 -251
  730. package/package.json +101 -47
  731. package/react-native.config.js +2 -0
  732. package/rn-get-polyfills.js +3 -6
  733. package/saveAssetPlugin.js +45 -0
  734. package/src/private/animated/NativeAnimatedHelper.js +476 -0
  735. package/src/private/animated/NativeAnimatedHelper.win32.js +479 -0
  736. package/src/private/animated/NativeAnimatedValidation.js +67 -0
  737. package/src/private/animated/createAnimatedPropsHook.js +324 -0
  738. package/src/private/animated/createAnimatedPropsMemoHook.js +360 -0
  739. package/src/private/components/safeareaview/SafeAreaView_INTERNAL_DO_NOT_USE.js +31 -0
  740. package/src/private/components/scrollview/HScrollViewNativeComponents.js +29 -0
  741. package/src/private/components/scrollview/VScrollViewNativeComponents.js +24 -0
  742. package/src/private/components/virtualview/VirtualView.js +178 -0
  743. package/src/private/components/virtualview/VirtualViewExperimentalNativeComponent.js +99 -0
  744. package/src/private/components/virtualview/VirtualViewNativeComponent.js +96 -0
  745. package/src/private/components/virtualview/logger/VirtualViewLogger.js +21 -0
  746. package/src/private/components/virtualview/logger/VirtualViewLoggerTypes.js +24 -0
  747. package/src/private/devsupport/devmenu/DevMenu.d.ts +20 -0
  748. package/src/private/devsupport/devmenu/DevMenu.js +31 -0
  749. package/src/private/devsupport/devmenu/elementinspector/BorderBox.js +44 -0
  750. package/src/private/devsupport/devmenu/elementinspector/BoxInspector.js +131 -0
  751. package/src/private/devsupport/devmenu/elementinspector/ElementBox.js +153 -0
  752. package/src/private/devsupport/devmenu/elementinspector/ElementProperties.js +126 -0
  753. package/src/private/devsupport/devmenu/elementinspector/Inspector.js +192 -0
  754. package/src/private/devsupport/devmenu/elementinspector/InspectorOverlay.js +67 -0
  755. package/src/private/devsupport/devmenu/elementinspector/InspectorPanel.js +141 -0
  756. package/src/private/devsupport/devmenu/elementinspector/ReactDevToolsOverlay.js +166 -0
  757. package/src/private/devsupport/devmenu/elementinspector/StyleInspector.js +77 -0
  758. package/src/private/devsupport/devmenu/elementinspector/XHRInterceptor.js +218 -0
  759. package/src/private/devsupport/devmenu/elementinspector/getInspectorDataForViewAtPoint.js +81 -0
  760. package/src/private/devsupport/devmenu/elementinspector/resolveBoxStyle.js +115 -0
  761. package/src/private/devsupport/devmenu/specs/NativeDevMenu.js +22 -0
  762. package/src/private/devsupport/rndevtools/FuseboxSessionObserver.js +41 -0
  763. package/src/private/devsupport/rndevtools/ReactDevToolsSettingsManager.android.js +19 -0
  764. package/src/private/devsupport/rndevtools/ReactDevToolsSettingsManager.ios.js +27 -0
  765. package/src/private/devsupport/rndevtools/ReactDevToolsSettingsManager.win32.js +19 -0
  766. package/src/private/devsupport/rndevtools/setUpFuseboxReactDevToolsDispatcher.js +113 -0
  767. package/src/private/devsupport/rndevtools/specs/NativeReactDevToolsRuntimeSettingsModule.js +33 -0
  768. package/src/private/devsupport/rndevtools/specs/NativeReactDevToolsSettingsManager.js +22 -0
  769. package/src/private/featureflags/ReactNativeFeatureFlags.js +569 -0
  770. package/src/private/featureflags/ReactNativeFeatureFlagsBase.js +136 -0
  771. package/src/private/featureflags/specs/NativeReactNativeFeatureFlags.js +120 -0
  772. package/src/private/renderer/errorhandling/ErrorHandlers.js +86 -0
  773. package/src/private/setup/setUpDOM.js +76 -0
  774. package/src/private/setup/setUpDefaultReactNativeEnvironment.js +50 -0
  775. package/src/private/setup/setUpIntersectionObserver.js +27 -0
  776. package/src/private/setup/setUpMutationObserver.js +31 -0
  777. package/src/private/setup/setUpPerformanceModern.js +96 -0
  778. package/src/private/specs_DEPRECATED/components/ActivityIndicatorViewNativeComponent.js +56 -0
  779. package/src/private/specs_DEPRECATED/components/AndroidDrawerLayoutNativeComponent.js +124 -0
  780. package/src/private/specs_DEPRECATED/components/AndroidHorizontalScrollContentViewNativeComponent.js +27 -0
  781. package/src/private/specs_DEPRECATED/components/AndroidSwipeRefreshLayoutNativeComponent.js +74 -0
  782. package/src/private/specs_DEPRECATED/components/AndroidSwitchNativeComponent.js +65 -0
  783. package/src/private/specs_DEPRECATED/components/DebuggingOverlayNativeComponent.js +62 -0
  784. package/src/private/specs_DEPRECATED/components/ProgressBarAndroidNativeComponent.js +39 -0
  785. package/src/private/specs_DEPRECATED/components/PullToRefreshViewNativeComponent.js +74 -0
  786. package/src/private/specs_DEPRECATED/components/RCTInputAccessoryViewNativeComponent.js +29 -0
  787. package/src/private/specs_DEPRECATED/components/RCTModalHostViewNativeComponent.js +156 -0
  788. package/src/private/specs_DEPRECATED/components/RCTSafeAreaViewNativeComponent.js +28 -0
  789. package/src/private/specs_DEPRECATED/components/SwitchNativeComponent.js +62 -0
  790. package/src/private/specs_DEPRECATED/components/UnimplementedNativeViewNativeComponent.js +26 -0
  791. package/src/private/specs_DEPRECATED/modules/NativeAccessibilityInfo.js +42 -0
  792. package/src/private/specs_DEPRECATED/modules/NativeAccessibilityInfoWin32.js +48 -0
  793. package/src/private/specs_DEPRECATED/modules/NativeAccessibilityManager.js +70 -0
  794. package/src/private/specs_DEPRECATED/modules/NativeActionSheetManager.js +56 -0
  795. package/src/private/specs_DEPRECATED/modules/NativeAlertManager.js +35 -0
  796. package/src/private/specs_DEPRECATED/modules/NativeAnimatedModule.js +81 -0
  797. package/src/private/specs_DEPRECATED/modules/NativeAnimatedTurboModule.js +78 -0
  798. package/src/private/specs_DEPRECATED/modules/NativeAppState.js +33 -0
  799. package/src/private/specs_DEPRECATED/modules/NativeAppearance.js +30 -0
  800. package/src/private/specs_DEPRECATED/modules/NativeBlobModule.js +61 -0
  801. package/src/private/specs_DEPRECATED/modules/NativeClipboard.js +21 -0
  802. package/src/private/specs_DEPRECATED/modules/NativeDevLoadingView.js +25 -0
  803. package/src/private/specs_DEPRECATED/modules/NativeDevSettings.js +33 -0
  804. package/src/private/specs_DEPRECATED/modules/NativeDeviceEventManager.js +19 -0
  805. package/src/private/specs_DEPRECATED/modules/NativeDeviceInfo.js +59 -0
  806. package/src/private/specs_DEPRECATED/modules/NativeDialogManagerAndroid.js +48 -0
  807. package/src/private/specs_DEPRECATED/modules/NativeExceptionsManager.js +91 -0
  808. package/src/private/specs_DEPRECATED/modules/NativeFileReaderModule.js +22 -0
  809. package/src/private/specs_DEPRECATED/modules/NativeFrameRateLogger.js +22 -0
  810. package/src/private/specs_DEPRECATED/modules/NativeHeadlessJsTaskSupport.js +20 -0
  811. package/src/private/specs_DEPRECATED/modules/NativeI18nManager.js +28 -0
  812. package/src/private/specs_DEPRECATED/modules/NativeImageEditor.js +52 -0
  813. package/src/private/specs_DEPRECATED/modules/NativeImageLoaderAndroid.js +30 -0
  814. package/src/private/specs_DEPRECATED/modules/NativeImageLoaderIOS.js +37 -0
  815. package/src/private/specs_DEPRECATED/modules/NativeImageLoaderWin32.js +45 -0
  816. package/src/private/specs_DEPRECATED/modules/NativeImageStoreAndroid.js +26 -0
  817. package/src/private/specs_DEPRECATED/modules/NativeImageStoreIOS.js +33 -0
  818. package/src/private/specs_DEPRECATED/modules/NativeIntentAndroid.js +30 -0
  819. package/src/private/specs_DEPRECATED/modules/NativeJSCHeapCapture.js +19 -0
  820. package/src/private/specs_DEPRECATED/modules/NativeKeyboardObserver.js +20 -0
  821. package/src/private/specs_DEPRECATED/modules/NativeLinkingManager.js +27 -0
  822. package/src/private/specs_DEPRECATED/modules/NativeLogBox.js +20 -0
  823. package/src/private/specs_DEPRECATED/modules/NativeModalManager.js +21 -0
  824. package/src/private/specs_DEPRECATED/modules/NativeNetworkingAndroid.js +37 -0
  825. package/src/private/specs_DEPRECATED/modules/NativeNetworkingIOS.js +38 -0
  826. package/src/private/specs_DEPRECATED/modules/NativePermissionsAndroid.js +78 -0
  827. package/src/private/specs_DEPRECATED/modules/NativePlatformConstantsAndroid.js +44 -0
  828. package/src/private/specs_DEPRECATED/modules/NativePlatformConstantsIOS.js +37 -0
  829. package/src/private/specs_DEPRECATED/modules/NativePlatformConstantsWin.js +39 -0
  830. package/src/private/specs_DEPRECATED/modules/NativePushNotificationManagerIOS.js +103 -0
  831. package/src/private/specs_DEPRECATED/modules/NativeRedBox.js +20 -0
  832. package/src/private/specs_DEPRECATED/modules/NativeSampleTurboModule.js +69 -0
  833. package/src/private/specs_DEPRECATED/modules/NativeSegmentFetcher.js +28 -0
  834. package/src/private/specs_DEPRECATED/modules/NativeSettingsManager.js +25 -0
  835. package/src/private/specs_DEPRECATED/modules/NativeShareModule.js +23 -0
  836. package/src/private/specs_DEPRECATED/modules/NativeSoundManager.js +22 -0
  837. package/src/private/specs_DEPRECATED/modules/NativeSourceCode.js +36 -0
  838. package/src/private/specs_DEPRECATED/modules/NativeStatusBarManagerAndroid.js +68 -0
  839. package/src/private/specs_DEPRECATED/modules/NativeStatusBarManagerIOS.js +89 -0
  840. package/src/private/specs_DEPRECATED/modules/NativeTiming.js +27 -0
  841. package/src/private/specs_DEPRECATED/modules/NativeToastAndroid.js +38 -0
  842. package/src/private/specs_DEPRECATED/modules/NativeUIManager.js +187 -0
  843. package/src/private/specs_DEPRECATED/modules/NativeVibration.js +24 -0
  844. package/src/private/specs_DEPRECATED/modules/NativeWebSocketModule.js +34 -0
  845. package/src/private/styles/composeStyles.js +27 -0
  846. package/src/private/types/HostComponent.js +16 -0
  847. package/src/private/types/HostInstance.js +119 -0
  848. package/src/private/webapis/dom/events/CustomEvent.js +38 -0
  849. package/src/private/webapis/dom/events/Event.js +239 -0
  850. package/src/private/webapis/dom/events/EventHandlerAttributes.js +130 -0
  851. package/src/private/webapis/dom/events/EventTarget.js +439 -0
  852. package/src/private/webapis/dom/events/internals/EventInternals.js +120 -0
  853. package/src/private/webapis/dom/events/internals/EventTargetInternals.js +52 -0
  854. package/src/private/webapis/dom/nodes/ReactNativeDocument.js +141 -0
  855. package/src/private/webapis/dom/nodes/ReactNativeElement.js +252 -0
  856. package/src/private/webapis/dom/nodes/ReadOnlyCharacterData.js +72 -0
  857. package/src/private/webapis/dom/nodes/ReadOnlyElement.js +249 -0
  858. package/src/private/webapis/dom/nodes/ReadOnlyNode.js +337 -0
  859. package/src/private/webapis/dom/nodes/ReadOnlyText.js +30 -0
  860. package/src/private/webapis/dom/nodes/internals/NodeInternals.js +173 -0
  861. package/src/private/webapis/dom/nodes/internals/ReactNativeDocumentElementInstanceHandle.js +55 -0
  862. package/src/private/webapis/dom/nodes/internals/ReactNativeDocumentInstanceHandle.js +44 -0
  863. package/src/private/webapis/dom/nodes/internals/Traversal.js +54 -0
  864. package/src/private/webapis/dom/nodes/specs/NativeDOM.js +451 -0
  865. package/src/private/webapis/dom/oldstylecollections/HTMLCollection.js +88 -0
  866. package/src/private/webapis/dom/oldstylecollections/NodeList.js +110 -0
  867. package/src/private/webapis/errors/DOMException.js +166 -0
  868. package/src/private/webapis/geometry/DOMRect.js +87 -0
  869. package/src/private/webapis/geometry/DOMRectList.js +79 -0
  870. package/src/private/webapis/geometry/DOMRectReadOnly.js +194 -0
  871. package/src/private/webapis/html/events/MessageEvent.js +56 -0
  872. package/src/private/webapis/idlecallbacks/specs/NativeIdleCallbacks.js +36 -0
  873. package/src/private/webapis/intersectionobserver/IntersectionObserver.js +462 -0
  874. package/src/private/webapis/intersectionobserver/IntersectionObserverEntry.js +170 -0
  875. package/src/private/webapis/intersectionobserver/internals/IntersectionObserverManager.js +291 -0
  876. package/src/private/webapis/intersectionobserver/specs/NativeIntersectionObserver.js +52 -0
  877. package/src/private/webapis/microtasks/specs/NativeMicrotasks.js +21 -0
  878. package/src/private/webapis/mutationobserver/MutationObserver.js +161 -0
  879. package/src/private/webapis/mutationobserver/MutationRecord.js +85 -0
  880. package/src/private/webapis/mutationobserver/internals/MutationObserverManager.js +203 -0
  881. package/src/private/webapis/mutationobserver/specs/NativeMutationObserver.js +55 -0
  882. package/src/private/webapis/performance/EventTiming.js +160 -0
  883. package/src/private/webapis/performance/LongTasks.js +72 -0
  884. package/src/private/webapis/performance/MemoryInfo.js +57 -0
  885. package/src/private/webapis/performance/Performance.js +477 -0
  886. package/src/private/webapis/performance/PerformanceEntry.js +94 -0
  887. package/src/private/webapis/performance/PerformanceObserver.js +244 -0
  888. package/src/private/webapis/performance/ReactNativeStartupTiming.js +73 -0
  889. package/src/private/webapis/performance/ResourceTiming.js +146 -0
  890. package/src/private/webapis/performance/UserTiming.js +130 -0
  891. package/src/private/webapis/performance/UserTimingExtensibility.js.flow +38 -0
  892. package/src/private/webapis/performance/internals/RawPerformanceEntry.js +127 -0
  893. package/src/private/webapis/performance/internals/Utilities.js +27 -0
  894. package/src/private/webapis/performance/specs/NativePerformance.js +104 -0
  895. package/src/private/webapis/structuredClone/structuredClone.js +233 -0
  896. package/src/private/webapis/utils/ArrayLikeUtils.js +46 -0
  897. package/src/private/webapis/webidl/PlatformObjects.js +59 -0
  898. package/src/private/webapis/websockets/events/CloseEvent.js +52 -0
  899. package/src/private/webapis/xhr/events/ProgressEvent.js +52 -0
  900. package/src/types/globals.d.ts +699 -0
  901. package/src-win/Libraries/Components/AccessibilityInfo/AccessibilityInfo.d.ts +183 -0
  902. package/src-win/Libraries/Components/Button/ButtonWin32.Props.ts +45 -0
  903. package/src-win/Libraries/Components/Button/ButtonWin32.tsx +94 -0
  904. package/src-win/Libraries/Components/EnterString.win32.tsx +110 -0
  905. package/src-win/Libraries/Components/TextInput/Tests/TextInputTest.tsx +185 -0
  906. package/src-win/Libraries/Components/Touchable/Tests/TouchableWin32Test.tsx +502 -0
  907. package/src-win/Libraries/Components/Touchable/TouchableNativeFeedback.d.ts +119 -0
  908. package/src-win/Libraries/Components/Touchable/TouchableWin32.Props.tsx +46 -0
  909. package/src-win/Libraries/Components/Touchable/TouchableWin32.Types.tsx +137 -0
  910. package/src-win/Libraries/Components/Touchable/TouchableWin32.tsx +627 -0
  911. package/src-win/Libraries/Components/View/ViewAccessibility.d.ts +567 -0
  912. package/src-win/Libraries/Components/View/ViewPropTypes.d.ts +374 -0
  913. package/src-win/Libraries/Components/View/ViewWin32.d.ts +30 -0
  914. package/src-win/Libraries/Image/ImageTypes.ts +27 -0
  915. package/src-win/Libraries/Image/Tests/ImageWin32Test.tsx +22 -0
  916. package/src-win/Libraries/Image/Tests/img/dpitest.png +0 -0
  917. package/src-win/Libraries/Image/Tests/img/dpitest@1.5x.png +0 -0
  918. package/src-win/Libraries/Image/Tests/img/dpitest@2x.png +0 -0
  919. package/src-win/Libraries/Image/Tests/img/dpitest@3x.png +0 -0
  920. package/src-win/Libraries/Image/Tests/img/en-us/dpitest.png +0 -0
  921. package/src-win/Libraries/Image/Tests/img/en-us/dpitest@1.5x.png +0 -0
  922. package/src-win/Libraries/Image/Tests/img/en-us/dpitest@3x.png +0 -0
  923. package/src-win/Libraries/PersonaCoin/PersonaCoin.tsx +13 -0
  924. package/src-win/Libraries/PersonaCoin/PersonaCoinPropTypes.ts +17 -0
  925. package/src-win/Libraries/PersonaCoin/PersonaCoinTypes.ts +36 -0
  926. package/src-win/Libraries/StyleSheet/PlatformColorValueTypesWin32.d.ts +38 -0
  927. package/src-win/Libraries/Text/Text.d.ts +313 -0
  928. package/src-win/Libraries/Utilities/FocusManager.win32.d.ts +12 -0
  929. package/src-win/Libraries/__tests__/__snapshots__/ButtonWin32-test.js.snap +22 -0
  930. package/src-win/Libraries/platform-types.d.ts +25 -0
  931. package/src-win/index.win32.js.flow +496 -0
  932. package/types/index.d.ts +167 -0
  933. package/types/modules/BatchedBridge.d.ts +32 -0
  934. package/types/modules/Codegen.d.ts +80 -0
  935. package/types/modules/Devtools.d.ts +46 -0
  936. package/types/private/TimerMixin.d.ts +19 -0
  937. package/types/private/Utilities.d.ts +10 -0
  938. package/types/public/DeprecatedPropertiesAlias.d.ts +185 -0
  939. package/types/public/Insets.d.ts +15 -0
  940. package/types/public/ReactNativeRenderer.d.ts +144 -0
  941. package/types/public/ReactNativeTypes.d.ts +252 -0
  942. package/IntegrationTests/AsyncStorageTest.js +0 -217
  943. package/IntegrationTests/PropertiesUpdateTest.js +0 -29
  944. package/IntegrationTests/RCTRootViewIntegrationTestApp.js +0 -92
  945. package/IntegrationTests/ReactContentSizeUpdateTest.js +0 -91
  946. package/IntegrationTests/SizeFlexibilityUpdateTest.js +0 -108
  947. package/IntegrationTests/launchWebSocketServer.command +0 -18
  948. package/Libraries/Animated/examples/demo.html +0 -712
  949. package/Libraries/Animated/examples/pic1.jpg +0 -0
  950. package/Libraries/Animated/examples/pic2.jpg +0 -0
  951. package/Libraries/Animated/examples/pic3.jpg +0 -0
  952. package/Libraries/Animated/release/gulpfile.js +0 -155
  953. package/Libraries/Animated/src/Animated.js +0 -49
  954. package/Libraries/Animated/src/AnimatedEvent.js +0 -233
  955. package/Libraries/Animated/src/AnimatedImplementation.js +0 -712
  956. package/Libraries/Animated/src/AnimatedMock.js +0 -156
  957. package/Libraries/Animated/src/AnimatedWeb.js +0 -23
  958. package/Libraries/Animated/src/Easing.js +0 -252
  959. package/Libraries/Animated/src/NativeAnimatedHelper.js +0 -342
  960. package/Libraries/Animated/src/NativeAnimatedModule.js +0 -66
  961. package/Libraries/Animated/src/SpringConfig.js +0 -103
  962. package/Libraries/Animated/src/animations/Animation.js +0 -73
  963. package/Libraries/Animated/src/animations/DecayAnimation.js +0 -120
  964. package/Libraries/Animated/src/animations/SpringAnimation.js +0 -359
  965. package/Libraries/Animated/src/animations/TimingAnimation.js +0 -165
  966. package/Libraries/Animated/src/bezier.js +0 -153
  967. package/Libraries/Animated/src/components/AnimatedFlatList.js +0 -32
  968. package/Libraries/Animated/src/components/AnimatedImage.js +0 -25
  969. package/Libraries/Animated/src/components/AnimatedScrollView.js +0 -32
  970. package/Libraries/Animated/src/components/AnimatedSectionList.js +0 -32
  971. package/Libraries/Animated/src/components/AnimatedText.js +0 -25
  972. package/Libraries/Animated/src/components/AnimatedView.js +0 -23
  973. package/Libraries/Animated/src/createAnimatedComponent.js +0 -223
  974. package/Libraries/Animated/src/nodes/AnimatedAddition.js +0 -63
  975. package/Libraries/Animated/src/nodes/AnimatedDiffClamp.js +0 -71
  976. package/Libraries/Animated/src/nodes/AnimatedDivision.js +0 -68
  977. package/Libraries/Animated/src/nodes/AnimatedInterpolation.js +0 -373
  978. package/Libraries/Animated/src/nodes/AnimatedModulo.js +0 -62
  979. package/Libraries/Animated/src/nodes/AnimatedMultiplication.js +0 -63
  980. package/Libraries/Animated/src/nodes/AnimatedNode.js +0 -184
  981. package/Libraries/Animated/src/nodes/AnimatedProps.js +0 -176
  982. package/Libraries/Animated/src/nodes/AnimatedStyle.js +0 -127
  983. package/Libraries/Animated/src/nodes/AnimatedSubtraction.js +0 -63
  984. package/Libraries/Animated/src/nodes/AnimatedTracking.js +0 -102
  985. package/Libraries/Animated/src/nodes/AnimatedTransform.js +0 -121
  986. package/Libraries/Animated/src/nodes/AnimatedValue.js +0 -265
  987. package/Libraries/Animated/src/nodes/AnimatedValueXY.js +0 -226
  988. package/Libraries/Animated/src/nodes/AnimatedWithChildren.js +0 -87
  989. package/Libraries/Animated/src/polyfills/InteractionManager.js +0 -15
  990. package/Libraries/Animated/src/polyfills/Set.js +0 -26
  991. package/Libraries/Animated/src/polyfills/flattenStyle.js +0 -13
  992. package/Libraries/BatchedBridge/__mocks__/MessageQueueTestConfig.js +0 -38
  993. package/Libraries/BatchedBridge/__mocks__/MessageQueueTestModule.js +0 -22
  994. package/Libraries/Blob/__mocks__/BlobModule.js +0 -16
  995. package/Libraries/Blob/__mocks__/FileReaderModule.js +0 -20
  996. package/Libraries/BugReporting/BugReporting.js +0 -141
  997. package/Libraries/BugReporting/NativeBugReporting.js +0 -20
  998. package/Libraries/BugReporting/dumpReactTree.js +0 -151
  999. package/Libraries/BugReporting/getReactData.js +0 -178
  1000. package/Libraries/Components/AccessibilityInfo/AccessibilityInfo.android.js +0 -162
  1001. package/Libraries/Components/AccessibilityInfo/AccessibilityInfo.ios.js +0 -271
  1002. package/Libraries/Components/AccessibilityInfo/NativeAccessibilityInfo.win32.js +0 -33
  1003. package/Libraries/Components/AppleTV/NativeTVNavigationEventEmitter.js +0 -23
  1004. package/Libraries/Components/AppleTV/TVEventHandler.js +0 -52
  1005. package/Libraries/Components/CheckBox/AndroidCheckBoxNativeComponent.js +0 -74
  1006. package/Libraries/Components/CheckBox/CheckBox.android.js +0 -228
  1007. package/Libraries/Components/CheckBox/CheckBox.ios.js +0 -13
  1008. package/Libraries/Components/CheckBox/CheckBox.win32.js +0 -12
  1009. package/Libraries/Components/DatePicker/DatePickerIOS.android.js +0 -46
  1010. package/Libraries/Components/DatePicker/DatePickerIOS.ios.js +0 -189
  1011. package/Libraries/Components/DatePicker/DatePickerIOS.win32.js +0 -46
  1012. package/Libraries/Components/DatePicker/RCTDatePickerNativeComponent.js +0 -60
  1013. package/Libraries/Components/DatePickerAndroid/DatePickerAndroid.android.js +0 -89
  1014. package/Libraries/Components/DatePickerAndroid/DatePickerAndroid.ios.js +0 -30
  1015. package/Libraries/Components/DatePickerAndroid/DatePickerAndroid.win32.js +0 -30
  1016. package/Libraries/Components/DatePickerAndroid/DatePickerAndroidTypes.js +0 -30
  1017. package/Libraries/Components/DatePickerAndroid/NativeDatePickerAndroid.js +0 -22
  1018. package/Libraries/Components/MaskedView/MaskedViewIOS.android.js +0 -13
  1019. package/Libraries/Components/MaskedView/MaskedViewIOS.ios.js +0 -93
  1020. package/Libraries/Components/MaskedView/MaskedViewIOS.win32.js +0 -13
  1021. package/Libraries/Components/MaskedView/RCTMaskedViewNativeComponent.js +0 -21
  1022. package/Libraries/Components/Picker/AndroidDialogPickerNativeComponent.js +0 -68
  1023. package/Libraries/Components/Picker/AndroidDropdownPickerNativeComponent.js +0 -68
  1024. package/Libraries/Components/Picker/Picker.js +0 -159
  1025. package/Libraries/Components/Picker/Picker.win32.d.ts +0 -1
  1026. package/Libraries/Components/Picker/Picker.win32.js +0 -80
  1027. package/Libraries/Components/Picker/PickerAndroid.android.js +0 -146
  1028. package/Libraries/Components/Picker/PickerAndroid.ios.js +0 -12
  1029. package/Libraries/Components/Picker/PickerAndroid.js +0 -12
  1030. package/Libraries/Components/Picker/PickerIOS.android.js +0 -14
  1031. package/Libraries/Components/Picker/PickerIOS.ios.js +0 -164
  1032. package/Libraries/Components/Picker/PickerIOS.js +0 -14
  1033. package/Libraries/Components/Picker/RCTPickerNativeComponent.js +0 -63
  1034. package/Libraries/Components/ProgressBarAndroid/ProgressBarAndroid.ios.js +0 -12
  1035. package/Libraries/Components/ProgressViewIOS/ProgressViewIOS.android.js +0 -46
  1036. package/Libraries/Components/ProgressViewIOS/ProgressViewIOS.ios.js +0 -77
  1037. package/Libraries/Components/ProgressViewIOS/ProgressViewIOS.win32.js +0 -8
  1038. package/Libraries/Components/ProgressViewIOS/RCTProgressViewNativeComponent.js +0 -35
  1039. package/Libraries/Components/RefreshControl/__mocks__/RefreshControlMock.js +0 -33
  1040. package/Libraries/Components/ScrollResponder.js +0 -773
  1041. package/Libraries/Components/ScrollView/ScrollViewViewConfig.js +0 -77
  1042. package/Libraries/Components/ScrollView/__mocks__/ScrollViewMock.js +0 -39
  1043. package/Libraries/Components/SegmentedControlIOS/RCTSegmentedControlNativeComponent.js +0 -46
  1044. package/Libraries/Components/SegmentedControlIOS/SegmentedControlIOS.android.js +0 -46
  1045. package/Libraries/Components/SegmentedControlIOS/SegmentedControlIOS.ios.js +0 -123
  1046. package/Libraries/Components/SegmentedControlIOS/SegmentedControlIOS.js +0 -46
  1047. package/Libraries/Components/Slider/Slider.js +0 -276
  1048. package/Libraries/Components/Slider/SliderNativeComponent.js +0 -60
  1049. package/Libraries/Components/StaticContainer.react.js +0 -51
  1050. package/Libraries/Components/StatusBar/StatusBarIOS.js +0 -22
  1051. package/Libraries/Components/Text/TextWin32.Props.d.ts +0 -26
  1052. package/Libraries/Components/Text/TextWin32.Props.js +0 -3
  1053. package/Libraries/Components/Text/TextWin32.d.ts +0 -6
  1054. package/Libraries/Components/Text/TextWin32.js +0 -41
  1055. package/Libraries/Components/TextInput/AndroidTextInputViewConfig.js +0 -84
  1056. package/Libraries/Components/TextInput/RCTSinglelineTextInputViewConfig.js +0 -134
  1057. package/Libraries/Components/TextInput/TextInput.Types.win32.d.ts +0 -51
  1058. package/Libraries/Components/TextInput/TextInput.Types.win32.js +0 -3
  1059. package/Libraries/Components/TextInput/TextInput.win32.d.ts +0 -68
  1060. package/Libraries/Components/Touchable/TVTouchable.js +0 -55
  1061. package/Libraries/Components/Touchable/TouchableNativeFeedback.Props.d.ts +0 -7
  1062. package/Libraries/Components/Touchable/TouchableNativeFeedback.Props.js +0 -3
  1063. package/Libraries/Components/Touchable/TouchableNativeFeedback.win32.d.ts +0 -16
  1064. package/Libraries/Components/Touchable/__mocks__/ensureComponentIsNative.js +0 -12
  1065. package/Libraries/Components/Touchable/ensurePositiveDelayProps.js +0 -26
  1066. package/Libraries/Components/View/ReactNativeViewViewConfig.js +0 -347
  1067. package/Libraries/Components/View/ReactNativeViewViewConfig.win32.js +0 -384
  1068. package/Libraries/Components/View/ReactNativeViewViewConfigAndroid.js +0 -74
  1069. package/Libraries/Components/View/Tests/ViewWin32Test.d.ts +0 -8
  1070. package/Libraries/Components/View/Tests/ViewWin32Test.js +0 -235
  1071. package/Libraries/Components/View/ViewWin32.Props.d.ts +0 -149
  1072. package/Libraries/Components/View/ViewWin32.Props.js +0 -11
  1073. package/Libraries/Core/__mocks__/ErrorUtils.js +0 -33
  1074. package/Libraries/Core/setUpSystrace.js +0 -21
  1075. package/Libraries/DeprecatedPropTypes/DeprecatedColorPropType.js +0 -76
  1076. package/Libraries/DeprecatedPropTypes/DeprecatedEdgeInsetsPropType.js +0 -28
  1077. package/Libraries/DeprecatedPropTypes/DeprecatedImagePropType.js +0 -82
  1078. package/Libraries/DeprecatedPropTypes/DeprecatedImageSourcePropType.js +0 -40
  1079. package/Libraries/DeprecatedPropTypes/DeprecatedImageStylePropTypes.js +0 -76
  1080. package/Libraries/DeprecatedPropTypes/DeprecatedLayoutPropTypes.js +0 -233
  1081. package/Libraries/DeprecatedPropTypes/DeprecatedPointPropType.js +0 -24
  1082. package/Libraries/DeprecatedPropTypes/DeprecatedShadowPropTypesIOS.js +0 -30
  1083. package/Libraries/DeprecatedPropTypes/DeprecatedStyleSheetPropType.js +0 -32
  1084. package/Libraries/DeprecatedPropTypes/DeprecatedTVViewPropTypes.js +0 -23
  1085. package/Libraries/DeprecatedPropTypes/DeprecatedTextInputPropTypes.js +0 -622
  1086. package/Libraries/DeprecatedPropTypes/DeprecatedTextPropTypes.js +0 -158
  1087. package/Libraries/DeprecatedPropTypes/DeprecatedTextStylePropTypes.js +0 -157
  1088. package/Libraries/DeprecatedPropTypes/DeprecatedTransformPropTypes.js +0 -99
  1089. package/Libraries/DeprecatedPropTypes/DeprecatedViewAccessibility.js +0 -44
  1090. package/Libraries/DeprecatedPropTypes/DeprecatedViewPropTypes.js +0 -408
  1091. package/Libraries/DeprecatedPropTypes/DeprecatedViewStylePropTypes.js +0 -68
  1092. package/Libraries/DeprecatedPropTypes/deprecatedCreateStrictShapeTypeChecker.js +0 -86
  1093. package/Libraries/EventEmitter/__mocks__/NativeEventEmitter.js +0 -25
  1094. package/Libraries/HeapCapture/HeapCapture.js +0 -31
  1095. package/Libraries/HeapCapture/NativeJSCHeapCapture.js +0 -20
  1096. package/Libraries/Image/ImagePickerIOS.js +0 -105
  1097. package/Libraries/Image/ImageViewViewConfig.js +0 -68
  1098. package/Libraries/Image/NativeImagePickerIOS.js +0 -40
  1099. package/Libraries/Image/assetPathUtils.js +0 -91
  1100. package/Libraries/Inspector/BorderBox.js +0 -32
  1101. package/Libraries/Inspector/BoxInspector.js +0 -110
  1102. package/Libraries/Inspector/ElementBox.js +0 -138
  1103. package/Libraries/Inspector/ElementProperties.js +0 -147
  1104. package/Libraries/Inspector/Inspector.js +0 -312
  1105. package/Libraries/Inspector/Inspector.win32.js +0 -318
  1106. package/Libraries/Inspector/InspectorOverlay.js +0 -90
  1107. package/Libraries/Inspector/InspectorOverlay.win32.js +0 -91
  1108. package/Libraries/Inspector/InspectorPanel.js +0 -170
  1109. package/Libraries/Inspector/NetworkOverlay.js +0 -601
  1110. package/Libraries/Inspector/PerformanceOverlay.js +0 -63
  1111. package/Libraries/Inspector/StyleInspector.js +0 -70
  1112. package/Libraries/Inspector/resolveBoxStyle.js +0 -114
  1113. package/Libraries/Interaction/Batchinator.js +0 -76
  1114. package/Libraries/Interaction/BridgeSpyStallHandler.js +0 -62
  1115. package/Libraries/Interaction/InteractionMixin.js +0 -55
  1116. package/Libraries/Interaction/InteractionStallDebugger.js +0 -23
  1117. package/Libraries/Interaction/JSEventLoopWatchdog.js +0 -93
  1118. package/Libraries/Interaction/TaskQueue.js +0 -184
  1119. package/Libraries/JSInspector/InspectorAgent.js +0 -27
  1120. package/Libraries/JSInspector/JSInspector.js +0 -36
  1121. package/Libraries/JSInspector/NetworkAgent.js +0 -300
  1122. package/Libraries/Linking/NativeLinking.js +0 -41
  1123. package/Libraries/Lists/__flowtests__/FlatList-flowtest.js +0 -117
  1124. package/Libraries/Lists/__flowtests__/SectionList-flowtest.js +0 -134
  1125. package/Libraries/NativeModules/specs/NativeAnimationsDebugModule.js +0 -21
  1126. package/Libraries/Network/XHRInterceptor.js +0 -166
  1127. package/Libraries/NewAppScreen/components/Colors.js +0 -20
  1128. package/Libraries/NewAppScreen/components/DebugInstructions.js +0 -38
  1129. package/Libraries/NewAppScreen/components/Header.js +0 -55
  1130. package/Libraries/NewAppScreen/components/LearnMoreLinks.js +0 -123
  1131. package/Libraries/NewAppScreen/components/ReloadInstructions.js +0 -36
  1132. package/Libraries/NewAppScreen/components/logo.png +0 -0
  1133. package/Libraries/NewAppScreen/index.js +0 -19
  1134. package/Libraries/Performance/NativeJSCSamplingProfiler.js +0 -20
  1135. package/Libraries/Performance/PureComponentDebug.js +0 -73
  1136. package/Libraries/Performance/QuickPerformanceLogger.js +0 -101
  1137. package/Libraries/Performance/SamplingProfiler.js +0 -39
  1138. package/Libraries/ReactNative/DummyUIManager.js +0 -123
  1139. package/Libraries/ReactNative/ReactFabricInternals.js +0 -17
  1140. package/Libraries/ReactNative/RootTagContext.js +0 -15
  1141. package/Libraries/ReactNative/queryLayoutByID.js +0 -58
  1142. package/Libraries/Renderer/implementations/ReactFabric-dev.fb.js +0 -20493
  1143. package/Libraries/Renderer/implementations/ReactFabric-prod.fb.js +0 -7440
  1144. package/Libraries/Renderer/implementations/ReactFabric-profiling.fb.js +0 -7718
  1145. package/Libraries/Renderer/implementations/ReactNativeRenderer-dev.fb.js +0 -21091
  1146. package/Libraries/Renderer/implementations/ReactNativeRenderer-prod.fb.js +0 -7677
  1147. package/Libraries/Renderer/implementations/ReactNativeRenderer-profiling.fb.js +0 -7955
  1148. package/Libraries/Renderer/shims/ReactTypes.js +0 -192
  1149. package/Libraries/Settings/Settings.android.js +0 -33
  1150. package/Libraries/Storage/AsyncStorage.js +0 -360
  1151. package/Libraries/Storage/NativeAsyncStorage.js +0 -44
  1152. package/Libraries/StyleSheet/PlatformColorValueTypesAndroid.android.js +0 -18
  1153. package/Libraries/StyleSheet/PlatformColorValueTypesAndroid.js +0 -17
  1154. package/Libraries/StyleSheet/StyleSheet.win32.js +0 -366
  1155. package/Libraries/StyleSheet/StyleSheetValidation.js +0 -97
  1156. package/Libraries/StyleSheet/StyleSheetValidation.win32.js +0 -102
  1157. package/Libraries/StyleSheet/__flowtests__/StyleSheet-flowtest.js +0 -82
  1158. package/Libraries/Utilities/BackHandler.win32.d.ts +0 -2
  1159. package/Libraries/Utilities/DeviceInfo.win32.js +0 -21
  1160. package/Libraries/Utilities/JSDevSupportModule.js +0 -40
  1161. package/Libraries/Utilities/LoadingView.android.js +0 -29
  1162. package/Libraries/Utilities/LoadingView.ios.js +0 -40
  1163. package/Libraries/Utilities/LoadingView.js +0 -16
  1164. package/Libraries/Utilities/MatrixMath.js +0 -752
  1165. package/Libraries/Utilities/NativeJSDevSupport.js +0 -25
  1166. package/Libraries/Utilities/__mocks__/BackHandler.js +0 -50
  1167. package/Libraries/Utilities/__mocks__/GlobalPerformanceLogger.js +0 -16
  1168. package/Libraries/Utilities/__mocks__/PixelRatio.js +0 -25
  1169. package/Libraries/Utilities/buildStyleInterpolator.js +0 -211
  1170. package/Libraries/Utilities/clamp.js +0 -23
  1171. package/Libraries/Utilities/deprecatedPropType.js +0 -38
  1172. package/Libraries/Utilities/groupByEveryN.js +0 -51
  1173. package/Libraries/Utilities/infoLog.js +0 -19
  1174. package/Libraries/Utilities/mergeIntoFast.js +0 -26
  1175. package/Libraries/Utilities/registerGeneratedViewConfig.js +0 -83
  1176. package/Libraries/Utilities/setAndForwardRef.js +0 -71
  1177. package/Libraries/Utilities/truncate.js +0 -51
  1178. package/Libraries/Utilities/verifyComponentAttributeEquivalence.js +0 -134
  1179. package/Libraries/WebSocket/WebSocketEvent.js +0 -27
  1180. package/Libraries/WebSocket/__mocks__/event-target-shim.js +0 -27
  1181. package/Libraries/YellowBox/YellowBoxDeprecated.js +0 -75
  1182. package/Libraries/__flowtests__/ReactNativeTypes-flowtest.js +0 -32
  1183. package/Libraries/polyfills/Object.es7.js +0 -58
  1184. package/Libraries/polyfills/console.js +0 -641
  1185. package/Libraries/polyfills/error-guard.js +0 -115
  1186. package/Libraries/promiseRejectionIsError.js +0 -24
  1187. package/Libraries/vendor/emitter/EmitterSubscription.js +0 -59
  1188. package/Libraries/vendor/emitter/EventSubscription.js +0 -40
  1189. package/Libraries/vendor/emitter/EventSubscriptionVendor.js +0 -101
  1190. package/RNTester/APIExamples/AccessibilityExampleWin32.d.ts +0 -8
  1191. package/RNTester/APIExamples/AccessibilityExampleWin32.js +0 -262
  1192. package/RNTester/APIExamples/ThemingModuleAPI.d.ts +0 -8
  1193. package/RNTester/APIExamples/ThemingModuleAPI.js +0 -80
  1194. package/RNTester/js/RNTesterApp.android.js +0 -363
  1195. package/RNTester/js/RNTesterApp.ios.js +0 -272
  1196. package/RNTester/js/RNTesterApp.win32.js +0 -285
  1197. package/RNTester/js/assets/bandaged.png +0 -0
  1198. package/RNTester/js/assets/bunny.png +0 -0
  1199. package/RNTester/js/assets/call.png +0 -0
  1200. package/RNTester/js/assets/dislike.png +0 -0
  1201. package/RNTester/js/assets/fist.png +0 -0
  1202. package/RNTester/js/assets/flowers.png +0 -0
  1203. package/RNTester/js/assets/flux@3x.png +0 -0
  1204. package/RNTester/js/assets/hawk.png +0 -0
  1205. package/RNTester/js/assets/heart.png +0 -0
  1206. package/RNTester/js/assets/helloworld.html +0 -25
  1207. package/RNTester/js/assets/imageMask.png +0 -0
  1208. package/RNTester/js/assets/like.png +0 -0
  1209. package/RNTester/js/assets/liking.png +0 -0
  1210. package/RNTester/js/assets/messagingtest.html +0 -28
  1211. package/RNTester/js/assets/party.png +0 -0
  1212. package/RNTester/js/assets/poke.png +0 -0
  1213. package/RNTester/js/assets/relay@3x.png +0 -0
  1214. package/RNTester/js/assets/slider-left.png +0 -0
  1215. package/RNTester/js/assets/slider-left@2x.png +0 -0
  1216. package/RNTester/js/assets/slider-right.png +0 -0
  1217. package/RNTester/js/assets/slider-right@2x.png +0 -0
  1218. package/RNTester/js/assets/slider.png +0 -0
  1219. package/RNTester/js/assets/slider@2x.png +0 -0
  1220. package/RNTester/js/assets/superlike.png +0 -0
  1221. package/RNTester/js/assets/trees.jpg +0 -0
  1222. package/RNTester/js/assets/tumblr_mfqekpMktw1rn90umo1_500.gif +0 -0
  1223. package/RNTester/js/assets/uie_comment_highlighted@2x.png +0 -0
  1224. package/RNTester/js/assets/uie_comment_normal@2x.png +0 -0
  1225. package/RNTester/js/assets/uie_thumb_big.png +0 -0
  1226. package/RNTester/js/assets/uie_thumb_normal@2x.png +0 -0
  1227. package/RNTester/js/assets/uie_thumb_selected@2x.png +0 -0
  1228. package/RNTester/js/assets/victory.png +0 -0
  1229. package/RNTester/js/components/ListExampleShared.js +0 -377
  1230. package/RNTester/js/components/ListExampleShared.win32.js +0 -384
  1231. package/RNTester/js/components/RNTesterBlock.js +0 -105
  1232. package/RNTester/js/components/RNTesterButton.js +0 -50
  1233. package/RNTester/js/components/RNTesterExampleContainer.js +0 -80
  1234. package/RNTester/js/components/RNTesterExampleFilter.js +0 -120
  1235. package/RNTester/js/components/RNTesterExampleFilter.win32.js +0 -120
  1236. package/RNTester/js/components/RNTesterExampleList.js +0 -254
  1237. package/RNTester/js/components/RNTesterPage.js +0 -76
  1238. package/RNTester/js/components/RNTesterSettingSwitchRow.js +0 -60
  1239. package/RNTester/js/components/RNTesterTheme.js +0 -90
  1240. package/RNTester/js/components/RNTesterTitle.js +0 -58
  1241. package/RNTester/js/components/TextInlineView.js +0 -207
  1242. package/RNTester/js/components/TextLegend.js +0 -248
  1243. package/RNTester/js/components/createExamplePage.js +0 -31
  1244. package/RNTester/js/examples/Accessibility/AccessibilityAndroidExample.android.js +0 -177
  1245. package/RNTester/js/examples/Accessibility/AccessibilityExample.js +0 -792
  1246. package/RNTester/js/examples/Accessibility/AccessibilityIOSExample.js +0 -72
  1247. package/RNTester/js/examples/Accessibility/check.png +0 -0
  1248. package/RNTester/js/examples/Accessibility/mixed.png +0 -0
  1249. package/RNTester/js/examples/Accessibility/uncheck.png +0 -0
  1250. package/RNTester/js/examples/ActionSheetIOS/ActionSheetIOSExample.js +0 -342
  1251. package/RNTester/js/examples/ActivityIndicator/ActivityIndicatorExample.js +0 -162
  1252. package/RNTester/js/examples/Alert/AlertExample.js +0 -158
  1253. package/RNTester/js/examples/Alert/AlertIOSExample.js +0 -204
  1254. package/RNTester/js/examples/Animated/AnimatedExample.js +0 -347
  1255. package/RNTester/js/examples/Animated/AnimatedGratuitousApp/AnExApp.js +0 -407
  1256. package/RNTester/js/examples/Animated/AnimatedGratuitousApp/AnExBobble.js +0 -171
  1257. package/RNTester/js/examples/Animated/AnimatedGratuitousApp/AnExChained.js +0 -120
  1258. package/RNTester/js/examples/Animated/AnimatedGratuitousApp/AnExScroll.js +0 -124
  1259. package/RNTester/js/examples/Animated/AnimatedGratuitousApp/AnExSet.js +0 -149
  1260. package/RNTester/js/examples/Animated/AnimatedGratuitousApp/AnExSlides.md +0 -107
  1261. package/RNTester/js/examples/Animated/AnimatedGratuitousApp/AnExTilt.js +0 -154
  1262. package/RNTester/js/examples/AppState/AppStateExample.js +0 -106
  1263. package/RNTester/js/examples/Appearance/AppearanceExample.js +0 -219
  1264. package/RNTester/js/examples/AsyncStorage/AsyncStorageExample.js +0 -103
  1265. package/RNTester/js/examples/Border/BorderExample.js +0 -301
  1266. package/RNTester/js/examples/BoxShadow/BoxShadowExample.js +0 -100
  1267. package/RNTester/js/examples/Button/ButtonExample.js +0 -127
  1268. package/RNTester/js/examples/CheckBox/CheckBoxExample.js +0 -148
  1269. package/RNTester/js/examples/Clipboard/ClipboardExample.js +0 -68
  1270. package/RNTester/js/examples/ColorGradientWin32Example.js +0 -109
  1271. package/RNTester/js/examples/Crash/CrashExample.js +0 -52
  1272. package/RNTester/js/examples/DatePicker/DatePickerAndroidExample.js +0 -170
  1273. package/RNTester/js/examples/DatePicker/DatePickerIOSExample.js +0 -150
  1274. package/RNTester/js/examples/DevSettings/DevSettingsExample.js +0 -47
  1275. package/RNTester/js/examples/Dimensions/DimensionsExample.js +0 -68
  1276. package/RNTester/js/examples/FlatList/FlatListExample.js +0 -287
  1277. package/RNTester/js/examples/Image/ImageCapInsetsExample.js +0 -68
  1278. package/RNTester/js/examples/Image/ImageExample.js +0 -955
  1279. package/RNTester/js/examples/InputAccessoryView/InputAccessoryViewExample.js +0 -121
  1280. package/RNTester/js/examples/JSResponderHandlerExample/JSResponderHandlerExample.js +0 -77
  1281. package/RNTester/js/examples/KeyboardAvoidingView/KeyboardAvoidingViewExample.js +0 -120
  1282. package/RNTester/js/examples/Layout/LayoutAnimationExample.js +0 -221
  1283. package/RNTester/js/examples/Layout/LayoutEventsExample.js +0 -165
  1284. package/RNTester/js/examples/Layout/LayoutExample.js +0 -206
  1285. package/RNTester/js/examples/Linking/LinkingExample.js +0 -128
  1286. package/RNTester/js/examples/MaskedView/MaskedViewExample.js +0 -236
  1287. package/RNTester/js/examples/Modal/ModalExample.js +0 -283
  1288. package/RNTester/js/examples/MultiColumn/MultiColumnExample.js +0 -189
  1289. package/RNTester/js/examples/NativeAnimation/NativeAnimationsExample.js +0 -702
  1290. package/RNTester/js/examples/NewAppScreen/NewAppScreenExample.js +0 -77
  1291. package/RNTester/js/examples/OrientationChange/OrientationChangeExample.js +0 -66
  1292. package/RNTester/js/examples/PanResponder/PanResponderExample.js +0 -154
  1293. package/RNTester/js/examples/PermissionsAndroid/PermissionsExample.js +0 -130
  1294. package/RNTester/js/examples/Picker/PickerExample.js +0 -220
  1295. package/RNTester/js/examples/Picker/PickerIOSExample.js +0 -190
  1296. package/RNTester/js/examples/PlatformColor/PlatformColorExample.js +0 -355
  1297. package/RNTester/js/examples/PointerEvents/PointerEventsExample.js +0 -240
  1298. package/RNTester/js/examples/Pressable/PressableExample.js +0 -426
  1299. package/RNTester/js/examples/ProgressBarAndroid/ProgressBarAndroidExample.android.js +0 -94
  1300. package/RNTester/js/examples/ProgressViewIOS/ProgressViewIOSExample.js +0 -103
  1301. package/RNTester/js/examples/PushNotificationIOS/PushNotificationIOSExample.js +0 -267
  1302. package/RNTester/js/examples/RCTRootView/RCTRootViewIOSExample.js +0 -95
  1303. package/RNTester/js/examples/RTL/RTLExample.js +0 -747
  1304. package/RNTester/js/examples/RefreshControl/RefreshControlExample.js +0 -127
  1305. package/RNTester/js/examples/RootViewSizeFlexibilityExample/RootViewSizeFlexibilityExampleApp.js +0 -68
  1306. package/RNTester/js/examples/SafeAreaView/SafeAreaViewExample.js +0 -137
  1307. package/RNTester/js/examples/ScrollView/ScrollViewAnimatedExample.js +0 -107
  1308. package/RNTester/js/examples/ScrollView/ScrollViewExample.js +0 -346
  1309. package/RNTester/js/examples/ScrollView/ScrollViewSimpleExample.js +0 -105
  1310. package/RNTester/js/examples/SectionList/SectionListExample.js +0 -301
  1311. package/RNTester/js/examples/SegmentedControlIOS/SegmentedControlIOSExample.js +0 -183
  1312. package/RNTester/js/examples/SetPropertiesExample/SetPropertiesExampleApp.js +0 -34
  1313. package/RNTester/js/examples/Share/ShareExample.js +0 -124
  1314. package/RNTester/js/examples/Slider/SliderExample.js +0 -136
  1315. package/RNTester/js/examples/Snapshot/SnapshotExample.js +0 -69
  1316. package/RNTester/js/examples/Snapshot/SnapshotViewIOS.android.js +0 -12
  1317. package/RNTester/js/examples/Snapshot/SnapshotViewIOS.ios.js +0 -67
  1318. package/RNTester/js/examples/StatusBar/StatusBarExample.js +0 -522
  1319. package/RNTester/js/examples/Switch/SwitchExample.js +0 -239
  1320. package/RNTester/js/examples/TVEventHandler/TVEventHandlerExample.js +0 -88
  1321. package/RNTester/js/examples/Text/TextExample.android.js +0 -864
  1322. package/RNTester/js/examples/Text/TextExample.ios.js +0 -1153
  1323. package/RNTester/js/examples/TextInput/TextInputExample.android.js +0 -424
  1324. package/RNTester/js/examples/TextInput/TextInputExample.ios.js +0 -710
  1325. package/RNTester/js/examples/TextInput/TextInputSharedExamples.js +0 -618
  1326. package/RNTester/js/examples/Timer/TimerExample.js +0 -373
  1327. package/RNTester/js/examples/ToastAndroid/ToastAndroidExample.android.js +0 -136
  1328. package/RNTester/js/examples/Touchable/TouchableExample.js +0 -664
  1329. package/RNTester/js/examples/Transform/TransformExample.js +0 -336
  1330. package/RNTester/js/examples/TransparentHitTest/TransparentHitTestExample.js +0 -50
  1331. package/RNTester/js/examples/TurboModule/SampleTurboModuleExample.js +0 -190
  1332. package/RNTester/js/examples/TurboModule/TurboModuleExample.js +0 -26
  1333. package/RNTester/js/examples/Vibration/VibrationExample.js +0 -127
  1334. package/RNTester/js/examples/View/ViewExample.js +0 -471
  1335. package/RNTester/js/examples/WebSocket/WebSocketExample.js +0 -356
  1336. package/RNTester/js/examples/WebSocket/http_test_server.js +0 -33
  1337. package/RNTester/js/examples/WebSocket/websocket_test_server.js +0 -46
  1338. package/RNTester/js/examples/XHR/XHRExample.js +0 -62
  1339. package/RNTester/js/examples/XHR/XHRExampleAbortController.js +0 -58
  1340. package/RNTester/js/examples/XHR/XHRExampleBinaryUpload.js +0 -149
  1341. package/RNTester/js/examples/XHR/XHRExampleDownload.js +0 -242
  1342. package/RNTester/js/examples/XHR/XHRExampleFetch.js +0 -133
  1343. package/RNTester/js/examples/XHR/XHRExampleHeaders.js +0 -114
  1344. package/RNTester/js/examples/XHR/XHRExampleOnTimeOut.js +0 -99
  1345. package/RNTester/js/types/RNTesterTypes.js +0 -47
  1346. package/RNTester/js/utils/RNTesterActions.js +0 -53
  1347. package/RNTester/js/utils/RNTesterList.android.js +0 -257
  1348. package/RNTester/js/utils/RNTesterList.ios.js +0 -366
  1349. package/RNTester/js/utils/RNTesterList.win32.js +0 -240
  1350. package/RNTester/js/utils/RNTesterNavigationReducer.js +0 -49
  1351. package/RNTester/js/utils/RNTesterStatePersister.js +0 -86
  1352. package/RNTester/js/utils/URIActionMap.js +0 -48
  1353. package/api-extractor.json +0 -25
  1354. package/demo/DocPagePropsList.d.ts +0 -18
  1355. package/demo/DocPagePropsList.js +0 -7
  1356. package/demo/DocPagePropsList.js.map +0 -1
  1357. package/docs/api/index.md +0 -12
  1358. package/docs/api/react-native-win32.accessibilityactionevent.md +0 -13
  1359. package/docs/api/react-native-win32.accessibilityactioninfo.md +0 -14
  1360. package/docs/api/react-native-win32.accessibilityactionname.md +0 -11
  1361. package/docs/api/react-native-win32.accessibilityannotationinfo.md +0 -16
  1362. package/docs/api/react-native-win32.accessibilitystate.md +0 -14
  1363. package/docs/api/react-native-win32.annotationtype.md +0 -11
  1364. package/docs/api/react-native-win32.ariarole.md +0 -11
  1365. package/docs/api/react-native-win32.basepropswin32.md +0 -17
  1366. package/docs/api/react-native-win32.buttonwin32._constructor_.md +0 -20
  1367. package/docs/api/react-native-win32.buttonwin32.md +0 -27
  1368. package/docs/api/react-native-win32.buttonwin32.render.md +0 -15
  1369. package/docs/api/react-native-win32.buttonwin32omitstyles.md +0 -11
  1370. package/docs/api/react-native-win32.colorgradientwin32.md +0 -15
  1371. package/docs/api/react-native-win32.cursor.md +0 -11
  1372. package/docs/api/react-native-win32.eventphase.md +0 -21
  1373. package/docs/api/react-native-win32.gradientcolorstop.md +0 -16
  1374. package/docs/api/react-native-win32.gradientcolorvaluewin32.md +0 -16
  1375. package/docs/api/react-native-win32.ibuttonwin32props.md +0 -25
  1376. package/docs/api/react-native-win32.ibuttonwin32props.onblur.md +0 -13
  1377. package/docs/api/react-native-win32.ibuttonwin32props.onfocus.md +0 -13
  1378. package/docs/api/react-native-win32.ibuttonwin32props.onmouseenter.md +0 -13
  1379. package/docs/api/react-native-win32.ibuttonwin32props.onmouseleave.md +0 -13
  1380. package/docs/api/react-native-win32.ibuttonwin32props.ontouchend.md +0 -13
  1381. package/docs/api/react-native-win32.ibuttonwin32props.ontouchstart.md +0 -13
  1382. package/docs/api/react-native-win32.ibuttonwin32props.style.md +0 -13
  1383. package/docs/api/react-native-win32.ibuttonwin32style.md +0 -13
  1384. package/docs/api/react-native-win32.ichildasfunction.md +0 -13
  1385. package/docs/api/react-native-win32.idimensions.height.md +0 -11
  1386. package/docs/api/react-native-win32.idimensions.md +0 -21
  1387. package/docs/api/react-native-win32.idimensions.width.md +0 -11
  1388. package/docs/api/react-native-win32.ihandledkeyboardevent.md +0 -11
  1389. package/docs/api/react-native-win32.ikeyboardevent.md +0 -11
  1390. package/docs/api/react-native-win32.inativekeyboardevent.altkey.md +0 -11
  1391. package/docs/api/react-native-win32.inativekeyboardevent.ctrlkey.md +0 -11
  1392. package/docs/api/react-native-win32.inativekeyboardevent.eventphase.md +0 -11
  1393. package/docs/api/react-native-win32.inativekeyboardevent.key.md +0 -11
  1394. package/docs/api/react-native-win32.inativekeyboardevent.md +0 -23
  1395. package/docs/api/react-native-win32.inativekeyboardevent.metakey.md +0 -11
  1396. package/docs/api/react-native-win32.inativekeyboardevent.shiftkey.md +0 -11
  1397. package/docs/api/react-native-win32.ipersonacoinprops.brandiconsource.md +0 -11
  1398. package/docs/api/react-native-win32.ipersonacoinprops.color.md +0 -11
  1399. package/docs/api/react-native-win32.ipersonacoinprops.disabled.md +0 -11
  1400. package/docs/api/react-native-win32.ipersonacoinprops.displayname.md +0 -11
  1401. package/docs/api/react-native-win32.ipersonacoinprops.emailaddress.md +0 -11
  1402. package/docs/api/react-native-win32.ipersonacoinprops.initials.md +0 -11
  1403. package/docs/api/react-native-win32.ipersonacoinprops.md +0 -29
  1404. package/docs/api/react-native-win32.ipersonacoinprops.onerror.md +0 -11
  1405. package/docs/api/react-native-win32.ipersonacoinprops.onload.md +0 -11
  1406. package/docs/api/react-native-win32.ipersonacoinprops.presence.md +0 -11
  1407. package/docs/api/react-native-win32.ipersonacoinprops.size.md +0 -11
  1408. package/docs/api/react-native-win32.ipersonacoinprops.source.md +0 -11
  1409. package/docs/api/react-native-win32.iposition.left.md +0 -11
  1410. package/docs/api/react-native-win32.iposition.md +0 -21
  1411. package/docs/api/react-native-win32.iposition.top.md +0 -11
  1412. package/docs/api/react-native-win32.ipressevent.md +0 -24
  1413. package/docs/api/react-native-win32.ipressinlocation.locationx.md +0 -11
  1414. package/docs/api/react-native-win32.ipressinlocation.locationy.md +0 -11
  1415. package/docs/api/react-native-win32.ipressinlocation.md +0 -23
  1416. package/docs/api/react-native-win32.ipressinlocation.pagex.md +0 -11
  1417. package/docs/api/react-native-win32.ipressinlocation.pagey.md +0 -11
  1418. package/docs/api/react-native-win32.irenderchild.md +0 -13
  1419. package/docs/api/react-native-win32.irenderstyle.md +0 -13
  1420. package/docs/api/react-native-win32.irespondersyntheticevent.md +0 -21
  1421. package/docs/api/react-native-win32.irespondersyntheticevent.touchhistory.md +0 -16
  1422. package/docs/api/react-native-win32.isignal.md +0 -13
  1423. package/docs/api/react-native-win32.istate.md +0 -13
  1424. package/docs/api/react-native-win32.istateconditions.md +0 -15
  1425. package/docs/api/react-native-win32.itextwin32props.md +0 -20
  1426. package/docs/api/react-native-win32.itextwin32props.textstyle.md +0 -25
  1427. package/docs/api/react-native-win32.itextwin32props.tooltip.md +0 -13
  1428. package/docs/api/react-native-win32.itouchablewin32props.children.md +0 -11
  1429. package/docs/api/react-native-win32.itouchablewin32props.disabled.md +0 -11
  1430. package/docs/api/react-native-win32.itouchablewin32props.filterkeys.md +0 -13
  1431. package/docs/api/react-native-win32.itouchablewin32props.md +0 -36
  1432. package/docs/api/react-native-win32.itouchablewin32props.onlongpress.md +0 -11
  1433. package/docs/api/react-native-win32.itouchablewin32props.rejectrespondertermination.md +0 -11
  1434. package/docs/api/react-native-win32.itouchablewin32props.renderstyle.md +0 -11
  1435. package/docs/api/react-native-win32.itouchablewin32props.touchablegethighlightdelayms.md +0 -11
  1436. package/docs/api/react-native-win32.itouchablewin32props.touchablegethitslop.md +0 -11
  1437. package/docs/api/react-native-win32.itouchablewin32props.touchablegetlongpressdelayms.md +0 -11
  1438. package/docs/api/react-native-win32.itouchablewin32props.touchablegetpressoutdelayms.md +0 -11
  1439. package/docs/api/react-native-win32.itouchablewin32props.touchablegetpressrectoffset.md +0 -11
  1440. package/docs/api/react-native-win32.itouchablewin32props.touchablehandleactivepressin.md +0 -11
  1441. package/docs/api/react-native-win32.itouchablewin32props.touchablehandleactivepressout.md +0 -11
  1442. package/docs/api/react-native-win32.itouchablewin32props.touchablehandlekeypress.md +0 -11
  1443. package/docs/api/react-native-win32.itouchablewin32props.touchablehandlekeypressdown.md +0 -11
  1444. package/docs/api/react-native-win32.itouchablewin32props.touchablehandlelongpress.md +0 -11
  1445. package/docs/api/react-native-win32.itouchablewin32props.touchablehandlepress.md +0 -11
  1446. package/docs/api/react-native-win32.itouchablewin32props.touchsounddisabled.md +0 -11
  1447. package/docs/api/react-native-win32.itouchablewin32state.isfocused.md +0 -11
  1448. package/docs/api/react-native-win32.itouchablewin32state.ishovered.md +0 -11
  1449. package/docs/api/react-native-win32.itouchablewin32state.ispressed.md +0 -11
  1450. package/docs/api/react-native-win32.itouchablewin32state.md +0 -20
  1451. package/docs/api/react-native-win32.itouchinfo.currentpagex.md +0 -11
  1452. package/docs/api/react-native-win32.itouchinfo.currentpagey.md +0 -11
  1453. package/docs/api/react-native-win32.itouchinfo.currenttimestamp.md +0 -11
  1454. package/docs/api/react-native-win32.itouchinfo.md +0 -29
  1455. package/docs/api/react-native-win32.itouchinfo.previouspagex.md +0 -11
  1456. package/docs/api/react-native-win32.itouchinfo.previouspagey.md +0 -11
  1457. package/docs/api/react-native-win32.itouchinfo.previoustimestamp.md +0 -11
  1458. package/docs/api/react-native-win32.itouchinfo.startpagex.md +0 -11
  1459. package/docs/api/react-native-win32.itouchinfo.startpagey.md +0 -11
  1460. package/docs/api/react-native-win32.itouchinfo.starttimestamp.md +0 -11
  1461. package/docs/api/react-native-win32.itouchinfo.touchactive.md +0 -11
  1462. package/docs/api/react-native-win32.itransitions.md +0 -15
  1463. package/docs/api/react-native-win32.iviewwin32.focus.md +0 -11
  1464. package/docs/api/react-native-win32.iviewwin32.md +0 -18
  1465. package/docs/api/react-native-win32.iviewwin32props.acceptskeyboardfocus.md +0 -16
  1466. package/docs/api/react-native-win32.iviewwin32props.accessibilityactions.md +0 -11
  1467. package/docs/api/react-native-win32.iviewwin32props.accessibilityannotation.md +0 -15
  1468. package/docs/api/react-native-win32.iviewwin32props.accessibilitylevel.md +0 -11
  1469. package/docs/api/react-native-win32.iviewwin32props.accessibilitypositioninset.md +0 -11
  1470. package/docs/api/react-native-win32.iviewwin32props.accessibilitysetsize.md +0 -11
  1471. package/docs/api/react-native-win32.iviewwin32props.animationclass.md +0 -11
  1472. package/docs/api/react-native-win32.iviewwin32props.children.md +0 -11
  1473. package/docs/api/react-native-win32.iviewwin32props.cursor.md +0 -11
  1474. package/docs/api/react-native-win32.iviewwin32props.focusable.md +0 -11
  1475. package/docs/api/react-native-win32.iviewwin32props.keydownevents.md +0 -11
  1476. package/docs/api/react-native-win32.iviewwin32props.keyupevents.md +0 -11
  1477. package/docs/api/react-native-win32.iviewwin32props.md +0 -44
  1478. package/docs/api/react-native-win32.iviewwin32props.onblur.md +0 -15
  1479. package/docs/api/react-native-win32.iviewwin32props.onblurcapture.md +0 -15
  1480. package/docs/api/react-native-win32.iviewwin32props.onfocus.md +0 -15
  1481. package/docs/api/react-native-win32.iviewwin32props.onfocuscapture.md +0 -15
  1482. package/docs/api/react-native-win32.iviewwin32props.onkeydown.md +0 -11
  1483. package/docs/api/react-native-win32.iviewwin32props.onkeydowncapture.md +0 -11
  1484. package/docs/api/react-native-win32.iviewwin32props.onkeyup.md +0 -11
  1485. package/docs/api/react-native-win32.iviewwin32props.onkeyupcapture.md +0 -11
  1486. package/docs/api/react-native-win32.iviewwin32props.onmouseenter.md +0 -11
  1487. package/docs/api/react-native-win32.iviewwin32props.onmouseleave.md +0 -11
  1488. package/docs/api/react-native-win32.iviewwin32props.tooltip.md +0 -13
  1489. package/docs/api/react-native-win32.iviewwin32props.type.md +0 -11
  1490. package/docs/api/react-native-win32.md +0 -85
  1491. package/docs/api/react-native-win32.omittedaccessibilitypropswin32.md +0 -15
  1492. package/docs/api/react-native-win32.personacoin.md +0 -11
  1493. package/docs/api/react-native-win32.personacoinpresence.md +0 -25
  1494. package/docs/api/react-native-win32.personacoinsize.md +0 -23
  1495. package/docs/api/react-native-win32.sharedaccessibilitypropsiosandwin32.md +0 -13
  1496. package/docs/api/react-native-win32.textstyle.md +0 -13
  1497. package/docs/api/react-native-win32.textwin32._constructor_.md +0 -20
  1498. package/docs/api/react-native-win32.textwin32.md +0 -25
  1499. package/docs/api/react-native-win32.textwin32.render.md +0 -15
  1500. package/docs/api/react-native-win32.textwin32omittypes.md +0 -11
  1501. package/docs/api/react-native-win32.touchablewin32._constructor_.md +0 -20
  1502. package/docs/api/react-native-win32.touchablewin32.componentwillunmount.md +0 -15
  1503. package/docs/api/react-native-win32.touchablewin32.focus.md +0 -11
  1504. package/docs/api/react-native-win32.touchablewin32.md +0 -34
  1505. package/docs/api/react-native-win32.touchablewin32.render.md +0 -15
  1506. package/docs/api/react-native-win32.usefrom.md +0 -13
  1507. package/docs/api/react-native-win32.viewwin32.md +0 -11
  1508. package/docs/api/react-native-win32.viewwin32omittypes.md +0 -11
  1509. package/etc/react-native-win32.api.md +0 -481
  1510. package/flow/Position.js +0 -16
  1511. package/flow/Promise.js +0 -47
  1512. package/flow/fbjs.js +0 -258
  1513. package/flow/jest.js +0 -1189
  1514. package/flow/use-subscription.js +0 -19
  1515. package/jest/preprocessor.js +0 -120
  1516. package/typings-index.d.ts +0 -20
  1517. 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 = NonNullable<
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
+ mostRecentEventCount,
192
+ selection: {end: -1, start: -1},
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({mostRecentEventCount, selection});
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 {setLastNativeSelection, setLastNativeText};
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
+ end: propsSelection.end ?? propsSelection.start,
381
+ start: 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 = {};
391
+ const viewCommands =
392
+ AndroidTextInputCommands ||
393
+ (props.multiline === true
394
+ ? RCTMultilineTextInputNativeCommands
395
+ : RCTSinglelineTextInputNativeCommands);
860
396
 
861
- if (lastNativeText !== props.value && typeof props.value === 'string') {
862
- nativeUpdate.text = props.value;
863
- setLastNativeText(props.value);
864
- }
865
-
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
+ inputRef,
401
+ mostRecentEventCount,
402
+ props,
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,93 @@ function InternalTextInput(props: Props): React.Node {
907
413
 
908
414
  return () => {
909
415
  TextInputState.unregisterInput(inputRefValue);
910
- };
911
- }
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]);
922
416
 
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: ''});
417
+ if (TextInputState.currentlyFocusedInput() === inputRefValue) {
418
+ nullthrows(inputRefValue).blur();
419
+ }
420
+ };
934
421
  }
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
- }
422
+ }, []);
945
423
 
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
+ // Register the input immediately when the ref is set so that focus()
453
+ // can be called from ref callbacks
454
+ // Double registering during useLayoutEffect is fine, because the underlying
455
+ // state is a Set.
456
+ TextInputState.registerInput(instance);
457
+
458
+ // $FlowFixMe[prop-missing] - See the explanation above.
459
+ // $FlowFixMe[unsafe-object-assign]
460
+ Object.assign(instance, {
461
+ clear(): void {
462
+ if (inputRef.current != null) {
463
+ viewCommands.setTextAndSelection(
464
+ inputRef.current,
465
+ mostRecentEventCount,
466
+ '',
467
+ 0,
468
+ 0,
469
+ );
470
+ }
471
+ },
472
+ getNativeRef(): ?TextInputInstance {
473
+ return inputRef.current;
474
+ },
475
+ // TODO: Fix this returning true on null === null, when no input is focused
476
+ isFocused(): boolean {
477
+ return TextInputState.currentlyFocusedInput() === inputRef.current;
478
+ },
479
+ setSelection(start: number, end: number): void {
480
+ if (inputRef.current != null) {
481
+ viewCommands.setTextAndSelection(
482
+ inputRef.current,
483
+ mostRecentEventCount,
484
+ null,
485
+ start,
486
+ end,
487
+ );
488
+ }
489
+ },
490
+ });
977
491
  }
978
492
  },
979
- });
980
-
981
- const _onPress = (event: PressEvent) => {
982
- if (props.editable || props.editable === undefined) {
983
- nullthrows(inputRef.current).focus();
984
- }
985
- };
493
+ [mostRecentEventCount, viewCommands],
494
+ );
986
495
 
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
- }
496
+ // $FlowExpectedError[incompatible-type]
497
+ const ref = useMergeRefs<HostInstance>(setLocalRef, props.forwardedRef);
998
498
 
999
- const text = event.nativeEvent.text;
499
+ const _onChange = (event: TextInputChangeEvent) => {
500
+ const currentText = event.nativeEvent.text;
1000
501
  props.onChange && props.onChange(event);
1001
- props.onChangeText && props.onChangeText(text);
502
+ props.onChangeText && props.onChangeText(currentText);
1002
503
 
1003
504
  if (inputRef.current == null) {
1004
505
  // calling `props.onChange` or `props.onChangeText`
@@ -1006,7 +507,7 @@ function InternalTextInput(props: Props): React.Node {
1006
507
  return;
1007
508
  }
1008
509
 
1009
- setLastNativeText(text);
510
+ setLastNativeText(currentText);
1010
511
  // This must happen last, after we call setLastNativeText.
1011
512
  // Different ordering can cause bugs when editing AndroidTextInputs
1012
513
  // with multiple Fragments.
@@ -1014,7 +515,7 @@ function InternalTextInput(props: Props): React.Node {
1014
515
  setMostRecentEventCount(event.nativeEvent.eventCount);
1015
516
  };
1016
517
 
1017
- const _onSelectionChange = (event: SelectionChangeEvent) => {
518
+ const _onSelectionChange = (event: TextInputSelectionChangeEvent) => {
1018
519
  props.onSelectionChange && props.onSelectionChange(event);
1019
520
 
1020
521
  if (inputRef.current == null) {
@@ -1024,8 +525,8 @@ function InternalTextInput(props: Props): React.Node {
1024
525
  }
1025
526
 
1026
527
  setLastNativeSelection({
1027
- selection: event.nativeEvent.selection,
1028
528
  mostRecentEventCount,
529
+ selection: event.nativeEvent.selection,
1029
530
  });
1030
531
  };
1031
532
 
@@ -1048,31 +549,161 @@ function InternalTextInput(props: Props): React.Node {
1048
549
  };
1049
550
 
1050
551
  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};
552
+
553
+ const multiline = props.multiline ?? false;
554
+
555
+ let submitBehavior: SubmitBehavior;
556
+ if (props.submitBehavior != null) {
557
+ // `submitBehavior` is set explicitly
558
+ if (!multiline && props.submitBehavior === 'newline') {
559
+ // For single line text inputs, `'newline'` is not a valid option
560
+ submitBehavior = 'blurAndSubmit';
561
+ } else {
562
+ submitBehavior = props.submitBehavior;
563
+ }
564
+ } else if (multiline) {
565
+ if (props.blurOnSubmit === true) {
566
+ submitBehavior = 'blurAndSubmit';
567
+ } else {
568
+ submitBehavior = 'newline';
569
+ }
570
+ } else {
571
+ // Single line
572
+ if (props.blurOnSubmit !== false) {
573
+ submitBehavior = 'blurAndSubmit';
574
+ } else {
575
+ submitBehavior = 'submit';
576
+ }
577
+ }
578
+
579
+ const accessible = props.accessible !== false;
580
+ const focusable = props.focusable !== false;
581
+
582
+ const {
583
+ editable,
584
+ hitSlop,
585
+ onPress,
586
+ onPressIn,
587
+ onPressOut,
588
+ rejectResponderTermination,
589
+ } = props;
590
+
591
+ const config = useMemo(
592
+ () => ({
593
+ cancelable: Platform.OS === 'ios' ? !rejectResponderTermination : null,
594
+ hitSlop,
595
+ onPress: (event: GestureResponderEvent) => {
596
+ onPress?.(event);
597
+ if (editable !== false) {
598
+ if (inputRef.current != null) {
599
+ inputRef.current.focus();
600
+ }
601
+ }
602
+ },
603
+ onPressIn,
604
+ onPressOut,
605
+ }),
606
+ [
607
+ editable,
608
+ hitSlop,
609
+ onPress,
610
+ onPressIn,
611
+ onPressOut,
612
+ rejectResponderTermination,
613
+ ],
614
+ );
615
+
616
+ // Hide caret during test runs due to a flashing caret
617
+ // makes screenshot tests flakey
618
+ let caretHidden = props.caretHidden;
619
+ if (Platform.isTesting) {
620
+ caretHidden = true;
621
+ }
622
+
623
+ // TextInput handles onBlur and onFocus events
624
+ // so omitting onBlur and onFocus pressability handlers here.
625
+ const {onBlur, onFocus, ...eventHandlers} = usePressability(config);
626
+
627
+ const _accessibilityLabel =
628
+ props?.['aria-label'] ?? props?.accessibilityLabel;
629
+
630
+ let _accessibilityState;
631
+ if (
632
+ accessibilityState != null ||
633
+ ariaBusy != null ||
634
+ ariaChecked != null ||
635
+ ariaDisabled != null ||
636
+ ariaExpanded != null ||
637
+ ariaSelected != null
638
+ ) {
639
+ _accessibilityState = {
640
+ busy: ariaBusy ?? accessibilityState?.busy,
641
+ checked: ariaChecked ?? accessibilityState?.checked,
642
+ disabled: ariaDisabled ?? accessibilityState?.disabled,
643
+ expanded: ariaExpanded ?? accessibilityState?.expanded,
644
+ selected: ariaSelected ?? accessibilityState?.selected,
645
+ };
646
+ }
647
+
648
+ // Keep the original (potentially nested) style when possible, as React can diff these more efficiently
649
+ let _style = props.style;
650
+ const flattenedStyle = flattenStyle<TextStyleProp>(props.style);
651
+ if (flattenedStyle != null) {
652
+ let overrides: ?{...TextStyleInternal} = null;
653
+ if (typeof flattenedStyle?.fontWeight === 'number') {
654
+ overrides = overrides || ({}: {...TextStyleInternal});
655
+ overrides.fontWeight =
656
+ // $FlowFixMe[incompatible-type]
657
+ (flattenedStyle.fontWeight.toString(): TextStyleInternal['fontWeight']);
658
+ }
659
+
660
+ if (flattenedStyle.verticalAlign != null) {
661
+ overrides = overrides || ({}: {...TextStyleInternal});
662
+ overrides.textAlignVertical =
663
+ verticalAlignToTextAlignVerticalMap[flattenedStyle.verticalAlign];
664
+ overrides.verticalAlign = undefined;
665
+ }
666
+
667
+ if (overrides != null) {
668
+ // $FlowFixMe[incompatible-type]
669
+ _style = [_style, overrides];
670
+ }
671
+ }
1058
672
 
1059
673
  if (Platform.OS === 'ios') {
1060
- const RCTTextInputView = props.multiline
1061
- ? RCTMultilineTextInputView
1062
- : RCTSinglelineTextInputView;
674
+ const RCTTextInputView =
675
+ props.multiline === true
676
+ ? RCTMultilineTextInputView
677
+ : RCTSinglelineTextInputView;
1063
678
 
1064
- const style = props.multiline
1065
- ? [styles.multilineInput, props.style]
1066
- : props.style;
679
+ const useMultilineDefaultStyle =
680
+ props.multiline === true &&
681
+ (flattenedStyle == null ||
682
+ (flattenedStyle.padding == null &&
683
+ flattenedStyle.paddingVertical == null &&
684
+ flattenedStyle.paddingTop == null));
1067
685
 
1068
- additionalTouchableProps.rejectResponderTermination =
1069
- props.rejectResponderTermination;
686
+ const _accessibilityElementsHidden =
687
+ props['aria-hidden'] ?? props.accessibilityElementsHidden;
1070
688
 
1071
689
  textInput = (
1072
690
  <RCTTextInputView
1073
- ref={_setNativeRef}
1074
- {...props}
691
+ // Figure out imperative + forward refs.
692
+ ref={(ref: $FlowFixMe)}
693
+ {...otherProps}
694
+ {...eventHandlers}
695
+ acceptDragAndDropTypes={props.experimental_acceptDragAndDropTypes}
696
+ accessibilityLabel={_accessibilityLabel}
697
+ accessibilityState={_accessibilityState}
698
+ accessibilityElementsHidden={_accessibilityElementsHidden}
699
+ accessible={accessible}
700
+ submitBehavior={submitBehavior}
701
+ caretHidden={caretHidden}
1075
702
  dataDetectorTypes={props.dataDetectorTypes}
703
+ focusable={tabIndex !== undefined ? !tabIndex : focusable}
704
+ mostRecentEventCount={mostRecentEventCount}
705
+ nativeID={id ?? props.nativeID}
706
+ numberOfLines={props.rows ?? props.numberOfLines}
1076
707
  onBlur={_onBlur}
1077
708
  onChange={_onChange}
1078
709
  onContentSizeChange={props.onContentSizeChange}
@@ -1081,110 +712,265 @@ function InternalTextInput(props: Props): React.Node {
1081
712
  onSelectionChange={_onSelectionChange}
1082
713
  onSelectionChangeShouldSetResponder={emptyFunctionThatReturnsTrue}
1083
714
  selection={selection}
1084
- style={style}
715
+ selectionColor={selectionColor}
716
+ style={StyleSheet.compose(
717
+ useMultilineDefaultStyle ? styles.multilineDefault : null,
718
+ _style,
719
+ )}
1085
720
  text={text}
1086
721
  />
1087
722
  );
1088
723
  } else if (Platform.OS === 'android') {
1089
- const style = [props.style];
1090
724
  const autoCapitalize = props.autoCapitalize || 'sentences';
725
+ const _accessibilityLabelledBy =
726
+ props?.['aria-labelledby'] ?? props?.accessibilityLabelledBy;
727
+ const _importantForAccessibility =
728
+ props['aria-hidden'] === true
729
+ ? ('no-hide-descendants' as const)
730
+ : undefined;
731
+ const placeholder = props.placeholder ?? '';
1091
732
  let children = props.children;
1092
- let childCount = 0;
1093
- React.Children.forEach(children, () => ++childCount);
733
+ const childCount = React.Children.count(children);
1094
734
  invariant(
1095
- !(props.value && childCount),
735
+ !(props.value != null && childCount),
1096
736
  'Cannot specify both value and children.',
1097
737
  );
1098
738
  if (childCount > 1) {
1099
739
  children = <Text>{children}</Text>;
1100
740
  }
1101
-
741
+ // For consistency with iOS set cursor/selectionHandle color as selectionColor
742
+ const colorProps = {
743
+ cursorColor: cursorColor === undefined ? selectionColor : cursorColor,
744
+ selectionColor,
745
+ selectionHandleColor:
746
+ selectionHandleColor === undefined
747
+ ? selectionColor
748
+ : selectionHandleColor,
749
+ };
1102
750
  textInput = (
1103
- /* $FlowFixMe the types for AndroidTextInput don't match up exactly with
1104
- the props for TextInput. This will need to get fixed */
751
+ /* $FlowFixMe[prop-missing] the types for AndroidTextInput don't match up
752
+ * exactly with the props for TextInput. This will need to get fixed */
753
+ /* $FlowFixMe[incompatible-type] the types for AndroidTextInput don't
754
+ * match up exactly with the props for TextInput. This will need to get
755
+ * fixed */
756
+ /* $FlowFixMe[incompatible-type-arg] the types for AndroidTextInput don't
757
+ * match up exactly with the props for TextInput. This will need to get
758
+ * fixed */
1105
759
  <AndroidTextInput
1106
- ref={_setNativeRef}
1107
- {...props}
760
+ // Figure out imperative + forward refs.
761
+ ref={(ref: $FlowFixMe)}
762
+ {...otherProps}
763
+ {...colorProps}
764
+ {...eventHandlers}
765
+ accessibilityLabel={_accessibilityLabel}
766
+ accessibilityLabelledBy={_accessibilityLabelledBy}
767
+ accessibilityState={_accessibilityState}
768
+ accessible={accessible}
769
+ acceptDragAndDropTypes={props.experimental_acceptDragAndDropTypes}
1108
770
  autoCapitalize={autoCapitalize}
771
+ submitBehavior={submitBehavior}
772
+ caretHidden={caretHidden}
1109
773
  children={children}
1110
774
  disableFullscreenUI={props.disableFullscreenUI}
775
+ focusable={tabIndex !== undefined ? !tabIndex : focusable}
776
+ importantForAccessibility={_importantForAccessibility}
1111
777
  mostRecentEventCount={mostRecentEventCount}
778
+ nativeID={id ?? props.nativeID}
779
+ numberOfLines={props.rows ?? props.numberOfLines}
1112
780
  onBlur={_onBlur}
1113
781
  onChange={_onChange}
1114
782
  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 */
783
+ /* $FlowFixMe[prop-missing] the types for AndroidTextInput don't match
784
+ * up exactly with the props for TextInput. This will need to get fixed
785
+ */
786
+ /* $FlowFixMe[incompatible-type] the types for AndroidTextInput
787
+ * don't match up exactly with the props for TextInput. This will need
788
+ * to get fixed */
1117
789
  onScroll={_onScroll}
1118
790
  onSelectionChange={_onSelectionChange}
1119
- selection={selection}
1120
- style={style}
791
+ placeholder={placeholder}
792
+ style={_style}
1121
793
  text={text}
1122
794
  textBreakStrategy={props.textBreakStrategy}
1123
795
  />
1124
796
  );
1125
797
  }
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
- );
798
+ return <TextAncestorContext value={true}>{textInput}</TextAncestorContext>;
1142
799
  }
1143
800
 
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',
801
+ const enterKeyHintToReturnTypeMap = {
802
+ done: 'done',
803
+ enter: 'default',
804
+ go: 'go',
805
+ next: 'next',
806
+ previous: 'previous',
807
+ search: 'search',
808
+ send: 'send',
809
+ } as const;
810
+
811
+ const inputModeToKeyboardTypeMap = {
812
+ decimal: 'decimal-pad',
813
+ email: 'email-address',
814
+ none: 'default',
815
+ numeric: 'number-pad',
816
+ search:
817
+ Platform.OS === 'ios' ? ('web-search' as const) : ('default' as const),
818
+ tel: 'phone-pad',
819
+ text: 'default',
820
+ url: 'url',
821
+ } as const;
822
+
823
+ // Map HTML autocomplete values to Android autoComplete values
824
+ const autoCompleteWebToAutoCompleteAndroidMap = {
825
+ 'additional-name': 'name-middle',
826
+ 'address-line1': 'postal-address-region',
827
+ 'address-line2': 'postal-address-locality',
828
+ bday: 'birthdate-full',
829
+ 'bday-day': 'birthdate-day',
830
+ 'bday-month': 'birthdate-month',
831
+ 'bday-year': 'birthdate-year',
832
+ 'cc-csc': 'cc-csc',
833
+ 'cc-exp': 'cc-exp',
834
+ 'cc-exp-month': 'cc-exp-month',
835
+ 'cc-exp-year': 'cc-exp-year',
836
+ 'cc-number': 'cc-number',
837
+ country: 'postal-address-country',
838
+ 'current-password': 'password',
839
+ email: 'email',
840
+ 'family-name': 'name-family',
841
+ 'given-name': 'name-given',
842
+ 'honorific-prefix': 'name-prefix',
843
+ 'honorific-suffix': 'name-suffix',
844
+ name: 'name',
845
+ 'new-password': 'password-new',
846
+ off: 'off',
847
+ 'one-time-code': 'sms-otp',
848
+ 'postal-code': 'postal-code',
849
+ sex: 'gender',
850
+ 'street-address': 'street-address',
851
+ tel: 'tel',
852
+ 'tel-country-code': 'tel-country-code',
853
+ 'tel-national': 'tel-national',
854
+ username: 'username',
855
+ } as const;
856
+
857
+ // Map HTML autocomplete values to iOS textContentType values
858
+ const autoCompleteWebToTextContentTypeMap = {
859
+ 'additional-name': 'middleName',
860
+ 'address-line1': 'streetAddressLine1',
861
+ 'address-line2': 'streetAddressLine2',
862
+ bday: 'birthdate',
863
+ 'bday-day': 'birthdateDay',
864
+ 'bday-month': 'birthdateMonth',
865
+ 'bday-year': 'birthdateYear',
866
+ 'cc-additional-name': 'creditCardMiddleName',
867
+ 'cc-csc': 'creditCardSecurityCode',
868
+ 'cc-exp': 'creditCardExpiration',
869
+ 'cc-exp-month': 'creditCardExpirationMonth',
870
+ 'cc-exp-year': 'creditCardExpirationYear',
871
+ 'cc-family-name': 'creditCardFamilyName',
872
+ 'cc-given-name': 'creditCardGivenName',
873
+ 'cc-name': 'creditCardName',
874
+ 'cc-number': 'creditCardNumber',
875
+ 'cc-type': 'creditCardType',
876
+ country: 'countryName',
877
+ 'current-password': 'password',
878
+ email: 'emailAddress',
879
+ 'family-name': 'familyName',
880
+ 'given-name': 'givenName',
881
+ 'honorific-prefix': 'namePrefix',
882
+ 'honorific-suffix': 'nameSuffix',
883
+ name: 'name',
884
+ 'new-password': 'newPassword',
885
+ nickname: 'nickname',
886
+ off: 'none',
887
+ 'one-time-code': 'oneTimeCode',
888
+ organization: 'organizationName',
889
+ 'organization-title': 'jobTitle',
890
+ 'postal-code': 'postalCode',
891
+ 'street-address': 'fullStreetAddress',
892
+ tel: 'telephoneNumber',
893
+ url: 'URL',
894
+ username: 'username',
895
+ } as const;
896
+
897
+ const TextInput: component(
898
+ ref?: React.RefSetter<TextInputInstance>,
899
+ ...props: React.ElementConfig<typeof InternalTextInput>
900
+ ) = function TextInput({
901
+ ref: forwardedRef,
902
+ allowFontScaling = true,
903
+ rejectResponderTermination = true,
904
+ underlineColorAndroid = 'transparent',
905
+ autoComplete,
906
+ textContentType,
907
+ readOnly,
908
+ editable,
909
+ enterKeyHint,
910
+ returnKeyType,
911
+ inputMode,
912
+ showSoftInputOnFocus,
913
+ keyboardType,
914
+ ...restProps
915
+ }: {
916
+ ref?: React.RefSetter<TextInputInstance>,
917
+ ...React.ElementConfig<typeof InternalTextInput>,
918
+ }) {
919
+ return (
920
+ <InternalTextInput
921
+ allowFontScaling={allowFontScaling}
922
+ rejectResponderTermination={rejectResponderTermination}
923
+ underlineColorAndroid={underlineColorAndroid}
924
+ editable={readOnly !== undefined ? !readOnly : editable}
925
+ returnKeyType={
926
+ enterKeyHint ? enterKeyHintToReturnTypeMap[enterKeyHint] : returnKeyType
927
+ }
928
+ keyboardType={
929
+ inputMode ? inputModeToKeyboardTypeMap[inputMode] : keyboardType
930
+ }
931
+ showSoftInputOnFocus={
932
+ inputMode == null ? showSoftInputOnFocus : inputMode !== 'none'
933
+ }
934
+ autoComplete={
935
+ Platform.OS === 'android'
936
+ ? // $FlowFixMe[invalid-computed-prop]
937
+ // $FlowFixMe[prop-missing]
938
+ (autoCompleteWebToAutoCompleteAndroidMap[autoComplete] ??
939
+ autoComplete)
940
+ : undefined
941
+ }
942
+ textContentType={
943
+ textContentType != null
944
+ ? textContentType
945
+ : Platform.OS === 'ios' &&
946
+ autoComplete &&
947
+ autoComplete in autoCompleteWebToTextContentTypeMap
948
+ ? // $FlowFixMe[prop-missing]
949
+ autoCompleteWebToTextContentTypeMap[autoComplete]
950
+ : textContentType
951
+ }
952
+ {...restProps}
953
+ forwardedRef={forwardedRef}
954
+ />
955
+ );
1161
956
  };
1162
957
 
1163
- // TODO: Deprecate this
1164
- // $FlowFixMe
1165
- ExportedForwardRef.propTypes = DeprecatedTextInputPropTypes;
1166
-
1167
- // $FlowFixMe
1168
- ExportedForwardRef.State = {
1169
- currentlyFocusedInput: TextInputState.currentlyFocusedInput,
958
+ TextInput.displayName = 'TextInput';
1170
959
 
960
+ // $FlowFixMe[prop-missing]
961
+ TextInput.State = {
962
+ blurTextInput: TextInputState.blurTextInput,
1171
963
  currentlyFocusedField: TextInputState.currentlyFocusedField,
964
+ currentlyFocusedInput: TextInputState.currentlyFocusedInput,
1172
965
  focusTextInput: TextInputState.focusTextInput,
1173
- blurTextInput: TextInputState.blurTextInput,
1174
966
  };
1175
967
 
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
- |}>;
968
+ export type TextInputComponentStatics = $ReadOnly<{
969
+ State: TextInputStateType,
970
+ }>;
1185
971
 
1186
972
  const styles = StyleSheet.create({
1187
- multilineInput: {
973
+ multilineDefault: {
1188
974
  // This default top inset makes RCTMultilineTextInputView seem as close as possible
1189
975
  // to single-line RCTSinglelineTextInputView defaults, using the system defaults
1190
976
  // of font size 17 and a height of 31 points.
@@ -1192,11 +978,12 @@ const styles = StyleSheet.create({
1192
978
  },
1193
979
  });
1194
980
 
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);
981
+ const verticalAlignToTextAlignVerticalMap = {
982
+ auto: 'auto',
983
+ bottom: 'bottom',
984
+ middle: 'center',
985
+ top: 'top',
986
+ } as const;
987
+
988
+ // $FlowFixMe[unclear-type] Unclear type. Using `any` type is not safe.
989
+ export default TextInput as any as TextInputType;