giime 0.6.27 → 0.6.29

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 (127) hide show
  1. package/dist/index.css +204 -0
  2. package/es/components/index.mjs +5 -0
  3. package/es/components/index.mjs.map +1 -1
  4. package/es/components/src/composite/index.d.ts +1 -0
  5. package/es/components/src/composite/index.mjs +5 -0
  6. package/es/components/src/composite/index.mjs.map +1 -1
  7. package/es/components/src/composite/tableCustom/TableCustom.vue.d.ts +556 -0
  8. package/es/components/src/composite/tableCustom/TableCustom.vue.mjs +8 -0
  9. package/es/components/src/composite/tableCustom/TableCustom.vue.mjs.map +1 -0
  10. package/es/components/src/composite/tableCustom/TableCustom.vue2.mjs +331 -0
  11. package/es/components/src/composite/tableCustom/TableCustom.vue2.mjs.map +1 -0
  12. package/es/components/src/composite/tableCustom/TableCustom.vue3.mjs +4 -0
  13. package/es/components/src/composite/tableCustom/TableCustom.vue3.mjs.map +1 -0
  14. package/es/components/src/composite/tableCustom/customOperate/CustomOperate.vue.d.ts +64 -0
  15. package/es/components/src/composite/tableCustom/customOperate/CustomOperate.vue.mjs +7 -0
  16. package/es/components/src/composite/tableCustom/customOperate/CustomOperate.vue.mjs.map +1 -0
  17. package/es/components/src/composite/tableCustom/customOperate/CustomOperate.vue2.mjs +469 -0
  18. package/es/components/src/composite/tableCustom/customOperate/CustomOperate.vue2.mjs.map +1 -0
  19. package/es/components/src/composite/tableCustom/customOperate/CustomOperate.vue3.mjs +4 -0
  20. package/es/components/src/composite/tableCustom/customOperate/CustomOperate.vue3.mjs.map +1 -0
  21. package/es/components/src/composite/tableCustom/customOperate/customOperate.d.ts +42 -0
  22. package/es/components/src/composite/tableCustom/customOperate/customOperate.mjs +13 -0
  23. package/es/components/src/composite/tableCustom/customOperate/customOperate.mjs.map +1 -0
  24. package/es/components/src/composite/tableCustom/customOperate/index.d.ts +66 -0
  25. package/es/components/src/composite/tableCustom/customOperate/index.mjs +10 -0
  26. package/es/components/src/composite/tableCustom/customOperate/index.mjs.map +1 -0
  27. package/es/components/src/composite/tableCustom/index.d.ts +1347 -0
  28. package/es/components/src/composite/tableCustom/index.mjs +12 -0
  29. package/es/components/src/composite/tableCustom/index.mjs.map +1 -0
  30. package/es/components/src/composite/tableCustom/tableCustom.d.ts +170 -0
  31. package/es/components/src/composite/tableCustom/tableCustom.mjs +16 -0
  32. package/es/components/src/composite/tableCustom/tableCustom.mjs.map +1 -0
  33. package/es/components/src/composite/tableCustom/tableCustomHeader/TableCustomHeader.vue.d.ts +79 -0
  34. package/es/components/src/composite/tableCustom/tableCustomHeader/TableCustomHeader.vue.mjs +7 -0
  35. package/es/components/src/composite/tableCustom/tableCustomHeader/TableCustomHeader.vue.mjs.map +1 -0
  36. package/es/components/src/composite/tableCustom/tableCustomHeader/TableCustomHeader.vue2.mjs +553 -0
  37. package/es/components/src/composite/tableCustom/tableCustomHeader/TableCustomHeader.vue2.mjs.map +1 -0
  38. package/es/components/src/composite/tableCustom/tableCustomHeader/TableCustomHeader.vue3.mjs +4 -0
  39. package/es/components/src/composite/tableCustom/tableCustomHeader/TableCustomHeader.vue3.mjs.map +1 -0
  40. package/es/components/src/composite/tableCustom/tableCustomHeader/index.d.ts +81 -0
  41. package/es/components/src/composite/tableCustom/tableCustomHeader/index.mjs +10 -0
  42. package/es/components/src/composite/tableCustom/tableCustomHeader/index.mjs.map +1 -0
  43. package/es/components/src/composite/tableCustom/tableCustomHeader/tableCustomHeader.d.ts +30 -0
  44. package/es/components/src/composite/tableCustom/tableCustomHeader/tableCustomHeader.mjs +32 -0
  45. package/es/components/src/composite/tableCustom/tableCustomHeader/tableCustomHeader.mjs.map +1 -0
  46. package/es/giime/component.mjs +7 -0
  47. package/es/giime/component.mjs.map +1 -1
  48. package/es/giime/index.mjs +6 -0
  49. package/es/giime/index.mjs.map +1 -1
  50. package/es/giime/version.d.ts +1 -1
  51. package/es/giime/version.mjs +1 -1
  52. package/es/giime/version.mjs.map +1 -1
  53. package/es/hooks/base/index.d.ts +1 -0
  54. package/es/hooks/base/index.mjs +1 -0
  55. package/es/hooks/base/index.mjs.map +1 -1
  56. package/es/hooks/base/useComputedFields/index.d.ts +4 -1
  57. package/es/hooks/base/useComputedFields/index.mjs.map +1 -1
  58. package/es/hooks/base/useElementRemainingHeight/index.d.ts +22 -0
  59. package/es/hooks/base/useElementRemainingHeight/index.mjs +16 -0
  60. package/es/hooks/base/useElementRemainingHeight/index.mjs.map +1 -0
  61. package/es/hooks/index.mjs +1 -0
  62. package/es/hooks/index.mjs.map +1 -1
  63. package/es/index.css +204 -0
  64. package/global.d.ts +3 -0
  65. package/lib/components/index.js +25 -14
  66. package/lib/components/index.js.map +1 -1
  67. package/lib/components/src/composite/index.d.ts +1 -0
  68. package/lib/components/src/composite/index.js +11 -0
  69. package/lib/components/src/composite/index.js.map +1 -1
  70. package/lib/components/src/composite/tableCustom/TableCustom.vue.d.ts +556 -0
  71. package/lib/components/src/composite/tableCustom/TableCustom.vue.js +12 -0
  72. package/lib/components/src/composite/tableCustom/TableCustom.vue.js.map +1 -0
  73. package/lib/components/src/composite/tableCustom/TableCustom.vue2.js +335 -0
  74. package/lib/components/src/composite/tableCustom/TableCustom.vue2.js.map +1 -0
  75. package/lib/components/src/composite/tableCustom/TableCustom.vue3.js +8 -0
  76. package/lib/components/src/composite/tableCustom/TableCustom.vue3.js.map +1 -0
  77. package/lib/components/src/composite/tableCustom/customOperate/CustomOperate.vue.d.ts +64 -0
  78. package/lib/components/src/composite/tableCustom/customOperate/CustomOperate.vue.js +11 -0
  79. package/lib/components/src/composite/tableCustom/customOperate/CustomOperate.vue.js.map +1 -0
  80. package/lib/components/src/composite/tableCustom/customOperate/CustomOperate.vue2.js +473 -0
  81. package/lib/components/src/composite/tableCustom/customOperate/CustomOperate.vue2.js.map +1 -0
  82. package/lib/components/src/composite/tableCustom/customOperate/CustomOperate.vue3.js +8 -0
  83. package/lib/components/src/composite/tableCustom/customOperate/CustomOperate.vue3.js.map +1 -0
  84. package/lib/components/src/composite/tableCustom/customOperate/customOperate.d.ts +42 -0
  85. package/lib/components/src/composite/tableCustom/customOperate/customOperate.js +16 -0
  86. package/lib/components/src/composite/tableCustom/customOperate/customOperate.js.map +1 -0
  87. package/lib/components/src/composite/tableCustom/customOperate/index.d.ts +66 -0
  88. package/lib/components/src/composite/tableCustom/customOperate/index.js +17 -0
  89. package/lib/components/src/composite/tableCustom/customOperate/index.js.map +1 -0
  90. package/lib/components/src/composite/tableCustom/index.d.ts +1347 -0
  91. package/lib/components/src/composite/tableCustom/index.js +22 -0
  92. package/lib/components/src/composite/tableCustom/index.js.map +1 -0
  93. package/lib/components/src/composite/tableCustom/tableCustom.d.ts +170 -0
  94. package/lib/components/src/composite/tableCustom/tableCustom.js +19 -0
  95. package/lib/components/src/composite/tableCustom/tableCustom.js.map +1 -0
  96. package/lib/components/src/composite/tableCustom/tableCustomHeader/TableCustomHeader.vue.d.ts +79 -0
  97. package/lib/components/src/composite/tableCustom/tableCustomHeader/TableCustomHeader.vue.js +11 -0
  98. package/lib/components/src/composite/tableCustom/tableCustomHeader/TableCustomHeader.vue.js.map +1 -0
  99. package/lib/components/src/composite/tableCustom/tableCustomHeader/TableCustomHeader.vue2.js +557 -0
  100. package/lib/components/src/composite/tableCustom/tableCustomHeader/TableCustomHeader.vue2.js.map +1 -0
  101. package/lib/components/src/composite/tableCustom/tableCustomHeader/TableCustomHeader.vue3.js +8 -0
  102. package/lib/components/src/composite/tableCustom/tableCustomHeader/TableCustomHeader.vue3.js.map +1 -0
  103. package/lib/components/src/composite/tableCustom/tableCustomHeader/index.d.ts +81 -0
  104. package/lib/components/src/composite/tableCustom/tableCustomHeader/index.js +16 -0
  105. package/lib/components/src/composite/tableCustom/tableCustomHeader/index.js.map +1 -0
  106. package/lib/components/src/composite/tableCustom/tableCustomHeader/tableCustomHeader.d.ts +30 -0
  107. package/lib/components/src/composite/tableCustom/tableCustomHeader/tableCustomHeader.js +34 -0
  108. package/lib/components/src/composite/tableCustom/tableCustomHeader/tableCustomHeader.js.map +1 -0
  109. package/lib/giime/component.js +15 -8
  110. package/lib/giime/component.js.map +1 -1
  111. package/lib/giime/index.js +81 -68
  112. package/lib/giime/index.js.map +1 -1
  113. package/lib/giime/version.d.ts +1 -1
  114. package/lib/giime/version.js +1 -1
  115. package/lib/giime/version.js.map +1 -1
  116. package/lib/hooks/base/index.d.ts +1 -0
  117. package/lib/hooks/base/index.js +2 -0
  118. package/lib/hooks/base/index.js.map +1 -1
  119. package/lib/hooks/base/useComputedFields/index.d.ts +4 -1
  120. package/lib/hooks/base/useComputedFields/index.js.map +1 -1
  121. package/lib/hooks/base/useElementRemainingHeight/index.d.ts +22 -0
  122. package/lib/hooks/base/useElementRemainingHeight/index.js +18 -0
  123. package/lib/hooks/base/useElementRemainingHeight/index.js.map +1 -0
  124. package/lib/hooks/index.js +38 -36
  125. package/lib/hooks/index.js.map +1 -1
  126. package/lib/index.css +204 -0
  127. package/package.json +1 -1
@@ -0,0 +1,473 @@
1
+ 'use strict';
2
+
3
+ Object.defineProperty(exports, '__esModule', { value: true });
4
+
5
+ var vue = require('vue');
6
+ require('../../../../../hooks/index.js');
7
+ var lodashEs = require('lodash-es');
8
+ var core = require('@vueuse/core');
9
+ var iconsVue = require('@element-plus/icons-vue');
10
+ var customOperate = require('./customOperate.js');
11
+ var index = require('../../../../../hooks/store/useCustomSettings/index.js');
12
+
13
+ const _hoisted_1 = { class: "gm-mb-4 gm-flex gm-items-center gm-gap-2 gm-rounded gm-border gm-border-cyan-300 gm-bg-cyan-50 gm-p-2 gm-text-sm gm-text-[#777]" };
14
+ const _hoisted_2 = { class: "gm-text-cyan-500" };
15
+ const _hoisted_3 = /* @__PURE__ */ vue.createElementVNode(
16
+ "div",
17
+ { class: "gm-font-bold gm-text-amber-400" },
18
+ "\u70B9\u51FB\u6309\u94AE\u53EF\u4FEE\u6539\u5F53\u524D\u6309\u94AE\u989C\u8272\uFF01",
19
+ -1
20
+ /* HOISTED */
21
+ );
22
+ const _hoisted_4 = { class: "custom-content gm-text-sm" };
23
+ const _hoisted_5 = { class: "gm-flex gm-w-14 gm-justify-center" };
24
+ const _hoisted_6 = /* @__PURE__ */ vue.createElementVNode(
25
+ "li",
26
+ { class: "gm-flex-1 gm-border-l gm-border-white" },
27
+ "\u5217\u540D",
28
+ -1
29
+ /* HOISTED */
30
+ );
31
+ const _hoisted_7 = /* @__PURE__ */ vue.createElementVNode(
32
+ "li",
33
+ { class: "gm-w-32 gm-border-l gm-border-white" },
34
+ "\u62D6\u5730\u8C03\u6574\u987A\u5E8F",
35
+ -1
36
+ /* HOISTED */
37
+ );
38
+ const _hoisted_8 = ["onDragstart", "onDragenter"];
39
+ const _hoisted_9 = { class: "gm-flex gm-w-14 gm-justify-center" };
40
+ const _hoisted_10 = { class: "gm-flex-1 gm-border-l gm-border-gray-200" };
41
+ const _hoisted_11 = { class: "p-1" };
42
+ const _hoisted_12 = /* @__PURE__ */ vue.createElementVNode(
43
+ "div",
44
+ { class: "text-[14px] gm-mb-2" },
45
+ "\u70B9\u51FB\u4E0B\u5217\u8272\u5757\u53EF\u4FEE\u6539\u6309\u94AE\u989C\u8272",
46
+ -1
47
+ /* HOISTED */
48
+ );
49
+ const _hoisted_13 = { class: "gm-w-32 gm-cursor-grabbing gm-border-l gm-border-gray-200" };
50
+ const _hoisted_14 = { class: "gm-flex gm-justify-between" };
51
+ var _sfc_main = /* @__PURE__ */ vue.defineComponent({
52
+ ...{
53
+ name: "GmCustomOperate"
54
+ },
55
+ __name: "CustomOperate",
56
+ props: /* @__PURE__ */ vue.mergeModels(customOperate.customOperateProps, {
57
+ "isShowDrawer": { type: Boolean, ...{
58
+ required: true
59
+ } },
60
+ "isShowDrawerModifiers": {},
61
+ "customBtnPropsList": {
62
+ required: true
63
+ },
64
+ "customBtnPropsListModifiers": {}
65
+ }),
66
+ emits: ["update:isShowDrawer", "update:customBtnPropsList"],
67
+ setup(__props, { expose: __expose }) {
68
+ const isShowDrawer = vue.useModel(__props, "isShowDrawer");
69
+ const customBtnPropsList = vue.useModel(__props, "customBtnPropsList");
70
+ const props = __props;
71
+ const customSettingsStore = index.useCustomSettingsStore();
72
+ const isInited = vue.ref(false);
73
+ const { cloned: clonedCustomBtnList } = core.useCloned(customBtnPropsList);
74
+ const defaultPropsList = vue.computed(() => lodashEs.cloneDeep(props.customDefaultPropsList));
75
+ const popoverVisibles = vue.ref(defaultPropsList.value.map(() => false));
76
+ vue.watch(defaultPropsList, () => {
77
+ popoverVisibles.value = defaultPropsList.value.map(() => false);
78
+ });
79
+ vue.watch(isShowDrawer, (newValue) => {
80
+ if (newValue) {
81
+ clonedCustomBtnList.value = lodashEs.cloneDeep(customBtnPropsList.value);
82
+ }
83
+ });
84
+ const customSettingsValue = vue.computed(() => customSettingsStore.customSettings[props.keyWord]?.[props.type] || []);
85
+ const { cloned: clonedStore } = core.useCloned(customSettingsValue);
86
+ const updateOperate = () => {
87
+ customBtnPropsList.value = clonedCustomBtnList.value;
88
+ };
89
+ const initOperate = async () => {
90
+ try {
91
+ await customSettingsStore.getCustomSettings({ key_word: props.keyWord, type: props.type }, { defaultValue: [] });
92
+ } catch {
93
+ }
94
+ const clonedDefaultOperate = lodashEs.cloneDeep(props.customDefaultPropsList);
95
+ let operate = clonedDefaultOperate;
96
+ if (clonedStore.value.length) {
97
+ operate = [];
98
+ clonedStore.value.forEach((it) => {
99
+ const index = clonedDefaultOperate.findIndex((v) => v.prop === it.prop);
100
+ if (index > -1) {
101
+ const item = clonedDefaultOperate.splice(index, 1)[0];
102
+ operate.push({
103
+ ...item,
104
+ ...it,
105
+ label: item.label
106
+ });
107
+ }
108
+ });
109
+ clonedCustomBtnList.value = [...operate, ...clonedDefaultOperate];
110
+ }
111
+ updateOperate();
112
+ isInited.value = true;
113
+ };
114
+ const titleStyle = vue.computed(() => {
115
+ const h = props.customDefaultPropsList.length * 44;
116
+ const H = document.documentElement.clientHeight || document.body.clientHeight;
117
+ return h > H - 240 ? { paddingRight: "4px" } : { paddingRight: 0 };
118
+ });
119
+ const checkedNumber = vue.computed(() => {
120
+ return clonedCustomBtnList.value.filter((v) => v.isShow).length;
121
+ });
122
+ const checkedAll = vue.computed({
123
+ get() {
124
+ return clonedCustomBtnList.value.every((v) => v.isShow);
125
+ },
126
+ set(value) {
127
+ clonedCustomBtnList.value.forEach((v) => {
128
+ v.isShow = Boolean(value);
129
+ });
130
+ }
131
+ });
132
+ const isIndeterminate = vue.computed(() => !checkedAll.value && clonedCustomBtnList.value.some((v) => v.isShow));
133
+ const handleCheckAllChange = (val) => {
134
+ clonedCustomBtnList.value.forEach((v) => {
135
+ v.isShow = Boolean(val);
136
+ });
137
+ };
138
+ const setBtnType = (item, index, type) => {
139
+ item.type = type;
140
+ popoverVisibles.value[index] = false;
141
+ };
142
+ const start = vue.ref();
143
+ const end = vue.ref();
144
+ const dragstart = (item) => {
145
+ document.body.style.userSelect = "none";
146
+ start.value = item;
147
+ };
148
+ const dragenter = (item, e) => {
149
+ end.value = item;
150
+ e.preventDefault();
151
+ };
152
+ const dragend = () => {
153
+ document.body.style.userSelect = "text";
154
+ if (start.value === end.value)
155
+ return;
156
+ if (start.value && end.value) {
157
+ const oldIndex = clonedCustomBtnList.value.findIndex((v) => v.prop === start.value?.prop);
158
+ const newIndex = clonedCustomBtnList.value.findIndex((v) => v.prop === end.value?.prop);
159
+ const newItems = [...clonedCustomBtnList.value];
160
+ newItems.splice(oldIndex, 1);
161
+ newItems.splice(newIndex, 0, start.value);
162
+ clonedCustomBtnList.value = [...newItems];
163
+ }
164
+ };
165
+ const dragover = (e) => {
166
+ e.preventDefault();
167
+ };
168
+ const submitLoading = vue.ref(false);
169
+ const onSubmit = async () => {
170
+ try {
171
+ submitLoading.value = true;
172
+ const { data } = await customSettingsStore.addCustomSettings({
173
+ key_word: props.keyWord,
174
+ value: JSON.stringify(clonedCustomBtnList.value),
175
+ type: props.type
176
+ });
177
+ submitLoading.value = false;
178
+ if (data.code !== 200) {
179
+ return;
180
+ }
181
+ isShowDrawer.value = false;
182
+ updateOperate();
183
+ } catch (e) {
184
+ console.error(e);
185
+ submitLoading.value = false;
186
+ }
187
+ };
188
+ const onReset = () => {
189
+ clonedCustomBtnList.value = lodashEs.cloneDeep(props.customDefaultPropsList);
190
+ };
191
+ const onSyncRemote = async () => {
192
+ try {
193
+ submitLoading.value = true;
194
+ await customSettingsStore.syncRemoteSetting({
195
+ key_word: props.keyWord,
196
+ type: props.type
197
+ });
198
+ submitLoading.value = false;
199
+ initOperate();
200
+ } catch (e) {
201
+ console.error(e);
202
+ submitLoading.value = false;
203
+ }
204
+ };
205
+ vue.onMounted(() => {
206
+ if (props.disabledRemoteBtn) {
207
+ isInited.value = true;
208
+ } else {
209
+ initOperate();
210
+ }
211
+ });
212
+ __expose({
213
+ isInited
214
+ });
215
+ return (_ctx, _cache) => {
216
+ const _component_gm_icon = vue.resolveComponent("gm-icon");
217
+ const _component_gm_checkbox = vue.resolveComponent("gm-checkbox");
218
+ const _component_gm_button = vue.resolveComponent("gm-button");
219
+ const _component_gm_popover = vue.resolveComponent("gm-popover");
220
+ const _component_el_icon = vue.resolveComponent("el-icon");
221
+ const _component_gm_drawer = vue.resolveComponent("gm-drawer");
222
+ return vue.openBlock(), vue.createBlock(_component_gm_drawer, {
223
+ modelValue: isShowDrawer.value,
224
+ "onUpdate:modelValue": _cache[3] || (_cache[3] = ($event) => isShowDrawer.value = $event),
225
+ title: "\u81EA\u5B9A\u4E49\u6309\u94AE",
226
+ direction: "rtl",
227
+ size: "500px",
228
+ "append-to-body": "",
229
+ "destroy-on-close": "",
230
+ class: "custom-operate-drawer"
231
+ }, {
232
+ footer: vue.withCtx(() => [
233
+ vue.createElementVNode("div", _hoisted_14, [
234
+ vue.createElementVNode("div", null, [
235
+ vue.createVNode(_component_gm_button, {
236
+ loading: submitLoading.value,
237
+ type: "primary",
238
+ size: "default",
239
+ onClick: onReset
240
+ }, {
241
+ default: vue.withCtx(() => [
242
+ vue.createTextVNode("\u91CD\u7F6E")
243
+ ]),
244
+ _: 1
245
+ /* STABLE */
246
+ }, 8, ["loading"]),
247
+ vue.createVNode(_component_gm_button, {
248
+ loading: submitLoading.value,
249
+ type: "success",
250
+ size: "default",
251
+ onClick: onSyncRemote
252
+ }, {
253
+ default: vue.withCtx(() => [
254
+ vue.createTextVNode("\u540C\u6B65")
255
+ ]),
256
+ _: 1
257
+ /* STABLE */
258
+ }, 8, ["loading"])
259
+ ]),
260
+ vue.createElementVNode("div", null, [
261
+ vue.createVNode(_component_gm_button, {
262
+ loading: submitLoading.value,
263
+ size: "default",
264
+ onClick: _cache[2] || (_cache[2] = ($event) => isShowDrawer.value = false)
265
+ }, {
266
+ default: vue.withCtx(() => [
267
+ vue.createTextVNode("\u53D6\u6D88")
268
+ ]),
269
+ _: 1
270
+ /* STABLE */
271
+ }, 8, ["loading"]),
272
+ vue.createVNode(_component_gm_button, {
273
+ loading: submitLoading.value,
274
+ type: "primary",
275
+ size: "default",
276
+ onClick: onSubmit
277
+ }, {
278
+ default: vue.withCtx(() => [
279
+ vue.createTextVNode("\u4FDD\u5B58")
280
+ ]),
281
+ _: 1
282
+ /* STABLE */
283
+ }, 8, ["loading"])
284
+ ])
285
+ ])
286
+ ]),
287
+ default: vue.withCtx(() => [
288
+ vue.createElementVNode("div", _hoisted_1, [
289
+ vue.createVNode(_component_gm_icon, null, {
290
+ default: vue.withCtx(() => [
291
+ vue.createVNode(vue.unref(iconsVue.InfoFilled))
292
+ ]),
293
+ _: 1
294
+ /* STABLE */
295
+ }),
296
+ vue.createElementVNode("p", null, [
297
+ vue.createTextVNode(" \u5DF2\u9009\u4E2D "),
298
+ vue.createElementVNode(
299
+ "span",
300
+ _hoisted_2,
301
+ vue.toDisplayString(checkedNumber.value),
302
+ 1
303
+ /* TEXT */
304
+ ),
305
+ vue.createTextVNode(" \u9879 ")
306
+ ]),
307
+ _hoisted_3
308
+ ]),
309
+ vue.createElementVNode("div", _hoisted_4, [
310
+ vue.createElementVNode(
311
+ "ul",
312
+ {
313
+ class: "gm-flex gm-items-center gm-border gm-border-y-0 gm-border-gray-200 gm-bg-gray-200 gm-font-semibold gm-text-[#333]",
314
+ style: vue.normalizeStyle(titleStyle.value)
315
+ },
316
+ [
317
+ vue.createElementVNode("li", _hoisted_5, [
318
+ vue.createVNode(_component_gm_checkbox, {
319
+ modelValue: checkedAll.value,
320
+ "onUpdate:modelValue": _cache[0] || (_cache[0] = ($event) => checkedAll.value = $event),
321
+ indeterminate: isIndeterminate.value,
322
+ onChange: handleCheckAllChange
323
+ }, null, 8, ["modelValue", "indeterminate"])
324
+ ]),
325
+ _hoisted_6,
326
+ _hoisted_7
327
+ ],
328
+ 4
329
+ /* STYLE */
330
+ ),
331
+ vue.createVNode(vue.TransitionGroup, {
332
+ class: "custom-group gm-border-b gm-border-gray-200 gm-text-gray-600",
333
+ name: "sort",
334
+ tag: "div"
335
+ }, {
336
+ default: vue.withCtx(() => [
337
+ (vue.openBlock(true), vue.createElementBlock(
338
+ vue.Fragment,
339
+ null,
340
+ vue.renderList(vue.unref(clonedCustomBtnList), (item, index) => {
341
+ return vue.openBlock(), vue.createElementBlock("ul", {
342
+ key: item.prop,
343
+ class: "gm-flex gm-items-center gm-border gm-border-b-0 gm-border-gray-200",
344
+ draggable: true,
345
+ onDragstart: ($event) => dragstart(item),
346
+ onDragenter: ($event) => dragenter(item, $event),
347
+ onDragend: dragend,
348
+ onDragover: _cache[1] || (_cache[1] = ($event) => dragover($event))
349
+ }, [
350
+ vue.createElementVNode("li", _hoisted_9, [
351
+ vue.createVNode(_component_gm_checkbox, {
352
+ modelValue: item.isShow,
353
+ "onUpdate:modelValue": ($event) => item.isShow = $event
354
+ }, null, 8, ["modelValue", "onUpdate:modelValue"])
355
+ ]),
356
+ vue.createElementVNode("li", _hoisted_10, [
357
+ vue.createVNode(_component_gm_popover, {
358
+ visible: popoverVisibles.value[index],
359
+ "onUpdate:visible": ($event) => popoverVisibles.value[index] = $event,
360
+ placement: "bottom",
361
+ width: 330,
362
+ trigger: "click"
363
+ }, {
364
+ reference: vue.withCtx(() => [
365
+ vue.createVNode(_component_gm_button, {
366
+ type: item.type || "primary",
367
+ link: "",
368
+ size: "small"
369
+ }, {
370
+ default: vue.withCtx(() => [
371
+ vue.createTextVNode(
372
+ vue.toDisplayString(item.label),
373
+ 1
374
+ /* TEXT */
375
+ )
376
+ ]),
377
+ _: 2
378
+ /* DYNAMIC */
379
+ }, 1032, ["type"])
380
+ ]),
381
+ default: vue.withCtx(() => [
382
+ vue.createElementVNode("div", _hoisted_11, [
383
+ _hoisted_12,
384
+ vue.createVNode(_component_gm_button, {
385
+ type: "primary",
386
+ size: "small",
387
+ onClick: ($event) => setBtnType(item, index, "primary")
388
+ }, {
389
+ default: vue.withCtx(() => [
390
+ vue.createTextVNode(" \u84DD\u8272 ")
391
+ ]),
392
+ _: 2
393
+ /* DYNAMIC */
394
+ }, 1032, ["onClick"]),
395
+ vue.createVNode(_component_gm_button, {
396
+ type: "success",
397
+ size: "small",
398
+ onClick: ($event) => setBtnType(item, index, "success")
399
+ }, {
400
+ default: vue.withCtx(() => [
401
+ vue.createTextVNode(" \u7EFF\u8272 ")
402
+ ]),
403
+ _: 2
404
+ /* DYNAMIC */
405
+ }, 1032, ["onClick"]),
406
+ vue.createVNode(_component_gm_button, {
407
+ type: "info",
408
+ size: "small",
409
+ onClick: ($event) => setBtnType(item, index, "info")
410
+ }, {
411
+ default: vue.withCtx(() => [
412
+ vue.createTextVNode(" \u7070\u8272 ")
413
+ ]),
414
+ _: 2
415
+ /* DYNAMIC */
416
+ }, 1032, ["onClick"]),
417
+ vue.createVNode(_component_gm_button, {
418
+ type: "warning",
419
+ size: "small",
420
+ onClick: ($event) => setBtnType(item, index, "warning")
421
+ }, {
422
+ default: vue.withCtx(() => [
423
+ vue.createTextVNode(" \u6A59\u8272 ")
424
+ ]),
425
+ _: 2
426
+ /* DYNAMIC */
427
+ }, 1032, ["onClick"]),
428
+ vue.createVNode(_component_gm_button, {
429
+ type: "danger",
430
+ size: "small",
431
+ onClick: ($event) => setBtnType(item, index, "danger")
432
+ }, {
433
+ default: vue.withCtx(() => [
434
+ vue.createTextVNode(" \u7EA2\u8272 ")
435
+ ]),
436
+ _: 2
437
+ /* DYNAMIC */
438
+ }, 1032, ["onClick"])
439
+ ])
440
+ ]),
441
+ _: 2
442
+ /* DYNAMIC */
443
+ }, 1032, ["visible", "onUpdate:visible"])
444
+ ]),
445
+ vue.createElementVNode("li", _hoisted_13, [
446
+ vue.createVNode(_component_el_icon, { color: "#0000FF" }, {
447
+ default: vue.withCtx(() => [
448
+ vue.createVNode(vue.unref(iconsVue.Rank))
449
+ ]),
450
+ _: 1
451
+ /* STABLE */
452
+ })
453
+ ])
454
+ ], 40, _hoisted_8);
455
+ }),
456
+ 128
457
+ /* KEYED_FRAGMENT */
458
+ ))
459
+ ]),
460
+ _: 1
461
+ /* STABLE */
462
+ })
463
+ ])
464
+ ]),
465
+ _: 1
466
+ /* STABLE */
467
+ }, 8, ["modelValue"]);
468
+ };
469
+ }
470
+ });
471
+
472
+ exports.default = _sfc_main;
473
+ //# sourceMappingURL=CustomOperate.vue2.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"CustomOperate.vue2.js","sources":["../../../../../../../../packages/components/src/composite/tableCustom/customOperate/CustomOperate.vue"],"sourcesContent":["<template>\n <gm-drawer v-model=\"isShowDrawer\" title=\"自定义按钮\" direction=\"rtl\" size=\"500px\" append-to-body destroy-on-close class=\"custom-operate-drawer\">\n <div class=\"gm-mb-4 gm-flex gm-items-center gm-gap-2 gm-rounded gm-border gm-border-cyan-300 gm-bg-cyan-50 gm-p-2 gm-text-sm gm-text-[#777]\">\n <gm-icon><InfoFilled /></gm-icon>\n <p>\n 已选中 <span class=\"gm-text-cyan-500\">{{ checkedNumber }}</span> 项\n </p>\n <div class=\"gm-font-bold gm-text-amber-400\">点击按钮可修改当前按钮颜色!</div>\n </div>\n\n <div class=\"custom-content gm-text-sm\">\n <ul\n class=\"gm-flex gm-items-center gm-border gm-border-y-0 gm-border-gray-200 gm-bg-gray-200 gm-font-semibold gm-text-[#333]\"\n :style=\"titleStyle\"\n >\n <li class=\"gm-flex gm-w-14 gm-justify-center\">\n <gm-checkbox v-model=\"checkedAll\" :indeterminate=\"isIndeterminate\" @change=\"handleCheckAllChange\" />\n </li>\n <li class=\"gm-flex-1 gm-border-l gm-border-white\">列名</li>\n <li class=\"gm-w-32 gm-border-l gm-border-white\">拖地调整顺序</li>\n </ul>\n <transition-group class=\"custom-group gm-border-b gm-border-gray-200 gm-text-gray-600\" name=\"sort\" tag=\"div\">\n <ul\n v-for=\"(item, index) in clonedCustomBtnList\"\n :key=\"item.prop\"\n class=\"gm-flex gm-items-center gm-border gm-border-b-0 gm-border-gray-200\"\n :draggable=\"true\"\n @dragstart=\"dragstart(item)\"\n @dragenter=\"dragenter(item, $event)\"\n @dragend=\"dragend\"\n @dragover=\"dragover($event)\"\n >\n <li class=\"gm-flex gm-w-14 gm-justify-center\">\n <gm-checkbox v-model=\"item.isShow\" />\n </li>\n <li class=\"gm-flex-1 gm-border-l gm-border-gray-200\">\n <gm-popover v-model:visible=\"popoverVisibles[index]\" placement=\"bottom\" :width=\"330\" trigger=\"click\">\n <template #reference>\n <gm-button :type=\"item.type || 'primary'\" link size=\"small\">\n {{ item.label }}\n </gm-button>\n </template>\n <div class=\"p-1\">\n <div class=\"text-[14px] gm-mb-2\">点击下列色块可修改按钮颜色</div>\n <gm-button type=\"primary\" size=\"small\" @click=\"setBtnType(item, index, 'primary')\"> 蓝色 </gm-button>\n <gm-button type=\"success\" size=\"small\" @click=\"setBtnType(item, index, 'success')\"> 绿色 </gm-button>\n <gm-button type=\"info\" size=\"small\" @click=\"setBtnType(item, index, 'info')\"> 灰色 </gm-button>\n <gm-button type=\"warning\" size=\"small\" @click=\"setBtnType(item, index, 'warning')\"> 橙色 </gm-button>\n <gm-button type=\"danger\" size=\"small\" @click=\"setBtnType(item, index, 'danger')\"> 红色 </gm-button>\n </div>\n </gm-popover>\n </li>\n <li class=\"gm-w-32 gm-cursor-grabbing gm-border-l gm-border-gray-200\">\n <el-icon color=\"#0000FF\"><Rank /></el-icon>\n </li>\n </ul>\n </transition-group>\n </div>\n <template #footer>\n <div class=\"gm-flex gm-justify-between\">\n <div>\n <gm-button :loading=\"submitLoading\" type=\"primary\" size=\"default\" @click=\"onReset\">重置</gm-button>\n <gm-button :loading=\"submitLoading\" type=\"success\" size=\"default\" @click=\"onSyncRemote\">同步</gm-button>\n </div>\n <div>\n <gm-button :loading=\"submitLoading\" size=\"default\" @click=\"isShowDrawer = false\">取消</gm-button>\n <gm-button :loading=\"submitLoading\" type=\"primary\" size=\"default\" @click=\"onSubmit\">保存</gm-button>\n </div>\n </div>\n </template>\n </gm-drawer>\n</template>\n\n<script setup lang=\"ts\">\nimport { computed, onMounted, ref, watch } from 'vue';\nimport { useCustomSettingsStore } from '@giime/hooks';\nimport { cloneDeep } from 'lodash-es';\nimport { useCloned } from '@vueuse/core';\nimport { type CheckboxValueType } from 'element-plus';\nimport { InfoFilled, Rank } from '@element-plus/icons-vue';\nimport { customOperateProps } from './customOperate';\nimport type { CustomOperateButtonProps } from './customOperate';\n\ndefineOptions({\n name: 'GmCustomOperate',\n});\n/**\n * 抽屉显示\n */\nconst isShowDrawer = defineModel<boolean>('isShowDrawer', {\n required: true,\n});\n/**\n * 自定义按钮 props列表\n */\nconst customBtnPropsList = defineModel<CustomOperateButtonProps[]>('customBtnPropsList', {\n required: true,\n});\n\nconst props = defineProps(customOperateProps);\nconst customSettingsStore = useCustomSettingsStore();\n\n/**\n * 数据是否初始化完成\n */\nconst isInited = ref(false);\n/**内部克隆一份,当点击保存时 应用修改的内容 */\nconst { cloned: clonedCustomBtnList } = useCloned(customBtnPropsList);\n\nconst defaultPropsList = computed(() => cloneDeep(props.customDefaultPropsList));\n// 按钮弹出框显示隐藏\nconst popoverVisibles = ref<boolean[]>(defaultPropsList.value.map(() => false));\n// 根据props列表 初始化popo显示隐藏\nwatch(defaultPropsList, () => {\n popoverVisibles.value = defaultPropsList.value.map(() => false);\n});\n\n// 重新打开弹窗时, 克隆一份新数据\nwatch(isShowDrawer, newValue => {\n if (newValue) {\n clonedCustomBtnList.value = cloneDeep(customBtnPropsList.value);\n }\n});\n\nconst customSettingsValue = computed<CustomOperateButtonProps[]>(() => customSettingsStore.customSettings[props.keyWord]?.[props.type] || []);\nconst { cloned: clonedStore } = useCloned(customSettingsValue);\n\nconst updateOperate = () => {\n customBtnPropsList.value = clonedCustomBtnList.value;\n};\n\nconst initOperate = async () => {\n try {\n await customSettingsStore.getCustomSettings({ key_word: props.keyWord, type: props.type }, { defaultValue: [] });\n } catch {}\n\n const clonedDefaultOperate = cloneDeep(props.customDefaultPropsList);\n\n let operate = clonedDefaultOperate;\n\n if (clonedStore.value.length) {\n operate = [];\n clonedStore.value.forEach(it => {\n const index = clonedDefaultOperate.findIndex(v => v.prop === it.prop);\n if (index > -1) {\n const item = clonedDefaultOperate.splice(index, 1)[0];\n\n operate.push({\n ...item,\n ...it,\n label: item.label,\n });\n }\n });\n clonedCustomBtnList.value = [...operate, ...clonedDefaultOperate];\n }\n\n updateOperate();\n isInited.value = true;\n};\n\n/** 设置表头位置样式,调整表格对齐 */\nconst titleStyle = computed(() => {\n const h = props.customDefaultPropsList.length * 44;\n const H = document.documentElement.clientHeight || document.body.clientHeight;\n return h > H - 240 ? { paddingRight: '4px' } : { paddingRight: 0 };\n});\n\n// 已选中条数\nconst checkedNumber = computed(() => {\n return clonedCustomBtnList.value.filter(v => v.isShow).length;\n});\n// 全选\nconst checkedAll = computed({\n get() {\n return clonedCustomBtnList.value.every(v => v.isShow);\n },\n set(value: CheckboxValueType) {\n clonedCustomBtnList.value.forEach(v => {\n v.isShow = Boolean(value);\n });\n },\n});\n// 半选\nconst isIndeterminate = computed(() => !checkedAll.value && clonedCustomBtnList.value.some(v => v.isShow));\n// 切换全选\nconst handleCheckAllChange = (val: CheckboxValueType) => {\n clonedCustomBtnList.value.forEach(v => {\n v.isShow = Boolean(val);\n });\n};\n\n// 设置按钮颜色\nconst setBtnType = (item: CustomOperateButtonProps, index: number, type: CustomOperateButtonProps['type']) => {\n item.type = type;\n popoverVisibles.value[index] = false;\n};\n\n/** 拖拽开始 */\nconst start = ref<CustomOperateButtonProps>();\nconst end = ref<CustomOperateButtonProps>();\nconst dragstart = (item: CustomOperateButtonProps) => {\n document.body.style.userSelect = 'none';\n start.value = item;\n};\n/** 拖拽过程 */\nconst dragenter = (item: CustomOperateButtonProps, e: DragEvent) => {\n end.value = item;\n e.preventDefault();\n};\n/** 拖拽结束 */\nconst dragend = () => {\n document.body.style.userSelect = 'text';\n if (start.value === end.value) return;\n if (start.value && end.value) {\n const oldIndex: number = clonedCustomBtnList.value.findIndex(v => v.prop === start.value?.prop);\n const newIndex: number = clonedCustomBtnList.value.findIndex(v => v.prop === end.value?.prop);\n const newItems = [...clonedCustomBtnList.value];\n // 删除老节点\n newItems.splice(oldIndex, 1);\n\n // 目标位置新增节点\n newItems.splice(newIndex, 0, start.value);\n clonedCustomBtnList.value = [...newItems];\n }\n};\n/** 拖拽事件 */\nconst dragover = (e: DragEvent) => {\n e.preventDefault();\n};\n\nconst submitLoading = ref(false);\n// 保存\nconst onSubmit = async () => {\n try {\n submitLoading.value = true;\n const { data } = await customSettingsStore.addCustomSettings({\n key_word: props.keyWord,\n value: JSON.stringify(clonedCustomBtnList.value),\n type: props.type,\n });\n submitLoading.value = false;\n if (data.code !== 200) {\n return;\n }\n isShowDrawer.value = false;\n updateOperate();\n } catch (e) {\n console.error(e);\n submitLoading.value = false;\n }\n};\n\n// 重置\nconst onReset = () => {\n clonedCustomBtnList.value = cloneDeep(props.customDefaultPropsList);\n};\n\n/**同步远程设置 */\nconst onSyncRemote = async () => {\n try {\n submitLoading.value = true;\n await customSettingsStore.syncRemoteSetting({\n key_word: props.keyWord,\n type: props.type,\n });\n submitLoading.value = false;\n initOperate();\n } catch (e) {\n console.error(e);\n submitLoading.value = false;\n }\n};\n\nonMounted(() => {\n if (props.disabledRemoteBtn) {\n isInited.value = true;\n } else {\n initOperate();\n }\n});\ndefineExpose({\n isInited,\n});\n</script>\n\n<style lang=\"scss\">\n.custom-operate-drawer {\n .el-drawer__header {\n padding: 10px 15px;\n margin: 0;\n border-bottom: 1px solid #ebeef5;\n }\n .el-drawer__title {\n font-size: 14px;\n color: #333;\n }\n .el-drawer__body {\n padding: 15px;\n }\n .el-drawer__footer {\n padding: 10px 15px;\n border-top: 1px solid #ebeef5;\n }\n .el-checkbox {\n display: flex;\n align-items: center;\n }\n .el-input__inner {\n text-align: center;\n }\n .el-input__suffix {\n position: absolute;\n right: 10px;\n }\n .custom-content {\n li {\n display: flex;\n align-items: center;\n justify-content: center;\n height: 44px;\n }\n }\n .custom-group {\n max-height: calc(100vh - 226px);\n overflow-y: auto;\n\n &::-webkit-scrollbar {\n /*滚动条整体样式*/\n width: 4px;\n /*高宽分别对应横竖滚动条的尺寸*/\n height: 1px;\n }\n\n &::-webkit-scrollbar-thumb {\n /*滚动条里面小方块*/\n border-radius: 10px;\n box-shadow: inset 0 0 5px rgba(0, 0, 0, 0.1);\n background: #999;\n }\n\n &::-webkit-scrollbar-track {\n /*滚动条里面轨道*/\n box-shadow: inset 0 0 3px rgba(0, 0, 0, 0.1);\n border-radius: 10px;\n background: #eee;\n }\n }\n}\n</style>\n"],"names":["_useModel","useCustomSettingsStore","ref","useCloned","computed","cloneDeep","watch","onMounted"],"mappings":"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"}
@@ -0,0 +1,8 @@
1
+ 'use strict';
2
+
3
+ Object.defineProperty(exports, '__esModule', { value: true });
4
+
5
+ var undefined$1 = undefined;
6
+
7
+ exports.default = undefined$1;
8
+ //# sourceMappingURL=CustomOperate.vue3.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"CustomOperate.vue3.js","sources":[],"sourcesContent":[],"names":[],"mappings":";;;;;;;;"}
@@ -0,0 +1,42 @@
1
+ import type { OperateButtonProps } from '../../operateButton';
2
+ export declare const customOperateButtonProps: {
3
+ label: {
4
+ type: StringConstructor;
5
+ default: string;
6
+ };
7
+ prop: {
8
+ type: StringConstructor;
9
+ required: true;
10
+ };
11
+ type: import("element-plus/es/utils").EpPropFinalized<StringConstructor, "" | "default" | "text" | "success" | "warning" | "info" | "primary" | "danger", unknown, "", boolean>;
12
+ isShow: {
13
+ type: BooleanConstructor;
14
+ default: true;
15
+ };
16
+ disabled: BooleanConstructor;
17
+ loading: BooleanConstructor;
18
+ size: {
19
+ type: import("vue").PropType<"" | "default" | "small" | "large">;
20
+ default: "small";
21
+ };
22
+ };
23
+ export declare const customOperateProps: {
24
+ keyWord: {
25
+ type: StringConstructor;
26
+ required: true;
27
+ };
28
+ type: {
29
+ type: StringConstructor;
30
+ required: true;
31
+ };
32
+ customDefaultPropsList: {
33
+ type: import("vue").PropType<OperateButtonProps[]>;
34
+ default: () => never[];
35
+ };
36
+ disabledRemoteBtn: {
37
+ type: BooleanConstructor;
38
+ default: boolean;
39
+ };
40
+ };
41
+ export interface CustomOperateButtonProps extends OperateButtonProps {
42
+ }
@@ -0,0 +1,16 @@
1
+ 'use strict';
2
+
3
+ require('../../operateButton/index.js');
4
+ var operateButton = require('../../operateButton/operateButton.js');
5
+ var operateButtonForm = require('../../operateButton/operateButtonForm/operateButtonForm.js');
6
+
7
+ const customOperateButtonProps = {
8
+ ...operateButton.operateButtonProps
9
+ };
10
+ const customOperateProps = {
11
+ ...operateButtonForm.operateButtonFormProps
12
+ };
13
+
14
+ exports.customOperateButtonProps = customOperateButtonProps;
15
+ exports.customOperateProps = customOperateProps;
16
+ //# sourceMappingURL=customOperate.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"customOperate.js","sources":["../../../../../../../../packages/components/src/composite/tableCustom/customOperate/customOperate.ts"],"sourcesContent":["import { operateButtonFormProps, operateButtonProps } from '../../operateButton';\nimport type { OperateButtonProps } from '../../operateButton';\n\nexport const customOperateButtonProps = {\n ...operateButtonProps,\n};\n\nexport const customOperateProps = {\n ...operateButtonFormProps,\n};\n\nexport interface CustomOperateButtonProps extends OperateButtonProps {}\n"],"names":["operateButtonProps","operateButtonFormProps"],"mappings":";;;;;;AAGO,MAAM,wBAA2B,GAAA;AAAA,EACtC,GAAGA,gCAAA;AACL,EAAA;AAEO,MAAM,kBAAqB,GAAA;AAAA,EAChC,GAAGC,wCAAA;AACL;;;;;"}
@@ -0,0 +1,66 @@
1
+ import CustomOperate from './CustomOperate.vue';
2
+ export declare const GmCustomOperate: import("../../../../../utils").SFCWithInstall<import("vue").DefineComponent<{
3
+ isShowDrawer: {
4
+ required: true;
5
+ type: import("vue").PropType<boolean>;
6
+ };
7
+ customBtnPropsList: {
8
+ required: true;
9
+ type: import("vue").PropType<import("./customOperate").CustomOperateButtonProps[]>;
10
+ };
11
+ keyWord: {
12
+ type: StringConstructor;
13
+ required: true;
14
+ };
15
+ type: {
16
+ type: StringConstructor;
17
+ required: true;
18
+ };
19
+ customDefaultPropsList: {
20
+ type: import("vue").PropType<import("../../index.js").OperateButtonProps[]>;
21
+ default: () => never[];
22
+ };
23
+ disabledRemoteBtn: {
24
+ type: BooleanConstructor;
25
+ default: boolean;
26
+ };
27
+ }, {
28
+ isInited: import("vue").Ref<boolean>;
29
+ }, unknown, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {
30
+ "update:isShowDrawer": (isShowDrawer: boolean) => void;
31
+ "update:customBtnPropsList": (customBtnPropsList: import("./customOperate").CustomOperateButtonProps[]) => void;
32
+ }, string, import("vue").PublicProps, Readonly<import("vue").ExtractPropTypes<{
33
+ isShowDrawer: {
34
+ required: true;
35
+ type: import("vue").PropType<boolean>;
36
+ };
37
+ customBtnPropsList: {
38
+ required: true;
39
+ type: import("vue").PropType<import("./customOperate").CustomOperateButtonProps[]>;
40
+ };
41
+ keyWord: {
42
+ type: StringConstructor;
43
+ required: true;
44
+ };
45
+ type: {
46
+ type: StringConstructor;
47
+ required: true;
48
+ };
49
+ customDefaultPropsList: {
50
+ type: import("vue").PropType<import("../../index.js").OperateButtonProps[]>;
51
+ default: () => never[];
52
+ };
53
+ disabledRemoteBtn: {
54
+ type: BooleanConstructor;
55
+ default: boolean;
56
+ };
57
+ }>> & {
58
+ "onUpdate:isShowDrawer"?: ((isShowDrawer: boolean) => any) | undefined;
59
+ "onUpdate:customBtnPropsList"?: ((customBtnPropsList: import("./customOperate").CustomOperateButtonProps[]) => any) | undefined;
60
+ }, {
61
+ disabledRemoteBtn: boolean;
62
+ customDefaultPropsList: import("../../index.js").OperateButtonProps[];
63
+ }, {}>> & Record<string, any>;
64
+ export type CustomOperateInstance = InstanceType<typeof CustomOperate>;
65
+ export * from './customOperate';
66
+ export default GmCustomOperate;