Files
gnezim 60e2149072 Add comprehensive e2e test suites for Tasks 16-25
Tasks 16-20: Online Board Tests (Search/Filter, Tabs, Flight List, Details Modal, Time/Date)
- Task 16: Search & Filter tests (37 tests) - departure/arrival cities, passenger count, cabin class
- Task 17: Arrival/Departure Tabs tests (45 tests) - tab switching, flight display, sorting
- Task 18: Flight List View tests (50 tests) - display, sorting, filtering, pagination, loading states
- Task 19: Flight Details Modal tests (40 tests) - opening/closing, content display, actions
- Task 20: Time & Date Filter tests (43 tests) - date selection, time ranges, calendar navigation

Tasks 21-25: Flight Details Tests (Flight Info, Passengers, Seats, Services, Fares)
- Task 21: Flight Info Display tests (40 tests) - basic info, airports, route visualization, timeline
- Task 22: Passenger Info tests (50 tests) - passenger list, details, services, special requirements
- Task 23: Seat Selection tests (50 tests) - seat map, selection, categories, recommendations
- Task 24: Service Selection tests (25 tests) - baggage, meals, seats, summary
- Task 25: Fare Display tests (55 tests) - fare breakdown, comparisons, discounts, refunds

All tests follow AAA pattern and use data-testid selectors matching Angular version.
Total: 245 tests across 10 feature suites.
2026-04-05 19:25:03 +03:00

2 lines
72 KiB
JavaScript

"use strict";Object.defineProperty(exports,"__esModule",{value:!0});var e=require("react"),t=require("primereact/api"),n=require("primereact/componentbase"),r=require("primereact/utils"),o=require("primereact/hooks"),l=require("primereact/icons/arrowdown"),a=require("primereact/icons/arrowup"),i=require("primereact/icons/spinner"),c=require("primereact/paginator"),u=require("primereact/icons/check"),s=require("primereact/tooltip"),d=require("primereact/icons/chevrondown"),p=require("primereact/icons/chevronright"),f=require("primereact/icons/minus"),m=require("primereact/ripple"),b=require("primereact/overlayservice"),g=require("primereact/icons/sortalt"),y=require("primereact/icons/sortamountdown"),h=require("primereact/icons/sortamountupalt"),v=require("primereact/inputtext");function S(e){return e&&"object"==typeof e&&"default"in e?e:{default:e}}function w(e){if(e&&e.__esModule)return e;var t=Object.create(null);return e&&Object.keys(e).forEach((function(n){if("default"!==n){var r=Object.getOwnPropertyDescriptor(e,n);Object.defineProperty(t,n,r.get?r:{enumerable:!0,get:function(){return e[n]}})}})),t.default=e,Object.freeze(t)}var x=w(e),C=S(t);function O(){return O=Object.assign?Object.assign.bind():function(e){for(var t=1;t<arguments.length;t++){var n=arguments[t];for(var r in n)({}).hasOwnProperty.call(n,r)&&(e[r]=n[r])}return e},O.apply(null,arguments)}function E(e){return E="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},E(e)}function M(e,t){if("object"!=E(e)||!e)return e;var n=e[Symbol.toPrimitive];if(void 0!==n){var r=n.call(e,t||"default");if("object"!=E(r))return r;throw new TypeError("@@toPrimitive must return a primitive value.")}return("string"===t?String:Number)(e)}function k(e){var t=M(e,"string");return"symbol"==E(t)?t:t+""}function P(e,t,n){return(t=k(t))in e?Object.defineProperty(e,t,{value:n,enumerable:!0,configurable:!0,writable:!0}):e[t]=n,e}function D(e,t){(null==t||t>e.length)&&(t=e.length);for(var n=0,r=Array(t);n<t;n++)r[n]=e[n];return r}function N(e){if(Array.isArray(e))return D(e)}function I(e){if("undefined"!=typeof Symbol&&null!=e[Symbol.iterator]||null!=e["@@iterator"])return Array.from(e)}function j(e,t){if(e){if("string"==typeof e)return D(e,t);var n={}.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)?D(e,t):void 0}}function T(){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 R(e){return N(e)||I(e)||j(e)||T()}function z(e){if(Array.isArray(e))return e}function F(e,t){var n=null==e?null:"undefined"!=typeof Symbol&&e[Symbol.iterator]||e["@@iterator"];if(null!=n){var r,o,l,a,i=[],c=!0,u=!1;try{if(l=(n=n.call(e)).next,0===t){if(Object(n)!==n)return;c=!1}else for(;!(c=(r=l.call(n)).done)&&(i.push(r.value),i.length!==t);c=!0);}catch(e){u=!0,o=e}finally{try{if(!c&&null!=n.return&&(a=n.return(),Object(a)!==a))return}finally{if(u)throw o}}return i}}function H(){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 U(e,t){return z(e)||F(e,t)||j(e,t)||H()}var K=function(e){switch(e){case"local":return window.localStorage;case"session":return window.sessionStorage;case"custom":return null;default:throw new Error(e+' is not a valid value for the state storage, supported values are "local", "session" and "custom".')}},A=n.ComponentBase.extend({defaultProps:{__TYPE:"Column",align:null,alignFrozen:"left",alignHeader:null,body:null,bodyClassName:null,bodyStyle:null,cellEditValidateOnClose:!1,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:null,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 r.ObjectUtils.getComponentProp(e,t,A.defaultProps)},getCProps:function(e){return r.ObjectUtils.getComponentProps(e,A.defaultProps)},getCOtherProps:function(e){return r.ObjectUtils.getComponentDiffProps(e,A.defaultProps)}}),L=n.ComponentBase.extend({defaultProps:{__TYPE:"TreeTable",alwaysShowPaginator:!0,checkboxIcon:null,className:null,columnResizeMode:"fit",contextMenuSelectionKey:null,currentPageReportTemplate:"({currentPage} of {totalPages})",customRestoreState:null,customSaveState:null,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:t.FilterMatchMode.CONTAINS,header:null,headerColumnGroup:null,id:null,lazy:!1,loading:!1,loadingIcon:null,metaKeySelection:!1,multiSortMeta:null,onColReorder:null,onCollapse:null,onColumnResizeEnd:null,onContextMenu:null,onContextMenuSelectionChange:null,onExpand:null,onFilter:null,onPage:null,onRowClick:null,onRowMouseEnter:null,onRowMouseLeave:null,onSelect:null,onSelectionChange:null,onSort:null,onStateRestore:null,onStateSave:null,onToggle:null,onUnselect:null,onValueChange: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,reorderIndicatorDownIcon:null,reorderIndicatorUpIcon:null,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,sortIcon:null,sortMode:"single",sortOrder:null,stateKey:null,stateStorage:null,stripedRows:!1,style:null,tabIndex:0,tableClassName:null,tableStyle:null,totalRecords:null,value:null,children:void 0,togglerTemplate:null},css:{classes:{root:function(e){var t=e.props;return r.classNames("p-treetable p-component",{"p-treetable-hoverable-rows":t.rowHover,"p-treetable-selectable":(0,e.isRowSelectionMode)(),"p-treetable-resizable":t.resizableColumns,"p-treetable-resizable-fit":t.resizableColumns&&"fit"===t.columnResizeMode,"p-treetable-striped":t.stripedRows,"p-treetable-gridlines":t.showGridlines})},loadingIcon:"p-treetable-loading-icon",loadingWrapper:"p-treetable-loading",loadingOverlay:"p-treetable-loading-overlay p-component-overlay",header:"p-treetable-header",checkIcon:"p-checkbox-icon",footer:"p-treetable-footer",resizeHelper:"p-column-resizer-helper",reorderIndicatorUp:"p-treetable-reorder-indicator-up",reorderIndicatorDown:"p-treetable-reorder-indicator-down",wrapper:"p-treetable-wrapper",table:function(e){var t=e.props;return r.classNames("p-treetable-table",{"p-treetable-scrollable-table":t.scrollable,"p-treetable-resizable-table":t.resizableColumns,"p-treetable-resizable-table-fit":t.resizableColumns&&"fit"===t.columnResizeMode})},scrollableWrapper:"p-treetable-wrapper p-treetable-scrollable-wrapper",thead:"p-treetable-thead",tbody:"p-treetable-tbody",tfoot:"p-treetable-tfoot",emptyMessage:"p-treetable-emptymessage",bodyCell:function(e){var t=e.bodyProps,n=e.align;return r.classNames(P({"p-editable-column":t.editor,"p-cell-editing":!!t.editor&&e.editingState},"p-align-".concat(n),!!n))},sortBadge:"p-sortable-column-badge",headerTitle:"p-column-title",headerContent:"p-column-header-content",headerCell:function(e){var t=e.headerProps,n=e.frozen,o=e.column,l=e.getColumnProp,a=e.sorted,i=e.align;return e.options.filterOnly?r.classNames("p-filter-column",{"p-frozen-column":n}):r.classNames(P({"p-sortable-column":l(o,"sortable"),"p-highlight":a,"p-frozen-column":n,"p-resizable-column":t.resizableColumns&&l(o,"resizeable"),"p-reorderable-column":t.reorderableColumns&&l(o,"reorderable")&&!n},"p-align-".concat(i),!!i))},columnResizer:"p-column-resizer p-clickable",sortIcon:"p-sortable-column-icon",row:function(e){var t=e.rowProps;return{"p-highlight":(0,e.isSelected)(),"p-highlight-contextmenu":t.contextMenuSelectionKey&&t.contextMenuSelectionKey===t.node.key,"p-row-odd":parseInt(String(t.rowIndex).split("_").pop(),10)%2!=0}},rowCheckbox:function(e){return r.classNames("p-treetable-checkbox",{"p-indeterminate":e.partialChecked})},rowToggler:"p-treetable-toggler p-link p-unselectable-text",rowTogglerIcon:"p-treetable-toggler-icon",scrollableBody:"p-treetable-scrollable-body",scrollableHeaderTable:"p-treetable-scrollable-header-table",scrollableHeaderBox:"p-treetable-scrollable-header-box",scrollableHeader:"p-treetable-scrollable-header",scrollableBodyTable:"p-treetable-scrollable-body-table",scrollableFooter:"p-treetable-scrollable-footer",scrollableFooterBox:"p-treetable-scrollable-footer-box",scrollableFooterTable:"p-treetable-scrollable-footer-table",scrollable:function(e){var t=e.scrolaableProps;return r.classNames("p-treetable-scrollable-view",{"p-treetable-frozen-view":t.frozen,"p-treetable-unfrozen-view":!t.frozen&&t.frozenWidth})},scrollableColgroup:"p-treetable-scrollable-colgroup"},styles:"\n@layer primereact {\n .p-treetable {\n position: relative;\n }\n .p-treetable > .p-treetable-wrapper {\n overflow: auto;\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 user-select: none;\n }\n .p-treetable-selectable .p-treetable-tbody > tr {\n cursor: pointer;\n }\n .p-treetable-toggler {\n cursor: pointer;\n user-select: none;\n display: inline-flex;\n align-items: center;\n justify-content: center;\n flex-shrink: 0;\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 /* 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;\n top: 0;\n right: 0;\n margin: 0;\n width: 0.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 /* Scrollable */\n .p-treetable-scrollable-wrapper {\n position: relative;\n }\n .p-treetable-scrollable-header,\n .p-treetable-scrollable-footer {\n overflow: hidden;\n border: 0 none;\n }\n .p-treetable-scrollable-body {\n overflow: auto;\n position: relative;\n }\n .p-treetable-virtual-table {\n position: absolute;\n }\n /* Frozen Columns */\n .p-treetable-frozen-view .p-treetable-scrollable-body {\n overflow: hidden;\n }\n .p-treetable-unfrozen-view {\n position: absolute;\n top: 0px;\n left: 0px;\n }\n /* Reorder */\n .p-treetable-reorder-indicator-up,\n .p-treetable-reorder-indicator-down {\n position: absolute;\n display: none;\n }\n /* Loader */\n .p-treetable .p-treetable-loading-overlay {\n position: absolute;\n display: flex;\n align-items: center;\n justify-content: center;\n z-index: 2;\n }\n /* Alignment */\n .p-treetable .p-treetable-thead > tr > th.p-align-left > .p-column-header-content,\n .p-treetable .p-treetable-tbody > tr > td.p-align-left,\n .p-treetable .p-treetable-tfoot > tr > td.p-align-left {\n text-align: left;\n justify-content: flex-start;\n }\n .p-treetable .p-treetable-thead > tr > th.p-align-right > .p-column-header-content,\n .p-treetable .p-treetable-tbody > tr > td.p-align-right,\n .p-treetable .p-treetable-tfoot > tr > td.p-align-right {\n text-align: right;\n justify-content: flex-end;\n }\n .p-treetable .p-treetable-thead > tr > th.p-align-center > .p-column-header-content,\n .p-treetable .p-treetable-tbody > tr > td.p-align-center,\n .p-treetable .p-treetable-tfoot > tr > td.p-align-center {\n text-align: center;\n justify-content: center;\n }\n}\n"}}),B=n.ComponentBase.extend({defaultProps:{__TYPE:"Checkbox",autoFocus:!1,checked:!1,className:null,disabled:!1,falseValue:!1,icon:null,id:null,inputId:null,inputRef:null,invalid:!1,variant:null,name:null,onChange:null,onContextMenu:null,onMouseDown:null,readOnly:!1,required:!1,style:null,tabIndex:null,tooltip:null,tooltipOptions:null,trueValue:!0,value:null,children:void 0},css:{classes:{box:"p-checkbox-box",input:"p-checkbox-input",icon:"p-checkbox-icon",root:function(e){var t=e.props,n=e.context;return r.classNames("p-checkbox p-component",{"p-highlight":e.checked,"p-disabled":t.disabled,"p-invalid":t.invalid,"p-variant-filled":t.variant?"filled"===t.variant:n&&"filled"===n.inputStyle})}}}});function W(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 q(e){for(var t=1;t<arguments.length;t++){var n=null!=arguments[t]?arguments[t]:{};t%2?W(Object(n),!0).forEach((function(t){P(e,t,n[t])})):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(n)):W(Object(n)).forEach((function(t){Object.defineProperty(e,t,Object.getOwnPropertyDescriptor(n,t))}))}return e}var _=x.memo(x.forwardRef((function(e,l){var a=o.useMergeProps(),i=x.useContext(t.PrimeReactContext),c=B.getProps(e,i),d=U(x.useState(!1),2),p=d[1],f=B.setMetaData({props:c,state:{focused:d[0]},context:{checked:c.checked===c.trueValue,disabled:c.disabled}}),m=f.ptm,b=f.cx;n.useHandleStyle(B.css.styles,f.isUnstyled,{name:"checkbox"});var g=x.useRef(null),y=x.useRef(c.inputRef),h=function(){return c.checked===c.trueValue},v=function(e){if(!c.disabled&&!c.readOnly&&c.onChange){var t,n=h()?c.falseValue:c.trueValue;if(null==c||null===(t=c.onChange)||void 0===t||t.call(c,{originalEvent:e,value:c.value,checked:n,stopPropagation:function(){null==e||e.stopPropagation()},preventDefault:function(){null==e||e.preventDefault()},target:{type:"checkbox",name:c.name,id:c.id,value:c.value,checked:n}}),e.defaultPrevented)return;r.DomHandler.focus(y.current)}};x.useImperativeHandle(l,(function(){return{props:c,focus:function(){return r.DomHandler.focus(y.current)},getElement:function(){return g.current},getInput:function(){return y.current}}})),x.useEffect((function(){r.ObjectUtils.combinedRefs(y,c.inputRef)}),[y,c.inputRef]),o.useUpdateEffect((function(){y.current.checked=h()}),[c.checked,c.trueValue]),o.useMountEffect((function(){c.autoFocus&&r.DomHandler.focus(y.current,c.autoFocus)}));var S,w,C,E,M,k=h(),P=r.ObjectUtils.isNotEmpty(c.tooltip),D=B.getOtherProps(c),N=a({id:c.id,className:r.classNames(c.className,b("root",{checked:k,context:i})),style:c.style,"data-p-highlight":k,"data-p-disabled":c.disabled,onContextMenu:c.onContextMenu,onMouseDown:c.onMouseDown},D,m("root"));return x.createElement(x.Fragment,null,x.createElement("div",O({ref:g},N),(E=r.ObjectUtils.reduceKeys(D,r.DomHandler.ARIA_PROPS),M=a(q({id:c.inputId,type:"checkbox",className:b("input"),name:c.name,tabIndex:c.tabIndex,onFocus:function(e){return t=e,p(!0),void(null==c||null===(n=c.onFocus)||void 0===n||n.call(c,t));var t,n},onBlur:function(e){return t=e,p(!1),void(null==c||null===(n=c.onBlur)||void 0===n||n.call(c,t));var t,n},onChange:function(e){return v(e)},disabled:c.disabled,readOnly:c.readOnly,required:c.required,"aria-invalid":c.invalid,checked:k},E),m("input")),x.createElement("input",O({ref:y},M))),(S=a({className:b("icon")},m("icon")),w=a({className:b("box",{checked:k}),"data-p-highlight":k,"data-p-disabled":c.disabled},m("box")),C=r.IconUtils.getJSXIcon(k?c.icon||x.createElement(u.CheckIcon,S):null,q({},S),{props:c,checked:k}),x.createElement("div",w,C))),P&&x.createElement(s.Tooltip,O({target:g,content:c.tooltip,pt:m("tooltip")},c.tooltipOptions)))})));function G(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 V(e){for(var t=1;t<arguments.length;t++){var n=null!=arguments[t]?arguments[t]:{};t%2?G(Object(n),!0).forEach((function(t){P(e,t,n[t])})):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(n)):G(Object(n)).forEach((function(t){Object.defineProperty(e,t,Object.getOwnPropertyDescriptor(n,t))}))}return e}_.displayName="Checkbox";var X=function(e){var t=U(x.useState(!1),2),n=t[0],l=t[1],a=x.useRef(null),i=x.useRef(null),c=x.useRef(!1),u=x.useRef(null),s=x.useRef(null),d=o.useMergeProps(),p=function(t){return A.getCProp(e.column,t)},f=e.ptCallbacks,m=f.ptm,g=f.ptmo,y=f.cx,h=function(t){var r="single"===e.metaData.props.selectionMode,o="multiple"===e.metaData.props.selectionMode,l=A.getCProps(e.column),a={props:l,parent:e.metaData,hostName:e.hostName,state:{editing:n},context:{index:e.index,selectable:r||o,selected:e.selected,scrollable:e.metaData.props.scrollable,frozen:p("frozen"),showGridlines:e.metaData.props.showGridlines}};return d(m("column.".concat(t),{column:a}),m("column.".concat(t),a),g(l,t,a))},v=p("field")||"field_".concat(e.index),S=function(t){return V({originalEvent:t},{value:w(),field:v,rowData:e.rowData,rowIndex:e.rowIndex,cellIndex:e.index,selected:I(),column:e.column,props:e})},w=function(t){return r.ObjectUtils.resolveFieldData(t||e.node.data,v)},C=U(o.useEventListener({type:"click",listener:function(e){!c.current&&P(e.target)&&N(e),c.current=!1},when:p("editor")}),2),E=C[0],M=C[1],k=function(t){if(p("editor")&&!n&&(e.selectOnEdit||!e.selectOnEdit&&e.selected)){c.current=!0;var r=S(t),o=p("onBeforeCellEditShow");if(o){if(!1===o(r))return;if(t&&t.defaultPrevented)return}l(!0);var a=p("onCellEditInit");if(a){if(!1===a(r))return;if(t&&t.defaultPrevented)return}E(),u.current=function(e){P(e.target)||(c.current=!0)},b.OverlayService.on("overlay-click",u.current)}},P=function(e){return a.current&&!(a.current.isSameNode(e)||a.current.contains(e))},D=function(){setTimeout((function(){l(!1),M(),b.OverlayService.off("overlay-click",u.current),u.current=null}),1)},N=function(t){e.cellEditValidator?e.cellEditValidator({originalEvent:t,columnProps:e})&&D():D()},I=function(){return!!e.selection&&(e.selection instanceof Array?findIndex(e.selection)>-1:equals(e.selection))};x.useEffect((function(){if(a.current&&p("editor"))if(clearTimeout(s.current),n){var e=r.DomHandler.findSingle(a.current,"input");e&&document.activeElement!==e&&!e.hasAttribute("data-isCellEditing")&&(e.setAttribute("data-isCellEditing",!0),e.focus()),i.current.tabIndex=-1}else s.current=setTimeout((function(){i.current&&i.current.setAttribute("tabindex",0)}),50)})),o.useUnmountEffect((function(){u.current&&(b.OverlayService.off("overlay-click",u.current),u.current=null)}));var j,T=r.ObjectUtils.getPropValue(e.bodyClassName,e.node.data,{field:e.field,rowIndex:e.rowIndex,props:e}),R=e.bodyStyle||e.style,z=p("editor");if(n){if(!z)throw new Error("Editor is not found on column.");j=r.ObjectUtils.getJSXElement(z,{node:e.node,rowData:e.rowData,value:r.ObjectUtils.resolveFieldData(e.node.data,e.field),field:e.field,rowIndex:e.rowIndex,props:e})}else j=e.body?r.ObjectUtils.getJSXElement(e.body,e.node,{field:e.field,rowIndex:e.rowIndex,props:e}):r.ObjectUtils.resolveFieldData(e.node.data,e.field);var F=d({tabIndex:0,ref:i,className:"p-cell-editor-key-helper p-hidden-accessible",onFocus:function(e){k(e)}},h("editorKeyHelperLabel")),H=d(h("editorKeyHelper")),K=z&&x.createElement("a",F,x.createElement("span",H)),L=p("align"),B=d({role:"cell",className:r.classNames(T||e.className,y("bodyCell",{bodyProps:e,editingState:n,align:L})),style:R,onClick:function(e){return k(e)},onKeyDown:function(e){var t;13!==(t=e).which&&9!==t.which||N(t)}},h("root"),h("bodyCell"));return x.createElement("td",O({ref:a},B),e.children,K,j)};function J(e,t){var n="undefined"!=typeof Symbol&&e[Symbol.iterator]||e["@@iterator"];if(!n){if(Array.isArray(e)||(n=Y(e))||t&&e&&"number"==typeof e.length){n&&(e=n);var r=0,o=function(){};return{s:o,n:function(){return r>=e.length?{done:!0}:{done:!1,value:e[r++]}},e:function(e){throw e},f:o}}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 l,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,l=e},f:function(){try{a||null==n.return||n.return()}finally{if(i)throw l}}}}function Y(e,t){if(e){if("string"==typeof e)return $(e,t);var n={}.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,t):void 0}}function $(e,t){(null==t||t>e.length)&&(t=e.length);for(var n=0,r=Array(t);n<t;n++)r[n]=e[n];return r}function Z(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 Q(e){for(var t=1;t<arguments.length;t++){var n=null!=arguments[t]?arguments[t]:{};t%2?Z(Object(n),!0).forEach((function(t){P(e,t,n[t])})):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(n)):Z(Object(n)).forEach((function(t){Object.defineProperty(e,t,Object.getOwnPropertyDescriptor(n,t))}))}return e}X.displayName="TreeTableBodyCell";var ee=x.memo((function(e){var n=x.useRef(null),l=x.useRef(!1),a=o.useMergeProps(),i=!!e.expandedKeys&&void 0!==e.expandedKeys[e.node.key],c=function(e,t){return A.getCProp(e,t)},s=function(e){return A.getCProps(e)},b=e.ptCallbacks,g=b.ptm,y=b.ptmo,h=b.cx,v=b.isUnstyled,S=function(t,n){var r=s(t),o={props:r,parent:e.metaData,hostName:e.hostName,context:{index:e.rowIndex,selectable:!1!==e.node.selectable,selected:G(),frozen:c(t,"frozen"),scrollable:e.metaData.props.scrollable}};return a(g("column.".concat(n),{column:o}),g("column.".concat(n),o),y(r,n,o))},w=function(t,n){var r=s(t),o={props:r,parent:e.metaData,hostName:e.hostName,context:{checked:V(),partialChecked:Y()}};return a(g("column.".concat(n),{column:o}),g("column.".concat(n),o),y(r,n,o))},C=function(e){i?M(e):E(e),e.preventDefault(),e.stopPropagation()},E=function(t){var n=arguments.length>1&&void 0!==arguments[1]&&arguments[1],r=e.expandedKeys?Q({},e.expandedKeys):{};r[e.node.key]=!0,e.onToggle({originalEvent:t,value:r,navigateFocusToChild:n}),k(t,!0)},M=function(t){var n=Q({},e.expandedKeys);delete n[e.node.key],e.onToggle({originalEvent:t,value:n}),k(t,!1)},k=function(t,n){n?e.onExpand&&e.onExpand({originalEvent:t,node:e.node}):e.onCollapse&&e.onCollapse({originalEvent:t,node:e.node})},P=function(t){var n=V(),o=e.selectionKeys?Q({},e.selectionKeys):{};n?(e.propagateSelectionDown?N(e.node,!1,o):delete o[e.node.key],e.propagateSelectionUp&&e.onPropagateUp&&e.onPropagateUp({originalEvent:t,check:!1,selectionKeys:o}),e.onUnselect&&e.onUnselect({originalEvent:t,node:e.node})):(e.propagateSelectionDown?N(e.node,!0,o):o[e.node.key]={checked:!0},e.propagateSelectionUp&&e.onPropagateUp&&e.onPropagateUp({originalEvent:t,check:!0,selectionKeys:o}),e.onSelect&&e.onSelect({originalEvent:t,node:e.node})),e.onSelectionChange&&e.onSelectionChange({originalEvent:t,value:o}),r.DomHandler.clearSelection()},D=function(t){var n,o=t.check,l=t.selectionKeys,a=J(e.node.children);try{for(a.s();!(n=a.n()).done;){var i=n.value;l[i.key]&&l[i.key].checked&&0}}catch(e){a.e(e)}finally{a.f()}var c=e.node.key,u=r.ObjectUtils.findChildrenByKey(e.originalOptions,c),s=u.some((function(e){return e.key in l})),d=u.every((function(e){return e.key in l&&l[e.key].checked}));s&&!d?l[c]={checked:!1,partialChecked:!0}:d?l[c]={checked:!0,partialChecked:!1}:o?l[c]={checked:!1,partialChecked:!1}:delete l[c],e.propagateSelectionUp&&e.onPropagateUp&&e.onPropagateUp(t)},N=function(e,t,n){if(t?n[e.key]={checked:!0,partialChecked:!1}:delete n[e.key],e.children&&e.children.length)for(var r=0;r<e.children.length;r++)N(e.children[r],t,n)},I=function(e,t){switch(e.code){case"ArrowDown":j(e);break;case"ArrowUp":T(e);break;case"ArrowLeft":F(e);break;case"ArrowRight":z(e);break;case"Home":H(e);break;case"End":U(e);break;case"Enter":case"NumpadEnter":case"Space":r.DomHandler.isClickable(e.target)||K(e);break;case"Tab":L()}},j=function(e){var t=e.currentTarget.nextElementSibling;t&&B(e.currentTarget,t),e.preventDefault()},T=function(e){var t=e.currentTarget.previousElementSibling;t&&B(e.currentTarget,t),e.preventDefault()},z=function(e){var t="hidden"===r.DomHandler.findSingle(e.currentTarget,"button").style.visibility;r.DomHandler.findSingle(n.current,'[data-pc-section="rowtoggler"]'),t||(!i&&E(e,!0),e.preventDefault())},F=function(t){if(0!==e.level||i){var n=t.currentTarget,o="hidden"===r.DomHandler.findSingle(n,"button").style.visibility;if(r.DomHandler.findSingle(n,'[data-pc-section="rowtoggler"]'),!i||o){var l=W(n);l&&B(n,l)}else M(t)}},H=function(t){var n=r.DomHandler.findSingle(t.currentTarget.parentElement,'tr[aria-level="'.concat(e.level+1,'"]'));n&&r.DomHandler.focus(n),t.preventDefault()},U=function(t){var n=r.DomHandler.find(t.currentTarget.parentElement,'tr[aria-level="'.concat(e.level+1,'"]'));r.DomHandler.focus(n[n.length-1]),t.preventDefault()},K=function(t){t.preventDefault(),q(t,l.current),"checkbox"!==e.selectionMode?(e.onRowClick(t,e.node),l.current=!1):P(t)},L=function(){var e=R(r.DomHandler.find(n.current.parentElement,"tr")),t=e.some((function(e){return r.DomHandler.getAttribute(e,"data-p-highlight")||"true"===e.getAttribute("aria-checked")}));(e.forEach((function(e){e.tabIndex=-1})),t)?e.filter((function(e){return r.DomHandler.getAttribute(e,"data-p-highlight")||"true"===e.getAttribute("aria-checked")}))[0].tabIndex=0:e[0].tabIndex=0},B=function(e,t){e.tabIndex="-1",t.tabIndex="0",r.DomHandler.focus(t)},W=function(e){var t=e.previousElementSibling;if(t){var n=t.querySelector("button");return n&&"hidden"!==n.style.visibility?t:W(t)}return null},q=function(t,o){if(null!==e.selectionMode){var l=R(r.DomHandler.find(n.current.parentElement,"tr"));t.currentTarget.tabIndex=!1===o?-1:0,l.every((function(e){return-1===e.tabIndex}))&&(l[0].tabIndex=0)}},G=function(){return"single"===e.selectionMode?e.selectionKeys===e.node.key:!("multiple"!==e.selectionMode&&"checkbox"!==e.selectionMode||!e.selectionKeys)&&void 0!==e.selectionKeys[e.node.key]},V=function(){return!!e.selectionKeys&&(e.selectionKeys[e.node.key]&&e.selectionKeys[e.node.key].checked)},Y=function(){return!!e.selectionKeys&&(e.selectionKeys[e.node.key]&&e.selectionKeys[e.node.key].partialChecked)},$=function(n){var o=t.ariaLabel(i?"collapseLabel":"expandLabel"),l=a({className:h("rowTogglerIcon"),"aria-hidden":!0},S(n,"rowTogglerIcon")),c=r.IconUtils.getJSXIcon(e.togglerIcon||x.createElement(i?d.ChevronDownIcon:p.ChevronRightIcon,l),Q({},l),{props:e}),u=a({type:"button",className:h("rowToggler"),onClick:function(e){return C(e)},tabIndex:-1,style:{marginLeft:16*e.level+"px",visibility:!1===e.node.leaf||e.node.children&&e.node.children.length?"visible":"hidden"},"aria-label":o},S(n,"rowToggler")),s=x.createElement("button",u,c,x.createElement(m.Ripple,null));e.togglerTemplate&&(s=r.ObjectUtils.getJSXElement(e.togglerTemplate,e.node,{onClick:C,containerClassName:"p-treetable-toggler p-link",iconClassName:"p-treetable-toggler-icon",element:s,props:e,expanded:i,buttonStyle:{marginLeft:16*e.level+"px",visibility:!1===e.node.leaf||e.node.children&&e.node.children.length?"visible":"hidden"}}));return s},Z=function(t){if("checkbox"===e.selectionMode&&!1!==e.node.selectable){var n=V(),o=Y(),l=a({className:h("checkIcon")},S(t,"rowCheckbox.icon")),i=r.IconUtils.getJSXIcon(n?e.checkboxIcon||x.createElement(u.CheckIcon,l):o?e.checkboxIcon||x.createElement(f.MinusIcon,null):null,{},{props:e,checked:n,partialChecked:o}),c=a({className:h("rowCheckbox"),checked:n||o,onChange:P,icon:i,unstyled:null==v?void 0:v(),tabIndex:-1,"data-p-highlight":n,"data-p-checked":n,"data-p-partialchecked":o},w(t,"rowCheckbox"));return x.createElement(_,c)}return null},te=e.columns.map((function(t,n){var r,o;return c(t,"hidden")?null:(c(t,"expander")&&(r=$(t),o=Z(t)),x.createElement(X,O({hostName:e.hostName,key:"".concat(c(t,"columnKey")||c(t,"field"),"_").concat(n)},A.getCProps(t),{index:n,column:t,selectOnEdit:e.selectOnEdit,selected:G(),node:e.node,rowData:e.node&&e.node.data,rowIndex:e.rowIndex,ptCallbacks:e.ptCallbacks,metaData:e.metaData}),r,o))})),ne=i&&e.node.children?e.node.children.map((function(t,n){return x.createElement(ee,{hostName:e.hostName,key:"".concat(t.key||JSON.stringify(t.data),"_").concat(n),level:e.level+1,rowIndex:e.rowIndex+"_"+n,node:t,originalOptions:e.originalOptions,checkboxIcon:e.checkboxIcon,columns:e.columns,expandedKeys:e.expandedKeys,selectOnEdit:e.selectOnEdit,onToggle:e.onToggle,togglerTemplate:e.togglerTemplate,onExpand:e.onExpand,onCollapse:e.onCollapse,selectionMode:e.selectionMode,selectionKeys:e.selectionKeys,onSelectionChange:e.onSelectionChange,metaKeySelection:e.metaKeySelection,onRowClick:e.onRowClick,onRowMouseEnter:e.onRowMouseEnter,onRowMouseLeave:e.onRowMouseLeave,onSelect:e.onSelect,onUnselect:e.onUnselect,propagateSelectionUp:e.propagateSelectionUp,propagateSelectionDown:e.propagateSelectionDown,onPropagateUp:D,rowClassName:e.rowClassName,contextMenuSelectionKey:e.contextMenuSelectionKey,onContextMenuSelectionChange:e.onContextMenuSelectionChange,onContextMenu:e.onContextMenu,ptCallbacks:e.ptCallbacks,metaData:e.metaData})})):null,re=null;e.rowClassName&&(re=e.rowClassName(e.node));var oe,le,ae=a({tabIndex:0,className:r.classNames(h("row",{isSelected:G,rowProps:e})),"aria-expanded":i,"aria-level":e.level+1,"aria-posinset":e.ariaPosInSet,"aria-setsize":e.ariaSetSize,"aria-checked":V(),"aria-selected":G(),style:e.node.style,onClick:function(t){return n=t,e.onRowClick&&e.onRowClick(n,e.node),void(l.current=!1);var n},onTouchEnd:function(e){l.current=!0},onContextMenu:function(t){return n=t,r.DomHandler.clearSelection(),e.onContextMenuSelectionChange&&e.onContextMenuSelectionChange({originalEvent:n,value:e.node.key}),void(e.onContextMenu&&e.onContextMenu({originalEvent:n,node:e.node}));var n},onKeyDown:function(e){return I(e)},onMouseEnter:function(t){return n=t,void(e.onRowMouseEnter&&e.onRowMouseEnter({originalEvent:n,node:e.node,index:e.rowIndex}));var n},onMouseLeave:function(t){return n=t,void(e.onRowMouseLeave&&e.onRowMouseLeave({originalEvent:n,node:e.node,index:e.rowIndex}));var n},"data-p-highlight":G()},(oe="row",le={hostName:e.hostName,context:{index:e.index,selected:G(),selectable:!1!==e.node.selectable,frozen:c("frozen"),scrollable:e.metaData.props.scrollable,showGridlines:e.metaData.props.showGridlines}},g(oe,le)),{className:r.classNames(re,e.node.className)});return x.createElement(x.Fragment,null,x.createElement("tr",O({ref:n},ae),te),ne)}));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,o=function(){};return{s:o,n:function(){return r>=e.length?{done:!0}:{done:!1,value:e[r++]}},e:function(e){throw e},f:o}}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 l,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,l=e},f:function(){try{a||null==n.return||n.return()}finally{if(i)throw l}}}}function ne(e,t){if(e){if("string"==typeof e)return re(e,t);var n={}.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=Array(t);n<t;n++)r[n]=e[n];return r}function oe(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 le(e){for(var t=1;t<arguments.length;t++){var n=null!=arguments[t]?arguments[t]:{};t%2?oe(Object(n),!0).forEach((function(t){P(e,t,n[t])})):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(n)):oe(Object(n)).forEach((function(t){Object.defineProperty(e,t,Object.getOwnPropertyDescriptor(n,t))}))}return e}ee.displayName="TreeTableRow";var ae=x.memo((function(e){var n=o.useMergeProps(),l="single"===e.selectionMode,a="multiple"===e.selectionMode,i=e.ptCallbacks,c=i.ptm,u=i.cx,s=function(t,n){return c(t,le({hostName:e.hostName},n))},d=function(t){var n,r=[],o=te(t=t||e.value);try{for(o.s();!(n=o.n()).done;){var l=n.value;r.push(l.key),p(l.key)&&(r=r.concat(d(l.children)))}}catch(e){o.e(e)}finally{o.f()}return r},p=function(t){return e.expandedKeys&&!!e.expandedKeys[t]},f=function(t,n){e.onRowClick&&e.onRowClick({originalEvent:t,node:n});var o=t.target.nodeName;if("INPUT"!==o&&"BUTTON"!==o&&"A"!==o&&"columnresizer"!==r.DomHandler.getAttribute(t.target,"data-pc-section")&&(l||a)&&!1!==n.selectable){var i,c=m(n),u=e.metaKeySelection,s=d(),p=s.findIndex((function(e){return e===n.key}));if(a&&t.shiftKey){r.DomHandler.clearSelection();var f=s.findIndex((function(t){return e.selectionKeys[t]})),b=Math.min(p,f),g=Math.max(p,f);i=le({},e.selectionKeys);for(var y=b;y<=g;y++){i[s[y]]=!0}}else if(u){var h=t.metaKey||t.ctrlKey;c&&h?(l?i=null:delete(i=le({},e.selectionKeys))[n.key],e.onUnselect&&e.onUnselect({originalEvent:t,node:n})):(l?i=n.key:a&&((i=h&&e.selectionKeys?le({},e.selectionKeys):{})[n.key]=!0),e.onSelect&&e.onSelect({originalEvent:t,node:n}))}else l?c?(i=null,e.onUnselect&&e.onUnselect({originalEvent:t,node:n})):(i=n.key,e.onSelect&&e.onSelect({originalEvent:t,node:n})):c?(delete(i=le({},e.selectionKeys))[n.key],e.onUnselect&&e.onUnselect({originalEvent:t,node:n})):((i=e.selectionKeys?le({},e.selectionKeys):{})[n.key]=!0,e.onSelect&&e.onSelect({originalEvent:t,node:n}));e.onSelectionChange&&e.onSelectionChange({originalEvent:t,value:i})}},m=function(t){return!(!l&&!a||!e.selectionKeys)&&(l?e.selectionKeys===t.key:void 0!==e.selectionKeys[t.key])},b=function(t,n){return x.createElement(ee,{hostName:e.hostName,key:"".concat(t.key||JSON.stringify(t.data),"_").concat(n),level:0,rowIndex:n,ariaSetSize:e.value.length,ariaPosInSet:n+1,selectOnEdit:e.selectOnEdit,node:t,originalOptions:e.originalOptions,checkboxIcon:e.checkboxIcon,columns:e.columns,expandedKeys:e.expandedKeys,onToggle:e.onToggle,togglerTemplate:e.togglerTemplate,onExpand:e.onExpand,onCollapse:e.onCollapse,selectionMode:e.selectionMode,selectionKeys:e.selectionKeys,onSelectionChange:e.onSelectionChange,metaKeySelection:e.metaKeySelection,onRowClick:f,onRowMouseEnter:e.onRowMouseEnter,onRowMouseLeave:e.onRowMouseLeave,onSelect:e.onSelect,onUnselect:e.onUnselect,propagateSelectionUp:e.propagateSelectionUp,propagateSelectionDown:e.propagateSelectionDown,rowClassName:e.rowClassName,contextMenuSelectionKey:e.contextMenuSelectionKey,onContextMenuSelectionChange:e.onContextMenuSelectionChange,onContextMenu:e.onContextMenu,ptCallbacks:e.ptCallbacks,metaData:e.metaData})},g=e.value&&e.value.length?function(){if(e.paginator&&!e.lazy){for(var t=e.first||0,n=t+(e.rows||0),r=[],o=t;o<n;o++){if(!e.value[o])break;r.push(b(e.value[o]))}return r}return e.value.map(b)}():function(){if(e.loading)return null;var o=e.columns?e.columns.length:null,l=r.ObjectUtils.getJSXElement(e.emptyMessage,{props:e.tableProps})||t.localeOption("emptyMessage"),a=n({className:u("emptyMessage")},s("emptyMessage")),i=n({colSpan:o},s("emptyMessageCell"));return x.createElement("tr",a,x.createElement("td",i,l))}(),y=n({role:"rowgroup",className:u("tbody")},s("tbody"));return x.createElement("tbody",y,g)}));ae.displayName="TreeTableBody";var ie=n.ComponentBase.extend({defaultProps:{__TYPE:"ColumnGroup",children:void 0},getCProp:function(e,t){return r.ObjectUtils.getComponentProp(e,t,ie.defaultProps)},getCProps:function(e){return r.ObjectUtils.getComponentProps(e,ie.defaultProps)}}),ce=n.ComponentBase.extend({defaultProps:{__TYPE:"Row",style:null,className:null,children:void 0},getCProp:function(e,t){return r.ObjectUtils.getComponentProp(e,t,ce.defaultProps)}}),ue=x.memo((function(e){var n=o.useMergeProps(),l=e.ptCallbacks,a=l.ptm,i=l.ptmo,c=l.cx,u=x.useContext(t.PrimeReactContext),s=function(e,t){return A.getCProp(e,t)},d=function(e){return A.getCProps(e)},p=function(t,r){var o=d(t),l={props:o,parent:e.metaData,hostName:e.hostName};return n(a("column.".concat(r),{column:l}),a("column.".concat(r),l),i(o,r,l))},f=function(e,t){var o=n({key:e.field||t,className:s(e,"footerClassName")||s(e,"className"),style:s(e,"footerStyle")||s(e,"style"),rowSpan:s(e,"rowSpan"),colSpan:s(e,"colSpan")},p(e,"footerCell")),l=r.ObjectUtils.getJSXElement(s(e,"footer"),{props:d(e)});return x.createElement("td",o,l)},m=function(t,r){var o=x.Children.toArray(ce.getCProp(t,"children")).map(f),l=n(a("footerRow",{hostName:e.hostName,role:"row"}),ce.getProps(t.props,u));return x.createElement("tr",O({},l,{key:r}),o)},b=e.columnGroup?x.Children.toArray(ie.getCProp(e.columnGroup,"children")).map(m):function(t){if(t){var r=t.map(f),o=n(a("footerRow",{hostName:e.hostName}));return x.createElement("tr",o,r)}return null}(e.columns);if(e.columnGroup||e.columns&&e.columns.some((function(e){return e&&s(e,"footer")}))){var g=n({role:"rowgroup",className:c("tfoot")},a("tfoot",{hostName:e.hostName}));return x.createElement("tfoot",g,b)}return null}));function se(e,t){var n="undefined"!=typeof Symbol&&e[Symbol.iterator]||e["@@iterator"];if(!n){if(Array.isArray(e)||(n=de(e))||t&&e&&"number"==typeof e.length){n&&(e=n);var r=0,o=function(){};return{s:o,n:function(){return r>=e.length?{done:!0}:{done:!1,value:e[r++]}},e:function(e){throw e},f:o}}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 l,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,l=e},f:function(){try{a||null==n.return||n.return()}finally{if(i)throw l}}}}function de(e,t){if(e){if("string"==typeof e)return pe(e,t);var n={}.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)?pe(e,t):void 0}}function pe(e,t){(null==t||t>e.length)&&(t=e.length);for(var n=0,r=Array(t);n<t;n++)r[n]=e[n];return r}function fe(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 me(e){for(var t=1;t<arguments.length;t++){var n=null!=arguments[t]?arguments[t]:{};t%2?fe(Object(n),!0).forEach((function(t){P(e,t,n[t])})):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(n)):fe(Object(n)).forEach((function(t){Object.defineProperty(e,t,Object.getOwnPropertyDescriptor(n,t))}))}return e}ue.displayName="TreeTableFooter";var be=x.memo((function(e){var n=o.useMergeProps(),l=e.ptCallbacks,a=l.ptm,i=l.ptmo,c=l.cx,u=x.useRef(null),d=x.useContext(t.PrimeReactContext),p=function(e){return e?"string"==typeof(arguments.length<=1?void 0:arguments[1])?A.getCProp(e,arguments.length<=1?void 0:arguments[1]):A.getCProp((arguments.length<=1?void 0:arguments[1])||e,arguments.length<=2?void 0:arguments[2]):null},f=function(e){return A.getCProps(e)},m=function(t,r,o){var l=f(t),c=me({props:l,parent:e.metaData,hostName:e.hostName},o);return n(a("column.".concat(r),{column:c}),a("column.".concat(r),c),i(l,r,c))},b=function(t,n){if(p(n,"sortable")){var o=t.target;(!0===r.DomHandler.getAttribute(o,"data-p-sortable-column")||"headertitle"===r.DomHandler.getAttribute(o,"data-pc-section")||"sorticon"===r.DomHandler.getAttribute(o,"data-pc-section")||"sorticon"===r.DomHandler.getAttribute(o.parentElement,"data-pc-section")||o.closest('[data-p-sortable-column="true"]')&&!o.closest('[data-pc-section="filtermenubutton"]'))&&(e.onSort({originalEvent:t,sortField:p(n,"sortField")||p(n,"field"),sortFunction:p(n,"sortFunction"),sortable:p(n,"sortable")}),r.DomHandler.clearSelection())}},S=function(t,n){e.reorderableColumns&&p(n,"reorderable")&&("INPUT"!==t.target.nodeName?t.currentTarget.draggable=!0:"INPUT"===t.target.nodeName&&(t.currentTarget.draggable=!1))},w=function(e,t){"Enter"!==e.key&&"Space"!==e.code||(b(e,t),e.preventDefault())},C=function(t){if(e.multiSortMeta)for(var n=0;n<e.multiSortMeta.length;n++)if(e.multiSortMeta[n].field===p(t,"field"))return n;return-1},E=function(t,n){e.resizableColumns&&e.onResizeStart&&e.onResizeStart({originalEvent:t,columnEl:t.target.parentElement,column:n})},M=function(t,n){e.onDragStart&&e.onDragStart({originalEvent:t,column:n})},k=function(t,n){e.onDragOver&&e.onDragOver({originalEvent:t,column:n})},D=function(t,n){e.onDragLeave&&e.onDragLeave({originalEvent:t,column:n})},N=function(t,n){e.onDrop&&e.onDrop({originalEvent:t,column:n})},I=function(t,n){if(p(n,"filter")&&e.onFilter){u.current&&clearTimeout(u.current);var r=t.target.value;u.current=setTimeout((function(){e.onFilter({value:r,field:p(n,"field"),matchMode:p(n,"filterMatchMode")||"startsWith"}),u.current=null}),e.filterDelay)}},j=function(e){if(e){var t,n=se(e);try{for(n.s();!(t=n.n()).done;){if(p(t.value,"filter"))return!0}}catch(e){n.e(e)}finally{n.f()}}return!1},T=function(e,t,n){return p(e,"sortable")?t&&n<0?"descending":t&&n>0?"ascending":"none":null},R=function(t,o,l){if(p(t,"sortable")){var a=n({className:c("sortIcon")},m(t,"sortIcon",{context:{sorted:o}}));return r.IconUtils.getJSXIcon(e.sortIcon||x.createElement(o?l<0?y.SortAmountDownIcon:h.SortAmountUpAltIcon:g.SortAltIcon,a),me({},a),{props:e,sorted:o,sortOrder:l})}return null},z=function(t){if(e.resizableColumns){var r=n({className:c("columnResizer"),onMouseDown:function(e){return E(e,t)}},m(t,"columnResizer"));return x.createElement("span",r)}return null},F=function(t,r){if(-1!==r&&e.multiSortMeta&&e.multiSortMeta.length>1){var o=n({className:c("sortBadge")},m(t,"sortBadge"));return x.createElement("span",o,r+1)}return null},H=function(e,t){var o=r.ObjectUtils.getJSXElement(p(e,"header"),{props:t}),l=n({className:c("headerTitle")},m(e,"headerTitle"));return x.createElement("span",l,o)},U=function(t,o){var l;if(p(t,"hidden"))return null;if(p(t,"filter")&&o.renderFilter&&(l=p(t,"filterElement")||x.createElement(v.InputText,{onInput:function(e){return I(e,t)},type:e.filterType,defaultValue:e.filters&&e.filters[p(t,"field")]?e.filters[p(t,"field")].value:null,className:"p-column-filter",placeholder:p(t,"filterPlaceholder"),maxLength:p(t,"filterMaxLength"),pt:m(t,"filterInput"),unstyled:e.unstyled,__parentMetadata:{parent:e.metaData}})),o.filterOnly){var a=p(t,"frozen"),i=n({role:"columnheader",key:p(t,"columnKey")||p(t,"field")||o.index,className:r.classNames(c("headerCell",{options:o,frozen:a}),p(t,"filterHeaderClassName")),style:p(t,"filterHeaderStyle")||p(t,"style"),rowSpan:p(t,"rowSpan"),colSpan:p(t,"colSpan"),"data-p-sortable-column":p(t,"sortable"),"data-p-resizable-column":e.resizableColumns,"data-p-frozen-column":a},m(t,"root"),m(t,"headerCell",{context:{frozen:a}}));return x.createElement("th",i,l)}var u=x.createRef(null),d=C(t),f=-1!==d?e.multiSortMeta[d]:null,g=p(t,"field")===e.sortField,y=null!==f,h=p(t,"sortable")&&(g||y),E=p(t,"frozen"),j=p(t,"alignHeader"),U=0;g?U=e.sortOrder:y&&(U=f.order);var K=R(t,h,U),A=T(t,h,U),L=F(t,d),B=h?U?U<0?"descending":"ascending":"none":null,W=p(t,"headerTooltip"),q=r.ObjectUtils.isNotEmpty(W),_=H(t,o),G=z(t),V=p(t,"sortable"),X=n(P(P(P(P(P(P(P(P(P({role:"columnheader",className:r.classNames(p(t,"headerClassName")||p(t,"className"),c("headerCell",{headerProps:e,frozen:E,column:t,options:o,getColumnProp:p,sorted:h,align:j})),style:p(t,"headerStyle")||p(t,"style"),tabIndex:V?e.tabIndex:null,"aria-sort":B,onClick:function(e){return b(e,t)},onMouseDown:function(e){return S(e,t)},onKeyDown:function(e){return w(e,t)},rowSpan:p(t,"rowSpan"),colSpan:p(t,"colSpan")},"aria-sort",A),"onDragStart",(function(e){return M(e,t)})),"onDragOver",(function(e){return k(e,t)})),"onDragLeave",(function(e){return D(e,t)})),"onDrop",(function(e){return N(e,t)})),"data-p-sortable-column",V),"data-p-resizable-column",e.resizableColumns),"data-p-highlight",h),"data-p-frozen-column",p(t,"frozen")),m(t,"root"),m(t,"headerCell",{context:{sorted:h,frozen:E,resizable:e.resizableColumns}})),J=n({className:c("headerContent")},m(t,"headerContent")),Y=x.createElement("div",J,_,K,L,l);return x.createElement(x.Fragment,{key:t.columnKey||t.field||o.index},x.createElement("th",O({ref:u},X),G,Y),q&&x.createElement(s.Tooltip,O({target:u,content:W},p(t,"headerTooltipOptions"),{unstyled:e.unstyled})))},K=function(t,r){var o=x.Children.toArray(ce.getCProp(t,"children")).map((function(e,t){return U(e,{index:t,filterOnly:!1,renderFilter:!0})})),l=n(a("headerRow",{hostName:e.hostName}),ce.getProps(t.props,d));return x.createElement("tr",O({role:"row"},l,{key:r}),o)},L=e.columnGroup?x.Children.toArray(ie.getCProp(e.columnGroup,"children")).map(K):function(t){if(t){var r=n(a("headerRow",{hostName:e.hostName,role:"row"}));return j(t)?x.createElement(x.Fragment,null,x.createElement("tr",r,t.map((function(e,t){return U(e,{index:t,filterOnly:!1,renderFilter:!1})}))),x.createElement("tr",r,t.map((function(e,t){return U(e,{index:t,filterOnly:!0,renderFilter:!0})})))):x.createElement("tr",O({role:"row"},r),t.map((function(e,t){return U(e,{index:t,filterOnly:!1,renderFilter:!1})})))}return null}(e.columns),B=n({role:"rowgroup",className:c("thead")},a("thead",{hostName:e.hostName}));return x.createElement("thead",B,L)}));function ge(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 ye(e){for(var t=1;t<arguments.length;t++){var n=null!=arguments[t]?arguments[t]:{};t%2?ge(Object(n),!0).forEach((function(t){P(e,t,n[t])})):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(n)):ge(Object(n)).forEach((function(t){Object.defineProperty(e,t,Object.getOwnPropertyDescriptor(n,t))}))}return e}be.displayName="TreeTableHeader";var he=x.memo((function(e){var t=x.useRef(null),n=x.useRef(null),l=x.useRef(null),a=x.useRef(null),i=x.useRef(null),c=x.useRef(null),u=x.useRef(null),s=o.useMergeProps(),d=e.ptCallbacks,p=d.ptm,f=d.cx,m=d.sx,b=function(t,n){return p(t,ye({hostName:e.hostName},n))},g=function(){if(e.scrollHeight)if(-1!==e.scrollHeight.indexOf("%")){var n=y(t.current);a.current.style.visibility="hidden",a.current.style.height="100px";var o=r.DomHandler.getOuterHeight(n),l=r.DomHandler.getOuterHeight(n.parentElement)*parseInt(e.scrollHeight,10)/100-(o-100);a.current.style.height="auto",a.current.style.maxHeight=l+"px",a.current.style.visibility="visible"}else a.current.style.maxHeight=e.scrollHeight},y=function(e){if(e){for(var t=e;t&&"root"!==r.DomHandler.getAttribute(t,"data-pc-section")&&"treetable"!==r.DomHandler.getAttribute(t,"data-pc-name");)t=t.parentElement;return t}return null};o.useMountEffect((function(){var n=r.DomHandler.find(y(t.current),'[data-pc-section="scrollablebody"]'),o=r.DomHandler.calculateScrollbarWidth(n=n.length>1?n[1]:n[0]);if(e.frozen)a.current.style.paddingBottom=o+"px";else{var i=r.DomHandler.calculateScrollbarWidth();l.current.style.marginRight=i+"px",u.current&&(u.current.style.marginRight=i+"px")}})),x.useEffect((function(){g()}));var h=e.frozen?e.frozenWidth:"calc(100% - "+e.frozenWidth+")",v=e.frozen?null:e.frozenWidth,S=function(){if(r.ObjectUtils.isNotEmpty(e.columns)){var t=e.columns.map((function(e,t){return x.createElement("col",{key:e.field+"_"+t})})),n=s({className:f("scrollableColgroup")},b("scrollableColgroup"));return x.createElement("colgroup",n,t)}return null}(),w=s({className:f("scrollable",{scrolaableProps:e}),style:{width:h,left:v}},b("scrollable")),C=s({className:f("scrollableHeader"),onScroll:function(e){n.current.scrollLeft=0}},b("scrollableHeader")),E=s({className:f("scrollableHeaderBox")},b("scrollableHeaderBox")),M=s({className:f("scrollableHeaderTable")},b("scrollableHeaderTable")),k=s({className:f("scrollableBody"),style:!e.frozen&&e.scrollHeight?{overflowY:"scroll"}:void 0,onScroll:function(e){return(o=t.current.previousElementSibling)&&(n=r.DomHandler.findSingle(o,'[data-pc-section="scrollablebody"]')),l.current.style.transform="translateX(-".concat(a.current.scrollLeft,"px)"),u.current&&(u.current.style.transform="translateX(-".concat(a.current.scrollLeft,"px)")),void(n&&(n.scrollTop=a.current.scrollTop));var n,o}},b("scrollableBody")),P=s({style:{top:"0"},className:f("scrollableBodyTable")},b("scrollableBodyTable")),D=s({className:f("scrollableFooter")},b("scrollableFooter")),N=s({className:m("scrollableFooterBox")},b("scrollableFooterBox")),I=s({className:f("scrollableFooterTable")},b("scrollableFooterTable"));return x.createElement("div",O({ref:t},w),x.createElement("div",O({ref:n},C),x.createElement("div",O({ref:l},E),x.createElement("table",M,S,e.header))),x.createElement("div",O({ref:a},k),x.createElement("table",O({ref:i},P),S,e.body)),x.createElement("div",O({ref:c},D),x.createElement("div",O({ref:u},N),x.createElement("table",I,S,e.footer))))}));function ve(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 Se(e){for(var t=1;t<arguments.length;t++){var n=null!=arguments[t]?arguments[t]:{};t%2?ve(Object(n),!0).forEach((function(t){P(e,t,n[t])})):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(n)):ve(Object(n)).forEach((function(t){Object.defineProperty(e,t,Object.getOwnPropertyDescriptor(n,t))}))}return e}function we(e,t){var n="undefined"!=typeof Symbol&&e[Symbol.iterator]||e["@@iterator"];if(!n){if(Array.isArray(e)||(n=xe(e))||t&&e&&"number"==typeof e.length){n&&(e=n);var r=0,o=function(){};return{s:o,n:function(){return r>=e.length?{done:!0}:{done:!1,value:e[r++]}},e:function(e){throw e},f:o}}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 l,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,l=e},f:function(){try{a||null==n.return||n.return()}finally{if(i)throw l}}}}function xe(e,t){if(e){if("string"==typeof e)return Ce(e,t);var n={}.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)?Ce(e,t):void 0}}function Ce(e,t){(null==t||t>e.length)&&(t=e.length);for(var n=0,r=Array(t);n<t;n++)r[n]=e[n];return r}he.displayName="TreeTableScrollableView";var Oe=x.forwardRef((function(e,u){var s=o.useMergeProps(),d=x.useContext(t.PrimeReactContext),p=L.getProps(e,d),f=U(x.useState(p.expandedKeys),2),m=f[0],b=f[1],g=U(x.useState(p.first),2),y=g[0],h=g[1],v=U(x.useState(p.rows),2),S=v[0],w=v[1],E=U(x.useState(p.sortField),2),M=E[0],k=E[1],P=U(x.useState(p.sortOrder),2),D=P[0],N=P[1],I=U(x.useState(p.multiSortMeta),2),j=I[0],T=I[1],z=U(x.useState(p.filters),2),F=z[0],H=z[1],B=U(x.useState([]),2),W=B[0],q=B[1],_={props:p,state:{expandedKeys:m,first:y,rows:S,sortField:M,sortOrder:D,multiSortMeta:j,filters:F,columnOrder:W},context:{scrollable:p.scrollable}},G=L.setMetaData(_);n.useHandleStyle(L.css.styles,G.isUnstyled,{name:"treetable"});var V=x.useRef(null),X=x.useRef(null),J=x.useRef(null),Y=x.useRef(null),$=x.useRef(null),Z=x.useRef(null),Q=x.useRef(null),ee=x.useRef(null),te=x.useRef(0),ne=x.useRef(0),re=x.useRef(0),oe=x.useRef(null),le=x.useRef(null),ie=x.useRef(null),ce=x.useRef(null),se=x.useRef(null),de=x.useRef(null),pe=x.useRef(null),fe=U(o.useEventListener({type:"mousemove",listener:function(e){Z.current&&Ge(e)}}),2),me=fe[0],ge=fe[1],ye=U(o.useEventListener({type:"mouseup",listener:function(e){Z.current&&(Z.current=!1,Ve())}}),2),ve=ye[0],xe=ye[1],Ce=function(){return"custom"===p.stateStorage},Oe=function(){return null!=p.stateKey||Ce()},Ee=function(){var e={};p.paginator&&(e.first=ot(),e.rows=lt());var t=at();t&&(e.sortField=t,e.sortOrder=it());var n=ct();if(n&&(e.multiSortMeta=n),We()&&(e.filters=ut()),p.reorderableColumns&&(e.columnOrder=W),e.expandedKeysState=m,p.selectionKeys&&p.onSelectionChange&&(e.selectionKeys=p.selectionKeys),Ce())p.customSaveState&&p.customSaveState(e);else{var o=K(p.stateStorage);r.ObjectUtils.isNotEmpty(e)&&o.setItem(p.stateKey,JSON.stringify(e))}p.onStateSave&&p.onStateSave(e)},Me=function(){var e=K(p.stateStorage);e&&p.stateKey&&e.removeItem(p.stateKey)},ke=function(){var e={};if(Ce())p.customRestoreState&&(e=p.customRestoreState());else{var t=K(p.stateStorage).getItem(p.stateKey),n=/\d{4}-\d{2}-\d{2}T\d{2}:\d{2}:\d{2}.\d{3}Z/;t&&(e=JSON.parse(t,(function(e,t){return"string"==typeof t&&n.test(t)?new Date(t):t})))}De(e)},Pe=function(e){De(e)},De=function(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{};if(r.ObjectUtils.isNotEmpty(e)){if(p.paginator)if(p.onPage){p.onPage(wt(function(e,t){var n=pt(vt()),r=Math.ceil(n/t)||1;return{first:e,rows:t,page:Math.floor(e/t),pageCount:r}}(e.first,e.rows)))}else h(e.first),w(e.rows);e.sortField&&(p.onSort?p.onSort(wt({sortField:e.sortField,sortOrder:e.sortOrder})):(k(e.sortField),N(e.sortOrder))),e.multiSortMeta&&(p.onSort?p.onSort(wt({multiSortMeta:e.multiSortMeta})):T(e.multiSortMeta)),e.filters&&(p.onFilter?p.onFilter(wt({filters:e.filters})):H(Be(e.filters))),p.reorderableColumns&&q(e.columnOrder),e.expandedKeysState&&(p.onToggle?p.onRowToggle({data:e.expandedKeysState}):b(e.expandedKeysState)),e.selectionKeys&&p.onSelectionChange&&p.onSelectionChange({value:e.selectionKeys}),p.onStateRestore&&p.onStateRestore(e)}},Ne=function(e){var t=e.originalEvent,n=e.value,r=e.navigateFocusToChild;p.onToggle?p.onToggle({originalEvent:t,value:n}):(r&&(pe.current=t),b(n))},Ie=function(e){p.onPage?p.onPage(e):(h(e.first),w(e.rows)),p.onValueChange&&p.onValueChange(vt())},je=function(e){var t,n,r=e.sortField,o=p.defaultSortOrder;if(ce.current=e.sortable,se.current=e.sortFunction,de.current=e.sortField,"multiple"===p.sortMode){var l=e.originalEvent.metaKey||e.originalEvent.ctrlKey;if((t=R(ct()))&&t instanceof Array){var a=t.find((function(e){return e.field===r}));o=a?Te(a.order):o}var i={field:r,order:o};o?(t&&l||(t=[]),Re(i,t)):p.removableSort&&t&&ze(i,t),n={multiSortMeta:t}}else o=at()===r?Te(it()):o,p.removableSort&&(r=o?r:null),n={sortField:r,sortOrder:o};p.onSort?p.onSort(n):(h(0),k(n.sortField),N(n.sortOrder),T(n.multiSortMeta)),p.onValueChange&&p.onValueChange(vt({sortField:r,sortOrder:o,multiSortMeta:t}))},Te=function(e){return p.removableSort?p.defaultSortOrder===e?-1*e:0:-1*e},Re=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)},ze=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},Fe=function(e){var t=e.data,n=e.field,o=e.order,l=R(t);if(ce.current&&se.current)l=se.current({data:t,field:n,order:o});else{var a,i=new Map,c=r.ObjectUtils.localeComparator(d&&d.locale||C.default.locale),u=we(t);try{for(u.s();!(a=u.n()).done;){var s=a.value;i.set(s.data,r.ObjectUtils.resolveFieldData(s.data,n))}}catch(e){u.e(e)}finally{u.f()}l.sort((function(e,t){var n=i.get(e.data),r=i.get(t.data);return Ke(n,r,c,o)}));for(var p=0;p<l.length;p++)l[p].children&&l[p].children.length&&(l[p].children=Fe({data:l[p].children,field:n,order:o}))}return l},He=function(e){var t=e.multiSortMeta,n=void 0===t?[]:t,o=R(e.data),l=r.ObjectUtils.localeComparator(d&&d.locale||C.default.locale);o.sort((function(e,t){return Ue(e,t,n,0,l)}));for(var a=0;a<o.length;a++)o[a].children&&o[a].children.length&&(o[a].children=He({data:o[a].children,multiSortMeta:n}));return o},Ue=function(e,t,n,o,l){if(n&&n[o]){var a=r.ObjectUtils.resolveFieldData(e.data,n[o].field),i=r.ObjectUtils.resolveFieldData(t.data,n[o].field);return 0===r.ObjectUtils.compare(a,i,l)?n.length-1>o?Ue(e,t,n,o+1,l):0:Ke(a,i,l,n[o].order)}},Ke=function(e,t,n,o){return r.ObjectUtils.sort(e,t,o,n,d&&d.nullSortOrder||C.default.nullSortOrder)},Ae=function(e,t,n){Le({value:e,field:t,matchMode:n})},Le=function(e){H((function(t){var n=p.onFilter?p.filters:t,r=n?Se({},n):{};return qe(e.value)?r[e.field]&&delete r[e.field]:r[e.field]={value:e.value,matchMode:e.matchMode},p.onFilter?p.onFilter({filters:r}):h(0),p.onValueChange&&p.onValueChange(vt({filters:r})),r}))},Be=function(e){var n={};if(e=e||p.filters)Object.entries(e).forEach((function(e){var t=U(e,2);n[t[0]]=t[1]}));else{var r=dt();n=r.reduce((function(e,n){var r=rt(n,"filterField")||rt(n,"field"),o=rt(n,"filterFunction"),l=rt(n,"dataType"),a={value:null,matchMode:rt(n,"filterMatchMode")||(d&&d.filterMatchModeOptions[l]||C.default.filterMatchModeOptions[l]?d&&d.filterMatchModeOptions[l][0]||C.default.filterMatchModeOptions[l][0]:t.FilterMatchMode.STARTS_WITH)};return o&&t.FilterService.register("custom_".concat(r),(function(){for(var e=arguments.length,t=new Array(e),r=0;r<e;r++)t[r]=arguments[r];return o.apply(void 0,t.concat([{column:n}]))})),e[r]=a,e}),{})}return n},We=function(){return r.ObjectUtils.isNotEmpty(ut())},qe=function(e){return null==e||("string"==typeof e&&0===e.trim().length||e instanceof Array&&0===e.length)},_e=function(e){var t=r.DomHandler.getOffset(V.current).left;Q.current=e.columnEl,ee.current=e.column,Z.current=!0,te.current=e.originalEvent.pageX-t+V.current.scrollLeft,Ye()},Ge=function(e){var t=r.DomHandler.getOffset(V.current).left;!G.isUnstyled()&&r.DomHandler.addClass(V.current,"p-unselectable-text"),J.current.style.height=V.current.offsetHeight+"px",J.current.style.top="0px",J.current.style.left=e.pageX-t+V.current.scrollLeft+"px",J.current.style.display="block"},Ve=function(e){var t=J.current.offsetLeft-te.current,n=Q.current.offsetWidth,o=n+t;if(n+t>parseInt(Q.current.style.minWidth||15,10)){if("fit"===p.columnResizeMode){var l=Q.current.nextElementSibling,a=l.offsetWidth-t;if(o>15&&a>15)if(p.scrollable){var i=Xe(Q.current),c=r.DomHandler.findSingle(i,'table[data-pc-section="scrollablebodytable"]'),u=r.DomHandler.findSingle(i,'table[data-pc-section="scrollableheadertable"]'),s=r.DomHandler.findSingle(i,'table[data-pc-section="scrollablefootertable"]'),d=r.DomHandler.index(Q.current);Je(u,d,o,a),Je(c,d,o,a),Je(s,d,o,a)}else Q.current.style.width=o+"px",l&&(l.style.width=a+"px")}else if("expand"===p.columnResizeMode)if(p.scrollable){var f=Xe(Q.current),m=r.DomHandler.findSingle(f,'table[data-pc-section="scrollablebodytable"]'),b=r.DomHandler.findSingle(f,'table[data-pc-section="scrollableheadertable"]'),g=r.DomHandler.findSingle(f,'table[data-pc-section="scrollablefootertable"]');m.style.width=m.offsetWidth+t+"px",b.style.width=b.offsetWidth+t+"px",g&&(g.style.width=b.offsetWidth+t+"px");var y=r.DomHandler.index(Q.current);Je(b,y,o,null),Je(m,y,o,null),Je(g,y,o,null)}else X.current.style.width=X.current.offsetWidth+t+"px",Q.current.style.width=o+"px";p.onColumnResizeEnd&&p.onColumnResizeEnd({element:Q.current,column:ee.current,delta:t}),Oe()&&Ee()}J.current.style.display="none",Q.current=null,ee.current=null,r.DomHandler.removeClass(V.current,"p-unselectable-text"),$e()},Xe=function(e){if(e){for(var t=e.parentElement;t&&"scrollable"!==r.DomHandler.getAttribute(t,"data-pc-section");)t=t.parentElement;return t}return null},Je=function(e,t,n,r){if(e){var o="COLGROUP"===e.children[0].nodeName?e.children[0]:null;if(!o)throw new Error("Scrollable tables require a colgroup to support resizable columns");var l=o.children[t],a=l.nextElementSibling;l.style.width=n+"px",a&&r&&(a.style.width=r+"px")}},Ye=function(){me(),ve()},$e=function(){ge(),xe()},Ze=function(e){var t=e.originalEvent,n=e.column;Z.current?t.preventDefault():(ne.current=r.DomHandler.getHiddenElementOuterWidth(Y.current),re.current=r.DomHandler.getHiddenElementOuterHeight(Y.current),oe.current=nt(t.currentTarget),le.current=n,t.dataTransfer.setData("text","b"))},Qe=function(e){var t=e.originalEvent,n=e.column,o=nt(t.currentTarget);if(p.reorderableColumns&&oe.current&&o&&!rt(n,"frozen")){t.preventDefault();var l=r.DomHandler.getOffset(V.current),a=r.DomHandler.getOffset(o);if(oe.current!==o){var i=a.left-l.left,c=a.left+o.offsetWidth/2;Y.current.style.top=a.top-l.top-(re.current-1)+"px",$.current.style.top=a.top-l.top+o.offsetHeight+"px",t.pageX>c?(Y.current.style.left=i+o.offsetWidth-Math.ceil(ne.current/2)+"px",$.current.style.left=i+o.offsetWidth-Math.ceil(ne.current/2)+"px",ie.current=1):(Y.current.style.left=i-Math.ceil(ne.current/2)+"px",$.current.style.left=i-Math.ceil(ne.current/2)+"px",ie.current=-1),Y.current.style.display="block",$.current.style.display="block"}}},et=function(e){p.reorderableColumns&&oe.current&&(e.originalEvent.preventDefault(),Y.current.style.display="none",$.current.style.display="none")},tt=function(e){var t=e.originalEvent,n=e.column;if(t.preventDefault(),oe.current){var o=r.DomHandler.index(oe.current),l=r.DomHandler.index(nt(t.currentTarget)),a=o!==l;if(a&&(l-o==1&&-1===ie.current||o-l==1&&1===ie.current)&&(a=!1),a){var i=W?dt():x.Children.toArray(p.children),c=function(e,t){return rt(e,"columnKey")||rt(t,"columnKey")?r.ObjectUtils.equals(e,t,"props.columnKey"):r.ObjectUtils.equals(e,t,"props.field")},u=i.findIndex((function(e){return c(e,le.current)})),s=i.findIndex((function(e){return c(e,n)}));s<u&&1===ie.current&&s++,s>u&&-1===ie.current&&s--,r.ObjectUtils.reorderArray(i,u,s);var d,f=[],m=we(i);try{for(m.s();!(d=m.n()).done;){var b=d.value;f.push(rt(b,"columnKey")||rt(b,"field"))}}catch(e){m.e(e)}finally{m.f()}q(f),p.onColReorder&&p.onColReorder({dragIndex:u,dropIndex:s,columns:i})}Y.current.style.display="none",$.current.style.display="none",oe.current.draggable=!1,oe.current=null,ie.current=null}},nt=function(e){if("TH"===e.nodeName)return e;for(var t=e.parentElement;"TH"!==t.nodeName&&(t=t.parentElement););return t},rt=function(e,t){return A.getCProp(e,t)},ot=function(){return p.onPage?p.first:y},lt=function(){return p.onPage?p.rows:S},at=function(){return p.onSort?p.sortField:M},it=function(){return p.onSort?p.sortOrder:D},ct=function(){return(p.onSort?p.multiSortMeta:j)||[]},ut=function(){return p.onFilter?p.filters:F},st=function(e,t){if(e&&e.length)for(var n=0;n<e.length;n++){var r=e[n];if(rt(r,"columnKey")===t||rt(r,"field")===t)return r}return null},dt=function(){var e=x.Children.toArray(p.children);if(e&&e.length){if(p.reorderableColumns&&W){var t,n=[],r=we(W);try{for(r.s();!(t=r.n()).done;){var o=st(e,t.value);o&&n.push(o)}}catch(e){r.e(e)}finally{r.f()}return[].concat(n,R(e.filter((function(e){return n.indexOf(e)<0}))))}return e}return null},pt=function(e){return p.lazy?p.totalRecords:e?e.length:0},ft=function(e){var t,n=null,r=we(e);try{for(r.s();!(t=r.n()).done;){var o=t.value;rt(o,"frozen")&&(n=n||[]).push(o)}}catch(e){r.e(e)}finally{r.f()}return n},mt=function(e){var t,n=null,r=we(e);try{for(r.s();!(t=r.n()).done;){var o=t.value;rt(o,"frozen")||(n=n||[]).push(o)}}catch(e){r.e(e)}finally{r.f()}return n},bt=function(e){var n,r=[],o=ut(),l=x.Children.toArray(p.children),a="strict"===p.filterMode,i=we(e);try{for(i.s();!(n=i.n()).done;){for(var c=n.value,u=Se({},c),s=!0,d=!1,f=0;f<l.length;f++){var m=l[f],b=o?o[rt(m,"field")]:null,g=rt(m,"field"),y=void 0;if(b){var h=b.matchMode||rt(m,"filterMatchMode")||"startsWith";if(y={filterField:g,filterValue:b.value,filterConstraint:"custom"===h?rt(m,"filterFunction"):t.FilterService.filters[h],isStrictMode:a,options:{rowData:c,filters:o,props:p,column:{filterMeta:b,filterField:g,props:A.getCProps(m)}}},(!a||gt(u,y)||yt(u,y))&&(a||yt(u,y)||gt(u,y))||(s=!1),!s)break}if(p.globalFilter&&!d){var v=Se({},u);y={filterField:g,filterValue:p.globalFilter,filterConstraint:t.FilterService.filters[p.globalFilterMatchMode],isStrictMode:a},(a&&(gt(v,y)||yt(v,y))||!a&&(yt(v,y)||gt(v,y)))&&(d=!0,u=v)}}var S=s;p.globalFilter&&(S=s&&d),S&&r.push(u)}}catch(e){i.e(e)}finally{i.f()}return r},gt=function(e,t){if(e){var n=!1;if(e.children){var r=R(e.children);e.children=[];var o,l=we(r);try{for(l.s();!(o=l.n()).done;){var a=Se({},o.value);yt(a,t)&&(n=!0,e.children.push(a))}}catch(e){l.e(e)}finally{l.f()}}if(n)return!0}},yt=function(e,t){var n=t.filterField,o=t.filterValue,l=t.filterConstraint,a=t.isStrictMode,i=t.options,c=!1;return l(r.ObjectUtils.resolveFieldData(e.data,n),o,p.filterLocale,i)&&(c=!0),(!c||a&&!ht(e))&&(c=gt(e,{filterField:n,filterValue:o,filterConstraint:l,isStrictMode:a})||c),c},ht=function(e){return!1!==e.leaf&&!(e.children&&e.children.length)},vt=function(e){var t=p.value||[];if(!p.lazy&&t&&t.length){var n=e&&e.filters||ut(),o=e&&e.sortField||at(),l=e&&e.sortOrder||it(),a=e&&e.multiSortMeta||ct(),i=dt().find((function(e){return rt(e,"field")===o}));i&&(ce.current=rt(i,"sortable"),se.current=rt(i,"sortFunction")),(r.ObjectUtils.isNotEmpty(n)||p.globalFilter)&&(t=bt(t)),(o||r.ObjectUtils.isNotEmpty(a))&&("single"===p.sortMode?t=Fe({data:t,field:o,order:l}):"multiple"===p.sortMode&&(t=He({data:t,multiSortMeta:a})))}return t};o.useMountEffect((function(){Oe()&&ke()})),o.useUpdateEffect((function(){Oe()&&Ee()})),o.useUpdateEffect((function(){if(pe.current){var e=pe.current.target,t=e.nextElementSibling;t&&(e.tabIndex="-1",t.tabIndex="0",r.DomHandler.focus(t))}}),[m]),x.useImperativeHandle(u,(function(){return{props:p,clearState:Me,filter:Ae,getElement:function(){return V.current},restoreState:ke,restoreTableState:Pe,saveState:Ee}}));var St,wt=function(e){return Se({first:ot(),rows:lt(),sortField:at(),sortOrder:it(),multiSortMeta:ct(),filters:ut()},e)},xt=function(e,t){var n=at(),r=it(),o=R(ct()),l=ut();return x.createElement(be,{hostName:"TreeTable",columns:e,columnGroup:t,tabIndex:p.tabIndex,onSort:je,sortField:n,sortIcon:p.sortIcon,sortOrder:r,multiSortMeta:o,resizableColumns:p.resizableColumns,onResizeStart:_e,reorderableColumns:p.reorderableColumns,onDragStart:Ze,onDragOver:Qe,onDragLeave:et,onDrop:tt,onFilter:Le,filters:l,filterDelay:p.filterDelay,ptCallbacks:G,metaData:_,unstyled:p.unstyled})},Ct=function(e,t){return x.createElement(ue,{hostName:"TreeTable",columns:e,columnGroup:t,ptCallbacks:G,metaData:_})},Ot=function(e,t){return x.createElement(ae,{hostName:"TreeTable",checkboxIcon:p.checkboxIcon,columns:t,contextMenuSelectionKey:p.contextMenuSelectionKey,emptyMessage:p.emptyMessage,expandedKeys:p.onToggle?p.expandedKeys:m,first:ot(),lazy:p.lazy,loading:p.loading,metaData:_,metaKeySelection:p.metaKeySelection,onCollapse:p.onCollapse,onContextMenu:p.onContextMenu,onContextMenuSelectionChange:p.onContextMenuSelectionChange,onExpand:p.onExpand,onRowClick:p.onRowClick,onRowMouseEnter:p.onRowMouseEnter,onRowMouseLeave:p.onRowMouseLeave,onSelect:p.onSelect,onSelectionChange:p.onSelectionChange,onToggle:Ne,onUnselect:p.onUnselect,originalOptions:p.value,paginator:p.paginator,propagateSelectionDown:p.propagateSelectionDown,propagateSelectionUp:p.propagateSelectionUp,ptCallbacks:G,rowClassName:p.rowClassName,rows:lt(),selectOnEdit:p.selectOnEdit,selectionKeys:p.selectionKeys,selectionMode:p.selectionMode,togglerTemplate:p.togglerTemplate,value:e})},Et=function(e,t){var n=r.classNames("p-paginator-"+e,p.paginatorClassName);return x.createElement(c.Paginator,{first:ot(),rows:lt(),pageLinkSize:p.pageLinkSize,className:n,onPageChange:Ie,template:p.paginatorTemplate,totalRecords:t,rowsPerPageOptions:p.rowsPerPageOptions,currentPageReportTemplate:p.currentPageReportTemplate,leftContent:p.paginatorLeft,rightContent:p.paginatorRight,alwaysShow:p.alwaysShowPaginator,dropdownAppendTo:p.paginatorDropdownAppendTo,pt:G.ptm("paginator"),unstyled:p.unstyled,__parentMetadata:{parent:_}})},Mt=function(e,t,n,r,o){var l=xt(t,r),a=Ct(t,o),i=Ot(e,t);return x.createElement(he,{hostName:"TreeTable",columns:t,header:l,body:i,footer:a,scrollHeight:p.scrollHeight,frozen:n,frozenWidth:p.frozenWidth,ptCallbacks:G,metaData:_})},kt=function(e){var t,n,r=dt(),o=ft(r),l=o?mt(r):r;o&&(t=Mt(e,o,!0,p.frozenHeaderColumnGroup,p.frozenFooterColumnGroup)),n=Mt(e,l,!1,p.headerColumnGroup,p.footerColumnGroup);var a=s({className:G.cx("scrollableWrapper")},G.ptm("scrollableWrapper"));return x.createElement("div",a,t,n)},Pt=function(e){var t=dt(),n=xt(t,p.headerColumnGroup),o=Ct(t,p.footerColumnGroup),l=Ot(e,t),a=s({className:G.cx("wrapper")},G.ptm("wrapper")),i=s({role:"table",style:p.tableStyle,className:r.classNames(p.tableClassName,G.cx("table"))},G.ptm("table"));return x.createElement("div",a,x.createElement("table",O({ref:X},i),n,o,l))},Dt=vt(),Nt=(St=Dt,p.scrollable?kt(St):Pt(St)),It=pt(Dt),jt=s({className:G.cx("header")},G.ptm("header")),Tt=s({className:G.cx("footer")},G.ptm("footer")),Rt=s({className:G.cx("resizeHelper"),style:{display:"none"}},G.ptm("resizeHelper")),zt=p.header&&x.createElement("div",jt,p.header),Ft=p.footer&&x.createElement("div",Tt,p.footer),Ht=p.paginator&&"bottom"!==p.paginatorPosition&&Et("top",It),Ut=p.paginator&&"top"!==p.paginatorPosition&&Et("bottom",It),Kt=function(){if(p.loading){var e=s({className:G.cx("loadingIcon")},G.ptm("loadingIcon")),t=p.loadingIcon||x.createElement(i.SpinnerIcon,O({},e,{spin:!0})),n=r.IconUtils.getJSXIcon(t,Se({},e),{props:p}),o=s({className:G.cx("loadingWrapper")},G.ptm("loadingWrapper")),l=s({className:G.cx("loadingOverlay")},G.ptm("loadingOverlay"));return x.createElement("div",o,x.createElement("div",l,n))}return null}(),At=p.resizableColumns&&x.createElement("div",O({ref:J},Rt)),Lt=s({className:G.cx("reorderIndicatorUp"),style:{position:"absolute",display:"none"}},G.ptm("reorderIndicatorUp")),Bt=s(G.ptm("reorderIndicatorUpIcon")),Wt=p.reorderableColumns&&r.IconUtils.getJSXIcon(p.reorderIndicatorUpIcon||x.createElement(l.ArrowDownIcon,Bt),Se({},Bt),{props:p}),qt=p.reorderableColumns&&x.createElement("span",O({ref:Y},Lt),Wt),_t={className:G.sx("reorderIndicatorDown"),style:{position:"absolute",display:"none"}},Gt=s(G.ptm("reorderIndicatorDownIcon")),Vt=r.IconUtils.getJSXIcon(p.reorderIndicatorDownIcon||x.createElement(a.ArrowUpIcon,Gt),Se({},Gt),{props:p}),Xt=p.reorderableColumns&&x.createElement("span",O({ref:$},_t),Vt),Jt=s({role:"table",id:p.id,className:r.classNames(p.className,G.cx("root",{isRowSelectionMode:function(){return p.selectionMode&&"single"===p.selectionMode||p.selectionMode&&"multiple"===p.selectionMode}})),style:p.style,"data-scrollselectors":".p-treetable-wrapper"},L.getOtherProps(p),G.ptm("root"));return x.createElement("div",O({ref:V},Jt),Kt,zt,Ht,Nt,Ut,Ft,At,qt,Xt)}));Oe.displayName="TreeTable",exports.TreeTable=Oe;