@amazon-devices/react-navigation__react-native-tab-view 7.0.9000000000 → 8.0.9000000000-rn-83
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/README.md +2 -646
- package/SystemBundles/adbcd18d13758315355457809fdb5587894f9f3c2c9838769a5a47bf860685c8.bundle +8564 -0
- package/SystemBundles/adbcd18d13758315355457809fdb5587894f9f3c2c9838769a5a47bf860685c8.map +3217 -0
- package/SystemModules/amzn__react-navigation__react-native-tab-view-8.modules.txt +12 -0
- package/SystemModules/amzn__react-navigation__react-native-tab-view-8.private.modules.txt +63 -0
- package/SystemModules/keplerscript-system-bundle-config.json +4 -4
- package/kepler-compatibility.json +2 -2
- package/lib/module/Pager.android.js +3 -1
- package/lib/module/Pager.android.js.map +1 -1
- package/lib/module/Pager.ios.js +3 -1
- package/lib/module/Pager.ios.js.map +1 -1
- package/lib/module/Pager.js +3 -1
- package/lib/module/Pager.js.map +1 -1
- package/lib/module/PagerViewAdapter.js +29 -22
- package/lib/module/PagerViewAdapter.js.map +1 -1
- package/lib/module/PanResponderAdapter.js +46 -32
- package/lib/module/PanResponderAdapter.js.map +1 -1
- package/lib/module/PlatformPressable.js +38 -12
- package/lib/module/PlatformPressable.js.map +1 -1
- package/lib/module/SceneMap.js +7 -4
- package/lib/module/SceneMap.js.map +1 -1
- package/lib/module/SceneView.js +16 -14
- package/lib/module/SceneView.js.map +1 -1
- package/lib/module/TabBar.js +232 -156
- package/lib/module/TabBar.js.map +1 -1
- package/lib/module/TabBarIndicator.js +47 -26
- package/lib/module/TabBarIndicator.js.map +1 -1
- package/lib/module/TabBarItem.js +106 -107
- package/lib/module/TabBarItem.js.map +1 -1
- package/lib/module/TabBarItemLabel.js +33 -0
- package/lib/module/TabBarItemLabel.js.map +1 -0
- package/lib/module/TabView.js +91 -63
- package/lib/module/TabView.js.map +1 -1
- package/lib/module/index.js +7 -5
- package/lib/module/index.js.map +1 -1
- package/lib/module/package.json +1 -0
- package/lib/module/types.js +2 -0
- package/lib/module/types.js.map +1 -1
- package/lib/module/useAnimatedValue.js +4 -2
- package/lib/module/useAnimatedValue.js.map +1 -1
- package/lib/typescript/package.json +1 -0
- package/lib/typescript/src/Pager.android.d.ts +1 -1
- package/lib/typescript/src/Pager.android.d.ts.map +1 -1
- package/lib/typescript/src/Pager.d.ts +1 -1
- package/lib/typescript/src/Pager.d.ts.map +1 -1
- package/lib/typescript/src/Pager.ios.d.ts +1 -1
- package/lib/typescript/src/Pager.ios.d.ts.map +1 -1
- package/lib/typescript/src/PagerViewAdapter.d.ts +4 -1
- package/lib/typescript/src/PagerViewAdapter.d.ts.map +1 -1
- package/lib/typescript/src/PanResponderAdapter.d.ts +4 -1
- package/lib/typescript/src/PanResponderAdapter.d.ts.map +1 -1
- package/lib/typescript/src/PlatformPressable.d.ts +6 -8
- package/lib/typescript/src/PlatformPressable.d.ts.map +1 -1
- package/lib/typescript/src/SceneMap.d.ts +2 -2
- package/lib/typescript/src/SceneMap.d.ts.map +1 -1
- package/lib/typescript/src/SceneView.d.ts +2 -2
- package/lib/typescript/src/SceneView.d.ts.map +1 -1
- package/lib/typescript/src/TabBar.d.ts +7 -19
- package/lib/typescript/src/TabBar.d.ts.map +1 -1
- package/lib/typescript/src/TabBarIndicator.d.ts +8 -6
- package/lib/typescript/src/TabBarIndicator.d.ts.map +1 -1
- package/lib/typescript/src/TabBarItem.d.ts +4 -22
- package/lib/typescript/src/TabBarItem.d.ts.map +1 -1
- package/lib/typescript/src/TabBarItemLabel.d.ts +11 -0
- package/lib/typescript/src/TabBarItemLabel.d.ts.map +1 -0
- package/lib/typescript/src/TabView.d.ts +14 -8
- package/lib/typescript/src/TabView.d.ts.map +1 -1
- package/lib/typescript/src/index.d.ts +6 -6
- package/lib/typescript/src/index.d.ts.map +1 -1
- package/lib/typescript/src/types.d.ts +29 -1
- package/lib/typescript/src/types.d.ts.map +1 -1
- package/lib/typescript/src/useAnimatedValue.d.ts +1 -1
- package/lib/typescript/src/useAnimatedValue.d.ts.map +1 -1
- package/oss-attribution/attribution.txt +0 -0
- package/oss-attribution/licenseInfos.json +1 -0
- package/package.json +93 -1
- package/src/Pager.android.tsx +1 -1
- package/src/Pager.ios.tsx +1 -1
- package/src/Pager.tsx +1 -1
- package/src/PagerViewAdapter.tsx +26 -21
- package/src/PanResponderAdapter.tsx +32 -28
- package/src/PlatformPressable.tsx +59 -10
- package/src/SceneMap.tsx +3 -3
- package/src/SceneView.tsx +6 -7
- package/src/TabBar.tsx +282 -193
- package/src/TabBarIndicator.tsx +65 -28
- package/src/TabBarItem.tsx +119 -130
- package/src/TabBarItemLabel.tsx +42 -0
- package/src/TabView.tsx +59 -16
- package/src/index.tsx +11 -6
- package/src/types.tsx +29 -1
- package/src/useAnimatedValue.tsx +2 -2
- package/SystemBundles/df77923df6c02233e2967296227684cd416c9a363cc8fc6fd81f573829bc74e9.bundle +0 -13783
- package/SystemBundles/df77923df6c02233e2967296227684cd416c9a363cc8fc6fd81f573829bc74e9.map +0 -4787
- package/SystemModules/amzn__react-navigation__react-native-tab-view-7.modules.txt +0 -41
- package/SystemModules/amzn__react-navigation__react-native-tab-view-7.private.modules.txt +0 -96
- package/THIRD_PARTY_NOTICES.txt +0 -24
- package/lib/commonjs/Pager.android.js +0 -14
- package/lib/commonjs/Pager.android.js.map +0 -1
- package/lib/commonjs/Pager.ios.js +0 -14
- package/lib/commonjs/Pager.ios.js.map +0 -1
- package/lib/commonjs/Pager.js +0 -14
- package/lib/commonjs/Pager.js.map +0 -1
- package/lib/commonjs/PagerViewAdapter.js +0 -132
- package/lib/commonjs/PagerViewAdapter.js.map +0 -1
- package/lib/commonjs/PanResponderAdapter.js +0 -204
- package/lib/commonjs/PanResponderAdapter.js.map +0 -1
- package/lib/commonjs/PlatformPressable.js +0 -43
- package/lib/commonjs/PlatformPressable.js.map +0 -1
- package/lib/commonjs/SceneMap.js +0 -29
- package/lib/commonjs/SceneMap.js.map +0 -1
- package/lib/commonjs/SceneView.js +0 -78
- package/lib/commonjs/SceneView.js.map +0 -1
- package/lib/commonjs/TabBar.js +0 -405
- package/lib/commonjs/TabBar.js.map +0 -1
- package/lib/commonjs/TabBarIndicator.js +0 -110
- package/lib/commonjs/TabBarIndicator.js.map +0 -1
- package/lib/commonjs/TabBarItem.js +0 -227
- package/lib/commonjs/TabBarItem.js.map +0 -1
- package/lib/commonjs/TabView.js +0 -122
- package/lib/commonjs/TabView.js.map +0 -1
- package/lib/commonjs/index.js +0 -42
- package/lib/commonjs/index.js.map +0 -1
- package/lib/commonjs/types.js +0 -6
- package/lib/commonjs/types.js.map +0 -1
- package/lib/commonjs/useAnimatedValue.js +0 -18
- package/lib/commonjs/useAnimatedValue.js.map +0 -1
package/lib/module/TabBar.js
CHANGED
|
@@ -1,13 +1,17 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
|
|
1
3
|
import * as React from 'react';
|
|
2
4
|
import { Animated, I18nManager, Platform, StyleSheet, View } from 'react-native';
|
|
3
5
|
import useLatestCallback from 'use-latest-callback';
|
|
4
|
-
import TabBarIndicator from
|
|
5
|
-
import TabBarItem from
|
|
6
|
-
import useAnimatedValue from
|
|
6
|
+
import { TabBarIndicator } from "./TabBarIndicator.js";
|
|
7
|
+
import { TabBarItem } from "./TabBarItem.js";
|
|
8
|
+
import { useAnimatedValue } from "./useAnimatedValue.js";
|
|
9
|
+
import { jsx as _jsx, Fragment as _Fragment, jsxs as _jsxs } from "react/jsx-runtime";
|
|
10
|
+
const useNativeDriver = Platform.OS !== 'web';
|
|
7
11
|
const Separator = ({
|
|
8
12
|
width
|
|
9
13
|
}) => {
|
|
10
|
-
return /*#__PURE__*/
|
|
14
|
+
return /*#__PURE__*/_jsx(View, {
|
|
11
15
|
style: {
|
|
12
16
|
width
|
|
13
17
|
}
|
|
@@ -15,9 +19,31 @@ const Separator = ({
|
|
|
15
19
|
};
|
|
16
20
|
const getFlattenedTabWidth = style => {
|
|
17
21
|
const tabStyle = StyleSheet.flatten(style);
|
|
18
|
-
return tabStyle
|
|
22
|
+
return tabStyle?.width;
|
|
23
|
+
};
|
|
24
|
+
const getFlattenedPaddingStart = style => {
|
|
25
|
+
const flattenStyle = StyleSheet.flatten(style);
|
|
26
|
+
return flattenStyle ? flattenStyle.paddingLeft || flattenStyle.paddingStart || flattenStyle.paddingHorizontal || 0 : 0;
|
|
27
|
+
};
|
|
28
|
+
const getFlattenedPaddingEnd = style => {
|
|
29
|
+
const flattenStyle = StyleSheet.flatten(style);
|
|
30
|
+
return flattenStyle ? flattenStyle.paddingRight || flattenStyle.paddingEnd || flattenStyle.paddingHorizontal || 0 : 0;
|
|
31
|
+
};
|
|
32
|
+
const convertPaddingPercentToSize = (value, layout) => {
|
|
33
|
+
switch (typeof value) {
|
|
34
|
+
case 'number':
|
|
35
|
+
return value;
|
|
36
|
+
case 'string':
|
|
37
|
+
if (value.endsWith('%')) {
|
|
38
|
+
const width = parseFloat(value);
|
|
39
|
+
if (Number.isFinite(width)) {
|
|
40
|
+
return layout.width * (width / 100);
|
|
41
|
+
}
|
|
42
|
+
}
|
|
43
|
+
}
|
|
44
|
+
return 0;
|
|
19
45
|
};
|
|
20
|
-
const getComputedTabWidth = (index, layout, routes, scrollEnabled, tabWidths, flattenedWidth) => {
|
|
46
|
+
const getComputedTabWidth = (index, layout, routes, scrollEnabled, tabWidths, flattenedWidth, flattenedPaddingStart, flattenedPaddingEnd, gap) => {
|
|
21
47
|
if (flattenedWidth === 'auto') {
|
|
22
48
|
return tabWidths[routes[index].key] || 0;
|
|
23
49
|
}
|
|
@@ -35,22 +61,27 @@ const getComputedTabWidth = (index, layout, routes, scrollEnabled, tabWidths, fl
|
|
|
35
61
|
if (scrollEnabled) {
|
|
36
62
|
return layout.width / 5 * 2;
|
|
37
63
|
}
|
|
38
|
-
|
|
64
|
+
const gapTotalWidth = (gap ?? 0) * (routes.length - 1);
|
|
65
|
+
const paddingTotalWidth = convertPaddingPercentToSize(flattenedPaddingStart, layout) + convertPaddingPercentToSize(flattenedPaddingEnd, layout);
|
|
66
|
+
return (layout.width - gapTotalWidth - paddingTotalWidth) / routes.length;
|
|
39
67
|
};
|
|
40
68
|
const getMaxScrollDistance = (tabBarWidth, layoutWidth) => tabBarWidth - layoutWidth;
|
|
41
|
-
const getTranslateX = (scrollAmount, maxScrollDistance) => Animated.multiply(Platform.OS === 'android' &&
|
|
69
|
+
const getTranslateX = (scrollAmount, maxScrollDistance, direction) => Animated.multiply(Platform.OS === 'android' && direction === 'rtl' ? Animated.add(maxScrollDistance, Animated.multiply(scrollAmount, -1)) : scrollAmount, direction === 'rtl' ? 1 : -1);
|
|
42
70
|
const getTabBarWidth = ({
|
|
43
71
|
navigationState,
|
|
44
72
|
layout,
|
|
45
73
|
gap,
|
|
46
74
|
scrollEnabled,
|
|
47
75
|
flattenedTabWidth,
|
|
76
|
+
flattenedPaddingStart,
|
|
77
|
+
flattenedPaddingEnd,
|
|
48
78
|
tabWidths
|
|
49
79
|
}) => {
|
|
50
80
|
const {
|
|
51
81
|
routes
|
|
52
82
|
} = navigationState;
|
|
53
|
-
|
|
83
|
+
const paddingsWidth = Math.max(0, convertPaddingPercentToSize(flattenedPaddingStart, layout) + convertPaddingPercentToSize(flattenedPaddingEnd, layout));
|
|
84
|
+
return routes.reduce((acc, _, i) => acc + (i > 0 ? gap ?? 0 : 0) + getComputedTabWidth(i, layout, routes, scrollEnabled, tabWidths, flattenedTabWidth, flattenedPaddingStart, flattenedPaddingEnd, gap), paddingsWidth);
|
|
54
85
|
};
|
|
55
86
|
const normalizeScrollValue = ({
|
|
56
87
|
layout,
|
|
@@ -59,7 +90,10 @@ const normalizeScrollValue = ({
|
|
|
59
90
|
scrollEnabled,
|
|
60
91
|
tabWidths,
|
|
61
92
|
value,
|
|
62
|
-
flattenedTabWidth
|
|
93
|
+
flattenedTabWidth,
|
|
94
|
+
flattenedPaddingStart,
|
|
95
|
+
flattenedPaddingEnd,
|
|
96
|
+
direction
|
|
63
97
|
}) => {
|
|
64
98
|
const tabBarWidth = getTabBarWidth({
|
|
65
99
|
layout,
|
|
@@ -67,11 +101,13 @@ const normalizeScrollValue = ({
|
|
|
67
101
|
tabWidths,
|
|
68
102
|
gap,
|
|
69
103
|
scrollEnabled,
|
|
70
|
-
flattenedTabWidth
|
|
104
|
+
flattenedTabWidth,
|
|
105
|
+
flattenedPaddingStart,
|
|
106
|
+
flattenedPaddingEnd
|
|
71
107
|
});
|
|
72
108
|
const maxDistance = getMaxScrollDistance(tabBarWidth, layout.width);
|
|
73
109
|
const scrollValue = Math.max(Math.min(value, maxDistance), 0);
|
|
74
|
-
if (Platform.OS === 'android' &&
|
|
110
|
+
if (Platform.OS === 'android' && direction === 'rtl') {
|
|
75
111
|
// On Android, scroll value is not applied in reverse in RTL
|
|
76
112
|
// so we need to manually adjust it to apply correct value
|
|
77
113
|
return maxDistance - scrollValue;
|
|
@@ -84,17 +120,21 @@ const getScrollAmount = ({
|
|
|
84
120
|
gap,
|
|
85
121
|
scrollEnabled,
|
|
86
122
|
flattenedTabWidth,
|
|
87
|
-
tabWidths
|
|
123
|
+
tabWidths,
|
|
124
|
+
flattenedPaddingStart,
|
|
125
|
+
flattenedPaddingEnd,
|
|
126
|
+
direction
|
|
88
127
|
}) => {
|
|
128
|
+
const paddingInitial = direction === 'rtl' ? convertPaddingPercentToSize(flattenedPaddingEnd, layout) : convertPaddingPercentToSize(flattenedPaddingStart, layout);
|
|
89
129
|
const centerDistance = Array.from({
|
|
90
130
|
length: navigationState.index + 1
|
|
91
131
|
}).reduce((total, _, i) => {
|
|
92
|
-
const tabWidth = getComputedTabWidth(i, layout, navigationState.routes, scrollEnabled, tabWidths, flattenedTabWidth);
|
|
132
|
+
const tabWidth = getComputedTabWidth(i, layout, navigationState.routes, scrollEnabled, tabWidths, flattenedTabWidth, flattenedPaddingStart, flattenedPaddingEnd, gap);
|
|
93
133
|
|
|
94
134
|
// To get the current index centered we adjust scroll amount by width of indexes
|
|
95
135
|
// 0 through (i - 1) and add half the width of current index i
|
|
96
|
-
return total + (
|
|
97
|
-
},
|
|
136
|
+
return total + (i > 0 ? gap ?? 0 : 0) + (navigationState.index === i ? tabWidth / 2 : tabWidth);
|
|
137
|
+
}, paddingInitial);
|
|
98
138
|
const scrollAmount = centerDistance - layout.width / 2;
|
|
99
139
|
return normalizeScrollValue({
|
|
100
140
|
layout,
|
|
@@ -103,7 +143,10 @@ const getScrollAmount = ({
|
|
|
103
143
|
value: scrollAmount,
|
|
104
144
|
gap,
|
|
105
145
|
scrollEnabled,
|
|
106
|
-
flattenedTabWidth
|
|
146
|
+
flattenedTabWidth,
|
|
147
|
+
flattenedPaddingStart,
|
|
148
|
+
flattenedPaddingEnd,
|
|
149
|
+
direction
|
|
107
150
|
});
|
|
108
151
|
};
|
|
109
152
|
const getLabelTextDefault = ({
|
|
@@ -115,7 +158,9 @@ const getAccessibleDefault = ({
|
|
|
115
158
|
const getAccessibilityLabelDefault = ({
|
|
116
159
|
route
|
|
117
160
|
}) => typeof route.accessibilityLabel === 'string' ? route.accessibilityLabel : typeof route.title === 'string' ? route.title : undefined;
|
|
118
|
-
const renderIndicatorDefault = props => /*#__PURE__*/
|
|
161
|
+
const renderIndicatorDefault = props => /*#__PURE__*/_jsx(TabBarIndicator, {
|
|
162
|
+
...props
|
|
163
|
+
});
|
|
119
164
|
const getTestIdDefault = ({
|
|
120
165
|
route
|
|
121
166
|
}) => route.testID;
|
|
@@ -123,11 +168,7 @@ const getTestIdDefault = ({
|
|
|
123
168
|
// How many items measurements should we update per batch.
|
|
124
169
|
// Defaults to 10, since that's whats FlatList is using in initialNumToRender.
|
|
125
170
|
const MEASURE_PER_BATCH = 10;
|
|
126
|
-
export
|
|
127
|
-
getLabelText = getLabelTextDefault,
|
|
128
|
-
getAccessible = getAccessibleDefault,
|
|
129
|
-
getAccessibilityLabel = getAccessibilityLabelDefault,
|
|
130
|
-
getTestID = getTestIdDefault,
|
|
171
|
+
export function TabBar({
|
|
131
172
|
renderIndicator = renderIndicatorDefault,
|
|
132
173
|
gap = 0,
|
|
133
174
|
scrollEnabled,
|
|
@@ -140,21 +181,20 @@ export default function TabBar({
|
|
|
140
181
|
inactiveColor,
|
|
141
182
|
indicatorContainerStyle,
|
|
142
183
|
indicatorStyle,
|
|
143
|
-
labelStyle,
|
|
144
184
|
onTabLongPress,
|
|
145
185
|
onTabPress,
|
|
146
186
|
pressColor,
|
|
147
187
|
pressOpacity,
|
|
148
|
-
|
|
149
|
-
renderIcon,
|
|
150
|
-
renderLabel,
|
|
188
|
+
direction = I18nManager.getConstants().isRTL ? 'rtl' : 'ltr',
|
|
151
189
|
renderTabBarItem,
|
|
152
190
|
style,
|
|
153
191
|
tabStyle,
|
|
192
|
+
layout: propLayout,
|
|
154
193
|
testID,
|
|
155
|
-
android_ripple
|
|
194
|
+
android_ripple,
|
|
195
|
+
options
|
|
156
196
|
}) {
|
|
157
|
-
const [layout, setLayout] = React.useState({
|
|
197
|
+
const [layout, setLayout] = React.useState(propLayout ?? {
|
|
158
198
|
width: 0,
|
|
159
199
|
height: 0
|
|
160
200
|
});
|
|
@@ -168,13 +208,18 @@ export default function TabBar({
|
|
|
168
208
|
} = navigationState;
|
|
169
209
|
const flattenedTabWidth = getFlattenedTabWidth(tabStyle);
|
|
170
210
|
const isWidthDynamic = flattenedTabWidth === 'auto';
|
|
211
|
+
const flattenedPaddingEnd = getFlattenedPaddingEnd(contentContainerStyle);
|
|
212
|
+
const flattenedPaddingStart = getFlattenedPaddingStart(contentContainerStyle);
|
|
171
213
|
const scrollOffset = getScrollAmount({
|
|
172
214
|
layout,
|
|
173
215
|
navigationState,
|
|
174
216
|
tabWidths,
|
|
175
217
|
gap,
|
|
176
218
|
scrollEnabled,
|
|
177
|
-
flattenedTabWidth
|
|
219
|
+
flattenedTabWidth,
|
|
220
|
+
flattenedPaddingStart,
|
|
221
|
+
flattenedPaddingEnd,
|
|
222
|
+
direction
|
|
178
223
|
});
|
|
179
224
|
const hasMeasuredTabWidths = Boolean(layout.width) && routes.slice(0, navigationState.index).every(r => typeof tabWidths[r.key] === 'number');
|
|
180
225
|
React.useEffect(() => {
|
|
@@ -186,8 +231,7 @@ export default function TabBar({
|
|
|
186
231
|
return;
|
|
187
232
|
}
|
|
188
233
|
if (scrollEnabled) {
|
|
189
|
-
|
|
190
|
-
(_flatListRef$current = flatListRef.current) === null || _flatListRef$current === void 0 || _flatListRef$current.scrollToOffset({
|
|
234
|
+
flatListRef.current?.scrollToOffset({
|
|
191
235
|
offset: scrollOffset,
|
|
192
236
|
animated: true
|
|
193
237
|
});
|
|
@@ -209,81 +253,105 @@ export default function TabBar({
|
|
|
209
253
|
tabWidths,
|
|
210
254
|
gap,
|
|
211
255
|
scrollEnabled,
|
|
212
|
-
flattenedTabWidth
|
|
256
|
+
flattenedTabWidth,
|
|
257
|
+
flattenedPaddingStart,
|
|
258
|
+
flattenedPaddingEnd
|
|
213
259
|
});
|
|
214
260
|
const separatorsWidth = Math.max(0, routes.length - 1) * gap;
|
|
215
|
-
const
|
|
216
|
-
const
|
|
217
|
-
const translateX = React.useMemo(() => getTranslateX(scrollAmount, getMaxScrollDistance(tabBarWidth, layout.width)), [layout.width, scrollAmount, tabBarWidth]);
|
|
261
|
+
const paddingsWidth = Math.max(0, convertPaddingPercentToSize(flattenedPaddingStart, layout) + convertPaddingPercentToSize(flattenedPaddingEnd, layout));
|
|
262
|
+
const translateX = React.useMemo(() => getTranslateX(scrollAmount, getMaxScrollDistance(tabBarWidth, layout.width), direction), [direction, layout.width, scrollAmount, tabBarWidth]);
|
|
218
263
|
const renderItem = React.useCallback(({
|
|
219
264
|
item: route,
|
|
220
265
|
index
|
|
221
266
|
}) => {
|
|
222
|
-
const
|
|
223
|
-
|
|
224
|
-
|
|
225
|
-
|
|
226
|
-
|
|
227
|
-
|
|
228
|
-
|
|
229
|
-
|
|
230
|
-
|
|
231
|
-
|
|
232
|
-
|
|
233
|
-
|
|
234
|
-
|
|
235
|
-
|
|
236
|
-
|
|
237
|
-
|
|
238
|
-
|
|
239
|
-
measuredTabWidths.current[route.key] = e.nativeEvent.layout.width;
|
|
267
|
+
const {
|
|
268
|
+
testID = getTestIdDefault({
|
|
269
|
+
route
|
|
270
|
+
}),
|
|
271
|
+
labelText = getLabelTextDefault({
|
|
272
|
+
route
|
|
273
|
+
}),
|
|
274
|
+
accessible = getAccessibleDefault({
|
|
275
|
+
route
|
|
276
|
+
}),
|
|
277
|
+
accessibilityLabel = getAccessibilityLabelDefault({
|
|
278
|
+
route
|
|
279
|
+
}),
|
|
280
|
+
...rest
|
|
281
|
+
} = options?.[route.key] ?? {};
|
|
282
|
+
const onLayout = isWidthDynamic ? e => {
|
|
283
|
+
measuredTabWidths.current[route.key] = e.nativeEvent.layout.width;
|
|
240
284
|
|
|
285
|
+
// When we have measured widths for all of the tabs, we should updates the state
|
|
286
|
+
// We avoid doing separate setState for each layout since it triggers multiple renders and slows down app
|
|
287
|
+
// If we have more than 10 routes divide updating tabWidths into multiple batches. Here we update only first batch of 10 items.
|
|
288
|
+
if (routes.length > MEASURE_PER_BATCH && index === MEASURE_PER_BATCH && routes.slice(0, MEASURE_PER_BATCH).every(r => typeof measuredTabWidths.current[r.key] === 'number')) {
|
|
289
|
+
setTabWidths({
|
|
290
|
+
...measuredTabWidths.current
|
|
291
|
+
});
|
|
292
|
+
} else if (routes.every(r => typeof measuredTabWidths.current[r.key] === 'number')) {
|
|
241
293
|
// When we have measured widths for all of the tabs, we should updates the state
|
|
242
294
|
// We avoid doing separate setState for each layout since it triggers multiple renders and slows down app
|
|
243
|
-
|
|
244
|
-
|
|
245
|
-
|
|
246
|
-
|
|
247
|
-
|
|
248
|
-
|
|
249
|
-
|
|
250
|
-
|
|
251
|
-
|
|
252
|
-
|
|
253
|
-
|
|
254
|
-
}
|
|
255
|
-
} : undefined,
|
|
256
|
-
onPress: () => {
|
|
257
|
-
const event = {
|
|
258
|
-
route,
|
|
259
|
-
defaultPrevented: false,
|
|
260
|
-
preventDefault: () => {
|
|
261
|
-
event.defaultPrevented = true;
|
|
262
|
-
}
|
|
263
|
-
};
|
|
264
|
-
onTabPress === null || onTabPress === void 0 || onTabPress(event);
|
|
265
|
-
if (event.defaultPrevented) {
|
|
266
|
-
return;
|
|
295
|
+
setTabWidths({
|
|
296
|
+
...measuredTabWidths.current
|
|
297
|
+
});
|
|
298
|
+
}
|
|
299
|
+
} : undefined;
|
|
300
|
+
const onPress = () => {
|
|
301
|
+
const event = {
|
|
302
|
+
route,
|
|
303
|
+
defaultPrevented: false,
|
|
304
|
+
preventDefault: () => {
|
|
305
|
+
event.defaultPrevented = true;
|
|
267
306
|
}
|
|
268
|
-
|
|
269
|
-
|
|
270
|
-
|
|
271
|
-
|
|
272
|
-
}
|
|
273
|
-
|
|
307
|
+
};
|
|
308
|
+
onTabPress?.(event);
|
|
309
|
+
if (event.defaultPrevented) {
|
|
310
|
+
return;
|
|
311
|
+
}
|
|
312
|
+
jumpTo(route.key);
|
|
313
|
+
};
|
|
314
|
+
const onLongPress = () => onTabLongPress?.({
|
|
315
|
+
route
|
|
316
|
+
});
|
|
317
|
+
|
|
318
|
+
// Calculate the default width for tab for FlatList to work
|
|
319
|
+
const defaultTabWidth = !isWidthDynamic ? getComputedTabWidth(index, layout, routes, scrollEnabled, tabWidths, getFlattenedTabWidth(tabStyle), getFlattenedPaddingEnd(contentContainerStyle), getFlattenedPaddingStart(contentContainerStyle), gap) : undefined;
|
|
320
|
+
const props = {
|
|
321
|
+
...rest,
|
|
322
|
+
position,
|
|
323
|
+
route,
|
|
324
|
+
navigationState,
|
|
325
|
+
testID,
|
|
326
|
+
labelText,
|
|
327
|
+
accessible,
|
|
328
|
+
accessibilityLabel,
|
|
329
|
+
activeColor,
|
|
330
|
+
inactiveColor,
|
|
331
|
+
pressColor,
|
|
332
|
+
pressOpacity,
|
|
333
|
+
onLayout,
|
|
334
|
+
onPress,
|
|
335
|
+
onLongPress,
|
|
274
336
|
style: tabStyle,
|
|
275
|
-
|
|
276
|
-
defaultTabWidth: !isWidthDynamic ? getComputedTabWidth(index, layout, routes, scrollEnabled, tabWidths, getFlattenedTabWidth(tabStyle)) : undefined,
|
|
337
|
+
defaultTabWidth,
|
|
277
338
|
android_ripple
|
|
278
339
|
};
|
|
279
|
-
return /*#__PURE__*/
|
|
280
|
-
|
|
281
|
-
|
|
282
|
-
|
|
340
|
+
return /*#__PURE__*/_jsxs(_Fragment, {
|
|
341
|
+
children: [gap > 0 && index > 0 ? /*#__PURE__*/_jsx(Separator, {
|
|
342
|
+
width: gap
|
|
343
|
+
}) : null, renderTabBarItem ? renderTabBarItem({
|
|
344
|
+
key: route.key,
|
|
345
|
+
...props
|
|
346
|
+
}) : /*#__PURE__*/_jsx(TabBarItem, {
|
|
347
|
+
...props
|
|
348
|
+
}, route.key)]
|
|
349
|
+
});
|
|
350
|
+
}, [position, navigationState, options, activeColor, inactiveColor, pressColor, pressOpacity, isWidthDynamic, tabStyle, layout, routes, scrollEnabled, tabWidths, contentContainerStyle, gap, android_ripple, renderTabBarItem, onTabPress, jumpTo, onTabLongPress]);
|
|
283
351
|
const keyExtractor = React.useCallback(item => item.key, []);
|
|
284
352
|
const contentContainerStyleMemoized = React.useMemo(() => [styles.tabContent, scrollEnabled ? {
|
|
285
|
-
width: tabBarWidth
|
|
286
|
-
} :
|
|
353
|
+
width: tabBarWidth
|
|
354
|
+
} : null, contentContainerStyle], [contentContainerStyle, scrollEnabled, tabBarWidth]);
|
|
287
355
|
const handleScroll = React.useMemo(() => Animated.event([{
|
|
288
356
|
nativeEvent: {
|
|
289
357
|
contentOffset: {
|
|
@@ -291,7 +359,7 @@ export default function TabBar({
|
|
|
291
359
|
}
|
|
292
360
|
}
|
|
293
361
|
}], {
|
|
294
|
-
useNativeDriver
|
|
362
|
+
useNativeDriver
|
|
295
363
|
}), [scrollAmount]);
|
|
296
364
|
const handleViewableItemsChanged = useLatestCallback(({
|
|
297
365
|
changed
|
|
@@ -301,68 +369,68 @@ export default function TabBar({
|
|
|
301
369
|
}
|
|
302
370
|
// Get next vievable item
|
|
303
371
|
const item = changed[changed.length - 1];
|
|
304
|
-
const index =
|
|
372
|
+
const index = item?.index || 0;
|
|
305
373
|
if (item.isViewable && (index % 10 === 0 || index === navigationState.index || index === routes.length - 1)) {
|
|
306
374
|
setTabWidths({
|
|
307
375
|
...measuredTabWidths.current
|
|
308
376
|
});
|
|
309
377
|
}
|
|
310
378
|
});
|
|
311
|
-
|
|
312
|
-
// FIXME: Not sure why i have to as-any here (x3) ..
|
|
313
|
-
return /*#__PURE__*/React.createElement(Animated.View, {
|
|
379
|
+
return /*#__PURE__*/_jsxs(Animated.View, {
|
|
314
380
|
onLayout: handleLayout,
|
|
315
|
-
style: [styles.tabBar, style]
|
|
316
|
-
|
|
317
|
-
|
|
318
|
-
|
|
319
|
-
|
|
320
|
-
|
|
321
|
-
|
|
322
|
-
|
|
323
|
-
|
|
324
|
-
|
|
325
|
-
|
|
326
|
-
|
|
327
|
-
|
|
328
|
-
|
|
329
|
-
|
|
330
|
-
|
|
331
|
-
|
|
332
|
-
|
|
333
|
-
|
|
334
|
-
|
|
335
|
-
|
|
336
|
-
|
|
337
|
-
|
|
338
|
-
|
|
339
|
-
|
|
340
|
-
|
|
341
|
-
|
|
342
|
-
|
|
343
|
-
|
|
344
|
-
|
|
345
|
-
|
|
346
|
-
|
|
347
|
-
|
|
348
|
-
|
|
349
|
-
|
|
350
|
-
|
|
351
|
-
|
|
352
|
-
|
|
353
|
-
|
|
354
|
-
|
|
355
|
-
|
|
356
|
-
|
|
357
|
-
|
|
358
|
-
|
|
359
|
-
|
|
360
|
-
|
|
381
|
+
style: [styles.tabBar, style],
|
|
382
|
+
children: [/*#__PURE__*/_jsx(Animated.View, {
|
|
383
|
+
pointerEvents: "none",
|
|
384
|
+
style: [styles.indicatorContainer, scrollEnabled ? {
|
|
385
|
+
transform: [{
|
|
386
|
+
translateX
|
|
387
|
+
}]
|
|
388
|
+
} : null, scrollEnabled ? {
|
|
389
|
+
width: tabBarWidth
|
|
390
|
+
} : null, indicatorContainerStyle],
|
|
391
|
+
children: renderIndicator({
|
|
392
|
+
position,
|
|
393
|
+
layout,
|
|
394
|
+
navigationState,
|
|
395
|
+
jumpTo,
|
|
396
|
+
direction,
|
|
397
|
+
width: isWidthDynamic ? 'auto' : Math.max(0, (tabBarWidth - separatorsWidth - paddingsWidth) / routes.length),
|
|
398
|
+
style: [indicatorStyle, {
|
|
399
|
+
start: flattenedPaddingStart,
|
|
400
|
+
end: flattenedPaddingEnd
|
|
401
|
+
}],
|
|
402
|
+
getTabWidth: i => getComputedTabWidth(i, layout, routes, scrollEnabled, tabWidths, flattenedTabWidth, flattenedPaddingEnd, flattenedPaddingStart, gap),
|
|
403
|
+
gap
|
|
404
|
+
})
|
|
405
|
+
}), /*#__PURE__*/_jsx(View, {
|
|
406
|
+
style: styles.scroll,
|
|
407
|
+
children: /*#__PURE__*/_jsx(Animated.FlatList, {
|
|
408
|
+
data: routes,
|
|
409
|
+
keyExtractor: keyExtractor,
|
|
410
|
+
horizontal: true,
|
|
411
|
+
role: "tablist",
|
|
412
|
+
keyboardShouldPersistTaps: "handled",
|
|
413
|
+
scrollEnabled: scrollEnabled,
|
|
414
|
+
bounces: bounces,
|
|
415
|
+
initialNumToRender: MEASURE_PER_BATCH,
|
|
416
|
+
onViewableItemsChanged: handleViewableItemsChanged,
|
|
417
|
+
alwaysBounceHorizontal: false,
|
|
418
|
+
scrollsToTop: false,
|
|
419
|
+
showsHorizontalScrollIndicator: false,
|
|
420
|
+
showsVerticalScrollIndicator: false,
|
|
421
|
+
automaticallyAdjustContentInsets: false,
|
|
422
|
+
overScrollMode: "never",
|
|
423
|
+
contentContainerStyle: contentContainerStyleMemoized,
|
|
424
|
+
scrollEventThrottle: 16,
|
|
425
|
+
renderItem: renderItem,
|
|
426
|
+
onScroll: handleScroll,
|
|
427
|
+
ref: flatListRef,
|
|
428
|
+
testID: testID
|
|
429
|
+
})
|
|
430
|
+
})]
|
|
431
|
+
});
|
|
361
432
|
}
|
|
362
433
|
const styles = StyleSheet.create({
|
|
363
|
-
container: {
|
|
364
|
-
flex: 1
|
|
365
|
-
},
|
|
366
434
|
scroll: {
|
|
367
435
|
overflow: Platform.select({
|
|
368
436
|
default: 'scroll',
|
|
@@ -370,26 +438,34 @@ const styles = StyleSheet.create({
|
|
|
370
438
|
})
|
|
371
439
|
},
|
|
372
440
|
tabBar: {
|
|
441
|
+
zIndex: 1,
|
|
373
442
|
backgroundColor: '#2196f3',
|
|
374
443
|
elevation: 4,
|
|
375
|
-
|
|
376
|
-
|
|
377
|
-
|
|
378
|
-
|
|
379
|
-
|
|
380
|
-
|
|
381
|
-
|
|
382
|
-
|
|
444
|
+
...Platform.select({
|
|
445
|
+
default: {
|
|
446
|
+
shadowColor: 'black',
|
|
447
|
+
shadowOpacity: 0.1,
|
|
448
|
+
shadowRadius: StyleSheet.hairlineWidth,
|
|
449
|
+
shadowOffset: {
|
|
450
|
+
height: StyleSheet.hairlineWidth,
|
|
451
|
+
width: 0
|
|
452
|
+
}
|
|
453
|
+
},
|
|
454
|
+
web: {
|
|
455
|
+
boxShadow: '0 1px 1px rgba(0, 0, 0, 0.1)'
|
|
456
|
+
}
|
|
457
|
+
})
|
|
383
458
|
},
|
|
384
459
|
tabContent: {
|
|
460
|
+
flexGrow: 1,
|
|
385
461
|
flexDirection: 'row',
|
|
386
462
|
flexWrap: 'nowrap'
|
|
387
463
|
},
|
|
388
464
|
indicatorContainer: {
|
|
389
465
|
position: 'absolute',
|
|
390
466
|
top: 0,
|
|
391
|
-
|
|
392
|
-
|
|
467
|
+
start: 0,
|
|
468
|
+
end: 0,
|
|
393
469
|
bottom: 0
|
|
394
470
|
}
|
|
395
471
|
});
|
package/lib/module/TabBar.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["React","Animated","I18nManager","Platform","StyleSheet","View","useLatestCallback","TabBarIndicator","TabBarItem","useAnimatedValue","Separator","width","createElement","style","getFlattenedTabWidth","tabStyle","flatten","getComputedTabWidth","index","layout","routes","scrollEnabled","tabWidths","flattenedWidth","key","endsWith","parseFloat","Number","isFinite","length","getMaxScrollDistance","tabBarWidth","layoutWidth","getTranslateX","scrollAmount","maxScrollDistance","multiply","OS","isRTL","add","getTabBarWidth","navigationState","gap","flattenedTabWidth","reduce","acc","_","i","normalizeScrollValue","value","maxDistance","scrollValue","Math","max","min","getScrollAmount","centerDistance","Array","from","total","tabWidth","getLabelTextDefault","route","title","getAccessibleDefault","accessible","getAccessibilityLabelDefault","accessibilityLabel","undefined","renderIndicatorDefault","props","getTestIdDefault","testID","MEASURE_PER_BATCH","TabBar","getLabelText","getAccessible","getAccessibilityLabel","getTestID","renderIndicator","jumpTo","position","activeColor","bounces","contentContainerStyle","inactiveColor","indicatorContainerStyle","indicatorStyle","labelStyle","onTabLongPress","onTabPress","pressColor","pressOpacity","renderBadge","renderIcon","renderLabel","renderTabBarItem","android_ripple","setLayout","useState","height","setTabWidths","flatListRef","useRef","isFirst","measuredTabWidths","isWidthDynamic","scrollOffset","hasMeasuredTabWidths","Boolean","slice","every","r","useEffect","current","_flatListRef$current","scrollToOffset","offset","animated","handleLayout","e","nativeEvent","separatorsWidth","separatorPercent","tabBarWidthPercent","translateX","useMemo","renderItem","useCallback","item","onLayout","onPress","event","defaultPrevented","preventDefault","onLongPress","defaultTabWidth","Fragment","keyExtractor","contentContainerStyleMemoized","styles","tabContent","container","handleScroll","contentOffset","x","useNativeDriver","handleViewableItemsChanged","changed","isViewable","tabBar","pointerEvents","indicatorContainer","transform","getTabWidth","scroll","FlatList","data","horizontal","accessibilityRole","keyboardShouldPersistTaps","initialNumToRender","onViewableItemsChanged","alwaysBounceHorizontal","scrollsToTop","showsHorizontalScrollIndicator","showsVerticalScrollIndicator","automaticallyAdjustContentInsets","overScrollMode","scrollEventThrottle","onScroll","ref","create","flex","overflow","select","default","web","backgroundColor","elevation","shadowColor","shadowOpacity","shadowRadius","hairlineWidth","shadowOffset","zIndex","flexDirection","flexWrap","top","left","right","bottom"],"sourceRoot":"../../src","sources":["TabBar.tsx"],"mappings":"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","ignoreList":[]}
|
|
1
|
+
{"version":3,"names":["React","Animated","I18nManager","Platform","StyleSheet","View","useLatestCallback","TabBarIndicator","TabBarItem","useAnimatedValue","jsx","_jsx","Fragment","_Fragment","jsxs","_jsxs","useNativeDriver","OS","Separator","width","style","getFlattenedTabWidth","tabStyle","flatten","getFlattenedPaddingStart","flattenStyle","paddingLeft","paddingStart","paddingHorizontal","getFlattenedPaddingEnd","paddingRight","paddingEnd","convertPaddingPercentToSize","value","layout","endsWith","parseFloat","Number","isFinite","getComputedTabWidth","index","routes","scrollEnabled","tabWidths","flattenedWidth","flattenedPaddingStart","flattenedPaddingEnd","gap","key","gapTotalWidth","length","paddingTotalWidth","getMaxScrollDistance","tabBarWidth","layoutWidth","getTranslateX","scrollAmount","maxScrollDistance","direction","multiply","add","getTabBarWidth","navigationState","flattenedTabWidth","paddingsWidth","Math","max","reduce","acc","_","i","normalizeScrollValue","maxDistance","scrollValue","min","getScrollAmount","paddingInitial","centerDistance","Array","from","total","tabWidth","getLabelTextDefault","route","title","getAccessibleDefault","accessible","getAccessibilityLabelDefault","accessibilityLabel","undefined","renderIndicatorDefault","props","getTestIdDefault","testID","MEASURE_PER_BATCH","TabBar","renderIndicator","jumpTo","position","activeColor","bounces","contentContainerStyle","inactiveColor","indicatorContainerStyle","indicatorStyle","onTabLongPress","onTabPress","pressColor","pressOpacity","getConstants","isRTL","renderTabBarItem","propLayout","android_ripple","options","setLayout","useState","height","setTabWidths","flatListRef","useRef","isFirst","measuredTabWidths","isWidthDynamic","scrollOffset","hasMeasuredTabWidths","Boolean","slice","every","r","useEffect","current","scrollToOffset","offset","animated","handleLayout","e","nativeEvent","separatorsWidth","translateX","useMemo","renderItem","useCallback","item","labelText","rest","onLayout","onPress","event","defaultPrevented","preventDefault","onLongPress","defaultTabWidth","children","keyExtractor","contentContainerStyleMemoized","styles","tabContent","handleScroll","contentOffset","x","handleViewableItemsChanged","changed","isViewable","tabBar","pointerEvents","indicatorContainer","transform","start","end","getTabWidth","scroll","FlatList","data","horizontal","role","keyboardShouldPersistTaps","initialNumToRender","onViewableItemsChanged","alwaysBounceHorizontal","scrollsToTop","showsHorizontalScrollIndicator","showsVerticalScrollIndicator","automaticallyAdjustContentInsets","overScrollMode","scrollEventThrottle","onScroll","ref","create","overflow","select","default","web","zIndex","backgroundColor","elevation","shadowColor","shadowOpacity","shadowRadius","hairlineWidth","shadowOffset","boxShadow","flexGrow","flexDirection","flexWrap","top","bottom"],"sourceRoot":"../../src","sources":["TabBar.tsx"],"mappings":"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","ignoreList":[]}
|