@react-navigation/material-top-tabs 6.0.5 → 6.0.6

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.
@@ -27,18 +27,21 @@ function MaterialTopTabNavigator({
27
27
  children,
28
28
  screenListeners,
29
29
  screenOptions,
30
- // @ts-expect-error: swipeEnabled is deprecated
31
- swipeEnabled,
32
- // @ts-expect-error: lazy is deprecated
33
- lazy,
34
- // @ts-expect-error: lazyPlaceholder is deprecated
35
- lazyPlaceholder,
36
- // @ts-expect-error: lazyPreloadDistance is deprecated
37
- lazyPreloadDistance,
38
- // @ts-expect-error: tabBarOptions is deprecated
39
- tabBarOptions,
40
- ...rest
30
+ ...restWithDeprecated
41
31
  }) {
32
+ const {
33
+ // @ts-expect-error: swipeEnabled is deprecated
34
+ swipeEnabled,
35
+ // @ts-expect-error: lazy is deprecated
36
+ lazy,
37
+ // @ts-expect-error: lazyPlaceholder is deprecated
38
+ lazyPlaceholder,
39
+ // @ts-expect-error: lazyPreloadDistance is deprecated
40
+ lazyPreloadDistance,
41
+ // @ts-expect-error: tabBarOptions is deprecated
42
+ tabBarOptions,
43
+ ...rest
44
+ } = restWithDeprecated;
42
45
  let defaultScreenOptions = {};
43
46
 
44
47
  if (tabBarOptions) {
@@ -1 +1 @@
1
- {"version":3,"sources":["createMaterialTopTabNavigator.tsx"],"names":["MaterialTopTabNavigator","initialRouteName","backBehavior","children","screenListeners","screenOptions","swipeEnabled","lazy","lazyPlaceholder","lazyPreloadDistance","tabBarOptions","rest","defaultScreenOptions","Object","assign","tabBarActiveTintColor","activeTintColor","tabBarInactiveTintColor","inactiveTintColor","tabBarPressColor","pressColor","tabBarPressOpacity","pressOpacity","tabBarShowLabel","showLabel","tabBarShowIcon","showIcon","tabBarAllowFontScaling","allowFontScaling","tabBarBounces","bounces","tabBarScrollEnabled","scrollEnabled","tabBarIconStyle","iconStyle","tabBarLabelStyle","labelStyle","tabBarItemStyle","tabStyle","tabBarBadge","renderBadge","tabBarIndicator","renderIndicator","tabBarIndicatorStyle","indicatorStyle","tabBarIndicatorContainerStyle","indicatorContainerStyle","tabBarContentContainerStyle","contentContainerStyle","tabBarStyle","style","keys","forEach","key","undefined","JSON","stringify","deprecatedProps","entries","propName","propValue","toLowerCase","state","descriptors","navigation","NavigationContent","TabRouter"],"mappings":"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","sourcesContent":["import {\n createNavigatorFactory,\n DefaultNavigatorOptions,\n ParamListBase,\n TabActionHelpers,\n TabNavigationState,\n TabRouter,\n TabRouterOptions,\n useNavigationBuilder,\n} from '@react-navigation/native';\nimport * as React from 'react';\nimport warnOnce from 'warn-once';\n\nimport type {\n MaterialTopTabNavigationConfig,\n MaterialTopTabNavigationEventMap,\n MaterialTopTabNavigationOptions,\n} from '../types';\nimport MaterialTopTabView from '../views/MaterialTopTabView';\n\ntype Props = DefaultNavigatorOptions<\n ParamListBase,\n TabNavigationState<ParamListBase>,\n MaterialTopTabNavigationOptions,\n MaterialTopTabNavigationEventMap\n> &\n TabRouterOptions &\n MaterialTopTabNavigationConfig;\n\nfunction MaterialTopTabNavigator({\n initialRouteName,\n backBehavior,\n children,\n screenListeners,\n screenOptions,\n // @ts-expect-error: swipeEnabled is deprecated\n swipeEnabled,\n // @ts-expect-error: lazy is deprecated\n lazy,\n // @ts-expect-error: lazyPlaceholder is deprecated\n lazyPlaceholder,\n // @ts-expect-error: lazyPreloadDistance is deprecated\n lazyPreloadDistance,\n // @ts-expect-error: tabBarOptions is deprecated\n tabBarOptions,\n ...rest\n}: Props) {\n let defaultScreenOptions: MaterialTopTabNavigationOptions = {};\n\n if (tabBarOptions) {\n Object.assign(defaultScreenOptions, {\n tabBarActiveTintColor: tabBarOptions.activeTintColor,\n tabBarInactiveTintColor: tabBarOptions.inactiveTintColor,\n tabBarPressColor: tabBarOptions.pressColor,\n tabBarPressOpacity: tabBarOptions.pressOpacity,\n tabBarShowLabel: tabBarOptions.showLabel,\n tabBarShowIcon: tabBarOptions.showIcon,\n tabBarAllowFontScaling: tabBarOptions.allowFontScaling,\n tabBarBounces: tabBarOptions.bounces,\n tabBarScrollEnabled: tabBarOptions.scrollEnabled,\n tabBarIconStyle: tabBarOptions.iconStyle,\n tabBarLabelStyle: tabBarOptions.labelStyle,\n tabBarItemStyle: tabBarOptions.tabStyle,\n tabBarBadge: tabBarOptions.renderBadge,\n tabBarIndicator: tabBarOptions.renderIndicator,\n tabBarIndicatorStyle: tabBarOptions.indicatorStyle,\n tabBarIndicatorContainerStyle: tabBarOptions.indicatorContainerStyle,\n tabBarContentContainerStyle: tabBarOptions.contentContainerStyle,\n tabBarStyle: tabBarOptions.style,\n });\n\n (\n Object.keys(\n defaultScreenOptions\n ) as (keyof MaterialTopTabNavigationOptions)[]\n ).forEach((key) => {\n if (defaultScreenOptions[key] === undefined) {\n // eslint-disable-next-line @typescript-eslint/no-dynamic-delete\n delete defaultScreenOptions[key];\n }\n });\n\n warnOnce(\n tabBarOptions,\n `Material Top Tab Navigator: 'tabBarOptions' is deprecated. Migrate the options to 'screenOptions' instead.\\n\\nPlace the following in 'screenOptions' in your code to keep current behavior:\\n\\n${JSON.stringify(\n defaultScreenOptions,\n null,\n 2\n )}\\n\\nSee https://reactnavigation.org/docs/material-top-tab-navigator#options for more details.`\n );\n }\n\n const deprecatedProps = {\n swipeEnabled,\n lazy,\n lazyPlaceholder,\n lazyPreloadDistance,\n } as const;\n\n Object.entries(deprecatedProps).forEach(([propName, propValue]) => {\n if (propValue !== undefined) {\n // @ts-expect-error: Object.entries doesn't return strict types\n defaultScreenOptions[propName] = propValue;\n\n warnOnce(\n true,\n `Material Top Tab Navigator: '${propName}' in props is deprecated. Move it to 'screenOptions' instead.\\n\\nSee https://reactnavigation.org/docs/material-top-tab-navigator#${propName.toLowerCase()} for more details.`\n );\n }\n });\n\n const { state, descriptors, navigation, NavigationContent } =\n useNavigationBuilder<\n TabNavigationState<ParamListBase>,\n TabRouterOptions,\n TabActionHelpers<ParamListBase>,\n MaterialTopTabNavigationOptions,\n MaterialTopTabNavigationEventMap\n >(TabRouter, {\n initialRouteName,\n backBehavior,\n children,\n screenListeners,\n screenOptions,\n defaultScreenOptions,\n });\n\n return (\n <NavigationContent>\n <MaterialTopTabView\n {...rest}\n state={state}\n navigation={navigation}\n descriptors={descriptors}\n />\n </NavigationContent>\n );\n}\n\nexport default createNavigatorFactory<\n TabNavigationState<ParamListBase>,\n MaterialTopTabNavigationOptions,\n MaterialTopTabNavigationEventMap,\n typeof MaterialTopTabNavigator\n>(MaterialTopTabNavigator);\n"]}
1
+ {"version":3,"sources":["createMaterialTopTabNavigator.tsx"],"names":["MaterialTopTabNavigator","initialRouteName","backBehavior","children","screenListeners","screenOptions","restWithDeprecated","swipeEnabled","lazy","lazyPlaceholder","lazyPreloadDistance","tabBarOptions","rest","defaultScreenOptions","Object","assign","tabBarActiveTintColor","activeTintColor","tabBarInactiveTintColor","inactiveTintColor","tabBarPressColor","pressColor","tabBarPressOpacity","pressOpacity","tabBarShowLabel","showLabel","tabBarShowIcon","showIcon","tabBarAllowFontScaling","allowFontScaling","tabBarBounces","bounces","tabBarScrollEnabled","scrollEnabled","tabBarIconStyle","iconStyle","tabBarLabelStyle","labelStyle","tabBarItemStyle","tabStyle","tabBarBadge","renderBadge","tabBarIndicator","renderIndicator","tabBarIndicatorStyle","indicatorStyle","tabBarIndicatorContainerStyle","indicatorContainerStyle","tabBarContentContainerStyle","contentContainerStyle","tabBarStyle","style","keys","forEach","key","undefined","JSON","stringify","deprecatedProps","entries","propName","propValue","toLowerCase","state","descriptors","navigation","NavigationContent","TabRouter"],"mappings":"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","sourcesContent":["import {\n createNavigatorFactory,\n DefaultNavigatorOptions,\n ParamListBase,\n TabActionHelpers,\n TabNavigationState,\n TabRouter,\n TabRouterOptions,\n useNavigationBuilder,\n} from '@react-navigation/native';\nimport * as React from 'react';\nimport warnOnce from 'warn-once';\n\nimport type {\n MaterialTopTabNavigationConfig,\n MaterialTopTabNavigationEventMap,\n MaterialTopTabNavigationOptions,\n} from '../types';\nimport MaterialTopTabView from '../views/MaterialTopTabView';\n\ntype Props = DefaultNavigatorOptions<\n ParamListBase,\n TabNavigationState<ParamListBase>,\n MaterialTopTabNavigationOptions,\n MaterialTopTabNavigationEventMap\n> &\n TabRouterOptions &\n MaterialTopTabNavigationConfig;\n\nfunction MaterialTopTabNavigator({\n initialRouteName,\n backBehavior,\n children,\n screenListeners,\n screenOptions,\n ...restWithDeprecated\n}: Props) {\n const {\n // @ts-expect-error: swipeEnabled is deprecated\n swipeEnabled,\n // @ts-expect-error: lazy is deprecated\n lazy,\n // @ts-expect-error: lazyPlaceholder is deprecated\n lazyPlaceholder,\n // @ts-expect-error: lazyPreloadDistance is deprecated\n lazyPreloadDistance,\n // @ts-expect-error: tabBarOptions is deprecated\n tabBarOptions,\n ...rest\n } = restWithDeprecated;\n\n let defaultScreenOptions: MaterialTopTabNavigationOptions = {};\n\n if (tabBarOptions) {\n Object.assign(defaultScreenOptions, {\n tabBarActiveTintColor: tabBarOptions.activeTintColor,\n tabBarInactiveTintColor: tabBarOptions.inactiveTintColor,\n tabBarPressColor: tabBarOptions.pressColor,\n tabBarPressOpacity: tabBarOptions.pressOpacity,\n tabBarShowLabel: tabBarOptions.showLabel,\n tabBarShowIcon: tabBarOptions.showIcon,\n tabBarAllowFontScaling: tabBarOptions.allowFontScaling,\n tabBarBounces: tabBarOptions.bounces,\n tabBarScrollEnabled: tabBarOptions.scrollEnabled,\n tabBarIconStyle: tabBarOptions.iconStyle,\n tabBarLabelStyle: tabBarOptions.labelStyle,\n tabBarItemStyle: tabBarOptions.tabStyle,\n tabBarBadge: tabBarOptions.renderBadge,\n tabBarIndicator: tabBarOptions.renderIndicator,\n tabBarIndicatorStyle: tabBarOptions.indicatorStyle,\n tabBarIndicatorContainerStyle: tabBarOptions.indicatorContainerStyle,\n tabBarContentContainerStyle: tabBarOptions.contentContainerStyle,\n tabBarStyle: tabBarOptions.style,\n });\n\n (\n Object.keys(\n defaultScreenOptions\n ) as (keyof MaterialTopTabNavigationOptions)[]\n ).forEach((key) => {\n if (defaultScreenOptions[key] === undefined) {\n // eslint-disable-next-line @typescript-eslint/no-dynamic-delete\n delete defaultScreenOptions[key];\n }\n });\n\n warnOnce(\n tabBarOptions,\n `Material Top Tab Navigator: 'tabBarOptions' is deprecated. Migrate the options to 'screenOptions' instead.\\n\\nPlace the following in 'screenOptions' in your code to keep current behavior:\\n\\n${JSON.stringify(\n defaultScreenOptions,\n null,\n 2\n )}\\n\\nSee https://reactnavigation.org/docs/material-top-tab-navigator#options for more details.`\n );\n }\n\n const deprecatedProps = {\n swipeEnabled,\n lazy,\n lazyPlaceholder,\n lazyPreloadDistance,\n } as const;\n\n Object.entries(deprecatedProps).forEach(([propName, propValue]) => {\n if (propValue !== undefined) {\n // @ts-expect-error: Object.entries doesn't return strict types\n defaultScreenOptions[propName] = propValue;\n\n warnOnce(\n true,\n `Material Top Tab Navigator: '${propName}' in props is deprecated. Move it to 'screenOptions' instead.\\n\\nSee https://reactnavigation.org/docs/material-top-tab-navigator#${propName.toLowerCase()} for more details.`\n );\n }\n });\n\n const { state, descriptors, navigation, NavigationContent } =\n useNavigationBuilder<\n TabNavigationState<ParamListBase>,\n TabRouterOptions,\n TabActionHelpers<ParamListBase>,\n MaterialTopTabNavigationOptions,\n MaterialTopTabNavigationEventMap\n >(TabRouter, {\n initialRouteName,\n backBehavior,\n children,\n screenListeners,\n screenOptions,\n defaultScreenOptions,\n });\n\n return (\n <NavigationContent>\n <MaterialTopTabView\n {...rest}\n state={state}\n navigation={navigation}\n descriptors={descriptors}\n />\n </NavigationContent>\n );\n}\n\nexport default createNavigatorFactory<\n TabNavigationState<ParamListBase>,\n MaterialTopTabNavigationOptions,\n MaterialTopTabNavigationEventMap,\n typeof MaterialTopTabNavigator\n>(MaterialTopTabNavigator);\n"]}
@@ -11,18 +11,21 @@ function MaterialTopTabNavigator({
11
11
  children,
12
12
  screenListeners,
13
13
  screenOptions,
14
- // @ts-expect-error: swipeEnabled is deprecated
15
- swipeEnabled,
16
- // @ts-expect-error: lazy is deprecated
17
- lazy,
18
- // @ts-expect-error: lazyPlaceholder is deprecated
19
- lazyPlaceholder,
20
- // @ts-expect-error: lazyPreloadDistance is deprecated
21
- lazyPreloadDistance,
22
- // @ts-expect-error: tabBarOptions is deprecated
23
- tabBarOptions,
24
- ...rest
14
+ ...restWithDeprecated
25
15
  }) {
16
+ const {
17
+ // @ts-expect-error: swipeEnabled is deprecated
18
+ swipeEnabled,
19
+ // @ts-expect-error: lazy is deprecated
20
+ lazy,
21
+ // @ts-expect-error: lazyPlaceholder is deprecated
22
+ lazyPlaceholder,
23
+ // @ts-expect-error: lazyPreloadDistance is deprecated
24
+ lazyPreloadDistance,
25
+ // @ts-expect-error: tabBarOptions is deprecated
26
+ tabBarOptions,
27
+ ...rest
28
+ } = restWithDeprecated;
26
29
  let defaultScreenOptions = {};
27
30
 
28
31
  if (tabBarOptions) {
@@ -1 +1 @@
1
- {"version":3,"sources":["createMaterialTopTabNavigator.tsx"],"names":["createNavigatorFactory","TabRouter","useNavigationBuilder","React","warnOnce","MaterialTopTabView","MaterialTopTabNavigator","initialRouteName","backBehavior","children","screenListeners","screenOptions","swipeEnabled","lazy","lazyPlaceholder","lazyPreloadDistance","tabBarOptions","rest","defaultScreenOptions","Object","assign","tabBarActiveTintColor","activeTintColor","tabBarInactiveTintColor","inactiveTintColor","tabBarPressColor","pressColor","tabBarPressOpacity","pressOpacity","tabBarShowLabel","showLabel","tabBarShowIcon","showIcon","tabBarAllowFontScaling","allowFontScaling","tabBarBounces","bounces","tabBarScrollEnabled","scrollEnabled","tabBarIconStyle","iconStyle","tabBarLabelStyle","labelStyle","tabBarItemStyle","tabStyle","tabBarBadge","renderBadge","tabBarIndicator","renderIndicator","tabBarIndicatorStyle","indicatorStyle","tabBarIndicatorContainerStyle","indicatorContainerStyle","tabBarContentContainerStyle","contentContainerStyle","tabBarStyle","style","keys","forEach","key","undefined","JSON","stringify","deprecatedProps","entries","propName","propValue","toLowerCase","state","descriptors","navigation","NavigationContent"],"mappings":"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","sourcesContent":["import {\n createNavigatorFactory,\n DefaultNavigatorOptions,\n ParamListBase,\n TabActionHelpers,\n TabNavigationState,\n TabRouter,\n TabRouterOptions,\n useNavigationBuilder,\n} from '@react-navigation/native';\nimport * as React from 'react';\nimport warnOnce from 'warn-once';\n\nimport type {\n MaterialTopTabNavigationConfig,\n MaterialTopTabNavigationEventMap,\n MaterialTopTabNavigationOptions,\n} from '../types';\nimport MaterialTopTabView from '../views/MaterialTopTabView';\n\ntype Props = DefaultNavigatorOptions<\n ParamListBase,\n TabNavigationState<ParamListBase>,\n MaterialTopTabNavigationOptions,\n MaterialTopTabNavigationEventMap\n> &\n TabRouterOptions &\n MaterialTopTabNavigationConfig;\n\nfunction MaterialTopTabNavigator({\n initialRouteName,\n backBehavior,\n children,\n screenListeners,\n screenOptions,\n // @ts-expect-error: swipeEnabled is deprecated\n swipeEnabled,\n // @ts-expect-error: lazy is deprecated\n lazy,\n // @ts-expect-error: lazyPlaceholder is deprecated\n lazyPlaceholder,\n // @ts-expect-error: lazyPreloadDistance is deprecated\n lazyPreloadDistance,\n // @ts-expect-error: tabBarOptions is deprecated\n tabBarOptions,\n ...rest\n}: Props) {\n let defaultScreenOptions: MaterialTopTabNavigationOptions = {};\n\n if (tabBarOptions) {\n Object.assign(defaultScreenOptions, {\n tabBarActiveTintColor: tabBarOptions.activeTintColor,\n tabBarInactiveTintColor: tabBarOptions.inactiveTintColor,\n tabBarPressColor: tabBarOptions.pressColor,\n tabBarPressOpacity: tabBarOptions.pressOpacity,\n tabBarShowLabel: tabBarOptions.showLabel,\n tabBarShowIcon: tabBarOptions.showIcon,\n tabBarAllowFontScaling: tabBarOptions.allowFontScaling,\n tabBarBounces: tabBarOptions.bounces,\n tabBarScrollEnabled: tabBarOptions.scrollEnabled,\n tabBarIconStyle: tabBarOptions.iconStyle,\n tabBarLabelStyle: tabBarOptions.labelStyle,\n tabBarItemStyle: tabBarOptions.tabStyle,\n tabBarBadge: tabBarOptions.renderBadge,\n tabBarIndicator: tabBarOptions.renderIndicator,\n tabBarIndicatorStyle: tabBarOptions.indicatorStyle,\n tabBarIndicatorContainerStyle: tabBarOptions.indicatorContainerStyle,\n tabBarContentContainerStyle: tabBarOptions.contentContainerStyle,\n tabBarStyle: tabBarOptions.style,\n });\n\n (\n Object.keys(\n defaultScreenOptions\n ) as (keyof MaterialTopTabNavigationOptions)[]\n ).forEach((key) => {\n if (defaultScreenOptions[key] === undefined) {\n // eslint-disable-next-line @typescript-eslint/no-dynamic-delete\n delete defaultScreenOptions[key];\n }\n });\n\n warnOnce(\n tabBarOptions,\n `Material Top Tab Navigator: 'tabBarOptions' is deprecated. Migrate the options to 'screenOptions' instead.\\n\\nPlace the following in 'screenOptions' in your code to keep current behavior:\\n\\n${JSON.stringify(\n defaultScreenOptions,\n null,\n 2\n )}\\n\\nSee https://reactnavigation.org/docs/material-top-tab-navigator#options for more details.`\n );\n }\n\n const deprecatedProps = {\n swipeEnabled,\n lazy,\n lazyPlaceholder,\n lazyPreloadDistance,\n } as const;\n\n Object.entries(deprecatedProps).forEach(([propName, propValue]) => {\n if (propValue !== undefined) {\n // @ts-expect-error: Object.entries doesn't return strict types\n defaultScreenOptions[propName] = propValue;\n\n warnOnce(\n true,\n `Material Top Tab Navigator: '${propName}' in props is deprecated. Move it to 'screenOptions' instead.\\n\\nSee https://reactnavigation.org/docs/material-top-tab-navigator#${propName.toLowerCase()} for more details.`\n );\n }\n });\n\n const { state, descriptors, navigation, NavigationContent } =\n useNavigationBuilder<\n TabNavigationState<ParamListBase>,\n TabRouterOptions,\n TabActionHelpers<ParamListBase>,\n MaterialTopTabNavigationOptions,\n MaterialTopTabNavigationEventMap\n >(TabRouter, {\n initialRouteName,\n backBehavior,\n children,\n screenListeners,\n screenOptions,\n defaultScreenOptions,\n });\n\n return (\n <NavigationContent>\n <MaterialTopTabView\n {...rest}\n state={state}\n navigation={navigation}\n descriptors={descriptors}\n />\n </NavigationContent>\n );\n}\n\nexport default createNavigatorFactory<\n TabNavigationState<ParamListBase>,\n MaterialTopTabNavigationOptions,\n MaterialTopTabNavigationEventMap,\n typeof MaterialTopTabNavigator\n>(MaterialTopTabNavigator);\n"]}
1
+ {"version":3,"sources":["createMaterialTopTabNavigator.tsx"],"names":["createNavigatorFactory","TabRouter","useNavigationBuilder","React","warnOnce","MaterialTopTabView","MaterialTopTabNavigator","initialRouteName","backBehavior","children","screenListeners","screenOptions","restWithDeprecated","swipeEnabled","lazy","lazyPlaceholder","lazyPreloadDistance","tabBarOptions","rest","defaultScreenOptions","Object","assign","tabBarActiveTintColor","activeTintColor","tabBarInactiveTintColor","inactiveTintColor","tabBarPressColor","pressColor","tabBarPressOpacity","pressOpacity","tabBarShowLabel","showLabel","tabBarShowIcon","showIcon","tabBarAllowFontScaling","allowFontScaling","tabBarBounces","bounces","tabBarScrollEnabled","scrollEnabled","tabBarIconStyle","iconStyle","tabBarLabelStyle","labelStyle","tabBarItemStyle","tabStyle","tabBarBadge","renderBadge","tabBarIndicator","renderIndicator","tabBarIndicatorStyle","indicatorStyle","tabBarIndicatorContainerStyle","indicatorContainerStyle","tabBarContentContainerStyle","contentContainerStyle","tabBarStyle","style","keys","forEach","key","undefined","JSON","stringify","deprecatedProps","entries","propName","propValue","toLowerCase","state","descriptors","navigation","NavigationContent"],"mappings":"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","sourcesContent":["import {\n createNavigatorFactory,\n DefaultNavigatorOptions,\n ParamListBase,\n TabActionHelpers,\n TabNavigationState,\n TabRouter,\n TabRouterOptions,\n useNavigationBuilder,\n} from '@react-navigation/native';\nimport * as React from 'react';\nimport warnOnce from 'warn-once';\n\nimport type {\n MaterialTopTabNavigationConfig,\n MaterialTopTabNavigationEventMap,\n MaterialTopTabNavigationOptions,\n} from '../types';\nimport MaterialTopTabView from '../views/MaterialTopTabView';\n\ntype Props = DefaultNavigatorOptions<\n ParamListBase,\n TabNavigationState<ParamListBase>,\n MaterialTopTabNavigationOptions,\n MaterialTopTabNavigationEventMap\n> &\n TabRouterOptions &\n MaterialTopTabNavigationConfig;\n\nfunction MaterialTopTabNavigator({\n initialRouteName,\n backBehavior,\n children,\n screenListeners,\n screenOptions,\n ...restWithDeprecated\n}: Props) {\n const {\n // @ts-expect-error: swipeEnabled is deprecated\n swipeEnabled,\n // @ts-expect-error: lazy is deprecated\n lazy,\n // @ts-expect-error: lazyPlaceholder is deprecated\n lazyPlaceholder,\n // @ts-expect-error: lazyPreloadDistance is deprecated\n lazyPreloadDistance,\n // @ts-expect-error: tabBarOptions is deprecated\n tabBarOptions,\n ...rest\n } = restWithDeprecated;\n\n let defaultScreenOptions: MaterialTopTabNavigationOptions = {};\n\n if (tabBarOptions) {\n Object.assign(defaultScreenOptions, {\n tabBarActiveTintColor: tabBarOptions.activeTintColor,\n tabBarInactiveTintColor: tabBarOptions.inactiveTintColor,\n tabBarPressColor: tabBarOptions.pressColor,\n tabBarPressOpacity: tabBarOptions.pressOpacity,\n tabBarShowLabel: tabBarOptions.showLabel,\n tabBarShowIcon: tabBarOptions.showIcon,\n tabBarAllowFontScaling: tabBarOptions.allowFontScaling,\n tabBarBounces: tabBarOptions.bounces,\n tabBarScrollEnabled: tabBarOptions.scrollEnabled,\n tabBarIconStyle: tabBarOptions.iconStyle,\n tabBarLabelStyle: tabBarOptions.labelStyle,\n tabBarItemStyle: tabBarOptions.tabStyle,\n tabBarBadge: tabBarOptions.renderBadge,\n tabBarIndicator: tabBarOptions.renderIndicator,\n tabBarIndicatorStyle: tabBarOptions.indicatorStyle,\n tabBarIndicatorContainerStyle: tabBarOptions.indicatorContainerStyle,\n tabBarContentContainerStyle: tabBarOptions.contentContainerStyle,\n tabBarStyle: tabBarOptions.style,\n });\n\n (\n Object.keys(\n defaultScreenOptions\n ) as (keyof MaterialTopTabNavigationOptions)[]\n ).forEach((key) => {\n if (defaultScreenOptions[key] === undefined) {\n // eslint-disable-next-line @typescript-eslint/no-dynamic-delete\n delete defaultScreenOptions[key];\n }\n });\n\n warnOnce(\n tabBarOptions,\n `Material Top Tab Navigator: 'tabBarOptions' is deprecated. Migrate the options to 'screenOptions' instead.\\n\\nPlace the following in 'screenOptions' in your code to keep current behavior:\\n\\n${JSON.stringify(\n defaultScreenOptions,\n null,\n 2\n )}\\n\\nSee https://reactnavigation.org/docs/material-top-tab-navigator#options for more details.`\n );\n }\n\n const deprecatedProps = {\n swipeEnabled,\n lazy,\n lazyPlaceholder,\n lazyPreloadDistance,\n } as const;\n\n Object.entries(deprecatedProps).forEach(([propName, propValue]) => {\n if (propValue !== undefined) {\n // @ts-expect-error: Object.entries doesn't return strict types\n defaultScreenOptions[propName] = propValue;\n\n warnOnce(\n true,\n `Material Top Tab Navigator: '${propName}' in props is deprecated. Move it to 'screenOptions' instead.\\n\\nSee https://reactnavigation.org/docs/material-top-tab-navigator#${propName.toLowerCase()} for more details.`\n );\n }\n });\n\n const { state, descriptors, navigation, NavigationContent } =\n useNavigationBuilder<\n TabNavigationState<ParamListBase>,\n TabRouterOptions,\n TabActionHelpers<ParamListBase>,\n MaterialTopTabNavigationOptions,\n MaterialTopTabNavigationEventMap\n >(TabRouter, {\n initialRouteName,\n backBehavior,\n children,\n screenListeners,\n screenOptions,\n defaultScreenOptions,\n });\n\n return (\n <NavigationContent>\n <MaterialTopTabView\n {...rest}\n state={state}\n navigation={navigation}\n descriptors={descriptors}\n />\n </NavigationContent>\n );\n}\n\nexport default createNavigatorFactory<\n TabNavigationState<ParamListBase>,\n MaterialTopTabNavigationOptions,\n MaterialTopTabNavigationEventMap,\n typeof MaterialTopTabNavigator\n>(MaterialTopTabNavigator);\n"]}
@@ -2,6 +2,6 @@
2
2
  import { DefaultNavigatorOptions, ParamListBase, TabNavigationState, TabRouterOptions } from '@react-navigation/native';
3
3
  import type { MaterialTopTabNavigationConfig, MaterialTopTabNavigationEventMap, MaterialTopTabNavigationOptions } from '../types';
4
4
  declare type Props = DefaultNavigatorOptions<ParamListBase, TabNavigationState<ParamListBase>, MaterialTopTabNavigationOptions, MaterialTopTabNavigationEventMap> & TabRouterOptions & MaterialTopTabNavigationConfig;
5
- declare function MaterialTopTabNavigator({ initialRouteName, backBehavior, children, screenListeners, screenOptions, swipeEnabled, lazy, lazyPlaceholder, lazyPreloadDistance, tabBarOptions, ...rest }: Props): JSX.Element;
5
+ declare function MaterialTopTabNavigator({ initialRouteName, backBehavior, children, screenListeners, screenOptions, ...restWithDeprecated }: Props): JSX.Element;
6
6
  declare const _default: <ParamList extends ParamListBase>() => import("@react-navigation/native").TypedNavigator<ParamList, TabNavigationState<ParamListBase>, MaterialTopTabNavigationOptions, MaterialTopTabNavigationEventMap, typeof MaterialTopTabNavigator>;
7
7
  export default _default;
package/package.json CHANGED
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "name": "@react-navigation/material-top-tabs",
3
3
  "description": "Integration for the animated tab view component from react-native-tab-view",
4
- "version": "6.0.5",
4
+ "version": "6.0.6",
5
5
  "keywords": [
6
6
  "react-native-component",
7
7
  "react-component",
@@ -45,7 +45,7 @@
45
45
  "warn-once": "^0.1.0"
46
46
  },
47
47
  "devDependencies": {
48
- "@react-navigation/native": "^6.0.5",
48
+ "@react-navigation/native": "^6.0.6",
49
49
  "@testing-library/react-native": "^7.2.0",
50
50
  "@types/react": "^17.0.9",
51
51
  "@types/react-native": "~0.64.9",
@@ -78,5 +78,5 @@
78
78
  ]
79
79
  ]
80
80
  },
81
- "gitHead": "66a007b0649e443b528e6875df292563d0ed426c"
81
+ "gitHead": "e77a5ab9d342a03cd8e20b54938700dfd4e23f42"
82
82
  }
@@ -33,18 +33,22 @@ function MaterialTopTabNavigator({
33
33
  children,
34
34
  screenListeners,
35
35
  screenOptions,
36
- // @ts-expect-error: swipeEnabled is deprecated
37
- swipeEnabled,
38
- // @ts-expect-error: lazy is deprecated
39
- lazy,
40
- // @ts-expect-error: lazyPlaceholder is deprecated
41
- lazyPlaceholder,
42
- // @ts-expect-error: lazyPreloadDistance is deprecated
43
- lazyPreloadDistance,
44
- // @ts-expect-error: tabBarOptions is deprecated
45
- tabBarOptions,
46
- ...rest
36
+ ...restWithDeprecated
47
37
  }: Props) {
38
+ const {
39
+ // @ts-expect-error: swipeEnabled is deprecated
40
+ swipeEnabled,
41
+ // @ts-expect-error: lazy is deprecated
42
+ lazy,
43
+ // @ts-expect-error: lazyPlaceholder is deprecated
44
+ lazyPlaceholder,
45
+ // @ts-expect-error: lazyPreloadDistance is deprecated
46
+ lazyPreloadDistance,
47
+ // @ts-expect-error: tabBarOptions is deprecated
48
+ tabBarOptions,
49
+ ...rest
50
+ } = restWithDeprecated;
51
+
48
52
  let defaultScreenOptions: MaterialTopTabNavigationOptions = {};
49
53
 
50
54
  if (tabBarOptions) {