vxe-table 4.10.6-beta.30 → 4.10.6-beta.32
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/es/style.css +1 -1
- package/es/table/src/body.js +6 -6
- package/es/table/src/cell.js +13 -9
- package/es/table/src/footer.js +2 -2
- package/es/table/src/header.js +2 -2
- package/es/table/src/props.js +8 -2
- package/es/table/src/table.js +14 -7
- package/es/ui/index.js +3 -1
- package/es/ui/src/log.js +1 -1
- package/lib/index.umd.js +45 -21
- package/lib/index.umd.min.js +1 -1
- package/lib/style.css +1 -1
- package/lib/table/src/body.js +7 -4
- package/lib/table/src/body.min.js +1 -1
- package/lib/table/src/cell.js +5 -4
- package/lib/table/src/cell.min.js +1 -1
- package/lib/table/src/footer.js +2 -1
- package/lib/table/src/footer.min.js +1 -1
- package/lib/table/src/header.js +2 -1
- package/lib/table/src/header.min.js +1 -1
- package/lib/table/src/props.js +8 -2
- package/lib/table/src/table.js +17 -7
- package/lib/table/src/table.min.js +1 -1
- package/lib/ui/index.js +3 -1
- package/lib/ui/index.min.js +1 -1
- package/lib/ui/src/log.js +1 -1
- package/lib/ui/src/log.min.js +1 -1
- package/package.json +2 -2
- package/packages/table/src/body.ts +10 -10
- package/packages/table/src/cell.ts +13 -9
- package/packages/table/src/footer.ts +2 -2
- package/packages/table/src/header.ts +2 -2
- package/packages/table/src/props.ts +8 -3
- package/packages/table/src/table.ts +14 -7
- package/packages/ui/index.ts +2 -0
- /package/es/{iconfont.1737460213413.ttf → iconfont.1738648607811.ttf} +0 -0
- /package/es/{iconfont.1737460213413.woff → iconfont.1738648607811.woff} +0 -0
- /package/es/{iconfont.1737460213413.woff2 → iconfont.1738648607811.woff2} +0 -0
- /package/lib/{iconfont.1737460213413.ttf → iconfont.1738648607811.ttf} +0 -0
- /package/lib/{iconfont.1737460213413.woff → iconfont.1738648607811.woff} +0 -0
- /package/lib/{iconfont.1737460213413.woff2 → iconfont.1738648607811.woff2} +0 -0
|
@@ -1 +1 @@
|
|
|
1
|
-
Object.defineProperty(exports,"__esModule",{value:!0}),exports.default=void 0;var _vue=require("vue"),_xeUtils=_interopRequireDefault(require("xe-utils")),_ui=require("../../ui"),_util=require("./util"),_dom=require("../../ui/src/dom"),_utils=require("../../ui/src/utils"),_vn=require("../../ui/src/vn");function _interopRequireDefault(e){return e&&e.__esModule?e:{default:e}}let{getI18n,renderer,renderEmptyElement}=_ui.VxeUI,renderType="body";var _default=exports.default=(0,_vue.defineComponent)({name:"VxeTableBody",props:{tableData:Array,tableColumn:Array,fixedColumn:Array,fixedType:{type:String,default:""}},setup(I){let Ie=(0,_vue.inject)("$xeTable",{}),{xID:M,props:Me,context:T,reactData:Te,internalData:ke}=Ie,{computeEditOpts:qe,computeMouseOpts:$e,computeAreaOpts:Ae,computeDefaultRowHeight:Ue,computeEmptyOpts:k,computeTooltipOpts:je,computeRadioOpts:e,computeExpandOpts:G,computeTreeOpts:c,computeCheckboxOpts:ze,computeCellOpts:Fe,computeValidOpts:Le,computeRowOpts:Ne,computeColumnOpts:He,computeRowDragOpts:Be,computeColumnDragOpts:l,computeLeftFixedWidth:q,computeRightFixedWidth:$}=Ie.getComputeMaps(),A=(0,_vue.ref)(),U=(0,_vue.ref)(),j=(0,_vue.ref)(),z=(0,_vue.ref)(),F=(0,_vue.ref)(),L=(0,_vue.ref)(),N=(0,_vue.ref)(),H=(0,_vue.ref)(),We=()=>{var e=Me.delayHover,{lastScrollTime:l,isDragResize:t}=Te;return!!(t||l&&Date.now()<l+e)},Pe=(e,l)=>{var{row:t,column:a}=e,r=ke.afterFullData,o=Me.treeConfig,i=c.value,{slots:a,treeNode:s}=a,n=ke.fullAllDataRowIdData;if(a&&a.line)return Ie.callSlot(a.line,e);a=n[(0,_util.getRowid)(Ie,t)];let d=0,u=null;a&&(d=a.level,u=a.items[a.treeIndex-1]);n=Ie.eqRow(r[0],t);return o&&s&&(i.showLine||i.line)?[(0,_vue.h)("div",{key:"tl",class:"vxe-tree--line-wrapper"},[(0,_vue.h)("div",{class:"vxe-tree--line",style:{height:`${n?1:(0,_util.calcTreeLine)(e,u)}px`,bottom:`-${Math.floor(l/2)}px`,left:d*i.indent+(d?2-(0,_util.getOffsetSize)(Ie):0)+16+"px"}})])]:[]},Q=(e,l,t,U,j,a,r,z,o,i,F,L,s)=>{var N=ke.fullAllDataRowIdData,{columnKey:H,height:n,cellClassName:B,cellStyle:W,align:d,spanMethod:P,mouseConfig:K,editConfig:V,editRules:u,tooltipConfig:c,padding:v}=Me,{tableData:p,overflowX:X,currentColumn:Y,scrollXLoad:G,scrollYLoad:g,calcCellHeightFlag:J,resizeHeightFlag:x,mergeList:Q,editStore:Z,isAllOverflow:ee,validErrorMaps:h}=Te,{afterFullData:le,scrollXStore:m,scrollYStore:w}=ke,_=Fe.value,f=Le.value,te=ze.value,ae=qe.value,re=je.value,oe=Ne.value,y=Be.value,ie=Ue.value,b=_.height||oe.height,ie=b||ie,{disabledMethod:C,isCrossDrag:se,isPeerDrag:ne}=y,de=He.value,ue=$e.value,ce=Ae.value.selectCellToRow,{type:ve,cellRender:pe,editRender:ge,align:xe,showOverflow:D,className:he,treeNode:me,rowResize:we,padding:E,verticalAlign:R,slots:_e}=i,fe=_.verticalAlign,Z=Z.actived,N=N[l],O=i.id,S=ge||pe,S=S?renderer.get(S.name):null,ye=S?S.tableCellClassName||S.cellClassName:null,be=S?S.tableCellStyle||S.cellStyle:"";let Ce=re.showAll;var re=Ie.getColumnIndex(i),I=Ie.getVTColumnIndex(i),De=(0,_utils.isEnableConf)(ge),x=x?N.resizeHeight:0;let M=t?i.fixed!==t:i.fixed&&X;X=_xeUtils.default.eqNull(E)?null===v?_.padding:v:E,_=_xeUtils.default.eqNull(D)?ee:D,v="ellipsis"===_;let T="title"===_,k=!0===_||"tooltip"===_;E=ee||T||k||v,D=!!b,_=0<x;let Ee;b={},xe=xe||(S?S.tableCellAlign:"")||d,S=_xeUtils.default.eqNull(R)?fe:R,d=h[l+":"+O],fe=u&&f.showMessage&&("default"===f.message?n||1<p.length:"inline"===f.message),R={colid:O};let q={$table:Ie,$grid:Ie.xegrid,isEdit:!1,seq:e,rowid:l,row:a,rowIndex:r,$rowIndex:z,_rowIndex:o,column:i,columnIndex:re,$columnIndex:F,_columnIndex:I,fixed:t,type:renderType,isHidden:!!M,level:j,visibleData:le,data:p,items:s},$=!1,Re=!1;if(($=oe.drag?"row"===y.trigger||i.dragSort&&"cell"===y.trigger:$)&&(Re=!(!C||!C(q))),(T||k||Ce||c)&&(b.onMouseenter=e=>{We()||(T?(0,_dom.updateCellTitle)(e.currentTarget,i):(k||Ce)&&Ie.triggerBodyTooltipEvent(e,q),Ie.dispatchEvent("cell-mouseenter",Object.assign({cell:e.currentTarget},q),e))}),(k||Ce||c)&&(b.onMouseleave=e=>{We()||((k||Ce)&&Ie.handleTargetLeaveEvent(e),Ie.dispatchEvent("cell-mouseleave",Object.assign({cell:e.currentTarget},q),e))}),($||te.range||K)&&(b.onMousedown=e=>{Ie.triggerCellMousedownEvent(e,q)}),$&&(b.onMouseup=Ie.triggerCellMouseupEvent),b.onClick=e=>{Ie.triggerCellClickEvent(e,q)},b.onDblclick=e=>{Ie.triggerCellDblclickEvent(e,q)},Q.length){h=(0,_util.mergeBodyMethod)(Q,o,I);if(h){var{rowspan:u,colspan:n}=h;if(!u||!n)return null;1<u&&(R.rowspan=u),1<n&&(R.colspan=n)}}else if(P){var{rowspan:e=1,colspan:r=1}=P(q)||{};if(!e||!r)return null;1<e&&(R.rowspan=e),1<r&&(R.colspan=r)}!(M=M&&Q&&(1<R.colspan||1<R.rowspan)?!1:M)&&V&&(ge||pe)&&(ae.showStatus||ae.showUpdateStatus)&&(Ee=Ie.isUpdateByRow(a,i.field));z=g&&!E;let A=ie;re=J?N.height:0,x?A=x:g&&!E&&(A=re||ie),t=F===L.length-1,le=!i.resizeWidth&&("auto"===i.minWidth||"auto"===i.width);let Oe=!1;(g&&(o<w.visibleStartIndex-w.preloadSize||o>w.visibleEndIndex+w.preloadSize)||G&&!i.fixed&&(I<m.visibleStartIndex-m.preloadSize||I>m.visibleEndIndex+m.preloadSize))&&(Oe=!0);p={},g||E||D||_?p.height=A+"px":p.minHeight=A+"px",s=[];M&&ee?s.push((0,_vue.h)("div",{key:"tc",class:["vxe-cell",{"c--title":T,"c--tooltip":k,"c--ellipsis":v}],style:p})):(s.push(...Pe(q,A),(0,_vue.h)("div",{key:"tc",class:["vxe-cell",{"c--title":T,"c--tooltip":k,"c--ellipsis":v}],style:p,title:T?Ie.getCellLabel(a,i):null},Oe?[]:[(0,_vue.h)("div",{colid:O,rowid:l,class:"vxe-cell--wrapper"},i.renderCell(q))])),fe&&d&&(y=d.rule,C=_e?_e.valid:null,c=Object.assign(Object.assign(Object.assign({},q),d),{rule:d}),s.push((0,_vue.h)("div",{key:"tcv",class:["vxe-cell--valid-error-tip",(0,_dom.getPropClass)(f.className,c)],style:y&&y.maxWidth?{width:y.maxWidth+"px"}:null},[(0,_vue.h)("div",{class:"vxe-cell--valid-error-wrapper vxe-cell--valid-error-theme-"+(f.theme||"normal")},[C?Ie.callSlot(C,c):[(0,_vue.h)("span",{class:"vxe-cell--valid-error-msg"},d.content)]])]))));let Se=!1;return K&&ue.area&&ce&&((I||!0!==ce)&&ce!==i.field||(Se=!0)),we&&oe.resizable&&s.push((0,_vue.h)("div",{key:"tcr",class:"vxe-cell--row-resizable",onMousedown:e=>Ie.handleRowResizeMousedownEvent(e,q),onDblclick:e=>Ie.handleRowResizeDblclickEvent(e,q)})),(0,_vue.h)("td",Object.assign(Object.assign(Object.assign({class:["vxe-body--column",O,S?"col--vertical-"+S:"",xe?"col--"+xe:"",ve?"col--"+ve:"",{"col--last":t,"col--tree-node":me,"col--edit":De,"col--ellipsis":E,"col--cs-height":D,"col--rs-height":_,"col--to-row":Se,"col--auto-height":z,"fixed--width":!le,"fixed--hidden":M,"is--padding":X,"is--drag-cell":$&&(se||ne||!j),"is--drag-disabled":Re,"col--dirty":Ee,"col--active":V&&De&&Z.row===a&&(Z.column===i||"row"===ae.mode),"col--valid-error":!!d,"col--current":Y===i},(0,_dom.getPropClass)(ye,q),(0,_dom.getPropClass)(he,q),(0,_dom.getPropClass)(B,q)],key:H||G||g||de.useKey||oe.useKey||de.drag?O:F},R),{style:Object.assign({},_xeUtils.default.isFunction(be)?be(q):be,_xeUtils.default.isFunction(W)?W(q):W)}),b),U&&M?[]:s)},J=(m,w,_,f)=>{let{stripe:y,rowKey:b,highlightHoverRow:C,rowClassName:D,rowStyle:E,editConfig:R,treeConfig:O}=Me,{hasFixedColumn:S,treeExpandedMaps:I,scrollXLoad:M,scrollYLoad:T,isAllOverflow:k,rowExpandedMaps:q,expandColumn:$,selectRadioRow:A,pendingRowMaps:U,isDragColMove:j}=Te,z=ke.fullAllDataRowIdData,F=ze.value,L=e.value,N=c.value,H=qe.value,B=Ne.value,W=He.value,P=l.value,{transform:K,seqMode:V}=N,X=N.children||N.childrenField,Y=[];return _.forEach((t,a)=>{var e={};let r,o=(r=Ie.getRowIndex(t),(B.isHover||C)&&(e.onMouseenter=e=>{We()||Ie.triggerHoverEvent(e,{row:t,rowIndex:r})},e.onMouseleave=()=>{We()||Ie.clearHoverRow()}),(0,_util.getRowid)(Ie,t));var l=z[o];let i=0,s=-1,n=0;l&&(i=l.level,s=O&&K&&"increasing"===V?l._index+1:l.seq,n=l._index);var l={$table:Ie,seq:s,rowid:o,fixed:m,type:renderType,level:i,row:t,rowIndex:r,$rowIndex:a,_rowIndex:n},d=$&&!!q[o];let u=!1,c=[],v=!1;R&&(v=Ie.isInsertByRow(t)),!O||T||K||(c=t[X],u=c&&0<c.length&&!!I[o]),!B.drag||O&&!K||(e.onDragstart=Ie.handleRowDragDragstartEvent,e.onDragend=Ie.handleRowDragDragendEvent,e.onDragover=Ie.handleRowDragDragoverEvent);var p,g,x=["vxe-body--row",O?"row--level-"+i:"",{"row--stripe":y&&(n+1)%2==0,"is--new":v,"is--expand-row":d,"is--expand-tree":u,"row--new":v&&(H.showStatus||H.showInsertStatus),"row--radio":L.highlight&&Ie.eqRow(A,t),"row--checked":F.highlight&&Ie.isCheckedByCheckboxRow(t),"row--pending":!!U[o]},(0,_dom.getPropClass)(D,l)];let h=f.map((e,l)=>Q(s,o,m,w,i,t,r,a,n,e,l,f,_));Y.push(W.drag&&P.animation?(0,_vue.h)(_vue.TransitionGroup,Object.assign({name:"vxe-header--col-list"+(j?"":"-disabled"),tag:"tr",class:x,rowid:o,style:E?_xeUtils.default.isFunction(E)?E(l):E:null,key:b||M||T||B.useKey||B.drag||W.drag||O?o:a},e),{default:()=>h}):(0,_vue.h)("tr",Object.assign({class:x,rowid:o,style:E?_xeUtils.default.isFunction(E)?E(l):E:null,key:b||M||T||B.useKey||B.drag||W.drag||O?o:a},e),h)),d&&({height:x,padding:l}=G.value,d={},p=(x&&(d.height=x+"px"),O&&(d.paddingLeft=i*N.indent+30+"px"),$).showOverflow,p=_xeUtils.default.isUndefined(p)||_xeUtils.default.isNull(p)?k:p,g={$table:Ie,seq:s,column:$,fixed:m,type:renderType,level:i,row:t,rowIndex:r,$rowIndex:a,_rowIndex:n},Y.push((0,_vue.h)("tr",Object.assign({class:["vxe-body--expanded-row",{"is--padding":l}],key:"expand_"+o,style:E?_xeUtils.default.isFunction(E)?E(g):E:null},e),[(0,_vue.h)("td",{class:{"vxe-body--expanded-column":1,"fixed--hidden":m&&!S,"col--ellipsis":p},colspan:f.length},[(0,_vue.h)("div",{class:{"vxe-body--expanded-cell":1,"is--ellipsis":x},style:d},[$.renderData(g)])])]))),u&&Y.push(...J(m,w,c,f))}),Y};(0,_vue.onMounted)(()=>{(0,_vue.nextTick)(()=>{var e=I.fixedType,l=ke.elemStore,e=`${e||"main"}-body-`;l[e+"wrapper"]=A,l[e+"scroll"]=U,l[e+"table"]=j,l[e+"colgroup"]=z,l[e+"list"]=F,l[e+"xSpace"]=L,l[e+"ySpace"]=N,l[e+"emptyBlock"]=H})}),(0,_vue.onUnmounted)(()=>{var e=I.fixedType,l=ke.elemStore,e=`${e||"main"}-body-`;l[e+"wrapper"]=null,l[e+"scroll"]=null,l[e+"table"]=null,l[e+"colgroup"]=null,l[e+"list"]=null,l[e+"xSpace"]=null,l[e+"ySpace"]=null,l[e+"emptyBlock"]=null});return()=>{var e=T.slots;let{fixedColumn:l,fixedType:t,tableColumn:a}=I;var{spanMethod:r,footerSpanMethod:o,mouseConfig:i}=Me,{isGroup:s,tableData:n,scrollXLoad:d,scrollYLoad:u,isAllOverflow:c,isDragRowMove:v,expandColumn:p,dragRow:g,dragCol:x}=Te,{visibleColumn:h,fullAllDataRowIdData:m,fullColumnIdData:w}=ke,_=Ne.value,f=k.value,y=$e.value,b=Be.value,C=q.value,D=$.value;let E=n,R=a,O=!(d||u||c)||p||r||o?!1:!0;t&&(R=h,O)&&(R=l||[]),u&&g&&2<E.length&&(n=m[(0,_util.getRowid)(Ie,g)])&&(c=n._index,p=E[0],r=E[E.length-1],o=m[(0,_util.getRowid)(Ie,p)],h=m[(0,_util.getRowid)(Ie,r)],o)&&h&&(n=o._index,p=h._index,c<n?E=[g].concat(E):p<c&&(E=E.concat([g]))),t||s||d&&x&&2<R.length&&(m=w[x.id])&&(r=m._index,o=R[0],h=R[R.length-1],n=w[o.id],p=w[h.id],n)&&p&&(c=n._index,g=p._index,r<c?R=[x].concat(R):g<r&&(R=R.concat([x])));let S;s=e?e.empty:null,S=s?Ie.callSlot(s,{$table:Ie,$grid:Ie.xegrid}):(m=(d=f.name?renderer.get(f.name):null)?d.renderTableEmpty||d.renderTableEmptyView||d.renderEmpty:null)?(0,_vn.getSlotVNs)(m(f,{$table:Ie})):Me.emptyText||getI18n("vxe.table.emptyText"),o={onScroll(e){Ie.triggerBodyScrollEvent(e,t)}};return(u||C||D)&&(o.onWheel=Ie.triggerBodyWheelEvent),(0,_vue.h)("div",{ref:A,class:["vxe-table--body-wrapper",t?`fixed-${t}--wrapper`:"body--wrapper"],xid:M},[(0,_vue.h)("div",Object.assign({ref:U,class:"vxe-table--body-inner-wrapper"},o),[t?renderEmptyElement(Ie):(0,_vue.h)("div",{ref:L,class:"vxe-body--x-space"}),(0,_vue.h)("div",{ref:N,class:"vxe-body--y-space"}),(0,_vue.h)("table",{ref:j,class:"vxe-table--body",xid:M,cellspacing:0,cellpadding:0,border:0},[(0,_vue.h)("colgroup",{ref:z},R.map((e,l)=>(0,_vue.h)("col",{name:e.id,key:l}))),_.drag&&b.animation?(0,_vue.h)(_vue.TransitionGroup,{ref:F,name:"vxe-body--row-list"+(v?"":"-disabled"),tag:"tbody"},{default:()=>J(t,O,E,R)}):(0,_vue.h)("tbody",{ref:F},J(t,O,E,R))]),(0,_vue.h)("div",{class:"vxe-table--checkbox-range"}),i&&y.area?(0,_vue.h)("div",{class:"vxe-table--cell-area"},[(0,_vue.h)("span",{class:"vxe-table--cell-main-area"},y.extension?[(0,_vue.h)("span",{class:"vxe-table--cell-main-area-btn",onMousedown(e){Ie.triggerCellAreaExtendMousedownEvent&&Ie.triggerCellAreaExtendMousedownEvent(e,{$table:Ie,fixed:t,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"}),(0,_vue.h)("span",{class:"vxe-table--cell-row-status-area"})]):renderEmptyElement(Ie),t?renderEmptyElement(Ie):(0,_vue.h)("div",{class:"vxe-table--empty-block",ref:H},[(0,_vue.h)("div",{class:"vxe-table--empty-content"},S)])])])}}});
|
|
1
|
+
Object.defineProperty(exports,"__esModule",{value:!0}),exports.default=void 0;var _vue=require("vue"),_xeUtils=_interopRequireDefault(require("xe-utils")),_ui=require("../../ui"),_util=require("./util"),_dom=require("../../ui/src/dom"),_utils=require("../../ui/src/utils"),_vn=require("../../ui/src/vn");function _interopRequireDefault(e){return e&&e.__esModule?e:{default:e}}let{getI18n,renderer,renderEmptyElement}=_ui.VxeUI,renderType="body";var _default=exports.default=(0,_vue.defineComponent)({name:"VxeTableBody",props:{tableData:Array,tableColumn:Array,fixedColumn:Array,fixedType:{type:String,default:""}},setup(T){let Ie=(0,_vue.inject)("$xeTable",{}),{xID:k,props:Me,context:q,reactData:Te,internalData:ke}=Ie,{computeEditOpts:qe,computeMouseOpts:$e,computeAreaOpts:Ae,computeDefaultRowHeight:Le,computeEmptyOpts:$,computeTooltipOpts:Ue,computeRadioOpts:e,computeExpandOpts:J,computeTreeOpts:c,computeCheckboxOpts:je,computeCellOpts:ze,computeValidOpts:Fe,computeRowOpts:Ne,computeColumnOpts:He,computeRowDragOpts:Be,computeColumnDragOpts:l,computeLeftFixedWidth:A,computeRightFixedWidth:L}=Ie.getComputeMaps(),U=(0,_vue.ref)(),j=(0,_vue.ref)(),z=(0,_vue.ref)(),F=(0,_vue.ref)(),N=(0,_vue.ref)(),H=(0,_vue.ref)(),B=(0,_vue.ref)(),W=(0,_vue.ref)(),We=()=>{var e=Me.delayHover,{lastScrollTime:l,isDragResize:t}=Te;return!!(t||l&&Date.now()<l+e)},Pe=(e,l)=>{var{row:t,column:a}=e,r=ke.afterFullData,o=Me.treeConfig,i=c.value,{slots:a,treeNode:s}=a,n=ke.fullAllDataRowIdData;if(a&&a.line)return Ie.callSlot(a.line,e);a=n[(0,_util.getRowid)(Ie,t)];let d=0,u=null;a&&(d=a.level,u=a.items[a.treeIndex-1]);n=Ie.eqRow(r[0],t);return o&&s&&(i.showLine||i.line)?[(0,_vue.h)("div",{key:"tl",class:"vxe-tree--line-wrapper"},[(0,_vue.h)("div",{class:"vxe-tree--line",style:{height:`${n?1:(0,_util.calcTreeLine)(e,u)}px`,bottom:`-${Math.floor(l/2)}px`,left:d*i.indent+(d?2-(0,_util.getOffsetSize)(Ie):0)+16+"px"}})])]:[]},Z=(e,l,t,L,U,a,r,j,o,i,z,F,s)=>{var N=ke.fullAllDataRowIdData,{columnKey:H,height:n,cellClassName:B,cellStyle:W,align:d,spanMethod:P,mouseConfig:K,editConfig:V,editRules:u,tooltipConfig:c,padding:v}=Me,{tableData:p,overflowX:X,currentColumn:Y,scrollXLoad:G,scrollYLoad:g,calcCellHeightFlag:J,resizeHeightFlag:x,mergeList:Q,editStore:Z,isAllOverflow:ee,validErrorMaps:h}=Te,{afterFullData:le,scrollXStore:m,scrollYStore:w}=ke,_=ze.value,f=Fe.value,te=je.value,ae=qe.value,re=Ue.value,oe=Ne.value,y=Be.value,ie=Le.value,b=_.height||oe.height,ie=b||ie,{disabledMethod:C,isCrossDrag:se,isPeerDrag:ne}=y,de=He.value,ue=$e.value,ce=Ae.value.selectCellToRow,{type:ve,cellRender:pe,editRender:ge,align:xe,showOverflow:D,className:he,treeNode:me,rowResize:we,padding:R,verticalAlign:E,slots:_e}=i,fe=_.verticalAlign,Z=Z.actived,N=N[l],O=i.id,S=ge||pe,S=S?renderer.get(S.name):null,ye=S?S.tableCellClassName||S.cellClassName:null,be=S?S.tableCellStyle||S.cellStyle:"";let Ce=re.showAll;var re=Ie.getColumnIndex(i),I=Ie.getVTColumnIndex(i),De=(0,_utils.isEnableConf)(ge),x=x?N.resizeHeight:0;let M=t?i.fixed!==t:i.fixed&&X;X=_xeUtils.default.eqNull(R)?null===v?_.padding:v:R,_=_xeUtils.default.eqNull(D)?ee:D,v="ellipsis"===_;let T="title"===_,k=!0===_||"tooltip"===_;R=ee||T||k||v,D=!!b,_=0<x;let Re;b={},xe=xe||(S?S.tableCellAlign:"")||d,S=_xeUtils.default.eqNull(E)?fe:E,d=h[l+":"+O],fe=u&&f.showMessage&&("default"===f.message?n||1<p.length:"inline"===f.message),E={colid:O};let q={$table:Ie,$grid:Ie.xegrid,isEdit:!1,seq:e,rowid:l,row:a,rowIndex:r,$rowIndex:j,_rowIndex:o,column:i,columnIndex:re,$columnIndex:z,_columnIndex:I,fixed:t,type:renderType,isHidden:!!M,level:U,visibleData:le,data:p,items:s},$=!1,Ee=!1;if(($=oe.drag?"row"===y.trigger||i.dragSort&&"cell"===y.trigger:$)&&(Ee=!(!C||!C(q))),(T||k||Ce||c)&&(b.onMouseenter=e=>{We()||(T?(0,_dom.updateCellTitle)(e.currentTarget,i):(k||Ce)&&Ie.triggerBodyTooltipEvent(e,q),Ie.dispatchEvent("cell-mouseenter",Object.assign({cell:e.currentTarget},q),e))}),(k||Ce||c)&&(b.onMouseleave=e=>{We()||((k||Ce)&&Ie.handleTargetLeaveEvent(e),Ie.dispatchEvent("cell-mouseleave",Object.assign({cell:e.currentTarget},q),e))}),($||te.range||K)&&(b.onMousedown=e=>{Ie.triggerCellMousedownEvent(e,q)}),$&&(b.onMouseup=Ie.triggerCellMouseupEvent),b.onClick=e=>{Ie.triggerCellClickEvent(e,q)},b.onDblclick=e=>{Ie.triggerCellDblclickEvent(e,q)},Q.length){h=(0,_util.mergeBodyMethod)(Q,o,I);if(h){var{rowspan:u,colspan:n}=h;if(!u||!n)return null;1<u&&(E.rowspan=u),1<n&&(E.colspan=n)}}else if(P){var{rowspan:e=1,colspan:r=1}=P(q)||{};if(!e||!r)return null;1<e&&(E.rowspan=e),1<r&&(E.colspan=r)}!(M=M&&Q&&(1<E.colspan||1<E.rowspan)?!1:M)&&V&&(ge||pe)&&(ae.showStatus||ae.showUpdateStatus)&&(Re=Ie.isUpdateByRow(a,i.field));j=g&&!R;let A=ie;re=J?N.height:0,x?A=x:g&&!R&&(A=re||ie),t=z===F.length-1,le=!i.resizeWidth&&("auto"===i.minWidth||"auto"===i.width);let Oe=!1;(g&&(o<w.visibleStartIndex-w.preloadSize||o>w.visibleEndIndex+w.preloadSize)||G&&!i.fixed&&(I<m.visibleStartIndex-m.preloadSize||I>m.visibleEndIndex+m.preloadSize))&&(Oe=!0);p={},g||R||D||_?p.height=A+"px":p.minHeight=A+"px",s=[];M&&ee?s.push((0,_vue.h)("div",{key:"tc",class:["vxe-cell",{"c--title":T,"c--tooltip":k,"c--ellipsis":v}],style:p})):(s.push(...Pe(q,A),(0,_vue.h)("div",{key:"tc",class:["vxe-cell",{"c--title":T,"c--tooltip":k,"c--ellipsis":v}],style:p,title:T?Ie.getCellLabel(a,i):null},Oe?[]:[(0,_vue.h)("div",{colid:O,rowid:l,class:"vxe-cell--wrapper"},i.renderCell(q))])),fe&&d&&(y=d.rule,C=_e?_e.valid:null,c=Object.assign(Object.assign(Object.assign({},q),d),{rule:d}),s.push((0,_vue.h)("div",{key:"tcv",class:["vxe-cell--valid-error-tip",(0,_dom.getPropClass)(f.className,c)],style:y&&y.maxWidth?{width:y.maxWidth+"px"}:null},[(0,_vue.h)("div",{class:"vxe-cell--valid-error-wrapper vxe-cell--valid-error-theme-"+(f.theme||"normal")},[C?Ie.callSlot(C,c):[(0,_vue.h)("span",{class:"vxe-cell--valid-error-msg"},d.content)]])]))));let Se=!1;return K&&ue.area&&ce&&((I||!0!==ce)&&ce!==i.field||(Se=!0)),we&&oe.resizable&&s.push((0,_vue.h)("div",{key:"tcr",class:"vxe-cell--row-resizable",onMousedown:e=>Ie.handleRowResizeMousedownEvent(e,q),onDblclick:e=>Ie.handleRowResizeDblclickEvent(e,q)})),(0,_vue.h)("td",Object.assign(Object.assign(Object.assign({class:["vxe-body--column",O,S?"col--vertical-"+S:"",xe?"col--"+xe:"",ve?"col--"+ve:"",{"col--last":t,"col--tree-node":me,"col--edit":De,"col--ellipsis":R,"col--cs-height":D,"col--rs-height":_,"col--to-row":Se,"col--auto-height":j,"fixed--width":!le,"fixed--hidden":M,"is--padding":X,"is--drag-cell":$&&(se||ne||!U),"is--drag-disabled":Ee,"col--dirty":Re,"col--active":V&&De&&Z.row===a&&(Z.column===i||"row"===ae.mode),"col--valid-error":!!d,"col--current":Y===i},(0,_dom.getPropClass)(ye,q),(0,_dom.getPropClass)(he,q),(0,_dom.getPropClass)(B,q)],key:H||G||g||de.useKey||oe.useKey||de.drag?O:z},E),{style:Object.assign({},_xeUtils.default.isFunction(be)?be(q):be,_xeUtils.default.isFunction(W)?W(q):W)}),b),L&&M?[]:s)},Q=(m,w,_,f)=>{let{stripe:y,rowKey:b,highlightHoverRow:C,rowClassName:D,rowStyle:R,editConfig:E,treeConfig:O}=Me,{hasFixedColumn:S,treeExpandedMaps:I,isColLoading:M,scrollXLoad:T,scrollYLoad:k,isAllOverflow:q,rowExpandedMaps:$,expandColumn:A,selectRadioRow:L,pendingRowMaps:U,isDragColMove:j}=Te,z=ke.fullAllDataRowIdData,F=je.value,N=e.value,H=c.value,B=qe.value,W=Ne.value,P=He.value,K=l.value,{transform:V,seqMode:X}=H,Y=H.children||H.childrenField,G=[];return _.forEach((t,a)=>{var e={};let r,o=(r=Ie.getRowIndex(t),(W.isHover||C)&&(e.onMouseenter=e=>{We()||Ie.triggerHoverEvent(e,{row:t,rowIndex:r})},e.onMouseleave=()=>{We()||Ie.clearHoverRow()}),(0,_util.getRowid)(Ie,t));var l=z[o];let i=0,s=-1,n=0;l&&(i=l.level,s=O&&V&&"increasing"===X?l._index+1:l.seq,n=l._index);var l={$table:Ie,seq:s,rowid:o,fixed:m,type:renderType,level:i,row:t,rowIndex:r,$rowIndex:a,_rowIndex:n},d=A&&!!$[o];let u=!1,c=[],v=!1;E&&(v=Ie.isInsertByRow(t)),!O||k||V||(c=t[Y],u=c&&0<c.length&&!!I[o]),!W.drag||O&&!V||(e.onDragstart=Ie.handleRowDragDragstartEvent,e.onDragend=Ie.handleRowDragDragendEvent,e.onDragover=Ie.handleRowDragDragoverEvent);var p,g,x=["vxe-body--row",O?"row--level-"+i:"",{"row--stripe":y&&(n+1)%2==0,"is--new":v,"is--expand-row":d,"is--expand-tree":u,"row--new":v&&(B.showStatus||B.showInsertStatus),"row--radio":N.highlight&&Ie.eqRow(L,t),"row--checked":F.highlight&&Ie.isCheckedByCheckboxRow(t),"row--pending":!!U[o]},(0,_dom.getPropClass)(D,l)];let h=f.map((e,l)=>Z(s,o,m,w,i,t,r,a,n,e,l,f,_));G.push(!M&&P.drag&&K.animation?(0,_vue.h)(_vue.TransitionGroup,Object.assign({name:"vxe-header--col-list"+(j?"":"-disabled"),tag:"tr",class:x,rowid:o,style:R?_xeUtils.default.isFunction(R)?R(l):R:null,key:b||T||k||W.useKey||W.drag||P.drag||O?o:a},e),{default:()=>h}):(0,_vue.h)("tr",Object.assign({class:x,rowid:o,style:R?_xeUtils.default.isFunction(R)?R(l):R:null,key:b||T||k||W.useKey||W.drag||P.drag||O?o:a},e),h)),d&&({height:x,padding:l}=J.value,d={},p=(x&&(d.height=x+"px"),O&&(d.paddingLeft=i*H.indent+30+"px"),A).showOverflow,p=_xeUtils.default.isUndefined(p)||_xeUtils.default.isNull(p)?q:p,g={$table:Ie,seq:s,column:A,fixed:m,type:renderType,level:i,row:t,rowIndex:r,$rowIndex:a,_rowIndex:n},G.push((0,_vue.h)("tr",Object.assign({class:["vxe-body--expanded-row",{"is--padding":l}],key:"expand_"+o,style:R?_xeUtils.default.isFunction(R)?R(g):R:null},e),[(0,_vue.h)("td",{class:{"vxe-body--expanded-column":1,"fixed--hidden":m&&!S,"col--ellipsis":p},colspan:f.length},[(0,_vue.h)("div",{class:{"vxe-body--expanded-cell":1,"is--ellipsis":x},style:d},[A.renderData(g)])])]))),u&&G.push(...Q(m,w,c,f))}),G};(0,_vue.onMounted)(()=>{(0,_vue.nextTick)(()=>{var e=T.fixedType,l=ke.elemStore,e=`${e||"main"}-body-`;l[e+"wrapper"]=U,l[e+"scroll"]=j,l[e+"table"]=z,l[e+"colgroup"]=F,l[e+"list"]=N,l[e+"xSpace"]=H,l[e+"ySpace"]=B,l[e+"emptyBlock"]=W})}),(0,_vue.onUnmounted)(()=>{var e=T.fixedType,l=ke.elemStore,e=`${e||"main"}-body-`;l[e+"wrapper"]=null,l[e+"scroll"]=null,l[e+"table"]=null,l[e+"colgroup"]=null,l[e+"list"]=null,l[e+"xSpace"]=null,l[e+"ySpace"]=null,l[e+"emptyBlock"]=null});return()=>{var e=q.slots;let{fixedColumn:l,fixedType:t,tableColumn:a}=T;var{spanMethod:r,footerSpanMethod:o,mouseConfig:i}=Me,{isGroup:s,tableData:n,isRowLoading:d,isColLoading:u,scrollXLoad:c,scrollYLoad:v,isAllOverflow:p,isDragRowMove:g,expandColumn:x,dragRow:h,dragCol:m}=Te,{visibleColumn:w,fullAllDataRowIdData:_,fullColumnIdData:f}=ke,y=Ne.value,b=$.value,C=$e.value,D=Be.value,R=A.value,E=L.value;let O=n,S=a,I=!(c||v||p)||x||r||o?!1:!0;t&&(S=w,I)&&(S=l||[]),v&&h&&2<O.length&&(n=_[(0,_util.getRowid)(Ie,h)])&&(p=n._index,x=O[0],r=O[O.length-1],o=_[(0,_util.getRowid)(Ie,x)],w=_[(0,_util.getRowid)(Ie,r)],o)&&w&&(n=o._index,x=w._index,p<n?O=[h].concat(O):x<p&&(O=O.concat([h]))),t||s||c&&m&&2<S.length&&(_=f[m.id])&&(r=_._index,o=S[0],w=S[S.length-1],n=f[o.id],x=f[w.id],n)&&x&&(p=n._index,h=x._index,r<p?S=[m].concat(S):h<r&&(S=S.concat([m])));let M;s=e?e.empty:null,M=s?Ie.callSlot(s,{$table:Ie,$grid:Ie.xegrid}):(_=(c=b.name?renderer.get(b.name):null)?c.renderTableEmpty||c.renderTableEmptyView||c.renderEmpty:null)?(0,_vn.getSlotVNs)(_(b,{$table:Ie})):Me.emptyText||getI18n("vxe.table.emptyText"),o={onScroll(e){Ie.triggerBodyScrollEvent(e,t)}};return(v||R||E)&&(o.onWheel=Ie.triggerBodyWheelEvent),(0,_vue.h)("div",{ref:U,class:["vxe-table--body-wrapper",t?`fixed-${t}--wrapper`:"body--wrapper"],xid:k},[(0,_vue.h)("div",Object.assign({ref:j,class:"vxe-table--body-inner-wrapper"},o),[t?renderEmptyElement(Ie):(0,_vue.h)("div",{ref:H,class:"vxe-body--x-space"}),(0,_vue.h)("div",{ref:B,class:"vxe-body--y-space"}),(0,_vue.h)("table",{ref:z,class:"vxe-table--body",xid:k,cellspacing:0,cellpadding:0,border:0},[(0,_vue.h)("colgroup",{ref:F},S.map((e,l)=>(0,_vue.h)("col",{name:e.id,key:l}))),!d&&!u&&y.drag&&D.animation?(0,_vue.h)(_vue.TransitionGroup,{ref:N,name:"vxe-body--row-list"+(g?"":"-disabled"),tag:"tbody"},{default:()=>Q(t,I,O,S)}):(0,_vue.h)("tbody",{ref:N},Q(t,I,O,S))]),(0,_vue.h)("div",{class:"vxe-table--checkbox-range"}),i&&C.area?(0,_vue.h)("div",{class:"vxe-table--cell-area"},[(0,_vue.h)("span",{class:"vxe-table--cell-main-area"},C.extension?[(0,_vue.h)("span",{class:"vxe-table--cell-main-area-btn",onMousedown(e){Ie.triggerCellAreaExtendMousedownEvent&&Ie.triggerCellAreaExtendMousedownEvent(e,{$table:Ie,fixed:t,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"}),(0,_vue.h)("span",{class:"vxe-table--cell-row-status-area"})]):renderEmptyElement(Ie),t?renderEmptyElement(Ie):(0,_vue.h)("div",{class:"vxe-table--empty-block",ref:W},[(0,_vue.h)("div",{class:"vxe-table--empty-content"},M)])])])}}});
|
package/lib/table/src/cell.js
CHANGED
|
@@ -1063,6 +1063,7 @@ const Cell = exports.Cell = {
|
|
|
1063
1063
|
const sortOpts = computeSortOpts.value;
|
|
1064
1064
|
const {
|
|
1065
1065
|
showIcon,
|
|
1066
|
+
allowBtn,
|
|
1066
1067
|
iconLayout,
|
|
1067
1068
|
iconAsc,
|
|
1068
1069
|
iconDesc,
|
|
@@ -1079,19 +1080,19 @@ const Cell = exports.Cell = {
|
|
|
1079
1080
|
'sort--active': order === 'asc'
|
|
1080
1081
|
}],
|
|
1081
1082
|
title: getI18n('vxe.table.sortAsc'),
|
|
1082
|
-
onClick
|
|
1083
|
+
onClick: allowBtn ? evnt => {
|
|
1083
1084
|
evnt.stopPropagation();
|
|
1084
1085
|
$table.triggerSortEvent(evnt, column, 'asc');
|
|
1085
|
-
}
|
|
1086
|
+
} : undefined
|
|
1086
1087
|
}), (0, _vue.h)('i', {
|
|
1087
1088
|
class: ['vxe-sort--desc-btn', iconDesc || getIcon().TABLE_SORT_DESC, {
|
|
1088
1089
|
'sort--active': order === 'desc'
|
|
1089
1090
|
}],
|
|
1090
1091
|
title: getI18n('vxe.table.sortDesc'),
|
|
1091
|
-
onClick
|
|
1092
|
+
onClick: allowBtn ? evnt => {
|
|
1092
1093
|
evnt.stopPropagation();
|
|
1093
1094
|
$table.triggerSortEvent(evnt, column, 'desc');
|
|
1094
|
-
}
|
|
1095
|
+
} : undefined
|
|
1095
1096
|
})])];
|
|
1096
1097
|
}
|
|
1097
1098
|
return [];
|
|
@@ -1 +1 @@
|
|
|
1
|
-
Object.defineProperty(exports,"__esModule",{value:!0}),exports.default=exports.Cell=void 0;var _vue=require("vue"),_xeUtils=_interopRequireDefault(require("xe-utils")),_ui=require("../../ui"),_utils=require("../../ui/src/utils"),_dom=require("../../ui/src/dom"),_util=require("./util"),_vn=require("../../ui/src/vn");function _interopRequireDefault(e){return e&&e.__esModule?e:{default:e}}let{getI18n,getIcon,renderer,formats,renderEmptyElement}=_ui.VxeUI;function renderTitlePrefixIcon(l){let{$table:r,column:e}=l,t=e.titlePrefix||e.titleHelp;return t?(0,_vue.h)("i",{class:["vxe-cell-title-prefix-icon",t.icon||getIcon().TABLE_TITLE_PREFIX],onMouseenter(e){r.triggerHeaderTitleEvent(e,t,l)},onMouseleave(e){r.handleTargetLeaveEvent(e)}}):renderEmptyElement(r)}function renderTitleSuffixIcon(l){let{$table:r,column:e}=l,t=e.titleSuffix;return t?(0,_vue.h)("i",{class:["vxe-cell-title-suffix-icon",t.icon||getIcon().TABLE_TITLE_SUFFIX],onMouseenter(e){r.triggerHeaderTitleEvent(e,t,l)},onMouseleave(e){r.handleTargetLeaveEvent(e)}}):renderEmptyElement(r)}function renderCellDragIcon(l){let{$table:r,column:e}=l;var t=r.context,t=t.slots,n=e.slots,a=r.props.dragConfig,o=r.getComputeMaps().computeRowDragOpts,{icon:o,trigger:d,disabledMethod:s}=o.value,s=s||(a?a.rowDisabledMethod:null);let i=s&&s(l);s=(n?n.rowDragIcon||n["row-drag-icon"]:null)||t.rowDragIcon||t["row-drag-icon"],n={};return"cell"!==d&&(n.onMousedown=e=>{i||r.handleCellDragMousedownEvent(e,l)},n.onMouseup=r.handleCellDragMouseupEvent),(0,_vue.h)("span",Object.assign({key:"dg",class:["vxe-cell--drag-handle",{"is--disabled":i}]},n),s?r.callSlot(s,l):[(0,_vue.h)("i",{class:o||(a?a.rowIcon:"")||getIcon().TABLE_DRAG_ROW})])}function renderCellBaseVNs(e,l){var{$table:r,column:t,level:n}=e,t=t.dragSort,{treeConfig:a,dragConfig:o}=r.props,{computeRowOpts:r,computeRowDragOpts:d}=r.getComputeMaps(),r=r.value,{showIcon:d,isPeerDrag:s,isCrossDrag:i,visibleMethod:c}=d.value,c=c||(o?o.rowVisibleMethod:null),l=_xeUtils.default.isArray(l)?l:[l];return!(t&&r.drag&&(d||o&&o.showRowIcon))||c&&!c(e)||a&&!s&&!i&&n||l.unshift(renderCellDragIcon(e)),l}function renderHeaderCellDragIcon(r){let{$table:t,column:e}=r;var n=t.context,n=n.slots,a=e.slots,{computeColumnOpts:o,computeColumnDragOpts:d}=t.getComputeMaps(),o=o.value,{showIcon:d,icon:s,trigger:i,isPeerDrag:l,isCrossDrag:c,visibleMethod:u,disabledMethod:C}=d.value;if(!o.drag||!d||u&&!u(r)||e.fixed||!l&&!c&&e.parentId)return renderEmptyElement(t);{let l=C&&C(r);o=(a?a.columnDragIcon||a["column-drag-icon"]:null)||n.columnDragIcon||n["column-drag-icon"],d={};return"cell"!==i&&(d.onMousedown=e=>{l||t.handleHeaderCellDragMousedownEvent(e,r)},d.onMouseup=t.handleHeaderCellDragMouseupEvent),(0,_vue.h)("span",Object.assign({key:"dg",class:["vxe-cell--drag-handle",{"is--disabled":l}]},d),o?t.callSlot(o,r):[(0,_vue.h)("i",{class:s||getIcon().TABLE_DRAG_COLUMN})])}}function renderHeaderCellBaseVNs(e,l){return[renderTitlePrefixIcon(e),renderHeaderCellDragIcon(e),..._xeUtils.default.isArray(l)?l:[l],renderTitleSuffixIcon(e)]}function renderTitleContent(l,e){let{$table:r,column:t}=l;var n=r.props;let a=r.reactData;var o=r.getComputeMaps().computeTooltipOpts,n=n.showHeaderOverflow,{type:d,showHeaderOverflow:s}=t;let i=o.value.showAll;o=_xeUtils.default.isUndefined(s)||_xeUtils.default.isNull(s)?n:s;let c="title"===o,u=!0===o||"tooltip"===o;n={};return(c||u||i)&&(n.onMouseenter=e=>{a.isDragResize||(c?(0,_dom.updateCellTitle)(e.currentTarget,t):(u||i)&&r.triggerHeaderTooltipEvent(e,l))}),(u||i)&&(n.onMouseleave=e=>{a.isDragResize||(u||i)&&r.handleTargetLeaveEvent(e)}),["html"===d&&_xeUtils.default.isString(e)?(0,_vue.h)("span",Object.assign({class:"vxe-cell--title",innerHTML:e},n)):(0,_vue.h)("span",Object.assign({class:"vxe-cell--title"},n),(0,_vn.getSlotVNs)(e))]}function getFooterContent(e){var{$table:l,column:r,_columnIndex:t,items:n,row:a}=e,{slots:o,editRender:d,cellRender:s,footerFormatter:i}=r,d=d||s,s=o?o.footer:null;if(s)return l.callSlot(s,e);let c="";c=_xeUtils.default.isArray(n)?n[t]:_xeUtils.default.get(a,r.field);o=Object.assign(e,{itemValue:c});if(i)return _xeUtils.default.isFunction(i)?""+i(o):(n=(s=(l=_xeUtils.default.isArray(i))?formats.get(i[0]):formats.get(i))?s.tableFooterCellFormatMethod:null)?""+(l?n(o,...i.slice(1)):n(o)):"";if(d){t=renderer.get(d.name);if(t){a=t.renderTableFooter||t.renderFooter;if(a)return(0,_vn.getSlotVNs)(a(d,o))}}return[(0,_utils.formatText)(c,1)]}function getDefaultCellLabel(e){var{$table:e,row:l,column:r}=e;return(0,_utils.formatText)(e.getCellLabel(l,r),1)}function renderCellHandle(e){var{column:l,$table:r}=e,t=r.props.editConfig,{type:l,treeNode:n,editRender:a}=l,{computeEditOpts:r,computeCheckboxOpts:o}=r.getComputeMaps(),d=o.value,o=r.value;switch(l){case"seq":return n?Cell.renderTreeIndexCell(e):Cell.renderSeqCell(e);case"radio":return n?Cell.renderTreeRadioCell(e):Cell.renderRadioCell(e);case"checkbox":return d.checkField?n?Cell.renderTreeSelectionCellByProp(e):Cell.renderCheckboxCellByProp(e):n?Cell.renderTreeSelectionCell(e):Cell.renderCheckboxCell(e);case"expand":return Cell.renderExpandCell(e);case"html":return n?Cell.renderTreeHTMLCell(e):Cell.renderHTMLCell(e)}return t&&a?"cell"===o.mode?n?Cell.renderTreeCellEdit(e):Cell.renderCellEdit(e):n?Cell.renderTreeRowEdit(e):Cell.renderRowEdit(e):n?Cell.renderTreeCell(e):Cell.renderDefaultCell(e)}function renderHeaderHandle(e){var{column:l,$table:r}=e,r=r.props.editConfig,{type:l,filters:t,sortable:n,editRender:a}=l;switch(l){case"seq":return Cell.renderSeqHeader(e);case"radio":return Cell.renderRadioHeader(e);case"checkbox":return Cell.renderCheckboxHeader(e);case"html":if(t&&n)return Cell.renderSortAndFilterHeader(e);if(n)return Cell.renderSortHeader(e);if(t)return Cell.renderFilterHeader(e)}return r&&a?Cell.renderEditHeader(e):t&&n?Cell.renderSortAndFilterHeader(e):n?Cell.renderSortHeader(e):t?Cell.renderFilterHeader(e):Cell.renderDefaultHeader(e)}function renderFooterHandle(e){return Cell.renderDefaultFooter(e)}let Cell=exports.Cell={createColumn(e,l){var r=l.type,t={renderHeader:renderHeaderHandle,renderCell:renderCellHandle,renderFooter:renderFooterHandle};return"expand"===r&&(t.renderData=Cell.renderExpandData),(0,_util.createColumn)(e,l,t)},renderHeaderTitle(e){var{$table:l,column:r}=e,{slots:t,editRender:n,cellRender:a}=r,n=n||a,a=t?t.header:null;if(a)return renderTitleContent(e,l.callSlot(a,e));if(n){t=renderer.get(n.name);if(t){l=t.renderTableHeader||t.renderHeader;if(l)return renderTitleContent(e,(0,_vn.getSlotVNs)(l(n,e)))}}return renderTitleContent(e,(0,_utils.formatText)(r.getTitle(),1))},renderDefaultHeader(e){return renderHeaderCellBaseVNs(e,Cell.renderHeaderTitle(e))},renderDefaultCell(e){var{$table:l,row:r,column:t}=e,{slots:n,editRender:a,cellRender:o}=t,o=a||o,n=n?n.default:null;if(n)return renderCellBaseVNs(e,l.callSlot(n,e));if(o){n=renderer.get(o.name);if(n){var d=n.renderTableCell||n.renderCell,n=n.renderTableDefault||n.renderDefault,d=a?d:n;if(d)return renderCellBaseVNs(e,(0,_vn.getSlotVNs)(d(o,Object.assign({$type:a?"edit":"cell"},e))))}}n=l.getCellLabel(r,t),d=a?a.placeholder:"";return renderCellBaseVNs(e,[(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)(d),1)):(0,_vue.h)("span",(0,_utils.formatText)(n,1))])])},renderTreeCell(e){return Cell.renderTreeIcon(e,Cell.renderDefaultCell(e))},renderDefaultFooter(e){return getFooterContent(e)},renderTreeIcon(l,e){let{$table:r,isHidden:t}=l;var n=r.reactData,a=r.internalData,o=r.getComputeMaps().computeTreeOpts,{treeExpandedMaps:n,treeExpandLazyLoadedMaps:d}=n,a=a.fullAllDataRowIdData,o=o.value,{row:s,column:i,level:c}=l,i=i.slots,{indent:u,lazy:C,trigger:v,iconLoaded:p,showIcon:g,iconOpen:h,iconClose:E}=o,_=o.children||o.childrenField,o=o.hasChild||o.hasChildField,_=s[_],_=_&&_.length,i=i?i.icon:null;let b=!1,x=!1,f=!1,m=!1;var T={};return i?r.callSlot(i,l):(t||(i=(0,_util.getRowid)(r,s),x=!!n[i],C&&(n=a[i],f=!!d[i],b=s[o],m=!!n.treeLoaded)),v&&"default"!==v||(T.onClick=e=>{r.triggerTreeExpandEvent(e,l)}),[(0,_vue.h)("div",{class:["vxe-cell--tree-node",{"is--active":x}],style:{paddingLeft:c*u+"px"}},[g&&(!C||m?_:_||b)?[(0,_vue.h)("div",Object.assign({class:"vxe-tree--btn-wrapper"},T),[(0,_vue.h)("i",{class:["vxe-tree--node-btn",f?p||getIcon().TABLE_TREE_LOADED:x?h||getIcon().TABLE_TREE_OPEN:E||getIcon().TABLE_TREE_CLOSE]})])]:null,(0,_vue.h)("div",{class:"vxe-tree-cell"},e)])])},renderSeqHeader(e){var{$table:l,column:r}=e,t=r.slots,t=t?t.header:null;return renderHeaderCellBaseVNs(e,renderTitleContent(e,t?l.callSlot(t,e):(0,_utils.formatText)(r.getTitle(),1)))},renderSeqCell(e){var{$table:l,column:r}=e,t=l.props.treeConfig,n=l.getComputeMaps().computeSeqOpts,n=n.value,r=r.slots,r=r?r.default:null;return r?renderCellBaseVNs(e,l.callSlot(r,e)):(l=e.seq,r=n.seqMethod,renderCellBaseVNs(e,[(0,_vue.h)("span",""+(0,_utils.formatText)(r?r(e):t?l:(n.startIndex||0)+l,1))]))},renderTreeIndexCell(e){return Cell.renderTreeIcon(e,Cell.renderSeqCell(e))},renderRadioHeader(e){var{$table:l,column:r}=e,t=r.slots,n=t?t.header:null,t=t?t.title:null;return renderHeaderCellBaseVNs(e,renderTitleContent(e,n?l.callSlot(n,e):[(0,_vue.h)("span",{class:"vxe-radio--label"},t?l.callSlot(t,e):(0,_utils.formatText)(r.getTitle(),1))]))},renderRadioCell(l){let{$table:r,column:e,isHidden:t}=l;var n=r.reactData,a=r.getComputeMaps().computeRadioOpts,n=n.selectRadioRow,o=e.slots,{labelField:a,checkMethod:d,visibleMethod:s}=a.value,i=l.row,c=o?o.default:null,o=o?o.radio:null,n=r.eqRow(i,n);let u=!s||s({row:i}),C=!!d,v;t||(v={onClick(e){!C&&u&&r.triggerRadioRowEvent(e,l)}},d&&(C=!d({row:i})));s=Object.assign(Object.assign({},l),{checked:n,disabled:C,visible:u});return o?renderCellBaseVNs(l,r.callSlot(o,s)):(d=[],u&&d.push((0,_vue.h)("span",{class:["vxe-radio--icon",n?getIcon().TABLE_RADIO_CHECKED:getIcon().TABLE_RADIO_UNCHECKED]})),(c||a)&&d.push((0,_vue.h)("span",{class:"vxe-radio--label"},c?r.callSlot(c,s):_xeUtils.default.get(i,a))),renderCellBaseVNs(l,[(0,_vue.h)("span",Object.assign({class:["vxe-cell--radio",{"is--checked":n,"is--disabled":C}]},v),d)]))},renderTreeRadioCell(e){return Cell.renderTreeIcon(e,Cell.renderRadioCell(e))},renderCheckboxHeader(e){let{$table:l,column:r,isHidden:t}=e;var n=l.reactData,{computeIsAllCheckboxDisabled:a,computeCheckboxOpts:o}=l.getComputeMaps();let{isAllSelected:d,isIndeterminate:s}=n,i=a.value;var n=r.slots,a=n?n.header:null,n=n?n.title:null,o=o.value,c=r.getTitle(),u={},C=(t||(u.onClick=e=>{i||l.triggerCheckAllEvent(e,!d)}),Object.assign(Object.assign({},e),{checked:d,disabled:i,indeterminate:s}));return a?renderHeaderCellBaseVNs(e,renderTitleContent(C,l.callSlot(a,C))):(o.checkStrictly?o.showHeader:!1!==o.showHeader)?renderHeaderCellBaseVNs(e,renderTitleContent(C,[(0,_vue.h)("span",Object.assign({class:["vxe-cell--checkbox",{"is--checked":d,"is--disabled":i,"is--indeterminate":s}],title:getI18n("vxe.table.allTitle")},u),[(0,_vue.h)("span",{class:["vxe-checkbox--icon",s?getIcon().TABLE_CHECKBOX_INDETERMINATE:d?getIcon().TABLE_CHECKBOX_CHECKED:getIcon().TABLE_CHECKBOX_UNCHECKED]})].concat(n||c?[(0,_vue.h)("span",{class:"vxe-checkbox--label"},n?l.callSlot(n,C):c)]:[]))])):renderHeaderCellBaseVNs(e,renderTitleContent(C,[(0,_vue.h)("span",{class:"vxe-checkbox--label"},n?l.callSlot(n,C):c)]))},renderCheckboxCell(l){let{$table:r,row:e,column:t,isHidden:n}=l;var a=r.props.treeConfig,{selectCheckboxMaps:o,treeIndeterminateMaps:d}=r.reactData,s=r.getComputeMaps().computeCheckboxOpts,{labelField:s,checkMethod:i,visibleMethod:c}=s.value,u=t.slots,C=u?u.default:null,u=u?u.checkbox:null;let v=!1,p=!1,g=!c||c({row:e}),h=!!i;var E,c={},o=(n||(E=(0,_util.getRowid)(r,e),p=!!o[E],c.onClick=e=>{!h&&g&&r.triggerCheckRowEvent(e,l,!p)},i&&(h=!i({row:e})),a&&(v=!!d[E])),Object.assign(Object.assign({},l),{checked:p,disabled:h,visible:g,indeterminate:v}));return u?renderCellBaseVNs(l,r.callSlot(u,o)):(i=[],g&&i.push((0,_vue.h)("span",{class:["vxe-checkbox--icon",v?getIcon().TABLE_CHECKBOX_INDETERMINATE:p?getIcon().TABLE_CHECKBOX_CHECKED:getIcon().TABLE_CHECKBOX_UNCHECKED]})),(C||s)&&i.push((0,_vue.h)("span",{class:"vxe-checkbox--label"},C?r.callSlot(C,o):_xeUtils.default.get(e,s))),renderCellBaseVNs(l,[(0,_vue.h)("span",Object.assign({class:["vxe-cell--checkbox",{"is--checked":p,"is--disabled":h,"is--indeterminate":v,"is--hidden":!g}]},c),i)]))},renderTreeSelectionCell(e){return Cell.renderTreeIcon(e,Cell.renderCheckboxCell(e))},renderCheckboxCellByProp(l){let{$table:r,row:e,column:t,isHidden:n}=l;var a=r.props.treeConfig,o=r.reactData.treeIndeterminateMaps,d=r.getComputeMaps().computeCheckboxOpts,d=d.value,{labelField:s,checkField:i,checkMethod:c,visibleMethod:u}=d,d=d.indeterminateField||d.halfField,C=t.slots,v=C?C.default:null,C=C?C.checkbox:null;let p=!1,g=!1,h=!u||u({row:e}),E=!!c;var _,u={},i=(n||(_=(0,_util.getRowid)(r,e),g=_xeUtils.default.get(e,i),u.onClick=e=>{!E&&h&&r.triggerCheckRowEvent(e,l,!g)},c&&(E=!c({row:e})),a&&(p=!!o[_])),Object.assign(Object.assign({},l),{checked:g,disabled:E,visible:h,indeterminate:p}));return C?renderCellBaseVNs(l,r.callSlot(C,i)):(c=[],h&&(c.push((0,_vue.h)("span",{class:["vxe-checkbox--icon",p?getIcon().TABLE_CHECKBOX_INDETERMINATE:g?getIcon().TABLE_CHECKBOX_CHECKED:getIcon().TABLE_CHECKBOX_UNCHECKED]})),v||s)&&c.push((0,_vue.h)("span",{class:"vxe-checkbox--label"},v?r.callSlot(v,i):_xeUtils.default.get(e,s))),renderCellBaseVNs(l,[(0,_vue.h)("span",Object.assign({class:["vxe-cell--checkbox",{"is--checked":g,"is--disabled":E,"is--indeterminate":d&&!g?e[d]:p,"is--hidden":!h}]},u),c)]))},renderTreeSelectionCellByProp(e){return Cell.renderTreeIcon(e,Cell.renderCheckboxCellByProp(e))},renderExpandCell(l){let{$table:r,isHidden:e,row:t,column:n}=l;var{rowExpandedMaps:a,rowExpandLazyLoadedMaps:o}=r.reactData,d=r.getComputeMaps().computeExpandOpts,{lazy:d,labelField:s,iconLoaded:i,showIcon:c,iconOpen:u,iconClose:C,visibleMethod:v}=d.value,p=n.slots,g=p?p.default:null,p=p?p.icon:null;let h=!1,E=!1;return p?renderCellBaseVNs(l,r.callSlot(p,l)):(e||(p=(0,_util.getRowid)(r,t),h=!!a[p],d&&(E=!!o[p])),renderCellBaseVNs(l,[!c||v&&!v(l)?renderEmptyElement(r):(0,_vue.h)("span",{class:["vxe-table--expanded",{"is--active":h}],onClick(e){r.triggerRowExpandEvent(e,l)}},[(0,_vue.h)("i",{class:["vxe-table--expand-btn",E?i||getIcon().TABLE_EXPAND_LOADED:h?u||getIcon().TABLE_EXPAND_OPEN:C||getIcon().TABLE_EXPAND_CLOSE]})]),g||s?(0,_vue.h)("span",{class:"vxe-table--expand-label"},g?r.callSlot(g,l):_xeUtils.default.get(t,s)):renderEmptyElement(r)]))},renderExpandData(e){var{$table:l,column:r}=e,{slots:r,contentRender:t}=r,r=r?r.content:null;if(r)return l.callSlot(r,e);if(t){l=renderer.get(t.name);if(l){r=l.renderTableExpand||l.renderExpand;if(r)return(0,_vn.getSlotVNs)(r(t,e))}}return[]},renderHTMLCell(e){var{$table:l,column:r}=e,r=r.slots,r=r?r.default:null;return renderCellBaseVNs(e,r?l.callSlot(r,e):[(0,_vue.h)("span",{class:"vxe-cell--html",innerHTML:getDefaultCellLabel(e)})])},renderTreeHTMLCell(e){return Cell.renderTreeIcon(e,Cell.renderHTMLCell(e))},renderSortAndFilterHeader(e){return renderHeaderCellBaseVNs(e,Cell.renderHeaderTitle(e).concat(Cell.renderSortIcon(e).concat(Cell.renderFilterIcon(e))))},renderSortHeader(e){return renderHeaderCellBaseVNs(e,Cell.renderHeaderTitle(e).concat(Cell.renderSortIcon(e)))},renderSortIcon(e){let{$table:l,column:r}=e;var t=l.getComputeMaps().computeSortOpts,{showIcon:t,iconLayout:n,iconAsc:a,iconDesc:o,iconVisibleMethod:d}=t.value,s=r.order;return!t||d&&!d(e)?[]:[(0,_vue.h)("span",{class:["vxe-cell--sort",`vxe-cell--sort-${n}-layout`]},[(0,_vue.h)("i",{class:["vxe-sort--asc-btn",a||getIcon().TABLE_SORT_ASC,{"sort--active":"asc"===s}],title:getI18n("vxe.table.sortAsc"),onClick(e){e.stopPropagation(),l.triggerSortEvent(e,r,"asc")}}),(0,_vue.h)("i",{class:["vxe-sort--desc-btn",o||getIcon().TABLE_SORT_DESC,{"sort--active":"desc"===s}],title:getI18n("vxe.table.sortDesc"),onClick(e){e.stopPropagation(),l.triggerSortEvent(e,r,"desc")}})])]},renderFilterHeader(e){return renderHeaderCellBaseVNs(e,Cell.renderHeaderTitle(e).concat(Cell.renderFilterIcon(e)))},renderFilterIcon(l){let{$table:r,column:e,hasFilter:t}=l;var n=r.reactData.filterStore,a=r.getComputeMaps().computeFilterOpts,{showIcon:a,iconNone:o,iconMatch:d,iconVisibleMethod:s}=a.value;return!a||s&&!s(l)?[]:[(0,_vue.h)("span",{class:["vxe-cell--filter",{"is--active":n.visible&&n.column===e}]},[(0,_vue.h)("i",{class:["vxe-filter--btn",t?d||getIcon().TABLE_FILTER_MATCH:o||getIcon().TABLE_FILTER_NONE],title:getI18n("vxe.table.filter"),onClick(e){r.triggerFilterEvent&&r.triggerFilterEvent(e,l.column,l)}})])]},renderEditHeader(e){var{$table:l,column:r}=e,t=l.props,n=l.getComputeMaps().computeEditOpts,{editConfig:t,editRules:a}=t,n=n.value,{sortable:o,filters:d,editRender:s}=r;let i=!1,c=(a&&(a=_xeUtils.default.get(a,r.field))&&(i=a.some(e=>e.required)),[]);return renderHeaderCellBaseVNs(e,(c=(0,_utils.isEnableConf)(t)?[i&&n.showAsterisk?(0,_vue.h)("i",{class:"vxe-cell--required-icon"}):renderEmptyElement(l),(0,_utils.isEnableConf)(s)&&n.showIcon?(0,_vue.h)("i",{class:["vxe-cell--edit-icon",n.icon||getIcon().TABLE_EDIT]}):renderEmptyElement(l)]:c).concat(Cell.renderHeaderTitle(e)).concat(o?Cell.renderSortIcon(e):[]).concat(d?Cell.renderFilterIcon(e):[]))},renderRowEdit(e){var{$table:l,column:r}=e,l=l.reactData.editStore,l=l.actived,r=r.editRender;return Cell.runRenderer(e,(0,_utils.isEnableConf)(r)&&l&&l.row===e.row)},renderTreeRowEdit(e){return Cell.renderTreeIcon(e,Cell.renderRowEdit(e))},renderCellEdit(e){var{$table:l,column:r}=e,l=l.reactData.editStore,l=l.actived,r=r.editRender;return Cell.runRenderer(e,(0,_utils.isEnableConf)(r)&&l&&l.row===e.row&&l.column===e.column)},renderTreeCellEdit(e){return Cell.renderTreeIcon(e,Cell.renderCellEdit(e))},runRenderer(e,l){var{$table:r,column:t}=e,{slots:t,editRender:n,formatter:a}=t,o=t?t.default:null,t=t?t.edit:null,d=renderer.get(n.name),d=d?d.renderTableEdit||d.renderEdit:null,s=Object.assign({$type:"",isEdit:l},e);return l?(s.$type="edit",t?r.callSlot(t,s):d?(0,_vn.getSlotVNs)(d(n,s)):[]):o?renderCellBaseVNs(e,r.callSlot(o,s)):a?renderCellBaseVNs(e,[(0,_vue.h)("span",{class:"vxe-cell--label"},getDefaultCellLabel(s))]):Cell.renderDefaultCell(s)}};var _default=exports.default=Cell;
|
|
1
|
+
Object.defineProperty(exports,"__esModule",{value:!0}),exports.default=exports.Cell=void 0;var _vue=require("vue"),_xeUtils=_interopRequireDefault(require("xe-utils")),_ui=require("../../ui"),_utils=require("../../ui/src/utils"),_dom=require("../../ui/src/dom"),_util=require("./util"),_vn=require("../../ui/src/vn");function _interopRequireDefault(e){return e&&e.__esModule?e:{default:e}}let{getI18n,getIcon,renderer,formats,renderEmptyElement}=_ui.VxeUI;function renderTitlePrefixIcon(l){let{$table:r,column:e}=l,t=e.titlePrefix||e.titleHelp;return t?(0,_vue.h)("i",{class:["vxe-cell-title-prefix-icon",t.icon||getIcon().TABLE_TITLE_PREFIX],onMouseenter(e){r.triggerHeaderTitleEvent(e,t,l)},onMouseleave(e){r.handleTargetLeaveEvent(e)}}):renderEmptyElement(r)}function renderTitleSuffixIcon(l){let{$table:r,column:e}=l,t=e.titleSuffix;return t?(0,_vue.h)("i",{class:["vxe-cell-title-suffix-icon",t.icon||getIcon().TABLE_TITLE_SUFFIX],onMouseenter(e){r.triggerHeaderTitleEvent(e,t,l)},onMouseleave(e){r.handleTargetLeaveEvent(e)}}):renderEmptyElement(r)}function renderCellDragIcon(l){let{$table:r,column:e}=l;var t=r.context,t=t.slots,n=e.slots,a=r.props.dragConfig,o=r.getComputeMaps().computeRowDragOpts,{icon:o,trigger:d,disabledMethod:s}=o.value,s=s||(a?a.rowDisabledMethod:null);let i=s&&s(l);s=(n?n.rowDragIcon||n["row-drag-icon"]:null)||t.rowDragIcon||t["row-drag-icon"],n={};return"cell"!==d&&(n.onMousedown=e=>{i||r.handleCellDragMousedownEvent(e,l)},n.onMouseup=r.handleCellDragMouseupEvent),(0,_vue.h)("span",Object.assign({key:"dg",class:["vxe-cell--drag-handle",{"is--disabled":i}]},n),s?r.callSlot(s,l):[(0,_vue.h)("i",{class:o||(a?a.rowIcon:"")||getIcon().TABLE_DRAG_ROW})])}function renderCellBaseVNs(e,l){var{$table:r,column:t,level:n}=e,t=t.dragSort,{treeConfig:a,dragConfig:o}=r.props,{computeRowOpts:r,computeRowDragOpts:d}=r.getComputeMaps(),r=r.value,{showIcon:d,isPeerDrag:s,isCrossDrag:i,visibleMethod:c}=d.value,c=c||(o?o.rowVisibleMethod:null),l=_xeUtils.default.isArray(l)?l:[l];return!(t&&r.drag&&(d||o&&o.showRowIcon))||c&&!c(e)||a&&!s&&!i&&n||l.unshift(renderCellDragIcon(e)),l}function renderHeaderCellDragIcon(r){let{$table:t,column:e}=r;var n=t.context,n=n.slots,a=e.slots,{computeColumnOpts:o,computeColumnDragOpts:d}=t.getComputeMaps(),o=o.value,{showIcon:d,icon:s,trigger:i,isPeerDrag:l,isCrossDrag:c,visibleMethod:u,disabledMethod:C}=d.value;if(!o.drag||!d||u&&!u(r)||e.fixed||!l&&!c&&e.parentId)return renderEmptyElement(t);{let l=C&&C(r);o=(a?a.columnDragIcon||a["column-drag-icon"]:null)||n.columnDragIcon||n["column-drag-icon"],d={};return"cell"!==i&&(d.onMousedown=e=>{l||t.handleHeaderCellDragMousedownEvent(e,r)},d.onMouseup=t.handleHeaderCellDragMouseupEvent),(0,_vue.h)("span",Object.assign({key:"dg",class:["vxe-cell--drag-handle",{"is--disabled":l}]},d),o?t.callSlot(o,r):[(0,_vue.h)("i",{class:s||getIcon().TABLE_DRAG_COLUMN})])}}function renderHeaderCellBaseVNs(e,l){return[renderTitlePrefixIcon(e),renderHeaderCellDragIcon(e),..._xeUtils.default.isArray(l)?l:[l],renderTitleSuffixIcon(e)]}function renderTitleContent(l,e){let{$table:r,column:t}=l;var n=r.props;let a=r.reactData;var o=r.getComputeMaps().computeTooltipOpts,n=n.showHeaderOverflow,{type:d,showHeaderOverflow:s}=t;let i=o.value.showAll;o=_xeUtils.default.isUndefined(s)||_xeUtils.default.isNull(s)?n:s;let c="title"===o,u=!0===o||"tooltip"===o;n={};return(c||u||i)&&(n.onMouseenter=e=>{a.isDragResize||(c?(0,_dom.updateCellTitle)(e.currentTarget,t):(u||i)&&r.triggerHeaderTooltipEvent(e,l))}),(u||i)&&(n.onMouseleave=e=>{a.isDragResize||(u||i)&&r.handleTargetLeaveEvent(e)}),["html"===d&&_xeUtils.default.isString(e)?(0,_vue.h)("span",Object.assign({class:"vxe-cell--title",innerHTML:e},n)):(0,_vue.h)("span",Object.assign({class:"vxe-cell--title"},n),(0,_vn.getSlotVNs)(e))]}function getFooterContent(e){var{$table:l,column:r,_columnIndex:t,items:n,row:a}=e,{slots:o,editRender:d,cellRender:s,footerFormatter:i}=r,d=d||s,s=o?o.footer:null;if(s)return l.callSlot(s,e);let c="";c=_xeUtils.default.isArray(n)?n[t]:_xeUtils.default.get(a,r.field);o=Object.assign(e,{itemValue:c});if(i)return _xeUtils.default.isFunction(i)?""+i(o):(n=(s=(l=_xeUtils.default.isArray(i))?formats.get(i[0]):formats.get(i))?s.tableFooterCellFormatMethod:null)?""+(l?n(o,...i.slice(1)):n(o)):"";if(d){t=renderer.get(d.name);if(t){a=t.renderTableFooter||t.renderFooter;if(a)return(0,_vn.getSlotVNs)(a(d,o))}}return[(0,_utils.formatText)(c,1)]}function getDefaultCellLabel(e){var{$table:e,row:l,column:r}=e;return(0,_utils.formatText)(e.getCellLabel(l,r),1)}function renderCellHandle(e){var{column:l,$table:r}=e,t=r.props.editConfig,{type:l,treeNode:n,editRender:a}=l,{computeEditOpts:r,computeCheckboxOpts:o}=r.getComputeMaps(),d=o.value,o=r.value;switch(l){case"seq":return n?Cell.renderTreeIndexCell(e):Cell.renderSeqCell(e);case"radio":return n?Cell.renderTreeRadioCell(e):Cell.renderRadioCell(e);case"checkbox":return d.checkField?n?Cell.renderTreeSelectionCellByProp(e):Cell.renderCheckboxCellByProp(e):n?Cell.renderTreeSelectionCell(e):Cell.renderCheckboxCell(e);case"expand":return Cell.renderExpandCell(e);case"html":return n?Cell.renderTreeHTMLCell(e):Cell.renderHTMLCell(e)}return t&&a?"cell"===o.mode?n?Cell.renderTreeCellEdit(e):Cell.renderCellEdit(e):n?Cell.renderTreeRowEdit(e):Cell.renderRowEdit(e):n?Cell.renderTreeCell(e):Cell.renderDefaultCell(e)}function renderHeaderHandle(e){var{column:l,$table:r}=e,r=r.props.editConfig,{type:l,filters:t,sortable:n,editRender:a}=l;switch(l){case"seq":return Cell.renderSeqHeader(e);case"radio":return Cell.renderRadioHeader(e);case"checkbox":return Cell.renderCheckboxHeader(e);case"html":if(t&&n)return Cell.renderSortAndFilterHeader(e);if(n)return Cell.renderSortHeader(e);if(t)return Cell.renderFilterHeader(e)}return r&&a?Cell.renderEditHeader(e):t&&n?Cell.renderSortAndFilterHeader(e):n?Cell.renderSortHeader(e):t?Cell.renderFilterHeader(e):Cell.renderDefaultHeader(e)}function renderFooterHandle(e){return Cell.renderDefaultFooter(e)}let Cell=exports.Cell={createColumn(e,l){var r=l.type,t={renderHeader:renderHeaderHandle,renderCell:renderCellHandle,renderFooter:renderFooterHandle};return"expand"===r&&(t.renderData=Cell.renderExpandData),(0,_util.createColumn)(e,l,t)},renderHeaderTitle(e){var{$table:l,column:r}=e,{slots:t,editRender:n,cellRender:a}=r,n=n||a,a=t?t.header:null;if(a)return renderTitleContent(e,l.callSlot(a,e));if(n){t=renderer.get(n.name);if(t){l=t.renderTableHeader||t.renderHeader;if(l)return renderTitleContent(e,(0,_vn.getSlotVNs)(l(n,e)))}}return renderTitleContent(e,(0,_utils.formatText)(r.getTitle(),1))},renderDefaultHeader(e){return renderHeaderCellBaseVNs(e,Cell.renderHeaderTitle(e))},renderDefaultCell(e){var{$table:l,row:r,column:t}=e,{slots:n,editRender:a,cellRender:o}=t,o=a||o,n=n?n.default:null;if(n)return renderCellBaseVNs(e,l.callSlot(n,e));if(o){n=renderer.get(o.name);if(n){var d=n.renderTableCell||n.renderCell,n=n.renderTableDefault||n.renderDefault,d=a?d:n;if(d)return renderCellBaseVNs(e,(0,_vn.getSlotVNs)(d(o,Object.assign({$type:a?"edit":"cell"},e))))}}n=l.getCellLabel(r,t),d=a?a.placeholder:"";return renderCellBaseVNs(e,[(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)(d),1)):(0,_vue.h)("span",(0,_utils.formatText)(n,1))])])},renderTreeCell(e){return Cell.renderTreeIcon(e,Cell.renderDefaultCell(e))},renderDefaultFooter(e){return getFooterContent(e)},renderTreeIcon(l,e){let{$table:r,isHidden:t}=l;var n=r.reactData,a=r.internalData,o=r.getComputeMaps().computeTreeOpts,{treeExpandedMaps:n,treeExpandLazyLoadedMaps:d}=n,a=a.fullAllDataRowIdData,o=o.value,{row:s,column:i,level:c}=l,i=i.slots,{indent:u,lazy:C,trigger:v,iconLoaded:p,showIcon:g,iconOpen:h,iconClose:E}=o,_=o.children||o.childrenField,o=o.hasChild||o.hasChildField,_=s[_],_=_&&_.length,i=i?i.icon:null;let b=!1,x=!1,f=!1,m=!1;var T={};return i?r.callSlot(i,l):(t||(i=(0,_util.getRowid)(r,s),x=!!n[i],C&&(n=a[i],f=!!d[i],b=s[o],m=!!n.treeLoaded)),v&&"default"!==v||(T.onClick=e=>{r.triggerTreeExpandEvent(e,l)}),[(0,_vue.h)("div",{class:["vxe-cell--tree-node",{"is--active":x}],style:{paddingLeft:c*u+"px"}},[g&&(!C||m?_:_||b)?[(0,_vue.h)("div",Object.assign({class:"vxe-tree--btn-wrapper"},T),[(0,_vue.h)("i",{class:["vxe-tree--node-btn",f?p||getIcon().TABLE_TREE_LOADED:x?h||getIcon().TABLE_TREE_OPEN:E||getIcon().TABLE_TREE_CLOSE]})])]:null,(0,_vue.h)("div",{class:"vxe-tree-cell"},e)])])},renderSeqHeader(e){var{$table:l,column:r}=e,t=r.slots,t=t?t.header:null;return renderHeaderCellBaseVNs(e,renderTitleContent(e,t?l.callSlot(t,e):(0,_utils.formatText)(r.getTitle(),1)))},renderSeqCell(e){var{$table:l,column:r}=e,t=l.props.treeConfig,n=l.getComputeMaps().computeSeqOpts,n=n.value,r=r.slots,r=r?r.default:null;return r?renderCellBaseVNs(e,l.callSlot(r,e)):(l=e.seq,r=n.seqMethod,renderCellBaseVNs(e,[(0,_vue.h)("span",""+(0,_utils.formatText)(r?r(e):t?l:(n.startIndex||0)+l,1))]))},renderTreeIndexCell(e){return Cell.renderTreeIcon(e,Cell.renderSeqCell(e))},renderRadioHeader(e){var{$table:l,column:r}=e,t=r.slots,n=t?t.header:null,t=t?t.title:null;return renderHeaderCellBaseVNs(e,renderTitleContent(e,n?l.callSlot(n,e):[(0,_vue.h)("span",{class:"vxe-radio--label"},t?l.callSlot(t,e):(0,_utils.formatText)(r.getTitle(),1))]))},renderRadioCell(l){let{$table:r,column:e,isHidden:t}=l;var n=r.reactData,a=r.getComputeMaps().computeRadioOpts,n=n.selectRadioRow,o=e.slots,{labelField:a,checkMethod:d,visibleMethod:s}=a.value,i=l.row,c=o?o.default:null,o=o?o.radio:null,n=r.eqRow(i,n);let u=!s||s({row:i}),C=!!d,v;t||(v={onClick(e){!C&&u&&r.triggerRadioRowEvent(e,l)}},d&&(C=!d({row:i})));s=Object.assign(Object.assign({},l),{checked:n,disabled:C,visible:u});return o?renderCellBaseVNs(l,r.callSlot(o,s)):(d=[],u&&d.push((0,_vue.h)("span",{class:["vxe-radio--icon",n?getIcon().TABLE_RADIO_CHECKED:getIcon().TABLE_RADIO_UNCHECKED]})),(c||a)&&d.push((0,_vue.h)("span",{class:"vxe-radio--label"},c?r.callSlot(c,s):_xeUtils.default.get(i,a))),renderCellBaseVNs(l,[(0,_vue.h)("span",Object.assign({class:["vxe-cell--radio",{"is--checked":n,"is--disabled":C}]},v),d)]))},renderTreeRadioCell(e){return Cell.renderTreeIcon(e,Cell.renderRadioCell(e))},renderCheckboxHeader(e){let{$table:l,column:r,isHidden:t}=e;var n=l.reactData,{computeIsAllCheckboxDisabled:a,computeCheckboxOpts:o}=l.getComputeMaps();let{isAllSelected:d,isIndeterminate:s}=n,i=a.value;var n=r.slots,a=n?n.header:null,n=n?n.title:null,o=o.value,c=r.getTitle(),u={},C=(t||(u.onClick=e=>{i||l.triggerCheckAllEvent(e,!d)}),Object.assign(Object.assign({},e),{checked:d,disabled:i,indeterminate:s}));return a?renderHeaderCellBaseVNs(e,renderTitleContent(C,l.callSlot(a,C))):(o.checkStrictly?o.showHeader:!1!==o.showHeader)?renderHeaderCellBaseVNs(e,renderTitleContent(C,[(0,_vue.h)("span",Object.assign({class:["vxe-cell--checkbox",{"is--checked":d,"is--disabled":i,"is--indeterminate":s}],title:getI18n("vxe.table.allTitle")},u),[(0,_vue.h)("span",{class:["vxe-checkbox--icon",s?getIcon().TABLE_CHECKBOX_INDETERMINATE:d?getIcon().TABLE_CHECKBOX_CHECKED:getIcon().TABLE_CHECKBOX_UNCHECKED]})].concat(n||c?[(0,_vue.h)("span",{class:"vxe-checkbox--label"},n?l.callSlot(n,C):c)]:[]))])):renderHeaderCellBaseVNs(e,renderTitleContent(C,[(0,_vue.h)("span",{class:"vxe-checkbox--label"},n?l.callSlot(n,C):c)]))},renderCheckboxCell(l){let{$table:r,row:e,column:t,isHidden:n}=l;var a=r.props.treeConfig,{selectCheckboxMaps:o,treeIndeterminateMaps:d}=r.reactData,s=r.getComputeMaps().computeCheckboxOpts,{labelField:s,checkMethod:i,visibleMethod:c}=s.value,u=t.slots,C=u?u.default:null,u=u?u.checkbox:null;let v=!1,p=!1,g=!c||c({row:e}),h=!!i;var E,c={},o=(n||(E=(0,_util.getRowid)(r,e),p=!!o[E],c.onClick=e=>{!h&&g&&r.triggerCheckRowEvent(e,l,!p)},i&&(h=!i({row:e})),a&&(v=!!d[E])),Object.assign(Object.assign({},l),{checked:p,disabled:h,visible:g,indeterminate:v}));return u?renderCellBaseVNs(l,r.callSlot(u,o)):(i=[],g&&i.push((0,_vue.h)("span",{class:["vxe-checkbox--icon",v?getIcon().TABLE_CHECKBOX_INDETERMINATE:p?getIcon().TABLE_CHECKBOX_CHECKED:getIcon().TABLE_CHECKBOX_UNCHECKED]})),(C||s)&&i.push((0,_vue.h)("span",{class:"vxe-checkbox--label"},C?r.callSlot(C,o):_xeUtils.default.get(e,s))),renderCellBaseVNs(l,[(0,_vue.h)("span",Object.assign({class:["vxe-cell--checkbox",{"is--checked":p,"is--disabled":h,"is--indeterminate":v,"is--hidden":!g}]},c),i)]))},renderTreeSelectionCell(e){return Cell.renderTreeIcon(e,Cell.renderCheckboxCell(e))},renderCheckboxCellByProp(l){let{$table:r,row:e,column:t,isHidden:n}=l;var a=r.props.treeConfig,o=r.reactData.treeIndeterminateMaps,d=r.getComputeMaps().computeCheckboxOpts,d=d.value,{labelField:s,checkField:i,checkMethod:c,visibleMethod:u}=d,d=d.indeterminateField||d.halfField,C=t.slots,v=C?C.default:null,C=C?C.checkbox:null;let p=!1,g=!1,h=!u||u({row:e}),E=!!c;var _,u={},i=(n||(_=(0,_util.getRowid)(r,e),g=_xeUtils.default.get(e,i),u.onClick=e=>{!E&&h&&r.triggerCheckRowEvent(e,l,!g)},c&&(E=!c({row:e})),a&&(p=!!o[_])),Object.assign(Object.assign({},l),{checked:g,disabled:E,visible:h,indeterminate:p}));return C?renderCellBaseVNs(l,r.callSlot(C,i)):(c=[],h&&(c.push((0,_vue.h)("span",{class:["vxe-checkbox--icon",p?getIcon().TABLE_CHECKBOX_INDETERMINATE:g?getIcon().TABLE_CHECKBOX_CHECKED:getIcon().TABLE_CHECKBOX_UNCHECKED]})),v||s)&&c.push((0,_vue.h)("span",{class:"vxe-checkbox--label"},v?r.callSlot(v,i):_xeUtils.default.get(e,s))),renderCellBaseVNs(l,[(0,_vue.h)("span",Object.assign({class:["vxe-cell--checkbox",{"is--checked":g,"is--disabled":E,"is--indeterminate":d&&!g?e[d]:p,"is--hidden":!h}]},u),c)]))},renderTreeSelectionCellByProp(e){return Cell.renderTreeIcon(e,Cell.renderCheckboxCellByProp(e))},renderExpandCell(l){let{$table:r,isHidden:e,row:t,column:n}=l;var{rowExpandedMaps:a,rowExpandLazyLoadedMaps:o}=r.reactData,d=r.getComputeMaps().computeExpandOpts,{lazy:d,labelField:s,iconLoaded:i,showIcon:c,iconOpen:u,iconClose:C,visibleMethod:v}=d.value,p=n.slots,g=p?p.default:null,p=p?p.icon:null;let h=!1,E=!1;return p?renderCellBaseVNs(l,r.callSlot(p,l)):(e||(p=(0,_util.getRowid)(r,t),h=!!a[p],d&&(E=!!o[p])),renderCellBaseVNs(l,[!c||v&&!v(l)?renderEmptyElement(r):(0,_vue.h)("span",{class:["vxe-table--expanded",{"is--active":h}],onClick(e){r.triggerRowExpandEvent(e,l)}},[(0,_vue.h)("i",{class:["vxe-table--expand-btn",E?i||getIcon().TABLE_EXPAND_LOADED:h?u||getIcon().TABLE_EXPAND_OPEN:C||getIcon().TABLE_EXPAND_CLOSE]})]),g||s?(0,_vue.h)("span",{class:"vxe-table--expand-label"},g?r.callSlot(g,l):_xeUtils.default.get(t,s)):renderEmptyElement(r)]))},renderExpandData(e){var{$table:l,column:r}=e,{slots:r,contentRender:t}=r,r=r?r.content:null;if(r)return l.callSlot(r,e);if(t){l=renderer.get(t.name);if(l){r=l.renderTableExpand||l.renderExpand;if(r)return(0,_vn.getSlotVNs)(r(t,e))}}return[]},renderHTMLCell(e){var{$table:l,column:r}=e,r=r.slots,r=r?r.default:null;return renderCellBaseVNs(e,r?l.callSlot(r,e):[(0,_vue.h)("span",{class:"vxe-cell--html",innerHTML:getDefaultCellLabel(e)})])},renderTreeHTMLCell(e){return Cell.renderTreeIcon(e,Cell.renderHTMLCell(e))},renderSortAndFilterHeader(e){return renderHeaderCellBaseVNs(e,Cell.renderHeaderTitle(e).concat(Cell.renderSortIcon(e).concat(Cell.renderFilterIcon(e))))},renderSortHeader(e){return renderHeaderCellBaseVNs(e,Cell.renderHeaderTitle(e).concat(Cell.renderSortIcon(e)))},renderSortIcon(e){let{$table:l,column:r}=e;var t=l.getComputeMaps().computeSortOpts,{showIcon:t,allowBtn:n,iconLayout:a,iconAsc:o,iconDesc:d,iconVisibleMethod:s}=t.value,i=r.order;return!t||s&&!s(e)?[]:[(0,_vue.h)("span",{class:["vxe-cell--sort",`vxe-cell--sort-${a}-layout`]},[(0,_vue.h)("i",{class:["vxe-sort--asc-btn",o||getIcon().TABLE_SORT_ASC,{"sort--active":"asc"===i}],title:getI18n("vxe.table.sortAsc"),onClick:n?e=>{e.stopPropagation(),l.triggerSortEvent(e,r,"asc")}:void 0}),(0,_vue.h)("i",{class:["vxe-sort--desc-btn",d||getIcon().TABLE_SORT_DESC,{"sort--active":"desc"===i}],title:getI18n("vxe.table.sortDesc"),onClick:n?e=>{e.stopPropagation(),l.triggerSortEvent(e,r,"desc")}:void 0})])]},renderFilterHeader(e){return renderHeaderCellBaseVNs(e,Cell.renderHeaderTitle(e).concat(Cell.renderFilterIcon(e)))},renderFilterIcon(l){let{$table:r,column:e,hasFilter:t}=l;var n=r.reactData.filterStore,a=r.getComputeMaps().computeFilterOpts,{showIcon:a,iconNone:o,iconMatch:d,iconVisibleMethod:s}=a.value;return!a||s&&!s(l)?[]:[(0,_vue.h)("span",{class:["vxe-cell--filter",{"is--active":n.visible&&n.column===e}]},[(0,_vue.h)("i",{class:["vxe-filter--btn",t?d||getIcon().TABLE_FILTER_MATCH:o||getIcon().TABLE_FILTER_NONE],title:getI18n("vxe.table.filter"),onClick(e){r.triggerFilterEvent&&r.triggerFilterEvent(e,l.column,l)}})])]},renderEditHeader(e){var{$table:l,column:r}=e,t=l.props,n=l.getComputeMaps().computeEditOpts,{editConfig:t,editRules:a}=t,n=n.value,{sortable:o,filters:d,editRender:s}=r;let i=!1,c=(a&&(a=_xeUtils.default.get(a,r.field))&&(i=a.some(e=>e.required)),[]);return renderHeaderCellBaseVNs(e,(c=(0,_utils.isEnableConf)(t)?[i&&n.showAsterisk?(0,_vue.h)("i",{class:"vxe-cell--required-icon"}):renderEmptyElement(l),(0,_utils.isEnableConf)(s)&&n.showIcon?(0,_vue.h)("i",{class:["vxe-cell--edit-icon",n.icon||getIcon().TABLE_EDIT]}):renderEmptyElement(l)]:c).concat(Cell.renderHeaderTitle(e)).concat(o?Cell.renderSortIcon(e):[]).concat(d?Cell.renderFilterIcon(e):[]))},renderRowEdit(e){var{$table:l,column:r}=e,l=l.reactData.editStore,l=l.actived,r=r.editRender;return Cell.runRenderer(e,(0,_utils.isEnableConf)(r)&&l&&l.row===e.row)},renderTreeRowEdit(e){return Cell.renderTreeIcon(e,Cell.renderRowEdit(e))},renderCellEdit(e){var{$table:l,column:r}=e,l=l.reactData.editStore,l=l.actived,r=r.editRender;return Cell.runRenderer(e,(0,_utils.isEnableConf)(r)&&l&&l.row===e.row&&l.column===e.column)},renderTreeCellEdit(e){return Cell.renderTreeIcon(e,Cell.renderCellEdit(e))},runRenderer(e,l){var{$table:r,column:t}=e,{slots:t,editRender:n,formatter:a}=t,o=t?t.default:null,t=t?t.edit:null,d=renderer.get(n.name),d=d?d.renderTableEdit||d.renderEdit:null,s=Object.assign({$type:"",isEdit:l},e);return l?(s.$type="edit",t?r.callSlot(t,s):d?(0,_vn.getSlotVNs)(d(n,s)):[]):o?renderCellBaseVNs(e,r.callSlot(o,s)):a?renderCellBaseVNs(e,[(0,_vue.h)("span",{class:"vxe-cell--label"},getDefaultCellLabel(s))]):Cell.renderDefaultCell(s)}};var _default=exports.default=Cell;
|
package/lib/table/src/footer.js
CHANGED
|
@@ -271,6 +271,7 @@ var _default = exports.default = (0, _vue.defineComponent)({
|
|
|
271
271
|
footerRowStyle
|
|
272
272
|
} = tableProps;
|
|
273
273
|
const {
|
|
274
|
+
isColLoading,
|
|
274
275
|
isDragColMove
|
|
275
276
|
} = tableReactData;
|
|
276
277
|
const columnOpts = computeColumnOpts.value;
|
|
@@ -285,7 +286,7 @@ var _default = exports.default = (0, _vue.defineComponent)({
|
|
|
285
286
|
fixed: fixedType,
|
|
286
287
|
type: renderType
|
|
287
288
|
};
|
|
288
|
-
if (columnOpts.drag && columnDragOpts.animation) {
|
|
289
|
+
if (!isColLoading && columnOpts.drag && columnDragOpts.animation) {
|
|
289
290
|
return (0, _vue.h)(_vue.TransitionGroup, {
|
|
290
291
|
key: $rowIndex,
|
|
291
292
|
name: `vxe-header--col-list${isDragColMove ? '' : '-disabled'}`,
|
|
@@ -1 +1 @@
|
|
|
1
|
-
Object.defineProperty(exports,"__esModule",{value:!0}),exports.default=void 0;var _vue=require("vue"),_xeUtils=_interopRequireDefault(require("xe-utils")),_ui=require("../../ui"),_dom=require("../../ui/src/dom"),_util=require("./util");function _interopRequireDefault(e){return e&&e.__esModule?e:{default:e}}let{renderer,renderEmptyElement}=_ui.VxeUI,renderType="footer";function mergeFooterMethod(l,t,o){for(let e=0;e<l.length;e++){var{row:r,col:n,rowspan:a,colspan:i}=l[e];if(-1<n&&-1<r&&a&&i){if(r===t&&n===o)return{rowspan:a,colspan:i};if(r<=t&&t<r+a&&n<=o&&o<n+i)return{rowspan:0,colspan:0}}}}var _default=exports.default=(0,_vue.defineComponent)({name:"VxeTableFooter",props:{footerTableData:{type:Array,default:()=>[]},tableColumn:{type:Array,default:()=>[]},fixedColumn:{type:Array,default:()=>[]},fixedType:{type:String,default:null}},setup(v){let P=(0,_vue.inject)("$xeTable",{}),{xID:x,props:g,reactData:m,internalData:_}=P,{computeTooltipOpts:l,computeColumnOpts:h,computeColumnDragOpts:w,computeCellOpts:t,computeFooterCellOpts:o,computeDefaultRowHeight:r}=P.getComputeMaps(),y=(0,_vue.ref)(),b=(0,_vue.ref)(),C=(0,_vue.ref)(),T=(0,_vue.ref)(),F=(0,_vue.ref)(),I=(0,_vue.ref)(),O=(w,y,b,C,T)=>{let F=v.fixedType,{footerCellClassName:I,footerCellStyle:O,footerAlign:S,footerSpanMethod:D,align:M,columnKey:E,showFooterOverflow:U}=g,{scrollXLoad:$,scrollYLoad:k,overflowX:j,currentColumn:q,mergeFooterList:A}=m,
|
|
1
|
+
Object.defineProperty(exports,"__esModule",{value:!0}),exports.default=void 0;var _vue=require("vue"),_xeUtils=_interopRequireDefault(require("xe-utils")),_ui=require("../../ui"),_dom=require("../../ui/src/dom"),_util=require("./util");function _interopRequireDefault(e){return e&&e.__esModule?e:{default:e}}let{renderer,renderEmptyElement}=_ui.VxeUI,renderType="footer";function mergeFooterMethod(l,t,o){for(let e=0;e<l.length;e++){var{row:r,col:n,rowspan:a,colspan:i}=l[e];if(-1<n&&-1<r&&a&&i){if(r===t&&n===o)return{rowspan:a,colspan:i};if(r<=t&&t<r+a&&n<=o&&o<n+i)return{rowspan:0,colspan:0}}}}var _default=exports.default=(0,_vue.defineComponent)({name:"VxeTableFooter",props:{footerTableData:{type:Array,default:()=>[]},tableColumn:{type:Array,default:()=>[]},fixedColumn:{type:Array,default:()=>[]},fixedType:{type:String,default:null}},setup(v){let P=(0,_vue.inject)("$xeTable",{}),{xID:x,props:g,reactData:m,internalData:_}=P,{computeTooltipOpts:l,computeColumnOpts:h,computeColumnDragOpts:w,computeCellOpts:t,computeFooterCellOpts:o,computeDefaultRowHeight:r}=P.getComputeMaps(),y=(0,_vue.ref)(),b=(0,_vue.ref)(),C=(0,_vue.ref)(),T=(0,_vue.ref)(),F=(0,_vue.ref)(),I=(0,_vue.ref)(),O=(w,y,b,C,T)=>{let F=v.fixedType,{footerCellClassName:I,footerCellStyle:O,footerAlign:S,footerSpanMethod:D,align:M,columnKey:E,showFooterOverflow:U}=g,{scrollXLoad:$,scrollYLoad:k,overflowX:j,currentColumn:q,mergeFooterList:A}=m,L=_.scrollXStore,R=l.value,N=h.value;var e=r.value;let X=t.value,z=o.value,H=(0,_util.getCellHeight)(z.height||X.height)||e;return w.map((l,e)=>{var{type:t,showFooterOverflow:o,footerAlign:r,align:n,footerClassName:a,editRender:i,cellRender:u}=l,d=l.id,i=i||u,u=i?renderer.get(i.name):null;let s=R.showAll;var i=l.children&&l.children.length,i=F?l.fixed!==F&&!i:l.fixed&&j,p=(_xeUtils.default.isBoolean(z.padding)?z:X).padding,o=_xeUtils.default.eqNull(o)?U:o,r=r||(u?u.tableFooterCellAlign:"")||S||n||(u?u.tableCellAlign:"")||M;let c="ellipsis"===o,f="title"===o,v=!0===o||"tooltip"===o,x=f||v||c;var n={colid:d},u={},o=P.getColumnIndex(l),g=P.getVTColumnIndex(l),m=g;let _={$table:P,$grid:P.xegrid,row:b,rowIndex:T,_rowIndex:T,$rowIndex:C,column:l,columnIndex:o,$columnIndex:e,_columnIndex:g,itemIndex:m,items:b,fixed:F,type:renderType,data:y};if($&&!x&&(c=x=!0),(f||v||s)&&(u.onMouseenter=e=>{f?(0,_dom.updateCellTitle)(e.currentTarget,l):(v||s)&&P.triggerFooterTooltipEvent(e,_)}),(v||s)&&(u.onMouseleave=e=>{(v||s)&&P.handleTargetLeaveEvent(e)}),u.onClick=e=>{P.dispatchEvent("footer-cell-click",Object.assign({cell:e.currentTarget},_),e)},u.onDblclick=e=>{P.dispatchEvent("footer-cell-dblclick",Object.assign({cell:e.currentTarget},_),e)},A.length){o=mergeFooterMethod(A,T,g);if(o){var{rowspan:m,colspan:o}=o;if(!m||!o)return null;1<m&&(n.rowspan=m),1<o&&(n.colspan=o)}}else if(D){var{rowspan:m=1,colspan:o=1}=D(_)||{};if(!m||!o)return null;1<m&&(n.rowspan=m),1<o&&(n.colspan=o)}m=e===w.length-1,o=!l.resizeWidth&&("auto"===l.minWidth||"auto"===l.width);let h=!1;$&&!l.fixed&&(g<L.visibleStartIndex-L.preloadSize||g>L.visibleEndIndex+L.preloadSize)&&(h=!0);g={};return x?g.height=H+"px":g.minHeight=H+"px",(0,_vue.h)("td",Object.assign(Object.assign(Object.assign(Object.assign({class:["vxe-footer--column",l.id,{["col--"+r]:r,["col--"+t]:t,"col--last":m,"fixed--width":!o,"fixed--hidden":i,"is--padding":p,"col--ellipsis":x,"col--current":q===l},(0,_dom.getPropClass)(a,_),(0,_dom.getPropClass)(I,_)]},n),{style:O?_xeUtils.default.isFunction(O)?O(_):O:null}),u),{key:E||$||k||N.useKey||N.drag?l.id:e}),[(0,_vue.h)("div",{class:["vxe-cell",{"c--title":f,"c--tooltip":v,"c--ellipsis":c}],style:g},h?[]:[(0,_vue.h)("div",{colid:d,class:"vxe-cell--wrapper"},l.renderFooter(_))])])})};return(0,_vue.onMounted)(()=>{(0,_vue.nextTick)(()=>{var e=v.fixedType,l=_.elemStore,e=`${e||"main"}-footer-`;l[e+"wrapper"]=y,l[e+"scroll"]=b,l[e+"table"]=C,l[e+"colgroup"]=T,l[e+"list"]=F,l[e+"xSpace"]=I})}),(0,_vue.onUnmounted)(()=>{var e=v.fixedType,l=_.elemStore,e=`${e||"main"}-footer-`;l[e+"wrapper"]=null,l[e+"scroll"]=null,l[e+"table"]=null,l[e+"colgroup"]=null,l[e+"list"]=null,l[e+"xSpace"]=null}),()=>{let{fixedType:l,fixedColumn:e,tableColumn:t}=v;var{spanMethod:o,footerSpanMethod:r,showFooterOverflow:n}=g,{visibleColumn:a,fullColumnIdData:i}=_,{isGroup:u,scrollXLoad:d,scrollYLoad:s,dragCol:p}=m;let c=t,f=!(d||s||n)||o||r?!1:!0;return l&&(c=a,f)&&(c=e||[]),l||u||d&&p&&2<c.length&&(s=i[p.id])&&(n=s._index,o=c[0],r=c[c.length-1],a=i[o.id],u=i[r.id],a)&&u&&(d=a._index,s=u._index,n<d?c=[p].concat(c):s<n&&(c=c.concat([p]))),(0,_vue.h)("div",{ref:y,class:["vxe-table--footer-wrapper",l?`fixed-${l}--wrapper`:"body--wrapper"],xid:x},[(0,_vue.h)("div",{ref:b,class:"vxe-table--footer-inner-wrapper",onScroll(e){P.triggerFooterScrollEvent(e,l)}},[l?renderEmptyElement(P):(0,_vue.h)("div",{ref:I,class:"vxe-body--x-space"}),(0,_vue.h)("table",{ref:C,class:"vxe-table--footer",xid:x,cellspacing:0,cellpadding:0,border:0},[(0,_vue.h)("colgroup",{ref:T},c.map((e,l)=>(0,_vue.h)("col",{name:e.id,key:l}))),(0,_vue.h)("tfoot",{ref:F},(r=>{let{fixedType:n,footerTableData:a}=v,{footerRowClassName:i,footerRowStyle:u}=g,{isColLoading:d,isDragColMove:s}=m,p=h.value,c=w.value;return a.map((e,l)=>{let t=l;var o={$table:P,row:e,_rowIndex:t,$rowIndex:l,fixed:n,type:renderType};return!d&&p.drag&&c.animation?(0,_vue.h)(_vue.TransitionGroup,{key:l,name:"vxe-header--col-list"+(s?"":"-disabled"),tag:"tr",class:["vxe-footer--row",i?_xeUtils.default.isFunction(i)?i(o):i:""],style:u?_xeUtils.default.isFunction(u)?u(o):u:null},{default:()=>O(r,a,e,l,t)}):(0,_vue.h)("tr",{key:l,class:["vxe-footer--row",i?_xeUtils.default.isFunction(i)?i(o):i:""],style:u?_xeUtils.default.isFunction(u)?u(o):u:null},O(r,a,e,l,t))})})(c))])])])}}});
|
package/lib/table/src/header.js
CHANGED
|
@@ -233,6 +233,7 @@ var _default = exports.default = (0, _vue.defineComponent)({
|
|
|
233
233
|
headerRowStyle
|
|
234
234
|
} = tableProps;
|
|
235
235
|
const {
|
|
236
|
+
isColLoading,
|
|
236
237
|
isDragColMove
|
|
237
238
|
} = tableReactData;
|
|
238
239
|
const columnOpts = computeColumnOpts.value;
|
|
@@ -244,7 +245,7 @@ var _default = exports.default = (0, _vue.defineComponent)({
|
|
|
244
245
|
fixed: fixedType,
|
|
245
246
|
type: renderType
|
|
246
247
|
};
|
|
247
|
-
if (columnOpts.drag && columnDragOpts.animation) {
|
|
248
|
+
if (!isColLoading && columnOpts.drag && columnDragOpts.animation) {
|
|
248
249
|
return (0, _vue.h)(_vue.TransitionGroup, {
|
|
249
250
|
key: $rowIndex,
|
|
250
251
|
name: `vxe-header--col-list${isDragColMove ? '' : '-disabled'}`,
|
|
@@ -1 +1 @@
|
|
|
1
|
-
Object.defineProperty(exports,"__esModule",{value:!0}),exports.default=void 0;var _vue=require("vue"),_xeUtils=_interopRequireDefault(require("xe-utils")),_ui=require("../../ui"),_util=require("./util");function _interopRequireDefault(e){return e&&e.__esModule?e:{default:e}}let{renderer,renderEmptyElement}=_ui.VxeUI,renderType="header";var _default=exports.default=(0,_vue.defineComponent)({name:"VxeTableHeader",props:{tableData:Array,tableColumn:Array,tableGroupColumn:Array,fixedColumn:Array,fixedType:{type:String,default:null}},setup(f){let J=(0,_vue.inject)("$xeTable",{}),{xID:_,props:m,reactData:b,internalData:C}=J,{computeColumnOpts:y,computeColumnDragOpts:w,computeCellOpts:a,computeMouseOpts:D,computeHeaderCellOpts:r,computeDefaultRowHeight:t}=J.getComputeMaps(),H=(0,_vue.ref)([]),E=(0,_vue.ref)(),S=(0,_vue.ref)(),M=(0,_vue.ref)(),T=(0,_vue.ref)(),I=(0,_vue.ref)(),O=(0,_vue.ref)(),n=(0,_vue.ref)(),i=()=>{var e=b.isGroup;H.value=e?(0,_util.convertHeaderColumnToRows)(f.tableGroupColumn):[]},U=(e,H,E,S)=>{let M=f.fixedType,{resizable:T,border:I,columnKey:O,headerCellClassName:U,headerCellStyle:k,showHeaderOverflow:z,headerAlign:R,align:$,mouseConfig:F}=m,{currentColumn:A,scrollXLoad:q,scrollYLoad:j,overflowX:G}=b,L=C.scrollXStore,N=y.value,X=w.value,V=a.value;var l=t.value;let B=r.value,K=(0,_util.getCellHeight)(B.height||V.height)||l,{disabledMethod:P,isCrossDrag:W,isPeerDrag:Y}=X;return E.map((e,l)=>{var{type:a,showHeaderOverflow:r,headerAlign:t,align:n,filters:i,headerClassName:o,editRender:d,cellRender:u}=e,s=e.id,d=d||u,u=d?renderer.get(d.name):null,d=e.children&&e.children.length,c=M?e.fixed!==M&&!d:!!e.fixed&&G,v=(_xeUtils.default.isBoolean(B.padding)?B:V).padding,r=_xeUtils.default.eqNull(r)?z:r,t=t||(u?u.tableHeaderCellAlign:"")||R||n||(u?u.tableCellAlign:"")||$;let p="ellipsis"===r;n="title"===r,u=!0===r||"tooltip"===r;let x=n||u||p,h=!1,g=null;i&&(g=i[0],h=i.some(e=>e.checked));var r=J.getColumnIndex(e),f=J.getVTColumnIndex(e);let _={$table:J,$grid:J.xegrid,$rowIndex:S,column:e,columnIndex:r,$columnIndex:l,_columnIndex:f,firstFilterOption:g,fixed:M,type:renderType,isHidden:c,hasFilter:h};var r={colid:s,colspan:1<e.colSpan?e.colSpan:null,rowspan:1<e.rowSpan?e.rowSpan:null},m={onClick:e=>J.triggerHeaderCellClickEvent(e,_),onDblclick:e=>J.triggerHeaderCellDblclickEvent(e,_)},b=(q&&!x&&(p=x=!0),N.drag&&"cell"===X.trigger);let C=!1;b&&(C=!(!P||!P(_))),(F||b)&&(m.onMousedown=e=>J.triggerHeaderCellMousedownEvent(e,_)),N.drag&&(m.onDragstart=J.handleHeaderCellDragDragstartEvent,m.onDragend=J.handleHeaderCellDragDragendEvent,m.onDragover=J.handleHeaderCellDragDragoverEvent,b)&&(m.onMouseup=J.handleHeaderCellDragMouseupEvent);var b=l===E.length-1,y=_xeUtils.default.isBoolean(e.resizable)?e.resizable:N.resizable||T,w=!e.resizeWidth&&("auto"===e.minWidth||"auto"===e.width);let D=!1;q&&!e.fixed&&(f<L.visibleStartIndex-L.preloadSize||f>L.visibleEndIndex+L.preloadSize)&&(D=!0);f={};return x?f.height=K+"px":f.minHeight=K+"px",(0,_vue.h)("th",Object.assign(Object.assign(Object.assign({class:["vxe-header--column",s,{["col--"+t]:t,["col--"+a]:a,"col--last":b,"col--fixed":e.fixed,"col--group":d,"col--ellipsis":x,"fixed--width":!w,"fixed--hidden":c,"is--padding":v,"is--sortable":e.sortable,"col--filter":!!i,"is--filter-active":h,"is--drag-active":!e.fixed&&!C&&(W||Y||!e.parentId),"is--drag-disabled":C,"col--current":A===e},o?_xeUtils.default.isFunction(o)?o(_):o:"",U?_xeUtils.default.isFunction(U)?U(_):U:""],style:k?_xeUtils.default.isFunction(k)?k(_):k:null},r),m),{key:O||q||j||N.useKey||N.drag||d?s:l}),[(0,_vue.h)("div",{class:["vxe-cell",{"c--title":n,"c--tooltip":u,"c--ellipsis":p}],style:f},D||H&&c?[]:[(0,_vue.h)("div",{colid:s,class:"vxe-cell--wrapper"},e.renderHeader(_))]),!c&&y?(0,_vue.h)("div",{class:["vxe-cell--col-resizable",{"is--line":!I||"none"===I}],onMousedown:e=>J.handleColResizeMousedownEvent(e,M,_),onDblclick:e=>J.handleColResizeDblclickEvent(e,_)}):renderEmptyElement(J)])})};return(0,_vue.watch)(()=>f.tableColumn,i),(0,_vue.onMounted)(()=>{(0,_vue.nextTick)(()=>{var e=f.fixedType,l=J.internalData,l=l.elemStore,e=`${e||"main"}-header-`;l[e+"wrapper"]=E,l[e+"scroll"]=S,l[e+"table"]=M,l[e+"colgroup"]=T,l[e+"list"]=I,l[e+"xSpace"]=O,l[e+"repair"]=n,i()})}),(0,_vue.onUnmounted)(()=>{var e=f.fixedType,l=J.internalData,l=l.elemStore,e=`${e||"main"}-header-`;l[e+"wrapper"]=null,l[e+"scroll"]=null,l[e+"table"]=null,l[e+"colgroup"]=null,l[e+"list"]=null,l[e+"xSpace"]=null,l[e+"repair"]=null}),()=>{let{fixedType:l,fixedColumn:e,tableColumn:a}=f;var{mouseConfig:r,showHeaderOverflow:t,spanMethod:n,footerSpanMethod:i}=m,{isGroup:o,scrollXLoad:d,scrollYLoad:u,dragCol:s}=b,{visibleColumn:c,fullColumnIdData:v}=C,p=D.value;let x=H.value,h=a,g=!1;return o?h=c:(!(d||u||t)||n||i||(g=!0),l&&(h=c,g)&&(h=e||[]),x=[h]),l||o||d&&s&&2<h.length&&(u=v[s.id])&&(t=u._index,n=h[0],i=h[h.length-1],c=v[n.id],d=v[i.id],c)&&d&&(u=c._index,n=d._index,t<u?(h=[s].concat(h),x=[[s].concat(x[0])].concat(x.slice(1))):n<t&&(h=h.concat([s]),x=[x[0].concat([s])].concat(x.slice(1)))),(0,_vue.h)("div",{ref:E,class:["vxe-table--header-wrapper",l?`fixed-${l}--wrapper`:"body--wrapper"],xid:_},[(0,_vue.h)("div",{ref:S,class:"vxe-table--header-inner-wrapper",onScroll(e){J.triggerHeaderScrollEvent(e,l)}},[l?renderEmptyElement(J):(0,_vue.h)("div",{ref:O,class:"vxe-body--x-space"}),(0,_vue.h)("table",{ref:M,class:"vxe-table--header",xid:_,cellspacing:0,cellpadding:0,border:0},[(0,_vue.h)("colgroup",{ref:T},h.map((e,l)=>(0,_vue.h)("col",{name:e.id,key:l}))),(0,_vue.h)("thead",{ref:I},((r,t,e)=>{let n=f.fixedType,{headerRowClassName:i,headerRowStyle:o}=m,d=b
|
|
1
|
+
Object.defineProperty(exports,"__esModule",{value:!0}),exports.default=void 0;var _vue=require("vue"),_xeUtils=_interopRequireDefault(require("xe-utils")),_ui=require("../../ui"),_util=require("./util");function _interopRequireDefault(e){return e&&e.__esModule?e:{default:e}}let{renderer,renderEmptyElement}=_ui.VxeUI,renderType="header";var _default=exports.default=(0,_vue.defineComponent)({name:"VxeTableHeader",props:{tableData:Array,tableColumn:Array,tableGroupColumn:Array,fixedColumn:Array,fixedType:{type:String,default:null}},setup(f){let J=(0,_vue.inject)("$xeTable",{}),{xID:_,props:m,reactData:b,internalData:C}=J,{computeColumnOpts:y,computeColumnDragOpts:w,computeCellOpts:a,computeMouseOpts:D,computeHeaderCellOpts:r,computeDefaultRowHeight:t}=J.getComputeMaps(),H=(0,_vue.ref)([]),E=(0,_vue.ref)(),S=(0,_vue.ref)(),M=(0,_vue.ref)(),T=(0,_vue.ref)(),I=(0,_vue.ref)(),O=(0,_vue.ref)(),n=(0,_vue.ref)(),i=()=>{var e=b.isGroup;H.value=e?(0,_util.convertHeaderColumnToRows)(f.tableGroupColumn):[]},U=(e,H,E,S)=>{let M=f.fixedType,{resizable:T,border:I,columnKey:O,headerCellClassName:U,headerCellStyle:k,showHeaderOverflow:z,headerAlign:R,align:$,mouseConfig:F}=m,{currentColumn:A,scrollXLoad:q,scrollYLoad:j,overflowX:G}=b,L=C.scrollXStore,N=y.value,X=w.value,V=a.value;var l=t.value;let B=r.value,K=(0,_util.getCellHeight)(B.height||V.height)||l,{disabledMethod:P,isCrossDrag:W,isPeerDrag:Y}=X;return E.map((e,l)=>{var{type:a,showHeaderOverflow:r,headerAlign:t,align:n,filters:i,headerClassName:o,editRender:d,cellRender:u}=e,s=e.id,d=d||u,u=d?renderer.get(d.name):null,d=e.children&&e.children.length,c=M?e.fixed!==M&&!d:!!e.fixed&&G,v=(_xeUtils.default.isBoolean(B.padding)?B:V).padding,r=_xeUtils.default.eqNull(r)?z:r,t=t||(u?u.tableHeaderCellAlign:"")||R||n||(u?u.tableCellAlign:"")||$;let p="ellipsis"===r;n="title"===r,u=!0===r||"tooltip"===r;let x=n||u||p,h=!1,g=null;i&&(g=i[0],h=i.some(e=>e.checked));var r=J.getColumnIndex(e),f=J.getVTColumnIndex(e);let _={$table:J,$grid:J.xegrid,$rowIndex:S,column:e,columnIndex:r,$columnIndex:l,_columnIndex:f,firstFilterOption:g,fixed:M,type:renderType,isHidden:c,hasFilter:h};var r={colid:s,colspan:1<e.colSpan?e.colSpan:null,rowspan:1<e.rowSpan?e.rowSpan:null},m={onClick:e=>J.triggerHeaderCellClickEvent(e,_),onDblclick:e=>J.triggerHeaderCellDblclickEvent(e,_)},b=(q&&!x&&(p=x=!0),N.drag&&"cell"===X.trigger);let C=!1;b&&(C=!(!P||!P(_))),(F||b)&&(m.onMousedown=e=>J.triggerHeaderCellMousedownEvent(e,_)),N.drag&&(m.onDragstart=J.handleHeaderCellDragDragstartEvent,m.onDragend=J.handleHeaderCellDragDragendEvent,m.onDragover=J.handleHeaderCellDragDragoverEvent,b)&&(m.onMouseup=J.handleHeaderCellDragMouseupEvent);var b=l===E.length-1,y=_xeUtils.default.isBoolean(e.resizable)?e.resizable:N.resizable||T,w=!e.resizeWidth&&("auto"===e.minWidth||"auto"===e.width);let D=!1;q&&!e.fixed&&(f<L.visibleStartIndex-L.preloadSize||f>L.visibleEndIndex+L.preloadSize)&&(D=!0);f={};return x?f.height=K+"px":f.minHeight=K+"px",(0,_vue.h)("th",Object.assign(Object.assign(Object.assign({class:["vxe-header--column",s,{["col--"+t]:t,["col--"+a]:a,"col--last":b,"col--fixed":e.fixed,"col--group":d,"col--ellipsis":x,"fixed--width":!w,"fixed--hidden":c,"is--padding":v,"is--sortable":e.sortable,"col--filter":!!i,"is--filter-active":h,"is--drag-active":!e.fixed&&!C&&(W||Y||!e.parentId),"is--drag-disabled":C,"col--current":A===e},o?_xeUtils.default.isFunction(o)?o(_):o:"",U?_xeUtils.default.isFunction(U)?U(_):U:""],style:k?_xeUtils.default.isFunction(k)?k(_):k:null},r),m),{key:O||q||j||N.useKey||N.drag||d?s:l}),[(0,_vue.h)("div",{class:["vxe-cell",{"c--title":n,"c--tooltip":u,"c--ellipsis":p}],style:f},D||H&&c?[]:[(0,_vue.h)("div",{colid:s,class:"vxe-cell--wrapper"},e.renderHeader(_))]),!c&&y?(0,_vue.h)("div",{class:["vxe-cell--col-resizable",{"is--line":!I||"none"===I}],onMousedown:e=>J.handleColResizeMousedownEvent(e,M,_),onDblclick:e=>J.handleColResizeDblclickEvent(e,_)}):renderEmptyElement(J)])})};return(0,_vue.watch)(()=>f.tableColumn,i),(0,_vue.onMounted)(()=>{(0,_vue.nextTick)(()=>{var e=f.fixedType,l=J.internalData,l=l.elemStore,e=`${e||"main"}-header-`;l[e+"wrapper"]=E,l[e+"scroll"]=S,l[e+"table"]=M,l[e+"colgroup"]=T,l[e+"list"]=I,l[e+"xSpace"]=O,l[e+"repair"]=n,i()})}),(0,_vue.onUnmounted)(()=>{var e=f.fixedType,l=J.internalData,l=l.elemStore,e=`${e||"main"}-header-`;l[e+"wrapper"]=null,l[e+"scroll"]=null,l[e+"table"]=null,l[e+"colgroup"]=null,l[e+"list"]=null,l[e+"xSpace"]=null,l[e+"repair"]=null}),()=>{let{fixedType:l,fixedColumn:e,tableColumn:a}=f;var{mouseConfig:r,showHeaderOverflow:t,spanMethod:n,footerSpanMethod:i}=m,{isGroup:o,scrollXLoad:d,scrollYLoad:u,dragCol:s}=b,{visibleColumn:c,fullColumnIdData:v}=C,p=D.value;let x=H.value,h=a,g=!1;return o?h=c:(!(d||u||t)||n||i||(g=!0),l&&(h=c,g)&&(h=e||[]),x=[h]),l||o||d&&s&&2<h.length&&(u=v[s.id])&&(t=u._index,n=h[0],i=h[h.length-1],c=v[n.id],d=v[i.id],c)&&d&&(u=c._index,n=d._index,t<u?(h=[s].concat(h),x=[[s].concat(x[0])].concat(x.slice(1))):n<t&&(h=h.concat([s]),x=[x[0].concat([s])].concat(x.slice(1)))),(0,_vue.h)("div",{ref:E,class:["vxe-table--header-wrapper",l?`fixed-${l}--wrapper`:"body--wrapper"],xid:_},[(0,_vue.h)("div",{ref:S,class:"vxe-table--header-inner-wrapper",onScroll(e){J.triggerHeaderScrollEvent(e,l)}},[l?renderEmptyElement(J):(0,_vue.h)("div",{ref:O,class:"vxe-body--x-space"}),(0,_vue.h)("table",{ref:M,class:"vxe-table--header",xid:_,cellspacing:0,cellpadding:0,border:0},[(0,_vue.h)("colgroup",{ref:T},h.map((e,l)=>(0,_vue.h)("col",{name:e.id,key:l}))),(0,_vue.h)("thead",{ref:I},((r,t,e)=>{let n=f.fixedType,{headerRowClassName:i,headerRowStyle:o}=m,{isColLoading:d,isDragColMove:u}=b,s=y.value,c=w.value;return e.map((e,l)=>{var a={$table:J,$rowIndex:l,fixed:n,type:renderType};return!d&&s.drag&&c.animation?(0,_vue.h)(_vue.TransitionGroup,{key:l,name:"vxe-header--col-list"+(u?"":"-disabled"),tag:"tr",class:["vxe-header--row",i?_xeUtils.default.isFunction(i)?i(a):i:""],style:o?_xeUtils.default.isFunction(o)?o(a):o:null},{default:()=>U(r,t,e,l)}):(0,_vue.h)("tr",{key:l,class:["vxe-header--row",i?_xeUtils.default.isFunction(i)?i(a):i:""],style:o?_xeUtils.default.isFunction(o)?o(a):o:null},U(r,t,e,l))})})(o,g,x))]),r&&p.area?(0,_vue.h)("div",{class:"vxe-table--cell-area"},[(0,_vue.h)("span",{class:"vxe-table--cell-main-area"}),(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"}),(0,_vue.h)("span",{class:"vxe-table--cell-col-status-area"})]):renderEmptyElement(J)])])}}});
|
package/lib/table/src/props.js
CHANGED
|
@@ -89,12 +89,18 @@ var _default = exports.default = {
|
|
|
89
89
|
type: Boolean,
|
|
90
90
|
default: () => getConfig().table.highlightHoverRow
|
|
91
91
|
},
|
|
92
|
-
|
|
92
|
+
/**
|
|
93
|
+
* (即将废弃)是否要高亮当前选中列
|
|
94
|
+
* @deprecated
|
|
95
|
+
*/
|
|
93
96
|
highlightCurrentColumn: {
|
|
94
97
|
type: Boolean,
|
|
95
98
|
default: () => getConfig().table.highlightCurrentColumn
|
|
96
99
|
},
|
|
97
|
-
|
|
100
|
+
/**
|
|
101
|
+
* (即将废弃)鼠标移到列是否要高亮显示
|
|
102
|
+
* @deprecated
|
|
103
|
+
*/
|
|
98
104
|
highlightHoverColumn: {
|
|
99
105
|
type: Boolean,
|
|
100
106
|
default: () => getConfig().table.highlightHoverColumn
|
package/lib/table/src/table.js
CHANGED
|
@@ -279,7 +279,8 @@ var _default = exports.default = (0, _vue.defineComponent)({
|
|
|
279
279
|
dragCol: null,
|
|
280
280
|
dragTipText: '',
|
|
281
281
|
isDragResize: false,
|
|
282
|
-
|
|
282
|
+
isRowLoading: false,
|
|
283
|
+
isColLoading: false
|
|
283
284
|
});
|
|
284
285
|
const internalData = {
|
|
285
286
|
tZindex: 0,
|
|
@@ -3039,16 +3040,18 @@ var _default = exports.default = (0, _vue.defineComponent)({
|
|
|
3039
3040
|
scrollYStore.endIndex = 1;
|
|
3040
3041
|
scrollXStore.startIndex = 0;
|
|
3041
3042
|
scrollXStore.endIndex = 1;
|
|
3043
|
+
reactData.isRowLoading = true;
|
|
3042
3044
|
reactData.scrollVMLoading = false;
|
|
3043
3045
|
editStore.insertMaps = {};
|
|
3044
3046
|
editStore.removeMaps = {};
|
|
3045
3047
|
const sYLoad = updateScrollYStatus(fullData);
|
|
3048
|
+
reactData.isDragColMove = false;
|
|
3046
3049
|
reactData.isDragRowMove = false;
|
|
3047
3050
|
// 全量数据
|
|
3048
3051
|
internalData.tableFullData = fullData;
|
|
3049
3052
|
internalData.tableFullTreeData = treeData;
|
|
3050
3053
|
// 缓存数据
|
|
3051
|
-
|
|
3054
|
+
$xeTable.cacheRowMap(true, isReset);
|
|
3052
3055
|
// 原始数据
|
|
3053
3056
|
internalData.tableSynchData = datas;
|
|
3054
3057
|
if (isReset) {
|
|
@@ -3060,7 +3063,7 @@ var _default = exports.default = (0, _vue.defineComponent)({
|
|
|
3060
3063
|
}
|
|
3061
3064
|
// 克隆原数据,用于显示编辑状态,与编辑值做对比
|
|
3062
3065
|
if (keepSource) {
|
|
3063
|
-
|
|
3066
|
+
$xeTable.cacheSourceMap(fullData);
|
|
3064
3067
|
}
|
|
3065
3068
|
if ($xeTable.clearCellAreas && props.mouseConfig) {
|
|
3066
3069
|
$xeTable.clearCellAreas();
|
|
@@ -3116,6 +3119,7 @@ var _default = exports.default = (0, _vue.defineComponent)({
|
|
|
3116
3119
|
if (sYOpts.scrollToTopOnChange) {
|
|
3117
3120
|
targetScrollTop = 0;
|
|
3118
3121
|
}
|
|
3122
|
+
reactData.isRowLoading = false;
|
|
3119
3123
|
calcCellHeight();
|
|
3120
3124
|
// 是否变更虚拟滚动
|
|
3121
3125
|
if (oldScrollYLoad === sYLoad) {
|
|
@@ -3379,11 +3383,10 @@ var _default = exports.default = (0, _vue.defineComponent)({
|
|
|
3379
3383
|
internalData.collectColumn = collectColumn;
|
|
3380
3384
|
const tableFullColumn = getColumnList(collectColumn);
|
|
3381
3385
|
internalData.tableFullColumn = tableFullColumn;
|
|
3382
|
-
reactData.
|
|
3386
|
+
reactData.isColLoading = true;
|
|
3383
3387
|
reactData.isDragColMove = false;
|
|
3384
3388
|
initColumnSort();
|
|
3385
3389
|
return Promise.resolve(restoreCustomStorage()).then(() => {
|
|
3386
|
-
reactData.isLoading = false;
|
|
3387
3390
|
cacheColumnMap();
|
|
3388
3391
|
parseColumns(true).then(() => {
|
|
3389
3392
|
if (reactData.scrollXLoad) {
|
|
@@ -3408,6 +3411,7 @@ var _default = exports.default = (0, _vue.defineComponent)({
|
|
|
3408
3411
|
if ($xeTable.handleUpdateCustomColumn) {
|
|
3409
3412
|
$xeTable.handleUpdateCustomColumn();
|
|
3410
3413
|
}
|
|
3414
|
+
reactData.isColLoading = false;
|
|
3411
3415
|
return $xeTable.recalculate();
|
|
3412
3416
|
});
|
|
3413
3417
|
});
|
|
@@ -8960,13 +8964,19 @@ var _default = exports.default = (0, _vue.defineComponent)({
|
|
|
8960
8964
|
*/
|
|
8961
8965
|
triggerSortEvent(evnt, column, order) {
|
|
8962
8966
|
const sortOpts = computeSortOpts.value;
|
|
8967
|
+
const {
|
|
8968
|
+
multiple,
|
|
8969
|
+
allowClear
|
|
8970
|
+
} = sortOpts;
|
|
8963
8971
|
const {
|
|
8964
8972
|
field,
|
|
8965
8973
|
sortable
|
|
8966
8974
|
} = column;
|
|
8967
8975
|
if (sortable) {
|
|
8968
8976
|
if (!order || column.order === order) {
|
|
8969
|
-
|
|
8977
|
+
if (allowClear) {
|
|
8978
|
+
tableMethods.clearSort(multiple ? column : null);
|
|
8979
|
+
}
|
|
8970
8980
|
} else {
|
|
8971
8981
|
tableMethods.sort({
|
|
8972
8982
|
field,
|
|
@@ -10704,7 +10714,7 @@ var _default = exports.default = (0, _vue.defineComponent)({
|
|
|
10704
10714
|
const areaOpts = computeAreaOpts.value;
|
|
10705
10715
|
const loadingOpts = computeLoadingOpts.value;
|
|
10706
10716
|
const isMenu = computeIsMenu.value;
|
|
10707
|
-
const currLoading = reactData.
|
|
10717
|
+
const currLoading = reactData.isColLoading || reactData.isRowLoading || loading;
|
|
10708
10718
|
const resizableOpts = computeResizableOpts.value;
|
|
10709
10719
|
const isArea = mouseConfig && mouseOpts.area;
|
|
10710
10720
|
const columnDragOpts = computeColumnDragOpts.value;
|