UNPKG

2.84 kBJavaScriptView Raw
1"use strict";
2Object.defineProperty(exports, "__esModule", { value: true });
3var gutil = require('gulp-util');
4var c = gutil.colors;
5var pkg = require('../package.json');
6var LEVEL;
7(function (LEVEL) {
8 LEVEL[LEVEL["INFO"] = 0] = "INFO";
9 LEVEL[LEVEL["DEBUG"] = 1] = "DEBUG";
10 LEVEL[LEVEL["ERROR"] = 2] = "ERROR";
11 LEVEL[LEVEL["WARN"] = 3] = "WARN";
12})(LEVEL || (LEVEL = {}));
13var Logger = /** @class */ (function () {
14 function Logger() {
15 this.name = pkg.name;
16 this.version = pkg.version;
17 this.logger = gutil.log;
18 this.silent = true;
19 }
20 Logger.prototype.info = function () {
21 var args = [];
22 for (var _i = 0; _i < arguments.length; _i++) {
23 args[_i] = arguments[_i];
24 }
25 if (!this.silent) {
26 return;
27 }
28 this.logger(this.format.apply(this, [LEVEL.INFO].concat(args)));
29 };
30 Logger.prototype.error = function () {
31 var args = [];
32 for (var _i = 0; _i < arguments.length; _i++) {
33 args[_i] = arguments[_i];
34 }
35 if (!this.silent) {
36 return;
37 }
38 this.logger(this.format.apply(this, [LEVEL.ERROR].concat(args)));
39 };
40 Logger.prototype.warn = function () {
41 var args = [];
42 for (var _i = 0; _i < arguments.length; _i++) {
43 args[_i] = arguments[_i];
44 }
45 if (!this.silent) {
46 return;
47 }
48 this.logger(this.format.apply(this, [LEVEL.WARN].concat(args)));
49 };
50 Logger.prototype.debug = function () {
51 var args = [];
52 for (var _i = 0; _i < arguments.length; _i++) {
53 args[_i] = arguments[_i];
54 }
55 if (!this.silent) {
56 return;
57 }
58 this.logger(this.format.apply(this, [LEVEL.DEBUG].concat(args)));
59 };
60 Logger.prototype.format = function (level) {
61 var args = [];
62 for (var _i = 1; _i < arguments.length; _i++) {
63 args[_i - 1] = arguments[_i];
64 }
65 var pad = function (s, l, z) {
66 if (z === void 0) { z = ''; }
67 return s + Array(Math.max(0, l - s.length + 1)).join(z);
68 };
69 var msg = args.join(' ');
70 if (args.length > 1) {
71 msg = pad(args.shift(), 15, ' ') + ": " + args.join(' ');
72 }
73 switch (level) {
74 case LEVEL.INFO:
75 msg = c.green(msg);
76 break;
77 case LEVEL.DEBUG:
78 msg = c.cyan(msg);
79 break;
80 case LEVEL.WARN:
81 msg = c.yellow(msg);
82 break;
83 case LEVEL.ERROR:
84 msg = c.red(msg);
85 break;
86 }
87 return [
88 msg
89 ].join('');
90 };
91 return Logger;
92}());
93exports.logger = new Logger();
94//# sourceMappingURL=logger.js.map
\No newline at end of file