diff --git a/src/admin/AdminAppConfigurationClient.tsx b/src/admin/AdminAppConfigurationClient.tsx index 88905398..ddcda59f 100644 --- a/src/admin/AdminAppConfigurationClient.tsx +++ b/src/admin/AdminAppConfigurationClient.tsx @@ -30,6 +30,7 @@ import AdminLink from './AdminLink'; import ScoreCardContainer from '@/components/ScoreCardContainer'; import { DEFAULT_CATEGORY_KEYS, getHiddenCategories } from '@/category'; import { AI_AUTO_GENERATED_FIELDS_ALL } from '@/photo/ai'; +import clsx from 'clsx/lite'; export default function AdminAppConfigurationClient({ // Storage @@ -49,11 +50,17 @@ export default function AdminAppConfigurationClient({ // Content locale, hasLocale, + domain, hasDomain, - hasNavTitle, - hasNavCaption, + metaTitle, isMetaTitleConfigured, + metaDescription, isMetaDescriptionConfigured, + navTitle, + hasNavTitle, + navCaption, + hasNavCaption, + pageAbout, hasPageAbout, // AI hasOpenaiBaseUrl, @@ -119,6 +126,15 @@ export default function AdminAppConfigurationClient({ simplifiedView?: boolean isAnalyzingConfiguration?: boolean }) { + const renderContent = (content?: ReactNode) => content + ?
+ {content} +
+ : null; + const renderEnvVars = (variables: string[]) =>
{variables.map(variable => @@ -294,10 +310,11 @@ export default function AdminAppConfigurationClient({ icon={} > + {renderContent(locale)} Store in environment variable (check README for {' '} @@ -314,6 +331,7 @@ export default function AdminAppConfigurationClient({ title="Configure domain" status={hasDomain} > + {renderContent(domain)} Store in environment variable (used in explicit share urls, seen in nav if no title is defined): {renderEnvVars(['NEXT_PUBLIC_DOMAIN'])} @@ -323,6 +341,7 @@ export default function AdminAppConfigurationClient({ status={isMetaTitleConfigured} showWarning > + {renderContent(metaTitle)} Store in environment variable (seen in search results and browser tab): {renderEnvVars(['NEXT_PUBLIC_META_TITLE'])} @@ -333,6 +352,7 @@ export default function AdminAppConfigurationClient({ status={isMetaDescriptionConfigured} optional > + {renderContent(metaDescription)} Store in environment variable (seen in search results): {renderEnvVars(['NEXT_PUBLIC_META_DESCRIPTION'])} @@ -342,6 +362,7 @@ export default function AdminAppConfigurationClient({ status={hasNavTitle} optional > + {hasNavTitle && renderContent(navTitle)} Store in environment variable (replaces domain in nav): {renderEnvVars(['NEXT_PUBLIC_NAV_TITLE'])} @@ -350,6 +371,7 @@ export default function AdminAppConfigurationClient({ status={hasNavCaption} optional > + {hasNavCaption && renderContent(navCaption)} Store in environment variable (seen in nav, under title): {renderEnvVars(['NEXT_PUBLIC_NAV_CAPTION'])} @@ -358,6 +380,7 @@ export default function AdminAppConfigurationClient({ status={hasPageAbout} optional > + {hasPageAbout && renderContent(pageAbout)} Store in environment variable (seen in sidebar): {renderEnvVars(['NEXT_PUBLIC_PAGE_ABOUT'])} diff --git a/src/app/config.ts b/src/app/config.ts index 68c08e32..80f7c30b 100644 --- a/src/app/config.ts +++ b/src/app/config.ts @@ -350,15 +350,21 @@ export const APP_CONFIGURATION = { // Content locale: APP_LOCALE, hasLocale: Boolean(process.env.NEXT_PUBLIC_LOCALE), + domain: SITE_DOMAIN_SHORT, hasDomain: Boolean( process.env.NEXT_PUBLIC_DOMAIN || // Legacy environment variable process.env.NEXT_PUBLIC_SITE_DOMAIN, ), - hasNavTitle: Boolean(NAV_TITLE), - hasNavCaption: Boolean(NAV_CAPTION), + metaTitle: META_TITLE, isMetaTitleConfigured: IS_META_TITLE_CONFIGURED, + metaDescription: META_DESCRIPTION, isMetaDescriptionConfigured: IS_META_DESCRIPTION_CONFIGURED, + navTitle: NAV_TITLE, + hasNavTitle: Boolean(NAV_TITLE), + navCaption: NAV_CAPTION, + hasNavCaption: Boolean(NAV_CAPTION), + pageAbout: PAGE_ABOUT, hasPageAbout: Boolean(process.env.NEXT_PUBLIC_SITE_ABOUT), // AI hasOpenaiBaseUrl: Boolean(OPENAI_BASE_URL),