import { Suspense } from "beth-stack/jsx"; import { Elysia } from "elysia"; import { authed } from "../auth/middleware"; import { BaseHtml } from "../components/base"; import { InitialTweetList, TweetCreationForm } from "../components/tweets"; import { ctx } from "../context"; export const index = new Elysia() .use(ctx) .derive(async (ctx) => { const authRequest = ctx.auth.handleRequest(ctx); const session = await authRequest.validate(); return { session }; }) .get("/", async ({ htmlStream, session, db }) => { return htmlStream(() => (
{session ? ( <>

Hi! {session.user.handle}

) : ( Sign In )}
)); });