From 534113b303a9638d9a4b0f49008003d0f3b51e77 Mon Sep 17 00:00:00 2001 From: Elian Doran Date: Wed, 3 Sep 2025 21:09:56 +0300 Subject: [PATCH] fix(dx/share): ckcontent for share theme not preserved --- apps/server/scripts/build.ts | 1 + apps/server/src/services/export/zip.ts | 9 ++++++--- 2 files changed, 7 insertions(+), 3 deletions(-) diff --git a/apps/server/scripts/build.ts b/apps/server/scripts/build.ts index 8d62921ac..84862d060 100644 --- a/apps/server/scripts/build.ts +++ b/apps/server/scripts/build.ts @@ -12,6 +12,7 @@ async function main() { // Copy node modules dependencies build.copyNodeModules([ "better-sqlite3", "bindings", "file-uri-to-path" ]); build.copy("/node_modules/jsdom/lib/jsdom/living/xhr/xhr-sync-worker.js", "xhr-sync-worker.js"); + build.copy("/node_modules/ckeditor5/dist/ckeditor5-content.css", "ckeditor5-content.css"); // Integrate the client. build.triggerBuildAndCopyTo("apps/client", "public/"); diff --git a/apps/server/src/services/export/zip.ts b/apps/server/src/services/export/zip.ts index 9d3e73d25..91d01c8c7 100644 --- a/apps/server/src/services/export/zip.ts +++ b/apps/server/src/services/export/zip.ts @@ -6,7 +6,7 @@ import path from "path"; import mimeTypes from "mime-types"; import mdService from "./markdown.js"; import packageInfo from "../../../package.json" with { type: "json" }; -import { getContentDisposition, escapeHtml, getResourceDir } from "../utils.js"; +import { getContentDisposition, escapeHtml, getResourceDir, isDev } from "../utils.js"; import protectedSessionService from "../protected_session.js"; import sanitize from "sanitize-filename"; import fs from "fs"; @@ -21,7 +21,6 @@ import type AttributeMeta from "../meta/attribute_meta.js"; import type BBranch from "../../becca/entities/bbranch.js"; import type { Response } from "express"; import type { NoteMetaFile } from "../meta/note_meta.js"; -import cssContent from "@triliumnext/ckeditor5/content.css"; type RewriteLinksFn = (content: string, noteMeta: NoteMeta) => string; @@ -515,7 +514,11 @@ ${markdownContent}`; return; } - archive.append(cssContent, { name: cssMeta.dataFileName }); + const cssFile = isDev + ? path.join(__dirname, "../../../../../node_modules/ckeditor5/dist/ckeditor5-content.css") + : path.join(getResourceDir(), "ckeditor5-content.css"); + + archive.append(fs.readFileSync(cssFile, "utf-8"), { name: cssMeta.dataFileName }); } try {