@vivliostyle/cli 5.9.0 → 6.1.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/dist/browser.d.ts +1 -1
- package/dist/browser.d.ts.map +1 -1
- package/dist/browser.js +21 -63
- package/dist/browser.js.map +1 -1
- package/dist/build.d.ts +1 -1
- package/dist/build.d.ts.map +1 -1
- package/dist/build.js +46 -47
- package/dist/build.js.map +1 -1
- package/dist/builder.d.ts +5 -6
- package/dist/builder.d.ts.map +1 -1
- package/dist/builder.js +124 -103
- package/dist/builder.js.map +1 -1
- package/dist/cli.js +5 -10
- package/dist/cli.js.map +1 -1
- package/dist/commands/build.js +10 -16
- package/dist/commands/build.js.map +1 -1
- package/dist/commands/build.parser.d.ts +3 -3
- package/dist/commands/build.parser.d.ts.map +1 -1
- package/dist/commands/build.parser.js +13 -21
- package/dist/commands/build.parser.js.map +1 -1
- package/dist/commands/init.js +7 -9
- package/dist/commands/init.js.map +1 -1
- package/dist/commands/init.parser.d.ts +2 -2
- package/dist/commands/init.parser.d.ts.map +1 -1
- package/dist/commands/init.parser.js +3 -10
- package/dist/commands/init.parser.js.map +1 -1
- package/dist/commands/preview.js +8 -11
- package/dist/commands/preview.js.map +1 -1
- package/dist/commands/preview.parser.d.ts +2 -2
- package/dist/commands/preview.parser.d.ts.map +1 -1
- package/dist/commands/preview.parser.js +5 -12
- package/dist/commands/preview.parser.js.map +1 -1
- package/dist/config.d.ts +29 -18
- package/dist/config.d.ts.map +1 -1
- package/dist/config.js +285 -251
- package/dist/config.js.map +1 -1
- package/dist/const.d.ts +2 -0
- package/dist/const.d.ts.map +1 -1
- package/dist/const.js +12 -15
- package/dist/const.js.map +1 -1
- package/dist/container.js +31 -41
- package/dist/container.js.map +1 -1
- package/dist/epub.d.ts.map +1 -1
- package/dist/epub.js +10 -17
- package/dist/epub.js.map +1 -1
- package/dist/html.d.ts +3 -3
- package/dist/html.d.ts.map +1 -1
- package/dist/html.js +21 -30
- package/dist/html.js.map +1 -1
- package/dist/index.d.ts +5 -5
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +3 -9
- package/dist/index.js.map +1 -1
- package/dist/init.js +12 -19
- package/dist/init.js.map +1 -1
- package/dist/input.d.ts +2 -2
- package/dist/input.d.ts.map +1 -1
- package/dist/input.js +8 -16
- package/dist/input.js.map +1 -1
- package/dist/markdown.js +9 -17
- package/dist/markdown.js.map +1 -1
- package/dist/output.d.ts +1 -1
- package/dist/output.d.ts.map +1 -1
- package/dist/output.js +6 -16
- package/dist/output.js.map +1 -1
- package/dist/pdf.d.ts +3 -3
- package/dist/pdf.d.ts.map +1 -1
- package/dist/pdf.js +66 -79
- package/dist/pdf.js.map +1 -1
- package/dist/postprocess.d.ts +5 -5
- package/dist/postprocess.d.ts.map +1 -1
- package/dist/postprocess.js +54 -81
- package/dist/postprocess.js.map +1 -1
- package/dist/preview.d.ts +1 -1
- package/dist/preview.d.ts.map +1 -1
- package/dist/preview.js +53 -58
- package/dist/preview.js.map +1 -1
- package/dist/schema/pubManifest.d.ts +2 -471
- package/dist/schema/pubManifest.d.ts.map +1 -1
- package/dist/schema/pubManifest.js +41 -42
- package/dist/schema/pubManifest.js.map +1 -1
- package/dist/schema/publication.schema.d.ts +12 -12
- package/dist/schema/publication.schema.d.ts.map +1 -1
- package/dist/schema/publication.schema.js +1 -2
- package/dist/schema/publication.schema.js.map +1 -1
- package/dist/schema/vivliostyle.d.ts +1 -1
- package/dist/schema/vivliostyle.d.ts.map +1 -1
- package/dist/schema/vivliostyle.js +7 -8
- package/dist/schema/vivliostyle.js.map +1 -1
- package/dist/schema/vivliostyleConfig.schema.d.ts +22 -9
- package/dist/schema/vivliostyleConfig.schema.d.ts.map +1 -1
- package/dist/schema/vivliostyleConfig.schema.js +1 -2
- package/dist/schema/vivliostyleConfig.schema.js.map +1 -1
- package/dist/server.d.ts +7 -6
- package/dist/server.d.ts.map +1 -1
- package/dist/server.js +26 -38
- package/dist/server.js.map +1 -1
- package/dist/theme.d.ts +6 -0
- package/dist/theme.d.ts.map +1 -0
- package/dist/theme.js +74 -0
- package/dist/theme.js.map +1 -0
- package/dist/util.d.ts +3 -3
- package/dist/util.d.ts.map +1 -1
- package/dist/util.js +80 -98
- package/dist/util.js.map +1 -1
- package/dist/webbook.d.ts +1 -1
- package/dist/webbook.d.ts.map +1 -1
- package/dist/webbook.js +40 -44
- package/dist/webbook.js.map +1 -1
- package/package.json +33 -17
- package/schemas/pubManifest/README.md +5 -0
- package/schemas/pubManifest/module/ItemList.schema.json +32 -0
- package/schemas/pubManifest/module/bcp.schema.json +7 -0
- package/schemas/pubManifest/module/context.schema.json +62 -0
- package/schemas/pubManifest/module/contributor-object.schema.json +42 -0
- package/schemas/pubManifest/module/contributor.schema.json +26 -0
- package/schemas/pubManifest/module/date.schema.json +7 -0
- package/schemas/pubManifest/module/duration.schema.json +7 -0
- package/schemas/pubManifest/module/item-lists.schema.json +16 -0
- package/schemas/pubManifest/module/language.schema.json +16 -0
- package/schemas/pubManifest/module/link.schema.json +60 -0
- package/schemas/pubManifest/module/localizable-object.schema.json +15 -0
- package/schemas/pubManifest/module/localizable.schema.json +26 -0
- package/schemas/pubManifest/module/resource.categorization.schema.json +31 -0
- package/schemas/pubManifest/module/strings.schema.json +9 -0
- package/schemas/pubManifest/module/url.schema.json +7 -0
- package/schemas/pubManifest/module/urls.schema.json +18 -0
- package/schemas/pubManifest/publication.schema.json +123 -0
- package/schemas/vivliostyle/vivliostyleConfig.schema.json +348 -0
- package/types/better-ajv-errors.d.ts +28 -0
- package/types/custom.d.ts +9 -0
- package/types/playwright.d.ts +49 -0
- package/dist/schema/pubManifest/module/ItemList.schema.json +0 -32
- package/dist/schema/pubManifest/module/bcp.schema.json +0 -7
- package/dist/schema/pubManifest/module/context.schema.json +0 -62
- package/dist/schema/pubManifest/module/contributor-object.schema.json +0 -42
- package/dist/schema/pubManifest/module/contributor.schema.json +0 -26
- package/dist/schema/pubManifest/module/date.schema.json +0 -7
- package/dist/schema/pubManifest/module/duration.schema.json +0 -7
- package/dist/schema/pubManifest/module/item-lists.schema.json +0 -16
- package/dist/schema/pubManifest/module/language.schema.json +0 -16
- package/dist/schema/pubManifest/module/link.schema.json +0 -60
- package/dist/schema/pubManifest/module/localizable-object.schema.json +0 -15
- package/dist/schema/pubManifest/module/localizable.schema.json +0 -26
- package/dist/schema/pubManifest/module/resource.categorization.schema.json +0 -31
- package/dist/schema/pubManifest/module/strings.schema.json +0 -9
- package/dist/schema/pubManifest/module/url.schema.json +0 -7
- package/dist/schema/pubManifest/module/urls.schema.json +0 -18
- package/dist/schema/pubManifest/publication.schema.json +0 -123
- package/dist/schema/vivliostyle/vivliostyleConfig.schema.json +0 -296
package/dist/browser.d.ts
CHANGED
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import * as playwright from 'playwright-core';
|
|
2
|
-
import type { BrowserType } from './schema/vivliostyleConfig.schema';
|
|
2
|
+
import type { BrowserType } from './schema/vivliostyleConfig.schema.js';
|
|
3
3
|
export declare function launchBrowser({ browserType, executablePath, headless, noSandbox, disableWebSecurity, disableDevShmUsage, }: {
|
|
4
4
|
browserType: BrowserType;
|
|
5
5
|
executablePath: string;
|
package/dist/browser.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"browser.d.ts","sourceRoot":"","sources":["../src/browser.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,UAAU,MAAM,iBAAiB,CAAC;AAE9C,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,
|
|
1
|
+
{"version":3,"file":"browser.d.ts","sourceRoot":"","sources":["../src/browser.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,UAAU,MAAM,iBAAiB,CAAC;AAE9C,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,sCAAsC,CAAC;AAUxE,wBAAsB,aAAa,CAAC,EAClC,WAAW,EACX,cAAc,EACd,QAAQ,EACR,SAAS,EACT,kBAAkB,EAClB,kBAAkB,GACnB,EAAE;IACD,WAAW,EAAE,WAAW,CAAC;IACzB,cAAc,EAAE,MAAM,CAAC;IACvB,QAAQ,EAAE,OAAO,CAAC;IAClB,SAAS,CAAC,EAAE,OAAO,CAAC;IACpB,kBAAkB,CAAC,EAAE,OAAO,CAAC;IAC7B,kBAAkB,CAAC,EAAE,OAAO,CAAC;CAC9B,GAAG,OAAO,CAAC,UAAU,CAAC,OAAO,CAAC,CAoB9B;AAED,wBAAgB,wBAAwB,CAAC,WAAW,EAAE,WAAW,GAAG,MAAM,CAEzE;AAED,wBAAgB,kBAAkB,CAAC,WAAW,EAAE,WAAW,GAAG,MAAM,CAMnE;AAED,wBAAgB,wBAAwB,CAAC,IAAI,EAAE,MAAM,GAAG,OAAO,CAE9D;AAED,wBAAgB,sBAAsB,CAAC,IAAI,EAAE,MAAM,GAAG,OAAO,CAI5D;AAED,wBAAsB,eAAe,CACnC,WAAW,EAAE,WAAW,GACvB,OAAO,CAAC,MAAM,CAAC,CAQjB"}
|
package/dist/browser.js
CHANGED
|
@@ -1,50 +1,14 @@
|
|
|
1
|
-
|
|
2
|
-
|
|
3
|
-
|
|
4
|
-
|
|
5
|
-
|
|
6
|
-
if (k2 === undefined) k2 = k;
|
|
7
|
-
o[k2] = m[k];
|
|
8
|
-
}));
|
|
9
|
-
var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {
|
|
10
|
-
Object.defineProperty(o, "default", { enumerable: true, value: v });
|
|
11
|
-
}) : function(o, v) {
|
|
12
|
-
o["default"] = v;
|
|
13
|
-
});
|
|
14
|
-
var __importStar = (this && this.__importStar) || function (mod) {
|
|
15
|
-
if (mod && mod.__esModule) return mod;
|
|
16
|
-
var result = {};
|
|
17
|
-
if (mod != null) for (var k in mod) if (k !== "default" && Object.prototype.hasOwnProperty.call(mod, k)) __createBinding(result, mod, k);
|
|
18
|
-
__setModuleDefault(result, mod);
|
|
19
|
-
return result;
|
|
20
|
-
};
|
|
21
|
-
var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
22
|
-
return (mod && mod.__esModule) ? mod : { "default": mod };
|
|
23
|
-
};
|
|
24
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
|
25
|
-
exports.downloadBrowser = exports.isPlaywrightExecutable = exports.checkBrowserAvailability = exports.getFullBrowserName = exports.getExecutableBrowserPath = exports.launchBrowser = void 0;
|
|
26
|
-
const fs_1 = __importDefault(require("fs"));
|
|
27
|
-
const playwright = __importStar(require("playwright-core"));
|
|
28
|
-
const server_1 = require("playwright-core/lib/server");
|
|
29
|
-
const util_1 = require("./util");
|
|
30
|
-
async function launchBrowser({ browserType, executablePath, headless, noSandbox, disableWebSecurity, disableDevShmUsage, }) {
|
|
1
|
+
import fs from 'node:fs';
|
|
2
|
+
import * as playwright from 'playwright-core';
|
|
3
|
+
import { registry } from 'playwright-core/lib/server';
|
|
4
|
+
import { beforeExitHandlers, logInfo, logSuccess, pathEquals, startLogging, stopLogging, } from './util.js';
|
|
5
|
+
export async function launchBrowser({ browserType, executablePath, headless, noSandbox, disableWebSecurity, disableDevShmUsage, }) {
|
|
31
6
|
const options = browserType === 'chromium'
|
|
32
7
|
? {
|
|
33
8
|
executablePath,
|
|
34
9
|
chromiumSandbox: !noSandbox,
|
|
35
|
-
|
|
36
|
-
// https://github.com/vivliostyle/vivliostyle-cli/pull/280
|
|
37
|
-
headless: false,
|
|
10
|
+
headless,
|
|
38
11
|
args: [
|
|
39
|
-
// Preset of Playwright: https://github.com/microsoft/playwright/blob/e69c3f12e6f07ee9e737446ba22f20cb669d7211/packages/playwright-core/src/server/chromium/chromium.ts#L287-L294
|
|
40
|
-
...(headless
|
|
41
|
-
? [
|
|
42
|
-
'--headless=chrome',
|
|
43
|
-
'--hide-scrollbars',
|
|
44
|
-
'--mute-audio',
|
|
45
|
-
'--blink-settings=primaryHoverType=2,availableHoverTypes=2,primaryPointerType=4,availablePointerTypes=4',
|
|
46
|
-
]
|
|
47
|
-
: []),
|
|
48
12
|
'--allow-file-access-from-files',
|
|
49
13
|
disableWebSecurity ? '--disable-web-security' : '',
|
|
50
14
|
disableDevShmUsage ? '--disable-dev-shm-usage' : '',
|
|
@@ -53,42 +17,36 @@ async function launchBrowser({ browserType, executablePath, headless, noSandbox,
|
|
|
53
17
|
: // TODO: Investigate appropriate settings on Firefox & Webkit
|
|
54
18
|
{ executablePath, headless };
|
|
55
19
|
const browser = await playwright[browserType].launch(options);
|
|
56
|
-
|
|
20
|
+
beforeExitHandlers.push(() => {
|
|
57
21
|
browser.close();
|
|
58
22
|
});
|
|
59
23
|
return browser;
|
|
60
24
|
}
|
|
61
|
-
|
|
62
|
-
function getExecutableBrowserPath(browserType) {
|
|
25
|
+
export function getExecutableBrowserPath(browserType) {
|
|
63
26
|
return playwright[browserType].executablePath();
|
|
64
27
|
}
|
|
65
|
-
|
|
66
|
-
function getFullBrowserName(browserType) {
|
|
28
|
+
export function getFullBrowserName(browserType) {
|
|
67
29
|
return {
|
|
68
30
|
chromium: 'Chromium',
|
|
69
31
|
firefox: 'Firefox',
|
|
70
32
|
webkit: 'Webkit',
|
|
71
33
|
}[browserType];
|
|
72
34
|
}
|
|
73
|
-
|
|
74
|
-
|
|
75
|
-
return fs_1.default.existsSync(path);
|
|
35
|
+
export function checkBrowserAvailability(path) {
|
|
36
|
+
return fs.existsSync(path);
|
|
76
37
|
}
|
|
77
|
-
|
|
78
|
-
|
|
79
|
-
return server_1.registry
|
|
38
|
+
export function isPlaywrightExecutable(path) {
|
|
39
|
+
return registry
|
|
80
40
|
.executables()
|
|
81
|
-
.some((exe) =>
|
|
41
|
+
.some((exe) => pathEquals(exe.executablePath() ?? '', path));
|
|
82
42
|
}
|
|
83
|
-
|
|
84
|
-
|
|
85
|
-
|
|
86
|
-
|
|
87
|
-
|
|
88
|
-
|
|
89
|
-
|
|
90
|
-
util_1.startLogging();
|
|
43
|
+
export async function downloadBrowser(browserType) {
|
|
44
|
+
const executable = registry.findExecutable(browserType);
|
|
45
|
+
logInfo('Rendering browser is not installed yet. Downloading now...');
|
|
46
|
+
stopLogging();
|
|
47
|
+
await registry.install([executable], false);
|
|
48
|
+
logSuccess(`Successfully downloaded browser`);
|
|
49
|
+
startLogging();
|
|
91
50
|
return executable.executablePath();
|
|
92
51
|
}
|
|
93
|
-
exports.downloadBrowser = downloadBrowser;
|
|
94
52
|
//# sourceMappingURL=browser.js.map
|
package/dist/browser.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"browser.js","sourceRoot":"","sources":["../src/browser.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"browser.js","sourceRoot":"","sources":["../src/browser.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,MAAM,SAAS,CAAC;AACzB,OAAO,KAAK,UAAU,MAAM,iBAAiB,CAAC;AAC9C,OAAO,EAAE,QAAQ,EAAE,MAAM,4BAA4B,CAAC;AAEtD,OAAO,EACL,kBAAkB,EAClB,OAAO,EACP,UAAU,EACV,UAAU,EACV,YAAY,EACZ,WAAW,GACZ,MAAM,WAAW,CAAC;AAEnB,MAAM,CAAC,KAAK,UAAU,aAAa,CAAC,EAClC,WAAW,EACX,cAAc,EACd,QAAQ,EACR,SAAS,EACT,kBAAkB,EAClB,kBAAkB,GAQnB;IACC,MAAM,OAAO,GACX,WAAW,KAAK,UAAU;QACxB,CAAC,CAAC;YACE,cAAc;YACd,eAAe,EAAE,CAAC,SAAS;YAC3B,QAAQ;YACR,IAAI,EAAE;gBACJ,gCAAgC;gBAChC,kBAAkB,CAAC,CAAC,CAAC,wBAAwB,CAAC,CAAC,CAAC,EAAE;gBAClD,kBAAkB,CAAC,CAAC,CAAC,yBAAyB,CAAC,CAAC,CAAC,EAAE;aACpD;SACF;QACH,CAAC,CAAC,6DAA6D;YAC7D,EAAE,cAAc,EAAE,QAAQ,EAAE,CAAC;IACnC,MAAM,OAAO,GAAG,MAAM,UAAU,CAAC,WAAW,CAAC,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC;IAC9D,kBAAkB,CAAC,IAAI,CAAC,GAAG,EAAE;QAC3B,OAAO,CAAC,KAAK,EAAE,CAAC;IAClB,CAAC,CAAC,CAAC;IACH,OAAO,OAAO,CAAC;AACjB,CAAC;AAED,MAAM,UAAU,wBAAwB,CAAC,WAAwB;IAC/D,OAAO,UAAU,CAAC,WAAW,CAAC,CAAC,cAAc,EAAE,CAAC;AAClD,CAAC;AAED,MAAM,UAAU,kBAAkB,CAAC,WAAwB;IACzD,OAAO;QACL,QAAQ,EAAE,UAAU;QACpB,OAAO,EAAE,SAAS;QAClB,MAAM,EAAE,QAAQ;KACjB,CAAC,WAAW,CAAC,CAAC;AACjB,CAAC;AAED,MAAM,UAAU,wBAAwB,CAAC,IAAY;IACnD,OAAO,EAAE,CAAC,UAAU,CAAC,IAAI,CAAC,CAAC;AAC7B,CAAC;AAED,MAAM,UAAU,sBAAsB,CAAC,IAAY;IACjD,OAAO,QAAQ;SACZ,WAAW,EAAE;SACb,IAAI,CAAC,CAAC,GAAG,EAAE,EAAE,CAAC,UAAU,CAAC,GAAG,CAAC,cAAc,EAAE,IAAI,EAAE,EAAE,IAAI,CAAC,CAAC,CAAC;AACjE,CAAC;AAED,MAAM,CAAC,KAAK,UAAU,eAAe,CACnC,WAAwB;IAExB,MAAM,UAAU,GAAG,QAAQ,CAAC,cAAc,CAAC,WAAW,CAAC,CAAC;IACxD,OAAO,CAAC,4DAA4D,CAAC,CAAC;IACtE,WAAW,EAAE,CAAC;IACd,MAAM,QAAQ,CAAC,OAAO,CAAC,CAAC,UAAU,CAAC,EAAE,KAAK,CAAC,CAAC;IAC5C,UAAU,CAAC,iCAAiC,CAAC,CAAC;IAC9C,YAAY,EAAE,CAAC;IACf,OAAO,UAAU,CAAC,cAAc,EAAG,CAAC;AACtC,CAAC"}
|
package/dist/build.d.ts
CHANGED
package/dist/build.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"build.d.ts","sourceRoot":"","sources":["../src/build.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"build.d.ts","sourceRoot":"","sources":["../src/build.ts"],"names":[],"mappings":"AAWA,OAAO,EACL,QAAQ,EAGR,YAAY,EACb,MAAM,aAAa,CAAC;AAarB,MAAM,WAAW,aAAc,SAAQ,QAAQ;IAC7C,MAAM,CAAC,EAAE;QACP,MAAM,CAAC,EAAE,MAAM,CAAC;QAChB,MAAM,CAAC,EAAE,MAAM,CAAC;KACjB,EAAE,CAAC;IACJ,wBAAwB,CAAC,EAAE,MAAM,CAAC;CACnC;AAED,wBAAsB,aAAa,CACjC,QAAQ,EAAE,aAAa,GACtB,OAAO,CAAC,YAAY,EAAE,CAAC,CAmBzB;AAED,wBAAsB,KAAK,CAAC,QAAQ,EAAE,aAAa,iBA8ElD"}
|
package/dist/build.js
CHANGED
|
@@ -1,101 +1,100 @@
|
|
|
1
|
-
|
|
2
|
-
|
|
3
|
-
|
|
4
|
-
};
|
|
5
|
-
|
|
6
|
-
|
|
7
|
-
|
|
8
|
-
|
|
9
|
-
|
|
10
|
-
|
|
11
|
-
|
|
12
|
-
const
|
|
13
|
-
const pdf_1 = require("./pdf");
|
|
14
|
-
const server_1 = require("./server");
|
|
15
|
-
const util_1 = require("./util");
|
|
16
|
-
const webbook_1 = require("./webbook");
|
|
17
|
-
async function getFullConfig(cliFlags) {
|
|
18
|
-
const loadedConf = config_1.collectVivliostyleConfig(cliFlags);
|
|
1
|
+
import chalk from 'chalk';
|
|
2
|
+
import terminalLink from 'terminal-link';
|
|
3
|
+
import path from 'upath';
|
|
4
|
+
import { getExecutableBrowserPath } from './browser.js';
|
|
5
|
+
import { checkOverwriteViolation, cleanupWorkspace, compile, copyAssets, prepareThemeDirectory, } from './builder.js';
|
|
6
|
+
import { collectVivliostyleConfig, mergeConfig, } from './config.js';
|
|
7
|
+
import { buildPDF, buildPDFWithContainer } from './pdf.js';
|
|
8
|
+
import { teardownServer } from './server.js';
|
|
9
|
+
import { checkContainerEnvironment, cwd, debug, log, startLogging, stopLogging, } from './util.js';
|
|
10
|
+
import { exportWebPublication } from './webbook.js';
|
|
11
|
+
export async function getFullConfig(cliFlags) {
|
|
12
|
+
const loadedConf = await collectVivliostyleConfig(cliFlags);
|
|
19
13
|
const { vivliostyleConfig, vivliostyleConfigPath } = loadedConf;
|
|
20
14
|
const loadedCliFlags = loadedConf.cliFlags;
|
|
21
|
-
const context = vivliostyleConfig ?
|
|
15
|
+
const context = vivliostyleConfig ? path.dirname(vivliostyleConfigPath) : cwd;
|
|
22
16
|
const configEntries = [];
|
|
23
|
-
for (const entry of vivliostyleConfig
|
|
24
|
-
const config = await
|
|
17
|
+
for (const entry of vivliostyleConfig ?? [vivliostyleConfig]) {
|
|
18
|
+
const config = await mergeConfig(loadedCliFlags, entry, context);
|
|
25
19
|
checkUnsupportedOutputs(config);
|
|
26
20
|
// check output path not to overwrite source files
|
|
27
21
|
for (const target of config.outputs) {
|
|
28
|
-
|
|
22
|
+
checkOverwriteViolation(config, target.path, target.format);
|
|
29
23
|
}
|
|
30
24
|
configEntries.push(config);
|
|
31
25
|
}
|
|
32
26
|
return configEntries;
|
|
33
27
|
}
|
|
34
|
-
|
|
35
|
-
async function build(cliFlags) {
|
|
36
|
-
var _a, _b, _c, _d, _e;
|
|
28
|
+
export async function build(cliFlags) {
|
|
37
29
|
if (cliFlags.bypassedPdfBuilderOption) {
|
|
38
30
|
const option = JSON.parse(cliFlags.bypassedPdfBuilderOption);
|
|
39
31
|
// Host doesn't know browser path inside of container
|
|
40
|
-
option.executableBrowser =
|
|
41
|
-
|
|
42
|
-
|
|
43
|
-
await
|
|
32
|
+
option.executableBrowser = getExecutableBrowserPath(option.browserType ?? 'chromium');
|
|
33
|
+
debug('bypassedPdfBuilderOption', option);
|
|
34
|
+
startLogging();
|
|
35
|
+
await buildPDF(option);
|
|
44
36
|
// Stop remaining stream output and kill process
|
|
45
|
-
|
|
46
|
-
|
|
37
|
+
stopLogging();
|
|
38
|
+
teardownServer();
|
|
47
39
|
return;
|
|
48
40
|
}
|
|
49
|
-
const isInContainer =
|
|
50
|
-
|
|
41
|
+
const isInContainer = checkContainerEnvironment();
|
|
42
|
+
startLogging('Collecting build config');
|
|
51
43
|
const configEntries = await getFullConfig(cliFlags);
|
|
52
44
|
for (const config of configEntries) {
|
|
53
45
|
// build artifacts
|
|
54
46
|
if (config.manifestPath) {
|
|
55
|
-
await
|
|
56
|
-
await
|
|
47
|
+
await cleanupWorkspace(config);
|
|
48
|
+
await prepareThemeDirectory(config);
|
|
49
|
+
await compile(config);
|
|
50
|
+
await copyAssets(config);
|
|
57
51
|
}
|
|
58
52
|
// generate files
|
|
59
53
|
for (const target of config.outputs) {
|
|
60
54
|
let output = null;
|
|
61
55
|
if (target.format === 'pdf') {
|
|
62
56
|
if (!isInContainer && target.renderMode === 'docker') {
|
|
63
|
-
output = await
|
|
57
|
+
output = await buildPDFWithContainer({
|
|
64
58
|
...config,
|
|
65
|
-
input: (
|
|
59
|
+
input: (config.manifestPath ??
|
|
60
|
+
config.webbookEntryPath ??
|
|
61
|
+
config.epubOpfPath),
|
|
66
62
|
target,
|
|
67
63
|
});
|
|
68
64
|
}
|
|
69
65
|
else {
|
|
70
|
-
output = await
|
|
66
|
+
output = await buildPDF({
|
|
71
67
|
...config,
|
|
72
|
-
input: (
|
|
68
|
+
input: (config.manifestPath ??
|
|
69
|
+
config.webbookEntryPath ??
|
|
70
|
+
config.epubOpfPath),
|
|
73
71
|
target,
|
|
74
72
|
});
|
|
75
73
|
}
|
|
76
74
|
}
|
|
77
75
|
else if (target.format === 'webpub') {
|
|
78
|
-
|
|
76
|
+
const { exportAliases, manifestPath } = config;
|
|
77
|
+
if (!manifestPath) {
|
|
79
78
|
continue;
|
|
80
79
|
}
|
|
81
|
-
output = await
|
|
82
|
-
|
|
80
|
+
output = await exportWebPublication({
|
|
81
|
+
exportAliases,
|
|
82
|
+
manifestPath,
|
|
83
83
|
input: config.workspaceDir,
|
|
84
84
|
output: target.path,
|
|
85
85
|
});
|
|
86
86
|
}
|
|
87
87
|
if (output) {
|
|
88
|
-
const formattedOutput =
|
|
89
|
-
|
|
88
|
+
const formattedOutput = chalk.bold.green(path.relative(cwd, output));
|
|
89
|
+
log(`\n${terminalLink(formattedOutput, 'file://' + output, {
|
|
90
90
|
fallback: () => formattedOutput,
|
|
91
91
|
})} has been created.`);
|
|
92
92
|
}
|
|
93
93
|
}
|
|
94
|
-
|
|
94
|
+
teardownServer();
|
|
95
95
|
}
|
|
96
|
-
|
|
96
|
+
stopLogging('Built successfully.', '🎉');
|
|
97
97
|
}
|
|
98
|
-
exports.build = build;
|
|
99
98
|
function checkUnsupportedOutputs({ webbookEntryPath, epubOpfPath, outputs, }) {
|
|
100
99
|
if (webbookEntryPath && outputs.some((t) => t.format === 'webpub')) {
|
|
101
100
|
throw new Error('Exporting webpub format from single HTML input is not supported.');
|
package/dist/build.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"build.js","sourceRoot":"","sources":["../src/build.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"build.js","sourceRoot":"","sources":["../src/build.ts"],"names":[],"mappings":"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"}
|
package/dist/builder.d.ts
CHANGED
|
@@ -1,6 +1,7 @@
|
|
|
1
|
-
import { MergedConfig, WebPublicationManifestConfig } from './config';
|
|
2
|
-
import type { ArticleEntryObject } from './schema/vivliostyleConfig.schema';
|
|
3
|
-
export declare function
|
|
1
|
+
import { MergedConfig, WebPublicationManifestConfig } from './config.js';
|
|
2
|
+
import type { ArticleEntryObject } from './schema/vivliostyleConfig.schema.js';
|
|
3
|
+
export declare function cleanupWorkspace({ entryContextDir, workspaceDir, themesDir, }: MergedConfig): Promise<void>;
|
|
4
|
+
export declare function prepareThemeDirectory({ themesDir, themeIndexes, }: MergedConfig): Promise<void>;
|
|
4
5
|
export declare function generateManifest(outputPath: string, entryContextDir: string, options: {
|
|
5
6
|
title?: string;
|
|
6
7
|
author?: string;
|
|
@@ -10,9 +11,7 @@ export declare function generateManifest(outputPath: string, entryContextDir: st
|
|
|
10
11
|
entries: ArticleEntryObject[];
|
|
11
12
|
cover?: string;
|
|
12
13
|
}): void;
|
|
13
|
-
export declare function compile({ entryContextDir, workspaceDir, manifestPath, manifestAutoGenerate,
|
|
14
|
-
reload?: boolean;
|
|
15
|
-
}): Promise<void>;
|
|
14
|
+
export declare function compile({ entryContextDir, workspaceDir, manifestPath, manifestAutoGenerate, entries, language, readingProgression, cover, vfmOptions, }: MergedConfig & WebPublicationManifestConfig): Promise<void>;
|
|
16
15
|
export declare function copyAssets({ entryContextDir, workspaceDir, includeAssets, }: MergedConfig): Promise<void>;
|
|
17
16
|
export declare function checkOverwriteViolation({ entryContextDir, workspaceDir }: MergedConfig, target: string, fileInformation: string): void;
|
|
18
17
|
//# sourceMappingURL=builder.d.ts.map
|
package/dist/builder.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"builder.d.ts","sourceRoot":"","sources":["../src/builder.ts"],"names":[],"mappings":"AAUA,OAAO,EAEL,YAAY,EAEZ,4BAA4B,EAC7B,MAAM,
|
|
1
|
+
{"version":3,"file":"builder.d.ts","sourceRoot":"","sources":["../src/builder.ts"],"names":[],"mappings":"AAUA,OAAO,EAEL,YAAY,EAEZ,4BAA4B,EAC7B,MAAM,aAAa,CAAC;AASrB,OAAO,KAAK,EAAE,kBAAkB,EAAE,MAAM,sCAAsC,CAAC;AAyD/E,wBAAsB,gBAAgB,CAAC,EACrC,eAAe,EACf,YAAY,EACZ,SAAS,GACV,EAAE,YAAY,iBAuBd;AAED,wBAAsB,qBAAqB,CAAC,EAC1C,SAAS,EACT,YAAY,GACb,EAAE,YAAY,iBAcd;AAGD,wBAAgB,gBAAgB,CAC9B,UAAU,EAAE,MAAM,EAClB,eAAe,EAAE,MAAM,EACvB,OAAO,EAAE;IACP,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,QAAQ,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IACzB,kBAAkB,CAAC,EAAE,KAAK,GAAG,KAAK,CAAC;IACnC,QAAQ,EAAE,MAAM,CAAC;IACjB,OAAO,EAAE,kBAAkB,EAAE,CAAC;IAC9B,KAAK,CAAC,EAAE,MAAM,CAAC;CAChB,QA+EF;AAED,wBAAsB,OAAO,CAAC,EAC5B,eAAe,EACf,YAAY,EACZ,YAAY,EACZ,oBAAoB,EACpB,OAAO,EACP,QAAQ,EACR,kBAAkB,EAClB,KAAK,EACL,UAAU,GACX,EAAE,YAAY,GAAG,4BAA4B,GAAG,OAAO,CAAC,IAAI,CAAC,CA2F7D;AAED,wBAAsB,UAAU,CAAC,EAC/B,eAAe,EACf,YAAY,EACZ,aAAa,GACd,EAAE,YAAY,GAAG,OAAO,CAAC,IAAI,CAAC,CAkB9B;AAED,wBAAgB,uBAAuB,CACrC,EAAE,eAAe,EAAE,YAAY,EAAE,EAAE,YAAY,EAC/C,MAAM,EAAE,MAAM,EACd,eAAe,EAAE,MAAM,QAexB"}
|