import { requireUserPage } from "@/lib/auth/guard"; import { db, schema } from "@/db"; import { eq } from "drizzle-orm"; import { SecurityPanel } from "@/components/admin/security-panel"; export default async function Settings({ searchParams }: { searchParams: Promise<{ must_change?: string }> }) { const s = await (async () => { try { return await requireUserPage(); } catch { return null; } })(); const { getSession } = await import("@/lib/auth/session"); const sess = s ?? (await getSession()); if (!sess) return null; const creds = await db.select({ id: schema.webauthnCredentials.id, label: schema.webauthnCredentials.label, createdAt: schema.webauthnCredentials.createdAt, lastUsedAt: schema.webauthnCredentials.lastUsedAt }).from(schema.webauthnCredentials).where(eq(schema.webauthnCredentials.userId, sess.id)); const must = (await searchParams).must_change === "1" || sess.mustChangePassword; return
You must change the initial password before using the admin area.
}