@bytechain.cn/colamd-themes 0.5.0 → 0.5.2
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +27 -13
- package/cordis.patch.yml +9 -0
- package/dist/cli.js +3 -3
- package/dist/cli.js.map +1 -1
- package/dist/dsh-plugin.d.ts +44 -0
- package/dist/dsh-plugin.js +72 -0
- package/dist/dsh-plugin.js.map +1 -0
- package/dist/generator.d.ts +1 -1
- package/dist/generator.js +2 -2
- package/dist/generator.js.map +1 -1
- package/dist/index.d.ts +1 -0
- package/dist/index.js +2 -0
- package/dist/index.js.map +1 -1
- package/dist/models.d.ts +1 -1
- package/dist/models.js +1 -1
- package/dist/models.js.map +1 -1
- package/dist/renderer.d.ts +6 -5
- package/dist/renderer.js +19 -38
- package/dist/renderer.js.map +1 -1
- package/dist/theme-store.js +4 -4
- package/dist/theme-store.js.map +1 -1
- package/dist/validators.d.ts +2 -2
- package/dist/validators.js +4 -4
- package/dist/validators.js.map +1 -1
- package/package.json +22 -2
- package/skills/build-skills.sh +5 -5
- package/skills/colamd-themes/SKILL.md +5 -5
- package/.claude/skills/colamd-themes-preview.skill.md +0 -333
- package/.claude/skills/colamd-themes.skill.md +0 -10
- package/.dsh/skills/colamd-themes/SKILL.md +0 -14
- package/.github/supported-topics.yml +0 -17
- package/.hermes/skills/tools/colamd-themes/SKILL.md +0 -14
- package/.openclaw/skills/colamd-themes/SKILL.md +0 -21
- package/.opencode/skills/colamd-themes/SKILL.md +0 -17
- package/.trae/rules/colamd-themes.md +0 -5
- package/CHANGELOG.md +0 -318
- package/DSH_SUPPORT_SUMMARY.md +0 -87
- package/README_CN.md +0 -412
- package/RELEASENOTE.md +0 -541
- package/bytechain.cn-colamd-themes-0.5.0.tgz +0 -0
- package/mcp-server/dist/index.d.ts +0 -13
- package/mcp-server/dist/index.d.ts.map +0 -1
- package/mcp-server/dist/index.js.map +0 -1
- package/mcp-server/package-lock.json +0 -1759
- package/mcp-server/package.json +0 -24
- package/mcp-server/src/index.ts +0 -0
- package/mcp-server/tsconfig.json +0 -19
- package/src/cli.ts +0 -474
- package/src/color-systems.ts +0 -289
- package/src/color-utils.ts +0 -137
- package/src/contrast.ts +0 -66
- package/src/docx-style-paradigm.ts +0 -811
- package/src/export-cli.ts +0 -356
- package/src/extractors/base.ts +0 -8
- package/src/extractors/docx-extractor.ts +0 -417
- package/src/extractors/pdf-extractor.ts +0 -533
- package/src/extractors/url-extractor.ts +0 -846
- package/src/generator.ts +0 -197
- package/src/index.ts +0 -29
- package/src/models.ts +0 -212
- package/src/renderer.ts +0 -332
- package/src/templates/template.css +0 -220
- package/src/templates/theme-paradigm.md +0 -530
- package/src/templates/theme-template.hbs +0 -256
- package/src/theme-store.ts +0 -185
- package/src/types/pdf-parse.d.ts +0 -12
- package/src/utils/cli-utils.ts +0 -84
- package/src/utils/document-paradigm.ts +0 -118
- package/src/validators.ts +0 -298
- package/themes-preview/demo-content.md +0 -187
- package/tsconfig.json +0 -18
package/dist/renderer.js
CHANGED
|
@@ -1,17 +1,18 @@
|
|
|
1
1
|
/**
|
|
2
2
|
* Puppeteer-based rendering engine for ColaMD HTML/PDF export.
|
|
3
3
|
*
|
|
4
|
-
* Uses @bytechain.cn/colamd
|
|
5
|
-
*
|
|
6
|
-
* HTML or PDF. Theme CSS targets the
|
|
7
|
-
*
|
|
4
|
+
* Uses the @bytechain.cn/colamd 2.x library build (dist/lib/colamd-renderer.js +
|
|
5
|
+
* colamd.css, requires ≥2.7.8-rc.2) to create a headless editor, apply themes,
|
|
6
|
+
* render mermaid/math, and export standalone HTML or PDF. Theme CSS targets the
|
|
7
|
+
* ColaMD 2.7.8-rc.2 contract (machine-readable as themes/contract.json in the
|
|
8
|
+
* npm package) and is consumed directly as `:root` declarations.
|
|
8
9
|
*
|
|
9
10
|
* Architecture:
|
|
10
11
|
* Local HTTP server (serves renderer.js + page HTML)
|
|
11
12
|
* → Puppeteer page (same-origin, no CORS)
|
|
12
13
|
* → createColaMDEditor()
|
|
13
14
|
* → applyTheme() + setMarkdown() + ensureAllPluginsRendered()
|
|
14
|
-
* → buildExportHTML() / page.pdf()
|
|
15
|
+
* → buildExportHTML({ title }) / page.pdf()
|
|
15
16
|
*/
|
|
16
17
|
import puppeteer from "puppeteer";
|
|
17
18
|
import { createServer } from "node:http";
|
|
@@ -28,44 +29,28 @@ function findRendererPath() {
|
|
|
28
29
|
if (existsSync(p))
|
|
29
30
|
return p;
|
|
30
31
|
}
|
|
31
|
-
// Detect
|
|
32
|
-
//
|
|
32
|
+
// Detect a 2.x distribution without the library entry (e.g. the 2.7.7 app
|
|
33
|
+
// package, or a desktop-only build): give an actionable error.
|
|
33
34
|
for (const base of candidates.map((p) => resolve(p, "../../.."))) {
|
|
34
35
|
const pkgJson = join(base, "package.json");
|
|
35
36
|
if (existsSync(pkgJson)) {
|
|
36
37
|
try {
|
|
37
38
|
const version = JSON.parse(readFileSync(pkgJson, "utf-8")).version;
|
|
38
39
|
if (version.startsWith("2.")) {
|
|
39
|
-
throw new Error(`@bytechain.cn/colamd ${version}
|
|
40
|
-
"
|
|
40
|
+
throw new Error(`@bytechain.cn/colamd ${version} 不含 colamd-renderer.js 库入口(2.7.8 起恢复提供)。` +
|
|
41
|
+
"请升级: npm install @bytechain.cn/colamd@^2.7.8-rc.2");
|
|
41
42
|
}
|
|
42
43
|
}
|
|
43
44
|
catch (e) {
|
|
44
|
-
if (e instanceof Error && e.message.includes("
|
|
45
|
+
if (e instanceof Error && e.message.includes("库入口"))
|
|
45
46
|
throw e;
|
|
46
47
|
}
|
|
47
48
|
}
|
|
48
49
|
}
|
|
49
50
|
throw new Error("Cannot find @bytechain.cn/colamd renderer. " +
|
|
50
|
-
"Install it: npm install @bytechain.cn/colamd@^
|
|
51
|
+
"Install it: npm install @bytechain.cn/colamd@^2.7.8-rc.1");
|
|
51
52
|
}
|
|
52
53
|
// ── Local HTTP server ──
|
|
53
|
-
/**
|
|
54
|
-
* Bridge for the 1.5.x renderer: its base CSS declares theme variables on
|
|
55
|
-
* `body` (element-level), which overrides `:root` inheritance regardless of
|
|
56
|
-
* style order. Mirror the theme's `:root` declarations onto `body` so exports
|
|
57
|
-
* carry the 2.7.7 palette. Theme files themselves stay `:root`-only (2.7.7
|
|
58
|
-
* contract); this shim lives only in the export pipeline.
|
|
59
|
-
*/
|
|
60
|
-
function bridgeLegacyBodyVars(css) {
|
|
61
|
-
const rootMatch = css.match(/:root\s*\{([^}]*)\}/);
|
|
62
|
-
if (!rootMatch)
|
|
63
|
-
return css;
|
|
64
|
-
return (css +
|
|
65
|
-
"\n/* 1.5.x bridge: body-level variables override the base defaults */\nbody {\n" +
|
|
66
|
-
rootMatch[1] +
|
|
67
|
-
"}\n");
|
|
68
|
-
}
|
|
69
54
|
const SHELL_HTML = `<!DOCTYPE html>
|
|
70
55
|
<html><head>
|
|
71
56
|
<meta charset="utf-8">
|
|
@@ -158,11 +143,11 @@ export class ColamdRenderer {
|
|
|
158
143
|
if (!this.ready || !this.page)
|
|
159
144
|
await this.init();
|
|
160
145
|
const page = this.page;
|
|
161
|
-
// Apply theme
|
|
146
|
+
// Apply theme — the 2.x renderer consumes :root contract CSS directly
|
|
162
147
|
if (input.themeName) {
|
|
163
148
|
await page.evaluate((name, css) => {
|
|
164
149
|
window.__colamdHandle.applyTheme(name, css || undefined);
|
|
165
|
-
}, input.themeName, input.customCSS
|
|
150
|
+
}, input.themeName, input.customCSS || undefined);
|
|
166
151
|
}
|
|
167
152
|
// Set markdown content
|
|
168
153
|
await page.evaluate((md) => {
|
|
@@ -174,15 +159,11 @@ export class ColamdRenderer {
|
|
|
174
159
|
});
|
|
175
160
|
// Additional settle time for complex diagrams
|
|
176
161
|
await new Promise((r) => setTimeout(r, 500));
|
|
177
|
-
// Build export HTML
|
|
178
|
-
const html = await page.evaluate(() => {
|
|
179
|
-
return window.__colamdHandle.buildExportHTML();
|
|
180
|
-
});
|
|
181
|
-
|
|
182
|
-
const finalHtml = input.title
|
|
183
|
-
? html.replace(/<title>[^<]*<\/title>/, `<title>${input.title}</title>`)
|
|
184
|
-
: html;
|
|
185
|
-
return { html: finalHtml };
|
|
162
|
+
// Build export HTML (2.x API: title goes through the options object)
|
|
163
|
+
const html = await page.evaluate((title) => {
|
|
164
|
+
return window.__colamdHandle.buildExportHTML({ title });
|
|
165
|
+
}, input.title);
|
|
166
|
+
return { html };
|
|
186
167
|
}
|
|
187
168
|
/**
|
|
188
169
|
* Render markdown and export as PDF.
|
package/dist/renderer.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"renderer.js","sourceRoot":"","sources":["../src/renderer.ts"],"names":[],"mappings":"AAAA
|
|
1
|
+
{"version":3,"file":"renderer.js","sourceRoot":"","sources":["../src/renderer.ts"],"names":[],"mappings":"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"}
|
package/dist/theme-store.js
CHANGED
|
@@ -121,9 +121,9 @@ export async function resolveTheme(name) {
|
|
|
121
121
|
}
|
|
122
122
|
// Check if it's a built-in theme
|
|
123
123
|
if (BUILTIN_THEMES.includes(resolved)) {
|
|
124
|
-
// Prefer our 2.7.
|
|
125
|
-
//
|
|
126
|
-
// palette
|
|
124
|
+
// Prefer our 2.7.8-rc.1 contract CSS when a local theme file exists — our
|
|
125
|
+
// variant of a built-in name (e.g. elegant) wins over the renderer's own
|
|
126
|
+
// palette. applyTheme(name, css) takes over completely.
|
|
127
127
|
for (const base of [process.cwd(), join(dirname(fileURLToPath(import.meta.url)), "..")]) {
|
|
128
128
|
const cssPath = join(base, "themes", `${resolved}.css`);
|
|
129
129
|
try {
|
|
@@ -131,7 +131,7 @@ export async function resolveTheme(name) {
|
|
|
131
131
|
return { themeName: resolved, customCSS: await readFile(cssPath, "utf-8") };
|
|
132
132
|
}
|
|
133
133
|
catch {
|
|
134
|
-
// No local
|
|
134
|
+
// No local contract CSS file for this built-in — fall back to the renderer's own.
|
|
135
135
|
}
|
|
136
136
|
}
|
|
137
137
|
return { themeName: resolved };
|
package/dist/theme-store.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"theme-store.js","sourceRoot":"","sources":["../src/theme-store.ts"],"names":[],"mappings":"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
|
|
1
|
+
{"version":3,"file":"theme-store.js","sourceRoot":"","sources":["../src/theme-store.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAEH,OAAO,EAAE,KAAK,EAAE,QAAQ,EAAE,SAAS,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,kBAAkB,CAAC;AAC9E,OAAO,EAAE,QAAQ,EAAU,MAAM,SAAS,CAAC;AAC3C,OAAO,EAAE,IAAI,EAAE,QAAQ,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;AACpD,OAAO,EAAE,aAAa,EAAE,MAAM,UAAU,CAAC;AACzC,OAAO,EAAE,OAAO,EAAE,MAAM,SAAS,CAAC;AAElC,MAAM,UAAU,GAAG,IAAI,CAAC,OAAO,EAAE,EAAE,gBAAgB,CAAC,CAAC;AACrD,MAAM,WAAW,GAAG,IAAI,CAAC,UAAU,EAAE,aAAa,CAAC,CAAC;AAEpD,iEAAiE;AACjE,MAAM,YAAY,GAAG,IAAI,GAAG,IAAI,CAAC;AAEjC,uDAAuD;AACvD,MAAM,CAAC,MAAM,cAAc,GAAG,CAAC,OAAO,EAAE,MAAM,EAAE,SAAS,EAAE,WAAW,CAAU,CAAC;AAUjF,KAAK,UAAU,UAAU;IACvB,IAAI,CAAC;QACH,MAAM,MAAM,CAAC,WAAW,CAAC,CAAC;QAC1B,MAAM,IAAI,GAAG,MAAM,QAAQ,CAAC,WAAW,EAAE,OAAO,CAAC,CAAC;QAClD,OAAO,IAAI,CAAC,KAAK,CAAC,IAAI,CAAgB,CAAC;IACzC,CAAC;IAAC,MAAM,CAAC;QACP,OAAO,EAAE,YAAY,EAAE,SAAS,EAAE,MAAM,EAAE,EAAE,EAAE,CAAC;IACjD,CAAC;AACH,CAAC;AAED,KAAK,UAAU,WAAW,CAAC,MAAmB;IAC5C,IAAI,CAAC;QACH,MAAM,MAAM,CAAC,UAAU,CAAC,CAAC;IAC3B,CAAC;IAAC,MAAM,CAAC;QACP,MAAM,KAAK,CAAC,UAAU,EAAE,EAAE,SAAS,EAAE,IAAI,EAAE,CAAC,CAAC;IAC/C,CAAC;IACD,MAAM,OAAO,GAAG,GAAG,WAAW,IAAI,OAAO,CAAC,GAAG,IAAI,IAAI,CAAC,GAAG,EAAE,MAAM,CAAC;IAClE,MAAM,SAAS,CAAC,OAAO,EAAE,IAAI,CAAC,SAAS,CAAC,MAAM,EAAE,IAAI,EAAE,CAAC,CAAC,EAAE,OAAO,CAAC,CAAC;IACnE,MAAM,MAAM,CAAC,OAAO,EAAE,WAAW,CAAC,CAAC;AACrC,CAAC;AAED,2BAA2B;AAC3B,MAAM,CAAC,KAAK,UAAU,SAAS;IAC7B,OAAO,UAAU,EAAE,CAAC;AACtB,CAAC;AAED,uEAAuE;AACvE,MAAM,CAAC,KAAK,UAAU,eAAe,CAAC,IAAY;IAChD,MAAM,MAAM,GAAG,MAAM,UAAU,EAAE,CAAC;IAClC,MAAM,CAAC,YAAY,GAAG,IAAI,CAAC;IAC3B,MAAM,WAAW,CAAC,MAAM,CAAC,CAAC;AAC5B,CAAC;AAED;;;;GAIG;AACH,MAAM,CAAC,KAAK,UAAU,aAAa,CAAC,IAAY,EAAE,OAAe;IAC/D,MAAM,MAAM,GAAG,MAAM,UAAU,EAAE,CAAC;IAClC,MAAM,CAAC,MAAM,CAAC,IAAI,CAAC,GAAG,OAAO,CAAC;IAC9B,MAAM,WAAW,CAAC,MAAM,CAAC,CAAC;AAC5B,CAAC;AAED,wCAAwC;AACxC,MAAM,CAAC,KAAK,UAAU,eAAe,CAAC,IAAY;IAChD,MAAM,MAAM,GAAG,MAAM,UAAU,EAAE,CAAC;IAClC,IAAI,CAAC,CAAC,IAAI,IAAI,MAAM,CAAC,MAAM,CAAC;QAAE,OAAO,KAAK,CAAC;IAC3C,OAAO,MAAM,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC;IAC3B,MAAM,WAAW,CAAC,MAAM,CAAC,CAAC;IAC1B,OAAO,IAAI,CAAC;AACd,CAAC;AAED;;;GAGG;AACH,SAAS,YAAY,CAAC,IAAY;IAChC,OAAO,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAC;SAC1B,OAAO,CAAC,iBAAiB,EAAE,GAAG,CAAC;SAC/B,OAAO,CAAC,KAAK,EAAE,GAAG,CAAC;SACnB,KAAK,CAAC,CAAC,EAAE,EAAE,CAAC,IAAI,QAAQ,CAAC;AAC9B,CAAC;AAED;;;GAGG;AACH,KAAK,UAAU,eAAe,CAAC,QAAgB;IAC7C,uBAAuB;IACvB,IAAI,CAAC,QAAQ,CAAC,WAAW,EAAE,CAAC,QAAQ,CAAC,MAAM,CAAC,EAAE,CAAC;QAC7C,MAAM,IAAI,KAAK,CAAC,wCAAwC,QAAQ,EAAE,CAAC,CAAC;IACtE,CAAC;IAED,gEAAgE;IAChE,IAAI,KAAK,CAAC;IACV,IAAI,CAAC;QACH,KAAK,GAAG,QAAQ,CAAC,QAAQ,CAAC,CAAC;IAC7B,CAAC;IAAC,MAAM,CAAC;QACP,MAAM,IAAI,KAAK,CAAC,6BAA6B,QAAQ,EAAE,CAAC,CAAC;IAC3D,CAAC;IAED,IAAI,KAAK,CAAC,IAAI,GAAG,YAAY,EAAE,CAAC;QAC9B,MAAM,IAAI,KAAK,CACb,yBAAyB,CAAC,KAAK,CAAC,IAAI,GAAG,IAAI,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,OAAO;YAC9D,iBAAiB,CAAC,YAAY,GAAG,IAAI,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,IAAI,CACtD,CAAC;IACJ,CAAC;IAED,4BAA4B;IAC5B,MAAM,OAAO,GAAG,MAAM,QAAQ,CAAC,QAAQ,EAAE,OAAO,CAAC,CAAC;IAClD,IAAI,OAAO,CAAC,MAAM,GAAG,EAAE,EAAE,CAAC;QACxB,MAAM,IAAI,KAAK,CAAC,8CAA8C,QAAQ,EAAE,CAAC,CAAC;IAC5E,CAAC;AACH,CAAC;AAED;;;;;;GAMG;AACH,MAAM,CAAC,KAAK,UAAU,YAAY,CAAC,IAAa;IAI9C,MAAM,MAAM,GAAG,MAAM,UAAU,EAAE,CAAC;IAClC,MAAM,QAAQ,GAAG,IAAI,IAAI,MAAM,CAAC,YAAY,CAAC;IAE7C,0CAA0C;IAC1C,IAAI,MAAM,CAAC,MAAM,CAAC,QAAQ,CAAC,EAAE,CAAC;QAC5B,MAAM,OAAO,GAAG,MAAM,CAAC,MAAM,CAAC,QAAQ,CAAC,CAAC;QACxC,MAAM,eAAe,CAAC,OAAO,CAAC,CAAC;QAC/B,MAAM,SAAS,GAAG,MAAM,QAAQ,CAAC,OAAO,EAAE,OAAO,CAAC,CAAC;QACnD,OAAO,EAAE,SAAS,EAAE,UAAU,QAAQ,EAAE,EAAE,SAAS,EAAE,CAAC;IACxD,CAAC;IAED,iCAAiC;IACjC,IAAI,cAAc,CAAC,QAAQ,CAAC,QAAwB,CAAC,EAAE,CAAC;QACtD,0EAA0E;QAC1E,yEAAyE;QACzE,wDAAwD;QACxD,KAAK,MAAM,IAAI,IAAI,CAAC,OAAO,CAAC,GAAG,EAAE,EAAE,IAAI,CAAC,OAAO,CAAC,aAAa,CAAC,MAAM,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,IAAI,CAAC,CAAC,EAAE,CAAC;YACxF,MAAM,OAAO,GAAG,IAAI,CAAC,IAAI,EAAE,QAAQ,EAAE,GAAG,QAAQ,MAAM,CAAC,CAAC;YACxD,IAAI,CAAC;gBACH,MAAM,eAAe,CAAC,OAAO,CAAC,CAAC;gBAC/B,OAAO,EAAE,SAAS,EAAE,QAAQ,EAAE,SAAS,EAAE,MAAM,QAAQ,CAAC,OAAO,EAAE,OAAO,CAAC,EAAE,CAAC;YAC9E,CAAC;YAAC,MAAM,CAAC;gBACP,kFAAkF;YACpF,CAAC;QACH,CAAC;QACD,OAAO,EAAE,SAAS,EAAE,QAAQ,EAAE,CAAC;IACjC,CAAC;IAED,kCAAkC;IAClC,IAAI,CAAC;QACH,MAAM,MAAM,CAAC,QAAQ,CAAC,CAAC;IACzB,CAAC;IAAC,MAAM,CAAC;QACP,MAAM,IAAI,KAAK,CACb,mBAAmB,QAAQ,4BAA4B,cAAc,CAAC,IAAI,CAAC,IAAI,CAAC,KAAK;YACrF,sDAAsD,CACvD,CAAC;IACJ,CAAC;IAED,oCAAoC;IACpC,MAAM,eAAe,CAAC,QAAQ,CAAC,CAAC;IAChC,MAAM,YAAY,GAAG,YAAY,CAAC,QAAQ,CAAC,CAAC;IAC5C,MAAM,SAAS,GAAG,MAAM,QAAQ,CAAC,QAAQ,EAAE,OAAO,CAAC,CAAC;IAEpD,OAAO;QACL,SAAS,EAAE,UAAU,YAAY,EAAE;QACnC,SAAS;KACV,CAAC;AACJ,CAAC"}
|
package/dist/validators.d.ts
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
/**
|
|
2
2
|
* Paradigm validation engine — checks SeedPalette against v4.0 design constraints
|
|
3
|
-
* and scans generated CSS for the ColaMD 2.7.
|
|
3
|
+
* and scans generated CSS for the ColaMD 2.7.8-rc.1 theme contract.
|
|
4
4
|
* Based on theme-paradigm.md Section 2.
|
|
5
5
|
*/
|
|
6
6
|
export interface ValidationIssue {
|
|
@@ -23,7 +23,7 @@ export interface SeedPalette {
|
|
|
23
23
|
borderStrong: string;
|
|
24
24
|
}
|
|
25
25
|
export declare function validateSeedPalette(palette: SeedPalette): ValidationIssue[];
|
|
26
|
-
/** 校验生成的 CSS 是否符合 ColaMD 2.7.
|
|
26
|
+
/** 校验生成的 CSS 是否符合 ColaMD 2.7.8-rc.1 契约。 */
|
|
27
27
|
export declare function validateThemeCss(css: string): ValidationIssue[];
|
|
28
28
|
/** Summarize validation results. */
|
|
29
29
|
export declare function summarizeIssues(issues: ValidationIssue[]): string;
|
package/dist/validators.js
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
/**
|
|
2
2
|
* Paradigm validation engine — checks SeedPalette against v4.0 design constraints
|
|
3
|
-
* and scans generated CSS for the ColaMD 2.7.
|
|
3
|
+
* and scans generated CSS for the ColaMD 2.7.8-rc.1 theme contract.
|
|
4
4
|
* Based on theme-paradigm.md Section 2.
|
|
5
5
|
*/
|
|
6
6
|
import { parse, walk, generate } from "css-tree";
|
|
@@ -124,7 +124,7 @@ export function validateSeedPalette(palette) {
|
|
|
124
124
|
return issues;
|
|
125
125
|
}
|
|
126
126
|
// ═══════════════════════════════════════════════════════════
|
|
127
|
-
// CSS contract validation (ColaMD 2.7.
|
|
127
|
+
// CSS contract validation (ColaMD 2.7.8-rc.1)
|
|
128
128
|
// ═══════════════════════════════════════════════════════════
|
|
129
129
|
/** 2.7 编辑器不再消费的变量:留着只会让人照抄。 */
|
|
130
130
|
const DEAD_VARIABLES = new Set([
|
|
@@ -168,7 +168,7 @@ function hasVerticalPadding(rule) {
|
|
|
168
168
|
});
|
|
169
169
|
return found;
|
|
170
170
|
}
|
|
171
|
-
/** 校验生成的 CSS 是否符合 ColaMD 2.7.
|
|
171
|
+
/** 校验生成的 CSS 是否符合 ColaMD 2.7.8-rc.1 契约。 */
|
|
172
172
|
export function validateThemeCss(css) {
|
|
173
173
|
const issues = [];
|
|
174
174
|
const ast = parse(css, { positions: false });
|
|
@@ -182,7 +182,7 @@ export function validateThemeCss(css) {
|
|
|
182
182
|
issues.push({
|
|
183
183
|
ruleId: "CSS-01",
|
|
184
184
|
level: "MUST_NOT",
|
|
185
|
-
message: `变量 ${name} 在 ColaMD 2.7.
|
|
185
|
+
message: `变量 ${name} 在 ColaMD 2.7.8-rc.1 契约中已不再消费`,
|
|
186
186
|
fix: "改用活变量清单(--bg-color / --text-secondary / --pele-* 等)",
|
|
187
187
|
});
|
|
188
188
|
}
|
package/dist/validators.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"validators.js","sourceRoot":"","sources":["../src/validators.ts"],"names":[],"mappings":"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
|
|
1
|
+
{"version":3,"file":"validators.js","sourceRoot":"","sources":["../src/validators.ts"],"names":[],"mappings":"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"}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@bytechain.cn/colamd-themes",
|
|
3
|
-
"version": "0.5.
|
|
3
|
+
"version": "0.5.2",
|
|
4
4
|
"description": "Theme development & export tool for ColaMD — extract formatting, generate themes, and export Markdown to HTML/PDF",
|
|
5
5
|
"type": "module",
|
|
6
6
|
"main": "dist/index.js",
|
|
@@ -20,6 +20,7 @@
|
|
|
20
20
|
},
|
|
21
21
|
"keywords": [
|
|
22
22
|
"dsh",
|
|
23
|
+
"dsh-plugin",
|
|
23
24
|
"deepseek-harness",
|
|
24
25
|
"colamd",
|
|
25
26
|
"themes",
|
|
@@ -31,8 +32,27 @@
|
|
|
31
32
|
"ai-agent",
|
|
32
33
|
"agent-skill"
|
|
33
34
|
],
|
|
35
|
+
"files": [
|
|
36
|
+
"dist",
|
|
37
|
+
"themes",
|
|
38
|
+
"skills",
|
|
39
|
+
"cordis.patch.yml"
|
|
40
|
+
],
|
|
41
|
+
"dsh": {
|
|
42
|
+
"bundle": {
|
|
43
|
+
"patch": "./cordis.patch.yml"
|
|
44
|
+
}
|
|
45
|
+
},
|
|
46
|
+
"peerDependencies": {
|
|
47
|
+
"@deepseek-ai/dsh-skill": "^0.1.5-rc.1"
|
|
48
|
+
},
|
|
49
|
+
"peerDependenciesMeta": {
|
|
50
|
+
"@deepseek-ai/dsh-skill": {
|
|
51
|
+
"optional": true
|
|
52
|
+
}
|
|
53
|
+
},
|
|
34
54
|
"dependencies": {
|
|
35
|
-
"@bytechain.cn/colamd": "^
|
|
55
|
+
"@bytechain.cn/colamd": "^2.7.8-rc.2",
|
|
36
56
|
"axios": "^1.7",
|
|
37
57
|
"chalk": "^5.3",
|
|
38
58
|
"cheerio": "^1.0",
|
package/skills/build-skills.sh
CHANGED
|
@@ -26,7 +26,7 @@ BODY=$(sed -n '/^$/,$ { /^# ColaMD/!p; }' "$SOURCE" | sed '1{/^$/d;}')
|
|
|
26
26
|
FRONT_CLAUDE='---
|
|
27
27
|
name: colamd-themes
|
|
28
28
|
description: >
|
|
29
|
-
Generate, validate, export, and manage ColaMD 2.7.
|
|
29
|
+
Generate, validate, export, and manage ColaMD 2.7.8-rc.2 contract CSS themes.
|
|
30
30
|
Extract formatting from URLs, DOCX, or PDF sources; export Markdown to
|
|
31
31
|
standalone HTML/PDF with themes applied; batch export; manage theme
|
|
32
32
|
configuration.
|
|
@@ -36,7 +36,7 @@ FRONT_OPENCODE='---
|
|
|
36
36
|
name: colamd-themes
|
|
37
37
|
version: "1.0.0"
|
|
38
38
|
description: >
|
|
39
|
-
Generate, validate, export, and manage ColaMD 2.7.
|
|
39
|
+
Generate, validate, export, and manage ColaMD 2.7.8-rc.2 contract CSS themes.
|
|
40
40
|
Extract from URLs/DOCX/PDF; export Markdown to HTML/PDF; batch export.
|
|
41
41
|
user-invocable: true
|
|
42
42
|
allowed-tools:
|
|
@@ -52,7 +52,7 @@ FRONT_OPENCLAW='---
|
|
|
52
52
|
id: colamd-themes
|
|
53
53
|
name: ColaMD Themes
|
|
54
54
|
description: >
|
|
55
|
-
Generate, validate, export, and manage ColaMD 2.7.
|
|
55
|
+
Generate, validate, export, and manage ColaMD 2.7.8-rc.2 contract CSS themes.
|
|
56
56
|
Extract from URLs/DOCX/PDF; export Markdown to HTML/PDF; batch export.
|
|
57
57
|
version: "1.0.0"
|
|
58
58
|
icon: "\U0001F3A8"
|
|
@@ -70,7 +70,7 @@ metadata:
|
|
|
70
70
|
|
|
71
71
|
FRONT_HERMES='---
|
|
72
72
|
name: colamd-themes
|
|
73
|
-
description: "Generate, validate, export, and manage ColaMD 2.7.
|
|
73
|
+
description: "Generate, validate, export, and manage ColaMD 2.7.8-rc.2 contract CSS themes."
|
|
74
74
|
version: 1.0.0
|
|
75
75
|
author: bytechain
|
|
76
76
|
license: MIT
|
|
@@ -85,7 +85,7 @@ FRONT_DSH='---
|
|
|
85
85
|
name: colamd-themes
|
|
86
86
|
version: "1.0.0"
|
|
87
87
|
description: >
|
|
88
|
-
Generate, validate, export, and manage ColaMD 2.7.
|
|
88
|
+
Generate, validate, export, and manage ColaMD 2.7.8-rc.2 contract CSS themes.
|
|
89
89
|
Extract from URLs/DOCX/PDF; export Markdown to HTML/PDF; batch export.
|
|
90
90
|
metadata:
|
|
91
91
|
dsh:
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
# ColaMD Themes — Universal AI Agent Skill
|
|
2
2
|
|
|
3
|
-
Generate, validate, export, and manage ColaMD **2.7.
|
|
3
|
+
Generate, validate, export, and manage ColaMD **2.7.8-rc.2 contract** CSS themes. Extract formatting from URLs, DOCX, or PDF sources; export Markdown to standalone HTML/PDF with themes applied; batch export; manage theme configuration.
|
|
4
4
|
|
|
5
5
|
## Prerequisites
|
|
6
6
|
|
|
@@ -121,14 +121,14 @@ Export uses Puppeteer (headless Chromium) with `@bytechain.cn/colamd/renderer`:
|
|
|
121
121
|
|
|
122
122
|
1. Local HTTP server serves renderer ESM bundle (avoids CORS)
|
|
123
123
|
2. Puppeteer navigates to server page (same-origin)
|
|
124
|
-
3. `createColaMDEditor({ editable: false })` initializes
|
|
124
|
+
3. `createColaMDEditor({ editable: false })` initializes the CM6 editor
|
|
125
125
|
4. `applyTheme(name, customCSS?)` sets theme
|
|
126
126
|
5. `setMarkdown(content)` loads document
|
|
127
127
|
6. `ensureAllPluginsRendered()` waits for mermaid/KaTeX
|
|
128
128
|
7. `buildExportHTML()` → standalone HTML with embedded CSS
|
|
129
129
|
8. For PDF: `emulateMediaType('screen')` + `page.pdf()`
|
|
130
130
|
|
|
131
|
-
## 2.7.
|
|
131
|
+
## 2.7.8-rc.2 Contract Constraints
|
|
132
132
|
|
|
133
133
|
- Variables live in `:root`; anything in `body.theme-*` is ignored
|
|
134
134
|
- Live variables only: `--bg-color --text-color --text-secondary --text-muted --border-color --link-color --code-bg --code-block-bg --code-block-text --blockquote-border --blockquote-bg --table-header-bg --selection-bg --highlight-bg --font-body --font-mono --editor-font-size --editor-column-width` + `--pele-*`
|
|
@@ -172,9 +172,9 @@ Export uses Puppeteer (headless Chromium) with `@bytechain.cn/colamd/renderer`:
|
|
|
172
172
|
## Architecture
|
|
173
173
|
|
|
174
174
|
```
|
|
175
|
-
Source → Extractor → ThemeStyle → Color System + Pele + Validators → CSS (2.7.
|
|
175
|
+
Source → Extractor → ThemeStyle → Color System + Pele + Validators → CSS (2.7.8-rc.2 contract)
|
|
176
176
|
|
|
177
177
|
Markdown → Puppeteer + ColaMD renderer → HTML / PDF
|
|
178
178
|
```
|
|
179
179
|
|
|
180
|
-
> Export runs the
|
|
180
|
+
> Export runs the ColaMD 2.x library renderer (`@bytechain.cn/colamd@^2.7.8-rc.2` ships `dist/lib/colamd-renderer.js` + `colamd.css`); the same CM6 editor as the app runs headless via Puppeteer. Theme CSS is consumed directly as `:root` declarations and `buildExportHTML({ title })` serializes only contract live variables. Generated CSS targets the 2.7.8-rc.2 contract (unchanged since 2.7.7, machine-readable as `themes/contract.json` in the npm package), so it carries over unchanged.
|