Skip to content

Instantly share code, notes, and snippets.

@AllGistsEqual
Created April 25, 2021 21:03
Show Gist options
  • Star 0 You must be signed in to star a gist
  • Fork 0 You must be signed in to fork a gist
  • Save AllGistsEqual/2ad08d24fc2312f27fba0b1a9f032aa2 to your computer and use it in GitHub Desktop.
Save AllGistsEqual/2ad08d24fc2312f27fba0b1a9f032aa2 to your computer and use it in GitHub Desktop.
// File: src/routing/routes.ts
import { createStackNavigator } from '@react-navigation/stack'
export enum MainRoutes {
// Init Stack
Splash = 'Splash', // display a logo or splash image
AppCheck = 'AppCheck', // check vital stuff, forced app updates and such
// Auth Stack
SignIn = 'SignIn', // existing user entry point
SignUp = 'SignUp', // new user entry point
// App Stack
AppLoading = 'AppLoading', // Load User Data for signed in users
Home = 'Home', // The first "real" page of the app
Settings = 'Settings', // Default Settings Page
}
export type MainStackParamList = {
// Init Stack
[MainRoutes.Splash]: undefined
[MainRoutes.AppCheck]: undefined
// Auth Stack
[MainRoutes.SignIn]: undefined
[MainRoutes.SignUp]: undefined
// App Stack
[MainRoutes.AppLoading]: undefined
[MainRoutes.Home]: { update: boolean } | undefined // just an example, "update" will later be used for version checks
[MainRoutes.Settings]: undefined
}
export const MainStack = createStackNavigator<MainStackParamList>()
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment