vxe-table 4.2.2 → 4.2.4-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 (58) hide show
  1. package/es/filter/src/hook.js +2 -1
  2. package/es/footer/src/footer.js +5 -5
  3. package/es/header/src/header.js +6 -6
  4. package/es/header/style.css +1 -5
  5. package/es/input/src/input.js +138 -33
  6. package/es/input/style.css +42 -13
  7. package/es/keyboard/src/hook.js +5 -1
  8. package/es/style.css +1 -1
  9. package/es/style.min.css +1 -1
  10. package/es/table/src/body.js +15 -11
  11. package/es/table/src/table.js +58 -48
  12. package/es/table/src/util.js +2 -2
  13. package/es/tools/log.js +1 -1
  14. package/es/v-x-e-table/index.js +1 -1
  15. package/helper/vetur/attributes.json +31 -19
  16. package/helper/vetur/tags.json +3 -0
  17. package/lib/filter/src/hook.js +2 -1
  18. package/lib/filter/src/hook.min.js +1 -1
  19. package/lib/footer/src/footer.js +5 -5
  20. package/lib/footer/src/footer.min.js +1 -1
  21. package/lib/header/src/header.js +6 -6
  22. package/lib/header/src/header.min.js +1 -1
  23. package/lib/header/style/style.css +1 -5
  24. package/lib/header/style/style.min.css +1 -1
  25. package/lib/index.umd.js +345 -121
  26. package/lib/index.umd.min.js +1 -1
  27. package/lib/input/src/input.js +180 -35
  28. package/lib/input/src/input.min.js +1 -1
  29. package/lib/input/style/style.css +42 -13
  30. package/lib/input/style/style.min.css +1 -1
  31. package/lib/keyboard/src/hook.js +7 -1
  32. package/lib/keyboard/src/hook.min.js +1 -1
  33. package/lib/style.css +1 -1
  34. package/lib/style.min.css +1 -1
  35. package/lib/table/src/body.js +15 -11
  36. package/lib/table/src/body.min.js +1 -1
  37. package/lib/table/src/table.js +65 -56
  38. package/lib/table/src/table.min.js +1 -1
  39. package/lib/table/src/util.js +1 -1
  40. package/lib/table/src/util.min.js +1 -1
  41. package/lib/tools/log.js +1 -1
  42. package/lib/tools/log.min.js +1 -1
  43. package/lib/v-x-e-table/index.js +1 -1
  44. package/lib/v-x-e-table/index.min.js +1 -1
  45. package/package.json +1 -1
  46. package/packages/filter/src/hook.ts +3 -2
  47. package/packages/footer/src/footer.ts +5 -5
  48. package/packages/header/src/header.ts +6 -6
  49. package/packages/input/src/input.ts +142 -34
  50. package/packages/keyboard/src/hook.ts +6 -2
  51. package/packages/table/src/body.ts +15 -11
  52. package/packages/table/src/table.ts +57 -46
  53. package/packages/table/src/util.ts +2 -2
  54. package/packages/tools/dom.ts +1 -1
  55. package/styles/header.scss +1 -1
  56. package/styles/input.scss +16 -4
  57. package/types/input.d.ts +11 -0
  58. package/types/table.d.ts +3 -1
package/lib/index.umd.js CHANGED
@@ -6028,6 +6028,54 @@ module.exports = function (METHOD_NAME, argument) {
6028
6028
  };
6029
6029
 
6030
6030
 
6031
+ /***/ }),
6032
+
6033
+ /***/ "a79d":
6034
+ /***/ (function(module, exports, __webpack_require__) {
6035
+
6036
+ "use strict";
6037
+
6038
+ var $ = __webpack_require__("23e7");
6039
+ var IS_PURE = __webpack_require__("c430");
6040
+ var NativePromise = __webpack_require__("fea9");
6041
+ var fails = __webpack_require__("d039");
6042
+ var getBuiltIn = __webpack_require__("d066");
6043
+ var isCallable = __webpack_require__("1626");
6044
+ var speciesConstructor = __webpack_require__("4840");
6045
+ var promiseResolve = __webpack_require__("cdf9");
6046
+ var redefine = __webpack_require__("6eeb");
6047
+
6048
+ // Safari bug https://bugs.webkit.org/show_bug.cgi?id=200829
6049
+ var NON_GENERIC = !!NativePromise && fails(function () {
6050
+ NativePromise.prototype['finally'].call({ then: function () { /* empty */ } }, function () { /* empty */ });
6051
+ });
6052
+
6053
+ // `Promise.prototype.finally` method
6054
+ // https://tc39.es/ecma262/#sec-promise.prototype.finally
6055
+ $({ target: 'Promise', proto: true, real: true, forced: NON_GENERIC }, {
6056
+ 'finally': function (onFinally) {
6057
+ var C = speciesConstructor(this, getBuiltIn('Promise'));
6058
+ var isFunction = isCallable(onFinally);
6059
+ return this.then(
6060
+ isFunction ? function (x) {
6061
+ return promiseResolve(C, onFinally()).then(function () { return x; });
6062
+ } : onFinally,
6063
+ isFunction ? function (e) {
6064
+ return promiseResolve(C, onFinally()).then(function () { throw e; });
6065
+ } : onFinally
6066
+ );
6067
+ }
6068
+ });
6069
+
6070
+ // makes sure that native promise-based APIs `Promise#finally` properly works with patched `Promise#then`
6071
+ if (!IS_PURE && isCallable(NativePromise)) {
6072
+ var method = getBuiltIn('Promise').prototype['finally'];
6073
+ if (NativePromise.prototype['finally'] !== method) {
6074
+ redefine(NativePromise.prototype, 'finally', method, { unsafe: true });
6075
+ }
6076
+ }
6077
+
6078
+
6031
6079
  /***/ }),
6032
6080
 
6033
6081
  /***/ "a9e3":
@@ -8754,7 +8802,7 @@ var es_array_concat = __webpack_require__("99af");
8754
8802
 
8755
8803
 
8756
8804
  function getLog(message, params) {
8757
- return "[vxe-table v".concat("4.2.2-beta.1", "] ").concat(conf.i18n(message, params));
8805
+ return "[vxe-table v".concat("4.2.4-beta.0", "] ").concat(conf.i18n(message, params));
8758
8806
  }
8759
8807
 
8760
8808
  function outLog(type) {
@@ -9566,7 +9614,7 @@ function isColumnInfo(column) {
9566
9614
  return column && (column.constructor === columnInfo_ColumnInfo || column instanceof columnInfo_ColumnInfo);
9567
9615
  }
9568
9616
  function util_createColumn($xetable, options, renderOptions) {
9569
- return isColumnInfo(options) ? options : new columnInfo_ColumnInfo($xetable, options, renderOptions);
9617
+ return isColumnInfo(options) ? options : Object(external_commonjs_vue_commonjs2_vue_root_Vue_["reactive"])(new columnInfo_ColumnInfo($xetable, options, renderOptions));
9570
9618
  }
9571
9619
  function watchColumn(props, column) {
9572
9620
  Object.keys(props).forEach(function (name) {
@@ -10759,7 +10807,7 @@ var v_x_e_table_config = new v_x_e_table_VXETableConfig();
10759
10807
  var v = 'v4';
10760
10808
  var VXETable = {
10761
10809
  v: v,
10762
- version: "4.2.2-beta.1",
10810
+ version: "4.2.4-beta.0",
10763
10811
  setup: setup_setup,
10764
10812
  interceptor: interceptor,
10765
10813
  renderer: renderer,
@@ -11268,7 +11316,8 @@ var tableFilterHook = {
11268
11316
  var elemStore = internalData.elemStore;
11269
11317
  var fixed = column.fixed;
11270
11318
  return $xetable.scrollToColumn(column).then(function () {
11271
- var headerWrapperElem = elemStore["".concat(fixed || 'main', "-header-wrapper")] || elemStore['main-header-wrapper'];
11319
+ var headerWrapperRef = elemStore["".concat(fixed || 'main', "-header-wrapper")] || elemStore['main-header-wrapper'];
11320
+ var headerWrapperElem = headerWrapperRef ? headerWrapperRef.value : null;
11272
11321
 
11273
11322
  if (headerWrapperElem) {
11274
11323
  var filterBtnElem = headerWrapperElem.querySelector(".vxe-header--column.".concat(column.id, " .vxe-filter--btn"));
@@ -14848,6 +14897,9 @@ var msgQueue = [];
14848
14897
  return this.renderVN();
14849
14898
  }
14850
14899
  }));
14900
+ // EXTERNAL MODULE: ./node_modules/core-js/modules/es.array.includes.js
14901
+ var es_array_includes = __webpack_require__("caad");
14902
+
14851
14903
  // EXTERNAL MODULE: ./node_modules/core-js/modules/es.string.pad-start.js
14852
14904
  var es_string_pad_start = __webpack_require__("4d90");
14853
14905
 
@@ -14934,7 +14986,13 @@ function toFloatValueFixed(inputValue, digitsValue) {
14934
14986
 
14935
14987
 
14936
14988
 
14937
- var yearSize = 20;
14989
+
14990
+
14991
+
14992
+
14993
+
14994
+
14995
+ var yearSize = 12;
14938
14996
  var monthSize = 20;
14939
14997
  var quarterSize = 8;
14940
14998
  /* harmony default export */ var input = (Object(external_commonjs_vue_commonjs2_vue_root_Vue_["defineComponent"])({
@@ -14973,6 +15031,7 @@ var quarterSize = 8;
14973
15031
  return conf.input.size || conf.size;
14974
15032
  }
14975
15033
  },
15034
+ multiple: Boolean,
14976
15035
  // number、integer、float
14977
15036
  min: {
14978
15037
  type: [String, Number],
@@ -15167,6 +15226,43 @@ var quarterSize = 8;
15167
15226
  var computeDateMaxTime = Object(external_commonjs_vue_commonjs2_vue_root_Vue_["computed"])(function () {
15168
15227
  return props.maxDate ? external_root_XEUtils_commonjs_xe_utils_commonjs2_xe_utils_amd_xe_utils_default.a.toStringDate(props.maxDate) : null;
15169
15228
  });
15229
+ var computeSupportMultiples = Object(external_commonjs_vue_commonjs2_vue_root_Vue_["computed"])(function () {
15230
+ return ['date', 'week', 'month', 'quarter', 'year'].includes(props.type);
15231
+ });
15232
+ var computeDateListValue = Object(external_commonjs_vue_commonjs2_vue_root_Vue_["computed"])(function () {
15233
+ var modelValue = props.modelValue,
15234
+ multiple = props.multiple;
15235
+ var isDatePickerType = computeIsDatePickerType.value;
15236
+ var dateValueFormat = computeDateValueFormat.value;
15237
+
15238
+ if (multiple && modelValue && isDatePickerType) {
15239
+ return external_root_XEUtils_commonjs_xe_utils_commonjs2_xe_utils_amd_xe_utils_default.a.toValueString(modelValue).split(',').map(function (item) {
15240
+ var date = parseDate(item, dateValueFormat);
15241
+
15242
+ if (external_root_XEUtils_commonjs_xe_utils_commonjs2_xe_utils_amd_xe_utils_default.a.isValidDate(date)) {
15243
+ return date;
15244
+ }
15245
+
15246
+ return null;
15247
+ });
15248
+ }
15249
+
15250
+ return [];
15251
+ });
15252
+ var computeDateMultipleValue = Object(external_commonjs_vue_commonjs2_vue_root_Vue_["computed"])(function () {
15253
+ var dateListValue = computeDateListValue.value;
15254
+ var dateValueFormat = computeDateValueFormat.value;
15255
+ return dateListValue.map(function (date) {
15256
+ return external_root_XEUtils_commonjs_xe_utils_commonjs2_xe_utils_amd_xe_utils_default.a.toDateString(date, dateValueFormat);
15257
+ });
15258
+ });
15259
+ var computeDateMultipleLabel = Object(external_commonjs_vue_commonjs2_vue_root_Vue_["computed"])(function () {
15260
+ var dateListValue = computeDateListValue.value;
15261
+ var dateLabelFormat = computeDateLabelFormat.value;
15262
+ return dateListValue.map(function (date) {
15263
+ return external_root_XEUtils_commonjs_xe_utils_commonjs2_xe_utils_amd_xe_utils_default.a.toDateString(date, dateLabelFormat);
15264
+ }).join(', ');
15265
+ });
15170
15266
  var computeDateValueFormat = Object(external_commonjs_vue_commonjs2_vue_root_Vue_["computed"])(function () {
15171
15267
  var type = props.type;
15172
15268
  return type === 'time' ? 'HH:mm:ss' : props.valueFormat || (type === 'datetime' ? 'yyyy-MM-dd HH:mm:ss' : 'yyyy-MM-dd');
@@ -15237,15 +15333,18 @@ var quarterSize = 8;
15237
15333
 
15238
15334
  if (selectMonth && currentDate) {
15239
15335
  var currFullYear = currentDate.getFullYear();
15240
- var startYear = new Date(external_root_XEUtils_commonjs_xe_utils_commonjs2_xe_utils_amd_xe_utils_default.a.toNumber(('' + selectMonth.getFullYear()).replace(/\d{1}$/, '0')), 0, 1);
15336
+ var selectFullYear = selectMonth.getFullYear();
15337
+ var startYearDate = new Date(selectFullYear - selectFullYear % yearSize, 0, 1);
15241
15338
 
15242
- for (var index = -10; index < yearSize - 10; index++) {
15243
- var date = external_root_XEUtils_commonjs_xe_utils_commonjs2_xe_utils_amd_xe_utils_default.a.getWhatYear(startYear, index, 'first');
15339
+ for (var index = -4; index < yearSize + 4; index++) {
15340
+ var date = external_root_XEUtils_commonjs_xe_utils_commonjs2_xe_utils_amd_xe_utils_default.a.getWhatYear(startYearDate, index, 'first');
15244
15341
  var itemFullYear = date.getFullYear();
15245
15342
  years.push({
15246
15343
  date: date,
15247
15344
  isCurrent: true,
15345
+ isPrev: index < 0,
15248
15346
  isNow: currFullYear === itemFullYear,
15347
+ isNext: index >= yearSize,
15249
15348
  year: itemFullYear
15250
15349
  });
15251
15350
  }
@@ -15497,8 +15596,9 @@ var quarterSize = 8;
15497
15596
  var computeInpReadonly = Object(external_commonjs_vue_commonjs2_vue_root_Vue_["computed"])(function () {
15498
15597
  var type = props.type,
15499
15598
  readonly = props.readonly,
15500
- editable = props.editable;
15501
- return readonly || !editable || type === 'week' || type === 'quarter';
15599
+ editable = props.editable,
15600
+ multiple = props.multiple;
15601
+ return readonly || multiple || !editable || type === 'week' || type === 'quarter';
15502
15602
  });
15503
15603
  var computeInputType = Object(external_commonjs_vue_commonjs2_vue_root_Vue_["computed"])(function () {
15504
15604
  var type = props.type;
@@ -15618,10 +15718,13 @@ var quarterSize = 8;
15618
15718
  var hidePanelTimeout;
15619
15719
 
15620
15720
  var hidePanel = function hidePanel() {
15621
- reactData.visiblePanel = false;
15622
- hidePanelTimeout = window.setTimeout(function () {
15623
- reactData.animatVisible = false;
15624
- }, 350);
15721
+ return new Promise(function (resolve) {
15722
+ reactData.visiblePanel = false;
15723
+ hidePanelTimeout = window.setTimeout(function () {
15724
+ reactData.animatVisible = false;
15725
+ resolve();
15726
+ }, 350);
15727
+ });
15625
15728
  };
15626
15729
 
15627
15730
  var clearValueEvent = function clearValueEvent(evnt, value) {
@@ -15708,7 +15811,7 @@ var quarterSize = 8;
15708
15811
 
15709
15812
  if (isDatePickerType) {
15710
15813
  dateParseValue(inputValue);
15711
- reactData.inputValue = reactData.datePanelLabel;
15814
+ reactData.inputValue = props.multiple ? computeDateMultipleLabel.value : reactData.datePanelLabel;
15712
15815
  }
15713
15816
  };
15714
15817
  /**
@@ -15746,7 +15849,7 @@ var quarterSize = 8;
15746
15849
  };
15747
15850
 
15748
15851
  var dateRevert = function dateRevert() {
15749
- reactData.inputValue = reactData.datePanelLabel;
15852
+ reactData.inputValue = props.multiple ? computeDateMultipleLabel.value : reactData.datePanelLabel;
15750
15853
  };
15751
15854
 
15752
15855
  var dateCheckMonth = function dateCheckMonth(date) {
@@ -15758,7 +15861,8 @@ var quarterSize = 8;
15758
15861
  };
15759
15862
 
15760
15863
  var dateChange = function dateChange(date) {
15761
- var modelValue = props.modelValue;
15864
+ var modelValue = props.modelValue,
15865
+ multiple = props.multiple;
15762
15866
  var datetimePanelValue = reactData.datetimePanelValue;
15763
15867
  var isDateTimeType = computeIsDateTimeType.value;
15764
15868
  var dateValueFormat = computeDateValueFormat.value;
@@ -15778,10 +15882,51 @@ var quarterSize = 8;
15778
15882
  });
15779
15883
  dateCheckMonth(date);
15780
15884
 
15781
- if (!external_root_XEUtils_commonjs_xe_utils_commonjs2_xe_utils_amd_xe_utils_default.a.isEqual(modelValue, inpVal)) {
15782
- emitModel(inpVal, {
15783
- type: 'update'
15784
- });
15885
+ if (multiple) {
15886
+ // 如果为多选
15887
+ var dateMultipleValue = computeDateMultipleValue.value;
15888
+
15889
+ if (isDateTimeType) {
15890
+ // 如果是datetime特殊类型
15891
+ var dateListValue = computeDateListValue.value;
15892
+ var datetimeRest = [];
15893
+ dateListValue.forEach(function (item) {
15894
+ if (item && !external_root_XEUtils_commonjs_xe_utils_commonjs2_xe_utils_amd_xe_utils_default.a.isDateSame(date, item, 'yyyyMMdd')) {
15895
+ item.setHours(datetimePanelValue.getHours());
15896
+ item.setMinutes(datetimePanelValue.getMinutes());
15897
+ item.setSeconds(datetimePanelValue.getSeconds());
15898
+ datetimeRest.push(item);
15899
+ }
15900
+ });
15901
+ datetimeRest.push(date);
15902
+ emitModel(datetimeRest.map(function (date) {
15903
+ return external_root_XEUtils_commonjs_xe_utils_commonjs2_xe_utils_amd_xe_utils_default.a.toDateString(date, dateValueFormat);
15904
+ }).join(','), {
15905
+ type: 'update'
15906
+ });
15907
+ } else {
15908
+ // 如果是日期类型
15909
+ if (dateMultipleValue.some(function (val) {
15910
+ return external_root_XEUtils_commonjs_xe_utils_commonjs2_xe_utils_amd_xe_utils_default.a.isEqual(val, inpVal);
15911
+ })) {
15912
+ emitModel(dateMultipleValue.filter(function (val) {
15913
+ return !external_root_XEUtils_commonjs_xe_utils_commonjs2_xe_utils_amd_xe_utils_default.a.isEqual(val, inpVal);
15914
+ }).join(','), {
15915
+ type: 'update'
15916
+ });
15917
+ } else {
15918
+ emitModel(dateMultipleValue.concat([inpVal]).join(','), {
15919
+ type: 'update'
15920
+ });
15921
+ }
15922
+ }
15923
+ } else {
15924
+ // 如果为单选
15925
+ if (!external_root_XEUtils_commonjs_xe_utils_commonjs2_xe_utils_amd_xe_utils_default.a.isEqual(modelValue, inpVal)) {
15926
+ emitModel(inpVal, {
15927
+ type: 'update'
15928
+ });
15929
+ }
15785
15930
  }
15786
15931
  };
15787
15932
 
@@ -16120,8 +16265,12 @@ var quarterSize = 8;
16120
16265
 
16121
16266
  var dateTodayMonthEvent = function dateTodayMonthEvent(evnt) {
16122
16267
  dateNowHandle();
16123
- dateChange(reactData.currentDate);
16124
- hidePanel();
16268
+
16269
+ if (!props.multiple) {
16270
+ dateChange(reactData.currentDate);
16271
+ hidePanel();
16272
+ }
16273
+
16125
16274
  inputMethods.dispatchEvent('date-today', {
16126
16275
  type: props.type
16127
16276
  }, evnt);
@@ -16170,7 +16319,8 @@ var quarterSize = 8;
16170
16319
  };
16171
16320
 
16172
16321
  var dateSelectItem = function dateSelectItem(date) {
16173
- var type = props.type;
16322
+ var type = props.type,
16323
+ multiple = props.multiple;
16174
16324
  var datePanelType = reactData.datePanelType;
16175
16325
 
16176
16326
  if (type === 'month') {
@@ -16179,18 +16329,27 @@ var quarterSize = 8;
16179
16329
  dateCheckMonth(date);
16180
16330
  } else {
16181
16331
  dateChange(date);
16182
- hidePanel();
16332
+
16333
+ if (!multiple) {
16334
+ hidePanel();
16335
+ }
16183
16336
  }
16184
16337
  } else if (type === 'year') {
16185
16338
  dateChange(date);
16186
- hidePanel();
16339
+
16340
+ if (!multiple) {
16341
+ hidePanel();
16342
+ }
16187
16343
  } else if (type === 'quarter') {
16188
16344
  if (datePanelType === 'year') {
16189
16345
  reactData.datePanelType = 'quarter';
16190
16346
  dateCheckMonth(date);
16191
16347
  } else {
16192
16348
  dateChange(date);
16193
- hidePanel();
16349
+
16350
+ if (!multiple) {
16351
+ hidePanel();
16352
+ }
16194
16353
  }
16195
16354
  } else {
16196
16355
  if (datePanelType === 'month') {
@@ -16201,7 +16360,10 @@ var quarterSize = 8;
16201
16360
  dateCheckMonth(date);
16202
16361
  } else {
16203
16362
  dateChange(date);
16204
- hidePanel();
16363
+
16364
+ if (!multiple) {
16365
+ hidePanel();
16366
+ }
16205
16367
  }
16206
16368
  }
16207
16369
  };
@@ -16311,8 +16473,13 @@ var quarterSize = 8;
16311
16473
  };
16312
16474
 
16313
16475
  var dateConfirmEvent = function dateConfirmEvent() {
16476
+ var type = props.type;
16314
16477
  var dateValue = computeDateValue.value;
16315
- dateChange(dateValue || reactData.currentDate);
16478
+
16479
+ if (type === 'datetime') {
16480
+ dateChange(dateValue || reactData.currentDate);
16481
+ }
16482
+
16316
16483
  hidePanel();
16317
16484
  };
16318
16485
 
@@ -16558,8 +16725,10 @@ var quarterSize = 8;
16558
16725
  reactData.visiblePanel = true;
16559
16726
  }, 10);
16560
16727
  updateZindex();
16561
- updatePlacement();
16728
+ return updatePlacement();
16562
16729
  }
16730
+
16731
+ return Object(external_commonjs_vue_commonjs2_vue_root_Vue_["nextTick"])();
16563
16732
  };
16564
16733
 
16565
16734
  var datePickerOpenEvent = function datePickerOpenEvent(evnt) {
@@ -16756,11 +16925,13 @@ var quarterSize = 8;
16756
16925
  };
16757
16926
 
16758
16927
  var renderDateDayTable = function renderDateDayTable() {
16928
+ var multiple = props.multiple;
16759
16929
  var datePanelType = reactData.datePanelType,
16760
16930
  datePanelValue = reactData.datePanelValue;
16761
16931
  var dateValue = computeDateValue.value;
16762
16932
  var dateHeaders = computeDateHeaders.value;
16763
16933
  var dayDatas = computeDayDatas.value;
16934
+ var dateListValue = computeDateListValue.value;
16764
16935
  var matchFormat = 'yyyyMMdd';
16765
16936
  return [Object(external_commonjs_vue_commonjs2_vue_root_Vue_["h"])('table', {
16766
16937
  class: "vxe-input--date-".concat(datePanelType, "-view"),
@@ -16778,7 +16949,9 @@ var quarterSize = 8;
16778
16949
  'is--now': item.isNow,
16779
16950
  'is--next': item.isNext,
16780
16951
  'is--disabled': isDateDisabled(item),
16781
- 'is--selected': external_root_XEUtils_commonjs_xe_utils_commonjs2_xe_utils_amd_xe_utils_default.a.isDateSame(dateValue, item.date, matchFormat),
16952
+ 'is--selected': multiple ? dateListValue.some(function (val) {
16953
+ return external_root_XEUtils_commonjs_xe_utils_commonjs2_xe_utils_amd_xe_utils_default.a.isDateSame(val, item.date, matchFormat);
16954
+ }) : external_root_XEUtils_commonjs_xe_utils_commonjs2_xe_utils_amd_xe_utils_default.a.isDateSame(dateValue, item.date, matchFormat),
16782
16955
  'is--hover': external_root_XEUtils_commonjs_xe_utils_commonjs2_xe_utils_amd_xe_utils_default.a.isDateSame(datePanelValue, item.date, matchFormat)
16783
16956
  },
16784
16957
  onClick: function onClick() {
@@ -16793,11 +16966,13 @@ var quarterSize = 8;
16793
16966
  };
16794
16967
 
16795
16968
  var renderDateWeekTable = function renderDateWeekTable() {
16969
+ var multiple = props.multiple;
16796
16970
  var datePanelType = reactData.datePanelType,
16797
16971
  datePanelValue = reactData.datePanelValue;
16798
16972
  var dateValue = computeDateValue.value;
16799
16973
  var weekHeaders = computeWeekHeaders.value;
16800
16974
  var weekDates = computeWeekDates.value;
16975
+ var dateListValue = computeDateListValue.value;
16801
16976
  var matchFormat = 'yyyyMMdd';
16802
16977
  return [Object(external_commonjs_vue_commonjs2_vue_root_Vue_["h"])('table', {
16803
16978
  class: "vxe-input--date-".concat(datePanelType, "-view"),
@@ -16807,7 +16982,11 @@ var quarterSize = 8;
16807
16982
  }, [Object(external_commonjs_vue_commonjs2_vue_root_Vue_["h"])('thead', [Object(external_commonjs_vue_commonjs2_vue_root_Vue_["h"])('tr', weekHeaders.map(function (item) {
16808
16983
  return Object(external_commonjs_vue_commonjs2_vue_root_Vue_["h"])('th', item.label);
16809
16984
  }))]), Object(external_commonjs_vue_commonjs2_vue_root_Vue_["h"])('tbody', weekDates.map(function (rows) {
16810
- var isSelected = rows.some(function (item) {
16985
+ var isSelected = multiple ? rows.some(function (item) {
16986
+ return dateListValue.some(function (val) {
16987
+ return external_root_XEUtils_commonjs_xe_utils_commonjs2_xe_utils_amd_xe_utils_default.a.isDateSame(val, item.date, matchFormat);
16988
+ });
16989
+ }) : rows.some(function (item) {
16811
16990
  return external_root_XEUtils_commonjs_xe_utils_commonjs2_xe_utils_amd_xe_utils_default.a.isDateSame(dateValue, item.date, matchFormat);
16812
16991
  });
16813
16992
  var isHover = rows.some(function (item) {
@@ -16837,10 +17016,12 @@ var quarterSize = 8;
16837
17016
  };
16838
17017
 
16839
17018
  var renderDateMonthTable = function renderDateMonthTable() {
17019
+ var multiple = props.multiple;
16840
17020
  var datePanelType = reactData.datePanelType,
16841
17021
  datePanelValue = reactData.datePanelValue;
16842
17022
  var dateValue = computeDateValue.value;
16843
17023
  var monthDatas = computeMonthDatas.value;
17024
+ var dateListValue = computeDateListValue.value;
16844
17025
  var matchFormat = 'yyyyMM';
16845
17026
  return [Object(external_commonjs_vue_commonjs2_vue_root_Vue_["h"])('table', {
16846
17027
  class: "vxe-input--date-".concat(datePanelType, "-view"),
@@ -16856,7 +17037,9 @@ var quarterSize = 8;
16856
17037
  'is--now': item.isNow,
16857
17038
  'is--next': item.isNext,
16858
17039
  'is--disabled': isDateDisabled(item),
16859
- 'is--selected': external_root_XEUtils_commonjs_xe_utils_commonjs2_xe_utils_amd_xe_utils_default.a.isDateSame(dateValue, item.date, matchFormat),
17040
+ 'is--selected': multiple ? dateListValue.some(function (val) {
17041
+ return external_root_XEUtils_commonjs_xe_utils_commonjs2_xe_utils_amd_xe_utils_default.a.isDateSame(val, item.date, matchFormat);
17042
+ }) : external_root_XEUtils_commonjs_xe_utils_commonjs2_xe_utils_amd_xe_utils_default.a.isDateSame(dateValue, item.date, matchFormat),
16860
17043
  'is--hover': external_root_XEUtils_commonjs_xe_utils_commonjs2_xe_utils_amd_xe_utils_default.a.isDateSame(datePanelValue, item.date, matchFormat)
16861
17044
  },
16862
17045
  onClick: function onClick() {
@@ -16871,10 +17054,12 @@ var quarterSize = 8;
16871
17054
  };
16872
17055
 
16873
17056
  var renderDateQuarterTable = function renderDateQuarterTable() {
17057
+ var multiple = props.multiple;
16874
17058
  var datePanelType = reactData.datePanelType,
16875
17059
  datePanelValue = reactData.datePanelValue;
16876
17060
  var dateValue = computeDateValue.value;
16877
17061
  var quarterDatas = computeQuarterDatas.value;
17062
+ var dateListValue = computeDateListValue.value;
16878
17063
  var matchFormat = 'yyyyq';
16879
17064
  return [Object(external_commonjs_vue_commonjs2_vue_root_Vue_["h"])('table', {
16880
17065
  class: "vxe-input--date-".concat(datePanelType, "-view"),
@@ -16890,7 +17075,9 @@ var quarterSize = 8;
16890
17075
  'is--now': item.isNow,
16891
17076
  'is--next': item.isNext,
16892
17077
  'is--disabled': isDateDisabled(item),
16893
- 'is--selected': external_root_XEUtils_commonjs_xe_utils_commonjs2_xe_utils_amd_xe_utils_default.a.isDateSame(dateValue, item.date, matchFormat),
17078
+ 'is--selected': multiple ? dateListValue.some(function (val) {
17079
+ return external_root_XEUtils_commonjs_xe_utils_commonjs2_xe_utils_amd_xe_utils_default.a.isDateSame(val, item.date, matchFormat);
17080
+ }) : external_root_XEUtils_commonjs_xe_utils_commonjs2_xe_utils_amd_xe_utils_default.a.isDateSame(dateValue, item.date, matchFormat),
16894
17081
  'is--hover': external_root_XEUtils_commonjs_xe_utils_commonjs2_xe_utils_amd_xe_utils_default.a.isDateSame(datePanelValue, item.date, matchFormat)
16895
17082
  },
16896
17083
  onClick: function onClick() {
@@ -16905,10 +17092,12 @@ var quarterSize = 8;
16905
17092
  };
16906
17093
 
16907
17094
  var renderDateYearTable = function renderDateYearTable() {
17095
+ var multiple = props.multiple;
16908
17096
  var datePanelType = reactData.datePanelType,
16909
17097
  datePanelValue = reactData.datePanelValue;
16910
17098
  var dateValue = computeDateValue.value;
16911
17099
  var yearDatas = computeYearDatas.value;
17100
+ var dateListValue = computeDateListValue.value;
16912
17101
  var matchFormat = 'yyyy';
16913
17102
  return [Object(external_commonjs_vue_commonjs2_vue_root_Vue_["h"])('table', {
16914
17103
  class: "vxe-input--date-".concat(datePanelType, "-view"),
@@ -16919,10 +17108,14 @@ var quarterSize = 8;
16919
17108
  return Object(external_commonjs_vue_commonjs2_vue_root_Vue_["h"])('tr', rows.map(function (item) {
16920
17109
  return Object(external_commonjs_vue_commonjs2_vue_root_Vue_["h"])('td', {
16921
17110
  class: {
16922
- 'is--disabled': isDateDisabled(item),
17111
+ 'is--prev': item.isPrev,
16923
17112
  'is--current': item.isCurrent,
16924
17113
  'is--now': item.isNow,
16925
- 'is--selected': external_root_XEUtils_commonjs_xe_utils_commonjs2_xe_utils_amd_xe_utils_default.a.isDateSame(dateValue, item.date, matchFormat),
17114
+ 'is--next': item.isNext,
17115
+ 'is--disabled': isDateDisabled(item),
17116
+ 'is--selected': multiple ? dateListValue.some(function (val) {
17117
+ return external_root_XEUtils_commonjs_xe_utils_commonjs2_xe_utils_amd_xe_utils_default.a.isDateSame(val, item.date, matchFormat);
17118
+ }) : external_root_XEUtils_commonjs_xe_utils_commonjs2_xe_utils_amd_xe_utils_default.a.isDateSame(dateValue, item.date, matchFormat),
16926
17119
  'is--hover': external_root_XEUtils_commonjs_xe_utils_commonjs2_xe_utils_amd_xe_utils_default.a.isDateSame(datePanelValue, item.date, matchFormat)
16927
17120
  },
16928
17121
  onClick: function onClick() {
@@ -16957,6 +17150,7 @@ var quarterSize = 8;
16957
17150
  };
16958
17151
 
16959
17152
  var renderDatePanel = function renderDatePanel() {
17153
+ var multiple = props.multiple;
16960
17154
  var datePanelType = reactData.datePanelType;
16961
17155
  var isDisabledPrevDateBtn = computeIsDisabledPrevDateBtn.value;
16962
17156
  var isDisabledNextDateBtn = computeIsDisabledNextDateBtn.value;
@@ -16991,7 +17185,13 @@ var quarterSize = 8;
16991
17185
  onClick: dateNextEvent
16992
17186
  }, [Object(external_commonjs_vue_commonjs2_vue_root_Vue_["h"])('i', {
16993
17187
  class: 'vxe-icon--caret-right'
16994
- })])])]), Object(external_commonjs_vue_commonjs2_vue_root_Vue_["h"])('div', {
17188
+ })]), multiple && computeSupportMultiples.value ? Object(external_commonjs_vue_commonjs2_vue_root_Vue_["h"])('span', {
17189
+ class: 'vxe-input--date-picker-btn vxe-input--date-picker-confirm-btn'
17190
+ }, [Object(external_commonjs_vue_commonjs2_vue_root_Vue_["h"])('button', {
17191
+ class: 'vxe-input--date-picker-confirm',
17192
+ type: 'button',
17193
+ onClick: dateConfirmEvent
17194
+ }, conf.i18n('vxe.button.confirm'))]) : null])]), Object(external_commonjs_vue_commonjs2_vue_root_Vue_["h"])('div', {
16995
17195
  class: 'vxe-input--date-picker-body'
16996
17196
  }, renderDateTable())];
16997
17197
  };
@@ -17243,7 +17443,10 @@ var quarterSize = 8;
17243
17443
  inputElem.blur();
17244
17444
  reactData.isActivated = false;
17245
17445
  return Object(external_commonjs_vue_commonjs2_vue_root_Vue_["nextTick"])();
17246
- }
17446
+ },
17447
+ showPanel: showPanel,
17448
+ hidePanel: hidePanel,
17449
+ updatePlacement: updatePlacement
17247
17450
  };
17248
17451
  Object.assign($xeinput, inputMethods);
17249
17452
  Object(external_commonjs_vue_commonjs2_vue_root_Vue_["watch"])(function () {
@@ -17272,7 +17475,7 @@ var quarterSize = 8;
17272
17475
 
17273
17476
  if (isDatePickerType) {
17274
17477
  dateParseValue(reactData.datePanelValue);
17275
- reactData.inputValue = reactData.datePanelLabel;
17478
+ reactData.inputValue = props.multiple ? computeDateMultipleLabel.value : reactData.datePanelLabel;
17276
17479
  }
17277
17480
  });
17278
17481
  Object(external_commonjs_vue_commonjs2_vue_root_Vue_["nextTick"])(function () {
@@ -17364,9 +17567,6 @@ var quarterSize = 8;
17364
17567
  return this.renderVN();
17365
17568
  }
17366
17569
  }));
17367
- // EXTERNAL MODULE: ./node_modules/core-js/modules/es.array.includes.js
17368
- var es_array_includes = __webpack_require__("caad");
17369
-
17370
17570
  // EXTERNAL MODULE: ./node_modules/core-js/modules/es.string.includes.js
17371
17571
  var es_string_includes = __webpack_require__("2532");
17372
17572
 
@@ -21325,7 +21525,13 @@ var tableKeyboardHook = {
21325
21525
  var elemStore = internalData.elemStore;
21326
21526
  var disX = evnt.clientX;
21327
21527
  var disY = evnt.clientY;
21328
- var bodyWrapperElem = elemStore["".concat(column.fixed || 'main', "-body-wrapper")] || elemStore['main-body-wrapper'];
21528
+ var bodyWrapperRef = elemStore["".concat(column.fixed || 'main', "-body-wrapper")] || elemStore['main-body-wrapper'];
21529
+ var bodyWrapperElem = bodyWrapperRef ? bodyWrapperRef.value : null;
21530
+
21531
+ if (!bodyWrapperElem) {
21532
+ return;
21533
+ }
21534
+
21329
21535
  var checkboxRangeElem = bodyWrapperElem.querySelector('.vxe-table--checkbox-range');
21330
21536
  var domMousemove = document.onmousemove;
21331
21537
  var domMouseup = document.onmouseup;
@@ -22481,12 +22687,12 @@ var renderType = 'header';
22481
22687
  var internalData = $xetable.internalData;
22482
22688
  var elemStore = internalData.elemStore;
22483
22689
  var prefix = "".concat(fixedType || 'main', "-header-");
22484
- elemStore["".concat(prefix, "wrapper")] = refElem.value;
22485
- elemStore["".concat(prefix, "table")] = refHeaderTable.value;
22486
- elemStore["".concat(prefix, "colgroup")] = refHeaderColgroup.value;
22487
- elemStore["".concat(prefix, "list")] = refHeaderTHead.value;
22488
- elemStore["".concat(prefix, "xSpace")] = refHeaderXSpace.value;
22489
- elemStore["".concat(prefix, "repair")] = refHeaderBorderRepair.value;
22690
+ elemStore["".concat(prefix, "wrapper")] = refElem;
22691
+ elemStore["".concat(prefix, "table")] = refHeaderTable;
22692
+ elemStore["".concat(prefix, "colgroup")] = refHeaderColgroup;
22693
+ elemStore["".concat(prefix, "list")] = refHeaderTHead;
22694
+ elemStore["".concat(prefix, "xSpace")] = refHeaderXSpace;
22695
+ elemStore["".concat(prefix, "repair")] = refHeaderBorderRepair;
22490
22696
  uploadColumn();
22491
22697
  });
22492
22698
  });
@@ -22830,11 +23036,11 @@ function mergeFooterMethod(mergeFooterList, _rowIndex, _columnIndex) {
22830
23036
  var fixedType = props.fixedType;
22831
23037
  var elemStore = tableInternalData.elemStore;
22832
23038
  var prefix = "".concat(fixedType || 'main', "-footer-");
22833
- elemStore["".concat(prefix, "wrapper")] = refElem.value;
22834
- elemStore["".concat(prefix, "table")] = refFooterTable.value;
22835
- elemStore["".concat(prefix, "colgroup")] = refFooterColgroup.value;
22836
- elemStore["".concat(prefix, "list")] = refFooterTFoot.value;
22837
- elemStore["".concat(prefix, "xSpace")] = refFooterXSpace.value;
23039
+ elemStore["".concat(prefix, "wrapper")] = refElem;
23040
+ elemStore["".concat(prefix, "table")] = refFooterTable;
23041
+ elemStore["".concat(prefix, "colgroup")] = refFooterColgroup;
23042
+ elemStore["".concat(prefix, "list")] = refFooterTFoot;
23043
+ elemStore["".concat(prefix, "xSpace")] = refFooterXSpace;
22838
23044
  });
22839
23045
  });
22840
23046
  Object(external_commonjs_vue_commonjs2_vue_root_Vue_["onUnmounted"])(function () {
@@ -31129,6 +31335,9 @@ var Pulldown = Object.assign(pulldown, {
31129
31335
  });
31130
31336
  dynamicApp.component(pulldown.name, pulldown);
31131
31337
  /* harmony default export */ var packages_pulldown = (Pulldown);
31338
+ // EXTERNAL MODULE: ./node_modules/core-js/modules/es.promise.finally.js
31339
+ var es_promise_finally = __webpack_require__("a79d");
31340
+
31132
31341
  // CONCATENATED MODULE: ./packages/table/src/body.ts
31133
31342
 
31134
31343
 
@@ -31755,8 +31964,10 @@ var lineOffsetSizes = {
31755
31964
  var bodyElem = tableBody.$el;
31756
31965
  var leftElem = leftBody ? leftBody.$el : null;
31757
31966
  var rightElem = rightBody ? rightBody.$el : null;
31758
- var bodyYElem = elemStore['main-body-ySpace'];
31759
- var bodyXElem = elemStore['main-body-xSpace'];
31967
+ var bodyYRef = elemStore['main-body-ySpace'];
31968
+ var bodyYElem = bodyYRef ? bodyYRef.value : null;
31969
+ var bodyXRef = elemStore['main-body-xSpace'];
31970
+ var bodyXElem = bodyXRef ? bodyXRef.value : null;
31760
31971
  var bodyHeight = scrollYLoad && bodyYElem ? bodyYElem.clientHeight : bodyElem.clientHeight;
31761
31972
  var bodyWidth = scrollXLoad && bodyXElem ? bodyXElem.clientWidth : bodyElem.clientWidth;
31762
31973
  var scrollTop = scrollBodyElem.scrollTop;
@@ -31839,8 +32050,10 @@ var lineOffsetSizes = {
31839
32050
  var leftElem = leftBody ? leftBody.$el : null;
31840
32051
  var rightElem = rightBody ? rightBody.$el : null;
31841
32052
  var bodyElem = tableBody.$el;
31842
- var bodyYElem = elemStore['main-body-ySpace'];
31843
- var bodyXElem = elemStore['main-body-xSpace'];
32053
+ var bodyYRef = elemStore['main-body-ySpace'];
32054
+ var bodyYElem = bodyYRef ? bodyYRef.value : null;
32055
+ var bodyXRef = elemStore['main-body-xSpace'];
32056
+ var bodyXElem = bodyXRef ? bodyXRef.value : null;
31844
32057
  var bodyHeight = scrollYLoad && bodyYElem ? bodyYElem.clientHeight : bodyElem.clientHeight;
31845
32058
  var bodyWidth = scrollXLoad && bodyXElem ? bodyXElem.clientWidth : bodyElem.clientWidth;
31846
32059
  var remainSize = isPrevWheelTop === isTopWheel ? Math.max(0, wheelYSize - wheelYTotal) : 0;
@@ -31948,13 +32161,13 @@ var lineOffsetSizes = {
31948
32161
  var elemStore = tableInternalData.elemStore;
31949
32162
  var prefix = "".concat(fixedType || 'main', "-body-");
31950
32163
  var el = refElem.value;
31951
- elemStore["".concat(prefix, "wrapper")] = refElem.value;
31952
- elemStore["".concat(prefix, "table")] = refBodyTable.value;
31953
- elemStore["".concat(prefix, "colgroup")] = refBodyColgroup.value;
31954
- elemStore["".concat(prefix, "list")] = refBodyTBody.value;
31955
- elemStore["".concat(prefix, "xSpace")] = refBodyXSpace.value;
31956
- elemStore["".concat(prefix, "ySpace")] = refBodyYSpace.value;
31957
- elemStore["".concat(prefix, "emptyBlock")] = refBodyEmptyBlock.value;
32164
+ elemStore["".concat(prefix, "wrapper")] = refElem;
32165
+ elemStore["".concat(prefix, "table")] = refBodyTable;
32166
+ elemStore["".concat(prefix, "colgroup")] = refBodyColgroup;
32167
+ elemStore["".concat(prefix, "list")] = refBodyTBody;
32168
+ elemStore["".concat(prefix, "xSpace")] = refBodyXSpace;
32169
+ elemStore["".concat(prefix, "ySpace")] = refBodyYSpace;
32170
+ elemStore["".concat(prefix, "emptyBlock")] = refBodyEmptyBlock;
31958
32171
  el.onscroll = scrollEvent;
31959
32172
  el._onscroll = scrollEvent;
31960
32173
  });
@@ -32148,6 +32361,7 @@ var lineOffsetSizes = {
32148
32361
 
32149
32362
 
32150
32363
 
32364
+
32151
32365
 
32152
32366
 
32153
32367
  var isWebkit = browse['-webkit'] && !browse.edge;
@@ -33198,14 +33412,21 @@ var visibleStorageKey = 'VXE_TABLE_CUSTOM_COLUMN_VISIBLE';
33198
33412
  * 支持 px、%、固定 混合分配
33199
33413
  * 支持动态列表调整分配
33200
33414
  * 支持自动分配偏移量
33201
- * @param {Element} headerElem
33202
- * @param {Element} bodyElem
33203
- * @param {Element} footerElem
33204
- * @param {Number} bodyWidth
33205
33415
  */
33206
33416
 
33207
33417
 
33208
- var autoCellWidth = function autoCellWidth(headerElem, bodyElem, footerElem) {
33418
+ var autoCellWidth = function autoCellWidth() {
33419
+ var tableHeader = refTableHeader.value;
33420
+ var tableBody = refTableBody.value;
33421
+ var tableFooter = refTableFooter.value;
33422
+ var bodyElem = tableBody ? tableBody.$el : null;
33423
+ var headerElem = tableHeader ? tableHeader.$el : null;
33424
+ var footerElem = tableFooter ? tableFooter.$el : null;
33425
+
33426
+ if (!bodyElem) {
33427
+ return;
33428
+ }
33429
+
33209
33430
  var tableWidth = 0;
33210
33431
  var minCellWidth = 40; // 列宽最少限制 40px
33211
33432
 
@@ -33726,7 +33947,8 @@ var visibleStorageKey = 'VXE_TABLE_CUSTOM_COLUMN_VISIBLE';
33726
33947
  var cellOffsetWidth = computeCellOffsetWidth.value;
33727
33948
  var mouseOpts = computeMouseOpts.value;
33728
33949
  var keyboardOpts = computeKeyboardOpts.value;
33729
- var bodyWrapperElem = elemStore['main-body-wrapper'];
33950
+ var bodyWrapperRef = elemStore['main-body-wrapper'];
33951
+ var bodyWrapperElem = bodyWrapperRef ? bodyWrapperRef.value : null;
33730
33952
 
33731
33953
  if (emptyPlaceholderElem) {
33732
33954
  emptyPlaceholderElem.style.top = "".concat(headerHeight, "px");
@@ -33752,8 +33974,10 @@ var visibleStorageKey = 'VXE_TABLE_CUSTOM_COLUMN_VISIBLE';
33752
33974
  }
33753
33975
 
33754
33976
  layoutList.forEach(function (layout) {
33755
- var wrapperElem = elemStore["".concat(name, "-").concat(layout, "-wrapper")];
33756
- var tableElem = elemStore["".concat(name, "-").concat(layout, "-table")];
33977
+ var wrapperRef = elemStore["".concat(name, "-").concat(layout, "-wrapper")];
33978
+ var wrapperElem = wrapperRef ? wrapperRef.value : null;
33979
+ var tableRef = elemStore["".concat(name, "-").concat(layout, "-table")];
33980
+ var tableElem = tableRef ? tableRef.value : null;
33757
33981
 
33758
33982
  if (layout === 'header') {
33759
33983
  // 表头体样式处理
@@ -33788,13 +34012,15 @@ var visibleStorageKey = 'VXE_TABLE_CUSTOM_COLUMN_VISIBLE';
33788
34012
  }
33789
34013
  }
33790
34014
 
33791
- var repairElem = elemStore["".concat(name, "-").concat(layout, "-repair")];
34015
+ var repairRef = elemStore["".concat(name, "-").concat(layout, "-repair")];
34016
+ var repairElem = repairRef ? repairRef.value : null;
33792
34017
 
33793
34018
  if (repairElem) {
33794
34019
  repairElem.style.width = "".concat(tableWidth, "px");
33795
34020
  }
33796
34021
 
33797
- var listElem = elemStore["".concat(name, "-").concat(layout, "-list")];
34022
+ var listRef = elemStore["".concat(name, "-").concat(layout, "-list")];
34023
+ var listElem = listRef ? listRef.value : null;
33798
34024
 
33799
34025
  if (isGroup && listElem) {
33800
34026
  external_root_XEUtils_commonjs_xe_utils_commonjs2_xe_utils_amd_xe_utils_default.a.arrayEach(listElem.querySelectorAll('.col--group'), function (thElem) {
@@ -33828,7 +34054,8 @@ var visibleStorageKey = 'VXE_TABLE_CUSTOM_COLUMN_VISIBLE';
33828
34054
  });
33829
34055
  }
33830
34056
  } else if (layout === 'body') {
33831
- var emptyBlockElem = elemStore["".concat(name, "-").concat(layout, "-emptyBlock")];
34057
+ var emptyBlockRef = elemStore["".concat(name, "-").concat(layout, "-emptyBlock")];
34058
+ var emptyBlockElem = emptyBlockRef ? emptyBlockRef.value : null;
33832
34059
 
33833
34060
  if (isNodeElement(wrapperElem)) {
33834
34061
  if (customMaxHeight) {
@@ -33914,7 +34141,8 @@ var visibleStorageKey = 'VXE_TABLE_CUSTOM_COLUMN_VISIBLE';
33914
34141
  }
33915
34142
  }
33916
34143
 
33917
- var colgroupElem = elemStore["".concat(name, "-").concat(layout, "-colgroup")];
34144
+ var colgroupRef = elemStore["".concat(name, "-").concat(layout, "-colgroup")];
34145
+ var colgroupElem = colgroupRef ? colgroupRef.value : null;
33918
34146
 
33919
34147
  if (colgroupElem) {
33920
34148
  external_root_XEUtils_commonjs_xe_utils_commonjs2_xe_utils_amd_xe_utils_default.a.arrayEach(colgroupElem.children, function (colElem) {
@@ -33944,7 +34172,10 @@ var visibleStorageKey = 'VXE_TABLE_CUSTOM_COLUMN_VISIBLE';
33944
34172
  var showTitle = cellOverflow === 'title';
33945
34173
  var showTooltip = cellOverflow === true || cellOverflow === 'tooltip';
33946
34174
  var hasEllipsis = showTitle || showTooltip || showEllipsis;
33947
- var _listElem = elemStore["".concat(name, "-").concat(layout, "-list")]; // 纵向虚拟滚动不支持动态行高
34175
+ var _listRef = elemStore["".concat(name, "-").concat(layout, "-list")];
34176
+
34177
+ var _listElem = _listRef ? _listRef.value : null; // 纵向虚拟滚动不支持动态行高
34178
+
33948
34179
 
33949
34180
  if (scrollYLoad && !hasEllipsis) {
33950
34181
  hasEllipsis = true;
@@ -34274,7 +34505,7 @@ var visibleStorageKey = 'VXE_TABLE_CUSTOM_COLUMN_VISIBLE';
34274
34505
  }
34275
34506
 
34276
34507
  if (childRecords) {
34277
- tableMethods.loadTreeChildren(row, childRecords).then(function (childRows) {
34508
+ return tableMethods.loadTreeChildren(row, childRecords).then(function (childRows) {
34278
34509
  if (childRows.length && $xetable.findRowIndexOf(treeExpandeds, row) === -1) {
34279
34510
  treeExpandeds.push(row);
34280
34511
  } // 如果当前节点已选中,则展开后子节点也被选中
@@ -34284,23 +34515,24 @@ var visibleStorageKey = 'VXE_TABLE_CUSTOM_COLUMN_VISIBLE';
34284
34515
  tableMethods.setCheckboxRow(childRows, true);
34285
34516
  }
34286
34517
 
34287
- Object(external_commonjs_vue_commonjs2_vue_root_Vue_["nextTick"])().then(function () {
34518
+ return Object(external_commonjs_vue_commonjs2_vue_root_Vue_["nextTick"])().then(function () {
34288
34519
  if (transform) {
34289
34520
  return tablePrivateMethods.handleTableData();
34290
34521
  }
34291
- }).then(function () {
34292
- return tableMethods.recalculate();
34293
- }).then(function () {
34294
- return resolve();
34295
34522
  });
34296
34523
  });
34297
- } else {
34298
- Object(external_commonjs_vue_commonjs2_vue_root_Vue_["nextTick"])().then(function () {
34299
- return tableMethods.recalculate();
34300
- }).then(function () {
34301
- return resolve();
34302
- });
34303
34524
  }
34525
+ }).catch(function () {
34526
+ rest.treeLoaded = false;
34527
+ external_root_XEUtils_commonjs_xe_utils_commonjs2_xe_utils_amd_xe_utils_default.a.remove(treeLazyLoadeds, function (item) {
34528
+ return $xetable.eqRow(item, row);
34529
+ });
34530
+ }).finally(function () {
34531
+ Object(external_commonjs_vue_commonjs2_vue_root_Vue_["nextTick"])().then(function () {
34532
+ return tableMethods.recalculate();
34533
+ }).then(function () {
34534
+ return resolve();
34535
+ });
34304
34536
  });
34305
34537
  } else {
34306
34538
  resolve();
@@ -34324,31 +34556,29 @@ var visibleStorageKey = 'VXE_TABLE_CUSTOM_COLUMN_VISIBLE';
34324
34556
  };
34325
34557
 
34326
34558
  var handleAsyncRowExpand = function handleAsyncRowExpand(row) {
34327
- var rowExpandeds = reactData.rowExpandeds,
34328
- expandLazyLoadeds = reactData.expandLazyLoadeds;
34329
34559
  var fullAllDataRowIdData = internalData.fullAllDataRowIdData;
34330
-
34331
- var rest = fullAllDataRowIdData[util_getRowid($xetable, row)];
34332
-
34333
34560
  return new Promise(function (resolve) {
34334
34561
  var expandOpts = computeExpandOpts.value;
34335
34562
  var loadMethod = expandOpts.loadMethod;
34336
34563
 
34337
34564
  if (loadMethod) {
34338
- expandLazyLoadeds.push(row);
34565
+ var rest = fullAllDataRowIdData[util_getRowid($xetable, row)];
34566
+
34567
+ reactData.expandLazyLoadeds.push(row);
34339
34568
  loadMethod({
34340
34569
  $table: $xetable,
34341
34570
  row: row,
34342
34571
  rowIndex: tableMethods.getRowIndex(row),
34343
34572
  $rowIndex: tableMethods.getVMRowIndex(row)
34344
- }).catch(function (e) {
34345
- return e;
34346
34573
  }).then(function () {
34347
34574
  rest.expandLoaded = true;
34348
- external_root_XEUtils_commonjs_xe_utils_commonjs2_xe_utils_amd_xe_utils_default.a.remove(expandLazyLoadeds, function (item) {
34575
+ reactData.rowExpandeds.push(row);
34576
+ }).catch(function () {
34577
+ rest.expandLoaded = false;
34578
+ }).finally(function () {
34579
+ external_root_XEUtils_commonjs_xe_utils_commonjs2_xe_utils_amd_xe_utils_default.a.remove(reactData.expandLazyLoadeds, function (item) {
34349
34580
  return $xetable.eqRow(item, row);
34350
34581
  });
34351
- rowExpandeds.push(row);
34352
34582
  resolve(Object(external_commonjs_vue_commonjs2_vue_root_Vue_["nextTick"])().then(function () {
34353
34583
  return tableMethods.recalculate();
34354
34584
  }));
@@ -35793,23 +36023,14 @@ var visibleStorageKey = 'VXE_TABLE_CUSTOM_COLUMN_VISIBLE';
35793
36023
  * 支持 width=? width=?px width=?% min-width=? min-width=?px min-width=?%
35794
36024
  */
35795
36025
  recalculate: function recalculate(refull) {
35796
- var tableHeader = refTableHeader.value;
35797
- var tableBody = refTableBody.value;
35798
- var tableFooter = refTableFooter.value;
35799
- var bodyElem = tableBody ? tableBody.$el : null;
35800
- var headerElem = tableHeader ? tableHeader.$el : null;
35801
- var footerElem = tableFooter ? tableFooter.$el : null;
36026
+ autoCellWidth();
35802
36027
 
35803
- if (bodyElem) {
35804
- autoCellWidth(headerElem, bodyElem, footerElem);
35805
-
35806
- if (refull === true) {
35807
- // 初始化时需要在列计算之后再执行优化运算,达到最优显示效果
35808
- return computeScrollLoad().then(function () {
35809
- autoCellWidth(headerElem, bodyElem, footerElem);
35810
- return computeScrollLoad();
35811
- });
35812
- }
36028
+ if (refull === true) {
36029
+ // 初始化时需要在列计算之后再执行优化运算,达到最优显示效果
36030
+ return computeScrollLoad().then(function () {
36031
+ autoCellWidth();
36032
+ return computeScrollLoad();
36033
+ });
35813
36034
  }
35814
36035
 
35815
36036
  return computeScrollLoad();
@@ -38872,7 +39093,8 @@ var visibleStorageKey = 'VXE_TABLE_CUSTOM_COLUMN_VISIBLE';
38872
39093
  containerList.forEach(function (name) {
38873
39094
  var layoutList = ['header', 'body', 'footer'];
38874
39095
  layoutList.forEach(function (layout) {
38875
- var xSpaceElem = elemStore["".concat(name, "-").concat(layout, "-xSpace")];
39096
+ var xSpaceRef = elemStore["".concat(name, "-").concat(layout, "-xSpace")];
39097
+ var xSpaceElem = xSpaceRef ? xSpaceRef.value : null;
38876
39098
 
38877
39099
  if (xSpaceElem) {
38878
39100
  xSpaceElem.style.width = scrollXLoad ? "".concat(tableWidth + (layout === 'header' ? scrollbarWidth : 0), "px") : '';
@@ -38903,14 +39125,16 @@ var visibleStorageKey = 'VXE_TABLE_CUSTOM_COLUMN_VISIBLE';
38903
39125
 
38904
39126
  containerList.forEach(function (name) {
38905
39127
  var layoutList = ['header', 'body', 'footer'];
38906
- var tableElem = elemStore["".concat(name, "-body-table")];
39128
+ var tableRef = elemStore["".concat(name, "-body-table")];
39129
+ var tableElem = tableRef ? tableRef.value : null;
38907
39130
 
38908
39131
  if (tableElem) {
38909
39132
  tableElem.style.marginTop = marginTop;
38910
39133
  }
38911
39134
 
38912
39135
  layoutList.forEach(function (layout) {
38913
- var ySpaceElem = elemStore["".concat(name, "-").concat(layout, "-ySpace")];
39136
+ var ySpaceRef = elemStore["".concat(name, "-").concat(layout, "-ySpace")];
39137
+ var ySpaceElem = ySpaceRef ? ySpaceRef.value : null;
38914
39138
 
38915
39139
  if (ySpaceElem) {
38916
39140
  ySpaceElem.style.height = ySpaceHeight;
@@ -38920,14 +39144,14 @@ var visibleStorageKey = 'VXE_TABLE_CUSTOM_COLUMN_VISIBLE';
38920
39144
  Object(external_commonjs_vue_commonjs2_vue_root_Vue_["nextTick"])(updateStyle);
38921
39145
  },
38922
39146
  updateScrollXData: function updateScrollXData() {
38923
- reactData.tableColumn = [];
39147
+ // reactData.tableColumn = []
38924
39148
  Object(external_commonjs_vue_commonjs2_vue_root_Vue_["nextTick"])(function () {
38925
39149
  handleTableColumn();
38926
39150
  tablePrivateMethods.updateScrollXSpace();
38927
39151
  });
38928
39152
  },
38929
39153
  updateScrollYData: function updateScrollYData() {
38930
- reactData.tableData = [];
39154
+ // reactData.tableData = []
38931
39155
  Object(external_commonjs_vue_commonjs2_vue_root_Vue_["nextTick"])(function () {
38932
39156
  tablePrivateMethods.handleTableData();
38933
39157
  tablePrivateMethods.updateScrollYSpace();