@qodalis/angular-cli
Version:
A lightweight and flexible command-line interface (CLI) tool designed to streamline workflows and automate tasks for developers.
29 lines • 3.25 kB
JavaScript
import { ProcessExitedError } from './errors';
export class CliExecutionProcess {
constructor(context) {
this.context = context;
this.running = false;
}
exit(code, options) {
code = code ?? 0;
this.exited = true;
this.exitCode = code;
if (!options?.silent) {
throw new ProcessExitedError(code);
}
}
output(data) {
this.data = data;
}
start() {
this.exited = undefined;
this.exitCode = undefined;
this.data = undefined;
this.running = true;
}
end() {
this.running = false;
this.exitCode = 0;
}
}
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY2xpLWV4ZWN1dGlvbi1wcm9jZXNzLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvY2xpL3NyYy9saWIvY2xpL2NvbnRleHQvY2xpLWV4ZWN1dGlvbi1wcm9jZXNzLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUNBLE9BQU8sRUFBRSxrQkFBa0IsRUFBRSxNQUFNLFVBQVUsQ0FBQztBQUU5QyxNQUFNLE9BQU8sbUJBQW1CO0lBTTVCLFlBQTZCLE9BQTZCO1FBQTdCLFlBQU8sR0FBUCxPQUFPLENBQXNCO1FBSDFELFlBQU8sR0FBWSxLQUFLLENBQUM7SUFHb0MsQ0FBQztJQUU5RCxJQUFJLENBQ0EsSUFBYSxFQUNiLE9BRUM7UUFFRCxJQUFJLEdBQUcsSUFBSSxJQUFJLENBQUMsQ0FBQztRQUVqQixJQUFJLENBQUMsTUFBTSxHQUFHLElBQUksQ0FBQztRQUNuQixJQUFJLENBQUMsUUFBUSxHQUFHLElBQUksQ0FBQztRQUVyQixJQUFJLENBQUMsT0FBTyxFQUFFLE1BQU0sRUFBRTtZQUNsQixNQUFNLElBQUksa0JBQWtCLENBQUMsSUFBSSxDQUFDLENBQUM7U0FDdEM7SUFDTCxDQUFDO0lBRUQsTUFBTSxDQUFDLElBQVM7UUFDWixJQUFJLENBQUMsSUFBSSxHQUFHLElBQUksQ0FBQztJQUNyQixDQUFDO0lBRUQsS0FBSztRQUNELElBQUksQ0FBQyxNQUFNLEdBQUcsU0FBUyxDQUFDO1FBQ3hCLElBQUksQ0FBQyxRQUFRLEdBQUcsU0FBUyxDQUFDO1FBQzFCLElBQUksQ0FBQyxJQUFJLEdBQUcsU0FBUyxDQUFDO1FBQ3RCLElBQUksQ0FBQyxPQUFPLEdBQUcsSUFBSSxDQUFDO0lBQ3hCLENBQUM7SUFFRCxHQUFHO1FBQ0MsSUFBSSxDQUFDLE9BQU8sR0FBRyxLQUFLLENBQUM7UUFDckIsSUFBSSxDQUFDLFFBQVEsR0FBRyxDQUFDLENBQUM7SUFDdEIsQ0FBQztDQUNKIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgSUNsaUV4ZWN1dGlvbkNvbnRleHQsIElDbGlFeGVjdXRpb25Qcm9jZXNzIH0gZnJvbSAnQHFvZGFsaXMvY2xpLWNvcmUnO1xuaW1wb3J0IHsgUHJvY2Vzc0V4aXRlZEVycm9yIH0gZnJvbSAnLi9lcnJvcnMnO1xuXG5leHBvcnQgY2xhc3MgQ2xpRXhlY3V0aW9uUHJvY2VzcyBpbXBsZW1lbnRzIElDbGlFeGVjdXRpb25Qcm9jZXNzIHtcbiAgICBleGl0ZWQ/OiBib29sZWFuIHwgdW5kZWZpbmVkO1xuICAgIGV4aXRDb2RlPzogbnVtYmVyIHwgdW5kZWZpbmVkO1xuICAgIHJ1bm5pbmc6IGJvb2xlYW4gPSBmYWxzZTtcbiAgICBkYXRhOiBhbnkgfCB1bmRlZmluZWQ7XG5cbiAgICBjb25zdHJ1Y3Rvcihwcml2YXRlIHJlYWRvbmx5IGNvbnRleHQ6IElDbGlFeGVjdXRpb25Db250ZXh0KSB7fVxuXG4gICAgZXhpdChcbiAgICAgICAgY29kZT86IG51bWJlcixcbiAgICAgICAgb3B0aW9ucz86IHtcbiAgICAgICAgICAgIHNpbGVudD86IGJvb2xlYW47XG4gICAgICAgIH0sXG4gICAgKSB7XG4gICAgICAgIGNvZGUgPSBjb2RlID8/IDA7XG5cbiAgICAgICAgdGhpcy5leGl0ZWQgPSB0cnVlO1xuICAgICAgICB0aGlzLmV4aXRDb2RlID0gY29kZTtcblxuICAgICAgICBpZiAoIW9wdGlvbnM/LnNpbGVudCkge1xuICAgICAgICAgICAgdGhyb3cgbmV3IFByb2Nlc3NFeGl0ZWRFcnJvcihjb2RlKTtcbiAgICAgICAgfVxuICAgIH1cblxuICAgIG91dHB1dChkYXRhOiBhbnkpIHtcbiAgICAgICAgdGhpcy5kYXRhID0gZGF0YTtcbiAgICB9XG5cbiAgICBzdGFydCgpIHtcbiAgICAgICAgdGhpcy5leGl0ZWQgPSB1bmRlZmluZWQ7XG4gICAgICAgIHRoaXMuZXhpdENvZGUgPSB1bmRlZmluZWQ7XG4gICAgICAgIHRoaXMuZGF0YSA9IHVuZGVmaW5lZDtcbiAgICAgICAgdGhpcy5ydW5uaW5nID0gdHJ1ZTtcbiAgICB9XG5cbiAgICBlbmQoKSB7XG4gICAgICAgIHRoaXMucnVubmluZyA9IGZhbHNlO1xuICAgICAgICB0aGlzLmV4aXRDb2RlID0gMDtcbiAgICB9XG59XG4iXX0=