mirror of
https://github.com/hugo-fixit/FixIt.git
synced 2026-08-24 07:18:57 +00:00
8af8e806d7
* refactor(assets): integrate UnoCSS for utility classes - Add UnoCSS with presetWind3 as pre-built CSS (assets/css/unocss.css) - Add uno.config.ts with theme breakpoints, colors, safelist, and blocklist - Replace SCSS utility classes with UnoCSS atomic classes: - d-none → hidden - d-none-desktop → sm:hidden - d-none-mobile → max-sm:hidden - order-* (safelist) - variant-numeric → tabular-nums lining-nums - Rename .blur to .is-blur to avoid UnoCSS conflict - Add @unocss-skip comments for SVG path elements to prevent false positives - Remove redundant _utilities.scss ($orders map) and simplify _common.scss - Update documentation (CLAUDE.md, CONTRIBUTING.md, copilot-instructions.md) * refactor(assets): replace 404/offline SCSS with UnoCSS atomic classes - Replace _404.scss styles with atomic classes on template elements - Replace _offline.scss styles with atomic classes on template elements - Keep selectors (id/class) as user customization hooks - Delete assets/scss/pages/_404.scss and _offline.scss * refactor(assets): simplify SCSS with UnoCSS atomic classes - Replace _bilibili.scss with atomic classes (relative, aspect-video, inset-0) - Replace _version.scss with atomic classes (whitespace-nowrap, align-text-bottom) - Replace _noscript-warning.scss with atomic classes (bg-danger, fixed, z-200) - Add semantic z-index shortcuts (z-hide, z-auto, z-base, z-loading, z-sticky, z-fixed) - Add h1-h6 to UnoCSS blocklist to prevent false positives - Use Source path for UnoCSS CSS loading to enable Hugo minify * chore(assets): minor SCSS and template cleanup * fix(assets): add secondary color to UnoCSS theme config text-secondary was broken because the secondary color mapping was missing. * feat(assets): add UnoCSS presetIcons support and z-index shortcuts - Add presetIcons preset with empty collections (ready for custom icon sets) - Add @iconify/json and @iconify/utils devDependencies - Add semantic z-index shortcuts (z-hide, z-auto, z-base, z-loading, z-sticky, z-fixed) - Add secondary color to UnoCSS theme config * refactor(assets): replace SVG icons with UnoCSS presetIcons - Add Lucide and Octicons icon collections to presetIcons config - Replace arrow-up/down and enter-key SVGs with Lucide icons - Replace alert icons (info, light-bulb, report, alert, stop) with Octicons - Delete replaced SVG files from assets/images/icons/ - Keep custom SVGs (csdn, plume, rootme) * refactor(layouts): redesign 404 and offline pages with UnoCSS - Replace translate-y-[30vh] with self-stretch flex centering below header - Remove arbitrary values (text-[3.6rem], text-[1.8rem], etc.) - Restore @page print styles in _common.scss - Simplify offline page layout (icon + title + text) - Fix hardcoded #57606a → text-secondary
55 lines
1.9 KiB
HTML
55 lines
1.9 KiB
HTML
{{- /*
|
|
CSS Partial - Base and page-specific CSS loading
|
|
|
|
Loads the main stylesheet (every page) and conditionally loads
|
|
page-specific CSS based on .Kind, .Layout, and .RelPermalink.
|
|
|
|
Called from: base/head/index.html
|
|
*/ -}}
|
|
|
|
{{- $scssVars := partialCached "function/scss-vars.html" . -}}
|
|
{{- $fingerprint := .Site.Store.Get "fingerprint" -}}
|
|
|
|
{{- /* UnoCSS utility classes (pre-built) */ -}}
|
|
{{- dict "Source" "css/unocss.css" "Minify" hugo.IsProduction "Fingerprint" $fingerprint | partial "plugin/style.html" -}}
|
|
|
|
{{- /* Main CSS */ -}}
|
|
{{- $mainCSS := dict
|
|
"Resource" (resources.Get "scss/main.scss")
|
|
"ToCSS" (dict "vars" $scssVars)
|
|
"Fingerprint" $fingerprint
|
|
| partial "function/to-css.html"
|
|
-}}
|
|
{{- .Site.Store.Set "mainCSS" $mainCSS -}}
|
|
{{- dict "Resource" $mainCSS | partial "plugin/style.html" -}}
|
|
|
|
{{- /* Page-specific CSS */ -}}
|
|
{{- $pageCSSPath := "" -}}
|
|
{{- if eq .Kind "home" -}}
|
|
{{- if in .RelPermalink "archives" -}}
|
|
{{- $pageCSSPath = "scss/archives.scss" -}}
|
|
{{- else if in .RelPermalink "link" -}}
|
|
{{- $pageCSSPath = "scss/link.scss" -}}
|
|
{{- else -}}
|
|
{{- $pageCSSPath = "scss/home.scss" -}}
|
|
{{- end -}}
|
|
{{- else if eq .Kind "page" -}}
|
|
{{- if eq .Layout "search" -}}
|
|
{{- $pageCSSPath = "scss/search.scss" -}}
|
|
{{- else if eq .Layout "friends" -}}
|
|
{{- $pageCSSPath = "scss/friends.scss" -}}
|
|
{{- else if eq .Type "posts" -}}
|
|
{{- $pageCSSPath = "scss/posts.scss" -}}
|
|
{{- end -}}
|
|
{{- else if in (slice "section" "taxonomy" "term") .Kind -}}
|
|
{{- $pageCSSPath = "scss/archives.scss" -}}
|
|
{{- end -}}
|
|
{{- with $pageCSSPath -}}
|
|
{{- dict "Source" . "ToCSS" (dict "vars" $scssVars) "Fingerprint" $fingerprint | partial "plugin/style.html" -}}
|
|
{{- end -}}
|
|
|
|
{{- /* Custom CSS (highest priority) */ -}}
|
|
{{- with resources.Get "scss/custom.scss" -}}
|
|
{{- dict "Source" "scss/custom.scss" "ToCSS" (dict "vars" $scssVars) "Fingerprint" $fingerprint | partial "plugin/style.html" -}}
|
|
{{- end -}}
|