tateru-cli
Version:
Simple CLI static site builder tool with Twig.
62 lines • 4.83 kB
JavaScript
;
var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) {
function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }
return new (P || (P = Promise))(function (resolve, reject) {
function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }
function rejected(value) { try { step(generator["throw"](value)); } catch (e) { reject(e); } }
function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }
step((generator = generator.apply(thisArg, _arguments || [])).next());
});
};
Object.defineProperty(exports, "__esModule", { value: true });
const timeStart = process.hrtime();
const path_1 = require("path");
const getProjectDir_1 = require("./cli/utils/getProjectDir");
const readJson_1 = require("./utils/readJson");
const core_1 = require("./core");
const printLog_1 = require("./cli/utils/printLog");
const cli_1 = require("./cli/services/cli");
const writeFile_1 = require("./cli/utils/writeFile");
const getEndTime_1 = require("./cli/utils/getEndTime");
const formatContents_1 = require("./format/formatContents");
const minifyContents_1 = require("./minify/minifyContents");
(() => __awaiter(void 0, void 0, void 0, function* () {
let exitCode = 0;
try {
const { configFile, env, lang, page } = cli_1.parseCLIArgs(path_1.resolve(__dirname, '..'));
const processCwd = process.cwd();
const projectDir = getProjectDir_1.getProjectDir(configFile, processCwd);
const config = yield readJson_1.readJson(processCwd, configFile);
printLog_1.printLog(`Config file "${configFile}" loaded`);
printLog_1.printLog(`Environment:\t${env}\n`);
const files = yield core_1.core({
config,
env,
lang,
page,
cwd: projectDir,
formatter: formatContents_1.formatContents,
minify: minifyContents_1.minifyContents,
});
yield Promise.all(files.map(({ contents, ext, path, cwd }) => __awaiter(void 0, void 0, void 0, function* () {
yield writeFile_1.writeFile(contents, path_1.resolve(cwd, path));
printLog_1.printLog(`Created:\t${ext}`);
})));
}
catch (e) {
if (e instanceof Error) {
console.error(e.message);
}
else {
console.error(e);
}
exitCode = 1;
}
finally {
const timeEnd = getEndTime_1.getEndTime(timeStart);
printLog_1.printLog(`\nTime:\t\t${timeEnd.s}s ${timeEnd.ms}ms`);
process.exit(exitCode);
}
}))();
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidGF0ZXJ1LWNsaS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uL3NyYy90YXRlcnUtY2xpLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7Ozs7Ozs7Ozs7OztBQUVBLE1BQU0sU0FBUyxHQUFHLE9BQU8sQ0FBQyxNQUFNLEVBQUUsQ0FBQztBQUVuQywrQkFBK0I7QUFDL0IsNkRBQTBEO0FBQzFELCtDQUE0QztBQUM1QyxpQ0FBOEI7QUFDOUIsbURBQWdEO0FBQ2hELDRDQUFrRDtBQUNsRCxxREFBa0Q7QUFDbEQsdURBQW9EO0FBQ3BELDREQUF5RDtBQUN6RCw0REFBeUQ7QUFHekQsQ0FBQyxHQUFTLEVBQUU7SUFDUixJQUFJLFFBQVEsR0FBRyxDQUFDLENBQUM7SUFFakIsSUFBSTtRQUNBLE1BQU0sRUFBRSxVQUFVLEVBQUUsR0FBRyxFQUFFLElBQUksRUFBRSxJQUFJLEVBQUUsR0FBRyxrQkFBWSxDQUNoRCxjQUFPLENBQUMsU0FBUyxFQUFFLElBQUksQ0FBQyxDQUMzQixDQUFDO1FBRUYsTUFBTSxVQUFVLEdBQUcsT0FBTyxDQUFDLEdBQUcsRUFBRSxDQUFDO1FBRWpDLE1BQU0sVUFBVSxHQUFHLDZCQUFhLENBQUMsVUFBVSxFQUFFLFVBQVUsQ0FBQyxDQUFDO1FBRXpELE1BQU0sTUFBTSxHQUFHLE1BQU0sbUJBQVEsQ0FBYSxVQUFVLEVBQUUsVUFBVSxDQUFDLENBQUM7UUFFbEUsbUJBQVEsQ0FBQyxnQkFBZ0IsVUFBVSxVQUFVLENBQUMsQ0FBQztRQUMvQyxtQkFBUSxDQUFDLGlCQUFpQixHQUFHLElBQUksQ0FBQyxDQUFDO1FBRW5DLE1BQU0sS0FBSyxHQUFHLE1BQU0sV0FBSSxDQUFDO1lBQ3JCLE1BQU07WUFDTixHQUFHO1lBQ0gsSUFBSTtZQUNKLElBQUk7WUFDSixHQUFHLEVBQUUsVUFBVTtZQUNmLFNBQVMsRUFBRSwrQkFBYztZQUN6QixNQUFNLEVBQUUsK0JBQWM7U0FDekIsQ0FBQyxDQUFDO1FBRUgsTUFBTSxPQUFPLENBQUMsR0FBRyxDQUNiLEtBQUssQ0FBQyxHQUFHLENBQUMsQ0FBTyxFQUFFLFFBQVEsRUFBRSxHQUFHLEVBQUUsSUFBSSxFQUFFLEdBQUcsRUFBRSxFQUFFLEVBQUU7WUFDN0MsTUFBTSxxQkFBUyxDQUFDLFFBQVEsRUFBRSxjQUFPLENBQUMsR0FBRyxFQUFFLElBQUksQ0FBQyxDQUFDLENBQUM7WUFDOUMsbUJBQVEsQ0FBQyxhQUFhLEdBQUcsRUFBRSxDQUFDLENBQUM7UUFDakMsQ0FBQyxDQUFBLENBQUMsQ0FDTCxDQUFDO0tBQ0w7SUFBQyxPQUFPLENBQUMsRUFBRTtRQUNSLElBQUksQ0FBQyxZQUFZLEtBQUssRUFBRTtZQUNwQixPQUFPLENBQUMsS0FBSyxDQUFDLENBQUMsQ0FBQyxPQUFPLENBQUMsQ0FBQztTQUM1QjthQUFNO1lBQ0gsT0FBTyxDQUFDLEtBQUssQ0FBQyxDQUFDLENBQUMsQ0FBQztTQUNwQjtRQUNELFFBQVEsR0FBRyxDQUFDLENBQUM7S0FDaEI7WUFBUztRQUNOLE1BQU0sT0FBTyxHQUFHLHVCQUFVLENBQUMsU0FBUyxDQUFDLENBQUM7UUFDdEMsbUJBQVEsQ0FBQyxjQUFjLE9BQU8sQ0FBQyxDQUFDLEtBQUssT0FBTyxDQUFDLEVBQUUsSUFBSSxDQUFDLENBQUM7UUFDckQsT0FBTyxDQUFDLElBQUksQ0FBQyxRQUFRLENBQUMsQ0FBQztLQUMxQjtBQUNMLENBQUMsQ0FBQSxDQUFDLEVBQUUsQ0FBQyJ9