primereact
Version:
PrimeReact is an open source UI library for React featuring a rich set of 80+ components, a theme designer, various theme alternatives such as Material, Bootstrap, Tailwind, premium templates and professional support. In addition, it integrates with Prime
1 lines • 90 kB
JavaScript
import*as e from"react";import t,{ariaLabel as n,localeOption as r,FilterMatchMode as o,FilterOperator as l,FilterService as a}from"primereact/api";import{useEventListener as i,useUpdateEffect as c,useUnmountEffect as u,usePrevious as s,useMountEffect as d,useOverlayListener as p}from"primereact/hooks";import{Paginator as f}from"primereact/paginator";import{classNames as m,DomHandler as g,ObjectUtils as w,ZIndexUtils as b,UniqueComponentId as v}from"primereact/utils";import{VirtualScroller as h}from"primereact/virtualscroller";import{OverlayService as y}from"primereact/overlayservice";import{Ripple as C}from"primereact/ripple";import{Button as E}from"primereact/button";import{CSSTransition as S}from"primereact/csstransition";import{Dropdown as R}from"primereact/dropdown";import{InputText as x}from"primereact/inputtext";import{Portal as O}from"primereact/portal";import{Tooltip as D}from"primereact/tooltip";function M(){return M=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},M.apply(this,arguments)}function k(e,t,n){return t in e?Object.defineProperty(e,t,{value:n,enumerable:!0,configurable:!0,writable:!0}):e[t]=n,e}function I(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 F(e){if(Array.isArray(e))return I(e)}function N(e){if("undefined"!=typeof Symbol&&null!=e[Symbol.iterator]||null!=e["@@iterator"])return Array.from(e)}function P(e,t){if(e){if("string"==typeof e)return I(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)?I(e,t):void 0}}function z(){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 j(e){return F(e)||N(e)||P(e)||z()}function T(e){if(Array.isArray(e))return e}function A(e,t){var n=null==e?null:"undefined"!=typeof Symbol&&e[Symbol.iterator]||e["@@iterator"];if(null!=n){var r,o,l=[],a=!0,i=!1;try{for(n=n.call(e);!(a=(r=n.next()).done)&&(l.push(r.value),!t||l.length!==t);a=!0);}catch(e){i=!0,o=e}finally{try{a||null==n.return||n.return()}finally{if(i)throw o}}return l}}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 L(e,t){return T(e)||A(e,t)||P(e,t)||K()}function B(e,t){if(null==e)return{};var n,r,o={},l=Object.keys(e);for(r=0;r<l.length;r++)t.indexOf(n=l[r])>=0||(o[n]=e[n]);return o}function G(e,t){if(null==e)return{};var n,r,o=B(e,t);if(Object.getOwnPropertySymbols){var l=Object.getOwnPropertySymbols(e);for(r=0;r<l.length;r++)t.indexOf(n=l[r])>=0||Object.prototype.propertyIsEnumerable.call(e,n)&&(o[n]=e[n])}return o}var H=e.memo((function(t){var n=L(e.useState(!1),2),r=n[0],o=n[1],l=function(e){t.disabled||(o(!0),t.onChange(e))},a=m("p-checkbox p-component",{"p-checkbox-focused":r}),i=m("p-checkbox-box p-component",{"p-highlight":t.checked,"p-disabled":t.disabled,"p-focus":r}),c=m("p-checkbox-icon",{"pi pi-check":t.checked});return e.createElement("div",{className:a,onClick:l},e.createElement("div",{className:i,role:"checkbox","aria-checked":t.checked,tabIndex:t.disabled?null:"0",onKeyDown:function(e){"Space"===e.code&&(l(e),e.preventDefault())},onFocus:function(){o(!0)},onBlur:function(){o(!1)},"aria-label":t.ariaLabel},e.createElement("span",{className:c})))}));H.displayName="RowCheckbox";var V=e.memo((function(t){var n=L(e.useState(!1),2),r=n[0],o=n[1],l=e.useRef(null),a=function(e){t.disabled||(t.onChange(e),g.focus(l.current))},i=m("p-radiobutton p-component",{"p-radiobutton-focused":r}),c=m("p-radiobutton-box p-component",{"p-highlight":t.checked,"p-focus":r,"p-disabled":t.disabled}),u="".concat(t.tableSelector,"_dt_radio");return e.createElement("div",{className:i},e.createElement("div",{className:"p-hidden-accessible"},e.createElement("input",{name:u,ref:l,type:"radio",checked:t.checked,onFocus:function(){o(!0)},onBlur:function(){o(!1)},onChange:function(e){a(e)},onKeyDown:function(e){"Space"===e.code&&(a(e),e.preventDefault())},"aria-label":t.ariaLabel})),e.createElement("div",{className:c,onClick:a,role:"radio","aria-checked":t.checked},e.createElement("div",{className:"p-radiobutton-icon"})))}));function U(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 W(e){for(var t=1;t<arguments.length;t++){var n=null!=arguments[t]?arguments[t]:{};t%2?U(Object(n),!0).forEach((function(t){k(e,t,n[t])})):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(n)):U(Object(n)).forEach((function(t){Object.defineProperty(e,t,Object.getOwnPropertyDescriptor(n,t))}))}return e}V.displayName="RowRadioButton";var X=e.memo((function(t){var r=L(e.useState(t.editing),2),o=r[0],l=r[1],a=L(e.useState(t.rowData),2),s=a[0],d=a[1],p=L(e.useState({}),2),f=p[0],b=p[1],v=e.useRef(null),h=e.useRef(null),E=e.useRef(null),S=e.useRef(!1),R=e.useRef(null),x=e.useRef(null),O=function(e){return t.column?t.column.props[e]:null},D=O("field")||"field_".concat(t.index),M=t.dataKey&&t.rowData[t.dataKey]||t.rowIndex,I=L(i({type:"click",listener:function(e){!S.current&&j(e.target)&&_(e,!0),S.current=!1},options:!0}),2),F=I[0],N=I[1];"row"===t.editMode&&t.editing!==o&&l(t.editing);var P=function(){return!!t.selection&&(t.selection instanceof Array?X(t.selection)>-1:z(t.selection))},z=function(e){return(e.rowIndex===t.rowIndex||(n=e.rowData,"equals"===t.compareSelectionBy?n===t.rowData:w.equals(n,t.rowData,t.dataKey)))&&(e.field===D||e.cellIndex===t.index);var n},j=function(e){return v.current&&!(v.current.isSameNode(e)||v.current.contains(e))},T=function(e){return t.virtualScrollerOptions?t.virtualScrollerOptions[e]:null},A=function(){return{value:B(),field:D,rowData:t.rowData,rowIndex:t.rowIndex,cellIndex:t.index,selected:P(),column:t.column,props:t}},K=function(e){return W({originalEvent:e},A())},B=function(e){return w.resolveFieldData(e||t.rowData,D)},G=function(){return t.editingMeta&&t.editingMeta[M]?t.editingMeta[M].data:t.rowData},U=function(e){return t.allowCellSelection?e?0:0===t.rowIndex&&0===t.index?t.tabIndex:-1:null},X=function(e){return(e||[]).findIndex((function(e){return z(e)}))},J=function(e){var t=K(e),n=O("onBeforeCellEditHide");n&&n(t),setTimeout((function(){l(!1),N(),y.off("overlay-click",E.current),E.current=null,S.current=!1}),1)},_=function(e,t){var n=K(e),r=s,o=B(r),l=W(W({},n),{},{newRowData:r,newValue:o}),a=O("onCellEditCancel"),i=O("cellEditValidator"),c=O("onCellEditComplete");!t&&a&&a(l);var u=!0;i&&(u=i(l)),u?(t&&c&&c(l),J(e)):e.preventDefault()},q=function e(t){var n=t.nextElementSibling;return n?g.hasClass(n,"p-selectable-cell")?n:e(n):null},Y=function e(t){var n=t.previousElementSibling;return n?g.hasClass(n,"p-selectable-cell")?n:e(n):null},Z=function e(n){var r=n.parentElement.nextElementSibling,o=r?r.children[t.index]:null;return r&&o?g.hasClass(r,"p-selectable-row")&&g.hasClass(o,"p-selectable-cell")?o:e(o):null},$=function e(n){var r=n.parentElement.previousElementSibling,o=r?r.children[t.index]:null;return r&&o?g.hasClass(r,"p-selectable-row")&&g.hasClass(o,"p-selectable-cell")?o:e(o):null},Q=function(e,n){e&&n&&(e.tabIndex=-1,n.tabIndex=t.tabIndex)},ee=function(){clearTimeout(x.current),x.current=setTimeout((function(){var e="row"===t.editMode?g.findSingle(v.current,".p-row-editor-init"):null;e&&e.focus()}),1)},te=function(){if(O("frozen")){var e=W({},f);if("right"===O("alignFrozen")){var t=0,n=v.current.nextElementSibling;n&&(t=g.getOuterWidth(n)+parseFloat(n.style.right||0)),e.right=t+"px"}else{var r=0,o=v.current.previousElementSibling;o&&(r=g.getOuterWidth(o)+parseFloat(o.style.left||0)),e.left=r+"px"}!(f.left===e.left&&f.right===e.right)&&b(e)}},ne=function(e){var n=W({},s);n[D]=e,d(n),t.editingMeta[M].data[D]=e},re=function(e){var n=K(e);if("row"!==t.editMode&&O("editor")&&!o&&(t.selectOnEdit||!t.selectOnEdit&&t.selected)){S.current=!0;var r=O("onBeforeCellEditShow"),a=O("onCellEditInit"),i=O("cellEditValidatorEvent");r&&r(n),setTimeout((function(){l(!0),a&&a(n),"click"===i&&(F(),E.current=function(e){j(e.target)||(S.current=!0)},y.on("overlay-click",E.current))}),1)}t.allowCellSelection&&t.onClick&&t.onClick(n)},oe=function(e){var n=K(e);t.onMouseDown&&t.onMouseDown(n)},le=function(e){var n=K(e);t.onMouseUp&&t.onMouseUp(n)},ae=function(e){if("row"!==t.editMode&&(13!==e.which&&9!==e.which||_(e,!0),27===e.which&&_(e,!1)),t.allowCellSelection){var n=e.target,r=e.currentTarget;switch(e.which){case 37:var o=Y(r);o&&(Q(r,o),o.focus()),e.preventDefault();break;case 39:var l=q(r);l&&(Q(r,l),l.focus()),e.preventDefault();break;case 38:var a=$(r);a&&(Q(r,a),a.focus()),e.preventDefault();break;case 40:var i=Z(r);i&&(Q(r,i),i.focus()),e.preventDefault();break;case 13:g.isClickable(n)||(re(e),e.preventDefault());break;case 32:g.isClickable(n)||n.readOnly||(re(e),e.preventDefault())}}},ie=function(e){S.current=!1,"row"!==t.editMode&&o&&"blur"===O("cellEditValidatorEvent")&&_(e,!0)},ce=function(e){re(e)},ue=function(e){t.onRadioChange({originalEvent:e,data:t.rowData,index:t.rowIndex})},se=function(e){t.onCheckboxChange({originalEvent:e,data:t.rowData,index:t.rowIndex})},de=function(e){t.onRowToggle({originalEvent:e,data:t.rowData}),e.preventDefault()},pe=function(e){t.onRowEditInit({originalEvent:e,data:t.rowData,newData:G(),field:D,index:t.rowIndex})},fe=function(e){t.onRowEditSave({originalEvent:e,data:t.rowData,newData:G(),field:D,index:t.rowIndex}),ee()},me=function(e){t.onRowEditCancel({originalEvent:e,data:t.rowData,newData:G(),field:D,index:t.rowIndex}),ee()};e.useEffect((function(){O("frozen")&&te(),"cell"!==t.editMode&&"row"!==t.editMode||(clearTimeout(R.current),R.current=setTimeout((function(){if(o){var e="cell"===t.editMode?g.getFirstFocusableElement(v.current,":not(.p-cell-editor-key-helper)"):g.findSingle(v.current,".p-row-editor-save");e&&e.focus()}h.current&&(h.current.tabIndex=o?-1:0)}),1))})),c((function(){"cell"!==t.editMode&&"row"!==t.editMode||d(G())}),[t.editingMeta]),c((function(){if("cell"===t.editMode||"row"===t.editMode){var e=W(W({},K()),{},{editing:o,editingKey:M});t.onEditingMetaChange(e)}}),[o]),u((function(){E.current&&(y.off("overlay-click",E.current),E.current=null)}));var ge,we;return T("loading")?(ge=T("getLoaderOptions")(t.rowIndex,{cellIndex:t.index,cellFirst:0===t.index,cellLast:t.index===T("columns").length-1,cellEven:t.index%2==0,cellOdd:t.index%2!=0,column:t.column,field:D}),we=w.getJSXElement(T("loadingTemplate"),ge),e.createElement("td",null,we)):function(){var r,l,a,i,c=t.allowCellSelection&&P(),u="row"===t.editMode,d=U(c),p=O("selectionMode"),g=O("rowReorder"),b=O("rowEditor"),y=O("header"),E=O("body"),S=O("editor"),R=O("frozen"),x=O("align"),M=B(),I={column:t.column,field:D,rowIndex:t.rowIndex,frozenRow:t.frozenRow,props:t.tableProps},F=w.getPropValue(O("expander"),t.rowData,I),N=w.getPropValue(t.cellClassName,M,I),z=w.getPropValue(O("bodyClassName"),t.rowData,I),j=m(z,O("className"),N,k({"p-selection-column":null!==p,"p-editable-column":S,"p-cell-editing":S&&o,"p-frozen-column":R,"p-selectable-cell":t.allowCellSelection&&t.isSelectable({data:A(),index:t.rowIndex}),"p-highlight":c},"p-align-".concat(x),!!x)),T=(a=O("bodyStyle"),i=O("style"),O("frozen")?Object.assign({},i,a,f):Object.assign({},i,a)),K="stack"===t.responsiveLayout&&e.createElement("span",{className:"p-column-title"},w.getJSXElement(y,{props:t.tableProps}));if(p){var L,G=!t.showSelectionElement||t.showSelectionElement(t.rowData,{rowIndex:t.rowIndex,props:t.tableProps});if(G){var W=w.resolveFieldData(t.rowData,t.selectionAriaLabel||t.tableProps.dataKey);L="".concat(n(t.selected?"unselectLabel":"selectLabel")," ").concat(W)}r=G&&e.createElement(e.Fragment,null,"single"===p&&e.createElement(V,{checked:t.selected,onChange:ue,tabIndex:t.tabIndex,tableSelector:t.tableSelector,ariaLabel:L}),"multiple"===p&&e.createElement(H,{checked:t.selected,onChange:se,tabIndex:t.tabIndex,ariaLabel:L}))}else if(g){r=(!t.showRowReorderElement||t.showRowReorderElement(t.rowData,{rowIndex:t.rowIndex,props:t.tableProps}))&&e.createElement("i",{className:m("p-datatable-reorderablerow-handle",O("rowReorderIcon"))})}else if(F){var X=m("p-row-toggler-icon",t.expanded?t.expandedRowIcon:t.collapsedRowIcon),J="".concat(t.tableSelector,"_content_").concat(t.rowIndex,"_expanded"),_=w.resolveFieldData(t.rowData,t.selectionAriaLabel||t.tableProps.dataKey),q="".concat(n(t.expanded?"collapseLabel":"expandLabel")," ").concat(_),Y={onClick:de,className:"p-row-toggler p-link",iconClassName:X};r=e.createElement("button",{className:Y.className,onClick:Y.onClick,type:"button","aria-expanded":t.expanded,"aria-controls":J,tabIndex:t.tabIndex,"aria-label":q},e.createElement("span",{className:Y.iconClassName,"aria-hidden":"true"}),e.createElement(C,null)),E&&(Y.element=r,r=w.getJSXElement(E,t.rowData,{column:t.column,field:D,rowIndex:t.rowIndex,frozenRow:t.frozenRow,props:t.tableProps,expander:Y}))}else if(u&&b){var Z={};r=o?e.createElement(e.Fragment,null,e.createElement("button",{type:"button",name:"row-save",onClick:(Z={editing:!0,onSaveClick:fe,saveClassName:"p-row-editor-save p-link",saveIconClassName:"p-row-editor-save-icon pi pi-fw pi-check",onCancelClick:me,cancelClassName:"p-row-editor-cancel p-link",cancelIconClassName:"p-row-editor-cancel-icon pi pi-fw pi-times"}).onSaveClick,className:Z.saveClassName,tabIndex:t.tabIndex},e.createElement("span",{className:Z.saveIconClassName}),e.createElement(C,null)),e.createElement("button",{type:"button",name:"row-cancel",onClick:Z.onCancelClick,className:Z.cancelClassName,tabIndex:t.tabIndex},e.createElement("span",{className:Z.cancelIconClassName}),e.createElement(C,null))):e.createElement("button",{type:"button",name:"row-edit",onClick:(Z={editing:!1,onInitClick:pe,initClassName:"p-row-editor-init p-link",initIconClassName:"p-row-editor-init-icon pi pi-fw pi-pencil"}).onInitClick,className:Z.initClassName,tabIndex:t.tabIndex},e.createElement("span",{className:Z.initIconClassName}),e.createElement(C,null)),E&&(Z.element=r,r=w.getJSXElement(E,t.rowData,{column:t.column,field:D,rowIndex:t.rowIndex,frozenRow:t.frozenRow,props:t.tableProps,rowEditor:Z}))}else r=!E||o&&S?S&&o?w.getJSXElement(S,{rowData:s,value:B(s),column:t.column,field:D,rowIndex:t.rowIndex,frozenRow:t.frozenRow,props:t.tableProps,editorCallback:ne}):M:E?w.getJSXElement(E,t.rowData,{column:t.column,field:D,rowIndex:t.rowIndex,frozenRow:t.frozenRow,props:t.tableProps}):M;return!u&&S&&(l=e.createElement("a",{tabIndex:"0",ref:h,className:"p-cell-editor-key-helper p-hidden-accessible",onFocus:ce},e.createElement("span",null))),e.createElement("td",{ref:v,style:T,className:j,rowSpan:t.rowSpan,tabIndex:d,role:"cell",onClick:re,onKeyDown:ae,onBlur:ie,onMouseDown:oe,onMouseUp:le},l,K,r)}()}));function J(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 _(e){for(var t=1;t<arguments.length;t++){var n=null!=arguments[t]?arguments[t]:{};t%2?J(Object(n),!0).forEach((function(t){k(e,t,n[t])})):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(n)):J(Object(n)).forEach((function(t){Object.defineProperty(e,t,Object.getOwnPropertyDescriptor(n,t))}))}return e}X.displayName="BodyCell";var q=e.memo((function(t){var n=L(e.useState(!1),2),r=n[1],o=t.onRowEditChange?t.editing:n[0],l=function(){return t.selectionMode&&"single"!==t.selectionModeInColumn&&"multiple"!==t.selectionModeInColumn},a=function(e){return!(!t.groupRowsBy||!i(e,"field"))&&(Array.isArray(t.groupRowsBy)?t.groupRowsBy.indexOf(e.props.field)>-1:t.groupRowsBy===e.props.field)},i=function(e,t){return e?e.props[t]:null},c=function(e,n){e&&n&&(e.tabIndex=-1,n.tabIndex=t.tabIndex)},u=function e(t){var n=t.nextElementSibling;return n?g.hasClass(n,"p-selectable-row")?n:e(n):null},s=function e(t){var n=t.previousElementSibling;return n?g.hasClass(n,"p-selectable-row")?n:e(n):null},d=function(e,n,r){if(i(n,"hidden"))return!1;if(t.rowGroupMode&&"rowspan"===t.rowGroupMode&&a(n)){var o=e[r-1];if(o)return w.resolveFieldData(e[r],i(n,"field"))!==w.resolveFieldData(o,i(n,"field"))}return!0},p=function(e,t,n){if(a(t)){for(var r=w.resolveFieldData(e[n],i(t,"field")),o=r,l=0;r===o;){l++;var c=e[++n];if(!c)break;o=w.resolveFieldData(c,i(t,"field"))}return 1===l?null:l}return null},f=function(e){t.onRowClick({originalEvent:e,data:t.rowData,index:t.index})},b=function(e,n){if(t.onRowEditChange){var o,l=t.dataKey,a=e.originalEvent,i=e.data,c=e.index,u=e.newData;if(l){var s=String(w.resolveFieldData(i,l));if(o=t.editingRows?_({},t.editingRows):{},n)o[s]=!0;else delete o[s],delete o[String(w.resolveFieldData(u,l))]}else{var d=(p=i,(t.editingRows||[]).findIndex((function(e){return n=p,r=e,"equals"===t.compareSelectionBy?n===r:w.equals(n,r,t.dataKey);var n,r})));o=t.editingRows?j(t.editingRows):[],-1!==d?o=o.filter((function(e,t){return t!==d})):o.push(i)}t.onRowEditChange({originalEvent:a,data:o,index:c})}else r(n);var p},v=function(e){var n=e.originalEvent;t.onRowEditInit&&t.onRowEditInit({originalEvent:n,data:t.rowData,index:t.index}),b(e,!0),n.preventDefault()},h=function(e){var n=e.originalEvent,r=!t.rowEditValidator||t.rowEditValidator(e.newData,{props:t.tableProps});t.onRowEditSave&&t.onRowEditSave({originalEvent:n,data:t.rowData,index:t.index,valid:r}),r&&(t.onRowEditComplete&&t.onRowEditComplete(e),b(e,!1)),n.preventDefault()},y=function(e){var n=e.originalEvent;t.onRowEditCancel&&t.onRowEditCancel({originalEvent:n,data:t.rowData,index:t.index}),b(e,!1),n.preventDefault()},C=w.getPropValue(t.rowClassName,t.rowData,{props:t.tableProps}),E=m(C,{"p-highlight":!t.allowCellSelection&&t.selected,"p-highlight-contextmenu":t.contextMenuSelected,"p-selectable-row":t.allowRowSelection&&t.isSelectable({data:t.rowData,index:t.index}),"p-row-odd":t.index%2!=0}),S={height:t.virtualScrollerOptions?t.virtualScrollerOptions.itemSize:void 0},R=t.columns.map((function(n,r){if(d(t.value,n,t.index)){var l="".concat(i(n,"columnKey")||i(n,"field"),"_").concat(r),a="rowspan"===t.rowGroupMode?p(t.value,n,t.index):null;return e.createElement(X,{key:l,value:t.value,tableProps:t.tableProps,tableSelector:t.tableSelector,column:n,rowData:t.rowData,rowIndex:t.index,index:r,rowSpan:a,dataKey:t.dataKey,editing:o,editingMeta:t.editingMeta,editMode:t.editMode,onRowEditInit:v,onRowEditSave:h,onRowEditCancel:y,onEditingMetaChange:t.onEditingMetaChange,onRowToggle:t.onRowToggle,selection:t.selection,selectionAriaLabel:t.tableProps.selectionAriaLabel,allowCellSelection:t.allowCellSelection,compareSelectionBy:t.compareSelectionBy,selectOnEdit:t.selectOnEdit,selected:t.selected,onClick:t.onCellClick,onMouseDown:t.onCellMouseDown,onMouseUp:t.onCellMouseUp,tabIndex:t.tabIndex,cellClassName:t.cellClassName,responsiveLayout:t.responsiveLayout,frozenRow:t.frozenRow,isSelectable:t.isSelectable,showSelectionElement:t.showSelectionElement,showRowReorderElement:t.showRowReorderElement,onRadioChange:t.onRadioChange,onCheckboxChange:t.onCheckboxChange,expanded:t.expanded,expandedRowIcon:t.expandedRowIcon,collapsedRowIcon:t.collapsedRowIcon,virtualScrollerOptions:t.virtualScrollerOptions})}return null})),x=l()&&!t.allowCellSelection?0===t.index?t.tabIndex:-1:null;return e.createElement("tr",{role:"row",tabIndex:x,className:E,style:S,onMouseDown:function(e){t.onRowMouseDown({originalEvent:e,data:t.rowData,index:t.index})},onMouseUp:function(e){t.onRowMouseUp({originalEvent:e,data:t.rowData,index:t.index})},onClick:f,onDoubleClick:function(e){t.onRowDoubleClick({originalEvent:e,data:t.rowData,index:t.index})},onContextMenu:function(e){t.onRowRightClick({originalEvent:e,data:t.rowData,index:t.index})},onTouchEnd:function(e){t.onRowTouchEnd(e)},onKeyDown:function(e){if(l()&&!t.allowCellSelection){var n=e.target,r=e.currentTarget;switch(e.which){case 40:var o=u(r);o&&(c(r,o),o.focus()),e.preventDefault();break;case 38:var a=s(r);a&&(c(r,a),a.focus()),e.preventDefault();break;case 13:g.isClickable(n)||(f(e),e.preventDefault());break;case 32:g.isClickable(n)||n.readOnly||(f(e),e.preventDefault())}}},onDragStart:function(e){t.onRowDragStart({originalEvent:e,data:t.rowData,index:t.index})},onDragOver:function(e){t.onRowDragOver({originalEvent:e,data:t.rowData,index:t.index})},onDragLeave:function(e){t.onRowDragLeave({originalEvent:e,data:t.rowData,index:t.index})},onDragEnd:function(e){t.onRowDragEnd({originalEvent:e,data:t.rowData,index:t.index})},onDrop:function(e){t.onRowDrop({originalEvent:e,data:t.rowData,index:t.index})}},R)}));q.displayName="BodyRow";var Y=e.memo((function(t){var r=m("p-row-toggler-icon",t.expanded?t.expandedRowIcon:t.collapsedRowIcon),o=n(t.expanded?"collapseLabel":"expandLabel");return e.createElement("button",{type:"button",onClick:function(e){t.onClick({originalEvent:e,data:t.rowData})},className:"p-row-toggler p-link",tabIndex:t.tabIndex,"aria-label":o},e.createElement("span",{className:r,"aria-hidden":"true"}),e.createElement(C,null))}));Y.displayName="RowTogglerButton";var Z=["originalEvent"];function $(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?$(Object(n),!0).forEach((function(t){k(e,t,n[t])})):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(n)):$(Object(n)).forEach((function(t){Object.defineProperty(e,t,Object.getOwnPropertyDescriptor(n,t))}))}return e}var ee=e.memo(e.forwardRef((function(t,n){var o=L(e.useState({}),2),l=o[0],a=o[1],i=e.useRef(null),p=e.useCallback((function(e){i.current=e,t.virtualScrollerContentRef&&t.virtualScrollerContentRef(e)}),[t]),f=e.useRef(null),b=e.useRef(null),v=e.useRef(null),h=e.useRef(null),y=e.useRef(null),C=e.useRef(null),E=e.useRef(!1),S=e.useRef(!1),R=e.useRef(null),x=e.useRef(null),O=s(t.virtualScrollerOptions),D=t.rowGroupMode&&"subheader"===t.rowGroupMode,M="radiobutton"===t.selectionMode,k="checkbox"===t.selectionMode,I="single"===t.selectionModeInColumn,F="multiple"===t.selectionModeInColumn,N=function(e,n){return te()?!(e.rowIndex!==n.rowIndex&&e.rowData!==n.rowData||e.field!==n.field&&e.cellIndex!==n.cellIndex):"equals"===t.compareSelectionBy?e===n:w.equals(e,n,t.dataKey)},P=function(){return"single"===t.selectionMode&&!F||!M&&I},z=function(){return"multiple"===t.selectionMode&&!I||F},T=function(e){return!(!e||!t.selection)&&(t.selection instanceof Array?oe(t.selection,e)>-1:N(e,t.selection))},A=function(e){return!(!e||!t.contextMenuSelection)&&N(e,t.contextMenuSelection)},K=function(e){return!t.isDataSelectable||t.isDataSelectable(e)},B=function(e){return!(!e||!t.expandedRows)&&(D&&t.expandableRowGroups?H(e):t.dataKey?!!t.expandedRows&&void 0!==t.expandedRows[w.resolveFieldData(e,t.dataKey)]:-1!==oe(t.expandedRows,e))},H=function(e){return t.dataKey===t.groupRowsBy?Object.keys(t.expandedRows).some((function(n){return w.equals(n,w.resolveFieldData(e,t.dataKey))})):t.expandedRows.some((function(n){return w.equals(n,e,t.groupRowsBy)}))},V=function(e){return!("row"!==t.editMode||!e||!t.editingRows)&&(t.dataKey?!!t.editingRows&&void 0!==t.editingRows[w.resolveFieldData(e,t.dataKey)]:-1!==oe(t.editingRows,e))},U=function(e){return t.dragSelection&&z()&&!e.originalEvent.shiftKey},W=function(e){return!te()&&U(e)||t.reorderableRows},X=function(e){return te()&&U(e)},J=function(e){return!g.isClickable(e.originalEvent.target)},_=function(e){return!E.current&&(!t.metaKeySelection||t.metaKeySelection&&(e.originalEvent.metaKey||e.originalEvent.ctrlKey))},$=function(e){return z()&&e.originalEvent.shiftKey&&null!==v.current},ee=function(){return(t.selectionMode||t.selectionModeInColumn)&&!(M&&I)&&!(k&&F)},te=function(){return t.cellSelection&&!I&&!F},ne=function(){return t.columns?t.columns.length:0},re=function(e,n){return(n=n||t.virtualScrollerOptions)?n[e]:null},oe=function(e,t){return(e||[]).findIndex((function(e){return N(t,e)}))},le=function(e,n){return t.dataKey?w.resolveFieldData(e,t.dataKey)+"_"+n:n},ae=function(e,n,r){var o=w.resolveFieldData(n,t.groupRowsBy),l=e[r-1];return!l||o!==w.resolveFieldData(l,t.groupRowsBy)},ie=function(e,n,r,o){if(t.expandableRowGroups&&!o)return!1;var l=w.resolveFieldData(n,t.groupRowsBy),a=e[r+1];return!a||l!==w.resolveFieldData(a,t.groupRowsBy)},ce=function(){var e=g.getOuterHeight(i.current.previousElementSibling);i.current.style.top=(i.current.style.top||0)+e+"px"},ue=function(e){var n=e.originalEvent,r=e.data,o=e.toggleable,l=e.type;if(K({data:r,index:e.index})){var a=T(r),i=t.selection;a?o&&(i=null,we({originalEvent:n,data:r,type:l})):(i=r,ge({originalEvent:n,data:r,type:l})),ve(n,!0),t.onSelectionChange&&i!==t.selection&&t.onSelectionChange({originalEvent:n,value:i,type:l})}},se=function(e){var n=e.originalEvent,r=e.data,o=e.toggleable,l=e.type;if(K({data:r,index:e.index})){var a=T(r),i=t.selection||[];if(a)if(o){var c=oe(i,r);i=t.selection.filter((function(e,t){return t!==c})),we({originalEvent:n,data:r,type:l})}else i.length&&(t.selection.forEach((function(e){return we({originalEvent:n,data:e,type:l})})),i=[r],ge({originalEvent:n,data:r,type:l}));else i=o&&z()?[].concat(j(i),[r]):[r],ge({originalEvent:n,data:r,type:l});ve(n,!0),t.onSelectionChange&&i!==t.selection&&t.onSelectionChange({originalEvent:n,value:i,type:l})}},de=function(e,n){g.clearSelection(),y.current=te()?e.rowIndex:e.index;var r=pe(e);t.onSelectionChange&&r!==t.selection&&t.onSelectionChange({originalEvent:e.originalEvent,value:r,type:n}),v.current=y.current,h.current=e.cellIndex,ve(e.originalEvent,!1)},pe=function(e){var n,r;return y.current>v.current?(n=v.current,r=y.current):y.current<v.current?(n=y.current,r=v.current):n=r=y.current,t.paginator&&(n=Math.max(n-t.first,0),r-=t.first),te()?me(e,n,r):fe(e,n,r)},fe=function(e,n,r){for(var o=t.value,l=[],a=n;a<=r;a++){var i=o[a];K({data:i,index:a})&&(l.push(i),ge({originalEvent:e.originalEvent,data:i,type:"row"}))}return l},me=function(e,n,r){var o,l,a=e.cellIndex;a>h.current?(o=h.current,l=a):a<h.current?(o=a,l=h.current):o=l=a;for(var i=t.value,c=[],u=n;u<=r;u++)for(var s=i[u],d=t.columns,p=t.paginator?u+t.first:u,f=o;f<=l;f++){var m=d[f].props.field,g={value:w.resolveFieldData(s,m),field:m,rowData:s,rowIndex:p,cellIndex:f,selected:!0};K({data:g,index:u})&&(c.push(g),ge({originalEvent:e.originalEvent,data:g,type:"cell"}))}return c},ge=function(e){te()?t.onCellSelect&&t.onCellSelect(Q(Q({originalEvent:e.originalEvent},e.data),{},{type:e.type})):t.onRowSelect&&t.onRowSelect(e)},we=function(e){te()?t.onCellUnselect&&t.onCellUnselect(Q(Q({originalEvent:e.originalEvent},e.data),{},{type:e.type})):t.onRowUnselect&&t.onRowUnselect(e)},be=function(e){t.dragSelection&&!f.current&&(f.current=document.createElement("div"),g.addClass(f.current,"p-datatable-drag-selection-helper"),b.current={x:e.clientX,y:e.clientY},f.current.style.top="".concat(e.pageY,"px"),f.current.style.left="".concat(e.pageX,"px"),Le())},ve=function(e,n){var r=e.currentTarget;if(!te()&&t.selectionAutoFocus)if(F){var o=g.findSingle(r,"td.p-selection-column .p-checkbox-box");o&&o.focus()}else if(I){var l=g.findSingle(r,'td.p-selection-column input[type="radio"]');l&&l.focus()}!n&&r&&r.focus()},he=function(e,n){var r=e.currentTarget;if(g.hasClass(r,"cell"===n?"p-selectable-cell":"p-selectable-row")){var o=g.findSingle(i.current,"".concat("cell"===n?"tr > td":"tr",'[tabindex="').concat(t.tabIndex,'"]'));o&&r&&(o.tabIndex=-1,r.tabIndex=t.tabIndex)}},ye=function(e){if(!te()&&J(e)){if(t.onRowClick&&t.onRowClick(e),ee()){if($(e))de(e,"row");else{var n=I||F||_(e);v.current=e.index,y.current=e.index,C.current=t.first,P()?ue(Q(Q({},e),{},{toggleable:n,type:"row"})):se(Q(Q({},e),{},{toggleable:n,type:"row"}))}he(e.originalEvent,"row")}else ve(e.originalEvent);E.current=!1}},Ce=function(e){g.isClickable(e.originalEvent.target)||t.onRowDoubleClick&&t.onRowDoubleClick(e)},Ee=function(e){(t.onContextMenu||t.onContextMenuSelectionChange)&&(g.clearSelection(),t.onContextMenuSelectionChange&&t.onContextMenuSelectionChange({originalEvent:e.originalEvent,value:e.data}),t.onContextMenu&&t.onContextMenu({originalEvent:e.originalEvent,data:e.data}),e.originalEvent.preventDefault())},Se=function(){E.current=!0},Re=function(e){var n=e.originalEvent;n.currentTarget.draggable=!!g.hasClass(n.target,"p-datatable-reorderablerow-handle"),W(e)&&(be(n),v.current=e.index,y.current=e.index,C.current=t.first)},xe=function(e){var t=e.index===v.current;W(e)&&!t&&de(e,"row")},Oe=function(e){var n,r=t.dataKey;if(t.groupRowsBy?r===t.groupRowsBy:!!r){var o=String(w.resolveFieldData(e.data,r));null!=(n=t.expandedRows?Q({},t.expandedRows):{})[o]?(delete n[o],t.onRowCollapse&&t.onRowCollapse({originalEvent:e,data:e.data})):(n[o]=!0,t.onRowExpand&&t.onRowExpand({originalEvent:e,data:e.data}))}else{var l=oe(t.expandedRows,e.data);n=t.expandedRows?j(t.expandedRows):[],-1!==l?(n=n.filter((function(e,t){return t!==l})),t.onRowCollapse&&t.onRowCollapse({originalEvent:e,data:e.data})):(n.push(e.data),t.onRowExpand&&t.onRowExpand({originalEvent:e,data:e.data}))}t.onRowToggle&&t.onRowToggle({data:n})},De=function(e){var t=e.originalEvent,n=e.index;W(t)&&(S.current=!0,R.current=n,t.dataTransfer.setData("text","b"))},Me=function(e){var t=e.originalEvent,n=e.index;if(S.current&&R.current!==n){var r=t.currentTarget,o=g.getOffset(r).top+g.getWindowScrollTop(),l=t.pageY+window.scrollY,a=o+g.getOuterHeight(r)/2,i=r.previousElementSibling;l<a?(g.removeClass(r,"p-datatable-dragpoint-bottom"),x.current=n,i?g.addClass(i,"p-datatable-dragpoint-bottom"):g.addClass(r,"p-datatable-dragpoint-top")):(i?g.removeClass(i,"p-datatable-dragpoint-bottom"):g.addClass(r,"p-datatable-dragpoint-top"),x.current=n+1,g.addClass(r,"p-datatable-dragpoint-bottom"))}t.preventDefault()},ke=function(e){var t=e.originalEvent.currentTarget,n=t.previousElementSibling;n&&g.removeClass(n,"p-datatable-dragpoint-bottom"),g.removeClass(t,"p-datatable-dragpoint-bottom"),g.removeClass(t,"p-datatable-dragpoint-top")},Ie=function(e){var t=e.originalEvent;S.current=!1,R.current=null,x.current=null,t.currentTarget.draggable=!1},Fe=function(e){var n=e.originalEvent;if(null!=x.current){var r=R.current>x.current?x.current:0===x.current?0:x.current-1,o=j(t.value);w.reorderArray(o,R.current,r),t.onRowReorder&&t.onRowReorder({originalEvent:n,value:o,dragIndex:R.current,dropIndex:x.current})}ke(e),Ie(e),n.preventDefault()},Ne=function(e){ue(Q(Q({},e),{},{toggleable:!0,type:"radio"}))},Pe=function(e){se(Q(Q({},e),{},{toggleable:!0,type:"checkbox"}))},ze=function(e){var t=b.current,n=e.clientX-t.x,r=e.clientY-t.y;r<0&&(f.current.style.top="".concat(e.pageY+5,"px")),n<0&&(f.current.style.left="".concat(e.pageX+5,"px")),f.current.style.height="".concat(Math.abs(r),"px"),f.current.style.width="".concat(Math.abs(n),"px"),e.preventDefault()},je=function e(){f.current&&(f.current.remove(),f.current=null),document.removeEventListener("mousemove",ze),document.removeEventListener("mouseup",e)},Te=function(e){if(J(e)){if(t.onCellClick&&t.onCellClick(e),te()){if($(e))de(e,"cell");else{var n=_(e),r=e.originalEvent,o=G(e,Z);v.current=e.rowIndex,y.current=e.rowIndex,C.current=t.first,h.current=e.cellIndex,P()?ue({originalEvent:r,data:o,index:e.rowIndex,toggleable:n,type:"cell"}):se({originalEvent:r,data:o,index:e.rowIndex,toggleable:n,type:"cell"})}he(e.originalEvent,"cell")}E.current=!1}},Ae=function(e){X(e)&&(be(e.originalEvent),v.current=e.rowIndex,y.current=e.rowIndex,C.current=t.first,h.current=e.cellIndex)},Ke=function(e){var t=e.rowIndex===v.current&&e.cellIndex===h.current;X(e)&&!t&&de(e,"cell")},Le=function(){document.addEventListener("mousemove",ze),document.addEventListener("mouseup",je),document.body.appendChild(f.current)};e.useEffect((function(){var e;t.frozenRow&&(i.current.style.top=g.getOuterHeight(i.current.previousElementSibling)+"px"),t.scrollable&&"subheader"===t.rowGroupMode&&(e=g.getOuterHeight(i.current.previousElementSibling)+"px",l.top!==e&&a({top:e}))})),d((function(){!t.isVirtualScrollerDisabled&&re("vertical")&&ce()})),c((function(){!t.isVirtualScrollerDisabled&&re("vertical")&&re("itemSize",O)!==re("itemSize")&&ce()}),[t.virtualScrollerOptions]),c((function(){t.paginator&&z()&&(v.current=null)}),[t.first]),u((function(){t.dragSelection&&je()}));var Be=function(n,r,o,a){if(D&&ae(t.value,n,r-t.first)){var i=t.scrollable?{top:l.top}:null,c=t.expandableRowGroups&&e.createElement(Y,{onClick:Oe,rowData:n,expanded:o,expandedRowIcon:t.expandedRowIcon,collapsedRowIcon:t.collapsedRowIcon}),u=w.getJSXElement(t.rowGroupHeaderTemplate,n,{index:r,props:t.tableProps});return e.createElement("tr",{className:"p-rowgroup-header",style:i,role:"row"},e.createElement("td",{colSpan:a},c,e.createElement("span",{className:"p-rowgroup-header-name"},u)))}return null},Ge=function(n,r,o){if(!t.expandableRowGroups||o){var l=!!(t.selectionMode||null!==t.selectionModeInColumn||t.columns&&t.columns.some((function(e){return e&&!!e.props.selectionMode})))&&T(n),a=A(n),i=ee(),c=te(),u=V(n);return e.createElement(q,{tableProps:t.tableProps,tableSelector:t.tableSelector,value:t.value,columns:t.columns,rowData:n,index:r,selected:l,contextMenuSelected:a,onRowClick:ye,onRowDoubleClick:Ce,onRowRightClick:Ee,tabIndex:t.tabIndex,isSelectable:K,onRowTouchEnd:Se,onRowMouseDown:Re,onRowMouseUp:xe,onRowToggle:Oe,onRowDragStart:De,onRowDragOver:Me,onRowDragLeave:ke,onRowDragEnd:Ie,onRowDrop:Fe,onRadioChange:Ne,onCheckboxChange:Pe,onCellClick:Te,onCellMouseDown:Ae,onCellMouseUp:Ke,editing:u,editingRows:t.editingRows,editingMeta:t.editingMeta,editMode:t.editMode,onRowEditChange:t.onRowEditChange,onEditingMetaChange:t.onEditingMetaChange,groupRowsBy:t.groupRowsBy,compareSelectionBy:t.compareSelectionBy,dataKey:t.dataKey,rowGroupMode:t.rowGroupMode,onRowEditInit:t.onRowEditInit,rowEditValidator:t.rowEditValidator,onRowEditSave:t.onRowEditSave,onRowEditComplete:t.onRowEditComplete,onRowEditCancel:t.onRowEditCancel,selection:t.selection,allowRowSelection:i,allowCellSelection:c,selectOnEdit:t.selectOnEdit,selectionMode:t.selectionMode,selectionModeInColumn:t.selectionModeInColumn,cellClassName:t.cellClassName,responsiveLayout:t.responsiveLayout,frozenRow:t.frozenRow,showSelectionElement:t.showSelectionElement,showRowReorderElement:t.showRowReorderElement,expanded:o,expandedRowIcon:t.expandedRowIcon,collapsedRowIcon:t.collapsedRowIcon,rowClassName:t.rowClassName,virtualScrollerOptions:t.virtualScrollerOptions})}},He=function(n,r,o,l){if(o&&(!D||!t.expandableRowGroups)){var a="".concat(t.tableSelector,"_content_").concat(r,"_expanded"),i={index:r,customRendering:!1},c=w.getJSXElement(t.rowExpansionTemplate,n,i);return i.customRendering||(c=e.createElement("td",{role:"cell",colSpan:l},c)),e.createElement("tr",{id:a,className:"p-datatable-row-expansion",role:"row"},c)}return null},Ve=function(n,r,o,l){if(D&&ie(t.value,n,r-t.first,o)){var a=w.getJSXElement(t.rowGroupFooterTemplate,n,{index:r,colSpan:l,props:t.tableProps});return e.createElement("tr",{className:"p-rowgroup-footer",role:"row"},a)}return null},Ue=m("p-datatable-tbody",t.className),We=t.empty?function(){if(!t.loading){var n=ne(),o=w.getJSXElement(t.emptyMessage,{props:t.tableProps,frozen:t.frozenRow})||r("emptyMessage");return e.createElement("tr",{className:"p-datatable-emptymessage",role:"row"},e.createElement("td",{colSpan:n,role:"cell"},o))}return null}():t.value.map((function(n,r){var o=re("getItemOptions")?re("getItemOptions")(r).index:t.first+r,l=le(n,o),a=B(n),i=ne(),c=Be(n,o,a,i),u=Ge(n,o,a),s=He(n,o,a,i),d=Ve(n,o,a,i);return e.createElement(e.Fragment,{key:l},c,u,s,d)}));return e.createElement("tbody",{ref:p,className:Ue},We)})));function te(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 ne(e){for(var t=1;t<arguments.length;t++){var n=null!=arguments[t]?arguments[t]:{};t%2?te(Object(n),!0).forEach((function(t){k(e,t,n[t])})):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(n)):te(Object(n)).forEach((function(t){Object.defineProperty(e,t,Object.getOwnPropertyDescriptor(n,t))}))}return e}ee.displayName="TableBody";var re=e.memo((function(t){var n=L(e.useState({}),2),r=n[0],o=n[1],l=e.useRef(null),a=function(e){return t.column.props[e]},i=function(){if(a("frozen")){var e=ne({},r);if("right"===a("alignFrozen")){var t=0,n=l.current.nextElementSibling;n&&(t=g.getOuterWidth(n)+parseFloat(n.style.right||0)),e.right=t+"px"}else{var i=0,c=l.current.previousElementSibling;c&&(i=g.getOuterWidth(c)+parseFloat(c.style.left||0)),e.left=i+"px"}!(r.left===e.left&&r.right===e.right)&&o(e)}};e.useEffect((function(){a("frozen")&&i()}));var c,u,s=(c=a("footerStyle"),u=a("style"),a("frozen")?Object.assign({},u,c,r):Object.assign({},u,c)),d=a("align"),p=a("colSpan"),f=a("rowSpan"),b=m(a("footerClassName"),a("className"),k({"p-frozen-column":a("frozen")},"p-align-".concat(d),!!d)),v=w.getJSXElement(a("footer"),{props:t.tableProps});return e.createElement("td",{ref:l,style:s,className:b,role:"cell",colSpan:p,rowSpan:f},v)}));re.displayName="FooterCell";var oe=e.memo((function(t){var n=function(t){var n=e.Children.toArray(t.props.children);return r(n)},r=function(n){return e.Children.map(n,(function(n,r){return(!n||!n.props.hidden)&&e.createElement(re,{key:n&&(n.props.columnKey||n.props.field)||r,tableProps:t.tableProps,column:n})}))};if(t.footerColumnGroup||t.columns&&t.columns.some((function(e){return e&&e.props.footer}))){var o=t.footerColumnGroup?e.Children.toArray(t.footerColumnGroup.props.children).map((function(t,r){return e.createElement("tr",{key:r,role:"row"},n(t))})):e.createElement("tr",{role:"row"},r(t.columns));return e.createElement("tfoot",{className:"p-datatable-tfoot"},o)}return null}));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 ae(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){k(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}oe.displayName="TableFooter";var ie=e.memo((function(n){var a=L(e.useState(!1),2),i=a[0],s=a[1],d=e.useRef(null),f=e.useRef(null),v=e.useRef(!1),h=e.useRef(null),D=function(e){return n.column.props[e]},M=D("filterField")||D("field"),k=n.filters[M],I=n.filtersStore&&n.filtersStore[M],F=L(p({target:f,overlay:d,listener:function(e,t){t.valid&&("outside"===t.type?!v.current&&!K(e.target)&&ne():ne()),v.current=!1},when:i}),2),N=F[0],P=F[1],z=function(e){return w.isEmpty(e)},j=function(e){return k&&k.matchMode===e},T=function(){return D("filterMatchModeOptions")||t.filterMatchModeOptions[G()].map((function(e){return{label:r(e),value:e}}))},A=function(){return"boolean"!==D("dataType")&&D("showFilterMatchModes")&&T()&&D("showFilterMenuOptions")},K=function(e){return f.current&&(f.current.isSameNode(e)||f.current.contains(e))},B=function(){if(I)return I.operator?{matchMode:I.constraints[0].matchMode,operator:I.operator}:{matchMode:I.matchMode}},G=function(){var e=D("dataType"),n=D("filterMatchMode"),r=function(e){return t.filterMatchModeOptions[e].some((function(e){return e===n}))};return"custom"!==n||r(e)?n&&Object.keys(t.filterMatchModeOptions).find((function(e){return r(e)}))||e:(t.filterMatchModeOptions[e].push(o.CUSTOM),e)},H=function(){var e=D("onFilterClear"),t=B(),r=ae({},n.filters);r[M].operator?(r[M].constraints.splice(1),r[M].operator=t.operator,r[M].constraints[0]={value:null,matchMode:t.matchMode}):(r[M].value=null,r[M].matchMode=t.matchMode),e&&e(),n.onFilterChange(r),n.onFilterApply(),ne()},V=function(){var e=D("onFilterApplyClick");e&&e({field:M,constraints:k}),n.onFilterApply(),ne()},U=function(){s((function(e){return!e}))},W=function(e){switch(e.key){case"Escape":case"Tab":ne();break;case"ArrowDown":if(i){var t=g.getFirstFocusableElement(d.current);t&&t.focus(),e.preventDefault()}else e.altKey&&(s(!0),e.preventDefault())}},X=function(e){"Escape"===e.key&&(ne(),f.current&&f.current.focus())},J=function(e,t){var r=ae({},n.filters),o=e.target.value;"menu"===n.display?r[M].constraints[t].value=o:r[M].value=o,n.onFilterChange(r),D("showApplyButton")&&"row"!==n.display||n.onFilterApply()},_=function(e){var t=D("onFilterMatchModeChange"),r=ae({},n.filters);r[M].matchMode=e,t&&t({field:M,matchMode:e}),n.onFilterChange(r),n.onFilterApply(),ne()},q=function(e,t,n){var r=e.target;switch(e.key){case"ArrowDown":var o=ee(r);o&&(r.removeAttribute("tabindex"),o.tabIndex=0,o.focus()),e.preventDefault();break;case"ArrowUp":var l=te(r);l&&(r.removeAttribute("tabindex"),l.tabIndex=0,l.focus()),e.preventDefault();break;case"Enter":n?H():_(t.value),e.preventDefault()}},Y=function(e){var t=D("onFilterOperatorChange"),r=e.value,o=ae({},n.filters);o[M].operator=r,n.onFilterChange(o),t&&t({field:M,operator:r}),D("showApplyButton")||n.onFilterApply()},Z=function(e,t){var r=D("onFilterMatchModeChange"),o=ae({},n.filters);o[M].constraints[t].matchMode=e,n.onFilterChange(o),r&&r({field:M,matchMode:e,index:t}),D("showApplyButton")||n.onFilterApply()},$=function(){var e=D("onFilterConstraintAdd"),t=B(),r=ae({},n.filters),o={value:null,matchMode:t.matchMode};r[M].constraints.push(o),e&&e({field:M,constraint:o}),n.onFilterChange(r),D("showApplyButton")||n.onFilterApply()},Q=function(e){var t=D("onFilterConstraintRemove"),r=ae({},n.filters),o=r[M].constraints.splice(e,1);t&&t({field:M,constraint:o}),n.onFilterChange(r),D("showApplyButton")||n.onFilterApply()},ee=function e(t){var n=t.nextElementSibling;return n?g.hasClass(n,"p-column-filter-separator")?e(n):n:t.parentElement.firstElementChild},te=function e(t){var n=t.previousElementSibling;return n?g.hasClass(n,"p-column-filter-separator")?e(n):n:t.parentElement.lastElementChild},ne=function(){s(!1)},re=function(e){v.current=!0,y.emit("overlay-click",{originalEvent:e,target:d.current})},oe=function(){v.current=!0},le=function(){b.set("overlay",d.current,t.autoZIndex,t.zIndex.overlay),g.alignOverlay(d.current,f.current,t.appendTo,!1),h.current=function(e){var t;(K(t=e.target)||!d.current||d.current.isSameNode(t)||d.current.contains(t))&&(v.current=!0)},y.on("overlay-click",h.current)},ie=function(){N()},ce=function(){se()},ue=function(){b.clear(d.current)},se=function(){P(),y.off("overlay-click",h.current),h.current=null,v.current=!1},de=function(){return k?k.constraints||[k]:[]},pe=function(){return r("clear")},fe=function(e){var t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:0,r=ae({},n.filters),o=r[M];"menu"===n.display&&o&&o.operator?r[M].constraints[t].value=e:r[M].value=e,n.onFilterChange(r)},me=function(){for(var e=arguments.length,t=new Array(e),r=0;r<e;r++)t[r]=arguments[r];t&&fe(t[0],t[1]),n.onFilterApply()};c((function(){"menu"===n.display&&i&&g.alignOverlay(d.current,f.current,t.appendTo,!1)})),u((function(){h.current&&(y.off("overlay-click",h.current),h.current=null),d.current&&(b.clear(d.current),se())}));var ge=function(t,n){var r=t?t.value:null;return D("filterElement")?w.getJSXElement(D("filterElement"),{field:M,index:n,filterModel:t,value:r,filterApplyCallback:me,filterCallback:fe}):e.createElement(x,{type:D("filterType"),value:r||"",onChange:function(e){return J(e,n)},className:"p-column-filter",placeholder:D("filterPlaceholder"),maxLength:D("filterMaxLength")})},we=function(e,t){return"menu"===n.display?ge(e,t):null},be=function(){if(A()){var t=T(),n=r("noFilter");return e.createElement("ul",{className:"p-column-filter-row-items"},t.map((function(t,n){var r=t.value,o=t.label,l=m("p-column-filter-row-item",{"p-highlight":j(r)});return e.createElement("li",{className:l,key:o,onClick:function(){return _(r)},onKeyDown:function(e){return q(e,t)},tabIndex:0===n?0:null},o)})),e.createElement("li",{className:"p-column-filter-separator"}),e.createElement("li",{className:"p-column-filter-row-item",onClick:H,onKeyDown:function(e){return q(e,null,!0)}},n))}return null},ve=function(){if(D("showFilterOperator")&&k&&k.operator&&D("showFilterMenuOptions")){var t=[{label:r("matchAll"),value:l.AND},{label:r("matchAny"),value:l.OR}];return e.createElement("div",{className:"p-column-filter-operator"},e.createElement(R,{options:t,value:k.operator,onChange:Y,className:"p-column-filter-operator-dropdown"}))}return null},he=function(t,n){if(A()){var r=T();return e.createElement(R,{options:r,value:t.matchMode,onChange:function(e){return Z(e.value,n)},className:"p-column-filter-matchmode-dropdown"})}return null},ye=function(t){if(de().length>1){var n=r("removeRule");return e.createElement(E,{type:"button",icon:"pi pi-trash",className:"p-column-filter-remove-button p-button-text p-button-danger p-button-sm",onClick:function(){return Q(t)},label:n})}return null},Ce=function(){if(D("showAddButton")&&k&&k.operator&&de()&&de().length<D("maxConstraints")&&D("showFilterMenuOptions")){var t=r("addRule");return e.createElement("div",{className:"p-column-filter-add-rule"},e.createElement(E,{type:"button",label:t,icon:"pi pi-plus",className:"p-column-filter-add-button p-button-text p-button-sm",onClick:$}))}return null},Ee=function(){if(D("showClearButton")){if(!D("filterClear")){var t=pe();return e.createElement(E,{type:"button",className:"p-button-outlined p-button-sm",onClick:H,label:t})}return w.getJSXElement(D("filterClear"),{field:M,filterModel:k,filterClearCallback:H})}return null},Se=function(){if(D("showApplyButton")){if(!D("filterApply")){var t=r("apply");return e.createElement(E,{type:"button",className:"p-button-sm",onClick:V,label:t})}return w.getJSXElement(D("filterApply"),{field:M,filterModel:k,filterApplyCallback:V})}return null},Re=function(){var t=Ee(),n=Se();return e.createElement("div",{className:"p-column-filter-buttonbar"},t,n)},xe=function(){var t,n=ve(),r=(t=de(),e.createElement("div",{className:"p-column-filter-constraints"},t.map((function(t,n){var r=he(t,n),o=we(t,n),l=ye(n);return e.createElement("div",{key:n,className:"p-column-filter-constraint"},r,o,e.createElement("div",null,l))})))),o=Ce(),l=Re();return e.createElement(e.Fragment,null,n,r,o,l)},Oe=m("p-column-filter p-fluid",{"p-column-filter-row":"row"===n.display,"p-column-filter-menu":"menu"===n.display}),De=function(){if("row"===n.display){var t=ge(k,0);return e.createElement("div",{className:"p-fluid p-column-filter-element"},t)}return null}(),Me=function(){if(D("showFilterMenu")&&("row"!==n.display||"boolean"!==D("dataType"))){var t=m("p-column-filter-menu-button p-link",{"p-column-filter-menu-button-open":i,"p-column-filter-menu-button-active":!(!I||!k||z(I.operator?k.constraints[0].value:k.value))}),o=r("filter");return e.createElement("button",{ref:f,type:"button",className:t,"aria-haspopup":!0,"aria-expanded":i,onClick:U,onKeyDown:W,"aria-label":o},e.createElement("span",{className:"pi pi-filter-icon pi-filter","aria-hidden":"true"}),e.createElement(C,null))}return null}(),ke=function(){if(D("showClearButton")&&"row"===n.display){var t=m("p-column-filter-clear-button p-link",{"p-hidden-space":!(k&&!z(k.value))}),r=pe();return e.createElement("button",{className:t,type:"button",onClick:H,"aria-label":r},e.createElement("span",{className:"pi pi-filter-slash","aria-hidden":"true"}),e.createElement(C,null))}return null}(),Ie=function(){var r=D("filterMenuStyle"),o=m("p-column-filter-overlay p-component p-fluid",D("filterMenuClassName"),{"p-column-filter-overlay-menu":"menu"===n.display,"p-input-filled":"filled"===t.inputStyle,"p-ripple-disabled":!1===t.ripple}),l=w.getJSXElement(D("filterHeader"),{field:M,filterModel:k,filterApplyCallback:me}),a=w.getJSXElement(D("filterFooter"),{field:M,filterModel:k,filterApplyCallback:me}),c="row"===n.display?be():xe();return e.createElement(O,null,e.createElement(S,{nodeRef:d,classNames:"p-connected-overlay",in:i,timeout:{enter:120,exit:100},unmountOnExit:!0,onEnter:le,onEntered:ie,onExit:ce,onExited:ue},e.createElement("div",{ref:d,style:r,className:o,onKeyDown:X,onClick:re,onMouseDown:oe},l,c,a)))}();return e.createElement("div",{className:Oe},De,Me,ke,Ie)}));ie.displayName="ColumnFilter";var ce=e.memo((function(t){var n=L(e.useState(!1),2),r=n[1],o=function(e){t.disabled||(r(!0),t.onChange({originalEvent:e,checked:!t.checked}))},l=m("p-checkbox-box p-component",{"p-highlight":t.checked,"p-disabled":t.disabled,"p-focus":n[0]}),a=m("p-checkbox-icon",{"pi pi-check":t.checked});return e.createElement("div",{className:"p-checkbox p-component",onClick:o},e.createElement("div",{className:l,role:"checkbox","aria-checked":t.checked,tabIndex:t.disabled?null:0,onFocus:function(){r(!0)},onBlur:function(){r(!1)},onKeyDown:function(e){"Space"===e.code&&(o(e),e.preventDefault())}},e.createElement("span",{className:a})))}));function ue(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?ue(Object(n),!0).forEach((function(t){k(e,t,n[t])})):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(n)):u