UNPKG

homebridge-config-ui-x

Version:

A web based management, configuration and control platform for Homebridge.

58 lines 1.5 kB
import ora from 'ora'; export class Logger { hbService; constructor(hbService) { this.hbService = hbService; } log(msg) { this._log(msg, 'info'); } success(msg) { this._log(msg, 'success'); } error(msg) { this._log(msg, 'error'); } warn(msg) { this._log(msg, 'warn'); } debug(msg) { this._log(msg, 'debug'); } verbose(msg) { this._log(msg, 'verbose'); } _log(msg, level) { if (this.hbService.action === 'run') { msg = `\x1B[37m[${new Date().toLocaleString()}]\x1B[0m ` + `\x1B[36m[HB Supervisor]\x1B[0m [${level.toUpperCase()}] ${msg}`; if (this.hbService.logFile) { this.hbService.logFile.write(`${msg}\n`); } else { console.log(msg); } } else { let oraLevel; switch (level) { case 'info': case 'debug': case 'verbose': oraLevel = 'info'; break; case 'success': oraLevel = 'succeed'; break; case 'error': oraLevel = 'fail'; break; case 'warn': oraLevel = 'warn'; break; } ora()[oraLevel](msg); } } } //# sourceMappingURL=logger.js.map