vxe-table 4.19.10 → 4.19.12

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 (56) hide show
  1. package/dist/all.esm.js +226 -217
  2. package/dist/style.css +1 -1
  3. package/dist/style.min.css +1 -1
  4. package/es/grid/src/grid.js +8 -2
  5. package/es/index.css +1 -1
  6. package/es/index.min.css +1 -1
  7. package/es/style.css +1 -1
  8. package/es/style.min.css +1 -1
  9. package/es/table/module/menu/panel.js +2 -2
  10. package/es/table/src/cell.js +16 -12
  11. package/es/table/src/columnInfo.js +77 -77
  12. package/es/table/src/table.js +3 -3
  13. package/es/table/style.css +18 -6
  14. package/es/table/style.min.css +1 -1
  15. package/es/ui/index.js +1 -1
  16. package/es/ui/src/log.js +1 -1
  17. package/es/vxe-table/style.css +18 -6
  18. package/es/vxe-table/style.min.css +1 -1
  19. package/lib/grid/src/grid.js +6 -2
  20. package/lib/grid/src/grid.min.js +1 -1
  21. package/lib/index.css +1 -1
  22. package/lib/index.min.css +1 -1
  23. package/lib/index.umd.js +261 -244
  24. package/lib/index.umd.min.js +1 -1
  25. package/lib/style.css +1 -1
  26. package/lib/style.min.css +1 -1
  27. package/lib/table/module/menu/panel.js +3 -3
  28. package/lib/table/module/menu/panel.min.js +1 -1
  29. package/lib/table/src/cell.js +6 -4
  30. package/lib/table/src/cell.min.js +1 -1
  31. package/lib/table/src/columnInfo.js +85 -77
  32. package/lib/table/src/columnInfo.min.js +1 -1
  33. package/lib/table/src/table.js +4 -1
  34. package/lib/table/src/table.min.js +1 -1
  35. package/lib/table/style/style.css +18 -6
  36. package/lib/table/style/style.min.css +1 -1
  37. package/lib/ui/index.js +1 -1
  38. package/lib/ui/index.min.js +1 -1
  39. package/lib/ui/src/log.js +1 -1
  40. package/lib/ui/src/log.min.js +1 -1
  41. package/lib/vxe-table/style/style.css +18 -6
  42. package/lib/vxe-table/style/style.min.css +1 -1
  43. package/package.json +2 -2
  44. package/packages/grid/src/grid.ts +6 -2
  45. package/packages/table/module/menu/panel.ts +2 -2
  46. package/packages/table/src/cell.ts +16 -12
  47. package/packages/table/src/columnInfo.ts +80 -80
  48. package/packages/table/src/table.ts +3 -3
  49. package/packages/table/src/util.ts +1 -1
  50. package/styles/components/table.scss +24 -6
  51. /package/es/{iconfont.1780911752570.ttf → iconfont.1781140839085.ttf} +0 -0
  52. /package/es/{iconfont.1780911752570.woff → iconfont.1781140839085.woff} +0 -0
  53. /package/es/{iconfont.1780911752570.woff2 → iconfont.1781140839085.woff2} +0 -0
  54. /package/lib/{iconfont.1780911752570.ttf → iconfont.1781140839085.ttf} +0 -0
  55. /package/lib/{iconfont.1780911752570.woff → iconfont.1781140839085.woff} +0 -0
  56. /package/lib/{iconfont.1780911752570.woff2 → iconfont.1781140839085.woff2} +0 -0
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "vxe-table",
3
- "version": "4.19.10",
3
+ "version": "4.19.12",
4
4
  "description": "A PC-end table component based on Vxe UI, supporting copy-paste, data pivot table, and high-performance virtual list table solution.",
5
5
  "scripts": {
6
6
  "update": "npm install --legacy-peer-deps",
@@ -69,7 +69,7 @@
69
69
  "typescript": "~4.7.4",
70
70
  "vue": "3.4.27",
71
71
  "vue-router": "~4.5.1",
72
- "vxe-pc-ui": "4.14.32"
72
+ "vxe-pc-ui": "4.14.35"
73
73
  },
74
74
  "vetur": {
75
75
  "tags": "helper/vetur/tags.json",
@@ -465,14 +465,16 @@ export default defineVxeComponent({
465
465
  return
466
466
  }
467
467
  if (proxyConfig && isEnableConf(proxyOpts)) {
468
+ $xeGrid.dispatchEvent('form-submit', params, params.$event)
468
469
  internalData.uFoot = true
469
470
  $xeGrid.commitProxy('reload').then((rest) => {
470
471
  $xeGrid.dispatchEvent('proxy-query', { ...rest, isReload: true }, params.$event)
471
472
  })
472
473
  internalData.uFoot = false
473
474
  updateQueryFooter()
475
+ } else {
476
+ $xeGrid.dispatchEvent('form-submit', params, params.$event)
474
477
  }
475
- $xeGrid.dispatchEvent('form-submit', params, params.$event)
476
478
  }
477
479
 
478
480
  const resetFormEvent: VxeFormEvents.Reset = (params) => {
@@ -481,6 +483,7 @@ export default defineVxeComponent({
481
483
  const { $event } = params
482
484
  const proxyOpts = computeProxyOpts.value
483
485
  if (proxyConfig && isEnableConf(proxyOpts)) {
486
+ $xeGrid.dispatchEvent('form-reset', params, $event)
484
487
  if ($xeTable) {
485
488
  $xeTable.clearScroll()
486
489
  }
@@ -490,8 +493,9 @@ export default defineVxeComponent({
490
493
  })
491
494
  internalData.uFoot = false
492
495
  updateQueryFooter()
496
+ } else {
497
+ $xeGrid.dispatchEvent('form-reset', params, $event)
493
498
  }
494
- $xeGrid.dispatchEvent('form-reset', params, $event)
495
499
  }
496
500
 
497
501
  const submitInvalidEvent: VxeFormEvents.SubmitInvalid = (params) => {
@@ -35,8 +35,8 @@ export default defineVxeComponent({
35
35
  const { ctxMenuStore } = tableReactData
36
36
  const { computeMenuOpts } = $xeTable.getComputeMaps()
37
37
  const menuOpts = computeMenuOpts.value
38
- const { transfer, destroyOnClose } = menuOpts
39
- const { visible, list, className } = ctxMenuStore
38
+ const { transfer, destroyOnClose, className } = menuOpts
39
+ const { visible, list } = ctxMenuStore
40
40
 
41
41
  return h(Teleport, {
42
42
  to: 'body',
@@ -996,24 +996,28 @@ export const Cell = {
996
996
  }
997
997
  return renderCellBaseVNs(params, [
998
998
  showIcon && (!visibleMethod || visibleMethod(params))
999
- ? h('span', {
999
+ ? h('div', {
1000
1000
  class: ['vxe-table--expanded', {
1001
1001
  'is--active': isActive
1002
- }],
1003
- onMousedown (evnt) {
1004
- evnt.stopPropagation()
1005
- },
1006
- onClick (evnt: MouseEvent) {
1007
- $table.triggerRowExpandEvent(evnt, params)
1008
- }
1002
+ }]
1009
1003
  }, [
1010
- h('i', {
1011
- class: ['vxe-table--expand-btn', isLazyLoading ? (iconLoaded || getIcon().TABLE_EXPAND_LOADED) : (isActive ? (iconOpen || getIcon().TABLE_EXPAND_OPEN) : (iconClose || getIcon().TABLE_EXPAND_CLOSE))]
1012
- })
1004
+ h('span', {
1005
+ class: 'vxe-table--expand-btn',
1006
+ onMousedown (evnt) {
1007
+ evnt.stopPropagation()
1008
+ },
1009
+ onClick (evnt: MouseEvent) {
1010
+ $table.triggerRowExpandEvent(evnt, params)
1011
+ }
1012
+ }, [
1013
+ h('i', {
1014
+ class: isLazyLoading ? (iconLoaded || getIcon().TABLE_EXPAND_LOADED) : (isActive ? (iconOpen || getIcon().TABLE_EXPAND_OPEN) : (iconClose || getIcon().TABLE_EXPAND_CLOSE))
1015
+ })
1016
+ ])
1013
1017
  ])
1014
1018
  : renderEmptyElement($table),
1015
1019
  defaultSlot || labelField
1016
- ? h('span', {
1020
+ ? h('div', {
1017
1021
  class: 'vxe-table--expand-label'
1018
1022
  }, defaultSlot ? $table.callSlot(defaultSlot, params) : XEUtils.get(row, labelField as string))
1019
1023
  : renderEmptyElement($table)
@@ -2,43 +2,44 @@ import XEUtils from 'xe-utils'
2
2
  import { VxeUI } from '../../ui'
3
3
  import { toFilters } from './util'
4
4
  import { isEnableConf, getFuncText } from '../../ui/src/utils'
5
+ import { isPx } from '../../ui/src/dom'
5
6
  import { warnLog, errLog } from '../../ui/src/log'
6
7
 
7
- import type { VxeTableConstructor, VxeTablePrivateMethods, VxeTableDefines } from '../../../types'
8
+ import type { VxeTableConstructor, VxeTablePrivateMethods, VxeTableDefines, VxeColumnProps } from '../../../types'
8
9
 
9
10
  const { getI18n, formats, renderer } = VxeUI
10
11
 
11
12
  export class ColumnInfo {
12
13
  /* eslint-disable @typescript-eslint/no-use-before-define */
13
- constructor ($xeTable: VxeTableConstructor & VxeTablePrivateMethods, _vm: any, { renderHeader, renderCell, renderFooter, renderData }: any = {}) {
14
+ constructor ($xeTable: VxeTableConstructor & VxeTablePrivateMethods, colConfs: VxeColumnProps & { renderHeader?: any, renderCell?: any, renderFooter?: any, slots?: any }, { renderHeader, renderCell, renderFooter, renderData }: any = {}) {
14
15
  const tableProps = $xeTable.props
15
16
  const $xeGrid = $xeTable.xeGrid
16
17
  const $xeGantt = $xeTable.xeGantt
17
18
  const $xeGGWrapper = $xeGrid || $xeGantt
18
19
 
19
- const { field, editRender, filterRender } = _vm
20
+ const { type, field, width, visible, aggFunc, formatter, filterMultiple, cellRender, editRender, filterRender } = colConfs
20
21
 
21
- const colId = _vm.colId || XEUtils.uniqueId('col_')
22
+ const colId = colConfs.colId || XEUtils.uniqueId('col_')
22
23
 
23
- const formatter: string | any[] = _vm.formatter
24
- const visible = XEUtils.isBoolean(_vm.visible) ? _vm.visible : true
24
+ const defaultVisible = XEUtils.isBoolean(visible) ? visible : true
25
+ const defaultRenderWidth = width && isPx(width) && width !== 'auto' ? Math.max(0, XEUtils.toInteger(width)) : 0
25
26
 
26
- const flCompConf = isEnableConf(filterRender) ? renderer.get(filterRender.name) : null
27
+ const flCompConf = filterRender && isEnableConf(filterRender) ? renderer.get(filterRender.name) : null
27
28
  const ctFilterOptions = flCompConf ? flCompConf.createTableFilterOptions : null
28
29
 
29
- const filters = toFilters(_vm.filters, colId)
30
+ const filters = toFilters(colConfs.filters, colId)
30
31
 
31
32
  const types = ['seq', 'checkbox', 'radio', 'expand', 'html']
32
- if (_vm.type && types.indexOf(_vm.type) === -1) {
33
- warnLog('vxe.error.errProp', [`type=${_vm.type}`, types.join(', ')])
33
+ if (type && types.indexOf(type) === -1) {
34
+ warnLog('vxe.error.errProp', [`type=${type}`, types.join(', ')])
34
35
  }
35
- if (XEUtils.isBoolean(_vm.cellRender) || (_vm.cellRender && !XEUtils.isObject(_vm.cellRender))) {
36
- warnLog('vxe.error.errProp', [`column.cell-render=${_vm.cellRender}`, 'column.cell-render={}'])
36
+ if (XEUtils.isBoolean(cellRender) || (cellRender && !XEUtils.isObject(cellRender))) {
37
+ warnLog('vxe.error.errProp', [`column.cell-render=${cellRender}`, 'column.cell-render={}'])
37
38
  }
38
- if (XEUtils.isBoolean(_vm.editRender) || (_vm.editRender && !XEUtils.isObject(_vm.editRender))) {
39
- warnLog('vxe.error.errProp', [`column.edit-render=${_vm.editRender}`, 'column.edit-render={}'])
39
+ if (XEUtils.isBoolean(editRender) || (editRender && !XEUtils.isObject(editRender))) {
40
+ warnLog('vxe.error.errProp', [`column.edit-render=${editRender}`, 'column.edit-render={}'])
40
41
  }
41
- if (_vm.type === 'expand') {
42
+ if (type === 'expand') {
42
43
  const { treeConfig } = tableProps
43
44
  const { computeTreeOpts } = $xeTable.getComputeMaps()
44
45
  const treeOpts = computeTreeOpts.value
@@ -59,9 +60,9 @@ export class ColumnInfo {
59
60
  }
60
61
  }
61
62
  }
62
- if (_vm.aggFunc) {
63
- if (!$xeTable.handlePivotTableAggData && _vm.aggFunc !== true) {
64
- errLog('vxe.error.errProp', [`column.agg-func=${_vm.aggFunc}`, 'column.agg-func=true'])
63
+ if (aggFunc) {
64
+ if (!$xeTable.handlePivotTableAggData && aggFunc !== true) {
65
+ errLog('vxe.error.errProp', [`column.agg-func=${aggFunc}`, 'column.agg-func=true'])
65
66
  }
66
67
  }
67
68
 
@@ -76,74 +77,73 @@ export class ColumnInfo {
76
77
 
77
78
  Object.assign(this, {
78
79
  // 基本属性
79
- type: _vm.type,
80
- property: _vm.field,
80
+ type: colConfs.type,
81
+ property: colConfs.field,
81
82
  field: field,
82
- title: _vm.title,
83
- width: _vm.width,
84
- minWidth: _vm.minWidth,
85
- maxWidth: _vm.maxWidth,
86
- resizable: _vm.resizable,
87
- fixed: _vm.fixed,
88
- align: _vm.align,
89
- headerAlign: _vm.headerAlign,
90
- footerAlign: _vm.footerAlign,
91
- showOverflow: _vm.showOverflow,
92
- showHeaderOverflow: _vm.showHeaderOverflow,
93
- showFooterOverflow: _vm.showFooterOverflow,
94
- className: _vm.className,
95
- headerClassName: _vm.headerClassName,
96
- footerClassName: _vm.footerClassName,
83
+ title: colConfs.title,
84
+ width: colConfs.width,
85
+ minWidth: colConfs.minWidth,
86
+ maxWidth: colConfs.maxWidth,
87
+ resizable: colConfs.resizable,
88
+ fixed: colConfs.fixed,
89
+ align: colConfs.align,
90
+ headerAlign: colConfs.headerAlign,
91
+ footerAlign: colConfs.footerAlign,
92
+ showOverflow: colConfs.showOverflow,
93
+ showHeaderOverflow: colConfs.showHeaderOverflow,
94
+ showFooterOverflow: colConfs.showFooterOverflow,
95
+ className: colConfs.className,
96
+ headerClassName: colConfs.headerClassName,
97
+ footerClassName: colConfs.footerClassName,
97
98
  formatter: formatter,
98
- headerFormatter: _vm.headerFormatter,
99
- footerFormatter: _vm.footerFormatter,
100
- padding: _vm.padding,
101
- verticalAlign: _vm.verticalAlign,
102
- sortable: _vm.sortable,
103
- sortBy: _vm.sortBy,
104
- sortType: _vm.sortType,
99
+ headerFormatter: colConfs.headerFormatter,
100
+ footerFormatter: colConfs.footerFormatter,
101
+ padding: colConfs.padding,
102
+ verticalAlign: colConfs.verticalAlign,
103
+ sortable: colConfs.sortable,
104
+ sortBy: colConfs.sortBy,
105
+ sortType: colConfs.sortType,
105
106
  filters: filters,
106
- filterMultiple: XEUtils.isBoolean(_vm.filterMultiple) ? _vm.filterMultiple : true,
107
- filterMethod: _vm.filterMethod,
108
- filterResetMethod: _vm.filterResetMethod,
109
- filterRecoverMethod: _vm.filterRecoverMethod,
107
+ filterMultiple: XEUtils.isBoolean(filterMultiple) ? filterMultiple : true,
108
+ filterMethod: colConfs.filterMethod,
109
+ filterResetMethod: colConfs.filterResetMethod,
110
+ filterRecoverMethod: colConfs.filterRecoverMethod,
110
111
  filterRender: filterRender,
111
- floatingFilters: _vm.floatingFilters,
112
- rules: _vm.rules,
113
- rowGroupNode: _vm.rowGroupNode,
114
- treeNode: _vm.treeNode,
115
- dragSort: _vm.dragSort,
116
- rowResize: _vm.rowResize,
117
- cellType: _vm.cellType,
118
- cellRender: _vm.cellRender,
112
+ floatingFilters: colConfs.floatingFilters,
113
+ rules: colConfs.rules,
114
+ rowGroupNode: colConfs.rowGroupNode,
115
+ treeNode: colConfs.treeNode,
116
+ dragSort: colConfs.dragSort,
117
+ rowResize: colConfs.rowResize,
118
+ cellType: colConfs.cellType,
119
+ cellRender: cellRender,
119
120
  editRender: editRender,
120
- contentRender: _vm.contentRender,
121
- headerExportMethod: _vm.headerExportMethod,
122
- exportMethod: _vm.exportMethod,
123
- footerExportMethod: _vm.footerExportMethod,
124
- titleHelp: _vm.titleHelp,
125
- titlePrefix: _vm.titlePrefix,
126
- titleSuffix: _vm.titleSuffix,
127
-
128
- aggFunc: _vm.aggFunc,
129
- copyMethod: _vm.copyMethod,
130
- cutMethod: _vm.cutMethod,
131
- pasteMethod: _vm.pasteMethod,
121
+ contentRender: colConfs.contentRender,
122
+ headerExportMethod: colConfs.headerExportMethod,
123
+ exportMethod: colConfs.exportMethod,
124
+ footerExportMethod: colConfs.footerExportMethod,
125
+ titleHelp: colConfs.titleHelp,
126
+ titlePrefix: colConfs.titlePrefix,
127
+ titleSuffix: colConfs.titleSuffix,
128
+
129
+ aggFunc: colConfs.aggFunc,
130
+ copyMethod: colConfs.copyMethod,
131
+ cutMethod: colConfs.cutMethod,
132
+ pasteMethod: colConfs.pasteMethod,
132
133
 
133
134
  // 自定义参数
134
- params: _vm.params,
135
+ params: colConfs.params,
135
136
  // 渲染属性
136
137
  id: colId,
137
138
  parentId: null,
138
- visible,
139
+ visible: defaultVisible,
139
140
  // 内部属性(一旦被使用,将导致不可升级版本)
140
141
  defaultParentId: null,
141
142
  halfVisible: false,
142
- defaultVisible: visible,
143
- defaultFixed: _vm.fixed,
143
+ defaultVisible: defaultVisible,
144
+ defaultFixed: colConfs.fixed,
144
145
 
145
- defaultAggGroup: _vm.aggGroup,
146
- defaultAggFunc: _vm.aggFunc,
146
+ defaultAggFunc: colConfs.aggFunc,
147
147
 
148
148
  checked: false,
149
149
  halfChecked: false,
@@ -170,7 +170,7 @@ export class ColumnInfo {
170
170
  renderFixed: '',
171
171
  renderVisible: false,
172
172
 
173
- renderWidth: 0,
173
+ renderWidth: defaultRenderWidth,
174
174
  renderHeight: 0,
175
175
  renderResizeWidth: 0,
176
176
  renderAutoWidth: 0,
@@ -179,12 +179,12 @@ export class ColumnInfo {
179
179
  renderLeft: 0,
180
180
  renderArgs: [], // 渲染参数可用于扩展
181
181
  model: {},
182
- renderHeader: renderHeader || _vm.renderHeader,
183
- renderCell: renderCell || _vm.renderCell,
184
- renderFooter: renderFooter || _vm.renderFooter,
182
+ renderHeader: renderHeader || colConfs.renderHeader,
183
+ renderCell: renderCell || colConfs.renderCell,
184
+ renderFooter: renderFooter || colConfs.renderFooter,
185
185
  renderData: renderData,
186
186
  // 单元格插槽,只对 grid 有效
187
- slots: _vm.slots
187
+ slots: colConfs.slots
188
188
  })
189
189
  if (ctFilterOptions && (!filters || !filters.length)) {
190
190
  (this as any).filters = toFilters(ctFilterOptions({ $table: $xeTable, column: this as unknown as VxeTableDefines.ColumnInfo }), colId)
@@ -193,7 +193,7 @@ export class ColumnInfo {
193
193
  const { computeProxyOpts } = $xeGGWrapper.getComputeMaps()
194
194
  const proxyOpts = computeProxyOpts.value
195
195
  if (proxyOpts.beforeColumn) {
196
- proxyOpts.beforeColumn({ $table: $xeTable, $grid: $xeGrid, $gantt: $xeGantt, column: this })
196
+ proxyOpts.beforeColumn({ $table: $xeTable, $grid: $xeGrid, $gantt: $xeGantt, column: this as unknown as VxeTableDefines.ColumnInfo })
197
197
  }
198
198
  }
199
199
  }
@@ -203,8 +203,8 @@ export class ColumnInfo {
203
203
  }
204
204
 
205
205
  getKey () {
206
- const { type } = this
207
- return this.field || (type ? `type=${type}` : null)
206
+ const { type, field } = this
207
+ return field || (type ? `type=${type}` : null)
208
208
  }
209
209
 
210
210
  update (name: string, value: any) {
@@ -1851,9 +1851,9 @@ export default defineVxeComponent({
1851
1851
  if (expandOpts.mode !== 'inside' && (treeConfig && !treeOpts.transform)) {
1852
1852
  errLog('vxe.error.notConflictProp', ['tree-config.transform=false', 'expand-config.mode=inside'])
1853
1853
  }
1854
- if (props.spanMethod) {
1855
- warnLog('vxe.error.notSupportProp', ['column.type=expand', 'span-method', 'span-method=null'])
1856
- }
1854
+ // if (props.spanMethod) {
1855
+ // warnLog('vxe.error.notSupportProp', ['column.type=expand', 'span-method', 'span-method=null'])
1856
+ // }
1857
1857
  }
1858
1858
 
1859
1859
  if (htmlColumn) {
@@ -725,7 +725,7 @@ function getElementMarginAndWidth (elem: HTMLElement | null) {
725
725
  return 0
726
726
  }
727
727
 
728
- export function toFilters (filters: any, colid?: string) {
728
+ export function toFilters (filters: any, colid?: string | number) {
729
729
  if (filters) {
730
730
  if (XEUtils.isArray(filters)) {
731
731
  return filters.map(({ label, value, data, resetValue, checked }) => {
@@ -2204,6 +2204,16 @@ $btnThemeList: (
2204
2204
  }
2205
2205
 
2206
2206
  /*展开行*/
2207
+ .vxe-body--column {
2208
+ &.col--expand {
2209
+ & > .vxe-cell {
2210
+ .vxe-cell--wrapper {
2211
+ display: flex;
2212
+ flex-direction: row;
2213
+ }
2214
+ }
2215
+ }
2216
+ }
2207
2217
  .vxe-table--row-expanded-wrapper {
2208
2218
  position: absolute;
2209
2219
  top: 0;
@@ -2237,20 +2247,28 @@ $btnThemeList: (
2237
2247
  border-right: var(--vxe-ui-table-border-width) solid var(--vxe-ui-table-border-color);
2238
2248
  }
2239
2249
  .vxe-table--expanded {
2240
- cursor: pointer;
2250
+ display: flex;
2251
+ flex-direction: row;
2252
+ align-items: center;
2253
+ justify-content: center;
2254
+ flex-shrink: 0;
2241
2255
  .vxe-table--expand-btn {
2242
- display: inline-block;
2243
- width: 1em;
2244
- height: 1em;
2245
- text-align: center;
2256
+ cursor: pointer;
2246
2257
  user-select: none;
2247
2258
  color: var(--vxe-ui-font-lighten-color);
2248
- @include baseMixin.createAnimationTransition(transform);
2249
2259
  &:hover {
2250
2260
  color: var(--vxe-ui-font-color);
2251
2261
  }
2262
+ i {
2263
+ display: inline-block;
2264
+ width: 1em;
2265
+ height: 1em;
2266
+ line-height: 1em;
2267
+ @include baseMixin.createAnimationTransition(transform);
2268
+ }
2252
2269
  }
2253
2270
  &+.vxe-table--expand-label {
2271
+ flex-grow: 1;
2254
2272
  padding-left: 0.5em;
2255
2273
  }
2256
2274
  }