| 1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950 |
- "use strict";
- Object.defineProperty(exports, "__esModule", { value: true });
- exports.makeLog = void 0;
- var util = require('util');
- var colors = {
- info: '36',
- error: '31;1',
- warn: '33',
- debug: '90',
- };
- var formatDate = function (date) {
- return [date.getHours(), date.getMinutes(), date.getSeconds()]
- .map(function (n) { return n.toString().padStart(2, '0'); })
- .join(':');
- };
- /**
- * Logs a message to the console. The level is displayed in ANSI colors,
- * either bright red in case of an error or green otherwise.
- */
- exports.makeLog = function (cfg) {
- function log(msg, level) {
- if (cfg.quiet && level === 'info')
- return;
- if (cfg.timestamp)
- msg = color(formatDate(new Date()), '30;1') + ' ' + msg;
- var c = colors[level.toLowerCase()] || '32';
- console.log('[' + color(level.toUpperCase(), c) + '] ' + msg);
- }
- function color(s, c) {
- if (process.stdout.isTTY) {
- return '\x1B[' + c + 'm' + s + '\x1B[0m';
- }
- return s;
- }
- log.debug = function () {
- if (!cfg.debug)
- return;
- log(util.format.apply(util, arguments), 'debug');
- };
- log.info = function () {
- log(util.format.apply(util, arguments), 'info');
- };
- log.warn = function () {
- log(util.format.apply(util, arguments), 'warn');
- };
- log.error = function () {
- log(util.format.apply(util, arguments), 'error');
- };
- return log;
- };
|