Skip to content

Commit 38dcae4

Browse files
rubennortemeta-codesync[bot]
authored andcommitted
Remove unused bindings from the React private interface (#58455)
Summary: Pull Request resolved: #58455 `react-native/react-private-interface` still exposed a number of values that no version of the renderer reads anymore. Checking every binding against the whole of `Libraries/Renderer` (the Fabric bundles and the shims) shows that `ExceptionsManager`, `Platform`, `RCTEventEmitter`, `TextInputState`, `deepDiffer`, `flattenStyle`, `legacySendAccessibilityEvent` and `CustomEvent` have no reference left — most of them were only ever needed by the legacy renderer bundles, which no longer exist. Remove those getters, along with the `import typeof` declarations that became unused (including the `DangerouslyImpreciseStyleProp` type that only `flattenStyle` needed) and the two `TODO` comments attached to `deepDiffer` and `flattenStyle`. The modules themselves are untouched and stay reachable through their normal entry points. `react-private-interface.js.flow` is updated to match. Changelog: [Internal] Reviewed By: christophpurrer Differential Revision: D119500025
1 parent fc121f0 commit 38dcae4

2 files changed

Lines changed: 0 additions & 46 deletions

File tree

packages/react-native/src/react-private-interface.js

Lines changed: 0 additions & 38 deletions
Original file line numberDiff line numberDiff line change
@@ -21,12 +21,8 @@
2121
// ----------------------------------------------------------------------------
2222

2323
import typeof BatchedBridge from '../Libraries/BatchedBridge/BatchedBridge';
24-
import typeof legacySendAccessibilityEvent from '../Libraries/Components/AccessibilityInfo/legacySendAccessibilityEvent';
25-
import typeof TextInputState from '../Libraries/Components/TextInput/TextInputState';
26-
import typeof ExceptionsManager from '../Libraries/Core/ExceptionsManager';
2724
import typeof RawEventEmitter from '../Libraries/Core/RawEventEmitter';
2825
import typeof ReactFiberErrorDialog from '../Libraries/Core/ReactFiberErrorDialog';
29-
import typeof RCTEventEmitter from '../Libraries/EventEmitter/RCTEventEmitter';
3026
import type {Spec as FabricUIManager} from '../Libraries/ReactNative/FabricUIManager';
3127
import typeof {
3228
createPublicInstance,
@@ -41,14 +37,9 @@ import typeof {
4137
diff as diffAttributePayloads,
4238
} from '../Libraries/ReactNative/ReactFabricPublicInstance/ReactNativeAttributePayload';
4339
import typeof * as ReactNativeViewConfigRegistry from '../Libraries/Renderer/shims/ReactNativeViewConfigRegistry';
44-
import typeof flattenStyle from '../Libraries/StyleSheet/flattenStyle';
45-
import type {DangerouslyImpreciseStyleProp} from '../Libraries/StyleSheet/StyleSheet';
4640
import typeof deepFreezeAndThrowOnMutationInDev from '../Libraries/Utilities/deepFreezeAndThrowOnMutationInDev';
47-
import typeof deepDiffer from '../Libraries/Utilities/differ/deepDiffer';
48-
import typeof Platform from '../Libraries/Utilities/Platform';
4941
import typeof * as ReactNativeFeatureFlags from './private/featureflags/ReactNativeFeatureFlags';
5042
import typeof dispatchNativeEvent from './private/renderer/events/dispatchNativeEvent';
51-
import typeof CustomEvent from './private/webapis/dom/events/CustomEvent';
5243

5344
export type {PublicRootInstance} from '../Libraries/ReactNative/ReactFabricPublicInstance/ReactFabricPublicInstance';
5445
export type PublicTextInstance = ReturnType<createPublicTextInstance>;
@@ -59,56 +50,27 @@ module.exports = {
5950
get BatchedBridge(): BatchedBridge {
6051
return require('../Libraries/BatchedBridge/BatchedBridge').default;
6152
},
62-
get ExceptionsManager(): ExceptionsManager {
63-
return require('../Libraries/Core/ExceptionsManager').default;
64-
},
65-
get Platform(): Platform {
66-
return require('../Libraries/Utilities/Platform').default;
67-
},
68-
get RCTEventEmitter(): RCTEventEmitter {
69-
return require('../Libraries/EventEmitter/RCTEventEmitter').default;
70-
},
7153
get ReactNativeFeatureFlags(): ReactNativeFeatureFlags {
7254
return require('./private/featureflags/ReactNativeFeatureFlags');
7355
},
7456
get ReactNativeViewConfigRegistry(): ReactNativeViewConfigRegistry {
7557
return require('../Libraries/Renderer/shims/ReactNativeViewConfigRegistry');
7658
},
77-
get TextInputState(): TextInputState {
78-
return require('../Libraries/Components/TextInput/TextInputState').default;
79-
},
8059
get fabricUIManager(): ?FabricUIManager {
8160
return require('../Libraries/ReactNative/FabricUIManager').getFabricUIManager();
8261
},
83-
// TODO: Remove when React has migrated to `createAttributePayload` and `diffAttributePayloads`
84-
get deepDiffer(): deepDiffer {
85-
return require('../Libraries/Utilities/differ/deepDiffer').default;
86-
},
8762
get deepFreezeAndThrowOnMutationInDev(): deepFreezeAndThrowOnMutationInDev<
8863
{...} | Array<unknown>,
8964
> {
9065
return require('../Libraries/Utilities/deepFreezeAndThrowOnMutationInDev')
9166
.default;
9267
},
93-
// TODO: Remove when React has migrated to `createAttributePayload` and `diffAttributePayloads`
94-
get flattenStyle(): flattenStyle<DangerouslyImpreciseStyleProp> {
95-
// $FlowFixMe[underconstrained-implicit-instantiation]
96-
// $FlowFixMe[incompatible-type]
97-
return require('../Libraries/StyleSheet/flattenStyle').default;
98-
},
9968
get ReactFiberErrorDialog(): ReactFiberErrorDialog {
10069
return require('../Libraries/Core/ReactFiberErrorDialog').default;
10170
},
102-
get legacySendAccessibilityEvent(): legacySendAccessibilityEvent {
103-
return require('../Libraries/Components/AccessibilityInfo/legacySendAccessibilityEvent')
104-
.default;
105-
},
10671
get RawEventEmitter(): RawEventEmitter {
10772
return require('../Libraries/Core/RawEventEmitter').default;
10873
},
109-
get CustomEvent(): CustomEvent {
110-
return require('./private/webapis/dom/events/CustomEvent').default;
111-
},
11274
get createAttributePayload(): createAttributePayload {
11375
return require('../Libraries/ReactNative/ReactFabricPublicInstance/ReactNativeAttributePayload')
11476
.create;

packages/react-native/src/react-private-interface.js.flow

Lines changed: 0 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -21,20 +21,12 @@ export type {PublicRootInstance} from '../Libraries/ReactNative/ReactFabricPubli
2121
export type PublicTextInstance = ReturnType<createPublicTextInstanceT>;
2222

2323
export {default as BatchedBridge} from '../Libraries/BatchedBridge/BatchedBridge';
24-
export {default as ExceptionsManager} from '../Libraries/Core/ExceptionsManager';
25-
export {default as Platform} from '../Libraries/Utilities/Platform';
26-
export {default as RCTEventEmitter} from '../Libraries/EventEmitter/RCTEventEmitter';
2724
export * as ReactNativeFeatureFlags from './private/featureflags/ReactNativeFeatureFlags';
2825
export * as ReactNativeViewConfigRegistry from '../Libraries/Renderer/shims/ReactNativeViewConfigRegistry';
29-
export {default as TextInputState} from '../Libraries/Components/TextInput/TextInputState';
3026
declare export const fabricUIManager: ?FabricUIManager;
31-
export {default as deepDiffer} from '../Libraries/Utilities/differ/deepDiffer';
3227
export {default as deepFreezeAndThrowOnMutationInDev} from '../Libraries/Utilities/deepFreezeAndThrowOnMutationInDev';
33-
export {default as flattenStyle} from '../Libraries/StyleSheet/flattenStyle';
3428
export {default as ReactFiberErrorDialog} from '../Libraries/Core/ReactFiberErrorDialog';
35-
export {default as legacySendAccessibilityEvent} from '../Libraries/Components/AccessibilityInfo/legacySendAccessibilityEvent';
3629
export {default as RawEventEmitter} from '../Libraries/Core/RawEventEmitter';
37-
export {default as CustomEvent} from './private/webapis/dom/events/CustomEvent';
3830
export {
3931
create as createAttributePayload,
4032
diff as diffAttributePayloads,

0 commit comments

Comments
 (0)