From 61e96f91d0eef3935ff624977c9e295d61305ff4 Mon Sep 17 00:00:00 2001 From: Elian Doran Date: Sun, 28 Dec 2025 01:06:26 +0200 Subject: [PATCH] fix(icon_packs): use right name for boxicons for compatibility --- apps/server/src/routes/index.ts | 2 +- apps/server/src/services/icon_packs.ts | 7 ++++--- 2 files changed, 5 insertions(+), 4 deletions(-) diff --git a/apps/server/src/routes/index.ts b/apps/server/src/routes/index.ts index dd9d52da4..b6ae7bf08 100644 --- a/apps/server/src/routes/index.ts +++ b/apps/server/src/routes/index.ts @@ -65,7 +65,7 @@ function index(req: Request, res: Response) { iconPackCss: iconPacks .map(p => generateCss(p, p.builtin ? `${assetPath}/fonts/${p.fontAttachmentId}.${MIME_TO_EXTENSION_MAPPINGS[p.fontMime]}` - : `api/notes/download/${p.manifestNoteId}`)) + : `api/attachments/download/${p.fontAttachmentId}`)) .filter(Boolean) .join("\n\n"), iconRegistry: generateIconRegistry(iconPacks) diff --git a/apps/server/src/services/icon_packs.ts b/apps/server/src/services/icon_packs.ts index 7db47ff12..956603060 100644 --- a/apps/server/src/services/icon_packs.ts +++ b/apps/server/src/services/icon_packs.ts @@ -128,23 +128,24 @@ export function determineBestFontAttachment(iconPackNote: BNote) { return null; } -export function generateCss({ manifest, fontMime }: ProcessedIconPack, fontUrl: string) { +export function generateCss({ manifest, fontMime, builtin, fontAttachmentId }: ProcessedIconPack, fontUrl: string) { try { const iconDeclarations: string[] = []; for (const [ key, mapping ] of Object.entries(manifest.icons)) { iconDeclarations.push(`.${manifest.prefix}.${key}::before { content: '\\${mapping.glyph.charCodeAt(0).toString(16)}'; }`); } + const fontFamily = builtin ? fontAttachmentId : `trilium-icon-pack-${manifest.prefix}`; return `\ @font-face { - font-family: 'trilium-icon-pack-${manifest.prefix}'; + font-family: '${fontFamily}'; font-weight: normal; font-style: normal; src: url('${fontUrl}') format('${MIME_TO_CSS_FORMAT_MAPPINGS[fontMime]}'); } .${manifest.prefix} { - font-family: 'trilium-icon-pack-${manifest.prefix}' !important; + font-family: '${fontFamily}' !important; font-weight: normal; font-style: normal; font-variant: normal;