mirror of
https://github.com/sourcebot-dev/sourcebot.git
synced 2025-12-15 05:45:20 +00:00
* 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>
48 lines
1.5 KiB
TypeScript
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>
|
|
)
|
|
}
|