1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
|
"use strict";
Object.defineProperty(exports, "__esModule", { value: true });
var Console = require('console').Console;
var stderrConsole = new Console(process.stderr);
var stdoutConsole = new Console(process.stdout);
var LogLevel;
(function (LogLevel) {
LogLevel[LogLevel["INFO"] = 1] = "INFO";
LogLevel[LogLevel["WARN"] = 2] = "WARN";
LogLevel[LogLevel["ERROR"] = 3] = "ERROR";
})(LogLevel || (LogLevel = {}));
var doNothingLogger = function () {
var _messages = [];
for (var _i = 0; _i < arguments.length; _i++) {
_messages[_i] = arguments[_i];
}
};
function makeLoggerFunc(loaderOptions) {
return loaderOptions.silent
? function (_whereToLog, _messages) { }
: function (whereToLog, messages) { return console.log.apply(whereToLog, messages); };
}
function makeExternalLogger(loaderOptions, logger) {
var output = loaderOptions.logInfoToStdOut ? stdoutConsole : stderrConsole;
return function () {
var messages = [];
for (var _i = 0; _i < arguments.length; _i++) {
messages[_i] = arguments[_i];
}
return logger(output, messages);
};
}
function makeLogInfo(loaderOptions, logger) {
return LogLevel[loaderOptions.logLevel] <= LogLevel.INFO
? function () {
var messages = [];
for (var _i = 0; _i < arguments.length; _i++) {
messages[_i] = arguments[_i];
}
return logger(loaderOptions.logInfoToStdOut ? stdoutConsole : stderrConsole, messages);
}
: doNothingLogger;
}
function makeLogError(loaderOptions, logger) {
return LogLevel[loaderOptions.logLevel] <= LogLevel.ERROR
? function () {
var messages = [];
for (var _i = 0; _i < arguments.length; _i++) {
messages[_i] = arguments[_i];
}
return logger(stderrConsole, messages);
}
: doNothingLogger;
}
function makeLogWarning(loaderOptions, logger) {
return LogLevel[loaderOptions.logLevel] <= LogLevel.WARN
? function () {
var messages = [];
for (var _i = 0; _i < arguments.length; _i++) {
messages[_i] = arguments[_i];
}
return logger(stderrConsole, messages);
}
: doNothingLogger;
}
function makeLogger(loaderOptions) {
var logger = makeLoggerFunc(loaderOptions);
return {
log: makeExternalLogger(loaderOptions, logger),
logInfo: makeLogInfo(loaderOptions, logger),
logWarning: makeLogWarning(loaderOptions, logger),
logError: makeLogError(loaderOptions, logger)
};
}
exports.makeLogger = makeLogger;
|