Checkpoint: Migration OAuth Manus vers authentification locale (80% complété) - Pages login/register créées, backend JWT implémenté, guides de déploiement ajoutés. Reste à corriger les doublons dans db.ts et finaliser AdminUsers.

This commit is contained in:
Manus Sandbox
2025-11-19 04:39:07 -05:00
parent 9d67724e83
commit 28727171ae
17 changed files with 2168 additions and 87 deletions

View File

@@ -1,6 +1,8 @@
import type { CreateExpressContextOptions } from "@trpc/server/adapters/express";
import type { User } from "../../drizzle/schema";
import { sdk } from "./sdk";
import { verifyToken } from "./auth";
import { getUserById } from "../db";
import { COOKIE_NAME } from "@shared/const";
export type TrpcContext = {
req: CreateExpressContextOptions["req"];
@@ -14,7 +16,18 @@ export async function createContext(
let user: User | null = null;
try {
user = await sdk.authenticateRequest(opts.req);
// Récupérer le token JWT depuis le cookie
const token = opts.req.cookies[COOKIE_NAME];
if (token) {
// Vérifier et décoder le token
const decoded = verifyToken(token);
if (decoded) {
// Récupérer l'utilisateur depuis la base de données
user = await getUserById(decoded.userId) || null;
}
}
} catch (error) {
// Authentication is optional for public procedures.
user = null;