giime 0.6.36 → 0.6.38

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 (66) hide show
  1. package/dist/index.css +88 -88
  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/searchForm/searchFormItems/datePicker/SearchFormDatePicker.vue.d.ts +2 -5
  11. package/es/components/src/composite/searchForm/searchFormItems/datePicker/SearchFormDatePicker.vue2.mjs +6 -2
  12. package/es/components/src/composite/searchForm/searchFormItems/datePicker/SearchFormDatePicker.vue2.mjs.map +1 -1
  13. package/es/components/src/composite/searchForm/searchFormItems/datePicker/index.d.ts +2 -5
  14. package/es/components/src/composite/searchForm/searchFormItems/datePicker/searchFormDatePicker.d.ts +1 -2
  15. package/es/components/src/composite/searchForm/searchFormItems/datePicker/searchFormDatePicker.mjs +2 -2
  16. package/es/components/src/composite/searchForm/searchFormItems/datePicker/searchFormDatePicker.mjs.map +1 -1
  17. package/es/giime/index.mjs +1 -0
  18. package/es/giime/index.mjs.map +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/base/useUploadFile/index.d.ts +8 -1
  23. package/es/hooks/base/useUploadFile/index.mjs +34 -2
  24. package/es/hooks/base/useUploadFile/index.mjs.map +1 -1
  25. package/es/index.css +88 -88
  26. package/es/utils/index.mjs +1 -0
  27. package/es/utils/index.mjs.map +1 -1
  28. package/es/utils/src/date/dateShortcuts.d.ts +2 -2
  29. package/es/utils/src/date/dateShortcuts.mjs +87 -82
  30. package/es/utils/src/date/dateShortcuts.mjs.map +1 -1
  31. package/es/utils/src/file.d.ts +1 -0
  32. package/es/utils/src/file.mjs +1 -0
  33. package/es/utils/src/file.mjs.map +1 -1
  34. package/lib/components/src/base/datePicker/DatePicker.vue.d.ts +3 -3
  35. package/lib/components/src/base/datePicker/datePicker.d.ts +1 -1
  36. package/lib/components/src/base/datePicker/index.d.ts +7 -7
  37. package/lib/components/src/business/uploadPro/UploadPro.vue.js +1 -1
  38. package/lib/components/src/business/uploadPro/UploadPro.vue2.js +38 -6
  39. package/lib/components/src/business/uploadPro/UploadPro.vue2.js.map +1 -1
  40. package/lib/components/src/business/uploadPro/uploadPro.js +1 -1
  41. package/lib/components/src/business/uploadPro/uploadPro.js.map +1 -1
  42. package/lib/components/src/composite/searchForm/searchFormItems/datePicker/SearchFormDatePicker.vue.d.ts +2 -5
  43. package/lib/components/src/composite/searchForm/searchFormItems/datePicker/SearchFormDatePicker.vue2.js +6 -2
  44. package/lib/components/src/composite/searchForm/searchFormItems/datePicker/SearchFormDatePicker.vue2.js.map +1 -1
  45. package/lib/components/src/composite/searchForm/searchFormItems/datePicker/index.d.ts +2 -5
  46. package/lib/components/src/composite/searchForm/searchFormItems/datePicker/searchFormDatePicker.d.ts +1 -2
  47. package/lib/components/src/composite/searchForm/searchFormItems/datePicker/searchFormDatePicker.js +2 -2
  48. package/lib/components/src/composite/searchForm/searchFormItems/datePicker/searchFormDatePicker.js.map +1 -1
  49. package/lib/giime/index.js +5 -0
  50. package/lib/giime/index.js.map +1 -1
  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/base/useUploadFile/index.d.ts +8 -1
  55. package/lib/hooks/base/useUploadFile/index.js +34 -2
  56. package/lib/hooks/base/useUploadFile/index.js.map +1 -1
  57. package/lib/index.css +88 -88
  58. package/lib/utils/index.js +5 -0
  59. package/lib/utils/index.js.map +1 -1
  60. package/lib/utils/src/date/dateShortcuts.d.ts +2 -2
  61. package/lib/utils/src/date/dateShortcuts.js +87 -82
  62. package/lib/utils/src/date/dateShortcuts.js.map +1 -1
  63. package/lib/utils/src/file.d.ts +1 -0
  64. package/lib/utils/src/file.js +5 -0
  65. package/lib/utils/src/file.js.map +1 -1
  66. package/package.json +1 -1
@@ -20,6 +20,10 @@ var _sfc_main = /* @__PURE__ */ defineComponent({
20
20
  const emit = __emit;
21
21
  useWatchModelChange(modelValue, { prop: props.prop, noDefaultSync: props.noDefaultSync });
22
22
  const shortcutList = computed(() => Array.isArray(props.shortcuts) ? props.shortcuts : getDateShortcuts(props.type));
23
+ const valueFormat = computed(() => props.valueFormat ?? (props.type === "datetimerange" ? "YYYY-MM-DD HH:mm:ss" : "YYYY-MM-DD"));
24
+ const defaultTime = computed(
25
+ () => props.defaultTime ?? (props.type === "datetimerange" ? [new Date(2e3, 0, 1, 0, 0, 0), new Date(2e3, 0, 1, 23, 59, 59)] : void 0)
26
+ );
23
27
  const onChange = (value) => {
24
28
  emit("change", value);
25
29
  };
@@ -33,7 +37,7 @@ var _sfc_main = /* @__PURE__ */ defineComponent({
33
37
  "onUpdate:modelValue": _cache[0] || (_cache[0] = ($event) => modelValue.value = $event),
34
38
  type: _ctx.type,
35
39
  "range-separator": "-",
36
- "value-format": _ctx.valueFormat,
40
+ "value-format": valueFormat.value,
37
41
  clearable: "",
38
42
  disabled: _ctx.disabled,
39
43
  placeholder: _ctx.label,
@@ -44,7 +48,7 @@ var _sfc_main = /* @__PURE__ */ defineComponent({
44
48
  },
45
49
  shortcuts: shortcutList.value,
46
50
  defaultValue: _ctx.defaultValue,
47
- defaultTime: _ctx.defaultTime,
51
+ defaultTime: defaultTime.value,
48
52
  onChange
49
53
  }, null, 8, ["modelValue", "type", "value-format", "disabled", "placeholder", "start-placeholder", "end-placeholder", "shortcuts", "defaultValue", "defaultTime"])
50
54
  ]),
@@ -1 +1 @@
1
- {"version":3,"file":"SearchFormDatePicker.vue2.mjs","sources":["../../../../../../../../../packages/components/src/composite/searchForm/searchFormItems/datePicker/SearchFormDatePicker.vue"],"sourcesContent":["<template>\n <gm-form-item :prop=\"prop\">\n <gm-date-picker\n v-model=\"modelValue\"\n :type=\"type\"\n range-separator=\"-\"\n :value-format=\"valueFormat\"\n clearable\n :disabled=\"disabled\"\n :placeholder=\"label\"\n :start-placeholder=\"startPlaceholder ?? `${label}开始日期`\"\n :end-placeholder=\"endPlaceholder ?? `${label}结束日期`\"\n :style=\"{\n '--el-date-editor-width': '100%',\n }\"\n :shortcuts=\"shortcutList\"\n :defaultValue=\"defaultValue\"\n :defaultTime=\"defaultTime\"\n @change=\"onChange\"\n />\n </gm-form-item>\n</template>\n<script lang=\"ts\" setup>\nimport { computed } from 'vue';\nimport { getDateShortcuts } from '@giime/utils';\nimport { useWatchModelChange } from '../../composables/useWatchModelChange';\n// import { searchFormHandleQueryKey } from '../../searchForm';\nimport { SearchFormDatePickerName, searchFormDatePickerEmits, searchFormDatePickerProps } from './searchFormDatePicker';\nimport type { ModelValueType } from 'element-plus';\nimport type { DatePickerProps } from '@giime/components/src/base/datePicker';\ndefineOptions({\n name: SearchFormDatePickerName,\n});\nconst modelValue = defineModel<DatePickerProps['modelValue'] | undefined>();\nconst props = defineProps(searchFormDatePickerProps);\nconst emit = defineEmits(searchFormDatePickerEmits);\nuseWatchModelChange(modelValue, { prop: props.prop, noDefaultSync: props.noDefaultSync });\n\n// const isRangeType = computed(() => props.type === 'datetimerange' || props.type === 'daterange' || props.type === 'monthrange');\n/**\n * shortcuts赋予默认值\n */\nconst shortcutList = computed(() => (Array.isArray(props.shortcuts) ? props.shortcuts : getDateShortcuts(props.type)));\n// const handleQuery = inject(searchFormHandleQueryKey);\nconst onChange = (value: ModelValueType) => {\n // handleQuery?.();\n emit('change', value);\n};\n</script>\n"],"names":["_useModel"],"mappings":";;;;;;;;;;;;;;;;;AAiCA,IAAM,MAAA,UAAA,GAAaA,QAAsD,CAAA,OAAA,EAAA,YAAC,CAAA,CAAA;AAC1E,IAAA,MAAM,KAAQ,GAAA,OAAA,CAAA;AACd,IAAA,MAAM,IAAO,GAAA,MAAA,CAAA;AACb,IAAoB,mBAAA,CAAA,UAAA,EAAY,EAAE,IAAM,EAAA,KAAA,CAAM,MAAM,aAAe,EAAA,KAAA,CAAM,eAAe,CAAA,CAAA;AAMxF,IAAA,MAAM,YAAe,GAAA,QAAA,CAAS,MAAO,KAAA,CAAM,OAAQ,CAAA,KAAA,CAAM,SAAS,CAAA,GAAI,KAAM,CAAA,SAAA,GAAY,gBAAiB,CAAA,KAAA,CAAM,IAAI,CAAE,CAAA,CAAA;AAErH,IAAM,MAAA,QAAA,GAAW,CAAC,KAA0B,KAAA;AAE1C,MAAA,IAAA,CAAK,UAAU,KAAK,CAAA,CAAA;AAAA,KACtB,CAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;"}
1
+ {"version":3,"file":"SearchFormDatePicker.vue2.mjs","sources":["../../../../../../../../../packages/components/src/composite/searchForm/searchFormItems/datePicker/SearchFormDatePicker.vue"],"sourcesContent":["<template>\n <gm-form-item :prop=\"prop\">\n <gm-date-picker\n v-model=\"modelValue\"\n :type=\"type\"\n range-separator=\"-\"\n :value-format=\"valueFormat\"\n clearable\n :disabled=\"disabled\"\n :placeholder=\"label\"\n :start-placeholder=\"startPlaceholder ?? `${label}开始日期`\"\n :end-placeholder=\"endPlaceholder ?? `${label}结束日期`\"\n :style=\"{\n '--el-date-editor-width': '100%',\n }\"\n :shortcuts=\"shortcutList\"\n :defaultValue=\"defaultValue\"\n :defaultTime=\"defaultTime\"\n @change=\"onChange\"\n />\n </gm-form-item>\n</template>\n<script lang=\"ts\" setup>\nimport { computed } from 'vue';\nimport { getDateShortcuts } from '@giime/utils';\nimport { useWatchModelChange } from '../../composables/useWatchModelChange';\n// import { searchFormHandleQueryKey } from '../../searchForm';\nimport { SearchFormDatePickerName, searchFormDatePickerEmits, searchFormDatePickerProps } from './searchFormDatePicker';\nimport type { ModelValueType } from 'element-plus';\nimport type { DatePickerProps } from '@giime/components/src/base/datePicker';\ndefineOptions({\n name: SearchFormDatePickerName,\n});\nconst modelValue = defineModel<DatePickerProps['modelValue'] | undefined>();\nconst props = defineProps(searchFormDatePickerProps);\nconst emit = defineEmits(searchFormDatePickerEmits);\nuseWatchModelChange(modelValue, { prop: props.prop, noDefaultSync: props.noDefaultSync });\n\n// const isRangeType = computed(() => props.type === 'datetimerange' || props.type === 'daterange' || props.type === 'monthrange');\n/**\n * shortcuts赋予默认值\n */\nconst shortcutList = computed(() => (Array.isArray(props.shortcuts) ? props.shortcuts : getDateShortcuts(props.type)));\n\nconst valueFormat = computed(() => props.valueFormat ?? (props.type === 'datetimerange' ? 'YYYY-MM-DD HH:mm:ss' : 'YYYY-MM-DD'));\n\nconst defaultTime = computed(\n () =>\n props.defaultTime ??\n (props.type === 'datetimerange' ? ([new Date(2000, 0, 1, 0, 0, 0), new Date(2000, 0, 1, 23, 59, 59)] as [Date, Date]) : undefined),\n);\n// const handleQuery = inject(searchFormHandleQueryKey);\nconst onChange = (value: ModelValueType) => {\n // handleQuery?.();\n emit('change', value);\n};\n</script>\n"],"names":["_useModel"],"mappings":";;;;;;;;;;;;;;;;;AAiCA,IAAM,MAAA,UAAA,GAAaA,QAAsD,CAAA,OAAA,EAAA,YAAC,CAAA,CAAA;AAC1E,IAAA,MAAM,KAAQ,GAAA,OAAA,CAAA;AACd,IAAA,MAAM,IAAO,GAAA,MAAA,CAAA;AACb,IAAoB,mBAAA,CAAA,UAAA,EAAY,EAAE,IAAM,EAAA,KAAA,CAAM,MAAM,aAAe,EAAA,KAAA,CAAM,eAAe,CAAA,CAAA;AAMxF,IAAA,MAAM,YAAe,GAAA,QAAA,CAAS,MAAO,KAAA,CAAM,OAAQ,CAAA,KAAA,CAAM,SAAS,CAAA,GAAI,KAAM,CAAA,SAAA,GAAY,gBAAiB,CAAA,KAAA,CAAM,IAAI,CAAE,CAAA,CAAA;AAErH,IAAM,MAAA,WAAA,GAAc,SAAS,MAAM,KAAA,CAAM,gBAAgB,KAAM,CAAA,IAAA,KAAS,eAAkB,GAAA,qBAAA,GAAwB,YAAa,CAAA,CAAA,CAAA;AAE/H,IAAA,MAAM,WAAc,GAAA,QAAA;AAAA,MAClB,MACE,KAAM,CAAA,WAAA,KACL,KAAM,CAAA,IAAA,KAAS,kBAAmB,CAAC,IAAI,IAAK,CAAA,GAAA,EAAM,CAAG,EAAA,CAAA,EAAG,GAAG,CAAG,EAAA,CAAC,CAAG,EAAA,IAAI,IAAK,CAAA,GAAA,EAAM,CAAG,EAAA,CAAA,EAAG,EAAI,EAAA,EAAA,EAAI,EAAE,CAAC,CAAqB,GAAA,KAAA,CAAA,CAAA;AAAA,KAC5H,CAAA;AAEA,IAAM,MAAA,QAAA,GAAW,CAAC,KAA0B,KAAA;AAE1C,MAAA,IAAA,CAAK,UAAU,KAAK,CAAA,CAAA;AAAA,KACtB,CAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;"}
@@ -10,7 +10,7 @@ export declare const GmSearchFormDatePicker: import("../../../../../../utils").S
10
10
  required: true;
11
11
  };
12
12
  type: {
13
- type: import("vue").PropType<"date" | "daterange" | "month" | "year" | "months" | "years" | "dates" | "week" | "datetime" | "datetimerange" | "monthrange" | "yearrange">;
13
+ type: import("vue").PropType<"date" | "daterange" | "month" | "year" | "months" | "years" | "dates" | "week" | "datetimerange" | "datetime" | "monthrange" | "yearrange">;
14
14
  required: true;
15
15
  };
16
16
  shortcuts: {
@@ -30,7 +30,6 @@ export declare const GmSearchFormDatePicker: import("../../../../../../utils").S
30
30
  };
31
31
  valueFormat: {
32
32
  type: import("vue").PropType<string | undefined>;
33
- default: string;
34
33
  };
35
34
  startPlaceholder: {
36
35
  type: StringConstructor;
@@ -60,7 +59,7 @@ export declare const GmSearchFormDatePicker: import("../../../../../../utils").S
60
59
  required: true;
61
60
  };
62
61
  type: {
63
- type: import("vue").PropType<"date" | "daterange" | "month" | "year" | "months" | "years" | "dates" | "week" | "datetime" | "datetimerange" | "monthrange" | "yearrange">;
62
+ type: import("vue").PropType<"date" | "daterange" | "month" | "year" | "months" | "years" | "dates" | "week" | "datetimerange" | "datetime" | "monthrange" | "yearrange">;
64
63
  required: true;
65
64
  };
66
65
  shortcuts: {
@@ -80,7 +79,6 @@ export declare const GmSearchFormDatePicker: import("../../../../../../utils").S
80
79
  };
81
80
  valueFormat: {
82
81
  type: import("vue").PropType<string | undefined>;
83
- default: string;
84
82
  };
85
83
  startPlaceholder: {
86
84
  type: StringConstructor;
@@ -102,7 +100,6 @@ export declare const GmSearchFormDatePicker: import("../../../../../../utils").S
102
100
  }, {
103
101
  disabled: boolean;
104
102
  label: string;
105
- valueFormat: string | undefined;
106
103
  noDefaultSync: boolean;
107
104
  }, {}>> & Record<string, any>;
108
105
  export type SearchFormDatePickerInstance = InstanceType<typeof SearchFormDatePicker>;
@@ -9,7 +9,7 @@ export declare const searchFormDatePickerProps: {
9
9
  required: true;
10
10
  };
11
11
  type: {
12
- type: PropType<"date" | "daterange" | "month" | "year" | "months" | "years" | "dates" | "week" | "datetime" | "datetimerange" | "monthrange" | "yearrange">;
12
+ type: PropType<"date" | "daterange" | "month" | "year" | "months" | "years" | "dates" | "week" | "datetimerange" | "datetime" | "monthrange" | "yearrange">;
13
13
  required: true;
14
14
  };
15
15
  shortcuts: {
@@ -29,7 +29,6 @@ export declare const searchFormDatePickerProps: {
29
29
  };
30
30
  valueFormat: {
31
31
  type: PropType<string | undefined>;
32
- default: string;
33
32
  };
34
33
  startPlaceholder: {
35
34
  type: StringConstructor;
@@ -22,8 +22,8 @@ const searchFormDatePickerProps = {
22
22
  defaultValue: datePickerProps["defaultValue"],
23
23
  defaultTime: datePickerProps["defaultTime"],
24
24
  valueFormat: {
25
- type: String,
26
- default: "YYYY-MM-DD"
25
+ type: String
26
+ // default: 'YYYY-MM-DD',
27
27
  },
28
28
  startPlaceholder: {
29
29
  type: String
@@ -1 +1 @@
1
- {"version":3,"file":"searchFormDatePicker.mjs","sources":["../../../../../../../../../packages/components/src/composite/searchForm/searchFormItems/datePicker/searchFormDatePicker.ts"],"sourcesContent":["import { datePickerProps } from '@giime/components/src/base/datePicker';\nimport { searchFormCommonProps } from '../common';\nimport type { PropType } from 'vue';\nimport type { DatePickerProps } from '@giime/components/src/base/datePicker';\n\nexport const searchFormDatePickerProps = {\n ...searchFormCommonProps,\n label: {\n type: String,\n default: '',\n },\n prop: {\n type: String,\n required: true as const,\n },\n type: {\n type: String as PropType<DatePickerProps['type']>,\n required: true as const,\n },\n shortcuts: {\n type: Array as PropType<DatePickerProps['shortcuts']>,\n },\n defaultValue: datePickerProps['defaultValue'],\n defaultTime: datePickerProps['defaultTime'],\n valueFormat: {\n type: String as PropType<DatePickerProps['valueFormat']>,\n default: 'YYYY-MM-DD',\n },\n startPlaceholder: {\n type: String,\n },\n endPlaceholder: {\n type: String,\n },\n};\n\nexport const searchFormDatePickerEmits = {\n change: (...value: any[]) => !!value,\n};\nexport const SearchFormDatePickerName = 'GmSearchFormDatePicker';\n"],"names":[],"mappings":";;;;AAKO,MAAM,yBAA4B,GAAA;AAAA,EACvC,GAAG,qBAAA;AAAA,EACH,KAAO,EAAA;AAAA,IACL,IAAM,EAAA,MAAA;AAAA,IACN,OAAS,EAAA,EAAA;AAAA,GACX;AAAA,EACA,IAAM,EAAA;AAAA,IACJ,IAAM,EAAA,MAAA;AAAA,IACN,QAAU,EAAA,IAAA;AAAA,GACZ;AAAA,EACA,IAAM,EAAA;AAAA,IACJ,IAAM,EAAA,MAAA;AAAA,IACN,QAAU,EAAA,IAAA;AAAA,GACZ;AAAA,EACA,SAAW,EAAA;AAAA,IACT,IAAM,EAAA,KAAA;AAAA,GACR;AAAA,EACA,YAAA,EAAc,gBAAgB,cAAc,CAAA;AAAA,EAC5C,WAAA,EAAa,gBAAgB,aAAa,CAAA;AAAA,EAC1C,WAAa,EAAA;AAAA,IACX,IAAM,EAAA,MAAA;AAAA,IACN,OAAS,EAAA,YAAA;AAAA,GACX;AAAA,EACA,gBAAkB,EAAA;AAAA,IAChB,IAAM,EAAA,MAAA;AAAA,GACR;AAAA,EACA,cAAgB,EAAA;AAAA,IACd,IAAM,EAAA,MAAA;AAAA,GACR;AACF,EAAA;AAEO,MAAM,yBAA4B,GAAA;AAAA,EACvC,MAAQ,EAAA,CAAA,GAAI,KAAiB,KAAA,CAAC,CAAC,KAAA;AACjC,EAAA;AACO,MAAM,wBAA2B,GAAA;;;;"}
1
+ {"version":3,"file":"searchFormDatePicker.mjs","sources":["../../../../../../../../../packages/components/src/composite/searchForm/searchFormItems/datePicker/searchFormDatePicker.ts"],"sourcesContent":["import { datePickerProps } from '@giime/components/src/base/datePicker';\nimport { searchFormCommonProps } from '../common';\nimport type { PropType } from 'vue';\nimport type { DatePickerProps } from '@giime/components/src/base/datePicker';\n\nexport const searchFormDatePickerProps = {\n ...searchFormCommonProps,\n label: {\n type: String,\n default: '',\n },\n prop: {\n type: String,\n required: true as const,\n },\n type: {\n type: String as PropType<DatePickerProps['type']>,\n required: true as const,\n },\n shortcuts: {\n type: Array as PropType<DatePickerProps['shortcuts']>,\n },\n defaultValue: datePickerProps['defaultValue'],\n defaultTime: datePickerProps['defaultTime'],\n valueFormat: {\n type: String as PropType<DatePickerProps['valueFormat']>,\n // default: 'YYYY-MM-DD',\n },\n startPlaceholder: {\n type: String,\n },\n endPlaceholder: {\n type: String,\n },\n};\n\nexport const searchFormDatePickerEmits = {\n change: (...value: any[]) => !!value,\n};\nexport const SearchFormDatePickerName = 'GmSearchFormDatePicker';\n"],"names":[],"mappings":";;;;AAKO,MAAM,yBAA4B,GAAA;AAAA,EACvC,GAAG,qBAAA;AAAA,EACH,KAAO,EAAA;AAAA,IACL,IAAM,EAAA,MAAA;AAAA,IACN,OAAS,EAAA,EAAA;AAAA,GACX;AAAA,EACA,IAAM,EAAA;AAAA,IACJ,IAAM,EAAA,MAAA;AAAA,IACN,QAAU,EAAA,IAAA;AAAA,GACZ;AAAA,EACA,IAAM,EAAA;AAAA,IACJ,IAAM,EAAA,MAAA;AAAA,IACN,QAAU,EAAA,IAAA;AAAA,GACZ;AAAA,EACA,SAAW,EAAA;AAAA,IACT,IAAM,EAAA,KAAA;AAAA,GACR;AAAA,EACA,YAAA,EAAc,gBAAgB,cAAc,CAAA;AAAA,EAC5C,WAAA,EAAa,gBAAgB,aAAa,CAAA;AAAA,EAC1C,WAAa,EAAA;AAAA,IACX,IAAM,EAAA,MAAA;AAAA;AAAA,GAER;AAAA,EACA,gBAAkB,EAAA;AAAA,IAChB,IAAM,EAAA,MAAA;AAAA,GACR;AAAA,EACA,cAAgB,EAAA;AAAA,IACd,IAAM,EAAA,MAAA;AAAA,GACR;AACF,EAAA;AAEO,MAAM,yBAA4B,GAAA;AAAA,EACvC,MAAQ,EAAA,CAAA,GAAI,KAAiB,KAAA,CAAC,CAAC,KAAA;AACjC,EAAA;AACO,MAAM,wBAA2B,GAAA;;;;"}
@@ -16,6 +16,7 @@ export { giimeDevProxy } from '../utils/src/http/devProxy.mjs';
16
16
  export { getDomain } from '../utils/src/http/url.mjs';
17
17
  export { getModifiedData, hasOwn, keysOf, resetObject } from '../utils/src/objects.mjs';
18
18
  export { getDateShortcuts } from '../utils/src/date/dateShortcuts.mjs';
19
+ export { genFileId } from 'element-plus';
19
20
  export { base64ToBlob, base64ToFile, blobToBase64, blobToFile, fileMd5, fileToBase64, fileToBlob, fileToUrl, fileValidType, getImageInfo, getVideoInfo, urlToBlob, urlToFile } from '../utils/src/file.mjs';
20
21
  export { compareVersions, isVersionGreaterOrEqual, omitOnEvents, remove } from '../utils/src/general.mjs';
21
22
  export { b64_hmac_md5, b64_md5, hex_hmac_md5, hex_md5, str_hmac_md5, str_md5, ts_md5_file } from '../utils/src/crypto/md5.mjs';
@@ -1 +1 @@
1
- {"version":3,"file":"index.mjs","sources":["../../../../packages/giime/index.ts"],"sourcesContent":["import installer from './defaults';\nimport './tailwind.css';\nexport * from '@giime/utils';\nexport * from '@giime/components';\nexport * from '@giime/hooks';\n// export * from '@giime/api'; // 用户通过giime/es/api 导入类型\nexport const install = installer.install;\nexport const version = installer.version;\nexport default installer;\n"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAMO,MAAM,UAAU,SAAU,CAAA,QAAA;AAC1B,MAAM,UAAU,SAAU,CAAA;;;;"}
1
+ {"version":3,"file":"index.mjs","sources":["../../../../packages/giime/index.ts"],"sourcesContent":["import installer from './defaults';\nimport './tailwind.css';\nexport * from '@giime/utils';\nexport * from '@giime/components';\nexport * from '@giime/hooks';\n// export * from '@giime/api'; // 用户通过giime/es/api 导入类型\nexport const install = installer.install;\nexport const version = installer.version;\nexport default installer;\n"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAMO,MAAM,UAAU,SAAU,CAAA,QAAA;AAC1B,MAAM,UAAU,SAAU,CAAA;;;;"}
@@ -1 +1 @@
1
- export declare const version = "0.6.36";
1
+ export declare const version = "0.6.38";
@@ -1,4 +1,4 @@
1
- const version = "0.6.36";
1
+ const version = "0.6.37";
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.6.36';\n"],"names":[],"mappings":"AAAO,MAAM,OAAU,GAAA;;;;"}
1
+ {"version":3,"file":"version.mjs","sources":["../../../../packages/giime/version.ts"],"sourcesContent":["export const version = '0.6.37';\n"],"names":[],"mappings":"AAAO,MAAM,OAAU,GAAA;;;;"}
@@ -1,3 +1,4 @@
1
+ import type { UploadRawFile, UploadRequestOptions } from 'element-plus';
1
2
  export interface UseUploadFileOptions {
2
3
  /**领域编码 */
3
4
  domainCode?: string;
@@ -7,13 +8,19 @@ export interface UseUploadFileOptions {
7
8
  accept?: string;
8
9
  /**文件权限,默认继承桶 */
9
10
  acl?: string;
11
+ /**是否禁止上传文件到存储桶 */
12
+ disablePutFile?: boolean;
13
+ /** */
14
+ elOptions?: UploadRequestOptions;
10
15
  }
11
16
  export declare const useUploadFile: () => {
12
17
  isLoading: import("vue").Ref<boolean>;
13
- uploadFile: (file: File, options?: UseUploadFileOptions) => Promise<{
18
+ uploadFile: (file: UploadRawFile, options?: UseUploadFileOptions) => Promise<{
14
19
  url: string;
15
20
  exists: boolean;
16
21
  uploadUrl: string;
17
22
  key: string;
18
23
  }>;
24
+ cancelUpload: (fileUid: number) => void;
25
+ cancelAllUploads: () => void;
19
26
  };
@@ -4,17 +4,22 @@ 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
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
25
  if (options?.accept && options?.accept !== "*") {
@@ -43,22 +48,49 @@ const useUploadFile = () => {
43
48
  await axios.put(data.data.uploadUrl, file, {
44
49
  headers: {
45
50
  "Content-Type": file.type,
46
- "x-oss-object-acl ": acl
51
+ "x-oss-object-acl ": acl,
52
+ "Cache-Control": "max-age=2592000"
53
+ },
54
+ signal: abortController.signal,
55
+ onUploadProgress: (progressEvent) => {
56
+ const progressEvt = progressEvent.event;
57
+ progressEvt.percent = progressEvt.total > 0 ? progressEvt.loaded / progressEvt.total * 100 : 0;
58
+ options?.elOptions?.onProgress(progressEvent.event);
47
59
  }
48
60
  });
49
61
  } catch (error) {
62
+ if (axios.isCancel(error) || error?.name === "AbortError") {
63
+ console.log("\u4E0A\u4F20\u8BF7\u6C42\u5DF2\u53D6\u6D88");
64
+ throw error;
65
+ }
50
66
  GmMessage.error("\u63A8\u9001\u81F3\u5B58\u50A8\u6876\u5931\u8D25\uFF0C\u8BF7\u91CD\u8BD5");
51
67
  throw error;
52
68
  }
53
69
  }
54
70
  return data.data;
55
71
  } finally {
72
+ abortControllers.value.delete(fileKey);
56
73
  isLoading.value = false;
57
74
  }
58
75
  };
76
+ const cancelUpload = (fileUid) => {
77
+ const abortController = abortControllers.value.get(fileUid);
78
+ if (abortController) {
79
+ abortController.abort();
80
+ abortControllers.value.delete(fileUid);
81
+ }
82
+ };
83
+ const cancelAllUploads = () => {
84
+ abortControllers.value.forEach((controller) => {
85
+ controller.abort();
86
+ });
87
+ abortControllers.value.clear();
88
+ };
59
89
  return {
60
90
  isLoading,
61
- uploadFile
91
+ uploadFile,
92
+ cancelUpload,
93
+ cancelAllUploads
62
94
  };
63
95
  };
64
96
 
@@ -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,OAAmC,KAAA;AAEvE,IAAM,MAAA,gBAAA,GAAmB,OAAS,EAAA,UAAA,IAAc,UAAW,CAAA,KAAA,CAAA;AAC3D,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,OAAS,EAAA,MAAA,IAAU,OAAS,EAAA,MAAA,KAAW,GAAK,EAAA;AAC9C,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,SAAS,GAAO,IAAA,SAAA,CAAA;AAC5B,MAAA,MAAM,EAAE,IAAA,EAAS,GAAA,MAAM,kBAAmB,CAAA;AAAA,QACxC,UAAY,EAAA,gBAAA;AAAA;AAAA,QACZ,SAAA,EAAW,SAAS,SAAa,IAAA,cAAA;AAAA;AAAA,QACjC,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 '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":[],"mappings":"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"}
package/es/index.css CHANGED
@@ -878,32 +878,6 @@ video {
878
878
  margin: 0;
879
879
  }
880
880
 
881
- .gm-number-interval-single[data-v-4e6f4d6f] {
882
- border-radius: var(--el-input-border-radius, var(--el-border-radius-base));
883
- box-shadow: 0 0 0 1px var(--el-input-border-color, var(--el-border-color)) inset;
884
- background-color: var(--el-input-bg-color, var(--el-fill-color-blank));
885
- }
886
- .gm-number-interval-single[data-v-4e6f4d6f] [data-v-4e6f4d6f] .el-input__wrapper {
887
- box-shadow: none;
888
- background: none;
889
- }
890
-
891
- .gm-number-interval-close[data-v-4e6f4d6f] {
892
- display: none;
893
- color: var(--el-input-icon-color, var(--el-text-color-placeholder));
894
- }
895
-
896
- .gm-number-interval-single[data-v-4e6f4d6f]:hover .gm-number-interval-close[data-v-4e6f4d6f] {
897
- display: flex;
898
- }
899
- .gm-upload-pro-preview-dialog[data-v-83f37e2f] [data-v-83f37e2f] .el-dialog__body {
900
- padding: 0;
901
- }
902
-
903
- .gm-upload-pro-file-picture-card[data-v-83f37e2f] [data-v-83f37e2f] .el-upload-list__item, .gm-upload-pro-file-picture-card[data-v-83f37e2f] [data-v-83f37e2f] .el-upload--picture-card {
904
- width: auto;
905
- height: auto;
906
- }
907
881
  .gm-upload-pro-file {
908
882
  line-height: normal;
909
883
  }
@@ -942,6 +916,70 @@ video {
942
916
  .gm-upload-pro-file-disabled .el-upload-list__item-status-label {
943
917
  display: none;
944
918
  }
919
+ .gm-upload-pro-preview-dialog[data-v-ca99928c] [data-v-ca99928c] .el-dialog__body {
920
+ padding: 0;
921
+ }
922
+
923
+ .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 {
924
+ width: auto;
925
+ height: auto;
926
+ }
927
+ .circular[data-v-d7b04fae] {
928
+ animation: loading-rotate-d7b04fae 2s linear infinite;
929
+ }
930
+
931
+ .path[data-v-d7b04fae] {
932
+ animation: loading-dash-d7b04fae 1.5s ease-in-out infinite;
933
+ stroke-dasharray: 90, 150;
934
+ stroke-dashoffset: 0;
935
+ stroke: var(--el-color-primary);
936
+ stroke-linecap: round;
937
+ }
938
+
939
+ @keyframes loading-rotate-d7b04fae {
940
+ to {
941
+ transform: rotate(360deg);
942
+ }
943
+ }
944
+ @keyframes loading-dash-d7b04fae {
945
+ 0% {
946
+ stroke-dasharray: 1, 200;
947
+ stroke-dashoffset: 0;
948
+ }
949
+ 50% {
950
+ stroke-dasharray: 90, 150;
951
+ stroke-dashoffset: -40px;
952
+ }
953
+ 100% {
954
+ stroke-dasharray: 90, 150;
955
+ stroke-dashoffset: -120px;
956
+ }
957
+ }
958
+ .gm-flex-center[data-v-c17deec9] {
959
+ align-items: center;
960
+ }
961
+
962
+ .gm-flex-justify-between[data-v-c17deec9] {
963
+ justify-content: space-between;
964
+ }
965
+ .gm-number-interval-single[data-v-4e6f4d6f] {
966
+ border-radius: var(--el-input-border-radius, var(--el-border-radius-base));
967
+ box-shadow: 0 0 0 1px var(--el-input-border-color, var(--el-border-color)) inset;
968
+ background-color: var(--el-input-bg-color, var(--el-fill-color-blank));
969
+ }
970
+ .gm-number-interval-single[data-v-4e6f4d6f] [data-v-4e6f4d6f] .el-input__wrapper {
971
+ box-shadow: none;
972
+ background: none;
973
+ }
974
+
975
+ .gm-number-interval-close[data-v-4e6f4d6f] {
976
+ display: none;
977
+ color: var(--el-input-icon-color, var(--el-text-color-placeholder));
978
+ }
979
+
980
+ .gm-number-interval-single[data-v-4e6f4d6f]:hover .gm-number-interval-close[data-v-4e6f4d6f] {
981
+ display: flex;
982
+ }
945
983
  [data-v-488ca110] .gmSearchForm .el-form-item {
946
984
  margin-right: 0;
947
985
  margin-bottom: 4px;
@@ -969,13 +1007,6 @@ video {
969
1007
  [data-v-98c2e804] .gmTableNoBorder .el-table__border-left-patch {
970
1008
  height: 0;
971
1009
  }
972
- .gm-flex-center[data-v-c17deec9] {
973
- align-items: center;
974
- }
975
-
976
- .gm-flex-justify-between[data-v-c17deec9] {
977
- justify-content: space-between;
978
- }
979
1010
  .gm-upload-preview-dialog[data-v-8077ce51] [data-v-8077ce51] .el-dialog__body {
980
1011
  padding: 0;
981
1012
  }
@@ -1042,37 +1073,6 @@ video {
1042
1073
  .gm-upload-file-disabled .el-upload-list__item-status-label {
1043
1074
  display: none;
1044
1075
  }
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
1076
 
1077
1077
  .pagination-container[data-v-47d35e7b] {
1078
1078
  background: #fff;
@@ -1083,112 +1083,112 @@ video {
1083
1083
  }
1084
1084
 
1085
1085
  @charset "UTF-8";
1086
- .table-custom-header-drawer .el-drawer__header {
1086
+ .custom-operate-drawer .el-drawer__header {
1087
1087
  padding: 10px 15px;
1088
1088
  margin: 0;
1089
1089
  border-bottom: 1px solid #ebeef5;
1090
1090
  }
1091
- .table-custom-header-drawer .el-drawer__title {
1091
+ .custom-operate-drawer .el-drawer__title {
1092
1092
  font-size: 14px;
1093
1093
  color: #333;
1094
1094
  }
1095
- .table-custom-header-drawer .el-drawer__body {
1095
+ .custom-operate-drawer .el-drawer__body {
1096
1096
  padding: 15px;
1097
1097
  }
1098
- .table-custom-header-drawer .el-drawer__footer {
1098
+ .custom-operate-drawer .el-drawer__footer {
1099
1099
  padding: 10px 15px;
1100
1100
  border-top: 1px solid #ebeef5;
1101
1101
  }
1102
- .table-custom-header-drawer .el-checkbox {
1102
+ .custom-operate-drawer .el-checkbox {
1103
1103
  display: flex;
1104
1104
  align-items: center;
1105
1105
  }
1106
- .table-custom-header-drawer .el-input__inner {
1106
+ .custom-operate-drawer .el-input__inner {
1107
1107
  text-align: center;
1108
1108
  }
1109
- .table-custom-header-drawer .el-input__suffix {
1109
+ .custom-operate-drawer .el-input__suffix {
1110
1110
  position: absolute;
1111
1111
  right: 10px;
1112
1112
  }
1113
- .table-custom-header-drawer .custom-content li {
1113
+ .custom-operate-drawer .custom-content li {
1114
1114
  display: flex;
1115
1115
  align-items: center;
1116
1116
  justify-content: center;
1117
1117
  height: 44px;
1118
1118
  }
1119
- .table-custom-header-drawer .custom-group {
1119
+ .custom-operate-drawer .custom-group {
1120
1120
  max-height: calc(100vh - 226px);
1121
1121
  overflow-y: auto;
1122
1122
  }
1123
- .table-custom-header-drawer .custom-group::-webkit-scrollbar {
1123
+ .custom-operate-drawer .custom-group::-webkit-scrollbar {
1124
1124
  /*滚动条整体样式*/
1125
1125
  width: 4px;
1126
1126
  /*高宽分别对应横竖滚动条的尺寸*/
1127
1127
  height: 1px;
1128
1128
  }
1129
- .table-custom-header-drawer .custom-group::-webkit-scrollbar-thumb {
1129
+ .custom-operate-drawer .custom-group::-webkit-scrollbar-thumb {
1130
1130
  /*滚动条里面小方块*/
1131
1131
  border-radius: 10px;
1132
1132
  box-shadow: inset 0 0 5px rgba(0, 0, 0, 0.1);
1133
1133
  background: #999;
1134
1134
  }
1135
- .table-custom-header-drawer .custom-group::-webkit-scrollbar-track {
1135
+ .custom-operate-drawer .custom-group::-webkit-scrollbar-track {
1136
1136
  /*滚动条里面轨道*/
1137
1137
  box-shadow: inset 0 0 3px rgba(0, 0, 0, 0.1);
1138
1138
  border-radius: 10px;
1139
1139
  background: #eee;
1140
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;
@@ -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
  }[];