react-native-tab-view 3.3.3 → 3.3.4
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/Pager.android.js +0 -2
- package/lib/commonjs/Pager.android.js.map +1 -1
- package/lib/commonjs/Pager.ios.js +0 -2
- package/lib/commonjs/Pager.ios.js.map +1 -1
- package/lib/commonjs/Pager.js +0 -2
- package/lib/commonjs/Pager.js.map +1 -1
- package/lib/commonjs/PagerViewAdapter.js +0 -24
- package/lib/commonjs/PagerViewAdapter.js.map +1 -1
- package/lib/commonjs/PanResponderAdapter.js +11 -42
- package/lib/commonjs/PanResponderAdapter.js.map +1 -1
- package/lib/commonjs/PlatformPressable.js +1 -7
- package/lib/commonjs/PlatformPressable.js.map +1 -1
- package/lib/commonjs/SceneMap.js +0 -5
- package/lib/commonjs/SceneMap.js.map +1 -1
- package/lib/commonjs/SceneView.js +4 -15
- package/lib/commonjs/SceneView.js.map +1 -1
- package/lib/commonjs/TabBar.js +19 -57
- package/lib/commonjs/TabBar.js.map +1 -1
- package/lib/commonjs/TabBarIndicator.js +7 -18
- package/lib/commonjs/TabBarIndicator.js.map +1 -1
- package/lib/commonjs/TabBarItem.js +2 -27
- package/lib/commonjs/TabBarItem.js.map +1 -1
- package/lib/commonjs/TabView.js +6 -18
- package/lib/commonjs/TabView.js.map +1 -1
- package/lib/commonjs/index.js +0 -6
- package/lib/commonjs/index.js.map +1 -1
- package/lib/commonjs/types.js.map +1 -1
- package/lib/commonjs/useAnimatedValue.js +0 -7
- package/lib/commonjs/useAnimatedValue.js.map +1 -1
- package/lib/module/Pager.android.js.map +1 -1
- package/lib/module/Pager.ios.js.map +1 -1
- package/lib/module/Pager.js.map +1 -1
- package/lib/module/PagerViewAdapter.js +0 -14
- package/lib/module/PagerViewAdapter.js.map +1 -1
- package/lib/module/PanResponderAdapter.js +11 -28
- package/lib/module/PanResponderAdapter.js.map +1 -1
- package/lib/module/PlatformPressable.js +1 -2
- package/lib/module/PlatformPressable.js.map +1 -1
- package/lib/module/SceneMap.js.map +1 -1
- package/lib/module/SceneView.js +4 -9
- package/lib/module/SceneView.js.map +1 -1
- package/lib/module/TabBar.js +19 -45
- package/lib/module/TabBar.js.map +1 -1
- package/lib/module/TabBarIndicator.js +7 -10
- package/lib/module/TabBarIndicator.js.map +1 -1
- package/lib/module/TabBarItem.js +2 -15
- package/lib/module/TabBarItem.js.map +1 -1
- package/lib/module/TabView.js +6 -8
- package/lib/module/TabView.js.map +1 -1
- package/lib/module/index.js.map +1 -1
- package/lib/module/types.js.map +1 -1
- package/lib/module/useAnimatedValue.js +0 -2
- package/lib/module/useAnimatedValue.js.map +1 -1
- package/lib/typescript/src/Pager.android.d.ts +1 -0
- package/lib/typescript/src/Pager.android.d.ts.map +1 -0
- package/lib/typescript/src/Pager.d.ts +1 -0
- package/lib/typescript/src/Pager.d.ts.map +1 -0
- package/lib/typescript/src/Pager.ios.d.ts +1 -0
- package/lib/typescript/src/Pager.ios.d.ts.map +1 -0
- package/lib/typescript/src/PagerViewAdapter.d.ts +1 -0
- package/lib/typescript/src/PagerViewAdapter.d.ts.map +1 -0
- package/lib/typescript/src/PanResponderAdapter.d.ts +1 -0
- package/lib/typescript/src/PanResponderAdapter.d.ts.map +1 -0
- package/lib/typescript/src/PlatformPressable.d.ts +1 -0
- package/lib/typescript/src/PlatformPressable.d.ts.map +1 -0
- package/lib/typescript/src/SceneMap.d.ts +1 -0
- package/lib/typescript/src/SceneMap.d.ts.map +1 -0
- package/lib/typescript/src/SceneView.d.ts +1 -0
- package/lib/typescript/src/SceneView.d.ts.map +1 -0
- package/lib/typescript/src/TabBar.d.ts +1 -0
- package/lib/typescript/src/TabBar.d.ts.map +1 -0
- package/lib/typescript/src/TabBarIndicator.d.ts +1 -0
- package/lib/typescript/src/TabBarIndicator.d.ts.map +1 -0
- package/lib/typescript/src/TabBarItem.d.ts +1 -0
- package/lib/typescript/src/TabBarItem.d.ts.map +1 -0
- package/lib/typescript/src/TabView.d.ts +1 -0
- package/lib/typescript/src/TabView.d.ts.map +1 -0
- package/lib/typescript/src/index.d.ts +1 -0
- package/lib/typescript/src/index.d.ts.map +1 -0
- package/lib/typescript/src/types.d.ts +1 -0
- package/lib/typescript/src/types.d.ts.map +1 -0
- package/lib/typescript/src/useAnimatedValue.d.ts +1 -0
- package/lib/typescript/src/useAnimatedValue.d.ts.map +1 -0
- package/package.json +3 -3
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","getFlattenedTabWidth","style","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","setLayout","useState","height","setTabWidths","flatListRef","useRef","isFirst","measuredTabWidths","isWidthDynamic","scrollOffset","hasMeasuredTabWidths","Boolean","slice","every","r","useEffect","current","scrollToOffset","offset","animated","handleLayout","e","nativeEvent","separatorsWidth","separatorPercent","tabBarWidthPercent","translateX","useMemo","renderItem","useCallback","item","onLayout","onPress","event","defaultPrevented","preventDefault","onLongPress","defaultTabWidth","keyExtractor","contentContainerStyleMemoized","styles","tabContent","container","handleScroll","contentOffset","x","useNativeDriver","handleViewableItemsChanged","changed","isViewable","tabBar","indicatorContainer","transform","getTabWidth","scroll","create","flex","overflow","select","default","web","backgroundColor","elevation","shadowColor","shadowOpacity","shadowRadius","hairlineWidth","shadowOffset","zIndex","flexDirection","flexWrap","top","left","right","bottom"],"sources":["TabBar.tsx"],"sourcesContent":["import * as React from 'react';\nimport {\n Animated,\n FlatList,\n I18nManager,\n LayoutChangeEvent,\n ListRenderItemInfo,\n Platform,\n StyleProp,\n StyleSheet,\n TextStyle,\n View,\n ViewStyle,\n ViewToken,\n} from 'react-native';\nimport useLatestCallback from 'use-latest-callback';\n\nimport TabBarIndicator, { Props as IndicatorProps } from './TabBarIndicator';\nimport TabBarItem, { Props as TabBarItemProps } from './TabBarItem';\nimport type {\n Event,\n Layout,\n NavigationState,\n Route,\n Scene,\n SceneRendererProps,\n} from './types';\nimport useAnimatedValue from './useAnimatedValue';\n\nexport type Props<T extends Route> = SceneRendererProps & {\n navigationState: NavigationState<T>;\n scrollEnabled?: boolean;\n bounces?: boolean;\n activeColor?: string;\n inactiveColor?: string;\n pressColor?: string;\n pressOpacity?: number;\n getLabelText?: (scene: Scene<T>) => string | undefined;\n getAccessible?: (scene: Scene<T>) => boolean | undefined;\n getAccessibilityLabel?: (scene: Scene<T>) => string | undefined;\n getTestID?: (scene: Scene<T>) => string | undefined;\n renderLabel?: (\n scene: Scene<T> & {\n focused: boolean;\n color: string;\n }\n ) => React.ReactNode;\n renderIcon?: (\n scene: Scene<T> & {\n focused: boolean;\n color: string;\n }\n ) => React.ReactNode;\n renderBadge?: (scene: Scene<T>) => React.ReactNode;\n renderIndicator?: (props: IndicatorProps<T>) => React.ReactNode;\n renderTabBarItem?: (\n props: TabBarItemProps<T> & { key: string }\n ) => React.ReactElement;\n onTabPress?: (scene: Scene<T> & Event) => void;\n onTabLongPress?: (scene: Scene<T>) => void;\n tabStyle?: StyleProp<ViewStyle>;\n indicatorStyle?: StyleProp<ViewStyle>;\n indicatorContainerStyle?: StyleProp<ViewStyle>;\n labelStyle?: StyleProp<TextStyle>;\n contentContainerStyle?: StyleProp<ViewStyle>;\n style?: StyleProp<ViewStyle>;\n gap?: number;\n testID?: string;\n};\n\ntype FlattenedTabWidth = string | number | undefined;\n\nconst Separator = ({ width }: { width: number }) => {\n return <View style={{ width }} />;\n};\n\nconst getFlattenedTabWidth = (style: StyleProp<ViewStyle>) => {\n const tabStyle = StyleSheet.flatten(style);\n\n return tabStyle?.width;\n};\n\nconst getComputedTabWidth = (\n index: number,\n layout: Layout,\n routes: Route[],\n scrollEnabled: boolean | undefined,\n tabWidths: { [key: string]: number },\n flattenedWidth: FlattenedTabWidth\n) => {\n if (flattenedWidth === 'auto') {\n return tabWidths[routes[index].key] || 0;\n }\n\n switch (typeof flattenedWidth) {\n case 'number':\n return flattenedWidth;\n case 'string':\n if (flattenedWidth.endsWith('%')) {\n const width = parseFloat(flattenedWidth);\n if (Number.isFinite(width)) {\n return layout.width * (width / 100);\n }\n }\n }\n\n if (scrollEnabled) {\n return (layout.width / 5) * 2;\n }\n return layout.width / routes.length;\n};\n\nconst getMaxScrollDistance = (tabBarWidth: number, layoutWidth: number) =>\n tabBarWidth - layoutWidth;\n\nconst getTranslateX = (\n scrollAmount: Animated.Value,\n maxScrollDistance: number\n) =>\n Animated.multiply(\n Platform.OS === 'android' && I18nManager.isRTL\n ? Animated.add(maxScrollDistance, Animated.multiply(scrollAmount, -1))\n : scrollAmount,\n I18nManager.isRTL ? 1 : -1\n );\n\nconst getTabBarWidth = <T extends Route>({\n navigationState,\n layout,\n gap,\n scrollEnabled,\n flattenedTabWidth,\n tabWidths,\n}: Pick<Props<T>, 'navigationState' | 'gap' | 'layout' | 'scrollEnabled'> & {\n tabWidths: Record<string, number>;\n flattenedTabWidth: FlattenedTabWidth;\n}) => {\n const { routes } = navigationState;\n\n return routes.reduce<number>(\n (acc, _, i) =>\n acc +\n (i > 0 ? gap ?? 0 : 0) +\n getComputedTabWidth(\n i,\n layout,\n routes,\n scrollEnabled,\n tabWidths,\n flattenedTabWidth\n ),\n 0\n );\n};\n\nconst normalizeScrollValue = <T extends Route>({\n layout,\n navigationState,\n gap,\n scrollEnabled,\n tabWidths,\n value,\n flattenedTabWidth,\n}: Pick<Props<T>, 'layout' | 'navigationState' | 'gap' | 'scrollEnabled'> & {\n tabWidths: Record<string, number>;\n value: number;\n flattenedTabWidth: FlattenedTabWidth;\n}) => {\n const tabBarWidth = getTabBarWidth({\n layout,\n navigationState,\n tabWidths,\n gap,\n scrollEnabled,\n flattenedTabWidth,\n });\n const maxDistance = getMaxScrollDistance(tabBarWidth, layout.width);\n const scrollValue = Math.max(Math.min(value, maxDistance), 0);\n\n if (Platform.OS === 'android' && I18nManager.isRTL) {\n // On Android, scroll value is not applied in reverse in RTL\n // so we need to manually adjust it to apply correct value\n return maxDistance - scrollValue;\n }\n\n return scrollValue;\n};\n\nconst getScrollAmount = <T extends Route>({\n layout,\n navigationState,\n gap,\n scrollEnabled,\n flattenedTabWidth,\n tabWidths,\n}: Pick<Props<T>, 'layout' | 'navigationState' | 'scrollEnabled' | 'gap'> & {\n tabWidths: Record<string, number>;\n flattenedTabWidth: FlattenedTabWidth;\n}) => {\n const centerDistance = Array.from({\n length: navigationState.index + 1,\n }).reduce<number>((total, _, i) => {\n const tabWidth = getComputedTabWidth(\n i,\n layout,\n navigationState.routes,\n scrollEnabled,\n tabWidths,\n flattenedTabWidth\n );\n\n // To get the current index centered we adjust scroll amount by width of indexes\n // 0 through (i - 1) and add half the width of current index i\n return (\n total +\n (navigationState.index === i\n ? (tabWidth + (gap ?? 0)) / 2\n : tabWidth + (gap ?? 0))\n );\n }, 0);\n\n const scrollAmount = centerDistance - layout.width / 2;\n\n return normalizeScrollValue({\n layout,\n navigationState,\n tabWidths,\n value: scrollAmount,\n gap,\n scrollEnabled,\n flattenedTabWidth,\n });\n};\n\nconst getLabelTextDefault = ({ route }: Scene<Route>) => route.title;\n\nconst getAccessibleDefault = ({ route }: Scene<Route>) =>\n typeof route.accessible !== 'undefined' ? route.accessible : true;\n\nconst getAccessibilityLabelDefault = ({ route }: Scene<Route>) =>\n typeof route.accessibilityLabel === 'string'\n ? route.accessibilityLabel\n : typeof route.title === 'string'\n ? route.title\n : undefined;\n\nconst renderIndicatorDefault = (props: IndicatorProps<Route>) => (\n <TabBarIndicator {...props} />\n);\n\nconst getTestIdDefault = ({ route }: Scene<Route>) => route.testID;\n\n// How many items measurements should we update per batch.\n// Defaults to 10, since that's whats FlatList is using in initialNumToRender.\nconst MEASURE_PER_BATCH = 10;\n\nexport default function TabBar<T extends Route>({\n getLabelText = getLabelTextDefault,\n getAccessible = getAccessibleDefault,\n getAccessibilityLabel = getAccessibilityLabelDefault,\n getTestID = getTestIdDefault,\n renderIndicator = renderIndicatorDefault,\n gap = 0,\n scrollEnabled,\n jumpTo,\n navigationState,\n position,\n activeColor,\n bounces,\n contentContainerStyle,\n inactiveColor,\n indicatorContainerStyle,\n indicatorStyle,\n labelStyle,\n onTabLongPress,\n onTabPress,\n pressColor,\n pressOpacity,\n renderBadge,\n renderIcon,\n renderLabel,\n renderTabBarItem,\n style,\n tabStyle,\n testID,\n}: Props<T>) {\n const [layout, setLayout] = React.useState<Layout>({ width: 0, height: 0 });\n const [tabWidths, setTabWidths] = React.useState<Record<string, number>>({});\n const flatListRef = React.useRef<FlatList | null>(null);\n const isFirst = React.useRef(true);\n const scrollAmount = useAnimatedValue(0);\n const measuredTabWidths = React.useRef<Record<string, number>>({});\n\n const { routes } = navigationState;\n const flattenedTabWidth = getFlattenedTabWidth(tabStyle);\n const isWidthDynamic = flattenedTabWidth === 'auto';\n const scrollOffset = getScrollAmount({\n layout,\n navigationState,\n tabWidths,\n gap,\n scrollEnabled,\n flattenedTabWidth,\n });\n\n const hasMeasuredTabWidths =\n Boolean(layout.width) &&\n routes\n .slice(0, navigationState.index)\n .every((r) => typeof tabWidths[r.key] === 'number');\n\n React.useEffect(() => {\n if (isFirst.current) {\n isFirst.current = false;\n return;\n }\n\n if (isWidthDynamic && !hasMeasuredTabWidths) {\n return;\n }\n\n if (scrollEnabled) {\n flatListRef.current?.scrollToOffset({\n offset: scrollOffset,\n animated: true,\n });\n }\n }, [hasMeasuredTabWidths, isWidthDynamic, scrollEnabled, scrollOffset]);\n\n const handleLayout = (e: LayoutChangeEvent) => {\n const { height, width } = e.nativeEvent.layout;\n\n setLayout((layout) =>\n layout.width === width && layout.height === height\n ? layout\n : { width, height }\n );\n };\n\n const tabBarWidth = getTabBarWidth({\n layout,\n navigationState,\n tabWidths,\n gap,\n scrollEnabled,\n flattenedTabWidth,\n });\n\n const separatorsWidth = Math.max(0, routes.length - 1) * gap;\n const separatorPercent = (separatorsWidth / tabBarWidth) * 100;\n const tabBarWidthPercent = `${routes.length * 40}%`;\n\n const translateX = React.useMemo(\n () =>\n getTranslateX(\n scrollAmount,\n getMaxScrollDistance(tabBarWidth, layout.width)\n ),\n [layout.width, scrollAmount, tabBarWidth]\n );\n\n const renderItem = React.useCallback(\n ({ item: route, index }: ListRenderItemInfo<T>) => {\n const props: TabBarItemProps<T> & { key: string } = {\n key: route.key,\n position: position,\n route: route,\n navigationState: navigationState,\n getAccessibilityLabel: getAccessibilityLabel,\n getAccessible: getAccessible,\n getLabelText: getLabelText,\n getTestID: getTestID,\n renderBadge: renderBadge,\n renderIcon: renderIcon,\n renderLabel: renderLabel,\n activeColor: activeColor,\n inactiveColor: inactiveColor,\n pressColor: pressColor,\n pressOpacity: pressOpacity,\n onLayout: isWidthDynamic\n ? (e: LayoutChangeEvent) => {\n measuredTabWidths.current[route.key] = e.nativeEvent.layout.width;\n\n // When we have measured widths for all of the tabs, we should updates the state\n // We avoid doing separate setState for each layout since it triggers multiple renders and slows down app\n // If we have more than 10 routes divide updating tabWidths into multiple batches. Here we update only first batch of 10 items.\n if (\n routes.length > MEASURE_PER_BATCH &&\n index === MEASURE_PER_BATCH &&\n routes\n .slice(0, MEASURE_PER_BATCH)\n .every(\n (r) => typeof measuredTabWidths.current[r.key] === 'number'\n )\n ) {\n setTabWidths({ ...measuredTabWidths.current });\n } else if (\n routes.every(\n (r) => typeof measuredTabWidths.current[r.key] === 'number'\n )\n ) {\n // When we have measured widths for all of the tabs, we should updates the state\n // We avoid doing separate setState for each layout since it triggers multiple renders and slows down app\n setTabWidths({ ...measuredTabWidths.current });\n }\n }\n : undefined,\n onPress: () => {\n const event: Scene<T> & Event = {\n route,\n defaultPrevented: false,\n preventDefault: () => {\n event.defaultPrevented = true;\n },\n };\n\n onTabPress?.(event);\n\n if (event.defaultPrevented) {\n return;\n }\n\n jumpTo(route.key);\n },\n onLongPress: () => onTabLongPress?.({ route }),\n labelStyle: labelStyle,\n style: tabStyle,\n // Calculate the deafult width for tab for FlatList to work\n defaultTabWidth: !isWidthDynamic\n ? getComputedTabWidth(\n index,\n layout,\n routes,\n scrollEnabled,\n tabWidths,\n getFlattenedTabWidth(tabStyle)\n )\n : undefined,\n };\n\n return (\n <>\n {gap > 0 && index > 0 ? <Separator width={gap} /> : null}\n {renderTabBarItem ? (\n renderTabBarItem(props)\n ) : (\n <TabBarItem {...props} />\n )}\n </>\n );\n },\n [\n activeColor,\n gap,\n getAccessibilityLabel,\n getAccessible,\n getLabelText,\n getTestID,\n inactiveColor,\n isWidthDynamic,\n jumpTo,\n labelStyle,\n layout,\n navigationState,\n onTabLongPress,\n onTabPress,\n position,\n pressColor,\n pressOpacity,\n renderBadge,\n renderIcon,\n renderLabel,\n renderTabBarItem,\n routes,\n scrollEnabled,\n tabStyle,\n tabWidths,\n ]\n );\n\n const keyExtractor = React.useCallback((item: T) => item.key, []);\n\n const contentContainerStyleMemoized = React.useMemo(\n () => [\n styles.tabContent,\n scrollEnabled\n ? {\n width:\n tabBarWidth > separatorsWidth ? tabBarWidth : tabBarWidthPercent,\n }\n : styles.container,\n contentContainerStyle,\n ],\n [\n contentContainerStyle,\n scrollEnabled,\n separatorsWidth,\n tabBarWidth,\n tabBarWidthPercent,\n ]\n );\n\n const handleScroll = React.useMemo(\n () =>\n Animated.event(\n [\n {\n nativeEvent: {\n contentOffset: { x: scrollAmount },\n },\n },\n ],\n { useNativeDriver: true }\n ),\n [scrollAmount]\n );\n\n const handleViewableItemsChanged = useLatestCallback(\n ({ changed }: { changed: ViewToken[] }) => {\n if (routes.length <= MEASURE_PER_BATCH) {\n return;\n }\n // Get next vievable item\n const item = changed[changed.length - 1];\n const index = item?.index || 0;\n if (\n item.isViewable &&\n (index % 10 === 0 ||\n index === navigationState.index ||\n index === routes.length - 1)\n ) {\n setTabWidths({ ...measuredTabWidths.current });\n }\n }\n );\n\n return (\n <Animated.View onLayout={handleLayout} style={[styles.tabBar, style]}>\n <Animated.View\n pointerEvents=\"none\"\n style={[\n styles.indicatorContainer,\n scrollEnabled ? { transform: [{ translateX }] as any } : null,\n tabBarWidth > separatorsWidth\n ? { width: tabBarWidth - separatorsWidth }\n : scrollEnabled\n ? { width: tabBarWidthPercent }\n : null,\n indicatorContainerStyle,\n ]}\n >\n {renderIndicator({\n position,\n layout,\n navigationState,\n jumpTo,\n width: isWidthDynamic\n ? 'auto'\n : `${(100 - separatorPercent) / routes.length}%`,\n style: indicatorStyle,\n getTabWidth: (i: number) =>\n getComputedTabWidth(\n i,\n layout,\n routes,\n scrollEnabled,\n tabWidths,\n flattenedTabWidth\n ),\n gap,\n })}\n </Animated.View>\n <View style={styles.scroll}>\n <Animated.FlatList\n data={routes as Animated.WithAnimatedValue<T>[]}\n keyExtractor={keyExtractor}\n horizontal\n accessibilityRole=\"tablist\"\n keyboardShouldPersistTaps=\"handled\"\n scrollEnabled={scrollEnabled}\n bounces={bounces}\n initialNumToRender={MEASURE_PER_BATCH}\n onViewableItemsChanged={handleViewableItemsChanged}\n alwaysBounceHorizontal={false}\n scrollsToTop={false}\n showsHorizontalScrollIndicator={false}\n showsVerticalScrollIndicator={false}\n automaticallyAdjustContentInsets={false}\n overScrollMode=\"never\"\n contentContainerStyle={contentContainerStyleMemoized}\n scrollEventThrottle={16}\n renderItem={renderItem}\n onScroll={handleScroll}\n ref={flatListRef}\n testID={testID}\n />\n </View>\n </Animated.View>\n );\n}\n\nconst styles = StyleSheet.create({\n container: {\n flex: 1,\n },\n scroll: {\n overflow: Platform.select({ default: 'scroll', web: undefined }),\n },\n tabBar: {\n backgroundColor: '#2196f3',\n elevation: 4,\n shadowColor: 'black',\n shadowOpacity: 0.1,\n shadowRadius: StyleSheet.hairlineWidth,\n shadowOffset: {\n height: StyleSheet.hairlineWidth,\n width: 0,\n },\n zIndex: 1,\n },\n tabContent: {\n flexDirection: 'row',\n flexWrap: 'nowrap',\n },\n indicatorContainer: {\n position: 'absolute',\n top: 0,\n left: 0,\n right: 0,\n bottom: 0,\n },\n});\n"],"mappings":"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"}
|
|
1
|
+
{"version":3,"names":["React","Animated","I18nManager","Platform","StyleSheet","View","useLatestCallback","TabBarIndicator","TabBarItem","useAnimatedValue","Separator","width","getFlattenedTabWidth","style","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","setLayout","useState","height","setTabWidths","flatListRef","useRef","isFirst","measuredTabWidths","isWidthDynamic","scrollOffset","hasMeasuredTabWidths","Boolean","slice","every","r","useEffect","current","scrollToOffset","offset","animated","handleLayout","e","nativeEvent","separatorsWidth","separatorPercent","tabBarWidthPercent","translateX","useMemo","renderItem","useCallback","item","onLayout","onPress","event","defaultPrevented","preventDefault","onLongPress","defaultTabWidth","keyExtractor","contentContainerStyleMemoized","styles","tabContent","container","handleScroll","contentOffset","x","useNativeDriver","handleViewableItemsChanged","changed","isViewable","tabBar","indicatorContainer","transform","getTabWidth","scroll","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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"}
|
|
@@ -1,13 +1,13 @@
|
|
|
1
1
|
import * as React from 'react';
|
|
2
2
|
import { Animated, Easing, I18nManager, Platform, StyleSheet } from 'react-native';
|
|
3
3
|
import useAnimatedValue from './useAnimatedValue';
|
|
4
|
-
|
|
5
4
|
const getTranslateX = (position, routes, getTabWidth, gap) => {
|
|
6
|
-
const inputRange = routes.map((_, i) => i);
|
|
5
|
+
const inputRange = routes.map((_, i) => i);
|
|
7
6
|
|
|
7
|
+
// every index contains widths at all previous indices
|
|
8
8
|
const outputRange = routes.reduce((acc, _, i) => {
|
|
9
9
|
if (i === 0) return [0];
|
|
10
|
-
return [...acc, acc[i - 1] + getTabWidth(i - 1) + (gap
|
|
10
|
+
return [...acc, acc[i - 1] + getTabWidth(i - 1) + (gap ?? 0)];
|
|
11
11
|
}, []);
|
|
12
12
|
const translateX = position.interpolate({
|
|
13
13
|
inputRange,
|
|
@@ -16,7 +16,6 @@ const getTranslateX = (position, routes, getTabWidth, gap) => {
|
|
|
16
16
|
});
|
|
17
17
|
return Animated.multiply(translateX, I18nManager.isRTL ? -1 : 1);
|
|
18
18
|
};
|
|
19
|
-
|
|
20
19
|
export default function TabBarIndicator(_ref) {
|
|
21
20
|
let {
|
|
22
21
|
getTabWidth,
|
|
@@ -33,7 +32,8 @@ export default function TabBarIndicator(_ref) {
|
|
|
33
32
|
const indicatorVisible = isWidthDynamic ? layout.width && navigationState.routes.slice(0, navigationState.index).every((_, r) => getTabWidth(r)) : true;
|
|
34
33
|
React.useEffect(() => {
|
|
35
34
|
const fadeInIndicator = () => {
|
|
36
|
-
if (!isIndicatorShown.current && isWidthDynamic &&
|
|
35
|
+
if (!isIndicatorShown.current && isWidthDynamic &&
|
|
36
|
+
// We should fade-in the indicator when we have widths for all the tab items
|
|
37
37
|
indicatorVisible) {
|
|
38
38
|
isIndicatorShown.current = true;
|
|
39
39
|
Animated.timing(opacity, {
|
|
@@ -44,7 +44,6 @@ export default function TabBarIndicator(_ref) {
|
|
|
44
44
|
}).start();
|
|
45
45
|
}
|
|
46
46
|
};
|
|
47
|
-
|
|
48
47
|
fadeInIndicator();
|
|
49
48
|
return () => opacity.stopAnimation();
|
|
50
49
|
}, [indicatorVisible, isWidthDynamic, opacity]);
|
|
@@ -52,14 +51,12 @@ export default function TabBarIndicator(_ref) {
|
|
|
52
51
|
routes
|
|
53
52
|
} = navigationState;
|
|
54
53
|
const transform = [];
|
|
55
|
-
|
|
56
54
|
if (layout.width) {
|
|
57
55
|
const translateX = routes.length > 1 ? getTranslateX(position, routes, getTabWidth, gap) : 0;
|
|
58
56
|
transform.push({
|
|
59
57
|
translateX
|
|
60
58
|
});
|
|
61
59
|
}
|
|
62
|
-
|
|
63
60
|
if (width === 'auto') {
|
|
64
61
|
const inputRange = routes.map((_, i) => i);
|
|
65
62
|
const outputRange = inputRange.map(getTabWidth);
|
|
@@ -73,11 +70,11 @@ export default function TabBarIndicator(_ref) {
|
|
|
73
70
|
translateX: 0.5
|
|
74
71
|
});
|
|
75
72
|
}
|
|
76
|
-
|
|
77
73
|
return /*#__PURE__*/React.createElement(Animated.View, {
|
|
78
74
|
style: [styles.indicator, {
|
|
79
75
|
width: width === 'auto' ? 1 : width
|
|
80
|
-
},
|
|
76
|
+
},
|
|
77
|
+
// If layout is not available, use `left` property for positioning the indicator
|
|
81
78
|
// This avoids rendering delay until we are able to calculate translateX
|
|
82
79
|
// If platform is macos use `left` property as `transform` is broken at the moment.
|
|
83
80
|
// See: https://github.com/microsoft/react-native-macos/issues/280
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["React","Animated","Easing","I18nManager","Platform","StyleSheet","useAnimatedValue","getTranslateX","position","routes","getTabWidth","gap","inputRange","map","_","i","outputRange","reduce","acc","translateX","interpolate","extrapolate","multiply","isRTL","TabBarIndicator","layout","navigationState","width","style","isIndicatorShown","useRef","isWidthDynamic","opacity","indicatorVisible","slice","index","every","r","useEffect","fadeInIndicator","current","timing","toValue","duration","easing","in","linear","useNativeDriver","start","stopAnimation","transform","length","push","scaleX","styles","indicator","OS","left","create","backgroundColor","bottom","right","height"],"
|
|
1
|
+
{"version":3,"names":["React","Animated","Easing","I18nManager","Platform","StyleSheet","useAnimatedValue","getTranslateX","position","routes","getTabWidth","gap","inputRange","map","_","i","outputRange","reduce","acc","translateX","interpolate","extrapolate","multiply","isRTL","TabBarIndicator","layout","navigationState","width","style","isIndicatorShown","useRef","isWidthDynamic","opacity","indicatorVisible","slice","index","every","r","useEffect","fadeInIndicator","current","timing","toValue","duration","easing","in","linear","useNativeDriver","start","stopAnimation","transform","length","push","scaleX","styles","indicator","OS","left","create","backgroundColor","bottom","right","height"],"sourceRoot":"../../src","sources":["TabBarIndicator.tsx"],"mappings":"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"}
|
package/lib/module/TabBarItem.js
CHANGED
|
@@ -1,12 +1,10 @@
|
|
|
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
|
-
|
|
3
2
|
import * as React from 'react';
|
|
4
3
|
import { Animated, StyleSheet, View } from 'react-native';
|
|
5
4
|
import useLatestCallback from 'use-latest-callback';
|
|
6
5
|
import PlatformPressable from './PlatformPressable';
|
|
7
6
|
const DEFAULT_ACTIVE_COLOR = 'rgba(255, 255, 255, 1)';
|
|
8
7
|
const DEFAULT_INACTIVE_COLOR = 'rgba(255, 255, 255, 0.7)';
|
|
9
|
-
|
|
10
8
|
const getActiveOpacity = (position, routesLength, tabIndex) => {
|
|
11
9
|
if (routesLength > 1) {
|
|
12
10
|
const inputRange = Array.from({
|
|
@@ -20,7 +18,6 @@ const getActiveOpacity = (position, routesLength, tabIndex) => {
|
|
|
20
18
|
return 1;
|
|
21
19
|
}
|
|
22
20
|
};
|
|
23
|
-
|
|
24
21
|
const getInactiveOpacity = (position, routesLength, tabIndex) => {
|
|
25
22
|
if (routesLength > 1) {
|
|
26
23
|
const inputRange = Array.from({
|
|
@@ -34,7 +31,6 @@ const getInactiveOpacity = (position, routesLength, tabIndex) => {
|
|
|
34
31
|
return 0;
|
|
35
32
|
}
|
|
36
33
|
};
|
|
37
|
-
|
|
38
34
|
const TabBarItemInternal = _ref => {
|
|
39
35
|
let {
|
|
40
36
|
getAccessibilityLabel,
|
|
@@ -67,7 +63,6 @@ const TabBarItemInternal = _ref => {
|
|
|
67
63
|
const inactiveOpacity = getInactiveOpacity(position, routesLength, tabIndex);
|
|
68
64
|
let icon = null;
|
|
69
65
|
let label = null;
|
|
70
|
-
|
|
71
66
|
if (renderIcon) {
|
|
72
67
|
const activeIcon = renderIcon({
|
|
73
68
|
route,
|
|
@@ -79,7 +74,6 @@ const TabBarItemInternal = _ref => {
|
|
|
79
74
|
focused: false,
|
|
80
75
|
color: inactiveColor
|
|
81
76
|
});
|
|
82
|
-
|
|
83
77
|
if (inactiveIcon != null && activeIcon != null) {
|
|
84
78
|
icon = /*#__PURE__*/React.createElement(View, {
|
|
85
79
|
style: styles.icon
|
|
@@ -94,12 +88,10 @@ const TabBarItemInternal = _ref => {
|
|
|
94
88
|
}, activeIcon));
|
|
95
89
|
}
|
|
96
90
|
}
|
|
97
|
-
|
|
98
91
|
const renderLabel = renderLabelCustom !== undefined ? renderLabelCustom : labelProps => {
|
|
99
92
|
const labelText = getLabelText({
|
|
100
93
|
route: labelProps.route
|
|
101
94
|
});
|
|
102
|
-
|
|
103
95
|
if (typeof labelText === 'string') {
|
|
104
96
|
return /*#__PURE__*/React.createElement(Animated.Text, {
|
|
105
97
|
style: [styles.label, icon ? {
|
|
@@ -109,10 +101,8 @@ const TabBarItemInternal = _ref => {
|
|
|
109
101
|
}]
|
|
110
102
|
}, labelText);
|
|
111
103
|
}
|
|
112
|
-
|
|
113
104
|
return labelText;
|
|
114
105
|
};
|
|
115
|
-
|
|
116
106
|
if (renderLabel) {
|
|
117
107
|
const activeLabel = renderLabel({
|
|
118
108
|
route,
|
|
@@ -134,7 +124,6 @@ const TabBarItemInternal = _ref => {
|
|
|
134
124
|
}]
|
|
135
125
|
}, activeLabel));
|
|
136
126
|
}
|
|
137
|
-
|
|
138
127
|
const tabStyle = StyleSheet.flatten(style);
|
|
139
128
|
const isWidthSet = (tabStyle === null || tabStyle === void 0 ? void 0 : tabStyle.width) !== undefined;
|
|
140
129
|
const tabContainerStyle = isWidthSet ? null : {
|
|
@@ -156,7 +145,8 @@ const TabBarItemInternal = _ref => {
|
|
|
156
145
|
accessibilityRole: "tab",
|
|
157
146
|
accessibilityState: {
|
|
158
147
|
selected: isFocused
|
|
159
|
-
}
|
|
148
|
+
}
|
|
149
|
+
// @ts-ignore: this is to support older React Native versions
|
|
160
150
|
,
|
|
161
151
|
accessibilityStates: isFocused ? ['selected'] : [],
|
|
162
152
|
pressColor: pressColor,
|
|
@@ -173,9 +163,7 @@ const TabBarItemInternal = _ref => {
|
|
|
173
163
|
style: styles.badge
|
|
174
164
|
}, badge) : null));
|
|
175
165
|
};
|
|
176
|
-
|
|
177
166
|
const MemoizedTabBarItemInternal = /*#__PURE__*/React.memo(TabBarItemInternal);
|
|
178
|
-
|
|
179
167
|
function TabBarItem(props) {
|
|
180
168
|
const {
|
|
181
169
|
onPress,
|
|
@@ -199,7 +187,6 @@ function TabBarItem(props) {
|
|
|
199
187
|
routesLength: navigationState.routes.length
|
|
200
188
|
}));
|
|
201
189
|
}
|
|
202
|
-
|
|
203
190
|
export default TabBarItem;
|
|
204
191
|
const styles = StyleSheet.create({
|
|
205
192
|
label: {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["React","Animated","StyleSheet","View","useLatestCallback","PlatformPressable","DEFAULT_ACTIVE_COLOR","DEFAULT_INACTIVE_COLOR","getActiveOpacity","position","routesLength","tabIndex","inputRange","Array","from","length","_","i","interpolate","outputRange","map","getInactiveOpacity","TabBarItemInternal","getAccessibilityLabel","getAccessible","getLabelText","getTestID","onLongPress","onPress","isFocused","route","style","inactiveColor","inactiveColorCustom","activeColor","activeColorCustom","labelStyle","onLayout","index","pressColor","pressOpacity","renderBadge","renderIcon","defaultTabWidth","renderLabel","renderLabelCustom","labelColorFromStyle","flatten","color","undefined","activeOpacity","inactiveOpacity","icon","label","activeIcon","focused","inactiveIcon","styles","opacity","absoluteFill","labelProps","labelText","marginTop","activeLabel","inactiveLabel","tabStyle","isWidthSet","width","tabContainerStyle","scene","accessibilityLabel","badge","borderless","selected","pressable","item","MemoizedTabBarItemInternal","memo","TabBarItem","props","navigationState","rest","onPressLatest","onLongPressLatest","onLayoutLatest","routes","indexOf","create","margin","backgroundColor","textTransform","flex","alignItems","justifyContent","padding","minHeight","top","right"],"sources":["TabBarItem.tsx"],"sourcesContent":["import * as React from 'react';\nimport {\n Animated,\n LayoutChangeEvent,\n StyleProp,\n StyleSheet,\n TextStyle,\n View,\n ViewStyle,\n} from 'react-native';\nimport useLatestCallback from 'use-latest-callback';\n\nimport PlatformPressable from './PlatformPressable';\nimport type { NavigationState, Route, Scene } from './types';\n\nexport type Props<T extends Route> = {\n position: Animated.AnimatedInterpolation;\n route: T;\n navigationState: NavigationState<T>;\n activeColor?: string;\n inactiveColor?: string;\n pressColor?: string;\n pressOpacity?: number;\n getLabelText: (scene: Scene<T>) => string | undefined;\n getAccessible: (scene: Scene<T>) => boolean | undefined;\n getAccessibilityLabel: (scene: Scene<T>) => string | undefined;\n getTestID: (scene: Scene<T>) => string | undefined;\n renderLabel?: (scene: {\n route: T;\n focused: boolean;\n color: string;\n }) => React.ReactNode;\n renderIcon?: (scene: {\n route: T;\n focused: boolean;\n color: string;\n }) => React.ReactNode;\n renderBadge?: (scene: Scene<T>) => React.ReactNode;\n onLayout?: (event: LayoutChangeEvent) => void;\n onPress: () => void;\n onLongPress: () => void;\n defaultTabWidth?: number;\n labelStyle?: StyleProp<TextStyle>;\n style: StyleProp<ViewStyle>;\n};\n\nconst DEFAULT_ACTIVE_COLOR = 'rgba(255, 255, 255, 1)';\nconst DEFAULT_INACTIVE_COLOR = 'rgba(255, 255, 255, 0.7)';\n\nconst getActiveOpacity = (\n position: Animated.AnimatedInterpolation,\n routesLength: number,\n tabIndex: number\n) => {\n if (routesLength > 1) {\n const inputRange = Array.from({ length: routesLength }, (_, i) => i);\n\n return position.interpolate({\n inputRange,\n outputRange: inputRange.map((i) => (i === tabIndex ? 1 : 0)),\n });\n } else {\n return 1;\n }\n};\n\nconst getInactiveOpacity = (\n position: Animated.AnimatedInterpolation,\n routesLength: number,\n tabIndex: number\n) => {\n if (routesLength > 1) {\n const inputRange = Array.from({ length: routesLength }, (_, i) => i);\n\n return position.interpolate({\n inputRange,\n outputRange: inputRange.map((i: number) => (i === tabIndex ? 0 : 1)),\n });\n } else {\n return 0;\n }\n};\n\ntype TabBarItemInternalProps<T extends Route> = Omit<\n Props<T>,\n 'navigationState'\n> & {\n isFocused: boolean;\n index: number;\n routesLength: number;\n};\n\nconst TabBarItemInternal = <T extends Route>({\n getAccessibilityLabel,\n getAccessible,\n getLabelText,\n getTestID,\n onLongPress,\n onPress,\n isFocused,\n position,\n route,\n style,\n inactiveColor: inactiveColorCustom,\n activeColor: activeColorCustom,\n labelStyle,\n onLayout,\n index: tabIndex,\n pressColor,\n pressOpacity,\n renderBadge,\n renderIcon,\n defaultTabWidth,\n routesLength,\n renderLabel: renderLabelCustom,\n}: TabBarItemInternalProps<T>) => {\n const labelColorFromStyle = StyleSheet.flatten(labelStyle || {}).color;\n\n const activeColor =\n activeColorCustom !== undefined\n ? activeColorCustom\n : typeof labelColorFromStyle === 'string'\n ? labelColorFromStyle\n : DEFAULT_ACTIVE_COLOR;\n const inactiveColor =\n inactiveColorCustom !== undefined\n ? inactiveColorCustom\n : typeof labelColorFromStyle === 'string'\n ? labelColorFromStyle\n : DEFAULT_INACTIVE_COLOR;\n\n const activeOpacity = getActiveOpacity(position, routesLength, tabIndex);\n const inactiveOpacity = getInactiveOpacity(position, routesLength, tabIndex);\n\n let icon: React.ReactNode | null = null;\n let label: React.ReactNode | null = null;\n\n if (renderIcon) {\n const activeIcon = renderIcon({\n route,\n focused: true,\n color: activeColor,\n });\n const inactiveIcon = renderIcon({\n route,\n focused: false,\n color: inactiveColor,\n });\n\n if (inactiveIcon != null && activeIcon != null) {\n icon = (\n <View style={styles.icon}>\n <Animated.View style={{ opacity: inactiveOpacity }}>\n {inactiveIcon}\n </Animated.View>\n <Animated.View\n style={[StyleSheet.absoluteFill, { opacity: activeOpacity }]}\n >\n {activeIcon}\n </Animated.View>\n </View>\n );\n }\n }\n\n const renderLabel =\n renderLabelCustom !== undefined\n ? renderLabelCustom\n : (labelProps: { route: T; color: string }) => {\n const labelText = getLabelText({ route: labelProps.route });\n\n if (typeof labelText === 'string') {\n return (\n <Animated.Text\n style={[\n styles.label,\n icon ? { marginTop: 0 } : null,\n labelStyle,\n { color: labelProps.color },\n ]}\n >\n {labelText}\n </Animated.Text>\n );\n }\n\n return labelText;\n };\n\n if (renderLabel) {\n const activeLabel = renderLabel({\n route,\n focused: true,\n color: activeColor,\n });\n const inactiveLabel = renderLabel({\n route,\n focused: false,\n color: inactiveColor,\n });\n\n label = (\n <View>\n <Animated.View style={{ opacity: inactiveOpacity }}>\n {inactiveLabel}\n </Animated.View>\n <Animated.View\n style={[StyleSheet.absoluteFill, { opacity: activeOpacity }]}\n >\n {activeLabel}\n </Animated.View>\n </View>\n );\n }\n\n const tabStyle = StyleSheet.flatten(style);\n const isWidthSet = tabStyle?.width !== undefined;\n\n const tabContainerStyle: ViewStyle | null = isWidthSet\n ? null\n : { width: defaultTabWidth };\n\n const scene = { route };\n\n let accessibilityLabel = getAccessibilityLabel(scene);\n\n accessibilityLabel =\n typeof accessibilityLabel !== 'undefined'\n ? accessibilityLabel\n : getLabelText(scene);\n\n const badge = renderBadge ? renderBadge(scene) : null;\n\n return (\n <PlatformPressable\n android_ripple={{ borderless: true }}\n testID={getTestID(scene)}\n accessible={getAccessible(scene)}\n accessibilityLabel={accessibilityLabel}\n accessibilityRole=\"tab\"\n accessibilityState={{ selected: isFocused }}\n // @ts-ignore: this is to support older React Native versions\n accessibilityStates={isFocused ? ['selected'] : []}\n pressColor={pressColor}\n pressOpacity={pressOpacity}\n delayPressIn={0}\n onLayout={onLayout}\n onPress={onPress}\n onLongPress={onLongPress}\n style={[styles.pressable, tabContainerStyle]}\n >\n <View pointerEvents=\"none\" style={[styles.item, tabStyle]}>\n {icon}\n {label}\n {badge != null ? <View style={styles.badge}>{badge}</View> : null}\n </View>\n </PlatformPressable>\n );\n};\n\nconst MemoizedTabBarItemInternal = React.memo(\n TabBarItemInternal\n) as typeof TabBarItemInternal;\n\nfunction TabBarItem<T extends Route>(props: Props<T>) {\n const { onPress, onLongPress, onLayout, navigationState, route, ...rest } =\n props;\n const onPressLatest = useLatestCallback(onPress);\n const onLongPressLatest = useLatestCallback(onLongPress);\n const onLayoutLatest = useLatestCallback(onLayout ? onLayout : () => {});\n\n const tabIndex = navigationState.routes.indexOf(route);\n\n return (\n <MemoizedTabBarItemInternal\n {...rest}\n onPress={onPressLatest}\n onLayout={onLayoutLatest}\n onLongPress={onLongPressLatest}\n isFocused={navigationState.index === tabIndex}\n route={route}\n index={tabIndex}\n routesLength={navigationState.routes.length}\n />\n );\n}\n\nexport default TabBarItem;\n\nconst styles = StyleSheet.create({\n label: {\n margin: 4,\n backgroundColor: 'transparent',\n textTransform: 'uppercase',\n },\n icon: {\n margin: 2,\n },\n item: {\n flex: 1,\n alignItems: 'center',\n justifyContent: 'center',\n padding: 10,\n minHeight: 48,\n },\n badge: {\n position: 'absolute',\n top: 0,\n right: 0,\n },\n pressable: {\n // The label is not pressable on Windows\n // Adding backgroundColor: 'transparent' seems to fix it\n backgroundColor: 'transparent',\n },\n});\n"],"mappings":"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"}
|
|
1
|
+
{"version":3,"names":["React","Animated","StyleSheet","View","useLatestCallback","PlatformPressable","DEFAULT_ACTIVE_COLOR","DEFAULT_INACTIVE_COLOR","getActiveOpacity","position","routesLength","tabIndex","inputRange","Array","from","length","_","i","interpolate","outputRange","map","getInactiveOpacity","TabBarItemInternal","getAccessibilityLabel","getAccessible","getLabelText","getTestID","onLongPress","onPress","isFocused","route","style","inactiveColor","inactiveColorCustom","activeColor","activeColorCustom","labelStyle","onLayout","index","pressColor","pressOpacity","renderBadge","renderIcon","defaultTabWidth","renderLabel","renderLabelCustom","labelColorFromStyle","flatten","color","undefined","activeOpacity","inactiveOpacity","icon","label","activeIcon","focused","inactiveIcon","styles","opacity","absoluteFill","labelProps","labelText","marginTop","activeLabel","inactiveLabel","tabStyle","isWidthSet","width","tabContainerStyle","scene","accessibilityLabel","badge","borderless","selected","pressable","item","MemoizedTabBarItemInternal","memo","TabBarItem","props","navigationState","rest","onPressLatest","onLongPressLatest","onLayoutLatest","routes","indexOf","create","margin","backgroundColor","textTransform","flex","alignItems","justifyContent","padding","minHeight","top","right"],"sourceRoot":"../../src","sources":["TabBarItem.tsx"],"mappings":"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"}
|
package/lib/module/TabView.js
CHANGED
|
@@ -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
|
-
|
|
3
2
|
import * as React from 'react';
|
|
4
3
|
import { StyleSheet, View } from 'react-native';
|
|
5
4
|
import Pager from './Pager';
|
|
@@ -30,13 +29,11 @@ export default function TabView(_ref) {
|
|
|
30
29
|
height: 0,
|
|
31
30
|
...initialLayout
|
|
32
31
|
});
|
|
33
|
-
|
|
34
32
|
const jumpToIndex = index => {
|
|
35
33
|
if (index !== navigationState.index) {
|
|
36
34
|
onIndexChange(index);
|
|
37
35
|
}
|
|
38
36
|
};
|
|
39
|
-
|
|
40
37
|
const handleLayout = e => {
|
|
41
38
|
const {
|
|
42
39
|
height,
|
|
@@ -46,14 +43,12 @@ export default function TabView(_ref) {
|
|
|
46
43
|
if (prevLayout.width === width && prevLayout.height === height) {
|
|
47
44
|
return prevLayout;
|
|
48
45
|
}
|
|
49
|
-
|
|
50
46
|
return {
|
|
51
47
|
height,
|
|
52
48
|
width
|
|
53
49
|
};
|
|
54
50
|
});
|
|
55
51
|
};
|
|
56
|
-
|
|
57
52
|
return /*#__PURE__*/React.createElement(View, {
|
|
58
53
|
onLayout: handleLayout,
|
|
59
54
|
style: [styles.pager, style]
|
|
@@ -81,7 +76,8 @@ export default function TabView(_ref) {
|
|
|
81
76
|
layout,
|
|
82
77
|
jumpTo
|
|
83
78
|
};
|
|
84
|
-
return /*#__PURE__*/React.createElement(React.Fragment, null, tabBarPosition === 'top' && renderTabBar({
|
|
79
|
+
return /*#__PURE__*/React.createElement(React.Fragment, null, tabBarPosition === 'top' && renderTabBar({
|
|
80
|
+
...sceneRendererProps,
|
|
85
81
|
navigationState
|
|
86
82
|
}), render(navigationState.routes.map((route, i) => {
|
|
87
83
|
return /*#__PURE__*/React.createElement(SceneView, _extends({}, sceneRendererProps, {
|
|
@@ -100,11 +96,13 @@ export default function TabView(_ref) {
|
|
|
100
96
|
} = _ref3;
|
|
101
97
|
return loading ? renderLazyPlaceholder({
|
|
102
98
|
route
|
|
103
|
-
}) : renderScene({
|
|
99
|
+
}) : renderScene({
|
|
100
|
+
...sceneRendererProps,
|
|
104
101
|
route
|
|
105
102
|
});
|
|
106
103
|
});
|
|
107
|
-
})), tabBarPosition === 'bottom' && renderTabBar({
|
|
104
|
+
})), tabBarPosition === 'bottom' && renderTabBar({
|
|
105
|
+
...sceneRendererProps,
|
|
108
106
|
navigationState
|
|
109
107
|
}));
|
|
110
108
|
}));
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["React","StyleSheet","View","Pager","SceneView","TabBar","TabView","onIndexChange","navigationState","renderScene","initialLayout","keyboardDismissMode","lazy","lazyPreloadDistance","onSwipeStart","onSwipeEnd","renderLazyPlaceholder","renderTabBar","props","sceneContainerStyle","pagerStyle","style","swipeEnabled","tabBarPosition","animationEnabled","layout","setLayout","useState","width","height","jumpToIndex","index","handleLayout","e","nativeEvent","prevLayout","styles","pager","position","render","addEnterListener","jumpTo","sceneRendererProps","routes","map","route","i","key","loading","create","flex","overflow"],"
|
|
1
|
+
{"version":3,"names":["React","StyleSheet","View","Pager","SceneView","TabBar","TabView","onIndexChange","navigationState","renderScene","initialLayout","keyboardDismissMode","lazy","lazyPreloadDistance","onSwipeStart","onSwipeEnd","renderLazyPlaceholder","renderTabBar","props","sceneContainerStyle","pagerStyle","style","swipeEnabled","tabBarPosition","animationEnabled","layout","setLayout","useState","width","height","jumpToIndex","index","handleLayout","e","nativeEvent","prevLayout","styles","pager","position","render","addEnterListener","jumpTo","sceneRendererProps","routes","map","route","i","key","loading","create","flex","overflow"],"sourceRoot":"../../src","sources":["TabView.tsx"],"mappings":"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"}
|
package/lib/module/index.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["default","SceneMap","TabBar","TabBarIndicator","TabBarItem","TabView"],"
|
|
1
|
+
{"version":3,"names":["default","SceneMap","TabBar","TabBarIndicator","TabBarItem","TabView"],"sourceRoot":"../../src","sources":["index.tsx"],"mappings":"AAAA,SAASA,OAAO,IAAIC,QAAQ,QAAQ,YAAY;AAEhD,SAASD,OAAO,IAAIE,MAAM,QAAQ,UAAU;AAE5C,SAASF,OAAO,IAAIG,eAAe,QAAQ,mBAAmB;AAE9D,SAASH,OAAO,IAAII,UAAU,QAAQ,cAAc;AAEpD,SAASJ,OAAO,IAAIK,OAAO,QAAQ,WAAW"}
|
package/lib/module/types.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":[],"
|
|
1
|
+
{"version":3,"names":[],"sourceRoot":"../../src","sources":["types.tsx"],"mappings":""}
|
|
@@ -2,11 +2,9 @@ import * as React from 'react';
|
|
|
2
2
|
import { Animated } from 'react-native';
|
|
3
3
|
export default function useAnimatedValue(initialValue) {
|
|
4
4
|
const lazyRef = React.useRef();
|
|
5
|
-
|
|
6
5
|
if (lazyRef.current === undefined) {
|
|
7
6
|
lazyRef.current = new Animated.Value(initialValue);
|
|
8
7
|
}
|
|
9
|
-
|
|
10
8
|
return lazyRef.current;
|
|
11
9
|
}
|
|
12
10
|
//# sourceMappingURL=useAnimatedValue.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["React","Animated","useAnimatedValue","initialValue","lazyRef","useRef","current","undefined","Value"],"
|
|
1
|
+
{"version":3,"names":["React","Animated","useAnimatedValue","initialValue","lazyRef","useRef","current","undefined","Value"],"sourceRoot":"../../src","sources":["useAnimatedValue.tsx"],"mappings":"AAAA,OAAO,KAAKA,KAAK,MAAM,OAAO;AAC9B,SAASC,QAAQ,QAAQ,cAAc;AAEvC,eAAe,SAASC,gBAAgB,CAACC,YAAoB,EAAE;EAC7D,MAAMC,OAAO,GAAGJ,KAAK,CAACK,MAAM,EAAkB;EAE9C,IAAID,OAAO,CAACE,OAAO,KAAKC,SAAS,EAAE;IACjCH,OAAO,CAACE,OAAO,GAAG,IAAIL,QAAQ,CAACO,KAAK,CAACL,YAAY,CAAC;EACpD;EAEA,OAAOC,OAAO,CAACE,OAAO;AACxB"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"Pager.android.d.ts","sourceRoot":"","sources":["../../../src/Pager.android.tsx"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAE,MAAM,oBAAoB,CAAC"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"Pager.d.ts","sourceRoot":"","sources":["../../../src/Pager.tsx"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAE,MAAM,uBAAuB,CAAC"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"Pager.ios.d.ts","sourceRoot":"","sources":["../../../src/Pager.ios.tsx"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAE,MAAM,oBAAoB,CAAC"}
|
|
@@ -12,3 +12,4 @@ declare type Props<T extends Route> = PagerProps & {
|
|
|
12
12
|
};
|
|
13
13
|
export default function PagerViewAdapter<T extends Route>({ keyboardDismissMode, swipeEnabled, navigationState, onIndexChange, onSwipeStart, onSwipeEnd, children, style, animationEnabled, ...rest }: Props<T>): React.ReactElement<any, string | React.JSXElementConstructor<any>>;
|
|
14
14
|
export {};
|
|
15
|
+
//# sourceMappingURL=PagerViewAdapter.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"PagerViewAdapter.d.ts","sourceRoot":"","sources":["../../../src/PagerViewAdapter.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,KAAK,MAAM,OAAO,CAAC;AAC/B,OAAO,EAAE,QAAQ,EAAwB,MAAM,cAAc,CAAC;AAK9D,OAAO,KAAK,EACV,iBAAiB,EAEjB,eAAe,EACf,UAAU,EACV,KAAK,EACN,MAAM,SAAS,CAAC;AAKjB,aAAK,KAAK,CAAC,CAAC,SAAS,KAAK,IAAI,UAAU,GAAG;IACzC,aAAa,EAAE,CAAC,KAAK,EAAE,MAAM,KAAK,IAAI,CAAC;IACvC,eAAe,EAAE,eAAe,CAAC,CAAC,CAAC,CAAC;IACpC,QAAQ,EAAE,CACR,KAAK,EAAE,iBAAiB,GAAG;QAGzB,QAAQ,EAAE,QAAQ,CAAC,qBAAqB,CAAC;QAGzC,MAAM,EAAE,CAAC,QAAQ,EAAE,KAAK,CAAC,SAAS,KAAK,KAAK,CAAC,SAAS,CAAC;QAGvD,MAAM,EAAE,CAAC,GAAG,EAAE,MAAM,KAAK,IAAI,CAAC;KAC/B,KACE,KAAK,CAAC,YAAY,CAAC;CACzB,CAAC;AAEF,MAAM,CAAC,OAAO,UAAU,gBAAgB,CAAC,CAAC,SAAS,KAAK,EAAE,EACxD,mBAA4B,EAC5B,YAAmB,EACnB,eAAe,EACf,aAAa,EACb,YAAY,EACZ,UAAU,EACV,QAAQ,EACR,KAAK,EACL,gBAAgB,EAChB,GAAG,IAAI,EACR,EAAE,KAAK,CAAC,CAAC,CAAC,sEA+HV"}
|
|
@@ -13,3 +13,4 @@ declare type Props<T extends Route> = PagerProps & {
|
|
|
13
13
|
};
|
|
14
14
|
export default function PanResponderAdapter<T extends Route>({ layout, keyboardDismissMode, swipeEnabled, navigationState, onIndexChange, onSwipeStart, onSwipeEnd, children, style, animationEnabled, }: Props<T>): React.ReactElement<any, string | React.JSXElementConstructor<any>>;
|
|
15
15
|
export {};
|
|
16
|
+
//# sourceMappingURL=PanResponderAdapter.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"PanResponderAdapter.d.ts","sourceRoot":"","sources":["../../../src/PanResponderAdapter.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,KAAK,MAAM,OAAO,CAAC;AAC/B,OAAO,EACL,QAAQ,EAQT,MAAM,cAAc,CAAC;AAEtB,OAAO,KAAK,EACV,iBAAiB,EACjB,MAAM,EAEN,eAAe,EACf,UAAU,EACV,KAAK,EACN,MAAM,SAAS,CAAC;AAGjB,aAAK,KAAK,CAAC,CAAC,SAAS,KAAK,IAAI,UAAU,GAAG;IACzC,MAAM,EAAE,MAAM,CAAC;IACf,aAAa,EAAE,CAAC,KAAK,EAAE,MAAM,KAAK,IAAI,CAAC;IACvC,eAAe,EAAE,eAAe,CAAC,CAAC,CAAC,CAAC;IACpC,QAAQ,EAAE,CACR,KAAK,EAAE,iBAAiB,GAAG;QAGzB,QAAQ,EAAE,QAAQ,CAAC,qBAAqB,CAAC;QAGzC,MAAM,EAAE,CAAC,QAAQ,EAAE,KAAK,CAAC,SAAS,KAAK,KAAK,CAAC,SAAS,CAAC;QAGvD,MAAM,EAAE,CAAC,GAAG,EAAE,MAAM,KAAK,IAAI,CAAC;KAC/B,KACE,KAAK,CAAC,YAAY,CAAC;CACzB,CAAC;AAYF,MAAM,CAAC,OAAO,UAAU,mBAAmB,CAAC,CAAC,SAAS,KAAK,EAAE,EAC3D,MAAM,EACN,mBAA4B,EAC5B,YAAmB,EACnB,eAAe,EACf,aAAa,EACb,YAAY,EACZ,UAAU,EACV,QAAQ,EACR,KAAK,EACL,gBAAwB,GACzB,EAAE,KAAK,CAAC,CAAC,CAAC,sEA6QV"}
|
|
@@ -13,3 +13,4 @@ export declare type Props = PressableProps & {
|
|
|
13
13
|
* On other platforms, you can pass the props of TouchableOpacity.
|
|
14
14
|
*/
|
|
15
15
|
export default function PlatformPressable({ android_ripple, pressColor, pressOpacity, style, ...rest }: Props): JSX.Element;
|
|
16
|
+
//# sourceMappingURL=PlatformPressable.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"PlatformPressable.d.ts","sourceRoot":"","sources":["../../../src/PlatformPressable.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,KAAK,MAAM,OAAO,CAAC;AAC/B,OAAO,EAAuB,cAAc,EAAE,MAAM,cAAc,CAAC;AAEnE,oBAAY,KAAK,GAAG,cAAc,GAAG;IACnC,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,QAAQ,EAAE,KAAK,CAAC,SAAS,CAAC;CAC3B,CAAC;AAMF;;;;;;GAMG;AACH,MAAM,CAAC,OAAO,UAAU,iBAAiB,CAAC,EACxC,cAAc,EACd,UAAiC,EACjC,YAAY,EACZ,KAAK,EACL,GAAG,IAAI,EACR,EAAE,KAAK,eAeP"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"SceneMap.d.ts","sourceRoot":"","sources":["../../../src/SceneMap.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,KAAK,MAAM,OAAO,CAAC;AAE/B,OAAO,KAAK,EAAE,kBAAkB,EAAE,MAAM,SAAS,CAAC;AAElD,aAAK,UAAU,GAAG;IAChB,KAAK,EAAE,GAAG,CAAC;CACZ,GAAG,IAAI,CAAC,kBAAkB,EAAE,QAAQ,CAAC,CAAC;AAWvC,MAAM,CAAC,OAAO,UAAU,QAAQ,CAAC,CAAC,SAAS,GAAG,EAAE,MAAM,EAAE;IACtD,CAAC,GAAG,EAAE,MAAM,GAAG,KAAK,CAAC,aAAa,CAAC,CAAC,CAAC,CAAC;CACvC,iCACsC,UAAU,iBAShD"}
|