@react-navigation/bottom-tabs 7.0.0-alpha.9 → 7.0.0-rc.1
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/commonjs/TransitionConfigs/SceneStyleInterpolators.js +11 -13
- package/lib/commonjs/TransitionConfigs/SceneStyleInterpolators.js.map +1 -1
- package/lib/commonjs/TransitionConfigs/TransitionPresets.js +6 -6
- package/lib/commonjs/TransitionConfigs/TransitionPresets.js.map +1 -1
- package/lib/commonjs/TransitionConfigs/TransitionSpecs.js +3 -3
- package/lib/commonjs/TransitionConfigs/TransitionSpecs.js.map +1 -1
- package/lib/commonjs/index.js +4 -4
- package/lib/commonjs/index.js.map +1 -1
- package/lib/commonjs/navigators/createBottomTabNavigator.js +20 -17
- package/lib/commonjs/navigators/createBottomTabNavigator.js.map +1 -1
- package/lib/commonjs/types.js.map +1 -1
- package/lib/commonjs/utils/BottomTabBarHeightCallbackContext.js +1 -1
- package/lib/commonjs/utils/BottomTabBarHeightCallbackContext.js.map +1 -1
- package/lib/commonjs/utils/BottomTabBarHeightContext.js +1 -1
- package/lib/commonjs/utils/BottomTabBarHeightContext.js.map +1 -1
- package/lib/commonjs/utils/useAnimatedHashMap.js +8 -10
- package/lib/commonjs/utils/useAnimatedHashMap.js.map +1 -1
- package/lib/commonjs/utils/useBottomTabBarHeight.js +1 -1
- package/lib/commonjs/utils/useBottomTabBarHeight.js.map +1 -1
- package/lib/commonjs/utils/useIsKeyboardShown.js +1 -1
- package/lib/commonjs/utils/useIsKeyboardShown.js.map +1 -1
- package/lib/commonjs/views/Badge.js +13 -15
- package/lib/commonjs/views/Badge.js.map +1 -1
- package/lib/commonjs/views/BottomTabBar.js +80 -82
- package/lib/commonjs/views/BottomTabBar.js.map +1 -1
- package/lib/commonjs/views/BottomTabItem.js +69 -59
- package/lib/commonjs/views/BottomTabItem.js.map +1 -1
- package/lib/commonjs/views/BottomTabView.js +71 -47
- package/lib/commonjs/views/BottomTabView.js.map +1 -1
- package/lib/commonjs/views/ScreenFallback.js +11 -13
- package/lib/commonjs/views/ScreenFallback.js.map +1 -1
- package/lib/commonjs/views/TabBarIcon.js +14 -15
- package/lib/commonjs/views/TabBarIcon.js.map +1 -1
- package/lib/module/TransitionConfigs/SceneStyleInterpolators.js +9 -11
- package/lib/module/TransitionConfigs/SceneStyleInterpolators.js.map +1 -1
- package/lib/module/TransitionConfigs/TransitionPresets.js +7 -7
- package/lib/module/TransitionConfigs/TransitionPresets.js.map +1 -1
- package/lib/module/TransitionConfigs/TransitionSpecs.js +2 -2
- package/lib/module/TransitionConfigs/TransitionSpecs.js.map +1 -1
- package/lib/module/index.js +2 -2
- package/lib/module/index.js.map +1 -1
- package/lib/module/navigators/createBottomTabNavigator.js +18 -15
- package/lib/module/navigators/createBottomTabNavigator.js.map +1 -1
- package/lib/module/types.js.map +1 -1
- package/lib/module/utils/BottomTabBarHeightCallbackContext.js.map +1 -1
- package/lib/module/utils/BottomTabBarHeightContext.js.map +1 -1
- package/lib/module/utils/useAnimatedHashMap.js +7 -9
- package/lib/module/utils/useAnimatedHashMap.js.map +1 -1
- package/lib/module/utils/useBottomTabBarHeight.js.map +1 -1
- package/lib/module/utils/useIsKeyboardShown.js.map +1 -1
- package/lib/module/views/Badge.js +11 -13
- package/lib/module/views/Badge.js.map +1 -1
- package/lib/module/views/BottomTabBar.js +81 -83
- package/lib/module/views/BottomTabBar.js.map +1 -1
- package/lib/module/views/BottomTabItem.js +68 -58
- package/lib/module/views/BottomTabItem.js.map +1 -1
- package/lib/module/views/BottomTabView.js +70 -46
- package/lib/module/views/BottomTabView.js.map +1 -1
- package/lib/module/views/ScreenFallback.js +10 -12
- package/lib/module/views/ScreenFallback.js.map +1 -1
- package/lib/module/views/TabBarIcon.js +13 -14
- package/lib/module/views/TabBarIcon.js.map +1 -1
- package/lib/typescript/src/TransitionConfigs/SceneStyleInterpolators.d.ts +2 -2
- package/lib/typescript/src/TransitionConfigs/SceneStyleInterpolators.d.ts.map +1 -1
- package/lib/typescript/src/TransitionConfigs/TransitionPresets.d.ts +1 -1
- package/lib/typescript/src/TransitionConfigs/TransitionPresets.d.ts.map +1 -1
- package/lib/typescript/src/TransitionConfigs/TransitionSpecs.d.ts +2 -2
- package/lib/typescript/src/TransitionConfigs/TransitionSpecs.d.ts.map +1 -1
- package/lib/typescript/src/index.d.ts +3 -3
- package/lib/typescript/src/index.d.ts.map +1 -1
- package/lib/typescript/src/navigators/createBottomTabNavigator.d.ts +14 -9
- package/lib/typescript/src/navigators/createBottomTabNavigator.d.ts.map +1 -1
- package/lib/typescript/src/types.d.ts +24 -11
- package/lib/typescript/src/types.d.ts.map +1 -1
- package/lib/typescript/src/views/BottomTabBar.d.ts +1 -5
- package/lib/typescript/src/views/BottomTabBar.d.ts.map +1 -1
- package/lib/typescript/src/views/BottomTabItem.d.ts +7 -1
- package/lib/typescript/src/views/BottomTabItem.d.ts.map +1 -1
- package/lib/typescript/src/views/BottomTabView.d.ts +1 -1
- package/lib/typescript/src/views/BottomTabView.d.ts.map +1 -1
- package/lib/typescript/src/views/ScreenFallback.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 +14 -14
- package/src/TransitionConfigs/SceneStyleInterpolators.tsx +5 -5
- package/src/TransitionConfigs/TransitionPresets.tsx +7 -7
- package/src/TransitionConfigs/TransitionSpecs.tsx +2 -2
- package/src/index.tsx +3 -2
- package/src/navigators/createBottomTabNavigator.tsx +33 -7
- package/src/types.tsx +30 -10
- package/src/views/BottomTabBar.tsx +69 -53
- package/src/views/BottomTabItem.tsx +27 -3
- package/src/views/BottomTabView.tsx +98 -42
- package/src/views/TabBarIcon.tsx +1 -1
|
@@ -1,10 +1,10 @@
|
|
|
1
|
-
import * as
|
|
1
|
+
import * as SceneStyleInterpolators from './TransitionConfigs/SceneStyleInterpolators';
|
|
2
2
|
import * as TransitionPresets from './TransitionConfigs/TransitionPresets';
|
|
3
3
|
import * as TransitionSpecs from './TransitionConfigs/TransitionSpecs';
|
|
4
4
|
/**
|
|
5
5
|
* Transition Presets
|
|
6
6
|
*/
|
|
7
|
-
export {
|
|
7
|
+
export { SceneStyleInterpolators, TransitionPresets, TransitionSpecs };
|
|
8
8
|
/**
|
|
9
9
|
* Navigators
|
|
10
10
|
*/
|
|
@@ -23,5 +23,5 @@ export { useBottomTabBarHeight } from './utils/useBottomTabBarHeight';
|
|
|
23
23
|
/**
|
|
24
24
|
* Types
|
|
25
25
|
*/
|
|
26
|
-
export type { BottomTabBarButtonProps, BottomTabBarProps, BottomTabHeaderProps, BottomTabNavigationEventMap, BottomTabNavigationOptions, BottomTabNavigationProp, BottomTabScreenProps, } from './types';
|
|
26
|
+
export type { BottomTabBarButtonProps, BottomTabBarProps, BottomTabHeaderProps, BottomTabNavigationEventMap, BottomTabNavigationOptions, BottomTabNavigationProp, BottomTabOptionsArgs, BottomTabScreenProps, } from './types';
|
|
27
27
|
//# sourceMappingURL=index.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/index.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/index.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,uBAAuB,MAAM,6CAA6C,CAAC;AACvF,OAAO,KAAK,iBAAiB,MAAM,uCAAuC,CAAC;AAC3E,OAAO,KAAK,eAAe,MAAM,qCAAqC,CAAC;AAEvE;;GAEG;AACH,OAAO,EAAE,uBAAuB,EAAE,iBAAiB,EAAE,eAAe,EAAE,CAAC;AAEvE;;GAEG;AACH,OAAO,EAAE,wBAAwB,EAAE,MAAM,uCAAuC,CAAC;AAEjF;;GAEG;AACH,OAAO,EAAE,YAAY,EAAE,MAAM,sBAAsB,CAAC;AACpD,OAAO,EAAE,aAAa,EAAE,MAAM,uBAAuB,CAAC;AAEtD;;GAEG;AACH,OAAO,EAAE,iCAAiC,EAAE,MAAM,2CAA2C,CAAC;AAC9F,OAAO,EAAE,yBAAyB,EAAE,MAAM,mCAAmC,CAAC;AAC9E,OAAO,EAAE,qBAAqB,EAAE,MAAM,+BAA+B,CAAC;AAEtE;;GAEG;AACH,YAAY,EACV,uBAAuB,EACvB,iBAAiB,EACjB,oBAAoB,EACpB,2BAA2B,EAC3B,0BAA0B,EAC1B,uBAAuB,EACvB,oBAAoB,EACpB,oBAAoB,GACrB,MAAM,SAAS,CAAC"}
|
|
@@ -1,13 +1,18 @@
|
|
|
1
|
-
import { type DefaultNavigatorOptions, type ParamListBase, type TabNavigationState, type TabRouterOptions } from '@react-navigation/native';
|
|
1
|
+
import { type DefaultNavigatorOptions, type NavigatorTypeBagBase, type ParamListBase, type StaticConfig, type TabNavigationState, type TabRouterOptions, type TypedNavigator } from '@react-navigation/native';
|
|
2
2
|
import * as React from 'react';
|
|
3
|
-
import type { BottomTabNavigationConfig, BottomTabNavigationEventMap, BottomTabNavigationOptions } from '../types';
|
|
4
|
-
type Props = DefaultNavigatorOptions<ParamListBase, TabNavigationState<ParamListBase>, BottomTabNavigationOptions, BottomTabNavigationEventMap
|
|
5
|
-
declare function BottomTabNavigator({ id, initialRouteName, backBehavior, children, layout, screenListeners, screenOptions, sceneContainerStyle, ...rest }: Props): React.JSX.Element;
|
|
6
|
-
export declare
|
|
7
|
-
|
|
8
|
-
|
|
9
|
-
|
|
3
|
+
import type { BottomTabNavigationConfig, BottomTabNavigationEventMap, BottomTabNavigationOptions, BottomTabNavigationProp } from '../types';
|
|
4
|
+
type Props = DefaultNavigatorOptions<ParamListBase, string | undefined, TabNavigationState<ParamListBase>, BottomTabNavigationOptions, BottomTabNavigationEventMap, BottomTabNavigationProp<ParamListBase>> & TabRouterOptions & BottomTabNavigationConfig;
|
|
5
|
+
declare function BottomTabNavigator({ id, initialRouteName, backBehavior, children, layout, screenListeners, screenOptions, sceneContainerStyle, UNSTABLE_getStateForRouteNamesChange, ...rest }: Props): React.JSX.Element;
|
|
6
|
+
export declare function createBottomTabNavigator<ParamList extends ParamListBase, NavigatorID extends string | undefined = undefined, TypeBag extends NavigatorTypeBagBase = {
|
|
7
|
+
ParamList: ParamList;
|
|
8
|
+
NavigatorID: NavigatorID;
|
|
9
|
+
State: TabNavigationState<ParamList>;
|
|
10
|
+
ScreenOptions: BottomTabNavigationOptions;
|
|
11
|
+
EventMap: BottomTabNavigationEventMap;
|
|
12
|
+
NavigationList: {
|
|
13
|
+
[RouteName in keyof ParamList]: BottomTabNavigationProp<ParamList, RouteName, NavigatorID>;
|
|
10
14
|
};
|
|
11
|
-
|
|
15
|
+
Navigator: typeof BottomTabNavigator;
|
|
16
|
+
}, Config extends StaticConfig<TypeBag> | undefined = StaticConfig<TypeBag> | undefined>(config?: Config): TypedNavigator<TypeBag, Config>;
|
|
12
17
|
export {};
|
|
13
18
|
//# sourceMappingURL=createBottomTabNavigator.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"createBottomTabNavigator.d.ts","sourceRoot":"","sources":["../../../../src/navigators/createBottomTabNavigator.tsx"],"names":[],"mappings":"AAAA,OAAO,EAEL,KAAK,uBAAuB,EAC5B,KAAK,aAAa,
|
|
1
|
+
{"version":3,"file":"createBottomTabNavigator.d.ts","sourceRoot":"","sources":["../../../../src/navigators/createBottomTabNavigator.tsx"],"names":[],"mappings":"AAAA,OAAO,EAEL,KAAK,uBAAuB,EAC5B,KAAK,oBAAoB,EACzB,KAAK,aAAa,EAClB,KAAK,YAAY,EAEjB,KAAK,kBAAkB,EAEvB,KAAK,gBAAgB,EACrB,KAAK,cAAc,EAEpB,MAAM,0BAA0B,CAAC;AAClC,OAAO,KAAK,KAAK,MAAM,OAAO,CAAC;AAE/B,OAAO,KAAK,EACV,yBAAyB,EACzB,2BAA2B,EAC3B,0BAA0B,EAC1B,uBAAuB,EACxB,MAAM,UAAU,CAAC;AAGlB,KAAK,KAAK,GAAG,uBAAuB,CAClC,aAAa,EACb,MAAM,GAAG,SAAS,EAClB,kBAAkB,CAAC,aAAa,CAAC,EACjC,0BAA0B,EAC1B,2BAA2B,EAC3B,uBAAuB,CAAC,aAAa,CAAC,CACvC,GACC,gBAAgB,GAChB,yBAAyB,CAAC;AAE5B,iBAAS,kBAAkB,CAAC,EAC1B,EAAE,EACF,gBAAgB,EAChB,YAAY,EACZ,QAAQ,EACR,MAAM,EACN,eAAe,EACf,aAAa,EACb,mBAAmB,EACnB,oCAAoC,EACpC,GAAG,IAAI,EACR,EAAE,KAAK,qBA8BP;AAED,wBAAgB,wBAAwB,CACtC,SAAS,SAAS,aAAa,EAC/B,WAAW,SAAS,MAAM,GAAG,SAAS,GAAG,SAAS,EAClD,OAAO,SAAS,oBAAoB,GAAG;IACrC,SAAS,EAAE,SAAS,CAAC;IACrB,WAAW,EAAE,WAAW,CAAC;IACzB,KAAK,EAAE,kBAAkB,CAAC,SAAS,CAAC,CAAC;IACrC,aAAa,EAAE,0BAA0B,CAAC;IAC1C,QAAQ,EAAE,2BAA2B,CAAC;IACtC,cAAc,EAAE;SACb,SAAS,IAAI,MAAM,SAAS,GAAG,uBAAuB,CACrD,SAAS,EACT,SAAS,EACT,WAAW,CACZ;KACF,CAAC;IACF,SAAS,EAAE,OAAO,kBAAkB,CAAC;CACtC,EACD,MAAM,SAAS,YAAY,CAAC,OAAO,CAAC,GAAG,SAAS,GAC5C,YAAY,CAAC,OAAO,CAAC,GACrB,SAAS,EACb,MAAM,CAAC,EAAE,MAAM,GAAG,cAAc,CAAC,OAAO,EAAE,MAAM,CAAC,CAElD"}
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import type { HeaderOptions, PlatformPressable } from '@react-navigation/elements';
|
|
2
|
-
import type { Descriptor, NavigationHelpers, NavigationProp, ParamListBase, RouteProp, TabActionHelpers, TabNavigationState } from '@react-navigation/native';
|
|
2
|
+
import type { Descriptor, NavigationHelpers, NavigationProp, ParamListBase, RouteProp, TabActionHelpers, TabNavigationState, Theme } from '@react-navigation/native';
|
|
3
3
|
import type * as React from 'react';
|
|
4
4
|
import type { Animated, GestureResponderEvent, StyleProp, TextStyle, ViewStyle } from 'react-native';
|
|
5
5
|
import type { EdgeInsets } from 'react-native-safe-area-context';
|
|
@@ -29,6 +29,9 @@ export type BottomTabScreenProps<ParamList extends ParamListBase, RouteName exte
|
|
|
29
29
|
navigation: BottomTabNavigationProp<ParamList, RouteName, NavigatorID>;
|
|
30
30
|
route: RouteProp<ParamList, RouteName>;
|
|
31
31
|
};
|
|
32
|
+
export type BottomTabOptionsArgs<ParamList extends ParamListBase, RouteName extends keyof ParamList = keyof ParamList, NavigatorID extends string | undefined = undefined> = BottomTabScreenProps<ParamList, RouteName, NavigatorID> & {
|
|
33
|
+
theme: Theme;
|
|
34
|
+
};
|
|
32
35
|
export type TimingKeyboardAnimationConfig = {
|
|
33
36
|
animation: 'timing';
|
|
34
37
|
config?: Omit<Partial<Animated.TimingAnimationConfig>, 'toValue' | 'useNativeDriver'>;
|
|
@@ -38,6 +41,7 @@ export type SpringKeyboardAnimationConfig = {
|
|
|
38
41
|
config?: Omit<Partial<Animated.SpringAnimationConfig>, 'toValue' | 'useNativeDriver'>;
|
|
39
42
|
};
|
|
40
43
|
export type TabBarVisibilityAnimationConfig = TimingKeyboardAnimationConfig | SpringKeyboardAnimationConfig;
|
|
44
|
+
export type TabAnimationName = 'none' | 'fade' | 'shift';
|
|
41
45
|
export type BottomTabNavigationOptions = HeaderOptions & {
|
|
42
46
|
/**
|
|
43
47
|
* Title text for the screen.
|
|
@@ -173,10 +177,10 @@ export type BottomTabNavigationOptions = HeaderOptions & {
|
|
|
173
177
|
*/
|
|
174
178
|
headerShown?: boolean;
|
|
175
179
|
/**
|
|
176
|
-
* Whether
|
|
180
|
+
* Whether any nested stack should be popped to top when navigating away from the tab.
|
|
177
181
|
* Defaults to `false`.
|
|
178
182
|
*/
|
|
179
|
-
|
|
183
|
+
popToTopOnBlur?: boolean;
|
|
180
184
|
/**
|
|
181
185
|
* Whether inactive screens should be suspended from re-rendering. Defaults to `false`.
|
|
182
186
|
* Defaults to `true` when `enableFreeze()` is run at the top of the application.
|
|
@@ -186,10 +190,14 @@ export type BottomTabNavigationOptions = HeaderOptions & {
|
|
|
186
190
|
*/
|
|
187
191
|
freezeOnBlur?: boolean;
|
|
188
192
|
/**
|
|
189
|
-
*
|
|
190
|
-
*
|
|
193
|
+
* How the screen should animate when switching tabs.
|
|
194
|
+
*
|
|
195
|
+
* Supported values:
|
|
196
|
+
* - 'none': don't animate the screen (default)
|
|
197
|
+
* - 'fade': cross-fade the screens.
|
|
198
|
+
* - 'shift': shift the screens slightly shift to left/right.
|
|
191
199
|
*/
|
|
192
|
-
|
|
200
|
+
animation?: TabAnimationName;
|
|
193
201
|
/**
|
|
194
202
|
* Function which specifies interpolated styles for bottom-tab scenes.
|
|
195
203
|
*/
|
|
@@ -203,12 +211,17 @@ export type BottomTabDescriptor = Descriptor<BottomTabNavigationOptions, BottomT
|
|
|
203
211
|
export type BottomTabDescriptorMap = Record<string, BottomTabDescriptor>;
|
|
204
212
|
export type BottomTabSceneInterpolationProps = {
|
|
205
213
|
/**
|
|
206
|
-
*
|
|
207
|
-
* - -1 if the index is lower than active tab,
|
|
208
|
-
* - 0 if they're active,
|
|
209
|
-
* - 1 if the index is higher than active tab
|
|
214
|
+
* Values for the current screen.
|
|
210
215
|
*/
|
|
211
|
-
current:
|
|
216
|
+
current: {
|
|
217
|
+
/**
|
|
218
|
+
* Animated value for the current screen:
|
|
219
|
+
* - -1 if the index is lower than active tab,
|
|
220
|
+
* - 0 if they're active,
|
|
221
|
+
* - 1 if the index is higher than active tab
|
|
222
|
+
*/
|
|
223
|
+
progress: Animated.Value;
|
|
224
|
+
};
|
|
212
225
|
};
|
|
213
226
|
export type BottomTabSceneInterpolatedStyle = {
|
|
214
227
|
/**
|
|
@@ -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,UAAU,EACV,iBAAiB,EACjB,cAAc,EACd,aAAa,EACb,SAAS,EACT,gBAAgB,EAChB,kBAAkB,
|
|
1
|
+
{"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../../src/types.tsx"],"names":[],"mappings":"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"}
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
import { type ParamListBase, type TabNavigationState } from '@react-navigation/native';
|
|
2
2
|
import React from 'react';
|
|
3
3
|
import { Animated, type StyleProp, type ViewStyle } from 'react-native';
|
|
4
|
-
import type
|
|
4
|
+
import { type EdgeInsets } from 'react-native-safe-area-context';
|
|
5
5
|
import type { BottomTabBarProps, BottomTabDescriptorMap } from '../types';
|
|
6
6
|
type Props = BottomTabBarProps & {
|
|
7
7
|
style?: Animated.WithAnimatedValue<StyleProp<ViewStyle>>;
|
|
@@ -9,10 +9,6 @@ type Props = BottomTabBarProps & {
|
|
|
9
9
|
type Options = {
|
|
10
10
|
state: TabNavigationState<ParamListBase>;
|
|
11
11
|
descriptors: BottomTabDescriptorMap;
|
|
12
|
-
layout: {
|
|
13
|
-
height: number;
|
|
14
|
-
width: number;
|
|
15
|
-
};
|
|
16
12
|
dimensions: {
|
|
17
13
|
height: number;
|
|
18
14
|
width: number;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"BottomTabBar.d.ts","sourceRoot":"","sources":["../../../../src/views/BottomTabBar.tsx"],"names":[],"mappings":"AAKA,OAAO,EAIL,KAAK,aAAa,EAClB,KAAK,kBAAkB,
|
|
1
|
+
{"version":3,"file":"BottomTabBar.d.ts","sourceRoot":"","sources":["../../../../src/views/BottomTabBar.tsx"],"names":[],"mappings":"AAKA,OAAO,EAIL,KAAK,aAAa,EAClB,KAAK,kBAAkB,EAIxB,MAAM,0BAA0B,CAAC;AAElC,OAAO,KAAK,MAAM,OAAO,CAAC;AAC1B,OAAO,EACL,QAAQ,EAGR,KAAK,SAAS,EAGd,KAAK,SAAS,EACf,MAAM,cAAc,CAAC;AACtB,OAAO,EACL,KAAK,UAAU,EAEhB,MAAM,gCAAgC,CAAC;AAExC,OAAO,KAAK,EAAE,iBAAiB,EAAE,sBAAsB,EAAE,MAAM,UAAU,CAAC;AAK1E,KAAK,KAAK,GAAG,iBAAiB,GAAG;IAC/B,KAAK,CAAC,EAAE,QAAQ,CAAC,iBAAiB,CAAC,SAAS,CAAC,SAAS,CAAC,CAAC,CAAC;CAC1D,CAAC;AASF,KAAK,OAAO,GAAG;IACb,KAAK,EAAE,kBAAkB,CAAC,aAAa,CAAC,CAAC;IACzC,WAAW,EAAE,sBAAsB,CAAC;IACpC,UAAU,EAAE;QAAE,MAAM,EAAE,MAAM,CAAC;QAAC,KAAK,EAAE,MAAM,CAAA;KAAE,CAAC;CAC/C,CAAC;AA6CF,eAAO,MAAM,eAAe,+DAOzB,OAAO,GAAG;IACX,MAAM,EAAE,UAAU,CAAC;IACnB,KAAK,EAAE,QAAQ,CAAC,iBAAiB,CAAC,SAAS,CAAC,SAAS,CAAC,CAAC,GAAG,SAAS,CAAC;CACrE,WA8BA,CAAC;AAEF,wBAAgB,YAAY,CAAC,EAC3B,KAAK,EACL,UAAU,EACV,WAAW,EACX,MAAM,EACN,KAAK,GACN,EAAE,KAAK,qBA4SP"}
|
|
@@ -69,6 +69,12 @@ type Props = {
|
|
|
69
69
|
* Whether the label should be aligned with the icon horizontally.
|
|
70
70
|
*/
|
|
71
71
|
horizontal: boolean;
|
|
72
|
+
/**
|
|
73
|
+
* Variant of navigation bar styling
|
|
74
|
+
* - `uikit`: iOS UIKit style
|
|
75
|
+
* - `material`: Material Design style
|
|
76
|
+
*/
|
|
77
|
+
variant: 'uikit' | 'material';
|
|
72
78
|
/**
|
|
73
79
|
* Color for the icon and label when the item is active.
|
|
74
80
|
*/
|
|
@@ -106,6 +112,6 @@ type Props = {
|
|
|
106
112
|
*/
|
|
107
113
|
style?: StyleProp<ViewStyle>;
|
|
108
114
|
};
|
|
109
|
-
export declare function BottomTabItem({ route, href, focused, descriptor, label, icon, badge, badgeStyle, button, accessibilityLabel, testID, onPress, onLongPress, horizontal, activeTintColor: customActiveTintColor, inactiveTintColor: customInactiveTintColor, activeBackgroundColor, inactiveBackgroundColor, showLabel, allowFontScaling, labelStyle, iconStyle, style, }: Props): React.ReactElement
|
|
115
|
+
export declare function BottomTabItem({ route, href, focused, descriptor, label, icon, badge, badgeStyle, button, accessibilityLabel, testID, onPress, onLongPress, horizontal, variant, activeTintColor: customActiveTintColor, inactiveTintColor: customInactiveTintColor, activeBackgroundColor, inactiveBackgroundColor, showLabel, allowFontScaling, labelStyle, iconStyle, style, }: Props): React.ReactElement;
|
|
110
116
|
export {};
|
|
111
117
|
//# sourceMappingURL=BottomTabItem.d.ts.map
|
|
@@ -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,4 +1,4 @@
|
|
|
1
|
-
import type
|
|
1
|
+
import { type ParamListBase, type TabNavigationState } from '@react-navigation/native';
|
|
2
2
|
import * as React from 'react';
|
|
3
3
|
import type { BottomTabDescriptorMap, BottomTabNavigationConfig, BottomTabNavigationHelpers } from '../types';
|
|
4
4
|
type Props = BottomTabNavigationConfig & {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"BottomTabView.d.ts","sourceRoot":"","sources":["../../../../src/views/BottomTabView.tsx"],"names":[],"mappings":"AAMA,OAAO,KAAK,
|
|
1
|
+
{"version":3,"file":"BottomTabView.d.ts","sourceRoot":"","sources":["../../../../src/views/BottomTabView.tsx"],"names":[],"mappings":"AAMA,OAAO,EAEL,KAAK,aAAa,EAElB,KAAK,kBAAkB,EAExB,MAAM,0BAA0B,CAAC;AAClC,OAAO,KAAK,KAAK,MAAM,OAAO,CAAC;AAQ/B,OAAO,KAAK,EAEV,sBAAsB,EAEtB,yBAAyB,EACzB,0BAA0B,EAG3B,MAAM,UAAU,CAAC;AAOlB,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;AA6BF,wBAAgB,aAAa,CAAC,KAAK,EAAE,KAAK,qBA0QzC"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ScreenFallback.d.ts","sourceRoot":"","sources":["../../../../src/views/ScreenFallback.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,KAAK,MAAM,OAAO,CAAC;AAC/B,OAAO,EACL,QAAQ,EACR,KAAK,SAAS,EAEd,KAAK,SAAS,EACd,KAAK,SAAS,EACf,MAAM,cAAc,CAAC;AAEtB,KAAK,KAAK,GAAG;IACX,OAAO,EAAE,OAAO,CAAC;IACjB,MAAM,EAAE,CAAC,GAAG,CAAC,GAAG,CAAC,GAAG,QAAQ,CAAC,qBAAqB,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC;IAC1D,QAAQ,EAAE,KAAK,CAAC,SAAS,CAAC;IAC1B,YAAY,CAAC,EAAE,OAAO,CAAC;IACvB,KAAK,CAAC,EAAE,SAAS,CAAC,SAAS,CAAC,CAAC;CAC9B,CAAC;AAUF,eAAO,MAAM,oBAAoB;
|
|
1
|
+
{"version":3,"file":"ScreenFallback.d.ts","sourceRoot":"","sources":["../../../../src/views/ScreenFallback.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,KAAK,MAAM,OAAO,CAAC;AAC/B,OAAO,EACL,QAAQ,EACR,KAAK,SAAS,EAEd,KAAK,SAAS,EACd,KAAK,SAAS,EACf,MAAM,cAAc,CAAC;AAEtB,KAAK,KAAK,GAAG;IACX,OAAO,EAAE,OAAO,CAAC;IACjB,MAAM,EAAE,CAAC,GAAG,CAAC,GAAG,CAAC,GAAG,QAAQ,CAAC,qBAAqB,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC;IAC1D,QAAQ,EAAE,KAAK,CAAC,SAAS,CAAC;IAC1B,YAAY,CAAC,EAAE,OAAO,CAAC;IACvB,KAAK,CAAC,EAAE,SAAS,CAAC,SAAS,CAAC,CAAC;CAC9B,CAAC;AAUF,eAAO,MAAM,oBAAoB,yBAG9B,SAAS,GAAG;IACb,OAAO,EAAE,OAAO,CAAC;IACjB,YAAY,EAAE,OAAO,CAAC;IACtB,QAAQ,EAAE,KAAK,CAAC,SAAS,CAAC;CAC3B,sBAMA,CAAC;AAEF,wBAAgB,WAAW,CAAC,EAAE,OAAO,EAAE,MAAM,EAAE,GAAG,IAAI,EAAE,EAAE,SAAS,GAAG,KAAK,qBAQ1E"}
|
|
@@ -17,6 +17,6 @@ type Props = {
|
|
|
17
17
|
}) => React.ReactNode;
|
|
18
18
|
style: StyleProp<ViewStyle>;
|
|
19
19
|
};
|
|
20
|
-
export declare function TabBarIcon({ route, horizontal, badge, badgeStyle, activeOpacity, inactiveOpacity, activeTintColor, inactiveTintColor, renderIcon, style, }: Props): React.JSX.Element;
|
|
20
|
+
export declare function TabBarIcon({ route: _, horizontal, badge, badgeStyle, activeOpacity, inactiveOpacity, activeTintColor, inactiveTintColor, renderIcon, style, }: Props): React.JSX.Element;
|
|
21
21
|
export {};
|
|
22
22
|
//# sourceMappingURL=TabBarIcon.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"TabBarIcon.d.ts","sourceRoot":"","sources":["../../../../src/views/TabBarIcon.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,KAAK,EAAE,MAAM,0BAA0B,CAAC;AACtD,OAAO,KAAK,MAAM,OAAO,CAAC;AAC1B,OAAO,EACL,KAAK,SAAS,EAEd,KAAK,SAAS,EAEd,KAAK,SAAS,EACf,MAAM,cAAc,CAAC;AAItB,KAAK,KAAK,GAAG;IACX,KAAK,EAAE,KAAK,CAAC,MAAM,CAAC,CAAC;IACrB,UAAU,EAAE,OAAO,CAAC;IACpB,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,MAAM,CAAC;IACxB,iBAAiB,EAAE,MAAM,CAAC;IAC1B,UAAU,EAAE,CAAC,KAAK,EAAE;QAClB,OAAO,EAAE,OAAO,CAAC;QACjB,KAAK,EAAE,MAAM,CAAC;QACd,IAAI,EAAE,MAAM,CAAC;KACd,KAAK,KAAK,CAAC,SAAS,CAAC;IACtB,KAAK,EAAE,SAAS,CAAC,SAAS,CAAC,CAAC;CAC7B,CAAC;AAIF,wBAAgB,UAAU,CAAC,EACzB,
|
|
1
|
+
{"version":3,"file":"TabBarIcon.d.ts","sourceRoot":"","sources":["../../../../src/views/TabBarIcon.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,KAAK,EAAE,MAAM,0BAA0B,CAAC;AACtD,OAAO,KAAK,MAAM,OAAO,CAAC;AAC1B,OAAO,EACL,KAAK,SAAS,EAEd,KAAK,SAAS,EAEd,KAAK,SAAS,EACf,MAAM,cAAc,CAAC;AAItB,KAAK,KAAK,GAAG;IACX,KAAK,EAAE,KAAK,CAAC,MAAM,CAAC,CAAC;IACrB,UAAU,EAAE,OAAO,CAAC;IACpB,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,MAAM,CAAC;IACxB,iBAAiB,EAAE,MAAM,CAAC;IAC1B,UAAU,EAAE,CAAC,KAAK,EAAE;QAClB,OAAO,EAAE,OAAO,CAAC;QACjB,KAAK,EAAE,MAAM,CAAC;QACd,IAAI,EAAE,MAAM,CAAC;KACd,KAAK,KAAK,CAAC,SAAS,CAAC;IACtB,KAAK,EAAE,SAAS,CAAC,SAAS,CAAC,CAAC;CAC7B,CAAC;AAIF,wBAAgB,UAAU,CAAC,EACzB,KAAK,EAAE,CAAC,EACR,UAAU,EACV,KAAK,EACL,UAAU,EACV,aAAa,EACb,eAAe,EACf,eAAe,EACf,iBAAiB,EACjB,UAAU,EACV,KAAK,GACN,EAAE,KAAK,qBA8BP"}
|
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.0.0-
|
|
4
|
+
"version": "7.0.0-rc.1",
|
|
5
5
|
"keywords": [
|
|
6
6
|
"react-native-component",
|
|
7
7
|
"react-component",
|
|
@@ -36,28 +36,28 @@
|
|
|
36
36
|
"clean": "del lib"
|
|
37
37
|
},
|
|
38
38
|
"dependencies": {
|
|
39
|
-
"@react-navigation/elements": "^2.0.0-
|
|
39
|
+
"@react-navigation/elements": "^2.0.0-rc.0",
|
|
40
40
|
"color": "^4.2.3"
|
|
41
41
|
},
|
|
42
42
|
"devDependencies": {
|
|
43
|
-
"@react-navigation/native": "^7.0.0-
|
|
43
|
+
"@react-navigation/native": "^7.0.0-rc.0",
|
|
44
44
|
"@testing-library/react-native": "^12.4.3",
|
|
45
45
|
"@types/color": "^3.0.6",
|
|
46
|
-
"@types/react": "~18.2.
|
|
46
|
+
"@types/react": "~18.2.79",
|
|
47
47
|
"del-cli": "^5.1.0",
|
|
48
48
|
"react": "18.2.0",
|
|
49
|
-
"react-native": "0.
|
|
49
|
+
"react-native": "0.74.2",
|
|
50
50
|
"react-native-builder-bob": "^0.23.2",
|
|
51
|
-
"react-native-safe-area-context": "4.
|
|
52
|
-
"react-native-screens": "
|
|
53
|
-
"typescript": "^5.
|
|
51
|
+
"react-native-safe-area-context": "4.10.1",
|
|
52
|
+
"react-native-screens": "3.31.1",
|
|
53
|
+
"typescript": "^5.5.2"
|
|
54
54
|
},
|
|
55
55
|
"peerDependencies": {
|
|
56
|
-
"@react-navigation/native": "^7.0.0-
|
|
57
|
-
"react": "
|
|
58
|
-
"react-native": "0.
|
|
59
|
-
"react-native-safe-area-context": "4.
|
|
60
|
-
"react-native-screens": "
|
|
56
|
+
"@react-navigation/native": "^7.0.0-rc.0",
|
|
57
|
+
"react": ">= 18.2.0",
|
|
58
|
+
"react-native": ">= 0.72.0",
|
|
59
|
+
"react-native-safe-area-context": ">= 4.0.0",
|
|
60
|
+
"react-native-screens": ">= 3.0.0"
|
|
61
61
|
},
|
|
62
62
|
"react-native-builder-bob": {
|
|
63
63
|
"source": "src",
|
|
@@ -73,5 +73,5 @@
|
|
|
73
73
|
]
|
|
74
74
|
]
|
|
75
75
|
},
|
|
76
|
-
"gitHead": "
|
|
76
|
+
"gitHead": "6d3c36f8af3ebe324010429743be58d0db5fde78"
|
|
77
77
|
}
|
|
@@ -6,12 +6,12 @@ import type {
|
|
|
6
6
|
/**
|
|
7
7
|
* Simple cross fade animation
|
|
8
8
|
*/
|
|
9
|
-
export function
|
|
9
|
+
export function forFade({
|
|
10
10
|
current,
|
|
11
11
|
}: BottomTabSceneInterpolationProps): BottomTabSceneInterpolatedStyle {
|
|
12
12
|
return {
|
|
13
13
|
sceneStyle: {
|
|
14
|
-
opacity: current.interpolate({
|
|
14
|
+
opacity: current.progress.interpolate({
|
|
15
15
|
inputRange: [-1, 0, 1],
|
|
16
16
|
outputRange: [0, 1, 0],
|
|
17
17
|
}),
|
|
@@ -22,18 +22,18 @@ export function forCrossFade({
|
|
|
22
22
|
/**
|
|
23
23
|
* Animation where the screens slightly shift to left/right
|
|
24
24
|
*/
|
|
25
|
-
export function
|
|
25
|
+
export function forShift({
|
|
26
26
|
current,
|
|
27
27
|
}: BottomTabSceneInterpolationProps): BottomTabSceneInterpolatedStyle {
|
|
28
28
|
return {
|
|
29
29
|
sceneStyle: {
|
|
30
|
-
opacity: current.interpolate({
|
|
30
|
+
opacity: current.progress.interpolate({
|
|
31
31
|
inputRange: [-1, 0, 1],
|
|
32
32
|
outputRange: [0, 1, 0],
|
|
33
33
|
}),
|
|
34
34
|
transform: [
|
|
35
35
|
{
|
|
36
|
-
translateX: current.interpolate({
|
|
36
|
+
translateX: current.progress.interpolate({
|
|
37
37
|
inputRange: [-1, 0, 1],
|
|
38
38
|
outputRange: [-50, 0, 50],
|
|
39
39
|
}),
|
|
@@ -1,13 +1,13 @@
|
|
|
1
1
|
import type { BottomTabTransitionPreset } from '../types';
|
|
2
|
-
import {
|
|
3
|
-
import {
|
|
2
|
+
import { forFade, forShift } from './SceneStyleInterpolators';
|
|
3
|
+
import { FadeSpec, ShiftSpec } from './TransitionSpecs';
|
|
4
4
|
|
|
5
5
|
export const FadeTransition: BottomTabTransitionPreset = {
|
|
6
|
-
transitionSpec:
|
|
7
|
-
sceneStyleInterpolator:
|
|
6
|
+
transitionSpec: FadeSpec,
|
|
7
|
+
sceneStyleInterpolator: forFade,
|
|
8
8
|
};
|
|
9
9
|
|
|
10
|
-
export const
|
|
11
|
-
transitionSpec:
|
|
12
|
-
sceneStyleInterpolator:
|
|
10
|
+
export const ShiftTransition: BottomTabTransitionPreset = {
|
|
11
|
+
transitionSpec: ShiftSpec,
|
|
12
|
+
sceneStyleInterpolator: forShift,
|
|
13
13
|
};
|
|
@@ -2,7 +2,7 @@ import { Easing } from 'react-native';
|
|
|
2
2
|
|
|
3
3
|
import type { TransitionSpec } from '../types';
|
|
4
4
|
|
|
5
|
-
export const
|
|
5
|
+
export const FadeSpec: TransitionSpec = {
|
|
6
6
|
animation: 'timing',
|
|
7
7
|
config: {
|
|
8
8
|
duration: 150,
|
|
@@ -10,7 +10,7 @@ export const CrossFadeSpec: TransitionSpec = {
|
|
|
10
10
|
},
|
|
11
11
|
};
|
|
12
12
|
|
|
13
|
-
export const
|
|
13
|
+
export const ShiftSpec: TransitionSpec = {
|
|
14
14
|
animation: 'timing',
|
|
15
15
|
config: {
|
|
16
16
|
duration: 150,
|
package/src/index.tsx
CHANGED
|
@@ -1,11 +1,11 @@
|
|
|
1
|
-
import * as
|
|
1
|
+
import * as SceneStyleInterpolators from './TransitionConfigs/SceneStyleInterpolators';
|
|
2
2
|
import * as TransitionPresets from './TransitionConfigs/TransitionPresets';
|
|
3
3
|
import * as TransitionSpecs from './TransitionConfigs/TransitionSpecs';
|
|
4
4
|
|
|
5
5
|
/**
|
|
6
6
|
* Transition Presets
|
|
7
7
|
*/
|
|
8
|
-
export {
|
|
8
|
+
export { SceneStyleInterpolators, TransitionPresets, TransitionSpecs };
|
|
9
9
|
|
|
10
10
|
/**
|
|
11
11
|
* Navigators
|
|
@@ -35,5 +35,6 @@ export type {
|
|
|
35
35
|
BottomTabNavigationEventMap,
|
|
36
36
|
BottomTabNavigationOptions,
|
|
37
37
|
BottomTabNavigationProp,
|
|
38
|
+
BottomTabOptionsArgs,
|
|
38
39
|
BottomTabScreenProps,
|
|
39
40
|
} from './types';
|
|
@@ -1,11 +1,14 @@
|
|
|
1
1
|
import {
|
|
2
2
|
createNavigatorFactory,
|
|
3
3
|
type DefaultNavigatorOptions,
|
|
4
|
+
type NavigatorTypeBagBase,
|
|
4
5
|
type ParamListBase,
|
|
6
|
+
type StaticConfig,
|
|
5
7
|
type TabActionHelpers,
|
|
6
8
|
type TabNavigationState,
|
|
7
9
|
TabRouter,
|
|
8
10
|
type TabRouterOptions,
|
|
11
|
+
type TypedNavigator,
|
|
9
12
|
useNavigationBuilder,
|
|
10
13
|
} from '@react-navigation/native';
|
|
11
14
|
import * as React from 'react';
|
|
@@ -14,14 +17,17 @@ import type {
|
|
|
14
17
|
BottomTabNavigationConfig,
|
|
15
18
|
BottomTabNavigationEventMap,
|
|
16
19
|
BottomTabNavigationOptions,
|
|
20
|
+
BottomTabNavigationProp,
|
|
17
21
|
} from '../types';
|
|
18
22
|
import { BottomTabView } from '../views/BottomTabView';
|
|
19
23
|
|
|
20
24
|
type Props = DefaultNavigatorOptions<
|
|
21
25
|
ParamListBase,
|
|
26
|
+
string | undefined,
|
|
22
27
|
TabNavigationState<ParamListBase>,
|
|
23
28
|
BottomTabNavigationOptions,
|
|
24
|
-
BottomTabNavigationEventMap
|
|
29
|
+
BottomTabNavigationEventMap,
|
|
30
|
+
BottomTabNavigationProp<ParamListBase>
|
|
25
31
|
> &
|
|
26
32
|
TabRouterOptions &
|
|
27
33
|
BottomTabNavigationConfig;
|
|
@@ -35,6 +41,7 @@ function BottomTabNavigator({
|
|
|
35
41
|
screenListeners,
|
|
36
42
|
screenOptions,
|
|
37
43
|
sceneContainerStyle,
|
|
44
|
+
UNSTABLE_getStateForRouteNamesChange,
|
|
38
45
|
...rest
|
|
39
46
|
}: Props) {
|
|
40
47
|
const { state, descriptors, navigation, NavigationContent } =
|
|
@@ -52,6 +59,7 @@ function BottomTabNavigator({
|
|
|
52
59
|
layout,
|
|
53
60
|
screenListeners,
|
|
54
61
|
screenOptions,
|
|
62
|
+
UNSTABLE_getStateForRouteNamesChange,
|
|
55
63
|
});
|
|
56
64
|
|
|
57
65
|
return (
|
|
@@ -67,9 +75,27 @@ function BottomTabNavigator({
|
|
|
67
75
|
);
|
|
68
76
|
}
|
|
69
77
|
|
|
70
|
-
export
|
|
71
|
-
|
|
72
|
-
|
|
73
|
-
|
|
74
|
-
|
|
75
|
-
|
|
78
|
+
export function createBottomTabNavigator<
|
|
79
|
+
ParamList extends ParamListBase,
|
|
80
|
+
NavigatorID extends string | undefined = undefined,
|
|
81
|
+
TypeBag extends NavigatorTypeBagBase = {
|
|
82
|
+
ParamList: ParamList;
|
|
83
|
+
NavigatorID: NavigatorID;
|
|
84
|
+
State: TabNavigationState<ParamList>;
|
|
85
|
+
ScreenOptions: BottomTabNavigationOptions;
|
|
86
|
+
EventMap: BottomTabNavigationEventMap;
|
|
87
|
+
NavigationList: {
|
|
88
|
+
[RouteName in keyof ParamList]: BottomTabNavigationProp<
|
|
89
|
+
ParamList,
|
|
90
|
+
RouteName,
|
|
91
|
+
NavigatorID
|
|
92
|
+
>;
|
|
93
|
+
};
|
|
94
|
+
Navigator: typeof BottomTabNavigator;
|
|
95
|
+
},
|
|
96
|
+
Config extends StaticConfig<TypeBag> | undefined =
|
|
97
|
+
| StaticConfig<TypeBag>
|
|
98
|
+
| undefined,
|
|
99
|
+
>(config?: Config): TypedNavigator<TypeBag, Config> {
|
|
100
|
+
return createNavigatorFactory(BottomTabNavigator)(config);
|
|
101
|
+
}
|
package/src/types.tsx
CHANGED
|
@@ -10,6 +10,7 @@ import type {
|
|
|
10
10
|
RouteProp,
|
|
11
11
|
TabActionHelpers,
|
|
12
12
|
TabNavigationState,
|
|
13
|
+
Theme,
|
|
13
14
|
} from '@react-navigation/native';
|
|
14
15
|
import type * as React from 'react';
|
|
15
16
|
import type {
|
|
@@ -65,6 +66,14 @@ export type BottomTabScreenProps<
|
|
|
65
66
|
route: RouteProp<ParamList, RouteName>;
|
|
66
67
|
};
|
|
67
68
|
|
|
69
|
+
export type BottomTabOptionsArgs<
|
|
70
|
+
ParamList extends ParamListBase,
|
|
71
|
+
RouteName extends keyof ParamList = keyof ParamList,
|
|
72
|
+
NavigatorID extends string | undefined = undefined,
|
|
73
|
+
> = BottomTabScreenProps<ParamList, RouteName, NavigatorID> & {
|
|
74
|
+
theme: Theme;
|
|
75
|
+
};
|
|
76
|
+
|
|
68
77
|
export type TimingKeyboardAnimationConfig = {
|
|
69
78
|
animation: 'timing';
|
|
70
79
|
config?: Omit<
|
|
@@ -85,6 +94,8 @@ export type TabBarVisibilityAnimationConfig =
|
|
|
85
94
|
| TimingKeyboardAnimationConfig
|
|
86
95
|
| SpringKeyboardAnimationConfig;
|
|
87
96
|
|
|
97
|
+
export type TabAnimationName = 'none' | 'fade' | 'shift';
|
|
98
|
+
|
|
88
99
|
export type BottomTabNavigationOptions = HeaderOptions & {
|
|
89
100
|
/**
|
|
90
101
|
* Title text for the screen.
|
|
@@ -248,10 +259,10 @@ export type BottomTabNavigationOptions = HeaderOptions & {
|
|
|
248
259
|
headerShown?: boolean;
|
|
249
260
|
|
|
250
261
|
/**
|
|
251
|
-
* Whether
|
|
262
|
+
* Whether any nested stack should be popped to top when navigating away from the tab.
|
|
252
263
|
* Defaults to `false`.
|
|
253
264
|
*/
|
|
254
|
-
|
|
265
|
+
popToTopOnBlur?: boolean;
|
|
255
266
|
|
|
256
267
|
/**
|
|
257
268
|
* Whether inactive screens should be suspended from re-rendering. Defaults to `false`.
|
|
@@ -263,10 +274,14 @@ export type BottomTabNavigationOptions = HeaderOptions & {
|
|
|
263
274
|
freezeOnBlur?: boolean;
|
|
264
275
|
|
|
265
276
|
/**
|
|
266
|
-
*
|
|
267
|
-
*
|
|
277
|
+
* How the screen should animate when switching tabs.
|
|
278
|
+
*
|
|
279
|
+
* Supported values:
|
|
280
|
+
* - 'none': don't animate the screen (default)
|
|
281
|
+
* - 'fade': cross-fade the screens.
|
|
282
|
+
* - 'shift': shift the screens slightly shift to left/right.
|
|
268
283
|
*/
|
|
269
|
-
|
|
284
|
+
animation?: TabAnimationName;
|
|
270
285
|
|
|
271
286
|
/**
|
|
272
287
|
* Function which specifies interpolated styles for bottom-tab scenes.
|
|
@@ -289,12 +304,17 @@ export type BottomTabDescriptorMap = Record<string, BottomTabDescriptor>;
|
|
|
289
304
|
|
|
290
305
|
export type BottomTabSceneInterpolationProps = {
|
|
291
306
|
/**
|
|
292
|
-
*
|
|
293
|
-
* - -1 if the index is lower than active tab,
|
|
294
|
-
* - 0 if they're active,
|
|
295
|
-
* - 1 if the index is higher than active tab
|
|
307
|
+
* Values for the current screen.
|
|
296
308
|
*/
|
|
297
|
-
current:
|
|
309
|
+
current: {
|
|
310
|
+
/**
|
|
311
|
+
* Animated value for the current screen:
|
|
312
|
+
* - -1 if the index is lower than active tab,
|
|
313
|
+
* - 0 if they're active,
|
|
314
|
+
* - 1 if the index is higher than active tab
|
|
315
|
+
*/
|
|
316
|
+
progress: Animated.Value;
|
|
317
|
+
};
|
|
298
318
|
};
|
|
299
319
|
|
|
300
320
|
export type BottomTabSceneInterpolatedStyle = {
|