refactor(onboarding): restructure onboarding routes and components
- Removed obsolete onboarding routes: complete, create-complex, index, verify-email, and verify. - Introduced new setup stepper page for onboarding process. - Created a multi-step setup component to handle complex creation with validation. - Added new schemas for complex creation and plan features. - Implemented detailed steps for complex name, location, plan selection, and court setup. - Enhanced error handling and user feedback during the onboarding process.
This commit is contained in:
@@ -17,11 +17,7 @@ import { Route as LoginRouteImport } from './routes/login'
|
||||
import { Route as InviteRouteImport } from './routes/invite'
|
||||
import { Route as AuthCallbackRouteImport } from './routes/auth-callback'
|
||||
import { Route as AppRouteRouteImport } from './routes/_app/route'
|
||||
import { Route as OnboardIndexRouteImport } from './routes/onboard/index'
|
||||
import { Route as OnboardVerifyEmailRouteImport } from './routes/onboard/verify-email'
|
||||
import { Route as OnboardVerifyRouteImport } from './routes/onboard/verify'
|
||||
import { Route as OnboardCreateComplexRouteImport } from './routes/onboard/create-complex'
|
||||
import { Route as OnboardCompleteRouteImport } from './routes/onboard/complete'
|
||||
import { Route as OnboardSetupRouteImport } from './routes/onboard/setup'
|
||||
import { Route as AppProfileRouteImport } from './routes/_app/profile'
|
||||
import { Route as ComplexSlugBookingRouteImport } from './routes/$complexSlug/booking'
|
||||
import { Route as AppAuthenticatedRouteRouteImport } from './routes/_app/_authenticated/route'
|
||||
@@ -69,29 +65,9 @@ const AppRouteRoute = AppRouteRouteImport.update({
|
||||
id: '/_app',
|
||||
getParentRoute: () => rootRouteImport,
|
||||
} as any)
|
||||
const OnboardIndexRoute = OnboardIndexRouteImport.update({
|
||||
id: '/',
|
||||
path: '/',
|
||||
getParentRoute: () => OnboardRoute,
|
||||
} as any)
|
||||
const OnboardVerifyEmailRoute = OnboardVerifyEmailRouteImport.update({
|
||||
id: '/verify-email',
|
||||
path: '/verify-email',
|
||||
getParentRoute: () => OnboardRoute,
|
||||
} as any)
|
||||
const OnboardVerifyRoute = OnboardVerifyRouteImport.update({
|
||||
id: '/verify',
|
||||
path: '/verify',
|
||||
getParentRoute: () => OnboardRoute,
|
||||
} as any)
|
||||
const OnboardCreateComplexRoute = OnboardCreateComplexRouteImport.update({
|
||||
id: '/create-complex',
|
||||
path: '/create-complex',
|
||||
getParentRoute: () => OnboardRoute,
|
||||
} as any)
|
||||
const OnboardCompleteRoute = OnboardCompleteRouteImport.update({
|
||||
id: '/complete',
|
||||
path: '/complete',
|
||||
const OnboardSetupRoute = OnboardSetupRouteImport.update({
|
||||
id: '/setup',
|
||||
path: '/setup',
|
||||
getParentRoute: () => OnboardRoute,
|
||||
} as any)
|
||||
const AppProfileRoute = AppProfileRouteImport.update({
|
||||
@@ -142,11 +118,7 @@ export interface FileRoutesByFullPath {
|
||||
'/signup': typeof SignupRoute
|
||||
'/$complexSlug/booking': typeof ComplexSlugBookingRouteWithChildren
|
||||
'/profile': typeof AppProfileRoute
|
||||
'/onboard/complete': typeof OnboardCompleteRoute
|
||||
'/onboard/create-complex': typeof OnboardCreateComplexRoute
|
||||
'/onboard/verify': typeof OnboardVerifyRoute
|
||||
'/onboard/verify-email': typeof OnboardVerifyEmailRoute
|
||||
'/onboard/': typeof OnboardIndexRoute
|
||||
'/onboard/setup': typeof OnboardSetupRoute
|
||||
'/$complexSlug/booking/': typeof ComplexSlugBookingIndexRoute
|
||||
'/$complexSlug/booking/confirmed/$bookingCode': typeof ComplexSlugBookingConfirmedBookingCodeRoute
|
||||
'/complex/$slug/edit': typeof AppAuthenticatedComplexSlugEditRoute
|
||||
@@ -156,15 +128,12 @@ export interface FileRoutesByTo {
|
||||
'/auth-callback': typeof AuthCallbackRoute
|
||||
'/invite': typeof InviteRoute
|
||||
'/login': typeof LoginRoute
|
||||
'/onboard': typeof OnboardRouteWithChildren
|
||||
'/reset-password': typeof ResetPasswordRoute
|
||||
'/select-complex': typeof SelectComplexRoute
|
||||
'/signup': typeof SignupRoute
|
||||
'/profile': typeof AppProfileRoute
|
||||
'/onboard/complete': typeof OnboardCompleteRoute
|
||||
'/onboard/create-complex': typeof OnboardCreateComplexRoute
|
||||
'/onboard/verify': typeof OnboardVerifyRoute
|
||||
'/onboard/verify-email': typeof OnboardVerifyEmailRoute
|
||||
'/onboard': typeof OnboardIndexRoute
|
||||
'/onboard/setup': typeof OnboardSetupRoute
|
||||
'/$complexSlug/booking': typeof ComplexSlugBookingIndexRoute
|
||||
'/$complexSlug/booking/confirmed/$bookingCode': typeof ComplexSlugBookingConfirmedBookingCodeRoute
|
||||
'/complex/$slug/edit': typeof AppAuthenticatedComplexSlugEditRoute
|
||||
@@ -182,11 +151,7 @@ export interface FileRoutesById {
|
||||
'/_app/_authenticated': typeof AppAuthenticatedRouteRouteWithChildren
|
||||
'/$complexSlug/booking': typeof ComplexSlugBookingRouteWithChildren
|
||||
'/_app/profile': typeof AppProfileRoute
|
||||
'/onboard/complete': typeof OnboardCompleteRoute
|
||||
'/onboard/create-complex': typeof OnboardCreateComplexRoute
|
||||
'/onboard/verify': typeof OnboardVerifyRoute
|
||||
'/onboard/verify-email': typeof OnboardVerifyEmailRoute
|
||||
'/onboard/': typeof OnboardIndexRoute
|
||||
'/onboard/setup': typeof OnboardSetupRoute
|
||||
'/$complexSlug/booking/': typeof ComplexSlugBookingIndexRoute
|
||||
'/_app/_authenticated/': typeof AppAuthenticatedIndexRoute
|
||||
'/$complexSlug/booking/confirmed/$bookingCode': typeof ComplexSlugBookingConfirmedBookingCodeRoute
|
||||
@@ -205,11 +170,7 @@ export interface FileRouteTypes {
|
||||
| '/signup'
|
||||
| '/$complexSlug/booking'
|
||||
| '/profile'
|
||||
| '/onboard/complete'
|
||||
| '/onboard/create-complex'
|
||||
| '/onboard/verify'
|
||||
| '/onboard/verify-email'
|
||||
| '/onboard/'
|
||||
| '/onboard/setup'
|
||||
| '/$complexSlug/booking/'
|
||||
| '/$complexSlug/booking/confirmed/$bookingCode'
|
||||
| '/complex/$slug/edit'
|
||||
@@ -219,15 +180,12 @@ export interface FileRouteTypes {
|
||||
| '/auth-callback'
|
||||
| '/invite'
|
||||
| '/login'
|
||||
| '/onboard'
|
||||
| '/reset-password'
|
||||
| '/select-complex'
|
||||
| '/signup'
|
||||
| '/profile'
|
||||
| '/onboard/complete'
|
||||
| '/onboard/create-complex'
|
||||
| '/onboard/verify'
|
||||
| '/onboard/verify-email'
|
||||
| '/onboard'
|
||||
| '/onboard/setup'
|
||||
| '/$complexSlug/booking'
|
||||
| '/$complexSlug/booking/confirmed/$bookingCode'
|
||||
| '/complex/$slug/edit'
|
||||
@@ -244,11 +202,7 @@ export interface FileRouteTypes {
|
||||
| '/_app/_authenticated'
|
||||
| '/$complexSlug/booking'
|
||||
| '/_app/profile'
|
||||
| '/onboard/complete'
|
||||
| '/onboard/create-complex'
|
||||
| '/onboard/verify'
|
||||
| '/onboard/verify-email'
|
||||
| '/onboard/'
|
||||
| '/onboard/setup'
|
||||
| '/$complexSlug/booking/'
|
||||
| '/_app/_authenticated/'
|
||||
| '/$complexSlug/booking/confirmed/$bookingCode'
|
||||
@@ -325,39 +279,11 @@ declare module '@tanstack/react-router' {
|
||||
preLoaderRoute: typeof AppRouteRouteImport
|
||||
parentRoute: typeof rootRouteImport
|
||||
}
|
||||
'/onboard/': {
|
||||
id: '/onboard/'
|
||||
path: '/'
|
||||
fullPath: '/onboard/'
|
||||
preLoaderRoute: typeof OnboardIndexRouteImport
|
||||
parentRoute: typeof OnboardRoute
|
||||
}
|
||||
'/onboard/verify-email': {
|
||||
id: '/onboard/verify-email'
|
||||
path: '/verify-email'
|
||||
fullPath: '/onboard/verify-email'
|
||||
preLoaderRoute: typeof OnboardVerifyEmailRouteImport
|
||||
parentRoute: typeof OnboardRoute
|
||||
}
|
||||
'/onboard/verify': {
|
||||
id: '/onboard/verify'
|
||||
path: '/verify'
|
||||
fullPath: '/onboard/verify'
|
||||
preLoaderRoute: typeof OnboardVerifyRouteImport
|
||||
parentRoute: typeof OnboardRoute
|
||||
}
|
||||
'/onboard/create-complex': {
|
||||
id: '/onboard/create-complex'
|
||||
path: '/create-complex'
|
||||
fullPath: '/onboard/create-complex'
|
||||
preLoaderRoute: typeof OnboardCreateComplexRouteImport
|
||||
parentRoute: typeof OnboardRoute
|
||||
}
|
||||
'/onboard/complete': {
|
||||
id: '/onboard/complete'
|
||||
path: '/complete'
|
||||
fullPath: '/onboard/complete'
|
||||
preLoaderRoute: typeof OnboardCompleteRouteImport
|
||||
'/onboard/setup': {
|
||||
id: '/onboard/setup'
|
||||
path: '/setup'
|
||||
fullPath: '/onboard/setup'
|
||||
preLoaderRoute: typeof OnboardSetupRouteImport
|
||||
parentRoute: typeof OnboardRoute
|
||||
}
|
||||
'/_app/profile': {
|
||||
@@ -442,19 +368,11 @@ const AppRouteRouteWithChildren = AppRouteRoute._addFileChildren(
|
||||
)
|
||||
|
||||
interface OnboardRouteChildren {
|
||||
OnboardCompleteRoute: typeof OnboardCompleteRoute
|
||||
OnboardCreateComplexRoute: typeof OnboardCreateComplexRoute
|
||||
OnboardVerifyRoute: typeof OnboardVerifyRoute
|
||||
OnboardVerifyEmailRoute: typeof OnboardVerifyEmailRoute
|
||||
OnboardIndexRoute: typeof OnboardIndexRoute
|
||||
OnboardSetupRoute: typeof OnboardSetupRoute
|
||||
}
|
||||
|
||||
const OnboardRouteChildren: OnboardRouteChildren = {
|
||||
OnboardCompleteRoute: OnboardCompleteRoute,
|
||||
OnboardCreateComplexRoute: OnboardCreateComplexRoute,
|
||||
OnboardVerifyRoute: OnboardVerifyRoute,
|
||||
OnboardVerifyEmailRoute: OnboardVerifyEmailRoute,
|
||||
OnboardIndexRoute: OnboardIndexRoute,
|
||||
OnboardSetupRoute: OnboardSetupRoute,
|
||||
}
|
||||
|
||||
const OnboardRouteWithChildren =
|
||||
|
||||
Reference in New Issue
Block a user