vxe-table 4.4.4 → 4.4.6-beta.0

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 (90) hide show
  1. package/es/footer/src/footer.js +1 -5
  2. package/es/form/src/form.js +91 -64
  3. package/es/icon/style.css +1 -1
  4. package/es/locale/lang/en-US.js +1 -1
  5. package/es/locale/lang/ja-JP.js +1 -1
  6. package/es/locale/lang/zh-CN.js +1 -1
  7. package/es/locale/lang/zh-TC.js +1 -1
  8. package/es/style.css +1 -1
  9. package/es/style.min.css +1 -1
  10. package/es/table/src/body.js +3 -7
  11. package/es/table/src/table.js +14 -20
  12. package/es/table/style.css +8 -7
  13. package/es/toolbar/src/toolbar.js +9 -16
  14. package/es/tools/log.js +1 -1
  15. package/es/v-x-e-table/index.js +1 -1
  16. package/es/validator/src/hook.js +6 -17
  17. package/es/vxe-table/style.css +8 -7
  18. package/lib/footer/src/footer.js +1 -6
  19. package/lib/footer/src/footer.min.js +1 -1
  20. package/lib/form/src/form.js +97 -79
  21. package/lib/form/src/form.min.js +1 -1
  22. package/lib/icon/style/style.css +1 -1
  23. package/lib/icon/style/style.min.css +1 -1
  24. package/lib/index.umd.js +131 -175
  25. package/lib/index.umd.min.js +1 -1
  26. package/lib/locale/lang/en-US.js +1 -1
  27. package/lib/locale/lang/en-US.min.js +1 -1
  28. package/lib/locale/lang/en-US.umd.js +1 -1
  29. package/lib/locale/lang/ja-JP.js +1 -1
  30. package/lib/locale/lang/ja-JP.min.js +1 -1
  31. package/lib/locale/lang/ja-JP.umd.js +1 -1
  32. package/lib/locale/lang/zh-CN.js +1 -1
  33. package/lib/locale/lang/zh-CN.min.js +1 -1
  34. package/lib/locale/lang/zh-CN.umd.js +1 -1
  35. package/lib/locale/lang/zh-HK.min.js +1 -1
  36. package/lib/locale/lang/zh-HK.umd.js +1 -1
  37. package/lib/locale/lang/zh-MO.min.js +1 -1
  38. package/lib/locale/lang/zh-MO.umd.js +1 -1
  39. package/lib/locale/lang/zh-TC.js +1 -1
  40. package/lib/locale/lang/zh-TC.min.js +1 -1
  41. package/lib/locale/lang/zh-TC.umd.js +1 -1
  42. package/lib/locale/lang/zh-TW.min.js +1 -1
  43. package/lib/locale/lang/zh-TW.umd.js +1 -1
  44. package/lib/style.css +1 -1
  45. package/lib/style.min.css +1 -1
  46. package/lib/table/src/body.js +2 -8
  47. package/lib/table/src/body.min.js +1 -1
  48. package/lib/table/src/table.js +10 -24
  49. package/lib/table/src/table.min.js +1 -1
  50. package/lib/table/style/style.css +8 -7
  51. package/lib/table/style/style.min.css +1 -1
  52. package/lib/toolbar/src/toolbar.js +13 -22
  53. package/lib/toolbar/src/toolbar.min.js +1 -1
  54. package/lib/tools/log.js +1 -1
  55. package/lib/tools/log.min.js +1 -1
  56. package/lib/v-x-e-table/index.js +1 -1
  57. package/lib/v-x-e-table/index.min.js +1 -1
  58. package/lib/validator/src/hook.js +6 -19
  59. package/lib/validator/src/hook.min.js +1 -1
  60. package/lib/vxe-table/style/style.css +8 -7
  61. package/lib/vxe-table/style/style.min.css +1 -1
  62. package/package.json +1 -1
  63. package/packages/footer/src/footer.ts +1 -5
  64. package/packages/form/src/form.ts +93 -62
  65. package/packages/locale/lang/en-US.ts +1 -1
  66. package/packages/locale/lang/ja-JP.ts +1 -1
  67. package/packages/locale/lang/zh-CN.ts +1 -1
  68. package/packages/locale/lang/zh-TC.ts +1 -1
  69. package/packages/table/src/body.ts +3 -7
  70. package/packages/table/src/table.ts +14 -24
  71. package/packages/toolbar/src/toolbar.ts +9 -16
  72. package/packages/validator/src/hook.ts +6 -17
  73. package/styles/cssvar.scss +0 -2
  74. package/styles/table.scss +12 -7
  75. package/styles/variable.scss +0 -2
  76. package/types/form.d.ts +17 -8
  77. package/types/table.d.ts +1 -1
  78. package/types/v-x-e-table/renderer.d.ts +22 -20
  79. /package/es/icon/style/{iconfont.1687739719961.ttf → iconfont.1688344901060.ttf} +0 -0
  80. /package/es/icon/style/{iconfont.1687739719961.woff → iconfont.1688344901060.woff} +0 -0
  81. /package/es/icon/style/{iconfont.1687739719961.woff2 → iconfont.1688344901060.woff2} +0 -0
  82. /package/es/{iconfont.1687739719961.ttf → iconfont.1688344901060.ttf} +0 -0
  83. /package/es/{iconfont.1687739719961.woff → iconfont.1688344901060.woff} +0 -0
  84. /package/es/{iconfont.1687739719961.woff2 → iconfont.1688344901060.woff2} +0 -0
  85. /package/lib/icon/style/{iconfont.1687739719961.ttf → iconfont.1688344901060.ttf} +0 -0
  86. /package/lib/icon/style/{iconfont.1687739719961.woff → iconfont.1688344901060.woff} +0 -0
  87. /package/lib/icon/style/{iconfont.1687739719961.woff2 → iconfont.1688344901060.woff2} +0 -0
  88. /package/lib/{iconfont.1687739719961.ttf → iconfont.1688344901060.ttf} +0 -0
  89. /package/lib/{iconfont.1687739719961.woff → iconfont.1688344901060.woff} +0 -0
  90. /package/lib/{iconfont.1687739719961.woff2 → iconfont.1688344901060.woff2} +0 -0
package/lib/index.umd.js CHANGED
@@ -2263,7 +2263,7 @@ const GlobalConfig = {
2263
2263
  ;// CONCATENATED MODULE: ./packages/tools/log.ts
2264
2264
 
2265
2265
  function getLog(message, params) {
2266
- return `[vxe-table v${"4.4.4"}] ${conf.i18n(message, params)}`;
2266
+ return `[vxe-table v${"4.4.6-beta.0"}] ${conf.i18n(message, params)}`;
2267
2267
  }
2268
2268
  function outLog(type) {
2269
2269
  return function (message, params) {
@@ -4069,7 +4069,7 @@ const config = new VXETableConfig();
4069
4069
  const v = 'v4';
4070
4070
  const VXETable = {
4071
4071
  v,
4072
- version: "4.4.4",
4072
+ version: "4.4.6-beta.0",
4073
4073
  setup: setup,
4074
4074
  interceptor: interceptor,
4075
4075
  renderer: renderer,
@@ -14608,9 +14608,6 @@ const validatorHook = {
14608
14608
  reactData,
14609
14609
  internalData
14610
14610
  } = $xetable;
14611
- const {
14612
- refValidTooltip
14613
- } = $xetable.getRefMaps();
14614
14611
  const {
14615
14612
  computeValidOpts,
14616
14613
  computeTreeOpts,
@@ -14796,7 +14793,6 @@ const validatorHook = {
14796
14793
  const {
14797
14794
  validStore
14798
14795
  } = reactData;
14799
- const validTip = refValidTooltip.value;
14800
14796
  Object.assign(validStore, {
14801
14797
  visible: false,
14802
14798
  row: null,
@@ -14804,9 +14800,6 @@ const validatorHook = {
14804
14800
  content: '',
14805
14801
  rule: null
14806
14802
  });
14807
- if (validTip && validTip.reactData.visible) {
14808
- validTip.close();
14809
- }
14810
14803
  return (0,external_commonjs_vue_commonjs2_vue_root_Vue_.nextTick)();
14811
14804
  }
14812
14805
  };
@@ -14857,14 +14850,14 @@ const validatorHook = {
14857
14850
  editRules
14858
14851
  } = props;
14859
14852
  const {
14860
- property
14853
+ field
14861
14854
  } = column;
14862
14855
  const errorRules = [];
14863
14856
  const syncVailds = [];
14864
- if (property && editRules) {
14865
- const rules = external_root_XEUtils_commonjs_xe_utils_commonjs2_xe_utils_amd_xe_utils_default().get(editRules, property);
14857
+ if (field && editRules) {
14858
+ const rules = external_root_XEUtils_commonjs_xe_utils_commonjs2_xe_utils_amd_xe_utils_default().get(editRules, field);
14866
14859
  if (rules) {
14867
- const cellValue = external_root_XEUtils_commonjs_xe_utils_commonjs2_xe_utils_amd_xe_utils_default().isUndefined(val) ? external_root_XEUtils_commonjs_xe_utils_commonjs2_xe_utils_amd_xe_utils_default().get(row, property) : val;
14860
+ const cellValue = external_root_XEUtils_commonjs_xe_utils_commonjs2_xe_utils_amd_xe_utils_default().isUndefined(val) ? external_root_XEUtils_commonjs_xe_utils_commonjs2_xe_utils_amd_xe_utils_default().get(row, field) : val;
14868
14861
  rules.forEach(rule => {
14869
14862
  const {
14870
14863
  type,
@@ -15003,20 +14996,13 @@ const validatorHook = {
15003
14996
  */
15004
14997
  showValidTooltip(params) {
15005
14998
  const {
15006
- height
15007
- } = props;
15008
- const {
15009
- tableData,
15010
14999
  validStore
15011
15000
  } = reactData;
15012
- const validOpts = computeValidOpts.value;
15013
15001
  const {
15014
15002
  rule,
15015
15003
  row,
15016
- column,
15017
- cell
15004
+ column
15018
15005
  } = params;
15019
- const validTip = refValidTooltip.value;
15020
15006
  const content = rule.content;
15021
15007
  return (0,external_commonjs_vue_commonjs2_vue_root_Vue_.nextTick)().then(() => {
15022
15008
  Object.assign(validStore, {
@@ -15027,9 +15013,6 @@ const validatorHook = {
15027
15013
  visible: true
15028
15014
  });
15029
15015
  $xetable.dispatchEvent('valid-error', params, null);
15030
- if (validTip && (validOpts.message === 'tooltip' || validOpts.message === 'default' && !height && tableData.length < 2)) {
15031
- return validTip.open(cell, content);
15032
- }
15033
15016
  });
15034
15017
  }
15035
15018
  };
@@ -18072,26 +18055,7 @@ dynamicApp.component(grid.name, grid);
18072
18055
  }
18073
18056
  };
18074
18057
  const resetCustomEvent = evnt => {
18075
- const {
18076
- columns
18077
- } = reactData;
18078
- const {
18079
- computeCustomOpts: computeTableCustomOpts
18080
- } = $xetable.getComputeMaps();
18081
- const tableCustomOpts = computeTableCustomOpts.value;
18082
- const {
18083
- checkMethod
18084
- } = tableCustomOpts;
18085
- external_root_XEUtils_commonjs_xe_utils_commonjs2_xe_utils_amd_xe_utils_default().eachTree(columns, column => {
18086
- if (!checkMethod || checkMethod({
18087
- column
18088
- })) {
18089
- column.visible = column.defaultVisible;
18090
- column.halfVisible = false;
18091
- }
18092
- column.resizeWidth = 0;
18093
- });
18094
- $xetable.saveCustomResizable(true);
18058
+ $xetable.resetColumn(true);
18095
18059
  closeCustom();
18096
18060
  emitCustomEvent('reset', evnt);
18097
18061
  };
@@ -18329,13 +18293,15 @@ dynamicApp.component(grid.name, grid);
18329
18293
  if (item.visible !== false) {
18330
18294
  const compConf = buttonRender ? VXETable.renderer.get(buttonRender.name) : null;
18331
18295
  if (buttonRender && compConf && compConf.renderToolbarButton) {
18332
- btnVNs.push((0,external_commonjs_vue_commonjs2_vue_root_Vue_.h)('span', {
18333
- class: 'vxe-button--item'
18334
- }, getSlotVNs(compConf.renderToolbarButton(buttonRender, {
18296
+ const toolbarButtonClassName = compConf.toolbarButtonClassName;
18297
+ const params = {
18335
18298
  $grid: $xegrid,
18336
18299
  $table: $xetable,
18337
18300
  button: item
18338
- }))));
18301
+ };
18302
+ btnVNs.push((0,external_commonjs_vue_commonjs2_vue_root_Vue_.h)('span', {
18303
+ class: ['vxe-button--item', toolbarButtonClassName ? external_root_XEUtils_commonjs_xe_utils_commonjs2_xe_utils_amd_xe_utils_default().isFunction(toolbarButtonClassName) ? toolbarButtonClassName(params) : toolbarButtonClassName : '']
18304
+ }, getSlotVNs(compConf.renderToolbarButton(buttonRender, params))));
18339
18305
  } else {
18340
18306
  btnVNs.push((0,external_commonjs_vue_commonjs2_vue_root_Vue_.h)((0,external_commonjs_vue_commonjs2_vue_root_Vue_.resolveComponent)('vxe-button'), {
18341
18307
  disabled: item.disabled,
@@ -18383,13 +18349,15 @@ dynamicApp.component(grid.name, grid);
18383
18349
  if (item.visible !== false) {
18384
18350
  const compConf = toolRender ? VXETable.renderer.get(toolRender.name) : null;
18385
18351
  if (toolRender && compConf && compConf.renderToolbarTool) {
18386
- btnVNs.push((0,external_commonjs_vue_commonjs2_vue_root_Vue_.h)('span', {
18387
- class: 'vxe-tool--item'
18388
- }, getSlotVNs(compConf.renderToolbarTool(toolRender, {
18352
+ const toolbarToolClassName = compConf.toolbarToolClassName;
18353
+ const params = {
18389
18354
  $grid: $xegrid,
18390
18355
  $table: $xetable,
18391
18356
  tool: item
18392
- }))));
18357
+ };
18358
+ btnVNs.push((0,external_commonjs_vue_commonjs2_vue_root_Vue_.h)('span', {
18359
+ class: ['vxe-tool--item', toolbarToolClassName ? external_root_XEUtils_commonjs_xe_utils_commonjs2_xe_utils_amd_xe_utils_default().isFunction(toolbarToolClassName) ? toolbarToolClassName(params) : toolbarToolClassName : '']
18360
+ }, getSlotVNs(compConf.renderToolbarTool(toolRender, params))));
18393
18361
  } else {
18394
18362
  btnVNs.push((0,external_commonjs_vue_commonjs2_vue_root_Vue_.h)((0,external_commonjs_vue_commonjs2_vue_root_Vue_.resolveComponent)('vxe-button'), {
18395
18363
  disabled: item.disabled,
@@ -20909,10 +20877,18 @@ function getResetValue(value, resetValue) {
20909
20877
  };
20910
20878
  const clearValidate = fieldOrItem => {
20911
20879
  if (fieldOrItem) {
20912
- const item = handleFieldOrItem($xeform, fieldOrItem);
20913
- if (item) {
20914
- item.showError = false;
20880
+ let fields = fieldOrItem;
20881
+ if (!external_root_XEUtils_commonjs_xe_utils_commonjs2_xe_utils_amd_xe_utils_default().isArray(fieldOrItem)) {
20882
+ fields = [fieldOrItem];
20915
20883
  }
20884
+ fields.forEach(field => {
20885
+ if (field) {
20886
+ const item = handleFieldOrItem($xeform, field);
20887
+ if (item) {
20888
+ item.showError = false;
20889
+ }
20890
+ }
20891
+ });
20916
20892
  } else {
20917
20893
  getItems().forEach(item => {
20918
20894
  item.showError = false;
@@ -21002,80 +20978,94 @@ function getResetValue(value, resetValue) {
21002
20978
  * validator=Function({ itemValue, rule, rules, data, property }) 自定义校验,接收一个 Promise
21003
20979
  * trigger=change 触发方式
21004
20980
  */
21005
- const validItemRules = (validType, property, val) => {
20981
+ const validItemRules = (validType, fields, val) => {
21006
20982
  const {
21007
20983
  data,
21008
20984
  rules: formRules
21009
20985
  } = props;
21010
- const errorRules = [];
21011
- const syncVailds = [];
21012
- if (property && formRules) {
21013
- const rules = external_root_XEUtils_commonjs_xe_utils_commonjs2_xe_utils_amd_xe_utils_default().get(formRules, property);
21014
- if (rules) {
21015
- const itemValue = external_root_XEUtils_commonjs_xe_utils_commonjs2_xe_utils_amd_xe_utils_default().isUndefined(val) ? external_root_XEUtils_commonjs_xe_utils_commonjs2_xe_utils_amd_xe_utils_default().get(data, property) : val;
21016
- rules.forEach(rule => {
21017
- const {
21018
- type,
21019
- trigger,
21020
- required
21021
- } = rule;
21022
- if (validType === 'all' || !trigger || validType === trigger) {
21023
- if (external_root_XEUtils_commonjs_xe_utils_commonjs2_xe_utils_amd_xe_utils_default().isFunction(rule.validator)) {
21024
- const customValid = rule.validator({
21025
- itemValue,
21026
- rule,
21027
- rules,
21028
- data,
21029
- field: property,
21030
- property,
21031
- $form: $xeform
21032
- });
21033
- if (customValid) {
21034
- if (external_root_XEUtils_commonjs_xe_utils_commonjs2_xe_utils_amd_xe_utils_default().isError(customValid)) {
21035
- errorRules.push(new form_Rule({
21036
- type: 'custom',
21037
- trigger,
21038
- content: customValid.message,
21039
- rule: new form_Rule(rule)
21040
- }));
21041
- } else if (customValid.catch) {
21042
- // 如果为异步校验(注:异步校验是并发无序的)
21043
- syncVailds.push(customValid.catch(e => {
20986
+ const errorMaps = {};
20987
+ if (!external_root_XEUtils_commonjs_xe_utils_commonjs2_xe_utils_amd_xe_utils_default().isArray(fields)) {
20988
+ fields = [fields];
20989
+ }
20990
+ return Promise.all(fields.map(property => {
20991
+ const errorRules = [];
20992
+ const syncVailds = [];
20993
+ if (property && formRules) {
20994
+ const rules = external_root_XEUtils_commonjs_xe_utils_commonjs2_xe_utils_amd_xe_utils_default().get(formRules, property);
20995
+ if (rules) {
20996
+ const itemValue = external_root_XEUtils_commonjs_xe_utils_commonjs2_xe_utils_amd_xe_utils_default().isUndefined(val) ? external_root_XEUtils_commonjs_xe_utils_commonjs2_xe_utils_amd_xe_utils_default().get(data, property) : val;
20997
+ rules.forEach(rule => {
20998
+ const {
20999
+ type,
21000
+ trigger,
21001
+ required
21002
+ } = rule;
21003
+ if (validType === 'all' || !trigger || validType === trigger) {
21004
+ if (external_root_XEUtils_commonjs_xe_utils_commonjs2_xe_utils_amd_xe_utils_default().isFunction(rule.validator)) {
21005
+ const customValid = rule.validator({
21006
+ itemValue,
21007
+ rule,
21008
+ rules,
21009
+ data,
21010
+ field: property,
21011
+ property,
21012
+ $form: $xeform
21013
+ });
21014
+ if (customValid) {
21015
+ if (external_root_XEUtils_commonjs_xe_utils_commonjs2_xe_utils_amd_xe_utils_default().isError(customValid)) {
21044
21016
  errorRules.push(new form_Rule({
21045
21017
  type: 'custom',
21046
21018
  trigger,
21047
- content: e ? e.message : rule.content || rule.message,
21019
+ content: customValid.message,
21048
21020
  rule: new form_Rule(rule)
21049
21021
  }));
21050
- }));
21022
+ } else if (customValid.catch) {
21023
+ // 如果为异步校验(注:异步校验是并发无序的)
21024
+ syncVailds.push(customValid.catch(e => {
21025
+ errorRules.push(new form_Rule({
21026
+ type: 'custom',
21027
+ trigger,
21028
+ content: e ? e.message : rule.content || rule.message,
21029
+ rule: new form_Rule(rule)
21030
+ }));
21031
+ }));
21032
+ }
21051
21033
  }
21052
- }
21053
- } else {
21054
- const isArrType = type === 'array';
21055
- const isArrVal = external_root_XEUtils_commonjs_xe_utils_commonjs2_xe_utils_amd_xe_utils_default().isArray(itemValue);
21056
- let hasEmpty = true;
21057
- if (isArrType || isArrVal) {
21058
- hasEmpty = !isArrVal || !itemValue.length;
21059
- } else if (external_root_XEUtils_commonjs_xe_utils_commonjs2_xe_utils_amd_xe_utils_default().isString(itemValue)) {
21060
- hasEmpty = eqEmptyValue(itemValue.trim());
21061
21034
  } else {
21062
- hasEmpty = eqEmptyValue(itemValue);
21063
- }
21064
- if (required ? hasEmpty || validErrorRuleValue(rule, itemValue) : !hasEmpty && validErrorRuleValue(rule, itemValue)) {
21065
- errorRules.push(new form_Rule(rule));
21035
+ const isArrType = type === 'array';
21036
+ const isArrVal = external_root_XEUtils_commonjs_xe_utils_commonjs2_xe_utils_amd_xe_utils_default().isArray(itemValue);
21037
+ let hasEmpty = true;
21038
+ if (isArrType || isArrVal) {
21039
+ hasEmpty = !isArrVal || !itemValue.length;
21040
+ } else if (external_root_XEUtils_commonjs_xe_utils_commonjs2_xe_utils_amd_xe_utils_default().isString(itemValue)) {
21041
+ hasEmpty = eqEmptyValue(itemValue.trim());
21042
+ } else {
21043
+ hasEmpty = eqEmptyValue(itemValue);
21044
+ }
21045
+ if (required ? hasEmpty || validErrorRuleValue(rule, itemValue) : !hasEmpty && validErrorRuleValue(rule, itemValue)) {
21046
+ errorRules.push(new form_Rule(rule));
21047
+ }
21066
21048
  }
21067
21049
  }
21068
- }
21069
- });
21050
+ });
21051
+ }
21070
21052
  }
21071
- }
21072
- return Promise.all(syncVailds).then(() => {
21073
- if (errorRules.length) {
21074
- const rest = {
21075
- rules: errorRules,
21076
- rule: errorRules[0]
21077
- };
21078
- return Promise.reject(rest);
21053
+ return Promise.all(syncVailds).then(() => {
21054
+ if (errorRules.length) {
21055
+ errorMaps[property] = errorRules.map(rule => {
21056
+ return {
21057
+ $form: $xeform,
21058
+ rule,
21059
+ data,
21060
+ field: property,
21061
+ property
21062
+ };
21063
+ });
21064
+ }
21065
+ });
21066
+ })).then(() => {
21067
+ if (!external_root_XEUtils_commonjs_xe_utils_commonjs2_xe_utils_amd_xe_utils_default().isEmpty(errorMaps)) {
21068
+ return Promise.reject(errorMaps);
21079
21069
  }
21080
21070
  });
21081
21071
  };
@@ -21098,24 +21088,14 @@ function getResetValue(value, resetValue) {
21098
21088
  if (field && !isHiddenItem($xeform, item) && isActivetem($xeform, item)) {
21099
21089
  itemValids.push(validItemRules(type || 'all', field).then(() => {
21100
21090
  item.errRule = null;
21101
- }).catch(({
21102
- rule,
21103
- rules
21104
- }) => {
21105
- const rest = {
21106
- rule,
21107
- rules,
21108
- data,
21109
- field,
21110
- property: field,
21111
- $form: $xeform
21112
- };
21091
+ }).catch(errorMaps => {
21092
+ const rest = errorMaps[field];
21113
21093
  if (!validRest[field]) {
21114
21094
  validRest[field] = [];
21115
21095
  }
21116
21096
  validRest[field].push(rest);
21117
21097
  validFields.push(field);
21118
- item.errRule = rule;
21098
+ item.errRule = rest[0].rule;
21119
21099
  return Promise.reject(rest);
21120
21100
  }));
21121
21101
  }
@@ -21157,8 +21137,11 @@ function getResetValue(value, resetValue) {
21157
21137
  return beginValidate(getItems(), '', callback);
21158
21138
  };
21159
21139
  const validateField = (fieldOrItem, callback) => {
21160
- const item = handleFieldOrItem($xeform, fieldOrItem);
21161
- return beginValidate(item ? [item] : [], '', callback);
21140
+ let fields = [];
21141
+ if (!external_root_XEUtils_commonjs_xe_utils_commonjs2_xe_utils_amd_xe_utils_default().isArray(fieldOrItem)) {
21142
+ fields = [fieldOrItem];
21143
+ }
21144
+ return beginValidate(fields.map(field => handleFieldOrItem($xeform, field)), '', callback);
21162
21145
  };
21163
21146
  const submitEvent = evnt => {
21164
21147
  evnt.preventDefault();
@@ -21240,13 +21223,12 @@ function getResetValue(value, resetValue) {
21240
21223
  if (field) {
21241
21224
  return validItemRules(evnt ? ['blur'].includes(evnt.type) ? 'blur' : 'change' : 'all', field, itemValue).then(() => {
21242
21225
  clearValidate(field);
21243
- }).catch(({
21244
- rule
21245
- }) => {
21226
+ }).catch(errorMaps => {
21227
+ const rest = errorMaps[field];
21246
21228
  const item = getItemByField(field);
21247
- if (item) {
21229
+ if (rest && item) {
21248
21230
  item.showError = true;
21249
- item.errRule = rule;
21231
+ item.errRule = rest[0].rule;
21250
21232
  }
21251
21233
  });
21252
21234
  }
@@ -22918,8 +22900,7 @@ const lineOffsetSizes = {
22918
22900
  refTableBody,
22919
22901
  refTableFooter,
22920
22902
  refTableLeftBody,
22921
- refTableRightBody,
22922
- refValidTooltip
22903
+ refTableRightBody
22923
22904
  } = $xetable.getRefMaps();
22924
22905
  const {
22925
22906
  computeEditOpts,
@@ -23032,7 +23013,6 @@ const lineOffsetSizes = {
23032
23013
  const renderColumn = (seq, rowid, fixedType, rowLevel, row, rowIndex, $rowIndex, _rowIndex, column, $columnIndex, columns, items) => {
23033
23014
  const {
23034
23015
  columnKey,
23035
- height,
23036
23016
  showOverflow: allColumnOverflow,
23037
23017
  cellClassName: allCellClassName,
23038
23018
  cellStyle,
@@ -23099,7 +23079,7 @@ const lineOffsetSizes = {
23099
23079
  const tdOns = {};
23100
23080
  const cellAlign = align || allAlign;
23101
23081
  const hasValidError = validStore.row === row && validStore.column === column;
23102
- const showValidTip = editRules && validOpts.showMessage && (validOpts.message === 'default' ? height || tableData.length > 1 : validOpts.message === 'inline');
23082
+ const showValidTip = editRules && validOpts.showMessage;
23103
23083
  const attrs = {
23104
23084
  colid: column.id
23105
23085
  };
@@ -23509,7 +23489,6 @@ const lineOffsetSizes = {
23509
23489
  const tableFooter = refTableFooter.value;
23510
23490
  const leftBody = refTableLeftBody.value;
23511
23491
  const rightBody = refTableRightBody.value;
23512
- const validTip = refValidTooltip.value;
23513
23492
  const scrollBodyElem = refElem.value;
23514
23493
  const headerElem = tableHeader ? tableHeader.$el : null;
23515
23494
  const footerElem = tableFooter ? tableFooter.$el : null;
@@ -23560,9 +23539,6 @@ const lineOffsetSizes = {
23560
23539
  if (scrollYLoad && isRollY) {
23561
23540
  $xetable.triggerScrollYEvent(evnt);
23562
23541
  }
23563
- if (isRollX && validTip && validTip.reactData.visible) {
23564
- validTip.updatePlacement();
23565
- }
23566
23542
  $xetable.dispatchEvent('scroll', {
23567
23543
  type: renderType,
23568
23544
  fixed: fixedType,
@@ -24377,8 +24353,7 @@ function mergeFooterMethod(mergeFooterList, _rowIndex, _columnIndex) {
24377
24353
  } = $xetable;
24378
24354
  const {
24379
24355
  refTableHeader,
24380
- refTableBody,
24381
- refValidTooltip
24356
+ refTableBody
24382
24357
  } = $xetable.getRefMaps();
24383
24358
  const {
24384
24359
  computeTooltipOpts,
@@ -24404,7 +24379,6 @@ function mergeFooterMethod(mergeFooterList, _rowIndex, _columnIndex) {
24404
24379
  const {
24405
24380
  lastScrollLeft
24406
24381
  } = tableInternalData;
24407
- const validTip = refValidTooltip.value;
24408
24382
  const tableHeader = refTableHeader.value;
24409
24383
  const tableBody = refTableBody.value;
24410
24384
  const headerElem = tableHeader ? tableHeader.$el : null;
@@ -24423,9 +24397,6 @@ function mergeFooterMethod(mergeFooterList, _rowIndex, _columnIndex) {
24423
24397
  if (scrollXLoad && isX) {
24424
24398
  $xetable.triggerScrollXEvent(evnt);
24425
24399
  }
24426
- if (isX && validTip && validTip.reactData.visible) {
24427
- validTip.updatePlacement();
24428
- }
24429
24400
  $xetable.dispatchEvent('scroll', {
24430
24401
  type: footer_renderType,
24431
24402
  fixed: fixedType,
@@ -25004,7 +24975,6 @@ const orderStorageKey = 'VXE_TABLE_CUSTOM_COLUMN_ORDER';
25004
24975
  const refElem = (0,external_commonjs_vue_commonjs2_vue_root_Vue_.ref)();
25005
24976
  const refTooltip = (0,external_commonjs_vue_commonjs2_vue_root_Vue_.ref)();
25006
24977
  const refCommTooltip = (0,external_commonjs_vue_commonjs2_vue_root_Vue_.ref)();
25007
- const refValidTooltip = (0,external_commonjs_vue_commonjs2_vue_root_Vue_.ref)();
25008
24978
  const refTableFilter = (0,external_commonjs_vue_commonjs2_vue_root_Vue_.ref)();
25009
24979
  const refTableMenu = (0,external_commonjs_vue_commonjs2_vue_root_Vue_.ref)();
25010
24980
  const refTableHeader = (0,external_commonjs_vue_commonjs2_vue_root_Vue_.ref)();
@@ -25076,12 +25046,6 @@ const orderStorageKey = 'VXE_TABLE_CUSTOM_COLUMN_ORDER';
25076
25046
  ...tooltipStore.currOpts
25077
25047
  };
25078
25048
  });
25079
- const computeValidTipOpts = (0,external_commonjs_vue_commonjs2_vue_root_Vue_.computed)(() => {
25080
- const tooltipOpts = computeTooltipOpts.value;
25081
- return Object.assign({
25082
- isArrow: false
25083
- }, tooltipOpts);
25084
- });
25085
25049
  const computeEditOpts = (0,external_commonjs_vue_commonjs2_vue_root_Vue_.computed)(() => {
25086
25050
  return Object.assign({}, conf.table.editConfig, props.editConfig);
25087
25051
  });
@@ -25219,7 +25183,6 @@ const orderStorageKey = 'VXE_TABLE_CUSTOM_COLUMN_ORDER';
25219
25183
  const refMaps = {
25220
25184
  refElem,
25221
25185
  refTooltip,
25222
- refValidTooltip,
25223
25186
  refTableFilter,
25224
25187
  refTableMenu,
25225
25188
  refTableHeader,
@@ -28317,7 +28280,7 @@ const orderStorageKey = 'VXE_TABLE_CUSTOM_COLUMN_ORDER';
28317
28280
  return 0;
28318
28281
  },
28319
28282
  /**
28320
- * 手动重置列的显示隐藏、列宽拖动的状态;
28283
+ * 手动重置列的显示隐藏、列宽拖动的状态、固定列、排序列;
28321
28284
  * 如果为 true 则重置所有状态
28322
28285
  * 如果已关联工具栏,则会同步更新
28323
28286
  */
@@ -28331,12 +28294,16 @@ const orderStorageKey = 'VXE_TABLE_CUSTOM_COLUMN_ORDER';
28331
28294
  } = customOpts;
28332
28295
  const opts = Object.assign({
28333
28296
  visible: true,
28334
- resizable: options === true
28297
+ resizable: options === true,
28298
+ fixed: options === true
28335
28299
  }, options);
28336
28300
  tableFullColumn.forEach(column => {
28337
28301
  if (opts.resizable) {
28338
28302
  column.resizeWidth = 0;
28339
28303
  }
28304
+ if (opts.fixed) {
28305
+ column.fixed = column.defaultFixed;
28306
+ }
28340
28307
  if (!checkMethod || checkMethod({
28341
28308
  column
28342
28309
  })) {
@@ -28346,6 +28313,9 @@ const orderStorageKey = 'VXE_TABLE_CUSTOM_COLUMN_ORDER';
28346
28313
  if (opts.resizable) {
28347
28314
  tablePrivateMethods.saveCustomResizable(true);
28348
28315
  }
28316
+ if (opts.fixed) {
28317
+ tablePrivateMethods.saveCustomFixed();
28318
+ }
28349
28319
  return tablePrivateMethods.handleCustom();
28350
28320
  },
28351
28321
  /**
@@ -29564,7 +29534,6 @@ const orderStorageKey = 'VXE_TABLE_CUSTOM_COLUMN_ORDER';
29564
29534
  const {
29565
29535
  actived
29566
29536
  } = editStore;
29567
- const $validTooltip = refValidTooltip.value;
29568
29537
  const tableFilter = refTableFilter.value;
29569
29538
  const tableMenu = refTableMenu.value;
29570
29539
  if (tableFilter) {
@@ -29584,9 +29553,7 @@ const orderStorageKey = 'VXE_TABLE_CUSTOM_COLUMN_ORDER';
29584
29553
  // 如果是激活状态,点击了单元格之外
29585
29554
  const cell = actived.args.cell;
29586
29555
  if (!cell || !getEventTargetNode(evnt, cell).flag) {
29587
- if ($validTooltip && getEventTargetNode(evnt, $validTooltip.$el).flag) {
29588
- // 如果是激活状态,且点击了校验提示框
29589
- } else if (!internalData._lastCallTime || internalData._lastCallTime + 50 < Date.now()) {
29556
+ if (!internalData._lastCallTime || internalData._lastCallTime + 50 < Date.now()) {
29590
29557
  // 如果是激活状态,点击了单元格之外
29591
29558
  if (!getEventTargetNode(evnt, document.body, 'vxe-table--ignore-clear').flag) {
29592
29559
  // 如果手动调用了激活单元格,避免触发源被移除后导致重复关闭
@@ -31882,7 +31849,6 @@ const orderStorageKey = 'VXE_TABLE_CUSTOM_COLUMN_ORDER';
31882
31849
  loading,
31883
31850
  stripe,
31884
31851
  showHeader,
31885
- height,
31886
31852
  treeConfig,
31887
31853
  mouseConfig,
31888
31854
  showFooter,
@@ -31918,8 +31884,6 @@ const orderStorageKey = 'VXE_TABLE_CUSTOM_COLUMN_ORDER';
31918
31884
  const vSize = computeSize.value;
31919
31885
  const tableBorder = computeTableBorder.value;
31920
31886
  const mouseOpts = computeMouseOpts.value;
31921
- const validOpts = computeValidOpts.value;
31922
- const validTipOpts = computeValidTipOpts.value;
31923
31887
  const loadingOpts = computeLoadingOpts.value;
31924
31888
  const isMenu = computeIsMenu.value;
31925
31889
  return (0,external_commonjs_vue_commonjs2_vue_root_Vue_.h)('div', {
@@ -32069,14 +32033,6 @@ const orderStorageKey = 'VXE_TABLE_CUSTOM_COLUMN_ORDER';
32069
32033
  isArrow: false,
32070
32034
  enterable: false
32071
32035
  }) : (0,external_commonjs_vue_commonjs2_vue_root_Vue_.createCommentVNode)(),
32072
- /**
32073
- * 校验提示
32074
- */
32075
- hasUseTooltip && props.editRules && validOpts.showMessage && (validOpts.message === 'default' ? !height : validOpts.message === 'tooltip') ? (0,external_commonjs_vue_commonjs2_vue_root_Vue_.h)((0,external_commonjs_vue_commonjs2_vue_root_Vue_.resolveComponent)('vxe-tooltip'), {
32076
- ref: refValidTooltip,
32077
- class: 'vxe-table--valid-error',
32078
- ...(validOpts.message === 'tooltip' || tableData.length === 1 ? validTipOpts : {})
32079
- }) : (0,external_commonjs_vue_commonjs2_vue_root_Vue_.createCommentVNode)(),
32080
32036
  /**
32081
32037
  * 工具提示
32082
32038
  */
@@ -32355,7 +32311,7 @@ dynamicApp.component(table.name, table);
32355
32311
  custom: '列设置',
32356
32312
  customAll: '全部',
32357
32313
  customConfirm: '确认',
32358
- customRestore: '还原'
32314
+ customRestore: '重置'
32359
32315
  },
32360
32316
  input: {
32361
32317
  date: {