Skip to content

awesome-typescript/react-router-config-auth

Repository files navigation

react-router-config-auth

Install

Create file .npmrc

echo "@awesome-typescript:registry=https://npm.pkg.github.com" > .npmrc

Install npm package

npm install @awesome-typescript/[email protected] --save --save-exact
{renderRoutes(
  authRoutes(
    routes,
    permissions.map((permission) => permission.id),
  ),
)}
import { AuthenticationGuard } from '@awesome-typescript/react-router-config-auth'

export type RouteConfig = RouteBreadcrumbConfig & ReactRouteConfig

export const routes: RouteConfig[] = [
  {
    path: '/login',
    exact: true,
    component: LoginPage,
  },
  {
    component: MainTemplate,
    routes: [
      {
        path: '/posts',
        exact: true,
        component: React.lazy(
          () => import('./routes/posts'),
        ),
        settings: {
          roles: [AuthenticationGuard, CanBrowsePosts],
        },
      },
      {
        path: '/news',
        exact: true,
        component: React.lazy(() => import('./routes/news')),
        settings: {
          roles: [CanBrowseNews],
        },
      },
  	]
  }
]

About

react-router-config-auth

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages