unbag
Version:
一个专门用来开发npm工具的包
34 lines (33 loc) • 803 B
JavaScript
;
Object.defineProperty(exports, "__esModule", {
value: true
});
exports.Command = void 0;
var _config = require("./../utils/config.cjs");
var _log = require("./../utils/log.cjs");
class Command {
#finalUserConfig;
constructor(config) {
const finalUserConfig = (0, _config.mergeDefaultConfig)(config);
const freezedConfig = (0, _config.deepFreezeConfig)(finalUserConfig);
this.#finalUserConfig = freezedConfig;
}
get finalUserConfig() {
return this.#finalUserConfig;
}
async run(params) {
const {
finalUserConfig
} = this;
const log = (0, _log.useLog)({
finalUserConfig
});
try {
await this.task(params);
} catch (error) {
log.catchThrowError(error);
process.exit(1);
}
}
}
exports.Command = Command;