import { getHonoContext } from "waku/unstable_hono"; import cookie from "cookie"; import db from "../db"; import type { Middleware } from "waku/config"; const cookieMiddleware: Middleware = () => { console.log("cookieMiddleware executed"); return async (ctx, next) => { const cookies = cookie.parse(ctx.req.headers.cookie || ""); const coki = cookies.sorlang; // if (!coki) { // if (ctx.req.url.pathname === "/login") return await next(); // ctx.res.status = 301; // ctx.res.headers = { // Location: "/login", // }; // } if (coki) { const userRow = db.fetchCookie(coki); // console.log({ userRow }); if (userRow) ctx.data.user = { id: userRow.id, name: userRow.name }; // else { // if (ctx.req.url.pathname === "/login") return await next(); // ctx.res.status = 301; // ctx.res.headers = { // Location: "/login", // }; // } } await next(); const hctx: any = getHonoContext(); // console.log("hono", hctx.lol); // console.log("ctx coki", ctx.data.cookie); ctx.res.headers ||= {}; if (ctx.data.cookie) ctx.res.headers["set-cookie"] = ctx.data.cookie as string; ctx.res.headers["set-lmao"] = "wtf man"; }; }; export default cookieMiddleware;