37 lines
1.5 KiB
JavaScript
37 lines
1.5 KiB
JavaScript
"use strict";
|
|
var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
return (mod && mod.__esModule) ? mod : { "default": mod };
|
|
};
|
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
const parse_1 = __importDefault(require("../parse"));
|
|
const output_1 = __importDefault(require("../output"));
|
|
const timing_1 = __importDefault(require("../utils/timing"));
|
|
const options_1 = __importDefault(require("./options"));
|
|
const getBook_1 = __importDefault(require("./getBook"));
|
|
const getOutputFolder_1 = __importDefault(require("./getOutputFolder"));
|
|
const page_cache_1 = require("../output/page-cache");
|
|
exports.default = {
|
|
name: "build [book] [output]",
|
|
description: "build a book",
|
|
options: [options_1.default.log, options_1.default.format, options_1.default.timing, options_1.default.reload],
|
|
exec: function (args, kwargs) {
|
|
const book = (0, getBook_1.default)(args, kwargs);
|
|
const outputFolder = (0, getOutputFolder_1.default)(args);
|
|
const Generator = output_1.default.getGenerator(kwargs.format);
|
|
if (kwargs.reload) {
|
|
book.getLogger().info.ok(`Clear cache`);
|
|
(0, page_cache_1.clearCache)();
|
|
}
|
|
return parse_1.default.parseBook(book)
|
|
.then((resultBook) => {
|
|
return output_1.default.generate(Generator, resultBook, {
|
|
root: outputFolder
|
|
});
|
|
})
|
|
.fin(() => {
|
|
if (kwargs.timing)
|
|
timing_1.default.dump(book.getLogger());
|
|
});
|
|
}
|
|
};
|