@vivliostyle/cli 8.9.1 → 8.11.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/index.d.ts CHANGED
@@ -1,6 +1,7 @@
1
- export { build, BuildCliFlags } from './build.js';
2
- export { init, InitCliFlags } from './init.js';
3
- export { preview, PreviewCliFlags } from './preview.js';
1
+ export { BuildCliFlags, build } from './build.js';
2
+ export { InitCliFlags, init } from './init.js';
3
+ export { PreviewCliFlags, preview } from './preview.js';
4
4
  export type { PublicationManifest } from './schema/publication.schema.js';
5
+ export type { StructuredDocument, StructuredDocumentSection, } from './schema/vivliostyle.js';
5
6
  export type { VivliostyleConfigSchema } from './schema/vivliostyleConfig.schema.js';
6
7
  //# sourceMappingURL=index.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,KAAK,EAAE,aAAa,EAAE,MAAM,YAAY,CAAC;AAClD,OAAO,EAAE,IAAI,EAAE,YAAY,EAAE,MAAM,WAAW,CAAC;AAC/C,OAAO,EAAE,OAAO,EAAE,eAAe,EAAE,MAAM,cAAc,CAAC;AACxD,YAAY,EAAE,mBAAmB,EAAE,MAAM,gCAAgC,CAAC;AAC1E,YAAY,EAAE,uBAAuB,EAAE,MAAM,sCAAsC,CAAC"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,aAAa,EAAE,KAAK,EAAE,MAAM,YAAY,CAAC;AAClD,OAAO,EAAE,YAAY,EAAE,IAAI,EAAE,MAAM,WAAW,CAAC;AAC/C,OAAO,EAAE,eAAe,EAAE,OAAO,EAAE,MAAM,cAAc,CAAC;AACxD,YAAY,EAAE,mBAAmB,EAAE,MAAM,gCAAgC,CAAC;AAC1E,YAAY,EACV,kBAAkB,EAClB,yBAAyB,GAC1B,MAAM,yBAAyB,CAAC;AACjC,YAAY,EAAE,uBAAuB,EAAE,MAAM,sCAAsC,CAAC"}
package/dist/index.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,KAAK,EAAiB,MAAM,YAAY,CAAC;AAClD,OAAO,EAAE,IAAI,EAAgB,MAAM,WAAW,CAAC;AAC/C,OAAO,EAAE,OAAO,EAAmB,MAAM,cAAc,CAAC"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAiB,KAAK,EAAE,MAAM,YAAY,CAAC;AAClD,OAAO,EAAgB,IAAI,EAAE,MAAM,WAAW,CAAC;AAC/C,OAAO,EAAmB,OAAO,EAAE,MAAM,cAAc,CAAC"}
@@ -1 +1 @@
1
- {"version":3,"file":"init.d.ts","sourceRoot":"","sources":["../src/init.ts"],"names":[],"mappings":"AAKA,MAAM,WAAW,YAAY;IAC3B,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,QAAQ,CAAC,EAAE,QAAQ,GAAG,MAAM,GAAG,OAAO,CAAC;CACxC;AAED,wBAAsB,IAAI,CAAC,QAAQ,EAAE,YAAY,iBAiEhD"}
1
+ {"version":3,"file":"init.d.ts","sourceRoot":"","sources":["../src/init.ts"],"names":[],"mappings":"AAKA,MAAM,WAAW,YAAY;IAC3B,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,QAAQ,CAAC,EAAE,QAAQ,GAAG,MAAM,GAAG,OAAO,CAAC;CACxC;AAED,wBAAsB,IAAI,CAAC,QAAQ,EAAE,YAAY,iBAsEhD"}
package/dist/init.js CHANGED
@@ -6,6 +6,7 @@ export async function init(cliFlags) {
6
6
  setLogLevel(cliFlags.logLevel);
7
7
  const vivliostyleConfigPath = upath.join(cwd, 'vivliostyle.config.js');
8
8
  if (fs.existsSync(vivliostyleConfigPath)) {
9
+ runExitHandlers();
9
10
  return log(`${chalk.yellow('vivliostyle.config.js already exists. aborting.')}`);
10
11
  }
11
12
  // prettier-ignore
@@ -37,7 +38,11 @@ const vivliostyleConfig = {
37
38
  // },
38
39
  // ],
39
40
  // workspaceDir: '.vivliostyle', // directory which is saved intermediate files.
40
- // toc: true, // whether generate and include ToC HTML or not, default to 'false'.
41
+ // toc: {
42
+ // title: 'Table of Contents',
43
+ // htmlPath: 'index.html',
44
+ // sectionDepth: 3,
45
+ // },
41
46
  // cover: './cover.png', // cover image. default to undefined.
42
47
  // vfm: { // options of VFM processor
43
48
  // replace: [ // specify replace handlers to modify HTML outputs
package/dist/init.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"init.js","sourceRoot":"","sources":["../src/init.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,MAAM,OAAO,CAAC;AAC1B,OAAO,EAAE,MAAM,SAAS,CAAC;AACzB,OAAO,EAAE,eAAe,EAAE,MAAM,gBAAgB,CAAC;AACjD,OAAO,EAAE,GAAG,EAAE,GAAG,EAAE,eAAe,EAAE,WAAW,EAAE,KAAK,EAAE,MAAM,WAAW,CAAC;AAW1E,MAAM,CAAC,KAAK,UAAU,IAAI,CAAC,QAAsB;IAC/C,WAAW,CAAC,QAAQ,CAAC,QAAQ,CAAC,CAAC;IAE/B,MAAM,qBAAqB,GAAG,KAAK,CAAC,IAAI,CAAC,GAAG,EAAE,uBAAuB,CAAC,CAAC;IAEvE,IAAI,EAAE,CAAC,UAAU,CAAC,qBAAqB,CAAC,EAAE;QACxC,OAAO,GAAG,CACR,GAAG,KAAK,CAAC,MAAM,CAAC,iDAAiD,CAAC,EAAE,CACrE,CAAC;KACH;IAED,kBAAkB;IAClB,MAAM,iBAAiB,GAAG;;;YAGf,QAAQ,CAAC,KAAK,IAAI,WAAW;aAC7B,QAAQ,CAAC,MAAM,IAAI,cAAc;IAC1C,QAAQ,CAAC,QAAQ,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,KAAK,cAAc,QAAQ,CAAC,QAAQ,IAAI,IAAI;;IAErE,QAAQ,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,KAAK,UAAU,QAAQ,CAAC,IAAI,IAAI,IAAI;IACzD,QAAQ,CAAC,KAAK,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,KAAK,WAAW,QAAQ,CAAC,KAAK,IAAI,EAAE;YAClD,eAAe;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CAsC1B,CAAC;IAEA,EAAE,CAAC,aAAa,CAAC,qBAAqB,EAAE,iBAAiB,CAAC,CAAC;IAE3D,eAAe,EAAE,CAAC;IAClB,GAAG,CAAC,wBAAwB,KAAK,CAAC,IAAI,CAAC,uBAAuB,CAAC,EAAE,CAAC,CAAC;AACrE,CAAC"}
1
+ {"version":3,"file":"init.js","sourceRoot":"","sources":["../src/init.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,MAAM,OAAO,CAAC;AAC1B,OAAO,EAAE,MAAM,SAAS,CAAC;AACzB,OAAO,EAAE,eAAe,EAAE,MAAM,gBAAgB,CAAC;AACjD,OAAO,EAAE,GAAG,EAAE,GAAG,EAAE,eAAe,EAAE,WAAW,EAAE,KAAK,EAAE,MAAM,WAAW,CAAC;AAW1E,MAAM,CAAC,KAAK,UAAU,IAAI,CAAC,QAAsB;IAC/C,WAAW,CAAC,QAAQ,CAAC,QAAQ,CAAC,CAAC;IAE/B,MAAM,qBAAqB,GAAG,KAAK,CAAC,IAAI,CAAC,GAAG,EAAE,uBAAuB,CAAC,CAAC;IAEvE,IAAI,EAAE,CAAC,UAAU,CAAC,qBAAqB,CAAC,EAAE;QACxC,eAAe,EAAE,CAAC;QAClB,OAAO,GAAG,CACR,GAAG,KAAK,CAAC,MAAM,CAAC,iDAAiD,CAAC,EAAE,CACrE,CAAC;KACH;IAED,kBAAkB;IAClB,MAAM,iBAAiB,GAAG;;;YAGf,QAAQ,CAAC,KAAK,IAAI,WAAW;aAC7B,QAAQ,CAAC,MAAM,IAAI,cAAc;IAC1C,QAAQ,CAAC,QAAQ,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,KAAK,cAAc,QAAQ,CAAC,QAAQ,IAAI,IAAI;;IAErE,QAAQ,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,KAAK,UAAU,QAAQ,CAAC,IAAI,IAAI,IAAI;IACzD,QAAQ,CAAC,KAAK,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,KAAK,WAAW,QAAQ,CAAC,KAAK,IAAI,EAAE;YAClD,eAAe;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CA0C1B,CAAC;IAEA,EAAE,CAAC,aAAa,CAAC,qBAAqB,EAAE,iBAAiB,CAAC,CAAC;IAE3D,eAAe,EAAE,CAAC;IAClB,GAAG,CAAC,wBAAwB,KAAK,CAAC,IAAI,CAAC,uBAAuB,CAAC,EAAE,CAAC,CAAC;AACrE,CAAC"}
@@ -1,5 +1,6 @@
1
1
  import { InputFormat, ManuscriptMediaType } from '../input/input-types.js';
2
2
  import { OutputFormat } from '../output/output-types.js';
3
+ import { StructuredDocument, StructuredDocumentSection } from '../schema/vivliostyle.js';
3
4
  import type { BrowserType, ThemeObject, VivliostyleConfigEntry } from '../schema/vivliostyleConfig.schema.js';
4
5
  import { PageSize } from '../server.js';
5
6
  export type ParsedTheme = UriTheme | FileTheme | PackageTheme;
@@ -31,9 +32,19 @@ export interface ManuscriptEntry {
31
32
  }
32
33
  export interface ContentsEntry {
33
34
  rel: 'contents';
34
- title?: string;
35
+ title: string;
35
36
  themes: ParsedTheme[];
37
+ source?: undefined;
36
38
  target: string;
39
+ sectionDepth: number;
40
+ transform: {
41
+ transformDocumentList: ((nodeList: StructuredDocument[]) => (propsList: {
42
+ children: any;
43
+ }[]) => any) | undefined;
44
+ transformSectionList: ((nodeList: StructuredDocumentSection[]) => (propsList: {
45
+ children: any;
46
+ }[]) => any) | undefined;
47
+ };
37
48
  pageBreakBefore?: 'left' | 'right' | 'recto' | 'verso';
38
49
  pageCounterReset?: number;
39
50
  }
@@ -41,6 +52,7 @@ export interface CoverEntry {
41
52
  rel: 'cover';
42
53
  title?: string;
43
54
  themes: ParsedTheme[];
55
+ source?: undefined;
44
56
  target: string;
45
57
  coverImageSrc: string;
46
58
  coverImageAlt: string;
@@ -163,5 +175,5 @@ export declare function collectVivliostyleConfig<T extends CliFlags>(cliFlags: T
163
175
  vivliostyleConfig?: undefined;
164
176
  vivliostyleConfigPath?: undefined;
165
177
  })>;
166
- export declare function mergeConfig<T extends CliFlags>(cliFlags: T, config: VivliostyleConfigEntry | undefined, context: string): Promise<MergedConfig>;
178
+ export declare function mergeConfig<T extends CliFlags>(cliFlags: T, config: VivliostyleConfigEntry | undefined, context: string, prevConfig?: MergedConfig): Promise<MergedConfig>;
167
179
  //# sourceMappingURL=config.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"config.d.ts","sourceRoot":"","sources":["../../src/input/config.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"config.d.ts","sourceRoot":"","sources":["../../src/input/config.ts"],"names":[],"mappings":"AAeA,OAAO,EACL,WAAW,EACX,mBAAmB,EAGpB,MAAM,yBAAyB,CAAC;AACjC,OAAO,EACL,YAAY,EAKb,MAAM,2BAA2B,CAAC;AAGnC,OAAO,EACL,kBAAkB,EAClB,yBAAyB,EAC1B,MAAM,0BAA0B,CAAC;AAClC,OAAO,KAAK,EACV,WAAW,EAIX,WAAW,EACX,sBAAsB,EAEvB,MAAM,uCAAuC,CAAC;AAC/C,OAAO,EAAE,QAAQ,EAAE,MAAM,cAAc,CAAC;AAgBxC,MAAM,MAAM,WAAW,GAAG,QAAQ,GAAG,SAAS,GAAG,YAAY,CAAC;AAE9D,MAAM,WAAW,QAAQ;IACvB,IAAI,EAAE,KAAK,CAAC;IACZ,IAAI,EAAE,MAAM,CAAC;IACb,QAAQ,EAAE,MAAM,CAAC;CAClB;AAED,MAAM,WAAW,SAAS;IACxB,IAAI,EAAE,MAAM,CAAC;IACb,IAAI,EAAE,MAAM,CAAC;IACb,MAAM,EAAE,MAAM,CAAC;IACf,QAAQ,EAAE,MAAM,CAAC;CAClB;AAED,MAAM,WAAW,YAAY;IAC3B,IAAI,EAAE,SAAS,CAAC;IAChB,IAAI,EAAE,MAAM,CAAC;IACb,SAAS,EAAE,MAAM,CAAC;IAClB,QAAQ,EAAE,MAAM,CAAC;IACjB,UAAU,CAAC,EAAE,MAAM,GAAG,MAAM,EAAE,CAAC;CAChC;AAED,MAAM,WAAW,eAAe;IAC9B,IAAI,EAAE,mBAAmB,CAAC;IAC1B,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,MAAM,EAAE,WAAW,EAAE,CAAC;IACtB,MAAM,EAAE,MAAM,CAAC;IACf,MAAM,EAAE,MAAM,CAAC;IACf,GAAG,CAAC,EAAE,MAAM,GAAG,MAAM,EAAE,CAAC;CACzB;AAED,MAAM,WAAW,aAAa;IAC5B,GAAG,EAAE,UAAU,CAAC;IAChB,KAAK,EAAE,MAAM,CAAC;IACd,MAAM,EAAE,WAAW,EAAE,CAAC;IACtB,MAAM,CAAC,EAAE,SAAS,CAAC;IACnB,MAAM,EAAE,MAAM,CAAC;IACf,YAAY,EAAE,MAAM,CAAC;IACrB,SAAS,EAAE;QACT,qBAAqB,EACjB,CAAC,CACC,QAAQ,EAAE,kBAAkB,EAAE,KAC3B,CAAC,SAAS,EAAE;YAAE,QAAQ,EAAE,GAAG,CAAA;SAAE,EAAE,KAAK,GAAG,CAAC,GAC7C,SAAS,CAAC;QACd,oBAAoB,EAChB,CAAC,CACC,QAAQ,EAAE,yBAAyB,EAAE,KAClC,CAAC,SAAS,EAAE;YAAE,QAAQ,EAAE,GAAG,CAAA;SAAE,EAAE,KAAK,GAAG,CAAC,GAC7C,SAAS,CAAC;KACf,CAAC;IACF,eAAe,CAAC,EAAE,MAAM,GAAG,OAAO,GAAG,OAAO,GAAG,OAAO,CAAC;IACvD,gBAAgB,CAAC,EAAE,MAAM,CAAC;CAC3B;AAED,MAAM,WAAW,UAAU;IACzB,GAAG,EAAE,OAAO,CAAC;IACb,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,MAAM,EAAE,WAAW,EAAE,CAAC;IACtB,MAAM,CAAC,EAAE,SAAS,CAAC;IACnB,MAAM,EAAE,MAAM,CAAC;IACf,aAAa,EAAE,MAAM,CAAC;IACtB,aAAa,EAAE,MAAM,CAAC;IACtB,eAAe,CAAC,EAAE,MAAM,GAAG,OAAO,GAAG,OAAO,GAAG,OAAO,CAAC;CACxD;AAED,MAAM,MAAM,WAAW,GAAG,eAAe,GAAG,aAAa,GAAG,UAAU,CAAC;AAEvE,MAAM,WAAW,QAAQ;IACvB,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,OAAO,CAAC,EAAE,IAAI,CAAC,YAAY,EAAE,MAAM,GAAG,QAAQ,CAAC,EAAE,CAAC;IAClD,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,SAAS,CAAC,EAAE,OAAO,CAAC;IACpB,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,GAAG,CAAC,EAAE,MAAM,CAAC;IACb,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,SAAS,CAAC,EAAE,OAAO,CAAC;IACpB,KAAK,CAAC,EAAE,OAAO,CAAC;IAChB,UAAU,CAAC,EAAE,OAAO,CAAC;IACrB,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,kBAAkB,CAAC,OAAO,CAAC,EAAE,OAAO,CAAC;IACrC,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,UAAU,CAAC,EAAE,OAAO,GAAG,QAAQ,CAAC;IAChC,SAAS,CAAC,EAAE,aAAa,GAAG,mBAAmB,CAAC;IAChD,eAAe,CAAC,EAAE,MAAM,EAAE,CAAC;IAC3B,OAAO,CAAC,EAAE,OAAO,CAAC;IAClB,iBAAiB,CAAC,EAAE,MAAM,CAAC;IAC3B,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,IAAI,CAAC,EAAE,OAAO,CAAC;IACf,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,OAAO,CAAC,EAAE,UAAU,GAAG,SAAS,GAAG,QAAQ,CAAC;IAC5C,kBAAkB,CAAC,EAAE,KAAK,GAAG,KAAK,CAAC;IACnC,QAAQ,CAAC,EAAE,QAAQ,GAAG,MAAM,GAAG,SAAS,GAAG,OAAO,CAAC;IACnD,kBAAkB,CAAC,kBAAkB,CAAC,EAAE,MAAM,CAAC;CAChD;AAED,MAAM,WAAW,4BAA4B;IAC3C,YAAY,EAAE,MAAM,CAAC;IACrB,sBAAsB,CAAC,EAAE,OAAO,CAAC;CAClC;AACD,MAAM,WAAW,kBAAkB;IACjC,WAAW,EAAE,MAAM,CAAC;CACrB;AACD,MAAM,WAAW,kBAAkB;IACjC,eAAe,EAAE,MAAM,CAAC;CACzB;AACD,MAAM,MAAM,cAAc,GAAG,GAAG,CAC9B;IAAC,4BAA4B;IAAE,kBAAkB;IAAE,kBAAkB;CAAC,CACvE,CAAC;AAEF,MAAM,MAAM,YAAY,GAAG;IACzB,eAAe,EAAE,MAAM,CAAC;IACxB,YAAY,EAAE,MAAM,CAAC;IACrB,SAAS,EAAE,MAAM,CAAC;IAClB,OAAO,EAAE,WAAW,EAAE,CAAC;IACvB,KAAK,EAAE,WAAW,CAAC;IACnB,OAAO,EAAE,YAAY,EAAE,CAAC;IACxB,YAAY,EAAE,GAAG,CAAC,WAAW,CAAC,CAAC;IAC/B,UAAU,EAAE,WAAW,EAAE,CAAC;IAC1B,SAAS,EAAE;QACT,QAAQ,EAAE,MAAM,EAAE,CAAC;QACnB,QAAQ,EAAE,MAAM,EAAE,CAAC;QACnB,cAAc,EAAE,MAAM,EAAE,CAAC;KAC1B,CAAC;IACF,aAAa,EAAE;QACb,MAAM,EAAE,MAAM,CAAC;QACf,MAAM,EAAE,MAAM,CAAC;KAChB,EAAE,CAAC;IACJ,IAAI,EAAE,QAAQ,GAAG,SAAS,CAAC;IAC3B,SAAS,EAAE,OAAO,CAAC;IACnB,KAAK,EAAE,MAAM,GAAG,SAAS,CAAC;IAC1B,UAAU,EAAE,MAAM,GAAG,SAAS,CAAC;IAC/B,GAAG,EAAE,MAAM,GAAG,SAAS,CAAC;IACxB,WAAW,EAAE,MAAM,GAAG,SAAS,CAAC;IAChC,eAAe,EAAE,MAAM,GAAG,SAAS,CAAC;IACpC,SAAS,EAAE,OAAO,CAAC;IACnB,KAAK,EAAE,OAAO,CAAC;IACf,KAAK,EAAE,MAAM,GAAG,SAAS,CAAC;IAC1B,MAAM,EAAE,MAAM,GAAG,SAAS,CAAC;IAC3B,QAAQ,EAAE,MAAM,GAAG,SAAS,CAAC;IAC7B,kBAAkB,EAAE,KAAK,GAAG,KAAK,GAAG,SAAS,CAAC;IAC9C,UAAU,EAAE;QACV,cAAc,EAAE,OAAO,CAAC;QACxB,iBAAiB,EAAE,OAAO,CAAC;KAC5B,CAAC;IACF,KAAK,EACD;QACE,GAAG,EAAE,MAAM,CAAC;QACZ,IAAI,EAAE,MAAM,CAAC;QACb,QAAQ,EAAE,MAAM,GAAG,SAAS,CAAC;KAC9B,GACD,SAAS,CAAC;IACd,OAAO,EAAE,MAAM,CAAC;IAChB,OAAO,EAAE,OAAO,CAAC;IACjB,iBAAiB,EAAE,MAAM,CAAC;IAC1B,WAAW,EAAE,WAAW,CAAC;IACzB,KAAK,EAAE,MAAM,CAAC;IACd,UAAU,EAAE,OAAO,CAAC;IACpB,MAAM,EAAE,MAAM,GAAG,SAAS,CAAC;IAC3B,WAAW,EAAE,MAAM,GAAG,SAAS,CAAC;IAChC,QAAQ,EAAE,QAAQ,GAAG,MAAM,GAAG,SAAS,GAAG,OAAO,CAAC;CACnD,GAAG,cAAc,CAAC;AAoBnB,wBAAgB,mBAAmB,CAAC,GAAG,EAAE,MAAM,UAE9C;AAED,wBAAgB,cAAc,CAC5B,OAAO,EAAE,MAAM,EACf,GAAG,EAAE,MAAM,GAAG,SAAS,GACtB,MAAM,GAAG,SAAS,CAEpB;AAUD,wBAAgB,UAAU,CAAC,EACzB,KAAK,EACL,OAAO,EACP,YAAY,EACZ,SAAS,GACV,EAAE;IACD,KAAK,EAAE,MAAM,GAAG,WAAW,CAAC;IAC5B,OAAO,EAAE,MAAM,CAAC;IAChB,YAAY,EAAE,MAAM,CAAC;IACrB,SAAS,EAAE,MAAM,CAAC;CACnB,GAAG,WAAW,CAwDd;AA0DD,wBAAsB,wBAAwB,CAAC,CAAC,SAAS,QAAQ,EAC/D,QAAQ,EAAE,CAAC,GACV,OAAO,CACR;IACE,QAAQ,EAAE,CAAC,CAAC;CACb,GAAG,CACA;IACE,iBAAiB,EAAE,sBAAsB,EAAE,CAAC;IAC5C,qBAAqB,EAAE,MAAM,CAAC;CAC/B,GACD;IACE,iBAAiB,CAAC,EAAE,SAAS,CAAC;IAC9B,qBAAqB,CAAC,EAAE,SAAS,CAAC;CACnC,CACJ,CACF,CAkIA;AAED,wBAAsB,WAAW,CAAC,CAAC,SAAS,QAAQ,EAClD,QAAQ,EAAE,CAAC,EACX,MAAM,EAAE,sBAAsB,GAAG,SAAS,EAC1C,OAAO,EAAE,MAAM,EACf,UAAU,CAAC,EAAE,YAAY,GACxB,OAAO,CAAC,YAAY,CAAC,CAkRvB"}
@@ -1,6 +1,7 @@
1
1
  import chalk from 'chalk';
2
2
  import cheerio from 'cheerio';
3
3
  import fs from 'fs';
4
+ import { createRequire } from 'node:module';
4
5
  import { pathToFileURL } from 'url';
5
6
  import { getExecutableBrowserPath } from '../browser.js';
6
7
  import { COVER_HTML_FILENAME, COVER_HTML_IMAGE_ALT, EPUB_OUTPUT_VERSION, MANIFEST_FILENAME, TOC_FILENAME, TOC_TITLE, } from '../const.js';
@@ -24,6 +25,7 @@ const DEFAULT_ASSET_EXTENSIONS = [
24
25
  'woff',
25
26
  'woff2',
26
27
  ];
28
+ const require = createRequire(import.meta.url);
27
29
  export function validateTimeoutFlag(val) {
28
30
  return Number.isFinite(+val) && +val > 0 ? +val * 1000 : DEFAULT_TIMEOUT;
29
31
  }
@@ -141,7 +143,13 @@ export async function collectVivliostyleConfig(cliFlags) {
141
143
  config = JSON.parse(jsonRaw);
142
144
  }
143
145
  else {
144
- config = (await import(pathToFileURL(configPath).href)).default;
146
+ // Clear require cache to reload CJS config files
147
+ delete require.cache[require.resolve(configPath)];
148
+ const url = pathToFileURL(configPath);
149
+ // Invalidate cache for ESM config files
150
+ // https://github.com/nodejs/node/issues/49442
151
+ url.search = `version=${Date.now()}`;
152
+ config = (await import(url.href)).default;
145
153
  }
146
154
  }
147
155
  catch (error) {
@@ -207,12 +215,15 @@ export async function collectVivliostyleConfig(cliFlags) {
207
215
  if (configEntries.some((config) => config.includeAssets)) {
208
216
  logWarn(chalk.yellowBright("'includeAssets' property of Vivliostyle config was deprecated and will be removed in a future release. Please use 'copyAsset.includes' property instead."));
209
217
  }
218
+ if (configEntries.some((config) => config.tocTitle)) {
219
+ logWarn(chalk.yellowBright("'tocTitle' property of Vivliostyle config was deprecated and will be removed in a future release. Please use 'toc.title' property instead."));
220
+ }
210
221
  return {
211
222
  cliFlags,
212
223
  ...configEntry,
213
224
  };
214
225
  }
215
- export async function mergeConfig(cliFlags, config, context) {
226
+ export async function mergeConfig(cliFlags, config, context, prevConfig) {
216
227
  debug('context directory', context);
217
228
  debug('cliFlags', cliFlags);
218
229
  debug('vivliostyle.config.js', config);
@@ -443,12 +454,12 @@ export async function mergeConfig(cliFlags, config, context) {
443
454
  throw new Error('No input is set. Please set an appropriate entry or a Vivliostyle config file.');
444
455
  }
445
456
  const parsedConfig = cliFlags.input
446
- ? await composeSingleInputConfig(commonOpts, cliFlags, config)
447
- : await composeProjectConfig(commonOpts, cliFlags, config, context);
457
+ ? await composeSingleInputConfig(commonOpts, cliFlags, config, prevConfig)
458
+ : await composeProjectConfig(commonOpts, cliFlags, config, context, prevConfig);
448
459
  debug('parsedConfig', JSON.stringify(parsedConfig, null, 2));
449
460
  return parsedConfig;
450
461
  }
451
- async function composeSingleInputConfig(otherConfig, cliFlags, config) {
462
+ async function composeSingleInputConfig(otherConfig, cliFlags, config, prevConfig) {
452
463
  debug('entering single entry config mode');
453
464
  let sourcePath;
454
465
  let input;
@@ -473,10 +484,20 @@ async function composeSingleInputConfig(otherConfig, cliFlags, config) {
473
484
  const type = detectManuscriptMediaType(sourcePath);
474
485
  const metadata = parseFileMetadata({ type, sourcePath, workspaceDir });
475
486
  const relDir = upath.relative(otherConfig.entryContextDir, upath.dirname(sourcePath));
476
- const target = upath
477
- .resolve(workspaceDir, relDir, `${tmpPrefix}${upath.basename(sourcePath)}`)
478
- .replace(/\.md$/, '.html');
479
- await touchTmpFile(target);
487
+ let target;
488
+ if (prevConfig) {
489
+ const prevEntry = prevConfig.entries.find((e) => e.source === sourcePath);
490
+ if (!prevEntry) {
491
+ throw new Error('Failed to reload config');
492
+ }
493
+ target = prevEntry.target;
494
+ }
495
+ else {
496
+ target = upath
497
+ .resolve(workspaceDir, relDir, `${tmpPrefix}${upath.basename(sourcePath)}`)
498
+ .replace(/\.md$/, '.html');
499
+ await touchTmpFile(target);
500
+ }
480
501
  const themes = metadata.themes ?? [...otherConfig.rootThemes];
481
502
  themes.forEach((t) => otherConfig.themeIndexes.add(t));
482
503
  entries.push({
@@ -545,7 +566,7 @@ async function composeSingleInputConfig(otherConfig, cliFlags, config) {
545
566
  author: author,
546
567
  };
547
568
  }
548
- async function composeProjectConfig(otherConfig, cliFlags, config, context) {
569
+ async function composeProjectConfig(otherConfig, cliFlags, config, context, prevConfig) {
549
570
  debug('entering project config mode');
550
571
  const { entryContextDir, workspaceDir, themesDir, themeIndexes, rootThemes, outputs, cover, } = otherConfig;
551
572
  const pkgJsonPath = upath.resolve(entryContextDir, 'package.json');
@@ -555,7 +576,22 @@ async function composeProjectConfig(otherConfig, cliFlags, config, context) {
555
576
  if (pkgJson) {
556
577
  debug('located package.json path', pkgJsonPath);
557
578
  }
558
- const autoGeneratedTocPath = upath.resolve(workspaceDir, typeof config?.toc === 'string' ? config.toc : TOC_FILENAME);
579
+ const tocConfig = (() => {
580
+ const c = typeof config?.toc === 'object'
581
+ ? config.toc
582
+ : typeof config?.toc === 'string'
583
+ ? { htmlPath: config.toc }
584
+ : {};
585
+ return {
586
+ title: c.title ?? config?.tocTitle ?? TOC_TITLE,
587
+ target: upath.resolve(workspaceDir, c.htmlPath ?? TOC_FILENAME),
588
+ sectionDepth: c.sectionDepth ?? 0,
589
+ transform: {
590
+ transformDocumentList: c.transformDocumentList,
591
+ transformSectionList: c.transformSectionList,
592
+ },
593
+ };
594
+ })();
559
595
  const ensureCoverImage = (src) => {
560
596
  const absPath = src && upath.resolve(entryContextDir, src);
561
597
  if (absPath) {
@@ -582,8 +618,8 @@ async function composeProjectConfig(otherConfig, cliFlags, config, context) {
582
618
  themes.forEach((t) => themeIndexes.add(t));
583
619
  const parsedEntry = {
584
620
  rel: 'contents',
585
- target: autoGeneratedTocPath,
586
- title: entry.title ?? config?.tocTitle ?? TOC_TITLE,
621
+ ...tocConfig,
622
+ title: entry.title ?? tocConfig.title,
587
623
  themes,
588
624
  pageBreakBefore: entry.pageBreakBefore,
589
625
  pageCounterReset: entry.pageCounterReset,
@@ -669,8 +705,7 @@ async function composeProjectConfig(otherConfig, cliFlags, config, context) {
669
705
  if (!!config?.toc && !entries.find(({ rel }) => rel === 'contents')) {
670
706
  entries.unshift({
671
707
  rel: 'contents',
672
- target: autoGeneratedTocPath,
673
- title: config?.tocTitle ?? TOC_TITLE,
708
+ ...tocConfig,
674
709
  themes: [...rootThemes],
675
710
  });
676
711
  }
@@ -1 +1 @@
1
- {"version":3,"file":"config.js","sourceRoot":"","sources":["../../src/input/config.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"config.js","sourceRoot":"","sources":["../../src/input/config.ts"],"names":[],"mappings":"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"}
@@ -19,7 +19,7 @@ export interface EpubOutput extends OutputFormatTrait<'epub'> {
19
19
  }
20
20
  export type OutputFormat = PdfOutput | WebPublicationOutput | EpubOutput;
21
21
  export declare const checkOutputFormat: (v: unknown) => v is "epub" | "pdf" | "webpub";
22
- export declare const checkRenderMode: (v: unknown) => v is "local" | "docker";
22
+ export declare const checkRenderMode: (v: unknown) => v is "docker" | "local";
23
23
  export declare const checkPreflightMode: (v: unknown) => v is "press-ready" | "press-ready-local" | null;
24
24
  export declare function detectOutputFormat(outputPath: string): OutputFormat['format'];
25
25
  export {};
@@ -1 +1 @@
1
- {"version":3,"file":"preview.d.ts","sourceRoot":"","sources":["../src/preview.ts"],"names":[],"mappings":"AAOA,OAAO,EACL,QAAQ,EAIT,MAAM,mBAAmB,CAAC;AAwB3B,MAAM,WAAW,eAAgB,SAAQ,QAAQ;CAAG;AAEpD,wBAAsB,OAAO,CAAC,QAAQ,EAAE,eAAe,iBAwMtD"}
1
+ {"version":3,"file":"preview.d.ts","sourceRoot":"","sources":["../src/preview.ts"],"names":[],"mappings":"AAOA,OAAO,EACL,QAAQ,EAGT,MAAM,mBAAmB,CAAC;AAyB3B,MAAM,WAAW,eAAgB,SAAQ,QAAQ;CAAG;AAEpD,wBAAsB,OAAO,CAAC,QAAQ,EAAE,eAAe,iBA4NtD"}
package/dist/preview.js CHANGED
@@ -3,7 +3,7 @@ import { checkBrowserAvailability, downloadBrowser, isPlaywrightExecutable, laun
3
3
  import { collectVivliostyleConfig, mergeConfig, } from './input/config.js';
4
4
  import { cleanupWorkspace, compile, copyAssets, prepareThemeDirectory, } from './processor/compile.js';
5
5
  import { prepareServer } from './server.js';
6
- import { cwd, debug, isUrlString, logSuccess, logUpdate, pathContains, pathEquals, runExitHandlers, setLogLevel, startLogging, upath, } from './util.js';
6
+ import { cwd, debug, gracefulError, isUrlString, logSuccess, logUpdate, pathContains, pathEquals, runExitHandlers, setLogLevel, startLogging, upath, } from './util.js';
7
7
  let timer;
8
8
  export async function preview(cliFlags) {
9
9
  setLogLevel(cliFlags.logLevel);
@@ -59,108 +59,121 @@ export async function preview(cliFlags) {
59
59
  throw new Error(`Cannot find the browser. Please check the executable browser path: ${executableBrowser}`);
60
60
  }
61
61
  }
62
- const browser = await launchBrowser({
63
- browserType,
64
- executablePath: executableBrowser,
65
- headless: false,
66
- noSandbox: !config.sandbox,
67
- disableWebSecurity: !config.viewer,
68
- });
69
- const page = await browser.newPage({ viewport: null });
70
- let watcher = null;
71
- // Terminate preview when the previewing page is closed
72
- page.on('close', () => {
73
- if (watcher) {
74
- watcher.close();
62
+ const watcher = !isUrlString(config.input.entry)
63
+ ? chokidar.watch('**', {
64
+ ignored: (path) => {
65
+ if (/^node_modules$|^\.git/.test(upath.basename(path))) {
66
+ return true;
67
+ }
68
+ if (!pathEquals(config.entryContextDir, config.workspaceDir) &&
69
+ pathContains(config.workspaceDir, path)) {
70
+ return true; // ignore saved intermediate files
71
+ }
72
+ if (config.needToGenerateManifest &&
73
+ pathEquals(path, config.manifestPath)) {
74
+ return true; // ignore generated pub-manifest
75
+ }
76
+ if (config.entries.length &&
77
+ /\.(md|markdown|html?|xhtml|xht)$/i.test(path) &&
78
+ config.entries.every((entry) => !entry.source || !pathEquals(path, entry.source))) {
79
+ return true; // ignore md or html files not in entries source
80
+ }
81
+ if (pathContains(config.themesDir, path)) {
82
+ return true; // ignore theme packages
83
+ }
84
+ return false;
85
+ },
86
+ cwd: config.entries.length ? context : config.entryContextDir,
87
+ ignoreInitial: true,
88
+ })
89
+ : null;
90
+ let reload = null;
91
+ let closePreview = null;
92
+ async function openPreview() {
93
+ closePreview?.();
94
+ const browser = await launchBrowser({
95
+ browserType,
96
+ executablePath: executableBrowser,
97
+ headless: false,
98
+ noSandbox: !config.sandbox,
99
+ disableWebSecurity: !config.viewer,
100
+ });
101
+ const page = await browser.newPage({ viewport: null });
102
+ // Terminate preview when the previewing page is closed
103
+ function onPageClose() {
104
+ watcher?.close();
105
+ runExitHandlers();
75
106
  }
76
- runExitHandlers();
77
- });
78
- // Vivliostyle Viewer uses `i18nextLng` in localStorage for UI language
79
- const locale = Intl.DateTimeFormat().resolvedOptions().locale;
80
- await page.addInitScript(`window.localStorage.setItem('i18nextLng', '${locale}');`);
81
- // Prevent confirm dialog from being auto-dismissed
82
- page.on('dialog', () => { });
83
- await page.goto(viewerFullUrl);
84
- // Move focus from the address bar to the page
85
- await page.bringToFront();
86
- // Focus to the URL input box if available
87
- await page.locator('#vivliostyle-input-url').focus();
107
+ page.on('close', onPageClose);
108
+ // Vivliostyle Viewer uses `i18nextLng` in localStorage for UI language
109
+ const locale = Intl.DateTimeFormat().resolvedOptions().locale;
110
+ await page.addInitScript(`window.localStorage.setItem('i18nextLng', '${locale}');`);
111
+ // Prevent confirm dialog from being auto-dismissed
112
+ page.on('dialog', () => { });
113
+ await page.goto(viewerFullUrl);
114
+ // Move focus from the address bar to the page
115
+ await page.bringToFront();
116
+ // Focus to the URL input box if available
117
+ await page.locator('#vivliostyle-input-url').focus();
118
+ watcher?.on('all', handleFileChange);
119
+ reload = () => page.reload();
120
+ closePreview = () => {
121
+ watcher?.off('all', handleFileChange);
122
+ page.off('close', onPageClose);
123
+ browser.close();
124
+ reload = null;
125
+ closePreview = null;
126
+ };
127
+ }
128
+ await openPreview();
88
129
  // note: runExitHandlers() is not necessary here
89
130
  stopLogging('Up and running ([ctrl+c] to quit)', '🚀');
90
- function reloadConfig(path) {
91
- clearTimeout(timer);
92
- timer = setTimeout(async () => {
93
- const stopLogging = startLogging(`Config file change detected. Reloading ${path}`);
94
- // reload vivliostyle config
95
- const loadedConf = await collectVivliostyleConfig(cliFlags);
96
- const { vivliostyleConfig } = loadedConf;
97
- config = await mergeConfig(cliFlags, vivliostyleConfig?.[0], context);
98
- // build artifacts
99
- if (config.manifestPath) {
100
- await prepareThemeDirectory(config);
101
- await compile(config);
102
- await copyAssets(config);
103
- }
104
- page.reload();
105
- logSuccess(`Reloaded ${path}`);
106
- stopLogging();
107
- }, 2000);
108
- }
109
- function handleChangeEvent(path) {
110
- clearTimeout(timer);
111
- timer = setTimeout(async () => {
112
- const stopLogging = startLogging(`Rebuilding ${path}`);
113
- // build artifacts
114
- if (config.manifestPath) {
115
- await prepareThemeDirectory(config);
116
- await compile(config);
117
- await copyAssets(config);
118
- }
119
- page.reload();
120
- logSuccess(`Built ${path}`);
121
- stopLogging();
122
- }, 2000);
131
+ async function reloadConfig(path) {
132
+ const stopLogging = startLogging(`Config file change detected. Reloading ${path}`);
133
+ closePreview?.();
134
+ // reload vivliostyle config
135
+ const loadedConf = await collectVivliostyleConfig(cliFlags);
136
+ const { vivliostyleConfig } = loadedConf;
137
+ config = await mergeConfig(cliFlags, vivliostyleConfig?.[0], context);
138
+ // build artifacts
139
+ if (config.manifestPath) {
140
+ await prepareThemeDirectory(config);
141
+ await compile(config);
142
+ await copyAssets(config);
143
+ }
144
+ await openPreview();
145
+ logSuccess(`Reloaded ${path}`);
146
+ stopLogging();
123
147
  }
124
- if (isUrlString(config.input.entry)) {
125
- return;
148
+ async function rebuildFile(path) {
149
+ const stopLogging = startLogging(`Rebuilding ${path}`);
150
+ // update mergedConfig
151
+ config = await mergeConfig(cliFlags, vivliostyleConfig?.[0], context, config);
152
+ // build artifacts
153
+ if (config.manifestPath) {
154
+ await prepareThemeDirectory(config);
155
+ await compile(config);
156
+ await copyAssets(config);
157
+ }
158
+ reload?.();
159
+ logSuccess(`Built ${path}`);
160
+ stopLogging();
126
161
  }
127
- watcher = chokidar
128
- .watch('**', {
129
- ignored: (path) => {
130
- if (/^node_modules$|^\.git/.test(upath.basename(path))) {
131
- return true;
132
- }
133
- if (!pathEquals(config.entryContextDir, config.workspaceDir) &&
134
- pathContains(config.workspaceDir, path)) {
135
- return true; // ignore saved intermediate files
136
- }
137
- if (config.needToGenerateManifest &&
138
- pathEquals(path, config.manifestPath)) {
139
- return true; // ignore generated pub-manifest
140
- }
141
- if (config.entries.length &&
142
- /\.(md|markdown|html?|xhtml|xht)$/i.test(path) &&
143
- !config.entries.some((entry) => entry.rel !== 'contents' &&
144
- pathEquals(path, entry.source))) {
145
- return true; // ignore md or html files not in entries source
146
- }
147
- if (pathContains(config.themesDir, path)) {
148
- return true; // ignore theme packages
149
- }
150
- return false;
151
- },
152
- cwd: config.entries.length ? context : config.entryContextDir,
153
- ignoreInitial: true,
154
- })
155
- .on('all', (event, path) => {
162
+ function handleFileChange(event, path) {
163
+ const handleError = (error) => {
164
+ console.log(); // print newline
165
+ gracefulError(error);
166
+ };
156
167
  if (pathEquals(upath.join(config.entryContextDir, path), config.input.entry) ||
157
168
  /\.(md|markdown|html?|xhtml|xht|css|jpe?g|png|gif|svg)$/i.test(path)) {
158
- handleChangeEvent(path);
169
+ clearTimeout(timer);
170
+ timer = setTimeout(() => rebuildFile(path).catch(handleError), 2000);
159
171
  }
160
172
  else if (vivliostyleConfigPath &&
161
173
  pathEquals(path, upath.basename(vivliostyleConfigPath))) {
162
- reloadConfig(path);
174
+ clearTimeout(timer);
175
+ timer = setTimeout(() => reloadConfig(path).catch(handleError), 0);
163
176
  }
164
- });
177
+ }
165
178
  }
166
179
  //# sourceMappingURL=preview.js.map