unbag
Version:
一个专门用来开发npm工具的包
28 lines • 687 B
JavaScript
import { deepFreezeConfig, mergeDefaultConfig } from "./../utils/config.mjs";
import { useLog } from "./../utils/log.mjs";
class Command {
constructor(config) {
const finalUserConfig = mergeDefaultConfig(config);
const freezedConfig = deepFreezeConfig(finalUserConfig);
this.
}
get finalUserConfig() {
return this.
}
async run(params) {
const {
finalUserConfig
} = this;
const log = useLog({
finalUserConfig
});
try {
await this.task(params);
} catch (error) {
log.catchThrowError(error);
process.exit(1);
}
}
}
export { Command };