diff --git a/apps/server/src/services/export/zip.ts b/apps/server/src/services/export/zip.ts index 62a1be37e..046b7369c 100644 --- a/apps/server/src/services/export/zip.ts +++ b/apps/server/src/services/export/zip.ts @@ -24,6 +24,7 @@ import type { Response } from "express"; import type { NoteMetaFile } from "../meta/note_meta.js"; //import cssContent from "@triliumnext/ckeditor5/content.css"; import { renderNoteForExport } from "../../share/content_renderer.js"; +import { RESOURCE_DIR } from "../resource_dir.js"; type RewriteLinksFn = (content: string, noteMeta: NoteMeta) => string; @@ -567,6 +568,7 @@ ${markdownContent}`; "boxicons.woff", "boxicons.ttf", "boxicons.svg", + "icon-color.svg" ]; for (const asset of assets) { @@ -655,7 +657,9 @@ function getShareThemeAssets(nameWithExtension: string) { } let path: string | undefined; - if (isDev) { + if (nameWithExtension === "icon-color.svg") { + path = join(RESOURCE_DIR, "images", nameWithExtension); + } else if (isDev) { path = join(getResourceDir(), "..", "..", "client", "dist", "src", nameWithExtension); } diff --git a/apps/server/src/share/content_renderer.ts b/apps/server/src/share/content_renderer.ts index 0a85f17d2..346d9743e 100644 --- a/apps/server/src/share/content_renderer.ts +++ b/apps/server/src/share/content_renderer.ts @@ -72,7 +72,8 @@ export function renderNoteForExport(note: BNote, parentBranch: BBranch, basePath cssToLoad: [ `${basePath}style.css`, `${basePath}boxicons.css` - ] + ], + logoUrl: `${basePath}icon-color.svg` }); } @@ -91,10 +92,14 @@ export function renderNoteContent(note: SNote) { cssToLoad.push(`api/notes/${cssRelation.value}/download`); } + const customLogoId = note.getRelation("shareLogo")?.value; + const logoUrl = customLogoId ? `api/images/${customLogoId}/image.png` : `../${assetUrlFragment}/images/icon-color.svg`; + return renderNoteContentInternal(note, { subRoot, rootNoteId: "_share", - cssToLoad + cssToLoad, + logoUrl }); } @@ -102,6 +107,7 @@ interface RenderArgs { subRoot: Subroot; rootNoteId: string; cssToLoad: string[]; + logoUrl: string; } function renderNoteContentInternal(note: SNote | BNote, renderArgs: RenderArgs) { diff --git a/packages/share-theme/src/templates/page.ejs b/packages/share-theme/src/templates/page.ejs index 820e32ad5..8b4609020 100644 --- a/packages/share-theme/src/templates/page.ejs +++ b/packages/share-theme/src/templates/page.ejs @@ -49,8 +49,6 @@ <% -const customLogoId = subRoot.note.getRelation("shareLogo")?.value; -const logoUrl = customLogoId ? `api/images/${customLogoId}/image.png` : `../${assetUrlFragment}/images/icon-color.svg`; const logoWidth = subRoot.note.getLabelValue("shareLogoWidth") ?? 53; const logoHeight = subRoot.note.getLabelValue("shareLogoHeight") ?? 40; const mobileLogoHeight = logoHeight && logoWidth ? 32 / (logoWidth / logoHeight) : "";