From 3ffe192985c3f03de5ceec77d60ef75bdfa6ddc2 Mon Sep 17 00:00:00 2001 From: Sam Becker Date: Wed, 24 Jan 2024 18:57:38 -0600 Subject: [PATCH] Refine domain config environment variables --- src/site/config.ts | 17 ++++++++++++----- 1 file changed, 12 insertions(+), 5 deletions(-) diff --git a/src/site/config.ts b/src/site/config.ts index ced3bf09..9f8f31d8 100644 --- a/src/site/config.ts +++ b/src/site/config.ts @@ -7,16 +7,27 @@ export const SITE_TITLE = process.env.NEXT_PUBLIC_SITE_TITLE || 'Photo Blog'; +const VERCEL_ENV = process.env.NEXT_PUBLIC_VERCEL_ENV; +const VERCEL_DEPLOYMENT_URL = process.env.NEXT_PUBLIC_VERCEL_URL; const VERCEL_BRANCH_URL = process.env.NEXT_PUBLIC_VERCEL_BRANCH_URL; const VERCEL_BRANCH = process.env.NEXT_PUBLIC_VERCEL_GIT_COMMIT_REF; -const VERCEL_URL = VERCEL_BRANCH_URL && VERCEL_BRANCH +const VERCEL_PROJECT_URL = VERCEL_BRANCH_URL && VERCEL_BRANCH ? `${VERCEL_BRANCH_URL.split(`-git-${VERCEL_BRANCH}-`)[0]}.vercel.app` : undefined; +const VERCEL_URL = VERCEL_PROJECT_URL || VERCEL_DEPLOYMENT_URL; +// User-facing domain and potential site title const SITE_DOMAIN = process.env.NEXT_PUBLIC_SITE_DOMAIN || VERCEL_URL; +// Used for absolute references like OG images +export const BASE_URL = makeUrlAbsolute(VERCEL_ENV === 'production' + ? SITE_DOMAIN + : VERCEL_ENV === 'preview' + ? VERCEL_URL + : 'http://localhost:3000')?.toLocaleLowerCase(); + const SITE_DOMAIN_SHORT = shortenUrl(SITE_DOMAIN); export const SITE_DOMAIN_OR_TITLE = @@ -27,10 +38,6 @@ export const SITE_DESCRIPTION = process.env.NEXT_PUBLIC_SITE_DESCRIPTION || SITE_DOMAIN; -export const BASE_URL = process.env.NODE_ENV === 'production' - ? makeUrlAbsolute(SITE_DOMAIN)?.toLowerCase() - : 'http://localhost:3000'; - // STORAGE: VERCEL BLOB export const HAS_VERCEL_BLOB_STORAGE = (process.env.BLOB_READ_WRITE_TOKEN ?? '').length > 0;