81d2cb81bcafd178f2dc2921ad810713a29accf8f6c069a417c1e0641d0f2da59b24d17d322ae00e02ba5c807ab526a15c22719ea91ee483c4f31e6b1d3d6a 1.8 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172
  1. "use strict";
  2. exports.__esModule = true;
  3. var _classCallCheck2 = require("babel-runtime/helpers/classCallCheck");
  4. var _classCallCheck3 = _interopRequireDefault(_classCallCheck2);
  5. var _node = require("debug/node");
  6. var _node2 = _interopRequireDefault(_node);
  7. function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
  8. var verboseDebug = (0, _node2.default)("babel:verbose");
  9. var generalDebug = (0, _node2.default)("babel");
  10. var seenDeprecatedMessages = [];
  11. var Logger = function () {
  12. function Logger(file, filename) {
  13. (0, _classCallCheck3.default)(this, Logger);
  14. this.filename = filename;
  15. this.file = file;
  16. }
  17. Logger.prototype._buildMessage = function _buildMessage(msg) {
  18. var parts = "[BABEL] " + this.filename;
  19. if (msg) parts += ": " + msg;
  20. return parts;
  21. };
  22. Logger.prototype.warn = function warn(msg) {
  23. console.warn(this._buildMessage(msg));
  24. };
  25. Logger.prototype.error = function error(msg) {
  26. var Constructor = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : Error;
  27. throw new Constructor(this._buildMessage(msg));
  28. };
  29. Logger.prototype.deprecate = function deprecate(msg) {
  30. if (this.file.opts && this.file.opts.suppressDeprecationMessages) return;
  31. msg = this._buildMessage(msg);
  32. if (seenDeprecatedMessages.indexOf(msg) >= 0) return;
  33. seenDeprecatedMessages.push(msg);
  34. console.error(msg);
  35. };
  36. Logger.prototype.verbose = function verbose(msg) {
  37. if (verboseDebug.enabled) verboseDebug(this._buildMessage(msg));
  38. };
  39. Logger.prototype.debug = function debug(msg) {
  40. if (generalDebug.enabled) generalDebug(this._buildMessage(msg));
  41. };
  42. Logger.prototype.deopt = function deopt(node, msg) {
  43. this.debug(msg);
  44. };
  45. return Logger;
  46. }();
  47. exports.default = Logger;
  48. module.exports = exports["default"];