react-native-edge-to-edge 1.4.3-beta.1 → 1.5.0

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.
package/README.md CHANGED
@@ -142,15 +142,16 @@ React native built-in [`Modal`](https://reactnative.dev/docs/modal) component ru
142
142
 
143
143
  ## API
144
144
 
145
- ### `<SystemBars />`
145
+ ### SystemBars
146
146
 
147
- A component for managing your app's system bars. Replace all occurrences of [`StatusBar`](https://reactnative.dev/docs/statusbar), [`expo-status-bar`](https://docs.expo.dev/versions/latest/sdk/status-bar) and [`expo-navigation-bar`](https://docs.expo.dev/versions/latest/sdk/navigation-bar/) with it (they uses a lot of now [deprecated APIs](https://developer.android.com/about/versions/15/behavior-changes-15#deprecated-apis) and interfere with edge-to-edge).
147
+ Using [`StatusBar`](https://reactnative.dev/docs/statusbar), [`expo-status-bar`](https://docs.expo.dev/versions/latest/sdk/status-bar), or [`expo-navigation-bar`](https://docs.expo.dev/versions/latest/sdk/navigation-bar/) in apps with edge-to-edge layout enabled may cause unexpected behavior, as they currently use [deprecated APIs](https://developer.android.com/about/versions/15/behavior-changes-15#deprecated-apis).<br/>
148
+ To address this, we provide a component to replace them and manage your app's system bars: `<SystemBars />`.
148
149
 
149
150
  ```tsx
150
151
  import { SystemBars } from "react-native-edge-to-edge";
151
152
 
152
153
  // "auto" is based on current color scheme (light -> dark content, dark -> light content)
153
- type Style = "auto" | "light" | "dark";
154
+ type Style = "auto" | "inverted" | "light" | "dark";
154
155
 
155
156
  type SystemBarsProps = {
156
157
  // set the color of the system bar content (as no effect on semi-opaque navigation bar)
@@ -7,6 +7,7 @@ import android.app.Activity
7
7
  import android.content.res.Configuration
8
8
  import android.graphics.Color
9
9
  import android.util.TypedValue
10
+ import android.view.Window
10
11
  import android.view.WindowManager
11
12
 
12
13
  import androidx.core.view.WindowCompat
@@ -26,6 +27,9 @@ object EdgeToEdgeModuleImpl {
26
27
  private const val NO_ACTIVITY_ERROR = "$NAME: Ignored system bars change, current activity is null."
27
28
  private val boolAttributes = mutableMapOf<Int, Boolean>()
28
29
 
30
+ private var statusBarHidden = false
31
+ private var navigationBarHidden = false
32
+
29
33
  private fun resolveBoolAttribute(activity: Activity, resId: Int): Boolean =
30
34
  boolAttributes.getOrPut(resId) {
31
35
  val value = TypedValue()
@@ -40,6 +44,22 @@ object EdgeToEdgeModuleImpl {
40
44
  private fun isNavigationBarTransparent(activity: Activity): Boolean =
41
45
  !resolveBoolAttribute(activity, R.attr.enforceNavigationBarContrast)
42
46
 
47
+ // re-apply statusBarHidden / navigationBarHidden each time we instantiate a WindowInsetsControllerCompat
48
+ // see https://github.com/zoontek/react-native-edge-to-edge/issues/66
49
+ private fun initInsetsController(window: Window): WindowInsetsControllerCompat =
50
+ WindowInsetsControllerCompat(window, window.decorView).apply {
51
+ systemBarsBehavior = WindowInsetsControllerCompat.BEHAVIOR_SHOW_TRANSIENT_BARS_BY_SWIPE
52
+
53
+ when (statusBarHidden) {
54
+ true -> hide(WindowInsetsCompat.Type.statusBars())
55
+ else -> show(WindowInsetsCompat.Type.statusBars())
56
+ }
57
+ when (navigationBarHidden) {
58
+ true -> hide(WindowInsetsCompat.Type.navigationBars())
59
+ else -> show(WindowInsetsCompat.Type.navigationBars())
60
+ }
61
+ }
62
+
43
63
  @Suppress("DEPRECATION")
44
64
  fun applyEdgeToEdge(reactContext: ReactApplicationContext?) {
45
65
  val activity = reactContext?.currentActivity
@@ -47,7 +67,7 @@ object EdgeToEdgeModuleImpl {
47
67
 
48
68
  activity.runOnUiThread {
49
69
  val window = activity.window
50
- val insetsController = WindowInsetsControllerCompat(window, window.decorView)
70
+ val insetsController = initInsetsController(window)
51
71
 
52
72
  WindowCompat.setDecorFitsSystemWindows(window, false)
53
73
 
@@ -88,11 +108,6 @@ object EdgeToEdgeModuleImpl {
88
108
  else -> WindowManager.LayoutParams.LAYOUT_IN_DISPLAY_CUTOUT_MODE_SHORT_EDGES
89
109
  }
90
110
  }
91
-
92
- // re-apply WindowInsetsController systemBarsBehavior each time
93
- // see https://github.com/zoontek/react-native-edge-to-edge/issues/66
94
- insetsController.systemBarsBehavior =
95
- WindowInsetsControllerCompat.BEHAVIOR_SHOW_TRANSIENT_BARS_BY_SWIPE
96
111
  }
97
112
  }
98
113
 
@@ -101,16 +116,12 @@ object EdgeToEdgeModuleImpl {
101
116
  ?: return FLog.w(ReactConstants.TAG, NO_ACTIVITY_ERROR)
102
117
 
103
118
  activity.runOnUiThread {
104
- val window = activity.window
105
- val insetsController = WindowInsetsControllerCompat(window, window.decorView)
106
-
107
- insetsController.systemBarsBehavior =
108
- WindowInsetsControllerCompat.BEHAVIOR_SHOW_TRANSIENT_BARS_BY_SWIPE
109
-
110
- insetsController.isAppearanceLightStatusBars = when (style) {
111
- "dark-content" -> true
112
- "light-content" -> false
113
- else -> isDefaultLightSystemBars(activity)
119
+ initInsetsController(activity.window).run {
120
+ isAppearanceLightStatusBars = when (style) {
121
+ "light-content" -> false
122
+ "dark-content" -> true
123
+ else -> isDefaultLightSystemBars(activity)
124
+ }
114
125
  }
115
126
  }
116
127
  }
@@ -121,16 +132,12 @@ object EdgeToEdgeModuleImpl {
121
132
 
122
133
  if (VERSION.SDK_INT >= VERSION_CODES.O_MR1 && isNavigationBarTransparent(activity)) {
123
134
  activity.runOnUiThread {
124
- val window = activity.window
125
- val insetsController = WindowInsetsControllerCompat(window, window.decorView)
126
-
127
- insetsController.systemBarsBehavior =
128
- WindowInsetsControllerCompat.BEHAVIOR_SHOW_TRANSIENT_BARS_BY_SWIPE
129
-
130
- insetsController.isAppearanceLightNavigationBars = when (style) {
131
- "dark-content" -> true
132
- "light-content" -> false
133
- else -> isDefaultLightSystemBars(activity)
135
+ initInsetsController(activity.window).run {
136
+ isAppearanceLightNavigationBars = when (style) {
137
+ "light-content" -> false
138
+ "dark-content" -> true
139
+ else -> isDefaultLightSystemBars(activity)
140
+ }
134
141
  }
135
142
  }
136
143
  }
@@ -140,35 +147,15 @@ object EdgeToEdgeModuleImpl {
140
147
  val activity = reactContext?.currentActivity
141
148
  ?: return FLog.w(ReactConstants.TAG, NO_ACTIVITY_ERROR)
142
149
 
143
- activity.runOnUiThread {
144
- val window = activity.window
145
- val insetsController = WindowInsetsControllerCompat(window, window.decorView)
146
-
147
- insetsController.systemBarsBehavior =
148
- WindowInsetsControllerCompat.BEHAVIOR_SHOW_TRANSIENT_BARS_BY_SWIPE
149
-
150
- when (hidden) {
151
- true -> insetsController.hide(WindowInsetsCompat.Type.statusBars())
152
- else -> insetsController.show(WindowInsetsCompat.Type.statusBars())
153
- }
154
- }
150
+ statusBarHidden = hidden
151
+ activity.runOnUiThread { initInsetsController(activity.window) }
155
152
  }
156
153
 
157
154
  fun setNavigationBarHidden(reactContext: ReactApplicationContext?, hidden: Boolean) {
158
155
  val activity = reactContext?.currentActivity
159
156
  ?: return FLog.w(ReactConstants.TAG, NO_ACTIVITY_ERROR)
160
157
 
161
- activity.runOnUiThread {
162
- val window = activity.window
163
- val insetsController = WindowInsetsControllerCompat(window, window.decorView)
164
-
165
- insetsController.systemBarsBehavior =
166
- WindowInsetsControllerCompat.BEHAVIOR_SHOW_TRANSIENT_BARS_BY_SWIPE
167
-
168
- when (hidden) {
169
- true -> insetsController.hide(WindowInsetsCompat.Type.navigationBars())
170
- else -> insetsController.show(WindowInsetsCompat.Type.navigationBars())
171
- }
172
- }
158
+ navigationBarHidden = hidden
159
+ activity.runOnUiThread { initInsetsController(activity.window) }
173
160
  }
174
161
  }
@@ -68,10 +68,12 @@ function updateEntriesStack() {
68
68
  clearImmediate(updateImmediate);
69
69
  }
70
70
  updateImmediate = setImmediate(() => {
71
- const autoBarStyle = getColorScheme() === "light" ? "dark" : "light";
71
+ const isLightColorScheme = getColorScheme() === "light";
72
+ const autoBarStyle = isLightColorScheme ? "dark" : "light";
73
+ const invertedBarStyle = isLightColorScheme ? "light" : "dark";
72
74
  const mergedEntries = mergeEntriesStack(entriesStack);
73
- const statusBarStyle = mergedEntries.statusBarStyle === "auto" ? autoBarStyle : mergedEntries.statusBarStyle;
74
- const navigationBarStyle = mergedEntries.navigationBarStyle === "auto" ? autoBarStyle : mergedEntries.navigationBarStyle;
75
+ const statusBarStyle = mergedEntries.statusBarStyle === "auto" ? autoBarStyle : mergedEntries.statusBarStyle === "inverted" ? invertedBarStyle : mergedEntries.statusBarStyle;
76
+ const navigationBarStyle = mergedEntries.navigationBarStyle === "auto" ? autoBarStyle : mergedEntries.navigationBarStyle === "inverted" ? invertedBarStyle : mergedEntries.navigationBarStyle;
75
77
  const {
76
78
  statusBarHidden,
77
79
  navigationBarHidden
@@ -1 +1 @@
1
- {"version":3,"names":["_react","require","_reactNative","_NativeEdgeToEdgeModule","_interopRequireDefault","e","__esModule","default","getColorScheme","Appearance","toNativeBarStyle","style","mergeEntriesStack","entriesStack","reduce","prev","cur","prop","statusBarStyle","undefined","navigationBarStyle","statusBarHidden","navigationBarHidden","createStackEntry","props","statusBar","navigationBar","hidden","updateImmediate","currentMergedEntries","updateEntriesStack","Platform","OS","clearImmediate","setImmediate","autoBarStyle","mergedEntries","NativeModule","setStatusBarStyle","StatusBar","setBarStyle","setStatusBarHidden","setHidden","setNavigationBarStyle","setNavigationBarHidden","pushStackEntry","entry","push","popStackEntry","index","indexOf","splice","replaceStackEntry","newEntry","SystemBars","stableProps","useMemo","colorScheme","useColorScheme","stackEntryRef","useRef","useEffect","current"],"sourceRoot":"../../src","sources":["SystemBars.ts"],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"names":["_react","require","_reactNative","_NativeEdgeToEdgeModule","_interopRequireDefault","e","__esModule","default","getColorScheme","Appearance","toNativeBarStyle","style","mergeEntriesStack","entriesStack","reduce","prev","cur","prop","statusBarStyle","undefined","navigationBarStyle","statusBarHidden","navigationBarHidden","createStackEntry","props","statusBar","navigationBar","hidden","updateImmediate","currentMergedEntries","updateEntriesStack","Platform","OS","clearImmediate","setImmediate","isLightColorScheme","autoBarStyle","invertedBarStyle","mergedEntries","NativeModule","setStatusBarStyle","StatusBar","setBarStyle","setStatusBarHidden","setHidden","setNavigationBarStyle","setNavigationBarHidden","pushStackEntry","entry","push","popStackEntry","index","indexOf","splice","replaceStackEntry","newEntry","SystemBars","stableProps","useMemo","colorScheme","useColorScheme","stackEntryRef","useRef","useEffect","current"],"sourceRoot":"../../src","sources":["SystemBars.ts"],"mappings":";;;;;;AAAA,IAAAA,MAAA,GAAAC,OAAA;AACA,IAAAC,YAAA,GAAAD,OAAA;AACA,IAAAE,uBAAA,GAAAC,sBAAA,CAAAH,OAAA;AAA0D,SAAAG,uBAAAC,CAAA,WAAAA,CAAA,IAAAA,CAAA,CAAAC,UAAA,GAAAD,CAAA,KAAAE,OAAA,EAAAF,CAAA;AAK1D,SAASG,cAAcA,CAAA,EAAqB;EAC1C,OAAOC,uBAAU,EAAED,cAAc,CAAC,CAAC,IAAI,OAAO;AAChD;AAEA,SAASE,gBAAgBA,CACvBC,KAAwB,EACsB;EAC9C,OAAOA,KAAK,KAAK,OAAO,IAAIA,KAAK,KAAK,MAAM,GAAG,GAAGA,KAAK,UAAU,GAAG,SAAS;AAC/E;;AAEA;AACA;AACA;AACA,SAASC,iBAAiBA,CAACC,YAA+B,EAAE;EAC1D,OAAOA,YAAY,CAACC,MAAM,CAMxB,CAACC,IAAI,EAAEC,GAAG,KAAK;IACb,KAAK,MAAMC,IAAI,IAAID,GAAG,EAAE;MACtB,IAAIA,GAAG,CAACC,IAAI,CAA0B,IAAI,IAAI,EAAE;QAC9C;QACAF,IAAI,CAACE,IAAI,CAAC,GAAGD,GAAG,CAACC,IAAI,CAAC;MACxB;IACF;IACA,OAAOF,IAAI;EACb,CAAC,EACD;IACEG,cAAc,EAAEC,SAAS;IACzBC,kBAAkB,EAAED,SAAS;IAC7BE,eAAe,EAAE,KAAK;IACtBC,mBAAmB,EAAE;EACvB,CACF,CAAC;AACH;;AAEA;AACA;AACA;AACA,SAASC,gBAAgBA,CAACC,KAAsB,EAAmB;EACjE,OAAO;IACLN,cAAc,EACZ,OAAOM,KAAK,CAACb,KAAK,KAAK,QAAQ,GAAGa,KAAK,CAACb,KAAK,GAAGa,KAAK,CAACb,KAAK,EAAEc,SAAS;IACxEL,kBAAkB,EAChB,OAAOI,KAAK,CAACb,KAAK,KAAK,QAAQ,GAC3Ba,KAAK,CAACb,KAAK,GACXa,KAAK,CAACb,KAAK,EAAEe,aAAa;IAChCL,eAAe,EACb,OAAOG,KAAK,CAACG,MAAM,KAAK,SAAS,GAC7BH,KAAK,CAACG,MAAM,GACZH,KAAK,CAACG,MAAM,EAAEF,SAAS;IAC7BH,mBAAmB,EACjB,OAAOE,KAAK,CAACG,MAAM,KAAK,SAAS,GAC7BH,KAAK,CAACG,MAAM,GACZH,KAAK,CAACG,MAAM,EAAED;EACtB,CAAC;AACH;AAEA,MAAMb,YAA+B,GAAG,EAAE;;AAE1C;AACA,IAAIe,eAAwC,GAAG,IAAI;;AAEnD;AACA,IAAIC,oBAKH,GAAG;EACFX,cAAc,EAAEC,SAAS;EACzBC,kBAAkB,EAAED,SAAS;EAC7BE,eAAe,EAAE,KAAK;EACtBC,mBAAmB,EAAE;AACvB,CAAC;;AAED;AACA;AACA;AACA,SAASQ,kBAAkBA,CAAA,EAAG;EAC5B,IAAIC,qBAAQ,CAACC,EAAE,KAAK,SAAS,IAAID,qBAAQ,CAACC,EAAE,KAAK,KAAK,EAAE;IACtD,IAAIJ,eAAe,IAAI,IAAI,EAAE;MAC3BK,cAAc,CAACL,eAAe,CAAC;IACjC;IAEAA,eAAe,GAAGM,YAAY,CAAC,MAAM;MACnC,MAAMC,kBAAkB,GAAG3B,cAAc,CAAC,CAAC,KAAK,OAAO;MACvD,MAAM4B,YAAY,GAAGD,kBAAkB,GAAG,MAAM,GAAG,OAAO;MAC1D,MAAME,gBAAgB,GAAGF,kBAAkB,GAAG,OAAO,GAAG,MAAM;MAE9D,MAAMG,aAAa,GAAG1B,iBAAiB,CAACC,YAAY,CAAC;MAErD,MAAMK,cAAiC,GACrCoB,aAAa,CAACpB,cAAc,KAAK,MAAM,GACnCkB,YAAY,GACZE,aAAa,CAACpB,cAAc,KAAK,UAAU,GACzCmB,gBAAgB,GAChBC,aAAa,CAACpB,cAAc;MAEpC,MAAME,kBAAqC,GACzCkB,aAAa,CAAClB,kBAAkB,KAAK,MAAM,GACvCgB,YAAY,GACZE,aAAa,CAAClB,kBAAkB,KAAK,UAAU,GAC7CiB,gBAAgB,GAChBC,aAAa,CAAClB,kBAAkB;MAExC,MAAM;QAAEC,eAAe;QAAEC;MAAoB,CAAC,GAAGgB,aAAa;MAE9D,IAAIpB,cAAc,KAAKW,oBAAoB,CAACX,cAAc,EAAE;QAC1D,MAAMP,KAAK,GAAGD,gBAAgB,CAACQ,cAAc,CAAC;QAE9Ca,qBAAQ,CAACC,EAAE,KAAK,SAAS,GACrBO,+BAAY,EAAEC,iBAAiB,CAAC7B,KAAK,CAAC,GACtC8B,sBAAS,CAACC,WAAW,CAAC/B,KAAK,EAAE,IAAI,CAAC;MACxC;MAEA,IAAIU,eAAe,KAAKQ,oBAAoB,CAACR,eAAe,EAAE;QAC5DU,qBAAQ,CAACC,EAAE,KAAK,SAAS,GACrBO,+BAAY,EAAEI,kBAAkB,CAACtB,eAAe,CAAC,GACjDoB,sBAAS,CAACG,SAAS,CAACvB,eAAe,EAAE,MAAM,CAAC,CAAC,CAAC;MACpD;MAEA,IAAIU,qBAAQ,CAACC,EAAE,KAAK,SAAS,EAAE;QAC7B,IAAIZ,kBAAkB,KAAKS,oBAAoB,CAACT,kBAAkB,EAAE;UAClE,MAAMT,KAAK,GAAGD,gBAAgB,CAACU,kBAAkB,CAAC;UAClDmB,+BAAY,EAAEM,qBAAqB,CAAClC,KAAK,CAAC;QAC5C;QAEA,IAAIW,mBAAmB,KAAKO,oBAAoB,CAACP,mBAAmB,EAAE;UACpEiB,+BAAY,EAAEO,sBAAsB,CAACxB,mBAAmB,CAAC;QAC3D;MACF;MAEAO,oBAAoB,GAAG;QACrBX,cAAc;QACdE,kBAAkB;QAClBC,eAAe;QACfC;MACF,CAAC;IACH,CAAC,CAAC;EACJ;AACF;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA,SAASyB,cAAcA,CAACvB,KAAsB,EAAmB;EAC/D,MAAMwB,KAAK,GAAGzB,gBAAgB,CAACC,KAAK,CAAC;EACrCX,YAAY,CAACoC,IAAI,CAACD,KAAK,CAAC;EACxBlB,kBAAkB,CAAC,CAAC;EACpB,OAAOkB,KAAK;AACd;;AAEA;AACA;AACA;AACA;AACA;AACA,SAASE,aAAaA,CAACF,KAAsB,EAAQ;EACnD,MAAMG,KAAK,GAAGtC,YAAY,CAACuC,OAAO,CAACJ,KAAK,CAAC;EACzC,IAAIG,KAAK,KAAK,CAAC,CAAC,EAAE;IAChBtC,YAAY,CAACwC,MAAM,CAACF,KAAK,EAAE,CAAC,CAAC;EAC/B;EACArB,kBAAkB,CAAC,CAAC;AACtB;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA,SAASwB,iBAAiBA,CACxBN,KAAsB,EACtBxB,KAAsB,EACL;EACjB,MAAM+B,QAAQ,GAAGhC,gBAAgB,CAACC,KAAK,CAAC;EACxC,MAAM2B,KAAK,GAAGtC,YAAY,CAACuC,OAAO,CAACJ,KAAK,CAAC;EACzC,IAAIG,KAAK,KAAK,CAAC,CAAC,EAAE;IAChBtC,YAAY,CAACsC,KAAK,CAAC,GAAGI,QAAQ;EAChC;EACAzB,kBAAkB,CAAC,CAAC;EACpB,OAAOyB,QAAQ;AACjB;AAEO,SAASC,UAAUA,CAAC;EAAE7B,MAAM;EAAEhB;AAAuB,CAAC,EAAE;EAC7D,MAAMO,cAAc,GAAG,OAAOP,KAAK,KAAK,QAAQ,GAAGA,KAAK,GAAGA,KAAK,EAAEc,SAAS;EAC3E,MAAML,kBAAkB,GACtB,OAAOT,KAAK,KAAK,QAAQ,GAAGA,KAAK,GAAGA,KAAK,EAAEe,aAAa;EAC1D,MAAML,eAAe,GACnB,OAAOM,MAAM,KAAK,SAAS,GAAGA,MAAM,GAAGA,MAAM,EAAEF,SAAS;EAC1D,MAAMH,mBAAmB,GACvB,OAAOK,MAAM,KAAK,SAAS,GAAGA,MAAM,GAAGA,MAAM,EAAED,aAAa;EAE9D,MAAM+B,WAAW,GAAG,IAAAC,cAAO,EACzB,OAAO;IACL/C,KAAK,EACHO,cAAc,KAAKE,kBAAkB,GACjCF,cAAc,GACd;MAAEO,SAAS,EAAEP,cAAc;MAAEQ,aAAa,EAAEN;IAAmB,CAAC;IACtEO,MAAM,EACJN,eAAe,KAAKC,mBAAmB,GACnCD,eAAe,GACf;MAAEI,SAAS,EAAEJ,eAAe;MAAEK,aAAa,EAAEJ;IAAoB;EACzE,CAAC,CAAC,EACF,CAACJ,cAAc,EAAEE,kBAAkB,EAAEC,eAAe,EAAEC,mBAAmB,CAC3E,CAAC;EAED,MAAMqC,WAAW,GAAG,IAAAC,2BAAc,EAAC,CAAC;EACpC,MAAMC,aAAa,GAAG,IAAAC,aAAM,EAAyB,IAAI,CAAC;EAE1D,IAAAC,gBAAS,EAAC,MAAM;IACd;IACA;IACA;IACA;IACAF,aAAa,CAACG,OAAO,GAAGjB,cAAc,CAACU,WAAW,CAAC;IAEnD,OAAO,MAAM;MACX;MACA;MACA,IAAII,aAAa,CAACG,OAAO,EAAE;QACzBd,aAAa,CAACW,aAAa,CAACG,OAAO,CAAC;MACtC;IACF,CAAC;EACH,CAAC,EAAE,EAAE,CAAC;EAEN,IAAAD,gBAAS,EAAC,MAAM;IACd,IAAIF,aAAa,CAACG,OAAO,EAAE;MACzBH,aAAa,CAACG,OAAO,GAAGV,iBAAiB,CACvCO,aAAa,CAACG,OAAO,EACrBP,WACF,CAAC;IACH;EACF,CAAC,EAAE,CAACE,WAAW,EAAEF,WAAW,CAAC,CAAC;EAE9B,OAAO,IAAI;AACb;AAEAD,UAAU,CAACT,cAAc,GAAGA,cAAc;AAC1CS,UAAU,CAACN,aAAa,GAAGA,aAAa;AACxCM,UAAU,CAACF,iBAAiB,GAAGA,iBAAiB","ignoreList":[]}
@@ -0,0 +1,23 @@
1
+ import type { TurboModule } from "react-native";
2
+ import { Appearance, Platform, TurboModuleRegistry } from "react-native";
3
+
4
+ interface Spec extends TurboModule {
5
+ onColorSchemeChange(): void;
6
+ setStatusBarStyle(style: string): void;
7
+ setNavigationBarStyle(style: string): void;
8
+ setStatusBarHidden(hidden: boolean): void;
9
+ setNavigationBarHidden(hidden: boolean): void;
10
+ }
11
+
12
+ const NativeModule =
13
+ Platform.OS === "android"
14
+ ? TurboModuleRegistry.getEnforcing<Spec>("RNEdgeToEdge")
15
+ : null;
16
+
17
+ if (NativeModule != null) {
18
+ Appearance.addChangeListener(() => {
19
+ NativeModule.onColorSchemeChange();
20
+ });
21
+ }
22
+
23
+ export default NativeModule;
@@ -63,10 +63,12 @@ function updateEntriesStack() {
63
63
  clearImmediate(updateImmediate);
64
64
  }
65
65
  updateImmediate = setImmediate(() => {
66
- const autoBarStyle = getColorScheme() === "light" ? "dark" : "light";
66
+ const isLightColorScheme = getColorScheme() === "light";
67
+ const autoBarStyle = isLightColorScheme ? "dark" : "light";
68
+ const invertedBarStyle = isLightColorScheme ? "light" : "dark";
67
69
  const mergedEntries = mergeEntriesStack(entriesStack);
68
- const statusBarStyle = mergedEntries.statusBarStyle === "auto" ? autoBarStyle : mergedEntries.statusBarStyle;
69
- const navigationBarStyle = mergedEntries.navigationBarStyle === "auto" ? autoBarStyle : mergedEntries.navigationBarStyle;
70
+ const statusBarStyle = mergedEntries.statusBarStyle === "auto" ? autoBarStyle : mergedEntries.statusBarStyle === "inverted" ? invertedBarStyle : mergedEntries.statusBarStyle;
71
+ const navigationBarStyle = mergedEntries.navigationBarStyle === "auto" ? autoBarStyle : mergedEntries.navigationBarStyle === "inverted" ? invertedBarStyle : mergedEntries.navigationBarStyle;
70
72
  const {
71
73
  statusBarHidden,
72
74
  navigationBarHidden
@@ -1 +1 @@
1
- {"version":3,"names":["useEffect","useMemo","useRef","Appearance","Platform","StatusBar","useColorScheme","NativeModule","getColorScheme","toNativeBarStyle","style","mergeEntriesStack","entriesStack","reduce","prev","cur","prop","statusBarStyle","undefined","navigationBarStyle","statusBarHidden","navigationBarHidden","createStackEntry","props","statusBar","navigationBar","hidden","updateImmediate","currentMergedEntries","updateEntriesStack","OS","clearImmediate","setImmediate","autoBarStyle","mergedEntries","setStatusBarStyle","setBarStyle","setStatusBarHidden","setHidden","setNavigationBarStyle","setNavigationBarHidden","pushStackEntry","entry","push","popStackEntry","index","indexOf","splice","replaceStackEntry","newEntry","SystemBars","stableProps","colorScheme","stackEntryRef","current"],"sourceRoot":"../../src","sources":["SystemBars.ts"],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"names":["useEffect","useMemo","useRef","Appearance","Platform","StatusBar","useColorScheme","NativeModule","getColorScheme","toNativeBarStyle","style","mergeEntriesStack","entriesStack","reduce","prev","cur","prop","statusBarStyle","undefined","navigationBarStyle","statusBarHidden","navigationBarHidden","createStackEntry","props","statusBar","navigationBar","hidden","updateImmediate","currentMergedEntries","updateEntriesStack","OS","clearImmediate","setImmediate","isLightColorScheme","autoBarStyle","invertedBarStyle","mergedEntries","setStatusBarStyle","setBarStyle","setStatusBarHidden","setHidden","setNavigationBarStyle","setNavigationBarHidden","pushStackEntry","entry","push","popStackEntry","index","indexOf","splice","replaceStackEntry","newEntry","SystemBars","stableProps","colorScheme","stackEntryRef","current"],"sourceRoot":"../../src","sources":["SystemBars.ts"],"mappings":"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","ignoreList":[]}
@@ -0,0 +1,23 @@
1
+ import type { TurboModule } from "react-native";
2
+ import { Appearance, Platform, TurboModuleRegistry } from "react-native";
3
+
4
+ interface Spec extends TurboModule {
5
+ onColorSchemeChange(): void;
6
+ setStatusBarStyle(style: string): void;
7
+ setNavigationBarStyle(style: string): void;
8
+ setStatusBarHidden(hidden: boolean): void;
9
+ setNavigationBarHidden(hidden: boolean): void;
10
+ }
11
+
12
+ const NativeModule =
13
+ Platform.OS === "android"
14
+ ? TurboModuleRegistry.getEnforcing<Spec>("RNEdgeToEdge")
15
+ : null;
16
+
17
+ if (NativeModule != null) {
18
+ Appearance.addChangeListener(() => {
19
+ NativeModule.onColorSchemeChange();
20
+ });
21
+ }
22
+
23
+ export default NativeModule;
@@ -1 +1 @@
1
- {"version":3,"file":"SystemBars.d.ts","sourceRoot":"","sources":["../../src/SystemBars.ts"],"names":[],"mappings":"AAGA,OAAO,EAAE,eAAe,EAAE,eAAe,EAAkB,MAAM,SAAS,CAAC;AA2L3E,wBAAgB,UAAU,CAAC,EAAE,MAAM,EAAE,KAAK,EAAE,EAAE,eAAe,QAoD5D;yBApDe,UAAU;gCAvCK,eAAe,KAAG,eAAe;+BAYlC,eAAe,KAAG,IAAI;mCAe3C,eAAe,SACf,eAAe,KACrB,eAAe"}
1
+ {"version":3,"file":"SystemBars.d.ts","sourceRoot":"","sources":["../../src/SystemBars.ts"],"names":[],"mappings":"AAGA,OAAO,EAAE,eAAe,EAAE,eAAe,EAAkB,MAAM,SAAS,CAAC;AAkM3E,wBAAgB,UAAU,CAAC,EAAE,MAAM,EAAE,KAAK,EAAE,EAAE,eAAe,QAoD5D;yBApDe,UAAU;gCAvCK,eAAe,KAAG,eAAe;+BAYlC,eAAe,KAAG,IAAI;mCAe3C,eAAe,SACf,eAAe,KACrB,eAAe"}
@@ -2,7 +2,7 @@ type SystemBarsProp<T> = T | {
2
2
  statusBar?: T;
3
3
  navigationBar?: T;
4
4
  };
5
- export type SystemBarStyle = "auto" | "light" | "dark";
5
+ export type SystemBarStyle = "auto" | "inverted" | "light" | "dark";
6
6
  export type SystemBarsEntry = {
7
7
  statusBarStyle: SystemBarStyle | undefined;
8
8
  navigationBarStyle: SystemBarStyle | undefined;
@@ -1 +1 @@
1
- {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../src/types.ts"],"names":[],"mappings":"AAAA,KAAK,cAAc,CAAC,CAAC,IAAI,CAAC,GAAG;IAAE,SAAS,CAAC,EAAE,CAAC,CAAC;IAAC,aAAa,CAAC,EAAE,CAAC,CAAA;CAAE,CAAC;AAElE,MAAM,MAAM,cAAc,GAAG,MAAM,GAAG,OAAO,GAAG,MAAM,CAAC;AAEvD,MAAM,MAAM,eAAe,GAAG;IAC5B,cAAc,EAAE,cAAc,GAAG,SAAS,CAAC;IAC3C,kBAAkB,EAAE,cAAc,GAAG,SAAS,CAAC;IAC/C,eAAe,EAAE,OAAO,GAAG,SAAS,CAAC;IACrC,mBAAmB,EAAE,OAAO,GAAG,SAAS,CAAC;CAC1C,CAAC;AAEF,MAAM,MAAM,eAAe,GAAG;IAC5B,KAAK,CAAC,EAAE,cAAc,CAAC,cAAc,CAAC,CAAC;IACvC,MAAM,CAAC,EAAE,cAAc,CAAC,OAAO,CAAC,CAAC;CAClC,CAAC"}
1
+ {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../src/types.ts"],"names":[],"mappings":"AAAA,KAAK,cAAc,CAAC,CAAC,IAAI,CAAC,GAAG;IAAE,SAAS,CAAC,EAAE,CAAC,CAAC;IAAC,aAAa,CAAC,EAAE,CAAC,CAAA;CAAE,CAAC;AAElE,MAAM,MAAM,cAAc,GAAG,MAAM,GAAG,UAAU,GAAG,OAAO,GAAG,MAAM,CAAC;AAEpE,MAAM,MAAM,eAAe,GAAG;IAC5B,cAAc,EAAE,cAAc,GAAG,SAAS,CAAC;IAC3C,kBAAkB,EAAE,cAAc,GAAG,SAAS,CAAC;IAC/C,eAAe,EAAE,OAAO,GAAG,SAAS,CAAC;IACrC,mBAAmB,EAAE,OAAO,GAAG,SAAS,CAAC;CAC1C,CAAC;AAEF,MAAM,MAAM,eAAe,GAAG;IAC5B,KAAK,CAAC,EAAE,cAAc,CAAC,cAAc,CAAC,CAAC;IACvC,MAAM,CAAC,EAAE,cAAc,CAAC,OAAO,CAAC,CAAC;CAClC,CAAC"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "react-native-edge-to-edge",
3
- "version": "1.4.3-beta.1",
3
+ "version": "1.5.0",
4
4
  "license": "MIT",
5
5
  "description": "Effortlessly enable edge-to-edge display in React Native",
6
6
  "author": "Mathieu Acthernoene <zoontek@gmail.com>",
@@ -59,13 +59,13 @@
59
59
  "@babel/core": "^7.25.2",
60
60
  "@babel/preset-env": "^7.25.3",
61
61
  "@expo/config-plugins": "^7.0.0 || ^8.0.0 || ^9.0.0",
62
- "@types/react": "^18.2.6",
63
- "prettier": "^3.4.2",
62
+ "@types/react": "^19.0.0",
63
+ "prettier": "^3.5.3",
64
64
  "prettier-plugin-organize-imports": "^4.1.0",
65
- "react": "18.3.1",
66
- "react-native": "0.77.0",
67
- "react-native-builder-bob": "^0.35.2",
68
- "typescript": "^5.7.2"
65
+ "react": "19.0.0",
66
+ "react-native": "0.78.1",
67
+ "react-native-builder-bob": "^0.38.4",
68
+ "typescript": "^5.8.2"
69
69
  },
70
70
  "codegenConfig": {
71
71
  "name": "RNEdgeToEdge",
package/src/SystemBars.ts CHANGED
@@ -93,18 +93,25 @@ function updateEntriesStack() {
93
93
  }
94
94
 
95
95
  updateImmediate = setImmediate(() => {
96
- const autoBarStyle = getColorScheme() === "light" ? "dark" : "light";
96
+ const isLightColorScheme = getColorScheme() === "light";
97
+ const autoBarStyle = isLightColorScheme ? "dark" : "light";
98
+ const invertedBarStyle = isLightColorScheme ? "light" : "dark";
99
+
97
100
  const mergedEntries = mergeEntriesStack(entriesStack);
98
101
 
99
102
  const statusBarStyle: MergeableBarStyle =
100
103
  mergedEntries.statusBarStyle === "auto"
101
104
  ? autoBarStyle
102
- : mergedEntries.statusBarStyle;
105
+ : mergedEntries.statusBarStyle === "inverted"
106
+ ? invertedBarStyle
107
+ : mergedEntries.statusBarStyle;
103
108
 
104
109
  const navigationBarStyle: MergeableBarStyle =
105
110
  mergedEntries.navigationBarStyle === "auto"
106
111
  ? autoBarStyle
107
- : mergedEntries.navigationBarStyle;
112
+ : mergedEntries.navigationBarStyle === "inverted"
113
+ ? invertedBarStyle
114
+ : mergedEntries.navigationBarStyle;
108
115
 
109
116
  const { statusBarHidden, navigationBarHidden } = mergedEntries;
110
117
 
package/src/types.ts CHANGED
@@ -1,6 +1,6 @@
1
1
  type SystemBarsProp<T> = T | { statusBar?: T; navigationBar?: T };
2
2
 
3
- export type SystemBarStyle = "auto" | "light" | "dark";
3
+ export type SystemBarStyle = "auto" | "inverted" | "light" | "dark";
4
4
 
5
5
  export type SystemBarsEntry = {
6
6
  statusBarStyle: SystemBarStyle | undefined;
@@ -1,15 +0,0 @@
1
- "use strict";
2
-
3
- Object.defineProperty(exports, "__esModule", {
4
- value: true
5
- });
6
- exports.default = void 0;
7
- var _reactNative = require("react-native");
8
- const NativeModule = _reactNative.Platform.OS === "android" ? _reactNative.TurboModuleRegistry.getEnforcing("RNEdgeToEdge") : null;
9
- if (NativeModule != null) {
10
- _reactNative.Appearance.addChangeListener(() => {
11
- NativeModule.onColorSchemeChange();
12
- });
13
- }
14
- var _default = exports.default = NativeModule;
15
- //# sourceMappingURL=NativeEdgeToEdgeModule.js.map
@@ -1 +0,0 @@
1
- {"version":3,"names":["_reactNative","require","NativeModule","Platform","OS","TurboModuleRegistry","getEnforcing","Appearance","addChangeListener","onColorSchemeChange","_default","exports","default"],"sourceRoot":"../../../src","sources":["specs/NativeEdgeToEdgeModule.ts"],"mappings":";;;;;;AACA,IAAAA,YAAA,GAAAC,OAAA;AAUA,MAAMC,YAAY,GAChBC,qBAAQ,CAACC,EAAE,KAAK,SAAS,GACrBC,gCAAmB,CAACC,YAAY,CAAO,cAAc,CAAC,GACtD,IAAI;AAEV,IAAIJ,YAAY,IAAI,IAAI,EAAE;EACxBK,uBAAU,CAACC,iBAAiB,CAAC,MAAM;IACjCN,YAAY,CAACO,mBAAmB,CAAC,CAAC;EACpC,CAAC,CAAC;AACJ;AAAC,IAAAC,QAAA,GAAAC,OAAA,CAAAC,OAAA,GAEcV,YAAY","ignoreList":[]}
@@ -1,11 +0,0 @@
1
- "use strict";
2
-
3
- import { Appearance, Platform, TurboModuleRegistry } from "react-native";
4
- const NativeModule = Platform.OS === "android" ? TurboModuleRegistry.getEnforcing("RNEdgeToEdge") : null;
5
- if (NativeModule != null) {
6
- Appearance.addChangeListener(() => {
7
- NativeModule.onColorSchemeChange();
8
- });
9
- }
10
- export default NativeModule;
11
- //# sourceMappingURL=NativeEdgeToEdgeModule.js.map
@@ -1 +0,0 @@
1
- {"version":3,"names":["Appearance","Platform","TurboModuleRegistry","NativeModule","OS","getEnforcing","addChangeListener","onColorSchemeChange"],"sourceRoot":"../../../src","sources":["specs/NativeEdgeToEdgeModule.ts"],"mappings":";;AACA,SAASA,UAAU,EAAEC,QAAQ,EAAEC,mBAAmB,QAAQ,cAAc;AAUxE,MAAMC,YAAY,GAChBF,QAAQ,CAACG,EAAE,KAAK,SAAS,GACrBF,mBAAmB,CAACG,YAAY,CAAO,cAAc,CAAC,GACtD,IAAI;AAEV,IAAIF,YAAY,IAAI,IAAI,EAAE;EACxBH,UAAU,CAACM,iBAAiB,CAAC,MAAM;IACjCH,YAAY,CAACI,mBAAmB,CAAC,CAAC;EACpC,CAAC,CAAC;AACJ;AAEA,eAAeJ,YAAY","ignoreList":[]}