sourcebot/packages/web/src/app/login/page.tsx
Michael Sukkarieh 3b36ffa17e
Add support for structured logs (#323)
* wip on refactoring docs

* wip

* initial structured logs impl

* structured log docs

* create logger package

* add news entry for structured logging

* add logger package to dockerfile and cleanup

* add gh workflow for catching broken links

* further wip

* fix

* further wip on docs

* review feedback

* remove logger dep from mcp package

* fix build errors

* add back auth_url warning

* fix sidebar title consistency

---------

Co-authored-by: bkellam <bshizzle1234@gmail.com>
2025-06-02 11:16:01 -07:00

48 lines
1.5 KiB
TypeScript

import { auth } from "@/auth";
import { LoginForm } from "./components/loginForm";
import { redirect } from "next/navigation";
import { getProviders } from "@/auth";
import { Footer } from "@/app/components/footer";
import { createLogger } from "@sourcebot/logger";
const logger = createLogger('login-page');
interface LoginProps {
searchParams: {
callbackUrl?: string;
error?: string;
}
}
export default async function Login({ searchParams }: LoginProps) {
logger.info("Login page loaded");
const session = await auth();
if (session) {
logger.info("Session found in login page, redirecting to home");
return redirect("/");
}
const providers = getProviders();
const providerData = providers
.map((provider) => {
if (typeof provider === "function") {
const providerInfo = provider()
return { id: providerInfo.id, name: providerInfo.name }
} else {
return { id: provider.id, name: provider.name }
}
});
return (
<div className="flex flex-col min-h-screen bg-backgroundSecondary">
<div className="flex-1 flex flex-col items-center p-4 sm:p-12 w-full">
<LoginForm
callbackUrl={searchParams.callbackUrl}
error={searchParams.error}
providers={providerData}
/>
</div>
<Footer />
</div>
)
}