vxe-table 4.7.91 → 4.7.93
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/locale/lang/en-US.js +3 -1
- package/es/locale/lang/es-ES.js +6 -1
- package/es/locale/lang/hu-HU.js +6 -1
- package/es/locale/lang/ja-JP.js +6 -1
- package/es/locale/lang/ko-KR.js +6 -1
- package/es/locale/lang/pt-BR.js +6 -1
- package/es/locale/lang/ru-RU.js +6 -1
- package/es/locale/lang/uk-UA.js +6 -1
- package/es/locale/lang/vi-VN.js +6 -1
- package/es/locale/lang/zh-CHT.js +6 -1
- package/es/locale/lang/zh-CN.js +6 -1
- package/es/style.css +1 -1
- package/es/style.min.css +1 -1
- package/es/table/render/index.js +3 -0
- package/es/table/src/body.js +1 -1
- package/es/table/src/footer.js +6 -2
- package/es/table/src/header.js +6 -2
- package/es/ui/index.js +2 -2
- package/es/ui/src/log.js +1 -1
- package/lib/index.umd.js +33 -9
- package/lib/index.umd.min.js +1 -1
- package/lib/locale/lang/en-US.js +3 -1
- package/lib/locale/lang/en-US.min.js +1 -1
- package/lib/locale/lang/en-US.umd.js +3 -1
- package/lib/locale/lang/es-ES.js +6 -1
- package/lib/locale/lang/es-ES.min.js +1 -1
- package/lib/locale/lang/es-ES.umd.js +6 -1
- package/lib/locale/lang/hu-HU.js +6 -1
- package/lib/locale/lang/hu-HU.min.js +1 -1
- package/lib/locale/lang/hu-HU.umd.js +6 -1
- package/lib/locale/lang/ja-JP.js +6 -1
- package/lib/locale/lang/ja-JP.min.js +1 -1
- package/lib/locale/lang/ja-JP.umd.js +6 -1
- package/lib/locale/lang/ko-KR.js +6 -1
- package/lib/locale/lang/ko-KR.min.js +1 -1
- package/lib/locale/lang/ko-KR.umd.js +6 -1
- package/lib/locale/lang/pt-BR.js +6 -1
- package/lib/locale/lang/pt-BR.min.js +1 -1
- package/lib/locale/lang/pt-BR.umd.js +6 -1
- package/lib/locale/lang/ru-RU.js +6 -1
- package/lib/locale/lang/ru-RU.min.js +1 -1
- package/lib/locale/lang/ru-RU.umd.js +6 -1
- package/lib/locale/lang/uk-UA.js +6 -1
- package/lib/locale/lang/uk-UA.min.js +1 -1
- package/lib/locale/lang/uk-UA.umd.js +6 -1
- package/lib/locale/lang/vi-VN.js +6 -1
- package/lib/locale/lang/vi-VN.min.js +1 -1
- package/lib/locale/lang/zh-CHT.js +6 -1
- package/lib/locale/lang/zh-CHT.min.js +1 -1
- package/lib/locale/lang/zh-CN.js +6 -1
- package/lib/locale/lang/zh-CN.min.js +1 -1
- package/lib/locale/lang/zh-CN.umd.js +6 -1
- package/lib/style.css +1 -1
- package/lib/style.min.css +1 -1
- package/lib/table/render/index.js +3 -0
- package/lib/table/render/index.min.js +1 -1
- package/lib/table/src/body.js +1 -1
- package/lib/table/src/body.min.js +1 -1
- package/lib/table/src/footer.js +10 -2
- package/lib/table/src/footer.min.js +1 -1
- package/lib/table/src/header.js +10 -2
- package/lib/table/src/header.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 +2 -2
- package/packages/locale/lang/en-US.ts +3 -1
- package/packages/locale/lang/es-ES.ts +6 -1
- package/packages/locale/lang/hu-HU.ts +6 -1
- package/packages/locale/lang/ja-JP.ts +6 -1
- package/packages/locale/lang/ko-KR.ts +6 -1
- package/packages/locale/lang/pt-BR.ts +6 -1
- package/packages/locale/lang/ru-RU.ts +6 -1
- package/packages/locale/lang/uk-UA.ts +6 -1
- package/packages/locale/lang/vi-VN.ts +6 -1
- package/packages/locale/lang/zh-CHT.ts +6 -1
- package/packages/locale/lang/zh-CN.ts +6 -1
- package/packages/table/render/index.ts +3 -0
- package/packages/table/src/body.ts +1 -1
- package/packages/table/src/footer.ts +7 -2
- package/packages/table/src/header.ts +7 -2
- /package/es/{iconfont.1729165715485.ttf → iconfont.1729498187676.ttf} +0 -0
- /package/es/{iconfont.1729165715485.woff → iconfont.1729498187676.woff} +0 -0
- /package/es/{iconfont.1729165715485.woff2 → iconfont.1729498187676.woff2} +0 -0
- /package/lib/{iconfont.1729165715485.ttf → iconfont.1729498187676.ttf} +0 -0
- /package/lib/{iconfont.1729165715485.woff → iconfont.1729498187676.woff} +0 -0
- /package/lib/{iconfont.1729165715485.woff2 → iconfont.1729498187676.woff2} +0 -0
|
@@ -1 +1 @@
|
|
|
1
|
-
"use strict";Object.defineProperty(exports,"__esModule",{value:!0}),exports.default=void 0;var _vue=require("vue"),_xeUtils=_interopRequireDefault(require("xe-utils")),_ui=require("../../ui"),_util=require("./util"),_dom=require("../../ui/src/dom"),_utils=require("../../ui/src/utils"),_vn=require("../../ui/src/vn");function _interopRequireDefault(e){return e&&e.__esModule?e:{default:e}}const{getI18n,renderer}=_ui.VxeUI,renderType="body",lineOffsetSizes={mini:3,small:2,medium:1};var _default=exports.default=(0,_vue.defineComponent)({name:"VxeTableBody",props:{tableData:Array,tableColumn:Array,fixedColumn:Array,fixedType:{type:String,default:null}},setup(f){const ie=(0,_vue.inject)("$xeTable",{}),l=(0,_vue.inject)("xesize",null),{xID:w,props:ne,context:y,reactData:ue,internalData:ce}=ie,{refTableHeader:_,refTableBody:b,refTableFooter:q,refTableLeftBody:T,refTableRightBody:S,refValidTooltip:j}=ie.getRefMaps(),{computeEditOpts:de,computeMouseOpts:B,computeSYOpts:pe,computeEmptyOpts:N,computeKeyboardOpts:Y,computeTooltipOpts:xe,computeRadioOpts:e,computeExpandOpts:A,computeTreeOpts:d,computeCheckboxOpts:ve,computeValidOpts:me,computeRowOpts:he,computeColumnOpts:fe}=ie.getComputeMaps(),C=(0,_vue.ref)(),O=(0,_vue.ref)(),L=(0,_vue.ref)(),R=(0,_vue.ref)(),H=(0,_vue.ref)(),$=(0,_vue.ref)(),E=(0,_vue.ref)(),p=()=>{if(l){var e=l.value;if(e)return lineOffsetSizes[e]||0}return 0},ge=()=>{var e=ne["delayHover"],{lastScrollTime:l,_isResize:t}=ue;return!!(t||l&&Date.now()<l+e)},v=(e,l)=>{let t=1;if(e){var o=d.value,r=e[o.children||o.childrenField];if(r&&ie.isTreeExpandByRow(e))for(let e=0;e<r.length;e++)t+=v(r[e],l)}return t},we=e=>{var{row:l,column:t}=e,o=ce["afterFullData"],r=ne["treeConfig"],a=d.value,{slots:t,treeNode:s}=t,i=ce["fullAllDataRowIdData"],i=i[(0,_util.getRowid)(ie,l)];let n=0,u=0,c=[];return i&&(n=i.level,u=i._index,c=i.items),t&&t.line?ie.callSlot(t.line,e):(i=ie.eqRow(o[0],l),r&&s&&(a.showLine||a.line)?[(0,_vue.h)("div",{class:"vxe-tree--line-wrapper"},[(0,_vue.h)("div",{class:"vxe-tree--line",style:{height:`${i?1:((e,l,t)=>{let o=1;return t&&(o=v(l[t-1],e)),ue.rowHeight*o-(t?1:12-p())})(e,c,u)}px`,left:n*a.indent+(n?2-p():0)+16+"px"}})])]:[])},P=(e,l,t,o,r,a,s,i,n,u,U,q)=>{var{columnKey:j,height:c,showOverflow:d,cellClassName:B,cellStyle:p,align:v,spanMethod:N,mouseConfig:Y,editConfig:W,editRules:h,tooltipConfig:F}=ne,{tableData:V,overflowX:g,scrollYLoad:A,currentColumn:P,mergeList:x,editStore:m,isAllOverflow:X,validErrorMaps:f}=ue,K=ce["afterFullData"],w=me.value,z=ve.value,y=de.value,_=xe.value,G=he.value,b=pe.value,J=fe.value,{type:Q,cellRender:Z,editRender:T,align:S,showOverflow:C,className:ee,treeNode:le,slots:te}=n,m=m["actived"],b=b["rHeight"],O=G["height"],L=n.id,R=T||Z,R=R?renderer.get(R.name):null,oe=R?R.tableCellClassName||R.cellClassName:null,R=R?R.tableCellStyle||R.cellStyle:"";const H=_.showAll;var _=ie.getColumnIndex(n),re=ie.getVTColumnIndex(n),ae=(0,_utils.isEnableConf)(T);let $=t?n.fixed!==t:n.fixed&&g;g=_xeUtils.default.isUndefined(C)||_xeUtils.default.isNull(C)?d:C;let E="ellipsis"===g;const M="title"===g,I=!0===g||"tooltip"===g;let D=M||I||E,se;C={},g=S||v,S=f[l+":"+L],v=h&&w.showMessage&&("default"===w.message?c||1<V.length:"inline"===w.message),f={colid:L};const k={$table:ie,$grid:ie.xegrid,isEdit:!1,seq:e,rowid:l,row:r,rowIndex:a,$rowIndex:s,_rowIndex:i,column:n,columnIndex:_,$columnIndex:u,_columnIndex:re,fixed:t,type:renderType,isHidden:$,level:o,visibleData:K,data:V,items:q};if(A&&!D&&(E=D=!0),(M||I||H||F)&&(C.onMouseenter=e=>{ge()||(M?(0,_dom.updateCellTitle)(e.currentTarget,n):(I||H)&&ie.triggerBodyTooltipEvent(e,k),ie.dispatchEvent("cell-mouseenter",Object.assign({cell:e.currentTarget},k),e))}),(I||H||F)&&(C.onMouseleave=e=>{ge()||((I||H)&&ie.handleTargetLeaveEvent(e),ie.dispatchEvent("cell-mouseleave",Object.assign({cell:e.currentTarget},k),e))}),(z.range||Y)&&(C.onMousedown=e=>{ie.triggerCellMousedownEvent(e,k)}),C.onClick=e=>{ie.triggerCellClickEvent(e,k)},C.onDblclick=e=>{ie.triggerCellDblclickEvent(e,k)},x.length){h=(0,_util.mergeBodyMethod)(x,i,re);if(h){var{rowspan:c,colspan:e}=h;if(!c||!e)return null;1<c&&(f.rowspan=c),1<e&&(f.colspan=e)}}else if(N){var{rowspan:l=1,colspan:a=1}=N(k)||{};if(!l||!a)return null;1<l&&(f.rowspan=l),1<a&&(f.colspan=a)}!($=$&&x&&(1<f.colspan||1<f.rowspan)?!1:$)&&W&&(T||Z)&&(y.showStatus||y.showUpdateStatus)&&(se=ie.isUpdateByRow(r,n.field));s=[];return $&&d&&X?s.push((0,_vue.h)("div",{class:["vxe-cell",{"c--title":M,"c--tooltip":I,"c--ellipsis":E}],style:{maxHeight:D&&(b||O)?`${b||O}px`:""}})):(s.push(...we(k),(0,_vue.h)("div",{class:["vxe-cell",{"c--title":M,"c--tooltip":I,"c--ellipsis":E}],style:{maxHeight:D&&(b||O)?`${b||O}px`:""},title:M?ie.getCellLabel(r,n):null},n.renderCell(k))),v&&S&&(_=S.rule,t=te?te.valid:null,o=Object.assign(Object.assign({},k),S),s.push((0,_vue.h)("div",{class:["vxe-cell--valid-error-hint",(0,_dom.getPropClass)(w.className,o)],style:_&&_.maxWidth?{width:_.maxWidth+"px"}:null},t?ie.callSlot(t,o):[(0,_vue.h)("span",{class:"vxe-cell--valid-error-msg"},S.content)])))),(0,_vue.h)("td",Object.assign(Object.assign(Object.assign({class:["vxe-body--column",L,{["col--"+g]:g,["col--"+Q]:Q,"col--last":u===U.length-1,"col--tree-node":le,"col--edit":ae,"col--ellipsis":D,"col--height":!!G.height,"fixed--hidden":$,"col--dirty":se,"col--active":W&&ae&&m.row===r&&(m.column===n||"row"===y.mode),"col--valid-error":!!S,"col--current":P===n},(0,_dom.getPropClass)(oe,k),(0,_dom.getPropClass)(ee,k),(0,_dom.getPropClass)(B,k)],key:j||J.useKey?L:u},f),{style:Object.assign({height:D&&(b||O)?`${b||O}px`:""},_xeUtils.default.isFunction(R)?R(k):R,_xeUtils.default.isFunction(p)?p(k):p)}),C),s)},V=(x,m,f)=>{const{stripe:w,rowKey:y,highlightHoverRow:_,rowClassName:b,rowStyle:T,showOverflow:S,editConfig:C,treeConfig:O}=ne,{hasFixedColumn:L,treeExpandedMaps:R,scrollYLoad:H,rowExpandedMaps:$,expandColumn:E,selectRadioRow:M,pendingRowMaps:I,pendingRowList:D}=ue,k=ce["fullAllDataRowIdData"],U=ve.value,q=e.value,j=d.value,B=de.value,N=he.value,Y=j["transform"],W=j.children||j.childrenField,F=[];return m.forEach((t,o)=>{var e={};let r;r=ie.getRowIndex(t),(N.isHover||_)&&(e.onMouseenter=e=>{ge()||ie.triggerHoverEvent(e,{row:t,rowIndex:r})},e.onMouseleave=()=>{ge()||ie.clearHoverRow()});const a=(0,_util.getRowid)(ie,t);var l=k[a];let s=0,i=-1,n=0;l&&(s=l.level,i=l.seq,n=l._index);var u,c,d,l={$table:ie,seq:i,rowid:a,fixed:x,type:renderType,level:s,row:t,rowIndex:r,$rowIndex:o,_rowIndex:n},p=E&&!!$[a];let v=!1,h=[],g=!1;C&&(g=ie.isInsertByRow(t)),!O||H||Y||(h=t[W],v=h&&0<h.length&&!!R[a]),F.push((0,_vue.h)("tr",Object.assign({class:["vxe-body--row",O?"row--level-"+s:"",{"row--stripe":w&&(ie.getVTRowIndex(t)+1)%2==0,"is--new":g,"is--expand-row":p,"is--expand-tree":v,"row--new":g&&(B.showStatus||B.showInsertStatus),"row--radio":q.highlight&&ie.eqRow(M,t),"row--checked":U.highlight&&ie.isCheckedByCheckboxRow(t),"row--pending":D.length&&!!I[a]},(0,_dom.getPropClass)(b,l)],rowid:a,style:T?_xeUtils.default.isFunction(T)?T(l):T:null,key:y||N.useKey||O?a:o},e),f.map((e,l)=>P(i,a,x,s,t,r,o,n,e,l,f,m)))),p&&({height:l,padding:p}=A.value,u={},c=(l&&(u.height=l+"px"),O&&(u.paddingLeft=s*j.indent+30+"px"),E)["showOverflow"],c=_xeUtils.default.isUndefined(c)||_xeUtils.default.isNull(c)?S:c,d={$table:ie,seq:i,column:E,fixed:x,type:renderType,level:s,row:t,rowIndex:r,$rowIndex:o,_rowIndex:n},F.push((0,_vue.h)("tr",Object.assign({class:["vxe-body--expanded-row",{"is--padding":p}],key:"expand_"+a,style:T?_xeUtils.default.isFunction(T)?T(d):T:null},e),[(0,_vue.h)("td",{class:{"vxe-body--expanded-column":1,"fixed--hidden":x&&!L,"col--ellipsis":c},colspan:f.length},[(0,_vue.h)("div",{class:{"vxe-body--expanded-cell":1,"is--ellipsis":l},style:u},[E.renderData(d)])])]))),v&&F.push(...V(x,h,f))}),F};let r;const M=(e,l,t,o)=>{(t||o)&&(t&&((0,_util.removeScrollListener)(t),t.scrollTop=l),o&&((0,_util.removeScrollListener)(o),o.scrollTop=l),clearTimeout(r),r=setTimeout(()=>{(0,_util.restoreScrollListener)(t),(0,_util.restoreScrollListener)(o),ue.lastScrollTime=Date.now()},300))},o=e=>{var l=f["fixedType"],t=ne["highlightHoverRow"],{scrollXLoad:o,scrollYLoad:r}=ue,{elemStore:a,lastScrollTop:s,lastScrollLeft:i}=ce,n=he.value,u=_.value,c=b.value,d=q.value,p=T.value,v=S.value,h=j.value,g=C.value,u=u?u.$el:null,d=d?d.$el:null,c=c.$el,p=p?p.$el:null,v=v?v.$el:null,x=a["main-body-ySpace"],x=x?x.value:null,a=a["main-body-xSpace"],a=a?a.value:null,x=(r&&x?x:c).clientHeight,a=(o&&a?a:c).clientWidth;let m=g.scrollTop;g=c.scrollLeft,i=g!==i,s=m!==s;ce.lastScrollTop=m,ce.lastScrollLeft=g,ue.lastScrollTime=Date.now(),(n.isHover||t)&&ie.clearHoverRow(),p&&"left"===l?(m=p.scrollTop,M(0,m,c,v)):v&&"right"===l?(m=v.scrollTop,M(0,m,c,p)):(i&&(u&&(u.scrollLeft=c.scrollLeft),d)&&(d.scrollLeft=c.scrollLeft),(p||v)&&(ie.checkScrolling(),s)&&M(0,m,p,v)),o&&i&&ie.triggerScrollXEvent(e),r&&s&&ie.triggerScrollYEvent(e),i&&h&&h.reactData.visible&&h.updatePlacement(),ie.dispatchEvent("scroll",{type:renderType,fixed:l,scrollTop:m,scrollLeft:g,scrollHeight:c.scrollHeight,scrollWidth:c.scrollWidth,bodyHeight:x,bodyWidth:a,isX:i,isY:s},e)};let m,I=0,D=0,k=0,U=!1;const h=(r,a,e,s,i)=>{var l=ce["elemStore"],{scrollXLoad:t,scrollYLoad:o}=ue,n=b.value,u=T.value,c=S.value;const d=u?u.$el:null,p=c?c.$el:null,v=n.$el;u=l["main-body-ySpace"],c=u?u.value:null,n=l["main-body-xSpace"],u=n?n.value:null;const h=(o&&c?c:v).clientHeight,g=(t&&u?u:v).clientWidth;l=U===a?Math.max(0,I-k):0;U=a,I=Math.abs(a?e-l:e+l),D=0,k=0,clearTimeout(m);const x=()=>{var e,l,t,o;k<I&&(e=f["fixedType"],{scrollTop:o,clientHeight:l,scrollHeight:t}=(D=Math.max(5,Math.floor(1.5*D)),(k+=D)>I&&(D-=k-I),v),o=o+D*(a?-1:1),v.scrollTop=o,d&&(d.scrollTop=o),p&&(p.scrollTop=o),(a?o<t-l:0<=o)&&(m=setTimeout(x,10)),ie.dispatchEvent("scroll",{type:renderType,fixed:e,scrollTop:v.scrollTop,scrollLeft:v.scrollLeft,scrollHeight:v.scrollHeight,scrollWidth:v.scrollWidth,bodyHeight:h,bodyWidth:g,isX:s,isY:i},r))};x()},W=e=>{var{deltaY:l,deltaX:t}=e,o=ne["highlightHoverRow"],r=ue["scrollYLoad"],{lastScrollTop:a,lastScrollLeft:s}=ce,i=he.value,n=b.value,u=C.value,n=n.$el,c=l<0;(c?u.scrollTop<=0:u.scrollTop>=u.scrollHeight-u.clientHeight)||(u=u.scrollTop+l,t=(n=n.scrollLeft+t)!==s,(s=u!==a)&&(e.preventDefault(),ce.lastScrollTop=u,ce.lastScrollLeft=n,ue.lastScrollTime=Date.now(),(i.isHover||o)&&ie.clearHoverRow(),h(e,c,l,t,s),r)&&ie.triggerScrollYEvent(e))};(0,_vue.onMounted)(()=>{(0,_vue.nextTick)(()=>{var e=f["fixedType"],l=ce["elemStore"],e=`${e||"main"}-body-`,t=C.value;l[e+"wrapper"]=C,l[e+"table"]=O,l[e+"colgroup"]=L,l[e+"list"]=R,l[e+"xSpace"]=H,l[e+"ySpace"]=$,l[e+"emptyBlock"]=E,t&&(t.onscroll=o,t._onscroll=o)})}),(0,_vue.onBeforeUnmount)(()=>{var e=C.value;clearTimeout(m),e&&(e._onscroll=null,e.onscroll=null)}),(0,_vue.onUnmounted)(()=>{var e=f["fixedType"],l=ce["elemStore"],e=`${e||"main"}-body-`;l[e+"wrapper"]=null,l[e+"table"]=null,l[e+"colgroup"]=null,l[e+"list"]=null,l[e+"xSpace"]=null,l[e+"ySpace"]=null,l[e+"emptyBlock"]=null});return()=>{let{fixedColumn:e,fixedType:l,tableColumn:t}=f;var{keyboardConfig:o,showOverflow:r,spanMethod:a,mouseConfig:s}=ne,{tableData:i,mergeList:n,scrollYLoad:u,isAllOverflow:c}=ue,d=ce["visibleColumn"],p=y["slots"],v=pe.value,h=N.value,g=Y.value,x=B.value;l&&(t=ue.expandColumn||!(u||r&&c)||n.length||a||o&&g.isMerge?d:e);let m;u=p?p.empty:null;return m=u?ie.callSlot(u,{$table:ie,$grid:ie.xegrid}):(c=(r=h.name?renderer.get(h.name):null)?r.renderTableEmpty||r.renderTableEmptyView||r.renderEmpty:null)?(0,_vn.getSlotVNs)(c(h,{$table:ie})):ne.emptyText||getI18n("vxe.table.emptyText"),(0,_vue.h)("div",Object.assign({ref:C,class:["vxe-table--body-wrapper",l?`fixed-${l}--wrapper`:"body--wrapper"],xid:w},"wheel"===v.mode?{onWheel:W}:{}),[l?(0,_vue.createCommentVNode)():(0,_vue.h)("div",{ref:H,class:"vxe-body--x-space"}),(0,_vue.h)("div",{ref:$,class:"vxe-body--y-space"}),(0,_vue.h)("table",{ref:O,class:"vxe-table--body",xid:w,cellspacing:0,cellpadding:0,border:0},[(0,_vue.h)("colgroup",{ref:L},t.map((e,l)=>(0,_vue.h)("col",{name:e.id,key:l}))),(0,_vue.h)("tbody",{ref:R},V(l,i,t))]),(0,_vue.h)("div",{class:"vxe-table--checkbox-range"}),s&&x.area?(0,_vue.h)("div",{class:"vxe-table--cell-area"},[(0,_vue.h)("span",{class:"vxe-table--cell-main-area"},x.extension?[(0,_vue.h)("span",{class:"vxe-table--cell-main-area-btn",onMousedown(e){ie.triggerCellExtendMousedownEvent(e,{$table:ie,fixed:l,type:renderType})}})]:[]),(0,_vue.h)("span",{class:"vxe-table--cell-copy-area"}),(0,_vue.h)("span",{class:"vxe-table--cell-extend-area"}),(0,_vue.h)("span",{class:"vxe-table--cell-multi-area"}),(0,_vue.h)("span",{class:"vxe-table--cell-active-area"})]):null,l?null:(0,_vue.h)("div",{class:"vxe-table--empty-block",ref:E},[(0,_vue.h)("div",{class:"vxe-table--empty-content"},m)])])}}});
|
|
1
|
+
"use strict";Object.defineProperty(exports,"__esModule",{value:!0}),exports.default=void 0;var _vue=require("vue"),_xeUtils=_interopRequireDefault(require("xe-utils")),_ui=require("../../ui"),_util=require("./util"),_dom=require("../../ui/src/dom"),_utils=require("../../ui/src/utils"),_vn=require("../../ui/src/vn");function _interopRequireDefault(e){return e&&e.__esModule?e:{default:e}}const{getI18n,renderer}=_ui.VxeUI,renderType="body",lineOffsetSizes={mini:3,small:2,medium:1};var _default=exports.default=(0,_vue.defineComponent)({name:"VxeTableBody",props:{tableData:Array,tableColumn:Array,fixedColumn:Array,fixedType:{type:String,default:null}},setup(f){const ne=(0,_vue.inject)("$xeTable",{}),l=(0,_vue.inject)("xesize",null),{xID:w,props:ue,context:y,reactData:ce,internalData:de}=ne,{refTableHeader:_,refTableBody:b,refTableFooter:q,refTableLeftBody:T,refTableRightBody:S,refValidTooltip:j}=ne.getRefMaps(),{computeEditOpts:pe,computeMouseOpts:B,computeSYOpts:ve,computeEmptyOpts:N,computeKeyboardOpts:Y,computeTooltipOpts:me,computeRadioOpts:e,computeExpandOpts:V,computeTreeOpts:d,computeCheckboxOpts:he,computeValidOpts:fe,computeRowOpts:ge,computeColumnOpts:we}=ne.getComputeMaps(),C=(0,_vue.ref)(),O=(0,_vue.ref)(),L=(0,_vue.ref)(),R=(0,_vue.ref)(),H=(0,_vue.ref)(),$=(0,_vue.ref)(),E=(0,_vue.ref)(),p=()=>{if(l){var e=l.value;if(e)return lineOffsetSizes[e]||0}return 0},xe=()=>{var e=ue["delayHover"],{lastScrollTime:l,_isResize:t}=ce;return!!(t||l&&Date.now()<l+e)},v=(e,l)=>{let t=1;if(e){var o=d.value,r=e[o.children||o.childrenField];if(r&&ne.isTreeExpandByRow(e))for(let e=0;e<r.length;e++)t+=v(r[e],l)}return t},ye=e=>{var{row:l,column:t}=e,o=de["afterFullData"],r=ue["treeConfig"],a=d.value,{slots:t,treeNode:s}=t,i=de["fullAllDataRowIdData"],i=i[(0,_util.getRowid)(ne,l)];let n=0,u=0,c=[];return i&&(n=i.level,u=i._index,c=i.items),t&&t.line?ne.callSlot(t.line,e):(i=ne.eqRow(o[0],l),r&&s&&(a.showLine||a.line)?[(0,_vue.h)("div",{class:"vxe-tree--line-wrapper"},[(0,_vue.h)("div",{class:"vxe-tree--line",style:{height:`${i?1:((e,l,t)=>{let o=1;return t&&(o=v(l[t-1],e)),ce.rowHeight*o-(t?1:12-p())})(e,c,u)}px`,left:n*a.indent+(n?2-p():0)+16+"px"}})])]:[])},P=(e,l,t,U,o,r,a,s,i,n,q,j)=>{var{columnKey:B,height:u,showOverflow:c,cellClassName:N,cellStyle:d,align:p,spanMethod:Y,mouseConfig:W,editConfig:F,editRules:v,tooltipConfig:A}=ue,{tableData:V,overflowX:h,scrollYLoad:P,currentColumn:X,mergeList:g,editStore:x,isAllOverflow:K,validErrorMaps:m}=ce,z=de["afterFullData"],f=fe.value,G=he.value,w=pe.value,y=me.value,J=ge.value,_=ve.value,Q=we.value,{type:Z,cellRender:ee,editRender:b,align:T,showOverflow:S,className:le,treeNode:te,slots:oe}=i,x=x["actived"],_=_["rHeight"],C=J["height"],O=i.id,L=b||ee,L=L?renderer.get(L.name):null,re=L?L.tableCellClassName||L.cellClassName:null,R=L?L.tableCellStyle||L.cellStyle:"";const H=y.showAll;var y=ne.getColumnIndex(i),ae=ne.getVTColumnIndex(i),se=(0,_utils.isEnableConf)(b);let $=t?i.fixed!==t:i.fixed&&h;h=_xeUtils.default.isUndefined(S)||_xeUtils.default.isNull(S)?c:S;let E="ellipsis"===h;const M="title"===h,I=!0===h||"tooltip"===h;let D=M||I||E,ie;S={},h=T||(L?L.tableCellAlign:"")||p,T=m[l+":"+O],L=v&&f.showMessage&&("default"===f.message?u||1<V.length:"inline"===f.message),p={colid:O};const k={$table:ne,$grid:ne.xegrid,isEdit:!1,seq:e,rowid:l,row:o,rowIndex:r,$rowIndex:a,_rowIndex:s,column:i,columnIndex:y,$columnIndex:n,_columnIndex:ae,fixed:t,type:renderType,isHidden:$,level:U,visibleData:z,data:V,items:j};if(P&&!D&&(E=D=!0),(M||I||H||A)&&(S.onMouseenter=e=>{xe()||(M?(0,_dom.updateCellTitle)(e.currentTarget,i):(I||H)&&ne.triggerBodyTooltipEvent(e,k),ne.dispatchEvent("cell-mouseenter",Object.assign({cell:e.currentTarget},k),e))}),(I||H||A)&&(S.onMouseleave=e=>{xe()||((I||H)&&ne.handleTargetLeaveEvent(e),ne.dispatchEvent("cell-mouseleave",Object.assign({cell:e.currentTarget},k),e))}),(G.range||W)&&(S.onMousedown=e=>{ne.triggerCellMousedownEvent(e,k)}),S.onClick=e=>{ne.triggerCellClickEvent(e,k)},S.onDblclick=e=>{ne.triggerCellDblclickEvent(e,k)},g.length){m=(0,_util.mergeBodyMethod)(g,s,ae);if(m){var{rowspan:v,colspan:u}=m;if(!v||!u)return null;1<v&&(p.rowspan=v),1<u&&(p.colspan=u)}}else if(Y){var{rowspan:e=1,colspan:l=1}=Y(k)||{};if(!e||!l)return null;1<e&&(p.rowspan=e),1<l&&(p.colspan=l)}!($=$&&g&&(1<p.colspan||1<p.rowspan)?!1:$)&&F&&(b||ee)&&(w.showStatus||w.showUpdateStatus)&&(ie=ne.isUpdateByRow(o,i.field));r=[];return $&&c&&K?r.push((0,_vue.h)("div",{class:["vxe-cell",{"c--title":M,"c--tooltip":I,"c--ellipsis":E}],style:{maxHeight:D&&(_||C)?`${_||C}px`:""}})):(r.push(...ye(k),(0,_vue.h)("div",{class:["vxe-cell",{"c--title":M,"c--tooltip":I,"c--ellipsis":E}],style:{maxHeight:D&&(_||C)?`${_||C}px`:""},title:M?ne.getCellLabel(o,i):null},i.renderCell(k))),L&&T&&(a=T.rule,y=oe?oe.valid:null,t=Object.assign(Object.assign({},k),T),r.push((0,_vue.h)("div",{class:["vxe-cell--valid-error-hint",(0,_dom.getPropClass)(f.className,t)],style:a&&a.maxWidth?{width:a.maxWidth+"px"}:null},y?ne.callSlot(y,t):[(0,_vue.h)("span",{class:"vxe-cell--valid-error-msg"},T.content)])))),(0,_vue.h)("td",Object.assign(Object.assign(Object.assign({class:["vxe-body--column",O,{["col--"+h]:h,["col--"+Z]:Z,"col--last":n===q.length-1,"col--tree-node":te,"col--edit":se,"col--ellipsis":D,"col--height":!!J.height,"fixed--hidden":$,"col--dirty":ie,"col--active":F&&se&&x.row===o&&(x.column===i||"row"===w.mode),"col--valid-error":!!T,"col--current":X===i},(0,_dom.getPropClass)(re,k),(0,_dom.getPropClass)(le,k),(0,_dom.getPropClass)(N,k)],key:B||Q.useKey?O:n},p),{style:Object.assign({height:D&&(_||C)?`${_||C}px`:""},_xeUtils.default.isFunction(R)?R(k):R,_xeUtils.default.isFunction(d)?d(k):d)}),S),r)},A=(x,m,f)=>{const{stripe:w,rowKey:y,highlightHoverRow:_,rowClassName:b,rowStyle:T,showOverflow:S,editConfig:C,treeConfig:O}=ue,{hasFixedColumn:L,treeExpandedMaps:R,scrollYLoad:H,rowExpandedMaps:$,expandColumn:E,selectRadioRow:M,pendingRowMaps:I,pendingRowList:D}=ce,k=de["fullAllDataRowIdData"],U=he.value,q=e.value,j=d.value,B=pe.value,N=ge.value,Y=j["transform"],W=j.children||j.childrenField,F=[];return m.forEach((t,o)=>{var e={};let r;r=ne.getRowIndex(t),(N.isHover||_)&&(e.onMouseenter=e=>{xe()||ne.triggerHoverEvent(e,{row:t,rowIndex:r})},e.onMouseleave=()=>{xe()||ne.clearHoverRow()});const a=(0,_util.getRowid)(ne,t);var l=k[a];let s=0,i=-1,n=0;l&&(s=l.level,i=l.seq,n=l._index);var u,c,d,l={$table:ne,seq:i,rowid:a,fixed:x,type:renderType,level:s,row:t,rowIndex:r,$rowIndex:o,_rowIndex:n},p=E&&!!$[a];let v=!1,h=[],g=!1;C&&(g=ne.isInsertByRow(t)),!O||H||Y||(h=t[W],v=h&&0<h.length&&!!R[a]),F.push((0,_vue.h)("tr",Object.assign({class:["vxe-body--row",O?"row--level-"+s:"",{"row--stripe":w&&(ne.getVTRowIndex(t)+1)%2==0,"is--new":g,"is--expand-row":p,"is--expand-tree":v,"row--new":g&&(B.showStatus||B.showInsertStatus),"row--radio":q.highlight&&ne.eqRow(M,t),"row--checked":U.highlight&&ne.isCheckedByCheckboxRow(t),"row--pending":D.length&&!!I[a]},(0,_dom.getPropClass)(b,l)],rowid:a,style:T?_xeUtils.default.isFunction(T)?T(l):T:null,key:y||N.useKey||O?a:o},e),f.map((e,l)=>P(i,a,x,s,t,r,o,n,e,l,f,m)))),p&&({height:l,padding:p}=V.value,u={},c=(l&&(u.height=l+"px"),O&&(u.paddingLeft=s*j.indent+30+"px"),E)["showOverflow"],c=_xeUtils.default.isUndefined(c)||_xeUtils.default.isNull(c)?S:c,d={$table:ne,seq:i,column:E,fixed:x,type:renderType,level:s,row:t,rowIndex:r,$rowIndex:o,_rowIndex:n},F.push((0,_vue.h)("tr",Object.assign({class:["vxe-body--expanded-row",{"is--padding":p}],key:"expand_"+a,style:T?_xeUtils.default.isFunction(T)?T(d):T:null},e),[(0,_vue.h)("td",{class:{"vxe-body--expanded-column":1,"fixed--hidden":x&&!L,"col--ellipsis":c},colspan:f.length},[(0,_vue.h)("div",{class:{"vxe-body--expanded-cell":1,"is--ellipsis":l},style:u},[E.renderData(d)])])]))),v&&F.push(...A(x,h,f))}),F};let r;const M=(e,l,t,o)=>{(t||o)&&(t&&((0,_util.removeScrollListener)(t),t.scrollTop=l),o&&((0,_util.removeScrollListener)(o),o.scrollTop=l),clearTimeout(r),r=setTimeout(()=>{(0,_util.restoreScrollListener)(t),(0,_util.restoreScrollListener)(o),ce.lastScrollTime=Date.now()},300))},o=e=>{var l=f["fixedType"],t=ue["highlightHoverRow"],{scrollXLoad:o,scrollYLoad:r}=ce,{elemStore:a,lastScrollTop:s,lastScrollLeft:i}=de,n=ge.value,u=_.value,c=b.value,d=q.value,p=T.value,v=S.value,h=j.value,g=C.value,u=u?u.$el:null,d=d?d.$el:null,c=c.$el,p=p?p.$el:null,v=v?v.$el:null,x=a["main-body-ySpace"],x=x?x.value:null,a=a["main-body-xSpace"],a=a?a.value:null,x=(r&&x?x:c).clientHeight,a=(o&&a?a:c).clientWidth;let m=g.scrollTop;g=c.scrollLeft,i=g!==i,s=m!==s;de.lastScrollTop=m,de.lastScrollLeft=g,ce.lastScrollTime=Date.now(),(n.isHover||t)&&ne.clearHoverRow(),p&&"left"===l?(m=p.scrollTop,M(0,m,c,v)):v&&"right"===l?(m=v.scrollTop,M(0,m,c,p)):(i&&(u&&(u.scrollLeft=c.scrollLeft),d)&&(d.scrollLeft=c.scrollLeft),(p||v)&&(ne.checkScrolling(),s)&&M(0,m,p,v)),o&&i&&ne.triggerScrollXEvent(e),r&&s&&ne.triggerScrollYEvent(e),i&&h&&h.reactData.visible&&h.updatePlacement(),ne.dispatchEvent("scroll",{type:renderType,fixed:l,scrollTop:m,scrollLeft:g,scrollHeight:c.scrollHeight,scrollWidth:c.scrollWidth,bodyHeight:x,bodyWidth:a,isX:i,isY:s},e)};let m,I=0,D=0,k=0,U=!1;const h=(r,a,e,s,i)=>{var l=de["elemStore"],{scrollXLoad:t,scrollYLoad:o}=ce,n=b.value,u=T.value,c=S.value;const d=u?u.$el:null,p=c?c.$el:null,v=n.$el;u=l["main-body-ySpace"],c=u?u.value:null,n=l["main-body-xSpace"],u=n?n.value:null;const h=(o&&c?c:v).clientHeight,g=(t&&u?u:v).clientWidth;l=U===a?Math.max(0,I-k):0;U=a,I=Math.abs(a?e-l:e+l),D=0,k=0,clearTimeout(m);const x=()=>{var e,l,t,o;k<I&&(e=f["fixedType"],{scrollTop:o,clientHeight:l,scrollHeight:t}=(D=Math.max(5,Math.floor(1.5*D)),(k+=D)>I&&(D-=k-I),v),o=o+D*(a?-1:1),v.scrollTop=o,d&&(d.scrollTop=o),p&&(p.scrollTop=o),(a?o<t-l:0<=o)&&(m=setTimeout(x,10)),ne.dispatchEvent("scroll",{type:renderType,fixed:e,scrollTop:v.scrollTop,scrollLeft:v.scrollLeft,scrollHeight:v.scrollHeight,scrollWidth:v.scrollWidth,bodyHeight:h,bodyWidth:g,isX:s,isY:i},r))};x()},W=e=>{var{deltaY:l,deltaX:t}=e,o=ue["highlightHoverRow"],r=ce["scrollYLoad"],{lastScrollTop:a,lastScrollLeft:s}=de,i=ge.value,n=b.value,u=C.value,n=n.$el,c=l<0;(c?u.scrollTop<=0:u.scrollTop>=u.scrollHeight-u.clientHeight)||(u=u.scrollTop+l,t=(n=n.scrollLeft+t)!==s,(s=u!==a)&&(e.preventDefault(),de.lastScrollTop=u,de.lastScrollLeft=n,ce.lastScrollTime=Date.now(),(i.isHover||o)&&ne.clearHoverRow(),h(e,c,l,t,s),r)&&ne.triggerScrollYEvent(e))};(0,_vue.onMounted)(()=>{(0,_vue.nextTick)(()=>{var e=f["fixedType"],l=de["elemStore"],e=`${e||"main"}-body-`,t=C.value;l[e+"wrapper"]=C,l[e+"table"]=O,l[e+"colgroup"]=L,l[e+"list"]=R,l[e+"xSpace"]=H,l[e+"ySpace"]=$,l[e+"emptyBlock"]=E,t&&(t.onscroll=o,t._onscroll=o)})}),(0,_vue.onBeforeUnmount)(()=>{var e=C.value;clearTimeout(m),e&&(e._onscroll=null,e.onscroll=null)}),(0,_vue.onUnmounted)(()=>{var e=f["fixedType"],l=de["elemStore"],e=`${e||"main"}-body-`;l[e+"wrapper"]=null,l[e+"table"]=null,l[e+"colgroup"]=null,l[e+"list"]=null,l[e+"xSpace"]=null,l[e+"ySpace"]=null,l[e+"emptyBlock"]=null});return()=>{let{fixedColumn:e,fixedType:l,tableColumn:t}=f;var{keyboardConfig:o,showOverflow:r,spanMethod:a,mouseConfig:s}=ue,{tableData:i,mergeList:n,scrollYLoad:u,isAllOverflow:c}=ce,d=de["visibleColumn"],p=y["slots"],v=ve.value,h=N.value,g=Y.value,x=B.value;l&&(t=ce.expandColumn||!(u||r&&c)||n.length||a||o&&g.isMerge?d:e);let m;u=p?p.empty:null;return m=u?ne.callSlot(u,{$table:ne,$grid:ne.xegrid}):(c=(r=h.name?renderer.get(h.name):null)?r.renderTableEmpty||r.renderTableEmptyView||r.renderEmpty:null)?(0,_vn.getSlotVNs)(c(h,{$table:ne})):ue.emptyText||getI18n("vxe.table.emptyText"),(0,_vue.h)("div",Object.assign({ref:C,class:["vxe-table--body-wrapper",l?`fixed-${l}--wrapper`:"body--wrapper"],xid:w},"wheel"===v.mode?{onWheel:W}:{}),[l?(0,_vue.createCommentVNode)():(0,_vue.h)("div",{ref:H,class:"vxe-body--x-space"}),(0,_vue.h)("div",{ref:$,class:"vxe-body--y-space"}),(0,_vue.h)("table",{ref:O,class:"vxe-table--body",xid:w,cellspacing:0,cellpadding:0,border:0},[(0,_vue.h)("colgroup",{ref:L},t.map((e,l)=>(0,_vue.h)("col",{name:e.id,key:l}))),(0,_vue.h)("tbody",{ref:R},A(l,i,t))]),(0,_vue.h)("div",{class:"vxe-table--checkbox-range"}),s&&x.area?(0,_vue.h)("div",{class:"vxe-table--cell-area"},[(0,_vue.h)("span",{class:"vxe-table--cell-main-area"},x.extension?[(0,_vue.h)("span",{class:"vxe-table--cell-main-area-btn",onMousedown(e){ne.triggerCellExtendMousedownEvent(e,{$table:ne,fixed:l,type:renderType})}})]:[]),(0,_vue.h)("span",{class:"vxe-table--cell-copy-area"}),(0,_vue.h)("span",{class:"vxe-table--cell-extend-area"}),(0,_vue.h)("span",{class:"vxe-table--cell-multi-area"}),(0,_vue.h)("span",{class:"vxe-table--cell-active-area"})]):null,l?null:(0,_vue.h)("div",{class:"vxe-table--empty-block",ref:E},[(0,_vue.h)("div",{class:"vxe-table--empty-content"},m)])])}}});
|
package/lib/table/src/footer.js
CHANGED
|
@@ -6,8 +6,12 @@ Object.defineProperty(exports, "__esModule", {
|
|
|
6
6
|
exports.default = void 0;
|
|
7
7
|
var _vue = require("vue");
|
|
8
8
|
var _xeUtils = _interopRequireDefault(require("xe-utils"));
|
|
9
|
+
var _ui = require("../../ui");
|
|
9
10
|
var _dom = require("../../ui/src/dom");
|
|
10
11
|
function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
|
|
12
|
+
const {
|
|
13
|
+
renderer
|
|
14
|
+
} = _ui.VxeUI;
|
|
11
15
|
const renderType = 'footer';
|
|
12
16
|
function mergeFooterMethod(mergeFooterList, _rowIndex, _columnIndex) {
|
|
13
17
|
for (let mIndex = 0; mIndex < mergeFooterList.length; mIndex++) {
|
|
@@ -247,13 +251,17 @@ var _default = exports.default = (0, _vue.defineComponent)({
|
|
|
247
251
|
showFooterOverflow,
|
|
248
252
|
footerAlign,
|
|
249
253
|
align,
|
|
250
|
-
footerClassName
|
|
254
|
+
footerClassName,
|
|
255
|
+
editRender,
|
|
256
|
+
cellRender
|
|
251
257
|
} = column;
|
|
258
|
+
const renderOpts = editRender || cellRender;
|
|
259
|
+
const compConf = renderOpts ? renderer.get(renderOpts.name) : null;
|
|
252
260
|
const showAllTip = tooltipOpts.showAll;
|
|
253
261
|
const isColGroup = column.children && column.children.length;
|
|
254
262
|
const fixedHiddenColumn = fixedType ? column.fixed !== fixedType && !isColGroup : column.fixed && overflowX;
|
|
255
263
|
const footOverflow = _xeUtils.default.eqNull(showFooterOverflow) ? allColumnFooterOverflow : showFooterOverflow;
|
|
256
|
-
const footAlign = footerAlign ||
|
|
264
|
+
const footAlign = footerAlign || (compConf ? compConf.tableFooterCellAlign : '') || allFooterAlign || align || (compConf ? compConf.tableCellAlign : '') || allAlign;
|
|
257
265
|
let showEllipsis = footOverflow === 'ellipsis';
|
|
258
266
|
const showTitle = footOverflow === 'title';
|
|
259
267
|
const showTooltip = footOverflow === true || footOverflow === 'tooltip';
|
|
@@ -1 +1 @@
|
|
|
1
|
-
"use strict";Object.defineProperty(exports,"__esModule",{value:!0}),exports.default=void 0;var _vue=require("vue"),_xeUtils=_interopRequireDefault(require("xe-utils")),_dom=require("../../ui/src/dom");function _interopRequireDefault(e){return e&&e.__esModule?e:{default:e}}const renderType="footer";function mergeFooterMethod(l,t,o){for(let e=0;e<l.length;e++){var{row:r,col:
|
|
1
|
+
"use strict";Object.defineProperty(exports,"__esModule",{value:!0}),exports.default=void 0;var _vue=require("vue"),_xeUtils=_interopRequireDefault(require("xe-utils")),_ui=require("../../ui"),_dom=require("../../ui/src/dom");function _interopRequireDefault(e){return e&&e.__esModule?e:{default:e}}const renderer=_ui.VxeUI["renderer"],renderType="footer";function mergeFooterMethod(l,t,o){for(let e=0;e<l.length;e++){var{row:r,col:n,rowspan:a,colspan:i}=l[e];if(-1<n&&-1<r&&a&&i){if(r===t&&n===o)return{rowspan:a,colspan:i};if(r<=t&&t<r+a&&n<=o&&o<n+i)return{rowspan:0,colspan:0}}}}var _default=exports.default=(0,_vue.defineComponent)({name:"VxeTableFooter",props:{footerTableData:{type:Array,default:()=>[]},tableColumn:{type:Array,default:()=>[]},fixedColumn:{type:Array,default:()=>[]},fixedType:{type:String,default:null}},setup(s){const q=(0,_vue.inject)("$xeTable",{}),{xID:n,props:a,reactData:u,internalData:c}=q,{refTableHeader:d,refTableBody:p,refValidTooltip:f}=q.getRefMaps(),{computeTooltipOpts:i,computeColumnOpts:v}=q.getComputeMaps(),x=(0,_vue.ref)(),m=(0,_vue.ref)(),g=(0,_vue.ref)(),_=(0,_vue.ref)(),b=(0,_vue.ref)(),R=e=>{var l=s["fixedType"],t=u["scrollXLoad"],o=c["lastScrollLeft"],r=f.value,n=d.value,a=p.value,n=n?n.$el:null,i=x.value,a=a.$el,i=i.scrollLeft,o=i!==o;c.lastScrollLeft=i,u.lastScrollTime=Date.now(),n&&(n.scrollLeft=i),a&&(a.scrollLeft=i),t&&o&&q.triggerScrollXEvent(e),o&&r&&r.reactData.visible&&r.updatePlacement(),q.dispatchEvent("scroll",{type:renderType,fixed:l,scrollTop:a.scrollTop,scrollLeft:i,isX:o,isY:!1},e)};(0,_vue.onMounted)(()=>{(0,_vue.nextTick)(()=>{var e=s["fixedType"],l=c["elemStore"],e=`${e||"main"}-footer-`;l[e+"wrapper"]=x,l[e+"table"]=m,l[e+"colgroup"]=g,l[e+"list"]=_,l[e+"xSpace"]=b})}),(0,_vue.onUnmounted)(()=>{var e=s["fixedType"],l=c["elemStore"],e=`${e||"main"}-footer-`;l[e+"wrapper"]=null,l[e+"table"]=null,l[e+"colgroup"]=null,l[e+"list"]=null,l[e+"xSpace"]=null});return()=>{let{fixedType:y,fixedColumn:e,tableColumn:h,footerTableData:w}=s;const{footerRowClassName:l,footerCellClassName:T,footerRowStyle:t,footerCellStyle:C,footerAlign:I,footerSpanMethod:S,align:F,columnKey:$,showFooterOverflow:O}=a;var o=c["visibleColumn"];const{scrollXLoad:D,overflowX:L,scrollbarWidth:r,currentColumn:M,mergeFooterList:j}=u,A=i.value,k=v.value;return y&&(h=u.expandColumn||!D&&!O||j.length&&S?o:e),(0,_vue.h)("div",{ref:x,class:["vxe-table--footer-wrapper",y?`fixed-${y}--wrapper`:"body--wrapper"],xid:n,onScroll:R},[y?(0,_vue.createCommentVNode)():(0,_vue.h)("div",{ref:b,class:"vxe-body--x-space"}),(0,_vue.h)("table",{ref:m,class:"vxe-table--footer",xid:n,cellspacing:0,cellpadding:0,border:0},[(0,_vue.h)("colgroup",{ref:g},h.map((e,l)=>(0,_vue.h)("col",{name:e.id,key:l})).concat(r?[(0,_vue.h)("col",{name:"col_gutter"})]:[])),(0,_vue.h)("tfoot",{ref:_},w.map((g,_)=>{const b=_;var e={$table:q,row:g,_rowIndex:_,$rowIndex:b,fixed:y,type:renderType};return(0,_vue.h)("tr",{class:["vxe-footer--row",l?_xeUtils.default.isFunction(l)?l(e):l:""],style:t?_xeUtils.default.isFunction(t)?t(e):t:null},h.map((l,e)=>{var{type:t,showFooterOverflow:o,footerAlign:r,align:n,footerClassName:a,editRender:i,cellRender:s}=l,i=i||s,s=i?renderer.get(i.name):null;const u=A.showAll;i=l.children&&l.children.length,i=y?l.fixed!==y&&!i:l.fixed&&L,o=_xeUtils.default.eqNull(o)?O:o,r=r||(s?s.tableFooterCellAlign:"")||I||n||(s?s.tableCellAlign:"")||F;let c="ellipsis"===o;const d="title"===o,p=!0===o||"tooltip"===o;let f=d||p||c;var n={colid:l.id},s={},o=q.getColumnIndex(l),v=q.getVTColumnIndex(l),x=v;const m={$table:q,$grid:q.xegrid,row:g,rowIndex:_,_rowIndex:_,$rowIndex:b,column:l,columnIndex:o,$columnIndex:e,_columnIndex:v,itemIndex:x,items:g,fixed:y,type:renderType,data:w};if(D&&!f&&(c=f=!0),(d||p||u)&&(s.onMouseenter=e=>{d?(0,_dom.updateCellTitle)(e.currentTarget,l):(p||u)&&q.triggerFooterTooltipEvent(e,m)}),(p||u)&&(s.onMouseleave=e=>{(p||u)&&q.handleTargetLeaveEvent(e)}),s.onClick=e=>{q.dispatchEvent("footer-cell-click",Object.assign({cell:e.currentTarget},m),e)},s.onDblclick=e=>{q.dispatchEvent("footer-cell-dblclick",Object.assign({cell:e.currentTarget},m),e)},j.length){o=mergeFooterMethod(j,_,v);if(o){var{rowspan:x,colspan:v}=o;if(!x||!v)return null;1<x&&(n.rowspan=x),1<v&&(n.colspan=v)}}else if(S){var{rowspan:o=1,colspan:x=1}=S(m)||{};if(!o||!x)return null;1<o&&(n.rowspan=o),1<x&&(n.colspan=x)}return(0,_vue.h)("td",Object.assign(Object.assign(Object.assign(Object.assign({class:["vxe-footer--column",l.id,{["col--"+r]:r,["col--"+t]:t,"col--last":e===h.length-1,"fixed--hidden":i,"col--ellipsis":f,"col--current":M===l},(0,_dom.getPropClass)(a,m),(0,_dom.getPropClass)(T,m)]},n),{style:C?_xeUtils.default.isFunction(C)?C(m):C:null}),s),{key:$||k.useKey?l.id:e}),[(0,_vue.h)("div",{class:["vxe-cell",{"c--title":d,"c--tooltip":p,"c--ellipsis":c}]},l.renderFooter(m))])}).concat(r?[(0,_vue.h)("td",{class:"vxe-footer--gutter col--gutter"})]:[]))}))])])}}});
|
package/lib/table/src/header.js
CHANGED
|
@@ -6,9 +6,13 @@ Object.defineProperty(exports, "__esModule", {
|
|
|
6
6
|
exports.default = void 0;
|
|
7
7
|
var _vue = require("vue");
|
|
8
8
|
var _xeUtils = _interopRequireDefault(require("xe-utils"));
|
|
9
|
+
var _ui = require("../../ui");
|
|
9
10
|
var _util = require("./util");
|
|
10
11
|
var _dom = require("../../ui/src/dom");
|
|
11
12
|
function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
|
|
13
|
+
const {
|
|
14
|
+
renderer
|
|
15
|
+
} = _ui.VxeUI;
|
|
12
16
|
const renderType = 'header';
|
|
13
17
|
var _default = exports.default = (0, _vue.defineComponent)({
|
|
14
18
|
name: 'VxeTableHeader',
|
|
@@ -285,13 +289,17 @@ var _default = exports.default = (0, _vue.defineComponent)({
|
|
|
285
289
|
showHeaderOverflow,
|
|
286
290
|
headerAlign,
|
|
287
291
|
align,
|
|
288
|
-
headerClassName
|
|
292
|
+
headerClassName,
|
|
293
|
+
editRender,
|
|
294
|
+
cellRender
|
|
289
295
|
} = column;
|
|
290
296
|
const colid = column.id;
|
|
297
|
+
const renderOpts = editRender || cellRender;
|
|
298
|
+
const compConf = renderOpts ? renderer.get(renderOpts.name) : null;
|
|
291
299
|
const isColGroup = column.children && column.children.length;
|
|
292
300
|
const fixedHiddenColumn = fixedType ? column.fixed !== fixedType && !isColGroup : !!column.fixed && overflowX;
|
|
293
301
|
const headOverflow = _xeUtils.default.eqNull(showHeaderOverflow) ? allColumnHeaderOverflow : showHeaderOverflow;
|
|
294
|
-
const headAlign = headerAlign ||
|
|
302
|
+
const headAlign = headerAlign || (compConf ? compConf.tableHeaderCellAlign : '') || allHeaderAlign || align || (compConf ? compConf.tableCellAlign : '') || allAlign;
|
|
295
303
|
let showEllipsis = headOverflow === 'ellipsis';
|
|
296
304
|
const showTitle = headOverflow === 'title';
|
|
297
305
|
const showTooltip = headOverflow === true || headOverflow === 'tooltip';
|
|
@@ -1 +1 @@
|
|
|
1
|
-
"use strict";Object.defineProperty(exports,"__esModule",{value:!0}),exports.default=void 0;var _vue=require("vue"),_xeUtils=_interopRequireDefault(require("xe-utils")),_util=require("./util"),_dom=require("../../ui/src/dom");function _interopRequireDefault(e){return e&&e.__esModule?e:{default:e}}const renderType="header";var _default=exports.default=(0,_vue.defineComponent)({name:"VxeTableHeader",props:{tableData:Array,tableColumn:Array,tableGroupColumn:Array,fixedColumn:Array,fixedType:{type:String,default:null}},setup(
|
|
1
|
+
"use strict";Object.defineProperty(exports,"__esModule",{value:!0}),exports.default=void 0;var _vue=require("vue"),_xeUtils=_interopRequireDefault(require("xe-utils")),_ui=require("../../ui"),_util=require("./util"),_dom=require("../../ui/src/dom");function _interopRequireDefault(e){return e&&e.__esModule?e:{default:e}}const renderer=_ui.VxeUI["renderer"],renderType="header";var _default=exports.default=(0,_vue.defineComponent)({name:"VxeTableHeader",props:{tableData:Array,tableColumn:Array,tableGroupColumn:Array,fixedColumn:Array,fixedType:{type:String,default:null}},setup(H){const I=(0,_vue.inject)("$xeTable",{}),{xID:s,props:d,reactData:U,internalData:k}=I,{refElem:M,refTableBody:z,refLeftContainer:R,refRightContainer:S,refCellResizeBar:$}=I.getRefMaps(),c=I.getComputeMaps()["computeColumnOpts"],f=(0,_vue.ref)([]),A=(0,_vue.ref)(),p=(0,_vue.ref)(),v=(0,_vue.ref)(),m=(0,_vue.ref)(),h=(0,_vue.ref)(),x=(0,_vue.ref)(),t=()=>{var e=U["isGroup"];f.value=e?(0,_util.convertHeaderColumnToRows)(H.tableGroupColumn):[]},O=(e,t)=>{const r=t["column"],a=H["fixedType"];var l=z.value;const n=R.value,o=S.value,i=$.value,u=e["clientX"];var s=A.value,d=e.target;const c=t.cell=d.parentNode;let f=0;const p=l.$el;l=(0,_dom.getOffsetPos)(d,s),s=d.clientWidth,d=Math.floor(s/2);const v=(0,_util.getColReMinWidth)(t)-d;let m=l.left-c.clientWidth+s+v,h=l.left+d;const x=document.onmousemove,_=document.onmouseup,g="left"===a,b="right"===a,C=M.value;let y=0;if(g||b){var w=g?"nextElementSibling":"previousElementSibling";let e=c[w];for(;e&&!(0,_dom.hasClass)(e,"fixed--hidden");)(0,_dom.hasClass)(e,"col--group")||(y+=e.offsetWidth),e=e[w];b&&o&&(h=o.offsetLeft+y)}function T(e){e.stopPropagation(),e.preventDefault(),e=e.clientX-u;let l=h+e;e=a?0:p.scrollLeft,g?l=Math.min(l,(o?o.offsetLeft:p.clientWidth)-y-v):b?(m=(n?n.clientWidth:0)+y+v,l=Math.min(l,h+c.clientWidth-v)):m=Math.max(p.scrollLeft,m),f=Math.max(l,m),i.style.left=f-e+"px"}U._isResize=!0,(0,_dom.addClass)(C,"drag--resize"),i.style.display="block",document.onmousemove=T,document.onmouseup=function(e){document.onmousemove=x,document.onmouseup=_;const l=r.renderWidth+(b?h-f:f-h);r.resizeWidth=l,i.style.display="none",U._isResize=!1,k._lastResizeTime=Date.now(),I.analyColumnWidth(),I.recalculate(!0).then(()=>{I.saveCustomStore("update:visible"),I.updateCellAreas(),I.dispatchEvent("resizable-change",Object.assign(Object.assign({},t),{resizeWidth:l}),e),setTimeout(()=>I.recalculate(!0),300)}),(0,_dom.removeClass)(C,"drag--resize")},T(e),I.closeMenu&&I.closeMenu()};(0,_vue.watch)(()=>H.tableColumn,t),(0,_vue.onMounted)(()=>{(0,_vue.nextTick)(()=>{var e=H["fixedType"],l=I["internalData"],l=l["elemStore"],e=`${e||"main"}-header-`;l[e+"wrapper"]=A,l[e+"table"]=p,l[e+"colgroup"]=v,l[e+"list"]=m,l[e+"xSpace"]=h,l[e+"repair"]=x,t()})}),(0,_vue.onUnmounted)(()=>{var e=H["fixedType"],l=I["internalData"],l=l["elemStore"],e=`${e||"main"}-header-`;l[e+"wrapper"]=null,l[e+"table"]=null,l[e+"colgroup"]=null,l[e+"list"]=null,l[e+"xSpace"]=null,l[e+"repair"]=null});return()=>{const{fixedType:_,fixedColumn:e,tableColumn:l}=H,{resizable:g,border:b,columnKey:C,headerRowClassName:t,headerCellClassName:y,headerRowStyle:r,headerCellStyle:w,showHeaderOverflow:T,headerAlign:M,align:z,mouseConfig:R}=d,{isGroup:a,currentColumn:S,scrollXLoad:$,overflowX:D,scrollbarWidth:n}=U;var o=k["visibleColumn"];const W=c.value;let i=f.value,u=l;return a?u=o:(_&&($||T)&&(u=e),i=[u]),(0,_vue.h)("div",{ref:A,class:["vxe-table--header-wrapper",_?`fixed-${_}--wrapper`:"body--wrapper"],xid:s},[_?(0,_vue.createCommentVNode)():(0,_vue.h)("div",{ref:h,class:"vxe-body--x-space"}),(0,_vue.h)("table",{ref:p,class:"vxe-table--header",xid:s,cellspacing:0,cellpadding:0,border:0},[(0,_vue.h)("colgroup",{ref:v},u.map((e,l)=>(0,_vue.h)("col",{name:e.id,key:l})).concat(n?[(0,_vue.h)("col",{name:"col_gutter"})]:[])),(0,_vue.h)("thead",{ref:m},i.map((h,x)=>(0,_vue.h)("tr",{class:["vxe-header--row",t?_xeUtils.default.isFunction(t)?t({$table:I,$rowIndex:x,fixed:_,type:renderType}):t:""],style:r?_xeUtils.default.isFunction(r)?r({$table:I,$rowIndex:x,fixed:_,type:renderType}):r:null},h.map((e,l)=>{var{type:t,showHeaderOverflow:r,headerAlign:a,align:n,headerClassName:o,editRender:i,cellRender:u}=e,s=e.id,i=i||u,u=i?renderer.get(i.name):null,i=e.children&&e.children.length,d=_?e.fixed!==_&&!i:!!e.fixed&&D,r=_xeUtils.default.eqNull(r)?T:r,a=a||(u?u.tableHeaderCellAlign:"")||M||n||(u?u.tableCellAlign:"")||z;let c="ellipsis"===r;n="title"===r,u=!0===r||"tooltip"===r;let f=n||u||c;var r=e.filters&&e.filters.some(e=>e.checked),p=I.getColumnIndex(e),v=I.getVTColumnIndex(e);const m={$table:I,$grid:I.xegrid,$rowIndex:x,column:e,columnIndex:p,$columnIndex:l,_columnIndex:v,fixed:_,type:renderType,isHidden:d,hasFilter:r};p={onClick:e=>I.triggerHeaderCellClickEvent(e,m),onDblclick:e=>I.triggerHeaderCellDblclickEvent(e,m)};return $&&!f&&(c=f=!0),R&&(p.onMousedown=e=>I.triggerHeaderCellMousedownEvent(e,m)),(0,_vue.h)("th",Object.assign(Object.assign({class:["vxe-header--column",s,{["col--"+a]:a,["col--"+t]:t,"col--last":l===h.length-1,"col--fixed":e.fixed,"col--group":i,"col--ellipsis":f,"fixed--hidden":d,"is--sortable":e.sortable,"col--filter":!!e.filters,"is--filter-active":r,"col--current":S===e},o?_xeUtils.default.isFunction(o)?o(m):o:"",y?_xeUtils.default.isFunction(y)?y(m):y:""],colid:s,colspan:1<e.colSpan?e.colSpan:null,rowspan:1<e.rowSpan?e.rowSpan:null,style:w?_xeUtils.default.isFunction(w)?w(m):w:null},p),{key:C||W.useKey||i?s:l}),[(0,_vue.h)("div",{class:["vxe-cell",{"c--title":n,"c--tooltip":u,"c--ellipsis":c}]},e.renderHeader(m)),d||i||!(_xeUtils.default.isBoolean(e.resizable)?e.resizable:W.resizable||g)?null:(0,_vue.h)("div",{class:["vxe-resizable",{"is--line":!b||"none"===b}],onMousedown:e=>O(e,m)})])}).concat(n?[(0,_vue.h)("th",{class:"vxe-header--gutter col--gutter"})]:[]))))]),(0,_vue.h)("div",{ref:x,class:"vxe-table--header-border-line"})])}}});
|
package/lib/ui/index.js
CHANGED
|
@@ -13,9 +13,9 @@ Object.defineProperty(exports, "VxeUI", {
|
|
|
13
13
|
exports.version = exports.validators = exports.use = exports.t = exports.setup = exports.setTheme = exports.setLanguage = exports.setIcon = exports.setI18n = exports.setConfig = exports.saveFile = exports.renderer = exports.readFile = exports.print = exports.modal = exports.menus = exports.log = exports.interceptor = exports.hooks = exports.globalResize = exports.globalEvents = exports.getTheme = exports.getIcon = exports.getI18n = exports.getConfig = exports.formats = exports.default = exports.config = exports.commands = exports.clipboard = exports._t = void 0;
|
|
14
14
|
var _core = require("@vxe-ui/core");
|
|
15
15
|
var _utils = require("./src/utils");
|
|
16
|
-
const version = exports.version = "4.7.
|
|
16
|
+
const version = exports.version = "4.7.93";
|
|
17
17
|
_core.VxeUI.version = version;
|
|
18
|
-
_core.VxeUI.tableVersion = "4.7.
|
|
18
|
+
_core.VxeUI.tableVersion = "4.7.93";
|
|
19
19
|
_core.VxeUI.setConfig({
|
|
20
20
|
emptyCell: ' ',
|
|
21
21
|
table: {
|
package/lib/ui/index.min.js
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
"use strict";Object.defineProperty(exports,"__esModule",{value:!0}),exports.VXETable=void 0,Object.defineProperty(exports,"VxeUI",{enumerable:!0,get:function(){return _core.VxeUI}}),exports.version=exports.validators=exports.use=exports.t=exports.setup=exports.setTheme=exports.setLanguage=exports.setIcon=exports.setI18n=exports.setConfig=exports.saveFile=exports.renderer=exports.readFile=exports.print=exports.modal=exports.menus=exports.log=exports.interceptor=exports.hooks=exports.globalResize=exports.globalEvents=exports.getTheme=exports.getIcon=exports.getI18n=exports.getConfig=exports.formats=exports.default=exports.config=exports.commands=exports.clipboard=exports._t=void 0;var _core=require("@vxe-ui/core"),_utils=require("./src/utils");const version=exports.version="4.7.
|
|
1
|
+
"use strict";Object.defineProperty(exports,"__esModule",{value:!0}),exports.VXETable=void 0,Object.defineProperty(exports,"VxeUI",{enumerable:!0,get:function(){return _core.VxeUI}}),exports.version=exports.validators=exports.use=exports.t=exports.setup=exports.setTheme=exports.setLanguage=exports.setIcon=exports.setI18n=exports.setConfig=exports.saveFile=exports.renderer=exports.readFile=exports.print=exports.modal=exports.menus=exports.log=exports.interceptor=exports.hooks=exports.globalResize=exports.globalEvents=exports.getTheme=exports.getIcon=exports.getI18n=exports.getConfig=exports.formats=exports.default=exports.config=exports.commands=exports.clipboard=exports._t=void 0;var _core=require("@vxe-ui/core"),_utils=require("./src/utils");const version=exports.version="4.7.93",iconPrefix=(_core.VxeUI.version=version,_core.VxeUI.tableVersion="4.7.93",_core.VxeUI.setConfig({emptyCell:" ",table:{fit:!0,showHeader:!0,animat:!0,delayHover:250,autoResize:!0,padding:!0,minHeight:144,resizeConfig:{refreshDelay:250},radioConfig:{strict:!0},checkboxConfig:{strict:!0},tooltipConfig:{enterable:!0},validConfig:{showMessage:!0,autoClear:!0,autoPos:!0,message:"inline",msgMode:"single"},columnConfig:{maxFixedSize:4},customConfig:{allowVisible:!0,allowResizable:!0,allowFixed:!0,allowSort:!0,showFooter:!0,placement:"top-right",modalOptions:{showMaximize:!0,mask:!0,lockView:!0,resize:!0,escClosable:!0}},sortConfig:{showIcon:!0,iconLayout:"vertical"},filterConfig:{showIcon:!0},treeConfig:{rowField:"id",parentField:"parentId",childrenField:"children",hasChildField:"hasChild",mapChildrenField:"_X_ROW_CHILD",indent:20,showIcon:!0},expandConfig:{showIcon:!0},editConfig:{showIcon:!0,showAsterisk:!0,autoFocus:!0},importConfig:{_typeMaps:{csv:1,html:1,xml:1,txt:1}},exportConfig:{_typeMaps:{csv:1,html:1,xml:1,txt:1}},printConfig:{},mouseConfig:{extension:!0},keyboardConfig:{isEsc:!0},areaConfig:{autoClear:!0,selectCellByHeader:!0},clipConfig:{isCopy:!0,isCut:!0,isPaste:!0},fnrConfig:{isFind:!0,isReplace:!0},scrollX:{gt:60},scrollY:{gt:100}},grid:{formConfig:{enabled:!0},pagerConfig:{enabled:!0},toolbarConfig:{enabled:!0},proxyConfig:{enabled:!0,autoLoad:!0,showResponseMsg:!0,showActiveMsg:!0,props:{list:null,result:"result",total:"page.total",message:"message"}}},toolbar:{}}),"vxe-table-icon-"),setTheme=(_core.VxeUI.setIcon({TABLE_SORT_ASC:iconPrefix+"caret-up",TABLE_SORT_DESC:iconPrefix+"caret-down",TABLE_FILTER_NONE:iconPrefix+"funnel",TABLE_FILTER_MATCH:iconPrefix+"funnel",TABLE_EDIT:iconPrefix+"edit",TABLE_TITLE_PREFIX:iconPrefix+"question-circle-fill",TABLE_TITLE_SUFFIX:iconPrefix+"question-circle-fill",TABLE_TREE_LOADED:iconPrefix+"spinner roll",TABLE_TREE_OPEN:iconPrefix+"caret-right rotate90",TABLE_TREE_CLOSE:iconPrefix+"caret-right",TABLE_EXPAND_LOADED:iconPrefix+"spinner roll",TABLE_EXPAND_OPEN:iconPrefix+"arrow-right rotate90",TABLE_EXPAND_CLOSE:iconPrefix+"arrow-right",TABLE_CHECKBOX_CHECKED:iconPrefix+"checkbox-checked-fill",TABLE_CHECKBOX_UNCHECKED:iconPrefix+"checkbox-unchecked",TABLE_CHECKBOX_INDETERMINATE:iconPrefix+"checkbox-indeterminate-fill",TABLE_RADIO_CHECKED:iconPrefix+"radio-checked-fill",TABLE_RADIO_UNCHECKED:iconPrefix+"radio-unchecked",TABLE_CUSTOM_SORT:iconPrefix+"drag-handle",TABLE_MENU_OPTIONS:iconPrefix+"arrow-right",TOOLBAR_TOOLS_REFRESH:iconPrefix+"repeat",TOOLBAR_TOOLS_REFRESH_LOADING:iconPrefix+"repeat roll",TOOLBAR_TOOLS_IMPORT:iconPrefix+"upload",TOOLBAR_TOOLS_EXPORT:iconPrefix+"download",TOOLBAR_TOOLS_PRINT:iconPrefix+"print",TOOLBAR_TOOLS_FULLSCREEN:iconPrefix+"fullscreen",TOOLBAR_TOOLS_MINIMIZE:iconPrefix+"minimize",TOOLBAR_TOOLS_CUSTOM:iconPrefix+"custom-column",TOOLBAR_TOOLS_FIXED_LEFT:iconPrefix+"fixed-left",TOOLBAR_TOOLS_FIXED_LEFT_ACTIVE:iconPrefix+"fixed-left-fill",TOOLBAR_TOOLS_FIXED_RIGHT:iconPrefix+"fixed-right",TOOLBAR_TOOLS_FIXED_RIGHT_ACTIVE:iconPrefix+"fixed-right-fill"}),exports.setTheme=_core.VxeUI.setTheme),getTheme=exports.getTheme=_core.VxeUI.getTheme,setConfig=exports.setConfig=_core.VxeUI.setConfig,getConfig=exports.getConfig=_core.VxeUI.getConfig,setIcon=exports.setIcon=_core.VxeUI.setIcon,getIcon=exports.getIcon=_core.VxeUI.getIcon,setLanguage=exports.setLanguage=_core.VxeUI.setLanguage,setI18n=exports.setI18n=_core.VxeUI.setI18n,getI18n=exports.getI18n=_core.VxeUI.getI18n,globalEvents=exports.globalEvents=_core.VxeUI.globalEvents,globalResize=exports.globalResize=_core.VxeUI.globalResize,renderer=exports.renderer=_core.VxeUI.renderer,validators=exports.validators=_core.VxeUI.validators,menus=exports.menus=_core.VxeUI.menus,formats=exports.formats=_core.VxeUI.formats,commands=exports.commands=_core.VxeUI.commands,interceptor=exports.interceptor=_core.VxeUI.interceptor,clipboard=exports.clipboard=_core.VxeUI.clipboard,log=exports.log=_core.VxeUI.log,hooks=exports.hooks=_core.VxeUI.hooks,use=exports.use=_core.VxeUI.use,setup=e=>_core.VxeUI.setConfig(e),config=(exports.setup=setup,_core.VxeUI.setup=setup,e=>_core.VxeUI.setConfig(e)),t=(exports.config=config,_core.VxeUI.config=config,(e,o)=>_core.VxeUI.getI18n(e,o)),_t=(exports.t=t,_core.VxeUI.t=t,(e,o)=>(0,_utils.getFuncText)(e,o)),VXETable=(exports._t=_t,_core.VxeUI._t=_t,exports.VXETable=_core.VxeUI),saveFile=e=>_core.VxeUI.saveFile(e),readFile=(exports.saveFile=saveFile,e=>_core.VxeUI.readFile(e)),print=(exports.readFile=readFile,e=>_core.VxeUI.print(e)),modal=(exports.print=print,exports.modal={get(e){return _core.VxeUI.modal.get(e)},close(e){return _core.VxeUI.modal.close(e)},open(e){return _core.VxeUI.modal.open(e)},alert(e,o,r){return _core.VxeUI.modal.alert(e,o,r)},confirm(e,o,r){return _core.VxeUI.modal.confirm(e,o,r)},message(e,o){return _core.VxeUI.modal.message(e,o)},notification(e,o,r){return _core.VxeUI.modal.notification(e,o,r)}});var _default=exports.default=_core.VxeUI;
|
package/lib/ui/src/log.js
CHANGED
|
@@ -8,6 +8,6 @@ var _core = require("@vxe-ui/core");
|
|
|
8
8
|
const {
|
|
9
9
|
log
|
|
10
10
|
} = _core.VxeUI;
|
|
11
|
-
const version = `table v${"4.7.
|
|
11
|
+
const version = `table v${"4.7.93"}`;
|
|
12
12
|
const warnLog = exports.warnLog = log.create('warn', version);
|
|
13
13
|
const errLog = exports.errLog = log.create('error', version);
|
package/lib/ui/src/log.min.js
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
"use strict";Object.defineProperty(exports,"__esModule",{value:!0}),exports.warnLog=exports.errLog=void 0;var _core=require("@vxe-ui/core");const log=_core.VxeUI["log"],version="table v4.7.
|
|
1
|
+
"use strict";Object.defineProperty(exports,"__esModule",{value:!0}),exports.warnLog=exports.errLog=void 0;var _core=require("@vxe-ui/core");const log=_core.VxeUI["log"],version="table v4.7.93",warnLog=exports.warnLog=log.create("warn",version),errLog=exports.errLog=log.create("error",version);
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "vxe-table",
|
|
3
|
-
"version": "4.7.
|
|
3
|
+
"version": "4.7.93",
|
|
4
4
|
"description": "一个基于 vue 的 PC 端表格组件,支持增删改查、虚拟树、列拖拽,懒加载、快捷菜单、数据校验、树形结构、打印、导入导出、自定义模板、渲染器、JSON 配置式...",
|
|
5
5
|
"scripts": {
|
|
6
6
|
"update": "npm install --legacy-peer-deps",
|
|
@@ -28,7 +28,7 @@
|
|
|
28
28
|
"style": "lib/style.css",
|
|
29
29
|
"typings": "types/index.d.ts",
|
|
30
30
|
"dependencies": {
|
|
31
|
-
"vxe-pc-ui": "^4.2.
|
|
31
|
+
"vxe-pc-ui": "^4.2.26"
|
|
32
32
|
},
|
|
33
33
|
"devDependencies": {
|
|
34
34
|
"@types/resize-observer-browser": "^0.1.11",
|
|
@@ -320,6 +320,9 @@ export default {
|
|
|
320
320
|
fileTitle: 'Upload file'
|
|
321
321
|
}
|
|
322
322
|
},
|
|
323
|
+
empty: {
|
|
324
|
+
defText: 'No Data'
|
|
325
|
+
},
|
|
323
326
|
formDesign: {
|
|
324
327
|
formName: 'Form name',
|
|
325
328
|
defFormTitle: 'Unnamed form',
|
|
@@ -377,7 +380,9 @@ export default {
|
|
|
377
380
|
VxeRadioGroup: 'Radio',
|
|
378
381
|
VxeCheckboxGroup: 'Checkbox',
|
|
379
382
|
VxeUploadFile: 'File',
|
|
380
|
-
VxeUploadImage: 'Image'
|
|
383
|
+
VxeUploadImage: 'Image',
|
|
384
|
+
VxeRate: 'Rate',
|
|
385
|
+
VxeSlider: 'Slider'
|
|
381
386
|
}
|
|
382
387
|
},
|
|
383
388
|
widgetProp: {
|
|
@@ -320,6 +320,9 @@ export default {
|
|
|
320
320
|
fileTitle: 'Fájlok feltöltése'
|
|
321
321
|
}
|
|
322
322
|
},
|
|
323
|
+
empty: {
|
|
324
|
+
defText: '暂无数据'
|
|
325
|
+
},
|
|
323
326
|
formDesign: {
|
|
324
327
|
formName: 'forma neve',
|
|
325
328
|
defFormTitle: 'névtelen forma',
|
|
@@ -377,7 +380,9 @@ export default {
|
|
|
377
380
|
VxeRadioGroup: 'rádió gomb',
|
|
378
381
|
VxeCheckboxGroup: 'jelölőnégyzetet',
|
|
379
382
|
VxeUploadFile: 'dokumentum',
|
|
380
|
-
VxeUploadImage: 'kép'
|
|
383
|
+
VxeUploadImage: 'kép',
|
|
384
|
+
VxeRate: 'Rate',
|
|
385
|
+
VxeSlider: 'Slider'
|
|
381
386
|
}
|
|
382
387
|
},
|
|
383
388
|
widgetProp: {
|
|
@@ -320,6 +320,9 @@ export default {
|
|
|
320
320
|
fileTitle: '上传文件'
|
|
321
321
|
}
|
|
322
322
|
},
|
|
323
|
+
empty: {
|
|
324
|
+
defText: '暂无数据'
|
|
325
|
+
},
|
|
323
326
|
formDesign: {
|
|
324
327
|
formName: 'Form name',
|
|
325
328
|
defFormTitle: 'Unnamed form',
|
|
@@ -377,7 +380,9 @@ export default {
|
|
|
377
380
|
VxeRadioGroup: 'Radio',
|
|
378
381
|
VxeCheckboxGroup: 'Checkbox',
|
|
379
382
|
VxeUploadFile: 'File',
|
|
380
|
-
VxeUploadImage: 'Image'
|
|
383
|
+
VxeUploadImage: 'Image',
|
|
384
|
+
VxeRate: 'Rate',
|
|
385
|
+
VxeSlider: 'Slider'
|
|
381
386
|
}
|
|
382
387
|
},
|
|
383
388
|
widgetProp: {
|
|
@@ -320,6 +320,9 @@ export default {
|
|
|
320
320
|
fileTitle: '上传文件'
|
|
321
321
|
}
|
|
322
322
|
},
|
|
323
|
+
empty: {
|
|
324
|
+
defText: '暂无数据'
|
|
325
|
+
},
|
|
323
326
|
formDesign: {
|
|
324
327
|
formName: '表单名称',
|
|
325
328
|
defFormTitle: '未命名的表单',
|
|
@@ -377,7 +380,9 @@ export default {
|
|
|
377
380
|
VxeRadioGroup: '单选框',
|
|
378
381
|
VxeCheckboxGroup: '复选框',
|
|
379
382
|
VxeUploadFile: '文件',
|
|
380
|
-
VxeUploadImage: '图片'
|
|
383
|
+
VxeUploadImage: '图片',
|
|
384
|
+
VxeRate: '评分',
|
|
385
|
+
VxeSlider: '滑块'
|
|
381
386
|
}
|
|
382
387
|
},
|
|
383
388
|
widgetProp: {
|
|
@@ -320,6 +320,9 @@ export default {
|
|
|
320
320
|
fileTitle: '上传文件'
|
|
321
321
|
}
|
|
322
322
|
},
|
|
323
|
+
empty: {
|
|
324
|
+
defText: '暂无数据'
|
|
325
|
+
},
|
|
323
326
|
formDesign: {
|
|
324
327
|
formName: 'Form name',
|
|
325
328
|
defFormTitle: 'Unnamed form',
|
|
@@ -377,7 +380,9 @@ export default {
|
|
|
377
380
|
VxeRadioGroup: 'Radio',
|
|
378
381
|
VxeCheckboxGroup: 'Checkbox',
|
|
379
382
|
VxeUploadFile: 'File',
|
|
380
|
-
VxeUploadImage: 'Image'
|
|
383
|
+
VxeUploadImage: 'Image',
|
|
384
|
+
VxeRate: 'Rate',
|
|
385
|
+
VxeSlider: 'Slider'
|
|
381
386
|
}
|
|
382
387
|
},
|
|
383
388
|
widgetProp: {
|
|
@@ -320,6 +320,9 @@ export default {
|
|
|
320
320
|
fileTitle: 'Загрузить файлы'
|
|
321
321
|
}
|
|
322
322
|
},
|
|
323
|
+
empty: {
|
|
324
|
+
defText: '暂无数据'
|
|
325
|
+
},
|
|
323
326
|
formDesign: {
|
|
324
327
|
formName: 'имя формы',
|
|
325
328
|
defFormTitle: 'безымянная форма',
|
|
@@ -377,7 +380,9 @@ export default {
|
|
|
377
380
|
VxeRadioGroup: 'переключатель',
|
|
378
381
|
VxeCheckboxGroup: 'флажок',
|
|
379
382
|
VxeUploadFile: 'документ',
|
|
380
|
-
VxeUploadImage: 'картина'
|
|
383
|
+
VxeUploadImage: 'картина',
|
|
384
|
+
VxeRate: 'Rate',
|
|
385
|
+
VxeSlider: 'Slider'
|
|
381
386
|
}
|
|
382
387
|
},
|
|
383
388
|
widgetProp: {
|
|
@@ -320,6 +320,9 @@ export default {
|
|
|
320
320
|
fileTitle: '上传文件'
|
|
321
321
|
}
|
|
322
322
|
},
|
|
323
|
+
empty: {
|
|
324
|
+
defText: '暂无数据'
|
|
325
|
+
},
|
|
323
326
|
formDesign: {
|
|
324
327
|
formName: '表单名称',
|
|
325
328
|
defFormTitle: '未命名的表单',
|
|
@@ -377,7 +380,9 @@ export default {
|
|
|
377
380
|
VxeRadioGroup: '单选框',
|
|
378
381
|
VxeCheckboxGroup: '复选框',
|
|
379
382
|
VxeUploadFile: '文件',
|
|
380
|
-
VxeUploadImage: '图片'
|
|
383
|
+
VxeUploadImage: '图片',
|
|
384
|
+
VxeRate: '评分',
|
|
385
|
+
VxeSlider: '滑块'
|
|
381
386
|
}
|
|
382
387
|
},
|
|
383
388
|
widgetProp: {
|
|
@@ -320,6 +320,9 @@ export default {
|
|
|
320
320
|
fileTitle: '上传文件'
|
|
321
321
|
}
|
|
322
322
|
},
|
|
323
|
+
empty: {
|
|
324
|
+
defText: '暂无数据'
|
|
325
|
+
},
|
|
323
326
|
formDesign: {
|
|
324
327
|
formName: '表单名称',
|
|
325
328
|
defFormTitle: '未命名的表单',
|
|
@@ -377,7 +380,9 @@ export default {
|
|
|
377
380
|
VxeRadioGroup: '单选框',
|
|
378
381
|
VxeCheckboxGroup: '复选框',
|
|
379
382
|
VxeUploadFile: '文件',
|
|
380
|
-
VxeUploadImage: '图片'
|
|
383
|
+
VxeUploadImage: '图片',
|
|
384
|
+
VxeRate: '评分',
|
|
385
|
+
VxeSlider: '滑块'
|
|
381
386
|
}
|
|
382
387
|
},
|
|
383
388
|
widgetProp: {
|
|
@@ -320,6 +320,9 @@ export default {
|
|
|
320
320
|
fileTitle: '上傳文件'
|
|
321
321
|
}
|
|
322
322
|
},
|
|
323
|
+
empty: {
|
|
324
|
+
defText: '暂无数据'
|
|
325
|
+
},
|
|
323
326
|
formDesign: {
|
|
324
327
|
formName: '表單名稱',
|
|
325
328
|
defFormTitle: '未命名的表單',
|
|
@@ -377,7 +380,9 @@ export default {
|
|
|
377
380
|
VxeRadioGroup: '單選框',
|
|
378
381
|
VxeCheckboxGroup: '複選框',
|
|
379
382
|
VxeUploadFile: '文件',
|
|
380
|
-
VxeUploadImage: '圖片'
|
|
383
|
+
VxeUploadImage: '圖片',
|
|
384
|
+
VxeRate: '评分',
|
|
385
|
+
VxeSlider: '滑块'
|
|
381
386
|
}
|
|
382
387
|
},
|
|
383
388
|
widgetProp: {
|
|
@@ -320,6 +320,9 @@ export default {
|
|
|
320
320
|
fileTitle: '上传文件'
|
|
321
321
|
}
|
|
322
322
|
},
|
|
323
|
+
empty: {
|
|
324
|
+
defText: '暂无数据'
|
|
325
|
+
},
|
|
323
326
|
formDesign: {
|
|
324
327
|
formName: '表单名称',
|
|
325
328
|
defFormTitle: '未命名的表单',
|
|
@@ -377,7 +380,9 @@ export default {
|
|
|
377
380
|
VxeRadioGroup: '单选框',
|
|
378
381
|
VxeCheckboxGroup: '复选框',
|
|
379
382
|
VxeUploadFile: '文件',
|
|
380
|
-
VxeUploadImage: '图片'
|
|
383
|
+
VxeUploadImage: '图片',
|
|
384
|
+
VxeRate: '评分',
|
|
385
|
+
VxeSlider: '滑块'
|
|
381
386
|
}
|
|
382
387
|
},
|
|
383
388
|
widgetProp: {
|
|
@@ -161,7 +161,7 @@ export default defineComponent({
|
|
|
161
161
|
let hasEllipsis = showTitle || showTooltip || showEllipsis
|
|
162
162
|
let isDirty
|
|
163
163
|
const tdOns: any = {}
|
|
164
|
-
const cellAlign = align || allAlign
|
|
164
|
+
const cellAlign = align || (compConf ? compConf.tableCellAlign : '') || allAlign
|
|
165
165
|
const errorValidItem = validErrorMaps[`${rowid}:${colid}`]
|
|
166
166
|
const showValidTip = editRules && validOpts.showMessage && (validOpts.message === 'default' ? (height || tableData.length > 1) : validOpts.message === 'inline')
|
|
167
167
|
const attrs: any = { colid }
|
|
@@ -1,9 +1,12 @@
|
|
|
1
1
|
import { createCommentVNode, defineComponent, h, ref, Ref, PropType, inject, nextTick, onMounted, onUnmounted } from 'vue'
|
|
2
2
|
import XEUtils from 'xe-utils'
|
|
3
|
+
import { VxeUI } from '../../ui'
|
|
3
4
|
import { updateCellTitle, getPropClass } from '../../ui/src/dom'
|
|
4
5
|
|
|
5
6
|
import type { VxeTablePrivateMethods, VxeTableConstructor, VxeTableMethods, VxeColumnPropTypes, VxeTableDefines } from '../../../types'
|
|
6
7
|
|
|
8
|
+
const { renderer } = VxeUI
|
|
9
|
+
|
|
7
10
|
const renderType = 'footer'
|
|
8
11
|
|
|
9
12
|
function mergeFooterMethod (mergeFooterList: VxeTableDefines.MergeItem[], _rowIndex: number, _columnIndex: number) {
|
|
@@ -180,12 +183,14 @@ export default defineComponent({
|
|
|
180
183
|
class: ['vxe-footer--row', footerRowClassName ? XEUtils.isFunction(footerRowClassName) ? footerRowClassName(rowParams) : footerRowClassName : ''],
|
|
181
184
|
style: footerRowStyle ? (XEUtils.isFunction(footerRowStyle) ? footerRowStyle(rowParams) : footerRowStyle) : null
|
|
182
185
|
}, tableColumn.map((column, $columnIndex) => {
|
|
183
|
-
const { type, showFooterOverflow, footerAlign, align, footerClassName } = column
|
|
186
|
+
const { type, showFooterOverflow, footerAlign, align, footerClassName, editRender, cellRender } = column
|
|
187
|
+
const renderOpts = editRender || cellRender
|
|
188
|
+
const compConf = renderOpts ? renderer.get(renderOpts.name) : null
|
|
184
189
|
const showAllTip = tooltipOpts.showAll
|
|
185
190
|
const isColGroup = column.children && column.children.length
|
|
186
191
|
const fixedHiddenColumn = fixedType ? column.fixed !== fixedType && !isColGroup : column.fixed && overflowX
|
|
187
192
|
const footOverflow = XEUtils.eqNull(showFooterOverflow) ? allColumnFooterOverflow : showFooterOverflow
|
|
188
|
-
const footAlign = footerAlign ||
|
|
193
|
+
const footAlign = footerAlign || (compConf ? compConf.tableFooterCellAlign : '') || allFooterAlign || align || (compConf ? compConf.tableCellAlign : '') || allAlign
|
|
189
194
|
let showEllipsis = footOverflow === 'ellipsis'
|
|
190
195
|
const showTitle = footOverflow === 'title'
|
|
191
196
|
const showTooltip = footOverflow === true || footOverflow === 'tooltip'
|
|
@@ -1,10 +1,13 @@
|
|
|
1
1
|
import { createCommentVNode, defineComponent, h, ref, Ref, PropType, inject, nextTick, watch, onMounted, onUnmounted } from 'vue'
|
|
2
2
|
import XEUtils from 'xe-utils'
|
|
3
|
+
import { VxeUI } from '../../ui'
|
|
3
4
|
import { convertHeaderColumnToRows, getColReMinWidth } from './util'
|
|
4
5
|
import { hasClass, getOffsetPos, addClass, removeClass } from '../../ui/src/dom'
|
|
5
6
|
|
|
6
7
|
import type { VxeTablePrivateMethods, VxeTableConstructor, VxeTableMethods, VxeTableDefines, VxeColumnPropTypes } from '../../../types'
|
|
7
8
|
|
|
9
|
+
const { renderer } = VxeUI
|
|
10
|
+
|
|
8
11
|
const renderType = 'header'
|
|
9
12
|
|
|
10
13
|
export default defineComponent({
|
|
@@ -228,12 +231,14 @@ export default defineComponent({
|
|
|
228
231
|
class: ['vxe-header--row', headerRowClassName ? (XEUtils.isFunction(headerRowClassName) ? headerRowClassName({ $table: $xeTable, $rowIndex, fixed: fixedType, type: renderType }) : headerRowClassName) : ''],
|
|
229
232
|
style: headerRowStyle ? (XEUtils.isFunction(headerRowStyle) ? headerRowStyle({ $table: $xeTable, $rowIndex, fixed: fixedType, type: renderType }) : headerRowStyle) : null
|
|
230
233
|
}, cols.map((column, $columnIndex) => {
|
|
231
|
-
const { type, showHeaderOverflow, headerAlign, align, headerClassName } = column
|
|
234
|
+
const { type, showHeaderOverflow, headerAlign, align, headerClassName, editRender, cellRender } = column
|
|
232
235
|
const colid = column.id
|
|
236
|
+
const renderOpts = editRender || cellRender
|
|
237
|
+
const compConf = renderOpts ? renderer.get(renderOpts.name) : null
|
|
233
238
|
const isColGroup = column.children && column.children.length
|
|
234
239
|
const fixedHiddenColumn = fixedType ? (column.fixed !== fixedType && !isColGroup) : !!column.fixed && overflowX
|
|
235
240
|
const headOverflow = XEUtils.eqNull(showHeaderOverflow) ? allColumnHeaderOverflow : showHeaderOverflow
|
|
236
|
-
const headAlign = headerAlign ||
|
|
241
|
+
const headAlign = headerAlign || (compConf ? compConf.tableHeaderCellAlign : '') || allHeaderAlign || align || (compConf ? compConf.tableCellAlign : '') || allAlign
|
|
237
242
|
let showEllipsis = headOverflow === 'ellipsis'
|
|
238
243
|
const showTitle = headOverflow === 'title'
|
|
239
244
|
const showTooltip = headOverflow === true || headOverflow === 'tooltip'
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|