Changeset d9c5eb8 in Klonkt for src/services/OgImageService.js
- Timestamp:
- 06/30/2026 10:17:48 PM (2 months ago)
- Branches:
- main
- Children:
- f3663e5
- Parents:
- e3a5aed
- File:
-
- 1 edited
-
src/services/OgImageService.js (modified) (3 diffs)
Legend:
- Unmodified
- Added
- Removed
-
src/services/OgImageService.js
re3a5aed rd9c5eb8 43 43 function esc(s) { return String(s == null ? '' : s).replace(/[<>&]/g, (c) => ({ '<': '<', '>': '>', '&': '&' }[c])); } 44 44 45 function buildSvg(site, palette, accent) { 46 const pal = (ThemeService.PALETTES[palette] || ThemeService.PALETTES.klonkt).dark; 45 function buildSvg(site, palette, accent, theme) { 46 const _p = ThemeService.PALETTES[palette] || ThemeService.PALETTES.klonkt; 47 const pal = _p[theme] || _p.dark; 47 48 const paper = pal.paper, ink = pal.ink; 48 49 const paper2 = mix(paper, ink, 0.08); … … 89 90 90 91 const palette = ThemeService.PALETTES[site.palette] ? site.palette : 'klonkt'; 91 const accent = site.accent || (ThemeService.PALETTES[palette] || ThemeService.PALETTES.klonkt).dark.accent; 92 // Follow the site's "default theme for new visitors" (theme_override): a light card when the site 93 // is set to Light, otherwise dark (an OG image is static, so Auto/Dark → dark). 94 const theme = site.theme_override === 'light' ? 'light' : 'dark'; 95 const accent = site.accent || ((ThemeService.PALETTES[palette] || ThemeService.PALETTES.klonkt)[theme] || ThemeService.PALETTES.klonkt.dark).accent; 92 96 const key = crypto.createHash('sha1') 93 .update([TEMPLATE_VERSION, site.slug, palette, accent, site.title || '', site.tagline || site.description || ''].join('\x1f'))97 .update([TEMPLATE_VERSION, site.slug, palette, accent, theme, site.title || '', site.tagline || site.description || ''].join('\x1f')) 94 98 .digest('hex').slice(0, 16); 95 99 const file = path.join(CACHE_DIR, key + '.png'); … … 98 102 99 103 try { 100 const svg = buildSvg(site, palette, accent );104 const svg = buildSvg(site, palette, accent, theme); 101 105 const png = new Resvg(svg, { 102 106 font: { fontFiles: [FONT], loadSystemFonts: false },
Note:
See TracChangeset
for help on using the changeset viewer.
![(please configure the [header_logo] section in trac.ini)](/chrome/site/your_project_logo.png)