@office-iss/react-native-win32 0.79.0 → 0.80.0-preview.1

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 (294) hide show
  1. package/.flowconfig +10 -3
  2. package/CHANGELOG.json +112 -19
  3. package/CHANGELOG.md +46 -11
  4. package/IntegrationTests/ImageCachePolicyTest.js +1 -1
  5. package/IntegrationTests/LayoutEventsTest.js +1 -4
  6. package/Libraries/Alert/Alert.d.ts +4 -1
  7. package/Libraries/Alert/Alert.js +3 -0
  8. package/Libraries/Alert/RCTAlertManager.js +17 -0
  9. package/Libraries/Animated/Animated.js.flow +1 -3
  10. package/Libraries/Animated/AnimatedEvent.js +4 -3
  11. package/Libraries/Animated/AnimatedExports.js +2 -2
  12. package/Libraries/Animated/AnimatedExports.js.flow +140 -0
  13. package/Libraries/Animated/AnimatedImplementation.js +2 -123
  14. package/Libraries/Animated/Easing.js +13 -15
  15. package/Libraries/Animated/animations/Animation.js +8 -4
  16. package/Libraries/Animated/components/AnimatedFlatList.js +7 -6
  17. package/Libraries/Animated/components/AnimatedScrollView.js +48 -42
  18. package/Libraries/Animated/components/AnimatedSectionList.js +11 -7
  19. package/Libraries/Animated/createAnimatedComponent.js +105 -57
  20. package/Libraries/Animated/nodes/AnimatedNode.js +4 -3
  21. package/Libraries/Animated/nodes/AnimatedProps.js +46 -26
  22. package/Libraries/Animated/nodes/AnimatedValue.js +16 -7
  23. package/Libraries/Animated/nodes/AnimatedValueXY.js +3 -1
  24. package/Libraries/AppState/AppState.js +7 -2
  25. package/Libraries/BatchedBridge/MessageQueue.js +2 -2
  26. package/Libraries/BatchedBridge/NativeModules.js +2 -0
  27. package/Libraries/Blob/BlobManager.js +1 -0
  28. package/Libraries/Blob/FileReader.js +219 -8
  29. package/Libraries/Blob/URL.js +37 -12
  30. package/Libraries/Blob/URLSearchParams.js +106 -31
  31. package/Libraries/Blob/URLSearchParams.js.flow +12 -7
  32. package/Libraries/Components/AccessibilityInfo/AccessibilityInfo.js +1 -1
  33. package/Libraries/Components/AccessibilityInfo/AccessibilityInfo.win32.js +1 -1
  34. package/Libraries/Components/AccessibilityInfo/legacySendAccessibilityEvent.js +17 -0
  35. package/Libraries/Components/ActivityIndicator/ActivityIndicator.js +1 -0
  36. package/Libraries/Components/Button.js +1 -1
  37. package/Libraries/Components/Button.win32.js +1 -1
  38. package/Libraries/Components/DrawerAndroid/DrawerLayoutAndroid.android.js +1 -3
  39. package/Libraries/{NewAppScreen/components/Colors.js → Components/DrawerAndroid/DrawerLayoutAndroid.ios.js} +6 -10
  40. package/Libraries/Components/DrawerAndroid/DrawerLayoutAndroid.js +6 -66
  41. package/Libraries/Components/DrawerAndroid/DrawerLayoutAndroid.js.flow +18 -0
  42. package/Libraries/Components/DrawerAndroid/DrawerLayoutAndroidFallback.js +71 -0
  43. package/Libraries/Components/Keyboard/Keyboard.js +5 -3
  44. package/Libraries/Components/Keyboard/KeyboardAvoidingView.js +6 -3
  45. package/Libraries/Components/Pressable/Pressable.js +20 -4
  46. package/Libraries/Components/Pressable/Pressable.win32.js +20 -4
  47. package/Libraries/Components/ProgressBarAndroid/ProgressBarAndroid.js +25 -3
  48. package/Libraries/Components/ProgressBarAndroid/ProgressBarAndroidTypes.js +29 -20
  49. package/Libraries/Components/RefreshControl/RefreshControl.js +1 -1
  50. package/Libraries/Components/ScrollView/ScrollView.d.ts +3 -3
  51. package/Libraries/Components/ScrollView/ScrollView.js +132 -122
  52. package/Libraries/Components/StaticRenderer.js +1 -1
  53. package/Libraries/Components/Switch/Switch.d.ts +3 -0
  54. package/Libraries/Components/Switch/Switch.js +8 -4
  55. package/Libraries/Components/TextInput/AndroidTextInputNativeComponent.js +2 -1
  56. package/Libraries/Components/TextInput/RCTTextInputViewConfig.js +2 -4
  57. package/Libraries/Components/TextInput/Tests/TextInputTest.d.ts +2 -1
  58. package/Libraries/Components/TextInput/Tests/TextInputTest.js.map +1 -1
  59. package/Libraries/Components/TextInput/TextInput.d.ts +70 -33
  60. package/Libraries/Components/TextInput/TextInput.flow.js +100 -51
  61. package/Libraries/Components/TextInput/TextInput.flow.win32.js +1208 -0
  62. package/Libraries/Components/TextInput/TextInput.js +88 -1027
  63. package/Libraries/Components/TextInput/TextInput.win32.js +89 -1059
  64. package/Libraries/Components/TextInput/TextInputState.js +1 -1
  65. package/Libraries/Components/TextInput/TextInputState.win32.js +1 -1
  66. package/Libraries/{Modal/ModalInjection.js → Components/ToastAndroid/ToastAndroid.ios.js} +3 -5
  67. package/Libraries/Components/ToastAndroid/ToastAndroid.js +4 -32
  68. package/Libraries/Components/ToastAndroid/ToastAndroid.js.flow +109 -0
  69. package/Libraries/Components/ToastAndroid/ToastAndroid.win32.js +4 -32
  70. package/Libraries/Components/ToastAndroid/ToastAndroidFallback.js +45 -0
  71. package/Libraries/Components/Touchable/Tests/TouchableWin32Test.d.ts +2 -1
  72. package/Libraries/Components/Touchable/Tests/TouchableWin32Test.js.map +1 -1
  73. package/Libraries/Components/Touchable/Touchable.js +5 -5
  74. package/Libraries/Components/Touchable/Touchable.win32.js +5 -5
  75. package/Libraries/Components/Touchable/TouchableBounce.js +14 -7
  76. package/Libraries/Components/Touchable/TouchableHighlight.js +10 -7
  77. package/Libraries/Components/Touchable/TouchableNativeFeedback.js +6 -6
  78. package/Libraries/Components/Touchable/TouchableNativeFeedback.win32.js +6 -6
  79. package/Libraries/Components/Touchable/TouchableOpacity.js +13 -6
  80. package/Libraries/Components/View/View.js +18 -21
  81. package/Libraries/Components/View/View.win32.js +21 -24
  82. package/Libraries/Components/View/ViewAccessibility.js +25 -1
  83. package/Libraries/Components/View/ViewAccessibility.win32.js +9 -1
  84. package/Libraries/Components/View/ViewPropTypes.js +49 -3
  85. package/Libraries/Components/View/ViewPropTypes.win32.js +49 -3
  86. package/Libraries/Core/ReactNativeVersion.js +1 -1
  87. package/Libraries/Core/setUpReactDevTools.js +5 -5
  88. package/Libraries/Debugging/DebuggingOverlayRegistry.js +3 -3
  89. package/Libraries/EventEmitter/NativeEventEmitter.js +9 -4
  90. package/Libraries/Image/AssetSourceResolver.js +17 -4
  91. package/Libraries/Image/Image.d.ts +26 -10
  92. package/Libraries/Image/Image.js +17 -0
  93. package/Libraries/Image/Image.js.flow +5 -5
  94. package/Libraries/Image/ImageBackground.js +2 -0
  95. package/Libraries/Image/ImageInjection.js +1 -1
  96. package/Libraries/Image/ImageProps.js +22 -17
  97. package/Libraries/Image/ImageSource.js +3 -1
  98. package/Libraries/Image/ImageSourceUtils.js +4 -2
  99. package/Libraries/Image/ImageTypes.flow.js +1 -1
  100. package/Libraries/Image/Tests/ImageWin32Test.d.ts +2 -1
  101. package/Libraries/Image/Tests/ImageWin32Test.js.map +1 -1
  102. package/Libraries/Interaction/InteractionManager.d.ts +13 -0
  103. package/Libraries/Interaction/InteractionManager.js +1 -1
  104. package/Libraries/Interaction/PanResponder.js +3 -3
  105. package/Libraries/Interaction/TaskQueue.js +1 -0
  106. package/Libraries/LayoutAnimation/LayoutAnimation.js +2 -2
  107. package/Libraries/Linking/Linking.js +1 -1
  108. package/Libraries/Lists/FlatList.d.ts +2 -2
  109. package/Libraries/Lists/FlatList.js +8 -11
  110. package/Libraries/Lists/SectionList.js +39 -42
  111. package/Libraries/Lists/SectionListModern.js +25 -34
  112. package/Libraries/Lists/VirtualizedList.js +1 -0
  113. package/Libraries/Lists/VirtualizedSectionList.js +1 -0
  114. package/Libraries/LogBox/Data/LogBoxData.js +1 -1
  115. package/Libraries/LogBox/LogBoxNotificationContainer.js +1 -1
  116. package/Libraries/LogBox/UI/LogBoxInspectorSourceMapStatus.win32.js +140 -0
  117. package/Libraries/Modal/Modal.js +33 -7
  118. package/Libraries/NativeComponent/BaseViewConfig.android.js +2 -0
  119. package/Libraries/NativeComponent/BaseViewConfig.ios.js +2 -0
  120. package/Libraries/NativeComponent/BaseViewConfig.js +17 -0
  121. package/Libraries/NativeComponent/BaseViewConfig.win32.js +1 -0
  122. package/Libraries/NativeComponent/PlatformBaseViewConfig.js +2 -2
  123. package/Libraries/NativeModules/specs/NativeDevMenu.js +2 -2
  124. package/Libraries/Network/RCTNetworking.android.js +1 -1
  125. package/Libraries/Network/RCTNetworking.ios.js +1 -1
  126. package/Libraries/Network/RCTNetworking.js +17 -0
  127. package/Libraries/Network/RCTNetworking.js.flow +1 -1
  128. package/Libraries/Network/RCTNetworking.win32.js +1 -1
  129. package/Libraries/Network/XMLHttpRequest.js +781 -10
  130. package/Libraries/Performance/Systrace.js +7 -7
  131. package/Libraries/Pressability/Pressability.js +1 -1
  132. package/Libraries/Pressability/Pressability.win32.js +1 -1
  133. package/Libraries/ReactNative/AppContainer-dev.js +5 -4
  134. package/Libraries/ReactNative/AppRegistry.flow.js +49 -0
  135. package/Libraries/ReactNative/AppRegistry.js +2 -322
  136. package/Libraries/ReactNative/AppRegistry.js.flow +23 -0
  137. package/Libraries/ReactNative/AppRegistryImpl.js +316 -0
  138. package/Libraries/ReactNative/FabricUIManager.js +10 -0
  139. package/Libraries/ReactNative/ReactFabricPublicInstance/ReactFabricHostComponent.js +2 -4
  140. package/Libraries/ReactNative/ReactFabricPublicInstance/ReactFabricPublicInstance.js +1 -4
  141. package/Libraries/ReactNative/RendererImplementation.js +10 -5
  142. package/Libraries/ReactNative/getNativeComponentAttributes.js +1 -0
  143. package/Libraries/ReactNative/renderApplication.js +9 -0
  144. package/Libraries/ReactPrivate/ReactNativePrivateInterface.js +3 -3
  145. package/Libraries/ReactPrivate/ReactNativePrivateInterface.js.flow +51 -0
  146. package/Libraries/Renderer/implementations/ReactFabric-dev.js +4840 -4748
  147. package/Libraries/Renderer/implementations/ReactFabric-prod.js +4947 -4829
  148. package/Libraries/Renderer/implementations/ReactFabric-profiling.js +3998 -3888
  149. package/Libraries/Renderer/implementations/ReactNativeRenderer-dev.js +5005 -4948
  150. package/Libraries/Renderer/implementations/ReactNativeRenderer-prod.js +2744 -2652
  151. package/Libraries/Renderer/implementations/ReactNativeRenderer-profiling.js +5020 -4933
  152. package/Libraries/Renderer/shims/ReactNativeTypes.js +3 -3
  153. package/Libraries/Settings/Settings.ios.js +1 -0
  154. package/Libraries/Settings/Settings.js +13 -19
  155. package/Libraries/Settings/Settings.win32.js +19 -20
  156. package/Libraries/Settings/SettingsFallback.js +33 -0
  157. package/Libraries/StyleSheet/PlatformColorValueTypes.js +15 -0
  158. package/Libraries/StyleSheet/PlatformColorValueTypesIOS.js +6 -0
  159. package/Libraries/StyleSheet/Rect.js +1 -0
  160. package/Libraries/StyleSheet/StyleSheet.js +31 -200
  161. package/Libraries/StyleSheet/StyleSheet.js.flow +188 -0
  162. package/Libraries/StyleSheet/{StyleSheet.win32.js → StyleSheetExports.js} +2 -151
  163. package/Libraries/StyleSheet/StyleSheetExports.js.flow +112 -0
  164. package/Libraries/StyleSheet/StyleSheetTypes.d.ts +1 -1
  165. package/Libraries/StyleSheet/StyleSheetTypes.js +130 -52
  166. package/Libraries/StyleSheet/flattenStyle.js +14 -4
  167. package/Libraries/StyleSheet/private/_TransformStyle.js +49 -21
  168. package/Libraries/StyleSheet/processBackgroundImage.js +670 -214
  169. package/Libraries/Text/Text.d.ts +2 -5
  170. package/Libraries/Text/Text.js +3 -3
  171. package/Libraries/Text/Text.win32.js +3 -3
  172. package/Libraries/Text/TextNativeComponent.js +0 -4
  173. package/Libraries/Text/TextNativeComponent.win32.js +0 -4
  174. package/Libraries/Text/TextProps.js +5 -33
  175. package/Libraries/Text/TextProps.win32.js +5 -30
  176. package/Libraries/Types/CodegenTypesNamespace.d.ts +45 -0
  177. package/Libraries/{Blob/__mocks__/BlobModule.js → Types/CodegenTypesNamespace.js} +4 -6
  178. package/Libraries/Types/CoreEventTypes.d.ts +6 -1
  179. package/Libraries/Types/CoreEventTypes.js +1 -1
  180. package/Libraries/Types/CoreEventTypes.win32.js +1 -1
  181. package/Libraries/Utilities/Appearance.js +2 -0
  182. package/Libraries/Utilities/BackHandler.js +17 -0
  183. package/Libraries/Utilities/DeviceInfo.js +2 -0
  184. package/Libraries/Utilities/Dimensions.js +1 -1
  185. package/Libraries/Utilities/Dimensions.win32.js +1 -1
  186. package/Libraries/Utilities/Platform.js +17 -0
  187. package/Libraries/Utilities/PlatformTypes.js +11 -3
  188. package/Libraries/Utilities/ReactNativeTestTools.js +2 -2
  189. package/Libraries/Utilities/codegenNativeCommands.d.ts +18 -0
  190. package/Libraries/Utilities/codegenNativeComponent.d.ts +26 -0
  191. package/Libraries/WebSocket/WebSocket.js +313 -8
  192. package/Libraries/vendor/core/ErrorUtils.js +28 -2
  193. package/Libraries/vendor/emitter/EventEmitter.js +6 -2
  194. package/flow/global.js +1 -0
  195. package/index.js +51 -331
  196. package/index.win32.js +71 -352
  197. package/interface.js +0 -4
  198. package/jest/resolver.js +31 -0
  199. package/overrides.json +45 -47
  200. package/package.json +26 -26
  201. package/src/private/animated/NativeAnimatedHelper.js +21 -8
  202. package/src/private/animated/NativeAnimatedHelper.win32.js +21 -8
  203. package/src/private/animated/createAnimatedPropsHook.js +11 -16
  204. package/src/private/animated/createAnimatedPropsMemoHook.js +1 -2
  205. package/src/private/components/{SafeAreaView_INTERNAL_DO_NOT_USE.js → safeareaview/SafeAreaView_INTERNAL_DO_NOT_USE.js} +6 -6
  206. package/src/private/components/{HScrollViewNativeComponents.js → scrollview/HScrollViewNativeComponents.js} +8 -8
  207. package/src/private/components/scrollview/VScrollViewNativeComponents.js +25 -0
  208. package/src/private/{devmenu → devsupport/devmenu}/DevMenu.js +1 -1
  209. package/src/private/{inspector → devsupport/devmenu/elementinspector}/BorderBox.js +3 -3
  210. package/src/private/{inspector → devsupport/devmenu/elementinspector}/BoxInspector.js +6 -5
  211. package/src/private/{inspector → devsupport/devmenu/elementinspector}/ElementBox.js +8 -6
  212. package/src/private/{inspector → devsupport/devmenu/elementinspector}/ElementProperties.js +11 -10
  213. package/src/private/{inspector → devsupport/devmenu/elementinspector}/Inspector.js +14 -12
  214. package/src/private/{inspector → devsupport/devmenu/elementinspector}/InspectorOverlay.js +5 -4
  215. package/src/private/{inspector → devsupport/devmenu/elementinspector}/InspectorPanel.js +9 -8
  216. package/src/private/{inspector → devsupport/devmenu/elementinspector}/NetworkOverlay.js +10 -9
  217. package/src/private/{inspector → devsupport/devmenu/elementinspector}/ReactDevToolsOverlay.js +7 -7
  218. package/src/private/{inspector → devsupport/devmenu/elementinspector}/StyleInspector.js +7 -6
  219. package/src/private/{inspector → devsupport/devmenu/elementinspector}/XHRInterceptor.js +2 -2
  220. package/src/private/{inspector → devsupport/devmenu/elementinspector}/getInspectorDataForViewAtPoint.js +4 -4
  221. package/src/private/{inspector → devsupport/devmenu/elementinspector}/resolveBoxStyle.js +1 -1
  222. package/src/private/{inspector → devsupport/devmenu/perfmonitor}/PerformanceOverlay.js +6 -5
  223. package/src/private/{specs_DEPRECATED/modules → devsupport/devmenu/specs}/NativeDevMenu.js +2 -2
  224. package/src/private/{debugging → devsupport/rndevtools}/ReactDevToolsSettingsManager.android.js +1 -1
  225. package/src/private/{debugging → devsupport/rndevtools}/ReactDevToolsSettingsManager.ios.js +1 -1
  226. package/src/private/{debugging → devsupport/rndevtools}/ReactDevToolsSettingsManager.win32.js +1 -1
  227. package/src/private/{debugging → devsupport/rndevtools}/setUpFuseboxReactDevToolsDispatcher.js +1 -1
  228. package/src/private/{fusebox → devsupport/rndevtools}/specs/NativeReactDevToolsRuntimeSettingsModule.js +2 -2
  229. package/src/private/{specs_DEPRECATED/modules → devsupport/rndevtools/specs}/NativeReactDevToolsSettingsManager.js +2 -2
  230. package/src/private/featureflags/ReactNativeFeatureFlags.js +82 -80
  231. package/src/private/featureflags/ReactNativeFeatureFlagsBase.js +9 -1
  232. package/src/private/featureflags/specs/NativeReactNativeFeatureFlags.js +17 -13
  233. package/src/private/renderer/errorhandling/ErrorHandlers.js +2 -2
  234. package/src/private/specs_DEPRECATED/modules/NativeAnimatedModule.js +1 -1
  235. package/src/private/specs_DEPRECATED/modules/NativeAnimatedTurboModule.js +1 -1
  236. package/src/private/specs_DEPRECATED/modules/NativeSampleTurboModule.js +3 -0
  237. package/src/private/styles/composeStyles.js +12 -5
  238. package/src/private/types/HostComponent.js +1 -1
  239. package/src/private/types/HostInstance.js +67 -1
  240. package/src/private/webapis/dom/nodes/ReactNativeElement.js +2 -5
  241. package/src/private/webapis/dom/nodes/ReadOnlyNode.js +5 -18
  242. package/src/private/webapis/dom/nodes/internals/NodeInternals.js +6 -0
  243. package/src/private/webapis/performance/Performance.js +1 -3
  244. package/src/private/webapis/performance/PerformanceEntry.js +6 -1
  245. package/src/private/webapis/performance/internals/RawPerformanceEntry.js +3 -0
  246. package/src/private/webapis/performance/specs/NativePerformance.js +10 -1
  247. package/src/types/globals.d.ts +42 -0
  248. package/src-win/Libraries/Components/TextInput/Tests/TextInputTest.tsx +7 -7
  249. package/src-win/Libraries/Components/Touchable/Tests/TouchableWin32Test.tsx +3 -3
  250. package/src-win/Libraries/Image/Tests/ImageWin32Test.tsx +1 -1
  251. package/src-win/Libraries/Text/Text.d.ts +2 -5
  252. package/types/index.d.ts +6 -3
  253. package/types/public/ReactNativeTypes.d.ts +2 -2
  254. package/Libraries/BatchedBridge/__mocks__/MessageQueueTestConfig.js +0 -38
  255. package/Libraries/BatchedBridge/__mocks__/MessageQueueTestModule.js +0 -22
  256. package/Libraries/Blob/FileReader_new.js +0 -231
  257. package/Libraries/Blob/FileReader_old.js +0 -186
  258. package/Libraries/Blob/__mocks__/FileReaderModule.js +0 -20
  259. package/Libraries/Components/RefreshControl/__mocks__/RefreshControlMock.js +0 -32
  260. package/Libraries/Core/__mocks__/ErrorUtils.js +0 -33
  261. package/Libraries/Core/__mocks__/NativeExceptionsManager.js +0 -19
  262. package/Libraries/EventEmitter/__mocks__/NativeEventEmitter.js +0 -49
  263. package/Libraries/Events/CustomEvent.js +0 -32
  264. package/Libraries/Events/EventPolyfill.js +0 -239
  265. package/Libraries/Lists/__flowtests__/FlatList-flowtest.js +0 -118
  266. package/Libraries/Lists/__flowtests__/SectionList-flowtest.js +0 -134
  267. package/Libraries/Network/XMLHttpRequest_new.js +0 -794
  268. package/Libraries/Network/XMLHttpRequest_old.js +0 -701
  269. package/Libraries/NewAppScreen/components/DebugInstructions.js +0 -41
  270. package/Libraries/NewAppScreen/components/Header.js +0 -77
  271. package/Libraries/NewAppScreen/components/HermesBadge.js +0 -53
  272. package/Libraries/NewAppScreen/components/LearnMoreLinks.js +0 -148
  273. package/Libraries/NewAppScreen/components/ReloadInstructions.js +0 -39
  274. package/Libraries/NewAppScreen/components/logo.png +0 -0
  275. package/Libraries/NewAppScreen/index.js +0 -25
  276. package/Libraries/StyleSheet/__flowtests__/StyleSheet-flowtest.js +0 -58
  277. package/Libraries/Utilities/DeviceInfo.win32.js +0 -19
  278. package/Libraries/Utilities/__mocks__/BackHandler.js +0 -45
  279. package/Libraries/Utilities/__mocks__/GlobalPerformanceLogger.js +0 -16
  280. package/Libraries/Utilities/__mocks__/PixelRatio.js +0 -25
  281. package/Libraries/WebSocket/WebSocketEvent.js +0 -30
  282. package/Libraries/WebSocket/WebSocket_new.js +0 -325
  283. package/Libraries/WebSocket/WebSocket_old.js +0 -297
  284. package/Libraries/WebSocket/__mocks__/event-target-shim.js +0 -27
  285. package/Libraries/__flowtests__/ReactNativeTypes-flowtest.js +0 -30
  286. package/Libraries/vendor/emitter/__flowtests__/EventEmitter-flowtest.js +0 -81
  287. package/flow/jest.js +0 -1287
  288. package/jest/__tests__/setup-test.js +0 -18
  289. package/src/private/components/VScrollViewNativeComponents.js +0 -25
  290. package/src/private/utilities/ensureInstance.js +0 -21
  291. package/src/private/webapis/performance/specs/__mocks__/NativePerformanceMock.js +0 -267
  292. package/types/modules/LaunchScreen.d.ts +0 -18
  293. /package/src/private/{devmenu → devsupport/devmenu}/DevMenu.d.ts +0 -0
  294. /package/src/private/{debugging → devsupport/rndevtools}/FuseboxSessionObserver.js +0 -0
@@ -16,8 +16,7 @@ import {TextStyle, ViewStyle} from '../StyleSheet/StyleSheetTypes';
16
16
  import {
17
17
  GestureResponderEvent,
18
18
  LayoutChangeEvent,
19
- NativeSyntheticEvent,
20
- TextLayoutEventData,
19
+ TextLayoutEvent,
21
20
  } from '../Types/CoreEventTypes';
22
21
  import type {
23
22
  IKeyboardEvent,
@@ -248,9 +247,7 @@ export interface TextProps
248
247
  /**
249
248
  * Invoked on Text layout
250
249
  */
251
- onTextLayout?:
252
- | ((event: NativeSyntheticEvent<TextLayoutEventData>) => void)
253
- | undefined;
250
+ onTextLayout?: ((event: TextLayoutEvent) => void) | undefined;
254
251
 
255
252
  /**
256
253
  * This function is called on press.
@@ -35,7 +35,7 @@ type TextForwardRef = React.ElementRef<
35
35
  *
36
36
  * @see https://reactnative.dev/docs/text
37
37
  */
38
- const Text: component(
38
+ const TextImpl: component(
39
39
  ref?: React.RefSetter<TextForwardRef>,
40
40
  ...props: TextProps
41
41
  ) = React.forwardRef(
@@ -330,7 +330,7 @@ const Text: component(
330
330
  },
331
331
  );
332
332
 
333
- Text.displayName = 'Text';
333
+ TextImpl.displayName = 'Text';
334
334
 
335
335
  type TextPressabilityProps = $ReadOnly<{
336
336
  onLongPress?: ?(event: GestureResponderEvent) => mixed,
@@ -536,4 +536,4 @@ const verticalAlignToTextAlignVerticalMap = {
536
536
  middle: 'center',
537
537
  };
538
538
 
539
- export default Text;
539
+ export default TextImpl;
@@ -35,7 +35,7 @@ type TextForwardRef = React.ElementRef<
35
35
  *
36
36
  * @see https://reactnative.dev/docs/text
37
37
  */
38
- const Text: component(
38
+ const TextImpl: component(
39
39
  ref?: React.RefSetter<TextForwardRef>,
40
40
  ...props: TextProps
41
41
  ) = React.forwardRef(
@@ -370,7 +370,7 @@ const Text: component(
370
370
  },
371
371
  );
372
372
 
373
- Text.displayName = 'Text';
373
+ TextImpl.displayName = 'Text';
374
374
 
375
375
  type TextPressabilityProps = $ReadOnly<{
376
376
  onLongPress?: ?(event: GestureResponderEvent) => mixed,
@@ -576,4 +576,4 @@ const verticalAlignToTextAlignVerticalMap = {
576
576
  middle: 'center',
577
577
  };
578
578
 
579
- export default Text;
579
+ export default TextImpl;
@@ -44,7 +44,6 @@ const textViewConfig = {
44
44
  minimumFontScale: true,
45
45
  textBreakStrategy: true,
46
46
  onTextLayout: true,
47
- onInlineViewLayout: true,
48
47
  dataDetectorType: true,
49
48
  android_hyphenationFrequency: true,
50
49
  lineBreakStrategyIOS: true,
@@ -53,9 +52,6 @@ const textViewConfig = {
53
52
  topTextLayout: {
54
53
  registrationName: 'onTextLayout',
55
54
  },
56
- topInlineViewLayout: {
57
- registrationName: 'onInlineViewLayout',
58
- },
59
55
  },
60
56
  uiViewClassName: 'RCTText',
61
57
  };
@@ -44,7 +44,6 @@ const textViewConfig = {
44
44
  minimumFontScale: true,
45
45
  textBreakStrategy: true,
46
46
  onTextLayout: true,
47
- onInlineViewLayout: true,
48
47
  dataDetectorType: true,
49
48
  android_hyphenationFrequency: true,
50
49
  lineBreakStrategyIOS: true,
@@ -87,9 +86,6 @@ const textViewConfig = {
87
86
  topTextLayout: {
88
87
  registrationName: 'onTextLayout',
89
88
  },
90
- topInlineViewLayout: {
91
- registrationName: 'onInlineViewLayout',
92
- },
93
89
  },
94
90
  uiViewClassName: 'RCTText',
95
91
  };
@@ -13,6 +13,7 @@
13
13
  import type {
14
14
  AccessibilityActionEvent,
15
15
  AccessibilityActionInfo,
16
+ AccessibilityProps,
16
17
  AccessibilityRole,
17
18
  AccessibilityState,
18
19
  Role,
@@ -24,7 +25,8 @@ import type {
24
25
  PointerEvent,
25
26
  TextLayoutEvent,
26
27
  } from '../Types/CoreEventTypes';
27
- import type {Node} from 'react';
28
+
29
+ import * as React from 'react';
28
30
 
29
31
  export type PressRetentionOffset = $ReadOnly<{
30
32
  top: number,
@@ -123,20 +125,7 @@ export type TextPropsAndroid = {
123
125
  };
124
126
 
125
127
  type TextBaseProps = $ReadOnly<{
126
- /**
127
- * Indicates whether the view is an accessibility element.
128
- *
129
- * See https://reactnative.dev/docs/text#accessible
130
- */
131
- accessible?: ?boolean,
132
- accessibilityActions?: ?$ReadOnlyArray<AccessibilityActionInfo>,
133
128
  onAccessibilityAction?: ?(event: AccessibilityActionEvent) => mixed,
134
- accessibilityHint?: ?Stringish,
135
- accessibilityLanguage?: ?Stringish,
136
- accessibilityLabel?: ?Stringish,
137
- accessibilityRole?: ?AccessibilityRole,
138
- accessibilityState?: ?AccessibilityState,
139
- 'aria-label'?: ?string,
140
129
 
141
130
  /**
142
131
  * Whether fonts should scale to respect Text Size accessibility settings.
@@ -151,25 +140,7 @@ type TextBaseProps = $ReadOnly<{
151
140
  *
152
141
  */
153
142
  android_hyphenationFrequency?: ?('normal' | 'none' | 'full'),
154
-
155
- /**
156
- * alias for accessibilityState
157
- *
158
- * see https://reactnative.dev/docs/accessibility#accessibilitystate
159
- */
160
- 'aria-busy'?: ?boolean,
161
- 'aria-checked'?: ?boolean | 'mixed',
162
- 'aria-disabled'?: ?boolean,
163
- 'aria-expanded'?: ?boolean,
164
- 'aria-selected'?: ?boolean,
165
-
166
- /**
167
- * Represents the nativeID of the associated label text. When the assistive technology focuses on the component with this props, the text is read aloud.
168
- * This prop is listed for cross-platform reasons and has no real effect on Android or iOS.
169
- */
170
- 'aria-labelledby'?: ?string,
171
-
172
- children?: ?Node,
143
+ children?: ?React.Node,
173
144
 
174
145
  /**
175
146
  * When `numberOfLines` is set, this prop defines how text will be
@@ -305,4 +276,5 @@ export type TextProps = $ReadOnly<{
305
276
  ...TextPropsIOS,
306
277
  ...TextPropsAndroid,
307
278
  ...TextBaseProps,
279
+ ...AccessibilityProps,
308
280
  }>;
@@ -13,6 +13,7 @@
13
13
  import type {
14
14
  AccessibilityActionEvent,
15
15
  AccessibilityActionInfo,
16
+ AccessibilityProps,
16
17
  AccessibilityRole,
17
18
  AccessibilityState,
18
19
  Role,
@@ -24,7 +25,8 @@ import type {
24
25
  PointerEvent,
25
26
  TextLayoutEvent,
26
27
  } from '../Types/CoreEventTypes';
27
- import type {Node} from 'react';
28
+
29
+ import * as React from 'react';
28
30
 
29
31
  export type PressRetentionOffset = $ReadOnly<{
30
32
  top: number,
@@ -123,20 +125,7 @@ export type TextPropsAndroid = {
123
125
  };
124
126
 
125
127
  type TextBaseProps = $ReadOnly<{
126
- /**
127
- * Indicates whether the view is an accessibility element.
128
- *
129
- * See https://reactnative.dev/docs/text#accessible
130
- */
131
- accessible?: ?boolean,
132
- accessibilityActions?: ?$ReadOnlyArray<AccessibilityActionInfo>,
133
128
  onAccessibilityAction?: ?(event: AccessibilityActionEvent) => mixed,
134
- accessibilityHint?: ?Stringish,
135
- accessibilityLanguage?: ?Stringish,
136
- accessibilityLabel?: ?Stringish,
137
- accessibilityRole?: ?AccessibilityRole,
138
- accessibilityState?: ?AccessibilityState,
139
- 'aria-label'?: ?string,
140
129
  accessibilityControls?: ?Stringish, // Win32
141
130
  accessibilityDescribedBy?: ?Stringish, // Win32
142
131
  accessibilityDescription?: ?Stringish, // Win32
@@ -158,16 +147,6 @@ type TextBaseProps = $ReadOnly<{
158
147
  */
159
148
  android_hyphenationFrequency?: ?('normal' | 'none' | 'full'),
160
149
 
161
- /**
162
- * alias for accessibilityState
163
- *
164
- * see https://reactnative.dev/docs/accessibility#accessibilitystate
165
- */
166
- 'aria-busy'?: ?boolean,
167
- 'aria-checked'?: ?boolean | 'mixed',
168
- 'aria-disabled'?: ?boolean,
169
- 'aria-expanded'?: ?boolean,
170
- 'aria-selected'?: ?boolean,
171
150
  'aria-multiselectable'?: ?boolean, // Win32
172
151
  'aria-required'?: ?boolean, // Win32
173
152
  'aria-controls'?: ?Stringish, // Win32
@@ -176,13 +155,8 @@ type TextBaseProps = $ReadOnly<{
176
155
  'aria-level'?: ?number, // Win32
177
156
  'aria-posinset'?: ?number, // Win32
178
157
  'aria-setsize'?: ?number, // Win32
179
- /**
180
- * Represents the nativeID of the associated label text. When the assistive technology focuses on the component with this props, the text is read aloud.
181
- * This prop is listed for cross-platform reasons and has no real effect on Android or iOS.
182
- */
183
- 'aria-labelledby'?: ?string,
184
158
 
185
- children?: ?Node,
159
+ children?: ?React.Node,
186
160
 
187
161
  /**
188
162
  * When `numberOfLines` is set, this prop defines how text will be
@@ -318,4 +292,5 @@ export type TextProps = $ReadOnly<{
318
292
  ...TextPropsIOS,
319
293
  ...TextPropsAndroid,
320
294
  ...TextBaseProps,
295
+ ...AccessibilityProps,
321
296
  }>;
@@ -0,0 +1,45 @@
1
+ /**
2
+ * Copyright (c) Meta Platforms, Inc. and affiliates.
3
+ *
4
+ * This source code is licensed under the MIT license found in the
5
+ * LICENSE file in the root directory of this source tree.
6
+ *
7
+ * @format
8
+ */
9
+
10
+ import type {NativeSyntheticEvent} from 'react-native';
11
+ import type {EventSubscription} from 'react-native/Libraries/vendor/emitter/EventEmitter';
12
+
13
+ // Event types
14
+ // We're not using the PaperName, it is only used to codegen view config settings
15
+
16
+ export type BubblingEventHandler<
17
+ T,
18
+ PaperName extends string | never = never,
19
+ > = (event: NativeSyntheticEvent<T>) => void | Promise<void>;
20
+ export type DirectEventHandler<T, PaperName extends string | never = never> = (
21
+ event: NativeSyntheticEvent<T>,
22
+ ) => void | Promise<void>;
23
+
24
+ // Prop types
25
+ export type Double = number;
26
+ export type Float = number;
27
+ export type Int32 = number;
28
+ export type UnsafeObject = object;
29
+ export type UnsafeMixed = unknown;
30
+
31
+ type DefaultTypes = number | boolean | string | ReadonlyArray<string>;
32
+ // Default handling, ignore the unused value
33
+ // we're only using it for type checking
34
+ //
35
+ // TODO: (rickhanlonii) T44881457 If a default is provided, it should always be optional
36
+ // but that is currently not supported in the codegen since we require a default
37
+
38
+ export type WithDefault<
39
+ Type extends DefaultTypes,
40
+ Value extends Type | string | undefined | null,
41
+ > = Type | undefined | null;
42
+
43
+ export type EventEmitter<T> = (
44
+ handler: (arg: T) => void | Promise<void>,
45
+ ) => EventSubscription;
@@ -4,13 +4,11 @@
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 strict
8
7
  * @format
8
+ * @flow strict
9
9
  */
10
10
 
11
- const BlobModule = {
12
- createFromParts() {},
13
- release() {},
14
- };
11
+ // This module exists to fit CodegenTypes into a namespace under Flow
15
12
 
16
- module.exports = BlobModule;
13
+ import * as CodegenTypes from './CodegenTypes';
14
+ export type {CodegenTypes};
@@ -33,12 +33,17 @@ interface TextLayoutLine {
33
33
  }
34
34
 
35
35
  /**
36
- * @see TextProps.onTextLayout
36
+ * @deprecated Use `TextLayoutEvent` instead.
37
37
  */
38
38
  export interface TextLayoutEventData extends TargetedEvent {
39
39
  lines: TextLayoutLine[];
40
40
  }
41
41
 
42
+ /**
43
+ * @see TextProps.onTextLayout
44
+ */
45
+ export type TextLayoutEvent = NativeSyntheticEvent<TextLayoutEventData>;
46
+
42
47
  // Similar to React.SyntheticEvent except for nativeEvent
43
48
  export interface NativeSyntheticEvent<T>
44
49
  extends React.BaseSyntheticEvent<T, HostInstance, HostInstance> {}
@@ -76,7 +76,7 @@ export type LayoutChangeEvent = NativeSyntheticEvent<
76
76
  }>,
77
77
  >;
78
78
 
79
- export type TextLayoutEventData = $ReadOnly<{
79
+ type TextLayoutEventData = $ReadOnly<{
80
80
  lines: Array<TextLayoutLine>,
81
81
  }>;
82
82
 
@@ -76,7 +76,7 @@ export type LayoutChangeEvent = NativeSyntheticEvent<
76
76
  }>,
77
77
  >;
78
78
 
79
- export type TextLayoutEventData = $ReadOnly<{
79
+ type TextLayoutEventData = $ReadOnly<{
80
80
  lines: Array<TextLayoutLine>,
81
81
  }>;
82
82
 
@@ -16,6 +16,8 @@ import NativeEventEmitter from '../EventEmitter/NativeEventEmitter';
16
16
  import EventEmitter from '../vendor/emitter/EventEmitter';
17
17
  import invariant from 'invariant';
18
18
 
19
+ export type {AppearancePreferences};
20
+
19
21
  type Appearance = {
20
22
  colorScheme: ?ColorSchemeName,
21
23
  };
@@ -0,0 +1,17 @@
1
+ /**
2
+ * Copyright (c) Meta Platforms, Inc. and affiliates.
3
+ *
4
+ * This source code is licensed under the MIT license found in the
5
+ * LICENSE file in the root directory of this source tree.
6
+ *
7
+ * @flow strict-local
8
+ * @format
9
+ */
10
+
11
+ // NOTE: This file supports backwards compatibility of subpath (deep) imports
12
+ // from 'react-native' with platform-specific extensions. It can be deleted
13
+ // once we remove the "./*" mapping from package.json "exports".
14
+
15
+ import BackHandler from './BackHandler';
16
+
17
+ export default BackHandler;
@@ -8,6 +8,8 @@
8
8
  * @flow strict-local
9
9
  */
10
10
 
11
+ export type {DeviceInfoConstants} from './NativeDeviceInfo';
12
+
11
13
  import NativeDeviceInfo from './NativeDeviceInfo';
12
14
 
13
15
  export default NativeDeviceInfo;
@@ -19,7 +19,7 @@ import NativeDeviceInfo, {
19
19
  } from './NativeDeviceInfo';
20
20
  import invariant from 'invariant';
21
21
 
22
- export type {DisplayMetrics, DisplayMetricsAndroid};
22
+ export type {DimensionsPayload, DisplayMetrics, DisplayMetricsAndroid};
23
23
 
24
24
  /** @deprecated Use DisplayMetrics */
25
25
  export type ScaledSize = DisplayMetrics;
@@ -17,7 +17,7 @@ import NativeDeviceInfo, {
17
17
  } from './NativeDeviceInfo';
18
18
  import invariant from 'invariant';
19
19
 
20
- export type {DisplayMetrics, DisplayMetricsAndroid};
20
+ export type {DimensionsPayload, DisplayMetrics, DisplayMetricsAndroid};
21
21
 
22
22
  /** @deprecated Use DisplayMetrics */
23
23
  export type ScaledSize = DisplayMetrics;
@@ -0,0 +1,17 @@
1
+ /**
2
+ * Copyright (c) Meta Platforms, Inc. and affiliates.
3
+ *
4
+ * This source code is licensed under the MIT license found in the
5
+ * LICENSE file in the root directory of this source tree.
6
+ *
7
+ * @format
8
+ * @flow strict
9
+ */
10
+
11
+ // NOTE: This file supports backwards compatibility of subpath (deep) imports
12
+ // from 'react-native' with platform-specific extensions. It can be deleted
13
+ // once we remove the "./*" mapping from package.json "exports".
14
+
15
+ import Platform from './Platform';
16
+
17
+ export default Platform;
@@ -17,11 +17,17 @@ export type PlatformOSType =
17
17
  | 'web'
18
18
  | 'native';
19
19
 
20
- export type PlatformSelectSpec<T> = {
21
- default?: T,
22
- [PlatformOSType]: T,
20
+ type OptionalPlatformSelectSpec<T> = {
21
+ [_key in PlatformOSType]?: T,
23
22
  };
24
23
 
24
+ export type PlatformSelectSpec<T> =
25
+ | {
26
+ ...OptionalPlatformSelectSpec<T>,
27
+ default: T,
28
+ }
29
+ | OptionalPlatformSelectSpec<T>;
30
+
25
31
  type IOSPlatform = {
26
32
  __constants: null,
27
33
  OS: 'ios',
@@ -190,6 +196,8 @@ type Win32Platform = {
190
196
  type WebPlatform = {
191
197
  OS: 'web',
192
198
  // $FlowFixMe[unsafe-getters-setters]
199
+ get Version(): void,
200
+ // $FlowFixMe[unsafe-getters-setters]
193
201
  get constants(): {
194
202
  reactNativeVersion: {
195
203
  major: number,
@@ -13,7 +13,7 @@
13
13
  import type {ReactTestRenderer as ReactTestRendererType} from 'react-test-renderer';
14
14
 
15
15
  import TouchableWithoutFeedback from '../Components/Touchable/TouchableWithoutFeedback';
16
- import React from 'react';
16
+ import * as React from 'react';
17
17
  import ReactTestRenderer from 'react-test-renderer';
18
18
 
19
19
  const Switch = require('../Components/Switch/Switch').default;
@@ -22,7 +22,7 @@ const View = require('../Components/View/View').default;
22
22
  const Text = require('../Text/Text').default;
23
23
  const {VirtualizedList} = require('@react-native/virtualized-lists').default;
24
24
 
25
- export type ReactTestInstance = $PropertyType<ReactTestRendererType, 'root'>;
25
+ export type ReactTestInstance = ReactTestRendererType['root'];
26
26
  export type Predicate = (node: ReactTestInstance) => boolean;
27
27
  /* $FlowFixMe[value-as-type] (>=0.125.1 site=react_native_fb) This comment
28
28
  * suppresses an error found when Flow v0.125.1 was deployed. To see the error,
@@ -0,0 +1,18 @@
1
+ /**
2
+ * Copyright (c) Meta Platforms, Inc. and affiliates.
3
+ *
4
+ * This source code is licensed under the MIT license found in the
5
+ * LICENSE file in the root directory of this source tree.
6
+ *
7
+ * @format
8
+ */
9
+
10
+ interface Options<T extends string> {
11
+ readonly supportedCommands: ReadonlyArray<T>;
12
+ }
13
+
14
+ declare function codegenNativeCommands<T extends object>(
15
+ options: Options<keyof T extends string ? keyof T : never>,
16
+ ): T;
17
+
18
+ export default codegenNativeCommands;
@@ -0,0 +1,26 @@
1
+ /**
2
+ * Copyright (c) Meta Platforms, Inc. and affiliates.
3
+ *
4
+ * This source code is licensed under the MIT license found in the
5
+ * LICENSE file in the root directory of this source tree.
6
+ *
7
+ * @format
8
+ */
9
+
10
+ import type {HostComponent} from 'react-native';
11
+
12
+ interface Options {
13
+ readonly interfaceOnly?: boolean | undefined;
14
+ readonly paperComponentName?: string | undefined;
15
+ readonly paperComponentNameDeprecated?: string | undefined;
16
+ readonly excludedPlatforms?: ReadonlyArray<'iOS' | 'android'> | undefined;
17
+ }
18
+
19
+ type NativeComponentType<T> = HostComponent<T>;
20
+
21
+ declare function codegenNativeComponent<Props extends object>(
22
+ componentName: string,
23
+ options?: Options,
24
+ ): NativeComponentType<Props>;
25
+
26
+ export default codegenNativeComponent;