From 91fda5d04f95aca1c97fcb0ed3696fbcb9022fc1 Mon Sep 17 00:00:00 2001 From: Jason Date: Sun, 8 Mar 2026 10:18:27 +0800 Subject: [PATCH] fix: correct env var priority for authDisableSignUp - Env var now properly overrides file config in both directions - Follows established pattern for boolean config flags - Removed redundant ?? false (field is typed boolean) - PAPERCLIP_AUTH_DISABLE_SIGN_UP can now set to 'false' to override file config's 'true' --- server/src/auth/better-auth.ts | 2 +- server/src/config.ts | 6 ++++-- 2 files changed, 5 insertions(+), 3 deletions(-) diff --git a/server/src/auth/better-auth.ts b/server/src/auth/better-auth.ts index 7266752e..786d3a4b 100644 --- a/server/src/auth/better-auth.ts +++ b/server/src/auth/better-auth.ts @@ -86,7 +86,7 @@ export function createBetterAuthInstance(db: Db, config: Config, trustedOrigins? emailAndPassword: { enabled: true, requireEmailVerification: false, - disableSignUp: config.authDisableSignUp ?? false, + disableSignUp: config.authDisableSignUp, }, }; diff --git a/server/src/config.ts b/server/src/config.ts index bcb84b47..983eba22 100644 --- a/server/src/config.ts +++ b/server/src/config.ts @@ -143,9 +143,11 @@ export function loadConfig(): Config { authBaseUrlModeFromEnv ?? fileConfig?.auth?.baseUrlMode ?? (authPublicBaseUrl ? "explicit" : "auto"); + const disableSignUpFromEnv = process.env.PAPERCLIP_AUTH_DISABLE_SIGN_UP; const authDisableSignUp: boolean = - process.env.PAPERCLIP_AUTH_DISABLE_SIGN_UP === "true" || - fileConfig?.auth?.disableSignUp === true; + disableSignUpFromEnv !== undefined + ? disableSignUpFromEnv === "true" + : (fileConfig?.auth?.disableSignUp ?? false); const allowedHostnamesFromEnvRaw = process.env.PAPERCLIP_ALLOWED_HOSTNAMES; const allowedHostnamesFromEnv = allowedHostnamesFromEnvRaw ? allowedHostnamesFromEnvRaw