@react-navigation/bottom-tabs 7.0.0-alpha.13 → 7.0.0-alpha.15
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 +2 -2
- package/lib/commonjs/TransitionConfigs/SceneStyleInterpolators.js.map +1 -1
- package/lib/commonjs/TransitionConfigs/TransitionPresets.js +4 -4
- package/lib/commonjs/TransitionConfigs/TransitionPresets.js.map +1 -1
- package/lib/commonjs/TransitionConfigs/TransitionSpecs.js +2 -2
- package/lib/commonjs/TransitionConfigs/TransitionSpecs.js.map +1 -1
- package/lib/commonjs/views/BottomTabView.js +16 -6
- package/lib/commonjs/views/BottomTabView.js.map +1 -1
- package/lib/module/TransitionConfigs/SceneStyleInterpolators.js +1 -1
- package/lib/module/TransitionConfigs/SceneStyleInterpolators.js.map +1 -1
- package/lib/module/TransitionConfigs/TransitionPresets.js +5 -5
- package/lib/module/TransitionConfigs/TransitionPresets.js.map +1 -1
- package/lib/module/TransitionConfigs/TransitionSpecs.js +1 -1
- package/lib/module/TransitionConfigs/TransitionSpecs.js.map +1 -1
- package/lib/module/views/BottomTabView.js +17 -7
- package/lib/module/views/BottomTabView.js.map +1 -1
- package/lib/typescript/src/TransitionConfigs/SceneStyleInterpolators.d.ts +1 -1
- 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 +1 -1
- package/lib/typescript/src/TransitionConfigs/TransitionSpecs.d.ts.map +1 -1
- package/lib/typescript/src/types.d.ts +2 -2
- package/lib/typescript/src/types.d.ts.map +1 -1
- package/lib/typescript/src/views/BottomTabView.d.ts.map +1 -1
- package/package.json +2 -2
- package/src/TransitionConfigs/SceneStyleInterpolators.tsx +1 -1
- package/src/TransitionConfigs/TransitionPresets.tsx +5 -5
- package/src/TransitionConfigs/TransitionSpecs.tsx +1 -1
- package/src/types.tsx +2 -2
- package/src/views/BottomTabView.tsx +25 -8
|
@@ -4,7 +4,7 @@ Object.defineProperty(exports, "__esModule", {
|
|
|
4
4
|
value: true
|
|
5
5
|
});
|
|
6
6
|
exports.forFade = forFade;
|
|
7
|
-
exports.
|
|
7
|
+
exports.forShift = forShift;
|
|
8
8
|
/**
|
|
9
9
|
* Simple cross fade animation
|
|
10
10
|
*/
|
|
@@ -25,7 +25,7 @@ function forFade(_ref) {
|
|
|
25
25
|
/**
|
|
26
26
|
* Animation where the screens slightly shift to left/right
|
|
27
27
|
*/
|
|
28
|
-
function
|
|
28
|
+
function forShift(_ref2) {
|
|
29
29
|
let {
|
|
30
30
|
current
|
|
31
31
|
} = _ref2;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["forFade","_ref","current","sceneStyle","opacity","progress","interpolate","inputRange","outputRange","
|
|
1
|
+
{"version":3,"names":["forFade","_ref","current","sceneStyle","opacity","progress","interpolate","inputRange","outputRange","forShift","_ref2","transform","translateX"],"sourceRoot":"../../../src","sources":["TransitionConfigs/SceneStyleInterpolators.tsx"],"mappings":";;;;;;;AAKA;AACA;AACA;AACO,SAASA,OAAOA,CAAAC,IAAA,EAE+C;EAAA,IAF9C;IACtBC;EACgC,CAAC,GAAAD,IAAA;EACjC,OAAO;IACLE,UAAU,EAAE;MACVC,OAAO,EAAEF,OAAO,CAACG,QAAQ,CAACC,WAAW,CAAC;QACpCC,UAAU,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC;QACtBC,WAAW,EAAE,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC;MACvB,CAAC;IACH;EACF,CAAC;AACH;;AAEA;AACA;AACA;AACO,SAASC,QAAQA,CAAAC,KAAA,EAE8C;EAAA,IAF7C;IACvBR;EACgC,CAAC,GAAAQ,KAAA;EACjC,OAAO;IACLP,UAAU,EAAE;MACVC,OAAO,EAAEF,OAAO,CAACG,QAAQ,CAACC,WAAW,CAAC;QACpCC,UAAU,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC;QACtBC,WAAW,EAAE,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC;MACvB,CAAC,CAAC;MACFG,SAAS,EAAE,CACT;QACEC,UAAU,EAAEV,OAAO,CAACG,QAAQ,CAACC,WAAW,CAAC;UACvCC,UAAU,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC;UACtBC,WAAW,EAAE,CAAC,CAAC,EAAE,EAAE,CAAC,EAAE,EAAE;QAC1B,CAAC;MACH,CAAC;IAEL;EACF,CAAC;AACH"}
|
|
@@ -3,15 +3,15 @@
|
|
|
3
3
|
Object.defineProperty(exports, "__esModule", {
|
|
4
4
|
value: true
|
|
5
5
|
});
|
|
6
|
-
exports.
|
|
6
|
+
exports.ShiftTransition = exports.FadeTransition = void 0;
|
|
7
7
|
var _SceneStyleInterpolators = require("./SceneStyleInterpolators");
|
|
8
8
|
var _TransitionSpecs = require("./TransitionSpecs");
|
|
9
9
|
const FadeTransition = exports.FadeTransition = {
|
|
10
10
|
transitionSpec: _TransitionSpecs.CrossFadeSpec,
|
|
11
11
|
sceneStyleInterpolator: _SceneStyleInterpolators.forFade
|
|
12
12
|
};
|
|
13
|
-
const
|
|
14
|
-
transitionSpec: _TransitionSpecs.
|
|
15
|
-
sceneStyleInterpolator: _SceneStyleInterpolators.
|
|
13
|
+
const ShiftTransition = exports.ShiftTransition = {
|
|
14
|
+
transitionSpec: _TransitionSpecs.ShiftSpec,
|
|
15
|
+
sceneStyleInterpolator: _SceneStyleInterpolators.forShift
|
|
16
16
|
};
|
|
17
17
|
//# sourceMappingURL=TransitionPresets.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["_SceneStyleInterpolators","require","_TransitionSpecs","FadeTransition","exports","transitionSpec","CrossFadeSpec","sceneStyleInterpolator","forFade","
|
|
1
|
+
{"version":3,"names":["_SceneStyleInterpolators","require","_TransitionSpecs","FadeTransition","exports","transitionSpec","CrossFadeSpec","sceneStyleInterpolator","forFade","ShiftTransition","ShiftSpec","forShift"],"sourceRoot":"../../../src","sources":["TransitionConfigs/TransitionPresets.tsx"],"mappings":";;;;;;AACA,IAAAA,wBAAA,GAAAC,OAAA;AACA,IAAAC,gBAAA,GAAAD,OAAA;AAEO,MAAME,cAAyC,GAAAC,OAAA,CAAAD,cAAA,GAAG;EACvDE,cAAc,EAAEC,8BAAa;EAC7BC,sBAAsB,EAAEC;AAC1B,CAAC;AAEM,MAAMC,eAA0C,GAAAL,OAAA,CAAAK,eAAA,GAAG;EACxDJ,cAAc,EAAEK,0BAAS;EACzBH,sBAAsB,EAAEI;AAC1B,CAAC"}
|
|
@@ -3,7 +3,7 @@
|
|
|
3
3
|
Object.defineProperty(exports, "__esModule", {
|
|
4
4
|
value: true
|
|
5
5
|
});
|
|
6
|
-
exports.
|
|
6
|
+
exports.ShiftSpec = exports.CrossFadeSpec = void 0;
|
|
7
7
|
var _reactNative = require("react-native");
|
|
8
8
|
const CrossFadeSpec = exports.CrossFadeSpec = {
|
|
9
9
|
animation: 'timing',
|
|
@@ -12,7 +12,7 @@ const CrossFadeSpec = exports.CrossFadeSpec = {
|
|
|
12
12
|
easing: _reactNative.Easing.in(_reactNative.Easing.linear)
|
|
13
13
|
}
|
|
14
14
|
};
|
|
15
|
-
const
|
|
15
|
+
const ShiftSpec = exports.ShiftSpec = {
|
|
16
16
|
animation: 'timing',
|
|
17
17
|
config: {
|
|
18
18
|
duration: 150,
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["_reactNative","require","CrossFadeSpec","exports","animation","config","duration","easing","Easing","in","linear","
|
|
1
|
+
{"version":3,"names":["_reactNative","require","CrossFadeSpec","exports","animation","config","duration","easing","Easing","in","linear","ShiftSpec","inOut","ease"],"sourceRoot":"../../../src","sources":["TransitionConfigs/TransitionSpecs.tsx"],"mappings":";;;;;;AAAA,IAAAA,YAAA,GAAAC,OAAA;AAIO,MAAMC,aAA6B,GAAAC,OAAA,CAAAD,aAAA,GAAG;EAC3CE,SAAS,EAAE,QAAQ;EACnBC,MAAM,EAAE;IACNC,QAAQ,EAAE,GAAG;IACbC,MAAM,EAAEC,mBAAM,CAACC,EAAE,CAACD,mBAAM,CAACE,MAAM;EACjC;AACF,CAAC;AAEM,MAAMC,SAAyB,GAAAR,OAAA,CAAAQ,SAAA,GAAG;EACvCP,SAAS,EAAE,QAAQ;EACnBC,MAAM,EAAE;IACNC,QAAQ,EAAE,GAAG;IACbC,MAAM,EAAEC,mBAAM,CAACI,KAAK,CAACJ,mBAAM,CAACK,IAAI;EAClC;AACF,CAAC"}
|
|
@@ -23,13 +23,13 @@ const STATE_TRANSITIONING_OR_BELOW_TOP = 1;
|
|
|
23
23
|
const STATE_ON_TOP = 2;
|
|
24
24
|
const NAMED_TRANSITIONS_PRESETS = {
|
|
25
25
|
fade: _TransitionPresets.FadeTransition,
|
|
26
|
-
|
|
26
|
+
shift: _TransitionPresets.ShiftTransition,
|
|
27
27
|
none: {
|
|
28
28
|
sceneStyleInterpolator: undefined,
|
|
29
29
|
transitionSpec: {
|
|
30
30
|
animation: 'timing',
|
|
31
31
|
config: {
|
|
32
|
-
duration:
|
|
32
|
+
duration: 0
|
|
33
33
|
}
|
|
34
34
|
}
|
|
35
35
|
}
|
|
@@ -64,8 +64,11 @@ function BottomTabView(props) {
|
|
|
64
64
|
// Set the current tab to be loaded if it was not loaded before
|
|
65
65
|
setLoaded([...loaded, focusedRouteKey]);
|
|
66
66
|
}
|
|
67
|
+
const previousRouteKeyRef = React.useRef(focusedRouteKey);
|
|
67
68
|
const tabAnims = (0, _useAnimatedHashMap.useAnimatedHashMap)(state);
|
|
68
69
|
React.useEffect(() => {
|
|
70
|
+
const previousRouteKey = previousRouteKeyRef.current;
|
|
71
|
+
previousRouteKeyRef.current = focusedRouteKey;
|
|
69
72
|
const animateToIndex = () => {
|
|
70
73
|
_reactNative.Animated.parallel(state.routes.map((route, index) => {
|
|
71
74
|
const {
|
|
@@ -73,18 +76,25 @@ function BottomTabView(props) {
|
|
|
73
76
|
} = descriptors[route.key];
|
|
74
77
|
const {
|
|
75
78
|
animation = 'none',
|
|
76
|
-
transitionSpec = NAMED_TRANSITIONS_PRESETS[animation].transitionSpec
|
|
79
|
+
transitionSpec = NAMED_TRANSITIONS_PRESETS[animation].transitionSpec
|
|
77
80
|
} = options;
|
|
81
|
+
let spec = transitionSpec;
|
|
82
|
+
if (route.key !== previousRouteKey && route.key !== focusedRouteKey) {
|
|
83
|
+
// Don't animate if the screen is not previous one or new one
|
|
84
|
+
// This will avoid flicker for screens not involved in the transition
|
|
85
|
+
spec = NAMED_TRANSITIONS_PRESETS.none.transitionSpec;
|
|
86
|
+
}
|
|
87
|
+
spec = spec ?? NAMED_TRANSITIONS_PRESETS.none.transitionSpec;
|
|
78
88
|
const toValue = index === state.index ? 0 : index >= state.index ? 1 : -1;
|
|
79
|
-
return _reactNative.Animated[
|
|
80
|
-
...
|
|
89
|
+
return _reactNative.Animated[spec.animation](tabAnims[route.key], {
|
|
90
|
+
...spec.config,
|
|
81
91
|
toValue,
|
|
82
92
|
useNativeDriver: true
|
|
83
93
|
});
|
|
84
94
|
}).filter(Boolean)).start();
|
|
85
95
|
};
|
|
86
96
|
animateToIndex();
|
|
87
|
-
}, [descriptors, state.index, state.routes, tabAnims]);
|
|
97
|
+
}, [descriptors, focusedRouteKey, state.index, state.routes, tabAnims]);
|
|
88
98
|
const dimensions = _elements.SafeAreaProviderCompat.initialMetrics.frame;
|
|
89
99
|
const [tabBarHeight, setTabBarHeight] = React.useState(() => (0, _BottomTabBar.getTabBarHeight)({
|
|
90
100
|
state,
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["_elements","require","React","_interopRequireWildcard","_reactNative","_reactNativeSafeAreaContext","_TransitionPresets","_BottomTabBarHeightCallbackContext","_BottomTabBarHeightContext","_useAnimatedHashMap","_BottomTabBar","_ScreenFallback","_getRequireWildcardCache","e","WeakMap","r","t","__esModule","default","has","get","n","__proto__","a","Object","defineProperty","getOwnPropertyDescriptor","u","prototype","hasOwnProperty","call","i","set","_extends","assign","bind","target","arguments","length","source","key","apply","EPSILON","STATE_INACTIVE","STATE_TRANSITIONING_OR_BELOW_TOP","STATE_ON_TOP","NAMED_TRANSITIONS_PRESETS","fade","FadeTransition","shifting","ShiftingTransition","none","sceneStyleInterpolator","undefined","transitionSpec","animation","config","duration","hasAnimation","options","BottomTabView","props","tabBar","createElement","BottomTabBar","state","navigation","descriptors","safeAreaInsets","detachInactiveScreens","Platform","OS","sceneContainerStyle","focusedRouteKey","routes","index","loaded","setLoaded","useState","includes","tabAnims","useAnimatedHashMap","useEffect","animateToIndex","Animated","parallel","map","route","toValue","useNativeDriver","filter","Boolean","start","dimensions","SafeAreaProviderCompat","initialMetrics","frame","tabBarHeight","setTabBarHeight","getTabBarHeight","layout","width","height","insets","style","tabBarStyle","renderTabBar","SafeAreaInsetsContext","Consumer","top","right","bottom","left","hasTwoStates","some","tabBarPosition","styles","BottomTabBarHeightCallbackContext","Provider","value","MaybeScreenContainer","enabled","screens","descriptor","lazy","unmountOnBlur","isFocused","preloadedRouteKeys","freezeOnBlur","header","_ref","Header","title","getHeaderTitle","name","headerShown","headerStatusBarHeight","headerTransparent","sceneStyle","current","progress","animationEnabled","activityState","interpolate","inputRange","outputRange","extrapolate","MaybeScreen","StyleSheet","absoluteFill","zIndex","active","BottomTabBarHeightContext","Screen","focused","render","create","flexDirection","flex","overflow"],"sourceRoot":"../../../src","sources":["views/BottomTabView.tsx"],"mappings":"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"}
|
|
1
|
+
{"version":3,"names":["_elements","require","React","_interopRequireWildcard","_reactNative","_reactNativeSafeAreaContext","_TransitionPresets","_BottomTabBarHeightCallbackContext","_BottomTabBarHeightContext","_useAnimatedHashMap","_BottomTabBar","_ScreenFallback","_getRequireWildcardCache","e","WeakMap","r","t","__esModule","default","has","get","n","__proto__","a","Object","defineProperty","getOwnPropertyDescriptor","u","prototype","hasOwnProperty","call","i","set","_extends","assign","bind","target","arguments","length","source","key","apply","EPSILON","STATE_INACTIVE","STATE_TRANSITIONING_OR_BELOW_TOP","STATE_ON_TOP","NAMED_TRANSITIONS_PRESETS","fade","FadeTransition","shift","ShiftTransition","none","sceneStyleInterpolator","undefined","transitionSpec","animation","config","duration","hasAnimation","options","BottomTabView","props","tabBar","createElement","BottomTabBar","state","navigation","descriptors","safeAreaInsets","detachInactiveScreens","Platform","OS","sceneContainerStyle","focusedRouteKey","routes","index","loaded","setLoaded","useState","includes","previousRouteKeyRef","useRef","tabAnims","useAnimatedHashMap","useEffect","previousRouteKey","current","animateToIndex","Animated","parallel","map","route","spec","toValue","useNativeDriver","filter","Boolean","start","dimensions","SafeAreaProviderCompat","initialMetrics","frame","tabBarHeight","setTabBarHeight","getTabBarHeight","layout","width","height","insets","style","tabBarStyle","renderTabBar","SafeAreaInsetsContext","Consumer","top","right","bottom","left","hasTwoStates","some","tabBarPosition","styles","BottomTabBarHeightCallbackContext","Provider","value","MaybeScreenContainer","enabled","screens","descriptor","lazy","unmountOnBlur","isFocused","preloadedRouteKeys","freezeOnBlur","header","_ref","Header","title","getHeaderTitle","name","headerShown","headerStatusBarHeight","headerTransparent","sceneStyle","progress","animationEnabled","activityState","interpolate","inputRange","outputRange","extrapolate","MaybeScreen","StyleSheet","absoluteFill","zIndex","active","BottomTabBarHeightContext","Screen","focused","render","create","flexDirection","flex","overflow"],"sourceRoot":"../../../src","sources":["views/BottomTabView.tsx"],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["forFade","_ref","current","sceneStyle","opacity","progress","interpolate","inputRange","outputRange","
|
|
1
|
+
{"version":3,"names":["forFade","_ref","current","sceneStyle","opacity","progress","interpolate","inputRange","outputRange","forShift","_ref2","transform","translateX"],"sourceRoot":"../../../src","sources":["TransitionConfigs/SceneStyleInterpolators.tsx"],"mappings":"AAKA;AACA;AACA;AACA,OAAO,SAASA,OAAOA,CAAAC,IAAA,EAE+C;EAAA,IAF9C;IACtBC;EACgC,CAAC,GAAAD,IAAA;EACjC,OAAO;IACLE,UAAU,EAAE;MACVC,OAAO,EAAEF,OAAO,CAACG,QAAQ,CAACC,WAAW,CAAC;QACpCC,UAAU,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC;QACtBC,WAAW,EAAE,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC;MACvB,CAAC;IACH;EACF,CAAC;AACH;;AAEA;AACA;AACA;AACA,OAAO,SAASC,QAAQA,CAAAC,KAAA,EAE8C;EAAA,IAF7C;IACvBR;EACgC,CAAC,GAAAQ,KAAA;EACjC,OAAO;IACLP,UAAU,EAAE;MACVC,OAAO,EAAEF,OAAO,CAACG,QAAQ,CAACC,WAAW,CAAC;QACpCC,UAAU,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC;QACtBC,WAAW,EAAE,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC;MACvB,CAAC,CAAC;MACFG,SAAS,EAAE,CACT;QACEC,UAAU,EAAEV,OAAO,CAACG,QAAQ,CAACC,WAAW,CAAC;UACvCC,UAAU,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC;UACtBC,WAAW,EAAE,CAAC,CAAC,EAAE,EAAE,CAAC,EAAE,EAAE;QAC1B,CAAC;MACH,CAAC;IAEL;EACF,CAAC;AACH"}
|
|
@@ -1,11 +1,11 @@
|
|
|
1
|
-
import { forFade,
|
|
2
|
-
import { CrossFadeSpec,
|
|
1
|
+
import { forFade, forShift } from './SceneStyleInterpolators';
|
|
2
|
+
import { CrossFadeSpec, ShiftSpec } from './TransitionSpecs';
|
|
3
3
|
export const FadeTransition = {
|
|
4
4
|
transitionSpec: CrossFadeSpec,
|
|
5
5
|
sceneStyleInterpolator: forFade
|
|
6
6
|
};
|
|
7
|
-
export const
|
|
8
|
-
transitionSpec:
|
|
9
|
-
sceneStyleInterpolator:
|
|
7
|
+
export const ShiftTransition = {
|
|
8
|
+
transitionSpec: ShiftSpec,
|
|
9
|
+
sceneStyleInterpolator: forShift
|
|
10
10
|
};
|
|
11
11
|
//# sourceMappingURL=TransitionPresets.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["forFade","
|
|
1
|
+
{"version":3,"names":["forFade","forShift","CrossFadeSpec","ShiftSpec","FadeTransition","transitionSpec","sceneStyleInterpolator","ShiftTransition"],"sourceRoot":"../../../src","sources":["TransitionConfigs/TransitionPresets.tsx"],"mappings":"AACA,SAASA,OAAO,EAAEC,QAAQ,QAAQ,2BAA2B;AAC7D,SAASC,aAAa,EAAEC,SAAS,QAAQ,mBAAmB;AAE5D,OAAO,MAAMC,cAAyC,GAAG;EACvDC,cAAc,EAAEH,aAAa;EAC7BI,sBAAsB,EAAEN;AAC1B,CAAC;AAED,OAAO,MAAMO,eAA0C,GAAG;EACxDF,cAAc,EAAEF,SAAS;EACzBG,sBAAsB,EAAEL;AAC1B,CAAC"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["Easing","CrossFadeSpec","animation","config","duration","easing","in","linear","
|
|
1
|
+
{"version":3,"names":["Easing","CrossFadeSpec","animation","config","duration","easing","in","linear","ShiftSpec","inOut","ease"],"sourceRoot":"../../../src","sources":["TransitionConfigs/TransitionSpecs.tsx"],"mappings":"AAAA,SAASA,MAAM,QAAQ,cAAc;AAIrC,OAAO,MAAMC,aAA6B,GAAG;EAC3CC,SAAS,EAAE,QAAQ;EACnBC,MAAM,EAAE;IACNC,QAAQ,EAAE,GAAG;IACbC,MAAM,EAAEL,MAAM,CAACM,EAAE,CAACN,MAAM,CAACO,MAAM;EACjC;AACF,CAAC;AAED,OAAO,MAAMC,SAAyB,GAAG;EACvCN,SAAS,EAAE,QAAQ;EACnBC,MAAM,EAAE;IACNC,QAAQ,EAAE,GAAG;IACbC,MAAM,EAAEL,MAAM,CAACS,KAAK,CAACT,MAAM,CAACU,IAAI;EAClC;AACF,CAAC"}
|
|
@@ -3,7 +3,7 @@ import { getHeaderTitle, Header, SafeAreaProviderCompat, Screen } from '@react-n
|
|
|
3
3
|
import * as React from 'react';
|
|
4
4
|
import { Animated, Platform, StyleSheet } from 'react-native';
|
|
5
5
|
import { SafeAreaInsetsContext } from 'react-native-safe-area-context';
|
|
6
|
-
import { FadeTransition,
|
|
6
|
+
import { FadeTransition, ShiftTransition } from '../TransitionConfigs/TransitionPresets';
|
|
7
7
|
import { BottomTabBarHeightCallbackContext } from '../utils/BottomTabBarHeightCallbackContext';
|
|
8
8
|
import { BottomTabBarHeightContext } from '../utils/BottomTabBarHeightContext';
|
|
9
9
|
import { useAnimatedHashMap } from '../utils/useAnimatedHashMap';
|
|
@@ -15,13 +15,13 @@ const STATE_TRANSITIONING_OR_BELOW_TOP = 1;
|
|
|
15
15
|
const STATE_ON_TOP = 2;
|
|
16
16
|
const NAMED_TRANSITIONS_PRESETS = {
|
|
17
17
|
fade: FadeTransition,
|
|
18
|
-
|
|
18
|
+
shift: ShiftTransition,
|
|
19
19
|
none: {
|
|
20
20
|
sceneStyleInterpolator: undefined,
|
|
21
21
|
transitionSpec: {
|
|
22
22
|
animation: 'timing',
|
|
23
23
|
config: {
|
|
24
|
-
duration:
|
|
24
|
+
duration: 0
|
|
25
25
|
}
|
|
26
26
|
}
|
|
27
27
|
}
|
|
@@ -56,8 +56,11 @@ export function BottomTabView(props) {
|
|
|
56
56
|
// Set the current tab to be loaded if it was not loaded before
|
|
57
57
|
setLoaded([...loaded, focusedRouteKey]);
|
|
58
58
|
}
|
|
59
|
+
const previousRouteKeyRef = React.useRef(focusedRouteKey);
|
|
59
60
|
const tabAnims = useAnimatedHashMap(state);
|
|
60
61
|
React.useEffect(() => {
|
|
62
|
+
const previousRouteKey = previousRouteKeyRef.current;
|
|
63
|
+
previousRouteKeyRef.current = focusedRouteKey;
|
|
61
64
|
const animateToIndex = () => {
|
|
62
65
|
Animated.parallel(state.routes.map((route, index) => {
|
|
63
66
|
const {
|
|
@@ -65,18 +68,25 @@ export function BottomTabView(props) {
|
|
|
65
68
|
} = descriptors[route.key];
|
|
66
69
|
const {
|
|
67
70
|
animation = 'none',
|
|
68
|
-
transitionSpec = NAMED_TRANSITIONS_PRESETS[animation].transitionSpec
|
|
71
|
+
transitionSpec = NAMED_TRANSITIONS_PRESETS[animation].transitionSpec
|
|
69
72
|
} = options;
|
|
73
|
+
let spec = transitionSpec;
|
|
74
|
+
if (route.key !== previousRouteKey && route.key !== focusedRouteKey) {
|
|
75
|
+
// Don't animate if the screen is not previous one or new one
|
|
76
|
+
// This will avoid flicker for screens not involved in the transition
|
|
77
|
+
spec = NAMED_TRANSITIONS_PRESETS.none.transitionSpec;
|
|
78
|
+
}
|
|
79
|
+
spec = spec ?? NAMED_TRANSITIONS_PRESETS.none.transitionSpec;
|
|
70
80
|
const toValue = index === state.index ? 0 : index >= state.index ? 1 : -1;
|
|
71
|
-
return Animated[
|
|
72
|
-
...
|
|
81
|
+
return Animated[spec.animation](tabAnims[route.key], {
|
|
82
|
+
...spec.config,
|
|
73
83
|
toValue,
|
|
74
84
|
useNativeDriver: true
|
|
75
85
|
});
|
|
76
86
|
}).filter(Boolean)).start();
|
|
77
87
|
};
|
|
78
88
|
animateToIndex();
|
|
79
|
-
}, [descriptors, state.index, state.routes, tabAnims]);
|
|
89
|
+
}, [descriptors, focusedRouteKey, state.index, state.routes, tabAnims]);
|
|
80
90
|
const dimensions = SafeAreaProviderCompat.initialMetrics.frame;
|
|
81
91
|
const [tabBarHeight, setTabBarHeight] = React.useState(() => getTabBarHeight({
|
|
82
92
|
state,
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["getHeaderTitle","Header","SafeAreaProviderCompat","Screen","React","Animated","Platform","StyleSheet","SafeAreaInsetsContext","FadeTransition","
|
|
1
|
+
{"version":3,"names":["getHeaderTitle","Header","SafeAreaProviderCompat","Screen","React","Animated","Platform","StyleSheet","SafeAreaInsetsContext","FadeTransition","ShiftTransition","BottomTabBarHeightCallbackContext","BottomTabBarHeightContext","useAnimatedHashMap","BottomTabBar","getTabBarHeight","MaybeScreen","MaybeScreenContainer","EPSILON","STATE_INACTIVE","STATE_TRANSITIONING_OR_BELOW_TOP","STATE_ON_TOP","NAMED_TRANSITIONS_PRESETS","fade","shift","none","sceneStyleInterpolator","undefined","transitionSpec","animation","config","duration","hasAnimation","options","BottomTabView","props","tabBar","createElement","state","navigation","descriptors","safeAreaInsets","detachInactiveScreens","OS","sceneContainerStyle","focusedRouteKey","routes","index","key","loaded","setLoaded","useState","includes","previousRouteKeyRef","useRef","tabAnims","useEffect","previousRouteKey","current","animateToIndex","parallel","map","route","spec","toValue","useNativeDriver","filter","Boolean","start","dimensions","initialMetrics","frame","tabBarHeight","setTabBarHeight","layout","width","height","insets","style","tabBarStyle","renderTabBar","Consumer","top","right","bottom","left","hasTwoStates","some","tabBarPosition","styles","Provider","value","enabled","screens","descriptor","lazy","unmountOnBlur","isFocused","preloadedRouteKeys","freezeOnBlur","header","_ref","_extends","title","name","headerShown","headerStatusBarHeight","headerTransparent","sceneStyle","progress","animationEnabled","activityState","interpolate","inputRange","outputRange","extrapolate","absoluteFill","zIndex","active","focused","render","create","flexDirection","flex","overflow"],"sourceRoot":"../../../src","sources":["views/BottomTabView.tsx"],"mappings":"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"}
|
|
@@ -6,5 +6,5 @@ export declare function forFade({ current, }: BottomTabSceneInterpolationProps):
|
|
|
6
6
|
/**
|
|
7
7
|
* Animation where the screens slightly shift to left/right
|
|
8
8
|
*/
|
|
9
|
-
export declare function
|
|
9
|
+
export declare function forShift({ current, }: BottomTabSceneInterpolationProps): BottomTabSceneInterpolatedStyle;
|
|
10
10
|
//# sourceMappingURL=SceneStyleInterpolators.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"SceneStyleInterpolators.d.ts","sourceRoot":"","sources":["../../../../src/TransitionConfigs/SceneStyleInterpolators.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,EACV,+BAA+B,EAC/B,gCAAgC,EACjC,MAAM,UAAU,CAAC;AAElB;;GAEG;AACH,wBAAgB,OAAO,CAAC,EACtB,OAAO,GACR,EAAE,gCAAgC,GAAG,+BAA+B,CASpE;AAED;;GAEG;AACH,wBAAgB,
|
|
1
|
+
{"version":3,"file":"SceneStyleInterpolators.d.ts","sourceRoot":"","sources":["../../../../src/TransitionConfigs/SceneStyleInterpolators.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,EACV,+BAA+B,EAC/B,gCAAgC,EACjC,MAAM,UAAU,CAAC;AAElB;;GAEG;AACH,wBAAgB,OAAO,CAAC,EACtB,OAAO,GACR,EAAE,gCAAgC,GAAG,+BAA+B,CASpE;AAED;;GAEG;AACH,wBAAgB,QAAQ,CAAC,EACvB,OAAO,GACR,EAAE,gCAAgC,GAAG,+BAA+B,CAiBpE"}
|
|
@@ -1,4 +1,4 @@
|
|
|
1
1
|
import type { BottomTabTransitionPreset } from '../types';
|
|
2
2
|
export declare const FadeTransition: BottomTabTransitionPreset;
|
|
3
|
-
export declare const
|
|
3
|
+
export declare const ShiftTransition: BottomTabTransitionPreset;
|
|
4
4
|
//# sourceMappingURL=TransitionPresets.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"TransitionPresets.d.ts","sourceRoot":"","sources":["../../../../src/TransitionConfigs/TransitionPresets.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,yBAAyB,EAAE,MAAM,UAAU,CAAC;AAI1D,eAAO,MAAM,cAAc,EAAE,yBAG5B,CAAC;AAEF,eAAO,MAAM,
|
|
1
|
+
{"version":3,"file":"TransitionPresets.d.ts","sourceRoot":"","sources":["../../../../src/TransitionConfigs/TransitionPresets.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,yBAAyB,EAAE,MAAM,UAAU,CAAC;AAI1D,eAAO,MAAM,cAAc,EAAE,yBAG5B,CAAC;AAEF,eAAO,MAAM,eAAe,EAAE,yBAG7B,CAAC"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"TransitionSpecs.d.ts","sourceRoot":"","sources":["../../../../src/TransitionConfigs/TransitionSpecs.tsx"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,UAAU,CAAC;AAE/C,eAAO,MAAM,aAAa,EAAE,cAM3B,CAAC;AAEF,eAAO,MAAM,
|
|
1
|
+
{"version":3,"file":"TransitionSpecs.d.ts","sourceRoot":"","sources":["../../../../src/TransitionConfigs/TransitionSpecs.tsx"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,UAAU,CAAC;AAE/C,eAAO,MAAM,aAAa,EAAE,cAM3B,CAAC;AAEF,eAAO,MAAM,SAAS,EAAE,cAMvB,CAAC"}
|
|
@@ -38,7 +38,7 @@ export type SpringKeyboardAnimationConfig = {
|
|
|
38
38
|
config?: Omit<Partial<Animated.SpringAnimationConfig>, 'toValue' | 'useNativeDriver'>;
|
|
39
39
|
};
|
|
40
40
|
export type TabBarVisibilityAnimationConfig = TimingKeyboardAnimationConfig | SpringKeyboardAnimationConfig;
|
|
41
|
-
export type TabAnimationName = 'none' | 'fade' | '
|
|
41
|
+
export type TabAnimationName = 'none' | 'fade' | 'shift';
|
|
42
42
|
export type BottomTabNavigationOptions = HeaderOptions & {
|
|
43
43
|
/**
|
|
44
44
|
* Title text for the screen.
|
|
@@ -192,7 +192,7 @@ export type BottomTabNavigationOptions = HeaderOptions & {
|
|
|
192
192
|
* Supported values:
|
|
193
193
|
* - 'none': don't animate the screen (default)
|
|
194
194
|
* - 'fade': cross-fade the screens.
|
|
195
|
-
* - '
|
|
195
|
+
* - 'shift': shift the screens slightly shift to left/right.
|
|
196
196
|
*/
|
|
197
197
|
animation?: TabAnimationName;
|
|
198
198
|
/**
|
|
@@ -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,EACnB,MAAM,0BAA0B,CAAC;AAClC,OAAO,KAAK,KAAK,KAAK,MAAM,OAAO,CAAC;AACpC,OAAO,KAAK,EACV,QAAQ,EACR,qBAAqB,EACrB,SAAS,EACT,SAAS,EACT,SAAS,EACV,MAAM,cAAc,CAAC;AACtB,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,gCAAgC,CAAC;AAEjE,MAAM,MAAM,MAAM,GAAG;IAAE,KAAK,EAAE,MAAM,CAAC;IAAC,MAAM,EAAE,MAAM,CAAA;CAAE,CAAC;AAEvD,MAAM,MAAM,2BAA2B,GAAG;IACxC;;OAEG;IACH,QAAQ,EAAE;QAAE,IAAI,EAAE,SAAS,CAAC;QAAC,iBAAiB,EAAE,IAAI,CAAA;KAAE,CAAC;IACvD;;OAEG;IACH,YAAY,EAAE;QAAE,IAAI,EAAE,SAAS,CAAA;KAAE,CAAC;CACnC,CAAC;AAEF,MAAM,MAAM,aAAa,GAAG,aAAa,GAAG,YAAY,CAAC;AAEzD,MAAM,MAAM,0BAA0B,GAAG,iBAAiB,CACxD,aAAa,EACb,2BAA2B,CAC5B,GACC,gBAAgB,CAAC,aAAa,CAAC,CAAC;AAElC,MAAM,MAAM,uBAAuB,CACjC,SAAS,SAAS,aAAa,EAC/B,SAAS,SAAS,MAAM,SAAS,GAAG,MAAM,SAAS,EACnD,WAAW,SAAS,MAAM,GAAG,SAAS,GAAG,SAAS,IAChD,cAAc,CAChB,SAAS,EACT,SAAS,EACT,WAAW,EACX,kBAAkB,CAAC,SAAS,CAAC,EAC7B,0BAA0B,EAC1B,2BAA2B,CAC5B,GACC,gBAAgB,CAAC,SAAS,CAAC,CAAC;AAE9B,MAAM,MAAM,oBAAoB,CAC9B,SAAS,SAAS,aAAa,EAC/B,SAAS,SAAS,MAAM,SAAS,GAAG,MAAM,SAAS,EACnD,WAAW,SAAS,MAAM,GAAG,SAAS,GAAG,SAAS,IAChD;IACF,UAAU,EAAE,uBAAuB,CAAC,SAAS,EAAE,SAAS,EAAE,WAAW,CAAC,CAAC;IACvE,KAAK,EAAE,SAAS,CAAC,SAAS,EAAE,SAAS,CAAC,CAAC;CACxC,CAAC;AAEF,MAAM,MAAM,6BAA6B,GAAG;IAC1C,SAAS,EAAE,QAAQ,CAAC;IACpB,MAAM,CAAC,EAAE,IAAI,CACX,OAAO,CAAC,QAAQ,CAAC,qBAAqB,CAAC,EACvC,SAAS,GAAG,iBAAiB,CAC9B,CAAC;CACH,CAAC;AAEF,MAAM,MAAM,6BAA6B,GAAG;IAC1C,SAAS,EAAE,QAAQ,CAAC;IACpB,MAAM,CAAC,EAAE,IAAI,CACX,OAAO,CAAC,QAAQ,CAAC,qBAAqB,CAAC,EACvC,SAAS,GAAG,iBAAiB,CAC9B,CAAC;CACH,CAAC;AAEF,MAAM,MAAM,+BAA+B,GACvC,6BAA6B,GAC7B,6BAA6B,CAAC;AAElC,MAAM,MAAM,gBAAgB,GAAG,MAAM,GAAG,MAAM,GAAG,
|
|
1
|
+
{"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../../src/types.tsx"],"names":[],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"BottomTabView.d.ts","sourceRoot":"","sources":["../../../../src/views/BottomTabView.tsx"],"names":[],"mappings":"AAMA,OAAO,KAAK,EACV,aAAa,EACb,kBAAkB,EACnB,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,
|
|
1
|
+
{"version":3,"file":"BottomTabView.d.ts","sourceRoot":"","sources":["../../../../src/views/BottomTabView.tsx"],"names":[],"mappings":"AAMA,OAAO,KAAK,EACV,aAAa,EACb,kBAAkB,EACnB,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,qBA+OzC"}
|
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-alpha.
|
|
4
|
+
"version": "7.0.0-alpha.15",
|
|
5
5
|
"keywords": [
|
|
6
6
|
"react-native-component",
|
|
7
7
|
"react-component",
|
|
@@ -73,5 +73,5 @@
|
|
|
73
73
|
]
|
|
74
74
|
]
|
|
75
75
|
},
|
|
76
|
-
"gitHead": "
|
|
76
|
+
"gitHead": "edcca7d5a158ac3d81d59dc731585cd7e834b029"
|
|
77
77
|
}
|
|
@@ -22,7 +22,7 @@ export function forFade({
|
|
|
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 {
|
|
@@ -1,13 +1,13 @@
|
|
|
1
1
|
import type { BottomTabTransitionPreset } from '../types';
|
|
2
|
-
import { forFade,
|
|
3
|
-
import { CrossFadeSpec,
|
|
2
|
+
import { forFade, forShift } from './SceneStyleInterpolators';
|
|
3
|
+
import { CrossFadeSpec, ShiftSpec } from './TransitionSpecs';
|
|
4
4
|
|
|
5
5
|
export const FadeTransition: BottomTabTransitionPreset = {
|
|
6
6
|
transitionSpec: CrossFadeSpec,
|
|
7
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
|
};
|
package/src/types.tsx
CHANGED
|
@@ -85,7 +85,7 @@ export type TabBarVisibilityAnimationConfig =
|
|
|
85
85
|
| TimingKeyboardAnimationConfig
|
|
86
86
|
| SpringKeyboardAnimationConfig;
|
|
87
87
|
|
|
88
|
-
export type TabAnimationName = 'none' | 'fade' | '
|
|
88
|
+
export type TabAnimationName = 'none' | 'fade' | 'shift';
|
|
89
89
|
|
|
90
90
|
export type BottomTabNavigationOptions = HeaderOptions & {
|
|
91
91
|
/**
|
|
@@ -270,7 +270,7 @@ export type BottomTabNavigationOptions = HeaderOptions & {
|
|
|
270
270
|
* Supported values:
|
|
271
271
|
* - 'none': don't animate the screen (default)
|
|
272
272
|
* - 'fade': cross-fade the screens.
|
|
273
|
-
* - '
|
|
273
|
+
* - 'shift': shift the screens slightly shift to left/right.
|
|
274
274
|
*/
|
|
275
275
|
animation?: TabAnimationName;
|
|
276
276
|
|
|
@@ -14,7 +14,7 @@ import { SafeAreaInsetsContext } from 'react-native-safe-area-context';
|
|
|
14
14
|
|
|
15
15
|
import {
|
|
16
16
|
FadeTransition,
|
|
17
|
-
|
|
17
|
+
ShiftTransition,
|
|
18
18
|
} from '../TransitionConfigs/TransitionPresets';
|
|
19
19
|
import type {
|
|
20
20
|
BottomTabBarProps,
|
|
@@ -44,12 +44,12 @@ const STATE_ON_TOP = 2;
|
|
|
44
44
|
|
|
45
45
|
const NAMED_TRANSITIONS_PRESETS = {
|
|
46
46
|
fade: FadeTransition,
|
|
47
|
-
|
|
47
|
+
shift: ShiftTransition,
|
|
48
48
|
none: {
|
|
49
49
|
sceneStyleInterpolator: undefined,
|
|
50
50
|
transitionSpec: {
|
|
51
51
|
animation: 'timing',
|
|
52
|
-
config: { duration:
|
|
52
|
+
config: { duration: 0 },
|
|
53
53
|
},
|
|
54
54
|
},
|
|
55
55
|
} as const;
|
|
@@ -89,9 +89,14 @@ export function BottomTabView(props: Props) {
|
|
|
89
89
|
setLoaded([...loaded, focusedRouteKey]);
|
|
90
90
|
}
|
|
91
91
|
|
|
92
|
+
const previousRouteKeyRef = React.useRef(focusedRouteKey);
|
|
92
93
|
const tabAnims = useAnimatedHashMap(state);
|
|
93
94
|
|
|
94
95
|
React.useEffect(() => {
|
|
96
|
+
const previousRouteKey = previousRouteKeyRef.current;
|
|
97
|
+
|
|
98
|
+
previousRouteKeyRef.current = focusedRouteKey;
|
|
99
|
+
|
|
95
100
|
const animateToIndex = () => {
|
|
96
101
|
Animated.parallel(
|
|
97
102
|
state.routes
|
|
@@ -100,15 +105,27 @@ export function BottomTabView(props: Props) {
|
|
|
100
105
|
const {
|
|
101
106
|
animation = 'none',
|
|
102
107
|
transitionSpec = NAMED_TRANSITIONS_PRESETS[animation]
|
|
103
|
-
.transitionSpec
|
|
104
|
-
NAMED_TRANSITIONS_PRESETS.none.transitionSpec,
|
|
108
|
+
.transitionSpec,
|
|
105
109
|
} = options;
|
|
106
110
|
|
|
111
|
+
let spec = transitionSpec;
|
|
112
|
+
|
|
113
|
+
if (
|
|
114
|
+
route.key !== previousRouteKey &&
|
|
115
|
+
route.key !== focusedRouteKey
|
|
116
|
+
) {
|
|
117
|
+
// Don't animate if the screen is not previous one or new one
|
|
118
|
+
// This will avoid flicker for screens not involved in the transition
|
|
119
|
+
spec = NAMED_TRANSITIONS_PRESETS.none.transitionSpec;
|
|
120
|
+
}
|
|
121
|
+
|
|
122
|
+
spec = spec ?? NAMED_TRANSITIONS_PRESETS.none.transitionSpec;
|
|
123
|
+
|
|
107
124
|
const toValue =
|
|
108
125
|
index === state.index ? 0 : index >= state.index ? 1 : -1;
|
|
109
126
|
|
|
110
|
-
return Animated[
|
|
111
|
-
...
|
|
127
|
+
return Animated[spec.animation](tabAnims[route.key], {
|
|
128
|
+
...spec.config,
|
|
112
129
|
toValue,
|
|
113
130
|
useNativeDriver: true,
|
|
114
131
|
});
|
|
@@ -118,7 +135,7 @@ export function BottomTabView(props: Props) {
|
|
|
118
135
|
};
|
|
119
136
|
|
|
120
137
|
animateToIndex();
|
|
121
|
-
}, [descriptors, state.index, state.routes, tabAnims]);
|
|
138
|
+
}, [descriptors, focusedRouteKey, state.index, state.routes, tabAnims]);
|
|
122
139
|
|
|
123
140
|
const dimensions = SafeAreaProviderCompat.initialMetrics.frame;
|
|
124
141
|
const [tabBarHeight, setTabBarHeight] = React.useState(() =>
|