UNPKG

d2

Version:

Javascript library for DHIS2

114 lines (91 loc) 3.44 kB
"use strict"; Object.defineProperty(exports, "__esModule", { value: true }); exports.default = void 0; var _check = require("../lib/check"); function _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError("Cannot call a class as a function"); } } function _defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if ("value" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } function _createClass(Constructor, protoProps, staticProps) { if (protoProps) _defineProperties(Constructor.prototype, protoProps); if (staticProps) _defineProperties(Constructor, staticProps); return Constructor; } var Logger = /*#__PURE__*/ function () { function Logger(logging) { _classCallCheck(this, Logger); (0, _check.checkType)(logging, 'object', 'console'); this.logger = logging; } _createClass(Logger, [{ key: "canLog", value: function canLog(type) { return !!(type && console && (0, _check.isType)(this.logger[type], 'function')); } }, { key: "logMessage", value: function logMessage() { var type = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : 'log'; if (this.canLog(type) && this.logger[type]) { var _this$logger; for (var _len = arguments.length, rest = new Array(_len > 1 ? _len - 1 : 0), _key = 1; _key < _len; _key++) { rest[_key - 1] = arguments[_key]; } (_this$logger = this.logger)[type].apply(_this$logger, rest); return true; } return false; } }, { key: "debug", value: function debug() { for (var _len2 = arguments.length, rest = new Array(_len2), _key2 = 0; _key2 < _len2; _key2++) { rest[_key2] = arguments[_key2]; } return this.logMessage.apply(this, ['debug'].concat(rest)); } }, { key: "error", value: function error() { for (var _len3 = arguments.length, rest = new Array(_len3), _key3 = 0; _key3 < _len3; _key3++) { rest[_key3] = arguments[_key3]; } return this.logMessage.apply(this, ['error'].concat(rest)); } }, { key: "log", value: function log() { for (var _len4 = arguments.length, rest = new Array(_len4), _key4 = 0; _key4 < _len4; _key4++) { rest[_key4] = arguments[_key4]; } return this.logMessage.apply(this, ['log'].concat(rest)); } }, { key: "warn", value: function warn() { for (var _len5 = arguments.length, rest = new Array(_len5), _key5 = 0; _key5 < _len5; _key5++) { rest[_key5] = arguments[_key5]; } return this.logMessage.apply(this, ['warn'].concat(rest)); } }], [{ key: "getLogger", value: function getLogger() { var logger; // TODO: This is not very clean try to figure out a better way to do this. try { // Node version logger = global.console; } catch (e) { // Browser version fallback /* istanbul ignore next */ logger = window.console; } if (this.logger) { return this.logger; } return this.logger = new Logger(logger); } }]); return Logger; }(); var _default = Logger; exports.default = _default; //# sourceMappingURL=Logger.js.map