You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
66 lines
8.4 KiB
66 lines
8.4 KiB
|
2 weeks ago
|
"use strict";
|
||
|
|
Object.defineProperty(exports, "__esModule", { value: true });
|
||
|
|
/** 日志面板:格式化/过滤/自动滚动/复制/清空。 */
|
||
|
|
exports.default = {
|
||
|
|
logClass(l) {
|
||
|
|
const m = l && typeof l === 'object' ? l : null;
|
||
|
|
return m && m.evt === 'console' ? `lv-${m.level}` : '';
|
||
|
|
},
|
||
|
|
logText(l) {
|
||
|
|
const m = l && typeof l === 'object' ? l : null;
|
||
|
|
if (m && m.evt === 'console') {
|
||
|
|
return m.text;
|
||
|
|
}
|
||
|
|
return this.fmt(l);
|
||
|
|
},
|
||
|
|
logLevel(l) {
|
||
|
|
const m = l && typeof l === 'object' ? l : null;
|
||
|
|
return m && m.evt === 'console' ? String(m.level) : 'info';
|
||
|
|
},
|
||
|
|
logLevelText(l) {
|
||
|
|
return this.logLevel(l).toUpperCase();
|
||
|
|
},
|
||
|
|
logTime(l) {
|
||
|
|
const m = l && typeof l === 'object' ? l : null;
|
||
|
|
const t = m && typeof m.t === 'number' ? m.t : 0;
|
||
|
|
if (!t) {
|
||
|
|
return '';
|
||
|
|
}
|
||
|
|
const d = new Date(t);
|
||
|
|
const p = (n) => String(n).padStart(2, '0');
|
||
|
|
return `${p(d.getHours())}:${p(d.getMinutes())}:${p(d.getSeconds())}`;
|
||
|
|
},
|
||
|
|
scrollLogToBottom() {
|
||
|
|
// 用户正在向上翻历史时暂停跟随
|
||
|
|
if (this.logUserUp) {
|
||
|
|
return;
|
||
|
|
}
|
||
|
|
this.$nextTick(() => {
|
||
|
|
const el = this.$refs.logList;
|
||
|
|
if (!el) {
|
||
|
|
return;
|
||
|
|
}
|
||
|
|
el.scrollTop = el.scrollHeight;
|
||
|
|
});
|
||
|
|
},
|
||
|
|
onLogScroll() {
|
||
|
|
const el = this.$refs.logList;
|
||
|
|
if (!el) {
|
||
|
|
return;
|
||
|
|
}
|
||
|
|
// 主动滚离底部 → 记录;滚回底部附近 → 恢复自动跟随
|
||
|
|
this.logUserUp = el.scrollHeight - el.scrollTop - el.clientHeight >= 40;
|
||
|
|
},
|
||
|
|
async copyLogs() {
|
||
|
|
const text = this.filteredLogs.map((l) => this.logText(l)).join('\n');
|
||
|
|
await this.writeClipboard(text);
|
||
|
|
},
|
||
|
|
clearLogs() {
|
||
|
|
this.logs = [];
|
||
|
|
this.logUserUp = false;
|
||
|
|
},
|
||
|
|
async copyLogLine(l) {
|
||
|
|
await this.writeClipboard(this.fmt(l));
|
||
|
|
},
|
||
|
|
};
|
||
|
|
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibG9ncy5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uL3NvdXJjZS9wYW5lbHMvZGVmYXVsdC9tZXRob2RzL2xvZ3MudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7QUFBQSw4QkFBOEI7QUFDOUIsa0JBQWU7SUFDWCxRQUFRLENBQVksQ0FBVTtRQUMxQixNQUFNLENBQUMsR0FBRyxDQUFDLElBQUksT0FBTyxDQUFDLEtBQUssUUFBUSxDQUFDLENBQUMsQ0FBRSxDQUFTLENBQUMsQ0FBQyxDQUFDLElBQUksQ0FBQztRQUN6RCxPQUFPLENBQUMsSUFBSSxDQUFDLENBQUMsR0FBRyxLQUFLLFNBQVMsQ0FBQyxDQUFDLENBQUMsTUFBTSxDQUFDLENBQUMsS0FBSyxFQUFFLENBQUMsQ0FBQyxDQUFDLEVBQUUsQ0FBQztJQUMzRCxDQUFDO0lBQ0QsT0FBTyxDQUFZLENBQVU7UUFDekIsTUFBTSxDQUFDLEdBQUcsQ0FBQyxJQUFJLE9BQU8sQ0FBQyxLQUFLLFFBQVEsQ0FBQyxDQUFDLENBQUUsQ0FBUyxDQUFDLENBQUMsQ0FBQyxJQUFJLENBQUM7UUFDekQsSUFBSSxDQUFDLElBQUksQ0FBQyxDQUFDLEdBQUcsS0FBSyxTQUFTLEVBQUUsQ0FBQztZQUMzQixPQUFPLENBQUMsQ0FBQyxJQUFJLENBQUM7UUFDbEIsQ0FBQztRQUNELE9BQU8sSUFBSSxDQUFDLEdBQUcsQ0FBQyxDQUFDLENBQUMsQ0FBQztJQUN2QixDQUFDO0lBQ0QsUUFBUSxDQUFZLENBQVU7UUFDMUIsTUFBTSxDQUFDLEdBQUcsQ0FBQyxJQUFJLE9BQU8sQ0FBQyxLQUFLLFFBQVEsQ0FBQyxDQUFDLENBQUUsQ0FBUyxDQUFDLENBQUMsQ0FBQyxJQUFJLENBQUM7UUFDekQsT0FBTyxDQUFDLElBQUksQ0FBQyxDQUFDLEdBQUcsS0FBSyxTQUFTLENBQUMsQ0FBQyxDQUFDLE1BQU0sQ0FBQyxDQUFDLENBQUMsS0FBSyxDQUFDLENBQUMsQ0FBQyxDQUFDLE1BQU0sQ0FBQztJQUMvRCxDQUFDO0lBQ0QsWUFBWSxDQUFZLENBQVU7UUFDOUIsT0FBTyxJQUFJLENBQUMsUUFBUSxDQUFDLENBQUMsQ0FBQyxDQUFDLFdBQVcsRUFBRSxDQUFDO0lBQzFDLENBQUM7SUFDRCxPQUFPLENBQVksQ0FBVTtRQUN6QixNQUFNLENBQUMsR0FBRyxDQUFDLElBQUksT0FBTyxDQUFDLEtBQUssUUFBUSxDQUFDLENBQUMsQ0FBRSxDQUFTLENBQUMsQ0FBQyxDQUFDLElBQUksQ0FBQztRQUN6RCxNQUFNLENBQUMsR0FBRyxDQUFDLElBQUksT0FBTyxDQUFDLENBQUMsQ0FBQyxLQUFLLFFBQVEsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDO1FBQ2pELElBQUksQ0FBQyxDQUFDLEVBQUUsQ0FBQztZQUNMLE9BQU8sRUFBRSxDQUFDO1FBQ2QsQ0FBQztRQUNELE1BQU0sQ0FBQyxHQUFHLElBQUksSUFBSSxDQUFDLENBQUMsQ0FBQyxDQUFDO1FBQ3RCLE1BQU0sQ0FBQyxHQUFHLENBQUMsQ0FBUyxFQUFFLEVBQUUsQ0FBQyxNQUFNLENBQUMsQ0FBQyxDQUFDLENBQUMsUUFBUSxDQUFDLENBQUMsRUFBRSxHQUFHLENBQUMsQ0FBQztRQUNwRCxPQUFPLEdBQUcsQ0FBQyxDQUFDLENBQUMsQ0FBQyxRQUFRLEVBQUUsQ0FBQyxJQUFJLENBQUMsQ0FBQyxDQUFDLENBQUMsVUFBVSxFQUFFLENBQUMsSUFBSSxDQUFDLENBQUMsQ0FBQyxDQUFDLFVBQVUsRUFBRSxDQUFDLEVBQUUsQ0FBQztJQUMxRSxDQUFDO0lBQ0QsaUJBQWlCO1FBQ2IsaUJBQWlCO1FBQ2pCLElBQUksSUFBSSxDQUFDLFNBQVMsRUFBRSxDQUFDO1lBQ2pCLE9BQU87UUFDWCxDQUFDO1FBQ0QsSUFBSSxDQUFDLFNBQVMsQ0FBQyxHQUFHLEVBQUU7WUFDaEIsTUFBTSxFQUFFLEdBQUcsSUFBSSxDQUFDLEtBQUssQ0FBQyxPQUFrQyxDQUFDO1lBQ3pELElBQUksQ0FBQyxFQUFFLEVBQUUsQ0FBQztnQkFDTixPQUFPO1lBQ1gsQ0FBQztZQUNELEVBQUUsQ0FBQyxTQUFTLEdBQUcsRUFBRSxDQUFDLFlBQVksQ0FBQztRQUNuQyxDQUFDLENBQUMsQ0FBQztJQUNQLENBQUM7SUFDRCxXQUFXO1FBQ1AsTUFBTSxFQUFFLEdBQUcsSUFBSSxDQUFDLEtBQUssQ0FBQyxPQUFrQyxDQUFDO1FBQ3pELElBQUksQ0FBQyxFQUFFLEVBQUUsQ0FBQztZQUNOLE9BQU87UUFDWCxDQUFDO1FBQ0QsOEJBQThCO1FBQzlCLElBQUksQ0FBQyxTQUFTLEdBQUcsRUFBRSxDQUFDLFlBQVksR0FBRyxFQUFFLENBQUMsU0FBUyxHQUFHLEVBQUUsQ0FBQyxZQUFZLElBQUksRUFBRSxDQUFDO0lBQzVFLENBQUM7SUFDRCxLQUFLLENBQUMsUUFBUTtRQUNWLE1BQU0sSUFBSSxHQUFHLElBQUksQ0FBQyxZQUFZLENBQUMsR0FBRyxDQUFDLENBQUMsQ0FBVSxFQUFFLEVBQUUsQ0FBQyxJQUFJLENBQUMsT0FBTyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsSUFBSSxDQUFDLElBQUksQ0FBQyxDQUFDO1FBQy9FLE1BQU0sSUFBSSxDQUFDLGNBQWMsQ0FBQyxJQUFJLENBQUMsQ0FBQztJQUNwQyxDQUFDO0lBQ0QsU0FBUztRQUNMLElBQUksQ0FBQyxJQUFJLEdBQUcsRUFBRSxDQUFDO1FBQ2YsSUFBSSxDQUFDLFNBQVMsR0FBRyxLQUFLLENBQUM7SUFDM0IsQ0FBQztJQUNELEtBQUssQ0FBQyxXQUFXLENBQVksQ0FBVTtRQUNuQyxNQUFNLElBQUksQ0FBQyxjQUFjLENBQUMsSUFBSSxDQUFDLEdBQUcsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDO0lBQzNDLENBQUM7Q0FDSixDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiLyoqIOaXpeW/l+mdouadv++8muagvOW8j+WMli/ov4fmu6Qv6Ieq5Yqo5rua5YqoL+WkjeWIti/muIXnqbrjgIIgKi9cbmV4cG9ydCBkZWZhdWx0IHtcbiAgICBsb2dDbGFzcyh0aGlzOiBhbnksIGw6IHVua25vd24pOiBzdHJpbmcge1xuICAgICAgICBjb25zdCBtID0gbCAmJiB0eXBlb2YgbCA9PT0gJ29iamVjdCcgPyAobCBhcyBhbnkpIDogbnVsbDtcbiAgICAgICAgcmV0dXJuIG0gJiYgbS5ldnQgPT09ICdjb25zb2xlJyA/IGBsdi0ke20ubGV2ZWx9YCA6ICcnO1xuICAgIH0sXG4gICAgbG9nVGV4dCh0aGlzOiBhbnksIGw6IHVua25vd24pOiBzdHJpbmcge1xuICAgICAgICBjb25zdCBtID0gbCAmJiB0eXBlb2YgbCA9PT0gJ29iamVjdCcgPyAobCBhcyBhbnkpIDogbnVsbDtcbiAgICAgICAgaWYgKG0gJiYgbS5ldnQgPT09ICdjb25zb2xlJykge1xuICAgICAgICAgICAgcmV0dXJuIG0udGV4d
|