From e0a99de6dad08907e8da5763ca899b39f6c949e6 Mon Sep 17 00:00:00 2001 From: George Cushen Date: Mon, 1 Dec 2025 05:40:49 +0000 Subject: [PATCH] fix: theming Unified terminology - All 11 theme packs now use surfaces: instead of ui (see prev commit) Fixed empty value overrides - Empty strings ("") no longer override theme colors Proper checking - Only non-empty values are applied --- .../assets/css/components/cover.css | 8 +- .../_partials/functions/theme_generator.html | 90 +++++++++++++++++-- .../academic-cv/config/_default/params.yaml | 2 +- 3 files changed, 89 insertions(+), 11 deletions(-) diff --git a/modules/blox-tailwind/assets/css/components/cover.css b/modules/blox-tailwind/assets/css/components/cover.css index 318353dc..19539d36 100644 --- a/modules/blox-tailwind/assets/css/components/cover.css +++ b/modules/blox-tailwind/assets/css/components/cover.css @@ -11,7 +11,7 @@ overflow: visible; /* Add margin for overlapping icon */ margin-bottom: 2.5rem; - + /* Responsive height adjustments for mobile */ @media (max-width: 768px) { height: 240px !important; @@ -113,7 +113,7 @@ max-height: 200px !important; page-break-after: avoid; } - + .article-cover-fade, .article-cover-icon { @apply hidden; @@ -128,7 +128,7 @@ animation: none !important; transition: none !important; } - + .article-cover.parallax img { transform: none !important; } @@ -139,7 +139,7 @@ .article-cover-icon { @apply border-2 border-current; } - + .article-cover .cover-caption { @apply bg-black text-white; } diff --git a/modules/blox-tailwind/layouts/_partials/functions/theme_generator.html b/modules/blox-tailwind/layouts/_partials/functions/theme_generator.html index a13a7234..ada367c2 100644 --- a/modules/blox-tailwind/layouts/_partials/functions/theme_generator.html +++ b/modules/blox-tailwind/layouts/_partials/functions/theme_generator.html @@ -74,11 +74,50 @@ {{ $light_base = merge $light_base (dict "colors" $light_colors) }} - {{/* Apply surface overrides */}} + {{/* Apply surface overrides (only non-empty values) */}} {{ if $surfaces_overrides }} {{ $light_surfaces := merge (dict) ($light_base.surfaces | default dict) }} - {{ range $key, $value := $surfaces_overrides }} - {{ $light_surfaces = merge $light_surfaces (dict $key $value) }} + {{ with $surfaces_overrides.background }} + {{ if ne . "" }} + {{ $light_surfaces = merge $light_surfaces (dict "background" .) }} + {{ end }} + {{ end }} + {{ with $surfaces_overrides.foreground }} + {{ if ne . "" }} + {{ $light_surfaces = merge $light_surfaces (dict "foreground" .) }} + {{ end }} + {{ end }} + {{ with $surfaces_overrides.header }} + {{ $header := merge (dict) ($light_surfaces.header | default dict) }} + {{ with .background }} + {{ if ne . "" }} + {{ $header = merge $header (dict "background" .) }} + {{ end }} + {{ end }} + {{ with .foreground }} + {{ if ne . "" }} + {{ $header = merge $header (dict "foreground" .) }} + {{ end }} + {{ end }} + {{ if gt (len $header) 0 }} + {{ $light_surfaces = merge $light_surfaces (dict "header" $header) }} + {{ end }} + {{ end }} + {{ with $surfaces_overrides.footer }} + {{ $footer := merge (dict) ($light_surfaces.footer | default dict) }} + {{ with .background }} + {{ if ne . "" }} + {{ $footer = merge $footer (dict "background" .) }} + {{ end }} + {{ end }} + {{ with .foreground }} + {{ if ne . "" }} + {{ $footer = merge $footer (dict "foreground" .) }} + {{ end }} + {{ end }} + {{ if gt (len $footer) 0 }} + {{ $light_surfaces = merge $light_surfaces (dict "footer" $footer) }} + {{ end }} {{ end }} {{ $light_base = merge $light_base (dict "surfaces" $light_surfaces) }} {{ end }} @@ -112,11 +151,50 @@ {{ $dark_base = merge $dark_base (dict "colors" $dark_colors) }} - {{/* Apply surface overrides */}} + {{/* Apply surface overrides (only non-empty values) */}} {{ if $surfaces_overrides }} {{ $dark_surfaces := merge (dict) ($dark_base.surfaces | default dict) }} - {{ range $key, $value := $surfaces_overrides }} - {{ $dark_surfaces = merge $dark_surfaces (dict $key $value) }} + {{ with $surfaces_overrides.background }} + {{ if ne . "" }} + {{ $dark_surfaces = merge $dark_surfaces (dict "background" .) }} + {{ end }} + {{ end }} + {{ with $surfaces_overrides.foreground }} + {{ if ne . "" }} + {{ $dark_surfaces = merge $dark_surfaces (dict "foreground" .) }} + {{ end }} + {{ end }} + {{ with $surfaces_overrides.header }} + {{ $header := merge (dict) ($dark_surfaces.header | default dict) }} + {{ with .background }} + {{ if ne . "" }} + {{ $header = merge $header (dict "background" .) }} + {{ end }} + {{ end }} + {{ with .foreground }} + {{ if ne . "" }} + {{ $header = merge $header (dict "foreground" .) }} + {{ end }} + {{ end }} + {{ if gt (len $header) 0 }} + {{ $dark_surfaces = merge $dark_surfaces (dict "header" $header) }} + {{ end }} + {{ end }} + {{ with $surfaces_overrides.footer }} + {{ $footer := merge (dict) ($dark_surfaces.footer | default dict) }} + {{ with .background }} + {{ if ne . "" }} + {{ $footer = merge $footer (dict "background" .) }} + {{ end }} + {{ end }} + {{ with .foreground }} + {{ if ne . "" }} + {{ $footer = merge $footer (dict "foreground" .) }} + {{ end }} + {{ end }} + {{ if gt (len $footer) 0 }} + {{ $dark_surfaces = merge $dark_surfaces (dict "footer" $footer) }} + {{ end }} {{ end }} {{ $dark_base = merge $dark_base (dict "surfaces" $dark_surfaces) }} {{ end }} diff --git a/templates/academic-cv/config/_default/params.yaml b/templates/academic-cv/config/_default/params.yaml index 428682f2..fa396c76 100644 --- a/templates/academic-cv/config/_default/params.yaml +++ b/templates/academic-cv/config/_default/params.yaml @@ -91,7 +91,7 @@ hugoblox: # Feature toggles search: true theme_toggle: true - theme_picker: false + theme_picker: true language_switcher: true # Call-to-action button cta: