Skip to content

Commit 148865c

Browse files
Remove the native SafeAreaView and the deprecated public export
`SafeAreaView` has been deprecated for several releases in favour of `react-native-safe-area-context`, and the previous change moved the core surfaces that cannot use the library onto a JavaScript implementation built on the safe area insets prop. Nothing needs the native component now. Removed: the C++ shadow node, state and component descriptor, the iOS component view, the Android view and view manager, the codegen spec and every registration of them, plus the long-deprecated public export from `index.js`, the Flow and TypeScript surfaces, the deprecated type stubs, the Babel lazy import list and the ESLint import map. The private component drops its `_INTERNAL_DO_NOT_USE` suffix now that it is the only one left. This is a breaking change for anyone still importing `SafeAreaView` from `react-native`; the replacement is `react-native-safe-area-context`, or the `experimental_onSafeAreaInsetsChange` prop directly.
1 parent f2a8a05 commit 148865c

42 files changed

Lines changed: 2 additions & 840 deletions

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

‎packages/eslint-plugin-react-native/utils.js‎

Lines changed: 0 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -143,10 +143,6 @@ const publicAPIMapping = {
143143
'RefreshControlPropsIOS',
144144
],
145145
},
146-
'Libraries/Components/SafeAreaView/SafeAreaView': {
147-
default: 'SafeAreaView',
148-
types: ['SafeAreaViewInstance'],
149-
},
150146
'Libraries/Components/ScrollView/ScrollView': {
151147
default: 'ScrollView',
152148
types: [

‎packages/react-native-babel-preset/src/configs/lazy-imports.js‎

Lines changed: 0 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -29,7 +29,6 @@ module.exports = new Set([
2929
'Pressable',
3030
'ProgressBarAndroid',
3131
'ProgressViewIOS',
32-
'SafeAreaView',
3332
'ScrollView',
3433
'SectionList',
3534
'Slider',

‎packages/react-native/Libraries/Components/SafeAreaView/RCTSafeAreaViewNativeComponent.js‎

Lines changed: 0 additions & 12 deletions
This file was deleted.

‎packages/react-native/Libraries/Components/SafeAreaView/SafeAreaView.js‎

Lines changed: 0 additions & 35 deletions
This file was deleted.

‎packages/react-native/Package.swift‎

Lines changed: 1 addition & 10 deletions
Original file line numberDiff line numberDiff line change
@@ -490,7 +490,6 @@ let reactFabric = RNTarget(
490490
"components/inputaccessory",
491491
"components/modal",
492492
"components/rncore",
493-
"components/safeareaview",
494493
"components/switch",
495494
"components/text",
496495
"components/textinput",
@@ -528,12 +527,6 @@ let reactFabricSwitch = RNTarget(
528527
dependencies: [.reactNativeDependencies, .reactCore, .reactJsiExecutor, .reactTurboModuleCore, .jsi, .logger, .reactDebug, .reactFeatureFlags, .reactUtils, .reactRuntimeScheduler, .reactCxxReact, .yoga, .reactRendererDebug, .reactGraphics, .reactFabric, .reactTurboModuleBridging]
529528
)
530529

531-
let reactFabricSafeAreaView = RNTarget(
532-
name: .reactFabricSafeAreaView,
533-
path: "ReactCommon/react/renderer/components/safeareaview",
534-
dependencies: [.reactNativeDependencies, .reactCore, .reactJsiExecutor, .reactTurboModuleCore, .jsi, .logger, .reactDebug, .reactFeatureFlags, .reactUtils, .reactRuntimeScheduler, .reactCxxReact, .yoga, .reactRendererDebug, .reactGraphics, .reactFabric, .reactTurboModuleBridging]
535-
)
536-
537530
let reactFabricTextLayoutManager = RNTarget(
538531
name: .reactFabricTextLayoutManager,
539532
path: "ReactCommon/react/renderer/textlayoutmanager",
@@ -586,7 +579,7 @@ let reactRCTFabric = RNTarget(
586579
name: .reactRCTFabric,
587580
path: "React/Fabric",
588581
searchPaths: [virtualViewPath],
589-
dependencies: [.reactNativeDependencies, .reactCore, .reactRCTImage, .yoga, .reactRCTText, .jsi, .reactFabricInputAccessory, .reactFabricModal, .reactFabricSafeAreaView, .reactFabricSwitch, .reactFabricText, .reactFabricTextInput, .reactFabricUnimplementedView, .reactFabricTextLayoutManager, .reactGraphics, .reactImageManager, .reactDebug, .reactUtils, .reactPerformanceTimeline, .reactRendererDebug, .reactRendererConsistency, .reactRuntimeScheduler, .reactRCTAnimation, .reactJsInspector, .reactJsInspectorNetwork, .reactJsInspectorTracing, .reactFabric, .reactFabricImage, .rctSwiftUIWrapper]
582+
dependencies: [.reactNativeDependencies, .reactCore, .reactRCTImage, .yoga, .reactRCTText, .jsi, .reactFabricInputAccessory, .reactFabricModal, .reactFabricSwitch, .reactFabricText, .reactFabricTextInput, .reactFabricUnimplementedView, .reactFabricTextLayoutManager, .reactGraphics, .reactImageManager, .reactDebug, .reactUtils, .reactPerformanceTimeline, .reactRendererDebug, .reactRendererConsistency, .reactRuntimeScheduler, .reactRCTAnimation, .reactJsInspector, .reactJsInspectorNetwork, .reactJsInspectorTracing, .reactFabric, .reactFabricImage, .rctSwiftUIWrapper]
590583
)
591584

592585
/// React-ImageManagerApple.podspec
@@ -709,7 +702,6 @@ let targets = [
709702
reactFabricImage,
710703
reactFabricInputAccessory,
711704
reactFabricModal,
712-
reactFabricSafeAreaView,
713705
reactFabricSwitch,
714706
reactFabricTextLayoutManager,
715707
reactFabricText,
@@ -896,7 +888,6 @@ extension String {
896888
static let reactFabricImage = "React-FabricImage"
897889
static let reactFabricInputAccessory = "React-FabricInputAccessory"
898890
static let reactFabricModal = "React-FabricModal"
899-
static let reactFabricSafeAreaView = "React-FabricSafeAreaView"
900891
static let reactFabricSwitch = "React-FabricSwitch"
901892
static let reactFabricTextLayoutManager = "React-FabricTextLayoutManager"
902893
static let reactFabricText = "React-FabricText"

‎packages/react-native/React/Base/RCTBridge.mm‎

Lines changed: 0 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -55,7 +55,6 @@
5555
@"RCTDebuggingOverlayManager",
5656
@"RCTModalHostViewManager",
5757
@"RCTRefreshControlManager",
58-
@"RCTSafeAreaViewManager",
5958
@"RCTScrollContentViewManager",
6059
@"RCTScrollViewManager",
6160
@"RCTSwitchManager",

‎packages/react-native/React/Fabric/Mounting/ComponentViews/RCTFabricComponentsPlugins.h‎

Lines changed: 0 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -34,7 +34,6 @@ Class<RCTComponentViewProtocol> RCTDebuggingOverlayCls(void) __attribute__((used
3434
Class<RCTComponentViewProtocol> RCTInputAccessoryCls(void) __attribute__((used));
3535
Class<RCTComponentViewProtocol> RCTParagraphCls(void) __attribute__((used));
3636
Class<RCTComponentViewProtocol> RCTPullToRefreshViewCls(void) __attribute__((used));
37-
Class<RCTComponentViewProtocol> RCTSafeAreaViewCls(void) __attribute__((used));
3837
Class<RCTComponentViewProtocol> RCTScrollViewCls(void) __attribute__((used));
3938
Class<RCTComponentViewProtocol> RCTSwitchCls(void) __attribute__((used));
4039
Class<RCTComponentViewProtocol> RCTTextInputCls(void) __attribute__((used));

‎packages/react-native/React/Fabric/Mounting/ComponentViews/RCTFabricComponentsPlugins.mm‎

Lines changed: 0 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -23,7 +23,6 @@
2323
{"InputAccessoryView", RCTInputAccessoryCls},
2424
{"Paragraph", RCTParagraphCls},
2525
{"PullToRefreshView", RCTPullToRefreshViewCls},
26-
{"SafeAreaView", RCTSafeAreaViewCls},
2726
{"ScrollView", RCTScrollViewCls},
2827
{"Switch", RCTSwitchCls},
2928
{"TextInput", RCTTextInputCls},

‎packages/react-native/React/Fabric/Mounting/ComponentViews/SafeAreaView/RCTSafeAreaViewComponentView.h‎

Lines changed: 0 additions & 21 deletions
This file was deleted.

‎packages/react-native/React/Fabric/Mounting/ComponentViews/SafeAreaView/RCTSafeAreaViewComponentView.mm‎

Lines changed: 0 additions & 100 deletions
This file was deleted.

0 commit comments

Comments
 (0)