Documentation

Routes authentifiees

Utiliser des routes wrapper pour preparer l'etat auth avant les enfants proteges.

Pour les arbres de routes proteges, utilisez une route wrapper qui prepare l’etat d’authentification une seule fois et controle le rendu des enfants.

import { r } from '@plumile/router';

import {
  AccountPageResource,
  LoginPageResource,
  ProtectedShellResource,
} from './common/resources.js';
import { prepareAuthStatus, prepareLoginPage } from './common/prepares.js';
import { renderAuthenticatedRoute } from './common/renders.js';

export const routes = [
  r({
    path: '',
    resourcePage: ProtectedShellResource,
    prepare: prepareAuthStatus,
    render: renderAuthenticatedRoute,
    children: [
      r({
        path: 'account',
        resourcePage: AccountPageResource,
      }),
    ],
  }),
  r({
    path: 'login',
    resourcePage: LoginPageResource,
    prepare: prepareLoginPage,
  }),
];

Gardez les checks auth dans la paire prepare/render du wrapper. Les routes enfants peuvent se concentrer sur leurs propres donnees et leur UI.