UNPKG

js-uploader

Version:
179 lines 6.16 kB
import { __read, __spread } from "tslib"; export var Level; (function (Level) { Level[Level["debug"] = 10] = "debug"; Level[Level["info"] = 20] = "info"; Level[Level["warning"] = 30] = "warning"; Level[Level["error"] = 40] = "error"; Level[Level["test"] = 1000] = "test"; })(Level || (Level = {})); var ContextLogger = /** @class */ (function () { function ContextLogger(name, level, formatter, adapter) { if (adapter === void 0) { adapter = console; } this.name = name; this.level = level; this.formatter = formatter; this.adapter = adapter; this.destroy = function () { return void 0; }; this.effects = new Map(); } ContextLogger.prototype.invoke = function (method, message) { var _a; var output = []; if (this.formatter) { var params = __spread([this.name, this.level], message); output = this.formatter.apply(this, params); } (_a = this.adapter[method]).call.apply(_a, __spread([this.adapter], output)); var fns = this.effects.get(method) || []; fns.forEach(function (fn) { return fn.apply(void 0, __spread(message)); }); }; ContextLogger.prototype.info = function () { var message = []; for (var _i = 0; _i < arguments.length; _i++) { message[_i] = arguments[_i]; } if (Level.info >= this.level) { this.invoke('info', message); } }; ContextLogger.prototype.warn = function () { var message = []; for (var _i = 0; _i < arguments.length; _i++) { message[_i] = arguments[_i]; } if (Level.warning >= this.level) { this.invoke('warn', message); } }; ContextLogger.prototype.error = function () { var message = []; for (var _i = 0; _i < arguments.length; _i++) { message[_i] = arguments[_i]; } if (Level.error >= this.level) { this.invoke('error', message); } }; ContextLogger.prototype.debug = function () { var message = []; for (var _i = 0; _i < arguments.length; _i++) { message[_i] = arguments[_i]; } if (Level.debug >= this.level) { this.invoke('debug', message); } }; ContextLogger.prototype.setLevel = function (level) { this.level = level; }; ContextLogger.prototype.replaceAdapter = function (adapter) { if (adapter !== this.adapter) { this.adapter = adapter; } }; ContextLogger.prototype.replaceFormatter = function (formatter) { if (formatter !== this.formatter) { this.formatter = formatter; } }; ContextLogger.prototype.effect = function (method, callback) { if (this.effects.has(method)) { var fns = this.effects.get(method); if (fns.every(function (fn) { return fn !== callback; })) { fns.push(callback); } } else { this.effects.set(method, [callback]); } }; ContextLogger.prototype.clearEffects = function () { this.effects.clear(); }; return ContextLogger; }()); export { ContextLogger }; var Logger = /** @class */ (function () { function Logger() { } Logger.get = function (name, formatter, level, adapter) { if (adapter === void 0) { adapter = console; } var logger = Logger.contextMap.get(name); if (!logger) { var ctxLogger_1 = new ContextLogger(name, level || Logger.defaultLevel, formatter, adapter); Logger.contextMap.set(name, ctxLogger_1); ctxLogger_1.destroy = function () { Logger.contextMap.delete(name); ctxLogger_1.clearEffects(); }; return ctxLogger_1; } return logger; }; Logger.setLevel = function (level) { Logger.outputLogger.setLevel(level); }; Logger.warn = function () { var _a; var message = []; for (var _i = 0; _i < arguments.length; _i++) { message[_i] = arguments[_i]; } Logger.enable && (_a = Logger.outputLogger).warn.apply(_a, __spread(message)); }; Logger.info = function () { var _a; var message = []; for (var _i = 0; _i < arguments.length; _i++) { message[_i] = arguments[_i]; } Logger.enable && (_a = Logger.outputLogger).info.apply(_a, __spread(message)); }; Logger.debug = function () { var _a; var message = []; for (var _i = 0; _i < arguments.length; _i++) { message[_i] = arguments[_i]; } Logger.enable && (_a = Logger.outputLogger).debug.apply(_a, __spread(message)); }; Logger.error = function () { var _a; var message = []; for (var _i = 0; _i < arguments.length; _i++) { message[_i] = arguments[_i]; } Logger.enable && (_a = Logger.outputLogger).error.apply(_a, __spread(message)); }; Logger.setEnable = function (enable) { Logger.enable = !!enable; }; Logger.enable = true; Logger.contextMap = new Map(); Logger.defaultLevel = Level.debug; Logger.outputLogger = new ContextLogger('rx-uploader', Logger.defaultLevel, function (name, _) { var message = []; for (var _i = 2; _i < arguments.length; _i++) { message[_i - 2] = arguments[_i]; } var current = new Date(); var prefix = name ? "[" + name + "] " : ''; return __spread([prefix + " " + current.toLocaleString() + ": \r\n"], message); }); return Logger; }()); export { Logger }; var envifyLevel = function () { var env = (typeof process !== 'undefined' && process.env && process.env.NODE_ENV) || 'production'; switch (env) { case 'production': return Level.error; case 'test': return Level.test; default: return Level.debug; } }; Logger.setLevel(envifyLevel()); //# sourceMappingURL=Logger.js.map