Skip to content

Commit

Permalink
refactor: simplify navigation list type
Browse files Browse the repository at this point in the history
  • Loading branch information
satya164 committed Mar 11, 2024
1 parent 4550e64 commit 3e4373e
Show file tree
Hide file tree
Showing 5 changed files with 70 additions and 105 deletions.
35 changes: 14 additions & 21 deletions packages/bottom-tabs/src/navigators/createBottomTabNavigator.tsx
Original file line number Diff line number Diff line change
Expand Up @@ -72,6 +72,17 @@ function BottomTabNavigator({
);
}

type BottomTabNavigationList<
ParamList extends ParamListBase,
NavigatorID extends string | undefined,
> = {
[RouteName in keyof ParamList]: BottomTabNavigationProp<
ParamList,
RouteName,
NavigatorID
>;
};

export function createBottomTabNavigator<
ParamList extends ParamListBase,
NavigatorID extends string | undefined = undefined,
Expand All @@ -81,13 +92,7 @@ export function createBottomTabNavigator<
TabNavigationState<ParamList>,
BottomTabNavigationOptions,
BottomTabNavigationEventMap,
{
[RouteName in keyof ParamList]: BottomTabNavigationProp<
ParamList,
RouteName,
NavigatorID
>;
},
BottomTabNavigationList<ParamList, NavigatorID>,
typeof BottomTabNavigator
>;

Expand All @@ -100,13 +105,7 @@ export function createBottomTabNavigator<
TabNavigationState<ParamList>,
BottomTabNavigationOptions,
BottomTabNavigationEventMap,
{
[RouteName in keyof ParamList]: BottomTabNavigationProp<
ParamList,
RouteName,
NavigatorID
>;
},
BottomTabNavigationList<ParamList, NavigatorID>,
typeof BottomTabNavigator
>,
>(
Expand All @@ -117,13 +116,7 @@ export function createBottomTabNavigator<
TabNavigationState<ParamList>,
BottomTabNavigationOptions,
BottomTabNavigationEventMap,
{
[RouteName in keyof ParamList]: BottomTabNavigationProp<
ParamList,
RouteName,
NavigatorID
>;
},
BottomTabNavigationList<ParamList, NavigatorID>,
typeof BottomTabNavigator
> & { config: Config };

Expand Down
35 changes: 14 additions & 21 deletions packages/drawer/src/navigators/createDrawerNavigator.tsx
Original file line number Diff line number Diff line change
Expand Up @@ -75,6 +75,17 @@ function DrawerNavigator({
);
}

type DrawerNavigationList<
ParamList extends ParamListBase,
NavigatorID extends string | undefined,
> = {
[RouteName in keyof ParamList]: DrawerNavigationProp<
ParamList,
RouteName,
NavigatorID
>;
};

export function createDrawerNavigator<
ParamList extends ParamListBase,
NavigatorID extends string | undefined = undefined,
Expand All @@ -84,13 +95,7 @@ export function createDrawerNavigator<
DrawerNavigationState<ParamList>,
DrawerNavigationOptions,
DrawerNavigationEventMap,
{
[RouteName in keyof ParamList]: DrawerNavigationProp<
ParamList,
RouteName,
NavigatorID
>;
},
DrawerNavigationList<ParamList, NavigatorID>,
typeof DrawerNavigator
>;

Expand All @@ -103,13 +108,7 @@ export function createDrawerNavigator<
DrawerNavigationState<ParamList>,
DrawerNavigationOptions,
DrawerNavigationEventMap,
{
[RouteName in keyof ParamList]: DrawerNavigationProp<
ParamList,
RouteName,
NavigatorID
>;
},
DrawerNavigationList<ParamList, NavigatorID>,
typeof DrawerNavigator
>,
>(
Expand All @@ -120,13 +119,7 @@ export function createDrawerNavigator<
DrawerNavigationState<ParamList>,
DrawerNavigationOptions,
DrawerNavigationEventMap,
{
[RouteName in keyof ParamList]: DrawerNavigationProp<
ParamList,
RouteName,
NavigatorID
>;
},
DrawerNavigationList<ParamList, NavigatorID>,
typeof DrawerNavigator
> & { config: Config };

Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -72,6 +72,17 @@ function MaterialTopTabNavigator({
);
}

type MaterialTopTabStackNavigationList<
ParamList extends ParamListBase,
NavigatorID extends string | undefined,
> = {
[RouteName in keyof ParamList]: MaterialTopTabNavigationProp<
ParamList,
RouteName,
NavigatorID
>;
};

export function createMaterialTopTabNavigator<
ParamList extends ParamListBase,
NavigatorID extends string | undefined = undefined,
Expand All @@ -81,13 +92,7 @@ export function createMaterialTopTabNavigator<
TabNavigationState<ParamList>,
MaterialTopTabNavigationOptions,
MaterialTopTabNavigationEventMap,
{
[RouteName in keyof ParamList]: MaterialTopTabNavigationProp<
ParamList,
RouteName,
NavigatorID
>;
},
MaterialTopTabStackNavigationList<ParamList, NavigatorID>,
typeof MaterialTopTabNavigator
>;

Expand All @@ -100,13 +105,7 @@ export function createMaterialTopTabNavigator<
TabNavigationState<ParamList>,
MaterialTopTabNavigationOptions,
MaterialTopTabNavigationEventMap,
{
[RouteName in keyof ParamList]: MaterialTopTabNavigationProp<
ParamList,
RouteName,
NavigatorID
>;
},
MaterialTopTabStackNavigationList<ParamList, NavigatorID>,
typeof MaterialTopTabNavigator
>,
>(
Expand All @@ -117,13 +116,7 @@ export function createMaterialTopTabNavigator<
TabNavigationState<ParamList>,
MaterialTopTabNavigationOptions,
MaterialTopTabNavigationEventMap,
{
[RouteName in keyof ParamList]: MaterialTopTabNavigationProp<
ParamList,
RouteName,
NavigatorID
>;
},
MaterialTopTabStackNavigationList<ParamList, NavigatorID>,
typeof MaterialTopTabNavigator
> & { config: Config };

Expand Down
35 changes: 14 additions & 21 deletions packages/native-stack/src/navigators/createNativeStackNavigator.tsx
Original file line number Diff line number Diff line change
Expand Up @@ -86,6 +86,17 @@ function NativeStackNavigator({
);
}

type NativeStackNavigationList<
ParamList extends ParamListBase,
NavigatorID extends string | undefined,
> = {
[RouteName in keyof ParamList]: NativeStackNavigationProp<
ParamList,
RouteName,
NavigatorID
>;
};

export function createNativeStackNavigator<
ParamList extends ParamListBase,
NavigatorID extends string | undefined = undefined,
Expand All @@ -95,13 +106,7 @@ export function createNativeStackNavigator<
StackNavigationState<ParamList>,
NativeStackNavigationOptions,
NativeStackNavigationEventMap,
{
[RouteName in keyof ParamList]: NativeStackNavigationProp<
ParamList,
RouteName,
NavigatorID
>;
},
NativeStackNavigationList<ParamList, NavigatorID>,
typeof NativeStackNavigator
>;

Expand All @@ -114,13 +119,7 @@ export function createNativeStackNavigator<
StackNavigationState<ParamList>,
NativeStackNavigationOptions,
NativeStackNavigationEventMap,
{
[RouteName in keyof ParamList]: NativeStackNavigationProp<
ParamList,
RouteName,
NavigatorID
>;
},
NativeStackNavigationList<ParamList, NavigatorID>,
typeof NativeStackNavigator
>,
>(
Expand All @@ -131,13 +130,7 @@ export function createNativeStackNavigator<
StackNavigationState<ParamList>,
NativeStackNavigationOptions,
NativeStackNavigationEventMap,
{
[RouteName in keyof ParamList]: NativeStackNavigationProp<
ParamList,
RouteName,
NavigatorID
>;
},
NativeStackNavigationList<ParamList, NavigatorID>,
typeof NativeStackNavigator
> & { config: Config };

Expand Down
35 changes: 14 additions & 21 deletions packages/stack/src/navigators/createStackNavigator.tsx
Original file line number Diff line number Diff line change
Expand Up @@ -105,6 +105,17 @@ function StackNavigator({
);
}

type StackNavigationList<
ParamList extends ParamListBase,
NavigatorID extends string | undefined,
> = {
[RouteName in keyof ParamList]: StackNavigationProp<
ParamList,
RouteName,
NavigatorID
>;
};

export function createStackNavigator<
ParamList extends ParamListBase,
NavigatorID extends string | undefined = undefined,
Expand All @@ -114,13 +125,7 @@ export function createStackNavigator<
StackNavigationState<ParamList>,
StackNavigationOptions,
StackNavigationEventMap,
{
[RouteName in keyof ParamList]: StackNavigationProp<
ParamList,
RouteName,
NavigatorID
>;
},
StackNavigationList<ParamList, NavigatorID>,
typeof StackNavigator
>;

Expand All @@ -133,13 +138,7 @@ export function createStackNavigator<
StackNavigationState<ParamList>,
StackNavigationOptions,
StackNavigationEventMap,
{
[RouteName in keyof ParamList]: StackNavigationProp<
ParamList,
RouteName,
NavigatorID
>;
},
StackNavigationList<ParamList, NavigatorID>,
typeof StackNavigator
>,
>(
Expand All @@ -150,13 +149,7 @@ export function createStackNavigator<
StackNavigationState<ParamList>,
StackNavigationOptions,
StackNavigationEventMap,
{
[RouteName in keyof ParamList]: StackNavigationProp<
ParamList,
RouteName,
NavigatorID
>;
},
StackNavigationList<ParamList, NavigatorID>,
typeof StackNavigator
> & { config: Config };

Expand Down

0 comments on commit 3e4373e

Please sign in to comment.