vxe-table 3.5.0-beta.3 → 3.5.1

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 (41) hide show
  1. package/lib/export/src/mixin.js +1 -1
  2. package/lib/export/src/mixin.min.js +1 -1
  3. package/lib/index.umd.js +136 -121
  4. package/lib/index.umd.min.js +1 -1
  5. package/lib/locale/lang/en-US.js +2 -1
  6. package/lib/locale/lang/en-US.min.js +1 -1
  7. package/lib/locale/lang/en-US.umd.js +2 -1
  8. package/lib/locale/lang/ja-JP.js +2 -1
  9. package/lib/locale/lang/ja-JP.min.js +1 -1
  10. package/lib/locale/lang/ja-JP.umd.js +2 -1
  11. package/lib/locale/lang/zh-CN.js +2 -1
  12. package/lib/locale/lang/zh-CN.min.js +1 -1
  13. package/lib/locale/lang/zh-CN.umd.js +2 -1
  14. package/lib/locale/lang/zh-HK.min.js +1 -1
  15. package/lib/locale/lang/zh-HK.umd.js +2 -1
  16. package/lib/locale/lang/zh-MO.min.js +1 -1
  17. package/lib/locale/lang/zh-MO.umd.js +2 -1
  18. package/lib/locale/lang/zh-TC.js +2 -1
  19. package/lib/locale/lang/zh-TC.min.js +1 -1
  20. package/lib/locale/lang/zh-TC.umd.js +2 -1
  21. package/lib/locale/lang/zh-TW.min.js +1 -1
  22. package/lib/locale/lang/zh-TW.umd.js +2 -1
  23. package/lib/table/src/methods.js +28 -12
  24. package/lib/table/src/methods.min.js +1 -1
  25. package/lib/table/src/util.js +75 -0
  26. package/lib/table/src/util.min.js +1 -1
  27. package/lib/tools/dom.js +0 -75
  28. package/lib/tools/dom.min.js +1 -1
  29. package/lib/tools/log.js +1 -1
  30. package/lib/tools/log.min.js +1 -1
  31. package/lib/v-x-e-table/index.js +1 -1
  32. package/lib/v-x-e-table/index.min.js +1 -1
  33. package/package.json +1 -1
  34. package/packages/export/src/mixin.js +1 -1
  35. package/packages/locale/lang/en-US.js +2 -1
  36. package/packages/locale/lang/ja-JP.js +2 -1
  37. package/packages/locale/lang/zh-CN.js +2 -1
  38. package/packages/locale/lang/zh-TC.js +2 -1
  39. package/packages/table/src/methods.js +21 -14
  40. package/packages/table/src/util.js +64 -0
  41. package/packages/tools/dom.js +0 -65
package/lib/index.umd.js CHANGED
@@ -8756,7 +8756,7 @@ var es_array_concat = __webpack_require__("99af");
8756
8756
 
8757
8757
 
8758
8758
  function getLog(message, params) {
8759
- return "[vxe-table v".concat("3.5.0-beta.3", "] ").concat(conf.i18n(message, params));
8759
+ return "[vxe-table v".concat("3.5.1", "] ").concat(conf.i18n(message, params));
8760
8760
  }
8761
8761
 
8762
8762
  function outLog(type) {
@@ -10025,7 +10025,7 @@ function _t(key, args) {
10025
10025
  var v = 'v3';
10026
10026
  var VXETable = {
10027
10027
  v: v,
10028
- version: "3.5.0-beta.3",
10028
+ version: "3.5.1",
10029
10029
  reg: reg,
10030
10030
  use: use,
10031
10031
  setup: setup,
@@ -10124,6 +10124,9 @@ var es_string_includes = __webpack_require__("2532");
10124
10124
  // EXTERNAL MODULE: ./node_modules/core-js/modules/es.string.fixed.js
10125
10125
  var es_string_fixed = __webpack_require__("c7cd");
10126
10126
 
10127
+ // EXTERNAL MODULE: ./node_modules/core-js/modules/es.promise.js
10128
+ var es_promise = __webpack_require__("e6cf");
10129
+
10127
10130
  // CONCATENATED MODULE: ./packages/table/src/columnInfo.js
10128
10131
 
10129
10132
 
@@ -10270,9 +10273,6 @@ var es_regexp_to_string = __webpack_require__("25f0");
10270
10273
  // EXTERNAL MODULE: ./node_modules/core-js/modules/es.string.match.js
10271
10274
  var es_string_match = __webpack_require__("466d");
10272
10275
 
10273
- // EXTERNAL MODULE: ./node_modules/core-js/modules/es.promise.js
10274
- var es_promise = __webpack_require__("e6cf");
10275
-
10276
10276
  // CONCATENATED MODULE: ./packages/tools/dom.js
10277
10277
 
10278
10278
 
@@ -10281,10 +10281,6 @@ var es_promise = __webpack_require__("e6cf");
10281
10281
 
10282
10282
 
10283
10283
 
10284
-
10285
-
10286
-
10287
- var getRowid = utils.getRowid;
10288
10284
  var browse = external_root_XEUtils_commonjs_xe_utils_commonjs2_xe_utils_amd_xe_utils_default.a.browse();
10289
10285
  var reClsMap = {};
10290
10286
 
@@ -10394,77 +10390,6 @@ var DomTools = {
10394
10390
  overflowElem.setAttribute('title', content);
10395
10391
  }
10396
10392
  },
10397
- rowToVisible: function rowToVisible($xetable, row) {
10398
- var tableBody = $xetable.$refs.tableBody;
10399
- var bodyElem = tableBody ? tableBody.$el : null;
10400
-
10401
- if (bodyElem) {
10402
- var trElem = bodyElem.querySelector("[rowid=\"".concat(getRowid($xetable, row), "\"]"));
10403
-
10404
- if (trElem) {
10405
- var bodyHeight = bodyElem.clientHeight;
10406
- var bodySrcollTop = bodyElem.scrollTop;
10407
- var trOffsetTop = trElem.offsetTop + (trElem.offsetParent ? trElem.offsetParent.offsetTop : 0);
10408
- var trHeight = trElem.clientHeight; // 检测行是否在可视区中
10409
-
10410
- if (trOffsetTop < bodySrcollTop || trOffsetTop > bodySrcollTop + bodyHeight) {
10411
- // 向上定位
10412
- return $xetable.scrollTo(null, trOffsetTop);
10413
- } else if (trOffsetTop + trHeight >= bodyHeight + bodySrcollTop) {
10414
- // 向下定位
10415
- return $xetable.scrollTo(null, bodySrcollTop + trHeight);
10416
- }
10417
- } else {
10418
- // 如果是虚拟渲染跨行滚动
10419
- if ($xetable.scrollYLoad) {
10420
- return $xetable.scrollTo(null, ($xetable.afterFullData.indexOf(row) - 1) * $xetable.scrollYStore.rowHeight);
10421
- }
10422
- }
10423
- }
10424
-
10425
- return Promise.resolve();
10426
- },
10427
- colToVisible: function colToVisible($xetable, column) {
10428
- var tableBody = $xetable.$refs.tableBody;
10429
- var bodyElem = tableBody ? tableBody.$el : null;
10430
-
10431
- if (bodyElem) {
10432
- var tdElem = bodyElem.querySelector(".".concat(column.id));
10433
-
10434
- if (tdElem) {
10435
- var bodyWidth = bodyElem.clientWidth;
10436
- var bodySrcollLeft = bodyElem.scrollLeft;
10437
- var tdOffsetLeft = tdElem.offsetLeft + (tdElem.offsetParent ? tdElem.offsetParent.offsetLeft : 0);
10438
- var tdWidth = tdElem.clientWidth; // 检测行是否在可视区中
10439
-
10440
- if (tdOffsetLeft < bodySrcollLeft || tdOffsetLeft > bodySrcollLeft + bodyWidth) {
10441
- // 向左定位
10442
- return $xetable.scrollTo(tdOffsetLeft);
10443
- } else if (tdOffsetLeft + tdWidth >= bodyWidth + bodySrcollLeft) {
10444
- // 向右定位
10445
- return $xetable.scrollTo(bodySrcollLeft + tdWidth);
10446
- }
10447
- } else {
10448
- // 如果是虚拟渲染跨行滚动
10449
- if ($xetable.scrollXLoad) {
10450
- var visibleColumn = $xetable.visibleColumn;
10451
- var scrollLeft = 0;
10452
-
10453
- for (var index = 0; index < visibleColumn.length; index++) {
10454
- if (visibleColumn[index] === column) {
10455
- break;
10456
- }
10457
-
10458
- scrollLeft += visibleColumn[index].renderWidth;
10459
- }
10460
-
10461
- return $xetable.scrollTo(scrollLeft);
10462
- }
10463
- }
10464
- }
10465
-
10466
- return Promise.resolve();
10467
- },
10468
10393
  getDomNode: getDomNode,
10469
10394
 
10470
10395
  /**
@@ -10572,6 +10497,8 @@ var DomTools = {
10572
10497
 
10573
10498
 
10574
10499
 
10500
+
10501
+
10575
10502
  var lineOffsetSizes = {
10576
10503
  mini: 3,
10577
10504
  small: 2,
@@ -10608,7 +10535,7 @@ function getRowkey($xetable) {
10608
10535
  return $xetable.rowOpts.keyField || $xetable.rowId || '_X_ROW_KEY';
10609
10536
  } // 行主键 value
10610
10537
 
10611
- function util_getRowid($xetable, row) {
10538
+ function getRowid($xetable, row) {
10612
10539
  var rowid = external_root_XEUtils_commonjs_xe_utils_commonjs2_xe_utils_amd_xe_utils_default.a.get(row, getRowkey($xetable));
10613
10540
  return external_root_XEUtils_commonjs_xe_utils_commonjs2_xe_utils_amd_xe_utils_default.a.eqNull(rowid) ? '' : encodeURIComponent(rowid);
10614
10541
  }
@@ -10833,6 +10760,77 @@ function isColumnInfo(column) {
10833
10760
  function getColumnConfig($xetable, _vm, options) {
10834
10761
  return isColumnInfo(_vm) ? _vm : new columnInfo_ColumnInfo($xetable, _vm, options);
10835
10762
  }
10763
+ function rowToVisible($xetable, row) {
10764
+ var tableBody = $xetable.$refs.tableBody;
10765
+ var bodyElem = tableBody ? tableBody.$el : null;
10766
+
10767
+ if (bodyElem) {
10768
+ var trElem = bodyElem.querySelector("[rowid=\"".concat(getRowid($xetable, row), "\"]"));
10769
+
10770
+ if (trElem) {
10771
+ var bodyHeight = bodyElem.clientHeight;
10772
+ var bodySrcollTop = bodyElem.scrollTop;
10773
+ var trOffsetTop = trElem.offsetTop + (trElem.offsetParent ? trElem.offsetParent.offsetTop : 0);
10774
+ var trHeight = trElem.clientHeight; // 检测行是否在可视区中
10775
+
10776
+ if (trOffsetTop < bodySrcollTop || trOffsetTop > bodySrcollTop + bodyHeight) {
10777
+ // 向上定位
10778
+ return $xetable.scrollTo(null, trOffsetTop);
10779
+ } else if (trOffsetTop + trHeight >= bodyHeight + bodySrcollTop) {
10780
+ // 向下定位
10781
+ return $xetable.scrollTo(null, bodySrcollTop + trHeight);
10782
+ }
10783
+ } else {
10784
+ // 如果是虚拟渲染跨行滚动
10785
+ if ($xetable.scrollYLoad) {
10786
+ return $xetable.scrollTo(null, ($xetable.afterFullData.indexOf(row) - 1) * $xetable.scrollYStore.rowHeight);
10787
+ }
10788
+ }
10789
+ }
10790
+
10791
+ return Promise.resolve();
10792
+ }
10793
+ function colToVisible($xetable, column) {
10794
+ var tableBody = $xetable.$refs.tableBody;
10795
+ var bodyElem = tableBody ? tableBody.$el : null;
10796
+
10797
+ if (bodyElem) {
10798
+ var tdElem = bodyElem.querySelector(".".concat(column.id));
10799
+
10800
+ if (tdElem) {
10801
+ var bodyWidth = bodyElem.clientWidth;
10802
+ var bodySrcollLeft = bodyElem.scrollLeft;
10803
+ var tdOffsetLeft = tdElem.offsetLeft + (tdElem.offsetParent ? tdElem.offsetParent.offsetLeft : 0);
10804
+ var tdWidth = tdElem.clientWidth; // 检测行是否在可视区中
10805
+
10806
+ if (tdOffsetLeft < bodySrcollLeft || tdOffsetLeft > bodySrcollLeft + bodyWidth) {
10807
+ // 向左定位
10808
+ return $xetable.scrollTo(tdOffsetLeft);
10809
+ } else if (tdOffsetLeft + tdWidth >= bodyWidth + bodySrcollLeft) {
10810
+ // 向右定位
10811
+ return $xetable.scrollTo(bodySrcollLeft + tdWidth);
10812
+ }
10813
+ } else {
10814
+ // 如果是虚拟渲染跨行滚动
10815
+ if ($xetable.scrollXLoad) {
10816
+ var visibleColumn = $xetable.visibleColumn;
10817
+ var scrollLeft = 0;
10818
+
10819
+ for (var index = 0; index < visibleColumn.length; index++) {
10820
+ if (visibleColumn[index] === column) {
10821
+ break;
10822
+ }
10823
+
10824
+ scrollLeft += visibleColumn[index].renderWidth;
10825
+ }
10826
+
10827
+ return $xetable.scrollTo(scrollLeft);
10828
+ }
10829
+ }
10830
+ }
10831
+
10832
+ return Promise.resolve();
10833
+ }
10836
10834
  // CONCATENATED MODULE: ./packages/table/src/body.js
10837
10835
 
10838
10836
 
@@ -10862,7 +10860,7 @@ function renderLine(h, _vm, $xetable, params) {
10862
10860
  fullAllDataRowIdData = $xetable.fullAllDataRowIdData;
10863
10861
  var slots = column.slots,
10864
10862
  treeNode = column.treeNode;
10865
- var rowid = util_getRowid($xetable, row);
10863
+ var rowid = getRowid($xetable, row);
10866
10864
  var rest = fullAllDataRowIdData[rowid];
10867
10865
  var rLevel = 0;
10868
10866
  var rIndex = 0;
@@ -11210,7 +11208,7 @@ function renderRows(h, _vm, $xetable, fixedType, tableData, tableColumn) {
11210
11208
  };
11211
11209
  }
11212
11210
 
11213
- var rowid = util_getRowid($xetable, row);
11211
+ var rowid = getRowid($xetable, row);
11214
11212
  var rest = fullAllDataRowIdData[rowid];
11215
11213
  var rowLevel = rest ? rest.level : 0;
11216
11214
  var seq = rest ? rest.seq : -1;
@@ -12962,8 +12960,7 @@ function eqCellValue(row1, row2, field) {
12962
12960
  }
12963
12961
 
12964
12962
  if (external_root_XEUtils_commonjs_xe_utils_commonjs2_xe_utils_amd_xe_utils_default.a.isString(val1) || external_root_XEUtils_commonjs_xe_utils_commonjs2_xe_utils_amd_xe_utils_default.a.isNumber(val1)) {
12965
- /* eslint-disable eqeqeq */
12966
- return val1 == val2;
12963
+ return '' + val1 === '' + val2;
12967
12964
  }
12968
12965
 
12969
12966
  return external_root_XEUtils_commonjs_xe_utils_commonjs2_xe_utils_amd_xe_utils_default.a.isEqual(val1, val2);
@@ -13367,7 +13364,7 @@ var Methods = {
13367
13364
 
13368
13365
  var tableData = scrollYLoad ? fullList.slice(scrollYStore.startIndex, scrollYStore.endIndex) : fullList.slice(0);
13369
13366
  tableData.forEach(function (row, $index) {
13370
- var rowid = util_getRowid(_this3, row);
13367
+ var rowid = getRowid(_this3, row);
13371
13368
  var rest = fullDataRowIdData[rowid];
13372
13369
 
13373
13370
  if (rest) {
@@ -13648,7 +13645,7 @@ var Methods = {
13648
13645
  var isLazy = treeConfig && treeOpts.lazy;
13649
13646
 
13650
13647
  var handleCache = function handleCache(row, index, items, path, parent, nodes) {
13651
- var rowid = util_getRowid(_this10, row);
13648
+ var rowid = getRowid(_this10, row);
13652
13649
  var seq = treeConfig && path ? toTreePathSeq(path) : index + 1;
13653
13650
  var level = nodes ? nodes.length - 1 : 0;
13654
13651
 
@@ -13709,13 +13706,13 @@ var Methods = {
13709
13706
  var transform = treeOpts.transform,
13710
13707
  children = treeOpts.children,
13711
13708
  mapChildren = treeOpts.mapChildren;
13712
- var rest = fullAllDataRowIdData[util_getRowid(this, row)];
13709
+ var rest = fullAllDataRowIdData[getRowid(this, row)];
13713
13710
  var parentLevel = rest ? rest.level : 0;
13714
13711
  return this.createData(childRecords).then(function (rows) {
13715
13712
  if (keepSource) {
13716
- var rowid = util_getRowid(_this11, row);
13713
+ var rowid = getRowid(_this11, row);
13717
13714
  var matchObj = external_root_XEUtils_commonjs_xe_utils_commonjs2_xe_utils_amd_xe_utils_default.a.findTree(tableSourceData, function (item) {
13718
- return rowid === util_getRowid(_this11, item);
13715
+ return rowid === getRowid(_this11, item);
13719
13716
  }, treeOpts);
13720
13717
 
13721
13718
  if (matchObj) {
@@ -13724,7 +13721,7 @@ var Methods = {
13724
13721
  }
13725
13722
 
13726
13723
  external_root_XEUtils_commonjs_xe_utils_commonjs2_xe_utils_amd_xe_utils_default.a.eachTree(rows, function (childRow, index, items, path, parent, nodes) {
13727
- var rowid = util_getRowid(_this11, childRow);
13724
+ var rowid = getRowid(_this11, childRow);
13728
13725
  var rest = {
13729
13726
  row: childRow,
13730
13727
  rowid: rowid,
@@ -13903,7 +13900,7 @@ var Methods = {
13903
13900
  var fullDataRowIdData = this.fullDataRowIdData;
13904
13901
 
13905
13902
  if (row) {
13906
- var rowid = util_getRowid(this, row);
13903
+ var rowid = getRowid(this, row);
13907
13904
  var rest = fullDataRowIdData[rowid];
13908
13905
 
13909
13906
  if (rest) {
@@ -14216,7 +14213,7 @@ var Methods = {
14216
14213
 
14217
14214
  if (keepSource) {
14218
14215
  var oRow, property;
14219
- var rowid = util_getRowid(this, row); // 新增的数据不需要检测
14216
+ var rowid = getRowid(this, row); // 新增的数据不需要检测
14220
14217
 
14221
14218
  if (!fullDataRowIdData[rowid]) {
14222
14219
  return false;
@@ -14225,7 +14222,7 @@ var Methods = {
14225
14222
  if (treeConfig) {
14226
14223
  var children = treeOpts.children;
14227
14224
  var matchObj = external_root_XEUtils_commonjs_xe_utils_commonjs2_xe_utils_amd_xe_utils_default.a.findTree(tableSourceData, function (item) {
14228
- return rowid === util_getRowid(_this16, item);
14225
+ return rowid === getRowid(_this16, item);
14229
14226
  }, treeOpts);
14230
14227
  row = Object.assign({}, row, _defineProperty({}, children, null));
14231
14228
 
@@ -14400,7 +14397,8 @@ var Methods = {
14400
14397
  allFilterMethod = filterOpts.filterMethod;
14401
14398
  var allRemoteSort = sortOpts.remote,
14402
14399
  allSortMethod = sortOpts.sortMethod,
14403
- sortMultiple = sortOpts.multiple;
14400
+ sortMultiple = sortOpts.multiple,
14401
+ chronological = sortOpts.chronological;
14404
14402
  var transform = treeOpts.transform;
14405
14403
  var tableData = [];
14406
14404
  var tableTree = [];
@@ -14436,11 +14434,16 @@ var Methods = {
14436
14434
  column: column,
14437
14435
  field: column.property,
14438
14436
  property: property,
14439
- order: order
14437
+ order: order,
14438
+ sortTime: column.sortTime
14440
14439
  });
14441
14440
  }
14442
14441
  });
14443
14442
 
14443
+ if (sortMultiple && chronological && orderColumns.length > 1) {
14444
+ orderColumns = external_root_XEUtils_commonjs_xe_utils_commonjs2_xe_utils_amd_xe_utils_default.a.orderBy(orderColumns, 'sortTime');
14445
+ }
14446
+
14444
14447
  if (filterColumns.length) {
14445
14448
  var handleFilter = function handleFilter(row) {
14446
14449
  return filterColumns.every(function (_ref) {
@@ -14615,7 +14618,7 @@ var Methods = {
14615
14618
 
14616
14619
  if (treeConfig) {
14617
14620
  external_root_XEUtils_commonjs_xe_utils_commonjs2_xe_utils_amd_xe_utils_default.a.eachTree(afterTreeFullData, function (row, index, items, path) {
14618
- var rowid = util_getRowid(_this18, row);
14621
+ var rowid = getRowid(_this18, row);
14619
14622
  var allrest = fullAllDataRowIdData[rowid];
14620
14623
  var seq = path.map(function (num, i) {
14621
14624
  return i % 2 === 0 ? Number(num) + 1 : '.';
@@ -14644,7 +14647,7 @@ var Methods = {
14644
14647
  });
14645
14648
  } else {
14646
14649
  afterFullData.forEach(function (row, index) {
14647
- var rowid = util_getRowid(_this18, row);
14650
+ var rowid = getRowid(_this18, row);
14648
14651
  var allrest = fullAllDataRowIdData[rowid];
14649
14652
  var seq = index + 1;
14650
14653
 
@@ -14683,7 +14686,7 @@ var Methods = {
14683
14686
  if (external_root_XEUtils_commonjs_xe_utils_commonjs2_xe_utils_amd_xe_utils_default.a.isString(rowOrRowid)) {
14684
14687
  rowid = rowOrRowid;
14685
14688
  } else {
14686
- rowid = util_getRowid(this, rowOrRowid);
14689
+ rowid = getRowid(this, rowOrRowid);
14687
14690
  }
14688
14691
 
14689
14692
  if (rowid) {
@@ -16857,7 +16860,7 @@ var Methods = {
16857
16860
  if (reserve) {
16858
16861
  if (value) {
16859
16862
  selectRows.forEach(function (row) {
16860
- checkboxReserveRowMap[util_getRowid(_this32, row)] = row;
16863
+ checkboxReserveRowMap[getRowid(_this32, row)] = row;
16861
16864
  });
16862
16865
  } else {
16863
16866
  afterFullData.forEach(function (row) {
@@ -16989,7 +16992,7 @@ var Methods = {
16989
16992
 
16990
16993
 
16991
16994
  if (radioOpts.reserve && radioReserveRow) {
16992
- var rowid = util_getRowid(this, radioReserveRow);
16995
+ var rowid = getRowid(this, radioReserveRow);
16993
16996
 
16994
16997
  if (fullDataRowIdData[rowid]) {
16995
16998
  this.setRadioRow(fullDataRowIdData[rowid].row);
@@ -17036,7 +17039,7 @@ var Methods = {
17036
17039
  treeOpts = this.treeOpts;
17037
17040
 
17038
17041
  if (radioOpts.reserve && radioReserveRow) {
17039
- var rowid = util_getRowid(this, radioReserveRow);
17042
+ var rowid = getRowid(this, radioReserveRow);
17040
17043
 
17041
17044
  if (isFull) {
17042
17045
  if (!fullDataRowIdData[rowid]) {
@@ -17096,11 +17099,11 @@ var Methods = {
17096
17099
 
17097
17100
  if (treeConfig) {
17098
17101
  external_root_XEUtils_commonjs_xe_utils_commonjs2_xe_utils_amd_xe_utils_default.a.eachTree(afterFullData, function (row) {
17099
- afterFullIdMaps[util_getRowid(_this33, row)] = 1;
17102
+ afterFullIdMaps[getRowid(_this33, row)] = 1;
17100
17103
  }, treeOpts);
17101
17104
  } else {
17102
17105
  afterFullData.forEach(function (row) {
17103
- afterFullIdMaps[util_getRowid(_this33, row)] = 1;
17106
+ afterFullIdMaps[getRowid(_this33, row)] = 1;
17104
17107
  });
17105
17108
  }
17106
17109
 
@@ -17130,7 +17133,7 @@ var Methods = {
17130
17133
  checkboxOpts = this.checkboxOpts;
17131
17134
 
17132
17135
  if (checkboxOpts.reserve) {
17133
- var rowid = util_getRowid(this, row);
17136
+ var rowid = getRowid(this, row);
17134
17137
 
17135
17138
  if (checked) {
17136
17139
  checkboxReserveRowMap[rowid] = row;
@@ -17276,7 +17279,7 @@ var Methods = {
17276
17279
 
17277
17280
  if (rowOpts.isCurrent || this.highlightCurrentRow) {
17278
17281
  if ($el) {
17279
- external_root_XEUtils_commonjs_xe_utils_commonjs2_xe_utils_amd_xe_utils_default.a.arrayEach($el.querySelectorAll("[rowid=\"".concat(util_getRowid(this, row), "\"]")), function (elem) {
17282
+ external_root_XEUtils_commonjs_xe_utils_commonjs2_xe_utils_amd_xe_utils_default.a.arrayEach($el.querySelectorAll("[rowid=\"".concat(getRowid(this, row), "\"]")), function (elem) {
17280
17283
  return addClass(elem, 'row--current');
17281
17284
  });
17282
17285
  }
@@ -17349,7 +17352,7 @@ var Methods = {
17349
17352
  afterFullData = this.afterFullData;
17350
17353
 
17351
17354
  if (selectRow) {
17352
- var rowid = util_getRowid(this, selectRow);
17355
+ var rowid = getRowid(this, selectRow);
17353
17356
 
17354
17357
  if (isFull) {
17355
17358
  if (!fullDataRowIdData[rowid]) {
@@ -17385,7 +17388,7 @@ var Methods = {
17385
17388
  },
17386
17389
  setHoverRow: function setHoverRow(row) {
17387
17390
  var $el = this.$el;
17388
- var rowid = util_getRowid(this, row);
17391
+ var rowid = getRowid(this, row);
17389
17392
  this.clearHoverRow();
17390
17393
 
17391
17394
  if ($el) {
@@ -17635,7 +17638,7 @@ var Methods = {
17635
17638
  }
17636
17639
 
17637
17640
  if (defaultSort.length) {
17638
- (sortConfig.multiple ? defaultSort : defaultSort.slice(0, 1)).forEach(function (item) {
17641
+ (sortConfig.multiple ? defaultSort : defaultSort.slice(0, 1)).forEach(function (item, index) {
17639
17642
  var field = item.field,
17640
17643
  order = item.order;
17641
17644
 
@@ -17644,7 +17647,7 @@ var Methods = {
17644
17647
 
17645
17648
  if (column && column.sortable) {
17646
17649
  column.order = order;
17647
- column.sortTime = Date.now();
17650
+ column.sortTime = Date.now() + index;
17648
17651
  }
17649
17652
  }
17650
17653
  });
@@ -17710,7 +17713,7 @@ var Methods = {
17710
17713
  clearAllSort(this);
17711
17714
  }
17712
17715
 
17713
- (multiple ? sortConfs : [sortConfs[0]]).forEach(function (confs) {
17716
+ (multiple ? sortConfs : [sortConfs[0]]).forEach(function (confs, index) {
17714
17717
  var field = confs.field,
17715
17718
  order = confs.order;
17716
17719
  var column = field;
@@ -17731,6 +17734,8 @@ var Methods = {
17731
17734
  if (column.order !== order) {
17732
17735
  column.order = order;
17733
17736
  }
17737
+
17738
+ column.sortTime = Date.now() + index;
17734
17739
  }
17735
17740
  }); // 如果是服务端排序,则跳过本地排序处理
17736
17741
 
@@ -17785,6 +17790,9 @@ var Methods = {
17785
17790
  return this.getSortColumns().length > 0;
17786
17791
  },
17787
17792
  getSortColumns: function getSortColumns() {
17793
+ var _this$sortOpts = this.sortOpts,
17794
+ multiple = _this$sortOpts.multiple,
17795
+ chronological = _this$sortOpts.chronological;
17788
17796
  var sortList = [];
17789
17797
  this.tableFullColumn.forEach(function (column) {
17790
17798
  var property = column.property,
@@ -17795,10 +17803,16 @@ var Methods = {
17795
17803
  column: column,
17796
17804
  field: column.property,
17797
17805
  property: property,
17798
- order: order
17806
+ order: order,
17807
+ sortTime: column.sortTime
17799
17808
  });
17800
17809
  }
17801
17810
  });
17811
+
17812
+ if (multiple && chronological && sortList.length > 1) {
17813
+ return external_root_XEUtils_commonjs_xe_utils_commonjs2_xe_utils_amd_xe_utils_default.a.orderBy(sortList, 'sortTime');
17814
+ }
17815
+
17802
17816
  return sortList;
17803
17817
  },
17804
17818
 
@@ -18104,7 +18118,7 @@ var Methods = {
18104
18118
  expandOpts = this.expandOpts;
18105
18119
 
18106
18120
  if (expandOpts.reserve) {
18107
- var rowid = util_getRowid(this, row);
18121
+ var rowid = getRowid(this, row);
18108
18122
 
18109
18123
  if (expanded) {
18110
18124
  rowExpandedReserveRowMap[rowid] = row;
@@ -18518,7 +18532,7 @@ var Methods = {
18518
18532
  treeOpts = this.treeOpts;
18519
18533
 
18520
18534
  if (treeOpts.reserve) {
18521
- var rowid = util_getRowid(this, row);
18535
+ var rowid = getRowid(this, row);
18522
18536
 
18523
18537
  if (expanded) {
18524
18538
  treeExpandedReserveRowMap[rowid] = row;
@@ -18846,7 +18860,7 @@ var Methods = {
18846
18860
  if (this.treeConfig) {
18847
18861
  rest.push(this.scrollToTreeRow(row));
18848
18862
  } else {
18849
- rest.push(dom.rowToVisible(this, row));
18863
+ rest.push(rowToVisible(this, row));
18850
18864
  }
18851
18865
  }
18852
18866
 
@@ -18865,7 +18879,7 @@ var Methods = {
18865
18879
  var column = handleFieldOrColumn(this, fieldOrColumn);
18866
18880
 
18867
18881
  if (column && this.fullColumnMap.has(column)) {
18868
- return dom.colToVisible(this, column);
18882
+ return colToVisible(this, column);
18869
18883
  }
18870
18884
 
18871
18885
  return this.$nextTick();
@@ -18900,7 +18914,7 @@ var Methods = {
18900
18914
  }
18901
18915
 
18902
18916
  return Promise.all(rests).then(function () {
18903
- return dom.rowToVisible(_this52, row);
18917
+ return rowToVisible(_this52, row);
18904
18918
  });
18905
18919
  },
18906
18920
 
@@ -19151,7 +19165,7 @@ var Methods = {
19151
19165
  *************************/
19152
19166
  getCell: function getCell(row, column) {
19153
19167
  var $refs = this.$refs;
19154
- var rowid = util_getRowid(this, row);
19168
+ var rowid = getRowid(this, row);
19155
19169
  var bodyElem = $refs["".concat(column.fixed || 'table', "Body")] || $refs.tableBody;
19156
19170
 
19157
19171
  if (bodyElem && bodyElem.$el) {
@@ -19224,7 +19238,7 @@ var Methods = {
19224
19238
  }
19225
19239
  }; // Module methods
19226
19240
 
19227
- var funcs = 'setFilter,openFilter,clearFilter,getCheckedFilters,closeMenu,setActiveCellArea,getActiveCellArea,getCellAreas,clearCellAreas,copyCellArea,cutCellArea,pasteCellArea,getCopyCellArea,clearCopyCellArea,setCellAreas,openFind,openReplace,closeFNR,getSelectedCell,clearSelected,insert,insertAt,remove,removeCheckboxRow,removeRadioRow,removeCurrentRow,getRecordset,getInsertRecords,getRemoveRecords,getUpdateRecords,clearActived,getActiveRecord,isActiveByRow,setActiveRow,setActiveCell,setSelectCell,clearValidate,fullValidate,validate,openExport,openPrint,exportData,openImport,importData,saveFile,readFile,importByFile,print'.split(',');
19241
+ var funcs = 'setFilter,openFilter,clearFilter,getCheckedFilters,closeMenu,setActiveCellArea,getActiveCellArea,getCellAreas,clearCellAreas,copyCellArea,cutCellArea,pasteCellArea,getCopyCellArea,getCopyCellAreas,clearCopyCellArea,setCellAreas,openFind,openReplace,closeFNR,getSelectedCell,clearSelected,insert,insertAt,remove,removeCheckboxRow,removeRadioRow,removeCurrentRow,getRecordset,getInsertRecords,getRemoveRecords,getUpdateRecords,clearActived,getActiveRecord,isActiveByRow,setActiveRow,setActiveCell,setSelectCell,clearValidate,fullValidate,validate,openExport,openPrint,exportData,openImport,importData,saveFile,readFile,importByFile,print'.split(',');
19228
19242
  funcs.forEach(function (name) {
19229
19243
  Methods[name] = function () {
19230
19244
  if (false) {}
@@ -29344,7 +29358,7 @@ function handleFileImport($xetable, file, opts) {
29344
29358
  handleImport($xetable, e.target.result, options);
29345
29359
  };
29346
29360
 
29347
- reader.readAsText(file, 'UTF-8');
29361
+ reader.readAsText(file, options.encoding || 'UTF-8');
29348
29362
  });
29349
29363
  }
29350
29364
  } else {
@@ -38401,7 +38415,8 @@ var Pulldown = Object.assign(pulldown, {
38401
38415
  area: {
38402
38416
  mergeErr: '无法对合并单元格进行该操作',
38403
38417
  multiErr: '无法对多重选择区域进行该操作',
38404
- extendErr: '如果延伸的区域包含被合并的单元格,所有合并的单元格需大小相同'
38418
+ extendErr: '如果延伸的区域包含被合并的单元格,所有合并的单元格需大小相同',
38419
+ pasteMultiErr: '无法粘贴,需要相同大小的复制的区域和粘贴的区域才能执行此操作'
38405
38420
  },
38406
38421
  fnr: {
38407
38422
  title: '查找和替换',