@pisell/core 1.0.59 → 1.0.60
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/es/indexDB/index.js +32 -25
- package/es/tasks/index.js +11 -24
- package/lib/indexDB/index.js +4 -1
- package/lib/tasks/index.js +0 -7
- package/package.json +1 -1
- package/es/logger/index.d.ts +0 -135
- package/lib/logger/index.d.ts +0 -135
package/es/indexDB/index.js
CHANGED
|
@@ -482,7 +482,7 @@ var IndexDBManager = /*#__PURE__*/function () {
|
|
|
482
482
|
i = 0;
|
|
483
483
|
case 13:
|
|
484
484
|
if (!(i < entries.length)) {
|
|
485
|
-
_context4.next =
|
|
485
|
+
_context4.next = 42;
|
|
486
486
|
break;
|
|
487
487
|
}
|
|
488
488
|
batch = entries.slice(i, i + this.debouncedUpdateBatchSize);
|
|
@@ -491,56 +491,63 @@ var IndexDBManager = /*#__PURE__*/function () {
|
|
|
491
491
|
_iterator2.s();
|
|
492
492
|
case 18:
|
|
493
493
|
if ((_step2 = _iterator2.n()).done) {
|
|
494
|
-
_context4.next =
|
|
494
|
+
_context4.next = 31;
|
|
495
495
|
break;
|
|
496
496
|
}
|
|
497
497
|
item = _step2.value;
|
|
498
498
|
_context4.next = 22;
|
|
499
499
|
return mockPromise(item, this.debouncedUpdateDelay);
|
|
500
500
|
case 22:
|
|
501
|
-
_context4.
|
|
501
|
+
_context4.prev = 22;
|
|
502
|
+
_context4.next = 25;
|
|
502
503
|
return this.update(storeName, item);
|
|
503
|
-
case
|
|
504
|
-
_context4.next =
|
|
504
|
+
case 25:
|
|
505
|
+
_context4.next = 29;
|
|
505
506
|
break;
|
|
506
|
-
case
|
|
507
|
-
_context4.
|
|
507
|
+
case 27:
|
|
508
|
+
_context4.prev = 27;
|
|
509
|
+
_context4.t0 = _context4["catch"](22);
|
|
510
|
+
case 29:
|
|
511
|
+
_context4.next = 18;
|
|
508
512
|
break;
|
|
509
|
-
case 28:
|
|
510
|
-
_context4.prev = 28;
|
|
511
|
-
_context4.t0 = _context4["catch"](16);
|
|
512
|
-
_iterator2.e(_context4.t0);
|
|
513
513
|
case 31:
|
|
514
|
-
_context4.
|
|
514
|
+
_context4.next = 36;
|
|
515
|
+
break;
|
|
516
|
+
case 33:
|
|
517
|
+
_context4.prev = 33;
|
|
518
|
+
_context4.t1 = _context4["catch"](16);
|
|
519
|
+
_iterator2.e(_context4.t1);
|
|
520
|
+
case 36:
|
|
521
|
+
_context4.prev = 36;
|
|
515
522
|
_iterator2.f();
|
|
516
|
-
return _context4.finish(
|
|
517
|
-
case
|
|
523
|
+
return _context4.finish(36);
|
|
524
|
+
case 39:
|
|
518
525
|
i += this.debouncedUpdateBatchSize;
|
|
519
526
|
_context4.next = 13;
|
|
520
527
|
break;
|
|
521
|
-
case
|
|
522
|
-
_context4.next =
|
|
528
|
+
case 42:
|
|
529
|
+
_context4.next = 47;
|
|
523
530
|
break;
|
|
524
|
-
case
|
|
525
|
-
_context4.prev =
|
|
526
|
-
_context4.
|
|
531
|
+
case 44:
|
|
532
|
+
_context4.prev = 44;
|
|
533
|
+
_context4.t2 = _context4["catch"](9);
|
|
527
534
|
this.app.logger.addLog({
|
|
528
535
|
type: 'error',
|
|
529
536
|
title: uuid,
|
|
530
537
|
metadata: {
|
|
531
538
|
msg: '防抖合并 update 失败',
|
|
532
|
-
error: _context4.
|
|
539
|
+
error: _context4.t2.message
|
|
533
540
|
}
|
|
534
541
|
});
|
|
535
|
-
case
|
|
536
|
-
_context4.prev =
|
|
542
|
+
case 47:
|
|
543
|
+
_context4.prev = 47;
|
|
537
544
|
this.debouncedUpdateFlushing.delete(storeName);
|
|
538
|
-
return _context4.finish(
|
|
539
|
-
case
|
|
545
|
+
return _context4.finish(47);
|
|
546
|
+
case 50:
|
|
540
547
|
case "end":
|
|
541
548
|
return _context4.stop();
|
|
542
549
|
}
|
|
543
|
-
}, _callee4, this, [[9,
|
|
550
|
+
}, _callee4, this, [[9, 44, 47, 50], [16, 33, 36, 39], [22, 27]]);
|
|
544
551
|
}));
|
|
545
552
|
function flushDebouncedUpdate(_x2) {
|
|
546
553
|
return _flushDebouncedUpdate.apply(this, arguments);
|
package/es/tasks/index.js
CHANGED
|
@@ -2,6 +2,8 @@ var _excluded = ["queueId", "module"];
|
|
|
2
2
|
function _typeof(o) { "@babel/helpers - typeof"; return _typeof = "function" == typeof Symbol && "symbol" == typeof Symbol.iterator ? function (o) { return typeof o; } : function (o) { return o && "function" == typeof Symbol && o.constructor === Symbol && o !== Symbol.prototype ? "symbol" : typeof o; }, _typeof(o); }
|
|
3
3
|
function _objectWithoutProperties(source, excluded) { if (source == null) return {}; var target = _objectWithoutPropertiesLoose(source, excluded); var key, i; if (Object.getOwnPropertySymbols) { var sourceSymbolKeys = Object.getOwnPropertySymbols(source); for (i = 0; i < sourceSymbolKeys.length; i++) { key = sourceSymbolKeys[i]; if (excluded.indexOf(key) >= 0) continue; if (!Object.prototype.propertyIsEnumerable.call(source, key)) continue; target[key] = source[key]; } } return target; }
|
|
4
4
|
function _objectWithoutPropertiesLoose(source, excluded) { if (source == null) return {}; var target = {}; var sourceKeys = Object.keys(source); var key, i; for (i = 0; i < sourceKeys.length; i++) { key = sourceKeys[i]; if (excluded.indexOf(key) >= 0) continue; target[key] = source[key]; } return target; }
|
|
5
|
+
function ownKeys(e, r) { var t = Object.keys(e); if (Object.getOwnPropertySymbols) { var o = Object.getOwnPropertySymbols(e); r && (o = o.filter(function (r) { return Object.getOwnPropertyDescriptor(e, r).enumerable; })), t.push.apply(t, o); } return t; }
|
|
6
|
+
function _objectSpread(e) { for (var r = 1; r < arguments.length; r++) { var t = null != arguments[r] ? arguments[r] : {}; r % 2 ? ownKeys(Object(t), !0).forEach(function (r) { _defineProperty(e, r, t[r]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(e, Object.getOwnPropertyDescriptors(t)) : ownKeys(Object(t)).forEach(function (r) { Object.defineProperty(e, r, Object.getOwnPropertyDescriptor(t, r)); }); } return e; }
|
|
5
7
|
function _toConsumableArray(arr) { return _arrayWithoutHoles(arr) || _iterableToArray(arr) || _unsupportedIterableToArray(arr) || _nonIterableSpread(); }
|
|
6
8
|
function _nonIterableSpread() { throw new TypeError("Invalid attempt to spread non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method."); }
|
|
7
9
|
function _iterableToArray(iter) { if (typeof Symbol !== "undefined" && iter[Symbol.iterator] != null || iter["@@iterator"] != null) return Array.from(iter); }
|
|
@@ -10,8 +12,6 @@ function _createForOfIteratorHelper(o, allowArrayLike) { var it = typeof Symbol
|
|
|
10
12
|
function _unsupportedIterableToArray(o, minLen) { if (!o) return; if (typeof o === "string") return _arrayLikeToArray(o, minLen); var n = Object.prototype.toString.call(o).slice(8, -1); if (n === "Object" && o.constructor) n = o.constructor.name; if (n === "Map" || n === "Set") return Array.from(o); if (n === "Arguments" || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)) return _arrayLikeToArray(o, minLen); }
|
|
11
13
|
function _arrayLikeToArray(arr, len) { if (len == null || len > arr.length) len = arr.length; for (var i = 0, arr2 = new Array(len); i < len; i++) arr2[i] = arr[i]; return arr2; }
|
|
12
14
|
function _regeneratorRuntime() { "use strict"; /*! regenerator-runtime -- Copyright (c) 2014-present, Facebook, Inc. -- license (MIT): https://github.com/facebook/regenerator/blob/main/LICENSE */ _regeneratorRuntime = function _regeneratorRuntime() { return e; }; var t, e = {}, r = Object.prototype, n = r.hasOwnProperty, o = Object.defineProperty || function (t, e, r) { t[e] = r.value; }, i = "function" == typeof Symbol ? Symbol : {}, a = i.iterator || "@@iterator", c = i.asyncIterator || "@@asyncIterator", u = i.toStringTag || "@@toStringTag"; function define(t, e, r) { return Object.defineProperty(t, e, { value: r, enumerable: !0, configurable: !0, writable: !0 }), t[e]; } try { define({}, ""); } catch (t) { define = function define(t, e, r) { return t[e] = r; }; } function wrap(t, e, r, n) { var i = e && e.prototype instanceof Generator ? e : Generator, a = Object.create(i.prototype), c = new Context(n || []); return o(a, "_invoke", { value: makeInvokeMethod(t, r, c) }), a; } function tryCatch(t, e, r) { try { return { type: "normal", arg: t.call(e, r) }; } catch (t) { return { type: "throw", arg: t }; } } e.wrap = wrap; var h = "suspendedStart", l = "suspendedYield", f = "executing", s = "completed", y = {}; function Generator() {} function GeneratorFunction() {} function GeneratorFunctionPrototype() {} var p = {}; define(p, a, function () { return this; }); var d = Object.getPrototypeOf, v = d && d(d(values([]))); v && v !== r && n.call(v, a) && (p = v); var g = GeneratorFunctionPrototype.prototype = Generator.prototype = Object.create(p); function defineIteratorMethods(t) { ["next", "throw", "return"].forEach(function (e) { define(t, e, function (t) { return this._invoke(e, t); }); }); } function AsyncIterator(t, e) { function invoke(r, o, i, a) { var c = tryCatch(t[r], t, o); if ("throw" !== c.type) { var u = c.arg, h = u.value; return h && "object" == _typeof(h) && n.call(h, "__await") ? e.resolve(h.__await).then(function (t) { invoke("next", t, i, a); }, function (t) { invoke("throw", t, i, a); }) : e.resolve(h).then(function (t) { u.value = t, i(u); }, function (t) { return invoke("throw", t, i, a); }); } a(c.arg); } var r; o(this, "_invoke", { value: function value(t, n) { function callInvokeWithMethodAndArg() { return new e(function (e, r) { invoke(t, n, e, r); }); } return r = r ? r.then(callInvokeWithMethodAndArg, callInvokeWithMethodAndArg) : callInvokeWithMethodAndArg(); } }); } function makeInvokeMethod(e, r, n) { var o = h; return function (i, a) { if (o === f) throw new Error("Generator is already running"); if (o === s) { if ("throw" === i) throw a; return { value: t, done: !0 }; } for (n.method = i, n.arg = a;;) { var c = n.delegate; if (c) { var u = maybeInvokeDelegate(c, n); if (u) { if (u === y) continue; return u; } } if ("next" === n.method) n.sent = n._sent = n.arg;else if ("throw" === n.method) { if (o === h) throw o = s, n.arg; n.dispatchException(n.arg); } else "return" === n.method && n.abrupt("return", n.arg); o = f; var p = tryCatch(e, r, n); if ("normal" === p.type) { if (o = n.done ? s : l, p.arg === y) continue; return { value: p.arg, done: n.done }; } "throw" === p.type && (o = s, n.method = "throw", n.arg = p.arg); } }; } function maybeInvokeDelegate(e, r) { var n = r.method, o = e.iterator[n]; if (o === t) return r.delegate = null, "throw" === n && e.iterator.return && (r.method = "return", r.arg = t, maybeInvokeDelegate(e, r), "throw" === r.method) || "return" !== n && (r.method = "throw", r.arg = new TypeError("The iterator does not provide a '" + n + "' method")), y; var i = tryCatch(o, e.iterator, r.arg); if ("throw" === i.type) return r.method = "throw", r.arg = i.arg, r.delegate = null, y; var a = i.arg; return a ? a.done ? (r[e.resultName] = a.value, r.next = e.nextLoc, "return" !== r.method && (r.method = "next", r.arg = t), r.delegate = null, y) : a : (r.method = "throw", r.arg = new TypeError("iterator result is not an object"), r.delegate = null, y); } function pushTryEntry(t) { var e = { tryLoc: t[0] }; 1 in t && (e.catchLoc = t[1]), 2 in t && (e.finallyLoc = t[2], e.afterLoc = t[3]), this.tryEntries.push(e); } function resetTryEntry(t) { var e = t.completion || {}; e.type = "normal", delete e.arg, t.completion = e; } function Context(t) { this.tryEntries = [{ tryLoc: "root" }], t.forEach(pushTryEntry, this), this.reset(!0); } function values(e) { if (e || "" === e) { var r = e[a]; if (r) return r.call(e); if ("function" == typeof e.next) return e; if (!isNaN(e.length)) { var o = -1, i = function next() { for (; ++o < e.length;) if (n.call(e, o)) return next.value = e[o], next.done = !1, next; return next.value = t, next.done = !0, next; }; return i.next = i; } } throw new TypeError(_typeof(e) + " is not iterable"); } return GeneratorFunction.prototype = GeneratorFunctionPrototype, o(g, "constructor", { value: GeneratorFunctionPrototype, configurable: !0 }), o(GeneratorFunctionPrototype, "constructor", { value: GeneratorFunction, configurable: !0 }), GeneratorFunction.displayName = define(GeneratorFunctionPrototype, u, "GeneratorFunction"), e.isGeneratorFunction = function (t) { var e = "function" == typeof t && t.constructor; return !!e && (e === GeneratorFunction || "GeneratorFunction" === (e.displayName || e.name)); }, e.mark = function (t) { return Object.setPrototypeOf ? Object.setPrototypeOf(t, GeneratorFunctionPrototype) : (t.__proto__ = GeneratorFunctionPrototype, define(t, u, "GeneratorFunction")), t.prototype = Object.create(g), t; }, e.awrap = function (t) { return { __await: t }; }, defineIteratorMethods(AsyncIterator.prototype), define(AsyncIterator.prototype, c, function () { return this; }), e.AsyncIterator = AsyncIterator, e.async = function (t, r, n, o, i) { void 0 === i && (i = Promise); var a = new AsyncIterator(wrap(t, r, n, o), i); return e.isGeneratorFunction(r) ? a : a.next().then(function (t) { return t.done ? t.value : a.next(); }); }, defineIteratorMethods(g), define(g, u, "Generator"), define(g, a, function () { return this; }), define(g, "toString", function () { return "[object Generator]"; }), e.keys = function (t) { var e = Object(t), r = []; for (var n in e) r.push(n); return r.reverse(), function next() { for (; r.length;) { var t = r.pop(); if (t in e) return next.value = t, next.done = !1, next; } return next.done = !0, next; }; }, e.values = values, Context.prototype = { constructor: Context, reset: function reset(e) { if (this.prev = 0, this.next = 0, this.sent = this._sent = t, this.done = !1, this.delegate = null, this.method = "next", this.arg = t, this.tryEntries.forEach(resetTryEntry), !e) for (var r in this) "t" === r.charAt(0) && n.call(this, r) && !isNaN(+r.slice(1)) && (this[r] = t); }, stop: function stop() { this.done = !0; var t = this.tryEntries[0].completion; if ("throw" === t.type) throw t.arg; return this.rval; }, dispatchException: function dispatchException(e) { if (this.done) throw e; var r = this; function handle(n, o) { return a.type = "throw", a.arg = e, r.next = n, o && (r.method = "next", r.arg = t), !!o; } for (var o = this.tryEntries.length - 1; o >= 0; --o) { var i = this.tryEntries[o], a = i.completion; if ("root" === i.tryLoc) return handle("end"); if (i.tryLoc <= this.prev) { var c = n.call(i, "catchLoc"), u = n.call(i, "finallyLoc"); if (c && u) { if (this.prev < i.catchLoc) return handle(i.catchLoc, !0); if (this.prev < i.finallyLoc) return handle(i.finallyLoc); } else if (c) { if (this.prev < i.catchLoc) return handle(i.catchLoc, !0); } else { if (!u) throw new Error("try statement without catch or finally"); if (this.prev < i.finallyLoc) return handle(i.finallyLoc); } } } }, abrupt: function abrupt(t, e) { for (var r = this.tryEntries.length - 1; r >= 0; --r) { var o = this.tryEntries[r]; if (o.tryLoc <= this.prev && n.call(o, "finallyLoc") && this.prev < o.finallyLoc) { var i = o; break; } } i && ("break" === t || "continue" === t) && i.tryLoc <= e && e <= i.finallyLoc && (i = null); var a = i ? i.completion : {}; return a.type = t, a.arg = e, i ? (this.method = "next", this.next = i.finallyLoc, y) : this.complete(a); }, complete: function complete(t, e) { if ("throw" === t.type) throw t.arg; return "break" === t.type || "continue" === t.type ? this.next = t.arg : "return" === t.type ? (this.rval = this.arg = t.arg, this.method = "return", this.next = "end") : "normal" === t.type && e && (this.next = e), y; }, finish: function finish(t) { for (var e = this.tryEntries.length - 1; e >= 0; --e) { var r = this.tryEntries[e]; if (r.finallyLoc === t) return this.complete(r.completion, r.afterLoc), resetTryEntry(r), y; } }, catch: function _catch(t) { for (var e = this.tryEntries.length - 1; e >= 0; --e) { var r = this.tryEntries[e]; if (r.tryLoc === t) { var n = r.completion; if ("throw" === n.type) { var o = n.arg; resetTryEntry(r); } return o; } } throw new Error("illegal catch attempt"); }, delegateYield: function delegateYield(e, r, n) { return this.delegate = { iterator: values(e), resultName: r, nextLoc: n }, "next" === this.method && (this.arg = t), y; } }, e; }
|
|
13
|
-
function ownKeys(e, r) { var t = Object.keys(e); if (Object.getOwnPropertySymbols) { var o = Object.getOwnPropertySymbols(e); r && (o = o.filter(function (r) { return Object.getOwnPropertyDescriptor(e, r).enumerable; })), t.push.apply(t, o); } return t; }
|
|
14
|
-
function _objectSpread(e) { for (var r = 1; r < arguments.length; r++) { var t = null != arguments[r] ? arguments[r] : {}; r % 2 ? ownKeys(Object(t), !0).forEach(function (r) { _defineProperty(e, r, t[r]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(e, Object.getOwnPropertyDescriptors(t)) : ownKeys(Object(t)).forEach(function (r) { Object.defineProperty(e, r, Object.getOwnPropertyDescriptor(t, r)); }); } return e; }
|
|
15
15
|
function asyncGeneratorStep(gen, resolve, reject, _next, _throw, key, arg) { try { var info = gen[key](arg); var value = info.value; } catch (error) { reject(error); return; } if (info.done) { resolve(value); } else { Promise.resolve(value).then(_next, _throw); } }
|
|
16
16
|
function _asyncToGenerator(fn) { return function () { var self = this, args = arguments; return new Promise(function (resolve, reject) { var gen = fn.apply(self, args); function _next(value) { asyncGeneratorStep(gen, resolve, reject, _next, _throw, "next", value); } function _throw(err) { asyncGeneratorStep(gen, resolve, reject, _next, _throw, "throw", err); } _next(undefined); }); }; }
|
|
17
17
|
function _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError("Cannot call a class as a function"); } }
|
|
@@ -42,33 +42,20 @@ export var TasksManager = /*#__PURE__*/function () {
|
|
|
42
42
|
_defineProperty(this, "saveTaskQueueToLocal", /*#__PURE__*/function () {
|
|
43
43
|
var _ref = _asyncToGenerator( /*#__PURE__*/_regeneratorRuntime().mark(function _callee(state) {
|
|
44
44
|
var _this$watchTaskCallba;
|
|
45
|
-
var tasksData, newData;
|
|
46
45
|
return _regeneratorRuntime().wrap(function _callee$(_context) {
|
|
47
46
|
while (1) switch (_context.prev = _context.next) {
|
|
48
47
|
case 0:
|
|
49
48
|
console.log("saveTaskQueueToLocal", state);
|
|
50
|
-
|
|
51
|
-
|
|
52
|
-
|
|
53
|
-
tasksData
|
|
54
|
-
|
|
55
|
-
|
|
56
|
-
|
|
57
|
-
|
|
58
|
-
_context.next = 10;
|
|
59
|
-
break;
|
|
60
|
-
}
|
|
61
|
-
_context.next = 8;
|
|
62
|
-
return _this.db.add("tasks", newData);
|
|
63
|
-
case 8:
|
|
64
|
-
_context.next = 12;
|
|
65
|
-
break;
|
|
66
|
-
case 10:
|
|
67
|
-
_context.next = 12;
|
|
68
|
-
return _this.db.update("tasks", newData);
|
|
69
|
-
case 12:
|
|
49
|
+
// let tasksData = await this.db.get<any>("tasks", "tasks");
|
|
50
|
+
// const newData = { id: "tasks", ...state };
|
|
51
|
+
// // 如果不存在则创建新文件
|
|
52
|
+
// if (!tasksData) {
|
|
53
|
+
// await this.db.add("tasks", newData);
|
|
54
|
+
// } else {
|
|
55
|
+
// await this.db.update("tasks", newData);
|
|
56
|
+
// }
|
|
70
57
|
(_this$watchTaskCallba = _this.watchTaskCallback) === null || _this$watchTaskCallba === void 0 || _this$watchTaskCallba.call(_this, _this.tasks);
|
|
71
|
-
case
|
|
58
|
+
case 2:
|
|
72
59
|
case "end":
|
|
73
60
|
return _context.stop();
|
|
74
61
|
}
|
package/lib/indexDB/index.js
CHANGED
|
@@ -319,7 +319,10 @@ var IndexDBManager = class _IndexDBManager {
|
|
|
319
319
|
const batch = entries.slice(i, i + this.debouncedUpdateBatchSize);
|
|
320
320
|
for (const item of batch) {
|
|
321
321
|
await mockPromise(item, this.debouncedUpdateDelay);
|
|
322
|
-
|
|
322
|
+
try {
|
|
323
|
+
await this.update(storeName, item);
|
|
324
|
+
} catch (err) {
|
|
325
|
+
}
|
|
323
326
|
}
|
|
324
327
|
}
|
|
325
328
|
} catch (error) {
|
package/lib/tasks/index.js
CHANGED
|
@@ -95,13 +95,6 @@ var TasksManager = class _TasksManager {
|
|
|
95
95
|
saveTaskQueueToLocal = async (state) => {
|
|
96
96
|
var _a;
|
|
97
97
|
console.log("saveTaskQueueToLocal", state);
|
|
98
|
-
let tasksData = await this.db.get("tasks", "tasks");
|
|
99
|
-
const newData = { id: "tasks", ...state };
|
|
100
|
-
if (!tasksData) {
|
|
101
|
-
await this.db.add("tasks", newData);
|
|
102
|
-
} else {
|
|
103
|
-
await this.db.update("tasks", newData);
|
|
104
|
-
}
|
|
105
98
|
(_a = this.watchTaskCallback) == null ? void 0 : _a.call(this, this.tasks);
|
|
106
99
|
};
|
|
107
100
|
// 从 local 加载任务队列状态
|
package/package.json
CHANGED
package/es/logger/index.d.ts
DELETED
|
@@ -1,135 +0,0 @@
|
|
|
1
|
-
import App from "../app";
|
|
2
|
-
export declare type LogConsoleType = "info" | "warning" | "error" | "debug";
|
|
3
|
-
/**
|
|
4
|
-
* 日志项接口
|
|
5
|
-
*/
|
|
6
|
-
interface LogItem {
|
|
7
|
-
logId?: string | number;
|
|
8
|
-
type: LogConsoleType;
|
|
9
|
-
title: string;
|
|
10
|
-
date?: string;
|
|
11
|
-
metadata?: any;
|
|
12
|
-
feishu?: any;
|
|
13
|
-
}
|
|
14
|
-
interface LogFile {
|
|
15
|
-
fileName: string;
|
|
16
|
-
date: string;
|
|
17
|
-
fileContent: LogFileContent;
|
|
18
|
-
}
|
|
19
|
-
interface LogFileContent {
|
|
20
|
-
metadata: any;
|
|
21
|
-
logs: LogItem[];
|
|
22
|
-
}
|
|
23
|
-
export interface LoggerOptions {
|
|
24
|
-
prefix?: string;
|
|
25
|
-
checkInterval?: number;
|
|
26
|
-
feishuConfig?: any;
|
|
27
|
-
retentionDays?: number;
|
|
28
|
-
}
|
|
29
|
-
/**
|
|
30
|
-
* 日志管理器类
|
|
31
|
-
*/
|
|
32
|
-
declare class LoggerManager {
|
|
33
|
-
private logBuffer;
|
|
34
|
-
private timer;
|
|
35
|
-
private checkInterval;
|
|
36
|
-
private prefix;
|
|
37
|
-
private metadata;
|
|
38
|
-
private db;
|
|
39
|
-
private app;
|
|
40
|
-
private feishuConfig;
|
|
41
|
-
private retentionDays;
|
|
42
|
-
private metadataFunction;
|
|
43
|
-
private status;
|
|
44
|
-
/**
|
|
45
|
-
* 构造函数
|
|
46
|
-
* @param prefix 日志前缀
|
|
47
|
-
* @param checkInterval 检查间隔时间,默认5分钟
|
|
48
|
-
*/
|
|
49
|
-
constructor(app: App, options?: LoggerOptions);
|
|
50
|
-
init(): Promise<void>;
|
|
51
|
-
/**
|
|
52
|
-
* 初始化 IndexDB
|
|
53
|
-
*/
|
|
54
|
-
private initDB;
|
|
55
|
-
/**
|
|
56
|
-
* 设置元数据
|
|
57
|
-
* @param metadata 元数据
|
|
58
|
-
*/
|
|
59
|
-
setMetadata(metadata: any): void;
|
|
60
|
-
setMetadataFunction(metadataFunction: () => any): void;
|
|
61
|
-
/**
|
|
62
|
-
* 初始化定时器
|
|
63
|
-
*/
|
|
64
|
-
initTimer(): void;
|
|
65
|
-
private setStatus;
|
|
66
|
-
stop(): void;
|
|
67
|
-
/**
|
|
68
|
-
* 添加日志
|
|
69
|
-
* @param log 日志项
|
|
70
|
-
*/
|
|
71
|
-
addLog(log: LogItem): void;
|
|
72
|
-
/**
|
|
73
|
-
* 发送飞书通知
|
|
74
|
-
* @param log 日志项
|
|
75
|
-
*/
|
|
76
|
-
private sendFeishuNotification;
|
|
77
|
-
/**
|
|
78
|
-
* 创建日志文件名
|
|
79
|
-
* @returns 日志文件名
|
|
80
|
-
*/
|
|
81
|
-
private createFileName;
|
|
82
|
-
/**
|
|
83
|
-
* 创建AWS日志文件名
|
|
84
|
-
* @param isManual 紧急上传
|
|
85
|
-
* @returns 日志文件名
|
|
86
|
-
*/
|
|
87
|
-
createAWSFileName(urgent?: boolean): Promise<any>;
|
|
88
|
-
/**
|
|
89
|
-
* 创建日志文件
|
|
90
|
-
* @param _fileName 文件名
|
|
91
|
-
* @returns 日志文件对象
|
|
92
|
-
*/
|
|
93
|
-
private createFile;
|
|
94
|
-
/**
|
|
95
|
-
* 存储日志到持久化存储
|
|
96
|
-
*/
|
|
97
|
-
storeLog(urgent?: boolean): Promise<void>;
|
|
98
|
-
uploadIndexDBLog(): Promise<void>;
|
|
99
|
-
private storeLogToIndexDB;
|
|
100
|
-
/**
|
|
101
|
-
* 清理旧日志,只保留最近指定天数的日志
|
|
102
|
-
*/
|
|
103
|
-
private cleanupOldLogs;
|
|
104
|
-
/**
|
|
105
|
-
* 获取日志文件列表
|
|
106
|
-
* @returns 日志文件列表
|
|
107
|
-
*/
|
|
108
|
-
getLogFiles(): Promise<LogFile[]>;
|
|
109
|
-
/**
|
|
110
|
-
* 获取指定日志文件的内容
|
|
111
|
-
* @param fileName 日志文件名
|
|
112
|
-
* @returns 日志文件内容
|
|
113
|
-
*/
|
|
114
|
-
getLogFile(fileName: string): Promise<LogFile | null>;
|
|
115
|
-
/**
|
|
116
|
-
* 清空指定日志文件
|
|
117
|
-
* @param fileName 日志文件名,不指定则清空所有日志
|
|
118
|
-
* @returns 是否成功
|
|
119
|
-
*/
|
|
120
|
-
clearLogs(fileName?: string): Promise<boolean>;
|
|
121
|
-
/**
|
|
122
|
-
* 设置日志保留天数
|
|
123
|
-
* @param days 保留天数
|
|
124
|
-
*/
|
|
125
|
-
setRetentionDays(days: number): void;
|
|
126
|
-
/**
|
|
127
|
-
* 手动触发清理旧日志
|
|
128
|
-
*/
|
|
129
|
-
manualCleanup(): Promise<void>;
|
|
130
|
-
/**
|
|
131
|
-
* 销毁实例
|
|
132
|
-
*/
|
|
133
|
-
destroy(): void;
|
|
134
|
-
}
|
|
135
|
-
export default LoggerManager;
|
package/lib/logger/index.d.ts
DELETED
|
@@ -1,135 +0,0 @@
|
|
|
1
|
-
import App from "../app";
|
|
2
|
-
export declare type LogConsoleType = "info" | "warning" | "error" | "debug";
|
|
3
|
-
/**
|
|
4
|
-
* 日志项接口
|
|
5
|
-
*/
|
|
6
|
-
interface LogItem {
|
|
7
|
-
logId?: string | number;
|
|
8
|
-
type: LogConsoleType;
|
|
9
|
-
title: string;
|
|
10
|
-
date?: string;
|
|
11
|
-
metadata?: any;
|
|
12
|
-
feishu?: any;
|
|
13
|
-
}
|
|
14
|
-
interface LogFile {
|
|
15
|
-
fileName: string;
|
|
16
|
-
date: string;
|
|
17
|
-
fileContent: LogFileContent;
|
|
18
|
-
}
|
|
19
|
-
interface LogFileContent {
|
|
20
|
-
metadata: any;
|
|
21
|
-
logs: LogItem[];
|
|
22
|
-
}
|
|
23
|
-
export interface LoggerOptions {
|
|
24
|
-
prefix?: string;
|
|
25
|
-
checkInterval?: number;
|
|
26
|
-
feishuConfig?: any;
|
|
27
|
-
retentionDays?: number;
|
|
28
|
-
}
|
|
29
|
-
/**
|
|
30
|
-
* 日志管理器类
|
|
31
|
-
*/
|
|
32
|
-
declare class LoggerManager {
|
|
33
|
-
private logBuffer;
|
|
34
|
-
private timer;
|
|
35
|
-
private checkInterval;
|
|
36
|
-
private prefix;
|
|
37
|
-
private metadata;
|
|
38
|
-
private db;
|
|
39
|
-
private app;
|
|
40
|
-
private feishuConfig;
|
|
41
|
-
private retentionDays;
|
|
42
|
-
private metadataFunction;
|
|
43
|
-
private status;
|
|
44
|
-
/**
|
|
45
|
-
* 构造函数
|
|
46
|
-
* @param prefix 日志前缀
|
|
47
|
-
* @param checkInterval 检查间隔时间,默认5分钟
|
|
48
|
-
*/
|
|
49
|
-
constructor(app: App, options?: LoggerOptions);
|
|
50
|
-
init(): Promise<void>;
|
|
51
|
-
/**
|
|
52
|
-
* 初始化 IndexDB
|
|
53
|
-
*/
|
|
54
|
-
private initDB;
|
|
55
|
-
/**
|
|
56
|
-
* 设置元数据
|
|
57
|
-
* @param metadata 元数据
|
|
58
|
-
*/
|
|
59
|
-
setMetadata(metadata: any): void;
|
|
60
|
-
setMetadataFunction(metadataFunction: () => any): void;
|
|
61
|
-
/**
|
|
62
|
-
* 初始化定时器
|
|
63
|
-
*/
|
|
64
|
-
initTimer(): void;
|
|
65
|
-
private setStatus;
|
|
66
|
-
stop(): void;
|
|
67
|
-
/**
|
|
68
|
-
* 添加日志
|
|
69
|
-
* @param log 日志项
|
|
70
|
-
*/
|
|
71
|
-
addLog(log: LogItem): void;
|
|
72
|
-
/**
|
|
73
|
-
* 发送飞书通知
|
|
74
|
-
* @param log 日志项
|
|
75
|
-
*/
|
|
76
|
-
private sendFeishuNotification;
|
|
77
|
-
/**
|
|
78
|
-
* 创建日志文件名
|
|
79
|
-
* @returns 日志文件名
|
|
80
|
-
*/
|
|
81
|
-
private createFileName;
|
|
82
|
-
/**
|
|
83
|
-
* 创建AWS日志文件名
|
|
84
|
-
* @param isManual 紧急上传
|
|
85
|
-
* @returns 日志文件名
|
|
86
|
-
*/
|
|
87
|
-
createAWSFileName(urgent?: boolean): Promise<any>;
|
|
88
|
-
/**
|
|
89
|
-
* 创建日志文件
|
|
90
|
-
* @param _fileName 文件名
|
|
91
|
-
* @returns 日志文件对象
|
|
92
|
-
*/
|
|
93
|
-
private createFile;
|
|
94
|
-
/**
|
|
95
|
-
* 存储日志到持久化存储
|
|
96
|
-
*/
|
|
97
|
-
storeLog(urgent?: boolean): Promise<void>;
|
|
98
|
-
uploadIndexDBLog(): Promise<void>;
|
|
99
|
-
private storeLogToIndexDB;
|
|
100
|
-
/**
|
|
101
|
-
* 清理旧日志,只保留最近指定天数的日志
|
|
102
|
-
*/
|
|
103
|
-
private cleanupOldLogs;
|
|
104
|
-
/**
|
|
105
|
-
* 获取日志文件列表
|
|
106
|
-
* @returns 日志文件列表
|
|
107
|
-
*/
|
|
108
|
-
getLogFiles(): Promise<LogFile[]>;
|
|
109
|
-
/**
|
|
110
|
-
* 获取指定日志文件的内容
|
|
111
|
-
* @param fileName 日志文件名
|
|
112
|
-
* @returns 日志文件内容
|
|
113
|
-
*/
|
|
114
|
-
getLogFile(fileName: string): Promise<LogFile | null>;
|
|
115
|
-
/**
|
|
116
|
-
* 清空指定日志文件
|
|
117
|
-
* @param fileName 日志文件名,不指定则清空所有日志
|
|
118
|
-
* @returns 是否成功
|
|
119
|
-
*/
|
|
120
|
-
clearLogs(fileName?: string): Promise<boolean>;
|
|
121
|
-
/**
|
|
122
|
-
* 设置日志保留天数
|
|
123
|
-
* @param days 保留天数
|
|
124
|
-
*/
|
|
125
|
-
setRetentionDays(days: number): void;
|
|
126
|
-
/**
|
|
127
|
-
* 手动触发清理旧日志
|
|
128
|
-
*/
|
|
129
|
-
manualCleanup(): Promise<void>;
|
|
130
|
-
/**
|
|
131
|
-
* 销毁实例
|
|
132
|
-
*/
|
|
133
|
-
destroy(): void;
|
|
134
|
-
}
|
|
135
|
-
export default LoggerManager;
|