gutterpress 0.11.16-alpha.4 → 0.11.16-alpha.5
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/{build-mcfqc88s.js → build-ee2traqp.js} +4 -4
- package/dist/{cli-281af80x.js → cli-4d4xegsw.js} +4 -4
- package/dist/{cli-0rnwy2sm.js → cli-6s4pkvbx.js} +1 -1
- package/dist/{cli-20d4bh4m.js → cli-cg03zvez.js} +1 -1
- package/dist/{cli-8597az31.js → cli-wqy8hnnh.js} +2 -2
- package/dist/cli.js +12 -12
- package/dist/{doctor-mgczpcay.js → doctor-zn08944p.js} +2 -2
- package/dist/{engine-6jnxqfsm.js → engine-j5h953pg.js} +1 -1
- package/dist/{engine-5b92gk8n.js → engine-w17dbt4f.js} +2 -2
- package/dist/{ext-qxtng677.js → ext-bw7da6e1.js} +4 -4
- package/dist/{index-w1qk3tap.js → index-ee7wp8q3.js} +2 -2
- package/dist/{index-22dmrjts.js → index-nk2mt7gp.js} +3 -3
- package/dist/{index-zb48zwcq.js → index-qep93v0z.js} +1 -1
- package/dist/index.js +3 -3
- package/dist/{new-7ah0sg6k.js → new-c9b5wwpe.js} +4 -4
- package/dist/{preflight-xmz79sn6.js → preflight-mnpqsnsz.js} +4 -4
- package/dist/{preview-interface-twd6nsf5.js → preview-interface-5wnzrvhf.js} +5 -1
- package/dist/{preview-7vegws9x.js → preview-kcqapj66.js} +4 -4
- package/dist/{preview-shell-y8yrm3f0.js → preview-shell-xwn84kqr.js} +2 -1
- package/dist/{publish-p72b4j6n.js → publish-zf218d0c.js} +4 -4
- package/dist/{validate-bkcz3jsy.js → validate-mh9r5qzx.js} +4 -4
- package/package.json +1 -1
package/dist/api/index.js
CHANGED
|
@@ -129,10 +129,10 @@ import {
|
|
|
129
129
|
testRemoteAccess,
|
|
130
130
|
updateExtensions,
|
|
131
131
|
validateProjectExtensions
|
|
132
|
-
} from "../index-
|
|
132
|
+
} from "../index-nk2mt7gp.js";
|
|
133
133
|
import {
|
|
134
134
|
BuildError
|
|
135
|
-
} from "../index-
|
|
135
|
+
} from "../index-ee7wp8q3.js";
|
|
136
136
|
import {
|
|
137
137
|
DEFAULT_PRINT_OPTS,
|
|
138
138
|
assertMilestone,
|
|
@@ -1,18 +1,18 @@
|
|
|
1
1
|
import {
|
|
2
2
|
runBuild,
|
|
3
3
|
splitOutPath
|
|
4
|
-
} from "./cli-
|
|
4
|
+
} from "./cli-4d4xegsw.js";
|
|
5
5
|
import {
|
|
6
6
|
log
|
|
7
|
-
} from "./cli-
|
|
7
|
+
} from "./cli-6s4pkvbx.js";
|
|
8
8
|
import {
|
|
9
9
|
UsageError,
|
|
10
10
|
parseFormat,
|
|
11
11
|
parsePdfxFlavor,
|
|
12
12
|
rejectExtraPositionals,
|
|
13
13
|
rejectUnknownFlags
|
|
14
|
-
} from "./cli-
|
|
15
|
-
import"./cli-
|
|
14
|
+
} from "./cli-cg03zvez.js";
|
|
15
|
+
import"./cli-wqy8hnnh.js";
|
|
16
16
|
import {
|
|
17
17
|
BuildError
|
|
18
18
|
} from "./cli-46ycxe6r.js";
|
|
@@ -13,17 +13,17 @@ import {
|
|
|
13
13
|
stampCreator,
|
|
14
14
|
stripAnnotations,
|
|
15
15
|
warn
|
|
16
|
-
} from "./cli-
|
|
16
|
+
} from "./cli-6s4pkvbx.js";
|
|
17
17
|
import {
|
|
18
18
|
DEBOUNCE,
|
|
19
19
|
UsageError,
|
|
20
20
|
resolvePort
|
|
21
|
-
} from "./cli-
|
|
21
|
+
} from "./cli-cg03zvez.js";
|
|
22
22
|
import {
|
|
23
23
|
MARGIN_BOX_IGNORED_PROPERTIES,
|
|
24
24
|
getAssetPath,
|
|
25
25
|
getAssetsDir
|
|
26
|
-
} from "./cli-
|
|
26
|
+
} from "./cli-wqy8hnnh.js";
|
|
27
27
|
import {
|
|
28
28
|
BuildError
|
|
29
29
|
} from "./cli-46ycxe6r.js";
|
|
@@ -8202,7 +8202,7 @@ class PdfOutput {
|
|
|
8202
8202
|
const rawPdf = pdfxMode ? path8.join(stage, "raw.pdf") : path8.resolve(pdfFile);
|
|
8203
8203
|
await fsp2.mkdir(path8.dirname(path8.resolve(pdfFile)), { recursive: true });
|
|
8204
8204
|
log.info("Rendering HTML to PDF via the Gutterpress engine (native Chromium pagination)");
|
|
8205
|
-
const { buildNativePdf } = await import("./engine-
|
|
8205
|
+
const { buildNativePdf } = await import("./engine-j5h953pg.js");
|
|
8206
8206
|
const engineDiagnostics = await buildNativePdf(htmlFile, rawPdf, {
|
|
8207
8207
|
title: config.title,
|
|
8208
8208
|
author: config.authors.length > 0 ? config.authors.join(", ") : undefined,
|
|
@@ -4,7 +4,7 @@ import {
|
|
|
4
4
|
// package.json
|
|
5
5
|
var package_default = {
|
|
6
6
|
name: "gutterpress",
|
|
7
|
-
version: "0.11.16-alpha.
|
|
7
|
+
version: "0.11.16-alpha.5",
|
|
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",
|
|
@@ -1109,13 +1109,13 @@ var favicon_default = "./favicon-wkbm9cjn.ico";
|
|
|
1109
1109
|
var manifest_schema_default = "./manifest.schema-40sfq49z.json";
|
|
1110
1110
|
|
|
1111
1111
|
// src/assets/preview/scripts/preview-interface.js
|
|
1112
|
-
var preview_interface_default = "./preview-interface-
|
|
1112
|
+
var preview_interface_default = "./preview-interface-5wnzrvhf.js";
|
|
1113
1113
|
|
|
1114
1114
|
// src/assets/preview/scripts/preview-bridge.js
|
|
1115
1115
|
var preview_bridge_default = "./preview-bridge-8jhd1wpb.js";
|
|
1116
1116
|
|
|
1117
1117
|
// src/assets/preview/scripts/preview-shell.js
|
|
1118
|
-
var preview_shell_default = "./preview-shell-
|
|
1118
|
+
var preview_shell_default = "./preview-shell-xwn84kqr.js";
|
|
1119
1119
|
|
|
1120
1120
|
// profiles/CGATS21_CRPC1.icc
|
|
1121
1121
|
var CGATS21_CRPC1_default = "./CGATS21_CRPC1-g0e3k7kr.icc";
|
package/dist/cli.js
CHANGED
|
@@ -6,7 +6,7 @@ import {
|
|
|
6
6
|
UsageError,
|
|
7
7
|
package_default,
|
|
8
8
|
rejectUnknownFlags
|
|
9
|
-
} from "./cli-
|
|
9
|
+
} from "./cli-cg03zvez.js";
|
|
10
10
|
import {
|
|
11
11
|
EXIT_CODES
|
|
12
12
|
} from "./cli-46ycxe6r.js";
|
|
@@ -18,14 +18,14 @@ 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
|
-
validate: () => import("./validate-
|
|
26
|
-
preflight: () => import("./preflight-
|
|
27
|
-
doctor: () => import("./doctor-
|
|
28
|
-
ext: () => import("./ext-
|
|
21
|
+
new: () => import("./new-c9b5wwpe.js").then((m) => m.default),
|
|
22
|
+
preview: () => import("./preview-kcqapj66.js").then((m) => m.default),
|
|
23
|
+
build: () => import("./build-ee2traqp.js").then((m) => m.default),
|
|
24
|
+
publish: () => import("./publish-zf218d0c.js").then((m) => m.default),
|
|
25
|
+
validate: () => import("./validate-mh9r5qzx.js").then((m) => m.default),
|
|
26
|
+
preflight: () => import("./preflight-mnpqsnsz.js").then((m) => m.default),
|
|
27
|
+
doctor: () => import("./doctor-zn08944p.js").then((m) => m.default),
|
|
28
|
+
ext: () => import("./ext-bw7da6e1.js").then((m) => m.default)
|
|
29
29
|
};
|
|
30
30
|
var VERSION = package_default.version;
|
|
31
31
|
var main = defineCommand({
|
|
@@ -50,7 +50,7 @@ async function preflightRequiredInvocations(rawArgs) {
|
|
|
50
50
|
const [command, ...commandArgs] = rawArgs;
|
|
51
51
|
try {
|
|
52
52
|
if (command === "new") {
|
|
53
|
-
const { newArgs } = await import("./new-
|
|
53
|
+
const { newArgs } = await import("./new-c9b5wwpe.js");
|
|
54
54
|
rejectUnknownFlags(commandArgs, newArgs, "new");
|
|
55
55
|
const parsed = parseArgs(commandArgs, {
|
|
56
56
|
...newArgs,
|
|
@@ -62,7 +62,7 @@ async function preflightRequiredInvocations(rawArgs) {
|
|
|
62
62
|
return;
|
|
63
63
|
}
|
|
64
64
|
if (command === "preflight") {
|
|
65
|
-
const { preflightArgs } = await import("./preflight-
|
|
65
|
+
const { preflightArgs } = await import("./preflight-mnpqsnsz.js");
|
|
66
66
|
rejectUnknownFlags(commandArgs, preflightArgs, "preflight");
|
|
67
67
|
const parsed = parseArgs(commandArgs, {
|
|
68
68
|
...preflightArgs,
|
|
@@ -82,7 +82,7 @@ async function preflightRequiredInvocations(rawArgs) {
|
|
|
82
82
|
}
|
|
83
83
|
if (subcommand.startsWith("-"))
|
|
84
84
|
return;
|
|
85
|
-
const { EXT_SUBCOMMANDS, extAddArgs, extRemoveArgs, extEnableArgs, extDisableArgs } = await import("./ext-
|
|
85
|
+
const { EXT_SUBCOMMANDS, extAddArgs, extRemoveArgs, extEnableArgs, extDisableArgs } = await import("./ext-bw7da6e1.js");
|
|
86
86
|
if (!EXT_SUBCOMMANDS.includes(subcommand)) {
|
|
87
87
|
throw new UsageError(`gutterpress ext: unknown command "${subcommand}"`);
|
|
88
88
|
}
|
|
@@ -1,12 +1,12 @@
|
|
|
1
1
|
import {
|
|
2
2
|
getSystemDiagnostics,
|
|
3
3
|
log
|
|
4
|
-
} from "./cli-
|
|
4
|
+
} from "./cli-6s4pkvbx.js";
|
|
5
5
|
import {
|
|
6
6
|
UsageError,
|
|
7
7
|
rejectExtraPositionals,
|
|
8
8
|
rejectUnknownFlags
|
|
9
|
-
} from "./cli-
|
|
9
|
+
} from "./cli-cg03zvez.js";
|
|
10
10
|
import"./cli-46ycxe6r.js";
|
|
11
11
|
import"./cli-7fkhgtfn.js";
|
|
12
12
|
import"./cli-37x76zdn.js";
|
|
@@ -12,16 +12,16 @@ import {
|
|
|
12
12
|
searchNpmExtensions,
|
|
13
13
|
setExtensionEnabled,
|
|
14
14
|
updateExtensions
|
|
15
|
-
} from "./cli-
|
|
16
|
-
import"./cli-
|
|
15
|
+
} from "./cli-4d4xegsw.js";
|
|
16
|
+
import"./cli-6s4pkvbx.js";
|
|
17
17
|
import {
|
|
18
18
|
UsageError,
|
|
19
19
|
exitForUsage,
|
|
20
20
|
rejectExtraPositionals,
|
|
21
21
|
rejectUnknownFlags,
|
|
22
22
|
resolveProjectDir
|
|
23
|
-
} from "./cli-
|
|
24
|
-
import"./cli-
|
|
23
|
+
} from "./cli-cg03zvez.js";
|
|
24
|
+
import"./cli-wqy8hnnh.js";
|
|
25
25
|
import {
|
|
26
26
|
EXIT_CODES
|
|
27
27
|
} from "./cli-46ycxe6r.js";
|
|
@@ -29,13 +29,13 @@ var favicon_default = "./favicon-wkbm9cjn.ico";
|
|
|
29
29
|
var manifest_schema_default = "./manifest.schema-40sfq49z.json";
|
|
30
30
|
|
|
31
31
|
// src/assets/preview/scripts/preview-interface.js
|
|
32
|
-
var preview_interface_default = "./preview-interface-
|
|
32
|
+
var preview_interface_default = "./preview-interface-5wnzrvhf.js";
|
|
33
33
|
|
|
34
34
|
// src/assets/preview/scripts/preview-bridge.js
|
|
35
35
|
var preview_bridge_default = "./preview-bridge-8jhd1wpb.js";
|
|
36
36
|
|
|
37
37
|
// src/assets/preview/scripts/preview-shell.js
|
|
38
|
-
var preview_shell_default = "./preview-shell-
|
|
38
|
+
var preview_shell_default = "./preview-shell-xwn84kqr.js";
|
|
39
39
|
|
|
40
40
|
// profiles/CGATS21_CRPC1.icc
|
|
41
41
|
var CGATS21_CRPC1_default = "./CGATS21_CRPC1-g0e3k7kr.icc";
|
|
@@ -4,7 +4,7 @@ import {
|
|
|
4
4
|
MARGIN_BOX_IGNORED_PROPERTIES,
|
|
5
5
|
getAssetPath,
|
|
6
6
|
getAssetsDir
|
|
7
|
-
} from "./index-
|
|
7
|
+
} from "./index-ee7wp8q3.js";
|
|
8
8
|
import {
|
|
9
9
|
INSTALL_HINTS,
|
|
10
10
|
execCapture,
|
|
@@ -4077,7 +4077,7 @@ import git from "isomorphic-git";
|
|
|
4077
4077
|
// package.json
|
|
4078
4078
|
var package_default = {
|
|
4079
4079
|
name: "gutterpress",
|
|
4080
|
-
version: "0.11.16-alpha.
|
|
4080
|
+
version: "0.11.16-alpha.5",
|
|
4081
4081
|
description: "Markdown-to-PDF converter for professional print layout using a native Chromium print engine and Ghostscript.",
|
|
4082
4082
|
author: "itlackey",
|
|
4083
4083
|
license: "MPL-2.0",
|
|
@@ -8692,7 +8692,7 @@ class PdfOutput {
|
|
|
8692
8692
|
const rawPdf = pdfxMode ? path8.join(stage, "raw.pdf") : path8.resolve(pdfFile);
|
|
8693
8693
|
await fsp2.mkdir(path8.dirname(path8.resolve(pdfFile)), { recursive: true });
|
|
8694
8694
|
log.info("Rendering HTML to PDF via the Gutterpress engine (native Chromium pagination)");
|
|
8695
|
-
const { buildNativePdf } = await import("./engine-
|
|
8695
|
+
const { buildNativePdf } = await import("./engine-w17dbt4f.js");
|
|
8696
8696
|
const engineDiagnostics = await buildNativePdf(htmlFile, rawPdf, {
|
|
8697
8697
|
title: config.title,
|
|
8698
8698
|
author: config.authors.length > 0 ? config.authors.join(", ") : undefined,
|
package/dist/index.js
CHANGED
|
@@ -146,13 +146,13 @@ import {
|
|
|
146
146
|
testRemoteAccess,
|
|
147
147
|
updateExtensions,
|
|
148
148
|
validateProjectExtensions
|
|
149
|
-
} from "./index-
|
|
149
|
+
} from "./index-nk2mt7gp.js";
|
|
150
150
|
import {
|
|
151
151
|
BUILD_DIAGNOSTIC_CODES
|
|
152
|
-
} from "./index-
|
|
152
|
+
} from "./index-qep93v0z.js";
|
|
153
153
|
import {
|
|
154
154
|
BuildError
|
|
155
|
-
} from "./index-
|
|
155
|
+
} from "./index-ee7wp8q3.js";
|
|
156
156
|
import {
|
|
157
157
|
DEFAULT_PRINT_OPTS,
|
|
158
158
|
assertMilestone,
|
|
@@ -7,16 +7,16 @@ import {
|
|
|
7
7
|
TARGET_IDS,
|
|
8
8
|
scaffoldExtension,
|
|
9
9
|
scaffoldProject
|
|
10
|
-
} from "./cli-
|
|
10
|
+
} from "./cli-4d4xegsw.js";
|
|
11
11
|
import {
|
|
12
12
|
resolveGhostscript
|
|
13
|
-
} from "./cli-
|
|
13
|
+
} from "./cli-6s4pkvbx.js";
|
|
14
14
|
import {
|
|
15
15
|
UsageError,
|
|
16
16
|
rejectExtraPositionals,
|
|
17
17
|
rejectUnknownFlags
|
|
18
|
-
} from "./cli-
|
|
19
|
-
import"./cli-
|
|
18
|
+
} from "./cli-cg03zvez.js";
|
|
19
|
+
import"./cli-wqy8hnnh.js";
|
|
20
20
|
import {
|
|
21
21
|
EXIT_CODES
|
|
22
22
|
} from "./cli-46ycxe6r.js";
|
|
@@ -2,16 +2,16 @@ import {
|
|
|
2
2
|
executeValidation,
|
|
3
3
|
publishTargetFor,
|
|
4
4
|
reportMissingTools
|
|
5
|
-
} from "./cli-
|
|
5
|
+
} from "./cli-4d4xegsw.js";
|
|
6
6
|
import {
|
|
7
7
|
log
|
|
8
|
-
} from "./cli-
|
|
8
|
+
} from "./cli-6s4pkvbx.js";
|
|
9
9
|
import {
|
|
10
10
|
UsageError,
|
|
11
11
|
rejectExtraPositionals,
|
|
12
12
|
rejectUnknownFlags
|
|
13
|
-
} from "./cli-
|
|
14
|
-
import"./cli-
|
|
13
|
+
} from "./cli-cg03zvez.js";
|
|
14
|
+
import"./cli-wqy8hnnh.js";
|
|
15
15
|
import {
|
|
16
16
|
EXIT_CODES
|
|
17
17
|
} from "./cli-46ycxe6r.js";
|
|
@@ -1027,12 +1027,16 @@
|
|
|
1027
1027
|
});
|
|
1028
1028
|
if (!silent) return api.notifyPageChange();
|
|
1029
1029
|
},
|
|
1030
|
-
setZoom: function (z, silent) {
|
|
1030
|
+
setZoom: function (z, silent, fit) {
|
|
1031
1031
|
preserveViewport(function () {
|
|
1032
1032
|
// Embedded previews have one zoom owner. Clear the standalone
|
|
1033
1033
|
// viewer's narrow-screen fit before applying the host scale.
|
|
1034
1034
|
document.body.style.removeProperty('--gutterpress-fit-zoom');
|
|
1035
1035
|
document.documentElement.style.setProperty('--gutterpress-zoom', z);
|
|
1036
|
+
// A host "fit to width" scale means nothing should scroll sideways.
|
|
1037
|
+
// Device-pixel rounding (fractional OS scaling) or art reaching past
|
|
1038
|
+
// the sheet can still overflow by a hair; clip it in fit mode only.
|
|
1039
|
+
document.documentElement.style.overflowX = fit ? 'hidden' : '';
|
|
1036
1040
|
});
|
|
1037
1041
|
if (!silent) api.notifyPageChange();
|
|
1038
1042
|
},
|
|
@@ -6,10 +6,10 @@ import {
|
|
|
6
6
|
runBuild,
|
|
7
7
|
splitOutPath,
|
|
8
8
|
startPreviewServer
|
|
9
|
-
} from "./cli-
|
|
9
|
+
} from "./cli-4d4xegsw.js";
|
|
10
10
|
import {
|
|
11
11
|
log
|
|
12
|
-
} from "./cli-
|
|
12
|
+
} from "./cli-6s4pkvbx.js";
|
|
13
13
|
import {
|
|
14
14
|
UsageError,
|
|
15
15
|
parseFormat,
|
|
@@ -17,8 +17,8 @@ import {
|
|
|
17
17
|
rejectExtraPositionals,
|
|
18
18
|
rejectUnknownFlags,
|
|
19
19
|
resolvePort
|
|
20
|
-
} from "./cli-
|
|
21
|
-
import"./cli-
|
|
20
|
+
} from "./cli-cg03zvez.js";
|
|
21
|
+
import"./cli-wqy8hnnh.js";
|
|
22
22
|
import {
|
|
23
23
|
BuildError
|
|
24
24
|
} from "./cli-46ycxe6r.js";
|
|
@@ -108,7 +108,8 @@
|
|
|
108
108
|
if (sourceBody.classList.contains('debug')) api.toggleDebugMode();
|
|
109
109
|
}
|
|
110
110
|
var zoom = source.documentElement.style.getPropertyValue('--gutterpress-zoom');
|
|
111
|
-
|
|
111
|
+
// Carry the fit flag too (setZoom's third argument clips sideways overflow).
|
|
112
|
+
if (api && zoom) api.setZoom(zoom, true, source.documentElement.style.overflowX === 'hidden');
|
|
112
113
|
}
|
|
113
114
|
|
|
114
115
|
function onReady(frame, callback, onTimeout, timeoutMs) {
|
|
@@ -11,17 +11,17 @@ import {
|
|
|
11
11
|
publishProviderFor,
|
|
12
12
|
resolvePublishFormat,
|
|
13
13
|
runPublish
|
|
14
|
-
} from "./cli-
|
|
14
|
+
} from "./cli-4d4xegsw.js";
|
|
15
15
|
import {
|
|
16
16
|
FileTokenStore,
|
|
17
17
|
log
|
|
18
|
-
} from "./cli-
|
|
18
|
+
} from "./cli-6s4pkvbx.js";
|
|
19
19
|
import {
|
|
20
20
|
UsageError,
|
|
21
21
|
rejectExtraPositionals,
|
|
22
22
|
rejectUnknownFlags
|
|
23
|
-
} from "./cli-
|
|
24
|
-
import"./cli-
|
|
23
|
+
} from "./cli-cg03zvez.js";
|
|
24
|
+
import"./cli-wqy8hnnh.js";
|
|
25
25
|
import {
|
|
26
26
|
EXIT_CODES
|
|
27
27
|
} from "./cli-46ycxe6r.js";
|
|
@@ -1,15 +1,15 @@
|
|
|
1
1
|
import {
|
|
2
2
|
executeAndReport
|
|
3
|
-
} from "./cli-
|
|
3
|
+
} from "./cli-4d4xegsw.js";
|
|
4
4
|
import {
|
|
5
5
|
log
|
|
6
|
-
} from "./cli-
|
|
6
|
+
} from "./cli-6s4pkvbx.js";
|
|
7
7
|
import {
|
|
8
8
|
UsageError,
|
|
9
9
|
rejectExtraPositionals,
|
|
10
10
|
rejectUnknownFlags
|
|
11
|
-
} from "./cli-
|
|
12
|
-
import"./cli-
|
|
11
|
+
} from "./cli-cg03zvez.js";
|
|
12
|
+
import"./cli-wqy8hnnh.js";
|
|
13
13
|
import {
|
|
14
14
|
EXIT_CODES
|
|
15
15
|
} from "./cli-46ycxe6r.js";
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "gutterpress",
|
|
3
|
-
"version": "0.11.16-alpha.
|
|
3
|
+
"version": "0.11.16-alpha.5",
|
|
4
4
|
"description": "Markdown-to-PDF converter for professional print layout using a native Chromium print engine and Ghostscript.",
|
|
5
5
|
"author": "itlackey",
|
|
6
6
|
"license": "MPL-2.0",
|