@pubinfo/core 2.1.10-beta.2 → 2.1.11

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 (88) hide show
  1. package/dist/{AppSetting-Dl8pVkN4.js → AppSetting-7jlhUzze.js} +42 -42
  2. package/dist/{HButton-CzYSwI6a.js → HButton-Dt6qGhhR.js} +7 -7
  3. package/dist/{HCheckList-CHR-lWIq.js → HCheckList-cPBgATmv.js} +15 -15
  4. package/dist/{HDivider-CXS9rl4C.js → HDivider-BwvBr5OE.js} +3 -3
  5. package/dist/{HInput-CSVwTg1Q.js → HInput-KJ5nFBpF.js} +10 -10
  6. package/dist/HSlideover-DVQDc9q6.js +3151 -0
  7. package/dist/{HToggle-C_iVIpxv.js → HToggle-Ce_2-yhZ.js} +8 -8
  8. package/dist/{HTooltip-BHBHfrCD.js → HTooltip-DjAU-Evn.js} +6 -6
  9. package/dist/PreferencesContent-BAIH81yS.js +701 -0
  10. package/dist/SettingBreadcrumb-O9-PhAFT.js +45 -0
  11. package/dist/SettingCopyright-DIKsWTuf.js +45 -0
  12. package/dist/{SettingEnableTransition-BBH52KKl.js → SettingEnableTransition-61O7W00b.js} +19 -19
  13. package/dist/SettingHome-Sv65TPH8.js +31 -0
  14. package/dist/SettingMenu-BvwJOUZV.js +111 -0
  15. package/dist/{SettingMode-BwhhUYlz.js → SettingMode-B8H_eQc8.js} +14 -14
  16. package/dist/SettingNavSearch-BHsmYBA7.js +31 -0
  17. package/dist/SettingOther-CyyNnaDX.js +48 -0
  18. package/dist/SettingPage-B82lW41P.js +22 -0
  19. package/dist/{SettingTabbar-DuqQVRnz.js → SettingTabbar-Bky2xvH-.js} +58 -58
  20. package/dist/{SettingThemes-Doo6Ax3u.js → SettingThemes-CkdzS1xt.js} +44 -44
  21. package/dist/SettingToolbar-CD4qns1J.js +50 -0
  22. package/dist/SettingTopbar-1shjoe3s.js +49 -0
  23. package/dist/{SettingWidthMode-VaN0CrBa.js → SettingWidthMode-DlG6lXjA.js} +14 -14
  24. package/dist/auth-BLGKOyc5.js +4432 -0
  25. package/dist/built-in/layout-component/composables/useContext.d.ts +1 -0
  26. package/dist/{change-organization-OjxZhWST.js → change-organization-hsqeSzDu.js} +38 -38
  27. package/dist/{change-password-B6kO54-d.js → change-password-EtccCDRX.js} +73 -73
  28. package/dist/{chunk-EsrJ1IKw.js → chunk-CD4vhpVs.js} +3 -3
  29. package/dist/{components-DVIyiEVI.js → components-DFNyaAb9.js} +1584 -1584
  30. package/dist/core/request.d.ts +1 -1
  31. package/dist/core-DJIGzMMM.js +4885 -0
  32. package/dist/dist-7OjQvlya.js +468 -0
  33. package/dist/engine-oniguruma-CaNXwGSv.js +243 -0
  34. package/dist/features/settings/index.d.ts +90 -1
  35. package/dist/{form-EQ9eL9hv.js → form-C3VHofnN.js} +923 -443
  36. package/dist/index.js +4418 -3895
  37. package/dist/{modal-CSWipFvB.js → modal-Bl5xHbxa.js} +15510 -15790
  38. package/dist/{not-found-DBe-djEg.js → not-found-BCjngLzt.js} +19 -19
  39. package/dist/{not-permission-DQzWCpOK.js → not-permission-C26vTMvf.js} +19 -19
  40. package/dist/{profile-DJ3gpjsS.js → profile-BVXIFuBG.js} +3340 -3277
  41. package/dist/{question-line-BKVlJGUb.js → question-line-BG__Ycfv.js} +2 -2
  42. package/dist/{reload-DAR8dVYw.js → reload-DHx5Vwus.js} +4 -4
  43. package/dist/{right-VKgVtqD5.js → right-BxBlFUwj.js} +6 -6
  44. package/dist/style.css +1 -1
  45. package/dist/{tree-select-CTjWj5WT.js → tree-select-B8cTcGLa.js} +2575 -2256
  46. package/dist/watchDiff-CPZFtaOC.js +655 -0
  47. package/package.json +41 -41
  48. package/src/built-in/layout-component/components/Header/HeaderMenu.vue +2 -3
  49. package/src/built-in/layout-component/components/Menu/item.vue +2 -2
  50. package/src/built-in/layout-component/components/Menu/sub.vue +20 -1
  51. package/src/built-in/layout-component/composables/useContext.ts +1 -0
  52. package/src/built-in/layout-component/composables/useLayoutVisible.ts +1 -1
  53. package/src/built-in/layout-component/provider.ts +5 -0
  54. package/src/built-in/system-info/components/SystemInfo.vue +68 -66
  55. package/src/built-in/system-info/index.ts +4 -4
  56. package/src/core/ctx.ts +2 -2
  57. package/src/core/request.ts +1 -1
  58. package/src/features/components/PubinfoApp/index.vue +1 -0
  59. package/types/auto-imports.d.ts +63 -63
  60. package/types/components.d.ts +45 -1
  61. package/dist/HSlideover-Bc6OHPHe.js +0 -1695
  62. package/dist/HeaderFullMenu-BRhGliRJ.js +0 -6
  63. package/dist/HeaderFullMenu-DCF-gTCZ.js +0 -249
  64. package/dist/HeaderThinMenu-B_7vLcQX.js +0 -6
  65. package/dist/HeaderThinMenu-PA12XAvb.js +0 -437
  66. package/dist/PreferencesContent-cll4nwwl.js +0 -695
  67. package/dist/SettingBreadcrumb-BvSc7VUo.js +0 -45
  68. package/dist/SettingCopyright-DcWLKM5d.js +0 -45
  69. package/dist/SettingHome-Cd43oJmB.js +0 -31
  70. package/dist/SettingMenu-CJsN4F1l.js +0 -111
  71. package/dist/SettingNavSearch-BhHUWem3.js +0 -31
  72. package/dist/SettingOther-CDY0jSVT.js +0 -48
  73. package/dist/SettingPage-B0WNvUlj.js +0 -22
  74. package/dist/SettingToolbar-CHV_dVJ9.js +0 -50
  75. package/dist/SettingTopbar-CF1K_XIt.js +0 -49
  76. package/dist/auth-CPSkJwBz.js +0 -3968
  77. package/dist/core-Bg2PEcZK.js +0 -4884
  78. package/dist/dist-DAb-7mqe.js +0 -468
  79. package/dist/engine-oniguruma-CUfGsBrF.js +0 -243
  80. package/dist/overlayscrollbars-vue-BOGU2FK-.js +0 -1436
  81. package/dist/pick-C42gkI1h.js +0 -10
  82. package/dist/watchDiff-C4eGkl9e.js +0 -397
  83. /package/dist/{_plugin-vue_export-helper-DaPiLSxE.js → _plugin-vue_export-helper-sUTDUeGO.js} +0 -0
  84. /package/dist/{json-S7wVLDnW.js → json-Bu_Zprin.js} +0 -0
  85. /package/dist/{useContext-D6pJCZez.js → useContext-DLtu9F7E.js} +0 -0
  86. /package/dist/{vitesse-dark-BsnBIHGG.js → vitesse-dark-CTe40QT_.js} +0 -0
  87. /package/dist/{vitesse-light-Cs_6DF7j.js → vitesse-light-BWXC_WeB.js} +0 -0
  88. /package/dist/{wasm-EvDQvzqp.js → wasm-2zDVqo-C.js} +0 -0
@@ -1,695 +0,0 @@
1
- import { At as tuple, Bn as CloseCircleOutlined_default, D as getTransitionProps, Gn as CheckCircleFilled_default, H as merge, I as useConfigInject_default, Mn as ExclamationCircleFilled_default, Mt as withInstall, N as vue_types_default, Qt as classNames_default, U as genComponentStyleHook, Vn as CloseCircleFilled_default, Wn as CheckCircleOutlined_default, a as button_default, bn as InfoCircleOutlined_default, jn as ExclamationCircleOutlined_default, k as cloneElement, n as message_default, nn as _extends, q as resetComponent, qt as isValidElement, rn as _objectSpread2, xn as InfoCircleFilled_default, zn as CloseOutlined_default } from "./modal-CSWipFvB.js";
2
- import { o as cloneDeep_default, t as watchDiffObject } from "./watchDiff-C4eGkl9e.js";
3
- import "./tree-select-CTjWj5WT.js";
4
- import { t as pick_default } from "./pick-C42gkI1h.js";
5
- import "./components-DVIyiEVI.js";
6
- import { t as _plugin_vue_export_helper_default } from "./_plugin-vue_export-helper-DaPiLSxE.js";
7
- import { n as useContext } from "./useContext-D6pJCZez.js";
8
- import { t as HTooltip_default } from "./HTooltip-BHBHfrCD.js";
9
- import { t as HCheckList_default } from "./HCheckList-CHR-lWIq.js";
10
- import { t as HToggle_default } from "./HToggle-C_iVIpxv.js";
11
- import { t as question_line_default } from "./question-line-BKVlJGUb.js";
12
- import { n as back_default, t as right_default } from "./right-VKgVtqD5.js";
13
- import { Fragment, Transition, computed, createCommentVNode, createElementBlock, createElementVNode, createTextVNode, createVNode, defineComponent, isRef, normalizeClass, normalizeStyle, openBlock, ref, renderList, resolveComponent, shallowRef, unref, vShow, withCtx, withDirectives } from "vue";
14
- import { getThemes } from "@pubinfo/config/themes";
15
- var genAlertTypeStyle = (t, w, T, E, D) => ({
16
- backgroundColor: t,
17
- border: `${E.lineWidth}px ${E.lineType} ${w}`,
18
- [`${D}-icon`]: { color: T }
19
- });
20
- const genBaseStyle = (t) => {
21
- let { componentCls: w, motionDurationSlow: T, marginXS: E, marginSM: D, fontSize: O, fontSizeLG: k, lineHeight: A, borderRadiusLG: j, motionEaseInOutCirc: M, alertIconSizeLG: N, colorText: P, paddingContentVerticalSM: F, alertPaddingHorizontal: I, paddingMD: L, paddingContentHorizontalLG: R } = t;
22
- return {
23
- [w]: _extends(_extends({}, resetComponent(t)), {
24
- position: "relative",
25
- display: "flex",
26
- alignItems: "center",
27
- padding: `${F}px ${I}px`,
28
- wordWrap: "break-word",
29
- borderRadius: j,
30
- [`&${w}-rtl`]: { direction: "rtl" },
31
- [`${w}-content`]: {
32
- flex: 1,
33
- minWidth: 0
34
- },
35
- [`${w}-icon`]: {
36
- marginInlineEnd: E,
37
- lineHeight: 0
38
- },
39
- "&-description": {
40
- display: "none",
41
- fontSize: O,
42
- lineHeight: A
43
- },
44
- "&-message": { color: P },
45
- [`&${w}-motion-leave`]: {
46
- overflow: "hidden",
47
- opacity: 1,
48
- transition: `max-height ${T} ${M}, opacity ${T} ${M},
49
- padding-top ${T} ${M}, padding-bottom ${T} ${M},
50
- margin-bottom ${T} ${M}`
51
- },
52
- [`&${w}-motion-leave-active`]: {
53
- maxHeight: 0,
54
- marginBottom: "0 !important",
55
- paddingTop: 0,
56
- paddingBottom: 0,
57
- opacity: 0
58
- }
59
- }),
60
- [`${w}-with-description`]: {
61
- alignItems: "flex-start",
62
- paddingInline: R,
63
- paddingBlock: L,
64
- [`${w}-icon`]: {
65
- marginInlineEnd: D,
66
- fontSize: N,
67
- lineHeight: 0
68
- },
69
- [`${w}-message`]: {
70
- display: "block",
71
- marginBottom: E,
72
- color: P,
73
- fontSize: k
74
- },
75
- [`${w}-description`]: { display: "block" }
76
- },
77
- [`${w}-banner`]: {
78
- marginBottom: 0,
79
- border: "0 !important",
80
- borderRadius: 0
81
- }
82
- };
83
- }, genTypeStyle = (t) => {
84
- let { componentCls: w, colorSuccess: T, colorSuccessBorder: E, colorSuccessBg: D, colorWarning: O, colorWarningBorder: k, colorWarningBg: A, colorError: j, colorErrorBorder: M, colorErrorBg: N, colorInfo: P, colorInfoBorder: F, colorInfoBg: I } = t;
85
- return { [w]: {
86
- "&-success": genAlertTypeStyle(D, E, T, t, w),
87
- "&-info": genAlertTypeStyle(I, F, P, t, w),
88
- "&-warning": genAlertTypeStyle(A, k, O, t, w),
89
- "&-error": _extends(_extends({}, genAlertTypeStyle(N, M, j, t, w)), { [`${w}-description > pre`]: {
90
- margin: 0,
91
- padding: 0
92
- } })
93
- } };
94
- }, genActionStyle = (t) => {
95
- let { componentCls: w, iconCls: T, motionDurationMid: E, marginXS: D, fontSizeIcon: O, colorIcon: k, colorIconHover: A } = t;
96
- return { [w]: {
97
- "&-action": { marginInlineStart: D },
98
- [`${w}-close-icon`]: {
99
- marginInlineStart: D,
100
- padding: 0,
101
- overflow: "hidden",
102
- fontSize: O,
103
- lineHeight: `${O}px`,
104
- backgroundColor: "transparent",
105
- border: "none",
106
- outline: "none",
107
- cursor: "pointer",
108
- [`${T}-close`]: {
109
- color: k,
110
- transition: `color ${E}`,
111
- "&:hover": { color: A }
112
- }
113
- },
114
- "&-close-text": {
115
- color: k,
116
- transition: `color ${E}`,
117
- "&:hover": { color: A }
118
- }
119
- } };
120
- }, genAlertStyle = (t) => [
121
- genBaseStyle(t),
122
- genTypeStyle(t),
123
- genActionStyle(t)
124
- ];
125
- var style_default = genComponentStyleHook("Alert", (t) => {
126
- let { fontSizeHeading3: w } = t;
127
- return [genAlertStyle(merge(t, {
128
- alertIconSizeLG: w,
129
- alertPaddingHorizontal: 12
130
- }))];
131
- }), iconMapFilled = {
132
- success: CheckCircleFilled_default,
133
- info: InfoCircleFilled_default,
134
- error: CloseCircleFilled_default,
135
- warning: ExclamationCircleFilled_default
136
- }, iconMapOutlined = {
137
- success: CheckCircleOutlined_default,
138
- info: InfoCircleOutlined_default,
139
- error: CloseCircleOutlined_default,
140
- warning: ExclamationCircleOutlined_default
141
- }, AlertTypes = tuple("success", "info", "warning", "error"), alert_default = withInstall(defineComponent({
142
- compatConfig: { MODE: 3 },
143
- name: "AAlert",
144
- inheritAttrs: !1,
145
- props: (() => ({
146
- type: vue_types_default.oneOf(AlertTypes),
147
- closable: {
148
- type: Boolean,
149
- default: void 0
150
- },
151
- closeText: vue_types_default.any,
152
- message: vue_types_default.any,
153
- description: vue_types_default.any,
154
- afterClose: Function,
155
- showIcon: {
156
- type: Boolean,
157
- default: void 0
158
- },
159
- prefixCls: String,
160
- banner: {
161
- type: Boolean,
162
- default: void 0
163
- },
164
- icon: vue_types_default.any,
165
- closeIcon: vue_types_default.any,
166
- onClose: Function
167
- }))(),
168
- setup(t, w) {
169
- let { slots: E, emit: D, attrs: k, expose: A } = w, { prefixCls: j, direction: N } = useConfigInject_default("alert", t), [P, F] = style_default(j), I = shallowRef(!1), L = shallowRef(!1), R = shallowRef(), z = (t) => {
170
- t.preventDefault();
171
- let w = R.value;
172
- w.style.height = `${w.offsetHeight}px`, w.style.height = `${w.offsetHeight}px`, I.value = !0, D("close", t);
173
- }, B = () => {
174
- var w;
175
- I.value = !1, L.value = !0, (w = t.afterClose) == null || w.call(t);
176
- }, V = computed(() => {
177
- let { type: w } = t;
178
- return w === void 0 ? t.banner ? "warning" : "info" : w;
179
- });
180
- A({ animationEnd: B });
181
- let H = shallowRef({});
182
- return () => {
183
- let { banner: w, closeIcon: D = E.closeIcon?.call(E) } = t, { closable: O, showIcon: A } = t, U = t.closeText ?? E.closeText?.call(E), W = t.description ?? E.description?.call(E), G = t.message ?? E.message?.call(E), K = t.icon ?? E.icon?.call(E), q = E.action?.call(E);
184
- A = w && A === void 0 ? !0 : A;
185
- let J = (W ? iconMapOutlined : iconMapFilled)[V.value] || null;
186
- U && (O = !0);
187
- let Y = j.value, X = classNames_default(Y, {
188
- [`${Y}-${V.value}`]: !0,
189
- [`${Y}-closing`]: I.value,
190
- [`${Y}-with-description`]: !!W,
191
- [`${Y}-no-icon`]: !A,
192
- [`${Y}-banner`]: !!w,
193
- [`${Y}-closable`]: O,
194
- [`${Y}-rtl`]: N.value === "rtl",
195
- [F.value]: !0
196
- }), Z = O ? createVNode("button", {
197
- type: "button",
198
- onClick: z,
199
- class: `${Y}-close-icon`,
200
- tabindex: 0
201
- }, [U ? createVNode("span", { class: `${Y}-close-text` }, [U]) : D === void 0 ? createVNode(CloseOutlined_default, null, null) : D]) : null, Q = K && (isValidElement(K) ? cloneElement(K, { class: `${Y}-icon` }) : createVNode("span", { class: `${Y}-icon` }, [K])) || createVNode(J, { class: `${Y}-icon` }, null), $ = getTransitionProps(`${Y}-motion`, {
202
- appear: !1,
203
- css: !0,
204
- onAfterLeave: B,
205
- onBeforeLeave: (t) => {
206
- t.style.maxHeight = `${t.offsetHeight}px`;
207
- },
208
- onLeave: (t) => {
209
- t.style.maxHeight = "0px";
210
- }
211
- });
212
- return P(L.value ? null : createVNode(Transition, $, { default: () => [withDirectives(createVNode("div", _objectSpread2(_objectSpread2({ role: "alert" }, k), {}, {
213
- style: [k.style, H.value],
214
- class: [k.class, X],
215
- "data-show": !I.value,
216
- ref: R
217
- }), [
218
- A ? Q : null,
219
- createVNode("div", { class: `${Y}-content` }, [G ? createVNode("div", { class: `${Y}-message` }, [G]) : null, W ? createVNode("div", { class: `${Y}-description` }, [W]) : null]),
220
- q ? createVNode("div", { class: `${Y}-action` }, [q]) : null,
221
- Z
222
- ]), [[vShow, !I.value]])] }));
223
- };
224
- }
225
- })), _hoisted_1 = {
226
- key: 0,
227
- class: "divider"
228
- }, _hoisted_2 = {
229
- key: 1,
230
- class: "flex items-center justify-center pb-4"
231
- }, _hoisted_3 = {
232
- key: 2,
233
- class: "themes"
234
- }, _hoisted_4 = ["onClick"], _hoisted_5 = {
235
- key: 3,
236
- class: "divider"
237
- }, _hoisted_6 = {
238
- key: 4,
239
- class: "menu-mode"
240
- }, _hoisted_7 = {
241
- key: 5,
242
- class: "divider"
243
- }, _hoisted_8 = {
244
- key: 6,
245
- class: "app-width-mode"
246
- }, _hoisted_9 = {
247
- key: 7,
248
- class: "divider"
249
- }, _hoisted_10 = {
250
- key: 8,
251
- class: "flex items-center justify-center pb-4"
252
- }, _hoisted_11 = {
253
- key: 9,
254
- class: "transition-mode"
255
- }, _hoisted_12 = {
256
- key: 10,
257
- class: "divider"
258
- }, _hoisted_13 = {
259
- key: 11,
260
- class: "setting-item"
261
- }, _hoisted_14 = { class: "label" }, _hoisted_15 = {
262
- key: 12,
263
- class: "setting-item"
264
- }, _hoisted_16 = {
265
- key: 13,
266
- class: "setting-item"
267
- }, _hoisted_17 = {
268
- key: 14,
269
- class: "setting-item"
270
- }, _hoisted_18 = {
271
- key: 15,
272
- class: "setting-item"
273
- }, _hoisted_19 = {
274
- key: 16,
275
- class: "divider"
276
- }, _hoisted_20 = {
277
- key: 17,
278
- class: "setting-item"
279
- }, _hoisted_21 = { class: "label" }, _hoisted_22 = {
280
- key: 18,
281
- class: "divider"
282
- }, _hoisted_23 = {
283
- key: 19,
284
- class: "setting-item"
285
- }, _hoisted_24 = {
286
- key: 20,
287
- class: "setting-item"
288
- }, _hoisted_25 = {
289
- key: 21,
290
- class: "setting-item"
291
- }, _hoisted_26 = {
292
- key: 22,
293
- class: "setting-item"
294
- }, _hoisted_27 = { class: "label" }, _hoisted_28 = {
295
- key: 23,
296
- class: "divider"
297
- }, _hoisted_29 = {
298
- key: 24,
299
- class: "setting-item"
300
- }, _hoisted_30 = {
301
- key: 25,
302
- class: "setting-item"
303
- }, _hoisted_31 = {
304
- key: 26,
305
- class: "setting-item"
306
- }, _hoisted_32 = {
307
- key: 27,
308
- class: "divider"
309
- }, _hoisted_33 = {
310
- key: 28,
311
- class: "setting-item"
312
- }, _hoisted_34 = { class: "label" }, _hoisted_35 = {
313
- "w-full": "",
314
- "h-100px": "",
315
- flex: "~ center"
316
- }, PreferencesContent_default = /* @__PURE__ */ _plugin_vue_export_helper_default(/* @__PURE__ */ defineComponent({
317
- name: "PreferenceContent",
318
- __name: "PreferencesContent",
319
- setup(t) {
320
- let { settingsStore: w } = useContext(), T = ref({
321
- app: pick_default(w.settings.app, [
322
- "colorScheme",
323
- "lightTheme",
324
- "darkTheme",
325
- "enableProgress",
326
- "enableUserPreferences"
327
- ]),
328
- menu: pick_default(w.settings.menu, [
329
- "menuMode",
330
- "isRounded",
331
- "menuActiveStyle",
332
- "subMenuUniqueOpened",
333
- "subMenuCollapse",
334
- "enableSubMenuCollapseButton"
335
- ]),
336
- layout: pick_default(w.settings.layout, ["widthMode"]),
337
- mainPage: pick_default(w.settings.mainPage, ["enableTransition", "transitionMode"]),
338
- topbar: pick_default(w.settings.topbar, ["mode", "switchTabbarAndToolbar"]),
339
- tabbar: pick_default(w.settings.tabbar, [
340
- "enable",
341
- "style",
342
- "enableIcon",
343
- "mergeTabsBy",
344
- "enableMemory"
345
- ]),
346
- breadcrumb: pick_default(w.settings.breadcrumb, [
347
- "enable",
348
- "style",
349
- "enableMainMenu"
350
- ])
351
- }), E = computed({
352
- get() {
353
- return T.value.app?.colorScheme === "dark";
354
- },
355
- set(t) {
356
- T.value.app?.colorScheme && (T.value.app.colorScheme = t ? "dark" : "light");
357
- }
358
- }), D = computed(() => {
359
- let t = getThemes();
360
- return Object.keys(t).map((w) => ({
361
- label: w,
362
- value: t[w]
363
- })).filter((t) => t.value["color-scheme"] === T.value.app?.colorScheme);
364
- });
365
- watchDiffObject(() => T.value, async (t) => {
366
- w.updateSettings(cloneDeep_default(t), !1), await w.setPreferencesSetting(t), message_default.success("个人偏好设置成功");
367
- }, { deep: !0 });
368
- async function O() {
369
- await w.resetSettings();
370
- }
371
- return (t, k) => {
372
- let A = alert_default, j = HToggle_default, M = HTooltip_default, N = HCheckList_default, P = button_default;
373
- return openBlock(), createElementBlock("div", null, [
374
- createVNode(A, {
375
- message: "提示",
376
- description: "个人偏好设置将覆盖系统默认设置。若需恢复至系统默认配置,请滚动至底部并点击“还原系统设置”按钮。",
377
- type: "info"
378
- }),
379
- unref(T).app?.hasOwnProperty("colorScheme") || unref(T).app?.hasOwnProperty("lightTheme") && unref(T).app?.hasOwnProperty("darkTheme") ? (openBlock(), createElementBlock("div", _hoisted_1, " 颜色主题风格 ")) : createCommentVNode("", !0),
380
- unref(T).app?.hasOwnProperty("colorScheme") ? (openBlock(), createElementBlock("div", _hoisted_2, [createVNode(j, {
381
- modelValue: unref(E),
382
- "onUpdate:modelValue": k[0] ||= (t) => isRef(E) ? E.value = t : null,
383
- "on-icon": "i-ri-sun-line",
384
- "off-icon": "i-ri-moon-line"
385
- }, null, 8, ["modelValue"])])) : createCommentVNode("", !0),
386
- unref(T).app?.hasOwnProperty("lightTheme") && unref(T).app?.hasOwnProperty("darkTheme") ? (openBlock(), createElementBlock("div", _hoisted_3, [(openBlock(!0), createElementBlock(Fragment, null, renderList(unref(D), (t) => (openBlock(), createElementBlock("div", {
387
- key: t.label,
388
- class: normalizeClass(["theme", { active: unref(E) ? unref(T).app.darkTheme === t.label : unref(T).app.lightTheme === t.label }]),
389
- onClick: (w) => unref(E) ? unref(T).app?.hasOwnProperty("darkTheme") && (unref(T).app.darkTheme = t.label) : unref(T).app?.hasOwnProperty("lightTheme") && (unref(T).app.lightTheme = t.label)
390
- }, [createElementVNode("div", {
391
- class: "content",
392
- style: normalizeStyle(`background-color: rgb(${t.value["--ui-primary"]});`)
393
- }, null, 4)], 10, _hoisted_4))), 128))])) : createCommentVNode("", !0),
394
- unref(w).mode === "pc" && unref(T).menu?.hasOwnProperty("menuMode") ? (openBlock(), createElementBlock("div", _hoisted_5, " 导航栏模式 ")) : createCommentVNode("", !0),
395
- unref(w).mode === "pc" && unref(T).menu?.hasOwnProperty("menuMode") ? (openBlock(), createElementBlock("div", _hoisted_6, [
396
- createVNode(M, {
397
- text: "侧边栏模式 (含主导航)",
398
- placement: "bottom",
399
- delay: 500
400
- }, {
401
- default: withCtx(() => [createElementVNode("div", {
402
- class: normalizeClass(["mode mode-side", { active: unref(T).menu.menuMode === "side" }]),
403
- onClick: k[1] ||= (t) => unref(T).menu?.hasOwnProperty("menuMode") && (unref(T).menu.menuMode = "side")
404
- }, [...k[30] ||= [createElementVNode("div", { class: "mode-container" }, null, -1)]], 2)]),
405
- _: 1
406
- }),
407
- createVNode(M, {
408
- text: "顶部模式",
409
- placement: "bottom",
410
- delay: 500
411
- }, {
412
- default: withCtx(() => [createElementVNode("div", {
413
- class: normalizeClass(["mode mode-head", { active: unref(T).menu.menuMode === "head" }]),
414
- onClick: k[2] ||= (t) => unref(T).menu?.hasOwnProperty("menuMode") && (unref(T).menu.menuMode = "head")
415
- }, [...k[31] ||= [createElementVNode("div", { class: "mode-container" }, null, -1)]], 2)]),
416
- _: 1
417
- }),
418
- createVNode(M, {
419
- text: "侧边栏模式 (不含主导航)",
420
- placement: "bottom",
421
- delay: 500
422
- }, {
423
- default: withCtx(() => [createElementVNode("div", {
424
- class: normalizeClass(["mode mode-single", { active: unref(T).menu.menuMode === "single" }]),
425
- onClick: k[3] ||= (t) => unref(T).menu?.hasOwnProperty("menuMode") && (unref(T).menu.menuMode = "single")
426
- }, [...k[32] ||= [createElementVNode("div", { class: "mode-container" }, null, -1)]], 2)]),
427
- _: 1
428
- }),
429
- createVNode(M, {
430
- text: "侧边栏精简模式",
431
- placement: "bottom",
432
- delay: 500
433
- }, {
434
- default: withCtx(() => [createElementVNode("div", {
435
- class: normalizeClass(["mode mode-only-side", { active: unref(T).menu.menuMode === "only-side" }]),
436
- onClick: k[4] ||= (t) => unref(T).menu?.hasOwnProperty("menuMode") && (unref(T).menu.menuMode = "only-side")
437
- }, [...k[33] ||= [createElementVNode("div", { class: "mode-container" }, null, -1)]], 2)]),
438
- _: 1
439
- }),
440
- createVNode(M, {
441
- text: "顶部精简模式",
442
- placement: "bottom",
443
- delay: 500
444
- }, {
445
- default: withCtx(() => [createElementVNode("div", {
446
- class: normalizeClass(["mode mode-only-head", { active: unref(T).menu.menuMode === "only-head" }]),
447
- onClick: k[5] ||= (t) => unref(T).menu?.hasOwnProperty("menuMode") && (unref(T).menu.menuMode = "only-head")
448
- }, [...k[34] ||= [createElementVNode("div", { class: "mode-container" }, null, -1)]], 2)]),
449
- _: 1
450
- })
451
- ])) : createCommentVNode("", !0),
452
- unref(w).mode === "pc" && unref(T).layout?.hasOwnProperty("widthMode") ? (openBlock(), createElementBlock("div", _hoisted_7, " 页宽模式 ")) : createCommentVNode("", !0),
453
- unref(w).mode === "pc" && unref(T).layout?.hasOwnProperty("widthMode") ? (openBlock(), createElementBlock("div", _hoisted_8, [
454
- createVNode(M, {
455
- text: "自适应",
456
- placement: "bottom",
457
- delay: 500
458
- }, {
459
- default: withCtx(() => [createElementVNode("div", {
460
- class: normalizeClass(["mode mode-adaption", { active: unref(T).layout.widthMode === "adaption" }]),
461
- onClick: k[6] ||= (t) => unref(T).layout?.hasOwnProperty("widthMode") && (unref(T).layout.widthMode = "adaption")
462
- }, [createVNode(unref(back_default), { class: "left" }), createVNode(unref(right_default), { class: "right" })], 2)]),
463
- _: 1
464
- }),
465
- createVNode(M, {
466
- text: "自适应 (有最小宽度)",
467
- placement: "bottom",
468
- delay: 500
469
- }, {
470
- default: withCtx(() => [createElementVNode("div", {
471
- class: normalizeClass(["mode mode-adaption-min-width", { active: unref(T).layout.widthMode === "adaption-min-width" }]),
472
- onClick: k[7] ||= (t) => unref(T).layout?.hasOwnProperty("widthMode") && (unref(T).layout.widthMode = "adaption-min-width")
473
- }, [createVNode(unref(back_default), { class: "left" }), createVNode(unref(right_default), { class: "right" })], 2)]),
474
- _: 1
475
- }),
476
- createVNode(M, {
477
- text: "定宽居中",
478
- placement: "bottom",
479
- delay: 500
480
- }, {
481
- default: withCtx(() => [createElementVNode("div", {
482
- class: normalizeClass(["mode mode-center", { active: unref(T).layout.widthMode === "center" }]),
483
- onClick: k[8] ||= (t) => unref(T).layout?.widthMode && (unref(T).layout.widthMode = "center")
484
- }, null, 2)]),
485
- _: 1
486
- }),
487
- createVNode(M, {
488
- text: "定宽居中 (有最大宽度)",
489
- placement: "bottom",
490
- delay: 500
491
- }, {
492
- default: withCtx(() => [createElementVNode("div", {
493
- class: normalizeClass(["mode mode-center-max-width", { active: unref(T).layout.widthMode === "center-max-width" }]),
494
- onClick: k[9] ||= (t) => unref(T).layout?.widthMode && (unref(T).layout.widthMode = "center-max-width")
495
- }, [createVNode(unref(back_default), { class: "left" }), createVNode(unref(right_default), { class: "right" })], 2)]),
496
- _: 1
497
- })
498
- ])) : createCommentVNode("", !0),
499
- unref(w).settings.mainPage.enableTransition && unref(T).mainPage?.hasOwnProperty("enableTransition") ? (openBlock(), createElementBlock("div", _hoisted_9, " 页面切换动画 ")) : createCommentVNode("", !0),
500
- unref(w).settings.mainPage.enableTransition && unref(T).mainPage?.hasOwnProperty("enableTransition") ? (openBlock(), createElementBlock("div", _hoisted_10, [createVNode(j, {
501
- modelValue: unref(T).mainPage.enableTransition,
502
- "onUpdate:modelValue": k[10] ||= (t) => unref(T).mainPage.enableTransition = t
503
- }, null, 8, ["modelValue"])])) : createCommentVNode("", !0),
504
- unref(w).settings.mainPage.enableTransition && unref(T).mainPage?.hasOwnProperty("transitionMode") ? (openBlock(), createElementBlock("div", _hoisted_11, [
505
- createVNode(M, {
506
- text: "淡入淡出",
507
- placement: "bottom",
508
- delay: 500
509
- }, {
510
- default: withCtx(() => [createElementVNode("div", {
511
- class: normalizeClass(["mode mode-fade", { active: unref(T).mainPage.transitionMode === "fade" }]),
512
- onClick: k[11] ||= (t) => unref(T).mainPage?.hasOwnProperty("transitionMode") && (unref(T).mainPage.transitionMode = "fade")
513
- }, null, 2)]),
514
- _: 1
515
- }),
516
- createVNode(M, {
517
- text: "向左滑动",
518
- placement: "bottom",
519
- delay: 500
520
- }, {
521
- default: withCtx(() => [createElementVNode("div", {
522
- class: normalizeClass(["mode mode-slide-left", { active: unref(T).mainPage.transitionMode === "slide-left" }]),
523
- onClick: k[12] ||= (t) => unref(T).mainPage?.hasOwnProperty("transitionMode") && (unref(T).mainPage.transitionMode = "slide-left")
524
- }, null, 2)]),
525
- _: 1
526
- }),
527
- createVNode(M, {
528
- text: "向右滑动",
529
- placement: "bottom",
530
- delay: 500
531
- }, {
532
- default: withCtx(() => [createElementVNode("div", {
533
- class: normalizeClass(["mode mode-slide-right", { active: unref(T).mainPage.transitionMode === "slide-right" }]),
534
- onClick: k[13] ||= (t) => unref(T).mainPage?.hasOwnProperty("transitionMode") && (unref(T).mainPage.transitionMode = "slide-right")
535
- }, null, 2)]),
536
- _: 1
537
- }),
538
- createVNode(M, {
539
- text: "向上滑动",
540
- placement: "bottom",
541
- delay: 500
542
- }, {
543
- default: withCtx(() => [createElementVNode("div", {
544
- class: normalizeClass(["mode mode-slide-top", { active: unref(T).mainPage.transitionMode === "slide-top" }]),
545
- onClick: k[14] ||= (t) => unref(T).mainPage?.hasOwnProperty("transitionMode") && (unref(T).mainPage.transitionMode = "slide-top")
546
- }, null, 2)]),
547
- _: 1
548
- }),
549
- createVNode(M, {
550
- text: "向下滑动",
551
- placement: "bottom",
552
- delay: 500
553
- }, {
554
- default: withCtx(() => [createElementVNode("div", {
555
- class: normalizeClass(["mode mode-slide-bottom", { active: unref(T).mainPage.transitionMode === "slide-bottom" }]),
556
- onClick: k[15] ||= (t) => unref(T).mainPage?.hasOwnProperty("transitionMode") && (unref(T).mainPage.transitionMode = "slide-bottom")
557
- }, null, 2)]),
558
- _: 1
559
- })
560
- ])) : createCommentVNode("", !0),
561
- unref(T).menu?.hasOwnProperty("switchMainMenuAndPageJump") || unref(T).menu?.hasOwnProperty("subMenuOnlyOneHide") || unref(T).menu?.hasOwnProperty("subMenuUniqueOpened") || unref(T).menu?.hasOwnProperty("subMenuCollapse") || unref(T).menu?.hasOwnProperty("enableSubMenuCollapseButton") ? (openBlock(), createElementBlock("div", _hoisted_12, " 导航栏 ")) : createCommentVNode("", !0),
562
- unref(T).menu?.hasOwnProperty("subMenuUniqueOpened") ? (openBlock(), createElementBlock("div", _hoisted_13, [createElementVNode("div", _hoisted_14, [k[35] ||= createTextVNode(" 次导航保持展开一个 ", -1), createVNode(M, { text: "开启该功能后,次导航只保持单个菜单的展开" }, {
563
- default: withCtx(() => [createVNode(unref(question_line_default))]),
564
- _: 1
565
- })]), createVNode(j, {
566
- modelValue: unref(T).menu.subMenuUniqueOpened,
567
- "onUpdate:modelValue": k[16] ||= (t) => unref(T).menu.subMenuUniqueOpened = t,
568
- disabled: ["only-side", "only-head"].includes(unref(T).menu?.menuMode ?? unref(w).settings.menu.menuMode)
569
- }, null, 8, ["modelValue", "disabled"])])) : createCommentVNode("", !0),
570
- unref(T).menu?.hasOwnProperty("subMenuCollapse") ? (openBlock(), createElementBlock("div", _hoisted_15, [k[36] ||= createElementVNode("div", { class: "label" }, " 次导航是否折叠 ", -1), createVNode(j, {
571
- modelValue: unref(T).menu.subMenuCollapse,
572
- "onUpdate:modelValue": k[17] ||= (t) => unref(T).menu.subMenuCollapse = t,
573
- disabled: ["only-side", "only-head"].includes(unref(T).menu?.menuMode ?? unref(w).settings.menu.menuMode)
574
- }, null, 8, ["modelValue", "disabled"])])) : createCommentVNode("", !0),
575
- unref(w).mode === "pc" && unref(w).settings.menu.enableSubMenuCollapseButton && unref(T).menu?.hasOwnProperty("enableSubMenuCollapseButton") ? (openBlock(), createElementBlock("div", _hoisted_16, [k[37] ||= createElementVNode("div", { class: "label" }, " 显示次导航折叠按钮 ", -1), createVNode(j, {
576
- modelValue: unref(T).menu.enableSubMenuCollapseButton,
577
- "onUpdate:modelValue": k[18] ||= (t) => unref(T).menu.enableSubMenuCollapseButton = t,
578
- disabled: ["only-side", "only-head"].includes(unref(T).menu?.menuMode ?? unref(w).settings.menu.menuMode)
579
- }, null, 8, ["modelValue", "disabled"])])) : createCommentVNode("", !0),
580
- unref(T).menu?.hasOwnProperty("isRounded") ? (openBlock(), createElementBlock("div", _hoisted_17, [k[38] ||= createElementVNode("div", { class: "label" }, " 是否圆角 ", -1), createVNode(j, {
581
- modelValue: unref(T).menu.isRounded,
582
- "onUpdate:modelValue": k[19] ||= (t) => unref(T).menu.isRounded = t
583
- }, null, 8, ["modelValue"])])) : createCommentVNode("", !0),
584
- (unref(T).menu?.menuMode ?? unref(w).settings.menu.menuMode) !== "single" && unref(T).menu?.hasOwnProperty("menuActiveStyle") ? (openBlock(), createElementBlock("div", _hoisted_18, [k[39] ||= createElementVNode("div", { class: "label" }, " 激活风格 ", -1), createVNode(N, {
585
- modelValue: unref(T).menu.menuActiveStyle,
586
- "onUpdate:modelValue": k[20] ||= (t) => unref(T).menu.menuActiveStyle = t,
587
- options: [
588
- {
589
- icon: "i-jam-stop-sign",
590
- value: ""
591
- },
592
- {
593
- icon: ["head", "only-head"].includes(unref(T).menu?.menuMode ?? unref(w).settings.menu.menuMode) ? "i-ep-caret-top" : "i-ep-caret-left",
594
- value: "arrow"
595
- },
596
- {
597
- icon: ["side", "only-side"].includes(unref(T).menu?.menuMode ?? unref(w).settings.menu.menuMode) ? "i-tabler-minus-vertical" : "i-tabler-minus",
598
- value: "line"
599
- },
600
- {
601
- icon: "i-icon-park-outline-dot",
602
- value: "dot"
603
- }
604
- ]
605
- }, null, 8, ["modelValue", "options"])])) : createCommentVNode("", !0),
606
- unref(T).topbar?.hasOwnProperty("mode") || unref(T).topbar?.hasOwnProperty("switchTabbarAndToolbar") ? (openBlock(), createElementBlock("div", _hoisted_19, " 顶栏 ")) : createCommentVNode("", !0),
607
- unref(T).topbar?.hasOwnProperty("switchTabbarAndToolbar") ? (openBlock(), createElementBlock("div", _hoisted_20, [createElementVNode("div", _hoisted_21, [k[40] ||= createTextVNode(" 展示切换 ", -1), createVNode(M, { text: "切换标签栏和工具栏的展示顺序" }, {
608
- default: withCtx(() => [createVNode(unref(question_line_default))]),
609
- _: 1
610
- })]), createVNode(j, {
611
- modelValue: unref(T).topbar.switchTabbarAndToolbar,
612
- "onUpdate:modelValue": k[21] ||= (t) => unref(T).topbar.switchTabbarAndToolbar = t,
613
- disabled: !unref(T).tabbar?.enable
614
- }, null, 8, ["modelValue", "disabled"])])) : createCommentVNode("", !0),
615
- unref(w).settings.tabbar.enable && unref(T).tabbar?.hasOwnProperty("enable") || unref(T).tabbar?.hasOwnProperty("style") || unref(T).tabbar?.hasOwnProperty("enableIcon") || unref(T).tabbar?.hasOwnProperty("mergeTabsBy") ? (openBlock(), createElementBlock("div", _hoisted_22, " 标签栏 ")) : createCommentVNode("", !0),
616
- unref(w).settings.tabbar.enable && unref(T).tabbar?.hasOwnProperty("enable") ? (openBlock(), createElementBlock("div", _hoisted_23, [k[41] ||= createElementVNode("div", { class: "label" }, " 是否启用 ", -1), createVNode(j, {
617
- modelValue: unref(T).tabbar.enable,
618
- "onUpdate:modelValue": k[22] ||= (t) => unref(T).tabbar.enable = t
619
- }, null, 8, ["modelValue"])])) : createCommentVNode("", !0),
620
- unref(w).settings.tabbar.enable && unref(T).tabbar?.hasOwnProperty("style") ? (openBlock(), createElementBlock("div", _hoisted_24, [k[42] ||= createElementVNode("div", { class: "label" }, " 风格 ", -1), createVNode(N, {
621
- modelValue: unref(T).tabbar.style,
622
- "onUpdate:modelValue": k[23] ||= (t) => unref(T).tabbar.style = t,
623
- options: [
624
- {
625
- label: "时尚",
626
- value: "fashion"
627
- },
628
- {
629
- label: "卡片",
630
- value: "card"
631
- },
632
- {
633
- label: "方块",
634
- value: "square"
635
- }
636
- ],
637
- disabled: !(unref(T).tabbar?.enable ?? unref(w).settings.tabbar.enable)
638
- }, null, 8, ["modelValue", "disabled"])])) : createCommentVNode("", !0),
639
- unref(w).settings.tabbar.enable && unref(T).tabbar?.hasOwnProperty("enableIcon") ? (openBlock(), createElementBlock("div", _hoisted_25, [k[43] ||= createElementVNode("div", { class: "label" }, " 是否显示图标 ", -1), createVNode(j, {
640
- modelValue: unref(T).tabbar.enableIcon,
641
- "onUpdate:modelValue": k[24] ||= (t) => unref(T).tabbar.enableIcon = t,
642
- disabled: !(unref(T).tabbar?.enable ?? unref(w).settings.tabbar.enable)
643
- }, null, 8, ["modelValue", "disabled"])])) : createCommentVNode("", !0),
644
- unref(w).settings.tabbar.enable && unref(T).tabbar?.hasOwnProperty("enableMemory") ? (openBlock(), createElementBlock("div", _hoisted_26, [createElementVNode("div", _hoisted_27, [k[44] ||= createTextVNode(" 是否启用记忆功能 ", -1), createVNode(M, { text: "开启该功能后,非固定和非常驻的标签页将在本次会话窗口中始终存在,刷新浏览器或重新登录时不会丢失" }, {
645
- default: withCtx(() => [createVNode(unref(question_line_default))]),
646
- _: 1
647
- })]), createVNode(j, {
648
- modelValue: unref(T).tabbar.enableMemory,
649
- "onUpdate:modelValue": k[25] ||= (t) => unref(T).tabbar.enableMemory = t,
650
- disabled: !(unref(T).tabbar?.enable ?? unref(w).settings.tabbar.enable)
651
- }, null, 8, ["modelValue", "disabled"])])) : createCommentVNode("", !0),
652
- unref(w).mode === "pc" && unref(w).settings.breadcrumb.enable && (unref(T).breadcrumb?.hasOwnProperty("enable") || unref(T).breadcrumb?.hasOwnProperty("style") || unref(T).breadcrumb?.hasOwnProperty("enableMainMenu")) ? (openBlock(), createElementBlock("div", _hoisted_28, " 面包屑导航 ")) : createCommentVNode("", !0),
653
- unref(w).mode === "pc" && unref(w).settings.breadcrumb.enable && unref(T).breadcrumb?.hasOwnProperty("enable") ? (openBlock(), createElementBlock("div", _hoisted_29, [k[45] ||= createElementVNode("div", { class: "label" }, " 是否启用 ", -1), createVNode(j, {
654
- modelValue: unref(T).breadcrumb.enable,
655
- "onUpdate:modelValue": k[26] ||= (t) => unref(T).breadcrumb.enable = t
656
- }, null, 8, ["modelValue"])])) : createCommentVNode("", !0),
657
- unref(w).mode === "pc" && unref(w).settings.breadcrumb.enable && unref(T).breadcrumb?.hasOwnProperty("style") ? (openBlock(), createElementBlock("div", _hoisted_30, [k[46] ||= createElementVNode("div", { class: "label" }, " 风格 ", -1), createVNode(N, {
658
- modelValue: unref(T).breadcrumb.style,
659
- "onUpdate:modelValue": k[27] ||= (t) => unref(T).breadcrumb.style = t,
660
- options: [{
661
- label: "默认",
662
- value: ""
663
- }, {
664
- label: "现代",
665
- value: "modern"
666
- }],
667
- disabled: !(unref(T).breadcrumb?.enable ?? unref(w).settings.breadcrumb.enable)
668
- }, null, 8, ["modelValue", "disabled"])])) : createCommentVNode("", !0),
669
- unref(w).mode === "pc" && unref(w).settings.breadcrumb.enable && unref(w).settings.breadcrumb.enableMainMenu && unref(T).breadcrumb?.hasOwnProperty("enableMainMenu") ? (openBlock(), createElementBlock("div", _hoisted_31, [k[47] ||= createElementVNode("div", { class: "label" }, " 是否显示主导航 ", -1), createVNode(j, {
670
- modelValue: unref(T).breadcrumb.enableMainMenu,
671
- "onUpdate:modelValue": k[28] ||= (t) => unref(T).breadcrumb.enableMainMenu = t,
672
- disabled: ["single"].includes(unref(T).menu?.menuMode ?? unref(w).settings.menu.menuMode)
673
- }, null, 8, ["modelValue", "disabled"])])) : createCommentVNode("", !0),
674
- unref(T).app?.hasOwnProperty("enableProgress") ? (openBlock(), createElementBlock("div", _hoisted_32, " 其它 ")) : createCommentVNode("", !0),
675
- unref(w).settings.app.enableProgress && unref(T).app?.hasOwnProperty("enableProgress") ? (openBlock(), createElementBlock("div", _hoisted_33, [createElementVNode("div", _hoisted_34, [k[48] ||= createTextVNode(" 载入进度条 ", -1), createVNode(M, { text: "该功能开启时,跳转路由会看到页面顶部有进度条" }, {
676
- default: withCtx(() => [createVNode(unref(question_line_default))]),
677
- _: 1
678
- })]), createVNode(j, {
679
- modelValue: unref(T).app.enableProgress,
680
- "onUpdate:modelValue": k[29] ||= (t) => unref(T).app.enableProgress = t
681
- }, null, 8, ["modelValue"])])) : createCommentVNode("", !0),
682
- createElementVNode("div", _hoisted_35, [createVNode(P, {
683
- "w-full": "",
684
- type: "primary",
685
- size: "large",
686
- onClick: O
687
- }, {
688
- default: withCtx(() => [...k[49] ||= [createTextVNode(" 还原系统设置 ", -1)]]),
689
- _: 1
690
- })])
691
- ]);
692
- };
693
- }
694
- }), [["__scopeId", "data-v-c97d99bc"]]);
695
- export { PreferencesContent_default as default };