@huyooo/ui 0.5.8 → 0.5.9

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 (43) hide show
  1. package/dist/{AuthkitAuthModal-DOB2R0lE.js → AuthkitAuthModal-DEVS8XfG.js} +4 -4
  2. package/dist/{AuthkitAuthorize-BLKbcsyH.js → AuthkitAuthorize-cnC-Hl0X.js} +2 -2
  3. package/dist/Contact-ppttdnNW.js +204 -0
  4. package/dist/{FeedbackItem-TRyk9rcU.js → FeedbackItem-44CGbXN_.js} +3 -3
  5. package/dist/{FeedbackModal-BJx5Bzas.js → FeedbackModal-DdTqdVlw.js} +2 -2
  6. package/dist/{MessageHandle-DP9rvOy4.js → MessageHandle-Cagv57D0.js} +2 -2
  7. package/dist/{PaySubscriptions-DyHMXC_2.js → PaySubscriptions-Bva3INxJ.js} +1 -1
  8. package/dist/{ReferrerReferees-CxmerF3X.js → ReferrerReferees-D3qUZ62t.js} +2 -2
  9. package/dist/{Upload.vue_vue_type_script_setup_true_lang-CZ8Z-NG6.js → Upload.vue_vue_type_script_setup_true_lang-9HB-tLZd.js} +2 -2
  10. package/dist/{UserAccountMenu-BEFQWt3O.js → UserAccountMenu-50CxuyL3.js} +1 -1
  11. package/dist/{UserPanel-DgSdGhj5.js → UserPanel-DHXkFUTF.js} +7 -7
  12. package/dist/WidthContainer-Ds90or_F.js +409 -0
  13. package/dist/authkit.js +4 -4
  14. package/dist/common/globalConfig.d.ts +12 -0
  15. package/dist/common.js +1 -1
  16. package/dist/composables/useSEO.d.ts +41 -0
  17. package/dist/composables.d.ts +2 -1
  18. package/dist/composables.js +23 -20
  19. package/dist/feedback.js +2 -2
  20. package/dist/globalConfig-C1YOJcxa.js +22 -0
  21. package/dist/index.js +919 -471
  22. package/dist/main.d.ts +1 -0
  23. package/dist/message.js +2 -2
  24. package/dist/pay.js +1 -1
  25. package/dist/privateCom.d.ts +0 -1
  26. package/dist/privateCom.js +4 -6
  27. package/dist/referrer.js +1 -1
  28. package/dist/style.css +1 -1
  29. package/dist/upload.js +2 -2
  30. package/dist/{useAuthkitAppsAuthPageInfo-qWOtNCda.js → useAuthkitAppsAuthPageInfo-Dfj4byB5.js} +1 -1
  31. package/dist/{useAuthkitUsersProfile-a-kA3R2Y.js → useAuthkitUsersProfile-Bi_zM2qG.js} +1 -1
  32. package/dist/useDownloads-DnMYa52H.js +73 -0
  33. package/dist/{useMessageNotifications-B5pXqPNh.js → useMessageNotifications-DSRanuRe.js} +1 -1
  34. package/dist/useSEO-BAkykYVP.js +399 -0
  35. package/dist/{useUploadCos-yeMY5Xn0.js → useUploadCos-D5k1YLb7.js} +1 -1
  36. package/dist/user.js +2 -2
  37. package/package.json +1 -1
  38. package/dist/Contact-BLWzIAS4.js +0 -418
  39. package/dist/WidthContainer-3fyX6xI4.js +0 -381
  40. package/dist/components/PrivateCom/useSEO.d.ts +0 -71
  41. package/dist/globalConfig-DKn-cF9c.js +0 -17
  42. package/dist/useDownloads-CHe228Vf.js +0 -87
  43. package/dist/useRoutePermission-BKg7oQTj.js +0 -120
@@ -7,9 +7,9 @@ import { _ as g } from "./_plugin-vue_export-helper-CHgC5LLL.js";
7
7
  /* empty css */
8
8
  /* empty css */
9
9
  /* empty css */
10
- import { u as Z } from "./useUploadCos-yeMY5Xn0.js";
11
- import { g as A } from "./globalConfig-DKn-cF9c.js";
12
- import "./FeedbackModal-BJx5Bzas.js";
10
+ import { u as Z } from "./useUploadCos-D5k1YLb7.js";
11
+ import { g as A } from "./globalConfig-C1YOJcxa.js";
12
+ import "./FeedbackModal-DdTqdVlw.js";
13
13
  import { Icon as Y } from "@iconify/vue";
14
14
  const H = f({
15
15
  name: "IconDown",
@@ -9,10 +9,10 @@ import { M as De } from "./Menu-BKBnsDJ8.js";
9
9
  /* empty css */
10
10
  /* empty css */
11
11
  import { api as N } from "@huyooo/api";
12
- import { g as q } from "./globalConfig-DKn-cF9c.js";
12
+ import { g as q } from "./globalConfig-C1YOJcxa.js";
13
13
  /* empty css */
14
14
  /* empty css */
15
- import { r as Ne, a as Ae, u as Oe } from "./useUploadCos-yeMY5Xn0.js";
15
+ import { r as Ne, a as Ae, u as Oe } from "./useUploadCos-D5k1YLb7.js";
16
16
  import { _ as V } from "./_plugin-vue_export-helper-CHgC5LLL.js";
17
17
  /* empty css */
18
18
  import { f as j } from "./index-Bb-d5pBq.js";
@@ -5,12 +5,12 @@ import { defineComponent as b, ref as r, createBlock as p, openBlock as l, unref
5
5
  /* empty css */
6
6
  import { Spin as V, Empty as K, Button as G, Divider as J, Breadcrumb as O, BreadcrumbItem as x, Modal as P } from "@arco-design/web-vue";
7
7
  import { api as S } from "@huyooo/api";
8
- import { g as D } from "./globalConfig-DKn-cF9c.js";
8
+ import { g as D } from "./globalConfig-C1YOJcxa.js";
9
9
  import { TiptapEditor as Q, TiptapTitle as W } from "@huyooo/vue-tiptap";
10
10
  import { _ as C } from "./_plugin-vue_export-helper-CHgC5LLL.js";
11
11
  /* empty css */
12
12
  import { useIntersectionObserver as X } from "@vueuse/core";
13
- import { u as Y } from "./useMessageNotifications-B5pXqPNh.js";
13
+ import { u as Y } from "./useMessageNotifications-DSRanuRe.js";
14
14
  import { Icon as Z } from "@iconify/vue";
15
15
  import { u as ee } from "./useAuthkitCreateAndUpdate-BpPW409v.js";
16
16
  import { M as te } from "./Menu-BKBnsDJ8.js";
@@ -6,7 +6,7 @@
6
6
  import { defineComponent as D, ref as U, createBlock as B, openBlock as L, unref as a, isRef as M, withCtx as o, createElementVNode as d, createVNode as r, createTextVNode as u, toDisplayString as n } from "vue";
7
7
  import { Modal as V, Popconfirm as $, Button as E, Tag as g } from "@arco-design/web-vue";
8
8
  import { api as _ } from "@huyooo/api";
9
- import { g as x } from "./globalConfig-DKn-cF9c.js";
9
+ import { g as x } from "./globalConfig-C1YOJcxa.js";
10
10
  import { u as H } from "./useAuthkitCreateAndUpdate-BpPW409v.js";
11
11
  import { u as j } from "./useTableHandle-DKUIdSSh.js";
12
12
  import { f as y } from "./index-Bb-d5pBq.js";
@@ -4,11 +4,11 @@
4
4
  import { defineComponent as z, ref as d, createBlock as v, openBlock as g, unref as a, withCtx as _, createElementVNode as n, createVNode as A, createCommentVNode as V, toDisplayString as C, createTextVNode as w } from "vue";
5
5
  import { Modal as T } from "@arco-design/web-vue";
6
6
  import { api as U } from "@huyooo/api";
7
- import { g as y } from "./globalConfig-DKn-cF9c.js";
7
+ import { g as y } from "./globalConfig-C1YOJcxa.js";
8
8
  import { u as B } from "./useTableHandle-DKUIdSSh.js";
9
9
  import { C as D } from "./CustomTable-B8i1SbFB.js";
10
10
  import { C as E } from "./Clipboard-Bful1lNJ.js";
11
- import { a as H } from "./useAuthkitUsersProfile-a-kA3R2Y.js";
11
+ import { a as H } from "./useAuthkitUsersProfile-Bi_zM2qG.js";
12
12
  import { _ as M } from "./_plugin-vue_export-helper-CHgC5LLL.js";
13
13
  function $(f) {
14
14
  return U({
@@ -5,8 +5,8 @@
5
5
  /* empty css */
6
6
  import { defineComponent as q, createBlock as y, openBlock as F, unref as S, mergeProps as h, createSlots as C, withCtx as u, renderSlot as p } from "vue";
7
7
  import { Upload as I } from "@arco-design/web-vue";
8
- import { u as _ } from "./useUploadCos-yeMY5Xn0.js";
9
- import { g as l } from "./globalConfig-DKn-cF9c.js";
8
+ import { u as _ } from "./useUploadCos-D5k1YLb7.js";
9
+ import { g as l } from "./globalConfig-C1YOJcxa.js";
10
10
  const O = /* @__PURE__ */ q({
11
11
  __name: "Upload",
12
12
  props: {
@@ -1,6 +1,6 @@
1
1
  import { defineComponent as _, createElementBlock as d, openBlock as m, createElementVNode as e, renderSlot as u, toDisplayString as r, unref as o, createVNode as p } from "vue";
2
2
  import { Icon as f } from "@iconify/vue";
3
- import { a as v } from "./useAuthkitUsersProfile-a-kA3R2Y.js";
3
+ import { a as v } from "./useAuthkitUsersProfile-Bi_zM2qG.js";
4
4
  import { _ as h } from "./_plugin-vue_export-helper-CHgC5LLL.js";
5
5
  const k = {
6
6
  class: "UserAccountMenu"
@@ -4,14 +4,14 @@
4
4
  /* empty css */
5
5
  import { defineComponent as S, createElementBlock as v, openBlock as u, normalizeStyle as q, normalizeClass as E, createElementVNode as f, computed as M, createBlock as g, createCommentVNode as D, createVNode as i, unref as n, withCtx as a, createTextVNode as m, toDisplayString as C, mergeModels as A, useModel as K, renderSlot as Se, ref as d, Fragment as be } from "vue";
6
6
  import { Tag as Ce, Button as T, Avatar as W, Dropdown as Ie, Divider as X, Doption as _ } from "@arco-design/web-vue";
7
- import { S as we } from "./PaySubscriptions-DyHMXC_2.js";
8
- import { R as $e } from "./ReferrerReferees-CxmerF3X.js";
9
- import { a as Y, u as he } from "./useAuthkitUsersProfile-a-kA3R2Y.js";
7
+ import { S as we } from "./PaySubscriptions-Bva3INxJ.js";
8
+ import { R as $e } from "./ReferrerReferees-D3qUZ62t.js";
9
+ import { a as Y, u as he } from "./useAuthkitUsersProfile-Bi_zM2qG.js";
10
10
  import { u as Ue } from "./AuthkitAuthModal.vue_vue_type_style_index_1_lang-BpOmabWi.js";
11
- import { g as F } from "./globalConfig-DKn-cF9c.js";
12
- import { c as xe, A as Be } from "./AuthkitAuthModal-DOB2R0lE.js";
13
- import { d as Me } from "./FeedbackModal-BJx5Bzas.js";
14
- import { M as Ae } from "./MessageHandle-DP9rvOy4.js";
11
+ import { g as F } from "./globalConfig-C1YOJcxa.js";
12
+ import { c as xe, A as Be } from "./AuthkitAuthModal-DEVS8XfG.js";
13
+ import { d as Me } from "./FeedbackModal-DdTqdVlw.js";
14
+ import { M as Ae } from "./MessageHandle-Cagv57D0.js";
15
15
  /* empty css */
16
16
  /* empty css */
17
17
  import { _ as h } from "./_plugin-vue_export-helper-CHgC5LLL.js";
@@ -0,0 +1,409 @@
1
+ import { defineComponent as m, createElementBlock as n, openBlock as t, createElementVNode as l, createCommentVNode as f, toDisplayString as k, ref as M, onMounted as U, onUnmounted as B, Fragment as q, renderList as H, normalizeClass as C, normalizeStyle as S, watch as P, createVNode as w, unref as b, createBlock as O, renderSlot as T, computed as x } from "vue";
2
+ import { _ as d } from "./_plugin-vue_export-helper-CHgC5LLL.js";
3
+ /* empty css */
4
+ /* empty css */
5
+ import { Spin as D } from "@arco-design/web-vue";
6
+ import { c as K } from "./UserPanel-DHXkFUTF.js";
7
+ import { u as G } from "./useAuthkitAppsAuthPageInfo-Dfj4byB5.js";
8
+ import { u as R } from "./AuthkitAuthModal.vue_vue_type_style_index_1_lang-BpOmabWi.js";
9
+ import { a as V } from "./useAuthkitUsersProfile-Bi_zM2qG.js";
10
+ import { a as W, f as N, w as L, c as F, b as j } from "./useSEO-BAkykYVP.js";
11
+ import { useRouter as J, useRoute as A } from "vue-router";
12
+ import { a as Q } from "./globalConfig-C1YOJcxa.js";
13
+ import "@huyooo/api";
14
+ import "./useUploadCos-D5k1YLb7.js";
15
+ /* empty css */
16
+ /* empty css */
17
+ /* empty css */
18
+ import "@iconify/vue";
19
+ /* empty css */
20
+ /* empty css */
21
+ /* empty css */
22
+ /* empty css */
23
+ /* empty css */
24
+ const X = {
25
+ class: "ContentHead"
26
+ }, Y = {
27
+ class: "title"
28
+ }, Z = {
29
+ key: 0,
30
+ class: "description"
31
+ }, ee = /* @__PURE__ */ m({
32
+ __name: "ContentHead",
33
+ props: {
34
+ title: {
35
+ type: String,
36
+ required: !0,
37
+ default: () => ""
38
+ },
39
+ description: {
40
+ type: String,
41
+ required: !0,
42
+ default: () => ""
43
+ }
44
+ },
45
+ setup(o) {
46
+ const e = o;
47
+ return (a, r) => (t(), n("div", X, [l("h1", Y, k(e.title), 1), e.description ? (t(), n("p", Z, k(e.description), 1)) : f("", !0)]));
48
+ }
49
+ }), Xe = /* @__PURE__ */ d(ee, [["__scopeId", "data-v-209a7bef"]]), te = {
50
+ class: "HeaderMenus"
51
+ }, ne = {
52
+ key: 0,
53
+ class: "desktop-menus"
54
+ }, oe = ["onClick"], se = {
55
+ key: 3,
56
+ class: "mobile-menu"
57
+ }, ae = {
58
+ class: "mobile-menu-content"
59
+ }, ie = ["onClick"], re = /* @__PURE__ */ m({
60
+ __name: "HeaderMenus",
61
+ props: {
62
+ menus: {
63
+ type: Array,
64
+ required: !0
65
+ },
66
+ activateKey: {
67
+ type: String,
68
+ required: !0
69
+ }
70
+ },
71
+ emits: ["change"],
72
+ setup(o, {
73
+ emit: e
74
+ }) {
75
+ const a = o, r = e, i = M(!1), u = M(!1);
76
+ function s() {
77
+ u.value = window.innerWidth <= 1024;
78
+ }
79
+ function _() {
80
+ i.value = !i.value;
81
+ }
82
+ function h() {
83
+ i.value = !1;
84
+ }
85
+ function v(c) {
86
+ r("change", c), h();
87
+ }
88
+ function g(c) {
89
+ return a.activateKey === c.path;
90
+ }
91
+ function $(c) {
92
+ r("change", c);
93
+ }
94
+ function y() {
95
+ s(), u.value || h();
96
+ }
97
+ return U(() => {
98
+ s(), window.addEventListener("resize", y);
99
+ }), B(() => {
100
+ window.removeEventListener("resize", y);
101
+ }), (c, z) => (t(), n("div", te, [u.value ? f("", !0) : (t(), n("div", ne, [(t(!0), n(q, null, H(a.menus, (p, I) => (t(), n("div", {
102
+ key: I,
103
+ class: C(["headerLink", {
104
+ activate: g(p)
105
+ }]),
106
+ onClick: (E) => $(p)
107
+ }, k(p.name), 11, oe))), 128))])), u.value ? (t(), n("button", {
108
+ key: 1,
109
+ class: C(["mobile-menu-toggle", {
110
+ active: i.value
111
+ }]),
112
+ "aria-label": "切换菜单",
113
+ onClick: _
114
+ }, [...z[0] || (z[0] = [l("span", {
115
+ class: "hamburger-line"
116
+ }, null, -1), l("span", {
117
+ class: "hamburger-line"
118
+ }, null, -1), l("span", {
119
+ class: "hamburger-line"
120
+ }, null, -1)])], 2)) : f("", !0), i.value ? (t(), n("div", {
121
+ key: 2,
122
+ class: "mobile-menu-overlay",
123
+ onClick: h
124
+ })) : f("", !0), i.value ? (t(), n("div", se, [l("div", ae, [(t(!0), n(q, null, H(a.menus, (p, I) => (t(), n("div", {
125
+ key: I,
126
+ class: C(["mobile-menu-item", {
127
+ activate: g(p)
128
+ }]),
129
+ onClick: (E) => v(p)
130
+ }, k(p.name), 11, ie))), 128))])])) : f("", !0)]));
131
+ }
132
+ }), ce = /* @__PURE__ */ d(re, [["__scopeId", "data-v-67bf8ea1"]]), le = ["src"], ue = /* @__PURE__ */ m({
133
+ __name: "Logo",
134
+ props: {
135
+ name: {
136
+ type: String,
137
+ required: !1,
138
+ default: () => "#2d2d2d"
139
+ },
140
+ icon: {
141
+ type: String,
142
+ required: !1,
143
+ default: () => ""
144
+ },
145
+ color: {
146
+ type: String,
147
+ required: !1,
148
+ default: () => "#2d2d2d"
149
+ },
150
+ fontSize: {
151
+ type: String,
152
+ required: !1,
153
+ default: () => "16px"
154
+ }
155
+ },
156
+ emits: ["to"],
157
+ setup(o, {
158
+ emit: e
159
+ }) {
160
+ const a = o, r = e;
161
+ function i() {
162
+ r("to");
163
+ }
164
+ return (u, s) => (t(), n("div", {
165
+ class: "Logo",
166
+ onClick: i
167
+ }, [o.icon ? (t(), n("img", {
168
+ key: 0,
169
+ class: "icon",
170
+ src: o.icon,
171
+ alt: "logo",
172
+ loading: "lazy",
173
+ decoding: "async"
174
+ }, null, 8, le)) : f("", !0), l("div", {
175
+ class: "text",
176
+ style: S({
177
+ color: a.color,
178
+ fontSize: a.fontSize
179
+ })
180
+ }, k(o.name), 5)]));
181
+ }
182
+ }), de = /* @__PURE__ */ d(ue, [["__scopeId", "data-v-694a3ecc"]]), pe = {
183
+ class: "HeaderCom"
184
+ }, fe = {
185
+ class: "left"
186
+ }, me = {
187
+ class: "right"
188
+ }, _e = /* @__PURE__ */ m({
189
+ __name: "Header",
190
+ props: {
191
+ menuType: {
192
+ default: "header"
193
+ },
194
+ showUserPanel: {
195
+ type: Boolean,
196
+ default: !0
197
+ }
198
+ },
199
+ setup(o) {
200
+ const e = o, {
201
+ show: a
202
+ } = R(), {
203
+ isLoggedIn: r
204
+ } = V(), {
205
+ appsData: i
206
+ } = G(), {
207
+ menus: u,
208
+ hasPermission: s
209
+ } = W(e.menuType), _ = M(""), h = J(), v = A();
210
+ function g() {
211
+ L(() => {
212
+ h.push({
213
+ path: "/"
214
+ }), window.scrollTo({
215
+ top: 0,
216
+ behavior: "smooth"
217
+ });
218
+ });
219
+ }
220
+ function $(y) {
221
+ const c = y.path;
222
+ if (!s(c)) {
223
+ r.value || (a.value = !0);
224
+ return;
225
+ }
226
+ L(() => {
227
+ h.push(c), _.value = c, window.scrollTo({
228
+ top: 0,
229
+ behavior: "smooth"
230
+ });
231
+ });
232
+ }
233
+ return P(() => v.path, () => {
234
+ _.value = N(v.matched, e.menuType, v.path);
235
+ }, {
236
+ immediate: !0
237
+ }), (y, c) => (t(), n("div", pe, [l("div", fe, [w(de, {
238
+ icon: b(i).applicationLogoUrl,
239
+ name: b(i).name,
240
+ onTo: g
241
+ }, null, 8, ["icon", "name"])]), l("div", me, [w(ce, {
242
+ menus: b(u),
243
+ activateKey: _.value,
244
+ onChange: $
245
+ }, null, 8, ["menus", "activateKey"]), e.showUserPanel ? (t(), O(K, {
246
+ key: 0,
247
+ onToHomePage: g,
248
+ onSignOut: g
249
+ })) : f("", !0)])]));
250
+ }
251
+ }), he = /* @__PURE__ */ d(_e, [["__scopeId", "data-v-2225e367"]]), ge = {
252
+ class: "body"
253
+ }, ve = {
254
+ key: 0,
255
+ class: "loading"
256
+ }, ye = "linear-gradient(to bottom, #fefdff, #f9f6fe, #f2eefd, #ebe8fd, #e2e1fd, #dfe0fd, #dcdffd, #d9defd, #dde2fd, #e0e5fd, #e4e9fd, #e8ecfd)", be = /* @__PURE__ */ m({
257
+ __name: "DefaultLayout",
258
+ props: {
259
+ menuType: {
260
+ default: "header"
261
+ },
262
+ showUserPanel: {
263
+ type: Boolean,
264
+ default: !0
265
+ },
266
+ backgroundImage: {
267
+ default: ""
268
+ }
269
+ },
270
+ setup(o) {
271
+ const e = o, {
272
+ setGlobalSEO: a,
273
+ setPageSEO: r
274
+ } = F();
275
+ a(Q);
276
+ const {
277
+ isChecking: i
278
+ } = j(), u = A();
279
+ return P(() => u.meta, (s) => {
280
+ s && s.title && r({
281
+ title: s.title,
282
+ description: s.description,
283
+ keywords: s.keywords,
284
+ image: s.image,
285
+ url: s.url,
286
+ type: s.type
287
+ });
288
+ }, {
289
+ immediate: !0
290
+ }), (s, _) => (t(), n("div", {
291
+ class: "layout",
292
+ style: S({
293
+ backgroundImage: e.backgroundImage || ye,
294
+ backgroundAttachment: "fixed"
295
+ })
296
+ }, [w(he, {
297
+ "menu-type": e.menuType,
298
+ "show-user-panel": e.showUserPanel
299
+ }, null, 8, ["menu-type", "show-user-panel"]), l("div", ge, [b(i) ? (t(), n("div", ve, [w(b(D), {
300
+ size: 40
301
+ })])) : T(s.$slots, "default", {
302
+ key: 1
303
+ }, void 0, !0)])], 4));
304
+ }
305
+ }), Ye = /* @__PURE__ */ d(be, [["__scopeId", "data-v-4cbea871"]]), ke = /* @__PURE__ */ m({
306
+ __name: "Gradientbackground",
307
+ props: {
308
+ width: {
309
+ type: String,
310
+ default: "100%"
311
+ },
312
+ height: {
313
+ type: String,
314
+ default: "100%"
315
+ },
316
+ zIndex: {
317
+ type: String,
318
+ default: "-1"
319
+ },
320
+ top: {
321
+ type: String,
322
+ default: "10%"
323
+ },
324
+ left: {
325
+ type: String,
326
+ default: "0%"
327
+ },
328
+ right: {
329
+ type: String,
330
+ default: "auto"
331
+ },
332
+ blur: {
333
+ type: String,
334
+ default: "0px"
335
+ },
336
+ background: {
337
+ type: String,
338
+ required: !1,
339
+ default: () => "linear-gradient(180deg, rgb(0 225 10 / 10%) 0.31%, rgb(26 214 255 / 52%) 74.99%, rgb(220 189 0 / 0%) 99.69%)"
340
+ }
341
+ },
342
+ setup(o) {
343
+ const e = o, a = x(() => ({
344
+ pointerEvents: "none",
345
+ position: "absolute",
346
+ zIndex: e.zIndex,
347
+ width: e.width,
348
+ height: e.height,
349
+ filter: `blur(${e.blur})`
350
+ })), r = x(() => ({
351
+ width: "100%",
352
+ height: "100%",
353
+ background: e.background
354
+ // background: `linear-gradient(180deg, #D5D1FF 0.31%, #EAEDFF 74.99%, rgba(240, 246, 255, 0) 99.69%)`,
355
+ // background: `linear-gradient(180deg, rgb(0 225 10 / 63%) 0.31%, rgb(26 214 255 / 52%) 74.99%, rgb(220 189 0 / 0%) 99.69%)`,
356
+ // background: `linear-gradient(315deg, rgb(0 225 10 / 63%) 10%, rgb(26 214 255 / 52%) 50%, rgb(220 189 0 / 37%) 100%)`,
357
+ }));
358
+ return (i, u) => (t(), n("div", {
359
+ class: "ellipsis",
360
+ style: S(a.value)
361
+ }, [l("div", {
362
+ class: "ellipsis-item",
363
+ style: S(r.value)
364
+ }, null, 4)], 4));
365
+ }
366
+ }), Ze = /* @__PURE__ */ d(ke, [["__scopeId", "data-v-b6461ac4"]]), Se = {
367
+ class: "SvgIcon"
368
+ }, we = ["href", "fill"], $e = /* @__PURE__ */ m({
369
+ __name: "SvgIcon",
370
+ props: {
371
+ prefix: {
372
+ type: String,
373
+ required: !1,
374
+ default: "icon"
375
+ },
376
+ name: {
377
+ type: String,
378
+ required: !0
379
+ },
380
+ color: {
381
+ type: String,
382
+ required: !1,
383
+ default: "#333"
384
+ }
385
+ },
386
+ setup(o) {
387
+ const e = o, a = x(() => `#${e.prefix ?? "icon"}-${e.name}`);
388
+ return (r, i) => (t(), n("svg", Se, [l("use", {
389
+ href: a.value,
390
+ fill: e.color
391
+ }, null, 8, we)]));
392
+ }
393
+ }), et = /* @__PURE__ */ d($e, [["__scopeId", "data-v-0a9de94e"]]), Ie = {}, Ce = {
394
+ class: "WidthContainer"
395
+ };
396
+ function Me(o, e) {
397
+ return t(), n("div", Ce, [T(o.$slots, "default", {}, void 0, !0)]);
398
+ }
399
+ const tt = /* @__PURE__ */ d(Ie, [["render", Me], ["__scopeId", "data-v-d06aac1f"]]);
400
+ export {
401
+ Xe as C,
402
+ Ye as D,
403
+ Ze as G,
404
+ he as H,
405
+ de as L,
406
+ et as S,
407
+ tt as W,
408
+ ce as a
409
+ };
package/dist/authkit.js CHANGED
@@ -1,7 +1,7 @@
1
- import { A as a, a as s, c as u, b as A, n as h, E as e, k as r, l as o, _ as k, O as n, f as d, o as p, P as f, j as m, R as P, S, i as g, m as l, d as w, e as U, g as c, h as x } from "./AuthkitAuthModal-DOB2R0lE.js";
2
- import { A as y, a as E } from "./AuthkitAuthorize-BLKbcsyH.js";
3
- import { u as C } from "./useAuthkitAppsAuthPageInfo-qWOtNCda.js";
4
- import { u as V, a as b } from "./useAuthkitUsersProfile-a-kA3R2Y.js";
1
+ import { A as a, a as s, c as u, b as A, n as h, E as e, k as r, l as o, _ as k, O as n, f as d, o as p, P as f, j as m, R as P, S, i as g, m as l, d as w, e as U, g as c, h as x } from "./AuthkitAuthModal-DEVS8XfG.js";
2
+ import { A as y, a as E } from "./AuthkitAuthorize-cnC-Hl0X.js";
3
+ import { u as C } from "./useAuthkitAppsAuthPageInfo-Dfj4byB5.js";
4
+ import { u as V, a as b } from "./useAuthkitUsersProfile-Bi_zM2qG.js";
5
5
  import { u as B } from "./AuthkitAuthModal.vue_vue_type_style_index_1_lang-BpOmabWi.js";
6
6
  import { u as j } from "./useAuthkitCreateAndUpdate-BpPW409v.js";
7
7
  export {
@@ -1,3 +1,11 @@
1
+ export interface GlobalSEOConfig {
2
+ /** 网站名称 */
3
+ siteName?: string;
4
+ /** 标题后缀 */
5
+ titleSuffix?: string;
6
+ /** 默认语言 */
7
+ locale?: string;
8
+ }
1
9
  export interface HuyoooUIConfig {
2
10
  /** 应用ID - 必填 */
3
11
  appId: string;
@@ -15,6 +23,10 @@ export interface HuyoooUIConfig {
15
23
  web3formsAccessKey: string;
16
24
  }
17
25
  export declare let globalConfig: HuyoooUIConfig;
26
+ /** 全局 SEO 配置(独立对象) */
27
+ export declare let globalSEOConfig: GlobalSEOConfig;
28
+ /** 设置全局 SEO 配置 */
29
+ export declare function setGlobalSEOConfig(seoConfig: GlobalSEOConfig): void;
18
30
  export declare function setGlobalConfig(newConfig: {
19
31
  /** 应用ID - 必填 */
20
32
  appId: string;
package/dist/common.js CHANGED
@@ -1,5 +1,5 @@
1
1
  import { C as s, a as o } from "./CollapseItem-Cw1vcdLu.js";
2
- import { C as r, D as n, G as l, H as C, a as m, L as p, S as u, W as d } from "./WidthContainer-3fyX6xI4.js";
2
+ import { C as r, D as n, G as l, H as C, a as m, L as p, S as u, W as d } from "./WidthContainer-Ds90or_F.js";
3
3
  import { C as i, E as x } from "./CustomTable-B8i1SbFB.js";
4
4
  import { M, a as g } from "./Menu-BKBnsDJ8.js";
5
5
  export {
@@ -0,0 +1,41 @@
1
+ /**
2
+ * 全局 SEO 配置接口
3
+ */
4
+ export interface GlobalSEOConfig {
5
+ /** 网站名称 */
6
+ siteName?: string;
7
+ /** 标题后缀 */
8
+ titleSuffix?: string;
9
+ /** 默认语言 */
10
+ locale?: string;
11
+ }
12
+ /**
13
+ * 页面级别 SEO 配置接口
14
+ */
15
+ export interface PageSEOConfig {
16
+ /** 页面标题 */
17
+ title: string;
18
+ /** 页面描述 */
19
+ description?: string;
20
+ /** 关键词 */
21
+ keywords?: string;
22
+ /** 图片 URL */
23
+ image?: string;
24
+ /** 页面 URL */
25
+ url?: string;
26
+ /**
27
+ * Open Graph 类型:
28
+ * - website: 普通页面(首页、关于等)
29
+ * - article: 文章/博客/新闻页面
30
+ * - product: 商品/产品页面
31
+ */
32
+ type?: 'website' | 'article' | 'product';
33
+ }
34
+ /**
35
+ * SEO 管理 composable
36
+ * 提供全局和页面级别的 SEO 设置方法
37
+ */
38
+ export declare function useSEO(): {
39
+ setGlobalSEO: (config: GlobalSEOConfig) => void;
40
+ setPageSEO: (config: PageSEOConfig) => void;
41
+ };
@@ -4,7 +4,7 @@ export { useAuthkitUsersProfile } from './composables/Authkit/useAuthkitUsersPro
4
4
  export { useAuthkitAppsAuthPageInfo } from './composables/Authkit/useAuthkitAppsAuthPageInfo';
5
5
  export { useAuthkitCreateAndUpdate } from './composables/Authkit/useAuthkitCreateAndUpdate';
6
6
  export { useMessageNotifications } from './composables/useMessageNotifications';
7
- export { globalConfig, setGlobalConfig } from './common/globalConfig';
7
+ export { globalConfig, setGlobalConfig, globalSEOConfig, setGlobalSEOConfig } from './common/globalConfig';
8
8
  export { useCreateAndUpdate as useCommonCreateAndUpdate } from './composables/useCreateAndUpdate';
9
9
  export { useTableHandle } from './composables/useTableHandle';
10
10
  export { useActiveDoc } from './composables/useActiveDoc';
@@ -13,3 +13,4 @@ export { withViewTransition } from './composables/viewTransitions';
13
13
  export { useDownloads } from './composables/useDownloads';
14
14
  export { useAuthMenu, findMenuPath } from './composables/Authkit/useAuthMenu';
15
15
  export { useRoutePermission } from './composables/Authkit/useRoutePermission';
16
+ export { useSEO, type GlobalSEOConfig, type PageSEOConfig } from './composables/useSEO';
@@ -1,29 +1,32 @@
1
- import { u as o, a } from "./useAuthkitUsersProfile-a-kA3R2Y.js";
1
+ import { u as o, a } from "./useAuthkitUsersProfile-Bi_zM2qG.js";
2
2
  import { u } from "./AuthkitAuthModal.vue_vue_type_style_index_1_lang-BpOmabWi.js";
3
- import { u as i } from "./useAuthkitAppsAuthPageInfo-qWOtNCda.js";
3
+ import { u as i } from "./useAuthkitAppsAuthPageInfo-Dfj4byB5.js";
4
4
  import { u as n } from "./useAuthkitCreateAndUpdate-BpPW409v.js";
5
- import { u as m } from "./useMessageNotifications-B5pXqPNh.js";
6
- import { g as h, s as l } from "./globalConfig-DKn-cF9c.js";
7
- import { a as d, u as g, b as C } from "./useDownloads-CHe228Vf.js";
8
- import { u as b } from "./useTableHandle-DKUIdSSh.js";
9
- import { u as M } from "./useUploadCos-yeMY5Xn0.js";
10
- import { f as U, u as c, a as D, w as T } from "./useRoutePermission-BKg7oQTj.js";
5
+ import { u as l } from "./useMessageNotifications-DSRanuRe.js";
6
+ import { g as A, a as h, s as x, b as d } from "./globalConfig-C1YOJcxa.js";
7
+ import { u as C, a as b } from "./useDownloads-DnMYa52H.js";
8
+ import { u as c } from "./useTableHandle-DKUIdSSh.js";
9
+ import { f as M, u as P, a as U, b as E, c as O, w as S } from "./useSEO-BAkykYVP.js";
10
+ import { u as G } from "./useUploadCos-D5k1YLb7.js";
11
11
  export {
12
- U as findMenuPath,
13
- h as globalConfig,
14
- l as setGlobalConfig,
15
- d as useActiveDoc,
16
- c as useAuthMenu,
12
+ M as findMenuPath,
13
+ A as globalConfig,
14
+ h as globalSEOConfig,
15
+ x as setGlobalConfig,
16
+ d as setGlobalSEOConfig,
17
+ P as useActiveDoc,
18
+ U as useAuthMenu,
17
19
  i as useAuthkitAppsAuthPageInfo,
18
20
  o as useAuthkitAuth,
19
21
  u as useAuthkitAuthModal,
20
22
  n as useAuthkitCreateAndUpdate,
21
23
  a as useAuthkitUsersProfile,
22
- g as useCommonCreateAndUpdate,
23
- C as useDownloads,
24
- m as useMessageNotifications,
25
- D as useRoutePermission,
26
- b as useTableHandle,
27
- M as useUploadCos,
28
- T as withViewTransition
24
+ C as useCommonCreateAndUpdate,
25
+ b as useDownloads,
26
+ l as useMessageNotifications,
27
+ E as useRoutePermission,
28
+ O as useSEO,
29
+ c as useTableHandle,
30
+ G as useUploadCos,
31
+ S as withViewTransition
29
32
  };