diff --git a/app/javascript/dashboard/routes/dashboard/dashboard.routes.js b/app/javascript/dashboard/routes/dashboard/dashboard.routes.js index 22fc11738..c4822fdfc 100644 --- a/app/javascript/dashboard/routes/dashboard/dashboard.routes.js +++ b/app/javascript/dashboard/routes/dashboard/dashboard.routes.js @@ -35,16 +35,19 @@ export default { { path: frontendURL('start/setup-profile'), name: 'onboarding_setup_profile', + roles: ['administrator'], component: SetupProfile, }, { path: frontendURL('start/setup-company'), name: 'onboarding_setup_company', + roles: ['administrator'], component: SetupCompany, }, { path: frontendURL('start/founders-note'), name: 'onboarding_founders_note', + roles: ['administrator'], component: FoundersNote, }, ], diff --git a/app/javascript/dashboard/routes/index.js b/app/javascript/dashboard/routes/index.js index e2245e20f..22f5ec0c6 100644 --- a/app/javascript/dashboard/routes/index.js +++ b/app/javascript/dashboard/routes/index.js @@ -45,11 +45,19 @@ export const validateAuthenticateRoutePermission = (to, next, { getters }) => { return next(frontendURL(`accounts/${user.account_id}/dashboard`)); } + // we can let them access onboarding routes + // we will eventually need guards as onboarding is done, but for now + // we can let them access onboarding routes + if (to.name.startsWith('onboarding')) { + return next(); + } + const nextRoute = validateLoggedInRoutes( to, getters.getCurrentUser, window.roleWiseRoutes ); + return nextRoute ? next(frontendURL(nextRoute)) : next(); };