vxe-table 3.21.22 → 3.21.23

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 (172) hide show
  1. package/es/{iconfont.1782890276645.ttf → iconfont.1783046294821.ttf} +0 -0
  2. package/es/iconfont.1783046294821.woff +0 -0
  3. package/es/iconfont.1783046294821.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/columnInfo.js +13 -7
  33. package/es/table/src/methods.js +100 -59
  34. package/es/table/src/util.js +31 -1
  35. package/es/table/style.css +96 -49
  36. package/es/table/style.min.css +1 -1
  37. package/es/ui/index.js +16 -4
  38. package/es/ui/src/log.js +1 -1
  39. package/es/vxe-table/style.css +96 -49
  40. package/es/vxe-table/style.min.css +1 -1
  41. package/lib/{iconfont.1782890276645.ttf → iconfont.1783046294821.ttf} +0 -0
  42. package/lib/iconfont.1783046294821.woff +0 -0
  43. package/lib/iconfont.1783046294821.woff2 +0 -0
  44. package/lib/index.css +1 -1
  45. package/lib/index.min.css +1 -1
  46. package/lib/index.umd.js +557 -194
  47. package/lib/index.umd.min.js +1 -1
  48. package/lib/locale/lang/ar-EG.js +12 -3
  49. package/lib/locale/lang/ar-EG.min.js +1 -1
  50. package/lib/locale/lang/ar-EG.umd.js +12 -3
  51. package/lib/locale/lang/de-DE.js +12 -3
  52. package/lib/locale/lang/de-DE.min.js +1 -1
  53. package/lib/locale/lang/de-DE.umd.js +12 -3
  54. package/lib/locale/lang/en-US.js +16 -7
  55. package/lib/locale/lang/en-US.min.js +1 -1
  56. package/lib/locale/lang/en-US.umd.js +16 -7
  57. package/lib/locale/lang/es-ES.js +12 -3
  58. package/lib/locale/lang/es-ES.min.js +1 -1
  59. package/lib/locale/lang/es-ES.umd.js +12 -3
  60. package/lib/locale/lang/fr-FR.js +12 -3
  61. package/lib/locale/lang/fr-FR.min.js +1 -1
  62. package/lib/locale/lang/fr-FR.umd.js +12 -3
  63. package/lib/locale/lang/hu-HU.js +12 -3
  64. package/lib/locale/lang/hu-HU.min.js +1 -1
  65. package/lib/locale/lang/hu-HU.umd.js +12 -3
  66. package/lib/locale/lang/hy-AM.js +12 -3
  67. package/lib/locale/lang/hy-AM.min.js +1 -1
  68. package/lib/locale/lang/hy-AM.umd.js +12 -3
  69. package/lib/locale/lang/id-ID.js +12 -3
  70. package/lib/locale/lang/id-ID.min.js +1 -1
  71. package/lib/locale/lang/id-ID.umd.js +12 -3
  72. package/lib/locale/lang/it-IT.js +11 -2
  73. package/lib/locale/lang/it-IT.min.js +1 -1
  74. package/lib/locale/lang/it-IT.umd.js +11 -2
  75. package/lib/locale/lang/ja-JP.js +12 -3
  76. package/lib/locale/lang/ja-JP.min.js +1 -1
  77. package/lib/locale/lang/ja-JP.umd.js +12 -3
  78. package/lib/locale/lang/ko-KR.js +12 -3
  79. package/lib/locale/lang/ko-KR.min.js +1 -1
  80. package/lib/locale/lang/ko-KR.umd.js +12 -3
  81. package/lib/locale/lang/ms-MY.js +12 -3
  82. package/lib/locale/lang/ms-MY.min.js +1 -1
  83. package/lib/locale/lang/ms-MY.umd.js +12 -3
  84. package/lib/locale/lang/nb-NO.js +12 -3
  85. package/lib/locale/lang/nb-NO.min.js +1 -1
  86. package/lib/locale/lang/nb-NO.umd.js +12 -3
  87. package/lib/locale/lang/pt-BR.js +12 -3
  88. package/lib/locale/lang/pt-BR.min.js +1 -1
  89. package/lib/locale/lang/pt-BR.umd.js +12 -3
  90. package/lib/locale/lang/ru-RU.js +12 -3
  91. package/lib/locale/lang/ru-RU.min.js +1 -1
  92. package/lib/locale/lang/ru-RU.umd.js +12 -3
  93. package/lib/locale/lang/th-TH.js +12 -3
  94. package/lib/locale/lang/th-TH.min.js +1 -1
  95. package/lib/locale/lang/th-TH.umd.js +12 -3
  96. package/lib/locale/lang/ug-CN.js +12 -3
  97. package/lib/locale/lang/ug-CN.min.js +1 -1
  98. package/lib/locale/lang/ug-CN.umd.js +12 -3
  99. package/lib/locale/lang/uk-UA.js +12 -3
  100. package/lib/locale/lang/uk-UA.min.js +1 -1
  101. package/lib/locale/lang/uk-UA.umd.js +12 -3
  102. package/lib/locale/lang/uz-UZ.js +12 -3
  103. package/lib/locale/lang/uz-UZ.min.js +1 -1
  104. package/lib/locale/lang/uz-UZ.umd.js +12 -3
  105. package/lib/locale/lang/vi-VN.js +11 -2
  106. package/lib/locale/lang/vi-VN.min.js +1 -1
  107. package/lib/locale/lang/vi-VN.umd.js +11 -2
  108. package/lib/locale/lang/zh-CHT.js +14 -5
  109. package/lib/locale/lang/zh-CHT.min.js +1 -1
  110. package/lib/locale/lang/zh-CHT.umd.js +14 -5
  111. package/lib/locale/lang/zh-CN.js +14 -5
  112. package/lib/locale/lang/zh-CN.min.js +1 -1
  113. package/lib/locale/lang/zh-CN.umd.js +14 -5
  114. package/lib/style.css +1 -1
  115. package/lib/style.min.css +1 -1
  116. package/lib/table/module/custom/mixin.js +91 -11
  117. package/lib/table/module/custom/mixin.min.js +1 -1
  118. package/lib/table/module/custom/panel.js +376 -158
  119. package/lib/table/module/custom/panel.min.js +1 -1
  120. package/lib/table/src/columnInfo.js +16 -6
  121. package/lib/table/src/columnInfo.min.js +1 -1
  122. package/lib/table/src/methods.js +9 -8
  123. package/lib/table/src/methods.min.js +1 -1
  124. package/lib/table/src/util.js +35 -1
  125. package/lib/table/src/util.min.js +1 -1
  126. package/lib/table/style/style.css +96 -49
  127. package/lib/table/style/style.min.css +1 -1
  128. package/lib/ui/index.js +16 -4
  129. package/lib/ui/index.min.js +1 -1
  130. package/lib/ui/src/log.js +1 -1
  131. package/lib/ui/src/log.min.js +1 -1
  132. package/lib/vxe-table/style/style.css +96 -49
  133. package/lib/vxe-table/style/style.min.css +1 -1
  134. package/package.json +2 -2
  135. package/packages/locale/lang/ar-EG.ts +12 -3
  136. package/packages/locale/lang/de-DE.ts +12 -3
  137. package/packages/locale/lang/en-US.ts +16 -7
  138. package/packages/locale/lang/es-ES.ts +12 -3
  139. package/packages/locale/lang/fr-FR.ts +12 -3
  140. package/packages/locale/lang/hu-HU.ts +12 -3
  141. package/packages/locale/lang/hy-AM.ts +12 -3
  142. package/packages/locale/lang/id-ID.ts +12 -3
  143. package/packages/locale/lang/it-IT.ts +11 -2
  144. package/packages/locale/lang/ja-JP.ts +12 -3
  145. package/packages/locale/lang/ko-KR.ts +12 -3
  146. package/packages/locale/lang/ms-MY.ts +12 -3
  147. package/packages/locale/lang/nb-NO.ts +12 -3
  148. package/packages/locale/lang/pt-BR.ts +12 -3
  149. package/packages/locale/lang/ru-RU.ts +12 -3
  150. package/packages/locale/lang/th-TH.ts +12 -3
  151. package/packages/locale/lang/ug-CN.ts +12 -3
  152. package/packages/locale/lang/uk-UA.ts +12 -3
  153. package/packages/locale/lang/uz-UZ.ts +12 -3
  154. package/packages/locale/lang/vi-VN.ts +11 -2
  155. package/packages/locale/lang/zh-CHT.ts +14 -5
  156. package/packages/locale/lang/zh-CN.ts +14 -5
  157. package/packages/table/module/custom/mixin.ts +85 -14
  158. package/packages/table/module/custom/panel.ts +538 -307
  159. package/packages/table/src/columnInfo.ts +13 -7
  160. package/packages/table/src/methods.ts +116 -60
  161. package/packages/table/src/util.ts +34 -1
  162. package/packages/ui/index.ts +15 -3
  163. package/styles/components/icon.scss +29 -2
  164. package/styles/components/table-module/custom.scss +88 -67
  165. package/styles/icon/iconfont.ttf +0 -0
  166. package/styles/icon/iconfont.woff +0 -0
  167. package/styles/icon/iconfont.woff2 +0 -0
  168. package/styles/theme/base.scss +11 -0
  169. package/es/iconfont.1782890276645.woff +0 -0
  170. package/es/iconfont.1782890276645.woff2 +0 -0
  171. package/lib/iconfont.1782890276645.woff +0 -0
  172. package/lib/iconfont.1782890276645.woff2 +0 -0
@@ -333,6 +333,23 @@ export default /* define-vxe-component start */ defineVxeComponent({
333
333
  $xeTable.dispatchEvent('custom-fixed-change', { column, fixed: targetFixed }, evnt)
334
334
  }
335
335
  },
336
+ changeAlignOption (column: VxeTableDefines.ColumnInfo, targetAlign: VxeColumnPropTypes.Align, colProperty: 'align' | 'headerAlign' | 'footerAlign', renderProperty: 'renderAlign' | 'renderHeaderAlign' | 'renderFooterAlign', eName: 'custom-align-change' | 'custom-header-align-change' | 'custom-footer-align-change', evnt: Event) {
337
+ const $xeTableCustomPanel = this
338
+ const $xeTable = $xeTableCustomPanel.$xeTable
339
+ const tableReactData = $xeTable as unknown as TableReactData
340
+
341
+ const customOpts = $xeTable.computeCustomOpts
342
+ if (customOpts.immediate) {
343
+ column[colProperty] = targetAlign
344
+ column[renderProperty] = targetAlign
345
+ tableReactData.isCustomStatus = true
346
+ $xeTable.handleCustom()
347
+ $xeTable.saveCustomStore(`update:${colProperty}`)
348
+ } else {
349
+ column[renderProperty] = targetAlign
350
+ }
351
+ $xeTable.dispatchEvent(eName, { column, [colProperty]: targetAlign }, evnt)
352
+ },
336
353
  allOptionEvent (evnt: MouseEvent) {
337
354
  const $xeTableCustomPanel = this
338
355
  const $xeTable = $xeTableCustomPanel.$xeTable
@@ -817,7 +834,7 @@ export default /* define-vxe-component start */ defineVxeComponent({
817
834
  const { isCustomStatus, customColumnList, isCustomDragStatus } = tableReactData
818
835
  const customOpts = $xeTable.computeCustomOpts
819
836
  const columnDragOpts = $xeTable.computeColumnDragOpts
820
- const { popupStyle } = customStore
837
+ const { defPopupStyle } = customStore
821
838
  const { immediate, checkMethod, visibleMethod, allowVisible, allowSort, allowFixed, allowGroup, allowValues, trigger, placement, showSortDragButton, showSortMoveButton, showSortPutButton } = customOpts
822
839
  const isMaxFixedColumn = $xeTable.computeIsMaxFixedColumn
823
840
  const vSize = $xeTable.computeSize
@@ -1013,36 +1030,38 @@ export default /* define-vxe-component start */ defineVxeComponent({
1013
1030
  !parentItem && allowFixed
1014
1031
  ? h('div', {
1015
1032
  class: 'vxe-table-custom--fixed-option'
1016
- }, [
1017
- h(VxeUIButtonComponent, {
1018
- props: {
1019
- mode: 'text',
1020
- icon: column.renderFixed === 'left' ? getIcon().TOOLBAR_TOOLS_FIXED_LEFT_ACTIVE : getIcon().TOOLBAR_TOOLS_FIXED_LEFT,
1021
- status: column.renderFixed === 'left' ? 'primary' : '',
1022
- disabled: isHidden || (isMaxFixedColumn && !column.renderFixed),
1023
- title: getI18n(column.renderFixed === 'left' ? 'vxe.toolbar.cancelFixed' : 'vxe.toolbar.fixedLeft')
1024
- },
1025
- on: {
1026
- click: ({ $event }: VxeButtonDefines.ClickEventParams) => {
1027
- $xeTableCustomPanel.changeFixedOption(column, 'left', $event)
1028
- }
1029
- }
1030
- }),
1031
- h(VxeUIButtonComponent, {
1032
- props: {
1033
- mode: 'text',
1034
- icon: column.renderFixed === 'right' ? getIcon().TOOLBAR_TOOLS_FIXED_RIGHT_ACTIVE : getIcon().TOOLBAR_TOOLS_FIXED_RIGHT,
1035
- status: column.renderFixed === 'right' ? 'primary' : '',
1036
- disabled: isHidden || (isMaxFixedColumn && !column.renderFixed),
1037
- title: getI18n(column.renderFixed === 'right' ? 'vxe.toolbar.cancelFixed' : 'vxe.toolbar.fixedRight')
1038
- },
1039
- on: {
1040
- click: ({ $event }: VxeButtonDefines.ClickEventParams) => {
1041
- $xeTableCustomPanel.changeFixedOption(column, 'right', $event)
1042
- }
1043
- }
1044
- })
1045
- ])
1033
+ }, VxeUIButtonComponent
1034
+ ? [
1035
+ h(VxeUIButtonComponent, {
1036
+ props: {
1037
+ mode: 'text',
1038
+ icon: column.renderFixed === 'left' ? getIcon().TOOLBAR_TOOLS_FIXED_LEFT_ACTIVE : getIcon().TOOLBAR_TOOLS_FIXED_LEFT,
1039
+ status: column.renderFixed === 'left' ? 'primary' : '',
1040
+ disabled: isHidden || (isMaxFixedColumn && !column.renderFixed),
1041
+ title: getI18n(column.renderFixed === 'left' ? 'vxe.toolbar.cancelFixed' : 'vxe.toolbar.fixedLeft')
1042
+ },
1043
+ on: {
1044
+ click: ({ $event }: VxeButtonDefines.ClickEventParams) => {
1045
+ $xeTableCustomPanel.changeFixedOption(column, 'left', $event)
1046
+ }
1047
+ }
1048
+ }),
1049
+ h(VxeUIButtonComponent, {
1050
+ props: {
1051
+ mode: 'text',
1052
+ icon: column.renderFixed === 'right' ? getIcon().TOOLBAR_TOOLS_FIXED_RIGHT_ACTIVE : getIcon().TOOLBAR_TOOLS_FIXED_RIGHT,
1053
+ status: column.renderFixed === 'right' ? 'primary' : '',
1054
+ disabled: isHidden || (isMaxFixedColumn && !column.renderFixed),
1055
+ title: getI18n(column.renderFixed === 'right' ? 'vxe.toolbar.cancelFixed' : 'vxe.toolbar.fixedRight')
1056
+ },
1057
+ on: {
1058
+ click: ({ $event }: VxeButtonDefines.ClickEventParams) => {
1059
+ $xeTableCustomPanel.changeFixedOption(column, 'right', $event)
1060
+ }
1061
+ }
1062
+ })
1063
+ ]
1064
+ : [])
1046
1065
  : renderEmptyElement($xeTable)
1047
1066
  ])
1048
1067
  )
@@ -1055,7 +1074,7 @@ export default /* define-vxe-component start */ defineVxeComponent({
1055
1074
  [`size--${vSize}`]: vSize,
1056
1075
  'is--active': customStore.visible
1057
1076
  }],
1058
- style: popupStyle
1077
+ style: defPopupStyle
1059
1078
  }, customStore.visible
1060
1079
  ? [
1061
1080
  h('div', {
@@ -1195,55 +1214,28 @@ export default /* define-vxe-component start */ defineVxeComponent({
1195
1214
  ]
1196
1215
  : [])
1197
1216
  },
1198
- renderPopupPanel (h: CreateElement) {
1199
- const VxeUIModalComponent = VxeUI.getComponent('VxeModal')
1200
- const VxeUIDrawerComponent = VxeUI.getComponent('VxeDrawer')
1217
+ renderPopupBodys (h: CreateElement) {
1201
1218
  const VxeUIButtonComponent = VxeUI.getComponent('VxeButton')
1202
1219
  const VxeUINumberInputComponent = VxeUI.getComponent('VxeNumberInput')
1220
+ const VxeUIRadioGroupComponent = VxeUI.getComponent('VxeRadioGroup')
1203
1221
 
1204
1222
  const $xeTableCustomPanel = this
1205
- const props = $xeTableCustomPanel
1206
1223
  const $xeTable = $xeTableCustomPanel.$xeTable
1207
1224
  const tableProps = $xeTable
1208
1225
  const tableReactData = $xeTable as unknown as TableReactData
1209
- const $xeGrid = $xeTable.$xeGrid
1210
- const $xeGantt = $xeTable.$xeGantt
1211
1226
 
1212
- const { customStore } = props
1213
- const { treeConfig, rowGroupConfig, aggregateConfig, resizable: allResizable } = tableProps
1214
- const { isCustomStatus, customColumnList } = tableReactData
1227
+ const { resizable: allResizable } = tableProps
1228
+ const { customColumnList } = tableReactData
1215
1229
  const customOpts = $xeTable.computeCustomOpts
1216
1230
  const columnDragOpts = $xeTable.computeColumnDragOpts
1217
- const aggregateOpts = $xeTable.computeAggregateOpts
1218
- const { placement: aggPlacement } = aggregateOpts
1219
- const { mode, immediate, showSortDragButton, showSortMoveButton, showSortPutButton, modalOptions, drawerOptions, allowVisible, allowSort, allowFixed, allowResizable, allowGroup, allowValues, checkMethod, visibleMethod } = customOpts
1231
+ const { immediate, showSortDragButton, showSortMoveButton, showSortPutButton, allowVisible, allowSort, allowFixed, allowAlign, allowHeaderAlign, allowFooterAlign, allowResizable, allowGroup, allowValues, checkMethod, visibleMethod } = customOpts
1220
1232
  const columnOpts = $xeTable.computeColumnOpts
1221
- const { maxFixedSize } = columnOpts
1222
1233
  const resizableOpts = $xeTable.computeResizableOpts
1223
1234
  const { minWidth: reMinWidth, maxWidth: reMaxWidth } = resizableOpts
1224
- const modalOpts = Object.assign({}, modalOptions)
1225
- const drawerOpts = Object.assign({}, drawerOptions)
1226
1235
  const isMaxFixedColumn = $xeTable.computeIsMaxFixedColumn
1227
1236
  const { isCrossDrag, isPeerDrag } = 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
1237
+
1234
1238
  const trVNs: VNode[] = []
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
1239
  XEUtils.eachTree(customColumnList, (column, index, items, path, parentItem) => {
1248
1240
  const isVisible = visibleMethod ? visibleMethod({ $table: $xeTable, column }) : true
1249
1241
  if (isVisible) {
@@ -1276,175 +1268,177 @@ export default /* define-vxe-component start */ defineVxeComponent({
1276
1268
  const isDisabled = checkMethod ? !checkMethod({ $table: $xeTable, column }) : false
1277
1269
  const isHidden = !isChecked
1278
1270
  const showSortBtn = (isCrossDrag || isPeerDrag ? immediate : false) || column.level === 1
1279
- trVNs.push(
1280
- h('tr', {
1281
- key: column.id,
1282
- attrs: {
1283
- colid: column.id
1284
- },
1285
- class: [`vxe-table-custom-popup--row level--${column.level}`, {
1286
- 'is--group': isColGroup
1287
- }],
1288
- on: {
1289
- dragstart: $xeTableCustomPanel.sortDragstartEvent,
1290
- dragend: $xeTableCustomPanel.sortDragendEvent,
1291
- dragover: $xeTableCustomPanel.sortDragoverEvent
1292
- }
1293
- }, [
1294
- allowVisible
1295
- ? h('td', {
1296
- class: 'vxe-table-custom-popup--column-item col--visible'
1297
- }, [
1298
- h('div', {
1299
- class: ['vxe-table-custom--checkbox-option', {
1300
- 'is--checked': isChecked,
1301
- 'is--indeterminate': isIndeterminate,
1302
- 'is--disabled': isDisabled
1303
- }],
1304
- attrs: {
1305
- title: getI18n('vxe.custom.setting.colVisible')
1306
- },
1307
- on: {
1308
- click: (evnt: MouseEvent) => {
1309
- if (!isDisabled) {
1310
- $xeTableCustomPanel.changeCheckboxOption(column, evnt)
1311
- }
1312
- }
1313
- }
1314
- }, [
1315
- h('span', {
1316
- class: ['vxe-checkbox--icon', isIndeterminate ? getIcon().TABLE_CHECKBOX_INDETERMINATE : (isChecked ? getIcon().TABLE_CHECKBOX_CHECKED : getIcon().TABLE_CHECKBOX_UNCHECKED)]
1317
- })
1318
- ])
1319
- ])
1320
- : renderEmptyElement($xeTable),
1271
+
1272
+ const alignList = [
1273
+ { icon: getIcon().TABLE_CUSTOM_ALIGN_LEFT, value: 'left', title: getI18n('vxe.custom.setting.anLeftTitle'), disabled: isHidden },
1274
+ { icon: getIcon().TABLE_CUSTOM_ALIGN_CENTER, value: 'center', title: getI18n('vxe.custom.setting.anCenterTitle'), disabled: isHidden },
1275
+ { icon: getIcon().TABLE_CUSTOM_ALIGN_RIGHT, value: 'right', title: getI18n('vxe.custom.setting.anRightTitle'), disabled: isHidden }
1276
+ ]
1277
+
1278
+ const tdVNs: VNode[] = []
1279
+ if (allowVisible) {
1280
+ tdVNs.push(
1321
1281
  h('td', {
1322
- class: 'vxe-table-custom-popup--column-item col--name'
1282
+ key: 'av',
1283
+ class: 'vxe-table-custom-popup--column-td col--visible'
1323
1284
  }, [
1324
1285
  h('div', {
1325
- class: 'vxe-table-custom-popup--name'
1286
+ class: ['vxe-table-custom--checkbox-option', {
1287
+ 'is--checked': isChecked,
1288
+ 'is--indeterminate': isIndeterminate,
1289
+ 'is--disabled': isDisabled
1290
+ }],
1291
+ attrs: {
1292
+ title: getI18n('vxe.custom.setting.colVisible')
1293
+ },
1294
+ on: {
1295
+ click: (evnt: MouseEvent) => {
1296
+ if (!isDisabled) {
1297
+ $xeTableCustomPanel.changeCheckboxOption(column, evnt)
1298
+ }
1299
+ }
1300
+ }
1326
1301
  }, [
1327
- (allowSort && showSortDragButton) || (allowGroup || allowValues)
1328
- ? (
1329
- showSortBtn || ((allowGroup || allowValues) && !isColGroup)
1330
- ? h('div', {
1331
- class: ['vxe-table-custom-popup--column-sort-btn', {
1332
- 'is--disabled': isHidden
1333
- }],
1334
- attrs: {
1335
- title: getI18n('vxe.custom.setting.sortHelpTip')
1336
- },
1337
- on: (isHidden
1338
- ? {}
1339
- : {
1340
- mousedown: $xeTableCustomPanel.sortMousedownEvent,
1341
- mouseup: $xeTableCustomPanel.sortMouseupEvent
1342
- })
1343
- }, [
1344
- h('i', {
1345
- class: getIcon().TABLE_CUSTOM_SORT
1346
- })
1347
- ])
1348
- : h('div', {
1349
- class: 'vxe-table-custom-popup--column-sort-placeholder'
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
+ ])
1307
+ )
1308
+ }
1309
+ tdVNs.push(
1310
+ h('td', {
1311
+ key: 'at',
1312
+ class: 'vxe-table-custom-popup--column-td col--name'
1313
+ }, [
1314
+ h('div', {
1315
+ class: 'vxe-table-custom-popup--name'
1316
+ }, [
1317
+ (allowSort && showSortDragButton) || (allowGroup || allowValues)
1318
+ ? (
1319
+ showSortBtn || ((allowGroup || allowValues) && !isColGroup)
1320
+ ? h('div', {
1321
+ class: ['vxe-table-custom-popup--column-sort-btn', {
1322
+ 'is--disabled': isHidden
1323
+ }],
1324
+ attrs: {
1325
+ title: getI18n('vxe.custom.setting.sortHelpTip')
1326
+ },
1327
+ on: (isHidden
1328
+ ? {}
1329
+ : {
1330
+ mousedown: $xeTableCustomPanel.sortMousedownEvent,
1331
+ mouseup: $xeTableCustomPanel.sortMouseupEvent
1332
+ })
1333
+ }, [
1334
+ h('i', {
1335
+ class: getIcon().TABLE_CUSTOM_SORT
1350
1336
  })
1351
- )
1352
- : renderEmptyElement($xeTable),
1353
- column.type === 'html'
1354
- ? h('div', {
1355
- key: '1',
1356
- class: 'vxe-table-custom-popup--title',
1357
- domProps: {
1358
- innerHTML: colTitle
1359
- }
1360
- })
1361
- : h('div', {
1362
- key: '0',
1363
- class: 'vxe-table-custom-popup--title',
1364
- attrs: {
1365
- title: colTitle
1366
- }
1367
- }, colTitle),
1368
- showSortBtn && (showSortMoveButton || showSortPutButton)
1369
- ? h('div', {
1370
- class: 'vxe-table-custom-popup--move-btn'
1371
- }, VxeUIButtonComponent
1372
- ? [
1373
- showSortMoveButton
1374
- ? h(VxeUIButtonComponent, {
1375
- props: {
1376
- mode: 'text',
1377
- content: getI18n('vxe.custom.setting.moveUp'),
1378
- title: getI18n('vxe.custom.setting.moveUpTitle'),
1379
- disabled: index <= 0
1380
- },
1381
- on: {
1382
- click (evntParame: VxeButtonDefines.ClickEventParams) {
1383
- $xeTableCustomPanel.sortMoveUpEvent(evntParame, column)
1384
- }
1337
+ ])
1338
+ : h('div', {
1339
+ class: 'vxe-table-custom-popup--column-sort-placeholder'
1340
+ })
1341
+ )
1342
+ : renderEmptyElement($xeTable),
1343
+ column.type === 'html'
1344
+ ? h('div', {
1345
+ key: '1',
1346
+ class: 'vxe-table-custom-popup--title',
1347
+ domProps: {
1348
+ innerHTML: colTitle
1349
+ }
1350
+ })
1351
+ : h('div', {
1352
+ key: '0',
1353
+ class: 'vxe-table-custom-popup--title',
1354
+ attrs: {
1355
+ title: colTitle
1356
+ }
1357
+ }, colTitle),
1358
+ showSortBtn && (showSortMoveButton || showSortPutButton)
1359
+ ? h('div', {
1360
+ class: 'vxe-table-custom-popup--move-btn'
1361
+ }, VxeUIButtonComponent
1362
+ ? [
1363
+ showSortMoveButton
1364
+ ? h(VxeUIButtonComponent, {
1365
+ props: {
1366
+ mode: 'text',
1367
+ icon: 'vxe-icon-arrows-up',
1368
+ title: getI18n('vxe.custom.setting.moveUpTitle'),
1369
+ disabled: index <= 0
1370
+ },
1371
+ on: {
1372
+ click (evntParame: VxeButtonDefines.ClickEventParams) {
1373
+ $xeTableCustomPanel.sortMoveUpEvent(evntParame, column)
1385
1374
  }
1386
- })
1387
- : renderEmptyElement($xeTable),
1388
- showSortMoveButton
1389
- ? h(VxeUIButtonComponent, {
1390
- props: {
1391
- mode: 'text',
1392
- content: getI18n('vxe.custom.setting.moveDn'),
1393
- title: getI18n('vxe.custom.setting.moveDnTitle'),
1394
- disabled: index >= items.length - 1
1395
- },
1396
- on: {
1397
- click (evntParame: VxeButtonDefines.ClickEventParams) {
1398
- $xeTableCustomPanel.sortMoveDnEvent(evntParame, column)
1399
- }
1375
+ }
1376
+ })
1377
+ : renderEmptyElement($xeTable),
1378
+ showSortMoveButton
1379
+ ? h(VxeUIButtonComponent, {
1380
+ props: {
1381
+ mode: 'text',
1382
+ icon: 'vxe-icon-arrows-down',
1383
+ title: getI18n('vxe.custom.setting.moveDnTitle'),
1384
+ disabled: index >= items.length - 1
1385
+ },
1386
+ on: {
1387
+ click (evntParame: VxeButtonDefines.ClickEventParams) {
1388
+ $xeTableCustomPanel.sortMoveDnEvent(evntParame, column)
1400
1389
  }
1401
- })
1402
- : renderEmptyElement($xeTable),
1403
- showSortPutButton && !parentItem
1404
- ? h(VxeUIButtonComponent, {
1405
- props: {
1406
- mode: 'text',
1407
- content: getI18n('vxe.custom.setting.putTop'),
1408
- title: getI18n('vxe.custom.setting.putTopTitle'),
1409
- disabled: index <= 0
1410
- },
1411
- on: {
1412
- click (evntParame: VxeButtonDefines.ClickEventParams) {
1413
- $xeTableCustomPanel.sortMoveTopEvent(evntParame, column)
1414
- }
1390
+ }
1391
+ })
1392
+ : renderEmptyElement($xeTable),
1393
+ showSortPutButton && !parentItem
1394
+ ? h(VxeUIButtonComponent, {
1395
+ props: {
1396
+ mode: 'text',
1397
+ icon: 'vxe-icon-top',
1398
+ title: getI18n('vxe.custom.setting.putTopTitle'),
1399
+ disabled: index <= 0
1400
+ },
1401
+ on: {
1402
+ click (evntParame: VxeButtonDefines.ClickEventParams) {
1403
+ $xeTableCustomPanel.sortMoveTopEvent(evntParame, column)
1415
1404
  }
1416
- })
1417
- : renderEmptyElement($xeTable),
1418
- showSortPutButton && !parentItem
1419
- ? h(VxeUIButtonComponent, {
1420
- props: {
1421
- mode: 'text',
1422
- content: getI18n('vxe.custom.setting.putBottom'),
1423
- title: getI18n('vxe.custom.setting.putBottomTitle'),
1424
- disabled: index >= items.length - 1
1425
- },
1426
- on: {
1427
- click (evntParame: VxeButtonDefines.ClickEventParams) {
1428
- $xeTableCustomPanel.sortMoveBottomEvent(evntParame, column)
1429
- }
1405
+ }
1406
+ })
1407
+ : renderEmptyElement($xeTable),
1408
+ showSortPutButton && !parentItem
1409
+ ? h(VxeUIButtonComponent, {
1410
+ props: {
1411
+ mode: 'text',
1412
+ icon: 'vxe-icon-bottom',
1413
+ title: getI18n('vxe.custom.setting.putBottomTitle'),
1414
+ disabled: index >= items.length - 1
1415
+ },
1416
+ on: {
1417
+ click (evntParame: VxeButtonDefines.ClickEventParams) {
1418
+ $xeTableCustomPanel.sortMoveBottomEvent(evntParame, column)
1430
1419
  }
1431
- })
1432
- : renderEmptyElement($xeTable)
1433
- ]
1434
- : [])
1435
- : renderEmptyElement($xeTable)
1436
- ])
1437
- ]),
1438
- allowResizable
1439
- ? h('td', {
1440
- class: 'vxe-table-custom-popup--column-item col--resizable'
1441
- }, [
1442
- (
1443
- (column.children && column.children.length) ||
1444
- !(XEUtils.isBoolean(column.resizable) ? column.resizable : (columnOpts.resizable || allResizable))
1445
- )
1446
- ? h('span', '-')
1447
- : (VxeUINumberInputComponent
1420
+ }
1421
+ })
1422
+ : renderEmptyElement($xeTable)
1423
+ ]
1424
+ : [])
1425
+ : renderEmptyElement($xeTable)
1426
+ ])
1427
+ ])
1428
+ )
1429
+ if (allowResizable) {
1430
+ tdVNs.push(
1431
+ h('td', {
1432
+ key: 'aw',
1433
+ class: 'vxe-table-custom-popup--column-td col--resizable'
1434
+ }, [
1435
+ (
1436
+ (column.children && column.children.length) ||
1437
+ !(XEUtils.isBoolean(column.resizable) ? column.resizable : (columnOpts.resizable || allResizable))
1438
+ )
1439
+ ? h('span', '-')
1440
+ : (
1441
+ VxeUINumberInputComponent
1448
1442
  ? h(VxeUINumberInputComponent, {
1449
1443
  props: {
1450
1444
  type: 'integer',
@@ -1456,52 +1450,338 @@ export default /* define-vxe-component start */ defineVxeComponent({
1456
1450
  },
1457
1451
  on: {
1458
1452
  modelValue (value: any) {
1459
- column.renderResizeWidth = Math.max(0, Number(value))
1453
+ const width = Math.max(0, Number(value))
1454
+ column.renderResizeWidth = width
1460
1455
  },
1461
1456
  change () {
1462
1457
  $xeTableCustomPanel.changeColumnWidth(column)
1463
1458
  }
1464
1459
  }
1465
1460
  })
1466
- : renderEmptyElement($xeTableCustomPanel)
1467
- )
1468
- ])
1469
- : renderEmptyElement($xeTable),
1470
- allowFixed
1471
- ? h('td', {
1472
- class: 'vxe-table-custom-popup--column-item col--fixed'
1473
- }, [
1474
- parentItem
1475
- ? h('span', '-')
1476
- : h('vxe-radio-group', {
1461
+ : renderEmptyElement($xeTable)
1462
+ )
1463
+ ])
1464
+ )
1465
+ }
1466
+ if (allowFixed) {
1467
+ tdVNs.push(
1468
+ h('td', {
1469
+ key: 'af',
1470
+ class: 'vxe-table-custom-popup--column-td col--fixed'
1471
+ }, parentItem
1472
+ ? [h('span', '-')]
1473
+ : (VxeUIRadioGroupComponent
1474
+ ? [
1475
+ h(VxeUIButtonComponent, {
1476
+ props: {
1477
+ icon: column.renderFixed === 'left' ? getIcon().TOOLBAR_TOOLS_FIXED_LEFT_ACTIVE : getIcon().TOOLBAR_TOOLS_FIXED_LEFT,
1478
+ status: column.renderFixed === 'left' ? 'primary' : '',
1479
+ disabled: isHidden || (isMaxFixedColumn && !column.renderFixed),
1480
+ title: getI18n(column.renderFixed === 'left' ? 'vxe.toolbar.cancelFixed' : 'vxe.toolbar.fixedLeft')
1481
+ },
1482
+ on: {
1483
+ click: ({ $event }: VxeButtonDefines.ClickEventParams) => {
1484
+ $xeTableCustomPanel.changeFixedOption(column, 'left', $event)
1485
+ }
1486
+ }
1487
+ }),
1488
+ h(VxeUIButtonComponent, {
1489
+ props: {
1490
+ icon: column.renderFixed === 'right' ? getIcon().TOOLBAR_TOOLS_FIXED_RIGHT_ACTIVE : getIcon().TOOLBAR_TOOLS_FIXED_RIGHT,
1491
+ status: column.renderFixed === 'right' ? 'primary' : '',
1492
+ disabled: isHidden || (isMaxFixedColumn && !column.renderFixed),
1493
+ title: getI18n(column.renderFixed === 'right' ? 'vxe.toolbar.cancelFixed' : 'vxe.toolbar.fixedRight')
1494
+ },
1495
+ on: {
1496
+ click: ({ $event }: VxeButtonDefines.ClickEventParams) => {
1497
+ $xeTableCustomPanel.changeFixedOption(column, 'right', $event)
1498
+ }
1499
+ }
1500
+ })
1501
+ ]
1502
+ : []
1503
+ )
1504
+ )
1505
+ )
1506
+ }
1507
+ if (allowAlign) {
1508
+ tdVNs.push(
1509
+ h('td', {
1510
+ key: 'aa',
1511
+ class: 'vxe-table-custom-popup--column-td col--align'
1512
+ }, VxeUIRadioGroupComponent
1513
+ ? [
1514
+ h(VxeUIRadioGroupComponent, {
1477
1515
  props: {
1478
- value: column.renderFixed || '',
1516
+ value: column.renderAlign || '',
1479
1517
  type: 'button',
1480
- size: 'mini',
1518
+ strict: false,
1481
1519
  disabled: isHidden,
1482
- options: [
1483
- { label: getI18n('vxe.custom.setting.fixedLeft'), value: 'left', disabled: isHidden || isMaxFixedColumn },
1484
- { label: getI18n('vxe.custom.setting.fixedUnset'), value: '', disabled: isHidden },
1485
- { label: getI18n('vxe.custom.setting.fixedRight'), value: 'right', disabled: isHidden || isMaxFixedColumn }
1486
- ]
1520
+ options: alignList
1487
1521
  },
1488
1522
  on: {
1489
- change ({ label, $event }: VxeRadioGroupDefines.ChangeEventParams) {
1490
- $xeTableCustomPanel.changeFixedOption(column, label, $event)
1523
+ change ({ value, $event }: VxeRadioGroupDefines.ChangeEventParams) {
1524
+ $xeTableCustomPanel.changeAlignOption(column, value, 'align', 'renderAlign', 'custom-align-change', $event)
1491
1525
  }
1492
1526
  }
1493
1527
  })
1494
- ])
1495
- : renderEmptyElement($xeTable)
1496
- ])
1528
+ ]
1529
+ : []
1530
+
1531
+ )
1532
+ )
1533
+ }
1534
+ if (allowHeaderAlign) {
1535
+ tdVNs.push(
1536
+ h('td', {
1537
+ key: 'aha',
1538
+ class: 'vxe-table-custom-popup--column-td col--header-align'
1539
+ }, isColGroup
1540
+ ? [h('span', '-')]
1541
+ : (VxeUIRadioGroupComponent
1542
+ ? [
1543
+ h(VxeUIRadioGroupComponent, {
1544
+ props: {
1545
+ value: column.renderHeaderAlign || '',
1546
+ type: 'button',
1547
+ strict: false,
1548
+ disabled: isHidden,
1549
+ options: alignList
1550
+ },
1551
+ on: {
1552
+ change ({ value, $event }: VxeRadioGroupDefines.ChangeEventParams) {
1553
+ $xeTableCustomPanel.changeAlignOption(column, value, 'headerAlign', 'renderHeaderAlign', 'custom-header-align-change', $event)
1554
+ }
1555
+ }
1556
+ })
1557
+ ]
1558
+ : []
1559
+ )
1560
+ )
1561
+ )
1562
+ }
1563
+ if (allowFooterAlign) {
1564
+ tdVNs.push(
1565
+ h('td', {
1566
+ key: 'afa',
1567
+ class: 'vxe-table-custom-popup--column-td col--footer-align'
1568
+ }, isColGroup
1569
+ ? [h('span', '-')]
1570
+ : (VxeUIRadioGroupComponent
1571
+ ? [
1572
+ h(VxeUIRadioGroupComponent, {
1573
+ props: {
1574
+ value: column.renderFooterAlign || '',
1575
+ type: 'button',
1576
+ strict: false,
1577
+ disabled: isHidden,
1578
+ options: alignList
1579
+ },
1580
+ on: {
1581
+ change ({ value, $event }: VxeRadioGroupDefines.ChangeEventParams) {
1582
+ $xeTableCustomPanel.changeAlignOption(column, value, 'footerAlign', 'renderFooterAlign', 'custom-footer-align-change', $event)
1583
+ }
1584
+ }
1585
+ })
1586
+ ]
1587
+ : []
1588
+ )
1589
+ )
1590
+ )
1591
+ }
1592
+
1593
+ trVNs.push(
1594
+ h('tr', {
1595
+ key: column.id,
1596
+ attrs: {
1597
+ colid: column.id
1598
+ },
1599
+ class: [`vxe-table-custom-popup--row level--${column.level}`, {
1600
+ 'is--group': isColGroup
1601
+ }],
1602
+ on: {
1603
+ dragstart: $xeTableCustomPanel.sortDragstartEvent,
1604
+ dragend: $xeTableCustomPanel.sortDragendEvent,
1605
+ dragover: $xeTableCustomPanel.sortDragoverEvent
1606
+ }
1607
+ }, tdVNs)
1497
1608
  )
1498
1609
  }
1499
1610
  })
1611
+ return trVNs
1612
+ },
1613
+ renderPopupPanel (h: CreateElement) {
1614
+ const VxeUIModalComponent = VxeUI.getComponent('VxeModal')
1615
+ const VxeUIDrawerComponent = VxeUI.getComponent('VxeDrawer')
1616
+ const VxeUIButtonComponent = VxeUI.getComponent('VxeButton')
1617
+
1618
+ const $xeTableCustomPanel = this
1619
+ const props = $xeTableCustomPanel
1620
+ const $xeTable = $xeTableCustomPanel.$xeTable
1621
+ const tableProps = $xeTable
1622
+ const tableReactData = $xeTable as unknown as TableReactData
1623
+ const $xeGrid = $xeTable.$xeGrid
1624
+ const $xeGantt = $xeTable.$xeGantt
1625
+
1626
+ const { customStore } = props
1627
+ const { treeConfig, rowGroupConfig, aggregateConfig } = tableProps
1628
+ const { isCustomStatus, customColumnList } = tableReactData
1629
+ const vSize = $xeTable.computeSize
1630
+ const customOpts = $xeTable.computeCustomOpts
1631
+ const aggregateOpts = $xeTable.computeAggregateOpts
1632
+ const { panePopupStyle } = customStore
1633
+ const { placement: aggPlacement } = aggregateOpts
1634
+ const { mode, immediate, modalOptions, drawerOptions, allowVisible, allowFixed, allowAlign, allowHeaderAlign, allowFooterAlign, allowResizable } = customOpts
1635
+ const columnOpts = $xeTable.computeColumnOpts
1636
+ const { maxFixedSize } = columnOpts
1637
+ const modalOpts = Object.assign({}, modalOptions)
1638
+ const drawerOpts = Object.assign({}, drawerOptions)
1639
+ const slots = customOpts.slots || {}
1640
+ const headerSlot = slots.header
1641
+ const topSlot = slots.top
1642
+ const bottomSlot = slots.bottom
1643
+ const defaultSlot = slots.default
1644
+ const footerSlot = slots.footer
1645
+ const isAllChecked = customStore.isAll
1646
+ const isAllIndeterminate = customStore.isIndeterminate
1647
+ const isAggRtBmLayout = aggPlacement === 'right' || aggPlacement === 'bottom'
1648
+ const params = {
1649
+ $table: $xeTable,
1650
+ $grid: $xeGrid,
1651
+ $gantt: $xeGantt,
1652
+ columns: customColumnList,
1653
+ isAllChecked,
1654
+ isAllIndeterminate,
1655
+ isCustomStatus
1656
+ }
1657
+
1658
+ const colVNs: VNode[] = []
1659
+ const headVNs: VNode[] = []
1660
+ if (allowVisible) {
1661
+ colVNs.push(
1662
+ h('col', {
1663
+ key: 'av',
1664
+ class: 'vxe-table-custom-popup--column-col col--checkbox'
1665
+ })
1666
+ )
1667
+ headVNs.push(
1668
+ h('th', {
1669
+ key: 'av',
1670
+ class: 'vxe-table-custom-popup--column-th col--checkbox'
1671
+ }, [
1672
+ h('div', {
1673
+ class: ['vxe-table-custom--checkbox-option', {
1674
+ 'is--checked': isAllChecked,
1675
+ 'is--indeterminate': isAllIndeterminate
1676
+ }],
1677
+ attrs: {
1678
+ title: getI18n('vxe.table.allTitle')
1679
+ },
1680
+ on: {
1681
+ click: $xeTableCustomPanel.allOptionEvent
1682
+ }
1683
+ }, [
1684
+ h('span', {
1685
+ class: ['vxe-checkbox--icon', isAllIndeterminate ? getIcon().TABLE_CHECKBOX_INDETERMINATE : (isAllChecked ? getIcon().TABLE_CHECKBOX_CHECKED : getIcon().TABLE_CHECKBOX_UNCHECKED)]
1686
+ })
1687
+ // h('span', {
1688
+ // class: 'vxe-checkbox--label'
1689
+ // }, getI18n('vxe.toolbar.customAll'))
1690
+ ])
1691
+ ])
1692
+ )
1693
+ }
1694
+ colVNs.push(
1695
+ h('col', {
1696
+ key: 'at',
1697
+ class: 'vxe-table-custom-popup--column-col col--title'
1698
+ })
1699
+ )
1700
+ headVNs.push(
1701
+ h('th', {
1702
+ key: 'at',
1703
+ class: 'vxe-table-custom-popup--column-th col--title'
1704
+ }, getI18n('vxe.custom.setting.colTitle'))
1705
+ )
1706
+ if (allowResizable) {
1707
+ colVNs.push(
1708
+ h('col', {
1709
+ key: 'aw',
1710
+ class: 'vxe-table-custom-popup--column-col col--width'
1711
+ })
1712
+ )
1713
+ headVNs.push(
1714
+ h('th', {
1715
+ key: 'aw',
1716
+ class: 'vxe-table-custom-popup--column-th col--width'
1717
+ }, getI18n('vxe.custom.setting.colResizable'))
1718
+ )
1719
+ }
1720
+ if (allowFixed) {
1721
+ colVNs.push(
1722
+ h('col', {
1723
+ key: 'af',
1724
+ class: 'vxe-table-custom-popup--column-col col--fixed'
1725
+ })
1726
+ )
1727
+ headVNs.push(
1728
+ h('th', {
1729
+ key: 'af',
1730
+ class: 'vxe-table-custom-popup--column-th col--fixed'
1731
+ }, getI18n(`vxe.custom.setting.${maxFixedSize ? 'colFixedMax' : 'colFixed'}`, [maxFixedSize]))
1732
+ )
1733
+ }
1734
+ if (allowAlign) {
1735
+ colVNs.push(
1736
+ h('col', {
1737
+ key: 'aa',
1738
+ class: 'vxe-table-custom-popup--column-col col--align'
1739
+ })
1740
+ )
1741
+ headVNs.push(
1742
+ h('th', {
1743
+ key: 'aa',
1744
+ class: 'vxe-table-custom-popup--column-th col--align'
1745
+ }, getI18n('vxe.custom.setting.colAlign'))
1746
+ )
1747
+ }
1748
+ if (allowHeaderAlign) {
1749
+ colVNs.push(
1750
+ h('col', {
1751
+ key: 'aha',
1752
+ class: 'vxe-table-custom-popup--column-col col--header-align'
1753
+ })
1754
+ )
1755
+ headVNs.push(
1756
+ h('th', {
1757
+ key: 'aha',
1758
+ class: 'vxe-table-custom-popup--column-th col--header-align'
1759
+ }, getI18n('vxe.custom.setting.colHeadAlign'))
1760
+ )
1761
+ }
1762
+ if (allowFooterAlign) {
1763
+ colVNs.push(
1764
+ h('col', {
1765
+ key: 'afa',
1766
+ class: 'vxe-table-custom-popup--column-col col--footer-align'
1767
+ })
1768
+ )
1769
+ headVNs.push(
1770
+ h('th', {
1771
+ key: 'afa',
1772
+ class: 'vxe-table-custom-popup--column-th col--footer-align'
1773
+ }, getI18n('vxe.custom.setting.colFootAlign'))
1774
+ )
1775
+ }
1776
+
1500
1777
  const scopedSlots: Record<string, any> = {
1501
1778
  default: () => {
1502
1779
  return h('div', {
1503
1780
  ref: 'refBodyWrapperElem',
1504
- class: ['vxe-table-custom-popup--body-wrapper', `agg-layout--${aggPlacement}`]
1781
+ class: ['vxe-table-custom-popup--body-wrapper', `agg-layout--${aggPlacement}`, {
1782
+ [`size--${vSize}`]: vSize
1783
+ }],
1784
+ style: panePopupStyle
1505
1785
  }, defaultSlot
1506
1786
  ? $xeTable.callSlot(defaultSlot, params, h)
1507
1787
  : [
@@ -1525,60 +1805,9 @@ export default /* define-vxe-component start */ defineVxeComponent({
1525
1805
  class: 'vxe-table-custom-popup--table-wrapper'
1526
1806
  }, [
1527
1807
  h('table', {}, [
1528
- h('colgroup', {}, [
1529
- allowVisible
1530
- ? h('col', {
1531
- class: 'vxe-table-custom-popup--table-col-seq'
1532
- })
1533
- : renderEmptyElement($xeTable),
1534
- h('col', {
1535
- class: 'vxe-table-custom-popup--table-col-title'
1536
- }),
1537
- allowResizable
1538
- ? h('col', {
1539
- class: 'vxe-table-custom-popup--table-col-width'
1540
- })
1541
- : renderEmptyElement($xeTable),
1542
- allowFixed
1543
- ? h('col', {
1544
- class: 'vxe-table-custom-popup--table-col-fixed'
1545
- })
1546
- : renderEmptyElement($xeTable)
1547
- ]),
1808
+ h('colgroup', {}, colVNs),
1548
1809
  h('thead', {}, [
1549
- h('tr', {}, [
1550
- allowVisible
1551
- ? h('th', {}, [
1552
- h('div', {
1553
- class: ['vxe-table-custom--checkbox-option', {
1554
- 'is--checked': isAllChecked,
1555
- 'is--indeterminate': isAllIndeterminate
1556
- }],
1557
- attrs: {
1558
- title: getI18n('vxe.table.allTitle')
1559
- },
1560
- on: {
1561
- click: $xeTableCustomPanel.allOptionEvent
1562
- }
1563
-
1564
- }, [
1565
- h('span', {
1566
- class: ['vxe-checkbox--icon', isAllIndeterminate ? getIcon().TABLE_CHECKBOX_INDETERMINATE : (isAllChecked ? getIcon().TABLE_CHECKBOX_CHECKED : getIcon().TABLE_CHECKBOX_UNCHECKED)]
1567
- }),
1568
- h('span', {
1569
- class: 'vxe-checkbox--label'
1570
- }, getI18n('vxe.toolbar.customAll'))
1571
- ])
1572
- ])
1573
- : renderEmptyElement($xeTable),
1574
- h('th', {}, getI18n('vxe.custom.setting.colTitle')),
1575
- allowResizable
1576
- ? h('th', {}, getI18n('vxe.custom.setting.colResizable'))
1577
- : renderEmptyElement($xeTable),
1578
- allowFixed
1579
- ? h('th', {}, getI18n(`vxe.custom.setting.${maxFixedSize ? 'colFixedMax' : 'colFixed'}`, [maxFixedSize]))
1580
- : renderEmptyElement($xeTable)
1581
- ])
1810
+ h('tr', {}, headVNs)
1582
1811
  ]),
1583
1812
  h('transition-group', {
1584
1813
  class: 'vxe-table-custom--panel-list',
@@ -1586,7 +1815,7 @@ export default /* define-vxe-component start */ defineVxeComponent({
1586
1815
  tag: 'tbody',
1587
1816
  name: 'vxe-table-custom--list'
1588
1817
  }
1589
- }, trVNs)
1818
+ }, $xeTableCustomPanel.renderPopupBodys(h))
1590
1819
  ])
1591
1820
  ]),
1592
1821
  bottomSlot
@@ -1624,6 +1853,7 @@ export default /* define-vxe-component start */ defineVxeComponent({
1624
1853
  immediate
1625
1854
  ? h(VxeUIButtonComponent, {
1626
1855
  props: {
1856
+ status: 'primary',
1627
1857
  content: customOpts.resetButtonText || getI18n('vxe.table.customClose')
1628
1858
  },
1629
1859
  on: {
@@ -1684,11 +1914,11 @@ export default /* define-vxe-component start */ defineVxeComponent({
1684
1914
  ? h(VxeUIModalComponent, {
1685
1915
  key: 'modal',
1686
1916
  props: {
1687
- className: ['vxe-table-custom-popup-wrapper', 'vxe-table--ignore-clear', modalOpts.className || ''].join(' '),
1917
+ className: ['vxe-table-custom-modal-wrapper', 'vxe-table--ignore-clear', modalOpts.className || ''].join(' '),
1688
1918
  value: customStore.visible,
1689
1919
  title: modalOpts.title || getI18n('vxe.custom.cstmTitle'),
1690
- width: modalOpts.width || Math.min(880, document.documentElement.clientWidth),
1691
- minWidth: modalOpts.minWidth || 700,
1920
+ width: modalOpts.width || Math.min(1000, document.documentElement.clientWidth),
1921
+ minWidth: modalOpts.minWidth || 800,
1692
1922
  height: modalOpts.height || Math.min(680, document.documentElement.clientHeight),
1693
1923
  minHeight: modalOpts.minHeight || 400,
1694
1924
  showZoom: modalOpts.showZoom,
@@ -1697,6 +1927,7 @@ export default /* define-vxe-component start */ defineVxeComponent({
1697
1927
  mask: modalOpts.mask,
1698
1928
  lockView: modalOpts.lockView,
1699
1929
  resize: modalOpts.resize,
1930
+ transfer: modalOpts.transfer,
1700
1931
  escClosable: !!modalOpts.escClosable,
1701
1932
  maskClosable: !!modalOpts.maskClosable,
1702
1933
  destroyOnClose: true,