bilitoolkit-ui 0.0.6 → 0.0.7

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/dist/index.js CHANGED
@@ -1,17 +1,17 @@
1
- import { reactive as fe, watch as Z, ref as y, onMounted as te, onUnmounted as ue, computed as k, toValue as Y, shallowRef as lt, useTemplateRef as le, defineComponent as S, openBlock as i, createElementBlock as g, createElementVNode as c, toDisplayString as A, renderSlot as I, normalizeClass as W, createVNode as f, createCommentVNode as Q, useModel as Ae, createBlock as b, withCtx as d, unref as B, createTextVNode as M, mergeModels as J, withDirectives as F, Fragment as O, renderList as ee, normalizeStyle as Se, toRaw as st, render as ce, vShow as ie, createApp as De, useCssVars as nt, mergeProps as G, normalizeProps as at, guardReactiveProps as ot, withModifiers as he, nextTick as He, useSlots as Ve, useAttrs as ct } from "vue";
2
- import { defineStore as $e, storeToRefs as it } from "pinia";
3
- import { defaultAppThemeState as Te, APP_THEME_STATE as ze, UI_DB_KEYS as Ie } from "./common.js";
4
- import { setupToolkitApi as rt } from "bilitoolkit-runtime";
5
- import Le from "lodash-es/cloneDeep";
1
+ import { reactive as Ce, watch as le, ref as z, onMounted as ne, onUnmounted as ce, computed as C, toValue as te, shallowRef as Ct, useTemplateRef as K, defineComponent as B, openBlock as r, createElementBlock as f, createElementVNode as a, toDisplayString as m, renderSlot as I, normalizeClass as se, createVNode as d, createCommentVNode as $, useModel as he, createBlock as A, withCtx as u, unref as h, createTextVNode as k, mergeModels as J, withDirectives as W, Fragment as R, renderList as O, normalizeStyle as xe, toRaw as xt, render as me, vShow as ge, createApp as $e, useCssVars as Et, mergeProps as G, normalizeProps as Bt, guardReactiveProps as St, withModifiers as Ee, nextTick as we, useSlots as qe, useAttrs as $t, h as zt } from "vue";
2
+ import { defineStore as Oe, storeToRefs as Dt } from "pinia";
3
+ import { defaultAppThemeState as je, APP_THEME_STATE as Qe, UI_DB_KEYS as He } from "./common.js";
4
+ import { setupToolkitApi as Pt } from "bilitoolkit-runtime";
5
+ import Ne from "lodash-es/cloneDeep";
6
6
  import "element-plus/theme-chalk/dark/css-vars.css";
7
7
  import "element-plus/theme-chalk/el-loading.css";
8
8
  import "element-plus/theme-chalk/el-message.css";
9
9
  import "element-plus/theme-chalk/el-message-box.css";
10
- import { ElMessageBox as ut, ElMessage as dt } from "element-plus";
11
- import { BiliApiBusinessError as vt } from "@ybgnb/bili-api";
12
- import { isCanceledError as pt, getErrorMessage as gt, createAbortError as mt, serializeError as ft, getFormattedDateTime as ht } from "@ybgnb/utils";
13
- import { AppError as _t } from "bilitoolkit-types";
14
- import { ElDialog as we, ElButton as se, ElLoadingDirective as ye, ElRow as At, ElCol as wt, ElInput as yt, ElProgress as bt, ElIcon as xt, ElTooltip as Re, ElPopconfirm as Ct, ElMenuItem as Ue, ElSubMenu as Et, ElMenu as Bt, ElPopover as kt, ElDropdown as St, ElDropdownMenu as zt, ElDropdownItem as It, ElTable as Pt, ElTableColumn as Qt, ElEmpty as Mt, ElPagination as Dt } from "element-plus/es";
10
+ import { ElMessageBox as It, ElMessage as Vt } from "element-plus";
11
+ import { BiliApiBusinessError as Mt, audioQualityMap as Qt, videoQualityMap as Ht, videoCodecIdMap as Tt, parseVideoZoneV1 as Lt, parseVideoZoneV2 as Rt } from "@ybgnb/bili-api";
12
+ import { isCanceledError as Ut, getErrorMessage as Ft, createAbortError as Ze, serializeError as qt, getFormattedDateTime as Ot, inArray as jt, formatFileSizeFromKB as Nt, formatDuration as ze, formatTime as fe } from "@ybgnb/utils";
13
+ import { AppError as Zt, downloadTaskStatusMap as We, downloadResourceNameMap as Wt } from "bilitoolkit-types";
14
+ import { ElDialog as re, ElButton as Z, ElLoadingDirective as De, ElRow as Gt, ElCol as Jt, ElInput as Ge, ElProgress as Je, ElIcon as Pe, ElTooltip as Ke, ElPopconfirm as Kt, ElMenuItem as Ye, ElSubMenu as Yt, ElMenu as Xt, ElPopover as es, ElDropdown as ts, ElDropdownMenu as ss, ElDropdownItem as ls, ElTable as ns, ElTableColumn as as, ElEmpty as Xe, ElPagination as et, ElCheckbox as os, ElTag as tt, ElText as is, ElImage as st, ElDescriptions as cs, ElDescriptionsItem as rs, ElRadioGroup as us, ElRadioButton as ds } from "element-plus/es";
15
15
  import "element-plus/es/components/base/style/css";
16
16
  import "element-plus/es/components/dialog/style/css";
17
17
  import "element-plus/es/components/button/style/css";
@@ -34,151 +34,159 @@ import "element-plus/es/components/pagination/style/css";
34
34
  import "element-plus/es/components/table/style/css";
35
35
  import "element-plus/es/components/empty/style/css";
36
36
  import "element-plus/es/components/table-column/style/css";
37
- const R = rt();
38
- var z = (e, n, t, l = "srgb", a) => `color-mix(in ${l}, ${e} ${t}%, ${n} ${100 - t}%)`, qe = (e) => {
39
- let n = parseInt(e.slice(1, 3), 16), t = parseInt(e.slice(3, 5), 16), l = parseInt(e.slice(5, 7), 16);
40
- return { r: n, g: t, b: l };
41
- }, Ht = (e, n) => {
37
+ import "element-plus/es/components/checkbox/style/css";
38
+ import "element-plus/es/components/descriptions/style/css";
39
+ import "element-plus/es/components/descriptions-item/style/css";
40
+ import "element-plus/es/components/tag/style/css";
41
+ import "element-plus/es/components/image/style/css";
42
+ import "element-plus/es/components/text/style/css";
43
+ import "element-plus/es/components/radio-group/style/css";
44
+ import "element-plus/es/components/radio-button/style/css";
45
+ const H = Pt();
46
+ var T = (e, n, s, t = "srgb", i) => `color-mix(in ${t}, ${e} ${s}%, ${n} ${100 - s}%)`, lt = (e) => {
47
+ let n = parseInt(e.slice(1, 3), 16), s = parseInt(e.slice(3, 5), 16), t = parseInt(e.slice(5, 7), 16);
48
+ return { r: n, g: s, b: t };
49
+ }, vs = (e, n) => {
42
50
  document.documentElement.style.setProperty(e, n);
43
51
  };
44
- const Pe = "#ffffff", Qe = "#000000", ge = (e, n, t) => {
45
- const { r: l, g: a, b: s } = qe(e);
52
+ const Te = "#ffffff", Le = "#000000", Ae = (e, n, s) => {
53
+ const { r: t, g: i, b: l } = lt(e);
46
54
  for (let o = 2; o < 100; ) {
47
- const r = o / 100;
48
- n[`${t}-transparent-${o}`] = `rgba(${l}, ${a}, ${s}, ${r})`, o >= 10 ? o += 5 : o++;
55
+ const c = o / 100;
56
+ n[`${s}-transparent-${o}`] = `rgba(${t}, ${i}, ${l}, ${c})`, o >= 10 ? o += 5 : o++;
49
57
  }
50
- }, be = (e, n, t) => {
51
- const l = {};
52
- t ? document.documentElement.classList.add("dark") : document.documentElement.classList.remove("dark");
53
- const a = l["--app-color-foreground"] = t ? Pe : Qe, s = l["--app-color-background"] = t ? Qe : Pe;
54
- l["--app-primary-color"] = e, l["--el-color-primary"] = e, l["--el-color-primary-light-1"] = z(e, s, 90), l["--el-color-primary-light-2"] = z(e, s, 80), l["--el-color-primary-light-3"] = z(e, s, 70), l["--el-color-primary-light-4"] = z(e, s, 60), l["--el-color-primary-light-5"] = z(e, s, 50), l["--el-color-primary-light-6"] = z(e, s, 40), l["--el-color-primary-light-7"] = z(e, s, 30), l["--el-color-primary-light-8"] = z(e, s, 20), l["--el-color-primary-light-9"] = z(e, s, 12), l["--el-color-primary-dark-1"] = z(e, a, 90), l["--el-color-primary-dark-2"] = z(e, a, 80), l["--el-color-primary-dark-3"] = z(e, a, 70), l["--el-color-primary-dark-4"] = z(e, a, 60), l["--el-color-primary-dark-5"] = z(e, a, 50), l["--el-color-primary-dark-6"] = z(e, a, 40), l["--el-color-primary-dark-7"] = z(e, a, 30), l["--el-color-primary-dark-8"] = z(e, a, 20), l["--el-color-primary-dark-9"] = z(e, a, 12);
55
- const { r: o, g: r, b: u } = qe(e);
56
- l["--app-bg-color-overlay"] = `rgba(${o}, ${r}, ${u}, 0.05)`, l["--app-bg-color-overlay-hover"] = `rgba(${o}, ${r}, ${u}, 0.15)`, l["--app-bg-color-page"] = t ? "var(--el-fill-color-blank)" : "transparent", l["--app-bg-color-menus"] = "var(--app-bg-color-page)", t ? l["--app-text-shadow"] = " 0px 1px 2px rgba(255, 255, 255, .4)" : l["--app-text-shadow"] = " 0px 1px 2px rgba(0, 0, 0, .4)", ge(e, l, "--app-color-primary"), ge(s, l, "--app-color-background"), ge(a, l, "--app-color-foreground");
57
- for (const v in l)
58
- Ht(v, l[v]);
59
- }, xe = async (e) => {
60
- const n = e ?? (await R.system.getAppThemeState()).themeMode;
61
- return n === "system" ? await R.system.shouldUseDarkColors() : n === "dark";
62
- }, re = async (e) => {
63
- const n = e ?? await R.system.getAppThemeState(), t = await xe(n.themeMode);
64
- be(n.primaryColor, n.themeMode, t);
65
- }, Ks = async () => {
66
- await re(void 0);
67
- }, Ys = async () => {
68
- await re(Te);
69
- }, Xs = async (e) => {
70
- const t = de().state, l = await xe(e);
71
- t.dark = l, t.themeMode = e, be(t.primaryColor, e, l);
72
- }, en = async (e) => {
73
- const t = de().state, l = await xe(t.themeMode);
74
- t.primaryColor = e, be(e, t.themeMode, l);
75
- }, de = $e(
58
+ }, Ie = (e, n, s) => {
59
+ const t = {};
60
+ s ? document.documentElement.classList.add("dark") : document.documentElement.classList.remove("dark");
61
+ const i = t["--app-color-foreground"] = s ? Te : Le, l = t["--app-color-background"] = s ? Le : Te;
62
+ t["--app-primary-color"] = e, t["--el-color-primary"] = e, t["--el-color-primary-light-1"] = T(e, l, 90), t["--el-color-primary-light-2"] = T(e, l, 80), t["--el-color-primary-light-3"] = T(e, l, 70), t["--el-color-primary-light-4"] = T(e, l, 60), t["--el-color-primary-light-5"] = T(e, l, 50), t["--el-color-primary-light-6"] = T(e, l, 40), t["--el-color-primary-light-7"] = T(e, l, 30), t["--el-color-primary-light-8"] = T(e, l, 20), t["--el-color-primary-light-9"] = T(e, l, 12), t["--el-color-primary-dark-1"] = T(e, i, 90), t["--el-color-primary-dark-2"] = T(e, i, 80), t["--el-color-primary-dark-3"] = T(e, i, 70), t["--el-color-primary-dark-4"] = T(e, i, 60), t["--el-color-primary-dark-5"] = T(e, i, 50), t["--el-color-primary-dark-6"] = T(e, i, 40), t["--el-color-primary-dark-7"] = T(e, i, 30), t["--el-color-primary-dark-8"] = T(e, i, 20), t["--el-color-primary-dark-9"] = T(e, i, 12);
63
+ const { r: o, g: c, b: v } = lt(e);
64
+ t["--app-bg-color-overlay"] = `rgba(${o}, ${c}, ${v}, 0.05)`, t["--app-bg-color-overlay-hover"] = `rgba(${o}, ${c}, ${v}, 0.15)`, t["--app-bg-color-page"] = s ? "var(--el-fill-color-blank)" : "transparent", t["--app-bg-color-menus"] = "var(--app-bg-color-page)", s ? t["--app-text-shadow"] = " 0px 1px 2px rgba(255, 255, 255, .4)" : t["--app-text-shadow"] = " 0px 1px 2px rgba(0, 0, 0, .4)", Ae(e, t, "--app-color-primary"), Ae(l, t, "--app-color-background"), Ae(i, t, "--app-color-foreground");
65
+ for (const p in t)
66
+ vs(p, t[p]);
67
+ }, Ve = async (e) => {
68
+ const n = e ?? (await H.system.getAppThemeState()).themeMode;
69
+ return n === "system" ? await H.system.shouldUseDarkColors() : n === "dark";
70
+ }, _e = async (e) => {
71
+ const n = e ?? await H.system.getAppThemeState(), s = await Ve(n.themeMode);
72
+ Ie(n.primaryColor, n.themeMode, s);
73
+ }, ao = async () => {
74
+ await _e(void 0);
75
+ }, oo = async () => {
76
+ await _e(je);
77
+ }, io = async (e) => {
78
+ const s = ye().state, t = await Ve(e);
79
+ s.dark = t, s.themeMode = e, Ie(s.primaryColor, e, t);
80
+ }, co = async (e) => {
81
+ const s = ye().state, t = await Ve(s.themeMode);
82
+ s.primaryColor = e, Ie(e, s.themeMode, t);
83
+ }, ye = Oe(
76
84
  "biliToolkit-ui-theme",
77
85
  () => {
78
- const e = fe(Te);
86
+ const e = Ce(je);
79
87
  let n = !1;
80
- const t = async (s, o) => {
81
- const r = await window.toolkitApi.system.getAppThemeState();
82
- Object.assign(e, r), await re(r), s && o && (n = !0, Z(
88
+ const s = async (l, o) => {
89
+ const c = await window.toolkitApi.system.getAppThemeState();
90
+ Object.assign(e, c), await _e(c), l && o && (n = !0, le(
83
91
  () => e,
84
- (u) => {
85
- const v = Le(u);
86
- window.toolkitApi.db.write(s, v).then(async () => {
87
- await window.toolkitApi.event.emit(o, v);
92
+ (v) => {
93
+ const p = Ne(v);
94
+ window.toolkitApi.db.write(l, p).then(async () => {
95
+ await window.toolkitApi.event.emit(o, p);
88
96
  });
89
97
  },
90
98
  { deep: !0 }
91
99
  ));
92
100
  };
93
- window.toolkitApi.event.onUpdateAppTheme((s) => {
94
- n || Object.assign(e, s), re(s).then();
101
+ window.toolkitApi.event.onUpdateAppTheme((l) => {
102
+ n || Object.assign(e, l), _e(l).then();
95
103
  }).catch();
96
- const l = (s) => (e.primaryColor = s, e.primaryColor);
97
- return { init: t, state: e, switchThemeColor: () => {
98
- e.primaryColorIndex = (e.primaryColorIndex + 1) % ze.primaryColors.length;
99
- const s = ze.primaryColors[e.primaryColorIndex];
100
- return l(s);
101
- }, setPrimaryColor: l };
104
+ const t = (l) => (e.primaryColor = l, e.primaryColor);
105
+ return { init: s, state: e, switchThemeColor: () => {
106
+ e.primaryColorIndex = (e.primaryColorIndex + 1) % Qe.primaryColors.length;
107
+ const l = Qe.primaryColors[e.primaryColorIndex];
108
+ return t(l);
109
+ }, setPrimaryColor: t };
102
110
  },
103
111
  {
104
112
  // 自己实现配置的持久化
105
113
  persist: !1
106
114
  // eslint-disable-next-line @typescript-eslint/no-explicit-any
107
115
  }
108
- ), je = $e("biliToolkit-ui-selected-user", () => {
109
- const e = y(null), n = async () => {
116
+ ), nt = Oe("biliToolkit-ui-selected-user", () => {
117
+ const e = z(null), n = async () => {
110
118
  try {
111
- e.value = (await window.toolkitApi.db.init(Ie.UI_SELECTED_USER))?.user ?? null;
119
+ e.value = (await window.toolkitApi.db.init(He.UI_SELECTED_USER))?.user ?? null;
112
120
  } catch {
113
121
  }
114
122
  };
115
- return Z(
123
+ return le(
116
124
  () => e.value,
117
- async (s) => {
118
- let o = s != null ? Le(s) : null;
119
- await window.toolkitApi.db.write(Ie.UI_SELECTED_USER, {
125
+ async (l) => {
126
+ let o = l != null ? Ne(l) : null;
127
+ await window.toolkitApi.db.write(He.UI_SELECTED_USER, {
120
128
  user: o
121
129
  }), o && await window.toolkitApi.user.switchCurrUser(o);
122
130
  },
123
131
  { deep: !0 }
124
132
  ), { init: n, user: e, deleteUser: () => {
125
133
  e.value = null;
126
- }, setUser: (s) => {
127
- e.value = s;
134
+ }, setUser: (l) => {
135
+ e.value = l;
128
136
  }, assertLoggedIn: () => {
129
137
  if (e.value == null)
130
138
  throw new Error("请先登录");
131
139
  } };
132
- }), tn = async (e, n) => (Promise.resolve({ }), Promise.resolve({ }), Promise.resolve({ }), await de(e).init(n?.appThemeDBName, n?.appThemeUpdateEvent), await je(e).init(), {
133
- install(t) {
140
+ }), ro = async (e, n) => (Promise.resolve({ }), Promise.resolve({ }), Promise.resolve({ }), await ye(e).init(n?.appThemeDBName, n?.appThemeUpdateEvent), await nt(e).init(), {
141
+ install(s) {
134
142
  }
135
143
  });
136
- function Vt(e) {
137
- R.system.saveLog({
144
+ function ps(e) {
145
+ H.system.saveLog({
138
146
  level: "error",
139
- data: [JSON.stringify(ft(e))]
147
+ data: [JSON.stringify(qt(e))]
140
148
  }).catch();
141
149
  }
142
- function Me(e, n) {
150
+ function Re(e, n) {
143
151
  return e == null ? !1 : e instanceof n || typeof e == "object" && "name" in e && e.name === n.name;
144
152
  }
145
- const ln = (e) => {
146
- if (!pt(e))
153
+ const uo = (e) => {
154
+ if (!Ut(e))
147
155
  if (e) {
148
156
  console.error(e);
149
157
  const n = () => {
150
- R && R.system && Vt(e);
158
+ H && H.system && ps(e);
151
159
  };
152
- Me(e, _t) ? X(`${e.message}`) : Me(e, vt) ? (X(`${e.message} (${e.responseCode})`), n()) : (X(gt(e)), n());
160
+ Re(e, Zt) ? ie(`${e.message}`) : Re(e, Mt) ? (ie(`${e.message} (${e.responseCode})`), n()) : (ie(Ft(e)), n());
153
161
  } else
154
- Ce({
162
+ Y({
155
163
  message: "未知错误",
156
164
  type: "error"
157
165
  });
158
166
  };
159
- function Ce(e) {
167
+ function Y(e) {
160
168
  const n = {
161
169
  message: "",
162
170
  type: "success",
163
171
  duration: 3e3
164
172
  };
165
- typeof e == "string" ? n.message = e : Object.assign(n, e), dt(n);
173
+ typeof e == "string" ? n.message = e : Object.assign(n, e), Vt(n);
166
174
  }
167
- function X(e) {
168
- Ce({
175
+ function ie(e) {
176
+ Y({
169
177
  message: e,
170
178
  type: "error"
171
179
  });
172
180
  }
173
- function sn(e) {
174
- Ce({
181
+ function vo(e) {
182
+ Y({
175
183
  message: e,
176
184
  type: "warning"
177
185
  });
178
186
  }
179
- function $t(e, n = "提示", t = {}) {
180
- return new Promise((l, a) => {
181
- ut.confirm(
187
+ function ms(e, n = "提示", s = {}) {
188
+ return new Promise((t, i) => {
189
+ It.confirm(
182
190
  e,
183
191
  n,
184
192
  Object.assign(
@@ -189,162 +197,169 @@ function $t(e, n = "提示", t = {}) {
189
197
  confirmButtonText: "确定",
190
198
  type: "warning"
191
199
  },
192
- t
200
+ s
193
201
  )
194
202
  ).then(() => {
195
- l();
203
+ t();
196
204
  }).catch(() => {
197
- a(mt());
205
+ i(Ze());
198
206
  });
199
207
  });
200
208
  }
201
- async function nn(e) {
202
- for (const [n, t, l] of e)
203
- await $t(n, t, l);
209
+ async function po(e) {
210
+ for (const [n, s, t] of e)
211
+ await ms(n, s, t);
204
212
  }
205
- const Ee = (e) => {
206
- const n = e?.loading ?? y(!1);
207
- let t = null;
208
- const l = y(!1);
213
+ const Me = (e) => {
214
+ const n = e?.loading ?? z(!1);
215
+ let s = null;
216
+ const t = z(!1);
209
217
  return {
210
218
  loading: n,
211
- hasLoaded: l,
212
- loadingData: (s) => async (...o) => (e?.singleFlight && n.value && t || (t = (async () => {
219
+ hasLoaded: t,
220
+ loadingData: (l) => async (...o) => (e?.singleFlight && n.value && s || (s = (async () => {
213
221
  n.value = !0;
214
222
  try {
215
- return typeof s == "function" ? await s(...o) : await s;
223
+ return typeof l == "function" ? await l(...o) : await l;
216
224
  } finally {
217
- n.value = !1, l.value = !0, t = null;
225
+ n.value = !1, t.value = !0, s = null;
218
226
  }
219
- })()), t)
227
+ })()), s)
220
228
  };
221
- }, an = (e, n = 3e3) => {
222
- const { loading: t, loadingData: l } = Ee({ singleFlight: !0 }), a = l(e);
223
- let s = null;
224
- return te(async () => {
225
- s = setInterval(a, n);
226
- }), ue(() => {
227
- s && (clearInterval(s), s = null);
228
- }), { loading: t, refreshTableData: a, reset: () => {
229
- s && (clearInterval(s), s = null), a(), s = setInterval(a, n);
229
+ }, mo = (e, n = 3e3) => {
230
+ const { loading: s, loadingData: t } = Me({ singleFlight: !0 }), i = t(e);
231
+ let l = null;
232
+ return ne(async () => {
233
+ l = setInterval(i, n);
234
+ }), ce(() => {
235
+ l && (clearInterval(l), l = null);
236
+ }), { loading: s, refreshTableData: i, reset: () => {
237
+ l && (clearInterval(l), l = null), i(), l = setInterval(i, n);
230
238
  } };
231
- }, Tt = (e) => {
232
- const { fetchPage: n, pageParams: t, queryParams: l, autoLoad: a, onLoaded: s } = e, o = k(() => {
233
- const m = Y(t);
239
+ }, at = (e) => {
240
+ const { fetchPage: n, pageParams: s, queryParams: t, autoLoad: i, onLoaded: l } = e, o = C(() => {
241
+ const D = te(s);
234
242
  return {
235
- pageNum: m?.pageNum ?? 1,
236
- pageSize: m?.pageSize ?? 20,
243
+ pageNum: D?.pageNum ?? 1,
244
+ pageSize: D?.pageSize ?? 20,
237
245
  totalPages: 0,
238
246
  total: 0
239
247
  };
240
- }), r = y(o.value), u = y([]), { loading: v, loadingData: p } = Ee(), h = p(async () => {
241
- const m = Y(l), E = {
242
- pageNum: r.value.pageNum,
243
- pageSize: r.value.pageSize
244
- }, { data: D, ...$ } = m ? await n(E, m) : await n(E);
245
- u.value = D, r.value = $, s?.();
246
- }), w = () => {
247
- const { pageSize: m, ...E } = o.value;
248
- Object.assign(r.value, E);
249
- }, C = async () => {
250
- w(), await h();
251
- }, _ = async () => {
252
- r.value.pageNum = 1, await h();
253
- }, P = async () => {
254
- await h();
248
+ }), c = z(o.value), v = z([]), { loading: p, loadingData: _ } = Me(), w = _(async () => {
249
+ const D = te(t), M = {
250
+ pageNum: c.value.pageNum,
251
+ pageSize: c.value.pageSize
252
+ }, { data: U, ...P } = D ? await n(M, D) : await n(M);
253
+ v.value = U, c.value = P, l?.();
254
+ }), g = () => {
255
+ const { pageSize: D, ...M } = o.value;
256
+ Object.assign(c.value, M);
257
+ }, b = async () => {
258
+ g(), await w();
259
+ }, x = async () => {
260
+ c.value.pageNum = 1, await w();
261
+ }, V = async () => {
262
+ await x();
263
+ }, E = async () => {
264
+ await w();
255
265
  };
256
- return a && te(async () => {
257
- await C();
266
+ return i && ne(async () => {
267
+ await b();
258
268
  }), {
259
- pageData: r,
260
- tableData: u,
261
- loading: v,
262
- refresh: h,
263
- resetAndRefresh: C,
264
- handleSizeChange: _,
265
- handleCurrPageChange: P
269
+ pageData: c,
270
+ tableData: v,
271
+ loading: p,
272
+ refresh: w,
273
+ resetAndRefresh: b,
274
+ resetPageAndRefresh: x,
275
+ handleSizeChange: V,
276
+ handleCurrPageChange: E
266
277
  };
267
- }, on = (e, n) => {
268
- const t = lt([]);
269
- function l(u) {
270
- return t.value.includes(u);
278
+ }, go = (e, n, s = []) => {
279
+ const t = Ct([...s]);
280
+ function i(g) {
281
+ return t.value.includes(n(g));
271
282
  }
272
- function a(u) {
273
- const v = t.value.indexOf(u);
274
- v > -1 ? t.value = t.value.splice(v, 1) : t.value = [...t.value, u];
283
+ function l(g) {
284
+ const b = n(g);
285
+ i(g) ? t.value = t.value.filter((x) => x !== b) : t.value = [...t.value, b];
275
286
  }
276
- const s = y(!1);
277
- Z(
278
- t,
279
- () => {
280
- const u = Y(e);
281
- s.value = u.length > 0 && u.every((v) => t.value.includes(n(v)));
282
- },
283
- { immediate: !0 }
284
- );
285
- function o() {
286
- if (s.value) {
287
- const u = Y(e).map((v) => n(v));
288
- t.value = u;
289
- } else
290
- t.value = [];
287
+ const o = C(() => {
288
+ const g = te(e);
289
+ return g.length > 0 && g.every((b) => t.value.includes(n(b)));
290
+ });
291
+ function c() {
292
+ o.value ? t.value = [] : t.value = te(e).map(n);
291
293
  }
292
- function r() {
293
- return Y(e).filter((u) => t.value.includes(n(u)));
294
+ function v() {
295
+ return te(e).filter((g) => t.value.includes(n(g)));
296
+ }
297
+ function p() {
298
+ const g = new Set(te(e).map(n));
299
+ t.value = t.value.filter((b) => g.has(b));
300
+ }
301
+ function _() {
302
+ t.value = [];
303
+ }
304
+ function w(g) {
305
+ t.value = [...g];
294
306
  }
295
307
  return {
296
308
  selectedIds: t,
297
- isSelected: l,
298
- toggleSelect: a,
299
- isAllSelected: s,
300
- toggleAll: o,
301
- getSelectedData: r
309
+ isSelected: i,
310
+ toggleSelect: l,
311
+ isAllSelected: o,
312
+ toggleAll: c,
313
+ getSelectedData: v,
314
+ cleanupSelected: p,
315
+ clearSelected: _,
316
+ select: w
302
317
  };
303
- }, Lt = (e) => {
304
- const n = le(e), t = y(0), l = () => {
305
- n.value?.clientHeight && (t.value = n.value.clientHeight);
318
+ }, gs = (e) => {
319
+ const n = K(e), s = z(0), t = () => {
320
+ n.value?.clientHeight && (s.value = n.value.clientHeight);
306
321
  };
307
- let a, s = 0;
308
- return te(() => {
309
- n.value && (l(), a = new ResizeObserver(() => {
310
- cancelAnimationFrame(s), s = requestAnimationFrame(l);
311
- }), a.observe(n.value));
312
- }), ue(() => {
313
- a?.disconnect(), cancelAnimationFrame(s);
322
+ let i, l = 0;
323
+ return ne(() => {
324
+ n.value && (t(), i = new ResizeObserver(() => {
325
+ cancelAnimationFrame(l), l = requestAnimationFrame(t);
326
+ }), i.observe(n.value));
327
+ }), ce(() => {
328
+ i?.disconnect(), cancelAnimationFrame(l);
314
329
  }), {
315
330
  elementRef: n,
316
- height: t,
317
- updateHeight: l
331
+ height: s,
332
+ updateHeight: t
318
333
  };
319
- }, Rt = { class: "setting-group" }, Ut = { class: "setting-group__name" }, qt = { class: "setting-group__list" }, cn = /* @__PURE__ */ S({
334
+ }, fs = { class: "setting-group" }, _s = { class: "setting-group__name" }, hs = { class: "setting-group__list" }, fo = /* @__PURE__ */ B({
320
335
  __name: "SettingGroup",
321
336
  props: {
322
337
  name: {}
323
338
  },
324
339
  setup(e) {
325
340
  const n = e;
326
- return (t, l) => (i(), g("div", Rt, [
327
- c("div", Ut, A(n.name), 1),
328
- c("div", qt, [
329
- I(t.$slots, "default")
341
+ return (s, t) => (r(), f("div", fs, [
342
+ a("div", _s, m(n.name), 1),
343
+ a("div", hs, [
344
+ I(s.$slots, "default")
330
345
  ])
331
346
  ]));
332
347
  }
333
- }), j = /* @__PURE__ */ S({
348
+ }), N = /* @__PURE__ */ B({
334
349
  __name: "AppIcon",
335
350
  props: {
336
351
  icon: {}
337
352
  },
338
353
  setup(e) {
339
- const n = e, t = de(), l = k(() => t.state.dark ? `ri-${n.icon}-fill` : `ri-${n.icon}-line`);
340
- return (a, s) => (i(), g("i", {
341
- class: W([l.value, "icon-font"])
354
+ const n = e, s = ye(), t = C(() => s.state.dark ? `ri-${n.icon}-fill` : `ri-${n.icon}-line`);
355
+ return (i, l) => (r(), f("i", {
356
+ class: se([t.value, "icon-font"])
342
357
  }, null, 2));
343
358
  }
344
- }), jt = { class: "setting-item" }, Ft = { class: "setting-item__content" }, Ot = { class: "setting-item__content__title" }, Nt = {
359
+ }), ws = { class: "setting-item" }, ys = { class: "setting-item__content" }, ks = { class: "setting-item__content__title" }, As = {
345
360
  key: 0,
346
361
  class: "setting-item__content__desc"
347
- }, Wt = { class: "setting-item__options" }, Gt = /* @__PURE__ */ S({
362
+ }, bs = { class: "setting-item__options" }, Cs = /* @__PURE__ */ B({
348
363
  __name: "SettingItem",
349
364
  props: {
350
365
  title: {},
@@ -352,41 +367,41 @@ const Ee = (e) => {
352
367
  iconClass: {}
353
368
  },
354
369
  setup(e) {
355
- const n = e, t = y("equalizer-2");
356
- return (l, a) => {
357
- const s = j;
358
- return i(), g("div", jt, [
359
- f(s, {
370
+ const n = e, s = z("equalizer-2");
371
+ return (t, i) => {
372
+ const l = N;
373
+ return r(), f("div", ws, [
374
+ d(l, {
360
375
  class: "setting-item__icon",
361
- icon: n.iconClass || t.value
376
+ icon: n.iconClass || s.value
362
377
  }, null, 8, ["icon"]),
363
- c("div", Ft, [
364
- c("div", Ot, A(n.title), 1),
365
- n.desc ? (i(), g("div", Nt, A(n.desc), 1)) : Q("", !0)
378
+ a("div", ys, [
379
+ a("div", ks, m(n.title), 1),
380
+ n.desc ? (r(), f("div", As, m(n.desc), 1)) : $("", !0)
366
381
  ]),
367
- c("div", Wt, [
368
- I(l.$slots, "default", {}, void 0, !0)
382
+ a("div", bs, [
383
+ I(t.$slots, "default", {}, void 0, !0)
369
384
  ])
370
385
  ]);
371
386
  };
372
387
  }
373
- }), U = (e, n) => {
374
- const t = e.__vccOpts || e;
375
- for (const [l, a] of n)
376
- t[l] = a;
377
- return t;
378
- }, rn = /* @__PURE__ */ U(Gt, [["__scopeId", "data-v-bb581bf5"]]);
379
- function Jt(e) {
380
- const n = y(e), t = y(null), l = (s) => {
381
- n.value = e, t.value = setInterval(() => {
382
- n.value > 1 ? n.value-- : (a(), s());
388
+ }), L = (e, n) => {
389
+ const s = e.__vccOpts || e;
390
+ for (const [t, i] of n)
391
+ s[t] = i;
392
+ return s;
393
+ }, _o = /* @__PURE__ */ L(Cs, [["__scopeId", "data-v-bb581bf5"]]);
394
+ function xs(e) {
395
+ const n = z(e), s = z(null), t = (l) => {
396
+ n.value = e, s.value = setInterval(() => {
397
+ n.value > 1 ? n.value-- : (i(), l());
383
398
  }, 1e3);
384
- }, a = () => {
385
- t.value && (clearInterval(t.value), t.value = null);
399
+ }, i = () => {
400
+ s.value && (clearInterval(s.value), s.value = null);
386
401
  };
387
- return ue(a), { countdown: n, start: l, stop: a };
402
+ return ce(i), { countdown: n, start: t, stop: i };
388
403
  }
389
- const Zt = { class: "dialog-footer" }, un = /* @__PURE__ */ S({
404
+ const Es = { class: "dialog-footer" }, ho = /* @__PURE__ */ B({
390
405
  __name: "CountdownDialog",
391
406
  props: /* @__PURE__ */ J({
392
407
  content: {},
@@ -400,21 +415,21 @@ const Zt = { class: "dialog-footer" }, un = /* @__PURE__ */ S({
400
415
  modelModifiers: {}
401
416
  }),
402
417
  emits: /* @__PURE__ */ J(["onConfirm", "onCancel"], ["update:modelValue"]),
403
- setup(e, { expose: n, emit: t }) {
404
- const l = e, a = Ae(e, "modelValue"), s = t, { countdown: o, start: r, stop: u } = Jt(l.countdown);
405
- let v = !1;
406
- const p = (_) => {
407
- v || (v = !0, u(), s(_ === "confirm" ? "onConfirm" : "onCancel", _), a.value = !1, v = !1);
408
- }, h = () => p("confirm"), w = () => p("cancel"), C = () => {
409
- a.value = !0, r(w);
418
+ setup(e, { expose: n, emit: s }) {
419
+ const t = e, i = he(e, "modelValue"), l = s, { countdown: o, start: c, stop: v } = xs(t.countdown);
420
+ let p = !1;
421
+ const _ = (x) => {
422
+ p || (p = !0, v(), l(x === "confirm" ? "onConfirm" : "onCancel", x), i.value = !1, p = !1);
423
+ }, w = () => _("confirm"), g = () => _("cancel"), b = () => {
424
+ i.value = !0, c(g);
410
425
  };
411
- return Z(a, (_, P) => {
412
- _ && !P && r(w);
413
- }), n({ show: C }), (_, P) => {
414
- const m = se, E = we;
415
- return i(), b(E, {
416
- modelValue: a.value,
417
- "onUpdate:modelValue": P[0] || (P[0] = (D) => a.value = D),
426
+ return le(i, (x, V) => {
427
+ x && !V && c(g);
428
+ }), n({ show: b }), (x, V) => {
429
+ const E = Z, D = re;
430
+ return r(), A(D, {
431
+ modelValue: i.value,
432
+ "onUpdate:modelValue": V[0] || (V[0] = (M) => i.value = M),
418
433
  title: e.title,
419
434
  width: e.width,
420
435
  "close-on-click-modal": !1,
@@ -422,35 +437,35 @@ const Zt = { class: "dialog-footer" }, un = /* @__PURE__ */ S({
422
437
  "show-close": !1,
423
438
  "append-to-body": !0
424
439
  }, {
425
- footer: d(() => [
426
- c("div", Zt, [
427
- f(m, { onClick: w }, {
428
- default: d(() => [
429
- M(A(e.cancelBtnText) + "(" + A(B(o)) + "s)", 1)
440
+ footer: u(() => [
441
+ a("div", Es, [
442
+ d(E, { onClick: g }, {
443
+ default: u(() => [
444
+ k(m(e.cancelBtnText) + "(" + m(h(o)) + "s)", 1)
430
445
  ]),
431
446
  _: 1
432
447
  }),
433
- f(m, {
448
+ d(E, {
434
449
  type: "primary",
435
- disabled: B(o) <= 0,
436
- onClick: h
450
+ disabled: h(o) <= 0,
451
+ onClick: w
437
452
  }, {
438
- default: d(() => [
439
- M(A(e.confirmBtnText), 1)
453
+ default: u(() => [
454
+ k(m(e.confirmBtnText), 1)
440
455
  ]),
441
456
  _: 1
442
457
  }, 8, ["disabled"])
443
458
  ])
444
459
  ]),
445
- default: d(() => [
446
- c("div", null, A(e.content), 1),
447
- c("div", null, A(B(o)) + "秒后自动取消", 1)
460
+ default: u(() => [
461
+ a("div", null, m(e.content), 1),
462
+ a("div", null, m(h(o)) + "秒后自动取消", 1)
448
463
  ]),
449
464
  _: 1
450
465
  }, 8, ["modelValue", "title", "width"]);
451
466
  };
452
467
  }
453
- }), Kt = { class: "select-dialog" }, Yt = ["onClick"], Xt = { class: "option-item-label" }, el = { key: 0 }, tl = { key: 1 }, ll = /* @__PURE__ */ S({
468
+ }), Bs = { class: "select-dialog" }, Ss = ["onClick"], $s = { class: "option-item-label" }, zs = { key: 0 }, Ds = { key: 1 }, Ps = /* @__PURE__ */ B({
454
469
  __name: "SelectDialog",
455
470
  props: /* @__PURE__ */ J({
456
471
  title: { default: "请选择" },
@@ -470,125 +485,125 @@ const Zt = { class: "dialog-footer" }, un = /* @__PURE__ */ S({
470
485
  }),
471
486
  emits: /* @__PURE__ */ J(["confirm"], ["update:modelValue"]),
472
487
  setup(e, { emit: n }) {
473
- const t = e, l = Ae(e, "modelValue"), a = fe([]), s = fe([]), o = y(0), r = le("listRef"), { loading: u, loadingData: v } = Ee(), p = y(!1), h = v(async (x) => {
474
- s.splice(0, s.length, ...t.defaultSelectedList);
475
- let H = !1;
476
- x(() => {
477
- H = !0;
488
+ const s = e, t = he(e, "modelValue"), i = Ce([]), l = Ce([]), o = z(0), c = K("listRef"), { loading: v, loadingData: p } = Me(), _ = z(!1), w = p(async (y) => {
489
+ l.splice(0, l.length, ...s.defaultSelectedList);
490
+ let S = !1;
491
+ y(() => {
492
+ S = !0;
478
493
  });
479
- const L = typeof t.options == "function" ? await t.options() : t.options;
480
- H || a.splice(0, a.length, ...L);
481
- }), w = () => {
482
- o.value = r.value?.clientWidth ?? 0, p.value = !0;
494
+ const F = typeof s.options == "function" ? await s.options() : s.options;
495
+ S || i.splice(0, i.length, ...F);
496
+ }), g = () => {
497
+ o.value = c.value?.clientWidth ?? 0, _.value = !0;
483
498
  };
484
- Z(
485
- l,
486
- async (x, H, L) => {
487
- if (!x) {
488
- p.value = !1;
499
+ le(
500
+ t,
501
+ async (y, S, F) => {
502
+ if (!y) {
503
+ _.value = !1;
489
504
  return;
490
505
  }
491
- await h(L);
506
+ await w(F);
492
507
  },
493
508
  { immediate: !0 }
494
509
  );
495
- const C = n, _ = () => {
496
- l.value = !1;
497
- }, P = () => {
498
- if (!s || s.length === 0) {
499
- X(t.noSelectionTip);
510
+ const b = n, x = () => {
511
+ t.value = !1;
512
+ }, V = () => {
513
+ if (!l || l.length === 0) {
514
+ ie(s.noSelectionTip);
500
515
  return;
501
516
  }
502
- C("confirm", st(s)), l.value = !1;
503
- }, m = k(() => t.showCurrentSelection && p.value && !u.value && s.length > 0), E = (x) => s.includes(x), D = (x) => {
504
- const H = s.indexOf(x);
505
- H > -1 ? s.splice(H, 1) : t.multiple ? s.push(x) : s.splice(0, s.length, x);
506
- }, $ = k(() => a.every((x) => s.includes(x))), V = () => {
507
- $.value ? s.splice(0, s.length) : s.splice(0, s.length, ...a);
517
+ b("confirm", xt(l)), t.value = !1;
518
+ }, E = C(() => s.showCurrentSelection && _.value && !v.value && l.length > 0), D = (y) => l.includes(y), M = (y) => {
519
+ const S = l.indexOf(y);
520
+ S > -1 ? l.splice(S, 1) : s.multiple ? l.push(y) : l.splice(0, l.length, y);
521
+ }, U = C(() => i.every((y) => l.includes(y))), P = () => {
522
+ U.value ? l.splice(0, l.length) : l.splice(0, l.length, ...i);
508
523
  };
509
- return (x, H) => {
510
- const L = se, ve = we, ke = ye;
511
- return i(), g("div", Kt, [
512
- f(ve, {
524
+ return (y, S) => {
525
+ const F = Z, X = re, ee = De;
526
+ return r(), f("div", Bs, [
527
+ d(X, {
513
528
  title: e.title,
514
- modelValue: l.value,
515
- "onUpdate:modelValue": H[0] || (H[0] = (T) => l.value = T),
529
+ modelValue: t.value,
530
+ "onUpdate:modelValue": S[0] || (S[0] = (q) => t.value = q),
516
531
  style: { width: "fit-content", "min-width": "300px", "max-width": "800px", "max-height": "88vh", overflow: "auto" },
517
532
  "close-on-click-modal": !1,
518
533
  "close-on-press-escape": !1,
519
534
  "show-close": !0,
520
535
  "align-center": "",
521
- onOpened: w
536
+ onOpened: g
522
537
  }, {
523
- footer: d(() => [
524
- e.multiple && e.canSelectAll ? (i(), g("span", {
538
+ footer: u(() => [
539
+ e.multiple && e.canSelectAll ? (r(), f("span", {
525
540
  key: 0,
526
- class: W(["select-all", $.value ? "selected" : ""]),
527
- onClick: V
528
- }, [...H[1] || (H[1] = [
529
- c("span", { class: "select-icon" }, null, -1),
530
- M("全选", -1)
531
- ])], 2)) : Q("", !0),
532
- f(L, { onClick: _ }, {
533
- default: d(() => [
534
- M(A(e.cancelText), 1)
541
+ class: se(["select-all", U.value ? "selected" : ""]),
542
+ onClick: P
543
+ }, [...S[1] || (S[1] = [
544
+ a("span", { class: "select-icon" }, null, -1),
545
+ k("全选", -1)
546
+ ])], 2)) : $("", !0),
547
+ d(F, { onClick: x }, {
548
+ default: u(() => [
549
+ k(m(e.cancelText), 1)
535
550
  ]),
536
551
  _: 1
537
552
  }),
538
- f(L, {
553
+ d(F, {
539
554
  type: "primary",
540
- onClick: P,
541
- disabled: B(u)
555
+ onClick: V,
556
+ disabled: h(v)
542
557
  }, {
543
- default: d(() => [
544
- M(A(e.confirmText), 1)
558
+ default: u(() => [
559
+ k(m(e.confirmText), 1)
545
560
  ]),
546
561
  _: 1
547
562
  }, 8, ["disabled"])
548
563
  ]),
549
- default: d(() => [
550
- F((i(), g("div", {
551
- class: W(["dialog-content", B(u) ? "loading" : ""])
564
+ default: u(() => [
565
+ W((r(), f("div", {
566
+ class: se(["dialog-content", h(v) ? "loading" : ""])
552
567
  }, [
553
- c("div", {
568
+ a("div", {
554
569
  ref_key: "listRef",
555
- ref: r,
570
+ ref: c,
556
571
  class: "option-list"
557
572
  }, [
558
- (i(!0), g(O, null, ee(a, (T) => (i(), g("div", {
559
- class: W(["option-item", E(T) ? "selected" : ""]),
560
- key: e.getDataId(T),
561
- onClick: (N) => D(T)
573
+ (r(!0), f(R, null, O(i, (q) => (r(), f("div", {
574
+ class: se(["option-item", D(q) ? "selected" : ""]),
575
+ key: e.getDataId(q),
576
+ onClick: (ue) => M(q)
562
577
  }, [
563
- I(x.$slots, "item", {}, () => [
564
- c("span", {
565
- class: W(["select-icon", e.multiple ? "checkbox" : "radio"])
578
+ I(y.$slots, "item", {}, () => [
579
+ a("span", {
580
+ class: se(["select-icon", e.multiple ? "checkbox" : "radio"])
566
581
  }, null, 2),
567
- c("span", Xt, [
568
- I(x.$slots, "item-label", {}, () => [
569
- M(A(e.getDataLabel(T)), 1)
582
+ a("span", $s, [
583
+ I(y.$slots, "item-label", {}, () => [
584
+ k(m(e.getDataLabel(q)), 1)
570
585
  ], !0)
571
586
  ])
572
587
  ], !0)
573
- ], 10, Yt))), 128))
588
+ ], 10, Ss))), 128))
574
589
  ], 512),
575
- m.value ? (i(), g("div", {
590
+ E.value ? (r(), f("div", {
576
591
  key: 0,
577
592
  class: "current-selection",
578
- style: Se({ width: `${o.value}px` })
593
+ style: xe({ width: `${o.value}px` })
579
594
  }, [
580
- e.multiple ? (i(), g("span", el, "已选择(" + A(s.length) + "):", 1)) : (i(), g("span", tl, "已选择:")),
581
- c("div", {
595
+ e.multiple ? (r(), f("span", zs, "已选择(" + m(l.length) + "):", 1)) : (r(), f("span", Ds, "已选择:")),
596
+ a("div", {
582
597
  class: "current-selection-list",
583
- style: Se({ display: e.multiple ? "flex" : "contents" })
598
+ style: xe({ display: e.multiple ? "flex" : "contents" })
584
599
  }, [
585
- (i(!0), g(O, null, ee(s, (T) => (i(), g("span", {
586
- key: e.getDataId(T)
587
- }, A(e.getDataLabel(T)), 1))), 128))
600
+ (r(!0), f(R, null, O(l, (q) => (r(), f("span", {
601
+ key: e.getDataId(q)
602
+ }, m(e.getDataLabel(q)), 1))), 128))
588
603
  ], 4)
589
- ], 4)) : Q("", !0)
604
+ ], 4)) : $("", !0)
590
605
  ], 2)), [
591
- [ke, B(u)]
606
+ [ee, h(v)]
592
607
  ])
593
608
  ]),
594
609
  _: 3
@@ -596,25 +611,25 @@ const Zt = { class: "dialog-footer" }, un = /* @__PURE__ */ S({
596
611
  ]);
597
612
  };
598
613
  }
599
- }), sl = /* @__PURE__ */ U(ll, [["__scopeId", "data-v-2ad04bd4"]]), dn = (e) => new Promise((n) => {
600
- let t = document.createElement("div");
601
- const l = (s) => {
602
- n(s), t && (ce(null, t), t.remove(), t = null);
603
- }, a = f(sl, {
614
+ }), Is = /* @__PURE__ */ L(Ps, [["__scopeId", "data-v-2ad04bd4"]]), wo = (e) => new Promise((n) => {
615
+ let s = document.createElement("div");
616
+ const t = (l) => {
617
+ n(l), s && (me(null, s), s.remove(), s = null);
618
+ }, i = d(Is, {
604
619
  ...e,
605
620
  modelValue: !0,
606
- "onUpdate:modelValue": (s) => {
607
- s || l();
621
+ "onUpdate:modelValue": (l) => {
622
+ l || t();
608
623
  },
609
- onConfirm: (s) => {
610
- l(s);
624
+ onConfirm: (l) => {
625
+ t(l);
611
626
  }
612
627
  });
613
- document.body.appendChild(t), ce(a, t);
614
- }), nl = { class: "dialog-content" }, al = { class: "header" }, ol = {
628
+ document.body.appendChild(s), me(i, s);
629
+ }), Vs = { class: "dialog-content" }, Ms = { class: "header" }, Qs = {
615
630
  key: 0,
616
631
  class: "total-desc"
617
- }, cl = { class: "page-size-desc" }, il = { class: "range-desc" }, rl = /* @__PURE__ */ S({
632
+ }, Hs = { class: "page-size-desc" }, Ts = { class: "range-desc" }, Ls = /* @__PURE__ */ B({
618
633
  __name: "PageRangeDialog",
619
634
  props: /* @__PURE__ */ J({
620
635
  title: { default: "请选择页码范围" },
@@ -631,91 +646,91 @@ const Zt = { class: "dialog-footer" }, un = /* @__PURE__ */ S({
631
646
  }),
632
647
  emits: /* @__PURE__ */ J(["confirm"], ["update:modelValue"]),
633
648
  setup(e, { emit: n }) {
634
- const t = e, l = Ae(e, "modelValue"), a = k(() => t.total != null && t.maxPage != null ? Math.min(t.maxPage, Math.ceil(t.total / t.pageSize)) : t.total != null ? Math.ceil(t.total / t.pageSize) : t.maxPage), s = y(1), o = y(1), r = k(() => `共有 ${t.total} 条数据`), u = k(() => `每页可获取 ${t.pageSize} 条数据`), v = k(() => {
635
- if (t.total != null) {
636
- const C = t.pageSize - Math.max(o.value * t.pageSize - t.total, 0);
637
- return `共选择 ${(o.value - s.value) * t.pageSize + C} 条数据`;
649
+ const s = e, t = he(e, "modelValue"), i = C(() => s.total != null && s.maxPage != null ? Math.min(s.maxPage, Math.ceil(s.total / s.pageSize)) : s.total != null ? Math.ceil(s.total / s.pageSize) : s.maxPage), l = z(1), o = z(1), c = C(() => `共有 ${s.total} 条数据`), v = C(() => `每页可获取 ${s.pageSize} 条数据`), p = C(() => {
650
+ if (s.total != null) {
651
+ const b = s.pageSize - Math.max(o.value * s.pageSize - s.total, 0);
652
+ return `共选择 ${(o.value - l.value) * s.pageSize + b} 条数据`;
638
653
  } else
639
- return `共选择 ${(o.value + 1 - s.value) * t.pageSize} 条数据`;
654
+ return `共选择 ${(o.value + 1 - l.value) * s.pageSize} 条数据`;
640
655
  });
641
- Z(
642
- l,
643
- async (C) => {
644
- C && (s.value = t.defaultRange[0], o.value = t.defaultRange[1]);
656
+ le(
657
+ t,
658
+ async (b) => {
659
+ b && (l.value = s.defaultRange[0], o.value = s.defaultRange[1]);
645
660
  },
646
661
  { immediate: !0 }
647
662
  );
648
- const p = n, h = () => {
649
- l.value = !1;
650
- }, w = () => {
651
- p("confirm", [s.value, o.value]), l.value = !1;
663
+ const _ = n, w = () => {
664
+ t.value = !1;
665
+ }, g = () => {
666
+ _("confirm", [l.value, o.value]), t.value = !1;
652
667
  };
653
- return (C, _) => {
654
- const P = yt, m = wt, E = At, D = se, $ = we;
655
- return i(), b($, {
668
+ return (b, x) => {
669
+ const V = Ge, E = Jt, D = Gt, M = Z, U = re;
670
+ return r(), A(U, {
656
671
  title: e.title,
657
- modelValue: l.value,
658
- "onUpdate:modelValue": _[2] || (_[2] = (V) => l.value = V),
672
+ modelValue: t.value,
673
+ "onUpdate:modelValue": x[2] || (x[2] = (P) => t.value = P),
659
674
  width: "200px",
660
675
  "close-on-click-modal": !1,
661
676
  "close-on-press-escape": !1,
662
677
  "show-close": !0,
663
678
  "align-center": ""
664
679
  }, {
665
- footer: d(() => [
666
- f(D, { onClick: h }, {
667
- default: d(() => [
668
- M(A(e.cancelText), 1)
680
+ footer: u(() => [
681
+ d(M, { onClick: w }, {
682
+ default: u(() => [
683
+ k(m(e.cancelText), 1)
669
684
  ]),
670
685
  _: 1
671
686
  }),
672
- f(D, {
687
+ d(M, {
673
688
  type: "primary",
674
- onClick: w
689
+ onClick: g
675
690
  }, {
676
- default: d(() => [
677
- M(A(e.confirmText), 1)
691
+ default: u(() => [
692
+ k(m(e.confirmText), 1)
678
693
  ]),
679
694
  _: 1
680
695
  })
681
696
  ]),
682
- default: d(() => [
683
- c("div", nl, [
684
- c("div", al, [
685
- e.total ? (i(), g("div", ol, A(r.value), 1)) : Q("", !0),
686
- c("div", cl, A(u.value), 1)
697
+ default: u(() => [
698
+ a("div", Vs, [
699
+ a("div", Ms, [
700
+ e.total ? (r(), f("div", Qs, m(c.value), 1)) : $("", !0),
701
+ a("div", Hs, m(v.value), 1)
687
702
  ]),
688
- f(E, { class: "page-range" }, {
689
- default: d(() => [
690
- f(m, { span: 11 }, {
691
- default: d(() => [
692
- f(P, {
703
+ d(D, { class: "page-range" }, {
704
+ default: u(() => [
705
+ d(E, { span: 11 }, {
706
+ default: u(() => [
707
+ d(V, {
693
708
  type: "number",
694
- modelValue: s.value,
695
- "onUpdate:modelValue": _[0] || (_[0] = (V) => s.value = V),
709
+ modelValue: l.value,
710
+ "onUpdate:modelValue": x[0] || (x[0] = (P) => l.value = P),
696
711
  min: e.minPage,
697
712
  max: o.value
698
713
  }, null, 8, ["modelValue", "min", "max"])
699
714
  ]),
700
715
  _: 1
701
716
  }),
702
- f(m, {
717
+ d(E, {
703
718
  span: 2,
704
719
  style: { "text-align": "center" }
705
720
  }, {
706
- default: d(() => [..._[3] || (_[3] = [
707
- c("span", null, "-", -1)
721
+ default: u(() => [...x[3] || (x[3] = [
722
+ a("span", null, "-", -1)
708
723
  ])]),
709
724
  _: 1
710
725
  }),
711
- f(m, { span: 11 }, {
712
- default: d(() => [
713
- f(P, {
726
+ d(E, { span: 11 }, {
727
+ default: u(() => [
728
+ d(V, {
714
729
  type: "number",
715
730
  modelValue: o.value,
716
- "onUpdate:modelValue": _[1] || (_[1] = (V) => o.value = V),
717
- min: s.value,
718
- max: a.value
731
+ "onUpdate:modelValue": x[1] || (x[1] = (P) => o.value = P),
732
+ min: l.value,
733
+ max: i.value
719
734
  }, null, 8, ["modelValue", "min", "max"])
720
735
  ]),
721
736
  _: 1
@@ -723,235 +738,253 @@ const Zt = { class: "dialog-footer" }, un = /* @__PURE__ */ S({
723
738
  ]),
724
739
  _: 1
725
740
  }),
726
- c("div", il, A(v.value), 1)
741
+ a("div", Ts, m(p.value), 1)
727
742
  ])
728
743
  ]),
729
744
  _: 1
730
745
  }, 8, ["title", "modelValue"]);
731
746
  };
732
747
  }
733
- }), ul = /* @__PURE__ */ U(rl, [["__scopeId", "data-v-715af5da"]]), vn = (e) => new Promise((n) => {
734
- let t = document.createElement("div");
735
- const l = (s) => {
736
- t && (ce(null, t), t.remove(), t = null), n(s);
737
- }, a = f(ul, {
748
+ }), Rs = /* @__PURE__ */ L(Ls, [["__scopeId", "data-v-715af5da"]]), yo = (e) => new Promise((n) => {
749
+ let s = document.createElement("div");
750
+ const t = (l) => {
751
+ s && (me(null, s), s.remove(), s = null), n(l);
752
+ }, i = d(Rs, {
738
753
  ...e,
739
754
  modelValue: !0,
740
- "onUpdate:modelValue"(s) {
741
- s || l();
755
+ "onUpdate:modelValue"(l) {
756
+ l || t();
742
757
  },
743
- onConfirm(s) {
744
- l(s);
758
+ onConfirm(l) {
759
+ t(l);
745
760
  }
746
761
  });
747
- document.body.appendChild(t), ce(a, t);
748
- }), dl = { class: "loading-mask el-overlay" }, vl = { class: "loading-content" }, pl = { class: "loading-spinner" }, gl = { class: "loading-text" }, ml = /* @__PURE__ */ S({
762
+ document.body.appendChild(s), me(i, s);
763
+ }), Us = { class: "loading-mask el-overlay" }, Fs = { class: "loading-content" }, qs = { class: "loading-spinner" }, Os = { class: "loading-text" }, js = /* @__PURE__ */ B({
749
764
  __name: "LoadingDialog",
750
765
  setup(e, { expose: n }) {
751
- const t = y(!1), l = y(""), a = y(!1);
752
- let s;
753
- const o = (p = {}) => {
754
- l.value = p.message ?? "加载中", a.value = p.showCancel ?? !1, s = p.onCancel, p?.autoCloseDelay && setTimeout(() => {
755
- u();
756
- }, p?.autoCloseDelay), t.value = !0;
757
- }, r = (p) => {
758
- l.value = p;
759
- }, u = () => {
760
- t.value = !1;
761
- }, v = async () => {
762
- await s?.(), u();
766
+ const s = z(!1), t = z(""), i = z(!1);
767
+ let l;
768
+ const o = (_ = {}) => {
769
+ t.value = _.message ?? "加载中", i.value = _.showCancel ?? !1, l = _.onCancel, _?.autoCloseDelay && setTimeout(() => {
770
+ v();
771
+ }, _?.autoCloseDelay), s.value = !0;
772
+ }, c = (_) => {
773
+ t.value = _;
774
+ }, v = () => {
775
+ s.value = !1;
776
+ }, p = async () => {
777
+ await l?.(), v();
763
778
  };
764
779
  return n({
765
780
  show: o,
766
- update: r,
767
- close: u
768
- }), (p, h) => {
769
- const w = ye;
770
- return F((i(), g("div", dl, [
771
- c("div", vl, [
772
- F(c("div", {
781
+ update: c,
782
+ close: v
783
+ }), (_, w) => {
784
+ const g = De;
785
+ return W((r(), f("div", Us, [
786
+ a("div", Fs, [
787
+ W(a("div", {
773
788
  class: "options-close-btn",
774
- onClick: v
789
+ onClick: p
775
790
  }, null, 512), [
776
- [ie, a.value]
791
+ [ge, i.value]
777
792
  ]),
778
- F(c("div", pl, null, 512), [
779
- [w, !0]
793
+ W(a("div", qs, null, 512), [
794
+ [g, !0]
780
795
  ]),
781
- c("div", gl, A(l.value), 1)
796
+ a("div", Os, m(t.value), 1)
782
797
  ])
783
798
  ], 512)), [
784
- [ie, t.value]
799
+ [ge, s.value]
785
800
  ]);
786
801
  };
787
802
  }
788
- }), fl = /* @__PURE__ */ U(ml, [["__scopeId", "data-v-a0557392"]]);
789
- let ae = null;
790
- function me() {
791
- if (ae) return ae;
803
+ }), Ns = /* @__PURE__ */ L(js, [["__scopeId", "data-v-a0557392"]]);
804
+ let ve = null;
805
+ function be() {
806
+ if (ve) return ve;
792
807
  const e = document.createElement("div");
793
- return document.body.appendChild(e), ae = De(fl).mount(e), ae;
808
+ return document.body.appendChild(e), ve = $e(Ns).mount(e), ve;
794
809
  }
795
- const pn = {
810
+ const ko = {
796
811
  show(e) {
797
- me().show(e);
812
+ be().show(e);
798
813
  },
799
814
  update(e) {
800
- me().update(e);
815
+ be().update(e);
801
816
  },
802
817
  close() {
803
- me().close();
818
+ be().close();
804
819
  }
805
820
  };
806
- var hl = /* @__PURE__ */ S({
821
+ var Zs = /* @__PURE__ */ B({
807
822
  name: "CircleCheck",
808
823
  __name: "circle-check",
809
824
  setup(e) {
810
- return (n, t) => (i(), g("svg", {
825
+ return (n, s) => (r(), f("svg", {
811
826
  xmlns: "http://www.w3.org/2000/svg",
812
827
  viewBox: "0 0 1024 1024"
813
828
  }, [
814
- c("path", {
829
+ a("path", {
815
830
  fill: "currentColor",
816
831
  d: "M512 896a384 384 0 1 0 0-768 384 384 0 0 0 0 768m0 64a448 448 0 1 1 0-896 448 448 0 0 1 0 896"
817
832
  }),
818
- c("path", {
833
+ a("path", {
819
834
  fill: "currentColor",
820
835
  d: "M745.344 361.344a32 32 0 0 1 45.312 45.312l-288 288a32 32 0 0 1-45.312 0l-160-160a32 32 0 1 1 45.312-45.312L480 626.752z"
821
836
  })
822
837
  ]));
823
838
  }
824
- }), _l = hl, Al = /* @__PURE__ */ S({
839
+ }), Ws = Zs, Gs = /* @__PURE__ */ B({
825
840
  name: "CircleClose",
826
841
  __name: "circle-close",
827
842
  setup(e) {
828
- return (n, t) => (i(), g("svg", {
843
+ return (n, s) => (r(), f("svg", {
829
844
  xmlns: "http://www.w3.org/2000/svg",
830
845
  viewBox: "0 0 1024 1024"
831
846
  }, [
832
- c("path", {
847
+ a("path", {
833
848
  fill: "currentColor",
834
849
  d: "m466.752 512-90.496-90.496a32 32 0 0 1 45.248-45.248L512 466.752l90.496-90.496a32 32 0 1 1 45.248 45.248L557.248 512l90.496 90.496a32 32 0 1 1-45.248 45.248L512 557.248l-90.496 90.496a32 32 0 0 1-45.248-45.248z"
835
850
  }),
836
- c("path", {
851
+ a("path", {
837
852
  fill: "currentColor",
838
853
  d: "M512 896a384 384 0 1 0 0-768 384 384 0 0 0 0 768m0 64a448 448 0 1 1 0-896 448 448 0 0 1 0 896"
839
854
  })
840
855
  ]));
841
856
  }
842
- }), wl = Al;
843
- const yl = { class: "loading-mask el-overlay" }, bl = { class: "loading-content" }, xl = { class: "status-icon" }, Cl = { class: "loading-text" }, El = { class: "actions" }, Bl = /* @__PURE__ */ S({
857
+ }), Js = Gs, Ks = /* @__PURE__ */ B({
858
+ name: "Picture",
859
+ __name: "picture",
860
+ setup(e) {
861
+ return (n, s) => (r(), f("svg", {
862
+ xmlns: "http://www.w3.org/2000/svg",
863
+ viewBox: "0 0 1024 1024"
864
+ }, [
865
+ a("path", {
866
+ fill: "currentColor",
867
+ d: "M160 160v704h704V160zm-32-64h768a32 32 0 0 1 32 32v768a32 32 0 0 1-32 32H128a32 32 0 0 1-32-32V128a32 32 0 0 1 32-32"
868
+ }),
869
+ a("path", {
870
+ fill: "currentColor",
871
+ d: "M384 288q64 0 64 64t-64 64-64-64 64-64M185.408 876.992l-50.816-38.912L350.72 556.032a96 96 0 0 1 134.592-17.856l1.856 1.472 122.88 99.136a32 32 0 0 0 44.992-4.864l216-269.888 49.92 39.936-215.808 269.824-.256.32a96 96 0 0 1-135.04 14.464l-122.88-99.072-.64-.512a32 32 0 0 0-44.8 5.952z"
872
+ })
873
+ ]));
874
+ }
875
+ }), ot = Ks;
876
+ const Ys = { class: "loading-mask el-overlay" }, Xs = { class: "loading-content" }, el = { class: "status-icon" }, tl = { class: "loading-text" }, sl = { class: "actions" }, ll = /* @__PURE__ */ B({
844
877
  __name: "ProcessDialog",
845
878
  setup(e, { expose: n }) {
846
- const t = y(!1), l = y(""), a = y(0), s = y("loading"), o = y(!1);
847
- let r, u;
848
- const v = (m = {}) => {
849
- l.value = m.message ?? "加载中", o.value = m.showCancel ?? !1, a.value = m.percentage ?? 0, s.value = "loading", r = m.onCancel, u = m.onConfirm, t.value = !0;
850
- }, p = (m, E) => {
851
- m != null && (a.value = m), E != null && (l.value = E);
852
- }, h = (m = "操作成功") => {
853
- s.value = "success", l.value = m;
854
- }, w = (m = "操作失败") => {
855
- s.value = "error", l.value = m;
856
- }, C = () => {
857
- t.value = !1;
858
- }, _ = async () => {
859
- await r?.(), C();
860
- }, P = async () => {
861
- await u?.(s.value), C();
879
+ const s = z(!1), t = z(""), i = z(0), l = z("loading"), o = z(!1);
880
+ let c, v;
881
+ const p = (E = {}) => {
882
+ t.value = E.message ?? "加载中", o.value = E.showCancel ?? !1, i.value = E.percentage ?? 0, l.value = "loading", c = E.onCancel, v = E.onConfirm, s.value = !0;
883
+ }, _ = (E, D) => {
884
+ E != null && (i.value = E), D != null && (t.value = D);
885
+ }, w = (E = "操作成功") => {
886
+ l.value = "success", t.value = E;
887
+ }, g = (E = "操作失败") => {
888
+ l.value = "error", t.value = E;
889
+ }, b = () => {
890
+ s.value = !1;
891
+ }, x = async () => {
892
+ await c?.(), b();
893
+ }, V = async () => {
894
+ await v?.(l.value), b();
862
895
  };
863
896
  return n({
864
- show: v,
865
- update: p,
866
- setSuccess: h,
867
- setError: w,
868
- close: C
869
- }), (m, E) => {
870
- const D = bt, $ = xt, V = se;
871
- return F((i(), g("div", yl, [
872
- c("div", bl, [
873
- F(c("div", {
897
+ show: p,
898
+ update: _,
899
+ setSuccess: w,
900
+ setError: g,
901
+ close: b
902
+ }), (E, D) => {
903
+ const M = Je, U = Pe, P = Z;
904
+ return W((r(), f("div", Ys, [
905
+ a("div", Xs, [
906
+ W(a("div", {
874
907
  class: "options-close-btn",
875
- onClick: _
908
+ onClick: x
876
909
  }, null, 512), [
877
- [ie, o.value && s.value === "loading"]
910
+ [ge, o.value && l.value === "loading"]
878
911
  ]),
879
- c("div", xl, [
880
- s.value === "loading" ? (i(), b(D, {
912
+ a("div", el, [
913
+ l.value === "loading" ? (r(), A(M, {
881
914
  key: 0,
882
915
  type: "circle",
883
- percentage: a.value,
916
+ percentage: i.value,
884
917
  width: 96
885
- }, null, 8, ["percentage"])) : s.value === "success" ? (i(), b($, {
918
+ }, null, 8, ["percentage"])) : l.value === "success" ? (r(), A(U, {
886
919
  key: 1,
887
920
  size: 42
888
921
  }, {
889
- default: d(() => [
890
- f(B(_l), { style: { color: "var(--el-color-success)" } })
922
+ default: u(() => [
923
+ d(h(Ws), { style: { color: "var(--el-color-success)" } })
891
924
  ]),
892
925
  _: 1
893
- })) : (i(), b($, {
926
+ })) : (r(), A(U, {
894
927
  key: 2,
895
928
  size: 42
896
929
  }, {
897
- default: d(() => [
898
- f(B(wl), { style: { color: "var(--el-color-error)" } })
930
+ default: u(() => [
931
+ d(h(Js), { style: { color: "var(--el-color-error)" } })
899
932
  ]),
900
933
  _: 1
901
934
  }))
902
935
  ]),
903
- c("div", Cl, A(l.value), 1),
904
- c("div", El, [
905
- o.value && s.value === "loading" ? (i(), b(V, {
936
+ a("div", tl, m(t.value), 1),
937
+ a("div", sl, [
938
+ o.value && l.value === "loading" ? (r(), A(P, {
906
939
  key: 0,
907
- onClick: _
940
+ onClick: x
908
941
  }, {
909
- default: d(() => [...E[0] || (E[0] = [
910
- M(" 取消 ", -1)
942
+ default: u(() => [...D[0] || (D[0] = [
943
+ k(" 取消 ", -1)
911
944
  ])]),
912
945
  _: 1
913
- })) : Q("", !0),
914
- s.value !== "loading" ? (i(), b(V, {
946
+ })) : $("", !0),
947
+ l.value !== "loading" ? (r(), A(P, {
915
948
  key: 1,
916
949
  type: "primary",
917
- onClick: P
950
+ onClick: V
918
951
  }, {
919
- default: d(() => [...E[1] || (E[1] = [
920
- M(" 确定 ", -1)
952
+ default: u(() => [...D[1] || (D[1] = [
953
+ k(" 确定 ", -1)
921
954
  ])]),
922
955
  _: 1
923
- })) : Q("", !0)
956
+ })) : $("", !0)
924
957
  ])
925
958
  ])
926
959
  ], 512)), [
927
- [ie, t.value]
960
+ [ge, s.value]
928
961
  ]);
929
962
  };
930
963
  }
931
- }), kl = /* @__PURE__ */ U(Bl, [["__scopeId", "data-v-8ddebb07"]]);
932
- let oe = null;
933
- function K() {
934
- if (oe) return oe;
964
+ }), nl = /* @__PURE__ */ L(ll, [["__scopeId", "data-v-8ddebb07"]]);
965
+ let pe = null;
966
+ function oe() {
967
+ if (pe) return pe;
935
968
  const e = document.createElement("div");
936
- return document.body.appendChild(e), oe = De(kl).mount(e), oe;
969
+ return document.body.appendChild(e), pe = $e(nl).mount(e), pe;
937
970
  }
938
- const gn = {
971
+ const Ao = {
939
972
  show(e) {
940
- K().show(e);
973
+ oe().show(e);
941
974
  },
942
975
  update(e, n) {
943
- K().update(e, n);
976
+ oe().update(e, n);
944
977
  },
945
978
  success(e) {
946
- K().setSuccess(e);
979
+ oe().setSuccess(e);
947
980
  },
948
981
  error(e) {
949
- K().setError(e);
982
+ oe().setError(e);
950
983
  },
951
984
  close() {
952
- K().close();
985
+ oe().close();
953
986
  }
954
- }, Sl = { class: "tooltip" }, zl = { class: "label" }, Be = /* @__PURE__ */ S({
987
+ }, al = { class: "tooltip" }, ol = { class: "label" }, ae = /* @__PURE__ */ B({
955
988
  __name: "AppTooltip",
956
989
  props: {
957
990
  content: {},
@@ -960,60 +993,60 @@ const gn = {
960
993
  iconClass: {}
961
994
  },
962
995
  setup(e) {
963
- nt((r) => ({
964
- v22da9023: B(t)
996
+ Et((c) => ({
997
+ v22da9023: h(s)
965
998
  }));
966
- const n = e, t = n.lines, l = () => ({
999
+ const n = e, s = n.lines, t = () => ({
967
1000
  "txt-ellipsis-right": n.ellipsis === "right",
968
1001
  "txt-ellipsis-left": n.ellipsis === "left",
969
1002
  "single-line": n.lines === 1
970
- }), a = y(!1), s = le("refContent"), o = new ResizeObserver(() => {
971
- s.value && (n.lines === 1 ? a.value = s.value.scrollWidth > s.value.clientWidth : a.value = s.value.scrollHeight > s.value.clientHeight);
1003
+ }), i = z(!1), l = K("refContent"), o = new ResizeObserver(() => {
1004
+ l.value && (n.lines === 1 ? i.value = l.value.scrollWidth > l.value.clientWidth : i.value = l.value.scrollHeight > l.value.clientHeight);
972
1005
  });
973
- return te(() => {
974
- s.value && o.observe(s.value);
975
- }), ue(() => {
1006
+ return ne(() => {
1007
+ l.value && o.observe(l.value);
1008
+ }), ce(() => {
976
1009
  o.disconnect();
977
- }), (r, u) => {
978
- const v = Re;
979
- return i(), g("div", Sl, [
980
- c("div", zl, [
981
- e.iconClass ? (i(), b(j, {
1010
+ }), (c, v) => {
1011
+ const p = Ke;
1012
+ return r(), f("div", al, [
1013
+ a("div", ol, [
1014
+ e.iconClass ? (r(), A(N, {
982
1015
  key: 0,
983
1016
  icon: e.iconClass
984
- }, null, 8, ["icon"])) : Q("", !0)
1017
+ }, null, 8, ["icon"])) : $("", !0)
985
1018
  ]),
986
- e.content ? (i(), b(v, {
1019
+ e.content ? (r(), A(p, {
987
1020
  key: 0,
988
1021
  effect: "light",
989
1022
  content: e.content,
990
1023
  placement: "top",
991
- disabled: !a.value,
1024
+ disabled: !i.value,
992
1025
  "show-after": 800
993
1026
  }, {
994
- content: d(() => [
995
- I(r.$slots, "tooltipContent")
1027
+ content: u(() => [
1028
+ I(c.$slots, "tooltipContent")
996
1029
  ]),
997
- default: d(() => [
998
- c("div", G({
1030
+ default: u(() => [
1031
+ a("div", G({
999
1032
  ref_key: "refContent",
1000
- ref: s
1001
- }, r.$attrs, {
1002
- class: ["tooltip__content", l()]
1033
+ ref: l
1034
+ }, c.$attrs, {
1035
+ class: ["tooltip__content", t()]
1003
1036
  }), [
1004
- c("span", null, [
1005
- I(r.$slots, "default", {}, () => [
1006
- M(A(e.content), 1)
1037
+ a("span", null, [
1038
+ I(c.$slots, "default", {}, () => [
1039
+ k(m(e.content), 1)
1007
1040
  ])
1008
1041
  ])
1009
1042
  ], 16)
1010
1043
  ]),
1011
1044
  _: 3
1012
- }, 8, ["content", "disabled"])) : Q("", !0)
1045
+ }, 8, ["content", "disabled"])) : $("", !0)
1013
1046
  ]);
1014
1047
  };
1015
1048
  }
1016
- }), mn = /* @__PURE__ */ S({
1049
+ }), bo = /* @__PURE__ */ B({
1017
1050
  inheritAttrs: !1,
1018
1051
  __name: "IconButton",
1019
1052
  props: {
@@ -1023,28 +1056,28 @@ const gn = {
1023
1056
  },
1024
1057
  emits: ["click"],
1025
1058
  setup(e, { emit: n }) {
1026
- const t = n, l = () => {
1027
- t("click");
1059
+ const s = n, t = () => {
1060
+ s("click");
1028
1061
  };
1029
- return (a, s) => {
1030
- const o = Re, r = Ct;
1031
- return e.tip ? (i(), g(O, { key: 0 }, [
1032
- e.confirm ? (i(), b(r, {
1062
+ return (i, l) => {
1063
+ const o = Ke, c = Kt;
1064
+ return e.tip ? (r(), f(R, { key: 0 }, [
1065
+ e.confirm ? (r(), A(c, {
1033
1066
  key: 0,
1034
1067
  title: e.confirm,
1035
1068
  placement: "left",
1036
- onConfirm: l
1069
+ onConfirm: t
1037
1070
  }, {
1038
- reference: d(() => [
1039
- c("span", at(ot(a.$attrs)), [
1040
- f(o, {
1071
+ reference: u(() => [
1072
+ a("span", Bt(St(i.$attrs)), [
1073
+ d(o, {
1041
1074
  effect: "light",
1042
1075
  content: e.tip,
1043
1076
  placement: "top",
1044
1077
  "show-after": 800
1045
1078
  }, {
1046
- default: d(() => [
1047
- f(j, {
1079
+ default: u(() => [
1080
+ d(N, {
1048
1081
  class: "icon-btn",
1049
1082
  icon: e.icon
1050
1083
  }, null, 8, ["icon"])
@@ -1054,216 +1087,216 @@ const gn = {
1054
1087
  ], 16)
1055
1088
  ]),
1056
1089
  _: 1
1057
- }, 8, ["title"])) : (i(), b(o, {
1090
+ }, 8, ["title"])) : (r(), A(o, {
1058
1091
  key: 1,
1059
1092
  effect: "light",
1060
1093
  content: e.tip,
1061
1094
  placement: "top",
1062
1095
  "show-after": 800
1063
1096
  }, {
1064
- default: d(() => [
1065
- f(j, G({
1097
+ default: u(() => [
1098
+ d(N, G({
1066
1099
  class: "icon-btn",
1067
1100
  icon: e.icon,
1068
- onClick: he(l, ["stop"])
1069
- }, a.$attrs), null, 16, ["icon"])
1101
+ onClick: Ee(t, ["stop"])
1102
+ }, i.$attrs), null, 16, ["icon"])
1070
1103
  ]),
1071
1104
  _: 1
1072
1105
  }, 8, ["content"]))
1073
- ], 64)) : (i(), g(O, { key: 1 }, [
1074
- e.confirm ? (i(), b(r, {
1106
+ ], 64)) : (r(), f(R, { key: 1 }, [
1107
+ e.confirm ? (r(), A(c, {
1075
1108
  key: 0,
1076
1109
  title: e.confirm,
1077
1110
  placement: "left",
1078
- onConfirm: l
1111
+ onConfirm: t
1079
1112
  }, {
1080
- reference: d(() => [
1081
- f(j, G({
1113
+ reference: u(() => [
1114
+ d(N, G({
1082
1115
  class: "icon-btn",
1083
1116
  icon: e.icon
1084
- }, a.$attrs), null, 16, ["icon"])
1117
+ }, i.$attrs), null, 16, ["icon"])
1085
1118
  ]),
1086
1119
  _: 1
1087
- }, 8, ["title"])) : (i(), b(j, G({
1120
+ }, 8, ["title"])) : (r(), A(N, G({
1088
1121
  key: 1,
1089
1122
  class: "icon-btn",
1090
1123
  icon: e.icon,
1091
- onClick: he(l, ["stop"])
1092
- }, a.$attrs), null, 16, ["icon"]))
1124
+ onClick: Ee(t, ["stop"])
1125
+ }, i.$attrs), null, 16, ["icon"]))
1093
1126
  ], 64));
1094
1127
  };
1095
1128
  }
1096
- }), Il = { class: "icon-label" }, fn = /* @__PURE__ */ S({
1129
+ }), il = { class: "icon-label" }, it = /* @__PURE__ */ B({
1097
1130
  __name: "IconLabel",
1098
1131
  props: {
1099
1132
  icon: {}
1100
1133
  },
1101
1134
  setup(e) {
1102
- return (n, t) => (i(), g("div", Il, [
1103
- f(j, { icon: e.icon }, null, 8, ["icon"]),
1135
+ return (n, s) => (r(), f("div", il, [
1136
+ d(N, { icon: e.icon }, null, 8, ["icon"]),
1104
1137
  I(n.$slots, "default")
1105
1138
  ]));
1106
1139
  }
1107
- }), hn = /* @__PURE__ */ S({
1140
+ }), Co = /* @__PURE__ */ B({
1108
1141
  __name: "ExternalLink",
1109
1142
  props: {
1110
1143
  url: {}
1111
1144
  },
1112
1145
  setup(e) {
1113
- const n = e, t = () => {
1114
- R.system.browsePage(n.url);
1146
+ const n = e, s = () => {
1147
+ H.system.browsePage(n.url);
1115
1148
  };
1116
- return (l, a) => (i(), g("span", {
1149
+ return (t, i) => (r(), f("span", {
1117
1150
  class: "external-link",
1118
- onClick: he(t, ["prevent"])
1151
+ onClick: Ee(s, ["prevent"])
1119
1152
  }, [
1120
- I(l.$slots, "default")
1153
+ I(t.$slots, "default")
1121
1154
  ]));
1122
1155
  }
1123
- }), Pl = ["innerHTML"], _n = /* @__PURE__ */ S({
1156
+ }), cl = ["innerHTML"], xo = /* @__PURE__ */ B({
1124
1157
  __name: "LogPrint",
1125
1158
  setup(e, { expose: n }) {
1126
- const t = y([]), l = le("logBoxRef");
1127
- function a(o) {
1128
- t.value.push(`[${ht()}] ${o}`), t.value.length > 500 && t.value.shift(), He(() => {
1129
- l.value && (l.value.scrollTop = l.value.scrollHeight);
1159
+ const s = z([]), t = K("logBoxRef");
1160
+ function i(o) {
1161
+ s.value.push(`[${Ot()}] ${o}`), s.value.length > 500 && s.value.shift(), we(() => {
1162
+ t.value && (t.value.scrollTop = t.value.scrollHeight);
1130
1163
  });
1131
1164
  }
1132
1165
  return n({
1133
- addLog: a,
1166
+ addLog: i,
1134
1167
  reset: () => {
1135
- t.value = [];
1168
+ s.value = [];
1136
1169
  }
1137
- }), (o, r) => (i(), g("div", {
1170
+ }), (o, c) => (r(), f("div", {
1138
1171
  ref_key: "logBoxRef",
1139
- ref: l,
1172
+ ref: t,
1140
1173
  class: "log-print-box"
1141
1174
  }, [
1142
- (i(!0), g(O, null, ee(t.value, (u, v) => (i(), g("div", {
1143
- key: v,
1144
- innerHTML: u,
1175
+ (r(!0), f(R, null, O(s.value, (v, p) => (r(), f("div", {
1176
+ key: p,
1177
+ innerHTML: v,
1145
1178
  class: "log-print-box__line"
1146
- }, null, 8, Pl))), 128))
1179
+ }, null, 8, cl))), 128))
1147
1180
  ], 512));
1148
1181
  }
1149
- }), Fe = "data:image/svg+xml,%3csvg%20version='1.1'%20id='图层_1'%20xmlns='http://www.w3.org/2000/svg'%20xmlns:xlink='http://www.w3.org/1999/xlink'%20x='0px'%20y='0px'%20viewBox='0%200%2030%2030'%20style='enable-background:new%200%200%2030%2030;'%20xml:space='preserve'%3e%3cstyle%20type='text/css'%3e.st0.lv1{fill:transparent;}.st1.lv1{fill-rule:evenodd;clip-rule:evenodd;fill:%23FFFFFF;}.st2.lv1{fill-rule:evenodd;clip-rule:evenodd;fill:%23C0C0C0;}%3c/style%3e%3crect%20class='st0%20lv1'%20width='30'%20height='30'/%3e%3cpath%20class='st1%20lv1'%20d='M19.9,11.1h-5.6v1.1H2.1v6.7h17.8v-6.7h0V11.1z'/%3e%3cpath%20class='st2%20lv1'%20d='M13.4,10.6c0-0.3,0.2-0.6,0.6-0.6h6.5c0.3,0,0.6,0.3,0.5,0.6v8.2v0.7c0,0.3-0.2,0.6-0.6,0.6H1.6%20C1.3,20,1,19.8,1,19.4v-7.8C1,11.3,1.2,11,1.6,11h11.8V10.6z%20M15.8,18.9h2.6c0.2,0,0.4-0.2,0.4-0.4v-0.6c0-0.2-0.2-0.4-0.4-0.4h-0.6%20v-5.6c0-0.2-0.2-0.4-0.4-0.4h-1.4c-0.2,0-0.4,0.2-0.4,0.4v0.6c0,0.2,0.2,0.4,0.4,0.4h0.4v4.6h-0.6c-0.2,0-0.4,0.2-0.4,0.4v0.6%20C15.3,18.7,15.5,18.9,15.8,18.9z%20M12.7,16.3v0.1c0,0.1-0.1,0.2-0.2,0.2c0,0,0,0-0.1,0.1l-2,2c-0.1,0.1-0.5,0.1-0.5,0.1%20s-0.4,0-0.5-0.1l-2-2c-0.1,0-0.1-0.3-0.1-0.4v-0.1v-3.5c0-0.2,0.2-0.4,0.4-0.4h0.6c0.2,0,0.4,0.2,0.4,0.4v3.4l1.2,1.2l1.2-1.2v-3.3%20c0-0.2,0.2-0.4,0.4-0.4h0.6c0.2,0,0.4,0.2,0.4,0.4V16.3L12.7,16.3z%20M2.6,18.9h3.4c0.2,0,0.4-0.2,0.4-0.4v-0.6c0-0.2-0.2-0.4-0.4-0.4%20H3.7v-4.7c0-0.2-0.2-0.4-0.4-0.4H2.6c-0.2,0-0.4,0.2-0.4,0.4v5.8C2.2,18.7,2.4,18.9,2.6,18.9z'/%3e%3c/svg%3e", Oe = "data:image/svg+xml,%3csvg%20version='1.1'%20id='图层_1'%20xmlns='http://www.w3.org/2000/svg'%20xmlns:xlink='http://www.w3.org/1999/xlink'%20x='0px'%20y='0px'%20viewBox='0%200%2030%2030'%20style='enable-background:new%200%200%2030%2030;'%20xml:space='preserve'%3e%3cstyle%20type='text/css'%3e.st0.lv2{fill:transparent;}.st1.lv2{fill-rule:evenodd;clip-rule:evenodd;fill:%23FFFFFF;}.st2.lv2{fill-rule:evenodd;clip-rule:evenodd;fill:%238BD29B;}%3c/style%3e%3crect%20class='st0%20lv2'%20width='30'%20height='30'/%3e%3cpath%20class='st1%20lv2'%20d='M19.9,11.1h-5.6v1.1H2.1v6.7h17.8v-6.7h0V11.1z'/%3e%3cpath%20class='st2%20lv2'%20d='M14,10h6.5c0.3,0,0.6,0.3,0.5,0.6v8.8c0,0.3-0.2,0.6-0.6,0.6H1.6C1.3,20,1,19.8,1,19.4v-7.8%20C1,11.3,1.2,11,1.6,11h11.8v-0.4C13.4,10.3,13.6,10,14,10z%20M19.4,15.8c0.2,0,0.4-0.2,0.4-0.4v-3.7c0-0.2-0.2-0.4-0.4-0.4H15%20c-0.2,0-0.4,0.2-0.4,0.4v0.6c0,0.2,0.2,0.4,0.4,0.4h3.4v1.7H15c-0.2,0-0.4,0.2-0.4,0.4v3.7c0,0.2,0.2,0.4,0.4,0.4h4.4%20c0.2,0,0.4-0.2,0.4-0.4v-0.6c0-0.2-0.2-0.4-0.4-0.4H16v-1.7H19.4z%20M12.7,16.4c0,0.1,0,0.3-0.1,0.4l-2.1,2c-0.1,0.1-0.5,0.1-0.5,0.1%20s-0.4,0-0.5-0.1l-2-2c-0.1,0-0.1-0.3-0.1-0.4v-0.1v-3.5c0-0.2,0.2-0.4,0.4-0.4h0.6c0.2,0,0.4,0.2,0.4,0.4v3.4l1.2,1.2l1.2-1.2v-3.3%20c0-0.2,0.2-0.4,0.4-0.4h0.6c0.2,0,0.4,0.2,0.4,0.4v3.4V16.4z%20M2.6,18.9h3.4c0.2,0,0.4-0.2,0.4-0.4v-0.6c0-0.2-0.2-0.4-0.4-0.4H3.7%20v-4.7c0-0.2-0.2-0.4-0.4-0.4H2.6c-0.2,0-0.4,0.2-0.4,0.4v5.8C2.2,18.7,2.4,18.9,2.6,18.9z'/%3e%3c/svg%3e", Ne = "data:image/svg+xml,%3csvg%20version='1.1'%20id='图层_1'%20xmlns='http://www.w3.org/2000/svg'%20xmlns:xlink='http://www.w3.org/1999/xlink'%20x='0px'%20y='0px'%20viewBox='0%200%2030%2030'%20style='enable-background:new%200%200%2030%2030;'%20xml:space='preserve'%3e%3cstyle%20type='text/css'%3e.st0.lv3{fill:transparent;}.st1.lv3{fill-rule:evenodd;clip-rule:evenodd;fill:%23FFFFFF;}.st2.lv3{fill-rule:evenodd;clip-rule:evenodd;fill:%237BCDEF;}%3c/style%3e%3crect%20class='st0%20lv3'%20width='30'%20height='30'/%3e%3cpath%20class='st1%20lv3'%20d='M19.9,11.1h-5.6v1.1H2.1v6.7h17.8v-6.7h0V11.1z'/%3e%3cpath%20class='st2%20lv3'%20d='M13.4,10.6c0-0.3,0.2-0.6,0.6-0.6h6.5c0.3,0,0.6,0.3,0.5,0.6v8.8c0,0.3-0.2,0.6-0.6,0.6H1.6%20C1.3,20,1,19.8,1,19.4v-7.8C1,11.3,1.2,11,1.6,11h11.8V10.6z%20M19.4,18.9c0.2,0,0.4-0.2,0.4-0.4v-6.9c0-0.2-0.2-0.4-0.4-0.4H15%20c-0.2,0-0.4,0.2-0.4,0.4v0.6c0,0.2,0.2,0.4,0.4,0.4h3.4v1.7H15c-0.2,0-0.4,0.2-0.4,0.4v0.6c0,0.2,0.2,0.4,0.4,0.4h3.4v1.7H15%20c-0.2,0-0.4,0.2-0.4,0.4v0.6c0,0.2,0.2,0.4,0.4,0.4H19.4z%20M12.7,16.4c0,0.1,0,0.3-0.1,0.4l-2.1,2c-0.1,0.1-0.5,0.1-0.5,0.1%20s-0.4,0-0.5-0.1l-2-2c-0.1,0-0.1-0.3-0.1-0.4v-0.1v-3.5c0-0.2,0.2-0.4,0.4-0.4h0.6c0.2,0,0.4,0.2,0.4,0.4v3.4l1.2,1.2l1.2-1.2v-3.3%20c0-0.2,0.2-0.4,0.4-0.4h0.6c0.2,0,0.4,0.2,0.4,0.4v3.4V16.4z%20M2.6,18.9h3.4c0.2,0,0.4-0.2,0.4-0.4v-0.6c0-0.2-0.2-0.4-0.4-0.4H3.7%20v-4.7c0-0.2-0.2-0.4-0.4-0.4H2.6c-0.2,0-0.4,0.2-0.4,0.4v5.8C2.2,18.7,2.4,18.9,2.6,18.9z'/%3e%3c/svg%3e", We = "data:image/svg+xml,%3csvg%20version='1.1'%20id='图层_1'%20xmlns='http://www.w3.org/2000/svg'%20xmlns:xlink='http://www.w3.org/1999/xlink'%20x='0px'%20y='0px'%20viewBox='0%200%2030%2030'%20style='enable-background:new%200%200%2030%2030;'%20xml:space='preserve'%3e%3cstyle%20type='text/css'%3e.st0.lv4{fill:transparent;}.st1.lv4{fill-rule:evenodd;clip-rule:evenodd;fill:%23FFFFFF;}.st2.lv4{fill-rule:evenodd;clip-rule:evenodd;fill:%23FEBB8B;}%3c/style%3e%3crect%20class='st0%20lv4'%20width='30'%20height='30'/%3e%3cpath%20class='st1%20lv4'%20d='M19.9,11.1h-5.6v1.1H2.1v6.7h17.8v-6.7h0V11.1z'/%3e%3cpath%20class='st2%20lv4'%20d='M13.4,10.6c0-0.3,0.2-0.6,0.6-0.6h6.5c0.3,0,0.6,0.3,0.5,0.6v8.8c0,0.3-0.2,0.6-0.6,0.6H1.6%20C1.3,20,1,19.8,1,19.4v-7.8C1,11.3,1.2,11,1.6,11h11.8V10.6z%20M19.4,18.9c0.2,0,0.4-0.2,0.4-0.4v-6.9c0-0.2-0.2-0.4-0.4-0.4h-0.6%20c-0.2,0-0.4,0.2-0.4,0.4v2.7H16v-2.7c0-0.2-0.2-0.4-0.4-0.4H15c-0.2,0-0.4,0.2-0.4,0.4v3.7c0,0.2,0.2,0.4,0.4,0.4h3.4v2.7%20c0,0.2,0.2,0.4,0.4,0.4H19.4z%20M12.7,16.4c0,0.1,0,0.3-0.1,0.4l-2.1,2c-0.1,0.1-0.5,0.1-0.5,0.1s-0.4,0-0.5-0.1l-2-2%20c-0.1-0.1-0.1-0.3-0.1-0.4v-0.1v-3.5c0-0.2,0.2-0.4,0.4-0.4h0.6c0.2,0,0.4,0.2,0.4,0.4v3.4l1.2,1.2l1.2-1.2v-3.3%20c0-0.2,0.2-0.4,0.4-0.4h0.6c0.2,0,0.4,0.2,0.4,0.4v3.4V16.4z%20M2.6,18.9h3.4c0.2,0,0.4-0.2,0.4-0.4v-0.6c0-0.2-0.2-0.4-0.4-0.4H3.7%20v-4.7c0-0.2-0.2-0.4-0.4-0.4H2.6c-0.2,0-0.4,0.2-0.4,0.4v5.8C2.2,18.7,2.4,18.9,2.6,18.9z'/%3e%3c/svg%3e", Ge = "data:image/svg+xml,%3csvg%20version='1.1'%20id='图层_1'%20xmlns='http://www.w3.org/2000/svg'%20xmlns:xlink='http://www.w3.org/1999/xlink'%20x='0px'%20y='0px'%20viewBox='0%200%2030%2030'%20style='enable-background:new%200%200%2030%2030;'%20xml:space='preserve'%3e%3cstyle%20type='text/css'%3e.st0.lv5{fill:transparent;}.st1.lv5{fill-rule:evenodd;clip-rule:evenodd;fill:%23FFFFFF;}.st2.lv5{fill-rule:evenodd;clip-rule:evenodd;fill:%23EE672A;}%3c/style%3e%3crect%20class='st0%20lv5'%20width='30'%20height='30'/%3e%3cpath%20class='st1%20lv5'%20d='M19.9,11.1h-5.6v1.1H2.1v6.7h17.8v-6.7h0V11.1z'/%3e%3cpath%20class='st2%20lv5'%20d='M13.4,10.6c0-0.3,0.2-0.6,0.6-0.6h6.5c0.3,0,0.6,0.3,0.5,0.6v8.8c0,0.3-0.2,0.6-0.6,0.6H1.6%20C1.3,20,1,19.8,1,19.4v-7.8C1,11.3,1.2,11,1.6,11h11.8V10.6z%20M19.4,12.7c0.2,0,0.4-0.2,0.4-0.4v-0.7c0-0.2-0.2-0.4-0.4-0.4H15%20c-0.2,0-0.4,0.2-0.4,0.4v3.7c0,0.2,0.2,0.4,0.4,0.4h3.4v1.7H15c-0.2,0-0.4,0.2-0.4,0.4v0.6c0,0.2,0.2,0.4,0.4,0.4h4.4%20c0.2,0,0.4-0.2,0.4-0.4v-3.7c0-0.2-0.2-0.4-0.4-0.4H16v-1.6H19.4z%20M12.7,16.4c0,0.1,0,0.3-0.1,0.4l-2.1,2c-0.1,0.1-0.5,0.1-0.5,0.1%20s-0.4,0-0.5-0.1l-2-2c-0.1-0.1-0.1-0.3-0.1-0.4v-0.1v-3.5c0-0.2,0.2-0.4,0.4-0.4h0.6c0.2,0,0.4,0.2,0.4,0.4v3.4l1.2,1.2l1.2-1.2%20v-3.3c0-0.2,0.2-0.4,0.4-0.4h0.6c0.2,0,0.4,0.2,0.4,0.4v3.4V16.4z%20M2.6,18.9h3.4c0.2,0,0.4-0.2,0.4-0.4v-0.6c0-0.2-0.2-0.4-0.4-0.4%20H3.7v-4.7c0-0.2-0.2-0.4-0.4-0.4H2.6c-0.2,0-0.4,0.2-0.4,0.4v5.8C2.2,18.7,2.4,18.9,2.6,18.9z'/%3e%3c/svg%3e", Je = "data:image/svg+xml,%3csvg%20version='1.1'%20id='图层_1'%20xmlns='http://www.w3.org/2000/svg'%20xmlns:xlink='http://www.w3.org/1999/xlink'%20x='0px'%20y='0px'%20viewBox='0%200%2030%2030'%20style='enable-background:new%200%200%2030%2030;'%20xml:space='preserve'%3e%3cstyle%20type='text/css'%3e.st0.lv6{fill:transparent;}.st1.lv6{fill-rule:evenodd;clip-rule:evenodd;fill:%23FFFFFF;}.st2.lv6{fill-rule:evenodd;clip-rule:evenodd;fill:%23F04C49;}%3c/style%3e%3crect%20class='st0%20lv6'%20width='30'%20height='30'/%3e%3cpath%20class='st1%20lv6'%20d='M19.9,11.1h-5.6v1.1H2.1v6.7h17.8v-6.7h0V11.1z'/%3e%3cpath%20class='st2%20lv6'%20d='M14,10c-0.4,0-0.6,0.3-0.6,0.6V11H1.6C1.2,11,1,11.3,1,11.6v7.8C1,19.8,1.3,20,1.6,20h18.8%20c0.4,0,0.6-0.3,0.6-0.6v-8.8c0.1-0.3-0.2-0.6-0.5-0.6H14z%20M19.8,12.3c0,0.2-0.2,0.4-0.4,0.4H16v1.6h3.4c0.2,0,0.4,0.2,0.4,0.4v3.7%20c0,0.2-0.2,0.4-0.4,0.4H15c-0.2,0-0.4-0.2-0.4-0.4v-6.8c0-0.2,0.2-0.4,0.4-0.4h4.4c0.2,0,0.4,0.2,0.4,0.4V12.3z%20M12.6,16.7%20c0.1-0.1,0.1-0.2,0.1-0.4v-0.1v-3.4c0-0.2-0.2-0.4-0.4-0.4h-0.6c-0.2,0-0.4,0.2-0.4,0.4v3.3L10,17.3l-1.2-1.2v-3.4%20c0-0.2-0.2-0.4-0.4-0.4H7.8c-0.2,0-0.4,0.2-0.4,0.4v3.5v0.1c0,0.2,0,0.4,0.1,0.4l2,2c0.1,0.1,0.5,0.1,0.5,0.1s0.4,0,0.5-0.1%20L12.6,16.7z%20M6.1,18.9H2.6c-0.2,0-0.4-0.2-0.4-0.4v-5.8c0-0.2,0.2-0.4,0.4-0.4h0.6c0.2,0,0.4,0.2,0.4,0.4v4.7h2.4%20c0.2,0,0.4,0.2,0.4,0.4v0.6C6.5,18.7,6.3,18.9,6.1,18.9z%20M18.4,17.4H16v-1.7h2.4V17.4z'/%3e%3c/svg%3e", _e = "data:image/jpeg;base64,/9j/4AAQSkZJRgABAQAAAQABAAD/2wBDAAMCAgICAgMCAgIDAwMDBAYEBAQEBAgGBgUGCQgKCgkICQkKDA8MCgsOCwkJDRENDg8QEBEQCgwSExIQEw8QEBD/2wBDAQMDAwQDBAgEBAgQCwkLEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBD/wAARCAC0ALQDAREAAhEBAxEB/8QAHAABAAMAAwEBAAAAAAAAAAAAAAUGBwECBAMJ/8QASBAAAQMCAgQHDQUHAgcAAAAAAQACAwQFBhEHEiExEyJBUWGR0RQVFjZVcXSBk5ShsdIyQlJUwVZicnOCkrMjQyQmM0VThLL/xAAYAQEBAQEBAAAAAAAAAAAAAAAAAQIDBP/EAB8RAQEAAgMAAwEBAAAAAAAAAAABAhESITEiMlFBQv/aAAwDAQACEQMRAD8A/RVetyEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQdBPAZTAJmGRozLA4awHmRHdFEBAQEHSKeGcF0EzJADkSxwOR5tiI7oogICAgICAgICAgICAgICDFrxT3rDd+fNNLIypEhljnB/6gJ39PSPUteuF3K0nCWLKbEdNwcmrFWxD/Uj5HfvN6Pks2OuOW1gRoQN20oM5xvjgzGSz2ab/T2tnnaftc7Wnm5zyqyOWWW+o76MLXco5pro8ujo5I+Da0/7rs946Bt29KUwl9aGo6iAgICAgICAgICAgIOHvZGwySPDWtGZcTkAEEPNjPDFO8xyXiEkHI6oLh1gFNM8o+fhzhXyuz2b+xDlEdfb5gfEFE6jrLowEbY5BG/WjdzjZ8E7S3Gs0jqJrXX8Pb6vjwSHg5mZgOyO/I8h5itOXjTLLpEs1XRNddqgUlS3ivbquLXdIyB2dCmnWZz+pDw5wr5XZ7N/YovKKnjPHja2N1ssczuAcMpZwCC8fhGe0DnVkYyy31Fdw1S2Oet4W/1zYKeLI6mq4mU82wbBzq1ma320yPGuEYY2xRXSNjGANa0RPAA5tyy68o7eHOFfK7PZv7EOUe633+y3V2pQXKGZ+WeoHZO6jtTSyyveiiAgICAgICAgIOHOaxpe9wa1ozJO4BBmdxuF2x9eHWq1yGKgiOZJ2N1R993PnyBXxytud1Es7R3he307X3S6TNPLI6VkbT5gR+qbXhJ6+Hgpo8Gzv+PfI+xN1OOP648FdHf7QN98j7E3Tjj+ngro7/aBvvkfYm6ccf08FtHf7QD3yPsTdXjj+uwwlo+O0X4e+R9ibqccf08EtH3l4e+R9ibpxx/TwS0fD/vw98j7E3Tjj+ngno98vj3yPsTdOOP65ZhHR/I4MZfQ5x3AVke34JunHH9dLvo2ZDB3bh2tlMsY12se4Eu/hcMsim1uH4kcC4rmuzH2q6O/42nGxx2GRo2HPpHKli45b6q3KNiAgICAgICAgr2Pa59BhmpMZIdOWwAjkDt/wBSM53URei2BjLPV1OqNaSo1S7lya0bPiVazh4k7Jbaa8R+EF2gZUz1JcYWyDWbDFmQ1rQdm7aTzlRZN91L957R5Ko/YN7Ea1DvPaPJVH7BvYhqHee0eSqP2DexDUO89o8lUfsG9iGod57R5Ko/YN7ENQ7z2jyVR+wb2Iah3ntHkqj9g3sQ1DvPaPJVH7BvYhqOr7JZpGlj7TRlrhkRwDexDUR1oidZr3NYonuNFJB3VTNcSeC42q5gPNmQR50SdXSk3SY2bSKZ4QGN7pjJA3ZPA1uvMq/xzvWTVFHYQEBAQEBAQEFT0m+LbfSWfJyRjPxxo0blhl5/FUSH4NVph4mcLZeD1Bl/4QpVx8SiNCAgICAgICAgipMvCmD0CT/IxGf8ATPccDLGpPOYD8AtRzy+zV1l2EBAQEBAQEBBU9Jvi230lnyckYz8ddGhPgzJnyVEn/wAtVqYeJnChzw5bzzwhStY+JVGnlr7rbbXHwlwrYYAd2u7InzDeUS2T1W6nSbh+GZscMdTOzPjPawAAdGZBKumecWuCeKphZUQPD45Gh7XDcQdyjXruiq/ijGFLhl8EL6d1RLNm4sa/V1W8+7n+SSbZyy4vhbdImHa4hk0slG88kzeL/cMx15JpJnKskE8FTGJqeZksbtzmODgfWEa9d0VESnLFdMOegl/yMRn/AEz7G5Jxs8czoAP7Wqzxzy+zWFHYQEBAQEBAQEFT0m+LbfSWfJyRjPxxo2GWGHnnnkPwCtMPEvhPxbt/8hqlXHxUMYY6u1NcZ7TbMqZkB1HSaub3Hoz3BWRjLK70pQbcLrVEgT1dRIdu97z+qrHdW2xaNK+r1Z7zL3LEdvBNyMh8/I34qbbmFvrSKOkgoaWKjpmlsULAxgJzyAUdJ0+qKgcT4QocStZJJK6CpiaWslaM8xzEcoSXTOWPJnl4wLf7SS8U3dUI/wByDjZedu8LW3O42I213q62OfhKCqkhOfGYdrXedp2IzLY1rCV8qMQWgV9VTCGQSGM6ueq/IDjDPk25epZrtjdx2m8bKX0Cb/IxD+s/xwAMakjlMB+AWo55fZq6y7CAgICAgICAgqek3xbb6Sz5OSMZ+ONHGzCzv50nyCtMPEvhPxbt38hqlXHxzcMLWG6Vnd9fQNlm1Q0kucAQN2YB2psuMvb30lDR0MfBUVLFAz8MbA0fBF1p9kV84KmnqWudTzslDHFjixwOThvBy5UQhqqapLxT1EcvBO1H6jgdV3MctxQ24gqqapMgp52SGJ5jk1XZ6rhvB6UH1RXir7JaLnn3fboJifvOZxusbUSyV6KWlpqKBlLSQMhiYMmsYMgEPEZN420voE3+RiJ/VBxz46ex+QWo55fZqyy7CAgICAgICAgqek3xbb6Sz5OSMZ+OdHLf+Vh+9NJ+itMPEthQauHLe3mhAUq4+JVGhAQVmfDN2oKueowvc4qSOrOtNBMzWYH/AIm78j0JtjjZ48lPgu82hp7xX/gnVEYbVGVmes/bxm8289qu042eVP2Cw01gozTQSPlfI4ySyvPGkeeVRqTSSRoQEERK3PFdM7P7NBL8ZGIz/VCx2MsZtPOIStRzy+zVFl2EBAQEBAQEBBVNJjScN5jkqGE9RVjGfjro0l4TDb4xvjqHt6wD+qUw8TGFXB2HqHnbHqnoIJBHWpVx8SqNCAgICAgICAgiHvDsWxRt2llveXdGcjcvkUZ/0oGNHGoxwImbS18EY8+Q7VqeOeX2assuwgICAgICAgIPBfrYLxaKq3HIOlZxCeRw2t+ICJZuaUXR7e4rPV1NhuZEBlkzYX7MpBsLT58h1K1zwuuquRttyt88stllpzDO4yPpp8w1rzvLHN3Z7yMiM1G9WeBmxXnsobXl6Q/6EPkcNiv8hbPeX/QnR8jhsWeT7X7y/wChOj5HDYs/IWv3l/0J0fJ2EuKeWitg/wDYf9CHZwuKPyds9u/6UOzhcU/krZ7w/wClDtxwuKvyVs94k+hDtwJcWO2dxWtmf3uHkdl6tUZofJxBFT4fpqq73mubJPLk6ect1RkPssYOYcg3klDzuqRhqCbFWMpb3JDq08MnDuzGwZbGN8+wdRV8Yx+V209R1EBAQEBAQEBAQVbFmBqe/PNdRSNp6zLJxI4knn5j0qysZY78VUWTSNbwKWnkrODZ9ngqkFvq2p0xrKORQ6TCcg+4+uoH1J0ayfCvGkG2U7quuq66KFmWbzUgjbu3FXovKPLbbljS7yPittxrp3xjWc1s+0Dn2lOknK+PZURaRqWCSpqJ7iyKJpe9xn2ADed6nS/KPFbrrjK7Tmmt1zrp5WtLy1s5zy59p6Qr0ktvj3S0+kiCJ8001xYyNpc5xqNgA3nep0uskbR33FdfUspKS71sk0hyY3hyMzzbSqm7UsaDSaNvCXH3kfUp0usnHcOkz8dy94H1J0ayfSDBmL79Mw3yrkiib96eXXcB0NB39Sbi8bfWhWez0VjomUNDHqsbtc4/ae7lJKjpJp7UUQEBAQEBAQEBAQEBBnOlC7l89PZYn8WMcNKB+I/ZHVmfWrHLO/xWcK3c2S+U9Y52URdwcv8AAdh6t/qVrON1WiaRLgKXDb4mP41W9sQy5R9o/AfFZjpnelDwLWdx4noyTk2YmE/1DIfHJarnjdVddJN67htLbZE/KWtOTst4jG/rOQ61I6Z3U0y6KWSCVk0Ty18bg5rhvBG4quTcMP3aO92inuLMg6RuUgH3XjY4day7y7m0giiAgICAgICAgICAgICAg6yyxwRPmlcGsjaXOJ5ABmSiMKu9wkutzqbjJnnPIXAczeQeoZBacLd3byIJi8Ygmu9rttDMSXUTHMcT97cGn+0BFt3EZSVDqSqhqmfahkbIPODmiJDFF6dfbzPXAnggeDhB5GDd17T60i27u0UiLxowvPAVs1mlfxKgcJFnyPA2j1j5KVvC96aUo6iAgICAgICAgICAgICAgrGkO6d78PSQMdlJWOEI/h3u+Ay9aRjO6jJFpyEBAQEBB6LdWy26vp6+E8eCRrx05HchLpu1NURVdPFVQu1o5mB7TzgjMLLv6+iKICAgICAgICAgICAgIMs0m3Luq9x0DHZso4wCP33bT8NVWOOd3VQVZEBAQEBAQato2ubq2xGjkOb6J+oP4DtH6j1KV1wvS2KNiAgICAgICAgICAgIOskjIo3SyHJrAXOPMAiMIuda+43Gprnk5zyuf5gTsHUtOF7eZAQEBAQEBBa9G9y7jv8A3I92UdYws/qG0fqPWpWsLqtXUdhAQEBAQEBAQEBAQEEViuV8GG7jJGcncA4Z+fZ+qRnLxiS04iAgICAgICD22SV8N4oZYzk5tRGQf6glJ63VZegQEBAQEBB//9k=", Ql = { class: "user-card" }, Ml = { class: "user-card__face-wrapper" }, Dl = ["src"], Hl = {
1182
+ }), ct = "data:image/svg+xml,%3csvg%20version='1.1'%20id='图层_1'%20xmlns='http://www.w3.org/2000/svg'%20xmlns:xlink='http://www.w3.org/1999/xlink'%20x='0px'%20y='0px'%20viewBox='0%200%2030%2030'%20style='enable-background:new%200%200%2030%2030;'%20xml:space='preserve'%3e%3cstyle%20type='text/css'%3e.st0.lv1{fill:transparent;}.st1.lv1{fill-rule:evenodd;clip-rule:evenodd;fill:%23FFFFFF;}.st2.lv1{fill-rule:evenodd;clip-rule:evenodd;fill:%23C0C0C0;}%3c/style%3e%3crect%20class='st0%20lv1'%20width='30'%20height='30'/%3e%3cpath%20class='st1%20lv1'%20d='M19.9,11.1h-5.6v1.1H2.1v6.7h17.8v-6.7h0V11.1z'/%3e%3cpath%20class='st2%20lv1'%20d='M13.4,10.6c0-0.3,0.2-0.6,0.6-0.6h6.5c0.3,0,0.6,0.3,0.5,0.6v8.2v0.7c0,0.3-0.2,0.6-0.6,0.6H1.6%20C1.3,20,1,19.8,1,19.4v-7.8C1,11.3,1.2,11,1.6,11h11.8V10.6z%20M15.8,18.9h2.6c0.2,0,0.4-0.2,0.4-0.4v-0.6c0-0.2-0.2-0.4-0.4-0.4h-0.6%20v-5.6c0-0.2-0.2-0.4-0.4-0.4h-1.4c-0.2,0-0.4,0.2-0.4,0.4v0.6c0,0.2,0.2,0.4,0.4,0.4h0.4v4.6h-0.6c-0.2,0-0.4,0.2-0.4,0.4v0.6%20C15.3,18.7,15.5,18.9,15.8,18.9z%20M12.7,16.3v0.1c0,0.1-0.1,0.2-0.2,0.2c0,0,0,0-0.1,0.1l-2,2c-0.1,0.1-0.5,0.1-0.5,0.1%20s-0.4,0-0.5-0.1l-2-2c-0.1,0-0.1-0.3-0.1-0.4v-0.1v-3.5c0-0.2,0.2-0.4,0.4-0.4h0.6c0.2,0,0.4,0.2,0.4,0.4v3.4l1.2,1.2l1.2-1.2v-3.3%20c0-0.2,0.2-0.4,0.4-0.4h0.6c0.2,0,0.4,0.2,0.4,0.4V16.3L12.7,16.3z%20M2.6,18.9h3.4c0.2,0,0.4-0.2,0.4-0.4v-0.6c0-0.2-0.2-0.4-0.4-0.4%20H3.7v-4.7c0-0.2-0.2-0.4-0.4-0.4H2.6c-0.2,0-0.4,0.2-0.4,0.4v5.8C2.2,18.7,2.4,18.9,2.6,18.9z'/%3e%3c/svg%3e", rt = "data:image/svg+xml,%3csvg%20version='1.1'%20id='图层_1'%20xmlns='http://www.w3.org/2000/svg'%20xmlns:xlink='http://www.w3.org/1999/xlink'%20x='0px'%20y='0px'%20viewBox='0%200%2030%2030'%20style='enable-background:new%200%200%2030%2030;'%20xml:space='preserve'%3e%3cstyle%20type='text/css'%3e.st0.lv2{fill:transparent;}.st1.lv2{fill-rule:evenodd;clip-rule:evenodd;fill:%23FFFFFF;}.st2.lv2{fill-rule:evenodd;clip-rule:evenodd;fill:%238BD29B;}%3c/style%3e%3crect%20class='st0%20lv2'%20width='30'%20height='30'/%3e%3cpath%20class='st1%20lv2'%20d='M19.9,11.1h-5.6v1.1H2.1v6.7h17.8v-6.7h0V11.1z'/%3e%3cpath%20class='st2%20lv2'%20d='M14,10h6.5c0.3,0,0.6,0.3,0.5,0.6v8.8c0,0.3-0.2,0.6-0.6,0.6H1.6C1.3,20,1,19.8,1,19.4v-7.8%20C1,11.3,1.2,11,1.6,11h11.8v-0.4C13.4,10.3,13.6,10,14,10z%20M19.4,15.8c0.2,0,0.4-0.2,0.4-0.4v-3.7c0-0.2-0.2-0.4-0.4-0.4H15%20c-0.2,0-0.4,0.2-0.4,0.4v0.6c0,0.2,0.2,0.4,0.4,0.4h3.4v1.7H15c-0.2,0-0.4,0.2-0.4,0.4v3.7c0,0.2,0.2,0.4,0.4,0.4h4.4%20c0.2,0,0.4-0.2,0.4-0.4v-0.6c0-0.2-0.2-0.4-0.4-0.4H16v-1.7H19.4z%20M12.7,16.4c0,0.1,0,0.3-0.1,0.4l-2.1,2c-0.1,0.1-0.5,0.1-0.5,0.1%20s-0.4,0-0.5-0.1l-2-2c-0.1,0-0.1-0.3-0.1-0.4v-0.1v-3.5c0-0.2,0.2-0.4,0.4-0.4h0.6c0.2,0,0.4,0.2,0.4,0.4v3.4l1.2,1.2l1.2-1.2v-3.3%20c0-0.2,0.2-0.4,0.4-0.4h0.6c0.2,0,0.4,0.2,0.4,0.4v3.4V16.4z%20M2.6,18.9h3.4c0.2,0,0.4-0.2,0.4-0.4v-0.6c0-0.2-0.2-0.4-0.4-0.4H3.7%20v-4.7c0-0.2-0.2-0.4-0.4-0.4H2.6c-0.2,0-0.4,0.2-0.4,0.4v5.8C2.2,18.7,2.4,18.9,2.6,18.9z'/%3e%3c/svg%3e", ut = "data:image/svg+xml,%3csvg%20version='1.1'%20id='图层_1'%20xmlns='http://www.w3.org/2000/svg'%20xmlns:xlink='http://www.w3.org/1999/xlink'%20x='0px'%20y='0px'%20viewBox='0%200%2030%2030'%20style='enable-background:new%200%200%2030%2030;'%20xml:space='preserve'%3e%3cstyle%20type='text/css'%3e.st0.lv3{fill:transparent;}.st1.lv3{fill-rule:evenodd;clip-rule:evenodd;fill:%23FFFFFF;}.st2.lv3{fill-rule:evenodd;clip-rule:evenodd;fill:%237BCDEF;}%3c/style%3e%3crect%20class='st0%20lv3'%20width='30'%20height='30'/%3e%3cpath%20class='st1%20lv3'%20d='M19.9,11.1h-5.6v1.1H2.1v6.7h17.8v-6.7h0V11.1z'/%3e%3cpath%20class='st2%20lv3'%20d='M13.4,10.6c0-0.3,0.2-0.6,0.6-0.6h6.5c0.3,0,0.6,0.3,0.5,0.6v8.8c0,0.3-0.2,0.6-0.6,0.6H1.6%20C1.3,20,1,19.8,1,19.4v-7.8C1,11.3,1.2,11,1.6,11h11.8V10.6z%20M19.4,18.9c0.2,0,0.4-0.2,0.4-0.4v-6.9c0-0.2-0.2-0.4-0.4-0.4H15%20c-0.2,0-0.4,0.2-0.4,0.4v0.6c0,0.2,0.2,0.4,0.4,0.4h3.4v1.7H15c-0.2,0-0.4,0.2-0.4,0.4v0.6c0,0.2,0.2,0.4,0.4,0.4h3.4v1.7H15%20c-0.2,0-0.4,0.2-0.4,0.4v0.6c0,0.2,0.2,0.4,0.4,0.4H19.4z%20M12.7,16.4c0,0.1,0,0.3-0.1,0.4l-2.1,2c-0.1,0.1-0.5,0.1-0.5,0.1%20s-0.4,0-0.5-0.1l-2-2c-0.1,0-0.1-0.3-0.1-0.4v-0.1v-3.5c0-0.2,0.2-0.4,0.4-0.4h0.6c0.2,0,0.4,0.2,0.4,0.4v3.4l1.2,1.2l1.2-1.2v-3.3%20c0-0.2,0.2-0.4,0.4-0.4h0.6c0.2,0,0.4,0.2,0.4,0.4v3.4V16.4z%20M2.6,18.9h3.4c0.2,0,0.4-0.2,0.4-0.4v-0.6c0-0.2-0.2-0.4-0.4-0.4H3.7%20v-4.7c0-0.2-0.2-0.4-0.4-0.4H2.6c-0.2,0-0.4,0.2-0.4,0.4v5.8C2.2,18.7,2.4,18.9,2.6,18.9z'/%3e%3c/svg%3e", dt = "data:image/svg+xml,%3csvg%20version='1.1'%20id='图层_1'%20xmlns='http://www.w3.org/2000/svg'%20xmlns:xlink='http://www.w3.org/1999/xlink'%20x='0px'%20y='0px'%20viewBox='0%200%2030%2030'%20style='enable-background:new%200%200%2030%2030;'%20xml:space='preserve'%3e%3cstyle%20type='text/css'%3e.st0.lv4{fill:transparent;}.st1.lv4{fill-rule:evenodd;clip-rule:evenodd;fill:%23FFFFFF;}.st2.lv4{fill-rule:evenodd;clip-rule:evenodd;fill:%23FEBB8B;}%3c/style%3e%3crect%20class='st0%20lv4'%20width='30'%20height='30'/%3e%3cpath%20class='st1%20lv4'%20d='M19.9,11.1h-5.6v1.1H2.1v6.7h17.8v-6.7h0V11.1z'/%3e%3cpath%20class='st2%20lv4'%20d='M13.4,10.6c0-0.3,0.2-0.6,0.6-0.6h6.5c0.3,0,0.6,0.3,0.5,0.6v8.8c0,0.3-0.2,0.6-0.6,0.6H1.6%20C1.3,20,1,19.8,1,19.4v-7.8C1,11.3,1.2,11,1.6,11h11.8V10.6z%20M19.4,18.9c0.2,0,0.4-0.2,0.4-0.4v-6.9c0-0.2-0.2-0.4-0.4-0.4h-0.6%20c-0.2,0-0.4,0.2-0.4,0.4v2.7H16v-2.7c0-0.2-0.2-0.4-0.4-0.4H15c-0.2,0-0.4,0.2-0.4,0.4v3.7c0,0.2,0.2,0.4,0.4,0.4h3.4v2.7%20c0,0.2,0.2,0.4,0.4,0.4H19.4z%20M12.7,16.4c0,0.1,0,0.3-0.1,0.4l-2.1,2c-0.1,0.1-0.5,0.1-0.5,0.1s-0.4,0-0.5-0.1l-2-2%20c-0.1-0.1-0.1-0.3-0.1-0.4v-0.1v-3.5c0-0.2,0.2-0.4,0.4-0.4h0.6c0.2,0,0.4,0.2,0.4,0.4v3.4l1.2,1.2l1.2-1.2v-3.3%20c0-0.2,0.2-0.4,0.4-0.4h0.6c0.2,0,0.4,0.2,0.4,0.4v3.4V16.4z%20M2.6,18.9h3.4c0.2,0,0.4-0.2,0.4-0.4v-0.6c0-0.2-0.2-0.4-0.4-0.4H3.7%20v-4.7c0-0.2-0.2-0.4-0.4-0.4H2.6c-0.2,0-0.4,0.2-0.4,0.4v5.8C2.2,18.7,2.4,18.9,2.6,18.9z'/%3e%3c/svg%3e", vt = "data:image/svg+xml,%3csvg%20version='1.1'%20id='图层_1'%20xmlns='http://www.w3.org/2000/svg'%20xmlns:xlink='http://www.w3.org/1999/xlink'%20x='0px'%20y='0px'%20viewBox='0%200%2030%2030'%20style='enable-background:new%200%200%2030%2030;'%20xml:space='preserve'%3e%3cstyle%20type='text/css'%3e.st0.lv5{fill:transparent;}.st1.lv5{fill-rule:evenodd;clip-rule:evenodd;fill:%23FFFFFF;}.st2.lv5{fill-rule:evenodd;clip-rule:evenodd;fill:%23EE672A;}%3c/style%3e%3crect%20class='st0%20lv5'%20width='30'%20height='30'/%3e%3cpath%20class='st1%20lv5'%20d='M19.9,11.1h-5.6v1.1H2.1v6.7h17.8v-6.7h0V11.1z'/%3e%3cpath%20class='st2%20lv5'%20d='M13.4,10.6c0-0.3,0.2-0.6,0.6-0.6h6.5c0.3,0,0.6,0.3,0.5,0.6v8.8c0,0.3-0.2,0.6-0.6,0.6H1.6%20C1.3,20,1,19.8,1,19.4v-7.8C1,11.3,1.2,11,1.6,11h11.8V10.6z%20M19.4,12.7c0.2,0,0.4-0.2,0.4-0.4v-0.7c0-0.2-0.2-0.4-0.4-0.4H15%20c-0.2,0-0.4,0.2-0.4,0.4v3.7c0,0.2,0.2,0.4,0.4,0.4h3.4v1.7H15c-0.2,0-0.4,0.2-0.4,0.4v0.6c0,0.2,0.2,0.4,0.4,0.4h4.4%20c0.2,0,0.4-0.2,0.4-0.4v-3.7c0-0.2-0.2-0.4-0.4-0.4H16v-1.6H19.4z%20M12.7,16.4c0,0.1,0,0.3-0.1,0.4l-2.1,2c-0.1,0.1-0.5,0.1-0.5,0.1%20s-0.4,0-0.5-0.1l-2-2c-0.1-0.1-0.1-0.3-0.1-0.4v-0.1v-3.5c0-0.2,0.2-0.4,0.4-0.4h0.6c0.2,0,0.4,0.2,0.4,0.4v3.4l1.2,1.2l1.2-1.2%20v-3.3c0-0.2,0.2-0.4,0.4-0.4h0.6c0.2,0,0.4,0.2,0.4,0.4v3.4V16.4z%20M2.6,18.9h3.4c0.2,0,0.4-0.2,0.4-0.4v-0.6c0-0.2-0.2-0.4-0.4-0.4%20H3.7v-4.7c0-0.2-0.2-0.4-0.4-0.4H2.6c-0.2,0-0.4,0.2-0.4,0.4v5.8C2.2,18.7,2.4,18.9,2.6,18.9z'/%3e%3c/svg%3e", pt = "data:image/svg+xml,%3csvg%20version='1.1'%20id='图层_1'%20xmlns='http://www.w3.org/2000/svg'%20xmlns:xlink='http://www.w3.org/1999/xlink'%20x='0px'%20y='0px'%20viewBox='0%200%2030%2030'%20style='enable-background:new%200%200%2030%2030;'%20xml:space='preserve'%3e%3cstyle%20type='text/css'%3e.st0.lv6{fill:transparent;}.st1.lv6{fill-rule:evenodd;clip-rule:evenodd;fill:%23FFFFFF;}.st2.lv6{fill-rule:evenodd;clip-rule:evenodd;fill:%23F04C49;}%3c/style%3e%3crect%20class='st0%20lv6'%20width='30'%20height='30'/%3e%3cpath%20class='st1%20lv6'%20d='M19.9,11.1h-5.6v1.1H2.1v6.7h17.8v-6.7h0V11.1z'/%3e%3cpath%20class='st2%20lv6'%20d='M14,10c-0.4,0-0.6,0.3-0.6,0.6V11H1.6C1.2,11,1,11.3,1,11.6v7.8C1,19.8,1.3,20,1.6,20h18.8%20c0.4,0,0.6-0.3,0.6-0.6v-8.8c0.1-0.3-0.2-0.6-0.5-0.6H14z%20M19.8,12.3c0,0.2-0.2,0.4-0.4,0.4H16v1.6h3.4c0.2,0,0.4,0.2,0.4,0.4v3.7%20c0,0.2-0.2,0.4-0.4,0.4H15c-0.2,0-0.4-0.2-0.4-0.4v-6.8c0-0.2,0.2-0.4,0.4-0.4h4.4c0.2,0,0.4,0.2,0.4,0.4V12.3z%20M12.6,16.7%20c0.1-0.1,0.1-0.2,0.1-0.4v-0.1v-3.4c0-0.2-0.2-0.4-0.4-0.4h-0.6c-0.2,0-0.4,0.2-0.4,0.4v3.3L10,17.3l-1.2-1.2v-3.4%20c0-0.2-0.2-0.4-0.4-0.4H7.8c-0.2,0-0.4,0.2-0.4,0.4v3.5v0.1c0,0.2,0,0.4,0.1,0.4l2,2c0.1,0.1,0.5,0.1,0.5,0.1s0.4,0,0.5-0.1%20L12.6,16.7z%20M6.1,18.9H2.6c-0.2,0-0.4-0.2-0.4-0.4v-5.8c0-0.2,0.2-0.4,0.4-0.4h0.6c0.2,0,0.4,0.2,0.4,0.4v4.7h2.4%20c0.2,0,0.4,0.2,0.4,0.4v0.6C6.5,18.7,6.3,18.9,6.1,18.9z%20M18.4,17.4H16v-1.7h2.4V17.4z'/%3e%3c/svg%3e", Be = "data:image/jpeg;base64,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", rl = { class: "user-card" }, ul = { class: "user-card__face-wrapper" }, dl = ["src"], vl = {
1150
1183
  key: 0,
1151
1184
  class: "user-card--blocked"
1152
- }, Vl = { class: "user-card__info" }, $l = { class: "user-card__row" }, Tl = ["src"], Ll = { class: "user-card__row" }, Rl = { class: "user-card__uid" }, Ul = { class: "user-card__row" }, ql = { class: "user-card__stat__item" }, jl = { class: "user-card__stat__value" }, Fl = { class: "user-card__stat__item" }, Ol = { class: "user-card__stat__value" }, Nl = { class: "user-card__stat__item" }, Wl = { class: "user-card__stat__value" }, Gl = /* @__PURE__ */ S({
1185
+ }, pl = { class: "user-card__info" }, ml = { class: "user-card__row" }, gl = ["src"], fl = { class: "user-card__row" }, _l = { class: "user-card__uid" }, hl = { class: "user-card__row" }, wl = { class: "user-card__stat__item" }, yl = { class: "user-card__stat__value" }, kl = { class: "user-card__stat__item" }, Al = { class: "user-card__stat__value" }, bl = { class: "user-card__stat__item" }, Cl = { class: "user-card__stat__value" }, xl = /* @__PURE__ */ B({
1153
1186
  __name: "BiliUserCard",
1154
1187
  props: {
1155
1188
  user: {}
1156
1189
  },
1157
1190
  setup(e) {
1158
- const n = e, t = k(() => n.user.face || _e), l = k(() => new URL((/* @__PURE__ */ Object.assign({ "../../assets/images/user_level/level_1.svg": Fe, "../../assets/images/user_level/level_2.svg": Oe, "../../assets/images/user_level/level_3.svg": Ne, "../../assets/images/user_level/level_4.svg": We, "../../assets/images/user_level/level_5.svg": Ge, "../../assets/images/user_level/level_6.svg": Je }))[`../../assets/images/user_level/level_${n.user.level}.svg`], import.meta.url).href);
1159
- return (a, s) => {
1160
- const o = Be;
1161
- return i(), g("div", Ql, [
1162
- I(a.$slots, "default"),
1163
- c("div", Ml, [
1164
- c("img", {
1191
+ const n = e, s = C(() => n.user.face || Be), t = C(() => new URL((/* @__PURE__ */ Object.assign({ "../../assets/images/user_level/level_1.svg": ct, "../../assets/images/user_level/level_2.svg": rt, "../../assets/images/user_level/level_3.svg": ut, "../../assets/images/user_level/level_4.svg": dt, "../../assets/images/user_level/level_5.svg": vt, "../../assets/images/user_level/level_6.svg": pt }))[`../../assets/images/user_level/level_${n.user.level}.svg`], import.meta.url).href);
1192
+ return (i, l) => {
1193
+ const o = ae;
1194
+ return r(), f("div", rl, [
1195
+ I(i.$slots, "default"),
1196
+ a("div", ul, [
1197
+ a("img", {
1165
1198
  class: "user-card__face",
1166
1199
  alt: "face",
1167
- src: t.value
1168
- }, null, 8, Dl),
1169
- e.user.silence === 1 ? (i(), g("span", Hl, "账号已封禁")) : Q("", !0)
1200
+ src: s.value
1201
+ }, null, 8, dl),
1202
+ e.user.silence === 1 ? (r(), f("span", vl, "账号已封禁")) : $("", !0)
1170
1203
  ]),
1171
- c("div", Vl, [
1172
- c("div", $l, [
1173
- f(o, {
1204
+ a("div", pl, [
1205
+ a("div", ml, [
1206
+ d(o, {
1174
1207
  class: "user-card__name",
1175
1208
  content: e.user.name
1176
1209
  }, null, 8, ["content"]),
1177
- c("img", {
1210
+ a("img", {
1178
1211
  class: "user-card__level",
1179
- src: l.value,
1212
+ src: t.value,
1180
1213
  alt: "level"
1181
- }, null, 8, Tl)
1214
+ }, null, 8, gl)
1182
1215
  ]),
1183
- c("div", Ll, [
1184
- s[0] || (s[0] = c("span", { class: "user-card__uid-icon" }, null, -1)),
1185
- c("span", Rl, A(e.user.mid), 1)
1216
+ a("div", fl, [
1217
+ l[0] || (l[0] = a("span", { class: "user-card__uid-icon" }, null, -1)),
1218
+ a("span", _l, m(e.user.mid), 1)
1186
1219
  ]),
1187
- c("div", Ul, [
1188
- c("span", ql, [
1189
- c("span", jl, A(e.user.following), 1),
1190
- s[1] || (s[1] = c("span", { class: "user-card__stat__label" }, "关注", -1))
1220
+ a("div", hl, [
1221
+ a("span", wl, [
1222
+ a("span", yl, m(e.user.following), 1),
1223
+ l[1] || (l[1] = a("span", { class: "user-card__stat__label" }, "关注", -1))
1191
1224
  ]),
1192
- c("span", Fl, [
1193
- c("span", Ol, A(e.user.follower), 1),
1194
- s[2] || (s[2] = c("span", { class: "user-card__stat__label" }, "粉丝", -1))
1225
+ a("span", kl, [
1226
+ a("span", Al, m(e.user.follower), 1),
1227
+ l[2] || (l[2] = a("span", { class: "user-card__stat__label" }, "粉丝", -1))
1195
1228
  ]),
1196
- c("span", Nl, [
1197
- c("span", Wl, A(e.user.coins), 1),
1198
- s[3] || (s[3] = c("span", { class: "user-card__stat__label" }, "硬币", -1))
1229
+ a("span", bl, [
1230
+ a("span", Cl, m(e.user.coins), 1),
1231
+ l[3] || (l[3] = a("span", { class: "user-card__stat__label" }, "硬币", -1))
1199
1232
  ])
1200
1233
  ])
1201
1234
  ])
1202
1235
  ]);
1203
1236
  };
1204
1237
  }
1205
- }), Jl = { class: "user-info info-row" }, Zl = ["src"], Kl = { class: "user-info__right" }, Yl = { class: "info-row" }, Xl = { class: "user-info__uid" }, es = /* @__PURE__ */ S({
1238
+ }), El = { class: "bili-user-info" }, Bl = ["src"], Sl = { class: "bili-user-info__right" }, $l = { class: "bili-user-info__info-row" }, zl = { class: "bili-user-info__uid" }, Dl = /* @__PURE__ */ B({
1206
1239
  __name: "BiliUserInfo",
1207
1240
  props: {
1208
1241
  user: {}
1209
1242
  },
1210
1243
  setup(e) {
1211
- return (n, t) => {
1212
- const l = Be;
1213
- return i(), g("div", Jl, [
1214
- e.user.face ? (i(), g("img", {
1244
+ return (n, s) => {
1245
+ const t = ae;
1246
+ return r(), f("div", El, [
1247
+ e.user.face ? (r(), f("img", {
1215
1248
  key: 0,
1216
- class: "user-info__face",
1249
+ class: "bili-user-info__face",
1217
1250
  src: e.user.face,
1218
1251
  alt: "face"
1219
- }, null, 8, Zl)) : Q("", !0),
1220
- c("div", Kl, [
1221
- f(l, {
1222
- class: "user-info__name",
1252
+ }, null, 8, Bl)) : $("", !0),
1253
+ a("div", Sl, [
1254
+ d(t, {
1255
+ class: "bili-user-info__name",
1223
1256
  content: e.user.name
1224
1257
  }, null, 8, ["content"]),
1225
- c("div", Yl, [
1226
- t[0] || (t[0] = c("span", { class: "user-info__uid-icon" }, null, -1)),
1227
- c("span", Xl, A(e.user.mid), 1)
1258
+ a("div", $l, [
1259
+ s[0] || (s[0] = a("span", { class: "bili-user-info__uid-icon" }, null, -1)),
1260
+ a("span", zl, m(e.user.mid), 1)
1228
1261
  ])
1229
1262
  ])
1230
1263
  ]);
1231
1264
  };
1232
1265
  }
1233
- }), An = /* @__PURE__ */ U(es, [["__scopeId", "data-v-70fe8db3"]]), Ze = /* @__PURE__ */ S({
1266
+ }), Eo = /* @__PURE__ */ L(Dl, [["__scopeId", "data-v-a22bf16f"]]), mt = /* @__PURE__ */ B({
1234
1267
  __name: "PluginMenuItem",
1235
1268
  props: {
1236
1269
  menu: {}
1237
1270
  },
1238
1271
  setup(e) {
1239
- return (n, t) => {
1240
- const l = Ue, a = Et;
1241
- return !e.menu.children || e.menu.children.length === 0 ? (i(), b(l, {
1272
+ return (n, s) => {
1273
+ const t = Ye, i = Yt;
1274
+ return !e.menu.children || e.menu.children.length === 0 ? (r(), A(t, {
1242
1275
  key: 0,
1243
1276
  index: e.menu.path
1244
1277
  }, {
1245
- title: d(() => [
1246
- M(A(e.menu.title), 1)
1278
+ title: u(() => [
1279
+ k(m(e.menu.title), 1)
1247
1280
  ]),
1248
1281
  _: 1
1249
- }, 8, ["index"])) : (i(), b(a, {
1282
+ }, 8, ["index"])) : (r(), A(i, {
1250
1283
  key: 1,
1251
1284
  index: e.menu.path
1252
1285
  }, {
1253
- title: d(() => [
1254
- M(A(e.menu.title), 1)
1286
+ title: u(() => [
1287
+ k(m(e.menu.title), 1)
1255
1288
  ]),
1256
- default: d(() => [
1257
- (i(!0), g(O, null, ee(e.menu.children, (s) => (i(), b(Ze, {
1258
- key: s.path,
1259
- menu: s
1289
+ default: u(() => [
1290
+ (r(!0), f(R, null, O(e.menu.children, (l) => (r(), A(mt, {
1291
+ key: l.path,
1292
+ menu: l
1260
1293
  }, null, 8, ["menu"]))), 128))
1261
1294
  ]),
1262
1295
  _: 1
1263
1296
  }, 8, ["index"]));
1264
1297
  };
1265
1298
  }
1266
- }), ts = /* @__PURE__ */ S({
1299
+ }), Pl = /* @__PURE__ */ B({
1267
1300
  __name: "PluginMenus",
1268
1301
  props: {
1269
1302
  menus: {},
@@ -1271,58 +1304,58 @@ const gn = {
1271
1304
  },
1272
1305
  emits: ["handleSelect"],
1273
1306
  setup(e, { emit: n }) {
1274
- const t = e, l = (p, h = /* @__PURE__ */ new Map()) => (p.forEach((w) => {
1275
- h.set(w.path, w), w.children && w.children.length > 0 && l(w.children, h);
1276
- }), h), a = k(() => l(t.menus)), s = n, o = (p) => {
1277
- const h = a.value.get(p);
1278
- h && s("handleSelect", h);
1279
- }, r = Ve(), u = k(() => !!r["left-item"] || !!r.left), v = k(() => !!r["right-item"] || !!r.right);
1280
- return (p, h) => {
1281
- const w = Ue, C = Bt;
1282
- return i(), b(C, {
1307
+ const s = e, t = (_, w = /* @__PURE__ */ new Map()) => (_.forEach((g) => {
1308
+ w.set(g.path, g), g.children && g.children.length > 0 && t(g.children, w);
1309
+ }), w), i = C(() => t(s.menus)), l = n, o = (_) => {
1310
+ const w = i.value.get(_);
1311
+ w && l("handleSelect", w);
1312
+ }, c = qe(), v = C(() => !!c["left-item"] || !!c.left), p = C(() => !!c["right-item"] || !!c.right);
1313
+ return (_, w) => {
1314
+ const g = Ye, b = Xt;
1315
+ return r(), A(b, {
1283
1316
  "default-active": e.activeIndex,
1284
1317
  class: "plugin-menus",
1285
1318
  mode: "horizontal",
1286
1319
  ellipsis: !1,
1287
1320
  onSelect: o
1288
1321
  }, {
1289
- default: d(() => [
1290
- u.value ? I(p.$slots, "left-item", { key: 0 }, () => [
1291
- f(w, {
1322
+ default: u(() => [
1323
+ v.value ? I(_.$slots, "left-item", { key: 0 }, () => [
1324
+ d(g, {
1292
1325
  index: "-left",
1293
1326
  style: { "margin-right": "auto" }
1294
1327
  }, {
1295
- default: d(() => [
1296
- I(p.$slots, "left", {}, void 0, !0)
1328
+ default: u(() => [
1329
+ I(_.$slots, "left", {}, void 0, !0)
1297
1330
  ]),
1298
1331
  _: 3
1299
1332
  })
1300
- ], !0) : Q("", !0),
1301
- (i(!0), g(O, null, ee(e.menus, (_) => (i(), b(Ze, {
1302
- key: _.path,
1303
- menu: _,
1304
- index: String(_.path)
1333
+ ], !0) : $("", !0),
1334
+ (r(!0), f(R, null, O(e.menus, (x) => (r(), A(mt, {
1335
+ key: x.path,
1336
+ menu: x,
1337
+ index: String(x.path)
1305
1338
  }, null, 8, ["menu", "index"]))), 128)),
1306
- v.value ? I(p.$slots, "right-item", { key: 1 }, () => [
1307
- f(w, {
1339
+ p.value ? I(_.$slots, "right-item", { key: 1 }, () => [
1340
+ d(g, {
1308
1341
  index: "-right",
1309
1342
  style: { "margin-left": "auto" }
1310
1343
  }, {
1311
- default: d(() => [
1312
- I(p.$slots, "right", {}, void 0, !0)
1344
+ default: u(() => [
1345
+ I(_.$slots, "right", {}, void 0, !0)
1313
1346
  ]),
1314
1347
  _: 3
1315
1348
  })
1316
- ], !0) : Q("", !0)
1349
+ ], !0) : $("", !0)
1317
1350
  ]),
1318
1351
  _: 3
1319
1352
  }, 8, ["default-active"]);
1320
1353
  };
1321
1354
  }
1322
- }), ls = /* @__PURE__ */ U(ts, [["__scopeId", "data-v-6dfc7821"]]), ss = { class: "plugin-page-header" }, ns = { class: "plugin-page-header__user-container" }, as = { class: "plugin-page-header__user-container__info" }, os = ["src"], cs = ["src"], is = {
1355
+ }), Il = /* @__PURE__ */ L(Pl, [["__scopeId", "data-v-6dfc7821"]]), Vl = { class: "plugin-page-header" }, Ml = { class: "plugin-page-header__user-container" }, Ql = { class: "plugin-page-header__user-container__info" }, Hl = ["src"], Tl = ["src"], Ll = {
1323
1356
  key: 1,
1324
1357
  class: "plugin-page-header__user-container__info"
1325
- }, wn = /* @__PURE__ */ S({
1358
+ }, Bo = /* @__PURE__ */ B({
1326
1359
  __name: "PluginPageHeader",
1327
1360
  props: {
1328
1361
  menus: {},
@@ -1330,96 +1363,96 @@ const gn = {
1330
1363
  },
1331
1364
  emits: ["handleMenuSelect"],
1332
1365
  setup(e, { emit: n }) {
1333
- const t = je(), { user: l } = it(t), a = k(() => l.value?.face || _e), s = k(() => new URL((/* @__PURE__ */ Object.assign({ "../../assets/images/user_level/level_1.svg": Fe, "../../assets/images/user_level/level_2.svg": Oe, "../../assets/images/user_level/level_3.svg": Ne, "../../assets/images/user_level/level_4.svg": We, "../../assets/images/user_level/level_5.svg": Ge, "../../assets/images/user_level/level_6.svg": Je }))[`../../assets/images/user_level/level_${l.value?.level ?? 0}.svg`], import.meta.url).href), o = async () => {
1334
- t.setUser(await R.user.switchUser(!0));
1335
- }, r = () => {
1336
- t.deleteUser();
1337
- }, u = n, v = (p) => {
1338
- p && u("handleMenuSelect", p);
1366
+ const s = nt(), { user: t } = Dt(s), i = C(() => t.value?.face || Be), l = C(() => new URL((/* @__PURE__ */ Object.assign({ "../../assets/images/user_level/level_1.svg": ct, "../../assets/images/user_level/level_2.svg": rt, "../../assets/images/user_level/level_3.svg": ut, "../../assets/images/user_level/level_4.svg": dt, "../../assets/images/user_level/level_5.svg": vt, "../../assets/images/user_level/level_6.svg": pt }))[`../../assets/images/user_level/level_${t.value?.level ?? 0}.svg`], import.meta.url).href), o = async () => {
1367
+ s.setUser(await H.user.switchUser(!0));
1368
+ }, c = () => {
1369
+ s.deleteUser();
1370
+ }, v = n, p = (_) => {
1371
+ _ && v("handleMenuSelect", _);
1339
1372
  };
1340
- return te(async () => {
1341
- if (l.value)
1373
+ return ne(async () => {
1374
+ if (t.value)
1342
1375
  try {
1343
- const p = await R.user.getMyInfoByCookie(l.value.userCookie);
1344
- t.setUser(p);
1376
+ const _ = await H.user.getMyInfoByCookie(t.value.userCookie);
1377
+ s.setUser(_);
1345
1378
  } catch {
1346
- X("当前用户 cookie 已失效"), t.deleteUser();
1379
+ ie("当前用户 cookie 已失效"), s.deleteUser();
1347
1380
  }
1348
- }), (p, h) => {
1349
- const w = ls, C = Be, _ = Gl, P = kt, m = It, E = zt, D = St;
1350
- return i(), g("div", ss, [
1351
- f(w, {
1381
+ }), (_, w) => {
1382
+ const g = Il, b = ae, x = xl, V = es, E = ls, D = ss, M = ts;
1383
+ return r(), f("div", Vl, [
1384
+ d(g, {
1352
1385
  class: "plugin-page-header__menus",
1353
1386
  "active-index": e.activeIndex,
1354
1387
  menus: e.menus,
1355
- onHandleSelect: v
1388
+ onHandleSelect: p
1356
1389
  }, null, 8, ["active-index", "menus"]),
1357
- c("div", ns, [
1358
- B(l) ? (i(), b(P, {
1390
+ a("div", Ml, [
1391
+ h(t) ? (r(), A(V, {
1359
1392
  key: 0,
1360
1393
  placement: "bottom-end",
1361
1394
  width: "auto",
1362
1395
  trigger: "hover"
1363
1396
  }, {
1364
- reference: d(() => [
1365
- c("div", as, [
1366
- c("img", {
1397
+ reference: u(() => [
1398
+ a("div", Ql, [
1399
+ a("img", {
1367
1400
  class: "plugin-page-header__user-container__info__face",
1368
- src: a.value,
1401
+ src: i.value,
1369
1402
  alt: "face"
1370
- }, null, 8, os),
1371
- f(C, {
1403
+ }, null, 8, Hl),
1404
+ d(b, {
1372
1405
  class: "plugin-page-header__user-container__info__name",
1373
- content: B(l).name
1406
+ content: h(t).name
1374
1407
  }, null, 8, ["content"]),
1375
- c("img", {
1408
+ a("img", {
1376
1409
  class: "plugin-page-header__user-container__info__level",
1377
- src: s.value,
1410
+ src: l.value,
1378
1411
  alt: "level img"
1379
- }, null, 8, cs)
1412
+ }, null, 8, Tl)
1380
1413
  ])
1381
1414
  ]),
1382
- default: d(() => [
1383
- f(_, { user: B(l) }, null, 8, ["user"])
1415
+ default: u(() => [
1416
+ d(x, { user: h(t) }, null, 8, ["user"])
1384
1417
  ]),
1385
1418
  _: 1
1386
- })) : (i(), g("div", is, [...h[0] || (h[0] = [
1387
- c("img", {
1419
+ })) : (r(), f("div", Ll, [...w[0] || (w[0] = [
1420
+ a("img", {
1388
1421
  class: "plugin-page-header__user-container__info__face",
1389
1422
  alt: "",
1390
- src: _e
1423
+ src: Be
1391
1424
  }, null, -1),
1392
- c("span", { class: "plugin-page-header__user-container__info__name" }, "未登录", -1)
1425
+ a("span", { class: "plugin-page-header__user-container__info__name" }, "未登录", -1)
1393
1426
  ])])),
1394
- f(D, {
1427
+ d(M, {
1395
1428
  placement: "bottom-end",
1396
1429
  trigger: "click",
1397
1430
  size: "default"
1398
1431
  }, {
1399
- dropdown: d(() => [
1400
- f(E, null, {
1401
- default: d(() => [
1402
- f(m, { onClick: o }, {
1403
- default: d(() => [...h[1] || (h[1] = [
1404
- M("选择用户", -1)
1432
+ dropdown: u(() => [
1433
+ d(D, null, {
1434
+ default: u(() => [
1435
+ d(E, { onClick: o }, {
1436
+ default: u(() => [...w[1] || (w[1] = [
1437
+ k("选择用户", -1)
1405
1438
  ])]),
1406
1439
  _: 1
1407
1440
  }),
1408
- B(l) ? (i(), b(m, {
1441
+ h(t) ? (r(), A(E, {
1409
1442
  key: 0,
1410
- onClick: r
1443
+ onClick: c
1411
1444
  }, {
1412
- default: d(() => [...h[2] || (h[2] = [
1413
- M("取消选择", -1)
1445
+ default: u(() => [...w[2] || (w[2] = [
1446
+ k("取消选择", -1)
1414
1447
  ])]),
1415
1448
  _: 1
1416
- })) : Q("", !0)
1449
+ })) : $("", !0)
1417
1450
  ]),
1418
1451
  _: 1
1419
1452
  })
1420
1453
  ]),
1421
- default: d(() => [
1422
- h[3] || (h[3] = c("span", { class: "plugin-page-header__user-container__arrow" }, "▼", -1))
1454
+ default: u(() => [
1455
+ w[3] || (w[3] = a("span", { class: "plugin-page-header__user-container__arrow" }, "▼", -1))
1423
1456
  ]),
1424
1457
  _: 1
1425
1458
  })
@@ -1427,13 +1460,13 @@ const gn = {
1427
1460
  ]);
1428
1461
  };
1429
1462
  }
1430
- }), rs = {}, us = { class: "plugin-page-container" };
1431
- function ds(e, n) {
1432
- return i(), g("div", us, [
1463
+ }), Rl = {}, Ul = { class: "plugin-page-container" };
1464
+ function Fl(e, n) {
1465
+ return r(), f("div", Ul, [
1433
1466
  I(e.$slots, "default", {}, void 0, !0)
1434
1467
  ]);
1435
1468
  }
1436
- const yn = /* @__PURE__ */ U(rs, [["render", ds], ["__scopeId", "data-v-ddcb3392"]]), vs = { class: "page-table__toolbar" }, ps = { class: "page-table__actions" }, gs = /* @__PURE__ */ S({
1469
+ const So = /* @__PURE__ */ L(Rl, [["render", Fl], ["__scopeId", "data-v-ddcb3392"]]), ql = { class: "page-table__toolbar" }, Ol = { class: "page-table__actions" }, jl = /* @__PURE__ */ B({
1437
1470
  inheritAttrs: !1,
1438
1471
  __name: "PageTable",
1439
1472
  props: {
@@ -1449,176 +1482,1195 @@ const yn = /* @__PURE__ */ U(rs, [["render", ds], ["__scopeId", "data-v-ddcb3392
1449
1482
  tableLayout: { default: "auto" }
1450
1483
  },
1451
1484
  emits: ["reset", "search"],
1452
- setup(e, { expose: n, emit: t }) {
1453
- const l = ct(), a = k(() => ({
1454
- class: l.class,
1455
- style: l.style
1456
- })), s = k(() => {
1457
- const { class: N, style: q, ...ne } = l;
1458
- return ne;
1459
- }), o = e, r = y(!1), u = k(() => o.pageParams ? o.pageParams : {
1485
+ setup(e, { expose: n, emit: s }) {
1486
+ const t = $t(), i = C(() => ({
1487
+ class: t.class,
1488
+ style: t.style
1489
+ })), l = C(() => {
1490
+ const { class: Q, style: j, ...de } = t;
1491
+ return de;
1492
+ }), o = e, c = z(!1), v = C(() => o.pageParams ? o.pageParams : {
1460
1493
  pageNum: 1,
1461
1494
  pageSize: o.pageSizes[0]
1462
- }), { pageData: v, tableData: p, loading: h, refresh: w, resetAndRefresh: C, handleSizeChange: _, handleCurrPageChange: P } = Tt({
1495
+ }), {
1496
+ pageData: p,
1497
+ tableData: _,
1498
+ loading: w,
1499
+ refresh: g,
1500
+ resetAndRefresh: b,
1501
+ resetPageAndRefresh: x,
1502
+ handleSizeChange: V,
1503
+ handleCurrPageChange: E
1504
+ } = at({
1463
1505
  fetchPage: o.fetchPage,
1464
- pageParams: () => u.value,
1506
+ pageParams: () => v.value,
1465
1507
  queryParams: o.queryParams ? () => o.queryParams : void 0,
1466
1508
  autoLoad: o.autoLoad,
1467
1509
  onLoaded: () => {
1468
- r.value = !0, x.value?.setScrollTop(0);
1510
+ c.value = !0, S.value?.setScrollTop(0);
1469
1511
  }
1470
- }), m = t, E = () => {
1471
- m("search"), w();
1472
- }, D = async () => {
1473
- m("reset"), await He(), await C();
1474
- }, { elementRef: $, height: V } = Lt("tableWrapperRef"), x = le("tableRef"), H = k(() => o.tableHeight ? o.tableHeight : V.value), L = k(() => ({
1512
+ }), D = s, M = () => {
1513
+ D("search"), g();
1514
+ }, U = async () => {
1515
+ D("reset"), await we(), await b();
1516
+ }, { elementRef: P, height: y } = gs("tableWrapperRef"), S = K("tableRef"), F = C(() => o.tableHeight ? o.tableHeight : y.value), X = C(() => ({
1475
1517
  search: o.actions.includes("search"),
1476
1518
  resetQuery: o.actions.includes("resetQuery")
1477
- })), ve = k(() => o.pageSizes && o.pageSizes.length > 1 ? "total, sizes, prev, pager, next, jumper" : "total, prev, pager, next, jumper"), T = !!Ve().query;
1519
+ })), ee = C(() => o.pageSizes && o.pageSizes.length > 1 ? "total, sizes, prev, pager, next, jumper" : "total, prev, pager, next, jumper"), ue = !!qe().query;
1478
1520
  return n({
1479
- loading: h,
1480
- tableRef: x,
1481
- tableData: p,
1482
- pageData: v,
1483
- refresh: w,
1484
- resetAndRefresh: C,
1485
- getSelectionRows: x.value?.getSelectionRows,
1486
- toggleRowSelection: x.value?.toggleRowSelection,
1487
- setCurrentRow: x.value?.setCurrentRow,
1488
- clearSelection: x.value?.clearSelection,
1489
- scrollTo: x.value?.scrollTo
1490
- }), (N, q) => {
1491
- const ne = se, Ke = Qt, Ye = Mt, Xe = Pt, et = Dt, tt = ye;
1492
- return F((i(), g("div", G({ class: "page-table" }, a.value), [
1493
- c("div", vs, [
1494
- c("div", {
1495
- class: W(["page-table__query", T ? "has-query" : ""])
1521
+ loading: w,
1522
+ tableRef: S,
1523
+ tableData: _,
1524
+ pageData: p,
1525
+ refresh: g,
1526
+ resetAndRefresh: b,
1527
+ resetPageAndRefresh: x,
1528
+ getSelectionRows: S.value?.getSelectionRows,
1529
+ toggleRowSelection: S.value?.toggleRowSelection,
1530
+ setCurrentRow: S.value?.setCurrentRow,
1531
+ clearSelection: S.value?.clearSelection,
1532
+ scrollTo: S.value?.scrollTo
1533
+ }), (Q, j) => {
1534
+ const de = Z, wt = as, yt = Xe, kt = ns, At = et, bt = De;
1535
+ return W((r(), f("div", G({ class: "page-table" }, i.value), [
1536
+ a("div", ql, [
1537
+ a("div", {
1538
+ class: se(["page-table__query", ue ? "has-query" : ""])
1496
1539
  }, [
1497
- I(N.$slots, "query", {}, void 0, !0),
1498
- c("div", ps, [
1499
- I(N.$slots, "actions", {}, void 0, !0),
1500
- L.value.search ? (i(), b(ne, {
1540
+ I(Q.$slots, "query", {}, void 0, !0),
1541
+ a("div", Ol, [
1542
+ I(Q.$slots, "actions", {}, void 0, !0),
1543
+ X.value.search ? (r(), A(de, {
1501
1544
  key: 0,
1502
1545
  type: "primary",
1503
- onClick: E
1546
+ onClick: M
1504
1547
  }, {
1505
- default: d(() => [
1506
- M(A(e.searchActionLabel), 1)
1548
+ default: u(() => [
1549
+ k(m(e.searchActionLabel), 1)
1507
1550
  ]),
1508
1551
  _: 1
1509
- })) : Q("", !0),
1510
- L.value.resetQuery ? (i(), b(ne, {
1552
+ })) : $("", !0),
1553
+ X.value.resetQuery ? (r(), A(de, {
1511
1554
  key: 1,
1512
- onClick: D
1555
+ onClick: U
1513
1556
  }, {
1514
- default: d(() => [...q[2] || (q[2] = [
1515
- M("重置", -1)
1557
+ default: u(() => [...j[2] || (j[2] = [
1558
+ k("重置", -1)
1516
1559
  ])]),
1517
1560
  _: 1
1518
- })) : Q("", !0)
1561
+ })) : $("", !0)
1519
1562
  ])
1520
1563
  ], 2)
1521
1564
  ]),
1522
- c("div", {
1565
+ a("div", {
1523
1566
  ref_key: "tableWrapperRef",
1524
- ref: $,
1567
+ ref: P,
1525
1568
  class: "page-table__table-wrapper"
1526
1569
  }, [
1527
- r.value ? (i(), b(Xe, G({
1570
+ c.value ? (r(), A(kt, G({
1528
1571
  key: 0,
1529
1572
  ref_key: "tableRef",
1530
- ref: x
1531
- }, s.value, {
1573
+ ref: S
1574
+ }, l.value, {
1532
1575
  class: "page-table__table",
1533
- data: B(p),
1576
+ data: h(_),
1534
1577
  border: "",
1535
- height: H.value,
1578
+ height: F.value,
1536
1579
  "table-layout": e.tableLayout,
1537
1580
  "highlight-current-row": e.selectionMode === "single"
1538
1581
  }), {
1539
- empty: d(() => [
1540
- I(N.$slots, "empty", {}, () => [
1541
- f(Ye, { description: "没有数据" })
1582
+ empty: u(() => [
1583
+ I(Q.$slots, "empty", {}, () => [
1584
+ d(yt, { description: "没有数据" })
1542
1585
  ], !0)
1543
1586
  ]),
1544
- default: d(() => [
1545
- e.selectionMode === "multiple" ? (i(), b(Ke, {
1587
+ default: u(() => [
1588
+ e.selectionMode === "multiple" ? (r(), A(wt, {
1546
1589
  key: 0,
1547
1590
  type: "selection",
1548
1591
  width: "55"
1549
- })) : Q("", !0),
1550
- I(N.$slots, "default", {}, void 0, !0)
1592
+ })) : $("", !0),
1593
+ I(Q.$slots, "default", {}, void 0, !0)
1551
1594
  ]),
1552
1595
  _: 3
1553
- }, 16, ["data", "height", "table-layout", "highlight-current-row"])) : Q("", !0)
1596
+ }, 16, ["data", "height", "table-layout", "highlight-current-row"])) : $("", !0)
1554
1597
  ], 512),
1555
- f(et, {
1598
+ d(At, {
1556
1599
  class: "page-table__pagination",
1557
- "current-page": B(v).pageNum,
1558
- "onUpdate:currentPage": q[0] || (q[0] = (pe) => B(v).pageNum = pe),
1559
- "page-size": B(v).pageSize,
1560
- "onUpdate:pageSize": q[1] || (q[1] = (pe) => B(v).pageSize = pe),
1600
+ "current-page": h(p).pageNum,
1601
+ "onUpdate:currentPage": j[0] || (j[0] = (ke) => h(p).pageNum = ke),
1602
+ "page-size": h(p).pageSize,
1603
+ "onUpdate:pageSize": j[1] || (j[1] = (ke) => h(p).pageSize = ke),
1561
1604
  "page-sizes": e.pageSizes,
1562
- total: B(v).total,
1563
- layout: ve.value,
1564
- onCurrentChange: B(P),
1565
- onSizeChange: B(_)
1605
+ total: h(p).total,
1606
+ layout: ee.value,
1607
+ onCurrentChange: h(E),
1608
+ onSizeChange: h(V)
1566
1609
  }, null, 8, ["current-page", "page-size", "page-sizes", "total", "layout", "onCurrentChange", "onSizeChange"])
1567
1610
  ], 16)), [
1568
- [tt, B(h)]
1611
+ [bt, h(w)]
1612
+ ]);
1613
+ };
1614
+ }
1615
+ }), $o = /* @__PURE__ */ L(jl, [["__scopeId", "data-v-293a15d1"]]), Ue = "delete-confirm-dialog:delete-source-file", Nl = /* @__PURE__ */ B({
1616
+ __name: "DeleteConfirmDialog",
1617
+ props: {
1618
+ visible: { type: Boolean },
1619
+ title: { default: "提示" },
1620
+ message: {},
1621
+ confirmButtonText: { default: "删除" },
1622
+ cancelButtonText: { default: "取消" }
1623
+ },
1624
+ emits: ["confirm", "cancel"],
1625
+ setup(e, { emit: n }) {
1626
+ const s = n, t = z(localStorage.getItem(Ue) === "true");
1627
+ function i() {
1628
+ localStorage.setItem(Ue, String(t.value));
1629
+ }
1630
+ function l() {
1631
+ s("confirm", t.value);
1632
+ }
1633
+ function o() {
1634
+ s("cancel");
1635
+ }
1636
+ return (c, v) => {
1637
+ const p = os, _ = Z, w = re;
1638
+ return r(), A(w, {
1639
+ "model-value": e.visible,
1640
+ title: e.title,
1641
+ width: "420px",
1642
+ "close-on-click-modal": !1,
1643
+ "close-on-press-escape": !1,
1644
+ onClose: o
1645
+ }, {
1646
+ footer: u(() => [
1647
+ d(_, { onClick: o }, {
1648
+ default: u(() => [
1649
+ k(m(e.cancelButtonText), 1)
1650
+ ]),
1651
+ _: 1
1652
+ }),
1653
+ d(_, {
1654
+ type: "danger",
1655
+ onClick: l
1656
+ }, {
1657
+ default: u(() => [
1658
+ k(m(e.confirmButtonText), 1)
1659
+ ]),
1660
+ _: 1
1661
+ })
1662
+ ]),
1663
+ default: u(() => [
1664
+ a("div", null, m(e.message), 1),
1665
+ d(p, {
1666
+ modelValue: t.value,
1667
+ "onUpdate:modelValue": v[0] || (v[0] = (g) => t.value = g),
1668
+ style: { "margin-top": "16px" },
1669
+ onChange: i
1670
+ }, {
1671
+ default: u(() => [...v[1] || (v[1] = [
1672
+ k(" 同时删除本地磁盘源文件 ", -1)
1673
+ ])]),
1674
+ _: 1
1675
+ }, 8, ["modelValue"])
1676
+ ]),
1677
+ _: 1
1678
+ }, 8, ["model-value", "title"]);
1679
+ };
1680
+ }
1681
+ }), gt = /* @__PURE__ */ B({
1682
+ __name: "DownloadStatus",
1683
+ props: {
1684
+ task: {}
1685
+ },
1686
+ setup(e) {
1687
+ const n = e, s = C(() => {
1688
+ switch (n.task.status) {
1689
+ case "pending":
1690
+ return "info";
1691
+ case "downloading":
1692
+ return "primary";
1693
+ case "paused":
1694
+ return "info";
1695
+ case "canceled":
1696
+ return "warning";
1697
+ case "merging":
1698
+ return "primary";
1699
+ case "failed":
1700
+ return "danger";
1701
+ case "completed":
1702
+ return "success";
1703
+ default:
1704
+ return "info";
1705
+ }
1706
+ }), t = C(() => We[n.task.status]);
1707
+ return (i, l) => {
1708
+ const o = tt;
1709
+ return r(), A(o, {
1710
+ type: s.value,
1711
+ "disable-transitions": "",
1712
+ size: "small"
1713
+ }, {
1714
+ default: u(() => [
1715
+ k(m(t.value), 1)
1716
+ ]),
1717
+ _: 1
1718
+ }, 8, ["type"]);
1719
+ };
1720
+ }
1721
+ }), ft = /* @__PURE__ */ B({
1722
+ __name: "DownloadProgress",
1723
+ props: {
1724
+ task: {}
1725
+ },
1726
+ setup(e) {
1727
+ const n = e, s = C(() => {
1728
+ switch (n.task.status) {
1729
+ case "failed":
1730
+ return "exception";
1731
+ case "completed":
1732
+ return "success";
1733
+ default:
1734
+ return;
1735
+ }
1736
+ }), t = C(() => jt(n.task.status, ["downloading", "merging"]));
1737
+ return (i, l) => {
1738
+ const o = Je;
1739
+ return r(), A(o, {
1740
+ percentage: e.task.progress ? e.task.progress.percent : 0,
1741
+ "stroke-width": 8,
1742
+ "show-text": !0,
1743
+ status: s.value,
1744
+ striped: t.value,
1745
+ "striped-flow": t.value,
1746
+ duration: 20
1747
+ }, null, 8, ["percentage", "status", "striped", "striped-flow"]);
1748
+ };
1749
+ }
1750
+ }), Se = (e) => Nt(e / 1024), Zl = (e) => e === 0 ? "0 KB/s" : e < 1024 ? e.toFixed(1) + " KB/s" : (e / 1024).toFixed(1) + " MB/s", Fe = (e) => e <= 1e4 ? String(e) : (e / 1e4).toFixed(1) + "万", Wl = { class: "detail-item" }, Gl = { class: "value" }, Jl = { class: "detail-item" }, Kl = { class: "value" }, Yl = { class: "detail-item" }, Xl = { class: "value" }, en = /* @__PURE__ */ B({
1751
+ __name: "DownloadProgressDetails",
1752
+ props: {
1753
+ task: {},
1754
+ resourceCount: {},
1755
+ isCompact: { type: Boolean }
1756
+ },
1757
+ setup(e) {
1758
+ return (n, s) => (r(), f("div", {
1759
+ class: "download-progress-details",
1760
+ style: xe({ gap: e.isCompact ? "10px" : "20px" })
1761
+ }, [
1762
+ e.task.progress ? (r(), f(R, { key: 0 }, [
1763
+ a("div", Wl, [
1764
+ s[0] || (s[0] = a("span", { class: "label" }, "速度:", -1)),
1765
+ a("span", Gl, m(h(Zl)(e.task.progress.speedKBps)), 1)
1766
+ ]),
1767
+ a("div", Jl, [
1768
+ s[2] || (s[2] = a("span", { class: "label" }, "文件:", -1)),
1769
+ a("div", Kl, [
1770
+ a("span", null, m(e.task.progress?.currentItem), 1),
1771
+ s[1] || (s[1] = a("span", null, " / ", -1)),
1772
+ a("span", null, m(e.resourceCount), 1)
1773
+ ])
1774
+ ]),
1775
+ a("div", Yl, [
1776
+ s[4] || (s[4] = a("span", { class: "label" }, "已完成:", -1)),
1777
+ a("div", Xl, [
1778
+ a("span", null, m(h(Se)(e.task.progress.completedBytes)), 1),
1779
+ s[3] || (s[3] = a("span", null, " / ", -1)),
1780
+ a("span", null, m(h(Se)(e.task.progress.totalBytes)), 1)
1781
+ ])
1782
+ ])
1783
+ ], 64)) : $("", !0)
1784
+ ], 4));
1785
+ }
1786
+ }), _t = /* @__PURE__ */ L(en, [["__scopeId", "data-v-1923a35f"]]), tn = { class: "download-result" }, sn = {
1787
+ key: 0,
1788
+ class: "detail-item"
1789
+ }, ln = { class: "detail-item" }, nn = { class: "detail-item" }, an = /* @__PURE__ */ B({
1790
+ __name: "DownloadResult",
1791
+ props: {
1792
+ task: {},
1793
+ videoCount: {},
1794
+ resourceCount: {}
1795
+ },
1796
+ setup(e) {
1797
+ return (n, s) => {
1798
+ const t = N;
1799
+ return r(), f("div", tn, [
1800
+ s[0] || (s[0] = a("span", { class: "hint" }, "总共:", -1)),
1801
+ e.task.result ? (r(), f("span", sn, [
1802
+ a("span", null, m(h(Se)(e.task.result.totalBytes)), 1)
1803
+ ])) : $("", !0),
1804
+ a("span", ln, [
1805
+ d(t, { icon: "video" }),
1806
+ a("span", null, m(e.videoCount) + " 个视频", 1)
1807
+ ]),
1808
+ a("span", nn, [
1809
+ d(t, { icon: "file" }),
1810
+ a("span", null, m(e.resourceCount) + " 个文件", 1)
1811
+ ])
1812
+ ]);
1813
+ };
1814
+ }
1815
+ }), ht = /* @__PURE__ */ L(an, [["__scopeId", "data-v-a28b3695"]]), on = { class: "video-stats-info" }, cn = { class: "value" }, rn = /* @__PURE__ */ B({
1816
+ __name: "VideoStatsInfo",
1817
+ props: {
1818
+ stat: {},
1819
+ fields: { default: () => ["like", "coin", "favorite", "share", "reply"] }
1820
+ },
1821
+ setup(e) {
1822
+ const n = e, s = {
1823
+ like: "heart",
1824
+ coin: "money-cny-circle",
1825
+ favorite: "star",
1826
+ share: "share-forward",
1827
+ reply: "discuss"
1828
+ }, t = C(() => {
1829
+ const i = [];
1830
+ for (const l of n.fields)
1831
+ i.push({
1832
+ icon: s[l],
1833
+ value: n.stat[l]
1834
+ });
1835
+ return i;
1836
+ });
1837
+ return (i, l) => {
1838
+ const o = N;
1839
+ return r(), f("div", on, [
1840
+ (r(!0), f(R, null, O(t.value, (c) => (r(), f("div", {
1841
+ class: "stat-item",
1842
+ key: c.icon
1843
+ }, [
1844
+ d(o, {
1845
+ icon: c.icon
1846
+ }, null, 8, ["icon"]),
1847
+ a("span", cn, m(c.value), 1)
1848
+ ]))), 128))
1849
+ ]);
1850
+ };
1851
+ }
1852
+ }), un = /* @__PURE__ */ L(rn, [["__scopeId", "data-v-503952a4"]]), dn = /* @__PURE__ */ B({
1853
+ __name: "DownloadResourceTag",
1854
+ props: {
1855
+ type: {}
1856
+ },
1857
+ setup(e) {
1858
+ const n = e, s = C(() => Wt[n.type]), t = {
1859
+ audio: "file-music",
1860
+ video: "file-video",
1861
+ dm: "keyboard",
1862
+ cover: "image",
1863
+ subtitle: "closed-captioning"
1864
+ };
1865
+ return (i, l) => {
1866
+ const o = tt;
1867
+ return r(), A(o, {
1868
+ type: "primary",
1869
+ effect: "plain",
1870
+ "disable-transitions": "",
1871
+ size: "small"
1872
+ }, {
1873
+ default: u(() => [
1874
+ d(it, {
1875
+ icon: t[e.type]
1876
+ }, {
1877
+ default: u(() => [
1878
+ k(m(s.value), 1)
1879
+ ]),
1880
+ _: 1
1881
+ }, 8, ["icon"])
1882
+ ]),
1883
+ _: 1
1884
+ });
1885
+ };
1886
+ }
1887
+ }), vn = { class: "download-video-part-card" }, pn = { class: "left-info" }, mn = { class: "right-info" }, gn = /* @__PURE__ */ B({
1888
+ __name: "DownloadVideoPartCard",
1889
+ props: {
1890
+ part: {}
1891
+ },
1892
+ setup(e) {
1893
+ const n = e, s = C(() => n.part.resources.find((l) => l.type === "audio")?.source.audioQuality), t = C(() => n.part.resources.find((l) => l.type === "video")?.source.videoQuality), i = C(() => n.part.resources.find((l) => l.type === "video")?.source.videoCodec);
1894
+ return (l, o) => {
1895
+ const c = ae, v = is;
1896
+ return r(), f("div", vn, [
1897
+ a("div", pn, [
1898
+ a("div", null, m(e.part.snapshot.page) + "P", 1),
1899
+ d(c, {
1900
+ content: e.part.snapshot.part
1901
+ }, {
1902
+ default: u(() => [
1903
+ k(m(e.part.snapshot.part), 1)
1904
+ ]),
1905
+ _: 1
1906
+ }, 8, ["content"])
1907
+ ]),
1908
+ a("div", mn, [
1909
+ s.value ? (r(), A(v, {
1910
+ key: 0,
1911
+ type: "info",
1912
+ effect: "plain"
1913
+ }, {
1914
+ default: u(() => [
1915
+ k(m(h(Qt)[s.value]), 1)
1916
+ ]),
1917
+ _: 1
1918
+ })) : $("", !0),
1919
+ t.value ? (r(), A(v, {
1920
+ key: 1,
1921
+ type: "info",
1922
+ effect: "plain"
1923
+ }, {
1924
+ default: u(() => [
1925
+ k(m(h(Ht)[t.value]), 1)
1926
+ ]),
1927
+ _: 1
1928
+ })) : $("", !0),
1929
+ i.value ? (r(), A(v, {
1930
+ key: 2,
1931
+ type: "info",
1932
+ effect: "plain"
1933
+ }, {
1934
+ default: u(() => [
1935
+ k(m(h(Tt)[i.value]), 1)
1936
+ ]),
1937
+ _: 1
1938
+ })) : $("", !0),
1939
+ a("span", null, m(h(ze)(e.part.snapshot.duration)), 1)
1940
+ ])
1941
+ ]);
1942
+ };
1943
+ }
1944
+ }), fn = /* @__PURE__ */ L(gn, [["__scopeId", "data-v-40387fb6"]]), _n = (e) => {
1945
+ const n = Lt(e.tid), s = Rt(e.tid_v2);
1946
+ return s ? s.subZoneName ? `${s.mainZoneName} > ${s.subZoneName}` : s.mainZoneName : n ? n.subZoneName ? `${n.mainZoneName} > ${n.subZoneName}` : n.mainZoneName : "";
1947
+ }, hn = { class: "download-video-card" }, wn = { class: "info-row" }, yn = { class: "info-left" }, kn = { class: "cover-image" }, An = { class: "cover-placeholder" }, bn = { class: "download-cover-stats" }, Cn = { class: "download-cover-stats__duration" }, xn = { class: "info-right" }, En = { class: "info-row" }, Bn = { class: "info-row" }, Sn = { class: "user-info" }, $n = ["src"], zn = { class: "user-name" }, Dn = { class: "zone" }, Pn = { class: "pubdate" }, In = { class: "info-row stats" }, Vn = { class: "bvid" }, Mn = { class: "info-row" }, Qn = { class: "part-list" }, Hn = /* @__PURE__ */ B({
1948
+ __name: "DownloadVideoCard",
1949
+ props: {
1950
+ video: {}
1951
+ },
1952
+ emits: ["open-folder"],
1953
+ setup(e, { emit: n }) {
1954
+ const s = e, t = C(() => s.video.snapshot), i = C(() => {
1955
+ const c = s.video.parts;
1956
+ return c.length >= 1 ? c[0].resources.map((v) => v.type) : [];
1957
+ }), l = async () => {
1958
+ window.open(`https://www.bilibili.com/video/${t.value.bvid}`);
1959
+ }, o = n;
1960
+ return (c, v) => {
1961
+ const p = Pe, _ = st, w = it, g = ae;
1962
+ return r(), f("div", hn, [
1963
+ a("div", wn, [
1964
+ a("div", yn, [
1965
+ a("div", {
1966
+ class: "cover",
1967
+ onClick: l
1968
+ }, [
1969
+ a("div", kn, [
1970
+ d(_, {
1971
+ src: t.value.pic,
1972
+ fit: "cover"
1973
+ }, {
1974
+ error: u(() => [
1975
+ a("div", An, [
1976
+ d(p, null, {
1977
+ default: u(() => [
1978
+ d(h(ot))
1979
+ ]),
1980
+ _: 1
1981
+ })
1982
+ ])
1983
+ ]),
1984
+ _: 1
1985
+ }, 8, ["src"]),
1986
+ a("div", bn, [
1987
+ d(w, { icon: "video" }, {
1988
+ default: u(() => [
1989
+ k(m(h(Fe)(t.value.stat.view)), 1)
1990
+ ]),
1991
+ _: 1
1992
+ }),
1993
+ d(w, { icon: "keyboard" }, {
1994
+ default: u(() => [
1995
+ k(m(h(Fe)(t.value.stat.danmaku)), 1)
1996
+ ]),
1997
+ _: 1
1998
+ }),
1999
+ v[0] || (v[0] = a("span", null, null, -1)),
2000
+ v[1] || (v[1] = a("span", null, null, -1)),
2001
+ a("span", Cn, m(h(ze)(t.value.duration)), 1)
2002
+ ])
2003
+ ])
2004
+ ])
2005
+ ]),
2006
+ a("div", xn, [
2007
+ a("div", En, [
2008
+ d(g, {
2009
+ class: "title",
2010
+ content: t.value.title
2011
+ }, {
2012
+ default: u(() => [
2013
+ k(m(t.value.title), 1)
2014
+ ]),
2015
+ _: 1
2016
+ }, 8, ["content"])
2017
+ ]),
2018
+ a("div", Bn, [
2019
+ a("div", Sn, [
2020
+ a("img", {
2021
+ class: "user-face",
2022
+ src: t.value.owner.face,
2023
+ alt: "face"
2024
+ }, null, 8, $n),
2025
+ a("div", zn, m(t.value.owner.name), 1)
2026
+ ]),
2027
+ a("div", Dn, m(h(_n)(t.value)), 1),
2028
+ a("div", Pn, m(h(fe)(t.value.pubdate)), 1)
2029
+ ]),
2030
+ a("div", In, [
2031
+ a("div", Vn, m(t.value.bvid), 1),
2032
+ d(un, {
2033
+ stat: t.value.stat
2034
+ }, null, 8, ["stat"])
2035
+ ]),
2036
+ a("div", Mn, [
2037
+ v[2] || (v[2] = a("div", null, "下载的资源:", -1)),
2038
+ (r(!0), f(R, null, O(i.value, (b) => (r(), A(dn, {
2039
+ key: b,
2040
+ type: b
2041
+ }, null, 8, ["type"]))), 128))
2042
+ ])
2043
+ ])
2044
+ ]),
2045
+ a("div", Qn, [
2046
+ v[3] || (v[3] = a("div", { class: "header" }, "视频分P:", -1)),
2047
+ (r(!0), f(R, null, O(e.video.parts, (b, x) => (r(), A(fn, {
2048
+ key: b.snapshot.cid,
2049
+ part: b,
2050
+ onClick: (V) => o("open-folder", x)
2051
+ }, null, 8, ["part", "onClick"]))), 128))
2052
+ ])
1569
2053
  ]);
1570
2054
  };
1571
2055
  }
1572
- }), bn = /* @__PURE__ */ U(gs, [["__scopeId", "data-v-7f79e7fd"]]);
2056
+ }), Tn = /* @__PURE__ */ L(Hn, [["__scopeId", "data-v-48f910dd"]]), Ln = { class: "task-modal" }, Rn = {
2057
+ key: 0,
2058
+ class: "dialog-content"
2059
+ }, Un = { key: 1 }, Fn = { class: "video-list-container" }, qn = { class: "header" }, On = /* @__PURE__ */ B({
2060
+ __name: "DownloadDetailsDialog",
2061
+ props: /* @__PURE__ */ J({
2062
+ task: {}
2063
+ }, {
2064
+ modelValue: { required: !0, type: Boolean },
2065
+ modelModifiers: {}
2066
+ }),
2067
+ emits: ["update:modelValue"],
2068
+ setup(e) {
2069
+ const n = e, s = he(e, "modelValue"), t = C(() => n.task?.videos.reduce((c, v) => c + v.parts.length, 0) ?? 0), i = C(() => n.task?.videos.reduce((c, v) => c + v.parts.reduce((p, _) => p + _.resources.length, 0), 0) ?? 0), l = K("refVideoList");
2070
+ le(
2071
+ () => s.value,
2072
+ (c) => {
2073
+ c && l.value && we(() => {
2074
+ l.value?.scrollTo(0, 0);
2075
+ });
2076
+ }
2077
+ );
2078
+ const o = async (c, v) => {
2079
+ n.task && await H.download.openFolder(n.task.id, c, v);
2080
+ };
2081
+ return (c, v) => {
2082
+ const p = rs, _ = cs, w = re;
2083
+ return r(), f("div", Ln, [
2084
+ d(w, {
2085
+ title: "任务详情",
2086
+ modelValue: s.value,
2087
+ "onUpdate:modelValue": v[0] || (v[0] = (g) => s.value = g),
2088
+ width: "80%",
2089
+ style: { "max-height": "88vh" },
2090
+ "close-on-click-modal": !0,
2091
+ "close-on-press-escape": !0,
2092
+ "show-close": !0,
2093
+ "align-center": ""
2094
+ }, {
2095
+ footer: u(() => [...v[3] || (v[3] = [
2096
+ a("div", { class: "dialog-footer" }, null, -1)
2097
+ ])]),
2098
+ default: u(() => [
2099
+ e.task ? (r(), f("div", Rn, [
2100
+ d(_, {
2101
+ border: "",
2102
+ column: 2
2103
+ }, {
2104
+ default: u(() => [
2105
+ d(p, { label: "任务 ID" }, {
2106
+ default: u(() => [
2107
+ k(m(e.task.id), 1)
2108
+ ]),
2109
+ _: 1
2110
+ }),
2111
+ d(p, { label: "任务类型" }, {
2112
+ default: u(() => [
2113
+ k(m(e.task.title), 1)
2114
+ ]),
2115
+ _: 1
2116
+ }),
2117
+ d(p, { label: "创建时间" }, {
2118
+ default: u(() => [
2119
+ k(m(h(fe)(e.task.createdAt)), 1)
2120
+ ]),
2121
+ _: 1
2122
+ }),
2123
+ d(p, { label: "更新时间" }, {
2124
+ default: u(() => [
2125
+ k(m(e.task.updatedAt ? h(fe)(e.task.updatedAt) : "-"), 1)
2126
+ ]),
2127
+ _: 1
2128
+ }),
2129
+ d(p, { label: "任务状态" }, {
2130
+ default: u(() => [
2131
+ d(gt, { task: e.task }, null, 8, ["task"])
2132
+ ]),
2133
+ _: 1
2134
+ }),
2135
+ d(p, { label: "任务进度" }, {
2136
+ default: u(() => [
2137
+ e.task.progress ? (r(), A(ft, {
2138
+ key: 0,
2139
+ task: e.task
2140
+ }, null, 8, ["task"])) : (r(), f("span", Un, "-"))
2141
+ ]),
2142
+ _: 1
2143
+ }),
2144
+ e.task.progress ? (r(), A(p, {
2145
+ key: 0,
2146
+ label: "进度详情",
2147
+ span: 2
2148
+ }, {
2149
+ default: u(() => [
2150
+ d(_t, {
2151
+ task: e.task,
2152
+ resourceCount: i.value
2153
+ }, null, 8, ["task", "resourceCount"])
2154
+ ]),
2155
+ _: 1
2156
+ })) : $("", !0),
2157
+ e.task.result ? (r(), A(p, {
2158
+ key: 1,
2159
+ label: "任务结果",
2160
+ span: 2
2161
+ }, {
2162
+ default: u(() => [
2163
+ d(ht, {
2164
+ task: e.task,
2165
+ videoCount: t.value,
2166
+ resourceCount: i.value
2167
+ }, null, 8, ["task", "videoCount", "resourceCount"])
2168
+ ]),
2169
+ _: 1
2170
+ })) : $("", !0),
2171
+ e.task.error ? (r(), A(p, {
2172
+ key: 2,
2173
+ label: "错误信息",
2174
+ span: 2,
2175
+ style: { color: "var(--el-color-danger)" }
2176
+ }, {
2177
+ default: u(() => [
2178
+ k(m(e.task.error), 1)
2179
+ ]),
2180
+ _: 1
2181
+ })) : $("", !0),
2182
+ d(p, { label: "操作用户" }, {
2183
+ default: u(() => [
2184
+ v[1] || (v[1] = a("div", {
2185
+ class: "uid-icon",
2186
+ style: { display: "inline-block" }
2187
+ }, null, -1)),
2188
+ k(" " + m(e.task.userCookie.uid), 1)
2189
+ ]),
2190
+ _: 1
2191
+ }),
2192
+ I(c.$slots, "default", {}, void 0, !0)
2193
+ ]),
2194
+ _: 3
2195
+ }),
2196
+ a("div", Fn, [
2197
+ v[2] || (v[2] = a("div", { class: "header" }, "视频列表:", -1)),
2198
+ a("div", {
2199
+ class: "video-list",
2200
+ ref_key: "refVideoList",
2201
+ ref: l
2202
+ }, [
2203
+ (r(!0), f(R, null, O(e.task.videos, (g, b) => (r(), f("div", {
2204
+ class: "video-item",
2205
+ key: g.snapshot.aid
2206
+ }, [
2207
+ a("div", qn, [
2208
+ a("span", null, "#" + m(b + 1), 1)
2209
+ ]),
2210
+ d(Tn, {
2211
+ video: g,
2212
+ onOpenFolder: (x) => o(b, x)
2213
+ }, null, 8, ["video", "onOpenFolder"])
2214
+ ]))), 128))
2215
+ ], 512)
2216
+ ])
2217
+ ])) : $("", !0)
2218
+ ]),
2219
+ _: 3
2220
+ }, 8, ["modelValue"])
2221
+ ]);
2222
+ };
2223
+ }
2224
+ }), jn = /* @__PURE__ */ L(On, [["__scopeId", "data-v-61e2a51e"]]), Nn = { class: "download-task-card" }, Zn = { class: "cover" }, Wn = { class: "cover-image" }, Gn = { class: "cover-placeholder" }, Jn = { class: "download-cover-stats" }, Kn = { class: "download-stats__duration" }, Yn = { class: "time" }, Xn = { class: "content" }, ea = { class: "header" }, ta = { class: "actions" }, sa = /* @__PURE__ */ B({
2225
+ __name: "DownloadItem",
2226
+ props: {
2227
+ task: {}
2228
+ },
2229
+ emits: ["action"],
2230
+ setup(e) {
2231
+ const n = e, s = C(() => n.task.videos[0].snapshot.pic), t = C(() => n.task.videos.reduce((o, c) => o + c.parts.length, 0)), i = C(
2232
+ () => n.task.videos.reduce((o, c) => o + c.parts.reduce((v, p) => v + p.resources.length, 0), 0)
2233
+ ), l = C(
2234
+ () => n.task.videos.reduce((o, c) => o + c.parts.reduce((v, p) => v + p.snapshot.duration, 0), 0)
2235
+ );
2236
+ return (o, c) => {
2237
+ const v = Pe, p = st, _ = ae, w = Z;
2238
+ return r(), f("div", Nn, [
2239
+ a("div", Zn, [
2240
+ a("div", Wn, [
2241
+ d(p, {
2242
+ src: s.value,
2243
+ fit: "cover"
2244
+ }, {
2245
+ error: u(() => [
2246
+ a("div", Gn, [
2247
+ d(v, null, {
2248
+ default: u(() => [
2249
+ d(h(ot))
2250
+ ]),
2251
+ _: 1
2252
+ })
2253
+ ])
2254
+ ]),
2255
+ _: 1
2256
+ }, 8, ["src"]),
2257
+ a("div", Jn, [
2258
+ c[6] || (c[6] = a("span", null, null, -1)),
2259
+ a("span", Kn, m(h(ze)(l.value)), 1)
2260
+ ])
2261
+ ]),
2262
+ a("span", Yn, m(h(fe)(e.task.createdAt)), 1)
2263
+ ]),
2264
+ a("div", Xn, [
2265
+ a("div", ea, [
2266
+ d(_, {
2267
+ class: "title",
2268
+ content: e.task.title
2269
+ }, {
2270
+ default: u(() => [
2271
+ k(m(e.task.title), 1)
2272
+ ]),
2273
+ _: 1
2274
+ }, 8, ["content"]),
2275
+ d(gt, { task: e.task }, null, 8, ["task"]),
2276
+ I(o.$slots, "titleExtra", { task: e.task }, void 0, !0)
2277
+ ]),
2278
+ d(ft, { task: e.task }, null, 8, ["task"]),
2279
+ d(_t, {
2280
+ task: e.task,
2281
+ resourceCount: i.value
2282
+ }, null, 8, ["task", "resourceCount"]),
2283
+ d(ht, {
2284
+ task: e.task,
2285
+ videoCount: t.value,
2286
+ resourceCount: i.value
2287
+ }, null, 8, ["task", "videoCount", "resourceCount"]),
2288
+ e.task.error ? (r(), A(_, {
2289
+ key: 0,
2290
+ class: "error",
2291
+ content: e.task.error
2292
+ }, {
2293
+ default: u(() => [
2294
+ k(m(e.task.error), 1)
2295
+ ]),
2296
+ _: 1
2297
+ }, 8, ["content"])) : $("", !0),
2298
+ a("div", ta, [
2299
+ d(w, {
2300
+ size: "small",
2301
+ onClick: c[0] || (c[0] = (g) => o.$emit("action", "show-details", e.task))
2302
+ }, {
2303
+ default: u(() => [...c[7] || (c[7] = [
2304
+ k(" 详情 ", -1)
2305
+ ])]),
2306
+ _: 1
2307
+ }),
2308
+ d(w, {
2309
+ size: "small",
2310
+ onClick: c[1] || (c[1] = (g) => o.$emit("action", "open-folder", e.task))
2311
+ }, {
2312
+ default: u(() => [...c[8] || (c[8] = [
2313
+ k(" 打开文件夹 ", -1)
2314
+ ])]),
2315
+ _: 1
2316
+ }),
2317
+ e.task.status === "downloading" ? (r(), A(w, {
2318
+ key: 0,
2319
+ size: "small",
2320
+ onClick: c[2] || (c[2] = (g) => o.$emit("action", "pause", e.task))
2321
+ }, {
2322
+ default: u(() => [...c[9] || (c[9] = [
2323
+ k(" 暂停 ", -1)
2324
+ ])]),
2325
+ _: 1
2326
+ })) : $("", !0),
2327
+ e.task.status === "paused" || e.task.status === "pending" ? (r(), A(w, {
2328
+ key: 1,
2329
+ size: "small",
2330
+ onClick: c[3] || (c[3] = (g) => o.$emit("action", "cancel", e.task))
2331
+ }, {
2332
+ default: u(() => [...c[10] || (c[10] = [
2333
+ k(" 取消 ", -1)
2334
+ ])]),
2335
+ _: 1
2336
+ })) : $("", !0),
2337
+ e.task.status === "paused" ? (r(), A(w, {
2338
+ key: 2,
2339
+ size: "small",
2340
+ onClick: c[4] || (c[4] = (g) => o.$emit("action", "resume", e.task))
2341
+ }, {
2342
+ default: u(() => [...c[11] || (c[11] = [
2343
+ k(" 继续 ", -1)
2344
+ ])]),
2345
+ _: 1
2346
+ })) : $("", !0),
2347
+ d(w, {
2348
+ size: "small",
2349
+ onClick: c[5] || (c[5] = (g) => o.$emit("action", "delete", e.task))
2350
+ }, {
2351
+ default: u(() => [...c[12] || (c[12] = [
2352
+ k(" 删除 ", -1)
2353
+ ])]),
2354
+ _: 1
2355
+ })
2356
+ ])
2357
+ ])
2358
+ ]);
2359
+ };
2360
+ }
2361
+ }), la = /* @__PURE__ */ L(sa, [["__scopeId", "data-v-71192ed6"]]);
2362
+ function na(e) {
2363
+ return new Promise((n, s) => {
2364
+ const t = z(!0), i = document.createElement("div");
2365
+ document.body.appendChild(i);
2366
+ let l = null;
2367
+ function o() {
2368
+ setTimeout(() => {
2369
+ l?.unmount(), i.remove();
2370
+ });
2371
+ }
2372
+ l = $e({
2373
+ render() {
2374
+ return zt(Nl, {
2375
+ ...e,
2376
+ visible: t.value,
2377
+ onConfirm(c) {
2378
+ t.value = !1, n({
2379
+ deleteSourceFile: c
2380
+ }), o();
2381
+ },
2382
+ onCancel() {
2383
+ t.value = !1, s(Ze()), o();
2384
+ }
2385
+ });
2386
+ }
2387
+ }), l?.mount(i);
2388
+ });
2389
+ }
2390
+ const aa = async (e) => {
2391
+ await H.download.openFolder(e.id, 0, 0);
2392
+ }, oa = async (e) => {
2393
+ await H.download.pause(e.id), Y("暂停任务成功");
2394
+ }, ia = async (e) => {
2395
+ await H.download.resume(e.id), Y("正在继续下载");
2396
+ }, ca = async (e) => {
2397
+ await H.download.cancel(e.id), Y("取消任务成功");
2398
+ }, ra = async (e) => {
2399
+ const { deleteSourceFile: n } = await na({
2400
+ message: "确定删除该下载任务吗?"
2401
+ });
2402
+ await H.download.remove(e.id, {
2403
+ deleteFiles: n
2404
+ });
2405
+ }, ua = { class: "header" }, da = { class: "query-list" }, va = { class: "actions" }, pa = { class: "download-list-container" }, ma = /* @__PURE__ */ B({
2406
+ __name: "DownloadManagePage",
2407
+ props: {
2408
+ showDefaultActions: { type: Boolean, default: !0 },
2409
+ pageSizes: { default: () => [20, 40, 100] }
2410
+ },
2411
+ setup(e, { expose: n }) {
2412
+ const s = e, t = K("refList"), i = z({
2413
+ pageNum: 1,
2414
+ pageSize: s.pageSizes[0]
2415
+ }), l = z("all"), o = z({
2416
+ status: void 0,
2417
+ title: ""
2418
+ }), c = () => {
2419
+ l.value === "all" ? o.value.status = void 0 : o.value.status = l.value, g();
2420
+ }, {
2421
+ pageData: v,
2422
+ tableData: p,
2423
+ loading: _,
2424
+ refresh: w,
2425
+ resetAndRefresh: g,
2426
+ resetPageAndRefresh: b,
2427
+ handleSizeChange: x,
2428
+ handleCurrPageChange: V
2429
+ } = at({
2430
+ fetchPage: H.download.fetchPage,
2431
+ pageParams: () => i.value,
2432
+ queryParams: () => o.value,
2433
+ autoLoad: !0,
2434
+ onLoaded: () => {
2435
+ we(() => t.value?.scrollTo(0, 0));
2436
+ }
2437
+ }), E = z({
2438
+ visible: !1
2439
+ }), D = async (P, y) => {
2440
+ switch (P) {
2441
+ case "show-details":
2442
+ E.value.task = y, E.value.visible = !0;
2443
+ break;
2444
+ case "open-folder":
2445
+ await aa(y);
2446
+ break;
2447
+ case "pause":
2448
+ await oa(y);
2449
+ break;
2450
+ case "resume":
2451
+ await ia(y);
2452
+ break;
2453
+ case "cancel":
2454
+ await ca(y);
2455
+ break;
2456
+ case "delete":
2457
+ await ra(y);
2458
+ const S = p.value.findIndex((F) => F.id === y.id);
2459
+ S > -1 && p.value.splice(S, 1), p.value.length < 1 && await b(), Y("删除任务成功");
2460
+ break;
2461
+ }
2462
+ };
2463
+ let M = null;
2464
+ ne(async () => {
2465
+ M = await H.download.onUpdated((P) => {
2466
+ for (let y = 0; y < p.value.length; y++) {
2467
+ const S = p.value[y];
2468
+ if (S.id === P.id) {
2469
+ l.value === "all" || S.status === P.status ? Object.assign(S, P) : p.value.splice(y, 1);
2470
+ return;
2471
+ }
2472
+ }
2473
+ });
2474
+ }), ce(() => {
2475
+ M?.();
2476
+ });
2477
+ const U = C(() => o.value.status ? `暂无${We[o.value.status]}的任务` : "暂无下载任务");
2478
+ return n({
2479
+ refresh: w,
2480
+ resetAndRefresh: g
2481
+ }), (P, y) => {
2482
+ const S = ds, F = us, X = Ge, ee = Z, q = Xe, ue = et;
2483
+ return r(), f(R, null, [
2484
+ a("div", ua, [
2485
+ a("div", da, [
2486
+ I(P.$slots, "queryList", {}, () => [
2487
+ d(F, {
2488
+ modelValue: l.value,
2489
+ "onUpdate:modelValue": y[0] || (y[0] = (Q) => l.value = Q),
2490
+ size: "small",
2491
+ onChange: c
2492
+ }, {
2493
+ default: u(() => [
2494
+ d(S, {
2495
+ label: "全部",
2496
+ value: "all"
2497
+ }),
2498
+ d(S, {
2499
+ label: "已完成",
2500
+ value: "completed"
2501
+ }),
2502
+ d(S, {
2503
+ label: "下载中",
2504
+ value: "downloading"
2505
+ }),
2506
+ d(S, {
2507
+ label: "暂停中",
2508
+ value: "paused"
2509
+ }),
2510
+ d(S, {
2511
+ label: "已失败",
2512
+ value: "failed"
2513
+ })
2514
+ ]),
2515
+ _: 1
2516
+ }, 8, ["modelValue"]),
2517
+ d(X, {
2518
+ modelValue: o.value.title,
2519
+ "onUpdate:modelValue": y[1] || (y[1] = (Q) => o.value.title = Q),
2520
+ onChange: h(b),
2521
+ size: "small",
2522
+ placeholder: "标题",
2523
+ clearable: "",
2524
+ style: { width: "80px" }
2525
+ }, null, 8, ["modelValue", "onChange"])
2526
+ ], !0)
2527
+ ]),
2528
+ a("div", va, [
2529
+ I(P.$slots, "actions", {}, void 0, !0),
2530
+ e.showDefaultActions ? (r(), f(R, { key: 0 }, [
2531
+ d(ee, {
2532
+ size: "small",
2533
+ onClick: y[2] || (y[2] = (Q) => h(H).download.pauseAll())
2534
+ }, {
2535
+ default: u(() => [...y[7] || (y[7] = [
2536
+ k("暂停所有任务", -1)
2537
+ ])]),
2538
+ _: 1
2539
+ }),
2540
+ d(ee, {
2541
+ size: "small",
2542
+ onClick: y[3] || (y[3] = (Q) => h(H).download.resumeAll())
2543
+ }, {
2544
+ default: u(() => [...y[8] || (y[8] = [
2545
+ k("继续所有任务", -1)
2546
+ ])]),
2547
+ _: 1
2548
+ })
2549
+ ], 64)) : $("", !0)
2550
+ ])
2551
+ ]),
2552
+ a("div", pa, [
2553
+ a("div", {
2554
+ ref_key: "refList",
2555
+ ref: t,
2556
+ class: "download-list"
2557
+ }, [
2558
+ (r(!0), f(R, null, O(h(p), (Q) => (r(), A(la, {
2559
+ task: Q,
2560
+ key: Q.id,
2561
+ onAction: D
2562
+ }, {
2563
+ titleExtra: u((j) => [
2564
+ I(P.$slots, "itemTitleExtra", G({ ref_for: !0 }, j), void 0, !0)
2565
+ ]),
2566
+ _: 3
2567
+ }, 8, ["task"]))), 128)),
2568
+ h(p).length ? $("", !0) : (r(), A(q, {
2569
+ key: 0,
2570
+ description: U.value
2571
+ }, null, 8, ["description"]))
2572
+ ], 512)
2573
+ ]),
2574
+ d(ue, {
2575
+ class: "pagination",
2576
+ "current-page": h(v).pageNum,
2577
+ "onUpdate:currentPage": y[4] || (y[4] = (Q) => h(v).pageNum = Q),
2578
+ "page-size": h(v).pageSize,
2579
+ "onUpdate:pageSize": y[5] || (y[5] = (Q) => h(v).pageSize = Q),
2580
+ "page-sizes": e.pageSizes,
2581
+ total: h(v).total,
2582
+ layout: "total, sizes, prev, pager, next, jumper",
2583
+ onCurrentChange: h(V),
2584
+ onSizeChange: h(x)
2585
+ }, null, 8, ["current-page", "page-size", "page-sizes", "total", "onCurrentChange", "onSizeChange"]),
2586
+ d(jn, {
2587
+ modelValue: E.value.visible,
2588
+ "onUpdate:modelValue": y[6] || (y[6] = (Q) => E.value.visible = Q),
2589
+ task: E.value.task
2590
+ }, {
2591
+ default: u(() => [
2592
+ E.value.task ? I(P.$slots, "detailsDialog", {
2593
+ key: 0,
2594
+ task: E.value.task
2595
+ }, void 0, !0) : $("", !0)
2596
+ ]),
2597
+ _: 3
2598
+ }, 8, ["modelValue", "task"])
2599
+ ], 64);
2600
+ };
2601
+ }
2602
+ }), zo = /* @__PURE__ */ L(ma, [["__scopeId", "data-v-19b20db4"]]);
1573
2603
  export {
1574
- j as AppIcon,
1575
- Be as AppTooltip,
1576
- Gl as BiliUserCard,
1577
- An as BiliUserInfo,
1578
- un as CountdownDialog,
1579
- hn as ExternalLink,
1580
- mn as IconButton,
1581
- fn as IconLabel,
1582
- fl as LoadingDialog,
1583
- _n as LogPrint,
1584
- ul as PageRangeDialog,
1585
- bn as PageTable,
1586
- Ze as PluginMenuItem,
1587
- ls as PluginMenus,
1588
- yn as PluginPageContent,
1589
- wn as PluginPageHeader,
1590
- kl as ProcessDialog,
1591
- sl as SelectDialog,
1592
- cn as SettingGroup,
1593
- rn as SettingItem,
1594
- be as baseUpdateThemeColor,
1595
- Qe as blackColor,
1596
- ln as handleError,
1597
- Ks as initAppTheme,
1598
- tn as initBilitoolkitUi,
1599
- ge as initTransparentColors,
1600
- xe as isDarkTheme,
1601
- pn as loadingDialog,
1602
- gn as processDialog,
1603
- $t as showConfirm,
1604
- nn as showConfirmSequence,
1605
- X as showError,
1606
- vn as showPageRangeDialog,
1607
- dn as showSelectDialog,
1608
- Ce as showToast,
1609
- sn as showWarning,
1610
- Ys as switchDefaultTheme,
1611
- Xs as switchThemeMode,
1612
- R as toolkitApi,
1613
- re as updateAppTheme,
1614
- en as updatePrimaryColor,
1615
- de as useAppThemeStore,
1616
- an as useAutoRefreshData,
1617
- Jt as useCountdown,
1618
- Lt as useElementHeight,
1619
- Ee as useLoadingData,
1620
- Tt as usePageTable,
1621
- on as useSelectData,
1622
- je as useSelectedUserStore,
1623
- Pe as whiteColor
2604
+ N as AppIcon,
2605
+ ae as AppTooltip,
2606
+ xl as BiliUserCard,
2607
+ Eo as BiliUserInfo,
2608
+ ho as CountdownDialog,
2609
+ Nl as DeleteConfirmDialog,
2610
+ jn as DownloadDetailsDialog,
2611
+ la as DownloadItem,
2612
+ zo as DownloadManagePage,
2613
+ ft as DownloadProgress,
2614
+ _t as DownloadProgressDetails,
2615
+ dn as DownloadResourceTag,
2616
+ ht as DownloadResult,
2617
+ gt as DownloadStatus,
2618
+ Tn as DownloadVideoCard,
2619
+ fn as DownloadVideoPartCard,
2620
+ Co as ExternalLink,
2621
+ bo as IconButton,
2622
+ it as IconLabel,
2623
+ Ns as LoadingDialog,
2624
+ xo as LogPrint,
2625
+ Rs as PageRangeDialog,
2626
+ $o as PageTable,
2627
+ mt as PluginMenuItem,
2628
+ Il as PluginMenus,
2629
+ So as PluginPageContent,
2630
+ Bo as PluginPageHeader,
2631
+ nl as ProcessDialog,
2632
+ Is as SelectDialog,
2633
+ fo as SettingGroup,
2634
+ _o as SettingItem,
2635
+ un as VideoStatsInfo,
2636
+ Ie as baseUpdateThemeColor,
2637
+ Le as blackColor,
2638
+ Se as formatBytes,
2639
+ Zl as formatSpeed,
2640
+ Fe as formatStatCount,
2641
+ ca as handleCancel,
2642
+ ra as handleDelete,
2643
+ uo as handleError,
2644
+ aa as handleOpenFolder,
2645
+ oa as handlePause,
2646
+ ia as handleResume,
2647
+ ao as initAppTheme,
2648
+ ro as initBilitoolkitUi,
2649
+ Ae as initTransparentColors,
2650
+ Ve as isDarkTheme,
2651
+ ko as loadingDialog,
2652
+ _n as parseVideoZoneLabel,
2653
+ Ao as processDialog,
2654
+ ms as showConfirm,
2655
+ po as showConfirmSequence,
2656
+ na as showDeleteConfirmDialog,
2657
+ ie as showError,
2658
+ yo as showPageRangeDialog,
2659
+ wo as showSelectDialog,
2660
+ Y as showToast,
2661
+ vo as showWarning,
2662
+ oo as switchDefaultTheme,
2663
+ io as switchThemeMode,
2664
+ H as toolkitApi,
2665
+ _e as updateAppTheme,
2666
+ co as updatePrimaryColor,
2667
+ ye as useAppThemeStore,
2668
+ mo as useAutoRefreshData,
2669
+ xs as useCountdown,
2670
+ gs as useElementHeight,
2671
+ Me as useLoadingData,
2672
+ at as usePageTable,
2673
+ go as useSelectData,
2674
+ nt as useSelectedUserStore,
2675
+ Te as whiteColor
1624
2676
  };