@react-navigation/bottom-tabs 8.0.0-alpha.0 → 8.0.0-alpha.10
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/lib/module/views/BottomTabBar.js +1 -1
- package/lib/module/views/BottomTabBar.js.map +1 -1
- package/lib/module/views/BottomTabItem.js +1 -1
- package/lib/module/views/BottomTabItem.js.map +1 -1
- package/lib/module/views/BottomTabViewNativeImpl.js +132 -25
- package/lib/module/views/BottomTabViewNativeImpl.js.map +1 -1
- package/lib/module/views/TabBarIcon.js +43 -13
- package/lib/module/views/TabBarIcon.js.map +1 -1
- package/lib/typescript/src/types.d.ts +57 -33
- package/lib/typescript/src/types.d.ts.map +1 -1
- package/lib/typescript/src/views/BottomTabItem.d.ts.map +1 -1
- package/lib/typescript/src/views/BottomTabViewNativeImpl.d.ts.map +1 -1
- package/lib/typescript/src/views/TabBarIcon.d.ts +1 -1
- package/lib/typescript/src/views/TabBarIcon.d.ts.map +1 -1
- package/package.json +7 -7
- package/src/types.tsx +67 -40
- package/src/views/BottomTabBar.tsx +1 -1
- package/src/views/BottomTabItem.tsx +1 -3
- package/src/views/BottomTabViewNativeImpl.tsx +196 -44
- package/src/views/TabBarIcon.tsx +45 -20
|
@@ -1,8 +1,8 @@
|
|
|
1
1
|
import type { HeaderOptions, PlatformPressable } from '@react-navigation/elements';
|
|
2
|
-
import type { DefaultNavigatorOptions, Descriptor, NavigationHelpers, NavigationProp, ParamListBase, RouteProp, TabActionHelpers, TabNavigationState, TabRouterOptions, Theme } from '@react-navigation/native';
|
|
2
|
+
import type { DefaultNavigatorOptions, Descriptor, MaterialSymbolProps, NavigationHelpers, NavigationProp, ParamListBase, RouteProp, TabActionHelpers, TabNavigationState, TabRouterOptions, Theme } from '@react-navigation/native';
|
|
3
3
|
import type * as React from 'react';
|
|
4
4
|
import type { Animated, ColorValue, GestureResponderEvent, ImageSourcePropType, StyleProp, TextStyle, ViewStyle } from 'react-native';
|
|
5
|
-
import type {
|
|
5
|
+
import type { TabBarItemLabelVisibilityMode, TabsScreenBlurEffect, TabsSystemItem } from 'react-native-screens';
|
|
6
6
|
import type { SFSymbol } from 'sf-symbols-typescript';
|
|
7
7
|
export type Variant = 'uikit' | 'material';
|
|
8
8
|
export type BottomTabNavigationEventMap = {
|
|
@@ -74,33 +74,40 @@ type IconImage = {
|
|
|
74
74
|
*/
|
|
75
75
|
tinted?: boolean;
|
|
76
76
|
};
|
|
77
|
-
type
|
|
77
|
+
type IconSfSymbol = {
|
|
78
78
|
/**
|
|
79
79
|
* - `sfSymbol` - Use an SF Symbol as the icon on iOS.
|
|
80
80
|
*/
|
|
81
81
|
type: 'sfSymbol';
|
|
82
82
|
/**
|
|
83
83
|
* Name of the SF Symbol to use as the icon.
|
|
84
|
-
*
|
|
85
|
-
* @platform ios
|
|
86
84
|
*/
|
|
87
85
|
name: SFSymbol;
|
|
88
86
|
};
|
|
89
|
-
type
|
|
87
|
+
type IconMaterialSymbol = {
|
|
90
88
|
/**
|
|
91
|
-
* - `
|
|
89
|
+
* - `materialSymbol` - Use a Material Symbol as the icon on Android.
|
|
92
90
|
*/
|
|
93
|
-
type: '
|
|
91
|
+
type: 'materialSymbol';
|
|
92
|
+
} & Pick<MaterialSymbolProps, 'name' | 'variant' | 'weight'>;
|
|
93
|
+
type IconResource = {
|
|
94
94
|
/**
|
|
95
|
-
*
|
|
96
|
-
|
|
97
|
-
|
|
95
|
+
* - `resource` - Use a resource from drawables on Android and xcassets asset catalog on iOS as the icon.
|
|
96
|
+
*/
|
|
97
|
+
type: 'resource';
|
|
98
|
+
/**
|
|
99
|
+
* Name of the drawable resource or xcasset to use as the icon.
|
|
98
100
|
*/
|
|
99
101
|
name: string;
|
|
102
|
+
/**
|
|
103
|
+
* Whether to apply tint color to the icon.
|
|
104
|
+
* Only supported with custom implementation.
|
|
105
|
+
*
|
|
106
|
+
* Defaults to `true`.
|
|
107
|
+
*/
|
|
108
|
+
tinted?: boolean;
|
|
100
109
|
};
|
|
101
|
-
type
|
|
102
|
-
type IconAndroid = IconAndroidDrawable | IconImage;
|
|
103
|
-
export type BottomTabIcon = IconIOS | IconAndroid;
|
|
110
|
+
export type BottomTabIcon = IconSfSymbol | IconMaterialSymbol | IconResource | IconImage;
|
|
104
111
|
type BottomTabCustomOptions = {
|
|
105
112
|
/**
|
|
106
113
|
* How the screen should animate when switching tabs.
|
|
@@ -144,19 +151,6 @@ type BottomTabCustomOptions = {
|
|
|
144
151
|
* Only supported with `custom` implementation.
|
|
145
152
|
*/
|
|
146
153
|
tabBarAllowFontScaling?: boolean;
|
|
147
|
-
/**
|
|
148
|
-
* Accessibility label for the tab button. This is read by the screen reader when the user taps the tab.
|
|
149
|
-
* It's recommended to set this if you don't have a label for the tab.
|
|
150
|
-
*
|
|
151
|
-
* Only supported with `custom` implementation.
|
|
152
|
-
*/
|
|
153
|
-
tabBarAccessibilityLabel?: string;
|
|
154
|
-
/**
|
|
155
|
-
* ID to locate this tab button in tests.
|
|
156
|
-
*
|
|
157
|
-
* Only supported with `custom` implementation.
|
|
158
|
-
*/
|
|
159
|
-
tabBarButtonTestID?: string;
|
|
160
154
|
/**
|
|
161
155
|
* Style object for the tab item container.
|
|
162
156
|
*
|
|
@@ -234,6 +228,7 @@ type BottomTabCustomOptions = {
|
|
|
234
228
|
*/
|
|
235
229
|
tabBarButton?: (props: BottomTabBarButtonProps) => React.ReactNode;
|
|
236
230
|
};
|
|
231
|
+
type ScrollEdgeEffect = 'auto' | 'hard' | 'soft' | 'hidden';
|
|
237
232
|
type BottomTabNativeOptions = {
|
|
238
233
|
/**
|
|
239
234
|
* Uses iOS built-in tab bar items with standard iOS styling and localized titles.
|
|
@@ -245,7 +240,7 @@ type BottomTabNativeOptions = {
|
|
|
245
240
|
*
|
|
246
241
|
* @platform ios
|
|
247
242
|
*/
|
|
248
|
-
tabBarSystemItem?:
|
|
243
|
+
tabBarSystemItem?: TabsSystemItem;
|
|
249
244
|
/**
|
|
250
245
|
* Blur effect applied to the tab bar when tab screen is selected.
|
|
251
246
|
*
|
|
@@ -266,14 +261,14 @@ type BottomTabNativeOptions = {
|
|
|
266
261
|
*
|
|
267
262
|
* @platform ios
|
|
268
263
|
*/
|
|
269
|
-
tabBarBlurEffect?:
|
|
264
|
+
tabBarBlurEffect?: TabsScreenBlurEffect;
|
|
270
265
|
/**
|
|
271
266
|
* Minimize behavior for the tab bar.
|
|
272
267
|
*
|
|
273
268
|
* The following values are currently supported:
|
|
274
269
|
*
|
|
275
270
|
* - `auto` - resolves to the system default minimize behavior
|
|
276
|
-
* - `
|
|
271
|
+
* - `none` - the tab bar does not minimize
|
|
277
272
|
* - `onScrollDown` - the tab bar minimizes when scrolling down and
|
|
278
273
|
* expands when scrolling back up
|
|
279
274
|
* - `onScrollUp` - the tab bar minimizes when scrolling up and expands
|
|
@@ -288,7 +283,7 @@ type BottomTabNativeOptions = {
|
|
|
288
283
|
*
|
|
289
284
|
* @platform ios
|
|
290
285
|
*/
|
|
291
|
-
tabBarMinimizeBehavior?:
|
|
286
|
+
tabBarMinimizeBehavior?: 'auto' | 'none' | 'onScrollDown' | 'onScrollUp';
|
|
292
287
|
/**
|
|
293
288
|
* Background color of the active indicator.
|
|
294
289
|
*
|
|
@@ -336,7 +331,7 @@ type BottomTabNativeOptions = {
|
|
|
336
331
|
*
|
|
337
332
|
* Edge effects can be configured for each edge separately. The following values are currently supported:
|
|
338
333
|
*
|
|
339
|
-
* - `
|
|
334
|
+
* - `auto` - the automatic scroll edge effect style,
|
|
340
335
|
* - `hard` - a scroll edge effect with a hard cutoff and dividing line,
|
|
341
336
|
* - `soft` - a soft-edged scroll edge effect,
|
|
342
337
|
* - `hidden` - no scroll edge effect.
|
|
@@ -355,6 +350,26 @@ type BottomTabNativeOptions = {
|
|
|
355
350
|
right?: ScrollEdgeEffect;
|
|
356
351
|
top?: ScrollEdgeEffect;
|
|
357
352
|
};
|
|
353
|
+
/**
|
|
354
|
+
* Specifies whether `contentInsetAdjustmentBehavior` of the `ScrollView`
|
|
355
|
+
* in the screen is automatically adjusted.
|
|
356
|
+
*
|
|
357
|
+
* `react-native`'s `ScrollView`s has `contentInsetAdjustmentBehavior` set to `never` by default.
|
|
358
|
+
* To provide a better UX, it is overridden to `automatic` - so it respects the tab bar.
|
|
359
|
+
* Otherwise, content can get hidden behind the tab bar as it's translucent on iOS 26+.
|
|
360
|
+
*
|
|
361
|
+
* Note that this only affects the `ScrollView` in first descendant chain of the screen,
|
|
362
|
+
* i.e., first view of each nested view is checked until a `ScrollView` is found.
|
|
363
|
+
*
|
|
364
|
+
* To disable this behavior for specific screens, set this option to `false`.
|
|
365
|
+
*
|
|
366
|
+
* Only supported with `native` implementation.
|
|
367
|
+
*
|
|
368
|
+
* Defaults to `true`.
|
|
369
|
+
*
|
|
370
|
+
* @platform ios
|
|
371
|
+
*/
|
|
372
|
+
overrideScrollViewContentInsetAdjustmentBehavior?: boolean;
|
|
358
373
|
};
|
|
359
374
|
export type BottomTabNavigationOptions = {
|
|
360
375
|
/**
|
|
@@ -452,7 +467,16 @@ export type BottomTabNavigationOptions = {
|
|
|
452
467
|
* Supported on iOS 18 and above with `native` implementation.
|
|
453
468
|
* Not supported on tvOS.
|
|
454
469
|
*/
|
|
455
|
-
tabBarControllerMode?:
|
|
470
|
+
tabBarControllerMode?: 'auto' | 'tabBar' | 'tabSidebar';
|
|
471
|
+
/**
|
|
472
|
+
* Accessibility label for the tab button. This is read by the screen reader when the user taps the tab.
|
|
473
|
+
* It's recommended to set this if you don't have a label for the tab.
|
|
474
|
+
*/
|
|
475
|
+
tabBarAccessibilityLabel?: string;
|
|
476
|
+
/**
|
|
477
|
+
* ID to locate this tab button in tests.
|
|
478
|
+
*/
|
|
479
|
+
tabBarButtonTestID?: string;
|
|
456
480
|
/**
|
|
457
481
|
* Style object for the tab bar container.
|
|
458
482
|
*/
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../../src/types.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,EACV,aAAa,EACb,iBAAiB,EAClB,MAAM,4BAA4B,CAAC;AACpC,OAAO,KAAK,EACV,uBAAuB,EACvB,UAAU,EACV,iBAAiB,EACjB,cAAc,EACd,aAAa,EACb,SAAS,EACT,gBAAgB,EAChB,kBAAkB,EAClB,gBAAgB,EAChB,KAAK,EACN,MAAM,0BAA0B,CAAC;AAClC,OAAO,KAAK,KAAK,KAAK,MAAM,OAAO,CAAC;AACpC,OAAO,KAAK,EACV,QAAQ,EACR,UAAU,EACV,qBAAqB,EACrB,mBAAmB,EACnB,SAAS,EACT,SAAS,EACT,SAAS,EACV,MAAM,cAAc,CAAC;AACtB,OAAO,KAAK,EACV,
|
|
1
|
+
{"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../../src/types.tsx"],"names":[],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"BottomTabItem.d.ts","sourceRoot":"","sources":["../../../../src/views/BottomTabItem.tsx"],"names":[],"mappings":"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
|
|
1
|
+
{"version":3,"file":"BottomTabItem.d.ts","sourceRoot":"","sources":["../../../../src/views/BottomTabItem.tsx"],"names":[],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"BottomTabViewNativeImpl.d.ts","sourceRoot":"","sources":["../../../../src/views/BottomTabViewNativeImpl.tsx"],"names":[],"mappings":"AAMA,OAAO,
|
|
1
|
+
{"version":3,"file":"BottomTabViewNativeImpl.d.ts","sourceRoot":"","sources":["../../../../src/views/BottomTabViewNativeImpl.tsx"],"names":[],"mappings":"AAMA,OAAO,EAIL,KAAK,aAAa,EAGlB,KAAK,kBAAkB,EAExB,MAAM,0BAA0B,CAAC;AAclC,OAAO,KAAK,EACV,sBAAsB,EAEtB,yBAAyB,EACzB,0BAA0B,EAC3B,MAAM,UAAU,CAAC;AAMlB,KAAK,KAAK,GAAG,yBAAyB,GAAG;IACvC,KAAK,EAAE,kBAAkB,CAAC,aAAa,CAAC,CAAC;IACzC,UAAU,EAAE,0BAA0B,CAAC;IACvC,WAAW,EAAE,sBAAsB,CAAC;CACrC,CAAC;AAWF,wBAAgB,mBAAmB,CAAC,EAClC,KAAK,EACL,UAAU,EACV,WAAW,EACX,MAAM,GACP,EAAE,KAAK,2CA2XP"}
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import type
|
|
1
|
+
import { type Route } from '@react-navigation/native';
|
|
2
2
|
import React from 'react';
|
|
3
3
|
import { type ColorValue, type StyleProp, type TextStyle, type ViewStyle } from 'react-native';
|
|
4
4
|
import type { BottomTabIcon } from '../types';
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"TabBarIcon.d.ts","sourceRoot":"","sources":["../../../../src/views/TabBarIcon.tsx"],"names":[],"mappings":"AAEA,OAAO,KAAK,
|
|
1
|
+
{"version":3,"file":"TabBarIcon.d.ts","sourceRoot":"","sources":["../../../../src/views/TabBarIcon.tsx"],"names":[],"mappings":"AAEA,OAAO,EAAkB,KAAK,KAAK,EAAY,MAAM,0BAA0B,CAAC;AAChF,OAAO,KAAK,MAAM,OAAO,CAAC;AAC1B,OAAO,EACL,KAAK,UAAU,EAEf,KAAK,SAAS,EAEd,KAAK,SAAS,EAEd,KAAK,SAAS,EACf,MAAM,cAAc,CAAC;AAEtB,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,UAAU,CAAC;AAE9C,MAAM,MAAM,eAAe,GAAG;IAC5B,KAAK,EAAE,KAAK,CAAC,MAAM,CAAC,CAAC;IACrB,OAAO,EAAE,OAAO,GAAG,UAAU,CAAC;IAC9B,IAAI,EAAE,SAAS,GAAG,SAAS,CAAC;IAC5B,KAAK,CAAC,EAAE,MAAM,GAAG,MAAM,CAAC;IACxB,UAAU,CAAC,EAAE,SAAS,CAAC,SAAS,CAAC,CAAC;IAClC,aAAa,EAAE,MAAM,CAAC;IACtB,eAAe,EAAE,MAAM,CAAC;IACxB,eAAe,EAAE,UAAU,CAAC;IAC5B,iBAAiB,EAAE,UAAU,CAAC;IAC9B,IAAI,EACA,aAAa,GACb,CAAC,CAAC,KAAK,EAAE;QACP,OAAO,EAAE,OAAO,CAAC;QACjB,KAAK,EAAE,UAAU,CAAC;QAClB,IAAI,EAAE,MAAM,CAAC;KACd,KAAK,aAAa,GAAG,KAAK,CAAC,SAAS,CAAC,CAAC;IAC3C,gBAAgB,CAAC,EAAE,OAAO,CAAC;IAC3B,KAAK,EAAE,SAAS,CAAC,SAAS,CAAC,CAAC;CAC7B,CAAC;AAcF,wBAAgB,UAAU,CAAC,EACzB,KAAK,EAAE,CAAC,EACR,OAAO,EACP,IAAI,EACJ,KAAK,EACL,UAAU,EACV,aAAa,EACb,eAAe,EACf,eAAe,EACf,iBAAiB,EACjB,IAAI,EACJ,gBAAgB,EAChB,KAAK,GACN,EAAE,eAAe,2CAwDjB"}
|
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": "8.0.0-alpha.
|
|
4
|
+
"version": "8.0.0-alpha.10",
|
|
5
5
|
"keywords": [
|
|
6
6
|
"react-native-component",
|
|
7
7
|
"react-component",
|
|
@@ -41,13 +41,13 @@
|
|
|
41
41
|
"clean": "del lib"
|
|
42
42
|
},
|
|
43
43
|
"dependencies": {
|
|
44
|
-
"@react-navigation/elements": "^3.0.0-alpha.
|
|
44
|
+
"@react-navigation/elements": "^3.0.0-alpha.10",
|
|
45
45
|
"color": "^4.2.3",
|
|
46
|
-
"sf-symbols-typescript": "^2.
|
|
46
|
+
"sf-symbols-typescript": "^2.2.0"
|
|
47
47
|
},
|
|
48
48
|
"devDependencies": {
|
|
49
49
|
"@jest/globals": "^30.0.0",
|
|
50
|
-
"@react-navigation/native": "^8.0.0-alpha.
|
|
50
|
+
"@react-navigation/native": "^8.0.0-alpha.10",
|
|
51
51
|
"@testing-library/react-native": "^13.2.1",
|
|
52
52
|
"@types/color": "^4.2.0",
|
|
53
53
|
"@types/react": "~19.1.10",
|
|
@@ -56,12 +56,12 @@
|
|
|
56
56
|
"react-native": "0.81.4",
|
|
57
57
|
"react-native-builder-bob": "^0.40.12",
|
|
58
58
|
"react-native-safe-area-context": "~5.6.0",
|
|
59
|
-
"react-native-screens": "^4.
|
|
59
|
+
"react-native-screens": "^4.21.0",
|
|
60
60
|
"react-test-renderer": "19.1.0",
|
|
61
61
|
"typescript": "^5.9.2"
|
|
62
62
|
},
|
|
63
63
|
"peerDependencies": {
|
|
64
|
-
"@react-navigation/native": "^8.0.0-alpha.
|
|
64
|
+
"@react-navigation/native": "^8.0.0-alpha.10",
|
|
65
65
|
"react": ">= 19.0.0",
|
|
66
66
|
"react-native": "*",
|
|
67
67
|
"react-native-safe-area-context": ">= 5.5.0",
|
|
@@ -85,5 +85,5 @@
|
|
|
85
85
|
]
|
|
86
86
|
]
|
|
87
87
|
},
|
|
88
|
-
"gitHead": "
|
|
88
|
+
"gitHead": "4bf35245d085655607d8c658407a4a0c8e641f8d"
|
|
89
89
|
}
|
package/src/types.tsx
CHANGED
|
@@ -5,6 +5,7 @@ import type {
|
|
|
5
5
|
import type {
|
|
6
6
|
DefaultNavigatorOptions,
|
|
7
7
|
Descriptor,
|
|
8
|
+
MaterialSymbolProps,
|
|
8
9
|
NavigationHelpers,
|
|
9
10
|
NavigationProp,
|
|
10
11
|
ParamListBase,
|
|
@@ -25,12 +26,9 @@ import type {
|
|
|
25
26
|
ViewStyle,
|
|
26
27
|
} from 'react-native';
|
|
27
28
|
import type {
|
|
28
|
-
BottomTabsScreenBlurEffect,
|
|
29
|
-
BottomTabsSystemItem,
|
|
30
|
-
ScrollEdgeEffect,
|
|
31
|
-
TabBarControllerMode,
|
|
32
29
|
TabBarItemLabelVisibilityMode,
|
|
33
|
-
|
|
30
|
+
TabsScreenBlurEffect,
|
|
31
|
+
TabsSystemItem,
|
|
34
32
|
} from 'react-native-screens';
|
|
35
33
|
import type { SFSymbol } from 'sf-symbols-typescript';
|
|
36
34
|
|
|
@@ -135,37 +133,47 @@ type IconImage = {
|
|
|
135
133
|
tinted?: boolean;
|
|
136
134
|
};
|
|
137
135
|
|
|
138
|
-
type
|
|
136
|
+
type IconSfSymbol = {
|
|
139
137
|
/**
|
|
140
138
|
* - `sfSymbol` - Use an SF Symbol as the icon on iOS.
|
|
141
139
|
*/
|
|
142
140
|
type: 'sfSymbol';
|
|
143
141
|
/**
|
|
144
142
|
* Name of the SF Symbol to use as the icon.
|
|
145
|
-
*
|
|
146
|
-
* @platform ios
|
|
147
143
|
*/
|
|
148
144
|
name: SFSymbol;
|
|
149
145
|
};
|
|
150
146
|
|
|
151
|
-
type
|
|
147
|
+
type IconMaterialSymbol = {
|
|
152
148
|
/**
|
|
153
|
-
* - `
|
|
149
|
+
* - `materialSymbol` - Use a Material Symbol as the icon on Android.
|
|
154
150
|
*/
|
|
155
|
-
type: '
|
|
151
|
+
type: 'materialSymbol';
|
|
152
|
+
} & Pick<MaterialSymbolProps, 'name' | 'variant' | 'weight'>;
|
|
153
|
+
|
|
154
|
+
type IconResource = {
|
|
156
155
|
/**
|
|
157
|
-
*
|
|
158
|
-
|
|
159
|
-
|
|
156
|
+
* - `resource` - Use a resource from drawables on Android and xcassets asset catalog on iOS as the icon.
|
|
157
|
+
*/
|
|
158
|
+
type: 'resource';
|
|
159
|
+
/**
|
|
160
|
+
* Name of the drawable resource or xcasset to use as the icon.
|
|
160
161
|
*/
|
|
161
162
|
name: string;
|
|
163
|
+
/**
|
|
164
|
+
* Whether to apply tint color to the icon.
|
|
165
|
+
* Only supported with custom implementation.
|
|
166
|
+
*
|
|
167
|
+
* Defaults to `true`.
|
|
168
|
+
*/
|
|
169
|
+
tinted?: boolean;
|
|
162
170
|
};
|
|
163
171
|
|
|
164
|
-
type
|
|
165
|
-
|
|
166
|
-
|
|
167
|
-
|
|
168
|
-
|
|
172
|
+
export type BottomTabIcon =
|
|
173
|
+
| IconSfSymbol
|
|
174
|
+
| IconMaterialSymbol
|
|
175
|
+
| IconResource
|
|
176
|
+
| IconImage;
|
|
169
177
|
|
|
170
178
|
type BottomTabCustomOptions = {
|
|
171
179
|
/**
|
|
@@ -215,21 +223,6 @@ type BottomTabCustomOptions = {
|
|
|
215
223
|
*/
|
|
216
224
|
tabBarAllowFontScaling?: boolean;
|
|
217
225
|
|
|
218
|
-
/**
|
|
219
|
-
* Accessibility label for the tab button. This is read by the screen reader when the user taps the tab.
|
|
220
|
-
* It's recommended to set this if you don't have a label for the tab.
|
|
221
|
-
*
|
|
222
|
-
* Only supported with `custom` implementation.
|
|
223
|
-
*/
|
|
224
|
-
tabBarAccessibilityLabel?: string;
|
|
225
|
-
|
|
226
|
-
/**
|
|
227
|
-
* ID to locate this tab button in tests.
|
|
228
|
-
*
|
|
229
|
-
* Only supported with `custom` implementation.
|
|
230
|
-
*/
|
|
231
|
-
tabBarButtonTestID?: string;
|
|
232
|
-
|
|
233
226
|
/**
|
|
234
227
|
* Style object for the tab item container.
|
|
235
228
|
*
|
|
@@ -318,6 +311,8 @@ type BottomTabCustomOptions = {
|
|
|
318
311
|
tabBarButton?: (props: BottomTabBarButtonProps) => React.ReactNode;
|
|
319
312
|
};
|
|
320
313
|
|
|
314
|
+
type ScrollEdgeEffect = 'auto' | 'hard' | 'soft' | 'hidden';
|
|
315
|
+
|
|
321
316
|
type BottomTabNativeOptions = {
|
|
322
317
|
/**
|
|
323
318
|
* Uses iOS built-in tab bar items with standard iOS styling and localized titles.
|
|
@@ -329,7 +324,7 @@ type BottomTabNativeOptions = {
|
|
|
329
324
|
*
|
|
330
325
|
* @platform ios
|
|
331
326
|
*/
|
|
332
|
-
tabBarSystemItem?:
|
|
327
|
+
tabBarSystemItem?: TabsSystemItem;
|
|
333
328
|
|
|
334
329
|
/**
|
|
335
330
|
* Blur effect applied to the tab bar when tab screen is selected.
|
|
@@ -351,7 +346,7 @@ type BottomTabNativeOptions = {
|
|
|
351
346
|
*
|
|
352
347
|
* @platform ios
|
|
353
348
|
*/
|
|
354
|
-
tabBarBlurEffect?:
|
|
349
|
+
tabBarBlurEffect?: TabsScreenBlurEffect;
|
|
355
350
|
|
|
356
351
|
/**
|
|
357
352
|
* Minimize behavior for the tab bar.
|
|
@@ -359,7 +354,7 @@ type BottomTabNativeOptions = {
|
|
|
359
354
|
* The following values are currently supported:
|
|
360
355
|
*
|
|
361
356
|
* - `auto` - resolves to the system default minimize behavior
|
|
362
|
-
* - `
|
|
357
|
+
* - `none` - the tab bar does not minimize
|
|
363
358
|
* - `onScrollDown` - the tab bar minimizes when scrolling down and
|
|
364
359
|
* expands when scrolling back up
|
|
365
360
|
* - `onScrollUp` - the tab bar minimizes when scrolling up and expands
|
|
@@ -374,7 +369,7 @@ type BottomTabNativeOptions = {
|
|
|
374
369
|
*
|
|
375
370
|
* @platform ios
|
|
376
371
|
*/
|
|
377
|
-
tabBarMinimizeBehavior?:
|
|
372
|
+
tabBarMinimizeBehavior?: 'auto' | 'none' | 'onScrollDown' | 'onScrollUp';
|
|
378
373
|
|
|
379
374
|
/**
|
|
380
375
|
* Background color of the active indicator.
|
|
@@ -426,7 +421,7 @@ type BottomTabNativeOptions = {
|
|
|
426
421
|
*
|
|
427
422
|
* Edge effects can be configured for each edge separately. The following values are currently supported:
|
|
428
423
|
*
|
|
429
|
-
* - `
|
|
424
|
+
* - `auto` - the automatic scroll edge effect style,
|
|
430
425
|
* - `hard` - a scroll edge effect with a hard cutoff and dividing line,
|
|
431
426
|
* - `soft` - a soft-edged scroll edge effect,
|
|
432
427
|
* - `hidden` - no scroll edge effect.
|
|
@@ -445,6 +440,27 @@ type BottomTabNativeOptions = {
|
|
|
445
440
|
right?: ScrollEdgeEffect;
|
|
446
441
|
top?: ScrollEdgeEffect;
|
|
447
442
|
};
|
|
443
|
+
|
|
444
|
+
/**
|
|
445
|
+
* Specifies whether `contentInsetAdjustmentBehavior` of the `ScrollView`
|
|
446
|
+
* in the screen is automatically adjusted.
|
|
447
|
+
*
|
|
448
|
+
* `react-native`'s `ScrollView`s has `contentInsetAdjustmentBehavior` set to `never` by default.
|
|
449
|
+
* To provide a better UX, it is overridden to `automatic` - so it respects the tab bar.
|
|
450
|
+
* Otherwise, content can get hidden behind the tab bar as it's translucent on iOS 26+.
|
|
451
|
+
*
|
|
452
|
+
* Note that this only affects the `ScrollView` in first descendant chain of the screen,
|
|
453
|
+
* i.e., first view of each nested view is checked until a `ScrollView` is found.
|
|
454
|
+
*
|
|
455
|
+
* To disable this behavior for specific screens, set this option to `false`.
|
|
456
|
+
*
|
|
457
|
+
* Only supported with `native` implementation.
|
|
458
|
+
*
|
|
459
|
+
* Defaults to `true`.
|
|
460
|
+
*
|
|
461
|
+
* @platform ios
|
|
462
|
+
*/
|
|
463
|
+
overrideScrollViewContentInsetAdjustmentBehavior?: boolean;
|
|
448
464
|
};
|
|
449
465
|
|
|
450
466
|
export type BottomTabNavigationOptions = {
|
|
@@ -558,7 +574,18 @@ export type BottomTabNavigationOptions = {
|
|
|
558
574
|
* Supported on iOS 18 and above with `native` implementation.
|
|
559
575
|
* Not supported on tvOS.
|
|
560
576
|
*/
|
|
561
|
-
tabBarControllerMode?:
|
|
577
|
+
tabBarControllerMode?: 'auto' | 'tabBar' | 'tabSidebar';
|
|
578
|
+
|
|
579
|
+
/**
|
|
580
|
+
* Accessibility label for the tab button. This is read by the screen reader when the user taps the tab.
|
|
581
|
+
* It's recommended to set this if you don't have a label for the tab.
|
|
582
|
+
*/
|
|
583
|
+
tabBarAccessibilityLabel?: string;
|
|
584
|
+
|
|
585
|
+
/**
|
|
586
|
+
* ID to locate this tab button in tests.
|
|
587
|
+
*/
|
|
588
|
+
tabBarButtonTestID?: string;
|
|
562
589
|
|
|
563
590
|
/**
|
|
564
591
|
* Style object for the tab bar container.
|
|
@@ -343,7 +343,7 @@ export function BottomTabBar({ state, navigation, descriptors, style }: Props) {
|
|
|
343
343
|
: { borderTopWidth: StyleSheet.hairlineWidth },
|
|
344
344
|
{
|
|
345
345
|
backgroundColor:
|
|
346
|
-
tabBarBackgroundElement != null ? 'transparent' : colors.
|
|
346
|
+
tabBarBackgroundElement != null ? 'transparent' : colors.background,
|
|
347
347
|
borderColor: colors.border,
|
|
348
348
|
},
|
|
349
349
|
sidebar
|
|
@@ -189,9 +189,7 @@ export function BottomTabItem({
|
|
|
189
189
|
const activeTintColor: ColorValue =
|
|
190
190
|
customActiveTintColor ??
|
|
191
191
|
(variant === 'uikit' && sidebar && horizontal
|
|
192
|
-
? Color(colors.primary)
|
|
193
|
-
? 'white'
|
|
194
|
-
: (Color(colors.primary)?.darken(0.71).string() ?? 'white')
|
|
192
|
+
? Color.foreground(colors.primary)
|
|
195
193
|
: colors.primary);
|
|
196
194
|
|
|
197
195
|
const inactiveTintColor: ColorValue =
|