vxe-table 3.19.6 → 3.19.8
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/es/style.css +1 -1
- package/es/table/src/body.js +9 -19
- package/es/table/src/cell.js +47 -40
- package/es/table/src/footer.js +2 -12
- package/es/table/src/header.js +3 -11
- package/es/table/src/methods.js +51 -56
- package/es/table/src/table.js +89 -6
- package/es/ui/index.js +2 -2
- package/es/ui/src/log.js +1 -1
- package/lib/index.umd.js +201 -121
- package/lib/index.umd.min.js +1 -1
- package/lib/style.css +1 -1
- package/lib/table/src/body.js +7 -20
- package/lib/table/src/body.min.js +1 -1
- package/lib/table/src/cell.js +12 -5
- package/lib/table/src/cell.min.js +1 -1
- package/lib/table/src/footer.js +2 -15
- package/lib/table/src/footer.min.js +1 -1
- package/lib/table/src/header.js +3 -13
- package/lib/table/src/header.min.js +1 -1
- package/lib/table/src/methods.js +56 -59
- package/lib/table/src/methods.min.js +1 -1
- package/lib/table/src/table.js +118 -6
- package/lib/table/src/table.min.js +1 -1
- package/lib/ui/index.js +2 -2
- 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 +1 -1
- package/packages/table/src/body.ts +9 -19
- package/packages/table/src/cell.ts +49 -42
- package/packages/table/src/footer.ts +2 -11
- package/packages/table/src/header.ts +3 -11
- package/packages/table/src/methods.ts +52 -55
- package/packages/table/src/table.ts +89 -6
- package/packages/ui/index.ts +1 -1
- /package/es/{iconfont.1761877353318.ttf → iconfont.1762324067655.ttf} +0 -0
- /package/es/{iconfont.1761877353318.woff → iconfont.1762324067655.woff} +0 -0
- /package/es/{iconfont.1761877353318.woff2 → iconfont.1762324067655.woff2} +0 -0
- /package/lib/{iconfont.1761877353318.ttf → iconfont.1762324067655.ttf} +0 -0
- /package/lib/{iconfont.1761877353318.woff → iconfont.1762324067655.woff} +0 -0
- /package/lib/{iconfont.1761877353318.woff2 → iconfont.1762324067655.woff2} +0 -0
package/lib/table/src/body.js
CHANGED
|
@@ -813,8 +813,6 @@ var _default = exports.default = {
|
|
|
813
813
|
tableColumn
|
|
814
814
|
} = props;
|
|
815
815
|
const {
|
|
816
|
-
spanMethod,
|
|
817
|
-
footerSpanMethod,
|
|
818
816
|
mouseConfig
|
|
819
817
|
} = tableProps;
|
|
820
818
|
const {
|
|
@@ -824,8 +822,6 @@ var _default = exports.default = {
|
|
|
824
822
|
overflowX,
|
|
825
823
|
scrollXLoad,
|
|
826
824
|
scrollYLoad,
|
|
827
|
-
isAllOverflow,
|
|
828
|
-
expandColumn,
|
|
829
825
|
dragRow,
|
|
830
826
|
dragCol
|
|
831
827
|
} = tableReactData;
|
|
@@ -836,18 +832,10 @@ var _default = exports.default = {
|
|
|
836
832
|
} = tableInternalData;
|
|
837
833
|
const emptyOpts = $xeTable.computeEmptyOpts;
|
|
838
834
|
const mouseOpts = $xeTable.computeMouseOpts;
|
|
839
|
-
const
|
|
835
|
+
const isBodyRenderOptimize = $xeTable.computeIsBodyRenderOptimize;
|
|
840
836
|
let renderDataList = tableData;
|
|
841
837
|
let renderColumnList = tableColumn;
|
|
842
|
-
|
|
843
|
-
// 如果是使用优化模式
|
|
844
|
-
if (scrollXLoad || scrollYLoad || isAllOverflow) {
|
|
845
|
-
if (expandColumn && expandOpts.mode !== 'fixed' || spanMethod || footerSpanMethod) {
|
|
846
|
-
// 如果不支持优化模式
|
|
847
|
-
} else {
|
|
848
|
-
isOptimizeMode = true;
|
|
849
|
-
}
|
|
850
|
-
}
|
|
838
|
+
const isOptimizeMode = isBodyRenderOptimize;
|
|
851
839
|
if (!isColLoading && (fixedType || !overflowX)) {
|
|
852
840
|
renderColumnList = visibleColumn;
|
|
853
841
|
}
|
|
@@ -920,11 +908,6 @@ var _default = exports.default = {
|
|
|
920
908
|
emptyContent = tableProps.emptyText || getI18n('vxe.table.emptyText');
|
|
921
909
|
}
|
|
922
910
|
}
|
|
923
|
-
const ons = {
|
|
924
|
-
scroll(evnt) {
|
|
925
|
-
$xeTable.triggerBodyScrollEvent(evnt, fixedType);
|
|
926
|
-
}
|
|
927
|
-
};
|
|
928
911
|
return h('div', {
|
|
929
912
|
ref: 'refElem',
|
|
930
913
|
class: ['vxe-table--body-wrapper', fixedType ? `fixed-${fixedType}--wrapper` : 'body--wrapper'],
|
|
@@ -934,7 +917,11 @@ var _default = exports.default = {
|
|
|
934
917
|
}, [h('div', {
|
|
935
918
|
ref: 'refBodyScroll',
|
|
936
919
|
class: 'vxe-table--body-inner-wrapper',
|
|
937
|
-
on:
|
|
920
|
+
on: {
|
|
921
|
+
scroll(evnt) {
|
|
922
|
+
$xeTable.triggerBodyScrollEvent(evnt, fixedType);
|
|
923
|
+
}
|
|
924
|
+
}
|
|
938
925
|
}, [fixedType ? renderEmptyElement($xeTable) : h('div', {
|
|
939
926
|
ref: 'refBodyXSpace',
|
|
940
927
|
class: 'vxe-body--x-space'
|
|
@@ -1 +1 @@
|
|
|
1
|
-
Object.defineProperty(exports,"__esModule",{value:!0}),exports.default=void 0;var _xeUtils=_interopRequireDefault(require("xe-utils")),_ui=require("../../ui"),_utils=require("../../ui/src/utils"),_util=require("./util"),_dom=require("../../ui/src/dom"),_vn=require("../../ui/src/vn");function _interopRequireDefault(e){return e&&e.__esModule?e:{default:e}}let{getI18n,renderer,renderEmptyElement}=_ui.VxeUI,sourceType="table",renderType="body",isVMScrollProcess=e=>{var l=e.delayHover,{lastScrollTime:e,isDragResize:t}=e;return!!(t||e&&Date.now()<e+l)};function renderLine(o,a,i,s,d){var n=s.column,c=a.treeConfig,p=a.computeCellOpts,u=a.computeRowOpts,g=a.computeDefaultRowHeight,x=a.computeTreeOpts,{slots:n,treeNode:m}=n,v=a.fullAllDataRowIdData;if(c&&m&&(x.showLine||x.line)){if(n&&n.line)return a.callSlot(n.line,s,o);c=v[i];let e=0,l=null,t=null,r="";return(c&&(e=c.level,l=c.items[c.treeIndex-1],t=c.parent),e||x.showRootLine)?(l?(m=v[(0,_util.getRowid)(a,l)]||{},r=`${m.lineHeight||0}px`):e&&t&&(n=v[(0,_util.getRowid)(a,t)]||{},r=`calc(-1em + ${Math.floor(d/2+(0,_util.getCellRestHeight)(n,p,u,g)/2)}px)`),[o("div",{key:"tl",class:"vxe-tree--line-wrapper"},[o("div",{class:"vxe-tree--line",style:{height:r,bottom:`-${Math.floor(d/2)}px`,left:`calc(${e*x.indent}px + 1em)`}})])]):[]}return[]}function renderTdColumn(e,l,H,t,r,A,q,o,F,L,a,i,N,U,V){var s=l.$xeGrid,d=l.$xeGantt,{columnKey:G,resizable:n,showOverflow:c,border:W,height:p,treeConfig:X,cellClassName:Y,cellStyle:j,align:u,spanMethod:P,mouseConfig:K,editConfig:J,editRules:g,tooltipConfig:x,padding:Q}=l,{tableData:Z,tableColumn:ee,dragRow:le,overflowX:te,overflowY:re,currentColumn:oe,scrollXLoad:ae,scrollYLoad:ie,mergeBodyFlag:se,calcCellHeightFlag:m,resizeHeightFlag:v,resizeWidthFlag:de,editStore:ne,isAllOverflow:ce,validErrorMaps:pe}=l,{fullAllDataRowIdData:ue,fullColumnIdData:w,mergeBodyCellMaps:ge,visibleColumn:xe,afterFullData:me,mergeBodyList:ve,scrollXStore:we,scrollYStore:he}=l,h=l.computeCellOpts,f=l.computeValidOpts,y=l.computeCheckboxOpts,fe=l.computeEditOpts,b=l.computeTooltipOpts,ye=l.computeVirtualXOpts,be=l.computeVirtualYOpts,{isAllColumnDrag:Ce,isAllRowDrag:_e}=l.resizableOpts,C=l.computeRowOpts,_=l.computeRowDragOpts,Re=l.computeDefaultRowHeight,m=m?h.height||C.height:0,{disabledMethod:R,isCrossDrag:Ee,isPeerDrag:Se}=_,$e=l.computeColumnOpts,Oe=l.computeMouseOpts,De=l.computeCellOffsetWidth,Ie=l.computeAreaOpts.selectCellToRow,{type:Te,cellRender:ke,editRender:Be,align:Me,showOverflow:E,className:ze,treeNode:He,rowResize:Ae,padding:S,verticalAlign:$,slots:qe}=i,Fe=h.verticalAlign,ne=ne.actived,Le=ue[t]||{},O=i.id,w=w[O]||{},D=Be||ke,D=D?renderer.get(D.name):null,Ne=D?D.tableCellClassName||D.cellClassName:null,Ue=D?D.tableCellStyle||D.cellStyle:"";let Ve=b.showAll;var Ge=w.index,b=w._index,w=(0,_utils.isEnableConf)(Be),v=v?Le.resizeHeight:0;let I=te&&(r?i.fixed!==r:!!i.fixed);Q=_xeUtils.default.eqNull(S)?null===Q?h.padding:Q:S,S=_xeUtils.default.eqNull(E)?c:E,c="ellipsis"===S;let T="title"===S,k=!0===S||"tooltip"===S;E=ce||T||k||c,S=_xeUtils.default.isBoolean(i.resizable)?i.resizable:$e.resizable||n,n=!!m,m=0<v;let We;v={},Me=Me||(D?D.tableCellAlign:"")||u,D=_xeUtils.default.eqNull($)?Fe:$,u=pe[t+":"+O],Fe=g&&f.showMessage&&("default"===f.message?p||1<Z.length:"inline"===f.message),$={colid:O};let B={$table:l,$grid:s,$gantt:d,isEdit:!1,seq:H,rowid:t,row:o,rowIndex:F,$rowIndex:L,_rowIndex:a,column:i,columnIndex:Ge,$columnIndex:N,_columnIndex:b,fixed:r,source:sourceType,type:renderType,isHidden:!!I,level:q,visibleData:me,data:Z,items:V},M=!1,Xe=!1,z=((M=C.drag?"row"===_.trigger||i.dragSort&&"cell"===_.trigger:M)&&(Xe=!(!R||!R(B))),(T||k||Ve||x)&&(v.mouseover=e=>{isVMScrollProcess(l)||(T?(0,_dom.updateCellTitle)(e.currentTarget,i):(k||Ve)&&l.triggerBodyTooltipEvent(e,B)),l.dispatchEvent("cell-mouseenter",Object.assign({cell:e.currentTarget},B),e)}),(k||Ve||x)&&(v.mouseleave=e=>{isVMScrollProcess(l)||(k||Ve)&&l.handleTargetLeaveEvent(e),l.dispatchEvent("cell-mouseleave",Object.assign({cell:e.currentTarget},B),e)}),(M||y.range||K)&&(v.mousedown=e=>{l.triggerCellMousedownEvent(e,B)}),M&&(v.mouseup=l.triggerCellMouseupEvent),v.click=e=>{l.triggerCellClickEvent(e,B)},!(v.dblclick=e=>{l.triggerCellDblclickEvent(e,B)})),Ye=1,je=1;if(se&&ve.length){pe=ge[a+":"+b];if(pe){var{rowspan:g,colspan:p}=pe;if(!g||!p)return renderEmptyElement(l);1<g&&(z=!0,je=g,$.rowspan=g),1<p&&(z=!0,Ye=p,$.colspan=p)}}else if(P){var{rowspan:s=1,colspan:d=1}=P(B)||{};if(!s||!d)return renderEmptyElement(l);1<s&&(z=!0,je=s,$.rowspan=s),1<d&&(z=!0,Ye=d,$.colspan=d)}!(I=I&&z&&(1<$.colspan||1<$.rowspan)?!1:I)&&J&&(Be||ke)&&(fe.showStatus||fe.showUpdateStatus)&&(We=l.isUpdateByRow(o,i.field));H=!E&&(ie||ae);let Pe=(0,_util.getCellRestHeight)(Le,h,C,Re);F=N===U.length-1,L=!i.resizeWidth&&("auto"===i.minWidth||"auto"===i.width);let Ke=!1;z||le&&(0,_util.getRowid)(l,le)===t||(re&&ie&&!X&&16<Z.length&&!be.immediate&&(a<he.visibleStartIndex-he.preloadSize||a>he.visibleEndIndex+he.preloadSize)||te&&ae&&10<ee.length&&!ye.immediate&&!i.fixed&&(b<we.visibleStartIndex-we.preloadSize||b>we.visibleEndIndex+we.preloadSize))&&(Ke=!0),1<je&&(V=me[a+je-1])&&(_=ue[(0,_util.getRowid)(l,V)])&&(Pe+=_.oTop+(0,_util.getCellRestHeight)(_,h,C,Re)-Le.oTop-(0,_util.getCellRestHeight)(Le,h,C,Re));R={};if(E&&de){let l=0;if(1<Ye)for(let e=1;e<Ye;e++){var Je=xe[Ge+e];Je&&(l+=Je.renderWidth)}R.width=i.renderWidth+l-De+"px"}ie||ae||E||n||m?R.height=Pe+"px":R.minHeight=Pe+"px";x=[];I&&ce?x.push(e("div",{key:"tc",class:["vxe-cell",{"c--title":T,"c--tooltip":k,"c--ellipsis":c}],style:R})):(X&&x.push(...renderLine(e,l,t,B,Pe)),x.push(e("div",{key:"tc",class:["vxe-cell",{"c--title":T,"c--tooltip":k,"c--ellipsis":c}],style:R,attrs:{title:T?l.getCellLabel(o,i):null}},Ke?[]:[e("div",{attrs:{colid:O,rowid:t},class:"vxe-cell--wrapper vxe-body-cell--wrapper"},i.renderCell(e,B))])),Fe&&u&&(y=u.rule,se=qe?qe.valid:null,ve=Object.assign(Object.assign(Object.assign({},B),u),{rule:u}),x.push(e("div",{key:"tcv",class:["vxe-cell--valid-error-tip",(0,_utils.getClass)(f.className,u)],style:y&&y.maxWidth?{width:y.maxWidth+"px"}:void 0},[e("div",{class:"vxe-cell--valid-error-wrapper vxe-cell--valid-error-theme-"+(f.theme||"normal")},[se?l.callSlot(se,ve,e):[e("span",{class:"vxe-cell--valid-error-msg"},u.content)]])]))));let Qe=!1;return K&&Oe.area&&!b&&Ie&&(Qe=!0),!I&&S&&Ce&&x.push(e("div",{key:"tcc",class:["vxe-cell--col-resizable",{"is--line":!W||"none"===W}],on:{mousedown:e=>l.handleColResizeMousedownEvent(e,r,B),dblclick:e=>l.handleColResizeDblclickEvent(e,B)}})),(Ae||_e)&&C.resizable&&x.push(e("div",{key:"tcr",class:"vxe-cell--row-resizable",on:{mousedown:e=>l.handleRowResizeMousedownEvent(e,B),dblclick:e=>l.handleRowResizeDblclickEvent(e,B)}})),e("td",{class:["vxe-table--column vxe-body--column",O,D?"col--vertical-"+D:"",Me?"col--"+Me:"",Te?"col--"+Te:"",{"col--last":F,"col--tree-node":He,"col--edit":w,"col--ellipsis":E,"col--cs-height":n,"col--rs-height":m,"col--to-row":Qe,"col--auto-height":H,"fixed--width":!L,"fixed--hidden":I,"is--padding":Q,"is--progress":I&&ce||Ke,"is--drag-cell":M&&(Ee||Se||!q),"is--drag-disabled":Xe,"col--dirty":We,"col--active":J&&w&&ne.row===o&&(ne.column===i||"row"===fe.mode),"col--valid-error":!!u,"col--current":oe===i},(0,_utils.getClass)(Ne,B),(0,_utils.getClass)(ze,B),(0,_utils.getClass)(Y,B)],key:G||ae||ie||$e.useKey||C.useKey||$e.drag?i.id:N,attrs:$,style:Object.assign({},_xeUtils.default.isFunction(Ue)?Ue(B):Ue,_xeUtils.default.isFunction(j)?j(B):j),on:v},A&&I?[]:x)}function renderRows(v,w,h,f,y,b){let C=w.$parent;var e=C,l=C,t=C;let _=C.$xeGrid,R=C.$xeGantt,{stripe:E,rowKey:S,highlightHoverRow:$,rowClassName:O,rowStyle:D,editConfig:I,treeConfig:T}=e,{hasFixedColumn:k,treeExpandedFlag:B,scrollXLoad:M,scrollYLoad:z,isAllOverflow:H,rowExpandedFlag:A,expandColumn:q,selectRadioRow:F,pendingRowFlag:L,rowExpandHeightFlag:N,isRowGroupStatus:U}=l,{fullAllDataRowIdData:P,fullColumnIdData:K,treeExpandedMaps:J,pendingRowMaps:Q,rowExpandedMaps:Z}=t,ee=C.computeCheckboxOpts,le=C.computeRadioOpts,V=C.computeTreeOpts,G=C.computeEditOpts,W=C.computeRowOpts,te=C.computeColumnOpts,{transform:X,seqMode:Y}=V,re=V.children||V.childrenField,j=[],oe=(0,_util.createHandleGetRowId)(C).handleGetRowId,ae=T||U;return y.forEach((r,o)=>{var a={};let i=oe(r);var s=P[i]||{};let d=o,n=0,c=-1,p=-1;var u=U&&r.isAggregate,g=((W.isHover||$)&&(a.mouseover=e=>{isVMScrollProcess(C)||C.triggerHoverEvent(e,{row:r,rowIndex:d})},a.mouseleave=()=>{isVMScrollProcess(C)||C.clearHoverRow()}),s&&(d=s.index,p=s._index,n=s.level,c=s.seq,u||T&&X&&"increasing"===Y?c=s._index+1:T&&"fixed"===Y&&(c=s._tIndex+1)),{$table:C,seq:c,rowid:i,fixed:h,type:renderType,level:n,row:r,rowIndex:d,$rowIndex:o,_rowIndex:p}),x=q&&!!A&&!!Z[i];let e=!1,l=[],t=!1;I&&(t=C.isInsertByRow(r)),!T||z||X||(l=r[re],e=!!B&&l&&0<l.length&&!!J[i]),!W.drag||U||T&&!X||(a.dragstart=C.handleRowDragDragstartEvent,a.dragend=C.handleRowDragDragendEvent,a.dragover=C.handleRowDragDragoverEvent);var u=["vxe-body--row",ae?"row--level-"+n:"",{"row--stripe":E&&(p+1)%2==0,"is--new":t,"is--expand-row":x,"is--expand-tree":e,"row--new":t&&(G.showStatus||G.showInsertStatus),"row--radio":le.highlight&&F===r,"row--checked":ee.highlight&&C.isCheckedByCheckboxRow(r),"row--pending":!!L&&!!Q[i],"row--group":u},O?_xeUtils.default.isFunction(O)?O(g):O:""],m=b.map((e,l)=>renderTdColumn(v,C,c,i,h,f,n,r,d,o,p,e,l,b,y));if(j.push(v("tr",{class:u,attrs:{rowid:i},style:D?_xeUtils.default.isFunction(D)?D(g):D:void 0,key:S||M||z||W.useKey||W.drag||te.drag||U||T?i:o,on:a},m)),x){var{height:u,padding:g,mode:a}=C.computeExpandOpts;if("fixed"===a)j.push(v("tr",{class:"vxe-body--row-expanded-place",key:"expand_"+i,attrs:{rowid:i}},[v("td",{class:"vxe-body--row-expanded-place-column",attrs:{colspan:b.length},style:{height:`${N?s.expandHeight||u:0}px`}})]));else{m={},x=(u&&(m.height=u+"px"),T&&(m.paddingLeft=n*V.indent+30+"px"),q||{}).showOverflow,a=q.id,s=K[a]||{},a=_xeUtils.default.eqNull(x)?H:x;let e=-1,l=-1,t=-1;s&&(e=s.index,l=s.$index,t=s._index);x={$grid:_,$table:C,$gantt:R,seq:c,column:q,columnIndex:e,$columnIndex:l,_columnIndex:t,fixed:h,source:sourceType,type:renderType,level:n,row:r,rowid:i,rowIndex:d,$rowIndex:o,_rowIndex:p,isHidden:!1,isEdit:!1,visibleData:[],data:[],items:[]};j.push(v("tr",{class:["vxe-body--expanded-row",{"is--padding":g}],key:"expand_"+i},[v("td",{class:["vxe-body--expanded-column",{"fixed--hidden":h&&!k,"col--ellipsis":a}],attrs:{colspan:b.length}},[v("div",{class:["vxe-body--expanded-cell",{"is--ellipsis":u}],style:m},[q.renderData(v,x)])])]))}}e&&j.push(...renderRows(v,w,h,f,l,b))}),j}var _default=exports.default={name:"VxeTableBody",props:{tableData:Array,tableColumn:Array,fixedColumn:Array,fixedType:{type:String,default:""}},mounted(){var e=this,l=e.fixedType,t=e.$parent.elemStore,l=`${l||"main"}-body-`;t[l+"wrapper"]=e.$refs.refElem,t[l+"scroll"]=e.$refs.refBodyScroll,t[l+"table"]=e.$refs.refBodyTable,t[l+"colgroup"]=e.$refs.refBodyColgroup,t[l+"list"]=e.$refs.refBodyTBody,t[l+"xSpace"]=e.$refs.refBodyXSpace,t[l+"ySpace"]=e.$refs.refBodyYSpace,t[l+"emptyBlock"]=e.$refs.refBodyEmptyBlock},destroyed(){var e=this.fixedType,l=this.$parent.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},render(t){let l=this.$parent;var e=l,r=l,o=l,a=l.$xeGrid,i=l.$xeGantt,s=l.$scopedSlots,d=l.xID;let{fixedColumn:n,fixedType:c,tableColumn:p}=this;var{spanMethod:u,footerSpanMethod:g,mouseConfig:x}=e,{isGroup:r,tableData:m,isColLoading:v,overflowX:w,scrollXLoad:h,scrollYLoad:f,isAllOverflow:y,expandColumn:b,dragRow:C,dragCol:_}=r,{visibleColumn:o,fullAllDataRowIdData:R,fullColumnIdData:E}=o,S=l.computeEmptyOpts,$=l.computeMouseOpts,O=l.computeExpandOpts;let D=m,I=p,T=!1;!(h||f||y)||b&&"fixed"!==O.mode||u||g||(T=!0),v||!c&&w||(I=o),c&&T&&(I=n||[]),f&&C&&2<D.length&&(m=R[(0,_util.getRowid)(l,C)])&&(y=m._index,b=D[0],O=D[D.length-1],u=R[(0,_util.getRowid)(l,b)],g=R[(0,_util.getRowid)(l,O)],u)&&g&&(v=u._index,w=g._index,y<v?D=[C].concat(D):w<y&&(D=D.concat([C]))),c||r||h&&_&&2<I.length&&(o=E[_.id])&&(f=o._index,m=I[0],b=I[I.length-1],R=E[m.id],O=E[b.id],R)&&O&&(u=R._index,g=O._index,f<u?I=[_].concat(I):g<f&&(I=I.concat([_])));let k;v=s?s.empty:null,w={$table:l,$grid:a,$gantt:i},k=v?v.call(l,w):(C=(y=S.name?renderer.get(S.name):null)?y.renderTableEmpty||y.renderTableEmptyView||y.renderEmpty:null)?(0,_vn.getSlotVNs)(C.call(l,t,S,w)):e.emptyText||getI18n("vxe.table.emptyText"),r={scroll(e){l.triggerBodyScrollEvent(e,c)}};return t("div",{ref:"refElem",class:["vxe-table--body-wrapper",c?`fixed-${c}--wrapper`:"body--wrapper"],attrs:{xid:d}},[t("div",{ref:"refBodyScroll",class:"vxe-table--body-inner-wrapper",on:r},[c?renderEmptyElement(l):t("div",{ref:"refBodyXSpace",class:"vxe-body--x-space"}),t("div",{ref:"refBodyYSpace",class:"vxe-body--y-space"}),t("table",{ref:"refBodyTable",class:"vxe-table--body",attrs:{xid:d,cellspacing:0,cellpadding:0,border:0,xvm:T?"1":null}},[t("colgroup",{ref:"refBodyColgroup"},I.map((e,l)=>t("col",{attrs:{name:e.id},key:l,style:{width:e.renderWidth+"px"}}))),t("tbody",{ref:"refBodyTBody"},renderRows(t,this,c,T,D,I))]),t("div",{class:"vxe-table--checkbox-range"}),x&&$.area?t("div",{class:"vxe-table--cell-area",attrs:{xid:d}},[t("span",{class:"vxe-table--cell-main-area"},$.extension?[t("span",{class:"vxe-table--cell-main-area-btn",on:{mousedown(e){l.triggerCellAreaExtendMousedownEvent&&l.triggerCellAreaExtendMousedownEvent(e,{$table:l,fixed:c,type:renderType})}}})]:null),t("span",{class:"vxe-table--cell-clip-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"}),t("span",{class:"vxe-table--cell-row-status-area"})]):renderEmptyElement(l),c?renderEmptyElement(l):t("div",{class:"vxe-table--empty-block",ref:"emptyBlock"},[t("div",{class:"vxe-table--empty-content"},k)])])])}};
|
|
1
|
+
Object.defineProperty(exports,"__esModule",{value:!0}),exports.default=void 0;var _xeUtils=_interopRequireDefault(require("xe-utils")),_ui=require("../../ui"),_utils=require("../../ui/src/utils"),_util=require("./util"),_dom=require("../../ui/src/dom"),_vn=require("../../ui/src/vn");function _interopRequireDefault(e){return e&&e.__esModule?e:{default:e}}let{getI18n,renderer,renderEmptyElement}=_ui.VxeUI,sourceType="table",renderType="body",isVMScrollProcess=e=>{var l=e.delayHover,{lastScrollTime:e,isDragResize:t}=e;return!!(t||e&&Date.now()<e+l)};function renderLine(o,a,i,s,d){var n=s.column,c=a.treeConfig,p=a.computeCellOpts,u=a.computeRowOpts,g=a.computeDefaultRowHeight,x=a.computeTreeOpts,{slots:n,treeNode:m}=n,v=a.fullAllDataRowIdData;if(c&&m&&(x.showLine||x.line)){if(n&&n.line)return a.callSlot(n.line,s,o);c=v[i];let e=0,l=null,t=null,r="";return(c&&(e=c.level,l=c.items[c.treeIndex-1],t=c.parent),e||x.showRootLine)?(l?(m=v[(0,_util.getRowid)(a,l)]||{},r=`${m.lineHeight||0}px`):e&&t&&(n=v[(0,_util.getRowid)(a,t)]||{},r=`calc(-1em + ${Math.floor(d/2+(0,_util.getCellRestHeight)(n,p,u,g)/2)}px)`),[o("div",{key:"tl",class:"vxe-tree--line-wrapper"},[o("div",{class:"vxe-tree--line",style:{height:r,bottom:`-${Math.floor(d/2)}px`,left:`calc(${e*x.indent}px + 1em)`}})])]):[]}return[]}function renderTdColumn(e,l,H,t,r,A,q,o,F,L,a,i,N,U,V){var s=l.$xeGrid,d=l.$xeGantt,{columnKey:G,resizable:n,showOverflow:c,border:W,height:p,treeConfig:X,cellClassName:Y,cellStyle:j,align:u,spanMethod:P,mouseConfig:K,editConfig:J,editRules:g,tooltipConfig:x,padding:Q}=l,{tableData:Z,tableColumn:ee,dragRow:le,overflowX:te,overflowY:re,currentColumn:oe,scrollXLoad:ae,scrollYLoad:ie,mergeBodyFlag:se,calcCellHeightFlag:m,resizeHeightFlag:v,resizeWidthFlag:de,editStore:ne,isAllOverflow:ce,validErrorMaps:pe}=l,{fullAllDataRowIdData:ue,fullColumnIdData:w,mergeBodyCellMaps:ge,visibleColumn:xe,afterFullData:me,mergeBodyList:ve,scrollXStore:we,scrollYStore:he}=l,h=l.computeCellOpts,f=l.computeValidOpts,y=l.computeCheckboxOpts,fe=l.computeEditOpts,b=l.computeTooltipOpts,ye=l.computeVirtualXOpts,be=l.computeVirtualYOpts,{isAllColumnDrag:Ce,isAllRowDrag:_e}=l.resizableOpts,C=l.computeRowOpts,_=l.computeRowDragOpts,Re=l.computeDefaultRowHeight,m=m?h.height||C.height:0,{disabledMethod:R,isCrossDrag:Ee,isPeerDrag:$e}=_,Se=l.computeColumnOpts,De=l.computeMouseOpts,Oe=l.computeCellOffsetWidth,Ie=l.computeAreaOpts.selectCellToRow,{type:Te,cellRender:ke,editRender:Be,align:Me,showOverflow:E,className:ze,treeNode:He,rowResize:Ae,padding:$,verticalAlign:S,slots:qe}=i,Fe=h.verticalAlign,ne=ne.actived,Le=ue[t]||{},D=i.id,w=w[D]||{},O=Be||ke,O=O?renderer.get(O.name):null,Ne=O?O.tableCellClassName||O.cellClassName:null,Ue=O?O.tableCellStyle||O.cellStyle:"";let Ve=b.showAll;var Ge=w.index,b=w._index,w=(0,_utils.isEnableConf)(Be),v=v?Le.resizeHeight:0;let I=te&&(r?i.fixed!==r:!!i.fixed);Q=_xeUtils.default.eqNull($)?null===Q?h.padding:Q:$,$=_xeUtils.default.eqNull(E)?c:E,c="ellipsis"===$;let T="title"===$,k=!0===$||"tooltip"===$;E=ce||T||k||c,$=_xeUtils.default.isBoolean(i.resizable)?i.resizable:Se.resizable||n,n=!!m,m=0<v;let We;v={},Me=Me||(O?O.tableCellAlign:"")||u,O=_xeUtils.default.eqNull(S)?Fe:S,u=pe[t+":"+D],Fe=g&&f.showMessage&&("default"===f.message?p||1<Z.length:"inline"===f.message),S={colid:D};let B={$table:l,$grid:s,$gantt:d,isEdit:!1,seq:H,rowid:t,row:o,rowIndex:F,$rowIndex:L,_rowIndex:a,column:i,columnIndex:Ge,$columnIndex:N,_columnIndex:b,fixed:r,source:sourceType,type:renderType,isHidden:!!I,level:q,visibleData:me,data:Z,items:V},M=!1,Xe=!1,z=((M=C.drag?"row"===_.trigger||i.dragSort&&"cell"===_.trigger:M)&&(Xe=!(!R||!R(B))),(T||k||Ve||x)&&(v.mouseover=e=>{isVMScrollProcess(l)||(T?(0,_dom.updateCellTitle)(e.currentTarget,i):(k||Ve)&&l.triggerBodyTooltipEvent(e,B)),l.dispatchEvent("cell-mouseenter",Object.assign({cell:e.currentTarget},B),e)}),(k||Ve||x)&&(v.mouseleave=e=>{isVMScrollProcess(l)||(k||Ve)&&l.handleTargetLeaveEvent(e),l.dispatchEvent("cell-mouseleave",Object.assign({cell:e.currentTarget},B),e)}),(M||y.range||K)&&(v.mousedown=e=>{l.triggerCellMousedownEvent(e,B)}),M&&(v.mouseup=l.triggerCellMouseupEvent),v.click=e=>{l.triggerCellClickEvent(e,B)},!(v.dblclick=e=>{l.triggerCellDblclickEvent(e,B)})),Ye=1,je=1;if(se&&ve.length){pe=ge[a+":"+b];if(pe){var{rowspan:g,colspan:p}=pe;if(!g||!p)return renderEmptyElement(l);1<g&&(z=!0,je=g,S.rowspan=g),1<p&&(z=!0,Ye=p,S.colspan=p)}}else if(P){var{rowspan:s=1,colspan:d=1}=P(B)||{};if(!s||!d)return renderEmptyElement(l);1<s&&(z=!0,je=s,S.rowspan=s),1<d&&(z=!0,Ye=d,S.colspan=d)}!(I=I&&z&&(1<S.colspan||1<S.rowspan)?!1:I)&&J&&(Be||ke)&&(fe.showStatus||fe.showUpdateStatus)&&(We=l.isUpdateByRow(o,i.field));H=!E&&(ie||ae);let Pe=(0,_util.getCellRestHeight)(Le,h,C,Re);F=N===U.length-1,L=!i.resizeWidth&&("auto"===i.minWidth||"auto"===i.width);let Ke=!1;z||le&&(0,_util.getRowid)(l,le)===t||(re&&ie&&!X&&16<Z.length&&!be.immediate&&(a<he.visibleStartIndex-he.preloadSize||a>he.visibleEndIndex+he.preloadSize)||te&&ae&&10<ee.length&&!ye.immediate&&!i.fixed&&(b<we.visibleStartIndex-we.preloadSize||b>we.visibleEndIndex+we.preloadSize))&&(Ke=!0),1<je&&(V=me[a+je-1])&&(_=ue[(0,_util.getRowid)(l,V)])&&(Pe+=_.oTop+(0,_util.getCellRestHeight)(_,h,C,Re)-Le.oTop-(0,_util.getCellRestHeight)(Le,h,C,Re));R={};if(E&&de){let l=0;if(1<Ye)for(let e=1;e<Ye;e++){var Je=xe[Ge+e];Je&&(l+=Je.renderWidth)}R.width=i.renderWidth+l-Oe+"px"}ie||ae||E||n||m?R.height=Pe+"px":R.minHeight=Pe+"px";x=[];I&&ce?x.push(e("div",{key:"tc",class:["vxe-cell",{"c--title":T,"c--tooltip":k,"c--ellipsis":c}],style:R})):(X&&x.push(...renderLine(e,l,t,B,Pe)),x.push(e("div",{key:"tc",class:["vxe-cell",{"c--title":T,"c--tooltip":k,"c--ellipsis":c}],style:R,attrs:{title:T?l.getCellLabel(o,i):null}},Ke?[]:[e("div",{attrs:{colid:D,rowid:t},class:"vxe-cell--wrapper vxe-body-cell--wrapper"},i.renderCell(e,B))])),Fe&&u&&(y=u.rule,se=qe?qe.valid:null,ve=Object.assign(Object.assign(Object.assign({},B),u),{rule:u}),x.push(e("div",{key:"tcv",class:["vxe-cell--valid-error-tip",(0,_utils.getClass)(f.className,u)],style:y&&y.maxWidth?{width:y.maxWidth+"px"}:void 0},[e("div",{class:"vxe-cell--valid-error-wrapper vxe-cell--valid-error-theme-"+(f.theme||"normal")},[se?l.callSlot(se,ve,e):[e("span",{class:"vxe-cell--valid-error-msg"},u.content)]])]))));let Qe=!1;return K&&De.area&&!b&&Ie&&(Qe=!0),!I&&$&&Ce&&x.push(e("div",{key:"tcc",class:["vxe-cell--col-resizable",{"is--line":!W||"none"===W}],on:{mousedown:e=>l.handleColResizeMousedownEvent(e,r,B),dblclick:e=>l.handleColResizeDblclickEvent(e,B)}})),(Ae||_e)&&C.resizable&&x.push(e("div",{key:"tcr",class:"vxe-cell--row-resizable",on:{mousedown:e=>l.handleRowResizeMousedownEvent(e,B),dblclick:e=>l.handleRowResizeDblclickEvent(e,B)}})),e("td",{class:["vxe-table--column vxe-body--column",D,O?"col--vertical-"+O:"",Me?"col--"+Me:"",Te?"col--"+Te:"",{"col--last":F,"col--tree-node":He,"col--edit":w,"col--ellipsis":E,"col--cs-height":n,"col--rs-height":m,"col--to-row":Qe,"col--auto-height":H,"fixed--width":!L,"fixed--hidden":I,"is--padding":Q,"is--progress":I&&ce||Ke,"is--drag-cell":M&&(Ee||$e||!q),"is--drag-disabled":Xe,"col--dirty":We,"col--active":J&&w&&ne.row===o&&(ne.column===i||"row"===fe.mode),"col--valid-error":!!u,"col--current":oe===i},(0,_utils.getClass)(Ne,B),(0,_utils.getClass)(ze,B),(0,_utils.getClass)(Y,B)],key:G||ae||ie||Se.useKey||C.useKey||Se.drag?i.id:N,attrs:S,style:Object.assign({},_xeUtils.default.isFunction(Ue)?Ue(B):Ue,_xeUtils.default.isFunction(j)?j(B):j),on:v},A&&I?[]:x)}function renderRows(v,w,h,f,y,b){let C=w.$parent;var e=C,l=C,t=C;let _=C.$xeGrid,R=C.$xeGantt,{stripe:E,rowKey:$,highlightHoverRow:S,rowClassName:D,rowStyle:O,editConfig:I,treeConfig:T}=e,{hasFixedColumn:k,treeExpandedFlag:B,scrollXLoad:M,scrollYLoad:z,isAllOverflow:H,rowExpandedFlag:A,expandColumn:q,selectRadioRow:F,pendingRowFlag:L,rowExpandHeightFlag:N,isRowGroupStatus:U}=l,{fullAllDataRowIdData:P,fullColumnIdData:K,treeExpandedMaps:J,pendingRowMaps:Q,rowExpandedMaps:Z}=t,ee=C.computeCheckboxOpts,le=C.computeRadioOpts,V=C.computeTreeOpts,G=C.computeEditOpts,W=C.computeRowOpts,te=C.computeColumnOpts,{transform:X,seqMode:Y}=V,re=V.children||V.childrenField,j=[],oe=(0,_util.createHandleGetRowId)(C).handleGetRowId,ae=T||U;return y.forEach((r,o)=>{var a={};let i=oe(r);var s=P[i]||{};let d=o,n=0,c=-1,p=-1;var u=U&&r.isAggregate,g=((W.isHover||S)&&(a.mouseover=e=>{isVMScrollProcess(C)||C.triggerHoverEvent(e,{row:r,rowIndex:d})},a.mouseleave=()=>{isVMScrollProcess(C)||C.clearHoverRow()}),s&&(d=s.index,p=s._index,n=s.level,c=s.seq,u||T&&X&&"increasing"===Y?c=s._index+1:T&&"fixed"===Y&&(c=s._tIndex+1)),{$table:C,seq:c,rowid:i,fixed:h,type:renderType,level:n,row:r,rowIndex:d,$rowIndex:o,_rowIndex:p}),x=q&&!!A&&!!Z[i];let e=!1,l=[],t=!1;I&&(t=C.isInsertByRow(r)),!T||z||X||(l=r[re],e=!!B&&l&&0<l.length&&!!J[i]),!W.drag||U||T&&!X||(a.dragstart=C.handleRowDragDragstartEvent,a.dragend=C.handleRowDragDragendEvent,a.dragover=C.handleRowDragDragoverEvent);var u=["vxe-body--row",ae?"row--level-"+n:"",{"row--stripe":E&&(p+1)%2==0,"is--new":t,"is--expand-row":x,"is--expand-tree":e,"row--new":t&&(G.showStatus||G.showInsertStatus),"row--radio":le.highlight&&F===r,"row--checked":ee.highlight&&C.isCheckedByCheckboxRow(r),"row--pending":!!L&&!!Q[i],"row--group":u},D?_xeUtils.default.isFunction(D)?D(g):D:""],m=b.map((e,l)=>renderTdColumn(v,C,c,i,h,f,n,r,d,o,p,e,l,b,y));if(j.push(v("tr",{class:u,attrs:{rowid:i},style:O?_xeUtils.default.isFunction(O)?O(g):O:void 0,key:$||M||z||W.useKey||W.drag||te.drag||U||T?i:o,on:a},m)),x){var{height:u,padding:g,mode:a}=C.computeExpandOpts;if("fixed"===a)j.push(v("tr",{class:"vxe-body--row-expanded-place",key:"expand_"+i,attrs:{rowid:i}},[v("td",{class:"vxe-body--row-expanded-place-column",attrs:{colspan:b.length},style:{height:`${N?s.expandHeight||u:0}px`}})]));else{m={},x=(u&&(m.height=u+"px"),T&&(m.paddingLeft=n*V.indent+30+"px"),q||{}).showOverflow,a=q.id,s=K[a]||{},a=_xeUtils.default.eqNull(x)?H:x;let e=-1,l=-1,t=-1;s&&(e=s.index,l=s.$index,t=s._index);x={$grid:_,$table:C,$gantt:R,seq:c,column:q,columnIndex:e,$columnIndex:l,_columnIndex:t,fixed:h,source:sourceType,type:renderType,level:n,row:r,rowid:i,rowIndex:d,$rowIndex:o,_rowIndex:p,isHidden:!1,isEdit:!1,visibleData:[],data:[],items:[]};j.push(v("tr",{class:["vxe-body--expanded-row",{"is--padding":g}],key:"expand_"+i},[v("td",{class:["vxe-body--expanded-column",{"fixed--hidden":h&&!k,"col--ellipsis":a}],attrs:{colspan:b.length}},[v("div",{class:["vxe-body--expanded-cell",{"is--ellipsis":u}],style:m},[q.renderData(v,x)])])]))}}e&&j.push(...renderRows(v,w,h,f,l,b))}),j}var _default=exports.default={name:"VxeTableBody",props:{tableData:Array,tableColumn:Array,fixedColumn:Array,fixedType:{type:String,default:""}},mounted(){var e=this,l=e.fixedType,t=e.$parent.elemStore,l=`${l||"main"}-body-`;t[l+"wrapper"]=e.$refs.refElem,t[l+"scroll"]=e.$refs.refBodyScroll,t[l+"table"]=e.$refs.refBodyTable,t[l+"colgroup"]=e.$refs.refBodyColgroup,t[l+"list"]=e.$refs.refBodyTBody,t[l+"xSpace"]=e.$refs.refBodyXSpace,t[l+"ySpace"]=e.$refs.refBodyYSpace,t[l+"emptyBlock"]=e.$refs.refBodyEmptyBlock},destroyed(){var e=this.fixedType,l=this.$parent.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},render(t){let l=this.$parent;var e=l,r=l,o=l,a=l.$xeGrid,i=l.$xeGantt,s=l.$scopedSlots,d=l.xID;let{fixedColumn:n,fixedType:c,tableColumn:p}=this;var u=e.mouseConfig,{isGroup:r,tableData:g,isColLoading:x,overflowX:m,scrollXLoad:v,scrollYLoad:w,dragRow:h,dragCol:f}=r,{visibleColumn:o,fullAllDataRowIdData:y,fullColumnIdData:b}=o,C=l.computeEmptyOpts,_=l.computeMouseOpts;let R=g,E=p;g=l.computeIsBodyRenderOptimize;x||!c&&m||(E=o),c&&g&&(E=n||[]),w&&h&&2<R.length&&(x=y[(0,_util.getRowid)(l,h)])&&(m=x._index,o=R[0],w=R[R.length-1],x=y[(0,_util.getRowid)(l,o)],o=y[(0,_util.getRowid)(l,w)],x)&&o&&(y=x._index,w=o._index,m<y?R=[h].concat(R):w<m&&(R=R.concat([h]))),c||r||v&&f&&2<E.length&&(x=b[f.id])&&(o=x._index,y=E[0],w=E[E.length-1],m=b[y.id],h=b[w.id],m)&&h&&(r=m._index,v=h._index,o<r?E=[f].concat(E):v<o&&(E=E.concat([f])));let $;x=s?s.empty:null,y={$table:l,$grid:a,$gantt:i};return $=x?x.call(l,y):(w=(b=C.name?renderer.get(C.name):null)?b.renderTableEmpty||b.renderTableEmptyView||b.renderEmpty:null)?(0,_vn.getSlotVNs)(w.call(l,t,C,y)):e.emptyText||getI18n("vxe.table.emptyText"),t("div",{ref:"refElem",class:["vxe-table--body-wrapper",c?`fixed-${c}--wrapper`:"body--wrapper"],attrs:{xid:d}},[t("div",{ref:"refBodyScroll",class:"vxe-table--body-inner-wrapper",on:{scroll(e){l.triggerBodyScrollEvent(e,c)}}},[c?renderEmptyElement(l):t("div",{ref:"refBodyXSpace",class:"vxe-body--x-space"}),t("div",{ref:"refBodyYSpace",class:"vxe-body--y-space"}),t("table",{ref:"refBodyTable",class:"vxe-table--body",attrs:{xid:d,cellspacing:0,cellpadding:0,border:0,xvm:g?"1":null}},[t("colgroup",{ref:"refBodyColgroup"},E.map((e,l)=>t("col",{attrs:{name:e.id},key:l,style:{width:e.renderWidth+"px"}}))),t("tbody",{ref:"refBodyTBody"},renderRows(t,this,c,g,R,E))]),t("div",{class:"vxe-table--checkbox-range"}),u&&_.area?t("div",{class:"vxe-table--cell-area",attrs:{xid:d}},[t("span",{class:"vxe-table--cell-main-area"},_.extension?[t("span",{class:"vxe-table--cell-main-area-btn",on:{mousedown(e){l.triggerCellAreaExtendMousedownEvent&&l.triggerCellAreaExtendMousedownEvent(e,{$table:l,fixed:c,type:renderType})}}})]:null),t("span",{class:"vxe-table--cell-clip-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"}),t("span",{class:"vxe-table--cell-row-status-area"})]):renderEmptyElement(l),c?renderEmptyElement(l):t("div",{class:"vxe-table--empty-block",ref:"emptyBlock"},[t("div",{class:"vxe-table--empty-content"},$)])])])}};
|
package/lib/table/src/cell.js
CHANGED
|
@@ -214,8 +214,10 @@ function renderTitleContent(h, params, content) {
|
|
|
214
214
|
isRowGroupStatus
|
|
215
215
|
} = tableReactData;
|
|
216
216
|
const {
|
|
217
|
-
showHeaderOverflow
|
|
217
|
+
showHeaderOverflow,
|
|
218
|
+
slots
|
|
218
219
|
} = column;
|
|
220
|
+
const titleSlot = slots ? slots.title : null;
|
|
219
221
|
const headerTooltipOpts = $table.computeHeaderTooltipOpts;
|
|
220
222
|
const showAllTip = headerTooltipOpts.showAll;
|
|
221
223
|
const headOverflow = _xeUtils.default.eqNull(showHeaderOverflow) ? allColumnHeaderOverflow : showHeaderOverflow;
|
|
@@ -248,7 +250,7 @@ function renderTitleContent(h, params, content) {
|
|
|
248
250
|
return [h('span', {
|
|
249
251
|
class: 'vxe-cell--title',
|
|
250
252
|
on: ons
|
|
251
|
-
}, isRowGroupStatus && column.aggFunc && $table.getPivotTableAggregateRenderColTitles ? $table.getPivotTableAggregateRenderColTitles(h, column, titleVN) : [titleVN])];
|
|
253
|
+
}, isRowGroupStatus && column.aggFunc && $table.getPivotTableAggregateRenderColTitles ? $table.getPivotTableAggregateRenderColTitles(h, column, titleVN) : titleSlot ? $table.callSlot(titleSlot, params, h) : [titleVN])];
|
|
252
254
|
}
|
|
253
255
|
function getFooterContent(h, params) {
|
|
254
256
|
const {
|
|
@@ -1267,12 +1269,17 @@ const Cell = exports.Cell = {
|
|
|
1267
1269
|
iconDesc,
|
|
1268
1270
|
iconVisibleMethod
|
|
1269
1271
|
} = sortOpts;
|
|
1272
|
+
const {
|
|
1273
|
+
order,
|
|
1274
|
+
slots
|
|
1275
|
+
} = column;
|
|
1270
1276
|
if (showIcon && (!iconVisibleMethod || iconVisibleMethod(params))) {
|
|
1271
|
-
|
|
1277
|
+
const sortSlot = slots ? slots.sort : null;
|
|
1278
|
+
return sortSlot ? (0, _vn.getSlotVNs)($table.callSlot(sortSlot, params, h)) : [h('span', {
|
|
1272
1279
|
class: ['vxe-cell--sort', `vxe-cell--sort-${iconLayout}-layout`]
|
|
1273
1280
|
}, [h('i', {
|
|
1274
1281
|
class: ['vxe-sort--asc-btn', iconAsc || getIcon().TABLE_SORT_ASC, {
|
|
1275
|
-
'sort--active':
|
|
1282
|
+
'sort--active': order === 'asc'
|
|
1276
1283
|
}],
|
|
1277
1284
|
attrs: {
|
|
1278
1285
|
title: _xeUtils.default.eqNull(ascTitle) ? getI18n('vxe.table.sortAsc') : `${ascTitle || ''}`
|
|
@@ -1285,7 +1292,7 @@ const Cell = exports.Cell = {
|
|
|
1285
1292
|
} : undefined
|
|
1286
1293
|
}), h('i', {
|
|
1287
1294
|
class: ['vxe-sort--desc-btn', iconDesc || getIcon().TABLE_SORT_DESC, {
|
|
1288
|
-
'sort--active':
|
|
1295
|
+
'sort--active': order === 'desc'
|
|
1289
1296
|
}],
|
|
1290
1297
|
attrs: {
|
|
1291
1298
|
title: _xeUtils.default.eqNull(descTitle) ? getI18n('vxe.table.sortDesc') : `${descTitle || ''}`
|
|
@@ -1 +1 @@
|
|
|
1
|
-
Object.defineProperty(exports,"__esModule",{value:!0}),exports.default=exports.Cell=void 0;var _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(e,l){let{$table:t,column:r}=l,n=r.titlePrefix||r.titleHelp;return n?e("i",{class:["vxe-cell-title-prefix-icon",n.iconStatus?"theme--"+n.iconStatus:""],on:{mouseenter(e){t.triggerHeaderTitleEvent(e,n,l)},mouseleave(e){t.handleTargetLeaveEvent(e)}}},[e("i",{class:n.icon||getIcon().TABLE_TITLE_PREFIX})]):renderEmptyElement(t)}function renderTitleSuffixIcon(e,l){let{$table:t,column:r}=l,n=r.titleSuffix;return n?e("i",{class:["vxe-cell-title-suffix-icon",n.iconStatus?"theme--"+n.iconStatus:""],on:{mouseenter(e){t.triggerHeaderTitleEvent(e,n,l)},mouseleave(e){t.handleTargetLeaveEvent(e)}}},[e("i",{class:n.icon||getIcon().TABLE_TITLE_SUFFIX})]):renderEmptyElement(t)}function renderCellDragIcon(e,l){let t=l.$table;var r=t.$scopedSlots,n=t.dragConfig,{icon:o,trigger:a,disabledMethod:d}=t.computeRowDragOpts,d=d||(n?n.rowDisabledMethod:null);let i=d&&d(l);d=r.rowDragIcon||r["row-drag-icon"],r={};return"cell"!==a&&(r.mousedown=e=>{i||t.handleCellDragMousedownEvent(e,l)},r.mouseup=t.handleCellDragMouseupEvent),e("span",{key:"dg",class:["vxe-cell--drag-handle",{"is--disabled":i}],on:r},d?t.callSlot(d,l,e):[e("i",{class:o||(n?n.rowIcon:"")||getIcon().TABLE_DRAG_ROW})])}function renderCellBaseVNs(e,l,t){var{$table:r,column:n,level:o}=l,n=n.dragSort,{treeConfig:a,dragConfig:d}=r,i=r.computeRowOpts,s=r.computeTreeOpts,{showIcon:r,isPeerDrag:c,isCrossDrag:u,visibleMethod:C}=r.computeRowDragOpts,C=C||(d?d.rowVisibleMethod:null),g=[];return n&&i.drag&&(r||d&&d.showRowIcon)&&(!C||C(l))&&(!a||s.transform&&(c||u||!o))&&g.unshift(renderCellDragIcon(e,l)),g.concat(_xeUtils.default.isArray(t)?t:[t])}function renderHeaderCellDragIcon(e,t){let{$table:r,column:l}=t;var n=r.$scopedSlots,o=l.slots,a=r.computeColumnOpts,{showIcon:d,icon:i,trigger:s,isPeerDrag:c,isCrossDrag:u,visibleMethod:C,disabledMethod:g}=r.computeColumnDragOpts;if(!a.drag||!d||C&&!C(t)||l.fixed||!c&&!u&&l.parentId)return renderEmptyElement(r);{let l=g&&g(t);a=(o?o.columnDragIcon||o["column-drag-icon"]:null)||n.columnDragIcon||n["column-drag-icon"],d={};return"cell"!==s&&(d.mousedown=e=>{l||r.handleHeaderCellDragMousedownEvent(e,t)},d.mouseup=r.handleHeaderCellDragMouseupEvent),e("span",{key:"dg",class:["vxe-cell--drag-handle",{"is--disabled":l}],on:d},a?r.callSlot(a,t,e):[e("i",{class:i||getIcon().TABLE_DRAG_COLUMN})])}}function renderHeaderCellBaseVNs(e,l,t){return[renderTitlePrefixIcon(e,l),renderHeaderCellDragIcon(e,l),..._xeUtils.default.isArray(t)?t:[t],renderTitleSuffixIcon(e,l)]}function getRenderDefaultColumnTitle(e,l,t){return"html"===l.type&&_xeUtils.default.isString(t)?e("span",{key:"ch",domProps:{innerHTML:t}}):e("span",{key:"ct"},(0,_vn.getSlotVNs)(t))}function renderTitleContent(e,l,t){let{$table:r,column:n}=l;var o=r;let a=r;var o=o.showHeaderOverflow,d=a.isRowGroupStatus,i=n.showHeaderOverflow;let s=r.computeHeaderTooltipOpts.showAll;o=_xeUtils.default.eqNull(i)?o:i;let c="title"===o,u=!0===o||"tooltip"===o;i={},(c||u||s)&&(i.mouseenter=e=>{a.isDragResize||(c?(0,_dom.updateCellTitle)(e.currentTarget,n):(u||s)&&r.triggerHeaderTooltipEvent(e,l))}),(u||s)&&(i.mouseleave=e=>{a.isDragResize||(u||s)&&r.handleTargetLeaveEvent(e)}),o=getRenderDefaultColumnTitle(e,n,t);return[e("span",{class:"vxe-cell--title",on:i},d&&n.aggFunc&&r.getPivotTableAggregateRenderColTitles?r.getPivotTableAggregateRenderColTitles(e,n,o):[o])]}function getFooterContent(e,l){var{$table:t,column:r,_columnIndex:n,row:o,items:a}=l,{slots:d,editRender:i,cellRender:s,footerFormatter:c}=r,i=i||s;if(d&&d.footer)return t.callSlot(d.footer,l,e);let u="";u=_xeUtils.default.isArray(a)?a[n]:_xeUtils.default.get(o,r.field);s=Object.assign(l,{itemValue:u});if(c)return _xeUtils.default.isFunction(c)?""+c(s):(n=(a=(d=_xeUtils.default.isArray(c))?formats.get(c[0]):formats.get(c))?a.tableFooterCellFormatMethod:null)?""+(d?n(s,...c.slice(1)):n(s)):"";if(i){o=renderer.get(i.name),r=o?o.renderTableFooter||o.renderFooter:null;if(r)return(0,_vn.getSlotVNs)(r.call(t,e,i,s))}return[(0,_utils.formatText)(u,1)]}function getDefaultCellLabel(e){var{$table:e,row:l,column:t}=e;return(0,_utils.formatText)(e.getCellLabel(l,t),1)}function renderCellHandle(e,l){var{column:t,row:r,$table:n}=l,o=n.editConfig,a=n.isRowGroupStatus,{type:d,treeNode:i,rowGroupNode:s,editRender:c}=t,u=n.computeAggregateOpts.mode,C=n.computeCheckboxOpts,n=n.computeEditOpts,g=i||a&&("column"===u?t.field===r.groupField:s);switch(d){case"seq":return g?Cell.renderDeepIndexCell(e,l):Cell.renderSeqCell(e,l);case"radio":return g?Cell.renderDeepRadioCell(e,l):Cell.renderRadioCell(e,l);case"checkbox":return C.checkField?g?Cell.renderDeepSelectionCellByProp(e,l):Cell.renderCheckboxCellByProp(e,l):g?Cell.renderDeepSelectionCell(e,l):Cell.renderCheckboxCell(e,l);case"expand":return Cell.renderExpandCell(e,l);case"html":return g?Cell.renderDeepHTMLCell(e,l):Cell.renderHTMLCell(e,l)}return o&&(0,_utils.isEnableConf)(n)&&c?"cell"===n.mode?g?Cell.renderDeepCellEdit(e,l):Cell.renderCellEdit(e,l):g?Cell.renderDeepRowEdit(e,l):Cell.renderRowEdit(e,l):g?Cell.renderDeepCell(e,l):Cell.renderDefaultCell(e,l)}function renderHeaderHandle(e,l){var{column:t,$table:r}=l,n=r.editConfig,r=r.computeEditOpts,{type:t,filters:o,sortable:a,editRender:d}=t;switch(t){case"seq":return Cell.renderSeqHeader(e,l);case"radio":return Cell.renderRadioHeader(e,l);case"checkbox":return Cell.renderCheckboxHeader(e,l);case"html":if(o&&a)return Cell.renderSortAndFilterHeader(e,l);if(a)return Cell.renderSortHeader(e,l);if(o)return Cell.renderFilterHeader(e,l)}return n&&(0,_utils.isEnableConf)(r)&&d?Cell.renderEditHeader(e,l):o&&a?Cell.renderSortAndFilterHeader(e,l):a?Cell.renderSortHeader(e,l):o?Cell.renderFilterHeader(e,l):Cell.renderDefaultHeader(e,l)}function renderFooterHandle(e,l){return Cell.renderDefaultFooter(e,l)}let Cell=exports.Cell={createColumn(e,l){var t=l.type,r={renderHeader:renderHeaderHandle,renderCell:renderCellHandle,renderFooter:renderFooterHandle};return"expand"===t&&(r.renderData=Cell.renderExpandData),(0,_util.createColumn)(e,l,r)},renderHeaderTitle(e,l){var{$table:t,column:r}=l,{slots:n,editRender:o,cellRender:a}=r,o=o||a;if(n&&n.header)return renderTitleContent(e,l,t.callSlot(n.header,l,e));if(o){a=renderer.get(o.name),n=a?a.renderTableHeader||a.renderHeader:null;if(n)return(0,_vn.getSlotVNs)(renderTitleContent(e,l,n.call(t,e,o,l)))}return renderTitleContent(e,l,(0,_utils.formatText)(r.getTitle(),1))},renderDefaultHeader(e,l){return renderHeaderCellBaseVNs(e,l,Cell.renderHeaderTitle(e,l))},renderDefaultCell(e,l){var{$table:t,row:r,column:n}=l,o=t,a=t.isRowGroupStatus,d=t.editConfig,{field:i,slots:s,editRender:c,cellRender:u,rowGroupNode:C,aggFunc:g,formatter:p}=n,d=d&&(0,_utils.isEnableConf)(c)?c:(0,_utils.isEnableConf)(u)?u:null,u=s?s.default:null,s=s?s.groupContent||s["group-content"]:null;let E="";if(a&&i&&r.isAggregate){var a=r,o=o.fullColumnFieldData,b=t.computeAggregateOpts,{mode:m,showTotal:v,totalMethod:f,countFields:x,contentMethod:h,mapChildrenField:_}=b,b=b.calcValuesMethod||b.countMethod||b.aggregateMethod,T=a.groupField,D=a.groupContent,_=_&&a[_]||[],I=a.childCount,o=o[T]||{},o={$table:t,groupField:T,groupColumn:o?o.column:null,column:n,groupValue:D,childList:_,childCount:I,aggValue:null,children:_,totalValue:I};if(s)return renderCellBaseVNs(e,l,t.callSlot(s,Object.assign({groupField:T,groupContent:D,childList:_,childCount:I},l),e));("column"===m?i===a.groupField:C)?(E=D,h&&(E=""+h(o)),v&&(E=getI18n("vxe.table.rowGroupContentTotal",[E,f?f(o):I,I]))):t.getPivotTableAggregateCellAggValue?E=t.getPivotTableAggregateCellAggValue(l):(!0===g||x&&x.includes(i))&&b&&(o.aggValue=I,E=""+b(o))}else{if(u)return renderCellBaseVNs(e,l,t.callSlot(u,l,e));if(d&&!p){s=renderer.get(d.name),T=s?s.renderTableDefault||s.renderDefault:null,_=s?s.renderTableCell||s.renderCell:null,m=c?_:T;if(m)return renderCellBaseVNs(e,l,(0,_vn.getSlotVNs)(m.call(t,e,d,Object.assign({$type:c?"edit":"cell"},l))))}E=t.getCellLabel(r,n)}a=c?c.placeholder:"";return renderCellBaseVNs(e,l,[e("span",{class:"vxe-cell--label"},[c&&(0,_utils.eqEmptyValue)(E)?e("span",{class:"vxe-cell--placeholder"},(0,_utils.formatText)((0,_utils.getFuncText)(a),1)):e("span",(0,_utils.formatText)(E,1))])])},renderDeepCell(e,l){return Cell.renderDeepNodeBtn(e,l,Cell.renderDefaultCell.call(this,e,l))},renderDefaultFooter(e,l){return getFooterContent(e,l)},renderRowGroupBtn(e,l,t){let r=l.$table;var n=r,o=r,{row:a,level:d}=l,n=n.rowGroupExpandedFlag,o=o.rowGroupExpandedMaps,{mode:i,padding:s,indent:c}=r.computeAggregateOpts,u=(0,_util.getRowid)(r,a),n=!!n&&!!o[u];return e("div",{class:["vxe-row-group--tree-node",{"is--expanded":n}],style:"column"!==i&&s&&c?{paddingLeft:d*c+"px"}:void 0},[a.isAggregate?e("span",{class:"vxe-row-group--node-btn",on:{click(e){r.triggerRowGroupExpandEvent(e,l)}}},[e("i",{class:n?getIcon().TABLE_ROW_GROUP_OPEN:getIcon().TABLE_ROW_GROUP_CLOSE})]):renderEmptyElement(r),e("div",{class:"vxe-row-group-cell"},t)])},renderTreeNodeBtn(e,l,t){let{$table:r,isHidden:n}=l;var o=r.treeExpandedFlag,{fullAllDataRowIdData:a,treeExpandedMaps:d,treeExpandLazyLoadedMaps:i}=r,s=r.computeTreeOpts,{row:c,column:u,level:C}=l,u=u.slots,{padding:g,indent:p,lazy:E,trigger:b,iconLoaded:m,showIcon:v,iconOpen:f,iconClose:x}=s,h=s.children||s.childrenField,s=s.hasChild||s.hasChildField,h=c[h],h=h&&h.length,u=u?u.icon:null;let _=!1,T=!1,D=!1,I=!1;var w={};return u?r.callSlot(u,l,e):(n||(u=(0,_util.getRowid)(r,c),T=!!o&&!!d[u],E&&(o=a[u],D=!!i[u],_=c[s],I=!!o.treeLoaded)),b&&"default"!==b||(w.click=e=>{r.triggerTreeExpandEvent(e,l)}),[e("div",{class:["vxe-cell--tree-node",{"is--active":T}],style:g&&p?{paddingLeft:C*p+"px"}:void 0},[v&&(!E||I?h:h||_)?[e("div",{class:"vxe-cell--tree-btn",on:w},[e("i",{class:D?m||getIcon().TABLE_TREE_LOADED:T?f||getIcon().TABLE_TREE_OPEN:x||getIcon().TABLE_TREE_CLOSE})])]:null,e("div",{class:"vxe-tree-cell"},t)])])},renderDeepNodeBtn(e,l,t){var{$table:r,row:n,column:o}=l,a=o.rowGroupNode,d=r.rowGroupList;if(d.length){d=r.computeAggregateOpts.mode;if("column"===d?o.field===n.groupField:a)return[Cell.renderRowGroupBtn(e,l,t)]}return[Cell.renderTreeNodeBtn(e,l,t)]},renderSeqHeader(e,l){var{$table:t,column:r}=l,n=r.slots;return renderHeaderCellBaseVNs(e,l,renderTitleContent(e,l,n&&n.header?t.callSlot(n.header,l,e):(0,_utils.formatText)(r.getTitle(),1)))},renderSeqCell(e,l){var{$table:t,column:r}=l,n=t.treeConfig,o=t.computeSeqOpts,r=r.slots;return r&&r.default?renderCellBaseVNs(e,l,t.callSlot(r.default,l,e)):(t=l.seq,r=o.seqMethod,renderCellBaseVNs(e,l,[e("span",""+(0,_utils.formatText)(r?r(l):n?t:(o.startIndex||0)+t,1))]))},renderDeepIndexCell(e,l){return Cell.renderDeepNodeBtn(e,l,Cell.renderSeqCell(e,l))},renderRadioHeader(e,l){var{$table:t,column:r}=l,n=r.slots,o=n?n.header:null,n=n?n.title:null;return renderHeaderCellBaseVNs(e,l,renderTitleContent(e,l,o?t.callSlot(o,l,e):[e("span",{class:"vxe-radio--label"},n?t.callSlot(n,l,e):(0,_utils.formatText)(r.getTitle(),1))]))},renderRadioCell(e,l){let{$table:t,column:r,isHidden:n}=l;var o=t.selectRadioRow,a=r.slots,{labelField:d,checkMethod:i,visibleMethod:s}=t.computeRadioOpts,c=l.row,u=a?a.default:null,a=a?a.radio:null,o=c===o;let C=!s||s({$table:t,row:c}),g=!!i,p;n||(p={click(e){!g&&C&&t.triggerRadioRowEvent(e,l)}},i&&(g=!i({$table:t,row:c})));s=Object.assign(Object.assign({},l),{checked:o,disabled:g,visible:C});return a?renderCellBaseVNs(e,l,t.callSlot(a,s,e)):(i=[],C&&i.push(e("span",{class:["vxe-radio--icon",o?getIcon().TABLE_RADIO_CHECKED:g?getIcon().TABLE_RADIO_DISABLED_UNCHECKED:getIcon().TABLE_RADIO_UNCHECKED]})),(u||d)&&i.push(e("span",{class:"vxe-radio--label"},u?t.callSlot(u,s,e):_xeUtils.default.get(c,d))),renderCellBaseVNs(e,l,[e("span",{class:["vxe-cell--radio",{"is--checked":o,"is--disabled":g}],on:p},i)]))},renderDeepRadioCell(e,l){return Cell.renderDeepNodeBtn(e,l,Cell.renderRadioCell(e,l))},renderCheckboxHeader(e,l){let{$table:t,column:r,isHidden:n}=l;let{isAllSelected:o,isIndeterminate:a}=t,d=t.computeIsAllCheckboxDisabled;var i=r.slots,s=i?i.header:null,i=i?i.title:null,{checkStrictly:c,showHeader:u,headerTitle:C}=t.computeCheckboxOpts,g=r.getTitle(),p={},E=(n||(p.click=e=>{d||t.triggerCheckAllEvent(e,!o)}),Object.assign(Object.assign({},l),{checked:o,disabled:d,indeterminate:a}));return renderHeaderCellBaseVNs(e,l,renderTitleContent(e,E,s?t.callSlot(s,E,e):(c?u:!1!==u)?[e("span",{class:["vxe-cell--checkbox",{"is--checked":o,"is--disabled":d,"is--indeterminate":a}],attrs:{title:_xeUtils.default.eqNull(C)?getI18n("vxe.table.allTitle"):""+(C||"")},on:p},[e("span",{class:["vxe-checkbox--icon",a?getIcon().TABLE_CHECKBOX_INDETERMINATE:o?getIcon().TABLE_CHECKBOX_CHECKED:d?getIcon().TABLE_CHECKBOX_DISABLED_UNCHECKED:getIcon().TABLE_CHECKBOX_UNCHECKED]})].concat(i||g?[e("span",{class:"vxe-checkbox--label"},i?t.callSlot(i,E,e):g)]:[]))]:[e("span",{class:"vxe-checkbox--label"},i?t.callSlot(i,E,e):g)]))},renderCheckboxCell(e,l){let{$table:t,row:r,column:n,isHidden:o}=l;var a=t.treeConfig,{updateCheckboxFlag:d,isRowGroupStatus:i}=t,{selectCheckboxMaps:s,treeIndeterminateRowMaps:c}=t,u=t.computeAggregateOpts.mapChildrenField;let{labelField:C,checkMethod:g,visibleMethod:p}=t.computeCheckboxOpts;var E=n.slots,b=E?E.default:null,E=E?E.checkbox:null;let m=!1,v=!1,f=!0,x=!1;var h,_={},s=(o||(h=(0,_util.getRowid)(t,r),v=!!d&&!!s[h],g&&i&&t.isAggregateRecord(r)?(d=r[u||""])&&d.length&&!d.every(e=>!g({$table:t,row:e}))||(x=!0):(f=!p||p({$table:t,row:r}),x=g?!g({$table:t,row:r}):!!g),(a||i)&&(m=!!c[h]),_.click=e=>{!x&&f&&t.triggerCheckRowEvent(e,l,!v)}),Object.assign(Object.assign({},l),{checked:v,disabled:x,visible:f,indeterminate:m}));return E?renderCellBaseVNs(e,l,t.callSlot(E,s,e)):(u=[],f&&u.push(e("span",{class:["vxe-checkbox--icon",m?getIcon().TABLE_CHECKBOX_INDETERMINATE:v?getIcon().TABLE_CHECKBOX_CHECKED:x?getIcon().TABLE_CHECKBOX_DISABLED_UNCHECKED:getIcon().TABLE_CHECKBOX_UNCHECKED]})),(b||C)&&u.push(e("span",{class:"vxe-checkbox--label"},b?t.callSlot(b,s,e):_xeUtils.default.get(r,C))),renderCellBaseVNs(e,l,[e("span",{class:["vxe-cell--checkbox",{"is--checked":v,"is--disabled":x,"is--indeterminate":m,"is--hidden":!f}],on:_},u)]))},renderDeepSelectionCell(e,l){return Cell.renderDeepNodeBtn(e,l,Cell.renderCheckboxCell(e,l))},renderCheckboxCellByProp(e,l){let{$table:t,row:r,column:n,isHidden:o}=l;var a=t.treeConfig,{updateCheckboxFlag:d,isRowGroupStatus:i}=t,s=t.treeIndeterminateRowMaps,c=t.computeAggregateOpts.mapChildrenField,u=t.computeCheckboxOpts;let{labelField:C,checkField:g,checkMethod:p,visibleMethod:E}=u;var u=u.indeterminateField||u.halfField,b=n.slots,m=b?b.default:null,b=b?b.checkbox:null;let v=!1,f=!1,x=!0,h=!1;var _,T={},c=(o||(_=(0,_util.getRowid)(t,r),f=!!d&&_xeUtils.default.get(r,g),p&&i&&t.isAggregateRecord(r)?(d=r[c||""])&&d.length&&!d.every(e=>!p({$table:t,row:e}))||(h=!0):(x=!E||E({$table:t,row:r}),h=p?!p({$table:t,row:r}):!!p),(a||i)&&(v=!!s[_]),T.click=e=>{!h&&x&&t.triggerCheckRowEvent(e,l,!f)}),Object.assign(Object.assign({},l),{checked:f,disabled:h,visible:x,indeterminate:v}));return b?renderCellBaseVNs(e,l,t.callSlot(b,c,e)):(d=[],x&&d.push(e("span",{class:["vxe-checkbox--icon",v?getIcon().TABLE_CHECKBOX_INDETERMINATE:f?getIcon().TABLE_CHECKBOX_CHECKED:h?getIcon().TABLE_CHECKBOX_DISABLED_UNCHECKED:getIcon().TABLE_CHECKBOX_UNCHECKED]})),(m||C)&&d.push(e("span",{class:"vxe-checkbox--label"},m?t.callSlot(m,c,e):_xeUtils.default.get(r,C))),renderCellBaseVNs(e,l,[e("span",{class:["vxe-cell--checkbox",{"is--checked":f,"is--disabled":h,"is--indeterminate":u&&!f?r[u]:v,"is--hidden":!x}],on:T},d)]))},renderDeepSelectionCellByProp(e,l){return Cell.renderDeepNodeBtn(e,l,Cell.renderCheckboxCellByProp(e,l))},renderExpandCell(e,l){let{$table:t,isHidden:r,row:n,column:o}=l;var a=t.isRowGroupStatus,{rowExpandedMaps:d,rowExpandLazyLoadedMaps:i}=t,{lazy:s,labelField:c,iconLoaded:u,showIcon:C,iconOpen:g,iconClose:p,visibleMethod:E}=t.computeExpandOpts,b=o.slots,m=b?b.default:null,b=b?b.icon:null;let v=!1,f=!1;return a&&n.isAggregate?renderCellBaseVNs(e,l,[]):b?renderCellBaseVNs(e,l,t.callSlot(b,l,e)):(r||(a=(0,_util.getRowid)(t,n),v=!!d[a],s&&(f=!!i[a])),renderCellBaseVNs(e,l,[!C||E&&!E(l)?renderEmptyElement(t):e("span",{class:["vxe-table--expanded",{"is--active":v}],on:{mousedown(e){e.stopPropagation()},click(e){t.triggerRowExpandEvent(e,l)}}},[e("i",{class:["vxe-table--expand-btn",f?u||getIcon().TABLE_EXPAND_LOADED:v?g||getIcon().TABLE_EXPAND_OPEN:p||getIcon().TABLE_EXPAND_CLOSE]})]),m||c?e("span",{class:"vxe-table--expand-label"},m?t.callSlot(m,l,e):_xeUtils.default.get(n,c)):renderEmptyElement(t)]))},renderExpandData(e,l){var{$table:t,column:r}=l,{slots:r,contentRender:n}=r;if(r&&r.content)return t.callSlot(r.content,l,e);if(n){r=renderer.get(n.name),r=r?r.renderTableExpand||r.renderExpand:null;if(r)return(0,_vn.getSlotVNs)(r.call(t,e,n,l))}return[]},renderHTMLCell(e,l){var{$table:t,column:r}=l,r=r.slots;return r&&r.default?renderCellBaseVNs(e,l,t.callSlot(r.default,l,e)):renderCellBaseVNs(e,l,[e("span",{class:"vxe-cell--html",domProps:{innerHTML:getDefaultCellLabel(l)}})])},renderDeepHTMLCell(e,l){return Cell.renderDeepNodeBtn(e,l,Cell.renderHTMLCell(e,l))},renderSortAndFilterHeader(e,l){return renderHeaderCellBaseVNs(e,l,Cell.renderHeaderTitle(e,l).concat(Cell.renderSortIcon(e,l).concat(Cell.renderFilterIcon(e,l))))},renderSortHeader(e,l){return renderHeaderCellBaseVNs(e,l,Cell.renderHeaderTitle(e,l).concat(Cell.renderSortIcon(e,l)))},renderSortIcon(e,l){let{$table:t,column:r}=l;var{showIcon:n,allowBtn:o,ascTitle:a,descTitle:d,iconLayout:i,iconAsc:s,iconDesc:c,iconVisibleMethod:u}=t.computeSortOpts;return!n||u&&!u(l)?[]:[e("span",{class:["vxe-cell--sort",`vxe-cell--sort-${i}-layout`]},[e("i",{class:["vxe-sort--asc-btn",s||getIcon().TABLE_SORT_ASC,{"sort--active":"asc"===r.order}],attrs:{title:_xeUtils.default.eqNull(a)?getI18n("vxe.table.sortAsc"):""+(a||"")},on:o?{click(e){e.stopPropagation(),t.triggerSortEvent(e,r,"asc")}}:void 0}),e("i",{class:["vxe-sort--desc-btn",c||getIcon().TABLE_SORT_DESC,{"sort--active":"desc"===r.order}],attrs:{title:_xeUtils.default.eqNull(d)?getI18n("vxe.table.sortDesc"):""+(d||"")},on:o?{click(e){e.stopPropagation(),t.triggerSortEvent(e,r,"desc")}}:void 0})])]},renderFilterHeader(e,l){return renderHeaderCellBaseVNs(e,l,Cell.renderHeaderTitle(e,l).concat(Cell.renderFilterIcon(e,l)))},renderFilterIcon(e,l){let{$table:t,column:r,hasFilter:n}=l;var o=t.filterStore,{showIcon:a,iconNone:d,iconMatch:i,iconVisibleMethod:s}=t.computeFilterOpts;return!a||s&&!s(l)?[]:[e("span",{class:["vxe-cell--filter",{"is--active":o.visible&&o.column===r}],on:{click(e){t.triggerFilterEvent&&t.triggerFilterEvent(e,l.column,l)}}},[e("i",{class:["vxe-filter--btn",n?i||getIcon().TABLE_FILTER_MATCH:d||getIcon().TABLE_FILTER_NONE],attrs:{title:getI18n("vxe.table.filter")}})])]},renderEditHeader(e,l){var{$table:t,column:r}=l,{editConfig:n,editRules:o}=t,a=t.computeEditOpts,{sortable:d,filters:i,editRender:s}=r;let c=!1,u=(o&&(o=_xeUtils.default.get(o,r.field))&&(c=o.some(e=>e.required)),[]);return(0,_utils.isEnableConf)(n)&&({showAsterisk:r,showIcon:o,icon:n}=a,u=[c&&r?e("i",{class:"vxe-cell--required-icon"},[e("i",{class:"vxe-cell--required-icon"})]):renderEmptyElement(t),(0,_utils.isEnableConf)(s)&&o?e("i",{class:"vxe-cell--edit-icon"},_xeUtils.default.isFunction(n)?(0,_vn.getSlotVNs)(n({})):[e("i",{class:n||getIcon().TABLE_EDIT})]):renderEmptyElement(t)]),renderHeaderCellBaseVNs(e,l,u.concat(Cell.renderHeaderTitle(e,l)).concat(d?Cell.renderSortIcon(e,l):[]).concat(i?Cell.renderFilterIcon(e,l):[]))},renderRowEdit(e,l){var{$table:t,column:r}=l,t=t.editStore,t=t.actived,r=r.editRender;return Cell.runRenderer(e,l,this,(0,_utils.isEnableConf)(r)&&t&&t.row===l.row)},renderDeepRowEdit(e,l){return Cell.renderDeepNodeBtn(e,l,Cell.renderRowEdit(e,l))},renderCellEdit(e,l){var{$table:t,column:r}=l,t=t.editStore,t=t.actived,r=r.editRender;return Cell.runRenderer(e,l,this,(0,_utils.isEnableConf)(r)&&t&&t.row===l.row&&t.column===l.column)},renderDeepCellEdit(e,l){return Cell.renderDeepNodeBtn(e,l,Cell.renderCellEdit(e,l))},runRenderer(e,l,t,r){var{$table:n,row:o,column:a}=l,d=n.isRowGroupStatus,{slots:a,field:i,editRender:s,formatter:c}=a,u=renderer.get(s.name),u=u?u.renderTableEdit||u.renderEdit:null,C=a?a.default:null,g=a?a.groupContent||a["group-content"]:null,p=Object.assign({$type:"",isEdit:r},l);if(r)return a&&a.edit?n.callSlot(a.edit,p,e):u?(0,_vn.getSlotVNs)(u.call(n,e,s,p)):[];if(d&&i&&o.isAggregate){r=n.computeAggregateOpts.mapChildrenField,a=o.groupField,u=r&&o[r]||[];if(g)return renderCellBaseVNs(e,l,n.callSlot(g,Object.assign({groupField:a,groupContent:o.groupContent,childList:u,childCount:o.childCount},l),e))}else if(C)return renderCellBaseVNs(e,l,n.callSlot(C,p,e));return c?renderCellBaseVNs(e,l,[e("span",{class:"vxe-cell--label"},[getDefaultCellLabel(p)])]):Cell.renderDefaultCell.call(t,e,p)}};var _default=exports.default=Cell;
|
|
1
|
+
Object.defineProperty(exports,"__esModule",{value:!0}),exports.default=exports.Cell=void 0;var _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(e,l){let{$table:t,column:r}=l,n=r.titlePrefix||r.titleHelp;return n?e("i",{class:["vxe-cell-title-prefix-icon",n.iconStatus?"theme--"+n.iconStatus:""],on:{mouseenter(e){t.triggerHeaderTitleEvent(e,n,l)},mouseleave(e){t.handleTargetLeaveEvent(e)}}},[e("i",{class:n.icon||getIcon().TABLE_TITLE_PREFIX})]):renderEmptyElement(t)}function renderTitleSuffixIcon(e,l){let{$table:t,column:r}=l,n=r.titleSuffix;return n?e("i",{class:["vxe-cell-title-suffix-icon",n.iconStatus?"theme--"+n.iconStatus:""],on:{mouseenter(e){t.triggerHeaderTitleEvent(e,n,l)},mouseleave(e){t.handleTargetLeaveEvent(e)}}},[e("i",{class:n.icon||getIcon().TABLE_TITLE_SUFFIX})]):renderEmptyElement(t)}function renderCellDragIcon(e,l){let t=l.$table;var r=t.$scopedSlots,n=t.dragConfig,{icon:o,trigger:a,disabledMethod:d}=t.computeRowDragOpts,d=d||(n?n.rowDisabledMethod:null);let i=d&&d(l);d=r.rowDragIcon||r["row-drag-icon"],r={};return"cell"!==a&&(r.mousedown=e=>{i||t.handleCellDragMousedownEvent(e,l)},r.mouseup=t.handleCellDragMouseupEvent),e("span",{key:"dg",class:["vxe-cell--drag-handle",{"is--disabled":i}],on:r},d?t.callSlot(d,l,e):[e("i",{class:o||(n?n.rowIcon:"")||getIcon().TABLE_DRAG_ROW})])}function renderCellBaseVNs(e,l,t){var{$table:r,column:n,level:o}=l,n=n.dragSort,{treeConfig:a,dragConfig:d}=r,i=r.computeRowOpts,s=r.computeTreeOpts,{showIcon:r,isPeerDrag:c,isCrossDrag:u,visibleMethod:C}=r.computeRowDragOpts,C=C||(d?d.rowVisibleMethod:null),g=[];return n&&i.drag&&(r||d&&d.showRowIcon)&&(!C||C(l))&&(!a||s.transform&&(c||u||!o))&&g.unshift(renderCellDragIcon(e,l)),g.concat(_xeUtils.default.isArray(t)?t:[t])}function renderHeaderCellDragIcon(e,t){let{$table:r,column:l}=t;var n=r.$scopedSlots,o=l.slots,a=r.computeColumnOpts,{showIcon:d,icon:i,trigger:s,isPeerDrag:c,isCrossDrag:u,visibleMethod:C,disabledMethod:g}=r.computeColumnDragOpts;if(!a.drag||!d||C&&!C(t)||l.fixed||!c&&!u&&l.parentId)return renderEmptyElement(r);{let l=g&&g(t);a=(o?o.columnDragIcon||o["column-drag-icon"]:null)||n.columnDragIcon||n["column-drag-icon"],d={};return"cell"!==s&&(d.mousedown=e=>{l||r.handleHeaderCellDragMousedownEvent(e,t)},d.mouseup=r.handleHeaderCellDragMouseupEvent),e("span",{key:"dg",class:["vxe-cell--drag-handle",{"is--disabled":l}],on:d},a?r.callSlot(a,t,e):[e("i",{class:i||getIcon().TABLE_DRAG_COLUMN})])}}function renderHeaderCellBaseVNs(e,l,t){return[renderTitlePrefixIcon(e,l),renderHeaderCellDragIcon(e,l),..._xeUtils.default.isArray(t)?t:[t],renderTitleSuffixIcon(e,l)]}function getRenderDefaultColumnTitle(e,l,t){return"html"===l.type&&_xeUtils.default.isString(t)?e("span",{key:"ch",domProps:{innerHTML:t}}):e("span",{key:"ct"},(0,_vn.getSlotVNs)(t))}function renderTitleContent(e,l,t){let{$table:r,column:n}=l;var o=r;let a=r;var o=o.showHeaderOverflow,d=a.isRowGroupStatus,{showHeaderOverflow:i,slots:s}=n,s=s?s.title:null;let c=r.computeHeaderTooltipOpts.showAll;o=_xeUtils.default.eqNull(i)?o:i;let u="title"===o,C=!0===o||"tooltip"===o;i={},(u||C||c)&&(i.mouseenter=e=>{a.isDragResize||(u?(0,_dom.updateCellTitle)(e.currentTarget,n):(C||c)&&r.triggerHeaderTooltipEvent(e,l))}),(C||c)&&(i.mouseleave=e=>{a.isDragResize||(C||c)&&r.handleTargetLeaveEvent(e)}),o=getRenderDefaultColumnTitle(e,n,t);return[e("span",{class:"vxe-cell--title",on:i},d&&n.aggFunc&&r.getPivotTableAggregateRenderColTitles?r.getPivotTableAggregateRenderColTitles(e,n,o):s?r.callSlot(s,l,e):[o])]}function getFooterContent(e,l){var{$table:t,column:r,_columnIndex:n,row:o,items:a}=l,{slots:d,editRender:i,cellRender:s,footerFormatter:c}=r,i=i||s;if(d&&d.footer)return t.callSlot(d.footer,l,e);let u="";u=_xeUtils.default.isArray(a)?a[n]:_xeUtils.default.get(o,r.field);s=Object.assign(l,{itemValue:u});if(c)return _xeUtils.default.isFunction(c)?""+c(s):(n=(a=(d=_xeUtils.default.isArray(c))?formats.get(c[0]):formats.get(c))?a.tableFooterCellFormatMethod:null)?""+(d?n(s,...c.slice(1)):n(s)):"";if(i){o=renderer.get(i.name),r=o?o.renderTableFooter||o.renderFooter:null;if(r)return(0,_vn.getSlotVNs)(r.call(t,e,i,s))}return[(0,_utils.formatText)(u,1)]}function getDefaultCellLabel(e){var{$table:e,row:l,column:t}=e;return(0,_utils.formatText)(e.getCellLabel(l,t),1)}function renderCellHandle(e,l){var{column:t,row:r,$table:n}=l,o=n.editConfig,a=n.isRowGroupStatus,{type:d,treeNode:i,rowGroupNode:s,editRender:c}=t,u=n.computeAggregateOpts.mode,C=n.computeCheckboxOpts,n=n.computeEditOpts,g=i||a&&("column"===u?t.field===r.groupField:s);switch(d){case"seq":return g?Cell.renderDeepIndexCell(e,l):Cell.renderSeqCell(e,l);case"radio":return g?Cell.renderDeepRadioCell(e,l):Cell.renderRadioCell(e,l);case"checkbox":return C.checkField?g?Cell.renderDeepSelectionCellByProp(e,l):Cell.renderCheckboxCellByProp(e,l):g?Cell.renderDeepSelectionCell(e,l):Cell.renderCheckboxCell(e,l);case"expand":return Cell.renderExpandCell(e,l);case"html":return g?Cell.renderDeepHTMLCell(e,l):Cell.renderHTMLCell(e,l)}return o&&(0,_utils.isEnableConf)(n)&&c?"cell"===n.mode?g?Cell.renderDeepCellEdit(e,l):Cell.renderCellEdit(e,l):g?Cell.renderDeepRowEdit(e,l):Cell.renderRowEdit(e,l):g?Cell.renderDeepCell(e,l):Cell.renderDefaultCell(e,l)}function renderHeaderHandle(e,l){var{column:t,$table:r}=l,n=r.editConfig,r=r.computeEditOpts,{type:t,filters:o,sortable:a,editRender:d}=t;switch(t){case"seq":return Cell.renderSeqHeader(e,l);case"radio":return Cell.renderRadioHeader(e,l);case"checkbox":return Cell.renderCheckboxHeader(e,l);case"html":if(o&&a)return Cell.renderSortAndFilterHeader(e,l);if(a)return Cell.renderSortHeader(e,l);if(o)return Cell.renderFilterHeader(e,l)}return n&&(0,_utils.isEnableConf)(r)&&d?Cell.renderEditHeader(e,l):o&&a?Cell.renderSortAndFilterHeader(e,l):a?Cell.renderSortHeader(e,l):o?Cell.renderFilterHeader(e,l):Cell.renderDefaultHeader(e,l)}function renderFooterHandle(e,l){return Cell.renderDefaultFooter(e,l)}let Cell=exports.Cell={createColumn(e,l){var t=l.type,r={renderHeader:renderHeaderHandle,renderCell:renderCellHandle,renderFooter:renderFooterHandle};return"expand"===t&&(r.renderData=Cell.renderExpandData),(0,_util.createColumn)(e,l,r)},renderHeaderTitle(e,l){var{$table:t,column:r}=l,{slots:n,editRender:o,cellRender:a}=r,o=o||a;if(n&&n.header)return renderTitleContent(e,l,t.callSlot(n.header,l,e));if(o){a=renderer.get(o.name),n=a?a.renderTableHeader||a.renderHeader:null;if(n)return(0,_vn.getSlotVNs)(renderTitleContent(e,l,n.call(t,e,o,l)))}return renderTitleContent(e,l,(0,_utils.formatText)(r.getTitle(),1))},renderDefaultHeader(e,l){return renderHeaderCellBaseVNs(e,l,Cell.renderHeaderTitle(e,l))},renderDefaultCell(e,l){var{$table:t,row:r,column:n}=l,o=t,a=t.isRowGroupStatus,d=t.editConfig,{field:i,slots:s,editRender:c,cellRender:u,rowGroupNode:C,aggFunc:g,formatter:p}=n,d=d&&(0,_utils.isEnableConf)(c)?c:(0,_utils.isEnableConf)(u)?u:null,u=s?s.default:null,s=s?s.groupContent||s["group-content"]:null;let E="";if(a&&i&&r.isAggregate){var a=r,o=o.fullColumnFieldData,b=t.computeAggregateOpts,{mode:m,showTotal:v,totalMethod:f,countFields:x,contentMethod:h,mapChildrenField:_}=b,b=b.calcValuesMethod||b.countMethod||b.aggregateMethod,T=a.groupField,D=a.groupContent,_=_&&a[_]||[],I=a.childCount,o=o[T]||{},o={$table:t,groupField:T,groupColumn:o?o.column:null,column:n,groupValue:D,childList:_,childCount:I,aggValue:null,children:_,totalValue:I};if(s)return renderCellBaseVNs(e,l,t.callSlot(s,Object.assign({groupField:T,groupContent:D,childList:_,childCount:I},l),e));("column"===m?i===a.groupField:C)?(E=D,h&&(E=""+h(o)),v&&(E=getI18n("vxe.table.rowGroupContentTotal",[E,f?f(o):I,I]))):t.getPivotTableAggregateCellAggValue?E=t.getPivotTableAggregateCellAggValue(l):(!0===g||x&&x.includes(i))&&b&&(o.aggValue=I,E=""+b(o))}else{if(u)return renderCellBaseVNs(e,l,t.callSlot(u,l,e));if(d&&!p){s=renderer.get(d.name),T=s?s.renderTableDefault||s.renderDefault:null,_=s?s.renderTableCell||s.renderCell:null,m=c?_:T;if(m)return renderCellBaseVNs(e,l,(0,_vn.getSlotVNs)(m.call(t,e,d,Object.assign({$type:c?"edit":"cell"},l))))}E=t.getCellLabel(r,n)}a=c?c.placeholder:"";return renderCellBaseVNs(e,l,[e("span",{class:"vxe-cell--label"},[c&&(0,_utils.eqEmptyValue)(E)?e("span",{class:"vxe-cell--placeholder"},(0,_utils.formatText)((0,_utils.getFuncText)(a),1)):e("span",(0,_utils.formatText)(E,1))])])},renderDeepCell(e,l){return Cell.renderDeepNodeBtn(e,l,Cell.renderDefaultCell.call(this,e,l))},renderDefaultFooter(e,l){return getFooterContent(e,l)},renderRowGroupBtn(e,l,t){let r=l.$table;var n=r,o=r,{row:a,level:d}=l,n=n.rowGroupExpandedFlag,o=o.rowGroupExpandedMaps,{mode:i,padding:s,indent:c}=r.computeAggregateOpts,u=(0,_util.getRowid)(r,a),n=!!n&&!!o[u];return e("div",{class:["vxe-row-group--tree-node",{"is--expanded":n}],style:"column"!==i&&s&&c?{paddingLeft:d*c+"px"}:void 0},[a.isAggregate?e("span",{class:"vxe-row-group--node-btn",on:{click(e){r.triggerRowGroupExpandEvent(e,l)}}},[e("i",{class:n?getIcon().TABLE_ROW_GROUP_OPEN:getIcon().TABLE_ROW_GROUP_CLOSE})]):renderEmptyElement(r),e("div",{class:"vxe-row-group-cell"},t)])},renderTreeNodeBtn(e,l,t){let{$table:r,isHidden:n}=l;var o=r.treeExpandedFlag,{fullAllDataRowIdData:a,treeExpandedMaps:d,treeExpandLazyLoadedMaps:i}=r,s=r.computeTreeOpts,{row:c,column:u,level:C}=l,u=u.slots,{padding:g,indent:p,lazy:E,trigger:b,iconLoaded:m,showIcon:v,iconOpen:f,iconClose:x}=s,h=s.children||s.childrenField,s=s.hasChild||s.hasChildField,h=c[h],h=h&&h.length,u=u?u.icon:null;let _=!1,T=!1,D=!1,I=!1;var w={};return u?r.callSlot(u,l,e):(n||(u=(0,_util.getRowid)(r,c),T=!!o&&!!d[u],E&&(o=a[u],D=!!i[u],_=c[s],I=!!o.treeLoaded)),b&&"default"!==b||(w.click=e=>{r.triggerTreeExpandEvent(e,l)}),[e("div",{class:["vxe-cell--tree-node",{"is--active":T}],style:g&&p?{paddingLeft:C*p+"px"}:void 0},[v&&(!E||I?h:h||_)?[e("div",{class:"vxe-cell--tree-btn",on:w},[e("i",{class:D?m||getIcon().TABLE_TREE_LOADED:T?f||getIcon().TABLE_TREE_OPEN:x||getIcon().TABLE_TREE_CLOSE})])]:null,e("div",{class:"vxe-tree-cell"},t)])])},renderDeepNodeBtn(e,l,t){var{$table:r,row:n,column:o}=l,a=o.rowGroupNode,d=r.rowGroupList;if(d.length){d=r.computeAggregateOpts.mode;if("column"===d?o.field===n.groupField:a)return[Cell.renderRowGroupBtn(e,l,t)]}return[Cell.renderTreeNodeBtn(e,l,t)]},renderSeqHeader(e,l){var{$table:t,column:r}=l,n=r.slots;return renderHeaderCellBaseVNs(e,l,renderTitleContent(e,l,n&&n.header?t.callSlot(n.header,l,e):(0,_utils.formatText)(r.getTitle(),1)))},renderSeqCell(e,l){var{$table:t,column:r}=l,n=t.treeConfig,o=t.computeSeqOpts,r=r.slots;return r&&r.default?renderCellBaseVNs(e,l,t.callSlot(r.default,l,e)):(t=l.seq,r=o.seqMethod,renderCellBaseVNs(e,l,[e("span",""+(0,_utils.formatText)(r?r(l):n?t:(o.startIndex||0)+t,1))]))},renderDeepIndexCell(e,l){return Cell.renderDeepNodeBtn(e,l,Cell.renderSeqCell(e,l))},renderRadioHeader(e,l){var{$table:t,column:r}=l,n=r.slots,o=n?n.header:null,n=n?n.title:null;return renderHeaderCellBaseVNs(e,l,renderTitleContent(e,l,o?t.callSlot(o,l,e):[e("span",{class:"vxe-radio--label"},n?t.callSlot(n,l,e):(0,_utils.formatText)(r.getTitle(),1))]))},renderRadioCell(e,l){let{$table:t,column:r,isHidden:n}=l;var o=t.selectRadioRow,a=r.slots,{labelField:d,checkMethod:i,visibleMethod:s}=t.computeRadioOpts,c=l.row,u=a?a.default:null,a=a?a.radio:null,o=c===o;let C=!s||s({$table:t,row:c}),g=!!i,p;n||(p={click(e){!g&&C&&t.triggerRadioRowEvent(e,l)}},i&&(g=!i({$table:t,row:c})));s=Object.assign(Object.assign({},l),{checked:o,disabled:g,visible:C});return a?renderCellBaseVNs(e,l,t.callSlot(a,s,e)):(i=[],C&&i.push(e("span",{class:["vxe-radio--icon",o?getIcon().TABLE_RADIO_CHECKED:g?getIcon().TABLE_RADIO_DISABLED_UNCHECKED:getIcon().TABLE_RADIO_UNCHECKED]})),(u||d)&&i.push(e("span",{class:"vxe-radio--label"},u?t.callSlot(u,s,e):_xeUtils.default.get(c,d))),renderCellBaseVNs(e,l,[e("span",{class:["vxe-cell--radio",{"is--checked":o,"is--disabled":g}],on:p},i)]))},renderDeepRadioCell(e,l){return Cell.renderDeepNodeBtn(e,l,Cell.renderRadioCell(e,l))},renderCheckboxHeader(e,l){let{$table:t,column:r,isHidden:n}=l;let{isAllSelected:o,isIndeterminate:a}=t,d=t.computeIsAllCheckboxDisabled;var i=r.slots,s=i?i.header:null,i=i?i.title:null,{checkStrictly:c,showHeader:u,headerTitle:C}=t.computeCheckboxOpts,g=r.getTitle(),p={},E=(n||(p.click=e=>{d||t.triggerCheckAllEvent(e,!o)}),Object.assign(Object.assign({},l),{checked:o,disabled:d,indeterminate:a}));return renderHeaderCellBaseVNs(e,l,renderTitleContent(e,E,s?t.callSlot(s,E,e):(c?u:!1!==u)?[e("span",{class:["vxe-cell--checkbox",{"is--checked":o,"is--disabled":d,"is--indeterminate":a}],attrs:{title:_xeUtils.default.eqNull(C)?getI18n("vxe.table.allTitle"):""+(C||"")},on:p},[e("span",{class:["vxe-checkbox--icon",a?getIcon().TABLE_CHECKBOX_INDETERMINATE:o?getIcon().TABLE_CHECKBOX_CHECKED:d?getIcon().TABLE_CHECKBOX_DISABLED_UNCHECKED:getIcon().TABLE_CHECKBOX_UNCHECKED]})].concat(i||g?[e("span",{class:"vxe-checkbox--label"},i?t.callSlot(i,E,e):g)]:[]))]:[e("span",{class:"vxe-checkbox--label"},i?t.callSlot(i,E,e):g)]))},renderCheckboxCell(e,l){let{$table:t,row:r,column:n,isHidden:o}=l;var a=t.treeConfig,{updateCheckboxFlag:d,isRowGroupStatus:i}=t,{selectCheckboxMaps:s,treeIndeterminateRowMaps:c}=t,u=t.computeAggregateOpts.mapChildrenField;let{labelField:C,checkMethod:g,visibleMethod:p}=t.computeCheckboxOpts;var E=n.slots,b=E?E.default:null,E=E?E.checkbox:null;let m=!1,v=!1,f=!0,x=!1;var h,_={},s=(o||(h=(0,_util.getRowid)(t,r),v=!!d&&!!s[h],g&&i&&t.isAggregateRecord(r)?(d=r[u||""])&&d.length&&!d.every(e=>!g({$table:t,row:e}))||(x=!0):(f=!p||p({$table:t,row:r}),x=g?!g({$table:t,row:r}):!!g),(a||i)&&(m=!!c[h]),_.click=e=>{!x&&f&&t.triggerCheckRowEvent(e,l,!v)}),Object.assign(Object.assign({},l),{checked:v,disabled:x,visible:f,indeterminate:m}));return E?renderCellBaseVNs(e,l,t.callSlot(E,s,e)):(u=[],f&&u.push(e("span",{class:["vxe-checkbox--icon",m?getIcon().TABLE_CHECKBOX_INDETERMINATE:v?getIcon().TABLE_CHECKBOX_CHECKED:x?getIcon().TABLE_CHECKBOX_DISABLED_UNCHECKED:getIcon().TABLE_CHECKBOX_UNCHECKED]})),(b||C)&&u.push(e("span",{class:"vxe-checkbox--label"},b?t.callSlot(b,s,e):_xeUtils.default.get(r,C))),renderCellBaseVNs(e,l,[e("span",{class:["vxe-cell--checkbox",{"is--checked":v,"is--disabled":x,"is--indeterminate":m,"is--hidden":!f}],on:_},u)]))},renderDeepSelectionCell(e,l){return Cell.renderDeepNodeBtn(e,l,Cell.renderCheckboxCell(e,l))},renderCheckboxCellByProp(e,l){let{$table:t,row:r,column:n,isHidden:o}=l;var a=t.treeConfig,{updateCheckboxFlag:d,isRowGroupStatus:i}=t,s=t.treeIndeterminateRowMaps,c=t.computeAggregateOpts.mapChildrenField,u=t.computeCheckboxOpts;let{labelField:C,checkField:g,checkMethod:p,visibleMethod:E}=u;var u=u.indeterminateField||u.halfField,b=n.slots,m=b?b.default:null,b=b?b.checkbox:null;let v=!1,f=!1,x=!0,h=!1;var _,T={},c=(o||(_=(0,_util.getRowid)(t,r),f=!!d&&_xeUtils.default.get(r,g),p&&i&&t.isAggregateRecord(r)?(d=r[c||""])&&d.length&&!d.every(e=>!p({$table:t,row:e}))||(h=!0):(x=!E||E({$table:t,row:r}),h=p?!p({$table:t,row:r}):!!p),(a||i)&&(v=!!s[_]),T.click=e=>{!h&&x&&t.triggerCheckRowEvent(e,l,!f)}),Object.assign(Object.assign({},l),{checked:f,disabled:h,visible:x,indeterminate:v}));return b?renderCellBaseVNs(e,l,t.callSlot(b,c,e)):(d=[],x&&d.push(e("span",{class:["vxe-checkbox--icon",v?getIcon().TABLE_CHECKBOX_INDETERMINATE:f?getIcon().TABLE_CHECKBOX_CHECKED:h?getIcon().TABLE_CHECKBOX_DISABLED_UNCHECKED:getIcon().TABLE_CHECKBOX_UNCHECKED]})),(m||C)&&d.push(e("span",{class:"vxe-checkbox--label"},m?t.callSlot(m,c,e):_xeUtils.default.get(r,C))),renderCellBaseVNs(e,l,[e("span",{class:["vxe-cell--checkbox",{"is--checked":f,"is--disabled":h,"is--indeterminate":u&&!f?r[u]:v,"is--hidden":!x}],on:T},d)]))},renderDeepSelectionCellByProp(e,l){return Cell.renderDeepNodeBtn(e,l,Cell.renderCheckboxCellByProp(e,l))},renderExpandCell(e,l){let{$table:t,isHidden:r,row:n,column:o}=l;var a=t.isRowGroupStatus,{rowExpandedMaps:d,rowExpandLazyLoadedMaps:i}=t,{lazy:s,labelField:c,iconLoaded:u,showIcon:C,iconOpen:g,iconClose:p,visibleMethod:E}=t.computeExpandOpts,b=o.slots,m=b?b.default:null,b=b?b.icon:null;let v=!1,f=!1;return a&&n.isAggregate?renderCellBaseVNs(e,l,[]):b?renderCellBaseVNs(e,l,t.callSlot(b,l,e)):(r||(a=(0,_util.getRowid)(t,n),v=!!d[a],s&&(f=!!i[a])),renderCellBaseVNs(e,l,[!C||E&&!E(l)?renderEmptyElement(t):e("span",{class:["vxe-table--expanded",{"is--active":v}],on:{mousedown(e){e.stopPropagation()},click(e){t.triggerRowExpandEvent(e,l)}}},[e("i",{class:["vxe-table--expand-btn",f?u||getIcon().TABLE_EXPAND_LOADED:v?g||getIcon().TABLE_EXPAND_OPEN:p||getIcon().TABLE_EXPAND_CLOSE]})]),m||c?e("span",{class:"vxe-table--expand-label"},m?t.callSlot(m,l,e):_xeUtils.default.get(n,c)):renderEmptyElement(t)]))},renderExpandData(e,l){var{$table:t,column:r}=l,{slots:r,contentRender:n}=r;if(r&&r.content)return t.callSlot(r.content,l,e);if(n){r=renderer.get(n.name),r=r?r.renderTableExpand||r.renderExpand:null;if(r)return(0,_vn.getSlotVNs)(r.call(t,e,n,l))}return[]},renderHTMLCell(e,l){var{$table:t,column:r}=l,r=r.slots;return r&&r.default?renderCellBaseVNs(e,l,t.callSlot(r.default,l,e)):renderCellBaseVNs(e,l,[e("span",{class:"vxe-cell--html",domProps:{innerHTML:getDefaultCellLabel(l)}})])},renderDeepHTMLCell(e,l){return Cell.renderDeepNodeBtn(e,l,Cell.renderHTMLCell(e,l))},renderSortAndFilterHeader(e,l){return renderHeaderCellBaseVNs(e,l,Cell.renderHeaderTitle(e,l).concat(Cell.renderSortIcon(e,l).concat(Cell.renderFilterIcon(e,l))))},renderSortHeader(e,l){return renderHeaderCellBaseVNs(e,l,Cell.renderHeaderTitle(e,l).concat(Cell.renderSortIcon(e,l)))},renderSortIcon(e,l){let{$table:t,column:r}=l;var{showIcon:n,allowBtn:o,ascTitle:a,descTitle:d,iconLayout:i,iconAsc:s,iconDesc:c,iconVisibleMethod:u}=t.computeSortOpts,{order:C,slots:g}=r;return!n||u&&!u(l)?[]:(n=g?g.sort:null)?(0,_vn.getSlotVNs)(t.callSlot(n,l,e)):[e("span",{class:["vxe-cell--sort",`vxe-cell--sort-${i}-layout`]},[e("i",{class:["vxe-sort--asc-btn",s||getIcon().TABLE_SORT_ASC,{"sort--active":"asc"===C}],attrs:{title:_xeUtils.default.eqNull(a)?getI18n("vxe.table.sortAsc"):""+(a||"")},on:o?{click(e){e.stopPropagation(),t.triggerSortEvent(e,r,"asc")}}:void 0}),e("i",{class:["vxe-sort--desc-btn",c||getIcon().TABLE_SORT_DESC,{"sort--active":"desc"===C}],attrs:{title:_xeUtils.default.eqNull(d)?getI18n("vxe.table.sortDesc"):""+(d||"")},on:o?{click(e){e.stopPropagation(),t.triggerSortEvent(e,r,"desc")}}:void 0})])]},renderFilterHeader(e,l){return renderHeaderCellBaseVNs(e,l,Cell.renderHeaderTitle(e,l).concat(Cell.renderFilterIcon(e,l)))},renderFilterIcon(e,l){let{$table:t,column:r,hasFilter:n}=l;var o=t.filterStore,{showIcon:a,iconNone:d,iconMatch:i,iconVisibleMethod:s}=t.computeFilterOpts;return!a||s&&!s(l)?[]:[e("span",{class:["vxe-cell--filter",{"is--active":o.visible&&o.column===r}],on:{click(e){t.triggerFilterEvent&&t.triggerFilterEvent(e,l.column,l)}}},[e("i",{class:["vxe-filter--btn",n?i||getIcon().TABLE_FILTER_MATCH:d||getIcon().TABLE_FILTER_NONE],attrs:{title:getI18n("vxe.table.filter")}})])]},renderEditHeader(e,l){var{$table:t,column:r}=l,{editConfig:n,editRules:o}=t,a=t.computeEditOpts,{sortable:d,filters:i,editRender:s}=r;let c=!1,u=(o&&(o=_xeUtils.default.get(o,r.field))&&(c=o.some(e=>e.required)),[]);return(0,_utils.isEnableConf)(n)&&({showAsterisk:r,showIcon:o,icon:n}=a,u=[c&&r?e("i",{class:"vxe-cell--required-icon"},[e("i",{class:"vxe-cell--required-icon"})]):renderEmptyElement(t),(0,_utils.isEnableConf)(s)&&o?e("i",{class:"vxe-cell--edit-icon"},_xeUtils.default.isFunction(n)?(0,_vn.getSlotVNs)(n({})):[e("i",{class:n||getIcon().TABLE_EDIT})]):renderEmptyElement(t)]),renderHeaderCellBaseVNs(e,l,u.concat(Cell.renderHeaderTitle(e,l)).concat(d?Cell.renderSortIcon(e,l):[]).concat(i?Cell.renderFilterIcon(e,l):[]))},renderRowEdit(e,l){var{$table:t,column:r}=l,t=t.editStore,t=t.actived,r=r.editRender;return Cell.runRenderer(e,l,this,(0,_utils.isEnableConf)(r)&&t&&t.row===l.row)},renderDeepRowEdit(e,l){return Cell.renderDeepNodeBtn(e,l,Cell.renderRowEdit(e,l))},renderCellEdit(e,l){var{$table:t,column:r}=l,t=t.editStore,t=t.actived,r=r.editRender;return Cell.runRenderer(e,l,this,(0,_utils.isEnableConf)(r)&&t&&t.row===l.row&&t.column===l.column)},renderDeepCellEdit(e,l){return Cell.renderDeepNodeBtn(e,l,Cell.renderCellEdit(e,l))},runRenderer(e,l,t,r){var{$table:n,row:o,column:a}=l,d=n.isRowGroupStatus,{slots:a,field:i,editRender:s,formatter:c}=a,u=renderer.get(s.name),u=u?u.renderTableEdit||u.renderEdit:null,C=a?a.default:null,g=a?a.groupContent||a["group-content"]:null,p=Object.assign({$type:"",isEdit:r},l);if(r)return a&&a.edit?n.callSlot(a.edit,p,e):u?(0,_vn.getSlotVNs)(u.call(n,e,s,p)):[];if(d&&i&&o.isAggregate){r=n.computeAggregateOpts.mapChildrenField,a=o.groupField,u=r&&o[r]||[];if(g)return renderCellBaseVNs(e,l,n.callSlot(g,Object.assign({groupField:a,groupContent:o.groupContent,childList:u,childCount:o.childCount},l),e))}else if(C)return renderCellBaseVNs(e,l,n.callSlot(C,p,e));return c?renderCellBaseVNs(e,l,[e("span",{class:"vxe-cell--label"},[getDefaultCellLabel(p)])]):Cell.renderDefaultCell.call(t,e,p)}};var _default=exports.default=Cell;
|
package/lib/table/src/footer.js
CHANGED
|
@@ -322,7 +322,6 @@ var _default = exports.default = {
|
|
|
322
322
|
const _vm = this;
|
|
323
323
|
const props = _vm;
|
|
324
324
|
const $xeTable = _vm.$parent;
|
|
325
|
-
const tableProps = $xeTable;
|
|
326
325
|
const tableReactData = $xeTable;
|
|
327
326
|
const tableInternalData = $xeTable;
|
|
328
327
|
const {
|
|
@@ -333,11 +332,6 @@ var _default = exports.default = {
|
|
|
333
332
|
fixedColumn,
|
|
334
333
|
tableColumn
|
|
335
334
|
} = props;
|
|
336
|
-
const {
|
|
337
|
-
spanMethod,
|
|
338
|
-
footerSpanMethod,
|
|
339
|
-
showFooterOverflow: allColumnFooterOverflow
|
|
340
|
-
} = tableProps;
|
|
341
335
|
const {
|
|
342
336
|
visibleColumn,
|
|
343
337
|
fullColumnIdData
|
|
@@ -349,16 +343,9 @@ var _default = exports.default = {
|
|
|
349
343
|
scrollXLoad,
|
|
350
344
|
dragCol
|
|
351
345
|
} = tableReactData;
|
|
346
|
+
const isFooterRenderOptimize = $xeTable.computeIsFooterRenderOptimize;
|
|
352
347
|
let renderColumnList = tableColumn;
|
|
353
|
-
|
|
354
|
-
// 如果是使用优化模式
|
|
355
|
-
if (scrollXLoad && allColumnFooterOverflow) {
|
|
356
|
-
if (spanMethod || footerSpanMethod) {
|
|
357
|
-
// 如果不支持优化模式
|
|
358
|
-
} else {
|
|
359
|
-
isOptimizeMode = true;
|
|
360
|
-
}
|
|
361
|
-
}
|
|
348
|
+
const isOptimizeMode = isFooterRenderOptimize;
|
|
362
349
|
if (!isOptimizeMode || !isColLoading && (fixedType || !overflowX)) {
|
|
363
350
|
renderColumnList = visibleColumn;
|
|
364
351
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
Object.defineProperty(exports,"__esModule",{value:!0}),exports.default=void 0;var _xeUtils=_interopRequireDefault(require("xe-utils")),_ui=require("../../ui"),_utils=require("../../ui/src/utils"),_dom=require("../../ui/src/dom"),_util=require("./util");function _interopRequireDefault(e){return e&&e.__esModule?e:{default:e}}let sourceType="table",renderType="footer",{renderer,renderEmptyElement}=_ui.VxeUI;function renderRows(C,e,_,F,T,$,S,E){let I=e.$parent;var l=I,r=I,t=I;let
|
|
1
|
+
Object.defineProperty(exports,"__esModule",{value:!0}),exports.default=void 0;var _xeUtils=_interopRequireDefault(require("xe-utils")),_ui=require("../../ui"),_utils=require("../../ui/src/utils"),_dom=require("../../ui/src/dom"),_util=require("./util");function _interopRequireDefault(e){return e&&e.__esModule?e:{default:e}}let sourceType="table",renderType="footer",{renderer,renderEmptyElement}=_ui.VxeUI;function renderRows(C,e,_,F,T,$,S,E){let I=e.$parent;var l=I,r=I,t=I;let z=I.$xeGrid,O=I.$xeGantt,R=e.fixedType,{resizable:D,border:k,footerCellClassName:A,footerCellStyle:q,footerAlign:U,footerSpanMethod:X,align:L,columnKey:H,showFooterOverflow:M}=l,{scrollXLoad:N,scrollYLoad:j,overflowX:G,currentColumn:V,mergeFootFlag:W}=r,{fullColumnIdData:B,mergeFooterList:K,mergeFooterCellMaps:P,scrollXStore:Y}=t,ee=I.computeVirtualXOpts,le=I.computeFooterTooltipOpts,re=I.resizableOpts.isAllColumnDrag,J=I.computeColumnOpts;e=I.computeDefaultRowHeight;let te=I.computeCellOpts,Q=I.computeFooterCellOpts,Z=(0,_util.getCalcHeight)(Q.height)||e;return F.map((l,e)=>{var{type:r,showFooterOverflow:t,footerAlign:o,align:i,footerClassName:a,editRender:n,cellRender:s}=l,d=l.id,u=B[d]||{},n=n||s,s=n?renderer.get(n.name):null;let p=le.showAll;var n=G&&(R?l.fixed!==R:!!l.fixed),c=(_xeUtils.default.isBoolean(Q.padding)?Q:te).padding,t=_xeUtils.default.eqNull(t)?M:t,o=o||(s?s.tableFooterCellAlign:"")||U||i||(s?s.tableCellAlign:"")||L,i="ellipsis"===t;let f="title"===t,x=!0===t||"tooltip"===t;var s=f||x||i,t=_xeUtils.default.isBoolean(l.resizable)?l.resizable:J.resizable||D,m={colid:d},v={},g=u.index,u=u._index,b=u;let y={source:sourceType,$table:I,$grid:z,$gantt:O,row:$,rowIndex:E,_rowIndex:E,$rowIndex:S,column:l,columnIndex:g,$columnIndex:e,_columnIndex:u,itemIndex:b,items:$,fixed:R,type:renderType,data:T},w=((f||x||p)&&(v.mouseenter=e=>{f?(0,_dom.updateCellTitle)(e.currentTarget,l):(x||p)&&I.triggerFooterTooltipEvent(e,y)}),(x||p)&&(v.mouseleave=e=>{(x||p)&&I.handleTargetLeaveEvent(e)}),v.click=e=>{I.dispatchEvent("footer-cell-click",Object.assign({cell:e.currentTarget},y),e)},!(v.dblclick=e=>{I.dispatchEvent("footer-cell-dblclick",Object.assign({cell:e.currentTarget},y),e)}));if(W&&K.length){g=P[E+":"+u];if(g){var{rowspan:b,colspan:g}=g;if(!b||!g)return null;1<b&&(w=!0,m.rowspan=b),1<g&&(w=!0,m.colspan=g)}}else if(X){var{rowspan:b=1,colspan:g=1}=X(y)||{};if(!b||!g)return null;1<b&&(m.rowspan=b),1<g&&(m.colspan=g)}b=e===F.length-1,g=!l.resizeWidth&&("auto"===l.minWidth||"auto"===l.width);let h=!1;_&&G&&!w&&N&&10<F.length&&!l.fixed&&!ee.immediate&&(u<Y.visibleStartIndex-Y.preloadSize||u>Y.visibleEndIndex+Y.preloadSize)&&(h=!0);u={};return s?u.height=Z+"px":u.minHeight=Z+"px",C("td",{class:["vxe-table--column vxe-footer--column",l.id,{["col--"+o]:o,["col--"+r]:r,"col--last":b,"fixed--width":!g,"fixed--hidden":n,"is--padding":c,"col--ellipsis":s,"col--current":V===l},(0,_utils.getClass)(a,y),(0,_utils.getClass)(A,y)],attrs:m,style:q?_xeUtils.default.isFunction(q)?q(y):q:void 0,on:v,key:H||N||j||J.useKey||J.drag?l.id:e},[C("div",{class:["vxe-cell",{"c--title":f,"c--tooltip":x,"c--ellipsis":i}],style:u},h?[]:[C("div",{attrs:{colid:d},class:"vxe-cell--wrapper vxe-footer-cell--wrapper"},l.renderFooter(C,y))]),!n&&t&&re?C("div",{class:["vxe-cell--col-resizable",{"is--line":!k||"none"===k}],on:{mousedown:e=>I.handleColResizeMousedownEvent(e,R,y),dblclick:e=>I.handleColResizeDblclickEvent(e,y)}}):renderEmptyElement(I)])})}function renderHeads(o,i,a,n){let s=i.$parent;var e=s;let{fixedType:d,footerTableData:u}=i,{footerRowClassName:p,footerRowStyle:c}=e;return u.map((e,l)=>{var r=l,t={$table:s,row:e,_rowIndex:r,$rowIndex:l,fixed:d,type:renderType};return o("tr",{key:l,class:["vxe-footer--row",p?_xeUtils.default.isFunction(p)?p(t):p:""],style:c?_xeUtils.default.isFunction(c)?c(t):c:void 0},renderRows(o,i,a,n,u,e,l,r))})}var _default=exports.default={name:"VxeTableFooter",props:{footerTableData:{type:Array,default:()=>[]},tableColumn:{type:Array,default:()=>[]},fixedColumn:{type:Array,default:()=>[]},fixedType:{type:String,default:null}},mounted(){var e=this,l=e.fixedType,r=e.$parent.elemStore,l=`${l||"main"}-footer-`;r[l+"wrapper"]=e.$refs.refElem,r[l+"scroll"]=e.$refs.refFooterScroll,r[l+"table"]=e.$refs.refFooterTable,r[l+"colgroup"]=e.$refs.refFooterColgroup,r[l+"list"]=e.$refs.refFooterTFoot,r[l+"xSpace"]=e.$refs.refFooterXSpace},destroyed(){var e=this.fixedType,l=this.$parent.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},render(r){let l=this.$parent;var e=l,t=l,o=l.xID;let{fixedType:i,fixedColumn:a,tableColumn:n}=this;var{visibleColumn:t,fullColumnIdData:s}=t,{isGroup:e,isColLoading:d,overflowX:u,scrollXLoad:p,dragCol:c}=e;let f=n;var x=l.computeIsFooterRenderOptimize;return x&&(d||!i&&u)||(f=t),i&&x&&(f=a||[]),i||e||p&&c&&2<f.length&&(d=s[c.id])&&(u=d._index,t=f[0],e=f[f.length-1],p=s[t.id],d=s[e.id],p)&&d&&(t=p._index,s=d._index,u<t?f=[c].concat(f):s<u&&(f=f.concat([c]))),r("div",{ref:"refElem",class:["vxe-table--footer-wrapper",i?`fixed-${i}--wrapper`:"body--wrapper"],attrs:{xid:o}},[r("div",{ref:"refFooterScroll",class:"vxe-table--footer-inner-wrapper",on:{scroll(e){l.triggerFooterScrollEvent(e,i)}}},[i?renderEmptyElement(l):r("div",{ref:"refFooterXSpace",class:"vxe-body--x-space"}),r("table",{ref:"refFooterTable",class:"vxe-table--footer",attrs:{xid:o,cellspacing:0,cellpadding:0,border:0,xvm:x?"1":null}},[r("colgroup",{ref:"refFooterColgroup"},f.map((e,l)=>r("col",{attrs:{name:e.id},key:l,style:{width:e.renderWidth+"px"}}))),r("tfoot",{ref:"refFooterTFoot"},renderHeads(r,this,x,f))])])])}};
|
package/lib/table/src/header.js
CHANGED
|
@@ -508,10 +508,7 @@ var _default = exports.default = {
|
|
|
508
508
|
headerColumn
|
|
509
509
|
} = _vm;
|
|
510
510
|
const {
|
|
511
|
-
mouseConfig
|
|
512
|
-
showHeaderOverflow: allColumnHeaderOverflow,
|
|
513
|
-
spanMethod,
|
|
514
|
-
footerSpanMethod
|
|
511
|
+
mouseConfig
|
|
515
512
|
} = tableProps;
|
|
516
513
|
const {
|
|
517
514
|
isGroup,
|
|
@@ -525,20 +522,13 @@ var _default = exports.default = {
|
|
|
525
522
|
fullColumnIdData
|
|
526
523
|
} = tableInternalData;
|
|
527
524
|
const mouseOpts = $xeTable.computeMouseOpts;
|
|
525
|
+
const isHeaderRenderOptimize = $xeTable.computeIsHeaderRenderOptimize;
|
|
528
526
|
let renderHeaderList = headerColumn;
|
|
529
527
|
let renderColumnList = tableColumn;
|
|
530
|
-
|
|
528
|
+
const isOptimizeMode = isHeaderRenderOptimize;
|
|
531
529
|
if (isGroup) {
|
|
532
530
|
renderColumnList = visibleColumn;
|
|
533
531
|
} else {
|
|
534
|
-
// 如果是使用优化模式
|
|
535
|
-
if (scrollXLoad && allColumnHeaderOverflow) {
|
|
536
|
-
if (spanMethod || footerSpanMethod) {
|
|
537
|
-
// 如果不支持优化模式
|
|
538
|
-
} else {
|
|
539
|
-
isOptimizeMode = true;
|
|
540
|
-
}
|
|
541
|
-
}
|
|
542
532
|
if (!isOptimizeMode || !isColLoading && (fixedType || !overflowX)) {
|
|
543
533
|
renderColumnList = visibleColumn;
|
|
544
534
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
Object.defineProperty(exports,"__esModule",{value:!0}),exports.default=void 0;var _xeUtils=_interopRequireDefault(require("xe-utils")),_ui=require("../../ui"),_utils=require("../../ui/src/utils"),_util=require("./util"),_vn=require("../../ui/src/vn");function _interopRequireDefault(e){return e&&e.__esModule?e:{default:e}}let{renderer,renderEmptyElement}=_ui.VxeUI,sourceType="table",renderType="header";function getColumnFirstChild(e){var l=e.children;return l&&l.length?getColumnFirstChild(l[0]):e}function getColumnLastChild(e){var l=e.children;return l&&l.length?getColumnLastChild(l[l.length-1]):e}function renderRows(D,e,R,
|
|
1
|
+
Object.defineProperty(exports,"__esModule",{value:!0}),exports.default=void 0;var _xeUtils=_interopRequireDefault(require("xe-utils")),_ui=require("../../ui"),_utils=require("../../ui/src/utils"),_util=require("./util"),_vn=require("../../ui/src/vn");function _interopRequireDefault(e){return e&&e.__esModule?e:{default:e}}let{renderer,renderEmptyElement}=_ui.VxeUI,sourceType="table",renderType="header";function getColumnFirstChild(e){var l=e.children;return l&&l.length?getColumnFirstChild(l[0]):e}function getColumnLastChild(e){var l=e.children;return l&&l.length?getColumnLastChild(l[l.length-1]):e}function renderRows(D,e,R,I,l,F,O){let k=e.$parent,z=k.$xeGrid,A=k.$xeGantt;var r=k,t=k,a=k;let U=e.fixedType,{resizable:L,columnKey:G,showCustomHeader:X,headerCellClassName:q,headerCellStyle:M,showHeaderOverflow:N,headerAlign:W,align:B,mouseConfig:V}=r,{currentColumn:K,dragCol:P,scrollXLoad:j,scrollYLoad:Y,overflowX:J,mergeHeadFlag:de,tableColumn:ne}=t,{fullColumnIdData:Q,scrollXStore:Z,mergeHeaderList:oe,mergeHeaderCellMaps:se}=a,ue=k.computeVirtualXOpts,ee=k.computeColumnOpts,le=k.computeColumnDragOpts,ce=k.computeCellOpts;e=k.computeDefaultRowHeight;let re=k.computeHeaderCellOpts,te=(0,_util.getCalcHeight)(re.height)||e,{disabledMethod:ae,isCrossDrag:pe,isPeerDrag:me}=le,ie=F===l.length-1;return O.map((e,l)=>{var{type:r,showHeaderOverflow:t,headerAlign:a,align:i,filters:d,headerClassName:n,editRender:o,cellRender:s}=e,u=e.id,c=Q[u]||{},o=o||s,s=o?renderer.get(o.name):null,o=e.children&&e.children.length,p=J&&!o&&(U?e.fixed!==U:!!e.fixed),m=(_xeUtils.default.isBoolean(re.padding)?re:ce).padding,t=_xeUtils.default.isUndefined(t)||_xeUtils.default.isNull(t)?N:t,a=a||(s?s.tableHeaderCellAlign:"")||W||i||(s?s.tableCellAlign:"")||B,i="ellipsis"===t,s="title"===t,t=!0===t||"tooltip"===t,g=s||t||i;let f=!1,h=null;d&&(h=d[0],f=d.some(e=>e.checked));var x=c.index,c=X?l:c._index;let v={$table:k,$grid:z,$gantt:A,$rowIndex:F,column:e,columnIndex:x,$columnIndex:l,_columnIndex:c,firstFilterOption:h,fixed:U,source:sourceType,type:renderType,isHidden:p,hasFilter:f};x={colid:u};let C=!1;if(X||(x.colspan=1<e.colSpan?e.colSpan:null,x.rowspan=1<e.rowSpan?e.rowSpan:null),de&&oe.length&&(X||ie)){var b=se[F+":"+(X?l:c)];if(b){var{rowspan:b,colspan:w}=b;if(!b||!w)return null;1<b&&(C=!0,x.rowspan=b),1<w&&(C=!0,x.colspan=w)}}b={click:e=>k.triggerHeaderCellClickEvent(e,v),dblclick:e=>k.triggerHeaderCellDblclickEvent(e,v)},w=ee.drag&&"cell"===le.trigger;let H=!1;w&&(H=!(!ae||!ae(v))),(V||w)&&(b.mousedown=e=>k.triggerHeaderCellMousedownEvent(e,v)),ee.drag&&(b.dragstart=k.handleHeaderCellDragDragstartEvent,b.dragend=k.handleHeaderCellDragDragendEvent,b.dragover=k.handleHeaderCellDragDragoverEvent,w)&&(b.mouseup=k.handleHeaderCellDragMouseupEvent);var w=l===O.length-1,y=_xeUtils.default.isBoolean(e.resizable)?e.resizable:ee.resizable||L,_=!e.resizeWidth&&("auto"===e.minWidth||"auto"===e.width);let $=!1;!I||!J||R||C||P&&P.id===u||j&&10<ne.length&&!e.fixed&&!ue.immediate&&(c<Z.visibleStartIndex-Z.preloadSize||c>Z.visibleEndIndex+Z.preloadSize)&&($=!0);var E,S,T,c={};return g?c.height=te+"px":c.minHeight=te+"px",X||o&&!ie&&(S=getColumnFirstChild(e),E=getColumnLastChild(e),S)&&E&&S.id!==E.id&&(S=Q[S.id],T=Q[E.id],S)&&T&&(c.width=T.oLeft-S.oLeft+E.renderWidth+"px"),D("th",{class:["vxe-table--column vxe-header--column",u,p?"fixed--hidden":"fixed--visible",{["col--"+a]:a,["col--"+r]:r,"col--last":w,"col--fixed":e.fixed,"col--group":o,"col--ellipsis":g,"fixed--width":!_,"is--padding":m,"is--sortable":e.sortable,"col--filter":!!d,"is--filter-active":f,"is--drag-active":ee.drag&&!e.fixed&&!H&&(pe||me||!e.parentId),"is--drag-disabled":ee.drag&&H,"col--current":K===e},(0,_utils.getClass)(n,v),(0,_utils.getClass)(q,v)],attrs:x,style:M?_xeUtils.default.isFunction(M)?M(v):M:void 0,on:b,key:X?""+u+l:G||j||Y||ee.useKey||ee.drag||o?u:l},[D("div",{class:["vxe-cell",{"c--title":s,"c--tooltip":t,"c--ellipsis":i}],style:c},$||I&&p?[]:[D("div",{attrs:{colid:u},class:"vxe-cell--wrapper vxe-header-cell--wrapper"},e.renderHeader(D,v))]),p||!y||X&&!ie?renderEmptyElement(k):D("div",{class:"vxe-cell--col-resizable",on:{mousedown:e=>k.handleColResizeMousedownEvent(e,U,v),dblclick:e=>k.handleColResizeDblclickEvent(e,v)}})])})}function renderFilterRows(y,e,_,$){let E=e.$parent,S=E.$xeGrid,T=E.$xeGantt;var l=E,r=E,t=E;let D=e.fixedType,{showHeaderOverflow:R,headerAlign:I,align:F}=l,{currentColumn:O,overflowX:k}=r,z=t.fullColumnIdData,A=E.computeCellOpts;e=E.computeDefaultRowHeight;let U=E.computeHeaderCellOpts,L=(0,_util.getCalcHeight)(U.height)||e;return $.map((e,l)=>{var{type:r,showHeaderOverflow:t,headerAlign:a,align:i,filters:d,editRender:n,cellRender:o,floatingFilters:s,filterRender:u,slots:c}=e,p=e.id,m=z[p]||{},n=n||o,o=n?renderer.get(n.name):null,n=(0,_utils.isEnableConf)(u)?renderer.get(u.name):null,n=n?n.renderTableFloatingFilter:null,c=c?c.floatingFilter||c["floating-filter"]:null,g=k&&(D?e.fixed!==D:!!e.fixed),f=(_xeUtils.default.isBoolean(U.padding)?U:A).padding,t=_xeUtils.default.eqNull(t)?R:t,a=a||(o?o.tableHeaderCellAlign:"")||I||i||(o?o.tableCellAlign:"")||F,i="ellipsis"===t,o="title"===t,t=!0===t||"tooltip"===t,h=o||t||i;let x=!1,v=null;d&&(v=d[0],x=d.some(e=>e.checked));var d=m.index,m=m._index,m={$table:E,$grid:S,$gantt:T,column:e,columnIndex:d,$columnIndex:l,_columnIndex:m,option:v,fixed:D,source:sourceType,type:renderType,isHidden:g,hasFilter:x},C={colid:p},b=l===$.length-1,w=!e.resizeWidth&&("auto"===e.minWidth||"auto"===e.width),H={};return h?H.height=L+"px":H.minHeight=L+"px",y("th",{class:["vxe-table--column vxe-header--column",p,g?"fixed--hidden":"fixed--visible",{["col--"+a]:a,["col--"+r]:r,"col--last":b,"col--fixed":e.fixed,"col--ellipsis":h,"fixed--width":!w,"is--padding":f,"is--sortable":e.sortable,"col--current":O===e}],key:p,attrs:C},[y("div",{class:["vxe-cell",{"c--title":o,"c--tooltip":t,"c--ellipsis":i}],style:H},_&&g&&!s?[]:[y("div",{attrs:{colid:p},class:"vxe-cell--wrapper vxe-header-cell--wrapper"},c?E.callSlot(c,m,y):n&&v?(0,_vn.getSlotVNs)(n.call(E,y,u,{$table:E,option:v,column:e,columnIndex:d,$columnIndex:l})):[])])])})}function renderHeads(t,a,i,d,n){let o=a.$parent;var e=o,l=o;let{fixedType:s,fixedColumn:r}=a,{headerRowClassName:u,headerRowStyle:c}=e;var e=l.visibleColumn,l=o.computeFloatingFilterOpts,p=n.map((e,l)=>{var r={$table:o,$rowIndex:l,fixed:s,type:renderType};return t("tr",{key:l,class:["vxe-header--row",u?_xeUtils.default.isFunction(u)?u(r):u:""],style:c?_xeUtils.default.isFunction(c)?c(r):c:void 0},renderRows(t,a,i,d,n,l,e))});return l.enabled&&p.push(t("tr",{key:"ff",class:["vxe-header--row"]},renderFilterRows(t,a,d,d&&s?r:e))),p}var _default=exports.default={name:"VxeTableHeader",props:{tableData:Array,tableColumn:Array,tableGroupColumn:Array,fixedColumn:Array,fixedType:{type:String,default:null}},data(){return{headerColumn:[]}},watch:{tableColumn(){this.uploadColumn()}},created(){this.uploadColumn()},mounted(){var e=this,l=e.fixedType,r=e.$parent.elemStore,l=`${l||"main"}-header-`;r[l+"wrapper"]=e.$refs.refElem,r[l+"scroll"]=e.$refs.refHeaderScroll,r[l+"table"]=e.$refs.refHeaderTable,r[l+"colgroup"]=e.$refs.refHeaderColgroup,r[l+"list"]=e.$refs.refHeaderTHead,r[l+"xSpace"]=e.$refs.refHeaderXSpace,r[l+"repair"]=e.$refs.refHeaderBorderRepair},destroyed(){var e=this.fixedType,l=this.$parent.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},render(r){let l=this.$parent;var e=l,t=l,a=l,i=l.xID;let{fixedType:d,fixedColumn:n,tableColumn:o}=this;var s=this.headerColumn,e=e.mouseConfig,{isGroup:t,isColLoading:u,overflowX:c,scrollXLoad:p,dragCol:m}=t,{visibleColumn:a,fullColumnIdData:g}=a,f=l.computeMouseOpts;let h=s,x=o;s=l.computeIsHeaderRenderOptimize;return t?x=a:(s&&(u||!d&&c)||(x=a),d&&s&&(x=n||[]),h=[x]),d||t||p&&m&&2<x.length&&(u=g[m.id])&&(c=u._index,a=x[0],p=x[x.length-1],u=g[a.id],a=g[p.id],u)&&a&&(g=u._index,p=a._index,c<g?(x=[m].concat(x),h=[[m].concat(h[0])].concat(h.slice(1))):p<c&&(x=x.concat([m]),h=[h[0].concat([m])].concat(h.slice(1)))),r("div",{ref:"refElem",class:["vxe-table--header-wrapper",d?`fixed-${d}--wrapper`:"body--wrapper"],attrs:{xid:i}},[r("div",{ref:"refHeaderScroll",class:"vxe-table--header-inner-wrapper",on:{scroll(e){l.triggerHeaderScrollEvent(e,d)}}},[d?renderEmptyElement(l):r("div",{ref:"refHeaderXSpace",class:"vxe-body--x-space"}),r("table",{ref:"refHeaderTable",class:"vxe-table--header",attrs:{xid:i,cellspacing:0,cellpadding:0,border:0,xvm:s?"1":null}},[r("colgroup",{ref:"refHeaderColgroup"},x.map((e,l)=>r("col",{attrs:{name:e.id},key:l,style:{width:e.renderWidth+"px"}}))),r("thead",{ref:"refHeaderTHead"},renderHeads(r,this,t,s,h))]),e&&f.area?r("div",{class:"vxe-table--cell-area",attrs:{xid:i}},[r("span",{class:"vxe-table--cell-main-area"}),r("span",{class:"vxe-table--cell-clip-area"}),r("span",{class:"vxe-table--cell-extend-area"}),r("span",{class:"vxe-table--cell-multi-area"}),r("span",{class:"vxe-table--cell-active-area"}),r("span",{class:"vxe-table--cell-col-status-area"})]):renderEmptyElement(l)])])},methods:{uploadColumn(){var e=this.$parent,l=e.showCustomHeader,{collectColumn:r,visibleColumn:t}=e,a=this.tableGroupColumn,i=e.isGroup;let d=i?(0,_util.convertHeaderColumnToRows)(a):[],n=[];l&&1<d.length&&(n=(0,_util.convertHeaderToGridRows)(d),d=n),this.headerColumn=d,e.dispatchEvent("columns-change",{visibleColgroups:n,collectColumn:r,visibleColumn:t},null)}}};
|