vxe-table 4.7.59 → 4.7.61

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 (51) hide show
  1. package/es/grid/src/grid.js +32 -11
  2. package/es/locale/lang/ja-JP.js +22 -22
  3. package/es/style.css +1 -1
  4. package/es/style.min.css +1 -1
  5. package/es/table/module/export/hook.js +13 -3
  6. package/es/table/render/index.js +9 -9
  7. package/es/table/src/footer.js +1 -1
  8. package/es/table/src/header.js +1 -1
  9. package/es/toolbar/src/toolbar.js +1 -0
  10. package/es/ui/index.js +2 -2
  11. package/es/ui/src/log.js +1 -1
  12. package/lib/grid/src/grid.js +44 -11
  13. package/lib/grid/src/grid.min.js +1 -1
  14. package/lib/index.umd.js +86 -28
  15. package/lib/index.umd.min.js +1 -1
  16. package/lib/locale/lang/ja-JP.js +22 -22
  17. package/lib/locale/lang/ja-JP.min.js +1 -1
  18. package/lib/locale/lang/ja-JP.umd.js +22 -22
  19. package/lib/style.css +1 -1
  20. package/lib/style.min.css +1 -1
  21. package/lib/table/module/export/hook.js +19 -3
  22. package/lib/table/module/export/hook.min.js +1 -1
  23. package/lib/table/render/index.js +9 -9
  24. package/lib/table/render/index.min.js +1 -1
  25. package/lib/table/src/footer.js +1 -1
  26. package/lib/table/src/footer.min.js +1 -1
  27. package/lib/table/src/header.js +1 -1
  28. package/lib/table/src/header.min.js +1 -1
  29. package/lib/toolbar/src/toolbar.js +1 -0
  30. package/lib/toolbar/src/toolbar.min.js +1 -1
  31. package/lib/ui/index.js +2 -2
  32. package/lib/ui/index.min.js +1 -1
  33. package/lib/ui/src/log.js +1 -1
  34. package/lib/ui/src/log.min.js +1 -1
  35. package/package.json +2 -2
  36. package/packages/grid/src/grid.ts +33 -12
  37. package/packages/locale/lang/ja-JP.ts +22 -22
  38. package/packages/table/module/export/hook.ts +13 -3
  39. package/packages/table/render/index.ts +9 -9
  40. package/packages/table/src/footer.ts +1 -1
  41. package/packages/table/src/header.ts +1 -1
  42. package/packages/toolbar/src/toolbar.ts +1 -0
  43. package/styles/theme/base.scss +2 -7
  44. package/styles/theme/dark.scss +4 -1
  45. package/styles/theme/light.scss +4 -1
  46. /package/es/{iconfont.1721660188146.ttf → iconfont.1722851815900.ttf} +0 -0
  47. /package/es/{iconfont.1721660188146.woff → iconfont.1722851815900.woff} +0 -0
  48. /package/es/{iconfont.1721660188146.woff2 → iconfont.1722851815900.woff2} +0 -0
  49. /package/lib/{iconfont.1721660188146.ttf → iconfont.1722851815900.ttf} +0 -0
  50. /package/lib/{iconfont.1721660188146.woff → iconfont.1722851815900.woff} +0 -0
  51. /package/lib/{iconfont.1721660188146.woff2 → iconfont.1722851815900.woff2} +0 -0
@@ -1171,9 +1171,12 @@ hooks.add('tableExportModule', {
1171
1171
  if ($xeGrid && !opts.remote) {
1172
1172
  const { reactData: gridReactData } = $xeGrid
1173
1173
  const { computeProxyOpts } = $xeGrid.getComputeMaps()
1174
+ const { sortData } = gridReactData
1174
1175
  const proxyOpts = computeProxyOpts.value
1175
1176
  const { beforeQueryAll, afterQueryAll, ajax = {}, props = {} } = proxyOpts
1176
1177
  const ajaxMethods = ajax.queryAll
1178
+ const queryAllSuccessMethods = ajax.queryAllSuccess
1179
+ const queryAllErrorMethods = ajax.queryAllError
1177
1180
 
1178
1181
  if (process.env.VUE_APP_VXE_ENV === 'development') {
1179
1182
  if (!ajaxMethods) {
@@ -1185,21 +1188,28 @@ hooks.add('tableExportModule', {
1185
1188
  const params = {
1186
1189
  $table: $xeTable,
1187
1190
  $grid: $xeGrid,
1188
- sort: gridReactData.sortData,
1191
+ sort: sortData.length ? sortData[0] : {} as any,
1192
+ sorts: sortData as any[],
1189
1193
  filters: gridReactData.filterData,
1190
1194
  form: gridReactData.formData,
1191
- target: ajaxMethods,
1192
1195
  options: opts
1193
1196
  }
1194
1197
  return Promise.resolve((beforeQueryAll || ajaxMethods)(params))
1195
- .catch(e => e)
1196
1198
  .then(rest => {
1197
1199
  opts.data = (props.list ? XEUtils.get(rest, props.list) : rest) || []
1198
1200
  if (afterQueryAll) {
1199
1201
  afterQueryAll(params)
1200
1202
  }
1203
+ if (queryAllSuccessMethods) {
1204
+ queryAllSuccessMethods({ ...params, response: rest })
1205
+ }
1201
1206
  return handleExport(opts)
1202
1207
  })
1208
+ .catch((rest) => {
1209
+ if (queryAllErrorMethods) {
1210
+ queryAllErrorMethods({ ...params, response: rest })
1211
+ }
1212
+ })
1203
1213
  }
1204
1214
  }
1205
1215
  } else if (mode === 'current') {
@@ -505,7 +505,7 @@ function getSelectCellValue (renderOpts: any, { row, column }: any) {
505
505
  let selectItem: any
506
506
  const labelProp = optionProps.label || 'label'
507
507
  const valueProp = optionProps.value || 'value'
508
- if (!isEmptyValue(cellValue)) {
508
+ if (!(cellValue === null || cellValue === undefined)) {
509
509
  return XEUtils.map(XEUtils.isArray(cellValue) ? cellValue : [cellValue],
510
510
  optionGroups
511
511
  ? (value) => {
@@ -540,7 +540,7 @@ function getTreeSelectCellValue (renderOpts: any, { row, column }: any) {
540
540
  const labelProp = optionProps.label || 'label'
541
541
  const valueProp = optionProps.value || 'value'
542
542
  const childrenProp = optionProps.children || 'children'
543
- if (!isEmptyValue(cellValue)) {
543
+ if (!(cellValue === null || cellValue === undefined)) {
544
544
  const keyMaps: Record<string, any> = {}
545
545
  XEUtils.eachTree(options, item => {
546
546
  keyMaps[XEUtils.get(item, valueProp)] = item
@@ -596,7 +596,7 @@ renderer.mixin({
596
596
  exportMethod: handleExportSelectMethod
597
597
  },
598
598
  VxeInput: {
599
- autofocus: '.vxe-input--inner',
599
+ autofocus: 'input',
600
600
  renderEdit: defaultEditRender,
601
601
  renderCell (renderOpts, params) {
602
602
  const { props = {} } = renderOpts
@@ -624,7 +624,7 @@ renderer.mixin({
624
624
  defaultFilterMethod: handleInputFilterMethod
625
625
  },
626
626
  VxeNumberInput: {
627
- autofocus: '.vxe-number-input--inner',
627
+ autofocus: 'input',
628
628
  renderEdit: defaultEditRender,
629
629
  renderCell (renderOpts, params) {
630
630
  const { props = {} } = renderOpts
@@ -645,7 +645,7 @@ renderer.mixin({
645
645
  defaultFilterMethod: handleInputFilterMethod
646
646
  },
647
647
  VxeDatePicker: {
648
- autofocus: '.vxe-date-picker--inner',
648
+ autofocus: 'input',
649
649
  renderEdit: defaultEditRender,
650
650
  renderCell (renderOpts, params) {
651
651
  const { props = {} } = renderOpts
@@ -669,7 +669,7 @@ renderer.mixin({
669
669
  defaultFilterMethod: handleFilterMethod
670
670
  },
671
671
  VxeTextarea: {
672
- autofocus: '.vxe-textarea--inner'
672
+ autofocus: 'VxeTextarea'
673
673
  },
674
674
  VxeButton: {
675
675
  renderDefault: buttonCellRender
@@ -687,7 +687,7 @@ renderer.mixin({
687
687
  }
688
688
  },
689
689
  VxeSelect: {
690
- autofocus: '.vxe-input--inner',
690
+ autofocus: 'input',
691
691
  renderEdit: defaultSelectEditRender,
692
692
  renderDefault: defaultSelectEditRender,
693
693
  renderCell (renderOpts, params) {
@@ -709,7 +709,7 @@ renderer.mixin({
709
709
  exportMethod: handleExportSelectMethod
710
710
  },
711
711
  VxeTreeSelect: {
712
- autofocus: '.vxe-input--inner',
712
+ autofocus: 'input',
713
713
  renderEdit: defaultTreeSelectEditRender,
714
714
  renderCell (renderOpts, params) {
715
715
  return getCellLabelVNs(renderOpts, params, getTreeSelectCellValue(renderOpts, params))
@@ -723,7 +723,7 @@ renderer.mixin({
723
723
  renderDefault: radioAndCheckboxEditRender
724
724
  },
725
725
  VxeSwitch: {
726
- autofocus: '.vxe-switch--button',
726
+ autofocus: 'button',
727
727
  renderEdit: defaultEditRender,
728
728
  renderDefault: defaultEditRender
729
729
  },
@@ -172,7 +172,7 @@ export default defineComponent({
172
172
  const showAllTip = tooltipOpts.showAll
173
173
  const isColGroup = column.children && column.children.length
174
174
  const fixedHiddenColumn = fixedType ? column.fixed !== fixedType && !isColGroup : column.fixed && overflowX
175
- const footOverflow = XEUtils.isUndefined(showFooterOverflow) || XEUtils.isNull(showFooterOverflow) ? allColumnFooterOverflow : showFooterOverflow
175
+ const footOverflow = XEUtils.eqNull(showFooterOverflow) ? allColumnFooterOverflow : showFooterOverflow
176
176
  const footAlign = footerAlign || align || allFooterAlign || allAlign
177
177
  let showEllipsis = footOverflow === 'ellipsis'
178
178
  const showTitle = footOverflow === 'title'
@@ -228,7 +228,7 @@ export default defineComponent({
228
228
  const { type, showHeaderOverflow, headerAlign, align, headerClassName } = column
229
229
  const isColGroup = column.children && column.children.length
230
230
  const fixedHiddenColumn = fixedType ? (column.fixed !== fixedType && !isColGroup) : !!column.fixed && overflowX
231
- const headOverflow = XEUtils.isUndefined(showHeaderOverflow) || XEUtils.isNull(showHeaderOverflow) ? allColumnHeaderOverflow : showHeaderOverflow
231
+ const headOverflow = XEUtils.eqNull(showHeaderOverflow) ? allColumnHeaderOverflow : showHeaderOverflow
232
232
  const headAlign = headerAlign || align || allHeaderAlign || allAlign
233
233
  let showEllipsis = headOverflow === 'ellipsis'
234
234
  const showTitle = headOverflow === 'title'
@@ -315,6 +315,7 @@ export default defineComponent({
315
315
  round: item.round,
316
316
  status: item.status,
317
317
  content: item.name,
318
+ permissionCode: item.permissionCode,
318
319
  destroyOnClose: item.destroyOnClose,
319
320
  placement: item.placement,
320
321
  transfer: item.transfer,
@@ -8,11 +8,6 @@
8
8
  --vxe-ui-font-size-small: 13px;
9
9
  --vxe-ui-font-size-mini: 12px;
10
10
 
11
- /*font color*/
12
- --vxe-ui-font-primary-color: #409eff;
13
- --vxe-ui-font-lighten-color: lighten(#606266, 10%);
14
- --vxe-ui-font-disabled-color: #BFBFBF;
15
-
16
11
  /*base border*/
17
12
  --vxe-ui-border-radius: 4px;
18
13
 
@@ -79,8 +74,8 @@
79
74
  --vxe-ui-table-checkbox-range-border-color: #006af1;
80
75
  --vxe-ui-table-checkbox-range-background-color: rgba(50,128,252,0.2);
81
76
 
82
- --vxe-ui-table-fixed-left-scrolling-box-shadow: 8px 0px 10px -5px rgba(0, 0, 0, 0.12);
83
- --vxe-ui-table-fixed-right-scrolling-box-shadow: -8px 0px 10px -5px rgba(0, 0, 0, 0.12);
77
+ --vxe-ui-table-fixed-left-scrolling-box-shadow: 8px 0px 10px -5px var(--vxe-ui-table-fixed-scrolling-box-shadow-color);
78
+ --vxe-ui-table-fixed-right-scrolling-box-shadow: -8px 0px 10px -5px var(--vxe-ui-table-fixed-scrolling-box-shadow-color);
84
79
 
85
80
  --vxe-ui-table-menu-item-width: 178px;
86
81
  --vxe-ui-table-menu-background-color: #fff;
@@ -3,10 +3,12 @@
3
3
  [data-vxe-ui-theme="dark"] {
4
4
  color-scheme: dark;
5
5
 
6
- /*font*/
6
+ /*font color*/
7
7
  --vxe-ui-font-color: #a0a3a7;
8
+ --vxe-ui-font-primary-color: #409eff;
8
9
  --vxe-ui-font-lighten-color: #babdc0;
9
10
  --vxe-ui-font-darken-color: #86898e;
11
+ --vxe-ui-font-disabled-color: #BFBFBF;
10
12
 
11
13
  /*base*/
12
14
  --vxe-ui-base-popup-border-color: var(--vxe-ui-layout-background-color);
@@ -35,4 +37,5 @@
35
37
  --vxe-ui-table-row-hover-checkbox-checked-background-color: #6e5326;
36
38
  --vxe-ui-table-row-current-background-color: #18222c;
37
39
  --vxe-ui-table-row-hover-current-background-color: #262727;
40
+ --vxe-ui-table-fixed-scrolling-box-shadow-color: rgba(0, 0, 0, 0.8);
38
41
  }
@@ -1,10 +1,12 @@
1
1
  @import './base.scss';
2
2
 
3
3
  [data-vxe-ui-theme="light"] {
4
- /*font*/
4
+ /*font color*/
5
5
  --vxe-ui-font-color: #606266;
6
+ --vxe-ui-font-primary-color: #409eff;
6
7
  --vxe-ui-font-lighten-color: #797b80;
7
8
  --vxe-ui-font-darken-color: #47494c;
9
+ --vxe-ui-font-disabled-color: #BFBFBF;
8
10
 
9
11
  /*base*/
10
12
  --vxe-ui-base-popup-border-color: #DADCE0;
@@ -33,4 +35,5 @@
33
35
  --vxe-ui-table-row-hover-checkbox-checked-background-color: #ffebbc;
34
36
  --vxe-ui-table-row-current-background-color: #e6f7ff;
35
37
  --vxe-ui-table-row-hover-current-background-color: #d7effb;
38
+ --vxe-ui-table-fixed-scrolling-box-shadow-color: rgba(0, 0, 0, 0.12);
36
39
  }