@vivliostyle/cli 8.17.1 → 9.0.0-next.1

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.
Files changed (156) hide show
  1. package/dist/browser.d.ts +12 -1
  2. package/dist/browser.d.ts.map +1 -1
  3. package/dist/browser.js +108 -13
  4. package/dist/browser.js.map +1 -1
  5. package/dist/commands/build.js +10 -44
  6. package/dist/commands/build.js.map +1 -1
  7. package/dist/commands/build.parser.d.ts +0 -5
  8. package/dist/commands/build.parser.d.ts.map +1 -1
  9. package/dist/commands/build.parser.js +15 -23
  10. package/dist/commands/build.parser.js.map +1 -1
  11. package/dist/commands/cli-flags.d.ts +42 -0
  12. package/dist/commands/cli-flags.d.ts.map +1 -0
  13. package/dist/commands/cli-flags.js +58 -0
  14. package/dist/commands/cli-flags.js.map +1 -0
  15. package/dist/commands/init.js +4 -12
  16. package/dist/commands/init.js.map +1 -1
  17. package/dist/commands/preview.js +4 -37
  18. package/dist/commands/preview.js.map +1 -1
  19. package/dist/commands/preview.parser.d.ts.map +1 -1
  20. package/dist/commands/preview.parser.js +6 -4
  21. package/dist/commands/preview.parser.js.map +1 -1
  22. package/dist/config/load.d.ts +7 -0
  23. package/dist/config/load.d.ts.map +1 -0
  24. package/dist/config/load.js +72 -0
  25. package/dist/config/load.js.map +1 -0
  26. package/dist/config/merge.d.ts +4 -0
  27. package/dist/config/merge.d.ts.map +1 -0
  28. package/dist/config/merge.js +78 -0
  29. package/dist/config/merge.js.map +1 -0
  30. package/dist/{input/config.d.ts → config/resolve.d.ts} +81 -82
  31. package/dist/config/resolve.d.ts.map +1 -0
  32. package/dist/config/resolve.js +727 -0
  33. package/dist/config/resolve.js.map +1 -0
  34. package/dist/{input → config}/schema.d.ts +6023 -3542
  35. package/dist/config/schema.d.ts.map +1 -0
  36. package/dist/config/schema.js +562 -0
  37. package/dist/config/schema.js.map +1 -0
  38. package/dist/config/vite.d.ts +53 -0
  39. package/dist/config/vite.d.ts.map +1 -0
  40. package/dist/config/vite.js +19 -0
  41. package/dist/config/vite.js.map +1 -0
  42. package/dist/const.d.ts +2 -0
  43. package/dist/const.d.ts.map +1 -1
  44. package/dist/const.js +2 -0
  45. package/dist/const.js.map +1 -1
  46. package/dist/container.d.ts +12 -3
  47. package/dist/container.d.ts.map +1 -1
  48. package/dist/container.js +130 -30
  49. package/dist/container.js.map +1 -1
  50. package/dist/core/build.d.ts +3 -0
  51. package/dist/core/build.d.ts.map +1 -0
  52. package/dist/core/build.js +168 -0
  53. package/dist/core/build.js.map +1 -0
  54. package/dist/core/init.d.ts +3 -0
  55. package/dist/core/init.d.ts.map +1 -0
  56. package/dist/{init.js → core/init.js} +14 -19
  57. package/dist/core/init.js.map +1 -0
  58. package/dist/core/preview.d.ts +3 -0
  59. package/dist/core/preview.d.ts.map +1 -0
  60. package/dist/core/preview.js +93 -0
  61. package/dist/core/preview.js.map +1 -0
  62. package/dist/index.d.ts +32 -4
  63. package/dist/index.d.ts.map +1 -1
  64. package/dist/index.js +44 -3
  65. package/dist/index.js.map +1 -1
  66. package/dist/logger.d.ts +23 -0
  67. package/dist/logger.d.ts.map +1 -0
  68. package/dist/logger.js +161 -0
  69. package/dist/logger.js.map +1 -0
  70. package/dist/output/epub.d.ts.map +1 -1
  71. package/dist/output/epub.js +17 -15
  72. package/dist/output/epub.js.map +1 -1
  73. package/dist/output/pdf-postprocess.d.ts +2 -3
  74. package/dist/output/pdf-postprocess.d.ts.map +1 -1
  75. package/dist/output/pdf-postprocess.js +94 -29
  76. package/dist/output/pdf-postprocess.js.map +1 -1
  77. package/dist/output/pdf.d.ts +4 -7
  78. package/dist/output/pdf.d.ts.map +1 -1
  79. package/dist/output/pdf.js +77 -141
  80. package/dist/output/pdf.js.map +1 -1
  81. package/dist/output/webbook.d.ts +10 -10
  82. package/dist/output/webbook.d.ts.map +1 -1
  83. package/dist/output/webbook.js +44 -62
  84. package/dist/output/webbook.js.map +1 -1
  85. package/dist/processor/compile.d.ts +24 -10
  86. package/dist/processor/compile.d.ts.map +1 -1
  87. package/dist/processor/compile.js +195 -130
  88. package/dist/processor/compile.js.map +1 -1
  89. package/dist/processor/html.d.ts +29 -17
  90. package/dist/processor/html.d.ts.map +1 -1
  91. package/dist/processor/html.js +112 -88
  92. package/dist/processor/html.js.map +1 -1
  93. package/dist/processor/markdown.d.ts +1 -1
  94. package/dist/processor/markdown.d.ts.map +1 -1
  95. package/dist/processor/theme.d.ts +3 -3
  96. package/dist/processor/theme.d.ts.map +1 -1
  97. package/dist/processor/theme.js +29 -53
  98. package/dist/processor/theme.js.map +1 -1
  99. package/dist/server.d.ts +17 -38
  100. package/dist/server.d.ts.map +1 -1
  101. package/dist/server.js +76 -102
  102. package/dist/server.js.map +1 -1
  103. package/dist/util.d.ts +9 -29
  104. package/dist/util.d.ts.map +1 -1
  105. package/dist/util.js +54 -158
  106. package/dist/util.js.map +1 -1
  107. package/dist/vite/plugin-util.d.ts +6 -0
  108. package/dist/vite/plugin-util.d.ts.map +1 -0
  109. package/dist/vite/plugin-util.js +20 -0
  110. package/dist/vite/plugin-util.js.map +1 -0
  111. package/dist/vite/vite-plugin-browser.d.ts +8 -0
  112. package/dist/vite/vite-plugin-browser.d.ts.map +1 -0
  113. package/dist/vite/vite-plugin-browser.js +57 -0
  114. package/dist/vite/vite-plugin-browser.js.map +1 -0
  115. package/dist/vite/vite-plugin-dev-server.d.ts +8 -0
  116. package/dist/vite/vite-plugin-dev-server.d.ts.map +1 -0
  117. package/dist/vite/vite-plugin-dev-server.js +267 -0
  118. package/dist/vite/vite-plugin-dev-server.js.map +1 -0
  119. package/dist/vite/vite-plugin-static-serve.d.ts +8 -0
  120. package/dist/vite/vite-plugin-static-serve.d.ts.map +1 -0
  121. package/dist/vite/vite-plugin-static-serve.js +24 -0
  122. package/dist/vite/vite-plugin-static-serve.js.map +1 -0
  123. package/dist/vite/vite-plugin-viewer.d.ts +8 -0
  124. package/dist/vite/vite-plugin-viewer.d.ts.map +1 -0
  125. package/dist/vite/vite-plugin-viewer.js +52 -0
  126. package/dist/vite/vite-plugin-viewer.js.map +1 -0
  127. package/dist/vite-adapter.d.ts +3 -0
  128. package/dist/vite-adapter.d.ts.map +1 -0
  129. package/dist/vite-adapter.js +27 -0
  130. package/dist/vite-adapter.js.map +1 -0
  131. package/package.json +13 -15
  132. package/dist/build.d.ts +0 -21
  133. package/dist/build.d.ts.map +0 -1
  134. package/dist/build.js +0 -119
  135. package/dist/build.js.map +0 -1
  136. package/dist/init.d.ts +0 -16
  137. package/dist/init.d.ts.map +0 -1
  138. package/dist/init.js.map +0 -1
  139. package/dist/input/config.d.ts.map +0 -1
  140. package/dist/input/config.js +0 -807
  141. package/dist/input/config.js.map +0 -1
  142. package/dist/input/input-types.d.ts +0 -34
  143. package/dist/input/input-types.d.ts.map +0 -1
  144. package/dist/input/input-types.js +0 -34
  145. package/dist/input/input-types.js.map +0 -1
  146. package/dist/input/schema.d.ts.map +0 -1
  147. package/dist/input/schema.js +0 -233
  148. package/dist/input/schema.js.map +0 -1
  149. package/dist/output/output-types.d.ts +0 -26
  150. package/dist/output/output-types.d.ts.map +0 -1
  151. package/dist/output/output-types.js +0 -23
  152. package/dist/output/output-types.js.map +0 -1
  153. package/dist/preview.d.ts +0 -11
  154. package/dist/preview.d.ts.map +0 -1
  155. package/dist/preview.js +0 -191
  156. package/dist/preview.js.map +0 -1
@@ -1 +1 @@
1
- {"version":3,"file":"preview.parser.js","sourceRoot":"","sources":["../../src/commands/preview.parser.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAE,MAAM,EAAE,MAAM,WAAW,CAAC;AAE5C,MAAM,UAAU,yBAAyB;IACvC,MAAM,OAAO,GAAG,IAAI,OAAO,EAAE,CAAC;IAC9B,OAAO;SACJ,IAAI,CAAC,qBAAqB,CAAC;SAC3B,WAAW,CAAC,uBAAuB,CAAC;SACpC,SAAS,CAAC,SAAS,CAAC;SACpB,MAAM,CAAC,4BAA4B,EAAE,+BAA+B,CAAC;SACrE,MAAM,CAAC,qBAAqB,EAAE,4BAA4B,CAAC;SAC3D,MAAM,CACL,mBAAmB,EACnB;;mDAE6C,CAC9C;SACA,MAAM,CAAC,kBAAkB,EAAE,kBAAkB,CAAC;SAC9C,MAAM,CACL,iBAAiB,EACjB,6DAA6D,CAC9D;SACA,MAAM,CACL,wBAAwB,EACxB,kGAAkG,CACnG;SACA,MAAM,CACL,aAAa,EACb,0DAA0D,CAC3D;SACA,MAAM,CAAC,sBAAsB,EAAE,mCAAmC,CAAC;SACnE,MAAM,CAAC,gCAAgC,EAAE,6BAA6B,CAAC;SACvE,MAAM,CAAC,kBAAkB,EAAE,4BAA4B,CAAC;SACxD,MAAM,CAAC,aAAa,EAAE,qCAAqC,CAAC;SAC5D,MAAM,CAAC,iBAAiB,EAAE,OAAO,CAAC;SAClC,MAAM,CAAC,mBAAmB,EAAE,QAAQ,CAAC;SACrC,MAAM,CAAC,2BAA2B,EAAE,UAAU,CAAC;SAC/C,SAAS,CACR,IAAI,MAAM,CACR,mCAAmC,EACnC,kCAAkC,CACnC,CAAC,OAAO,CAAC,CAAC,KAAK,EAAE,KAAK,CAAC,CAAC,CAC1B;SACA,SAAS,CAAC,IAAI,MAAM,CAAC,WAAW,EAAE,4BAA4B,CAAC,CAAC,QAAQ,EAAE,CAAC;SAC3E,SAAS,CACR,IAAI,MAAM,CAAC,cAAc,EAAE,+BAA+B,CAAC,CAAC,QAAQ,EAAE,CACvE;SACA,MAAM,CACL,6BAA6B,EAC7B,oDAAoD,CACrD;SACA,MAAM,CACL,QAAQ,EACR;4DACsD,CACvD;SACA,MAAM,CACL,gBAAgB,EAChB;oGAC8F,CAC/F;SACA,MAAM,CACL,6BAA6B,EAC7B,qEAAqE,CACtE;SACA,SAAS,CACR,IAAI,MAAM,CACR,qBAAqB,EACrB;4DACoD,CACrD,CAAC,OAAO,CAAC,CAAC,UAAU,EAAE,SAAS,EAAE,QAAQ,CAAC,CAAC,CAC7C;SACA,SAAS,CACR,IAAI,MAAM,CACR,8BAA8B,EAC9B,sDAAsD,CACvD,CACF;SACA,SAAS,CACR,IAAI,MAAM,CACR,8BAA8B,EAC9B,kDAAkD,CACnD,CACF;SACA,SAAS,CACR,IAAI,MAAM,CACR,0BAA0B,EAC1B,iDAAiD,CAClD,CACF;SACA,SAAS,CACR,IAAI,MAAM,CACR,0BAA0B,EAC1B,iDAAiD,CAClD,CACF;SACA,SAAS,CACR,IAAI,MAAM,CACR,qBAAqB,EACrB,wCAAwC,CACzC;SACE,OAAO,CAAC,CAAC,QAAQ,EAAE,MAAM,EAAE,SAAS,EAAE,OAAO,CAAC,CAAC;SAC/C,OAAO,CAAC,MAAM,CAAC,CACnB;SACA,SAAS,CACR,IAAI,MAAM,CACR,uBAAuB,EACvB,sEAAsE,CACvE,CACF;QACD,+CAA+C;SAC9C,SAAS,CAAC,IAAI,MAAM,CAAC,8BAA8B,CAAC,CAAC,QAAQ,EAAE,CAAC;SAChE,SAAS,CAAC,IAAI,MAAM,CAAC,WAAW,CAAC,CAAC,QAAQ,EAAE,CAAC,CAAC;IACjD,OAAO,OAAO,CAAC;AACjB,CAAC"}
1
+ {"version":3,"file":"preview.parser.js","sourceRoot":"","sources":["../../src/commands/preview.parser.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,7 @@
1
+ import { ParsedVivliostyleConfigSchema } from './schema.js';
2
+ export declare function loadVivliostyleConfig({ configPath, cwd, }: {
3
+ configPath?: string;
4
+ cwd?: string;
5
+ }): Promise<ParsedVivliostyleConfigSchema | undefined>;
6
+ export declare function warnDeprecatedConfig(config: ParsedVivliostyleConfigSchema): void;
7
+ //# sourceMappingURL=load.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"load.d.ts","sourceRoot":"","sources":["../../src/config/load.ts"],"names":[],"mappings":"AAYA,OAAO,EACL,6BAA6B,EAE9B,MAAM,aAAa,CAAC;AAUrB,wBAAsB,qBAAqB,CAAC,EAC1C,UAAU,EACV,GAAG,GACJ,EAAE;IACD,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,GAAG,CAAC,EAAE,MAAM,CAAC;CACd,GAAG,OAAO,CAAC,6BAA6B,GAAG,SAAS,CAAC,CAkDrD;AAED,wBAAgB,oBAAoB,CAAC,MAAM,EAAE,6BAA6B,QAkBzE"}
@@ -0,0 +1,72 @@
1
+ import fs from 'node:fs';
2
+ import { createRequire } from 'node:module';
3
+ import { pathToFileURL } from 'node:url';
4
+ import upath from 'upath';
5
+ import * as v from 'valibot';
6
+ import { Logger } from '../logger.js';
7
+ import { cwd as defaultRoot, DetailError, parseJsonc, prettifySchemaError, } from '../util.js';
8
+ import { VivliostyleConfigSchema, } from './schema.js';
9
+ const require = createRequire(import.meta.url);
10
+ function locateVivliostyleConfig(cwd) {
11
+ return ['.js', '.mjs', '.cjs', '.json']
12
+ .map((ext) => upath.join(cwd, `vivliostyle.config${ext}`))
13
+ .find((p) => fs.existsSync(p));
14
+ }
15
+ export async function loadVivliostyleConfig({ configPath, cwd, }) {
16
+ const absPath = configPath
17
+ ? upath.resolve(cwd ?? defaultRoot, configPath)
18
+ : locateVivliostyleConfig(cwd ?? defaultRoot);
19
+ if (!absPath) {
20
+ return;
21
+ }
22
+ let config;
23
+ let jsonRaw;
24
+ try {
25
+ if (upath.extname(absPath) === '.json') {
26
+ jsonRaw = fs.readFileSync(absPath, 'utf8');
27
+ config = parseJsonc(jsonRaw);
28
+ }
29
+ else {
30
+ // Clear require cache to reload CJS config files
31
+ delete require.cache[require.resolve(absPath)];
32
+ const url = pathToFileURL(absPath);
33
+ // Invalidate cache for ESM config files
34
+ // https://github.com/nodejs/node/issues/49442
35
+ url.search = `version=${Date.now()}`;
36
+ config = (await import(/* @vite-ignore */ url.href)).default;
37
+ jsonRaw = JSON.stringify(config, null, 2);
38
+ }
39
+ }
40
+ catch (error) {
41
+ const thrownError = error;
42
+ throw new DetailError(`An error occurred on loading a config file: ${absPath}`, thrownError.stack ?? thrownError.message);
43
+ }
44
+ const result = v.safeParse(VivliostyleConfigSchema, config);
45
+ if (result.success) {
46
+ const { tasks, inlineOptions } = result.output;
47
+ return {
48
+ tasks,
49
+ inlineOptions: {
50
+ ...inlineOptions,
51
+ cwd: cwd ?? defaultRoot,
52
+ config: absPath,
53
+ },
54
+ };
55
+ }
56
+ else {
57
+ const errorString = prettifySchemaError(jsonRaw, result.issues);
58
+ throw new DetailError(`Validation of vivliostyle config failed. Please check the schema: ${configPath}`, errorString);
59
+ }
60
+ }
61
+ export function warnDeprecatedConfig(config) {
62
+ if (config.tasks.some((task) => task.includeAssets)) {
63
+ Logger.logWarn("'includeAssets' property of Vivliostyle config was deprecated and will be removed in a future release. Please use 'copyAsset.includes' property instead.");
64
+ }
65
+ if (config.tasks.some((task) => task.tocTitle)) {
66
+ Logger.logWarn("'tocTitle' property of Vivliostyle config was deprecated and will be removed in a future release. Please use 'toc.title' property instead.");
67
+ }
68
+ if (config.tasks.some((task) => task.http)) {
69
+ Logger.logWarn("'http' property of Vivliostyle config was deprecated and will be removed in a future release. This option is enabled by default, and the file protocol is no longer supported.");
70
+ }
71
+ }
72
+ //# sourceMappingURL=load.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"load.js","sourceRoot":"","sources":["../../src/config/load.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,4 @@
1
+ import { ParsedBuildTask, ParsedVivliostyleConfigSchema, ParsedVivliostyleInlineConfig } from './schema.js';
2
+ export declare function mergeConfig(base: ParsedVivliostyleConfigSchema, override: Partial<ParsedBuildTask>): ParsedVivliostyleConfigSchema;
3
+ export declare function mergeInlineConfig({ tasks, inlineOptions }: ParsedVivliostyleConfigSchema, inlineConfig: ParsedVivliostyleInlineConfig): ParsedVivliostyleConfigSchema;
4
+ //# sourceMappingURL=merge.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"merge.d.ts","sourceRoot":"","sources":["../../src/config/merge.ts"],"names":[],"mappings":"AAAA,OAAO,EAEL,eAAe,EACf,6BAA6B,EAC7B,6BAA6B,EAC9B,MAAM,aAAa,CAAC;AAYrB,wBAAgB,WAAW,CACzB,IAAI,EAAE,6BAA6B,EACnC,QAAQ,EAAE,OAAO,CAAC,eAAe,CAAC,GACjC,6BAA6B,CAQ/B;AAED,wBAAgB,iBAAiB,CAC/B,EAAE,KAAK,EAAE,aAAa,EAAE,EAAE,6BAA6B,EACvD,YAAY,EAAE,6BAA6B,GAC1C,6BAA6B,CAmG/B"}
@@ -0,0 +1,78 @@
1
+ const pruneObject = (obj) => {
2
+ const ret = { ...obj };
3
+ for (const key in ret) {
4
+ if (ret[key] === undefined || ret[key] === null) {
5
+ delete ret[key];
6
+ }
7
+ }
8
+ return ret;
9
+ };
10
+ export function mergeConfig(base, override) {
11
+ return {
12
+ tasks: base.tasks.map((task, i) => ({
13
+ ...pruneObject(task),
14
+ ...pruneObject(override),
15
+ })),
16
+ inlineOptions: base.inlineOptions,
17
+ };
18
+ }
19
+ export function mergeInlineConfig({ tasks, inlineOptions }, inlineConfig) {
20
+ const { theme, size, pressReady, title, author, language, readingProgression, timeout, image, viewer, viewerParam, browser, output, renderMode, preflight, preflightOption,
21
+ // InlineOptions
22
+ cwd, config, input, cropMarks, bleed, cropOffset, css, style, userStyle, singleDoc, quick, sandbox, executableBrowser, proxyServer, proxyBypass, proxyUser, proxyPass, logLevel, ignoreHttpsErrors, openViewer, enableStaticServe, enableViewerStartPage, } = inlineConfig;
23
+ return {
24
+ tasks: tasks.map((task) => ({
25
+ ...pruneObject(task),
26
+ ...pruneObject({
27
+ theme,
28
+ size,
29
+ pressReady,
30
+ title,
31
+ author,
32
+ language,
33
+ readingProgression,
34
+ timeout,
35
+ image,
36
+ viewer,
37
+ viewerParam,
38
+ browser,
39
+ }),
40
+ output: (output?.length ? output : task.output)?.map((o) => ({
41
+ ...pruneObject(o),
42
+ ...pruneObject({
43
+ renderMode,
44
+ preflight,
45
+ preflightOption,
46
+ }),
47
+ })),
48
+ })),
49
+ inlineOptions: {
50
+ ...pruneObject(inlineOptions),
51
+ ...pruneObject({
52
+ cwd,
53
+ config,
54
+ input,
55
+ cropMarks,
56
+ bleed,
57
+ cropOffset,
58
+ css,
59
+ style,
60
+ userStyle,
61
+ singleDoc,
62
+ quick,
63
+ sandbox,
64
+ executableBrowser,
65
+ proxyServer,
66
+ proxyBypass,
67
+ proxyUser,
68
+ proxyPass,
69
+ logLevel,
70
+ ignoreHttpsErrors,
71
+ openViewer,
72
+ enableStaticServe,
73
+ enableViewerStartPage,
74
+ }),
75
+ },
76
+ };
77
+ }
78
+ //# sourceMappingURL=merge.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"merge.js","sourceRoot":"","sources":["../../src/config/merge.ts"],"names":[],"mappings":"AAOA,MAAM,WAAW,GAAG,CAAoC,GAAM,EAAE,EAAE;IAChE,MAAM,GAAG,GAAG,EAAE,GAAG,GAAG,EAAE,CAAC;IACvB,KAAK,MAAM,GAAG,IAAI,GAAG,EAAE,CAAC;QACtB,IAAI,GAAG,CAAC,GAAG,CAAC,KAAK,SAAS,IAAI,GAAG,CAAC,GAAG,CAAC,KAAK,IAAI,EAAE,CAAC;YAChD,OAAO,GAAG,CAAC,GAAG,CAAC,CAAC;QAClB,CAAC;IACH,CAAC;IACD,OAAO,GAA4C,CAAC;AACtD,CAAC,CAAC;AAEF,MAAM,UAAU,WAAW,CACzB,IAAmC,EACnC,QAAkC;IAElC,OAAO;QACL,KAAK,EAAE,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,IAAI,EAAE,CAAC,EAAE,EAAE,CAAC,CAAC;YAClC,GAAG,WAAW,CAAC,IAAI,CAAC;YACpB,GAAG,WAAW,CAAC,QAAQ,CAAC;SACzB,CAAC,CAAC;QACH,aAAa,EAAE,IAAI,CAAC,aAAa;KAClC,CAAC;AACJ,CAAC;AAED,MAAM,UAAU,iBAAiB,CAC/B,EAAE,KAAK,EAAE,aAAa,EAAiC,EACvD,YAA2C;IAE3C,MAAM,EACJ,KAAK,EACL,IAAI,EACJ,UAAU,EACV,KAAK,EACL,MAAM,EACN,QAAQ,EACR,kBAAkB,EAClB,OAAO,EACP,KAAK,EACL,MAAM,EACN,WAAW,EACX,OAAO,EACP,MAAM,EACN,UAAU,EACV,SAAS,EACT,eAAe;IACf,gBAAgB;IAChB,GAAG,EACH,MAAM,EACN,KAAK,EACL,SAAS,EACT,KAAK,EACL,UAAU,EACV,GAAG,EACH,KAAK,EACL,SAAS,EACT,SAAS,EACT,KAAK,EACL,OAAO,EACP,iBAAiB,EACjB,WAAW,EACX,WAAW,EACX,SAAS,EACT,SAAS,EACT,QAAQ,EACR,iBAAiB,EACjB,UAAU,EACV,iBAAiB,EACjB,qBAAqB,GACtB,GAAG,YAAY,CAAC;IAEjB,OAAO;QACL,KAAK,EAAE,KAAK,CAAC,GAAG,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,CAAC;YAC1B,GAAG,WAAW,CAAC,IAAI,CAAC;YACpB,GAAG,WAAW,CAAC;gBACb,KAAK;gBACL,IAAI;gBACJ,UAAU;gBACV,KAAK;gBACL,MAAM;gBACN,QAAQ;gBACR,kBAAkB;gBAClB,OAAO;gBACP,KAAK;gBACL,MAAM;gBACN,WAAW;gBACX,OAAO;aACR,CAAC;YACF,MAAM,EAAE,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,IAAI,CAAC,MAAM,CAAC,EAAE,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC;gBAC3D,GAAG,WAAW,CAAC,CAAC,CAAC;gBACjB,GAAG,WAAW,CAAC;oBACb,UAAU;oBACV,SAAS;oBACT,eAAe;iBAChB,CAAC;aACH,CAAC,CAAC;SACJ,CAAC,CAAC;QACH,aAAa,EAAE;YACb,GAAG,WAAW,CAAC,aAAa,CAAC;YAC7B,GAAG,WAAW,CAAC;gBACb,GAAG;gBACH,MAAM;gBACN,KAAK;gBACL,SAAS;gBACT,KAAK;gBACL,UAAU;gBACV,GAAG;gBACH,KAAK;gBACL,SAAS;gBACT,SAAS;gBACT,KAAK;gBACL,OAAO;gBACP,iBAAiB;gBACjB,WAAW;gBACX,WAAW;gBACX,SAAS;gBACT,SAAS;gBACT,QAAQ;gBACR,iBAAiB;gBACjB,UAAU;gBACV,iBAAiB;gBACjB,qBAAqB;aAGtB,CAAC;SACH;KACF,CAAC;AACJ,CAAC"}
@@ -1,9 +1,8 @@
1
1
  import { Metadata, StringifyMarkdownOptions } from '@vivliostyle/vfm';
2
2
  import { Processor } from 'unified';
3
- import { InputFormat, ManuscriptMediaType } from '../input/input-types.js';
4
- import { OutputFormat } from '../output/output-types.js';
5
- import { PageSize } from '../server.js';
6
- import { BrowserType, StructuredDocument, StructuredDocumentSection, ThemeObject, VivliostyleConfigEntry } from './schema.js';
3
+ import { ProxyOptions, UserConfig } from 'vite';
4
+ import { BrowserType, InputFormat, StructuredDocument, StructuredDocumentSection, ThemeConfig } from '../config/schema.js';
5
+ import { InlineOptions, ParsedBuildTask } from './schema.js';
7
6
  export type ParsedTheme = UriTheme | FileTheme | PackageTheme;
8
7
  export interface UriTheme {
9
8
  type: 'uri';
@@ -23,11 +22,24 @@ export interface PackageTheme {
23
22
  location: string;
24
23
  importPath?: string | string[];
25
24
  }
25
+ export type EntrySource = FileEntrySource | UriEntrySource;
26
+ export interface FileEntrySource {
27
+ type: 'file';
28
+ pathname: string;
29
+ contentType: ManuscriptMediaType;
30
+ }
31
+ export interface UriEntrySource {
32
+ type: 'uri';
33
+ href: string;
34
+ rootDir: string;
35
+ }
36
+ export declare const manuscriptMediaTypes: readonly ["text/markdown", "text/html", "application/xhtml+xml"];
37
+ export type ManuscriptMediaType = (typeof manuscriptMediaTypes)[number];
26
38
  export interface ManuscriptEntry {
27
- type: ManuscriptMediaType;
39
+ contentType: ManuscriptMediaType;
28
40
  title?: string;
29
41
  themes: ParsedTheme[];
30
- source: string;
42
+ source: EntrySource;
31
43
  template?: undefined;
32
44
  target: string;
33
45
  rel?: string | string[];
@@ -37,10 +49,7 @@ export interface ContentsEntry {
37
49
  title?: string;
38
50
  themes: ParsedTheme[];
39
51
  source?: undefined;
40
- template?: {
41
- source: string;
42
- type: ManuscriptMediaType;
43
- };
52
+ template?: EntrySource;
44
53
  target: string;
45
54
  tocTitle: string;
46
55
  sectionDepth: number;
@@ -60,80 +69,69 @@ export interface CoverEntry {
60
69
  title?: string;
61
70
  themes: ParsedTheme[];
62
71
  source?: undefined;
63
- template?: {
64
- source: string;
65
- type: ManuscriptMediaType;
66
- };
72
+ template?: EntrySource;
67
73
  target: string;
68
74
  coverImageSrc: string;
69
75
  coverImageAlt: string;
70
76
  pageBreakBefore?: 'left' | 'right' | 'recto' | 'verso';
71
77
  }
72
78
  export type ParsedEntry = ManuscriptEntry | ContentsEntry | CoverEntry;
73
- export interface CliFlags {
74
- input?: string;
75
- configPath?: string;
76
- targets?: Pick<OutputFormat, 'path' | 'format'>[];
77
- theme?: string;
78
- size?: string;
79
- cropMarks?: boolean;
80
- bleed?: string;
81
- cropOffset?: string;
82
- css?: string;
83
- style?: string;
84
- userStyle?: string;
85
- singleDoc?: boolean;
86
- quick?: boolean;
87
- pressReady?: boolean;
88
- title?: string;
89
- author?: string;
90
- language?: string;
91
- /** @deprecated */ verbose?: boolean;
92
- timeout?: number;
93
- renderMode?: 'local' | 'docker';
94
- preflight?: 'press-ready' | 'press-ready-local';
95
- preflightOption?: string[];
96
- sandbox?: boolean;
97
- executableBrowser?: string;
98
- image?: string;
99
- http?: boolean;
100
- viewer?: string;
101
- viewerParam?: string;
102
- browser?: 'chromium' | 'firefox' | 'webkit';
103
- proxyServer?: string;
104
- proxyBypass?: string;
105
- proxyUser?: string;
106
- proxyPass?: string;
107
- readingProgression?: 'ltr' | 'rtl';
108
- logLevel?: 'silent' | 'info' | 'verbose' | 'debug';
109
- ignoreHttpsErrors?: boolean;
110
- /** @deprecated */ executableChromium?: string;
111
- }
112
79
  export interface WebPublicationManifestConfig {
80
+ type: 'webpub';
113
81
  manifestPath: string;
114
- needToGenerateManifest?: boolean;
82
+ needToGenerateManifest: boolean;
83
+ }
84
+ export interface EpubEntryConfig {
85
+ type: 'epub';
86
+ epubPath: string;
87
+ epubTmpOutputDir: string;
115
88
  }
116
- export interface EpubManifestConfig {
89
+ export interface EpubOpfEntryConfig {
90
+ type: 'epub-opf';
117
91
  epubOpfPath: string;
118
92
  }
119
- export interface WebbookEntryConfig {
93
+ export interface WebBookEntryConfig {
94
+ type: 'webbook';
120
95
  webbookEntryUrl: string;
121
96
  }
122
- export type ManifestConfig = XOR<[
123
- WebPublicationManifestConfig,
124
- WebbookEntryConfig,
125
- EpubManifestConfig
126
- ]>;
97
+ export type ViewerInputConfig = WebPublicationManifestConfig | EpubEntryConfig | EpubOpfEntryConfig | WebBookEntryConfig;
98
+ export interface PdfOutput {
99
+ format: 'pdf';
100
+ path: string;
101
+ renderMode: 'local' | 'docker';
102
+ preflight: 'press-ready' | 'press-ready-local' | undefined;
103
+ preflightOption: string[];
104
+ }
105
+ export interface WebPublicationOutput {
106
+ format: 'webpub';
107
+ path: string;
108
+ }
109
+ export interface EpubOutput {
110
+ format: 'epub';
111
+ path: string;
112
+ version: '3.0';
113
+ }
114
+ export type OutputConfig = PdfOutput | WebPublicationOutput | EpubOutput;
115
+ export type PageSize = {
116
+ format: string;
117
+ } | {
118
+ width: string;
119
+ height: string;
120
+ };
127
121
  export type DocumentProcessorFactory = (options: StringifyMarkdownOptions, metadata: Metadata) => Processor;
128
- export type MergedConfig = {
122
+ export type ResolvedTaskConfig = {
123
+ context: string;
129
124
  entryContextDir: string;
130
125
  workspaceDir: string;
131
126
  themesDir: string;
132
127
  entries: ParsedEntry[];
133
- input: InputFormat;
134
- outputs: OutputFormat[];
128
+ input: {
129
+ format: InputFormat;
130
+ entry: string;
131
+ };
132
+ viewerInput: ViewerInputConfig;
133
+ outputs: OutputConfig[];
135
134
  themeIndexes: Set<ParsedTheme>;
136
- rootThemes: ParsedTheme[];
137
135
  copyAsset: {
138
136
  includes: string[];
139
137
  excludes: string[];
@@ -143,6 +141,7 @@ export type MergedConfig = {
143
141
  source: string;
144
142
  target: string;
145
143
  }[];
144
+ temporaryFilePrefix: string;
146
145
  size: PageSize | undefined;
147
146
  cropMarks: boolean;
148
147
  bleed: string | undefined;
@@ -164,7 +163,6 @@ export type MergedConfig = {
164
163
  cover: {
165
164
  src: string;
166
165
  name: string;
167
- htmlPath: string | undefined;
168
166
  } | undefined;
169
167
  timeout: number;
170
168
  sandbox: boolean;
@@ -177,28 +175,29 @@ export type MergedConfig = {
177
175
  password: string | undefined;
178
176
  } | undefined;
179
177
  image: string;
180
- httpServer: boolean;
181
178
  viewer: string | undefined;
182
179
  viewerParam: string | undefined;
183
180
  logLevel: 'silent' | 'info' | 'verbose' | 'debug';
184
181
  ignoreHttpsErrors: boolean;
185
- } & ManifestConfig;
186
- export declare function validateTimeoutFlag(val: string): number;
187
- export declare function contextResolve(context: string, loc: string | undefined): string | undefined;
182
+ base: string;
183
+ server: {
184
+ host: string | boolean;
185
+ port: number;
186
+ proxy: Record<string, string | ProxyOptions>;
187
+ };
188
+ static: Record<string, string[]>;
189
+ rootUrl: string;
190
+ viteConfig: UserConfig | undefined;
191
+ viteConfigFile: string | boolean;
192
+ };
193
+ export declare function isWebPubConfig(config: ResolvedTaskConfig): config is ResolvedTaskConfig & {
194
+ viewerInput: WebPublicationManifestConfig;
195
+ };
188
196
  export declare function parseTheme({ theme, context, workspaceDir, themesDir, }: {
189
- theme: string | ThemeObject;
197
+ theme: string | ThemeConfig;
190
198
  context: string;
191
199
  workspaceDir: string;
192
200
  themesDir: string;
193
201
  }): ParsedTheme;
194
- export declare function collectVivliostyleConfig<T extends CliFlags>(cliFlags: T): Promise<{
195
- cliFlags: T;
196
- } & ({
197
- vivliostyleConfig: VivliostyleConfigEntry[];
198
- vivliostyleConfigPath: string;
199
- } | {
200
- vivliostyleConfig?: undefined;
201
- vivliostyleConfigPath?: undefined;
202
- })>;
203
- export declare function mergeConfig<T extends CliFlags>(cliFlags: T, config: VivliostyleConfigEntry | undefined, context: string, prevConfig?: MergedConfig): Promise<MergedConfig>;
204
- //# sourceMappingURL=config.d.ts.map
202
+ export declare function resolveTaskConfig(config: ParsedBuildTask, options: InlineOptions): ResolvedTaskConfig;
203
+ //# sourceMappingURL=resolve.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"resolve.d.ts","sourceRoot":"","sources":["../../src/config/resolve.ts"],"names":[],"mappings":"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"}