@react-navigation/material-top-tabs 6.1.0 → 6.2.1
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/navigators/createMaterialTopTabNavigator.js +2 -0
- package/lib/commonjs/navigators/createMaterialTopTabNavigator.js.map +1 -1
- package/lib/module/navigators/createMaterialTopTabNavigator.js +2 -0
- package/lib/module/navigators/createMaterialTopTabNavigator.js.map +1 -1
- package/lib/typescript/src/navigators/createMaterialTopTabNavigator.d.ts +1 -1
- package/lib/typescript/src/types.d.ts +3 -3
- package/package.json +3 -3
- package/src/navigators/createMaterialTopTabNavigator.tsx +2 -0
- package/src/types.tsx +6 -3
|
@@ -23,6 +23,7 @@ function _extends() { _extends = Object.assign || function (target) { for (var i
|
|
|
23
23
|
|
|
24
24
|
function MaterialTopTabNavigator(_ref) {
|
|
25
25
|
let {
|
|
26
|
+
id,
|
|
26
27
|
initialRouteName,
|
|
27
28
|
backBehavior,
|
|
28
29
|
children,
|
|
@@ -96,6 +97,7 @@ function MaterialTopTabNavigator(_ref) {
|
|
|
96
97
|
navigation,
|
|
97
98
|
NavigationContent
|
|
98
99
|
} = (0, _native.useNavigationBuilder)(_native.TabRouter, {
|
|
100
|
+
id,
|
|
99
101
|
initialRouteName,
|
|
100
102
|
backBehavior,
|
|
101
103
|
children,
|
|
@@ -1 +1 @@
|
|
|
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":";;;;;;;AAAA;;AAUA;;AACA;;AAOA;;;;;;;;;;AAWA,SAASA,uBAAT,
|
|
1
|
+
{"version":3,"sources":["createMaterialTopTabNavigator.tsx"],"names":["MaterialTopTabNavigator","id","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 id,\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 id,\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"]}
|
|
@@ -7,6 +7,7 @@ import MaterialTopTabView from '../views/MaterialTopTabView';
|
|
|
7
7
|
|
|
8
8
|
function MaterialTopTabNavigator(_ref) {
|
|
9
9
|
let {
|
|
10
|
+
id,
|
|
10
11
|
initialRouteName,
|
|
11
12
|
backBehavior,
|
|
12
13
|
children,
|
|
@@ -80,6 +81,7 @@ function MaterialTopTabNavigator(_ref) {
|
|
|
80
81
|
navigation,
|
|
81
82
|
NavigationContent
|
|
82
83
|
} = useNavigationBuilder(TabRouter, {
|
|
84
|
+
id,
|
|
83
85
|
initialRouteName,
|
|
84
86
|
backBehavior,
|
|
85
87
|
children,
|
|
@@ -1 +1 @@
|
|
|
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":";;AAAA,SACEA,sBADF,EAMEC,SANF,EAQEC,oBARF,QASO,0BATP;AAUA,OAAO,KAAKC,KAAZ,MAAuB,OAAvB;AACA,OAAOC,QAAP,MAAqB,WAArB;AAOA,OAAOC,kBAAP,MAA+B,6BAA/B;;AAWA,SAASC,uBAAT,
|
|
1
|
+
{"version":3,"sources":["createMaterialTopTabNavigator.tsx"],"names":["createNavigatorFactory","TabRouter","useNavigationBuilder","React","warnOnce","MaterialTopTabView","MaterialTopTabNavigator","id","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":";;AAAA,SACEA,sBADF,EAMEC,SANF,EAQEC,oBARF,QASO,0BATP;AAUA,OAAO,KAAKC,KAAZ,MAAuB,OAAvB;AACA,OAAOC,QAAP,MAAqB,WAArB;AAOA,OAAOC,kBAAP,MAA+B,6BAA/B;;AAWA,SAASC,uBAAT,OAQU;AAAA,MARuB;AAC/BC,IAAAA,EAD+B;AAE/BC,IAAAA,gBAF+B;AAG/BC,IAAAA,YAH+B;AAI/BC,IAAAA,QAJ+B;AAK/BC,IAAAA,eAL+B;AAM/BC,IAAAA,aAN+B;AAO/B,OAAGC;AAP4B,GAQvB;AACR,QAAM;AACJ;AACAC,IAAAA,YAFI;AAGJ;AACAC,IAAAA,IAJI;AAKJ;AACAC,IAAAA,eANI;AAOJ;AACAC,IAAAA,mBARI;AASJ;AACAC,IAAAA,aAVI;AAWJ,OAAGC;AAXC,MAYFN,kBAZJ;AAcA,MAAIO,oBAAqD,GAAG,EAA5D;;AAEA,MAAIF,aAAJ,EAAmB;AACjBG,IAAAA,MAAM,CAACC,MAAP,CAAcF,oBAAd,EAAoC;AAClCG,MAAAA,qBAAqB,EAAEL,aAAa,CAACM,eADH;AAElCC,MAAAA,uBAAuB,EAAEP,aAAa,CAACQ,iBAFL;AAGlCC,MAAAA,gBAAgB,EAAET,aAAa,CAACU,UAHE;AAIlCC,MAAAA,kBAAkB,EAAEX,aAAa,CAACY,YAJA;AAKlCC,MAAAA,eAAe,EAAEb,aAAa,CAACc,SALG;AAMlCC,MAAAA,cAAc,EAAEf,aAAa,CAACgB,QANI;AAOlCC,MAAAA,sBAAsB,EAAEjB,aAAa,CAACkB,gBAPJ;AAQlCC,MAAAA,aAAa,EAAEnB,aAAa,CAACoB,OARK;AASlCC,MAAAA,mBAAmB,EAAErB,aAAa,CAACsB,aATD;AAUlCC,MAAAA,eAAe,EAAEvB,aAAa,CAACwB,SAVG;AAWlCC,MAAAA,gBAAgB,EAAEzB,aAAa,CAAC0B,UAXE;AAYlCC,MAAAA,eAAe,EAAE3B,aAAa,CAAC4B,QAZG;AAalCC,MAAAA,WAAW,EAAE7B,aAAa,CAAC8B,WAbO;AAclCC,MAAAA,eAAe,EAAE/B,aAAa,CAACgC,eAdG;AAelCC,MAAAA,oBAAoB,EAAEjC,aAAa,CAACkC,cAfF;AAgBlCC,MAAAA,6BAA6B,EAAEnC,aAAa,CAACoC,uBAhBX;AAiBlCC,MAAAA,2BAA2B,EAAErC,aAAa,CAACsC,qBAjBT;AAkBlCC,MAAAA,WAAW,EAAEvC,aAAa,CAACwC;AAlBO,KAApC;AAsBErC,IAAAA,MAAM,CAACsC,IAAP,CACEvC,oBADF,CADF,CAIEwC,OAJF,CAIWC,GAAD,IAAS;AACjB,UAAIzC,oBAAoB,CAACyC,GAAD,CAApB,KAA8BC,SAAlC,EAA6C;AAC3C;AACA,eAAO1C,oBAAoB,CAACyC,GAAD,CAA3B;AACD;AACF,KATD;AAWAzD,IAAAA,QAAQ,CACNc,aADM,EAEL,kMAAiM6C,IAAI,CAACC,SAAL,CAChM5C,oBADgM,EAEhM,IAFgM,EAGhM,CAHgM,CAIhM,+FANI,CAAR;AAQD;;AAED,QAAM6C,eAAe,GAAG;AACtBnD,IAAAA,YADsB;AAEtBC,IAAAA,IAFsB;AAGtBC,IAAAA,eAHsB;AAItBC,IAAAA;AAJsB,GAAxB;AAOAI,EAAAA,MAAM,CAAC6C,OAAP,CAAeD,eAAf,EAAgCL,OAAhC,CAAwC,SAA2B;AAAA,QAA1B,CAACO,QAAD,EAAWC,SAAX,CAA0B;;AACjE,QAAIA,SAAS,KAAKN,SAAlB,EAA6B;AAC3B;AACA1C,MAAAA,oBAAoB,CAAC+C,QAAD,CAApB,GAAiCC,SAAjC;AAEAhE,MAAAA,QAAQ,CACN,IADM,EAEL,gCAA+B+D,QAAS,oIAAmIA,QAAQ,CAACE,WAAT,EAAuB,oBAF7L,CAAR;AAID;AACF,GAVD;AAYA,QAAM;AAAEC,IAAAA,KAAF;AAASC,IAAAA,WAAT;AAAsBC,IAAAA,UAAtB;AAAkCC,IAAAA;AAAlC,MACJvE,oBAAoB,CAMlBD,SANkB,EAMP;AACXM,IAAAA,EADW;AAEXC,IAAAA,gBAFW;AAGXC,IAAAA,YAHW;AAIXC,IAAAA,QAJW;AAKXC,IAAAA,eALW;AAMXC,IAAAA,aANW;AAOXQ,IAAAA;AAPW,GANO,CADtB;AAiBA,sBACE,oBAAC,iBAAD,qBACE,oBAAC,kBAAD,eACMD,IADN;AAEE,IAAA,KAAK,EAAEmD,KAFT;AAGE,IAAA,UAAU,EAAEE,UAHd;AAIE,IAAA,WAAW,EAAED;AAJf,KADF,CADF;AAUD;;AAED,eAAevE,sBAAsB,CAKnCM,uBALmC,CAArC","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 id,\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 id,\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, ...restWithDeprecated }: Props): JSX.Element;
|
|
5
|
+
declare function MaterialTopTabNavigator({ id, 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;
|
|
@@ -30,9 +30,9 @@ export declare type MaterialTopTabNavigationEventMap = {
|
|
|
30
30
|
};
|
|
31
31
|
};
|
|
32
32
|
export declare type MaterialTopTabNavigationHelpers = NavigationHelpers<ParamListBase, MaterialTopTabNavigationEventMap> & TabActionHelpers<ParamListBase>;
|
|
33
|
-
export declare type MaterialTopTabNavigationProp<ParamList extends ParamListBase, RouteName extends keyof ParamList = keyof ParamList> = NavigationProp<ParamList, RouteName, TabNavigationState<ParamList>, MaterialTopTabNavigationOptions, MaterialTopTabNavigationEventMap> & TabActionHelpers<ParamList>;
|
|
34
|
-
export declare type MaterialTopTabScreenProps<ParamList extends ParamListBase, RouteName extends keyof ParamList = keyof ParamList> = {
|
|
35
|
-
navigation: MaterialTopTabNavigationProp<ParamList, RouteName>;
|
|
33
|
+
export declare type MaterialTopTabNavigationProp<ParamList extends ParamListBase, RouteName extends keyof ParamList = keyof ParamList, NavigatorID extends string | undefined = undefined> = NavigationProp<ParamList, RouteName, NavigatorID, TabNavigationState<ParamList>, MaterialTopTabNavigationOptions, MaterialTopTabNavigationEventMap> & TabActionHelpers<ParamList>;
|
|
34
|
+
export declare type MaterialTopTabScreenProps<ParamList extends ParamListBase, RouteName extends keyof ParamList = keyof ParamList, NavigatorID extends string | undefined = undefined> = {
|
|
35
|
+
navigation: MaterialTopTabNavigationProp<ParamList, RouteName, NavigatorID>;
|
|
36
36
|
route: RouteProp<ParamList, RouteName>;
|
|
37
37
|
};
|
|
38
38
|
export declare type MaterialTopTabNavigationOptions = {
|
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.1
|
|
4
|
+
"version": "6.2.1",
|
|
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.
|
|
48
|
+
"@react-navigation/native": "^6.0.10",
|
|
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": "
|
|
81
|
+
"gitHead": "b1c421445ecb75d514ce27791433b12f9a7e75b7"
|
|
82
82
|
}
|
|
@@ -28,6 +28,7 @@ type Props = DefaultNavigatorOptions<
|
|
|
28
28
|
MaterialTopTabNavigationConfig;
|
|
29
29
|
|
|
30
30
|
function MaterialTopTabNavigator({
|
|
31
|
+
id,
|
|
31
32
|
initialRouteName,
|
|
32
33
|
backBehavior,
|
|
33
34
|
children,
|
|
@@ -121,6 +122,7 @@ function MaterialTopTabNavigator({
|
|
|
121
122
|
MaterialTopTabNavigationOptions,
|
|
122
123
|
MaterialTopTabNavigationEventMap
|
|
123
124
|
>(TabRouter, {
|
|
125
|
+
id,
|
|
124
126
|
initialRouteName,
|
|
125
127
|
backBehavior,
|
|
126
128
|
children,
|
package/src/types.tsx
CHANGED
|
@@ -43,10 +43,12 @@ export type MaterialTopTabNavigationHelpers = NavigationHelpers<
|
|
|
43
43
|
|
|
44
44
|
export type MaterialTopTabNavigationProp<
|
|
45
45
|
ParamList extends ParamListBase,
|
|
46
|
-
RouteName extends keyof ParamList = keyof ParamList
|
|
46
|
+
RouteName extends keyof ParamList = keyof ParamList,
|
|
47
|
+
NavigatorID extends string | undefined = undefined
|
|
47
48
|
> = NavigationProp<
|
|
48
49
|
ParamList,
|
|
49
50
|
RouteName,
|
|
51
|
+
NavigatorID,
|
|
50
52
|
TabNavigationState<ParamList>,
|
|
51
53
|
MaterialTopTabNavigationOptions,
|
|
52
54
|
MaterialTopTabNavigationEventMap
|
|
@@ -55,9 +57,10 @@ export type MaterialTopTabNavigationProp<
|
|
|
55
57
|
|
|
56
58
|
export type MaterialTopTabScreenProps<
|
|
57
59
|
ParamList extends ParamListBase,
|
|
58
|
-
RouteName extends keyof ParamList = keyof ParamList
|
|
60
|
+
RouteName extends keyof ParamList = keyof ParamList,
|
|
61
|
+
NavigatorID extends string | undefined = undefined
|
|
59
62
|
> = {
|
|
60
|
-
navigation: MaterialTopTabNavigationProp<ParamList, RouteName>;
|
|
63
|
+
navigation: MaterialTopTabNavigationProp<ParamList, RouteName, NavigatorID>;
|
|
61
64
|
route: RouteProp<ParamList, RouteName>;
|
|
62
65
|
};
|
|
63
66
|
|