@react-navigation/bottom-tabs 7.0.0-alpha.1 → 7.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.
Files changed (102) hide show
  1. package/lib/commonjs/TransitionConfigs/SceneStyleInterpolators.js +47 -0
  2. package/lib/commonjs/TransitionConfigs/SceneStyleInterpolators.js.map +1 -0
  3. package/lib/commonjs/TransitionConfigs/TransitionPresets.js +17 -0
  4. package/lib/commonjs/TransitionConfigs/TransitionPresets.js.map +1 -0
  5. package/lib/commonjs/TransitionConfigs/TransitionSpecs.js +22 -0
  6. package/lib/commonjs/TransitionConfigs/TransitionSpecs.js.map +1 -0
  7. package/lib/commonjs/index.js +9 -0
  8. package/lib/commonjs/index.js.map +1 -1
  9. package/lib/commonjs/navigators/createBottomTabNavigator.js +5 -4
  10. package/lib/commonjs/navigators/createBottomTabNavigator.js.map +1 -1
  11. package/lib/commonjs/types.js.map +1 -1
  12. package/lib/commonjs/utils/BottomTabBarHeightCallbackContext.js +3 -4
  13. package/lib/commonjs/utils/BottomTabBarHeightCallbackContext.js.map +1 -1
  14. package/lib/commonjs/utils/BottomTabBarHeightContext.js +3 -4
  15. package/lib/commonjs/utils/BottomTabBarHeightContext.js.map +1 -1
  16. package/lib/commonjs/utils/useAnimatedHashMap.js +31 -0
  17. package/lib/commonjs/utils/useAnimatedHashMap.js.map +1 -0
  18. package/lib/commonjs/utils/useBottomTabBarHeight.js +2 -2
  19. package/lib/commonjs/utils/useBottomTabBarHeight.js.map +1 -1
  20. package/lib/commonjs/utils/useIsKeyboardShown.js +2 -2
  21. package/lib/commonjs/utils/useIsKeyboardShown.js.map +1 -1
  22. package/lib/commonjs/views/Badge.js +2 -2
  23. package/lib/commonjs/views/Badge.js.map +1 -1
  24. package/lib/commonjs/views/BottomTabBar.js +63 -25
  25. package/lib/commonjs/views/BottomTabBar.js.map +1 -1
  26. package/lib/commonjs/views/BottomTabItem.js +32 -54
  27. package/lib/commonjs/views/BottomTabItem.js.map +1 -1
  28. package/lib/commonjs/views/BottomTabView.js +100 -18
  29. package/lib/commonjs/views/BottomTabView.js.map +1 -1
  30. package/lib/commonjs/views/ScreenFallback.js +10 -14
  31. package/lib/commonjs/views/ScreenFallback.js.map +1 -1
  32. package/lib/commonjs/views/TabBarIcon.js +12 -17
  33. package/lib/commonjs/views/TabBarIcon.js.map +1 -1
  34. package/lib/module/TransitionConfigs/SceneStyleInterpolators.js +40 -0
  35. package/lib/module/TransitionConfigs/SceneStyleInterpolators.js.map +1 -0
  36. package/lib/module/TransitionConfigs/TransitionPresets.js +11 -0
  37. package/lib/module/TransitionConfigs/TransitionPresets.js.map +1 -0
  38. package/lib/module/TransitionConfigs/TransitionSpecs.js +16 -0
  39. package/lib/module/TransitionConfigs/TransitionSpecs.js.map +1 -0
  40. package/lib/module/index.js +9 -0
  41. package/lib/module/index.js.map +1 -1
  42. package/lib/module/navigators/createBottomTabNavigator.js +2 -0
  43. package/lib/module/navigators/createBottomTabNavigator.js.map +1 -1
  44. package/lib/module/types.js.map +1 -1
  45. package/lib/module/utils/BottomTabBarHeightCallbackContext.js.map +1 -1
  46. package/lib/module/utils/BottomTabBarHeightContext.js.map +1 -1
  47. package/lib/module/utils/useAnimatedHashMap.js +23 -0
  48. package/lib/module/utils/useAnimatedHashMap.js.map +1 -0
  49. package/lib/module/utils/useBottomTabBarHeight.js.map +1 -1
  50. package/lib/module/utils/useIsKeyboardShown.js.map +1 -1
  51. package/lib/module/views/Badge.js.map +1 -1
  52. package/lib/module/views/BottomTabBar.js +66 -28
  53. package/lib/module/views/BottomTabBar.js.map +1 -1
  54. package/lib/module/views/BottomTabItem.js +34 -56
  55. package/lib/module/views/BottomTabItem.js.map +1 -1
  56. package/lib/module/views/BottomTabView.js +99 -17
  57. package/lib/module/views/BottomTabView.js.map +1 -1
  58. package/lib/module/views/ScreenFallback.js +8 -12
  59. package/lib/module/views/ScreenFallback.js.map +1 -1
  60. package/lib/module/views/TabBarIcon.js +12 -17
  61. package/lib/module/views/TabBarIcon.js.map +1 -1
  62. package/lib/typescript/src/TransitionConfigs/SceneStyleInterpolators.d.ts +10 -0
  63. package/lib/typescript/src/TransitionConfigs/SceneStyleInterpolators.d.ts.map +1 -0
  64. package/lib/typescript/src/TransitionConfigs/TransitionPresets.d.ts +4 -0
  65. package/lib/typescript/src/TransitionConfigs/TransitionPresets.d.ts.map +1 -0
  66. package/lib/typescript/src/TransitionConfigs/TransitionSpecs.d.ts +4 -0
  67. package/lib/typescript/src/TransitionConfigs/TransitionSpecs.d.ts.map +1 -0
  68. package/lib/typescript/src/index.d.ts +7 -0
  69. package/lib/typescript/src/index.d.ts.map +1 -1
  70. package/lib/typescript/src/navigators/createBottomTabNavigator.d.ts +4 -4
  71. package/lib/typescript/src/navigators/createBottomTabNavigator.d.ts.map +1 -1
  72. package/lib/typescript/src/types.d.ts +57 -3
  73. package/lib/typescript/src/types.d.ts.map +1 -1
  74. package/lib/typescript/src/utils/useAnimatedHashMap.d.ts +4 -0
  75. package/lib/typescript/src/utils/useAnimatedHashMap.d.ts.map +1 -0
  76. package/lib/typescript/src/views/Badge.d.ts +3 -3
  77. package/lib/typescript/src/views/Badge.d.ts.map +1 -1
  78. package/lib/typescript/src/views/BottomTabBar.d.ts +5 -5
  79. package/lib/typescript/src/views/BottomTabBar.d.ts.map +1 -1
  80. package/lib/typescript/src/views/BottomTabItem.d.ts +3 -3
  81. package/lib/typescript/src/views/BottomTabItem.d.ts.map +1 -1
  82. package/lib/typescript/src/views/BottomTabView.d.ts +2 -2
  83. package/lib/typescript/src/views/BottomTabView.d.ts.map +1 -1
  84. package/lib/typescript/src/views/ScreenFallback.d.ts +5 -5
  85. package/lib/typescript/src/views/ScreenFallback.d.ts.map +1 -1
  86. package/lib/typescript/src/views/TabBarIcon.d.ts +2 -2
  87. package/lib/typescript/src/views/TabBarIcon.d.ts.map +1 -1
  88. package/package.json +18 -19
  89. package/src/TransitionConfigs/SceneStyleInterpolators.tsx +44 -0
  90. package/src/TransitionConfigs/TransitionPresets.tsx +13 -0
  91. package/src/TransitionConfigs/TransitionSpecs.tsx +19 -0
  92. package/src/index.tsx +9 -0
  93. package/src/navigators/createBottomTabNavigator.tsx +7 -5
  94. package/src/types.tsx +82 -5
  95. package/src/utils/useAnimatedHashMap.tsx +25 -0
  96. package/src/utils/useIsKeyboardShown.tsx +1 -1
  97. package/src/views/Badge.tsx +6 -1
  98. package/src/views/BottomTabBar.tsx +123 -45
  99. package/src/views/BottomTabItem.tsx +51 -81
  100. package/src/views/BottomTabView.tsx +131 -14
  101. package/src/views/ScreenFallback.tsx +12 -13
  102. package/src/views/TabBarIcon.tsx +16 -24
@@ -1,12 +1,27 @@
1
1
  function _extends() { _extends = Object.assign ? Object.assign.bind() : function (target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i]; for (var key in source) { if (Object.prototype.hasOwnProperty.call(source, key)) { target[key] = source[key]; } } } return target; }; return _extends.apply(this, arguments); }
2
2
  import { getHeaderTitle, Header, SafeAreaProviderCompat, Screen } from '@react-navigation/elements';
3
3
  import * as React from 'react';
4
- import { Platform, StyleSheet } from 'react-native';
4
+ import { Animated, Platform, StyleSheet } from 'react-native';
5
5
  import { SafeAreaInsetsContext } from 'react-native-safe-area-context';
6
6
  import { BottomTabBarHeightCallbackContext } from '../utils/BottomTabBarHeightCallbackContext';
7
7
  import { BottomTabBarHeightContext } from '../utils/BottomTabBarHeightContext';
8
+ import { useAnimatedHashMap } from '../utils/useAnimatedHashMap';
8
9
  import { BottomTabBar, getTabBarHeight } from './BottomTabBar';
9
10
  import { MaybeScreen, MaybeScreenContainer } from './ScreenFallback';
11
+ const EPSILON = 1e-5;
12
+ const STATE_INACTIVE = 0;
13
+ const STATE_TRANSITIONING_OR_BELOW_TOP = 1;
14
+ const STATE_ON_TOP = 2;
15
+ const hasAnimation = options => {
16
+ const {
17
+ animationEnabled,
18
+ transitionSpec
19
+ } = options;
20
+ if (animationEnabled === false || !transitionSpec) {
21
+ return false;
22
+ }
23
+ return true;
24
+ };
10
25
  export function BottomTabView(props) {
11
26
  const {
12
27
  tabBar = props => /*#__PURE__*/React.createElement(BottomTabBar, props),
@@ -18,10 +33,43 @@ export function BottomTabView(props) {
18
33
  sceneContainerStyle
19
34
  } = props;
20
35
  const focusedRouteKey = state.routes[state.index].key;
36
+
37
+ /**
38
+ * List of loaded tabs, tabs will be loaded when navigated to.
39
+ */
21
40
  const [loaded, setLoaded] = React.useState([focusedRouteKey]);
22
41
  if (!loaded.includes(focusedRouteKey)) {
42
+ // Set the current tab to be loaded if it was not loaded before
23
43
  setLoaded([...loaded, focusedRouteKey]);
24
44
  }
45
+ const tabAnims = useAnimatedHashMap(state);
46
+ React.useEffect(() => {
47
+ const animateToIndex = () => {
48
+ Animated.parallel(state.routes.map((route, index) => {
49
+ const {
50
+ options
51
+ } = descriptors[route.key];
52
+ const {
53
+ transitionSpec
54
+ } = options;
55
+ const animationEnabled = hasAnimation(options);
56
+ const toValue = index === state.index ? 0 : index >= state.index ? 1 : -1;
57
+ if (!animationEnabled || !transitionSpec) {
58
+ return Animated.timing(tabAnims[route.key], {
59
+ toValue,
60
+ duration: 0,
61
+ useNativeDriver: true
62
+ });
63
+ }
64
+ return Animated[transitionSpec.animation](tabAnims[route.key], {
65
+ ...transitionSpec.config,
66
+ toValue,
67
+ useNativeDriver: true
68
+ });
69
+ }).filter(Boolean)).start();
70
+ };
71
+ animateToIndex();
72
+ }, [descriptors, state.index, state.routes, tabAnims]);
25
73
  const dimensions = SafeAreaProviderCompat.initialMetrics.frame;
26
74
  const [tabBarHeight, setTabBarHeight] = React.useState(() => getTabBarHeight({
27
75
  state,
@@ -43,32 +91,43 @@ export function BottomTabView(props) {
43
91
  descriptors: descriptors,
44
92
  navigation: navigation,
45
93
  insets: {
46
- top: (safeAreaInsets === null || safeAreaInsets === void 0 ? void 0 : safeAreaInsets.top) ?? (insets === null || insets === void 0 ? void 0 : insets.top) ?? 0,
47
- right: (safeAreaInsets === null || safeAreaInsets === void 0 ? void 0 : safeAreaInsets.right) ?? (insets === null || insets === void 0 ? void 0 : insets.right) ?? 0,
48
- bottom: (safeAreaInsets === null || safeAreaInsets === void 0 ? void 0 : safeAreaInsets.bottom) ?? (insets === null || insets === void 0 ? void 0 : insets.bottom) ?? 0,
49
- left: (safeAreaInsets === null || safeAreaInsets === void 0 ? void 0 : safeAreaInsets.left) ?? (insets === null || insets === void 0 ? void 0 : insets.left) ?? 0
94
+ top: safeAreaInsets?.top ?? insets?.top ?? 0,
95
+ right: safeAreaInsets?.right ?? insets?.right ?? 0,
96
+ bottom: safeAreaInsets?.bottom ?? insets?.bottom ?? 0,
97
+ left: safeAreaInsets?.left ?? insets?.left ?? 0
50
98
  }
51
99
  }));
52
100
  };
53
101
  const {
54
102
  routes
55
103
  } = state;
56
- return /*#__PURE__*/React.createElement(SafeAreaProviderCompat, null, /*#__PURE__*/React.createElement(MaybeScreenContainer, {
104
+
105
+ // If there is no animation, we only have 2 states: visible and invisible
106
+ const hasTwoStates = !routes.some(route => hasAnimation(descriptors[route.key].options));
107
+ const {
108
+ tabBarPosition = 'bottom'
109
+ } = descriptors[focusedRouteKey].options;
110
+ return /*#__PURE__*/React.createElement(SafeAreaProviderCompat, {
111
+ style: tabBarPosition === 'left' ? styles.left : tabBarPosition === 'right' ? styles.right : null
112
+ }, tabBarPosition === 'top' ? /*#__PURE__*/React.createElement(BottomTabBarHeightCallbackContext.Provider, {
113
+ value: setTabBarHeight
114
+ }, renderTabBar()) : null, /*#__PURE__*/React.createElement(MaybeScreenContainer, {
57
115
  enabled: detachInactiveScreens,
58
- hasTwoStates: true,
59
- style: styles.container
116
+ hasTwoStates: hasTwoStates,
117
+ style: styles.screens
60
118
  }, routes.map((route, index) => {
61
119
  const descriptor = descriptors[route.key];
62
120
  const {
63
121
  lazy = true,
64
- unmountOnBlur
122
+ unmountOnBlur,
123
+ sceneStyleInterpolator
65
124
  } = descriptor.options;
66
125
  const isFocused = state.index === index;
67
126
  if (unmountOnBlur && !isFocused) {
68
127
  return null;
69
128
  }
70
- if (lazy && !loaded.includes(route.key) && !isFocused) {
71
- // Don't render a lazy screen if we've never navigated to it
129
+ if (lazy && !loaded.includes(route.key) && !isFocused && !state.preloadedRouteKeys.includes(route.key)) {
130
+ // Don't render a lazy screen if we've never navigated to it or it wasn't preloaded
72
131
  return null;
73
132
  }
74
133
  const {
@@ -87,16 +146,33 @@ export function BottomTabView(props) {
87
146
  headerStatusBarHeight,
88
147
  headerTransparent
89
148
  } = descriptor.options;
149
+ const {
150
+ sceneStyle
151
+ } = sceneStyleInterpolator?.({
152
+ current: tabAnims[route.key]
153
+ }) ?? {};
154
+ const animationEnabled = hasAnimation(descriptor.options);
155
+ const activityState = isFocused ? STATE_ON_TOP // the screen is on top after the transition
156
+ : animationEnabled // is animation is not enabled, immediately move to inactive state
157
+ ? tabAnims[route.key].interpolate({
158
+ inputRange: [0, 1 - EPSILON, 1],
159
+ outputRange: [STATE_TRANSITIONING_OR_BELOW_TOP,
160
+ // screen visible during transition
161
+ STATE_TRANSITIONING_OR_BELOW_TOP, STATE_INACTIVE // the screen is detached after transition
162
+ ],
163
+
164
+ extrapolate: 'extend'
165
+ }) : STATE_INACTIVE;
90
166
  return /*#__PURE__*/React.createElement(MaybeScreen, {
91
167
  key: route.key,
92
168
  style: [StyleSheet.absoluteFill, {
93
169
  zIndex: isFocused ? 0 : -1
94
170
  }],
95
- visible: isFocused,
171
+ active: activityState,
96
172
  enabled: detachInactiveScreens,
97
173
  freezeOnBlur: freezeOnBlur
98
174
  }, /*#__PURE__*/React.createElement(BottomTabBarHeightContext.Provider, {
99
- value: tabBarHeight
175
+ value: tabBarPosition === 'bottom' ? tabBarHeight : 0
100
176
  }, /*#__PURE__*/React.createElement(Screen, {
101
177
  focused: isFocused,
102
178
  route: descriptor.route,
@@ -110,14 +186,20 @@ export function BottomTabView(props) {
110
186
  navigation: descriptor.navigation,
111
187
  options: descriptor.options
112
188
  }),
113
- style: sceneContainerStyle
189
+ style: [sceneContainerStyle, animationEnabled && sceneStyle]
114
190
  }, descriptor.render())));
115
- })), /*#__PURE__*/React.createElement(BottomTabBarHeightCallbackContext.Provider, {
191
+ })), tabBarPosition !== 'top' ? /*#__PURE__*/React.createElement(BottomTabBarHeightCallbackContext.Provider, {
116
192
  value: setTabBarHeight
117
- }, renderTabBar()));
193
+ }, renderTabBar()) : null);
118
194
  }
119
195
  const styles = StyleSheet.create({
120
- container: {
196
+ left: {
197
+ flexDirection: 'row-reverse'
198
+ },
199
+ right: {
200
+ flexDirection: 'row'
201
+ },
202
+ screens: {
121
203
  flex: 1,
122
204
  overflow: 'hidden'
123
205
  }
@@ -1 +1 @@
1
- {"version":3,"names":["getHeaderTitle","Header","SafeAreaProviderCompat","Screen","React","Platform","StyleSheet","SafeAreaInsetsContext","BottomTabBarHeightCallbackContext","BottomTabBarHeightContext","BottomTabBar","getTabBarHeight","MaybeScreen","MaybeScreenContainer","BottomTabView","props","tabBar","state","navigation","descriptors","safeAreaInsets","detachInactiveScreens","OS","sceneContainerStyle","focusedRouteKey","routes","index","key","loaded","setLoaded","useState","includes","dimensions","initialMetrics","frame","tabBarHeight","setTabBarHeight","layout","width","height","insets","style","options","tabBarStyle","renderTabBar","top","right","bottom","left","styles","container","map","route","descriptor","lazy","unmountOnBlur","isFocused","freezeOnBlur","header","name","headerShown","headerStatusBarHeight","headerTransparent","absoluteFill","zIndex","render","create","flex","overflow"],"sourceRoot":"../../../src","sources":["views/BottomTabView.tsx"],"mappings":"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"}
1
+ {"version":3,"names":["getHeaderTitle","Header","SafeAreaProviderCompat","Screen","React","Animated","Platform","StyleSheet","SafeAreaInsetsContext","BottomTabBarHeightCallbackContext","BottomTabBarHeightContext","useAnimatedHashMap","BottomTabBar","getTabBarHeight","MaybeScreen","MaybeScreenContainer","EPSILON","STATE_INACTIVE","STATE_TRANSITIONING_OR_BELOW_TOP","STATE_ON_TOP","hasAnimation","options","animationEnabled","transitionSpec","BottomTabView","props","tabBar","createElement","state","navigation","descriptors","safeAreaInsets","detachInactiveScreens","OS","sceneContainerStyle","focusedRouteKey","routes","index","key","loaded","setLoaded","useState","includes","tabAnims","useEffect","animateToIndex","parallel","map","route","toValue","timing","duration","useNativeDriver","animation","config","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","sceneStyleInterpolator","isFocused","preloadedRouteKeys","freezeOnBlur","header","_ref","_extends","title","name","headerShown","headerStatusBarHeight","headerTransparent","sceneStyle","current","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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"}
@@ -1,5 +1,4 @@
1
1
  function _extends() { _extends = Object.assign ? Object.assign.bind() : function (target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i]; for (var key in source) { if (Object.prototype.hasOwnProperty.call(source, key)) { target[key] = source[key]; } } } return target; }; return _extends.apply(this, arguments); }
2
- import { ResourceSavingView } from '@react-navigation/elements';
3
2
  import * as React from 'react';
4
3
  import { View } from 'react-native';
5
4
  let Screens;
@@ -9,12 +8,11 @@ try {
9
8
  // Ignore
10
9
  }
11
10
  export const MaybeScreenContainer = _ref => {
12
- var _Screens, _Screens$screensEnabl;
13
11
  let {
14
12
  enabled,
15
13
  ...rest
16
14
  } = _ref;
17
- if ((_Screens = Screens) !== null && _Screens !== void 0 && (_Screens$screensEnabl = _Screens.screensEnabled) !== null && _Screens$screensEnabl !== void 0 && _Screens$screensEnabl.call(_Screens)) {
15
+ if (Screens?.screensEnabled?.()) {
18
16
  return /*#__PURE__*/React.createElement(Screens.ScreenContainer, _extends({
19
17
  enabled: enabled
20
18
  }, rest));
@@ -22,19 +20,17 @@ export const MaybeScreenContainer = _ref => {
22
20
  return /*#__PURE__*/React.createElement(View, rest);
23
21
  };
24
22
  export function MaybeScreen(_ref2) {
25
- var _Screens2, _Screens2$screensEnab;
26
23
  let {
27
- visible,
28
- children,
24
+ enabled,
25
+ active,
29
26
  ...rest
30
27
  } = _ref2;
31
- if ((_Screens2 = Screens) !== null && _Screens2 !== void 0 && (_Screens2$screensEnab = _Screens2.screensEnabled) !== null && _Screens2$screensEnab !== void 0 && _Screens2$screensEnab.call(_Screens2)) {
28
+ if (Screens?.screensEnabled?.()) {
32
29
  return /*#__PURE__*/React.createElement(Screens.Screen, _extends({
33
- activityState: visible ? 2 : 0
34
- }, rest), children);
30
+ enabled: enabled,
31
+ activityState: active
32
+ }, rest));
35
33
  }
36
- return /*#__PURE__*/React.createElement(ResourceSavingView, _extends({
37
- visible: visible
38
- }, rest), children);
34
+ return /*#__PURE__*/React.createElement(View, rest);
39
35
  }
40
36
  //# sourceMappingURL=ScreenFallback.js.map
@@ -1 +1 @@
1
- {"version":3,"names":["ResourceSavingView","React","View","Screens","require","e","MaybeScreenContainer","enabled","rest","screensEnabled","MaybeScreen","visible","children"],"sourceRoot":"../../../src","sources":["views/ScreenFallback.tsx"],"mappings":";AAAA,SAASA,kBAAkB,QAAQ,4BAA4B;AAC/D,OAAO,KAAKC,KAAK,MAAM,OAAO;AAC9B,SAAoBC,IAAI,QAA8B,cAAc;AAUpE,IAAIC,OAA0D;AAE9D,IAAI;EACFA,OAAO,GAAGC,OAAO,CAAC,sBAAsB,CAAC;AAC3C,CAAC,CAAC,OAAOC,CAAC,EAAE;EACV;AAAA;AAGF,OAAO,MAAMC,oBAAoB,GAAG,QAO9B;EAAA;EAAA,IAP+B;IACnCC,OAAO;IACP,GAAGC;EAKL,CAAC;EACC,gBAAIL,OAAO,8DAAP,SAASM,cAAc,kDAAvB,oCAA2B,EAAE;IAC/B,oBAAO,oBAAC,OAAO,CAAC,eAAe;MAAC,OAAO,EAAEF;IAAQ,GAAKC,IAAI,EAAI;EAChE;EAEA,oBAAO,oBAAC,IAAI,EAAKA,IAAI,CAAI;AAC3B,CAAC;AAED,OAAO,SAASE,WAAW,QAAwC;EAAA;EAAA,IAAvC;IAAEC,OAAO;IAAEC,QAAQ;IAAE,GAAGJ;EAAY,CAAC;EAC/D,iBAAIL,OAAO,+DAAP,UAASM,cAAc,kDAAvB,qCAA2B,EAAE;IAC/B,oBACE,oBAAC,OAAO,CAAC,MAAM;MAAC,aAAa,EAAEE,OAAO,GAAG,CAAC,GAAG;IAAE,GAAKH,IAAI,GACrDI,QAAQ,CACM;EAErB;EAEA,oBACE,oBAAC,kBAAkB;IAAC,OAAO,EAAED;EAAQ,GAAKH,IAAI,GAC3CI,QAAQ,CACU;AAEzB"}
1
+ {"version":3,"names":["React","View","Screens","require","e","MaybeScreenContainer","_ref","enabled","rest","screensEnabled","createElement","ScreenContainer","_extends","MaybeScreen","_ref2","active","Screen","activityState"],"sourceRoot":"../../../src","sources":["views/ScreenFallback.tsx"],"mappings":";AAAA,OAAO,KAAKA,KAAK,MAAM,OAAO;AAC9B,SAGEC,IAAI,QAGC,cAAc;AAUrB,IAAIC,OAA0D;AAE9D,IAAI;EACFA,OAAO,GAAGC,OAAO,CAAC,sBAAsB,CAAC;AAC3C,CAAC,CAAC,OAAOC,CAAC,EAAE;EACV;AAAA;AAGF,OAAO,MAAMC,oBAAoB,GAAGC,IAAA,IAO9B;EAAA,IAP+B;IACnCC,OAAO;IACP,GAAGC;EAKL,CAAC,GAAAF,IAAA;EACC,IAAIJ,OAAO,EAAEO,cAAc,GAAG,CAAC,EAAE;IAC/B,oBAAOT,KAAA,CAAAU,aAAA,CAACR,OAAO,CAACS,eAAe,EAAAC,QAAA;MAACL,OAAO,EAAEA;IAAQ,GAAKC,IAAI,CAAG,CAAC;EAChE;EAEA,oBAAOR,KAAA,CAAAU,aAAA,CAACT,IAAI,EAAKO,IAAO,CAAC;AAC3B,CAAC;AAED,OAAO,SAASK,WAAWA,CAAAC,KAAA,EAAkD;EAAA,IAAjD;IAAEP,OAAO;IAAEQ,MAAM;IAAE,GAAGP;EAAwB,CAAC,GAAAM,KAAA;EACzE,IAAIZ,OAAO,EAAEO,cAAc,GAAG,CAAC,EAAE;IAC/B,oBACET,KAAA,CAAAU,aAAA,CAACR,OAAO,CAACc,MAAM,EAAAJ,QAAA;MAACL,OAAO,EAAEA,OAAQ;MAACU,aAAa,EAAEF;IAAO,GAAKP,IAAI,CAAG,CAAC;EAEzE;EAEA,oBAAOR,KAAA,CAAAU,aAAA,CAACT,IAAI,EAAKO,IAAO,CAAC;AAC3B"}
@@ -1,6 +1,7 @@
1
1
  import React from 'react';
2
2
  import { StyleSheet, View } from 'react-native';
3
3
  import { Badge } from './Badge';
4
+ const ICON_SIZE = 25;
4
5
  export function TabBarIcon(_ref) {
5
6
  let {
6
7
  route: _,
@@ -14,8 +15,6 @@ export function TabBarIcon(_ref) {
14
15
  renderIcon,
15
16
  style
16
17
  } = _ref;
17
- const size = 25;
18
-
19
18
  // We render the icon twice at the same position on top of each other:
20
19
  // active and inactive one, so we can fade between them.
21
20
  return /*#__PURE__*/React.createElement(View, {
@@ -26,7 +25,7 @@ export function TabBarIcon(_ref) {
26
25
  }]
27
26
  }, renderIcon({
28
27
  focused: true,
29
- size,
28
+ size: ICON_SIZE,
30
29
  color: activeTintColor
31
30
  })), /*#__PURE__*/React.createElement(View, {
32
31
  style: [styles.icon, {
@@ -34,12 +33,12 @@ export function TabBarIcon(_ref) {
34
33
  }]
35
34
  }, renderIcon({
36
35
  focused: false,
37
- size,
36
+ size: ICON_SIZE,
38
37
  color: inactiveTintColor
39
38
  })), /*#__PURE__*/React.createElement(Badge, {
40
39
  visible: badge != null,
41
- style: [styles.badge, horizontal ? styles.badgeHorizontal : styles.badgeVertical, badgeStyle],
42
- size: size * 3 / 4
40
+ style: [styles.badge, badgeStyle],
41
+ size: ICON_SIZE * 0.75
43
42
  }, badge));
44
43
  }
45
44
  const styles = StyleSheet.create({
@@ -54,24 +53,20 @@ const styles = StyleSheet.create({
54
53
  height: '100%',
55
54
  width: '100%',
56
55
  // Workaround for react-native >= 0.54 layout bug
57
- minWidth: 25
56
+ minWidth: ICON_SIZE
58
57
  },
59
58
  iconVertical: {
60
- flex: 1
59
+ width: ICON_SIZE,
60
+ height: ICON_SIZE
61
61
  },
62
62
  iconHorizontal: {
63
- height: '100%',
64
- marginTop: 3
63
+ width: ICON_SIZE,
64
+ height: ICON_SIZE
65
65
  },
66
66
  badge: {
67
67
  position: 'absolute',
68
- left: 3
69
- },
70
- badgeVertical: {
71
- top: 3
72
- },
73
- badgeHorizontal: {
74
- top: 7
68
+ right: -5,
69
+ top: -5
75
70
  }
76
71
  });
77
72
  //# sourceMappingURL=TabBarIcon.js.map
@@ -1 +1 @@
1
- {"version":3,"names":["React","StyleSheet","View","Badge","TabBarIcon","route","_","horizontal","badge","badgeStyle","activeOpacity","inactiveOpacity","activeTintColor","inactiveTintColor","renderIcon","style","size","styles","iconHorizontal","iconVertical","icon","opacity","focused","color","badgeHorizontal","badgeVertical","create","position","alignSelf","alignItems","justifyContent","height","width","minWidth","flex","marginTop","left","top"],"sourceRoot":"../../../src","sources":["views/TabBarIcon.tsx"],"mappings":"AACA,OAAOA,KAAK,MAAM,OAAO;AACzB,SAEEC,UAAU,EAEVC,IAAI,QAEC,cAAc;AAErB,SAASC,KAAK,QAAQ,SAAS;AAmB/B,OAAO,SAASC,UAAU,OAWhB;EAAA,IAXiB;IACzBC,KAAK,EAAEC,CAAC;IACRC,UAAU;IACVC,KAAK;IACLC,UAAU;IACVC,aAAa;IACbC,eAAe;IACfC,eAAe;IACfC,iBAAiB;IACjBC,UAAU;IACVC;EACK,CAAC;EACN,MAAMC,IAAI,GAAG,EAAE;;EAEf;EACA;EACA,oBACE,oBAAC,IAAI;IACH,KAAK,EAAE,CAACT,UAAU,GAAGU,MAAM,CAACC,cAAc,GAAGD,MAAM,CAACE,YAAY,EAAEJ,KAAK;EAAE,gBAEzE,oBAAC,IAAI;IAAC,KAAK,EAAE,CAACE,MAAM,CAACG,IAAI,EAAE;MAAEC,OAAO,EAAEX;IAAc,CAAC;EAAE,GACpDI,UAAU,CAAC;IACVQ,OAAO,EAAE,IAAI;IACbN,IAAI;IACJO,KAAK,EAAEX;EACT,CAAC,CAAC,CACG,eACP,oBAAC,IAAI;IAAC,KAAK,EAAE,CAACK,MAAM,CAACG,IAAI,EAAE;MAAEC,OAAO,EAAEV;IAAgB,CAAC;EAAE,GACtDG,UAAU,CAAC;IACVQ,OAAO,EAAE,KAAK;IACdN,IAAI;IACJO,KAAK,EAAEV;EACT,CAAC,CAAC,CACG,eACP,oBAAC,KAAK;IACJ,OAAO,EAAEL,KAAK,IAAI,IAAK;IACvB,KAAK,EAAE,CACLS,MAAM,CAACT,KAAK,EACZD,UAAU,GAAGU,MAAM,CAACO,eAAe,GAAGP,MAAM,CAACQ,aAAa,EAC1DhB,UAAU,CACV;IACF,IAAI,EAAGO,IAAI,GAAG,CAAC,GAAI;EAAE,GAEpBR,KAAK,CACA,CACH;AAEX;AAEA,MAAMS,MAAM,GAAGhB,UAAU,CAACyB,MAAM,CAAC;EAC/BN,IAAI,EAAE;IACJ;IACA;IACA;IACAO,QAAQ,EAAE,UAAU;IACpBC,SAAS,EAAE,QAAQ;IACnBC,UAAU,EAAE,QAAQ;IACpBC,cAAc,EAAE,QAAQ;IACxBC,MAAM,EAAE,MAAM;IACdC,KAAK,EAAE,MAAM;IACb;IACAC,QAAQ,EAAE;EACZ,CAAC;EACDd,YAAY,EAAE;IACZe,IAAI,EAAE;EACR,CAAC;EACDhB,cAAc,EAAE;IACda,MAAM,EAAE,MAAM;IACdI,SAAS,EAAE;EACb,CAAC;EACD3B,KAAK,EAAE;IACLmB,QAAQ,EAAE,UAAU;IACpBS,IAAI,EAAE;EACR,CAAC;EACDX,aAAa,EAAE;IACbY,GAAG,EAAE;EACP,CAAC;EACDb,eAAe,EAAE;IACfa,GAAG,EAAE;EACP;AACF,CAAC,CAAC"}
1
+ {"version":3,"names":["React","StyleSheet","View","Badge","ICON_SIZE","TabBarIcon","_ref","route","_","horizontal","badge","badgeStyle","activeOpacity","inactiveOpacity","activeTintColor","inactiveTintColor","renderIcon","style","createElement","styles","iconHorizontal","iconVertical","icon","opacity","focused","size","color","visible","create","position","alignSelf","alignItems","justifyContent","height","width","minWidth","right","top"],"sourceRoot":"../../../src","sources":["views/TabBarIcon.tsx"],"mappings":"AACA,OAAOA,KAAK,MAAM,OAAO;AACzB,SAEEC,UAAU,EAEVC,IAAI,QAEC,cAAc;AAErB,SAASC,KAAK,QAAQ,SAAS;AAmB/B,MAAMC,SAAS,GAAG,EAAE;AAEpB,OAAO,SAASC,UAAUA,CAAAC,IAAA,EAWhB;EAAA,IAXiB;IACzBC,KAAK,EAAEC,CAAC;IACRC,UAAU;IACVC,KAAK;IACLC,UAAU;IACVC,aAAa;IACbC,eAAe;IACfC,eAAe;IACfC,iBAAiB;IACjBC,UAAU;IACVC;EACK,CAAC,GAAAX,IAAA;EACN;EACA;EACA,oBACEN,KAAA,CAAAkB,aAAA,CAAChB,IAAI;IACHe,KAAK,EAAE,CAACR,UAAU,GAAGU,MAAM,CAACC,cAAc,GAAGD,MAAM,CAACE,YAAY,EAAEJ,KAAK;EAAE,gBAEzEjB,KAAA,CAAAkB,aAAA,CAAChB,IAAI;IAACe,KAAK,EAAE,CAACE,MAAM,CAACG,IAAI,EAAE;MAAEC,OAAO,EAAEX;IAAc,CAAC;EAAE,GACpDI,UAAU,CAAC;IACVQ,OAAO,EAAE,IAAI;IACbC,IAAI,EAAErB,SAAS;IACfsB,KAAK,EAAEZ;EACT,CAAC,CACG,CAAC,eACPd,KAAA,CAAAkB,aAAA,CAAChB,IAAI;IAACe,KAAK,EAAE,CAACE,MAAM,CAACG,IAAI,EAAE;MAAEC,OAAO,EAAEV;IAAgB,CAAC;EAAE,GACtDG,UAAU,CAAC;IACVQ,OAAO,EAAE,KAAK;IACdC,IAAI,EAAErB,SAAS;IACfsB,KAAK,EAAEX;EACT,CAAC,CACG,CAAC,eACPf,KAAA,CAAAkB,aAAA,CAACf,KAAK;IACJwB,OAAO,EAAEjB,KAAK,IAAI,IAAK;IACvBO,KAAK,EAAE,CAACE,MAAM,CAACT,KAAK,EAAEC,UAAU,CAAE;IAClCc,IAAI,EAAErB,SAAS,GAAG;EAAK,GAEtBM,KACI,CACH,CAAC;AAEX;AAEA,MAAMS,MAAM,GAAGlB,UAAU,CAAC2B,MAAM,CAAC;EAC/BN,IAAI,EAAE;IACJ;IACA;IACA;IACAO,QAAQ,EAAE,UAAU;IACpBC,SAAS,EAAE,QAAQ;IACnBC,UAAU,EAAE,QAAQ;IACpBC,cAAc,EAAE,QAAQ;IACxBC,MAAM,EAAE,MAAM;IACdC,KAAK,EAAE,MAAM;IACb;IACAC,QAAQ,EAAE/B;EACZ,CAAC;EACDiB,YAAY,EAAE;IACZa,KAAK,EAAE9B,SAAS;IAChB6B,MAAM,EAAE7B;EACV,CAAC;EACDgB,cAAc,EAAE;IACdc,KAAK,EAAE9B,SAAS;IAChB6B,MAAM,EAAE7B;EACV,CAAC;EACDM,KAAK,EAAE;IACLmB,QAAQ,EAAE,UAAU;IACpBO,KAAK,EAAE,CAAC,CAAC;IACTC,GAAG,EAAE,CAAC;EACR;AACF,CAAC,CAAC"}
@@ -0,0 +1,10 @@
1
+ import type { BottomTabSceneInterpolatedStyle, BottomTabSceneInterpolationProps } from '../types';
2
+ /**
3
+ * Simple cross fade animation
4
+ */
5
+ export declare function forCrossFade({ current, }: BottomTabSceneInterpolationProps): BottomTabSceneInterpolatedStyle;
6
+ /**
7
+ * Animation where the screens slightly shift to left/right
8
+ */
9
+ export declare function forShifting({ current, }: BottomTabSceneInterpolationProps): BottomTabSceneInterpolatedStyle;
10
+ //# sourceMappingURL=SceneStyleInterpolators.d.ts.map
@@ -0,0 +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,YAAY,CAAC,EAC3B,OAAO,GACR,EAAE,gCAAgC,GAAG,+BAA+B,CASpE;AAED;;GAEG;AACH,wBAAgB,WAAW,CAAC,EAC1B,OAAO,GACR,EAAE,gCAAgC,GAAG,+BAA+B,CAiBpE"}
@@ -0,0 +1,4 @@
1
+ import type { BottomTabTransitionPreset } from '../types';
2
+ export declare const FadeTransition: BottomTabTransitionPreset;
3
+ export declare const ShiftingTransition: BottomTabTransitionPreset;
4
+ //# sourceMappingURL=TransitionPresets.d.ts.map
@@ -0,0 +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,kBAAkB,EAAE,yBAGhC,CAAC"}
@@ -0,0 +1,4 @@
1
+ import type { TransitionSpec } from '../types';
2
+ export declare const CrossFadeSpec: TransitionSpec;
3
+ export declare const ShiftingSpec: TransitionSpec;
4
+ //# sourceMappingURL=TransitionSpecs.d.ts.map
@@ -0,0 +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,YAAY,EAAE,cAM1B,CAAC"}
@@ -1,3 +1,10 @@
1
+ import * as SceneStyleInterpolator from './TransitionConfigs/SceneStyleInterpolators';
2
+ import * as TransitionPresets from './TransitionConfigs/TransitionPresets';
3
+ import * as TransitionSpecs from './TransitionConfigs/TransitionSpecs';
4
+ /**
5
+ * Transition Presets
6
+ */
7
+ export { SceneStyleInterpolator, TransitionPresets, TransitionSpecs };
1
8
  /**
2
9
  * Navigators
3
10
  */
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/index.tsx"],"names":[],"mappings":"AAAA;;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,GACrB,MAAM,SAAS,CAAC"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/index.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,sBAAsB,MAAM,6CAA6C,CAAC;AACtF,OAAO,KAAK,iBAAiB,MAAM,uCAAuC,CAAC;AAC3E,OAAO,KAAK,eAAe,MAAM,qCAAqC,CAAC;AAEvE;;GAEG;AACH,OAAO,EAAE,sBAAsB,EAAE,iBAAiB,EAAE,eAAe,EAAE,CAAC;AAEtE;;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,GACrB,MAAM,SAAS,CAAC"}
@@ -1,11 +1,11 @@
1
- /// <reference types="react" />
2
- import { DefaultNavigatorOptions, ParamListBase, TabNavigationState, TabRouterOptions } from '@react-navigation/native';
1
+ import { type DefaultNavigatorOptions, type ParamListBase, type TabNavigationState, type TabRouterOptions } from '@react-navigation/native';
2
+ import * as React from 'react';
3
3
  import type { BottomTabNavigationConfig, BottomTabNavigationEventMap, BottomTabNavigationOptions } from '../types';
4
4
  type Props = DefaultNavigatorOptions<ParamListBase, TabNavigationState<ParamListBase>, BottomTabNavigationOptions, BottomTabNavigationEventMap> & TabRouterOptions & BottomTabNavigationConfig;
5
- declare function BottomTabNavigator({ id, initialRouteName, backBehavior, children, screenListeners, screenOptions, sceneContainerStyle, ...rest }: Props): JSX.Element;
5
+ declare function BottomTabNavigator({ id, initialRouteName, backBehavior, children, layout, screenListeners, screenOptions, sceneContainerStyle, ...rest }: Props): React.JSX.Element;
6
6
  export declare const createBottomTabNavigator: {
7
7
  <ParamList extends ParamListBase>(): import("@react-navigation/native").TypedNavigator<ParamList, TabNavigationState<ParamListBase>, BottomTabNavigationOptions, BottomTabNavigationEventMap, typeof BottomTabNavigator>;
8
- <ParamList_1 extends ParamListBase, Config extends import("packages/core/lib/typescript/src/StaticNavigation").StaticConfig<ParamList_1, TabNavigationState<ParamListBase>, BottomTabNavigationOptions, BottomTabNavigationEventMap, typeof BottomTabNavigator>>(config: Config): import("@react-navigation/native").TypedNavigator<ParamList_1, TabNavigationState<ParamListBase>, BottomTabNavigationOptions, BottomTabNavigationEventMap, typeof BottomTabNavigator> & {
8
+ <ParamList_1 extends ParamListBase, Config extends import("@react-navigation/core/lib/typescript/src/StaticNavigation").StaticConfig<ParamList_1, TabNavigationState<ParamListBase>, BottomTabNavigationOptions, BottomTabNavigationEventMap, typeof BottomTabNavigator>>(config: Config): import("@react-navigation/native").TypedNavigator<ParamList_1, TabNavigationState<ParamListBase>, BottomTabNavigationOptions, BottomTabNavigationEventMap, typeof BottomTabNavigator> & {
9
9
  config: Config;
10
10
  };
11
11
  };
@@ -1 +1 @@
1
- {"version":3,"file":"createBottomTabNavigator.d.ts","sourceRoot":"","sources":["../../../../src/navigators/createBottomTabNavigator.tsx"],"names":[],"mappings":";AAAA,OAAO,EAEL,uBAAuB,EACvB,aAAa,EAEb,kBAAkB,EAElB,gBAAgB,EAEjB,MAAM,0BAA0B,CAAC;AAGlC,OAAO,KAAK,EACV,yBAAyB,EACzB,2BAA2B,EAC3B,0BAA0B,EAC3B,MAAM,UAAU,CAAC;AAGlB,KAAK,KAAK,GAAG,uBAAuB,CAClC,aAAa,EACb,kBAAkB,CAAC,aAAa,CAAC,EACjC,0BAA0B,EAC1B,2BAA2B,CAC5B,GACC,gBAAgB,GAChB,yBAAyB,CAAC;AAE5B,iBAAS,kBAAkB,CAAC,EAC1B,EAAE,EACF,gBAAgB,EAChB,YAAY,EACZ,QAAQ,EACR,eAAe,EACf,aAAa,EACb,mBAAmB,EACnB,GAAG,IAAI,EACR,EAAE,KAAK,eA4BP;AAED,eAAO,MAAM,wBAAwB;;;;;CAKhB,CAAC"}
1
+ {"version":3,"file":"createBottomTabNavigator.d.ts","sourceRoot":"","sources":["../../../../src/navigators/createBottomTabNavigator.tsx"],"names":[],"mappings":"AAAA,OAAO,EAEL,KAAK,uBAAuB,EAC5B,KAAK,aAAa,EAElB,KAAK,kBAAkB,EAEvB,KAAK,gBAAgB,EAEtB,MAAM,0BAA0B,CAAC;AAClC,OAAO,KAAK,KAAK,MAAM,OAAO,CAAC;AAE/B,OAAO,KAAK,EACV,yBAAyB,EACzB,2BAA2B,EAC3B,0BAA0B,EAC3B,MAAM,UAAU,CAAC;AAGlB,KAAK,KAAK,GAAG,uBAAuB,CAClC,aAAa,EACb,kBAAkB,CAAC,aAAa,CAAC,EACjC,0BAA0B,EAC1B,2BAA2B,CAC5B,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,GAAG,IAAI,EACR,EAAE,KAAK,qBA6BP;AAED,eAAO,MAAM,wBAAwB;;;;;CAKhB,CAAC"}
@@ -1,7 +1,7 @@
1
- import type { HeaderOptions } from '@react-navigation/elements';
1
+ import type { HeaderOptions, PlatformPressable } from '@react-navigation/elements';
2
2
  import type { Descriptor, NavigationHelpers, NavigationProp, ParamListBase, RouteProp, TabActionHelpers, TabNavigationState } from '@react-navigation/native';
3
3
  import type * as React from 'react';
4
- import type { Animated, GestureResponderEvent, StyleProp, TextStyle, TouchableWithoutFeedbackProps, ViewStyle } from 'react-native';
4
+ import type { Animated, GestureResponderEvent, StyleProp, TextStyle, ViewStyle } from 'react-native';
5
5
  import type { EdgeInsets } from 'react-native-safe-area-context';
6
6
  export type Layout = {
7
7
  width: number;
@@ -154,6 +154,10 @@ export type BottomTabNavigationOptions = HeaderOptions & {
154
154
  * You'd also need to use `useBottomTabBarHeight()` to add a bottom padding to your content.
155
155
  */
156
156
  tabBarBackground?: () => React.ReactNode;
157
+ /**
158
+ * Position of the tab bar on the screen. Defaults to `bottom`.
159
+ */
160
+ tabBarPosition?: 'bottom' | 'left' | 'right' | 'top';
157
161
  /**
158
162
  * Whether this screens should render the first time it's accessed. Defaults to `true`.
159
163
  * Set it to `false` if you want to render the screen on initial render.
@@ -181,9 +185,59 @@ export type BottomTabNavigationOptions = HeaderOptions & {
181
185
  * Only supported on iOS and Android.
182
186
  */
183
187
  freezeOnBlur?: boolean;
188
+ /**
189
+ * Whether transition animations should be enabled when switching tabs.
190
+ * Defaults to `false`.
191
+ */
192
+ animationEnabled?: boolean;
193
+ /**
194
+ * Function which specifies interpolated styles for bottom-tab scenes.
195
+ */
196
+ sceneStyleInterpolator?: BottomTabSceneStyleInterpolator;
197
+ /**
198
+ * Object which specifies the animation type (timing or spring) and their options (such as duration for timing).
199
+ */
200
+ transitionSpec?: TransitionSpec;
184
201
  };
185
202
  export type BottomTabDescriptor = Descriptor<BottomTabNavigationOptions, BottomTabNavigationProp<ParamListBase>, RouteProp<ParamListBase>>;
186
203
  export type BottomTabDescriptorMap = Record<string, BottomTabDescriptor>;
204
+ export type BottomTabSceneInterpolationProps = {
205
+ /**
206
+ * Animated value for the current screen:
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
210
+ */
211
+ current: Animated.Value;
212
+ };
213
+ export type BottomTabSceneInterpolatedStyle = {
214
+ /**
215
+ * Interpolated style for the view representing the scene containing screen content.
216
+ */
217
+ sceneStyle: Animated.WithAnimatedValue<StyleProp<ViewStyle>>;
218
+ };
219
+ export type BottomTabSceneStyleInterpolator = (props: BottomTabSceneInterpolationProps) => BottomTabSceneInterpolatedStyle;
220
+ export type TransitionSpec = {
221
+ animation: 'timing';
222
+ config: Omit<Animated.TimingAnimationConfig, 'toValue' | keyof Animated.AnimationConfig>;
223
+ } | {
224
+ animation: 'spring';
225
+ config: Omit<Animated.SpringAnimationConfig, 'toValue' | keyof Animated.AnimationConfig>;
226
+ };
227
+ export type BottomTabTransitionPreset = {
228
+ /**
229
+ * Whether transition animations should be enabled when switching tabs.
230
+ */
231
+ animationEnabled?: boolean;
232
+ /**
233
+ * Function which specifies interpolated styles for bottom-tab scenes.
234
+ */
235
+ sceneStyleInterpolator?: BottomTabSceneStyleInterpolator;
236
+ /**
237
+ * Object which specifies the animation type (timing or spring) and their options (such as duration for timing).
238
+ */
239
+ transitionSpec?: TransitionSpec;
240
+ };
187
241
  export type BottomTabNavigationConfig = {
188
242
  /**
189
243
  * Function that returns a React element to display as the tab bar.
@@ -234,7 +288,7 @@ export type BottomTabBarProps = {
234
288
  navigation: NavigationHelpers<ParamListBase, BottomTabNavigationEventMap>;
235
289
  insets: EdgeInsets;
236
290
  };
237
- export type BottomTabBarButtonProps = Omit<TouchableWithoutFeedbackProps, 'onPress'> & {
291
+ export type BottomTabBarButtonProps = Omit<React.ComponentProps<typeof PlatformPressable>, 'onPress'> & {
238
292
  href?: string;
239
293
  children: React.ReactNode;
240
294
  onPress?: (e: React.MouseEvent<HTMLAnchorElement, MouseEvent> | GestureResponderEvent) => void;
@@ -1 +1 @@
1
- {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../../src/types.tsx"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../../src/types.tsx"],"names":[],"mappings":"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"}
@@ -0,0 +1,4 @@
1
+ import type { NavigationState } from '@react-navigation/routers';
2
+ import { Animated } from 'react-native';
3
+ export declare function useAnimatedHashMap({ routes, index }: NavigationState): Record<string, Animated.Value>;
4
+ //# sourceMappingURL=useAnimatedHashMap.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"useAnimatedHashMap.d.ts","sourceRoot":"","sources":["../../../../src/utils/useAnimatedHashMap.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,2BAA2B,CAAC;AAEjE,OAAO,EAAE,QAAQ,EAAE,MAAM,cAAc,CAAC;AAExC,wBAAgB,kBAAkB,CAAC,EAAE,MAAM,EAAE,KAAK,EAAE,EAAE,eAAe,kCAoBpE"}
@@ -1,5 +1,5 @@
1
- /// <reference types="react" />
2
- import { Animated, StyleProp, TextStyle } from 'react-native';
1
+ import * as React from 'react';
2
+ import { Animated, type StyleProp, type TextStyle } from 'react-native';
3
3
  type Props = {
4
4
  /**
5
5
  * Whether the badge is visible
@@ -18,6 +18,6 @@ type Props = {
18
18
  */
19
19
  style?: Animated.WithAnimatedValue<StyleProp<TextStyle>>;
20
20
  };
21
- export declare function Badge({ children, style, visible, size, ...rest }: Props): JSX.Element | null;
21
+ export declare function Badge({ children, style, visible, size, ...rest }: Props): React.JSX.Element | null;
22
22
  export {};
23
23
  //# sourceMappingURL=Badge.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"Badge.d.ts","sourceRoot":"","sources":["../../../../src/views/Badge.tsx"],"names":[],"mappings":";AAGA,OAAO,EAAE,QAAQ,EAAE,SAAS,EAAc,SAAS,EAAE,MAAM,cAAc,CAAC;AAE1E,KAAK,KAAK,GAAG;IACX;;OAEG;IACH,OAAO,EAAE,OAAO,CAAC;IACjB;;OAEG;IACH,QAAQ,CAAC,EAAE,MAAM,GAAG,MAAM,CAAC;IAC3B;;OAEG;IACH,IAAI,CAAC,EAAE,MAAM,CAAC;IACd;;OAEG;IACH,KAAK,CAAC,EAAE,QAAQ,CAAC,iBAAiB,CAAC,SAAS,CAAC,SAAS,CAAC,CAAC,CAAC;CAC1D,CAAC;AAEF,wBAAgB,KAAK,CAAC,EACpB,QAAQ,EACR,KAAK,EACL,OAAc,EACd,IAAS,EACT,GAAG,IAAI,EACR,EAAE,KAAK,sBAuEP"}
1
+ {"version":3,"file":"Badge.d.ts","sourceRoot":"","sources":["../../../../src/views/Badge.tsx"],"names":[],"mappings":"AAEA,OAAO,KAAK,KAAK,MAAM,OAAO,CAAC;AAC/B,OAAO,EACL,QAAQ,EACR,KAAK,SAAS,EAEd,KAAK,SAAS,EACf,MAAM,cAAc,CAAC;AAEtB,KAAK,KAAK,GAAG;IACX;;OAEG;IACH,OAAO,EAAE,OAAO,CAAC;IACjB;;OAEG;IACH,QAAQ,CAAC,EAAE,MAAM,GAAG,MAAM,CAAC;IAC3B;;OAEG;IACH,IAAI,CAAC,EAAE,MAAM,CAAC;IACd;;OAEG;IACH,KAAK,CAAC,EAAE,QAAQ,CAAC,iBAAiB,CAAC,SAAS,CAAC,SAAS,CAAC,CAAC,CAAC;CAC1D,CAAC;AAEF,wBAAgB,KAAK,CAAC,EACpB,QAAQ,EACR,KAAK,EACL,OAAc,EACd,IAAS,EACT,GAAG,IAAI,EACR,EAAE,KAAK,4BAuEP"}