vxe-table 4.1.0 → 4.1.3

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 (72) hide show
  1. package/README.md +1 -0
  2. package/README.zh-TW.md +1 -0
  3. package/es/edit/src/hook.js +2 -2
  4. package/es/export/src/hook.js +24 -0
  5. package/es/export/src/util.js +20 -8
  6. package/es/footer/src/footer.js +4 -4
  7. package/es/form/src/form.js +13 -6
  8. package/es/form/src/render.js +4 -4
  9. package/es/grid/src/grid.js +48 -1
  10. package/es/header/src/header.js +7 -5
  11. package/es/select/src/select.js +5 -5
  12. package/es/table/src/body.js +18 -14
  13. package/es/table/src/cell.js +70 -54
  14. package/es/table/src/props.js +4 -1
  15. package/es/table/src/table.js +208 -97
  16. package/es/v-x-e-table/src/conf.js +2 -3
  17. package/es/validator/src/hook.js +12 -5
  18. package/helper/vetur/attributes.json +16 -8
  19. package/helper/vetur/tags.json +2 -0
  20. package/lib/edit/src/hook.js +2 -2
  21. package/lib/edit/src/hook.min.js +1 -1
  22. package/lib/export/src/hook.js +28 -0
  23. package/lib/export/src/hook.min.js +1 -1
  24. package/lib/export/src/util.js +21 -7
  25. package/lib/export/src/util.min.js +1 -1
  26. package/lib/footer/src/footer.js +4 -4
  27. package/lib/footer/src/footer.min.js +1 -1
  28. package/lib/form/src/form.js +23 -6
  29. package/lib/form/src/form.min.js +1 -1
  30. package/lib/form/src/render.js +4 -4
  31. package/lib/form/src/render.min.js +1 -1
  32. package/lib/grid/src/grid.js +56 -1
  33. package/lib/grid/src/grid.min.js +1 -1
  34. package/lib/header/src/header.js +7 -5
  35. package/lib/header/src/header.min.js +1 -1
  36. package/lib/index.umd.js +536 -220
  37. package/lib/index.umd.min.js +1 -1
  38. package/lib/select/src/select.js +5 -5
  39. package/lib/table/src/body.js +18 -14
  40. package/lib/table/src/body.min.js +1 -1
  41. package/lib/table/src/cell.js +92 -35
  42. package/lib/table/src/cell.min.js +1 -1
  43. package/lib/table/src/props.js +4 -1
  44. package/lib/table/src/props.min.js +1 -1
  45. package/lib/table/src/table.js +265 -133
  46. package/lib/table/src/table.min.js +1 -1
  47. package/lib/v-x-e-table/src/conf.js +2 -3
  48. package/lib/v-x-e-table/src/conf.min.js +1 -1
  49. package/lib/validator/src/hook.js +12 -5
  50. package/lib/validator/src/hook.min.js +1 -1
  51. package/package.json +2 -2
  52. package/packages/edit/src/hook.ts +2 -2
  53. package/packages/export/src/hook.ts +24 -0
  54. package/packages/export/src/util.ts +17 -5
  55. package/packages/footer/src/footer.ts +4 -4
  56. package/packages/form/src/form.ts +10 -6
  57. package/packages/form/src/render.ts +4 -4
  58. package/packages/grid/src/grid.ts +48 -1
  59. package/packages/header/src/header.ts +7 -5
  60. package/packages/select/src/select.ts +5 -5
  61. package/packages/table/src/body.ts +18 -14
  62. package/packages/table/src/cell.ts +77 -44
  63. package/packages/table/src/props.ts +4 -1
  64. package/packages/table/src/table.ts +211 -96
  65. package/packages/v-x-e-table/src/conf.ts +2 -3
  66. package/packages/validator/src/hook.ts +9 -5
  67. package/types/column.d.ts +5 -1
  68. package/types/form-item.d.ts +5 -1
  69. package/types/form.d.ts +5 -1
  70. package/types/modal.d.ts +4 -5
  71. package/types/table.d.ts +49 -14
  72. package/types/validator.d.ts +5 -1
@@ -237,7 +237,7 @@ var _default2 = (0, _vue.defineComponent)({
237
237
  return (0, _vue.nextTick)();
238
238
  };
239
239
 
240
- var updateCache = function updateCache() {
240
+ var cacheItemMap = function cacheItemMap() {
241
241
  var fullOptionList = reactData.fullOptionList,
242
242
  fullGroupList = reactData.fullGroupList;
243
243
  var groupOptionsField = computeGroupOptionsField.value;
@@ -848,21 +848,21 @@ var _default2 = (0, _vue.defineComponent)({
848
848
  reactData.fullOptionList = value || [];
849
849
  }
850
850
 
851
- updateCache();
851
+ cacheItemMap();
852
852
  });
853
853
  (0, _vue.watch)(function () {
854
854
  return props.options;
855
855
  }, function (value) {
856
856
  reactData.fullGroupList = [];
857
857
  reactData.fullOptionList = value || [];
858
- updateCache();
858
+ cacheItemMap();
859
859
  });
860
860
  (0, _vue.watch)(function () {
861
861
  return props.optionGroups;
862
862
  }, function (value) {
863
863
  reactData.fullOptionList = [];
864
864
  reactData.fullGroupList = value || [];
865
- updateCache();
865
+ cacheItemMap();
866
866
  });
867
867
  (0, _vue.onMounted)(function () {
868
868
  (0, _vue.nextTick)(function () {
@@ -875,7 +875,7 @@ var _default2 = (0, _vue.defineComponent)({
875
875
  reactData.fullOptionList = options;
876
876
  }
877
877
 
878
- updateCache();
878
+ cacheItemMap();
879
879
  });
880
880
 
881
881
  _event.GlobalEvent.on($xeselect, 'mousewheel', handleGlobalMousewheelEvent);
@@ -90,7 +90,8 @@ var _default = (0, _vue.defineComponent)({
90
90
  computeRadioOpts = _b.computeRadioOpts,
91
91
  computeTreeOpts = _b.computeTreeOpts,
92
92
  computeCheckboxOpts = _b.computeCheckboxOpts,
93
- computeValidOpts = _b.computeValidOpts;
93
+ computeValidOpts = _b.computeValidOpts,
94
+ computeRowOpts = _b.computeRowOpts;
94
95
 
95
96
  var refElem = (0, _vue.ref)();
96
97
  var refBodyTable = (0, _vue.ref)();
@@ -191,7 +192,6 @@ var _default = (0, _vue.defineComponent)({
191
192
  tooltipConfig = tableProps.tooltipConfig;
192
193
  var tableData = tableReactData.tableData,
193
194
  overflowX = tableReactData.overflowX,
194
- scrollXLoad = tableReactData.scrollXLoad,
195
195
  scrollYLoad = tableReactData.scrollYLoad,
196
196
  currentColumn = tableReactData.currentColumn,
197
197
  mergeList = tableReactData.mergeList,
@@ -203,6 +203,7 @@ var _default = (0, _vue.defineComponent)({
203
203
  var checkboxOpts = computeCheckboxOpts.value;
204
204
  var editOpts = computeEditOpts.value;
205
205
  var tooltipOpts = computeTooltipOpts.value;
206
+ var rowOpts = computeRowOpts.value;
206
207
  var sYOpts = computeSYOpts.value;
207
208
  var type = column.type,
208
209
  cellRender = column.cellRender,
@@ -212,7 +213,8 @@ var _default = (0, _vue.defineComponent)({
212
213
  className = column.className,
213
214
  treeNode = column.treeNode;
214
215
  var actived = editStore.actived;
215
- var rHeight = sYOpts.rHeight;
216
+ var scrollYRHeight = sYOpts.rHeight;
217
+ var rowHeight = rowOpts.height;
216
218
  var showAllTip = tooltipOpts.showAll;
217
219
  var columnIndex = $xetable.getColumnIndex(column);
218
220
 
@@ -255,7 +257,7 @@ var _default = (0, _vue.defineComponent)({
255
257
  items: items
256
258
  }; // 虚拟滚动不支持动态高度
257
259
 
258
- if ((scrollXLoad || scrollYLoad) && !hasEllipsis) {
260
+ if (scrollYLoad && !hasEllipsis) {
259
261
  showEllipsis = hasEllipsis = true;
260
262
  } // hover 进入事件
261
263
 
@@ -376,7 +378,7 @@ var _default = (0, _vue.defineComponent)({
376
378
  'c--ellipsis': showEllipsis
377
379
  }],
378
380
  style: {
379
- maxHeight: hasEllipsis && rHeight ? rHeight + "px" : ''
381
+ maxHeight: hasEllipsis && (scrollYRHeight || rowHeight) ? (scrollYRHeight || rowHeight) + "px" : ''
380
382
  }
381
383
  }));
382
384
  } else {
@@ -388,7 +390,7 @@ var _default = (0, _vue.defineComponent)({
388
390
  'c--ellipsis': showEllipsis
389
391
  }],
390
392
  style: {
391
- maxHeight: hasEllipsis && rHeight ? rHeight + "px" : ''
393
+ maxHeight: hasEllipsis && (scrollYRHeight || rowHeight) ? (scrollYRHeight || rowHeight) + "px" : ''
392
394
  },
393
395
  title: showTitle ? $xetable.getCellLabel(row, column) : null
394
396
  }, column.renderCell(params))]));
@@ -410,12 +412,12 @@ var _default = (0, _vue.defineComponent)({
410
412
  key: columnKey ? column.id : $columnIndex
411
413
  }, attrs), {
412
414
  style: Object.assign({
413
- height: hasEllipsis && rHeight ? rHeight + "px" : ''
415
+ height: hasEllipsis && (scrollYRHeight || rowHeight) ? (scrollYRHeight || rowHeight) + "px" : ''
414
416
  }, cellStyle ? _xeUtils.default.isFunction(cellStyle) ? cellStyle(params) : cellStyle : null)
415
417
  }), tdOns), tdVNs);
416
418
  };
417
419
 
418
- var renderRows = function renderRows($seq, rowLevel, fixedType, tableData, tableColumn) {
420
+ var renderRows = function renderRows($seq, fixedType, tableData, tableColumn) {
419
421
  var stripe = tableProps.stripe,
420
422
  rowKey = tableProps.rowKey,
421
423
  highlightHoverRow = tableProps.highlightHoverRow,
@@ -431,7 +433,8 @@ var _default = (0, _vue.defineComponent)({
431
433
  rowExpandeds = tableReactData.rowExpandeds,
432
434
  expandColumn = tableReactData.expandColumn,
433
435
  selectRow = tableReactData.selectRow;
434
- var scrollYStore = tableInternalData.scrollYStore;
436
+ var fullAllDataRowIdData = tableInternalData.fullAllDataRowIdData,
437
+ scrollYStore = tableInternalData.scrollYStore;
435
438
  var checkboxOpts = computeCheckboxOpts.value;
436
439
  var radioOpts = computeRadioOpts.value;
437
440
  var treeOpts = computeTreeOpts.value;
@@ -473,6 +476,8 @@ var _default = (0, _vue.defineComponent)({
473
476
  }
474
477
 
475
478
  var rowid = (0, _util.getRowid)($xetable, row);
479
+ var rest = fullAllDataRowIdData[rowid];
480
+ var rowLevel = rest ? rest.level : 0;
476
481
  var params = {
477
482
  $table: $xetable,
478
483
  $seq: $seq,
@@ -548,11 +553,11 @@ var _default = (0, _vue.defineComponent)({
548
553
  } // 如果是树形表格
549
554
 
550
555
 
551
- if (treeConfig && treeExpandeds.length) {
556
+ if (treeConfig && !scrollYLoad && treeExpandeds.length) {
552
557
  var rowChildren = row[treeOpts.children];
553
558
 
554
559
  if (rowChildren && rowChildren.length && $xetable.findRowIndexOf(treeExpandeds, row) > -1) {
555
- rows.push.apply(rows, renderRows($seq ? $seq + "." + seq : "" + seq, rowLevel + 1, fixedType, rowChildren, tableColumn));
560
+ rows.push.apply(rows, renderRows($seq ? $seq + "." + seq : "" + seq, fixedType, rowChildren, tableColumn));
556
561
  }
557
562
  }
558
563
  });
@@ -825,7 +830,6 @@ var _default = (0, _vue.defineComponent)({
825
830
  mouseConfig = tableProps.mouseConfig;
826
831
  var tableData = tableReactData.tableData,
827
832
  mergeList = tableReactData.mergeList,
828
- scrollXLoad = tableReactData.scrollXLoad,
829
833
  scrollYLoad = tableReactData.scrollYLoad,
830
834
  isAllOverflow = tableReactData.isAllOverflow;
831
835
  var visibleColumn = tableInternalData.visibleColumn;
@@ -838,7 +842,7 @@ var _default = (0, _vue.defineComponent)({
838
842
  // 如果是使用优化模式
839
843
 
840
844
  if (fixedType) {
841
- if (scrollXLoad || scrollYLoad || (allColumnOverflow ? isAllOverflow : allColumnOverflow)) {
845
+ if (scrollYLoad || (allColumnOverflow ? isAllOverflow : allColumnOverflow)) {
842
846
  if (!mergeList.length && !spanMethod && !(keyboardConfig && keyboardOpts.isMerge)) {
843
847
  tableColumn = fixedColumn;
844
848
  } else {
@@ -911,7 +915,7 @@ var _default = (0, _vue.defineComponent)({
911
915
  */
912
916
  (0, _vue.h)('tbody', {
913
917
  ref: refBodyTBody
914
- }, renderRows('', 0, fixedType, tableData, tableColumn))]), (0, _vue.h)('div', {
918
+ }, renderRows('', fixedType, tableData, tableColumn))]), (0, _vue.h)('div', {
915
919
  class: 'vxe-table--checkbox-range'
916
920
  }), mouseConfig && mouseOpts.area ? (0, _vue.h)('div', {
917
921
  class: 'vxe-table--cell-area'
@@ -1 +1 @@
1
- "use strict";Object.defineProperty(exports,"__esModule",{value:!0}),exports.default=void 0;var _vue=require("vue"),_xeUtils=_interopRequireDefault(require("xe-utils")),_conf=_interopRequireDefault(require("../../v-x-e-table/src/conf")),_vXETable=require("../../v-x-e-table"),_util=require("./util"),_dom=require("../../tools/dom"),_utils=require("../../tools/utils");function _interopRequireDefault(e){return e&&e.__esModule?e:{default:e}}var __assign=function(){return(__assign=Object.assign||function(e){for(var l,t=1,o=arguments.length;t<o;t++)for(var r in l=arguments[t])Object.prototype.hasOwnProperty.call(l,r)&&(e[r]=l[r]);return e}).apply(this,arguments)},__spreadArray=function(e,l){for(var t=0,o=l.length,r=e.length;t<o;t++,r++)e[r]=l[t];return e},renderType="body",lineOffsetSizes={mini:3,small:2,medium:1},_default=(0,_vue.defineComponent)({name:"VxeTableBody",props:{tableData:Array,tableColumn:Array,fixedColumn:Array,fixedType:{type:String,default:null}},setup:function(_){function i(){if(l){var e=l.value;if(e)return lineOffsetSizes[e]||0}return 0}function s(e,l){var t=e[u.value.children],o=1;if(ae.isTreeExpandByRow(e))for(var r=0;r<t.length;r++)o+=s(t[r],l);return o}function re(e,l,t){var o=t.column,r=ne.treeConfig,a=u.value,n=o.slots,o=o.treeNode;return n&&n.line?ae.callSlot(n.line,t):r&&o&&a.line?[(0,_vue.h)("div",{class:"vxe-tree--line-wrapper"},[(0,_vue.h)("div",{class:"vxe-tree--line",style:{height:(r=l,l=(o=t).$rowIndex,t=1,l&&(t=s(r[l-1],o)),ie.rowHeight*t-(l?1:12-i())+"px"),left:e*a.indent+(e?2-i():0)+16+"px"}})])]:[]}function q(c,d,v,p,f){var h=ne.stripe,x=ne.rowKey,g=ne.highlightHoverRow,_=ne.rowClassName,m=ne.rowStyle,y=ne.showOverflow,w=ne.editConfig,b=ne.treeConfig,T=ie.hasFixedColumn,S=ie.treeExpandeds,C=ie.scrollYLoad,L=ie.editStore,O=ie.rowExpandeds,R=ie.expandColumn,E=ie.selectRow,I=se.scrollYStore,$=ve.value,M=t.value,H=u.value,D=ue.value,k=[];return p.forEach(function(t,o){var e={},r=o+1;C&&(r+=I.startIndex);var a=ae.getVTRowIndex(t),n=ae.getRowIndex(t);g&&(e.onMouseenter=function(e){fe()||ae.triggerHoverEvent(e,{row:t,rowIndex:n})},e.onMouseleave=function(){fe()||ae.clearHoverRow()});var l,i=(0,_util.getRowid)(ae,t),s={$table:ae,$seq:c,seq:r,rowid:i,fixed:v,type:renderType,level:d,row:t,rowIndex:n,$rowIndex:o,_rowIndex:a},u=!1;w&&(u=-1<ae.findRowIndexOf(L.insertList,t)),k.push((0,_vue.h)("tr",__assign({class:["vxe-body--row",{"row--stripe":h&&(ae.getVTRowIndex(t)+1)%2==0,"is--new":u,"row--new":u&&(D.showStatus||D.showInsertStatus),"row--radio":M.highlight&&E===t,"row--checked":$.highlight&&ae.isCheckedByCheckboxRow(t)},_?_xeUtils.default.isFunction(_)?_(s):_:""],rowid:i,style:m?_xeUtils.default.isFunction(m)?m(s):m:null,key:x||b?i:o},e),f.map(function(e,l){return B(c,r,i,v,d,t,n,o,a,e,l,f,p)}))),R&&O.length&&-1<ae.findRowIndexOf(O,t)&&(u=void 0,b&&(u={paddingLeft:d*H.indent+30+"px"}),l=R.showOverflow,s=_xeUtils.default.isUndefined(l)||_xeUtils.default.isNull(l)?y:l,l={$table:ae,$seq:c,seq:r,column:R,fixed:v,type:renderType,level:d,row:t,rowIndex:n,$rowIndex:o,_rowIndex:a},k.push((0,_vue.h)("tr",__assign({class:"vxe-body--expanded-row",key:"expand_"+i,style:m?_xeUtils.default.isFunction(m)?m(l):m:null},e),[(0,_vue.h)("td",{class:["vxe-body--expanded-column",{"fixed--hidden":v&&!T,"col--ellipsis":s}],colspan:f.length},[(0,_vue.h)("div",{class:"vxe-body--expanded-cell",style:u},[R.renderData(l)])])]))),b&&S.length&&((l=t[H.children])&&l.length&&-1<ae.findRowIndexOf(S,t)&&k.push.apply(k,q(c?c+"."+r:""+r,d+1,v,l,f)))}),k}function g(e,l,t){(l||t)&&(l&&((0,_util.removeScrollListener)(l),l.scrollTop=e),t&&((0,_util.removeScrollListener)(t),t.scrollTop=e),clearTimeout(r),r=setTimeout(function(){(0,_util.restoreScrollListener)(l),(0,_util.restoreScrollListener)(t)},300))}function o(e){var l=_.fixedType,t=ne.highlightHoverRow,o=ie.scrollXLoad,r=ie.scrollYLoad,a=se.elemStore,n=se.lastScrollTop,i=se.lastScrollLeft,s=b.value,u=T.value,c=S.value,d=C.value,v=L.value,p=O.value,f=$.value,h=s?s.$el:null,x=c?c.$el:null,s=u.$el,c=d?d.$el:null,u=v?v.$el:null,d=a["main-body-ySpace"],v=a["main-body-xSpace"],a=d?d.clientHeight:0,d=v?v.clientWidth:0,v=f.scrollTop,i=(f=s.scrollLeft)!==i,n=v!==n;se.lastScrollTop=v,se.lastScrollLeft=f,se.lastScrollTime=Date.now(),t&&ae.clearHoverRow(),c&&"left"===l?(v=c.scrollTop,g(v,s,u)):u&&"right"===l?(v=u.scrollTop,g(v,s,c)):(i&&(h&&(h.scrollLeft=s.scrollLeft),x&&(x.scrollLeft=s.scrollLeft)),(c||u)&&(ae.checkScrolling(),n&&g(v,c,u))),o&&i&&ae.triggerScrollXEvent(e),r&&n&&ae.triggerScrollYEvent(e),i&&p&&p.reactData.visible&&p.updatePlacement(),ae.dispatchEvent("scroll",{type:renderType,fixed:l,scrollTop:v,scrollLeft:f,bodyHeight:a,bodyWidth:d,isX:i,isY:n},e)}function m(e){var l=e.deltaY,t=e.deltaX,o=ne.highlightHoverRow,r=ie.scrollYLoad,a=se.lastScrollTop,n=se.lastScrollLeft,i=T.value,s=$.value,u=i.$el,i=_dom.browse.firefox?40*l:l,l=_dom.browse.firefox?40*t:t;((t=i<0)?s.scrollTop<=0:s.scrollTop>=s.scrollHeight-s.clientHeight)||(s=s.scrollTop+i,n=(l=u.scrollLeft+l)!==n,(a=s!==a)&&(e.preventDefault(),se.lastScrollTop=s,se.lastScrollLeft=l,se.lastScrollTime=Date.now(),o&&ae.clearHoverRow(),c(e,t,i,n,a),r&&ae.triggerScrollYEvent(e)))}var r,f,ae=(0,_vue.inject)("$xetable",{}),l=(0,_vue.inject)("xesize",null),y=ae.xID,ne=ae.props,w=ae.context,ie=ae.reactData,se=ae.internalData,e=ae.getRefMaps(),b=e.refTableHeader,T=e.refTableBody,S=e.refTableFooter,C=e.refTableLeftBody,L=e.refTableRightBody,O=e.refValidTooltip,e=ae.getComputeMaps(),ue=e.computeEditOpts,R=e.computeMouseOpts,ce=e.computeSYOpts,E=e.computeEmptyOpts,I=e.computeKeyboardOpts,de=e.computeTooltipOpts,t=e.computeRadioOpts,u=e.computeTreeOpts,ve=e.computeCheckboxOpts,pe=e.computeValidOpts,$=(0,_vue.ref)(),M=(0,_vue.ref)(),H=(0,_vue.ref)(),D=(0,_vue.ref)(),k=(0,_vue.ref)(),U=(0,_vue.ref)(),Y=(0,_vue.ref)(),fe=function(){var e=ne.delayHover,l=se.lastScrollTime;return se._isResize||l&&Date.now()<l+e},B=function(e,l,t,o,r,a,n,i,s,u,c,d,v){var p,f=ne.columnKey,h=ne.height,x=ne.showOverflow,g=ne.cellClassName,_=ne.cellStyle,m=ne.align,y=ne.spanMethod,w=ne.mouseConfig,b=ne.editConfig,T=ne.editRules,S=ne.tooltipConfig,C=ie.tableData,L=ie.overflowX,O=ie.scrollXLoad,R=ie.scrollYLoad,E=ie.currentColumn,I=ie.mergeList,$=ie.editStore,M=ie.validStore,H=ie.isAllOverflow,D=se.afterFullData,k=pe.value,q=ve.value,U=ue.value,Y=de.value,B=ce.value,X=u.type,A=u.cellRender,j=u.editRender,N=u.align,V=u.showOverflow,F=u.className,W=u.treeNode,P=$.actived,z=B.rHeight,K=Y.showAll,G=ae.getColumnIndex(u),J=ae.getVTColumnIndex(u),$=(0,_utils.isEnableConf)(j),B=o?u.fixed!==o:u.fixed&&L,Y=_xeUtils.default.isUndefined(V)||_xeUtils.default.isNull(V)?x:V,L="ellipsis"===Y,Q="title"===Y,Z=!0===Y||"tooltip"===Y,V=Q||Z||L,Y={},N=N||m,m=M.row===a&&M.column===u,h=T&&k.showMessage&&("default"===k.message?h||1<C.length:"inline"===k.message),k={colid:u.id},ee={$table:ae,$seq:e,seq:l,rowid:t,row:a,rowIndex:n,$rowIndex:i,_rowIndex:s,column:u,columnIndex:G,$columnIndex:c,_columnIndex:J,fixed:o,type:renderType,isHidden:B,level:r,visibleData:D,data:C,items:v};if(!O&&!R||V||(L=V=!0),(Q||Z||K||S)&&(Y.onMouseenter=function(e){fe()||(Q?(0,_dom.updateCellTitle)(e.currentTarget,u):(Z||K)&&ae.triggerBodyTooltipEvent(e,ee),ae.dispatchEvent("cell-mouseenter",Object.assign({cell:e.currentTarget},ee),e))}),(Z||K||S)&&(Y.onMouseleave=function(e){fe()||((Z||K)&&ae.handleTargetLeaveEvent(e),ae.dispatchEvent("cell-mouseleave",Object.assign({cell:e.currentTarget},ee),e))}),(q.range||w)&&(Y.onMousedown=function(e){ae.triggerCellMousedownEvent(e,ee)}),Y.onClick=function(e){ae.triggerCellClickEvent(e,ee)},Y.onDblclick=function(e){ae.triggerCellDblclickEvent(e,ee)},I.length){var le=(0,_util.mergeBodyMethod)(I,s,J);if(le){var te=le.rowspan,oe=le.colspan;if(!te||!oe)return null;1<te&&(k.rowspan=te),1<oe&&(k.colspan=oe)}}else if(y){le=y(ee)||{},y=le.rowspan,te=void 0===y?1:y,le=le.colspan,oe=void 0===le?1:le;if(!te||!oe)return null;1<te&&(k.rowspan=te),1<oe&&(k.colspan=oe)}!(B=B&&I&&(1<k.colspan||1<k.rowspan)?!1:B)&&b&&(j||A)&&(U.showStatus||U.showUpdateStatus)&&(p=ae.isUpdateByRow(a,u.property));A=[];return B&&x&&H?A.push((0,_vue.h)("div",{class:["vxe-cell",{"c--title":Q,"c--tooltip":Z,"c--ellipsis":L}],style:{maxHeight:V&&z?z+"px":""}})):(A.push.apply(A,__spreadArray(__spreadArray([],re(r,v,ee)),[(0,_vue.h)("div",{class:["vxe-cell",{"c--title":Q,"c--tooltip":Z,"c--ellipsis":L}],style:{maxHeight:V&&z?z+"px":""},title:Q?ae.getCellLabel(a,u):null},u.renderCell(ee))])),h&&m&&A.push((0,_vue.h)("div",{class:"vxe-cell--valid",style:M.rule&&M.rule.maxWidth?{width:M.rule.maxWidth+"px"}:null},[(0,_vue.h)("span",{class:"vxe-cell--valid-msg"},M.content)]))),(0,_vue.h)("td",__assign(__assign(__assign({class:["vxe-body--column",u.id,((M={})["col--"+N]=N,M["col--"+X]=X,M["col--last"]=c===d.length-1,M["col--tree-node"]=W,M["col--edit"]=$,M["col--ellipsis"]=V,M["fixed--hidden"]=B,M["col--dirty"]=p,M["col--actived"]=b&&$&&P.row===a&&(P.column===u||"row"===U.mode),M["col--valid-error"]=m,M["col--current"]=E===u,M),(0,_util.getPropClass)(F,ee),(0,_util.getPropClass)(g,ee)],key:f?u.id:c},k),{style:Object.assign({height:V&&z?z+"px":""},_?_xeUtils.default.isFunction(_)?_(ee):_:null)}),Y),A)},h=0,x=0,X=0,A=!1,c=function(a,n,e,i,s){var l=se.elemStore,t=T.value,o=C.value,r=L.value,u=o?o.$el:null,c=r?r.$el:null,d=t.$el,t=l["main-body-ySpace"],l=l["main-body-xSpace"],v=t?t.clientHeight:0,p=l?l.clientWidth:0,l=A===n?Math.max(0,h-X):0;A=n,h=Math.abs(n?e-l:e+l),X=x=0,clearTimeout(f),function e(){var l,t,o,r;X<h&&(l=_.fixedType,x=Math.max(5,Math.floor(1.5*x)),h<(X+=x)&&(x-=X-h),r=d.scrollTop,t=d.clientHeight,o=d.scrollHeight,r=r+x*(n?-1:1),d.scrollTop=r,u&&(u.scrollTop=r),c&&(c.scrollTop=r),(n?r<o-t:0<=r)&&(f=setTimeout(e,10)),ae.dispatchEvent("scroll",{type:renderType,fixed:l,scrollTop:d.scrollTop,scrollLeft:d.scrollLeft,bodyHeight:v,bodyWidth:p,isX:i,isY:s},a))}()};(0,_vue.onMounted)(function(){(0,_vue.nextTick)(function(){var e=_.fixedType,l=se.elemStore,t=(e||"main")+"-body-",e=$.value;l[t+"wrapper"]=$.value,l[t+"table"]=M.value,l[t+"colgroup"]=H.value,l[t+"list"]=D.value,l[t+"xSpace"]=k.value,l[t+"ySpace"]=U.value,l[t+"emptyBlock"]=Y.value,e.onscroll=o,e._onscroll=o})}),(0,_vue.onBeforeUnmount)(function(){var e=$.value;clearTimeout(f),e._onscroll=null,e.onscroll=null});return function(){var e=_.fixedColumn,l=_.fixedType,t=_.tableColumn,o=ne.keyboardConfig,r=ne.showOverflow,a=ne.spanMethod,n=ne.mouseConfig,i=ie.tableData,s=ie.mergeList,u=ie.scrollXLoad,c=ie.scrollYLoad,d=ie.isAllOverflow,v=se.visibleColumn,p=w.slots,f=ce.value,h=E.value,x=I.value,g=R.value;return l&&(t=!(u||c||r&&d)||s.length||a||o&&x.isMerge?v:e),h=p.empty?ae.callSlot(p.empty,{$table:ae}):(p=(p=h.name?_vXETable.VXETable.renderer.get(h.name):null)?p.renderEmpty:null)?p(h,{$table:ae}):ne.emptyText||_conf.default.i18n("vxe.table.emptyText"),(0,_vue.h)("div",__assign({ref:$,class:["vxe-table--body-wrapper",l?"fixed-"+l+"--wrapper":"body--wrapper"],xid:y},c&&"wheel"===f.mode?{onWheel:m}:{}),[l?(0,_vue.createCommentVNode)():(0,_vue.h)("div",{ref:k,class:"vxe-body--x-space"}),(0,_vue.h)("div",{ref:U,class:"vxe-body--y-space"}),(0,_vue.h)("table",{ref:M,class:"vxe-table--body",xid:y,cellspacing:0,cellpadding:0,border:0},[(0,_vue.h)("colgroup",{ref:H},t.map(function(e,l){return(0,_vue.h)("col",{name:e.id,key:l})})),(0,_vue.h)("tbody",{ref:D},q("",0,l,i,t))]),(0,_vue.h)("div",{class:"vxe-table--checkbox-range"}),n&&g.area?(0,_vue.h)("div",{class:"vxe-table--cell-area"},[(0,_vue.h)("span",{class:"vxe-table--cell-main-area"},g.extension?[(0,_vue.h)("span",{class:"vxe-table--cell-main-area-btn",onMousedown:function(e){ae.triggerCellExtendMousedownEvent(e,{$table:ae,fixed:l,type:renderType})}})]:[]),(0,_vue.h)("span",{class:"vxe-table--cell-copy-area"}),(0,_vue.h)("span",{class:"vxe-table--cell-extend-area"}),(0,_vue.h)("span",{class:"vxe-table--cell-multi-area"}),(0,_vue.h)("span",{class:"vxe-table--cell-active-area"})]):null,l?null:(0,_vue.h)("div",{class:"vxe-table--empty-block",ref:Y},[(0,_vue.h)("div",{class:"vxe-table--empty-content"},h)])])}}});exports.default=_default;
1
+ "use strict";Object.defineProperty(exports,"__esModule",{value:!0}),exports.default=void 0;var _vue=require("vue"),_xeUtils=_interopRequireDefault(require("xe-utils")),_conf=_interopRequireDefault(require("../../v-x-e-table/src/conf")),_vXETable=require("../../v-x-e-table"),_util=require("./util"),_dom=require("../../tools/dom"),_utils=require("../../tools/utils");function _interopRequireDefault(e){return e&&e.__esModule?e:{default:e}}var __assign=function(){return(__assign=Object.assign||function(e){for(var l,t=1,o=arguments.length;t<o;t++)for(var r in l=arguments[t])Object.prototype.hasOwnProperty.call(l,r)&&(e[r]=l[r]);return e}).apply(this,arguments)},__spreadArray=function(e,l){for(var t=0,o=l.length,r=e.length;t<o;t++,r++)e[r]=l[t];return e},renderType="body",lineOffsetSizes={mini:3,small:2,medium:1},_default=(0,_vue.defineComponent)({name:"VxeTableBody",props:{tableData:Array,tableColumn:Array,fixedColumn:Array,fixedType:{type:String,default:null}},setup:function(g){function i(){if(l){var e=l.value;if(e)return lineOffsetSizes[e]||0}return 0}function s(e,l){var t=e[u.value.children],o=1;if(ae.isTreeExpandByRow(e))for(var r=0;r<t.length;r++)o+=s(t[r],l);return o}function re(e,l,t){var o=t.column,r=ne.treeConfig,a=u.value,n=o.slots,o=o.treeNode;return n&&n.line?ae.callSlot(n.line,t):r&&o&&a.line?[(0,_vue.h)("div",{class:"vxe-tree--line-wrapper"},[(0,_vue.h)("div",{class:"vxe-tree--line",style:{height:(r=l,l=(o=t).$rowIndex,t=1,l&&(t=s(r[l-1],o)),ie.rowHeight*t-(l?1:12-i())+"px"),left:e*a.indent+(e?2-i():0)+16+"px"}})])]:[]}function U(d,v,p,f){var h=ne.stripe,x=ne.rowKey,g=ne.highlightHoverRow,_=ne.rowClassName,m=ne.rowStyle,y=ne.showOverflow,w=ne.editConfig,b=ne.treeConfig,T=ie.hasFixedColumn,S=ie.treeExpandeds,C=ie.scrollYLoad,L=ie.editStore,O=ie.rowExpandeds,R=ie.expandColumn,E=ie.selectRow,I=se.fullAllDataRowIdData,$=se.scrollYStore,M=ve.value,H=t.value,D=u.value,k=ue.value,q=[];return p.forEach(function(t,o){var e={},r=o+1;C&&(r+=$.startIndex);var a=ae.getVTRowIndex(t),n=ae.getRowIndex(t);g&&(e.onMouseenter=function(e){he()||ae.triggerHoverEvent(e,{row:t,rowIndex:n})},e.onMouseleave=function(){he()||ae.clearHoverRow()});var l,i=(0,_util.getRowid)(ae,t),s=I[i],u=s?s.level:0,c={$table:ae,$seq:d,seq:r,rowid:i,fixed:v,type:renderType,level:u,row:t,rowIndex:n,$rowIndex:o,_rowIndex:a},s=!1;w&&(s=-1<ae.findRowIndexOf(L.insertList,t)),q.push((0,_vue.h)("tr",__assign({class:["vxe-body--row",{"row--stripe":h&&(ae.getVTRowIndex(t)+1)%2==0,"is--new":s,"row--new":s&&(k.showStatus||k.showInsertStatus),"row--radio":H.highlight&&E===t,"row--checked":M.highlight&&ae.isCheckedByCheckboxRow(t)},_?_xeUtils.default.isFunction(_)?_(c):_:""],rowid:i,style:m?_xeUtils.default.isFunction(m)?m(c):m:null,key:x||b?i:o},e),f.map(function(e,l){return B(d,r,i,v,u,t,n,o,a,e,l,f,p)}))),R&&O.length&&-1<ae.findRowIndexOf(O,t)&&(s=void 0,b&&(s={paddingLeft:u*D.indent+30+"px"}),l=R.showOverflow,c=_xeUtils.default.isUndefined(l)||_xeUtils.default.isNull(l)?y:l,l={$table:ae,$seq:d,seq:r,column:R,fixed:v,type:renderType,level:u,row:t,rowIndex:n,$rowIndex:o,_rowIndex:a},q.push((0,_vue.h)("tr",__assign({class:"vxe-body--expanded-row",key:"expand_"+i,style:m?_xeUtils.default.isFunction(m)?m(l):m:null},e),[(0,_vue.h)("td",{class:["vxe-body--expanded-column",{"fixed--hidden":v&&!T,"col--ellipsis":c}],colspan:f.length},[(0,_vue.h)("div",{class:"vxe-body--expanded-cell",style:s},[R.renderData(l)])])]))),!b||C||!S.length||(l=t[D.children])&&l.length&&-1<ae.findRowIndexOf(S,t)&&q.push.apply(q,U(d?d+"."+r:""+r,v,l,f))}),q}function _(e,l,t){(l||t)&&(l&&((0,_util.removeScrollListener)(l),l.scrollTop=e),t&&((0,_util.removeScrollListener)(t),t.scrollTop=e),clearTimeout(r),r=setTimeout(function(){(0,_util.restoreScrollListener)(l),(0,_util.restoreScrollListener)(t)},300))}function o(e){var l=g.fixedType,t=ne.highlightHoverRow,o=ie.scrollXLoad,r=ie.scrollYLoad,a=se.elemStore,n=se.lastScrollTop,i=se.lastScrollLeft,s=b.value,u=T.value,c=S.value,d=C.value,v=L.value,p=O.value,f=$.value,h=s?s.$el:null,x=c?c.$el:null,s=u.$el,c=d?d.$el:null,u=v?v.$el:null,d=a["main-body-ySpace"],v=a["main-body-xSpace"],a=d?d.clientHeight:0,d=v?v.clientWidth:0,v=f.scrollTop,i=(f=s.scrollLeft)!==i,n=v!==n;se.lastScrollTop=v,se.lastScrollLeft=f,se.lastScrollTime=Date.now(),t&&ae.clearHoverRow(),c&&"left"===l?(v=c.scrollTop,_(v,s,u)):u&&"right"===l?(v=u.scrollTop,_(v,s,c)):(i&&(h&&(h.scrollLeft=s.scrollLeft),x&&(x.scrollLeft=s.scrollLeft)),(c||u)&&(ae.checkScrolling(),n&&_(v,c,u))),o&&i&&ae.triggerScrollXEvent(e),r&&n&&ae.triggerScrollYEvent(e),i&&p&&p.reactData.visible&&p.updatePlacement(),ae.dispatchEvent("scroll",{type:renderType,fixed:l,scrollTop:v,scrollLeft:f,bodyHeight:a,bodyWidth:d,isX:i,isY:n},e)}function m(e){var l=e.deltaY,t=e.deltaX,o=ne.highlightHoverRow,r=ie.scrollYLoad,a=se.lastScrollTop,n=se.lastScrollLeft,i=T.value,s=$.value,u=i.$el,i=_dom.browse.firefox?40*l:l,l=_dom.browse.firefox?40*t:t;((t=i<0)?s.scrollTop<=0:s.scrollTop>=s.scrollHeight-s.clientHeight)||(s=s.scrollTop+i,n=(l=u.scrollLeft+l)!==n,(a=s!==a)&&(e.preventDefault(),se.lastScrollTop=s,se.lastScrollLeft=l,se.lastScrollTime=Date.now(),o&&ae.clearHoverRow(),c(e,t,i,n,a),r&&ae.triggerScrollYEvent(e)))}var r,f,ae=(0,_vue.inject)("$xetable",{}),l=(0,_vue.inject)("xesize",null),y=ae.xID,ne=ae.props,w=ae.context,ie=ae.reactData,se=ae.internalData,e=ae.getRefMaps(),b=e.refTableHeader,T=e.refTableBody,S=e.refTableFooter,C=e.refTableLeftBody,L=e.refTableRightBody,O=e.refValidTooltip,e=ae.getComputeMaps(),ue=e.computeEditOpts,R=e.computeMouseOpts,ce=e.computeSYOpts,E=e.computeEmptyOpts,I=e.computeKeyboardOpts,de=e.computeTooltipOpts,t=e.computeRadioOpts,u=e.computeTreeOpts,ve=e.computeCheckboxOpts,pe=e.computeValidOpts,fe=e.computeRowOpts,$=(0,_vue.ref)(),M=(0,_vue.ref)(),H=(0,_vue.ref)(),D=(0,_vue.ref)(),k=(0,_vue.ref)(),q=(0,_vue.ref)(),Y=(0,_vue.ref)(),he=function(){var e=ne.delayHover,l=se.lastScrollTime;return se._isResize||l&&Date.now()<l+e},B=function(e,l,t,o,r,a,n,i,s,u,c,d,v){var p,f=ne.columnKey,h=ne.height,x=ne.showOverflow,g=ne.cellClassName,_=ne.cellStyle,m=ne.align,y=ne.spanMethod,w=ne.mouseConfig,b=ne.editConfig,T=ne.editRules,S=ne.tooltipConfig,C=ie.tableData,L=ie.overflowX,O=ie.scrollYLoad,R=ie.currentColumn,E=ie.mergeList,I=ie.editStore,$=ie.validStore,M=ie.isAllOverflow,H=se.afterFullData,D=pe.value,k=ve.value,q=ue.value,U=de.value,Y=fe.value,B=ce.value,A=u.type,X=u.cellRender,j=u.editRender,N=u.align,V=u.showOverflow,F=u.className,W=u.treeNode,P=I.actived,z=B.rHeight,K=Y.height,G=U.showAll,J=ae.getColumnIndex(u),I=ae.getVTColumnIndex(u),B=(0,_utils.isEnableConf)(j),Y=o?u.fixed!==o:u.fixed&&L,U=_xeUtils.default.isUndefined(V)||_xeUtils.default.isNull(V)?x:V,L="ellipsis"===U,Q="title"===U,Z=!0===U||"tooltip"===U,V=Q||Z||L,U={},N=N||m,m=$.row===a&&$.column===u,h=T&&D.showMessage&&("default"===D.message?h||1<C.length:"inline"===D.message),D={colid:u.id},ee={$table:ae,$seq:e,seq:l,rowid:t,row:a,rowIndex:n,$rowIndex:i,_rowIndex:s,column:u,columnIndex:J,$columnIndex:c,_columnIndex:I,fixed:o,type:renderType,isHidden:Y,level:r,visibleData:H,data:C,items:v};if(O&&!V&&(L=V=!0),(Q||Z||G||S)&&(U.onMouseenter=function(e){he()||(Q?(0,_dom.updateCellTitle)(e.currentTarget,u):(Z||G)&&ae.triggerBodyTooltipEvent(e,ee),ae.dispatchEvent("cell-mouseenter",Object.assign({cell:e.currentTarget},ee),e))}),(Z||G||S)&&(U.onMouseleave=function(e){he()||((Z||G)&&ae.handleTargetLeaveEvent(e),ae.dispatchEvent("cell-mouseleave",Object.assign({cell:e.currentTarget},ee),e))}),(k.range||w)&&(U.onMousedown=function(e){ae.triggerCellMousedownEvent(e,ee)}),U.onClick=function(e){ae.triggerCellClickEvent(e,ee)},U.onDblclick=function(e){ae.triggerCellDblclickEvent(e,ee)},E.length){var le=(0,_util.mergeBodyMethod)(E,s,I);if(le){var te=le.rowspan,oe=le.colspan;if(!te||!oe)return null;1<te&&(D.rowspan=te),1<oe&&(D.colspan=oe)}}else if(y){le=y(ee)||{},y=le.rowspan,te=void 0===y?1:y,le=le.colspan,oe=void 0===le?1:le;if(!te||!oe)return null;1<te&&(D.rowspan=te),1<oe&&(D.colspan=oe)}!(Y=Y&&E&&(1<D.colspan||1<D.rowspan)?!1:Y)&&b&&(j||X)&&(q.showStatus||q.showUpdateStatus)&&(p=ae.isUpdateByRow(a,u.property));X=[];return Y&&x&&M?X.push((0,_vue.h)("div",{class:["vxe-cell",{"c--title":Q,"c--tooltip":Z,"c--ellipsis":L}],style:{maxHeight:V&&(z||K)?(z||K)+"px":""}})):(X.push.apply(X,__spreadArray(__spreadArray([],re(r,v,ee)),[(0,_vue.h)("div",{class:["vxe-cell",{"c--title":Q,"c--tooltip":Z,"c--ellipsis":L}],style:{maxHeight:V&&(z||K)?(z||K)+"px":""},title:Q?ae.getCellLabel(a,u):null},u.renderCell(ee))])),h&&m&&X.push((0,_vue.h)("div",{class:"vxe-cell--valid",style:$.rule&&$.rule.maxWidth?{width:$.rule.maxWidth+"px"}:null},[(0,_vue.h)("span",{class:"vxe-cell--valid-msg"},$.content)]))),(0,_vue.h)("td",__assign(__assign(__assign({class:["vxe-body--column",u.id,(($={})["col--"+N]=N,$["col--"+A]=A,$["col--last"]=c===d.length-1,$["col--tree-node"]=W,$["col--edit"]=B,$["col--ellipsis"]=V,$["fixed--hidden"]=Y,$["col--dirty"]=p,$["col--actived"]=b&&B&&P.row===a&&(P.column===u||"row"===q.mode),$["col--valid-error"]=m,$["col--current"]=R===u,$),(0,_util.getPropClass)(F,ee),(0,_util.getPropClass)(g,ee)],key:f?u.id:c},D),{style:Object.assign({height:V&&(z||K)?(z||K)+"px":""},_?_xeUtils.default.isFunction(_)?_(ee):_:null)}),U),X)},h=0,x=0,A=0,X=!1,c=function(a,n,e,i,s){var l=se.elemStore,t=T.value,o=C.value,r=L.value,u=o?o.$el:null,c=r?r.$el:null,d=t.$el,t=l["main-body-ySpace"],l=l["main-body-xSpace"],v=t?t.clientHeight:0,p=l?l.clientWidth:0,l=X===n?Math.max(0,h-A):0;X=n,h=Math.abs(n?e-l:e+l),A=x=0,clearTimeout(f),function e(){var l,t,o,r;A<h&&(l=g.fixedType,x=Math.max(5,Math.floor(1.5*x)),h<(A+=x)&&(x-=A-h),r=d.scrollTop,t=d.clientHeight,o=d.scrollHeight,r=r+x*(n?-1:1),d.scrollTop=r,u&&(u.scrollTop=r),c&&(c.scrollTop=r),(n?r<o-t:0<=r)&&(f=setTimeout(e,10)),ae.dispatchEvent("scroll",{type:renderType,fixed:l,scrollTop:d.scrollTop,scrollLeft:d.scrollLeft,bodyHeight:v,bodyWidth:p,isX:i,isY:s},a))}()};(0,_vue.onMounted)(function(){(0,_vue.nextTick)(function(){var e=g.fixedType,l=se.elemStore,t=(e||"main")+"-body-",e=$.value;l[t+"wrapper"]=$.value,l[t+"table"]=M.value,l[t+"colgroup"]=H.value,l[t+"list"]=D.value,l[t+"xSpace"]=k.value,l[t+"ySpace"]=q.value,l[t+"emptyBlock"]=Y.value,e.onscroll=o,e._onscroll=o})}),(0,_vue.onBeforeUnmount)(function(){var e=$.value;clearTimeout(f),e._onscroll=null,e.onscroll=null});return function(){var e=g.fixedColumn,l=g.fixedType,t=g.tableColumn,o=ne.keyboardConfig,r=ne.showOverflow,a=ne.spanMethod,n=ne.mouseConfig,i=ie.tableData,s=ie.mergeList,u=ie.scrollYLoad,c=ie.isAllOverflow,d=se.visibleColumn,v=w.slots,p=ce.value,f=E.value,h=I.value,x=R.value;return l&&(t=!(u||r&&c)||s.length||a||o&&h.isMerge?d:e),f=v.empty?ae.callSlot(v.empty,{$table:ae}):(v=(v=f.name?_vXETable.VXETable.renderer.get(f.name):null)?v.renderEmpty:null)?v(f,{$table:ae}):ne.emptyText||_conf.default.i18n("vxe.table.emptyText"),(0,_vue.h)("div",__assign({ref:$,class:["vxe-table--body-wrapper",l?"fixed-"+l+"--wrapper":"body--wrapper"],xid:y},u&&"wheel"===p.mode?{onWheel:m}:{}),[l?(0,_vue.createCommentVNode)():(0,_vue.h)("div",{ref:k,class:"vxe-body--x-space"}),(0,_vue.h)("div",{ref:q,class:"vxe-body--y-space"}),(0,_vue.h)("table",{ref:M,class:"vxe-table--body",xid:y,cellspacing:0,cellpadding:0,border:0},[(0,_vue.h)("colgroup",{ref:H},t.map(function(e,l){return(0,_vue.h)("col",{name:e.id,key:l})})),(0,_vue.h)("tbody",{ref:D},U("",l,i,t))]),(0,_vue.h)("div",{class:"vxe-table--checkbox-range"}),n&&x.area?(0,_vue.h)("div",{class:"vxe-table--cell-area"},[(0,_vue.h)("span",{class:"vxe-table--cell-main-area"},x.extension?[(0,_vue.h)("span",{class:"vxe-table--cell-main-area-btn",onMousedown:function(e){ae.triggerCellExtendMousedownEvent(e,{$table:ae,fixed:l,type:renderType})}})]:[]),(0,_vue.h)("span",{class:"vxe-table--cell-copy-area"}),(0,_vue.h)("span",{class:"vxe-table--cell-extend-area"}),(0,_vue.h)("span",{class:"vxe-table--cell-multi-area"}),(0,_vue.h)("span",{class:"vxe-table--cell-active-area"})]):null,l?null:(0,_vue.h)("div",{class:"vxe-table--empty-block",ref:Y},[(0,_vue.h)("div",{class:"vxe-table--empty-content"},f)])])}}});exports.default=_default;
@@ -404,18 +404,22 @@ var Cell = {
404
404
  var radioOpts = computeRadioOpts.value;
405
405
  var slots = column.slots;
406
406
  var labelField = radioOpts.labelField,
407
- checkMethod = radioOpts.checkMethod;
407
+ checkMethod = radioOpts.checkMethod,
408
+ visibleMethod = radioOpts.visibleMethod;
408
409
  var row = params.row;
409
410
  var defaultSlot = slots ? slots.default : null;
410
411
  var radioSlot = slots ? slots.radio : null;
411
412
  var isChecked = row === selectRow;
413
+ var isVisible = !visibleMethod || visibleMethod({
414
+ row: row
415
+ });
412
416
  var isDisabled = !!checkMethod;
413
417
  var ons;
414
418
 
415
419
  if (!isHidden) {
416
420
  ons = {
417
421
  onClick: function onClick(evnt) {
418
- if (!isDisabled) {
422
+ if (!isDisabled && isVisible) {
419
423
  $table.triggerRadioRowEvent(evnt, params);
420
424
  }
421
425
  }
@@ -430,21 +434,36 @@ var Cell = {
430
434
 
431
435
  var radioParams = __assign(__assign({}, params), {
432
436
  checked: isChecked,
433
- disabled: isDisabled
437
+ disabled: isDisabled,
438
+ visible: isVisible
434
439
  });
435
440
 
436
- return radioSlot ? $table.callSlot(radioSlot, radioParams) : [(0, _vue.h)('span', __assign({
441
+ if (radioSlot) {
442
+ return $table.callSlot(radioSlot, radioParams);
443
+ }
444
+
445
+ var radioVNs = [];
446
+
447
+ if (isVisible) {
448
+ radioVNs.push((0, _vue.h)('span', {
449
+ class: 'vxe-radio--icon vxe-radio--checked-icon'
450
+ }), (0, _vue.h)('span', {
451
+ class: 'vxe-radio--icon vxe-radio--unchecked-icon'
452
+ }));
453
+ }
454
+
455
+ if (defaultSlot || labelField) {
456
+ radioVNs.push((0, _vue.h)('span', {
457
+ class: 'vxe-radio--label'
458
+ }, defaultSlot ? $table.callSlot(defaultSlot, radioParams) : _xeUtils.default.get(row, labelField)));
459
+ }
460
+
461
+ return [(0, _vue.h)('span', __assign({
437
462
  class: ['vxe-cell--radio', {
438
463
  'is--checked': isChecked,
439
464
  'is--disabled': isDisabled
440
465
  }]
441
- }, ons), [(0, _vue.h)('span', {
442
- class: 'vxe-radio--icon vxe-radio--checked-icon'
443
- }), (0, _vue.h)('span', {
444
- class: 'vxe-radio--icon vxe-radio--unchecked-icon'
445
- })].concat(defaultSlot || labelField ? [(0, _vue.h)('span', {
446
- class: 'vxe-radio--label'
447
- }, defaultSlot ? $table.callSlot(defaultSlot, radioParams) : _xeUtils.default.get(row, labelField))] : []))];
466
+ }, ons), radioVNs)];
448
467
  },
449
468
  renderTreeRadioCell: function renderTreeRadioCell(params) {
450
469
  return Cell.renderTreeIcon(params, Cell.renderRadioCell(params));
@@ -531,12 +550,16 @@ var Cell = {
531
550
  var computeCheckboxOpts = $table.getComputeMaps().computeCheckboxOpts;
532
551
  var checkboxOpts = computeCheckboxOpts.value;
533
552
  var labelField = checkboxOpts.labelField,
534
- checkMethod = checkboxOpts.checkMethod;
553
+ checkMethod = checkboxOpts.checkMethod,
554
+ visibleMethod = checkboxOpts.visibleMethod;
535
555
  var slots = column.slots;
536
556
  var defaultSlot = slots ? slots.default : null;
537
557
  var checkboxSlot = slots ? slots.checkbox : null;
538
558
  var indeterminate = false;
539
559
  var isChecked = false;
560
+ var isVisible = !visibleMethod || visibleMethod({
561
+ row: row
562
+ });
540
563
  var isDisabled = !!checkMethod;
541
564
  var ons;
542
565
 
@@ -544,7 +567,7 @@ var Cell = {
544
567
  isChecked = $table.findRowIndexOf(selection, row) > -1;
545
568
  ons = {
546
569
  onClick: function onClick(evnt) {
547
- if (!isDisabled) {
570
+ if (!isDisabled && isVisible) {
548
571
  $table.triggerCheckRowEvent(evnt, params, !isChecked);
549
572
  }
550
573
  }
@@ -564,24 +587,39 @@ var Cell = {
564
587
  var checkboxParams = __assign(__assign({}, params), {
565
588
  checked: isChecked,
566
589
  disabled: isDisabled,
590
+ visible: isVisible,
567
591
  indeterminate: indeterminate
568
592
  });
569
593
 
570
- return checkboxSlot ? $table.callSlot(checkboxSlot, checkboxParams) : [(0, _vue.h)('span', __assign({
594
+ if (checkboxSlot) {
595
+ return $table.callSlot(checkboxSlot, checkboxParams);
596
+ }
597
+
598
+ var checkVNs = [];
599
+
600
+ if (isVisible) {
601
+ checkVNs.push((0, _vue.h)('span', {
602
+ class: 'vxe-checkbox--icon vxe-checkbox--checked-icon'
603
+ }), (0, _vue.h)('span', {
604
+ class: 'vxe-checkbox--icon vxe-checkbox--unchecked-icon'
605
+ }), (0, _vue.h)('span', {
606
+ class: 'vxe-checkbox--icon vxe-checkbox--indeterminate-icon'
607
+ }));
608
+ }
609
+
610
+ if (defaultSlot || labelField) {
611
+ checkVNs.push((0, _vue.h)('span', {
612
+ class: 'vxe-checkbox--label'
613
+ }, defaultSlot ? $table.callSlot(defaultSlot, checkboxParams) : _xeUtils.default.get(row, labelField)));
614
+ }
615
+
616
+ return [(0, _vue.h)('span', __assign({
571
617
  class: ['vxe-cell--checkbox', {
572
618
  'is--checked': isChecked,
573
619
  'is--disabled': isDisabled,
574
620
  'is--indeterminate': indeterminate
575
621
  }]
576
- }, ons), [(0, _vue.h)('span', {
577
- class: 'vxe-checkbox--icon vxe-checkbox--checked-icon'
578
- }), (0, _vue.h)('span', {
579
- class: 'vxe-checkbox--icon vxe-checkbox--unchecked-icon'
580
- }), (0, _vue.h)('span', {
581
- class: 'vxe-checkbox--icon vxe-checkbox--indeterminate-icon'
582
- })].concat(defaultSlot || labelField ? [(0, _vue.h)('span', {
583
- class: 'vxe-checkbox--label'
584
- }, defaultSlot ? $table.callSlot(defaultSlot, checkboxParams) : _xeUtils.default.get(row, labelField))] : []))];
622
+ }, ons), checkVNs)];
585
623
  },
586
624
  renderTreeSelectionCell: function renderTreeSelectionCell(params) {
587
625
  return Cell.renderTreeIcon(params, Cell.renderSelectionCell(params));
@@ -600,12 +638,16 @@ var Cell = {
600
638
  var labelField = checkboxOpts.labelField,
601
639
  property = checkboxOpts.checkField,
602
640
  halfField = checkboxOpts.halfField,
603
- checkMethod = checkboxOpts.checkMethod;
641
+ checkMethod = checkboxOpts.checkMethod,
642
+ visibleMethod = checkboxOpts.visibleMethod;
604
643
  var slots = column.slots;
605
644
  var defaultSlot = slots ? slots.default : null;
606
645
  var checkboxSlot = slots ? slots.checkbox : null;
607
646
  var indeterminate = false;
608
647
  var isChecked = false;
648
+ var isVisible = !visibleMethod || visibleMethod({
649
+ row: row
650
+ });
609
651
  var isDisabled = !!checkMethod;
610
652
  var ons;
611
653
 
@@ -613,7 +655,7 @@ var Cell = {
613
655
  isChecked = _xeUtils.default.get(row, property);
614
656
  ons = {
615
657
  onClick: function onClick(evnt) {
616
- if (!isDisabled) {
658
+ if (!isDisabled && isVisible) {
617
659
  $table.triggerCheckRowEvent(evnt, params, !isChecked);
618
660
  }
619
661
  }
@@ -633,24 +675,39 @@ var Cell = {
633
675
  var checkboxParams = __assign(__assign({}, params), {
634
676
  checked: isChecked,
635
677
  disabled: isDisabled,
678
+ visible: isVisible,
636
679
  indeterminate: indeterminate
637
680
  });
638
681
 
639
- return checkboxSlot ? $table.callSlot(checkboxSlot, checkboxParams) : [(0, _vue.h)('span', __assign({
682
+ if (checkboxSlot) {
683
+ return $table.callSlot(checkboxSlot, checkboxParams);
684
+ }
685
+
686
+ var checkVNs = [];
687
+
688
+ if (isVisible) {
689
+ checkVNs.push((0, _vue.h)('span', {
690
+ class: 'vxe-checkbox--icon vxe-checkbox--checked-icon'
691
+ }), (0, _vue.h)('span', {
692
+ class: 'vxe-checkbox--icon vxe-checkbox--unchecked-icon'
693
+ }), (0, _vue.h)('span', {
694
+ class: 'vxe-checkbox--icon vxe-checkbox--indeterminate-icon'
695
+ }));
696
+
697
+ if (defaultSlot || labelField) {
698
+ checkVNs.push((0, _vue.h)('span', {
699
+ class: 'vxe-checkbox--label'
700
+ }, defaultSlot ? $table.callSlot(defaultSlot, checkboxParams) : _xeUtils.default.get(row, labelField)));
701
+ }
702
+ }
703
+
704
+ return [(0, _vue.h)('span', __assign({
640
705
  class: ['vxe-cell--checkbox', {
641
706
  'is--checked': isChecked,
642
707
  'is--disabled': isDisabled,
643
708
  'is--indeterminate': halfField && !isChecked ? row[halfField] : indeterminate
644
709
  }]
645
- }, ons), [(0, _vue.h)('span', {
646
- class: 'vxe-checkbox--icon vxe-checkbox--checked-icon'
647
- }), (0, _vue.h)('span', {
648
- class: 'vxe-checkbox--icon vxe-checkbox--unchecked-icon'
649
- }), (0, _vue.h)('span', {
650
- class: 'vxe-checkbox--icon vxe-checkbox--indeterminate-icon'
651
- })].concat(defaultSlot || labelField ? [(0, _vue.h)('span', {
652
- class: 'vxe-checkbox--label'
653
- }, defaultSlot ? $table.callSlot(defaultSlot, checkboxParams) : _xeUtils.default.get(row, labelField))] : []))];
710
+ }, ons), checkVNs)];
654
711
  },
655
712
  renderTreeSelectionCellByProp: function renderTreeSelectionCellByProp(params) {
656
713
  return Cell.renderTreeIcon(params, Cell.renderSelectionCellByProp(params));
@@ -1 +1 @@
1
- "use strict";Object.defineProperty(exports,"__esModule",{value:!0}),exports.default=exports.Cell=void 0;var _vue=require("vue"),_xeUtils=_interopRequireDefault(require("xe-utils")),_conf=_interopRequireDefault(require("../../v-x-e-table/src/conf")),_vXETable=require("../../v-x-e-table"),_utils=require("../../tools/utils"),_dom=require("../../tools/dom"),_util=require("./util");function _interopRequireDefault(e){return e&&e.__esModule?e:{default:e}}var __assign=function(){return(__assign=Object.assign||function(e){for(var l,n=1,r=arguments.length;n<r;n++)for(var t in l=arguments[n])Object.prototype.hasOwnProperty.call(l,t)&&(e[t]=l[t]);return e}).apply(this,arguments)};function renderHelpIcon(l){var n=l.$table,e=l.column.titleHelp;return e?[(0,_vue.h)("i",{class:["vxe-cell-help-icon",e.icon||_conf.default.icon.TABLE_HELP],onMouseenter:function(e){n.triggerHeaderHelpEvent(e,l)},onMouseleave:function(e){n.handleTargetLeaveEvent(e)}})]:[]}function renderTitleContent(l,e){var n=l.$table,r=l.column,t=n.props,a=n.internalData,o=n.getComputeMaps().computeTooltipOpts,c=t.showHeaderOverflow,i=r.type,t=r.showHeaderOverflow,d=o.value.showAll,t=_xeUtils.default.isUndefined(t)||_xeUtils.default.isNull(t)?c:t,s="title"===t,u=!0===t||"tooltip"===t,t={};return(s||u||d)&&(t.onMouseenter=function(e){a._isResize||(s?(0,_dom.updateCellTitle)(e.currentTarget,r):(u||d)&&n.triggerHeaderTooltipEvent(e,l))}),(u||d)&&(t.onMouseleave=function(e){a._isResize||(u||d)&&n.handleTargetLeaveEvent(e)}),["html"===i&&_xeUtils.default.isString(e)?(0,_vue.h)("span",__assign({class:"vxe-cell--title",innerHTML:e},t)):(0,_vue.h)("span",__assign({class:"vxe-cell--title"},t),e)]}function getFooterContent(e){var l=e.$table,n=e.column,r=e._columnIndex,t=e.items,a=n.slots,o=n.editRender,n=n.cellRender,n=o||n,a=a?a.footer:null;if(a)return l.callSlot(a,e);if(n){a=_vXETable.VXETable.renderer.get(n.name);if(a&&a.renderFooter)return a.renderFooter(n,e)}return[(0,_utils.formatText)(t[r],1)]}function getDefaultCellLabel(e){var l=e.$table,n=e.row,e=e.column;return(0,_utils.formatText)(l.getCellLabel(n,e),1)}var Cell={createColumn:function(e,l){var n=l.type,r=l.sortable,t=l.filters,a=l.editRender,o=l.treeNode,c=e.props.editConfig,i=e.getComputeMaps(),d=i.computeEditOpts,s=i.computeCheckboxOpts.value,u=d.value,f={renderHeader:Cell.renderDefaultHeader,renderCell:o?Cell.renderTreeCell:Cell.renderDefaultCell,renderFooter:Cell.renderDefaultFooter};switch(n){case"seq":f.renderHeader=Cell.renderIndexHeader,f.renderCell=o?Cell.renderTreeIndexCell:Cell.renderIndexCell;break;case"radio":f.renderHeader=Cell.renderRadioHeader,f.renderCell=o?Cell.renderTreeRadioCell:Cell.renderRadioCell;break;case"checkbox":f.renderHeader=Cell.renderSelectionHeader,f.renderCell=s.checkField?o?Cell.renderTreeSelectionCellByProp:Cell.renderSelectionCellByProp:o?Cell.renderTreeSelectionCell:Cell.renderSelectionCell;break;case"expand":f.renderCell=Cell.renderExpandCell,f.renderData=Cell.renderExpandData;break;case"html":f.renderCell=o?Cell.renderTreeHTMLCell:Cell.renderHTMLCell,t&&r?f.renderHeader=Cell.renderSortAndFilterHeader:r?f.renderHeader=Cell.renderSortHeader:t&&(f.renderHeader=Cell.renderFilterHeader);break;default:c&&a?(f.renderHeader=Cell.renderEditHeader,f.renderCell="cell"===u.mode?o?Cell.renderTreeCellEdit:Cell.renderCellEdit:o?Cell.renderTreeRowEdit:Cell.renderRowEdit):t&&r?f.renderHeader=Cell.renderSortAndFilterHeader:r?f.renderHeader=Cell.renderSortHeader:t&&(f.renderHeader=Cell.renderFilterHeader)}return(0,_util.createColumn)(e,l,f)},renderHeaderTitle:function(e){var l=e.$table,n=e.column,r=n.slots,t=n.editRender,a=n.cellRender,a=t||a,r=r?r.header:null;if(r)return renderTitleContent(e,l.callSlot(r,e));if(a){r=_vXETable.VXETable.renderer.get(a.name);if(r&&r.renderHeader)return renderTitleContent(e,r.renderHeader(a,e))}return renderTitleContent(e,(0,_utils.formatText)(n.getTitle(),1))},renderDefaultHeader:function(e){return renderHelpIcon(e).concat(Cell.renderHeaderTitle(e))},renderDefaultCell:function(e){var l=e.$table,n=e.row,r=e.column,t=r.slots,a=r.editRender,o=r.cellRender,c=a||o,o=t?t.default:null;if(o)return l.callSlot(o,e);if(c){t=a?"renderCell":"renderDefault",o=_vXETable.VXETable.renderer.get(c.name),t=o?o[t]:null;if(t)return t(c,Object.assign({$type:a?"edit":"cell"},e))}n=l.getCellLabel(n,r),r=a?a.placeholder:"";return[(0,_vue.h)("span",{class:"vxe-cell--label"},a&&(0,_utils.eqEmptyValue)(n)?[(0,_vue.h)("span",{class:"vxe-cell--placeholder"},(0,_utils.formatText)((0,_utils.getFuncText)(r),1))]:(0,_utils.formatText)(n,1))]},renderTreeCell:function(e){return Cell.renderTreeIcon(e,Cell.renderDefaultCell(e))},renderDefaultFooter:function(e){return[(0,_vue.h)("span",{class:"vxe-cell--item"},getFooterContent(e))]},renderTreeIcon:function(l,e){var n=l.$table,r=l.isHidden,t=n.reactData,a=n.getComputeMaps().computeTreeOpts,o=t.treeExpandeds,c=t.treeLazyLoadeds,i=a.value,d=l.row,s=l.column,u=l.level,f=s.slots,v=i.children,C=i.hasChild,_=i.indent,p=i.lazy,x=i.trigger,h=i.iconLoaded,b=i.showIcon,T=i.iconOpen,m=i.iconClose,t=d[v],a=f?f.icon:null,s=!1,i=!1,v=!1,f={};return a?n.callSlot(a,l):(r||(i=-1<n.findRowIndexOf(o,d),p&&(v=-1<n.findRowIndexOf(c,d),s=d[C])),x&&"default"!==x||(f.onClick=function(e){return n.triggerTreeExpandEvent(e,l)}),[(0,_vue.h)("div",{class:["vxe-cell--tree-node",{"is--active":i}],style:{paddingLeft:u*_+"px"}},[b&&(t&&t.length||s)?[(0,_vue.h)("div",__assign({class:"vxe-tree--btn-wrapper"},f),[(0,_vue.h)("i",{class:["vxe-tree--node-btn",v?h||_conf.default.icon.TABLE_TREE_LOADED:i?T||_conf.default.icon.TABLE_TREE_OPEN:m||_conf.default.icon.TABLE_TREE_CLOSE]})])]:null,(0,_vue.h)("div",{class:"vxe-tree-cell"},e)])])},renderIndexHeader:function(e){var l=e.$table,n=e.column,r=n.slots,r=r?r.header:null;return renderTitleContent(e,r?l.callSlot(r,e):(0,_utils.formatText)(n.getTitle(),1))},renderIndexCell:function(e){var l=e.$table,n=e.column,r=l.getComputeMaps().computeSeqOpts.value,t=n.slots,a=t?t.default:null;if(a)return l.callSlot(a,e);n=e.$seq,t=e.seq,l=e.level,a=r.seqMethod;return[(0,_utils.formatText)(a?a(e):l?n+"."+t:(r.startIndex||0)+t,1)]},renderTreeIndexCell:function(e){return Cell.renderTreeIcon(e,Cell.renderIndexCell(e))},renderRadioHeader:function(e){var l=e.$table,n=e.column,r=n.slots,t=r?r.header:null,r=r?r.title:null;return renderTitleContent(e,t?l.callSlot(t,e):[(0,_vue.h)("span",{class:"vxe-radio--label"},r?l.callSlot(r,e):(0,_utils.formatText)(n.getTitle(),1))])},renderRadioCell:function(l){var e,n=l.$table,r=l.column,t=l.isHidden,a=n.reactData,o=n.getComputeMaps().computeRadioOpts,c=a.selectRow,i=o.value,d=r.slots,a=i.labelField,o=i.checkMethod,r=l.row,i=d?d.default:null,d=d?d.radio:null,c=r===c,s=!!o;t||(e={onClick:function(e){s||n.triggerRadioRowEvent(e,l)}},o&&(s=!o({row:r})));o=__assign(__assign({},l),{checked:c,disabled:s});return d?n.callSlot(d,o):[(0,_vue.h)("span",__assign({class:["vxe-cell--radio",{"is--checked":c,"is--disabled":s}]},e),[(0,_vue.h)("span",{class:"vxe-radio--icon vxe-radio--checked-icon"}),(0,_vue.h)("span",{class:"vxe-radio--icon vxe-radio--unchecked-icon"})].concat(i||a?[(0,_vue.h)("span",{class:"vxe-radio--label"},i?n.callSlot(i,o):_xeUtils.default.get(r,a))]:[]))]},renderTreeRadioCell:function(e){return Cell.renderTreeIcon(e,Cell.renderRadioCell(e))},renderSelectionHeader:function(e){var l,n=e.$table,r=e.column,t=e.isHidden,a=n.reactData,o=n.getComputeMaps(),c=o.computeIsAllCheckboxDisabled,i=o.computeCheckboxOpts,d=a.isIndeterminate,o=a.isAllSelected,s=c.value,a=r.slots,c=a?a.header:null,a=a?a.title:null,i=i.value,r=r.getTitle(),u=!1;t||(u=!s&&o,l={onClick:function(e){s||n.triggerCheckAllEvent(e,!u)}});e=__assign(__assign({},e),{checked:u,disabled:s,indeterminate:d});return c?renderTitleContent(e,n.callSlot(c,e)):(i.checkStrictly?i.showHeader:!1!==i.showHeader)?renderTitleContent(e,[(0,_vue.h)("span",__assign({class:["vxe-cell--checkbox",{"is--checked":u,"is--disabled":s,"is--indeterminate":d}],title:_conf.default.i18n("vxe.table.allTitle")},l),[(0,_vue.h)("span",{class:"vxe-checkbox--icon vxe-checkbox--checked-icon"}),(0,_vue.h)("span",{class:"vxe-checkbox--icon vxe-checkbox--unchecked-icon"}),(0,_vue.h)("span",{class:"vxe-checkbox--icon vxe-checkbox--indeterminate-icon"})].concat(a||r?[(0,_vue.h)("span",{class:"vxe-checkbox--label"},a?n.callSlot(a,e):r)]:[]))]):renderTitleContent(e,[(0,_vue.h)("span",{class:"vxe-checkbox--label"},a?n.callSlot(a,e):r)])},renderSelectionCell:function(l){var e,n=l.$table,r=l.row,t=l.column,a=l.isHidden,o=n.props,c=n.reactData,i=o.treeConfig,d=c.selection,s=c.treeIndeterminates,u=n.getComputeMaps().computeCheckboxOpts.value,f=u.labelField,o=u.checkMethod,c=t.slots,u=c?c.default:null,t=c?c.checkbox:null,c=!1,v=!1,C=!!o;a||(v=-1<n.findRowIndexOf(d,r),e={onClick:function(e){C||n.triggerCheckRowEvent(e,l,!v)}},o&&(C=!o({row:r})),i&&(c=-1<n.findRowIndexOf(s,r)));s=__assign(__assign({},l),{checked:v,disabled:C,indeterminate:c});return t?n.callSlot(t,s):[(0,_vue.h)("span",__assign({class:["vxe-cell--checkbox",{"is--checked":v,"is--disabled":C,"is--indeterminate":c}]},e),[(0,_vue.h)("span",{class:"vxe-checkbox--icon vxe-checkbox--checked-icon"}),(0,_vue.h)("span",{class:"vxe-checkbox--icon vxe-checkbox--unchecked-icon"}),(0,_vue.h)("span",{class:"vxe-checkbox--icon vxe-checkbox--indeterminate-icon"})].concat(u||f?[(0,_vue.h)("span",{class:"vxe-checkbox--label"},u?n.callSlot(u,s):_xeUtils.default.get(r,f))]:[]))]},renderTreeSelectionCell:function(e){return Cell.renderTreeIcon(e,Cell.renderSelectionCell(e))},renderSelectionCellByProp:function(l){var e,n=l.$table,r=l.row,t=l.column,a=l.isHidden,o=n.props,c=n.reactData,i=o.treeConfig,d=c.treeIndeterminates,s=n.getComputeMaps().computeCheckboxOpts.value,u=s.labelField,f=s.checkField,v=s.halfField,o=s.checkMethod,c=t.slots,s=c?c.default:null,t=c?c.checkbox:null,c=!1,C=!1,_=!!o;a||(C=_xeUtils.default.get(r,f),e={onClick:function(e){_||n.triggerCheckRowEvent(e,l,!C)}},o&&(_=!o({row:r})),i&&(c=-1<n.findRowIndexOf(d,r)));d=__assign(__assign({},l),{checked:C,disabled:_,indeterminate:c});return t?n.callSlot(t,d):[(0,_vue.h)("span",__assign({class:["vxe-cell--checkbox",{"is--checked":C,"is--disabled":_,"is--indeterminate":v&&!C?r[v]:c}]},e),[(0,_vue.h)("span",{class:"vxe-checkbox--icon vxe-checkbox--checked-icon"}),(0,_vue.h)("span",{class:"vxe-checkbox--icon vxe-checkbox--unchecked-icon"}),(0,_vue.h)("span",{class:"vxe-checkbox--icon vxe-checkbox--indeterminate-icon"})].concat(s||u?[(0,_vue.h)("span",{class:"vxe-checkbox--label"},s?n.callSlot(s,d):_xeUtils.default.get(r,u))]:[]))]},renderTreeSelectionCellByProp:function(e){return Cell.renderTreeIcon(e,Cell.renderSelectionCellByProp(e))},renderExpandCell:function(l){var n=l.$table,e=l.isHidden,r=l.row,t=l.column,a=n.reactData,o=a.rowExpandeds,c=a.expandLazyLoadeds,i=n.getComputeMaps().computeExpandOpts.value,d=i.lazy,s=i.labelField,u=i.iconLoaded,f=i.showIcon,v=i.iconOpen,C=i.iconClose,_=i.visibleMethod,p=t.slots,a=p?p.default:null,i=p?p.icon:null,t=!1,p=!1;return i?n.callSlot(i,l):(e||(t=-1<n.findRowIndexOf(o,l.row),d&&(p=-1<n.findRowIndexOf(c,r))),[!f||_&&!_(l)?null:(0,_vue.h)("span",{class:["vxe-table--expanded",{"is--active":t}],onClick:function(e){n.triggerRowExpandEvent(e,l)}},[(0,_vue.h)("i",{class:["vxe-table--expand-btn",p?u||_conf.default.icon.TABLE_EXPAND_LOADED:t?v||_conf.default.icon.TABLE_EXPAND_OPEN:C||_conf.default.icon.TABLE_EXPAND_CLOSE]})]),a||s?(0,_vue.h)("span",{class:"vxe-table--expand-label"},a?n.callSlot(a,l):_xeUtils.default.get(r,s)):null])},renderExpandData:function(e){var l=e.$table,n=e.column,r=n.slots,n=n.contentRender,r=r?r.content:null;if(r)return l.callSlot(r,e);if(n){r=_vXETable.VXETable.renderer.get(n.name);if(r&&r.renderExpand)return r.renderExpand(n,e)}return[]},renderHTMLCell:function(e){var l=e.$table,n=e.column.slots,n=n?n.default:null;return n?l.callSlot(n,e):[(0,_vue.h)("span",{class:"vxe-cell--html",innerHTML:getDefaultCellLabel(e)})]},renderTreeHTMLCell:function(e){return Cell.renderTreeIcon(e,Cell.renderHTMLCell(e))},renderSortAndFilterHeader:function(e){return Cell.renderDefaultHeader(e).concat(Cell.renderSortIcon(e)).concat(Cell.renderFilterIcon(e))},renderSortHeader:function(e){return Cell.renderDefaultHeader(e).concat(Cell.renderSortIcon(e))},renderSortIcon:function(e){var l=e.$table,n=e.column,r=l.getComputeMaps().computeSortOpts.value,t=r.showIcon,a=r.iconAsc,e=r.iconDesc,r=n.order;return t?[(0,_vue.h)("span",{class:"vxe-cell--sort"},[(0,_vue.h)("i",{class:["vxe-sort--asc-btn",a||_conf.default.icon.TABLE_SORT_ASC,{"sort--active":"asc"===r}],title:_conf.default.i18n("vxe.table.sortAsc"),onClick:function(e){l.triggerSortEvent(e,n,"asc")}}),(0,_vue.h)("i",{class:["vxe-sort--desc-btn",e||_conf.default.icon.TABLE_SORT_DESC,{"sort--active":"desc"===r}],title:_conf.default.i18n("vxe.table.sortDesc"),onClick:function(e){l.triggerSortEvent(e,n,"desc")}})])]:[]},renderFilterHeader:function(e){return Cell.renderDefaultHeader(e).concat(Cell.renderFilterIcon(e))},renderFilterIcon:function(l){var n=l.$table,e=l.column,r=l.hasFilter,t=n.reactData.filterStore,a=n.getComputeMaps().computeFilterOpts.value,o=a.showIcon,c=a.iconNone,a=a.iconMatch;return o?[(0,_vue.h)("span",{class:["vxe-cell--filter",{"is--active":t.visible&&t.column===e}]},[(0,_vue.h)("i",{class:["vxe-filter--btn",r?a||_conf.default.icon.TABLE_FILTER_MATCH:c||_conf.default.icon.TABLE_FILTER_NONE],title:_conf.default.i18n("vxe.table.filter"),onClick:function(e){n.triggerFilterEvent(e,l.column,l)}})])]:[]},renderEditHeader:function(e){var l=e.$table,n=e.column,r=l.props,t=l.getComputeMaps().computeEditOpts,a=r.editConfig,o=r.editRules,c=t.value,l=n.sortable,r=n.filters,t=n.editRender,n=!1;return!o||(o=_xeUtils.default.get(o,e.column.property))&&(n=o.some(function(e){return e.required})),((0,_utils.isEnableConf)(a)?[n&&c.showAsterisk?(0,_vue.h)("i",{class:"vxe-cell--required-icon"}):null,(0,_utils.isEnableConf)(t)&&c.showIcon?(0,_vue.h)("i",{class:["vxe-cell--edit-icon",c.icon||_conf.default.icon.TABLE_EDIT]}):null]:[]).concat(Cell.renderDefaultHeader(e)).concat(l?Cell.renderSortIcon(e):[]).concat(r?Cell.renderFilterIcon(e):[])},renderRowEdit:function(e){var l=e.$table,n=e.column,l=l.reactData.editStore.actived,n=n.editRender;return Cell.runRenderer(e,(0,_utils.isEnableConf)(n)&&l&&l.row===e.row)},renderTreeRowEdit:function(e){return Cell.renderTreeIcon(e,Cell.renderRowEdit(e))},renderCellEdit:function(e){var l=e.$table,n=e.column,l=l.reactData.editStore.actived,n=n.editRender;return Cell.runRenderer(e,(0,_utils.isEnableConf)(n)&&l&&l.row===e.row&&l.column===e.column)},renderTreeCellEdit:function(e){return Cell.renderTreeIcon(e,Cell.renderCellEdit(e))},runRenderer:function(e,l){var n=e.$table,r=e.column,t=r.slots,a=r.editRender,o=r.formatter,c=t?t.default:null,r=t?t.edit:null,t=_vXETable.VXETable.renderer.get(a.name);return l?r?n.callSlot(r,e):t&&t.renderEdit?t.renderEdit(a,Object.assign({$type:"edit"},e)):[]:c?n.callSlot(c,e):o?[(0,_vue.h)("span",{class:"vxe-cell--label"},getDefaultCellLabel(e))]:Cell.renderDefaultCell(e)}},_default=exports.Cell=Cell;exports.default=_default;
1
+ "use strict";Object.defineProperty(exports,"__esModule",{value:!0}),exports.default=exports.Cell=void 0;var _vue=require("vue"),_xeUtils=_interopRequireDefault(require("xe-utils")),_conf=_interopRequireDefault(require("../../v-x-e-table/src/conf")),_vXETable=require("../../v-x-e-table"),_utils=require("../../tools/utils"),_dom=require("../../tools/dom"),_util=require("./util");function _interopRequireDefault(e){return e&&e.__esModule?e:{default:e}}var __assign=function(){return(__assign=Object.assign||function(e){for(var l,r=1,n=arguments.length;r<n;r++)for(var t in l=arguments[r])Object.prototype.hasOwnProperty.call(l,t)&&(e[t]=l[t]);return e}).apply(this,arguments)};function renderHelpIcon(l){var r=l.$table,e=l.column.titleHelp;return e?[(0,_vue.h)("i",{class:["vxe-cell-help-icon",e.icon||_conf.default.icon.TABLE_HELP],onMouseenter:function(e){r.triggerHeaderHelpEvent(e,l)},onMouseleave:function(e){r.handleTargetLeaveEvent(e)}})]:[]}function renderTitleContent(l,e){var r=l.$table,n=l.column,t=r.props,a=r.internalData,o=r.getComputeMaps().computeTooltipOpts,c=t.showHeaderOverflow,i=n.type,t=n.showHeaderOverflow,d=o.value.showAll,t=_xeUtils.default.isUndefined(t)||_xeUtils.default.isNull(t)?c:t,s="title"===t,u=!0===t||"tooltip"===t,t={};return(s||u||d)&&(t.onMouseenter=function(e){a._isResize||(s?(0,_dom.updateCellTitle)(e.currentTarget,n):(u||d)&&r.triggerHeaderTooltipEvent(e,l))}),(u||d)&&(t.onMouseleave=function(e){a._isResize||(u||d)&&r.handleTargetLeaveEvent(e)}),["html"===i&&_xeUtils.default.isString(e)?(0,_vue.h)("span",__assign({class:"vxe-cell--title",innerHTML:e},t)):(0,_vue.h)("span",__assign({class:"vxe-cell--title"},t),e)]}function getFooterContent(e){var l=e.$table,r=e.column,n=e._columnIndex,t=e.items,a=r.slots,o=r.editRender,r=r.cellRender,r=o||r,a=a?a.footer:null;if(a)return l.callSlot(a,e);if(r){a=_vXETable.VXETable.renderer.get(r.name);if(a&&a.renderFooter)return a.renderFooter(r,e)}return[(0,_utils.formatText)(t[n],1)]}function getDefaultCellLabel(e){var l=e.$table,r=e.row,e=e.column;return(0,_utils.formatText)(l.getCellLabel(r,e),1)}var Cell={createColumn:function(e,l){var r=l.type,n=l.sortable,t=l.filters,a=l.editRender,o=l.treeNode,c=e.props.editConfig,i=e.getComputeMaps(),d=i.computeEditOpts,s=i.computeCheckboxOpts.value,u=d.value,v={renderHeader:Cell.renderDefaultHeader,renderCell:o?Cell.renderTreeCell:Cell.renderDefaultCell,renderFooter:Cell.renderDefaultFooter};switch(r){case"seq":v.renderHeader=Cell.renderIndexHeader,v.renderCell=o?Cell.renderTreeIndexCell:Cell.renderIndexCell;break;case"radio":v.renderHeader=Cell.renderRadioHeader,v.renderCell=o?Cell.renderTreeRadioCell:Cell.renderRadioCell;break;case"checkbox":v.renderHeader=Cell.renderSelectionHeader,v.renderCell=s.checkField?o?Cell.renderTreeSelectionCellByProp:Cell.renderSelectionCellByProp:o?Cell.renderTreeSelectionCell:Cell.renderSelectionCell;break;case"expand":v.renderCell=Cell.renderExpandCell,v.renderData=Cell.renderExpandData;break;case"html":v.renderCell=o?Cell.renderTreeHTMLCell:Cell.renderHTMLCell,t&&n?v.renderHeader=Cell.renderSortAndFilterHeader:n?v.renderHeader=Cell.renderSortHeader:t&&(v.renderHeader=Cell.renderFilterHeader);break;default:c&&a?(v.renderHeader=Cell.renderEditHeader,v.renderCell="cell"===u.mode?o?Cell.renderTreeCellEdit:Cell.renderCellEdit:o?Cell.renderTreeRowEdit:Cell.renderRowEdit):t&&n?v.renderHeader=Cell.renderSortAndFilterHeader:n?v.renderHeader=Cell.renderSortHeader:t&&(v.renderHeader=Cell.renderFilterHeader)}return(0,_util.createColumn)(e,l,v)},renderHeaderTitle:function(e){var l=e.$table,r=e.column,n=r.slots,t=r.editRender,a=r.cellRender,a=t||a,n=n?n.header:null;if(n)return renderTitleContent(e,l.callSlot(n,e));if(a){n=_vXETable.VXETable.renderer.get(a.name);if(n&&n.renderHeader)return renderTitleContent(e,n.renderHeader(a,e))}return renderTitleContent(e,(0,_utils.formatText)(r.getTitle(),1))},renderDefaultHeader:function(e){return renderHelpIcon(e).concat(Cell.renderHeaderTitle(e))},renderDefaultCell:function(e){var l=e.$table,r=e.row,n=e.column,t=n.slots,a=n.editRender,o=n.cellRender,c=a||o,o=t?t.default:null;if(o)return l.callSlot(o,e);if(c){t=a?"renderCell":"renderDefault",o=_vXETable.VXETable.renderer.get(c.name),t=o?o[t]:null;if(t)return t(c,Object.assign({$type:a?"edit":"cell"},e))}r=l.getCellLabel(r,n),n=a?a.placeholder:"";return[(0,_vue.h)("span",{class:"vxe-cell--label"},a&&(0,_utils.eqEmptyValue)(r)?[(0,_vue.h)("span",{class:"vxe-cell--placeholder"},(0,_utils.formatText)((0,_utils.getFuncText)(n),1))]:(0,_utils.formatText)(r,1))]},renderTreeCell:function(e){return Cell.renderTreeIcon(e,Cell.renderDefaultCell(e))},renderDefaultFooter:function(e){return[(0,_vue.h)("span",{class:"vxe-cell--item"},getFooterContent(e))]},renderTreeIcon:function(l,e){var r=l.$table,n=l.isHidden,t=r.reactData,a=r.getComputeMaps().computeTreeOpts,o=t.treeExpandeds,c=t.treeLazyLoadeds,i=a.value,d=l.row,s=l.column,u=l.level,v=s.slots,f=i.children,C=i.hasChild,_=i.indent,p=i.lazy,x=i.trigger,h=i.iconLoaded,b=i.showIcon,T=i.iconOpen,m=i.iconClose,t=d[f],a=v?v.icon:null,s=!1,i=!1,f=!1,v={};return a?r.callSlot(a,l):(n||(i=-1<r.findRowIndexOf(o,d),p&&(f=-1<r.findRowIndexOf(c,d),s=d[C])),x&&"default"!==x||(v.onClick=function(e){return r.triggerTreeExpandEvent(e,l)}),[(0,_vue.h)("div",{class:["vxe-cell--tree-node",{"is--active":i}],style:{paddingLeft:u*_+"px"}},[b&&(t&&t.length||s)?[(0,_vue.h)("div",__assign({class:"vxe-tree--btn-wrapper"},v),[(0,_vue.h)("i",{class:["vxe-tree--node-btn",f?h||_conf.default.icon.TABLE_TREE_LOADED:i?T||_conf.default.icon.TABLE_TREE_OPEN:m||_conf.default.icon.TABLE_TREE_CLOSE]})])]:null,(0,_vue.h)("div",{class:"vxe-tree-cell"},e)])])},renderIndexHeader:function(e){var l=e.$table,r=e.column,n=r.slots,n=n?n.header:null;return renderTitleContent(e,n?l.callSlot(n,e):(0,_utils.formatText)(r.getTitle(),1))},renderIndexCell:function(e){var l=e.$table,r=e.column,n=l.getComputeMaps().computeSeqOpts.value,t=r.slots,a=t?t.default:null;if(a)return l.callSlot(a,e);r=e.$seq,t=e.seq,l=e.level,a=n.seqMethod;return[(0,_utils.formatText)(a?a(e):l?r+"."+t:(n.startIndex||0)+t,1)]},renderTreeIndexCell:function(e){return Cell.renderTreeIcon(e,Cell.renderIndexCell(e))},renderRadioHeader:function(e){var l=e.$table,r=e.column,n=r.slots,t=n?n.header:null,n=n?n.title:null;return renderTitleContent(e,t?l.callSlot(t,e):[(0,_vue.h)("span",{class:"vxe-radio--label"},n?l.callSlot(n,e):(0,_utils.formatText)(r.getTitle(),1))])},renderRadioCell:function(l){var e,r=l.$table,n=l.column,t=l.isHidden,a=r.reactData,o=r.getComputeMaps().computeRadioOpts,c=a.selectRow,i=o.value,d=n.slots,s=i.labelField,a=i.checkMethod,o=i.visibleMethod,n=l.row,i=d?d.default:null,d=d?d.radio:null,c=n===c,u=!o||o({row:n}),v=!!a;t||(e={onClick:function(e){!v&&u&&r.triggerRadioRowEvent(e,l)}},a&&(v=!a({row:n})));a=__assign(__assign({},l),{checked:c,disabled:v,visible:u});if(d)return r.callSlot(d,a);d=[];return u&&d.push((0,_vue.h)("span",{class:"vxe-radio--icon vxe-radio--checked-icon"}),(0,_vue.h)("span",{class:"vxe-radio--icon vxe-radio--unchecked-icon"})),(i||s)&&d.push((0,_vue.h)("span",{class:"vxe-radio--label"},i?r.callSlot(i,a):_xeUtils.default.get(n,s))),[(0,_vue.h)("span",__assign({class:["vxe-cell--radio",{"is--checked":c,"is--disabled":v}]},e),d)]},renderTreeRadioCell:function(e){return Cell.renderTreeIcon(e,Cell.renderRadioCell(e))},renderSelectionHeader:function(e){var l,r=e.$table,n=e.column,t=e.isHidden,a=r.reactData,o=r.getComputeMaps(),c=o.computeIsAllCheckboxDisabled,i=o.computeCheckboxOpts,d=a.isIndeterminate,o=a.isAllSelected,s=c.value,a=n.slots,c=a?a.header:null,a=a?a.title:null,i=i.value,n=n.getTitle(),u=!1;t||(u=!s&&o,l={onClick:function(e){s||r.triggerCheckAllEvent(e,!u)}});e=__assign(__assign({},e),{checked:u,disabled:s,indeterminate:d});return c?renderTitleContent(e,r.callSlot(c,e)):(i.checkStrictly?i.showHeader:!1!==i.showHeader)?renderTitleContent(e,[(0,_vue.h)("span",__assign({class:["vxe-cell--checkbox",{"is--checked":u,"is--disabled":s,"is--indeterminate":d}],title:_conf.default.i18n("vxe.table.allTitle")},l),[(0,_vue.h)("span",{class:"vxe-checkbox--icon vxe-checkbox--checked-icon"}),(0,_vue.h)("span",{class:"vxe-checkbox--icon vxe-checkbox--unchecked-icon"}),(0,_vue.h)("span",{class:"vxe-checkbox--icon vxe-checkbox--indeterminate-icon"})].concat(a||n?[(0,_vue.h)("span",{class:"vxe-checkbox--label"},a?r.callSlot(a,e):n)]:[]))]):renderTitleContent(e,[(0,_vue.h)("span",{class:"vxe-checkbox--label"},a?r.callSlot(a,e):n)])},renderSelectionCell:function(l){var e,r=l.$table,n=l.row,t=l.column,a=l.isHidden,o=r.props,c=r.reactData,i=o.treeConfig,d=c.selection,s=c.treeIndeterminates,u=r.getComputeMaps().computeCheckboxOpts.value,v=u.labelField,f=u.checkMethod,o=u.visibleMethod,c=t.slots,u=c?c.default:null,t=c?c.checkbox:null,c=!1,C=!1,_=!o||o({row:n}),p=!!f;a||(C=-1<r.findRowIndexOf(d,n),e={onClick:function(e){!p&&_&&r.triggerCheckRowEvent(e,l,!C)}},f&&(p=!f({row:n})),i&&(c=-1<r.findRowIndexOf(s,n)));s=__assign(__assign({},l),{checked:C,disabled:p,visible:_,indeterminate:c});if(t)return r.callSlot(t,s);t=[];return _&&t.push((0,_vue.h)("span",{class:"vxe-checkbox--icon vxe-checkbox--checked-icon"}),(0,_vue.h)("span",{class:"vxe-checkbox--icon vxe-checkbox--unchecked-icon"}),(0,_vue.h)("span",{class:"vxe-checkbox--icon vxe-checkbox--indeterminate-icon"})),(u||v)&&t.push((0,_vue.h)("span",{class:"vxe-checkbox--label"},u?r.callSlot(u,s):_xeUtils.default.get(n,v))),[(0,_vue.h)("span",__assign({class:["vxe-cell--checkbox",{"is--checked":C,"is--disabled":p,"is--indeterminate":c}]},e),t)]},renderTreeSelectionCell:function(e){return Cell.renderTreeIcon(e,Cell.renderSelectionCell(e))},renderSelectionCellByProp:function(l){var e,r=l.$table,n=l.row,t=l.column,a=l.isHidden,o=r.props,c=r.reactData,i=o.treeConfig,d=c.treeIndeterminates,s=r.getComputeMaps().computeCheckboxOpts.value,u=s.labelField,v=s.checkField,f=s.halfField,C=s.checkMethod,o=s.visibleMethod,c=t.slots,s=c?c.default:null,t=c?c.checkbox:null,c=!1,_=!1,p=!o||o({row:n}),x=!!C;a||(_=_xeUtils.default.get(n,v),e={onClick:function(e){!x&&p&&r.triggerCheckRowEvent(e,l,!_)}},C&&(x=!C({row:n})),i&&(c=-1<r.findRowIndexOf(d,n)));d=__assign(__assign({},l),{checked:_,disabled:x,visible:p,indeterminate:c});if(t)return r.callSlot(t,d);t=[];return p&&(t.push((0,_vue.h)("span",{class:"vxe-checkbox--icon vxe-checkbox--checked-icon"}),(0,_vue.h)("span",{class:"vxe-checkbox--icon vxe-checkbox--unchecked-icon"}),(0,_vue.h)("span",{class:"vxe-checkbox--icon vxe-checkbox--indeterminate-icon"})),(s||u)&&t.push((0,_vue.h)("span",{class:"vxe-checkbox--label"},s?r.callSlot(s,d):_xeUtils.default.get(n,u)))),[(0,_vue.h)("span",__assign({class:["vxe-cell--checkbox",{"is--checked":_,"is--disabled":x,"is--indeterminate":f&&!_?n[f]:c}]},e),t)]},renderTreeSelectionCellByProp:function(e){return Cell.renderTreeIcon(e,Cell.renderSelectionCellByProp(e))},renderExpandCell:function(l){var r=l.$table,e=l.isHidden,n=l.row,t=l.column,a=r.reactData,o=a.rowExpandeds,c=a.expandLazyLoadeds,i=r.getComputeMaps().computeExpandOpts.value,d=i.lazy,s=i.labelField,u=i.iconLoaded,v=i.showIcon,f=i.iconOpen,C=i.iconClose,_=i.visibleMethod,p=t.slots,a=p?p.default:null,i=p?p.icon:null,t=!1,p=!1;return i?r.callSlot(i,l):(e||(t=-1<r.findRowIndexOf(o,l.row),d&&(p=-1<r.findRowIndexOf(c,n))),[!v||_&&!_(l)?null:(0,_vue.h)("span",{class:["vxe-table--expanded",{"is--active":t}],onClick:function(e){r.triggerRowExpandEvent(e,l)}},[(0,_vue.h)("i",{class:["vxe-table--expand-btn",p?u||_conf.default.icon.TABLE_EXPAND_LOADED:t?f||_conf.default.icon.TABLE_EXPAND_OPEN:C||_conf.default.icon.TABLE_EXPAND_CLOSE]})]),a||s?(0,_vue.h)("span",{class:"vxe-table--expand-label"},a?r.callSlot(a,l):_xeUtils.default.get(n,s)):null])},renderExpandData:function(e){var l=e.$table,r=e.column,n=r.slots,r=r.contentRender,n=n?n.content:null;if(n)return l.callSlot(n,e);if(r){n=_vXETable.VXETable.renderer.get(r.name);if(n&&n.renderExpand)return n.renderExpand(r,e)}return[]},renderHTMLCell:function(e){var l=e.$table,r=e.column.slots,r=r?r.default:null;return r?l.callSlot(r,e):[(0,_vue.h)("span",{class:"vxe-cell--html",innerHTML:getDefaultCellLabel(e)})]},renderTreeHTMLCell:function(e){return Cell.renderTreeIcon(e,Cell.renderHTMLCell(e))},renderSortAndFilterHeader:function(e){return Cell.renderDefaultHeader(e).concat(Cell.renderSortIcon(e)).concat(Cell.renderFilterIcon(e))},renderSortHeader:function(e){return Cell.renderDefaultHeader(e).concat(Cell.renderSortIcon(e))},renderSortIcon:function(e){var l=e.$table,r=e.column,n=l.getComputeMaps().computeSortOpts.value,t=n.showIcon,a=n.iconAsc,e=n.iconDesc,n=r.order;return t?[(0,_vue.h)("span",{class:"vxe-cell--sort"},[(0,_vue.h)("i",{class:["vxe-sort--asc-btn",a||_conf.default.icon.TABLE_SORT_ASC,{"sort--active":"asc"===n}],title:_conf.default.i18n("vxe.table.sortAsc"),onClick:function(e){l.triggerSortEvent(e,r,"asc")}}),(0,_vue.h)("i",{class:["vxe-sort--desc-btn",e||_conf.default.icon.TABLE_SORT_DESC,{"sort--active":"desc"===n}],title:_conf.default.i18n("vxe.table.sortDesc"),onClick:function(e){l.triggerSortEvent(e,r,"desc")}})])]:[]},renderFilterHeader:function(e){return Cell.renderDefaultHeader(e).concat(Cell.renderFilterIcon(e))},renderFilterIcon:function(l){var r=l.$table,e=l.column,n=l.hasFilter,t=r.reactData.filterStore,a=r.getComputeMaps().computeFilterOpts.value,o=a.showIcon,c=a.iconNone,a=a.iconMatch;return o?[(0,_vue.h)("span",{class:["vxe-cell--filter",{"is--active":t.visible&&t.column===e}]},[(0,_vue.h)("i",{class:["vxe-filter--btn",n?a||_conf.default.icon.TABLE_FILTER_MATCH:c||_conf.default.icon.TABLE_FILTER_NONE],title:_conf.default.i18n("vxe.table.filter"),onClick:function(e){r.triggerFilterEvent(e,l.column,l)}})])]:[]},renderEditHeader:function(e){var l=e.$table,r=e.column,n=l.props,t=l.getComputeMaps().computeEditOpts,a=n.editConfig,o=n.editRules,c=t.value,l=r.sortable,n=r.filters,t=r.editRender,r=!1;return!o||(o=_xeUtils.default.get(o,e.column.property))&&(r=o.some(function(e){return e.required})),((0,_utils.isEnableConf)(a)?[r&&c.showAsterisk?(0,_vue.h)("i",{class:"vxe-cell--required-icon"}):null,(0,_utils.isEnableConf)(t)&&c.showIcon?(0,_vue.h)("i",{class:["vxe-cell--edit-icon",c.icon||_conf.default.icon.TABLE_EDIT]}):null]:[]).concat(Cell.renderDefaultHeader(e)).concat(l?Cell.renderSortIcon(e):[]).concat(n?Cell.renderFilterIcon(e):[])},renderRowEdit:function(e){var l=e.$table,r=e.column,l=l.reactData.editStore.actived,r=r.editRender;return Cell.runRenderer(e,(0,_utils.isEnableConf)(r)&&l&&l.row===e.row)},renderTreeRowEdit:function(e){return Cell.renderTreeIcon(e,Cell.renderRowEdit(e))},renderCellEdit:function(e){var l=e.$table,r=e.column,l=l.reactData.editStore.actived,r=r.editRender;return Cell.runRenderer(e,(0,_utils.isEnableConf)(r)&&l&&l.row===e.row&&l.column===e.column)},renderTreeCellEdit:function(e){return Cell.renderTreeIcon(e,Cell.renderCellEdit(e))},runRenderer:function(e,l){var r=e.$table,n=e.column,t=n.slots,a=n.editRender,o=n.formatter,c=t?t.default:null,n=t?t.edit:null,t=_vXETable.VXETable.renderer.get(a.name);return l?n?r.callSlot(n,e):t&&t.renderEdit?t.renderEdit(a,Object.assign({$type:"edit"},e)):[]:c?r.callSlot(c,e):o?[(0,_vue.h)("span",{class:"vxe-cell--label"},getDefaultCellLabel(e))]:Cell.renderDefaultCell(e)}},_default=exports.Cell=Cell;exports.default=_default;
@@ -210,8 +210,11 @@ var _default2 = {
210
210
  },
211
211
  // 是否自动根据状态属性去更新响应式表格宽高
212
212
  syncResize: [Boolean, String, Number],
213
- // 设置列的默认参数,仅对部分支持的属性有效
213
+ // 列配置信息
214
214
  columnConfig: Object,
215
+ // 行配置信息
216
+ rowConfig: Object,
217
+ // 列调整配置项
215
218
  resizableConfig: Object,
216
219
  // 序号配置项
217
220
  seqConfig: Object,
@@ -1 +1 @@
1
- "use strict";Object.defineProperty(exports,"__esModule",{value:!0}),exports.default=void 0;var _conf=_interopRequireDefault(require("../../v-x-e-table/src/conf"));function _interopRequireDefault(e){return e&&e.__esModule?e:{default:e}}var _default2={id:String,data:Array,height:[Number,String],maxHeight:[Number,String],resizable:{type:Boolean,default:function(){return _conf.default.table.resizable}},stripe:{type:Boolean,default:function(){return _conf.default.table.stripe}},border:{type:[Boolean,String],default:function(){return _conf.default.table.border}},round:{type:Boolean,default:function(){return _conf.default.table.round}},size:{type:String,default:function(){return _conf.default.table.size||_conf.default.size}},fit:{type:Boolean,default:function(){return _conf.default.table.fit}},loading:Boolean,align:{type:String,default:function(){return _conf.default.table.align}},headerAlign:{type:String,default:function(){return _conf.default.table.headerAlign}},footerAlign:{type:String,default:function(){return _conf.default.table.footerAlign}},showHeader:{type:Boolean,default:function(){return _conf.default.table.showHeader}},highlightCurrentRow:{type:Boolean,default:function(){return _conf.default.table.highlightCurrentRow}},highlightHoverRow:{type:Boolean,default:function(){return _conf.default.table.highlightHoverRow}},highlightCurrentColumn:{type:Boolean,default:function(){return _conf.default.table.highlightCurrentColumn}},highlightHoverColumn:{type:Boolean,default:function(){return _conf.default.table.highlightHoverColumn}},highlightCell:Boolean,showFooter:Boolean,footerMethod:Function,rowClassName:[String,Function],cellClassName:[String,Function],headerRowClassName:[String,Function],headerCellClassName:[String,Function],footerRowClassName:[String,Function],footerCellClassName:[String,Function],cellStyle:[Object,Function],headerCellStyle:[Object,Function],footerCellStyle:[Object,Function],rowStyle:[Object,Function],headerRowStyle:[Object,Function],footerRowStyle:[Object,Function],mergeCells:Array,mergeFooterItems:Array,spanMethod:Function,footerSpanMethod:Function,showOverflow:{type:[Boolean,String],default:function(){return _conf.default.table.showOverflow}},showHeaderOverflow:{type:[Boolean,String],default:function(){return _conf.default.table.showHeaderOverflow}},showFooterOverflow:{type:[Boolean,String],default:function(){return _conf.default.table.showFooterOverflow}},columnKey:Boolean,rowKey:Boolean,rowId:{type:String,default:function(){return _conf.default.table.rowId}},zIndex:Number,emptyText:{type:String,default:function(){return _conf.default.table.emptyText}},keepSource:{type:Boolean,default:function(){return _conf.default.table.keepSource}},autoResize:{type:Boolean,default:function(){return _conf.default.table.autoResize}},syncResize:[Boolean,String,Number],columnConfig:Object,resizableConfig:Object,seqConfig:Object,sortConfig:Object,filterConfig:Object,radioConfig:Object,checkboxConfig:Object,tooltipConfig:Object,exportConfig:Object,importConfig:Object,printConfig:Object,expandConfig:Object,treeConfig:Object,menuConfig:Object,mouseConfig:Object,areaConfig:Object,keyboardConfig:Object,clipConfig:Object,fnrConfig:Object,editConfig:Object,validConfig:Object,editRules:Object,emptyRender:Object,customConfig:Object,scrollX:Object,scrollY:Object,animat:{type:Boolean,default:function(){return _conf.default.table.animat}},delayHover:{type:Number,default:function(){return _conf.default.table.delayHover}},params:Object};exports.default=_default2;
1
+ "use strict";Object.defineProperty(exports,"__esModule",{value:!0}),exports.default=void 0;var _conf=_interopRequireDefault(require("../../v-x-e-table/src/conf"));function _interopRequireDefault(e){return e&&e.__esModule?e:{default:e}}var _default2={id:String,data:Array,height:[Number,String],maxHeight:[Number,String],resizable:{type:Boolean,default:function(){return _conf.default.table.resizable}},stripe:{type:Boolean,default:function(){return _conf.default.table.stripe}},border:{type:[Boolean,String],default:function(){return _conf.default.table.border}},round:{type:Boolean,default:function(){return _conf.default.table.round}},size:{type:String,default:function(){return _conf.default.table.size||_conf.default.size}},fit:{type:Boolean,default:function(){return _conf.default.table.fit}},loading:Boolean,align:{type:String,default:function(){return _conf.default.table.align}},headerAlign:{type:String,default:function(){return _conf.default.table.headerAlign}},footerAlign:{type:String,default:function(){return _conf.default.table.footerAlign}},showHeader:{type:Boolean,default:function(){return _conf.default.table.showHeader}},highlightCurrentRow:{type:Boolean,default:function(){return _conf.default.table.highlightCurrentRow}},highlightHoverRow:{type:Boolean,default:function(){return _conf.default.table.highlightHoverRow}},highlightCurrentColumn:{type:Boolean,default:function(){return _conf.default.table.highlightCurrentColumn}},highlightHoverColumn:{type:Boolean,default:function(){return _conf.default.table.highlightHoverColumn}},highlightCell:Boolean,showFooter:Boolean,footerMethod:Function,rowClassName:[String,Function],cellClassName:[String,Function],headerRowClassName:[String,Function],headerCellClassName:[String,Function],footerRowClassName:[String,Function],footerCellClassName:[String,Function],cellStyle:[Object,Function],headerCellStyle:[Object,Function],footerCellStyle:[Object,Function],rowStyle:[Object,Function],headerRowStyle:[Object,Function],footerRowStyle:[Object,Function],mergeCells:Array,mergeFooterItems:Array,spanMethod:Function,footerSpanMethod:Function,showOverflow:{type:[Boolean,String],default:function(){return _conf.default.table.showOverflow}},showHeaderOverflow:{type:[Boolean,String],default:function(){return _conf.default.table.showHeaderOverflow}},showFooterOverflow:{type:[Boolean,String],default:function(){return _conf.default.table.showFooterOverflow}},columnKey:Boolean,rowKey:Boolean,rowId:{type:String,default:function(){return _conf.default.table.rowId}},zIndex:Number,emptyText:{type:String,default:function(){return _conf.default.table.emptyText}},keepSource:{type:Boolean,default:function(){return _conf.default.table.keepSource}},autoResize:{type:Boolean,default:function(){return _conf.default.table.autoResize}},syncResize:[Boolean,String,Number],columnConfig:Object,rowConfig:Object,resizableConfig:Object,seqConfig:Object,sortConfig:Object,filterConfig:Object,radioConfig:Object,checkboxConfig:Object,tooltipConfig:Object,exportConfig:Object,importConfig:Object,printConfig:Object,expandConfig:Object,treeConfig:Object,menuConfig:Object,mouseConfig:Object,areaConfig:Object,keyboardConfig:Object,clipConfig:Object,fnrConfig:Object,editConfig:Object,validConfig:Object,editRules:Object,emptyRender:Object,customConfig:Object,scrollX:Object,scrollY:Object,animat:{type:Boolean,default:function(){return _conf.default.table.animat}},delayHover:{type:Number,default:function(){return _conf.default.table.delayHover}},params:Object};exports.default=_default2;