vxe-table 3.4.8 → 3.4.9
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.
- package/lib/edit/src/mixin.js +12 -4
- package/lib/edit/src/mixin.min.js +1 -1
- package/lib/index.umd.js +55 -56
- package/lib/index.umd.min.js +1 -1
- package/lib/table/src/body.js +23 -8
- package/lib/table/src/body.min.js +1 -1
- package/lib/table/src/methods.js +11 -37
- package/lib/table/src/methods.min.js +1 -1
- package/lib/table/src/util.js +11 -7
- package/lib/table/src/util.min.js +1 -1
- package/package.json +1 -1
- package/packages/edit/src/mixin.js +8 -4
- package/packages/table/src/body.js +18 -8
- package/packages/table/src/methods.js +9 -14
- package/packages/table/src/util.js +9 -6
package/lib/table/src/body.js
CHANGED
|
@@ -39,13 +39,28 @@ function isOperateMouse($xetable) {
|
|
|
39
39
|
return $xetable._isResize || $xetable.lastScrollTime && Date.now() < $xetable.lastScrollTime + $xetable.delayHover;
|
|
40
40
|
}
|
|
41
41
|
|
|
42
|
-
function renderLine(h, _vm, $xetable,
|
|
43
|
-
var
|
|
42
|
+
function renderLine(h, _vm, $xetable, params) {
|
|
43
|
+
var row = params.row,
|
|
44
|
+
column = params.column;
|
|
44
45
|
var treeOpts = $xetable.treeOpts,
|
|
45
|
-
treeConfig = $xetable.treeConfig
|
|
46
|
+
treeConfig = $xetable.treeConfig,
|
|
47
|
+
fullAllDataRowIdData = $xetable.fullAllDataRowIdData;
|
|
46
48
|
var slots = column.slots,
|
|
47
49
|
treeNode = column.treeNode;
|
|
48
50
|
|
|
51
|
+
var rowid = _tools.UtilTools.getRowid($xetable, row);
|
|
52
|
+
|
|
53
|
+
var rest = fullAllDataRowIdData[rowid];
|
|
54
|
+
var rLevel = 0;
|
|
55
|
+
var rIndex = 0;
|
|
56
|
+
var items = [];
|
|
57
|
+
|
|
58
|
+
if (rest) {
|
|
59
|
+
rLevel = rest.level;
|
|
60
|
+
rIndex = rest._index;
|
|
61
|
+
items = rest.items;
|
|
62
|
+
}
|
|
63
|
+
|
|
49
64
|
if (slots && slots.line) {
|
|
50
65
|
return $xetable.callSlot(slots.line, params, h);
|
|
51
66
|
}
|
|
@@ -56,8 +71,8 @@ function renderLine(h, _vm, $xetable, rowLevel, items, params) {
|
|
|
56
71
|
}, [h('div', {
|
|
57
72
|
class: 'vxe-tree--line',
|
|
58
73
|
style: {
|
|
59
|
-
height: "".concat((0, _util.calcTreeLine)(params, items), "px"),
|
|
60
|
-
left: "".concat(
|
|
74
|
+
height: "".concat((0, _util.calcTreeLine)(params, items, rIndex), "px"),
|
|
75
|
+
left: "".concat(rLevel * treeOpts.indent + (rLevel ? 2 - (0, _util.getOffsetSize)($xetable) : 0) + 16, "px")
|
|
61
76
|
}
|
|
62
77
|
})])];
|
|
63
78
|
}
|
|
@@ -292,7 +307,7 @@ function renderColumn(h, _vm, $xetable, seq, rowid, fixedType, rowLevel, row, ro
|
|
|
292
307
|
}));
|
|
293
308
|
} else {
|
|
294
309
|
// 渲染单元格
|
|
295
|
-
tdVNs.push.apply(tdVNs, _toConsumableArray(renderLine(h, _vm, $xetable,
|
|
310
|
+
tdVNs.push.apply(tdVNs, _toConsumableArray(renderLine(h, _vm, $xetable, params)).concat([h('div', {
|
|
296
311
|
class: ['vxe-cell', {
|
|
297
312
|
'c--title': showTitle,
|
|
298
313
|
'c--tooltip': showTooltip,
|
|
@@ -348,7 +363,7 @@ function renderRows(h, _vm, $xetable, fixedType, tableData, tableColumn) {
|
|
|
348
363
|
checkboxOpts = $xetable.checkboxOpts,
|
|
349
364
|
expandColumn = $xetable.expandColumn,
|
|
350
365
|
hasFixedColumn = $xetable.hasFixedColumn,
|
|
351
|
-
|
|
366
|
+
fullAllDataRowIdData = $xetable.fullAllDataRowIdData,
|
|
352
367
|
rowOpts = $xetable.rowOpts;
|
|
353
368
|
var rows = [];
|
|
354
369
|
tableData.forEach(function (row, $rowIndex) {
|
|
@@ -383,7 +398,7 @@ function renderRows(h, _vm, $xetable, fixedType, tableData, tableColumn) {
|
|
|
383
398
|
|
|
384
399
|
var rowid = _tools.UtilTools.getRowid($xetable, row);
|
|
385
400
|
|
|
386
|
-
var rest =
|
|
401
|
+
var rest = fullAllDataRowIdData[rowid];
|
|
387
402
|
var rowLevel = rest ? rest.level : 0;
|
|
388
403
|
var seq = rest ? rest.seq : -1;
|
|
389
404
|
var params = {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
"use strict";Object.defineProperty(exports,"__esModule",{value:!0}),exports.default=void 0;var _xeUtils=_interopRequireDefault(require("xe-utils")),_conf=_interopRequireDefault(require("../../v-x-e-table/src/conf")),_vXETable=_interopRequireDefault(require("../../v-x-e-table")),_tools=require("../../tools"),_util=require("./util"),_dom=require("../../tools/src/dom");function _interopRequireDefault(e){return e&&e.__esModule?e:{default:e}}function _defineProperty(e,l,t){return l in e?Object.defineProperty(e,l,{value:t,enumerable:!0,configurable:!0,writable:!0}):e[l]=t,e}function _toConsumableArray(e){return _arrayWithoutHoles(e)||_iterableToArray(e)||_unsupportedIterableToArray(e)||_nonIterableSpread()}function _nonIterableSpread(){throw new TypeError("Invalid attempt to spread non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}function _unsupportedIterableToArray(e,l){if(e){if("string"==typeof e)return _arrayLikeToArray(e,l);var t=Object.prototype.toString.call(e).slice(8,-1);return"Map"===(t="Object"===t&&e.constructor?e.constructor.name:t)||"Set"===t?Array.from(e):"Arguments"===t||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(t)?_arrayLikeToArray(e,l):void 0}}function _iterableToArray(e){if("undefined"!=typeof Symbol&&null!=e[Symbol.iterator]||null!=e["@@iterator"])return Array.from(e)}function _arrayWithoutHoles(e){if(Array.isArray(e))return _arrayLikeToArray(e)}function _arrayLikeToArray(e,l){(null==l||l>e.length)&&(l=e.length);for(var t=0,o=new Array(l);t<l;t++)o[t]=e[t];return o}var scrollProcessTimeout,renderType="body";function isOperateMouse(e){return e._isResize||e.lastScrollTime&&Date.now()<e.lastScrollTime+e.delayHover}function renderLine(e,l,t,o,r,i){var n=i.column,s=t.treeOpts,a=t.treeConfig,c=n.slots,n=n.treeNode;return c&&c.line?t.callSlot(c.line,i,e):a&&n&&s.line?[e("div",{class:"vxe-tree--line-wrapper"},[e("div",{class:"vxe-tree--line",style:{height:"".concat((0,_util.calcTreeLine)(i,r),"px"),left:"".concat(o*s.indent+(o?2-(0,_util.getOffsetSize)(t):0)+16,"px")}})])]:[]}function renderColumn(e,l,t,o,r,i,n,s,a,c,d,u,p,f,h){var y,v=t.$listeners,g=t.afterFullData,m=t.tableData,x=t.height,w=t.columnKey,b=t.overflowX,T=t.sYOpts,_=t.scrollXLoad,S=t.scrollYLoad,O=t.highlightCurrentRow,C=t.showOverflow,L=t.isAllOverflow,$=t.align,I=t.currentColumn,k=t.cellClassName,E=t.cellStyle,H=t.mergeList,R=t.spanMethod,Y=t.radioOpts,A=t.checkboxOpts,P=t.expandOpts,B=t.treeOpts,D=t.tooltipOpts,M=t.mouseConfig,U=t.editConfig,q=t.editOpts,W=t.editRules,X=t.validOpts,j=t.editStore,N=t.validStore,z=t.tooltipConfig,F=t.rowOpts,V=u.type,K=u.cellRender,G=u.editRender,J=u.align,Q=u.showOverflow,Z=u.className,ee=u.treeNode,le=j.actived,te=T.rHeight,oe=F.height,re=D.showAll||D.enabled,ie=t.getColumnIndex(u),ne=t.getVTColumnIndex(u),j=(0,_tools.isEnableConf)(G),T=i?u.fixed!==i:u.fixed&&b,D=_xeUtils.default.isUndefined(Q)||_xeUtils.default.isNull(Q)?C:Q,b="ellipsis"===D,se="title"===D,ae=!0===D||"tooltip"===D,Q=se||ae||b,D={},J=J||$,$=N.row===s&&N.column===u,W=W&&X.showMessage&&("default"===X.message?x||1<m.length:"inline"===X.message),x={colid:u.id},ce=v["cell-mouseenter"],de=v["cell-mouseleave"],X=G&&U&&"dblclick"===q.trigger,ue={$table:t,seq:o,rowid:r,row:s,rowIndex:a,$rowIndex:c,_rowIndex:d,column:u,columnIndex:ie,$columnIndex:p,_columnIndex:ne,fixed:i,type:renderType,isHidden:T,level:n,visibleData:g,data:m,items:h};if(!_&&!S||Q||(b=Q=!0),(se||ae||re||ce||z)&&(D.mouseenter=function(e){isOperateMouse(t)||(se?_tools.DomTools.updateCellTitle(e.currentTarget,u):(ae||re)&&t.triggerBodyTooltipEvent(e,ue),ce&&t.emitEvent("cell-mouseenter",Object.assign({cell:e.currentTarget},ue),e))}),(ae||re||de||z)&&(D.mouseleave=function(e){isOperateMouse(t)||((ae||re)&&t.handleTargetLeaveEvent(e),de&&t.emitEvent("cell-mouseleave",Object.assign({cell:e.currentTarget},ue),e))}),(A.range||M)&&(D.mousedown=function(e){t.triggerCellMousedownEvent(e,ue)}),(F.isCurrent||O||v["cell-click"]||G&&U||"row"===P.trigger||"cell"===P.trigger||"row"===Y.trigger||"radio"===u.type&&"cell"===Y.trigger||"row"===A.trigger||"checkbox"===u.type&&"cell"===A.trigger||"row"===B.trigger||u.treeNode&&"cell"===B.trigger)&&(D.click=function(e){t.triggerCellClickEvent(e,ue)}),(X||v["cell-dblclick"])&&(D.dblclick=function(e){t.triggerCellDblclickEvent(e,ue)}),H.length){d=(0,_util.mergeBodyMethod)(H,d,ne);if(d){var ne=d.rowspan,pe=d.colspan;if(!ne||!pe)return null;1<ne&&(x.rowspan=ne),1<pe&&(x.colspan=pe)}}else if(R){pe=R(ue)||{},R=pe.rowspan,R=void 0===R?1:R,pe=pe.colspan,pe=void 0===pe?1:pe;if(!R||!pe)return null;1<R&&(x.rowspan=R),1<pe&&(x.colspan=pe)}!(T=T&&H&&(1<x.colspan||1<x.rowspan)?!1:T)&&U&&(G||K)&&(q.showStatus||q.showUpdateStatus)&&(y=t.isUpdateByRow(s,u.property));K=[];return T&&C&&L?K.push(e("div",{class:["vxe-cell",{"c--title":se,"c--tooltip":ae,"c--ellipsis":b}],style:{maxHeight:Q&&(te||oe)?"".concat(te||oe,"px"):""}})):(K.push.apply(K,_toConsumableArray(renderLine(e,l,t,n,h,ue)).concat([e("div",{class:["vxe-cell",{"c--title":se,"c--tooltip":ae,"c--ellipsis":b}],style:{maxHeight:Q&&(te||oe)?"".concat(te||oe,"px"):""},attrs:{title:se?t.getCellLabel(s,u):null}},u.renderCell(e,ue))])),W&&$&&K.push(e("div",{class:"vxe-cell--valid",style:N.rule&&N.rule.maxWidth?{width:"".concat(N.rule.maxWidth,"px")}:null},[e("span",{class:"vxe-cell--valid-msg"},N.content)]))),e("td",{class:["vxe-body--column",u.id,(_defineProperty(e={},"col--".concat(J),J),_defineProperty(e,"col--".concat(V),V),_defineProperty(e,"col--last",p===f.length-1),_defineProperty(e,"col--tree-node",ee),_defineProperty(e,"col--edit",j),_defineProperty(e,"col--ellipsis",Q),_defineProperty(e,"fixed--hidden",T),_defineProperty(e,"col--dirty",y),_defineProperty(e,"col--actived",U&&j&&le.row===s&&(le.column===u||"row"===q.mode)),_defineProperty(e,"col--valid-error",$),_defineProperty(e,"col--current",I===u),e),_tools.UtilTools.getClass(Z,ue),_tools.UtilTools.getClass(k,ue)],key:w?u.id:p,attrs:x,style:Object.assign({height:Q&&(te||oe)?"".concat(te||oe,"px"):""},E?_xeUtils.default.isFunction(E)?E(ue):E:null),on:D},K)}function renderRows(p,f,h,y,v,g){var m=h.stripe,x=h.rowKey,w=h.highlightHoverRow,b=h.rowClassName,T=h.rowStyle,_=h.editConfig,S=h.showOverflow,O=h.treeConfig,C=h.treeOpts,L=h.editOpts,$=h.treeExpandeds,I=h.scrollYLoad,k=h.editStore,E=h.rowExpandeds,H=h.radioOpts,R=h.checkboxOpts,Y=h.expandColumn,A=h.hasFixedColumn,P=h.fullDataRowIdData,B=h.rowOpts,D=[];return v.forEach(function(t,o){var e={},r=h.getVTRowIndex(t),i=h.getRowIndex(t);(B.isHover||w)&&(e.mouseenter=function(e){isOperateMouse(h)||h.triggerHoverEvent(e,{row:t,rowIndex:i})},e.mouseleave=function(){isOperateMouse(h)||h.clearHoverRow()});var l,n,s=_tools.UtilTools.getRowid(h,t),a=P[s],c=a?a.level:0,d=a?a.seq:-1,u={$table:h,seq:d,rowid:s,fixed:y,type:renderType,level:c,row:t,rowIndex:i,$rowIndex:o},a=!1;_&&(a=-1<k.insertList.indexOf(t)),D.push(p("tr",{class:["vxe-body--row",{"row--stripe":m&&(h.getVTRowIndex(t)+1)%2==0,"is--new":a,"row--new":a&&(L.showStatus||L.showInsertStatus),"row--radio":H.highlight&&h.selectRow===t,"row--checked":R.highlight&&h.isCheckedByCheckboxRow(t)},b?_xeUtils.default.isFunction(b)?b(u):b:""],attrs:{rowid:s},style:T?_xeUtils.default.isFunction(T)?T(u):T:null,key:x||O?s:o,on:e},g.map(function(e,l){return renderColumn(p,f,h,d,s,y,c,t,i,o,r,e,l,g,v)}))),Y&&E.length&&-1<E.indexOf(t)&&(O&&(l={paddingLeft:"".concat(c*C.indent+30,"px")}),n=Y.showOverflow,u=_xeUtils.default.isUndefined(n)||_xeUtils.default.isNull(n)?S:n,n={$table:h,seq:d,column:Y,fixed:y,type:renderType,level:c,row:t,rowIndex:i,$rowIndex:o},D.push(p("tr",{class:"vxe-body--expanded-row",key:"expand_".concat(s),style:T?_xeUtils.default.isFunction(T)?T(n):T:null,on:e},[p("td",{class:["vxe-body--expanded-column",{"fixed--hidden":y&&!A,"col--ellipsis":u}],attrs:{colspan:g.length}},[p("div",{class:"vxe-body--expanded-cell",style:l},[Y.renderData(p,n)])])]))),!O||I||C.transform||!$.length||(n=t[C.children])&&n.length&&-1<$.indexOf(t)&&D.push.apply(D,_toConsumableArray(renderRows(p,f,h,y,n,g)))}),D}function syncBodyScroll(e,l,t){(l||t)&&(l&&((0,_util.removeScrollListener)(l),l.scrollTop=e),t&&((0,_util.removeScrollListener)(t),t.scrollTop=e),clearTimeout(scrollProcessTimeout),scrollProcessTimeout=setTimeout(function(){(0,_util.restoreScrollListener)(l),(0,_util.restoreScrollListener)(t)},300))}var _default={name:"VxeTableBody",props:{tableData:Array,tableColumn:Array,fixedColumn:Array,size:String,fixedType:String},data:function(){return{wheelTime:null,wheelYSize:0,wheelYInterval:0,wheelYTotal:0}},mounted:function(){var e=this.$parent,l=this.$el,t=this.$refs,o=this.fixedType,e=e.elemStore,o="".concat(o||"main","-body-");e["".concat(o,"wrapper")]=l,e["".concat(o,"table")]=t.table,e["".concat(o,"colgroup")]=t.colgroup,e["".concat(o,"list")]=t.tbody,e["".concat(o,"xSpace")]=t.xSpace,e["".concat(o,"ySpace")]=t.ySpace,e["".concat(o,"emptyBlock")]=t.emptyBlock,this.$el.onscroll=this.scrollEvent,this.$el._onscroll=this.scrollEvent},beforeDestroy:function(){clearTimeout(this.wheelTime),this.$el._onscroll=null,this.$el.onscroll=null},render:function(t){var e=this._e,l=this.$parent,o=this.fixedColumn,r=this.fixedType,i=l.$scopedSlots,n=l.tId,s=l.tableData,a=l.tableColumn,c=l.visibleColumn,d=l.showOverflow,u=l.keyboardConfig,p=l.keyboardOpts,f=l.mergeList,h=l.spanMethod,y=l.scrollXLoad,v=l.scrollYLoad,g=l.isAllOverflow,m=l.emptyOpts,x=l.mouseConfig,w=l.mouseOpts,b=l.sYOpts;return r&&(a=!(y||v||d&&g)||f.length||h||u&&p.isMerge?c:o),m=i.empty?i.empty.call(this,{$table:l},t):(i=(i=m.name?_vXETable.default.renderer.get(m.name):null)?i.renderEmpty:null)?i.call(this,t,m,{$table:l}):l.emptyText||_conf.default.i18n("vxe.table.emptyText"),t("div",{class:["vxe-table--body-wrapper",r?"fixed-".concat(r,"--wrapper"):"body--wrapper"],attrs:{xid:n},on:v&&"wheel"===b.mode?{wheel:this.wheelEvent}:{}},[r?e():t("div",{class:"vxe-body--x-space",ref:"xSpace"}),t("div",{class:"vxe-body--y-space",ref:"ySpace"}),t("table",{class:"vxe-table--body",attrs:{xid:n,cellspacing:0,cellpadding:0,border:0},ref:"table"},[t("colgroup",{ref:"colgroup"},a.map(function(e,l){return t("col",{attrs:{name:e.id},key:l})})),t("tbody",{ref:"tbody"},renderRows(t,this,l,r,s,a))]),t("div",{class:"vxe-table--checkbox-range"}),x&&w.area?t("div",{class:"vxe-table--cell-area"},[t("span",{class:"vxe-table--cell-main-area"},w.extension?[t("span",{class:"vxe-table--cell-main-area-btn",on:{mousedown:function(e){l.triggerCellExtendMousedownEvent(e,{$table:l,fixed:r,type:renderType})}}})]:null),t("span",{class:"vxe-table--cell-copy-area"}),t("span",{class:"vxe-table--cell-extend-area"}),t("span",{class:"vxe-table--cell-multi-area"}),t("span",{class:"vxe-table--cell-active-area"})]):null,r?null:t("div",{class:"vxe-table--empty-block",ref:"emptyBlock"},[t("div",{class:"vxe-table--empty-content"},m)])])},methods:{scrollEvent:function(e){var l=this.$el,t=this.$parent,o=this.fixedType,r=t.$refs,i=t.elemStore,n=t.highlightHoverRow,s=t.scrollXLoad,a=t.scrollYLoad,c=t.lastScrollTop,d=t.lastScrollLeft,u=t.rowOpts,p=r.tableHeader,f=r.tableBody,h=r.leftBody,y=r.rightBody,v=r.tableFooter,g=r.validTip,m=p?p.$el:null,r=v?v.$el:null,p=f.$el,v=h?h.$el:null,f=y?y.$el:null,h=i["main-body-ySpace"],y=i["main-body-xSpace"],i=h?h.clientHeight:0,h=y?y.clientWidth:0,y=l.scrollTop,l=p.scrollLeft,d=l!==d,c=y!==c;t.lastScrollTop=y,t.lastScrollLeft=l,t.lastScrollTime=Date.now(),(u.isHover||n)&&t.clearHoverRow(),v&&"left"===o?syncBodyScroll(y=v.scrollTop,p,f):f&&"right"===o?syncBodyScroll(y=f.scrollTop,p,v):(d&&(m&&(m.scrollLeft=p.scrollLeft),r&&(r.scrollLeft=p.scrollLeft)),(v||f)&&(t.checkScrolling(),c&&syncBodyScroll(y,v,f))),s&&d&&t.triggerScrollXEvent(e),a&&c&&t.triggerScrollYEvent(e),d&&g&&g.visible&&g.updatePlacement(),t.emitEvent("scroll",{type:renderType,fixed:o,scrollTop:y,scrollLeft:l,bodyHeight:i,bodyWidth:h,isX:d,isY:c},e)},handleWheel:function(s,a,e,c,d){var u=this,p=this.$parent,l=p.$refs,t=p.elemStore,o=l.tableBody,r=l.leftBody,l=l.rightBody,f=o.$el,h=r?r.$el:null,y=l?l.$el:null,r=this.isPrevWheelTop===a?Math.max(0,this.wheelYSize-this.wheelYTotal):0,l=t["main-body-ySpace"],t=t["main-body-xSpace"],v=l?l.clientHeight:0,g=t?t.clientWidth:0;this.isPrevWheelTop=a,this.wheelYSize=Math.abs(a?e-r:e+r),this.wheelYInterval=0,this.wheelYTotal=0,clearTimeout(this.wheelTime),function e(){var l,t,o=u.fixedType,r=u.wheelYTotal,i=u.wheelYSize,n=u.wheelYInterval;r<i&&(i<(r+=n=Math.max(5,Math.floor(1.5*n)))&&(n-=r-i),t=f.scrollTop,l=f.clientHeight,i=f.scrollHeight,f.scrollTop=t=t+n*(a?-1:1),h&&(h.scrollTop=t),y&&(y.scrollTop=t),(a?t<i-l:0<=t)&&(u.wheelTime=setTimeout(e,10)),u.wheelYTotal=r,u.wheelYInterval=n,p.emitEvent("scroll",{type:renderType,fixed:o,scrollTop:f.scrollTop,scrollLeft:f.scrollLeft,bodyHeight:v,bodyWidth:g,isX:c,isY:d},s))}()},wheelEvent:function(e){var l=e.deltaY,t=e.deltaX,o=this.$el,r=this.$parent,i=r.$refs,n=r.highlightHoverRow,s=r.scrollYLoad,a=r.lastScrollTop,c=r.lastScrollLeft,d=r.rowOpts,u=i.tableBody.$el,i=_dom.browse.firefox?40*l:l,l=_dom.browse.firefox?40*t:t,t=i<0;(t?o.scrollTop<=0:o.scrollTop>=o.scrollHeight-o.clientHeight)||(o=o.scrollTop+i,c=(l=u.scrollLeft+l)!==c,(a=o!==a)&&(e.preventDefault(),r.lastScrollTop=o,r.lastScrollLeft=l,r.lastScrollTime=Date.now(),(d.isHover||n)&&r.clearHoverRow(),this.handleWheel(e,t,i,c,a),s&&r.triggerScrollYEvent(e)))}}};exports.default=_default;
|
|
1
|
+
"use strict";Object.defineProperty(exports,"__esModule",{value:!0}),exports.default=void 0;var _xeUtils=_interopRequireDefault(require("xe-utils")),_conf=_interopRequireDefault(require("../../v-x-e-table/src/conf")),_vXETable=_interopRequireDefault(require("../../v-x-e-table")),_tools=require("../../tools"),_util=require("./util"),_dom=require("../../tools/src/dom");function _interopRequireDefault(e){return e&&e.__esModule?e:{default:e}}function _defineProperty(e,l,t){return l in e?Object.defineProperty(e,l,{value:t,enumerable:!0,configurable:!0,writable:!0}):e[l]=t,e}function _toConsumableArray(e){return _arrayWithoutHoles(e)||_iterableToArray(e)||_unsupportedIterableToArray(e)||_nonIterableSpread()}function _nonIterableSpread(){throw new TypeError("Invalid attempt to spread non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}function _unsupportedIterableToArray(e,l){if(e){if("string"==typeof e)return _arrayLikeToArray(e,l);var t=Object.prototype.toString.call(e).slice(8,-1);return"Map"===(t="Object"===t&&e.constructor?e.constructor.name:t)||"Set"===t?Array.from(e):"Arguments"===t||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(t)?_arrayLikeToArray(e,l):void 0}}function _iterableToArray(e){if("undefined"!=typeof Symbol&&null!=e[Symbol.iterator]||null!=e["@@iterator"])return Array.from(e)}function _arrayWithoutHoles(e){if(Array.isArray(e))return _arrayLikeToArray(e)}function _arrayLikeToArray(e,l){(null==l||l>e.length)&&(l=e.length);for(var t=0,o=new Array(l);t<l;t++)o[t]=e[t];return o}var scrollProcessTimeout,renderType="body";function isOperateMouse(e){return e._isResize||e.lastScrollTime&&Date.now()<e.lastScrollTime+e.delayHover}function renderLine(e,l,t,o){var r=o.row,i=o.column,n=t.treeOpts,s=t.treeConfig,a=t.fullAllDataRowIdData,c=i.slots,d=i.treeNode,u=a[_tools.UtilTools.getRowid(t,r)],i=0,a=0,r=[];return u&&(i=u.level,a=u._index,r=u.items),c&&c.line?t.callSlot(c.line,o,e):s&&d&&n.line?[e("div",{class:"vxe-tree--line-wrapper"},[e("div",{class:"vxe-tree--line",style:{height:"".concat((0,_util.calcTreeLine)(o,r,a),"px"),left:"".concat(i*n.indent+(i?2-(0,_util.getOffsetSize)(t):0)+16,"px")}})])]:[]}function renderColumn(e,l,t,o,r,i,n,s,a,c,d,u,p,f,h){var y,v=t.$listeners,g=t.afterFullData,m=t.tableData,w=t.height,x=t.columnKey,b=t.overflowX,T=t.sYOpts,_=t.scrollXLoad,S=t.scrollYLoad,O=t.highlightCurrentRow,C=t.showOverflow,L=t.isAllOverflow,$=t.align,I=t.currentColumn,k=t.cellClassName,E=t.cellStyle,R=t.mergeList,A=t.spanMethod,H=t.radioOpts,Y=t.checkboxOpts,D=t.expandOpts,P=t.treeOpts,B=t.tooltipOpts,M=t.mouseConfig,U=t.editConfig,q=t.editOpts,W=t.editRules,X=t.validOpts,j=t.editStore,N=t.validStore,z=t.tooltipConfig,F=t.rowOpts,V=u.type,K=u.cellRender,G=u.editRender,J=u.align,Q=u.showOverflow,Z=u.className,ee=u.treeNode,le=j.actived,te=T.rHeight,oe=F.height,re=B.showAll||B.enabled,ie=t.getColumnIndex(u),ne=t.getVTColumnIndex(u),j=(0,_tools.isEnableConf)(G),T=i?u.fixed!==i:u.fixed&&b,B=_xeUtils.default.isUndefined(Q)||_xeUtils.default.isNull(Q)?C:Q,b="ellipsis"===B,se="title"===B,ae=!0===B||"tooltip"===B,Q=se||ae||b,B={},J=J||$,$=N.row===s&&N.column===u,W=W&&X.showMessage&&("default"===X.message?w||1<m.length:"inline"===X.message),w={colid:u.id},ce=v["cell-mouseenter"],de=v["cell-mouseleave"],X=G&&U&&"dblclick"===q.trigger,ue={$table:t,seq:o,rowid:r,row:s,rowIndex:a,$rowIndex:c,_rowIndex:d,column:u,columnIndex:ie,$columnIndex:p,_columnIndex:ne,fixed:i,type:renderType,isHidden:T,level:n,visibleData:g,data:m,items:h};if(!_&&!S||Q||(b=Q=!0),(se||ae||re||ce||z)&&(B.mouseenter=function(e){isOperateMouse(t)||(se?_tools.DomTools.updateCellTitle(e.currentTarget,u):(ae||re)&&t.triggerBodyTooltipEvent(e,ue),ce&&t.emitEvent("cell-mouseenter",Object.assign({cell:e.currentTarget},ue),e))}),(ae||re||de||z)&&(B.mouseleave=function(e){isOperateMouse(t)||((ae||re)&&t.handleTargetLeaveEvent(e),de&&t.emitEvent("cell-mouseleave",Object.assign({cell:e.currentTarget},ue),e))}),(Y.range||M)&&(B.mousedown=function(e){t.triggerCellMousedownEvent(e,ue)}),(F.isCurrent||O||v["cell-click"]||G&&U||"row"===D.trigger||"cell"===D.trigger||"row"===H.trigger||"radio"===u.type&&"cell"===H.trigger||"row"===Y.trigger||"checkbox"===u.type&&"cell"===Y.trigger||"row"===P.trigger||u.treeNode&&"cell"===P.trigger)&&(B.click=function(e){t.triggerCellClickEvent(e,ue)}),(X||v["cell-dblclick"])&&(B.dblclick=function(e){t.triggerCellDblclickEvent(e,ue)}),R.length){d=(0,_util.mergeBodyMethod)(R,d,ne);if(d){var ne=d.rowspan,pe=d.colspan;if(!ne||!pe)return null;1<ne&&(w.rowspan=ne),1<pe&&(w.colspan=pe)}}else if(A){pe=A(ue)||{},A=pe.rowspan,A=void 0===A?1:A,pe=pe.colspan,pe=void 0===pe?1:pe;if(!A||!pe)return null;1<A&&(w.rowspan=A),1<pe&&(w.colspan=pe)}!(T=T&&R&&(1<w.colspan||1<w.rowspan)?!1:T)&&U&&(G||K)&&(q.showStatus||q.showUpdateStatus)&&(y=t.isUpdateByRow(s,u.property));K=[];return T&&C&&L?K.push(e("div",{class:["vxe-cell",{"c--title":se,"c--tooltip":ae,"c--ellipsis":b}],style:{maxHeight:Q&&(te||oe)?"".concat(te||oe,"px"):""}})):(K.push.apply(K,_toConsumableArray(renderLine(e,l,t,ue)).concat([e("div",{class:["vxe-cell",{"c--title":se,"c--tooltip":ae,"c--ellipsis":b}],style:{maxHeight:Q&&(te||oe)?"".concat(te||oe,"px"):""},attrs:{title:se?t.getCellLabel(s,u):null}},u.renderCell(e,ue))])),W&&$&&K.push(e("div",{class:"vxe-cell--valid",style:N.rule&&N.rule.maxWidth?{width:"".concat(N.rule.maxWidth,"px")}:null},[e("span",{class:"vxe-cell--valid-msg"},N.content)]))),e("td",{class:["vxe-body--column",u.id,(_defineProperty(e={},"col--".concat(J),J),_defineProperty(e,"col--".concat(V),V),_defineProperty(e,"col--last",p===f.length-1),_defineProperty(e,"col--tree-node",ee),_defineProperty(e,"col--edit",j),_defineProperty(e,"col--ellipsis",Q),_defineProperty(e,"fixed--hidden",T),_defineProperty(e,"col--dirty",y),_defineProperty(e,"col--actived",U&&j&&le.row===s&&(le.column===u||"row"===q.mode)),_defineProperty(e,"col--valid-error",$),_defineProperty(e,"col--current",I===u),e),_tools.UtilTools.getClass(Z,ue),_tools.UtilTools.getClass(k,ue)],key:x?u.id:p,attrs:w,style:Object.assign({height:Q&&(te||oe)?"".concat(te||oe,"px"):""},E?_xeUtils.default.isFunction(E)?E(ue):E:null),on:B},K)}function renderRows(p,f,h,y,v,g){var m=h.stripe,w=h.rowKey,x=h.highlightHoverRow,b=h.rowClassName,T=h.rowStyle,_=h.editConfig,S=h.showOverflow,O=h.treeConfig,C=h.treeOpts,L=h.editOpts,$=h.treeExpandeds,I=h.scrollYLoad,k=h.editStore,E=h.rowExpandeds,R=h.radioOpts,A=h.checkboxOpts,H=h.expandColumn,Y=h.hasFixedColumn,D=h.fullAllDataRowIdData,P=h.rowOpts,B=[];return v.forEach(function(t,o){var e={},r=h.getVTRowIndex(t),i=h.getRowIndex(t);(P.isHover||x)&&(e.mouseenter=function(e){isOperateMouse(h)||h.triggerHoverEvent(e,{row:t,rowIndex:i})},e.mouseleave=function(){isOperateMouse(h)||h.clearHoverRow()});var l,n,s=_tools.UtilTools.getRowid(h,t),a=D[s],c=a?a.level:0,d=a?a.seq:-1,u={$table:h,seq:d,rowid:s,fixed:y,type:renderType,level:c,row:t,rowIndex:i,$rowIndex:o},a=!1;_&&(a=-1<k.insertList.indexOf(t)),B.push(p("tr",{class:["vxe-body--row",{"row--stripe":m&&(h.getVTRowIndex(t)+1)%2==0,"is--new":a,"row--new":a&&(L.showStatus||L.showInsertStatus),"row--radio":R.highlight&&h.selectRow===t,"row--checked":A.highlight&&h.isCheckedByCheckboxRow(t)},b?_xeUtils.default.isFunction(b)?b(u):b:""],attrs:{rowid:s},style:T?_xeUtils.default.isFunction(T)?T(u):T:null,key:w||O?s:o,on:e},g.map(function(e,l){return renderColumn(p,f,h,d,s,y,c,t,i,o,r,e,l,g,v)}))),H&&E.length&&-1<E.indexOf(t)&&(O&&(l={paddingLeft:"".concat(c*C.indent+30,"px")}),n=H.showOverflow,u=_xeUtils.default.isUndefined(n)||_xeUtils.default.isNull(n)?S:n,n={$table:h,seq:d,column:H,fixed:y,type:renderType,level:c,row:t,rowIndex:i,$rowIndex:o},B.push(p("tr",{class:"vxe-body--expanded-row",key:"expand_".concat(s),style:T?_xeUtils.default.isFunction(T)?T(n):T:null,on:e},[p("td",{class:["vxe-body--expanded-column",{"fixed--hidden":y&&!Y,"col--ellipsis":u}],attrs:{colspan:g.length}},[p("div",{class:"vxe-body--expanded-cell",style:l},[H.renderData(p,n)])])]))),!O||I||C.transform||!$.length||(n=t[C.children])&&n.length&&-1<$.indexOf(t)&&B.push.apply(B,_toConsumableArray(renderRows(p,f,h,y,n,g)))}),B}function syncBodyScroll(e,l,t){(l||t)&&(l&&((0,_util.removeScrollListener)(l),l.scrollTop=e),t&&((0,_util.removeScrollListener)(t),t.scrollTop=e),clearTimeout(scrollProcessTimeout),scrollProcessTimeout=setTimeout(function(){(0,_util.restoreScrollListener)(l),(0,_util.restoreScrollListener)(t)},300))}var _default={name:"VxeTableBody",props:{tableData:Array,tableColumn:Array,fixedColumn:Array,size:String,fixedType:String},data:function(){return{wheelTime:null,wheelYSize:0,wheelYInterval:0,wheelYTotal:0}},mounted:function(){var e=this.$parent,l=this.$el,t=this.$refs,o=this.fixedType,e=e.elemStore,o="".concat(o||"main","-body-");e["".concat(o,"wrapper")]=l,e["".concat(o,"table")]=t.table,e["".concat(o,"colgroup")]=t.colgroup,e["".concat(o,"list")]=t.tbody,e["".concat(o,"xSpace")]=t.xSpace,e["".concat(o,"ySpace")]=t.ySpace,e["".concat(o,"emptyBlock")]=t.emptyBlock,this.$el.onscroll=this.scrollEvent,this.$el._onscroll=this.scrollEvent},beforeDestroy:function(){clearTimeout(this.wheelTime),this.$el._onscroll=null,this.$el.onscroll=null},render:function(t){var e=this._e,l=this.$parent,o=this.fixedColumn,r=this.fixedType,i=l.$scopedSlots,n=l.tId,s=l.tableData,a=l.tableColumn,c=l.visibleColumn,d=l.showOverflow,u=l.keyboardConfig,p=l.keyboardOpts,f=l.mergeList,h=l.spanMethod,y=l.scrollXLoad,v=l.scrollYLoad,g=l.isAllOverflow,m=l.emptyOpts,w=l.mouseConfig,x=l.mouseOpts,b=l.sYOpts;return r&&(a=!(y||v||d&&g)||f.length||h||u&&p.isMerge?c:o),m=i.empty?i.empty.call(this,{$table:l},t):(i=(i=m.name?_vXETable.default.renderer.get(m.name):null)?i.renderEmpty:null)?i.call(this,t,m,{$table:l}):l.emptyText||_conf.default.i18n("vxe.table.emptyText"),t("div",{class:["vxe-table--body-wrapper",r?"fixed-".concat(r,"--wrapper"):"body--wrapper"],attrs:{xid:n},on:v&&"wheel"===b.mode?{wheel:this.wheelEvent}:{}},[r?e():t("div",{class:"vxe-body--x-space",ref:"xSpace"}),t("div",{class:"vxe-body--y-space",ref:"ySpace"}),t("table",{class:"vxe-table--body",attrs:{xid:n,cellspacing:0,cellpadding:0,border:0},ref:"table"},[t("colgroup",{ref:"colgroup"},a.map(function(e,l){return t("col",{attrs:{name:e.id},key:l})})),t("tbody",{ref:"tbody"},renderRows(t,this,l,r,s,a))]),t("div",{class:"vxe-table--checkbox-range"}),w&&x.area?t("div",{class:"vxe-table--cell-area"},[t("span",{class:"vxe-table--cell-main-area"},x.extension?[t("span",{class:"vxe-table--cell-main-area-btn",on:{mousedown:function(e){l.triggerCellExtendMousedownEvent(e,{$table:l,fixed:r,type:renderType})}}})]:null),t("span",{class:"vxe-table--cell-copy-area"}),t("span",{class:"vxe-table--cell-extend-area"}),t("span",{class:"vxe-table--cell-multi-area"}),t("span",{class:"vxe-table--cell-active-area"})]):null,r?null:t("div",{class:"vxe-table--empty-block",ref:"emptyBlock"},[t("div",{class:"vxe-table--empty-content"},m)])])},methods:{scrollEvent:function(e){var l=this.$el,t=this.$parent,o=this.fixedType,r=t.$refs,i=t.elemStore,n=t.highlightHoverRow,s=t.scrollXLoad,a=t.scrollYLoad,c=t.lastScrollTop,d=t.lastScrollLeft,u=t.rowOpts,p=r.tableHeader,f=r.tableBody,h=r.leftBody,y=r.rightBody,v=r.tableFooter,g=r.validTip,m=p?p.$el:null,r=v?v.$el:null,p=f.$el,v=h?h.$el:null,f=y?y.$el:null,h=i["main-body-ySpace"],y=i["main-body-xSpace"],i=h?h.clientHeight:0,h=y?y.clientWidth:0,y=l.scrollTop,l=p.scrollLeft,d=l!==d,c=y!==c;t.lastScrollTop=y,t.lastScrollLeft=l,t.lastScrollTime=Date.now(),(u.isHover||n)&&t.clearHoverRow(),v&&"left"===o?syncBodyScroll(y=v.scrollTop,p,f):f&&"right"===o?syncBodyScroll(y=f.scrollTop,p,v):(d&&(m&&(m.scrollLeft=p.scrollLeft),r&&(r.scrollLeft=p.scrollLeft)),(v||f)&&(t.checkScrolling(),c&&syncBodyScroll(y,v,f))),s&&d&&t.triggerScrollXEvent(e),a&&c&&t.triggerScrollYEvent(e),d&&g&&g.visible&&g.updatePlacement(),t.emitEvent("scroll",{type:renderType,fixed:o,scrollTop:y,scrollLeft:l,bodyHeight:i,bodyWidth:h,isX:d,isY:c},e)},handleWheel:function(s,a,e,c,d){var u=this,p=this.$parent,l=p.$refs,t=p.elemStore,o=l.tableBody,r=l.leftBody,l=l.rightBody,f=o.$el,h=r?r.$el:null,y=l?l.$el:null,r=this.isPrevWheelTop===a?Math.max(0,this.wheelYSize-this.wheelYTotal):0,l=t["main-body-ySpace"],t=t["main-body-xSpace"],v=l?l.clientHeight:0,g=t?t.clientWidth:0;this.isPrevWheelTop=a,this.wheelYSize=Math.abs(a?e-r:e+r),this.wheelYInterval=0,this.wheelYTotal=0,clearTimeout(this.wheelTime),function e(){var l,t,o=u.fixedType,r=u.wheelYTotal,i=u.wheelYSize,n=u.wheelYInterval;r<i&&(i<(r+=n=Math.max(5,Math.floor(1.5*n)))&&(n-=r-i),t=f.scrollTop,l=f.clientHeight,i=f.scrollHeight,f.scrollTop=t=t+n*(a?-1:1),h&&(h.scrollTop=t),y&&(y.scrollTop=t),(a?t<i-l:0<=t)&&(u.wheelTime=setTimeout(e,10)),u.wheelYTotal=r,u.wheelYInterval=n,p.emitEvent("scroll",{type:renderType,fixed:o,scrollTop:f.scrollTop,scrollLeft:f.scrollLeft,bodyHeight:v,bodyWidth:g,isX:c,isY:d},s))}()},wheelEvent:function(e){var l=e.deltaY,t=e.deltaX,o=this.$el,r=this.$parent,i=r.$refs,n=r.highlightHoverRow,s=r.scrollYLoad,a=r.lastScrollTop,c=r.lastScrollLeft,d=r.rowOpts,u=i.tableBody.$el,i=_dom.browse.firefox?40*l:l,l=_dom.browse.firefox?40*t:t,t=i<0;(t?o.scrollTop<=0:o.scrollTop>=o.scrollHeight-o.clientHeight)||(o=o.scrollTop+i,c=(l=u.scrollLeft+l)!==c,(a=o!==a)&&(e.preventDefault(),r.lastScrollTop=o,r.lastScrollLeft=l,r.lastScrollTime=Date.now(),(d.isHover||n)&&r.clearHoverRow(),this.handleWheel(e,t,i,c,a),s&&r.triggerScrollYEvent(e)))}}};exports.default=_default;
|
package/lib/table/src/methods.js
CHANGED
|
@@ -1807,7 +1807,6 @@ var Methods = {
|
|
|
1807
1807
|
_xeUtils.default.eachTree(afterTreeFullData, function (row, index, items, path) {
|
|
1808
1808
|
var rowid = getRowid(_this17, row);
|
|
1809
1809
|
var allrest = fullAllDataRowIdData[rowid];
|
|
1810
|
-
var fullrest = fullDataRowIdData[rowid];
|
|
1811
1810
|
var seq = path.map(function (num, i) {
|
|
1812
1811
|
return i % 2 === 0 ? Number(num) + 1 : '.';
|
|
1813
1812
|
}).join('');
|
|
@@ -1815,24 +1814,8 @@ var Methods = {
|
|
|
1815
1814
|
if (allrest) {
|
|
1816
1815
|
allrest.seq = seq;
|
|
1817
1816
|
allrest._index = index;
|
|
1818
|
-
}
|
|
1819
|
-
|
|
1820
|
-
if (fullrest) {
|
|
1821
|
-
fullrest.seq = seq;
|
|
1822
|
-
fullrest._index = index;
|
|
1823
1817
|
} else {
|
|
1824
|
-
|
|
1825
|
-
row: row,
|
|
1826
|
-
rowid: rowid,
|
|
1827
|
-
seq: seq,
|
|
1828
|
-
index: -1,
|
|
1829
|
-
$index: -1,
|
|
1830
|
-
_index: index,
|
|
1831
|
-
items: [],
|
|
1832
|
-
parent: null,
|
|
1833
|
-
level: 0
|
|
1834
|
-
};
|
|
1835
|
-
fullDataRowIdData[rowid] = {
|
|
1818
|
+
var rest = {
|
|
1836
1819
|
row: row,
|
|
1837
1820
|
rowid: rowid,
|
|
1838
1821
|
seq: seq,
|
|
@@ -1843,6 +1826,8 @@ var Methods = {
|
|
|
1843
1826
|
parent: null,
|
|
1844
1827
|
level: 0
|
|
1845
1828
|
};
|
|
1829
|
+
fullAllDataRowIdData[rowid] = rest;
|
|
1830
|
+
fullDataRowIdData[rowid] = rest;
|
|
1846
1831
|
}
|
|
1847
1832
|
}, {
|
|
1848
1833
|
children: treeOpts.mapChildren
|
|
@@ -1851,30 +1836,13 @@ var Methods = {
|
|
|
1851
1836
|
afterFullData.forEach(function (row, index) {
|
|
1852
1837
|
var rowid = getRowid(_this17, row);
|
|
1853
1838
|
var allrest = fullAllDataRowIdData[rowid];
|
|
1854
|
-
var fullrest = fullDataRowIdData[rowid];
|
|
1855
1839
|
var seq = index + 1;
|
|
1856
1840
|
|
|
1857
1841
|
if (allrest) {
|
|
1858
1842
|
allrest.seq = seq;
|
|
1859
1843
|
allrest._index = index;
|
|
1860
|
-
}
|
|
1861
|
-
|
|
1862
|
-
if (fullrest) {
|
|
1863
|
-
fullrest.seq = seq;
|
|
1864
|
-
fullrest._index = index;
|
|
1865
1844
|
} else {
|
|
1866
|
-
|
|
1867
|
-
row: row,
|
|
1868
|
-
rowid: rowid,
|
|
1869
|
-
seq: seq,
|
|
1870
|
-
index: -1,
|
|
1871
|
-
$index: -1,
|
|
1872
|
-
_index: index,
|
|
1873
|
-
items: [],
|
|
1874
|
-
parent: null,
|
|
1875
|
-
level: 0
|
|
1876
|
-
};
|
|
1877
|
-
fullDataRowIdData[rowid] = {
|
|
1845
|
+
var rest = {
|
|
1878
1846
|
row: row,
|
|
1879
1847
|
rowid: rowid,
|
|
1880
1848
|
seq: seq,
|
|
@@ -1885,6 +1853,8 @@ var Methods = {
|
|
|
1885
1853
|
parent: null,
|
|
1886
1854
|
level: 0
|
|
1887
1855
|
};
|
|
1856
|
+
fullAllDataRowIdData[rowid] = rest;
|
|
1857
|
+
fullDataRowIdData[rowid] = rest;
|
|
1888
1858
|
}
|
|
1889
1859
|
});
|
|
1890
1860
|
}
|
|
@@ -5384,6 +5354,8 @@ var Methods = {
|
|
|
5384
5354
|
return _this42.handleAsyncTreeExpandChilds(row);
|
|
5385
5355
|
}).then(function () {
|
|
5386
5356
|
if (transform) {
|
|
5357
|
+
_this42.handleVirtualTreeToList();
|
|
5358
|
+
|
|
5387
5359
|
return _this42.handleTableData();
|
|
5388
5360
|
}
|
|
5389
5361
|
}).then(function () {
|
|
@@ -5704,8 +5676,10 @@ var Methods = {
|
|
|
5704
5676
|
return this.handleTableData().then(function () {
|
|
5705
5677
|
if (transform) {
|
|
5706
5678
|
_this46.handleVirtualTreeToList();
|
|
5707
|
-
}
|
|
5708
5679
|
|
|
5680
|
+
return _this46.handleTableData();
|
|
5681
|
+
}
|
|
5682
|
+
}).then(function () {
|
|
5709
5683
|
if (isExists) {
|
|
5710
5684
|
_this46.recalculate();
|
|
5711
5685
|
}
|