giime 0.6.35 → 0.6.37

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 (84) hide show
  1. package/dist/index.css +138 -138
  2. package/es/components/src/base/datePicker/DatePicker.vue.d.ts +3 -3
  3. package/es/components/src/base/datePicker/datePicker.d.ts +1 -1
  4. package/es/components/src/base/datePicker/index.d.ts +7 -7
  5. package/es/components/src/business/uploadPro/UploadPro.vue.mjs +1 -1
  6. package/es/components/src/business/uploadPro/UploadPro.vue2.mjs +38 -6
  7. package/es/components/src/business/uploadPro/UploadPro.vue2.mjs.map +1 -1
  8. package/es/components/src/business/uploadPro/uploadPro.mjs +1 -1
  9. package/es/components/src/business/uploadPro/uploadPro.mjs.map +1 -1
  10. package/es/components/src/composite/previewFile/PreviewFile.vue2.mjs +3 -2
  11. package/es/components/src/composite/previewFile/PreviewFile.vue2.mjs.map +1 -1
  12. package/es/components/src/composite/searchForm/searchFormItems/cascader/SearchFormCascader.vue2.mjs +1 -1
  13. package/es/components/src/composite/searchForm/searchFormItems/cascader/SearchFormCascader.vue2.mjs.map +1 -1
  14. package/es/components/src/composite/searchForm/searchFormItems/datePicker/SearchFormDatePicker.vue.d.ts +2 -5
  15. package/es/components/src/composite/searchForm/searchFormItems/datePicker/SearchFormDatePicker.vue2.mjs +6 -2
  16. package/es/components/src/composite/searchForm/searchFormItems/datePicker/SearchFormDatePicker.vue2.mjs.map +1 -1
  17. package/es/components/src/composite/searchForm/searchFormItems/datePicker/index.d.ts +2 -5
  18. package/es/components/src/composite/searchForm/searchFormItems/datePicker/searchFormDatePicker.d.ts +1 -2
  19. package/es/components/src/composite/searchForm/searchFormItems/datePicker/searchFormDatePicker.mjs +2 -2
  20. package/es/components/src/composite/searchForm/searchFormItems/datePicker/searchFormDatePicker.mjs.map +1 -1
  21. package/es/giime/index.mjs +2 -1
  22. package/es/giime/index.mjs.map +1 -1
  23. package/es/giime/version.d.ts +1 -1
  24. package/es/giime/version.mjs +1 -1
  25. package/es/giime/version.mjs.map +1 -1
  26. package/es/hooks/base/useDownload/index.mjs +27 -12
  27. package/es/hooks/base/useDownload/index.mjs.map +1 -1
  28. package/es/hooks/base/useUploadFile/index.d.ts +8 -1
  29. package/es/hooks/base/useUploadFile/index.mjs +36 -5
  30. package/es/hooks/base/useUploadFile/index.mjs.map +1 -1
  31. package/es/index.css +138 -138
  32. package/es/utils/index.mjs +2 -1
  33. package/es/utils/index.mjs.map +1 -1
  34. package/es/utils/src/date/dateShortcuts.d.ts +2 -2
  35. package/es/utils/src/date/dateShortcuts.mjs +87 -82
  36. package/es/utils/src/date/dateShortcuts.mjs.map +1 -1
  37. package/es/utils/src/file.d.ts +1 -6
  38. package/es/utils/src/file.mjs +2 -9
  39. package/es/utils/src/file.mjs.map +1 -1
  40. package/es/utils/src/http/interceptors.d.ts +1 -1
  41. package/es/utils/src/http/interceptors.mjs +4 -1
  42. package/es/utils/src/http/interceptors.mjs.map +1 -1
  43. package/lib/components/src/base/datePicker/DatePicker.vue.d.ts +3 -3
  44. package/lib/components/src/base/datePicker/datePicker.d.ts +1 -1
  45. package/lib/components/src/base/datePicker/index.d.ts +7 -7
  46. package/lib/components/src/business/uploadPro/UploadPro.vue.js +1 -1
  47. package/lib/components/src/business/uploadPro/UploadPro.vue2.js +38 -6
  48. package/lib/components/src/business/uploadPro/UploadPro.vue2.js.map +1 -1
  49. package/lib/components/src/business/uploadPro/uploadPro.js +1 -1
  50. package/lib/components/src/business/uploadPro/uploadPro.js.map +1 -1
  51. package/lib/components/src/composite/previewFile/PreviewFile.vue2.js +6 -5
  52. package/lib/components/src/composite/previewFile/PreviewFile.vue2.js.map +1 -1
  53. package/lib/components/src/composite/searchForm/searchFormItems/cascader/SearchFormCascader.vue2.js +1 -1
  54. package/lib/components/src/composite/searchForm/searchFormItems/cascader/SearchFormCascader.vue2.js.map +1 -1
  55. package/lib/components/src/composite/searchForm/searchFormItems/datePicker/SearchFormDatePicker.vue.d.ts +2 -5
  56. package/lib/components/src/composite/searchForm/searchFormItems/datePicker/SearchFormDatePicker.vue2.js +6 -2
  57. package/lib/components/src/composite/searchForm/searchFormItems/datePicker/SearchFormDatePicker.vue2.js.map +1 -1
  58. package/lib/components/src/composite/searchForm/searchFormItems/datePicker/index.d.ts +2 -5
  59. package/lib/components/src/composite/searchForm/searchFormItems/datePicker/searchFormDatePicker.d.ts +1 -2
  60. package/lib/components/src/composite/searchForm/searchFormItems/datePicker/searchFormDatePicker.js +2 -2
  61. package/lib/components/src/composite/searchForm/searchFormItems/datePicker/searchFormDatePicker.js.map +1 -1
  62. package/lib/giime/index.js +5 -1
  63. package/lib/giime/index.js.map +1 -1
  64. package/lib/giime/version.d.ts +1 -1
  65. package/lib/giime/version.js +1 -1
  66. package/lib/giime/version.js.map +1 -1
  67. package/lib/hooks/base/useDownload/index.js +27 -12
  68. package/lib/hooks/base/useDownload/index.js.map +1 -1
  69. package/lib/hooks/base/useUploadFile/index.d.ts +8 -1
  70. package/lib/hooks/base/useUploadFile/index.js +36 -5
  71. package/lib/hooks/base/useUploadFile/index.js.map +1 -1
  72. package/lib/index.css +138 -138
  73. package/lib/utils/index.js +5 -1
  74. package/lib/utils/index.js.map +1 -1
  75. package/lib/utils/src/date/dateShortcuts.d.ts +2 -2
  76. package/lib/utils/src/date/dateShortcuts.js +87 -82
  77. package/lib/utils/src/date/dateShortcuts.js.map +1 -1
  78. package/lib/utils/src/file.d.ts +1 -6
  79. package/lib/utils/src/file.js +5 -9
  80. package/lib/utils/src/file.js.map +1 -1
  81. package/lib/utils/src/http/interceptors.d.ts +1 -1
  82. package/lib/utils/src/http/interceptors.js +4 -1
  83. package/lib/utils/src/http/interceptors.js.map +1 -1
  84. package/package.json +1 -1
@@ -4,20 +4,25 @@ import '../../../api/resource/controller/index.mjs';
4
4
  import { fileValidType, fileMd5 } from '../../../utils/src/file.mjs';
5
5
  import { GmMessage } from '../../../components/src/plugins/message/index.mjs';
6
6
  import { useGlobalConfig } from '../useGlobalConfig/index.mjs';
7
+ import { genFileId } from 'element-plus';
7
8
  import { postV1ResourcesUrl } from '../../../api/resource/controller/ZiYuanGuanLi/postV1ResourcesUrl.mjs';
8
9
 
9
10
  const useUploadFile = () => {
10
11
  const isLoading = ref(false);
11
12
  const domainCode = useGlobalConfig("domainCode");
13
+ const abortControllers = ref(/* @__PURE__ */ new Map());
12
14
  const uploadFile = async (file, options) => {
13
- const uploadDomainCode = options.domainCode ?? domainCode.value;
15
+ const uploadDomainCode = options?.domainCode ?? domainCode.value;
14
16
  if (!uploadDomainCode) {
15
17
  GmMessage.error("\u9886\u57DF\u7F16\u7801\u4E0D\u80FD\u4E3A\u7A7A");
16
18
  throw new Error("\u9886\u57DF\u7F16\u7801\u4E0D\u80FD\u4E3A\u7A7A");
17
19
  }
20
+ const abortController = new AbortController();
21
+ const fileKey = file.uid ?? genFileId();
22
+ abortControllers.value.set(fileKey, abortController);
18
23
  try {
19
24
  isLoading.value = true;
20
- if (options.accept && options.accept !== "*") {
25
+ if (options?.accept && options?.accept !== "*") {
21
26
  const isValidType = fileValidType(file, options.accept);
22
27
  if (!isValidType) {
23
28
  GmMessage.error(`\u6587\u4EF6\u7C7B\u578B\u4E0D\u652F\u6301\uFF0C\u8BF7\u4E0A\u4F20 ${options.accept} \u683C\u5F0F\u7684\u6587\u4EF6`);
@@ -25,11 +30,11 @@ const useUploadFile = () => {
25
30
  }
26
31
  }
27
32
  const md5 = await fileMd5(file);
28
- const acl = options.acl || "default";
33
+ const acl = options?.acl || "default";
29
34
  const { data } = await postV1ResourcesUrl({
30
35
  domainCode: uploadDomainCode,
31
36
  // 领域编码
32
- sceneCode: options.sceneCode || "internal_oss",
37
+ sceneCode: options?.sceneCode || "internal_oss",
33
38
  // 场景编码
34
39
  fileName: file.name,
35
40
  contentType: file.type,
@@ -44,21 +49,47 @@ const useUploadFile = () => {
44
49
  headers: {
45
50
  "Content-Type": file.type,
46
51
  "x-oss-object-acl ": acl
52
+ },
53
+ signal: abortController.signal,
54
+ onUploadProgress: (progressEvent) => {
55
+ const progressEvt = progressEvent.event;
56
+ progressEvt.percent = progressEvt.total > 0 ? progressEvt.loaded / progressEvt.total * 100 : 0;
57
+ options?.elOptions?.onProgress(progressEvent.event);
47
58
  }
48
59
  });
49
60
  } catch (error) {
61
+ if (axios.isCancel(error) || error?.name === "AbortError") {
62
+ console.log("\u4E0A\u4F20\u8BF7\u6C42\u5DF2\u53D6\u6D88");
63
+ throw error;
64
+ }
50
65
  GmMessage.error("\u63A8\u9001\u81F3\u5B58\u50A8\u6876\u5931\u8D25\uFF0C\u8BF7\u91CD\u8BD5");
51
66
  throw error;
52
67
  }
53
68
  }
54
69
  return data.data;
55
70
  } finally {
71
+ abortControllers.value.delete(fileKey);
56
72
  isLoading.value = false;
57
73
  }
58
74
  };
75
+ const cancelUpload = (fileUid) => {
76
+ const abortController = abortControllers.value.get(fileUid);
77
+ if (abortController) {
78
+ abortController.abort();
79
+ abortControllers.value.delete(fileUid);
80
+ }
81
+ };
82
+ const cancelAllUploads = () => {
83
+ abortControllers.value.forEach((controller) => {
84
+ controller.abort();
85
+ });
86
+ abortControllers.value.clear();
87
+ };
59
88
  return {
60
89
  isLoading,
61
- uploadFile
90
+ uploadFile,
91
+ cancelUpload,
92
+ cancelAllUploads
62
93
  };
63
94
  };
64
95
 
@@ -1 +1 @@
1
- {"version":3,"file":"index.mjs","sources":["../../../../../../packages/hooks/base/useUploadFile/index.ts"],"sourcesContent":["import axios from 'axios';\nimport { ref } from 'vue';\nimport { postV1ResourcesUrl } from '@giime/api/resource/controller';\nimport { fileMd5, fileValidType } from '@giime/utils/src/file';\nimport { GmMessage } from '@giime/components/src/plugins/message';\nimport { useGlobalConfig } from '@giime/hooks/base/useGlobalConfig';\n\nexport interface UseUploadFileOptions {\n /**领域编码 */\n domainCode?: string;\n /**场景编码 */\n sceneCode?: string;\n /**接受上传的文件类型 */\n accept?: string;\n /**文件权限,默认继承桶 */\n acl?: string;\n}\n\nexport const useUploadFile = () => {\n const isLoading = ref(false);\n const domainCode = useGlobalConfig('domainCode');\n\n const uploadFile = async (file: File, options: UseUploadFileOptions) => {\n // 领域编码\n const uploadDomainCode = options.domainCode ?? domainCode.value;\n if (!uploadDomainCode) {\n GmMessage.error('领域编码不能为空');\n throw new Error('领域编码不能为空');\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 const acl = options.acl || 'default';\n const { data } = await postV1ResourcesUrl({\n domainCode: uploadDomainCode, // 领域编码\n sceneCode: options.sceneCode || 'internal_oss', // 场景编码\n fileName: file.name,\n contentType: file.type,\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': file.type,\n 'x-oss-object-acl ': acl,\n },\n });\n } catch (error) {\n GmMessage.error('推送至存储桶失败,请重试');\n throw error;\n }\n }\n\n return data.data;\n } finally {\n isLoading.value = false;\n }\n };\n return {\n isLoading,\n uploadFile,\n };\n};\n"],"names":[],"mappings":";;;;;;;;AAkBO,MAAM,gBAAgB,MAAM;AACjC,EAAM,MAAA,SAAA,GAAY,IAAI,KAAK,CAAA,CAAA;AAC3B,EAAM,MAAA,UAAA,GAAa,gBAAgB,YAAY,CAAA,CAAA;AAE/C,EAAM,MAAA,UAAA,GAAa,OAAO,IAAA,EAAY,OAAkC,KAAA;AAEtE,IAAM,MAAA,gBAAA,GAAmB,OAAQ,CAAA,UAAA,IAAc,UAAW,CAAA,KAAA,CAAA;AAC1D,IAAA,IAAI,CAAC,gBAAkB,EAAA;AACrB,MAAA,SAAA,CAAU,MAAM,kDAAU,CAAA,CAAA;AAC1B,MAAM,MAAA,IAAI,MAAM,kDAAU,CAAA,CAAA;AAAA,KAC5B;AACA,IAAI,IAAA;AACF,MAAA,SAAA,CAAU,KAAQ,GAAA,IAAA,CAAA;AAElB,MAAA,IAAI,OAAQ,CAAA,MAAA,IAAU,OAAQ,CAAA,MAAA,KAAW,GAAK,EAAA;AAC5C,QAAA,MAAM,WAAc,GAAA,aAAA,CAAc,IAAM,EAAA,OAAA,CAAQ,MAAM,CAAA,CAAA;AACtD,QAAA,IAAI,CAAC,WAAa,EAAA;AAChB,UAAA,SAAA,CAAU,KAAM,CAAA,CAAA,mEAAA,EAAe,OAAQ,CAAA,MAAM,CAAQ,+BAAA,CAAA,CAAA,CAAA;AACrD,UAAA,MAAM,IAAI,KAAA,CAAM,CAAe,mEAAA,EAAA,OAAA,CAAQ,MAAM,CAAQ,+BAAA,CAAA,CAAA,CAAA;AAAA,SACvD;AAAA,OACF;AACA,MAAM,MAAA,GAAA,GAAM,MAAM,OAAA,CAAQ,IAAI,CAAA,CAAA;AAC9B,MAAM,MAAA,GAAA,GAAM,QAAQ,GAAO,IAAA,SAAA,CAAA;AAC3B,MAAA,MAAM,EAAE,IAAA,EAAS,GAAA,MAAM,kBAAmB,CAAA;AAAA,QACxC,UAAY,EAAA,gBAAA;AAAA;AAAA,QACZ,SAAA,EAAW,QAAQ,SAAa,IAAA,cAAA;AAAA;AAAA,QAChC,UAAU,IAAK,CAAA,IAAA;AAAA,QACf,aAAa,IAAK,CAAA,IAAA;AAAA,QAClB,GAAA;AAAA,QACA,MAAM,IAAK,CAAA,IAAA;AAAA,QACX,GAAA;AAAA;AAAA,OACD,CAAA,CAAA;AAED,MAAI,IAAA,IAAA,CAAK,KAAK,SAAW,EAAA;AACvB,QAAI,IAAA;AACF,UAAA,MAAM,KAAM,CAAA,GAAA,CAAI,IAAK,CAAA,IAAA,CAAK,WAAW,IAAM,EAAA;AAAA,YACzC,OAAS,EAAA;AAAA,cACP,gBAAgB,IAAK,CAAA,IAAA;AAAA,cACrB,mBAAqB,EAAA,GAAA;AAAA,aACvB;AAAA,WACD,CAAA,CAAA;AAAA,iBACM,KAAO,EAAA;AACd,UAAA,SAAA,CAAU,MAAM,0EAAc,CAAA,CAAA;AAC9B,UAAM,MAAA,KAAA,CAAA;AAAA,SACR;AAAA,OACF;AAEA,MAAA,OAAO,IAAK,CAAA,IAAA,CAAA;AAAA,KACZ,SAAA;AACA,MAAA,SAAA,CAAU,KAAQ,GAAA,KAAA,CAAA;AAAA,KACpB;AAAA,GACF,CAAA;AACA,EAAO,OAAA;AAAA,IACL,SAAA;AAAA,IACA,UAAA;AAAA,GACF,CAAA;AACF;;;;"}
1
+ {"version":3,"file":"index.mjs","sources":["../../../../../../packages/hooks/base/useUploadFile/index.ts"],"sourcesContent":["import axios from 'axios';\nimport { ref } from 'vue';\nimport { postV1ResourcesUrl } 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 { UploadProgressEvent, UploadRawFile, UploadRequestOptions } from 'element-plus';\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 // 存储每个文件的取消控制器\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 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 const acl = options?.acl || 'default';\n const { data } = await postV1ResourcesUrl({\n domainCode: uploadDomainCode, // 领域编码\n sceneCode: options?.sceneCode || 'internal_oss', // 场景编码\n fileName: file.name,\n contentType: file.type,\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': file.type,\n 'x-oss-object-acl ': acl,\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":[],"mappings":"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"}
package/es/index.css CHANGED
@@ -873,16 +873,97 @@ video {
873
873
  .gm-group:hover .group-hover\:gm-block {
874
874
  display: block;
875
875
  }
876
+ .gm-flex-center[data-v-c17deec9] {
877
+ align-items: center;
878
+ }
879
+
880
+ .gm-flex-justify-between[data-v-c17deec9] {
881
+ justify-content: space-between;
882
+ }
883
+ .gm-upload-preview-dialog[data-v-8077ce51] [data-v-8077ce51] .el-dialog__body {
884
+ padding: 0;
885
+ }
886
+
887
+ .gm-upload-file-picture-card[data-v-8077ce51] [data-v-8077ce51] .el-upload-list__item, .gm-upload-file-picture-card[data-v-8077ce51] [data-v-8077ce51] .el-upload--picture-card {
888
+ width: auto;
889
+ height: auto;
890
+ }
891
+ .gm-upload-file {
892
+ line-height: normal;
893
+ }
894
+ .gm-upload-file .el-checkbox {
895
+ position: absolute;
896
+ left: 10px;
897
+ top: 0;
898
+ z-index: 9;
899
+ }
900
+ .gm-upload-file .el-upload-list--picture-card {
901
+ gap: 10px;
902
+ }
903
+ .gm-upload-file .el-upload-list__item {
904
+ margin: 0;
905
+ }
906
+ .gm-upload-file .el-upload-list__item-file-name {
907
+ line-height: normal;
908
+ }
909
+ .gm-upload-file .el-upload-dragger {
910
+ padding: 0;
911
+ border: none;
912
+ width: 100%;
913
+ height: 100%;
914
+ display: flex;
915
+ }
916
+ .gm-upload-file .el-upload--picture-card {
917
+ border: none;
918
+ }
919
+
920
+ .gm-upload-file-disabled .el-upload--picture-card {
921
+ display: none;
922
+ }
923
+ .gm-upload-file-disabled .el-upload-list__item-status-label {
924
+ display: none;
925
+ }
926
+ .circular[data-v-d7b04fae] {
927
+ animation: loading-rotate-d7b04fae 2s linear infinite;
928
+ }
929
+
930
+ .path[data-v-d7b04fae] {
931
+ animation: loading-dash-d7b04fae 1.5s ease-in-out infinite;
932
+ stroke-dasharray: 90, 150;
933
+ stroke-dashoffset: 0;
934
+ stroke: var(--el-color-primary);
935
+ stroke-linecap: round;
936
+ }
937
+
938
+ @keyframes loading-rotate-d7b04fae {
939
+ to {
940
+ transform: rotate(360deg);
941
+ }
942
+ }
943
+ @keyframes loading-dash-d7b04fae {
944
+ 0% {
945
+ stroke-dasharray: 1, 200;
946
+ stroke-dashoffset: 0;
947
+ }
948
+ 50% {
949
+ stroke-dasharray: 90, 150;
950
+ stroke-dashoffset: -40px;
951
+ }
952
+ 100% {
953
+ stroke-dasharray: 90, 150;
954
+ stroke-dashoffset: -120px;
955
+ }
956
+ }
876
957
 
877
958
  .gm-range-number .el-form-item[data-v-1ae16d96] {
878
959
  margin: 0;
879
960
  }
880
961
 
881
- .gm-upload-pro-preview-dialog[data-v-2c95bde6] [data-v-2c95bde6] .el-dialog__body {
962
+ .gm-upload-pro-preview-dialog[data-v-ca99928c] [data-v-ca99928c] .el-dialog__body {
882
963
  padding: 0;
883
964
  }
884
965
 
885
- .gm-upload-pro-file-picture-card[data-v-2c95bde6] [data-v-2c95bde6] .el-upload-list__item, .gm-upload-pro-file-picture-card[data-v-2c95bde6] [data-v-2c95bde6] .el-upload--picture-card {
966
+ .gm-upload-pro-file-picture-card[data-v-ca99928c] [data-v-ca99928c] .el-upload-list__item, .gm-upload-pro-file-picture-card[data-v-ca99928c] [data-v-ca99928c] .el-upload--picture-card {
886
967
  width: auto;
887
968
  height: auto;
888
969
  }
@@ -924,13 +1005,9 @@ video {
924
1005
  .gm-upload-pro-file-disabled .el-upload-list__item-status-label {
925
1006
  display: none;
926
1007
  }
927
- .gm-upload-preview-dialog[data-v-8077ce51] [data-v-8077ce51] .el-dialog__body {
928
- padding: 0;
929
- }
930
-
931
- .gm-upload-file-picture-card[data-v-8077ce51] [data-v-8077ce51] .el-upload-list__item, .gm-upload-file-picture-card[data-v-8077ce51] [data-v-8077ce51] .el-upload--picture-card {
932
- width: auto;
933
- height: auto;
1008
+ [data-v-488ca110] .gmSearchForm .el-form-item {
1009
+ margin-right: 0;
1010
+ margin-bottom: 4px;
934
1011
  }
935
1012
  [data-v-2c351ff8] .gmTableNoBorder .el-table__body .el-table__cell {
936
1013
  border-right: none;
@@ -955,68 +1032,15 @@ video {
955
1032
  [data-v-2c351ff8] .gmTableNoBorder .el-table__border-left-patch {
956
1033
  height: 0;
957
1034
  }
958
- [data-v-98c2e804] .gmTableNoBorder .el-table__body .el-table__cell {
959
- border-right: none;
960
- }
961
-
962
- [data-v-98c2e804] .gmTableNoBorder .el-table__inner-wrapper:before {
963
- height: 0;
964
- }
965
-
966
- [data-v-98c2e804] .gmTableNoBorder.el-table--border .el-table__inner-wrapper:after {
967
- height: 0;
968
- }
969
-
970
- [data-v-98c2e804] .gmTableNoBorder.el-table--border:after {
971
- height: 0;
972
- }
973
-
974
- [data-v-98c2e804] .gmTableNoBorder.el-table--border:before {
975
- height: 0;
976
- }
977
-
978
- [data-v-98c2e804] .gmTableNoBorder .el-table__border-left-patch {
979
- height: 0;
980
- }
981
- .gm-upload-file {
982
- line-height: normal;
983
- }
984
- .gm-upload-file .el-checkbox {
985
- position: absolute;
986
- left: 10px;
987
- top: 0;
988
- z-index: 9;
989
- }
990
- .gm-upload-file .el-upload-list--picture-card {
991
- gap: 10px;
992
- }
993
- .gm-upload-file .el-upload-list__item {
994
- margin: 0;
995
- }
996
- .gm-upload-file .el-upload-list__item-file-name {
997
- line-height: normal;
998
- }
999
- .gm-upload-file .el-upload-dragger {
1000
- padding: 0;
1001
- border: none;
1002
- width: 100%;
1003
- height: 100%;
1004
- display: flex;
1005
- }
1006
- .gm-upload-file .el-upload--picture-card {
1007
- border: none;
1008
- }
1009
1035
 
1010
- .gm-upload-file-disabled .el-upload--picture-card {
1011
- display: none;
1036
+ .pagination-container[data-v-47d35e7b] {
1037
+ background: #fff;
1038
+ padding-top: 12px;
1012
1039
  }
1013
- .gm-upload-file-disabled .el-upload-list__item-status-label {
1040
+ .pagination-container.hidden[data-v-47d35e7b] {
1014
1041
  display: none;
1015
1042
  }
1016
- [data-v-488ca110] .gmSearchForm .el-form-item {
1017
- margin-right: 0;
1018
- margin-bottom: 4px;
1019
- }
1043
+
1020
1044
  .gm-number-interval-single[data-v-4e6f4d6f] {
1021
1045
  border-radius: var(--el-input-border-radius, var(--el-border-radius-base));
1022
1046
  box-shadow: 0 0 0 1px var(--el-input-border-color, var(--el-border-color)) inset;
@@ -1035,160 +1059,136 @@ video {
1035
1059
  .gm-number-interval-single[data-v-4e6f4d6f]:hover .gm-number-interval-close[data-v-4e6f4d6f] {
1036
1060
  display: flex;
1037
1061
  }
1038
- .gm-flex-center[data-v-c17deec9] {
1039
- align-items: center;
1040
- }
1041
-
1042
- .gm-flex-justify-between[data-v-c17deec9] {
1043
- justify-content: space-between;
1044
- }
1045
- .circular[data-v-d7b04fae] {
1046
- animation: loading-rotate-d7b04fae 2s linear infinite;
1047
- }
1048
-
1049
- .path[data-v-d7b04fae] {
1050
- animation: loading-dash-d7b04fae 1.5s ease-in-out infinite;
1051
- stroke-dasharray: 90, 150;
1052
- stroke-dashoffset: 0;
1053
- stroke: var(--el-color-primary);
1054
- stroke-linecap: round;
1055
- }
1056
-
1057
- @keyframes loading-rotate-d7b04fae {
1058
- to {
1059
- transform: rotate(360deg);
1060
- }
1061
- }
1062
- @keyframes loading-dash-d7b04fae {
1063
- 0% {
1064
- stroke-dasharray: 1, 200;
1065
- stroke-dashoffset: 0;
1066
- }
1067
- 50% {
1068
- stroke-dasharray: 90, 150;
1069
- stroke-dashoffset: -40px;
1070
- }
1071
- 100% {
1072
- stroke-dasharray: 90, 150;
1073
- stroke-dashoffset: -120px;
1074
- }
1075
- }
1076
-
1077
- .pagination-container[data-v-47d35e7b] {
1078
- background: #fff;
1079
- padding-top: 12px;
1080
- }
1081
- .pagination-container.hidden[data-v-47d35e7b] {
1082
- display: none;
1083
- }
1084
-
1085
1062
  @charset "UTF-8";
1086
- .table-custom-header-drawer .el-drawer__header {
1063
+ .custom-operate-drawer .el-drawer__header {
1087
1064
  padding: 10px 15px;
1088
1065
  margin: 0;
1089
1066
  border-bottom: 1px solid #ebeef5;
1090
1067
  }
1091
- .table-custom-header-drawer .el-drawer__title {
1068
+ .custom-operate-drawer .el-drawer__title {
1092
1069
  font-size: 14px;
1093
1070
  color: #333;
1094
1071
  }
1095
- .table-custom-header-drawer .el-drawer__body {
1072
+ .custom-operate-drawer .el-drawer__body {
1096
1073
  padding: 15px;
1097
1074
  }
1098
- .table-custom-header-drawer .el-drawer__footer {
1075
+ .custom-operate-drawer .el-drawer__footer {
1099
1076
  padding: 10px 15px;
1100
1077
  border-top: 1px solid #ebeef5;
1101
1078
  }
1102
- .table-custom-header-drawer .el-checkbox {
1079
+ .custom-operate-drawer .el-checkbox {
1103
1080
  display: flex;
1104
1081
  align-items: center;
1105
1082
  }
1106
- .table-custom-header-drawer .el-input__inner {
1083
+ .custom-operate-drawer .el-input__inner {
1107
1084
  text-align: center;
1108
1085
  }
1109
- .table-custom-header-drawer .el-input__suffix {
1086
+ .custom-operate-drawer .el-input__suffix {
1110
1087
  position: absolute;
1111
1088
  right: 10px;
1112
1089
  }
1113
- .table-custom-header-drawer .custom-content li {
1090
+ .custom-operate-drawer .custom-content li {
1114
1091
  display: flex;
1115
1092
  align-items: center;
1116
1093
  justify-content: center;
1117
1094
  height: 44px;
1118
1095
  }
1119
- .table-custom-header-drawer .custom-group {
1096
+ .custom-operate-drawer .custom-group {
1120
1097
  max-height: calc(100vh - 226px);
1121
1098
  overflow-y: auto;
1122
1099
  }
1123
- .table-custom-header-drawer .custom-group::-webkit-scrollbar {
1100
+ .custom-operate-drawer .custom-group::-webkit-scrollbar {
1124
1101
  /*滚动条整体样式*/
1125
1102
  width: 4px;
1126
1103
  /*高宽分别对应横竖滚动条的尺寸*/
1127
1104
  height: 1px;
1128
1105
  }
1129
- .table-custom-header-drawer .custom-group::-webkit-scrollbar-thumb {
1106
+ .custom-operate-drawer .custom-group::-webkit-scrollbar-thumb {
1130
1107
  /*滚动条里面小方块*/
1131
1108
  border-radius: 10px;
1132
1109
  box-shadow: inset 0 0 5px rgba(0, 0, 0, 0.1);
1133
1110
  background: #999;
1134
1111
  }
1135
- .table-custom-header-drawer .custom-group::-webkit-scrollbar-track {
1112
+ .custom-operate-drawer .custom-group::-webkit-scrollbar-track {
1136
1113
  /*滚动条里面轨道*/
1137
1114
  box-shadow: inset 0 0 3px rgba(0, 0, 0, 0.1);
1138
1115
  border-radius: 10px;
1139
1116
  background: #eee;
1140
1117
  }
1118
+ [data-v-98c2e804] .gmTableNoBorder .el-table__body .el-table__cell {
1119
+ border-right: none;
1120
+ }
1121
+
1122
+ [data-v-98c2e804] .gmTableNoBorder .el-table__inner-wrapper:before {
1123
+ height: 0;
1124
+ }
1125
+
1126
+ [data-v-98c2e804] .gmTableNoBorder.el-table--border .el-table__inner-wrapper:after {
1127
+ height: 0;
1128
+ }
1129
+
1130
+ [data-v-98c2e804] .gmTableNoBorder.el-table--border:after {
1131
+ height: 0;
1132
+ }
1133
+
1134
+ [data-v-98c2e804] .gmTableNoBorder.el-table--border:before {
1135
+ height: 0;
1136
+ }
1137
+
1138
+ [data-v-98c2e804] .gmTableNoBorder .el-table__border-left-patch {
1139
+ height: 0;
1140
+ }
1141
1141
  @charset "UTF-8";
1142
- .custom-operate-drawer .el-drawer__header {
1142
+ .table-custom-header-drawer .el-drawer__header {
1143
1143
  padding: 10px 15px;
1144
1144
  margin: 0;
1145
1145
  border-bottom: 1px solid #ebeef5;
1146
1146
  }
1147
- .custom-operate-drawer .el-drawer__title {
1147
+ .table-custom-header-drawer .el-drawer__title {
1148
1148
  font-size: 14px;
1149
1149
  color: #333;
1150
1150
  }
1151
- .custom-operate-drawer .el-drawer__body {
1151
+ .table-custom-header-drawer .el-drawer__body {
1152
1152
  padding: 15px;
1153
1153
  }
1154
- .custom-operate-drawer .el-drawer__footer {
1154
+ .table-custom-header-drawer .el-drawer__footer {
1155
1155
  padding: 10px 15px;
1156
1156
  border-top: 1px solid #ebeef5;
1157
1157
  }
1158
- .custom-operate-drawer .el-checkbox {
1158
+ .table-custom-header-drawer .el-checkbox {
1159
1159
  display: flex;
1160
1160
  align-items: center;
1161
1161
  }
1162
- .custom-operate-drawer .el-input__inner {
1162
+ .table-custom-header-drawer .el-input__inner {
1163
1163
  text-align: center;
1164
1164
  }
1165
- .custom-operate-drawer .el-input__suffix {
1165
+ .table-custom-header-drawer .el-input__suffix {
1166
1166
  position: absolute;
1167
1167
  right: 10px;
1168
1168
  }
1169
- .custom-operate-drawer .custom-content li {
1169
+ .table-custom-header-drawer .custom-content li {
1170
1170
  display: flex;
1171
1171
  align-items: center;
1172
1172
  justify-content: center;
1173
1173
  height: 44px;
1174
1174
  }
1175
- .custom-operate-drawer .custom-group {
1175
+ .table-custom-header-drawer .custom-group {
1176
1176
  max-height: calc(100vh - 226px);
1177
1177
  overflow-y: auto;
1178
1178
  }
1179
- .custom-operate-drawer .custom-group::-webkit-scrollbar {
1179
+ .table-custom-header-drawer .custom-group::-webkit-scrollbar {
1180
1180
  /*滚动条整体样式*/
1181
1181
  width: 4px;
1182
1182
  /*高宽分别对应横竖滚动条的尺寸*/
1183
1183
  height: 1px;
1184
1184
  }
1185
- .custom-operate-drawer .custom-group::-webkit-scrollbar-thumb {
1185
+ .table-custom-header-drawer .custom-group::-webkit-scrollbar-thumb {
1186
1186
  /*滚动条里面小方块*/
1187
1187
  border-radius: 10px;
1188
1188
  box-shadow: inset 0 0 5px rgba(0, 0, 0, 0.1);
1189
1189
  background: #999;
1190
1190
  }
1191
- .custom-operate-drawer .custom-group::-webkit-scrollbar-track {
1191
+ .table-custom-header-drawer .custom-group::-webkit-scrollbar-track {
1192
1192
  /*滚动条里面轨道*/
1193
1193
  box-shadow: inset 0 0 3px rgba(0, 0, 0, 0.1);
1194
1194
  border-radius: 10px;
@@ -5,7 +5,7 @@ import './src/http/index.mjs';
5
5
  export { getModifiedData, hasOwn, keysOf, resetObject } from './src/objects.mjs';
6
6
  import './src/types.mjs';
7
7
  import './src/date/index.mjs';
8
- export { base64ToBlob, base64ToFile, blobToBase64, blobToFile, downloadFile, fileMd5, fileToBase64, fileToBlob, fileToUrl, fileValidType, getImageInfo, getVideoInfo, urlToBlob, urlToFile } from './src/file.mjs';
8
+ export { base64ToBlob, base64ToFile, blobToBase64, blobToFile, fileMd5, fileToBase64, fileToBlob, fileToUrl, fileValidType, getImageInfo, getVideoInfo, urlToBlob, urlToFile } from './src/file.mjs';
9
9
  export { compareVersions, isVersionGreaterOrEqual, omitOnEvents, remove } from './src/general.mjs';
10
10
  import './src/crypto/index.mjs';
11
11
  export { formatNumberWithCommas } from './src/number.mjs';
@@ -25,6 +25,7 @@ export { req401Interceptors, res401Interceptors } from './src/http/interceptors.
25
25
  export { giimeDevProxy } from './src/http/devProxy.mjs';
26
26
  export { getDomain } from './src/http/url.mjs';
27
27
  export { getDateShortcuts } from './src/date/dateShortcuts.mjs';
28
+ export { genFileId } from 'element-plus';
28
29
  export { b64_hmac_md5, b64_md5, hex_hmac_md5, hex_md5, str_hmac_md5, str_md5, ts_md5_file } from './src/crypto/md5.mjs';
29
30
  export { any_hmac_sha1, any_sha1, b64_hmac_sha1, b64_sha1, hex_hmac_sha1, hex_sha1 } from './src/crypto/sha1.mjs';
30
31
  export { filterTreeByName } from './src/tree/filterTreeByName.mjs';
@@ -1 +1 @@
1
- {"version":3,"file":"index.mjs","sources":[],"sourcesContent":[],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;"}
1
+ {"version":3,"file":"index.mjs","sources":[],"sourcesContent":[],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;"}
@@ -5,8 +5,8 @@
5
5
  */
6
6
  export declare const getDateShortcuts: (type: string) => {
7
7
  text: string;
8
- value: () => Date;
8
+ value: () => Date[];
9
9
  }[] | {
10
10
  text: string;
11
- value: () => Date[];
11
+ value: () => Date;
12
12
  }[];