vxe-table 3.21.22 → 3.21.24

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 (176) hide show
  1. package/es/{iconfont.1782890276645.ttf → iconfont.1783331230583.ttf} +0 -0
  2. package/es/iconfont.1783331230583.woff +0 -0
  3. package/es/iconfont.1783331230583.woff2 +0 -0
  4. package/es/index.css +1 -1
  5. package/es/index.min.css +1 -1
  6. package/es/locale/lang/ar-EG.js +12 -3
  7. package/es/locale/lang/de-DE.js +12 -3
  8. package/es/locale/lang/en-US.js +16 -7
  9. package/es/locale/lang/es-ES.js +12 -3
  10. package/es/locale/lang/fr-FR.js +12 -3
  11. package/es/locale/lang/hu-HU.js +12 -3
  12. package/es/locale/lang/hy-AM.js +12 -3
  13. package/es/locale/lang/id-ID.js +12 -3
  14. package/es/locale/lang/it-IT.js +11 -2
  15. package/es/locale/lang/ja-JP.js +12 -3
  16. package/es/locale/lang/ko-KR.js +12 -3
  17. package/es/locale/lang/ms-MY.js +12 -3
  18. package/es/locale/lang/nb-NO.js +12 -3
  19. package/es/locale/lang/pt-BR.js +12 -3
  20. package/es/locale/lang/ru-RU.js +12 -3
  21. package/es/locale/lang/th-TH.js +12 -3
  22. package/es/locale/lang/ug-CN.js +12 -3
  23. package/es/locale/lang/uk-UA.js +12 -3
  24. package/es/locale/lang/uz-UZ.js +12 -3
  25. package/es/locale/lang/vi-VN.js +11 -2
  26. package/es/locale/lang/zh-CHT.js +14 -5
  27. package/es/locale/lang/zh-CN.js +14 -5
  28. package/es/style.css +1 -1
  29. package/es/style.min.css +1 -1
  30. package/es/table/module/custom/mixin.js +84 -13
  31. package/es/table/module/custom/panel.js +485 -312
  32. package/es/table/src/cell.js +2 -2
  33. package/es/table/src/columnInfo.js +13 -7
  34. package/es/table/src/methods.js +102 -60
  35. package/es/table/src/util.js +31 -1
  36. package/es/table/style.css +96 -49
  37. package/es/table/style.min.css +1 -1
  38. package/es/ui/index.js +16 -4
  39. package/es/ui/src/log.js +1 -1
  40. package/es/vxe-table/style.css +96 -49
  41. package/es/vxe-table/style.min.css +1 -1
  42. package/lib/{iconfont.1782890276645.ttf → iconfont.1783331230583.ttf} +0 -0
  43. package/lib/iconfont.1783331230583.woff +0 -0
  44. package/lib/iconfont.1783331230583.woff2 +0 -0
  45. package/lib/index.css +1 -1
  46. package/lib/index.min.css +1 -1
  47. package/lib/index.umd.js +560 -196
  48. package/lib/index.umd.min.js +1 -1
  49. package/lib/locale/lang/ar-EG.js +12 -3
  50. package/lib/locale/lang/ar-EG.min.js +1 -1
  51. package/lib/locale/lang/ar-EG.umd.js +12 -3
  52. package/lib/locale/lang/de-DE.js +12 -3
  53. package/lib/locale/lang/de-DE.min.js +1 -1
  54. package/lib/locale/lang/de-DE.umd.js +12 -3
  55. package/lib/locale/lang/en-US.js +16 -7
  56. package/lib/locale/lang/en-US.min.js +1 -1
  57. package/lib/locale/lang/en-US.umd.js +16 -7
  58. package/lib/locale/lang/es-ES.js +12 -3
  59. package/lib/locale/lang/es-ES.min.js +1 -1
  60. package/lib/locale/lang/es-ES.umd.js +12 -3
  61. package/lib/locale/lang/fr-FR.js +12 -3
  62. package/lib/locale/lang/fr-FR.min.js +1 -1
  63. package/lib/locale/lang/fr-FR.umd.js +12 -3
  64. package/lib/locale/lang/hu-HU.js +12 -3
  65. package/lib/locale/lang/hu-HU.min.js +1 -1
  66. package/lib/locale/lang/hu-HU.umd.js +12 -3
  67. package/lib/locale/lang/hy-AM.js +12 -3
  68. package/lib/locale/lang/hy-AM.min.js +1 -1
  69. package/lib/locale/lang/hy-AM.umd.js +12 -3
  70. package/lib/locale/lang/id-ID.js +12 -3
  71. package/lib/locale/lang/id-ID.min.js +1 -1
  72. package/lib/locale/lang/id-ID.umd.js +12 -3
  73. package/lib/locale/lang/it-IT.js +11 -2
  74. package/lib/locale/lang/it-IT.min.js +1 -1
  75. package/lib/locale/lang/it-IT.umd.js +11 -2
  76. package/lib/locale/lang/ja-JP.js +12 -3
  77. package/lib/locale/lang/ja-JP.min.js +1 -1
  78. package/lib/locale/lang/ja-JP.umd.js +12 -3
  79. package/lib/locale/lang/ko-KR.js +12 -3
  80. package/lib/locale/lang/ko-KR.min.js +1 -1
  81. package/lib/locale/lang/ko-KR.umd.js +12 -3
  82. package/lib/locale/lang/ms-MY.js +12 -3
  83. package/lib/locale/lang/ms-MY.min.js +1 -1
  84. package/lib/locale/lang/ms-MY.umd.js +12 -3
  85. package/lib/locale/lang/nb-NO.js +12 -3
  86. package/lib/locale/lang/nb-NO.min.js +1 -1
  87. package/lib/locale/lang/nb-NO.umd.js +12 -3
  88. package/lib/locale/lang/pt-BR.js +12 -3
  89. package/lib/locale/lang/pt-BR.min.js +1 -1
  90. package/lib/locale/lang/pt-BR.umd.js +12 -3
  91. package/lib/locale/lang/ru-RU.js +12 -3
  92. package/lib/locale/lang/ru-RU.min.js +1 -1
  93. package/lib/locale/lang/ru-RU.umd.js +12 -3
  94. package/lib/locale/lang/th-TH.js +12 -3
  95. package/lib/locale/lang/th-TH.min.js +1 -1
  96. package/lib/locale/lang/th-TH.umd.js +12 -3
  97. package/lib/locale/lang/ug-CN.js +12 -3
  98. package/lib/locale/lang/ug-CN.min.js +1 -1
  99. package/lib/locale/lang/ug-CN.umd.js +12 -3
  100. package/lib/locale/lang/uk-UA.js +12 -3
  101. package/lib/locale/lang/uk-UA.min.js +1 -1
  102. package/lib/locale/lang/uk-UA.umd.js +12 -3
  103. package/lib/locale/lang/uz-UZ.js +12 -3
  104. package/lib/locale/lang/uz-UZ.min.js +1 -1
  105. package/lib/locale/lang/uz-UZ.umd.js +12 -3
  106. package/lib/locale/lang/vi-VN.js +11 -2
  107. package/lib/locale/lang/vi-VN.min.js +1 -1
  108. package/lib/locale/lang/vi-VN.umd.js +11 -2
  109. package/lib/locale/lang/zh-CHT.js +14 -5
  110. package/lib/locale/lang/zh-CHT.min.js +1 -1
  111. package/lib/locale/lang/zh-CHT.umd.js +14 -5
  112. package/lib/locale/lang/zh-CN.js +14 -5
  113. package/lib/locale/lang/zh-CN.min.js +1 -1
  114. package/lib/locale/lang/zh-CN.umd.js +14 -5
  115. package/lib/style.css +1 -1
  116. package/lib/style.min.css +1 -1
  117. package/lib/table/module/custom/mixin.js +91 -11
  118. package/lib/table/module/custom/mixin.min.js +1 -1
  119. package/lib/table/module/custom/panel.js +376 -158
  120. package/lib/table/module/custom/panel.min.js +1 -1
  121. package/lib/table/src/cell.js +2 -1
  122. package/lib/table/src/cell.min.js +1 -1
  123. package/lib/table/src/columnInfo.js +16 -6
  124. package/lib/table/src/columnInfo.min.js +1 -1
  125. package/lib/table/src/methods.js +10 -9
  126. package/lib/table/src/methods.min.js +1 -1
  127. package/lib/table/src/util.js +35 -1
  128. package/lib/table/src/util.min.js +1 -1
  129. package/lib/table/style/style.css +96 -49
  130. package/lib/table/style/style.min.css +1 -1
  131. package/lib/ui/index.js +16 -4
  132. package/lib/ui/index.min.js +1 -1
  133. package/lib/ui/src/log.js +1 -1
  134. package/lib/ui/src/log.min.js +1 -1
  135. package/lib/vxe-table/style/style.css +96 -49
  136. package/lib/vxe-table/style/style.min.css +1 -1
  137. package/package.json +2 -2
  138. package/packages/locale/lang/ar-EG.ts +12 -3
  139. package/packages/locale/lang/de-DE.ts +12 -3
  140. package/packages/locale/lang/en-US.ts +16 -7
  141. package/packages/locale/lang/es-ES.ts +12 -3
  142. package/packages/locale/lang/fr-FR.ts +12 -3
  143. package/packages/locale/lang/hu-HU.ts +12 -3
  144. package/packages/locale/lang/hy-AM.ts +12 -3
  145. package/packages/locale/lang/id-ID.ts +12 -3
  146. package/packages/locale/lang/it-IT.ts +11 -2
  147. package/packages/locale/lang/ja-JP.ts +12 -3
  148. package/packages/locale/lang/ko-KR.ts +12 -3
  149. package/packages/locale/lang/ms-MY.ts +12 -3
  150. package/packages/locale/lang/nb-NO.ts +12 -3
  151. package/packages/locale/lang/pt-BR.ts +12 -3
  152. package/packages/locale/lang/ru-RU.ts +12 -3
  153. package/packages/locale/lang/th-TH.ts +12 -3
  154. package/packages/locale/lang/ug-CN.ts +12 -3
  155. package/packages/locale/lang/uk-UA.ts +12 -3
  156. package/packages/locale/lang/uz-UZ.ts +12 -3
  157. package/packages/locale/lang/vi-VN.ts +11 -2
  158. package/packages/locale/lang/zh-CHT.ts +14 -5
  159. package/packages/locale/lang/zh-CN.ts +14 -5
  160. package/packages/table/module/custom/mixin.ts +85 -14
  161. package/packages/table/module/custom/panel.ts +538 -307
  162. package/packages/table/src/cell.ts +2 -2
  163. package/packages/table/src/columnInfo.ts +13 -7
  164. package/packages/table/src/methods.ts +118 -61
  165. package/packages/table/src/util.ts +34 -1
  166. package/packages/ui/index.ts +15 -3
  167. package/styles/components/icon.scss +29 -2
  168. package/styles/components/table-module/custom.scss +88 -67
  169. package/styles/icon/iconfont.ttf +0 -0
  170. package/styles/icon/iconfont.woff +0 -0
  171. package/styles/icon/iconfont.woff2 +0 -0
  172. package/styles/theme/base.scss +11 -0
  173. package/es/iconfont.1782890276645.woff +0 -0
  174. package/es/iconfont.1782890276645.woff2 +0 -0
  175. package/lib/iconfont.1782890276645.woff +0 -0
  176. package/lib/iconfont.1782890276645.woff2 +0 -0
@@ -342,6 +342,25 @@ var _default = exports.default = /* define-vxe-component start */(0, _comp.defin
342
342
  }, evnt);
343
343
  }
344
344
  },
345
+ changeAlignOption(column, targetAlign, colProperty, renderProperty, eName, evnt) {
346
+ const $xeTableCustomPanel = this;
347
+ const $xeTable = $xeTableCustomPanel.$xeTable;
348
+ const tableReactData = $xeTable;
349
+ const customOpts = $xeTable.computeCustomOpts;
350
+ if (customOpts.immediate) {
351
+ column[colProperty] = targetAlign;
352
+ column[renderProperty] = targetAlign;
353
+ tableReactData.isCustomStatus = true;
354
+ $xeTable.handleCustom();
355
+ $xeTable.saveCustomStore(`update:${colProperty}`);
356
+ } else {
357
+ column[renderProperty] = targetAlign;
358
+ }
359
+ $xeTable.dispatchEvent(eName, {
360
+ column,
361
+ [colProperty]: targetAlign
362
+ }, evnt);
363
+ },
345
364
  allOptionEvent(evnt) {
346
365
  const $xeTableCustomPanel = this;
347
366
  const $xeTable = $xeTableCustomPanel.$xeTable;
@@ -856,7 +875,7 @@ var _default = exports.default = /* define-vxe-component start */(0, _comp.defin
856
875
  const customOpts = $xeTable.computeCustomOpts;
857
876
  const columnDragOpts = $xeTable.computeColumnDragOpts;
858
877
  const {
859
- popupStyle
878
+ defPopupStyle
860
879
  } = customStore;
861
880
  const {
862
881
  immediate,
@@ -1032,7 +1051,7 @@ var _default = exports.default = /* define-vxe-component start */(0, _comp.defin
1032
1051
  }
1033
1052
  }) : renderEmptyElement($xeTable)] : []) : renderEmptyElement($xeTable), !parentItem && allowFixed ? h('div', {
1034
1053
  class: 'vxe-table-custom--fixed-option'
1035
- }, [h(VxeUIButtonComponent, {
1054
+ }, VxeUIButtonComponent ? [h(VxeUIButtonComponent, {
1036
1055
  props: {
1037
1056
  mode: 'text',
1038
1057
  icon: column.renderFixed === 'left' ? getIcon().TOOLBAR_TOOLS_FIXED_LEFT_ACTIVE : getIcon().TOOLBAR_TOOLS_FIXED_LEFT,
@@ -1062,7 +1081,7 @@ var _default = exports.default = /* define-vxe-component start */(0, _comp.defin
1062
1081
  $xeTableCustomPanel.changeFixedOption(column, 'right', $event);
1063
1082
  }
1064
1083
  }
1065
- })]) : renderEmptyElement($xeTable)]));
1084
+ })] : []) : renderEmptyElement($xeTable)]));
1066
1085
  }
1067
1086
  });
1068
1087
  return h('div', {
@@ -1072,7 +1091,7 @@ var _default = exports.default = /* define-vxe-component start */(0, _comp.defin
1072
1091
  [`size--${vSize}`]: vSize,
1073
1092
  'is--active': customStore.visible
1074
1093
  }],
1075
- style: popupStyle
1094
+ style: defPopupStyle
1076
1095
  }, customStore.visible ? [h('div', {
1077
1096
  ref: 'refBodyWrapperElem',
1078
1097
  class: 'vxe-table-custom-simple--body-wrapper'
@@ -1161,48 +1180,33 @@ var _default = exports.default = /* define-vxe-component start */(0, _comp.defin
1161
1180
  }
1162
1181
  })])]) : null]), $xeTableCustomPanel.renderDragTip(h)])] : []);
1163
1182
  },
1164
- renderPopupPanel(h) {
1165
- const VxeUIModalComponent = _ui.VxeUI.getComponent('VxeModal');
1166
- const VxeUIDrawerComponent = _ui.VxeUI.getComponent('VxeDrawer');
1183
+ renderPopupBodys(h) {
1167
1184
  const VxeUIButtonComponent = _ui.VxeUI.getComponent('VxeButton');
1168
1185
  const VxeUINumberInputComponent = _ui.VxeUI.getComponent('VxeNumberInput');
1186
+ const VxeUIRadioGroupComponent = _ui.VxeUI.getComponent('VxeRadioGroup');
1169
1187
  const $xeTableCustomPanel = this;
1170
- const props = $xeTableCustomPanel;
1171
1188
  const $xeTable = $xeTableCustomPanel.$xeTable;
1172
1189
  const tableProps = $xeTable;
1173
1190
  const tableReactData = $xeTable;
1174
- const $xeGrid = $xeTable.$xeGrid;
1175
- const $xeGantt = $xeTable.$xeGantt;
1176
1191
  const {
1177
- customStore
1178
- } = props;
1179
- const {
1180
- treeConfig,
1181
- rowGroupConfig,
1182
- aggregateConfig,
1183
1192
  resizable: allResizable
1184
1193
  } = tableProps;
1185
1194
  const {
1186
- isCustomStatus,
1187
1195
  customColumnList
1188
1196
  } = tableReactData;
1189
1197
  const customOpts = $xeTable.computeCustomOpts;
1190
1198
  const columnDragOpts = $xeTable.computeColumnDragOpts;
1191
- const aggregateOpts = $xeTable.computeAggregateOpts;
1192
- const {
1193
- placement: aggPlacement
1194
- } = aggregateOpts;
1195
1199
  const {
1196
- mode,
1197
1200
  immediate,
1198
1201
  showSortDragButton,
1199
1202
  showSortMoveButton,
1200
1203
  showSortPutButton,
1201
- modalOptions,
1202
- drawerOptions,
1203
1204
  allowVisible,
1204
1205
  allowSort,
1205
1206
  allowFixed,
1207
+ allowAlign,
1208
+ allowHeaderAlign,
1209
+ allowFooterAlign,
1206
1210
  allowResizable,
1207
1211
  allowGroup,
1208
1212
  allowValues,
@@ -1210,40 +1214,17 @@ var _default = exports.default = /* define-vxe-component start */(0, _comp.defin
1210
1214
  visibleMethod
1211
1215
  } = customOpts;
1212
1216
  const columnOpts = $xeTable.computeColumnOpts;
1213
- const {
1214
- maxFixedSize
1215
- } = columnOpts;
1216
1217
  const resizableOpts = $xeTable.computeResizableOpts;
1217
1218
  const {
1218
1219
  minWidth: reMinWidth,
1219
1220
  maxWidth: reMaxWidth
1220
1221
  } = resizableOpts;
1221
- const modalOpts = Object.assign({}, modalOptions);
1222
- const drawerOpts = Object.assign({}, drawerOptions);
1223
1222
  const isMaxFixedColumn = $xeTable.computeIsMaxFixedColumn;
1224
1223
  const {
1225
1224
  isCrossDrag,
1226
1225
  isPeerDrag
1227
1226
  } = columnDragOpts;
1228
- const slots = customOpts.slots || {};
1229
- const headerSlot = slots.header;
1230
- const topSlot = slots.top;
1231
- const bottomSlot = slots.bottom;
1232
- const defaultSlot = slots.default;
1233
- const footerSlot = slots.footer;
1234
1227
  const trVNs = [];
1235
- const isAllChecked = customStore.isAll;
1236
- const isAllIndeterminate = customStore.isIndeterminate;
1237
- const isAggRtBmLayout = aggPlacement === 'right' || aggPlacement === 'bottom';
1238
- const params = {
1239
- $table: $xeTable,
1240
- $grid: $xeGrid,
1241
- $gantt: $xeGantt,
1242
- columns: customColumnList,
1243
- isAllChecked,
1244
- isAllIndeterminate,
1245
- isCustomStatus
1246
- };
1247
1228
  _xeUtils.default.eachTree(customColumnList, (column, index, items, path, parentItem) => {
1248
1229
  const isVisible = visibleMethod ? visibleMethod({
1249
1230
  $table: $xeTable,
@@ -1281,41 +1262,50 @@ var _default = exports.default = /* define-vxe-component start */(0, _comp.defin
1281
1262
  }) : false;
1282
1263
  const isHidden = !isChecked;
1283
1264
  const showSortBtn = (isCrossDrag || isPeerDrag ? immediate : false) || column.level === 1;
1284
- trVNs.push(h('tr', {
1285
- key: column.id,
1286
- attrs: {
1287
- colid: column.id
1288
- },
1289
- class: [`vxe-table-custom-popup--row level--${column.level}`, {
1290
- 'is--group': isColGroup
1291
- }],
1292
- on: {
1293
- dragstart: $xeTableCustomPanel.sortDragstartEvent,
1294
- dragend: $xeTableCustomPanel.sortDragendEvent,
1295
- dragover: $xeTableCustomPanel.sortDragoverEvent
1296
- }
1297
- }, [allowVisible ? h('td', {
1298
- class: 'vxe-table-custom-popup--column-item col--visible'
1299
- }, [h('div', {
1300
- class: ['vxe-table-custom--checkbox-option', {
1301
- 'is--checked': isChecked,
1302
- 'is--indeterminate': isIndeterminate,
1303
- 'is--disabled': isDisabled
1304
- }],
1305
- attrs: {
1306
- title: getI18n('vxe.custom.setting.colVisible')
1307
- },
1308
- on: {
1309
- click: evnt => {
1310
- if (!isDisabled) {
1311
- $xeTableCustomPanel.changeCheckboxOption(column, evnt);
1265
+ const alignList = [{
1266
+ icon: getIcon().TABLE_CUSTOM_ALIGN_LEFT,
1267
+ value: 'left',
1268
+ title: getI18n('vxe.custom.setting.anLeftTitle'),
1269
+ disabled: isHidden
1270
+ }, {
1271
+ icon: getIcon().TABLE_CUSTOM_ALIGN_CENTER,
1272
+ value: 'center',
1273
+ title: getI18n('vxe.custom.setting.anCenterTitle'),
1274
+ disabled: isHidden
1275
+ }, {
1276
+ icon: getIcon().TABLE_CUSTOM_ALIGN_RIGHT,
1277
+ value: 'right',
1278
+ title: getI18n('vxe.custom.setting.anRightTitle'),
1279
+ disabled: isHidden
1280
+ }];
1281
+ const tdVNs = [];
1282
+ if (allowVisible) {
1283
+ tdVNs.push(h('td', {
1284
+ key: 'av',
1285
+ class: 'vxe-table-custom-popup--column-td col--visible'
1286
+ }, [h('div', {
1287
+ class: ['vxe-table-custom--checkbox-option', {
1288
+ 'is--checked': isChecked,
1289
+ 'is--indeterminate': isIndeterminate,
1290
+ 'is--disabled': isDisabled
1291
+ }],
1292
+ attrs: {
1293
+ title: getI18n('vxe.custom.setting.colVisible')
1294
+ },
1295
+ on: {
1296
+ click: evnt => {
1297
+ if (!isDisabled) {
1298
+ $xeTableCustomPanel.changeCheckboxOption(column, evnt);
1299
+ }
1312
1300
  }
1313
1301
  }
1314
- }
1315
- }, [h('span', {
1316
- class: ['vxe-checkbox--icon', isIndeterminate ? getIcon().TABLE_CHECKBOX_INDETERMINATE : isChecked ? getIcon().TABLE_CHECKBOX_CHECKED : getIcon().TABLE_CHECKBOX_UNCHECKED]
1317
- })])]) : renderEmptyElement($xeTable), h('td', {
1318
- class: 'vxe-table-custom-popup--column-item col--name'
1302
+ }, [h('span', {
1303
+ class: ['vxe-checkbox--icon', isIndeterminate ? getIcon().TABLE_CHECKBOX_INDETERMINATE : isChecked ? getIcon().TABLE_CHECKBOX_CHECKED : getIcon().TABLE_CHECKBOX_UNCHECKED]
1304
+ })])]));
1305
+ }
1306
+ tdVNs.push(h('td', {
1307
+ key: 'at',
1308
+ class: 'vxe-table-custom-popup--column-td col--name'
1319
1309
  }, [h('div', {
1320
1310
  class: 'vxe-table-custom-popup--name'
1321
1311
  }, [allowSort && showSortDragButton || allowGroup || allowValues ? showSortBtn || (allowGroup || allowValues) && !isColGroup ? h('div', {
@@ -1350,7 +1340,7 @@ var _default = exports.default = /* define-vxe-component start */(0, _comp.defin
1350
1340
  }, VxeUIButtonComponent ? [showSortMoveButton ? h(VxeUIButtonComponent, {
1351
1341
  props: {
1352
1342
  mode: 'text',
1353
- content: getI18n('vxe.custom.setting.moveUp'),
1343
+ icon: 'vxe-icon-arrows-up',
1354
1344
  title: getI18n('vxe.custom.setting.moveUpTitle'),
1355
1345
  disabled: index <= 0
1356
1346
  },
@@ -1362,7 +1352,7 @@ var _default = exports.default = /* define-vxe-component start */(0, _comp.defin
1362
1352
  }) : renderEmptyElement($xeTable), showSortMoveButton ? h(VxeUIButtonComponent, {
1363
1353
  props: {
1364
1354
  mode: 'text',
1365
- content: getI18n('vxe.custom.setting.moveDn'),
1355
+ icon: 'vxe-icon-arrows-down',
1366
1356
  title: getI18n('vxe.custom.setting.moveDnTitle'),
1367
1357
  disabled: index >= items.length - 1
1368
1358
  },
@@ -1374,7 +1364,7 @@ var _default = exports.default = /* define-vxe-component start */(0, _comp.defin
1374
1364
  }) : renderEmptyElement($xeTable), showSortPutButton && !parentItem ? h(VxeUIButtonComponent, {
1375
1365
  props: {
1376
1366
  mode: 'text',
1377
- content: getI18n('vxe.custom.setting.putTop'),
1367
+ icon: 'vxe-icon-top',
1378
1368
  title: getI18n('vxe.custom.setting.putTopTitle'),
1379
1369
  disabled: index <= 0
1380
1370
  },
@@ -1386,7 +1376,7 @@ var _default = exports.default = /* define-vxe-component start */(0, _comp.defin
1386
1376
  }) : renderEmptyElement($xeTable), showSortPutButton && !parentItem ? h(VxeUIButtonComponent, {
1387
1377
  props: {
1388
1378
  mode: 'text',
1389
- content: getI18n('vxe.custom.setting.putBottom'),
1379
+ icon: 'vxe-icon-bottom',
1390
1380
  title: getI18n('vxe.custom.setting.putBottomTitle'),
1391
1381
  disabled: index >= items.length - 1
1392
1382
  },
@@ -1395,63 +1385,312 @@ var _default = exports.default = /* define-vxe-component start */(0, _comp.defin
1395
1385
  $xeTableCustomPanel.sortMoveBottomEvent(evntParame, column);
1396
1386
  }
1397
1387
  }
1398
- }) : renderEmptyElement($xeTable)] : []) : renderEmptyElement($xeTable)])]), allowResizable ? h('td', {
1399
- class: 'vxe-table-custom-popup--column-item col--resizable'
1400
- }, [column.children && column.children.length || !(_xeUtils.default.isBoolean(column.resizable) ? column.resizable : columnOpts.resizable || allResizable) ? h('span', '-') : VxeUINumberInputComponent ? h(VxeUINumberInputComponent, {
1401
- props: {
1402
- type: 'integer',
1403
- immediate: false,
1404
- disabled: isHidden,
1405
- value: column.renderResizeWidth,
1406
- min: customMinWidth || undefined,
1407
- max: customMaxWidth || undefined
1408
- },
1409
- on: {
1410
- modelValue(value) {
1411
- column.renderResizeWidth = Math.max(0, Number(value));
1388
+ }) : renderEmptyElement($xeTable)] : []) : renderEmptyElement($xeTable)])]));
1389
+ if (allowResizable) {
1390
+ tdVNs.push(h('td', {
1391
+ key: 'aw',
1392
+ class: 'vxe-table-custom-popup--column-td col--resizable'
1393
+ }, [column.children && column.children.length || !(_xeUtils.default.isBoolean(column.resizable) ? column.resizable : columnOpts.resizable || allResizable) ? h('span', '-') : VxeUINumberInputComponent ? h(VxeUINumberInputComponent, {
1394
+ props: {
1395
+ type: 'integer',
1396
+ immediate: false,
1397
+ disabled: isHidden,
1398
+ value: column.renderResizeWidth,
1399
+ min: customMinWidth || undefined,
1400
+ max: customMaxWidth || undefined
1412
1401
  },
1413
- change() {
1414
- $xeTableCustomPanel.changeColumnWidth(column);
1402
+ on: {
1403
+ modelValue(value) {
1404
+ const width = Math.max(0, Number(value));
1405
+ column.renderResizeWidth = width;
1406
+ },
1407
+ change() {
1408
+ $xeTableCustomPanel.changeColumnWidth(column);
1409
+ }
1415
1410
  }
1416
- }
1417
- }) : renderEmptyElement($xeTableCustomPanel)]) : renderEmptyElement($xeTable), allowFixed ? h('td', {
1418
- class: 'vxe-table-custom-popup--column-item col--fixed'
1419
- }, [parentItem ? h('span', '-') : h('vxe-radio-group', {
1420
- props: {
1421
- value: column.renderFixed || '',
1422
- type: 'button',
1423
- size: 'mini',
1424
- disabled: isHidden,
1425
- options: [{
1426
- label: getI18n('vxe.custom.setting.fixedLeft'),
1427
- value: 'left',
1428
- disabled: isHidden || isMaxFixedColumn
1429
- }, {
1430
- label: getI18n('vxe.custom.setting.fixedUnset'),
1431
- value: '',
1432
- disabled: isHidden
1433
- }, {
1434
- label: getI18n('vxe.custom.setting.fixedRight'),
1435
- value: 'right',
1436
- disabled: isHidden || isMaxFixedColumn
1437
- }]
1411
+ }) : renderEmptyElement($xeTable)]));
1412
+ }
1413
+ if (allowFixed) {
1414
+ tdVNs.push(h('td', {
1415
+ key: 'af',
1416
+ class: 'vxe-table-custom-popup--column-td col--fixed'
1417
+ }, parentItem ? [h('span', '-')] : VxeUIRadioGroupComponent ? [h(VxeUIButtonComponent, {
1418
+ props: {
1419
+ icon: column.renderFixed === 'left' ? getIcon().TOOLBAR_TOOLS_FIXED_LEFT_ACTIVE : getIcon().TOOLBAR_TOOLS_FIXED_LEFT,
1420
+ status: column.renderFixed === 'left' ? 'primary' : '',
1421
+ disabled: isHidden || isMaxFixedColumn && !column.renderFixed,
1422
+ title: getI18n(column.renderFixed === 'left' ? 'vxe.toolbar.cancelFixed' : 'vxe.toolbar.fixedLeft')
1423
+ },
1424
+ on: {
1425
+ click: ({
1426
+ $event
1427
+ }) => {
1428
+ $xeTableCustomPanel.changeFixedOption(column, 'left', $event);
1429
+ }
1430
+ }
1431
+ }), h(VxeUIButtonComponent, {
1432
+ props: {
1433
+ icon: column.renderFixed === 'right' ? getIcon().TOOLBAR_TOOLS_FIXED_RIGHT_ACTIVE : getIcon().TOOLBAR_TOOLS_FIXED_RIGHT,
1434
+ status: column.renderFixed === 'right' ? 'primary' : '',
1435
+ disabled: isHidden || isMaxFixedColumn && !column.renderFixed,
1436
+ title: getI18n(column.renderFixed === 'right' ? 'vxe.toolbar.cancelFixed' : 'vxe.toolbar.fixedRight')
1437
+ },
1438
+ on: {
1439
+ click: ({
1440
+ $event
1441
+ }) => {
1442
+ $xeTableCustomPanel.changeFixedOption(column, 'right', $event);
1443
+ }
1444
+ }
1445
+ })] : []));
1446
+ }
1447
+ if (allowAlign) {
1448
+ tdVNs.push(h('td', {
1449
+ key: 'aa',
1450
+ class: 'vxe-table-custom-popup--column-td col--align'
1451
+ }, VxeUIRadioGroupComponent ? [h(VxeUIRadioGroupComponent, {
1452
+ props: {
1453
+ value: column.renderAlign || '',
1454
+ type: 'button',
1455
+ strict: false,
1456
+ disabled: isHidden,
1457
+ options: alignList
1458
+ },
1459
+ on: {
1460
+ change({
1461
+ value,
1462
+ $event
1463
+ }) {
1464
+ $xeTableCustomPanel.changeAlignOption(column, value, 'align', 'renderAlign', 'custom-align-change', $event);
1465
+ }
1466
+ }
1467
+ })] : []));
1468
+ }
1469
+ if (allowHeaderAlign) {
1470
+ tdVNs.push(h('td', {
1471
+ key: 'aha',
1472
+ class: 'vxe-table-custom-popup--column-td col--header-align'
1473
+ }, isColGroup ? [h('span', '-')] : VxeUIRadioGroupComponent ? [h(VxeUIRadioGroupComponent, {
1474
+ props: {
1475
+ value: column.renderHeaderAlign || '',
1476
+ type: 'button',
1477
+ strict: false,
1478
+ disabled: isHidden,
1479
+ options: alignList
1480
+ },
1481
+ on: {
1482
+ change({
1483
+ value,
1484
+ $event
1485
+ }) {
1486
+ $xeTableCustomPanel.changeAlignOption(column, value, 'headerAlign', 'renderHeaderAlign', 'custom-header-align-change', $event);
1487
+ }
1488
+ }
1489
+ })] : []));
1490
+ }
1491
+ if (allowFooterAlign) {
1492
+ tdVNs.push(h('td', {
1493
+ key: 'afa',
1494
+ class: 'vxe-table-custom-popup--column-td col--footer-align'
1495
+ }, isColGroup ? [h('span', '-')] : VxeUIRadioGroupComponent ? [h(VxeUIRadioGroupComponent, {
1496
+ props: {
1497
+ value: column.renderFooterAlign || '',
1498
+ type: 'button',
1499
+ strict: false,
1500
+ disabled: isHidden,
1501
+ options: alignList
1502
+ },
1503
+ on: {
1504
+ change({
1505
+ value,
1506
+ $event
1507
+ }) {
1508
+ $xeTableCustomPanel.changeAlignOption(column, value, 'footerAlign', 'renderFooterAlign', 'custom-footer-align-change', $event);
1509
+ }
1510
+ }
1511
+ })] : []));
1512
+ }
1513
+ trVNs.push(h('tr', {
1514
+ key: column.id,
1515
+ attrs: {
1516
+ colid: column.id
1438
1517
  },
1518
+ class: [`vxe-table-custom-popup--row level--${column.level}`, {
1519
+ 'is--group': isColGroup
1520
+ }],
1439
1521
  on: {
1440
- change({
1441
- label,
1442
- $event
1443
- }) {
1444
- $xeTableCustomPanel.changeFixedOption(column, label, $event);
1445
- }
1522
+ dragstart: $xeTableCustomPanel.sortDragstartEvent,
1523
+ dragend: $xeTableCustomPanel.sortDragendEvent,
1524
+ dragover: $xeTableCustomPanel.sortDragoverEvent
1446
1525
  }
1447
- })]) : renderEmptyElement($xeTable)]));
1526
+ }, tdVNs));
1448
1527
  }
1449
1528
  });
1529
+ return trVNs;
1530
+ },
1531
+ renderPopupPanel(h) {
1532
+ const VxeUIModalComponent = _ui.VxeUI.getComponent('VxeModal');
1533
+ const VxeUIDrawerComponent = _ui.VxeUI.getComponent('VxeDrawer');
1534
+ const VxeUIButtonComponent = _ui.VxeUI.getComponent('VxeButton');
1535
+ const $xeTableCustomPanel = this;
1536
+ const props = $xeTableCustomPanel;
1537
+ const $xeTable = $xeTableCustomPanel.$xeTable;
1538
+ const tableProps = $xeTable;
1539
+ const tableReactData = $xeTable;
1540
+ const $xeGrid = $xeTable.$xeGrid;
1541
+ const $xeGantt = $xeTable.$xeGantt;
1542
+ const {
1543
+ customStore
1544
+ } = props;
1545
+ const {
1546
+ treeConfig,
1547
+ rowGroupConfig,
1548
+ aggregateConfig
1549
+ } = tableProps;
1550
+ const {
1551
+ isCustomStatus,
1552
+ customColumnList
1553
+ } = tableReactData;
1554
+ const vSize = $xeTable.computeSize;
1555
+ const customOpts = $xeTable.computeCustomOpts;
1556
+ const aggregateOpts = $xeTable.computeAggregateOpts;
1557
+ const {
1558
+ panePopupStyle
1559
+ } = customStore;
1560
+ const {
1561
+ placement: aggPlacement
1562
+ } = aggregateOpts;
1563
+ const {
1564
+ mode,
1565
+ immediate,
1566
+ modalOptions,
1567
+ drawerOptions,
1568
+ allowVisible,
1569
+ allowFixed,
1570
+ allowAlign,
1571
+ allowHeaderAlign,
1572
+ allowFooterAlign,
1573
+ allowResizable
1574
+ } = customOpts;
1575
+ const columnOpts = $xeTable.computeColumnOpts;
1576
+ const {
1577
+ maxFixedSize
1578
+ } = columnOpts;
1579
+ const modalOpts = Object.assign({}, modalOptions);
1580
+ const drawerOpts = Object.assign({}, drawerOptions);
1581
+ const slots = customOpts.slots || {};
1582
+ const headerSlot = slots.header;
1583
+ const topSlot = slots.top;
1584
+ const bottomSlot = slots.bottom;
1585
+ const defaultSlot = slots.default;
1586
+ const footerSlot = slots.footer;
1587
+ const isAllChecked = customStore.isAll;
1588
+ const isAllIndeterminate = customStore.isIndeterminate;
1589
+ const isAggRtBmLayout = aggPlacement === 'right' || aggPlacement === 'bottom';
1590
+ const params = {
1591
+ $table: $xeTable,
1592
+ $grid: $xeGrid,
1593
+ $gantt: $xeGantt,
1594
+ columns: customColumnList,
1595
+ isAllChecked,
1596
+ isAllIndeterminate,
1597
+ isCustomStatus
1598
+ };
1599
+ const colVNs = [];
1600
+ const headVNs = [];
1601
+ if (allowVisible) {
1602
+ colVNs.push(h('col', {
1603
+ key: 'av',
1604
+ class: 'vxe-table-custom-popup--column-col col--checkbox'
1605
+ }));
1606
+ headVNs.push(h('th', {
1607
+ key: 'av',
1608
+ class: 'vxe-table-custom-popup--column-th col--checkbox'
1609
+ }, [h('div', {
1610
+ class: ['vxe-table-custom--checkbox-option', {
1611
+ 'is--checked': isAllChecked,
1612
+ 'is--indeterminate': isAllIndeterminate
1613
+ }],
1614
+ attrs: {
1615
+ title: getI18n('vxe.table.allTitle')
1616
+ },
1617
+ on: {
1618
+ click: $xeTableCustomPanel.allOptionEvent
1619
+ }
1620
+ }, [h('span', {
1621
+ class: ['vxe-checkbox--icon', isAllIndeterminate ? getIcon().TABLE_CHECKBOX_INDETERMINATE : isAllChecked ? getIcon().TABLE_CHECKBOX_CHECKED : getIcon().TABLE_CHECKBOX_UNCHECKED]
1622
+ })
1623
+ // h('span', {
1624
+ // class: 'vxe-checkbox--label'
1625
+ // }, getI18n('vxe.toolbar.customAll'))
1626
+ ])]));
1627
+ }
1628
+ colVNs.push(h('col', {
1629
+ key: 'at',
1630
+ class: 'vxe-table-custom-popup--column-col col--title'
1631
+ }));
1632
+ headVNs.push(h('th', {
1633
+ key: 'at',
1634
+ class: 'vxe-table-custom-popup--column-th col--title'
1635
+ }, getI18n('vxe.custom.setting.colTitle')));
1636
+ if (allowResizable) {
1637
+ colVNs.push(h('col', {
1638
+ key: 'aw',
1639
+ class: 'vxe-table-custom-popup--column-col col--width'
1640
+ }));
1641
+ headVNs.push(h('th', {
1642
+ key: 'aw',
1643
+ class: 'vxe-table-custom-popup--column-th col--width'
1644
+ }, getI18n('vxe.custom.setting.colResizable')));
1645
+ }
1646
+ if (allowFixed) {
1647
+ colVNs.push(h('col', {
1648
+ key: 'af',
1649
+ class: 'vxe-table-custom-popup--column-col col--fixed'
1650
+ }));
1651
+ headVNs.push(h('th', {
1652
+ key: 'af',
1653
+ class: 'vxe-table-custom-popup--column-th col--fixed'
1654
+ }, getI18n(`vxe.custom.setting.${maxFixedSize ? 'colFixedMax' : 'colFixed'}`, [maxFixedSize])));
1655
+ }
1656
+ if (allowAlign) {
1657
+ colVNs.push(h('col', {
1658
+ key: 'aa',
1659
+ class: 'vxe-table-custom-popup--column-col col--align'
1660
+ }));
1661
+ headVNs.push(h('th', {
1662
+ key: 'aa',
1663
+ class: 'vxe-table-custom-popup--column-th col--align'
1664
+ }, getI18n('vxe.custom.setting.colAlign')));
1665
+ }
1666
+ if (allowHeaderAlign) {
1667
+ colVNs.push(h('col', {
1668
+ key: 'aha',
1669
+ class: 'vxe-table-custom-popup--column-col col--header-align'
1670
+ }));
1671
+ headVNs.push(h('th', {
1672
+ key: 'aha',
1673
+ class: 'vxe-table-custom-popup--column-th col--header-align'
1674
+ }, getI18n('vxe.custom.setting.colHeadAlign')));
1675
+ }
1676
+ if (allowFooterAlign) {
1677
+ colVNs.push(h('col', {
1678
+ key: 'afa',
1679
+ class: 'vxe-table-custom-popup--column-col col--footer-align'
1680
+ }));
1681
+ headVNs.push(h('th', {
1682
+ key: 'afa',
1683
+ class: 'vxe-table-custom-popup--column-th col--footer-align'
1684
+ }, getI18n('vxe.custom.setting.colFootAlign')));
1685
+ }
1450
1686
  const scopedSlots = {
1451
1687
  default: () => {
1452
1688
  return h('div', {
1453
1689
  ref: 'refBodyWrapperElem',
1454
- class: ['vxe-table-custom-popup--body-wrapper', `agg-layout--${aggPlacement}`]
1690
+ class: ['vxe-table-custom-popup--body-wrapper', `agg-layout--${aggPlacement}`, {
1691
+ [`size--${vSize}`]: vSize
1692
+ }],
1693
+ style: panePopupStyle
1455
1694
  }, defaultSlot ? $xeTable.callSlot(defaultSlot, params, h) : [!isAggRtBmLayout && !treeConfig && (aggregateConfig || rowGroupConfig) && $xeTable.getPivotTableAggregatePopupPanel ? h($xeTable.getPivotTableAggregatePopupPanel(), {
1456
1695
  props: {
1457
1696
  customStore
@@ -1463,36 +1702,13 @@ var _default = exports.default = /* define-vxe-component start */(0, _comp.defin
1463
1702
  class: 'vxe-table-custom-popup--table-top'
1464
1703
  }, $xeTable.callSlot(topSlot, params, h)) : renderEmptyElement($xeTable), h('div', {
1465
1704
  class: 'vxe-table-custom-popup--table-wrapper'
1466
- }, [h('table', {}, [h('colgroup', {}, [allowVisible ? h('col', {
1467
- class: 'vxe-table-custom-popup--table-col-seq'
1468
- }) : renderEmptyElement($xeTable), h('col', {
1469
- class: 'vxe-table-custom-popup--table-col-title'
1470
- }), allowResizable ? h('col', {
1471
- class: 'vxe-table-custom-popup--table-col-width'
1472
- }) : renderEmptyElement($xeTable), allowFixed ? h('col', {
1473
- class: 'vxe-table-custom-popup--table-col-fixed'
1474
- }) : renderEmptyElement($xeTable)]), h('thead', {}, [h('tr', {}, [allowVisible ? h('th', {}, [h('div', {
1475
- class: ['vxe-table-custom--checkbox-option', {
1476
- 'is--checked': isAllChecked,
1477
- 'is--indeterminate': isAllIndeterminate
1478
- }],
1479
- attrs: {
1480
- title: getI18n('vxe.table.allTitle')
1481
- },
1482
- on: {
1483
- click: $xeTableCustomPanel.allOptionEvent
1484
- }
1485
- }, [h('span', {
1486
- class: ['vxe-checkbox--icon', isAllIndeterminate ? getIcon().TABLE_CHECKBOX_INDETERMINATE : isAllChecked ? getIcon().TABLE_CHECKBOX_CHECKED : getIcon().TABLE_CHECKBOX_UNCHECKED]
1487
- }), h('span', {
1488
- class: 'vxe-checkbox--label'
1489
- }, getI18n('vxe.toolbar.customAll'))])]) : renderEmptyElement($xeTable), h('th', {}, getI18n('vxe.custom.setting.colTitle')), allowResizable ? h('th', {}, getI18n('vxe.custom.setting.colResizable')) : renderEmptyElement($xeTable), allowFixed ? h('th', {}, getI18n(`vxe.custom.setting.${maxFixedSize ? 'colFixedMax' : 'colFixed'}`, [maxFixedSize])) : renderEmptyElement($xeTable)])]), h('transition-group', {
1705
+ }, [h('table', {}, [h('colgroup', {}, colVNs), h('thead', {}, [h('tr', {}, headVNs)]), h('transition-group', {
1490
1706
  class: 'vxe-table-custom--panel-list',
1491
1707
  props: {
1492
1708
  tag: 'tbody',
1493
1709
  name: 'vxe-table-custom--list'
1494
1710
  }
1495
- }, trVNs)])]), bottomSlot ? h('div', {
1711
+ }, $xeTableCustomPanel.renderPopupBodys(h))])]), bottomSlot ? h('div', {
1496
1712
  class: 'vxe-table-custom-popup--table-bottom'
1497
1713
  }, $xeTable.callSlot(bottomSlot, params, h)) : renderEmptyElement($xeTable), $xeTableCustomPanel.renderDragTip(h)]), isAggRtBmLayout && !treeConfig && (aggregateConfig || rowGroupConfig) && $xeTable.getPivotTableAggregatePopupPanel ? h($xeTable.getPivotTableAggregatePopupPanel(), {
1498
1714
  props: {
@@ -1516,6 +1732,7 @@ var _default = exports.default = /* define-vxe-component start */(0, _comp.defin
1516
1732
  }
1517
1733
  }), immediate ? h(VxeUIButtonComponent, {
1518
1734
  props: {
1735
+ status: 'primary',
1519
1736
  content: customOpts.resetButtonText || getI18n('vxe.table.customClose')
1520
1737
  },
1521
1738
  on: {
@@ -1568,11 +1785,11 @@ var _default = exports.default = /* define-vxe-component start */(0, _comp.defin
1568
1785
  return VxeUIModalComponent ? h(VxeUIModalComponent, {
1569
1786
  key: 'modal',
1570
1787
  props: {
1571
- className: ['vxe-table-custom-popup-wrapper', 'vxe-table--ignore-clear', modalOpts.className || ''].join(' '),
1788
+ className: ['vxe-table-custom-modal-wrapper', 'vxe-table--ignore-clear', modalOpts.className || ''].join(' '),
1572
1789
  value: customStore.visible,
1573
1790
  title: modalOpts.title || getI18n('vxe.custom.cstmTitle'),
1574
- width: modalOpts.width || Math.min(880, document.documentElement.clientWidth),
1575
- minWidth: modalOpts.minWidth || 700,
1791
+ width: modalOpts.width || Math.min(1000, document.documentElement.clientWidth),
1792
+ minWidth: modalOpts.minWidth || 800,
1576
1793
  height: modalOpts.height || Math.min(680, document.documentElement.clientHeight),
1577
1794
  minHeight: modalOpts.minHeight || 400,
1578
1795
  showZoom: modalOpts.showZoom,
@@ -1581,6 +1798,7 @@ var _default = exports.default = /* define-vxe-component start */(0, _comp.defin
1581
1798
  mask: modalOpts.mask,
1582
1799
  lockView: modalOpts.lockView,
1583
1800
  resize: modalOpts.resize,
1801
+ transfer: modalOpts.transfer,
1584
1802
  escClosable: !!modalOpts.escClosable,
1585
1803
  maskClosable: !!modalOpts.maskClosable,
1586
1804
  destroyOnClose: true,