UNPKG

bit-bin

Version:

<a href="https://opensource.org/licenses/Apache-2.0"><img alt="apache" src="https://img.shields.io/badge/License-Apache%202.0-blue.svg"></a> <a href="https://github.com/teambit/bit/blob/master/CONTRIBUTING.md"><img alt="prs" src="https://img.shields.io/b

71 lines (52 loc) 1.33 kB
"use strict"; var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault"); Object.defineProperty(exports, "__esModule", { value: true }); exports.default = void 0; function _defineProperty2() { const data = _interopRequireDefault(require("@babel/runtime/helpers/defineProperty")); _defineProperty2 = function () { return data; }; return data; } function _events() { const data = require("events"); _events = function () { return data; }; return data; } // we use this and not EventEmitter directly in order to be able // to provide tab completions for intellisense(-like) IDEs class Logger { constructor() { (0, _defineProperty2().default)(this, "eventEmitter", new (_events().EventEmitter)()); } info(...messages) { this.eventEmitter.emit('info', messages); } warn(...messages) { this.eventEmitter.emit('warn', messages); } error(...messages) { this.eventEmitter.emit('error', messages); } debug(...messages) { this.eventEmitter.emit('debug', messages); } onInfo(cb) { this.eventEmitter.on('info', cb); } onWarn(cb) { this.eventEmitter.on('warn', cb); } onError(cb) { this.eventEmitter.on('error', cb); } onDebug(cb) { this.eventEmitter.on('debug', cb); } } exports.default = Logger;