giime 0.4.1 → 0.4.3

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 (86) hide show
  1. package/dist/index.css +33 -33
  2. package/es/components/src/base/datePicker/DatePicker.vue.d.ts +6 -3
  3. package/es/components/src/base/datePicker/DatePicker.vue2.mjs +25 -29
  4. package/es/components/src/base/datePicker/DatePicker.vue2.mjs.map +1 -1
  5. package/es/components/src/base/datePicker/datePicker.d.ts +3 -1
  6. package/es/components/src/base/datePicker/datePicker.mjs +3 -0
  7. package/es/components/src/base/datePicker/datePicker.mjs.map +1 -1
  8. package/es/components/src/base/datePicker/index.d.ts +12 -7
  9. package/es/components/src/composite/operateButton/operateButtonForm/OperateButtonForm.vue.d.ts +9 -0
  10. package/es/components/src/composite/operateButton/operateButtonForm/OperateButtonForm.vue2.mjs +5 -1
  11. package/es/components/src/composite/operateButton/operateButtonForm/OperateButtonForm.vue2.mjs.map +1 -1
  12. package/es/components/src/composite/operateButton/operateButtonForm/index.d.ts +9 -0
  13. package/es/components/src/composite/operateButton/operateButtonForm/operateButtonForm.d.ts +4 -0
  14. package/es/components/src/composite/operateButton/operateButtonForm/operateButtonForm.mjs +5 -0
  15. package/es/components/src/composite/operateButton/operateButtonForm/operateButtonForm.mjs.map +1 -1
  16. package/es/components/src/composite/searchForm/searchFormItems/datePicker/SearchFormDatePicker.vue.d.ts +2 -2
  17. package/es/components/src/composite/searchForm/searchFormItems/datePicker/index.d.ts +2 -2
  18. package/es/components/src/composite/searchForm/searchFormItems/datePicker/searchFormDatePicker.d.ts +1 -1
  19. package/es/components/src/composite/tablePro/TablePro.vue.d.ts +18 -0
  20. package/es/components/src/composite/tablePro/TablePro.vue.mjs +1 -1
  21. package/es/components/src/composite/tablePro/TablePro.vue2.mjs +5 -3
  22. package/es/components/src/composite/tablePro/TablePro.vue2.mjs.map +1 -1
  23. package/es/components/src/composite/tablePro/index.d.ts +38 -0
  24. package/es/components/src/composite/tablePro/tableHeaderForm/TableHeaderForm.vue.d.ts +9 -0
  25. package/es/components/src/composite/tablePro/tableHeaderForm/TableHeaderForm.vue2.mjs +70 -61
  26. package/es/components/src/composite/tablePro/tableHeaderForm/TableHeaderForm.vue2.mjs.map +1 -1
  27. package/es/components/src/composite/tablePro/tableHeaderForm/index.d.ts +9 -0
  28. package/es/components/src/composite/tablePro/tableHeaderForm/tableHeaderForm.d.ts +4 -0
  29. package/es/components/src/composite/tablePro/tableHeaderForm/tableHeaderForm.mjs +5 -0
  30. package/es/components/src/composite/tablePro/tableHeaderForm/tableHeaderForm.mjs.map +1 -1
  31. package/es/components/src/composite/tablePro/tablePro.d.ts +8 -0
  32. package/es/components/src/composite/tablePro/tablePro.mjs +10 -0
  33. package/es/components/src/composite/tablePro/tablePro.mjs.map +1 -1
  34. package/es/constants/key.d.ts +1 -0
  35. package/es/constants/key.mjs.map +1 -1
  36. package/es/giime/makeInstaller.mjs +3 -1
  37. package/es/giime/makeInstaller.mjs.map +1 -1
  38. package/es/giime/version.d.ts +1 -1
  39. package/es/giime/version.mjs +1 -1
  40. package/es/giime/version.mjs.map +1 -1
  41. package/es/hooks/store/useLangList/index.mjs +0 -1
  42. package/es/hooks/store/useLangList/index.mjs.map +1 -1
  43. package/es/index.css +33 -33
  44. package/lib/components/src/base/datePicker/DatePicker.vue.d.ts +6 -3
  45. package/lib/components/src/base/datePicker/DatePicker.vue2.js +24 -28
  46. package/lib/components/src/base/datePicker/DatePicker.vue2.js.map +1 -1
  47. package/lib/components/src/base/datePicker/datePicker.d.ts +3 -1
  48. package/lib/components/src/base/datePicker/datePicker.js +3 -0
  49. package/lib/components/src/base/datePicker/datePicker.js.map +1 -1
  50. package/lib/components/src/base/datePicker/index.d.ts +12 -7
  51. package/lib/components/src/composite/operateButton/operateButtonForm/OperateButtonForm.vue.d.ts +9 -0
  52. package/lib/components/src/composite/operateButton/operateButtonForm/OperateButtonForm.vue2.js +5 -1
  53. package/lib/components/src/composite/operateButton/operateButtonForm/OperateButtonForm.vue2.js.map +1 -1
  54. package/lib/components/src/composite/operateButton/operateButtonForm/index.d.ts +9 -0
  55. package/lib/components/src/composite/operateButton/operateButtonForm/operateButtonForm.d.ts +4 -0
  56. package/lib/components/src/composite/operateButton/operateButtonForm/operateButtonForm.js +5 -0
  57. package/lib/components/src/composite/operateButton/operateButtonForm/operateButtonForm.js.map +1 -1
  58. package/lib/components/src/composite/searchForm/searchFormItems/datePicker/SearchFormDatePicker.vue.d.ts +2 -2
  59. package/lib/components/src/composite/searchForm/searchFormItems/datePicker/index.d.ts +2 -2
  60. package/lib/components/src/composite/searchForm/searchFormItems/datePicker/searchFormDatePicker.d.ts +1 -1
  61. package/lib/components/src/composite/tablePro/TablePro.vue.d.ts +18 -0
  62. package/lib/components/src/composite/tablePro/TablePro.vue.js +1 -1
  63. package/lib/components/src/composite/tablePro/TablePro.vue2.js +5 -3
  64. package/lib/components/src/composite/tablePro/TablePro.vue2.js.map +1 -1
  65. package/lib/components/src/composite/tablePro/index.d.ts +38 -0
  66. package/lib/components/src/composite/tablePro/tableHeaderForm/TableHeaderForm.vue.d.ts +9 -0
  67. package/lib/components/src/composite/tablePro/tableHeaderForm/TableHeaderForm.vue2.js +69 -60
  68. package/lib/components/src/composite/tablePro/tableHeaderForm/TableHeaderForm.vue2.js.map +1 -1
  69. package/lib/components/src/composite/tablePro/tableHeaderForm/index.d.ts +9 -0
  70. package/lib/components/src/composite/tablePro/tableHeaderForm/tableHeaderForm.d.ts +4 -0
  71. package/lib/components/src/composite/tablePro/tableHeaderForm/tableHeaderForm.js +5 -0
  72. package/lib/components/src/composite/tablePro/tableHeaderForm/tableHeaderForm.js.map +1 -1
  73. package/lib/components/src/composite/tablePro/tablePro.d.ts +8 -0
  74. package/lib/components/src/composite/tablePro/tablePro.js +10 -0
  75. package/lib/components/src/composite/tablePro/tablePro.js.map +1 -1
  76. package/lib/constants/key.d.ts +1 -0
  77. package/lib/constants/key.js.map +1 -1
  78. package/lib/giime/makeInstaller.js +3 -1
  79. package/lib/giime/makeInstaller.js.map +1 -1
  80. package/lib/giime/version.d.ts +1 -1
  81. package/lib/giime/version.js +1 -1
  82. package/lib/giime/version.js.map +1 -1
  83. package/lib/hooks/store/useLangList/index.js +0 -1
  84. package/lib/hooks/store/useLangList/index.js.map +1 -1
  85. package/lib/index.css +33 -33
  86. package/package.json +1 -1
@@ -20,6 +20,10 @@ export declare const GmOperateButtonForm: import("../../../../../utils").SFCWith
20
20
  type: import("vue").PropType<import("../operateButton.js").OperateButtonProps[]>;
21
21
  default: () => never[];
22
22
  };
23
+ disabledRemoteBtn: {
24
+ type: BooleanConstructor;
25
+ default: boolean;
26
+ };
23
27
  }, {
24
28
  isInited: import("vue").Ref<boolean>;
25
29
  }, unknown, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {
@@ -46,10 +50,15 @@ export declare const GmOperateButtonForm: import("../../../../../utils").SFCWith
46
50
  type: import("vue").PropType<import("../operateButton.js").OperateButtonProps[]>;
47
51
  default: () => never[];
48
52
  };
53
+ disabledRemoteBtn: {
54
+ type: BooleanConstructor;
55
+ default: boolean;
56
+ };
49
57
  }>> & {
50
58
  "onUpdate:isShowDrawer"?: ((isShowDrawer: boolean) => any) | undefined;
51
59
  "onUpdate:customBtnPropsList"?: ((customBtnPropsList: import("../operateButton.js").OperateButtonProps[]) => any) | undefined;
52
60
  }, {
61
+ disabledRemoteBtn: boolean;
53
62
  customDefaultPropsList: import("../operateButton.js").OperateButtonProps[];
54
63
  }, {}>> & Record<string, any>;
55
64
  export type OperateButtonFormInstance = InstanceType<typeof OperateButtonForm>;
@@ -19,4 +19,8 @@ export declare const operateButtonFormProps: {
19
19
  type: PropType<OperateButtonProps[]>;
20
20
  default: () => never[];
21
21
  };
22
+ disabledRemoteBtn: {
23
+ type: BooleanConstructor;
24
+ default: boolean;
25
+ };
22
26
  };
@@ -18,6 +18,11 @@ const operateButtonFormProps = {
18
18
  customDefaultPropsList: {
19
19
  type: Array,
20
20
  default: () => []
21
+ },
22
+ // 是否禁用 远程操作按钮的配置
23
+ disabledRemoteBtn: {
24
+ type: Boolean,
25
+ default: false
21
26
  }
22
27
  };
23
28
 
@@ -1 +1 @@
1
- {"version":3,"file":"operateButtonForm.js","sources":["../../../../../../../../packages/components/src/composite/operateButton/operateButtonForm/operateButtonForm.ts"],"sourcesContent":["import type { OperateButtonProps } from '../operateButton';\r\nimport type { PropType } from 'vue';\r\n\r\nexport const operateButtonFormProps = {\r\n /**\r\n * 每个列表的唯一key\r\n */\r\n keyWord: {\r\n type: String,\r\n required: true as const,\r\n },\r\n /**\r\n * 自定义值 类型\r\n */\r\n type: {\r\n type: String,\r\n required: true as const,\r\n },\r\n customDefaultPropsList: {\r\n type: Array as PropType<OperateButtonProps[]>,\r\n default: () => [],\r\n },\r\n};\r\n"],"names":[],"mappings":";;AAGO,MAAM,sBAAyB,GAAA;AAAA;AAAA;AAAA;AAAA,EAIpC,OAAS,EAAA;AAAA,IACP,IAAM,EAAA,MAAA;AAAA,IACN,QAAU,EAAA,IAAA;AAAA,GACZ;AAAA;AAAA;AAAA;AAAA,EAIA,IAAM,EAAA;AAAA,IACJ,IAAM,EAAA,MAAA;AAAA,IACN,QAAU,EAAA,IAAA;AAAA,GACZ;AAAA,EACA,sBAAwB,EAAA;AAAA,IACtB,IAAM,EAAA,KAAA;AAAA,IACN,OAAA,EAAS,MAAM,EAAC;AAAA,GAClB;AACF;;;;"}
1
+ {"version":3,"file":"operateButtonForm.js","sources":["../../../../../../../../packages/components/src/composite/operateButton/operateButtonForm/operateButtonForm.ts"],"sourcesContent":["import type { OperateButtonProps } from '../operateButton';\r\nimport type { PropType } from 'vue';\r\n\r\nexport const operateButtonFormProps = {\r\n /**\r\n * 每个列表的唯一key\r\n */\r\n keyWord: {\r\n type: String,\r\n required: true as const,\r\n },\r\n /**\r\n * 自定义值 类型\r\n */\r\n type: {\r\n type: String,\r\n required: true as const,\r\n },\r\n customDefaultPropsList: {\r\n type: Array as PropType<OperateButtonProps[]>,\r\n default: () => [],\r\n },\r\n // 是否禁用 远程操作按钮的配置\r\n disabledRemoteBtn: {\r\n type: Boolean,\r\n default: false,\r\n },\r\n};\r\n"],"names":[],"mappings":";;AAGO,MAAM,sBAAyB,GAAA;AAAA;AAAA;AAAA;AAAA,EAIpC,OAAS,EAAA;AAAA,IACP,IAAM,EAAA,MAAA;AAAA,IACN,QAAU,EAAA,IAAA;AAAA,GACZ;AAAA;AAAA;AAAA;AAAA,EAIA,IAAM,EAAA;AAAA,IACJ,IAAM,EAAA,MAAA;AAAA,IACN,QAAU,EAAA,IAAA;AAAA,GACZ;AAAA,EACA,sBAAwB,EAAA;AAAA,IACtB,IAAM,EAAA,KAAA;AAAA,IACN,OAAA,EAAS,MAAM,EAAC;AAAA,GAClB;AAAA;AAAA,EAEA,iBAAmB,EAAA;AAAA,IACjB,IAAM,EAAA,OAAA;AAAA,IACN,OAAS,EAAA,KAAA;AAAA,GACX;AACF;;;;"}
@@ -14,7 +14,7 @@ declare const _default: import("vue").DefineComponent<{
14
14
  required: true;
15
15
  };
16
16
  shortcuts: {
17
- type: import("vue").PropType<unknown[]>;
17
+ type: import("vue").PropType<unknown[] | undefined>;
18
18
  };
19
19
  defaultValue: {
20
20
  readonly type: import("vue").PropType<import("element-plus/es/utils").EpPropMergeType<(new (...args: any[]) => Date | [Date, Date]) | (() => import("element-plus").SingleOrRange<Date>) | ((new (...args: any[]) => Date | [Date, Date]) | (() => import("element-plus").SingleOrRange<Date>))[], unknown, unknown>>;
@@ -60,7 +60,7 @@ declare const _default: import("vue").DefineComponent<{
60
60
  required: true;
61
61
  };
62
62
  shortcuts: {
63
- type: import("vue").PropType<unknown[]>;
63
+ type: import("vue").PropType<unknown[] | undefined>;
64
64
  };
65
65
  defaultValue: {
66
66
  readonly type: import("vue").PropType<import("element-plus/es/utils").EpPropMergeType<(new (...args: any[]) => Date | [Date, Date]) | (() => import("element-plus").SingleOrRange<Date>) | ((new (...args: any[]) => Date | [Date, Date]) | (() => import("element-plus").SingleOrRange<Date>))[], unknown, unknown>>;
@@ -14,7 +14,7 @@ export declare const GmSearchFormDatePicker: import("../../../../../../utils").S
14
14
  required: true;
15
15
  };
16
16
  shortcuts: {
17
- type: import("vue").PropType<unknown[]>;
17
+ type: import("vue").PropType<unknown[] | undefined>;
18
18
  };
19
19
  defaultValue: {
20
20
  readonly type: import("vue").PropType<import("element-plus/es/utils/index.js").EpPropMergeType<(new (...args: any[]) => Date | [Date, Date]) | (() => import("element-plus").SingleOrRange<Date>) | ((new (...args: any[]) => Date | [Date, Date]) | (() => import("element-plus").SingleOrRange<Date>))[], unknown, unknown>>;
@@ -60,7 +60,7 @@ export declare const GmSearchFormDatePicker: import("../../../../../../utils").S
60
60
  required: true;
61
61
  };
62
62
  shortcuts: {
63
- type: import("vue").PropType<unknown[]>;
63
+ type: import("vue").PropType<unknown[] | undefined>;
64
64
  };
65
65
  defaultValue: {
66
66
  readonly type: import("vue").PropType<import("element-plus/es/utils/index.js").EpPropMergeType<(new (...args: any[]) => Date | [Date, Date]) | (() => import("element-plus").SingleOrRange<Date>) | ((new (...args: any[]) => Date | [Date, Date]) | (() => import("element-plus").SingleOrRange<Date>))[], unknown, unknown>>;
@@ -13,7 +13,7 @@ export declare const searchFormDatePickerProps: {
13
13
  required: true;
14
14
  };
15
15
  shortcuts: {
16
- type: PropType<unknown[]>;
16
+ type: PropType<unknown[] | undefined>;
17
17
  };
18
18
  defaultValue: {
19
19
  readonly type: PropType<import("element-plus/es/utils").EpPropMergeType<(new (...args: any[]) => Date | [Date, Date]) | (() => import("element-plus").SingleOrRange<Date>) | ((new (...args: any[]) => Date | [Date, Date]) | (() => import("element-plus").SingleOrRange<Date>))[], unknown, unknown>>;
@@ -49,6 +49,14 @@ declare const _default: __VLS_WithTemplateSlots<import("vue").DefineComponent<{
49
49
  type: BooleanConstructor;
50
50
  default: boolean;
51
51
  };
52
+ disabledRemoteCol: {
53
+ type: BooleanConstructor;
54
+ default: boolean;
55
+ };
56
+ disabledRemoteBtn: {
57
+ type: BooleanConstructor;
58
+ default: boolean;
59
+ };
52
60
  tableId: {
53
61
  type: StringConstructor;
54
62
  };
@@ -377,6 +385,14 @@ declare const _default: __VLS_WithTemplateSlots<import("vue").DefineComponent<{
377
385
  type: BooleanConstructor;
378
386
  default: boolean;
379
387
  };
388
+ disabledRemoteCol: {
389
+ type: BooleanConstructor;
390
+ default: boolean;
391
+ };
392
+ disabledRemoteBtn: {
393
+ type: BooleanConstructor;
394
+ default: boolean;
395
+ };
380
396
  tableId: {
381
397
  type: StringConstructor;
382
398
  };
@@ -503,6 +519,7 @@ declare const _default: __VLS_WithTemplateSlots<import("vue").DefineComponent<{
503
519
  treeProps: import("element-plus/es/components/table/src/table/defaults").TreeProps | undefined;
504
520
  flexible: boolean;
505
521
  selection: boolean;
522
+ disabledRemoteCol: boolean;
506
523
  customHeader: boolean;
507
524
  customOperate: boolean;
508
525
  operateWidth: number;
@@ -510,6 +527,7 @@ declare const _default: __VLS_WithTemplateSlots<import("vue").DefineComponent<{
510
527
  autoHeight: boolean;
511
528
  heightOffset: number;
512
529
  disabledResetWidth: boolean;
530
+ disabledRemoteBtn: boolean;
513
531
  }, {}>, Readonly<{
514
532
  default(data?: any): any[];
515
533
  append?(data?: any): any[];
@@ -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-72a53f6c"]]);
9
+ var TablePro = /* @__PURE__ */ _pluginVue_exportHelper.default(TablePro_vue_vue_type_script_setup_true_lang.default, [["__scopeId", "data-v-a0a106bd"]]);
10
10
 
11
11
  exports.default = TablePro;
12
12
  //# sourceMappingURL=TablePro.vue.js.map
@@ -15,7 +15,7 @@ var tablePro = require('./tablePro.js');
15
15
  var tableHelper = require('./tableHelper.js');
16
16
  var tableColumnPro = require('./tableColumnPro/tableColumnPro.js');
17
17
 
18
- const _withScopeId = (n) => (vue.pushScopeId("data-v-72a53f6c"), n = n(), vue.popScopeId(), n);
18
+ const _withScopeId = (n) => (vue.pushScopeId("data-v-a0a106bd"), n = n(), vue.popScopeId(), n);
19
19
  const _hoisted_1 = { class: "gm-text-center" };
20
20
  const _hoisted_2 = {
21
21
  key: 0,
@@ -305,9 +305,10 @@ var _sfc_main = /* @__PURE__ */ vue.defineComponent({
305
305
  "onUpdate:colPropsList": _cache[4] || (_cache[4] = ($event) => colPropsList.value = $event),
306
306
  colDefaultPropsList: colDefaultPropsList.value,
307
307
  keyWord: props.page,
308
+ disabledRemoteCol: props.disabledRemoteCol,
308
309
  type: "HeaderList",
309
310
  onUpdateColumns: _cache[5] || (_cache[5] = ($event) => resetWidthOnHeaderDrag())
310
- }, null, 8, ["isShowDrawer", "colPropsList", "colDefaultPropsList", "keyWord"]),
311
+ }, null, 8, ["isShowDrawer", "colPropsList", "colDefaultPropsList", "keyWord", "disabledRemoteCol"]),
311
312
  vue.createVNode(_component_gm_operate_button_form, {
312
313
  ref_key: "gmCustomOperationsRef",
313
314
  ref: gmCustomOperationsRef,
@@ -317,8 +318,9 @@ var _sfc_main = /* @__PURE__ */ vue.defineComponent({
317
318
  "onUpdate:customBtnPropsList": _cache[7] || (_cache[7] = ($event) => customBtnPropsList.value = $event),
318
319
  customDefaultPropsList: customDefaultPropsList.value,
319
320
  keyWord: props.page,
321
+ disabledRemoteBtn: props.disabledRemoteBtn,
320
322
  type: "OperateList"
321
- }, null, 8, ["isShowDrawer", "customBtnPropsList", "customDefaultPropsList", "keyWord"])
323
+ }, null, 8, ["isShowDrawer", "customBtnPropsList", "customDefaultPropsList", "keyWord", "disabledRemoteBtn"])
322
324
  ],
323
325
  64
324
326
  /* STABLE_FRAGMENT */
@@ -1 +1 @@
1
- {"version":3,"file":"TablePro.vue2.js","sources":["../../../../../../../packages/components/src/composite/tablePro/TablePro.vue"],"sourcesContent":["<template>\r\n <div ref=\"gmTableDivRef\">\r\n <gm-table\r\n v-if=\"gmTableHeaderRef?.isInited\"\r\n ref=\"GmTbaleRef\"\r\n v-bind=\"props\"\r\n :height=\"autoHeight ? tableMaxHeight : height\"\r\n border\r\n class=\"gmTablePro\"\r\n :class=\"[props.border ? '' : 'gmTableNoBorder']\"\r\n v-on=\"elEvents\"\r\n @selection-change=\"(value: TableColumnProProps[]) => $emit('selection-change', value)\"\r\n @sort-change=\"handleSortChange\"\r\n @header-dragend=\"headerDragend\"\r\n >\r\n <!-- <template #empty>\r\n <gm-empty image=\"https://thirdorder.giikin.com/third/20240601/3c5850781351121f81b9e21ec7e75a204898949.png\" />\r\n </template> -->\r\n <template v-if=\"slots.append\" #append>\r\n <slot name=\"append\" />\r\n </template>\r\n <template v-if=\"slots.empty\" #empty>\r\n <slot name=\"empty\" />\r\n </template>\r\n <template v-if=\"props.selection\">\r\n <gm-table-column :key=\"999999\" type=\"selection\" width=\"55\" />\r\n </template>\r\n <TableColumnVNodeRenderer :vnode=\"tableColumnVnode\" :propsList=\"colPropsList\" />\r\n <!-- 操作 -->\r\n <gm-table-column\r\n v-if=\"customHeader || customOperate\"\r\n prop=\"gmEdit\"\r\n min-width=\"100\"\r\n :width=\"editProps?.width\"\r\n :fixed=\"operateFixed ? 'right' : false\"\r\n >\r\n <template #header>\r\n <div class=\"gm-text-center\">\r\n <gm-button v-if=\"customHeader\" type=\"primary\" link size=\"small\" @click=\"setTable('header')\"> 表头 </gm-button>\r\n <gm-button v-if=\"customOperate\" type=\"primary\" link size=\"small\" @click=\"setTable('operate')\"> 操作 </gm-button>\r\n </div>\r\n </template>\r\n <template #default=\"slotValue\">\r\n <!-- <div\r\n v-if=\"\r\n tableOperateVnode &&\r\n tableOperateVnode.children &&\r\n gmCustomOperationsRef &&\r\n gmCustomOperationsRef.isInited &&\r\n slotValue &&\r\n slotValue.row &&\r\n tableOperateVnode.children?.default(slotValue) &&\r\n customBtnPropsList\r\n \"\r\n >\r\n <TableProEditSlot\r\n v-model:customBtnPropsList=\"customBtnPropsList\"\r\n v-model:customDefaultPropsList=\"customDefaultPropsList\"\r\n :tableOperateVnode=\"tableOperateVnode\"\r\n :isInited=\"gmCustomOperationsRef?.isInited\"\r\n :slotValue=\"slotValue\"\r\n />\r\n </div> -->\r\n <div\r\n v-if=\"\r\n tableOperateVnode &&\r\n tableOperateVnode.children &&\r\n gmCustomOperationsRef &&\r\n gmCustomOperationsRef.isInited &&\r\n slotValue &&\r\n slotValue.row &&\r\n tableOperateVnode.children?.default(slotValue) &&\r\n customBtnPropsList\r\n \"\r\n class=\"gm-flex gm-flex-wrap gm-justify-center\"\r\n >\r\n <TableOperateVNodeRenderer :vnode=\"tableOperateVnode.children?.default(slotValue)\" :customPropsList=\"customBtnPropsList\" />\r\n </div>\r\n </template>\r\n </gm-table-column>\r\n </gm-table>\r\n </div>\r\n\r\n <gm-table-header-form\r\n ref=\"gmTableHeaderRef\"\r\n v-model:isShowDrawer=\"drawerHeaderVisible\"\r\n v-model:colPropsList=\"colPropsList\"\r\n :colDefaultPropsList=\"colDefaultPropsList\"\r\n :keyWord=\"props.page\"\r\n type=\"HeaderList\"\r\n @updateColumns=\"resetWidthOnHeaderDrag()\"\r\n />\r\n\r\n <gm-operate-button-form\r\n ref=\"gmCustomOperationsRef\"\r\n v-model:isShowDrawer=\"drawerOperateVisible\"\r\n v-model:customBtnPropsList=\"customBtnPropsList\"\r\n :customDefaultPropsList=\"customDefaultPropsList\"\r\n :keyWord=\"props.page\"\r\n type=\"OperateList\"\r\n />\r\n</template>\r\n\r\n<script setup lang=\"ts\">\r\nimport { computed, inject, nextTick, ref } from 'vue';\r\nimport { hasOwn } from '@giime/utils/src/objects';\r\nimport { getGmExports } from '@giime/utils/src/elementPlus/exports';\r\nimport { getGmEvent } from '@giime/utils/src/elementPlus/event';\r\nimport { TableCtxKey } from '@giime/constants/table';\r\nimport { useElementBounding, useWindowSize } from '@vueuse/core';\r\nimport { operateButtonProps } from '../operateButton/operateButton';\r\n// import TableProEditSlot from './TableProEditSlot.vue';\r\n// import { cloneDeep } from 'lodash-es';\r\nimport TableOperateVNodeRenderer from './TableOperateVNodeRenderer';\r\nimport TableColumnVNodeRenderer from './TableColumnVNodeRenderer';\r\nimport { tableProEmits, tableProProps } from './tablePro';\r\nimport { getVnodesByGmName } from './tableHelper';\r\nimport { TableColumnProName, type TableColumnProProps, tableColumnProProps } from './tableColumnPro/tableColumnPro';\r\nimport type { TableProSortValue } from './tablePro';\r\nimport type { OperateButtonFormInstance } from '../operateButton/operateButtonForm';\r\nimport type { TableHeaderFormInstance } from './tableHeaderForm';\r\nimport type { OperateButtonProps } from '../operateButton/operateButton';\r\nimport type { Sort, TableInstance } from 'element-plus';\r\n\r\ndefineOptions({\r\n name: 'GmTablePro',\r\n});\r\nconst tableCtx = inject(TableCtxKey);\r\nconst props = defineProps(tableProProps);\r\n\r\nconst gmTableDivRef = ref<HTMLDivElement>();\r\n// 用于计算table高度\r\nconst { top: divTop } = useElementBounding(gmTableDivRef);\r\nconst { height: windowHeight } = useWindowSize();\r\nconst tableMaxHeight = computed(() => Math.floor(windowHeight.value - divTop.value - 60 - props.heightOffset)); // 高度 - 顶部距离 - 分页器116 - 用户自定义需要减去的高度\r\nconst GmTbaleRef = ref<TableInstance>();\r\nif (tableCtx && tableCtx.tableId === props.page) {\r\n tableCtx.tableRef = GmTbaleRef;\r\n}\r\nconst gmCustomOperationsRef = ref<OperateButtonFormInstance>();\r\nconst gmTableHeaderRef = ref<TableHeaderFormInstance>();\r\n\r\nconst emit = defineEmits(tableProEmits);\r\n// 需要手动重新实现的事件\r\nconst notResendEvents = ['sort-change', 'header-dragend', 'selection-change'];\r\nconst resendEvent = { ...tableProEmits };\r\nnotResendEvents.forEach(it => Reflect.deleteProperty(resendEvent, it));\r\n// 重发el的事件\r\nconst elEvents = getGmEvent(resendEvent, emit);\r\nconst slots = defineSlots<{\r\n default(data?: any): any[];\r\n append?(data?: any): any[];\r\n empty?(data?: any): any[];\r\n}>();\r\n// 列 当前原始vnode\r\nconst tableColumnVnode = computed(() => {\r\n const vNodes = slots.default?.() || [];\r\n // const nodes = vNodes.filter(vNode => vNode.props && vNode.props.type !== 'edit');\r\n return vNodes;\r\n});\r\n// 默认表头Props列表\r\nconst colDefaultPropsList = computed(() => {\r\n const vNodes = slots.default?.() || [];\r\n const children = getVnodesByGmName(vNodes, TableColumnProName);\r\n // const result = children.filter(vNode => vNode.props && vNode.props.type !== 'edit');\r\n\r\n const colProps: TableColumnProProps[] = children.map((vNode: { props: any }) => vNode.props) ?? [];\r\n // 循环插入props所需的默认值\r\n colProps.forEach(it => {\r\n for (const key in tableColumnProProps) {\r\n // 如果当前props含有默认值\r\n if (hasOwn(it, key)) {\r\n continue;\r\n }\r\n if (hasOwn(tableColumnProProps, key)) {\r\n const element = tableColumnProProps[key as keyof TableColumnProProps];\r\n // 如果btn 定义中含有默认值 则赋值给props\r\n if (hasOwn(element, 'default')) {\r\n Reflect.set(it, key, Reflect.get(element, 'default'));\r\n }\r\n }\r\n }\r\n });\r\n return colProps;\r\n});\r\n// 已选中表头\r\nconst colPropsList = ref<TableColumnProProps[]>(colDefaultPropsList.value);\r\nconst editProps = computed(() => colPropsList.value.find(it => it.type === 'edit'));\r\n\r\n// 操作按钮组 当前原始vnode\r\nconst tableOperateVnode = computed(() => {\r\n const vNodes = slots.default?.() || [];\r\n const nodes = vNodes.find(vNode => vNode.props && vNode.props.type === 'edit');\r\n return nodes;\r\n});\r\n\r\nconst customDefaultPropsList = computed(() => {\r\n const defaultVnodes = tableOperateVnode.value?.children?.default?.({ row: {} });\r\n if (Array.isArray(defaultVnodes) && defaultVnodes.some(it => it?.children === 'v-if')) {\r\n console.error(`警告:为确保表格操作按钮能正常渲染,请把表格${props.page}操作按钮中使用的\"v-if\"替换为\"v-see\"`);\r\n }\r\n const children = getVnodesByGmName(defaultVnodes, 'GmOperateButton');\r\n const btnProps: OperateButtonProps[] = children.map((vNode: { props: any }) => vNode.props) ?? [];\r\n // console.log(btnProps);\r\n // 循环插入props所需的默认值\r\n btnProps.forEach(it => {\r\n for (const key in operateButtonProps) {\r\n // 如果当前props含有默认值\r\n if (hasOwn(it, key)) {\r\n continue;\r\n }\r\n if (hasOwn(operateButtonProps, key)) {\r\n const element = operateButtonProps[key as keyof OperateButtonProps];\r\n // 如果btn 定义中含有默认值 则赋值给props\r\n if (hasOwn(element, 'default')) {\r\n Reflect.set(it, key, Reflect.get(element, 'default'));\r\n }\r\n }\r\n }\r\n });\r\n // console.log(btnProps)\r\n return btnProps;\r\n});\r\n// customDefaultPropsList2();\r\n// const customDefaultPropsList = ref<OperateButtonProps[]>([]);\r\nconst customBtnPropsList = ref<OperateButtonProps[]>(customDefaultPropsList.value);\r\n\r\n// 表格头部弹层\r\nconst drawerHeaderVisible = ref(false); // 表头设置弹层\r\nconst drawerOperateVisible = ref(false); // 按钮设置弹层\r\nconst setTable = (event: string) => {\r\n if (event === 'header') {\r\n drawerHeaderVisible.value = true;\r\n }\r\n if (event === 'operate') {\r\n drawerOperateVisible.value = true;\r\n }\r\n};\r\n\r\n/**\r\n * 表头拖动,修改width\r\n */\r\nconst headerDragend = async (newWidth: number, oldWidth: number, column: any) => {\r\n const findItem = colPropsList.value.find(it => it.prop === column.property);\r\n const editItem = column.property === 'gmEdit' ? colPropsList.value.find(it => it.type === 'edit') : null;\r\n if (!findItem && !editItem) {\r\n return;\r\n }\r\n if (findItem) {\r\n findItem.width = newWidth;\r\n }\r\n if (editItem) {\r\n editItem.width = newWidth;\r\n }\r\n // 设置列宽\r\n await nextTick();\r\n resetWidthOnHeaderDrag(column);\r\n gmTableHeaderRef.value?.syncPropsList();\r\n gmTableHeaderRef.value?.submitSettings({ hiddenMessage: true });\r\n};\r\n/**\r\n * 当表头拖动后,重新计算补充列宽度\r\n * 当全部列都设置了宽度,把设置过minWidth的列设置为补充列,补充表格剩余宽度\r\n */\r\nconst resetWidthOnHeaderDrag = (column?: any) => {\r\n if (props.disabledResetWidth) {\r\n return;\r\n }\r\n // 当全部列都设置了宽度 才执行后续步骤\r\n if (colPropsList.value.some(it => it.isShow && !it.width)) {\r\n return;\r\n }\r\n const minWidthCols = colPropsList.value.filter(\r\n // 是在展示中的列,并且不是操作列,并且设置了最小宽度\r\n it => it.isShow === true && it.type !== 'edit' && it.prop !== 'edit' && ((it as any)['min-width'] || it.minWidth),\r\n );\r\n for (const item of minWidthCols) {\r\n // 只有一个minWidth时, 也需要设置width = ''\r\n if (column?.property === item.prop && minWidthCols.length !== 1) {\r\n continue;\r\n }\r\n item.width = '';\r\n }\r\n};\r\n/**\r\n * 搜索模块\r\n */\r\nconst sortValue = defineModel<TableProSortValue[]>('sortValue');\r\n\r\nconst handleSortChange = (sort: Sort) => {\r\n if (sortValue.value) {\r\n sortValue.value.length = 0;\r\n switch (sort.order) {\r\n case 'ascending':\r\n sortValue.value.push({ field: sort.prop, order: 'asc' });\r\n break;\r\n case 'descending':\r\n sortValue.value.push({ field: sort.prop, order: 'desc' });\r\n break;\r\n }\r\n }\r\n\r\n emit('sort-change', sort);\r\n};\r\nconst exposeEvents = [\r\n 'clearSelection',\r\n 'getSelectionRows',\r\n 'toggleRowSelection',\r\n 'toggleAllSelection',\r\n 'toggleRowExpansion',\r\n 'setCurrentRow',\r\n 'setChecked',\r\n 'clearSort',\r\n 'clearFilter',\r\n 'doLayout',\r\n 'sort',\r\n 'scrollTo',\r\n 'setScrollTop',\r\n 'setScrollLeft',\r\n] as const;\r\nconst { exposeFns } = getGmExports(GmTbaleRef, exposeEvents);\r\ndefineExpose({\r\n colPropsList,\r\n ...exposeFns,\r\n});\r\n</script>\r\n\r\n<style lang=\"scss\" scoped>\r\n:deep(.gmTableNoBorder .el-table__body .el-table__cell) {\r\n border-right: none;\r\n}\r\n:deep(.gmTableNoBorder .el-table__inner-wrapper:before) {\r\n height: 0;\r\n}\r\n:deep(.gmTableNoBorder.el-table--border .el-table__inner-wrapper:after) {\r\n height: 0;\r\n}\r\n:deep(.gmTableNoBorder.el-table--border:after) {\r\n height: 0;\r\n}\r\n:deep(.gmTableNoBorder.el-table--border:before) {\r\n height: 0;\r\n}\r\n:deep(.gmTableNoBorder .el-table__border-left-patch) {\r\n height: 0;\r\n}\r\n</style>\r\n"],"names":["inject","TableCtxKey","ref","useElementBounding","useWindowSize","computed","tableProEmits","getGmEvent","_useSlots","getVnodesByGmName","TableColumnProName","tableColumnProProps","hasOwn","operateButtonProps","nextTick","_useModel","getGmExports"],"mappings":"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"}
1
+ {"version":3,"file":"TablePro.vue2.js","sources":["../../../../../../../packages/components/src/composite/tablePro/TablePro.vue"],"sourcesContent":["<template>\r\n <div ref=\"gmTableDivRef\">\r\n <gm-table\r\n v-if=\"gmTableHeaderRef?.isInited\"\r\n ref=\"GmTbaleRef\"\r\n v-bind=\"props\"\r\n :height=\"autoHeight ? tableMaxHeight : height\"\r\n border\r\n class=\"gmTablePro\"\r\n :class=\"[props.border ? '' : 'gmTableNoBorder']\"\r\n v-on=\"elEvents\"\r\n @selection-change=\"(value: TableColumnProProps[]) => $emit('selection-change', value)\"\r\n @sort-change=\"handleSortChange\"\r\n @header-dragend=\"headerDragend\"\r\n >\r\n <!-- <template #empty>\r\n <gm-empty image=\"https://thirdorder.giikin.com/third/20240601/3c5850781351121f81b9e21ec7e75a204898949.png\" />\r\n </template> -->\r\n <template v-if=\"slots.append\" #append>\r\n <slot name=\"append\" />\r\n </template>\r\n <template v-if=\"slots.empty\" #empty>\r\n <slot name=\"empty\" />\r\n </template>\r\n <template v-if=\"props.selection\">\r\n <gm-table-column :key=\"999999\" type=\"selection\" width=\"55\" />\r\n </template>\r\n <TableColumnVNodeRenderer :vnode=\"tableColumnVnode\" :propsList=\"colPropsList\" />\r\n <!-- 操作 -->\r\n <gm-table-column\r\n v-if=\"customHeader || customOperate\"\r\n prop=\"gmEdit\"\r\n min-width=\"100\"\r\n :width=\"editProps?.width\"\r\n :fixed=\"operateFixed ? 'right' : false\"\r\n >\r\n <template #header>\r\n <div class=\"gm-text-center\">\r\n <gm-button v-if=\"customHeader\" type=\"primary\" link size=\"small\" @click=\"setTable('header')\"> 表头 </gm-button>\r\n <gm-button v-if=\"customOperate\" type=\"primary\" link size=\"small\" @click=\"setTable('operate')\"> 操作 </gm-button>\r\n </div>\r\n </template>\r\n <template #default=\"slotValue\">\r\n <!-- <div\r\n v-if=\"\r\n tableOperateVnode &&\r\n tableOperateVnode.children &&\r\n gmCustomOperationsRef &&\r\n gmCustomOperationsRef.isInited &&\r\n slotValue &&\r\n slotValue.row &&\r\n tableOperateVnode.children?.default(slotValue) &&\r\n customBtnPropsList\r\n \"\r\n >\r\n <TableProEditSlot\r\n v-model:customBtnPropsList=\"customBtnPropsList\"\r\n v-model:customDefaultPropsList=\"customDefaultPropsList\"\r\n :tableOperateVnode=\"tableOperateVnode\"\r\n :isInited=\"gmCustomOperationsRef?.isInited\"\r\n :slotValue=\"slotValue\"\r\n />\r\n </div> -->\r\n <div\r\n v-if=\"\r\n tableOperateVnode &&\r\n tableOperateVnode.children &&\r\n gmCustomOperationsRef &&\r\n gmCustomOperationsRef.isInited &&\r\n slotValue &&\r\n slotValue.row &&\r\n tableOperateVnode.children?.default(slotValue) &&\r\n customBtnPropsList\r\n \"\r\n class=\"gm-flex gm-flex-wrap gm-justify-center\"\r\n >\r\n <TableOperateVNodeRenderer :vnode=\"tableOperateVnode.children?.default(slotValue)\" :customPropsList=\"customBtnPropsList\" />\r\n </div>\r\n </template>\r\n </gm-table-column>\r\n </gm-table>\r\n </div>\r\n\r\n <gm-table-header-form\r\n ref=\"gmTableHeaderRef\"\r\n v-model:isShowDrawer=\"drawerHeaderVisible\"\r\n v-model:colPropsList=\"colPropsList\"\r\n :colDefaultPropsList=\"colDefaultPropsList\"\r\n :keyWord=\"props.page\"\r\n :disabledRemoteCol=\"props.disabledRemoteCol\"\r\n type=\"HeaderList\"\r\n @updateColumns=\"resetWidthOnHeaderDrag()\"\r\n />\r\n\r\n <gm-operate-button-form\r\n ref=\"gmCustomOperationsRef\"\r\n v-model:isShowDrawer=\"drawerOperateVisible\"\r\n v-model:customBtnPropsList=\"customBtnPropsList\"\r\n :customDefaultPropsList=\"customDefaultPropsList\"\r\n :keyWord=\"props.page\"\r\n :disabledRemoteBtn=\"props.disabledRemoteBtn\"\r\n type=\"OperateList\"\r\n />\r\n</template>\r\n\r\n<script setup lang=\"ts\">\r\nimport { computed, inject, nextTick, ref } from 'vue';\r\nimport { hasOwn } from '@giime/utils/src/objects';\r\nimport { getGmExports } from '@giime/utils/src/elementPlus/exports';\r\nimport { getGmEvent } from '@giime/utils/src/elementPlus/event';\r\nimport { TableCtxKey } from '@giime/constants/table';\r\nimport { useElementBounding, useWindowSize } from '@vueuse/core';\r\nimport { operateButtonProps } from '../operateButton/operateButton';\r\n// import TableProEditSlot from './TableProEditSlot.vue';\r\n// import { cloneDeep } from 'lodash-es';\r\nimport TableOperateVNodeRenderer from './TableOperateVNodeRenderer';\r\nimport TableColumnVNodeRenderer from './TableColumnVNodeRenderer';\r\nimport { tableProEmits, tableProProps } from './tablePro';\r\nimport { getVnodesByGmName } from './tableHelper';\r\nimport { TableColumnProName, type TableColumnProProps, tableColumnProProps } from './tableColumnPro/tableColumnPro';\r\nimport type { TableProSortValue } from './tablePro';\r\nimport type { OperateButtonFormInstance } from '../operateButton/operateButtonForm';\r\nimport type { TableHeaderFormInstance } from './tableHeaderForm';\r\nimport type { OperateButtonProps } from '../operateButton/operateButton';\r\nimport type { Sort, TableInstance } from 'element-plus';\r\n\r\ndefineOptions({\r\n name: 'GmTablePro',\r\n});\r\nconst tableCtx = inject(TableCtxKey);\r\nconst props = defineProps(tableProProps);\r\n\r\nconst gmTableDivRef = ref<HTMLDivElement>();\r\n// 用于计算table高度\r\nconst { top: divTop } = useElementBounding(gmTableDivRef);\r\nconst { height: windowHeight } = useWindowSize();\r\nconst tableMaxHeight = computed(() => Math.floor(windowHeight.value - divTop.value - 60 - props.heightOffset)); // 高度 - 顶部距离 - 分页器116 - 用户自定义需要减去的高度\r\nconst GmTbaleRef = ref<TableInstance>();\r\nif (tableCtx && tableCtx.tableId === props.page) {\r\n tableCtx.tableRef = GmTbaleRef;\r\n}\r\nconst gmCustomOperationsRef = ref<OperateButtonFormInstance>();\r\nconst gmTableHeaderRef = ref<TableHeaderFormInstance>();\r\n\r\nconst emit = defineEmits(tableProEmits);\r\n// 需要手动重新实现的事件\r\nconst notResendEvents = ['sort-change', 'header-dragend', 'selection-change'];\r\nconst resendEvent = { ...tableProEmits };\r\nnotResendEvents.forEach(it => Reflect.deleteProperty(resendEvent, it));\r\n// 重发el的事件\r\nconst elEvents = getGmEvent(resendEvent, emit);\r\nconst slots = defineSlots<{\r\n default(data?: any): any[];\r\n append?(data?: any): any[];\r\n empty?(data?: any): any[];\r\n}>();\r\n// 列 当前原始vnode\r\nconst tableColumnVnode = computed(() => {\r\n const vNodes = slots.default?.() || [];\r\n // const nodes = vNodes.filter(vNode => vNode.props && vNode.props.type !== 'edit');\r\n return vNodes;\r\n});\r\n// 默认表头Props列表\r\nconst colDefaultPropsList = computed(() => {\r\n const vNodes = slots.default?.() || [];\r\n const children = getVnodesByGmName(vNodes, TableColumnProName);\r\n // const result = children.filter(vNode => vNode.props && vNode.props.type !== 'edit');\r\n\r\n const colProps: TableColumnProProps[] = children.map((vNode: { props: any }) => vNode.props) ?? [];\r\n // 循环插入props所需的默认值\r\n colProps.forEach(it => {\r\n for (const key in tableColumnProProps) {\r\n // 如果当前props含有默认值\r\n if (hasOwn(it, key)) {\r\n continue;\r\n }\r\n if (hasOwn(tableColumnProProps, key)) {\r\n const element = tableColumnProProps[key as keyof TableColumnProProps];\r\n // 如果btn 定义中含有默认值 则赋值给props\r\n if (hasOwn(element, 'default')) {\r\n Reflect.set(it, key, Reflect.get(element, 'default'));\r\n }\r\n }\r\n }\r\n });\r\n return colProps;\r\n});\r\n// 已选中表头\r\nconst colPropsList = ref<TableColumnProProps[]>(colDefaultPropsList.value);\r\nconst editProps = computed(() => colPropsList.value.find(it => it.type === 'edit'));\r\n\r\n// 操作按钮组 当前原始vnode\r\nconst tableOperateVnode = computed(() => {\r\n const vNodes = slots.default?.() || [];\r\n const nodes = vNodes.find(vNode => vNode.props && vNode.props.type === 'edit');\r\n return nodes;\r\n});\r\n\r\nconst customDefaultPropsList = computed(() => {\r\n const defaultVnodes = tableOperateVnode.value?.children?.default?.({ row: {} });\r\n if (Array.isArray(defaultVnodes) && defaultVnodes.some(it => it?.children === 'v-if')) {\r\n console.error(`警告:为确保表格操作按钮能正常渲染,请把表格${props.page}操作按钮中使用的\"v-if\"替换为\"v-see\"`);\r\n }\r\n const children = getVnodesByGmName(defaultVnodes, 'GmOperateButton');\r\n const btnProps: OperateButtonProps[] = children.map((vNode: { props: any }) => vNode.props) ?? [];\r\n // console.log(btnProps);\r\n // 循环插入props所需的默认值\r\n btnProps.forEach(it => {\r\n for (const key in operateButtonProps) {\r\n // 如果当前props含有默认值\r\n if (hasOwn(it, key)) {\r\n continue;\r\n }\r\n if (hasOwn(operateButtonProps, key)) {\r\n const element = operateButtonProps[key as keyof OperateButtonProps];\r\n // 如果btn 定义中含有默认值 则赋值给props\r\n if (hasOwn(element, 'default')) {\r\n Reflect.set(it, key, Reflect.get(element, 'default'));\r\n }\r\n }\r\n }\r\n });\r\n // console.log(btnProps)\r\n return btnProps;\r\n});\r\n// customDefaultPropsList2();\r\n// const customDefaultPropsList = ref<OperateButtonProps[]>([]);\r\nconst customBtnPropsList = ref<OperateButtonProps[]>(customDefaultPropsList.value);\r\n\r\n// 表格头部弹层\r\nconst drawerHeaderVisible = ref(false); // 表头设置弹层\r\nconst drawerOperateVisible = ref(false); // 按钮设置弹层\r\nconst setTable = (event: string) => {\r\n if (event === 'header') {\r\n drawerHeaderVisible.value = true;\r\n }\r\n if (event === 'operate') {\r\n drawerOperateVisible.value = true;\r\n }\r\n};\r\n\r\n/**\r\n * 表头拖动,修改width\r\n */\r\nconst headerDragend = async (newWidth: number, oldWidth: number, column: any) => {\r\n const findItem = colPropsList.value.find(it => it.prop === column.property);\r\n const editItem = column.property === 'gmEdit' ? colPropsList.value.find(it => it.type === 'edit') : null;\r\n if (!findItem && !editItem) {\r\n return;\r\n }\r\n if (findItem) {\r\n findItem.width = newWidth;\r\n }\r\n if (editItem) {\r\n editItem.width = newWidth;\r\n }\r\n // 设置列宽\r\n await nextTick();\r\n resetWidthOnHeaderDrag(column);\r\n gmTableHeaderRef.value?.syncPropsList();\r\n gmTableHeaderRef.value?.submitSettings({ hiddenMessage: true });\r\n};\r\n/**\r\n * 当表头拖动后,重新计算补充列宽度\r\n * 当全部列都设置了宽度,把设置过minWidth的列设置为补充列,补充表格剩余宽度\r\n */\r\nconst resetWidthOnHeaderDrag = (column?: any) => {\r\n if (props.disabledResetWidth) {\r\n return;\r\n }\r\n // 当全部列都设置了宽度 才执行后续步骤\r\n if (colPropsList.value.some(it => it.isShow && !it.width)) {\r\n return;\r\n }\r\n const minWidthCols = colPropsList.value.filter(\r\n // 是在展示中的列,并且不是操作列,并且设置了最小宽度\r\n it => it.isShow === true && it.type !== 'edit' && it.prop !== 'edit' && ((it as any)['min-width'] || it.minWidth),\r\n );\r\n for (const item of minWidthCols) {\r\n // 只有一个minWidth时, 也需要设置width = ''\r\n if (column?.property === item.prop && minWidthCols.length !== 1) {\r\n continue;\r\n }\r\n item.width = '';\r\n }\r\n};\r\n/**\r\n * 搜索模块\r\n */\r\nconst sortValue = defineModel<TableProSortValue[]>('sortValue');\r\n\r\nconst handleSortChange = (sort: Sort) => {\r\n if (sortValue.value) {\r\n sortValue.value.length = 0;\r\n switch (sort.order) {\r\n case 'ascending':\r\n sortValue.value.push({ field: sort.prop, order: 'asc' });\r\n break;\r\n case 'descending':\r\n sortValue.value.push({ field: sort.prop, order: 'desc' });\r\n break;\r\n }\r\n }\r\n\r\n emit('sort-change', sort);\r\n};\r\nconst exposeEvents = [\r\n 'clearSelection',\r\n 'getSelectionRows',\r\n 'toggleRowSelection',\r\n 'toggleAllSelection',\r\n 'toggleRowExpansion',\r\n 'setCurrentRow',\r\n 'setChecked',\r\n 'clearSort',\r\n 'clearFilter',\r\n 'doLayout',\r\n 'sort',\r\n 'scrollTo',\r\n 'setScrollTop',\r\n 'setScrollLeft',\r\n] as const;\r\nconst { exposeFns } = getGmExports(GmTbaleRef, exposeEvents);\r\ndefineExpose({\r\n colPropsList,\r\n ...exposeFns,\r\n});\r\n</script>\r\n\r\n<style lang=\"scss\" scoped>\r\n:deep(.gmTableNoBorder .el-table__body .el-table__cell) {\r\n border-right: none;\r\n}\r\n:deep(.gmTableNoBorder .el-table__inner-wrapper:before) {\r\n height: 0;\r\n}\r\n:deep(.gmTableNoBorder.el-table--border .el-table__inner-wrapper:after) {\r\n height: 0;\r\n}\r\n:deep(.gmTableNoBorder.el-table--border:after) {\r\n height: 0;\r\n}\r\n:deep(.gmTableNoBorder.el-table--border:before) {\r\n height: 0;\r\n}\r\n:deep(.gmTableNoBorder .el-table__border-left-patch) {\r\n height: 0;\r\n}\r\n</style>\r\n"],"names":["inject","TableCtxKey","ref","useElementBounding","useWindowSize","computed","tableProEmits","getGmEvent","_useSlots","getVnodesByGmName","TableColumnProName","tableColumnProProps","hasOwn","operateButtonProps","nextTick","_useModel","getGmExports"],"mappings":"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"}
@@ -49,6 +49,14 @@ export declare const GmTablePro: import("../../../../utils").SFCWithInstall<{
49
49
  type: BooleanConstructor;
50
50
  default: boolean;
51
51
  };
52
+ disabledRemoteCol: {
53
+ type: BooleanConstructor;
54
+ default: boolean;
55
+ };
56
+ disabledRemoteBtn: {
57
+ type: BooleanConstructor;
58
+ default: boolean;
59
+ };
52
60
  tableId: {
53
61
  type: StringConstructor;
54
62
  };
@@ -397,6 +405,14 @@ export declare const GmTablePro: import("../../../../utils").SFCWithInstall<{
397
405
  type: BooleanConstructor;
398
406
  default: boolean;
399
407
  };
408
+ disabledRemoteCol: {
409
+ type: BooleanConstructor;
410
+ default: boolean;
411
+ };
412
+ disabledRemoteBtn: {
413
+ type: BooleanConstructor;
414
+ default: boolean;
415
+ };
400
416
  tableId: {
401
417
  type: StringConstructor;
402
418
  };
@@ -523,6 +539,7 @@ export declare const GmTablePro: import("../../../../utils").SFCWithInstall<{
523
539
  treeProps: import("element-plus/es/components/table/src/table/defaults.js").TreeProps | undefined;
524
540
  flexible: boolean;
525
541
  selection: boolean;
542
+ disabledRemoteCol: boolean;
526
543
  customHeader: boolean;
527
544
  customOperate: boolean;
528
545
  operateWidth: number;
@@ -530,6 +547,7 @@ export declare const GmTablePro: import("../../../../utils").SFCWithInstall<{
530
547
  autoHeight: boolean;
531
548
  heightOffset: number;
532
549
  disabledResetWidth: boolean;
550
+ disabledRemoteBtn: boolean;
533
551
  }, true, {}, {}, {
534
552
  P: {};
535
553
  B: {};
@@ -586,6 +604,14 @@ export declare const GmTablePro: import("../../../../utils").SFCWithInstall<{
586
604
  type: BooleanConstructor;
587
605
  default: boolean;
588
606
  };
607
+ disabledRemoteCol: {
608
+ type: BooleanConstructor;
609
+ default: boolean;
610
+ };
611
+ disabledRemoteBtn: {
612
+ type: BooleanConstructor;
613
+ default: boolean;
614
+ };
589
615
  tableId: {
590
616
  type: StringConstructor;
591
617
  };
@@ -885,6 +911,7 @@ export declare const GmTablePro: import("../../../../utils").SFCWithInstall<{
885
911
  treeProps: import("element-plus/es/components/table/src/table/defaults.js").TreeProps | undefined;
886
912
  flexible: boolean;
887
913
  selection: boolean;
914
+ disabledRemoteCol: boolean;
888
915
  customHeader: boolean;
889
916
  customOperate: boolean;
890
917
  operateWidth: number;
@@ -892,6 +919,7 @@ export declare const GmTablePro: import("../../../../utils").SFCWithInstall<{
892
919
  autoHeight: boolean;
893
920
  heightOffset: number;
894
921
  disabledResetWidth: boolean;
922
+ disabledRemoteBtn: boolean;
895
923
  }>;
896
924
  __isFragment?: undefined;
897
925
  __isTeleport?: undefined;
@@ -945,6 +973,14 @@ export declare const GmTablePro: import("../../../../utils").SFCWithInstall<{
945
973
  type: BooleanConstructor;
946
974
  default: boolean;
947
975
  };
976
+ disabledRemoteCol: {
977
+ type: BooleanConstructor;
978
+ default: boolean;
979
+ };
980
+ disabledRemoteBtn: {
981
+ type: BooleanConstructor;
982
+ default: boolean;
983
+ };
948
984
  tableId: {
949
985
  type: StringConstructor;
950
986
  };
@@ -1264,6 +1300,7 @@ export declare const GmTablePro: import("../../../../utils").SFCWithInstall<{
1264
1300
  treeProps: import("element-plus/es/components/table/src/table/defaults.js").TreeProps | undefined;
1265
1301
  flexible: boolean;
1266
1302
  selection: boolean;
1303
+ disabledRemoteCol: boolean;
1267
1304
  customHeader: boolean;
1268
1305
  customOperate: boolean;
1269
1306
  operateWidth: number;
@@ -1271,6 +1308,7 @@ export declare const GmTablePro: import("../../../../utils").SFCWithInstall<{
1271
1308
  autoHeight: boolean;
1272
1309
  heightOffset: number;
1273
1310
  disabledResetWidth: boolean;
1311
+ disabledRemoteBtn: boolean;
1274
1312
  }, {}, string, {}> & import("vue").VNodeProps & import("vue").AllowedComponentProps & import("vue").ComponentCustomProps & (new () => {
1275
1313
  $slots: Readonly<{
1276
1314
  default(data?: any): any[];
@@ -20,6 +20,10 @@ declare const _default: import("vue").DefineComponent<{
20
20
  type: import("vue").PropType<TableColumnProProps[]>;
21
21
  default: () => never[];
22
22
  };
23
+ disabledRemoteCol: {
24
+ type: BooleanConstructor;
25
+ default: boolean;
26
+ };
23
27
  }, {
24
28
  isInited: import("vue").Ref<boolean>;
25
29
  submitSettings: (options?: {
@@ -51,11 +55,16 @@ declare const _default: import("vue").DefineComponent<{
51
55
  type: import("vue").PropType<TableColumnProProps[]>;
52
56
  default: () => never[];
53
57
  };
58
+ disabledRemoteCol: {
59
+ type: BooleanConstructor;
60
+ default: boolean;
61
+ };
54
62
  }>> & {
55
63
  "onUpdate:isShowDrawer"?: ((isShowDrawer: boolean) => any) | undefined;
56
64
  "onUpdate:colPropsList"?: ((colPropsList: TableColumnProProps[]) => any) | undefined;
57
65
  onUpdateColumns?: (() => any) | undefined;
58
66
  }, {
59
67
  colDefaultPropsList: TableColumnProProps[];
68
+ disabledRemoteCol: boolean;
60
69
  }, {}>;
61
70
  export default _default;
@@ -139,7 +139,11 @@ var _sfc_main = /* @__PURE__ */ vue.defineComponent({
139
139
  }
140
140
  };
141
141
  vue.onMounted(() => {
142
- initColumns();
142
+ if (props.disabledRemoteCol) {
143
+ isInited.value = true;
144
+ } else {
145
+ initColumns();
146
+ }
143
147
  });
144
148
  __expose({
145
149
  isInited,
@@ -163,62 +167,7 @@ var _sfc_main = /* @__PURE__ */ vue.defineComponent({
163
167
  size: "600px",
164
168
  "append-to-body": "",
165
169
  "destroy-on-close": ""
166
- }, {
167
- footer: vue.withCtx(() => [
168
- vue.createElementVNode("div", _hoisted_6, [
169
- vue.createElementVNode("div", null, [
170
- vue.createVNode(_component_gm_button, {
171
- loading: submitLoading.value,
172
- type: "primary",
173
- size: "default",
174
- onClick: onReset
175
- }, {
176
- default: vue.withCtx(() => [
177
- vue.createTextVNode("\u91CD\u7F6E")
178
- ]),
179
- _: 1
180
- /* STABLE */
181
- }, 8, ["loading"]),
182
- vue.createVNode(_component_gm_button, {
183
- loading: submitLoading.value,
184
- type: "success",
185
- size: "default",
186
- onClick: onSyncRemote
187
- }, {
188
- default: vue.withCtx(() => [
189
- vue.createTextVNode("\u540C\u6B65")
190
- ]),
191
- _: 1
192
- /* STABLE */
193
- }, 8, ["loading"])
194
- ]),
195
- vue.createElementVNode("div", null, [
196
- vue.createVNode(_component_gm_button, {
197
- loading: submitLoading.value,
198
- size: "default",
199
- onClick: _cache[0] || (_cache[0] = ($event) => isShowDrawer.value = false)
200
- }, {
201
- default: vue.withCtx(() => [
202
- vue.createTextVNode("\u53D6\u6D88")
203
- ]),
204
- _: 1
205
- /* STABLE */
206
- }, 8, ["loading"]),
207
- vue.createVNode(_component_gm_button, {
208
- loading: submitLoading.value,
209
- type: "primary",
210
- size: "default",
211
- onClick: _cache[1] || (_cache[1] = ($event) => submitSettings())
212
- }, {
213
- default: vue.withCtx(() => [
214
- vue.createTextVNode("\u4FDD\u5B58")
215
- ]),
216
- _: 1
217
- /* STABLE */
218
- }, 8, ["loading"])
219
- ])
220
- ])
221
- ]),
170
+ }, vue.createSlots({
222
171
  default: vue.withCtx(() => [
223
172
  vue.createElementVNode("section", _hoisted_1, [
224
173
  vue.createElementVNode("div", _hoisted_2, [
@@ -363,9 +312,69 @@ var _sfc_main = /* @__PURE__ */ vue.defineComponent({
363
312
  /* STABLE */
364
313
  }, 8, ["data"])
365
314
  ]),
366
- _: 1
367
- /* STABLE */
368
- }, 8, ["modelValue"]);
315
+ _: 2
316
+ /* DYNAMIC */
317
+ }, [
318
+ !_ctx.disabledRemoteCol ? {
319
+ name: "footer",
320
+ fn: vue.withCtx(() => [
321
+ vue.createElementVNode("div", _hoisted_6, [
322
+ vue.createElementVNode("div", null, [
323
+ vue.createVNode(_component_gm_button, {
324
+ loading: submitLoading.value,
325
+ type: "primary",
326
+ size: "default",
327
+ onClick: onReset
328
+ }, {
329
+ default: vue.withCtx(() => [
330
+ vue.createTextVNode("\u91CD\u7F6E")
331
+ ]),
332
+ _: 1
333
+ /* STABLE */
334
+ }, 8, ["loading"]),
335
+ vue.createVNode(_component_gm_button, {
336
+ loading: submitLoading.value,
337
+ type: "success",
338
+ size: "default",
339
+ onClick: onSyncRemote
340
+ }, {
341
+ default: vue.withCtx(() => [
342
+ vue.createTextVNode("\u540C\u6B65")
343
+ ]),
344
+ _: 1
345
+ /* STABLE */
346
+ }, 8, ["loading"])
347
+ ]),
348
+ vue.createElementVNode("div", null, [
349
+ vue.createVNode(_component_gm_button, {
350
+ loading: submitLoading.value,
351
+ size: "default",
352
+ onClick: _cache[0] || (_cache[0] = ($event) => isShowDrawer.value = false)
353
+ }, {
354
+ default: vue.withCtx(() => [
355
+ vue.createTextVNode("\u53D6\u6D88")
356
+ ]),
357
+ _: 1
358
+ /* STABLE */
359
+ }, 8, ["loading"]),
360
+ vue.createVNode(_component_gm_button, {
361
+ loading: submitLoading.value,
362
+ type: "primary",
363
+ size: "default",
364
+ onClick: _cache[1] || (_cache[1] = ($event) => submitSettings())
365
+ }, {
366
+ default: vue.withCtx(() => [
367
+ vue.createTextVNode("\u4FDD\u5B58")
368
+ ]),
369
+ _: 1
370
+ /* STABLE */
371
+ }, 8, ["loading"])
372
+ ])
373
+ ])
374
+ ]),
375
+ key: "0"
376
+ } : void 0
377
+ ]), 1032, ["modelValue"]);
369
378
  };
370
379
  }
371
380
  });