vxe-table 4.7.67 → 4.7.69

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 (109) hide show
  1. package/es/components.js +5 -7
  2. package/es/grid/style.css +1 -0
  3. package/es/grid/style.min.css +1 -1
  4. package/es/locale/lang/en-US.js +20 -3
  5. package/es/locale/lang/es-ES.js +20 -3
  6. package/es/locale/lang/hu-HU.js +22 -1
  7. package/es/locale/lang/ja-JP.js +19 -2
  8. package/es/locale/lang/ko-KR.js +18 -1
  9. package/es/locale/lang/pt-BR.js +18 -1
  10. package/es/locale/lang/ru-RU.js +18 -1
  11. package/es/locale/lang/vi-VN.js +18 -1
  12. package/es/locale/lang/zh-CN.js +18 -1
  13. package/es/locale/lang/zh-TC.js +45 -28
  14. package/es/style.css +1 -1
  15. package/es/style.min.css +1 -1
  16. package/es/table/src/body.js +5 -4
  17. package/es/table/src/header.js +3 -2
  18. package/es/table/src/table.js +30 -36
  19. package/es/table/style.css +12 -0
  20. package/es/table/style.min.css +1 -1
  21. package/es/ui/index.js +2 -2
  22. package/es/ui/src/log.js +1 -1
  23. package/es/vxe-grid/style.css +1 -0
  24. package/es/vxe-grid/style.min.css +1 -1
  25. package/es/vxe-table/style.css +12 -0
  26. package/es/vxe-table/style.min.css +1 -1
  27. package/lib/components.js +5 -7
  28. package/lib/components.min.js +1 -1
  29. package/lib/grid/style/style.css +1 -0
  30. package/lib/grid/style/style.min.css +1 -1
  31. package/lib/index.umd.js +65 -54
  32. package/lib/index.umd.min.js +1 -1
  33. package/lib/locale/lang/en-US.js +20 -3
  34. package/lib/locale/lang/en-US.min.js +1 -1
  35. package/lib/locale/lang/en-US.umd.js +20 -3
  36. package/lib/locale/lang/es-ES.js +20 -3
  37. package/lib/locale/lang/es-ES.min.js +1 -1
  38. package/lib/locale/lang/es-ES.umd.js +20 -3
  39. package/lib/locale/lang/hu-HU.js +22 -1
  40. package/lib/locale/lang/hu-HU.min.js +1 -1
  41. package/lib/locale/lang/ja-JP.js +19 -2
  42. package/lib/locale/lang/ja-JP.min.js +1 -1
  43. package/lib/locale/lang/ja-JP.umd.js +19 -2
  44. package/lib/locale/lang/ko-KR.js +18 -1
  45. package/lib/locale/lang/ko-KR.min.js +1 -1
  46. package/lib/locale/lang/pt-BR.js +18 -1
  47. package/lib/locale/lang/pt-BR.min.js +1 -1
  48. package/lib/locale/lang/pt-BR.umd.js +18 -1
  49. package/lib/locale/lang/ru-RU.js +18 -1
  50. package/lib/locale/lang/ru-RU.min.js +1 -1
  51. package/lib/locale/lang/vi-VN.js +18 -1
  52. package/lib/locale/lang/vi-VN.min.js +1 -1
  53. package/lib/locale/lang/zh-CN.js +18 -1
  54. package/lib/locale/lang/zh-CN.min.js +1 -1
  55. package/lib/locale/lang/zh-CN.umd.js +18 -1
  56. package/lib/locale/lang/zh-HK.min.js +1 -1
  57. package/lib/locale/lang/zh-HK.umd.js +45 -28
  58. package/lib/locale/lang/zh-MO.min.js +1 -1
  59. package/lib/locale/lang/zh-MO.umd.js +45 -28
  60. package/lib/locale/lang/zh-TC.js +45 -28
  61. package/lib/locale/lang/zh-TC.min.js +1 -1
  62. package/lib/locale/lang/zh-TC.umd.js +45 -28
  63. package/lib/locale/lang/zh-TW.min.js +1 -1
  64. package/lib/locale/lang/zh-TW.umd.js +45 -28
  65. package/lib/style.css +1 -1
  66. package/lib/style.min.css +1 -1
  67. package/lib/table/src/body.js +5 -4
  68. package/lib/table/src/body.min.js +1 -1
  69. package/lib/table/src/header.js +4 -3
  70. package/lib/table/src/header.min.js +1 -1
  71. package/lib/table/src/table.js +30 -36
  72. package/lib/table/src/table.min.js +1 -1
  73. package/lib/table/style/style.css +12 -0
  74. package/lib/table/style/style.min.css +1 -1
  75. package/lib/ui/index.js +2 -2
  76. package/lib/ui/index.min.js +1 -1
  77. package/lib/ui/src/log.js +1 -1
  78. package/lib/ui/src/log.min.js +1 -1
  79. package/lib/vxe-grid/style/style.css +1 -0
  80. package/lib/vxe-grid/style/style.min.css +1 -1
  81. package/lib/vxe-table/style/style.css +12 -0
  82. package/lib/vxe-table/style/style.min.css +1 -1
  83. package/package.json +2 -2
  84. package/packages/components.ts +5 -7
  85. package/packages/locale/lang/en-US.ts +20 -3
  86. package/packages/locale/lang/es-ES.ts +20 -3
  87. package/packages/locale/lang/hu-HU.ts +22 -1
  88. package/packages/locale/lang/ja-JP.ts +19 -2
  89. package/packages/locale/lang/ko-KR.ts +18 -1
  90. package/packages/locale/lang/pt-BR.ts +18 -1
  91. package/packages/locale/lang/ru-RU.ts +18 -1
  92. package/packages/locale/lang/vi-VN.ts +18 -1
  93. package/packages/locale/lang/zh-CN.ts +18 -1
  94. package/packages/locale/lang/zh-TC.ts +45 -28
  95. package/packages/table/src/body.ts +5 -4
  96. package/packages/table/src/header.ts +4 -3
  97. package/packages/table/src/table.ts +30 -36
  98. package/styles/components/grid.scss +1 -0
  99. package/styles/components/table-module/custom.scss +1 -0
  100. package/styles/components/table-module/export.scss +1 -0
  101. package/styles/components/table-module/filter.scss +1 -0
  102. package/styles/components/table.scss +9 -0
  103. package/styles/theme/base.scss +1 -0
  104. /package/es/{iconfont.1724210671876.ttf → iconfont.1724470833265.ttf} +0 -0
  105. /package/es/{iconfont.1724210671876.woff → iconfont.1724470833265.woff} +0 -0
  106. /package/es/{iconfont.1724210671876.woff2 → iconfont.1724470833265.woff2} +0 -0
  107. /package/lib/{iconfont.1724210671876.ttf → iconfont.1724470833265.ttf} +0 -0
  108. /package/lib/{iconfont.1724210671876.woff → iconfont.1724470833265.woff} +0 -0
  109. /package/lib/{iconfont.1724210671876.woff2 → iconfont.1724470833265.woff2} +0 -0
@@ -141,6 +141,7 @@ export default defineComponent({
141
141
  const { actived } = editStore
142
142
  const { rHeight: scrollYRHeight } = sYOpts
143
143
  const { height: rowHeight } = rowOpts
144
+ const colid = column.id
144
145
  const renderOpts = editRender || cellRender
145
146
  const compConf = renderOpts ? renderer.get(renderOpts.name) : null
146
147
  const compCellClassName = compConf ? (compConf.tableCellClassName || compConf.cellClassName) : null
@@ -158,9 +159,9 @@ export default defineComponent({
158
159
  let isDirty
159
160
  const tdOns: any = {}
160
161
  const cellAlign = align || allAlign
161
- const errorValidItem = validErrorMaps[`${rowid}:${column.id}`]
162
+ const errorValidItem = validErrorMaps[`${rowid}:${colid}`]
162
163
  const showValidTip = editRules && validOpts.showMessage && (validOpts.message === 'default' ? (height || tableData.length > 1) : validOpts.message === 'inline')
163
- const attrs: any = { colid: column.id }
164
+ const attrs: any = { colid }
164
165
  const params: VxeTableDefines.CellRenderBodyParams = { $table: $xeTable, $grid: $xeTable.xegrid, seq, rowid, row, rowIndex, $rowIndex, _rowIndex, column, columnIndex, $columnIndex, _columnIndex, fixed: fixedType, type: renderType, isHidden: fixedHiddenColumn, level: rowLevel, visibleData: afterFullData, data: tableData, items }
165
166
  // 虚拟滚动不支持动态高度
166
167
  if (scrollYLoad && !hasEllipsis) {
@@ -301,7 +302,7 @@ export default defineComponent({
301
302
  return h('td', {
302
303
  class: [
303
304
  'vxe-body--column',
304
- column.id,
305
+ colid,
305
306
  {
306
307
  [`col--${cellAlign}`]: cellAlign,
307
308
  [`col--${type}`]: type,
@@ -319,7 +320,7 @@ export default defineComponent({
319
320
  getPropClass(className, params),
320
321
  getPropClass(allCellClassName, params)
321
322
  ],
322
- key: columnKey || columnOpts.useKey ? column.id : $columnIndex,
323
+ key: columnKey || columnOpts.useKey ? colid : $columnIndex,
323
324
  ...attrs,
324
325
  style: Object.assign({
325
326
  height: hasEllipsis && (scrollYRHeight || rowHeight) ? `${scrollYRHeight || rowHeight}px` : ''
@@ -226,6 +226,7 @@ export default defineComponent({
226
226
  style: headerRowStyle ? (XEUtils.isFunction(headerRowStyle) ? headerRowStyle({ $table: $xeTable, $rowIndex, fixed: fixedType, type: renderType }) : headerRowStyle) : null
227
227
  }, cols.map((column, $columnIndex) => {
228
228
  const { type, showHeaderOverflow, headerAlign, align, headerClassName } = column
229
+ const colid = column.id
229
230
  const isColGroup = column.children && column.children.length
230
231
  const fixedHiddenColumn = fixedType ? (column.fixed !== fixedType && !isColGroup) : !!column.fixed && overflowX
231
232
  const headOverflow = XEUtils.eqNull(showHeaderOverflow) ? allColumnHeaderOverflow : showHeaderOverflow
@@ -251,7 +252,7 @@ export default defineComponent({
251
252
  thOns.onMousedown = (evnt: MouseEvent) => $xeTable.triggerHeaderCellMousedownEvent(evnt, params)
252
253
  }
253
254
  return h('th', {
254
- class: ['vxe-header--column', column.id, {
255
+ class: ['vxe-header--column', colid, {
255
256
  [`col--${headAlign}`]: headAlign,
256
257
  [`col--${type}`]: type,
257
258
  'col--last': $columnIndex === cols.length - 1,
@@ -267,12 +268,12 @@ export default defineComponent({
267
268
  headerClassName ? (XEUtils.isFunction(headerClassName) ? headerClassName(params) : headerClassName) : '',
268
269
  headerCellClassName ? (XEUtils.isFunction(headerCellClassName) ? headerCellClassName(params) : headerCellClassName) : ''
269
270
  ],
270
- colid: column.id,
271
+ colid,
271
272
  colspan: column.colSpan > 1 ? column.colSpan : null,
272
273
  rowspan: column.rowSpan > 1 ? column.rowSpan : null,
273
274
  style: headerCellStyle ? (XEUtils.isFunction(headerCellStyle) ? headerCellStyle(params) : headerCellStyle) : null,
274
275
  ...thOns,
275
- key: columnKey || columnOpts.useKey || isColGroup ? column.id : $columnIndex
276
+ key: columnKey || columnOpts.useKey || isColGroup ? colid : $columnIndex
276
277
  }, [
277
278
  h('div', {
278
279
  class: ['vxe-cell', {
@@ -331,6 +331,10 @@ export default defineComponent({
331
331
  fullDataRowIdData: {},
332
332
  fullColumnIdData: {},
333
333
  fullColumnFieldData: {},
334
+ // 列选取状态
335
+ columnStatusMaps: {},
336
+ // 行选取状态
337
+ rowStatusMaps: {},
334
338
  inited: false,
335
339
  tooltipTimeout: null,
336
340
  initStatus: false,
@@ -4983,7 +4987,6 @@ export default defineComponent({
4983
4987
  const operCtxMenu = isMenu && ctxMenuStore.visible && (isEnter || isSpacebar || operArrow)
4984
4988
  const isEditStatus = isEnableConf(editConfig) && actived.column && actived.row
4985
4989
  const beforeEditMethod = editOpts.beforeEditMethod || editOpts.activeMethod
4986
- let params: any
4987
4990
  if (operCtxMenu) {
4988
4991
  // 如果配置了右键菜单; 支持方向键操作、回车
4989
4992
  evnt.preventDefault()
@@ -5039,7 +5042,7 @@ export default defineComponent({
5039
5042
  if (hasCtrlKey) {
5040
5043
  // 如果是激活编辑状态,则取消编辑
5041
5044
  if (actived.row) {
5042
- params = actived.args
5045
+ const params = actived.args
5043
5046
  $xeTable.clearEdit(evnt)
5044
5047
  // 如果配置了选中功能,则为选中状态
5045
5048
  if (mouseOpts.selected) {
@@ -5069,7 +5072,7 @@ export default defineComponent({
5069
5072
  if (childrens && childrens.length) {
5070
5073
  evnt.preventDefault()
5071
5074
  const targetRow = childrens[0]
5072
- params = {
5075
+ const params = {
5073
5076
  $table: $xeTable,
5074
5077
  row: targetRow,
5075
5078
  rowIndex: tableMethods.getRowIndex(targetRow),
@@ -5102,23 +5105,24 @@ export default defineComponent({
5102
5105
  // 如果是删除键
5103
5106
  if (!isEditStatus) {
5104
5107
  const { delMethod } = keyboardOpts
5105
- const delPaqrams = {
5108
+ const params = {
5106
5109
  row: selected.row,
5107
5110
  rowIndex: tableMethods.getRowIndex(selected.row),
5108
5111
  column: selected.column,
5109
5112
  columnIndex: tableMethods.getColumnIndex(selected.column),
5110
- $table: $xeTable
5113
+ $table: $xeTable,
5114
+ $grid: $xeGrid
5111
5115
  }
5112
5116
  // 是否被禁用
5113
5117
  if (!beforeEditMethod || beforeEditMethod(params)) {
5114
5118
  if (delMethod) {
5115
- delMethod(delPaqrams)
5119
+ delMethod(params)
5116
5120
  } else {
5117
5121
  setCellValue(selected.row, selected.column, null)
5118
5122
  }
5119
5123
  // 如果按下 del 键,更新表尾数据
5120
5124
  tableMethods.updateFooter()
5121
- $xeTable.dispatchEvent('cell-delete-value', delPaqrams, evnt)
5125
+ $xeTable.dispatchEvent('cell-delete-value', params, evnt)
5122
5126
  }
5123
5127
  }
5124
5128
  } else if (hasBackspaceKey && keyboardConfig && keyboardOpts.isBack && isEnableConf(editConfig) && (selected.row || selected.column)) {
@@ -5126,28 +5130,23 @@ export default defineComponent({
5126
5130
  const { backMethod } = keyboardOpts
5127
5131
  // 如果是删除键
5128
5132
  if (keyboardOpts.isDel && isEnableConf(editConfig) && (selected.row || selected.column)) {
5129
- const delPaqrams = {
5133
+ const params = {
5130
5134
  row: selected.row,
5131
5135
  rowIndex: tableMethods.getRowIndex(selected.row),
5132
5136
  column: selected.column,
5133
5137
  columnIndex: tableMethods.getColumnIndex(selected.column),
5134
- $table: $xeTable
5138
+ $table: $xeTable,
5139
+ $grid: $xeGrid
5135
5140
  }
5136
5141
  // 是否被禁用
5137
5142
  if (!beforeEditMethod || beforeEditMethod(params)) {
5138
5143
  if (backMethod) {
5139
- backMethod({
5140
- row: selected.row,
5141
- rowIndex: tableMethods.getRowIndex(selected.row),
5142
- column: selected.column,
5143
- columnIndex: tableMethods.getColumnIndex(selected.column),
5144
- $table: $xeTable
5145
- })
5144
+ backMethod(params)
5146
5145
  } else {
5147
5146
  setCellValue(selected.row, selected.column, null)
5148
5147
  $xeTable.handleActived(selected.args, evnt)
5149
5148
  }
5150
- $xeTable.dispatchEvent('cell-backspace-value', delPaqrams, evnt)
5149
+ $xeTable.dispatchEvent('cell-backspace-value', params, evnt)
5151
5150
  }
5152
5151
  }
5153
5152
  }
@@ -5156,11 +5155,12 @@ export default defineComponent({
5156
5155
  const { parent: parentRow } = XEUtils.findTree(internalData.afterTreeFullData, item => item === currentRow, { children: childrenField })
5157
5156
  if (parentRow) {
5158
5157
  evnt.preventDefault()
5159
- params = {
5160
- $table: $xeTable,
5158
+ const params = {
5161
5159
  row: parentRow,
5162
5160
  rowIndex: tableMethods.getRowIndex(parentRow),
5163
- $rowIndex: tableMethods.getVMRowIndex(parentRow)
5161
+ $rowIndex: tableMethods.getVMRowIndex(parentRow),
5162
+ $table: $xeTable,
5163
+ $grid: $xeGrid
5164
5164
  }
5165
5165
  tableMethods.setTreeExpand(parentRow, false)
5166
5166
  .then(() => tableMethods.scrollToRow(parentRow))
@@ -5175,16 +5175,17 @@ export default defineComponent({
5175
5175
  // 如果是按下非功能键之外允许直接编辑
5176
5176
  if (selected.column && selected.row && isEnableConf(selected.column.editRender)) {
5177
5177
  const beforeEditMethod = editOpts.beforeEditMethod || editOpts.activeMethod
5178
+ const params = {
5179
+ row: selected.row,
5180
+ rowIndex: tableMethods.getRowIndex(selected.row),
5181
+ column: selected.column,
5182
+ columnIndex: tableMethods.getColumnIndex(selected.column),
5183
+ $table: $xeTable,
5184
+ $grid: $xeGrid
5185
+ }
5178
5186
  if (!beforeEditMethod || beforeEditMethod({ ...selected.args, $table: $xeTable, $grid: $xeGrid })) {
5179
5187
  if (editMethod) {
5180
- editMethod({
5181
- row: selected.row,
5182
- rowIndex: tableMethods.getRowIndex(selected.row),
5183
- column: selected.column,
5184
- columnIndex: tableMethods.getColumnIndex(selected.column),
5185
- $table: $xeTable,
5186
- $grid: $xeGrid
5187
- })
5188
+ editMethod(params)
5188
5189
  } else {
5189
5190
  setCellValue(selected.row, selected.column, null)
5190
5191
  $xeTable.handleActived(selected.args, evnt)
@@ -5192,14 +5193,7 @@ export default defineComponent({
5192
5193
  const afterEditMethod = editOpts.afterEditMethod
5193
5194
  if (afterEditMethod) {
5194
5195
  nextTick(() => {
5195
- afterEditMethod({
5196
- row: selected.row as any,
5197
- rowIndex: tableMethods.getRowIndex(selected.row),
5198
- column: selected.column,
5199
- columnIndex: tableMethods.getColumnIndex(selected.column),
5200
- $table: $xeTable,
5201
- $grid: $xeGrid
5202
- })
5196
+ afterEditMethod(params)
5203
5197
  })
5204
5198
  }
5205
5199
  }
@@ -40,6 +40,7 @@
40
40
  .vxe-grid--right-wrapper {
41
41
  flex-shrink: 0;
42
42
  overflow: auto;
43
+ outline: 0;
43
44
  }
44
45
  .vxe-grid--table-wrapper {
45
46
  flex-grow: 1;
@@ -220,6 +220,7 @@
220
220
  .vxe-table-custom-popup--body {
221
221
  overflow: auto;
222
222
  height: 100%;
223
+ outline: 0;
223
224
  }
224
225
 
225
226
  .vxe-table-custom-popup--table-wrapper {
@@ -5,6 +5,7 @@
5
5
  overflow: auto;
6
6
  margin: 0;
7
7
  padding: 0;
8
+ outline: 0;
8
9
  user-select: none;
9
10
  & > li {
10
11
  overflow: hidden;
@@ -72,6 +72,7 @@
72
72
  list-style-type: none;
73
73
  padding: 0;
74
74
  margin: 0;
75
+ outline: 0;
75
76
  overflow: auto;
76
77
  user-select: none;
77
78
  }
@@ -42,6 +42,7 @@
42
42
  .vxe-table--fixed-right-body-wrapper {
43
43
  overflow-y: auto;
44
44
  overflow-x: auto;
45
+ outline: 0;
45
46
  }
46
47
 
47
48
  /*默认的渲染*/
@@ -529,12 +530,14 @@
529
530
  .vxe-table--footer-wrapper {
530
531
  overflow-x: hidden;
531
532
  overflow-y: hidden;
533
+ outline: 0;
532
534
  }
533
535
  &:not(.is--empty) {
534
536
  &.is--footer {
535
537
  &.is--scroll-x {
536
538
  .vxe-table--body-wrapper {
537
539
  overflow-x: scroll;
540
+ outline: 0;
538
541
  }
539
542
  }
540
543
  }
@@ -909,8 +912,10 @@
909
912
  overflow: hidden;
910
913
  background-color: inherit;
911
914
  transition: 0.3s box-shadow;
915
+ outline: 0;
912
916
  .vxe-table--body-wrapper {
913
917
  overflow-x: hidden;
918
+ outline: 0;
914
919
  }
915
920
  }
916
921
  .vxe-table--fixed-left-wrapper {
@@ -949,6 +954,7 @@
949
954
  &.fixed-right--wrapper {
950
955
  position: absolute;
951
956
  top: 0;
957
+ outline: 0;
952
958
  }
953
959
  &.fixed-left--wrapper {
954
960
  left: 0;
@@ -1111,6 +1117,7 @@
1111
1117
  z-index: 1;
1112
1118
  &.is--ellipsis {
1113
1119
  overflow: auto;
1120
+ outline: 0;
1114
1121
  }
1115
1122
  }
1116
1123
 
@@ -1219,6 +1226,7 @@
1219
1226
  overflow: hidden;
1220
1227
  width: 100%;
1221
1228
  pointer-events: none;
1229
+ outline: 0;
1222
1230
  }
1223
1231
  .vxe-table--empty-block {
1224
1232
  display: none;
@@ -1470,6 +1478,7 @@ div.vxe-table--tooltip-wrapper {
1470
1478
  margin-top: -1px;
1471
1479
  &.body--wrapper{
1472
1480
  overflow-x: auto;
1481
+ outline: 0;
1473
1482
  }
1474
1483
  }
1475
1484
 
@@ -57,6 +57,7 @@
57
57
  --vxe-ui-table-cell-dirty-insert-color: #19A15F;
58
58
  --vxe-ui-table-cell-area-border-color: var(--vxe-ui-font-primary-color);
59
59
  --vxe-ui-table-cell-area-border-width: 1px;
60
+ --vxe-ui-table-cell-area-status-border-width: var(--vxe-ui-table-cell-area-border-width);
60
61
  --vxe-ui-table-cell-main-area-extension-border-color: #fff;
61
62
  --vxe-ui-table-cell-main-area-extension-background-color: var(--vxe-ui-font-primary-color);
62
63
  --vxe-ui-table-cell-extend-area-border-width: 2px;