diff --git a/new-functions/src/index.ts b/new-functions/src/index.ts index af72fe9..b9d0d27 100644 --- a/new-functions/src/index.ts +++ b/new-functions/src/index.ts @@ -1,21 +1,29 @@ import { Hono } from "hono"; import { cors } from "hono/cors"; +import { createMiddleware } from "hono/factory"; +import type { LingdocsUser } from "../../website/src/types/account-types"; const app = new Hono(); app.use(cors()); -app.use(async (c, next) => { +const authMiddleware = createMiddleware<{ + Variables: { + user: LingdocsUser; + }; +}>(async (c, next) => { const cookie = c.req.header("Cookie") || ""; const r = await fetch("https://account.lingdocs.com/api/user", { headers: { cookie }, }); - const res = await r.json(); + const res = (await r.json()) as { ok: boolean; user: LingdocsUser }; if (res.ok) { c.set("user", res.user); } await next(); }); +app.use(authMiddleware); + app.get("/", (c) => { // c.env.LINGDOCS_COUCHDB return c.text("Hi from hono updated");