Minor refactor of cli tasks (core start, gui publishing)

This commit is contained in:
Dominik Prokop
2019-03-05 08:56:29 +01:00
parent cee5f030dc
commit 73ef864979
9 changed files with 219 additions and 182 deletions

23
scripts/cli/tasks/task.ts Normal file
View File

@ -0,0 +1,23 @@
export type TaskRunner<T> = (options: T) => Promise<void>;
export class Task<TOptions> {
name: string;
runner: (options: TOptions) => Promise<void>;
options: TOptions;
setName = name => {
this.name = name;
};
setRunner = (runner: TaskRunner<TOptions>) => {
this.runner = runner;
};
setOptions = options => {
this.options = options;
};
exec = () => {
return this.runner(this.options);
};
}