devkit-js
Version:
Devkit CLI is a Command Line tool for superfast scaffolding of any simple Vanilla JavaScript App
55 lines (46 loc) • 1.47 kB
JavaScript
const chalk = require('chalk');
const spinner = require('ora')();
class Notify {
constructor() {
this.instance = chalk['white']['visible'];
this.spinner = spinner;
this.colors = {
progress: 'white',
warning: 'yellow',
success: 'green',
failure: 'red',
info: 'blue',
};
}
set(options) {
const { message = 'message', style = 'visible', color = 'white' } = options;
this.instance = chalk[color][style];
return this.instance(message);
}
progress(message = 'message', style = 'visible') {
const { progress: color } = this.colors;
this.spinner.text = this.set({ message, style, color });
this.spinner.start();
}
warning(message = 'message', style = 'visible') {
const { warning: color } = this.colors;
this.spinner.text = this.set({ message, style, color });
this.spinner.warn();
}
success(message = 'message', style = 'visible') {
const { success: color } = this.colors;
this.spinner.text = this.set({ message, style, color });
this.spinner.succeed();
}
failure(message = 'message', style = 'visible') {
const { failure: color } = this.colors;
this.spinner.text = this.set({ message, style, color });
this.spinner.fail();
}
info(message = 'message', style = 'visible') {
const { info: color } = this.colors;
this.spinner.text = this.set({ message, style, color });
this.spinner.info();
}
}
module.exports = new Notify();