giime 0.5.11 → 0.5.12

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 (78) hide show
  1. package/dist/index.css +35 -35
  2. package/es/api/materialApi/cross/getAliOssConfigs.d.ts +14 -0
  3. package/es/api/materialApi/cross/getAliOssConfigs.mjs +8 -0
  4. package/es/api/materialApi/cross/getAliOssConfigs.mjs.map +1 -0
  5. package/es/api/materialApi/cross/index.d.ts +1 -1
  6. package/es/api/materialApi/cross/index.mjs +1 -1
  7. package/es/api/materialApi/index.mjs +1 -1
  8. package/es/components/src/business/uploadMaterial/UploadMaterial.vue.d.ts +52 -52
  9. package/es/components/src/business/uploadMaterial/UploadMaterial.vue2.mjs.map +1 -1
  10. package/es/components/src/business/uploadMaterial/index.d.ts +4 -4
  11. package/es/components/src/composite/uploadFile/UploadFile.vue.d.ts +10 -4
  12. package/es/components/src/composite/uploadFile/UploadFile.vue.mjs +1 -1
  13. package/es/components/src/composite/uploadFile/UploadFile.vue2.mjs +27 -7
  14. package/es/components/src/composite/uploadFile/UploadFile.vue2.mjs.map +1 -1
  15. package/es/components/src/composite/uploadFile/index.d.ts +22 -10
  16. package/es/components/src/composite/uploadFile/uploadFile.d.ts +30 -28
  17. package/es/components/src/composite/uploadFile/uploadFile.mjs.map +1 -1
  18. package/es/giime/index.mjs +1 -1
  19. package/es/giime/version.d.ts +1 -1
  20. package/es/giime/version.mjs +1 -1
  21. package/es/giime/version.mjs.map +1 -1
  22. package/es/hooks/index.mjs +1 -1
  23. package/es/hooks/store/index.d.ts +1 -1
  24. package/es/hooks/store/index.mjs +1 -1
  25. package/es/hooks/store/useAliOssConfigs/index.d.ts +20 -0
  26. package/es/hooks/store/useAliOssConfigs/index.mjs +31 -0
  27. package/es/hooks/store/useAliOssConfigs/index.mjs.map +1 -0
  28. package/es/index.css +35 -35
  29. package/es/utils/src/alioss/aliossPutHook.mjs +5 -2
  30. package/es/utils/src/alioss/aliossPutHook.mjs.map +1 -1
  31. package/es/utils/src/alioss/aliossToken.d.ts +6 -6
  32. package/es/utils/src/alioss/aliossToken.mjs +1 -1
  33. package/es/utils/src/alioss/aliossToken.mjs.map +1 -1
  34. package/lib/api/materialApi/cross/getAliOssConfigs.d.ts +14 -0
  35. package/lib/api/materialApi/cross/getAliOssConfigs.js +10 -0
  36. package/lib/api/materialApi/cross/getAliOssConfigs.js.map +1 -0
  37. package/lib/api/materialApi/cross/index.d.ts +1 -1
  38. package/lib/api/materialApi/cross/index.js +2 -2
  39. package/lib/api/materialApi/index.js +2 -2
  40. package/lib/components/src/business/uploadMaterial/UploadMaterial.vue.d.ts +52 -52
  41. package/lib/components/src/business/uploadMaterial/UploadMaterial.vue2.js.map +1 -1
  42. package/lib/components/src/business/uploadMaterial/index.d.ts +4 -4
  43. package/lib/components/src/composite/uploadFile/UploadFile.vue.d.ts +10 -4
  44. package/lib/components/src/composite/uploadFile/UploadFile.vue.js +1 -1
  45. package/lib/components/src/composite/uploadFile/UploadFile.vue2.js +27 -7
  46. package/lib/components/src/composite/uploadFile/UploadFile.vue2.js.map +1 -1
  47. package/lib/components/src/composite/uploadFile/index.d.ts +22 -10
  48. package/lib/components/src/composite/uploadFile/uploadFile.d.ts +30 -28
  49. package/lib/components/src/composite/uploadFile/uploadFile.js.map +1 -1
  50. package/lib/giime/index.js +2 -2
  51. package/lib/giime/version.d.ts +1 -1
  52. package/lib/giime/version.js +1 -1
  53. package/lib/giime/version.js.map +1 -1
  54. package/lib/hooks/index.js +2 -2
  55. package/lib/hooks/store/index.d.ts +1 -1
  56. package/lib/hooks/store/index.js +2 -2
  57. package/lib/hooks/store/useAliOssConfigs/index.d.ts +20 -0
  58. package/lib/hooks/store/useAliOssConfigs/index.js +33 -0
  59. package/lib/hooks/store/useAliOssConfigs/index.js.map +1 -0
  60. package/lib/index.css +35 -35
  61. package/lib/utils/src/alioss/aliossPutHook.js +5 -2
  62. package/lib/utils/src/alioss/aliossPutHook.js.map +1 -1
  63. package/lib/utils/src/alioss/aliossToken.d.ts +6 -6
  64. package/lib/utils/src/alioss/aliossToken.js +1 -1
  65. package/lib/utils/src/alioss/aliossToken.js.map +1 -1
  66. package/package.json +1 -1
  67. package/es/api/materialApi/cross/getAliOssConfigIds.d.ts +0 -14
  68. package/es/api/materialApi/cross/getAliOssConfigIds.mjs +0 -8
  69. package/es/api/materialApi/cross/getAliOssConfigIds.mjs.map +0 -1
  70. package/es/hooks/store/useAliOssConfigIds/index.d.ts +0 -20
  71. package/es/hooks/store/useAliOssConfigIds/index.mjs +0 -31
  72. package/es/hooks/store/useAliOssConfigIds/index.mjs.map +0 -1
  73. package/lib/api/materialApi/cross/getAliOssConfigIds.d.ts +0 -14
  74. package/lib/api/materialApi/cross/getAliOssConfigIds.js +0 -10
  75. package/lib/api/materialApi/cross/getAliOssConfigIds.js.map +0 -1
  76. package/lib/hooks/store/useAliOssConfigIds/index.d.ts +0 -20
  77. package/lib/hooks/store/useAliOssConfigIds/index.js +0 -33
  78. package/lib/hooks/store/useAliOssConfigIds/index.js.map +0 -1
@@ -1,7 +1,10 @@
1
1
  import UploadFile from './UploadFile.vue';
2
2
  export declare const GmUploadFile: import("../../../../utils").SFCWithInstall<{
3
3
  new (...args: any[]): import("vue").CreateComponentPublicInstance<Readonly<import("vue").ExtractPropTypes<{
4
- fileList: import("vue").PropType<import("element-plus").UploadFiles>;
4
+ fileList: {
5
+ required: true;
6
+ type: import("vue").PropType<import("element-plus").UploadFile[]>;
7
+ };
5
8
  checkoutFiles: import("vue").PropType<any[]>;
6
9
  listType: {
7
10
  type: import("vue").PropType<import("element-plus/es/utils/index.js").EpPropMergeType<StringConstructor, "text" | "picture" | "picture-card", unknown>>;
@@ -211,7 +214,7 @@ export declare const GmUploadFile: import("../../../../utils").SFCWithInstall<{
211
214
  disabled: BooleanConstructor;
212
215
  limit: NumberConstructor;
213
216
  }>> & {
214
- "onUpdate:fileList"?: ((fileList: import("element-plus").UploadFiles) => any) | undefined;
217
+ "onUpdate:fileList"?: ((fileList: import("element-plus").UploadFile[]) => any) | undefined;
215
218
  onHandleRemove?: ((file: {
216
219
  file: import("element-plus").UploadFile;
217
220
  index: number;
@@ -699,7 +702,7 @@ export declare const GmUploadFile: import("../../../../utils").SFCWithInstall<{
699
702
  };
700
703
  }) | undefined>;
701
704
  }, unknown, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {
702
- "update:fileList": (fileList: import("element-plus").UploadFiles) => void;
705
+ "update:fileList": (fileList: import("element-plus").UploadFile[]) => void;
703
706
  "update:checkoutFiles": (checkoutFiles: any[]) => void;
704
707
  handleRemove: (file: {
705
708
  file: import("element-plus").UploadFile;
@@ -707,7 +710,10 @@ export declare const GmUploadFile: import("../../../../utils").SFCWithInstall<{
707
710
  }) => void;
708
711
  handleSaveFileSuccess: (file: import("../../../../api/materialApi/index.js").PostSaveFileResourcesData) => void;
709
712
  }, import("vue").VNodeProps & import("vue").AllowedComponentProps & import("vue").ComponentCustomProps & Readonly<import("vue").ExtractPropTypes<{
710
- fileList: import("vue").PropType<import("element-plus").UploadFiles>;
713
+ fileList: {
714
+ required: true;
715
+ type: import("vue").PropType<import("element-plus").UploadFile[]>;
716
+ };
711
717
  checkoutFiles: import("vue").PropType<any[]>;
712
718
  listType: {
713
719
  type: import("vue").PropType<import("element-plus/es/utils/index.js").EpPropMergeType<StringConstructor, "text" | "picture" | "picture-card", unknown>>;
@@ -917,7 +923,7 @@ export declare const GmUploadFile: import("../../../../utils").SFCWithInstall<{
917
923
  disabled: BooleanConstructor;
918
924
  limit: NumberConstructor;
919
925
  }>> & {
920
- "onUpdate:fileList"?: ((fileList: import("element-plus").UploadFiles) => any) | undefined;
926
+ "onUpdate:fileList"?: ((fileList: import("element-plus").UploadFile[]) => any) | undefined;
921
927
  onHandleRemove?: ((file: {
922
928
  file: import("element-plus").UploadFile;
923
929
  index: number;
@@ -974,7 +980,10 @@ export declare const GmUploadFile: import("../../../../utils").SFCWithInstall<{
974
980
  M: {};
975
981
  Defaults: {};
976
982
  }, Readonly<import("vue").ExtractPropTypes<{
977
- fileList: import("vue").PropType<import("element-plus").UploadFiles>;
983
+ fileList: {
984
+ required: true;
985
+ type: import("vue").PropType<import("element-plus").UploadFile[]>;
986
+ };
978
987
  checkoutFiles: import("vue").PropType<any[]>;
979
988
  listType: {
980
989
  type: import("vue").PropType<import("element-plus/es/utils/index.js").EpPropMergeType<StringConstructor, "text" | "picture" | "picture-card", unknown>>;
@@ -1184,7 +1193,7 @@ export declare const GmUploadFile: import("../../../../utils").SFCWithInstall<{
1184
1193
  disabled: BooleanConstructor;
1185
1194
  limit: NumberConstructor;
1186
1195
  }>> & {
1187
- "onUpdate:fileList"?: ((fileList: import("element-plus").UploadFiles) => any) | undefined;
1196
+ "onUpdate:fileList"?: ((fileList: import("element-plus").UploadFile[]) => any) | undefined;
1188
1197
  onHandleRemove?: ((file: {
1189
1198
  file: import("element-plus").UploadFile;
1190
1199
  index: number;
@@ -1718,7 +1727,10 @@ export declare const GmUploadFile: import("../../../../utils").SFCWithInstall<{
1718
1727
  __isTeleport?: undefined;
1719
1728
  __isSuspense?: undefined;
1720
1729
  } & import("vue").ComponentOptionsBase<Readonly<import("vue").ExtractPropTypes<{
1721
- fileList: import("vue").PropType<import("element-plus").UploadFiles>;
1730
+ fileList: {
1731
+ required: true;
1732
+ type: import("vue").PropType<import("element-plus").UploadFile[]>;
1733
+ };
1722
1734
  checkoutFiles: import("vue").PropType<any[]>;
1723
1735
  listType: {
1724
1736
  type: import("vue").PropType<import("element-plus/es/utils/index.js").EpPropMergeType<StringConstructor, "text" | "picture" | "picture-card", unknown>>;
@@ -1928,7 +1940,7 @@ export declare const GmUploadFile: import("../../../../utils").SFCWithInstall<{
1928
1940
  disabled: BooleanConstructor;
1929
1941
  limit: NumberConstructor;
1930
1942
  }>> & {
1931
- "onUpdate:fileList"?: ((fileList: import("element-plus").UploadFiles) => any) | undefined;
1943
+ "onUpdate:fileList"?: ((fileList: import("element-plus").UploadFile[]) => any) | undefined;
1932
1944
  onHandleRemove?: ((file: {
1933
1945
  file: import("element-plus").UploadFile;
1934
1946
  index: number;
@@ -2416,7 +2428,7 @@ export declare const GmUploadFile: import("../../../../utils").SFCWithInstall<{
2416
2428
  };
2417
2429
  }) | undefined>;
2418
2430
  }, unknown, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {
2419
- "update:fileList": (fileList: import("element-plus").UploadFiles) => void;
2431
+ "update:fileList": (fileList: import("element-plus").UploadFile[]) => void;
2420
2432
  "update:checkoutFiles": (checkoutFiles: any[]) => void;
2421
2433
  handleRemove: (file: {
2422
2434
  file: import("element-plus").UploadFile;
@@ -1,5 +1,7 @@
1
1
  import { type PropType } from 'vue';
2
+ import { type UploadFile } from 'element-plus';
2
3
  import type { AliOssResponse } from '../../../../utils/src/alioss/aliossPutHook';
4
+ export type GmUploadFile = Partial<UploadFile>;
3
5
  export type UploadFileResponse = AliOssResponse;
4
6
  export declare const uploadFileProps: {
5
7
  listType: {
@@ -88,11 +90,11 @@ export declare const uploadFileProps: {
88
90
  default: number;
89
91
  };
90
92
  fileList: {
91
- type: PropType<Partial<import("element-plus").UploadFile>[]>;
93
+ type: PropType<Partial<UploadFile>[]>;
92
94
  default: () => never[];
93
95
  };
94
96
  file: {
95
- type: PropType<Partial<import("element-plus").UploadFile>>;
97
+ type: PropType<Partial<UploadFile>>;
96
98
  default: () => {};
97
99
  };
98
100
  url: {
@@ -104,7 +106,7 @@ export declare const uploadFileProps: {
104
106
  default: number;
105
107
  };
106
108
  field: {
107
- type: PropType<keyof import("element-plus").UploadFile>;
109
+ type: PropType<keyof UploadFile>;
108
110
  default: string;
109
111
  };
110
112
  controls: {
@@ -129,62 +131,62 @@ export declare const uploadFileProps: {
129
131
  readonly prototype: any;
130
132
  })[], unknown, unknown, () => void, boolean>;
131
133
  beforeRemove: {
132
- readonly type: PropType<(uploadFile: import("element-plus").UploadFile, uploadFiles: import("element-plus").UploadFiles) => import("element-plus/es/utils").Awaitable<boolean>>;
134
+ readonly type: PropType<(uploadFile: UploadFile, uploadFiles: import("element-plus").UploadFiles) => import("element-plus/es/utils").Awaitable<boolean>>;
133
135
  readonly required: false;
134
136
  readonly validator: ((val: unknown) => boolean) | undefined;
135
137
  __epPropKey: true;
136
138
  };
137
- onRemove: import("element-plus/es/utils").EpPropFinalized<(new (...args: any[]) => (uploadFile: import("element-plus").UploadFile, uploadFiles: import("element-plus").UploadFiles) => void) | (() => (uploadFile: import("element-plus").UploadFile, uploadFiles: import("element-plus").UploadFiles) => void) | {
138
- (): (uploadFile: import("element-plus").UploadFile, uploadFiles: import("element-plus").UploadFiles) => void;
139
+ onRemove: import("element-plus/es/utils").EpPropFinalized<(new (...args: any[]) => (uploadFile: UploadFile, uploadFiles: import("element-plus").UploadFiles) => void) | (() => (uploadFile: UploadFile, uploadFiles: import("element-plus").UploadFiles) => void) | {
140
+ (): (uploadFile: UploadFile, uploadFiles: import("element-plus").UploadFiles) => void;
139
141
  new (): any;
140
142
  readonly prototype: any;
141
- } | ((new (...args: any[]) => (uploadFile: import("element-plus").UploadFile, uploadFiles: import("element-plus").UploadFiles) => void) | (() => (uploadFile: import("element-plus").UploadFile, uploadFiles: import("element-plus").UploadFiles) => void) | {
142
- (): (uploadFile: import("element-plus").UploadFile, uploadFiles: import("element-plus").UploadFiles) => void;
143
+ } | ((new (...args: any[]) => (uploadFile: UploadFile, uploadFiles: import("element-plus").UploadFiles) => void) | (() => (uploadFile: UploadFile, uploadFiles: import("element-plus").UploadFiles) => void) | {
144
+ (): (uploadFile: UploadFile, uploadFiles: import("element-plus").UploadFiles) => void;
143
145
  new (): any;
144
146
  readonly prototype: any;
145
147
  })[], unknown, unknown, () => void, boolean>;
146
- onChange: import("element-plus/es/utils").EpPropFinalized<(new (...args: any[]) => (uploadFile: import("element-plus").UploadFile, uploadFiles: import("element-plus").UploadFiles) => void) | (() => (uploadFile: import("element-plus").UploadFile, uploadFiles: import("element-plus").UploadFiles) => void) | {
147
- (): (uploadFile: import("element-plus").UploadFile, uploadFiles: import("element-plus").UploadFiles) => void;
148
+ onChange: import("element-plus/es/utils").EpPropFinalized<(new (...args: any[]) => (uploadFile: UploadFile, uploadFiles: import("element-plus").UploadFiles) => void) | (() => (uploadFile: UploadFile, uploadFiles: import("element-plus").UploadFiles) => void) | {
149
+ (): (uploadFile: UploadFile, uploadFiles: import("element-plus").UploadFiles) => void;
148
150
  new (): any;
149
151
  readonly prototype: any;
150
- } | ((new (...args: any[]) => (uploadFile: import("element-plus").UploadFile, uploadFiles: import("element-plus").UploadFiles) => void) | (() => (uploadFile: import("element-plus").UploadFile, uploadFiles: import("element-plus").UploadFiles) => void) | {
151
- (): (uploadFile: import("element-plus").UploadFile, uploadFiles: import("element-plus").UploadFiles) => void;
152
+ } | ((new (...args: any[]) => (uploadFile: UploadFile, uploadFiles: import("element-plus").UploadFiles) => void) | (() => (uploadFile: UploadFile, uploadFiles: import("element-plus").UploadFiles) => void) | {
153
+ (): (uploadFile: UploadFile, uploadFiles: import("element-plus").UploadFiles) => void;
152
154
  new (): any;
153
155
  readonly prototype: any;
154
156
  })[], unknown, unknown, () => void, boolean>;
155
- onPreview: import("element-plus/es/utils").EpPropFinalized<(new (...args: any[]) => (uploadFile: import("element-plus").UploadFile) => void) | (() => (uploadFile: import("element-plus").UploadFile) => void) | {
156
- (): (uploadFile: import("element-plus").UploadFile) => void;
157
+ onPreview: import("element-plus/es/utils").EpPropFinalized<(new (...args: any[]) => (uploadFile: UploadFile) => void) | (() => (uploadFile: UploadFile) => void) | {
158
+ (): (uploadFile: UploadFile) => void;
157
159
  new (): any;
158
160
  readonly prototype: any;
159
- } | ((new (...args: any[]) => (uploadFile: import("element-plus").UploadFile) => void) | (() => (uploadFile: import("element-plus").UploadFile) => void) | {
160
- (): (uploadFile: import("element-plus").UploadFile) => void;
161
+ } | ((new (...args: any[]) => (uploadFile: UploadFile) => void) | (() => (uploadFile: UploadFile) => void) | {
162
+ (): (uploadFile: UploadFile) => void;
161
163
  new (): any;
162
164
  readonly prototype: any;
163
165
  })[], unknown, unknown, () => void, boolean>;
164
- onSuccess: import("element-plus/es/utils").EpPropFinalized<(new (...args: any[]) => (response: any, uploadFile: import("element-plus").UploadFile, uploadFiles: import("element-plus").UploadFiles) => void) | (() => (response: any, uploadFile: import("element-plus").UploadFile, uploadFiles: import("element-plus").UploadFiles) => void) | {
165
- (): (response: any, uploadFile: import("element-plus").UploadFile, uploadFiles: import("element-plus").UploadFiles) => void;
166
+ onSuccess: import("element-plus/es/utils").EpPropFinalized<(new (...args: any[]) => (response: any, uploadFile: UploadFile, uploadFiles: import("element-plus").UploadFiles) => void) | (() => (response: any, uploadFile: UploadFile, uploadFiles: import("element-plus").UploadFiles) => void) | {
167
+ (): (response: any, uploadFile: UploadFile, uploadFiles: import("element-plus").UploadFiles) => void;
166
168
  new (): any;
167
169
  readonly prototype: any;
168
- } | ((new (...args: any[]) => (response: any, uploadFile: import("element-plus").UploadFile, uploadFiles: import("element-plus").UploadFiles) => void) | (() => (response: any, uploadFile: import("element-plus").UploadFile, uploadFiles: import("element-plus").UploadFiles) => void) | {
169
- (): (response: any, uploadFile: import("element-plus").UploadFile, uploadFiles: import("element-plus").UploadFiles) => void;
170
+ } | ((new (...args: any[]) => (response: any, uploadFile: UploadFile, uploadFiles: import("element-plus").UploadFiles) => void) | (() => (response: any, uploadFile: UploadFile, uploadFiles: import("element-plus").UploadFiles) => void) | {
171
+ (): (response: any, uploadFile: UploadFile, uploadFiles: import("element-plus").UploadFiles) => void;
170
172
  new (): any;
171
173
  readonly prototype: any;
172
174
  })[], unknown, unknown, () => void, boolean>;
173
- onProgress: import("element-plus/es/utils").EpPropFinalized<(new (...args: any[]) => (evt: import("element-plus").UploadProgressEvent, uploadFile: import("element-plus").UploadFile, uploadFiles: import("element-plus").UploadFiles) => void) | (() => (evt: import("element-plus").UploadProgressEvent, uploadFile: import("element-plus").UploadFile, uploadFiles: import("element-plus").UploadFiles) => void) | {
174
- (): (evt: import("element-plus").UploadProgressEvent, uploadFile: import("element-plus").UploadFile, uploadFiles: import("element-plus").UploadFiles) => void;
175
+ onProgress: import("element-plus/es/utils").EpPropFinalized<(new (...args: any[]) => (evt: import("element-plus").UploadProgressEvent, uploadFile: UploadFile, uploadFiles: import("element-plus").UploadFiles) => void) | (() => (evt: import("element-plus").UploadProgressEvent, uploadFile: UploadFile, uploadFiles: import("element-plus").UploadFiles) => void) | {
176
+ (): (evt: import("element-plus").UploadProgressEvent, uploadFile: UploadFile, uploadFiles: import("element-plus").UploadFiles) => void;
175
177
  new (): any;
176
178
  readonly prototype: any;
177
- } | ((new (...args: any[]) => (evt: import("element-plus").UploadProgressEvent, uploadFile: import("element-plus").UploadFile, uploadFiles: import("element-plus").UploadFiles) => void) | (() => (evt: import("element-plus").UploadProgressEvent, uploadFile: import("element-plus").UploadFile, uploadFiles: import("element-plus").UploadFiles) => void) | {
178
- (): (evt: import("element-plus").UploadProgressEvent, uploadFile: import("element-plus").UploadFile, uploadFiles: import("element-plus").UploadFiles) => void;
179
+ } | ((new (...args: any[]) => (evt: import("element-plus").UploadProgressEvent, uploadFile: UploadFile, uploadFiles: import("element-plus").UploadFiles) => void) | (() => (evt: import("element-plus").UploadProgressEvent, uploadFile: UploadFile, uploadFiles: import("element-plus").UploadFiles) => void) | {
180
+ (): (evt: import("element-plus").UploadProgressEvent, uploadFile: UploadFile, uploadFiles: import("element-plus").UploadFiles) => void;
179
181
  new (): any;
180
182
  readonly prototype: any;
181
183
  })[], unknown, unknown, () => void, boolean>;
182
- onError: import("element-plus/es/utils").EpPropFinalized<(new (...args: any[]) => (error: Error, uploadFile: import("element-plus").UploadFile, uploadFiles: import("element-plus").UploadFiles) => void) | (() => (error: Error, uploadFile: import("element-plus").UploadFile, uploadFiles: import("element-plus").UploadFiles) => void) | {
183
- (): (error: Error, uploadFile: import("element-plus").UploadFile, uploadFiles: import("element-plus").UploadFiles) => void;
184
+ onError: import("element-plus/es/utils").EpPropFinalized<(new (...args: any[]) => (error: Error, uploadFile: UploadFile, uploadFiles: import("element-plus").UploadFiles) => void) | (() => (error: Error, uploadFile: UploadFile, uploadFiles: import("element-plus").UploadFiles) => void) | {
185
+ (): (error: Error, uploadFile: UploadFile, uploadFiles: import("element-plus").UploadFiles) => void;
184
186
  new (): any;
185
187
  readonly prototype: any;
186
- } | ((new (...args: any[]) => (error: Error, uploadFile: import("element-plus").UploadFile, uploadFiles: import("element-plus").UploadFiles) => void) | (() => (error: Error, uploadFile: import("element-plus").UploadFile, uploadFiles: import("element-plus").UploadFiles) => void) | {
187
- (): (error: Error, uploadFile: import("element-plus").UploadFile, uploadFiles: import("element-plus").UploadFiles) => void;
188
+ } | ((new (...args: any[]) => (error: Error, uploadFile: UploadFile, uploadFiles: import("element-plus").UploadFiles) => void) | (() => (error: Error, uploadFile: UploadFile, uploadFiles: import("element-plus").UploadFiles) => void) | {
189
+ (): (error: Error, uploadFile: UploadFile, uploadFiles: import("element-plus").UploadFiles) => void;
188
190
  new (): any;
189
191
  readonly prototype: any;
190
192
  })[], unknown, unknown, () => void, boolean>;
@@ -1 +1 @@
1
- {"version":3,"file":"uploadFile.mjs","sources":["../../../../../../../packages/components/src/composite/uploadFile/uploadFile.ts"],"sourcesContent":["import { type PropType } from 'vue';\r\nimport { type UploadProps, uploadProps } from 'element-plus';\r\nimport { previewFileProps } from '../previewFile';\r\nimport type { AliOssResponse } from '@giime/utils/src/alioss/aliossPutHook';\r\n\r\nexport type UploadFileResponse = AliOssResponse;\r\n\r\nexport const uploadFileProps = {\r\n ...uploadProps,\r\n ...previewFileProps,\r\n listType: {\r\n type: String as PropType<UploadProps['listType']>,\r\n default: 'picture-card',\r\n },\r\n accept: {\r\n type: String,\r\n default: '*',\r\n },\r\n autoUpload: {\r\n type: Boolean,\r\n default: false,\r\n },\r\n drag: {\r\n type: Boolean,\r\n default: true,\r\n },\r\n multiple: {\r\n type: Boolean,\r\n default: true,\r\n },\r\n /** 文件存储位置 */\r\n folder: {\r\n type: String,\r\n default: 'uploadFile',\r\n },\r\n /** 文件存储文件夹 */\r\n seat: {\r\n type: String,\r\n default: 'default',\r\n },\r\n /** 并行上传数量 */\r\n parallel: {\r\n type: Number,\r\n default: null,\r\n },\r\n /** 并行分片大小 */\r\n partSize: {\r\n type: Number,\r\n default: null,\r\n },\r\n /** 阿里oss上传配置 */\r\n options: {\r\n type: Object,\r\n default: () => ({}),\r\n },\r\n /** 阿里oss上传bucket */\r\n bucket: {\r\n type: String,\r\n default: 'giikin-material',\r\n },\r\n /** 文件存储名称 */\r\n fileName: {\r\n type: String,\r\n default: '',\r\n },\r\n /** 是否展示删除按钮 */\r\n showDelete: {\r\n type: Boolean,\r\n default: true,\r\n },\r\n /** 是否开启文件多选 */\r\n checkbox: {\r\n type: Boolean,\r\n default: false,\r\n },\r\n /** 文件是否保存入库 */\r\n saveStore: {\r\n type: Boolean,\r\n default: false,\r\n },\r\n /** cdn */\r\n cdn: {\r\n type: String,\r\n default: 'https://sucai.giikin.cn/',\r\n },\r\n /** 缩略图宽度 */\r\n width: {\r\n type: Number,\r\n default: 120,\r\n },\r\n /** 缩略图高度 */\r\n height: {\r\n type: Number,\r\n default: 120,\r\n },\r\n};\r\n"],"names":[],"mappings":";;;;AAOO,MAAM,eAAkB,GAAA;AAAA,EAC7B,GAAG,WAAA;AAAA,EACH,GAAG,gBAAA;AAAA,EACH,QAAU,EAAA;AAAA,IACR,IAAM,EAAA,MAAA;AAAA,IACN,OAAS,EAAA,cAAA;AAAA,GACX;AAAA,EACA,MAAQ,EAAA;AAAA,IACN,IAAM,EAAA,MAAA;AAAA,IACN,OAAS,EAAA,GAAA;AAAA,GACX;AAAA,EACA,UAAY,EAAA;AAAA,IACV,IAAM,EAAA,OAAA;AAAA,IACN,OAAS,EAAA,KAAA;AAAA,GACX;AAAA,EACA,IAAM,EAAA;AAAA,IACJ,IAAM,EAAA,OAAA;AAAA,IACN,OAAS,EAAA,IAAA;AAAA,GACX;AAAA,EACA,QAAU,EAAA;AAAA,IACR,IAAM,EAAA,OAAA;AAAA,IACN,OAAS,EAAA,IAAA;AAAA,GACX;AAAA;AAAA,EAEA,MAAQ,EAAA;AAAA,IACN,IAAM,EAAA,MAAA;AAAA,IACN,OAAS,EAAA,YAAA;AAAA,GACX;AAAA;AAAA,EAEA,IAAM,EAAA;AAAA,IACJ,IAAM,EAAA,MAAA;AAAA,IACN,OAAS,EAAA,SAAA;AAAA,GACX;AAAA;AAAA,EAEA,QAAU,EAAA;AAAA,IACR,IAAM,EAAA,MAAA;AAAA,IACN,OAAS,EAAA,IAAA;AAAA,GACX;AAAA;AAAA,EAEA,QAAU,EAAA;AAAA,IACR,IAAM,EAAA,MAAA;AAAA,IACN,OAAS,EAAA,IAAA;AAAA,GACX;AAAA;AAAA,EAEA,OAAS,EAAA;AAAA,IACP,IAAM,EAAA,MAAA;AAAA,IACN,OAAA,EAAS,OAAO,EAAC,CAAA;AAAA,GACnB;AAAA;AAAA,EAEA,MAAQ,EAAA;AAAA,IACN,IAAM,EAAA,MAAA;AAAA,IACN,OAAS,EAAA,iBAAA;AAAA,GACX;AAAA;AAAA,EAEA,QAAU,EAAA;AAAA,IACR,IAAM,EAAA,MAAA;AAAA,IACN,OAAS,EAAA,EAAA;AAAA,GACX;AAAA;AAAA,EAEA,UAAY,EAAA;AAAA,IACV,IAAM,EAAA,OAAA;AAAA,IACN,OAAS,EAAA,IAAA;AAAA,GACX;AAAA;AAAA,EAEA,QAAU,EAAA;AAAA,IACR,IAAM,EAAA,OAAA;AAAA,IACN,OAAS,EAAA,KAAA;AAAA,GACX;AAAA;AAAA,EAEA,SAAW,EAAA;AAAA,IACT,IAAM,EAAA,OAAA;AAAA,IACN,OAAS,EAAA,KAAA;AAAA,GACX;AAAA;AAAA,EAEA,GAAK,EAAA;AAAA,IACH,IAAM,EAAA,MAAA;AAAA,IACN,OAAS,EAAA,0BAAA;AAAA,GACX;AAAA;AAAA,EAEA,KAAO,EAAA;AAAA,IACL,IAAM,EAAA,MAAA;AAAA,IACN,OAAS,EAAA,GAAA;AAAA,GACX;AAAA;AAAA,EAEA,MAAQ,EAAA;AAAA,IACN,IAAM,EAAA,MAAA;AAAA,IACN,OAAS,EAAA,GAAA;AAAA,GACX;AACF;;;;"}
1
+ {"version":3,"file":"uploadFile.mjs","sources":["../../../../../../../packages/components/src/composite/uploadFile/uploadFile.ts"],"sourcesContent":["import { type PropType } from 'vue';\r\nimport { type UploadFile, type UploadProps, uploadProps } from 'element-plus';\r\nimport { previewFileProps } from '../previewFile';\r\nimport type { AliOssResponse } from '@giime/utils/src/alioss/aliossPutHook';\r\n\r\nexport type GmUploadFile = Partial<UploadFile>;\r\n\r\nexport type UploadFileResponse = AliOssResponse;\r\n\r\nexport const uploadFileProps = {\r\n ...uploadProps,\r\n ...previewFileProps,\r\n listType: {\r\n type: String as PropType<UploadProps['listType']>,\r\n default: 'picture-card',\r\n },\r\n accept: {\r\n type: String,\r\n default: '*',\r\n },\r\n autoUpload: {\r\n type: Boolean,\r\n default: false,\r\n },\r\n drag: {\r\n type: Boolean,\r\n default: true,\r\n },\r\n multiple: {\r\n type: Boolean,\r\n default: true,\r\n },\r\n /** 文件存储位置 */\r\n folder: {\r\n type: String,\r\n default: 'uploadFile',\r\n },\r\n /** 文件存储文件夹 */\r\n seat: {\r\n type: String,\r\n default: 'default',\r\n },\r\n /** 并行上传数量 */\r\n parallel: {\r\n type: Number,\r\n default: null,\r\n },\r\n /** 并行分片大小 */\r\n partSize: {\r\n type: Number,\r\n default: null,\r\n },\r\n /** 阿里oss上传配置 */\r\n options: {\r\n type: Object,\r\n default: () => ({}),\r\n },\r\n /** 阿里oss上传bucket */\r\n bucket: {\r\n type: String,\r\n default: 'giikin-material',\r\n },\r\n /** 文件存储名称 */\r\n fileName: {\r\n type: String,\r\n default: '',\r\n },\r\n /** 是否展示删除按钮 */\r\n showDelete: {\r\n type: Boolean,\r\n default: true,\r\n },\r\n /** 是否开启文件多选 */\r\n checkbox: {\r\n type: Boolean,\r\n default: false,\r\n },\r\n /** 文件是否保存入库 */\r\n saveStore: {\r\n type: Boolean,\r\n default: false,\r\n },\r\n /** cdn */\r\n cdn: {\r\n type: String,\r\n default: 'https://sucai.giikin.cn/',\r\n },\r\n /** 缩略图宽度 */\r\n width: {\r\n type: Number,\r\n default: 120,\r\n },\r\n /** 缩略图高度 */\r\n height: {\r\n type: Number,\r\n default: 120,\r\n },\r\n};\r\n"],"names":[],"mappings":";;;;AASO,MAAM,eAAkB,GAAA;AAAA,EAC7B,GAAG,WAAA;AAAA,EACH,GAAG,gBAAA;AAAA,EACH,QAAU,EAAA;AAAA,IACR,IAAM,EAAA,MAAA;AAAA,IACN,OAAS,EAAA,cAAA;AAAA,GACX;AAAA,EACA,MAAQ,EAAA;AAAA,IACN,IAAM,EAAA,MAAA;AAAA,IACN,OAAS,EAAA,GAAA;AAAA,GACX;AAAA,EACA,UAAY,EAAA;AAAA,IACV,IAAM,EAAA,OAAA;AAAA,IACN,OAAS,EAAA,KAAA;AAAA,GACX;AAAA,EACA,IAAM,EAAA;AAAA,IACJ,IAAM,EAAA,OAAA;AAAA,IACN,OAAS,EAAA,IAAA;AAAA,GACX;AAAA,EACA,QAAU,EAAA;AAAA,IACR,IAAM,EAAA,OAAA;AAAA,IACN,OAAS,EAAA,IAAA;AAAA,GACX;AAAA;AAAA,EAEA,MAAQ,EAAA;AAAA,IACN,IAAM,EAAA,MAAA;AAAA,IACN,OAAS,EAAA,YAAA;AAAA,GACX;AAAA;AAAA,EAEA,IAAM,EAAA;AAAA,IACJ,IAAM,EAAA,MAAA;AAAA,IACN,OAAS,EAAA,SAAA;AAAA,GACX;AAAA;AAAA,EAEA,QAAU,EAAA;AAAA,IACR,IAAM,EAAA,MAAA;AAAA,IACN,OAAS,EAAA,IAAA;AAAA,GACX;AAAA;AAAA,EAEA,QAAU,EAAA;AAAA,IACR,IAAM,EAAA,MAAA;AAAA,IACN,OAAS,EAAA,IAAA;AAAA,GACX;AAAA;AAAA,EAEA,OAAS,EAAA;AAAA,IACP,IAAM,EAAA,MAAA;AAAA,IACN,OAAA,EAAS,OAAO,EAAC,CAAA;AAAA,GACnB;AAAA;AAAA,EAEA,MAAQ,EAAA;AAAA,IACN,IAAM,EAAA,MAAA;AAAA,IACN,OAAS,EAAA,iBAAA;AAAA,GACX;AAAA;AAAA,EAEA,QAAU,EAAA;AAAA,IACR,IAAM,EAAA,MAAA;AAAA,IACN,OAAS,EAAA,EAAA;AAAA,GACX;AAAA;AAAA,EAEA,UAAY,EAAA;AAAA,IACV,IAAM,EAAA,OAAA;AAAA,IACN,OAAS,EAAA,IAAA;AAAA,GACX;AAAA;AAAA,EAEA,QAAU,EAAA;AAAA,IACR,IAAM,EAAA,OAAA;AAAA,IACN,OAAS,EAAA,KAAA;AAAA,GACX;AAAA;AAAA,EAEA,SAAW,EAAA;AAAA,IACT,IAAM,EAAA,OAAA;AAAA,IACN,OAAS,EAAA,KAAA;AAAA,GACX;AAAA;AAAA,EAEA,GAAK,EAAA;AAAA,IACH,IAAM,EAAA,MAAA;AAAA,IACN,OAAS,EAAA,0BAAA;AAAA,GACX;AAAA;AAAA,EAEA,KAAO,EAAA;AAAA,IACL,IAAM,EAAA,MAAA;AAAA,IACN,OAAS,EAAA,GAAA;AAAA,GACX;AAAA;AAAA,EAEA,MAAQ,EAAA;AAAA,IACN,IAAM,EAAA,MAAA;AAAA,IACN,OAAS,EAAA,GAAA;AAAA,GACX;AACF;;;;"}
@@ -315,7 +315,7 @@ export { useAreaListStore } from '../hooks/store/userCenter/useAreaList/index.mj
315
315
  export { useRoleListStore } from '../hooks/store/userCenter/useRoleList/index.mjs';
316
316
  export { useOrgTreeListStore } from '../hooks/store/userCenter/useOrgTreeList/index.mjs';
317
317
  export { usePlatformListStore } from '../hooks/store/usePlatformList/index.mjs';
318
- export { useAliOssConfigIdsStore } from '../hooks/store/useAliOssConfigIds/index.mjs';
318
+ export { useAliOssConfigsStore } from '../hooks/store/useAliOssConfigs/index.mjs';
319
319
 
320
320
  const install = installer.install;
321
321
  const version = installer.version;
@@ -1 +1 @@
1
- export declare const version = "0.5.11";
1
+ export declare const version = "0.5.12";
@@ -1,4 +1,4 @@
1
- const version = "0.5.10";
1
+ const version = "0.5.12";
2
2
 
3
3
  export { version };
4
4
  //# sourceMappingURL=version.mjs.map
@@ -1 +1 @@
1
- {"version":3,"file":"version.mjs","sources":["../../../../packages/giime/version.ts"],"sourcesContent":["export const version = '0.5.10';\n"],"names":[],"mappings":"AAAO,MAAM,OAAU,GAAA;;;;"}
1
+ {"version":3,"file":"version.mjs","sources":["../../../../packages/giime/version.ts"],"sourcesContent":["export const version = '0.5.12';\n"],"names":[],"mappings":"AAAO,MAAM,OAAU,GAAA;;;;"}
@@ -23,5 +23,5 @@ export { useAreaListStore } from './store/userCenter/useAreaList/index.mjs';
23
23
  export { useRoleListStore } from './store/userCenter/useRoleList/index.mjs';
24
24
  export { useOrgTreeListStore } from './store/userCenter/useOrgTreeList/index.mjs';
25
25
  export { usePlatformListStore } from './store/usePlatformList/index.mjs';
26
- export { useAliOssConfigIdsStore } from './store/useAliOssConfigIds/index.mjs';
26
+ export { useAliOssConfigsStore } from './store/useAliOssConfigs/index.mjs';
27
27
  //# sourceMappingURL=index.mjs.map
@@ -10,4 +10,4 @@ export * from './useRepiteFilter';
10
10
  export * from './common';
11
11
  export * from './userCenter';
12
12
  export * from './usePlatformList';
13
- export * from './useAliOssConfigIds';
13
+ export * from './useAliOssConfigs';
@@ -10,7 +10,7 @@ export { useRepiteFilterStore } from './useRepiteFilter/index.mjs';
10
10
  import './common/index.mjs';
11
11
  import './userCenter/index.mjs';
12
12
  export { usePlatformListStore } from './usePlatformList/index.mjs';
13
- export { useAliOssConfigIdsStore } from './useAliOssConfigIds/index.mjs';
13
+ export { useAliOssConfigsStore } from './useAliOssConfigs/index.mjs';
14
14
  export { useCurrencyListStore } from './common/useCurrencyList/index.mjs';
15
15
  export { useCountryListStore } from './common/useCountryList/index.mjs';
16
16
  export { useSystemListStore } from './common/useSystemList/index.mjs';
@@ -0,0 +1,20 @@
1
+ /** 阿里云oss配置id */
2
+ export declare const useAliOssConfigsStore: import("pinia").StoreDefinition<"gmaliOssConfigs", import("pinia")._UnwrapAll<Pick<{
3
+ isLoading: import("vue").Ref<boolean>;
4
+ aliOssConfigs: import("vue").Ref<{
5
+ config_ids: string[];
6
+ } | null>;
7
+ getaliOssConfigsAsync: () => Promise<void>;
8
+ }, "isLoading" | "aliOssConfigs">>, Pick<{
9
+ isLoading: import("vue").Ref<boolean>;
10
+ aliOssConfigs: import("vue").Ref<{
11
+ config_ids: string[];
12
+ } | null>;
13
+ getaliOssConfigsAsync: () => Promise<void>;
14
+ }, never>, Pick<{
15
+ isLoading: import("vue").Ref<boolean>;
16
+ aliOssConfigs: import("vue").Ref<{
17
+ config_ids: string[];
18
+ } | null>;
19
+ getaliOssConfigsAsync: () => Promise<void>;
20
+ }, "getaliOssConfigsAsync">>;
@@ -0,0 +1,31 @@
1
+ import { ref, onMounted } from 'vue';
2
+ import { defineStore } from 'pinia';
3
+ import '../../../api/materialApi/index.mjs';
4
+ import { getAliOssConfigs } from '../../../api/materialApi/cross/getAliOssConfigs.mjs';
5
+
6
+ const useAliOssConfigsStore = defineStore("gmaliOssConfigs", () => {
7
+ const aliOssConfigs = ref(null);
8
+ const isLoading = ref(false);
9
+ const getaliOssConfigsAsync = async () => {
10
+ if (aliOssConfigs.value)
11
+ return;
12
+ isLoading.value = true;
13
+ try {
14
+ const { data } = await getAliOssConfigs();
15
+ aliOssConfigs.value = data.data;
16
+ } finally {
17
+ isLoading.value = false;
18
+ }
19
+ };
20
+ onMounted(() => {
21
+ getaliOssConfigsAsync();
22
+ });
23
+ return {
24
+ isLoading,
25
+ aliOssConfigs,
26
+ getaliOssConfigsAsync
27
+ };
28
+ });
29
+
30
+ export { useAliOssConfigsStore };
31
+ //# sourceMappingURL=index.mjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.mjs","sources":["../../../../../../packages/hooks/store/useAliOssConfigs/index.ts"],"sourcesContent":["import { onMounted, ref } from 'vue';\r\nimport { defineStore } from 'pinia';\r\nimport { type GetAliOssConfigsResponseData, getAliOssConfigs } from '@giime/api/materialApi';\r\n\r\n/** 阿里云oss配置id */\r\nexport const useAliOssConfigsStore = defineStore('gmaliOssConfigs', () => {\r\n const aliOssConfigs = ref<GetAliOssConfigsResponseData | null>(null);\r\n const isLoading = ref(false);\r\n\r\n const getaliOssConfigsAsync = async () => {\r\n if (aliOssConfigs.value) return;\r\n isLoading.value = true;\r\n try {\r\n const { data } = await getAliOssConfigs();\r\n aliOssConfigs.value = data.data;\r\n } finally {\r\n isLoading.value = false;\r\n }\r\n };\r\n\r\n onMounted(() => {\r\n getaliOssConfigsAsync();\r\n });\r\n\r\n return {\r\n isLoading,\r\n aliOssConfigs,\r\n getaliOssConfigsAsync,\r\n };\r\n});\r\n"],"names":[],"mappings":";;;;;AAKa,MAAA,qBAAA,GAAwB,WAAY,CAAA,iBAAA,EAAmB,MAAM;AACxE,EAAM,MAAA,aAAA,GAAgB,IAAyC,IAAI,CAAA,CAAA;AACnE,EAAM,MAAA,SAAA,GAAY,IAAI,KAAK,CAAA,CAAA;AAE3B,EAAA,MAAM,wBAAwB,YAAY;AACxC,IAAA,IAAI,aAAc,CAAA,KAAA;AAAO,MAAA,OAAA;AACzB,IAAA,SAAA,CAAU,KAAQ,GAAA,IAAA,CAAA;AAClB,IAAI,IAAA;AACF,MAAA,MAAM,EAAE,IAAA,EAAS,GAAA,MAAM,gBAAiB,EAAA,CAAA;AACxC,MAAA,aAAA,CAAc,QAAQ,IAAK,CAAA,IAAA,CAAA;AAAA,KAC3B,SAAA;AACA,MAAA,SAAA,CAAU,KAAQ,GAAA,KAAA,CAAA;AAAA,KACpB;AAAA,GACF,CAAA;AAEA,EAAA,SAAA,CAAU,MAAM;AACd,IAAsB,qBAAA,EAAA,CAAA;AAAA,GACvB,CAAA,CAAA;AAED,EAAO,OAAA;AAAA,IACL,SAAA;AAAA,IACA,aAAA;AAAA,IACA,qBAAA;AAAA,GACF,CAAA;AACF,CAAC;;;;"}
package/es/index.css CHANGED
@@ -806,16 +806,12 @@ video {
806
806
  margin: 0;
807
807
  }
808
808
 
809
- .gm-upload-preview-dialog[data-v-e28fc09f] [data-v-e28fc09f] .el-dialog__body {
810
- padding: 0;
809
+ .gm-flex-center[data-v-2a79bac9] {
810
+ align-items: center;
811
811
  }
812
812
 
813
- .gm-upload-file-picture-card[data-v-e28fc09f] [data-v-e28fc09f] .el-upload-list__item, .gm-upload-file-picture-card[data-v-e28fc09f] [data-v-e28fc09f] .el-upload--picture-card {
814
- width: 120px;
815
- height: 120px;
816
- display: flex;
817
- align-items: center;
818
- justify-content: center;
813
+ .gm-flex-justify-between[data-v-2a79bac9] {
814
+ justify-content: space-between;
819
815
  }
820
816
  .circular[data-v-b391445c] {
821
817
  animation: loading-rotate-b391445c 2s linear infinite;
@@ -848,12 +844,28 @@ video {
848
844
  stroke-dashoffset: -120px;
849
845
  }
850
846
  }
851
- .gm-flex-center[data-v-2a79bac9] {
852
- align-items: center;
847
+ [data-v-668dc408] .gmTableNoBorder .el-table__body .el-table__cell {
848
+ border-right: none;
853
849
  }
854
850
 
855
- .gm-flex-justify-between[data-v-2a79bac9] {
856
- justify-content: space-between;
851
+ [data-v-668dc408] .gmTableNoBorder .el-table__inner-wrapper:before {
852
+ height: 0;
853
+ }
854
+
855
+ [data-v-668dc408] .gmTableNoBorder.el-table--border .el-table__inner-wrapper:after {
856
+ height: 0;
857
+ }
858
+
859
+ [data-v-668dc408] .gmTableNoBorder.el-table--border:after {
860
+ height: 0;
861
+ }
862
+
863
+ [data-v-668dc408] .gmTableNoBorder.el-table--border:before {
864
+ height: 0;
865
+ }
866
+
867
+ [data-v-668dc408] .gmTableNoBorder .el-table__border-left-patch {
868
+ height: 0;
857
869
  }
858
870
  [data-v-7b6755e2] .gmSearchForm .el-form-item {
859
871
  margin-right: 0;
@@ -885,6 +897,17 @@ video {
885
897
  .gm-upload-file-disabled .el-upload-list__item-status-label {
886
898
  display: none;
887
899
  }
900
+ .gm-upload-preview-dialog[data-v-5de3f0ab] [data-v-5de3f0ab] .el-dialog__body {
901
+ padding: 0;
902
+ }
903
+
904
+ .gm-upload-file-picture-card[data-v-5de3f0ab] [data-v-5de3f0ab] .el-upload-list__item, .gm-upload-file-picture-card[data-v-5de3f0ab] [data-v-5de3f0ab] .el-upload--picture-card {
905
+ width: 120px;
906
+ height: 120px;
907
+ display: flex;
908
+ align-items: center;
909
+ justify-content: center;
910
+ }
888
911
  .gm-number-interval-single[data-v-47a13fd0] {
889
912
  border-radius: var(--el-input-border-radius, var(--el-border-radius-base));
890
913
  box-shadow: 0 0 0 1px var(--el-input-border-color, var(--el-border-color)) inset;
@@ -903,29 +926,6 @@ video {
903
926
  .gm-number-interval-single[data-v-47a13fd0]:hover .gm-number-interval-close[data-v-47a13fd0] {
904
927
  display: flex;
905
928
  }
906
- [data-v-668dc408] .gmTableNoBorder .el-table__body .el-table__cell {
907
- border-right: none;
908
- }
909
-
910
- [data-v-668dc408] .gmTableNoBorder .el-table__inner-wrapper:before {
911
- height: 0;
912
- }
913
-
914
- [data-v-668dc408] .gmTableNoBorder.el-table--border .el-table__inner-wrapper:after {
915
- height: 0;
916
- }
917
-
918
- [data-v-668dc408] .gmTableNoBorder.el-table--border:after {
919
- height: 0;
920
- }
921
-
922
- [data-v-668dc408] .gmTableNoBorder.el-table--border:before {
923
- height: 0;
924
- }
925
-
926
- [data-v-668dc408] .gmTableNoBorder .el-table__border-left-patch {
927
- height: 0;
928
- }
929
929
 
930
930
  .pagination-container[data-v-19230954] {
931
931
  background: #fff;
@@ -103,7 +103,10 @@ const useAliossHookStore = defineStore("aliossHook", () => {
103
103
  ContentDisposition: `attachment;filename=${encodeURIComponent(name)}${ext};filename*=${encodeURIComponent(name)}${ext}`,
104
104
  ...options
105
105
  };
106
- const { AccessKeyId, AccessKeySecret, SecurityToken } = await useAliossTokenStore().getAliossTokenAsync({ config_id: null });
106
+ const bucketName = bucket || "giikin-material";
107
+ const { AccessKeyId, AccessKeySecret, SecurityToken } = await useAliossTokenStore().getAliossTokenAsync({
108
+ config_id: bucketName
109
+ });
107
110
  const client = new AliOss({
108
111
  // yourRegion填写Bucket所在地域。以华东1(杭州)为例,Region填写为oss-cn-hangzhou。
109
112
  region: "oss-cn-shenzhen",
@@ -114,7 +117,7 @@ const useAliossHookStore = defineStore("aliossHook", () => {
114
117
  // 刷新临时访问凭证的时间间隔,单位为毫秒。
115
118
  refreshSTSTokenInterval: 3e5,
116
119
  // 填写Bucket名称。
117
- bucket: bucket ?? "giikin-material"
120
+ bucket: bucketName
118
121
  });
119
122
  const upload = options.parallel === 1 ? "put" : "multipartUpload";
120
123
  const { res } = await client[upload](path, file, options);
@@ -1 +1 @@
1
- {"version":3,"file":"aliossPutHook.mjs","sources":["../../../../../../packages/utils/src/alioss/aliossPutHook.ts"],"sourcesContent":["import { defineStore } from 'pinia';\r\nimport { createEventHook } from '@vueuse/core';\r\nimport { md5 } from 'js-md5';\r\nimport AliOss from 'ali-oss';\r\nimport { type PostSaveFileResourcesData, getAdFileExist, postSaveFileResources } from '@giime/api/materialApi';\r\nimport useAliossTokenStore from './aliossToken';\r\n\r\nexport type PostSaveFileResponse = PostSaveFileResourcesData;\r\nexport type UploadAliOssFile = File & { uid: number };\r\n\r\n/** 上传文件到阿里云 */\r\nexport type AliOssParams = {\r\n /** 资源文件 */\r\n file: UploadAliOssFile;\r\n /** 文件名 */\r\n fileName?: string;\r\n /** 文件存储路径 */\r\n folder?: string;\r\n /** 文件存储位置 */\r\n seat?: string;\r\n /** 并行上传数量 */\r\n parallel?: number;\r\n /** 并行分片大小 */\r\n partSize?: number;\r\n /** 阿里上传配置 */\r\n options?: { [key: string]: any };\r\n /** 阿里服务器 Bucket 名称 */\r\n bucket?: string;\r\n /** cdn */\r\n cdn?: string;\r\n /** 文件是否保存入库 */\r\n saveStore?: boolean;\r\n};\r\n\r\n/** 返回数据 */\r\nexport type AliOssResponse = {\r\n /** 文件地址 */\r\n url: string;\r\n /** 文件名 */\r\n name: string;\r\n /** 文件唯一标识 */\r\n uid: number;\r\n /** 文件最后修改时间 */\r\n lastModified: number;\r\n /** 文件md5 */\r\n md5: string;\r\n /** 文件大小 */\r\n size: number;\r\n /** 文件后缀 */\r\n type: string;\r\n /** 文件库是否存在 */\r\n isExist: boolean;\r\n};\r\n\r\nexport const ts_md5_file = (file: File) => {\r\n return new Promise<string>(resolve => {\r\n const reader = new FileReader();\r\n reader.onload = async function (e) {\r\n const binary = (e.target as any).result;\r\n resolve(md5(binary));\r\n };\r\n reader.readAsArrayBuffer(file);\r\n });\r\n};\r\n\r\n/** 文件分片 */\r\nexport const getParallelPartSize = (size: number) => {\r\n const thresholds = [\r\n {\r\n max: 5,\r\n parallel: 1,\r\n multiplier: 5,\r\n },\r\n {\r\n max: 10,\r\n parallel: 2,\r\n multiplier: 4,\r\n },\r\n {\r\n max: 30,\r\n parallel: 4,\r\n multiplier: 5,\r\n },\r\n {\r\n max: 50,\r\n parallel: 6,\r\n multiplier: 6,\r\n },\r\n {\r\n max: Number.POSITIVE_INFINITY,\r\n parallel: 8,\r\n multiplier: 8,\r\n },\r\n ];\r\n const { parallel, multiplier } = thresholds.find(({ max }) => size <= max) || thresholds[thresholds.length - 1];\r\n\r\n return {\r\n parallel,\r\n partSize: multiplier * 1024 * 1024,\r\n };\r\n};\r\n\r\n/** 上传 Hook */\r\nexport const useAliossHookStore = defineStore('aliossHook', () => {\r\n const aliossResult = createEventHook<AliOssResponse>();\r\n const aliossError = createEventHook<any>();\r\n const saveFileResult = createEventHook<PostSaveFileResponse>();\r\n const saveFileError = createEventHook<any>();\r\n\r\n /** 检测广告素材是否已存在 */\r\n const getFileExist = async ({\r\n md5Code,\r\n ext,\r\n name,\r\n size,\r\n uid,\r\n lastModified,\r\n }: {\r\n md5Code: string;\r\n ext: string;\r\n name: string;\r\n size: number;\r\n uid: number;\r\n lastModified: number;\r\n }) => {\r\n // eslint-disable-next-line no-async-promise-executor\r\n return new Promise<AliOssResponse | false>(async resolve => {\r\n const { data } = await getAdFileExist({ md5Code, ext });\r\n if (data.code !== 0 || data.data.count === 0) {\r\n return resolve(false);\r\n }\r\n const result = {\r\n name,\r\n uid,\r\n lastModified,\r\n size,\r\n url: data.data.url,\r\n md5: md5Code,\r\n type: ext,\r\n isExist: true,\r\n };\r\n resolve(result);\r\n aliossResult.trigger(result);\r\n });\r\n };\r\n\r\n /** 上传文件 */\r\n const uploadFile = async ({ file, fileName, folder, seat, parallel, partSize, options, bucket, cdn, saveStore }: AliOssParams) => {\r\n let { name, uid, lastModified, size } = file;\r\n const ext = name.match(/\\.(\\w+)$/)?.[0] || '';\r\n name = (fileName || name).slice(0, name.lastIndexOf('.'));\r\n const md5Code = await ts_md5_file(file);\r\n const FileName = name + ext;\r\n const type = ext.replaceAll('.', '');\r\n\r\n try {\r\n let result = await getFileExist({ md5Code, ext: type, name: FileName, size, uid, lastModified });\r\n if (result) return result;\r\n\r\n // 文件存储路径\r\n const timestr = Date.now();\r\n const path = `${folder ?? 'material'}/${seat ?? 'default'}/file-${timestr}-${md5Code}${ext}`;\r\n\r\n const P = getParallelPartSize(size);\r\n options = {\r\n ...P,\r\n ...{ parallel, partSize },\r\n ContentDisposition: `attachment;filename=${encodeURIComponent(name)}${ext};filename*=${encodeURIComponent(name)}${ext}`,\r\n ...options,\r\n };\r\n\r\n // 阿里云临时上传权限\r\n const { AccessKeyId, AccessKeySecret, SecurityToken } = await useAliossTokenStore().getAliossTokenAsync({ config_id: null });\r\n\r\n const client = new AliOss({\r\n // yourRegion填写Bucket所在地域。以华东1(杭州)为例,Region填写为oss-cn-hangzhou。\r\n region: 'oss-cn-shenzhen',\r\n // 从STS服务获取的临时访问密钥(AccessKey ID、AccessKey Secret、StsToken)。\r\n accessKeyId: AccessKeyId,\r\n accessKeySecret: AccessKeySecret,\r\n stsToken: SecurityToken,\r\n // 刷新临时访问凭证的时间间隔,单位为毫秒。\r\n refreshSTSTokenInterval: 300000,\r\n // 填写Bucket名称。\r\n bucket: bucket ?? 'giikin-material',\r\n });\r\n\r\n const upload = options.parallel === 1 ? 'put' : 'multipartUpload';\r\n const { res } = await client[upload](path, file, options);\r\n if (res.status !== 200) {\r\n aliossError.trigger(res);\r\n return res;\r\n }\r\n cdn = cdn ?? 'https://sucai.giikin.cn/';\r\n const resultUrl = cdn + path;\r\n result = {\r\n url: resultUrl,\r\n name: name + ext,\r\n md5: md5Code,\r\n type: ext.replaceAll('.', ''),\r\n uid,\r\n lastModified,\r\n size,\r\n isExist: false,\r\n };\r\n if (saveStore) {\r\n postSaveFile({ url: resultUrl, md5_code: md5Code, file_size: size });\r\n }\r\n aliossResult.trigger(result);\r\n return result;\r\n } catch (error) {\r\n aliossError.trigger(error);\r\n return error;\r\n }\r\n };\r\n\r\n /** 文件入库 */\r\n const postSaveFile = async ({ url, md5_code, file_size }: PostSaveFileResourcesData) => {\r\n try {\r\n const { data } = await postSaveFileResources({ fileData: { url, md5_code, file_size } });\r\n if (data?.code !== 0) {\r\n saveFileError.trigger(data);\r\n return data;\r\n }\r\n const result = {\r\n url,\r\n md5_code,\r\n file_size,\r\n };\r\n saveFileResult.trigger(result);\r\n return result;\r\n } catch (error) {\r\n saveFileError.trigger(error);\r\n return error;\r\n }\r\n };\r\n return {\r\n aliossResult: aliossResult.on,\r\n aliossError: aliossError.on,\r\n saveFileResult: saveFileResult.on,\r\n saveFileError: saveFileError.on,\r\n uploadFile,\r\n postSaveFile,\r\n };\r\n});\r\n"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"aliossPutHook.mjs","sources":["../../../../../../packages/utils/src/alioss/aliossPutHook.ts"],"sourcesContent":["import { defineStore } from 'pinia';\r\nimport { createEventHook } from '@vueuse/core';\r\nimport { md5 } from 'js-md5';\r\nimport AliOss from 'ali-oss';\r\nimport { type PostSaveFileResourcesData, getAdFileExist, postSaveFileResources } from '@giime/api/materialApi';\r\nimport useAliossTokenStore from './aliossToken';\r\n\r\nexport type PostSaveFileResponse = PostSaveFileResourcesData;\r\nexport type UploadAliOssFile = File & { uid: number };\r\n\r\n/** 上传文件到阿里云 */\r\nexport type AliOssParams = {\r\n /** 资源文件 */\r\n file: UploadAliOssFile;\r\n /** 文件名 */\r\n fileName?: string;\r\n /** 文件存储路径 */\r\n folder?: string;\r\n /** 文件存储位置 */\r\n seat?: string;\r\n /** 并行上传数量 */\r\n parallel?: number;\r\n /** 并行分片大小 */\r\n partSize?: number;\r\n /** 阿里上传配置 */\r\n options?: { [key: string]: any };\r\n /** 阿里服务器 Bucket 名称 */\r\n bucket?: string;\r\n /** cdn */\r\n cdn?: string;\r\n /** 文件是否保存入库 */\r\n saveStore?: boolean;\r\n};\r\n\r\n/** 返回数据 */\r\nexport type AliOssResponse = {\r\n /** 文件地址 */\r\n url: string;\r\n /** 文件名 */\r\n name: string;\r\n /** 文件唯一标识 */\r\n uid: number;\r\n /** 文件最后修改时间 */\r\n lastModified: number;\r\n /** 文件md5 */\r\n md5: string;\r\n /** 文件大小 */\r\n size: number;\r\n /** 文件后缀 */\r\n type: string;\r\n /** 文件库是否存在 */\r\n isExist: boolean;\r\n};\r\n\r\nexport const ts_md5_file = (file: File) => {\r\n return new Promise<string>(resolve => {\r\n const reader = new FileReader();\r\n reader.onload = async function (e) {\r\n const binary = (e.target as any).result;\r\n resolve(md5(binary));\r\n };\r\n reader.readAsArrayBuffer(file);\r\n });\r\n};\r\n\r\n/** 文件分片 */\r\nexport const getParallelPartSize = (size: number) => {\r\n const thresholds = [\r\n {\r\n max: 5,\r\n parallel: 1,\r\n multiplier: 5,\r\n },\r\n {\r\n max: 10,\r\n parallel: 2,\r\n multiplier: 4,\r\n },\r\n {\r\n max: 30,\r\n parallel: 4,\r\n multiplier: 5,\r\n },\r\n {\r\n max: 50,\r\n parallel: 6,\r\n multiplier: 6,\r\n },\r\n {\r\n max: Number.POSITIVE_INFINITY,\r\n parallel: 8,\r\n multiplier: 8,\r\n },\r\n ];\r\n const { parallel, multiplier } = thresholds.find(({ max }) => size <= max) || thresholds[thresholds.length - 1];\r\n\r\n return {\r\n parallel,\r\n partSize: multiplier * 1024 * 1024,\r\n };\r\n};\r\n\r\n/** 上传 Hook */\r\nexport const useAliossHookStore = defineStore('aliossHook', () => {\r\n const aliossResult = createEventHook<AliOssResponse>();\r\n const aliossError = createEventHook<any>();\r\n const saveFileResult = createEventHook<PostSaveFileResponse>();\r\n const saveFileError = createEventHook<any>();\r\n\r\n /** 检测广告素材是否已存在 */\r\n const getFileExist = async ({\r\n md5Code,\r\n ext,\r\n name,\r\n size,\r\n uid,\r\n lastModified,\r\n }: {\r\n md5Code: string;\r\n ext: string;\r\n name: string;\r\n size: number;\r\n uid: number;\r\n lastModified: number;\r\n }) => {\r\n // eslint-disable-next-line no-async-promise-executor\r\n return new Promise<AliOssResponse | false>(async resolve => {\r\n const { data } = await getAdFileExist({ md5Code, ext });\r\n if (data.code !== 0 || data.data.count === 0) {\r\n return resolve(false);\r\n }\r\n const result = {\r\n name,\r\n uid,\r\n lastModified,\r\n size,\r\n url: data.data.url,\r\n md5: md5Code,\r\n type: ext,\r\n isExist: true,\r\n };\r\n resolve(result);\r\n aliossResult.trigger(result);\r\n });\r\n };\r\n\r\n /** 上传文件 */\r\n const uploadFile = async ({ file, fileName, folder, seat, parallel, partSize, options, bucket, cdn, saveStore }: AliOssParams) => {\r\n let { name, uid, lastModified, size } = file;\r\n const ext = name.match(/\\.(\\w+)$/)?.[0] || '';\r\n name = (fileName || name).slice(0, name.lastIndexOf('.'));\r\n const md5Code = await ts_md5_file(file);\r\n const FileName = name + ext;\r\n const type = ext.replaceAll('.', '');\r\n\r\n try {\r\n let result = await getFileExist({ md5Code, ext: type, name: FileName, size, uid, lastModified });\r\n if (result) return result;\r\n\r\n // 文件存储路径\r\n const timestr = Date.now();\r\n const path = `${folder ?? 'material'}/${seat ?? 'default'}/file-${timestr}-${md5Code}${ext}`;\r\n\r\n const P = getParallelPartSize(size);\r\n options = {\r\n ...P,\r\n ...{ parallel, partSize },\r\n ContentDisposition: `attachment;filename=${encodeURIComponent(name)}${ext};filename*=${encodeURIComponent(name)}${ext}`,\r\n ...options,\r\n };\r\n\r\n // 阿里云临时上传权限\r\n // 使用组件 props 的默认值\r\n const bucketName = bucket || 'giikin-material';\r\n const { AccessKeyId, AccessKeySecret, SecurityToken } = await useAliossTokenStore().getAliossTokenAsync({\r\n config_id: bucketName,\r\n });\r\n\r\n const client = new AliOss({\r\n // yourRegion填写Bucket所在地域。以华东1(杭州)为例,Region填写为oss-cn-hangzhou。\r\n region: 'oss-cn-shenzhen',\r\n // 从STS服务获取的临时访问密钥(AccessKey ID、AccessKey Secret、StsToken)。\r\n accessKeyId: AccessKeyId,\r\n accessKeySecret: AccessKeySecret,\r\n stsToken: SecurityToken,\r\n // 刷新临时访问凭证的时间间隔,单位为毫秒。\r\n refreshSTSTokenInterval: 300000,\r\n // 填写Bucket名称。\r\n bucket: bucketName,\r\n });\r\n\r\n const upload = options.parallel === 1 ? 'put' : 'multipartUpload';\r\n const { res } = await client[upload](path, file, options);\r\n if (res.status !== 200) {\r\n aliossError.trigger(res);\r\n return res;\r\n }\r\n cdn = cdn ?? 'https://sucai.giikin.cn/';\r\n const resultUrl = cdn + path;\r\n result = {\r\n url: resultUrl,\r\n name: name + ext,\r\n md5: md5Code,\r\n type: ext.replaceAll('.', ''),\r\n uid,\r\n lastModified,\r\n size,\r\n isExist: false,\r\n };\r\n if (saveStore) {\r\n postSaveFile({ url: resultUrl, md5_code: md5Code, file_size: size });\r\n }\r\n aliossResult.trigger(result);\r\n return result;\r\n } catch (error) {\r\n aliossError.trigger(error);\r\n return error;\r\n }\r\n };\r\n\r\n /** 文件入库 */\r\n const postSaveFile = async ({ url, md5_code, file_size }: PostSaveFileResourcesData) => {\r\n try {\r\n const { data } = await postSaveFileResources({ fileData: { url, md5_code, file_size } });\r\n if (data?.code !== 0) {\r\n saveFileError.trigger(data);\r\n return data;\r\n }\r\n const result = {\r\n url,\r\n md5_code,\r\n file_size,\r\n };\r\n saveFileResult.trigger(result);\r\n return result;\r\n } catch (error) {\r\n saveFileError.trigger(error);\r\n return error;\r\n }\r\n };\r\n return {\r\n aliossResult: aliossResult.on,\r\n aliossError: aliossError.on,\r\n saveFileResult: saveFileResult.on,\r\n saveFileError: saveFileError.on,\r\n uploadFile,\r\n postSaveFile,\r\n };\r\n});\r\n"],"names":[],"mappings":";;;;;;;;;AAsDa,MAAA,WAAA,GAAc,CAAC,IAAe,KAAA;AACzC,EAAO,OAAA,IAAI,QAAgB,CAAW,OAAA,KAAA;AACpC,IAAM,MAAA,MAAA,GAAS,IAAI,UAAW,EAAA,CAAA;AAC9B,IAAO,MAAA,CAAA,MAAA,GAAS,eAAgB,CAAG,EAAA;AACjC,MAAM,MAAA,MAAA,GAAU,EAAE,MAAe,CAAA,MAAA,CAAA;AACjC,MAAQ,OAAA,CAAA,GAAA,CAAI,MAAM,CAAC,CAAA,CAAA;AAAA,KACrB,CAAA;AACA,IAAA,MAAA,CAAO,kBAAkB,IAAI,CAAA,CAAA;AAAA,GAC9B,CAAA,CAAA;AACH,EAAA;AAGa,MAAA,mBAAA,GAAsB,CAAC,IAAiB,KAAA;AACnD,EAAA,MAAM,UAAa,GAAA;AAAA,IACjB;AAAA,MACE,GAAK,EAAA,CAAA;AAAA,MACL,QAAU,EAAA,CAAA;AAAA,MACV,UAAY,EAAA,CAAA;AAAA,KACd;AAAA,IACA;AAAA,MACE,GAAK,EAAA,EAAA;AAAA,MACL,QAAU,EAAA,CAAA;AAAA,MACV,UAAY,EAAA,CAAA;AAAA,KACd;AAAA,IACA;AAAA,MACE,GAAK,EAAA,EAAA;AAAA,MACL,QAAU,EAAA,CAAA;AAAA,MACV,UAAY,EAAA,CAAA;AAAA,KACd;AAAA,IACA;AAAA,MACE,GAAK,EAAA,EAAA;AAAA,MACL,QAAU,EAAA,CAAA;AAAA,MACV,UAAY,EAAA,CAAA;AAAA,KACd;AAAA,IACA;AAAA,MACE,KAAK,MAAO,CAAA,iBAAA;AAAA,MACZ,QAAU,EAAA,CAAA;AAAA,MACV,UAAY,EAAA,CAAA;AAAA,KACd;AAAA,GACF,CAAA;AACA,EAAA,MAAM,EAAE,QAAU,EAAA,UAAA,EAAe,GAAA,UAAA,CAAW,KAAK,CAAC,EAAE,GAAI,EAAA,KAAM,QAAQ,GAAG,CAAA,IAAK,UAAW,CAAA,UAAA,CAAW,SAAS,CAAC,CAAA,CAAA;AAE9G,EAAO,OAAA;AAAA,IACL,QAAA;AAAA,IACA,QAAA,EAAU,aAAa,IAAO,GAAA,IAAA;AAAA,GAChC,CAAA;AACF,EAAA;AAGa,MAAA,kBAAA,GAAqB,WAAY,CAAA,YAAA,EAAc,MAAM;AAChE,EAAA,MAAM,eAAe,eAAgC,EAAA,CAAA;AACrD,EAAA,MAAM,cAAc,eAAqB,EAAA,CAAA;AACzC,EAAA,MAAM,iBAAiB,eAAsC,EAAA,CAAA;AAC7D,EAAA,MAAM,gBAAgB,eAAqB,EAAA,CAAA;AAG3C,EAAA,MAAM,eAAe,OAAO;AAAA,IAC1B,OAAA;AAAA,IACA,GAAA;AAAA,IACA,IAAA;AAAA,IACA,IAAA;AAAA,IACA,GAAA;AAAA,IACA,YAAA;AAAA,GAQI,KAAA;AAEJ,IAAO,OAAA,IAAI,OAAgC,CAAA,OAAM,OAAW,KAAA;AAC1D,MAAM,MAAA,EAAE,MAAS,GAAA,MAAM,eAAe,EAAE,OAAA,EAAS,KAAK,CAAA,CAAA;AACtD,MAAA,IAAI,KAAK,IAAS,KAAA,CAAA,IAAK,IAAK,CAAA,IAAA,CAAK,UAAU,CAAG,EAAA;AAC5C,QAAA,OAAO,QAAQ,KAAK,CAAA,CAAA;AAAA,OACtB;AACA,MAAA,MAAM,MAAS,GAAA;AAAA,QACb,IAAA;AAAA,QACA,GAAA;AAAA,QACA,YAAA;AAAA,QACA,IAAA;AAAA,QACA,GAAA,EAAK,KAAK,IAAK,CAAA,GAAA;AAAA,QACf,GAAK,EAAA,OAAA;AAAA,QACL,IAAM,EAAA,GAAA;AAAA,QACN,OAAS,EAAA,IAAA;AAAA,OACX,CAAA;AACA,MAAA,OAAA,CAAQ,MAAM,CAAA,CAAA;AACd,MAAA,YAAA,CAAa,QAAQ,MAAM,CAAA,CAAA;AAAA,KAC5B,CAAA,CAAA;AAAA,GACH,CAAA;AAGA,EAAA,MAAM,UAAa,GAAA,OAAO,EAAE,IAAA,EAAM,QAAU,EAAA,MAAA,EAAQ,IAAM,EAAA,QAAA,EAAU,QAAU,EAAA,OAAA,EAAS,MAAQ,EAAA,GAAA,EAAK,WAA8B,KAAA;AAChI,IAAA,IAAI,EAAE,IAAA,EAAM,GAAK,EAAA,YAAA,EAAc,MAAS,GAAA,IAAA,CAAA;AACxC,IAAA,MAAM,MAAM,IAAK,CAAA,KAAA,CAAM,UAAU,CAAA,GAAI,CAAC,CAAK,IAAA,EAAA,CAAA;AAC3C,IAAA,IAAA,GAAA,CAAQ,YAAY,IAAM,EAAA,KAAA,CAAM,GAAG,IAAK,CAAA,WAAA,CAAY,GAAG,CAAC,CAAA,CAAA;AACxD,IAAM,MAAA,OAAA,GAAU,MAAM,WAAA,CAAY,IAAI,CAAA,CAAA;AACtC,IAAA,MAAM,WAAW,IAAO,GAAA,GAAA,CAAA;AACxB,IAAA,MAAM,IAAO,GAAA,GAAA,CAAI,UAAW,CAAA,GAAA,EAAK,EAAE,CAAA,CAAA;AAEnC,IAAI,IAAA;AACF,MAAA,IAAI,MAAS,GAAA,MAAM,YAAa,CAAA,EAAE,OAAS,EAAA,GAAA,EAAK,IAAM,EAAA,IAAA,EAAM,QAAU,EAAA,IAAA,EAAM,GAAK,EAAA,YAAA,EAAc,CAAA,CAAA;AAC/F,MAAI,IAAA,MAAA;AAAQ,QAAO,OAAA,MAAA,CAAA;AAGnB,MAAM,MAAA,OAAA,GAAU,KAAK,GAAI,EAAA,CAAA;AACzB,MAAA,MAAM,IAAO,GAAA,CAAA,EAAG,MAAU,IAAA,UAAU,CAAI,CAAA,EAAA,IAAA,IAAQ,SAAS,CAAA,MAAA,EAAS,OAAO,CAAA,CAAA,EAAI,OAAO,CAAA,EAAG,GAAG,CAAA,CAAA,CAAA;AAE1F,MAAM,MAAA,CAAA,GAAI,oBAAoB,IAAI,CAAA,CAAA;AAClC,MAAU,OAAA,GAAA;AAAA,QACR,GAAG,CAAA;AAAA,QACH,GAAG,EAAE,QAAA,EAAU,QAAS,EAAA;AAAA,QACxB,kBAAoB,EAAA,CAAA,oBAAA,EAAuB,kBAAmB,CAAA,IAAI,CAAC,CAAA,EAAG,GAAG,CAAA,WAAA,EAAc,kBAAmB,CAAA,IAAI,CAAC,CAAA,EAAG,GAAG,CAAA,CAAA;AAAA,QACrH,GAAG,OAAA;AAAA,OACL,CAAA;AAIA,MAAA,MAAM,aAAa,MAAU,IAAA,iBAAA,CAAA;AAC7B,MAAM,MAAA,EAAE,aAAa,eAAiB,EAAA,aAAA,KAAkB,MAAM,mBAAA,GAAsB,mBAAoB,CAAA;AAAA,QACtG,SAAW,EAAA,UAAA;AAAA,OACZ,CAAA,CAAA;AAED,MAAM,MAAA,MAAA,GAAS,IAAI,MAAO,CAAA;AAAA;AAAA,QAExB,MAAQ,EAAA,iBAAA;AAAA;AAAA,QAER,WAAa,EAAA,WAAA;AAAA,QACb,eAAiB,EAAA,eAAA;AAAA,QACjB,QAAU,EAAA,aAAA;AAAA;AAAA,QAEV,uBAAyB,EAAA,GAAA;AAAA;AAAA,QAEzB,MAAQ,EAAA,UAAA;AAAA,OACT,CAAA,CAAA;AAED,MAAA,MAAM,MAAS,GAAA,OAAA,CAAQ,QAAa,KAAA,CAAA,GAAI,KAAQ,GAAA,iBAAA,CAAA;AAChD,MAAM,MAAA,EAAE,KAAQ,GAAA,MAAM,OAAO,MAAM,CAAA,CAAE,IAAM,EAAA,IAAA,EAAM,OAAO,CAAA,CAAA;AACxD,MAAI,IAAA,GAAA,CAAI,WAAW,GAAK,EAAA;AACtB,QAAA,WAAA,CAAY,QAAQ,GAAG,CAAA,CAAA;AACvB,QAAO,OAAA,GAAA,CAAA;AAAA,OACT;AACA,MAAA,GAAA,GAAM,GAAO,IAAA,0BAAA,CAAA;AACb,MAAA,MAAM,YAAY,GAAM,GAAA,IAAA,CAAA;AACxB,MAAS,MAAA,GAAA;AAAA,QACP,GAAK,EAAA,SAAA;AAAA,QACL,MAAM,IAAO,GAAA,GAAA;AAAA,QACb,GAAK,EAAA,OAAA;AAAA,QACL,IAAM,EAAA,GAAA,CAAI,UAAW,CAAA,GAAA,EAAK,EAAE,CAAA;AAAA,QAC5B,GAAA;AAAA,QACA,YAAA;AAAA,QACA,IAAA;AAAA,QACA,OAAS,EAAA,KAAA;AAAA,OACX,CAAA;AACA,MAAA,IAAI,SAAW,EAAA;AACb,QAAA,YAAA,CAAa,EAAE,GAAK,EAAA,SAAA,EAAW,UAAU,OAAS,EAAA,SAAA,EAAW,MAAM,CAAA,CAAA;AAAA,OACrE;AACA,MAAA,YAAA,CAAa,QAAQ,MAAM,CAAA,CAAA;AAC3B,MAAO,OAAA,MAAA,CAAA;AAAA,aACA,KAAO,EAAA;AACd,MAAA,WAAA,CAAY,QAAQ,KAAK,CAAA,CAAA;AACzB,MAAO,OAAA,KAAA,CAAA;AAAA,KACT;AAAA,GACF,CAAA;AAGA,EAAA,MAAM,eAAe,OAAO,EAAE,GAAK,EAAA,QAAA,EAAU,WAA2C,KAAA;AACtF,IAAI,IAAA;AACF,MAAA,MAAM,EAAE,IAAA,EAAS,GAAA,MAAM,qBAAsB,CAAA,EAAE,QAAU,EAAA,EAAE,GAAK,EAAA,QAAA,EAAU,SAAU,EAAA,EAAG,CAAA,CAAA;AACvF,MAAI,IAAA,IAAA,EAAM,SAAS,CAAG,EAAA;AACpB,QAAA,aAAA,CAAc,QAAQ,IAAI,CAAA,CAAA;AAC1B,QAAO,OAAA,IAAA,CAAA;AAAA,OACT;AACA,MAAA,MAAM,MAAS,GAAA;AAAA,QACb,GAAA;AAAA,QACA,QAAA;AAAA,QACA,SAAA;AAAA,OACF,CAAA;AACA,MAAA,cAAA,CAAe,QAAQ,MAAM,CAAA,CAAA;AAC7B,MAAO,OAAA,MAAA,CAAA;AAAA,aACA,KAAO,EAAA;AACd,MAAA,aAAA,CAAc,QAAQ,KAAK,CAAA,CAAA;AAC3B,MAAO,OAAA,KAAA,CAAA;AAAA,KACT;AAAA,GACF,CAAA;AACA,EAAO,OAAA;AAAA,IACL,cAAc,YAAa,CAAA,EAAA;AAAA,IAC3B,aAAa,WAAY,CAAA,EAAA;AAAA,IACzB,gBAAgB,cAAe,CAAA,EAAA;AAAA,IAC/B,eAAe,aAAc,CAAA,EAAA;AAAA,IAC7B,UAAA;AAAA,IACA,YAAA;AAAA,GACF,CAAA;AACF,CAAC;;;;"}
@@ -6,18 +6,18 @@ import { type GetOssAccessTokenResponseData } from '../../../api/materialApi';
6
6
  **/
7
7
  declare const useAliossTokenStore: import("pinia").StoreDefinition<"aliossToken", import("pinia")._UnwrapAll<Pick<{
8
8
  isLoading: import("vue").Ref<boolean>;
9
- getAliossTokenAsync: (params: {
10
- config_id: string | null;
9
+ getAliossTokenAsync: (params?: {
10
+ config_id?: string;
11
11
  }) => Promise<GetOssAccessTokenResponseData>;
12
12
  }, "isLoading">>, Pick<{
13
13
  isLoading: import("vue").Ref<boolean>;
14
- getAliossTokenAsync: (params: {
15
- config_id: string | null;
14
+ getAliossTokenAsync: (params?: {
15
+ config_id?: string;
16
16
  }) => Promise<GetOssAccessTokenResponseData>;
17
17
  }, never>, Pick<{
18
18
  isLoading: import("vue").Ref<boolean>;
19
- getAliossTokenAsync: (params: {
20
- config_id: string | null;
19
+ getAliossTokenAsync: (params?: {
20
+ config_id?: string;
21
21
  }) => Promise<GetOssAccessTokenResponseData>;
22
22
  }, "getAliossTokenAsync">>;
23
23
  export default useAliossTokenStore;
@@ -22,7 +22,7 @@ const useAliossTokenStore = defineStore("aliossToken", () => {
22
22
  }
23
23
  isLoading.value = true;
24
24
  try {
25
- const { data } = await getOssAccessToken(params);
25
+ const { data } = await getOssAccessToken({ config_id: params?.config_id || "giikin-material" });
26
26
  if (data.code === 0) {
27
27
  setCookie(data.data);
28
28
  aliossTokenResult.trigger(data.data);
@@ -1 +1 @@
1
- {"version":3,"file":"aliossToken.mjs","sources":["../../../../../../packages/utils/src/alioss/aliossToken.ts"],"sourcesContent":["import { ref } from 'vue';\r\nimport { defineStore } from 'pinia';\r\nimport { type GetOssAccessTokenResponseData, getOssAccessToken } from '@giime/api/materialApi';\r\nimport { createEventHook } from '@vueuse/core';\r\nimport Cookies from 'js-cookie';\r\n\r\n/**\r\n * @description 素材上传权限\r\n * @param {*}\r\n * @return {*}\r\n **/\r\n\r\nconst useAliossTokenStore = defineStore('aliossToken', () => {\r\n const isLoading = ref(false);\r\n const aliossTokenResult = createEventHook<GetOssAccessTokenResponseData>();\r\n\r\n const setCookie = (data: GetOssAccessTokenResponseData) => {\r\n if (!data) return;\r\n const { Expiration } = data;\r\n const time = new Date(new Date(Expiration ?? 0).getTime() - 10000); //-10秒作为缓冲\r\n Cookies.set('aliossStsToken', JSON.stringify(data), { expires: time });\r\n };\r\n\r\n /* 请求临时上传权限 */\r\n const getAliossToken = async (params: { config_id: string | null }) => {\r\n const aliossStsToken = Cookies.get('aliossStsToken');\r\n if (aliossStsToken) {\r\n return JSON.parse(aliossStsToken) as GetOssAccessTokenResponseData;\r\n }\r\n isLoading.value = true;\r\n try {\r\n const { data } = await getOssAccessToken(params);\r\n if (data.code === 0) {\r\n setCookie(data.data);\r\n aliossTokenResult.trigger(data.data);\r\n }\r\n return data.data;\r\n } finally {\r\n isLoading.value = false;\r\n }\r\n };\r\n\r\n /* 获取 alioss 临时上传 token*/\r\n const getAliossTokenAsync = (params: { config_id: string | null }) => {\r\n /* 若正在请求请求临时token接口 则其他后进来的等待 */\r\n return new Promise<GetOssAccessTokenResponseData>(resolve => {\r\n if (isLoading.value) {\r\n aliossTokenResult.on(value => resolve(value));\r\n } else {\r\n resolve(getAliossToken(params));\r\n }\r\n });\r\n };\r\n\r\n return {\r\n isLoading,\r\n getAliossTokenAsync,\r\n };\r\n});\r\n\r\nexport default useAliossTokenStore;\r\n"],"names":[],"mappings":";;;;;;;AAYM,MAAA,mBAAA,GAAsB,WAAY,CAAA,aAAA,EAAe,MAAM;AAC3D,EAAM,MAAA,SAAA,GAAY,IAAI,KAAK,CAAA,CAAA;AAC3B,EAAA,MAAM,oBAAoB,eAA+C,EAAA,CAAA;AAEzE,EAAM,MAAA,SAAA,GAAY,CAAC,IAAwC,KAAA;AACzD,IAAA,IAAI,CAAC,IAAA;AAAM,MAAA,OAAA;AACX,IAAM,MAAA,EAAE,YAAe,GAAA,IAAA,CAAA;AACvB,IAAM,MAAA,IAAA,GAAO,IAAI,IAAA,CAAK,IAAI,IAAA,CAAK,cAAc,CAAC,CAAA,CAAE,OAAQ,EAAA,GAAI,GAAK,CAAA,CAAA;AACjE,IAAQ,OAAA,CAAA,GAAA,CAAI,kBAAkB,IAAK,CAAA,SAAA,CAAU,IAAI,CAAG,EAAA,EAAE,OAAS,EAAA,IAAA,EAAM,CAAA,CAAA;AAAA,GACvE,CAAA;AAGA,EAAM,MAAA,cAAA,GAAiB,OAAO,MAAyC,KAAA;AACrE,IAAM,MAAA,cAAA,GAAiB,OAAQ,CAAA,GAAA,CAAI,gBAAgB,CAAA,CAAA;AACnD,IAAA,IAAI,cAAgB,EAAA;AAClB,MAAO,OAAA,IAAA,CAAK,MAAM,cAAc,CAAA,CAAA;AAAA,KAClC;AACA,IAAA,SAAA,CAAU,KAAQ,GAAA,IAAA,CAAA;AAClB,IAAI,IAAA;AACF,MAAA,MAAM,EAAE,IAAA,EAAS,GAAA,MAAM,kBAAkB,MAAM,CAAA,CAAA;AAC/C,MAAI,IAAA,IAAA,CAAK,SAAS,CAAG,EAAA;AACnB,QAAA,SAAA,CAAU,KAAK,IAAI,CAAA,CAAA;AACnB,QAAkB,iBAAA,CAAA,OAAA,CAAQ,KAAK,IAAI,CAAA,CAAA;AAAA,OACrC;AACA,MAAA,OAAO,IAAK,CAAA,IAAA,CAAA;AAAA,KACZ,SAAA;AACA,MAAA,SAAA,CAAU,KAAQ,GAAA,KAAA,CAAA;AAAA,KACpB;AAAA,GACF,CAAA;AAGA,EAAM,MAAA,mBAAA,GAAsB,CAAC,MAAyC,KAAA;AAEpE,IAAO,OAAA,IAAI,QAAuC,CAAW,OAAA,KAAA;AAC3D,MAAA,IAAI,UAAU,KAAO,EAAA;AACnB,QAAA,iBAAA,CAAkB,EAAG,CAAA,CAAA,KAAA,KAAS,OAAQ,CAAA,KAAK,CAAC,CAAA,CAAA;AAAA,OACvC,MAAA;AACL,QAAQ,OAAA,CAAA,cAAA,CAAe,MAAM,CAAC,CAAA,CAAA;AAAA,OAChC;AAAA,KACD,CAAA,CAAA;AAAA,GACH,CAAA;AAEA,EAAO,OAAA;AAAA,IACL,SAAA;AAAA,IACA,mBAAA;AAAA,GACF,CAAA;AACF,CAAC;;;;"}
1
+ {"version":3,"file":"aliossToken.mjs","sources":["../../../../../../packages/utils/src/alioss/aliossToken.ts"],"sourcesContent":["import { ref } from 'vue';\r\nimport { defineStore } from 'pinia';\r\nimport { type GetOssAccessTokenResponseData, getOssAccessToken } from '@giime/api/materialApi';\r\nimport { createEventHook } from '@vueuse/core';\r\nimport Cookies from 'js-cookie';\r\n\r\n/**\r\n * @description 素材上传权限\r\n * @param {*}\r\n * @return {*}\r\n **/\r\n\r\nconst useAliossTokenStore = defineStore('aliossToken', () => {\r\n const isLoading = ref(false);\r\n const aliossTokenResult = createEventHook<GetOssAccessTokenResponseData>();\r\n\r\n const setCookie = (data: GetOssAccessTokenResponseData) => {\r\n if (!data) return;\r\n const { Expiration } = data;\r\n const time = new Date(new Date(Expiration ?? 0).getTime() - 10000); //-10秒作为缓冲\r\n Cookies.set('aliossStsToken', JSON.stringify(data), { expires: time });\r\n };\r\n\r\n /* 请求临时上传权限 */\r\n const getAliossToken = async (params?: { config_id?: string }) => {\r\n const aliossStsToken = Cookies.get('aliossStsToken');\r\n if (aliossStsToken) {\r\n return JSON.parse(aliossStsToken) as GetOssAccessTokenResponseData;\r\n }\r\n isLoading.value = true;\r\n try {\r\n const { data } = await getOssAccessToken({ config_id: params?.config_id || 'giikin-material' });\r\n if (data.code === 0) {\r\n setCookie(data.data);\r\n aliossTokenResult.trigger(data.data);\r\n }\r\n return data.data;\r\n } finally {\r\n isLoading.value = false;\r\n }\r\n };\r\n\r\n /* 获取 alioss 临时上传 token*/\r\n const getAliossTokenAsync = (params?: { config_id?: string }) => {\r\n /* 若正在请求请求临时token接口 则其他后进来的等待 */\r\n return new Promise<GetOssAccessTokenResponseData>(resolve => {\r\n if (isLoading.value) {\r\n aliossTokenResult.on(value => resolve(value));\r\n } else {\r\n resolve(getAliossToken(params));\r\n }\r\n });\r\n };\r\n\r\n return {\r\n isLoading,\r\n getAliossTokenAsync,\r\n };\r\n});\r\n\r\nexport default useAliossTokenStore;\r\n"],"names":[],"mappings":";;;;;;;AAYM,MAAA,mBAAA,GAAsB,WAAY,CAAA,aAAA,EAAe,MAAM;AAC3D,EAAM,MAAA,SAAA,GAAY,IAAI,KAAK,CAAA,CAAA;AAC3B,EAAA,MAAM,oBAAoB,eAA+C,EAAA,CAAA;AAEzE,EAAM,MAAA,SAAA,GAAY,CAAC,IAAwC,KAAA;AACzD,IAAA,IAAI,CAAC,IAAA;AAAM,MAAA,OAAA;AACX,IAAM,MAAA,EAAE,YAAe,GAAA,IAAA,CAAA;AACvB,IAAM,MAAA,IAAA,GAAO,IAAI,IAAA,CAAK,IAAI,IAAA,CAAK,cAAc,CAAC,CAAA,CAAE,OAAQ,EAAA,GAAI,GAAK,CAAA,CAAA;AACjE,IAAQ,OAAA,CAAA,GAAA,CAAI,kBAAkB,IAAK,CAAA,SAAA,CAAU,IAAI,CAAG,EAAA,EAAE,OAAS,EAAA,IAAA,EAAM,CAAA,CAAA;AAAA,GACvE,CAAA;AAGA,EAAM,MAAA,cAAA,GAAiB,OAAO,MAAoC,KAAA;AAChE,IAAM,MAAA,cAAA,GAAiB,OAAQ,CAAA,GAAA,CAAI,gBAAgB,CAAA,CAAA;AACnD,IAAA,IAAI,cAAgB,EAAA;AAClB,MAAO,OAAA,IAAA,CAAK,MAAM,cAAc,CAAA,CAAA;AAAA,KAClC;AACA,IAAA,SAAA,CAAU,KAAQ,GAAA,IAAA,CAAA;AAClB,IAAI,IAAA;AACF,MAAM,MAAA,EAAE,IAAK,EAAA,GAAI,MAAM,iBAAA,CAAkB,EAAE,SAAW,EAAA,MAAA,EAAQ,SAAa,IAAA,iBAAA,EAAmB,CAAA,CAAA;AAC9F,MAAI,IAAA,IAAA,CAAK,SAAS,CAAG,EAAA;AACnB,QAAA,SAAA,CAAU,KAAK,IAAI,CAAA,CAAA;AACnB,QAAkB,iBAAA,CAAA,OAAA,CAAQ,KAAK,IAAI,CAAA,CAAA;AAAA,OACrC;AACA,MAAA,OAAO,IAAK,CAAA,IAAA,CAAA;AAAA,KACZ,SAAA;AACA,MAAA,SAAA,CAAU,KAAQ,GAAA,KAAA,CAAA;AAAA,KACpB;AAAA,GACF,CAAA;AAGA,EAAM,MAAA,mBAAA,GAAsB,CAAC,MAAoC,KAAA;AAE/D,IAAO,OAAA,IAAI,QAAuC,CAAW,OAAA,KAAA;AAC3D,MAAA,IAAI,UAAU,KAAO,EAAA;AACnB,QAAA,iBAAA,CAAkB,EAAG,CAAA,CAAA,KAAA,KAAS,OAAQ,CAAA,KAAK,CAAC,CAAA,CAAA;AAAA,OACvC,MAAA;AACL,QAAQ,OAAA,CAAA,cAAA,CAAe,MAAM,CAAC,CAAA,CAAA;AAAA,OAChC;AAAA,KACD,CAAA,CAAA;AAAA,GACH,CAAA;AAEA,EAAO,OAAA;AAAA,IACL,SAAA;AAAA,IACA,mBAAA;AAAA,GACF,CAAA;AACF,CAAC;;;;"}