UNPKG

alepha

Version:

Easy-to-use modern TypeScript framework for building many kind of applications.

18 lines (15 loc) 533 B
import { $hook, $inject, Alepha } from "alepha"; import { currentUserAtom } from "alepha/security"; export class ReactAuthProvider { protected readonly alepha = $inject(Alepha); public readonly onRender = $hook({ on: "react:server:render:begin", handler: async ({ request, state }) => { if (request?.user) { const { token, realm, ...user } = request.user; // do not send token and realm to the client this.alepha.store.set(currentUserAtom, user); state.user = user; } }, }); }