Align organisation of index exports (#49975)

Summary:
Pull Request resolved: https://github.com/facebook/react-native/pull/49975

Removes the "Plugins" category from the non-structural grouping of exports in `index.js`, `index.js.flow`, aligning these with the "APIs" and "Components" categories in our docs.

Changelog: [Internal]

Reviewed By: rubennorte

Differential Revision: D71033295

fbshipit-source-id: bd39bb6ff5e30c1ed0a8d56d1ed61d52120fb776
This commit is contained in:
Alex Hunt
2025-03-13 06:53:17 -07:00
committed by Facebook GitHub Bot
parent e4721332a8
commit bf35a00ba2
3 changed files with 82 additions and 91 deletions
@@ -9292,19 +9292,15 @@ declare export default class EventEmitter<
`;
exports[`public API should not change unintentionally index.js.flow 1`] = `
"export type { HostInstance } from \\"./src/private/types/HostInstance\\";
export type { HostComponent } from \\"./src/private/types/HostComponent\\";
export { default as registerCallableModule } from \\"./Libraries/Core/registerCallableModule\\";
export { default as AccessibilityInfo } from \\"./Libraries/Components/AccessibilityInfo/AccessibilityInfo\\";
export { default as ActivityIndicator } from \\"./Libraries/Components/ActivityIndicator/ActivityIndicator\\";
"export { default as ActivityIndicator } from \\"./Libraries/Components/ActivityIndicator/ActivityIndicator\\";
export { default as Button } from \\"./Libraries/Components/Button\\";
export { default as DrawerLayoutAndroid } from \\"./Libraries/Components/DrawerAndroid/DrawerLayoutAndroid\\";
export { default as experimental_LayoutConformance } from \\"./Libraries/Components/LayoutConformance/LayoutConformance\\";
export { default as FlatList } from \\"./Libraries/Lists/FlatList\\";
export { default as Image } from \\"./Libraries/Image/Image\\";
export { default as ImageBackground } from \\"./Libraries/Image/ImageBackground\\";
export { default as InputAccessoryView } from \\"./Libraries/Components/TextInput/InputAccessoryView\\";
export { default as KeyboardAvoidingView } from \\"./Libraries/Components/Keyboard/KeyboardAvoidingView\\";
export { default as experimental_LayoutConformance } from \\"./Libraries/Components/LayoutConformance/LayoutConformance\\";
export { default as Modal } from \\"./Libraries/Modal/Modal\\";
export { default as Pressable } from \\"./Libraries/Components/Pressable/Pressable\\";
export { default as ProgressBarAndroid } from \\"./Libraries/Components/ProgressBarAndroid/ProgressBarAndroid\\";
@@ -9324,6 +9320,8 @@ export { default as TouchableWithoutFeedback } from \\"./Libraries/Components/To
export { default as View } from \\"./Libraries/Components/View/View\\";
export { default as VirtualizedList } from \\"./Libraries/Lists/VirtualizedList\\";
export { default as VirtualizedSectionList } from \\"./Libraries/Lists/VirtualizedSectionList\\";
export type * from \\"./Libraries/Types/CodegenTypesNamespace\\";
export { default as AccessibilityInfo } from \\"./Libraries/Components/AccessibilityInfo/AccessibilityInfo\\";
export { default as ActionSheetIOS } from \\"./Libraries/ActionSheetIOS/ActionSheetIOS\\";
export { default as Alert } from \\"./Libraries/Alert/Alert\\";
export { default as Animated } from \\"./Libraries/Animated/Animated\\";
@@ -9332,25 +9330,39 @@ export { AppRegistry } from \\"./Libraries/ReactNative/AppRegistry\\";
export { default as AppState } from \\"./Libraries/AppState/AppState\\";
export { default as BackHandler } from \\"./Libraries/Utilities/BackHandler\\";
export { default as Clipboard } from \\"./Libraries/Components/Clipboard/Clipboard\\";
export { default as codegenNativeComponent } from \\"./Libraries/Utilities/codegenNativeComponent\\";
export { default as codegenNativeCommands } from \\"./Libraries/Utilities/codegenNativeCommands\\";
export { default as DeviceEventEmitter } from \\"./Libraries/EventEmitter/RCTDeviceEventEmitter\\";
export { default as DeviceInfo } from \\"./Libraries/Utilities/DeviceInfo\\";
export { default as DevMenu } from \\"./src/private/devmenu/DevMenu\\";
export { default as DevSettings } from \\"./Libraries/Utilities/DevSettings\\";
export { default as Dimensions } from \\"./Libraries/Utilities/Dimensions\\";
export { DynamicColorIOS } from \\"./Libraries/StyleSheet/PlatformColorValueTypesIOS\\";
export { default as Easing } from \\"./Libraries/Animated/Easing\\";
export { findNodeHandle } from \\"./Libraries/ReactNative/RendererProxy\\";
export type { HostInstance } from \\"./src/private/types/HostInstance\\";
export type { HostComponent } from \\"./src/private/types/HostComponent\\";
export { default as I18nManager } from \\"./Libraries/ReactNative/I18nManager\\";
export { default as InteractionManager } from \\"./Libraries/Interaction/InteractionManager\\";
export { default as Keyboard } from \\"./Libraries/Components/Keyboard/Keyboard\\";
export { default as LayoutAnimation } from \\"./Libraries/LayoutAnimation/LayoutAnimation\\";
export { default as Linking } from \\"./Libraries/Linking/Linking\\";
export { default as LogBox } from \\"./Libraries/LogBox/LogBox\\";
export { default as NativeAppEventEmitter } from \\"./Libraries/EventEmitter/RCTNativeAppEventEmitter\\";
export { default as NativeDialogManagerAndroid } from \\"./Libraries/NativeModules/specs/NativeDialogManagerAndroid\\";
export { default as NativeEventEmitter } from \\"./Libraries/EventEmitter/NativeEventEmitter\\";
export { default as NativeModules } from \\"./Libraries/BatchedBridge/NativeModules\\";
export { default as Networking } from \\"./Libraries/Network/RCTNetworking\\";
export { default as PanResponder } from \\"./Libraries/Interaction/PanResponder\\";
export { default as PermissionsAndroid } from \\"./Libraries/PermissionsAndroid/PermissionsAndroid\\";
export { default as PixelRatio } from \\"./Libraries/Utilities/PixelRatio\\";
export { default as Platform } from \\"./Libraries/Utilities/Platform\\";
export { PlatformColor } from \\"./Libraries/StyleSheet/PlatformColorValueTypes\\";
export { default as PushNotificationIOS } from \\"./Libraries/PushNotificationIOS/PushNotificationIOS\\";
export { default as processColor } from \\"./Libraries/StyleSheet/processColor\\";
export { default as registerCallableModule } from \\"./Libraries/Core/registerCallableModule\\";
export { default as requireNativeComponent } from \\"./Libraries/ReactNative/requireNativeComponent\\";
export { RootTagContext } from \\"./Libraries/ReactNative/RootTag\\";
export { default as Settings } from \\"./Libraries/Settings/Settings\\";
export { default as Share } from \\"./Libraries/Share/Share\\";
export { default as StyleSheet } from \\"./Libraries/StyleSheet/StyleSheet\\";
@@ -9364,18 +9376,6 @@ export { default as useColorScheme } from \\"./Libraries/Utilities/useColorSchem
export { default as useWindowDimensions } from \\"./Libraries/Utilities/useWindowDimensions\\";
export { default as UTFSequence } from \\"./Libraries/UTFSequence\\";
export { default as Vibration } from \\"./Libraries/Vibration/Vibration\\";
export type * from \\"./Libraries/Types/CodegenTypesNamespace\\";
export { default as codegenNativeComponent } from \\"./Libraries/Utilities/codegenNativeComponent\\";
export { default as codegenNativeCommands } from \\"./Libraries/Utilities/codegenNativeCommands\\";
export { default as DeviceEventEmitter } from \\"./Libraries/EventEmitter/RCTDeviceEventEmitter\\";
export { DynamicColorIOS } from \\"./Libraries/StyleSheet/PlatformColorValueTypesIOS\\";
export { default as NativeAppEventEmitter } from \\"./Libraries/EventEmitter/RCTNativeAppEventEmitter\\";
export { default as NativeModules } from \\"./Libraries/BatchedBridge/NativeModules\\";
export { default as Platform } from \\"./Libraries/Utilities/Platform\\";
export { PlatformColor } from \\"./Libraries/StyleSheet/PlatformColorValueTypes\\";
export { default as processColor } from \\"./Libraries/StyleSheet/processColor\\";
export { default as requireNativeComponent } from \\"./Libraries/ReactNative/requireNativeComponent\\";
export { RootTagContext } from \\"./Libraries/ReactNative/RootTag\\";
"
`;
+46 -48
View File
@@ -31,14 +31,7 @@ const warnOnce = require('./Libraries/Utilities/warnOnce').default;
const invariant = require('invariant');
module.exports = {
get registerCallableModule() {
return require('./Libraries/Core/registerCallableModule').default;
},
// #region Components
get AccessibilityInfo() {
return require('./Libraries/Components/AccessibilityInfo/AccessibilityInfo')
.default;
},
get ActivityIndicator() {
return require('./Libraries/Components/ActivityIndicator/ActivityIndicator')
.default;
@@ -63,14 +56,14 @@ module.exports = {
return require('./Libraries/Components/TextInput/InputAccessoryView')
.default;
},
get experimental_LayoutConformance() {
return require('./Libraries/Components/LayoutConformance/LayoutConformance')
.default;
},
get KeyboardAvoidingView() {
return require('./Libraries/Components/Keyboard/KeyboardAvoidingView')
.default;
},
get experimental_LayoutConformance() {
return require('./Libraries/Components/LayoutConformance/LayoutConformance')
.default;
},
get Modal() {
return require('./Libraries/Modal/Modal').default;
},
@@ -141,6 +134,10 @@ module.exports = {
},
// #endregion
// #region APIs
get AccessibilityInfo() {
return require('./Libraries/Components/AccessibilityInfo/AccessibilityInfo')
.default;
},
get ActionSheetIOS() {
return require('./Libraries/ActionSheetIOS/ActionSheetIOS').default;
},
@@ -173,6 +170,15 @@ module.exports = {
);
return require('./Libraries/Components/Clipboard/Clipboard').default;
},
get codegenNativeCommands() {
return require('./Libraries/Utilities/codegenNativeCommands').default;
},
get codegenNativeComponent() {
return require('./Libraries/Utilities/codegenNativeComponent').default;
},
get DeviceEventEmitter() {
return require('./Libraries/EventEmitter/RCTDeviceEventEmitter').default;
},
get DeviceInfo() {
return require('./Libraries/Utilities/DeviceInfo').default;
},
@@ -185,6 +191,10 @@ module.exports = {
get Dimensions() {
return require('./Libraries/Utilities/Dimensions').default;
},
get DynamicColorIOS() {
return require('./Libraries/StyleSheet/PlatformColorValueTypesIOS')
.DynamicColorIOS;
},
get Easing() {
return require('./Libraries/Animated/Easing').default;
},
@@ -209,6 +219,9 @@ module.exports = {
get LogBox() {
return require('./Libraries/LogBox/LogBox').default;
},
get NativeAppEventEmitter() {
return require('./Libraries/EventEmitter/RCTNativeAppEventEmitter').default;
},
get NativeDialogManagerAndroid() {
return require('./Libraries/NativeModules/specs/NativeDialogManagerAndroid')
.default;
@@ -216,6 +229,9 @@ module.exports = {
get NativeEventEmitter() {
return require('./Libraries/EventEmitter/NativeEventEmitter').default;
},
get NativeModules() {
return require('./Libraries/BatchedBridge/NativeModules').default;
},
get Networking() {
return require('./Libraries/Network/RCTNetworking').default;
},
@@ -228,6 +244,13 @@ module.exports = {
get PixelRatio() {
return require('./Libraries/Utilities/PixelRatio').default;
},
get Platform() {
return require('./Libraries/Utilities/Platform').default;
},
get PlatformColor() {
return require('./Libraries/StyleSheet/PlatformColorValueTypes')
.PlatformColor;
},
get PushNotificationIOS() {
warnOnce(
'pushNotificationIOS-moved',
@@ -238,6 +261,18 @@ module.exports = {
return require('./Libraries/PushNotificationIOS/PushNotificationIOS')
.default;
},
get processColor() {
return require('./Libraries/StyleSheet/processColor').default;
},
get registerCallableModule() {
return require('./Libraries/Core/registerCallableModule').default;
},
get requireNativeComponent() {
return require('./Libraries/ReactNative/requireNativeComponent').default;
},
get RootTagContext() {
return require('./Libraries/ReactNative/RootTag').RootTagContext;
},
get Settings() {
return require('./Libraries/Settings/Settings').default;
},
@@ -279,43 +314,6 @@ module.exports = {
return require('./Libraries/Vibration/Vibration').default;
},
// #endregion
// #region Plugins
get codegenNativeCommands() {
return require('./Libraries/Utilities/codegenNativeCommands').default;
},
get codegenNativeComponent() {
return require('./Libraries/Utilities/codegenNativeComponent').default;
},
get DeviceEventEmitter() {
return require('./Libraries/EventEmitter/RCTDeviceEventEmitter').default;
},
get DynamicColorIOS() {
return require('./Libraries/StyleSheet/PlatformColorValueTypesIOS')
.DynamicColorIOS;
},
get NativeAppEventEmitter() {
return require('./Libraries/EventEmitter/RCTNativeAppEventEmitter').default;
},
get NativeModules() {
return require('./Libraries/BatchedBridge/NativeModules').default;
},
get Platform() {
return require('./Libraries/Utilities/Platform').default;
},
get PlatformColor() {
return require('./Libraries/StyleSheet/PlatformColorValueTypes')
.PlatformColor;
},
get processColor() {
return require('./Libraries/StyleSheet/processColor').default;
},
get requireNativeComponent() {
return require('./Libraries/ReactNative/requireNativeComponent').default;
},
get RootTagContext() {
return require('./Libraries/ReactNative/RootTag').RootTagContext;
},
// #endregion
} as ReactNativePublicAPI;
if (__DEV__) {
+18 -25
View File
@@ -15,26 +15,19 @@
// updating React Native's public API.
// ----------------------------------------------------------------------------
// TODO(T215317597): Reconsider the pre-existing grouping of these APIs
export type {HostInstance} from './src/private/types/HostInstance';
export type {HostComponent} from './src/private/types/HostComponent';
export {default as registerCallableModule} from './Libraries/Core/registerCallableModule';
/// <reference path="src/types/globals.d.ts" />
// #region Components
export {default as AccessibilityInfo} from './Libraries/Components/AccessibilityInfo/AccessibilityInfo';
export {default as ActivityIndicator} from './Libraries/Components/ActivityIndicator/ActivityIndicator';
export {default as Button} from './Libraries/Components/Button';
export {default as DrawerLayoutAndroid} from './Libraries/Components/DrawerAndroid/DrawerLayoutAndroid';
export {default as experimental_LayoutConformance} from './Libraries/Components/LayoutConformance/LayoutConformance';
export {default as FlatList} from './Libraries/Lists/FlatList';
export {default as Image} from './Libraries/Image/Image';
export {default as ImageBackground} from './Libraries/Image/ImageBackground';
export {default as InputAccessoryView} from './Libraries/Components/TextInput/InputAccessoryView';
export {default as KeyboardAvoidingView} from './Libraries/Components/Keyboard/KeyboardAvoidingView';
export {default as experimental_LayoutConformance} from './Libraries/Components/LayoutConformance/LayoutConformance';
export {default as Modal} from './Libraries/Modal/Modal';
export {default as Pressable} from './Libraries/Components/Pressable/Pressable';
export {default as ProgressBarAndroid} from './Libraries/Components/ProgressBarAndroid/ProgressBarAndroid';
@@ -58,6 +51,9 @@ export {default as VirtualizedSectionList} from './Libraries/Lists/VirtualizedSe
// #endregion
// #region APIs
export type * from './Libraries/Types/CodegenTypesNamespace';
export {default as AccessibilityInfo} from './Libraries/Components/AccessibilityInfo/AccessibilityInfo';
export {default as ActionSheetIOS} from './Libraries/ActionSheetIOS/ActionSheetIOS';
export {default as Alert} from './Libraries/Alert/Alert';
export {default as Animated} from './Libraries/Animated/Animated';
@@ -66,25 +62,39 @@ export {AppRegistry} from './Libraries/ReactNative/AppRegistry';
export {default as AppState} from './Libraries/AppState/AppState';
export {default as BackHandler} from './Libraries/Utilities/BackHandler';
export {default as Clipboard} from './Libraries/Components/Clipboard/Clipboard';
export {default as codegenNativeComponent} from './Libraries/Utilities/codegenNativeComponent';
export {default as codegenNativeCommands} from './Libraries/Utilities/codegenNativeCommands';
export {default as DeviceEventEmitter} from './Libraries/EventEmitter/RCTDeviceEventEmitter';
export {default as DeviceInfo} from './Libraries/Utilities/DeviceInfo';
export {default as DevMenu} from './src/private/devmenu/DevMenu';
export {default as DevSettings} from './Libraries/Utilities/DevSettings';
export {default as Dimensions} from './Libraries/Utilities/Dimensions';
export {DynamicColorIOS} from './Libraries/StyleSheet/PlatformColorValueTypesIOS';
export {default as Easing} from './Libraries/Animated/Easing';
export {findNodeHandle} from './Libraries/ReactNative/RendererProxy';
export type {HostInstance} from './src/private/types/HostInstance';
export type {HostComponent} from './src/private/types/HostComponent';
export {default as I18nManager} from './Libraries/ReactNative/I18nManager';
export {default as InteractionManager} from './Libraries/Interaction/InteractionManager';
export {default as Keyboard} from './Libraries/Components/Keyboard/Keyboard';
export {default as LayoutAnimation} from './Libraries/LayoutAnimation/LayoutAnimation';
export {default as Linking} from './Libraries/Linking/Linking';
export {default as LogBox} from './Libraries/LogBox/LogBox';
export {default as NativeAppEventEmitter} from './Libraries/EventEmitter/RCTNativeAppEventEmitter';
export {default as NativeDialogManagerAndroid} from './Libraries/NativeModules/specs/NativeDialogManagerAndroid';
export {default as NativeEventEmitter} from './Libraries/EventEmitter/NativeEventEmitter';
export {default as NativeModules} from './Libraries/BatchedBridge/NativeModules';
export {default as Networking} from './Libraries/Network/RCTNetworking';
export {default as PanResponder} from './Libraries/Interaction/PanResponder';
export {default as PermissionsAndroid} from './Libraries/PermissionsAndroid/PermissionsAndroid';
export {default as PixelRatio} from './Libraries/Utilities/PixelRatio';
export {default as Platform} from './Libraries/Utilities/Platform';
export {PlatformColor} from './Libraries/StyleSheet/PlatformColorValueTypes';
export {default as PushNotificationIOS} from './Libraries/PushNotificationIOS/PushNotificationIOS';
export {default as processColor} from './Libraries/StyleSheet/processColor';
export {default as registerCallableModule} from './Libraries/Core/registerCallableModule';
export {default as requireNativeComponent} from './Libraries/ReactNative/requireNativeComponent';
export {RootTagContext} from './Libraries/ReactNative/RootTag';
export {default as Settings} from './Libraries/Settings/Settings';
export {default as Share} from './Libraries/Share/Share';
export {default as StyleSheet} from './Libraries/StyleSheet/StyleSheet';
@@ -100,20 +110,3 @@ export {default as UTFSequence} from './Libraries/UTFSequence';
export {default as Vibration} from './Libraries/Vibration/Vibration';
// #endregion
// #region Plugins
export type * from './Libraries/Types/CodegenTypesNamespace';
export {default as codegenNativeComponent} from './Libraries/Utilities/codegenNativeComponent';
export {default as codegenNativeCommands} from './Libraries/Utilities/codegenNativeCommands';
export {default as DeviceEventEmitter} from './Libraries/EventEmitter/RCTDeviceEventEmitter';
export {DynamicColorIOS} from './Libraries/StyleSheet/PlatformColorValueTypesIOS';
export {default as NativeAppEventEmitter} from './Libraries/EventEmitter/RCTNativeAppEventEmitter';
export {default as NativeModules} from './Libraries/BatchedBridge/NativeModules';
export {default as Platform} from './Libraries/Utilities/Platform';
export {PlatformColor} from './Libraries/StyleSheet/PlatformColorValueTypes';
export {default as processColor} from './Libraries/StyleSheet/processColor';
export {default as requireNativeComponent} from './Libraries/ReactNative/requireNativeComponent';
export {RootTagContext} from './Libraries/ReactNative/RootTag';
// #endregion