UNPKG

d2-ui

Version:
105 lines (90 loc) 3.64 kB
'use strict'; Object.defineProperty(exports, '__esModule', { value: true }); var _createClass = (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); } } return function (Constructor, protoProps, staticProps) { if (protoProps) defineProperties(Constructor.prototype, protoProps); if (staticProps) defineProperties(Constructor, staticProps); return Constructor; }; })(); function _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError('Cannot call a class as a function'); } } var _libCheck = require('../lib/check'); var Logger = (function () { function Logger(logging) { _classCallCheck(this, Logger); (0, _libCheck.checkType)(logging, 'object', 'console'); this.logger = logging; } _createClass(Logger, [{ key: 'canLog', value: function canLog(type) { return !!(type && console && (0, _libCheck.isType)(this.logger[type], 'function')); } }, { key: 'debug', value: function debug() { if (this.canLog('debug')) { for (var _len = arguments.length, rest = Array(_len), _key = 0; _key < _len; _key++) { rest[_key] = arguments[_key]; } this.logger.debug.apply(console, rest); return true; } return false; } }, { key: 'error', value: function error() { if (this.canLog('error')) { for (var _len2 = arguments.length, rest = Array(_len2), _key2 = 0; _key2 < _len2; _key2++) { rest[_key2] = arguments[_key2]; } this.logger.error.apply(console, rest); return true; } return false; } }, { key: 'log', value: function log() { if (this.canLog('log')) { for (var _len3 = arguments.length, rest = Array(_len3), _key3 = 0; _key3 < _len3; _key3++) { rest[_key3] = arguments[_key3]; } this.logger.log.apply(console, rest); return true; } return false; } }, { key: 'warn', value: function warn() { if (this.canLog('warn')) { for (var _len4 = arguments.length, rest = Array(_len4), _key4 = 0; _key4 < _len4; _key4++) { rest[_key4] = arguments[_key4]; } this.logger.warn.apply(console, rest); return true; } return false; } }], [{ key: 'getLogger', value: function getLogger() { var logger = undefined; // 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; })(); exports['default'] = Logger; module.exports = exports['default']; //# sourceMappingURL=Logger.js.map