@office-iss/react-native-win32 0.70.4 → 0.71.0-preview.2

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (556) hide show
  1. package/.eslintignore +1 -0
  2. package/.eslintrc.js +2 -0
  3. package/.flowconfig +3 -6
  4. package/CHANGELOG.json +265 -63
  5. package/CHANGELOG.md +102 -30
  6. package/IntegrationTests/AccessibilityManagerTest.js +1 -1
  7. package/IntegrationTests/AppEventsTest.js +0 -1
  8. package/IntegrationTests/BUCK +0 -1
  9. package/IntegrationTests/GlobalEvalWithSourceUrlTest.js +1 -1
  10. package/IntegrationTests/ImageSnapshotTest.js +1 -1
  11. package/IntegrationTests/IntegrationTestsApp.js +2 -3
  12. package/IntegrationTests/SimpleSnapshotTest.js +1 -1
  13. package/IntegrationTests/SyncMethodTest.js +1 -1
  14. package/IntegrationTests/TimersTest.js +4 -4
  15. package/IntegrationTests/WebSocketTest.js +3 -3
  16. package/Libraries/ActionSheetIOS/ActionSheetIOS.d.ts +80 -0
  17. package/Libraries/ActionSheetIOS/ActionSheetIOS.js +4 -3
  18. package/Libraries/ActionSheetIOS/NativeActionSheetManager.js +1 -0
  19. package/Libraries/Alert/Alert.d.ts +90 -0
  20. package/Libraries/Alert/Alert.js +7 -1
  21. package/Libraries/Alert/Alert.win32.js +1 -0
  22. package/Libraries/Alert/NativeAlertManager.js +2 -0
  23. package/Libraries/Alert/RCTAlertManager.ios.js +2 -1
  24. package/Libraries/Animated/Animated.d.ts +587 -0
  25. package/Libraries/Animated/Animated.js +13 -11
  26. package/Libraries/Animated/AnimatedEvent.js +12 -17
  27. package/Libraries/Animated/AnimatedImplementation.js +21 -23
  28. package/Libraries/Animated/AnimatedMock.js +11 -13
  29. package/Libraries/Animated/AnimatedWeb.js +2 -2
  30. package/Libraries/Animated/Easing.d.ts +37 -0
  31. package/Libraries/Animated/Easing.js +2 -2
  32. package/Libraries/Animated/NativeAnimatedHelper.js +32 -22
  33. package/Libraries/Animated/NativeAnimatedModule.js +1 -0
  34. package/Libraries/Animated/NativeAnimatedTurboModule.js +1 -0
  35. package/Libraries/Animated/SpringConfig.js +2 -7
  36. package/Libraries/Animated/animations/Animation.js +3 -4
  37. package/Libraries/Animated/animations/DecayAnimation.js +5 -8
  38. package/Libraries/Animated/animations/SpringAnimation.js +9 -14
  39. package/Libraries/Animated/animations/TimingAnimation.js +9 -13
  40. package/Libraries/Animated/bezier.js +2 -2
  41. package/Libraries/Animated/components/AnimatedFlatList.js +5 -6
  42. package/Libraries/Animated/components/AnimatedImage.js +5 -6
  43. package/Libraries/Animated/components/AnimatedScrollView.js +110 -14
  44. package/Libraries/Animated/components/AnimatedSectionList.js +4 -5
  45. package/Libraries/Animated/components/AnimatedText.js +5 -6
  46. package/Libraries/Animated/components/AnimatedView.js +5 -6
  47. package/Libraries/Animated/createAnimatedComponent.js +13 -20
  48. package/Libraries/Animated/createAnimatedComponent_EXPERIMENTAL.js +2 -2
  49. package/Libraries/Animated/nodes/AnimatedAddition.js +6 -8
  50. package/Libraries/Animated/nodes/AnimatedColor.js +7 -7
  51. package/Libraries/Animated/nodes/AnimatedDiffClamp.js +6 -8
  52. package/Libraries/Animated/nodes/AnimatedDivision.js +7 -9
  53. package/Libraries/Animated/nodes/AnimatedInterpolation.js +7 -10
  54. package/Libraries/Animated/nodes/AnimatedModulo.js +6 -8
  55. package/Libraries/Animated/nodes/AnimatedMultiplication.js +7 -9
  56. package/Libraries/Animated/nodes/AnimatedNode.js +10 -8
  57. package/Libraries/Animated/nodes/AnimatedProps.js +12 -30
  58. package/Libraries/Animated/nodes/AnimatedStyle.js +12 -22
  59. package/Libraries/Animated/nodes/AnimatedSubtraction.js +7 -9
  60. package/Libraries/Animated/nodes/AnimatedTracking.js +8 -12
  61. package/Libraries/Animated/nodes/AnimatedTransform.js +38 -31
  62. package/Libraries/Animated/nodes/AnimatedValue.js +9 -10
  63. package/Libraries/Animated/nodes/AnimatedValueXY.js +4 -7
  64. package/Libraries/Animated/nodes/AnimatedWithChildren.js +4 -5
  65. package/Libraries/Animated/useAnimatedProps.js +8 -16
  66. package/Libraries/Animated/useAnimatedValue.d.ts +15 -0
  67. package/Libraries/Animated/useAnimatedValue.js +25 -0
  68. package/Libraries/AppState/AppState.d.ts +58 -0
  69. package/Libraries/AppState/AppState.js +3 -7
  70. package/Libraries/AppState/NativeAppState.js +1 -0
  71. package/Libraries/BatchedBridge/MessageQueue.js +9 -5
  72. package/Libraries/BatchedBridge/NativeModules.d.ts +25 -0
  73. package/Libraries/BatchedBridge/NativeModules.js +1 -0
  74. package/Libraries/Blob/BlobManager.js +5 -3
  75. package/Libraries/Blob/File.js +2 -3
  76. package/Libraries/Blob/FileReader.js +6 -5
  77. package/Libraries/Blob/NativeBlobModule.js +1 -0
  78. package/Libraries/Blob/NativeFileReaderModule.js +1 -0
  79. package/Libraries/Blob/URL.js +11 -9
  80. package/Libraries/BugReporting/NativeBugReporting.js +1 -0
  81. package/Libraries/BugReporting/getReactData.js +1 -1
  82. package/Libraries/Components/AccessibilityInfo/AccessibilityInfo.d.ts +128 -0
  83. package/Libraries/Components/AccessibilityInfo/AccessibilityInfo.flow.js +208 -0
  84. package/Libraries/Components/AccessibilityInfo/AccessibilityInfo.js +40 -8
  85. package/Libraries/Components/AccessibilityInfo/AccessibilityInfo.win32.js +40 -8
  86. package/Libraries/Components/AccessibilityInfo/NativeAccessibilityInfo.js +1 -0
  87. package/Libraries/Components/AccessibilityInfo/NativeAccessibilityManager.js +5 -0
  88. package/Libraries/Components/ActivityIndicator/ActivityIndicator.d.ts +86 -0
  89. package/Libraries/Components/ActivityIndicator/ActivityIndicator.flow.js +58 -0
  90. package/Libraries/Components/ActivityIndicator/ActivityIndicator.js +7 -8
  91. package/Libraries/Components/ActivityIndicator/ActivityIndicatorViewNativeComponent.js +2 -3
  92. package/Libraries/Components/Button.d.ts +42 -0
  93. package/Libraries/Components/Button.flow.js +265 -0
  94. package/Libraries/Components/Button.js +62 -18
  95. package/Libraries/Components/Clipboard/Clipboard.d.ts +28 -0
  96. package/Libraries/Components/Clipboard/NativeClipboard.js +1 -0
  97. package/Libraries/Components/DatePicker/DatePickerIOS.android.js +4 -2
  98. package/Libraries/Components/DatePicker/DatePickerIOS.d.ts +92 -0
  99. package/Libraries/Components/{MaskedView/MaskedViewIOS.android.js → DatePicker/DatePickerIOS.flow.android.js} +3 -2
  100. package/Libraries/Components/DatePicker/DatePickerIOS.flow.ios.js +113 -0
  101. package/Libraries/Components/DatePicker/DatePickerIOS.ios.js +8 -7
  102. package/Libraries/Components/DatePicker/DatePickerIOS.win32.js +4 -2
  103. package/Libraries/Components/DatePicker/RCTDatePickerNativeComponent.js +7 -6
  104. package/Libraries/Components/DatePickerAndroid/NativeDatePickerAndroid.js +1 -0
  105. package/Libraries/Components/DrawerAndroid/AndroidDrawerLayoutNativeComponent.js +9 -8
  106. package/Libraries/Components/DrawerAndroid/DrawerLayoutAndroid.android.js +13 -14
  107. package/Libraries/Components/DrawerAndroid/DrawerLayoutAndroid.d.ts +141 -0
  108. package/Libraries/Components/Keyboard/Keyboard.d.ts +109 -0
  109. package/Libraries/Components/Keyboard/Keyboard.js +35 -8
  110. package/Libraries/Components/Keyboard/KeyboardAvoidingView.d.ts +46 -0
  111. package/Libraries/Components/Keyboard/KeyboardAvoidingView.js +35 -15
  112. package/Libraries/Components/Keyboard/NativeKeyboardObserver.js +1 -0
  113. package/Libraries/Components/Pressable/Pressable.d.ts +167 -0
  114. package/Libraries/Components/Pressable/Pressable.js +73 -15
  115. package/Libraries/Components/Pressable/Pressable.win32.js +77 -19
  116. package/Libraries/Components/Pressable/useAndroidRippleForView.js +6 -3
  117. package/Libraries/Components/ProgressBarAndroid/ProgressBarAndroid.android.js +3 -3
  118. package/Libraries/Components/ProgressBarAndroid/ProgressBarAndroid.d.ts +83 -0
  119. package/Libraries/Components/ProgressBarAndroid/ProgressBarAndroidNativeComponent.js +2 -2
  120. package/Libraries/Components/ProgressViewIOS/ProgressViewIOS.android.js +1 -1
  121. package/Libraries/Components/ProgressViewIOS/ProgressViewIOS.d.ts +62 -0
  122. package/Libraries/Components/ProgressViewIOS/ProgressViewIOS.ios.js +4 -4
  123. package/Libraries/Components/ProgressViewIOS/ProgressViewIOS.win32.js +1 -1
  124. package/Libraries/Components/ProgressViewIOS/RCTProgressViewNativeComponent.js +2 -2
  125. package/Libraries/Components/RefreshControl/AndroidSwipeRefreshLayoutNativeComponent.js +5 -6
  126. package/Libraries/Components/RefreshControl/PullToRefreshViewNativeComponent.js +4 -4
  127. package/Libraries/Components/RefreshControl/RefreshControl.d.ts +87 -0
  128. package/Libraries/Components/RefreshControl/RefreshControl.js +4 -3
  129. package/Libraries/Components/RefreshControl/__mocks__/RefreshControlMock.js +2 -3
  130. package/Libraries/Components/SafeAreaView/RCTSafeAreaViewNativeComponent.js +1 -1
  131. package/Libraries/Components/SafeAreaView/SafeAreaView.d.ts +24 -0
  132. package/Libraries/Components/SafeAreaView/SafeAreaView.flow.js +19 -0
  133. package/Libraries/Components/SafeAreaView/SafeAreaView.js +5 -4
  134. package/Libraries/Components/SafeAreaView/SafeAreaView.win32.js +5 -4
  135. package/Libraries/Components/ScrollView/AndroidHorizontalScrollContentViewNativeComponent.js +2 -1
  136. package/Libraries/Components/ScrollView/AndroidHorizontalScrollViewNativeComponent.js +2 -1
  137. package/Libraries/Components/ScrollView/ScrollContentViewNativeComponent.js +2 -1
  138. package/Libraries/Components/ScrollView/ScrollView.d.ts +911 -0
  139. package/Libraries/Components/ScrollView/ScrollView.js +87 -52
  140. package/Libraries/Components/ScrollView/ScrollViewCommands.js +3 -3
  141. package/Libraries/Components/ScrollView/ScrollViewNativeComponent.js +2 -1
  142. package/Libraries/Components/ScrollView/ScrollViewNativeComponentType.js +3 -3
  143. package/Libraries/Components/ScrollView/ScrollViewStickyHeader.js +243 -269
  144. package/Libraries/Components/Slider/Slider.d.ts +132 -0
  145. package/Libraries/Components/Slider/Slider.js +9 -9
  146. package/Libraries/Components/Slider/SliderNativeComponent.js +4 -5
  147. package/Libraries/Components/Sound/NativeSoundManager.js +1 -0
  148. package/Libraries/Components/StatusBar/NativeStatusBarManagerAndroid.js +1 -0
  149. package/Libraries/Components/StatusBar/NativeStatusBarManagerIOS.js +1 -0
  150. package/Libraries/Components/StatusBar/StatusBar.d.ts +138 -0
  151. package/Libraries/Components/StatusBar/StatusBar.js +7 -7
  152. package/Libraries/Components/Switch/AndroidSwitchNativeComponent.js +10 -10
  153. package/Libraries/Components/Switch/Switch.d.ts +115 -0
  154. package/Libraries/Components/Switch/Switch.js +7 -7
  155. package/Libraries/Components/Switch/SwitchNativeComponent.js +9 -4
  156. package/Libraries/Components/TextInput/AndroidTextInputNativeComponent.js +40 -12
  157. package/Libraries/Components/TextInput/InputAccessoryView.d.ts +34 -0
  158. package/Libraries/Components/TextInput/InputAccessoryView.js +3 -4
  159. package/Libraries/Components/TextInput/RCTInputAccessoryViewNativeComponent.js +1 -1
  160. package/Libraries/Components/TextInput/RCTMultilineTextInputNativeComponent.js +3 -2
  161. package/Libraries/Components/TextInput/RCTSingelineTextInputNativeComponent.js +3 -2
  162. package/Libraries/Components/TextInput/RCTTextInputViewConfig.js +3 -1
  163. package/Libraries/Components/TextInput/TextInput.d.ts +840 -0
  164. package/Libraries/Components/TextInput/TextInput.flow.js +1057 -0
  165. package/Libraries/Components/TextInput/TextInput.js +344 -38
  166. package/Libraries/Components/TextInput/TextInput.win32.d.ts +1 -1
  167. package/Libraries/Components/TextInput/TextInput.win32.js +1 -1
  168. package/Libraries/Components/TextInput/TextInput.win32.js.map +1 -1
  169. package/Libraries/Components/TextInput/TextInputNativeCommands.js +2 -2
  170. package/Libraries/Components/TextInput/TextInputState.js +22 -5
  171. package/Libraries/Components/TextInput/TextInputState.win32.js +24 -5
  172. package/Libraries/Components/ToastAndroid/NativeToastAndroid.js +1 -0
  173. package/Libraries/Components/ToastAndroid/ToastAndroid.d.ts +47 -0
  174. package/Libraries/Components/Touchable/Tests/TouchableWin32Test.js.map +1 -1
  175. package/Libraries/Components/Touchable/Touchable.d.ts +90 -0
  176. package/Libraries/Components/Touchable/Touchable.flow.js +258 -0
  177. package/Libraries/Components/Touchable/Touchable.js +12 -12
  178. package/Libraries/Components/Touchable/Touchable.win32.js +12 -12
  179. package/Libraries/Components/Touchable/TouchableBounce.js +44 -10
  180. package/Libraries/Components/Touchable/TouchableHighlight.d.ts +68 -0
  181. package/Libraries/Components/Touchable/TouchableHighlight.js +32 -9
  182. package/Libraries/Components/Touchable/TouchableNativeFeedback.d.ts +114 -0
  183. package/Libraries/Components/Touchable/TouchableNativeFeedback.js +54 -20
  184. package/Libraries/Components/Touchable/TouchableOpacity.d.ts +109 -0
  185. package/Libraries/Components/Touchable/TouchableOpacity.js +54 -16
  186. package/Libraries/Components/Touchable/TouchableWin32.Props.d.ts +2 -1
  187. package/Libraries/Components/Touchable/TouchableWin32.Props.js.map +1 -1
  188. package/Libraries/Components/Touchable/TouchableWin32.js +0 -1
  189. package/Libraries/Components/Touchable/TouchableWin32.js.map +1 -1
  190. package/Libraries/Components/Touchable/TouchableWithoutFeedback.d.ts +143 -0
  191. package/Libraries/Components/Touchable/TouchableWithoutFeedback.js +64 -10
  192. package/Libraries/Components/UnimplementedViews/UnimplementedNativeViewNativeComponent.js +1 -1
  193. package/Libraries/Components/UnimplementedViews/UnimplementedView.js +1 -1
  194. package/Libraries/Components/View/ReactNativeStyleAttributes.js +13 -2
  195. package/Libraries/Components/View/ReactNativeViewAttributes.win32.js +1 -1
  196. package/Libraries/Components/View/View.d.ts +29 -0
  197. package/Libraries/Components/View/View.js +91 -8
  198. package/Libraries/Components/View/View.win32.js +176 -89
  199. package/Libraries/Components/View/ViewAccessibility.d.ts +360 -0
  200. package/Libraries/Components/View/ViewAccessibility.js +70 -1
  201. package/Libraries/Components/View/ViewNativeComponent.js +3 -3
  202. package/Libraries/Components/View/ViewPropTypes.d.ts +245 -0
  203. package/Libraries/Components/View/ViewPropTypes.js +105 -13
  204. package/Libraries/Components/View/ViewPropTypes.win32.js +105 -13
  205. package/Libraries/Core/Devtools/openFileInEditor.js +3 -0
  206. package/Libraries/Core/Devtools/parseErrorStack.js +1 -1
  207. package/Libraries/Core/Devtools/symbolicateStackTrace.js +2 -2
  208. package/Libraries/Core/ExceptionsManager.js +8 -0
  209. package/Libraries/Core/ExtendedError.js +11 -8
  210. package/Libraries/Core/InitializeCore.js +2 -1
  211. package/Libraries/Core/NativeExceptionsManager.js +3 -4
  212. package/Libraries/Core/RawEventEmitter.js +2 -1
  213. package/Libraries/Core/ReactFiberErrorDialog.js +2 -2
  214. package/Libraries/Core/ReactNativeVersion.js +2 -2
  215. package/Libraries/Core/ReactNativeVersionCheck.js +1 -0
  216. package/Libraries/Core/ReactNativeVersionCheck.win32.js +1 -0
  217. package/Libraries/Core/SegmentFetcher/NativeSegmentFetcher.js +1 -0
  218. package/Libraries/Core/Timers/JSTimers.js +13 -11
  219. package/Libraries/Core/Timers/NativeTiming.js +1 -0
  220. package/Libraries/Core/setUpBatchedBridge.js +1 -5
  221. package/Libraries/Core/setUpDeveloperTools.js +4 -6
  222. package/Libraries/Core/setUpReactDevTools.js +4 -1
  223. package/Libraries/Core/setUpRegeneratorRuntime.js +1 -1
  224. package/Libraries/Core/setUpTimers.js +1 -1
  225. package/Libraries/EventEmitter/NativeEventEmitter.d.ts +70 -0
  226. package/Libraries/EventEmitter/NativeEventEmitter.js +1 -0
  227. package/Libraries/EventEmitter/RCTDeviceEventEmitter.d.ts +30 -0
  228. package/Libraries/EventEmitter/RCTDeviceEventEmitter.js +2 -1
  229. package/Libraries/EventEmitter/RCTNativeAppEventEmitter.d.ts +32 -0
  230. package/Libraries/EventEmitter/__mocks__/NativeEventEmitter.js +1 -0
  231. package/Libraries/Events/EventPolyfill.js +1 -1
  232. package/Libraries/HeapCapture/NativeJSCHeapCapture.js +1 -0
  233. package/Libraries/Image/AssetSourceResolver.js +4 -6
  234. package/Libraries/Image/Image.android.js +63 -45
  235. package/Libraries/Image/Image.d.ts +322 -0
  236. package/Libraries/Image/Image.flow.js +64 -0
  237. package/Libraries/Image/Image.ios.js +55 -28
  238. package/Libraries/Image/Image.win32.js +54 -25
  239. package/Libraries/Image/ImageBackground.js +18 -7
  240. package/Libraries/Image/ImageInjection.js +2 -1
  241. package/Libraries/Image/ImageProps.js +88 -5
  242. package/Libraries/Image/ImageResizeMode.d.ts +49 -0
  243. package/Libraries/Image/ImageSource.d.ts +76 -0
  244. package/Libraries/Image/ImageSourceUtils.js +80 -0
  245. package/Libraries/Image/ImageUtils.js +21 -0
  246. package/Libraries/Image/ImageViewNativeComponent.js +8 -5
  247. package/Libraries/Image/NativeImageEditor.js +1 -0
  248. package/Libraries/Image/NativeImageLoaderAndroid.js +1 -0
  249. package/Libraries/Image/NativeImageLoaderIOS.js +1 -0
  250. package/Libraries/Image/NativeImageLoaderWin32.js +1 -0
  251. package/Libraries/Image/NativeImageStoreAndroid.js +1 -0
  252. package/Libraries/Image/NativeImageStoreIOS.js +1 -0
  253. package/Libraries/Image/TextInlineImageNativeComponent.js +4 -3
  254. package/Libraries/Image/nativeImageSource.js +2 -2
  255. package/Libraries/Image/resolveAssetSource.js +5 -5
  256. package/Libraries/Inspector/BorderBox.js +1 -1
  257. package/Libraries/Inspector/BoxInspector.js +3 -4
  258. package/Libraries/Inspector/DevtoolsOverlay.js +213 -0
  259. package/Libraries/Inspector/ElementBox.js +4 -5
  260. package/Libraries/Inspector/ElementProperties.js +10 -11
  261. package/Libraries/Inspector/Inspector.js +22 -108
  262. package/Libraries/Inspector/Inspector.win32.js +23 -109
  263. package/Libraries/Inspector/InspectorOverlay.js +5 -5
  264. package/Libraries/Inspector/InspectorOverlay.win32.js +5 -5
  265. package/Libraries/Inspector/InspectorPanel.js +12 -10
  266. package/Libraries/Inspector/NetworkOverlay.js +7 -3
  267. package/Libraries/Inspector/PerformanceOverlay.js +3 -3
  268. package/Libraries/Inspector/StyleInspector.js +2 -2
  269. package/Libraries/Inspector/getInspectorDataForViewAtPoint.js +71 -0
  270. package/Libraries/Interaction/BridgeSpyStallHandler.js +1 -1
  271. package/Libraries/Interaction/InteractionManager.d.ts +74 -0
  272. package/Libraries/Interaction/InteractionManager.js +8 -8
  273. package/Libraries/Interaction/NativeFrameRateLogger.js +1 -0
  274. package/Libraries/Interaction/PanResponder.d.ts +202 -0
  275. package/Libraries/Interaction/PanResponder.flow.js +257 -0
  276. package/Libraries/Interaction/PanResponder.js +4 -3
  277. package/Libraries/JSInspector/JSInspector.js +0 -3
  278. package/Libraries/JSInspector/NetworkAgent.js +3 -3
  279. package/Libraries/LayoutAnimation/LayoutAnimation.d.ts +84 -0
  280. package/Libraries/LayoutAnimation/LayoutAnimation.js +4 -3
  281. package/Libraries/Linking/Linking.d.ts +61 -0
  282. package/Libraries/Linking/Linking.js +3 -2
  283. package/Libraries/Linking/NativeIntentAndroid.js +1 -0
  284. package/Libraries/Linking/NativeLinkingManager.js +1 -0
  285. package/Libraries/Lists/CellRenderMask.js +13 -3
  286. package/Libraries/Lists/ChildListCollection.js +72 -0
  287. package/Libraries/Lists/FillRateHelper.js +28 -17
  288. package/Libraries/Lists/FlatList.d.ts +292 -0
  289. package/Libraries/Lists/FlatList.js +70 -70
  290. package/Libraries/Lists/SectionList.d.ts +300 -0
  291. package/Libraries/Lists/SectionList.js +5 -5
  292. package/Libraries/Lists/SectionListModern.js +6 -6
  293. package/Libraries/Lists/StateSafePureComponent.js +85 -0
  294. package/Libraries/Lists/ViewabilityHelper.js +33 -12
  295. package/Libraries/Lists/VirtualizeUtils.js +17 -13
  296. package/Libraries/Lists/VirtualizedList.d.ts +317 -0
  297. package/Libraries/Lists/VirtualizedList.js +548 -890
  298. package/Libraries/Lists/VirtualizedListCellRenderer.js +259 -0
  299. package/Libraries/Lists/VirtualizedListContext.js +7 -48
  300. package/Libraries/Lists/VirtualizedListProps.js +279 -0
  301. package/Libraries/Lists/VirtualizedSectionList.js +6 -3
  302. package/Libraries/Lists/__flowtests__/SectionList-flowtest.js +1 -1
  303. package/Libraries/LogBox/Data/LogBoxData.js +9 -8
  304. package/Libraries/LogBox/Data/LogBoxLog.js +5 -5
  305. package/Libraries/LogBox/Data/LogBoxSymbolication.js +4 -4
  306. package/Libraries/LogBox/Data/parseLogBoxLog.js +5 -3
  307. package/Libraries/LogBox/LogBox.d.ts +28 -0
  308. package/Libraries/LogBox/LogBox.js +11 -11
  309. package/Libraries/LogBox/LogBoxInspectorContainer.js +5 -3
  310. package/Libraries/LogBox/LogBoxNotificationContainer.js +2 -2
  311. package/Libraries/LogBox/UI/AnsiHighlight.js +5 -3
  312. package/Libraries/LogBox/UI/LogBoxButton.js +6 -5
  313. package/Libraries/LogBox/UI/LogBoxInspector.js +6 -6
  314. package/Libraries/LogBox/UI/LogBoxInspectorCodeFrame.js +9 -8
  315. package/Libraries/LogBox/UI/LogBoxInspectorFooter.js +3 -3
  316. package/Libraries/LogBox/UI/LogBoxInspectorHeader.js +7 -6
  317. package/Libraries/LogBox/UI/LogBoxInspectorHeader.win32.js +6 -5
  318. package/Libraries/LogBox/UI/LogBoxInspectorMessageHeader.js +6 -5
  319. package/Libraries/LogBox/UI/LogBoxInspectorReactFrames.js +7 -6
  320. package/Libraries/LogBox/UI/LogBoxInspectorSection.js +2 -2
  321. package/Libraries/LogBox/UI/LogBoxInspectorSourceMapStatus.js +3 -3
  322. package/Libraries/LogBox/UI/LogBoxInspectorStackFrame.js +5 -5
  323. package/Libraries/LogBox/UI/LogBoxInspectorStackFrame.win32.js +5 -5
  324. package/Libraries/LogBox/UI/LogBoxInspectorStackFrames.js +5 -5
  325. package/Libraries/LogBox/UI/LogBoxMessage.js +3 -3
  326. package/Libraries/LogBox/UI/LogBoxNotification.js +6 -5
  327. package/Libraries/Modal/Modal.d.ts +104 -0
  328. package/Libraries/Modal/Modal.js +14 -14
  329. package/Libraries/Modal/NativeModalManager.js +1 -0
  330. package/Libraries/Modal/RCTModalHostViewNativeComponent.js +3 -3
  331. package/Libraries/NativeComponent/BaseViewConfig.android.js +27 -2
  332. package/Libraries/NativeComponent/BaseViewConfig.ios.js +8 -3
  333. package/Libraries/NativeComponent/BaseViewConfig.win32.js +8 -3
  334. package/Libraries/NativeComponent/NativeComponentRegistry.js +5 -4
  335. package/Libraries/NativeComponent/PlatformBaseViewConfig.js +1 -0
  336. package/Libraries/NativeComponent/StaticViewConfigValidator.js +1 -1
  337. package/Libraries/NativeComponent/ViewConfig.js +1 -0
  338. package/Libraries/NativeModules/specs/NativeAnimationsDebugModule.js +1 -0
  339. package/Libraries/NativeModules/specs/NativeDevMenu.js +1 -0
  340. package/Libraries/NativeModules/specs/NativeDevSettings.js +1 -0
  341. package/Libraries/NativeModules/specs/NativeDeviceEventManager.js +1 -0
  342. package/Libraries/NativeModules/specs/NativeDialogManagerAndroid.js +1 -0
  343. package/Libraries/NativeModules/specs/NativeLogBox.js +3 -2
  344. package/Libraries/NativeModules/specs/NativeRedBox.js +1 -0
  345. package/Libraries/NativeModules/specs/NativeSourceCode.js +1 -0
  346. package/Libraries/Network/NativeNetworkingAndroid.js +1 -0
  347. package/Libraries/Network/NativeNetworkingIOS.js +1 -0
  348. package/Libraries/Network/RCTNetworking.android.js +4 -3
  349. package/Libraries/Network/RCTNetworking.ios.js +3 -2
  350. package/Libraries/Network/RCTNetworking.win32.js +1 -0
  351. package/Libraries/Network/convertRequestBody.js +1 -2
  352. package/Libraries/NewAppScreen/components/DebugInstructions.js +4 -1
  353. package/Libraries/NewAppScreen/components/Header.js +6 -2
  354. package/Libraries/NewAppScreen/components/HermesBadge.js +6 -2
  355. package/Libraries/NewAppScreen/components/LearnMoreLinks.js +8 -9
  356. package/Libraries/NewAppScreen/components/ReloadInstructions.js +4 -1
  357. package/Libraries/NewAppScreen/index.js +1 -1
  358. package/Libraries/Performance/NativeJSCSamplingProfiler.js +1 -0
  359. package/Libraries/Performance/QuickPerformanceLogger.js +34 -10
  360. package/Libraries/Performance/Systrace.d.ts +66 -0
  361. package/Libraries/Performance/Systrace.js +110 -195
  362. package/Libraries/PermissionsAndroid/NativePermissionsAndroid.js +1 -0
  363. package/Libraries/PermissionsAndroid/PermissionsAndroid.d.ts +115 -0
  364. package/Libraries/PermissionsAndroid/PermissionsAndroid.js +5 -4
  365. package/Libraries/Pressability/Pressability.js +12 -10
  366. package/Libraries/Pressability/Pressability.win32.js +9 -7
  367. package/Libraries/Pressability/PressabilityDebug.js +2 -2
  368. package/Libraries/PushNotificationIOS/NativePushNotificationManagerIOS.js +1 -0
  369. package/Libraries/PushNotificationIOS/PushNotificationIOS.d.ts +275 -0
  370. package/Libraries/PushNotificationIOS/PushNotificationIOS.js +19 -14
  371. package/Libraries/ReactNative/AppContainer.js +17 -7
  372. package/Libraries/ReactNative/AppRegistry.d.ts +68 -0
  373. package/Libraries/ReactNative/AppRegistry.js +11 -14
  374. package/Libraries/ReactNative/BridgelessUIManager.js +4 -3
  375. package/Libraries/ReactNative/FabricUIManager.js +3 -3
  376. package/Libraries/ReactNative/I18nManager.d.ts +25 -0
  377. package/Libraries/ReactNative/NativeHeadlessJsTaskSupport.js +1 -0
  378. package/Libraries/ReactNative/NativeI18nManager.js +1 -0
  379. package/Libraries/ReactNative/NativeUIManager.js +1 -0
  380. package/Libraries/ReactNative/PaperUIManager.js +2 -2
  381. package/Libraries/ReactNative/PaperUIManager.win32.js +1 -1
  382. package/Libraries/ReactNative/ReactNativeFeatureFlags.js +9 -0
  383. package/Libraries/ReactNative/RendererImplementation.js +112 -0
  384. package/Libraries/ReactNative/RendererProxy.d.ts +20 -0
  385. package/Libraries/ReactNative/RendererProxy.js +26 -0
  386. package/Libraries/ReactNative/RootTag.js +0 -1
  387. package/Libraries/ReactNative/UIManager.d.ts +157 -0
  388. package/Libraries/ReactNative/UIManager.js +1 -1
  389. package/Libraries/ReactNative/getCachedComponentWithDebugName.js +1 -0
  390. package/Libraries/ReactNative/renderApplication.js +38 -20
  391. package/Libraries/ReactNative/requireNativeComponent.d.ts +23 -0
  392. package/Libraries/ReactNative/requireNativeComponent.js +2 -2
  393. package/Libraries/ReactPrivate/ReactNativePrivateInterface.js +10 -9
  394. package/Libraries/Renderer/implementations/ReactFabric-dev.js +312 -217
  395. package/Libraries/Renderer/implementations/ReactFabric-prod.js +212 -177
  396. package/Libraries/Renderer/implementations/ReactFabric-profiling.js +248 -213
  397. package/Libraries/Renderer/implementations/ReactNativeRenderer-dev.js +311 -218
  398. package/Libraries/Renderer/implementations/ReactNativeRenderer-prod.js +226 -196
  399. package/Libraries/Renderer/implementations/ReactNativeRenderer-profiling.js +262 -232
  400. package/Libraries/Renderer/implementations/ReactNativeRenderer.d.ts +149 -0
  401. package/Libraries/Renderer/shims/ReactFabric.js +2 -2
  402. package/Libraries/Renderer/shims/ReactFeatureFlags.js +2 -2
  403. package/Libraries/Renderer/shims/ReactNative.js +2 -2
  404. package/Libraries/Renderer/shims/ReactNativeTypes.d.ts +141 -0
  405. package/Libraries/Renderer/shims/ReactNativeTypes.js +23 -22
  406. package/Libraries/Renderer/shims/ReactNativeViewConfigRegistry.js +8 -8
  407. package/Libraries/Renderer/shims/createReactNativeComponentClass.js +2 -2
  408. package/Libraries/Settings/NativeSettingsManager.js +1 -0
  409. package/Libraries/Settings/Settings.d.ts +18 -0
  410. package/Libraries/Share/NativeShareModule.js +1 -0
  411. package/Libraries/Share/Share.d.ts +80 -0
  412. package/Libraries/Share/Share.js +7 -5
  413. package/Libraries/StyleSheet/PlatformColorValueTypes.android.js +1 -1
  414. package/Libraries/StyleSheet/PlatformColorValueTypes.d.ts +18 -0
  415. package/Libraries/StyleSheet/PlatformColorValueTypes.ios.js +1 -1
  416. package/Libraries/StyleSheet/PlatformColorValueTypesIOS.d.ts +25 -0
  417. package/Libraries/StyleSheet/PlatformColorValueTypesIOS.ios.js +1 -0
  418. package/Libraries/StyleSheet/StyleSheet.d.ts +156 -0
  419. package/Libraries/StyleSheet/StyleSheet.js +15 -11
  420. package/Libraries/StyleSheet/StyleSheet.win32.js +16 -12
  421. package/Libraries/StyleSheet/StyleSheetTypes.d.ts +332 -0
  422. package/Libraries/StyleSheet/StyleSheetTypes.js +101 -24
  423. package/Libraries/StyleSheet/__flowtests__/StyleSheet-flowtest.js +2 -2
  424. package/Libraries/StyleSheet/normalizeColor.js +3 -3
  425. package/Libraries/StyleSheet/private/_TransformStyle.js +26 -24
  426. package/Libraries/StyleSheet/processAspectRatio.js +53 -0
  427. package/Libraries/StyleSheet/processColor.d.ts +16 -0
  428. package/Libraries/StyleSheet/processColor.js +3 -4
  429. package/Libraries/StyleSheet/processColorArray.js +1 -0
  430. package/Libraries/StyleSheet/processFontVariant.js +30 -0
  431. package/Libraries/StyleSheet/processTransform.js +114 -105
  432. package/Libraries/StyleSheet/splitLayoutProps.js +5 -0
  433. package/Libraries/Text/Text.d.ts +209 -0
  434. package/Libraries/Text/Text.js +94 -12
  435. package/Libraries/Text/TextNativeComponent.js +49 -41
  436. package/Libraries/Text/TextNativeComponent.win32.js +67 -49
  437. package/Libraries/Text/TextProps.js +64 -7
  438. package/Libraries/{Components/MaskedView/MaskedViewIOS.win32.js → TurboModule/RCTExport.d.ts} +3 -4
  439. package/Libraries/TurboModule/TurboModuleRegistry.d.ts +15 -0
  440. package/Libraries/TurboModule/TurboModuleRegistry.js +3 -1
  441. package/Libraries/TurboModule/samples/NativeSampleTurboModule.js +1 -0
  442. package/Libraries/Types/CoreEventTypes.d.ts +263 -0
  443. package/Libraries/Types/CoreEventTypes.js +2 -1
  444. package/Libraries/Types/CoreEventTypes.win32.js +2 -1
  445. package/Libraries/Utilities/AcessibilityMapping.js +154 -0
  446. package/Libraries/Utilities/Appearance.d.ts +43 -0
  447. package/Libraries/Utilities/Appearance.js +3 -3
  448. package/Libraries/Utilities/BackHandler.android.js +3 -5
  449. package/Libraries/Utilities/BackHandler.d.ts +38 -0
  450. package/Libraries/Utilities/BackHandler.win32.js +3 -5
  451. package/Libraries/Utilities/DevSettings.d.ts +32 -0
  452. package/Libraries/Utilities/DevSettings.js +4 -2
  453. package/Libraries/Utilities/Dimensions.d.ts +79 -0
  454. package/Libraries/Utilities/Dimensions.js +2 -2
  455. package/Libraries/Utilities/Dimensions.win32.js +2 -2
  456. package/Libraries/Utilities/GlobalPerformanceLogger.js +2 -1
  457. package/Libraries/Utilities/HMRClient.js +23 -8
  458. package/Libraries/Utilities/LoadingView.ios.js +1 -1
  459. package/Libraries/Utilities/NativeAppearance.js +1 -0
  460. package/Libraries/Utilities/NativeDevLoadingView.js +1 -0
  461. package/Libraries/Utilities/NativeDevSplitBundleLoader.js +1 -0
  462. package/Libraries/Utilities/NativeDeviceInfo.js +1 -0
  463. package/Libraries/Utilities/NativePlatformConstantsAndroid.js +1 -0
  464. package/Libraries/Utilities/NativePlatformConstantsIOS.js +1 -0
  465. package/Libraries/Utilities/NativePlatformConstantsWin.js +1 -0
  466. package/Libraries/Utilities/PerformanceLoggerContext.js +3 -2
  467. package/Libraries/Utilities/PixelRatio.d.ts +64 -0
  468. package/Libraries/Utilities/Platform.android.js +11 -5
  469. package/Libraries/Utilities/Platform.d.ts +102 -0
  470. package/Libraries/Utilities/Platform.ios.js +12 -5
  471. package/Libraries/Utilities/Platform.win32.js +11 -5
  472. package/Libraries/Utilities/PolyfillFunctions.js +1 -1
  473. package/Libraries/Utilities/ReactNativeTestTools.js +9 -15
  474. package/Libraries/Utilities/codegenNativeCommands.js +1 -10
  475. package/Libraries/Utilities/codegenNativeComponent.js +4 -1
  476. package/Libraries/Utilities/createPerformanceLogger.js +7 -8
  477. package/Libraries/Utilities/differ/deepDiffer.js +1 -1
  478. package/Libraries/Utilities/groupByEveryN.js +1 -1
  479. package/Libraries/Utilities/stringifySafe.js +3 -1
  480. package/Libraries/Utilities/useColorScheme.js +3 -2
  481. package/Libraries/Utilities/useRefEffect.js +1 -1
  482. package/Libraries/Vibration/NativeVibration.js +1 -0
  483. package/Libraries/Vibration/Vibration.d.ts +43 -0
  484. package/Libraries/Vibration/Vibration.js +1 -0
  485. package/Libraries/WebPerformance/NativePerformanceObserver.js +41 -0
  486. package/Libraries/WebPerformance/PerformanceObserver.js +223 -0
  487. package/Libraries/WebSocket/NativeWebSocketModule.js +1 -0
  488. package/Libraries/WebSocket/WebSocket.js +11 -3
  489. package/Libraries/WebSocket/WebSocketInterceptor.js +1 -1
  490. package/Libraries/YellowBox/YellowBoxDeprecated.d.ts +19 -0
  491. package/Libraries/YellowBox/YellowBoxDeprecated.js +2 -3
  492. package/Libraries/__flowtests__/ReactNativeTypes-flowtest.js +2 -1
  493. package/Libraries/__tests__/ButtonWin32-test.js +16 -0
  494. package/Libraries/platform-types.d.ts +25 -0
  495. package/Libraries/vendor/core/ErrorUtils.d.ts +15 -0
  496. package/Libraries/vendor/emitter/EventEmitter.d.ts +164 -0
  497. package/babel.config.js +3 -0
  498. package/flow/jest.js +2 -2
  499. package/flow-typed/npm/{react-dom_v16.x.x.js → react-dom_v17.x.x.js} +58 -31
  500. package/flow-typed/npm/yargs_v17.x.x.js +341 -0
  501. package/index.js +89 -55
  502. package/index.win32.js +89 -55
  503. package/interface.js +8 -0
  504. package/jest/react-native-env.js +18 -0
  505. package/jest/renderer.js +2 -2
  506. package/jest/setup.js +7 -9
  507. package/jest.config.js +9 -2
  508. package/overrides.json +40 -101
  509. package/package.json +34 -33
  510. package/src/Libraries/Components/TextInput/TextInput.win32.tsx +2 -1
  511. package/src/Libraries/Components/Touchable/Tests/TouchableWin32Test.tsx +2 -2
  512. package/src/Libraries/Components/Touchable/TouchableWin32.Props.tsx +2 -1
  513. package/src/Libraries/Components/Touchable/TouchableWin32.tsx +1 -1
  514. package/src/Libraries/__tests__/__snapshots__/ButtonWin32-test.js.snap +22 -0
  515. package/src/Libraries/platform-types.d.ts +25 -0
  516. package/types/index.d.ts +215 -0
  517. package/IntegrationTests/AsyncStorageTest.js +0 -261
  518. package/Libraries/Components/MaskedView/MaskedViewIOS.ios.js +0 -93
  519. package/Libraries/Components/MaskedView/RCTMaskedViewNativeComponent.js +0 -21
  520. package/Libraries/Core/setUpSystrace.js +0 -21
  521. package/Libraries/Image/ImagePickerIOS.js +0 -103
  522. package/Libraries/Image/NativeImagePickerIOS.js +0 -38
  523. package/Libraries/Lists/VirtualizedList.win32.js +0 -9
  524. package/Libraries/Lists/__tests__/CellRenderMask-test.js +0 -179
  525. package/Libraries/Lists/__tests__/FillRateHelper-test.js +0 -120
  526. package/Libraries/Lists/__tests__/FlatList-test.js +0 -155
  527. package/Libraries/Lists/__tests__/SectionList-test.js +0 -109
  528. package/Libraries/Lists/__tests__/ViewabilityHelper-test.js +0 -440
  529. package/Libraries/Lists/__tests__/VirtualizeUtils-test.js +0 -91
  530. package/Libraries/Lists/__tests__/VirtualizedList-test.js +0 -1587
  531. package/Libraries/Lists/__tests__/VirtualizedSectionList-test.js +0 -269
  532. package/Libraries/Storage/AsyncStorage.js +0 -385
  533. package/Libraries/Storage/NativeAsyncLocalStorage.js +0 -44
  534. package/Libraries/Storage/NativeAsyncSQLiteDBStorage.js +0 -44
  535. package/Libraries/Utilities/JSDevSupportModule.js +0 -37
  536. package/Libraries/Utilities/NativeJSDevSupport.js +0 -23
  537. package/rntypes/BatchedBridge.d.ts +0 -23
  538. package/rntypes/Devtools.d.ts +0 -20
  539. package/rntypes/LaunchScreen.d.ts +0 -9
  540. package/rntypes/globals.d.ts +0 -497
  541. package/rntypes/index.d.ts +0 -9754
  542. package/rntypes/legacy-properties.d.ts +0 -238
  543. package/src/Libraries/Lists/__tests__/__snapshots__/FlatList-test.js.snap +0 -427
  544. package/src/Libraries/Lists/__tests__/__snapshots__/SectionList-test.js.snap +0 -391
  545. package/src/Libraries/Lists/__tests__/__snapshots__/VirtualizedList-test.js.snap +0 -4565
  546. package/src/Libraries/Lists/__tests__/__snapshots__/VirtualizedSectionList-test.js.snap +0 -1153
  547. package/src/rntypes/BatchedBridge.d.ts +0 -23
  548. package/src/rntypes/Devtools.d.ts +0 -20
  549. package/src/rntypes/LaunchScreen.d.ts +0 -9
  550. package/src/rntypes/globals.d.ts +0 -497
  551. package/src/rntypes/index.d.ts +0 -9754
  552. package/src/rntypes/legacy-properties.d.ts +0 -238
  553. package/src/typings-index.ts +0 -37
  554. package/typings-index.d.ts +0 -23
  555. package/typings-index.js +0 -47
  556. package/typings-index.js.map +0 -1
@@ -10,34 +10,30 @@
10
10
 
11
11
  'use strict';
12
12
 
13
+ import type {EdgeInsetsOrSizeProp} from '../../StyleSheet/EdgeInsetsPropType';
14
+ import type {ViewStyleProp} from '../../StyleSheet/StyleSheet';
13
15
  import type {
14
16
  BlurEvent,
15
17
  FocusEvent,
18
+ Layout,
19
+ LayoutEvent,
16
20
  MouseEvent,
17
21
  PointerEvent,
18
22
  PressEvent,
19
- Layout,
20
- LayoutEvent,
21
23
  } from '../../Types/CoreEventTypes';
22
- import type {EdgeInsetsOrSizeProp} from '../../StyleSheet/EdgeInsetsPropType';
23
- import type {Node} from 'react';
24
- import type {ViewStyleProp} from '../../StyleSheet/StyleSheet';
25
24
  import type {
25
+ AccessibilityActionEvent,
26
+ AccessibilityActionInfo,
26
27
  AccessibilityRole,
27
28
  AccessibilityState,
28
29
  AccessibilityValue,
29
- AccessibilityActionEvent,
30
- AccessibilityActionInfo,
30
+ Role,
31
31
  } from './ViewAccessibility';
32
+ import type {Node} from 'react';
32
33
 
33
34
  export type ViewLayout = Layout;
34
35
  export type ViewLayoutEvent = LayoutEvent;
35
36
 
36
- type BubblingEventProps = $ReadOnly<{|
37
- onBlur?: ?(event: BlurEvent) => mixed,
38
- onFocus?: ?(event: FocusEvent) => mixed,
39
- |}>;
40
-
41
37
  type DirectEventProps = $ReadOnly<{|
42
38
  /**
43
39
  * When `accessible` is true, the system will try to invoke this function
@@ -103,6 +99,17 @@ type PointerEventProps = $ReadOnly<{|
103
99
  onPointerDownCapture?: ?(e: PointerEvent) => void,
104
100
  onPointerUp?: ?(e: PointerEvent) => void,
105
101
  onPointerUpCapture?: ?(e: PointerEvent) => void,
102
+ onPointerOver?: ?(e: PointerEvent) => void,
103
+ onPointerOverCapture?: ?(e: PointerEvent) => void,
104
+ onPointerOut?: ?(e: PointerEvent) => void,
105
+ onPointerOutCapture?: ?(e: PointerEvent) => void,
106
+ |}>;
107
+
108
+ type FocusEventProps = $ReadOnly<{|
109
+ onBlur?: ?(event: BlurEvent) => void,
110
+ onBlurCapture?: ?(event: BlurEvent) => void,
111
+ onFocus?: ?(event: FocusEvent) => void,
112
+ onFocusCapture?: ?(event: FocusEvent) => void,
106
113
  |}>;
107
114
 
108
115
  type TouchEventProps = $ReadOnly<{|
@@ -286,6 +293,16 @@ type AndroidViewProps = $ReadOnly<{|
286
293
  */
287
294
  accessibilityLiveRegion?: ?('none' | 'polite' | 'assertive'),
288
295
 
296
+ /**
297
+ * Indicates to accessibility services whether the user should be notified
298
+ * when this view changes. Works for Android API >= 19 only.
299
+ *
300
+ * @platform android
301
+ *
302
+ * See https://reactnative.dev/docs/view#accessibilityliveregion
303
+ */
304
+ 'aria-live'?: ?('polite' | 'assertive' | 'off'),
305
+
289
306
  /**
290
307
  * Controls how view is important for accessibility which is if it
291
308
  * fires accessibility events and if it is reported to accessibility services
@@ -346,6 +363,19 @@ type AndroidViewProps = $ReadOnly<{|
346
363
  */
347
364
  focusable?: boolean,
348
365
 
366
+ /**
367
+ * Indicates whether this `View` should be focusable with a non-touch input device, eg. receive focus with a hardware keyboard.
368
+ * See https://developer.mozilla.org/en-US/docs/Web/HTML/Global_attributes/tabindex
369
+ * for more details.
370
+ *
371
+ * Supports the following values:
372
+ * - 0 (View is focusable)
373
+ * - -1 (View is not focusable)
374
+ *
375
+ * @platform android
376
+ */
377
+ tabIndex?: 0 | -1,
378
+
349
379
  /**
350
380
  * The action to perform when this `View` is clicked on by a non-touch click, eg. enter key on a hardware keyboard.
351
381
  *
@@ -373,6 +403,15 @@ type IOSViewProps = $ReadOnly<{|
373
403
  */
374
404
  accessibilityViewIsModal?: ?boolean,
375
405
 
406
+ /**
407
+ * The aria-modal attribute indicates content contained within a modal with aria-modal="true"
408
+ * should be accessible to the user.
409
+ * Default is `false`.
410
+ *
411
+ * @platform ios
412
+ */
413
+ 'aria-modal'?: ?boolean,
414
+
376
415
  /**
377
416
  * A value indicating whether the accessibility elements contained within
378
417
  * this accessibility element are hidden.
@@ -394,11 +433,11 @@ type IOSViewProps = $ReadOnly<{|
394
433
  |}>;
395
434
 
396
435
  export type ViewProps = $ReadOnly<{|
397
- ...BubblingEventProps,
398
436
  ...DirectEventProps,
399
437
  ...GestureResponderEventProps,
400
438
  ...MouseEventProps,
401
439
  ...PointerEventProps,
440
+ ...FocusEventProps,
402
441
  ...TouchEventProps,
403
442
  ...AndroidViewProps,
404
443
  ...IOSViewProps,
@@ -433,6 +472,12 @@ export type ViewProps = $ReadOnly<{|
433
472
  */
434
473
  accessibilityHint?: ?Stringish,
435
474
 
475
+ /**
476
+ * Alias for accessibilityLabel https://reactnative.dev/docs/view#accessibilitylabel
477
+ * https://github.com/facebook/react-native/issues/34424
478
+ */
479
+ 'aria-label'?: ?Stringish,
480
+
436
481
  /**
437
482
  * Indicates to the accessibility services that the UI component is in
438
483
  * a specific language. The provided string should be formatted following
@@ -447,12 +492,26 @@ export type ViewProps = $ReadOnly<{|
447
492
  */
448
493
  accessibilityRole?: ?AccessibilityRole,
449
494
 
495
+ /**
496
+ * Alias for accessibilityRole
497
+ */
498
+ role?: ?Role,
499
+
450
500
  /**
451
501
  * Indicates to accessibility services that UI Component is in a specific State.
452
502
  */
453
503
  accessibilityState?: ?AccessibilityState,
454
504
  accessibilityValue?: ?AccessibilityValue,
455
505
 
506
+ /**
507
+ * alias for accessibilityState
508
+ * It represents textual description of a component's value, or for range-based components, such as sliders and progress bars.
509
+ */
510
+ 'aria-valuemax'?: ?AccessibilityValue['max'],
511
+ 'aria-valuemin'?: ?AccessibilityValue['min'],
512
+ 'aria-valuenow'?: ?AccessibilityValue['now'],
513
+ 'aria-valuetext'?: ?AccessibilityValue['text'],
514
+
456
515
  /**
457
516
  * Provides an array of custom actions available for accessibility.
458
517
  *
@@ -466,6 +525,30 @@ export type ViewProps = $ReadOnly<{|
466
525
  */
467
526
  accessibilityLabelledBy?: ?string | ?Array<string>,
468
527
 
528
+ /**
529
+ * alias for accessibilityState
530
+ *
531
+ * see https://reactnative.dev/docs/accessibility#accessibilitystate
532
+ */
533
+ 'aria-busy'?: ?boolean,
534
+ 'aria-checked'?: ?boolean | 'mixed',
535
+ 'aria-disabled'?: ?boolean,
536
+ 'aria-expanded'?: ?boolean,
537
+ 'aria-selected'?: ?boolean,
538
+ /** A value indicating whether the accessibility elements contained within
539
+ * this accessibility element are hidden.
540
+ *
541
+ * See https://reactnative.dev/docs/view#aria-hidden
542
+ */
543
+ 'aria-hidden'?: ?boolean,
544
+
545
+ /**
546
+ * It reperesents the nativeID of the associated label text. When the assistive technology focuses on the component with this props, the text is read aloud.
547
+ *
548
+ * @platform android
549
+ */
550
+ 'aria-labelledby'?: ?string,
551
+
469
552
  /**
470
553
  * Views that are only used to layout their children or otherwise don't draw
471
554
  * anything may be automatically removed from the native hierarchy as an
@@ -479,6 +562,15 @@ export type ViewProps = $ReadOnly<{|
479
562
  */
480
563
  collapsable?: ?boolean,
481
564
 
565
+ /**
566
+ * Used to locate this view from native classes.
567
+ *
568
+ * > This disables the 'layout-only view removal' optimization for this view!
569
+ *
570
+ * See https://reactnative.dev/docs/view#id
571
+ */
572
+ id?: string,
573
+
482
574
  /**
483
575
  * Used to locate this view in end-to-end tests.
484
576
  *
@@ -10,35 +10,31 @@
10
10
 
11
11
  'use strict';
12
12
 
13
+ import type {EdgeInsetsOrSizeProp} from '../../StyleSheet/EdgeInsetsPropType';
14
+ import type {ViewStyleProp} from '../../StyleSheet/StyleSheet';
13
15
  import type {
14
16
  BlurEvent,
15
17
  FocusEvent,
18
+ Layout,
19
+ LayoutEvent,
16
20
  MouseEvent,
17
21
  PointerEvent,
18
22
  PressEvent,
19
- Layout,
20
- LayoutEvent,
21
23
  KeyEvent, // [Windows]
22
24
  } from '../../Types/CoreEventTypes';
23
- import type {EdgeInsetsOrSizeProp} from '../../StyleSheet/EdgeInsetsPropType';
24
- import type {Node} from 'react';
25
- import type {ViewStyleProp} from '../../StyleSheet/StyleSheet';
26
25
  import type {
26
+ AccessibilityActionEvent,
27
+ AccessibilityActionInfo,
27
28
  AccessibilityRole,
28
29
  AccessibilityState,
29
30
  AccessibilityValue,
30
- AccessibilityActionEvent,
31
- AccessibilityActionInfo,
31
+ Role,
32
32
  } from './ViewAccessibility';
33
+ import type {Node} from 'react';
33
34
 
34
35
  export type ViewLayout = Layout;
35
36
  export type ViewLayoutEvent = LayoutEvent;
36
37
 
37
- type BubblingEventProps = $ReadOnly<{|
38
- onBlur?: ?(event: BlurEvent) => mixed,
39
- onFocus?: ?(event: FocusEvent) => mixed,
40
- |}>;
41
-
42
38
  type DirectEventProps = $ReadOnly<{|
43
39
  /**
44
40
  * When `accessible` is true, the system will try to invoke this function
@@ -104,6 +100,17 @@ type PointerEventProps = $ReadOnly<{|
104
100
  onPointerDownCapture?: ?(e: PointerEvent) => void,
105
101
  onPointerUp?: ?(e: PointerEvent) => void,
106
102
  onPointerUpCapture?: ?(e: PointerEvent) => void,
103
+ onPointerOver?: ?(e: PointerEvent) => void,
104
+ onPointerOverCapture?: ?(e: PointerEvent) => void,
105
+ onPointerOut?: ?(e: PointerEvent) => void,
106
+ onPointerOutCapture?: ?(e: PointerEvent) => void,
107
+ |}>;
108
+
109
+ type FocusEventProps = $ReadOnly<{|
110
+ onBlur?: ?(event: BlurEvent) => void,
111
+ onBlurCapture?: ?(event: BlurEvent) => void,
112
+ onFocus?: ?(event: FocusEvent) => void,
113
+ onFocusCapture?: ?(event: FocusEvent) => void,
107
114
  |}>;
108
115
 
109
116
  type TouchEventProps = $ReadOnly<{|
@@ -287,6 +294,16 @@ type AndroidViewProps = $ReadOnly<{|
287
294
  */
288
295
  accessibilityLiveRegion?: ?('none' | 'polite' | 'assertive'),
289
296
 
297
+ /**
298
+ * Indicates to accessibility services whether the user should be notified
299
+ * when this view changes. Works for Android API >= 19 only.
300
+ *
301
+ * @platform android
302
+ *
303
+ * See https://reactnative.dev/docs/view#accessibilityliveregion
304
+ */
305
+ 'aria-live'?: ?('polite' | 'assertive' | 'off'),
306
+
290
307
  /**
291
308
  * Controls how view is important for accessibility which is if it
292
309
  * fires accessibility events and if it is reported to accessibility services
@@ -347,6 +364,19 @@ type AndroidViewProps = $ReadOnly<{|
347
364
  */
348
365
  focusable?: boolean,
349
366
 
367
+ /**
368
+ * Indicates whether this `View` should be focusable with a non-touch input device, eg. receive focus with a hardware keyboard.
369
+ * See https://developer.mozilla.org/en-US/docs/Web/HTML/Global_attributes/tabindex
370
+ * for more details.
371
+ *
372
+ * Supports the following values:
373
+ * - 0 (View is focusable)
374
+ * - -1 (View is not focusable)
375
+ *
376
+ * @platform android
377
+ */
378
+ tabIndex?: 0 | -1,
379
+
350
380
  /**
351
381
  * The action to perform when this `View` is clicked on by a non-touch click, eg. enter key on a hardware keyboard.
352
382
  *
@@ -374,6 +404,15 @@ type IOSViewProps = $ReadOnly<{|
374
404
  */
375
405
  accessibilityViewIsModal?: ?boolean,
376
406
 
407
+ /**
408
+ * The aria-modal attribute indicates content contained within a modal with aria-modal="true"
409
+ * should be accessible to the user.
410
+ * Default is `false`.
411
+ *
412
+ * @platform ios
413
+ */
414
+ 'aria-modal'?: ?boolean,
415
+
377
416
  /**
378
417
  * A value indicating whether the accessibility elements contained within
379
418
  * this accessibility element are hidden.
@@ -442,11 +481,11 @@ type WindowsViewProps = $ReadOnly<{|
442
481
  // Windows]
443
482
 
444
483
  export type ViewProps = $ReadOnly<{|
445
- ...BubblingEventProps,
446
484
  ...DirectEventProps,
447
485
  ...GestureResponderEventProps,
448
486
  ...MouseEventProps,
449
487
  ...PointerEventProps,
488
+ ...FocusEventProps,
450
489
  ...TouchEventProps,
451
490
  ...AndroidViewProps,
452
491
  ...IOSViewProps,
@@ -482,6 +521,12 @@ export type ViewProps = $ReadOnly<{|
482
521
  */
483
522
  accessibilityHint?: ?Stringish,
484
523
 
524
+ /**
525
+ * Alias for accessibilityLabel https://reactnative.dev/docs/view#accessibilitylabel
526
+ * https://github.com/facebook/react-native/issues/34424
527
+ */
528
+ 'aria-label'?: ?Stringish,
529
+
485
530
  /**
486
531
  * Indicates to the accessibility services that the UI component is in
487
532
  * a specific language. The provided string should be formatted following
@@ -496,12 +541,26 @@ export type ViewProps = $ReadOnly<{|
496
541
  */
497
542
  accessibilityRole?: ?AccessibilityRole,
498
543
 
544
+ /**
545
+ * Alias for accessibilityRole
546
+ */
547
+ role?: ?Role,
548
+
499
549
  /**
500
550
  * Indicates to accessibility services that UI Component is in a specific State.
501
551
  */
502
552
  accessibilityState?: ?AccessibilityState,
503
553
  accessibilityValue?: ?AccessibilityValue,
504
554
 
555
+ /**
556
+ * alias for accessibilityState
557
+ * It represents textual description of a component's value, or for range-based components, such as sliders and progress bars.
558
+ */
559
+ 'aria-valuemax'?: ?AccessibilityValue['max'],
560
+ 'aria-valuemin'?: ?AccessibilityValue['min'],
561
+ 'aria-valuenow'?: ?AccessibilityValue['now'],
562
+ 'aria-valuetext'?: ?AccessibilityValue['text'],
563
+
505
564
  /**
506
565
  * Provides an array of custom actions available for accessibility.
507
566
  *
@@ -515,6 +574,30 @@ export type ViewProps = $ReadOnly<{|
515
574
  */
516
575
  accessibilityLabelledBy?: ?string | ?Array<string>,
517
576
 
577
+ /**
578
+ * alias for accessibilityState
579
+ *
580
+ * see https://reactnative.dev/docs/accessibility#accessibilitystate
581
+ */
582
+ 'aria-busy'?: ?boolean,
583
+ 'aria-checked'?: ?boolean | 'mixed',
584
+ 'aria-disabled'?: ?boolean,
585
+ 'aria-expanded'?: ?boolean,
586
+ 'aria-selected'?: ?boolean,
587
+ /** A value indicating whether the accessibility elements contained within
588
+ * this accessibility element are hidden.
589
+ *
590
+ * See https://reactnative.dev/docs/view#aria-hidden
591
+ */
592
+ 'aria-hidden'?: ?boolean,
593
+
594
+ /**
595
+ * It reperesents the nativeID of the associated label text. When the assistive technology focuses on the component with this props, the text is read aloud.
596
+ *
597
+ * @platform android
598
+ */
599
+ 'aria-labelledby'?: ?string,
600
+
518
601
  /**
519
602
  * Views that are only used to layout their children or otherwise don't draw
520
603
  * anything may be automatically removed from the native hierarchy as an
@@ -528,6 +611,15 @@ export type ViewProps = $ReadOnly<{|
528
611
  */
529
612
  collapsable?: ?boolean,
530
613
 
614
+ /**
615
+ * Used to locate this view from native classes.
616
+ *
617
+ * > This disables the 'layout-only view removal' optimization for this view!
618
+ *
619
+ * See https://reactnative.dev/docs/view#id
620
+ */
621
+ id?: string,
622
+
531
623
  /**
532
624
  * Used to locate this view in end-to-end tests.
533
625
  *
@@ -15,6 +15,9 @@ const getDevServer = require('./getDevServer');
15
15
  function openFileInEditor(file: string, lineNumber: number) {
16
16
  fetch(getDevServer().url + 'open-stack-frame', {
17
17
  method: 'POST',
18
+ headers: {
19
+ 'Content-Type': 'application/json',
20
+ },
18
21
  body: JSON.stringify({file, lineNumber}),
19
22
  });
20
23
  }
@@ -16,7 +16,7 @@ import type {HermesParsedStack} from './parseHermesStack';
16
16
  const parseHermesStack = require('./parseHermesStack');
17
17
 
18
18
  function convertHermesStack(stack: HermesParsedStack): Array<StackFrame> {
19
- const frames = [];
19
+ const frames: Array<StackFrame> = [];
20
20
  for (const entry of stack.entries) {
21
21
  if (entry.type !== 'FRAME') {
22
22
  continue;
@@ -10,10 +10,10 @@
10
10
 
11
11
  'use strict';
12
12
 
13
- const getDevServer = require('./getDevServer');
14
-
15
13
  import type {StackFrame} from '../NativeExceptionsManager';
16
14
 
15
+ const getDevServer = require('./getDevServer');
16
+
17
17
  export type CodeFrame = $ReadOnly<{
18
18
  content: string,
19
19
  location: ?{
@@ -22,6 +22,11 @@ type ExceptionDecorator = ExceptionData => ExceptionData;
22
22
  let userExceptionDecorator: ?ExceptionDecorator;
23
23
  let inUserExceptionDecorator = false;
24
24
 
25
+ // This Symbol is used to decorate an ExtendedError with extra data in select usecases.
26
+ // Note that data passed using this method should be strictly contained,
27
+ // as data that's not serializable/too large may cause issues with passing the error to the native code.
28
+ const decoratedExtraDataKey: symbol = Symbol('decoratedExtraDataKey');
29
+
25
30
  /**
26
31
  * Allows the app to add information to the exception report before it is sent
27
32
  * to native. This API is not final.
@@ -83,6 +88,8 @@ function reportException(
83
88
  id: currentExceptionID,
84
89
  isFatal,
85
90
  extraData: {
91
+ // $FlowFixMe[incompatible-use] we can't define a type with a Symbol-keyed field in flow
92
+ ...e[decoratedExtraDataKey],
86
93
  jsEngine: e.jsEngine,
87
94
  rawStack: e.stack,
88
95
  },
@@ -235,6 +242,7 @@ function installConsoleErrorReporter() {
235
242
  }
236
243
 
237
244
  module.exports = {
245
+ decoratedExtraDataKey,
238
246
  handleException,
239
247
  installConsoleErrorReporter,
240
248
  SyntheticError,
@@ -8,11 +8,14 @@
8
8
  * @format
9
9
  */
10
10
 
11
- export type ExtendedError = Error & {
12
- jsEngine?: string,
13
- preventSymbolication?: boolean,
14
- componentStack?: string,
15
- isComponentError?: boolean,
16
- type?: string,
17
- ...
18
- };
11
+ export type ExtendedError = Error &
12
+ interface {
13
+ jsEngine?: string,
14
+ preventSymbolication?: boolean,
15
+ componentStack?: string,
16
+ isComponentError?: boolean,
17
+ type?: string,
18
+ // Note: A field keyed by the Symbol ExceptionsManager.decoratedExtraDataKey is also read from ExtendedErrors.
19
+ // This field isn't documented in the types as Flow does not support this usecase, but it's effectively:
20
+ // [decoratedExtraDataKey]?: {[string]: mixed},
21
+ };
@@ -28,7 +28,6 @@ const start = Date.now();
28
28
 
29
29
  require('./setUpGlobals');
30
30
  require('./setUpPerformance');
31
- require('./setUpSystrace');
32
31
  require('./setUpErrorHandling');
33
32
  require('./polyfillPromise');
34
33
  require('./setUpRegeneratorRuntime');
@@ -44,6 +43,8 @@ if (__DEV__) {
44
43
  require('../LogBox/LogBox').install();
45
44
  }
46
45
 
46
+ require('../ReactNative/AppRegistry');
47
+
47
48
  const GlobalPerformanceLogger = require('../Utilities/GlobalPerformanceLogger');
48
49
  // We could just call GlobalPerformanceLogger.markPoint at the top of the file,
49
50
  // but then we'd be excluding the time it took to require the logger.
@@ -9,8 +9,11 @@
9
9
  */
10
10
 
11
11
  import type {TurboModule} from '../TurboModule/RCTExport';
12
+
12
13
  import * as TurboModuleRegistry from '../TurboModule/TurboModuleRegistry';
13
14
 
15
+ const Platform = require('../Utilities/Platform');
16
+
14
17
  export type StackFrame = {|
15
18
  column: ?number,
16
19
  file: ?string,
@@ -18,7 +21,6 @@ export type StackFrame = {|
18
21
  methodName: string,
19
22
  collapse?: boolean,
20
23
  |};
21
-
22
24
  export type ExceptionData = {
23
25
  message: string,
24
26
  originalMessage: ?string,
@@ -31,7 +33,6 @@ export type ExceptionData = {
31
33
  extraData?: Object,
32
34
  ...
33
35
  };
34
-
35
36
  export interface Spec extends TurboModule {
36
37
  // Deprecated: Use `reportException`
37
38
  +reportFatalException: (
@@ -55,8 +56,6 @@ export interface Spec extends TurboModule {
55
56
  +dismissRedbox?: () => void;
56
57
  }
57
58
 
58
- const Platform = require('../Utilities/Platform');
59
-
60
59
  const NativeModule =
61
60
  TurboModuleRegistry.getEnforcing<Spec>('ExceptionsManager');
62
61
 
@@ -8,9 +8,10 @@
8
8
  * @format
9
9
  */
10
10
 
11
- import EventEmitter from '../vendor/emitter/EventEmitter';
12
11
  import type {IEventEmitter} from '../vendor/emitter/EventEmitter';
13
12
 
13
+ import EventEmitter from '../vendor/emitter/EventEmitter';
14
+
14
15
  export type RawEventEmitterEvent = $ReadOnly<{|
15
16
  eventName: string,
16
17
  // We expect, but do not/cannot require, that nativeEvent is an object
@@ -8,10 +8,10 @@
8
8
  * @flow strict-local
9
9
  */
10
10
 
11
- import {handleException, SyntheticError} from './ExceptionsManager';
12
-
13
11
  import type {ExtendedError} from './ExtendedError';
14
12
 
13
+ import {SyntheticError, handleException} from './ExceptionsManager';
14
+
15
15
  export type CapturedError = {
16
16
  +componentStack: string,
17
17
  +error: mixed,
@@ -11,7 +11,7 @@
11
11
 
12
12
  exports.version = {
13
13
  major: 0,
14
- minor: 70,
14
+ minor: 71,
15
15
  patch: 0,
16
- prerelease: null,
16
+ prerelease: 'rc.3',
17
17
  };
@@ -9,6 +9,7 @@
9
9
  */
10
10
 
11
11
  import Platform from '../Utilities/Platform';
12
+
12
13
  const ReactNativeVersion = require('./ReactNativeVersion');
13
14
 
14
15
  /**
@@ -9,6 +9,7 @@
9
9
  */
10
10
 
11
11
  import Platform from '../Utilities/Platform';
12
+
12
13
  const ReactNativeVersion = require('./ReactNativeVersion');
13
14
 
14
15
  /**
@@ -9,6 +9,7 @@
9
9
  */
10
10
 
11
11
  import type {TurboModule} from '../../TurboModule/RCTExport';
12
+
12
13
  import * as TurboModuleRegistry from '../../TurboModule/TurboModuleRegistry';
13
14
 
14
15
  export interface Spec extends TurboModule {