vxe-table 3.15.5 → 3.15.7

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 (171) hide show
  1. package/es/index.css +1 -1
  2. package/es/index.min.css +1 -1
  3. package/es/locale/lang/ar-EG.js +3 -2
  4. package/es/locale/lang/de-DE.js +3 -2
  5. package/es/locale/lang/en-US.js +2 -1
  6. package/es/locale/lang/es-ES.js +3 -2
  7. package/es/locale/lang/fr-FR.js +2 -1
  8. package/es/locale/lang/hu-HU.js +2 -1
  9. package/es/locale/lang/hy-AM.js +2 -1
  10. package/es/locale/lang/id-ID.js +2 -1
  11. package/es/locale/lang/it-IT.js +2 -1
  12. package/es/locale/lang/ja-JP.js +2 -1
  13. package/es/locale/lang/ko-KR.js +2 -1
  14. package/es/locale/lang/nb-NO.js +2 -1
  15. package/es/locale/lang/pt-BR.js +2 -1
  16. package/es/locale/lang/ru-RU.js +2 -1
  17. package/es/locale/lang/th-TH.js +2 -1
  18. package/es/locale/lang/ug-CN.js +2 -1
  19. package/es/locale/lang/uk-UA.js +2 -1
  20. package/es/locale/lang/vi-VN.js +2 -1
  21. package/es/locale/lang/zh-CHT.js +2 -1
  22. package/es/locale/lang/zh-CN.js +2 -1
  23. package/es/style.css +1 -1
  24. package/es/style.min.css +1 -1
  25. package/es/table/module/custom/mixin.js +62 -37
  26. package/es/table/module/custom/panel.js +7 -7
  27. package/es/table/module/export/mixin.js +13 -12
  28. package/es/table/module/keyboard/mixin.js +3 -2
  29. package/es/table/src/body.js +49 -16
  30. package/es/table/src/cell.js +137 -45
  31. package/es/table/src/column.js +2 -0
  32. package/es/table/src/columnInfo.js +1 -0
  33. package/es/table/src/methods.js +983 -495
  34. package/es/table/src/props.js +9 -7
  35. package/es/table/src/table.js +108 -35
  36. package/es/table/style.css +70 -40
  37. package/es/table/style.min.css +1 -1
  38. package/es/ui/index.js +13 -1
  39. package/es/ui/src/dom.js +3 -0
  40. package/es/ui/src/log.js +1 -1
  41. package/es/vxe-table/style.css +70 -40
  42. package/es/vxe-table/style.min.css +1 -1
  43. package/lib/index.css +1 -1
  44. package/lib/index.min.css +1 -1
  45. package/lib/index.umd.js +1735 -858
  46. package/lib/index.umd.min.js +1 -1
  47. package/lib/locale/lang/ar-EG.js +3 -2
  48. package/lib/locale/lang/ar-EG.min.js +1 -1
  49. package/lib/locale/lang/de-DE.js +3 -2
  50. package/lib/locale/lang/de-DE.min.js +1 -1
  51. package/lib/locale/lang/en-US.js +2 -1
  52. package/lib/locale/lang/en-US.min.js +1 -1
  53. package/lib/locale/lang/en-US.umd.js +2 -1
  54. package/lib/locale/lang/es-ES.js +3 -2
  55. package/lib/locale/lang/es-ES.min.js +1 -1
  56. package/lib/locale/lang/es-ES.umd.js +3 -2
  57. package/lib/locale/lang/fr-FR.js +2 -1
  58. package/lib/locale/lang/fr-FR.min.js +1 -1
  59. package/lib/locale/lang/hu-HU.js +2 -1
  60. package/lib/locale/lang/hu-HU.min.js +1 -1
  61. package/lib/locale/lang/hu-HU.umd.js +2 -1
  62. package/lib/locale/lang/hy-AM.js +2 -1
  63. package/lib/locale/lang/hy-AM.min.js +1 -1
  64. package/lib/locale/lang/id-ID.js +2 -1
  65. package/lib/locale/lang/id-ID.min.js +1 -1
  66. package/lib/locale/lang/it-IT.js +2 -1
  67. package/lib/locale/lang/it-IT.min.js +1 -1
  68. package/lib/locale/lang/ja-JP.js +2 -1
  69. package/lib/locale/lang/ja-JP.min.js +1 -1
  70. package/lib/locale/lang/ja-JP.umd.js +2 -1
  71. package/lib/locale/lang/ko-KR.js +2 -1
  72. package/lib/locale/lang/ko-KR.min.js +1 -1
  73. package/lib/locale/lang/ko-KR.umd.js +2 -1
  74. package/lib/locale/lang/nb-NO.js +2 -1
  75. package/lib/locale/lang/nb-NO.min.js +1 -1
  76. package/lib/locale/lang/pt-BR.js +2 -1
  77. package/lib/locale/lang/pt-BR.min.js +1 -1
  78. package/lib/locale/lang/pt-BR.umd.js +2 -1
  79. package/lib/locale/lang/ru-RU.js +2 -1
  80. package/lib/locale/lang/ru-RU.min.js +1 -1
  81. package/lib/locale/lang/ru-RU.umd.js +2 -1
  82. package/lib/locale/lang/th-TH.js +2 -1
  83. package/lib/locale/lang/th-TH.min.js +1 -1
  84. package/lib/locale/lang/ug-CN.js +2 -1
  85. package/lib/locale/lang/ug-CN.min.js +1 -1
  86. package/lib/locale/lang/uk-UA.js +2 -1
  87. package/lib/locale/lang/uk-UA.min.js +1 -1
  88. package/lib/locale/lang/uk-UA.umd.js +2 -1
  89. package/lib/locale/lang/vi-VN.js +2 -1
  90. package/lib/locale/lang/vi-VN.min.js +1 -1
  91. package/lib/locale/lang/zh-CHT.js +2 -1
  92. package/lib/locale/lang/zh-CHT.min.js +1 -1
  93. package/lib/locale/lang/zh-CHT.umd.js +2 -1
  94. package/lib/locale/lang/zh-CN.js +2 -1
  95. package/lib/locale/lang/zh-CN.min.js +1 -1
  96. package/lib/locale/lang/zh-CN.umd.js +2 -1
  97. package/lib/style.css +1 -1
  98. package/lib/style.min.css +1 -1
  99. package/lib/table/module/custom/mixin.js +74 -48
  100. package/lib/table/module/custom/mixin.min.js +1 -1
  101. package/lib/table/module/custom/panel.js +6 -2
  102. package/lib/table/module/custom/panel.min.js +1 -1
  103. package/lib/table/module/export/mixin.js +13 -5
  104. package/lib/table/module/export/mixin.min.js +1 -1
  105. package/lib/table/module/keyboard/mixin.js +2 -1
  106. package/lib/table/module/keyboard/mixin.min.js +1 -1
  107. package/lib/table/src/body.js +39 -15
  108. package/lib/table/src/body.min.js +1 -1
  109. package/lib/table/src/cell.js +157 -36
  110. package/lib/table/src/cell.min.js +1 -1
  111. package/lib/table/src/column.js +2 -0
  112. package/lib/table/src/column.min.js +1 -1
  113. package/lib/table/src/columnInfo.js +1 -0
  114. package/lib/table/src/columnInfo.min.js +1 -1
  115. package/lib/table/src/methods.js +1164 -562
  116. package/lib/table/src/methods.min.js +1 -1
  117. package/lib/table/src/props.js +9 -7
  118. package/lib/table/src/props.min.js +1 -1
  119. package/lib/table/src/table.js +104 -34
  120. package/lib/table/src/table.min.js +1 -1
  121. package/lib/table/style/style.css +70 -40
  122. package/lib/table/style/style.min.css +1 -1
  123. package/lib/ui/index.js +13 -1
  124. package/lib/ui/index.min.js +1 -1
  125. package/lib/ui/src/dom.js +4 -0
  126. package/lib/ui/src/dom.min.js +1 -1
  127. package/lib/ui/src/log.js +1 -1
  128. package/lib/ui/src/log.min.js +1 -1
  129. package/lib/vxe-table/style/style.css +70 -40
  130. package/lib/vxe-table/style/style.min.css +1 -1
  131. package/package.json +2 -2
  132. package/packages/locale/lang/ar-EG.ts +3 -2
  133. package/packages/locale/lang/de-DE.ts +3 -2
  134. package/packages/locale/lang/en-US.ts +2 -1
  135. package/packages/locale/lang/es-ES.ts +3 -2
  136. package/packages/locale/lang/fr-FR.ts +2 -1
  137. package/packages/locale/lang/hu-HU.ts +2 -1
  138. package/packages/locale/lang/hy-AM.ts +2 -1
  139. package/packages/locale/lang/id-ID.ts +2 -1
  140. package/packages/locale/lang/it-IT.ts +2 -1
  141. package/packages/locale/lang/ja-JP.ts +2 -1
  142. package/packages/locale/lang/ko-KR.ts +2 -1
  143. package/packages/locale/lang/nb-NO.ts +2 -1
  144. package/packages/locale/lang/pt-BR.ts +2 -1
  145. package/packages/locale/lang/ru-RU.ts +2 -1
  146. package/packages/locale/lang/th-TH.ts +2 -1
  147. package/packages/locale/lang/ug-CN.ts +2 -1
  148. package/packages/locale/lang/uk-UA.ts +2 -1
  149. package/packages/locale/lang/vi-VN.ts +2 -1
  150. package/packages/locale/lang/zh-CHT.ts +2 -1
  151. package/packages/locale/lang/zh-CN.ts +2 -1
  152. package/packages/table/module/custom/mixin.ts +85 -51
  153. package/packages/table/module/custom/panel.ts +8 -8
  154. package/packages/table/module/export/mixin.ts +19 -18
  155. package/packages/table/module/keyboard/mixin.ts +3 -2
  156. package/packages/table/src/body.ts +50 -17
  157. package/packages/table/src/cell.ts +136 -45
  158. package/packages/table/src/column.ts +2 -0
  159. package/packages/table/src/columnInfo.ts +1 -0
  160. package/packages/table/src/methods.ts +1016 -512
  161. package/packages/table/src/props.ts +9 -7
  162. package/packages/table/src/table.ts +122 -38
  163. package/packages/ui/index.ts +12 -0
  164. package/packages/ui/src/dom.ts +4 -0
  165. package/styles/components/table.scss +131 -92
  166. /package/es/{iconfont.1744880837792.ttf → iconfont.1745290222894.ttf} +0 -0
  167. /package/es/{iconfont.1744880837792.woff → iconfont.1745290222894.woff} +0 -0
  168. /package/es/{iconfont.1744880837792.woff2 → iconfont.1745290222894.woff2} +0 -0
  169. /package/lib/{iconfont.1744880837792.ttf → iconfont.1745290222894.ttf} +0 -0
  170. /package/lib/{iconfont.1744880837792.woff → iconfont.1745290222894.woff} +0 -0
  171. /package/lib/{iconfont.1744880837792.woff2 → iconfont.1745290222894.woff2} +0 -0
@@ -6,6 +6,26 @@ Object.defineProperty(exports, "__esModule", {
6
6
  exports.default = void 0;
7
7
  var _xeUtils = _interopRequireDefault(require("xe-utils"));
8
8
  function _interopRequireDefault(e) { return e && e.__esModule ? e : { default: e }; }
9
+ function calcMaxHeight($xeTable) {
10
+ const reactData = $xeTable;
11
+ const {
12
+ customStore
13
+ } = reactData;
14
+ const el = $xeTable.$refs.refElem;
15
+ // 判断面板不能大于表格高度
16
+ let tableHeight = 0;
17
+ if (el) {
18
+ tableHeight = el.clientHeight - 28;
19
+ }
20
+ customStore.maxHeight = Math.max(88, tableHeight);
21
+ }
22
+ function emitCustomEvent($xeTable, type, evnt) {
23
+ const $xeGrid = $xeTable.$xeGrid;
24
+ const comp = $xeGrid || $xeTable;
25
+ comp.dispatchEvent('custom', {
26
+ type
27
+ }, evnt);
28
+ }
9
29
  var _default = exports.default = {
10
30
  methods: {
11
31
  _openCustom() {
@@ -19,21 +39,23 @@ var _default = exports.default = {
19
39
  initStore.custom = true;
20
40
  $xeTable.handleUpdateCustomColumn();
21
41
  $xeTable.checkCustomStatus();
22
- $xeTable.calcMaxHeight();
23
- return this.$nextTick().then(() => this.calcMaxHeight());
42
+ calcMaxHeight($xeTable);
43
+ return $xeTable.$nextTick().then(() => calcMaxHeight($xeTable));
24
44
  },
25
45
  _closeCustom() {
46
+ const $xeTable = this;
47
+ const reactData = $xeTable;
26
48
  const {
27
- customStore,
28
- customOpts
29
- } = this;
49
+ customStore
50
+ } = reactData;
51
+ const customOpts = $xeTable.computeCustomOpts;
30
52
  if (customStore.visible) {
31
53
  customStore.visible = false;
32
54
  if (!customOpts.immediate) {
33
- this.handleCustom();
55
+ $xeTable.handleCustom();
34
56
  }
35
57
  }
36
- return this.$nextTick();
58
+ return $xeTable.$nextTick();
37
59
  },
38
60
  _saveCustom() {
39
61
  const $xeTable = this;
@@ -82,16 +104,17 @@ var _default = exports.default = {
82
104
  },
83
105
  _cancelCustom() {
84
106
  const $xeTable = this;
107
+ const reactData = $xeTable;
85
108
  const {
86
- customStore,
87
- customOpts,
88
- customColumnList
89
- } = $xeTable;
109
+ customColumnList,
110
+ customStore
111
+ } = reactData;
90
112
  const {
91
113
  oldSortMaps,
92
114
  oldFixedMaps,
93
115
  oldVisibleMaps
94
116
  } = customStore;
117
+ const customOpts = $xeTable.computeCustomOpts;
95
118
  const {
96
119
  allowVisible,
97
120
  allowSort,
@@ -126,9 +149,9 @@ var _default = exports.default = {
126
149
  const reactData = $xeTable;
127
150
  const internalData = $xeTable;
128
151
  const {
129
- collectColumn,
130
- customOpts
152
+ collectColumn
131
153
  } = internalData;
154
+ const customOpts = $xeTable.computeCustomOpts;
132
155
  const {
133
156
  checkMethod
134
157
  } = customOpts;
@@ -149,6 +172,7 @@ var _default = exports.default = {
149
172
  column.renderSortNumber = column.sortNumber;
150
173
  }
151
174
  if (!checkMethod || checkMethod({
175
+ $table: $xeTable,
152
176
  column
153
177
  })) {
154
178
  column.visible = column.defaultVisible;
@@ -171,11 +195,11 @@ var _default = exports.default = {
171
195
  const reactData = $xeTable;
172
196
  const {
173
197
  customStore
174
- } = this;
198
+ } = reactData;
175
199
  const {
176
- customColumnList,
177
- customOpts
178
- } = this;
200
+ customColumnList
201
+ } = reactData;
202
+ const customOpts = $xeTable.computeCustomOpts;
179
203
  const {
180
204
  checkMethod,
181
205
  visibleMethod
@@ -184,11 +208,13 @@ var _default = exports.default = {
184
208
  if (customOpts.immediate) {
185
209
  _xeUtils.default.eachTree(customColumnList, column => {
186
210
  if (visibleMethod && !visibleMethod({
211
+ $table: $xeTable,
187
212
  column
188
213
  })) {
189
214
  return;
190
215
  }
191
216
  if (checkMethod && !checkMethod({
217
+ $table: $xeTable,
192
218
  column
193
219
  })) {
194
220
  return;
@@ -204,11 +230,13 @@ var _default = exports.default = {
204
230
  } else {
205
231
  _xeUtils.default.eachTree(customColumnList, column => {
206
232
  if (visibleMethod && !visibleMethod({
233
+ $table: $xeTable,
207
234
  column
208
235
  })) {
209
236
  return;
210
237
  }
211
238
  if (checkMethod && !checkMethod({
239
+ $table: $xeTable,
212
240
  column
213
241
  })) {
214
242
  return;
@@ -220,31 +248,26 @@ var _default = exports.default = {
220
248
  }
221
249
  $xeTable.checkCustomStatus();
222
250
  },
223
- calcMaxHeight() {
251
+ checkCustomStatus() {
252
+ const $xeTable = this;
253
+ const reactData = $xeTable;
254
+ const internalData = $xeTable;
224
255
  const {
225
- $el,
226
256
  customStore
227
- } = this;
228
- // 判断面板不能大于表格高度
229
- let tableHeight = 0;
230
- if ($el) {
231
- tableHeight = $el.clientHeight - 28;
232
- }
233
- customStore.maxHeight = Math.max(88, tableHeight);
234
- },
235
- checkCustomStatus() {
257
+ } = reactData;
236
258
  const {
237
- customStore,
238
- collectColumn,
239
- customOpts
240
- } = this;
259
+ collectColumn
260
+ } = internalData;
261
+ const customOpts = $xeTable.computeCustomOpts;
241
262
  const {
242
263
  checkMethod
243
264
  } = customOpts;
244
265
  customStore.isAll = collectColumn.every(column => (checkMethod ? !checkMethod({
266
+ $table: $xeTable,
245
267
  column
246
268
  }) : false) || column.renderVisible);
247
269
  customStore.isIndeterminate = !customStore.isAll && collectColumn.some(column => (!checkMethod || checkMethod({
270
+ $table: $xeTable,
248
271
  column
249
272
  })) && (column.renderVisible || column.halfVisible));
250
273
  },
@@ -252,45 +275,48 @@ var _default = exports.default = {
252
275
  const $xeTable = this;
253
276
  const $xeGrid = $xeTable.$xeGrid;
254
277
  const comp = $xeGrid || $xeTable;
255
- comp.$emit('custom', {
256
- type,
257
- $table: $xeTable,
258
- $grid: $xeGrid,
259
- $event: evnt
260
- });
278
+ comp.dispatchEvent('custom', {
279
+ type
280
+ }, evnt);
261
281
  },
262
282
  triggerCustomEvent(evnt) {
283
+ const $xeTable = this;
284
+ const reactData = $xeTable;
263
285
  const {
264
286
  customStore
265
- } = this;
287
+ } = reactData;
266
288
  if (customStore.visible) {
267
289
  this.closeCustom();
268
- this.emitCustomEvent('close', evnt);
290
+ emitCustomEvent($xeTable, 'close', evnt);
269
291
  } else {
270
292
  customStore.btnEl = evnt.target;
271
293
  this.openCustom();
272
- this.emitCustomEvent('open', evnt);
294
+ emitCustomEvent($xeTable, 'open', evnt);
273
295
  }
274
296
  },
275
297
  customOpenEvent(evnt) {
298
+ const $xeTable = this;
299
+ const reactData = $xeTable;
276
300
  const {
277
301
  customStore
278
- } = this;
279
- if (!customStore.visible) {
302
+ } = reactData;
303
+ if (customStore.visible) {
280
304
  customStore.activeBtn = true;
281
305
  customStore.btnEl = evnt.target;
282
- this.openCustom();
283
- this.emitCustomEvent('open', evnt);
306
+ $xeTable.openCustom();
307
+ emitCustomEvent($xeTable, 'open', evnt);
284
308
  }
285
309
  },
286
310
  customCloseEvent(evnt) {
311
+ const $xeTable = this;
312
+ const reactData = $xeTable;
287
313
  const {
288
314
  customStore
289
- } = this;
315
+ } = reactData;
290
316
  if (customStore.visible) {
291
317
  customStore.activeBtn = false;
292
- this.closeCustom();
293
- this.emitCustomEvent('close', evnt);
318
+ $xeTable.closeCustom();
319
+ emitCustomEvent($xeTable, 'close', evnt);
294
320
  }
295
321
  },
296
322
  handleUpdateCustomColumn() {
@@ -1 +1 @@
1
- Object.defineProperty(exports,"__esModule",{value:!0}),exports.default=void 0;var _xeUtils=_interopRequireDefault(require("xe-utils"));function _interopRequireDefault(e){return e&&e.__esModule?e:{default:e}}var _default=exports.default={methods:{_openCustom(){var e=this,{initStore:t,customStore:i}=e;return i.visible=!0,t.custom=!0,e.handleUpdateCustomColumn(),e.checkCustomStatus(),e.calcMaxHeight(),this.$nextTick().then(()=>this.calcMaxHeight())},_closeCustom(){var{customStore:e,customOpts:t}=this;return e.visible&&(e.visible=!1,t.immediate||this.handleCustom()),this.$nextTick()},_saveCustom(){let e=this;var{customOpts:t,customColumnList:i}=this;let{allowVisible:o,allowSort:r,allowFixed:u,allowResizable:d}=t;return _xeUtils.default.eachTree(i,(e,t,i,s,l)=>{l?e.fixed=l.fixed:(r&&(e.renderSortNumber=t+1),u&&(e.fixed=e.renderFixed)),d&&e.renderVisible&&(!e.children||e.children.length)&&e.renderResizeWidth!==e.renderWidth&&(e.resizeWidth=e.renderResizeWidth,e.renderWidth=e.renderResizeWidth),o&&(e.visible=e.renderVisible)}),e.isCustomStatus=!0,e.isDragColMove=!0,setTimeout(()=>{e.isDragColMove=!1},1e3),this.saveCustomStore("confirm")},_cancelCustom(){var{customStore:e,customOpts:t,customColumnList:i}=this;let{oldSortMaps:l,oldFixedMaps:o,oldVisibleMaps:r}=e,{allowVisible:u,allowSort:d,allowFixed:a,allowResizable:m}=t;return _xeUtils.default.eachTree(i,e=>{var t=e.getKey(),i=!!r[t],s=o[t]||"";u&&(e.renderVisible=i,e.visible=i),a&&(e.renderFixed=s,e.fixed=s),d&&(e.renderSortNumber=l[t]||0),m&&(e.renderResizeWidth=e.renderWidth)},{children:"children"}),this.$nextTick()},_resetCustom(e){var t=this,i=t,{collectColumn:s,customOpts:l}=t;let o=l.checkMethod,r=Object.assign({visible:!0,resizable:!0===e,fixed:!0===e,sort:!0===e},e);return _xeUtils.default.eachTree(s,e=>{r.resizable&&(e.resizeWidth=0),r.fixed&&(e.fixed=e.defaultFixed),r.sort&&(e.renderSortNumber=e.sortNumber),o&&!o({column:e})||(e.visible=e.defaultVisible),e.renderResizeWidth=e.renderWidth}),i.isCustomStatus=!1,t.saveCustomStore("reset"),t.handleCustom()},_toggleCustomAllCheckbox(){var e=this.customStore,e=!e.isAll;return this.setCustomAllCheckbox(e)},_setCustomAllCheckbox(e){var t=this,i=t,s=this.customStore,{customColumnList:l,customOpts:o}=this;let{checkMethod:r,visibleMethod:u}=o,d=!!e;o.immediate?(_xeUtils.default.eachTree(l,e=>{u&&!u({column:e})||r&&!r({column:e})||(e.visible=d,e.renderVisible=d,e.halfVisible=!1)}),s.isAll=d,i.isCustomStatus=!0,t.handleCustom(),t.saveCustomStore("update:visible")):(_xeUtils.default.eachTree(l,e=>{u&&!u({column:e})||r&&!r({column:e})||(e.renderVisible=d,e.halfVisible=!1)}),s.isAll=d),t.checkCustomStatus()},calcMaxHeight(){var{$el:e,customStore:t}=this;let i=0;e&&(i=e.clientHeight-28),t.maxHeight=Math.max(88,i)},checkCustomStatus(){var{customStore:e,collectColumn:t,customOpts:i}=this;let s=i.checkMethod;e.isAll=t.every(e=>!!s&&!s({column:e})||e.renderVisible),e.isIndeterminate=!e.isAll&&t.some(e=>(!s||s({column:e}))&&(e.renderVisible||e.halfVisible))},emitCustomEvent(e,t){var i=this.$xeGrid;(i||this).$emit("custom",{type:e,$table:this,$grid:i,$event:t})},triggerCustomEvent(e){var t=this.customStore;t.visible?(this.closeCustom(),this.emitCustomEvent("close",e)):(t.btnEl=e.target,this.openCustom(),this.emitCustomEvent("open",e))},customOpenEvent(e){var t=this.customStore;t.visible||(t.activeBtn=!0,t.btnEl=e.target,this.openCustom(),this.emitCustomEvent("open",e))},customCloseEvent(e){var t=this.customStore;t.visible&&(t.activeBtn=!1,this.closeCustom(),this.emitCustomEvent("close",e))},handleUpdateCustomColumn(){var e=this,t=e.customStore,o=this.collectColumn;if(t.visible){let i={},s={},l={};_xeUtils.default.eachTree(o,e=>{var t=e.getKey();e.renderFixed=e.fixed,e.renderVisible=e.visible,e.renderResizeWidth=e.renderWidth,i[t]=e.renderSortNumber,s[t]=e.fixed,l[t]=e.visible}),t.oldSortMaps=i,t.oldFixedMaps=s,t.oldVisibleMaps=l,e.customColumnList=o.slice(0)}}}};
1
+ Object.defineProperty(exports,"__esModule",{value:!0}),exports.default=void 0;var _xeUtils=_interopRequireDefault(require("xe-utils"));function _interopRequireDefault(e){return e&&e.__esModule?e:{default:e}}function calcMaxHeight(e){var t=e.customStore,e=e.$refs.refElem;let i=0;e&&(i=e.clientHeight-28),t.maxHeight=Math.max(88,i)}function emitCustomEvent(e,t,i){(e.$xeGrid||e).dispatchEvent("custom",{type:t},i)}var _default=exports.default={methods:{_openCustom(){let e=this;var{initStore:t,customStore:i}=e;return i.visible=!0,t.custom=!0,e.handleUpdateCustomColumn(),e.checkCustomStatus(),calcMaxHeight(e),e.$nextTick().then(()=>calcMaxHeight(e))},_closeCustom(){var e=this,t=e.customStore,i=e.computeCustomOpts;return t.visible&&(t.visible=!1,i.immediate||e.handleCustom()),e.$nextTick()},_saveCustom(){let e=this;var{customOpts:t,customColumnList:i}=this;let{allowVisible:o,allowSort:r,allowFixed:u,allowResizable:a}=t;return _xeUtils.default.eachTree(i,(e,t,i,s,l)=>{l?e.fixed=l.fixed:(r&&(e.renderSortNumber=t+1),u&&(e.fixed=e.renderFixed)),a&&e.renderVisible&&(!e.children||e.children.length)&&e.renderResizeWidth!==e.renderWidth&&(e.resizeWidth=e.renderResizeWidth,e.renderWidth=e.renderResizeWidth),o&&(e.visible=e.renderVisible)}),e.isCustomStatus=!0,e.isDragColMove=!0,setTimeout(()=>{e.isDragColMove=!1},1e3),this.saveCustomStore("confirm")},_cancelCustom(){var e=this,{customColumnList:t,customStore:i}=e;let{oldSortMaps:l,oldFixedMaps:o,oldVisibleMaps:r}=i,{allowVisible:u,allowSort:a,allowFixed:m,allowResizable:d}=e.computeCustomOpts;return _xeUtils.default.eachTree(t,e=>{var t=e.getKey(),i=!!r[t],s=o[t]||"";u&&(e.renderVisible=i,e.visible=i),m&&(e.renderFixed=s,e.fixed=s),a&&(e.renderSortNumber=l[t]||0),d&&(e.renderResizeWidth=e.renderWidth)},{children:"children"}),e.$nextTick()},_resetCustom(e){let t=this;var i=t,s=t.collectColumn;let l=t.computeCustomOpts.checkMethod,o=Object.assign({visible:!0,resizable:!0===e,fixed:!0===e,sort:!0===e},e);return _xeUtils.default.eachTree(s,e=>{o.resizable&&(e.resizeWidth=0),o.fixed&&(e.fixed=e.defaultFixed),o.sort&&(e.renderSortNumber=e.sortNumber),l&&!l({$table:t,column:e})||(e.visible=e.defaultVisible),e.renderResizeWidth=e.renderWidth}),i.isCustomStatus=!1,t.saveCustomStore("reset"),t.handleCustom()},_toggleCustomAllCheckbox(){var e=this.customStore,e=!e.isAll;return this.setCustomAllCheckbox(e)},_setCustomAllCheckbox(e){let t=this;var i=t,s=i.customStore,l=i.customColumnList,o=t.computeCustomOpts;let{checkMethod:r,visibleMethod:u}=o,a=!!e;o.immediate?(_xeUtils.default.eachTree(l,e=>{u&&!u({$table:t,column:e})||r&&!r({$table:t,column:e})||(e.visible=a,e.renderVisible=a,e.halfVisible=!1)}),s.isAll=a,i.isCustomStatus=!0,t.handleCustom(),t.saveCustomStore("update:visible")):(_xeUtils.default.eachTree(l,e=>{u&&!u({$table:t,column:e})||r&&!r({$table:t,column:e})||(e.renderVisible=a,e.halfVisible=!1)}),s.isAll=a),t.checkCustomStatus()},checkCustomStatus(){let t=this;var e=t.customStore,i=t.collectColumn;let s=t.computeCustomOpts.checkMethod;e.isAll=i.every(e=>!!s&&!s({$table:t,column:e})||e.renderVisible),e.isIndeterminate=!e.isAll&&i.some(e=>(!s||s({$table:t,column:e}))&&(e.renderVisible||e.halfVisible))},emitCustomEvent(e,t){(this.$xeGrid||this).dispatchEvent("custom",{type:e},t)},triggerCustomEvent(e){var t=this.customStore;t.visible?(this.closeCustom(),emitCustomEvent(this,"close",e)):(t.btnEl=e.target,this.openCustom(),emitCustomEvent(this,"open",e))},customOpenEvent(e){var t=this.customStore;t.visible&&(t.activeBtn=!0,t.btnEl=e.target,this.openCustom(),emitCustomEvent(this,"open",e))},customCloseEvent(e){var t=this.customStore;t.visible&&(t.activeBtn=!1,this.closeCustom(),emitCustomEvent(this,"close",e))},handleUpdateCustomColumn(){var e=this,t=e.customStore,o=this.collectColumn;if(t.visible){let i={},s={},l={};_xeUtils.default.eachTree(o,e=>{var t=e.getKey();e.renderFixed=e.fixed,e.renderVisible=e.visible,e.renderResizeWidth=e.renderWidth,i[t]=e.renderSortNumber,s[t]=e.fixed,l[t]=e.visible}),t.oldSortMaps=i,t.oldFixedMaps=s,t.oldVisibleMaps=l,e.customColumnList=o.slice(0)}}}};
@@ -143,6 +143,7 @@ const renderSimplePanel = (h, _vm) => {
143
143
  };
144
144
  _xeUtils.default.eachTree(customColumnList, (column, index, items, path, parent) => {
145
145
  const isVisible = visibleMethod ? visibleMethod({
146
+ $table: $xeTable,
146
147
  column
147
148
  }) : true;
148
149
  if (isVisible) {
@@ -151,6 +152,7 @@ const renderSimplePanel = (h, _vm) => {
151
152
  const isColGroup = column.children && column.children.length;
152
153
  const colTitle = (0, _utils.formatText)(column.getTitle(), 1);
153
154
  const isDisabled = checkMethod ? !checkMethod({
155
+ $table: $xeTable,
154
156
  column
155
157
  }) : false;
156
158
  const isHidden = !isChecked;
@@ -404,6 +406,7 @@ const renderPopupPanel = (h, _vm) => {
404
406
  };
405
407
  _xeUtils.default.eachTree(customColumnList, (column, index, items, path, parent) => {
406
408
  const isVisible = visibleMethod ? visibleMethod({
409
+ $table: $xeTable,
407
410
  column
408
411
  }) : true;
409
412
  if (isVisible) {
@@ -430,6 +433,7 @@ const renderPopupPanel = (h, _vm) => {
430
433
  const colTitle = (0, _utils.formatText)(column.getTitle(), 1);
431
434
  const isColGroup = column.children && column.children.length;
432
435
  const isDisabled = checkMethod ? !checkMethod({
436
+ $table: $xeTable,
433
437
  column
434
438
  }) : false;
435
439
  const isHidden = !isChecked;
@@ -1161,7 +1165,7 @@ var _default = exports.default = {
1161
1165
  isToChildDrag
1162
1166
  } = columnDragOpts;
1163
1167
  const optEl = evnt.currentTarget;
1164
- const hasCtrlKey = evnt.ctrlKey;
1168
+ const isControlKey = (0, _dom.hasControlKey)(evnt);
1165
1169
  const colid = optEl.getAttribute('colid');
1166
1170
  const column = $xeTable.getColumnById(colid);
1167
1171
  // 是否移入有效列
@@ -1173,7 +1177,7 @@ var _default = exports.default = {
1173
1177
  showDropTip(this, evnt, optEl, false, dragPos);
1174
1178
  return;
1175
1179
  }
1176
- this.prevDragToChild = !!(isCrossDrag && isToChildDrag && hasCtrlKey && immediate);
1180
+ this.prevDragToChild = !!(isCrossDrag && isToChildDrag && isControlKey && immediate);
1177
1181
  this.prevDragCol = column;
1178
1182
  this.prevDragPos = dragPos;
1179
1183
  showDropTip(this, evnt, optEl, true, dragPos);
@@ -1 +1 @@
1
- Object.defineProperty(exports,"__esModule",{value:!0}),exports.default=void 0;var _ui=require("../../../ui"),_utils=require("../../../ui/src/utils"),_dom=require("../../../ui/src/dom"),_log=require("../../../ui/src/log"),_xeUtils=_interopRequireDefault(require("xe-utils"));function _interopRequireDefault(e){return e&&e.__esModule?e:{default:e}}let{getI18n,getIcon,renderEmptyElement}=_ui.VxeUI;function showDropTip(e,t,l,o,s){var i,r,a=e.prevDragToChild,n=e.$refs.bodyElemRef;n&&(i=n.getBoundingClientRect(),l&&(r=e.$refs.refDragLineElem)&&(o?(l=l.getBoundingClientRect(),r.style.display="block",r.style.top=Math.max(1,l.y+n.scrollTop-i.y)+"px",r.style.height=l.height+"px",r.style.width=l.width+"px",r.setAttribute("drag-pos",s),r.setAttribute("drag-to-child",a?"y":"n")):r.style.display=""),l=e.$refs.refDragTipElem)&&(l.style.display="block",l.style.top=Math.min(n.clientHeight+n.scrollTop-l.clientHeight,t.clientY+n.scrollTop-i.y)+"px",l.style.left=Math.min(n.clientWidth+n.scrollLeft-l.clientWidth,t.clientX+n.scrollLeft-i.x)+"px",l.setAttribute("drag-status",o?a?"sub":"normal":"disabled"))}function hideDropTip(e){var t=e.$refs.refDragTipElem,e=e.$refs.refDragLineElem;t&&(t.style.display=""),e&&(e.style.display="")}let renderDragTip=(e,t)=>{var t=t.$xeTable,l=t.dragColumnRef;return e("div",{},[e("div",{ref:"refDragLineElem",class:["vxe-table-custom-popup--drag-line",{"is--guides":t.computeColumnDragOpts.showGuidesStatus}]}),e("div",{ref:"refDragTipElem",class:"vxe-table-custom-popup--drag-tip"},[e("div",{class:"vxe-table-custom-popup--drag-tip-wrapper"},[e("div",{class:"vxe-table-custom-popup--drag-tip-status"},[e("span",{class:["vxe-table-custom-popup--drag-tip-normal-status",getIcon().TABLE_DRAG_STATUS_ROW]}),e("span",{class:["vxe-table-custom-popup--drag-tip-sub-status",getIcon().TABLE_DRAG_STATUS_SUB_ROW]}),e("span",{class:["vxe-table-custom-popup--drag-tip-disabled-status",getIcon().TABLE_DRAG_DISABLED]})]),e("div",{class:"vxe-table-custom-popup--drag-tip-content"},getI18n("vxe.custom.cstmDragTarget",[l&&"html"!==l.type?l.getTitle():""]))])])])},renderSimplePanel=(d,m)=>{let u=_ui.VxeUI.getComponent("VxeButton");let p=m.$xeTable;var e=p,t=p.$xeGrid,l=m.customStore,{isCustomStatus:e,customColumnList:o}=e,s=p.computeCustomOpts;let v=s.immediate;var i=p.computeColumnDragOpts,r=l.maxHeight;let{checkMethod:x,visibleMethod:g,allowVisible:h,allowSort:b,allowFixed:C,trigger:a,placement:n}=s,E=p.computeIsMaxFixedColumn,T=i.isCrossDrag;var i=s.slots||{},c=i.header,f=i.top,I=i.bottom,_=i.default,i=i.footer;let D=[];var y={},O=l.isAll,k=l.isIndeterminate,t=("hover"===a&&(y.mouseenter=m.handleWrapperMouseenterEvent,y.mouseleave=m.handleWrapperMouseleaveEvent),{$table:p,$grid:t,columns:o,isAllChecked:O,isAllIndeterminate:k,isCustomStatus:e});return _xeUtils.default.eachTree(o,(t,e,l,o,s)=>{if(!g||g({column:t})){var i=t.renderVisible,r=t.halfVisible,a=t.children&&t.children.length,n=(0,_utils.formatText)(t.getTitle(),1);let e=!!x&&!x({column:t});var c=!i;D.push(d("li",{key:t.id,attrs:{colid:t.id},class:["vxe-table-custom--option","level--"+t.level,{"is--hidden":e||c,"is--group":a}],on:{dragstart:m.sortDragstartEvent,dragend:m.sortDragendEvent,dragover:m.sortDragoverEvent}},[h?d("div",{class:["vxe-table-custom--checkbox-option",{"is--checked":i,"is--indeterminate":r,"is--disabled":e}],attrs:{title:getI18n("vxe.custom.setting.colVisible")},on:{click:()=>{e||m.changeCheckboxOption(t)}}},[d("span",{class:["vxe-checkbox--icon",r?getIcon().TABLE_CHECKBOX_INDETERMINATE:i?getIcon().TABLE_CHECKBOX_CHECKED:getIcon().TABLE_CHECKBOX_UNCHECKED]})]):renderEmptyElement(p),d("div",{class:"vxe-table-custom--name-option"},[b&&(T&&v||1===t.level)?d("div",{class:"vxe-table-custom--sort-option"},[d("span",{class:["vxe-table-custom--sort-btn",{"is--disabled":e||c||t.renderFixed}],attrs:{title:getI18n("vxe.custom.setting.sortHelpTip")},on:e||c||t.renderFixed?{}:{mousedown:m.sortMousedownEvent,mouseup:m.sortMouseupEvent}},[d("i",{class:getIcon().TABLE_CUSTOM_SORT})])]):renderEmptyElement(p),"html"===t.type?d("div",{key:"1",class:"vxe-table-custom--checkbox-label",domProps:{innerHTML:n}}):d("div",{key:"0",class:"vxe-table-custom--checkbox-label",attrs:{title:n}},n)]),!s&&C?d("div",{class:"vxe-table-custom--fixed-option"},[d(u,{props:{mode:"text",icon:"left"===t.renderFixed?getIcon().TOOLBAR_TOOLS_FIXED_LEFT_ACTIVE:getIcon().TOOLBAR_TOOLS_FIXED_LEFT,status:"left"===t.renderFixed?"primary":"",disabled:e||c||E&&!t.renderFixed,title:getI18n("left"===t.renderFixed?"vxe.toolbar.cancelFixed":"vxe.toolbar.fixedLeft")},on:{click:()=>{m.changeFixedOption(t,"left")}}}),d(u,{props:{mode:"text",icon:"right"===t.renderFixed?getIcon().TOOLBAR_TOOLS_FIXED_RIGHT_ACTIVE:getIcon().TOOLBAR_TOOLS_FIXED_RIGHT,status:"right"===t.renderFixed?"primary":"",disabled:e||c||E&&!t.renderFixed,title:getI18n("right"===t.renderFixed?"vxe.toolbar.cancelFixed":"vxe.toolbar.fixedRight")},on:{click:()=>{m.changeFixedOption(t,"right")}}})]):renderEmptyElement(p)]))}}),d("div",{key:"simple",class:["vxe-table-custom-wrapper","placement--"+n,{"is--active":l.visible}],style:r&&!["left","right"].includes(n||"")?{maxHeight:r+"px"}:{}},l.visible?[d("div",{class:"vxe-table-custom--header"},c?p.callSlot(c,t,d):[d("ul",{class:"vxe-table-custom--panel-list"},[d("li",{class:"vxe-table-custom--option"},[h?d("div",{class:["vxe-table-custom--checkbox-option",{"is--checked":O,"is--indeterminate":k}],attrs:{title:getI18n("vxe.table.allTitle")},on:{click:m.allOptionEvent}},[d("span",{class:["vxe-checkbox--icon",k?getIcon().TABLE_CHECKBOX_INDETERMINATE:O?getIcon().TABLE_CHECKBOX_CHECKED:getIcon().TABLE_CHECKBOX_UNCHECKED]}),d("span",{class:"vxe-checkbox--label"},getI18n("vxe.toolbar.customAll"))]):d("span",{class:"vxe-checkbox--label"},getI18n("vxe.table.customTitle"))])])]),d("div",{ref:"bodyElemRef",class:"vxe-table-custom--body"},[f?d("div",{class:"vxe-table-custom--panel-top"},p.callSlot(f,t,d)):renderEmptyElement(p),_?d("div",{class:"vxe-table-custom--panel-body"},p.callSlot(_,t,d)):d("transition-group",{class:"vxe-table-custom--panel-list",props:{name:"vxe-table-custom--list",tag:"ul"},on:y},D),I?d("div",{class:"vxe-table-custom--panel-bottom"},p.callSlot(I,t,d)):renderEmptyElement(p),renderDragTip(d,m)]),s.showFooter?d("div",{class:"vxe-table-custom--footer"},i?p.callSlot(i,t,d):[d("div",{class:"vxe-table-custom--footer-buttons"},[d(u,{props:{mode:"text",content:s.resetButtonText||getI18n("vxe.table.customRestore"),disabled:!e},on:{click:m.resetCustomEvent}}),v?d(u,{props:{mode:"text",content:s.closeButtonText||getI18n("vxe.table.customClose")},on:{click:m.cancelCloseEvent}}):d(u,{props:{mode:"text",content:s.resetButtonText||getI18n("vxe.table.customCancel")},on:{click:m.cancelCustomEvent}}),v?renderEmptyElement(p):d(u,{props:{mode:"text",status:"primary",content:s.confirmButtonText||getI18n("vxe.table.customConfirm")},on:{click:m.confirmCustomEvent}})])]):null]:[])},renderPopupPanel=(d,m)=>{var e=_ui.VxeUI.getComponent("VxeModal"),t=_ui.VxeUI.getComponent("VxeDrawer");let l=_ui.VxeUI.getComponent("VxeButton"),u=_ui.VxeUI.getComponent("VxeInput"),p=m,v=m.$xeTable;var o=v,s=v,i=v.$xeGrid;let r=m.customStore,L=o.resizable,{isCustomStatus:a,customColumnList:n}=s,c=v.computeCustomOpts,x=c.immediate;o=v.computeColumnDragOpts;let{mode:M,modalOptions:R,drawerOptions:$,allowVisible:g,allowSort:H,allowFixed:h,allowResizable:b,checkMethod:C,visibleMethod:E}=c,T=v.computeColumnOpts,f=T.maxFixedSize,{minWidth:I,maxWidth:_}=v.computeResizableOpts;var s=Object.assign({},R),D=Object.assign({},$);let y=v.computeIsMaxFixedColumn,W=o.isCrossDrag;o=c.slots||{};let O=o.header,k=o.top,w=o.bottom,S=o.default,B=o.footer,A=[],U=r.isAll,V=r.isIndeterminate,F={$table:v,$grid:i,columns:n,isAllChecked:U,isAllIndeterminate:V,isCustomStatus:a};_xeUtils.default.eachTree(n,(o,s,e,t,i)=>{if(!E||E({column:o})){let e=0,t=0;b&&(s={$table:v,column:o,columnIndex:s,$columnIndex:s,$rowIndex:-1},I&&(e=_xeUtils.default.toNumber(_xeUtils.default.isFunction(I)?I(s):I)),_)&&(t=_xeUtils.default.toNumber(_xeUtils.default.isFunction(_)?_(s):_));var s=o.renderVisible,r=o.halfVisible,a=(0,_utils.formatText)(o.getTitle(),1),n=o.children&&o.children.length;let l=!!C&&!C({column:o});var c=!s;A.push(d("tr",{key:o.id,attrs:{colid:o.id},class:["vxe-table-custom-popup--row level--"+o.level,{"is--group":n}],on:{dragstart:m.sortDragstartEvent,dragend:m.sortDragendEvent,dragover:m.sortDragoverEvent}},[g?d("td",{class:"vxe-table-custom-popup--column-item col--visible"},[d("div",{class:["vxe-table-custom--checkbox-option",{"is--checked":s,"is--indeterminate":r,"is--disabled":l}],attrs:{title:getI18n("vxe.custom.setting.colVisible")},on:{click:()=>{l||m.changeCheckboxOption(o)}}},[d("span",{class:["vxe-checkbox--icon",r?getIcon().TABLE_CHECKBOX_INDETERMINATE:s?getIcon().TABLE_CHECKBOX_CHECKED:getIcon().TABLE_CHECKBOX_UNCHECKED]})])]):renderEmptyElement(v),d("td",{class:"vxe-table-custom-popup--column-item col--name"},[d("div",{class:"vxe-table-custom-popup--name"},[H?W&&x||1===o.level?d("div",{class:["vxe-table-custom-popup--column-sort-btn",{"is--disabled":l||c||o.renderFixed}],attrs:{title:getI18n("vxe.custom.setting.sortHelpTip")},on:l||c||o.renderFixed?{}:{mousedown:m.sortMousedownEvent,mouseup:m.sortMouseupEvent}},[d("i",{class:getIcon().TABLE_CUSTOM_SORT})]):d("div",{class:"vxe-table-custom-popup--column-sort-placeholder"}):renderEmptyElement(v),"html"===o.type?d("div",{key:"1",class:"vxe-table-custom-popup--title",domProps:{innerHTML:a}}):d("div",{key:"0",class:"vxe-table-custom-popup--title",attrs:{title:a}},a)])]),b?d("td",{class:"vxe-table-custom-popup--column-item col--resizable"},[o.children&&o.children.length||!(_xeUtils.default.isBoolean(o.resizable)?o.resizable:T.resizable||L)?d("span","-"):u?d(u,{props:{type:"integer",immediate:!1,disabled:l||c,value:o.renderResizeWidth,min:e||void 0,max:t||void 0},on:{modelValue(e){o.renderResizeWidth=Math.max(0,Number(e))},change(){m.changeColumnWidth(o)}}}):renderEmptyElement(p)]):renderEmptyElement(v),h?d("td",{class:"vxe-table-custom-popup--column-item col--fixed"},[i?d("span","-"):d("vxe-radio-group",{props:{value:o.renderFixed||"",type:"button",size:"mini",disabled:l||c,options:[{label:getI18n("vxe.custom.setting.fixedLeft"),value:"left",disabled:l||c||y},{label:getI18n("vxe.custom.setting.fixedUnset"),value:"",disabled:l||c},{label:getI18n("vxe.custom.setting.fixedRight"),value:"right",disabled:l||c||y}]},on:{input(e){m.changeFixedOption(o,e)}}})]):renderEmptyElement(v)]))}});o={default:()=>S?v.callSlot(S,F,d):d("div",{ref:"bodyElemRef",class:"vxe-table-custom-popup--body"},[k?d("div",{class:"vxe-table-custom-popup--table-top"},v.callSlot(k,F,d)):renderEmptyElement(v),d("div",{class:"vxe-table-custom-popup--table-wrapper"},[d("table",{},[d("colgroup",{},[g?d("col",{class:"vxe-table-custom-popup--table-col-seq"}):renderEmptyElement(v),d("col",{class:"vxe-table-custom-popup--table-col-title"}),b?d("col",{class:"vxe-table-custom-popup--table-col-width"}):renderEmptyElement(v),h?d("col",{class:"vxe-table-custom-popup--table-col-fixed"}):renderEmptyElement(v)]),d("thead",{},[d("tr",{},[g?d("th",{},[d("div",{class:["vxe-table-custom--checkbox-option",{"is--checked":U,"is--indeterminate":V}],attrs:{title:getI18n("vxe.table.allTitle")},on:{click:m.allOptionEvent}},[d("span",{class:["vxe-checkbox--icon",V?getIcon().TABLE_CHECKBOX_INDETERMINATE:U?getIcon().TABLE_CHECKBOX_CHECKED:getIcon().TABLE_CHECKBOX_UNCHECKED]}),d("span",{class:"vxe-checkbox--label"},getI18n("vxe.toolbar.customAll"))])]):renderEmptyElement(v),d("th",{},getI18n("vxe.custom.setting.colTitle")),b?d("th",{},getI18n("vxe.custom.setting.colResizable")):renderEmptyElement(v),h?d("th",{},getI18n("vxe.custom.setting."+(f?"colFixedMax":"colFixed"),[f])):renderEmptyElement(v)])]),d("transition-group",{class:"vxe-table-custom--panel-list",props:{tag:"tbody",name:"vxe-table-custom--list"}},A)])]),w?d("div",{class:"vxe-table-custom-popup--table-bottom"},v.callSlot(w,F,d)):renderEmptyElement(v),renderDragTip(d,m)]),footer:()=>B?v.callSlot(B,F,d):d("div",{class:"vxe-table-custom-popup--footer"},[d(l,{props:{content:c.resetButtonText||getI18n("vxe.custom.cstmRestore"),disabled:!a},on:{click:m.resetCustomEvent}}),x?d(l,{props:{content:c.resetButtonText||getI18n("vxe.table.customClose")},on:{click:m.cancelCloseEvent}}):d(l,{props:{content:c.resetButtonText||getI18n("vxe.custom.cstmCancel")},on:{click:m.cancelCustomEvent}}),x?renderEmptyElement(v):d(l,{props:{status:"primary",content:c.confirmButtonText||getI18n("vxe.custom.cstmConfirm")},on:{click:m.confirmCustomEvent}})])};return O&&(o.header=()=>v.callSlot(O,F,d)),"drawer"===M?t?d(t,{key:"drawer",props:{className:["vxe-table-custom-drawer-wrapper","vxe-table--ignore-clear",D.className||""].join(" "),value:r.visible,title:D.title||getI18n("vxe.custom.cstmTitle"),width:D.width||Math.min(880,Math.floor(.6*document.documentElement.clientWidth)),position:D.position,resize:!!D.resize,escClosable:!!D.escClosable,maskClosable:!!D.maskClosable,destroyOnClose:!0,showFooter:!0},on:{input(e){r.visible=e}},scopedSlots:o}):renderEmptyElement(p):e?d(e,{key:"modal",props:{className:["vxe-table-custom-popup-wrapper","vxe-table--ignore-clear",s.className||""].join(" "),value:r.visible,title:s.title||getI18n("vxe.custom.cstmTitle"),width:s.width||Math.min(880,document.documentElement.clientWidth),minWidth:s.minWidth||700,height:s.height||Math.min(680,document.documentElement.clientHeight),minHeight:s.minHeight||400,showZoom:s.showZoom,showMaximize:s.showMaximize,showMinimize:s.showMinimize,mask:s.mask,lockView:s.lockView,resize:s.resize,escClosable:!!s.escClosable,maskClosable:!!s.maskClosable,destroyOnClose:!0,showFooter:!0},on:{input(e){r.visible=e}},scopedSlots:o}):renderEmptyElement(p)};var _default=exports.default={name:"VxeTableCustomPanel",props:{customStore:{type:Object,default:()=>({})}},inject:{$xeTable:{default:null}},data(){return{prevDragCol:void 0,prevDragToChild:!1,prevDragPos:null}},computed:{},created(){let t=_ui.VxeUI.getComponent("VxeModal"),l=_ui.VxeUI.getComponent("VxeDrawer"),o=_ui.VxeUI.getComponent("VxeButton"),s=_ui.VxeUI.getComponent("VxeNumberInput"),i=_ui.VxeUI.getComponent("VxeRadioGroup");this.$nextTick(()=>{var e=this.$xeTable.customOpts,e=e.mode;t||(0,_log.errLog)("vxe.error.reqComp",["vxe-modal"]),l||"drawer"!==e||(0,_log.errLog)("vxe.error.reqComp",["vxe-drawer"]),o||(0,_log.errLog)("vxe.error.reqComp",["vxe-button"]),s||(0,_log.errLog)("vxe.error.reqComp",["vxe-input"]),i||(0,_log.errLog)("vxe.error.reqComp",["vxe-radio-group"])})},render(e){var t=this.$xeTable.computeCustomOpts;return(["modal","drawer","popup"].includes(""+t.mode)?renderPopupPanel:renderSimplePanel)(e,this)},methods:{handleWrapperMouseenterEvent(e){var t=this.$xeTable,l=this.customStore;l.activeWrapper=!0,t.customOpenEvent(e)},handleWrapperMouseleaveEvent(e){let t=this.$xeTable,l=this.customStore;l.activeWrapper=!1,setTimeout(()=>{l.activeBtn||l.activeWrapper||t.customCloseEvent(e)},300)},getStoreData(){return{}},confirmCustomEvent({$event:e}){var t=this.$xeTable;t.isCustomStatus=!0,t.saveCustom(),t.closeCustom(),t.emitCustomEvent("confirm",e)},cancelCloseEvent({$event:e}){var t=this.$xeTable;t.closeCustom(),t.emitCustomEvent("close",e)},cancelCustomEvent({$event:e}){var t=this.$xeTable;t.cancelCustom(),t.closeCustom(),t.emitCustomEvent("cancel",e)},handleResetCustomEvent(e){var t=this.$xeTable;t.resetCustom(!0),t.closeCustom(),t.emitCustomEvent("reset",e)},resetCustomEvent(t){_ui.VxeUI.modal?_ui.VxeUI.modal.confirm({content:getI18n("vxe.custom.cstmConfirmRestore"),className:"vxe-table--ignore-clear",escClosable:!0}).then(e=>{"confirm"===e&&this.handleResetCustomEvent(t)}):this.handleResetCustomEvent(t)},resetPopupCustomEvent(t){_ui.VxeUI.modal?_ui.VxeUI.modal.confirm({content:getI18n("vxe.custom.cstmConfirmRestore"),className:"vxe-table--ignore-clear",escClosable:!0}).then(e=>{"confirm"===e&&this.resetCustomEvent(t)}):this.resetCustomEvent(t)},handleOptionCheck(t){var e=this.$xeTable.customColumnList,e=_xeUtils.default.findTree(e,e=>e===t);e&&e.parent&&(e=e.parent,e.children)&&e.children.length&&(e.visible=e.children.every(e=>e.visible),e.halfVisible=!e.visible&&e.children.some(e=>e.visible||e.halfVisible),this.handleOptionCheck(e))},changeCheckboxOption(e){var t=this.$xeTable,l=t,o=t.computeCustomOpts;let s=!e.renderVisible;o.immediate?(_xeUtils.default.eachTree([e],e=>{e.visible=s,e.renderVisible=s,e.halfVisible=!1}),l.isCustomStatus=!0,t.handleCustom(),t.saveCustomStore("update:visible")):_xeUtils.default.eachTree([e],e=>{e.renderVisible=s,e.halfVisible=!1}),this.handleOptionCheck(e),t.checkCustomStatus()},changeColumnWidth(e){var t=this.$xeTable,l=t;t.computeCustomOpts.immediate&&e.renderResizeWidth!==e.renderWidth&&(e.resizeWidth=e.renderResizeWidth,e.renderWidth=e.renderResizeWidth,l.isCustomStatus=!0,t.handleCustom(),t.saveCustomStore("update:width"))},changeFixedOption(e,t){var l=this.$xeTable,o=l,s=l.computeIsMaxFixedColumn;l.computeCustomOpts.immediate?(e.renderFixed===t?_xeUtils.default.eachTree([e],e=>{e.fixed="",e.renderFixed=""}):s&&!e.renderFixed||_xeUtils.default.eachTree([e],e=>{e.fixed=t,e.renderFixed=t}),o.isCustomStatus=!0,l.handleCustom(),l.saveCustomStore("update:fixed")):e.renderFixed===t?_xeUtils.default.eachTree([e],e=>{e.renderFixed=""}):s&&!e.renderFixed||_xeUtils.default.eachTree([e],e=>{e.renderFixed=t})},allOptionEvent(){this.$xeTable.toggleCustomAllCheckbox()},sortMousedownEvent(e){var t=this.$xeTable,e=e.currentTarget.parentElement.parentElement.parentElement,l=e.getAttribute("colid"),t=t.getColumnById(l);e.draggable=!0,this.dragCol=t,(0,_dom.addClass)(e,"active--drag-origin")},sortMouseupEvent(e){e=e.currentTarget.parentElement.parentElement.parentElement;hideDropTip(this),e.draggable=!1,(this.dragCol=null,_dom.removeClass)(e,"active--drag-origin")},sortDragstartEvent(e){e.dataTransfer&&e.dataTransfer.setDragImage((0,_dom.getTpImg)(),0,0)},sortDragendEvent(d){let m=this.$xeTable;var e=m;let u=m;var t=m;let{dragCol:l,prevDragPos:p,prevDragCol:o,prevDragToChild:v}=this,x=e.mouseConfig,g=u.customColumnList,h=t.collectColumn,b=m.computeCustomOpts.immediate;e=d.currentTarget;let{isCrossDrag:C,isSelfToChildDrag:E,isToChildDrag:T,dragEndMethod:s}=m.computeColumnDragOpts,f="bottom"===p?1:0;if(o&&l&&o!==l){let n=l,c=o;Promise.resolve(!s||s({oldColumn:n,newColumn:c,dragColumn:n,dragPos:p,dragToChild:!!v,offsetIndex:f})).then(s=>{if(s){let e=-1,t=-1,l={},o=(_xeUtils.default.eachTree([n],e=>{l[e.id]=e}),!1);if(b){if(n.parentId&&c.parentId){if(!C)return;if(l[c.id]&&(o=!0,!C||!E))return void(_ui.VxeUI.modal&&_ui.VxeUI.modal.message({status:"error",content:getI18n("vxe.error.treeDragChild")}))}else if(n.parentId){if(!C)return}else if(c.parentId){if(!C)return;if(l[c.id]&&(o=!0,!C||!E))return void(_ui.VxeUI.modal&&_ui.VxeUI.modal.message({status:"error",content:getI18n("vxe.error.treeDragChild")}))}var i,r,a,s=_xeUtils.default.findTree(h,e=>e.id===n.id),s=(o&&C&&E?s&&({items:i,index:a}=s,(r=n.children||[]).forEach(e=>{e.parentId=n.parentId}),i.splice(a,1,...r),n.children=[]):s&&({items:i,index:a,parent:r}=s,i.splice(a,1),r||(e=a)),_xeUtils.default.findTree(h,e=>e.id===c.id));s&&({items:i,index:r,parent:a}=s,C&&T&&v?(n.parentId=c.id,c.children=(c.children||[]).concat([n])):(n.parentId=c.parentId,i.splice(r+f,0,n)),a||(t=r)),_xeUtils.default.eachTree(h,(e,t,l,o,s)=>{s||(e.renderSortNumber=t+1)})}else e=_xeUtils.default.findIndexOf(g,e=>e.id===n.id),g.splice(e,1),t=_xeUtils.default.findIndexOf(g,e=>e.id===c.id),g.splice(t+f,0,n);u.isDragColMove=!0,x&&(m.clearSelected&&m.clearSelected(),m.clearCellAreas)&&(m.clearCellAreas(),m.clearCopyCellArea()),m.dispatchEvent("column-dragend",{oldColumn:n,newColumn:c,dragColumn:n,dragPos:p,offsetIndex:f,_index:{newIndex:t,oldIndex:e}},d),b&&(u.customColumnList=h.slice(0),m.handleColDragSwapColumn())}}).catch(()=>{})}hideDropTip(this),this.dragCol.value=null,e.draggable=!1,e.removeAttribute("drag-pos"),(0,_dom.removeClass)(e,"active--drag-target"),(0,_dom.removeClass)(e,"active--drag-origin")},sortDragoverEvent(e){var t=this.$xeTable,l=this.dragCol,o=t.computeCustomOpts.immediate,{isCrossDrag:s,isToChildDrag:i}=t.computeColumnDragOpts,r=e.currentTarget,a=e.ctrlKey,n=r.getAttribute("colid"),t=t.getColumnById(n);t&&(s||1===t.level)&&(e.preventDefault(),n=e.clientY-r.getBoundingClientRect().y<r.clientHeight/2?"top":"bottom",l&&l.id===t.id||!s&&1<t.level||!o&&1<t.level||t.renderFixed?showDropTip(this,e,r,!1,n):(this.prevDragToChild=!!(s&&i&&a&&o),this.prevDragCol=t,this.prevDragPos=n,showDropTip(this,e,r,!0,n)))}}};
1
+ Object.defineProperty(exports,"__esModule",{value:!0}),exports.default=void 0;var _ui=require("../../../ui"),_utils=require("../../../ui/src/utils"),_dom=require("../../../ui/src/dom"),_log=require("../../../ui/src/log"),_xeUtils=_interopRequireDefault(require("xe-utils"));function _interopRequireDefault(e){return e&&e.__esModule?e:{default:e}}let{getI18n,getIcon,renderEmptyElement}=_ui.VxeUI;function showDropTip(e,t,l,o,s){var i,r,a=e.prevDragToChild,n=e.$refs.bodyElemRef;n&&(i=n.getBoundingClientRect(),l&&(r=e.$refs.refDragLineElem)&&(o?(l=l.getBoundingClientRect(),r.style.display="block",r.style.top=Math.max(1,l.y+n.scrollTop-i.y)+"px",r.style.height=l.height+"px",r.style.width=l.width+"px",r.setAttribute("drag-pos",s),r.setAttribute("drag-to-child",a?"y":"n")):r.style.display=""),l=e.$refs.refDragTipElem)&&(l.style.display="block",l.style.top=Math.min(n.clientHeight+n.scrollTop-l.clientHeight,t.clientY+n.scrollTop-i.y)+"px",l.style.left=Math.min(n.clientWidth+n.scrollLeft-l.clientWidth,t.clientX+n.scrollLeft-i.x)+"px",l.setAttribute("drag-status",o?a?"sub":"normal":"disabled"))}function hideDropTip(e){var t=e.$refs.refDragTipElem,e=e.$refs.refDragLineElem;t&&(t.style.display=""),e&&(e.style.display="")}let renderDragTip=(e,t)=>{var t=t.$xeTable,l=t.dragColumnRef;return e("div",{},[e("div",{ref:"refDragLineElem",class:["vxe-table-custom-popup--drag-line",{"is--guides":t.computeColumnDragOpts.showGuidesStatus}]}),e("div",{ref:"refDragTipElem",class:"vxe-table-custom-popup--drag-tip"},[e("div",{class:"vxe-table-custom-popup--drag-tip-wrapper"},[e("div",{class:"vxe-table-custom-popup--drag-tip-status"},[e("span",{class:["vxe-table-custom-popup--drag-tip-normal-status",getIcon().TABLE_DRAG_STATUS_ROW]}),e("span",{class:["vxe-table-custom-popup--drag-tip-sub-status",getIcon().TABLE_DRAG_STATUS_SUB_ROW]}),e("span",{class:["vxe-table-custom-popup--drag-tip-disabled-status",getIcon().TABLE_DRAG_DISABLED]})]),e("div",{class:"vxe-table-custom-popup--drag-tip-content"},getI18n("vxe.custom.cstmDragTarget",[l&&"html"!==l.type?l.getTitle():""]))])])])},renderSimplePanel=(d,m)=>{let u=_ui.VxeUI.getComponent("VxeButton");let p=m.$xeTable;var e=p,t=p.$xeGrid,l=m.customStore,{isCustomStatus:e,customColumnList:o}=e,s=p.computeCustomOpts;let v=s.immediate;var i=p.computeColumnDragOpts,r=l.maxHeight;let{checkMethod:x,visibleMethod:g,allowVisible:h,allowSort:b,allowFixed:C,trigger:a,placement:n}=s,E=p.computeIsMaxFixedColumn,T=i.isCrossDrag;var i=s.slots||{},c=i.header,f=i.top,I=i.bottom,_=i.default,i=i.footer;let D=[];var y={},O=l.isAll,k=l.isIndeterminate,t=("hover"===a&&(y.mouseenter=m.handleWrapperMouseenterEvent,y.mouseleave=m.handleWrapperMouseleaveEvent),{$table:p,$grid:t,columns:o,isAllChecked:O,isAllIndeterminate:k,isCustomStatus:e});return _xeUtils.default.eachTree(o,(t,e,l,o,s)=>{if(!g||g({$table:p,column:t})){var i=t.renderVisible,r=t.halfVisible,a=t.children&&t.children.length,n=(0,_utils.formatText)(t.getTitle(),1);let e=!!x&&!x({$table:p,column:t});var c=!i;D.push(d("li",{key:t.id,attrs:{colid:t.id},class:["vxe-table-custom--option","level--"+t.level,{"is--hidden":e||c,"is--group":a}],on:{dragstart:m.sortDragstartEvent,dragend:m.sortDragendEvent,dragover:m.sortDragoverEvent}},[h?d("div",{class:["vxe-table-custom--checkbox-option",{"is--checked":i,"is--indeterminate":r,"is--disabled":e}],attrs:{title:getI18n("vxe.custom.setting.colVisible")},on:{click:()=>{e||m.changeCheckboxOption(t)}}},[d("span",{class:["vxe-checkbox--icon",r?getIcon().TABLE_CHECKBOX_INDETERMINATE:i?getIcon().TABLE_CHECKBOX_CHECKED:getIcon().TABLE_CHECKBOX_UNCHECKED]})]):renderEmptyElement(p),d("div",{class:"vxe-table-custom--name-option"},[b&&(T&&v||1===t.level)?d("div",{class:"vxe-table-custom--sort-option"},[d("span",{class:["vxe-table-custom--sort-btn",{"is--disabled":e||c||t.renderFixed}],attrs:{title:getI18n("vxe.custom.setting.sortHelpTip")},on:e||c||t.renderFixed?{}:{mousedown:m.sortMousedownEvent,mouseup:m.sortMouseupEvent}},[d("i",{class:getIcon().TABLE_CUSTOM_SORT})])]):renderEmptyElement(p),"html"===t.type?d("div",{key:"1",class:"vxe-table-custom--checkbox-label",domProps:{innerHTML:n}}):d("div",{key:"0",class:"vxe-table-custom--checkbox-label",attrs:{title:n}},n)]),!s&&C?d("div",{class:"vxe-table-custom--fixed-option"},[d(u,{props:{mode:"text",icon:"left"===t.renderFixed?getIcon().TOOLBAR_TOOLS_FIXED_LEFT_ACTIVE:getIcon().TOOLBAR_TOOLS_FIXED_LEFT,status:"left"===t.renderFixed?"primary":"",disabled:e||c||E&&!t.renderFixed,title:getI18n("left"===t.renderFixed?"vxe.toolbar.cancelFixed":"vxe.toolbar.fixedLeft")},on:{click:()=>{m.changeFixedOption(t,"left")}}}),d(u,{props:{mode:"text",icon:"right"===t.renderFixed?getIcon().TOOLBAR_TOOLS_FIXED_RIGHT_ACTIVE:getIcon().TOOLBAR_TOOLS_FIXED_RIGHT,status:"right"===t.renderFixed?"primary":"",disabled:e||c||E&&!t.renderFixed,title:getI18n("right"===t.renderFixed?"vxe.toolbar.cancelFixed":"vxe.toolbar.fixedRight")},on:{click:()=>{m.changeFixedOption(t,"right")}}})]):renderEmptyElement(p)]))}}),d("div",{key:"simple",class:["vxe-table-custom-wrapper","placement--"+n,{"is--active":l.visible}],style:r&&!["left","right"].includes(n||"")?{maxHeight:r+"px"}:{}},l.visible?[d("div",{class:"vxe-table-custom--header"},c?p.callSlot(c,t,d):[d("ul",{class:"vxe-table-custom--panel-list"},[d("li",{class:"vxe-table-custom--option"},[h?d("div",{class:["vxe-table-custom--checkbox-option",{"is--checked":O,"is--indeterminate":k}],attrs:{title:getI18n("vxe.table.allTitle")},on:{click:m.allOptionEvent}},[d("span",{class:["vxe-checkbox--icon",k?getIcon().TABLE_CHECKBOX_INDETERMINATE:O?getIcon().TABLE_CHECKBOX_CHECKED:getIcon().TABLE_CHECKBOX_UNCHECKED]}),d("span",{class:"vxe-checkbox--label"},getI18n("vxe.toolbar.customAll"))]):d("span",{class:"vxe-checkbox--label"},getI18n("vxe.table.customTitle"))])])]),d("div",{ref:"bodyElemRef",class:"vxe-table-custom--body"},[f?d("div",{class:"vxe-table-custom--panel-top"},p.callSlot(f,t,d)):renderEmptyElement(p),_?d("div",{class:"vxe-table-custom--panel-body"},p.callSlot(_,t,d)):d("transition-group",{class:"vxe-table-custom--panel-list",props:{name:"vxe-table-custom--list",tag:"ul"},on:y},D),I?d("div",{class:"vxe-table-custom--panel-bottom"},p.callSlot(I,t,d)):renderEmptyElement(p),renderDragTip(d,m)]),s.showFooter?d("div",{class:"vxe-table-custom--footer"},i?p.callSlot(i,t,d):[d("div",{class:"vxe-table-custom--footer-buttons"},[d(u,{props:{mode:"text",content:s.resetButtonText||getI18n("vxe.table.customRestore"),disabled:!e},on:{click:m.resetCustomEvent}}),v?d(u,{props:{mode:"text",content:s.closeButtonText||getI18n("vxe.table.customClose")},on:{click:m.cancelCloseEvent}}):d(u,{props:{mode:"text",content:s.resetButtonText||getI18n("vxe.table.customCancel")},on:{click:m.cancelCustomEvent}}),v?renderEmptyElement(p):d(u,{props:{mode:"text",status:"primary",content:s.confirmButtonText||getI18n("vxe.table.customConfirm")},on:{click:m.confirmCustomEvent}})])]):null]:[])},renderPopupPanel=(d,m)=>{var e=_ui.VxeUI.getComponent("VxeModal"),t=_ui.VxeUI.getComponent("VxeDrawer");let l=_ui.VxeUI.getComponent("VxeButton"),u=_ui.VxeUI.getComponent("VxeInput"),p=m,v=m.$xeTable;var o=v,s=v,i=v.$xeGrid;let r=m.customStore,L=o.resizable,{isCustomStatus:a,customColumnList:n}=s,c=v.computeCustomOpts,x=c.immediate;o=v.computeColumnDragOpts;let{mode:M,modalOptions:R,drawerOptions:$,allowVisible:g,allowSort:H,allowFixed:h,allowResizable:b,checkMethod:C,visibleMethod:E}=c,T=v.computeColumnOpts,f=T.maxFixedSize,{minWidth:I,maxWidth:_}=v.computeResizableOpts;var s=Object.assign({},R),D=Object.assign({},$);let y=v.computeIsMaxFixedColumn,W=o.isCrossDrag;o=c.slots||{};let O=o.header,k=o.top,w=o.bottom,S=o.default,B=o.footer,A=[],U=r.isAll,V=r.isIndeterminate,F={$table:v,$grid:i,columns:n,isAllChecked:U,isAllIndeterminate:V,isCustomStatus:a};_xeUtils.default.eachTree(n,(o,s,e,t,i)=>{if(!E||E({$table:v,column:o})){let e=0,t=0;b&&(s={$table:v,column:o,columnIndex:s,$columnIndex:s,$rowIndex:-1},I&&(e=_xeUtils.default.toNumber(_xeUtils.default.isFunction(I)?I(s):I)),_)&&(t=_xeUtils.default.toNumber(_xeUtils.default.isFunction(_)?_(s):_));var s=o.renderVisible,r=o.halfVisible,a=(0,_utils.formatText)(o.getTitle(),1),n=o.children&&o.children.length;let l=!!C&&!C({$table:v,column:o});var c=!s;A.push(d("tr",{key:o.id,attrs:{colid:o.id},class:["vxe-table-custom-popup--row level--"+o.level,{"is--group":n}],on:{dragstart:m.sortDragstartEvent,dragend:m.sortDragendEvent,dragover:m.sortDragoverEvent}},[g?d("td",{class:"vxe-table-custom-popup--column-item col--visible"},[d("div",{class:["vxe-table-custom--checkbox-option",{"is--checked":s,"is--indeterminate":r,"is--disabled":l}],attrs:{title:getI18n("vxe.custom.setting.colVisible")},on:{click:()=>{l||m.changeCheckboxOption(o)}}},[d("span",{class:["vxe-checkbox--icon",r?getIcon().TABLE_CHECKBOX_INDETERMINATE:s?getIcon().TABLE_CHECKBOX_CHECKED:getIcon().TABLE_CHECKBOX_UNCHECKED]})])]):renderEmptyElement(v),d("td",{class:"vxe-table-custom-popup--column-item col--name"},[d("div",{class:"vxe-table-custom-popup--name"},[H?W&&x||1===o.level?d("div",{class:["vxe-table-custom-popup--column-sort-btn",{"is--disabled":l||c||o.renderFixed}],attrs:{title:getI18n("vxe.custom.setting.sortHelpTip")},on:l||c||o.renderFixed?{}:{mousedown:m.sortMousedownEvent,mouseup:m.sortMouseupEvent}},[d("i",{class:getIcon().TABLE_CUSTOM_SORT})]):d("div",{class:"vxe-table-custom-popup--column-sort-placeholder"}):renderEmptyElement(v),"html"===o.type?d("div",{key:"1",class:"vxe-table-custom-popup--title",domProps:{innerHTML:a}}):d("div",{key:"0",class:"vxe-table-custom-popup--title",attrs:{title:a}},a)])]),b?d("td",{class:"vxe-table-custom-popup--column-item col--resizable"},[o.children&&o.children.length||!(_xeUtils.default.isBoolean(o.resizable)?o.resizable:T.resizable||L)?d("span","-"):u?d(u,{props:{type:"integer",immediate:!1,disabled:l||c,value:o.renderResizeWidth,min:e||void 0,max:t||void 0},on:{modelValue(e){o.renderResizeWidth=Math.max(0,Number(e))},change(){m.changeColumnWidth(o)}}}):renderEmptyElement(p)]):renderEmptyElement(v),h?d("td",{class:"vxe-table-custom-popup--column-item col--fixed"},[i?d("span","-"):d("vxe-radio-group",{props:{value:o.renderFixed||"",type:"button",size:"mini",disabled:l||c,options:[{label:getI18n("vxe.custom.setting.fixedLeft"),value:"left",disabled:l||c||y},{label:getI18n("vxe.custom.setting.fixedUnset"),value:"",disabled:l||c},{label:getI18n("vxe.custom.setting.fixedRight"),value:"right",disabled:l||c||y}]},on:{input(e){m.changeFixedOption(o,e)}}})]):renderEmptyElement(v)]))}});o={default:()=>S?v.callSlot(S,F,d):d("div",{ref:"bodyElemRef",class:"vxe-table-custom-popup--body"},[k?d("div",{class:"vxe-table-custom-popup--table-top"},v.callSlot(k,F,d)):renderEmptyElement(v),d("div",{class:"vxe-table-custom-popup--table-wrapper"},[d("table",{},[d("colgroup",{},[g?d("col",{class:"vxe-table-custom-popup--table-col-seq"}):renderEmptyElement(v),d("col",{class:"vxe-table-custom-popup--table-col-title"}),b?d("col",{class:"vxe-table-custom-popup--table-col-width"}):renderEmptyElement(v),h?d("col",{class:"vxe-table-custom-popup--table-col-fixed"}):renderEmptyElement(v)]),d("thead",{},[d("tr",{},[g?d("th",{},[d("div",{class:["vxe-table-custom--checkbox-option",{"is--checked":U,"is--indeterminate":V}],attrs:{title:getI18n("vxe.table.allTitle")},on:{click:m.allOptionEvent}},[d("span",{class:["vxe-checkbox--icon",V?getIcon().TABLE_CHECKBOX_INDETERMINATE:U?getIcon().TABLE_CHECKBOX_CHECKED:getIcon().TABLE_CHECKBOX_UNCHECKED]}),d("span",{class:"vxe-checkbox--label"},getI18n("vxe.toolbar.customAll"))])]):renderEmptyElement(v),d("th",{},getI18n("vxe.custom.setting.colTitle")),b?d("th",{},getI18n("vxe.custom.setting.colResizable")):renderEmptyElement(v),h?d("th",{},getI18n("vxe.custom.setting."+(f?"colFixedMax":"colFixed"),[f])):renderEmptyElement(v)])]),d("transition-group",{class:"vxe-table-custom--panel-list",props:{tag:"tbody",name:"vxe-table-custom--list"}},A)])]),w?d("div",{class:"vxe-table-custom-popup--table-bottom"},v.callSlot(w,F,d)):renderEmptyElement(v),renderDragTip(d,m)]),footer:()=>B?v.callSlot(B,F,d):d("div",{class:"vxe-table-custom-popup--footer"},[d(l,{props:{content:c.resetButtonText||getI18n("vxe.custom.cstmRestore"),disabled:!a},on:{click:m.resetCustomEvent}}),x?d(l,{props:{content:c.resetButtonText||getI18n("vxe.table.customClose")},on:{click:m.cancelCloseEvent}}):d(l,{props:{content:c.resetButtonText||getI18n("vxe.custom.cstmCancel")},on:{click:m.cancelCustomEvent}}),x?renderEmptyElement(v):d(l,{props:{status:"primary",content:c.confirmButtonText||getI18n("vxe.custom.cstmConfirm")},on:{click:m.confirmCustomEvent}})])};return O&&(o.header=()=>v.callSlot(O,F,d)),"drawer"===M?t?d(t,{key:"drawer",props:{className:["vxe-table-custom-drawer-wrapper","vxe-table--ignore-clear",D.className||""].join(" "),value:r.visible,title:D.title||getI18n("vxe.custom.cstmTitle"),width:D.width||Math.min(880,Math.floor(.6*document.documentElement.clientWidth)),position:D.position,resize:!!D.resize,escClosable:!!D.escClosable,maskClosable:!!D.maskClosable,destroyOnClose:!0,showFooter:!0},on:{input(e){r.visible=e}},scopedSlots:o}):renderEmptyElement(p):e?d(e,{key:"modal",props:{className:["vxe-table-custom-popup-wrapper","vxe-table--ignore-clear",s.className||""].join(" "),value:r.visible,title:s.title||getI18n("vxe.custom.cstmTitle"),width:s.width||Math.min(880,document.documentElement.clientWidth),minWidth:s.minWidth||700,height:s.height||Math.min(680,document.documentElement.clientHeight),minHeight:s.minHeight||400,showZoom:s.showZoom,showMaximize:s.showMaximize,showMinimize:s.showMinimize,mask:s.mask,lockView:s.lockView,resize:s.resize,escClosable:!!s.escClosable,maskClosable:!!s.maskClosable,destroyOnClose:!0,showFooter:!0},on:{input(e){r.visible=e}},scopedSlots:o}):renderEmptyElement(p)};var _default=exports.default={name:"VxeTableCustomPanel",props:{customStore:{type:Object,default:()=>({})}},inject:{$xeTable:{default:null}},data(){return{prevDragCol:void 0,prevDragToChild:!1,prevDragPos:null}},computed:{},created(){let t=_ui.VxeUI.getComponent("VxeModal"),l=_ui.VxeUI.getComponent("VxeDrawer"),o=_ui.VxeUI.getComponent("VxeButton"),s=_ui.VxeUI.getComponent("VxeNumberInput"),i=_ui.VxeUI.getComponent("VxeRadioGroup");this.$nextTick(()=>{var e=this.$xeTable.customOpts,e=e.mode;t||(0,_log.errLog)("vxe.error.reqComp",["vxe-modal"]),l||"drawer"!==e||(0,_log.errLog)("vxe.error.reqComp",["vxe-drawer"]),o||(0,_log.errLog)("vxe.error.reqComp",["vxe-button"]),s||(0,_log.errLog)("vxe.error.reqComp",["vxe-input"]),i||(0,_log.errLog)("vxe.error.reqComp",["vxe-radio-group"])})},render(e){var t=this.$xeTable.computeCustomOpts;return(["modal","drawer","popup"].includes(""+t.mode)?renderPopupPanel:renderSimplePanel)(e,this)},methods:{handleWrapperMouseenterEvent(e){var t=this.$xeTable,l=this.customStore;l.activeWrapper=!0,t.customOpenEvent(e)},handleWrapperMouseleaveEvent(e){let t=this.$xeTable,l=this.customStore;l.activeWrapper=!1,setTimeout(()=>{l.activeBtn||l.activeWrapper||t.customCloseEvent(e)},300)},getStoreData(){return{}},confirmCustomEvent({$event:e}){var t=this.$xeTable;t.isCustomStatus=!0,t.saveCustom(),t.closeCustom(),t.emitCustomEvent("confirm",e)},cancelCloseEvent({$event:e}){var t=this.$xeTable;t.closeCustom(),t.emitCustomEvent("close",e)},cancelCustomEvent({$event:e}){var t=this.$xeTable;t.cancelCustom(),t.closeCustom(),t.emitCustomEvent("cancel",e)},handleResetCustomEvent(e){var t=this.$xeTable;t.resetCustom(!0),t.closeCustom(),t.emitCustomEvent("reset",e)},resetCustomEvent(t){_ui.VxeUI.modal?_ui.VxeUI.modal.confirm({content:getI18n("vxe.custom.cstmConfirmRestore"),className:"vxe-table--ignore-clear",escClosable:!0}).then(e=>{"confirm"===e&&this.handleResetCustomEvent(t)}):this.handleResetCustomEvent(t)},resetPopupCustomEvent(t){_ui.VxeUI.modal?_ui.VxeUI.modal.confirm({content:getI18n("vxe.custom.cstmConfirmRestore"),className:"vxe-table--ignore-clear",escClosable:!0}).then(e=>{"confirm"===e&&this.resetCustomEvent(t)}):this.resetCustomEvent(t)},handleOptionCheck(t){var e=this.$xeTable.customColumnList,e=_xeUtils.default.findTree(e,e=>e===t);e&&e.parent&&(e=e.parent,e.children)&&e.children.length&&(e.visible=e.children.every(e=>e.visible),e.halfVisible=!e.visible&&e.children.some(e=>e.visible||e.halfVisible),this.handleOptionCheck(e))},changeCheckboxOption(e){var t=this.$xeTable,l=t,o=t.computeCustomOpts;let s=!e.renderVisible;o.immediate?(_xeUtils.default.eachTree([e],e=>{e.visible=s,e.renderVisible=s,e.halfVisible=!1}),l.isCustomStatus=!0,t.handleCustom(),t.saveCustomStore("update:visible")):_xeUtils.default.eachTree([e],e=>{e.renderVisible=s,e.halfVisible=!1}),this.handleOptionCheck(e),t.checkCustomStatus()},changeColumnWidth(e){var t=this.$xeTable,l=t;t.computeCustomOpts.immediate&&e.renderResizeWidth!==e.renderWidth&&(e.resizeWidth=e.renderResizeWidth,e.renderWidth=e.renderResizeWidth,l.isCustomStatus=!0,t.handleCustom(),t.saveCustomStore("update:width"))},changeFixedOption(e,t){var l=this.$xeTable,o=l,s=l.computeIsMaxFixedColumn;l.computeCustomOpts.immediate?(e.renderFixed===t?_xeUtils.default.eachTree([e],e=>{e.fixed="",e.renderFixed=""}):s&&!e.renderFixed||_xeUtils.default.eachTree([e],e=>{e.fixed=t,e.renderFixed=t}),o.isCustomStatus=!0,l.handleCustom(),l.saveCustomStore("update:fixed")):e.renderFixed===t?_xeUtils.default.eachTree([e],e=>{e.renderFixed=""}):s&&!e.renderFixed||_xeUtils.default.eachTree([e],e=>{e.renderFixed=t})},allOptionEvent(){this.$xeTable.toggleCustomAllCheckbox()},sortMousedownEvent(e){var t=this.$xeTable,e=e.currentTarget.parentElement.parentElement.parentElement,l=e.getAttribute("colid"),t=t.getColumnById(l);e.draggable=!0,this.dragCol=t,(0,_dom.addClass)(e,"active--drag-origin")},sortMouseupEvent(e){e=e.currentTarget.parentElement.parentElement.parentElement;hideDropTip(this),e.draggable=!1,(this.dragCol=null,_dom.removeClass)(e,"active--drag-origin")},sortDragstartEvent(e){e.dataTransfer&&e.dataTransfer.setDragImage((0,_dom.getTpImg)(),0,0)},sortDragendEvent(d){let m=this.$xeTable;var e=m;let u=m;var t=m;let{dragCol:l,prevDragPos:p,prevDragCol:o,prevDragToChild:v}=this,x=e.mouseConfig,g=u.customColumnList,h=t.collectColumn,b=m.computeCustomOpts.immediate;e=d.currentTarget;let{isCrossDrag:C,isSelfToChildDrag:E,isToChildDrag:T,dragEndMethod:s}=m.computeColumnDragOpts,f="bottom"===p?1:0;if(o&&l&&o!==l){let n=l,c=o;Promise.resolve(!s||s({oldColumn:n,newColumn:c,dragColumn:n,dragPos:p,dragToChild:!!v,offsetIndex:f})).then(s=>{if(s){let e=-1,t=-1,l={},o=(_xeUtils.default.eachTree([n],e=>{l[e.id]=e}),!1);if(b){if(n.parentId&&c.parentId){if(!C)return;if(l[c.id]&&(o=!0,!C||!E))return void(_ui.VxeUI.modal&&_ui.VxeUI.modal.message({status:"error",content:getI18n("vxe.error.treeDragChild")}))}else if(n.parentId){if(!C)return}else if(c.parentId){if(!C)return;if(l[c.id]&&(o=!0,!C||!E))return void(_ui.VxeUI.modal&&_ui.VxeUI.modal.message({status:"error",content:getI18n("vxe.error.treeDragChild")}))}var i,r,a,s=_xeUtils.default.findTree(h,e=>e.id===n.id),s=(o&&C&&E?s&&({items:i,index:a}=s,(r=n.children||[]).forEach(e=>{e.parentId=n.parentId}),i.splice(a,1,...r),n.children=[]):s&&({items:i,index:a,parent:r}=s,i.splice(a,1),r||(e=a)),_xeUtils.default.findTree(h,e=>e.id===c.id));s&&({items:i,index:r,parent:a}=s,C&&T&&v?(n.parentId=c.id,c.children=(c.children||[]).concat([n])):(n.parentId=c.parentId,i.splice(r+f,0,n)),a||(t=r)),_xeUtils.default.eachTree(h,(e,t,l,o,s)=>{s||(e.renderSortNumber=t+1)})}else e=_xeUtils.default.findIndexOf(g,e=>e.id===n.id),g.splice(e,1),t=_xeUtils.default.findIndexOf(g,e=>e.id===c.id),g.splice(t+f,0,n);u.isDragColMove=!0,x&&(m.clearSelected&&m.clearSelected(),m.clearCellAreas)&&(m.clearCellAreas(),m.clearCopyCellArea()),m.dispatchEvent("column-dragend",{oldColumn:n,newColumn:c,dragColumn:n,dragPos:p,offsetIndex:f,_index:{newIndex:t,oldIndex:e}},d),b&&(u.customColumnList=h.slice(0),m.handleColDragSwapColumn())}}).catch(()=>{})}hideDropTip(this),this.dragCol.value=null,e.draggable=!1,e.removeAttribute("drag-pos"),(0,_dom.removeClass)(e,"active--drag-target"),(0,_dom.removeClass)(e,"active--drag-origin")},sortDragoverEvent(e){var t=this.$xeTable,l=this.dragCol,o=t.computeCustomOpts.immediate,{isCrossDrag:s,isToChildDrag:i}=t.computeColumnDragOpts,r=e.currentTarget,a=(0,_dom.hasControlKey)(e),n=r.getAttribute("colid"),t=t.getColumnById(n);t&&(s||1===t.level)&&(e.preventDefault(),n=e.clientY-r.getBoundingClientRect().y<r.clientHeight/2?"top":"bottom",l&&l.id===t.id||!s&&1<t.level||!o&&1<t.level||t.renderFixed?showDropTip(this,e,r,!1,n):(this.prevDragToChild=!!(s&&i&&a&&o),this.prevDragCol=t,this.prevDragPos=n,showDropTip(this,e,r,!0,n)))}}};
@@ -34,6 +34,7 @@ function getSeq($xeTable, cellValue, row, $rowIndex, column, $columnIndex) {
34
34
  const seqMethod = seqOpts.seqMethod || column.seqMethod;
35
35
  if (seqMethod) {
36
36
  return seqMethod({
37
+ $table: $xeTable,
37
38
  row,
38
39
  rowIndex: $xeTable.getRowIndex(row),
39
40
  $rowIndex,
@@ -126,6 +127,7 @@ function getBodyLabelData($xeTable, opts, columns, datas) {
126
127
  cellValue = toBooleanValue($xeTable.isCheckedByCheckboxRow(row));
127
128
  item._checkboxLabel = checkboxOpts.labelField ? _xeUtils.default.get(row, checkboxOpts.labelField) : '';
128
129
  item._checkboxDisabled = checkboxOpts.checkMethod && !checkboxOpts.checkMethod({
130
+ $table: $xeTable,
129
131
  row
130
132
  });
131
133
  break;
@@ -133,6 +135,7 @@ function getBodyLabelData($xeTable, opts, columns, datas) {
133
135
  cellValue = toBooleanValue($xeTable.isCheckedByRadioRow(row));
134
136
  item._radioLabel = radioOpts.labelField ? _xeUtils.default.get(row, radioOpts.labelField) : '';
135
137
  item._radioDisabled = radioOpts.checkMethod && !radioOpts.checkMethod({
138
+ $table: $xeTable,
136
139
  row
137
140
  });
138
141
  break;
@@ -196,6 +199,7 @@ function getBodyLabelData($xeTable, opts, columns, datas) {
196
199
  cellValue = toBooleanValue($xeTable.isCheckedByCheckboxRow(row));
197
200
  item._checkboxLabel = checkboxOpts.labelField ? _xeUtils.default.get(row, checkboxOpts.labelField) : '';
198
201
  item._checkboxDisabled = checkboxOpts.checkMethod && !checkboxOpts.checkMethod({
202
+ $table: $xeTable,
199
203
  row
200
204
  });
201
205
  break;
@@ -203,6 +207,7 @@ function getBodyLabelData($xeTable, opts, columns, datas) {
203
207
  cellValue = toBooleanValue($xeTable.isCheckedByRadioRow(row));
204
208
  item._radioLabel = radioOpts.labelField ? _xeUtils.default.get(row, radioOpts.labelField) : '';
205
209
  item._radioDisabled = radioOpts.checkMethod && !radioOpts.checkMethod({
210
+ $table: $xeTable,
206
211
  row
207
212
  });
208
213
  break;
@@ -236,6 +241,7 @@ function getExportData($xeTable, opts) {
236
241
  let datas = opts.data;
237
242
  if (dataFilterMethod) {
238
243
  datas = datas.filter((row, index) => dataFilterMethod({
244
+ $table: $xeTable,
239
245
  row,
240
246
  $rowIndex: index
241
247
  }));
@@ -285,11 +291,12 @@ function getFooterCellValue($xeTable, opts, row, column) {
285
291
  }
286
292
  return _xeUtils.default.get(row, column.field);
287
293
  }
288
- function getFooterData(opts, footerTableData) {
294
+ function getFooterData($xeTable, opts, footerTableData) {
289
295
  const {
290
296
  footerFilterMethod
291
297
  } = opts;
292
298
  return footerFilterMethod ? footerTableData.filter((items, index) => footerFilterMethod({
299
+ $table: $xeTable,
293
300
  items,
294
301
  $rowIndex: index
295
302
  })) : footerTableData;
@@ -335,7 +342,7 @@ function toCsv($xeTable, opts, columns, datas) {
335
342
  const {
336
343
  footerTableData
337
344
  } = reactData;
338
- const footers = getFooterData(opts, footerTableData);
345
+ const footers = getFooterData($xeTable, opts, footerTableData);
339
346
  footers.forEach(row => {
340
347
  content += columns.map(column => toTxtCellLabel(getFooterCellValue($xeTable, opts, row, column))).join(',') + enterSymbol;
341
348
  });
@@ -355,7 +362,7 @@ function toTxt($xeTable, opts, columns, datas) {
355
362
  const {
356
363
  footerTableData
357
364
  } = reactData;
358
- const footers = getFooterData(opts, footerTableData);
365
+ const footers = getFooterData($xeTable, opts, footerTableData);
359
366
  footers.forEach(row => {
360
367
  content += columns.map(column => toTxtCellLabel(getFooterCellValue($xeTable, opts, row, column))).join('\t') + enterSymbol;
361
368
  });
@@ -537,7 +544,7 @@ function toHtml($xeTable, opts, columns, datas) {
537
544
  const {
538
545
  footerTableData
539
546
  } = reactData;
540
- const footers = getFooterData(opts, footerTableData);
547
+ const footers = getFooterData($xeTable, opts, footerTableData);
541
548
  if (footers.length) {
542
549
  tables.push('<tfoot>');
543
550
  footers.forEach(row => {
@@ -572,7 +579,7 @@ function toXML($xeTable, opts, columns, datas) {
572
579
  const {
573
580
  footerTableData
574
581
  } = reactData;
575
- const footers = getFooterData(opts, footerTableData);
582
+ const footers = getFooterData($xeTable, opts, footerTableData);
576
583
  footers.forEach(row => {
577
584
  xml += `<Row>${columns.map(column => `<Cell><Data ss:Type="String">${getFooterCellValue($xeTable, opts, row, column)}</Data></Cell>`).join('')}</Row>`;
578
585
  });
@@ -1272,6 +1279,7 @@ function handleExportAndPrint($xeTable, options, isPrint) {
1272
1279
  column.checked = isChecked;
1273
1280
  column.halfChecked = false;
1274
1281
  column.disabled = parent && parent.disabled || (checkMethod ? !checkMethod({
1282
+ $table: $xeTable,
1275
1283
  column
1276
1284
  }) : false);
1277
1285
  });