Normalize credentials provider id and signin lookup

This commit is contained in:
shamoon
2026-02-04 21:44:40 -08:00
parent 42b290c76c
commit 8792337133
3 changed files with 7 additions and 5 deletions

View File

@@ -54,8 +54,8 @@ describe("pages/api/auth/[...nextauth]", () => {
const mod = await import("pages/api/auth/[...nextauth]"); const mod = await import("pages/api/auth/[...nextauth]");
const [provider] = mod.default.options.providers; const [provider] = mod.default.options.providers;
expect(provider.id).toBe("homepage-password"); expect(provider.id).toBe("credentials");
expect(provider.name).toBe("Password"); expect(provider.name).toBe("Credentials");
expect(provider.type).toBe("credentials"); expect(provider.type).toBe("credentials");
expect(typeof provider.authorize).toBe("function"); expect(typeof provider.authorize).toBe("function");
}); });

View File

@@ -67,7 +67,6 @@ if (authEnabled) {
} else { } else {
providers = [ providers = [
CredentialsProvider({ CredentialsProvider({
id: "homepage-password",
name: "Password", name: "Password",
credentials: { credentials: {
password: { label: "Password", type: "password" }, password: { label: "Password", type: "password" },

View File

@@ -102,7 +102,10 @@ export default function SignIn({ providers, settings }) {
); );
} }
const hasPasswordProvider = Boolean(providers?.["homepage-password"]); const passwordProvider = providers
? Object.values(providers).find((provider) => provider.type === "credentials")
: null;
const hasPasswordProvider = Boolean(passwordProvider);
return ( return (
<> <>
@@ -147,7 +150,7 @@ export default function SignIn({ providers, settings }) {
className="space-y-3" className="space-y-3"
onSubmit={async (event) => { onSubmit={async (event) => {
event.preventDefault(); event.preventDefault();
await signIn("homepage-password", { await signIn(passwordProvider?.id ?? "credentials", {
redirect: true, redirect: true,
callbackUrl, callbackUrl,
password, password,