Files
n8n-enterprise-unlocked/packages/editor-ui/src/rbac/middleware/guest.ts
Alex Grozav 67a88914f2 feat(editor): Add routing middleware, permission checks, RBAC store, RBAC component (#7702)
Github issue / Community forum post (link here to close automatically):

---------

Co-authored-by: Csaba Tuncsik <csaba@n8n.io>
2023-11-23 13:22:47 +02:00

17 lines
509 B
TypeScript

import type { RouterMiddleware } from '@/types/router';
import { VIEWS } from '@/constants';
import type { GuestPermissionOptions } from '@/types/rbac';
import { isGuest } from '@/rbac/checks';
export const guestMiddleware: RouterMiddleware<GuestPermissionOptions> = async (to, from, next) => {
const valid = isGuest();
if (!valid) {
const redirect = to.query.redirect as string;
if (redirect && redirect.startsWith('/')) {
return next(redirect);
}
return next({ name: VIEWS.HOMEPAGE });
}
};