@huyooo/ui 0.11.2 → 0.11.5

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 (98) hide show
  1. package/dist/AuthkitAppSetting-CSHkDxQT.js +1914 -0
  2. package/dist/{Clipboard---tG2Zxz.js → Clipboard-CRZDADLE.js} +1 -1
  3. package/dist/{Contact-BEUbBGiB.js → Contact-Y0Yczmc9.js} +8 -7
  4. package/dist/{CustomTable-CVZ4mFzi.js → CustomTable-BUkwlbzN.js} +3 -2
  5. package/dist/{FeedbackItem-CN041vTm.js → FeedbackItem-D7MpOmoM.js} +3 -3
  6. package/dist/FeedbackModal-CvNF1D-5.js +1050 -0
  7. package/dist/LandingPageFAQ-CZJXvor9.js +80 -0
  8. package/dist/LandingPageLinkGroup-DDNRivMt.js +521 -0
  9. package/dist/LandingPageSectionHeader-D_74W4My.js +69 -0
  10. package/dist/{LandingPageSectionTabs-B6ZVxR47.js → LandingPageSectionTabs-Ce3_Rc2L.js} +354 -426
  11. package/dist/MessageHandle-B12koVQL.js +924 -0
  12. package/dist/MessageList-Bo6YCfRO.js +233 -0
  13. package/dist/{MessageNoticeNotificationsDetails.vue_vue_type_script_setup_true_lang-F6neJUg3.js → MessageNoticeNotificationsDetails.vue_vue_type_script_setup_true_lang-DxDn6Ok8.js} +2 -2
  14. package/dist/PaySubscriptions-B8jAtG5n.js +515 -0
  15. package/dist/PricingPlans-CO26OcbJ.js +210 -0
  16. package/dist/ReferrerReferees-D_Iiw9wZ.js +106 -0
  17. package/dist/{Upload.vue_vue_type_script_setup_true_lang-D_-oMTOo.js → Upload.vue_vue_type_script_setup_true_lang-CbVSY_vt.js} +1 -1
  18. package/dist/UserMenuInvitationsItem.vue_vue_type_script_setup_true_lang-DpVadjMH.js +508 -0
  19. package/dist/WidthContainer-B6d4xrGT.js +693 -0
  20. package/dist/{apiClients-9b4zNZ2S.js → apiClients-DVz12LeW.js} +81 -75
  21. package/dist/authkit.d.ts +7 -0
  22. package/dist/authkit.js +52 -45
  23. package/dist/common/globalConfig.d.ts +2 -2
  24. package/dist/common/userMenuModal.d.ts +1 -0
  25. package/dist/common.js +2 -2
  26. package/dist/components/Authkit/AppSetting/AuthkitOAuthBinding.vue.d.ts +31 -0
  27. package/dist/components/Authkit/AppSetting/AuthkitPhoneBinding.vue.d.ts +14 -0
  28. package/dist/components/Authkit/AppSetting/AuthkitPhoneVerify.vue.d.ts +66 -0
  29. package/dist/components/Authkit/Auth/AuthkitBindPhone.vue.d.ts +27 -0
  30. package/dist/components/Authkit/Auth/AuthkitEmailUpdate.vue.d.ts +11 -1
  31. package/dist/components/Authkit/Auth/AuthkitOauthCallback.vue.d.ts +2 -2
  32. package/dist/components/Authkit/Auth/AuthkitOauthItem.vue.d.ts +1 -1
  33. package/dist/components/Authkit/Auth/AuthkitPasswordAuth.vue.d.ts +11 -1
  34. package/dist/components/Authkit/Auth/AuthkitPhonePasswordUpdateAndVerify.vue.d.ts +68 -0
  35. package/dist/components/Authkit/Auth/AuthkitSignInEmailCode.vue.d.ts +68 -0
  36. package/dist/components/Authkit/Auth/AuthkitSwitchSignUpOrResetPassword.vue.d.ts +15 -3
  37. package/dist/components/Authkit/AuthkitOAuthCallbackProvider.vue.d.ts +11 -0
  38. package/dist/components/Authkit/AuthkitProvider.vue.d.ts +45 -0
  39. package/dist/components/Feedback/FeedbackBubbleEnd.vue.d.ts +9 -0
  40. package/dist/components/Feedback/FeedbackBubbleStart.vue.d.ts +11 -6
  41. package/dist/components/LandingPage/LandingPageSections.vue.d.ts +1 -1
  42. package/dist/components/Pay/PaySubscriptions.vue.d.ts +2 -1
  43. package/dist/components/Pay/PricingFAQ.vue.d.ts +17 -0
  44. package/dist/components/Pay/PricingPlans.vue.d.ts +12 -0
  45. package/dist/components/UserMenu/UserMenuModals.vue.d.ts +2 -2
  46. package/dist/components/UserMenu/parts/UserSubscriptionBaseInformation.vue.d.ts +8 -0
  47. package/dist/composables/Authkit/useAuthkitAppsAuthPageInfo.d.ts +26 -0
  48. package/dist/composables/Authkit/useAuthkitAuth.d.ts +21 -9
  49. package/dist/composables/Authkit/useEnsureAuthenticated.d.ts +26 -0
  50. package/dist/composables/Authkit/useOauth.d.ts +4 -1
  51. package/dist/composables/Billing/useBillingPlans.d.ts +201 -0
  52. package/dist/composables/Billing/useBillingSubscriptionSummary.d.ts +280 -0
  53. package/dist/composables/Billing/useSubscriptionCheckout.d.ts +12 -0
  54. package/dist/composables/UserMenu/useUserMenu.d.ts +5 -1
  55. package/dist/composables.d.ts +2 -0
  56. package/dist/composables.js +25 -22
  57. package/dist/feedback.js +3 -3
  58. package/dist/index-D3Kp6R4z.js +4 -0
  59. package/dist/landingPage.js +42 -40
  60. package/dist/main.js +285 -269
  61. package/dist/message.js +19 -18
  62. package/dist/pay.d.ts +5 -0
  63. package/dist/pay.js +9 -2
  64. package/dist/privateCom.js +1 -1
  65. package/dist/referrer.js +1 -1
  66. package/dist/style.css +1 -1
  67. package/dist/types/api/auth.generated.d.ts +103 -39
  68. package/dist/types/api/billing.generated.d.ts +61 -28
  69. package/dist/types/api.d.ts +1 -1
  70. package/dist/types/app.d.ts +14 -0
  71. package/dist/upload.js +2 -2
  72. package/dist/{useAuthkitAppsAuthPageInfo-494yLvsu.js → useAuthkitAppsAuthPageInfo-Du5d6VK-.js} +20 -7
  73. package/dist/{useAuthkitCreateAndUpdate-DyRtFxZS.js → useAuthkitCreateAndUpdate-Bc9D5C6R.js} +1 -1
  74. package/dist/useAuthkitUsersProfile-CQGyvL7g.js +201 -0
  75. package/dist/{useDownloads-DaeIY0E9.js → useDownloads-BFx1a-f9.js} +1 -1
  76. package/dist/useEnsureAuthenticated-Cc64hF1O.js +2247 -0
  77. package/dist/{useLegalLinks-CPbWqlu6.js → useLegalLinks-Deksq9h-.js} +2 -2
  78. package/dist/{useMessageNotifications-Dg5q-C_o.js → useMessageNotifications-DY5xKtif.js} +1 -1
  79. package/dist/{useSEO-CXX9dcBx.js → useSEO-CvfzTZA9.js} +2 -2
  80. package/dist/useSubscriptionCheckout-BgQJN61l.js +345 -0
  81. package/dist/{useTableHandle-Cjq4gcC0.js → useTableHandle-D71P3Ez_.js} +1 -1
  82. package/dist/{useUploadCos-DiJmmbRf.js → useUploadCos-N5pim6q1.js} +501 -515
  83. package/dist/useUserMenu-ClPBlvaM.js +44 -0
  84. package/dist/user.js +12 -13
  85. package/dist/utils/apiMiddlewares.d.ts +6 -0
  86. package/package.json +1 -1
  87. package/dist/AuthkitAppSetting-BCrLMpLg.js +0 -1322
  88. package/dist/AuthkitSignInPhone-DmCQ2fWs.js +0 -1721
  89. package/dist/FeedbackModal-aI28o-w5.js +0 -1053
  90. package/dist/LandingPageSectionHeader-Cs1x8i3q.js +0 -584
  91. package/dist/MessageHandle-BV1nKlxs.js +0 -1147
  92. package/dist/PaySubscriptions-B3gI1Eme.js +0 -408
  93. package/dist/ReferrerReferees-DJzPo7X5.js +0 -106
  94. package/dist/UserAccountMenu-CJ9KKVYa.js +0 -371
  95. package/dist/UserMenuInvitationsItem.vue_vue_type_script_setup_true_lang-ClAXNSgl.js +0 -81
  96. package/dist/WidthContainer-BG10rumn.js +0 -669
  97. package/dist/useAuthkitUsersProfile-lGlQP54m.js +0 -186
  98. package/dist/useUserMenu-B3HKZKJ4.js +0 -43
@@ -0,0 +1,693 @@
1
+ /* empty css */
2
+ import "./index-D3Kp6R4z.js";
3
+ import { defineComponent as P, ref as U, watch as V, openBlock as t, createElementBlock as n, createElementVNode as s, createVNode as o, unref as u, withCtx as x, createTextVNode as H, renderSlot as N, toDisplayString as I, createCommentVNode as M, onMounted as j, onUnmounted as he, normalizeClass as S, Fragment as L, renderList as E, createBlock as pe, computed as B, onBeforeUnmount as fe, normalizeStyle as W } from "vue";
4
+ import { Spin as q } from "@arco-design/web-vue";
5
+ import { u as F, a as J } from "./useAuthkitUsersProfile-CQGyvL7g.js";
6
+ import { d as _e, b as ve, a as ge } from "./apiClients-DVz12LeW.js";
7
+ import { u as D } from "./useAuthkitAppsAuthPageInfo-Du5d6VK-.js";
8
+ import { b as Q, f as X, w as G, a as Y, c as Z, d as ee, e as ye } from "./useSEO-CvfzTZA9.js";
9
+ import "./useUploadCos-N5pim6q1.js";
10
+ import { useRouter as te, useRoute as ne } from "vue-router";
11
+ import "./useUserMenu-ClPBlvaM.js";
12
+ import { U as ke, c as oe, h as se, k as ae, _ as re, f as ie, j as ue, d as le, g as K, i as ce } from "./UserMenuInvitationsItem.vue_vue_type_script_setup_true_lang-DpVadjMH.js";
13
+ /* empty css */
14
+ import { Icon as R } from "@iconify/vue";
15
+ import "./Clipboard-CRZDADLE.js";
16
+ /* empty css */
17
+ import { M as be } from "./Menu-Cy2ZPeaz.js";
18
+ import "./CollapseItem-DUzZA6tx.js";
19
+ /* empty css */
20
+ /* empty css */
21
+ /* empty css */
22
+ /* empty css */
23
+ /* empty css */
24
+ import "./CustomTable-BUkwlbzN.js";
25
+ import "./index-D56hUMeD.js";
26
+ import { L as de } from "./Logo-D7fyXyB-.js";
27
+ import { _ as T } from "./_plugin-vue_export-helper-CHgC5LLL.js";
28
+ const we = {
29
+ class: "SidebarCom"
30
+ }, $e = {
31
+ class: "LogoContent"
32
+ }, Ce = {
33
+ class: "MenuContent"
34
+ }, Me = {
35
+ class: "sidebar-footer"
36
+ }, Se = /* @__PURE__ */ P({
37
+ __name: "AppSidebar",
38
+ props: {
39
+ menuType: {
40
+ default: "system"
41
+ },
42
+ showUserPanel: {
43
+ type: Boolean,
44
+ default: !0
45
+ }
46
+ },
47
+ setup(m) {
48
+ const e = m, {
49
+ appsData: c
50
+ } = D(), {
51
+ clearAuth: _
52
+ } = F(), {
53
+ clearUserProfile: v
54
+ } = J(), {
55
+ menus: g
56
+ } = Q(e.menuType), f = te();
57
+ function k() {
58
+ f.push({
59
+ path: "/"
60
+ });
61
+ }
62
+ function w() {
63
+ v(), _(), k();
64
+ }
65
+ const h = ne(), C = U([""]);
66
+ function A($) {
67
+ const l = $.path;
68
+ G(() => {
69
+ f.push({
70
+ path: l,
71
+ query: h.query
72
+ }), C.value = [l], window.scrollTo({
73
+ top: 0,
74
+ behavior: "smooth"
75
+ });
76
+ });
77
+ }
78
+ return V(() => [h.path, g.value], () => {
79
+ const $ = X(g.value, h.path, {
80
+ // Sidebar 中,子路由应该选中子菜单项
81
+ returnParentOnChildMatch: !1,
82
+ // 后备查找函数
83
+ fallback: (l) => Y(h.matched, e.menuType, l)
84
+ });
85
+ $ && (C.value = [$]);
86
+ }, {
87
+ immediate: !0,
88
+ deep: !0
89
+ }), ($, l) => (t(), n("div", we, [s("div", $e, [o(u(de), {
90
+ icon: u(c).applicationLogoUrl,
91
+ name: u(c).name,
92
+ onTo: k
93
+ }, null, 8, ["icon", "name"])]), s("div", Ce, [o(be, {
94
+ "selected-keys": C.value,
95
+ "onUpdate:selectedKeys": l[0] || (l[0] = (d) => C.value = d),
96
+ menus: u(g),
97
+ onChange: A
98
+ }, null, 8, ["selected-keys", "menus"])]), s("div", Me, [o(u(ke), null, {
99
+ avatar: x(() => [o(u(oe), {
100
+ position: "tr",
101
+ "dropdown-offset-y": "30px"
102
+ }, {
103
+ items: x(() => [o(u(se)), o(u(ae)), o(u(re)), o(u(ie)), o(u(ue)), o(u(le)), o(u(K), {
104
+ icon: "lucide:home",
105
+ onClick: k
106
+ }, {
107
+ default: x(() => [...l[1] || (l[1] = [H("主页", -1)])]),
108
+ _: 1
109
+ }), o(u(K), {
110
+ icon: "lucide:log-out",
111
+ danger: "",
112
+ onClick: w
113
+ }, {
114
+ default: x(() => [...l[2] || (l[2] = [H("退出登陆", -1)])]),
115
+ _: 1
116
+ })]),
117
+ _: 1
118
+ })]),
119
+ _: 1
120
+ }), o(u(ce))])]));
121
+ }
122
+ }), Ie = /* @__PURE__ */ T(Se, [["__scopeId", "data-v-f465af61"]]), Te = {
123
+ class: "layout"
124
+ }, Ae = {
125
+ class: "leftContent"
126
+ }, Pe = {
127
+ class: "content"
128
+ }, xe = {
129
+ class: "contentCenter"
130
+ }, Ue = {
131
+ class: "pages"
132
+ }, Le = {
133
+ key: 0,
134
+ class: "loading"
135
+ }, Be = /* @__PURE__ */ P({
136
+ __name: "AppLayout",
137
+ props: {
138
+ menuType: {
139
+ default: "system"
140
+ },
141
+ showUserPanel: {
142
+ type: Boolean,
143
+ default: !0
144
+ }
145
+ },
146
+ setup(m) {
147
+ const e = m, {
148
+ isChecking: c
149
+ } = Z();
150
+ return ee(), (_, v) => (t(), n("div", Te, [s("div", Ae, [o(Ie, {
151
+ "menu-type": e.menuType,
152
+ "show-user-panel": e.showUserPanel
153
+ }, null, 8, ["menu-type", "show-user-panel"])]), s("div", Pe, [s("div", xe, [s("div", Ue, [u(c) ? (t(), n("div", Le, [o(u(q), {
154
+ size: 40
155
+ })])) : N(_.$slots, "default", {
156
+ key: 1
157
+ }, void 0, !0)])])])]));
158
+ }
159
+ }), Xt = /* @__PURE__ */ T(Be, [["__scopeId", "data-v-0eed4f11"]]), He = {
160
+ class: "ContentHead"
161
+ }, ze = {
162
+ class: "title"
163
+ }, Ee = {
164
+ key: 0,
165
+ class: "description"
166
+ }, De = /* @__PURE__ */ P({
167
+ __name: "ContentHead",
168
+ props: {
169
+ title: {
170
+ type: String,
171
+ required: !0,
172
+ default: () => ""
173
+ },
174
+ description: {
175
+ type: String,
176
+ required: !0,
177
+ default: () => ""
178
+ }
179
+ },
180
+ setup(m) {
181
+ const e = m;
182
+ return (c, _) => (t(), n("div", He, [s("h1", ze, I(e.title), 1), e.description ? (t(), n("p", Ee, I(e.description), 1)) : M("", !0)]));
183
+ }
184
+ }), Yt = /* @__PURE__ */ T(De, [["__scopeId", "data-v-209a7bef"]]), Ke = {
185
+ key: 0,
186
+ class: "desktop-menus"
187
+ }, Oe = {
188
+ key: 0,
189
+ class: "header-menu-item"
190
+ }, Re = {
191
+ class: "submenu-popup"
192
+ }, We = {
193
+ class: "submenu-content"
194
+ }, Ge = ["onClick"], Ve = {
195
+ key: 0,
196
+ class: "submenu-item-icon"
197
+ }, Ne = {
198
+ class: "submenu-item-content"
199
+ }, je = {
200
+ class: "submenu-item-title"
201
+ }, qe = {
202
+ key: 0,
203
+ class: "submenu-item-description"
204
+ }, Fe = ["onClick"], Je = {
205
+ key: 3,
206
+ class: "mobile-menu"
207
+ }, Qe = {
208
+ class: "mobile-menu-content"
209
+ }, Xe = ["onClick"], Ye = {
210
+ key: 0,
211
+ class: "mobile-submenu"
212
+ }, Ze = ["onClick"], et = ["onClick"], tt = /* @__PURE__ */ P({
213
+ __name: "HeaderMenus",
214
+ props: {
215
+ menus: {
216
+ type: Array,
217
+ required: !0
218
+ },
219
+ activateKey: {
220
+ type: String,
221
+ required: !0
222
+ },
223
+ theme: {
224
+ type: String,
225
+ default: "light"
226
+ }
227
+ },
228
+ emits: ["change"],
229
+ setup(m, {
230
+ emit: e
231
+ }) {
232
+ const c = m, _ = e, v = U(!1), g = U(!1), f = U({});
233
+ function k() {
234
+ g.value = window.innerWidth <= 1024;
235
+ }
236
+ function w() {
237
+ v.value = !v.value;
238
+ }
239
+ function h() {
240
+ v.value = !1;
241
+ }
242
+ function C(i) {
243
+ _("change", i);
244
+ }
245
+ function A(i) {
246
+ _("change", i), h();
247
+ }
248
+ function $(i) {
249
+ f.value[i] = !f.value[i];
250
+ }
251
+ function l(i) {
252
+ const p = c.activateKey, r = i.path;
253
+ if (p === r || p.startsWith(r + "/"))
254
+ return !0;
255
+ if (i.children && i.children.length > 0) {
256
+ for (const b of i.children)
257
+ if (p === b.path || p.startsWith(b.path + "/"))
258
+ return !0;
259
+ }
260
+ return !1;
261
+ }
262
+ function d(i) {
263
+ const p = c.activateKey, r = i.path;
264
+ return !!(p === r || p.startsWith(r + "/"));
265
+ }
266
+ function z(i) {
267
+ _("change", i);
268
+ }
269
+ function a() {
270
+ k(), g.value || h();
271
+ }
272
+ return j(() => {
273
+ k(), window.addEventListener("resize", a);
274
+ }), he(() => {
275
+ window.removeEventListener("resize", a);
276
+ }), (i, p) => (t(), n("div", {
277
+ class: S(["HeaderMenus", {
278
+ "HeaderMenus--dark": c.theme === "dark"
279
+ }])
280
+ }, [g.value ? M("", !0) : (t(), n("div", Ke, [(t(!0), n(L, null, E(c.menus, (r, b) => (t(), n(L, {
281
+ key: b
282
+ }, [r.children && r.children.length > 0 ? (t(), n("div", Oe, [s("div", {
283
+ class: S(["headerLink hasChildren", {
284
+ activate: l(r)
285
+ }])
286
+ }, [H(I(r.name) + " ", 1), o(u(R), {
287
+ icon: "mingcute:down-line",
288
+ class: "dropdown-arrow"
289
+ })], 2), s("div", Re, [s("div", We, [(t(!0), n(L, null, E(r.children, (y, O) => (t(), n("div", {
290
+ key: O,
291
+ class: S(["submenu-item", {
292
+ active: d(y)
293
+ }]),
294
+ onClick: (me) => C(y)
295
+ }, [y.icon ? (t(), n("div", Ve, [o(u(R), {
296
+ icon: y.icon
297
+ }, null, 8, ["icon"])])) : M("", !0), s("div", Ne, [s("div", je, I(y.name), 1), y.description ? (t(), n("div", qe, I(y.description), 1)) : M("", !0)])], 10, Ge))), 128))])])])) : (t(), n("div", {
298
+ key: 1,
299
+ class: S(["headerLink", {
300
+ activate: l(r)
301
+ }]),
302
+ onClick: (y) => z(r)
303
+ }, I(r.name), 11, Fe))], 64))), 128))])), g.value ? (t(), n("button", {
304
+ key: 1,
305
+ class: S(["mobile-menu-toggle", {
306
+ active: v.value
307
+ }]),
308
+ "aria-label": "切换菜单",
309
+ onClick: w
310
+ }, [...p[0] || (p[0] = [s("span", {
311
+ class: "hamburger-line"
312
+ }, null, -1), s("span", {
313
+ class: "hamburger-line"
314
+ }, null, -1), s("span", {
315
+ class: "hamburger-line"
316
+ }, null, -1)])], 2)) : M("", !0), v.value ? (t(), n("div", {
317
+ key: 2,
318
+ class: "mobile-menu-overlay",
319
+ onClick: h
320
+ })) : M("", !0), v.value ? (t(), n("div", Je, [s("div", Qe, [(t(!0), n(L, null, E(c.menus, (r, b) => (t(), n(L, {
321
+ key: b
322
+ }, [r.children && r.children.length > 0 ? (t(), n("div", {
323
+ key: 0,
324
+ class: S(["mobile-menu-item has-children", {
325
+ activate: l(r),
326
+ expanded: f.value[b]
327
+ }])
328
+ }, [s("div", {
329
+ class: "mobile-menu-item-header",
330
+ onClick: (y) => $(b)
331
+ }, [s("span", null, I(r.name), 1), o(u(R), {
332
+ icon: f.value[b] ? "mingcute:up-line" : "mingcute:down-line",
333
+ class: "mobile-submenu-arrow"
334
+ }, null, 8, ["icon"])], 8, Xe), f.value[b] ? (t(), n("div", Ye, [(t(!0), n(L, null, E(r.children, (y, O) => (t(), n("div", {
335
+ key: O,
336
+ class: S(["mobile-submenu-item", {
337
+ active: d(y)
338
+ }]),
339
+ onClick: (me) => A(y)
340
+ }, I(y.name), 11, Ze))), 128))])) : M("", !0)], 2)) : (t(), n("div", {
341
+ key: 1,
342
+ class: S(["mobile-menu-item", {
343
+ activate: l(r)
344
+ }]),
345
+ onClick: (y) => A(r)
346
+ }, I(r.name), 11, et))], 64))), 128))])])) : M("", !0)], 2));
347
+ }
348
+ }), nt = /* @__PURE__ */ T(tt, [["__scopeId", "data-v-42f528ac"]]), ot = {
349
+ class: "HeaderCom"
350
+ }, st = {
351
+ class: "HeaderCom-inner"
352
+ }, at = {
353
+ class: "left"
354
+ }, rt = {
355
+ class: "right"
356
+ }, it = ["aria-label"], ut = {
357
+ key: 0,
358
+ class: "theme-icon",
359
+ "aria-hidden": "true"
360
+ }, lt = {
361
+ key: 1,
362
+ class: "theme-icon",
363
+ "aria-hidden": "true"
364
+ }, ct = /* @__PURE__ */ P({
365
+ __name: "Header",
366
+ props: {
367
+ menuType: {
368
+ default: "header"
369
+ },
370
+ showUserPanel: {
371
+ type: Boolean,
372
+ default: !0
373
+ },
374
+ showThemeToggle: {
375
+ type: Boolean,
376
+ default: !0
377
+ },
378
+ theme: {
379
+ default: "light"
380
+ }
381
+ },
382
+ setup(m) {
383
+ const e = m, {
384
+ appsData: c
385
+ } = D(), {
386
+ clearAuth: _
387
+ } = F(), {
388
+ clearUserProfile: v
389
+ } = J(), {
390
+ menus: g
391
+ } = Q(e.menuType), f = U(""), k = te(), w = ne();
392
+ function h() {
393
+ G(() => {
394
+ k.push({
395
+ path: "/"
396
+ }), window.scrollTo({
397
+ top: 0,
398
+ behavior: "smooth"
399
+ });
400
+ });
401
+ }
402
+ function C() {
403
+ v(), _(), h();
404
+ }
405
+ function A(l) {
406
+ const d = l.path;
407
+ G(() => {
408
+ k.push(d), f.value = d, window.scrollTo({
409
+ top: 0,
410
+ behavior: "smooth"
411
+ });
412
+ });
413
+ }
414
+ function $() {
415
+ _e(e.theme === "dark" ? "light" : "dark");
416
+ }
417
+ return V(() => [w.path, g.value], () => {
418
+ f.value = X(g.value, w.path, {
419
+ // Header 中,子菜单匹配时返回父菜单路径
420
+ returnParentOnChildMatch: !0,
421
+ // 后备查找函数
422
+ fallback: (l) => Y(w.matched, e.menuType, l)
423
+ });
424
+ }, {
425
+ immediate: !0,
426
+ deep: !0
427
+ }), (l, d) => (t(), n("header", ot, [s("div", st, [s("div", at, [o(de, {
428
+ icon: u(c).applicationLogoUrl,
429
+ name: u(c).name,
430
+ onTo: h
431
+ }, null, 8, ["icon", "name"])]), s("div", rt, [o(nt, {
432
+ menus: u(g),
433
+ activateKey: f.value,
434
+ theme: e.theme,
435
+ onChange: A
436
+ }, null, 8, ["menus", "activateKey", "theme"]), e.showThemeToggle ? (t(), n("button", {
437
+ key: 0,
438
+ type: "button",
439
+ class: "theme-toggle",
440
+ "aria-label": e.theme === "dark" ? "切换为浅色" : "切换为深色",
441
+ onClick: $
442
+ }, [e.theme === "dark" ? (t(), n("span", ut, [...d[0] || (d[0] = [s("svg", {
443
+ xmlns: "http://www.w3.org/2000/svg",
444
+ width: "20",
445
+ height: "20",
446
+ viewBox: "0 0 24 24",
447
+ fill: "none",
448
+ stroke: "currentColor",
449
+ "stroke-width": "2",
450
+ "stroke-linecap": "round",
451
+ "stroke-linejoin": "round"
452
+ }, [s("circle", {
453
+ cx: "12",
454
+ cy: "12",
455
+ r: "4"
456
+ }), s("path", {
457
+ d: "M12 2v2M12 20v2M4.93 4.93l1.41 1.41M17.66 17.66l1.41 1.41M2 12h2M20 12h2M6.34 17.66l-1.41 1.41M19.07 4.93l-1.41 1.41"
458
+ })], -1)])])) : (t(), n("span", lt, [...d[1] || (d[1] = [s("svg", {
459
+ xmlns: "http://www.w3.org/2000/svg",
460
+ width: "20",
461
+ height: "20",
462
+ viewBox: "0 0 24 24",
463
+ fill: "none",
464
+ stroke: "currentColor",
465
+ "stroke-width": "2",
466
+ "stroke-linecap": "round",
467
+ "stroke-linejoin": "round"
468
+ }, [s("path", {
469
+ d: "M21 12.79A9 9 0 1 1 11.21 3 7 7 0 0 0 21 12.79z"
470
+ })], -1)])]))], 8, it)) : M("", !0), e.showUserPanel ? (t(), pe(oe, {
471
+ key: 1
472
+ }, {
473
+ items: x(() => [o(se), o(ae), o(re), o(ie), o(ue), o(le), o(K, {
474
+ icon: "lucide:home",
475
+ onClick: h
476
+ }, {
477
+ default: x(() => [...d[2] || (d[2] = [H("主页", -1)])]),
478
+ _: 1
479
+ }), o(K, {
480
+ icon: "lucide:log-out",
481
+ danger: "",
482
+ onClick: C
483
+ }, {
484
+ default: x(() => [...d[3] || (d[3] = [H("退出登陆", -1)])]),
485
+ _: 1
486
+ })]),
487
+ _: 1
488
+ })) : M("", !0), o(ce)])])]));
489
+ }
490
+ }), dt = /* @__PURE__ */ T(ct, [["__scopeId", "data-v-ce7108a0"]]), mt = {
491
+ class: "layout-inner"
492
+ }, ht = {
493
+ key: 0,
494
+ class: "loading"
495
+ }, pt = "none", ft = "var(--huyooo-layout-dark-background)", _t = /* @__PURE__ */ P({
496
+ __name: "DefaultLayout",
497
+ props: {
498
+ menuType: {
499
+ default: "header"
500
+ },
501
+ showUserPanel: {
502
+ type: Boolean,
503
+ default: !0
504
+ },
505
+ showThemeToggle: {
506
+ type: Boolean,
507
+ default: !0
508
+ },
509
+ enableRoutePermission: {
510
+ type: Boolean,
511
+ default: !0
512
+ },
513
+ backgroundImage: {
514
+ default: ""
515
+ },
516
+ theme: {
517
+ default: void 0
518
+ }
519
+ },
520
+ setup(m) {
521
+ var d, z;
522
+ const e = m, {
523
+ appsData: c
524
+ } = D(), {
525
+ appsAuthPageInfoApi: _,
526
+ appsAuthPageInfoLoading: v,
527
+ appsAuthPageInfoSuccess: g
528
+ } = D(), f = U(typeof window < "u" && ((z = (d = window.matchMedia) == null ? void 0 : d.call(window, "(prefers-color-scheme: dark)")) == null ? void 0 : z.matches));
529
+ function k() {
530
+ var a, i;
531
+ typeof window > "u" || (f.value = ((i = (a = window.matchMedia) == null ? void 0 : a.call(window, "(prefers-color-scheme: dark)")) == null ? void 0 : i.matches) ?? !1);
532
+ }
533
+ let w;
534
+ j(() => {
535
+ var i, p;
536
+ !g.value && !v.value && _(), k();
537
+ const a = (i = window.matchMedia) == null ? void 0 : i.call(window, "(prefers-color-scheme: dark)");
538
+ (p = a == null ? void 0 : a.addEventListener) == null || p.call(a, "change", k), w = () => {
539
+ var r;
540
+ return (r = a == null ? void 0 : a.removeEventListener) == null ? void 0 : r.call(a, "change", k);
541
+ };
542
+ });
543
+ const h = B(() => {
544
+ var r, b;
545
+ const a = e.theme;
546
+ if (a && a !== "system") return a;
547
+ if (a === "system") return f.value ? "dark" : "light";
548
+ const i = ve.value;
549
+ if (i === "dark" || i === "light") return i;
550
+ if (i === "system") return f.value ? "dark" : "light";
551
+ const p = (b = (r = c.value) == null ? void 0 : r.brand) == null ? void 0 : b.theme;
552
+ return p === "dark" || p === "light" ? p : "light";
553
+ }), C = B(() => e.backgroundImage ? e.backgroundImage : h.value === "dark" ? ft : pt), A = B(() => {
554
+ const a = C.value;
555
+ return !a || a === "none" ? {
556
+ backgroundImage: "none",
557
+ backgroundColor: "transparent"
558
+ } : {
559
+ backgroundImage: a,
560
+ backgroundAttachment: "fixed"
561
+ };
562
+ });
563
+ V(h, (a) => {
564
+ typeof document > "u" || (a === "dark" ? (document.body.setAttribute("arco-theme", "dark"), document.body.classList.add("dark")) : (document.body.removeAttribute("arco-theme"), document.body.classList.remove("dark")));
565
+ }, {
566
+ immediate: !0
567
+ }), fe(() => {
568
+ w == null || w();
569
+ });
570
+ const {
571
+ setGlobalSEO: $
572
+ } = ye();
573
+ $(ge);
574
+ const l = e.enableRoutePermission ? Z().isChecking : U(!1);
575
+ return ee(), (a, i) => (t(), n("div", {
576
+ class: S(["layout", {
577
+ "layout--dark": h.value === "dark"
578
+ }]),
579
+ style: W(A.value)
580
+ }, [o(dt, {
581
+ "menu-type": e.menuType,
582
+ "show-user-panel": e.showUserPanel,
583
+ "show-theme-toggle": e.showThemeToggle,
584
+ theme: h.value
585
+ }, null, 8, ["menu-type", "show-user-panel", "show-theme-toggle", "theme"]), s("main", mt, [u(l) ? (t(), n("div", ht, [o(u(q), {
586
+ size: 40
587
+ })])) : N(a.$slots, "default", {
588
+ key: 1
589
+ }, void 0, !0)])], 6));
590
+ }
591
+ }), Zt = /* @__PURE__ */ T(_t, [["__scopeId", "data-v-52a72efd"]]), vt = /* @__PURE__ */ P({
592
+ __name: "Gradientbackground",
593
+ props: {
594
+ width: {
595
+ type: String,
596
+ default: "100%"
597
+ },
598
+ height: {
599
+ type: String,
600
+ default: "100%"
601
+ },
602
+ zIndex: {
603
+ type: String,
604
+ default: "-1"
605
+ },
606
+ top: {
607
+ type: String,
608
+ default: "10%"
609
+ },
610
+ left: {
611
+ type: String,
612
+ default: "0%"
613
+ },
614
+ right: {
615
+ type: String,
616
+ default: "auto"
617
+ },
618
+ blur: {
619
+ type: String,
620
+ default: "0px"
621
+ },
622
+ background: {
623
+ type: String,
624
+ required: !1,
625
+ default: () => "var(--huyooo-gradient-background)"
626
+ }
627
+ },
628
+ setup(m) {
629
+ const e = m, c = B(() => ({
630
+ pointerEvents: "none",
631
+ position: "absolute",
632
+ zIndex: e.zIndex,
633
+ width: e.width,
634
+ height: e.height,
635
+ filter: `blur(${e.blur})`
636
+ })), _ = B(() => ({
637
+ width: "100%",
638
+ height: "100%",
639
+ background: e.background
640
+ }));
641
+ return (v, g) => (t(), n("div", {
642
+ class: "ellipsis",
643
+ style: W(c.value)
644
+ }, [s("div", {
645
+ class: "ellipsis-item",
646
+ style: W(_.value)
647
+ }, null, 4)], 4));
648
+ }
649
+ }), en = /* @__PURE__ */ T(vt, [["__scopeId", "data-v-64c41f65"]]), gt = {
650
+ class: "SvgIcon"
651
+ }, yt = ["href", "fill"], kt = /* @__PURE__ */ P({
652
+ __name: "SvgIcon",
653
+ props: {
654
+ prefix: {
655
+ type: String,
656
+ required: !1,
657
+ default: "icon"
658
+ },
659
+ name: {
660
+ type: String,
661
+ required: !0
662
+ },
663
+ color: {
664
+ type: String,
665
+ required: !1,
666
+ default: "currentColor"
667
+ }
668
+ },
669
+ setup(m) {
670
+ const e = m, c = B(() => `#${e.prefix ?? "icon"}-${e.name}`);
671
+ return (_, v) => (t(), n("svg", gt, [s("use", {
672
+ href: c.value,
673
+ fill: e.color
674
+ }, null, 8, yt)]));
675
+ }
676
+ }), tn = /* @__PURE__ */ T(kt, [["__scopeId", "data-v-9d0b08a0"]]), bt = {}, wt = {
677
+ class: "WidthContainer"
678
+ };
679
+ function $t(m, e) {
680
+ return t(), n("div", wt, [N(m.$slots, "default", {}, void 0, !0)]);
681
+ }
682
+ const nn = /* @__PURE__ */ T(bt, [["render", $t], ["__scopeId", "data-v-d06aac1f"]]);
683
+ export {
684
+ Xt as A,
685
+ Yt as C,
686
+ Zt as D,
687
+ en as G,
688
+ dt as H,
689
+ tn as S,
690
+ nn as W,
691
+ Ie as a,
692
+ nt as b
693
+ };