UNPKG

rb-sdk

Version:

rb client sdk

134 lines (107 loc) 4.66 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; }; }(); var _EventDispatcher = require("./EventDispatcher"); var _EventDispatcher2 = _interopRequireDefault(_EventDispatcher); var _RBEvent = require("./RBEvent"); var _RBEvent2 = _interopRequireDefault(_RBEvent); function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; } function _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError("Cannot call a class as a function"); } } var RBDebugger = function () { function RBDebugger(opts) { _classCallCheck(this, RBDebugger); this.defaultConf = { forward: RBDebugger.FORWARD_CONSOLE, level: RBDebugger.DEBUGGER_LEVEL_ERROR }; this.setConfig(opts || this.defaultConf); } _createClass(RBDebugger, [{ key: "setConfig", value: function setConfig() { var opts = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : { forward: RBDebugger.FORWARD_CONSOLE, level: RBDebugger.DEBUGGER_LEVEL_INFO }; opts = Object.assign(this.defaultConf, opts); this.config = opts; } }, { key: "debug", value: function debug(message, args) { if (this._isOff()) { return; } var level = this.config.level; if (level != RBDebugger.DEBUGGER_LEVEL_DEBUG) { return; } this._log(message, args, RBDebugger.DEBUGGER_LEVEL_DEBUG); } }, { key: "error", value: function error(_error, args) { if (this._isOff()) { return; } var message = _error; if (typeof message == 'Error') { message = _error.message; } this._log(message, args, RBDebugger.DEBUGGER_LEVEL_ERROR); } }, { key: "info", value: function info(message, args) { if (this._isOff()) { return; } var level = this.config.level; if (level == RBDebugger.DEBUGGER_LEVEL_ERROR) { return; } this._log(message, args, RBDebugger.DEBUGGER_LEVEL_INFO); } }, { key: "_log", value: function _log(message, args, level) { var forward = this.config.forward; var logdata = { level: level, time: new Date(), message: message, args: args }; var method = level.toLowerCase(); switch (forward) { case RBDebugger.FORWARD_CONSOLE: if (method in console) { console[method]("[" + level + "]:" + message, args); } else { console.log("[" + level + "]:" + message, args); } break; case RBDebugger.FORWARD_ALTER: alert("[" + level + "]:" + message + "^:" + JSON.stringify(args));break; case RBDebugger.FORWARD_EVENT: _EventDispatcher2.default.dispatchEvent(new _RBEvent2.default(this, _RBEvent2.default.PRINT_DEBUG_MESSAGE, logdata));break; } } }, { key: "_isOff", value: function _isOff() { var forward = this.config.forward; if (!forward && forward == RBDebugger.FORWARD_OFF) { return true; } return false; } }]); return RBDebugger; }(); RBDebugger.FORWARD_OFF = "off"; RBDebugger.FORWARD_CONSOLE = "console"; RBDebugger.FORWARD_ALTER = "alter"; RBDebugger.FORWARD_EVENT = "event"; RBDebugger.DEBUGGER_LEVEL_ERROR = "ERROR"; RBDebugger.DEBUGGER_LEVEL_INFO = "INFO"; RBDebugger.DEBUGGER_LEVEL_DEBUG = "DEBUG"; var rbDebugger = new RBDebugger(); window.onerror = function (message, url, line, column, error) { rbDebugger.error(message, { url: url, line: line, column: column, error: error }); }; exports.default = rbDebugger;