@vivliostyle/cli
Version:
Save the pdf file via headless browser and Vivliostyle.
57 lines (55 loc) • 1.8 kB
JavaScript
import {
loadVivliostyleConfig,
mergeInlineConfig,
resolveTaskConfig,
vsBrowserPlugin,
vsDevServerPlugin,
vsStaticServePlugin,
vsViewerPlugin,
warnDeprecatedConfig
} from "./chunk-5YYKJN5S.js";
import {
Logger,
setupConfigFromFlags
} from "./chunk-HCZKJQUX.js";
import {
VivliostyleInlineConfig
} from "./chunk-YUYXQJDY.js";
// src/vite-adapter.ts
import * as v from "valibot";
import * as vite from "vite";
async function createVitePlugin(inlineConfig = {}) {
const parsedInlineConfig = v.parse(VivliostyleInlineConfig, inlineConfig);
Logger.setLogLevel(parsedInlineConfig.logLevel);
if (parsedInlineConfig.logger) {
Logger.setCustomLogger(parsedInlineConfig.logger);
} else {
const { info, warn, error } = vite.createLogger("info", {
prefix: "[vivliostyle]"
});
Logger.setCustomLogger({
info: (msg) => info(msg, { timestamp: true }),
warn: (msg) => warn(msg, { timestamp: true }),
error: (msg) => error(msg, { timestamp: true })
});
}
Logger.debug("inlineConfig %O", parsedInlineConfig);
const vivliostyleConfig = await loadVivliostyleConfig(parsedInlineConfig) ?? setupConfigFromFlags(parsedInlineConfig);
warnDeprecatedConfig(vivliostyleConfig);
const { tasks, inlineOptions } = mergeInlineConfig(
vivliostyleConfig,
parsedInlineConfig
);
const config = resolveTaskConfig(tasks[0], inlineOptions);
Logger.debug("config %O", config);
return [
vsDevServerPlugin({ config, inlineConfig: parsedInlineConfig }),
vsViewerPlugin({ config, inlineConfig: parsedInlineConfig }),
vsBrowserPlugin({ config, inlineConfig: parsedInlineConfig }),
vsStaticServePlugin({ config, inlineConfig: parsedInlineConfig })
];
}
export {
createVitePlugin
};
//# sourceMappingURL=chunk-VQCECPOL.js.map