loggish
Version:
Universal logger is a library designed for collect and process logs in apps
347 lines (346 loc) • 10.9 kB
JavaScript
var D = Object.defineProperty;
var G = (n, e, t) => e in n ? D(n, e, { enumerable: !0, configurable: !0, writable: !0, value: t }) : n[e] = t;
var O = (n, e, t) => (G(n, typeof e != "symbol" ? e + "" : e, t), t), _ = (n, e, t) => {
if (!e.has(n))
throw TypeError("Cannot " + t);
};
var c = (n, e, t) => (_(n, e, "read from private field"), t ? t.call(n) : e.get(n)), m = (n, e, t) => {
if (e.has(n))
throw TypeError("Cannot add the same private member more than once");
e instanceof WeakSet ? e.add(n) : e.set(n, t);
}, R = (n, e, t, r) => (_(n, e, "write to private field"), r ? r.call(n, t) : e.set(n, t), t);
var u = /* @__PURE__ */ ((n) => (n.EMERGENCY = "emergency", n.ERROR = "error", n.CRITICAL = "critical", n.WARN = "warn", n.ALERT = "alert", n.NOTICE = "notice", n.INFO = "info", n.DEBUG = "debug", n))(u || {}), b = { exports: {} }, l = typeof Reflect == "object" ? Reflect : null, x = l && typeof l.apply == "function" ? l.apply : function(e, t, r) {
return Function.prototype.apply.call(e, t, r);
}, E;
l && typeof l.ownKeys == "function" ? E = l.ownKeys : Object.getOwnPropertySymbols ? E = function(e) {
return Object.getOwnPropertyNames(e).concat(Object.getOwnPropertySymbols(e));
} : E = function(e) {
return Object.getOwnPropertyNames(e);
};
function K(n) {
console && console.warn && console.warn(n);
}
var A = Number.isNaN || function(e) {
return e !== e;
};
function o() {
o.init.call(this);
}
b.exports = o;
b.exports.once = B;
o.EventEmitter = o;
o.prototype._events = void 0;
o.prototype._eventsCount = 0;
o.prototype._maxListeners = void 0;
var C = 10;
function g(n) {
if (typeof n != "function")
throw new TypeError('The "listener" argument must be of type Function. Received type ' + typeof n);
}
Object.defineProperty(o, "defaultMaxListeners", {
enumerable: !0,
get: function() {
return C;
},
set: function(n) {
if (typeof n != "number" || n < 0 || A(n))
throw new RangeError('The value of "defaultMaxListeners" is out of range. It must be a non-negative number. Received ' + n + ".");
C = n;
}
});
o.init = function() {
(this._events === void 0 || this._events === Object.getPrototypeOf(this)._events) && (this._events = /* @__PURE__ */ Object.create(null), this._eventsCount = 0), this._maxListeners = this._maxListeners || void 0;
};
o.prototype.setMaxListeners = function(e) {
if (typeof e != "number" || e < 0 || A(e))
throw new RangeError('The value of "n" is out of range. It must be a non-negative number. Received ' + e + ".");
return this._maxListeners = e, this;
};
function T(n) {
return n._maxListeners === void 0 ? o.defaultMaxListeners : n._maxListeners;
}
o.prototype.getMaxListeners = function() {
return T(this);
};
o.prototype.emit = function(e) {
for (var t = [], r = 1; r < arguments.length; r++)
t.push(arguments[r]);
var i = e === "error", f = this._events;
if (f !== void 0)
i = i && f.error === void 0;
else if (!i)
return !1;
if (i) {
var s;
if (t.length > 0 && (s = t[0]), s instanceof Error)
throw s;
var a = new Error("Unhandled error." + (s ? " (" + s.message + ")" : ""));
throw a.context = s, a;
}
var p = f[e];
if (p === void 0)
return !1;
if (typeof p == "function")
x(p, this, t);
else
for (var N = p.length, W = S(p, N), r = 0; r < N; ++r)
x(W[r], this, t);
return !0;
};
function F(n, e, t, r) {
var i, f, s;
if (g(t), f = n._events, f === void 0 ? (f = n._events = /* @__PURE__ */ Object.create(null), n._eventsCount = 0) : (f.newListener !== void 0 && (n.emit(
"newListener",
e,
t.listener ? t.listener : t
), f = n._events), s = f[e]), s === void 0)
s = f[e] = t, ++n._eventsCount;
else if (typeof s == "function" ? s = f[e] = r ? [t, s] : [s, t] : r ? s.unshift(t) : s.push(t), i = T(n), i > 0 && s.length > i && !s.warned) {
s.warned = !0;
var a = new Error("Possible EventEmitter memory leak detected. " + s.length + " " + String(e) + " listeners added. Use emitter.setMaxListeners() to increase limit");
a.name = "MaxListenersExceededWarning", a.emitter = n, a.type = e, a.count = s.length, K(a);
}
return n;
}
o.prototype.addListener = function(e, t) {
return F(this, e, t, !1);
};
o.prototype.on = o.prototype.addListener;
o.prototype.prependListener = function(e, t) {
return F(this, e, t, !0);
};
function U() {
if (!this.fired)
return this.target.removeListener(this.type, this.wrapFn), this.fired = !0, arguments.length === 0 ? this.listener.call(this.target) : this.listener.apply(this.target, arguments);
}
function I(n, e, t) {
var r = { fired: !1, wrapFn: void 0, target: n, type: e, listener: t }, i = U.bind(r);
return i.listener = t, r.wrapFn = i, i;
}
o.prototype.once = function(e, t) {
return g(t), this.on(e, I(this, e, t)), this;
};
o.prototype.prependOnceListener = function(e, t) {
return g(t), this.prependListener(e, I(this, e, t)), this;
};
o.prototype.removeListener = function(e, t) {
var r, i, f, s, a;
if (g(t), i = this._events, i === void 0)
return this;
if (r = i[e], r === void 0)
return this;
if (r === t || r.listener === t)
--this._eventsCount === 0 ? this._events = /* @__PURE__ */ Object.create(null) : (delete i[e], i.removeListener && this.emit("removeListener", e, r.listener || t));
else if (typeof r != "function") {
for (f = -1, s = r.length - 1; s >= 0; s--)
if (r[s] === t || r[s].listener === t) {
a = r[s].listener, f = s;
break;
}
if (f < 0)
return this;
f === 0 ? r.shift() : V(r, f), r.length === 1 && (i[e] = r[0]), i.removeListener !== void 0 && this.emit("removeListener", e, a || t);
}
return this;
};
o.prototype.off = o.prototype.removeListener;
o.prototype.removeAllListeners = function(e) {
var t, r, i;
if (r = this._events, r === void 0)
return this;
if (r.removeListener === void 0)
return arguments.length === 0 ? (this._events = /* @__PURE__ */ Object.create(null), this._eventsCount = 0) : r[e] !== void 0 && (--this._eventsCount === 0 ? this._events = /* @__PURE__ */ Object.create(null) : delete r[e]), this;
if (arguments.length === 0) {
var f = Object.keys(r), s;
for (i = 0; i < f.length; ++i)
s = f[i], s !== "removeListener" && this.removeAllListeners(s);
return this.removeAllListeners("removeListener"), this._events = /* @__PURE__ */ Object.create(null), this._eventsCount = 0, this;
}
if (t = r[e], typeof t == "function")
this.removeListener(e, t);
else if (t !== void 0)
for (i = t.length - 1; i >= 0; i--)
this.removeListener(e, t[i]);
return this;
};
function j(n, e, t) {
var r = n._events;
if (r === void 0)
return [];
var i = r[e];
return i === void 0 ? [] : typeof i == "function" ? t ? [i.listener || i] : [i] : t ? k(i) : S(i, i.length);
}
o.prototype.listeners = function(e) {
return j(this, e, !0);
};
o.prototype.rawListeners = function(e) {
return j(this, e, !1);
};
o.listenerCount = function(n, e) {
return typeof n.listenerCount == "function" ? n.listenerCount(e) : M.call(n, e);
};
o.prototype.listenerCount = M;
function M(n) {
var e = this._events;
if (e !== void 0) {
var t = e[n];
if (typeof t == "function")
return 1;
if (t !== void 0)
return t.length;
}
return 0;
}
o.prototype.eventNames = function() {
return this._eventsCount > 0 ? E(this._events) : [];
};
function S(n, e) {
for (var t = new Array(e), r = 0; r < e; ++r)
t[r] = n[r];
return t;
}
function V(n, e) {
for (; e + 1 < n.length; e++)
n[e] = n[e + 1];
n.pop();
}
function k(n) {
for (var e = new Array(n.length), t = 0; t < e.length; ++t)
e[t] = n[t].listener || n[t];
return e;
}
function B(n, e) {
return new Promise(function(t, r) {
function i(s) {
n.removeListener(e, f), r(s);
}
function f() {
typeof n.removeListener == "function" && n.removeListener("error", i), t([].slice.call(arguments));
}
P(n, e, f, { once: !0 }), e !== "error" && Y(n, i, { once: !0 });
});
}
function Y(n, e, t) {
typeof n.on == "function" && P(n, "error", e, t);
}
function P(n, e, t, r) {
if (typeof n.on == "function")
r.once ? n.once(e, t) : n.on(e, t);
else if (typeof n.addEventListener == "function")
n.addEventListener(e, function i(f) {
r.once && n.removeEventListener(e, i), t(f);
});
else
throw new TypeError('The "emitter" argument must be of type EventEmitter. Received type ' + typeof n);
}
class $ extends b.exports {
}
var h, L, y, v;
const d = class {
constructor({
name: e
}) {
m(this, h, void 0);
m(this, L, []);
m(this, y, {});
m(this, v, void 0);
R(this, v, new $()), R(this, h, e);
}
get name() {
return c(this, h);
}
addFromException(e) {
this.error(
e.message + " captured in " + e.fileName + " at " + e.fileNumber + ", stack: " + e.stack,
[]
);
}
emergency(e, t) {
this.addRecord(this.getLevelFromName(u.EMERGENCY), e, t);
}
alert(e, t) {
this.addRecord(this.getLevelFromName(u.ALERT), e, t);
}
critical(e, t) {
this.addRecord(this.getLevelFromName(u.CRITICAL), e, t);
}
error(e, t) {
this.addRecord(this.getLevelFromName(u.ERROR), e, t);
}
warning(e, t) {
this.addRecord(this.getLevelFromName(u.WARN), e, t);
}
notice(e, t) {
this.addRecord(this.getLevelFromName(u.NOTICE), e, t);
}
info(e, t) {
this.addRecord(this.getLevelFromName(u.INFO), e, t);
}
debug(e, t) {
this.addRecord(this.getLevelFromName(u.DEBUG), e, t);
}
log(e, t, r) {
this.addRecord(e, t, r);
}
getRecords() {
return c(this, L);
}
addRecord(e, t, r) {
try {
if (!this.levelExists(e))
throw new Error(`Level ${e} do not exist`);
const i = {
message: t,
context: r,
level: e,
levelName: d.LEVELS[e],
channel: c(this, h),
captureDateTime: new Date(),
addon: [],
toString() {
return `${this.captureDateTime.toISOString().slice(0, 19).replace("T", " ")} | ${this.message}`;
}
};
return c(this, L).push(i), c(this, v).emit("add_record", i), !0;
} catch {
return !1;
}
}
getLevelFromName(e) {
return d.LEVELS.indexOf(e);
}
levelExists(e) {
return typeof d.LEVELS[e] == "string";
}
levelNameExists(e) {
return d.LEVELS.indexOf(e) > 0;
}
registerListener(e, t) {
c(this, v).on(e, t);
}
addExtension(e, t) {
const r = new e(t);
c(this, y)[r.name] = r;
const i = r.register(this, t);
Object.defineProperty(this, r.name, {
value: i,
writable: !1,
enumerable: !1,
configurable: !1
});
}
};
let w = d;
h = new WeakMap(), L = new WeakMap(), y = new WeakMap(), v = new WeakMap(), O(w, "LEVELS", [
u.DEBUG,
u.INFO,
u.NOTICE,
u.WARN,
u.ERROR,
u.CRITICAL,
u.ALERT,
u.EMERGENCY
]);
export {
w as default
};