"use strict";Object.defineProperty(exports,"__esModule",{value:!0}),exports.default=void 0;var _xeUtils=_interopRequireDefault(require("xe-utils/methods/xe-utils")),_tools=require("../../tools");function _interopRequireDefault(e){return e&&e.__esModule?e:{default:e}}function _defineProperty(e,l,t){return l in e?Object.defineProperty(e,l,{value:t,enumerable:!0,configurable:!0,writable:!0}):e[l]=t,e}var _default={name:"PlxTableFooter",props:{footerData:Array,tableColumn:Array,visibleColumn:Array,fixedColumn:Array,size:String,fixedType:String},mounted:function(){var e=this.$parent,l=this.$el,t=this.$refs,o=this.fixedType,r=e.elemStore,n="".concat(o||"main","-footer-");r["".concat(n,"wrapper")]=l,r["".concat(n,"table")]=t.table,r["".concat(n,"colgroup")]=t.colgroup,r["".concat(n,"list")]=t.tfoot,r["".concat(n,"xSpace")]=t.xSpace},render:function(C){var e=this._e,S=this.$parent,U=this.fixedType,l=this.fixedColumn,P=this.tableColumn,k=this.footerData,L=S.$listeners,t=S.id,o=S.footerRowClassName,E=S.footerCellClassName,r=S.footerRowStyle,q=S.footerCellStyle,A=S.footerAlign,D=S.footerSpanMethod,F=S.align,n=S.scrollXLoad,O=S.columnKey,X=S.showOverflow,N=S.overflowX,i=S.scrollbarWidth,R=S.getColumnIndex;return U&&X?P=l:n&&U&&(P=l),C("div",{class:["plx-table--footer-wrapper",U?"fixed-".concat(U,"--wrapper"):"body--wrapper"],attrs:{"data-tid":t},on:{scroll:this.scrollEvent}},[U?e():C("div",{class:"plx-body--x-space",ref:"xSpace"}),C("table",{class:"plx-table--footer",attrs:{"data-tid":t,cellspacing:0,cellpadding:0,border:0},ref:"table"},[C("colgroup",{ref:"colgroup"},P.map(function(e,l){return C("col",{attrs:{name:e.id},key:l})}).concat(i?[C("col",{attrs:{name:"col_gutter"}})]:[])),C("tfoot",{ref:"tfoot"},k.map(function(I,T){return C("tr",{class:["plx-footer--row",o?_xeUtils.default.isFunction(o)?o({$table:S,$rowIndex:T,fixed:U}):o:""],style:r?_xeUtils.default.isFunction(r)?r({$table:S,$rowIndex:T,fixed:U}):r:null},P.map(function(l,t){var e,o=l.showOverflow,r=l.footerAlign,n=l.align,i=l.footerClassName,a=l.children&&l.children.length,c=U?l.fixed!==U&&!a:l.fixed&&N,s=_xeUtils.default.isUndefined(o)||_xeUtils.default.isNull(o)?X:o,d=r||n||A||F,f="title"===s,u=!0===s||"tooltip"===s,p=f||u||"ellipsis"===s,x={"data-colid":l.id},m={},b=R(l),$={$table:S,$rowIndex:T,column:l,columnIndex:b,$columnIndex:t,fixed:U};if((f||u)&&(m.mouseenter=function(e){f?_tools.DomTools.updateCellTitle(e):u&&S.triggerFooterTooltipEvent(e,{$table:S,$rowIndex:T,column:l,columnIndex:b,$columnIndex:t,fixed:U})}),u&&(m.mouseleave=function(e){u&&S.handleTargetLeaveEvent(e)}),L["header-cell-click"]&&(m.click=function(e){_tools.UtilTools.emitEvent(S,"header-cell-click",[{$table:S,$rowIndex:T,column:l,columnIndex:b,$columnIndex:t,fixed:U,cell:e.currentTarget},e])}),L["header-cell-dblclick"]&&(m.dblclick=function(e){_tools.UtilTools.emitEvent(S,"header-cell-dblclick",[{$table:S,$rowIndex:T,column:l,columnIndex:b,$columnIndex:t,fixed:U,cell:e.currentTarget},e])}),D){var v=D({$table:S,$rowIndex:T,column:l,columnIndex:b,$columnIndex:t,fixed:U,data:k})||{},y=v.rowspan,_=void 0===y?1:y,h=v.colspan,g=void 0===h?1:h;if(!_||!g)return null;x.rowspan=_,x.colspan=g}var w="seq"===l.type||"index"===l.type?"seq":l.type;return C("td",{class:["plx-footer--column",l.id,(_defineProperty(e={},"col--".concat(d),d),_defineProperty(e,"col--".concat(w),w),_defineProperty(e,"col--last",t===P.length-1),_defineProperty(e,"fixed--hidden",c),_defineProperty(e,"col--ellipsis",p),_defineProperty(e,"filter--active",l.filters&&l.filters.some(function(e){return e.checked})),e),_tools.UtilTools.getClass(i,$),_tools.UtilTools.getClass(E,$)],attrs:x,style:q?_xeUtils.default.isFunction(q)?q({$table:S,$rowIndex:T,column:l,columnIndex:b,$columnIndex:t,fixed:U}):q:null,on:m,key:O?l.id:b},[C("div",{class:"plx-cell"},_tools.UtilTools.formatText(I[S.tableColumn.indexOf(l)],1))])}).concat(i?[C("td",{class:"col--gutter"})]:[]))}))])])},methods:{scrollEvent:function(e){var l=this.$parent,t=this.fixedType,o=l.$refs,r=l.scrollXLoad,n=l.triggerScrollXEvent,i=l.lastScrollLeft,a=o.tableHeader,c=a?a.$el:null,s=o.tableBody.$el,d=o.tableFooter.$el.scrollLeft,f=d!==i;l.lastScrollLeft=d,l.lastScrollTime=Date.now(),c&&(c.scrollLeft=d),s&&(s.scrollLeft=d),r&&f&&n(e),_tools.UtilTools.emitEvent(l,"scroll",[{type:"footer",fixed:t,scrollTop:s.scrollTop,scrollLeft:d,isX:f,isY:!1,$table:l},e])}}};exports.default=_default;