From f6659368e1a154e224ffd3008bb6cb06665f79b4 Mon Sep 17 00:00:00 2001 From: Henry Date: Fri, 13 Jun 2025 23:39:50 +0100 Subject: [PATCH] fix: allow empty strings for optional envs --- apps/web/src/env.ts | 17 +++++++++++++---- 1 file changed, 13 insertions(+), 4 deletions(-) diff --git a/apps/web/src/env.ts b/apps/web/src/env.ts index ad42bbf0..dee7f7ca 100644 --- a/apps/web/src/env.ts +++ b/apps/web/src/env.ts @@ -17,8 +17,11 @@ export const env = createEnv({ BETTER_AUTH_SECRET: z.string(), BETTER_AUTH_TRUSTED_ORIGINS: z .string() - .refine((s) => - s.split(",").every((l) => z.string().url().safeParse(l).success), + .transform((s) => (s === "" ? undefined : s)) + .refine( + (s) => + !s || + s.split(",").every((l) => z.string().url().safeParse(l).success), ) .optional(), POSTGRES_URL: z.string().url(), @@ -82,11 +85,17 @@ export const env = createEnv({ NEXT_PUBLIC_STORAGE_DOMAIN: z.string().optional(), NEXT_PUBLIC_ALLOW_CREDENTIALS: z .string() - .refine((s) => s.toLowerCase() === "true" || s.toLowerCase() === "false") + .transform((s) => (s === "" ? undefined : s)) + .refine( + (s) => !s || s.toLowerCase() === "true" || s.toLowerCase() === "false", + ) .optional(), NEXT_PUBLIC_DISABLE_SIGN_UP: z .string() - .refine((s) => s.toLowerCase() === "true" || s.toLowerCase() === "false") + .transform((s) => (s === "" ? undefined : s)) + .refine( + (s) => !s || s.toLowerCase() === "true" || s.toLowerCase() === "false", + ) .optional(), }, /**