giime 0.1.13 → 0.1.15

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 (46) hide show
  1. package/dist/index.css +6 -6
  2. package/es/components/src/composite/tablePro/TablePro.vue.d.ts +56 -24
  3. package/es/components/src/composite/tablePro/TablePro.vue.mjs +1 -1
  4. package/es/components/src/composite/tablePro/TablePro.vue2.mjs +32 -8
  5. package/es/components/src/composite/tablePro/TablePro.vue2.mjs.map +1 -1
  6. package/es/components/src/composite/tablePro/index.d.ts +163 -64
  7. package/es/components/src/composite/tablePro/tableColumnPro/TableColumnPro.vue.d.ts +3 -3
  8. package/es/components/src/composite/tablePro/tableColumnPro/index.d.ts +7 -7
  9. package/es/components/src/composite/tablePro/tableColumnPro/tableColumnPro.d.ts +1 -1
  10. package/es/components/src/composite/tablePro/tableColumnPro/tableColumnPro.mjs.map +1 -1
  11. package/es/components/src/composite/tablePro/tableHeaderForm/TableHeaderForm.vue.d.ts +3 -1
  12. package/es/components/src/composite/tablePro/tableHeaderForm/TableHeaderForm.vue2.mjs +6 -4
  13. package/es/components/src/composite/tablePro/tableHeaderForm/TableHeaderForm.vue2.mjs.map +1 -1
  14. package/es/components/src/composite/tablePro/tableHeaderForm/index.d.ts +3 -1
  15. package/es/components/src/composite/tablePro/tablePro.d.ts +23 -5
  16. package/es/components/src/composite/tablePro/tablePro.mjs +2 -4
  17. package/es/components/src/composite/tablePro/tablePro.mjs.map +1 -1
  18. package/es/giime/version.d.ts +1 -1
  19. package/es/giime/version.mjs +1 -1
  20. package/es/giime/version.mjs.map +1 -1
  21. package/es/hooks/base/useDownload/index.mjs +6 -1
  22. package/es/hooks/base/useDownload/index.mjs.map +1 -1
  23. package/es/index.css +6 -6
  24. package/lib/components/src/composite/tablePro/TablePro.vue.d.ts +56 -24
  25. package/lib/components/src/composite/tablePro/TablePro.vue.js +1 -1
  26. package/lib/components/src/composite/tablePro/TablePro.vue2.js +31 -7
  27. package/lib/components/src/composite/tablePro/TablePro.vue2.js.map +1 -1
  28. package/lib/components/src/composite/tablePro/index.d.ts +163 -64
  29. package/lib/components/src/composite/tablePro/tableColumnPro/TableColumnPro.vue.d.ts +3 -3
  30. package/lib/components/src/composite/tablePro/tableColumnPro/index.d.ts +7 -7
  31. package/lib/components/src/composite/tablePro/tableColumnPro/tableColumnPro.d.ts +1 -1
  32. package/lib/components/src/composite/tablePro/tableColumnPro/tableColumnPro.js.map +1 -1
  33. package/lib/components/src/composite/tablePro/tableHeaderForm/TableHeaderForm.vue.d.ts +3 -1
  34. package/lib/components/src/composite/tablePro/tableHeaderForm/TableHeaderForm.vue2.js +6 -4
  35. package/lib/components/src/composite/tablePro/tableHeaderForm/TableHeaderForm.vue2.js.map +1 -1
  36. package/lib/components/src/composite/tablePro/tableHeaderForm/index.d.ts +3 -1
  37. package/lib/components/src/composite/tablePro/tablePro.d.ts +23 -5
  38. package/lib/components/src/composite/tablePro/tablePro.js +1 -3
  39. package/lib/components/src/composite/tablePro/tablePro.js.map +1 -1
  40. package/lib/giime/version.d.ts +1 -1
  41. package/lib/giime/version.js +1 -1
  42. package/lib/giime/version.js.map +1 -1
  43. package/lib/hooks/base/useDownload/index.js +6 -1
  44. package/lib/hooks/base/useDownload/index.js.map +1 -1
  45. package/lib/index.css +6 -6
  46. package/package.json +1 -1
@@ -16,7 +16,7 @@ declare const _default: __VLS_WithTemplateSlots<import("vue").DefineComponent<{
16
16
  default: false;
17
17
  };
18
18
  type: {
19
- type: import("vue").PropType<"" | "edit">;
19
+ type: import("vue").PropType<"" | "default" | "index" | "edit" | "selection" | "expand">;
20
20
  default: "";
21
21
  };
22
22
  sortOrders: {
@@ -92,7 +92,7 @@ declare const _default: __VLS_WithTemplateSlots<import("vue").DefineComponent<{
92
92
  default: false;
93
93
  };
94
94
  type: {
95
- type: import("vue").PropType<"" | "edit">;
95
+ type: import("vue").PropType<"" | "default" | "index" | "edit" | "selection" | "expand">;
96
96
  default: "";
97
97
  };
98
98
  sortOrders: {
@@ -151,7 +151,7 @@ declare const _default: __VLS_WithTemplateSlots<import("vue").DefineComponent<{
151
151
  filterClassName: StringConstructor;
152
152
  index: import("vue").PropType<number | ((index: number) => number)>;
153
153
  }>>, {
154
- type: "" | "edit";
154
+ type: "" | "default" | "index" | "edit" | "selection" | "expand";
155
155
  fixed: string | boolean;
156
156
  width: string | number;
157
157
  minWidth: string | number;
@@ -18,7 +18,7 @@ export declare const GmTableColumnPro: import("../../../../../utils").SFCWithIns
18
18
  default: false;
19
19
  };
20
20
  type: {
21
- type: import("vue").PropType<"" | "edit">;
21
+ type: import("vue").PropType<"" | "default" | "index" | "edit" | "selection" | "expand">;
22
22
  default: "";
23
23
  };
24
24
  sortOrders: {
@@ -94,7 +94,7 @@ export declare const GmTableColumnPro: import("../../../../../utils").SFCWithIns
94
94
  default: false;
95
95
  };
96
96
  type: {
97
- type: import("vue").PropType<"" | "edit">;
97
+ type: import("vue").PropType<"" | "default" | "index" | "edit" | "selection" | "expand">;
98
98
  default: "";
99
99
  };
100
100
  sortOrders: {
@@ -153,7 +153,7 @@ export declare const GmTableColumnPro: import("../../../../../utils").SFCWithIns
153
153
  filterClassName: StringConstructor;
154
154
  index: import("vue").PropType<number | ((index: number) => number)>;
155
155
  }>>, {
156
- type: "" | "edit";
156
+ type: "" | "default" | "index" | "edit" | "selection" | "expand";
157
157
  fixed: string | boolean;
158
158
  width: string | number;
159
159
  minWidth: string | number;
@@ -190,7 +190,7 @@ export declare const GmTableColumnPro: import("../../../../../utils").SFCWithIns
190
190
  default: false;
191
191
  };
192
192
  type: {
193
- type: import("vue").PropType<"" | "edit">;
193
+ type: import("vue").PropType<"" | "default" | "index" | "edit" | "selection" | "expand">;
194
194
  default: "";
195
195
  };
196
196
  sortOrders: {
@@ -249,7 +249,7 @@ export declare const GmTableColumnPro: import("../../../../../utils").SFCWithIns
249
249
  filterClassName: StringConstructor;
250
250
  index: import("vue").PropType<number | ((index: number) => number)>;
251
251
  }>>, {}, {}, {}, {}, {
252
- type: "" | "edit";
252
+ type: "" | "default" | "index" | "edit" | "selection" | "expand";
253
253
  fixed: string | boolean;
254
254
  width: string | number;
255
255
  minWidth: string | number;
@@ -283,7 +283,7 @@ export declare const GmTableColumnPro: import("../../../../../utils").SFCWithIns
283
283
  default: false;
284
284
  };
285
285
  type: {
286
- type: import("vue").PropType<"" | "edit">;
286
+ type: import("vue").PropType<"" | "default" | "index" | "edit" | "selection" | "expand">;
287
287
  default: "";
288
288
  };
289
289
  sortOrders: {
@@ -342,7 +342,7 @@ export declare const GmTableColumnPro: import("../../../../../utils").SFCWithIns
342
342
  filterClassName: StringConstructor;
343
343
  index: import("vue").PropType<number | ((index: number) => number)>;
344
344
  }>>, {}, unknown, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {}, string, {
345
- type: "" | "edit";
345
+ type: "" | "default" | "index" | "edit" | "selection" | "expand";
346
346
  fixed: string | boolean;
347
347
  width: string | number;
348
348
  minWidth: string | number;
@@ -26,7 +26,7 @@ export declare const tableColumnProProps: {
26
26
  * 普通列 或 编辑列
27
27
  */
28
28
  type: {
29
- type: PropType<"" | "edit">;
29
+ type: PropType<"" | "default" | "index" | "edit" | "selection" | "expand">;
30
30
  default: "";
31
31
  };
32
32
  sortOrders: {
@@ -1 +1 @@
1
- {"version":3,"file":"tableColumnPro.mjs","sources":["../../../../../../../../packages/components/src/composite/tablePro/tableColumnPro/tableColumnPro.ts"],"sourcesContent":["// import { tableColumnEmits as elTableColumnEmits, tableColumnProps as elTableColumnProps } from 'element-plus';\r\n// import type { ExtractPropTypes } from 'vue';\r\n// import elTableProps from 'element-plus/es/components/table/src/table-column/defaults';\r\nimport { tableColumnProps } from '@giime/components/src/base/tableColumn/tableColumn';\r\nimport type { ExtractPropTypes, PropType } from 'vue';\r\n\r\nexport const tableColumnProProps = {\r\n ...tableColumnProps,\r\n prop: {\r\n type: String,\r\n required: true as const,\r\n },\r\n /**\r\n * 是否开启排序\r\n */\r\n isSort: {\r\n type: Boolean,\r\n default: false as const,\r\n },\r\n /**\r\n * 是否显示\r\n */\r\n isShow: {\r\n type: Boolean,\r\n default: true as const,\r\n },\r\n fixed: {\r\n type: [String, Boolean],\r\n default: false as const,\r\n },\r\n /**\r\n * 普通列 或 编辑列\r\n */\r\n type: {\r\n type: String as PropType<'' | 'edit'>,\r\n default: '' as const,\r\n },\r\n sortOrders: {\r\n ...tableColumnProps.sortOrders,\r\n default: () => ['descending', 'ascending', null] as const,\r\n },\r\n};\r\nexport type TableColumnProProps = ExtractPropTypes<typeof tableColumnProProps>;\r\nexport const TableColumnProName = 'GmTableColumnPro';\r\n"],"names":[],"mappings":";;AAMO,MAAM,mBAAsB,GAAA;AAAA,EACjC,GAAG,gBAAA;AAAA,EACH,IAAM,EAAA;AAAA,IACJ,IAAM,EAAA,MAAA;AAAA,IACN,QAAU,EAAA,IAAA;AAAA,GACZ;AAAA;AAAA;AAAA;AAAA,EAIA,MAAQ,EAAA;AAAA,IACN,IAAM,EAAA,OAAA;AAAA,IACN,OAAS,EAAA,KAAA;AAAA,GACX;AAAA;AAAA;AAAA;AAAA,EAIA,MAAQ,EAAA;AAAA,IACN,IAAM,EAAA,OAAA;AAAA,IACN,OAAS,EAAA,IAAA;AAAA,GACX;AAAA,EACA,KAAO,EAAA;AAAA,IACL,IAAA,EAAM,CAAC,MAAA,EAAQ,OAAO,CAAA;AAAA,IACtB,OAAS,EAAA,KAAA;AAAA,GACX;AAAA;AAAA;AAAA;AAAA,EAIA,IAAM,EAAA;AAAA,IACJ,IAAM,EAAA,MAAA;AAAA,IACN,OAAS,EAAA,EAAA;AAAA,GACX;AAAA,EACA,UAAY,EAAA;AAAA,IACV,GAAG,gBAAiB,CAAA,UAAA;AAAA,IACpB,OAAS,EAAA,MAAM,CAAC,YAAA,EAAc,aAAa,IAAI,CAAA;AAAA,GACjD;AACF,EAAA;AAEO,MAAM,kBAAqB,GAAA;;;;"}
1
+ {"version":3,"file":"tableColumnPro.mjs","sources":["../../../../../../../../packages/components/src/composite/tablePro/tableColumnPro/tableColumnPro.ts"],"sourcesContent":["// import { tableColumnEmits as elTableColumnEmits, tableColumnProps as elTableColumnProps } from 'element-plus';\r\n// import type { ExtractPropTypes } from 'vue';\r\n// import elTableProps from 'element-plus/es/components/table/src/table-column/defaults';\r\nimport { tableColumnProps } from '@giime/components/src/base/tableColumn/tableColumn';\r\nimport type { ExtractPropTypes, PropType } from 'vue';\r\n\r\nexport const tableColumnProProps = {\r\n ...tableColumnProps,\r\n prop: {\r\n type: String,\r\n required: true as const,\r\n },\r\n /**\r\n * 是否开启排序\r\n */\r\n isSort: {\r\n type: Boolean,\r\n default: false as const,\r\n },\r\n /**\r\n * 是否显示\r\n */\r\n isShow: {\r\n type: Boolean,\r\n default: true as const,\r\n },\r\n fixed: {\r\n type: [String, Boolean],\r\n default: false as const,\r\n },\r\n /**\r\n * 普通列 或 编辑列\r\n */\r\n type: {\r\n type: String as PropType<'' | 'edit' | 'default' | 'selection' | 'index' | 'expand'>,\r\n default: '' as const,\r\n },\r\n sortOrders: {\r\n ...tableColumnProps.sortOrders,\r\n default: () => ['descending', 'ascending', null] as const,\r\n },\r\n};\r\nexport type TableColumnProProps = ExtractPropTypes<typeof tableColumnProProps>;\r\nexport const TableColumnProName = 'GmTableColumnPro';\r\n"],"names":[],"mappings":";;AAMO,MAAM,mBAAsB,GAAA;AAAA,EACjC,GAAG,gBAAA;AAAA,EACH,IAAM,EAAA;AAAA,IACJ,IAAM,EAAA,MAAA;AAAA,IACN,QAAU,EAAA,IAAA;AAAA,GACZ;AAAA;AAAA;AAAA;AAAA,EAIA,MAAQ,EAAA;AAAA,IACN,IAAM,EAAA,OAAA;AAAA,IACN,OAAS,EAAA,KAAA;AAAA,GACX;AAAA;AAAA;AAAA;AAAA,EAIA,MAAQ,EAAA;AAAA,IACN,IAAM,EAAA,OAAA;AAAA,IACN,OAAS,EAAA,IAAA;AAAA,GACX;AAAA,EACA,KAAO,EAAA;AAAA,IACL,IAAA,EAAM,CAAC,MAAA,EAAQ,OAAO,CAAA;AAAA,IACtB,OAAS,EAAA,KAAA;AAAA,GACX;AAAA;AAAA;AAAA;AAAA,EAIA,IAAM,EAAA;AAAA,IACJ,IAAM,EAAA,MAAA;AAAA,IACN,OAAS,EAAA,EAAA;AAAA,GACX;AAAA,EACA,UAAY,EAAA;AAAA,IACV,GAAG,gBAAiB,CAAA,UAAA;AAAA,IACpB,OAAS,EAAA,MAAM,CAAC,YAAA,EAAc,aAAa,IAAI,CAAA;AAAA,GACjD;AACF,EAAA;AAEO,MAAM,kBAAqB,GAAA;;;;"}
@@ -22,7 +22,9 @@ declare const _default: import("vue").DefineComponent<{
22
22
  };
23
23
  }, {
24
24
  isInited: import("vue").Ref<boolean>;
25
- submitSettings: () => Promise<void>;
25
+ submitSettings: (options?: {
26
+ hiddenMessage?: boolean | undefined;
27
+ } | undefined) => Promise<void>;
26
28
  }, unknown, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {
27
29
  "update:isShowDrawer": (isShowDrawer: boolean) => void;
28
30
  "update:colPropsList": (colPropsList: TableColumnProProps[]) => void;
@@ -77,7 +77,7 @@ var _sfc_main = /* @__PURE__ */ defineComponent({
77
77
  });
78
78
  };
79
79
  const submitLoading = ref(false);
80
- const submitSettings = async () => {
80
+ const submitSettings = async (options) => {
81
81
  try {
82
82
  submitLoading.value = true;
83
83
  const { data } = await customSettingsStore.addCustomSettings({
@@ -90,7 +90,9 @@ var _sfc_main = /* @__PURE__ */ defineComponent({
90
90
  return;
91
91
  }
92
92
  updateColumns();
93
- GmMessage.success("\u4FDD\u5B58\u6210\u529F");
93
+ if (!options?.hiddenMessage) {
94
+ GmMessage.success("\u4FDD\u5B58\u6210\u529F");
95
+ }
94
96
  } catch (e) {
95
97
  console.error(e);
96
98
  submitLoading.value = false;
@@ -145,7 +147,7 @@ var _sfc_main = /* @__PURE__ */ defineComponent({
145
147
  const _component_gm_drawer = resolveComponent("gm-drawer");
146
148
  return openBlock(), createBlock(_component_gm_drawer, {
147
149
  modelValue: isShowDrawer.value,
148
- "onUpdate:modelValue": _cache[1] || (_cache[1] = ($event) => isShowDrawer.value = $event),
150
+ "onUpdate:modelValue": _cache[2] || (_cache[2] = ($event) => isShowDrawer.value = $event),
149
151
  title: "\u81EA\u5B9A\u4E49\u8868\u5934",
150
152
  direction: "rtl",
151
153
  size: "600px",
@@ -196,7 +198,7 @@ var _sfc_main = /* @__PURE__ */ defineComponent({
196
198
  loading: submitLoading.value,
197
199
  type: "primary",
198
200
  size: "default",
199
- onClick: submitSettings
201
+ onClick: _cache[1] || (_cache[1] = ($event) => submitSettings())
200
202
  }, {
201
203
  default: withCtx(() => [
202
204
  createTextVNode("\u4FDD\u5B58")
@@ -1 +1 @@
1
- {"version":3,"file":"TableHeaderForm.vue2.mjs","sources":["../../../../../../../../packages/components/src/composite/tablePro/tableHeaderForm/TableHeaderForm.vue"],"sourcesContent":["<template>\r\n <gm-drawer v-model=\"isShowDrawer\" title=\"自定义表头\" direction=\"rtl\" size=\"600px\" append-to-body destroy-on-close>\r\n <section\r\n class=\"drawer-alert gm-mb-4 gm-flex gm-items-center gm-justify-between gm-rounded gm-border gm-border-cyan-300 gm-bg-cyan-50 gm-px-4 gm-text-sm gm-text-[#777]\"\r\n >\r\n <div class=\"gm-flex gm-items-center gm-py-3\">\r\n <gm-icon><InfoFilled /></gm-icon>\r\n <p class=\"gm-ml-2\">\r\n 已选中 <span class=\"gm-text-cyan-500\">{{ checkedNumber }}</span> 项\r\n </p>\r\n </div>\r\n </section>\r\n <gm-table :data=\"clonedColPropsList\" :header-cell-style=\"{ background: '#F5F7FA', color: '#333' }\" style=\"width: 100%\">\r\n <gm-table-column align=\"left\" width=\"80\">\r\n <template #header>\r\n <gm-checkbox :model-value=\"checkedAll\" :indeterminate=\"isIndeterminate\" @change=\"handleCheckAllChange\" />\r\n </template>\r\n <template #default=\"{ row }: { row: TableColumnProProps }\">\r\n <gm-checkbox v-model=\"row.isShow\" :disabled=\"row.type === 'edit'\" />\r\n </template>\r\n </gm-table-column>\r\n <gm-table-column label=\"列名\" prop=\"label\">\r\n <template #default=\"{ row }: { row: TableColumnProProps }\">\r\n {{ row.type === 'edit' ? '操作' : row.label }}\r\n </template>\r\n </gm-table-column>\r\n <gm-table-column label=\"列宽\">\r\n <template #default=\"{ row }: { row: TableColumnProProps; $index: number }\">\r\n <gm-input v-model=\"row.width\" class=\"gm-w-[120px]\" placeholder=\"设置宽度\" clearable />\r\n </template>\r\n </gm-table-column>\r\n <gm-table-column label=\"固定\">\r\n <template #default=\"{ row }: { row: TableColumnProProps; $index: number }\">\r\n <div v-if=\"row.type !== 'edit'\">\r\n <gm-tooltip effect=\"dark\" content=\"固定在左侧\" placement=\"top\">\r\n <gm-icon\r\n class=\"gm-mr-2 gm-cursor-pointer\"\r\n :class=\"row.fixed === '' || row.fixed === true || row.fixed === 'left' ? 'gm-text-blue-500' : ''\"\r\n size=\"20\"\r\n @click=\"toggleFixedLeft(row)\"\r\n >\r\n <IceCreamRound />\r\n </gm-icon>\r\n </gm-tooltip>\r\n <gm-tooltip effect=\"dark\" content=\"固定在右侧\" placement=\"top\">\r\n <gm-icon\r\n class=\"-gm-scale-x-100 gm-cursor-pointer\"\r\n :class=\"row.fixed === 'right' ? 'gm-text-blue-500' : ''\"\r\n size=\"20\"\r\n @click=\"toggleFixedRight(row)\"\r\n >\r\n <IceCreamRound />\r\n </gm-icon>\r\n </gm-tooltip>\r\n </div>\r\n </template>\r\n </gm-table-column>\r\n </gm-table>\r\n <template #footer>\r\n <div class=\"gm-flex gm-justify-between\">\r\n <div>\r\n <gm-button :loading=\"submitLoading\" type=\"primary\" size=\"default\" @click=\"onReset\">重置</gm-button>\r\n <gm-button :loading=\"submitLoading\" type=\"success\" size=\"default\" @click=\"onSyncRemote\">同步</gm-button>\r\n </div>\r\n <div>\r\n <gm-button :loading=\"submitLoading\" size=\"default\" @click=\"isShowDrawer = false\">取消</gm-button>\r\n <gm-button :loading=\"submitLoading\" type=\"primary\" size=\"default\" @click=\"submitSettings\">保存</gm-button>\r\n </div>\r\n </div>\r\n </template>\r\n </gm-drawer>\r\n</template>\r\n\r\n<script setup lang=\"ts\">\r\nimport { computed, onMounted, ref, watch } from 'vue';\r\nimport { useCloned } from '@vueuse/core';\r\nimport { useCustomSettingsStore } from '@giime/hooks';\r\nimport { GmMessage } from '@giime/components/src/plugins/message';\r\nimport { cloneDeep } from 'lodash-es';\r\nimport { isNil } from '@giime/utils/src/is';\r\nimport { IceCreamRound, InfoFilled } from '@element-plus/icons-vue';\r\nimport { tableHeaderFormProps } from './tableHeaderForm';\r\nimport type { CheckboxValueType } from 'element-plus';\r\nimport type { TableColumnProProps } from '../tableColumnPro/tableColumnPro';\r\n\r\ndefineOptions({\r\n name: 'GmTableHeaderForm',\r\n});\r\nconst props = defineProps(tableHeaderFormProps);\r\n\r\n/**抽屉显示 */\r\nconst isShowDrawer = defineModel<boolean>('isShowDrawer', {\r\n required: true,\r\n});\r\n\r\n/**自定义按钮 props列表 */\r\nconst colPropsList = defineModel<TableColumnProProps[]>('colPropsList', {\r\n required: true,\r\n});\r\nconst customSettingsStore = useCustomSettingsStore();\r\n\r\n/**\r\n * 数据是否初始化完成\r\n */\r\nconst isInited = ref(false);\r\n/**内部克隆一份,当点击保存时 应用修改的内容 */\r\nconst { cloned: clonedColPropsList } = useCloned(colPropsList);\r\nconst defaultPropsList = computed(() => cloneDeep(props.colDefaultPropsList));\r\n// 重新打开弹窗时, 克隆一份新数据\r\nwatch(isShowDrawer, newValue => {\r\n if (newValue) {\r\n clonedColPropsList.value = cloneDeep(colPropsList.value);\r\n }\r\n});\r\nconst customSettingsValue = computed<TableColumnProProps[]>(() => customSettingsStore.customSettings[props.keyWord]?.[props.type] || []);\r\nconst { cloned: clonedStore } = useCloned(customSettingsValue);\r\n\r\n// 更新选中数据\r\nconst updateColumns = () => {\r\n colPropsList.value = clonedColPropsList.value;\r\n};\r\n// 初始化数据\r\nconst initColumns = async () => {\r\n await customSettingsStore.getCustomSettings({ key_word: props.keyWord, type: props.type }, { defaultValue: [] });\r\n clonedColPropsList.value = defaultPropsList.value.map(it => {\r\n const findItem = clonedStore.value.find(v => v.prop === it.prop);\r\n if (findItem) {\r\n it.isShow = findItem.isShow;\r\n it.width = findItem.width;\r\n if (!isNil(findItem.fixed)) {\r\n it.fixed = findItem.fixed;\r\n }\r\n // it.type = findItem.type;\r\n }\r\n return it;\r\n });\r\n\r\n updateColumns();\r\n isInited.value = true;\r\n};\r\n\r\n// 已选中条数\r\nconst checkedNumber = computed(() => {\r\n return clonedColPropsList.value.filter(v => v.isShow).length;\r\n});\r\n// 全选\r\nconst checkedAll = computed(() => clonedColPropsList.value.filter(it => it.type !== 'edit').every(v => v.isShow));\r\n// 半选\r\nconst isIndeterminate = computed(() => !checkedAll.value && clonedColPropsList.value.filter(it => it.type !== 'edit').some(v => v.isShow));\r\n// 切换全选\r\nconst handleCheckAllChange = (val: CheckboxValueType) => {\r\n clonedColPropsList.value.forEach(v => {\r\n if (v.type !== 'edit') {\r\n v.isShow = Boolean(val);\r\n }\r\n });\r\n};\r\nconst submitLoading = ref(false);\r\n// 保存\r\nconst submitSettings = async () => {\r\n try {\r\n submitLoading.value = true;\r\n const { data } = await customSettingsStore.addCustomSettings({\r\n key_word: props.keyWord,\r\n value: JSON.stringify(clonedColPropsList.value),\r\n type: props.type,\r\n });\r\n submitLoading.value = false;\r\n if (data.code !== 0) {\r\n return;\r\n }\r\n // isShowDrawer.value = false;\r\n updateColumns();\r\n GmMessage.success('保存成功');\r\n } catch (e) {\r\n console.error(e);\r\n submitLoading.value = false;\r\n }\r\n};\r\n/**同步远程设置 */\r\nconst onSyncRemote = async () => {\r\n try {\r\n submitLoading.value = true;\r\n await customSettingsStore.syncRemoteSetting({\r\n key_word: props.keyWord,\r\n type: props.type,\r\n });\r\n submitLoading.value = false;\r\n GmMessage.success('同步成功');\r\n } catch (e) {\r\n console.error(e);\r\n submitLoading.value = false;\r\n }\r\n};\r\n// 重置\r\nconst onReset = () => {\r\n clonedColPropsList.value = cloneDeep(props.colDefaultPropsList);\r\n};\r\n// 点击固定到左侧\r\nconst toggleFixedLeft = (row: TableColumnProProps) => {\r\n if (row.fixed === 'left' || row.fixed === true || row.fixed === '') {\r\n row.fixed = false;\r\n } else {\r\n row.fixed = 'left';\r\n }\r\n};\r\n// 点击固定到右侧\r\nconst toggleFixedRight = (row: TableColumnProProps) => {\r\n if (row.fixed === 'right') {\r\n row.fixed = false;\r\n } else {\r\n row.fixed = 'right';\r\n }\r\n};\r\nonMounted(() => {\r\n initColumns();\r\n});\r\ndefineExpose({\r\n isInited,\r\n submitSettings,\r\n});\r\n</script>\r\n"],"names":["_useModel"],"mappings":"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"}
1
+ {"version":3,"file":"TableHeaderForm.vue2.mjs","sources":["../../../../../../../../packages/components/src/composite/tablePro/tableHeaderForm/TableHeaderForm.vue"],"sourcesContent":["<template>\r\n <gm-drawer v-model=\"isShowDrawer\" title=\"自定义表头\" direction=\"rtl\" size=\"600px\" append-to-body destroy-on-close>\r\n <section\r\n class=\"drawer-alert gm-mb-4 gm-flex gm-items-center gm-justify-between gm-rounded gm-border gm-border-cyan-300 gm-bg-cyan-50 gm-px-4 gm-text-sm gm-text-[#777]\"\r\n >\r\n <div class=\"gm-flex gm-items-center gm-py-3\">\r\n <gm-icon><InfoFilled /></gm-icon>\r\n <p class=\"gm-ml-2\">\r\n 已选中 <span class=\"gm-text-cyan-500\">{{ checkedNumber }}</span> 项\r\n </p>\r\n </div>\r\n </section>\r\n <gm-table :data=\"clonedColPropsList\" :header-cell-style=\"{ background: '#F5F7FA', color: '#333' }\" style=\"width: 100%\">\r\n <gm-table-column align=\"left\" width=\"80\">\r\n <template #header>\r\n <gm-checkbox :model-value=\"checkedAll\" :indeterminate=\"isIndeterminate\" @change=\"handleCheckAllChange\" />\r\n </template>\r\n <template #default=\"{ row }: { row: TableColumnProProps }\">\r\n <gm-checkbox v-model=\"row.isShow\" :disabled=\"row.type === 'edit'\" />\r\n </template>\r\n </gm-table-column>\r\n <gm-table-column label=\"列名\" prop=\"label\">\r\n <template #default=\"{ row }: { row: TableColumnProProps }\">\r\n {{ row.type === 'edit' ? '操作' : row.label }}\r\n </template>\r\n </gm-table-column>\r\n <gm-table-column label=\"列宽\">\r\n <template #default=\"{ row }: { row: TableColumnProProps; $index: number }\">\r\n <gm-input v-model=\"row.width\" class=\"gm-w-[120px]\" placeholder=\"设置宽度\" clearable />\r\n </template>\r\n </gm-table-column>\r\n <gm-table-column label=\"固定\">\r\n <template #default=\"{ row }: { row: TableColumnProProps; $index: number }\">\r\n <div v-if=\"row.type !== 'edit'\">\r\n <gm-tooltip effect=\"dark\" content=\"固定在左侧\" placement=\"top\">\r\n <gm-icon\r\n class=\"gm-mr-2 gm-cursor-pointer\"\r\n :class=\"row.fixed === '' || row.fixed === true || row.fixed === 'left' ? 'gm-text-blue-500' : ''\"\r\n size=\"20\"\r\n @click=\"toggleFixedLeft(row)\"\r\n >\r\n <IceCreamRound />\r\n </gm-icon>\r\n </gm-tooltip>\r\n <gm-tooltip effect=\"dark\" content=\"固定在右侧\" placement=\"top\">\r\n <gm-icon\r\n class=\"-gm-scale-x-100 gm-cursor-pointer\"\r\n :class=\"row.fixed === 'right' ? 'gm-text-blue-500' : ''\"\r\n size=\"20\"\r\n @click=\"toggleFixedRight(row)\"\r\n >\r\n <IceCreamRound />\r\n </gm-icon>\r\n </gm-tooltip>\r\n </div>\r\n </template>\r\n </gm-table-column>\r\n </gm-table>\r\n <template #footer>\r\n <div class=\"gm-flex gm-justify-between\">\r\n <div>\r\n <gm-button :loading=\"submitLoading\" type=\"primary\" size=\"default\" @click=\"onReset\">重置</gm-button>\r\n <gm-button :loading=\"submitLoading\" type=\"success\" size=\"default\" @click=\"onSyncRemote\">同步</gm-button>\r\n </div>\r\n <div>\r\n <gm-button :loading=\"submitLoading\" size=\"default\" @click=\"isShowDrawer = false\">取消</gm-button>\r\n <gm-button :loading=\"submitLoading\" type=\"primary\" size=\"default\" @click=\"submitSettings()\">保存</gm-button>\r\n </div>\r\n </div>\r\n </template>\r\n </gm-drawer>\r\n</template>\r\n\r\n<script setup lang=\"ts\">\r\nimport { computed, onMounted, ref, watch } from 'vue';\r\nimport { useCloned } from '@vueuse/core';\r\nimport { useCustomSettingsStore } from '@giime/hooks';\r\nimport { GmMessage } from '@giime/components/src/plugins/message';\r\nimport { cloneDeep } from 'lodash-es';\r\nimport { isNil } from '@giime/utils/src/is';\r\nimport { IceCreamRound, InfoFilled } from '@element-plus/icons-vue';\r\nimport { tableHeaderFormProps } from './tableHeaderForm';\r\nimport type { CheckboxValueType } from 'element-plus';\r\nimport type { TableColumnProProps } from '../tableColumnPro/tableColumnPro';\r\n\r\ndefineOptions({\r\n name: 'GmTableHeaderForm',\r\n});\r\nconst props = defineProps(tableHeaderFormProps);\r\n\r\n/**抽屉显示 */\r\nconst isShowDrawer = defineModel<boolean>('isShowDrawer', {\r\n required: true,\r\n});\r\n\r\n/**自定义按钮 props列表 */\r\nconst colPropsList = defineModel<TableColumnProProps[]>('colPropsList', {\r\n required: true,\r\n});\r\nconst customSettingsStore = useCustomSettingsStore();\r\n\r\n/**\r\n * 数据是否初始化完成\r\n */\r\nconst isInited = ref(false);\r\n/**内部克隆一份,当点击保存时 应用修改的内容 */\r\nconst { cloned: clonedColPropsList } = useCloned(colPropsList);\r\nconst defaultPropsList = computed(() => cloneDeep(props.colDefaultPropsList));\r\n// 重新打开弹窗时, 克隆一份新数据\r\nwatch(isShowDrawer, newValue => {\r\n if (newValue) {\r\n clonedColPropsList.value = cloneDeep(colPropsList.value);\r\n }\r\n});\r\nconst customSettingsValue = computed<TableColumnProProps[]>(() => customSettingsStore.customSettings[props.keyWord]?.[props.type] || []);\r\nconst { cloned: clonedStore } = useCloned(customSettingsValue);\r\n\r\n// 更新选中数据\r\nconst updateColumns = () => {\r\n colPropsList.value = clonedColPropsList.value;\r\n};\r\n// 初始化数据\r\nconst initColumns = async () => {\r\n await customSettingsStore.getCustomSettings({ key_word: props.keyWord, type: props.type }, { defaultValue: [] });\r\n clonedColPropsList.value = defaultPropsList.value.map(it => {\r\n const findItem = clonedStore.value.find(v => v.prop === it.prop);\r\n if (findItem) {\r\n it.isShow = findItem.isShow;\r\n it.width = findItem.width;\r\n if (!isNil(findItem.fixed)) {\r\n it.fixed = findItem.fixed;\r\n }\r\n // it.type = findItem.type;\r\n }\r\n return it;\r\n });\r\n\r\n updateColumns();\r\n isInited.value = true;\r\n};\r\n\r\n// 已选中条数\r\nconst checkedNumber = computed(() => {\r\n return clonedColPropsList.value.filter(v => v.isShow).length;\r\n});\r\n// 全选\r\nconst checkedAll = computed(() => clonedColPropsList.value.filter(it => it.type !== 'edit').every(v => v.isShow));\r\n// 半选\r\nconst isIndeterminate = computed(() => !checkedAll.value && clonedColPropsList.value.filter(it => it.type !== 'edit').some(v => v.isShow));\r\n// 切换全选\r\nconst handleCheckAllChange = (val: CheckboxValueType) => {\r\n clonedColPropsList.value.forEach(v => {\r\n if (v.type !== 'edit') {\r\n v.isShow = Boolean(val);\r\n }\r\n });\r\n};\r\nconst submitLoading = ref(false);\r\n// 保存\r\nconst submitSettings = async (options?: { hiddenMessage?: boolean }) => {\r\n try {\r\n submitLoading.value = true;\r\n const { data } = await customSettingsStore.addCustomSettings({\r\n key_word: props.keyWord,\r\n value: JSON.stringify(clonedColPropsList.value),\r\n type: props.type,\r\n });\r\n submitLoading.value = false;\r\n if (data.code !== 0) {\r\n return;\r\n }\r\n // isShowDrawer.value = false;\r\n updateColumns();\r\n if (!options?.hiddenMessage) {\r\n GmMessage.success('保存成功');\r\n }\r\n } catch (e) {\r\n console.error(e);\r\n submitLoading.value = false;\r\n }\r\n};\r\n/**同步远程设置 */\r\nconst onSyncRemote = async () => {\r\n try {\r\n submitLoading.value = true;\r\n await customSettingsStore.syncRemoteSetting({\r\n key_word: props.keyWord,\r\n type: props.type,\r\n });\r\n submitLoading.value = false;\r\n GmMessage.success('同步成功');\r\n } catch (e) {\r\n console.error(e);\r\n submitLoading.value = false;\r\n }\r\n};\r\n// 重置\r\nconst onReset = () => {\r\n clonedColPropsList.value = cloneDeep(props.colDefaultPropsList);\r\n};\r\n// 点击固定到左侧\r\nconst toggleFixedLeft = (row: TableColumnProProps) => {\r\n if (row.fixed === 'left' || row.fixed === true || row.fixed === '') {\r\n row.fixed = false;\r\n } else {\r\n row.fixed = 'left';\r\n }\r\n};\r\n// 点击固定到右侧\r\nconst toggleFixedRight = (row: TableColumnProProps) => {\r\n if (row.fixed === 'right') {\r\n row.fixed = false;\r\n } else {\r\n row.fixed = 'right';\r\n }\r\n};\r\nonMounted(() => {\r\n initColumns();\r\n});\r\ndefineExpose({\r\n isInited,\r\n submitSettings,\r\n});\r\n</script>\r\n"],"names":["_useModel"],"mappings":"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"}
@@ -22,7 +22,9 @@ export declare const GmTableHeaderForm: import("../../../../../utils").SFCWithIn
22
22
  };
23
23
  }, {
24
24
  isInited: import("vue").Ref<boolean>;
25
- submitSettings: () => Promise<void>;
25
+ submitSettings: (options?: {
26
+ hiddenMessage?: boolean | undefined;
27
+ } | undefined) => Promise<void>;
26
28
  }, unknown, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {
27
29
  "update:isShowDrawer": (isShowDrawer: boolean) => void;
28
30
  "update:colPropsList": (colPropsList: import("../index.js").TableColumnProProps[]) => void;
@@ -1,4 +1,3 @@
1
- import type { Sort } from 'element-plus';
2
1
  export declare const tableProProps: {
3
2
  headerCellStyle: {
4
3
  type: ObjectConstructor;
@@ -70,7 +69,7 @@ export declare const tableProProps: {
70
69
  emptyText: StringConstructor;
71
70
  expandRowKeys: import("vue").PropType<any[] | undefined>;
72
71
  defaultExpandAll: BooleanConstructor;
73
- defaultSort: import("vue").PropType<Sort | undefined>;
72
+ defaultSort: import("vue").PropType<import("element-plus/es/components/table/src/table/defaults").Sort | undefined>;
74
73
  tooltipEffect: StringConstructor;
75
74
  tooltipOptions: import("vue").PropType<Partial<Pick<import("element-plus").ElTooltipProps, "offset" | "appendTo" | "effect" | "placement" | "popperClass" | "popperOptions" | "hideAfter" | "transition" | "enterable" | "showAfter" | "showArrow">> | undefined>;
76
75
  spanMethod: import("vue").PropType<((data: {
@@ -119,7 +118,26 @@ export declare const tableProProps: {
119
118
  showOverflowTooltip: import("vue").PropType<boolean | Partial<Pick<import("element-plus").ElTooltipProps, "offset" | "appendTo" | "effect" | "placement" | "popperClass" | "popperOptions" | "hideAfter" | "transition" | "enterable" | "showAfter" | "showArrow">> | undefined>;
120
119
  };
121
120
  export declare const tableProEmits: {
122
- tableOperate: (btn: Record<string, any>, row: Record<string, any>) => Record<string, any>;
123
- selectionChange: (value: Record<string, any>[]) => Record<string, any>[];
124
- sortChange: (value: Sort) => Sort;
121
+ select: (...arg: any[]) => boolean;
122
+ 'select-all': (...arg: any[]) => boolean;
123
+ 'selection-change': (...arg: any[]) => boolean;
124
+ 'cell-mouse-enter': (...arg: any[]) => boolean;
125
+ 'cell-mouse-leave': (...arg: any[]) => boolean;
126
+ 'cell-click': (...arg: any[]) => boolean;
127
+ 'cell-dblclick': (...arg: any[]) => boolean;
128
+ 'cell-contextmenu': (...arg: any[]) => boolean;
129
+ 'row-click': (...arg: any[]) => boolean;
130
+ 'row-contextmenu': (...arg: any[]) => boolean;
131
+ 'row-dblclick': (...arg: any[]) => boolean;
132
+ 'header-click': (...arg: any[]) => boolean;
133
+ 'header-contextmenu': (...arg: any[]) => boolean;
134
+ 'sort-change': (...arg: any[]) => boolean;
135
+ 'filter-change': (...arg: any[]) => boolean;
136
+ 'current-change': (...arg: any[]) => boolean;
137
+ 'header-dragend': (...arg: any[]) => boolean;
138
+ 'expand-change': (...arg: any[]) => boolean;
125
139
  };
140
+ export interface TableProSortValue {
141
+ field: string;
142
+ order: 'asc' | 'desc';
143
+ }
@@ -1,5 +1,5 @@
1
1
  import '../../base/index.mjs';
2
- import { tableProps } from '../../base/table/table.mjs';
2
+ import { tableProps, tableEmits } from '../../base/table/table.mjs';
3
3
 
4
4
  const tableProProps = {
5
5
  ...tableProps,
@@ -37,9 +37,7 @@ const tableProProps = {
37
37
  }
38
38
  };
39
39
  const tableProEmits = {
40
- tableOperate: (btn, row) => btn && row,
41
- selectionChange: (value) => value,
42
- sortChange: (value) => value
40
+ ...tableEmits
43
41
  };
44
42
 
45
43
  export { tableProEmits, tableProProps };
@@ -1 +1 @@
1
- {"version":3,"file":"tablePro.mjs","sources":["../../../../../../../packages/components/src/composite/tablePro/tablePro.ts"],"sourcesContent":["import { tableProps } from '@giime/components/src/base';\r\nimport type { Sort } from 'element-plus';\r\n\r\nexport const tableProProps = {\r\n ...tableProps,\r\n\r\n headerCellStyle: {\r\n type: Object,\r\n default: () => ({ background: '#F5F7FA', color: '#333' }),\r\n },\r\n data: {\r\n type: Array,\r\n default: () => [],\r\n },\r\n selection: {\r\n type: Boolean,\r\n default: false,\r\n },\r\n customHeader: {\r\n type: Boolean,\r\n default: true,\r\n },\r\n customOperate: {\r\n type: Boolean,\r\n default: true,\r\n },\r\n operateWidth: {\r\n type: Number,\r\n default: 120,\r\n },\r\n operateFixed: {\r\n type: Boolean,\r\n default: true,\r\n },\r\n page: {\r\n type: String,\r\n required: true as const,\r\n },\r\n};\r\n\r\nexport const tableProEmits = {\r\n tableOperate: (btn: Record<string, any>, row: Record<string, any>) => btn && row,\r\n selectionChange: (value: Record<string, any>[]) => value,\r\n sortChange: (value: Sort) => value,\r\n};\r\n"],"names":[],"mappings":";;;AAGO,MAAM,aAAgB,GAAA;AAAA,EAC3B,GAAG,UAAA;AAAA,EAEH,eAAiB,EAAA;AAAA,IACf,IAAM,EAAA,MAAA;AAAA,IACN,SAAS,OAAO,EAAE,UAAY,EAAA,SAAA,EAAW,OAAO,MAAO,EAAA,CAAA;AAAA,GACzD;AAAA,EACA,IAAM,EAAA;AAAA,IACJ,IAAM,EAAA,KAAA;AAAA,IACN,OAAA,EAAS,MAAM,EAAC;AAAA,GAClB;AAAA,EACA,SAAW,EAAA;AAAA,IACT,IAAM,EAAA,OAAA;AAAA,IACN,OAAS,EAAA,KAAA;AAAA,GACX;AAAA,EACA,YAAc,EAAA;AAAA,IACZ,IAAM,EAAA,OAAA;AAAA,IACN,OAAS,EAAA,IAAA;AAAA,GACX;AAAA,EACA,aAAe,EAAA;AAAA,IACb,IAAM,EAAA,OAAA;AAAA,IACN,OAAS,EAAA,IAAA;AAAA,GACX;AAAA,EACA,YAAc,EAAA;AAAA,IACZ,IAAM,EAAA,MAAA;AAAA,IACN,OAAS,EAAA,GAAA;AAAA,GACX;AAAA,EACA,YAAc,EAAA;AAAA,IACZ,IAAM,EAAA,OAAA;AAAA,IACN,OAAS,EAAA,IAAA;AAAA,GACX;AAAA,EACA,IAAM,EAAA;AAAA,IACJ,IAAM,EAAA,MAAA;AAAA,IACN,QAAU,EAAA,IAAA;AAAA,GACZ;AACF,EAAA;AAEO,MAAM,aAAgB,GAAA;AAAA,EAC3B,YAAc,EAAA,CAAC,GAA0B,EAAA,GAAA,KAA6B,GAAO,IAAA,GAAA;AAAA,EAC7E,eAAA,EAAiB,CAAC,KAAiC,KAAA,KAAA;AAAA,EACnD,UAAA,EAAY,CAAC,KAAgB,KAAA,KAAA;AAC/B;;;;"}
1
+ {"version":3,"file":"tablePro.mjs","sources":["../../../../../../../packages/components/src/composite/tablePro/tablePro.ts"],"sourcesContent":["import { tableEmits, tableProps } from '@giime/components/src/base';\r\n// import type { Sort } from 'element-plus';\r\n\r\nexport const tableProProps = {\r\n ...tableProps,\r\n\r\n headerCellStyle: {\r\n type: Object,\r\n default: () => ({ background: '#F5F7FA', color: '#333' }),\r\n },\r\n data: {\r\n type: Array,\r\n default: () => [],\r\n },\r\n selection: {\r\n type: Boolean,\r\n default: false,\r\n },\r\n customHeader: {\r\n type: Boolean,\r\n default: true,\r\n },\r\n customOperate: {\r\n type: Boolean,\r\n default: true,\r\n },\r\n operateWidth: {\r\n type: Number,\r\n default: 120,\r\n },\r\n operateFixed: {\r\n type: Boolean,\r\n default: true,\r\n },\r\n page: {\r\n type: String,\r\n required: true as const,\r\n },\r\n};\r\n\r\nexport const tableProEmits = {\r\n ...tableEmits,\r\n};\r\nexport interface TableProSortValue {\r\n field: string;\r\n order: 'asc' | 'desc';\r\n}\r\n"],"names":[],"mappings":";;;AAGO,MAAM,aAAgB,GAAA;AAAA,EAC3B,GAAG,UAAA;AAAA,EAEH,eAAiB,EAAA;AAAA,IACf,IAAM,EAAA,MAAA;AAAA,IACN,SAAS,OAAO,EAAE,UAAY,EAAA,SAAA,EAAW,OAAO,MAAO,EAAA,CAAA;AAAA,GACzD;AAAA,EACA,IAAM,EAAA;AAAA,IACJ,IAAM,EAAA,KAAA;AAAA,IACN,OAAA,EAAS,MAAM,EAAC;AAAA,GAClB;AAAA,EACA,SAAW,EAAA;AAAA,IACT,IAAM,EAAA,OAAA;AAAA,IACN,OAAS,EAAA,KAAA;AAAA,GACX;AAAA,EACA,YAAc,EAAA;AAAA,IACZ,IAAM,EAAA,OAAA;AAAA,IACN,OAAS,EAAA,IAAA;AAAA,GACX;AAAA,EACA,aAAe,EAAA;AAAA,IACb,IAAM,EAAA,OAAA;AAAA,IACN,OAAS,EAAA,IAAA;AAAA,GACX;AAAA,EACA,YAAc,EAAA;AAAA,IACZ,IAAM,EAAA,MAAA;AAAA,IACN,OAAS,EAAA,GAAA;AAAA,GACX;AAAA,EACA,YAAc,EAAA;AAAA,IACZ,IAAM,EAAA,OAAA;AAAA,IACN,OAAS,EAAA,IAAA;AAAA,GACX;AAAA,EACA,IAAM,EAAA;AAAA,IACJ,IAAM,EAAA,MAAA;AAAA,IACN,QAAU,EAAA,IAAA;AAAA,GACZ;AACF,EAAA;AAEO,MAAM,aAAgB,GAAA;AAAA,EAC3B,GAAG,UAAA;AACL;;;;"}
@@ -1 +1 @@
1
- export declare const version = "0.1.13";
1
+ export declare const version = "0.1.15";
@@ -1,4 +1,4 @@
1
- const version = "0.1.12";
1
+ const version = "0.1.14";
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.1.12';\n"],"names":[],"mappings":"AAAO,MAAM,OAAU,GAAA;;;;"}
1
+ {"version":3,"file":"version.mjs","sources":["../../../../packages/giime/version.ts"],"sourcesContent":["export const version = '0.1.14';\n"],"names":[],"mappings":"AAAO,MAAM,OAAU,GAAA;;;;"}
@@ -25,7 +25,12 @@ const useDownload = () => {
25
25
  modalInfo.close();
26
26
  };
27
27
  const downloadByRes = async (res, options) => {
28
- const filename = options?.filename || (res?.headers?.["content-disposition"] || res?.headers?.["Content-Disposition"])?.split("filename=")[1] || "file";
28
+ let contentDispositionName = (res?.headers?.["content-disposition"] || res?.headers?.["Content-Disposition"])?.split("filename=")[1];
29
+ try {
30
+ contentDispositionName = decodeURIComponent(contentDispositionName);
31
+ } catch {
32
+ }
33
+ const filename = options?.filename || contentDispositionName || "file";
29
34
  const resBlob = await res.data;
30
35
  const curId = v4();
31
36
  const modalInfo = GmNotification({
@@ -1 +1 @@
1
- {"version":3,"file":"index.mjs","sources":["../../../../../../packages/hooks/base/useDownload/index.ts"],"sourcesContent":["import { h, ref } from 'vue';\r\nimport FileSaver from 'file-saver';\r\n\r\nimport GmNotification from '@giime/components/src/plugins/notification';\r\nimport { v4 as uuidv4 } from 'uuid';\r\nimport JSZip from 'jszip';\r\nimport type { AxiosResponse } from 'axios';\r\n\r\nexport interface DownloadOptions {\r\n filename?: string;\r\n}\r\nexport interface DateownloadZipItem {\r\n url: string;\r\n filename?: string;\r\n}\r\n\r\nexport const useDownload = () => {\r\n const getUrlFilename = (url: string) => {\r\n const filename = url.split('/').pop()?.split('?')[0] || 'file';\r\n return filename;\r\n };\r\n /**\r\n * 通过url下载\r\n * @param url\r\n * @param options\r\n */\r\n const downloadByUrl = async (url: string, options?: DownloadOptions) => {\r\n const filename = options?.filename || getUrlFilename(url);\r\n const curId = uuidv4();\r\n const modalInfo = GmNotification({\r\n title: '下载中',\r\n message: h('div', { className: curId }, [`当前下载进度 0%`]),\r\n duration: 0,\r\n });\r\n await createDownload({\r\n url,\r\n filename,\r\n uuid: curId,\r\n });\r\n modalInfo.close();\r\n };\r\n /**\r\n * 通过接口响应结果下载\r\n * @param res\r\n * @param options\r\n */\r\n const downloadByRes = async (res: AxiosResponse<any, any>, options?: DownloadOptions) => {\r\n const filename =\r\n options?.filename || (res?.headers?.['content-disposition'] || res?.headers?.['Content-Disposition'])?.split('filename=')[1] || 'file';\r\n const resBlob = await res.data;\r\n const curId = uuidv4();\r\n const modalInfo = GmNotification({\r\n title: '下载中',\r\n message: h('div', { className: curId }, [`当前下载进度 0%`]),\r\n duration: 0,\r\n });\r\n // 设置type类型\r\n const blob = new Blob([resBlob]);\r\n const fileUrl = window.URL.createObjectURL(blob);\r\n await createDownload({\r\n url: fileUrl,\r\n filename,\r\n uuid: curId,\r\n });\r\n modalInfo.close();\r\n };\r\n /**\r\n * 下载多文件 转为zip\r\n * @param fileList\r\n * @param filename\r\n */\r\n const downloadToZip = async (fileList: DateownloadZipItem[], filename: string) => {\r\n try {\r\n const currentContentClass = `message${Date.now()}`;\r\n const downloadCount = ref(0);\r\n const len = fileList.length;\r\n const modalInfo = GmNotification({\r\n title: '下载中',\r\n message: h('div', [h('div', { className: currentContentClass }, [`总下载文件数:${len},已下载文件数:${downloadCount.value}`])]),\r\n duration: 0,\r\n });\r\n // h('div', { className: currentClass }, [`当前下载进度 ${progress.value}%`]),\r\n const zipInstance = new JSZip();\r\n for (let i = 0; i < len; i++) {\r\n const currentItem = fileList[i];\r\n // const fileBlob = await\r\n const downblobOptions = {\r\n url: currentItem.url,\r\n filename: currentItem.filename ?? getUrlFilename(currentItem.url),\r\n isZip: true,\r\n };\r\n createDownload(downblobOptions).then(res => {\r\n zipInstance.file(downblobOptions.filename, res);\r\n downloadCount.value++;\r\n editElementContent(currentContentClass, `总下载文件数:${len},已下载文件数:${downloadCount.value}`);\r\n if (downloadCount.value == len) {\r\n editElementContent(currentContentClass, `正在合并...`);\r\n\r\n zipInstance\r\n .generateAsync({ type: 'blob' })\r\n .then(res => {\r\n modalInfo.close();\r\n\r\n const fileUrl = window.URL.createObjectURL(res);\r\n // FileSaver.saveAs(res, filename);\r\n downloadByUrl(fileUrl, { filename });\r\n })\r\n .catch(error => {\r\n console.error(error);\r\n });\r\n }\r\n });\r\n }\r\n } catch (error) {\r\n console.error(error);\r\n }\r\n };\r\n const createDownload = (options: { url: string; filename: string; uuid?: string; isZip?: boolean }) => {\r\n return new Promise<Blob>((resolve, reject) => {\r\n // 创建一个新的 XMLHttpRequest 对象\r\n const xhr = new XMLHttpRequest();\r\n // 初始化一个GET请求\r\n xhr.open('GET', options.url, true);\r\n xhr.responseType = 'blob'; // 设置响应类型为blob,以便处理二进制文件\r\n\r\n // 监听 progress 事件\r\n xhr.onprogress = function (event) {\r\n if (event.lengthComputable) {\r\n const percentComplete = Math.floor((event.loaded / event.total) * 100);\r\n if (options.uuid) {\r\n editElementContent(options.uuid, `当前下载进度 ${percentComplete}%`);\r\n }\r\n }\r\n };\r\n\r\n // 监听 load 事件,表示下载完成\r\n xhr.onload = function (e) {\r\n const eventTarget = e.target as XMLHttpRequest;\r\n if ([200, 304].includes(eventTarget.status)) {\r\n const blob = eventTarget.response;\r\n // const url = window.URL.createObjectURL(blob);\r\n if (!options.isZip) {\r\n FileSaver.saveAs(blob, options.filename);\r\n GmNotification({\r\n type: 'success',\r\n title: '温馨提示',\r\n message: '下载完成',\r\n duration: 3000,\r\n });\r\n }\r\n\r\n resolve(blob);\r\n }\r\n };\r\n\r\n // 监听 error 事件\r\n xhr.onerror = function (e) {\r\n GmMessage.error('下载异常,请重试');\r\n reject(e);\r\n };\r\n\r\n // 发送请求\r\n xhr.send();\r\n });\r\n };\r\n return { downloadByUrl, downloadByRes, downloadToZip };\r\n};\r\n\r\n// 动态更新 notify 中的message 信息\r\nconst editElementContent = (className: string, content: string) => {\r\n // eslint-disable-next-line unicorn/prefer-query-selector\r\n const currentEle = document.getElementsByClassName(className)[0];\r\n if (currentEle) {\r\n currentEle.innerHTML = content;\r\n }\r\n};\r\n"],"names":["uuidv4","res"],"mappings":"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"}
1
+ {"version":3,"file":"index.mjs","sources":["../../../../../../packages/hooks/base/useDownload/index.ts"],"sourcesContent":["import { h, ref } from 'vue';\r\nimport FileSaver from 'file-saver';\r\n\r\nimport GmNotification from '@giime/components/src/plugins/notification';\r\nimport { v4 as uuidv4 } from 'uuid';\r\nimport JSZip from 'jszip';\r\nimport type { AxiosResponse } from 'axios';\r\n\r\nexport interface DownloadOptions {\r\n filename?: string;\r\n}\r\nexport interface DateownloadZipItem {\r\n url: string;\r\n filename?: string;\r\n}\r\n\r\nexport const useDownload = () => {\r\n const getUrlFilename = (url: string) => {\r\n const filename = url.split('/').pop()?.split('?')[0] || 'file';\r\n return filename;\r\n };\r\n /**\r\n * 通过url下载\r\n * @param url\r\n * @param options\r\n */\r\n const downloadByUrl = async (url: string, options?: DownloadOptions) => {\r\n const filename = options?.filename || getUrlFilename(url);\r\n const curId = uuidv4();\r\n const modalInfo = GmNotification({\r\n title: '下载中',\r\n message: h('div', { className: curId }, [`当前下载进度 0%`]),\r\n duration: 0,\r\n });\r\n await createDownload({\r\n url,\r\n filename,\r\n uuid: curId,\r\n });\r\n modalInfo.close();\r\n };\r\n /**\r\n * 通过接口响应结果下载\r\n * @param res\r\n * @param options\r\n */\r\n const downloadByRes = async (res: AxiosResponse<any, any>, options?: DownloadOptions) => {\r\n let contentDispositionName = (res?.headers?.['content-disposition'] || res?.headers?.['Content-Disposition'])?.split('filename=')[1];\r\n try {\r\n contentDispositionName = decodeURIComponent(contentDispositionName);\r\n } catch {}\r\n const filename = options?.filename || contentDispositionName || 'file';\r\n const resBlob = await res.data;\r\n const curId = uuidv4();\r\n const modalInfo = GmNotification({\r\n title: '下载中',\r\n message: h('div', { className: curId }, [`当前下载进度 0%`]),\r\n duration: 0,\r\n });\r\n // 设置type类型\r\n const blob = new Blob([resBlob]);\r\n const fileUrl = window.URL.createObjectURL(blob);\r\n await createDownload({\r\n url: fileUrl,\r\n filename,\r\n uuid: curId,\r\n });\r\n modalInfo.close();\r\n };\r\n /**\r\n * 下载多文件 转为zip\r\n * @param fileList\r\n * @param filename\r\n */\r\n const downloadToZip = async (fileList: DateownloadZipItem[], filename: string) => {\r\n try {\r\n const currentContentClass = `message${Date.now()}`;\r\n const downloadCount = ref(0);\r\n const len = fileList.length;\r\n const modalInfo = GmNotification({\r\n title: '下载中',\r\n message: h('div', [h('div', { className: currentContentClass }, [`总下载文件数:${len},已下载文件数:${downloadCount.value}`])]),\r\n duration: 0,\r\n });\r\n // h('div', { className: currentClass }, [`当前下载进度 ${progress.value}%`]),\r\n const zipInstance = new JSZip();\r\n for (let i = 0; i < len; i++) {\r\n const currentItem = fileList[i];\r\n // const fileBlob = await\r\n const downblobOptions = {\r\n url: currentItem.url,\r\n filename: currentItem.filename ?? getUrlFilename(currentItem.url),\r\n isZip: true,\r\n };\r\n createDownload(downblobOptions).then(res => {\r\n zipInstance.file(downblobOptions.filename, res);\r\n downloadCount.value++;\r\n editElementContent(currentContentClass, `总下载文件数:${len},已下载文件数:${downloadCount.value}`);\r\n if (downloadCount.value == len) {\r\n editElementContent(currentContentClass, `正在合并...`);\r\n\r\n zipInstance\r\n .generateAsync({ type: 'blob' })\r\n .then(res => {\r\n modalInfo.close();\r\n\r\n const fileUrl = window.URL.createObjectURL(res);\r\n // FileSaver.saveAs(res, filename);\r\n downloadByUrl(fileUrl, { filename });\r\n })\r\n .catch(error => {\r\n console.error(error);\r\n });\r\n }\r\n });\r\n }\r\n } catch (error) {\r\n console.error(error);\r\n }\r\n };\r\n const createDownload = (options: { url: string; filename: string; uuid?: string; isZip?: boolean }) => {\r\n return new Promise<Blob>((resolve, reject) => {\r\n // 创建一个新的 XMLHttpRequest 对象\r\n const xhr = new XMLHttpRequest();\r\n // 初始化一个GET请求\r\n xhr.open('GET', options.url, true);\r\n xhr.responseType = 'blob'; // 设置响应类型为blob,以便处理二进制文件\r\n\r\n // 监听 progress 事件\r\n xhr.onprogress = function (event) {\r\n if (event.lengthComputable) {\r\n const percentComplete = Math.floor((event.loaded / event.total) * 100);\r\n if (options.uuid) {\r\n editElementContent(options.uuid, `当前下载进度 ${percentComplete}%`);\r\n }\r\n }\r\n };\r\n\r\n // 监听 load 事件,表示下载完成\r\n xhr.onload = function (e) {\r\n const eventTarget = e.target as XMLHttpRequest;\r\n if ([200, 304].includes(eventTarget.status)) {\r\n const blob = eventTarget.response;\r\n // const url = window.URL.createObjectURL(blob);\r\n if (!options.isZip) {\r\n FileSaver.saveAs(blob, options.filename);\r\n GmNotification({\r\n type: 'success',\r\n title: '温馨提示',\r\n message: '下载完成',\r\n duration: 3000,\r\n });\r\n }\r\n\r\n resolve(blob);\r\n }\r\n };\r\n\r\n // 监听 error 事件\r\n xhr.onerror = function (e) {\r\n GmMessage.error('下载异常,请重试');\r\n reject(e);\r\n };\r\n\r\n // 发送请求\r\n xhr.send();\r\n });\r\n };\r\n return { downloadByUrl, downloadByRes, downloadToZip };\r\n};\r\n\r\n// 动态更新 notify 中的message 信息\r\nconst editElementContent = (className: string, content: string) => {\r\n // eslint-disable-next-line unicorn/prefer-query-selector\r\n const currentEle = document.getElementsByClassName(className)[0];\r\n if (currentEle) {\r\n currentEle.innerHTML = content;\r\n }\r\n};\r\n"],"names":["uuidv4","res"],"mappings":"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"}
package/es/index.css CHANGED
@@ -14,27 +14,27 @@
14
14
  margin-right: 8px;
15
15
  margin-bottom: 8px;
16
16
  }
17
- [data-v-a90d8c0d] .gmTableNoBorder .el-table__body .el-table__cell {
17
+ [data-v-21db6839] .gmTableNoBorder .el-table__body .el-table__cell {
18
18
  border-right: none;
19
19
  }
20
20
 
21
- [data-v-a90d8c0d] .gmTableNoBorder .el-table__inner-wrapper:before {
21
+ [data-v-21db6839] .gmTableNoBorder .el-table__inner-wrapper:before {
22
22
  height: 0;
23
23
  }
24
24
 
25
- [data-v-a90d8c0d] .gmTableNoBorder.el-table--border .el-table__inner-wrapper:after {
25
+ [data-v-21db6839] .gmTableNoBorder.el-table--border .el-table__inner-wrapper:after {
26
26
  height: 0;
27
27
  }
28
28
 
29
- [data-v-a90d8c0d] .gmTableNoBorder.el-table--border:after {
29
+ [data-v-21db6839] .gmTableNoBorder.el-table--border:after {
30
30
  height: 0;
31
31
  }
32
32
 
33
- [data-v-a90d8c0d] .gmTableNoBorder.el-table--border:before {
33
+ [data-v-21db6839] .gmTableNoBorder.el-table--border:before {
34
34
  height: 0;
35
35
  }
36
36
 
37
- [data-v-a90d8c0d] .gmTableNoBorder .el-table__border-left-patch {
37
+ [data-v-21db6839] .gmTableNoBorder .el-table__border-left-patch {
38
38
  height: 0;
39
39
  }
40
40
  /*
@@ -1,9 +1,7 @@
1
+ import type { TableProSortValue } from './tablePro';
1
2
  import type { Sort } from 'element-plus';
2
3
  declare const _default: __VLS_WithTemplateSlots<import("vue").DefineComponent<{
3
- sortValue: import("vue").PropType<{
4
- field: string;
5
- order: "asc" | "desc";
6
- }[]>;
4
+ sortValue: import("vue").PropType<TableProSortValue[]>;
7
5
  headerCellStyle: {
8
6
  type: ObjectConstructor;
9
7
  default: () => {
@@ -122,8 +120,22 @@ declare const _default: __VLS_WithTemplateSlots<import("vue").DefineComponent<{
122
120
  flexible: BooleanConstructor;
123
121
  showOverflowTooltip: import("vue").PropType<boolean | Partial<Pick<import("element-plus").ElTooltipProps, "offset" | "appendTo" | "effect" | "placement" | "popperClass" | "popperOptions" | "hideAfter" | "transition" | "enterable" | "showAfter" | "showArrow">> | undefined>;
124
122
  }, {
123
+ sort: (prop: string, order: string) => void;
124
+ scrollTo: (options: number | ScrollToOptions, yCoord?: number | undefined) => void;
125
+ setScrollTop: (top?: number | undefined) => void;
126
+ setScrollLeft: (left?: number | undefined) => void;
127
+ setCurrentRow: (row: any) => void;
128
+ getSelectionRows: () => any;
129
+ toggleRowSelection: (row: any, selected: boolean) => void;
130
+ clearSelection: () => void;
131
+ clearFilter: (columnKeys?: string[] | undefined) => void;
132
+ toggleAllSelection: () => void;
133
+ toggleRowExpansion: (row: any, expanded?: boolean | undefined) => void;
134
+ clearSort: () => void;
135
+ doLayout: () => void;
136
+ setChecked: unknown;
125
137
  colPropsList: import("vue").Ref<{
126
- type: "" | "edit";
138
+ type: "" | "default" | "index" | "edit" | "selection" | "expand";
127
139
  fixed: string | boolean;
128
140
  width: string | number;
129
141
  minWidth: string | number;
@@ -280,20 +292,28 @@ declare const _default: __VLS_WithTemplateSlots<import("vue").DefineComponent<{
280
292
  filterPlacement?: string | undefined;
281
293
  filterClassName?: string | undefined;
282
294
  }[]>;
283
- clearSort: () => void | undefined;
284
295
  }, unknown, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {
285
- "update:sortValue": (sortValue: {
286
- field: string;
287
- order: "asc" | "desc";
288
- }[]) => void;
289
- tableOperate: (btn: Record<string, any>, row: Record<string, any>) => void;
290
- selectionChange: (value: Record<string, any>[]) => void;
291
- sortChange: (value: Sort) => void;
296
+ "update:sortValue": (sortValue: TableProSortValue[]) => void;
297
+ select: (...args: any[]) => void;
298
+ "expand-change": (...args: any[]) => void;
299
+ "current-change": (...args: any[]) => void;
300
+ "select-all": (...args: any[]) => void;
301
+ "selection-change": (...args: any[]) => void;
302
+ "cell-mouse-enter": (...args: any[]) => void;
303
+ "cell-mouse-leave": (...args: any[]) => void;
304
+ "cell-click": (...args: any[]) => void;
305
+ "cell-dblclick": (...args: any[]) => void;
306
+ "cell-contextmenu": (...args: any[]) => void;
307
+ "row-click": (...args: any[]) => void;
308
+ "row-contextmenu": (...args: any[]) => void;
309
+ "row-dblclick": (...args: any[]) => void;
310
+ "header-click": (...args: any[]) => void;
311
+ "header-contextmenu": (...args: any[]) => void;
312
+ "sort-change": (...args: any[]) => void;
313
+ "filter-change": (...args: any[]) => void;
314
+ "header-dragend": (...args: any[]) => void;
292
315
  }, string, import("vue").PublicProps, Readonly<import("vue").ExtractPropTypes<{
293
- sortValue: import("vue").PropType<{
294
- field: string;
295
- order: "asc" | "desc";
296
- }[]>;
316
+ sortValue: import("vue").PropType<TableProSortValue[]>;
297
317
  headerCellStyle: {
298
318
  type: ObjectConstructor;
299
319
  default: () => {
@@ -412,13 +432,25 @@ declare const _default: __VLS_WithTemplateSlots<import("vue").DefineComponent<{
412
432
  flexible: BooleanConstructor;
413
433
  showOverflowTooltip: import("vue").PropType<boolean | Partial<Pick<import("element-plus").ElTooltipProps, "offset" | "appendTo" | "effect" | "placement" | "popperClass" | "popperOptions" | "hideAfter" | "transition" | "enterable" | "showAfter" | "showArrow">> | undefined>;
414
434
  }>> & {
415
- "onUpdate:sortValue"?: ((sortValue: {
416
- field: string;
417
- order: "asc" | "desc";
418
- }[]) => any) | undefined;
419
- onTableOperate?: ((btn: Record<string, any>, row: Record<string, any>) => any) | undefined;
420
- onSelectionChange?: ((value: Record<string, any>[]) => any) | undefined;
421
- onSortChange?: ((value: Sort) => any) | undefined;
435
+ onSelect?: ((...args: any[]) => any) | undefined;
436
+ "onExpand-change"?: ((...args: any[]) => any) | undefined;
437
+ "onCurrent-change"?: ((...args: any[]) => any) | undefined;
438
+ "onSelect-all"?: ((...args: any[]) => any) | undefined;
439
+ "onSelection-change"?: ((...args: any[]) => any) | undefined;
440
+ "onCell-mouse-enter"?: ((...args: any[]) => any) | undefined;
441
+ "onCell-mouse-leave"?: ((...args: any[]) => any) | undefined;
442
+ "onCell-click"?: ((...args: any[]) => any) | undefined;
443
+ "onCell-dblclick"?: ((...args: any[]) => any) | undefined;
444
+ "onCell-contextmenu"?: ((...args: any[]) => any) | undefined;
445
+ "onRow-click"?: ((...args: any[]) => any) | undefined;
446
+ "onRow-contextmenu"?: ((...args: any[]) => any) | undefined;
447
+ "onRow-dblclick"?: ((...args: any[]) => any) | undefined;
448
+ "onHeader-click"?: ((...args: any[]) => any) | undefined;
449
+ "onHeader-contextmenu"?: ((...args: any[]) => any) | undefined;
450
+ "onSort-change"?: ((...args: any[]) => any) | undefined;
451
+ "onFilter-change"?: ((...args: any[]) => any) | undefined;
452
+ "onHeader-dragend"?: ((...args: any[]) => any) | undefined;
453
+ "onUpdate:sortValue"?: ((sortValue: TableProSortValue[]) => any) | undefined;
422
454
  }, {
423
455
  data: unknown[];
424
456
  fit: boolean;
@@ -6,7 +6,7 @@ var TablePro_vue_vue_type_script_setup_true_lang = require('./TablePro.vue2.js')
6
6
  require('./TablePro.vue3.js');
7
7
  var _pluginVue_exportHelper = require('../../../../_virtual/_plugin-vue_export-helper.js');
8
8
 
9
- var TablePro = /* @__PURE__ */ _pluginVue_exportHelper.default(TablePro_vue_vue_type_script_setup_true_lang.default, [["__scopeId", "data-v-a90d8c0d"], ["__file", "TablePro.vue"]]);
9
+ var TablePro = /* @__PURE__ */ _pluginVue_exportHelper.default(TablePro_vue_vue_type_script_setup_true_lang.default, [["__scopeId", "data-v-21db6839"], ["__file", "TablePro.vue"]]);
10
10
 
11
11
  exports.default = TablePro;
12
12
  //# sourceMappingURL=TablePro.vue.js.map