UNPKG

@vivliostyle/cli

Version:

Save the pdf file via headless browser and Vivliostyle.

88 lines (86 loc) 2.54 kB
import { resolveViteConfig } from "./chunk-4V7POPZ3.js"; import { createViteServer, getViewerFullUrl, loadVivliostyleConfig, mergeConfig, mergeInlineConfig, resolveTaskConfig, warnDeprecatedConfig } from "./chunk-5YYKJN5S.js"; import { Logger, isUnicodeSupported, randomBookSymbol, setupConfigFromFlags } from "./chunk-HCZKJQUX.js"; import { cliVersion } from "./chunk-4IIM6RSG.js"; import { __callDispose, __using } from "./chunk-I7BWSAN6.js"; // src/core/preview.ts import terminalLink from "terminal-link"; import { blueBright, cyan, dim } from "yoctocolors"; async function preview(inlineConfig) { Logger.setLogLevel(inlineConfig.logLevel); Logger.setCustomLogger(inlineConfig.logger); Logger.debug("preview > inlineConfig %O", inlineConfig); let vivliostyleConfig = await loadVivliostyleConfig(inlineConfig) ?? setupConfigFromFlags(inlineConfig); warnDeprecatedConfig(vivliostyleConfig); vivliostyleConfig = mergeInlineConfig(vivliostyleConfig, inlineConfig); const { tasks, inlineOptions } = vivliostyleConfig; Logger.debug("preview > vivliostyleConfig %O", vivliostyleConfig); let config = resolveTaskConfig(tasks[0], inlineOptions); Logger.debug("preview > config %O", config); let server; let url; { var _stack = []; try { const _2 = __using(_stack, Logger.startLogging("Start preview")); const viteConfig = await resolveViteConfig({ ...config, mode: "preview" }); server = await createViteServer({ config, viteConfig, inlineConfig, mode: "preview" }); if (server.httpServer) { await server.listen(); vivliostyleConfig = mergeConfig(vivliostyleConfig, { temporaryFilePrefix: config.temporaryFilePrefix, server: server.config.server }); config = resolveTaskConfig( vivliostyleConfig.tasks[0], vivliostyleConfig.inlineOptions ); } url = await getViewerFullUrl(config); } catch (_) { var _error = _, _hasError = true; } finally { __callDispose(_stack, _error, _hasError); } } if (server.httpServer) { Logger.log(` ${cyan(`Vivliostyle CLI v${cliVersion}`)} ${blueBright("\u2551")} ${isUnicodeSupported ? `${randomBookSymbol} ` : ""}Up and running (press Ctrl+C to quit) ${blueBright("\u2559\u2500")} ${dim(`Preview URL: ${terminalLink(url, url, { fallback: () => url })}`)} `); } return server; } export { preview }; //# sourceMappingURL=chunk-5A3MDEJ4.js.map