vxe-table 3.5.9-beta.5 → 3.5.9-beta.8

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/README.md +1 -1
  2. package/lib/edit/src/mixin.js +3 -3
  3. package/lib/edit/src/mixin.min.js +1 -1
  4. package/lib/export/src/mixin.js +1 -1
  5. package/lib/export/src/mixin.min.js +1 -1
  6. package/lib/filter/src/mixin.js +8 -5
  7. package/lib/filter/src/mixin.min.js +1 -1
  8. package/lib/filter/src/panel.js +6 -2
  9. package/lib/filter/src/panel.min.js +1 -1
  10. package/lib/form/src/form-config-item.js +2 -1
  11. package/lib/form/src/form-config-item.min.js +1 -1
  12. package/lib/form/src/form-item.js +3 -1
  13. package/lib/form/src/form-item.min.js +1 -1
  14. package/lib/form/src/render.js +1 -0
  15. package/lib/form/src/render.min.js +1 -1
  16. package/lib/grid/src/grid.js +2 -1
  17. package/lib/grid/src/grid.min.js +1 -1
  18. package/lib/index.css +1 -1
  19. package/lib/index.umd.js +356 -133
  20. package/lib/index.umd.min.js +1 -1
  21. package/lib/input/src/input.js +20 -15
  22. package/lib/input/src/input.min.js +1 -1
  23. package/lib/locale/lang/en-US.js +2 -0
  24. package/lib/locale/lang/en-US.min.js +1 -1
  25. package/lib/locale/lang/en-US.umd.js +2 -0
  26. package/lib/locale/lang/ja-JP.js +2 -0
  27. package/lib/locale/lang/ja-JP.min.js +1 -1
  28. package/lib/locale/lang/ja-JP.umd.js +2 -0
  29. package/lib/locale/lang/zh-CN.js +2 -0
  30. package/lib/locale/lang/zh-CN.min.js +1 -1
  31. package/lib/locale/lang/zh-CN.umd.js +2 -0
  32. package/lib/locale/lang/zh-HK.min.js +1 -1
  33. package/lib/locale/lang/zh-HK.umd.js +2 -0
  34. package/lib/locale/lang/zh-MO.min.js +1 -1
  35. package/lib/locale/lang/zh-MO.umd.js +2 -0
  36. package/lib/locale/lang/zh-TC.js +2 -0
  37. package/lib/locale/lang/zh-TC.min.js +1 -1
  38. package/lib/locale/lang/zh-TC.umd.js +2 -0
  39. package/lib/locale/lang/zh-TW.min.js +1 -1
  40. package/lib/locale/lang/zh-TW.umd.js +2 -0
  41. package/lib/select/src/select.js +213 -33
  42. package/lib/select/src/select.min.js +1 -1
  43. package/lib/select/style/style.css +17 -3
  44. package/lib/select/style/style.min.css +1 -1
  45. package/lib/style.css +1 -1
  46. package/lib/style.min.css +1 -1
  47. package/lib/table/src/body.js +6 -3
  48. package/lib/table/src/body.min.js +1 -1
  49. package/lib/table/src/cell.js +3 -3
  50. package/lib/table/src/cell.min.js +1 -1
  51. package/lib/table/src/columnInfo.js +1 -1
  52. package/lib/table/src/columnInfo.min.js +1 -1
  53. package/lib/table/src/methods.js +79 -60
  54. package/lib/table/src/methods.min.js +1 -1
  55. package/lib/toolbar/style/style.css +1 -1
  56. package/lib/toolbar/style/style.min.css +1 -1
  57. package/lib/tools/log.js +1 -1
  58. package/lib/tools/log.min.js +1 -1
  59. package/lib/tools/utils.js +2 -2
  60. package/lib/tools/utils.min.js +1 -1
  61. package/lib/v-x-e-table/index.js +1 -1
  62. package/lib/v-x-e-table/index.min.js +1 -1
  63. package/lib/v-x-e-table/src/conf.js +2 -2
  64. package/lib/v-x-e-table/src/conf.min.js +1 -1
  65. package/package.json +1 -1
  66. package/packages/edit/src/mixin.js +4 -4
  67. package/packages/export/src/mixin.js +2 -2
  68. package/packages/filter/src/mixin.js +5 -5
  69. package/packages/filter/src/panel.js +13 -6
  70. package/packages/form/src/form-config-item.js +17 -9
  71. package/packages/form/src/form-item.js +16 -8
  72. package/packages/form/src/render.js +1 -1
  73. package/packages/grid/src/grid.js +1 -2
  74. package/packages/input/src/input.js +17 -13
  75. package/packages/locale/lang/en-US.js +2 -0
  76. package/packages/locale/lang/ja-JP.js +2 -0
  77. package/packages/locale/lang/zh-CN.js +2 -0
  78. package/packages/locale/lang/zh-TC.js +2 -0
  79. package/packages/select/src/select.js +139 -16
  80. package/packages/table/src/body.js +39 -24
  81. package/packages/table/src/cell.js +3 -3
  82. package/packages/table/src/columnInfo.js +1 -1
  83. package/packages/table/src/methods.js +64 -55
  84. package/packages/tools/utils.js +2 -2
  85. package/packages/v-x-e-table/src/conf.js +2 -2
  86. package/styles/select.scss +24 -5
  87. package/styles/toolbar.scss +1 -1
  88. package/types/form-item.d.ts +11 -8
  89. package/types/form.d.ts +5 -2
  90. package/types/v-x-e-table/renderer.d.ts +13 -1
package/lib/index.umd.js CHANGED
@@ -8707,8 +8707,8 @@ var iconPrefix = 'vxe-icon--';
8707
8707
  // parseFormat: 'yyyy-MM-dd HH:mm:ss.SSS',
8708
8708
  // labelFormat: '',
8709
8709
  // valueFormat: '',
8710
- minDate: new Date(1900, 0, 1),
8711
- maxDate: new Date(2100, 0, 1),
8710
+ startDate: new Date(1900, 0, 1),
8711
+ endDate: new Date(2100, 0, 1),
8712
8712
  startDay: 1,
8713
8713
  selectDay: 1,
8714
8714
  digits: 2,
@@ -8808,7 +8808,7 @@ var es_array_concat = __webpack_require__("99af");
8808
8808
 
8809
8809
 
8810
8810
  function getLog(message, params) {
8811
- return "[vxe-table v".concat("3.5.9-beta.4", "] ").concat(conf.i18n(message, params));
8811
+ return "[vxe-table v".concat("3.5.9-beta.7", "] ").concat(conf.i18n(message, params));
8812
8812
  }
8813
8813
 
8814
8814
  function outLog(type) {
@@ -9039,10 +9039,10 @@ var UtilTools = {
9039
9039
  return '' + (value === '' || value === null || value === undefined ? placeholder ? conf.emptyCell : '' : value);
9040
9040
  },
9041
9041
  getCellValue: function getCellValue(row, column) {
9042
- return external_root_XEUtils_commonjs_xe_utils_commonjs2_xe_utils_amd_xe_utils_default.a.get(row, column.property);
9042
+ return external_root_XEUtils_commonjs_xe_utils_commonjs2_xe_utils_amd_xe_utils_default.a.get(row, column.field);
9043
9043
  },
9044
9044
  setCellValue: function setCellValue(row, column, value) {
9045
- return external_root_XEUtils_commonjs_xe_utils_commonjs2_xe_utils_amd_xe_utils_default.a.set(row, column.property, value);
9045
+ return external_root_XEUtils_commonjs_xe_utils_commonjs2_xe_utils_amd_xe_utils_default.a.set(row, column.field, value);
9046
9046
  },
9047
9047
  // 组装列配置
9048
9048
  assemColumn: function assemColumn(_vm) {
@@ -10077,7 +10077,7 @@ function _t(key, args) {
10077
10077
  var v = 'v3';
10078
10078
  var VXETable = {
10079
10079
  v: v,
10080
- version: "3.5.9-beta.4",
10080
+ version: "3.5.9-beta.7",
10081
10081
  reg: reg,
10082
10082
  use: use,
10083
10083
  setup: setup,
@@ -10297,7 +10297,7 @@ var columnInfo_ColumnInfo = /*#__PURE__*/function () {
10297
10297
  }, {
10298
10298
  key: "getKey",
10299
10299
  value: function getKey() {
10300
- return this.property || (this.type ? "type=".concat(this.type) : null);
10300
+ return this.field || (this.type ? "type=".concat(this.type) : null);
10301
10301
  }
10302
10302
  }, {
10303
10303
  key: "update",
@@ -10964,7 +10964,7 @@ function renderColumn(h, _vm, $xetable, seq, rowid, fixedType, rowLevel, row, ro
10964
10964
  isAllOverflow = $xetable.isAllOverflow,
10965
10965
  allAlign = $xetable.align,
10966
10966
  currentColumn = $xetable.currentColumn,
10967
- cellClassName = $xetable.cellClassName,
10967
+ allCellClassName = $xetable.cellClassName,
10968
10968
  cellStyle = $xetable.cellStyle,
10969
10969
  mergeList = $xetable.mergeList,
10970
10970
  spanMethod = $xetable.spanMethod,
@@ -10993,6 +10993,9 @@ function renderColumn(h, _vm, $xetable, seq, rowid, fixedType, rowLevel, row, ro
10993
10993
  var actived = editStore.actived;
10994
10994
  var scrollYRHeight = sYOpts.rHeight;
10995
10995
  var rowHeight = rowOpts.height;
10996
+ var renderOpts = editRender || cellRender;
10997
+ var compConf = renderOpts ? v_x_e_table.renderer.get(renderOpts.name) : null;
10998
+ var cellClassName = compConf ? compConf.cellClassName : '';
10996
10999
  var showAllTip = tooltipOpts.showAll || tooltipOpts.enabled;
10997
11000
  var columnIndex = $xetable.getColumnIndex(column);
10998
11001
 
@@ -11153,7 +11156,7 @@ function renderColumn(h, _vm, $xetable, seq, rowid, fixedType, rowLevel, row, ro
11153
11156
 
11154
11157
 
11155
11158
  if (!fixedHiddenColumn && editConfig && (editRender || cellRender) && (editOpts.showStatus || editOpts.showUpdateStatus)) {
11156
- isDirty = $xetable.isUpdateByRow(row, column.property);
11159
+ isDirty = $xetable.isUpdateByRow(row, column.field);
11157
11160
  }
11158
11161
 
11159
11162
  var tdVNs = [];
@@ -11198,7 +11201,7 @@ function renderColumn(h, _vm, $xetable, seq, rowid, fixedType, rowLevel, row, ro
11198
11201
  }
11199
11202
 
11200
11203
  return h('td', {
11201
- class: ['vxe-body--column', column.id, (_ref2 = {}, _defineProperty(_ref2, "col--".concat(cellAlign), cellAlign), _defineProperty(_ref2, "col--".concat(type), type), _defineProperty(_ref2, 'col--last', $columnIndex === columns.length - 1), _defineProperty(_ref2, 'col--tree-node', treeNode), _defineProperty(_ref2, 'col--edit', isEdit), _defineProperty(_ref2, 'col--ellipsis', hasEllipsis), _defineProperty(_ref2, 'fixed--hidden', fixedHiddenColumn), _defineProperty(_ref2, 'col--dirty', isDirty), _defineProperty(_ref2, 'col--actived', editConfig && isEdit && actived.row === row && (actived.column === column || editOpts.mode === 'row')), _defineProperty(_ref2, 'col--valid-error', hasValidError), _defineProperty(_ref2, 'col--current', currentColumn === column), _ref2), utils.getClass(className, params), utils.getClass(cellClassName, params)],
11204
+ class: ['vxe-body--column', column.id, (_ref2 = {}, _defineProperty(_ref2, "col--".concat(cellAlign), cellAlign), _defineProperty(_ref2, "col--".concat(type), type), _defineProperty(_ref2, 'col--last', $columnIndex === columns.length - 1), _defineProperty(_ref2, 'col--tree-node', treeNode), _defineProperty(_ref2, 'col--edit', isEdit), _defineProperty(_ref2, 'col--ellipsis', hasEllipsis), _defineProperty(_ref2, 'fixed--hidden', fixedHiddenColumn), _defineProperty(_ref2, 'col--dirty', isDirty), _defineProperty(_ref2, 'col--actived', editConfig && isEdit && actived.row === row && (actived.column === column || editOpts.mode === 'row')), _defineProperty(_ref2, 'col--valid-error', hasValidError), _defineProperty(_ref2, 'col--current', currentColumn === column), _ref2), utils.getClass(cellClassName, params), utils.getClass(className, params), utils.getClass(allCellClassName, params)],
11202
11205
  key: columnKey || columnOpts.useKey ? column.id : $columnIndex,
11203
11206
  attrs: attrs,
11204
11207
  style: Object.assign({
@@ -13066,7 +13069,7 @@ var Cell = {
13066
13069
  treeIndeterminates = $table.treeIndeterminates;
13067
13070
  var _$table$checkboxOpts2 = $table.checkboxOpts,
13068
13071
  labelField = _$table$checkboxOpts2.labelField,
13069
- property = _$table$checkboxOpts2.checkField,
13072
+ checkField = _$table$checkboxOpts2.checkField,
13070
13073
  halfField = _$table$checkboxOpts2.halfField,
13071
13074
  checkMethod = _$table$checkboxOpts2.checkMethod,
13072
13075
  visibleMethod = _$table$checkboxOpts2.visibleMethod;
@@ -13082,7 +13085,7 @@ var Cell = {
13082
13085
  var on;
13083
13086
 
13084
13087
  if (!isHidden) {
13085
- isChecked = external_root_XEUtils_commonjs_xe_utils_commonjs2_xe_utils_amd_xe_utils_default.a.get(row, property);
13088
+ isChecked = external_root_XEUtils_commonjs_xe_utils_commonjs2_xe_utils_amd_xe_utils_default.a.get(row, checkField);
13086
13089
  on = {
13087
13090
  click: function click(evnt) {
13088
13091
  if (!isDisabled && isVisible) {
@@ -13335,7 +13338,7 @@ var Cell = {
13335
13338
  var isRequired = false;
13336
13339
 
13337
13340
  if (editRules) {
13338
- var columnRules = external_root_XEUtils_commonjs_xe_utils_commonjs2_xe_utils_amd_xe_utils_default.a.get(editRules, params.column.property);
13341
+ var columnRules = external_root_XEUtils_commonjs_xe_utils_commonjs2_xe_utils_amd_xe_utils_default.a.get(editRules, column.field);
13339
13342
 
13340
13343
  if (columnRules) {
13341
13344
  isRequired = columnRules.some(function (rule) {
@@ -13619,14 +13622,14 @@ function setMerges(_vm, merges, mList, rowList) {
13619
13622
  var treeConfig = _vm.treeConfig,
13620
13623
  visibleColumn = _vm.visibleColumn;
13621
13624
 
13622
- if (treeConfig) {
13623
- throw new Error(utils.getLog('vxe.error.noTree', ['merge-footer-items']));
13624
- }
13625
-
13626
13625
  if (!external_root_XEUtils_commonjs_xe_utils_commonjs2_xe_utils_amd_xe_utils_default.a.isArray(merges)) {
13627
13626
  merges = [merges];
13628
13627
  }
13629
13628
 
13629
+ if (treeConfig && merges.length) {
13630
+ errLog('vxe.error.noTree', ['merge-cells | merge-footer-items']);
13631
+ }
13632
+
13630
13633
  merges.forEach(function (item) {
13631
13634
  var row = item.row,
13632
13635
  col = item.col,
@@ -13683,14 +13686,14 @@ function removeMerges(_vm, merges, mList, rowList) {
13683
13686
  var treeConfig = _vm.treeConfig,
13684
13687
  visibleColumn = _vm.visibleColumn;
13685
13688
 
13686
- if (treeConfig) {
13687
- throw new Error(utils.getLog('vxe.error.noTree', ['merge-cells']));
13688
- }
13689
-
13690
13689
  if (!external_root_XEUtils_commonjs_xe_utils_commonjs2_xe_utils_amd_xe_utils_default.a.isArray(merges)) {
13691
13690
  merges = [merges];
13692
13691
  }
13693
13692
 
13693
+ if (treeConfig && merges.length) {
13694
+ errLog('vxe.error.noTree', ['merge-cells | merge-footer-items']);
13695
+ }
13696
+
13694
13697
  merges.forEach(function (item) {
13695
13698
  var row = item.row,
13696
13699
  col = item.col;
@@ -13910,7 +13913,9 @@ var Methods = {
13910
13913
  scrollXStore = this.scrollXStore,
13911
13914
  lastScrollLeft = this.lastScrollLeft,
13912
13915
  lastScrollTop = this.lastScrollTop,
13913
- oldScrollYLoad = this.scrollYLoad;
13916
+ oldScrollYLoad = this.scrollYLoad,
13917
+ sXOpts = this.sXOpts,
13918
+ sYOpts = this.sYOpts;
13914
13919
  var treeData = [];
13915
13920
  var fullData = datas ? datas.slice(0) : [];
13916
13921
 
@@ -13982,12 +13987,23 @@ var Methods = {
13982
13987
  _this4.$nextTick().then(function () {
13983
13988
  return _this4.recalculate();
13984
13989
  }).then(function () {
13985
- // 是否变更虚拟滚动
13990
+ var targetScrollLeft = lastScrollLeft;
13991
+ var targetScrollTop = lastScrollTop; // 是否在更新数据之后自动滚动重置滚动条
13992
+
13993
+ if (sXOpts.scrollToLeftOnChange) {
13994
+ targetScrollLeft = 0;
13995
+ }
13996
+
13997
+ if (sYOpts.scrollToTopOnChange) {
13998
+ targetScrollTop = 0;
13999
+ } // 是否变更虚拟滚动
14000
+
14001
+
13986
14002
  if (oldScrollYLoad === sYLoad) {
13987
- restoreScrollLocation(_this4, lastScrollLeft, lastScrollTop).then(resolve);
14003
+ restoreScrollLocation(_this4, targetScrollLeft, targetScrollTop).then(resolve);
13988
14004
  } else {
13989
14005
  setTimeout(function () {
13990
- return restoreScrollLocation(_this4, lastScrollLeft, lastScrollTop).then(resolve);
14006
+ return restoreScrollLocation(_this4, targetScrollLeft, targetScrollTop).then(resolve);
13991
14007
  });
13992
14008
  }
13993
14009
  });
@@ -14284,7 +14300,7 @@ var Methods = {
14284
14300
 
14285
14301
  var handleFunc = function handleFunc(column, index, items, path, parent) {
14286
14302
  var colid = column.id,
14287
- property = column.property,
14303
+ field = column.field,
14288
14304
  fixed = column.fixed,
14289
14305
  type = column.type,
14290
14306
  treeNode = column.treeNode;
@@ -14296,10 +14312,10 @@ var Methods = {
14296
14312
  parent: parent
14297
14313
  };
14298
14314
 
14299
- if (property) {
14315
+ if (field) {
14300
14316
  if (false) {}
14301
14317
 
14302
- fullColumnFieldData[property] = rest;
14318
+ fullColumnFieldData[field] = rest;
14303
14319
  }
14304
14320
 
14305
14321
  if (!hasFixed && fixed) {
@@ -14514,10 +14530,10 @@ var Methods = {
14514
14530
  expandOpts = this.expandOpts;
14515
14531
  var rowkey = getRowkey(this);
14516
14532
  this.tableFullColumn.forEach(function (column) {
14517
- var property = column.property,
14533
+ var field = column.field,
14518
14534
  editRender = column.editRender;
14519
14535
 
14520
- if (property && !external_root_XEUtils_commonjs_xe_utils_commonjs2_xe_utils_amd_xe_utils_default.a.has(record, property)) {
14536
+ if (field && !external_root_XEUtils_commonjs_xe_utils_commonjs2_xe_utils_amd_xe_utils_default.a.has(record, field)) {
14521
14537
  var cellValue = null;
14522
14538
 
14523
14539
  if (editRender) {
@@ -14532,7 +14548,7 @@ var Methods = {
14532
14548
  }
14533
14549
  }
14534
14550
 
14535
- external_root_XEUtils_commonjs_xe_utils_commonjs2_xe_utils_amd_xe_utils_default.a.set(record, property, cellValue);
14551
+ external_root_XEUtils_commonjs_xe_utils_commonjs2_xe_utils_amd_xe_utils_default.a.set(record, field, cellValue);
14536
14552
  }
14537
14553
  });
14538
14554
  var otherFields = [radioOpts.labelField, checkboxOpts.checkField, checkboxOpts.labelField, expandOpts.labelField];
@@ -14632,7 +14648,7 @@ var Methods = {
14632
14648
  var rowIndex = _this15.getRowIndex(row);
14633
14649
 
14634
14650
  if (treeConfig && rowIndex === -1) {
14635
- throw new Error(utils.getLog('vxe.error.noTree', ['revertData']));
14651
+ errLog('vxe.error.noTree', ['revertData']);
14636
14652
  }
14637
14653
 
14638
14654
  var oRow = tableSourceData[rowIndex];
@@ -14681,7 +14697,7 @@ var Methods = {
14681
14697
  } else {
14682
14698
  rows.forEach(function (row) {
14683
14699
  visibleColumn.forEach(function (column) {
14684
- if (column.property) {
14700
+ if (column.field) {
14685
14701
  methods_setCellValue(row, column, null);
14686
14702
  }
14687
14703
  });
@@ -14751,7 +14767,7 @@ var Methods = {
14751
14767
  }
14752
14768
 
14753
14769
  for (var index = 0, len = visibleColumn.length; index < len; index++) {
14754
- property = visibleColumn[index].property;
14770
+ property = visibleColumn[index].field;
14755
14771
 
14756
14772
  if (property && !eqCellValue(oRow, row, property)) {
14757
14773
  return true;
@@ -14825,20 +14841,20 @@ var Methods = {
14825
14841
  var transform = treeOpts.transform,
14826
14842
  children = treeOpts.children,
14827
14843
  mapChildren = treeOpts.mapChildren;
14828
- var property = checkboxOpts.checkField;
14844
+ var checkField = checkboxOpts.checkField;
14829
14845
  var currTableData = isFull ? transform ? tableFullTreeData : tableFullData : transform ? afterTreeFullData : afterFullData;
14830
14846
  var rowList = [];
14831
14847
 
14832
- if (property) {
14848
+ if (checkField) {
14833
14849
  if (treeConfig) {
14834
14850
  rowList = external_root_XEUtils_commonjs_xe_utils_commonjs2_xe_utils_amd_xe_utils_default.a.filterTree(currTableData, function (row) {
14835
- return external_root_XEUtils_commonjs_xe_utils_commonjs2_xe_utils_amd_xe_utils_default.a.get(row, property);
14851
+ return external_root_XEUtils_commonjs_xe_utils_commonjs2_xe_utils_amd_xe_utils_default.a.get(row, checkField);
14836
14852
  }, {
14837
14853
  children: transform ? mapChildren : children
14838
14854
  });
14839
14855
  } else {
14840
14856
  rowList = currTableData.filter(function (row) {
14841
- return external_root_XEUtils_commonjs_xe_utils_commonjs2_xe_utils_amd_xe_utils_default.a.get(row, property);
14857
+ return external_root_XEUtils_commonjs_xe_utils_commonjs2_xe_utils_amd_xe_utils_default.a.get(row, checkField);
14842
14858
  });
14843
14859
  }
14844
14860
  } else {
@@ -14916,7 +14932,7 @@ var Methods = {
14916
14932
  var filterColumns = [];
14917
14933
  var orderColumns = [];
14918
14934
  tableFullColumn.forEach(function (column) {
14919
- var property = column.property,
14935
+ var field = column.field,
14920
14936
  sortable = column.sortable,
14921
14937
  order = column.order,
14922
14938
  filters = column.filters;
@@ -14943,8 +14959,8 @@ var Methods = {
14943
14959
  if (!allRemoteSort && sortable && order) {
14944
14960
  orderColumns.push({
14945
14961
  column: column,
14946
- field: column.property,
14947
- property: property,
14962
+ field: field,
14963
+ property: field,
14948
14964
  order: order,
14949
14965
  sortTime: column.sortTime
14950
14966
  });
@@ -14964,7 +14980,8 @@ var Methods = {
14964
14980
 
14965
14981
  if (valueList.length && !allRemoteFilter) {
14966
14982
  var filterMethod = column.filterMethod,
14967
- filterRender = column.filterRender;
14983
+ filterRender = column.filterRender,
14984
+ field = column.field;
14968
14985
  var compConf = filterRender ? v_x_e_table.renderer.get(filterRender.name) : null;
14969
14986
  var compFilterMethod = compConf && compConf.renderFilter ? compConf.filterMethod : null;
14970
14987
  var defaultFilterMethod = compConf ? compConf.defaultFilterMethod : null;
@@ -15013,7 +15030,7 @@ var Methods = {
15013
15030
  });
15014
15031
  }
15015
15032
 
15016
- return valueList.indexOf(external_root_XEUtils_commonjs_xe_utils_commonjs2_xe_utils_amd_xe_utils_default.a.get(row, column.property)) > -1;
15033
+ return valueList.indexOf(external_root_XEUtils_commonjs_xe_utils_commonjs2_xe_utils_amd_xe_utils_default.a.get(row, field)) > -1;
15017
15034
  }
15018
15035
 
15019
15036
  return true;
@@ -15071,7 +15088,8 @@ var Methods = {
15071
15088
  var _sortRests = allSortMethod({
15072
15089
  data: tableData,
15073
15090
  column: firstOrderColumn.column,
15074
- property: firstOrderColumn.property,
15091
+ property: firstOrderColumn.field,
15092
+ field: firstOrderColumn.field,
15075
15093
  order: firstOrderColumn.order,
15076
15094
  sortList: orderColumns,
15077
15095
  $table: this
@@ -17036,10 +17054,10 @@ var Methods = {
17036
17054
  return this.$nextTick();
17037
17055
  },
17038
17056
  isCheckedByCheckboxRow: function isCheckedByCheckboxRow(row) {
17039
- var property = this.checkboxOpts.checkField;
17057
+ var checkField = this.checkboxOpts.checkField;
17040
17058
 
17041
- if (property) {
17042
- return external_root_XEUtils_commonjs_xe_utils_commonjs2_xe_utils_amd_xe_utils_default.a.get(row, property);
17059
+ if (checkField) {
17060
+ return external_root_XEUtils_commonjs_xe_utils_commonjs2_xe_utils_amd_xe_utils_default.a.get(row, checkField);
17043
17061
  }
17044
17062
 
17045
17063
  return this.selection.indexOf(row) > -1;
@@ -17062,25 +17080,25 @@ var Methods = {
17062
17080
  treeOpts = this.treeOpts,
17063
17081
  treeIndeterminates = this.treeIndeterminates,
17064
17082
  checkboxOpts = this.checkboxOpts;
17065
- var property = checkboxOpts.checkField,
17083
+ var checkField = checkboxOpts.checkField,
17066
17084
  checkStrictly = checkboxOpts.checkStrictly,
17067
17085
  checkMethod = checkboxOpts.checkMethod;
17068
17086
 
17069
- if (property) {
17087
+ if (checkField) {
17070
17088
  if (treeConfig && !checkStrictly) {
17071
17089
  if (value === -1) {
17072
17090
  if (treeIndeterminates.indexOf(row) === -1) {
17073
17091
  treeIndeterminates.push(row);
17074
17092
  }
17075
17093
 
17076
- external_root_XEUtils_commonjs_xe_utils_commonjs2_xe_utils_amd_xe_utils_default.a.set(row, property, false);
17094
+ external_root_XEUtils_commonjs_xe_utils_commonjs2_xe_utils_amd_xe_utils_default.a.set(row, checkField, false);
17077
17095
  } else {
17078
17096
  // 更新子节点状态
17079
17097
  external_root_XEUtils_commonjs_xe_utils_commonjs2_xe_utils_amd_xe_utils_default.a.eachTree([row], function (item) {
17080
17098
  if (row === item || !checkMethod || checkMethod({
17081
17099
  row: item
17082
17100
  })) {
17083
- external_root_XEUtils_commonjs_xe_utils_commonjs2_xe_utils_amd_xe_utils_default.a.set(item, property, value);
17101
+ external_root_XEUtils_commonjs_xe_utils_commonjs2_xe_utils_amd_xe_utils_default.a.set(item, checkField, value);
17084
17102
  external_root_XEUtils_commonjs_xe_utils_commonjs2_xe_utils_amd_xe_utils_default.a.remove(treeIndeterminates, function (half) {
17085
17103
  return half === item;
17086
17104
  });
@@ -17110,7 +17128,7 @@ var Methods = {
17110
17128
  parentStatus = -1;
17111
17129
  } else {
17112
17130
  var selectItems = matchObj.items.filter(function (item) {
17113
- return external_root_XEUtils_commonjs_xe_utils_commonjs2_xe_utils_amd_xe_utils_default.a.get(item, property);
17131
+ return external_root_XEUtils_commonjs_xe_utils_commonjs2_xe_utils_amd_xe_utils_default.a.get(item, checkField);
17114
17132
  });
17115
17133
  parentStatus = selectItems.filter(function (item) {
17116
17134
  return vItems.indexOf(item) > -1;
@@ -17125,7 +17143,7 @@ var Methods = {
17125
17143
  if (!checkMethod || checkMethod({
17126
17144
  row: row
17127
17145
  })) {
17128
- external_root_XEUtils_commonjs_xe_utils_commonjs2_xe_utils_amd_xe_utils_default.a.set(row, property, value);
17146
+ external_root_XEUtils_commonjs_xe_utils_commonjs2_xe_utils_amd_xe_utils_default.a.set(row, checkField, value);
17129
17147
  this.handleCheckboxReserveRow(row, value);
17130
17148
  }
17131
17149
  }
@@ -17220,9 +17238,9 @@ var Methods = {
17220
17238
  handleToggleCheckRowEvent: function handleToggleCheckRowEvent(evnt, params) {
17221
17239
  var selection = this.selection,
17222
17240
  checkboxOpts = this.checkboxOpts;
17223
- var property = checkboxOpts.checkField;
17241
+ var checkField = checkboxOpts.checkField;
17224
17242
  var row = params.row;
17225
- var value = property ? !external_root_XEUtils_commonjs_xe_utils_commonjs2_xe_utils_amd_xe_utils_default.a.get(row, property) : selection.indexOf(row) === -1;
17243
+ var value = checkField ? !external_root_XEUtils_commonjs_xe_utils_commonjs2_xe_utils_amd_xe_utils_default.a.get(row, checkField) : selection.indexOf(row) === -1;
17226
17244
 
17227
17245
  if (evnt) {
17228
17246
  this.triggerCheckRowEvent(evnt, params, value);
@@ -17269,7 +17287,7 @@ var Methods = {
17269
17287
  selection = this.selection,
17270
17288
  checkboxReserveRowMap = this.checkboxReserveRowMap,
17271
17289
  checkboxOpts = this.checkboxOpts;
17272
- var property = checkboxOpts.checkField,
17290
+ var checkField = checkboxOpts.checkField,
17273
17291
  reserve = checkboxOpts.reserve,
17274
17292
  checkStrictly = checkboxOpts.checkStrictly,
17275
17293
  checkMethod = checkboxOpts.checkMethod;
@@ -17285,7 +17303,7 @@ var Methods = {
17285
17303
  * 绑定属性方式(高性能,有污染)
17286
17304
  * 必须在行数据存在对应的属性,否则将不响应
17287
17305
  */
17288
- if (property) {
17306
+ if (checkField) {
17289
17307
  var checkValFn = function checkValFn(row) {
17290
17308
  if (!checkMethod || checkMethod({
17291
17309
  row: row
@@ -17294,7 +17312,7 @@ var Methods = {
17294
17312
  selectRows.push(row);
17295
17313
  }
17296
17314
 
17297
- external_root_XEUtils_commonjs_xe_utils_commonjs2_xe_utils_amd_xe_utils_default.a.set(row, property, value);
17315
+ external_root_XEUtils_commonjs_xe_utils_commonjs2_xe_utils_amd_xe_utils_default.a.set(row, checkField, value);
17298
17316
  }
17299
17317
  }; // 如果存在选中方法
17300
17318
  // 如果方法成立,则更新值,否则忽略该数据
@@ -17383,7 +17401,7 @@ var Methods = {
17383
17401
  }
17384
17402
  }
17385
17403
 
17386
- this.selection = property ? [] : beforeSelection.concat(selectRows);
17404
+ this.selection = checkField ? [] : beforeSelection.concat(selectRows);
17387
17405
  }
17388
17406
 
17389
17407
  this.treeIndeterminates = [];
@@ -17689,17 +17707,17 @@ var Methods = {
17689
17707
  treeConfig = this.treeConfig,
17690
17708
  treeOpts = this.treeOpts,
17691
17709
  checkboxOpts = this.checkboxOpts;
17692
- var property = checkboxOpts.checkField,
17710
+ var checkField = checkboxOpts.checkField,
17693
17711
  reserve = checkboxOpts.reserve;
17694
17712
 
17695
- if (property) {
17713
+ if (checkField) {
17696
17714
  if (treeConfig) {
17697
17715
  external_root_XEUtils_commonjs_xe_utils_commonjs2_xe_utils_amd_xe_utils_default.a.eachTree(tableFullData, function (item) {
17698
- return external_root_XEUtils_commonjs_xe_utils_commonjs2_xe_utils_amd_xe_utils_default.a.set(item, property, false);
17716
+ return external_root_XEUtils_commonjs_xe_utils_commonjs2_xe_utils_amd_xe_utils_default.a.set(item, checkField, false);
17699
17717
  }, treeOpts);
17700
17718
  } else {
17701
17719
  tableFullData.forEach(function (item) {
17702
- return external_root_XEUtils_commonjs_xe_utils_commonjs2_xe_utils_amd_xe_utils_default.a.set(item, property, false);
17720
+ return external_root_XEUtils_commonjs_xe_utils_commonjs2_xe_utils_amd_xe_utils_default.a.set(item, checkField, false);
17703
17721
  });
17704
17722
  }
17705
17723
  }
@@ -18178,21 +18196,24 @@ var Methods = {
18178
18196
  */
18179
18197
  triggerSortEvent: function triggerSortEvent(evnt, column, order) {
18180
18198
  var sortOpts = this.sortOpts;
18181
- var property = column.property;
18199
+ var field = column.field,
18200
+ sortable = column.sortable,
18201
+ remoteSort = column.remoteSort;
18182
18202
 
18183
- if (column.sortable || column.remoteSort) {
18203
+ if (sortable || remoteSort) {
18184
18204
  if (!order || column.order === order) {
18185
18205
  this.clearSort(sortOpts.multiple ? column : null);
18186
18206
  } else {
18187
18207
  this.sort({
18188
- field: property,
18208
+ field: field,
18189
18209
  order: order
18190
18210
  });
18191
18211
  }
18192
18212
 
18193
18213
  var params = {
18194
18214
  column: column,
18195
- property: property,
18215
+ field: field,
18216
+ property: field,
18196
18217
  order: column.order,
18197
18218
  sortList: this.getSortColumns()
18198
18219
  };
@@ -18309,14 +18330,14 @@ var Methods = {
18309
18330
  chronological = _this$sortOpts.chronological;
18310
18331
  var sortList = [];
18311
18332
  this.tableFullColumn.forEach(function (column) {
18312
- var property = column.property,
18333
+ var field = column.field,
18313
18334
  order = column.order;
18314
18335
 
18315
18336
  if ((column.sortable || column.remoteSort) && order) {
18316
18337
  sortList.push({
18317
18338
  column: column,
18318
- field: column.property,
18319
- property: property,
18339
+ field: field,
18340
+ property: field,
18320
18341
  order: order,
18321
18342
  sortTime: column.sortTime
18322
18343
  });
@@ -18348,7 +18369,8 @@ var Methods = {
18348
18369
  if (visible) {
18349
18370
  this.emitEvent('filter-visible', {
18350
18371
  column: column,
18351
- property: column.property,
18372
+ field: column.field,
18373
+ property: column.field,
18352
18374
  filterList: this.getCheckedFilters(),
18353
18375
  visible: false
18354
18376
  }, null);
@@ -21097,11 +21119,15 @@ var Table = Object.assign(table, {
21097
21119
  render: function render(h) {
21098
21120
  var $xetable = this.$parent,
21099
21121
  filterStore = this.filterStore;
21100
- var column = filterStore.column;
21122
+ var args = filterStore.args,
21123
+ column = filterStore.column;
21101
21124
  var filterRender = column ? column.filterRender : null;
21102
21125
  var compConf = filterRender ? v_x_e_table.renderer.get(filterRender.name) : null;
21126
+ var filterClassName = compConf ? compConf.filterClassName : '';
21103
21127
  return h('div', {
21104
- class: ['vxe-table--filter-wrapper', 'filter--prevent-default', compConf && compConf.className ? compConf.className : '', {
21128
+ class: ['vxe-table--filter-wrapper', 'filter--prevent-default', compConf && compConf.className ? compConf.className : '', utils.getClass(filterClassName, Object.assign({
21129
+ $panel: this
21130
+ }, args)), {
21105
21131
  'is--animat': $xetable.animat,
21106
21132
  'is--multiple': filterStore.multiple,
21107
21133
  'is--active': filterStore.visible
@@ -21459,7 +21485,8 @@ var Table = Object.assign(table, {
21459
21485
 
21460
21486
  this.emitEvent('filter-visible', {
21461
21487
  column: column,
21462
- property: column.property,
21488
+ field: column.field,
21489
+ property: column.field,
21463
21490
  filterList: this.getCheckedFilters(),
21464
21491
  visible: filterStore.visible
21465
21492
  }, evnt);
@@ -21468,7 +21495,7 @@ var Table = Object.assign(table, {
21468
21495
  var tableFullColumn = this.tableFullColumn;
21469
21496
  var filterList = [];
21470
21497
  tableFullColumn.filter(function (column) {
21471
- var property = column.property,
21498
+ var field = column.field,
21472
21499
  filters = column.filters;
21473
21500
  var valueList = [];
21474
21501
  var dataList = [];
@@ -21484,7 +21511,8 @@ var Table = Object.assign(table, {
21484
21511
  if (valueList.length) {
21485
21512
  filterList.push({
21486
21513
  column: column,
21487
- property: property,
21514
+ field: field,
21515
+ property: field,
21488
21516
  values: valueList,
21489
21517
  datas: dataList
21490
21518
  });
@@ -21507,7 +21535,7 @@ var Table = Object.assign(table, {
21507
21535
  oldScrollXLoad = this.scrollXLoad,
21508
21536
  oldScrollYLoad = this.scrollYLoad;
21509
21537
  var column = filterStore.column;
21510
- var property = column.property;
21538
+ var field = column.field;
21511
21539
  var values = [];
21512
21540
  var datas = [];
21513
21541
  column.filters.forEach(function (item) {
@@ -21525,7 +21553,8 @@ var Table = Object.assign(table, {
21525
21553
 
21526
21554
  this.emitEvent('filter-change', {
21527
21555
  column: column,
21528
- property: property,
21556
+ field: field,
21557
+ property: field,
21529
21558
  values: values,
21530
21559
  datas: datas,
21531
21560
  filters: filterList,
@@ -22335,7 +22364,7 @@ function insertTreeRow(_vm, newRecords, isAppend) {
22335
22364
  }
22336
22365
  } else {
22337
22366
  if (treeConfig) {
22338
- throw new Error(utils.getLog('vxe.error.noTree', ['insert']));
22367
+ throw new Error(getLog('vxe.error.noTree', ['insert']));
22339
22368
  }
22340
22369
 
22341
22370
  var afIndex = -1; // 如果是可视索引
@@ -22420,7 +22449,7 @@ function insertTreeRow(_vm, newRecords, isAppend) {
22420
22449
  var actived = editStore.actived,
22421
22450
  removeList = editStore.removeList,
22422
22451
  insertList = editStore.insertList;
22423
- var property = checkboxOpts.checkField;
22452
+ var checkField = checkboxOpts.checkField;
22424
22453
  var rest = [];
22425
22454
 
22426
22455
  if (!rows) {
@@ -22436,7 +22465,7 @@ function insertTreeRow(_vm, newRecords, isAppend) {
22436
22465
  }
22437
22466
  }); // 如果绑定了多选属性,则更新状态
22438
22467
 
22439
- if (!property) {
22468
+ if (!checkField) {
22440
22469
  rows.forEach(function (row) {
22441
22470
  var sIndex = selection.indexOf(row);
22442
22471
 
@@ -25192,18 +25221,20 @@ function renderExtraSuffixIcon(h, _vm) {
25192
25221
  },
25193
25222
  // date、week、month、year
25194
25223
  dateConfig: Object,
25195
- minDate: {
25224
+ startDate: {
25196
25225
  type: [String, Number, Date],
25197
25226
  default: function _default() {
25198
- return conf.input.minDate;
25227
+ return conf.input.startDate;
25199
25228
  }
25200
25229
  },
25201
- maxDate: {
25230
+ endDate: {
25202
25231
  type: [String, Number, Date],
25203
25232
  default: function _default() {
25204
- return conf.input.maxDate;
25233
+ return conf.input.endDate;
25205
25234
  }
25206
25235
  },
25236
+ minDate: [String, Number, Date],
25237
+ maxDate: [String, Number, Date],
25207
25238
  // 已废弃 startWeek,被 startDay 替换
25208
25239
  startWeek: Number,
25209
25240
  startDay: {
@@ -25320,29 +25351,29 @@ function renderExtraSuffixIcon(h, _vm) {
25320
25351
  },
25321
25352
  isDisabledPrevDateBtn: function isDisabledPrevDateBtn() {
25322
25353
  var selectMonth = this.selectMonth,
25323
- dateMinTime = this.dateMinTime;
25354
+ dateStartTime = this.dateStartTime;
25324
25355
 
25325
25356
  if (selectMonth) {
25326
- return selectMonth <= dateMinTime;
25357
+ return selectMonth <= dateStartTime;
25327
25358
  }
25328
25359
 
25329
25360
  return false;
25330
25361
  },
25331
25362
  isDisabledNextDateBtn: function isDisabledNextDateBtn() {
25332
25363
  var selectMonth = this.selectMonth,
25333
- dateMaxTime = this.dateMaxTime;
25364
+ dateEndTime = this.dateEndTime;
25334
25365
 
25335
25366
  if (selectMonth) {
25336
- return selectMonth >= dateMaxTime;
25367
+ return selectMonth >= dateEndTime;
25337
25368
  }
25338
25369
 
25339
25370
  return false;
25340
25371
  },
25341
- dateMinTime: function dateMinTime() {
25342
- return this.minDate ? external_root_XEUtils_commonjs_xe_utils_commonjs2_xe_utils_amd_xe_utils_default.a.toStringDate(this.minDate) : null;
25372
+ dateStartTime: function dateStartTime() {
25373
+ return this.startDate ? external_root_XEUtils_commonjs_xe_utils_commonjs2_xe_utils_amd_xe_utils_default.a.toStringDate(this.startDate) : null;
25343
25374
  },
25344
- dateMaxTime: function dateMaxTime() {
25345
- return this.maxDate ? external_root_XEUtils_commonjs_xe_utils_commonjs2_xe_utils_amd_xe_utils_default.a.toStringDate(this.maxDate) : null;
25375
+ dateEndTime: function dateEndTime() {
25376
+ return this.endDate ? external_root_XEUtils_commonjs_xe_utils_commonjs2_xe_utils_amd_xe_utils_default.a.toStringDate(this.endDate) : null;
25346
25377
  },
25347
25378
  supportMultiples: function supportMultiples() {
25348
25379
  return ['date', 'week', 'month', 'quarter', 'year'].includes(this.type);
@@ -25602,10 +25633,10 @@ function renderExtraSuffixIcon(h, _vm) {
25602
25633
  var selMonth = selectMonth.getMonth();
25603
25634
  var selDay = selectMonth.getDay();
25604
25635
  var prevOffsetDate = -weekDatas.indexOf(selDay);
25605
- var startDate = new Date(external_root_XEUtils_commonjs_xe_utils_commonjs2_xe_utils_amd_xe_utils_default.a.getWhatDay(selectMonth, prevOffsetDate).getTime() + hmsTime);
25636
+ var startDayDate = new Date(external_root_XEUtils_commonjs_xe_utils_commonjs2_xe_utils_amd_xe_utils_default.a.getWhatDay(selectMonth, prevOffsetDate).getTime() + hmsTime);
25606
25637
 
25607
25638
  for (var index = 0; index < 42; index++) {
25608
- var date = external_root_XEUtils_commonjs_xe_utils_commonjs2_xe_utils_amd_xe_utils_default.a.getWhatDay(startDate, index);
25639
+ var date = external_root_XEUtils_commonjs_xe_utils_commonjs2_xe_utils_amd_xe_utils_default.a.getWhatDay(startDayDate, index);
25609
25640
  var itemFullYear = date.getFullYear();
25610
25641
  var itemMonth = date.getMonth();
25611
25642
  var itemDate = date.getDate();
@@ -26516,7 +26547,10 @@ function renderExtraSuffixIcon(h, _vm) {
26516
26547
  this.dateTimeChangeEvent(evnt);
26517
26548
  },
26518
26549
  dateConfirmEvent: function dateConfirmEvent() {
26519
- this.dateChange(this.dateValue || this.currentDate);
26550
+ if (this.isDateTimeType || this.multiple) {
26551
+ this.dateChange(this.dateValue || this.currentDate);
26552
+ }
26553
+
26520
26554
  this.hidePanel();
26521
26555
  },
26522
26556
  dateMinuteEvent: function dateMinuteEvent(evnt, item) {
@@ -27221,6 +27255,9 @@ function renderExtraSuffixIcon(h, _vm) {
27221
27255
 
27222
27256
 
27223
27257
 
27258
+
27259
+
27260
+
27224
27261
  function isOptionVisible(option) {
27225
27262
  return option.visible !== false;
27226
27263
  }
@@ -27363,6 +27400,15 @@ function findOption(_vm, optionValue) {
27363
27400
  });
27364
27401
  }
27365
27402
 
27403
+ function getRemoteSelectLabel(_vm, value) {
27404
+ var remoteValueList = _vm.remoteValueList;
27405
+ var remoteItem = remoteValueList.find(function (item) {
27406
+ return value === item.key;
27407
+ });
27408
+ var item = remoteItem ? remoteItem.result : null;
27409
+ return external_root_XEUtils_commonjs_xe_utils_commonjs2_xe_utils_amd_xe_utils_default.a.toValueString(item ? item[_vm.labelField] : value);
27410
+ }
27411
+
27366
27412
  function getSelectLabel(_vm, value) {
27367
27413
  var item = findOption(_vm, value);
27368
27414
  return external_root_XEUtils_commonjs_xe_utils_commonjs2_xe_utils_amd_xe_utils_default.a.toValueString(item ? item[_vm.labelField] : value);
@@ -27399,7 +27445,7 @@ function renderOption(h, _vm, list, group) {
27399
27445
  mousedown: _vm.mousedownOptionEvent,
27400
27446
  click: function click(evnt) {
27401
27447
  if (!isDisabled) {
27402
- _vm.changeOptionEvent(evnt, optionValue);
27448
+ _vm.changeOptionEvent(evnt, optionValue, option);
27403
27449
  }
27404
27450
  },
27405
27451
  mouseenter: function mouseenter() {
@@ -27448,7 +27494,18 @@ function renderOptgroup(h, _vm) {
27448
27494
  function select_renderOpts(h, _vm) {
27449
27495
  var isGroup = _vm.isGroup,
27450
27496
  visibleGroupList = _vm.visibleGroupList,
27451
- visibleOptionList = _vm.visibleOptionList;
27497
+ visibleOptionList = _vm.visibleOptionList,
27498
+ searchLoading = _vm.searchLoading;
27499
+
27500
+ if (searchLoading) {
27501
+ return [h('div', {
27502
+ class: 'vxe-select--search-loading'
27503
+ }, [h('i', {
27504
+ class: ['vxe-select--search-icon', conf.icon.SELECT_LOADED]
27505
+ }), h('span', {
27506
+ class: 'vxe-select--search-text'
27507
+ }, conf.i18n('vxe.select.loadingText'))])];
27508
+ }
27452
27509
 
27453
27510
  if (isGroup) {
27454
27511
  if (visibleGroupList.length) {
@@ -27495,6 +27552,10 @@ function select_renderOpts(h, _vm) {
27495
27552
  return conf.select.size || conf.size;
27496
27553
  }
27497
27554
  },
27555
+ filterable: Boolean,
27556
+ filterMethod: Function,
27557
+ remote: Boolean,
27558
+ remoteMethod: Function,
27498
27559
  emptyText: String,
27499
27560
  // 已废弃,被 option-config.keyField 替换
27500
27561
  optionId: {
@@ -27536,13 +27597,17 @@ function select_renderOpts(h, _vm) {
27536
27597
  fullOptionList: [],
27537
27598
  visibleGroupList: [],
27538
27599
  visibleOptionList: [],
27600
+ remoteValueList: [],
27539
27601
  panelIndex: 0,
27540
27602
  panelStyle: null,
27541
27603
  panelPlacement: null,
27604
+ currentOption: null,
27542
27605
  currentValue: null,
27543
27606
  visiblePanel: false,
27544
27607
  animatVisible: false,
27545
- isActivated: false
27608
+ isActivated: false,
27609
+ searchValue: '',
27610
+ searchLoading: false
27546
27611
  };
27547
27612
  },
27548
27613
  computed: {
@@ -27580,10 +27645,19 @@ function select_renderOpts(h, _vm) {
27580
27645
 
27581
27646
  var value = this.value,
27582
27647
  multiple = this.multiple,
27648
+ remote = this.remote,
27583
27649
  multiMaxCharNum = this.multiMaxCharNum;
27584
27650
 
27585
27651
  if (value && multiple) {
27586
- return (external_root_XEUtils_commonjs_xe_utils_commonjs2_xe_utils_amd_xe_utils_default.a.isArray(value) ? value : [value]).map(function (val) {
27652
+ var vals = external_root_XEUtils_commonjs_xe_utils_commonjs2_xe_utils_amd_xe_utils_default.a.isArray(value) ? value : [value];
27653
+
27654
+ if (remote) {
27655
+ return vals.map(function (val) {
27656
+ return getRemoteSelectLabel(_this, val);
27657
+ }).join(', ');
27658
+ }
27659
+
27660
+ return vals.map(function (val) {
27587
27661
  var label = getSelectLabel(_this, val);
27588
27662
 
27589
27663
  if (multiMaxCharNum > 0 && label.length > multiMaxCharNum) {
@@ -27594,6 +27668,10 @@ function select_renderOpts(h, _vm) {
27594
27668
  }).join(', ');
27595
27669
  }
27596
27670
 
27671
+ if (remote) {
27672
+ return getRemoteSelectLabel(this, value);
27673
+ }
27674
+
27597
27675
  return getSelectLabel(this, value);
27598
27676
  }
27599
27677
  },
@@ -27654,19 +27732,21 @@ function select_renderOpts(h, _vm) {
27654
27732
  render: function render(h) {
27655
27733
  var _ref, _ref2;
27656
27734
 
27657
- var $scopedSlots = this.$scopedSlots,
27735
+ var _e = this._e,
27736
+ $scopedSlots = this.$scopedSlots,
27658
27737
  vSize = this.vSize,
27659
27738
  className = this.className,
27660
27739
  inited = this.inited,
27661
27740
  isActivated = this.isActivated,
27662
27741
  loading = this.loading,
27663
27742
  disabled = this.disabled,
27664
- visiblePanel = this.visiblePanel;
27743
+ visiblePanel = this.visiblePanel,
27744
+ filterable = this.filterable;
27665
27745
  var prefixSlot = $scopedSlots.prefix;
27666
27746
  return h('div', {
27667
27747
  class: ['vxe-select', className ? external_root_XEUtils_commonjs_xe_utils_commonjs2_xe_utils_amd_xe_utils_default.a.isFunction(className) ? className({
27668
27748
  $select: this
27669
- }) : className : '', (_ref = {}, _defineProperty(_ref, "size--".concat(vSize), vSize), _defineProperty(_ref, 'is--visivle', visiblePanel), _defineProperty(_ref, 'is--disabled', disabled), _defineProperty(_ref, 'is--loading', loading), _defineProperty(_ref, 'is--active', isActivated), _ref)]
27749
+ }) : className : '', (_ref = {}, _defineProperty(_ref, "size--".concat(vSize), vSize), _defineProperty(_ref, 'is--visivle', visiblePanel), _defineProperty(_ref, 'is--disabled', disabled), _defineProperty(_ref, 'is--filter', filterable), _defineProperty(_ref, 'is--loading', loading), _defineProperty(_ref, 'is--active', isActivated), _ref)]
27670
27750
  }, [h('div', {
27671
27751
  class: 'vxe-select-slots',
27672
27752
  ref: 'hideOption'
@@ -27701,7 +27781,26 @@ function select_renderOpts(h, _vm) {
27701
27781
  placement: this.panelPlacement
27702
27782
  },
27703
27783
  style: this.panelStyle
27704
- }, inited ? [h('div', {
27784
+ }, inited ? [filterable ? h('div', {
27785
+ class: 'vxe-select-filter--wrapper'
27786
+ }, [h('vxe-input', {
27787
+ ref: 'inpSearch',
27788
+ class: 'vxe-select-filter--input',
27789
+ props: {
27790
+ value: this.searchValue,
27791
+ type: 'text',
27792
+ clearable: true,
27793
+ placeholder: conf.i18n('vxe.select.search'),
27794
+ prefixIcon: conf.icon.INPUT_SEARCH
27795
+ },
27796
+ on: {
27797
+ modelValue: this.modelSearchEvent,
27798
+ focus: this.focusSearchEvent,
27799
+ keydown: this.keydownSearchEvent,
27800
+ change: this.triggerSearchEvent,
27801
+ search: this.triggerSearchEvent
27802
+ }
27803
+ })]) : _e(), h('div', {
27705
27804
  ref: 'optWrapper',
27706
27805
  class: 'vxe-select-option--wrapper'
27707
27806
  }, select_renderOpts(h, this))] : null)]);
@@ -27752,23 +27851,57 @@ function select_renderOpts(h, _vm) {
27752
27851
  },
27753
27852
 
27754
27853
  /**
27755
- * 刷新选项,当选项被动态显示/隐藏时可能会用到
27854
+ * 刷新选项,当选项被搜索、动态显示/隐藏时可能会用到
27756
27855
  */
27757
27856
  refreshOption: function refreshOption() {
27758
27857
  var isGroup = this.isGroup,
27759
27858
  fullOptionList = this.fullOptionList,
27760
- fullGroupList = this.fullGroupList;
27859
+ fullGroupList = this.fullGroupList,
27860
+ filterable = this.filterable,
27861
+ filterMethod = this.filterMethod,
27862
+ searchValue = this.searchValue,
27863
+ labelField = this.labelField,
27864
+ groupLabelField = this.groupLabelField;
27761
27865
 
27762
27866
  if (isGroup) {
27763
- this.visibleGroupList = fullGroupList.filter(isOptionVisible);
27867
+ if (filterable && filterMethod) {
27868
+ this.visibleGroupList = fullGroupList.filter(function (group) {
27869
+ return isOptionVisible(group) && filterMethod({
27870
+ group: group,
27871
+ option: null,
27872
+ searchValue: searchValue
27873
+ });
27874
+ });
27875
+ } else if (filterable) {
27876
+ this.visibleGroupList = fullGroupList.filter(function (group) {
27877
+ return isOptionVisible(group) && (!searchValue || "".concat(group[groupLabelField]).indexOf(searchValue) > -1);
27878
+ });
27879
+ } else {
27880
+ this.visibleGroupList = fullGroupList.filter(isOptionVisible);
27881
+ }
27764
27882
  } else {
27765
- this.visibleOptionList = fullOptionList.filter(isOptionVisible);
27883
+ if (filterable && filterMethod) {
27884
+ this.visibleOptionList = fullOptionList.filter(function (option) {
27885
+ return isOptionVisible(option) && filterMethod({
27886
+ group: null,
27887
+ option: option,
27888
+ searchValue: searchValue
27889
+ });
27890
+ });
27891
+ } else if (filterable) {
27892
+ this.visibleOptionList = fullOptionList.filter(function (option) {
27893
+ return isOptionVisible(option) && (!searchValue || "".concat(option[labelField]).indexOf(searchValue) > -1);
27894
+ });
27895
+ } else {
27896
+ this.visibleOptionList = fullOptionList.filter(isOptionVisible);
27897
+ }
27766
27898
  }
27767
27899
 
27768
27900
  return this.$nextTick();
27769
27901
  },
27770
27902
  setCurrentOption: function setCurrentOption(option) {
27771
27903
  if (option) {
27904
+ this.currentOption = option;
27772
27905
  this.currentValue = option[this.valueField];
27773
27906
  }
27774
27907
  },
@@ -27803,6 +27936,7 @@ function select_renderOpts(h, _vm) {
27803
27936
  this.hideOptionPanel();
27804
27937
  },
27805
27938
  clearValueEvent: function clearValueEvent(evnt, selectValue) {
27939
+ this.remoteValueList = [];
27806
27940
  this.changeEvent(evnt, selectValue);
27807
27941
  this.$emit('clear', {
27808
27942
  value: selectValue,
@@ -27829,9 +27963,10 @@ function select_renderOpts(h, _vm) {
27829
27963
  evnt.stopPropagation();
27830
27964
  }
27831
27965
  },
27832
- changeOptionEvent: function changeOptionEvent(evnt, selectValue) {
27966
+ changeOptionEvent: function changeOptionEvent(evnt, selectValue, option) {
27833
27967
  var value = this.value,
27834
- multiple = this.multiple;
27968
+ multiple = this.multiple,
27969
+ remoteValueList = this.remoteValueList;
27835
27970
 
27836
27971
  if (multiple) {
27837
27972
  var multipleValue;
@@ -27848,8 +27983,25 @@ function select_renderOpts(h, _vm) {
27848
27983
  multipleValue = [selectValue];
27849
27984
  }
27850
27985
 
27986
+ var remoteItem = remoteValueList.find(function (item) {
27987
+ return item.key === selectValue;
27988
+ });
27989
+
27990
+ if (remoteItem) {
27991
+ remoteItem.result = option;
27992
+ } else {
27993
+ remoteValueList.push({
27994
+ key: selectValue,
27995
+ result: option
27996
+ });
27997
+ }
27998
+
27851
27999
  this.changeEvent(evnt, multipleValue);
27852
28000
  } else {
28001
+ this.remoteValueList = [{
28002
+ key: selectValue,
28003
+ result: option
28004
+ }];
27853
28005
  this.changeEvent(evnt, selectValue);
27854
28006
  this.hideOptionPanel();
27855
28007
  }
@@ -27886,6 +28038,7 @@ function select_renderOpts(h, _vm) {
27886
28038
  handleGlobalKeydownEvent: function handleGlobalKeydownEvent(evnt) {
27887
28039
  var visiblePanel = this.visiblePanel,
27888
28040
  currentValue = this.currentValue,
28041
+ currentOption = this.currentOption,
27889
28042
  clearable = this.clearable,
27890
28043
  disabled = this.disabled;
27891
28044
 
@@ -27909,7 +28062,7 @@ function select_renderOpts(h, _vm) {
27909
28062
  } else if (isEnter) {
27910
28063
  evnt.preventDefault();
27911
28064
  evnt.stopPropagation();
27912
- this.changeOptionEvent(evnt, currentValue);
28065
+ this.changeOptionEvent(evnt, currentValue, currentOption);
27913
28066
  } else if (isUpArrow || isDwArrow) {
27914
28067
  evnt.preventDefault();
27915
28068
 
@@ -27946,6 +28099,17 @@ function select_renderOpts(h, _vm) {
27946
28099
  this.panelIndex = utils.nextZIndex();
27947
28100
  }
27948
28101
  },
28102
+ handleFocusSearch: function handleFocusSearch() {
28103
+ var _this4 = this;
28104
+
28105
+ if (this.filterable) {
28106
+ this.$nextTick(function () {
28107
+ if (_this4.$refs.inpSearch) {
28108
+ _this4.$refs.inpSearch.focus();
28109
+ }
28110
+ });
28111
+ }
28112
+ },
27949
28113
  focusEvent: function focusEvent() {
27950
28114
  if (!this.disabled) {
27951
28115
  this.isActivated = true;
@@ -27954,6 +28118,47 @@ function select_renderOpts(h, _vm) {
27954
28118
  blurEvent: function blurEvent() {
27955
28119
  this.isActivated = false;
27956
28120
  },
28121
+ modelSearchEvent: function modelSearchEvent(value) {
28122
+ this.searchValue = value;
28123
+ },
28124
+ focusSearchEvent: function focusSearchEvent() {
28125
+ this.isActivated = true;
28126
+ },
28127
+ keydownSearchEvent: function keydownSearchEvent(params) {
28128
+ var $event = params.$event;
28129
+ var isEnter = hasEventKey($event, EVENT_KEYS.ENTER);
28130
+
28131
+ if (isEnter) {
28132
+ $event.preventDefault();
28133
+ $event.stopPropagation();
28134
+ }
28135
+ },
28136
+ triggerSearchEvent: external_root_XEUtils_commonjs_xe_utils_commonjs2_xe_utils_amd_xe_utils_default.a.debounce(function () {
28137
+ var _this5 = this;
28138
+
28139
+ var remote = this.remote,
28140
+ remoteMethod = this.remoteMethod,
28141
+ searchValue = this.searchValue;
28142
+
28143
+ if (remote && remoteMethod) {
28144
+ this.searchLoading = true;
28145
+ Promise.resolve(remoteMethod({
28146
+ searchValue: searchValue
28147
+ })).then(function () {
28148
+ return _this5.$nextTick();
28149
+ }).catch(function () {
28150
+ return _this5.$nextTick();
28151
+ }).finally(function () {
28152
+ _this5.searchLoading = false;
28153
+
28154
+ _this5.refreshOption();
28155
+ });
28156
+ } else {
28157
+ this.refreshOption();
28158
+ }
28159
+ }, 350, {
28160
+ trailing: true
28161
+ }),
27957
28162
  isPanelVisible: function isPanelVisible() {
27958
28163
  return this.visiblePanel;
27959
28164
  },
@@ -27991,12 +28196,14 @@ function select_renderOpts(h, _vm) {
27991
28196
  }
27992
28197
  },
27993
28198
  showOptionPanel: function showOptionPanel() {
27994
- var _this4 = this;
28199
+ var _this6 = this;
27995
28200
 
27996
28201
  var loading = this.loading,
27997
- disabled = this.disabled;
28202
+ disabled = this.disabled,
28203
+ filterable = this.filterable;
27998
28204
 
27999
28205
  if (!loading && !disabled) {
28206
+ this.searchList = this.option;
28000
28207
  clearTimeout(this.hidePanelTimeout);
28001
28208
 
28002
28209
  if (!this.inited) {
@@ -28009,38 +28216,48 @@ function select_renderOpts(h, _vm) {
28009
28216
 
28010
28217
  this.isActivated = true;
28011
28218
  this.animatVisible = true;
28219
+
28220
+ if (filterable) {
28221
+ this.refreshOption();
28222
+ }
28223
+
28012
28224
  setTimeout(function () {
28013
- var value = _this4.value,
28014
- multiple = _this4.multiple;
28015
- var currOption = findOption(_this4, multiple && value ? value[0] : value);
28016
- _this4.visiblePanel = true;
28225
+ var value = _this6.value,
28226
+ multiple = _this6.multiple;
28227
+ var currOption = findOption(_this6, multiple && value ? value[0] : value);
28228
+ _this6.visiblePanel = true;
28017
28229
 
28018
28230
  if (currOption) {
28019
- _this4.setCurrentOption(currOption);
28231
+ _this6.setCurrentOption(currOption);
28020
28232
 
28021
- _this4.scrollToOption(currOption);
28233
+ _this6.scrollToOption(currOption);
28022
28234
  }
28235
+
28236
+ _this6.handleFocusSearch();
28023
28237
  }, 10);
28024
28238
  this.updateZindex();
28025
28239
  this.updatePlacement();
28026
28240
  }
28027
28241
  },
28028
28242
  hideOptionPanel: function hideOptionPanel() {
28029
- var _this5 = this;
28243
+ var _this7 = this;
28030
28244
 
28245
+ this.searchValue = '';
28246
+ this.searchLoading = false;
28031
28247
  this.visiblePanel = false;
28032
28248
  this.hidePanelTimeout = setTimeout(function () {
28033
- _this5.animatVisible = false;
28249
+ _this7.animatVisible = false;
28250
+ _this7.searchValue = '';
28034
28251
  }, 350);
28035
28252
  },
28036
28253
  updatePlacement: function updatePlacement() {
28037
- var _this6 = this;
28254
+ var _this8 = this;
28038
28255
 
28039
28256
  return this.$nextTick().then(function () {
28040
- var $refs = _this6.$refs,
28041
- transfer = _this6.transfer,
28042
- placement = _this6.placement,
28043
- panelIndex = _this6.panelIndex;
28257
+ var $refs = _this8.$refs,
28258
+ transfer = _this8.transfer,
28259
+ placement = _this8.placement,
28260
+ panelIndex = _this8.panelIndex;
28044
28261
  var targetElem = $refs.input.$el;
28045
28262
  var panelElem = $refs.panel;
28046
28263
 
@@ -28114,9 +28331,9 @@ function select_renderOpts(h, _vm) {
28114
28331
  }
28115
28332
  }
28116
28333
 
28117
- _this6.panelStyle = panelStyle;
28118
- _this6.panelPlacement = panelPlacement;
28119
- return _this6.$nextTick();
28334
+ _this8.panelStyle = panelStyle;
28335
+ _this8.panelPlacement = panelPlacement;
28336
+ return _this8.$nextTick();
28120
28337
  }
28121
28338
  });
28122
28339
  },
@@ -29750,7 +29967,7 @@ function saveLocalFile(options) {
29750
29967
  return Promise.resolve();
29751
29968
  }
29752
29969
 
29753
- return Promise.reject(new Error(utils.getLog('vxe.error.notExp')));
29970
+ return Promise.reject(new Error(getLog('vxe.error.notExp')));
29754
29971
  }
29755
29972
 
29756
29973
  function downloadFile($xetable, opts, content) {
@@ -32803,6 +33020,7 @@ Object.keys(packages_table.methods).forEach(function (name) {
32803
33020
 
32804
33021
  if (false) {}
32805
33022
 
33023
+ this.initPages();
32806
33024
  GlobalEvent.on(this, 'keydown', this.handleGlobalKeydownEvent);
32807
33025
  },
32808
33026
  mounted: function mounted() {
@@ -32811,7 +33029,6 @@ Object.keys(packages_table.methods).forEach(function (name) {
32811
33029
  }
32812
33030
 
32813
33031
  this.initToolbar();
32814
- this.initPages();
32815
33032
  this.initProxy();
32816
33033
  },
32817
33034
  destroyed: function destroyed() {
@@ -36708,6 +36925,7 @@ function renderTitle(h, _vm, item) {
36708
36925
  var compConf = isEnableConf(itemRender) ? v_x_e_table.renderer.get(itemRender.name) : null;
36709
36926
  var params = {
36710
36927
  data: data,
36928
+ field: field,
36711
36929
  property: field,
36712
36930
  item: item,
36713
36931
  $form: _vm
@@ -36802,6 +37020,7 @@ var VxeFormConfigItem = {
36802
37020
  titleOverflow = item.titleOverflow,
36803
37021
  children = item.children;
36804
37022
  var compConf = isEnableConf(itemRender) ? v_x_e_table.renderer.get(itemRender.name) : null;
37023
+ var itemClassName = compConf ? compConf.itemClassName : '';
36805
37024
  var span = item.span || $xeform.span;
36806
37025
  var align = item.align || $xeform.align;
36807
37026
  var titleAlign = external_root_XEUtils_commonjs_xe_utils_commonjs2_xe_utils_amd_xe_utils_default.a.eqNull(item.titleAlign) ? allTitleAlign : item.titleAlign;
@@ -36877,7 +37096,7 @@ var VxeFormConfigItem = {
36877
37096
  mouseleave: $xeform.handleTitleTipLeaveEvent
36878
37097
  } : {};
36879
37098
  return h('div', {
36880
- class: ['vxe-form--item', item.id, span ? "vxe-col--".concat(span, " is--span") : null, className ? external_root_XEUtils_commonjs_xe_utils_commonjs2_xe_utils_amd_xe_utils_default.a.isFunction(className) ? className(params) : className : '', {
37099
+ class: ['vxe-form--item', item.id, span ? "vxe-col--".concat(span, " is--span") : null, className ? external_root_XEUtils_commonjs_xe_utils_commonjs2_xe_utils_amd_xe_utils_default.a.isFunction(className) ? className(params) : className : '', itemClassName ? external_root_XEUtils_commonjs_xe_utils_commonjs2_xe_utils_amd_xe_utils_default.a.isFunction(itemClassName) ? itemClassName(params) : className : '', {
36881
37100
  'is--title': title,
36882
37101
  'is--colon': titleColon,
36883
37102
  'is--asterisk': titleAsterisk,
@@ -37741,6 +37960,7 @@ var form_item_renderItem = function renderItem(h, _vm, item, slots) {
37741
37960
  className = item.className,
37742
37961
  titleOverflow = item.titleOverflow;
37743
37962
  var compConf = isEnableConf(itemRender) ? v_x_e_table.renderer.get(itemRender.name) : null;
37963
+ var itemClassName = compConf ? compConf.itemClassName : '';
37744
37964
  var span = item.span || _vm.span;
37745
37965
  var align = item.align || _vm.align;
37746
37966
  var titleAlign = item.titleAlign || _vm.titleAlign;
@@ -37753,6 +37973,7 @@ var form_item_renderItem = function renderItem(h, _vm, item, slots) {
37753
37973
  var hasEllipsis = showTitle || showTooltip || showEllipsis;
37754
37974
  var params = {
37755
37975
  data: data,
37976
+ field: field,
37756
37977
  property: field,
37757
37978
  item: item,
37758
37979
  $form: _vm
@@ -37792,7 +38013,7 @@ var form_item_renderItem = function renderItem(h, _vm, item, slots) {
37792
38013
  mouseleave: _vm.handleTitleTipLeaveEvent
37793
38014
  } : {};
37794
38015
  return h('div', {
37795
- class: ['vxe-form--item', item.id, span ? "vxe-col--".concat(span, " is--span") : null, className ? external_root_XEUtils_commonjs_xe_utils_commonjs2_xe_utils_amd_xe_utils_default.a.isFunction(className) ? className(params) : className : '', {
38016
+ class: ['vxe-form--item', item.id, span ? "vxe-col--".concat(span, " is--span") : '', className ? external_root_XEUtils_commonjs_xe_utils_commonjs2_xe_utils_amd_xe_utils_default.a.isFunction(className) ? className(params) : className : '', itemClassName ? external_root_XEUtils_commonjs_xe_utils_commonjs2_xe_utils_amd_xe_utils_default.a.isFunction(itemClassName) ? itemClassName(params) : className : '', {
37796
38017
  'is--title': title,
37797
38018
  'is--required': isRequired,
37798
38019
  'is--hidden': visible === false || folding && collapseAll,
@@ -39044,6 +39265,8 @@ var Pulldown = Object.assign(pulldown, {
39044
39265
  operError: '发生错误,操作失败!'
39045
39266
  },
39046
39267
  select: {
39268
+ search: '搜索',
39269
+ loadingText: '加载中',
39047
39270
  emptyText: '暂无数据'
39048
39271
  },
39049
39272
  pager: {