UNPKG

primereact

Version:

PrimeReact is an open source UI library for React featuring a rich set of 90+ components, a theme designer, various theme alternatives such as Material, Bootstrap, Tailwind, premium templates and professional support. In addition, it integrates with Prime

2 lines (1 loc) 45.7 kB
import*as e from"react";import t,{FilterMatchMode as n,ariaLabel as r,localeOption as l,FilterService as o}from"primereact/api";import{ObjectUtils as a,DomHandler as i,classNames as c}from"primereact/utils";import{useEventListener as u,useUnmountEffect as s,useMountEffect as f}from"primereact/hooks";import{Paginator as d}from"primereact/paginator";import{Ripple as p}from"primereact/ripple";import{OverlayService as m}from"primereact/overlayservice";import{InputText as y}from"primereact/inputtext";import{Tooltip as g}from"primereact/tooltip";function b(){return b=Object.assign?Object.assign.bind():function(e){for(var t=1;t<arguments.length;t++){var n=arguments[t];for(var r in n)Object.prototype.hasOwnProperty.call(n,r)&&(e[r]=n[r])}return e},b.apply(this,arguments)}function h(e){return h="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&&"function"==typeof Symbol&&e.constructor===Symbol&&e!==Symbol.prototype?"symbol":typeof e},h(e)}function v(e,t){if("object"!==h(e)||null===e)return e;var n=e[Symbol.toPrimitive];if(void 0!==n){var r=n.call(e,t||"default");if("object"!==h(r))return r;throw new TypeError("@@toPrimitive must return a primitive value.")}return("string"===t?String:Number)(e)}function S(e){var t=v(e,"string");return"symbol"===h(t)?t:String(t)}function C(e,t,n){return(t=S(t))in e?Object.defineProperty(e,t,{value:n,enumerable:!0,configurable:!0,writable:!0}):e[t]=n,e}function E(e,t){(null==t||t>e.length)&&(t=e.length);for(var n=0,r=new Array(t);n<t;n++)r[n]=e[n];return r}function w(e){if(Array.isArray(e))return E(e)}function x(e){if("undefined"!=typeof Symbol&&null!=e[Symbol.iterator]||null!=e["@@iterator"])return Array.from(e)}function O(e,t){if(e){if("string"==typeof e)return E(e,t);var n=Object.prototype.toString.call(e).slice(8,-1);return"Object"===n&&e.constructor&&(n=e.constructor.name),"Map"===n||"Set"===n?Array.from(e):"Arguments"===n||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)?E(e,t):void 0}}function P(){throw new TypeError("Invalid attempt to spread non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}function M(e){return w(e)||x(e)||O(e)||P()}function k(e){if(Array.isArray(e))return e}function N(e,t){var n=null==e?null:"undefined"!=typeof Symbol&&e[Symbol.iterator]||e["@@iterator"];if(null!=n){var r,l,o,a,i=[],c=!0,u=!1;try{if(o=(n=n.call(e)).next,0===t){if(Object(n)!==n)return;c=!1}else for(;!(c=(r=o.call(n)).done)&&(i.push(r.value),i.length!==t);c=!0);}catch(e){u=!0,l=e}finally{try{if(!c&&null!=n.return&&(a=n.return(),Object(a)!==a))return}finally{if(u)throw l}}return i}}function K(){throw new TypeError("Invalid attempt to destructure non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}function R(e,t){return k(e)||N(e,t)||O(e,t)||K()}var T={defaultProps:{__TYPE:"Column",align:null,alignFrozen:"left",alignHeader:null,body:null,bodyClassName:null,bodyStyle:null,cellEditValidator:null,cellEditValidatorEvent:"click",className:null,colSpan:null,columnKey:null,dataType:"text",editor:null,excludeGlobalFilter:!1,expander:!1,exportField:null,exportable:!0,field:null,filter:!1,filterApply:null,filterClear:null,filterElement:null,filterField:null,filterFooter:null,filterFunction:null,filterHeader:null,filterHeaderClassName:null,filterHeaderStyle:null,filterMatchMode:null,filterMatchModeOptions:null,filterMaxLength:null,filterMenuClassName:null,filterMenuStyle:null,filterPlaceholder:null,filterType:"text",footer:null,footerClassName:null,footerStyle:null,frozen:!1,header:null,headerClassName:null,headerStyle:null,headerTooltip:null,headerTooltipOptions:null,hidden:!1,maxConstraints:2,onBeforeCellEditHide:null,onBeforeCellEditShow:null,onCellEditCancel:null,onCellEditComplete:null,onCellEditInit:null,onFilterApplyClick:null,onFilterClear:null,onFilterConstraintAdd:null,onFilterConstraintRemove:null,onFilterMatchModeChange:null,onFilterOperatorChange:null,reorderable:!0,resizeable:!0,rowEditor:!1,rowReorder:!1,rowReorderIcon:"pi pi-bars",rowSpan:null,selectionMode:null,showAddButton:!0,showApplyButton:!0,showClearButton:!0,showFilterMatchModes:!0,showFilterMenu:!0,showFilterMenuOptions:!0,showFilterOperator:!0,sortField:null,sortFunction:null,sortable:!1,sortableDisabled:!1,style:null,children:void 0},getCProp:function(e,t){return a.getComponentProp(e,t,T.defaultProps)},getCProps:function(e){return a.getComponentProps(e,T.defaultProps)},getCOtherProps:function(e){return a.getComponentDiffProps(e,T.defaultProps)}},D={defaultProps:{__TYPE:"TreeTable",alwaysShowPaginator:!0,className:null,columnResizeMode:"fit",contextMenuSelectionKey:null,currentPageReportTemplate:"({currentPage} of {totalPages})",defaultSortOrder:1,emptyMessage:null,expandedKeys:null,filterDelay:300,filterLocale:void 0,filterMode:"lenient",filters:null,first:null,footer:null,footerColumnGroup:null,frozenFooterColumnGroup:null,frozenHeaderColumnGroup:null,frozenWidth:null,globalFilter:null,globalFilterMatchMode:n.CONTAINS,header:null,headerColumnGroup:null,id:null,lazy:!1,loading:!1,loadingIcon:"pi pi-spinner",metaKeySelection:!0,multiSortMeta:null,onColReorder:null,onCollapse:null,onColumnResizeEnd:null,onContextMenu:null,onContextMenuSelectionChange:null,onExpand:null,onFilter:null,onPage:null,onRowClick:null,onSelect:null,onSelectionChange:null,onSort:null,onToggle:null,onUnselect:null,pageLinkSize:5,paginator:!1,paginatorClassName:null,paginatorDropdownAppendTo:null,paginatorLeft:null,paginatorPosition:"bottom",paginatorRight:null,paginatorTemplate:"FirstPageLink PrevPageLink PageLinks NextPageLink LastPageLink RowsPerPageDropdown",propagateSelectionDown:!0,propagateSelectionUp:!0,removableSort:!1,reorderableColumns:!1,resizableColumns:!1,rowClassName:null,rowHover:!1,rows:null,rowsPerPageOptions:null,scrollHeight:null,scrollable:!1,selectOnEdit:!0,selectionKeys:null,selectionMode:null,showGridlines:!1,sortField:null,sortMode:"single",sortOrder:null,stripedRows:!1,style:null,tabIndex:0,tableClassName:null,tableStyle:null,totalRecords:null,value:null,children:void 0},getProps:function(e){return a.getMergedProps(e,D.defaultProps)},getOtherProps:function(e){return a.getDiffProps(e,D.defaultProps)}},F=function(t){var n=R(e.useState(!1),2),r=n[0],l=n[1],o=e.useRef(null),f=e.useRef(null),d=e.useRef(!1),p=e.useRef(null),y=e.useRef(null),g=R(u({type:"click",listener:function(e){!d.current&&S(e.target)&&E(e),d.current=!1}}),2),b=g[0],h=g[1],v=function(){t.editor&&!r&&(t.selectOnEdit||!t.selectOnEdit&&t.selected)&&(d.current=!0,l(!0),b(),p.current=function(e){S(e.target)||(d.current=!0)},m.on("overlay-click",p.current))},S=function(e){return o.current&&!(o.current.isSameNode(e)||o.current.contains(e))},C=function(){setTimeout((function(){l(!1),h(),m.off("overlay-click",p.current),p.current=null}),1)},E=function(e){t.cellEditValidator?t.cellEditValidator({originalEvent:e,columnProps:t})&&C():C()};e.useEffect((function(){if(o.current&&t.editor)if(clearTimeout(y.current),r){var e=i.findSingle(o.current,"input");e&&document.activeElement!==e&&!e.hasAttribute("data-isCellEditing")&&(e.setAttribute("data-isCellEditing",!0),e.focus()),f.current.tabIndex=-1}else y.current=setTimeout((function(){f.current&&f.current.setAttribute("tabindex",0)}),50)})),s((function(){p.current&&(m.off("overlay-click",p.current),p.current=null)}));var w,x=a.getPropValue(t.bodyClassName,t.node.data,{field:t.field,rowIndex:t.rowIndex,props:t}),O=c(x||t.className,{"p-editable-column":t.editor,"p-cell-editing":!!t.editor&&r}),P=t.bodyStyle||t.style;if(r){if(!t.editor)throw new Error("Editor is not found on column.");w=a.getJSXElement(t.editor,{node:t.node,rowData:t.node.data,value:a.resolveFieldData(t.node.data,t.field),field:t.field,rowIndex:t.rowIndex,props:t})}else w=t.body?a.getJSXElement(t.body,t.node,{field:t.field,rowIndex:t.rowIndex,props:t}):a.resolveFieldData(t.node.data,t.field);var M=t.editor&&e.createElement("a",{tabIndex:0,ref:f,className:"p-cell-editor-key-helper p-hidden-accessible",onFocus:function(e){v()}},e.createElement("span",null));return e.createElement("td",{ref:o,className:O,style:P,onClick:v,onKeyDown:function(e){13!==e.which&&9!==e.which||E(e)}},t.children,M,w)};function z(e,t){var n="undefined"!=typeof Symbol&&e[Symbol.iterator]||e["@@iterator"];if(!n){if(Array.isArray(e)||(n=j(e))||t&&e&&"number"==typeof e.length){n&&(e=n);var r=0,l=function(){};return{s:l,n:function(){return r>=e.length?{done:!0}:{done:!1,value:e[r++]}},e:function(e){throw e},f:l}}throw new TypeError("Invalid attempt to iterate non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}var o,a=!0,i=!1;return{s:function(){n=n.call(e)},n:function(){var e=n.next();return a=e.done,e},e:function(e){i=!0,o=e},f:function(){try{a||null==n.return||n.return()}finally{if(i)throw o}}}}function j(e,t){if(e){if("string"==typeof e)return A(e,t);var n=Object.prototype.toString.call(e).slice(8,-1);return"Object"===n&&e.constructor&&(n=e.constructor.name),"Map"===n||"Set"===n?Array.from(e):"Arguments"===n||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)?A(e,t):void 0}}function A(e,t){(null==t||t>e.length)&&(t=e.length);for(var n=0,r=new Array(t);n<t;n++)r[n]=e[n];return r}function I(e,t){var n=Object.keys(e);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(e);t&&(r=r.filter((function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable}))),n.push.apply(n,r)}return n}function U(e){for(var t=1;t<arguments.length;t++){var n=null!=arguments[t]?arguments[t]:{};t%2?I(Object(n),!0).forEach((function(t){C(e,t,n[t])})):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(n)):I(Object(n)).forEach((function(t){Object.defineProperty(e,t,Object.getOwnPropertyDescriptor(n,t))}))}return e}F.displayName="TreeTableBodyCell";var H=e.memo((function(t){var n=e.useRef(null),l=e.useRef(null),o=e.useRef(null),a=e.useRef(!1),u=!!t.expandedKeys&&void 0!==t.expandedKeys[t.node.key],s=function(e,t){return T.getCProp(e,t)},f=function(e){u?m(e):d(e),e.preventDefault(),e.stopPropagation()},d=function(e){var n=t.expandedKeys?U({},t.expandedKeys):{};n[t.node.key]=!0,t.onToggle({originalEvent:e,value:n}),y(e,!0)},m=function(e){var n=U({},t.expandedKeys);delete n[t.node.key],t.onToggle({originalEvent:e,value:n}),y(e,!1)},y=function(e,n){n?t.onExpand&&t.onExpand({originalEvent:e,node:t.node}):t.onCollapse&&t.onCollapse({originalEvent:e,node:t.node})},g=function(e){t.onRowClick&&t.onRowClick(e,t.node),a.current=!1},h=function(e){var n=x(),r=t.selectionKeys?U({},t.selectionKeys):{};n?(t.propagateSelectionDown?E(t.node,!1,r):delete r[t.node.key],t.propagateSelectionUp&&t.onPropagateUp&&t.onPropagateUp({originalEvent:e,check:!1,selectionKeys:r}),t.onUnselect&&t.onUnselect({originalEvent:e,node:t.node})):(t.propagateSelectionDown?E(t.node,!0,r):r[t.node.key]={checked:!0},t.propagateSelectionUp&&t.onPropagateUp&&t.onPropagateUp({originalEvent:e,check:!0,selectionKeys:r}),t.onSelect&&t.onSelect({originalEvent:e,node:t.node})),t.onSelectionChange&&t.onSelectionChange({originalEvent:e,value:r}),i.clearSelection()},v=function(){i.addClass(o.current,"p-focus"),i.addClass(l.current,"p-checkbox-focused")},S=function(){i.removeClass(o.current,"p-focus"),i.removeClass(l.current,"p-checkbox-focused")},C=function(e){var n,r=e.check,l=e.selectionKeys,o=0,a=!1,i=z(t.node.children);try{for(i.s();!(n=i.n()).done;){var c=n.value;l[c.key]&&l[c.key].checked?o++:l[c.key]&&l[c.key].partialChecked&&(a=!0)}}catch(e){i.e(e)}finally{i.f()}r&&o===t.node.children.length?l[t.node.key]={checked:!0,partialChecked:!1}:(r||delete l[t.node.key],l[t.node.key]=a||o>0&&o!==t.node.children.length?{checked:!1,partialChecked:!0}:{checked:!1,partialChecked:!1}),t.propagateSelectionUp&&t.onPropagateUp&&t.onPropagateUp(e)},E=function e(t,n,r){if(n?r[t.key]={checked:!0,partialChecked:!1}:delete r[t.key],t.children&&t.children.length)for(var l=0;l<t.children.length;l++)e(t.children[l],n,r)},w=function(){return!("single"!==t.selectionMode&&"multiple"!==t.selectionMode||!t.selectionKeys)&&("single"===t.selectionMode?t.selectionKeys===t.node.key:void 0!==t.selectionKeys[t.node.key])},x=function(){return!!t.selectionKeys&&(t.selectionKeys[t.node.key]&&t.selectionKeys[t.node.key].checked)},O=function(){if("checkbox"===t.selectionMode&&!1!==t.node.selectable){var n=x(),r=!!t.selectionKeys&&t.selectionKeys[t.node.key]&&t.selectionKeys[t.node.key].partialChecked,a=c("p-checkbox-box",{"p-highlight":n,"p-indeterminate":r}),i=c("p-checkbox-icon p-c",{"pi pi-check":n,"pi pi-minus":r});return e.createElement("div",{className:"p-checkbox p-treetable-checkbox p-component",ref:l,onClick:h,role:"checkbox","aria-checked":n},e.createElement("div",{className:"p-hidden-accessible"},e.createElement("input",{type:"checkbox",onFocus:v,onBlur:S})),e.createElement("div",{className:a,ref:o},e.createElement("span",{className:i})))}return null},P=t.columns.map((function(n,l){var o,a,i,d;return s(n,"expander")&&(i=r(u?"collapseLabel":"expandLabel"),d=c("p-treetable-toggler-icon pi pi-fw",{"pi-chevron-right":!u,"pi-chevron-down":u}),o=e.createElement("button",{type:"button",className:"p-treetable-toggler p-link p-unselectable-text",onClick:f,tabIndex:-1,style:{marginLeft:16*t.level+"px",visibility:!1===t.node.leaf||t.node.children&&t.node.children.length?"visible":"hidden"},"aria-label":i},e.createElement("i",{className:d,"aria-hidden":"true"}),e.createElement(p,null)),a=O()),e.createElement(F,b({key:"".concat(s(n,"columnKey")||s(n,"field"),"_").concat(l)},T.getCProps(n),{column:n,selectOnEdit:t.selectOnEdit,selected:w(),node:t.node,rowIndex:t.rowIndex}),o,a)})),M=u&&t.node.children?t.node.children.map((function(n,r){return e.createElement(H,{key:"".concat(n.key||JSON.stringify(n.data),"_").concat(r),level:t.level+1,rowIndex:t.rowIndex+"_"+r,node:n,columns:t.columns,expandedKeys:t.expandedKeys,selectOnEdit:t.selectOnEdit,onToggle:t.onToggle,onExpand:t.onExpand,onCollapse:t.onCollapse,selectionMode:t.selectionMode,selectionKeys:t.selectionKeys,onSelectionChange:t.onSelectionChange,metaKeySelection:t.metaKeySelection,onRowClick:t.onRowClick,onSelect:t.onSelect,onUnselect:t.onUnselect,propagateSelectionUp:t.propagateSelectionUp,propagateSelectionDown:t.propagateSelectionDown,onPropagateUp:C,rowClassName:t.rowClassName,contextMenuSelectionKey:t.contextMenuSelectionKey,onContextMenuSelectionChange:t.onContextMenuSelectionChange,onContextMenu:t.onContextMenu})})):null,k={"p-highlight":w(),"p-highlight-contextmenu":t.contextMenuSelectionKey&&t.contextMenuSelectionKey===t.node.key};if(t.rowClassName){var N=t.rowClassName(t.node);k=U(U({},k),N)}return k=c(k,t.node.className),e.createElement(e.Fragment,null,e.createElement("tr",{ref:n,tabIndex:0,className:k,style:t.node.style,onClick:g,onTouchEnd:function(){a.current=!0},onContextMenu:function(e){i.clearSelection(),t.onContextMenuSelectionChange&&t.onContextMenuSelectionChange({originalEvent:e,value:t.node.key}),t.onContextMenu&&t.onContextMenu({originalEvent:e,node:t.node})},onKeyDown:function(e){if(e.target===n.current){var t=e.currentTarget;switch(e.which){case 40:var r=t.nextElementSibling;r&&r.focus(),e.preventDefault();break;case 38:var l=t.previousElementSibling;l&&l.focus(),e.preventDefault();break;case 39:u||d(e),e.preventDefault();break;case 37:u&&m(e),e.preventDefault();break;case 13:g(e),e.preventDefault()}}}},P),M)}));function L(e,t){var n=Object.keys(e);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(e);t&&(r=r.filter((function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable}))),n.push.apply(n,r)}return n}function G(e){for(var t=1;t<arguments.length;t++){var n=null!=arguments[t]?arguments[t]:{};t%2?L(Object(n),!0).forEach((function(t){C(e,t,n[t])})):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(n)):L(Object(n)).forEach((function(t){Object.defineProperty(e,t,Object.getOwnPropertyDescriptor(n,t))}))}return e}function W(e,t){var n="undefined"!=typeof Symbol&&e[Symbol.iterator]||e["@@iterator"];if(!n){if(Array.isArray(e)||(n=_(e))||t&&e&&"number"==typeof e.length){n&&(e=n);var r=0,l=function(){};return{s:l,n:function(){return r>=e.length?{done:!0}:{done:!1,value:e[r++]}},e:function(e){throw e},f:l}}throw new TypeError("Invalid attempt to iterate non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}var o,a=!0,i=!1;return{s:function(){n=n.call(e)},n:function(){var e=n.next();return a=e.done,e},e:function(e){i=!0,o=e},f:function(){try{a||null==n.return||n.return()}finally{if(i)throw o}}}}function _(e,t){if(e){if("string"==typeof e)return V(e,t);var n=Object.prototype.toString.call(e).slice(8,-1);return"Object"===n&&e.constructor&&(n=e.constructor.name),"Map"===n||"Set"===n?Array.from(e):"Arguments"===n||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)?V(e,t):void 0}}function V(e,t){(null==t||t>e.length)&&(t=e.length);for(var n=0,r=new Array(t);n<t;n++)r[n]=e[n];return r}H.displayName="TreeTableRow";var B=e.memo((function(t){var n="single"===t.selectionMode,r="multiple"===t.selectionMode,o=function e(n){var r,l=[],o=W(n=n||t.value);try{for(o.s();!(r=o.n()).done;){var i=r.value;l.push(i.key),a(i.key)&&(l=l.concat(e(i.children)))}}catch(e){o.e(e)}finally{o.f()}return l},a=function(e){return t.expandedKeys&&!!t.expandedKeys[e]},c=function(e,l){t.onRowClick&&t.onRowClick({originalEvent:e,node:l});var a=e.target.nodeName;if("INPUT"!==a&&"BUTTON"!==a&&"A"!==a&&!i.hasClass(e.target,"p-clickable")&&(n||r)&&!1!==l.selectable){var c,s=u(l),f=t.metaKeySelection,d=o(),p=d.findIndex((function(e){return e===l.key}));if(r&&e.shiftKey){i.clearSelection();var m=d.findIndex((function(e){return t.selectionKeys[e]})),y=Math.min(p,m),g=Math.max(p,m);c=G({},t.selectionKeys);for(var b=y;b<=g;b++){c[d[b]]=!0}}else if(f){var h=e.metaKey||e.ctrlKey;s&&h?(n?c=null:delete(c=G({},t.selectionKeys))[l.key],t.onUnselect&&t.onUnselect({originalEvent:e,node:l})):(n?c=l.key:r&&((c=h&&t.selectionKeys?G({},t.selectionKeys):{})[l.key]=!0),t.onSelect&&t.onSelect({originalEvent:e,node:l}))}else n?s?(c=null,t.onUnselect&&t.onUnselect({originalEvent:e,node:l})):(c=l.key,t.onSelect&&t.onSelect({originalEvent:e,node:l})):s?(delete(c=G({},t.selectionKeys))[l.key],t.onUnselect&&t.onUnselect({originalEvent:e,node:l})):((c=t.selectionKeys?G({},t.selectionKeys):{})[l.key]=!0,t.onSelect&&t.onSelect({originalEvent:e,node:l}));t.onSelectionChange&&t.onSelectionChange({originalEvent:e,value:c})}},u=function(e){return!(!n&&!r||!t.selectionKeys)&&(n?t.selectionKeys===e.key:void 0!==t.selectionKeys[e.key])},s=function(n,r){return e.createElement(H,{key:"".concat(n.key||JSON.stringify(n.data),"_").concat(r),level:0,rowIndex:r,selectOnEdit:t.selectOnEdit,node:n,columns:t.columns,expandedKeys:t.expandedKeys,onToggle:t.onToggle,onExpand:t.onExpand,onCollapse:t.onCollapse,selectionMode:t.selectionMode,selectionKeys:t.selectionKeys,onSelectionChange:t.onSelectionChange,metaKeySelection:t.metaKeySelection,onRowClick:c,onSelect:t.onSelect,onUnselect:t.onUnselect,propagateSelectionUp:t.propagateSelectionUp,propagateSelectionDown:t.propagateSelectionDown,rowClassName:t.rowClassName,contextMenuSelectionKey:t.contextMenuSelectionKey,onContextMenuSelectionChange:t.onContextMenuSelectionChange,onContextMenu:t.onContextMenu})},f=t.value&&t.value.length?function(){if(t.paginator&&!t.lazy){for(var e=t.first||0,n=e+(t.rows||0),r=[],l=e;l<n;l++){if(!t.value[l])break;r.push(s(t.value[l]))}return r}return t.value.map(s)}():function(){if(t.loading)return null;var n=t.columns?t.columns.length:null,r=t.emptyMessage||l("emptyMessage");return e.createElement("tr",null,e.createElement("td",{className:"p-treetable-emptymessage",colSpan:n},r))}();return e.createElement("tbody",{className:"p-treetable-tbody"},f)}));B.displayName="TreeTableBody";var X={defaultProps:{__TYPE:"ColumnGroup",children:void 0},getCProp:function(e,t){return a.getComponentProp(e,t,X.defaultProps)},getCProps:function(e){return a.getComponentProps(e,X.defaultProps)}},Y={defaultProps:{__TYPE:"Row",style:null,className:null,children:void 0},getProps:function(e){return a.getMergedProps(e,Y.defaultProps)},getOtherProps:function(e){return a.getDiffProps(e,Y.defaultProps)},getCProp:function(e,t){return a.getComponentProp(e,t,Y.defaultProps)}},$=e.memo((function(t){var n=function(e,t){return T.getCProp(e,t)},r=function(t,r){return e.createElement("td",{key:t.field||r,className:n(t,"footerClassName")||n(t,"className"),style:n(t,"footerStyle")||n(t,"style"),rowSpan:n(t,"rowSpan"),colSpan:n(t,"colSpan")},n(t,"footer"))},l=function(t,n){var l=e.Children.toArray(Y.getCProp(t,"children")).map(r);return e.createElement("tr",{key:n},l)},o=t.columnGroup?e.Children.toArray(X.getCProp(t.columnGroup,"children")).map(l):function(t){if(t){var n=t.map(r);return e.createElement("tr",null,n)}return null}(t.columns);return function(){if(t.columnGroup)return!0;for(var e=0;e<t.columns.length;e++)if(n(t.columns[e],"footer"))return!0;return!1}()?e.createElement("tfoot",{className:"p-treetable-tfoot"},o):null}));function J(e,t){var n="undefined"!=typeof Symbol&&e[Symbol.iterator]||e["@@iterator"];if(!n){if(Array.isArray(e)||(n=q(e))||t&&e&&"number"==typeof e.length){n&&(e=n);var r=0,l=function(){};return{s:l,n:function(){return r>=e.length?{done:!0}:{done:!1,value:e[r++]}},e:function(e){throw e},f:l}}throw new TypeError("Invalid attempt to iterate non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}var o,a=!0,i=!1;return{s:function(){n=n.call(e)},n:function(){var e=n.next();return a=e.done,e},e:function(e){i=!0,o=e},f:function(){try{a||null==n.return||n.return()}finally{if(i)throw o}}}}function q(e,t){if(e){if("string"==typeof e)return Q(e,t);var n=Object.prototype.toString.call(e).slice(8,-1);return"Object"===n&&e.constructor&&(n=e.constructor.name),"Map"===n||"Set"===n?Array.from(e):"Arguments"===n||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)?Q(e,t):void 0}}function Q(e,t){(null==t||t>e.length)&&(t=e.length);for(var n=0,r=new Array(t);n<t;n++)r[n]=e[n];return r}$.displayName="TreeTableFooter";var Z=e.memo((function(t){var n,r=e.useRef(null),l=function(e,n){if(E(n,"sortable")){var r=e.target;(i.hasClass(r,"p-sortable-column")||i.hasClass(r,"p-column-title")||i.hasClass(r,"p-sortable-column-icon")||i.hasClass(r.parentElement,"p-sortable-column-icon"))&&(t.onSort({originalEvent:e,sortField:E(n,"sortField")||E(n,"field"),sortFunction:E(n,"sortFunction"),sortable:E(n,"sortable")}),i.clearSelection())}},o=function(e,n){t.reorderableColumns&&E(n,"reorderable")&&("INPUT"!==e.target.nodeName?e.currentTarget.draggable=!0:"INPUT"===e.target.nodeName&&(e.currentTarget.draggable=!1))},u=function(e,t){"Enter"===e.key&&(l(e,t),e.preventDefault())},s=function(e){if(t.multiSortMeta)for(var n=0;n<t.multiSortMeta.length;n++)if(t.multiSortMeta[n].field===E(e,"field"))return n;return-1},f=function(e,n){t.resizableColumns&&t.onResizeStart&&t.onResizeStart({originalEvent:e,columnEl:e.target.parentElement,column:n})},d=function(e,n){t.onDragStart&&t.onDragStart({originalEvent:e,column:n})},p=function(e,n){t.onDragOver&&t.onDragOver({originalEvent:e,column:n})},m=function(e,n){t.onDragLeave&&t.onDragLeave({originalEvent:e,column:n})},h=function(e,n){t.onDrop&&t.onDrop({originalEvent:e,column:n})},v=function(e,n){if(E(n,"filter")&&t.onFilter){r.current&&clearTimeout(r.current);var l=e.target.value;r.current=setTimeout((function(){t.onFilter({value:l,field:E(n,"field"),matchMode:E(n,"filterMatchMode")||"startsWith"}),r.current=null}),t.filterDelay)}},S=function(e){if(e){var t,n=J(e);try{for(n.s();!(t=n.n()).done;){if(E(t.value,"filter"))return!0}}catch(e){n.e(e)}finally{n.f()}}return!1},C=function(e,t,n){if(E(e,"sortable")){var r=t?n<0?"pi-sort-down":"pi-sort-up":"pi-sort";return"pi-sort-down"===r?"descending":"pi-sort-up"===r?"ascending":"none"}return null},E=function(e){return e?"string"==typeof(arguments.length<=1?void 0:arguments[1])?T.getCProp(e,arguments.length<=1?void 0:arguments[1]):T.getCProp((arguments.length<=1?void 0:arguments[1])||e,arguments.length<=2?void 0:arguments[2]):null},w=function(t,n,r){if(E(t,"sortable")){var l=c("p-sortable-column-icon","pi pi-fw",n?r<0?"pi-sort-amount-down":"pi-sort-amount-up-alt":"pi-sort-alt");return e.createElement("span",{className:l})}return null},x=function(n){return t.resizableColumns?e.createElement("span",{className:"p-column-resizer p-clickable",onMouseDown:function(e){return f(e,n)}}):null},O=function(n){return-1!==n&&t.multiSortMeta&&t.multiSortMeta.length>1?e.createElement("span",{className:"p-sortable-column-badge"},n+1):null},P=function(n,r){var i;if(E(n,"filter")&&r.renderFilter&&(i=E(n,"filterElement")||e.createElement(y,{onInput:function(e){return v(e,n)},type:t.filterType,defaultValue:t.filters&&t.filters[E(n,"field")]?t.filters[E(n,"field")].value:null,className:"p-column-filter",placeholder:E(n,"filterPlaceholder"),maxLength:E(n,"filterMaxLength")})),r.filterOnly)return e.createElement("th",{key:E(n,"columnKey")||E(n,"field")||r.index,className:c("p-filter-column",E(n,"filterHeaderClassName")),style:E(n,"filterHeaderStyle")||E(n,"style"),rowSpan:E(n,"rowSpan"),colSpan:E(n,"colSpan")},i);var f=e.createRef(null),S=s(n),P=-1!==S?t.multiSortMeta[S]:null,M=E(n,"field")===t.sortField,k=null!==P,N=E(n,"sortable")&&(M||k),K=0;M?K=t.sortOrder:k&&(K=P.order);var R=w(n,N,K),T=C(n,N,K),D=O(S),F=c(E(n,"headerClassName")||E(n,"className"),{"p-sortable-column":E(n,"sortable"),"p-highlight":N,"p-resizable-column":t.resizableColumns&&E(n,"resizeable")}),z=E(n,"headerTooltip"),j=a.isNotEmpty(z),A=x(n);return e.createElement(e.Fragment,{key:n.columnKey||n.field||r.index},e.createElement("th",{ref:f,className:F,style:E(n,"headerStyle")||E(n,"style"),tabIndex:E(n,"sortable")?t.tabIndex:null,onClick:function(e){return l(e,n)},onMouseDown:function(e){return o(e,n)},onKeyDown:function(e){return u(e,n)},rowSpan:E(n,"rowSpan"),colSpan:E(n,"colSpan"),"aria-sort":T,onDragStart:function(e){return d(e,n)},onDragOver:function(e){return p(e,n)},onDragLeave:function(e){return m(e,n)},onDrop:function(e){return h(e,n)}},A,e.createElement("span",{className:"p-column-title"},E(n,"header")),R,D,i),j&&e.createElement(g,b({target:f,content:z},E(n,"headerTooltipOptions"))))},M=function(t,n){var r=e.Children.toArray(Y.getCProp(t,"children")).map((function(e,t){return P(e,{index:t,filterOnly:!1,renderFilter:!0})}));return e.createElement("tr",{key:n},r)},k=t.columnGroup?e.Children.toArray(X.getCProp(t.columnGroup,"children")).map(M):(n=t.columns)?S(n)?e.createElement(e.Fragment,null,e.createElement("tr",null,n.map((function(e,t){return P(e,{index:t,filterOnly:!1,renderFilter:!1})}))),e.createElement("tr",null,n.map((function(e,t){return P(e,{index:t,filterOnly:!0,renderFilter:!0})})))):e.createElement("tr",null,n.map((function(e,t){return P(e,{index:t,filterOnly:!1,renderFilter:!1})}))):null;return e.createElement("thead",{className:"p-treetable-thead"},k)}));Z.displayName="TreeTableHeader";var ee=e.memo((function(t){var n=e.useRef(null),r=e.useRef(null),l=e.useRef(null),o=e.useRef(null),u=e.useRef(null),s=e.useRef(null),d=e.useRef(null),p=function(){if(t.scrollHeight)if(-1!==t.scrollHeight.indexOf("%")){var e=m(n.current);o.current.style.visibility="hidden",o.current.style.height="100px";var r=i.getOuterHeight(e),l=i.getOuterHeight(e.parentElement)*parseInt(t.scrollHeight,10)/100-(r-100);o.current.style.height="auto",o.current.style.maxHeight=l+"px",o.current.style.visibility="visible"}else o.current.style.maxHeight=t.scrollHeight},m=function(e){if(e){for(var t=e;t&&!i.hasClass(t,"p-treetable");)t=t.parentElement;return t}return null};f((function(){if(t.frozen)o.current.style.paddingBottom=i.calculateScrollbarWidth()+"px";else{var e=i.calculateScrollbarWidth();l.current.style.marginRight=e+"px",d.current&&(d.current.style.marginRight=e+"px")}})),e.useEffect((function(){p()}));var y=c("p-treetable-scrollable-view",{"p-treetable-frozen-view":t.frozen,"p-treetable-unfrozen-view":!t.frozen&&t.frozenWidth}),g=t.frozen?t.frozenWidth:"calc(100% - "+t.frozenWidth+")",b=t.frozen?null:t.frozenWidth,h=function(){if(a.isNotEmpty(t.columns)){var n=t.columns.map((function(t,n){return e.createElement("col",{key:t.field+"_"+n})}));return e.createElement("colgroup",{className:"p-treetable-scrollable-colgroup"},n)}return null}(),v=!t.frozen&&t.scrollHeight?{overflowY:"scroll"}:null;return e.createElement("div",{className:y,style:{width:g,left:b},ref:n},e.createElement("div",{className:"p-treetable-scrollable-header",ref:r,onScroll:function(){r.current.scrollLeft=0}},e.createElement("div",{className:"p-treetable-scrollable-header-box",ref:l},e.createElement("table",{className:"p-treetable-scrollable-header-table"},h,t.header))),e.createElement("div",{className:"p-treetable-scrollable-body",ref:o,style:v,onScroll:function(){var e,t=n.current.previousElementSibling;t&&(e=i.findSingle(t,".p-treetable-scrollable-body")),l.current.style.marginLeft=-1*o.current.scrollLeft+"px",d.current&&(d.current.style.marginLeft=-1*o.current.scrollLeft+"px"),e&&(e.scrollTop=o.current.scrollTop)}},e.createElement("table",{ref:u,style:{top:"0"},className:"p-treetable-scrollable-body-table"},h,t.body)),e.createElement("div",{className:"p-treetable-scrollable-footer",ref:s},e.createElement("div",{className:"p-treetable-scrollable-footer-box",ref:d},e.createElement("table",{className:"p-treetable-scrollable-footer-table"},h,t.footer))))}));function te(e,t){var n="undefined"!=typeof Symbol&&e[Symbol.iterator]||e["@@iterator"];if(!n){if(Array.isArray(e)||(n=ne(e))||t&&e&&"number"==typeof e.length){n&&(e=n);var r=0,l=function(){};return{s:l,n:function(){return r>=e.length?{done:!0}:{done:!1,value:e[r++]}},e:function(e){throw e},f:l}}throw new TypeError("Invalid attempt to iterate non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}var o,a=!0,i=!1;return{s:function(){n=n.call(e)},n:function(){var e=n.next();return a=e.done,e},e:function(e){i=!0,o=e},f:function(){try{a||null==n.return||n.return()}finally{if(i)throw o}}}}function ne(e,t){if(e){if("string"==typeof e)return re(e,t);var n=Object.prototype.toString.call(e).slice(8,-1);return"Object"===n&&e.constructor&&(n=e.constructor.name),"Map"===n||"Set"===n?Array.from(e):"Arguments"===n||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)?re(e,t):void 0}}function re(e,t){(null==t||t>e.length)&&(t=e.length);for(var n=0,r=new Array(t);n<t;n++)r[n]=e[n];return r}function le(e,t){var n=Object.keys(e);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(e);t&&(r=r.filter((function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable}))),n.push.apply(n,r)}return n}function oe(e){for(var t=1;t<arguments.length;t++){var n=null!=arguments[t]?arguments[t]:{};t%2?le(Object(n),!0).forEach((function(t){C(e,t,n[t])})):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(n)):le(Object(n)).forEach((function(t){Object.defineProperty(e,t,Object.getOwnPropertyDescriptor(n,t))}))}return e}ee.displayName="TreeTableScrollableView";var ae=e.forwardRef((function(n,r){var l=D.getProps(n),s=R(e.useState(l.expandedKeys),2),f=s[0],p=s[1],m=R(e.useState(l.first),2),y=m[0],g=m[1],h=R(e.useState(l.rows),2),v=h[0],S=h[1],C=R(e.useState(l.sortField),2),E=C[0],w=C[1],x=R(e.useState(l.sortOrder),2),O=x[0],P=x[1],k=R(e.useState(l.multiSortMeta),2),N=k[0],K=k[1],F=R(e.useState(l.filters),2),z=F[0],j=F[1],A=R(e.useState([]),2),I=A[0],U=A[1],H=e.useRef(null),L=e.useRef(null),G=e.useRef(null),W=e.useRef(null),_=e.useRef(null),V=e.useRef(null),X=e.useRef(null),Y=e.useRef(null),J=e.useRef(0),q=e.useRef(0),Q=e.useRef(0),ne=e.useRef(null),re=e.useRef(null),le=e.useRef(null),ie=e.useRef(null),ce=e.useRef(null),ue=e.useRef(null),se=R(u({type:"mousemove",listener:function(e){V.current&&Te(e)}}),2),fe=se[0],de=se[1],pe=R(u({type:"mouseup",listener:function(e){V.current&&(V.current=!1,De())}}),2),me=pe[0],ye=pe[1],ge=function(e){l.onToggle?l.onToggle(e):p(e.value)},be=function(e){l.onPage?l.onPage(e):(g(e.first),S(e.rows))},he=function(e){var t,n,r=e.sortField,o=l.defaultSortOrder;if(ie.current=e.sortable,ce.current=e.sortFunction,ue.current=e.sortField,"multiple"===l.sortMode){var a=e.originalEvent.metaKey||e.originalEvent.ctrlKey;if((t=M(Ye()))&&t instanceof Array){var i=t.find((function(e){return e.field===r}));o=i?ve(i.order):o}var c={field:r,order:o};o?(t&&a||(t=[]),Se(c,t)):l.removableSort&&t&&Ce(c,t),n={multiSortMeta:t}}else o=Be()===r?ve(Xe()):o,l.removableSort&&(r=o?r:null),n={sortField:r,sortOrder:o};l.onSort?l.onSort(n):(g(0),w(n.sortField),P(n.sortOrder),K(n.multiSortMeta))},ve=function(e){return l.removableSort?l.defaultSortOrder===e?-1*e:0:-1*e},Se=function(e,t){for(var n=-1,r=0;r<t.length;r++)if(t[r].field===e.field){n=r;break}n>=0?t[n]=e:t.push(e)},Ce=function(e,t){for(var n=-1,r=0;r<t.length;r++)if(t[r].field===e.field){n=r;break}n>=0&&t.splice(n,1),t=t.length>0?t:null},Ee=function(e){return we(e)},we=function e(t){var n=M(t);if(ie.current&&"custom"===ie.current&&ce.current)n=ce.current({data:t,field:Be(),order:Xe()});else{n.sort((function(e,t){var n=Be(),r=a.resolveFieldData(e.data,n),l=a.resolveFieldData(t.data,n);return Me(r,l,Xe())}));for(var r=0;r<n.length;r++)n[r].children&&n[r].children.length&&(n[r].children=e(n[r].children))}return n},xe=function(e){var t=Ye();return t?Oe(e,t):e},Oe=function e(t,n){var r=M(t);r.sort((function(e,t){return Pe(e,t,n,0)}));for(var l=0;l<r.length;l++)r[l].children&&r[l].children.length&&(r[l].children=e(r[l].children,n));return r},Pe=function e(n,r,l,o){var i=a.resolveFieldData(n.data,l[o].field),c=a.resolveFieldData(r.data,l[o].field);return 0===a.compare(i,c,t.locale)?l.length-1>o?e(n,r,l,o+1):0:Me(i,c,l[o].order)},Me=function(e,n,r){return a.sort(e,n,r,t.locale,t.nullSortOrder)},ke=function(e,t,n){Ne({value:e,field:t,matchMode:n})},Ne=function(e){var t=$e(),n=t?oe({},t):{};Ke(e.value)?n[e.field]&&delete n[e.field]:n[e.field]={value:e.value,matchMode:e.matchMode},l.onFilter?l.onFilter({filters:n}):(g(0),j(n))},Ke=function(e){return null==e||("string"==typeof e&&0===e.trim().length||e instanceof Array&&0===e.length)},Re=function(e){var t=i.getOffset(H.current).left;X.current=e.columnEl,Y.current=e.column,V.current=!0,J.current=e.originalEvent.pageX-t+H.current.scrollLeft,je()},Te=function(e){var t=i.getOffset(H.current).left;i.addClass(H.current,"p-unselectable-text"),G.current.style.height=H.current.offsetHeight+"px",G.current.style.top="0px",G.current.style.left=e.pageX-t+H.current.scrollLeft+"px",G.current.style.display="block"},De=function(e){var t=G.current.offsetLeft-J.current,n=X.current.offsetWidth,r=n+t;if(n+t>parseInt(X.current.style.minWidth||15,10)){if("fit"===l.columnResizeMode){var o=X.current.nextElementSibling,a=o.offsetWidth-t;if(r>15&&a>15)if(l.scrollable){var c=Fe(X.current),u=i.findSingle(c,"table.p-treetable-scrollable-body-table"),s=i.findSingle(c,"table.p-treetable-scrollable-header-table"),f=i.findSingle(c,"table.p-treetable-scrollable-footer-table"),d=i.index(X.current);ze(s,d,r,a),ze(u,d,r,a),ze(f,d,r,a)}else X.current.style.width=r+"px",o&&(o.style.width=a+"px")}else if("expand"===l.columnResizeMode)if(l.scrollable){var p=Fe(X.current),m=i.findSingle(p,"table.p-treetable-scrollable-body-table"),y=i.findSingle(p,"table.p-treetable-scrollable-header-table"),g=i.findSingle(p,"table.p-treetable-scrollable-footer-table");m.style.width=m.offsetWidth+t+"px",y.style.width=y.offsetWidth+t+"px",g&&(g.style.width=y.offsetWidth+t+"px");var b=i.index(X.current);ze(y,b,r,null),ze(m,b,r,null),ze(g,b,r,null)}else L.current.style.width=L.current.offsetWidth+t+"px",X.current.style.width=r+"px";l.onColumnResizeEnd&&l.onColumnResizeEnd({element:X.current,column:Y.current,delta:t})}G.current.style.display="none",X.current=null,Y.current=null,i.removeClass(H.current,"p-unselectable-text"),Ae()},Fe=function(e){if(e){for(var t=e.parentElement;t&&!i.hasClass(t,"p-treetable-scrollable-view");)t=t.parentElement;return t}return null},ze=function(e,t,n,r){if(e){var l="COLGROUP"===e.children[0].nodeName?e.children[0]:null;if(!l)throw new Error("Scrollable tables require a colgroup to support resizable columns");var o=l.children[t],a=o.nextElementSibling;o.style.width=n+"px",a&&r&&(a.style.width=r+"px")}},je=function(){fe(),me()},Ae=function(){de(),ye()},Ie=function(e){var t=e.originalEvent,n=e.column;V.current?t.preventDefault():(q.current=i.getHiddenElementOuterWidth(W.current),Q.current=i.getHiddenElementOuterHeight(W.current),ne.current=Ge(t.currentTarget),re.current=n,t.dataTransfer.setData("text","b"))},Ue=function(e){var t=e.originalEvent,n=Ge(t.currentTarget);if(l.reorderableColumns&&ne.current&&n){t.preventDefault();var r=i.getOffset(H.current),o=i.getOffset(n);if(ne.current!==n){var a=o.left-r.left,c=o.left+n.offsetWidth/2;W.current.style.top=o.top-r.top-(Q.current-1)+"px",_.current.style.top=o.top-r.top+n.offsetHeight+"px",t.pageX>c?(W.current.style.left=a+n.offsetWidth-Math.ceil(q.current/2)+"px",_.current.style.left=a+n.offsetWidth-Math.ceil(q.current/2)+"px",le.current=1):(W.current.style.left=a-Math.ceil(q.current/2)+"px",_.current.style.left=a-Math.ceil(q.current/2)+"px",le.current=-1),W.current.style.display="block",_.current.style.display="block"}}},He=function(e){l.reorderableColumns&&ne.current&&(e.originalEvent.preventDefault(),W.current.style.display="none",_.current.style.display="none")},Le=function(t){var n=t.originalEvent,r=t.column;if(n.preventDefault(),ne.current){var o=i.index(ne.current),c=i.index(Ge(n.currentTarget)),u=o!==c;if(u&&(c-o==1&&-1===le.current||o-c==1&&1===le.current)&&(u=!1),u){var s=I?qe():e.Children.toArray(l.children),f=function(e,t){return We(e,"columnKey")||We(t,"columnKey")?a.equals(e,t,"props.columnKey"):a.equals(e,t,"props.field")},d=s.findIndex((function(e){return f(e,re.current)})),p=s.findIndex((function(e){return f(e,r)}));p<d&&1===le.current&&p++,p>d&&-1===le.current&&p--,a.reorderArray(s,d,p);var m,y=[],g=te(s);try{for(g.s();!(m=g.n()).done;){var b=m.value;y.push(We(b,"columnKey")||We(b,"field"))}}catch(e){g.e(e)}finally{g.f()}U(y),l.onColReorder&&l.onColReorder({dragIndex:d,dropIndex:p,columns:s})}W.current.style.display="none",_.current.style.display="none",ne.current.draggable=!1,ne.current=null,le.current=null}},Ge=function(e){if("TH"===e.nodeName)return e;for(var t=e.parentElement;"TH"!==t.nodeName&&(t=t.parentElement););return t},We=function(e,t){return T.getCProp(e,t)},_e=function(){return l.onPage?l.first:y},Ve=function(){return l.onPage?l.rows:v},Be=function(){return l.onSort?l.sortField:E},Xe=function(){return l.onSort?l.sortOrder:O},Ye=function(){return(l.onSort?l.multiSortMeta:N)||[]},$e=function(){return l.onFilter?l.filters:z},Je=function(e,t){if(e&&e.length)for(var n=0;n<e.length;n++){var r=e[n];if(We(r,"columnKey")===t||We(r,"field")===t)return r}return null},qe=function(){var t=e.Children.toArray(l.children);if(t&&t.length){if(l.reorderableColumns&&I){var n,r=[],o=te(I);try{for(o.s();!(n=o.n()).done;){var a=Je(t,n.value);a&&r.push(a)}}catch(e){o.e(e)}finally{o.f()}return[].concat(r,M(t.filter((function(e){return r.indexOf(e)<0}))))}return t}return null},Qe=function(e){var t,n=null,r=te(e);try{for(r.s();!(t=r.n()).done;){var l=t.value;We(l,"frozen")&&(n=n||[]).push(l)}}catch(e){r.e(e)}finally{r.f()}return n},Ze=function(e){var t,n=null,r=te(e);try{for(r.s();!(t=r.n()).done;){var l=t.value;We(l,"frozen")||(n=n||[]).push(l)}}catch(e){r.e(e)}finally{r.f()}return n},et=function(t){var n,r=[],a=$e(),i=e.Children.toArray(l.children),c="strict"===l.filterMode,u=te(t);try{for(u.s();!(n=u.n()).done;){for(var s=n.value,f=oe({},s),d=!0,p=!1,m=0;m<i.length;m++){var y=i[m],g=a?a[We(y,"field")]:null,b=We(y,"field"),h=void 0;if(g){var v=g.matchMode||We(y,"filterMatchMode")||"startsWith";if(h={filterField:b,filterValue:g.value,filterConstraint:"custom"===v?We(y,"filterFunction"):o.filters[v],isStrictMode:c,options:{rowData:s,filters:a,props:l,column:{filterMeta:g,filterField:b,props:T.getCProps(y)}}},(!c||tt(f,h)||nt(f,h))&&(c||nt(f,h)||tt(f,h))||(d=!1),!d)break}if(l.globalFilter&&!p){var S=oe({},f);h={filterField:b,filterValue:l.globalFilter,filterConstraint:o.filters[l.globalFilterMatchMode],isStrictMode:c},(c&&(tt(S,h)||nt(S,h))||!c&&(nt(S,h)||tt(S,h)))&&(p=!0,f=S)}}var C=d;l.globalFilter&&(C=d&&p),C&&r.push(f)}}catch(e){u.e(e)}finally{u.f()}return r},tt=function(e,t){if(e){var n=!1;if(e.children){var r=M(e.children);e.children=[];var l,o=te(r);try{for(o.s();!(l=o.n()).done;){var a=oe({},l.value);nt(a,t)&&(n=!0,e.children.push(a))}}catch(e){o.e(e)}finally{o.f()}}if(n)return!0}},nt=function(e,t){var n=t.filterField,r=t.filterValue,o=t.filterConstraint,i=t.isStrictMode,c=t.options,u=!1;return o(a.resolveFieldData(e.data,n),r,l.filterLocale,c)&&(u=!0),(!u||i&&!rt(e))&&(u=tt(e,{filterField:n,filterValue:r,filterConstraint:o,isStrictMode:i})||u),u},rt=function(e){return!1!==e.leaf&&!(e.children&&e.children.length)};e.useImperativeHandle(r,(function(){return{props:l,filter:ke,getElement:function(){return H.current}}}));var lt,ot=function(t,n){var r=Be(),o=Xe(),a=M(Ye()),i=$e();return e.createElement(Z,{columns:t,columnGroup:n,tabIndex:l.tabIndex,onSort:he,sortField:r,sortOrder:o,multiSortMeta:a,resizableColumns:l.resizableColumns,onResizeStart:Re,reorderableColumns:l.reorderableColumns,onDragStart:Ie,onDragOver:Ue,onDragLeave:He,onDrop:Le,onFilter:Ne,filters:i,filterDelay:l.filterDelay})},at=function(t,n){return e.createElement($,{columns:t,columnGroup:n})},it=function(t,n){return e.createElement(B,{value:t,columns:n,expandedKeys:l.onToggle?l.expandedKeys:f,selectOnEdit:l.selectOnEdit,onToggle:ge,onExpand:l.onExpand,onCollapse:l.onCollapse,paginator:l.paginator,first:_e(),rows:Ve(),selectionMode:l.selectionMode,selectionKeys:l.selectionKeys,onSelectionChange:l.onSelectionChange,metaKeySelection:l.metaKeySelection,onRowClick:l.onRowClick,onSelect:l.onSelect,onUnselect:l.onUnselect,propagateSelectionUp:l.propagateSelectionUp,propagateSelectionDown:l.propagateSelectionDown,lazy:l.lazy,rowClassName:l.rowClassName,emptyMessage:l.emptyMessage,loading:l.loading,contextMenuSelectionKey:l.contextMenuSelectionKey,onContextMenuSelectionChange:l.onContextMenuSelectionChange,onContextMenu:l.onContextMenu})},ct=function(t,n){var r=c("p-paginator-"+t,l.paginatorClassName);return e.createElement(d,{first:_e(),rows:Ve(),pageLinkSize:l.pageLinkSize,className:r,onPageChange:be,template:l.paginatorTemplate,totalRecords:n,rowsPerPageOptions:l.rowsPerPageOptions,currentPageReportTemplate:l.currentPageReportTemplate,leftContent:l.paginatorLeft,rightContent:l.paginatorRight,alwaysShow:l.alwaysShowPaginator,dropdownAppendTo:l.paginatorDropdownAppendTo})},ut=function(t,n,r,o,a){var i=ot(n,o),c=at(n,a),u=it(t,n);return e.createElement(ee,{columns:n,header:i,body:u,footer:c,scrollHeight:l.scrollHeight,frozen:r,frozenWidth:l.frozenWidth})},st=function(t){var n,r,o=qe(),a=Qe(o),i=a?Ze(o):o;return a&&(n=ut(t,a,!0,l.frozenHeaderColumnGroup,l.frozenFooterColumnGroup)),r=ut(t,i,!1,l.headerColumnGroup,l.footerColumnGroup),e.createElement("div",{className:"p-treetable-wrapper p-treetable-scrollable-wrapper"},n,r)},ft=function(t){var n=qe(),r=ot(n,l.headerColumnGroup),o=at(n,l.footerColumnGroup),a=it(t,n),i=c("p-treetable-table",{"p-treetable-scrollable-table":l.scrollable,"p-treetable-resizable-table":l.resizableColumns,"p-treetable-resizable-table-fit":l.resizableColumns&&"fit"===l.columnResizeMode},l.tableClassName);return e.createElement("div",{className:"p-treetable-wrapper"},e.createElement("table",{ref:L,style:l.tableStyle,className:i},r,o,a))},dt=function(){var e=l.value||[];if(!l.lazy&&e&&e.length){var t=$e(),n=Be(),r=Ye();(a.isNotEmpty(t)||l.globalFilter)&&(e=et(e)),(n||a.isNotEmpty(r))&&("single"===l.sortMode?e=Ee(e):"multiple"===l.sortMode&&(e=xe(e)))}return e}(),pt=a.findDiffKeys(l,ae.defaultProps),mt=c("p-treetable p-component",{"p-treetable-hoverable-rows":l.rowHover,"p-treetable-selectable":l.selectionMode&&"single"===l.selectionMode||l.selectionMode&&"multiple"===l.selectionMode,"p-treetable-resizable":l.resizableColumns,"p-treetable-resizable-fit":l.resizableColumns&&"fit"===l.columnResizeMode,"p-treetable-striped":l.stripedRows,"p-treetable-gridlines":l.showGridlines},l.className),yt=(lt=dt,l.scrollable?st(lt):ft(lt)),gt=function(e){return l.lazy?l.totalRecords:e?e.length:0}(dt),bt=l.header&&e.createElement("div",{className:"p-treetable-header"},l.header),ht=l.footer&&e.createElement("div",{className:"p-treetable-footer"},l.footer),vt=l.paginator&&"bottom"!==l.paginatorPosition&&ct("top",gt),St=l.paginator&&"top"!==l.paginatorPosition&&ct("bottom",gt),Ct=function(){if(l.loading){var t=c("p-treetable-loading-icon pi-spin",l.loadingIcon);return e.createElement("div",{className:"p-treetable-loading"},e.createElement("div",{className:"p-treetable-loading-overlay p-component-overlay"},e.createElement("i",{className:t})))}return null}(),Et=l.resizableColumns&&e.createElement("div",{ref:G,className:"p-column-resizer-helper",style:{display:"none"}}),wt=l.reorderableColumns&&e.createElement("span",{ref:W,className:"pi pi-arrow-down p-datatable-reorder-indicator-up",style:{position:"absolute",display:"none"}}),xt=l.reorderableColumns&&e.createElement("span",{ref:_,className:"pi pi-arrow-up p-datatable-reorder-indicator-down",style:{position:"absolute",display:"none"}});return e.createElement("div",b({ref:H,id:l.id,className:mt,style:l.style,"data-scrollselectors":".p-treetable-wrapper"},pt),Ct,bt,vt,yt,St,ht,Et,wt,xt)}));ae.displayName="TreeTable";export{ae as TreeTable};