gutterpress 0.10.2-alpha.1 → 0.10.2-alpha.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/dist/api/index.js +2 -2
- package/dist/{audit-e3xvt6vj.js → audit-qz3np6k3.js} +4 -4
- package/dist/{build-epz7zqcc.js → build-41eds5kk.js} +5 -5
- package/dist/{cli-6qhw9v08.js → cli-c2yvktan.js} +3 -3
- package/dist/{cli-nrv3gzz9.js → cli-daahjr6z.js} +1 -1
- package/dist/{cli-yzf38679.js → cli-pfpb1t3h.js} +1 -1
- package/dist/{cli-wrt39m23.js → cli-w3spkryk.js} +6 -6
- package/dist/{cli-mnekrb8s.js → cli-wef7qh62.js} +1 -1
- package/dist/cli.js +15 -15
- package/dist/{doctor-236cwssq.js → doctor-dqmz9wr7.js} +2 -2
- package/dist/engine/shared/margin-box-support.d.ts +1 -1
- package/dist/{engine-9m8k1mfz.js → engine-36jts441.js} +1 -1
- package/dist/{engine-e1ycm5p9.js → engine-qg5tdaqv.js} +2 -2
- package/dist/{index-ahzftp35.js → index-5vfsbjwz.js} +5 -5
- package/dist/{index-n252zv7d.js → index-my3v298z.js} +1 -1
- package/dist/{index-y7jbczsb.js → index-wbm6p5j3.js} +3 -3
- package/dist/index.js +3 -3
- package/dist/lib/asset-inline.d.ts +2 -2
- package/dist/lib/build-runner.d.ts +6 -7
- package/dist/lib/cli-args.d.ts +4 -5
- package/dist/lib/engine.d.ts +3 -3
- package/dist/lib/markdown/gutterpress-css.d.ts +5 -10
- package/dist/lib/markdown/markers.d.ts +4 -6
- package/dist/lib/markdown/source-range.d.ts +1 -1
- package/dist/{lint-e36t5jz3.js → lint-67xx8zms.js} +4 -4
- package/dist/{manifest.schema-zxgxnbg7.json → manifest.schema-084rxtwp.json} +3 -3
- package/dist/{new-8jhvnqzp.js → new-a4052xsg.js} +4 -4
- package/dist/{plugin-2390rtn1.js → plugin-n4b7b0nx.js} +4 -4
- package/dist/{preflight-bvtf28e4.js → preflight-7201sv7c.js} +4 -4
- package/dist/{preview-37g504pr.js → preview-ez7yfe8p.js} +5 -5
- package/dist/{preview-interface-2f5v96hd.js → preview-interface-9rwz21yw.js} +2 -2
- package/dist/{preview-shell-kyjq59d9.js → preview-shell-gqnc5xxe.js} +3 -5
- package/dist/{publish-v1gc8zm4.js → publish-thxa0cz7.js} +4 -4
- package/dist/schema/manifest.types.d.ts +4 -5
- package/dist/types.d.ts +2 -2
- package/dist/{validate-5yzb2qzq.js → validate-0tbsdxz2.js} +4 -4
- package/package.json +1 -1
package/dist/api/index.js
CHANGED
|
@@ -95,12 +95,12 @@ import {
|
|
|
95
95
|
syncProject,
|
|
96
96
|
testRemoteAccess,
|
|
97
97
|
validateProjectPlugins
|
|
98
|
-
} from "../index-
|
|
98
|
+
} from "../index-5vfsbjwz.js";
|
|
99
99
|
import {
|
|
100
100
|
BuildError,
|
|
101
101
|
DEFAULT_PRINT_OPTS,
|
|
102
102
|
readyProbeExpr
|
|
103
|
-
} from "../index-
|
|
103
|
+
} from "../index-wbm6p5j3.js";
|
|
104
104
|
import {
|
|
105
105
|
AUTO_SNAPSHOT_MESSAGE,
|
|
106
106
|
HISTORY_PAGE_LIMIT,
|
|
@@ -1,15 +1,15 @@
|
|
|
1
1
|
import {
|
|
2
2
|
executeAndReport
|
|
3
|
-
} from "./cli-
|
|
3
|
+
} from "./cli-w3spkryk.js";
|
|
4
4
|
import {
|
|
5
5
|
log
|
|
6
|
-
} from "./cli-
|
|
6
|
+
} from "./cli-wef7qh62.js";
|
|
7
7
|
import {
|
|
8
8
|
UsageError,
|
|
9
9
|
rejectExtraPositionals,
|
|
10
10
|
rejectUnknownFlags
|
|
11
|
-
} from "./cli-
|
|
12
|
-
import"./cli-
|
|
11
|
+
} from "./cli-daahjr6z.js";
|
|
12
|
+
import"./cli-c2yvktan.js";
|
|
13
13
|
import"./cli-c41yr7he.js";
|
|
14
14
|
import {
|
|
15
15
|
EXIT_CODES
|
|
@@ -1,10 +1,10 @@
|
|
|
1
1
|
import {
|
|
2
2
|
runBuild,
|
|
3
3
|
splitOutPath
|
|
4
|
-
} from "./cli-
|
|
4
|
+
} from "./cli-w3spkryk.js";
|
|
5
5
|
import {
|
|
6
6
|
log
|
|
7
|
-
} from "./cli-
|
|
7
|
+
} from "./cli-wef7qh62.js";
|
|
8
8
|
import {
|
|
9
9
|
UsageError,
|
|
10
10
|
parseEngine,
|
|
@@ -12,8 +12,8 @@ import {
|
|
|
12
12
|
parsePdfxFlavor,
|
|
13
13
|
rejectExtraPositionals,
|
|
14
14
|
rejectUnknownFlags
|
|
15
|
-
} from "./cli-
|
|
16
|
-
import"./cli-
|
|
15
|
+
} from "./cli-daahjr6z.js";
|
|
16
|
+
import"./cli-c2yvktan.js";
|
|
17
17
|
import"./cli-c41yr7he.js";
|
|
18
18
|
import {
|
|
19
19
|
BuildError
|
|
@@ -38,7 +38,7 @@ var commandArgs = {
|
|
|
38
38
|
"skip-pre-validate": { type: "boolean", description: "Skip pre-build validation" },
|
|
39
39
|
"skip-post-validate": { type: "boolean", description: "Skip post-build PDF/X validation" },
|
|
40
40
|
"allow-shrink": { type: "boolean", description: "Build anyway when content is wider than the page content box, instead of failing. Chromium then scales the WHOLE book down to fit; each offender is reported as a warning." },
|
|
41
|
-
engine: { type: "string", description: "Pagination engine.
|
|
41
|
+
engine: { type: "string", description: "Pagination engine. Native is the only engine. This flag is accepted but ignored (a warning fires for --engine paged)." }
|
|
42
42
|
};
|
|
43
43
|
var build_default = defineCommand({
|
|
44
44
|
meta: {
|
|
@@ -1430,16 +1430,16 @@ import { fileURLToPath } from "node:url";
|
|
|
1430
1430
|
var favicon_default = "./favicon-wkbm9cjn.ico";
|
|
1431
1431
|
|
|
1432
1432
|
// src/assets/manifest.schema.json
|
|
1433
|
-
var manifest_schema_default = "./manifest.schema-
|
|
1433
|
+
var manifest_schema_default = "./manifest.schema-084rxtwp.json";
|
|
1434
1434
|
|
|
1435
1435
|
// src/assets/preview/scripts/preview-interface.js
|
|
1436
|
-
var preview_interface_default = "./preview-interface-
|
|
1436
|
+
var preview_interface_default = "./preview-interface-9rwz21yw.js";
|
|
1437
1437
|
|
|
1438
1438
|
// src/assets/preview/scripts/preview-bridge.js
|
|
1439
1439
|
var preview_bridge_default = "./preview-bridge-2nnrs2hy.js";
|
|
1440
1440
|
|
|
1441
1441
|
// src/assets/preview/scripts/preview-shell.js
|
|
1442
|
-
var preview_shell_default = "./preview-shell-
|
|
1442
|
+
var preview_shell_default = "./preview-shell-gqnc5xxe.js";
|
|
1443
1443
|
|
|
1444
1444
|
// profiles/CGATS21_CRPC1.icc
|
|
1445
1445
|
var CGATS21_CRPC1_default = "./CGATS21_CRPC1-g0e3k7kr.icc";
|
|
@@ -4,7 +4,7 @@ import {
|
|
|
4
4
|
// package.json
|
|
5
5
|
var package_default = {
|
|
6
6
|
name: "gutterpress",
|
|
7
|
-
version: "0.10.2-alpha.
|
|
7
|
+
version: "0.10.2-alpha.2",
|
|
8
8
|
description: "Markdown-to-PDF converter for professional print layout using a native Chromium print engine and Ghostscript.",
|
|
9
9
|
author: "itlackey",
|
|
10
10
|
license: "MPL-2.0",
|
|
@@ -22,7 +22,7 @@ var previewArgs = {
|
|
|
22
22
|
"skip-pre-validate": { type: "boolean", description: "Skip pre-build validation (pdf|pdfx only)" },
|
|
23
23
|
"skip-post-validate": { type: "boolean", description: "Skip post-build PDF/X validation (pdfx only)" },
|
|
24
24
|
"allow-shrink": { type: "boolean", description: "Build anyway when content is wider than the page content box, instead of failing. Chromium then scales the WHOLE book down to fit; the scale and each offender are reported as warnings. (pdf|pdfx only)" },
|
|
25
|
-
engine: { type: "string", description: "Pagination engine.
|
|
25
|
+
engine: { type: "string", description: "Pagination engine. Native is the only engine. This flag is accepted but ignored (a warning fires for --engine paged)." }
|
|
26
26
|
};
|
|
27
27
|
|
|
28
28
|
export { previewArgs };
|
|
@@ -13,12 +13,12 @@ import {
|
|
|
13
13
|
stampCreator,
|
|
14
14
|
stripAnnotations,
|
|
15
15
|
warn
|
|
16
|
-
} from "./cli-
|
|
16
|
+
} from "./cli-wef7qh62.js";
|
|
17
17
|
import {
|
|
18
18
|
DEBOUNCE,
|
|
19
19
|
UsageError,
|
|
20
20
|
resolvePort
|
|
21
|
-
} from "./cli-
|
|
21
|
+
} from "./cli-daahjr6z.js";
|
|
22
22
|
import {
|
|
23
23
|
MARGIN_BOX_IGNORED_PROPERTIES,
|
|
24
24
|
RENDER_TIMEOUT_MS,
|
|
@@ -27,7 +27,7 @@ import {
|
|
|
27
27
|
getAssetPath,
|
|
28
28
|
getBrowser,
|
|
29
29
|
prewarmBrowser
|
|
30
|
-
} from "./cli-
|
|
30
|
+
} from "./cli-c2yvktan.js";
|
|
31
31
|
import {
|
|
32
32
|
INSTALL_HINTS,
|
|
33
33
|
execCapture,
|
|
@@ -466,10 +466,10 @@ function resolveWithPreset(cliOverrides, manifest, preset) {
|
|
|
466
466
|
throw new UsageError(`Unknown engine "${String(requestedEngine)}". Expected: paged | native`);
|
|
467
467
|
}
|
|
468
468
|
if (requestedEngine === "paged") {
|
|
469
|
-
warnOnce("engine-paged-removed", "[gutterpress]
|
|
469
|
+
warnOnce("engine-paged-removed", "[gutterpress] The native engine is the only engine. " + '"engine: paged" is ignored — building natively.');
|
|
470
470
|
}
|
|
471
471
|
if ((m.engineStyles?.paged?.length ?? 0) > 0) {
|
|
472
|
-
warnOnce("engine-styles-paged-removed", "[gutterpress] engineStyles.paged is ignored —
|
|
472
|
+
warnOnce("engine-styles-paged-removed", "[gutterpress] engineStyles.paged is ignored — the native engine is the only engine.");
|
|
473
473
|
}
|
|
474
474
|
const engine = "native";
|
|
475
475
|
const rawPlugins = c.plugins ?? m.plugins ?? [];
|
|
@@ -7538,7 +7538,7 @@ class PdfOutput {
|
|
|
7538
7538
|
const rawPdf = pdfxMode ? path8.join(stage, "raw.pdf") : path8.resolve(pdfFile);
|
|
7539
7539
|
await fsp2.mkdir(path8.dirname(path8.resolve(pdfFile)), { recursive: true });
|
|
7540
7540
|
log.info("Rendering HTML to PDF via the Gutterpress engine (native Chromium pagination)");
|
|
7541
|
-
const { buildNativePdf } = await import("./engine-
|
|
7541
|
+
const { buildNativePdf } = await import("./engine-36jts441.js");
|
|
7542
7542
|
const engineDiagnostics = await buildNativePdf(htmlFile, rawPdf, {
|
|
7543
7543
|
title: config.title,
|
|
7544
7544
|
author: config.authors.length > 0 ? config.authors.join(", ") : undefined,
|
package/dist/cli.js
CHANGED
|
@@ -1,12 +1,12 @@
|
|
|
1
1
|
#!/usr/bin/env node
|
|
2
2
|
import {
|
|
3
3
|
previewArgs
|
|
4
|
-
} from "./cli-
|
|
4
|
+
} from "./cli-pfpb1t3h.js";
|
|
5
5
|
import {
|
|
6
6
|
UsageError,
|
|
7
7
|
package_default,
|
|
8
8
|
rejectUnknownFlags
|
|
9
|
-
} from "./cli-
|
|
9
|
+
} from "./cli-daahjr6z.js";
|
|
10
10
|
import {
|
|
11
11
|
EXIT_CODES
|
|
12
12
|
} from "./cli-46ycxe6r.js";
|
|
@@ -18,16 +18,16 @@ import {
|
|
|
18
18
|
import { defineCommand, parseArgs, runMain } from "citty";
|
|
19
19
|
import { statSync } from "node:fs";
|
|
20
20
|
var SUBCOMMANDS = {
|
|
21
|
-
new: () => import("./new-
|
|
22
|
-
preview: () => import("./preview-
|
|
23
|
-
build: () => import("./build-
|
|
24
|
-
publish: () => import("./publish-
|
|
25
|
-
lint: () => import("./lint-
|
|
26
|
-
validate: () => import("./validate-
|
|
27
|
-
audit: () => import("./audit-
|
|
28
|
-
preflight: () => import("./preflight-
|
|
29
|
-
doctor: () => import("./doctor-
|
|
30
|
-
plugin: () => import("./plugin-
|
|
21
|
+
new: () => import("./new-a4052xsg.js").then((m) => m.default),
|
|
22
|
+
preview: () => import("./preview-ez7yfe8p.js").then((m) => m.default),
|
|
23
|
+
build: () => import("./build-41eds5kk.js").then((m) => m.default),
|
|
24
|
+
publish: () => import("./publish-thxa0cz7.js").then((m) => m.default),
|
|
25
|
+
lint: () => import("./lint-67xx8zms.js").then((m) => m.default),
|
|
26
|
+
validate: () => import("./validate-0tbsdxz2.js").then((m) => m.default),
|
|
27
|
+
audit: () => import("./audit-qz3np6k3.js").then((m) => m.default),
|
|
28
|
+
preflight: () => import("./preflight-7201sv7c.js").then((m) => m.default),
|
|
29
|
+
doctor: () => import("./doctor-dqmz9wr7.js").then((m) => m.default),
|
|
30
|
+
plugin: () => import("./plugin-n4b7b0nx.js").then((m) => m.default)
|
|
31
31
|
};
|
|
32
32
|
var VERSION = package_default.version;
|
|
33
33
|
var main = defineCommand({
|
|
@@ -52,7 +52,7 @@ async function preflightRequiredInvocations(rawArgs) {
|
|
|
52
52
|
const [command, ...commandArgs] = rawArgs;
|
|
53
53
|
try {
|
|
54
54
|
if (command === "new") {
|
|
55
|
-
const { newArgs } = await import("./new-
|
|
55
|
+
const { newArgs } = await import("./new-a4052xsg.js");
|
|
56
56
|
rejectUnknownFlags(commandArgs, newArgs, "new");
|
|
57
57
|
const parsed2 = parseArgs(commandArgs, {
|
|
58
58
|
...newArgs,
|
|
@@ -64,7 +64,7 @@ async function preflightRequiredInvocations(rawArgs) {
|
|
|
64
64
|
return;
|
|
65
65
|
}
|
|
66
66
|
if (command === "preflight") {
|
|
67
|
-
const { preflightArgs } = await import("./preflight-
|
|
67
|
+
const { preflightArgs } = await import("./preflight-7201sv7c.js");
|
|
68
68
|
rejectUnknownFlags(commandArgs, preflightArgs, "preflight");
|
|
69
69
|
const parsed2 = parseArgs(commandArgs, {
|
|
70
70
|
...preflightArgs,
|
|
@@ -88,7 +88,7 @@ async function preflightRequiredInvocations(rawArgs) {
|
|
|
88
88
|
if (subcommand !== "add") {
|
|
89
89
|
throw new UsageError(`gutterpress plugin: unknown command "${subcommand}"`);
|
|
90
90
|
}
|
|
91
|
-
const { pluginAddArgs } = await import("./plugin-
|
|
91
|
+
const { pluginAddArgs } = await import("./plugin-n4b7b0nx.js");
|
|
92
92
|
rejectUnknownFlags(subcommandArgs, pluginAddArgs, "plugin add");
|
|
93
93
|
const parsed = parseArgs(subcommandArgs, {
|
|
94
94
|
...pluginAddArgs,
|
|
@@ -1,12 +1,12 @@
|
|
|
1
1
|
import {
|
|
2
2
|
getSystemDiagnostics,
|
|
3
3
|
log
|
|
4
|
-
} from "./cli-
|
|
4
|
+
} from "./cli-wef7qh62.js";
|
|
5
5
|
import {
|
|
6
6
|
UsageError,
|
|
7
7
|
rejectExtraPositionals,
|
|
8
8
|
rejectUnknownFlags
|
|
9
|
-
} from "./cli-
|
|
9
|
+
} from "./cli-daahjr6z.js";
|
|
10
10
|
import"./cli-c41yr7he.js";
|
|
11
11
|
import"./cli-46ycxe6r.js";
|
|
12
12
|
import"./cli-37x76zdn.js";
|
|
@@ -2,7 +2,7 @@
|
|
|
2
2
|
* Declarations Chromium accepts syntactically in `@page` margin boxes but
|
|
3
3
|
* silently drops in native print. These were measured with deliberately
|
|
4
4
|
* visible values (`rotate(-12deg)`, `6px 6px 0 #c00`) and are documented in
|
|
5
|
-
* docs/engine
|
|
5
|
+
* docs/engine/ENGINE.md §8 and docs/known-limitations.md §2.
|
|
6
6
|
*
|
|
7
7
|
* The line is what the property PAINTS, not the property family: everything
|
|
8
8
|
* that establishes a stacking context or paints outside the border box is
|
|
@@ -1,13 +1,13 @@
|
|
|
1
1
|
import {
|
|
2
2
|
build
|
|
3
|
-
} from "./index-
|
|
3
|
+
} from "./index-my3v298z.js";
|
|
4
4
|
import {
|
|
5
5
|
BuildError,
|
|
6
6
|
RENDER_TIMEOUT_MS,
|
|
7
7
|
assertMilestone,
|
|
8
8
|
connectChromium,
|
|
9
9
|
getBrowser
|
|
10
|
-
} from "./index-
|
|
10
|
+
} from "./index-wbm6p5j3.js";
|
|
11
11
|
import"./index-37x76zdn.js";
|
|
12
12
|
|
|
13
13
|
// src/lib/engine.ts
|
|
@@ -17,7 +17,7 @@ import {
|
|
|
17
17
|
resolveChromiumExecutable,
|
|
18
18
|
run,
|
|
19
19
|
spawnCapture
|
|
20
|
-
} from "./index-
|
|
20
|
+
} from "./index-wbm6p5j3.js";
|
|
21
21
|
import {
|
|
22
22
|
gitFs,
|
|
23
23
|
gitScopeFor,
|
|
@@ -503,10 +503,10 @@ function resolveWithPreset(cliOverrides, manifest, preset) {
|
|
|
503
503
|
throw new UsageError(`Unknown engine "${String(requestedEngine)}". Expected: paged | native`);
|
|
504
504
|
}
|
|
505
505
|
if (requestedEngine === "paged") {
|
|
506
|
-
warnOnce("engine-paged-removed", "[gutterpress]
|
|
506
|
+
warnOnce("engine-paged-removed", "[gutterpress] The native engine is the only engine. " + '"engine: paged" is ignored — building natively.');
|
|
507
507
|
}
|
|
508
508
|
if ((m.engineStyles?.paged?.length ?? 0) > 0) {
|
|
509
|
-
warnOnce("engine-styles-paged-removed", "[gutterpress] engineStyles.paged is ignored —
|
|
509
|
+
warnOnce("engine-styles-paged-removed", "[gutterpress] engineStyles.paged is ignored — the native engine is the only engine.");
|
|
510
510
|
}
|
|
511
511
|
const engine = "native";
|
|
512
512
|
const rawPlugins = c.plugins ?? m.plugins ?? [];
|
|
@@ -3978,7 +3978,7 @@ import git from "isomorphic-git";
|
|
|
3978
3978
|
// package.json
|
|
3979
3979
|
var package_default = {
|
|
3980
3980
|
name: "gutterpress",
|
|
3981
|
-
version: "0.10.2-alpha.
|
|
3981
|
+
version: "0.10.2-alpha.2",
|
|
3982
3982
|
description: "Markdown-to-PDF converter for professional print layout using a native Chromium print engine and Ghostscript.",
|
|
3983
3983
|
author: "itlackey",
|
|
3984
3984
|
license: "MPL-2.0",
|
|
@@ -8033,7 +8033,7 @@ class PdfOutput {
|
|
|
8033
8033
|
const rawPdf = pdfxMode ? path8.join(stage, "raw.pdf") : path8.resolve(pdfFile);
|
|
8034
8034
|
await fsp2.mkdir(path8.dirname(path8.resolve(pdfFile)), { recursive: true });
|
|
8035
8035
|
log.info("Rendering HTML to PDF via the Gutterpress engine (native Chromium pagination)");
|
|
8036
|
-
const { buildNativePdf } = await import("./engine-
|
|
8036
|
+
const { buildNativePdf } = await import("./engine-qg5tdaqv.js");
|
|
8037
8037
|
const engineDiagnostics = await buildNativePdf(htmlFile, rawPdf, {
|
|
8038
8038
|
title: config.title,
|
|
8039
8039
|
author: config.authors.length > 0 ? config.authors.join(", ") : undefined,
|
|
@@ -593,16 +593,16 @@ import { fileURLToPath } from "node:url";
|
|
|
593
593
|
var favicon_default = "./favicon-wkbm9cjn.ico";
|
|
594
594
|
|
|
595
595
|
// src/assets/manifest.schema.json
|
|
596
|
-
var manifest_schema_default = "./manifest.schema-
|
|
596
|
+
var manifest_schema_default = "./manifest.schema-084rxtwp.json";
|
|
597
597
|
|
|
598
598
|
// src/assets/preview/scripts/preview-interface.js
|
|
599
|
-
var preview_interface_default = "./preview-interface-
|
|
599
|
+
var preview_interface_default = "./preview-interface-9rwz21yw.js";
|
|
600
600
|
|
|
601
601
|
// src/assets/preview/scripts/preview-bridge.js
|
|
602
602
|
var preview_bridge_default = "./preview-bridge-2nnrs2hy.js";
|
|
603
603
|
|
|
604
604
|
// src/assets/preview/scripts/preview-shell.js
|
|
605
|
-
var preview_shell_default = "./preview-shell-
|
|
605
|
+
var preview_shell_default = "./preview-shell-gqnc5xxe.js";
|
|
606
606
|
|
|
607
607
|
// profiles/CGATS21_CRPC1.icc
|
|
608
608
|
var CGATS21_CRPC1_default = "./CGATS21_CRPC1-g0e3k7kr.icc";
|
package/dist/index.js
CHANGED
|
@@ -113,15 +113,15 @@ import {
|
|
|
113
113
|
syncProject,
|
|
114
114
|
testRemoteAccess,
|
|
115
115
|
validateProjectPlugins
|
|
116
|
-
} from "./index-
|
|
116
|
+
} from "./index-5vfsbjwz.js";
|
|
117
117
|
import {
|
|
118
118
|
BUILD_DIAGNOSTIC_CODES
|
|
119
|
-
} from "./index-
|
|
119
|
+
} from "./index-my3v298z.js";
|
|
120
120
|
import {
|
|
121
121
|
BuildError,
|
|
122
122
|
DEFAULT_PRINT_OPTS,
|
|
123
123
|
readyProbeExpr
|
|
124
|
-
} from "./index-
|
|
124
|
+
} from "./index-wbm6p5j3.js";
|
|
125
125
|
import {
|
|
126
126
|
AUTO_SNAPSHOT_MESSAGE,
|
|
127
127
|
HISTORY_PAGE_LIMIT,
|
|
@@ -10,8 +10,8 @@
|
|
|
10
10
|
* under a content-addressed name, whatever it weighs.
|
|
11
11
|
*
|
|
12
12
|
* A missing stylesheet or font is a build error here, at read time, rather than
|
|
13
|
-
* a 404 during pagination that
|
|
14
|
-
*
|
|
13
|
+
* a 404 during pagination that gets parsed as CSS or silently replaced with a
|
|
14
|
+
* system face.
|
|
15
15
|
*
|
|
16
16
|
* Bundle-safe (CLAUDE.md §1/§3): postcss only.
|
|
17
17
|
*/
|
|
@@ -39,10 +39,10 @@ export interface BuildRunnerOptions {
|
|
|
39
39
|
keepBrowserAlive?: boolean;
|
|
40
40
|
rawArgs: Record<string, unknown>;
|
|
41
41
|
/**
|
|
42
|
-
* CLI `--engine` override.
|
|
43
|
-
*
|
|
44
|
-
*
|
|
45
|
-
*
|
|
42
|
+
* CLI `--engine` override. The native engine is the only engine, so this is
|
|
43
|
+
* a deprecated no-op accepted for backward compatibility only: `"paged"`
|
|
44
|
+
* triggers a one-line warning (`manifest.ts`'s resolution) and the build
|
|
45
|
+
* proceeds natively regardless.
|
|
46
46
|
*/
|
|
47
47
|
engine?: "paged" | "native";
|
|
48
48
|
/**
|
|
@@ -70,9 +70,8 @@ export interface BuildRunnerResult {
|
|
|
70
70
|
/** As {@link htmlPath}: `null` when nothing but the artifact was published. */
|
|
71
71
|
fingerprintPath: string | null;
|
|
72
72
|
/**
|
|
73
|
-
* Author-facing print-quality findings from the render
|
|
74
|
-
*
|
|
75
|
-
* maps these into the Problems panel; the CLI logs them.
|
|
73
|
+
* Author-facing print-quality findings from the render. Empty for a clean
|
|
74
|
+
* build. The desktop maps these into the Problems panel; the CLI logs them.
|
|
76
75
|
*/
|
|
77
76
|
diagnostics: BuildDiagnostic[];
|
|
78
77
|
}
|
package/dist/lib/cli-args.d.ts
CHANGED
|
@@ -42,11 +42,10 @@ export declare function parseFormat(raw: unknown, opts: {
|
|
|
42
42
|
/** Parse `--pdfx-flavor`, which is only valid alongside `--format pdfx`. */
|
|
43
43
|
export declare function parsePdfxFlavor(raw: unknown, format: BuildFormat): PdfxFlavor | undefined;
|
|
44
44
|
/**
|
|
45
|
-
* Parse `--engine`, shared by `build` and `preview`.
|
|
46
|
-
*
|
|
47
|
-
*
|
|
48
|
-
*
|
|
49
|
-
* `undefined` means "not passed".
|
|
45
|
+
* Parse `--engine`, shared by `build` and `preview`. The native engine is the
|
|
46
|
+
* only engine, so this flag is an accepted-but-ignored no-op: `--engine paged`
|
|
47
|
+
* produces a one-line warning (`manifest.ts`'s resolution) and the build
|
|
48
|
+
* proceeds natively regardless. `undefined` means "not passed".
|
|
50
49
|
*/
|
|
51
50
|
export declare function parseEngine(raw: unknown): "paged" | "native" | undefined;
|
|
52
51
|
/** Parse `--port`, defaulting to {@link NETWORK.DEFAULT_PORT} (0 = OS-assigned). */
|
package/dist/lib/engine.d.ts
CHANGED
|
@@ -17,9 +17,9 @@ export interface NativePdfOptions {
|
|
|
17
17
|
allowShrink?: boolean;
|
|
18
18
|
}
|
|
19
19
|
/**
|
|
20
|
-
* Render `htmlFile` to `outPdf` via the Gutterpress engine. No HTTP staging
|
|
21
|
-
*
|
|
22
|
-
* module
|
|
20
|
+
* Render `htmlFile` to `outPdf` via the Gutterpress engine. No HTTP staging —
|
|
21
|
+
* but the pooled/pre-warmed Chromium IS reused (see module doc comment): this
|
|
22
|
+
* module never launches or closes a browser itself.
|
|
23
23
|
*
|
|
24
24
|
* Returns the build's author-facing diagnostics so the caller can surface
|
|
25
25
|
* them (the desktop Problems panel, the CLI's own output). Dropping them here
|
|
@@ -61,17 +61,12 @@
|
|
|
61
61
|
* and a plain `width: 100%` already reaches both edges —
|
|
62
62
|
* with no shrink-to-fit trigger, because nothing out-dents
|
|
63
63
|
* past the content box. MEASURED (Chromium 148, 6x4in
|
|
64
|
-
* sheet, 0.75in margins): the
|
|
65
|
-
* out-dent of the real page margins
|
|
66
|
-
*
|
|
67
|
-
* `--pagedjs-margin-left/right`) shrank the WHOLE document
|
|
68
|
-
* ~10% under native print (text run 204.4pt -> 182.9pt),
|
|
64
|
+
* sheet, 0.75in margins): the obvious alternative — a
|
|
65
|
+
* negative out-dent of the real page margins — shrank the
|
|
66
|
+
* WHOLE document ~10% (text run 204.4pt -> 182.9pt),
|
|
69
67
|
* because the shrink-to-fit trigger is the page CONTENT
|
|
70
|
-
* box, not the sheet
|
|
71
|
-
* page exists.
|
|
72
|
-
* (native-only-migration-plan.md Phase 6), so the out-dent
|
|
73
|
-
* (whose custom properties nothing sets any more, making it
|
|
74
|
-
* a permanent no-op) went with it.
|
|
68
|
+
* box, not the sheet. That failure mode is why the named
|
|
69
|
+
* page exists.
|
|
75
70
|
*
|
|
76
71
|
* KNOWN GAP: on the bleed page, native's running head/folio
|
|
77
72
|
* move onto the trim line (margin boxes are positioned by
|
|
@@ -14,12 +14,10 @@ export default function plugin(md: any, pluginOptions?: {}): void;
|
|
|
14
14
|
* page root that only shrink-wraps its text is a containing block whose
|
|
15
15
|
* `bottom` edge is the end of the PROSE, so `.gp-pin .gp-bottom` (and every
|
|
16
16
|
* hand-written `position: absolute; bottom: 0`) lands under the last
|
|
17
|
-
* paragraph instead of at the page foot.
|
|
18
|
-
*
|
|
19
|
-
*
|
|
20
|
-
*
|
|
21
|
-
* page-boundary pinning with it. Both renderers now publish the page
|
|
22
|
-
* CONTENT height as `--gp-content-h` for the page context the element is in
|
|
17
|
+
* paragraph instead of at the page foot. Nothing in a continuous document
|
|
18
|
+
* stretches a page root to the page area on its own, so both renderers
|
|
19
|
+
* publish the page CONTENT height as `--gp-content-h` for the page context
|
|
20
|
+
* the element is in
|
|
23
21
|
* (the viewer on each `.gp-strip`; the compiler on `:root` plus every
|
|
24
22
|
* `page:` assignment selector), and custom properties inherit, so this one
|
|
25
23
|
* rule reaches a page root at any wrapper depth. Undefined var (plain
|
|
@@ -12,7 +12,7 @@
|
|
|
12
12
|
* items, blockquotes, table rows, fences, footnote definitions, …).
|
|
13
13
|
* 2. `token.meta.line` — the 1-based marker line threaded onto
|
|
14
14
|
* `layout_*_open` / `layout_page_break` / `layout_column_break` tokens
|
|
15
|
-
* by `
|
|
15
|
+
* by `markers.js` (see that file's header and the
|
|
16
16
|
* `t.meta = …` assignment sites). Converted to the same half-open
|
|
17
17
|
* convention as `[line - 1, line)`.
|
|
18
18
|
*
|
|
@@ -1,16 +1,16 @@
|
|
|
1
1
|
import {
|
|
2
2
|
MANIFEST_FILENAMES,
|
|
3
3
|
runLint
|
|
4
|
-
} from "./cli-
|
|
4
|
+
} from "./cli-w3spkryk.js";
|
|
5
5
|
import {
|
|
6
6
|
log
|
|
7
|
-
} from "./cli-
|
|
7
|
+
} from "./cli-wef7qh62.js";
|
|
8
8
|
import {
|
|
9
9
|
UsageError,
|
|
10
10
|
rejectExtraPositionals,
|
|
11
11
|
rejectUnknownFlags
|
|
12
|
-
} from "./cli-
|
|
13
|
-
import"./cli-
|
|
12
|
+
} from "./cli-daahjr6z.js";
|
|
13
|
+
import"./cli-c2yvktan.js";
|
|
14
14
|
import"./cli-c41yr7he.js";
|
|
15
15
|
import {
|
|
16
16
|
EXIT_CODES
|
|
@@ -31,18 +31,18 @@
|
|
|
31
31
|
},
|
|
32
32
|
"engine": {
|
|
33
33
|
"type": "string",
|
|
34
|
-
"description": "Pagination engine.
|
|
34
|
+
"description": "Pagination engine. The Gutterpress engine (native Chromium pagination) is the only engine, and \"native\" is the only meaningful value. \"paged\" is accepted for backward-compatible manifest parsing only: it produces a one-line warning and the build proceeds natively regardless. `--engine` on the CLI is likewise an accepted-but-ignored no-op.",
|
|
35
35
|
"enum": ["paged", "native"],
|
|
36
36
|
"default": "native",
|
|
37
37
|
"examples": ["native"]
|
|
38
38
|
},
|
|
39
39
|
"engineStyles": {
|
|
40
40
|
"type": "object",
|
|
41
|
-
"description": "Engine-conditional stylesheets, appended AFTER `styles`. `.native` is the only list that still applies; `.paged` is accepted-but-ignored (a warning fires if it has entries)
|
|
41
|
+
"description": "Engine-conditional stylesheets, appended AFTER `styles`. `.native` is the only list that still applies; `.paged` is accepted-but-ignored (a warning fires if it has entries).",
|
|
42
42
|
"properties": {
|
|
43
43
|
"paged": {
|
|
44
44
|
"type": "array",
|
|
45
|
-
"description": "
|
|
45
|
+
"description": "Accepted for backward-compatible manifest parsing only; entries here are ignored with a warning.",
|
|
46
46
|
"items": { "type": "string" }
|
|
47
47
|
},
|
|
48
48
|
"native": { "type": "array", "items": { "type": "string" } }
|
|
@@ -5,16 +5,16 @@ import {
|
|
|
5
5
|
TARGETS,
|
|
6
6
|
TARGET_IDS,
|
|
7
7
|
scaffoldProject
|
|
8
|
-
} from "./cli-
|
|
8
|
+
} from "./cli-w3spkryk.js";
|
|
9
9
|
import {
|
|
10
10
|
resolveGhostscript
|
|
11
|
-
} from "./cli-
|
|
11
|
+
} from "./cli-wef7qh62.js";
|
|
12
12
|
import {
|
|
13
13
|
UsageError,
|
|
14
14
|
rejectExtraPositionals,
|
|
15
15
|
rejectUnknownFlags
|
|
16
|
-
} from "./cli-
|
|
17
|
-
import"./cli-
|
|
16
|
+
} from "./cli-daahjr6z.js";
|
|
17
|
+
import"./cli-c2yvktan.js";
|
|
18
18
|
import {
|
|
19
19
|
isToolAvailable
|
|
20
20
|
} from "./cli-c41yr7he.js";
|
|
@@ -1,14 +1,14 @@
|
|
|
1
1
|
import {
|
|
2
2
|
addNpmPlugin,
|
|
3
3
|
parseNpmPluginSpec
|
|
4
|
-
} from "./cli-
|
|
5
|
-
import"./cli-
|
|
4
|
+
} from "./cli-w3spkryk.js";
|
|
5
|
+
import"./cli-wef7qh62.js";
|
|
6
6
|
import {
|
|
7
7
|
UsageError,
|
|
8
8
|
rejectExtraPositionals,
|
|
9
9
|
rejectUnknownFlags
|
|
10
|
-
} from "./cli-
|
|
11
|
-
import"./cli-
|
|
10
|
+
} from "./cli-daahjr6z.js";
|
|
11
|
+
import"./cli-c2yvktan.js";
|
|
12
12
|
import"./cli-c41yr7he.js";
|
|
13
13
|
import {
|
|
14
14
|
EXIT_CODES
|
|
@@ -2,16 +2,16 @@ import {
|
|
|
2
2
|
executeValidation,
|
|
3
3
|
publishTargetFor,
|
|
4
4
|
reportMissingTools
|
|
5
|
-
} from "./cli-
|
|
5
|
+
} from "./cli-w3spkryk.js";
|
|
6
6
|
import {
|
|
7
7
|
log
|
|
8
|
-
} from "./cli-
|
|
8
|
+
} from "./cli-wef7qh62.js";
|
|
9
9
|
import {
|
|
10
10
|
UsageError,
|
|
11
11
|
rejectExtraPositionals,
|
|
12
12
|
rejectUnknownFlags
|
|
13
|
-
} from "./cli-
|
|
14
|
-
import"./cli-
|
|
13
|
+
} from "./cli-daahjr6z.js";
|
|
14
|
+
import"./cli-c2yvktan.js";
|
|
15
15
|
import"./cli-c41yr7he.js";
|
|
16
16
|
import {
|
|
17
17
|
EXIT_CODES
|
|
@@ -1,15 +1,15 @@
|
|
|
1
1
|
import {
|
|
2
2
|
previewArgs
|
|
3
|
-
} from "./cli-
|
|
3
|
+
} from "./cli-pfpb1t3h.js";
|
|
4
4
|
import {
|
|
5
5
|
openPath,
|
|
6
6
|
runBuild,
|
|
7
7
|
splitOutPath,
|
|
8
8
|
startPreviewServer
|
|
9
|
-
} from "./cli-
|
|
9
|
+
} from "./cli-w3spkryk.js";
|
|
10
10
|
import {
|
|
11
11
|
log
|
|
12
|
-
} from "./cli-
|
|
12
|
+
} from "./cli-wef7qh62.js";
|
|
13
13
|
import {
|
|
14
14
|
UsageError,
|
|
15
15
|
parseEngine,
|
|
@@ -18,8 +18,8 @@ import {
|
|
|
18
18
|
rejectExtraPositionals,
|
|
19
19
|
rejectUnknownFlags,
|
|
20
20
|
resolvePort
|
|
21
|
-
} from "./cli-
|
|
22
|
-
import"./cli-
|
|
21
|
+
} from "./cli-daahjr6z.js";
|
|
22
|
+
import"./cli-c2yvktan.js";
|
|
23
23
|
import"./cli-c41yr7he.js";
|
|
24
24
|
import {
|
|
25
25
|
BuildError
|
|
@@ -637,8 +637,8 @@
|
|
|
637
637
|
// ONLY to serve that panel and went with it (protocol v8).
|
|
638
638
|
//
|
|
639
639
|
// Three properties of the native viewer are what make this work, each
|
|
640
|
-
// spike-verified rather than assumed (plan §2) —
|
|
641
|
-
//
|
|
640
|
+
// spike-verified rather than assumed (plan §2) — the floating panel existed
|
|
641
|
+
// because none of them can be assumed of a paginator that pre-cuts the DOM:
|
|
642
642
|
// 1. A block spanning a page break is ONE element with several client
|
|
643
643
|
// rects, so it takes ONE contenteditable and the caret crosses the
|
|
644
644
|
// break natively (ArrowDown walks into the next page).
|
|
@@ -288,11 +288,9 @@
|
|
|
288
288
|
armPendingSwap();
|
|
289
289
|
}
|
|
290
290
|
|
|
291
|
-
// Incremental chapter splice used to live here (spliceChapter): it
|
|
292
|
-
//
|
|
293
|
-
//
|
|
294
|
-
// (native-only-migration-plan.md Phase 6). A native in-place splice was
|
|
295
|
-
// also tried and removed (2026-08-08 review), and the standing reason is
|
|
291
|
+
// Incremental chapter splice used to live here (spliceChapter): it grafted
|
|
292
|
+
// a freshly-paginated replacement into a chapter's live page range. It was
|
|
293
|
+
// tried and removed (2026-08-08 review), and the standing reason is
|
|
296
294
|
// PERFORMANCE, not soundness: measured end-to-end (file write -> change
|
|
297
295
|
// visible, 5 samples, 34pp field guide) the plain full reload (`swap`,
|
|
298
296
|
// below) is 509ms avg vs the incremental splice's 998ms avg. Every
|
|
@@ -7,17 +7,17 @@ import {
|
|
|
7
7
|
publishCredentialKey,
|
|
8
8
|
publishProviderFor,
|
|
9
9
|
runPublish
|
|
10
|
-
} from "./cli-
|
|
10
|
+
} from "./cli-w3spkryk.js";
|
|
11
11
|
import {
|
|
12
12
|
FileTokenStore,
|
|
13
13
|
log
|
|
14
|
-
} from "./cli-
|
|
14
|
+
} from "./cli-wef7qh62.js";
|
|
15
15
|
import {
|
|
16
16
|
UsageError,
|
|
17
17
|
rejectExtraPositionals,
|
|
18
18
|
rejectUnknownFlags
|
|
19
|
-
} from "./cli-
|
|
20
|
-
import"./cli-
|
|
19
|
+
} from "./cli-daahjr6z.js";
|
|
20
|
+
import"./cli-c2yvktan.js";
|
|
21
21
|
import"./cli-c41yr7he.js";
|
|
22
22
|
import {
|
|
23
23
|
EXIT_CODES
|
|
@@ -67,8 +67,7 @@ export interface GutterpressManifest {
|
|
|
67
67
|
/** How the book is designed (ADR 0008). The registry in lib/presets.ts is authoritative. */
|
|
68
68
|
preset?: "dtrpg" | "book" | "custom";
|
|
69
69
|
/**
|
|
70
|
-
* Pagination engine.
|
|
71
|
-
* plan.md Phase 6) — the Gutterpress engine (`src/engine/`, native Chromium
|
|
70
|
+
* Pagination engine. The Gutterpress engine (`src/engine/`, native Chromium
|
|
72
71
|
* pagination) is the only engine. This field and `--engine` on the CLI are
|
|
73
72
|
* accepted-but-ignored for backward compatibility: an explicit "paged"
|
|
74
73
|
* produces a one-line warning and the build proceeds natively regardless.
|
|
@@ -77,12 +76,12 @@ export interface GutterpressManifest {
|
|
|
77
76
|
/**
|
|
78
77
|
* Engine-conditional stylesheets, appended AFTER `styles`. `.native` is the
|
|
79
78
|
* only list that still applies; `.paged` is accepted-but-ignored (a warning
|
|
80
|
-
* fires if it has entries)
|
|
79
|
+
* fires if it has entries).
|
|
81
80
|
*/
|
|
82
81
|
engineStyles?: {
|
|
83
82
|
/**
|
|
84
|
-
*
|
|
85
|
-
*
|
|
83
|
+
* Accepted for backward-compatible manifest parsing only; entries here are
|
|
84
|
+
* ignored with a warning.
|
|
86
85
|
*/
|
|
87
86
|
paged?: string[];
|
|
88
87
|
native?: string[];
|
package/dist/types.d.ts
CHANGED
|
@@ -29,8 +29,8 @@ export interface PreviewServerOptions {
|
|
|
29
29
|
openBrowser: boolean;
|
|
30
30
|
/**
|
|
31
31
|
* CLI `--engine` override, fed into {@link resolveConfig} the same way
|
|
32
|
-
* `build`'s does
|
|
33
|
-
*
|
|
32
|
+
* `build`'s does — preview and PDF switch together, per project, behind
|
|
33
|
+
* one flag. `undefined` defers to the
|
|
34
34
|
* manifest's `engine:` field (or the "native" default).
|
|
35
35
|
*/
|
|
36
36
|
engine?: "paged" | "native";
|
|
@@ -1,15 +1,15 @@
|
|
|
1
1
|
import {
|
|
2
2
|
executeAndReport
|
|
3
|
-
} from "./cli-
|
|
3
|
+
} from "./cli-w3spkryk.js";
|
|
4
4
|
import {
|
|
5
5
|
log
|
|
6
|
-
} from "./cli-
|
|
6
|
+
} from "./cli-wef7qh62.js";
|
|
7
7
|
import {
|
|
8
8
|
UsageError,
|
|
9
9
|
rejectExtraPositionals,
|
|
10
10
|
rejectUnknownFlags
|
|
11
|
-
} from "./cli-
|
|
12
|
-
import"./cli-
|
|
11
|
+
} from "./cli-daahjr6z.js";
|
|
12
|
+
import"./cli-c2yvktan.js";
|
|
13
13
|
import"./cli-c41yr7he.js";
|
|
14
14
|
import {
|
|
15
15
|
EXIT_CODES
|
package/package.json
CHANGED