vxe-table 3.15.20 → 3.15.22

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 (154) hide show
  1. package/es/index.css +1 -1
  2. package/es/index.min.css +1 -1
  3. package/es/locale/lang/ar-EG.js +3 -0
  4. package/es/locale/lang/de-DE.js +3 -0
  5. package/es/locale/lang/en-US.js +3 -0
  6. package/es/locale/lang/es-ES.js +3 -0
  7. package/es/locale/lang/fr-FR.js +3 -0
  8. package/es/locale/lang/hu-HU.js +3 -0
  9. package/es/locale/lang/hy-AM.js +3 -0
  10. package/es/locale/lang/id-ID.js +3 -0
  11. package/es/locale/lang/it-IT.js +3 -0
  12. package/es/locale/lang/ja-JP.js +3 -0
  13. package/es/locale/lang/ko-KR.js +3 -0
  14. package/es/locale/lang/ms-MY.js +3 -0
  15. package/es/locale/lang/nb-NO.js +3 -0
  16. package/es/locale/lang/pt-BR.js +3 -0
  17. package/es/locale/lang/ru-RU.js +3 -0
  18. package/es/locale/lang/th-TH.js +3 -0
  19. package/es/locale/lang/ug-CN.js +3 -0
  20. package/es/locale/lang/uk-UA.js +3 -0
  21. package/es/locale/lang/uz-UZ.js +3 -0
  22. package/es/locale/lang/vi-VN.js +3 -0
  23. package/es/locale/lang/zh-CHT.js +3 -0
  24. package/es/locale/lang/zh-CN.js +3 -0
  25. package/es/style.css +1 -1
  26. package/es/style.min.css +1 -1
  27. package/es/table/render/index.js +74 -2
  28. package/es/table/src/methods.js +22 -4
  29. package/es/table/style.css +6 -2
  30. package/es/table/style.min.css +1 -1
  31. package/es/toolbar/src/toolbar.js +1 -1
  32. package/es/ui/index.js +1 -1
  33. package/es/ui/src/log.js +1 -1
  34. package/es/vxe-table/style.css +6 -2
  35. package/es/vxe-table/style.min.css +1 -1
  36. package/lib/index.css +1 -1
  37. package/lib/index.min.css +1 -1
  38. package/lib/index.umd.js +115 -7
  39. package/lib/index.umd.min.js +1 -1
  40. package/lib/locale/lang/ar-EG.js +3 -0
  41. package/lib/locale/lang/ar-EG.min.js +1 -1
  42. package/lib/locale/lang/ar-EG.umd.js +3 -0
  43. package/lib/locale/lang/de-DE.js +3 -0
  44. package/lib/locale/lang/de-DE.min.js +1 -1
  45. package/lib/locale/lang/de-DE.umd.js +3 -0
  46. package/lib/locale/lang/en-US.js +3 -0
  47. package/lib/locale/lang/en-US.min.js +1 -1
  48. package/lib/locale/lang/en-US.umd.js +3 -0
  49. package/lib/locale/lang/es-ES.js +3 -0
  50. package/lib/locale/lang/es-ES.min.js +1 -1
  51. package/lib/locale/lang/es-ES.umd.js +3 -0
  52. package/lib/locale/lang/fr-FR.js +3 -0
  53. package/lib/locale/lang/fr-FR.min.js +1 -1
  54. package/lib/locale/lang/fr-FR.umd.js +3 -0
  55. package/lib/locale/lang/hu-HU.js +3 -0
  56. package/lib/locale/lang/hu-HU.min.js +1 -1
  57. package/lib/locale/lang/hu-HU.umd.js +3 -0
  58. package/lib/locale/lang/hy-AM.js +3 -0
  59. package/lib/locale/lang/hy-AM.min.js +1 -1
  60. package/lib/locale/lang/hy-AM.umd.js +3 -0
  61. package/lib/locale/lang/id-ID.js +3 -0
  62. package/lib/locale/lang/id-ID.min.js +1 -1
  63. package/lib/locale/lang/id-ID.umd.js +3 -0
  64. package/lib/locale/lang/it-IT.js +3 -0
  65. package/lib/locale/lang/it-IT.min.js +1 -1
  66. package/lib/locale/lang/it-IT.umd.js +3 -0
  67. package/lib/locale/lang/ja-JP.js +3 -0
  68. package/lib/locale/lang/ja-JP.min.js +1 -1
  69. package/lib/locale/lang/ja-JP.umd.js +3 -0
  70. package/lib/locale/lang/ko-KR.js +3 -0
  71. package/lib/locale/lang/ko-KR.min.js +1 -1
  72. package/lib/locale/lang/ko-KR.umd.js +3 -0
  73. package/lib/locale/lang/ms-MY.js +3 -0
  74. package/lib/locale/lang/ms-MY.min.js +1 -1
  75. package/lib/locale/lang/ms-MY.umd.js +3 -0
  76. package/lib/locale/lang/nb-NO.js +3 -0
  77. package/lib/locale/lang/nb-NO.min.js +1 -1
  78. package/lib/locale/lang/nb-NO.umd.js +3 -0
  79. package/lib/locale/lang/pt-BR.js +3 -0
  80. package/lib/locale/lang/pt-BR.min.js +1 -1
  81. package/lib/locale/lang/pt-BR.umd.js +3 -0
  82. package/lib/locale/lang/ru-RU.js +3 -0
  83. package/lib/locale/lang/ru-RU.min.js +1 -1
  84. package/lib/locale/lang/ru-RU.umd.js +3 -0
  85. package/lib/locale/lang/th-TH.js +3 -0
  86. package/lib/locale/lang/th-TH.min.js +1 -1
  87. package/lib/locale/lang/th-TH.umd.js +3 -0
  88. package/lib/locale/lang/ug-CN.js +3 -0
  89. package/lib/locale/lang/ug-CN.min.js +1 -1
  90. package/lib/locale/lang/ug-CN.umd.js +3 -0
  91. package/lib/locale/lang/uk-UA.js +3 -0
  92. package/lib/locale/lang/uk-UA.min.js +1 -1
  93. package/lib/locale/lang/uk-UA.umd.js +3 -0
  94. package/lib/locale/lang/uz-UZ.js +3 -0
  95. package/lib/locale/lang/uz-UZ.min.js +1 -1
  96. package/lib/locale/lang/uz-UZ.umd.js +3 -0
  97. package/lib/locale/lang/vi-VN.js +3 -0
  98. package/lib/locale/lang/vi-VN.min.js +1 -1
  99. package/lib/locale/lang/vi-VN.umd.js +3 -0
  100. package/lib/locale/lang/zh-CHT.js +3 -0
  101. package/lib/locale/lang/zh-CHT.min.js +1 -1
  102. package/lib/locale/lang/zh-CHT.umd.js +3 -0
  103. package/lib/locale/lang/zh-CN.js +3 -0
  104. package/lib/locale/lang/zh-CN.min.js +1 -1
  105. package/lib/locale/lang/zh-CN.umd.js +3 -0
  106. package/lib/style.css +1 -1
  107. package/lib/style.min.css +1 -1
  108. package/lib/table/render/index.js +85 -2
  109. package/lib/table/render/index.min.js +1 -1
  110. package/lib/table/src/methods.js +24 -3
  111. package/lib/table/src/methods.min.js +1 -1
  112. package/lib/table/style/style.css +6 -2
  113. package/lib/table/style/style.min.css +1 -1
  114. package/lib/toolbar/src/toolbar.js +1 -0
  115. package/lib/toolbar/src/toolbar.min.js +1 -1
  116. package/lib/ui/index.js +1 -1
  117. package/lib/ui/index.min.js +1 -1
  118. package/lib/ui/src/log.js +1 -1
  119. package/lib/ui/src/log.min.js +1 -1
  120. package/lib/vxe-table/style/style.css +6 -2
  121. package/lib/vxe-table/style/style.min.css +1 -1
  122. package/package.json +2 -2
  123. package/packages/locale/lang/ar-EG.ts +3 -0
  124. package/packages/locale/lang/de-DE.ts +3 -0
  125. package/packages/locale/lang/en-US.ts +3 -0
  126. package/packages/locale/lang/es-ES.ts +3 -0
  127. package/packages/locale/lang/fr-FR.ts +3 -0
  128. package/packages/locale/lang/hu-HU.ts +3 -0
  129. package/packages/locale/lang/hy-AM.ts +3 -0
  130. package/packages/locale/lang/id-ID.ts +3 -0
  131. package/packages/locale/lang/it-IT.ts +3 -0
  132. package/packages/locale/lang/ja-JP.ts +3 -0
  133. package/packages/locale/lang/ko-KR.ts +3 -0
  134. package/packages/locale/lang/ms-MY.ts +3 -0
  135. package/packages/locale/lang/nb-NO.ts +3 -0
  136. package/packages/locale/lang/pt-BR.ts +3 -0
  137. package/packages/locale/lang/ru-RU.ts +3 -0
  138. package/packages/locale/lang/th-TH.ts +3 -0
  139. package/packages/locale/lang/ug-CN.ts +3 -0
  140. package/packages/locale/lang/uk-UA.ts +3 -0
  141. package/packages/locale/lang/uz-UZ.ts +3 -0
  142. package/packages/locale/lang/vi-VN.ts +3 -0
  143. package/packages/locale/lang/zh-CHT.ts +3 -0
  144. package/packages/locale/lang/zh-CN.ts +3 -0
  145. package/packages/table/render/index.ts +72 -2
  146. package/packages/table/src/methods.ts +8 -2
  147. package/packages/toolbar/src/toolbar.ts +1 -1
  148. package/styles/components/table.scss +4 -0
  149. /package/es/{iconfont.1746750963305.ttf → iconfont.1746836465256.ttf} +0 -0
  150. /package/es/{iconfont.1746750963305.woff → iconfont.1746836465256.woff} +0 -0
  151. /package/es/{iconfont.1746750963305.woff2 → iconfont.1746836465256.woff2} +0 -0
  152. /package/lib/{iconfont.1746750963305.ttf → iconfont.1746836465256.ttf} +0 -0
  153. /package/lib/{iconfont.1746750963305.woff → iconfont.1746836465256.woff} +0 -0
  154. /package/lib/{iconfont.1746750963305.woff2 → iconfont.1746836465256.woff2} +0 -0
@@ -245,6 +245,9 @@ export default {
245
245
  datePicker: {
246
246
  yearTitle: '{0} Évek'
247
247
  },
248
+ dateRangePicker: {
249
+ pleaseRange: '请选择开始日期与结束日期'
250
+ },
248
251
  input: {
249
252
  date: {
250
253
  m1: 'január',
@@ -245,6 +245,9 @@ export default {
245
245
  datePicker: {
246
246
  yearTitle: '{0} 年'
247
247
  },
248
+ dateRangePicker: {
249
+ pleaseRange: '请选择开始日期与结束日期'
250
+ },
248
251
  input: {
249
252
  date: {
250
253
  m1: '01 月',
@@ -245,6 +245,9 @@ export default {
245
245
  datePicker: {
246
246
  yearTitle: '{0} tahun'
247
247
  },
248
+ dateRangePicker: {
249
+ pleaseRange: '请选择开始日期与结束日期'
250
+ },
248
251
  input: {
249
252
  date: {
250
253
  m1: 'Januari',
@@ -245,6 +245,9 @@ export default {
245
245
  datePicker: {
246
246
  yearTitle: '{0} anni'
247
247
  },
248
+ dateRangePicker: {
249
+ pleaseRange: '请选择开始日期与结束日期'
250
+ },
248
251
  input: {
249
252
  date: {
250
253
  m1: 'Gennaio',
@@ -245,6 +245,9 @@ export default {
245
245
  datePicker: {
246
246
  yearTitle: '{0} 年'
247
247
  },
248
+ dateRangePicker: {
249
+ pleaseRange: '请选择开始日期与结束日期'
250
+ },
248
251
  input: {
249
252
  date: {
250
253
  m1: '1月',
@@ -245,6 +245,9 @@ export default {
245
245
  datePicker: {
246
246
  yearTitle: '{0} 년'
247
247
  },
248
+ dateRangePicker: {
249
+ pleaseRange: '请选择开始日期与结束日期'
250
+ },
248
251
  input: {
249
252
  date: {
250
253
  m1: '1월',
@@ -245,6 +245,9 @@ export default {
245
245
  datePicker: {
246
246
  yearTitle: '{0} tahun'
247
247
  },
248
+ dateRangePicker: {
249
+ pleaseRange: '请选择开始日期与结束日期'
250
+ },
248
251
  input: {
249
252
  date: {
250
253
  m1: '01 bulan',
@@ -245,6 +245,9 @@ export default {
245
245
  datePicker: {
246
246
  yearTitle: '{0} år'
247
247
  },
248
+ dateRangePicker: {
249
+ pleaseRange: '请选择开始日期与结束日期'
250
+ },
248
251
  input: {
249
252
  date: {
250
253
  m1: 'januar',
@@ -245,6 +245,9 @@ export default {
245
245
  datePicker: {
246
246
  yearTitle: '{0} anos'
247
247
  },
248
+ dateRangePicker: {
249
+ pleaseRange: '请选择开始日期与结束日期'
250
+ },
248
251
  input: {
249
252
  date: {
250
253
  m1: 'Janeiro',
@@ -245,6 +245,9 @@ export default {
245
245
  datePicker: {
246
246
  yearTitle: '{0} Годы'
247
247
  },
248
+ dateRangePicker: {
249
+ pleaseRange: '请选择开始日期与结束日期'
250
+ },
248
251
  input: {
249
252
  date: {
250
253
  m1: 'Январь',
@@ -245,6 +245,9 @@ export default {
245
245
  datePicker: {
246
246
  yearTitle: '{0} ปี'
247
247
  },
248
+ dateRangePicker: {
249
+ pleaseRange: '请选择开始日期与结束日期'
250
+ },
248
251
  input: {
249
252
  date: {
250
253
  m1: 'มกราคม',
@@ -245,6 +245,9 @@ export default {
245
245
  datePicker: {
246
246
  yearTitle: '{0} يىل'
247
247
  },
248
+ dateRangePicker: {
249
+ pleaseRange: '请选择开始日期与结束日期'
250
+ },
248
251
  input: {
249
252
  date: {
250
253
  m1: '01 ئاي',
@@ -245,6 +245,9 @@ export default {
245
245
  datePicker: {
246
246
  yearTitle: '{0} років'
247
247
  },
248
+ dateRangePicker: {
249
+ pleaseRange: '请选择开始日期与结束日期'
250
+ },
248
251
  input: {
249
252
  date: {
250
253
  m1: 'Січень',
@@ -245,6 +245,9 @@ export default {
245
245
  datePicker: {
246
246
  yearTitle: '{0} yillar'
247
247
  },
248
+ dateRangePicker: {
249
+ pleaseRange: '请选择开始日期与结束日期'
250
+ },
248
251
  input: {
249
252
  date: {
250
253
  m1: '01 oy',
@@ -245,6 +245,9 @@ export default {
245
245
  datePicker: {
246
246
  yearTitle: '{0} năm'
247
247
  },
248
+ dateRangePicker: {
249
+ pleaseRange: '请选择开始日期与结束日期'
250
+ },
248
251
  input: {
249
252
  date: {
250
253
  m1: 'Tháng Một',
@@ -245,6 +245,9 @@ export default {
245
245
  datePicker: {
246
246
  yearTitle: '{0} 年'
247
247
  },
248
+ dateRangePicker: {
249
+ pleaseRange: '请选择开始日期与结束日期'
250
+ },
248
251
  input: {
249
252
  date: {
250
253
  m1: '01 月',
@@ -245,6 +245,9 @@ export default {
245
245
  datePicker: {
246
246
  yearTitle: '{0} 年'
247
247
  },
248
+ dateRangePicker: {
249
+ pleaseRange: '请选择开始日期与结束日期'
250
+ },
248
251
  input: {
249
252
  date: {
250
253
  m1: '01 月',
@@ -176,7 +176,7 @@ function getComponentOns (renderOpts: any, params: any, eFns?: {
176
176
  model: (cellValue: any) => void
177
177
  change?: (...args: any[]) => void
178
178
  blur?: (...args: any[]) => void
179
- }) {
179
+ }, eventOns?: Record<string, any>) {
180
180
  const { events } = renderOpts
181
181
  const modelEvent = getModelEvent(renderOpts)
182
182
  const changeEvent = getChangeEvent(renderOpts)
@@ -214,7 +214,7 @@ function getComponentOns (renderOpts: any, params: any, eFns?: {
214
214
  }
215
215
  }
216
216
  }
217
- return ons
217
+ return eventOns ? Object.assign(ons, eventOns) : ons
218
218
  }
219
219
 
220
220
  function getEditOns (renderOpts: VxeGlobalRendererHandles.RenderTableEditOptions, params: VxeGlobalRendererHandles.RenderTableEditParams & { $table: VxeTableConstructor & VxeTablePrivateMethods }) {
@@ -834,6 +834,76 @@ renderer.mixin({
834
834
  renderTableFilter: defaultFilterRender,
835
835
  tableFilterDefaultMethod: handleFilterMethod
836
836
  },
837
+ VxeDateRangePicker: {
838
+ tableAutoFocus: 'input',
839
+ renderTableEdit (h: CreateElement, renderOpts: VxeGlobalRendererHandles.RenderTableEditOptions, params: VxeGlobalRendererHandles.RenderEditParams & { $table: VxeTableConstructor & VxeTablePrivateMethods }) {
840
+ const { startField, endField } = renderOpts
841
+ const { $table, row, column } = params
842
+ const { model } = column
843
+ const cellValue = getCellValue(row, column)
844
+ const seProps: Record<string, any> = {}
845
+ const seOs: Record<string, any> = {}
846
+ if (startField && endField) {
847
+ seProps.startValue = XEUtils.get(row, startField)
848
+ seProps.endValue = XEUtils.get(row, endField)
849
+ seOs['update:startValue'] = (value: any) => {
850
+ if (startField) {
851
+ XEUtils.set(row, startField, value)
852
+ }
853
+ }
854
+ seOs['update:endValue'] = (value: any) => {
855
+ if (endField) {
856
+ XEUtils.set(row, endField, value)
857
+ }
858
+ }
859
+ }
860
+ return [
861
+ h(getDefaultComponent(renderOpts), {
862
+ props: getCellEditProps(renderOpts, params, cellValue, seProps),
863
+ on: getComponentOns(renderOpts, params, {
864
+ model (cellValue) {
865
+ model.update = true
866
+ model.value = cellValue
867
+ setCellValue(row, column, cellValue)
868
+ },
869
+ change () {
870
+ $table.updateStatus(params)
871
+ },
872
+ blur () {
873
+ $table.handleCellRuleUpdateStatus('blur', params)
874
+ }
875
+ }, seOs)
876
+ })
877
+ ]
878
+ },
879
+ renderTableCell (h, renderOpts, params) {
880
+ const { startField, endField } = renderOpts
881
+ const { row, column } = params
882
+ let startValue = ''
883
+ let endValue = ''
884
+ if (startField && endField) {
885
+ startValue = XEUtils.get(row, startField)
886
+ endValue = XEUtils.get(row, endField)
887
+ } else {
888
+ const cellValue = XEUtils.get(row, column.field)
889
+ if (cellValue) {
890
+ if (XEUtils.isArray(cellValue)) {
891
+ startValue = cellValue[0]
892
+ endValue = cellValue[1]
893
+ } else {
894
+ const strs = `${cellValue}`.split(',')
895
+ startValue = strs[0]
896
+ endValue = strs[1]
897
+ }
898
+ }
899
+ }
900
+ let cellLabel = ''
901
+ if (startValue && endValue) {
902
+ cellLabel = `${startValue} ~ ${endValue}`
903
+ }
904
+ return getCellLabelVNs(h, renderOpts, params, cellLabel)
905
+ }
906
+ },
837
907
  VxeTextarea: {
838
908
  tableAutoFocus: 'textarea',
839
909
  renderTableEdit: defaultEditRender
@@ -1936,7 +1936,7 @@ const handleFooterMerge = ($xeTable: VxeTableConstructor & VxeTablePrivateMethod
1936
1936
  function removeBodyMerges ($xeTable: VxeTableConstructor & VxeTablePrivateMethods, merges: VxeTableDefines.MergeOptions | VxeTableDefines.MergeOptions[]) {
1937
1937
  const internalData = $xeTable as unknown as TableInternalData
1938
1938
 
1939
- const { mergeBodyList, fullColumnIdData, fullAllDataRowIdData } = internalData
1939
+ const { mergeBodyList, fullColumnIdData, fullAllDataRowIdData, mergeBodyMaps } = internalData
1940
1940
  const rest: VxeTableDefines.MergeItem[] = []
1941
1941
  if (merges) {
1942
1942
  const { handleGetRowId } = createHandleGetRowId($xeTable)
@@ -1971,6 +1971,9 @@ function removeBodyMerges ($xeTable: VxeTableConstructor & VxeTablePrivateMethod
1971
1971
  const item = rItems[0]
1972
1972
  if (item) {
1973
1973
  rest.push(rItems[0])
1974
+ if (mergeBodyMaps[`${mergeRowIndex}:${mergeColumnIndex}`]) {
1975
+ delete mergeBodyMaps[`${mergeRowIndex}:${mergeColumnIndex}`]
1976
+ }
1974
1977
  }
1975
1978
  }
1976
1979
  })
@@ -1981,7 +1984,7 @@ function removeBodyMerges ($xeTable: VxeTableConstructor & VxeTablePrivateMethod
1981
1984
  function removeFooterMerges ($xeTable: VxeTableConstructor & VxeTablePrivateMethods, merges: VxeTableDefines.MergeOptions | VxeTableDefines.MergeOptions[]) {
1982
1985
  const internalData = $xeTable as unknown as TableInternalData
1983
1986
 
1984
- const { mergeFooterList, fullColumnIdData } = internalData
1987
+ const { mergeFooterList, fullColumnIdData, mergeFooterMaps } = internalData
1985
1988
  const rest: VxeTableDefines.MergeItem[] = []
1986
1989
  if (merges) {
1987
1990
  if (!XEUtils.isArray(merges)) {
@@ -2006,6 +2009,9 @@ function removeFooterMerges ($xeTable: VxeTableConstructor & VxeTablePrivateMeth
2006
2009
  const item = rItems[0]
2007
2010
  if (item) {
2008
2011
  rest.push(item)
2012
+ if (mergeFooterMaps[`${mergeRowIndex}:${mergeColumnIndex}`]) {
2013
+ delete mergeFooterMaps[`${mergeRowIndex}:${mergeColumnIndex}`]
2014
+ }
2009
2015
  }
2010
2016
  }
2011
2017
  })
@@ -275,7 +275,7 @@ export default /* define-vxe-component start */ defineVxeComponent({
275
275
  $xeGrid.triggerToolbarTolEvent(item, evnt)
276
276
  } else {
277
277
  const gCommandOpts = commands.get(code)
278
- const params = { code, tool: item, $table: $table!, $grid: $xeGrid, $event: evnt }
278
+ const params = { code, button: null, tool: item, $table: $table!, $grid: $xeGrid, $event: evnt }
279
279
  if (gCommandOpts) {
280
280
  const tCommandMethod = gCommandOpts.tableCommandMethod || gCommandOpts.commandMethod
281
281
  if (tCommandMethod) {
@@ -138,6 +138,7 @@ $btnThemeList: (
138
138
  .vxe-select,
139
139
  .vxe-tree-select,
140
140
  .vxe-date-picker,
141
+ .vxe-date-range-picker,
141
142
  .vxe-number-input,
142
143
  .vxe-ico-picker {
143
144
  width: 100%;
@@ -160,6 +161,7 @@ $btnThemeList: (
160
161
  & > .vxe-select,
161
162
  & > .vxe-tree-select,
162
163
  & > .vxe-date-picker,
164
+ & > .vxe-date-range-picker,
163
165
  & > .vxe-number-input,
164
166
  & > .vxe-ico-picker {
165
167
  width: 100%;
@@ -174,6 +176,7 @@ $btnThemeList: (
174
176
  .vxe-select,
175
177
  .vxe-tree-select,
176
178
  .vxe-date-picker,
179
+ .vxe-date-range-picker,
177
180
  .vxe-number-input,
178
181
  .vxe-ico-picker {
179
182
  width: 100%;
@@ -194,6 +197,7 @@ $btnThemeList: (
194
197
  & > .vxe-select,
195
198
  & > .vxe-tree-select,
196
199
  & > .vxe-date-picker,
200
+ & > .vxe-date-range-picker,
197
201
  & > .vxe-number-input,
198
202
  & > .vxe-ico-picker {
199
203
  width: 100%;