giime 0.9.11 → 0.9.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 (118) hide show
  1. package/dist/index.css +2 -2
  2. package/es/api/resource/interface/apiTypes/Address.d.ts +9 -0
  3. package/es/api/resource/interface/apiTypes/Address.mjs +2 -0
  4. package/es/api/resource/interface/apiTypes/Address.mjs.map +1 -0
  5. package/es/api/resource/interface/apiTypes/AudioStream.d.ts +19 -0
  6. package/es/api/resource/interface/apiTypes/AudioStream.mjs +2 -0
  7. package/es/api/resource/interface/apiTypes/AudioStream.mjs.map +1 -0
  8. package/es/api/resource/interface/apiTypes/GenerateUploadUrlRequest.d.ts +3 -1
  9. package/es/api/resource/interface/apiTypes/ImageMetadata.d.ts +24 -0
  10. package/es/api/resource/interface/apiTypes/ImageMetadata.mjs +2 -0
  11. package/es/api/resource/interface/apiTypes/ImageMetadata.mjs.map +1 -0
  12. package/es/api/resource/interface/apiTypes/MediaInfo.d.ts +27 -0
  13. package/es/api/resource/interface/apiTypes/MediaInfo.mjs +2 -0
  14. package/es/api/resource/interface/apiTypes/MediaInfo.mjs.map +1 -0
  15. package/es/api/resource/interface/apiTypes/RResourceAttrDto.d.ts +10 -0
  16. package/es/api/resource/interface/apiTypes/RResourceAttrDto.mjs +2 -0
  17. package/es/api/resource/interface/apiTypes/RResourceAttrDto.mjs.map +1 -0
  18. package/es/api/resource/interface/apiTypes/RResourceAttrUrlResponse.d.ts +10 -0
  19. package/es/api/resource/interface/apiTypes/RResourceAttrUrlResponse.mjs +2 -0
  20. package/es/api/resource/interface/apiTypes/RResourceAttrUrlResponse.mjs.map +1 -0
  21. package/es/api/resource/interface/apiTypes/ResourceAttrDto.d.ts +5 -0
  22. package/es/api/resource/interface/apiTypes/ResourceAttrDto.mjs +2 -0
  23. package/es/api/resource/interface/apiTypes/ResourceAttrDto.mjs.map +1 -0
  24. package/es/api/resource/interface/apiTypes/ResourceAttrUrlResponse.d.ts +4 -0
  25. package/es/api/resource/interface/apiTypes/ResourceAttrUrlResponse.mjs +2 -0
  26. package/es/api/resource/interface/apiTypes/ResourceAttrUrlResponse.mjs.map +1 -0
  27. package/es/api/resource/interface/apiTypes/ResourceUploadNoticeRequest.d.ts +4 -0
  28. package/es/api/resource/interface/apiTypes/ResourceUploadNoticeRequest.mjs +2 -0
  29. package/es/api/resource/interface/apiTypes/ResourceUploadNoticeRequest.mjs.map +1 -0
  30. package/es/api/resource/interface/apiTypes/Subtitle.d.ts +14 -0
  31. package/es/api/resource/interface/apiTypes/Subtitle.mjs +2 -0
  32. package/es/api/resource/interface/apiTypes/Subtitle.mjs.map +1 -0
  33. package/es/api/resource/interface/apiTypes/VideoStream.d.ts +30 -0
  34. package/es/api/resource/interface/apiTypes/VideoStream.mjs +2 -0
  35. package/es/api/resource/interface/apiTypes/VideoStream.mjs.map +1 -0
  36. package/es/api/resource/interface/index.d.ts +25 -14
  37. package/es/api/resource/interface/index.mjs +25 -14
  38. package/es/api/resource/interface/index.mjs.map +1 -1
  39. package/es/components/src/business/uploadItem/UploadItem.vue.d.ts +9 -0
  40. package/es/components/src/business/uploadItem/index.d.ts +19 -0
  41. package/es/components/src/business/uploadItem/uploadItem.d.ts +4 -0
  42. package/es/components/src/business/uploadPro/UploadPro.vue.d.ts +9 -0
  43. package/es/components/src/business/uploadPro/UploadPro.vue.mjs +1 -1
  44. package/es/components/src/business/uploadPro/UploadPro.vue2.mjs +2 -1
  45. package/es/components/src/business/uploadPro/UploadPro.vue2.mjs.map +1 -1
  46. package/es/components/src/business/uploadPro/index.d.ts +19 -0
  47. package/es/components/src/business/uploadPro/uploadPro.d.ts +5 -0
  48. package/es/components/src/business/uploadPro/uploadPro.mjs +5 -0
  49. package/es/components/src/business/uploadPro/uploadPro.mjs.map +1 -1
  50. package/es/components/src/composite/uploadFile/UploadFile.vue.d.ts +9 -0
  51. package/es/components/src/composite/uploadFile/index.d.ts +19 -0
  52. package/es/components/src/composite/uploadFile/uploadFile.d.ts +4 -0
  53. package/es/giime/version.d.ts +1 -1
  54. package/es/giime/version.mjs +1 -1
  55. package/es/giime/version.mjs.map +1 -1
  56. package/es/hooks/base/useUploadFile/index.d.ts +2 -0
  57. package/es/hooks/base/useUploadFile/index.mjs +2 -1
  58. package/es/hooks/base/useUploadFile/index.mjs.map +1 -1
  59. package/es/index.css +2 -2
  60. package/lib/api/resource/interface/apiTypes/Address.d.ts +9 -0
  61. package/lib/api/resource/interface/apiTypes/Address.js +3 -0
  62. package/lib/api/resource/interface/apiTypes/Address.js.map +1 -0
  63. package/lib/api/resource/interface/apiTypes/AudioStream.d.ts +19 -0
  64. package/lib/api/resource/interface/apiTypes/AudioStream.js +3 -0
  65. package/lib/api/resource/interface/apiTypes/AudioStream.js.map +1 -0
  66. package/lib/api/resource/interface/apiTypes/GenerateUploadUrlRequest.d.ts +3 -1
  67. package/lib/api/resource/interface/apiTypes/ImageMetadata.d.ts +24 -0
  68. package/lib/api/resource/interface/apiTypes/ImageMetadata.js +3 -0
  69. package/lib/api/resource/interface/apiTypes/ImageMetadata.js.map +1 -0
  70. package/lib/api/resource/interface/apiTypes/MediaInfo.d.ts +27 -0
  71. package/lib/api/resource/interface/apiTypes/MediaInfo.js +3 -0
  72. package/lib/api/resource/interface/apiTypes/MediaInfo.js.map +1 -0
  73. package/lib/api/resource/interface/apiTypes/RResourceAttrDto.d.ts +10 -0
  74. package/lib/api/resource/interface/apiTypes/RResourceAttrDto.js +3 -0
  75. package/lib/api/resource/interface/apiTypes/RResourceAttrDto.js.map +1 -0
  76. package/lib/api/resource/interface/apiTypes/RResourceAttrUrlResponse.d.ts +10 -0
  77. package/lib/api/resource/interface/apiTypes/RResourceAttrUrlResponse.js +3 -0
  78. package/lib/api/resource/interface/apiTypes/RResourceAttrUrlResponse.js.map +1 -0
  79. package/lib/api/resource/interface/apiTypes/ResourceAttrDto.d.ts +5 -0
  80. package/lib/api/resource/interface/apiTypes/ResourceAttrDto.js +3 -0
  81. package/lib/api/resource/interface/apiTypes/ResourceAttrDto.js.map +1 -0
  82. package/lib/api/resource/interface/apiTypes/ResourceAttrUrlResponse.d.ts +4 -0
  83. package/lib/api/resource/interface/apiTypes/ResourceAttrUrlResponse.js +3 -0
  84. package/lib/api/resource/interface/apiTypes/ResourceAttrUrlResponse.js.map +1 -0
  85. package/lib/api/resource/interface/apiTypes/ResourceUploadNoticeRequest.d.ts +4 -0
  86. package/lib/api/resource/interface/apiTypes/ResourceUploadNoticeRequest.js +3 -0
  87. package/lib/api/resource/interface/apiTypes/ResourceUploadNoticeRequest.js.map +1 -0
  88. package/lib/api/resource/interface/apiTypes/Subtitle.d.ts +14 -0
  89. package/lib/api/resource/interface/apiTypes/Subtitle.js +3 -0
  90. package/lib/api/resource/interface/apiTypes/Subtitle.js.map +1 -0
  91. package/lib/api/resource/interface/apiTypes/VideoStream.d.ts +30 -0
  92. package/lib/api/resource/interface/apiTypes/VideoStream.js +3 -0
  93. package/lib/api/resource/interface/apiTypes/VideoStream.js.map +1 -0
  94. package/lib/api/resource/interface/index.d.ts +25 -14
  95. package/lib/api/resource/interface/index.js +25 -14
  96. package/lib/api/resource/interface/index.js.map +1 -1
  97. package/lib/components/src/business/uploadItem/UploadItem.vue.d.ts +9 -0
  98. package/lib/components/src/business/uploadItem/index.d.ts +19 -0
  99. package/lib/components/src/business/uploadItem/uploadItem.d.ts +4 -0
  100. package/lib/components/src/business/uploadPro/UploadPro.vue.d.ts +9 -0
  101. package/lib/components/src/business/uploadPro/UploadPro.vue.js +1 -1
  102. package/lib/components/src/business/uploadPro/UploadPro.vue2.js +2 -1
  103. package/lib/components/src/business/uploadPro/UploadPro.vue2.js.map +1 -1
  104. package/lib/components/src/business/uploadPro/index.d.ts +19 -0
  105. package/lib/components/src/business/uploadPro/uploadPro.d.ts +5 -0
  106. package/lib/components/src/business/uploadPro/uploadPro.js +5 -0
  107. package/lib/components/src/business/uploadPro/uploadPro.js.map +1 -1
  108. package/lib/components/src/composite/uploadFile/UploadFile.vue.d.ts +9 -0
  109. package/lib/components/src/composite/uploadFile/index.d.ts +19 -0
  110. package/lib/components/src/composite/uploadFile/uploadFile.d.ts +4 -0
  111. package/lib/giime/version.d.ts +1 -1
  112. package/lib/giime/version.js +1 -1
  113. package/lib/giime/version.js.map +1 -1
  114. package/lib/hooks/base/useUploadFile/index.d.ts +2 -0
  115. package/lib/hooks/base/useUploadFile/index.js +2 -1
  116. package/lib/hooks/base/useUploadFile/index.js.map +1 -1
  117. package/lib/index.css +2 -2
  118. package/package.json +1 -1
@@ -51,6 +51,10 @@ export declare const GmUploadFile: import("../../../../utils").SFCWithInstall<{
51
51
  type: StringConstructor;
52
52
  default: string;
53
53
  };
54
+ rename: {
55
+ type: NumberConstructor;
56
+ default: number;
57
+ };
54
58
  showLoading: {
55
59
  type: BooleanConstructor;
56
60
  default: boolean;
@@ -345,6 +349,10 @@ export declare const GmUploadFile: import("../../../../utils").SFCWithInstall<{
345
349
  type: StringConstructor;
346
350
  default: string;
347
351
  };
352
+ rename: {
353
+ type: NumberConstructor;
354
+ default: number;
355
+ };
348
356
  showLoading: {
349
357
  type: BooleanConstructor;
350
358
  default: boolean;
@@ -604,6 +612,7 @@ export declare const GmUploadFile: import("../../../../utils").SFCWithInstall<{
604
612
  onProgress: (evt: import("element-plus").UploadProgressEvent, uploadFile: import("element-plus").UploadFile, uploadFiles: import("element-plus").UploadFiles) => void;
605
613
  accept: string;
606
614
  acl: string;
615
+ rename: number;
607
616
  controls: boolean;
608
617
  oncontextmenu: boolean;
609
618
  beforeUpload: (rawFile: import("element-plus").UploadRawFile) => boolean | void | Blob | File | Promise<boolean | void | Blob | File | null | undefined> | null | undefined;
@@ -687,6 +696,10 @@ export declare const GmUploadFile: import("../../../../utils").SFCWithInstall<{
687
696
  type: StringConstructor;
688
697
  default: string;
689
698
  };
699
+ rename: {
700
+ type: NumberConstructor;
701
+ default: number;
702
+ };
690
703
  showLoading: {
691
704
  type: BooleanConstructor;
692
705
  default: boolean;
@@ -952,6 +965,7 @@ export declare const GmUploadFile: import("../../../../utils").SFCWithInstall<{
952
965
  onProgress: (evt: import("element-plus").UploadProgressEvent, uploadFile: import("element-plus").UploadFile, uploadFiles: import("element-plus").UploadFiles) => void;
953
966
  accept: string;
954
967
  acl: string;
968
+ rename: number;
955
969
  controls: boolean;
956
970
  oncontextmenu: boolean;
957
971
  beforeUpload: (rawFile: import("element-plus").UploadRawFile) => boolean | void | Blob | File | Promise<boolean | void | Blob | File | null | undefined> | null | undefined;
@@ -1032,6 +1046,10 @@ export declare const GmUploadFile: import("../../../../utils").SFCWithInstall<{
1032
1046
  type: StringConstructor;
1033
1047
  default: string;
1034
1048
  };
1049
+ rename: {
1050
+ type: NumberConstructor;
1051
+ default: number;
1052
+ };
1035
1053
  showLoading: {
1036
1054
  type: BooleanConstructor;
1037
1055
  default: boolean;
@@ -1304,6 +1322,7 @@ export declare const GmUploadFile: import("../../../../utils").SFCWithInstall<{
1304
1322
  onProgress: (evt: import("element-plus").UploadProgressEvent, uploadFile: import("element-plus").UploadFile, uploadFiles: import("element-plus").UploadFiles) => void;
1305
1323
  accept: string;
1306
1324
  acl: string;
1325
+ rename: number;
1307
1326
  controls: boolean;
1308
1327
  oncontextmenu: boolean;
1309
1328
  beforeUpload: (rawFile: import("element-plus").UploadRawFile) => boolean | void | Blob | File | Promise<boolean | void | Blob | File | null | undefined> | null | undefined;
@@ -58,6 +58,10 @@ export declare const uploadFileProps: {
58
58
  type: StringConstructor;
59
59
  default: string;
60
60
  };
61
+ rename: {
62
+ type: NumberConstructor;
63
+ default: number;
64
+ };
61
65
  showLoading: {
62
66
  type: BooleanConstructor;
63
67
  default: boolean;
@@ -1 +1 @@
1
- export declare const version = "0.9.11";
1
+ export declare const version = "0.9.12";
@@ -1,6 +1,6 @@
1
1
  'use strict';
2
2
 
3
- const version = "0.9.11";
3
+ const version = "0.9.12";
4
4
 
5
5
  exports.version = version;
6
6
  //# sourceMappingURL=version.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"version.js","sources":["../../../../packages/giime/version.ts"],"sourcesContent":["export const version = '0.9.11';\n"],"names":[],"mappings":";;AAAO,MAAM,OAAA,GAAU;;;;"}
1
+ {"version":3,"file":"version.js","sources":["../../../../packages/giime/version.ts"],"sourcesContent":["export const version = '0.9.12';\n"],"names":[],"mappings":";;AAAO,MAAM,OAAA,GAAU;;;;"}
@@ -18,6 +18,8 @@ export interface UseUploadFileOptions {
18
18
  accept?: string;
19
19
  /**文件权限,默认继承桶 */
20
20
  acl?: string;
21
+ /** 是否重命名文件 0 否 1 是,默认 0 */
22
+ rename?: number;
21
23
  /**是否禁止上传文件到存储桶 */
22
24
  disablePutFile?: boolean;
23
25
  /** */
@@ -46,8 +46,9 @@ const useUploadFile = () => {
46
46
  contentType,
47
47
  md5,
48
48
  size: file$1.size,
49
- acl
49
+ acl,
50
50
  // 文件权限
51
+ rename: options?.rename ?? 0
51
52
  });
52
53
  if (data.data.uploadUrl) {
53
54
  try {
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sources":["../../../../../../packages/hooks/base/useUploadFile/index.ts"],"sourcesContent":["import axios from 'axios';\nimport { ref } from 'vue';\nimport { postResourceV1ResourcesUrl } from '@giime/api/resource/controller';\nimport { fileMd5, fileValidType, genFileId } from '@giime/utils/src/file';\nimport { GmMessage } from '@giime/components/src/plugins/message';\nimport { useGlobalConfig } from '@giime/hooks/base/useGlobalConfig';\nimport type {\n UploadProgressEvent,\n UploadRawFile as ElUploadRawFile,\n UploadFile as ElUploadFile,\n UploadUserFile as ElUploadUserFile,\n UploadRequestOptions,\n} from 'element-plus';\n\nexport interface UploadRawFile extends ElUploadRawFile {\n md5?: string;\n}\n\nexport type UploadFile = Omit<ElUploadFile, 'raw'> & { raw?: UploadRawFile };\nexport type UploadFiles = UploadFile[];\n\nexport type UploadUserFile = Omit<ElUploadUserFile, 'raw'> & { raw?: UploadRawFile };\n\nexport interface UseUploadFileOptions {\n /**领域编码 */\n domainCode?: string;\n /**场景编码 */\n sceneCode?: string;\n /**接受上传的文件类型 */\n accept?: string;\n /**文件权限,默认继承桶 */\n acl?: string;\n /**是否禁止上传文件到存储桶 */\n disablePutFile?: boolean;\n /** */\n elOptions?: UploadRequestOptions;\n}\n\nexport const useUploadFile = () => {\n const isLoading = ref(false);\n const domainCode = useGlobalConfig('domainCode');\n const sceneCode = useGlobalConfig('sceneCode');\n // 存储每个文件的取消控制器\n const abortControllers = ref<Map<number, AbortController>>(new Map());\n\n const uploadFile = async (file: UploadRawFile, options?: UseUploadFileOptions) => {\n // 领域编码\n const uploadDomainCode = options?.domainCode ?? domainCode.value;\n const uploadSceneCode = (options?.sceneCode ?? sceneCode.value) || 'internal_oss';\n if (!uploadDomainCode) {\n GmMessage.error('领域编码不能为空');\n throw new Error('领域编码不能为空');\n }\n\n // 创建取消控制器\n const abortController = new AbortController();\n const fileKey = file.uid ?? genFileId();\n abortControllers.value.set(fileKey, abortController);\n\n try {\n isLoading.value = true;\n // 验证文件类型\n if (options?.accept && options?.accept !== '*') {\n const isValidType = fileValidType(file, options.accept);\n if (!isValidType) {\n GmMessage.error(`文件类型不支持,请上传 ${options.accept} 格式的文件`);\n throw new Error(`文件类型不支持,请上传 ${options.accept} 格式的文件`);\n }\n }\n const md5 = await fileMd5(file);\n file.md5 = md5;\n const acl = options?.acl || 'default';\n const contentType = file.type || 'application/octet-stream';\n const { data } = await postResourceV1ResourcesUrl({\n domainCode: uploadDomainCode, // 领域编码\n sceneCode: uploadSceneCode, // 场景编码\n fileName: file.name,\n contentType,\n md5,\n size: file.size,\n acl, // 文件权限\n });\n\n if (data.data.uploadUrl) {\n try {\n await axios.put(data.data.uploadUrl, file, {\n headers: {\n 'Content-Type': contentType,\n 'x-oss-object-acl ': acl,\n 'Cache-Control': 'max-age=2592000',\n },\n signal: abortController.signal,\n onUploadProgress: progressEvent => {\n const progressEvt = progressEvent.event as UploadProgressEvent;\n progressEvt.percent = progressEvt.total > 0 ? (progressEvt.loaded / progressEvt.total) * 100 : 0;\n options?.elOptions?.onProgress(progressEvent.event);\n },\n });\n } catch (error: any) {\n // 如果是取消请求,不显示错误信息\n if (axios.isCancel(error) || error?.name === 'AbortError') {\n console.log('上传请求已取消');\n throw error;\n }\n GmMessage.error('推送至存储桶失败,请重试');\n throw error;\n }\n }\n\n return data.data;\n } finally {\n // 清理取消控制器\n abortControllers.value.delete(fileKey);\n isLoading.value = false;\n }\n };\n // 取消上传请求\n const cancelUpload = (fileUid: number) => {\n const abortController = abortControllers.value.get(fileUid);\n if (abortController) {\n abortController.abort();\n abortControllers.value.delete(fileUid);\n }\n };\n\n // 取消所有上传请求\n const cancelAllUploads = () => {\n abortControllers.value.forEach(controller => {\n controller.abort();\n });\n abortControllers.value.clear();\n };\n\n return {\n isLoading,\n uploadFile,\n cancelUpload,\n cancelAllUploads,\n };\n};\n"],"names":["ref","useGlobalConfig","file","GmMessage","genFileId","fileValidType","fileMd5","postResourceV1ResourcesUrl"],"mappings":"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"}
1
+ {"version":3,"file":"index.js","sources":["../../../../../../packages/hooks/base/useUploadFile/index.ts"],"sourcesContent":["import axios from 'axios';\nimport { ref } from 'vue';\nimport { postResourceV1ResourcesUrl } from '@giime/api/resource/controller';\nimport { fileMd5, fileValidType, genFileId } from '@giime/utils/src/file';\nimport { GmMessage } from '@giime/components/src/plugins/message';\nimport { useGlobalConfig } from '@giime/hooks/base/useGlobalConfig';\nimport type {\n UploadProgressEvent,\n UploadRawFile as ElUploadRawFile,\n UploadFile as ElUploadFile,\n UploadUserFile as ElUploadUserFile,\n UploadRequestOptions,\n} from 'element-plus';\n\nexport interface UploadRawFile extends ElUploadRawFile {\n md5?: string;\n}\n\nexport type UploadFile = Omit<ElUploadFile, 'raw'> & { raw?: UploadRawFile };\nexport type UploadFiles = UploadFile[];\n\nexport type UploadUserFile = Omit<ElUploadUserFile, 'raw'> & { raw?: UploadRawFile };\n\nexport interface UseUploadFileOptions {\n /**领域编码 */\n domainCode?: string;\n /**场景编码 */\n sceneCode?: string;\n /**接受上传的文件类型 */\n accept?: string;\n /**文件权限,默认继承桶 */\n acl?: string;\n /** 是否重命名文件 0 否 1 是,默认 0 */\n rename?: number;\n /**是否禁止上传文件到存储桶 */\n disablePutFile?: boolean;\n /** */\n elOptions?: UploadRequestOptions;\n}\n\nexport const useUploadFile = () => {\n const isLoading = ref(false);\n const domainCode = useGlobalConfig('domainCode');\n const sceneCode = useGlobalConfig('sceneCode');\n // 存储每个文件的取消控制器\n const abortControllers = ref<Map<number, AbortController>>(new Map());\n\n const uploadFile = async (file: UploadRawFile, options?: UseUploadFileOptions) => {\n // 领域编码\n const uploadDomainCode = options?.domainCode ?? domainCode.value;\n const uploadSceneCode = (options?.sceneCode ?? sceneCode.value) || 'internal_oss';\n if (!uploadDomainCode) {\n GmMessage.error('领域编码不能为空');\n throw new Error('领域编码不能为空');\n }\n\n // 创建取消控制器\n const abortController = new AbortController();\n const fileKey = file.uid ?? genFileId();\n abortControllers.value.set(fileKey, abortController);\n\n try {\n isLoading.value = true;\n // 验证文件类型\n if (options?.accept && options?.accept !== '*') {\n const isValidType = fileValidType(file, options.accept);\n if (!isValidType) {\n GmMessage.error(`文件类型不支持,请上传 ${options.accept} 格式的文件`);\n throw new Error(`文件类型不支持,请上传 ${options.accept} 格式的文件`);\n }\n }\n const md5 = await fileMd5(file);\n file.md5 = md5;\n const acl = options?.acl || 'default';\n const contentType = file.type || 'application/octet-stream';\n const { data } = await postResourceV1ResourcesUrl({\n domainCode: uploadDomainCode, // 领域编码\n sceneCode: uploadSceneCode, // 场景编码\n fileName: file.name,\n contentType,\n md5,\n size: file.size,\n acl, // 文件权限\n rename: options?.rename ?? 0,\n });\n\n if (data.data.uploadUrl) {\n try {\n await axios.put(data.data.uploadUrl, file, {\n headers: {\n 'Content-Type': contentType,\n 'x-oss-object-acl ': acl,\n 'Cache-Control': 'max-age=2592000',\n },\n signal: abortController.signal,\n onUploadProgress: progressEvent => {\n const progressEvt = progressEvent.event as UploadProgressEvent;\n progressEvt.percent = progressEvt.total > 0 ? (progressEvt.loaded / progressEvt.total) * 100 : 0;\n options?.elOptions?.onProgress(progressEvent.event);\n },\n });\n } catch (error: any) {\n // 如果是取消请求,不显示错误信息\n if (axios.isCancel(error) || error?.name === 'AbortError') {\n console.log('上传请求已取消');\n throw error;\n }\n GmMessage.error('推送至存储桶失败,请重试');\n throw error;\n }\n }\n\n return data.data;\n } finally {\n // 清理取消控制器\n abortControllers.value.delete(fileKey);\n isLoading.value = false;\n }\n };\n // 取消上传请求\n const cancelUpload = (fileUid: number) => {\n const abortController = abortControllers.value.get(fileUid);\n if (abortController) {\n abortController.abort();\n abortControllers.value.delete(fileUid);\n }\n };\n\n // 取消所有上传请求\n const cancelAllUploads = () => {\n abortControllers.value.forEach(controller => {\n controller.abort();\n });\n abortControllers.value.clear();\n };\n\n return {\n isLoading,\n uploadFile,\n cancelUpload,\n cancelAllUploads,\n };\n};\n"],"names":["ref","useGlobalConfig","file","GmMessage","genFileId","fileValidType","fileMd5","postResourceV1ResourcesUrl"],"mappings":";;;;;;;;;;;AAwCO,MAAM,gBAAgB,MAAM;AACjC,EAAA,MAAM,SAAA,GAAYA,QAAI,KAAK,CAAA;AAC3B,EAAA,MAAM,UAAA,GAAaC,sBAAgB,YAAY,CAAA;AAC/C,EAAA,MAAM,SAAA,GAAYA,sBAAgB,WAAW,CAAA;AAE7C,EAAA,MAAM,gBAAA,GAAmBD,OAAA,iBAAkC,IAAI,GAAA,EAAK,CAAA;AAEpE,EAAA,MAAM,UAAA,GAAa,OAAOE,MAAA,EAAqB,OAAA,KAAmC;AAEhF,IAAA,MAAM,gBAAA,GAAmB,OAAA,EAAS,UAAA,IAAc,UAAA,CAAW,KAAA;AAC3D,IAAA,MAAM,eAAA,GAAA,CAAmB,OAAA,EAAS,SAAA,IAAa,SAAA,CAAU,KAAA,KAAU,cAAA;AACnE,IAAA,IAAI,CAAC,gBAAA,EAAkB;AACrB,MAAAC,iBAAA,CAAU,MAAM,kDAAU,CAAA;AAC1B,MAAA,MAAM,IAAI,MAAM,kDAAU,CAAA;AAAA,IAC5B;AAGA,IAAA,MAAM,eAAA,GAAkB,IAAI,eAAA,EAAgB;AAC5C,IAAA,MAAM,OAAA,GAAUD,MAAA,CAAK,GAAA,IAAOE,qBAAA,EAAU;AACtC,IAAA,gBAAA,CAAiB,KAAA,CAAM,GAAA,CAAI,OAAA,EAAS,eAAe,CAAA;AAEnD,IAAA,IAAI;AACF,MAAA,SAAA,CAAU,KAAA,GAAQ,IAAA;AAElB,MAAA,IAAI,OAAA,EAAS,MAAA,IAAU,OAAA,EAAS,MAAA,KAAW,GAAA,EAAK;AAC9C,QAAA,MAAM,WAAA,GAAcC,kBAAA,CAAcH,MAAA,EAAM,OAAA,CAAQ,MAAM,CAAA;AACtD,QAAA,IAAI,CAAC,WAAA,EAAa;AAChB,UAAAC,iBAAA,CAAU,KAAA,CAAM,CAAA,mEAAA,EAAe,OAAA,CAAQ,MAAM,CAAA,+BAAA,CAAQ,CAAA;AACrD,UAAA,MAAM,IAAI,KAAA,CAAM,CAAA,mEAAA,EAAe,OAAA,CAAQ,MAAM,CAAA,+BAAA,CAAQ,CAAA;AAAA,QACvD;AAAA,MACF;AACA,MAAA,MAAM,GAAA,GAAM,MAAMG,YAAA,CAAQJ,MAAI,CAAA;AAC9B,MAAAA,MAAA,CAAK,GAAA,GAAM,GAAA;AACX,MAAA,MAAM,GAAA,GAAM,SAAS,GAAA,IAAO,SAAA;AAC5B,MAAA,MAAM,WAAA,GAAcA,OAAK,IAAA,IAAQ,0BAAA;AACjC,MAAA,MAAM,EAAE,IAAA,EAAK,GAAI,MAAMK,qDAAA,CAA2B;AAAA,QAChD,UAAA,EAAY,gBAAA;AAAA;AAAA,QACZ,SAAA,EAAW,eAAA;AAAA;AAAA,QACX,UAAUL,MAAA,CAAK,IAAA;AAAA,QACf,WAAA;AAAA,QACA,GAAA;AAAA,QACA,MAAMA,MAAA,CAAK,IAAA;AAAA,QACX,GAAA;AAAA;AAAA,QACA,MAAA,EAAQ,SAAS,MAAA,IAAU;AAAA,OAC5B,CAAA;AAED,MAAA,IAAI,IAAA,CAAK,KAAK,SAAA,EAAW;AACvB,QAAA,IAAI;AACF,UAAA,MAAM,KAAA,CAAM,GAAA,CAAI,IAAA,CAAK,IAAA,CAAK,WAAWA,MAAA,EAAM;AAAA,YACzC,OAAA,EAAS;AAAA,cACP,cAAA,EAAgB,WAAA;AAAA,cAChB,mBAAA,EAAqB,GAAA;AAAA,cACrB,eAAA,EAAiB;AAAA,aACnB;AAAA,YACA,QAAQ,eAAA,CAAgB,MAAA;AAAA,YACxB,kBAAkB,CAAA,aAAA,KAAiB;AACjC,cAAA,MAAM,cAAc,aAAA,CAAc,KAAA;AAClC,cAAA,WAAA,CAAY,OAAA,GAAU,YAAY,KAAA,GAAQ,CAAA,GAAK,YAAY,MAAA,GAAS,WAAA,CAAY,QAAS,GAAA,GAAM,CAAA;AAC/F,cAAA,OAAA,EAAS,SAAA,EAAW,UAAA,CAAW,aAAA,CAAc,KAAK,CAAA;AAAA,YACpD;AAAA,WACD,CAAA;AAAA,QACH,SAAS,KAAA,EAAY;AAEnB,UAAA,IAAI,MAAM,QAAA,CAAS,KAAK,CAAA,IAAK,KAAA,EAAO,SAAS,YAAA,EAAc;AACzD,YAAA,OAAA,CAAQ,IAAI,4CAAS,CAAA;AACrB,YAAA,MAAM,KAAA;AAAA,UACR;AACA,UAAAC,iBAAA,CAAU,MAAM,0EAAc,CAAA;AAC9B,UAAA,MAAM,KAAA;AAAA,QACR;AAAA,MACF;AAEA,MAAA,OAAO,IAAA,CAAK,IAAA;AAAA,IACd,CAAA,SAAE;AAEA,MAAA,gBAAA,CAAiB,KAAA,CAAM,OAAO,OAAO,CAAA;AACrC,MAAA,SAAA,CAAU,KAAA,GAAQ,KAAA;AAAA,IACpB;AAAA,EACF,CAAA;AAEA,EAAA,MAAM,YAAA,GAAe,CAAC,OAAA,KAAoB;AACxC,IAAA,MAAM,eAAA,GAAkB,gBAAA,CAAiB,KAAA,CAAM,GAAA,CAAI,OAAO,CAAA;AAC1D,IAAA,IAAI,eAAA,EAAiB;AACnB,MAAA,eAAA,CAAgB,KAAA,EAAM;AACtB,MAAA,gBAAA,CAAiB,KAAA,CAAM,OAAO,OAAO,CAAA;AAAA,IACvC;AAAA,EACF,CAAA;AAGA,EAAA,MAAM,mBAAmB,MAAM;AAC7B,IAAA,gBAAA,CAAiB,KAAA,CAAM,QAAQ,CAAA,UAAA,KAAc;AAC3C,MAAA,UAAA,CAAW,KAAA,EAAM;AAAA,IACnB,CAAC,CAAA;AACD,IAAA,gBAAA,CAAiB,MAAM,KAAA,EAAM;AAAA,EAC/B,CAAA;AAEA,EAAA,OAAO;AAAA,IACL,SAAA;AAAA,IACA,UAAA;AAAA,IACA,YAAA;AAAA,IACA;AAAA,GACF;AACF;;;;"}
package/lib/index.css CHANGED
@@ -930,11 +930,11 @@ video {
930
930
  margin: 0;
931
931
  }
932
932
 
933
- .gm-upload-pro-preview-dialog[data-v-80b383d8] [data-v-80b383d8] .el-dialog__body {
933
+ .gm-upload-pro-preview-dialog[data-v-fbc23b01] [data-v-fbc23b01] .el-dialog__body {
934
934
  padding: 0;
935
935
  }
936
936
 
937
- .gm-upload-pro-file-picture-card[data-v-80b383d8] [data-v-80b383d8] .el-upload-list__item, .gm-upload-pro-file-picture-card[data-v-80b383d8] [data-v-80b383d8] .el-upload--picture-card {
937
+ .gm-upload-pro-file-picture-card[data-v-fbc23b01] [data-v-fbc23b01] .el-upload-list__item, .gm-upload-pro-file-picture-card[data-v-fbc23b01] [data-v-fbc23b01] .el-upload--picture-card {
938
938
  width: auto;
939
939
  height: auto;
940
940
  }
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "giime",
3
- "version": "0.9.11",
3
+ "version": "0.9.12",
4
4
  "description": "A Component Library for Vue 3",
5
5
  "keywords": [
6
6
  "giime",