@pubinfo-pr/core 0.203.2 → 0.203.3

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.
Files changed (45) hide show
  1. package/dist/{AppSetting-B7mE7iHt.js → AppSetting-7jlhUzze.js} +15 -15
  2. package/dist/{HCheckList-DAkb0SBD.js → HCheckList-cPBgATmv.js} +1 -1
  3. package/dist/HSlideover-DVQDc9q6.js +3151 -0
  4. package/dist/{PreferencesContent-CWHTBvHQ.js → PreferencesContent-BAIH81yS.js} +5 -5
  5. package/dist/{SettingBreadcrumb-p3hD9w-9.js → SettingBreadcrumb-O9-PhAFT.js} +4 -4
  6. package/dist/{SettingCopyright-BgWvocrJ.js → SettingCopyright-DIKsWTuf.js} +3 -3
  7. package/dist/{SettingEnableTransition-Cf57pLUk.js → SettingEnableTransition-61O7W00b.js} +2 -2
  8. package/dist/{SettingHome-tNMtRHoT.js → SettingHome-Sv65TPH8.js} +4 -4
  9. package/dist/{SettingMenu-Du4Xhle1.js → SettingMenu-BvwJOUZV.js} +5 -5
  10. package/dist/{SettingMode-DGWqKJHt.js → SettingMode-B8H_eQc8.js} +1 -1
  11. package/dist/{SettingNavSearch-C_8VmQmD.js → SettingNavSearch-BHsmYBA7.js} +3 -3
  12. package/dist/{SettingOther-B9iOz69R.js → SettingOther-CyyNnaDX.js} +4 -4
  13. package/dist/{SettingPage-C0TfmEKp.js → SettingPage-B82lW41P.js} +2 -2
  14. package/dist/{SettingTabbar-C7ZQrcN4.js → SettingTabbar-Bky2xvH-.js} +5 -5
  15. package/dist/{SettingThemes-022eXO9f.js → SettingThemes-CkdzS1xt.js} +2 -2
  16. package/dist/{SettingToolbar-Bh9aXNpl.js → SettingToolbar-CD4qns1J.js} +3 -3
  17. package/dist/{SettingTopbar-DjB1Izhm.js → SettingTopbar-1shjoe3s.js} +5 -5
  18. package/dist/{SettingWidthMode-D7sRlBUK.js → SettingWidthMode-DlG6lXjA.js} +2 -2
  19. package/dist/{auth-B65CJEOe.js → auth-BLGKOyc5.js} +193 -3
  20. package/dist/{change-organization-sU8aNfhI.js → change-organization-hsqeSzDu.js} +2 -2
  21. package/dist/{change-password-Dxzhg43p.js → change-password-EtccCDRX.js} +2 -2
  22. package/dist/{components-emseuaQx.js → components-DFNyaAb9.js} +4 -4
  23. package/dist/index.js +885 -413
  24. package/dist/{not-found-DbHOY5cU.js → not-found-BCjngLzt.js} +1 -1
  25. package/dist/{not-permission-DwERxb_u.js → not-permission-C26vTMvf.js} +1 -1
  26. package/dist/{profile-Dq66-Gsl.js → profile-BVXIFuBG.js} +1 -1
  27. package/dist/style.css +1 -1
  28. package/package.json +7 -7
  29. package/src/built-in/layout-component/components/Header/HeaderMenu.vue +2 -3
  30. package/dist/HSlideover-CXBJxuQo.js +0 -1695
  31. package/dist/HeaderFullMenu-l2890Bzo.js +0 -250
  32. package/dist/HeaderThinMenu-5K6HXiQk.js +0 -438
  33. package/dist/overlayscrollbars-vue-mGyICRMi.js +0 -1460
  34. /package/dist/{HDivider-Ds5MMqtm.js → HDivider-BwvBr5OE.js} +0 -0
  35. /package/dist/{HInput-BrsX9848.js → HInput-KJ5nFBpF.js} +0 -0
  36. /package/dist/{HToggle-DEwBoDsw.js → HToggle-Ce_2-yhZ.js} +0 -0
  37. /package/dist/{core-4H5JBsa5.js → core-DJIGzMMM.js} +0 -0
  38. /package/dist/{engine-oniguruma-uxNZ2DGJ.js → engine-oniguruma-CaNXwGSv.js} +0 -0
  39. /package/dist/{json-CC4oV-bd.js → json-Bu_Zprin.js} +0 -0
  40. /package/dist/{question-line-D7ecIumZ.js → question-line-BG__Ycfv.js} +0 -0
  41. /package/dist/{reload-CbuQgTlC.js → reload-DHx5Vwus.js} +0 -0
  42. /package/dist/{right-DYiPS7dU.js → right-BxBlFUwj.js} +0 -0
  43. /package/dist/{vitesse-dark-CxkWMfh6.js → vitesse-dark-CTe40QT_.js} +0 -0
  44. /package/dist/{vitesse-light-DY25e6F3.js → vitesse-light-BWXC_WeB.js} +0 -0
  45. /package/dist/{wasm-DAU6f5s5.js → wasm-2zDVqo-C.js} +0 -0
package/dist/index.js CHANGED
@@ -1,215 +1,21 @@
1
1
  import { r as __toESM, t as __commonJSMin } from "./chunk-CD4vhpVs.js";
2
- import { $r as getPubinfoNamespace, Ar as splice, Cr as instanceOf, Dr as newInstance, Er as len, Ir as defineIconModule, Lr as getAllIconModules, Mr as defineRouteModule, Nr as getAllRouteModules, Or as noop, Qr as getPersistedState, Sr as forEach, Tr as isPlainObject, Ur as callHookSync, Vr as readProjectModules, Xr as clearPersistedState, Zr as createContext, br as $self, ei as setPersistedState, jr as createApp$1, kr as pushItem, ti as createContext$1, wr as isFn, xr as PromiseCls, yr as createRequest } from "./modal-Bl5xHbxa.js";
3
- import { A as useWarn, C as useKeepAliveStore, D as useInfo, E as useError, L as useFavoritesStore, M as useIframeStore, N as isUndefined, O as useStart, P as findIndex, R as STORE_NAME, S as require_dist, T as useBox, _ as getSystemRoutes, a as wrapProxy, b as RESOURCE_TYPE, c as cleanupWithoutUser, d as useUserStore, f as useTabbarStore, g as defineSystemRoutes, h as getSettings, i as publicKeyEncryption, j as useAuth, k as useSuccess, l as useMenuStore, m as defineSettings, n as basic, o as resolveRoutePath, p as useSettingsStore, r as storage, s as cleanup, t as postAuthTokenRefresh, u as useRouteStore, v as defineAsyncRoutes, w as useTheme, y as getAsyncRoutes, z as createPubinfoContext } from "./auth-B65CJEOe.js";
2
+ import { $r as getPubinfoNamespace, Ar as splice, Cr as instanceOf, Dr as newInstance, Er as len, Ir as defineIconModule, Lr as getAllIconModules, Mr as defineRouteModule, Nr as getAllRouteModules, Or as noop, Qr as getPersistedState, Sr as forEach, Tr as isPlainObject, Ur as callHookSync, Vr as readProjectModules, Xr as clearPersistedState, Zr as createContext, br as $self, ei as setPersistedState, jr as createApp$1, kr as pushItem, n as api, ti as createContext$1, wr as isFn, xr as PromiseCls, yr as createRequest } from "./modal-Bl5xHbxa.js";
3
+ import { A as useSuccess, B as createPubinfoContext, C as useKeepAliveStore, D as useError, E as useBox, F as findIndex, M as useAuth, N as useIframeStore, O as useInfo, P as isUndefined, R as useFavoritesStore, S as require_dist, T as usePartyLogin, _ as getSystemRoutes, a as wrapProxy, b as RESOURCE_TYPE, c as cleanupWithoutUser, d as useUserStore, f as useTabbarStore, g as defineSystemRoutes, h as getSettings, i as publicKeyEncryption, j as useWarn, k as useStart, l as useMenuStore, m as defineSettings, n as basic, o as resolveRoutePath, p as useSettingsStore, r as storage, s as cleanup, t as postAuthTokenRefresh, u as useRouteStore, v as defineAsyncRoutes, w as useTheme, y as getAsyncRoutes, z as STORE_NAME } from "./auth-BLGKOyc5.js";
4
4
  import { s as cloneDeep, t as watchDiffObject } from "./watchDiff-CPZFtaOC.js";
5
- import { a as useFullscreen, c as isClient, f as useToggle, l as toRef$1, n as useClipboard, o as useMagicKeys, r as useCssVar, u as tryOnScopeDispose } from "./dist-7OjQvlya.js";
5
+ import { a as useFullscreen, c as isClient, d as useTimeoutFn, f as useToggle, i as useElementSize, l as toRef$1, n as useClipboard, o as useMagicKeys, r as useCssVar, u as tryOnScopeDispose } from "./dist-7OjQvlya.js";
6
6
  import { z as tooltip_default } from "./tree-select-B8cTcGLa.js";
7
- import { a as PubinfoIcon_default, c as PubinfoProvider_default, d as PageHeader_default, i as PageMain_default, l as createPubinfoProvider, n as PassStrengthValidator_default, o as SquareBox_default, r as Modal_default, s as PrismBox_default, t as PubinfoApp_default, u as pubinfoInjectionKey } from "./components-emseuaQx.js";
7
+ import { a as PubinfoIcon_default, c as PubinfoProvider_default, d as PageHeader_default, i as PageMain_default, l as createPubinfoProvider, n as PassStrengthValidator_default, o as SquareBox_default, r as Modal_default, s as PrismBox_default, t as PubinfoApp_default, u as pubinfoInjectionKey } from "./components-DFNyaAb9.js";
8
8
  import { t as _plugin_vue_export_helper_default } from "./_plugin-vue_export-helper-sUTDUeGO.js";
9
9
  import { n as useContext, t as createContext$2 } from "./useContext-DLtu9F7E.js";
10
10
  import { t as HButton_default } from "./HButton-Dt6qGhhR.js";
11
11
  import { t as HTooltip_default } from "./HTooltip-DjAU-Evn.js";
12
- import { C as t, S as i$1, _ as P$2, a as Ge$1, b as u$2, c as Ye$1, d as u$1, f as A$2, g as O$1, h as N$1, i as he$1, l as o$2, m as T$2, n as close_default$1, o as Je$1, p as N$2, r as Se$1, s as Ve$1, t as HSlideover_default, u as f$1, v as T$3, x as o$1, y as i$2 } from "./HSlideover-CXBJxuQo.js";
13
- import { t as P$3 } from "./overlayscrollbars-vue-mGyICRMi.js";
14
- import { r as useMenu, t as HeaderFullMenu_default } from "./HeaderFullMenu-l2890Bzo.js";
15
- import { r as Menu_default, t as HeaderThinMenu_default } from "./HeaderThinMenu-5K6HXiQk.js";
16
- import { getActivePinia } from "pinia";
17
- import { Fragment, KeepAlive, Teleport, Transition, TransitionGroup, computed, createApp, createBlock, createCommentVNode, createElementBlock, createElementVNode, createSlots, createStaticVNode, createTextVNode, createVNode, defineAsyncComponent, defineComponent, guardReactiveProps, h, inject, isRef, markRaw, mergeProps, nextTick, normalizeClass, normalizeProps, normalizeStyle, onBeforeUnmount, onBeforeUpdate, onMounted, onUnmounted, openBlock, popScopeId, provide, pushScopeId, reactive, ref, render, renderList, renderSlot, resolveComponent, resolveDynamicComponent, shallowRef, toDisplayString, toRefs, unref, useCssVars, useSlots, vModelText, vShow, watch, watchEffect, withCtx, withDirectives, withKeys, withModifiers, withScopeId } from "vue";
12
+ import { C as i$1, S as o$1, _ as O$1, a as he$1, b as i$2, c as Ve$1, d as f$1, f as u$1, g as N$1, h as T$2, i as Se$1, l as Ye$1, m as N$2, n as P$3, o as Ge$1, p as A$2, r as close_default$1, s as Je$1, t as HSlideover_default, u as o$2, v as P$2, w as t, x as u$2, y as T$3 } from "./HSlideover-DVQDc9q6.js";
13
+ import { Fragment, KeepAlive, Teleport, Transition, TransitionGroup, computed, createApp, createBlock, createCommentVNode, createElementBlock, createElementVNode, createSlots, createStaticVNode, createTextVNode, createVNode, defineAsyncComponent, defineComponent, guardReactiveProps, h, inject, isRef, markRaw, mergeProps, nextTick, normalizeClass, normalizeProps, normalizeStyle, onBeforeUnmount, onBeforeUpdate, onMounted, onUnmounted, openBlock, popScopeId, provide, pushScopeId, reactive, ref, render, renderList, renderSlot, resolveComponent, resolveDynamicComponent, shallowRef, toDisplayString, toHandlers, toRefs, unref, useCssVars, useSlots, vModelText, vShow, watch, watchEffect, withCtx, withDirectives, withKeys, withModifiers, withScopeId } from "vue";
18
14
  import { useRoute, useRouter } from "vue-router";
19
15
  import Message from "vue-m-message";
20
16
  import { devtoolsStorageKey } from "@pubinfo-pr/devtools/constants";
21
17
  import { setupDevtoolsPanel } from "@pubinfo-pr/devtools/panel";
22
18
  import "vue-m-message/dist/style.css";
23
- var SUPPORTED_STORE_IDS = new Set([
24
- "user",
25
- "settings",
26
- "menu",
27
- "route",
28
- "tabbar",
29
- "iframe",
30
- "keepAlive",
31
- "favorites"
32
- ]), missingPiniaWarnings = /* @__PURE__ */ new Set();
33
- function warnMissingPinia(e) {
34
- missingPiniaWarnings.has(e) || (missingPiniaWarnings.add(e), console.warn(`[usePartyLogin] Pinia instance is not ready when trying to access the "${e}" store. Provide a Pinia instance via usePartyLogin(..., { pinia }) or ensure Pinia is registered before calling this hook.`));
35
- }
36
- function getNestedValue(e, M) {
37
- if (!e || !M) return "";
38
- let ne = M.split("."), ve = e;
39
- for (let e of ne) if (ve && typeof ve == "object" && e in ve) ve = ve[e];
40
- else return "";
41
- return ve ?? "";
42
- }
43
- function getStoreFromPinia(e, M) {
44
- return (e?._s)?.get(M);
45
- }
46
- function resolveParamValue(e, M, ne) {
47
- switch (e.type) {
48
- case "string":
49
- case "number": return e.value ?? "";
50
- case "boolean": return e.value === "true";
51
- case "system": {
52
- if (!e.field) return "";
53
- let [M, ve] = e.field.split(":");
54
- if (!M || !ve) return "";
55
- try {
56
- if (!SUPPORTED_STORE_IDS.has(M)) return console.warn(`Store "${M}" is not supported in usePartyLogin.`), "";
57
- let e = ne ?? getActivePinia();
58
- if (!e) return warnMissingPinia(M), "";
59
- let Ee = getStoreFromPinia(e, M);
60
- return Ee ? getNestedValue(Ee, ve) : (warnMissingStore(M), "");
61
- } catch (M) {
62
- return console.error(`Error accessing store field ${e.field}:`, M), "";
63
- }
64
- }
65
- case "request": return !e.field || !M ? "" : getNestedValue(M, e.field);
66
- default: return e.value ?? "";
67
- }
68
- }
69
- function buildParams(e, M, ne) {
70
- let ve = {};
71
- return e.forEach((e) => {
72
- e.key && (ve[e.key] = resolveParamValue(e, M, ne));
73
- }), ve;
74
- }
75
- function buildOAuthUrl(e, M, ne, ve) {
76
- let Ee = buildParams(M, ne, ve), De = Object.entries(Ee);
77
- if (De.length === 0) return safeDecodeUrl(e);
78
- let ke = new URLSearchParams();
79
- De.forEach(([e, M]) => {
80
- ke.append(e, String(M));
81
- });
82
- let je = ke.toString(), We = e.indexOf("#"), Ke = We >= 0, $e = Ke ? e.slice(0, We) : e, at = Ke ? e.slice(We + 1) : "";
83
- if (Ke && shouldAppendParamsToHash(at)) return safeDecodeUrl(`${$e}#${appendParamsToHash(at, je)}`);
84
- let ft = appendParamsToBaseUrl($e, ke, je);
85
- return safeDecodeUrl(Ke ? `${ft}#${at}` : ft);
86
- }
87
- function shouldAppendParamsToHash(e) {
88
- if (!e) return !1;
89
- let M = e.trim();
90
- return M ? M.startsWith("/") || M.startsWith("!/") || M.startsWith("?") : !1;
91
- }
92
- function appendParamsToHash(e, M) {
93
- return M ? e ? `${e}${resolveQuerySeparator(e)}${M}` : `?${M}` : e;
94
- }
95
- function appendParamsToBaseUrl(e, M, ne) {
96
- if (!ne) return e;
97
- if (!e) return `?${ne}`;
98
- try {
99
- let ne = new URL(e);
100
- return M.forEach((e, M) => {
101
- ne.searchParams.append(M, e);
102
- }), ne.toString();
103
- } catch {
104
- return `${e}${resolveQuerySeparator(e)}${ne}`;
105
- }
106
- }
107
- function resolveQuerySeparator(e) {
108
- return !e || !e.includes("?") ? "?" : /[?&]$/.test(e) ? "" : "&";
109
- }
110
- function safeDecodeUrl(e) {
111
- try {
112
- return decodeURIComponent(e);
113
- } catch {
114
- return e;
115
- }
116
- }
117
- function buildQueryString(e) {
118
- let M = new URLSearchParams();
119
- return Object.entries(e).forEach(([e, ne]) => {
120
- ne != null && M.append(e, String(ne));
121
- }), M.toString();
122
- }
123
- function serializeBody(e, M) {
124
- let ne = M["Content-Type"] || M["content-type"] || "application/json";
125
- if (!e || Object.keys(e).length === 0) return;
126
- let ve = ne.split(";")[0].trim().toLowerCase();
127
- if (ve === "application/json") return JSON.stringify(e);
128
- if (ve === "application/x-www-form-urlencoded") {
129
- let M = new URLSearchParams();
130
- return Object.entries(e).forEach(([e, ne]) => {
131
- ne != null && M.append(e, String(ne));
132
- }), M.toString();
133
- }
134
- if (ve === "multipart/form-data") {
135
- let ne = new FormData();
136
- return Object.entries(e).forEach(([e, M]) => {
137
- M != null && ne.append(e, M);
138
- }), delete M["Content-Type"], delete M["content-type"], ne;
139
- }
140
- return JSON.stringify(e);
141
- }
142
- function deepParseJSON(e) {
143
- if (e == null) return e;
144
- if (typeof e == "string") try {
145
- return deepParseJSON(JSON.parse(e));
146
- } catch {
147
- return e;
148
- }
149
- if (Array.isArray(e)) return e.map((e) => deepParseJSON(e));
150
- if (typeof e == "object") {
151
- let M = {};
152
- for (let ne in e) Object.prototype.hasOwnProperty.call(e, ne) && (M[ne] = deepParseJSON(e[ne]));
153
- return M;
154
- }
155
- return e;
156
- }
157
- async function usePartyLogin(e, M, ne = {}) {
158
- let { execute: ve = !0, pinia: Ee } = ne, De = ref(""), ke = ref(!1), je = ref(null);
159
- async function We() {
160
- if (!e || e.length < 2) throw Error("PartyLogin config must have at least 2 steps");
161
- if (!M) throw Error("Target URL is required for OAuth redirect");
162
- let ne = e.find((e) => e.step === 1), ve = e.find((e) => e.step === 2);
163
- if (!ne || !ve) throw Error("Step 1 and Step 2 configurations are required");
164
- if (!ne.request) throw Error("Step 1 must have request configuration");
165
- if (!ve.oauth) throw Error("Step 2 must have OAuth configuration");
166
- let { url: We, method: Ke, params: $e } = ne.request, at = Ee ?? getActivePinia(), ft = $e.query ? buildParams($e.query, void 0, at) : {}, Et = $e.body ? buildParams($e.body, void 0, at) : {}, Dt = $e.header ? buildParams($e.header, void 0, at) : {}, Ot = $e.cookie ? buildParams($e.cookie, void 0, at) : {}, kt = {};
167
- Object.entries(Dt).forEach(([e, M]) => {
168
- kt[e] = String(M);
169
- });
170
- let jt = Object.entries(Ot).map(([e, M]) => `${e}=${M}`);
171
- jt.length > 0 && (kt.Cookie = jt.join("; "));
172
- let Mt = We, Ft = buildQueryString(ft);
173
- Ft && (Mt = `${We}${We.includes("?") ? "&" : "?"}${Ft}`);
174
- let It;
175
- ["GET", "HEAD"].includes(Ke) || (!kt["Content-Type"] && !kt["content-type"] && (kt["Content-Type"] = "application/json"), It = serializeBody(Et, kt)), ke.value = !0, je.value = null;
176
- try {
177
- let e = await fetch(Mt, {
178
- method: Ke,
179
- headers: kt,
180
- body: It,
181
- credentials: jt.length > 0 ? "include" : "same-origin",
182
- mode: "cors"
183
- });
184
- if (!e.ok) throw Error(`HTTP ${e.status}: ${e.statusText}`);
185
- let ne = e.headers.get("content-type") || "", Ee = {};
186
- if (ne.includes("application/json")) Ee = deepParseJSON(await e.json());
187
- else {
188
- let M = await e.text();
189
- try {
190
- Ee = deepParseJSON(JSON.parse(M));
191
- } catch {
192
- Ee = { data: M };
193
- }
194
- }
195
- let ke = buildOAuthUrl(M, ve.oauth.params, Ee, at);
196
- return De.value = ke, ke;
197
- } catch (e) {
198
- throw je.value = /* @__PURE__ */ Error(`第一步请求失败: ${e?.message || String(e)}`), je.value;
199
- } finally {
200
- ke.value = !1;
201
- }
202
- }
203
- return ve && await We(), {
204
- url: De,
205
- loading: ke,
206
- error: je,
207
- execute: We
208
- };
209
- }
210
- function warnMissingStore(e) {
211
- console.warn(`[usePartyLogin] Store "${e}" is not registered in Pinia.`);
212
- }
213
19
  const defaultVisitorMeta = { authRole: null }, defaultLoginMeta = { authRole: "login" }, defaultLogoutMeta = { authRole: "logout" }, defaultRefreshTokenMeta = { authRole: "refreshToken" };
214
20
  function checkMethodRole({ meta: e }, M) {
215
21
  if (isPlainObject(e)) {
@@ -297,7 +103,7 @@ function createTokenAuthentication(e = {}) {
297
103
  var routes = [{
298
104
  path: "/change-password/:changePassWordToken",
299
105
  name: "ChangePassword",
300
- component: () => import("./change-password-Dxzhg43p.js"),
106
+ component: () => import("./change-password-EtccCDRX.js"),
301
107
  beforeEnter: (e) => isUndefined(e.params.changePassWordToken) ? { name: "Login" } : !0,
302
108
  meta: {
303
109
  whiteList: !0,
@@ -306,7 +112,7 @@ var routes = [{
306
112
  }, {
307
113
  path: "/change-organization/:orgId",
308
114
  name: "ChangeOrganization",
309
- component: () => import("./change-organization-sU8aNfhI.js"),
115
+ component: () => import("./change-organization-hsqeSzDu.js"),
310
116
  beforeEnter: (e) => {
311
117
  let M = useUserStore();
312
118
  return isUndefined(e.params.orgId) || e.params.orgId !== M.user.orgId ? { name: "Login" } : !0;
@@ -357,7 +163,7 @@ function maybeSetAuthData(e) {
357
163
  var NotPermissionRoute = {
358
164
  path: "/not-permission",
359
165
  name: "NotPermission",
360
- component: () => import("./not-permission-DwERxb_u.js"),
166
+ component: () => import("./not-permission-C26vTMvf.js"),
361
167
  meta: {
362
168
  whiteList: !0,
363
169
  title: "无权限访问"
@@ -547,27 +353,27 @@ const Provider = defineComponent({
547
353
  }));
548
354
  }
549
355
  });
550
- var _hoisted_1$55 = {
356
+ var _hoisted_1$61 = {
551
357
  viewBox: "0 0 24 24",
552
358
  width: "1.2em",
553
359
  height: "1.2em"
554
360
  };
555
- function render$31(e, M) {
556
- return openBlock(), createElementBlock("svg", _hoisted_1$55, [...M[0] ||= [createElementVNode("path", {
361
+ function render$32(e, M) {
362
+ return openBlock(), createElementBlock("svg", _hoisted_1$61, [...M[0] ||= [createElementVNode("path", {
557
363
  fill: "currentColor",
558
364
  d: "M4 18h2v2h12V4H6v2H4V3a1 1 0 0 1 1-1h14a1 1 0 0 1 1 1v18a1 1 0 0 1-1 1H5a1 1 0 0 1-1-1zm2-7h7v2H6v3l-5-4l5-4z"
559
365
  }, null, -1)]]);
560
366
  }
561
367
  var logout_box_line_default = markRaw({
562
368
  name: "ri-logout-box-line",
563
- render: render$31
564
- }), _hoisted_1$54 = {
369
+ render: render$32
370
+ }), _hoisted_1$60 = {
565
371
  viewBox: "0 0 48 48",
566
372
  width: "1.2em",
567
373
  height: "1.2em"
568
374
  };
569
- function render$30(e, M) {
570
- return openBlock(), createElementBlock("svg", _hoisted_1$54, [...M[0] ||= [createElementVNode("path", {
375
+ function render$31(e, M) {
376
+ return openBlock(), createElementBlock("svg", _hoisted_1$60, [...M[0] ||= [createElementVNode("path", {
571
377
  fill: "none",
572
378
  stroke: "currentColor",
573
379
  "stroke-linecap": "round",
@@ -578,7 +384,7 @@ function render$30(e, M) {
578
384
  }
579
385
  var to_top_one_default = markRaw({
580
386
  name: "icon-park-outline-to-top-one",
581
- render: render$30
387
+ render: render$31
582
388
  }), BackTop_default = /* @__PURE__ */ defineComponent({
583
389
  name: "BackTop",
584
390
  __name: "index",
@@ -615,18 +421,18 @@ var to_top_one_default = markRaw({
615
421
  _: 1
616
422
  }, 16)]));
617
423
  }
618
- }), _hoisted_1$53 = {
424
+ }), _hoisted_1$59 = {
619
425
  viewBox: "0 0 24 24",
620
426
  width: "1.2em",
621
427
  height: "1.2em"
622
428
  };
623
- function render$29(e, M) {
624
- return openBlock(), createElementBlock("svg", _hoisted_1$53, [...M[0] ||= [createStaticVNode("<g fill=\"none\" stroke=\"currentColor\" stroke-linecap=\"round\" stroke-linejoin=\"round\" stroke-width=\"2\"><path stroke-dasharray=\"18\" d=\"M12 3c4.97 0 9 4.03 9 9\"><animate fill=\"freeze\" attributeName=\"stroke-dashoffset\" dur=\"0.3s\" values=\"18;0\"></animate><animateTransform attributeName=\"transform\" dur=\"1.5s\" repeatCount=\"indefinite\" type=\"rotate\" values=\"0 12 12;360 12 12\"></animateTransform></path><path stroke-dasharray=\"60\" d=\"M12 3c4.97 0 9 4.03 9 9c0 4.97 -4.03 9 -9 9c-4.97 0 -9 -4.03 -9 -9c0 -4.97 4.03 -9 9 -9Z\" opacity=\".3\"><animate fill=\"freeze\" attributeName=\"stroke-dashoffset\" dur=\"1.2s\" values=\"60;0\"></animate></path></g>", 1)]]);
429
+ function render$30(e, M) {
430
+ return openBlock(), createElementBlock("svg", _hoisted_1$59, [...M[0] ||= [createStaticVNode("<g fill=\"none\" stroke=\"currentColor\" stroke-linecap=\"round\" stroke-linejoin=\"round\" stroke-width=\"2\"><path stroke-dasharray=\"18\" d=\"M12 3c4.97 0 9 4.03 9 9\"><animate fill=\"freeze\" attributeName=\"stroke-dashoffset\" dur=\"0.3s\" values=\"18;0\"></animate><animateTransform attributeName=\"transform\" dur=\"1.5s\" repeatCount=\"indefinite\" type=\"rotate\" values=\"0 12 12;360 12 12\"></animateTransform></path><path stroke-dasharray=\"60\" d=\"M12 3c4.97 0 9 4.03 9 9c0 4.97 -4.03 9 -9 9c-4.97 0 -9 -4.03 -9 -9c0 -4.97 4.03 -9 9 -9Z\" opacity=\".3\"><animate fill=\"freeze\" attributeName=\"stroke-dashoffset\" dur=\"1.2s\" values=\"60;0\"></animate></path></g>", 1)]]);
625
431
  }
626
432
  var loading_twotone_loop_default = markRaw({
627
433
  name: "line-md-loading-twotone-loop",
628
- render: render$29
629
- }), _hoisted_1$52 = { class: "iframe-view absolute left-0 top-0 h-full w-full flex flex-col" }, _hoisted_2$19 = ["data-path", "src"], _hoisted_3$16 = { class: "absolute left-0 top-0 h-full w-full flex-center bg-stone-2/75 dark:bg-stone-8/75" }, IframeView_default = /* @__PURE__ */ _plugin_vue_export_helper_default(/* @__PURE__ */ defineComponent({
434
+ render: render$30
435
+ }), _hoisted_1$58 = { class: "iframe-view absolute left-0 top-0 h-full w-full flex flex-col" }, _hoisted_2$23 = ["data-path", "src"], _hoisted_3$17 = { class: "absolute left-0 top-0 h-full w-full flex-center bg-stone-2/75 dark:bg-stone-8/75" }, IframeView_default = /* @__PURE__ */ _plugin_vue_export_helper_default(/* @__PURE__ */ defineComponent({
630
436
  name: "IframeView",
631
437
  __name: "IframeView",
632
438
  setup(e) {
@@ -650,7 +456,7 @@ var loading_twotone_loop_default = markRaw({
650
456
  function ke(e, M) {
651
457
  return De.get(M) || e;
652
458
  }
653
- return (e, De) => (openBlock(), createElementBlock("div", _hoisted_1$52, [(openBlock(!0), createElementBlock(Fragment, null, renderList(unref(ve).openedList, (e) => (openBlock(), createElementBlock("div", {
459
+ return (e, De) => (openBlock(), createElementBlock("div", _hoisted_1$58, [(openBlock(!0), createElementBlock(Fragment, null, renderList(unref(ve).openedList, (e) => (openBlock(), createElementBlock("div", {
654
460
  key: e.path,
655
461
  class: normalizeClass(["absolute left-0 top-0 h-full w-full flex flex-col", { "z-1": unref(M).fullPath === e.path }])
656
462
  }, [createVNode(Transition, {
@@ -666,17 +472,17 @@ var loading_twotone_loop_default = markRaw({
666
472
  src: ke(e.src, e.path),
667
473
  frameborder: "0",
668
474
  class: "h-full w-full flex-1"
669
- }, null, 8, _hoisted_2$19), [[vShow, unref(M).fullPath === e.path]])]),
475
+ }, null, 8, _hoisted_2$23), [[vShow, unref(M).fullPath === e.path]])]),
670
476
  _: 2
671
- }, 1032, ["name"]), withDirectives(createElementVNode("div", _hoisted_3$16, [createVNode(unref(loading_twotone_loop_default), { text: "34px" })], 512), [[vShow, e.isLoading]])], 2))), 128))]));
477
+ }, 1032, ["name"]), withDirectives(createElementVNode("div", _hoisted_3$17, [createVNode(unref(loading_twotone_loop_default), { text: "34px" })], 512), [[vShow, e.isLoading]])], 2))), 128))]));
672
478
  }
673
- }), [["__scopeId", "data-v-b2a66818"]]), _hoisted_1$51 = {
479
+ }), [["__scopeId", "data-v-b2a66818"]]), _hoisted_1$57 = {
674
480
  viewBox: "0 0 48 48",
675
481
  width: "1.2em",
676
482
  height: "1.2em"
677
- }, _hoisted_2$18 = ["id"], _hoisted_3$15 = ["mask"];
678
- function render$28(e, M) {
679
- return openBlock(), createElementBlock("svg", _hoisted_1$51, [createElementVNode("defs", null, [createElementVNode("mask", { id: e.idMap.SVGPzpkEcud }, [...M[0] ||= [createElementVNode("g", {
483
+ }, _hoisted_2$22 = ["id"], _hoisted_3$16 = ["mask"];
484
+ function render$29(e, M) {
485
+ return openBlock(), createElementBlock("svg", _hoisted_1$57, [createElementVNode("defs", null, [createElementVNode("mask", { id: e.idMap.SVGPzpkEcud }, [...M[0] ||= [createElementVNode("g", {
680
486
  fill: "none",
681
487
  stroke: "#fff",
682
488
  "stroke-linejoin": "round",
@@ -687,33 +493,33 @@ function render$28(e, M) {
687
493
  }), createElementVNode("path", {
688
494
  "stroke-linecap": "round",
689
495
  d: "M37.564 15.51c4.22.368 7.115 1.662 7.686 3.796c1.144 4.268-7.443 10.277-19.18 13.421S3.893 34.962 2.75 30.694c-.6-2.236 1.472-4.95 5.269-7.48"
690
- })], -1)]], 8, _hoisted_2$18)]), createElementVNode("path", {
496
+ })], -1)]], 8, _hoisted_2$22)]), createElementVNode("path", {
691
497
  fill: "currentColor",
692
498
  d: "M0 0h48v48H0z",
693
499
  mask: "url(#" + e.idMap.SVGPzpkEcud + ")"
694
- }, null, 8, _hoisted_3$15)]);
500
+ }, null, 8, _hoisted_3$16)]);
695
501
  }
696
502
  var planet_default = markRaw({
697
503
  name: "icon-park-twotone-planet",
698
- render: render$28,
504
+ render: render$29,
699
505
  setup() {
700
506
  return { idMap: { SVGPzpkEcud: "uicons-" + Math.random().toString(36).substr(2, 10) } };
701
507
  }
702
- }), _hoisted_1$50 = {
508
+ }), _hoisted_1$56 = {
703
509
  viewBox: "0 0 24 24",
704
510
  width: "1.2em",
705
511
  height: "1.2em"
706
512
  };
707
- function render$27(e, M) {
708
- return openBlock(), createElementBlock("svg", _hoisted_1$50, [...M[0] ||= [createElementVNode("path", {
513
+ function render$28(e, M) {
514
+ return openBlock(), createElementBlock("svg", _hoisted_1$56, [...M[0] ||= [createElementVNode("path", {
709
515
  fill: "currentColor",
710
516
  d: "M10 6v2H5v11h11v-5h2v6a1 1 0 0 1-1 1H4a1 1 0 0 1-1-1V7a1 1 0 0 1 1-1zm11-3v9l-3.794-3.793l-5.999 6l-1.414-1.414l5.999-6L12 3z"
711
517
  }, null, -1)]]);
712
518
  }
713
519
  var external_link_fill_default = markRaw({
714
520
  name: "ri-external-link-fill",
715
- render: render$27
716
- }), _hoisted_1$49 = { class: "absolute h-full w-full flex flex-col" }, _hoisted_2$17 = { class: "flex flex-col items-center" }, _hoisted_3$14 = { class: "line-clamp-3" }, LinkView_default = /* @__PURE__ */ _plugin_vue_export_helper_default(/* @__PURE__ */ defineComponent({
521
+ render: render$28
522
+ }), _hoisted_1$55 = { class: "absolute h-full w-full flex flex-col" }, _hoisted_2$21 = { class: "flex flex-col items-center" }, _hoisted_3$15 = { class: "line-clamp-3" }, LinkView_default = /* @__PURE__ */ _plugin_vue_export_helper_default(/* @__PURE__ */ defineComponent({
717
523
  name: "LinkView",
718
524
  __name: "LinkView",
719
525
  setup(e) {
@@ -726,7 +532,7 @@ var external_link_fill_default = markRaw({
726
532
  }
727
533
  return (e, Ee) => {
728
534
  let ke = HTooltip_default, je = HButton_default;
729
- return openBlock(), createElementBlock("div", _hoisted_1$49, [createVNode(Transition, {
535
+ return openBlock(), createElementBlock("div", _hoisted_1$55, [createVNode(Transition, {
730
536
  name: unref(ne).settings.mainPage.enableTransition ? unref(ne).settings.mainPage.transitionMode : "",
731
537
  mode: "out-in",
732
538
  appear: ""
@@ -735,7 +541,7 @@ var external_link_fill_default = markRaw({
735
541
  key: unref(M).meta.link,
736
542
  class: "flex flex-1 flex-col justify-center"
737
543
  }, {
738
- default: withCtx(() => [createElementVNode("div", _hoisted_2$17, [
544
+ default: withCtx(() => [createElementVNode("div", _hoisted_2$21, [
739
545
  createVNode(unref(planet_default), {
740
546
  text: "115px",
741
547
  class: "text-ui-primary/80"
@@ -745,7 +551,7 @@ var external_link_fill_default = markRaw({
745
551
  class: "my-2 max-w-[300px] cursor-pointer text-center text-[14px] text-stone-5",
746
552
  onClick: Ee[0] ||= (e) => unref(M).meta.link && unref(ve)(unref(M).meta.link)
747
553
  }, [createVNode(ke, { text: "复制链接" }, {
748
- default: withCtx(() => [createElementVNode("div", _hoisted_3$14, toDisplayString(unref(M).meta.link), 1)]),
554
+ default: withCtx(() => [createElementVNode("div", _hoisted_3$15, toDisplayString(unref(M).meta.link), 1)]),
749
555
  _: 1
750
556
  })]),
751
557
  createVNode(je, {
@@ -803,24 +609,24 @@ var external_link_fill_default = markRaw({
803
609
  ], 64);
804
610
  };
805
611
  }
806
- }), [["__scopeId", "data-v-b2947ab6"]]), _hoisted_1$48 = {
612
+ }), [["__scopeId", "data-v-b2947ab6"]]), _hoisted_1$54 = {
807
613
  viewBox: "0 0 24 24",
808
614
  width: "1.2em",
809
615
  height: "1.2em"
810
616
  };
811
- function render$26(e, M) {
812
- return openBlock(), createElementBlock("svg", _hoisted_1$48, [...M[0] ||= [createElementVNode("path", {
617
+ function render$27(e, M) {
618
+ return openBlock(), createElementBlock("svg", _hoisted_1$54, [...M[0] ||= [createElementVNode("path", {
813
619
  fill: "currentColor",
814
620
  d: "M16.288 9.428A4.999 4.999 0 0 0 7 12a4.999 4.999 0 0 0 9.288 2.572l-1.715-1.028A3 3 0 1 1 12 9c1.093 0 2.05.584 2.573 1.457zM22 12c0-5.52-4.48-10-10-10S2 6.48 2 12s4.48 10 10 10s10-4.48 10-10M4 12c0-4.42 3.58-8 8-8s8 3.58 8 8s-3.58 8-8 8s-8-3.58-8-8"
815
621
  }, null, -1)]]);
816
622
  }
817
623
  var copyright_line_default = markRaw({
818
624
  name: "ri-copyright-line",
819
- render: render$26
820
- }), _hoisted_1$47 = {
625
+ render: render$27
626
+ }), _hoisted_1$53 = {
821
627
  key: 0,
822
628
  class: "copyright"
823
- }, _hoisted_2$16 = { key: 0 }, _hoisted_3$13 = ["href"], _hoisted_4$9 = { key: 1 }, _hoisted_5$7 = {
629
+ }, _hoisted_2$20 = { key: 0 }, _hoisted_3$14 = ["href"], _hoisted_4$10 = { key: 1 }, _hoisted_5$7 = {
824
630
  key: 2,
825
631
  href: "https://beian.miit.gov.cn/",
826
632
  target: "_blank",
@@ -830,16 +636,16 @@ var copyright_line_default = markRaw({
830
636
  __name: "index",
831
637
  setup(e) {
832
638
  let M = useRoute(), { settingsStore: ne } = useContext();
833
- return (e, ve) => unref(M).meta.copyright ?? unref(ne).settings.copyright.enable ? (openBlock(), createElementBlock("footer", _hoisted_1$47, [
639
+ return (e, ve) => unref(M).meta.copyright ?? unref(ne).settings.copyright.enable ? (openBlock(), createElementBlock("footer", _hoisted_1$53, [
834
640
  ve[0] ||= createElementVNode("span", null, "Copyright", -1),
835
641
  createVNode(unref(copyright_line_default), { text: "18px" }),
836
- unref(ne).settings.copyright.dates ? (openBlock(), createElementBlock("span", _hoisted_2$16, toDisplayString(unref(ne).settings.copyright.dates), 1)) : createCommentVNode("", !0),
642
+ unref(ne).settings.copyright.dates ? (openBlock(), createElementBlock("span", _hoisted_2$20, toDisplayString(unref(ne).settings.copyright.dates), 1)) : createCommentVNode("", !0),
837
643
  unref(ne).settings.copyright.company ? (openBlock(), createElementBlock(Fragment, { key: 1 }, [unref(ne).settings.copyright.website ? (openBlock(), createElementBlock("a", {
838
644
  key: 0,
839
645
  href: unref(ne).settings.copyright.website,
840
646
  target: "_blank",
841
647
  rel: "noopener"
842
- }, toDisplayString(unref(ne).settings.copyright.company), 9, _hoisted_3$13)) : (openBlock(), createElementBlock("span", _hoisted_4$9, toDisplayString(unref(ne).settings.copyright.company), 1))], 64)) : createCommentVNode("", !0),
648
+ }, toDisplayString(unref(ne).settings.copyright.company), 9, _hoisted_3$14)) : (openBlock(), createElementBlock("span", _hoisted_4$10, toDisplayString(unref(ne).settings.copyright.company), 1))], 64)) : createCommentVNode("", !0),
843
649
  unref(ne).settings.copyright.beian ? (openBlock(), createElementBlock("a", _hoisted_5$7, toDisplayString(unref(ne).settings.copyright.beian), 1)) : createCommentVNode("", !0)
844
650
  ])) : createCommentVNode("", !0);
845
651
  }
@@ -870,7 +676,7 @@ function useLayoutVisible(e) {
870
676
  };
871
677
  }) };
872
678
  }
873
- var _hoisted_1$46 = {
679
+ var _hoisted_1$52 = {
874
680
  key: 1,
875
681
  class: "text-19px font-semibold block truncate"
876
682
  }, Logo_default = /* @__PURE__ */ _plugin_vue_export_helper_default(/* @__PURE__ */ defineComponent({
@@ -900,19 +706,19 @@ var _hoisted_1$46 = {
900
706
  name: e.name,
901
707
  size: 30,
902
708
  color: "transparent"
903
- }, null, 8, ["name"])) : createCommentVNode("", !0), e.showTitle ? (openBlock(), createElementBlock("span", _hoisted_1$46, [renderSlot(Ee.$slots, "default", {}, () => [createTextVNode(toDisplayString(unref(ne)), 1)], !0)])) : createCommentVNode("", !0)]),
709
+ }, null, 8, ["name"])) : createCommentVNode("", !0), e.showTitle ? (openBlock(), createElementBlock("span", _hoisted_1$52, [renderSlot(Ee.$slots, "default", {}, () => [createTextVNode(toDisplayString(unref(ne)), 1)], !0)])) : createCommentVNode("", !0)]),
904
710
  _: 3
905
711
  }, 8, ["to", "class"]);
906
712
  };
907
713
  }
908
- }), [["__scopeId", "data-v-e78a4c15"]]), _hoisted_1$45 = { class: "dark:bg-[var(--g-container-bg)] py-1" }, _hoisted_2$15 = {
714
+ }), [["__scopeId", "data-v-e78a4c15"]]), _hoisted_1$51 = { class: "dark:bg-[var(--g-container-bg)] py-1" }, _hoisted_2$19 = {
909
715
  key: 0,
910
716
  "border-b": "~ solid stone-2 dark:stone-7 last:size-0",
911
717
  class: "my-1"
912
- }, _hoisted_3$12 = {
718
+ }, _hoisted_3$13 = {
913
719
  key: 1,
914
720
  class: "px-1"
915
- }, _hoisted_4$8 = ["disabled", "onClick"], HDropdownMenu_default = /* @__PURE__ */ defineComponent({
721
+ }, _hoisted_4$9 = ["disabled", "onClick"], HDropdownMenu_default = /* @__PURE__ */ defineComponent({
916
722
  __name: "HDropdownMenu",
917
723
  props: { items: {} },
918
724
  setup(e) {
@@ -926,26 +732,26 @@ var _hoisted_1$46 = {
926
732
  delay: 0,
927
733
  "auto-hide": !1
928
734
  }), {
929
- popper: withCtx(() => [createElementVNode("div", _hoisted_1$45, [(openBlock(!0), createElementBlock(Fragment, null, renderList(unref(ne), (e, M) => (openBlock(), createElementBlock(Fragment, { key: M }, [e?.key === "divider" ? (openBlock(), createElementBlock("div", _hoisted_2$15)) : (openBlock(), createElementBlock("div", _hoisted_3$12, [createElementVNode("button", {
735
+ popper: withCtx(() => [createElementVNode("div", _hoisted_1$51, [(openBlock(!0), createElementBlock(Fragment, null, renderList(unref(ne), (e, M) => (openBlock(), createElementBlock(Fragment, { key: M }, [e?.key === "divider" ? (openBlock(), createElementBlock("div", _hoisted_2$19)) : (openBlock(), createElementBlock("div", _hoisted_3$13, [createElementVNode("button", {
930
736
  disabled: e.disabled,
931
737
  class: "w-full flex cursor-pointer items-center gap-2 border-size-0 rounded-md bg-inherit px-2 py-1.5 text-sm text-dark disabled:cursor-not-allowed dark:text-white disabled:opacity-50 hover:not-disabled:bg-stone-1 dark:hover:not-disabled:bg-stone-9",
932
738
  onClick: e?.onClick
933
739
  }, [e?.icon ? (openBlock(), createBlock(unref(PubinfoIcon_default), {
934
740
  key: 0,
935
741
  name: e.icon
936
- }, null, 8, ["name"])) : createCommentVNode("", !0), createTextVNode(" " + toDisplayString(e?.label), 1)], 8, _hoisted_4$8)]))], 64))), 128))])]),
742
+ }, null, 8, ["name"])) : createCommentVNode("", !0), createTextVNode(" " + toDisplayString(e?.label), 1)], 8, _hoisted_4$9)]))], 64))), 128))])]),
937
743
  default: withCtx(() => [renderSlot(e.$slots, "default")]),
938
744
  _: 3
939
745
  }, 16);
940
746
  };
941
747
  }
942
- }), _hoisted_1$44 = {
748
+ }), _hoisted_1$50 = {
943
749
  viewBox: "0 0 32 32",
944
750
  width: "1.2em",
945
751
  height: "1.2em"
946
752
  };
947
- function render$25(e, M) {
948
- return openBlock(), createElementBlock("svg", _hoisted_1$44, [...M[0] ||= [createElementVNode("path", {
753
+ function render$26(e, M) {
754
+ return openBlock(), createElementBlock("svg", _hoisted_1$50, [...M[0] ||= [createElementVNode("path", {
949
755
  fill: "currentColor",
950
756
  d: "M16 8a5 5 0 1 0 5 5a5 5 0 0 0-5-5"
951
757
  }, null, -1), createElementVNode("path", {
@@ -955,35 +761,35 @@ function render$25(e, M) {
955
761
  }
956
762
  var user_avatar_filled_alt_default = markRaw({
957
763
  name: "carbon-user-avatar-filled-alt",
958
- render: render$25
959
- }), _hoisted_1$43 = {
764
+ render: render$26
765
+ }), _hoisted_1$49 = {
960
766
  viewBox: "0 0 24 24",
961
767
  width: "1.2em",
962
768
  height: "1.2em"
963
769
  };
964
- function render$24(e, M) {
965
- return openBlock(), createElementBlock("svg", _hoisted_1$43, [...M[0] ||= [createElementVNode("path", {
770
+ function render$25(e, M) {
771
+ return openBlock(), createElementBlock("svg", _hoisted_1$49, [...M[0] ||= [createElementVNode("path", {
966
772
  fill: "currentColor",
967
773
  d: "M12 14.95q-.2 0-.375-.062t-.325-.213l-4.6-4.6q-.275-.275-.275-.7t.275-.7t.7-.275t.7.275l3.9 3.9l3.9-3.9q.275-.275.7-.275t.7.275t.275.7t-.275.7l-4.6 4.6q-.15.15-.325.213T12 14.95"
968
774
  }, null, -1)]]);
969
775
  }
970
776
  var expand_more_rounded_default = markRaw({
971
777
  name: "material-symbols-expand-more-rounded",
972
- render: render$24
973
- }), _hoisted_1$42 = {
778
+ render: render$25
779
+ }), _hoisted_1$48 = {
974
780
  viewBox: "0 0 256 256",
975
781
  width: "1.2em",
976
782
  height: "1.2em"
977
783
  };
978
- function render$23(e, M) {
979
- return openBlock(), createElementBlock("svg", _hoisted_1$42, [...M[0] ||= [createElementVNode("path", {
784
+ function render$24(e, M) {
785
+ return openBlock(), createElementBlock("svg", _hoisted_1$48, [...M[0] ||= [createElementVNode("path", {
980
786
  fill: "currentColor",
981
787
  d: "M132 24v208a4 4 0 0 1-8 0V24a4 4 0 0 1 8 0"
982
788
  }, null, -1)]]);
983
789
  }
984
790
  var line_vertical_thin_default = markRaw({
985
791
  name: "ph-line-vertical-thin",
986
- render: render$23
792
+ render: render$24
987
793
  });
988
794
  function useViewTransition(e) {
989
795
  function M() {
@@ -1030,34 +836,34 @@ var DarkModeToggle_default = /* @__PURE__ */ _plugin_vue_export_helper_default(/
1030
836
  onClick: ne
1031
837
  }, [createElementVNode("div", { class: normalizeClass(["animate-icon", { "animate-icon-day": unref(M).settings.app.colorScheme !== "dark" }]) }, null, 2)])) : createCommentVNode("", !0);
1032
838
  }
1033
- }), [["__scopeId", "data-v-b6c06270"]]), _hoisted_1$41 = {
839
+ }), [["__scopeId", "data-v-b6c06270"]]), _hoisted_1$47 = {
1034
840
  viewBox: "0 0 16 16",
1035
841
  width: "1.2em",
1036
842
  height: "1.2em"
1037
843
  };
1038
- function render$22(e, M) {
1039
- return openBlock(), createElementBlock("svg", _hoisted_1$41, [...M[0] ||= [createElementVNode("path", {
844
+ function render$23(e, M) {
845
+ return openBlock(), createElementBlock("svg", _hoisted_1$47, [...M[0] ||= [createElementVNode("path", {
1040
846
  fill: "currentColor",
1041
847
  d: "M4 3.5a.5.5 0 0 0-.5.5v1.614a.75.75 0 0 1-1.5 0V4a2 2 0 0 1 2-2h1.614a.75.75 0 0 1 0 1.5zm5.636-.75a.75.75 0 0 1 .75-.75H12a2 2 0 0 1 2 2v1.614a.75.75 0 0 1-1.5 0V4a.5.5 0 0 0-.5-.5h-1.614a.75.75 0 0 1-.75-.75M2.75 9.636a.75.75 0 0 1 .75.75V12a.5.5 0 0 0 .5.5h1.614a.75.75 0 0 1 0 1.5H4a2 2 0 0 1-2-2v-1.614a.75.75 0 0 1 .75-.75m10.5 0a.75.75 0 0 1 .75.75V12a2 2 0 0 1-2 2h-1.614a.75.75 0 1 1 0-1.5H12a.5.5 0 0 0 .5-.5v-1.614a.75.75 0 0 1 .75-.75"
1042
848
  }, null, -1)]]);
1043
849
  }
1044
850
  var full_screen_maximize_16_filled_default = markRaw({
1045
851
  name: "fluent-full-screen-maximize-16-filled",
1046
- render: render$22
1047
- }), _hoisted_1$40 = {
852
+ render: render$23
853
+ }), _hoisted_1$46 = {
1048
854
  viewBox: "0 0 16 16",
1049
855
  width: "1.2em",
1050
856
  height: "1.2em"
1051
857
  };
1052
- function render$21(e, M) {
1053
- return openBlock(), createElementBlock("svg", _hoisted_1$40, [...M[0] ||= [createElementVNode("path", {
858
+ function render$22(e, M) {
859
+ return openBlock(), createElementBlock("svg", _hoisted_1$46, [...M[0] ||= [createElementVNode("path", {
1054
860
  fill: "currentColor",
1055
861
  d: "M11.5 4a.5.5 0 0 0 .5.5h1.75a.75.75 0 0 1 0 1.5H12a2 2 0 0 1-2-2V2.25a.75.75 0 0 1 1.5 0zm0 8a.5.5 0 0 1 .5-.5h1.75a.75.75 0 0 0 0-1.5H12a2 2 0 0 0-2 2v1.75a.75.75 0 0 0 1.5 0zM4 11.5a.5.5 0 0 1 .5.5v1.75a.75.75 0 0 0 1.5 0V12a2 2 0 0 0-2-2H2.25a.75.75 0 0 0 0 1.5zM4.5 4a.5.5 0 0 1-.5.5H2.25a.75.75 0 0 0 0 1.5H4a2 2 0 0 0 2-2V2.25a.75.75 0 0 0-1.5 0z"
1056
862
  }, null, -1)]]);
1057
863
  }
1058
864
  var full_screen_minimize_16_filled_default = markRaw({
1059
865
  name: "fluent-full-screen-minimize-16-filled",
1060
- render: render$21
866
+ render: render$22
1061
867
  }), Fullscreen_default = /* @__PURE__ */ defineComponent({
1062
868
  name: "Fullscreen",
1063
869
  __name: "Fullscreen",
@@ -1462,13 +1268,13 @@ defineComponent({
1462
1268
  };
1463
1269
  }
1464
1270
  });
1465
- var _hoisted_1$39 = { class: "fixed inset-0 overflow-y-auto" }, _hoisted_2$14 = { class: "min-h-full flex items-end justify-center p-4 text-center sm:items-center sm:p-0" }, _hoisted_3$11 = {
1271
+ var _hoisted_1$45 = { class: "fixed inset-0 overflow-y-auto" }, _hoisted_2$18 = { class: "min-h-full flex items-end justify-center p-4 text-center sm:items-center sm:p-0" }, _hoisted_3$12 = {
1466
1272
  flex: "~ items-center justify-between",
1467
1273
  "px-4": "",
1468
1274
  "py-3": "",
1469
1275
  "border-b": "~ solid stone/15",
1470
1276
  "text-6": ""
1471
- }, _hoisted_4$7 = {
1277
+ }, _hoisted_4$8 = {
1472
1278
  key: 0,
1473
1279
  flex: "~ items-center justify-end",
1474
1280
  "px-4": "",
@@ -1537,13 +1343,13 @@ var _hoisted_1$39 = { class: "fixed inset-0 overflow-y-auto" }, _hoisted_2$14 =
1537
1343
  }, unref(De)), {
1538
1344
  default: withCtx(() => [createElementVNode("div", { class: normalizeClass(["fixed inset-0 bg-stone-2/75 transition-opacity dark:bg-stone-8/75", { "backdrop-blur-sm": e.overlay }]) }, null, 2)]),
1539
1345
  _: 1
1540
- }, 16, ["appear"]), createElementVNode("div", _hoisted_1$39, [createElementVNode("div", _hoisted_2$14, [createVNode(unref(he$1), mergeProps({
1346
+ }, 16, ["appear"]), createElementVNode("div", _hoisted_1$45, [createElementVNode("div", _hoisted_2$18, [createVNode(unref(he$1), mergeProps({
1541
1347
  as: "template",
1542
1348
  appear: e.appear
1543
1349
  }, unref(ke)), {
1544
1350
  default: withCtx(() => [createVNode(unref(Ge$1), { class: "relative w-full flex flex-col overflow-hidden rounded-xl bg-white text-left shadow-xl sm:my-8 sm:max-w-lg dark:bg-stone-8" }, {
1545
1351
  default: withCtx(() => [
1546
- createElementVNode("div", _hoisted_3$11, [createVNode(unref(Ve$1), {
1352
+ createElementVNode("div", _hoisted_3$12, [createVNode(unref(Ve$1), {
1547
1353
  "m-0": "",
1548
1354
  "text-lg": "",
1549
1355
  "text-dark": "",
@@ -1563,7 +1369,7 @@ var _hoisted_1$39 = { class: "fixed inset-0 overflow-y-auto" }, _hoisted_2$14 =
1563
1369
  default: withCtx(() => [renderSlot(M.$slots, "default")]),
1564
1370
  _: 3
1565
1371
  }),
1566
- Ee.footer ? (openBlock(), createElementBlock("div", _hoisted_4$7, [renderSlot(M.$slots, "footer")])) : createCommentVNode("", !0)
1372
+ Ee.footer ? (openBlock(), createElementBlock("div", _hoisted_4$8, [renderSlot(M.$slots, "footer")])) : createCommentVNode("", !0)
1567
1373
  ]),
1568
1374
  _: 3
1569
1375
  })]),
@@ -1574,7 +1380,7 @@ var _hoisted_1$39 = { class: "fixed inset-0 overflow-y-auto" }, _hoisted_2$14 =
1574
1380
  _: 3
1575
1381
  }, 8, ["appear", "show"]));
1576
1382
  }
1577
- }), _sfc_main$2 = {}, _hoisted_1$38 = {
1383
+ }), _sfc_main$2 = {}, _hoisted_1$44 = {
1578
1384
  "mr-4px": "",
1579
1385
  "h-6": "",
1580
1386
  "min-w-24px": "",
@@ -1597,9 +1403,9 @@ var _hoisted_1$39 = { class: "fixed inset-0 overflow-y-auto" }, _hoisted_2$14 =
1597
1403
  "dark:ring-stone-7": ""
1598
1404
  };
1599
1405
  function _sfc_render$2(e, M) {
1600
- return openBlock(), createElementBlock("kbd", _hoisted_1$38, [renderSlot(e.$slots, "default")]);
1406
+ return openBlock(), createElementBlock("kbd", _hoisted_1$44, [renderSlot(e.$slots, "default")]);
1601
1407
  }
1602
- var HKbd_default = /* @__PURE__ */ _plugin_vue_export_helper_default(_sfc_main$2, [["render", _sfc_render$2]]), _hoisted_1$37 = { class: "px-4" }, _hoisted_2$13 = { class: "grid gap-2 md:grid-cols-2" }, _hoisted_3$10 = { class: "list-none pl-4 text-sm" }, _hoisted_4$6 = { class: "py-1" }, _hoisted_5$6 = {
1408
+ var HKbd_default = /* @__PURE__ */ _plugin_vue_export_helper_default(_sfc_main$2, [["render", _sfc_render$2]]), _hoisted_1$43 = { class: "px-4" }, _hoisted_2$17 = { class: "grid gap-2 md:grid-cols-2" }, _hoisted_3$11 = { class: "list-none pl-4 text-sm" }, _hoisted_4$7 = { class: "py-1" }, _hoisted_5$6 = {
1603
1409
  key: 0,
1604
1410
  class: "py-1"
1605
1411
  }, _hoisted_6$5 = { key: 0 }, _hoisted_7$3 = { class: "list-none pl-4 text-sm" }, _hoisted_8$3 = { class: "py-1" }, _hoisted_9$2 = { key: 1 }, _hoisted_10$2 = { class: "list-none pl-4 text-sm" }, _hoisted_11$2 = { class: "py-1" }, _hoisted_12$2 = { class: "py-1" }, _hoisted_13$2 = { class: "py-1" }, _hoisted_14$2 = { class: "py-1" }, _hoisted_15$1 = { class: "py-1" }, _hoisted_16$1 = { key: 2 }, _hoisted_17$1 = { class: "list-none pl-4 text-sm" }, _hoisted_18 = { class: "py-1" }, _hoisted_19 = { class: "py-1" }, HotkeysIntro_default = /* @__PURE__ */ defineComponent({
@@ -1614,8 +1420,8 @@ var HKbd_default = /* @__PURE__ */ _plugin_vue_export_helper_default(_sfc_main$2
1614
1420
  "onUpdate:modelValue": M[0] ||= (e) => isRef(ne) ? ne.value = e : null,
1615
1421
  title: "快捷键介绍"
1616
1422
  }, {
1617
- default: withCtx(() => [createElementVNode("div", _hoisted_1$37, [createElementVNode("div", _hoisted_2$13, [
1618
- createElementVNode("div", null, [M[5] ||= createElementVNode("h2", { class: "m-0 text-lg font-bold" }, " 全局 ", -1), createElementVNode("ul", _hoisted_3$10, [createElementVNode("li", _hoisted_4$6, [
1423
+ default: withCtx(() => [createElementVNode("div", _hoisted_1$43, [createElementVNode("div", _hoisted_2$17, [
1424
+ createElementVNode("div", null, [M[5] ||= createElementVNode("h2", { class: "m-0 text-lg font-bold" }, " 全局 ", -1), createElementVNode("ul", _hoisted_3$11, [createElementVNode("li", _hoisted_4$7, [
1619
1425
  createVNode(ve, null, {
1620
1426
  default: withCtx(() => [createTextVNode(toDisplayString(unref(Ee).os === "mac" ? "⌥" : "Alt"), 1)]),
1621
1427
  _: 1
@@ -1730,20 +1536,20 @@ var HKbd_default = /* @__PURE__ */ _plugin_vue_export_helper_default(_sfc_main$2
1730
1536
  }, 8, ["modelValue"]);
1731
1537
  };
1732
1538
  }
1733
- }), _hoisted_1$36 = {
1539
+ }), _hoisted_1$42 = {
1734
1540
  viewBox: "0 0 16 16",
1735
1541
  width: "1.2em",
1736
1542
  height: "1.2em"
1737
1543
  };
1738
- function render$20(e, M) {
1739
- return openBlock(), createElementBlock("svg", _hoisted_1$36, [...M[0] ||= [createElementVNode("path", {
1544
+ function render$21(e, M) {
1545
+ return openBlock(), createElementBlock("svg", _hoisted_1$42, [...M[0] ||= [createElementVNode("path", {
1740
1546
  fill: "currentColor",
1741
1547
  d: "M6.97.47a.75.75 0 0 1 1.06 0l1.75 1.75a.75.75 0 0 1 0 1.06L8.03 5.03a.75.75 0 0 1-1.06-1.06l.43-.43a4.5 4.5 0 0 0-2.28 7.918a.75.75 0 0 1-.961 1.152A6 6 0 0 1 7.463 2.024L6.97 1.53a.75.75 0 0 1 0-1.06m3.815 3.016a.75.75 0 0 1 1.056-.096a6 6 0 0 1-3.304 10.586l.493.494a.75.75 0 1 1-1.06 1.06l-1.75-1.75a.75.75 0 0 1 0-1.06l1.75-1.75a.75.75 0 0 1 1.06 1.06l-.43.43a4.5 4.5 0 0 0 2.28-7.918a.75.75 0 0 1-.095-1.056"
1742
1548
  }, null, -1)]]);
1743
1549
  }
1744
1550
  var arrow_sync_16_filled_default = markRaw({
1745
1551
  name: "fluent-arrow-sync-16-filled",
1746
- render: render$20
1552
+ render: render$21
1747
1553
  });
1748
1554
  function useTabbar() {
1749
1555
  let { settingsStore: e, tabbarStore: M } = useContext(), ne = useRoute(), ve = useRouter();
@@ -1870,7 +1676,7 @@ var PageReload_default = /* @__PURE__ */ defineComponent({
1870
1676
  name: "Preferences",
1871
1677
  __name: "index",
1872
1678
  setup(e, { expose: M }) {
1873
- let ne = defineAsyncComponent(() => import("./PreferencesContent-CWHTBvHQ.js")), [ve, Ee] = useToggle(!1);
1679
+ let ne = defineAsyncComponent(() => import("./PreferencesContent-BAIH81yS.js")), [ve, Ee] = useToggle(!1);
1874
1680
  return M({ open: () => Ee() }), (e, M) => {
1875
1681
  let Ee = HSlideover_default;
1876
1682
  return openBlock(), createBlock(Ee, {
@@ -1883,13 +1689,13 @@ var PageReload_default = /* @__PURE__ */ defineComponent({
1883
1689
  }, 8, ["modelValue"]);
1884
1690
  };
1885
1691
  }
1886
- }), _hoisted_1$35 = {
1692
+ }), _hoisted_1$41 = {
1887
1693
  viewBox: "0 0 24 24",
1888
1694
  width: "1.2em",
1889
1695
  height: "1.2em"
1890
1696
  };
1891
- function render$19(e, M) {
1892
- return openBlock(), createElementBlock("svg", _hoisted_1$35, [...M[0] ||= [createElementVNode("path", {
1697
+ function render$20(e, M) {
1698
+ return openBlock(), createElementBlock("svg", _hoisted_1$41, [...M[0] ||= [createElementVNode("path", {
1893
1699
  fill: "none",
1894
1700
  stroke: "currentColor",
1895
1701
  "stroke-linecap": "round",
@@ -1900,7 +1706,7 @@ function render$19(e, M) {
1900
1706
  }
1901
1707
  var search_default$1 = markRaw({
1902
1708
  name: "iconamoon-search",
1903
- render: render$19
1709
+ render: render$20
1904
1710
  }), isShow = ref(!1), searchType = ref("menu"), panelRegistry = /* @__PURE__ */ new Map(), activePanelId = shallowRef(null);
1905
1711
  function updateActivePanel() {
1906
1712
  let e = null, M = -Infinity;
@@ -2322,69 +2128,69 @@ if (typeof window < "u") {
2322
2128
  let e = window.hotkeys;
2323
2129
  K$1.noConflict = (M) => (M && window.hotkeys === K$1 && (window.hotkeys = e), K$1), window.hotkeys = K$1;
2324
2130
  }
2325
- var _hoisted_1$34 = {
2131
+ var _hoisted_1$40 = {
2326
2132
  viewBox: "0 0 1024 1024",
2327
2133
  width: "1.2em",
2328
2134
  height: "1.2em"
2329
2135
  };
2330
- function render$18(e, M) {
2331
- return openBlock(), createElementBlock("svg", _hoisted_1$34, [...M[0] ||= [createElementVNode("path", {
2136
+ function render$19(e, M) {
2137
+ return openBlock(), createElementBlock("svg", _hoisted_1$40, [...M[0] ||= [createElementVNode("path", {
2332
2138
  fill: "currentColor",
2333
2139
  d: "M840.4 300H183.6c-19.7 0-30.7 20.8-18.5 35l328.4 380.8c9.4 10.9 27.5 10.9 37 0L858.9 335c12.2-14.2 1.2-35-18.5-35"
2334
2140
  }, null, -1)]]);
2335
2141
  }
2336
2142
  var caret_down_filled_default = markRaw({
2337
2143
  name: "ant-design-caret-down-filled",
2338
- render: render$18
2339
- }), _hoisted_1$33 = {
2144
+ render: render$19
2145
+ }), _hoisted_1$39 = {
2340
2146
  viewBox: "0 0 1024 1024",
2341
2147
  width: "1.2em",
2342
2148
  height: "1.2em"
2343
2149
  };
2344
- function render$17(e, M) {
2345
- return openBlock(), createElementBlock("svg", _hoisted_1$33, [...M[0] ||= [createElementVNode("path", {
2150
+ function render$18(e, M) {
2151
+ return openBlock(), createElementBlock("svg", _hoisted_1$39, [...M[0] ||= [createElementVNode("path", {
2346
2152
  fill: "currentColor",
2347
2153
  d: "M858.9 689L530.5 308.2c-9.4-10.9-27.5-10.9-37 0L165.1 689c-12.2 14.2-1.2 35 18.5 35h656.8c19.7 0 30.7-20.8 18.5-35"
2348
2154
  }, null, -1)]]);
2349
2155
  }
2350
2156
  var caret_up_filled_default = markRaw({
2351
2157
  name: "ant-design-caret-up-filled",
2352
- render: render$17
2353
- }), _hoisted_1$32 = {
2158
+ render: render$18
2159
+ }), _hoisted_1$38 = {
2354
2160
  viewBox: "0 0 1024 1024",
2355
2161
  width: "1.2em",
2356
2162
  height: "1.2em"
2357
2163
  };
2358
- function render$16(e, M) {
2359
- return openBlock(), createElementBlock("svg", _hoisted_1$32, [...M[0] ||= [createElementVNode("path", {
2164
+ function render$17(e, M) {
2165
+ return openBlock(), createElementBlock("svg", _hoisted_1$38, [...M[0] ||= [createElementVNode("path", {
2360
2166
  fill: "currentColor",
2361
2167
  d: "m795.9 750.7l125 125a32 32 0 0 1-45.3 45.2l-125-125a416 416 0 1 1 45.3-45.2M480 832a352 352 0 1 0 0-704a352 352 0 0 0 0 704"
2362
2168
  }, null, -1)]]);
2363
2169
  }
2364
2170
  var search_default = markRaw({
2365
2171
  name: "ep-search",
2366
- render: render$16
2367
- }), _hoisted_1$31 = {
2172
+ render: render$17
2173
+ }), _hoisted_1$37 = {
2368
2174
  viewBox: "0 0 512 512",
2369
2175
  width: "1.2em",
2370
2176
  height: "1.2em"
2371
2177
  };
2372
- function render$15(e, M) {
2373
- return openBlock(), createElementBlock("svg", _hoisted_1$31, [...M[0] ||= [createElementVNode("path", {
2178
+ function render$16(e, M) {
2179
+ return openBlock(), createElementBlock("svg", _hoisted_1$37, [...M[0] ||= [createElementVNode("path", {
2374
2180
  d: "M432.8 136v96H122.3l84.4-86.2-33.2-33.8L32 256l141.5 144 33.2-33.8-84.4-86.2H480V136h-47.2z",
2375
2181
  fill: "currentColor"
2376
2182
  }, null, -1)]]);
2377
2183
  }
2378
2184
  var md_return_left_default = markRaw({
2379
2185
  name: "ion-md-return-left",
2380
- render: render$15
2381
- }), _hoisted_1$30 = {
2186
+ render: render$16
2187
+ }), _hoisted_1$36 = {
2382
2188
  viewBox: "0 0 24 24",
2383
2189
  width: "1.2em",
2384
2190
  height: "1.2em"
2385
2191
  };
2386
- function render$14(e, M) {
2387
- return openBlock(), createElementBlock("svg", _hoisted_1$30, [...M[0] ||= [createElementVNode("path", {
2192
+ function render$15(e, M) {
2193
+ return openBlock(), createElementBlock("svg", _hoisted_1$36, [...M[0] ||= [createElementVNode("path", {
2388
2194
  fill: "none",
2389
2195
  stroke: "currentColor",
2390
2196
  "stroke-linecap": "round",
@@ -2395,12 +2201,12 @@ function render$14(e, M) {
2395
2201
  }
2396
2202
  var mood_empty_default = markRaw({
2397
2203
  name: "tabler-mood-empty",
2398
- render: render$14
2399
- }), _sfc_main$1 = {}, _hoisted_1$29 = { class: "flex items-center text-sm" };
2204
+ render: render$15
2205
+ }), _sfc_main$1 = {}, _hoisted_1$35 = { class: "flex items-center text-sm" };
2400
2206
  function _sfc_render$1(e, M) {
2401
- return openBlock(), createElementBlock("div", _hoisted_1$29, [renderSlot(e.$slots, "default", {}, void 0, !0)]);
2207
+ return openBlock(), createElementBlock("div", _hoisted_1$35, [renderSlot(e.$slots, "default", {}, void 0, !0)]);
2402
2208
  }
2403
- var Breadcrumb_default = /* @__PURE__ */ _plugin_vue_export_helper_default(_sfc_main$1, [["render", _sfc_render$1], ["__scopeId", "data-v-a495f0bb"]]), _hoisted_1$28 = { class: "breadcrumb-item flex items-center text-dark dark:text-white" }, _hoisted_2$12 = { class: "separator mx-2" }, item_default = /* @__PURE__ */ defineComponent({
2209
+ var Breadcrumb_default = /* @__PURE__ */ _plugin_vue_export_helper_default(_sfc_main$1, [["render", _sfc_render$1], ["__scopeId", "data-v-a495f0bb"]]), _hoisted_1$34 = { class: "breadcrumb-item flex items-center text-dark dark:text-white" }, _hoisted_2$16 = { class: "separator mx-2" }, item_default$1 = /* @__PURE__ */ defineComponent({
2404
2210
  __name: "item",
2405
2211
  props: {
2406
2212
  to: {},
@@ -2412,12 +2218,12 @@ var Breadcrumb_default = /* @__PURE__ */ _plugin_vue_export_helper_default(_sfc_
2412
2218
  function ve() {
2413
2219
  M.to && (M.replace ? ne.replace(M.to) : ne.push(M.to));
2414
2220
  }
2415
- return (ne, Ee) => (openBlock(), createElementBlock("div", _hoisted_1$28, [createElementVNode("span", _hoisted_2$12, toDisplayString(e.separator), 1), createElementVNode("span", {
2221
+ return (ne, Ee) => (openBlock(), createElementBlock("div", _hoisted_1$34, [createElementVNode("span", _hoisted_2$16, toDisplayString(e.separator), 1), createElementVNode("span", {
2416
2222
  class: normalizeClass(["text flex items-center opacity-60", { "is-link cursor-pointer transition-opacity hover:opacity-100": !!M.to }]),
2417
2223
  onClick: ve
2418
2224
  }, [renderSlot(ne.$slots, "default")], 2)]));
2419
2225
  }
2420
- }), _hoisted_1$27 = { class: "fixed inset-0" }, _hoisted_2$11 = { class: "h-full flex items-end justify-center p-4 text-center sm:items-center sm:p-0" }, _hoisted_3$9 = { class: "flex flex-col overflow-y-auto rounded-xl bg-white shadow-xl dark:bg-stone-8" }, _hoisted_4$5 = {
2226
+ }), _hoisted_1$33 = { class: "fixed inset-0" }, _hoisted_2$15 = { class: "h-full flex items-end justify-center p-4 text-center sm:items-center sm:p-0" }, _hoisted_3$10 = { class: "flex flex-col overflow-y-auto rounded-xl bg-white shadow-xl dark:bg-stone-8" }, _hoisted_4$6 = {
2421
2227
  class: "flex items-center px-4 py-3",
2422
2228
  "border-b": "~ solid stone-2 dark:stone-7"
2423
2229
  }, _hoisted_5$5 = ["onKeydown"], _hoisted_6$4 = [
@@ -2577,7 +2383,7 @@ var Breadcrumb_default = /* @__PURE__ */ _plugin_vue_export_helper_default(_sfc_
2577
2383
  default: withCtx(() => [createVNode(unref(he$1), mergeProps({ as: "template" }, ve.value), {
2578
2384
  default: withCtx(() => [...M[5] ||= [createElementVNode("div", { class: "fixed inset-0 bg-stone-200/75 backdrop-blur-sm transition-opacity dark:bg-stone-8/75" }, null, -1)]]),
2579
2385
  _: 1
2580
- }, 16), createElementVNode("div", _hoisted_1$27, [createElementVNode("div", _hoisted_2$11, [createVNode(unref(he$1), mergeProps({ as: "template" }, Ee.value), {
2386
+ }, 16), createElementVNode("div", _hoisted_1$33, [createElementVNode("div", _hoisted_2$15, [createVNode(unref(he$1), mergeProps({ as: "template" }, Ee.value), {
2581
2387
  default: withCtx(() => [createVNode(unref(Ge$1), { class: "relative h-full max-h-4/5 w-full flex flex-col text-left sm:max-w-2xl" }, {
2582
2388
  default: withCtx(() => [unref(ke).settings.tabbar.enable ? (openBlock(), createBlock(ne, {
2583
2389
  key: 0,
@@ -2593,8 +2399,8 @@ var Breadcrumb_default = /* @__PURE__ */ _plugin_vue_export_helper_default(_sfc_
2593
2399
  class: "mb-4 flex!",
2594
2400
  onClick: M[1] ||= withModifiers(() => {}, ["stop"]),
2595
2401
  onChange: nn
2596
- }, null, 8, ["modelValue"])) : createCommentVNode("", !0), createElementVNode("div", _hoisted_3$9, [
2597
- createElementVNode("div", _hoisted_4$5, [createVNode(unref(search_default), {
2402
+ }, null, 8, ["modelValue"])) : createCommentVNode("", !0), createElementVNode("div", _hoisted_3$10, [
2403
+ createElementVNode("div", _hoisted_4$6, [createVNode(unref(search_default), {
2598
2404
  text: "18px",
2599
2405
  class: "text-stone-5"
2600
2406
  }), withDirectives(createElementVNode("input", {
@@ -2639,7 +2445,7 @@ var Breadcrumb_default = /* @__PURE__ */ _plugin_vue_export_helper_default(_sfc_
2639
2445
  key: 0,
2640
2446
  class: "truncate"
2641
2447
  }, {
2642
- default: withCtx(() => [(openBlock(!0), createElementBlock(Fragment, null, renderList(e.breadcrumb, (e, M) => (openBlock(), createBlock(item_default, {
2448
+ default: withCtx(() => [(openBlock(!0), createElementBlock(Fragment, null, renderList(e.breadcrumb, (e, M) => (openBlock(), createBlock(item_default$1, {
2643
2449
  key: M,
2644
2450
  class: "text-xs"
2645
2451
  }, {
@@ -2683,11 +2489,11 @@ var Breadcrumb_default = /* @__PURE__ */ _plugin_vue_export_helper_default(_sfc_
2683
2489
  }, 8, ["show"])) : createCommentVNode("", !0);
2684
2490
  };
2685
2491
  }
2686
- }), _hoisted_1$26 = { class: "tools flex items-center gap-4 whitespace-nowrap px-4" }, _hoisted_2$10 = { class: "flex items-center empty:hidden gap-3" }, _hoisted_3$8 = {
2492
+ }), _hoisted_1$32 = { class: "tools flex items-center gap-4 whitespace-nowrap px-4" }, _hoisted_2$14 = { class: "flex items-center empty:hidden gap-3" }, _hoisted_3$9 = {
2687
2493
  "flex-center": "",
2688
2494
  "cursor-pointer": "",
2689
2495
  "gap-1": ""
2690
- }, _hoisted_4$4 = ["src", "onerror"], _hoisted_5$4 = { class: "flex-center cursor-pointer" }, _hoisted_6$3 = {
2496
+ }, _hoisted_4$5 = ["src", "onerror"], _hoisted_5$4 = { class: "flex-center cursor-pointer" }, _hoisted_6$3 = {
2691
2497
  "flex-center": "",
2692
2498
  "cursor-pointer": "",
2693
2499
  "gap-1": ""
@@ -2768,20 +2574,20 @@ var Breadcrumb_default = /* @__PURE__ */ _plugin_vue_export_helper_default(_sfc_
2768
2574
  $e.value &&= !1;
2769
2575
  }), (e, M) => {
2770
2576
  let ne = HDropdownMenu_default;
2771
- return openBlock(), createElementBlock("div", _hoisted_1$26, [
2577
+ return openBlock(), createElementBlock("div", _hoisted_1$32, [
2772
2578
  createVNode(SearchBar_default),
2773
- createElementVNode("div", _hoisted_2$10, [renderSlot(e.$slots, "default", {}, () => [
2579
+ createElementVNode("div", _hoisted_2$14, [renderSlot(e.$slots, "default", {}, () => [
2774
2580
  createVNode(Fullscreen_default),
2775
2581
  createVNode(PageReload_default),
2776
2582
  createVNode(DarkModeToggle_default)
2777
2583
  ])]),
2778
- createElementVNode("div", _hoisted_3$8, [
2584
+ createElementVNode("div", _hoisted_3$9, [
2779
2585
  unref(Ee).user.avatar && !unref($e) ? (openBlock(), createElementBlock("img", {
2780
2586
  key: 0,
2781
2587
  src: unref(Ee).user.avatar,
2782
2588
  onerror: () => $e.value = !0,
2783
2589
  class: "size-[24px] rounded-full"
2784
- }, null, 8, _hoisted_4$4)) : (openBlock(), createBlock(unref(user_avatar_filled_alt_default), {
2590
+ }, null, 8, _hoisted_4$5)) : (openBlock(), createBlock(unref(user_avatar_filled_alt_default), {
2785
2591
  key: 1,
2786
2592
  text: "20px",
2787
2593
  "mr-2px": ""
@@ -2809,12 +2615,760 @@ var Breadcrumb_default = /* @__PURE__ */ _plugin_vue_export_helper_default(_sfc_
2809
2615
  ]);
2810
2616
  };
2811
2617
  }
2618
+ }), _hoisted_1$31 = {
2619
+ viewBox: "0 0 24 24",
2620
+ width: "1.2em",
2621
+ height: "1.2em"
2622
+ };
2623
+ function render$14(e, M) {
2624
+ return openBlock(), createElementBlock("svg", _hoisted_1$31, [...M[0] ||= [
2625
+ createElementVNode("path", {
2626
+ fill: "currentColor",
2627
+ d: "M13 15.4c0-2.074 0-3.111.659-3.756S15.379 11 17.5 11s3.182 0 3.841.644C22 12.29 22 13.326 22 15.4v2.2c0 2.074 0 3.111-.659 3.756S19.621 22 17.5 22s-3.182 0-3.841-.644C13 20.71 13 19.674 13 17.6z",
2628
+ opacity: ".5"
2629
+ }, null, -1),
2630
+ createElementVNode("path", {
2631
+ fill: "currentColor",
2632
+ d: "M2 8.6c0 2.074 0 3.111.659 3.756S4.379 13 6.5 13s3.182 0 3.841-.644C11 11.71 11 10.674 11 8.6V6.4c0-2.074 0-3.111-.659-3.756S8.621 2 6.5 2s-3.182 0-3.841.644C2 3.29 2 4.326 2 6.4zm11-3.1c0-1.087 0-1.63.171-2.06a2.3 2.3 0 0 1 1.218-1.262C14.802 2 15.327 2 16.375 2h2.25c1.048 0 1.573 0 1.986.178c.551.236.99.69 1.218 1.262c.171.43.171.973.171 2.06s0 1.63-.171 2.06a2.3 2.3 0 0 1-1.218 1.262C20.198 9 19.673 9 18.625 9h-2.25c-1.048 0-1.573 0-1.986-.178a2.3 2.3 0 0 1-1.218-1.262C13 7.13 13 6.587 13 5.5"
2633
+ }, null, -1),
2634
+ createElementVNode("path", {
2635
+ fill: "currentColor",
2636
+ d: "M2 18.5c0 1.087 0 1.63.171 2.06a2.3 2.3 0 0 0 1.218 1.262c.413.178.938.178 1.986.178h2.25c1.048 0 1.573 0 1.986-.178c.551-.236.99-.69 1.218-1.262c.171-.43.171-.973.171-2.06s0-1.63-.171-2.06a2.3 2.3 0 0 0-1.218-1.262C9.198 15 8.673 15 7.625 15h-2.25c-1.048 0-1.573 0-1.986.178c-.551.236-.99.69-1.218 1.262C2 16.87 2 17.413 2 18.5",
2637
+ opacity: ".5"
2638
+ }, null, -1)
2639
+ ]]);
2640
+ }
2641
+ var widget_5_bold_duotone_default = markRaw({
2642
+ name: "solar-widget-5-bold-duotone",
2643
+ render: render$14
2644
+ });
2645
+ function useMenu() {
2646
+ let { settingsStore: e, menuStore: M } = useContext(), ne = useRouter();
2647
+ function ve(ve, Ee) {
2648
+ if (Ee && Ee.meta?.isDev) {
2649
+ api.info("暂未上线,敬请期待!");
2650
+ return;
2651
+ }
2652
+ M.setActived(ve), e.settings.menu.switchMainMenuAndPageJump && ne.push(M.sidebarMenusFirstDeepestPath);
2653
+ }
2654
+ return { switchTo: ve };
2655
+ }
2656
+ var _hoisted_1$30 = {
2657
+ class: "not-cursor-container",
2658
+ "box-border": "",
2659
+ flex: "~ col justify-center items-center"
2660
+ }, _hoisted_2$13 = {
2661
+ text: "#B8BBBD 14px",
2662
+ "mt-10px": ""
2663
+ }, NotCursor_default = /* @__PURE__ */ _plugin_vue_export_helper_default(/* @__PURE__ */ defineComponent({
2664
+ name: "NotCursor",
2665
+ __name: "NotCursor",
2666
+ props: {
2667
+ isCursor: {
2668
+ type: Boolean,
2669
+ default: !1
2670
+ },
2671
+ skidding: { default: 0 },
2672
+ devText: { default: "该功能暂未上线,敬请期待!" }
2673
+ },
2674
+ setup(e) {
2675
+ return (M, ne) => {
2676
+ let ve = resolveComponent("VMenu");
2677
+ return e.isCursor ? (openBlock(), createBlock(ve, {
2678
+ key: 1,
2679
+ triggers: ["hover"],
2680
+ skidding: e.skidding,
2681
+ delay: 0,
2682
+ "auto-hide": !1,
2683
+ theme: "not-cursor"
2684
+ }, {
2685
+ popper: withCtx(() => [createElementVNode("div", _hoisted_1$30, [ne[0] ||= createElementVNode("img", {
2686
+ src: "data:image/png;base64,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",
2687
+ "w-60px": "",
2688
+ alt: ""
2689
+ }, null, -1), createElementVNode("div", _hoisted_2$13, toDisplayString(e.devText), 1)])]),
2690
+ default: withCtx(() => [renderSlot(M.$slots, "default", {}, void 0, !0)]),
2691
+ _: 3
2692
+ }, 8, ["skidding"])) : renderSlot(M.$slots, "default", { key: 0 }, void 0, !0);
2693
+ };
2694
+ }
2695
+ }), [["__scopeId", "data-v-01d98c2b"]]), _hoisted_1$29 = {
2696
+ class: "menu-more-container",
2697
+ "box-border": ""
2698
+ }, _hoisted_2$12 = ["onClick"], More_default = /* @__PURE__ */ _plugin_vue_export_helper_default(/* @__PURE__ */ defineComponent({
2699
+ name: "More",
2700
+ __name: "More",
2701
+ props: {
2702
+ items: {},
2703
+ activeIndex: {}
2704
+ },
2705
+ emits: ["onMenuClick"],
2706
+ setup(e, { emit: M }) {
2707
+ let ne = M;
2708
+ function ve(e, M) {
2709
+ ne("onMenuClick", e, M);
2710
+ }
2711
+ return (M, ne) => {
2712
+ let Ee = resolveComponent("VMenu");
2713
+ return openBlock(), createBlock(Ee, mergeProps({
2714
+ triggers: ["hover"],
2715
+ "popper-triggers": ["hover"]
2716
+ }, M.$attrs, {
2717
+ delay: 0,
2718
+ "auto-hide": !1,
2719
+ theme: "more-appley",
2720
+ distance: -6
2721
+ }), {
2722
+ popper: withCtx(() => [createElementVNode("div", _hoisted_1$29, [(openBlock(!0), createElementBlock(Fragment, null, renderList(e.items, (M, ne) => (openBlock(), createBlock(NotCursor_default, {
2723
+ key: ne,
2724
+ "is-cursor": M.meta?.isDev,
2725
+ "dev-text": M.meta?.devText,
2726
+ skidding: 150
2727
+ }, {
2728
+ default: withCtx(() => [createElementVNode("div", {
2729
+ "cursor-pointer": "",
2730
+ flex: "~ items-center",
2731
+ "box-border": "",
2732
+ "p-15px": "",
2733
+ "w-full": "",
2734
+ "h-40px": "",
2735
+ "rounded-8px": "",
2736
+ "text-sm": "",
2737
+ "mb-10px": "",
2738
+ class: normalizeClass({
2739
+ "bg-[#fff] dark:bg-[var(--g-header-menu-active-bg)]!": ne === e.activeIndex,
2740
+ "is-dev": M.meta?.isDev
2741
+ }),
2742
+ onClick: (e) => ve(ne, M)
2743
+ }, [M.meta?.icon ? (openBlock(), createBlock(unref(PubinfoIcon_default), {
2744
+ key: 0,
2745
+ name: M.meta.icon,
2746
+ size: "18px",
2747
+ "mr-6px": ""
2748
+ }, null, 8, ["name"])) : createCommentVNode("", !0), createElementVNode("span", null, toDisplayString(M.meta?.title), 1)], 10, _hoisted_2$12)]),
2749
+ _: 2
2750
+ }, 1032, ["is-cursor", "dev-text"]))), 128))])]),
2751
+ default: withCtx(() => [renderSlot(M.$slots, "default", {}, void 0, !0)]),
2752
+ _: 3
2753
+ }, 16);
2754
+ };
2755
+ }
2756
+ }), [["__scopeId", "data-v-3905786b"]]), _hoisted_1$28 = ["title", "onClick"], _hoisted_2$11 = { class: "flex flex-row flex-1 items-center justify-center px-8px" }, _hoisted_3$8 = { class: "w-full flex-1 truncate text-center text-sm transition-height transition-opacity transition-width" }, _hoisted_4$4 = {
2757
+ relative: "",
2758
+ "h-full": "",
2759
+ "w-85px": "",
2760
+ flex: "~ none justify-center items-center",
2761
+ "text-sm": "",
2762
+ "cursor-pointer": ""
2763
+ }, HeaderFullMenu_default = /* @__PURE__ */ defineComponent({
2764
+ name: "LayoutHeaderFullMenu",
2765
+ __name: "index",
2766
+ setup(e) {
2767
+ let { settingsStore: M, menuStore: ne, generateTitle: ve } = useContext(), { switchTo: Ee } = useMenu();
2768
+ function De(e, M, ne) {
2769
+ let ve;
2770
+ return !e && M || e && !ne ? ve = M : e && ne && (ve = ne), ve;
2771
+ }
2772
+ let ke = ref(), { width: je } = useElementSize(ke), We = ref(0), Ke = computed(() => We.value === ne.allMenus.length - 1);
2773
+ function $e(e, M) {
2774
+ Ee(e + We.value + 1, M);
2775
+ }
2776
+ function at() {
2777
+ let e = ke.value, M = Array.from(e.children).at(0), ne = M.clientWidth, ve = Array.from(M.children), Ee = ve.reduce((e, M) => e + M.clientWidth, 0), De = 0, je = 0;
2778
+ if (Ee <= ne) je = ve.length - 1;
2779
+ else for (let [e, M] of ve.entries()) if (De += M.clientWidth, De >= ne) {
2780
+ je = e - 1;
2781
+ break;
2782
+ }
2783
+ return ve.forEach((e, M) => {
2784
+ M > je ? e.style.visibility = "hidden" : e.style.visibility = "visible";
2785
+ }), je;
2786
+ }
2787
+ function ft(e) {
2788
+ return e.children && e.children.length !== 0 || e?.meta?.isDev;
2789
+ }
2790
+ return onMounted(() => {
2791
+ watch(je, () => {
2792
+ We.value = at();
2793
+ }, { immediate: !0 });
2794
+ }), (e, je) => (openBlock(), createElementBlock("div", {
2795
+ ref_key: "menuRef",
2796
+ ref: ke,
2797
+ class: "menu-container nothin"
2798
+ }, [createElementVNode("div", { class: normalizeClass(["menu flex of-hidden transition-all", { [`menu-active-${unref(M).settings.menu.menuActiveStyle}`]: unref(M).settings.menu.menuActiveStyle !== "" }]) }, [(openBlock(!0), createElementBlock(Fragment, null, renderList(unref(ne).allMenus, (e, ke) => (openBlock(), createElementBlock("div", {
2799
+ key: e?.meta?.title || ke,
2800
+ class: normalizeClass(["menu-item relative transition-all", {
2801
+ active: ke === unref(ne).actived,
2802
+ "px-1 py-2": ft(e) && unref(M).settings.menu.isRounded,
2803
+ "is-dev": e.meta?.isDev
2804
+ }]),
2805
+ invisible: ""
2806
+ }, [createVNode(NotCursor_default, {
2807
+ "is-cursor": e.meta?.isDev,
2808
+ "dev-text": e.meta?.devText
2809
+ }, {
2810
+ default: withCtx(() => [ft(e) ? (openBlock(), createElementBlock("div", {
2811
+ key: 0,
2812
+ class: normalizeClass(["group menu-item-container h-full w-full flex cursor-pointer items-center justify-between gap-1 px-5 py-4 text-[var(--g-header-menu-color)] transition-all hover:(bg-[var(--g-header-menu-hover-bg)] text-[var(--g-header-menu-hover-color)])", {
2813
+ "text-[var(--g-header-menu-active-color)]! bg-[var(--g-header-menu-active-bg)]!": ke === unref(ne).actived,
2814
+ "rounded-2": unref(M).settings.menu.isRounded
2815
+ }]),
2816
+ title: unref(ve)(e.meta?.title),
2817
+ onClick: (M) => unref(Ee)(ke, e)
2818
+ }, [createElementVNode("div", _hoisted_2$11, [De(ke === unref(ne).actived, e.meta?.icon, e.meta?.activeIcon) ? (openBlock(), createElementBlock(Fragment, { key: 0 }, [e.meta?.iconOptions?.boxType && e.meta.iconOptions.boxType !== "null" ? (openBlock(), createBlock(unref(PubinfoIcon_default), {
2819
+ key: 0,
2820
+ name: De(ke === unref(ne).actived, e.meta?.icon, e.meta?.activeIcon),
2821
+ small: "",
2822
+ box: e.meta.iconOptions.boxType,
2823
+ size: 18,
2824
+ "icon-size": e.meta.iconOptions.iconSize,
2825
+ angle: e.meta.iconOptions.angle,
2826
+ background: e.meta.iconOptions.background,
2827
+ radius: e.meta.iconOptions.radius,
2828
+ color: (De(ke === unref(ne).actived, e.meta?.icon, e.meta?.activeIcon) || "").startsWith("antd:") ? e.meta.iconOptions.iconColor || "#ffffff" : void 0,
2829
+ class: "menu-item-container-icon transition-transform group-hover:scale-120 mr-5px"
2830
+ }, null, 8, [
2831
+ "name",
2832
+ "box",
2833
+ "icon-size",
2834
+ "angle",
2835
+ "background",
2836
+ "radius",
2837
+ "color"
2838
+ ])) : (openBlock(), createBlock(unref(PubinfoIcon_default), {
2839
+ key: 1,
2840
+ name: De(ke === unref(ne).actived, e.meta?.icon, e.meta?.activeIcon),
2841
+ size: 18,
2842
+ color: (De(ke === unref(ne).actived, e.meta?.icon, e.meta?.activeIcon) || "").startsWith("antd:") && e.meta?.iconOptions?.iconColor || void 0,
2843
+ class: "menu-item-container-icon transition-transform group-hover:scale-120 mr-5px"
2844
+ }, null, 8, ["name", "color"]))], 64)) : createCommentVNode("", !0), createElementVNode("span", _hoisted_3$8, toDisplayString(unref(ve)(e.meta?.title)), 1)])], 10, _hoisted_1$28)) : createCommentVNode("", !0)]),
2845
+ _: 2
2846
+ }, 1032, ["is-cursor", "dev-text"])], 2))), 128))], 2), unref(Ke) ? createCommentVNode("", !0) : (openBlock(), createBlock(More_default, {
2847
+ key: 0,
2848
+ items: unref(ne).allMenus.slice(unref(We) + 1),
2849
+ "active-index": unref(ne).actived - unref(We) - 1,
2850
+ onOnMenuClick: $e
2851
+ }, {
2852
+ default: withCtx(() => [createElementVNode("div", _hoisted_4$4, [je[0] ||= createTextVNode(" 更多应用 ", -1), createVNode(unref(widget_5_bold_duotone_default), {
2853
+ ml: "5px",
2854
+ mr: "5px"
2855
+ })])]),
2856
+ _: 1
2857
+ }, 8, ["items", "active-index"]))], 512));
2858
+ }
2859
+ }), _hoisted_1$27 = { class: "relative inline-flex" }, _hoisted_2$10 = {
2860
+ key: 0,
2861
+ class: "absolute left-[50%] top-0 z-20 whitespace-nowrap rounded-full bg-ui-primary px-1.5 text-xs text-ui-text ring-1 ring-light -translate-y-[50%] dark:ring-dark"
2862
+ }, HBadge_default = /* @__PURE__ */ defineComponent({
2863
+ __name: "HBadge",
2864
+ props: { value: { type: [
2865
+ String,
2866
+ Number,
2867
+ Boolean
2868
+ ] } },
2869
+ setup(e) {
2870
+ let M = e, ne = computed(() => {
2871
+ switch (typeof M.value) {
2872
+ case "string": return M.value.length > 0;
2873
+ case "number": return M.value > 0;
2874
+ case "boolean": return M.value;
2875
+ default: return M.value !== void 0 && M.value !== null;
2876
+ }
2877
+ }), ve = ref({
2878
+ enterActiveClass: "ease-in-out duration-500",
2879
+ enterFromClass: "opacity-0",
2880
+ enterToClass: "opacity-100",
2881
+ leaveActiveClass: "ease-in-out duration-500",
2882
+ leaveFromClass: "opacity-100",
2883
+ leaveToClass: "opacity-0"
2884
+ });
2885
+ return (M, Ee) => (openBlock(), createElementBlock("div", _hoisted_1$27, [renderSlot(M.$slots, "default"), createVNode(Transition, normalizeProps(guardReactiveProps(unref(ve))), {
2886
+ default: withCtx(() => [unref(ne) ? (openBlock(), createElementBlock("span", _hoisted_2$10, toDisplayString(e.value), 1)) : createCommentVNode("", !0)]),
2887
+ _: 1
2888
+ }, 16)]));
2889
+ }
2890
+ });
2891
+ function createInjectionKey(e) {
2892
+ return e;
2893
+ }
2894
+ function watermark() {
2895
+ let e = {}, M = {
2896
+ id: "wm_div_id",
2897
+ prefix: "mask_div_id",
2898
+ text: "测试水印",
2899
+ x: 20,
2900
+ y: 20,
2901
+ rows: 0,
2902
+ cols: 0,
2903
+ x_space: 50,
2904
+ y_space: 50,
2905
+ font: "微软雅黑",
2906
+ color: "black",
2907
+ fontsize: "18px",
2908
+ alpha: .15,
2909
+ width: 100,
2910
+ height: 100,
2911
+ angle: 15,
2912
+ parent_width: 0,
2913
+ parent_height: 0,
2914
+ parent_node: null,
2915
+ monitor: !1
2916
+ }, ne = !1, ve = new MutationObserver(ke);
2917
+ function Ee(e) {
2918
+ Object.assign(M, e);
2919
+ let ne = document.getElementById(M.id);
2920
+ ne?.parentNode?.removeChild(ne);
2921
+ let Ee = M.parent_node, De = Ee || document.body, ke = Math.max(De.scrollWidth, De.clientWidth), je = Math.max(De.scrollHeight, De.clientHeight), We = 0, Ke = 0;
2922
+ e.parent_width || e.parent_height ? De && (We = De.offsetTop || 0, Ke = De.offsetLeft || 0, M.x += Ke, M.y += We) : De && (We = De.offsetTop || 0, Ke = De.offsetLeft || 0);
2923
+ let $e = document.getElementById(M.id), at = null;
2924
+ if ($e) $e.shadowRoot && (at = $e.shadowRoot);
2925
+ else {
2926
+ $e = document.createElement("div"), $e.id = M.id, $e.setAttribute("style", "pointer-events: none !important; display: block !important"), at = typeof $e.attachShadow == "function" ? $e.attachShadow({ mode: "open" }) : $e;
2927
+ let e = De.children, ne = Math.floor(Math.random() * (e.length - 1));
2928
+ e[ne] ? De.insertBefore($e, e[ne]) : De.appendChild($e);
2929
+ }
2930
+ M.cols = Math.floor((ke - M.x) / (M.width + M.x_space)), M.x_space = Math.floor((ke - M.x - M.width * M.cols) / M.cols) && M.x_space;
2931
+ let ft;
2932
+ M.rows = Math.floor((je - M.y) / (M.height + M.y_space)), M.y_space = Math.floor((je - M.y - M.height * M.rows) / M.rows) && M.y_space;
2933
+ let Et;
2934
+ Ee ? (ft = M.x + M.width * M.cols + M.x_space * (M.cols - 1), Et = M.y + M.height * M.rows + M.y_space * (M.rows - 1)) : (ft = Ke + M.x + M.width * M.cols + M.x_space * (M.cols - 1), Et = We + M.y + M.height * M.rows + M.y_space * (M.rows - 1));
2935
+ let Dt, Ot;
2936
+ for (let e = 0; e < M.rows; e++) {
2937
+ Ot = Ee ? We + M.y + (M.y_space + M.height) * e : M.y + (je - Et) / 2 + (M.y_space + M.height) * e;
2938
+ for (let ne = 0; ne < M.cols; ne++) {
2939
+ Dt = Ee ? Ke + M.x + (ke - ft) / 2 + (M.width + M.x_space) * ne : M.x + (ke - ft) / 2 + (M.width + M.x_space) * ne;
2940
+ let ve = document.createElement("div"), De = document.createTextNode(M.text);
2941
+ ve.appendChild(De), ve.id = M.prefix + e + ne, ve.style.transform = `rotate(-${M.angle}deg)`, ve.style.visibility = "", ve.style.position = "absolute", ve.style.left = `${Dt}px`, ve.style.top = `${Ot}px`, ve.style.overflow = "hidden", ve.style.zIndex = "9999999", ve.style.opacity = `${M.alpha}`, ve.style.fontSize = M.fontsize, ve.style.fontFamily = M.font, ve.style.color = M.color, ve.style.textAlign = "center", ve.style.width = `${M.width}px`, ve.style.height = `${M.height}px`, ve.style.display = "block", ve.style.userSelect = "none", at?.appendChild(ve);
2942
+ }
2943
+ }
2944
+ if (M.monitor) {
2945
+ let e = {
2946
+ childList: !0,
2947
+ attributes: !0,
2948
+ subtree: !0,
2949
+ attributeFilter: ["style"],
2950
+ attributeOldValue: !0
2951
+ };
2952
+ ve.observe(De, e), ve.observe(document.getElementById(M.id).shadowRoot, e);
2953
+ }
2954
+ }
2955
+ function De() {
2956
+ let e = document.getElementById(M.id);
2957
+ e?.parentNode?.removeChild(e), ve.disconnect();
2958
+ }
2959
+ function ke(M) {
2960
+ if (ne) {
2961
+ ne = !1;
2962
+ return;
2963
+ }
2964
+ (e && M.length === 1 || M.length === 1 && M[0].removedNodes.length >= 1) && Ee(e);
2965
+ }
2966
+ return {
2967
+ init: function(M) {
2968
+ Object.assign(e, M), Ee(M);
2969
+ },
2970
+ remove: function() {
2971
+ ne = !0, De();
2972
+ }
2973
+ };
2974
+ }
2975
+ const rootMenuInjectionKey = createInjectionKey("rootMenu");
2976
+ var _hoisted_1$26 = ["title"], item_default = /* @__PURE__ */ _plugin_vue_export_helper_default(/* @__PURE__ */ defineComponent({
2977
+ name: "MenuItem",
2978
+ __name: "item",
2979
+ props: {
2980
+ uniqueKey: {},
2981
+ item: {},
2982
+ level: { default: 0 },
2983
+ subMenu: {
2984
+ type: Boolean,
2985
+ default: !1
2986
+ },
2987
+ expand: {
2988
+ type: Boolean,
2989
+ default: !1
2990
+ }
2991
+ },
2992
+ setup(e, { expose: M }) {
2993
+ let ne = e, ve = inject(rootMenuInjectionKey), { generateTitle: Ee } = useContext(), De = ref(), ke = computed(() => ne.subMenu ? ve.subMenus[ne.uniqueKey[ne.uniqueKey.length - 1]]?.active : ve.activeIndex === ne.uniqueKey[ne.uniqueKey.length - 1]), je = computed(() => ke.value && (!ne.subMenu || ve.isMenuPopup)), We = computed(() => {
2994
+ let e;
2995
+ return ne.item.meta?.icon && (e = ne.item.meta.icon), ke.value && (ne.item.meta?.activeIcon === "system-point" ? e = "system-point" : ne.item.meta?.activeIcon && (e = ne.item.meta.activeIcon)), e;
2996
+ }), Ke = computed(() => ne.item.meta?.iconOptions), $e = computed(() => {
2997
+ let e = Ke.value?.boxType;
2998
+ return e && e !== "null" ? e : void 0;
2999
+ }), at = computed(() => Ke.value?.iconColor || void 0), ft = computed(() => ve.isMenuPopup ? "" : `padding-left: ${32 * (ne.level ?? 0)}px`);
3000
+ return M({ ref: De }), (M, ne) => {
3001
+ let ke = HBadge_default;
3002
+ return openBlock(), createElementBlock("div", {
3003
+ ref_key: "itemRef",
3004
+ ref: De,
3005
+ class: normalizeClass(["menu-item relative transition-all", {
3006
+ active: unref(je),
3007
+ "px-2 py-1": unref(ve).props.rounded,
3008
+ "px-1! py-2!": unref(ve).props.rounded && unref(ve).isMenuPopup && e.level === 0 && unref(ve).props.mode === "horizontal"
3009
+ }])
3010
+ }, [createElementVNode("div", {
3011
+ class: normalizeClass(["group menu-item-container h-full w-full flex cursor-pointer items-center justify-between gap-1 px-5 py-14px text-[var(--g-sub-sidebar-menu-color)] transition-all hover:(bg-[var(--g-sub-sidebar-menu-hover-bg)] text-[var(--g-sub-sidebar-menu-hover-color)])", {
3012
+ "text-[var(--g-sub-sidebar-menu-active-color)]! bg-[var(--g-sub-sidebar-menu-active-bg)]!": unref(je),
3013
+ "rounded-2": unref(ve).props.rounded,
3014
+ "px-2!": unref(ve).isMenuPopup && e.level === 0,
3015
+ "py-3!": unref(ve).props.rounded && unref(ve).isMenuPopup && e.level !== 0
3016
+ }]),
3017
+ title: unref(Ee)(e.item.meta?.title)
3018
+ }, [createElementVNode("div", {
3019
+ class: normalizeClass(["menu-item-container-layout inline-flex flex-1 items-center justify-center gap-[12px]", {
3020
+ "flex-col gap-none": unref(ve).isMenuPopup && e.level === 0,
3021
+ "flex-col gap-[2px]!": unref(ve).isMenuPopup && e.level === 0 && unref(ve).props.showCollapseName,
3022
+ "w-full": unref(ve).isMenuPopup && e.level === 0 && unref(ve).props.showCollapseName && unref(ve).props.mode === "vertical",
3023
+ "w-[50px]": unref(ve).isMenuPopup && e.level === 0 && unref(ve).props.showCollapseName && unref(ve).props.mode === "horizontal"
3024
+ }]),
3025
+ style: normalizeStyle(unref(ft))
3026
+ }, [
3027
+ unref(We) && unref(We) !== "system-point" ? (openBlock(), createElementBlock(Fragment, { key: 0 }, [unref(Ke) && unref($e) ? (openBlock(), createBlock(unref(PubinfoIcon_default), {
3028
+ key: 0,
3029
+ small: "",
3030
+ name: unref(We),
3031
+ box: unref($e),
3032
+ size: 20,
3033
+ "icon-size": unref(Ke)?.iconSize,
3034
+ angle: unref(Ke)?.angle,
3035
+ background: unref(Ke)?.background,
3036
+ radius: unref(Ke)?.radius,
3037
+ color: (unref(We) || "").startsWith("antd:") ? unref(at) || "#ffffff" : void 0,
3038
+ class: "menu-item-container-icon transition-transform group-hover:scale-115"
3039
+ }, null, 8, [
3040
+ "name",
3041
+ "box",
3042
+ "icon-size",
3043
+ "angle",
3044
+ "background",
3045
+ "radius",
3046
+ "color"
3047
+ ])) : (openBlock(), createBlock(unref(PubinfoIcon_default), {
3048
+ key: 1,
3049
+ name: unref(We),
3050
+ size: 20,
3051
+ color: (unref(We) || "").startsWith("antd:") ? unref(at) : void 0,
3052
+ class: "menu-item-container-icon transition-transform group-hover:scale-115"
3053
+ }, null, 8, ["name", "color"]))], 64)) : createCommentVNode("", !0),
3054
+ unref(ve).isMenuPopup && e.level === 0 && !unref(ve).props.showCollapseName ? createCommentVNode("", !0) : (openBlock(), createElementBlock("span", {
3055
+ key: 1,
3056
+ class: normalizeClass(["title w-0 flex-1 truncate text-sm transition-height transition-opacity transition-width", {
3057
+ "opacity-0 w-0 h-0": unref(ve).isMenuPopup && e.level === 0 && !unref(ve).props.showCollapseName,
3058
+ "w-full text-center": unref(ve).isMenuPopup && e.level === 0 && unref(ve).props.showCollapseName,
3059
+ "system-point": unref(We) === "system-point" && unref(je)
3060
+ }])
3061
+ }, toDisplayString(unref(Ee)(e.item.meta?.title)), 3)),
3062
+ e.item.meta?.badge ? (openBlock(), createBlock(ke, {
3063
+ key: 2,
3064
+ value: typeof e.item.meta.badge == "function" ? e.item.meta.badge() : e.item.meta.badge,
3065
+ class: normalizeClass(["badge", { "opacity-0": unref(ve).isMenuPopup && e.level === 0 }])
3066
+ }, null, 8, ["value", "class"])) : createCommentVNode("", !0)
3067
+ ], 6), e.subMenu && !(unref(ve).isMenuPopup && e.level === 0) ? (openBlock(), createElementBlock("i", {
3068
+ key: 0,
3069
+ class: normalizeClass(["sharp-corner", [
3070
+ e.expand ? "before:-rotate-45 before:-translate-x-[2px] after:rotate-45 after:translate-x-[2px]" : "before:rotate-45 before:-translate-x-[2px] after:-rotate-45 after:translate-x-[2px] ",
3071
+ unref(ve).isMenuPopup && e.level === 0 && "opacity-0",
3072
+ unref(ve).isMenuPopup && e.level !== 0 && "-rotate-90 -top-[1.5px]"
3073
+ ]])
3074
+ }, null, 2)) : createCommentVNode("", !0)], 10, _hoisted_1$26)], 2);
3075
+ };
3076
+ }
3077
+ }), [["__scopeId", "data-v-dd5786b9"]]), sub_default = /* @__PURE__ */ defineComponent({
3078
+ name: "SubMenu",
3079
+ __name: "sub",
3080
+ props: {
3081
+ uniqueKey: {},
3082
+ menu: {},
3083
+ level: { default: 0 }
3084
+ },
3085
+ setup(e) {
3086
+ let M = e, ne = M.menu.path ?? JSON.stringify(M.menu), ve = shallowRef(), Ee = shallowRef(), De = inject(rootMenuInjectionKey), ke = computed(() => De.openedMenus.includes(M.uniqueKey[M.uniqueKey.length - 1])), je = computed(() => De.isMenuPopup ? {
3087
+ enter(e) {
3088
+ e.offsetHeight > window.innerHeight && (e.style.height = `${window.innerHeight}px`);
3089
+ },
3090
+ afterEnter: () => {},
3091
+ beforeLeave: (e) => {
3092
+ e.style.overflow = "hidden", e.style.maxHeight = `${e.offsetHeight}px`;
3093
+ },
3094
+ leave: (e) => {
3095
+ e.style.maxHeight = "0";
3096
+ },
3097
+ afterLeave(e) {
3098
+ e.style.overflow = "", e.style.maxHeight = "";
3099
+ }
3100
+ } : {
3101
+ enter(e) {
3102
+ let M = e.offsetHeight;
3103
+ e.style.maxHeight = "0", e.style.overflow = "hidden", e.offsetHeight, e.style.maxHeight = `${M}px`;
3104
+ },
3105
+ afterEnter(e) {
3106
+ e.style.overflow = "", e.style.maxHeight = "";
3107
+ },
3108
+ beforeLeave(e) {
3109
+ e.style.overflow = "hidden", e.style.maxHeight = `${e.offsetHeight}px`;
3110
+ },
3111
+ leave(e) {
3112
+ e.style.maxHeight = "0";
3113
+ },
3114
+ afterLeave(e) {
3115
+ e.style.overflow = "", e.style.maxHeight = "";
3116
+ }
3117
+ }), We = computed(() => De.isMenuPopup ? {
3118
+ enterActiveClass: "ease-in-out duration-300",
3119
+ enterFromClass: "opacity-0 translate-x-4",
3120
+ enterToClass: "opacity-100",
3121
+ leaveActiveClass: "ease-in-out duration-300",
3122
+ leaveFromClass: "opacity-100",
3123
+ leaveToClass: "opacity-0"
3124
+ } : {
3125
+ enterActiveClass: "ease-in-out duration-300",
3126
+ enterFromClass: "opacity-0",
3127
+ enterToClass: "opacity-100",
3128
+ leaveActiveClass: "ease-in-out duration-300",
3129
+ leaveFromClass: "opacity-100",
3130
+ leaveToClass: "opacity-0"
3131
+ }), Ke = computed(() => {
3132
+ let e = !0;
3133
+ return M.menu.children ? M.menu.children.every((e) => e.meta?.sidebar === !1) && (e = !1) : e = !1, e;
3134
+ });
3135
+ function $e() {
3136
+ De.isMenuPopup && Ke.value || (Ke.value ? De.handleSubMenuClick(ne, M.uniqueKey) : De.handleMenuItemClick(ne, M.menu.meta));
3137
+ }
3138
+ let at;
3139
+ function ft() {
3140
+ De.isMenuPopup && (De.mouseInMenu = M.uniqueKey, at?.(), {stop: at} = useTimeoutFn(() => {
3141
+ if (Ke.value) De.openMenu(ne, M.uniqueKey), nextTick(() => {
3142
+ let e = ve.value.ref, ne = 0, ke = 0;
3143
+ De.props.mode === "vertical" || M.level !== 0 ? (ne = e.getBoundingClientRect().top + e.scrollTop, ke = e.getBoundingClientRect().left + e.getBoundingClientRect().width, ne + Ee.value.getElement().offsetHeight > window.innerHeight && (ne = window.innerHeight - Ee.value.getElement().offsetHeight)) : (ne = e.getBoundingClientRect().top + e.getBoundingClientRect().height, ke = e.getBoundingClientRect().left, ne + Ee.value.getElement().offsetHeight > window.innerHeight && (Ee.value.getElement().style.height = `${window.innerHeight - ne}px`)), Ee.value.getElement().style.top = `${ne}px`, Ee.value.getElement().style.left = `${ke}px`;
3144
+ });
3145
+ else {
3146
+ let e = M.menu.children ? De.subMenus[ne].indexPath.at(-1) : De.items[ne].indexPath.at(-1);
3147
+ De.openMenu(e, De.subMenus[e].indexPath);
3148
+ }
3149
+ }, 300));
3150
+ }
3151
+ function Et() {
3152
+ De.isMenuPopup && (De.mouseInMenu = [], at?.(), {stop: at} = useTimeoutFn(() => {
3153
+ De.mouseInMenu.length === 0 ? De.closeMenu(M.uniqueKey) : Ke.value && (De.mouseInMenu.includes(M.uniqueKey.at(-1)) || De.closeMenu(M.uniqueKey.at(-1)));
3154
+ }, 300));
3155
+ }
3156
+ return (M, ne) => {
3157
+ let at = resolveComponent("SubMenu");
3158
+ return openBlock(), createElementBlock(Fragment, null, [createVNode(item_default, {
3159
+ ref_key: "itemRef",
3160
+ ref: ve,
3161
+ "unique-key": e.uniqueKey,
3162
+ item: e.menu,
3163
+ level: e.level,
3164
+ "sub-menu": unref(Ke),
3165
+ expand: unref(ke),
3166
+ onClick: $e,
3167
+ onMouseenter: ft,
3168
+ onMouseleave: Et
3169
+ }, null, 8, [
3170
+ "unique-key",
3171
+ "item",
3172
+ "level",
3173
+ "sub-menu",
3174
+ "expand"
3175
+ ]), unref(Ke) ? (openBlock(), createBlock(Teleport, {
3176
+ key: 0,
3177
+ to: "body",
3178
+ disabled: !unref(De).isMenuPopup
3179
+ }, [createVNode(Transition, mergeProps(unref(We), toHandlers(unref(je))), {
3180
+ default: withCtx(() => [unref(ke) ? (openBlock(), createBlock(unref(P$3), {
3181
+ key: 0,
3182
+ ref_key: "subMenuRef",
3183
+ ref: Ee,
3184
+ options: { scrollbars: { visibility: "hidden" } },
3185
+ defer: "",
3186
+ class: normalizeClass(["sub-menu", {
3187
+ "bg-[var(--g-sub-sidebar-bg)]": unref(De).isMenuPopup,
3188
+ "ring-1 ring-stone-2 dark:ring-stone-8 shadow-xl fixed z-3000 w-[200px]": unref(De).isMenuPopup,
3189
+ "mx-2": unref(De).isMenuPopup && (unref(De).props.mode === "vertical" || e.level !== 0),
3190
+ "rounded-2 py-1": unref(De).props.rounded && unref(De).isMenuPopup
3191
+ }])
3192
+ }, {
3193
+ default: withCtx(() => [(openBlock(!0), createElementBlock(Fragment, null, renderList(e.menu.children, (M) => (openBlock(), createElementBlock(Fragment, { key: M.path ?? JSON.stringify(M) }, [M.meta?.sidebar === !1 ? createCommentVNode("", !0) : (openBlock(), createBlock(at, {
3194
+ key: 0,
3195
+ "unique-key": [...e.uniqueKey, M.path ?? JSON.stringify(M)],
3196
+ menu: M,
3197
+ level: e.level + 1
3198
+ }, null, 8, [
3199
+ "unique-key",
3200
+ "menu",
3201
+ "level"
3202
+ ]))], 64))), 128))]),
3203
+ _: 1
3204
+ }, 8, ["class"])) : createCommentVNode("", !0)]),
3205
+ _: 1
3206
+ }, 16)], 8, ["disabled"])) : createCommentVNode("", !0)], 64);
3207
+ };
3208
+ }
3209
+ }), Menu_default = /* @__PURE__ */ defineComponent({
3210
+ name: "MainMenu",
3211
+ __name: "index",
3212
+ props: {
3213
+ menu: {},
3214
+ value: {},
3215
+ accordion: {
3216
+ type: Boolean,
3217
+ default: !0
3218
+ },
3219
+ defaultOpeneds: { default: () => [] },
3220
+ mode: { default: "vertical" },
3221
+ collapse: {
3222
+ type: Boolean,
3223
+ default: !1
3224
+ },
3225
+ showCollapseName: {
3226
+ type: Boolean,
3227
+ default: !1
3228
+ },
3229
+ rounded: {
3230
+ type: Boolean,
3231
+ default: !1
3232
+ }
3233
+ },
3234
+ setup(e) {
3235
+ let M = e, ne = useRouter(), ve = ref(M.value), Ee = ref({}), De = ref({}), ke = ref(M.defaultOpeneds.slice(0)), je = ref([]), We = computed(() => M.mode === "horizontal" || M.mode === "vertical" && M.collapse);
3236
+ function Ke(e = [], M = []) {
3237
+ e.forEach((e) => {
3238
+ let ne = e.path ?? JSON.stringify(e);
3239
+ if (e.children && e.children.length > 0) {
3240
+ let ve = [...M, ne];
3241
+ De.value[ne] = {
3242
+ index: ne,
3243
+ indexPath: ve,
3244
+ active: !1
3245
+ }, Ke(e.children, ve);
3246
+ } else Ee.value[ne] = {
3247
+ index: ne,
3248
+ indexPath: M
3249
+ };
3250
+ });
3251
+ }
3252
+ let $e = (e, ne) => {
3253
+ ke.value.includes(e) || (M.accordion && (ke.value = ke.value.filter((e) => ne.includes(e))), ke.value.push(e));
3254
+ }, at = (e) => {
3255
+ if (Array.isArray(e)) {
3256
+ nextTick(() => {
3257
+ at(e.at(-1)), e.length > 1 && at(e.slice(0, -1));
3258
+ });
3259
+ return;
3260
+ }
3261
+ Object.keys(De.value).forEach((M) => {
3262
+ De.value[M].indexPath.includes(e) && (ke.value = ke.value.filter((M) => M !== e));
3263
+ });
3264
+ };
3265
+ function ft(e) {
3266
+ Object.keys(De.value).forEach((e) => {
3267
+ De.value[e].active = !1;
3268
+ }), Ee.value[e]?.indexPath.forEach((e) => {
3269
+ De.value[e].active = !0;
3270
+ });
3271
+ }
3272
+ let Et = async (e, ve) => {
3273
+ if (ve?.isDev) {
3274
+ api.info("暂未上线,敬请期待!");
3275
+ return;
3276
+ }
3277
+ if ((M.mode === "horizontal" || M.collapse) && (ke.value = []), ft(e), ve?.link) {
3278
+ let e = ve?.partyLogin;
3279
+ if (e && Array.isArray(e) && e.length > 0) {
3280
+ let { url: M } = await usePartyLogin(e, ve.link);
3281
+ window.open(M.value);
3282
+ } else window.open(ve.link);
3283
+ return;
3284
+ }
3285
+ ne.push(e);
3286
+ }, Dt = (e, M) => {
3287
+ ke.value.includes(e) ? at(e) : $e(e, M);
3288
+ };
3289
+ function Ot() {
3290
+ let e = ve.value && Ee.value[ve.value];
3291
+ ft(ve.value), !(!e || M.collapse) && e.indexPath.forEach((e) => {
3292
+ let M = De.value[e];
3293
+ M && $e(e, M.indexPath);
3294
+ });
3295
+ }
3296
+ return watch(() => M.menu, (e) => {
3297
+ Ke(e), Ot();
3298
+ }, {
3299
+ deep: !0,
3300
+ immediate: !0
3301
+ }), watch(() => M.value, (e) => {
3302
+ Ee.value[e] || (ve.value = "");
3303
+ let ne = Ee.value[e] || ve.value && Ee.value[ve.value] || Ee.value[M.value];
3304
+ ne ? ve.value = ne.index : ve.value = e, Ot();
3305
+ }), watch(() => M.collapse, (e) => {
3306
+ e && (ke.value = []), Ot();
3307
+ }), provide(rootMenuInjectionKey, reactive({
3308
+ props: M,
3309
+ items: Ee,
3310
+ subMenus: De,
3311
+ activeIndex: ve,
3312
+ openedMenus: ke,
3313
+ mouseInMenu: je,
3314
+ isMenuPopup: We,
3315
+ openMenu: $e,
3316
+ closeMenu: at,
3317
+ handleMenuItemClick: Et,
3318
+ handleSubMenuClick: Dt
3319
+ })), (ne, ve) => (openBlock(), createElementBlock("div", { class: normalizeClass(["flex flex-col of-hidden transition-all", {
3320
+ "w-[200px]": !unref(We) && M.mode === "vertical",
3321
+ "w-[64px]": unref(We) && M.mode === "vertical",
3322
+ "h-[80px]": M.mode === "horizontal",
3323
+ "flex-row! w-auto": unref(We) && M.mode === "horizontal"
3324
+ }]) }, [(openBlock(!0), createElementBlock(Fragment, null, renderList(e.menu, (e, M) => (openBlock(), createElementBlock(Fragment, { key: M }, [e.children?.length && e.meta?.sidebar !== !1 ? (openBlock(), createBlock(sub_default, {
3325
+ key: 0,
3326
+ menu: e,
3327
+ "unique-key": [e.path ?? JSON.stringify(e)]
3328
+ }, null, 8, ["menu", "unique-key"])) : e.meta?.sidebar === !1 ? createCommentVNode("", !0) : (openBlock(), createBlock(item_default, {
3329
+ key: 1,
3330
+ item: e,
3331
+ "unique-key": [e.path ?? JSON.stringify(e)],
3332
+ onClick: (M) => Et(e.path ?? JSON.stringify(e), e.meta)
3333
+ }, null, 8, [
3334
+ "item",
3335
+ "unique-key",
3336
+ "onClick"
3337
+ ]))], 64))), 128))], 2));
3338
+ }
3339
+ }), HeaderThinMenu_default = /* @__PURE__ */ defineComponent({
3340
+ name: "LayoutHeaderThinMenu",
3341
+ __name: "HeaderThinMenu",
3342
+ setup(e) {
3343
+ let M = useRoute(), { settingsStore: ne, menuStore: ve } = useContext(), Ee = ref();
3344
+ function De(e) {
3345
+ Ee.value.scrollBy({ left: (e.deltaY || e.detail) > 0 ? 50 : -50 });
3346
+ }
3347
+ return (e, ke) => (openBlock(), createElementBlock("div", {
3348
+ ref_key: "menuRef",
3349
+ ref: Ee,
3350
+ class: "menu-container",
3351
+ onWheel: withModifiers(De, ["prevent"])
3352
+ }, [createVNode(Menu_default, {
3353
+ menu: unref(ve).allMenus,
3354
+ value: unref(M).meta.activeMenu || unref(M).path,
3355
+ mode: "horizontal",
3356
+ "show-collapse-name": "",
3357
+ rounded: unref(ne).settings.menu.isRounded,
3358
+ class: normalizeClass(["menu", { [`menu-active-${unref(ne).settings.menu.menuActiveStyle}`]: unref(ne).settings.menu.menuActiveStyle !== "" }])
3359
+ }, null, 8, [
3360
+ "menu",
3361
+ "value",
3362
+ "rounded",
3363
+ "class"
3364
+ ])], 544));
3365
+ }
2812
3366
  }), HeaderMenu_default = /* @__PURE__ */ defineComponent({
2813
3367
  name: "LayoutHeaderMenu",
2814
3368
  __name: "HeaderMenu",
2815
3369
  setup(e) {
2816
- let M = defineAsyncComponent(() => import("./HeaderFullMenu-l2890Bzo.js").then((e) => e.n)), ne = defineAsyncComponent(() => import("./HeaderThinMenu-5K6HXiQk.js").then((e) => e.n)), { settingsStore: ve } = useContext();
2817
- return (e, Ee) => unref(ve).settings.menu.menuMode === "head" ? (openBlock(), createBlock(unref(M), { key: 0 })) : unref(ve).settings.menu.menuMode === "only-head" ? (openBlock(), createBlock(unref(ne), { key: 1 })) : createCommentVNode("", !0);
3370
+ let { settingsStore: M } = useContext();
3371
+ return (e, ne) => unref(M).settings.menu.menuMode === "head" ? (openBlock(), createBlock(HeaderFullMenu_default, { key: 0 })) : unref(M).settings.menu.menuMode === "only-head" ? (openBlock(), createBlock(HeaderThinMenu_default, { key: 1 })) : createCommentVNode("", !0);
2818
3372
  }
2819
3373
  }), _hoisted_1$25 = { key: 0 }, _hoisted_2$9 = { class: "header-container" }, _hoisted_3$7 = { class: "main" }, Header_default = /* @__PURE__ */ _plugin_vue_export_helper_default(/* @__PURE__ */ defineComponent({
2820
3374
  name: "LayoutHeader",
@@ -2893,7 +3447,7 @@ var book_open_duotone_line_default = markRaw({
2893
3447
  name: "SettingBar",
2894
3448
  __name: "index",
2895
3449
  setup(e) {
2896
- let M = defineAsyncComponent(() => import("./AppSetting-B7mE7iHt.js")), { settingsStore: ne, isDev: ve } = useContext();
3450
+ let M = defineAsyncComponent(() => import("./AppSetting-7jlhUzze.js")), { settingsStore: ne, isDev: ve } = useContext();
2897
3451
  function Ee() {
2898
3452
  window.open("http://124.223.184.245:10000/docs/");
2899
3453
  }
@@ -2920,89 +3474,7 @@ var book_open_duotone_line_default = markRaw({
2920
3474
  }, null, 8, ["open"])
2921
3475
  ])) : createCommentVNode("", !0);
2922
3476
  }
2923
- }), [["__scopeId", "data-v-5e54007c"]]);
2924
- function watermark() {
2925
- let e = {}, M = {
2926
- id: "wm_div_id",
2927
- prefix: "mask_div_id",
2928
- text: "测试水印",
2929
- x: 20,
2930
- y: 20,
2931
- rows: 0,
2932
- cols: 0,
2933
- x_space: 50,
2934
- y_space: 50,
2935
- font: "微软雅黑",
2936
- color: "black",
2937
- fontsize: "18px",
2938
- alpha: .15,
2939
- width: 100,
2940
- height: 100,
2941
- angle: 15,
2942
- parent_width: 0,
2943
- parent_height: 0,
2944
- parent_node: null,
2945
- monitor: !1
2946
- }, ne = !1, ve = new MutationObserver(ke);
2947
- function Ee(e) {
2948
- Object.assign(M, e);
2949
- let ne = document.getElementById(M.id);
2950
- ne?.parentNode?.removeChild(ne);
2951
- let Ee = M.parent_node, De = Ee || document.body, ke = Math.max(De.scrollWidth, De.clientWidth), je = Math.max(De.scrollHeight, De.clientHeight), We = 0, Ke = 0;
2952
- e.parent_width || e.parent_height ? De && (We = De.offsetTop || 0, Ke = De.offsetLeft || 0, M.x += Ke, M.y += We) : De && (We = De.offsetTop || 0, Ke = De.offsetLeft || 0);
2953
- let $e = document.getElementById(M.id), at = null;
2954
- if ($e) $e.shadowRoot && (at = $e.shadowRoot);
2955
- else {
2956
- $e = document.createElement("div"), $e.id = M.id, $e.setAttribute("style", "pointer-events: none !important; display: block !important"), at = typeof $e.attachShadow == "function" ? $e.attachShadow({ mode: "open" }) : $e;
2957
- let e = De.children, ne = Math.floor(Math.random() * (e.length - 1));
2958
- e[ne] ? De.insertBefore($e, e[ne]) : De.appendChild($e);
2959
- }
2960
- M.cols = Math.floor((ke - M.x) / (M.width + M.x_space)), M.x_space = Math.floor((ke - M.x - M.width * M.cols) / M.cols) && M.x_space;
2961
- let ft;
2962
- M.rows = Math.floor((je - M.y) / (M.height + M.y_space)), M.y_space = Math.floor((je - M.y - M.height * M.rows) / M.rows) && M.y_space;
2963
- let Et;
2964
- Ee ? (ft = M.x + M.width * M.cols + M.x_space * (M.cols - 1), Et = M.y + M.height * M.rows + M.y_space * (M.rows - 1)) : (ft = Ke + M.x + M.width * M.cols + M.x_space * (M.cols - 1), Et = We + M.y + M.height * M.rows + M.y_space * (M.rows - 1));
2965
- let Dt, Ot;
2966
- for (let e = 0; e < M.rows; e++) {
2967
- Ot = Ee ? We + M.y + (M.y_space + M.height) * e : M.y + (je - Et) / 2 + (M.y_space + M.height) * e;
2968
- for (let ne = 0; ne < M.cols; ne++) {
2969
- Dt = Ee ? Ke + M.x + (ke - ft) / 2 + (M.width + M.x_space) * ne : M.x + (ke - ft) / 2 + (M.width + M.x_space) * ne;
2970
- let ve = document.createElement("div"), De = document.createTextNode(M.text);
2971
- ve.appendChild(De), ve.id = M.prefix + e + ne, ve.style.transform = `rotate(-${M.angle}deg)`, ve.style.visibility = "", ve.style.position = "absolute", ve.style.left = `${Dt}px`, ve.style.top = `${Ot}px`, ve.style.overflow = "hidden", ve.style.zIndex = "9999999", ve.style.opacity = `${M.alpha}`, ve.style.fontSize = M.fontsize, ve.style.fontFamily = M.font, ve.style.color = M.color, ve.style.textAlign = "center", ve.style.width = `${M.width}px`, ve.style.height = `${M.height}px`, ve.style.display = "block", ve.style.userSelect = "none", at?.appendChild(ve);
2972
- }
2973
- }
2974
- if (M.monitor) {
2975
- let e = {
2976
- childList: !0,
2977
- attributes: !0,
2978
- subtree: !0,
2979
- attributeFilter: ["style"],
2980
- attributeOldValue: !0
2981
- };
2982
- ve.observe(De, e), ve.observe(document.getElementById(M.id).shadowRoot, e);
2983
- }
2984
- }
2985
- function De() {
2986
- let e = document.getElementById(M.id);
2987
- e?.parentNode?.removeChild(e), ve.disconnect();
2988
- }
2989
- function ke(M) {
2990
- if (ne) {
2991
- ne = !1;
2992
- return;
2993
- }
2994
- (e && M.length === 1 || M.length === 1 && M[0].removedNodes.length >= 1) && Ee(e);
2995
- }
2996
- return {
2997
- init: function(M) {
2998
- Object.assign(e, M), Ee(M);
2999
- },
3000
- remove: function() {
3001
- ne = !0, De();
3002
- }
3003
- };
3004
- }
3005
- var _hoisted_1$20 = {
3477
+ }), [["__scopeId", "data-v-5e54007c"]]), _hoisted_1$20 = {
3006
3478
  key: 0,
3007
3479
  class: "main-sidebar-container"
3008
3480
  }, _hoisted_2$7 = ["title", "onClick"], _hoisted_3$5 = { class: "w-full inline-flex flex-1 flex-col items-center justify-center gap-[2px]" }, MainSidebar_default = /* @__PURE__ */ _plugin_vue_export_helper_default(/* @__PURE__ */ defineComponent({
@@ -6406,7 +6878,7 @@ var star_16_regular_default = markRaw({
6406
6878
  class: normalizeClass(["breadcrumb", { [`breadcrumb-${unref(ve).settings.breadcrumb.style}`]: unref(ve).settings.breadcrumb.style !== "" }])
6407
6879
  }, {
6408
6880
  default: withCtx(() => [createVNode(TransitionGroup, { name: "breadcrumb" }, {
6409
- default: withCtx(() => [(openBlock(!0), createElementBlock(Fragment, null, renderList(unref(Ke), (e, M) => (openBlock(), createBlock(item_default, { key: `${M}_${e.path}_${e.title}` }, {
6881
+ default: withCtx(() => [(openBlock(!0), createElementBlock(Fragment, null, renderList(unref(Ke), (e, M) => (openBlock(), createBlock(item_default$1, { key: `${M}_${e.path}_${e.title}` }, {
6410
6882
  default: withCtx(() => [createVNode(Ee, {
6411
6883
  item: Dt(e.path),
6412
6884
  disabled: M === unref(Ke).length - 1 || Dt(e.path)?.children?.length <= 1,
@@ -8763,7 +9235,7 @@ function LayoutComponent() {
8763
9235
  return defineSystemRoutes([{
8764
9236
  path: "reload",
8765
9237
  name: "Reload",
8766
- component: () => import("./reload-CbuQgTlC.js"),
9238
+ component: () => import("./reload-DHx5Vwus.js"),
8767
9239
  meta: {
8768
9240
  title: "重新加载",
8769
9241
  breadcrumb: !1
@@ -9673,7 +10145,7 @@ function createPubinfo(e) {
9673
10145
  routes: [...ne.routes, {
9674
10146
  path: "/:all(.*)*",
9675
10147
  name: "NotFound",
9676
- component: () => import("./not-found-DbHOY5cU.js"),
10148
+ component: () => import("./not-found-BCjngLzt.js"),
9677
10149
  meta: { title: "找不到页面" }
9678
10150
  }]
9679
10151
  },