@react-navigation/bottom-tabs 7.15.13 → 7.16.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.
@@ -11,6 +11,15 @@ import { jsx as _jsx } from "react/jsx-runtime";
11
11
  const meta = {
12
12
  type: 'native-tabs'
13
13
  };
14
+ function reducer(state, action) {
15
+ switch (action.type) {
16
+ case 'CONFIRM_STATE':
17
+ return state.confirmed.routeKey === action.confirmed.routeKey && state.confirmed.provenance === action.confirmed.provenance ? state : {
18
+ ...state,
19
+ confirmed: action.confirmed
20
+ };
21
+ }
22
+ }
14
23
  export function NativeBottomTabView({
15
24
  state,
16
25
  navigation,
@@ -22,6 +31,12 @@ export function NativeBottomTabView({
22
31
  fonts
23
32
  } = useTheme();
24
33
  const focusedRouteKey = state.routes[state.index].key;
34
+ const [nativeState, dispatch] = React.useReducer(reducer, {
35
+ confirmed: {
36
+ routeKey: focusedRouteKey,
37
+ provenance: 0
38
+ }
39
+ });
25
40
  const previousRouteKeyRef = React.useRef(focusedRouteKey);
26
41
  React.useEffect(() => {
27
42
  const previousRouteKey = previousRouteKeyRef.current;
@@ -37,6 +52,94 @@ export function NativeBottomTabView({
37
52
  }
38
53
  previousRouteKeyRef.current = focusedRouteKey;
39
54
  }, [descriptors, focusedRouteKey, navigation, state.index, state.routes]);
55
+ const navigate = (route, confirmed) => {
56
+ dispatch({
57
+ type: 'CONFIRM_STATE',
58
+ confirmed
59
+ });
60
+ navigation.dispatch({
61
+ ...CommonActions.navigate(route.name, route.params),
62
+ target: state.key
63
+ });
64
+ };
65
+
66
+ // Native tabs are the source of truth for the selected tab.
67
+ // JS sends a requested tab with the native provenance it was based on.
68
+ // Native replies with the selected tab and its new provenance.
69
+ const onTabSelected = event => {
70
+ const {
71
+ selectedScreenKey,
72
+ provenance,
73
+ actionOrigin
74
+ } = event.nativeEvent;
75
+ const confirmed = {
76
+ routeKey: selectedScreenKey,
77
+ provenance
78
+ };
79
+ const route = state.routes.find(route => route.key === selectedScreenKey);
80
+ if (!route) {
81
+ console.error(`Received 'tabSelected' for route that doesn't exist: ${selectedScreenKey}`);
82
+ return;
83
+ }
84
+ if (actionOrigin === 'user') {
85
+ navigation.emit({
86
+ type: 'tabPress',
87
+ target: route.key
88
+ });
89
+ }
90
+ if (actionOrigin === 'programmatic-js' || focusedRouteKey === route.key) {
91
+ dispatch({
92
+ type: 'CONFIRM_STATE',
93
+ confirmed
94
+ });
95
+ return;
96
+ }
97
+ navigate(route, confirmed);
98
+ };
99
+
100
+ // If native rejects a JS request, keep native as the source of truth
101
+ // and move JS back to the tab that native says is selected.
102
+ const onTabSelectionRejected = event => {
103
+ const {
104
+ selectedScreenKey,
105
+ provenance
106
+ } = event.nativeEvent;
107
+ const confirmed = {
108
+ routeKey: selectedScreenKey,
109
+ provenance
110
+ };
111
+ const route = state.routes.find(route => route.key === selectedScreenKey);
112
+ if (!route) {
113
+ console.error(`Received 'tabSelectionRejected' for route that doesn't exist: ${selectedScreenKey}`);
114
+ return;
115
+ }
116
+ if (focusedRouteKey === route.key) {
117
+ dispatch({
118
+ type: 'CONFIRM_STATE',
119
+ confirmed
120
+ });
121
+ return;
122
+ }
123
+ navigate(route, confirmed);
124
+ };
125
+ const onTabSelectionPrevented = event => {
126
+ const {
127
+ selectedScreenKey,
128
+ provenance,
129
+ preventedScreenKey
130
+ } = event.nativeEvent;
131
+ dispatch({
132
+ type: 'CONFIRM_STATE',
133
+ confirmed: {
134
+ routeKey: selectedScreenKey,
135
+ provenance
136
+ }
137
+ });
138
+ navigation.emit({
139
+ type: 'tabPress',
140
+ target: preventedScreenKey
141
+ });
142
+ };
40
143
  const currentOptions = descriptors[state.routes[state.index].key]?.options;
41
144
  const {
42
145
  fontFamily = Platform.select({
@@ -87,43 +190,23 @@ export function NativeBottomTabView({
87
190
  const bottomAccessory = currentOptions.bottomAccessory;
88
191
  return /*#__PURE__*/_jsx(SafeAreaProviderCompat, {
89
192
  children: /*#__PURE__*/_jsx(Tabs.Host, {
90
- bottomAccessory: bottomAccessory ? environment => bottomAccessory({
91
- placement: environment
92
- }) : undefined,
193
+ navStateRequest: {
194
+ selectedScreenKey: focusedRouteKey,
195
+ baseProvenance: nativeState.confirmed.provenance
196
+ },
197
+ rejectStaleNavStateUpdates: true,
198
+ onTabSelected: onTabSelected,
199
+ onTabSelectionRejected: onTabSelectionRejected,
200
+ onTabSelectionPrevented: onTabSelectionPrevented,
93
201
  tabBarHidden: shouldHideTabBar,
94
- tabBarItemLabelVisibilityMode: currentOptions?.tabBarLabelVisibilityMode,
95
- tabBarControllerMode: tabBarControllerMode,
96
- tabBarMinimizeBehavior: tabBarMinimizeBehavior,
97
- tabBarTintColor: activeTintColor,
98
- tabBarItemIconColor: inactiveTintColor,
99
- tabBarItemIconColorActive: activeTintColor,
100
- tabBarItemTitleFontColor: inactiveTintColor ?? fontColor,
101
- tabBarItemTitleFontColorActive: activeTintColor,
102
- tabBarItemTitleFontFamily: fontFamily,
103
- tabBarItemTitleFontWeight: fontWeight,
104
- tabBarItemTitleFontSize: fontSize,
105
- tabBarItemTitleFontSizeActive: fontSize,
106
- tabBarItemTitleFontStyle: fontStyle,
107
- tabBarBackgroundColor: currentOptions.tabBarStyle?.backgroundColor ?? colors.card,
108
- tabBarItemActiveIndicatorColor: activeIndicatorColor,
109
- tabBarItemActiveIndicatorEnabled: currentOptions?.tabBarActiveIndicatorEnabled,
110
- tabBarItemRippleColor: currentOptions?.tabBarRippleColor,
111
- experimentalControlNavigationStateInJS: false,
112
- onNativeFocusChange: e => {
113
- const route = state.routes.find(route => route.key === e.nativeEvent.tabKey);
114
- if (route) {
115
- navigation.emit({
116
- type: 'tabPress',
117
- target: route.key
118
- });
119
- const isFocused = state.index === state.routes.findIndex(r => r.key === route.key);
120
- if (!isFocused) {
121
- navigation.dispatch({
122
- ...CommonActions.navigate(route.name, route.params),
123
- target: state.key
124
- });
125
- }
126
- }
202
+ colorScheme: dark ? 'dark' : 'light',
203
+ ios: {
204
+ bottomAccessory: bottomAccessory ? environment => bottomAccessory({
205
+ placement: environment
206
+ }) : undefined,
207
+ tabBarControllerMode,
208
+ tabBarMinimizeBehavior,
209
+ tabBarTintColor: activeTintColor
127
210
  },
128
211
  children: state.routes.map((route, index) => {
129
212
  const {
@@ -137,6 +220,7 @@ export function NativeBottomTabView({
137
220
  title,
138
221
  lazy = true,
139
222
  tabBarLabel,
223
+ tabBarSelectionEnabled,
140
224
  tabBarBadgeStyle,
141
225
  tabBarIcon,
142
226
  tabBarBadge,
@@ -167,6 +251,14 @@ export function NativeBottomTabView({
167
251
  tabBarItemIconColor: inactiveTintColor,
168
252
  tabBarItemBadgeBackgroundColor: badgeBackgroundColor
169
253
  };
254
+ const normalTabItemAppearance = {
255
+ tabBarItemTitleFontColor: inactiveTintColor ?? fontColor,
256
+ tabBarItemIconColor: inactiveTintColor
257
+ };
258
+ const selectedTabItemAppearance = {
259
+ tabBarItemTitleFontColor: activeTintColor,
260
+ tabBarItemIconColor: activeTintColor
261
+ };
170
262
  const icon = typeof tabBarIcon === 'function' ? getPlatformIcon(tabBarIcon({
171
263
  focused: false
172
264
  })) : tabBarIcon != null ? getPlatformIcon(tabBarIcon) : undefined;
@@ -190,51 +282,70 @@ export function NativeBottomTabView({
190
282
  closing: true,
191
283
  route
192
284
  }),
193
- tabKey: route.key,
194
- icon: icon,
195
- selectedIcon: selectedIcon?.ios ?? selectedIcon?.shared,
196
- tabBarItemBadgeBackgroundColor: badgeBackgroundColor,
197
- tabBarItemBadgeTextColor: badgeTextColor,
285
+ screenKey: route.key,
286
+ preventNativeSelection: tabBarSelectionEnabled === false,
198
287
  badgeValue: tabBarBadge?.toString(),
199
- systemItem: tabBarSystemItem,
200
- isFocused: isFocused,
201
288
  title: tabTitle,
202
- scrollEdgeAppearance: {
203
- tabBarBackgroundColor,
204
- tabBarShadowColor,
205
- tabBarBlurEffect,
206
- stacked: {
207
- normal: tabItemAppearance
208
- },
209
- inline: {
210
- normal: tabItemAppearance
211
- },
212
- compactInline: {
213
- normal: tabItemAppearance
214
- }
215
- },
216
- standardAppearance: {
217
- tabBarBackgroundColor,
218
- tabBarShadowColor,
219
- tabBarBlurEffect,
220
- stacked: {
221
- normal: tabItemAppearance
222
- },
223
- inline: {
224
- normal: tabItemAppearance
225
- },
226
- compactInline: {
227
- normal: tabItemAppearance
228
- }
229
- },
230
289
  specialEffects: {
231
290
  repeatedTabSelection: {
232
291
  popToRoot: true,
233
292
  scrollToTop: true
234
293
  }
235
294
  },
236
- overrideScrollViewContentInsetAdjustmentBehavior: overrideScrollViewContentInsetAdjustmentBehavior,
237
- experimental_userInterfaceStyle: dark ? 'dark' : 'light',
295
+ android: {
296
+ icon: icon?.android ?? icon?.shared,
297
+ selectedIcon: selectedIcon?.android ?? selectedIcon?.shared,
298
+ standardAppearance: {
299
+ tabBarBackgroundColor: tabBarBackgroundColor ?? colors.card,
300
+ tabBarItemRippleColor: currentOptions?.tabBarRippleColor,
301
+ tabBarItemLabelVisibilityMode: currentOptions?.tabBarLabelVisibilityMode,
302
+ normal: normalTabItemAppearance,
303
+ selected: selectedTabItemAppearance,
304
+ tabBarItemActiveIndicatorColor: activeIndicatorColor,
305
+ tabBarItemActiveIndicatorEnabled: currentOptions?.tabBarActiveIndicatorEnabled,
306
+ tabBarItemTitleFontFamily: fontFamily,
307
+ tabBarItemTitleFontWeight: fontWeight,
308
+ tabBarItemTitleSmallLabelFontSize: fontSize,
309
+ tabBarItemTitleLargeLabelFontSize: fontSize,
310
+ tabBarItemTitleFontStyle: fontStyle,
311
+ tabBarItemBadgeBackgroundColor: badgeBackgroundColor,
312
+ tabBarItemBadgeTextColor: badgeTextColor
313
+ }
314
+ },
315
+ ios: {
316
+ icon: icon?.ios ?? icon?.shared,
317
+ selectedIcon: selectedIcon?.ios ?? selectedIcon?.shared,
318
+ systemItem: tabBarSystemItem,
319
+ scrollEdgeAppearance: {
320
+ tabBarBackgroundColor,
321
+ tabBarShadowColor,
322
+ tabBarBlurEffect,
323
+ stacked: {
324
+ normal: tabItemAppearance
325
+ },
326
+ inline: {
327
+ normal: tabItemAppearance
328
+ },
329
+ compactInline: {
330
+ normal: tabItemAppearance
331
+ }
332
+ },
333
+ standardAppearance: {
334
+ tabBarBackgroundColor,
335
+ tabBarShadowColor,
336
+ tabBarBlurEffect,
337
+ stacked: {
338
+ normal: tabItemAppearance
339
+ },
340
+ inline: {
341
+ normal: tabItemAppearance
342
+ },
343
+ compactInline: {
344
+ normal: tabItemAppearance
345
+ }
346
+ },
347
+ overrideScrollViewContentInsetAdjustmentBehavior
348
+ },
238
349
  children: /*#__PURE__*/_jsx(Lazy, {
239
350
  enabled: lazy,
240
351
  visible: isFocused || isPreloaded,
@@ -1 +1 @@
1
- {"version":3,"names":["getLabel","Lazy","SafeAreaProviderCompat","Screen","ScreenContent","CommonActions","NavigationMetaContext","StackActions","useTheme","Color","React","Platform","PlatformColor","Tabs","NativeScreen","jsx","_jsx","meta","type","NativeBottomTabView","state","navigation","descriptors","dark","colors","fonts","focusedRouteKey","routes","index","key","previousRouteKeyRef","useRef","useEffect","previousRouteKey","current","options","popToTopOnBlur","prevRoute","find","route","popToTopAction","popToTop","target","dispatch","currentOptions","fontFamily","select","ios","medium","default","regular","fontWeight","fontSize","fontStyle","color","fontColor","tabBarLabelStyle","activeTintColor","tabBarActiveTintColor","primary","inactiveTintColor","tabBarInactiveTintColor","text","activeIndicatorColor","tabBarActiveIndicatorColor","alpha","string","undefined","onTransitionStart","closing","emit","data","onTransitionEnd","tabBarControllerMode","tabBarMinimizeBehavior","shouldHideTabBar","tabBarStyle","display","bottomAccessory","children","Host","environment","placement","tabBarHidden","tabBarItemLabelVisibilityMode","tabBarLabelVisibilityMode","tabBarTintColor","tabBarItemIconColor","tabBarItemIconColorActive","tabBarItemTitleFontColor","tabBarItemTitleFontColorActive","tabBarItemTitleFontFamily","tabBarItemTitleFontWeight","tabBarItemTitleFontSize","tabBarItemTitleFontSizeActive","tabBarItemTitleFontStyle","tabBarBackgroundColor","backgroundColor","card","tabBarItemActiveIndicatorColor","tabBarItemActiveIndicatorEnabled","tabBarActiveIndicatorEnabled","tabBarItemRippleColor","tabBarRippleColor","experimentalControlNavigationStateInJS","onNativeFocusChange","e","nativeEvent","tabKey","isFocused","findIndex","r","navigate","name","params","map","render","isPreloaded","preloadedRouteKeys","includes","title","lazy","tabBarLabel","tabBarBadgeStyle","tabBarIcon","tabBarBadge","tabBarSystemItem","tabBarBlurEffect","overrideScrollViewContentInsetAdjustmentBehavior","shadowColor","tabBarShadowColor","tabTitle","OS","label","badgeBackgroundColor","notification","badgeTextColor","isLight","tabItemAppearance","tabBarItemBadgeBackgroundColor","icon","getPlatformIcon","focused","selectedIcon","onWillDisappear","onWillAppear","onDidAppear","onDidDisappear","shared","tabBarItemBadgeTextColor","badgeValue","toString","systemItem","scrollEdgeAppearance","stacked","normal","inline","compactInline","standardAppearance","specialEffects","repeatedTabSelection","popToRoot","scrollToTop","experimental_userInterfaceStyle","enabled","visible","ScreenWithHeader","Provider","value","headerTransparent","header","renderCustomHeader","headerShown","hasNativeHeader","wasNativeHeaderShown","useState","Error","android","tinted","imageSource","source","templateSource","_exhaustiveCheck"],"sourceRoot":"../../../src","sources":["unstable/NativeBottomTabView.native.tsx"],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"names":["getLabel","Lazy","SafeAreaProviderCompat","Screen","ScreenContent","CommonActions","NavigationMetaContext","StackActions","useTheme","Color","React","Platform","PlatformColor","Tabs","NativeScreen","jsx","_jsx","meta","type","reducer","state","action","confirmed","routeKey","provenance","NativeBottomTabView","navigation","descriptors","dark","colors","fonts","focusedRouteKey","routes","index","key","nativeState","dispatch","useReducer","previousRouteKeyRef","useRef","useEffect","previousRouteKey","current","options","popToTopOnBlur","prevRoute","find","route","popToTopAction","popToTop","target","navigate","name","params","onTabSelected","event","selectedScreenKey","actionOrigin","nativeEvent","console","error","emit","onTabSelectionRejected","onTabSelectionPrevented","preventedScreenKey","currentOptions","fontFamily","select","ios","medium","default","regular","fontWeight","fontSize","fontStyle","color","fontColor","tabBarLabelStyle","activeTintColor","tabBarActiveTintColor","primary","inactiveTintColor","tabBarInactiveTintColor","text","activeIndicatorColor","tabBarActiveIndicatorColor","alpha","string","undefined","onTransitionStart","closing","data","onTransitionEnd","tabBarControllerMode","tabBarMinimizeBehavior","shouldHideTabBar","tabBarStyle","display","bottomAccessory","children","Host","navStateRequest","baseProvenance","rejectStaleNavStateUpdates","tabBarHidden","colorScheme","environment","placement","tabBarTintColor","map","render","isFocused","isPreloaded","preloadedRouteKeys","includes","title","lazy","tabBarLabel","tabBarSelectionEnabled","tabBarBadgeStyle","tabBarIcon","tabBarBadge","tabBarSystemItem","tabBarBlurEffect","overrideScrollViewContentInsetAdjustmentBehavior","backgroundColor","tabBarBackgroundColor","shadowColor","tabBarShadowColor","tabTitle","OS","label","badgeBackgroundColor","notification","badgeTextColor","isLight","tabItemAppearance","tabBarItemTitleFontFamily","tabBarItemTitleFontSize","tabBarItemTitleFontWeight","tabBarItemTitleFontStyle","tabBarItemTitleFontColor","tabBarItemIconColor","tabBarItemBadgeBackgroundColor","normalTabItemAppearance","selectedTabItemAppearance","icon","getPlatformIcon","focused","selectedIcon","onWillDisappear","onWillAppear","onDidAppear","onDidDisappear","screenKey","preventNativeSelection","badgeValue","toString","specialEffects","repeatedTabSelection","popToRoot","scrollToTop","android","shared","standardAppearance","card","tabBarItemRippleColor","tabBarRippleColor","tabBarItemLabelVisibilityMode","tabBarLabelVisibilityMode","normal","selected","tabBarItemActiveIndicatorColor","tabBarItemActiveIndicatorEnabled","tabBarActiveIndicatorEnabled","tabBarItemTitleSmallLabelFontSize","tabBarItemTitleLargeLabelFontSize","tabBarItemBadgeTextColor","systemItem","scrollEdgeAppearance","stacked","inline","compactInline","enabled","visible","ScreenWithHeader","Provider","value","headerTransparent","header","renderCustomHeader","headerShown","hasNativeHeader","wasNativeHeaderShown","useState","Error","tinted","imageSource","source","templateSource","_exhaustiveCheck"],"sourceRoot":"../../../src","sources":["unstable/NativeBottomTabView.native.tsx"],"mappings":"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","ignoreList":[]}
@@ -54,7 +54,7 @@ const processBarButtonItems = (items, colors, fonts) => {
54
54
  ...processedItem,
55
55
  menu: {
56
56
  ...processedItem.menu,
57
- singleSelection: !multiselectable,
57
+ singleSelection: typeof multiselectable === 'boolean' ? !multiselectable : undefined,
58
58
  displayAsPalette: layout === 'palette',
59
59
  items: item.menu.items.map(getMenuItem)
60
60
  }
@@ -97,7 +97,7 @@ const getMenuItem = item => {
97
97
  title: label,
98
98
  displayAsPalette: layout === 'palette',
99
99
  displayInline: inline,
100
- singleSelection: !multiselectable,
100
+ singleSelection: typeof multiselectable === 'boolean' ? !multiselectable : undefined,
101
101
  items: items.map(getMenuItem)
102
102
  };
103
103
  }
@@ -1 +1 @@
1
- {"version":3,"names":["getHeaderTitle","HeaderTitle","useLocale","useTheme","Color","Platform","StyleSheet","View","isSearchBarAvailableForCurrentPlatform","ScreenStackHeaderCenterView","ScreenStackHeaderLeftView","ScreenStackHeaderRightView","ScreenStackHeaderSearchBarView","SearchBar","jsx","_jsx","Fragment","_Fragment","jsxs","_jsxs","processBarButtonItems","items","colors","fonts","map","item","index","type","spacing","Error","JSON","stringify","menu","badge","label","labelStyle","icon","rest","processedItem","title","titleStyle","regular","tinted","imageSource","source","templateSource","multiselectable","layout","singleSelection","displayAsPalette","getMenuItem","badgeBackgroundColor","style","backgroundColor","notification","badgeTextColor","isLight","value","String","color","filter","inline","displayInline","description","subtitle","useHeaderConfig","headerShadowVisible","headerLargeStyle","headerLargeTitleEnabled","headerLargeTitleShadowVisible","headerLargeTitleStyle","headerBackground","headerLeft","headerRight","headerShown","headerStyle","headerBlurEffect","headerTintColor","headerTitle","headerTitleAlign","headerTitleStyle","headerTransparent","headerSearchBarOptions","headerTopInsetEnabled","route","unstable_headerLeftItems","headerLeftItems","unstable_headerRightItems","headerRightItems","direction","dark","tintColor","OS","primary","text","headerLargeTitleStyleFlattened","flatten","select","ios","heavy","default","medium","headerTitleStyleFlattened","bold","headerStyleFlattened","headerLargeStyleFlattened","titleText","name","titleColor","titleFontSize","fontSize","undefined","titleFontFamily","fontFamily","titleFontWeight","fontWeight","largeTitleFontFamily","largeTitleBackgroundColor","largeTitleColor","largeTitleFontSize","largeTitleFontWeight","headerTitleStyleSupported","headerBackgroundColor","card","headerLeftElement","headerRightElement","headerTitleElement","children","hasHeaderSearchBar","translucent","isCenterViewRenderedAndroid","leftItems","rightItems","reverse","hidesSharedBackground","element","flex","blurEffect","hidden","hideShadow","largeTitle","largeTitleHideShadow","topInsetEnabled","headerLeftBarButtonItems","headerRightBarButtonItems","experimental_userInterfaceStyle"],"sourceRoot":"../../../../src","sources":["unstable/NativeScreen/useHeaderConfig.tsx"],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"names":["getHeaderTitle","HeaderTitle","useLocale","useTheme","Color","Platform","StyleSheet","View","isSearchBarAvailableForCurrentPlatform","ScreenStackHeaderCenterView","ScreenStackHeaderLeftView","ScreenStackHeaderRightView","ScreenStackHeaderSearchBarView","SearchBar","jsx","_jsx","Fragment","_Fragment","jsxs","_jsxs","processBarButtonItems","items","colors","fonts","map","item","index","type","spacing","Error","JSON","stringify","menu","badge","label","labelStyle","icon","rest","processedItem","title","titleStyle","regular","tinted","imageSource","source","templateSource","multiselectable","layout","singleSelection","undefined","displayAsPalette","getMenuItem","badgeBackgroundColor","style","backgroundColor","notification","badgeTextColor","isLight","value","String","color","filter","inline","displayInline","description","subtitle","useHeaderConfig","headerShadowVisible","headerLargeStyle","headerLargeTitleEnabled","headerLargeTitleShadowVisible","headerLargeTitleStyle","headerBackground","headerLeft","headerRight","headerShown","headerStyle","headerBlurEffect","headerTintColor","headerTitle","headerTitleAlign","headerTitleStyle","headerTransparent","headerSearchBarOptions","headerTopInsetEnabled","route","unstable_headerLeftItems","headerLeftItems","unstable_headerRightItems","headerRightItems","direction","dark","tintColor","OS","primary","text","headerLargeTitleStyleFlattened","flatten","select","ios","heavy","default","medium","headerTitleStyleFlattened","bold","headerStyleFlattened","headerLargeStyleFlattened","titleText","name","titleColor","titleFontSize","fontSize","titleFontFamily","fontFamily","titleFontWeight","fontWeight","largeTitleFontFamily","largeTitleBackgroundColor","largeTitleColor","largeTitleFontSize","largeTitleFontWeight","headerTitleStyleSupported","headerBackgroundColor","card","headerLeftElement","headerRightElement","headerTitleElement","children","hasHeaderSearchBar","translucent","isCenterViewRenderedAndroid","leftItems","rightItems","reverse","hidesSharedBackground","element","flex","blurEffect","hidden","hideShadow","largeTitle","largeTitleHideShadow","topInsetEnabled","headerLeftBarButtonItems","headerRightBarButtonItems","experimental_userInterfaceStyle"],"sourceRoot":"../../../../src","sources":["unstable/NativeScreen/useHeaderConfig.tsx"],"mappings":"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","ignoreList":[]}
@@ -1 +1 @@
1
- {"version":3,"file":"NativeBottomTabView.native.d.ts","sourceRoot":"","sources":["../../../../src/unstable/NativeBottomTabView.native.tsx"],"names":[],"mappings":"AAMA,OAAO,EAGL,KAAK,aAAa,EAGlB,KAAK,kBAAkB,EAExB,MAAM,0BAA0B,CAAC;AAWlC,OAAO,KAAK,EACV,4BAA4B,EAE5B,+BAA+B,EAC/B,gCAAgC,EAGjC,MAAM,SAAS,CAAC;AAEjB,KAAK,KAAK,GAAG,+BAA+B,GAAG;IAC7C,KAAK,EAAE,kBAAkB,CAAC,aAAa,CAAC,CAAC;IACzC,UAAU,EAAE,gCAAgC,CAAC;IAC7C,WAAW,EAAE,4BAA4B,CAAC;CAC3C,CAAC;AAMF,wBAAgB,mBAAmB,CAAC,EAAE,KAAK,EAAE,UAAU,EAAE,WAAW,EAAE,EAAE,KAAK,2CA2S5E"}
1
+ {"version":3,"file":"NativeBottomTabView.native.d.ts","sourceRoot":"","sources":["../../../../src/unstable/NativeBottomTabView.native.tsx"],"names":[],"mappings":"AAMA,OAAO,EAGL,KAAK,aAAa,EAGlB,KAAK,kBAAkB,EAExB,MAAM,0BAA0B,CAAC;AAsBlC,OAAO,KAAK,EACV,4BAA4B,EAE5B,+BAA+B,EAC/B,gCAAgC,EAGjC,MAAM,SAAS,CAAC;AAEjB,KAAK,KAAK,GAAG,+BAA+B,GAAG;IAC7C,KAAK,EAAE,kBAAkB,CAAC,aAAa,CAAC,CAAC;IACzC,UAAU,EAAE,gCAAgC,CAAC;IAC7C,WAAW,EAAE,4BAA4B,CAAC;CAC3C,CAAC;AA0CF,wBAAgB,mBAAmB,CAAC,EAAE,KAAK,EAAE,UAAU,EAAE,WAAW,EAAE,EAAE,KAAK,2CA6Z5E"}
@@ -1 +1 @@
1
- {"version":3,"file":"useHeaderConfig.d.ts","sourceRoot":"","sources":["../../../../../src/unstable/NativeScreen/useHeaderConfig.tsx"],"names":[],"mappings":"AACA,OAAO,EACL,KAAK,KAAK,EAIX,MAAM,0BAA0B,CAAC;AAGlC,OAAO,EAML,KAAK,4BAA4B,EAKlC,MAAM,sBAAsB,CAAC;AAE9B,OAAO,KAAK,EACV,mBAAmB,EAIpB,MAAM,SAAS,CAAC;AAEjB,KAAK,KAAK,GAAG,mBAAmB,GAAG;IACjC,qBAAqB,EAAE,OAAO,CAAC;IAC/B,YAAY,EAAE,MAAM,CAAC;IACrB,KAAK,EAAE,KAAK,CAAC,MAAM,CAAC,CAAC;CACtB,CAAC;AAoIF,wBAAgB,eAAe,CAAC,EAC9B,mBAAmB,EACnB,gBAAgB,EAChB,uBAAuB,EACvB,6BAA6B,EAC7B,qBAAqB,EACrB,gBAAgB,EAChB,UAAU,EACV,WAAW,EACX,WAAW,EACX,WAAW,EACX,gBAAgB,EAChB,eAAe,EACf,WAAW,EACX,gBAAgB,EAChB,gBAAgB,EAChB,iBAAiB,EACjB,sBAAsB,EACtB,qBAAqB,EACrB,KAAK,EACL,KAAK,EACL,wBAAwB,EAAE,eAAe,EACzC,yBAAyB,EAAE,gBAAgB,GAC5C,EAAE,KAAK,GAAG,4BAA4B,CAqPtC"}
1
+ {"version":3,"file":"useHeaderConfig.d.ts","sourceRoot":"","sources":["../../../../../src/unstable/NativeScreen/useHeaderConfig.tsx"],"names":[],"mappings":"AACA,OAAO,EACL,KAAK,KAAK,EAIX,MAAM,0BAA0B,CAAC;AAGlC,OAAO,EAML,KAAK,4BAA4B,EAKlC,MAAM,sBAAsB,CAAC;AAE9B,OAAO,KAAK,EACV,mBAAmB,EAIpB,MAAM,SAAS,CAAC;AAEjB,KAAK,KAAK,GAAG,mBAAmB,GAAG;IACjC,qBAAqB,EAAE,OAAO,CAAC;IAC/B,YAAY,EAAE,MAAM,CAAC;IACrB,KAAK,EAAE,KAAK,CAAC,MAAM,CAAC,CAAC;CACtB,CAAC;AAwIF,wBAAgB,eAAe,CAAC,EAC9B,mBAAmB,EACnB,gBAAgB,EAChB,uBAAuB,EACvB,6BAA6B,EAC7B,qBAAqB,EACrB,gBAAgB,EAChB,UAAU,EACV,WAAW,EACX,WAAW,EACX,WAAW,EACX,gBAAgB,EAChB,eAAe,EACf,WAAW,EACX,gBAAgB,EAChB,gBAAgB,EAChB,iBAAiB,EACjB,sBAAsB,EACtB,qBAAqB,EACrB,KAAK,EACL,KAAK,EACL,wBAAwB,EAAE,eAAe,EACzC,yBAAyB,EAAE,gBAAgB,GAC5C,EAAE,KAAK,GAAG,4BAA4B,CAqPtC"}
@@ -1,7 +1,7 @@
1
1
  import type { DefaultNavigatorOptions, Descriptor, NavigationHelpers, NavigationProp, ParamListBase, RouteProp, TabActionHelpers, TabNavigationState, TabRouterOptions, Theme } from '@react-navigation/native';
2
2
  import type { ColorValue, ImageSourcePropType, TextStyle } from 'react-native';
3
3
  import type { EdgeInsets } from 'react-native-safe-area-context';
4
- import type { TabBarItemLabelVisibilityMode, TabsScreenBlurEffect, TabsSystemItem } from 'react-native-screens';
4
+ import type { TabBarItemLabelVisibilityMode, TabsScreenBlurEffect, TabsScreenSystemItem } from 'react-native-screens';
5
5
  import type { SFSymbol } from 'sf-symbols-typescript';
6
6
  import type { NativeHeaderOptions } from './NativeScreen/types';
7
7
  export type Layout = {
@@ -11,6 +11,8 @@ export type Layout = {
11
11
  export type NativeBottomTabNavigationEventMap = {
12
12
  /**
13
13
  * Event which fires on tapping on the tab in the tab bar.
14
+ *
15
+ * Use the `tabBarSelectionEnabled: false` option to prevent the tab from being selected.
14
16
  */
15
17
  tabPress: {
16
18
  data: undefined;
@@ -90,7 +92,7 @@ export type NativeBottomTabNavigationOptions = NativeHeaderOptions & {
90
92
  *
91
93
  * @platform ios
92
94
  */
93
- tabBarSystemItem?: TabsSystemItem;
95
+ tabBarSystemItem?: TabsScreenSystemItem;
94
96
  /**
95
97
  * Title string of the tab displayed in the tab bar
96
98
  *
@@ -194,6 +196,14 @@ export type NativeBottomTabNavigationOptions = NativeHeaderOptions & {
194
196
  */
195
197
  display?: 'flex' | 'none';
196
198
  };
199
+ /**
200
+ * Whether this tab can be selected.
201
+ * When `false`, tapping on the tab in tab bar won't select the tab.
202
+ * Custom behavior can be implemented by listening to `tabPress` event.
203
+ *
204
+ * Defaults to `true`.
205
+ */
206
+ tabBarSelectionEnabled?: boolean;
197
207
  /**
198
208
  * Blur effect applied to the tab bar when tab screen is selected.
199
209
  *
@@ -1 +1 @@
1
- {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../../../src/unstable/types.tsx"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../../../src/unstable/types.tsx"],"names":[],"mappings":"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"}
package/package.json CHANGED
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "name": "@react-navigation/bottom-tabs",
3
3
  "description": "Bottom tab navigator following iOS design guidelines",
4
- "version": "7.15.13",
4
+ "version": "7.16.0",
5
5
  "keywords": [
6
6
  "react-native-component",
7
7
  "react-component",
@@ -61,7 +61,7 @@
61
61
  "react-native": "0.81.5",
62
62
  "react-native-builder-bob": "^0.40.17",
63
63
  "react-native-safe-area-context": "~5.6.0",
64
- "react-native-screens": "^4.24.0",
64
+ "react-native-screens": "^4.25.0",
65
65
  "react-test-renderer": "19.1.0",
66
66
  "typescript": "^5.9.2"
67
67
  },
@@ -90,5 +90,5 @@
90
90
  ]
91
91
  ]
92
92
  },
93
- "gitHead": "01ae31e084223989654cbaafeffc88b4448b5d4f"
93
+ "gitHead": "b5b1f7cc35c17b5ef113db0fdcd27794f52a48cc"
94
94
  }
@@ -15,11 +15,22 @@ import {
15
15
  } from '@react-navigation/native';
16
16
  import Color from 'color';
17
17
  import * as React from 'react';
18
- import { type ColorValue, Platform, PlatformColor } from 'react-native';
19
18
  import {
20
- type PlatformIcon,
19
+ type ColorValue,
20
+ type NativeSyntheticEvent,
21
+ Platform,
22
+ PlatformColor,
23
+ } from 'react-native';
24
+ import {
25
+ type PlatformIconAndroid,
26
+ type PlatformIconIOS,
27
+ type PlatformIconShared,
21
28
  Tabs,
22
- type TabsScreenItemStateAppearance,
29
+ type TabsBottomAccessoryEnvironment,
30
+ type TabSelectedEvent,
31
+ type TabSelectionRejectedEvent,
32
+ type TabsScreenItemStateAppearanceAndroid,
33
+ type TabsScreenItemStateAppearanceIOS,
23
34
  } from 'react-native-screens';
24
35
 
25
36
  import { NativeScreen } from './NativeScreen/NativeScreen';
@@ -38,14 +49,57 @@ type Props = NativeBottomTabNavigationConfig & {
38
49
  descriptors: NativeBottomTabDescriptorMap;
39
50
  };
40
51
 
52
+ type PlatformIcon = {
53
+ ios?: PlatformIconIOS;
54
+ android?: PlatformIconAndroid;
55
+ shared?: PlatformIconShared;
56
+ };
57
+
58
+ type TabSelectionPreventedEvent = {
59
+ selectedScreenKey: string;
60
+ provenance: number;
61
+ preventedScreenKey: string;
62
+ };
63
+
64
+ type ConfirmedState = {
65
+ routeKey: string;
66
+ provenance: number;
67
+ };
68
+
69
+ type NativeState = {
70
+ confirmed: ConfirmedState;
71
+ };
72
+
73
+ type NativeAction = { type: 'CONFIRM_STATE'; confirmed: ConfirmedState };
74
+
41
75
  const meta = {
42
76
  type: 'native-tabs',
43
77
  };
44
78
 
79
+ function reducer(state: NativeState, action: NativeAction): NativeState {
80
+ switch (action.type) {
81
+ case 'CONFIRM_STATE':
82
+ return state.confirmed.routeKey === action.confirmed.routeKey &&
83
+ state.confirmed.provenance === action.confirmed.provenance
84
+ ? state
85
+ : {
86
+ ...state,
87
+ confirmed: action.confirmed,
88
+ };
89
+ }
90
+ }
91
+
45
92
  export function NativeBottomTabView({ state, navigation, descriptors }: Props) {
46
93
  const { dark, colors, fonts } = useTheme();
47
94
 
48
95
  const focusedRouteKey = state.routes[state.index].key;
96
+ const [nativeState, dispatch] = React.useReducer(reducer, {
97
+ confirmed: {
98
+ routeKey: focusedRouteKey,
99
+ provenance: 0,
100
+ },
101
+ });
102
+
49
103
  const previousRouteKeyRef = React.useRef(focusedRouteKey);
50
104
 
51
105
  React.useEffect(() => {
@@ -71,6 +125,115 @@ export function NativeBottomTabView({ state, navigation, descriptors }: Props) {
71
125
  previousRouteKeyRef.current = focusedRouteKey;
72
126
  }, [descriptors, focusedRouteKey, navigation, state.index, state.routes]);
73
127
 
128
+ const navigate = (
129
+ route: (typeof state.routes)[number],
130
+ confirmed: ConfirmedState
131
+ ) => {
132
+ dispatch({
133
+ type: 'CONFIRM_STATE',
134
+ confirmed,
135
+ });
136
+
137
+ navigation.dispatch({
138
+ ...CommonActions.navigate(route.name, route.params),
139
+ target: state.key,
140
+ });
141
+ };
142
+
143
+ // Native tabs are the source of truth for the selected tab.
144
+ // JS sends a requested tab with the native provenance it was based on.
145
+ // Native replies with the selected tab and its new provenance.
146
+ const onTabSelected = (event: NativeSyntheticEvent<TabSelectedEvent>) => {
147
+ const { selectedScreenKey, provenance, actionOrigin } = event.nativeEvent;
148
+
149
+ const confirmed = {
150
+ routeKey: selectedScreenKey,
151
+ provenance,
152
+ };
153
+
154
+ const route = state.routes.find((route) => route.key === selectedScreenKey);
155
+
156
+ if (!route) {
157
+ console.error(
158
+ `Received 'tabSelected' for route that doesn't exist: ${selectedScreenKey}`
159
+ );
160
+
161
+ return;
162
+ }
163
+
164
+ if (actionOrigin === 'user') {
165
+ navigation.emit({
166
+ type: 'tabPress',
167
+ target: route.key,
168
+ });
169
+ }
170
+
171
+ if (actionOrigin === 'programmatic-js' || focusedRouteKey === route.key) {
172
+ dispatch({
173
+ type: 'CONFIRM_STATE',
174
+ confirmed,
175
+ });
176
+
177
+ return;
178
+ }
179
+
180
+ navigate(route, confirmed);
181
+ };
182
+
183
+ // If native rejects a JS request, keep native as the source of truth
184
+ // and move JS back to the tab that native says is selected.
185
+ const onTabSelectionRejected = (
186
+ event: NativeSyntheticEvent<TabSelectionRejectedEvent>
187
+ ) => {
188
+ const { selectedScreenKey, provenance } = event.nativeEvent;
189
+
190
+ const confirmed = {
191
+ routeKey: selectedScreenKey,
192
+ provenance,
193
+ };
194
+
195
+ const route = state.routes.find((route) => route.key === selectedScreenKey);
196
+
197
+ if (!route) {
198
+ console.error(
199
+ `Received 'tabSelectionRejected' for route that doesn't exist: ${selectedScreenKey}`
200
+ );
201
+
202
+ return;
203
+ }
204
+
205
+ if (focusedRouteKey === route.key) {
206
+ dispatch({
207
+ type: 'CONFIRM_STATE',
208
+ confirmed,
209
+ });
210
+
211
+ return;
212
+ }
213
+
214
+ navigate(route, confirmed);
215
+ };
216
+
217
+ const onTabSelectionPrevented = (
218
+ event: NativeSyntheticEvent<TabSelectionPreventedEvent>
219
+ ) => {
220
+ const { selectedScreenKey, provenance, preventedScreenKey } =
221
+ event.nativeEvent;
222
+
223
+ dispatch({
224
+ type: 'CONFIRM_STATE',
225
+ confirmed: {
226
+ routeKey: selectedScreenKey,
227
+ provenance,
228
+ },
229
+ });
230
+
231
+ navigation.emit({
232
+ type: 'tabPress',
233
+ target: preventedScreenKey,
234
+ });
235
+ };
236
+
74
237
  const currentOptions = descriptors[state.routes[state.index].key]?.options;
75
238
 
76
239
  const {
@@ -150,58 +313,24 @@ export function NativeBottomTabView({ state, navigation, descriptors }: Props) {
150
313
  return (
151
314
  <SafeAreaProviderCompat>
152
315
  <Tabs.Host
153
- bottomAccessory={
154
- bottomAccessory
155
- ? (environment) => bottomAccessory({ placement: environment })
156
- : undefined
157
- }
316
+ navStateRequest={{
317
+ selectedScreenKey: focusedRouteKey,
318
+ baseProvenance: nativeState.confirmed.provenance,
319
+ }}
320
+ rejectStaleNavStateUpdates
321
+ onTabSelected={onTabSelected}
322
+ onTabSelectionRejected={onTabSelectionRejected}
323
+ onTabSelectionPrevented={onTabSelectionPrevented}
158
324
  tabBarHidden={shouldHideTabBar}
159
- tabBarItemLabelVisibilityMode={
160
- currentOptions?.tabBarLabelVisibilityMode
161
- }
162
- tabBarControllerMode={tabBarControllerMode}
163
- tabBarMinimizeBehavior={tabBarMinimizeBehavior}
164
- tabBarTintColor={activeTintColor}
165
- tabBarItemIconColor={inactiveTintColor}
166
- tabBarItemIconColorActive={activeTintColor}
167
- tabBarItemTitleFontColor={inactiveTintColor ?? fontColor}
168
- tabBarItemTitleFontColorActive={activeTintColor}
169
- tabBarItemTitleFontFamily={fontFamily}
170
- tabBarItemTitleFontWeight={fontWeight}
171
- tabBarItemTitleFontSize={fontSize}
172
- tabBarItemTitleFontSizeActive={fontSize}
173
- tabBarItemTitleFontStyle={fontStyle}
174
- tabBarBackgroundColor={
175
- currentOptions.tabBarStyle?.backgroundColor ?? colors.card
176
- }
177
- tabBarItemActiveIndicatorColor={activeIndicatorColor}
178
- tabBarItemActiveIndicatorEnabled={
179
- currentOptions?.tabBarActiveIndicatorEnabled
180
- }
181
- tabBarItemRippleColor={currentOptions?.tabBarRippleColor}
182
- experimentalControlNavigationStateInJS={false}
183
- onNativeFocusChange={(e) => {
184
- const route = state.routes.find(
185
- (route) => route.key === e.nativeEvent.tabKey
186
- );
187
-
188
- if (route) {
189
- navigation.emit({
190
- type: 'tabPress',
191
- target: route.key,
192
- });
193
-
194
- const isFocused =
195
- state.index ===
196
- state.routes.findIndex((r) => r.key === route.key);
197
-
198
- if (!isFocused) {
199
- navigation.dispatch({
200
- ...CommonActions.navigate(route.name, route.params),
201
- target: state.key,
202
- });
203
- }
204
- }
325
+ colorScheme={dark ? 'dark' : 'light'}
326
+ ios={{
327
+ bottomAccessory: bottomAccessory
328
+ ? (environment: TabsBottomAccessoryEnvironment) =>
329
+ bottomAccessory({ placement: environment })
330
+ : undefined,
331
+ tabBarControllerMode,
332
+ tabBarMinimizeBehavior,
333
+ tabBarTintColor: activeTintColor,
205
334
  }}
206
335
  >
207
336
  {state.routes.map((route, index) => {
@@ -213,6 +342,7 @@ export function NativeBottomTabView({ state, navigation, descriptors }: Props) {
213
342
  title,
214
343
  lazy = true,
215
344
  tabBarLabel,
345
+ tabBarSelectionEnabled,
216
346
  tabBarBadgeStyle,
217
347
  tabBarIcon,
218
348
  tabBarBadge,
@@ -244,7 +374,7 @@ export function NativeBottomTabView({ state, navigation, descriptors }: Props) {
244
374
  : 'white'
245
375
  : undefined);
246
376
 
247
- const tabItemAppearance: TabsScreenItemStateAppearance = {
377
+ const tabItemAppearance: TabsScreenItemStateAppearanceIOS = {
248
378
  tabBarItemTitleFontFamily: fontFamily,
249
379
  tabBarItemTitleFontSize: fontSize,
250
380
  tabBarItemTitleFontWeight: fontWeight,
@@ -254,6 +384,18 @@ export function NativeBottomTabView({ state, navigation, descriptors }: Props) {
254
384
  tabBarItemBadgeBackgroundColor: badgeBackgroundColor,
255
385
  };
256
386
 
387
+ const normalTabItemAppearance: TabsScreenItemStateAppearanceAndroid =
388
+ {
389
+ tabBarItemTitleFontColor: inactiveTintColor ?? fontColor,
390
+ tabBarItemIconColor: inactiveTintColor,
391
+ };
392
+
393
+ const selectedTabItemAppearance: TabsScreenItemStateAppearanceAndroid =
394
+ {
395
+ tabBarItemTitleFontColor: activeTintColor,
396
+ tabBarItemIconColor: activeTintColor,
397
+ };
398
+
257
399
  const icon =
258
400
  typeof tabBarIcon === 'function'
259
401
  ? getPlatformIcon(tabBarIcon({ focused: false }))
@@ -275,53 +417,72 @@ export function NativeBottomTabView({ state, navigation, descriptors }: Props) {
275
417
  onDidAppear={() => onTransitionEnd({ closing: false, route })}
276
418
  onDidDisappear={() => onTransitionEnd({ closing: true, route })}
277
419
  key={route.key}
278
- tabKey={route.key}
279
- icon={icon}
280
- selectedIcon={selectedIcon?.ios ?? selectedIcon?.shared}
281
- tabBarItemBadgeBackgroundColor={badgeBackgroundColor}
282
- tabBarItemBadgeTextColor={badgeTextColor}
420
+ screenKey={route.key}
421
+ preventNativeSelection={tabBarSelectionEnabled === false}
283
422
  badgeValue={tabBarBadge?.toString()}
284
- systemItem={tabBarSystemItem}
285
- isFocused={isFocused}
286
423
  title={tabTitle}
287
- scrollEdgeAppearance={{
288
- tabBarBackgroundColor,
289
- tabBarShadowColor,
290
- tabBarBlurEffect,
291
- stacked: {
292
- normal: tabItemAppearance,
293
- },
294
- inline: {
295
- normal: tabItemAppearance,
296
- },
297
- compactInline: {
298
- normal: tabItemAppearance,
299
- },
300
- }}
301
- standardAppearance={{
302
- tabBarBackgroundColor,
303
- tabBarShadowColor,
304
- tabBarBlurEffect,
305
- stacked: {
306
- normal: tabItemAppearance,
307
- },
308
- inline: {
309
- normal: tabItemAppearance,
310
- },
311
- compactInline: {
312
- normal: tabItemAppearance,
313
- },
314
- }}
315
424
  specialEffects={{
316
425
  repeatedTabSelection: {
317
426
  popToRoot: true,
318
427
  scrollToTop: true,
319
428
  },
320
429
  }}
321
- overrideScrollViewContentInsetAdjustmentBehavior={
322
- overrideScrollViewContentInsetAdjustmentBehavior
323
- }
324
- experimental_userInterfaceStyle={dark ? 'dark' : 'light'}
430
+ android={{
431
+ icon: icon?.android ?? icon?.shared,
432
+ selectedIcon: selectedIcon?.android ?? selectedIcon?.shared,
433
+ standardAppearance: {
434
+ tabBarBackgroundColor: tabBarBackgroundColor ?? colors.card,
435
+ tabBarItemRippleColor: currentOptions?.tabBarRippleColor,
436
+ tabBarItemLabelVisibilityMode:
437
+ currentOptions?.tabBarLabelVisibilityMode,
438
+ normal: normalTabItemAppearance,
439
+ selected: selectedTabItemAppearance,
440
+ tabBarItemActiveIndicatorColor: activeIndicatorColor,
441
+ tabBarItemActiveIndicatorEnabled:
442
+ currentOptions?.tabBarActiveIndicatorEnabled,
443
+ tabBarItemTitleFontFamily: fontFamily,
444
+ tabBarItemTitleFontWeight: fontWeight,
445
+ tabBarItemTitleSmallLabelFontSize: fontSize,
446
+ tabBarItemTitleLargeLabelFontSize: fontSize,
447
+ tabBarItemTitleFontStyle: fontStyle,
448
+ tabBarItemBadgeBackgroundColor: badgeBackgroundColor,
449
+ tabBarItemBadgeTextColor: badgeTextColor,
450
+ },
451
+ }}
452
+ ios={{
453
+ icon: icon?.ios ?? icon?.shared,
454
+ selectedIcon: selectedIcon?.ios ?? selectedIcon?.shared,
455
+ systemItem: tabBarSystemItem,
456
+ scrollEdgeAppearance: {
457
+ tabBarBackgroundColor,
458
+ tabBarShadowColor,
459
+ tabBarBlurEffect,
460
+ stacked: {
461
+ normal: tabItemAppearance,
462
+ },
463
+ inline: {
464
+ normal: tabItemAppearance,
465
+ },
466
+ compactInline: {
467
+ normal: tabItemAppearance,
468
+ },
469
+ },
470
+ standardAppearance: {
471
+ tabBarBackgroundColor,
472
+ tabBarShadowColor,
473
+ tabBarBlurEffect,
474
+ stacked: {
475
+ normal: tabItemAppearance,
476
+ },
477
+ inline: {
478
+ normal: tabItemAppearance,
479
+ },
480
+ compactInline: {
481
+ normal: tabItemAppearance,
482
+ },
483
+ },
484
+ overrideScrollViewContentInsetAdjustmentBehavior,
485
+ }}
325
486
  >
326
487
  <Lazy enabled={lazy} visible={isFocused || isPreloaded}>
327
488
  <ScreenWithHeader
@@ -97,7 +97,10 @@ const processBarButtonItems = (
97
97
  ...processedItem,
98
98
  menu: {
99
99
  ...processedItem.menu,
100
- singleSelection: !multiselectable,
100
+ singleSelection:
101
+ typeof multiselectable === 'boolean'
102
+ ? !multiselectable
103
+ : undefined,
101
104
  displayAsPalette: layout === 'palette',
102
105
  items: item.menu.items.map(getMenuItem),
103
106
  },
@@ -149,7 +152,8 @@ const getMenuItem = (
149
152
  title: label,
150
153
  displayAsPalette: layout === 'palette',
151
154
  displayInline: inline,
152
- singleSelection: !multiselectable,
155
+ singleSelection:
156
+ typeof multiselectable === 'boolean' ? !multiselectable : undefined,
153
157
  items: items.map(getMenuItem),
154
158
  };
155
159
  }
@@ -15,7 +15,7 @@ import type { EdgeInsets } from 'react-native-safe-area-context';
15
15
  import type {
16
16
  TabBarItemLabelVisibilityMode,
17
17
  TabsScreenBlurEffect,
18
- TabsSystemItem,
18
+ TabsScreenSystemItem,
19
19
  } from 'react-native-screens';
20
20
  import type { SFSymbol } from 'sf-symbols-typescript';
21
21
 
@@ -26,6 +26,8 @@ export type Layout = { width: number; height: number };
26
26
  export type NativeBottomTabNavigationEventMap = {
27
27
  /**
28
28
  * Event which fires on tapping on the tab in the tab bar.
29
+ *
30
+ * Use the `tabBarSelectionEnabled: false` option to prevent the tab from being selected.
29
31
  */
30
32
  tabPress: { data: undefined; canPreventDefault: false };
31
33
  /**
@@ -122,7 +124,7 @@ export type NativeBottomTabNavigationOptions = NativeHeaderOptions & {
122
124
  *
123
125
  * @platform ios
124
126
  */
125
- tabBarSystemItem?: TabsSystemItem;
127
+ tabBarSystemItem?: TabsScreenSystemItem;
126
128
 
127
129
  /**
128
130
  * Title string of the tab displayed in the tab bar
@@ -242,6 +244,15 @@ export type NativeBottomTabNavigationOptions = NativeHeaderOptions & {
242
244
  display?: 'flex' | 'none';
243
245
  };
244
246
 
247
+ /**
248
+ * Whether this tab can be selected.
249
+ * When `false`, tapping on the tab in tab bar won't select the tab.
250
+ * Custom behavior can be implemented by listening to `tabPress` event.
251
+ *
252
+ * Defaults to `true`.
253
+ */
254
+ tabBarSelectionEnabled?: boolean;
255
+
245
256
  /**
246
257
  * Blur effect applied to the tab bar when tab screen is selected.
247
258
  *