primevue
Version:
[](https://opensource.org/licenses/MIT) [](https://badge.fury.io/js/primevue)
2 lines (1 loc) • 28.3 kB
JavaScript
import{ObjectUtils as e,DomHandler as t}from"primevue/utils";import{FilterService as l}from"primevue/api";import o from"primevue/ripple";import{resolveComponent as i,resolveDirective as n,openBlock as s,createBlock as r,Fragment as a,createVNode as d,renderList as c,withDirectives as h,createCommentVNode as u,resolveDynamicComponent as p,toDisplayString as m,renderSlot as f,createSlots as g,withCtx as y,createTextVNode as b}from"vue";import k from"primevue/paginator";var C={name:"sub-ttnode",emits:["node-click","node-toggle","checkbox-change","nodeClick","nodeToggle","checkboxChange"],props:{node:{type:null,default:null},parentNode:{type:null,default:null},columns:{type:null,default:null},expandedKeys:{type:null,default:null},selectionKeys:{type:null,default:null},selectionMode:{type:String,default:null},level:{type:Number,default:0},indentation:{type:Number,default:1}},data:()=>({checkboxFocused:!1}),nodeTouched:!1,methods:{columnProp:(e,t)=>e.props?e.type.props[t].type===Boolean&&""===e.props[t]||e.props[t]:null,resolveFieldData:(t,l)=>e.resolveFieldData(t,l),toggle(){this.$emit("node-toggle",this.node)},onClick(e){t.isClickable(e.target)||t.hasClass(e.target,"p-treetable-toggler")||t.hasClass(e.target.parentElement,"p-treetable-toggler")||(this.$emit("node-click",{originalEvent:e,nodeTouched:this.nodeTouched,node:this.node}),this.nodeTouched=!1)},onTouchEnd(){this.nodeTouched=!0},onKeyDown(e){if(e.target===this.$el){const t=this.$el;switch(e.which){case 40:{const l=t.nextElementSibling;l&&l.focus(),e.preventDefault();break}case 38:{const l=t.previousElementSibling;l&&l.focus(),e.preventDefault();break}case 37:case 39:this.leaf||(this.$emit("node-toggle",this.node),e.preventDefault());break;case 13:this.onClick(e),e.preventDefault()}}},toggleCheckbox(){let e=this.selectionKeys?{...this.selectionKeys}:{};const t=!this.checked;this.propagateDown(this.node,t,e),this.$emit("checkbox-change",{node:this.node,check:t,selectionKeys:e})},propagateDown(e,t,l){if(t?l[e.key]={checked:!0,partialChecked:!1}:delete l[e.key],e.children&&e.children.length)for(let o of e.children)this.propagateDown(o,t,l)},propagateUp(e){let t=e.check,l={...e.selectionKeys},o=0,i=!1;for(let e of this.node.children)l[e.key]&&l[e.key].checked?o++:l[e.key]&&l[e.key].partialChecked&&(i=!0);t&&o===this.node.children.length?l[this.node.key]={checked:!0,partialChecked:!1}:(t||delete l[this.node.key],i||o>0&&o!==this.node.children.length?l[this.node.key]={checked:!1,partialChecked:!0}:l[this.node.key]={checked:!1,partialChecked:!1}),this.$emit("checkbox-change",{node:e.node,check:e.check,selectionKeys:l})},onCheckboxFocus(){this.checkboxFocused=!0},onCheckboxBlur(){this.checkboxFocused=!1},onCheckboxChange(e){let t=e.check,l={...e.selectionKeys},o=0,i=!1;for(let e of this.node.children)l[e.key]&&l[e.key].checked?o++:l[e.key]&&l[e.key].partialChecked&&(i=!0);t&&o===this.node.children.length?l[this.node.key]={checked:!0,partialChecked:!1}:(t||delete l[this.node.key],i||o>0&&o!==this.node.children.length?l[this.node.key]={checked:!1,partialChecked:!0}:l[this.node.key]={checked:!1,partialChecked:!1}),this.$emit("checkbox-change",{node:e.node,check:e.check,selectionKeys:l})}},computed:{containerClass(){return[this.node.styleClass,{"p-highlight":this.selected}]},hasChildren(){return this.node.children&&this.node.children.length>0},expanded(){return this.expandedKeys&&!0===this.expandedKeys[this.node.key]},leaf(){return!1!==this.node.leaf&&!(this.node.children&&this.node.children.length)},selected(){return!(!this.selectionMode||!this.selectionKeys)&&!0===this.selectionKeys[this.node.key]},togglerIcon(){return["p-treetable-toggler-icon pi",{"pi-chevron-right":!this.expanded,"pi-chevron-down":this.expanded}]},togglerStyle(){return{marginLeft:this.level*this.indentation+"rem",visibility:this.leaf?"hidden":"visible"}},childLevel(){return this.level+1},checkboxSelectionMode(){return"checkbox"===this.selectionMode},checkboxClass(){return["p-checkbox-box",{"p-highlight":this.checked,"p-focus":this.checkboxFocused,"p-indeterminate":this.partialChecked}]},checkboxIcon(){return["p-checkbox-icon",{"pi pi-check":this.checked,"pi pi-minus":this.partialChecked}]},checked(){return!!this.selectionKeys&&(this.selectionKeys[this.node.key]&&this.selectionKeys[this.node.key].checked)},partialChecked(){return!!this.selectionKeys&&(this.selectionKeys[this.node.key]&&this.selectionKeys[this.node.key].partialChecked)}},directives:{ripple:o}};const S={class:"p-hidden-accessible"},x={key:3};C.render=function(e,t,l,o,f,g){const y=i("sub-ttnode"),b=n("ripple");return s(),r(a,null,[d("tr",{class:g.containerClass,onClick:t[5]||(t[5]=(...e)=>g.onClick&&g.onClick(...e)),onKeydown:t[6]||(t[6]=(...e)=>g.onKeyDown&&g.onKeyDown(...e)),onTouchend:t[7]||(t[7]=(...e)=>g.onTouchEnd&&g.onTouchEnd(...e)),style:l.node.style,tabindex:"0"},[(s(!0),r(a,null,c(l.columns,((e,o)=>(s(),r("td",{key:g.columnProp(e,"columnKey")||g.columnProp(e,"field")||o,style:g.columnProp(e,"bodyStyle"),class:g.columnProp(e,"bodyClass")},[g.columnProp(e,"expander")?h((s(),r("button",{key:0,type:"button",class:"p-treetable-toggler p-link",onClick:t[1]||(t[1]=(...e)=>g.toggle&&g.toggle(...e)),style:g.togglerStyle,tabindex:"-1"},[d("i",{class:g.togglerIcon},null,2)],4)),[[b]]):u("",!0),g.checkboxSelectionMode&&g.columnProp(e,"expander")?(s(),r("div",{key:1,class:"p-checkbox p-treetable-checkbox p-component",onClick:t[4]||(t[4]=(...e)=>g.toggleCheckbox&&g.toggleCheckbox(...e)),role:"checkbox","aria-checked":g.checked},[d("div",S,[d("input",{type:"checkbox",onFocus:t[2]||(t[2]=(...e)=>g.onCheckboxFocus&&g.onCheckboxFocus(...e)),onBlur:t[3]||(t[3]=(...e)=>g.onCheckboxBlur&&g.onCheckboxBlur(...e))},null,32)]),d("div",{ref:"checkboxEl",class:g.checkboxClass},[d("span",{class:g.checkboxIcon},null,2)],2)],8,["aria-checked"])):u("",!0),e.children&&e.children.body?(s(),r(p(e.children.body),{key:2,node:l.node,column:e},null,8,["node","column"])):(s(),r("span",x,m(g.resolveFieldData(l.node.data,g.columnProp(e,"field"))),1))],6)))),128))],38),g.expanded&&l.node.children&&l.node.children.length?(s(!0),r(a,{key:0},c(l.node.children,(o=>(s(),r(y,{key:o.key,columns:l.columns,node:o,parentNode:l.node,level:l.level+1,expandedKeys:l.expandedKeys,selectionMode:l.selectionMode,selectionKeys:l.selectionKeys,indentation:l.indentation,onNodeToggle:t[8]||(t[8]=t=>e.$emit("node-toggle",t)),onNodeClick:t[9]||(t[9]=t=>e.$emit("node-click",t)),onCheckboxChange:g.onCheckboxChange},null,8,["columns","node","parentNode","level","expandedKeys","selectionMode","selectionKeys","indentation","onCheckboxChange"])))),128)):u("",!0)],64)};var M={emits:["node-expand","node-collapse","update:expandedKeys","update:selectionKeys","node-select","node-unselect","update:first","update:rows","page","update:sortField","update:sortOrder","update:multiSortMeta","sort","filter","column-resize-end"],props:{value:{type:null,default:null},expandedKeys:{type:null,default:null},selectionKeys:{type:null,default:null},selectionMode:{type:String,default:null},metaKeySelection:{type:Boolean,default:!0},rows:{type:Number,default:0},first:{type:Number,default:0},totalRecords:{type:Number,default:0},paginator:{type:Boolean,default:!1},paginatorPosition:{type:String,default:"bottom"},alwaysShowPaginator:{type:Boolean,default:!0},paginatorTemplate:{type:String,default:"FirstPageLink PrevPageLink PageLinks NextPageLink LastPageLink RowsPerPageDropdown"},pageLinkSize:{type:Number,default:5},rowsPerPageOptions:{type:Array,default:null},currentPageReportTemplate:{type:String,default:"({currentPage} of {totalPages})"},lazy:{type:Boolean,default:!1},loading:{type:Boolean,default:!1},loadingIcon:{type:String,default:"pi pi-spinner"},rowHover:{type:Boolean,default:!1},autoLayout:{type:Boolean,default:!1},sortField:{type:[String,Function],default:null},sortOrder:{type:Number,default:null},defaultSortOrder:{type:Number,default:1},multiSortMeta:{type:Array,default:null},sortMode:{type:String,default:"single"},removableSort:{type:Boolean,default:!1},filters:{type:Object,default:null},filterMode:{type:String,default:"lenient"},filterLocale:{type:String,default:void 0},resizableColumns:{type:Boolean,default:!1},columnResizeMode:{type:String,default:"fit"},indentation:{type:Number,default:1},showGridlines:{type:Boolean,default:!1}},documentColumnResizeListener:null,documentColumnResizeEndListener:null,lastResizeHelperX:null,resizeColumnElement:null,data(){return{d_expandedKeys:this.expandedKeys||{},d_first:this.first,d_rows:this.rows,d_sortField:this.sortField,d_sortOrder:this.sortOrder,d_multiSortMeta:this.multiSortMeta?[...this.multiSortMeta]:[]}},watch:{expandedKeys(e){this.d_expandedKeys=e},first(e){this.d_first=e},rows(e){this.d_rows=e},sortField(e){this.d_sortField=e},sortOrder(e){this.d_sortOrder=e},multiSortMeta(e){this.d_multiSortMeta=e}},methods:{columnProp:(e,t)=>e.props?e.type.props[t].type===Boolean&&""===e.props[t]||e.props[t]:null,onNodeToggle(e){const t=e.key;this.d_expandedKeys[t]?(delete this.d_expandedKeys[t],this.$emit("node-collapse",e)):(this.d_expandedKeys[t]=!0,this.$emit("node-expand",e)),this.d_expandedKeys={...this.d_expandedKeys},this.$emit("update:expandedKeys",this.d_expandedKeys)},onNodeClick(e){if(this.rowSelectionMode&&!1!==e.node.selectable){const t=!e.nodeTouched&&this.metaKeySelection?this.handleSelectionWithMetaKey(e):this.handleSelectionWithoutMetaKey(e);this.$emit("update:selectionKeys",t)}},handleSelectionWithMetaKey(e){const t=e.originalEvent,l=e.node,o=t.metaKey||t.ctrlKey;let i;return this.isNodeSelected(l)&&o?(this.isSingleSelectionMode()?i={}:(i={...this.selectionKeys},delete i[l.key]),this.$emit("node-unselect",l)):(this.isSingleSelectionMode()?i={}:this.isMultipleSelectionMode()&&(i=o&&this.selectionKeys?{...this.selectionKeys}:{}),i[l.key]=!0,this.$emit("node-select",l)),i},handleSelectionWithoutMetaKey(e){const t=e.node,l=this.isNodeSelected(t);let o;return this.isSingleSelectionMode()?l?(o={},this.$emit("node-unselect",t)):(o={},o[t.key]=!0,this.$emit("node-select",t)):l?(o={...this.selectionKeys},delete o[t.key],this.$emit("node-unselect",t)):(o=this.selectionKeys?{...this.selectionKeys}:{},o[t.key]=!0,this.$emit("node-select",t)),o},onCheckboxChange(e){this.$emit("update:selectionKeys",e.selectionKeys),e.check?this.$emit("node-select",e.node):this.$emit("node-unselect",e.node)},isSingleSelectionMode(){return"single"===this.selectionMode},isMultipleSelectionMode(){return"multiple"===this.selectionMode},onPage(e){this.d_first=e.first,this.d_rows=e.rows;let t=this.createLazyLoadEvent(e);t.pageCount=e.pageCount,t.page=e.page,this.$emit("update:first",this.d_first),this.$emit("update:rows",this.d_rows),this.$emit("page",t)},resetPage(){this.d_first=0,this.$emit("update:first",this.d_first)},isMultiSorted(e){return this.columnProp(e,"sortable")&&this.getMultiSortMetaIndex(e)>-1},isColumnSorted(e){return!!this.columnProp(e,"sortable")&&("single"===this.sortMode?this.d_sortField===(this.columnProp(e,"field")||this.columnProp(e,"sortField")):this.getMultiSortMetaIndex(e)>-1)},getColumnHeaderClass(e){return[this.columnProp(e,"headerClass"),{"p-sortable-column":this.columnProp(e,"sortable")},{"p-resizable-column":this.resizableColumns},{"p-highlight":this.isColumnSorted(e)}]},getFilterColumnHeaderClass(e){return["p-filter-column",this.columnProp(e,"filterHeaderClass")]},getSortableColumnIcon(e){let t=!1,l=null;if("single"===this.sortMode)t=this.d_sortField===(this.columnProp(e,"field")||this.columnProp(e,"sortField")),l=t?this.d_sortOrder:0;else if("multiple"===this.sortMode){let o=this.getMultiSortMetaIndex(e);o>-1&&(t=!0,l=this.d_multiSortMeta[o].order)}return["p-sortable-column-icon pi pi-fw",{"pi-sort-alt":!t,"pi-sort-amount-up-alt":t&&l>0,"pi-sort-amount-down":t&&l<0}]},getMultiSortMetaIndex(e){let t=-1;for(let l=0;l<this.d_multiSortMeta.length;l++){if(this.d_multiSortMeta[l].field===(this.columnProp(e,"field")||this.columnProp(e,"sortField"))){t=l;break}}return t},onColumnHeaderClick(e,l){if(this.columnProp(l,"sortable")){const o=e.target,i=this.columnProp(l,"sortField")||this.columnProp(l,"field");if(t.hasClass(o,"p-sortable-column")||t.hasClass(o,"p-column-title")||t.hasClass(o,"p-sortable-column-icon")||t.hasClass(o.parentElement,"p-sortable-column-icon")){if(t.clearSelection(),"single"===this.sortMode)this.d_sortField===i?this.removableSort&&-1*this.d_sortOrder===this.defaultSortOrder?(this.d_sortOrder=null,this.d_sortField=null):this.d_sortOrder=-1*this.d_sortOrder:(this.d_sortOrder=this.defaultSortOrder,this.d_sortField=i),this.$emit("update:sortField",this.d_sortField),this.$emit("update:sortOrder",this.d_sortOrder),this.resetPage();else if("multiple"===this.sortMode){e.metaKey||e.ctrlKey||(this.d_multiSortMeta=this.d_multiSortMeta.filter((e=>e.field===i))),this.addMultiSortField(i),this.$emit("update:multiSortMeta",this.d_multiSortMeta)}this.$emit("sort",this.createLazyLoadEvent(e))}}},addMultiSortField(e){let t=this.d_multiSortMeta.findIndex((t=>t.field===e));t>=0?this.removableSort&&-1*this.d_multiSortMeta[t].order===this.defaultSortOrder?this.d_multiSortMeta.splice(t,1):this.d_multiSortMeta[t]={field:e,order:-1*this.d_multiSortMeta[t].order}:this.d_multiSortMeta.push({field:e,order:this.defaultSortOrder}),this.d_multiSortMeta=[...this.d_multiSortMeta]},sortSingle(e){return this.sortNodesSingle(e)},sortNodesSingle(t){let l=[...t];return l.sort(((t,l)=>{const o=e.resolveFieldData(t.data,this.d_sortField),i=e.resolveFieldData(l.data,this.d_sortField);let n=null;return n=null==o&&null!=i?-1:null!=o&&null==i?1:null==o&&null==i?0:"string"==typeof o&&"string"==typeof i?o.localeCompare(i,void 0,{numeric:!0}):o<i?-1:o>i?1:0,this.d_sortOrder*n})),l},sortMultiple(e){return this.sortNodesMultiple(e)},sortNodesMultiple(e){let t=[...e];return t.sort(((e,t)=>this.multisortField(e,t,0))),t},multisortField(t,l,o){const i=e.resolveFieldData(t.data,this.d_multiSortMeta[o].field),n=e.resolveFieldData(l.data,this.d_multiSortMeta[o].field);let s=null;if(null==i&&null!=n)s=-1;else if(null!=i&&null==n)s=1;else if(null==i&&null==n)s=0;else{if(i===n)return this.d_multiSortMeta.length-1>o?this.multisortField(t,l,o+1):0;if(("string"==typeof i||i instanceof String)&&("string"==typeof n||n instanceof String))return this.d_multiSortMeta[o].order*i.localeCompare(n,void 0,{numeric:!0});s=i<n?-1:1}return this.d_multiSortMeta[o].order*s},filter(e){let t=[];const o="strict"===this.filterMode;for(let i of e){let e={...i},n=!0,s=!1;for(let t=0;t<this.columns.length;t++){let i=this.columns[t],r=this.columnProp(i,"field");if(Object.prototype.hasOwnProperty.call(this.filters,this.columnProp(i,"field"))){let t=this.columnProp(i,"filterMatchMode")||"startsWith",s={filterField:r,filterValue:this.filters[this.columnProp(i,"field")],filterConstraint:l.filters[t],strict:o};if((!o||this.findFilteredNodes(e,s)||this.isFilterMatched(e,s))&&(o||this.isFilterMatched(e,s)||this.findFilteredNodes(e,s))||(n=!1),!n)break}if(this.hasGlobalFilter()&&!s){let t={...e},i={filterField:r,filterValue:this.filters.global,filterConstraint:l.filters.contains,strict:o};(o&&(this.findFilteredNodes(t,i)||this.isFilterMatched(t,i))||!o&&(this.isFilterMatched(t,i)||this.findFilteredNodes(t,i)))&&(s=!0,e=t)}}let r=n;this.hasGlobalFilter()&&(r=n&&s),r&&t.push(e)}let i=this.createLazyLoadEvent(event);return i.filteredValue=t,this.$emit("filter",i),t},findFilteredNodes(e,t){if(e){let l=!1;if(e.children){let o=[...e.children];e.children=[];for(let i of o){let o={...i};this.isFilterMatched(o,t)&&(l=!0,e.children.push(o))}}if(l)return!0}},isFilterMatched(t,{filterField:l,filterValue:o,filterConstraint:i,strict:n}){let s=!1;return i(e.resolveFieldData(t.data,l),o,this.filterLocale)&&(s=!0),(!s||n&&!this.isNodeLeaf(t))&&(s=this.findFilteredNodes(t,{filterField:l,filterValue:o,filterConstraint:i,strict:n})||s),s},isNodeSelected(e){return!(!this.selectionMode||!this.selectionKeys)&&!0===this.selectionKeys[e.key]},isNodeLeaf:e=>!1!==e.leaf&&!(e.children&&e.children.length),createLazyLoadEvent(e){let t;return this.hasFilters()&&(t={},this.columns.forEach((e=>{this.columnProp(e,"field")&&(t[e.props.field]=this.columnProp(e,"filterMatchMode"))}))),{originalEvent:e,first:this.d_first,rows:this.d_rows,sortField:this.d_sortField,sortOrder:this.d_sortOrder,multiSortMeta:this.d_multiSortMeta,filters:this.filters,filterMatchModes:t}},onColumnResizeStart(e){let l=t.getOffset(this.$el).left;this.resizeColumnElement=e.target.parentElement,this.columnResizing=!0,this.lastResizeHelperX=e.pageX-l+this.$el.scrollLeft,this.bindColumnResizeEvents()},onColumnResize(e){let l=t.getOffset(this.$el).left;t.addClass(this.$el,"p-unselectable-text"),this.$refs.resizeHelper.style.height=this.$el.offsetHeight+"px",this.$refs.resizeHelper.style.top="0px",this.$refs.resizeHelper.style.left=e.pageX-l+this.$el.scrollLeft+"px",this.$refs.resizeHelper.style.display="block"},onColumnResizeEnd(){let e=this.$refs.resizeHelper.offsetLeft-this.lastResizeHelperX,l=this.resizeColumnElement.offsetWidth,o=l+e,i=this.resizeColumnElement.style.minWidth||15;if(l+e>parseInt(i,10)){if("fit"===this.columnResizeMode){let t=this.resizeColumnElement.nextElementSibling,l=t.offsetWidth-e;o>15&&l>15&&(this.resizeColumnElement.style.width=o+"px",t&&(t.style.width=l+"px"))}else"expand"===this.columnResizeMode&&(this.$refs.table.style.width=this.$refs.table.offsetWidth+e+"px",this.resizeColumnElement.style.width=o+"px");this.$emit("column-resize-end",{element:this.resizeColumnElement,delta:e})}this.$refs.resizeHelper.style.display="none",this.resizeColumn=null,t.removeClass(this.$el,"p-unselectable-text"),this.unbindColumnResizeEvents()},bindColumnResizeEvents(){this.documentColumnResizeListener||(this.documentColumnResizeListener=document.addEventListener("mousemove",(()=>{this.columnResizing&&this.onColumnResize(event)}))),this.documentColumnResizeEndListener||(this.documentColumnResizeEndListener=document.addEventListener("mouseup",(()=>{this.columnResizing&&(this.columnResizing=!1,this.onColumnResizeEnd())})))},unbindColumnResizeEvents(){this.documentColumnResizeListener&&(document.removeEventListener("document",this.documentColumnResizeListener),this.documentColumnResizeListener=null),this.documentColumnResizeEndListener&&(document.removeEventListener("document",this.documentColumnResizeEndListener),this.documentColumnResizeEndListener=null)},onColumnKeyDown(e,l){13===e.which&&"TH"===e.currentTarget.nodeName&&t.hasClass(e.currentTarget,"p-sortable-column")&&this.onColumnHeaderClick(e,l)},getAriaSort(e){if(this.columnProp(e,"sortable")){const t=this.getSortableColumnIcon(e);return t[1]["pi-sort-amount-down"]?"descending":t[1]["pi-sort-amount-up-alt"]?"ascending":"none"}return null},hasColumnFilter(){if(this.columns)for(let e of this.columns)if(e.children&&e.children.filter)return!0;return!1},hasFilters(){return this.filters&&Object.keys(this.filters).length>0&&this.filters.constructor===Object},hasGlobalFilter(){return this.filters&&Object.prototype.hasOwnProperty.call(this.filters,"global")}},computed:{containerClass(){return["p-treetable p-component",{"p-treetable-hoverable-rows":this.rowHover||this.rowSelectionMode,"p-treetable-auto-layout":this.autoLayout,"p-treetable-resizable":this.resizableColumns,"p-treetable-resizable-fit":this.resizableColumns&&"fit"===this.columnResizeMode,"p-treetable-gridlines":this.showGridlines}]},columns(){let e=[];return this.$slots.default().forEach((t=>{t.dynamicChildren?e=[...e,...t.children]:"column"===t.type.name&&e.push(t)})),e},processedData(){if(this.lazy)return this.value;if(this.value&&this.value.length){let e=this.value;return this.sorted&&("single"===this.sortMode?e=this.sortSingle(e):"multiple"===this.sortMode&&(e=this.sortMultiple(e))),this.hasFilters()&&(e=this.filter(e)),e}return null},dataToRender(){const e=this.processedData;if(this.paginator){const t=this.lazy?0:this.d_first;return e.slice(t,t+this.d_rows)}return e},empty(){const e=this.processedData;return!e||0===e.length},sorted(){return this.d_sortField||this.d_multiSortMeta&&this.d_multiSortMeta.length>0},hasFooter(){let e=!1;for(let t of this.columns)if(this.columnProp(t,"footer")||t.children&&t.children.footer){e=!0;break}return e},paginatorTop(){return this.paginator&&("bottom"!==this.paginatorPosition||"both"===this.paginatorPosition)},paginatorBottom(){return this.paginator&&("top"!==this.paginatorPosition||"both"===this.paginatorPosition)},singleSelectionMode(){return this.selectionMode&&"single"===this.selectionMode},multipleSelectionMode(){return this.selectionMode&&"multiple"===this.selectionMode},rowSelectionMode(){return this.singleSelectionMode||this.multipleSelectionMode},totalRecordsLength(){if(this.lazy)return this.totalRecords;{const e=this.processedData;return e?e.length:0}},loadingIconClass(){return["p-treetable-loading-icon pi-spin",this.loadingIcon]}},components:{TTRow:C,TTPaginator:k}};const v={key:0,class:"p-treetable-loading"},w={class:"p-treetable-loading-overlay p-component-overlay"},P={key:1,class:"p-treetable-header"},z={class:"p-treetable-wrapper"},K={ref:"table"},_={class:"p-treetable-thead"},F={key:2,class:"p-column-title"},$={key:4,class:"p-sortable-column-badge"},R={key:0},L={key:0,class:"p-treetable-tfoot"},E={class:"p-treetable-tbody"},T={key:1,class:"p-treetable-emptymessage"},N={key:4,class:"p-treetable-footer"},O={ref:"resizeHelper",class:"p-column-resizer-helper p-highlight",style:{display:"none"}};!function(e,t){void 0===t&&(t={});var l=t.insertAt;if(e&&"undefined"!=typeof document){var o=document.head||document.getElementsByTagName("head")[0],i=document.createElement("style");i.type="text/css","top"===l&&o.firstChild?o.insertBefore(i,o.firstChild):o.appendChild(i),i.styleSheet?i.styleSheet.cssText=e:i.appendChild(document.createTextNode(e))}}("\n.p-treetable {\n position: relative;\n}\n.p-treetable table {\n border-collapse: collapse;\n width: 100%;\n table-layout: fixed;\n}\n.p-treetable .p-sortable-column {\n cursor: pointer;\n -webkit-user-select: none;\n -moz-user-select: none;\n -ms-user-select: none;\n user-select: none;\n}\n.p-treetable-auto-layout > .p-treetable-wrapper {\n overflow-x: auto;\n}\n.p-treetable-auto-layout > .p-treetable-wrapper > table {\n table-layout: auto;\n}\n.p-treetable-hoverable-rows .p-treetable-tbody > tr {\n cursor: pointer;\n}\n.p-treetable-toggler {\n cursor: pointer;\n -webkit-user-select: none;\n -moz-user-select: none;\n -ms-user-select: none;\n user-select: none;\n display: -webkit-inline-box;\n display: -ms-inline-flexbox;\n display: inline-flex;\n -webkit-box-align: center;\n -ms-flex-align: center;\n align-items: center;\n -webkit-box-pack: center;\n -ms-flex-pack: center;\n justify-content: center;\n vertical-align: middle;\n overflow: hidden;\n position: relative;\n}\n.p-treetable-toggler + .p-checkbox {\n vertical-align: middle;\n}\n.p-treetable-toggler + .p-checkbox + span {\n vertical-align: middle;\n}\n\n/* Resizable */\n.p-treetable-resizable > .p-treetable-wrapper {\n overflow-x: auto;\n}\n.p-treetable-resizable .p-treetable-thead > tr > th,\n.p-treetable-resizable .p-treetable-tfoot > tr > td,\n.p-treetable-resizable .p-treetable-tbody > tr > td {\n overflow: hidden;\n}\n.p-treetable-resizable .p-resizable-column {\n background-clip: padding-box;\n position: relative;\n}\n.p-treetable-resizable-fit .p-resizable-column:last-child .p-column-resizer {\n display: none;\n}\n.p-treetable .p-column-resizer {\n display: block;\n position: absolute !important;\n top: 0;\n right: 0;\n margin: 0;\n width: .5rem;\n height: 100%;\n padding: 0px;\n cursor:col-resize;\n border: 1px solid transparent;\n}\n.p-treetable .p-column-resizer-helper {\n width: 1px;\n position: absolute;\n z-index: 10;\n display: none;\n}\n.p-treetable .p-treetable-loading-overlay {\n position: absolute;\n display: -webkit-box;\n display: -ms-flexbox;\n display: flex;\n -webkit-box-align: center;\n -ms-flex-align: center;\n align-items: center;\n -webkit-box-pack: center;\n -ms-flex-pack: center;\n justify-content: center;\n z-index: 2;\n}\n"),M.render=function(e,t,l,o,n,h){const k=i("TTPaginator"),C=i("TTRow");return s(),r("div",{class:h.containerClass,"data-scrollselectors":".p-treetable-scrollable-body"},[l.loading?(s(),r("div",v,[d("div",w,[d("i",{class:h.loadingIconClass},null,2)])])):u("",!0),e.$slots.header?(s(),r("div",P,[f(e.$slots,"header")])):u("",!0),h.paginatorTop?(s(),r(k,{key:2,rows:n.d_rows,first:n.d_first,totalRecords:h.totalRecordsLength,pageLinkSize:l.pageLinkSize,template:l.paginatorTemplate,rowsPerPageOptions:l.rowsPerPageOptions,currentPageReportTemplate:l.currentPageReportTemplate,class:"p-paginator-top",onPage:t[1]||(t[1]=e=>h.onPage(e)),alwaysShow:l.alwaysShowPaginator},g({_:2},[e.$slots.paginatorLeft?{name:"left",fn:y((()=>[f(e.$slots,"paginatorLeft")]))}:void 0,e.$slots.paginatorRight?{name:"right",fn:y((()=>[f(e.$slots,"paginatorRight")]))}:void 0]),1032,["rows","first","totalRecords","pageLinkSize","template","rowsPerPageOptions","currentPageReportTemplate","alwaysShow"])):u("",!0),d("div",z,[d("table",K,[d("thead",_,[d("tr",null,[(s(!0),r(a,null,c(h.columns,((e,o)=>(s(),r("th",{key:h.columnProp(e,"columnKey")||h.columnProp(e,"field")||o,style:h.columnProp(e,"headerStyle"),class:h.getColumnHeaderClass(e),onClick:t=>h.onColumnHeaderClick(t,e),tabindex:h.columnProp(e,"sortable")?"0":null,"aria-sort":h.getAriaSort(e),onKeydown:t=>h.onColumnKeyDown(t,e)},[l.resizableColumns?(s(),r("span",{key:0,class:"p-column-resizer",onMousedown:t[2]||(t[2]=(...e)=>h.onColumnResizeStart&&h.onColumnResizeStart(...e))},null,32)):u("",!0),e.children&&e.children.header?(s(),r(p(e.children.header),{key:1,column:e},null,8,["column"])):u("",!0),h.columnProp(e,"header")?(s(),r("span",F,m(h.columnProp(e,"header")),1)):u("",!0),h.columnProp(e,"sortable")?(s(),r("span",{key:3,class:h.getSortableColumnIcon(e)},null,2)):u("",!0),h.isMultiSorted(e)?(s(),r("span",$,m(h.getMultiSortMetaIndex(e)+1),1)):u("",!0)],46,["onClick","tabindex","aria-sort","onKeydown"])))),128))]),h.hasColumnFilter()?(s(),r("tr",R,[(s(!0),r(a,null,c(h.columns,((e,t)=>(s(),r("th",{key:h.columnProp(e,"columnKey")||h.columnProp(e,"field")||t,class:h.getFilterColumnHeaderClass(e),style:h.columnProp(e,"filterHeaderStyle")},[e.children&&e.children.filter?(s(),r(p(e.children.filter),{key:0,column:e},null,8,["column"])):u("",!0)],6)))),128))])):u("",!0)]),h.hasFooter?(s(),r("tfoot",L,[d("tr",null,[(s(!0),r(a,null,c(h.columns,((e,t)=>(s(),r("td",{key:h.columnProp(e,"columnKey")||h.columnProp(e,"field")||t,style:h.columnProp(e,"footerStyle"),class:h.columnProp(e,"footerClass")},[e.children&&e.children.footer?(s(),r(p(e.children.footer),{key:0,column:e},null,8,["column"])):u("",!0),b(" "+m(h.columnProp(e,"footer")),1)],6)))),128))])])):u("",!0),d("tbody",E,[h.empty?(s(),r("tr",T,[d("td",{colspan:h.columns.length},[f(e.$slots,"empty")],8,["colspan"])])):(s(!0),r(a,{key:0},c(h.dataToRender,(e=>(s(),r(C,{key:e.key,columns:h.columns,node:e,level:0,expandedKeys:n.d_expandedKeys,onNodeToggle:h.onNodeToggle,indentation:l.indentation,selectionMode:l.selectionMode,selectionKeys:l.selectionKeys,onNodeClick:h.onNodeClick,onCheckboxChange:h.onCheckboxChange},null,8,["columns","node","expandedKeys","onNodeToggle","indentation","selectionMode","selectionKeys","onNodeClick","onCheckboxChange"])))),128))])],512)]),h.paginatorBottom?(s(),r(k,{key:3,rows:n.d_rows,first:n.d_first,totalRecords:h.totalRecordsLength,pageLinkSize:l.pageLinkSize,template:l.paginatorTemplate,rowsPerPageOptions:l.rowsPerPageOptions,currentPageReportTemplate:l.currentPageReportTemplate,class:"p-paginator-bottom",onPage:t[3]||(t[3]=e=>h.onPage(e)),alwaysShow:l.alwaysShowPaginator},g({_:2},[e.$slots.paginatorLeft?{name:"left",fn:y((()=>[f(e.$slots,"paginatorLeft")]))}:void 0,e.$slots.paginatorRight?{name:"right",fn:y((()=>[f(e.$slots,"paginatorRight")]))}:void 0]),1032,["rows","first","totalRecords","pageLinkSize","template","rowsPerPageOptions","currentPageReportTemplate","alwaysShow"])):u("",!0),e.$slots.footer?(s(),r("div",N,[f(e.$slots,"footer")])):u("",!0),d("div",O,null,512)],2)};export default M;