@bytechain.cn/colamd-themes 0.3.2 → 0.5.0
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/.claude/skills/colamd-themes-preview.skill.md +333 -0
- package/.claude/skills/colamd-themes.skill.md +10 -0
- package/.dsh/skills/colamd-themes/SKILL.md +14 -0
- package/.github/supported-topics.yml +17 -0
- package/.hermes/skills/tools/colamd-themes/SKILL.md +14 -0
- package/.openclaw/skills/colamd-themes/SKILL.md +1 -37
- package/.opencode/skills/colamd-themes/SKILL.md +17 -0
- package/.trae/rules/colamd-themes.md +0 -36
- package/CHANGELOG.md +318 -241
- package/DSH_SUPPORT_SUMMARY.md +87 -0
- package/README.md +414 -384
- package/README_CN.md +412 -384
- package/RELEASENOTE.md +541 -389
- package/bytechain.cn-colamd-themes-0.5.0.tgz +0 -0
- package/dist/cli.js +36 -55
- package/dist/cli.js.map +1 -1
- package/dist/color-utils.d.ts +1 -0
- package/dist/color-utils.js +25 -6
- package/dist/color-utils.js.map +1 -1
- package/dist/extractors/pdf-extractor.js +6 -1
- package/dist/extractors/pdf-extractor.js.map +1 -1
- package/dist/extractors/url-extractor.d.ts +0 -4
- package/dist/extractors/url-extractor.js +13 -126
- package/dist/extractors/url-extractor.js.map +1 -1
- package/dist/generator.d.ts +1 -1
- package/dist/generator.js +32 -11
- package/dist/generator.js.map +1 -1
- package/dist/models.d.ts +5 -4
- package/dist/models.js +2 -3
- package/dist/models.js.map +1 -1
- package/dist/renderer.d.ts +4 -2
- package/dist/renderer.js +64 -84
- package/dist/renderer.js.map +1 -1
- package/dist/templates/template.css +220 -498
- package/dist/templates/theme-paradigm.md +530 -658
- package/dist/templates/theme-template.hbs +256 -370
- package/dist/theme-store.js +19 -3
- package/dist/theme-store.js.map +1 -1
- package/dist/utils/document-paradigm.d.ts +12 -0
- package/dist/utils/document-paradigm.js +109 -0
- package/dist/utils/document-paradigm.js.map +1 -0
- package/dist/validators.d.ts +4 -1
- package/dist/validators.js +115 -1
- package/dist/validators.js.map +1 -1
- package/mcp-server/dist/index.d.ts +13 -0
- package/mcp-server/dist/index.d.ts.map +1 -0
- package/mcp-server/dist/index.js +0 -0
- package/mcp-server/dist/index.js.map +1 -0
- package/mcp-server/package-lock.json +1759 -0
- package/mcp-server/package.json +24 -0
- package/mcp-server/src/index.ts +0 -0
- package/mcp-server/tsconfig.json +19 -0
- package/package.json +54 -36
- package/skills/build-skills.sh +30 -5
- package/skills/colamd-themes/SKILL.md +180 -178
- package/src/cli.ts +474 -487
- package/src/color-systems.ts +289 -289
- package/src/color-utils.ts +137 -120
- package/src/contrast.ts +66 -66
- package/src/docx-style-paradigm.ts +811 -811
- package/src/export-cli.ts +356 -356
- package/src/extractors/base.ts +8 -8
- package/src/extractors/docx-extractor.ts +417 -417
- package/src/extractors/pdf-extractor.ts +533 -527
- package/src/extractors/url-extractor.ts +846 -981
- package/src/generator.ts +197 -169
- package/src/index.ts +29 -29
- package/src/models.ts +212 -212
- package/src/renderer.ts +332 -359
- package/src/templates/template.css +220 -498
- package/src/templates/theme-paradigm.md +530 -658
- package/src/templates/theme-template.hbs +256 -370
- package/src/theme-store.ts +185 -170
- package/src/types/pdf-parse.d.ts +12 -12
- package/src/utils/cli-utils.ts +84 -84
- package/src/utils/document-paradigm.ts +118 -0
- package/src/validators.ts +298 -176
- package/themes/academic-paper-pt.css +353 -1805
- package/themes/academic-paper.css +350 -1099
- package/themes/academic-style.css +342 -2430
- package/themes/colly.css +256 -370
- package/themes/elegant.css +288 -671
- package/themes/forest-ink.css +240 -664
- package/themes/guizang.css +250 -732
- package/themes/hermes-security.css +279 -0
- package/themes/meeting-minutes.css +256 -370
- package/themes/pixso-design.css +278 -1261
- package/themes/salvator-blog.css +256 -370
- package/themes/shimo-theme.css +256 -0
- package/themes/swiss-design.css +285 -746
- package/themes/template.css +220 -498
- package/themes/trae-blue.css +280 -737
- package/themes/word-contract.css +249 -0
- package/themes-preview/demo-content.md +187 -187
- package/tsconfig.json +18 -18
- package/src/mermaid-presets.ts +0 -142
- package/themes/swiss-design copy.css +0 -746
- package/themes-preview/colly-preview.html +0 -623
- package/themes-preview/meeting-minutes-preview.html +0 -625
- package/themes-preview/salvator-blog-preview.html +0 -623
|
Binary file
|
package/dist/cli.js
CHANGED
|
@@ -11,8 +11,7 @@ import { DocxExtractor } from "./extractors/docx-extractor.js";
|
|
|
11
11
|
import { PdfExtractor } from "./extractors/pdf-extractor.js";
|
|
12
12
|
import { writeThemeFile } from "./generator.js";
|
|
13
13
|
import { COLOR_SYSTEMS, getColorSystem } from "./color-systems.js";
|
|
14
|
-
import {
|
|
15
|
-
import { validateSeedPalette, summarizeIssues } from "./validators.js";
|
|
14
|
+
import { validateSeedPalette, validateThemeCss, summarizeIssues } from "./validators.js";
|
|
16
15
|
import { registerExportCommands } from "./export-cli.js";
|
|
17
16
|
import { BUILTIN_THEMES } from "./theme-store.js";
|
|
18
17
|
/**
|
|
@@ -31,6 +30,13 @@ function getPackageVersion() {
|
|
|
31
30
|
return "0.0.0";
|
|
32
31
|
}
|
|
33
32
|
}
|
|
33
|
+
/** Fallback stacks used when colamd.css is missing or a theme rule can't be parsed. */
|
|
34
|
+
const BUILTIN_FONT_FALLBACKS = {
|
|
35
|
+
light: ["Noto Sans SC", "sans-serif"],
|
|
36
|
+
dark: ["Noto Sans SC", "sans-serif"],
|
|
37
|
+
elegant: ["LXGW WenKai", "Noto Serif SC", "serif"],
|
|
38
|
+
newsprint: ["Noto Serif SC", "serif"],
|
|
39
|
+
};
|
|
34
40
|
/** Font stacks for each built-in theme — parsed dynamically from colamd.css. */
|
|
35
41
|
const THEME_FONTS = getBuiltinFontStacks();
|
|
36
42
|
/** Find the path to @bytechain.cn/colamd/dist/lib/colamd.css */
|
|
@@ -47,37 +53,27 @@ function findColamdCssPath() {
|
|
|
47
53
|
}
|
|
48
54
|
/**
|
|
49
55
|
* Parse font-family values for each built-in theme from colamd.css.
|
|
50
|
-
* Dynamic approach: reads `body.theme-{name}
|
|
56
|
+
* Dynamic approach: reads `body.theme-{name} ... .cm-content { font-family: ... }`
|
|
51
57
|
* instead of hardcoding font stacks.
|
|
52
58
|
*/
|
|
53
59
|
function getBuiltinFontStacks() {
|
|
60
|
+
const result = { ...BUILTIN_FONT_FALLBACKS };
|
|
54
61
|
const cssPath = findColamdCssPath();
|
|
55
|
-
if (!cssPath)
|
|
56
|
-
|
|
57
|
-
return {
|
|
58
|
-
light: ["Noto Sans SC", "sans-serif"],
|
|
59
|
-
dark: ["Noto Sans SC", "sans-serif"],
|
|
60
|
-
elegant: ["LXGW WenKai", "Noto Serif SC", "serif"],
|
|
61
|
-
newsprint: ["Noto Serif SC", "serif"],
|
|
62
|
-
};
|
|
63
|
-
}
|
|
62
|
+
if (!cssPath)
|
|
63
|
+
return result;
|
|
64
64
|
const css = readFileSync(cssPath, "utf-8");
|
|
65
|
-
const
|
|
66
|
-
|
|
67
|
-
|
|
68
|
-
// Match: body.theme-elegant #editor .ProseMirror { ... font-family: 'LXGW WenKai', ...; }
|
|
69
|
-
const re = new RegExp(`body\\.theme-${theme}\\s+#editor\\s+\\.ProseMirror\\s*\\{[^}]*font-family:\\s*([^;]+)`, "i");
|
|
65
|
+
for (const theme of Object.keys(BUILTIN_FONT_FALLBACKS)) {
|
|
66
|
+
// 2.7 契约:字体栈写在 .cm-content 上(CodeMirror 6 不再有 .ProseMirror)
|
|
67
|
+
const re = new RegExp(`body\\.theme-${theme}[^{]*\\.cm-content[^{]*\\{[^}]*font-family:\\s*([^;]+)`, "i");
|
|
70
68
|
const m = css.match(re);
|
|
71
|
-
if (m)
|
|
72
|
-
|
|
69
|
+
if (!m || m[1].includes("var("))
|
|
70
|
+
continue;
|
|
71
|
+
const fonts = m[1]
|
|
72
|
+
.split(",")
|
|
73
|
+
.map((s) => s.trim().replace(/^['"]|['"]$/g, "").trim())
|
|
74
|
+
.filter(Boolean);
|
|
75
|
+
if (fonts.length > 0)
|
|
73
76
|
result[theme] = fonts;
|
|
74
|
-
}
|
|
75
|
-
}
|
|
76
|
-
// Fill any missing themes with fallback
|
|
77
|
-
for (const theme of names) {
|
|
78
|
-
if (!result[theme]) {
|
|
79
|
-
result[theme] = ["sans-serif"];
|
|
80
|
-
}
|
|
81
77
|
}
|
|
82
78
|
return result;
|
|
83
79
|
}
|
|
@@ -202,7 +198,7 @@ async function loadCustomThemes() {
|
|
|
202
198
|
const program = new Command();
|
|
203
199
|
program
|
|
204
200
|
.name("colamd-themes")
|
|
205
|
-
.description("ColaMD Theme Development Tool — extract formatting and generate
|
|
201
|
+
.description("ColaMD Theme Development Tool — extract formatting and generate 2.7-contract CSS themes")
|
|
206
202
|
.version(getPackageVersion());
|
|
207
203
|
// ── Shared extract options builder ──
|
|
208
204
|
function addExtractOptions(cmd) {
|
|
@@ -211,8 +207,7 @@ function addExtractOptions(cmd) {
|
|
|
211
207
|
.option("-o, --output <path>", "Output CSS file path")
|
|
212
208
|
.option("-d, --themes-dir <dir>", "Themes directory", "themes")
|
|
213
209
|
.option("-c, --color-system <id>", "Force a color system (use `color-systems` to list)")
|
|
214
|
-
.option("-
|
|
215
|
-
.option("-A, --auto-match", "Auto-match color system and mermaid preset");
|
|
210
|
+
.option("-A, --auto-match", "Auto-match a color system from the extracted palette");
|
|
216
211
|
}
|
|
217
212
|
async function runExtraction(extractor, source, options) {
|
|
218
213
|
const spinner = ora("Extracting styles...").start();
|
|
@@ -229,13 +224,9 @@ async function runExtraction(extractor, source, options) {
|
|
|
229
224
|
style.seed = { ...cs.palette };
|
|
230
225
|
style.colorSystemId = cs.id;
|
|
231
226
|
}
|
|
232
|
-
if (options.
|
|
233
|
-
style.mermaidPresetId = options.mermaidPreset;
|
|
234
|
-
if (options.autoMatch) {
|
|
227
|
+
if (options.autoMatch)
|
|
235
228
|
style.colorSystemId = "";
|
|
236
|
-
|
|
237
|
-
}
|
|
238
|
-
spinner.text = "Generating CSS (v3.0 paradigm)...";
|
|
229
|
+
spinner.text = "Generating CSS (2.7.7 contract)...";
|
|
239
230
|
const outputPath = writeThemeFile(style, options.output || options.themesDir);
|
|
240
231
|
spinner.succeed(chalk.green(`Theme "${style.name}" generated: ${outputPath}`));
|
|
241
232
|
printSummary(style);
|
|
@@ -306,21 +297,6 @@ program
|
|
|
306
297
|
}
|
|
307
298
|
console.log();
|
|
308
299
|
});
|
|
309
|
-
// ── mermaid-presets ──
|
|
310
|
-
program
|
|
311
|
-
.command("mermaid-presets")
|
|
312
|
-
.description("List Mermaid theme presets (light / dark / elegant)")
|
|
313
|
-
.option("-j, --json", "Output as JSON")
|
|
314
|
-
.action((options) => {
|
|
315
|
-
if (options.json) {
|
|
316
|
-
console.log(JSON.stringify(MERMAID_PRESETS, null, 2));
|
|
317
|
-
return;
|
|
318
|
-
}
|
|
319
|
-
for (const p of MERMAID_PRESETS) {
|
|
320
|
-
console.log(` ${chalk.cyan(p.id.padEnd(12))} ${chalk.white(p.name)} ${chalk.dim(p.description)}`);
|
|
321
|
-
}
|
|
322
|
-
console.log();
|
|
323
|
-
});
|
|
324
300
|
// ── list ──
|
|
325
301
|
program
|
|
326
302
|
.command("list")
|
|
@@ -345,7 +321,7 @@ program
|
|
|
345
321
|
// ── validate ──
|
|
346
322
|
program
|
|
347
323
|
.command("validate")
|
|
348
|
-
.description("Validate a theme CSS against
|
|
324
|
+
.description("Validate a theme CSS against the 2.7.7 contract and paradigm rules")
|
|
349
325
|
.argument("<file>", "Path to theme CSS file")
|
|
350
326
|
.action((file) => {
|
|
351
327
|
if (!existsSync(file)) {
|
|
@@ -365,11 +341,16 @@ program
|
|
|
365
341
|
inkDim: extract("--seed-ink-dim"), border: extract("--seed-border"),
|
|
366
342
|
borderStrong: extract("--seed-border-strong"),
|
|
367
343
|
};
|
|
344
|
+
console.log(chalk.bold("CSS contract (ColaMD 2.7.7):"));
|
|
345
|
+
const cssIssues = validateThemeCss(css);
|
|
346
|
+
console.log(cssIssues.length === 0 ? chalk.green(" ✔ :root 根块与选择器契约通过") : summarizeIssues(cssIssues));
|
|
368
347
|
if (!seed.accent) {
|
|
369
|
-
console.
|
|
370
|
-
|
|
348
|
+
console.log(chalk.yellow("\nNot a seed-palette theme (no --seed-* found); seed checks skipped."));
|
|
349
|
+
if (cssIssues.some((i) => i.level === "MUST" || i.level === "MUST_NOT"))
|
|
350
|
+
process.exit(1);
|
|
351
|
+
return;
|
|
371
352
|
}
|
|
372
|
-
console.log(chalk.bold("
|
|
353
|
+
console.log(chalk.bold("\nSeed palette:"));
|
|
373
354
|
for (const [k, v] of Object.entries(seed))
|
|
374
355
|
console.log(` ${chalk.dim(k.padEnd(18))} ${v}`);
|
|
375
356
|
const issues = validateSeedPalette(seed);
|
|
@@ -476,7 +457,7 @@ function printSummary(style) {
|
|
|
476
457
|
console.log(` ${chalk.white("surface:")} ${s.surface} ${chalk.white("ink:")} ${s.ink} ${chalk.white("accent:")} ${s.accent}`);
|
|
477
458
|
console.log(` ${chalk.white("panel:")} ${s.panel} ${chalk.white("panel-alt:")} ${s.panelAlt}`);
|
|
478
459
|
if (style.colorSystemId) {
|
|
479
|
-
console.log(chalk.dim(` Color system: ${style.colorSystemId}
|
|
460
|
+
console.log(chalk.dim(` Color system: ${style.colorSystemId}`));
|
|
480
461
|
}
|
|
481
462
|
}
|
|
482
463
|
export function main() { program.parse(); }
|
package/dist/cli.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"cli.js","sourceRoot":"","sources":["../src/cli.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"cli.js","sourceRoot":"","sources":["../src/cli.ts"],"names":[],"mappings":";AAEA,OAAO,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;AACpC,OAAO,EAAE,UAAU,EAAE,WAAW,EAAE,YAAY,EAAE,MAAM,SAAS,CAAC;AAChE,OAAO,EAAE,IAAI,EAAE,UAAU,EAAE,OAAO,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;AAC/D,OAAO,EAAE,aAAa,EAAE,MAAM,UAAU,CAAC;AACzC,OAAO,EAAE,QAAQ,EAAE,MAAM,oBAAoB,CAAC;AAC9C,OAAO,KAAK,MAAM,OAAO,CAAC;AAC1B,OAAO,GAAG,MAAM,KAAK,CAAC;AACtB,OAAO,EAAE,YAAY,EAAE,MAAM,+BAA+B,CAAC;AAC7D,OAAO,EAAE,aAAa,EAAE,MAAM,gCAAgC,CAAC;AAC/D,OAAO,EAAE,YAAY,EAAE,MAAM,+BAA+B,CAAC;AAE7D,OAAO,EAAE,cAAc,EAAE,MAAM,gBAAgB,CAAC;AAChD,OAAO,EAAE,aAAa,EAAE,cAAc,EAAE,MAAM,oBAAoB,CAAC;AACnE,OAAO,EAAE,mBAAmB,EAAE,gBAAgB,EAAE,eAAe,EAAE,MAAM,iBAAiB,CAAC;AAEzF,OAAO,EAAE,sBAAsB,EAAE,MAAM,iBAAiB,CAAC;AACzD,OAAO,EAAE,cAAc,EAAE,MAAM,kBAAkB,CAAC;AAElD;;;GAGG;AACH,SAAS,iBAAiB;IACxB,IAAI,CAAC;QACH,MAAM,UAAU,GAAG,aAAa,CAAC,MAAM,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;QAClD,MAAM,SAAS,GAAG,OAAO,CAAC,UAAU,CAAC,CAAC;QACtC,MAAM,OAAO,GAAG,IAAI,CAAC,SAAS,EAAE,iBAAiB,CAAC,CAAC;QACnD,MAAM,GAAG,GAAG,IAAI,CAAC,KAAK,CAAC,YAAY,CAAC,OAAO,EAAE,OAAO,CAAC,CAAC,CAAC;QACvD,OAAO,GAAG,CAAC,OAAO,IAAI,OAAO,CAAC;IAChC,CAAC;IAAC,MAAM,CAAC;QACP,OAAO,OAAO,CAAC;IACjB,CAAC;AACH,CAAC;AAED,uFAAuF;AACvF,MAAM,sBAAsB,GAA6B;IACvD,KAAK,EAAE,CAAC,cAAc,EAAE,YAAY,CAAC;IACrC,IAAI,EAAE,CAAC,cAAc,EAAE,YAAY,CAAC;IACpC,OAAO,EAAE,CAAC,aAAa,EAAE,eAAe,EAAE,OAAO,CAAC;IAClD,SAAS,EAAE,CAAC,eAAe,EAAE,OAAO,CAAC;CACtC,CAAC;AAEF,gFAAgF;AAChF,MAAM,WAAW,GAA6B,oBAAoB,EAAE,CAAC;AAErE,gEAAgE;AAChE,SAAS,iBAAiB;IACxB,MAAM,UAAU,GAAG;QACjB,OAAO,CAAC,OAAO,CAAC,IAAI,GAAG,CAAC,MAAM,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,QAAQ,CAAC,EAAE,0DAA0D,CAAC;QAC/G,OAAO,CAAC,OAAO,CAAC,GAAG,EAAE,EAAE,uDAAuD,CAAC;KAChF,CAAC;IACF,KAAK,MAAM,CAAC,IAAI,UAAU,EAAE,CAAC;QAC3B,IAAI,UAAU,CAAC,CAAC,CAAC;YAAE,OAAO,CAAC,CAAC;IAC9B,CAAC;IACD,OAAO,EAAE,CAAC;AACZ,CAAC;AAED;;;;GAIG;AACH,SAAS,oBAAoB;IAC3B,MAAM,MAAM,GAA6B,EAAE,GAAG,sBAAsB,EAAE,CAAC;IACvE,MAAM,OAAO,GAAG,iBAAiB,EAAE,CAAC;IACpC,IAAI,CAAC,OAAO;QAAE,OAAO,MAAM,CAAC;IAE5B,MAAM,GAAG,GAAG,YAAY,CAAC,OAAO,EAAE,OAAO,CAAC,CAAC;IAE3C,KAAK,MAAM,KAAK,IAAI,MAAM,CAAC,IAAI,CAAC,sBAAsB,CAAC,EAAE,CAAC;QACxD,4DAA4D;QAC5D,MAAM,EAAE,GAAG,IAAI,MAAM,CACnB,gBAAgB,KAAK,wDAAwD,EAC7E,GAAG,CACJ,CAAC;QACF,MAAM,CAAC,GAAG,GAAG,CAAC,KAAK,CAAC,EAAE,CAAC,CAAC;QACxB,IAAI,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,CAAC,QAAQ,CAAC,MAAM,CAAC;YAAE,SAAS;QAE1C,MAAM,KAAK,GAAG,CAAC,CAAC,CAAC,CAAC;aACf,KAAK,CAAC,GAAG,CAAC;aACV,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,IAAI,EAAE,CAAC,OAAO,CAAC,cAAc,EAAE,EAAE,CAAC,CAAC,IAAI,EAAE,CAAC;aACvD,MAAM,CAAC,OAAO,CAAC,CAAC;QACnB,IAAI,KAAK,CAAC,MAAM,GAAG,CAAC;YAAE,MAAM,CAAC,KAAK,CAAC,GAAG,KAAK,CAAC;IAC9C,CAAC;IAED,OAAO,MAAM,CAAC;AAChB,CAAC;AAED;;;;GAIG;AACH,SAAS,SAAS,CAAC,QAAgB;IACjC,+DAA+D;IAC/D,IAAI,CAAC;QACH,MAAM,GAAG,GAAG,QAAQ,CAAC,aAAa,QAAQ,eAAe,EAAE;YACzD,QAAQ,EAAE,MAAM;YAChB,SAAS,EAAE,IAAI;YACf,KAAK,EAAE,SAAS;SACjB,CAAC,CAAC,IAAI,EAAE,CAAC;QACV,IAAI,GAAG,IAAI,CAAC,GAAG,CAAC,UAAU,CAAC,kBAAkB,CAAC,EAAE,CAAC;YAC/C,MAAM,KAAK,GAAG,GAAG,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,IAAI,EAAE,CAAC;YACvD,IAAI,KAAK;gBAAE,OAAO,KAAK,CAAC;QAC1B,CAAC;IACH,CAAC;IAAC,MAAM,CAAC,CAAA,CAAC;IAEV,2CAA2C;IAC3C,IAAI,OAAO,CAAC,QAAQ,KAAK,OAAO,EAAE,CAAC;QACjC,IAAI,CAAC;YACH,MAAM,IAAI,GAAG,QAAQ,CAAC,OAAO,CAAC,IAAI,EAAE,IAAI,CAAC,CAAC;YAC1C,MAAM,EAAE,GAAG,OAAO,IAAI,6LAA6L,CAAC;YACpN,MAAM,GAAG,GAAG,QAAQ,CAClB,mCAAmC,EAAE,CAAC,OAAO,CAAC,IAAI,EAAE,KAAK,CAAC,GAAG,EAC7D,EAAE,QAAQ,EAAE,MAAM,EAAE,OAAO,EAAE,IAAI,EAAE,CACpC,CAAC,IAAI,EAAE,CAAC;YACT,IAAI,GAAG,IAAI,GAAG,KAAK,WAAW;gBAAE,OAAO,GAAG,CAAC;QAC7C,CAAC;QAAC,MAAM,CAAC,CAAA,CAAC;IACZ,CAAC;IAED,mDAAmD;IACnD,IAAI,OAAO,CAAC,QAAQ,KAAK,QAAQ,EAAE,CAAC;QAClC,IAAI,CAAC;YACH,MAAM,EAAE,GAAG,QAAQ,CAAC,WAAW,EAAE,CAAC;YAClC,MAAM,GAAG,GAAG,QAAQ,CAClB,0DAA0D,EAAE,GAAG,EAC/D,EAAE,QAAQ,EAAE,MAAM,EAAE,SAAS,EAAE,IAAI,GAAG,IAAI,EAAE,OAAO,EAAE,KAAK,EAAE,CAC7D,CAAC,IAAI,EAAE,CAAC;YACT,IAAI,GAAG;gBAAE,OAAO,GAAG,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,CAAC,IAAI,EAAE,CAAC;QAC5C,CAAC;QAAC,MAAM,CAAC,CAAA,CAAC;IACZ,CAAC;IAED,+CAA+C;IAC/C,MAAM,QAAQ,GAAa,EAAE,CAAC;IAC9B,IAAI,OAAO,CAAC,QAAQ,KAAK,OAAO,EAAE,CAAC;QACjC,MAAM,OAAO,GAAG,OAAO,CAAC,GAAG,CAAC,UAAU,IAAI,aAAa,CAAC;QACxD,QAAQ,CAAC,IAAI,CAAC,IAAI,CAAC,OAAO,EAAE,OAAO,CAAC,CAAC,CAAC;IACxC,CAAC;SAAM,IAAI,OAAO,CAAC,QAAQ,KAAK,QAAQ,EAAE,CAAC;QACzC,MAAM,IAAI,GAAG,OAAO,CAAC,GAAG,CAAC,IAAI,IAAI,EAAE,CAAC;QACpC,QAAQ,CAAC,IAAI,CAAC,gBAAgB,EAAE,uBAAuB,CAAC,CAAC;QACzD,IAAI,IAAI;YAAE,QAAQ,CAAC,IAAI,CAAC,IAAI,CAAC,IAAI,EAAE,SAAS,EAAE,OAAO,CAAC,CAAC,CAAC;IAC1D,CAAC;SAAM,CAAC;QACN,cAAc;QACd,QAAQ,CAAC,IAAI,CACX,kBAAkB,EAClB,wBAAwB,CACzB,CAAC;QACF,MAAM,IAAI,GAAG,OAAO,CAAC,GAAG,CAAC,IAAI,IAAI,EAAE,CAAC;QACpC,IAAI,IAAI;YAAE,QAAQ,CAAC,IAAI,CAAC,IAAI,CAAC,IAAI,EAAE,QAAQ,EAAE,OAAO,EAAE,OAAO,CAAC,CAAC,CAAC;IAClE,CAAC;IAED,MAAM,EAAE,GAAG,QAAQ,CAAC,OAAO,CAAC,WAAW,EAAE,EAAE,CAAC,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC;IAC1E,IAAI,EAAE,CAAC,MAAM,KAAK,CAAC;QAAE,OAAO,IAAI,CAAC;IAEjC,KAAK,MAAM,GAAG,IAAI,QAAQ,EAAE,CAAC;QAC3B,IAAI,CAAC,UAAU,CAAC,GAAG,CAAC;YAAE,SAAS;QAC/B,IAAI,CAAC;YACH,MAAM,KAAK,GAAG,WAAW,CAAC,GAAG,EAAE,EAAE,SAAS,EAAE,IAAI,EAAE,CAAC,CAAC;YACpD,MAAM,KAAK,GAAG,KAAK,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE;gBAC7B,MAAM,KAAK,GAAG,OAAO,CAAC,KAAK,QAAQ,CAAC,CAAC,CAAC,CAAC,CAAC,WAAW,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;gBAC3D,OAAO,0BAA0B,CAAC,IAAI,CAAC,KAAK,CAAC,IAAI,EAAE,CAAC,KAAK,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,KAAK,CAAC,QAAQ,CAAC,CAAC,CAAC,WAAW,EAAE,CAAC,CAAC,CAAC;YACpG,CAAC,CAAC,CAAC;YACH,IAAI,KAAK;gBAAE,OAAO,OAAO,KAAK,KAAK,QAAQ,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC;QACtE,CAAC;QAAC,MAAM,CAAC,CAAA,CAAC;IACZ,CAAC;IAED,OAAO,IAAI,CAAC;AACd,CAAC;AAED;;;;GAIG;AACH,SAAS,iBAAiB,CAAC,GAAW;IACpC,MAAM,KAAK,GAAG,IAAI,GAAG,EAAU,CAAC;IAChC,MAAM,SAAS,GAAG,mCAAmC,CAAC;IACtD,qCAAqC;IACrC,MAAM,EAAE,GAAG,4BAA4B,CAAC;IACxC,IAAI,KAA6B,CAAC;IAClC,OAAO,CAAC,KAAK,GAAG,EAAE,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,KAAK,IAAI,EAAE,CAAC;QACvC,MAAM,KAAK,GAAG,KAAK,CAAC,CAAC,CAAC,CAAC;QACvB,qDAAqD;QACrD,KAAK,MAAM,IAAI,IAAI,KAAK,CAAC,KAAK,CAAC,GAAG,CAAC,EAAE,CAAC;YACpC,IAAI,IAAI,GAAG,IAAI,CAAC,IAAI,EAAE,CAAC,OAAO,CAAC,cAAc,EAAE,EAAE,CAAC,CAAC,IAAI,EAAE,CAAC;YAC1D,wCAAwC;YACxC,IAAI,GAAG,IAAI,CAAC,OAAO,CAAC,oBAAoB,EAAE,EAAE,CAAC,CAAC,IAAI,EAAE,CAAC;YACrD,IAAI,IAAI,IAAI,CAAC,IAAI,CAAC,UAAU,CAAC,MAAM,CAAC,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE,CAAC;gBAC9D,KAAK,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC;YAClB,CAAC;QACH,CAAC;IACH,CAAC;IACD,OAAO,KAAK,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;AAC3B,CAAC;AAED,IAAI,WAAW,GAA8C,IAAI,CAAC;AAElE,KAAK,UAAU,gBAAgB;IAC7B,IAAI,WAAW;QAAE,OAAO,WAAW,CAAC,MAAM,CAAC;IAC3C,IAAI,CAAC;QACH,MAAM,EAAE,SAAS,EAAE,GAAG,MAAM,MAAM,CAAC,kBAAkB,CAAC,CAAC;QACvD,MAAM,MAAM,GAAG,MAAM,SAAS,EAAE,CAAC;QACjC,WAAW,GAAG,MAAM,CAAC;QACrB,OAAO,MAAM,CAAC,MAAM,CAAC;IACvB,CAAC;IAAC,MAAM,CAAC;QACP,OAAO,EAAE,CAAC;IACZ,CAAC;AACH,CAAC;AAED,MAAM,OAAO,GAAG,IAAI,OAAO,EAAE,CAAC;AAE9B,OAAO;KACJ,IAAI,CAAC,eAAe,CAAC;KACrB,WAAW,CAAC,yFAAyF,CAAC;KACtG,OAAO,CAAC,iBAAiB,EAAE,CAAC,CAAC;AAEhC,uCAAuC;AAEvC,SAAS,iBAAiB,CAAC,GAAY;IACrC,OAAO,GAAG;SACP,MAAM,CAAC,mBAAmB,EAAE,YAAY,CAAC;SACzC,MAAM,CAAC,qBAAqB,EAAE,sBAAsB,CAAC;SACrD,MAAM,CAAC,wBAAwB,EAAE,kBAAkB,EAAE,QAAQ,CAAC;SAC9D,MAAM,CAAC,yBAAyB,EAAE,oDAAoD,CAAC;SACvF,MAAM,CAAC,kBAAkB,EAAE,sDAAsD,CAAC,CAAC;AACxF,CAAC;AAED,KAAK,UAAU,aAAa,CAC1B,SAAoB,EACpB,MAAc,EACd,OAA+B;IAE/B,MAAM,OAAO,GAAG,GAAG,CAAC,sBAAsB,CAAC,CAAC,KAAK,EAAE,CAAC;IACpD,IAAI,CAAC;QACH,MAAM,KAAK,GAAG,MAAM,SAAS,CAAC,OAAO,CAAC,MAAM,CAAC,CAAC;QAC9C,IAAI,OAAO,CAAC,IAAI;YAAE,KAAK,CAAC,IAAI,GAAG,OAAO,CAAC,IAAI,CAAC;QAC5C,IAAI,OAAO,CAAC,WAAW,EAAE,CAAC;YACxB,MAAM,EAAE,GAAG,cAAc,CAAC,OAAO,CAAC,WAAW,CAAC,CAAC;YAC/C,IAAI,CAAC,EAAE,EAAE,CAAC;gBAAC,OAAO,CAAC,IAAI,CAAC,yBAAyB,OAAO,CAAC,WAAW,EAAE,CAAC,CAAC;gBAAC,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;YAAC,CAAC;YAC3F,KAAK,CAAC,IAAI,GAAG,EAAE,GAAG,EAAE,CAAC,OAAO,EAAE,CAAC;YAC/B,KAAK,CAAC,aAAa,GAAG,EAAE,CAAC,EAAE,CAAC;QAC9B,CAAC;QACD,IAAI,OAAO,CAAC,SAAS;YAAE,KAAK,CAAC,aAAa,GAAG,EAAE,CAAC;QAChD,OAAO,CAAC,IAAI,GAAG,oCAAoC,CAAC;QACpD,MAAM,UAAU,GAAG,cAAc,CAAC,KAAK,EAAE,OAAO,CAAC,MAAM,IAAI,OAAO,CAAC,SAAS,CAAC,CAAC;QAC9E,OAAO,CAAC,OAAO,CAAC,KAAK,CAAC,KAAK,CAAC,UAAU,KAAK,CAAC,IAAI,gBAAgB,UAAU,EAAE,CAAC,CAAC,CAAC;QAC/E,YAAY,CAAC,KAAK,CAAC,CAAC;IACtB,CAAC;IAAC,OAAO,GAAG,EAAE,CAAC;QACb,OAAO,CAAC,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,WAAY,GAAa,CAAC,OAAO,EAAE,CAAC,CAAC,CAAC;QAC7D,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;IAClB,CAAC;AACH,CAAC;AAED,iBAAiB;AACjB,iBAAiB,CACf,OAAO,CAAC,OAAO,CAAC,UAAU,CAAC;KACxB,WAAW,CAAC,mCAAmC,CAAC;KAChD,QAAQ,CAAC,OAAO,EAAE,qBAAqB,CAAC,CAC5C,CAAC,MAAM,CAAC,KAAK,EAAE,GAAW,EAAE,OAA+B,EAAE,EAAE;IAC9D,MAAM,aAAa,CAAC,IAAI,YAAY,EAAE,EAAE,GAAG,EAAE,OAAO,CAAC,CAAC;AACxD,CAAC,CAAC,CAAC;AAEH,kBAAkB;AAClB,iBAAiB,CACf,OAAO,CAAC,OAAO,CAAC,WAAW,CAAC;KACzB,WAAW,CAAC,qCAAqC,CAAC;KAClD,QAAQ,CAAC,QAAQ,EAAE,wBAAwB,CAAC,CAChD,CAAC,MAAM,CAAC,KAAK,EAAE,IAAY,EAAE,OAA+B,EAAE,EAAE;IAC/D,IAAI,CAAC,UAAU,CAAC,IAAI,CAAC,EAAE,CAAC;QAAC,OAAO,CAAC,KAAK,CAAC,KAAK,CAAC,GAAG,CAAC,mBAAmB,IAAI,EAAE,CAAC,CAAC,CAAC;QAAC,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;IAAC,CAAC;IAChG,MAAM,aAAa,CAAC,IAAI,aAAa,EAAE,EAAE,IAAI,EAAE,OAAO,CAAC,CAAC;AAC1D,CAAC,CAAC,CAAC;AAEH,iBAAiB;AACjB,iBAAiB,CACf,OAAO,CAAC,OAAO,CAAC,UAAU,CAAC;KACxB,WAAW,CAAC,mCAAmC,CAAC;KAChD,QAAQ,CAAC,QAAQ,EAAE,sBAAsB,CAAC,CAC9C,CAAC,MAAM,CAAC,KAAK,EAAE,IAAY,EAAE,OAA+B,EAAE,EAAE;IAC/D,IAAI,CAAC,UAAU,CAAC,IAAI,CAAC,EAAE,CAAC;QAAC,OAAO,CAAC,KAAK,CAAC,KAAK,CAAC,GAAG,CAAC,mBAAmB,IAAI,EAAE,CAAC,CAAC,CAAC;QAAC,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;IAAC,CAAC;IAChG,MAAM,aAAa,CAAC,IAAI,YAAY,EAAE,EAAE,IAAI,EAAE,OAAO,CAAC,CAAC;AACzD,CAAC,CAAC,CAAC;AAEH,8BAA8B;AAC9B,iBAAiB,CACf,OAAO,CAAC,OAAO,CAAC,SAAS,CAAC;KACvB,WAAW,CAAC,2CAA2C,CAAC;KACxD,QAAQ,CAAC,UAAU,EAAE,+BAA+B,CAAC,CACzD,CAAC,MAAM,CAAC,KAAK,EAAE,MAAc,EAAE,OAA+B,EAAE,EAAE;IACjE,MAAM,UAAU,GAAgB,CAAC,IAAI,YAAY,EAAE,EAAE,IAAI,aAAa,EAAE,EAAE,IAAI,YAAY,EAAE,CAAC,CAAC;IAC9F,MAAM,GAAG,GAAG,UAAU,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,SAAS,CAAC,MAAM,CAAC,CAAC,CAAC;IACxD,IAAI,CAAC,GAAG,EAAE,CAAC;QAAC,OAAO,CAAC,KAAK,CAAC,KAAK,CAAC,GAAG,CAAC,kCAAkC,MAAM,EAAE,CAAC,CAAC,CAAC;QAAC,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;IAAC,CAAC;IACpG,MAAM,aAAa,CAAC,GAAG,EAAE,MAAM,EAAE,OAAO,CAAC,CAAC;AAC5C,CAAC,CAAC,CAAC;AAEH,sBAAsB;AACtB,OAAO;KACJ,OAAO,CAAC,eAAe,CAAC;KACxB,WAAW,CAAC,oCAAoC,CAAC;KACjD,MAAM,CAAC,YAAY,EAAE,gBAAgB,CAAC;KACtC,MAAM,CAAC,CAAC,OAA+B,EAAE,EAAE;IAC1C,IAAI,OAAO,CAAC,IAAI,EAAE,CAAC;QAAC,OAAO,CAAC,GAAG,CAAC,IAAI,CAAC,SAAS,CAAC,aAAa,EAAE,IAAI,EAAE,CAAC,CAAC,CAAC,CAAC;QAAC,OAAO;IAAC,CAAC;IAClF,MAAM,QAAQ,GAAyC,EAAE,CAAC;IAC1D,KAAK,MAAM,EAAE,IAAI,aAAa,EAAE,CAAC;QAC/B,MAAM,GAAG,GAAG,EAAE,CAAC,MAAM,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC;QACpC,CAAC,QAAQ,CAAC,GAAG,CAAC,KAAK,EAAE,CAAC,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;IAClC,CAAC;IACD,KAAK,MAAM,CAAC,GAAG,EAAE,OAAO,CAAC,IAAI,MAAM,CAAC,OAAO,CAAC,QAAQ,CAAC,EAAE,CAAC;QACtD,OAAO,CAAC,GAAG,CAAC,KAAK,CAAC,IAAI,CAAC,KAAK,GAAG,EAAE,CAAC,CAAC,CAAC;QACpC,KAAK,MAAM,EAAE,IAAI,OAAO,EAAE,CAAC;YACzB,OAAO,CAAC,GAAG,CAAC,KAAK,KAAK,CAAC,IAAI,CAAC,EAAE,CAAC,EAAE,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC,IAAI,KAAK,CAAC,KAAK,CAAC,EAAE,CAAC,MAAM,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,KAAK,KAAK,CAAC,GAAG,CAAC,EAAE,CAAC,OAAO,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC;QAC5I,CAAC;IACH,CAAC;IACD,OAAO,CAAC,GAAG,EAAE,CAAC;AAChB,CAAC,CAAC,CAAC;AAEL,aAAa;AACb,OAAO;KACJ,OAAO,CAAC,MAAM,CAAC;KACf,WAAW,CAAC,2BAA2B,CAAC;KACxC,MAAM,CAAC,wBAAwB,EAAE,kBAAkB,EAAE,QAAQ,CAAC;KAC9D,MAAM,CAAC,CAAC,OAA+B,EAAE,EAAE;IAC1C,MAAM,OAAO,GAAG,UAAU,CAAC,OAAO,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC,SAAS,CAAC,CAAC,CAAC,IAAI,CAAC,OAAO,CAAC,GAAG,EAAE,EAAE,OAAO,CAAC,SAAS,CAAC,CAAC;IAC3G,IAAI,CAAC,UAAU,CAAC,OAAO,CAAC,EAAE,CAAC;QAAC,OAAO,CAAC,GAAG,CAAC,KAAK,CAAC,MAAM,CAAC,wBAAwB,OAAO,EAAE,CAAC,CAAC,CAAC;QAAC,OAAO;IAAC,CAAC;IACnG,MAAM,KAAK,GAAG,WAAW,CAAC,OAAO,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,QAAQ,CAAC,MAAM,CAAC,CAAC,CAAC;IACrE,IAAI,KAAK,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;QAAC,OAAO,CAAC,GAAG,CAAC,KAAK,CAAC,MAAM,CAAC,kBAAkB,CAAC,CAAC,CAAC;QAAC,OAAO;IAAC,CAAC;IAClF,OAAO,CAAC,GAAG,CAAC,KAAK,CAAC,IAAI,CAAC,eAAe,OAAO,IAAI,CAAC,CAAC,CAAC;IACpD,KAAK,MAAM,CAAC,IAAI,KAAK;QAAE,OAAO,CAAC,GAAG,CAAC,KAAK,KAAK,CAAC,IAAI,CAAC,GAAG,CAAC,IAAI,KAAK,CAAC,KAAK,CAAC,CAAC,CAAC,OAAO,CAAC,MAAM,EAAE,EAAE,CAAC,CAAC,EAAE,CAAC,CAAC;IACjG,OAAO,CAAC,GAAG,CAAC,KAAK,KAAK,CAAC,MAAM,oBAAoB,CAAC,CAAC;AACrD,CAAC,CAAC,CAAC;AAEL,iBAAiB;AACjB,OAAO;KACJ,OAAO,CAAC,UAAU,CAAC;KACnB,WAAW,CAAC,oEAAoE,CAAC;KACjF,QAAQ,CAAC,QAAQ,EAAE,wBAAwB,CAAC;KAC5C,MAAM,CAAC,CAAC,IAAY,EAAE,EAAE;IACvB,IAAI,CAAC,UAAU,CAAC,IAAI,CAAC,EAAE,CAAC;QAAC,OAAO,CAAC,KAAK,CAAC,KAAK,CAAC,GAAG,CAAC,mBAAmB,IAAI,EAAE,CAAC,CAAC,CAAC;QAAC,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;IAAC,CAAC;IAChG,MAAM,GAAG,GAAG,YAAY,CAAC,IAAI,EAAE,OAAO,CAAC,CAAC;IACxC,MAAM,OAAO,GAAG,CAAC,IAAY,EAAE,EAAE;QAC/B,MAAM,CAAC,GAAG,GAAG,CAAC,KAAK,CAAC,IAAI,MAAM,CAAC,GAAG,IAAI,eAAe,CAAC,CAAC,CAAC;QACxD,OAAO,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,IAAI,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;IAC9B,CAAC,CAAC;IACF,MAAM,IAAI,GAAG;QACX,MAAM,EAAE,OAAO,CAAC,eAAe,CAAC,EAAE,WAAW,EAAE,OAAO,CAAC,qBAAqB,CAAC;QAC7E,UAAU,EAAE,OAAO,CAAC,oBAAoB,CAAC,EAAE,OAAO,EAAE,OAAO,CAAC,gBAAgB,CAAC;QAC7E,KAAK,EAAE,OAAO,CAAC,cAAc,CAAC,EAAE,QAAQ,EAAE,OAAO,CAAC,kBAAkB,CAAC;QACrE,GAAG,EAAE,OAAO,CAAC,YAAY,CAAC,EAAE,QAAQ,EAAE,OAAO,CAAC,kBAAkB,CAAC;QACjE,MAAM,EAAE,OAAO,CAAC,gBAAgB,CAAC,EAAE,MAAM,EAAE,OAAO,CAAC,eAAe,CAAC;QACnE,YAAY,EAAE,OAAO,CAAC,sBAAsB,CAAC;KAC9C,CAAC;IACF,OAAO,CAAC,GAAG,CAAC,KAAK,CAAC,IAAI,CAAC,8BAA8B,CAAC,CAAC,CAAC;IACxD,MAAM,SAAS,GAAG,gBAAgB,CAAC,GAAG,CAAC,CAAC;IACxC,OAAO,CAAC,GAAG,CAAC,SAAS,CAAC,MAAM,KAAK,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,KAAK,CAAC,sBAAsB,CAAC,CAAC,CAAC,CAAC,eAAe,CAAC,SAAS,CAAC,CAAC,CAAC;IAEvG,IAAI,CAAC,IAAI,CAAC,MAAM,EAAE,CAAC;QACjB,OAAO,CAAC,GAAG,CAAC,KAAK,CAAC,MAAM,CAAC,sEAAsE,CAAC,CAAC,CAAC;QAClG,IAAI,SAAS,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,KAAK,KAAK,MAAM,IAAI,CAAC,CAAC,KAAK,KAAK,UAAU,CAAC;YAAE,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;QACzF,OAAO;IACT,CAAC;IACD,OAAO,CAAC,GAAG,CAAC,KAAK,CAAC,IAAI,CAAC,iBAAiB,CAAC,CAAC,CAAC;IAC3C,KAAK,MAAM,CAAC,CAAC,EAAE,CAAC,CAAC,IAAI,MAAM,CAAC,OAAO,CAAC,IAAI,CAAC;QAAE,OAAO,CAAC,GAAG,CAAC,KAAK,KAAK,CAAC,GAAG,CAAC,CAAC,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;IAC5F,MAAM,MAAM,GAAG,mBAAmB,CAAC,IAAI,CAAC,CAAC;IACzC,OAAO,CAAC,GAAG,CAAC,KAAK,CAAC,IAAI,CAAC,0BAA0B,MAAM,CAAC,MAAM,WAAW,CAAC,CAAC,CAAC;IAC5E,OAAO,CAAC,GAAG,CAAC,eAAe,CAAC,MAAM,CAAC,CAAC,CAAC;IACrC,IAAI,MAAM,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,KAAK,KAAK,MAAM,IAAI,CAAC,CAAC,KAAK,KAAK,UAAU,CAAC,CAAC,MAAM,GAAG,CAAC;QAAE,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;AACrG,CAAC,CAAC,CAAC;AAEL,oBAAoB;AACpB,OAAO;KACJ,OAAO,CAAC,aAAa,CAAC;KACtB,WAAW,CAAC,wEAAwE,CAAC;KACrF,QAAQ,CAAC,SAAS,EAAE,gFAAgF,CAAC;KACrG,MAAM,CAAC,KAAK,EAAE,KAAc,EAAE,EAAE;IAC/B,MAAM,YAAY,GAAG,MAAM,gBAAgB,EAAE,CAAC;IAC9C,IAAI,WAAW,GAAwC,EAAE,CAAC;IAE1D,IAAI,KAAK,EAAE,CAAC;QACV,oCAAoC;QACpC,IAAI,cAAc,CAAC,QAAQ,CAAC,KAAY,CAAC,EAAE,CAAC;YAC1C,WAAW,CAAC,IAAI,CAAC,EAAE,IAAI,EAAE,KAAK,EAAE,KAAK,EAAE,WAAW,CAAC,KAAK,CAAC,EAAE,CAAC,CAAC;QAC/D,CAAC;QACD,6CAA6C;aACxC,IAAI,YAAY,CAAC,KAAK,CAAC,EAAE,CAAC;YAC7B,MAAM,GAAG,GAAG,YAAY,CAAC,YAAY,CAAC,KAAK,CAAC,EAAE,OAAO,CAAC,CAAC;YACvD,MAAM,KAAK,GAAG,iBAAiB,CAAC,GAAG,CAAC,CAAC;YACrC,IAAI,KAAK,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;gBACvB,OAAO,CAAC,GAAG,CAAC,KAAK,CAAC,MAAM,CAAC,SAAS,KAAK,uBAAuB,CAAC,CAAC,CAAC;YACnE,CAAC;YACD,WAAW,CAAC,IAAI,CAAC,EAAE,IAAI,EAAE,GAAG,KAAK,WAAW,EAAE,KAAK,EAAE,CAAC,CAAC;QACzD,CAAC;QACD,mCAAmC;aAC9B,IAAI,UAAU,CAAC,KAAK,CAAC,IAAI,KAAK,CAAC,QAAQ,CAAC,MAAM,CAAC,EAAE,CAAC;YACrD,MAAM,GAAG,GAAG,YAAY,CAAC,KAAK,EAAE,OAAO,CAAC,CAAC;YACzC,MAAM,KAAK,GAAG,iBAAiB,CAAC,GAAG,CAAC,CAAC;YACrC,IAAI,KAAK,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;gBACvB,OAAO,CAAC,GAAG,CAAC,KAAK,CAAC,MAAM,CAAC,QAAQ,KAAK,sBAAsB,CAAC,CAAC,CAAC;YACjE,CAAC;YACD,WAAW,CAAC,IAAI,CAAC,EAAE,IAAI,EAAE,KAAK,EAAE,KAAK,EAAE,CAAC,CAAC;QAC3C,CAAC;QACD,aAAa;aACR,CAAC;YACJ,OAAO,CAAC,KAAK,CAAC,KAAK,CAAC,GAAG,CAAC,mBAAmB,KAAK,mBAAmB,cAAc,CAAC,IAAI,CAAC,IAAI,CAAC,mBAAmB,MAAM,CAAC,IAAI,CAAC,YAAY,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,IAAI,QAAQ,EAAE,CAAC,CAAC,CAAC;YACpK,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;QAClB,CAAC;IACH,CAAC;SAAM,CAAC;QACN,8DAA8D;QAC9D,KAAK,MAAM,CAAC,IAAI,MAAM,CAAC,IAAI,CAAC,WAAW,CAAC,EAAE,CAAC;YACzC,WAAW,CAAC,IAAI,CAAC,EAAE,IAAI,EAAE,CAAC,EAAE,KAAK,EAAE,WAAW,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC;QACvD,CAAC;QACD,KAAK,MAAM,CAAC,IAAI,EAAE,OAAO,CAAC,IAAI,MAAM,CAAC,OAAO,CAAC,YAAY,CAAC,EAAE,CAAC;YAC3D,MAAM,GAAG,GAAG,YAAY,CAAC,OAAO,EAAE,OAAO,CAAC,CAAC;YAC3C,MAAM,KAAK,GAAG,iBAAiB,CAAC,GAAG,CAAC,CAAC;YACrC,IAAI,KAAK,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;gBACrB,WAAW,CAAC,IAAI,CAAC,EAAE,IAAI,EAAE,GAAG,IAAI,WAAW,EAAE,KAAK,EAAE,CAAC,CAAC;YACxD,CAAC;QACH,CAAC;IACH,CAAC;IAED,OAAO,CAAC,GAAG,CAAC,KAAK,CAAC,IAAI,CAAC,cAAc,CAAC,CAAC,CAAC;IACxC,IAAI,KAAK,GAAG,CAAC,CAAC;IACd,IAAI,OAAO,GAAG,CAAC,CAAC;IAEhB,KAAK,MAAM,EAAE,IAAI,EAAE,KAAK,EAAE,IAAI,WAAW,EAAE,CAAC;QAC1C,IAAI,KAAK,CAAC,MAAM,KAAK,CAAC;YAAE,SAAS;QACjC,OAAO,CAAC,GAAG,CAAC,UAAU,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;QAC1C,KAAK,MAAM,CAAC,IAAI,KAAK,EAAE,CAAC;YACtB,KAAK,EAAE,CAAC;YACR,MAAM,MAAM,GAAG,SAAS,CAAC,CAAC,CAAC,CAAC;YAC5B,IAAI,MAAM,EAAE,CAAC;gBACX,OAAO,CAAC,GAAG,CAAC,KAAK,KAAK,CAAC,KAAK,CAAC,GAAG,CAAC,KAAK,CAAC,OAAO,MAAM,EAAE,CAAC,CAAC;YAC1D,CAAC;iBAAM,CAAC;gBACN,OAAO,CAAC,GAAG,CAAC,KAAK,KAAK,CAAC,GAAG,CAAC,GAAG,CAAC,KAAK,CAAC,SAAS,CAAC,CAAC;gBAChD,OAAO,EAAE,CAAC;YACZ,CAAC;QACH,CAAC;IACH,CAAC;IAED,OAAO,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC;IAChB,IAAI,OAAO,GAAG,CAAC,EAAE,CAAC;QAChB,OAAO,CAAC,GAAG,CAAC,GAAG,KAAK,CAAC,MAAM,CAAC,KAAK,OAAO,IAAI,KAAK,EAAE,CAAC,uBAAuB,CAAC,CAAC;QAC7E,OAAO,CAAC,GAAG,CAAC,SAAS,CAAC,CAAC;QACvB,IAAI,OAAO,CAAC,QAAQ,KAAK,OAAO,EAAE,CAAC;YACjC,OAAO,CAAC,GAAG,CAAC,qEAAqE,CAAC,CAAC;QACrF,CAAC;aAAM,IAAI,OAAO,CAAC,QAAQ,KAAK,QAAQ,EAAE,CAAC;YACzC,OAAO,CAAC,GAAG,CAAC,0CAA0C,CAAC,CAAC;YACxD,OAAO,CAAC,GAAG,CAAC,gDAAgD,CAAC,CAAC;QAChE,CAAC;aAAM,CAAC;YACN,OAAO,CAAC,GAAG,CAAC,+DAA+D,CAAC,CAAC;QAC/E,CAAC;QACD,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;IAClB,CAAC;SAAM,CAAC;QACN,OAAO,CAAC,GAAG,CAAC,KAAK,CAAC,KAAK,CAAC,cAAc,CAAC,CAAC,CAAC;IAC3C,CAAC;AACH,CAAC,CAAC,CAAC;AAEL,qEAAqE;AACrE,sBAAsB,CAAC,OAAO,CAAC,CAAC;AAEhC,gBAAgB;AAEhB,SAAS,YAAY,CAAC,KAAiB;IACrC,MAAM,CAAC,GAAG,KAAK,CAAC,IAAI,CAAC;IACrB,OAAO,CAAC,GAAG,CAAC,KAAK,CAAC,GAAG,CAAC,mBAAmB,CAAC,CAAC,CAAC;IAC5C,OAAO,CAAC,GAAG,CAAC,KAAK,KAAK,CAAC,KAAK,CAAC,UAAU,CAAC,IAAI,CAAC,CAAC,OAAO,KAAK,KAAK,CAAC,KAAK,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC,GAAG,KAAK,KAAK,CAAC,KAAK,CAAC,SAAS,CAAC,IAAI,CAAC,CAAC,MAAM,EAAE,CAAC,CAAC;IACjI,OAAO,CAAC,GAAG,CAAC,KAAK,KAAK,CAAC,KAAK,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAC,KAAK,KAAK,KAAK,CAAC,KAAK,CAAC,YAAY,CAAC,IAAI,CAAC,CAAC,QAAQ,EAAE,CAAC,CAAC;IACjG,IAAI,KAAK,CAAC,aAAa,EAAE,CAAC;QACxB,OAAO,CAAC,GAAG,CAAC,KAAK,CAAC,GAAG,CAAC,mBAAmB,KAAK,CAAC,aAAa,EAAE,CAAC,CAAC,CAAC;IACnE,CAAC;AACH,CAAC;AAED,MAAM,UAAU,IAAI,KAAW,OAAO,CAAC,KAAK,EAAE,CAAC,CAAC,CAAC;AACjD,IAAI,EAAE,CAAC"}
|
package/dist/color-utils.d.ts
CHANGED
|
@@ -6,4 +6,5 @@ export declare function darken(hex: string, factor?: number): string;
|
|
|
6
6
|
export declare function toRgba(hex: string, alpha?: number): string;
|
|
7
7
|
export declare function rgbToHsl(r: number, g: number, b: number): [number, number, number];
|
|
8
8
|
export declare function deriveSyntaxColors(baseHex: string): Record<string, string>;
|
|
9
|
+
export declare function sanitizeCssString(value: string): string;
|
|
9
10
|
export declare function normalizeThemeStyle(style: import("./models.js").ThemeStyle): void;
|
package/dist/color-utils.js
CHANGED
|
@@ -1,13 +1,19 @@
|
|
|
1
1
|
/** Color manipulation utilities. */
|
|
2
2
|
export function hexToRgb(hex) {
|
|
3
|
-
|
|
3
|
+
const trimmed = hex.replace(/^#/, "").trim();
|
|
4
|
+
if (!/^[0-9a-fA-F]{6}$/.test(trimmed) && !/^[0-9a-fA-F]{3}$/.test(trimmed)) {
|
|
5
|
+
throw new Error(`Invalid hex color: "${hex}"`);
|
|
6
|
+
}
|
|
7
|
+
hex = trimmed;
|
|
4
8
|
if (hex.length === 3)
|
|
5
9
|
hex = hex.split("").map((c) => c + c).join("");
|
|
6
|
-
|
|
7
|
-
|
|
8
|
-
|
|
9
|
-
|
|
10
|
-
|
|
10
|
+
const r = parseInt(hex.substring(0, 2), 16);
|
|
11
|
+
const g = parseInt(hex.substring(2, 4), 16);
|
|
12
|
+
const b = parseInt(hex.substring(4, 6), 16);
|
|
13
|
+
if ([r, g, b].some((v) => Number.isNaN(v))) {
|
|
14
|
+
throw new Error(`Invalid hex color: "${hex}"`);
|
|
15
|
+
}
|
|
16
|
+
return [r, g, b];
|
|
11
17
|
}
|
|
12
18
|
export function rgbToHex(r, g, b) {
|
|
13
19
|
const clamp = (v) => Math.max(0, Math.min(255, Math.round(v)));
|
|
@@ -86,6 +92,10 @@ export function deriveSyntaxColors(baseHex) {
|
|
|
86
92
|
};
|
|
87
93
|
}
|
|
88
94
|
}
|
|
95
|
+
export function sanitizeCssString(value) {
|
|
96
|
+
// Remove HTML-injection vectors while preserving CSS syntax (quotes, spaces, commas)
|
|
97
|
+
return value.replace(/[<>]/g, "");
|
|
98
|
+
}
|
|
89
99
|
export function normalizeThemeStyle(style) {
|
|
90
100
|
const p = style.palette;
|
|
91
101
|
const t = style.typography;
|
|
@@ -100,6 +110,15 @@ export function normalizeThemeStyle(style) {
|
|
|
100
110
|
p.selectionBg = toRgba(p.accentColor);
|
|
101
111
|
if (!t.headingFontFamily)
|
|
102
112
|
t.headingFontFamily = t.bodyFontFamily;
|
|
113
|
+
// Sanitize font stacks to prevent CSS injection via crafted input
|
|
114
|
+
if (t.bodyFontFamily)
|
|
115
|
+
t.bodyFontFamily = sanitizeCssString(t.bodyFontFamily);
|
|
116
|
+
if (t.headingFontFamily)
|
|
117
|
+
t.headingFontFamily = sanitizeCssString(t.headingFontFamily);
|
|
118
|
+
if (t.codeFontFamily)
|
|
119
|
+
t.codeFontFamily = sanitizeCssString(t.codeFontFamily);
|
|
120
|
+
if (style.seedTypography.fontMermaid)
|
|
121
|
+
style.seedTypography.fontMermaid = sanitizeCssString(style.seedTypography.fontMermaid);
|
|
103
122
|
if (!s.comment) {
|
|
104
123
|
const derived = deriveSyntaxColors(p.codeBlockText);
|
|
105
124
|
for (const [key, value] of Object.entries(derived)) {
|
package/dist/color-utils.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"color-utils.js","sourceRoot":"","sources":["../src/color-utils.ts"],"names":[],"mappings":"AAAA,oCAAoC;AAEpC,MAAM,UAAU,QAAQ,CAAC,GAAW;IAClC,
|
|
1
|
+
{"version":3,"file":"color-utils.js","sourceRoot":"","sources":["../src/color-utils.ts"],"names":[],"mappings":"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"}
|
|
@@ -14,7 +14,7 @@
|
|
|
14
14
|
* - 层级2:格式特征检测(等宽文本 = 代码块)
|
|
15
15
|
* - 层级3:DocxStyleParadigm 标准参考值 fallback
|
|
16
16
|
*/
|
|
17
|
-
import { readFileSync } from "node:fs";
|
|
17
|
+
import { readFileSync, statSync } from "node:fs";
|
|
18
18
|
import { basename } from "node:path";
|
|
19
19
|
import { makeThemeStyle, } from "../models.js";
|
|
20
20
|
import { normalizeThemeStyle } from "../color-utils.js";
|
|
@@ -26,6 +26,11 @@ export class PdfExtractor {
|
|
|
26
26
|
async extract(source) {
|
|
27
27
|
const name = basename(source).replace(/\.pdf$/i, "");
|
|
28
28
|
const theme = makeThemeStyle(name, "pdf", source);
|
|
29
|
+
const MAX_PDF_BYTES = 50 * 1024 * 1024;
|
|
30
|
+
const stats = statSync(source);
|
|
31
|
+
if (stats.size > MAX_PDF_BYTES) {
|
|
32
|
+
throw new Error(`PDF file too large (${(stats.size / 1024 / 1024).toFixed(1)} MB). Maximum allowed: 50 MB.`);
|
|
33
|
+
}
|
|
29
34
|
try {
|
|
30
35
|
const pdfParse = (await import("pdf-parse")).default;
|
|
31
36
|
const buffer = readFileSync(source);
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"pdf-extractor.js","sourceRoot":"","sources":["../../src/extractors/pdf-extractor.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"pdf-extractor.js","sourceRoot":"","sources":["../../src/extractors/pdf-extractor.ts"],"names":[],"mappings":"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"}
|
|
@@ -70,10 +70,6 @@ export declare class UrlExtractor implements Extractor {
|
|
|
70
70
|
* 应用 DocxStyleParadigm 标准参考值填充缺失字段
|
|
71
71
|
*/
|
|
72
72
|
private applyParadigmDefaults;
|
|
73
|
-
/**
|
|
74
|
-
* 将 ThemeStyle 转换为 DocumentStyleParadigm 用于 WCAG 验证
|
|
75
|
-
*/
|
|
76
|
-
private themeToParadigm;
|
|
77
73
|
/**
|
|
78
74
|
* 为一组选择器查找匹配的 CSS 规则并合并结果
|
|
79
75
|
* 优先级:更具体的选择器 > 更通用的选择器 > 内联样式
|
|
@@ -21,6 +21,7 @@ import { parse, walk, generate } from "css-tree";
|
|
|
21
21
|
import { makeThemeStyle, } from "../models.js";
|
|
22
22
|
import { normalizeThemeStyle } from "../color-utils.js";
|
|
23
23
|
import { ACADEMIC_PAPER_DEFAULTS, getRecommendedPreset, validateDocumentStyle, } from "../docx-style-paradigm.js";
|
|
24
|
+
import { themeToParadigm, logExtractorWarnings } from "../utils/document-paradigm.js";
|
|
24
25
|
export class UrlExtractor {
|
|
25
26
|
canHandle(source) {
|
|
26
27
|
return /^https?:\/\//i.test(source);
|
|
@@ -45,28 +46,18 @@ export class UrlExtractor {
|
|
|
45
46
|
// Block private network ranges to prevent SSRF
|
|
46
47
|
const hostname = parsed.hostname.toLowerCase();
|
|
47
48
|
const isPrivate = hostname === "localhost" ||
|
|
48
|
-
hostname === "
|
|
49
|
+
hostname === "0.0.0.0" ||
|
|
50
|
+
/^127\./.test(hostname) ||
|
|
49
51
|
hostname === "::1" ||
|
|
50
52
|
hostname === "[::1]" ||
|
|
51
|
-
hostname
|
|
52
|
-
hostname
|
|
53
|
-
|
|
54
|
-
hostname
|
|
55
|
-
hostname
|
|
56
|
-
|
|
57
|
-
hostname
|
|
58
|
-
hostname
|
|
59
|
-
hostname.startsWith("172.23.") ||
|
|
60
|
-
hostname.startsWith("172.24.") ||
|
|
61
|
-
hostname.startsWith("172.25.") ||
|
|
62
|
-
hostname.startsWith("172.26.") ||
|
|
63
|
-
hostname.startsWith("172.27.") ||
|
|
64
|
-
hostname.startsWith("172.28.") ||
|
|
65
|
-
hostname.startsWith("172.29.") ||
|
|
66
|
-
hostname.startsWith("172.30.") ||
|
|
67
|
-
hostname.startsWith("172.31.") ||
|
|
68
|
-
hostname.startsWith("192.168.") ||
|
|
69
|
-
hostname.startsWith("169.254.");
|
|
53
|
+
hostname === "::" ||
|
|
54
|
+
/^10\./.test(hostname) ||
|
|
55
|
+
/^172\.(1[6-9]|2\d|3[01])\./.test(hostname) ||
|
|
56
|
+
/^192\.168\./.test(hostname) ||
|
|
57
|
+
/^169\.254\./.test(hostname) ||
|
|
58
|
+
/^100\.(6[4-9]|7\d|8\d|9\d|1[01]\d|12[0-7])\./.test(hostname) ||
|
|
59
|
+
/^\[?fc/.test(hostname) ||
|
|
60
|
+
/^fe[89ab]/.test(hostname);
|
|
70
61
|
if (isPrivate) {
|
|
71
62
|
throw new Error(`Private network access denied: ${hostname}. Only public URLs are allowed for security reasons.`);
|
|
72
63
|
}
|
|
@@ -493,112 +484,8 @@ export class UrlExtractor {
|
|
|
493
484
|
st.fontScaleH2 = preset.headings.h2.fontSize / 16;
|
|
494
485
|
if (st.fontScaleH3 < st.fontScaleH2 * 0.85)
|
|
495
486
|
st.fontScaleH3 = preset.headings.h3.fontSize / 16;
|
|
496
|
-
const issues = validateDocumentStyle(
|
|
497
|
-
|
|
498
|
-
if (issue.level === "error") {
|
|
499
|
-
console.warn(`[UrlExtractor] ${issue.element}: ${issue.message}`);
|
|
500
|
-
}
|
|
501
|
-
}
|
|
502
|
-
}
|
|
503
|
-
/**
|
|
504
|
-
* 将 ThemeStyle 转换为 DocumentStyleParadigm 用于 WCAG 验证
|
|
505
|
-
*/
|
|
506
|
-
themeToParadigm(theme) {
|
|
507
|
-
return {
|
|
508
|
-
pageBackground: theme.palette.bgColor,
|
|
509
|
-
headings: {
|
|
510
|
-
h1: {
|
|
511
|
-
fontFamily: theme.seedTypography.fontHeading,
|
|
512
|
-
fontSize: 16 * theme.seedTypography.fontScaleH1,
|
|
513
|
-
fontWeight: theme.typography.headingWeight,
|
|
514
|
-
color: theme.palette.headingColor,
|
|
515
|
-
lineHeight: theme.seedTypography.lineHeightHeading,
|
|
516
|
-
},
|
|
517
|
-
h2: {
|
|
518
|
-
fontFamily: theme.seedTypography.fontHeading,
|
|
519
|
-
fontSize: 16 * theme.seedTypography.fontScaleH2,
|
|
520
|
-
fontWeight: Math.max(600, theme.typography.headingWeight - 100),
|
|
521
|
-
color: theme.palette.headingColor,
|
|
522
|
-
lineHeight: theme.seedTypography.lineHeightHeading,
|
|
523
|
-
},
|
|
524
|
-
h3: {
|
|
525
|
-
fontFamily: theme.seedTypography.fontHeading,
|
|
526
|
-
fontSize: 16 * theme.seedTypography.fontScaleH3,
|
|
527
|
-
fontWeight: 600,
|
|
528
|
-
color: theme.palette.headingColor,
|
|
529
|
-
lineHeight: theme.seedTypography.lineHeightHeading + 0.05,
|
|
530
|
-
},
|
|
531
|
-
h4: {
|
|
532
|
-
fontFamily: theme.seedTypography.fontHeading,
|
|
533
|
-
fontSize: 16 * theme.seedTypography.fontScaleH4,
|
|
534
|
-
fontWeight: 600,
|
|
535
|
-
color: theme.palette.textMuted,
|
|
536
|
-
lineHeight: theme.seedTypography.lineHeightHeading + 0.05,
|
|
537
|
-
},
|
|
538
|
-
h5: {
|
|
539
|
-
fontFamily: theme.seedTypography.fontHeading,
|
|
540
|
-
fontSize: 16 * theme.seedTypography.fontScaleH5,
|
|
541
|
-
fontWeight: 500,
|
|
542
|
-
color: theme.palette.textMuted,
|
|
543
|
-
lineHeight: theme.seedTypography.lineHeightBody - 0.25,
|
|
544
|
-
},
|
|
545
|
-
h6: {
|
|
546
|
-
fontFamily: theme.seedTypography.fontHeading,
|
|
547
|
-
fontSize: 16 * theme.seedTypography.fontScaleH6,
|
|
548
|
-
fontWeight: 500,
|
|
549
|
-
color: theme.palette.textMuted,
|
|
550
|
-
lineHeight: theme.seedTypography.lineHeightBody - 0.2,
|
|
551
|
-
},
|
|
552
|
-
},
|
|
553
|
-
body: {
|
|
554
|
-
fontFamily: theme.seedTypography.fontBody,
|
|
555
|
-
fontSize: parseInt(theme.typography.baseFontSize) || 16,
|
|
556
|
-
fontWeight: 400,
|
|
557
|
-
color: theme.palette.textColor,
|
|
558
|
-
lineHeight: theme.typography.baseLineHeight,
|
|
559
|
-
},
|
|
560
|
-
blockquote: {
|
|
561
|
-
fontFamily: theme.seedTypography.fontBody,
|
|
562
|
-
fontSize: Math.max(13, (parseInt(theme.typography.baseFontSize) || 16) - 2),
|
|
563
|
-
fontWeight: 400,
|
|
564
|
-
color: theme.palette.textMuted,
|
|
565
|
-
lineHeight: theme.typography.baseLineHeight - 0.15,
|
|
566
|
-
borderLeftColor: theme.palette.blockquoteBorder,
|
|
567
|
-
bgColor: theme.palette.blockquoteBg,
|
|
568
|
-
},
|
|
569
|
-
codeBlock: {
|
|
570
|
-
fontFamily: theme.typography.codeFontFamily,
|
|
571
|
-
fontSize: Math.max(12, (parseInt(theme.typography.baseFontSize) || 16) - 3),
|
|
572
|
-
fontWeight: 400,
|
|
573
|
-
color: theme.palette.codeBlockText || theme.palette.textColor,
|
|
574
|
-
lineHeight: theme.seedTypography.lineHeightCode,
|
|
575
|
-
bgColor: theme.palette.codeBlockBg,
|
|
576
|
-
},
|
|
577
|
-
inlineCode: {
|
|
578
|
-
fontSize: Math.max(12, (parseInt(theme.typography.baseFontSize) || 16) - 3),
|
|
579
|
-
color: theme.palette.accentColor,
|
|
580
|
-
bgColor: theme.palette.codeBg,
|
|
581
|
-
},
|
|
582
|
-
table: {
|
|
583
|
-
headerFontFamily: theme.seedTypography.fontHeading,
|
|
584
|
-
headerFontSize: Math.max(12, (parseInt(theme.typography.baseFontSize) || 16) - 3),
|
|
585
|
-
headerFontWeight: 700,
|
|
586
|
-
headerColor: "#ffffff",
|
|
587
|
-
headerBgColor: theme.palette.tableHeaderBg,
|
|
588
|
-
headerLineHeight: 1.4,
|
|
589
|
-
cellFontFamily: theme.seedTypography.fontBody,
|
|
590
|
-
cellFontSize: Math.max(11, (parseInt(theme.typography.baseFontSize) || 16) - 4),
|
|
591
|
-
cellColor: theme.palette.textColor,
|
|
592
|
-
cellBgColor: theme.palette.bgColor,
|
|
593
|
-
cellLineHeight: 1.5,
|
|
594
|
-
cellPadding: "8px 12px",
|
|
595
|
-
borderColor: theme.palette.borderColor,
|
|
596
|
-
borderWidth: "1px",
|
|
597
|
-
},
|
|
598
|
-
accentColor: theme.palette.accentColor,
|
|
599
|
-
mutedTextColor: theme.palette.textMuted,
|
|
600
|
-
selectionBg: theme.palette.selectionBg,
|
|
601
|
-
};
|
|
487
|
+
const issues = validateDocumentStyle(themeToParadigm(theme));
|
|
488
|
+
logExtractorWarnings("UrlExtractor", issues.filter((i) => i.level === "error"));
|
|
602
489
|
}
|
|
603
490
|
// ═══════════════════════════════════════════════════════════
|
|
604
491
|
// 工具方法:CSS 属性解析与规范化
|