@huyooo/ui 0.10.7 → 0.11.1

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 (68) hide show
  1. package/dist/AuthkitAppSetting-BCrLMpLg.js +1322 -0
  2. package/dist/AuthkitSignInPhone-DmCQ2fWs.js +1721 -0
  3. package/dist/{Clipboard-CK_nROjb.js → Clipboard---tG2Zxz.js} +1 -1
  4. package/dist/{Contact-CpHU1bJ7.js → Contact-BEUbBGiB.js} +2 -2
  5. package/dist/{CustomTable-1W5byjgJ.js → CustomTable-CVZ4mFzi.js} +2 -3
  6. package/dist/FeedbackItem-CN041vTm.js +495 -0
  7. package/dist/FeedbackModal-aI28o-w5.js +1053 -0
  8. package/dist/MessageHandle-BV1nKlxs.js +1147 -0
  9. package/dist/MessageNoticeNotificationsDetails.vue_vue_type_script_setup_true_lang-F6neJUg3.js +142 -0
  10. package/dist/{PaySubscriptions-C4Een__-.js → PaySubscriptions-B3gI1Eme.js} +5 -6
  11. package/dist/{ReferrerReferees-DIassvGO.js → ReferrerReferees-DJzPo7X5.js} +7 -7
  12. package/dist/{Upload.vue_vue_type_script_setup_true_lang-DA8VZBrl.js → Upload.vue_vue_type_script_setup_true_lang-D_-oMTOo.js} +1 -1
  13. package/dist/UserAccountMenu-CJ9KKVYa.js +371 -0
  14. package/dist/UserMenuInvitationsItem.vue_vue_type_script_setup_true_lang-ClAXNSgl.js +81 -0
  15. package/dist/{WidthContainer-TXsvW1ut.js → WidthContainer-BG10rumn.js} +248 -252
  16. package/dist/{apiClients-ANEApCyY.js → apiClients-9b4zNZ2S.js} +2 -2
  17. package/dist/authkit.js +41 -40
  18. package/dist/common.js +2 -2
  19. package/dist/components/Authkit/AuthkitAppSetting.vue.d.ts +1 -1
  20. package/dist/components/Referrer/ReferrerReferees.vue.d.ts +1 -1
  21. package/dist/components/{User → UserMenu}/UserAccountMenu.vue.d.ts +1 -5
  22. package/dist/components/{User/UserPanel.vue.d.ts → UserMenu/UserMenu.vue.d.ts} +5 -12
  23. package/dist/components/UserMenu/UserMenuDivider.vue.d.ts +2 -0
  24. package/dist/components/UserMenu/UserMenuHeader.vue.d.ts +13 -0
  25. package/dist/components/{User/UserPanelItem.vue.d.ts → UserMenu/UserMenuItem.vue.d.ts} +6 -10
  26. package/dist/components/UserMenu/UserMenuModals.vue.d.ts +137 -0
  27. package/dist/components/UserMenu/items/UserMenuFeedbackItem.vue.d.ts +2 -0
  28. package/dist/components/UserMenu/items/UserMenuInvitationsItem.vue.d.ts +2 -0
  29. package/dist/components/UserMenu/items/UserMenuMessageItem.vue.d.ts +2 -0
  30. package/dist/components/UserMenu/items/UserMenuSettingItem.vue.d.ts +2 -0
  31. package/dist/components/UserMenu/items/UserMenuSubscriptionItem.vue.d.ts +2 -0
  32. package/dist/components/UserMenu/parts/UserAvatar.vue.d.ts +9 -0
  33. package/dist/components/UserMenu/parts/UserBasicInformation.vue.d.ts +13 -0
  34. package/dist/components/UserMenu/parts/UserSubscriptionBaseInformation.vue.d.ts +15 -0
  35. package/dist/composables/UserMenu/useUserMenu.d.ts +20 -0
  36. package/dist/composables.d.ts +1 -0
  37. package/dist/composables.js +19 -17
  38. package/dist/feedback.js +16 -15
  39. package/dist/main.js +193 -180
  40. package/dist/message.js +10 -9
  41. package/dist/pay.js +1 -1
  42. package/dist/privateCom.js +1 -1
  43. package/dist/referrer.js +1 -1
  44. package/dist/style.css +1 -1
  45. package/dist/upload.js +2 -2
  46. package/dist/{useAuthkitAppsAuthPageInfo-Da2yJTT-.js → useAuthkitAppsAuthPageInfo-494yLvsu.js} +1 -1
  47. package/dist/{useAuthkitCreateAndUpdate-BLs5vQOu.js → useAuthkitCreateAndUpdate-DyRtFxZS.js} +1 -1
  48. package/dist/{useAuthkitUsersProfile-Cx8NXjlt.js → useAuthkitUsersProfile-lGlQP54m.js} +1 -1
  49. package/dist/{useDownloads-DT5W2af6.js → useDownloads-DaeIY0E9.js} +1 -1
  50. package/dist/{useLegalLinks-BIF45kUt.js → useLegalLinks-CPbWqlu6.js} +2 -2
  51. package/dist/{useMessageNotifications-CavBmgO7.js → useMessageNotifications-Dg5q-C_o.js} +1 -1
  52. package/dist/{useSEO-MPXQf0dn.js → useSEO-CXX9dcBx.js} +2 -2
  53. package/dist/{useTableHandle--NSbZ-57.js → useTableHandle-Cjq4gcC0.js} +1 -1
  54. package/dist/{cos-js-sdk-v5-BJ5AlBRu.js → useUploadCos-DiJmmbRf.js} +2469 -2232
  55. package/dist/useUserMenu-B3HKZKJ4.js +43 -0
  56. package/dist/user.d.ts +15 -7
  57. package/dist/user.js +17 -9
  58. package/package.json +1 -1
  59. package/dist/AuthkitSignInPhone-BWPCpUie.js +0 -3034
  60. package/dist/FeedbackModal-qAJLL3V3.js +0 -1535
  61. package/dist/MessageNoticeNotificationsDetails.vue_vue_type_script_setup_true_lang-D109kT8_.js +0 -1282
  62. package/dist/UserAccountMenu-BIRTtjLb.js +0 -266
  63. package/dist/UserSubscriptionBaseInformation-BUs3qiHd.js +0 -60
  64. package/dist/components/User/UserAvatar.vue.d.ts +0 -23
  65. package/dist/components/User/UserBasicInformation.vue.d.ts +0 -41
  66. package/dist/components/User/UserSubscriptionBaseInformation.vue.d.ts +0 -32
  67. package/dist/useUploadCos-D6y0INvP.js +0 -242
  68. /package/dist/components/{User/UserButton.vue.d.ts → UserMenu/parts/UserSignInButton.vue.d.ts} +0 -0
@@ -1,266 +0,0 @@
1
- /* empty css */
2
- /* empty css */
3
- /* empty css */
4
- /* empty css */
5
- import { defineComponent as _, openBlock as o, createElementBlock as m, toDisplayString as f, createCommentVNode as U, createVNode as h, unref as t, createElementVNode as n, createBlock as c, withCtx as $, createTextVNode as P, useModel as B, renderSlot as u, mergeModels as A, normalizeClass as C, createSlots as S } from "vue";
6
- import { Avatar as I, Button as V, Dropdown as M, Divider as x, Doption as N } from "@arco-design/web-vue";
7
- import { a as y } from "./useAuthkitUsersProfile-Cx8NXjlt.js";
8
- /* empty css */
9
- import { _ as v } from "./_plugin-vue_export-helper-CHgC5LLL.js";
10
- /* empty css */
11
- import { u as D } from "./apiClients-ANEApCyY.js";
12
- import { Icon as b } from "@iconify/vue";
13
- const O = {
14
- class: "userInfo"
15
- }, z = {
16
- key: 0,
17
- class: "userName"
18
- }, j = /* @__PURE__ */ _({
19
- __name: "UserAvatar",
20
- props: {
21
- nickname: {
22
- type: String,
23
- default: ""
24
- },
25
- avatar: {
26
- type: String,
27
- default: ""
28
- }
29
- },
30
- setup(s) {
31
- const e = s;
32
- return (i, l) => (o(), m("div", O, [e.nickname ? (o(), m("span", z, f(e.nickname), 1)) : U("", !0), h(t(I), {
33
- "image-url": e.avatar,
34
- size: 32,
35
- "object-fit": "cover"
36
- }, null, 8, ["image-url"])]));
37
- }
38
- }), w = /* @__PURE__ */ v(j, [["__scopeId", "data-v-36643afe"]]), E = {
39
- class: "userInfo"
40
- }, L = {
41
- class: "extra"
42
- }, X = {
43
- class: "userName"
44
- }, Y = {
45
- class: "email"
46
- }, T = {
47
- key: 0,
48
- class: "referrerId"
49
- }, q = /* @__PURE__ */ _({
50
- __name: "UserBasicInformation",
51
- props: {
52
- nickname: {
53
- type: String,
54
- default: ""
55
- },
56
- email: {
57
- type: String,
58
- default: ""
59
- },
60
- avatarUrl: {
61
- type: String,
62
- default: ""
63
- },
64
- referrerId: {
65
- type: String,
66
- default: ""
67
- }
68
- },
69
- setup(s) {
70
- const e = s;
71
- return (i, l) => (o(), m("div", E, [h(t(I), {
72
- "image-url": e.avatarUrl,
73
- size: 42,
74
- "object-fit": "cover"
75
- }, null, 8, ["image-url"]), n("div", L, [n("span", X, f(e.nickname), 1), n("span", Y, f(e.email), 1), e.referrerId ? (o(), m("span", T, " 邀请码:" + f(e.referrerId), 1)) : U("", !0)])]));
76
- }
77
- }), F = /* @__PURE__ */ v(q, [["__scopeId", "data-v-094943aa"]]), G = /* @__PURE__ */ _({
78
- __name: "UserButton",
79
- setup(s) {
80
- const {
81
- userProfile: e,
82
- isLoggedIn: i
83
- } = y(), {
84
- open: l
85
- } = D();
86
- return (d, a) => {
87
- var r;
88
- return t(i) ? (o(), c(w, {
89
- key: 1,
90
- avatar: (r = t(e)) == null ? void 0 : r.avatarUrl
91
- }, null, 8, ["avatar"])) : (o(), c(t(V), {
92
- key: 0,
93
- type: "primary",
94
- class: "UserButton__login",
95
- onClick: a[0] || (a[0] = (p) => t(l)())
96
- }, {
97
- default: $(() => [...a[1] || (a[1] = [P(" 登陆 ", -1)])]),
98
- _: 1
99
- }));
100
- };
101
- }
102
- }), H = /* @__PURE__ */ v(G, [["__scopeId", "data-v-9e754bed"]]), J = {
103
- class: "UserPanel"
104
- }, K = {
105
- class: "UserPanel__dropdown"
106
- }, Q = {
107
- class: "UserPanel__header"
108
- }, R = /* @__PURE__ */ _({
109
- __name: "UserPanel",
110
- props: /* @__PURE__ */ A({
111
- position: {
112
- default: "br"
113
- },
114
- dropdownOffsetX: {
115
- default: "0"
116
- },
117
- dropdownOffsetY: {
118
- default: "0"
119
- }
120
- }, {
121
- modelValue: {
122
- type: Boolean,
123
- default: !1
124
- },
125
- modelModifiers: {}
126
- }),
127
- emits: ["update:modelValue"],
128
- setup(s) {
129
- const {
130
- userProfile: e,
131
- isLoggedIn: i
132
- } = y(), l = B(s, "modelValue");
133
- return (d, a) => (o(), m("div", J, [t(i) ? (o(), c(t(M), {
134
- key: 0,
135
- "popup-visible": l.value,
136
- "onUpdate:popupVisible": a[0] || (a[0] = (r) => l.value = r),
137
- class: "DropdownUserInfo",
138
- position: s.position,
139
- "popup-style": {
140
- "--dropdown-translate-x": s.dropdownOffsetX ?? "0",
141
- "--dropdown-translate-y": s.dropdownOffsetY ?? "0"
142
- }
143
- }, {
144
- content: $(() => [n("div", K, [n("div", Q, [u(d.$slots, "header", {
145
- user: t(e)
146
- }, () => {
147
- var r, p, k, g;
148
- return [h(F, {
149
- "avatar-url": (r = t(e)) == null ? void 0 : r.avatarUrl,
150
- nickname: (p = t(e)) == null ? void 0 : p.nickname,
151
- email: (k = t(e)) == null ? void 0 : k.email,
152
- "referrer-id": (g = t(e)) == null ? void 0 : g.referrerId
153
- }, null, 8, ["avatar-url", "nickname", "email", "referrer-id"])];
154
- }, !0)]), d.$slots.items ? (o(), c(t(x), {
155
- key: 0,
156
- style: {
157
- margin: "10px 0"
158
- }
159
- })) : U("", !0), u(d.$slots, "items", {}, void 0, !0)])]),
160
- default: $(() => [u(d.$slots, "trigger", {
161
- user: t(e)
162
- }, () => {
163
- var r;
164
- return [h(w, {
165
- avatar: (r = t(e)) == null ? void 0 : r.avatarUrl
166
- }, null, 8, ["avatar"])];
167
- }, !0)]),
168
- _: 3
169
- }, 8, ["popup-visible", "position", "popup-style"])) : (o(), c(H, {
170
- key: 1
171
- }))]));
172
- }
173
- }), he = /* @__PURE__ */ v(R, [["__scopeId", "data-v-c7fdfcc4"]]), W = {
174
- class: "UserPanelItem__label"
175
- }, Z = {
176
- key: 0,
177
- class: "UserPanelItem__suffix"
178
- }, ee = /* @__PURE__ */ _({
179
- __name: "UserPanelItem",
180
- props: {
181
- value: {
182
- default: void 0
183
- },
184
- icon: {
185
- default: void 0
186
- },
187
- danger: {
188
- type: Boolean,
189
- default: !1
190
- },
191
- disabled: {
192
- type: Boolean,
193
- default: !1
194
- }
195
- },
196
- emits: ["click"],
197
- setup(s, {
198
- emit: e
199
- }) {
200
- const i = s, l = e;
201
- function d(a) {
202
- i.disabled || l("click", a);
203
- }
204
- return (a, r) => (o(), c(t(N), {
205
- value: s.value,
206
- class: C(["UserPanelItem", {
207
- "is-danger": s.danger,
208
- "is-disabled": s.disabled
209
- }]),
210
- disabled: s.disabled,
211
- onClick: d
212
- }, S({
213
- default: $(() => [n("span", W, [u(a.$slots, "default", {}, void 0, !0)]), a.$slots.suffix ? (o(), m("span", Z, [u(a.$slots, "suffix", {}, void 0, !0)])) : U("", !0)]),
214
- _: 2
215
- }, [a.$slots.icon || s.icon ? {
216
- name: "icon",
217
- fn: $(() => [u(a.$slots, "icon", {}, () => [s.icon ? (o(), c(t(b), {
218
- key: 0,
219
- icon: s.icon,
220
- width: 16,
221
- height: 16
222
- }, null, 8, ["icon"])) : U("", !0)], !0)]),
223
- key: "0"
224
- } : void 0]), 1032, ["value", "class", "disabled"]));
225
- }
226
- }), $e = /* @__PURE__ */ v(ee, [["__scopeId", "data-v-bfda92ea"]]), te = {
227
- class: "UserAccountMenu"
228
- }, se = {
229
- class: "avatar"
230
- }, ae = {
231
- class: "meta"
232
- }, oe = {
233
- class: "name"
234
- }, re = {
235
- class: "email"
236
- }, ne = /* @__PURE__ */ _({
237
- __name: "UserAccountMenu",
238
- emits: ["arrowClick"],
239
- setup(s, {
240
- emit: e
241
- }) {
242
- const {
243
- userProfile: i
244
- } = y(), l = e;
245
- function d() {
246
- l("arrowClick");
247
- }
248
- return (a, r) => {
249
- var p, k;
250
- return o(), m("div", te, [n("div", se, [u(a.$slots, "avatar", {}, void 0, !0)]), n("div", ae, [n("div", oe, f(((p = t(i)) == null ? void 0 : p.nickname) || ""), 1), n("div", re, f(((k = t(i)) == null ? void 0 : k.email) || ""), 1)]), n("div", {
251
- class: "arrow",
252
- onClick: d
253
- }, [h(t(b), {
254
- icon: "lucide:chevrons-up-down"
255
- })])]);
256
- };
257
- }
258
- }), ye = /* @__PURE__ */ v(ne, [["__scopeId", "data-v-e3c824dc"]]);
259
- export {
260
- ye as U,
261
- w as a,
262
- F as b,
263
- H as c,
264
- he as d,
265
- $e as e
266
- };
@@ -1,60 +0,0 @@
1
- /* empty css */
2
- /* empty css */
3
- /* empty css */
4
- import { defineComponent as m, openBlock as o, createElementBlock as l, createElementVNode as r, createVNode as _, unref as n, withCtx as i, createTextVNode as a, toDisplayString as s, createBlock as f, createCommentVNode as g } from "vue";
5
- import { Tag as x, Button as y } from "@arco-design/web-vue";
6
- import "./UserAccountMenu-BIRTtjLb.js";
7
- import { _ as B } from "./_plugin-vue_export-helper-CHgC5LLL.js";
8
- const N = {
9
- class: "pricing"
10
- }, V = {
11
- class: "base"
12
- }, b = {
13
- class: "pricingInfo"
14
- }, k = /* @__PURE__ */ m({
15
- __name: "UserSubscriptionBaseInformation",
16
- props: {
17
- currentVersionName: {
18
- type: String,
19
- required: !0
20
- },
21
- expireDate: {
22
- type: String,
23
- required: !0
24
- },
25
- canUpgrade: {
26
- type: Boolean,
27
- required: !0
28
- }
29
- },
30
- emits: ["upgradeHandle"],
31
- setup(p, {
32
- emit: c
33
- }) {
34
- const t = p, d = c;
35
- function u() {
36
- d("upgradeHandle");
37
- }
38
- return (S, e) => (o(), l("div", N, [r("div", V, [r("div", b, [e[0] || (e[0] = r("span", null, "我的订阅:", -1)), _(n(x), {
39
- color: "arcoblue",
40
- style: {
41
- "border-radius": "6px"
42
- }
43
- }, {
44
- default: i(() => [a(s(t.currentVersionName), 1)]),
45
- _: 1
46
- })]), t.canUpgrade ? (o(), f(n(y), {
47
- key: 0,
48
- type: "primary",
49
- size: "mini",
50
- class: "updatePricing",
51
- onClick: u
52
- }, {
53
- default: i(() => [...e[1] || (e[1] = [a(" 升级 ", -1)])]),
54
- _: 1
55
- })) : g("", !0)]), r("span", null, "有效期至: " + s(t.expireDate), 1)]));
56
- }
57
- }), E = /* @__PURE__ */ B(k, [["__scopeId", "data-v-1e32fa72"]]);
58
- export {
59
- E as U
60
- };
@@ -1,23 +0,0 @@
1
- declare const _default: import('vue').DefineComponent<import('vue').ExtractPropTypes<{
2
- nickname: {
3
- type: StringConstructor;
4
- default: string;
5
- };
6
- avatar: {
7
- type: StringConstructor;
8
- default: string;
9
- };
10
- }>, {}, {}, {}, {}, import('vue').ComponentOptionsMixin, import('vue').ComponentOptionsMixin, {}, string, import('vue').PublicProps, Readonly<import('vue').ExtractPropTypes<{
11
- nickname: {
12
- type: StringConstructor;
13
- default: string;
14
- };
15
- avatar: {
16
- type: StringConstructor;
17
- default: string;
18
- };
19
- }>> & Readonly<{}>, {
20
- nickname: string;
21
- avatar: string;
22
- }, {}, {}, {}, string, import('vue').ComponentProvideOptions, true, {}, HTMLDivElement>;
23
- export default _default;
@@ -1,41 +0,0 @@
1
- declare const _default: import('vue').DefineComponent<import('vue').ExtractPropTypes<{
2
- nickname: {
3
- type: StringConstructor;
4
- default: string;
5
- };
6
- email: {
7
- type: StringConstructor;
8
- default: string;
9
- };
10
- avatarUrl: {
11
- type: StringConstructor;
12
- default: string;
13
- };
14
- referrerId: {
15
- type: StringConstructor;
16
- default: string;
17
- };
18
- }>, {}, {}, {}, {}, import('vue').ComponentOptionsMixin, import('vue').ComponentOptionsMixin, {}, string, import('vue').PublicProps, Readonly<import('vue').ExtractPropTypes<{
19
- nickname: {
20
- type: StringConstructor;
21
- default: string;
22
- };
23
- email: {
24
- type: StringConstructor;
25
- default: string;
26
- };
27
- avatarUrl: {
28
- type: StringConstructor;
29
- default: string;
30
- };
31
- referrerId: {
32
- type: StringConstructor;
33
- default: string;
34
- };
35
- }>> & Readonly<{}>, {
36
- email: string;
37
- referrerId: string;
38
- nickname: string;
39
- avatarUrl: string;
40
- }, {}, {}, {}, string, import('vue').ComponentProvideOptions, true, {}, HTMLDivElement>;
41
- export default _default;
@@ -1,32 +0,0 @@
1
- declare const _default: import('vue').DefineComponent<import('vue').ExtractPropTypes<{
2
- currentVersionName: {
3
- type: StringConstructor;
4
- required: true;
5
- };
6
- expireDate: {
7
- type: StringConstructor;
8
- required: true;
9
- };
10
- canUpgrade: {
11
- type: BooleanConstructor;
12
- required: true;
13
- };
14
- }>, {}, {}, {}, {}, import('vue').ComponentOptionsMixin, import('vue').ComponentOptionsMixin, {
15
- upgradeHandle: (...args: any[]) => void;
16
- }, string, import('vue').PublicProps, Readonly<import('vue').ExtractPropTypes<{
17
- currentVersionName: {
18
- type: StringConstructor;
19
- required: true;
20
- };
21
- expireDate: {
22
- type: StringConstructor;
23
- required: true;
24
- };
25
- canUpgrade: {
26
- type: BooleanConstructor;
27
- required: true;
28
- };
29
- }>> & Readonly<{
30
- onUpgradeHandle?: ((...args: any[]) => any) | undefined;
31
- }>, {}, {}, {}, {}, string, import('vue').ComponentProvideOptions, true, {}, HTMLDivElement>;
32
- export default _default;
@@ -1,242 +0,0 @@
1
- import { C as b } from "./cos-js-sdk-v5-BJ5AlBRu.js";
2
- import { o as n } from "./apiClients-ANEApCyY.js";
3
- const w = {
4
- // 图片
5
- jpg: "image/jpeg",
6
- jpeg: "image/jpeg",
7
- png: "image/png",
8
- gif: "image/gif",
9
- bmp: "image/bmp",
10
- webp: "image/webp",
11
- svg: "image/svg+xml",
12
- ico: "image/x-icon",
13
- tiff: "image/tiff",
14
- tif: "image/tiff",
15
- heic: "image/heic",
16
- heif: "image/heif",
17
- avif: "image/avif",
18
- jxl: "image/jxl",
19
- // 视频
20
- mp4: "video/mp4",
21
- avi: "video/x-msvideo",
22
- mov: "video/quicktime",
23
- wmv: "video/x-ms-wmv",
24
- flv: "video/x-flv",
25
- webm: "video/webm",
26
- mkv: "video/x-matroska",
27
- m4v: "video/x-m4v",
28
- "3gp": "video/3gpp",
29
- ogv: "video/ogg",
30
- mts: "video/mp2t",
31
- m2ts: "video/mp2t",
32
- // 注意:.ts 扩展名优先用于 TypeScript,如果需要视频格式,可以使用 .mts 或 .m2ts
33
- // 音频
34
- mp3: "audio/mpeg",
35
- wav: "audio/wav",
36
- ogg: "audio/ogg",
37
- aac: "audio/aac",
38
- flac: "audio/flac",
39
- m4a: "audio/mp4",
40
- wma: "audio/x-ms-wma",
41
- aiff: "audio/aiff",
42
- aif: "audio/aiff",
43
- opus: "audio/opus",
44
- amr: "audio/amr",
45
- // 文档
46
- pdf: "application/pdf",
47
- doc: "application/msword",
48
- docx: "application/vnd.openxmlformats-officedocument.wordprocessingml.document",
49
- xls: "application/vnd.ms-excel",
50
- xlsx: "application/vnd.openxmlformats-officedocument.spreadsheetml.sheet",
51
- ppt: "application/vnd.ms-powerpoint",
52
- pptx: "application/vnd.openxmlformats-officedocument.presentationml.presentation",
53
- rtf: "application/rtf",
54
- txt: "text/plain",
55
- odt: "application/vnd.oasis.opendocument.text",
56
- ods: "application/vnd.oasis.opendocument.spreadsheet",
57
- odp: "application/vnd.oasis.opendocument.presentation",
58
- pages: "application/x-iwork-pages-sffpages",
59
- numbers: "application/x-iwork-numbers-sffnumbers",
60
- key: "application/x-iwork-keynote-sffkey",
61
- xlsm: "application/vnd.ms-excel.sheet.macroEnabled.12",
62
- xlsb: "application/vnd.ms-excel.sheet.binary.macroEnabled.12",
63
- docm: "application/vnd.ms-word.document.macroEnabled.12",
64
- pptm: "application/vnd.ms-powerpoint.presentation.macroEnabled.12",
65
- potx: "application/vnd.openxmlformats-officedocument.presentationml.template",
66
- ppsx: "application/vnd.openxmlformats-officedocument.presentationml.slideshow",
67
- xps: "application/vnd.ms-xpsdocument",
68
- // 代码
69
- js: "application/javascript",
70
- ts: "application/typescript",
71
- html: "text/html",
72
- css: "text/css",
73
- json: "application/json",
74
- xml: "application/xml",
75
- py: "text/x-python",
76
- java: "text/x-java-source",
77
- cpp: "text/x-c++src",
78
- c: "text/x-csrc",
79
- php: "text/x-php",
80
- rb: "text/x-ruby",
81
- go: "text/x-go",
82
- rs: "text/x-rust",
83
- swift: "text/x-swift",
84
- kt: "text/x-kotlin",
85
- scala: "text/x-scala",
86
- dart: "text/x-dart",
87
- vue: "text/x-vue",
88
- jsx: "text/x-jsx",
89
- tsx: "text/x-tsx",
90
- sass: "text/x-sass",
91
- scss: "text/x-scss",
92
- less: "text/x-less",
93
- styl: "text/x-stylus",
94
- coffee: "text/x-coffeescript",
95
- lua: "text/x-lua",
96
- r: "text/x-r",
97
- matlab: "text/x-matlab",
98
- sql: "text/x-sql",
99
- sh: "text/x-sh",
100
- bat: "text/x-bat",
101
- ps1: "text/x-powershell",
102
- // 压缩文件
103
- zip: "application/zip",
104
- rar: "application/vnd.rar",
105
- tar: "application/x-tar",
106
- gz: "application/gzip",
107
- "7z": "application/x-7z-compressed",
108
- bz2: "application/x-bzip2",
109
- xz: "application/x-xz",
110
- lzma: "application/x-lzma",
111
- cab: "application/vnd.ms-cab-compressed",
112
- dmg: "application/x-apple-diskimage",
113
- iso: "application/x-iso9660-image",
114
- // 电子书
115
- epub: "application/epub+zip",
116
- mobi: "application/x-mobipocket-ebook",
117
- azw: "application/vnd.amazon.ebook",
118
- fb2: "application/x-fictionbook+xml",
119
- // 其他
120
- csv: "text/csv",
121
- md: "text/markdown",
122
- yaml: "text/yaml",
123
- yml: "text/yaml",
124
- ini: "text/plain",
125
- conf: "text/plain",
126
- log: "text/plain",
127
- plist: "application/x-plist"
128
- };
129
- function h(t, c) {
130
- var p;
131
- const o = (p = t.split(".").pop()) == null ? void 0 : p.toLowerCase();
132
- return o && w[o] || "application/octet-stream";
133
- }
134
- function k(t) {
135
- return t.type && t.type !== "application/octet-stream" && t.type !== "" ? t.type : h(t.name);
136
- }
137
- function j() {
138
- let t;
139
- async function c({
140
- file: o,
141
- onProgress: p,
142
- onFileFinish: m,
143
- onError: i,
144
- bucketId: l
145
- }) {
146
- const {
147
- name: x,
148
- size: d,
149
- webkitRelativePath: v
150
- } = o, r = k(o), e = await n.files.getKeyAndCredentials.post({
151
- filename: x,
152
- // 传原始文件名,服务端会生成完整路径
153
- bucketId: l,
154
- size: d,
155
- type: r
156
- });
157
- if (!e.data) {
158
- i && i({
159
- code: "501",
160
- message: "获取上传凭证失败",
161
- error: "",
162
- url: "/files/getKeyAndCredentials",
163
- method: "post"
164
- });
165
- return;
166
- }
167
- const f = e.data.Key, u = await n.files.create.post({
168
- bucketId: l,
169
- filename: f,
170
- // 使用服务端返回的 Key
171
- name: x,
172
- size: d,
173
- type: r,
174
- webkitRelativePath: v
175
- });
176
- if (!u.data) {
177
- i && i({
178
- code: "501",
179
- message: "新建记录失败",
180
- error: "",
181
- url: "/files/create",
182
- method: "post"
183
- });
184
- return;
185
- }
186
- const g = u.data.id;
187
- t = new b({
188
- async getAuthorization(a, s) {
189
- s({
190
- TmpSecretId: e.data.TmpSecretId,
191
- TmpSecretKey: e.data.TmpSecretKey,
192
- SecurityToken: e.data.SessionToken,
193
- StartTime: e.data.StartTime,
194
- ExpiredTime: e.data.ExpiredTime,
195
- ScopeLimit: !0
196
- });
197
- }
198
- }), t.uploadFile({
199
- Bucket: e.data.Bucket,
200
- // 使用服务端返回的 Bucket
201
- Region: e.data.Region,
202
- // 使用服务端返回的 Region
203
- Key: f,
204
- // 使用服务端返回的 Key
205
- Body: o,
206
- SliceSize: 1024 * 1024 * 5,
207
- onProgress(a) {
208
- p && p(a);
209
- },
210
- onFileFinish(a, s, y) {
211
- m && m(a, s, y), n.files.update.post({
212
- id: g,
213
- status: "success"
214
- });
215
- },
216
- onTaskReady: (a) => {
217
- }
218
- }, (a) => {
219
- a && (console.error("文件上传失败:", a), (async () => {
220
- const {
221
- error: s
222
- } = await n.files.update.post({
223
- id: g,
224
- status: "fail"
225
- });
226
- s && i && i({
227
- code: "501",
228
- message: "更新进度失败",
229
- error: "",
230
- url: "/files/update",
231
- method: "post"
232
- });
233
- })(), i && i(a));
234
- });
235
- }
236
- return {
237
- uploadFile: c
238
- };
239
- }
240
- export {
241
- j as u
242
- };