@progress/kendo-react-data-tools 7.2.2-develop.1 → 7.2.3-develop.1
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/cdn/js/kendo-react-datatools.js +5 -5
- package/index.js +4 -4
- package/index.mjs +971 -957
- package/messages/index.d.ts +6 -1
- package/package.json +9 -9
|
@@ -2,9 +2,9 @@
|
|
|
2
2
|
* Copyright © 2024 Progress Software Corporation. All rights reserved.
|
|
3
3
|
* Licensed under commercial license. See LICENSE.md in the package root for more information
|
|
4
4
|
*-------------------------------------------------------------------------------------------*/
|
|
5
|
-
(function(c,X){typeof exports=="object"&&typeof module!="undefined"?X(exports,require("react"),require("prop-types"),require("@progress/kendo-react-common"),require("@progress/kendo-react-buttons"),require("@progress/kendo-react-intl"),require("@progress/kendo-react-inputs"),require("@progress/kendo-react-dropdowns"),require("@progress/kendo-svg-icons"),require("react-dom"),require("@progress/kendo-data-query"),require("@progress/kendo-react-dateinputs"),require("@progress/kendo-react-popup"),require("@progress/kendo-react-animation")):typeof define=="function"&&define.amd?define(["exports","react","prop-types","@progress/kendo-react-common","@progress/kendo-react-buttons","@progress/kendo-react-intl","@progress/kendo-react-inputs","@progress/kendo-react-dropdowns","@progress/kendo-svg-icons","react-dom","@progress/kendo-data-query","@progress/kendo-react-dateinputs","@progress/kendo-react-popup","@progress/kendo-react-animation"],X):(c=typeof globalThis!="undefined"?globalThis:c||self,X(c.KendoReactDatatools={},c.React,c.PropTypes,c.KendoReactCommon,c.KendoReactButtons,c.KendoReactIntl,c.KendoReactInputs,c.KendoReactDropdowns,c.KendoSvgIcons,c.ReactDOM,c.KendoDataQuery,c.KendoReactDateinputs,c.KendoReactPopup,c.KendoReactAnimation))})(this,function(c,X,p,f,k,L,V,H,N,je,Z,Ue,cn,un){"use strict";"use client";function Kt(e){const t=Object.create(null,{[Symbol.toStringTag]:{value:"Module"}});if(e){for(const r in e)if(r!=="default"){const n=Object.getOwnPropertyDescriptor(e,r);Object.defineProperty(t,r,n.get?n:{enumerable:!0,get:()=>e[r]})}}return t.default=e,Object.freeze(t)}const s=Kt(X),dn=Kt(je),Ee="pager.info",ve="pager.firstPage",Ce="pager.previousPage",be="pager.nextPage",xe="pager.lastPage",ye="pager.itemsPerPage",hn="pager.pageSelection",Y="pager.page",Ie="pager.of",Fe="pager.totalPages",pn="pager.pageLabel",Le="pager.ariaKeyshortcuts",Se="pager.ariaLabel",De="pager.pageSizeAriaLabel",Me="pager.mobileSelect",Ne="pager.moreButtonLabel",J="filter.eqOperator",Q="filter.notEqOperator",Oe="filter.isNullOperator",Ae="filter.isNotNullOperator",Bt="filter.isEmptyOperator",zt="filter.isNotEmptyOperator",Tt="filter.startsWithOperator",_t="filter.containsOperator",qt="filter.notContainsOperator",Pt="filter.endsWithOperator",Gt="filter.gteOperator",Ht="filter.gtOperator",Wt="filter.lteOperator",$t="filter.ltOperator",Vt="filter.isTrue",Yt="filter.isFalse",jt="filter.afterOrEqualOperator",Ut="filter.afterOperator",Xt="filter.beforeOperator",Zt="filter.beforeOrEqualOperator",Xe="filter.andLogic",Ze="filter.orLogic",ee="filter.addExpression",te="filter.addGroup",re="filter.close",Je="filter.groupAriaLabel",Qe="filter.expressionAriaLabel",et="filter.expressionDropdownAriaLabel",tt="filter.expressionOperatorDropdownAriaLabel",rt="filter.enumFilterDropdownAriaLabel",nt="filter.numericFilterAriaLabel",at="filter.textFilterAriaLabel",it="columnMenu.filterClearButton",st="columnMenu.filterSubmitButton",ot="columnMenu.filterTitle",lt="columnMenu.sortAscending",ct="columnMenu.sortDescending",we="columnMenu.filterEqOperator",ke="columnMenu.filterNotEqOperator",Re="columnMenu.filterIsNullOperator",Ke="columnMenu.filterIsNotNullOperator",Jt="columnMenu.filterIsEmptyOperator",Qt="columnMenu.filterIsNotEmptyOperator",er="columnMenu.filterStartsWithOperator",tr="columnMenu.filterContainsOperator",rr="columnMenu.filterNotContainsOperator",nr="columnMenu.filterEndsWithOperator",ar="columnMenu.filterGteOperator",ir="columnMenu.filterGtOperator",sr="columnMenu.filterLteOperator",or="columnMenu.filterLtOperator",lr="columnMenu.filterIsTrue",cr="columnMenu.filterAfterOrEqualOperator",ur="columnMenu.filterAfterOperator",dr="columnMenu.filterBeforeOperator",hr="columnMenu.filterBeforeOrEqualOperator",pr="columnMenu.filterAndLogic",gr="columnMenu.filterOrLogic",ut="sort.ariaLabel",dt="filter.ariaLabel",C={[ye]:"items per page",[hn]:"Select page",[Ee]:"{0} - {1} of {2} items",[ve]:"Go to the first page",[Ce]:"Go to the previous page",[be]:"Go to the next page",[xe]:"Go to the last page",[Y]:"Page",[Ie]:"of",[Fe]:"{0}",[pn]:"Page",[Le]:"Enter ArrowRight ArrowLeft",[Se]:"Pager",[De]:"Page size",[Me]:"Select",[Ne]:"More pages",[ut]:"Sortable",[dt]:"Filter",[J]:"Is equal to",[Q]:"Is not equal to",[Oe]:"Is null",[Ae]:"Is not null",[Bt]:"Is empty",[zt]:"Is not empty",[Tt]:"Starts with",[_t]:"Contains",[qt]:"Does not contain",[Pt]:"Ends with",[Gt]:"Is greater than or equal to",[Ht]:"Is greater than",[Wt]:"Is less than or equal to",[$t]:"Is less than",[Vt]:"Is true",[Yt]:"Is false",[jt]:"Is after or equal to",[Ut]:"Is after",[Xt]:"Is before",[Zt]:"Is before or equal to",[Xe]:"And",[Ze]:"Or",[ee]:"Add Expression",[te]:"Add Group",[re]:"Remove",[Je]:"Filter toolbar",[Qe]:"Filter expression row",[et]:"Filter dropdown",[tt]:"Filter operator dropdown",[rt]:"Select True/False",[nt]:"Enter number",[at]:"Enter text",[it]:"Clear",[st]:"Filter",[ot]:"Filter",[lt]:"Sort Ascending",[ct]:"Sort Descending",[we]:"Is equal to",[ke]:"Is not equal to",[Re]:"Is null",[Ke]:"Is not null",[Jt]:"Is empty",[Qt]:"Is not empty",[er]:"Starts with",[tr]:"Contains",[rr]:"Does not contain",[nr]:"Ends with",[ar]:"Is greater than or equal to",[ir]:"Is greater than",[sr]:"Is less than or equal to",[or]:"Is less than",[lr]:"Is true",[cr]:"Is after or equal to",[ur]:"Is after",[dr]:"Is before",[hr]:"Is before or equal to",[pr]:"And",[gr]:"Or"},fr="...";class gn extends s.Component{constructor(){super(...arguments),this.handlePageChange=(t,r)=>{t.preventDefault(),this.props.pageChange(r,t)},this.handleSelectPageChange=t=>{t.preventDefault(),this.props.pageChange(t.target.value,t)}}render(){const t=L.provideLocalizationService(this),r=this.props.messagesMap?this.props.messagesMap(Me):{messageKey:Me,defaultMessage:C[Me]},n=this.props.messagesMap?this.props.messagesMap(Y):{messageKey:Y,defaultMessage:C[Y]},a=this.props.messagesMap?this.props.messagesMap(Ne):{messageKey:Ne,defaultMessage:C[Ne]},i=t.toLanguageString(a.messageKey,a.defaultMessage),o=this.start>1&&this.renderDots(this.start-1,i),l=this.end<this.props.totalPages&&this.renderDots(this.end+1,i),u=this.start>1&&this.renderOptionDots(this.start-1),d=this.end<this.props.totalPages&&this.renderOptionDots(this.end+1),h=[];for(let g=this.start;g<=this.end;g++)h.push(g);const m=h.map(g=>s.createElement(k.Button,{className:f.classNames({"k-selected":this.props.currentPage===g}),key:g,fillMode:"flat",themeColor:"primary",size:this.props.size,rounded:null,role:"button","aria-label":t.toLanguageString(n.messageKey,n.defaultMessage)+" "+g,"aria-current":this.props.currentPage===g?!0:void 0,onClick:b=>this.handlePageChange(b,g)},g)),v=h.map(g=>s.createElement("option",{key:g},g));return s.createElement(s.Fragment,null,s.createElement("select",{style:{width:"5em",margin:"0px 1em",display:this.props.type==="dropdown"?"inline-flex":"none"},className:f.classNames("k-picker k-dropdown-list k-dropdown k-rounded-md",{[`k-picker-${f.kendoThemeMaps.sizeMap[this.props.size]||this.props.size}`]:this.props.size}),"aria-label":t.toLanguageString(r.messageKey,r.defaultMessage),value:this.props.currentPage,onChange:g=>this.handleSelectPageChange(g)},u,v,d),s.createElement("div",{className:"k-pager-numbers",style:{display:this.props.type==="numbers"?"":"none"}},o,m,l))}get end(){return Math.min(this.start+this.props.buttonCount-1,this.props.totalPages)}get start(){const t=this.props.currentPage,r=this.props.buttonCount;if(t>r){const n=t%r;return n===0?t-r+1:t-n+1}return 1}renderDots(t,r){return s.createElement(k.Button,{fillMode:"flat",themeColor:"primary",size:this.props.size,rounded:null,role:"button","aria-label":r,onClick:n=>this.handlePageChange(n,t)},fr)}renderOptionDots(t){return s.createElement("option",{value:t},fr)}}class mr extends s.Component{constructor(){super(...arguments),this.state={page:this.props.currentPage},this.handleOnChange=t=>{this.setState({page:t.target.value}),t.target.value&&this.props.pageChange(t.target.value,t)}}render(){const t=L.provideIntlService(this),r=L.provideLocalizationService(this),n=this.props.messagesMap?this.props.messagesMap(Y):{messageKey:Y,defaultMessage:C[Y]},a=this.props.messagesMap?this.props.messagesMap(Ie):{messageKey:Ie,defaultMessage:C[Ie]},i=this.props.messagesMap?this.props.messagesMap(Fe):{messageKey:Fe,defaultMessage:C[Fe]};return s.createElement(s.Fragment,null,s.createElement("span",{className:"k-pager-input"},s.createElement("span",null,r.toLanguageString(n.messageKey,n.defaultMessage)),s.createElement(V.NumericTextBox,{value:this.props.currentPage!==void 0?this.props.currentPage:this.state.page,onChange:this.handleOnChange,min:1,spinners:!1}),s.createElement("span",null,`${r.toLanguageString(a.messageKey,a.defaultMessage)} ${t.format(r.toLanguageString(i.messageKey,i.defaultMessage),[this.props.totalPages])}`)))}}L.registerForLocalization(mr);class Er extends s.Component{constructor(){super(...arguments),this.pageSizeChange=t=>{this.props.pageChange&&this.props.pageChange({skip:0,take:parseInt(t.target.value,10)},t)}}render(){const{value:t,pageSizes:r,pageSize:n,messagesMap:a}=this.props,i=r.slice();t===void 0&&i.filter(u=>u===n).length===0&&i.unshift(n);const o=a?a(ye):{messageKey:ye,defaultMessage:C[ye]},l=a?a(De):{messageKey:De,defaultMessage:C[De]};return s.createElement("span",{className:"k-pager-sizes"},s.createElement(H.DropDownList,{value:t!==void 0?t:n,data:i,onChange:this.pageSizeChange,ariaLabel:L.provideLocalizationService(this).toLanguageString(l.messageKey,l.defaultMessage),size:this.props.size}),s.createElement("span",null,L.provideLocalizationService(this).toLanguageString(o.messageKey,o.defaultMessage)))}}L.registerForLocalization(Er);const ht={name:"@progress/kendo-react-data-tools",productName:"KendoReact",productCodes:["KENDOUIREACT","KENDOUICOMPLETE"],publishDate:0,version:"",licensingDocsUrl:"https://www.telerik.com/kendo-react-ui/components/my-license/"},vr=600,fn=768;class ne extends s.Component{constructor(t){super(t),this._element=null,this.onPageChange=(r,n)=>{const a={target:this,syntheticEvent:n.syntheticEvent,nativeEvent:n.nativeEvent,targetEvent:n,...r};this.props.onPageChange&&this.props.onPageChange.call(void 0,a)},this.changePage=(r,n)=>{this.props.onPageChange&&r>0&&r<=this.totalPages&&this.props.onPageChange({target:this,skip:(r-1)*this.props.take,take:this.props.take,syntheticEvent:n,nativeEvent:n.nativeEvent,targetEvent:n})},this.onWindowResize=()=>{const r=this.element;if(!r||!this.props.responsive)return;const n=r.offsetWidth;n<vr?this.setState({showPagerSizes:!1}):n>=vr&&n<fn?this.setState({showPagerInfo:!1,showPagerSizes:!0}):this.setState({showPagerInfo:!0,showPagerSizes:!0})},f.validatePackage(ht),this.state={showPagerSizes:!0,showPagerInfo:!0}}get isRtl(){return this.props.dir==="rtl"}get element(){return this._element}componentDidMount(){window.addEventListener("resize",this.onWindowResize),this.onWindowResize()}componentWillUnmount(){window.removeEventListener("resize",this.onWindowResize)}render(){const{showPagerSizes:t,showPagerInfo:r}=this.state,{skip:n,take:a,total:i,pageSizes:o,size:l,responsive:u,messagesMap:d,pageSizeValue:h}=this.props,m=L.provideLocalizationService(this),v=L.provideIntlService(this),g=Math.floor(n/a)+1,b=this.props.type==="numeric"?s.createElement(gn,{type:u&&!t?"dropdown":"numbers",buttonCount:this.props.buttonCount||0,totalPages:this.totalPages,currentPage:g,pageChange:this.changePage,messagesMap:this.props.messagesMap,size:this.props.size}):s.createElement(mr,{buttonCount:this.props.buttonCount||0,totalPages:this.totalPages,currentPage:g,pageChange:this.changePage,messagesMap:d,size:this.props.size}),I=d?d(ve):{messageKey:ve,defaultMessage:C[ve]},x=d?d(Ce):{messageKey:Ce,defaultMessage:C[Ce]},E=d?d(be):{messageKey:be,defaultMessage:C[be]},S=d?d(xe):{messageKey:xe,defaultMessage:C[xe]},A=d?d(Ee):{messageKey:Ee,defaultMessage:C[Ee]},D=d?d(Le):{messageKey:Le,defaultMessage:C[Le]},y=d?d(Se):{messageKey:Se,defaultMessage:C[Se]};let F,M,B,q;this.props.previousNext&&(F=this.renderButton(1,"k-pager-nav k-pager-first"+(g===1?" k-disabled":""),m.toLanguageString(I.messageKey,I.defaultMessage),this.isRtl?"caret-alt-to-right":"caret-alt-to-left",this.isRtl?N.caretAltToRightIcon:N.caretAltToLeftIcon,g===1?!0:void 0),M=this.renderButton(g-1,"k-pager-nav"+(g===1?" k-disabled":""),m.toLanguageString(x.messageKey,x.defaultMessage),this.isRtl?"caret-alt-right":"caret-alt-left",this.isRtl?N.caretAltRightIcon:N.caretAltLeftIcon,g===1?!0:void 0),B=this.renderButton(g+1,"k-pager-nav"+(g>=this.totalPages?" k-disabled":""),m.toLanguageString(E.messageKey,E.defaultMessage),this.isRtl?"caret-alt-left":"caret-alt-right",this.isRtl?N.caretAltLeftIcon:N.caretAltRightIcon,g>=this.totalPages?!0:void 0),q=this.renderButton(this.totalPages,"k-pager-nav k-pager-last"+(g>=this.totalPages?" k-disabled":""),m.toLanguageString(S.messageKey,S.defaultMessage),this.isRtl?"caret-alt-to-left":"caret-alt-to-right",this.isRtl?N.caretAltToLeftIcon:N.caretAltToRightIcon,g>=this.totalPages?!0:void 0));const P=o&&s.createElement(Er,{pageChange:this.onPageChange,pageSize:a,pageSizes:o,value:h,messagesMap:d,size:this.props.size}),W=this.props.info&&s.createElement("span",{className:"k-pager-info"},v.format(m.toLanguageString(A.messageKey,A.defaultMessage),[Math.min(n+1,i),Math.min(n+a,i),i]));return s.createElement("div",{className:f.classNames("k-pager",{[`k-pager-${f.kendoThemeMaps.sizeMap[l]||l}`]:l},this.props.className),style:this.props.style,role:"application","aria-roledescription":"pager",dir:this.props.dir,"aria-keyshortcuts":m.toLanguageString(D.messageKey,D.defaultMessage),"aria-label":m.toLanguageString(y.messageKey,y.defaultMessage),ref:R=>this._element=R},s.createElement("div",{className:f.classNames("k-pager-numbers-wrap")},F,M,b,B,q),u?t&&P:P,u?r&&W:W)}renderButton(t,r,n,a,i,o){return s.createElement(k.Button,{fillMode:"flat",themeColor:"base",size:this.props.size,rounded:null,className:r,icon:a,svgIcon:i,title:n,role:"button","aria-disabled":o,onClick:l=>{l.preventDefault(),this.changePage(t,l)}})}get totalPages(){return Math.ceil((this.props.total||0)/this.props.take)}}ne.propTypes={className:p.string,style:p.object,total:p.number.isRequired,skip:p.number.isRequired,take:p.number.isRequired,buttonCount:p.number,info:p.bool,type:p.oneOf(["numeric","input"]),pageSizes:p.arrayOf(p.oneOfType([p.string,p.number])),previousNext:p.bool,onPageChange:p.func,messagesMap:p.func,size:p.oneOf([null,"small","medium","large"]),dir:p.string},ne.defaultProps={buttonCount:10,info:!0,type:"numeric",size:"medium"},L.registerForIntl(ne),L.registerForLocalization(ne);const ae=e=>class extends s.Component{constructor(){super(...arguments),this.filterChange=n=>{this.props.onFilterChange&&this.props.onFilterChange(n)},this.inputChange=n=>{const a=n.target.value,{filter:i=[],field:o=""}=this.props,l=this.findCellFilter(),u=l?i.map(d=>d.field===o?{...l,value:a}:d):[...i,{...e.emptyFilter,value:a,field:o}];this.filterChange({filter:u,field:o,syntheticEvent:n.syntheticEvent})},this.operatorChange=n=>{const{operator:a}=n.target.value,{filter:i=[],field:o=""}=this.props,l=this.findCellFilter(),u=l?i.map(d=>d.field===o?{...l,operator:a}:d):[...i,{...e.emptyFilter,field:o,operator:a}];this.filterChange({filter:u,field:o,syntheticEvent:n.syntheticEvent})},this.clearButtonClick=n=>{const{filter:a=[],field:i=""}=this.props;this.filterChange({filter:a.filter(o=>o.field!==i),field:i,syntheticEvent:n})},this.findCellFilter=()=>{const{filter:n=[],field:a}=this.props;return n.find(i=>i.field===a)}}render(){const{clearButtonTitle:n="",operators:a=[]}=this.props,i=this.findCellFilter()||{...e.emptyFilter,operator:""},{operator:o,value:l}=i,u={ariaLabel:"filter",value:a.find(d=>d.operator===o)||null,onChange:this.operatorChange,className:"k-dropdown-operator",iconClassName:"k-i-filter",svgIcon:N.filterIcon,data:a,textField:"text",popupSettings:{width:""},components:this.props.components};return s.createElement("div",{className:"k-filtercell"},s.createElement("span",null,e.inputComponent({value:l,onChange:this.inputChange,components:this.props.components,ariaLabel:this.props.ariaLabel,min:this.props.min,max:this.props.max}),s.createElement("div",{className:"k-filtercell-operator"},e.operatorComponent(u,this.props)," ",s.createElement(k.Button,{className:f.classNames({["k-clear-button-visible"]:!(l===null||l==="")||o}),title:n,type:"button",onClick:this.clearButtonClick,icon:"filter-clear",svgIcon:N.filterClearIcon,disabled:!(!(l===null||l==="")||o)}))))}},Cr="eq",mn={emptyFilter:{operator:Cr,value:""},inputComponent:e=>null,operatorComponent:function(e,t){const{filter:r=[],field:n}=t,a=r.find(i=>i.field===n);return s.createElement(H.DropDownList,{...e,value:e.data.find(i=>i.operator===(a?a.value:"")),onChange:i=>{if(!t.onFilterChange)return;const o=i.target.value.operator;if(o===""){a&&t.onFilterChange.call(void 0,{filter:r.filter(u=>u.field!==a.field),field:n,syntheticEvent:i.syntheticEvent});return}let l=a?r.map(u=>u.field===n?{...a,value:o}:u):[...r,{value:o,field:n,operator:Cr}];t.onFilterChange.call(void 0,{filter:l,field:n,syntheticEvent:i.syntheticEvent})}})}};class En extends ae(mn){}const vn={inputComponent:e=>s.createElement(Ue.DatePicker,{...e}),operatorComponent:e=>s.createElement(H.DropDownList,{...e}),emptyFilter:{operator:"eq",value:null}};class Cn extends ae(vn){}const bn={inputComponent:e=>s.createElement(V.NumericTextBox,{...e}),operatorComponent:e=>s.createElement(H.DropDownList,{...e}),emptyFilter:{operator:"eq",value:null}};class xn extends ae(bn){}const yn={inputComponent:e=>s.createElement(V.Input,{...e}),operatorComponent:e=>s.createElement(H.DropDownList,{...e}),emptyFilter:{operator:"contains",value:""}};class In extends ae(yn){}const br={filterable:!0,editable:!0,sortable:!0,resizable:!0,reorderable:!0,groupable:!0},j="data-keyboardnavlevel",pt="data-keyboardnavscope",gt="data-keyboardnavheader",ft="data-keyboardnavbody",ie="data-keyboardnavid",Fn="data-keyboardnavzone",xr="_filter",yr=["input:not([disabled]):not([type=hidden])","select:not([disabled])","textarea:not([disabled])","button:not([disabled])","a[href]","area[href]","summary","iframe","object","embed","audio[controls]","video[controls]","[contenteditable]"],Be=[...yr,"[tabindex]"],Ir=[...yr,"[tabindex]"].map(e=>e+':not([tabindex="-1"])'),Ln={[pt]:!0},Fr={[gt]:!0},Sn={[ft]:!0},mt=s.createContext(void 0);mt.displayName="KendoReactTableKeyboardNavigationContext";const Lr=(e,t)=>{const r=s.useContext(mt);return!r||!e||t===!1?{}:{tabIndex:r&&r.activeId&&r.activeId===e?0:-1,[j]:r.level,[ie]:e}},ze=e=>{const{ariaSort:t,colSpan:r,rowSpan:n,className:a,style:i,columnId:o,onKeyDown:l,navigatable:u,ariaColumnIndex:d,ariaLabel:h,role:m,ariaSelected:v}=e,g=Lr(o,u);return s.createElement("th",{"aria-sort":t,"aria-label":h,"aria-colindex":d,"aria-selected":v,colSpan:r,rowSpan:n,className:a,style:i,onKeyDown:l,role:m,...g},e.children)};ze.displayName="KendoReactHeaderThElement";const Sr=(e,t,r="cell")=>`${t}_${e}_${r}`,Dn=e=>{if(e)return parseInt(e.getAttribute(j)||"",10)},Et=e=>{if(!e)return;const t=e.getAttribute(ie);return t||void 0},vt=e=>e?!!e.getAttribute(ie):!1,Mn=(e,t={level:0})=>e.querySelector(`[${j}='${t.level}']`),Nn=e=>e.parentElement&&e.parentElement.closest(`[${j}]`),On=(e,t)=>e.querySelector(`[${ie}='${t}']`),An=e=>e.parentElement&&e.parentElement.closest(`[${pt}]`),Dr=e=>e.querySelector(`[${gt}]`),Mr=e=>e.querySelector(`[${ft}]`),wn=(e,t={focusable:!1})=>{let r=t.focusable?Be:Ir;return Array.from(e.querySelectorAll(r.join(",")))},kn=(e,t={level:0})=>{if(!e)return[];let r=Be.map(n=>n+`[${j}='${t.level}']`).join(",");return Array.from(e.querySelectorAll(r))},Rn=(e={level:0})=>{let t=Be.map(r=>r+`[${j}='${e.level}']`).join(",");return r=>r.matches(t)},Kn=e=>{const{elementForFocus:t,event:r,contextStateRef:n,prevElement:a}=e;n.current&&t&&t.focus&&(r.preventDefault(),t.focus(),vt(t)&&(t.setAttribute("tabIndex","0"),n.current.activeId=Et(t)),a&&vt(a)&&a.setAttribute("tabIndex","-1"))},Bn=e=>e.current?e.current.idPrefix:"",Nr=(e,t,r,n,a)=>{if(!r)return[];let i=e+(a?-1:1);for(;i>=0&&i<n.length;){const o=n[i][t];if(o!==r)return[o,[i,t]];i=i+(a?-1:1)}return[]},Or=(e,t,r,n,a)=>{if(!r)return[];let i=t+(a?-1:1);for(;i>=0&&i<n[e].length;){const o=n[e][i];if(o!==r)return[o,[e,i]];i=i+(a?-1:1)}return[]},Ct=(e,t)=>{if(t){for(let r=0;r<e.length;r++)for(let n=0;n<e[r].length;n++)if(e[r][n]===t)return[r,n]}},zn=e=>e.current?e.current.navigationMatrix.length:0,Ar=e=>e?`${e}${xr}`:"",O={generateNavigatableId:Sr,getNavigatableId:Et,getNavigatableLevel:Dn,getNavigatableElement:Mn,getClosestNavigatableElement:Nn,getActiveElement:On,getClosestScope:An,getHeaderElement:Dr,getBodyElement:Mr,getFocusableElements:wn,getNavigatableElements:kn,filterNavigatableElements:Rn,focusElement:Kn,getIdPrefix:Bn,isNavigatable:vt,findNextIdByRowIndex:Nr,findNextIdByCellIndex:Or,findId:Ct,getNextNavigationIndex:zn,getFilterColumnId:Ar},wr="k-table-row k-filter-row",Tn=(e,t,r)=>{let n=`${r?"k-grid-header-sticky":""}`;return e.some(a=>a.field===t)&&(n+=" k-sorted"),n},_n=function(e){const{columns:t,filter:r,filterChange:n,sort:a=[],ariaRowIndex:i}=e,o=L.useLocalization();return s.createElement("tr",{className:wr,"aria-rowindex":i,role:"row"},t.map((l,u)=>{const d=l.locked!==void 0?{left:l.left,right:l.right,borderRightWidth:l.rightBorder?"1px":""}:{},h=l.filterCell||l.filter;return s.createElement(ze,{columnId:Ar(l.id),navigatable:l.navigatable,style:d,key:u,ariaColumnIndex:l.ariaColumnIndex,ariaLabel:h?o.toLanguageString(dt,C[dt]):void 0,className:f.classNames("k-table-th k-header",Tn(a,l.field,l.locked))},h&&s.createElement(h,{field:l.field,filter:r,onFilterChange:n}))}))};function kr(e,t){const r=e[t].depth;let n=null;for(let a=t+1;a<e.length;a++)if(e[a].depth===r){n=e[a];break}return n}const bt=e=>{let t=e.width?parseFloat(e.width.toString()):0;return!t&&e.children&&e.children.length&&(t=e.children.reduce((r,n)=>bt(n)+r,0)),t};function qn(e){const t=[[]];let r=0;for(let i=e.length-1;i>=0;i--)r=Math.max(r,e[i].depth),e[i].colSpan=e[i].colSpan||1,e[i].parentIndex!==-1&&(e[e[i].parentIndex].colSpan=(e[e[i].parentIndex].colSpan||0)+e[i].colSpan);const n=[];let a=1;return e.forEach((i,o)=>{t[i.depth]=t[i.depth]||[];let l=!1;t[i.depth].length===0&&(a<=1?a=1+(i.children.length>0?0:r-i.depth):(a--,l=!0)),i.rowSpan=1+(i.children.length>0?0:r-i.depth),i.kFirst=l,i.index=t[i.depth].length,t[i.depth].push(o),i.ariaColumnIndex=n[i.depth]?n[i.depth]+1:1;for(let u=i.depth;u<i.depth+i.rowSpan;u++)n[u]=(n[u]||0)+i.colSpan}),Rr(t,e),Kr(t,e),t}function Rr(e,t,r){let n=new Array(e.length).fill(0),a=0;t.forEach(i=>{if(i.locked&&(!i.left||r))if(i.left=n[i.depth],a=bt(i),i.children.length===0)for(let o=i.depth;o<n.length;o++)n[o]+=a;else n[i.depth]+=a})}function Kr(e,t,r){let n=0,a=new Array(e.length).fill(0);for(let i=t.length-1;i>=0;i--){const o=t[i];if(o.locked&&(!o.right||r)){if(o.right=a[o.depth],n=bt(o),o.children.length===0)for(let u=o.depth;u<a.length;u++)a[u]+=n;else a[o.depth]+=n;const l=kr(t,i);o.rightBorder=!(l&&l.locked)}}}function Br(e,t,r=0){let n=[];if(!e||!e.length)return[];e.forEach(i=>{const o=Br(i.children||[],t,r+1);n.push(Object.assign({},{depth:r},br,i,{id:i.id?i.id:Sr(`${t.prevId++}`,t.idPrefix,"column"),declarationIndex:n.length,children:o,rowSpan:0,colSpan:0,isAccessible:!0}))});const a=(i,o)=>i.orderIndex===o.orderIndex?i.declarationIndex-o.declarationIndex:(i.orderIndex||0)-(o.orderIndex||0);if(n.sort(a),r===0){let i=[];const o=(l,u)=>l.forEach(d=>{d.parentIndex=u,o(d.children,i.push(d)-1)});return o(n,-1),i}return n}function zr(e){return!!(e&&getComputedStyle(e).direction==="rtl")}function xt(e,t){if(!t||!e||!e.originalEvent)return-1;const r={x:e.clientX,y:e.originalEvent.clientY};let n=t.ownerDocument?t.ownerDocument.elementFromPoint(r.x,r.y):null;for(;n&&n.parentElement!==t;)n=n.parentElement;if(!n&&t.matches("tr")){const i=o=>{const l=o.getBoundingClientRect();return r.x>l.left&&r.x<l.left+l.width&&r.y>l.top&&r.y<l.top+l.height};n=Array.from(t.children).find(i)||null}const a=t.children;for(let i=0;i<a.length;i++)if(a[i]===n)return i;return-1}class Pn extends s.Component{constructor(){super(...arguments),this.element=null}componentDidMount(){const{columnResize:t}=this.props;t&&t.resizable&&t.setIsRtl(zr(this.element))}render(){return s.createElement("thead",{className:"k-table-thead k-grid-header",role:"presentation",ref:t=>this.element=t,...Fr},this.props.headerRow,this.props.filterRow)}}function Tr(e){const t=e.onClick?{onClick:e.onClick}:{},r=s.createElement("span",{className:"k-link",...t},s.createElement("span",{className:"k-column-title"},e.title||e.field||" "),e.children);return s.createElement(s.Fragment,null,e.render?e.render.call(void 0,r,e):r)}const _r=(...e)=>Object.assign({allowUnsort:!0,mode:"single"},...e);class qr extends s.Component{constructor(){super(...arguments),this.draggable=null,this.isDragged=!1,this.onDrag=t=>{this.isDragged=!0;const r=this.draggable&&this.draggable.element;r&&this.props.resize(t.event,r,!1)},this.onRelease=t=>{if(!this.isDragged)return;const r=this.draggable&&this.draggable.element;r&&this.props.resize(t.event,r,!0),this.isDragged=!1},this.onDoubleClick=t=>{if(this.isDragged)return;const r=this.draggable&&this.draggable.element;r&&this.props.autofit&&this.props.autofit(t,r)}}render(){return s.createElement(f.Draggable,{onPress:t=>{t.event.originalEvent.stopPropagation()},onDrag:this.onDrag,onRelease:this.onRelease,ref:t=>{this.draggable=t}},s.createElement("span",{className:"k-column-resizer",style:{touchAction:"none"},draggable:!1,onDoubleClick:this.onDoubleClick}))}}class Gn extends s.PureComponent{constructor(){super(...arguments),this.draggable=null,this.onPress=t=>{const r=this.draggable&&this.draggable.element;r&&this.props.pressHandler&&this.props.pressHandler(t.event,r)},this.onDrag=t=>{const r=this.draggable&&this.draggable.element;r&&this.props.dragHandler&&this.props.dragHandler(t.event,r)},this.onRelease=t=>{this.draggable&&this.draggable.element&&this.props.releaseHandler&&this.props.releaseHandler(t.event)}}render(){return s.createElement(f.Draggable,{onPress:this.onPress,onDrag:this.onDrag,onRelease:this.onRelease,ref:t=>{this.draggable=t}},s.createElement("tr",{className:"k-table-row","aria-rowindex":this.props.ariaRowIndex,role:"row"},this.props.children))}}const Hn={true:{asc:"desc",desc:"","":"asc"},false:{asc:"desc",desc:"asc","":"asc"}},Wn={none:"none",asc:"ascending",desc:"descending"};class Pr extends s.Component{constructor(){super(...arguments),this.cellClick=(t,r)=>{if(t.preventDefault(),!this.props.sortChange)return;const{allowUnsort:n,mode:a}=_r(this.props.sortable||!1,r.sortable||!1),i=(this.props.sort||[]).filter(u=>u.field===r.field)[0],o=Hn[n][i&&i.dir||""],l=a==="single"?[]:(this.props.sort||[]).filter(u=>u.field!==r.field);o!==""&&r.field&&l.push({field:r.field,dir:o}),this.props.sortChange(t,l,r.field)},this.cellKeyDown=(t,r)=>{t.isDefaultPrevented()||t.keyCode===f.Keys.enter&&this.cellClick(t,r)},this.cells=t=>t.map((r,n)=>{const a=this.props.columns[r],{columnResize:i}=this.props,o=i&&i.resizable&&a.resizable,l=this.props.sortable&&a.sortable,u=this.props.sort?this.props.sort.findIndex(E=>E.field===a.field):-1,d=u>=0&&this.props.sort[u].dir||"none",h={sort:this.props.sort,onSortChange:this.props.sortChange,filter:this.props.columnMenuFilter,onFilterChange:this.props.columnMenuFilterChange,field:a.field},m={field:a.field,onClick:l&&(E=>this.cellClick(E,a))||void 0,selectionChange:this.props.selectionChange,title:a.title,selectionValue:a.headerSelectionValue,render:this.props.cellRender,children:this.sortIcon(u),sort:this.props.sort,sortable:this.props.sortable,sortChange:this.props.sortChange,filterChange:this.props.filterChange,columns:this.props.columns,columnMenuWrapperProps:h},v=a.columnMenu||this.props.columnMenu,g=f.classNames("k-table-th",{"k-first":a.kFirst,"k-filterable":!!v,"k-header":!0,"k-grid-header-sticky":a.locked,"k-sorted":this.props.sort&&this.props.sort.some(E=>E.field===a.field)},a.headerClassName),b=a.locked!==void 0?{left:a.left,right:a.right,borderRightWidth:a.rightBorder?"1px":""}:{},I=L.provideLocalizationService(this).toLanguageString(ut,C[ut]);let x=a.isAccessible?{ariaSort:l?Wn[d]:void 0,role:"columnheader",ariaColumnIndex:a.ariaColumnIndex,ariaSelected:!1,ariaDescription:l?I:""}:{role:"presentation"};return s.createElement(ze,{key:n,colSpan:a.colSpan,rowSpan:a.rowSpan,className:g,style:b,columnId:a.id,navigatable:a.navigatable,onKeyDown:l&&(E=>this.cellKeyDown(E,a))||void 0,...x},a.headerCell&&s.createElement(a.headerCell,{...m}),!a.headerCell&&s.createElement("span",{className:"k-cell-inner"},s.createElement(Tr,{...m}),v&&s.createElement(v,{...h})),i&&o&&s.createElement(qr,{key:"ColumnResizer",resize:(E,S,A)=>i.dragHandler(E,a,S,A)}))})}sortIcon(t){if(!this.props.sort||t<0)return null;const r=this.props.sort[t].dir;return r?[s.createElement(f.IconWrap,{key:1,name:`sort-${r}-small`,icon:r==="asc"?N.sortAscSmallIcon:N.sortDescSmallIcon}),this.props.sort.length>1&&s.createElement("span",{key:2,className:"k-sort-order"},t+1)]:null}render(){return this.props.columnsMap.map((t,r)=>this.props.pressHandler&&s.createElement(Gn,{key:r,pressHandler:this.props.pressHandler,dragHandler:this.props.dragHandler,releaseHandler:this.props.releaseHandler,ariaRowIndex:r+1},this.cells(t))||s.createElement("tr",{className:"k-table-row","aria-rowindex":r+1,role:"row"},this.cells(t)))}}L.registerForLocalization(Pr);function $n(e){const t=[s.createElement("input",{key:0,checked:e.selectionValue,id:e.inputId,type:"checkbox",className:"k-checkbox k-checkbox-md k-rounded-md",onChange:r=>e.selectionChange({field:e.field,syntheticEvent:r})}),s.createElement("label",{key:1,className:"k-checkbox-label",htmlFor:e.inputId})];return s.createElement(s.Fragment,null,e.render?e.render.call(void 0,t,e):t)}function Vn(e){const{enabled:t,columns:r=[],tableViewPortWidth:n,scrollLeft:a}=e,i=r.map(()=>1),o=r.map(()=>!1);if(!t)return{colSpans:i,hiddenColumns:o};const l=r.map(E=>parseFloat((E.width||"").toString())||10);let u=0;for(let E=0;E<r.length;E++){if(r[E].locked)continue;const S=E<l.length-1?l[E+1]:0;if(u+l[E]+S<a)o[E]=!0,u+=l[E];else break}const d=l.reduce((E,S)=>E+S,0);u=0;for(let E=r.length-1;E>=0;E--)if(!r[E].locked)if(u+2*l[E]<d-n-a)o[E]=!0,u+=l[E];else break;const h=[...o],m=E=>E;let v=h.lastIndexOf(!1),g=h.some(m),b=h.every(m),I,x;for(;g&&h.length&&(v!==-1||b);){for(v<h.length-1&&(I=b?h.length:h.length-v-1,x=h.length-I,x===0&&(x=I-1),o[x]=!1,i[x]=I,h.splice(v+1,I));h.length&&!h[h.length-1];)h.pop();v=h.lastIndexOf(!1),g=h.some(m),b=h.every(m)}return{colSpans:i,hiddenColumns:o}}class Yn{constructor(t){this.columns=[],this.resizable=!1,this.isRtl=!1,this.setIsRtl=r=>{this.isRtl=r},this.onResize=t,this.dragHandler=this.dragHandler.bind(this)}dragHandler(t,r,n,a){const i=t.originalEvent;a||(i.preventDefault(),i.stopPropagation(),i.stopImmediatePropagation());const o=n.parentElement;if(!o||!o.parentElement)return;const l=o.clientWidth;let u;if(this.isRtl?(u=n.getBoundingClientRect().right-n.offsetWidth/2-t.clientX,u+=l):u=l+t.clientX-n.getBoundingClientRect().left-n.offsetWidth/2,!a&&Math.abs(u-l)<1)return;this.setWidths(r,Math.floor(u)/l);const d=this.columns.filter(h=>!h.children.length).indexOf(r);this.onResize(d,l,u,i,a)}setWidths(t,r){const n=this.columns.indexOf(t),a=[];let i=t.children.length;for(let o=n+1;i>0&&o<this.columns.length;o++,i--){const l=this.columns[o];l.children.length?i+=l.children.length:a.push(l)}a.length===0&&a.push(t),a.forEach(o=>{let l=o.width?parseFloat(o.width.toString())*r:0;const u=o.minResizableWidth===void 0?10:o.minResizableWidth;l<u&&(l=u),o.width=Math.floor(l)}),this.updateColElements(a)}updateColElements(t){const r=this.columns.filter(a=>!a.children.length);let n=1e-10;for(let a=0;a<t.length;a++){const i=r.indexOf(t[a]),o=parseFloat((t[a].width||0).toString());n+=o-Math.floor(o);const l=Math.floor(o)+Math.floor(n);n-=Math.floor(n),this.setColWidth(this.colGroupMain&&this.colGroupMain.children[i],l),this.setColWidth(this.colGroupHeader&&this.colGroupHeader.children[i],l),this.setColWidth(this.colGroupFooter&&this.colGroupFooter.children[i],l)}}setColWidth(t,r){t&&(t.style.width=r+"px")}}class jn{constructor(t,r,n){this.columns=[],this.reorderable=!1,this.groupable=!1,this.startColumn=-1,this.startGroup=-1,this.currentColumn=-1,this.currentGroup=-1,this.dropElementClue=null,this.dragElementClue=null,this.groupPanelDivElement=null,this.refGroupPanelDiv=a=>{this.groupPanelDivElement=a},this.refDropElementClue=a=>{this.dropElementClue=a},this.refDragElementClue=a=>{this.dragElementClue=a},this.pressHandler=(a,i)=>{const o=this.getColumnIndex(a,i);if(this.startGroup=this.getGroupIndex(a),o>=0){const l=this.columns[o];(l.reorderable&&this.reorderable||l.groupable&&this.groupable)&&(this.startColumn=o)}},this.dragHandler=(a,i)=>{if(a.isTouch||a.originalEvent.preventDefault(),a.originalEvent.stopPropagation(),this.startColumn===-1&&this.startGroup===-1)return;this.currentColumn=this.getColumnIndex(a,i),this.currentGroup=this.getGroupIndex(a),this.groupPanelDivElement&&this.startGroup>=0&&(this.currentGroup=Math.min(this.currentGroup,this.groupPanelDivElement.children.length-2));const o=!this.isValid();o&&(this.currentColumn=-1,this.currentGroup=-1);const l=this.currentColumn>=0?i.children[this.columns[this.currentColumn].index]:this.groupPanelDivElement&&this.groupPanelDivElement.children[this.currentGroup];this.updateDragElementClue(a,i,l,o),this.updateDropElementClue(a,i,l,o)},this.releaseHandler=a=>{const i=this.startColumn,o=this.currentColumn,l=this.startGroup,u=this.currentGroup;this.dropElementClue&&this.dropElementClue.setState({visible:!1}),this.dragElementClue&&this.dragElementClue.setState({visible:!1});const d=this.isValid();this.startColumn=this.startGroup=this.currentColumn=this.currentGroup=-1,d&&(i>=0&&o>=0?this.columnReorder(i,o,a.originalEvent):l>=0&&u>=0?this.groupReorder(l,u,a.originalEvent):i>=0&&u>=0&&this.columnToGroup(i,u,a.originalEvent))},this.columnReorder=t,this.groupReorder=r,this.columnToGroup=n}getColumnIndex(t,r){if(!r||r.parentElement===this.groupPanelDivElement)return-1;const n=xt(t,r);if(n===-1)return-1;for(let a=0;a<r.parentNode.children.length;a++)if(r.parentNode.children[a]===r)return this.columns.findIndex(i=>i.index===n&&i.depth===a);return-1}getGroupIndex(t){return xt(t,this.groupPanelDivElement)}isValid(){return this.startGroup>=0?this.currentGroup>=0&&this.currentGroup!==this.startGroup:this.startColumn===-1?!1:this.currentGroup>=0?this.columns[this.startColumn].groupable===!0&&this.groupable===!0:this.reorderable===!0&&this.currentColumn>=0&&this.currentColumn!==this.startColumn&&this.columns[this.startColumn].reorderable===!0&&this.columns[this.currentColumn].parentIndex===this.columns[this.startColumn].parentIndex}updateDragElementClue(t,r,n,a){if(!this.dragElementClue)return;const i=this.startColumn>=0?r.children[this.columns[this.startColumn].index].innerText:r.innerText;this.dragElementClue.setState({visible:!0,top:t.pageY+10,left:t.pageX,innerText:i,status:a||!n?"k-i-cancel":"k-i-plus"})}updateDropElementClue(t,r,n,a){if(!this.dropElementClue)return;if(a||!n){this.dropElementClue.setState({visible:!1});return}const i=n.getBoundingClientRect();let o=i.left+t.pageX-t.clientX-6;(this.currentColumn>this.startColumn||this.currentGroup>this.startGroup&&this.startGroup!==-1)&&(o+=i.width);const l=i.top+t.pageY-t.clientY;this.dropElementClue.setState({visible:!0,top:l,left:o,height:this.currentColumn>=0?r.clientHeight:i.height})}}class Un extends s.PureComponent{constructor(t){super(t),this.elementRef=s.createRef(),this.state={visible:!1,top:0,left:0,innerText:"",status:"k-i-cancel"},this.hiddenElementRef=s.createRef()}get element(){return this.elementRef.current}render(){const t=this.hiddenElementRef.current,{status:r}=this.state,n=this.state.visible&&f.canUseDOM&&je.createPortal(s.createElement("div",{ref:this.elementRef,className:"k-header k-drag-clue",style:{display:"block",position:"absolute",zIndex:2e4,padding:"8px 12px",top:this.state.top+"px",left:this.state.left+"px"}},s.createElement(f.IconWrap,{className:"k-drag-status",name:r,icon:r==="k-i-cancel"?N.cancelIcon:N.plusIcon}),this.state.innerText),t&&t.ownerDocument?t.ownerDocument.body:document.body);return s.createElement(s.Fragment,null,n,s.createElement("div",{ref:this.hiddenElementRef,style:{display:"none"}}))}}class Xn extends s.PureComponent{constructor(t){super(t),this.state={height:0,visible:!1,left:0,top:0},this.hiddenElementRef=s.createRef()}render(){const t=this.hiddenElementRef.current,r=this.state.visible&&f.canUseDOM&&je.createPortal(s.createElement("div",{className:"k-grouping-dropclue",style:{zIndex:1e4,display:"block",top:this.state.top+"px",left:this.state.left+"px",height:this.state.height+"px"}}),t&&t.ownerDocument?t.ownerDocument.body:document.body);return s.createElement(s.Fragment,null,r,s.createElement("div",{ref:this.hiddenElementRef,style:{display:"none"}}))}}class yt extends s.Component{constructor(){super(...arguments),this.onChange=t=>{this.props.onFilterChange.call(void 0,{nextFilter:{...this.props.filter,value:t.value}})}}render(){const t=L.provideLocalizationService(this),{ariaLabel:r=t.toLanguageString(at,C[at])}=this.props;return s.createElement(V.TextBox,{value:this.props.filter.value||"",onChange:this.onChange,"aria-label":r})}}yt.propTypes={filter:p.object.isRequired,onFilterChange:p.func.isRequired,ariaLabel:p.string},L.registerForLocalization(yt);class It extends s.Component{constructor(){super(...arguments),this.onChange=t=>{this.props.onFilterChange.call(void 0,{nextFilter:{...this.props.filter,value:t.value}})}}render(){const t=L.provideLocalizationService(this),{min:r,max:n,filter:a,ariaLabel:i=t.toLanguageString(nt,C[nt])}=this.props;return s.createElement(V.NumericTextBox,{value:typeof a.value=="number"?a.value:null,onChange:this.onChange,ariaLabel:i,"aria-valuemin":r,"aria-valuemax":n,min:r,max:n})}}It.propTypes={filter:p.object.isRequired,onFilterChange:p.func.isRequired},L.registerForLocalization(It);class Gr extends s.Component{constructor(){super(...arguments),this.onChange=t=>{this.props.onFilterChange.call(void 0,{nextFilter:{...this.props.filter,value:t.value}})}}render(){const t=this.props.filter;return s.createElement(Ue.DatePicker,{value:t.value||null,onChange:this.onChange,ariaLabel:this.props.ariaLabel})}}Gr.propTypes={filter:p.object.isRequired,onFilterChange:p.func.isRequired,ariaLabel:p.string};class Te extends s.Component{constructor(){super(...arguments),this.onChange=t=>{this.props.onFilterChange.call(void 0,{nextFilter:{...this.props.filter,value:t.value.value}})}}render(){const t=L.provideLocalizationService(this),{filter:r,data:n=[],defaultItem:a,ariaLabel:i=t.toLanguageString(rt,C[rt])}=this.props,o=n.map(l=>({...l,text:t.toLanguageString(l.text,C[l.text]||l.text)}));return s.createElement(H.DropDownList,{value:o.find(l=>l.value===r.value)||null,onChange:this.onChange,defaultItem:a,data:o,textField:"text",ariaLabel:i})}}Te.propTypes={filter:p.object.isRequired,onFilterChange:p.func.isRequired,data:p.arrayOf(p.shape({text:p.string,value:p.any})),defaultItem:p.any,ariaLabel:p.string},L.registerForLocalization(Te);class Hr extends s.Component{constructor(){super(...arguments),this.data=[{text:Vt,value:!0},{text:Yt,value:!1}]}render(){return s.createElement(Te,{filter:this.props.filter,onFilterChange:this.props.onFilterChange,data:this.props.data||this.data,defaultItem:this.props.defaultItem,ariaLabel:this.props.ariaLabel})}}Hr.propTypes={filter:p.object.isRequired,onFilterChange:p.func.isRequired,data:p.arrayOf(p.shape({text:p.string,value:p.any})),ariaLabel:p.string,defaultItem:p.any};const Zn=[{text:_t,operator:"contains"},{text:qt,operator:"doesnotcontain"},{text:J,operator:"eq"},{text:Q,operator:"neq"},{text:Tt,operator:"startswith"},{text:Pt,operator:"endswith"},{text:Oe,operator:"isnull"},{text:Ae,operator:"isnotnull"},{text:Bt,operator:"isempty"},{text:zt,operator:"isnotempty"}],Jn=[{text:J,operator:"eq"},{text:Q,operator:"neq"},{text:Gt,operator:"gte"},{text:Ht,operator:"gt"},{text:Wt,operator:"lte"},{text:$t,operator:"lt"},{text:Oe,operator:"isnull"},{text:Ae,operator:"isnotnull"}],Qn=[{text:J,operator:"eq"},{text:Q,operator:"neq"},{text:jt,operator:"gte"},{text:Ut,operator:"gt"},{text:Xt,operator:"lt"},{text:Zt,operator:"lte"},{text:Oe,operator:"isnull"},{text:Ae,operator:"isnotnull"}],ea=[{text:J,operator:"eq"},{text:Q,operator:"neq"}];class ta{static get text(){return[...Zn]}static get numeric(){return[...Jn]}static get date(){return[...Qn]}static get boolean(){return[...ea]}}const Ft=e=>e==="contains"||e==="doesnotcontain"||e==="startswith"||e==="endswith",_e=e=>e==="isnull"||e==="isnotnull"||e==="isempty"||e==="isnotempty",Wr=e=>{e.value===void 0&&!_e(e.operator)&&(e.value=Ft(e.operator)?"":null)};class qe extends s.Component{constructor(){super(...arguments),this.onFieldChange=t=>{const r=t.value.name,n=this.props.fields.find(l=>l.name===r),a=this.props.filter,i=n&&!n.operators.some(l=>l.operator===a.operator)?n.operators[0].operator:a.operator,o={field:r,operator:i};Wr(o),this.triggerOnFilterChange(a,o,t)},this.onOperatorChange=t=>{const r=t.value.operator,n=this.props.filter;let a;if(_e(r)){let{value:i,...o}=n;a={...o,operator:r}}else a={...n,operator:r};Wr(a),this.triggerOnFilterChange(n,a,t)},this.onInputChange=t=>{const r=this.props.filter;let n=t.nextFilter;if(_e(n.operator)){const a=this.props.fields.find(i=>i.name===n.field);n={...n,operator:a&&a.operators[0].operator||n.operator}}this.triggerOnFilterChange(r,n,t)},this.triggerOnFilterChange=(t,r,n)=>{const a={prevFilter:t,nextFilter:r,syntheticEvent:n.syntheticEvent,nativeEvent:n.nativeEvent,target:this};this.props.onChange.call(void 0,a)},this.onFilterRemove=t=>{const r={filter:this.props.filter,syntheticEvent:t.syntheticEvent,nativeEvent:t.nativeEvent,target:this};this.props.onRemove.call(void 0,r)}}render(){const t=L.provideLocalizationService(this),{fields:r,filter:n,ariaLabel:a=t.toLanguageString(Qe,C[Qe])}=this.props,i=r.find(l=>l.name===n.field),o=(i&&i.operators||[]).map(l=>({...l,text:t.toLanguageString(l.text,C[l.text]||l.text)}));return s.createElement("div",{className:"k-filter-toolbar"},s.createElement(k.Toolbar,{keyboardNavigation:!1,role:"toolbar",ariaLabel:a},s.createElement(k.ToolbarItem,{className:"k-filter-field"},s.createElement(H.DropDownList,{className:"k-filter-dropdown",data:r,textField:"label",value:r.find(l=>l.name===n.field),onChange:this.onFieldChange,ariaLabel:t.toLanguageString(et,C[et])})),s.createElement(k.ToolbarItem,{className:"k-filter-operator"},s.createElement(H.DropDownList,{data:o,textField:"text",value:o.find(l=>l.operator===n.operator),onChange:this.onOperatorChange,ariaLabel:t.toLanguageString(tt,C[tt])})),s.createElement(k.ToolbarItem,{className:"k-filter-value"},i&&s.createElement(i.filter,{filter:n,onFilterChange:this.onInputChange,min:i.min,max:i.max})),s.createElement(k.Button,{className:"k-toolbar-button",title:t.toLanguageString(re,C[re]),icon:"x",svgIcon:N.xIcon,fillMode:"flat",type:"button",onClick:this.onFilterRemove})))}}qe.propTypes={filter:p.object.isRequired,fields:p.array.isRequired,ariaLabel:p.string,onChange:p.func.isRequired,onRemove:p.func.isRequired},L.registerForLocalization(qe);const $r=class extends s.Component{constructor(){super(...arguments),this.onGroupRemove=e=>{const t={filter:this.props.filter,target:this,syntheticEvent:e,nativeEvent:e.nativeEvent};this.props.onRemove.call(void 0,t)},this.onAddExpression=e=>{const t=this.props.filter,r=this.props.fields[0],n={field:r.name,operator:r.operators[0].operator};n.value=Ft(n.operator)?"":null;const a={nextFilter:{...t,filters:[...t.filters,n]},prevFilter:t,target:this,syntheticEvent:e,nativeEvent:e.nativeEvent};this.props.onChange.call(void 0,a)},this.onAddGroup=e=>{const t=this.props.filter,r={nextFilter:{...t,filters:[...t.filters,{...this.props.defaultGroupFilter}]},prevFilter:t,target:this,syntheticEvent:e,nativeEvent:e.nativeEvent};this.props.onChange.call(void 0,r)},this.onLogicAnd=e=>this.changeLogic("and",e),this.onLogicOr=e=>this.changeLogic("or",e),this.changeLogic=(e,t)=>{const r=this.props.filter;if(r.logic!==e){const n={nextFilter:{...r,logic:e},prevFilter:r,target:this,syntheticEvent:t,nativeEvent:t.nativeEvent};this.props.onChange.call(void 0,n)}},this.replaceFilter=(e,t)=>{const r=this.props.filter,n=r.filters.map(a=>a===e?t:a);return{...r,filters:n}},this.onChange=e=>{const r={nextFilter:this.replaceFilter(e.prevFilter,e.nextFilter),prevFilter:this.props.filter,syntheticEvent:e.syntheticEvent,nativeEvent:e.nativeEvent,target:this};this.props.onChange.call(void 0,r)},this.onRemove=e=>{const t=this.props.filter,r=t.filters.filter(a=>a!==e.filter),n={nextFilter:{...t,filters:r},prevFilter:t,syntheticEvent:e.syntheticEvent,nativeEvent:e.nativeEvent,target:this};this.props.onChange.call(void 0,n)}}render(){const e=L.provideLocalizationService(this),{fields:t,filter:r,ariaLabel:n=e.toLanguageString(Je,C[Je])}=this.props;return s.createElement(s.Fragment,null,s.createElement("div",{className:"k-filter-toolbar"},s.createElement(k.Toolbar,{keyboardNavigation:!1,role:"toolbar",ariaLabel:n},s.createElement(k.ButtonGroup,{className:"k-toolbar-button-group"},s.createElement(k.Button,{className:"k-toolbar-button",togglable:!0,onClick:this.onLogicAnd,selected:r.logic==="and",type:"button"},e.toLanguageString(Xe,C[Xe])),s.createElement(k.Button,{className:"k-toolbar-button",togglable:!0,onClick:this.onLogicOr,selected:r.logic==="or",type:"button"},e.toLanguageString(Ze,C[Ze]))),s.createElement(k.Button,{className:"k-toolbar-button",title:e.toLanguageString(ee,C[ee]),icon:"filter-add-expression",svgIcon:N.filterAddExpressionIcon,type:"button",onClick:this.onAddExpression},e.toLanguageString(ee,C[ee])),s.createElement(k.Button,{className:"k-toolbar-button",title:e.toLanguageString(te,C[te]),icon:"filter-add-group",svgIcon:N.filterAddGroupIcon,type:"button",onClick:this.onAddGroup},e.toLanguageString(te,C[te])),s.createElement(k.Button,{className:"k-toolbar-button",title:e.toLanguageString(re,C[re]),icon:"x",svgIcon:N.xIcon,fillMode:"flat",type:"button",onClick:this.onGroupRemove}))),r.filters.length>0&&s.createElement("ul",{role:"group",className:"k-filter-lines"},r.filters.map((a,i)=>s.createElement("li",{role:"treeitem",key:i,className:"k-filter-item"},Z.isCompositeFilterDescriptor(a)?s.createElement($r,{filter:a,fields:t,onChange:this.onChange,onRemove:this.onRemove,defaultGroupFilter:this.props.defaultGroupFilter,ariaLabel:this.props.ariaLabel,ariaLabelExpression:this.props.ariaLabelExpression}):s.createElement(qe,{filter:a,fields:t,ariaLabel:this.props.ariaLabelExpression,onChange:this.onChange,onRemove:this.onRemove})))))}};let Pe=$r;Pe.propTypes={filter:p.object.isRequired,fields:p.array.isRequired,ariaLabel:p.string,ariaLabelExpression:p.string,onChange:p.func.isRequired,onRemove:p.func.isRequired,defaultGroupFilter:p.object.isRequired},L.registerForLocalization(Pe);class Vr extends s.Component{constructor(t){super(t),this.onFilterChange=r=>{const n={filter:r.nextFilter,syntheticEvent:r.syntheticEvent,nativeEvent:r.nativeEvent,target:this};this.props.onChange.call(void 0,n)},this.onGroupRemove=r=>{const n={filter:{...this.props.value,filters:[]},syntheticEvent:r.syntheticEvent,nativeEvent:r.nativeEvent,target:this};this.props.onChange.call(void 0,n)},f.validatePackage(ht)}render(){return s.createElement("div",{className:f.classNames("k-filter",this.props.className),style:this.props.style},s.createElement("ul",{role:"tree",className:"k-filter-container","aria-label":this.props.ariaLabel},s.createElement("li",{role:"treeitem",className:"k-filter-group-main"},s.createElement(Pe,{filter:this.props.value,fields:this.props.fields,ariaLabel:this.props.ariaLabelGroup,ariaLabelExpression:this.props.ariaLabelExpression,onChange:this.onFilterChange,onRemove:this.onGroupRemove,defaultGroupFilter:this.props.defaultGroupFilter||{logic:"and",filters:[]}}))))}}Vr.propTypes={className:p.string,style:p.object,fields:function(e,t){const r=e[t];if(r===void 0)return new Error(`Property '${t}' is missing.`);if(Array.isArray(r)){if(Object.keys(r.reduce((n,a)=>({...n,[a.name]:1}),{})).length!==r.length)return new Error(`Property '${t}' needs to contain objects with unique 'name' field.`)}else return new Error(`Property '${t}' needs to be Array<FieldSettings>.`);return null},ariaLabelGroup:p.string,ariaLabelExpression:p.string,value:p.object.isRequired,onChange:p.func.isRequired};const Ge=e=>s.createElement("div",{onClick:e.onClick,className:f.classNames("k-columnmenu-item",{"k-selected":e.selected},{"k-disabled":e.disabled})},(e.iconClass||e.svgIcon)&&s.createElement(f.IconWrap,{name:e.iconClass?f.toIconName(e.iconClass):void 0,icon:e.svgIcon}),e.title),ra=[{text:tr,operator:"contains"},{text:rr,operator:"doesnotcontain"},{text:we,operator:"eq"},{text:ke,operator:"neq"},{text:er,operator:"startswith"},{text:nr,operator:"endswith"},{text:Re,operator:"isnull"},{text:Ke,operator:"isnotnull"},{text:Jt,operator:"isempty"},{text:Qt,operator:"isnotempty"}],na=[{text:we,operator:"eq"},{text:ke,operator:"neq"},{text:ar,operator:"gte"},{text:ir,operator:"gt"},{text:sr,operator:"lte"},{text:or,operator:"lt"},{text:Re,operator:"isnull"},{text:Ke,operator:"isnotnull"}],aa=[{text:we,operator:"eq"},{text:ke,operator:"neq"},{text:cr,operator:"gte"},{text:ur,operator:"gt"},{text:dr,operator:"lt"},{text:hr,operator:"lte"},{text:Re,operator:"isnull"},{text:Ke,operator:"isnotnull"}],ia=[{text:lr,operator:""}];class se{static get text(){return[...ra]}static get numeric(){return[...na]}static get date(){return[...aa]}static get boolean(){return[...ia]}}const Lt=e=>{const{filter:t,onFilterChange:r,operators:n,initialFilter:a}=e,i=s.useCallback(d=>{const h=t,m=d.target.value.operator,v=h?{...h,operator:m}:{value:a.value,operator:m};r.call(void 0,d.syntheticEvent,v,h)},[t,r,a]),o=s.useCallback(d=>{const h=d.target.value,m=t,v=m?{...m,value:h}:{value:h,operator:n[0].operator};r.call(void 0,d,v,m)},[t,r,n]),l=L.useLocalization(),u=n.map(d=>({...d,text:l.toLanguageString(d.text,C[d.text])}));return s.createElement(s.Fragment,null,s.createElement(H.DropDownList,{value:u.find(d=>d.operator===t.operator)||null,onChange:i,data:u,textField:"text"}),s.createElement(e.input,{value:t.value,onChange:o}))},Yr=e=>{const{filter:t,onFilterChange:r}=e,n=s.useCallback(i=>r.call(void 0,i.syntheticEvent,{...t,value:i.value},t),[t,r]),a=se.boolean[0].text;return s.createElement(V.Checkbox,{onChange:n,checked:t.value,label:L.useLocalization().toLanguageString(a,C[a]),labelPlacement:"after"})},St=e=>{const t=s.useCallback(a=>s.createElement(V.Input,{...a,value:a.value||""}),[]),r=s.useRef(se.text),n=s.useRef({operator:"",value:""});return s.createElement(Lt,{initialFilter:n.current,input:t,operators:e.operators||r.current,...e})},Dt=e=>{const t=s.useCallback(a=>s.createElement(V.NumericTextBox,{...a,value:a.value||null}),[]),r=s.useRef(se.numeric),n=s.useRef({operator:"",value:null});return s.createElement(Lt,{initialFilter:n.current,input:t,operators:e.operators||r.current,...e})},Mt=e=>{const t=s.useCallback(a=>s.createElement(Ue.DatePicker,{...a,value:a.value||null}),[]),r=s.useRef(se.date),n=s.useRef({operator:"",value:null});return s.createElement(Lt,{initialFilter:n.current,input:t,operators:e.operators||r.current,...e})},sa=[{text:pr,logic:"and"},{text:gr,logic:"or"}],He=e=>{const t=L.useLocalization(),r=(e.data||sa).map(n=>({...n,text:t.toLanguageString(n.text,C[n.text])}));return s.createElement(H.DropDownList,{onChange:e.onChange,className:"k-filter-and",textField:"text",...e,data:r,value:r.find(n=>n.logic===e.value)})},jr=e=>s.createElement("div",{className:"k-columnmenu-item-content"},s.createElement(un.Reveal,{style:{position:"relative",display:"block"}},e.show&&s.createElement("div",{className:"kendo-grid-filter-menu-container"},s.createElement("form",{className:"k-filter-menu",onSubmit:e.onSubmit,onReset:e.onReset},s.createElement("div",{className:"k-filter-menu-container"},e.children,s.createElement("div",{className:"k-actions k-hstack k-justify-content-stretch"},e.actions)))))),Ur=e=>{const t=L.useLocalization();return s.createElement(jr,{...e,actions:s.createElement(s.Fragment,null,s.createElement(k.Button,{type:"reset"},t.toLanguageString(it,C[it])),s.createElement(k.Button,{themeColor:"primary"},t.toLanguageString(st,C[st])))})},We=e=>{f.validatePackage(ht);const t=s.useRef([]),{field:r,filter:n,sort:a=t.current,onSortChange:i,onFilterChange:o,initialFilter:l,sortAsc:u=!1,sortDesc:d=!1,filterContent:h=[],expandFilters:m=!1}=e,[v,g]=s.useState(!1),[b,I]=s.useState(m),[x,E]=s.useState(r&&l?l(r):null),S=s.useRef(null),A=s.useRef(null),D=s.useRef(null),y=s.useRef(!1),F=s.useCallback(()=>(n||[]).find(w=>w.filters.every(K=>!Z.isCompositeFilterDescriptor(K)&&K.field===r)),[n,r]),M=s.useCallback(()=>{g(!1)},[]),B=s.useCallback(()=>{if(y.current){y.current=!1;return}clearTimeout(D.current),D.current=window.setTimeout(()=>{M()})},[M]),q=s.useCallback(()=>clearTimeout(D.current),[]),P=s.useCallback(w=>{y.current=v&&w.currentTarget===S.current},[v]),W=s.useCallback(()=>{g(!v),r&&l&&(I(v?!1:m),E(v?x:F()||l(r)))},[F,r,v,x,l,m]);s.useEffect(()=>{v&&A.current&&A.current.focus()},[v]);const R=s.useCallback(()=>I(!b),[b]),z=s.useCallback((w,K)=>{const T=[...a],_=T.findIndex(Ua=>Ua.field===r),me={field:r,dir:K};_>=0?T[_].dir!==me.dir?T.splice(_,1,me):T.splice(_,1):T.push(me),M(),i&&i.call(void 0,w,T,r)},[a,r,i,M]),de=s.useCallback((w,K,T)=>{const _={...x,filters:[...x.filters]},me=_.filters.indexOf(T);_.filters.splice(me,1,K),E(_)},[x]),$e=s.useCallback(w=>{w.preventDefault();const K=(n||[]).slice(),T=F(),_=T?K.indexOf(T):-1;_>=0?K.splice(_,1,x):K.push(x),M(),o&&o.call(void 0,w,K,r)},[n,x,r,o,M,F]),Ve=s.useCallback(w=>{const K=(n||[]).slice(),T=F(),_=T?K.indexOf(T):-1;_>=0&&K.splice(_,1),l&&E(l(r)),M(),o&&o.call(void 0,w,K,r)},[n,r,o,l,M,F]),wt=s.useCallback(w=>z(w,"asc"),[z]),Ye=s.useCallback(w=>z(w,"desc"),[z]),kt=s.useCallback(w=>x&&E({...x,logic:w.value.logic}),[x]),he=a.find(w=>w.field===r)||{dir:""},[pe,ge,fe]=h,Rt=L.useLocalization(),$a=u||d?s.createElement("div",{className:"k-columnmenu-item-wrapper",key:"sorting"},u&&s.createElement(Ge,{title:Rt.toLanguageString(lt,C[lt]),iconClass:"k-i-sort-asc-small",svgIcon:N.sortAscSmallIcon,selected:he.dir==="asc",onClick:wt}),d&&s.createElement(Ge,{title:Rt.toLanguageString(ct,C[ct]),iconClass:"k-i-sort-desc-small",svgIcon:N.sortDescSmallIcon,selected:he.dir==="desc",onClick:Ye})):null,Va=x&&h.length>0?s.createElement("div",{className:"k-columnmenu-item-wrapper",key:"filtering"},s.createElement(Ge,{iconClass:"k-i-filter",svgIcon:N.filterIcon,title:Rt.toLanguageString(ot,C[ot]),onClick:R}),s.createElement(Ur,{show:b,onSubmit:$e,onReset:Ve},pe&&s.createElement(pe,{filter:x.filters[0],onFilterChange:de}),ge&&s.createElement(ge,{value:x.logic,onChange:kt}),fe&&s.createElement(fe,{filter:x.filters[1],onFilterChange:de}))):null,on=[$a,Va],Ya=s.createElement("span",{ref:S,onClick:W,onMouseDown:P,className:"k-grid-header-menu k-grid-column-menu"+(F()?" k-active":""),key:"button"},s.createElement(f.IconWrap,{name:"filter",icon:N.filterIcon})),ja=s.createElement(cn.Popup,{anchor:S.current,show:v,key:"popup",popupClass:"k-column-menu k-column-menu-popup"},s.createElement("div",{ref:A,tabIndex:0,onBlur:B,onFocus:q,style:{outline:"none"}},e.itemsRender?e.itemsRender.call(void 0,on,{closeMenu:M,field:r}):on)),ln=[Ya,ja];return s.createElement(s.Fragment,null,e.render?e.render.call(void 0,ln):ln)},oa=e=>{const{field:t,...r}=e,n=s.useCallback(o=>({logic:"and",filters:[{operator:"contains",field:o,value:""},{operator:"contains",field:o,value:""}]}),[]),a=!!e.field,i=a?[St,He,St]:[];return s.createElement(We,{sortAsc:a,sortDesc:a,filterContent:i,initialFilter:a?n:void 0,field:t,...r})},la=e=>{const{field:t,...r}=e,n=s.useCallback(o=>({logic:"or",filters:[{operator:"eq",field:o,value:null},{operator:"eq",field:o,value:null}]}),[]),a=!!e.field,i=a?[Dt,He,Dt]:[];return s.createElement(We,{sortAsc:a,sortDesc:a,filterContent:i,initialFilter:a?n:void 0,field:t,...r})},ca=e=>{const{field:t,...r}=e,n=s.useCallback(o=>({logic:"or",filters:[{operator:"eq",field:o,value:null},{operator:"eq",field:o,value:null}]}),[]),a=!!e.field,i=a?[Mt,He,Mt]:[];return s.createElement(We,{sortAsc:a,sortDesc:a,filterContent:i,initialFilter:a?n:void 0,field:t,...r})},ua=e=>{const{field:t,...r}=e,n=s.useCallback(o=>({logic:"and",filters:[{operator:"eq",field:o,value:!1}]}),[]),a=!!e.field,i=a?[Yr]:[];return s.createElement(We,{sortAsc:a,sortDesc:a,filterContent:i,initialFilter:a?n:void 0,field:t,...r})};function oe(e,t,r){return r?{...e,[t]:r.length?[...r]:void 0}:e&&e[t]?[...e[t]]:[]}function Xr(e,t,r){if(e[r]){let n=oe(e,r,Z.orderBy(oe(e,r),t)),a=oe(n,r).map(i=>Xr(i,t,r));return{...n,[r]:a}}return e}function da(e,t,r){let n=Z.orderBy(e,t);return n=n.map(a=>Xr(a,t,r)),n}function Zr(e,t,r){let n=oe(e,r);if(n&&n.length){n=n.map(l=>Zr(l,t,r));const i={filters:[{filters:t,logic:"and"},{operator:l=>!!(l[r]||[]).length}],logic:"or"},o=Z.filterBy(n,i);return oe(e,r,o)}return e}function ha(e,t,r){let n={[r]:[...e]};return n=Zr(n,t,r),n[r]||[]}function pa(e,t,r){let n=[];const a=[];for(let i=e.length-1;i>=0;i--){const o=e[i];n.push({root:o,data:t(o),level:[i],levelCount:e.length})}for(;n.length>0;){let i=n.pop();if(a.push({dataItem:i.root,level:[...i.level],...r(i.root),levelCount:i.levelCount}),i.data.length)for(let o=i.data.length-1;o>=0;o--){const l=i.data[o];n.push({root:l,data:t(l),level:[...i.level,o],levelCount:i.data.length})}}return a}const ga=(e,t,r)=>{const n=u=>!!f.getNestedValue(t,u),a=u=>!!f.getNestedValue(r,u),i=u=>{const d=[];return n(u)&&a(u)&&d.push(...f.getNestedValue(r,u)),d},o=(u,d,h)=>{d.push({...u,level:h}),i(u).forEach(m=>o(m,d,h+1))},l=[];return e.forEach(u=>o(u,l,0)),l},fa=(e,t,r,n)=>{let a={},i=[],o;return e.forEach(l=>a[t(l)]={...l}),e.forEach(l=>{o=a[r(l)],o?(o[n]=o[n]||[],o[n].push(a[t(l)])):i.push(a[t(l)])}),i},ma=(e,t,r)=>f.extendDataItem(e,t,r),Ea=(e,t,r)=>[...f.mapTree([{[t]:[...e]}],t,a=>va(a,r,t))[0][t]],va=(e,t,r)=>{const n=e[r]||[],a=n.findIndex(t);if(a!==-1){const i=[...n];return i.splice(a,1),{...e,[r]:i}}return e},Ca=(e,t,r,n)=>f.mapTree(e,t,a=>r(a)?{...a,[t]:n(a[t]||[])}:a),Nt=(e,t,r)=>f.getItemPath(e,t,r),ba=(e,t,r,n)=>{const a=[...e],i=Nt(a,t,n),o=i.pop(),l=i.pop(),u=t[t.length-1];if(r){const h=Nt(a,r,n).pop();(l?l[n]:a).splice(u,1),h[n]=h[n]||[],h[n].push(o)}else(l?l[n]:a).splice(u,1),a.push(o);return a},le="groupId",Ot="items",Jr=(e,t,r)=>{e.items&&(e[le]=`${r}${r&&"_"}${e.value}${e.field}`,t>1&&e.items.forEach(n=>Jr(n,t-1,e[le])))},xa=e=>{const{group:t}=e;if(t&&t.length&&e.data)return e.data.forEach(r=>Jr(r,t.length,""))},ya=e=>{const t=[];return f.mapTree(e.data,Ot,r=>{r[le]&&t.push(r[le])}),t},Ia=e=>f.mapTree(e.data,Ot,t=>f.extendDataItem(t,Ot,{expanded:!e.collapsedIds.some(r=>r===t[le])})),Fa=e=>{const{navigatable:t,contextStateRef:r,navigationStateRef:n,idPrefix:a}=e;t&&(r.current={activeId:"",level:0},n.current={activeElementIsFocused:!1,prevNavigationIndexes:void 0,idPrefix:a||f.guid(),navigationMatrix:[],lastHeaderIndex:-1})},La=e=>{const{scope:t,contextStateRef:r,navigationStateRef:n}=e;if(r.current&&n.current&&t){At(e);const a=n.current.navigationMatrix[0][0],i=O.getActiveElement(t,a);a&&i&&(r.current.activeId=a,i.setAttribute("tabIndex","0"))}},Sa=e=>{const{contextStateRef:t,navigationStateRef:r,document:n}=e;if(t.current&&r.current&&n){const a=f.getActiveElement(n),i=O.getNavigatableId(a);i&&i===t.current.activeId&&(r.current.activeElementIsFocused=!0)}},Da=e=>{const{scope:t,contextStateRef:r,navigationStateRef:n}=e;if(At(e),r.current&&n.current&&t){if(!O.getActiveElement(t,r.current.activeId)){const i=n.current.navigationMatrix[0][0],o=O.getActiveElement(t,i);i&&o&&(r.current.activeId=i,o.setAttribute("tabIndex","0"),n.current.activeElementIsFocused&&o.focus())}n.current.activeElementIsFocused=!1}},Ma=(e,t)=>{const{contextStateRef:r}=t;if(e.isDefaultPrevented()||!r.current)return;const n=e.target,a=O.getNavigatableId(n);if(a&&a!==r.current.activeId){const i=O.getClosestScope(n);if(!i)return;const o=O.getActiveElement(i,r.current.activeId);o&&o.setAttribute("tabIndex","-1"),n.setAttribute("tabIndex","0"),r.current.activeId=a}},Na=(e,t)=>{const{contextStateRef:r,navigationStateRef:n,onNavigationAction:a}=t;if(e.isDefaultPrevented()||!r.current||!n.current)return;if(e.keyCode===f.Keys.esc){const h=O.getClosestNavigatableElement(e.target);O.focusElement({elementForFocus:h,event:e,contextStateRef:r});return}const i=e.target,o=O.getNavigatableId(i),l=O.getNavigatableLevel(i),u=O.getClosestScope(i),d=n.current.navigationMatrix;if(l!==void 0&&u){if(e.keyCode===f.Keys.enter){const h=O.getNavigatableElement(i,{level:l+1});if(h){O.focusElement({elementForFocus:h,event:e,contextStateRef:r,prevElement:i});return}else{const m=O.getFocusableElements(i)[0];O.focusElement({elementForFocus:m,event:e,contextStateRef:r,prevElement:i});return}}if(e.keyCode===f.Keys.up||e.keyCode===f.Keys.down||e.keyCode===f.Keys.left||e.keyCode===f.Keys.right){const h=e.keyCode===f.Keys.up||e.keyCode===f.Keys.left,m=e.keyCode===f.Keys.up||e.keyCode===f.Keys.down;let v;if(n.current&&n.current.prevNavigationIndexes){const[g,b]=n.current.prevNavigationIndexes;d[g][b]===o?v=n.current.prevNavigationIndexes:v=Ct(d,o)}else v=Ct(d,o);if(v){const[g,b]=v,[I,x]=m?Nr(g,b,o,d,h):Or(g,b,o,d,h);if(I){const E=O.getActiveElement(u,I);O.focusElement({elementForFocus:E,event:e,contextStateRef:r,prevElement:i}),n.current.prevNavigationIndexes=x,a&&a({focusElement:E,event:e})}}}}},At=e=>{const{navigationStateRef:t,scope:r}=e;if(!t.current||!r)return;const n=[],a=Dr(r),i=Mr(r);if(!a||!i)return;const o=Array.from(a.children),l=Array.from(i.children);[...o,...l].forEach((u,d)=>{Array.from(u.children).forEach(h=>{const m=Et(h);if(!m)return;const v=h.rowSpan||1,g=h.colSpan||1;let b;for(let I=d,x=d+v;I<x;I++){if(n[I]||(n[I]=[]),b===void 0){const E=n[I].findIndex(S=>!S);b=E>-1?E:n[I].length}n[I][b]=m||""}for(let I=b+1,x=b+g;I<x;I++)n[d][I]=m||""})}),t.current.navigationMatrix=n.filter(u=>!!u),t.current.lastHeaderIndex=o.length-1},Oa={onConstructor:Fa,onComponentDidMount:La,onGetSnapshotBeforeUpdate:Sa,onComponentDidUpdate:Da,onFocus:Ma,onKeyDown:Na,generateMatrix:At},Qr="data-grid-row-index",en="data-grid-col-index",tn="data-prevent-selection",Aa="items",U={},wa=(e,t)=>!e||Array.isArray(e)&&e.length===0?[t]:e.findIndex(n=>n===t)>-1?e.filter(n=>n!==t):[...e,t],$=(e,t)=>{let r=e;for(;r;){if(r.tagName===t)return r;if(r.tagName==="TABLE")return null;r=r.parentElement}return null},ce=e=>{if(!e)return;const t=e.getAttribute(Qr);return t?parseInt(t,10):void 0},ue=e=>{if(!e)return;const t=e.getAttribute(en);return t?parseInt(t,10):void 0},ka=e=>{const t=e.subItemsField||Aa,r=f.getter(e.dataItemKey);return f.mapTree(e.data,t,n=>f.extendDataItem(n,t,{[e.selectedField]:e.selectedState[r(n)]}))},Ra=e=>{const{event:t,dataItemKey:r,selectedState:n}=e,{syntheticEvent:a,nativeEvent:i,dataItems:o,componentId:l,mode:u,cell:d,selectedField:h}=t,{target:m,ctrlKey:v,metaKey:g,altKey:b,shiftKey:I}=i;if(a.isDefaultPrevented()||i.keyCode!==f.Keys.enter)return n;const x=$(m,"TD"),E=$(m,"TR"),S=ue(x),A=ce(E);let D={};return x&&E&&A!==void 0&&S!==void 0&&(D=rn({selectedState:n,dataItemKey:r,event:{ctrlKey:v,metaKey:g,altKey:b,shiftKey:I,dataItems:o,cell:d,mode:u,selectedField:h,componentId:l,startColIndex:S,endColIndex:S,startRowIndex:A,endRowIndex:A,isDrag:!1,syntheticEvent:a,nativeEvent:i,target:t.target,dataItem:null}})),D},rn=e=>{const{event:t,dataItemKey:r,selectedState:n}=e,{dataItems:a,startRowIndex:i,endRowIndex:o,startColIndex:l,endColIndex:u,cell:d,isDrag:h,ctrlKey:m,shiftKey:v,metaKey:g,componentId:b,mode:I,dataItem:x}=t,E=f.getter(r);let S={};const A=x!==null;if(I==="single"){const D=a.slice(i,i+1)[0],y=E(D);U[b]={rowIndex:i,colIndex:l},S[y]=d?[l]:!0}else if(h||!v&&!m&&!g&&!A){h||(U[b]={rowIndex:i,colIndex:l});const D=[];for(let F=l;F<=u;F++)D.push(F);a.slice(i,o+1).forEach(F=>{const M=E(F);S[M]=d?[...D]:!0})}else if(m||g||A){U[b]={rowIndex:i,colIndex:l};const y=a.slice(i,o+1)[0],F=E(y);S={...n},S[F]=d&&!A?wa(S[F],l):!S[F]}else if(v){const D=U[b]&&U[b].rowIndex||0,y=U[b]&&U[b].colIndex||0,F=Math.min(D,i,o),M=Math.max(D,i,o),B=Math.min(y,l,u),q=Math.max(y,l,u),P=[];for(let R=B;R<=q;R++)P.push(R);a.slice(F,M+1).forEach(R=>{const z=E(R);S[z]=d?[...P]:!0})}return S},Ka=f.hasRelativeStackingContext(),nn=e=>{if(!e||!Ka)return null;let t=e.parentElement;for(;t;){if(window.getComputedStyle(t).transform!=="none")return t;t=t.parentElement}},an=e=>{if(e&&e.ownerDocument&&e!==e.ownerDocument.body){const t=e.getBoundingClientRect();return{left:t.left-e.scrollLeft,top:t.top-e.scrollTop}}return{left:0,top:0}},sn=e=>{const t=e?typeof e.enabled=="boolean"?e.enabled:!0:!1,r=e?!!e.drag:!1,n=e&&e.mode?e.mode:"multiple",a=!!(e&&e.cell);return{enabled:t,drag:r,mode:n,cell:a}},Ba=e=>{var A;const{onRelease:t,childRef:r}=e,{enabled:n,drag:a,mode:i,cell:o}=sn(e.selectable),l=s.useRef(null),u=s.useRef(null),d=s.useRef({clientX:0,clientY:0}),[h,m]=s.useState(null),v=s.useRef(),g=s.useRef(!1),b=s.useRef(!1),I=s.useCallback(D=>{const{event:y}=D;b.current=y.originalEvent.target.hasAttribute(tn),!(b.current||!l.current)&&(v.current=nn(l.current.element),d.current={clientY:y.clientY,clientX:y.clientX})},[]),x=s.useCallback(D=>{const{event:y}=D,{clientX:F,clientY:M}=d.current;if(!b.current&&!(!a||i==="single")&&((Math.abs(M-y.clientY)>5||Math.abs(F-y.clientX)>5)&&(g.current=!0),g.current)){const B=an(v.current);m({top:Math.min(M,y.clientY)-B.top,left:Math.min(F,y.clientX)-B.left,width:Math.abs(y.clientX-F),height:Math.abs(y.clientY-M)})}},[m,a,i]),E=s.useCallback(D=>{const{event:y}=D,{clientX:F,clientY:M}=d.current;if(b.current||!l.current)return;const B=l.current.element&&l.current.element.ownerDocument;if(B){if(g.current){const q=Math.min(M,y.clientY),P=Math.min(F,y.clientX),W=Math.max(M,y.clientY),R=Math.max(F,y.clientX),z=u.current;if(!z)return;z.style.visibility="hidden";const de=B.elementFromPoint(P,q),$e=B.elementFromPoint(R,W);if(z.style.visibility="",!de||!$e)return;const Ve=$(de,"TD"),wt=$(Ve,"TR"),Ye=$($e,"TD"),kt=$(Ye,"TR"),he=ue(Ve),pe=ce(wt),ge=ue(Ye),fe=ce(kt);he!==void 0&&pe!==void 0&&ge!==void 0&&fe!==void 0&&t({nativeEvent:y.originalEvent,startRowIndex:pe,startColIndex:he,endRowIndex:fe,endColIndex:ge,altKey:y.altKey,shiftKey:y.shiftKey,ctrlKey:y.ctrlKey,metaKey:y.metaKey,mode:i,cell:o,isDrag:!0})}else{const q=B.elementFromPoint(F,M);if(!q)return;const P=$(q,"TD"),W=$(q,"TR"),R=ue(P),z=ce(W);P&&W&&z!==void 0&&R!==void 0&&t({nativeEvent:y.originalEvent,startRowIndex:z,startColIndex:R,endRowIndex:z,endColIndex:R,altKey:y.altKey,shiftKey:y.shiftKey,ctrlKey:y.ctrlKey,metaKey:y.metaKey,mode:i,cell:o,isDrag:!1})}m(null),g.current=!1,d.current={clientX:0,clientY:0}}},[m,i,o,t]),S=f.useDocument(u);return n?s.createElement(s.Fragment,null,s.createElement(f.Draggable,{onPress:I,onDrag:x,onRelease:E,ref:l,childRef:r},e.children),h&&dn.createPortal(s.createElement("div",{ref:u,style:{...h,position:"fixed"},className:"k-marquee k-marquee-color"}),(A=S())==null?void 0:A.body)):s.cloneElement(s.Children.only(e.children),{ref:r})},za="items";var G=(e=>(e.copy="copy",e.cut="cut",e.paste="paste",e))(G||{});const Ta=(e,t,r)=>{const n=e.cellDelimiter||" ",a=e.newLineDelimiter||`\r
|
|
6
|
-
`,
|
|
5
|
+
(function(c,ee){typeof exports=="object"&&typeof module!="undefined"?ee(exports,require("react"),require("prop-types"),require("@progress/kendo-react-common"),require("@progress/kendo-react-buttons"),require("@progress/kendo-react-intl"),require("@progress/kendo-react-inputs"),require("@progress/kendo-react-dropdowns"),require("@progress/kendo-svg-icons"),require("react-dom"),require("@progress/kendo-data-query"),require("@progress/kendo-react-dateinputs"),require("@progress/kendo-react-popup"),require("@progress/kendo-react-animation")):typeof define=="function"&&define.amd?define(["exports","react","prop-types","@progress/kendo-react-common","@progress/kendo-react-buttons","@progress/kendo-react-intl","@progress/kendo-react-inputs","@progress/kendo-react-dropdowns","@progress/kendo-svg-icons","react-dom","@progress/kendo-data-query","@progress/kendo-react-dateinputs","@progress/kendo-react-popup","@progress/kendo-react-animation"],ee):(c=typeof globalThis!="undefined"?globalThis:c||self,ee(c.KendoReactDatatools={},c.React,c.PropTypes,c.KendoReactCommon,c.KendoReactButtons,c.KendoReactIntl,c.KendoReactInputs,c.KendoReactDropdowns,c.KendoSvgIcons,c.ReactDOM,c.KendoDataQuery,c.KendoReactDateinputs,c.KendoReactPopup,c.KendoReactAnimation))})(this,function(c,ee,p,m,K,L,Y,H,N,Ye,te,je,cn,un){"use strict";"use client";function Rt(e){const t=Object.create(null,{[Symbol.toStringTag]:{value:"Module"}});if(e){for(const r in e)if(r!=="default"){const n=Object.getOwnPropertyDescriptor(e,r);Object.defineProperty(t,r,n.get?n:{enumerable:!0,get:()=>e[r]})}}return t.default=e,Object.freeze(t)}const i=Rt(ee),dn=Rt(Ye),be="pager.info",xe="pager.firstPage",ye="pager.previousPage",Ie="pager.nextPage",Fe="pager.lastPage",Le="pager.itemsPerPage",hn="pager.pageSelection",$="pager.page",X="pager.of",j="pager.totalPages",Ue="pager.pageNumberLabel",pn="pager.pageLabel",Se="pager.ariaKeyshortcuts",gn="pager.ariaLabel",De="pager.pageSizeAriaLabel",Me="pager.mobileSelect",Ne="pager.moreButtonLabel",re="filter.eqOperator",ne="filter.notEqOperator",Oe="filter.isNullOperator",Ae="filter.isNotNullOperator",Bt="filter.isEmptyOperator",Tt="filter.isNotEmptyOperator",zt="filter.startsWithOperator",_t="filter.containsOperator",Pt="filter.notContainsOperator",qt="filter.endsWithOperator",Gt="filter.gteOperator",Ht="filter.gtOperator",$t="filter.lteOperator",Wt="filter.ltOperator",Vt="filter.isTrue",Yt="filter.isFalse",jt="filter.afterOrEqualOperator",Ut="filter.afterOperator",Xt="filter.beforeOperator",Zt="filter.beforeOrEqualOperator",Xe="filter.andLogic",Ze="filter.orLogic",ae="filter.addExpression",se="filter.addGroup",ie="filter.close",Je="filter.groupAriaLabel",Qe="filter.expressionAriaLabel",et="filter.expressionDropdownAriaLabel",tt="filter.expressionOperatorDropdownAriaLabel",rt="filter.enumFilterDropdownAriaLabel",nt="filter.numericFilterAriaLabel",at="filter.textFilterAriaLabel",st="columnMenu.filterClearButton",it="columnMenu.filterSubmitButton",ot="columnMenu.filterTitle",lt="columnMenu.sortAscending",ct="columnMenu.sortDescending",we="columnMenu.filterEqOperator",Ke="columnMenu.filterNotEqOperator",ke="columnMenu.filterIsNullOperator",Re="columnMenu.filterIsNotNullOperator",Jt="columnMenu.filterIsEmptyOperator",Qt="columnMenu.filterIsNotEmptyOperator",er="columnMenu.filterStartsWithOperator",tr="columnMenu.filterContainsOperator",rr="columnMenu.filterNotContainsOperator",nr="columnMenu.filterEndsWithOperator",ar="columnMenu.filterGteOperator",sr="columnMenu.filterGtOperator",ir="columnMenu.filterLteOperator",or="columnMenu.filterLtOperator",lr="columnMenu.filterIsTrue",cr="columnMenu.filterAfterOrEqualOperator",ur="columnMenu.filterAfterOperator",dr="columnMenu.filterBeforeOperator",hr="columnMenu.filterBeforeOrEqualOperator",pr="columnMenu.filterAndLogic",gr="columnMenu.filterOrLogic",ut="sort.ariaLabel",dt="filter.ariaLabel",C={[Le]:"items per page",[hn]:"Select page",[be]:"{0} - {1} of {2} items",[xe]:"Go to the first page",[ye]:"Go to the previous page",[Ie]:"Go to the next page",[Fe]:"Go to the last page",[$]:"Page",[X]:"of",[j]:"{0}",[pn]:"Page",[Se]:"Enter ArrowRight ArrowLeft",[gn]:"Pager",[De]:"Page size",[Me]:"Select",[Ne]:"More pages",[Ue]:"Type a page number",[ut]:"Sortable",[dt]:"Filter",[re]:"Is equal to",[ne]:"Is not equal to",[Oe]:"Is null",[Ae]:"Is not null",[Bt]:"Is empty",[Tt]:"Is not empty",[zt]:"Starts with",[_t]:"Contains",[Pt]:"Does not contain",[qt]:"Ends with",[Gt]:"Is greater than or equal to",[Ht]:"Is greater than",[$t]:"Is less than or equal to",[Wt]:"Is less than",[Vt]:"Is true",[Yt]:"Is false",[jt]:"Is after or equal to",[Ut]:"Is after",[Xt]:"Is before",[Zt]:"Is before or equal to",[Xe]:"And",[Ze]:"Or",[ae]:"Add Expression",[se]:"Add Group",[ie]:"Remove",[Je]:"Filter toolbar",[Qe]:"Filter expression row",[et]:"Filter dropdown",[tt]:"Filter operator dropdown",[rt]:"Select True/False",[nt]:"Enter number",[at]:"Enter text",[st]:"Clear",[it]:"Filter",[ot]:"Filter",[lt]:"Sort Ascending",[ct]:"Sort Descending",[we]:"Is equal to",[Ke]:"Is not equal to",[ke]:"Is null",[Re]:"Is not null",[Jt]:"Is empty",[Qt]:"Is not empty",[er]:"Starts with",[tr]:"Contains",[rr]:"Does not contain",[nr]:"Ends with",[ar]:"Is greater than or equal to",[sr]:"Is greater than",[ir]:"Is less than or equal to",[or]:"Is less than",[lr]:"Is true",[cr]:"Is after or equal to",[ur]:"Is after",[dr]:"Is before",[hr]:"Is before or equal to",[pr]:"And",[gr]:"Or"},fr="...";class fn extends i.Component{constructor(){super(...arguments),this.handlePageChange=(t,r)=>{t.preventDefault(),this.props.pageChange(r,t)},this.handleSelectPageChange=t=>{t.preventDefault(),this.props.pageChange(t.target.value,t)}}render(){const t=L.provideLocalizationService(this),r=this.props.messagesMap?this.props.messagesMap(Me):{messageKey:Me,defaultMessage:C[Me]},n=this.props.messagesMap?this.props.messagesMap($):{messageKey:$,defaultMessage:C[$]},a=this.props.messagesMap?this.props.messagesMap(Ne):{messageKey:Ne,defaultMessage:C[Ne]},s=t.toLanguageString(a.messageKey,a.defaultMessage),o=this.start>1&&this.renderDots(this.start-1,s),l=this.end<this.props.totalPages&&this.renderDots(this.end+1,s),u=this.start>1&&this.renderOptionDots(this.start-1),d=this.end<this.props.totalPages&&this.renderOptionDots(this.end+1),h=[];for(let f=this.start;f<=this.end;f++)h.push(f);const g=h.map(f=>i.createElement(K.Button,{className:m.classNames({"k-selected":this.props.currentPage===f}),key:f,fillMode:"flat",themeColor:"primary",size:this.props.size,rounded:null,role:"button","aria-label":t.toLanguageString(n.messageKey,n.defaultMessage)+" "+f,"aria-current":this.props.currentPage===f?!0:void 0,onClick:b=>this.handlePageChange(b,f)},f)),v=h.map(f=>i.createElement("option",{key:f},f));return i.createElement(i.Fragment,null,i.createElement("select",{style:{width:"5em",margin:"0px 1em",display:this.props.type==="dropdown"?"inline-flex":"none"},className:m.classNames("k-picker k-dropdown-list k-dropdown k-rounded-md",{[`k-picker-${m.kendoThemeMaps.sizeMap[this.props.size]||this.props.size}`]:this.props.size}),"aria-label":t.toLanguageString(r.messageKey,r.defaultMessage),value:this.props.currentPage,onChange:f=>this.handleSelectPageChange(f)},u,v,d),i.createElement("div",{className:"k-pager-numbers",style:{display:this.props.type==="numbers"?"":"none"}},o,g,l))}get end(){return Math.min(this.start+this.props.buttonCount-1,this.props.totalPages)}get start(){const t=this.props.currentPage,r=this.props.buttonCount;if(t>r){const n=t%r;return n===0?t-r+1:t-n+1}return 1}renderDots(t,r){return i.createElement(K.Button,{fillMode:"flat",themeColor:"primary",size:this.props.size,rounded:null,role:"button","aria-label":r,onClick:n=>this.handlePageChange(n,t)},fr)}renderOptionDots(t){return i.createElement("option",{value:t},fr)}}class mr extends i.Component{constructor(){super(...arguments),this.state={page:this.props.currentPage},this.handleOnChange=t=>{this.setState({page:t.target.value}),t.target.value&&this.props.pageChange(t.target.value,t)}}render(){const t=L.provideIntlService(this),r=L.provideLocalizationService(this),n=this.props.messagesMap?this.props.messagesMap($):{messageKey:$,defaultMessage:C[$]},a=this.props.messagesMap?this.props.messagesMap(X):{messageKey:X,defaultMessage:C[X]},s=this.props.messagesMap?this.props.messagesMap(j):{messageKey:j,defaultMessage:C[j]},o=this.props.messagesMap?this.props.messagesMap(j):{messageKey:Ue,defaultMessage:C[Ue]};return i.createElement("span",{className:"k-pager-input"},i.createElement("span",null,r.toLanguageString(n.messageKey,n.defaultMessage)),i.createElement(Y.NumericTextBox,{value:this.props.currentPage!==void 0?this.props.currentPage:this.state.page,onChange:this.handleOnChange,min:1,spinners:!1,ariaLabel:r.toLanguageString(o.messageKey,o.defaultMessage)}),i.createElement("span",null,`${r.toLanguageString(a.messageKey,a.defaultMessage)} ${t.format(r.toLanguageString(s.messageKey,s.defaultMessage),[this.props.totalPages])}`))}}L.registerForLocalization(mr);class Er extends i.Component{constructor(){super(...arguments),this.pageSizeChange=t=>{this.props.pageChange&&this.props.pageChange({skip:0,take:parseInt(t.target.value,10)},t)}}render(){const{value:t,pageSizes:r,pageSize:n,messagesMap:a}=this.props,s=r.slice();t===void 0&&s.filter(u=>u===n).length===0&&s.unshift(n);const o=a?a(Le):{messageKey:Le,defaultMessage:C[Le]},l=a?a(De):{messageKey:De,defaultMessage:C[De]};return i.createElement("span",{className:"k-pager-sizes"},i.createElement(H.DropDownList,{value:t!==void 0?t:n,data:s,onChange:this.pageSizeChange,ariaLabel:L.provideLocalizationService(this).toLanguageString(l.messageKey,l.defaultMessage),size:this.props.size}),i.createElement("span",null,L.provideLocalizationService(this).toLanguageString(o.messageKey,o.defaultMessage)))}}L.registerForLocalization(Er);const ht={name:"@progress/kendo-react-data-tools",productName:"KendoReact",productCodes:["KENDOUIREACT","KENDOUICOMPLETE"],publishDate:0,version:"",licensingDocsUrl:"https://www.telerik.com/kendo-react-ui/components/my-license/"},vr=600,mn=768;class oe extends i.Component{constructor(t){super(t),this._element=null,this.onPageChange=(r,n)=>{const a={target:this,syntheticEvent:n.syntheticEvent,nativeEvent:n.nativeEvent,targetEvent:n,...r};this.props.onPageChange&&this.props.onPageChange.call(void 0,a)},this.changePage=(r,n)=>{this.props.onPageChange&&r>0&&r<=this.totalPages&&this.props.onPageChange({target:this,skip:(r-1)*this.props.take,take:this.props.take,syntheticEvent:n,nativeEvent:n.nativeEvent,targetEvent:n})},this.onWindowResize=()=>{const r=this.element;if(!r||!this.props.responsive)return;const n=r.offsetWidth;n<vr?this.setState({showPagerSizes:!1}):n>=vr&&n<mn?this.setState({showPagerInfo:!1,showPagerSizes:!0}):this.setState({showPagerInfo:!0,showPagerSizes:!0})},m.validatePackage(ht),this.state={showPagerSizes:!0,showPagerInfo:!0}}get isRtl(){return this.props.dir==="rtl"}get element(){return this._element}componentDidMount(){window.addEventListener("resize",this.onWindowResize),this.onWindowResize()}componentWillUnmount(){window.removeEventListener("resize",this.onWindowResize)}render(){const{showPagerSizes:t,showPagerInfo:r}=this.state,{skip:n,take:a,total:s,pageSizes:o,size:l,responsive:u,messagesMap:d,pageSizeValue:h}=this.props,g=L.provideLocalizationService(this),v=L.provideIntlService(this),f=Math.floor(n/a)+1,b=this.props.type==="numeric"?i.createElement(fn,{type:u&&!t?"dropdown":"numbers",buttonCount:this.props.buttonCount||0,totalPages:this.totalPages,currentPage:f,pageChange:this.changePage,messagesMap:this.props.messagesMap,size:l}):i.createElement(mr,{buttonCount:this.props.buttonCount||0,totalPages:this.totalPages,currentPage:f,pageChange:this.changePage,messagesMap:d,size:l}),I=d?d(xe):{messageKey:xe,defaultMessage:C[xe]},x=d?d(ye):{messageKey:ye,defaultMessage:C[ye]},E=d?d(Ie):{messageKey:Ie,defaultMessage:C[Ie]},S=d?d(Fe):{messageKey:Fe,defaultMessage:C[Fe]},A=d?d(be):{messageKey:be,defaultMessage:C[be]},D=d?d(Se):{messageKey:Se,defaultMessage:C[Se]},y=d?d($):{messageKey:$,defaultMessage:C[$]},F=d?d(X):{messageKey:X,defaultMessage:C[X]},M=d?d(j):{messageKey:j,defaultMessage:C[j]},_=`${v.format(g.toLanguageString(y.messageKey,y.defaultMessage),[a])} ${g.toLanguageString(F.messageKey,F.defaultMessage)} ${v.format(g.toLanguageString(M.messageKey,M.defaultMessage),[h])}`;let P,q,W,R;this.props.previousNext&&(P=this.renderButton(1,"k-pager-nav k-pager-first"+(f===1?" k-disabled":""),g.toLanguageString(I.messageKey,I.defaultMessage),this.isRtl?"caret-alt-to-right":"caret-alt-to-left",this.isRtl?N.caretAltToRightIcon:N.caretAltToLeftIcon,f===1?!0:void 0),q=this.renderButton(f-1,"k-pager-nav"+(f===1?" k-disabled":""),g.toLanguageString(x.messageKey,x.defaultMessage),this.isRtl?"caret-alt-right":"caret-alt-left",this.isRtl?N.caretAltRightIcon:N.caretAltLeftIcon,f===1?!0:void 0),W=this.renderButton(f+1,"k-pager-nav"+(f>=this.totalPages?" k-disabled":""),g.toLanguageString(E.messageKey,E.defaultMessage),this.isRtl?"caret-alt-left":"caret-alt-right",this.isRtl?N.caretAltLeftIcon:N.caretAltRightIcon,f>=this.totalPages?!0:void 0),R=this.renderButton(this.totalPages,"k-pager-nav k-pager-last"+(f>=this.totalPages?" k-disabled":""),g.toLanguageString(S.messageKey,S.defaultMessage),this.isRtl?"caret-alt-to-left":"caret-alt-to-right",this.isRtl?N.caretAltToLeftIcon:N.caretAltToRightIcon,f>=this.totalPages?!0:void 0));const k=o&&i.createElement(Er,{pageChange:this.onPageChange,pageSize:a,pageSizes:o,value:h,messagesMap:d,size:l}),U=this.props.info&&i.createElement("span",{className:"k-pager-info"},v.format(g.toLanguageString(A.messageKey,A.defaultMessage),[Math.min(n+1,s),Math.min(n+a,s),s]));return i.createElement("div",{className:m.classNames("k-pager",{[`k-pager-${m.kendoThemeMaps.sizeMap[l]||l}`]:l},this.props.className),style:this.props.style,role:"application","aria-roledescription":"pager",dir:this.props.dir,"aria-keyshortcuts":g.toLanguageString(D.messageKey,D.defaultMessage),"aria-label":_,ref:Q=>this._element=Q},i.createElement("div",{className:m.classNames("k-pager-numbers-wrap")},P,q,b,W,R),u?t&&k:k,u?r&&U:U)}renderButton(t,r,n,a,s,o){return i.createElement(K.Button,{fillMode:"flat",themeColor:"base",size:this.props.size,rounded:null,className:r,icon:a,svgIcon:s,title:n,role:"button","aria-disabled":o,onClick:l=>{l.preventDefault(),this.changePage(t,l)}})}get totalPages(){return Math.ceil((this.props.total||0)/this.props.take)}}oe.propTypes={className:p.string,style:p.object,total:p.number.isRequired,skip:p.number.isRequired,take:p.number.isRequired,buttonCount:p.number,info:p.bool,type:p.oneOf(["numeric","input"]),pageSizes:p.arrayOf(p.oneOfType([p.string,p.number])),previousNext:p.bool,onPageChange:p.func,messagesMap:p.func,size:p.oneOf([null,"small","medium","large"]),dir:p.string},oe.defaultProps={buttonCount:10,info:!0,type:"numeric",size:"medium"},L.registerForIntl(oe),L.registerForLocalization(oe);const le=e=>class extends i.Component{constructor(){super(...arguments),this.filterChange=n=>{this.props.onFilterChange&&this.props.onFilterChange(n)},this.inputChange=n=>{const a=n.target.value,{filter:s=[],field:o=""}=this.props,l=this.findCellFilter(),u=l?s.map(d=>d.field===o?{...l,value:a}:d):[...s,{...e.emptyFilter,value:a,field:o}];this.filterChange({filter:u,field:o,syntheticEvent:n.syntheticEvent})},this.operatorChange=n=>{const{operator:a}=n.target.value,{filter:s=[],field:o=""}=this.props,l=this.findCellFilter(),u=l?s.map(d=>d.field===o?{...l,operator:a}:d):[...s,{...e.emptyFilter,field:o,operator:a}];this.filterChange({filter:u,field:o,syntheticEvent:n.syntheticEvent})},this.clearButtonClick=n=>{const{filter:a=[],field:s=""}=this.props;this.filterChange({filter:a.filter(o=>o.field!==s),field:s,syntheticEvent:n})},this.findCellFilter=()=>{const{filter:n=[],field:a}=this.props;return n.find(s=>s.field===a)}}render(){const{clearButtonTitle:n="",operators:a=[]}=this.props,s=this.findCellFilter()||{...e.emptyFilter,operator:""},{operator:o,value:l}=s,u={ariaLabel:"filter",value:a.find(d=>d.operator===o)||null,onChange:this.operatorChange,className:"k-dropdown-operator",iconClassName:"k-i-filter",svgIcon:N.filterIcon,data:a,textField:"text",popupSettings:{width:""},components:this.props.components};return i.createElement("div",{className:"k-filtercell"},i.createElement("span",null,e.inputComponent({value:l,onChange:this.inputChange,components:this.props.components,ariaLabel:this.props.ariaLabel,min:this.props.min,max:this.props.max}),i.createElement("div",{className:"k-filtercell-operator"},e.operatorComponent(u,this.props)," ",i.createElement(K.Button,{className:m.classNames({["k-clear-button-visible"]:!(l===null||l==="")||o}),title:n,type:"button",onClick:this.clearButtonClick,icon:"filter-clear",svgIcon:N.filterClearIcon,disabled:!(!(l===null||l==="")||o)}))))}},Cr="eq",En={emptyFilter:{operator:Cr,value:""},inputComponent:e=>null,operatorComponent:function(e,t){const{filter:r=[],field:n}=t,a=r.find(s=>s.field===n);return i.createElement(H.DropDownList,{...e,value:e.data.find(s=>s.operator===(a?a.value:"")),onChange:s=>{if(!t.onFilterChange)return;const o=s.target.value.operator;if(o===""){a&&t.onFilterChange.call(void 0,{filter:r.filter(u=>u.field!==a.field),field:n,syntheticEvent:s.syntheticEvent});return}let l=a?r.map(u=>u.field===n?{...a,value:o}:u):[...r,{value:o,field:n,operator:Cr}];t.onFilterChange.call(void 0,{filter:l,field:n,syntheticEvent:s.syntheticEvent})}})}};class vn extends le(En){}const Cn={inputComponent:e=>i.createElement(je.DatePicker,{...e}),operatorComponent:e=>i.createElement(H.DropDownList,{...e}),emptyFilter:{operator:"eq",value:null}};class bn extends le(Cn){}const xn={inputComponent:e=>i.createElement(Y.NumericTextBox,{...e}),operatorComponent:e=>i.createElement(H.DropDownList,{...e}),emptyFilter:{operator:"eq",value:null}};class yn extends le(xn){}const In={inputComponent:e=>i.createElement(Y.Input,{...e}),operatorComponent:e=>i.createElement(H.DropDownList,{...e}),emptyFilter:{operator:"contains",value:""}};class Fn extends le(In){}const br={filterable:!0,editable:!0,sortable:!0,resizable:!0,reorderable:!0,groupable:!0},Z="data-keyboardnavlevel",pt="data-keyboardnavscope",gt="data-keyboardnavheader",ft="data-keyboardnavbody",ce="data-keyboardnavid",Ln="data-keyboardnavzone",xr="_filter",yr=["input:not([disabled]):not([type=hidden])","select:not([disabled])","textarea:not([disabled])","button:not([disabled])","a[href]","area[href]","summary","iframe","object","embed","audio[controls]","video[controls]","[contenteditable]"],Be=[...yr,"[tabindex]"],Ir=[...yr,"[tabindex]"].map(e=>e+':not([tabindex="-1"])'),Sn={[pt]:!0},Fr={[gt]:!0},Dn={[ft]:!0},mt=i.createContext(void 0);mt.displayName="KendoReactTableKeyboardNavigationContext";const Lr=(e,t)=>{const r=i.useContext(mt);return!r||!e||t===!1?{}:{tabIndex:r&&r.activeId&&r.activeId===e?0:-1,[Z]:r.level,[ce]:e}},Te=e=>{const{ariaSort:t,colSpan:r,rowSpan:n,className:a,style:s,columnId:o,onKeyDown:l,navigatable:u,ariaColumnIndex:d,ariaLabel:h,role:g,ariaSelected:v}=e,f=Lr(o,u);return i.createElement("th",{"aria-sort":t,"aria-label":h,"aria-colindex":d,"aria-selected":v,colSpan:r,rowSpan:n,className:a,style:s,onKeyDown:l,role:g,...f},e.children)};Te.displayName="KendoReactHeaderThElement";const Sr=(e,t,r="cell")=>`${t}_${e}_${r}`,Mn=e=>{if(e)return parseInt(e.getAttribute(Z)||"",10)},Et=e=>{if(!e)return;const t=e.getAttribute(ce);return t||void 0},vt=e=>e?!!e.getAttribute(ce):!1,Nn=(e,t={level:0})=>e.querySelector(`[${Z}='${t.level}']`),On=e=>e.parentElement&&e.parentElement.closest(`[${Z}]`),An=(e,t)=>e.querySelector(`[${ce}='${t}']`),wn=e=>e.parentElement&&e.parentElement.closest(`[${pt}]`),Dr=e=>e.querySelector(`[${gt}]`),Mr=e=>e.querySelector(`[${ft}]`),Kn=(e,t={focusable:!1})=>{let r=t.focusable?Be:Ir;return Array.from(e.querySelectorAll(r.join(",")))},kn=(e,t={level:0})=>{if(!e)return[];let r=Be.map(n=>n+`[${Z}='${t.level}']`).join(",");return Array.from(e.querySelectorAll(r))},Rn=(e={level:0})=>{let t=Be.map(r=>r+`[${Z}='${e.level}']`).join(",");return r=>r.matches(t)},Bn=e=>{const{elementForFocus:t,event:r,contextStateRef:n,prevElement:a}=e;n.current&&t&&t.focus&&(r.preventDefault(),t.focus(),vt(t)&&(t.setAttribute("tabIndex","0"),n.current.activeId=Et(t)),a&&vt(a)&&a.setAttribute("tabIndex","-1"))},Tn=e=>e.current?e.current.idPrefix:"",Nr=(e,t,r,n,a)=>{if(!r)return[];let s=e+(a?-1:1);for(;s>=0&&s<n.length;){const o=n[s][t];if(o!==r)return[o,[s,t]];s=s+(a?-1:1)}return[]},Or=(e,t,r,n,a)=>{if(!r)return[];let s=t+(a?-1:1);for(;s>=0&&s<n[e].length;){const o=n[e][s];if(o!==r)return[o,[e,s]];s=s+(a?-1:1)}return[]},Ct=(e,t)=>{if(t){for(let r=0;r<e.length;r++)for(let n=0;n<e[r].length;n++)if(e[r][n]===t)return[r,n]}},zn=e=>e.current?e.current.navigationMatrix.length:0,Ar=e=>e?`${e}${xr}`:"",O={generateNavigatableId:Sr,getNavigatableId:Et,getNavigatableLevel:Mn,getNavigatableElement:Nn,getClosestNavigatableElement:On,getActiveElement:An,getClosestScope:wn,getHeaderElement:Dr,getBodyElement:Mr,getFocusableElements:Kn,getNavigatableElements:kn,filterNavigatableElements:Rn,focusElement:Bn,getIdPrefix:Tn,isNavigatable:vt,findNextIdByRowIndex:Nr,findNextIdByCellIndex:Or,findId:Ct,getNextNavigationIndex:zn,getFilterColumnId:Ar},wr="k-table-row k-filter-row",_n=(e,t,r)=>{let n=`${r?"k-grid-header-sticky":""}`;return e.some(a=>a.field===t)&&(n+=" k-sorted"),n},Pn=function(e){const{columns:t,filter:r,filterChange:n,sort:a=[],ariaRowIndex:s}=e,o=L.useLocalization();return i.createElement("tr",{className:wr,"aria-rowindex":s,role:"row"},t.map((l,u)=>{const d=l.locked!==void 0?{left:l.left,right:l.right,borderRightWidth:l.rightBorder?"1px":""}:{},h=l.filterCell||l.filter;return i.createElement(Te,{columnId:Ar(l.id),navigatable:l.navigatable,style:d,key:u,ariaColumnIndex:l.ariaColumnIndex,ariaLabel:h?o.toLanguageString(dt,C[dt]):void 0,className:m.classNames("k-table-th k-header",_n(a,l.field,l.locked))},h&&i.createElement(h,{field:l.field,filter:r,onFilterChange:n}))}))};function Kr(e,t){const r=e[t].depth;let n=null;for(let a=t+1;a<e.length;a++)if(e[a].depth===r){n=e[a];break}return n}const bt=e=>{let t=e.width?parseFloat(e.width.toString()):0;return!t&&e.children&&e.children.length&&(t=e.children.reduce((r,n)=>bt(n)+r,0)),t};function qn(e){const t=[[]];let r=0;for(let s=e.length-1;s>=0;s--)r=Math.max(r,e[s].depth),e[s].colSpan=e[s].colSpan||1,e[s].parentIndex!==-1&&(e[e[s].parentIndex].colSpan=(e[e[s].parentIndex].colSpan||0)+e[s].colSpan);const n=[];let a=1;return e.forEach((s,o)=>{t[s.depth]=t[s.depth]||[];let l=!1;t[s.depth].length===0&&(a<=1?a=1+(s.children.length>0?0:r-s.depth):(a--,l=!0)),s.rowSpan=1+(s.children.length>0?0:r-s.depth),s.kFirst=l,s.index=t[s.depth].length,t[s.depth].push(o),s.ariaColumnIndex=n[s.depth]?n[s.depth]+1:1;for(let u=s.depth;u<s.depth+s.rowSpan;u++)n[u]=(n[u]||0)+s.colSpan}),kr(t,e),Rr(t,e),t}function kr(e,t,r){let n=new Array(e.length).fill(0),a=0;t.forEach(s=>{if(s.locked&&(!s.left||r))if(s.left=n[s.depth],a=bt(s),s.children.length===0)for(let o=s.depth;o<n.length;o++)n[o]+=a;else n[s.depth]+=a})}function Rr(e,t,r){let n=0,a=new Array(e.length).fill(0);for(let s=t.length-1;s>=0;s--){const o=t[s];if(o.locked&&(!o.right||r)){if(o.right=a[o.depth],n=bt(o),o.children.length===0)for(let u=o.depth;u<a.length;u++)a[u]+=n;else a[o.depth]+=n;const l=Kr(t,s);o.rightBorder=!(l&&l.locked)}}}function Br(e,t,r=0){let n=[];if(!e||!e.length)return[];e.forEach(s=>{const o=Br(s.children||[],t,r+1);n.push(Object.assign({},{depth:r},br,s,{id:s.id?s.id:Sr(`${t.prevId++}`,t.idPrefix,"column"),declarationIndex:n.length,children:o,rowSpan:0,colSpan:0,isAccessible:!0}))});const a=(s,o)=>s.orderIndex===o.orderIndex?s.declarationIndex-o.declarationIndex:(s.orderIndex||0)-(o.orderIndex||0);if(n.sort(a),r===0){let s=[];const o=(l,u)=>l.forEach(d=>{d.parentIndex=u,o(d.children,s.push(d)-1)});return o(n,-1),s}return n}function Tr(e){return!!(e&&getComputedStyle(e).direction==="rtl")}function xt(e,t){if(!t||!e||!e.originalEvent)return-1;const r={x:e.clientX,y:e.originalEvent.clientY};let n=t.ownerDocument?t.ownerDocument.elementFromPoint(r.x,r.y):null;for(;n&&n.parentElement!==t;)n=n.parentElement;if(!n&&t.matches("tr")){const s=o=>{const l=o.getBoundingClientRect();return r.x>l.left&&r.x<l.left+l.width&&r.y>l.top&&r.y<l.top+l.height};n=Array.from(t.children).find(s)||null}const a=t.children;for(let s=0;s<a.length;s++)if(a[s]===n)return s;return-1}class Gn extends i.Component{constructor(){super(...arguments),this.element=null}componentDidMount(){const{columnResize:t}=this.props;t&&t.resizable&&t.setIsRtl(Tr(this.element))}render(){return i.createElement("thead",{className:"k-table-thead k-grid-header",role:"presentation",ref:t=>this.element=t,...Fr},this.props.headerRow,this.props.filterRow)}}function zr(e){const t=e.onClick?{onClick:e.onClick}:{},r=i.createElement("span",{className:"k-link",...t},i.createElement("span",{className:"k-column-title"},e.title||e.field||" "),e.children);return i.createElement(i.Fragment,null,e.render?e.render.call(void 0,r,e):r)}const _r=(...e)=>Object.assign({allowUnsort:!0,mode:"single"},...e);class Pr extends i.Component{constructor(){super(...arguments),this.draggable=null,this.isDragged=!1,this.onDrag=t=>{this.isDragged=!0;const r=this.draggable&&this.draggable.element;r&&this.props.resize(t.event,r,!1)},this.onRelease=t=>{if(!this.isDragged)return;const r=this.draggable&&this.draggable.element;r&&this.props.resize(t.event,r,!0),this.isDragged=!1},this.onDoubleClick=t=>{if(this.isDragged)return;const r=this.draggable&&this.draggable.element;r&&this.props.autofit&&this.props.autofit(t,r)}}render(){return i.createElement(m.Draggable,{onPress:t=>{t.event.originalEvent.stopPropagation()},onDrag:this.onDrag,onRelease:this.onRelease,ref:t=>{this.draggable=t}},i.createElement("span",{className:"k-column-resizer",style:{touchAction:"none"},draggable:!1,onDoubleClick:this.onDoubleClick}))}}class Hn extends i.PureComponent{constructor(){super(...arguments),this.draggable=null,this.onPress=t=>{const r=this.draggable&&this.draggable.element;r&&this.props.pressHandler&&this.props.pressHandler(t.event,r)},this.onDrag=t=>{const r=this.draggable&&this.draggable.element;r&&this.props.dragHandler&&this.props.dragHandler(t.event,r)},this.onRelease=t=>{this.draggable&&this.draggable.element&&this.props.releaseHandler&&this.props.releaseHandler(t.event)}}render(){return i.createElement(m.Draggable,{onPress:this.onPress,onDrag:this.onDrag,onRelease:this.onRelease,ref:t=>{this.draggable=t}},i.createElement("tr",{className:"k-table-row","aria-rowindex":this.props.ariaRowIndex,role:"row"},this.props.children))}}const $n={true:{asc:"desc",desc:"","":"asc"},false:{asc:"desc",desc:"asc","":"asc"}},Wn={none:"none",asc:"ascending",desc:"descending"};class qr extends i.Component{constructor(){super(...arguments),this.cellClick=(t,r)=>{if(t.preventDefault(),!this.props.sortChange)return;const{allowUnsort:n,mode:a}=_r(this.props.sortable||!1,r.sortable||!1),s=(this.props.sort||[]).filter(u=>u.field===r.field)[0],o=$n[n][s&&s.dir||""],l=a==="single"?[]:(this.props.sort||[]).filter(u=>u.field!==r.field);o!==""&&r.field&&l.push({field:r.field,dir:o}),this.props.sortChange(t,l,r.field)},this.cellKeyDown=(t,r)=>{t.isDefaultPrevented()||t.keyCode===m.Keys.enter&&this.cellClick(t,r)},this.cells=t=>t.map((r,n)=>{const a=this.props.columns[r],{columnResize:s}=this.props,o=s&&s.resizable&&a.resizable,l=this.props.sortable&&a.sortable,u=this.props.sort?this.props.sort.findIndex(E=>E.field===a.field):-1,d=u>=0&&this.props.sort[u].dir||"none",h={sort:this.props.sort,onSortChange:this.props.sortChange,filter:this.props.columnMenuFilter,onFilterChange:this.props.columnMenuFilterChange,field:a.field},g={field:a.field,onClick:l&&(E=>this.cellClick(E,a))||void 0,selectionChange:this.props.selectionChange,title:a.title,selectionValue:a.headerSelectionValue,render:this.props.cellRender,children:this.sortIcon(u),sort:this.props.sort,sortable:this.props.sortable,sortChange:this.props.sortChange,filterChange:this.props.filterChange,columns:this.props.columns,columnMenuWrapperProps:h},v=a.columnMenu||this.props.columnMenu,f=m.classNames("k-table-th",{"k-first":a.kFirst,"k-filterable":!!v,"k-header":!0,"k-grid-header-sticky":a.locked,"k-sorted":this.props.sort&&this.props.sort.some(E=>E.field===a.field)},a.headerClassName),b=a.locked!==void 0?{left:a.left,right:a.right,borderRightWidth:a.rightBorder?"1px":""}:{},I=L.provideLocalizationService(this).toLanguageString(ut,C[ut]);let x=a.isAccessible?{ariaSort:l?Wn[d]:void 0,role:"columnheader",ariaColumnIndex:a.ariaColumnIndex,ariaSelected:!1,ariaDescription:l?I:""}:{role:"presentation"};return i.createElement(Te,{key:n,colSpan:a.colSpan,rowSpan:a.rowSpan,className:f,style:b,columnId:a.id,navigatable:a.navigatable,onKeyDown:l&&(E=>this.cellKeyDown(E,a))||void 0,...x},a.headerCell&&i.createElement(a.headerCell,{...g}),!a.headerCell&&i.createElement("span",{className:"k-cell-inner"},i.createElement(zr,{...g}),v&&i.createElement(v,{...h})),s&&o&&i.createElement(Pr,{key:"ColumnResizer",resize:(E,S,A)=>s.dragHandler(E,a,S,A)}))})}sortIcon(t){if(!this.props.sort||t<0)return null;const r=this.props.sort[t].dir;return r?[i.createElement(m.IconWrap,{key:1,name:`sort-${r}-small`,icon:r==="asc"?N.sortAscSmallIcon:N.sortDescSmallIcon}),this.props.sort.length>1&&i.createElement("span",{key:2,className:"k-sort-order"},t+1)]:null}render(){return this.props.columnsMap.map((t,r)=>this.props.pressHandler&&i.createElement(Hn,{key:r,pressHandler:this.props.pressHandler,dragHandler:this.props.dragHandler,releaseHandler:this.props.releaseHandler,ariaRowIndex:r+1},this.cells(t))||i.createElement("tr",{className:"k-table-row","aria-rowindex":r+1,role:"row"},this.cells(t)))}}L.registerForLocalization(qr);function Vn(e){const t=[i.createElement("input",{key:0,checked:e.selectionValue,id:e.inputId,type:"checkbox",className:"k-checkbox k-checkbox-md k-rounded-md",onChange:r=>e.selectionChange({field:e.field,syntheticEvent:r})}),i.createElement("label",{key:1,className:"k-checkbox-label",htmlFor:e.inputId})];return i.createElement(i.Fragment,null,e.render?e.render.call(void 0,t,e):t)}function Yn(e){const{enabled:t,columns:r=[],tableViewPortWidth:n,scrollLeft:a}=e,s=r.map(()=>1),o=r.map(()=>!1);if(!t)return{colSpans:s,hiddenColumns:o};const l=r.map(E=>parseFloat((E.width||"").toString())||10);let u=0;for(let E=0;E<r.length;E++){if(r[E].locked)continue;const S=E<l.length-1?l[E+1]:0;if(u+l[E]+S<a)o[E]=!0,u+=l[E];else break}const d=l.reduce((E,S)=>E+S,0);u=0;for(let E=r.length-1;E>=0;E--)if(!r[E].locked)if(u+2*l[E]<d-n-a)o[E]=!0,u+=l[E];else break;const h=[...o],g=E=>E;let v=h.lastIndexOf(!1),f=h.some(g),b=h.every(g),I,x;for(;f&&h.length&&(v!==-1||b);){for(v<h.length-1&&(I=b?h.length:h.length-v-1,x=h.length-I,x===0&&(x=I-1),o[x]=!1,s[x]=I,h.splice(v+1,I));h.length&&!h[h.length-1];)h.pop();v=h.lastIndexOf(!1),f=h.some(g),b=h.every(g)}return{colSpans:s,hiddenColumns:o}}class jn{constructor(t){this.columns=[],this.resizable=!1,this.isRtl=!1,this.setIsRtl=r=>{this.isRtl=r},this.onResize=t,this.dragHandler=this.dragHandler.bind(this)}dragHandler(t,r,n,a){const s=t.originalEvent;a||(s.preventDefault(),s.stopPropagation(),s.stopImmediatePropagation());const o=n.parentElement;if(!o||!o.parentElement)return;const l=o.clientWidth;let u;if(this.isRtl?(u=n.getBoundingClientRect().right-n.offsetWidth/2-t.clientX,u+=l):u=l+t.clientX-n.getBoundingClientRect().left-n.offsetWidth/2,!a&&Math.abs(u-l)<1)return;this.setWidths(r,Math.floor(u)/l);const d=this.columns.filter(h=>!h.children.length).indexOf(r);this.onResize(d,l,u,s,a)}setWidths(t,r){const n=this.columns.indexOf(t),a=[];let s=t.children.length;for(let o=n+1;s>0&&o<this.columns.length;o++,s--){const l=this.columns[o];l.children.length?s+=l.children.length:a.push(l)}a.length===0&&a.push(t),a.forEach(o=>{let l=o.width?parseFloat(o.width.toString())*r:0;const u=o.minResizableWidth===void 0?10:o.minResizableWidth;l<u&&(l=u),o.width=Math.floor(l)}),this.updateColElements(a)}updateColElements(t){const r=this.columns.filter(a=>!a.children.length);let n=1e-10;for(let a=0;a<t.length;a++){const s=r.indexOf(t[a]),o=parseFloat((t[a].width||0).toString());n+=o-Math.floor(o);const l=Math.floor(o)+Math.floor(n);n-=Math.floor(n),this.setColWidth(this.colGroupMain&&this.colGroupMain.children[s],l),this.setColWidth(this.colGroupHeader&&this.colGroupHeader.children[s],l),this.setColWidth(this.colGroupFooter&&this.colGroupFooter.children[s],l)}}setColWidth(t,r){t&&(t.style.width=r+"px")}}class Un{constructor(t,r,n){this.columns=[],this.reorderable=!1,this.groupable=!1,this.startColumn=-1,this.startGroup=-1,this.currentColumn=-1,this.currentGroup=-1,this.dropElementClue=null,this.dragElementClue=null,this.groupPanelDivElement=null,this.refGroupPanelDiv=a=>{this.groupPanelDivElement=a},this.refDropElementClue=a=>{this.dropElementClue=a},this.refDragElementClue=a=>{this.dragElementClue=a},this.pressHandler=(a,s)=>{const o=this.getColumnIndex(a,s);if(this.startGroup=this.getGroupIndex(a),o>=0){const l=this.columns[o];(l.reorderable&&this.reorderable||l.groupable&&this.groupable)&&(this.startColumn=o)}},this.dragHandler=(a,s)=>{if(a.isTouch||a.originalEvent.preventDefault(),a.originalEvent.stopPropagation(),this.startColumn===-1&&this.startGroup===-1)return;this.currentColumn=this.getColumnIndex(a,s),this.currentGroup=this.getGroupIndex(a),this.groupPanelDivElement&&this.startGroup>=0&&(this.currentGroup=Math.min(this.currentGroup,this.groupPanelDivElement.children.length-2));const o=!this.isValid();o&&(this.currentColumn=-1,this.currentGroup=-1);const l=this.currentColumn>=0?s.children[this.columns[this.currentColumn].index]:this.groupPanelDivElement&&this.groupPanelDivElement.children[this.currentGroup];this.updateDragElementClue(a,s,l,o),this.updateDropElementClue(a,s,l,o)},this.releaseHandler=a=>{const s=this.startColumn,o=this.currentColumn,l=this.startGroup,u=this.currentGroup;this.dropElementClue&&this.dropElementClue.setState({visible:!1}),this.dragElementClue&&this.dragElementClue.setState({visible:!1});const d=this.isValid();this.startColumn=this.startGroup=this.currentColumn=this.currentGroup=-1,d&&(s>=0&&o>=0?this.columnReorder(s,o,a.originalEvent):l>=0&&u>=0?this.groupReorder(l,u,a.originalEvent):s>=0&&u>=0&&this.columnToGroup(s,u,a.originalEvent))},this.columnReorder=t,this.groupReorder=r,this.columnToGroup=n}getColumnIndex(t,r){if(!r||r.parentElement===this.groupPanelDivElement)return-1;const n=xt(t,r);if(n===-1)return-1;for(let a=0;a<r.parentNode.children.length;a++)if(r.parentNode.children[a]===r)return this.columns.findIndex(s=>s.index===n&&s.depth===a);return-1}getGroupIndex(t){return xt(t,this.groupPanelDivElement)}isValid(){return this.startGroup>=0?this.currentGroup>=0&&this.currentGroup!==this.startGroup:this.startColumn===-1?!1:this.currentGroup>=0?this.columns[this.startColumn].groupable===!0&&this.groupable===!0:this.reorderable===!0&&this.currentColumn>=0&&this.currentColumn!==this.startColumn&&this.columns[this.startColumn].reorderable===!0&&this.columns[this.currentColumn].parentIndex===this.columns[this.startColumn].parentIndex}updateDragElementClue(t,r,n,a){if(!this.dragElementClue)return;const s=this.startColumn>=0?r.children[this.columns[this.startColumn].index].innerText:r.innerText;this.dragElementClue.setState({visible:!0,top:t.pageY+10,left:t.pageX,innerText:s,status:a||!n?"k-i-cancel":"k-i-plus"})}updateDropElementClue(t,r,n,a){if(!this.dropElementClue)return;if(a||!n){this.dropElementClue.setState({visible:!1});return}const s=n.getBoundingClientRect();let o=s.left+t.pageX-t.clientX-6;(this.currentColumn>this.startColumn||this.currentGroup>this.startGroup&&this.startGroup!==-1)&&(o+=s.width);const l=s.top+t.pageY-t.clientY;this.dropElementClue.setState({visible:!0,top:l,left:o,height:this.currentColumn>=0?r.clientHeight:s.height})}}class Xn extends i.PureComponent{constructor(t){super(t),this.elementRef=i.createRef(),this.state={visible:!1,top:0,left:0,innerText:"",status:"k-i-cancel"},this.hiddenElementRef=i.createRef()}get element(){return this.elementRef.current}render(){const t=this.hiddenElementRef.current,{status:r}=this.state,n=this.state.visible&&m.canUseDOM&&Ye.createPortal(i.createElement("div",{ref:this.elementRef,className:"k-header k-drag-clue",style:{display:"block",position:"absolute",zIndex:2e4,padding:"8px 12px",top:this.state.top+"px",left:this.state.left+"px"}},i.createElement(m.IconWrap,{className:"k-drag-status",name:r,icon:r==="k-i-cancel"?N.cancelIcon:N.plusIcon}),this.state.innerText),t&&t.ownerDocument?t.ownerDocument.body:document.body);return i.createElement(i.Fragment,null,n,i.createElement("div",{ref:this.hiddenElementRef,style:{display:"none"}}))}}class Zn extends i.PureComponent{constructor(t){super(t),this.state={height:0,visible:!1,left:0,top:0},this.hiddenElementRef=i.createRef()}render(){const t=this.hiddenElementRef.current,r=this.state.visible&&m.canUseDOM&&Ye.createPortal(i.createElement("div",{className:"k-grouping-dropclue",style:{zIndex:1e4,display:"block",top:this.state.top+"px",left:this.state.left+"px",height:this.state.height+"px"}}),t&&t.ownerDocument?t.ownerDocument.body:document.body);return i.createElement(i.Fragment,null,r,i.createElement("div",{ref:this.hiddenElementRef,style:{display:"none"}}))}}class yt extends i.Component{constructor(){super(...arguments),this.onChange=t=>{this.props.onFilterChange.call(void 0,{nextFilter:{...this.props.filter,value:t.value}})}}render(){const t=L.provideLocalizationService(this),{ariaLabel:r=t.toLanguageString(at,C[at])}=this.props;return i.createElement(Y.TextBox,{value:this.props.filter.value||"",onChange:this.onChange,"aria-label":r})}}yt.propTypes={filter:p.object.isRequired,onFilterChange:p.func.isRequired,ariaLabel:p.string},L.registerForLocalization(yt);class It extends i.Component{constructor(){super(...arguments),this.onChange=t=>{this.props.onFilterChange.call(void 0,{nextFilter:{...this.props.filter,value:t.value}})}}render(){const t=L.provideLocalizationService(this),{min:r,max:n,filter:a,ariaLabel:s=t.toLanguageString(nt,C[nt])}=this.props;return i.createElement(Y.NumericTextBox,{value:typeof a.value=="number"?a.value:null,onChange:this.onChange,ariaLabel:s,"aria-valuemin":r,"aria-valuemax":n,min:r,max:n})}}It.propTypes={filter:p.object.isRequired,onFilterChange:p.func.isRequired},L.registerForLocalization(It);class Gr extends i.Component{constructor(){super(...arguments),this.onChange=t=>{this.props.onFilterChange.call(void 0,{nextFilter:{...this.props.filter,value:t.value}})}}render(){const t=this.props.filter;return i.createElement(je.DatePicker,{value:t.value||null,onChange:this.onChange,ariaLabel:this.props.ariaLabel})}}Gr.propTypes={filter:p.object.isRequired,onFilterChange:p.func.isRequired,ariaLabel:p.string};class ze extends i.Component{constructor(){super(...arguments),this.onChange=t=>{this.props.onFilterChange.call(void 0,{nextFilter:{...this.props.filter,value:t.value.value}})}}render(){const t=L.provideLocalizationService(this),{filter:r,data:n=[],defaultItem:a,ariaLabel:s=t.toLanguageString(rt,C[rt])}=this.props,o=n.map(l=>({...l,text:t.toLanguageString(l.text,C[l.text]||l.text)}));return i.createElement(H.DropDownList,{value:o.find(l=>l.value===r.value)||null,onChange:this.onChange,defaultItem:a,data:o,textField:"text",ariaLabel:s})}}ze.propTypes={filter:p.object.isRequired,onFilterChange:p.func.isRequired,data:p.arrayOf(p.shape({text:p.string,value:p.any})),defaultItem:p.any,ariaLabel:p.string},L.registerForLocalization(ze);class Hr extends i.Component{constructor(){super(...arguments),this.data=[{text:Vt,value:!0},{text:Yt,value:!1}]}render(){return i.createElement(ze,{filter:this.props.filter,onFilterChange:this.props.onFilterChange,data:this.props.data||this.data,defaultItem:this.props.defaultItem,ariaLabel:this.props.ariaLabel})}}Hr.propTypes={filter:p.object.isRequired,onFilterChange:p.func.isRequired,data:p.arrayOf(p.shape({text:p.string,value:p.any})),ariaLabel:p.string,defaultItem:p.any};const Jn=[{text:_t,operator:"contains"},{text:Pt,operator:"doesnotcontain"},{text:re,operator:"eq"},{text:ne,operator:"neq"},{text:zt,operator:"startswith"},{text:qt,operator:"endswith"},{text:Oe,operator:"isnull"},{text:Ae,operator:"isnotnull"},{text:Bt,operator:"isempty"},{text:Tt,operator:"isnotempty"}],Qn=[{text:re,operator:"eq"},{text:ne,operator:"neq"},{text:Gt,operator:"gte"},{text:Ht,operator:"gt"},{text:$t,operator:"lte"},{text:Wt,operator:"lt"},{text:Oe,operator:"isnull"},{text:Ae,operator:"isnotnull"}],ea=[{text:re,operator:"eq"},{text:ne,operator:"neq"},{text:jt,operator:"gte"},{text:Ut,operator:"gt"},{text:Xt,operator:"lt"},{text:Zt,operator:"lte"},{text:Oe,operator:"isnull"},{text:Ae,operator:"isnotnull"}],ta=[{text:re,operator:"eq"},{text:ne,operator:"neq"}];class ra{static get text(){return[...Jn]}static get numeric(){return[...Qn]}static get date(){return[...ea]}static get boolean(){return[...ta]}}const Ft=e=>e==="contains"||e==="doesnotcontain"||e==="startswith"||e==="endswith",_e=e=>e==="isnull"||e==="isnotnull"||e==="isempty"||e==="isnotempty",$r=e=>{e.value===void 0&&!_e(e.operator)&&(e.value=Ft(e.operator)?"":null)};class Pe extends i.Component{constructor(){super(...arguments),this.onFieldChange=t=>{const r=t.value.name,n=this.props.fields.find(l=>l.name===r),a=this.props.filter,s=n&&!n.operators.some(l=>l.operator===a.operator)?n.operators[0].operator:a.operator,o={field:r,operator:s};$r(o),this.triggerOnFilterChange(a,o,t)},this.onOperatorChange=t=>{const r=t.value.operator,n=this.props.filter;let a;if(_e(r)){let{value:s,...o}=n;a={...o,operator:r}}else a={...n,operator:r};$r(a),this.triggerOnFilterChange(n,a,t)},this.onInputChange=t=>{const r=this.props.filter;let n=t.nextFilter;if(_e(n.operator)){const a=this.props.fields.find(s=>s.name===n.field);n={...n,operator:a&&a.operators[0].operator||n.operator}}this.triggerOnFilterChange(r,n,t)},this.triggerOnFilterChange=(t,r,n)=>{const a={prevFilter:t,nextFilter:r,syntheticEvent:n.syntheticEvent,nativeEvent:n.nativeEvent,target:this};this.props.onChange.call(void 0,a)},this.onFilterRemove=t=>{const r={filter:this.props.filter,syntheticEvent:t.syntheticEvent,nativeEvent:t.nativeEvent,target:this};this.props.onRemove.call(void 0,r)}}render(){const t=L.provideLocalizationService(this),{fields:r,filter:n,ariaLabel:a=t.toLanguageString(Qe,C[Qe])}=this.props,s=r.find(l=>l.name===n.field),o=(s&&s.operators||[]).map(l=>({...l,text:t.toLanguageString(l.text,C[l.text]||l.text)}));return i.createElement("div",{className:"k-filter-toolbar"},i.createElement(K.Toolbar,{keyboardNavigation:!1,role:"toolbar",ariaLabel:a},i.createElement(K.ToolbarItem,{className:"k-filter-field"},i.createElement(H.DropDownList,{className:"k-filter-dropdown",data:r,textField:"label",value:r.find(l=>l.name===n.field),onChange:this.onFieldChange,ariaLabel:t.toLanguageString(et,C[et])})),i.createElement(K.ToolbarItem,{className:"k-filter-operator"},i.createElement(H.DropDownList,{data:o,textField:"text",value:o.find(l=>l.operator===n.operator),onChange:this.onOperatorChange,ariaLabel:t.toLanguageString(tt,C[tt])})),i.createElement(K.ToolbarItem,{className:"k-filter-value"},s&&i.createElement(s.filter,{filter:n,onFilterChange:this.onInputChange,min:s.min,max:s.max})),i.createElement(K.Button,{className:"k-toolbar-button",title:t.toLanguageString(ie,C[ie]),icon:"x",svgIcon:N.xIcon,fillMode:"flat",type:"button",onClick:this.onFilterRemove})))}}Pe.propTypes={filter:p.object.isRequired,fields:p.array.isRequired,ariaLabel:p.string,onChange:p.func.isRequired,onRemove:p.func.isRequired},L.registerForLocalization(Pe);const Wr=class extends i.Component{constructor(){super(...arguments),this.onGroupRemove=e=>{const t={filter:this.props.filter,target:this,syntheticEvent:e,nativeEvent:e.nativeEvent};this.props.onRemove.call(void 0,t)},this.onAddExpression=e=>{const t=this.props.filter,r=this.props.fields[0],n={field:r.name,operator:r.operators[0].operator};n.value=Ft(n.operator)?"":null;const a={nextFilter:{...t,filters:[...t.filters,n]},prevFilter:t,target:this,syntheticEvent:e,nativeEvent:e.nativeEvent};this.props.onChange.call(void 0,a)},this.onAddGroup=e=>{const t=this.props.filter,r={nextFilter:{...t,filters:[...t.filters,{...this.props.defaultGroupFilter}]},prevFilter:t,target:this,syntheticEvent:e,nativeEvent:e.nativeEvent};this.props.onChange.call(void 0,r)},this.onLogicAnd=e=>this.changeLogic("and",e),this.onLogicOr=e=>this.changeLogic("or",e),this.changeLogic=(e,t)=>{const r=this.props.filter;if(r.logic!==e){const n={nextFilter:{...r,logic:e},prevFilter:r,target:this,syntheticEvent:t,nativeEvent:t.nativeEvent};this.props.onChange.call(void 0,n)}},this.replaceFilter=(e,t)=>{const r=this.props.filter,n=r.filters.map(a=>a===e?t:a);return{...r,filters:n}},this.onChange=e=>{const r={nextFilter:this.replaceFilter(e.prevFilter,e.nextFilter),prevFilter:this.props.filter,syntheticEvent:e.syntheticEvent,nativeEvent:e.nativeEvent,target:this};this.props.onChange.call(void 0,r)},this.onRemove=e=>{const t=this.props.filter,r=t.filters.filter(a=>a!==e.filter),n={nextFilter:{...t,filters:r},prevFilter:t,syntheticEvent:e.syntheticEvent,nativeEvent:e.nativeEvent,target:this};this.props.onChange.call(void 0,n)}}render(){const e=L.provideLocalizationService(this),{fields:t,filter:r,ariaLabel:n=e.toLanguageString(Je,C[Je])}=this.props;return i.createElement(i.Fragment,null,i.createElement("div",{className:"k-filter-toolbar"},i.createElement(K.Toolbar,{keyboardNavigation:!1,role:"toolbar",ariaLabel:n},i.createElement(K.ButtonGroup,{className:"k-toolbar-button-group"},i.createElement(K.Button,{className:"k-toolbar-button",togglable:!0,onClick:this.onLogicAnd,selected:r.logic==="and",type:"button"},e.toLanguageString(Xe,C[Xe])),i.createElement(K.Button,{className:"k-toolbar-button",togglable:!0,onClick:this.onLogicOr,selected:r.logic==="or",type:"button"},e.toLanguageString(Ze,C[Ze]))),i.createElement(K.Button,{className:"k-toolbar-button",title:e.toLanguageString(ae,C[ae]),icon:"filter-add-expression",svgIcon:N.filterAddExpressionIcon,type:"button",onClick:this.onAddExpression},e.toLanguageString(ae,C[ae])),i.createElement(K.Button,{className:"k-toolbar-button",title:e.toLanguageString(se,C[se]),icon:"filter-add-group",svgIcon:N.filterAddGroupIcon,type:"button",onClick:this.onAddGroup},e.toLanguageString(se,C[se])),i.createElement(K.Button,{className:"k-toolbar-button",title:e.toLanguageString(ie,C[ie]),icon:"x",svgIcon:N.xIcon,fillMode:"flat",type:"button",onClick:this.onGroupRemove}))),r.filters.length>0&&i.createElement("ul",{role:"group",className:"k-filter-lines"},r.filters.map((a,s)=>i.createElement("li",{role:"treeitem",key:s,className:"k-filter-item"},te.isCompositeFilterDescriptor(a)?i.createElement(Wr,{filter:a,fields:t,onChange:this.onChange,onRemove:this.onRemove,defaultGroupFilter:this.props.defaultGroupFilter,ariaLabel:this.props.ariaLabel,ariaLabelExpression:this.props.ariaLabelExpression}):i.createElement(Pe,{filter:a,fields:t,ariaLabel:this.props.ariaLabelExpression,onChange:this.onChange,onRemove:this.onRemove})))))}};let qe=Wr;qe.propTypes={filter:p.object.isRequired,fields:p.array.isRequired,ariaLabel:p.string,ariaLabelExpression:p.string,onChange:p.func.isRequired,onRemove:p.func.isRequired,defaultGroupFilter:p.object.isRequired},L.registerForLocalization(qe);class Vr extends i.Component{constructor(t){super(t),this.onFilterChange=r=>{const n={filter:r.nextFilter,syntheticEvent:r.syntheticEvent,nativeEvent:r.nativeEvent,target:this};this.props.onChange.call(void 0,n)},this.onGroupRemove=r=>{const n={filter:{...this.props.value,filters:[]},syntheticEvent:r.syntheticEvent,nativeEvent:r.nativeEvent,target:this};this.props.onChange.call(void 0,n)},m.validatePackage(ht)}render(){return i.createElement("div",{className:m.classNames("k-filter",this.props.className),style:this.props.style},i.createElement("ul",{role:"tree",className:"k-filter-container","aria-label":this.props.ariaLabel},i.createElement("li",{role:"treeitem",className:"k-filter-group-main"},i.createElement(qe,{filter:this.props.value,fields:this.props.fields,ariaLabel:this.props.ariaLabelGroup,ariaLabelExpression:this.props.ariaLabelExpression,onChange:this.onFilterChange,onRemove:this.onGroupRemove,defaultGroupFilter:this.props.defaultGroupFilter||{logic:"and",filters:[]}}))))}}Vr.propTypes={className:p.string,style:p.object,fields:function(e,t){const r=e[t];if(r===void 0)return new Error(`Property '${t}' is missing.`);if(Array.isArray(r)){if(Object.keys(r.reduce((n,a)=>({...n,[a.name]:1}),{})).length!==r.length)return new Error(`Property '${t}' needs to contain objects with unique 'name' field.`)}else return new Error(`Property '${t}' needs to be Array<FieldSettings>.`);return null},ariaLabelGroup:p.string,ariaLabelExpression:p.string,value:p.object.isRequired,onChange:p.func.isRequired};const Ge=e=>i.createElement("div",{onClick:e.onClick,className:m.classNames("k-columnmenu-item",{"k-selected":e.selected},{"k-disabled":e.disabled})},(e.iconClass||e.svgIcon)&&i.createElement(m.IconWrap,{name:e.iconClass?m.toIconName(e.iconClass):void 0,icon:e.svgIcon}),e.title),na=[{text:tr,operator:"contains"},{text:rr,operator:"doesnotcontain"},{text:we,operator:"eq"},{text:Ke,operator:"neq"},{text:er,operator:"startswith"},{text:nr,operator:"endswith"},{text:ke,operator:"isnull"},{text:Re,operator:"isnotnull"},{text:Jt,operator:"isempty"},{text:Qt,operator:"isnotempty"}],aa=[{text:we,operator:"eq"},{text:Ke,operator:"neq"},{text:ar,operator:"gte"},{text:sr,operator:"gt"},{text:ir,operator:"lte"},{text:or,operator:"lt"},{text:ke,operator:"isnull"},{text:Re,operator:"isnotnull"}],sa=[{text:we,operator:"eq"},{text:Ke,operator:"neq"},{text:cr,operator:"gte"},{text:ur,operator:"gt"},{text:dr,operator:"lt"},{text:hr,operator:"lte"},{text:ke,operator:"isnull"},{text:Re,operator:"isnotnull"}],ia=[{text:lr,operator:""}];class ue{static get text(){return[...na]}static get numeric(){return[...aa]}static get date(){return[...sa]}static get boolean(){return[...ia]}}const Lt=e=>{const{filter:t,onFilterChange:r,operators:n,initialFilter:a}=e,s=i.useCallback(d=>{const h=t,g=d.target.value.operator,v=h?{...h,operator:g}:{value:a.value,operator:g};r.call(void 0,d.syntheticEvent,v,h)},[t,r,a]),o=i.useCallback(d=>{const h=d.target.value,g=t,v=g?{...g,value:h}:{value:h,operator:n[0].operator};r.call(void 0,d,v,g)},[t,r,n]),l=L.useLocalization(),u=n.map(d=>({...d,text:l.toLanguageString(d.text,C[d.text])}));return i.createElement(i.Fragment,null,i.createElement(H.DropDownList,{value:u.find(d=>d.operator===t.operator)||null,onChange:s,data:u,textField:"text"}),i.createElement(e.input,{value:t.value,onChange:o}))},Yr=e=>{const{filter:t,onFilterChange:r}=e,n=i.useCallback(s=>r.call(void 0,s.syntheticEvent,{...t,value:s.value},t),[t,r]),a=ue.boolean[0].text;return i.createElement(Y.Checkbox,{onChange:n,checked:t.value,label:L.useLocalization().toLanguageString(a,C[a]),labelPlacement:"after"})},St=e=>{const t=i.useCallback(a=>i.createElement(Y.Input,{...a,value:a.value||""}),[]),r=i.useRef(ue.text),n=i.useRef({operator:"",value:""});return i.createElement(Lt,{initialFilter:n.current,input:t,operators:e.operators||r.current,...e})},Dt=e=>{const t=i.useCallback(a=>i.createElement(Y.NumericTextBox,{...a,value:a.value||null}),[]),r=i.useRef(ue.numeric),n=i.useRef({operator:"",value:null});return i.createElement(Lt,{initialFilter:n.current,input:t,operators:e.operators||r.current,...e})},Mt=e=>{const t=i.useCallback(a=>i.createElement(je.DatePicker,{...a,value:a.value||null}),[]),r=i.useRef(ue.date),n=i.useRef({operator:"",value:null});return i.createElement(Lt,{initialFilter:n.current,input:t,operators:e.operators||r.current,...e})},oa=[{text:pr,logic:"and"},{text:gr,logic:"or"}],He=e=>{const t=L.useLocalization(),r=(e.data||oa).map(n=>({...n,text:t.toLanguageString(n.text,C[n.text])}));return i.createElement(H.DropDownList,{onChange:e.onChange,className:"k-filter-and",textField:"text",...e,data:r,value:r.find(n=>n.logic===e.value)})},jr=e=>i.createElement("div",{className:"k-columnmenu-item-content"},i.createElement(un.Reveal,{style:{position:"relative",display:"block"}},e.show&&i.createElement("div",{className:"kendo-grid-filter-menu-container"},i.createElement("form",{className:"k-filter-menu",onSubmit:e.onSubmit,onReset:e.onReset},i.createElement("div",{className:"k-filter-menu-container"},e.children,i.createElement("div",{className:"k-actions k-hstack k-justify-content-stretch"},e.actions)))))),Ur=e=>{const t=L.useLocalization();return i.createElement(jr,{...e,actions:i.createElement(i.Fragment,null,i.createElement(K.Button,{type:"reset"},t.toLanguageString(st,C[st])),i.createElement(K.Button,{themeColor:"primary"},t.toLanguageString(it,C[it])))})},$e=e=>{m.validatePackage(ht);const t=i.useRef([]),{field:r,filter:n,sort:a=t.current,onSortChange:s,onFilterChange:o,initialFilter:l,sortAsc:u=!1,sortDesc:d=!1,filterContent:h=[],expandFilters:g=!1}=e,[v,f]=i.useState(!1),[b,I]=i.useState(g),[x,E]=i.useState(r&&l?l(r):null),S=i.useRef(null),A=i.useRef(null),D=i.useRef(null),y=i.useRef(!1),F=i.useCallback(()=>(n||[]).find(w=>w.filters.every(B=>!te.isCompositeFilterDescriptor(B)&&B.field===r)),[n,r]),M=i.useCallback(()=>{f(!1)},[]),_=i.useCallback(()=>{if(y.current){y.current=!1;return}clearTimeout(D.current),D.current=window.setTimeout(()=>{M()})},[M]),P=i.useCallback(()=>clearTimeout(D.current),[]),q=i.useCallback(w=>{y.current=v&&w.currentTarget===S.current},[v]),W=i.useCallback(()=>{f(!v),r&&l&&(I(v?!1:g),E(v?x:F()||l(r)))},[F,r,v,x,l,g]);i.useEffect(()=>{v&&A.current&&A.current.focus()},[v]);const R=i.useCallback(()=>I(!b),[b]),k=i.useCallback((w,B)=>{const T=[...a],z=T.findIndex(Xa=>Xa.field===r),Ce={field:r,dir:B};z>=0?T[z].dir!==Ce.dir?T.splice(z,1,Ce):T.splice(z,1):T.push(Ce),M(),s&&s.call(void 0,w,T,r)},[a,r,s,M]),U=i.useCallback((w,B,T)=>{const z={...x,filters:[...x.filters]},Ce=z.filters.indexOf(T);z.filters.splice(Ce,1,B),E(z)},[x]),Q=i.useCallback(w=>{w.preventDefault();const B=(n||[]).slice(),T=F(),z=T?B.indexOf(T):-1;z>=0?B.splice(z,1,x):B.push(x),M(),o&&o.call(void 0,w,B,r)},[n,x,r,o,M,F]),We=i.useCallback(w=>{const B=(n||[]).slice(),T=F(),z=T?B.indexOf(T):-1;z>=0&&B.splice(z,1),l&&E(l(r)),M(),o&&o.call(void 0,w,B,r)},[n,r,o,l,M,F]),wt=i.useCallback(w=>k(w,"asc"),[k]),Ve=i.useCallback(w=>k(w,"desc"),[k]),Kt=i.useCallback(w=>x&&E({...x,logic:w.value.logic}),[x]),fe=a.find(w=>w.field===r)||{dir:""},[me,Ee,ve]=h,kt=L.useLocalization(),Va=u||d?i.createElement("div",{className:"k-columnmenu-item-wrapper",key:"sorting"},u&&i.createElement(Ge,{title:kt.toLanguageString(lt,C[lt]),iconClass:"k-i-sort-asc-small",svgIcon:N.sortAscSmallIcon,selected:fe.dir==="asc",onClick:wt}),d&&i.createElement(Ge,{title:kt.toLanguageString(ct,C[ct]),iconClass:"k-i-sort-desc-small",svgIcon:N.sortDescSmallIcon,selected:fe.dir==="desc",onClick:Ve})):null,Ya=x&&h.length>0?i.createElement("div",{className:"k-columnmenu-item-wrapper",key:"filtering"},i.createElement(Ge,{iconClass:"k-i-filter",svgIcon:N.filterIcon,title:kt.toLanguageString(ot,C[ot]),onClick:R}),i.createElement(Ur,{show:b,onSubmit:Q,onReset:We},me&&i.createElement(me,{filter:x.filters[0],onFilterChange:U}),Ee&&i.createElement(Ee,{value:x.logic,onChange:Kt}),ve&&i.createElement(ve,{filter:x.filters[1],onFilterChange:U}))):null,on=[Va,Ya],ja=i.createElement("span",{ref:S,onClick:W,onMouseDown:q,className:"k-grid-header-menu k-grid-column-menu"+(F()?" k-active":""),key:"button"},i.createElement(m.IconWrap,{name:"filter",icon:N.filterIcon})),Ua=i.createElement(cn.Popup,{anchor:S.current,show:v,key:"popup",popupClass:"k-column-menu k-column-menu-popup"},i.createElement("div",{ref:A,tabIndex:0,onBlur:_,onFocus:P,style:{outline:"none"}},e.itemsRender?e.itemsRender.call(void 0,on,{closeMenu:M,field:r}):on)),ln=[ja,Ua];return i.createElement(i.Fragment,null,e.render?e.render.call(void 0,ln):ln)},la=e=>{const{field:t,...r}=e,n=i.useCallback(o=>({logic:"and",filters:[{operator:"contains",field:o,value:""},{operator:"contains",field:o,value:""}]}),[]),a=!!e.field,s=a?[St,He,St]:[];return i.createElement($e,{sortAsc:a,sortDesc:a,filterContent:s,initialFilter:a?n:void 0,field:t,...r})},ca=e=>{const{field:t,...r}=e,n=i.useCallback(o=>({logic:"or",filters:[{operator:"eq",field:o,value:null},{operator:"eq",field:o,value:null}]}),[]),a=!!e.field,s=a?[Dt,He,Dt]:[];return i.createElement($e,{sortAsc:a,sortDesc:a,filterContent:s,initialFilter:a?n:void 0,field:t,...r})},ua=e=>{const{field:t,...r}=e,n=i.useCallback(o=>({logic:"or",filters:[{operator:"eq",field:o,value:null},{operator:"eq",field:o,value:null}]}),[]),a=!!e.field,s=a?[Mt,He,Mt]:[];return i.createElement($e,{sortAsc:a,sortDesc:a,filterContent:s,initialFilter:a?n:void 0,field:t,...r})},da=e=>{const{field:t,...r}=e,n=i.useCallback(o=>({logic:"and",filters:[{operator:"eq",field:o,value:!1}]}),[]),a=!!e.field,s=a?[Yr]:[];return i.createElement($e,{sortAsc:a,sortDesc:a,filterContent:s,initialFilter:a?n:void 0,field:t,...r})};function de(e,t,r){return r?{...e,[t]:r.length?[...r]:void 0}:e&&e[t]?[...e[t]]:[]}function Xr(e,t,r){if(e[r]){let n=de(e,r,te.orderBy(de(e,r),t)),a=de(n,r).map(s=>Xr(s,t,r));return{...n,[r]:a}}return e}function ha(e,t,r){let n=te.orderBy(e,t);return n=n.map(a=>Xr(a,t,r)),n}function Zr(e,t,r){let n=de(e,r);if(n&&n.length){n=n.map(l=>Zr(l,t,r));const s={filters:[{filters:t,logic:"and"},{operator:l=>!!(l[r]||[]).length}],logic:"or"},o=te.filterBy(n,s);return de(e,r,o)}return e}function pa(e,t,r){let n={[r]:[...e]};return n=Zr(n,t,r),n[r]||[]}function ga(e,t,r){let n=[];const a=[];for(let s=e.length-1;s>=0;s--){const o=e[s];n.push({root:o,data:t(o),level:[s],levelCount:e.length})}for(;n.length>0;){let s=n.pop();if(a.push({dataItem:s.root,level:[...s.level],...r(s.root),levelCount:s.levelCount}),s.data.length)for(let o=s.data.length-1;o>=0;o--){const l=s.data[o];n.push({root:l,data:t(l),level:[...s.level,o],levelCount:s.data.length})}}return a}const fa=(e,t,r)=>{const n=u=>!!m.getNestedValue(t,u),a=u=>!!m.getNestedValue(r,u),s=u=>{const d=[];return n(u)&&a(u)&&d.push(...m.getNestedValue(r,u)),d},o=(u,d,h)=>{d.push({...u,level:h}),s(u).forEach(g=>o(g,d,h+1))},l=[];return e.forEach(u=>o(u,l,0)),l},ma=(e,t,r,n)=>{let a={},s=[],o;return e.forEach(l=>a[t(l)]={...l}),e.forEach(l=>{o=a[r(l)],o?(o[n]=o[n]||[],o[n].push(a[t(l)])):s.push(a[t(l)])}),s},Ea=(e,t,r)=>m.extendDataItem(e,t,r),va=(e,t,r)=>[...m.mapTree([{[t]:[...e]}],t,a=>Ca(a,r,t))[0][t]],Ca=(e,t,r)=>{const n=e[r]||[],a=n.findIndex(t);if(a!==-1){const s=[...n];return s.splice(a,1),{...e,[r]:s}}return e},ba=(e,t,r,n)=>m.mapTree(e,t,a=>r(a)?{...a,[t]:n(a[t]||[])}:a),Nt=(e,t,r)=>m.getItemPath(e,t,r),xa=(e,t,r,n)=>{const a=[...e],s=Nt(a,t,n),o=s.pop(),l=s.pop(),u=t[t.length-1];if(r){const h=Nt(a,r,n).pop();(l?l[n]:a).splice(u,1),h[n]=h[n]||[],h[n].push(o)}else(l?l[n]:a).splice(u,1),a.push(o);return a},he="groupId",Ot="items",Jr=(e,t,r)=>{e.items&&(e[he]=`${r}${r&&"_"}${e.value}${e.field}`,t>1&&e.items.forEach(n=>Jr(n,t-1,e[he])))},ya=e=>{const{group:t}=e;if(t&&t.length&&e.data)return e.data.forEach(r=>Jr(r,t.length,""))},Ia=e=>{const t=[];return m.mapTree(e.data,Ot,r=>{r[he]&&t.push(r[he])}),t},Fa=e=>m.mapTree(e.data,Ot,t=>m.extendDataItem(t,Ot,{expanded:!e.collapsedIds.some(r=>r===t[he])})),La=e=>{const{navigatable:t,contextStateRef:r,navigationStateRef:n,idPrefix:a}=e;t&&(r.current={activeId:"",level:0},n.current={activeElementIsFocused:!1,prevNavigationIndexes:void 0,idPrefix:a||m.guid(),navigationMatrix:[],lastHeaderIndex:-1})},Sa=e=>{const{scope:t,contextStateRef:r,navigationStateRef:n}=e;if(r.current&&n.current&&t){At(e);const a=n.current.navigationMatrix[0][0],s=O.getActiveElement(t,a);a&&s&&(r.current.activeId=a,s.setAttribute("tabIndex","0"))}},Da=e=>{const{contextStateRef:t,navigationStateRef:r,document:n}=e;if(t.current&&r.current&&n){const a=m.getActiveElement(n),s=O.getNavigatableId(a);s&&s===t.current.activeId&&(r.current.activeElementIsFocused=!0)}},Ma=e=>{const{scope:t,contextStateRef:r,navigationStateRef:n}=e;if(At(e),r.current&&n.current&&t){if(!O.getActiveElement(t,r.current.activeId)){const s=n.current.navigationMatrix[0][0],o=O.getActiveElement(t,s);s&&o&&(r.current.activeId=s,o.setAttribute("tabIndex","0"),n.current.activeElementIsFocused&&o.focus())}n.current.activeElementIsFocused=!1}},Na=(e,t)=>{const{contextStateRef:r}=t;if(e.isDefaultPrevented()||!r.current)return;const n=e.target,a=O.getNavigatableId(n);if(a&&a!==r.current.activeId){const s=O.getClosestScope(n);if(!s)return;const o=O.getActiveElement(s,r.current.activeId);o&&o.setAttribute("tabIndex","-1"),n.setAttribute("tabIndex","0"),r.current.activeId=a}},Oa=(e,t)=>{const{contextStateRef:r,navigationStateRef:n,onNavigationAction:a}=t;if(e.isDefaultPrevented()||!r.current||!n.current)return;if(e.keyCode===m.Keys.esc){const h=O.getClosestNavigatableElement(e.target);O.focusElement({elementForFocus:h,event:e,contextStateRef:r});return}const s=e.target,o=O.getNavigatableId(s),l=O.getNavigatableLevel(s),u=O.getClosestScope(s),d=n.current.navigationMatrix;if(l!==void 0&&u){if(e.keyCode===m.Keys.enter){const h=O.getNavigatableElement(s,{level:l+1});if(h){O.focusElement({elementForFocus:h,event:e,contextStateRef:r,prevElement:s});return}else{const g=O.getFocusableElements(s)[0];O.focusElement({elementForFocus:g,event:e,contextStateRef:r,prevElement:s});return}}if(e.keyCode===m.Keys.up||e.keyCode===m.Keys.down||e.keyCode===m.Keys.left||e.keyCode===m.Keys.right){const h=e.keyCode===m.Keys.up||e.keyCode===m.Keys.left,g=e.keyCode===m.Keys.up||e.keyCode===m.Keys.down;let v;if(n.current&&n.current.prevNavigationIndexes){const[f,b]=n.current.prevNavigationIndexes;d[f][b]===o?v=n.current.prevNavigationIndexes:v=Ct(d,o)}else v=Ct(d,o);if(v){const[f,b]=v,[I,x]=g?Nr(f,b,o,d,h):Or(f,b,o,d,h);if(I){const E=O.getActiveElement(u,I);O.focusElement({elementForFocus:E,event:e,contextStateRef:r,prevElement:s}),n.current.prevNavigationIndexes=x,a&&a({focusElement:E,event:e})}}}}},At=e=>{const{navigationStateRef:t,scope:r}=e;if(!t.current||!r)return;const n=[],a=Dr(r),s=Mr(r);if(!a||!s)return;const o=Array.from(a.children),l=Array.from(s.children);[...o,...l].forEach((u,d)=>{Array.from(u.children).forEach(h=>{const g=Et(h);if(!g)return;const v=h.rowSpan||1,f=h.colSpan||1;let b;for(let I=d,x=d+v;I<x;I++){if(n[I]||(n[I]=[]),b===void 0){const E=n[I].findIndex(S=>!S);b=E>-1?E:n[I].length}n[I][b]=g||""}for(let I=b+1,x=b+f;I<x;I++)n[d][I]=g||""})}),t.current.navigationMatrix=n.filter(u=>!!u),t.current.lastHeaderIndex=o.length-1},Aa={onConstructor:La,onComponentDidMount:Sa,onGetSnapshotBeforeUpdate:Da,onComponentDidUpdate:Ma,onFocus:Na,onKeyDown:Oa,generateMatrix:At},Qr="data-grid-row-index",en="data-grid-col-index",tn="data-prevent-selection",wa="items",J={},Ka=(e,t)=>!e||Array.isArray(e)&&e.length===0?[t]:e.findIndex(n=>n===t)>-1?e.filter(n=>n!==t):[...e,t],V=(e,t)=>{let r=e;for(;r;){if(r.tagName===t)return r;if(r.tagName==="TABLE")return null;r=r.parentElement}return null},pe=e=>{if(!e)return;const t=e.getAttribute(Qr);return t?parseInt(t,10):void 0},ge=e=>{if(!e)return;const t=e.getAttribute(en);return t?parseInt(t,10):void 0},ka=e=>{const t=e.subItemsField||wa,r=m.getter(e.dataItemKey);return m.mapTree(e.data,t,n=>m.extendDataItem(n,t,{[e.selectedField]:e.selectedState[r(n)]}))},Ra=e=>{const{event:t,dataItemKey:r,selectedState:n}=e,{syntheticEvent:a,nativeEvent:s,dataItems:o,componentId:l,mode:u,cell:d,selectedField:h}=t,{target:g,ctrlKey:v,metaKey:f,altKey:b,shiftKey:I}=s;if(a.isDefaultPrevented()||s.keyCode!==m.Keys.enter)return n;const x=V(g,"TD"),E=V(g,"TR"),S=ge(x),A=pe(E);let D={};return x&&E&&A!==void 0&&S!==void 0&&(D=rn({selectedState:n,dataItemKey:r,event:{ctrlKey:v,metaKey:f,altKey:b,shiftKey:I,dataItems:o,cell:d,mode:u,selectedField:h,componentId:l,startColIndex:S,endColIndex:S,startRowIndex:A,endRowIndex:A,isDrag:!1,syntheticEvent:a,nativeEvent:s,target:t.target,dataItem:null}})),D},rn=e=>{const{event:t,dataItemKey:r,selectedState:n}=e,{dataItems:a,startRowIndex:s,endRowIndex:o,startColIndex:l,endColIndex:u,cell:d,isDrag:h,ctrlKey:g,shiftKey:v,metaKey:f,componentId:b,mode:I,dataItem:x}=t,E=m.getter(r);let S={};const A=x!==null;if(I==="single"){const D=a.slice(s,s+1)[0],y=E(D);J[b]={rowIndex:s,colIndex:l},S[y]=d?[l]:!0}else if(h||!v&&!g&&!f&&!A){h||(J[b]={rowIndex:s,colIndex:l});const D=[];for(let F=l;F<=u;F++)D.push(F);a.slice(s,o+1).forEach(F=>{const M=E(F);S[M]=d?[...D]:!0})}else if(g||f||A){J[b]={rowIndex:s,colIndex:l};const y=a.slice(s,o+1)[0],F=E(y);S={...n},S[F]=d&&!A?Ka(S[F],l):!S[F]}else if(v){const D=J[b]&&J[b].rowIndex||0,y=J[b]&&J[b].colIndex||0,F=Math.min(D,s,o),M=Math.max(D,s,o),_=Math.min(y,l,u),P=Math.max(y,l,u),q=[];for(let R=_;R<=P;R++)q.push(R);a.slice(F,M+1).forEach(R=>{const k=E(R);S[k]=d?[...q]:!0})}return S},Ba=m.hasRelativeStackingContext(),nn=e=>{if(!e||!Ba)return null;let t=e.parentElement;for(;t;){if(window.getComputedStyle(t).transform!=="none")return t;t=t.parentElement}},an=e=>{if(e&&e.ownerDocument&&e!==e.ownerDocument.body){const t=e.getBoundingClientRect();return{left:t.left-e.scrollLeft,top:t.top-e.scrollTop}}return{left:0,top:0}},sn=e=>{const t=e?typeof e.enabled=="boolean"?e.enabled:!0:!1,r=e?!!e.drag:!1,n=e&&e.mode?e.mode:"multiple",a=!!(e&&e.cell);return{enabled:t,drag:r,mode:n,cell:a}},Ta=e=>{var A;const{onRelease:t,childRef:r}=e,{enabled:n,drag:a,mode:s,cell:o}=sn(e.selectable),l=i.useRef(null),u=i.useRef(null),d=i.useRef({clientX:0,clientY:0}),[h,g]=i.useState(null),v=i.useRef(),f=i.useRef(!1),b=i.useRef(!1),I=i.useCallback(D=>{const{event:y}=D;b.current=y.originalEvent.target.hasAttribute(tn),!(b.current||!l.current)&&(v.current=nn(l.current.element),d.current={clientY:y.clientY,clientX:y.clientX})},[]),x=i.useCallback(D=>{const{event:y}=D,{clientX:F,clientY:M}=d.current;if(!b.current&&!(!a||s==="single")&&((Math.abs(M-y.clientY)>5||Math.abs(F-y.clientX)>5)&&(f.current=!0),f.current)){const _=an(v.current);g({top:Math.min(M,y.clientY)-_.top,left:Math.min(F,y.clientX)-_.left,width:Math.abs(y.clientX-F),height:Math.abs(y.clientY-M)})}},[g,a,s]),E=i.useCallback(D=>{const{event:y}=D,{clientX:F,clientY:M}=d.current;if(b.current||!l.current)return;const _=l.current.element&&l.current.element.ownerDocument;if(_){if(f.current){const P=Math.min(M,y.clientY),q=Math.min(F,y.clientX),W=Math.max(M,y.clientY),R=Math.max(F,y.clientX),k=u.current;if(!k)return;k.style.visibility="hidden";const U=_.elementFromPoint(q,P),Q=_.elementFromPoint(R,W);if(k.style.visibility="",!U||!Q)return;const We=V(U,"TD"),wt=V(We,"TR"),Ve=V(Q,"TD"),Kt=V(Ve,"TR"),fe=ge(We),me=pe(wt),Ee=ge(Ve),ve=pe(Kt);fe!==void 0&&me!==void 0&&Ee!==void 0&&ve!==void 0&&t({nativeEvent:y.originalEvent,startRowIndex:me,startColIndex:fe,endRowIndex:ve,endColIndex:Ee,altKey:y.altKey,shiftKey:y.shiftKey,ctrlKey:y.ctrlKey,metaKey:y.metaKey,mode:s,cell:o,isDrag:!0})}else{const P=_.elementFromPoint(F,M);if(!P)return;const q=V(P,"TD"),W=V(P,"TR"),R=ge(q),k=pe(W);q&&W&&k!==void 0&&R!==void 0&&t({nativeEvent:y.originalEvent,startRowIndex:k,startColIndex:R,endRowIndex:k,endColIndex:R,altKey:y.altKey,shiftKey:y.shiftKey,ctrlKey:y.ctrlKey,metaKey:y.metaKey,mode:s,cell:o,isDrag:!1})}g(null),f.current=!1,d.current={clientX:0,clientY:0}}},[g,s,o,t]),S=m.useDocument(u);return n?i.createElement(i.Fragment,null,i.createElement(m.Draggable,{onPress:I,onDrag:x,onRelease:E,ref:l,childRef:r},e.children),h&&dn.createPortal(i.createElement("div",{ref:u,style:{...h,position:"fixed"},className:"k-marquee k-marquee-color"}),(A=S())==null?void 0:A.body)):i.cloneElement(i.Children.only(e.children),{ref:r})},za="items";var G=(e=>(e.copy="copy",e.cut="cut",e.paste="paste",e))(G||{});const _a=(e,t,r)=>{const n=e.cellDelimiter||" ",a=e.newLineDelimiter||`\r
|
|
6
|
+
`,s=t.includes(a)?a:t.includes(`
|
|
7
7
|
`)?`
|
|
8
|
-
`:null,o=
|
|
9
|
-
`;return`${t.join(n)}${a}${e}`},
|
|
10
|
-
`,n=e.copiedItems.map((a,
|
|
8
|
+
`:null,o=s?t.split(s):[t],l=r.copiedItems.length?r.copiedItems[0].fields[0]:e.columns[0].field||"";return o.map(d=>{const h=d.includes(n)?d.split(n):[d],g=e.columns.map(I=>I.field||""),v=g.indexOf(l),f=g.slice(v,v+h.length),b={};return g.slice(v,v+h.length).forEach((I,x)=>b[I]=h[x]),{dataItem:b,fields:f}})},Pa=(e,t)=>{if(!t.length)return null;let r="";return t.forEach((n,a,s)=>r+=`${e[n]}${a<s.length-1?" ":""}`),r},qa=(e,t,r)=>{const n=r.cellDelimiter||" ",a=r.newLineDelimiter||`\r
|
|
9
|
+
`;return`${t.join(n)}${a}${e}`},Ga=e=>{const{event:t,selectedState:r,data:n,dataItemKey:a}=e,s={},o={copiedItems:[],pastedItems:[],clipboardData:""},l=e.subItemsField||za;return Object.entries(r).forEach(([u,d])=>{s[u]=m.isArray(d)?d.map(h=>t.columns[h]):t.columns}),m.mapTree(n,l,u=>{const d=u[a||t.dataItemKey||""]||"";return s[d]&&o.copiedItems.push({dataItem:u,fields:s[d].map(h=>h.field||"")}),u}),o},Ha=(e,t)=>{const r=t.newLineDelimiter||`\r
|
|
10
|
+
`,n=e.copiedItems.map((a,s)=>{let o=Pa(a.dataItem,a.fields)||"";return t.copyHeaders&&s===0&&(o=qa(o,a.fields,t)),o?[o]:[]}).join(r);return navigator.clipboard.writeText(n),n},$a=e=>{const{event:t}=e,r=Ga(e);let n="";if(t.type==="paste"){const a=t.nativeEvent?t.nativeEvent.clipboardData:"";n=a?a.getData("text").trim():"",r.pastedItems=_a(t,n,r)}else r.pastedItems=[],n=Ha(r,t);return r.clipboardData=n,r};class Wa{constructor(t){this.copyHandler=r=>{this.clipboardEvent(G.copy,r)},this.cutHandler=r=>{this.clipboardEvent(G.cut,r)},this.pasteHandler=r=>{this.clipboardEvent(G.paste,r)},this.addEventListeners=r=>{r&&(r.addEventListener(G.copy,this.copyHandler),r.addEventListener(G.cut,this.cutHandler),r.addEventListener(G.paste,this.pasteHandler))},this.removeEventListeners=r=>{r&&(r.removeEventListener(G.copy,this.copyHandler),r.removeEventListener(G.cut,this.cutHandler),r.removeEventListener(G.paste,this.pasteHandler))},this.clipboardEvent=t}}c.BooleanFilter=Hr,c.BooleanFilterCell=vn,c.ClipboardActionType=G,c.ClipboardService=Wa,c.ColumnDefaultProps=br,c.ColumnMenuBooleanColumn=da,c.ColumnMenuBooleanFilter=Yr,c.ColumnMenuDateColumn=ua,c.ColumnMenuDateFilter=Mt,c.ColumnMenuFilterForm=Ur,c.ColumnMenuFilterLogic=He,c.ColumnMenuForm=jr,c.ColumnMenuItem=Ge,c.ColumnMenuNumericColumn=ca,c.ColumnMenuNumericFilter=Dt,c.ColumnMenuOperators=ue,c.ColumnMenuTextColumn=la,c.ColumnMenuTextFilter=St,c.ColumnResize=jn,c.ColumnResizer=Pr,c.CommonDragLogic=Un,c.DateFilter=Gr,c.DateFilterCell=bn,c.DragClue=Xn,c.DropClue=Zn,c.EnumFilter=ze,c.Expression=Pe,c.FILTER_ROW_CLASS=wr,c.FOCUSABLE_ELEMENTS=Be,c.Filter=Vr,c.FilterRow=Pn,c.Group=qe,c.Header=Gn,c.HeaderCell=zr,c.HeaderRow=qr,c.HeaderSelectionCell=Vn,c.HeaderThElement=Te,c.KEYBOARD_NAV_DATA_BODY=ft,c.KEYBOARD_NAV_DATA_HEADER=gt,c.KEYBOARD_NAV_DATA_ID=ce,c.KEYBOARD_NAV_DATA_LEVEL=Z,c.KEYBOARD_NAV_DATA_SCOPE=pt,c.KEYBOARD_NAV_DATA_ZONE=Ln,c.KEYBOARD_NAV_FILTER_COL_SUFFIX=xr,c.NumericFilter=It,c.NumericFilterCell=yn,c.Operators=ra,c.Pager=oe,c.TABBABLE_ELEMENTS=Ir,c.TABLE_COL_INDEX_ATTRIBUTE=en,c.TABLE_PREVENT_SELECTION_ELEMENT=tn,c.TABLE_ROW_INDEX_ATTRIBUTE=Qr,c.TableKeyboardNavigationContext=mt,c.TableSelection=Ta,c.TextFilter=yt,c.TextFilterCell=Fn,c.closestTagName=V,c.createDataTree=ma,c.createFilterComponent=le,c.extendDataItem=Ea,c.filterBy=pa,c.flatData=ga,c.getColumnIndex=ge,c.getGroupIds=Ia,c.getIndex=xt,c.getItemPath=Nt,c.getOffset=an,c.getRowIndex=pe,c.getSelectedState=rn,c.getSelectedStateFromKeyDown=Ra,c.getSelectionOptions=sn,c.isRtl=Tr,c.mapColumns=qn,c.modifySubItems=ba,c.moveTreeItem=xa,c.nextColumn=Kr,c.normalize=_r,c.orderBy=ha,c.populateClipboardData=$a,c.readColumns=Br,c.relativeContextElement=nn,c.removeItems=va,c.setExpandedState=Fa,c.setGroupIds=ya,c.setSelectedState=ka,c.stringOperator=Ft,c.tableColumnsVirtualization=Yn,c.tableKeyboardNavigation=Aa,c.tableKeyboardNavigationBodyAttributes=Dn,c.tableKeyboardNavigationHeaderAttributes=Fr,c.tableKeyboardNavigationScopeAttributes=Sn,c.tableKeyboardNavigationTools=O,c.treeToFlat=fa,c.unaryOperator=_e,c.updateLeft=kr,c.updateRight=Rr,c.useTableKeyboardNavigation=Lr,Object.defineProperty(c,Symbol.toStringTag,{value:"Module"})});
|