@progress/kendo-react-grid 9.5.0-develop.4 → 9.5.0-develop.6
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/GridClientWrapper.js +1 -1
- package/GridClientWrapper.mjs +204 -195
- package/dist/cdn/js/kendo-react-grid.js +1 -1
- package/package-metadata.js +1 -1
- package/package-metadata.mjs +2 -2
- package/package.json +13 -13
|
@@ -12,4 +12,4 @@
|
|
|
12
12
|
* Licensed under commercial license. See LICENSE.md in the package root for more information
|
|
13
13
|
*-------------------------------------------------------------------------------------------
|
|
14
14
|
*/
|
|
15
|
-
!function(e,t){"object"==typeof exports&&"undefined"!=typeof module?t(exports,require("react"),require("prop-types"),require("@progress/kendo-data-query"),require("@progress/kendo-react-data-tools"),require("@progress/kendo-react-common"),require("@progress/kendo-react-intl"),require("@progress/kendo-svg-icons"),require("@progress/kendo-react-layout"),require("@progress/kendo-react-inputs"),require("@progress/kendo-react-dateinputs"),require("@progress/kendo-react-popup"),require("@progress/kendo-react-buttons"),require("@progress/kendo-react-dropdowns"),require("react-dom"),require("@progress/kendo-react-indicators"),require("@progress/kendo-react-animation")):"function"==typeof define&&define.amd?define(["exports","react","prop-types","@progress/kendo-data-query","@progress/kendo-react-data-tools","@progress/kendo-react-common","@progress/kendo-react-intl","@progress/kendo-svg-icons","@progress/kendo-react-layout","@progress/kendo-react-inputs","@progress/kendo-react-dateinputs","@progress/kendo-react-popup","@progress/kendo-react-buttons","@progress/kendo-react-dropdowns","react-dom","@progress/kendo-react-indicators","@progress/kendo-react-animation"],t):t((e="undefined"!=typeof globalThis?globalThis:e||self).KendoReactGrid={},e.React,e.PropTypes,e.KendoDataQuery,e.KendoReactDataTools,e.KendoReactCommon,e.KendoReactIntl,e.KendoSvgIcons,e.KendoReactLayout,e.KendoReactInputs,e.KendoReactDateinputs,e.KendoReactPopup,e.KendoReactButtons,e.KendoReactDropdowns,e.ReactDOM,e.KendoReactIndicators,e.KendoReactAnimation)}(this,(function(e,t,r,n,l,a,o,i,s,c,d,u,p,g,m,h,f){"use strict";function C(e){var t=Object.create(null);return e&&Object.keys(e).forEach((function(r){if("default"!==r){var n=Object.getOwnPropertyDescriptor(e,r);Object.defineProperty(t,r,n.get?n:{enumerable:!0,get:function(){return e[r]}})}})),t.default=e,Object.freeze(t)}var v=C(t);const b=e=>null;b.displayName="KendoReactGridColumn";const x={filterable:!0,editable:!0,sortable:!0,resizable:!0,reorderable:!0,groupable:!0};b.propTypes={field:r.string,title:r.string,editable:r.bool,sortable:r.oneOfType([r.bool,r.shape({allowUnsort:r.bool.isRequired})]),cell:r.any,filterCell:r.any,filterTitle:r.string,filterable:r.bool,filter:r.oneOf(["text","numeric","boolean","date"]),editor:r.oneOf(["text","numeric","boolean","date"]),width:r.oneOfType([r.string,r.number]),minResizableWidth:r.number,headerCell:r.any,footerCell:r.any,headerSelectionValue:r.bool,format:r.string,headerClassName:r.string,className:r.string,reorderable:r.bool,resizable:r.bool,orderIndex:r.number,groupable:r.bool,columnMenu:r.any,menuIcon:r.any,locked:r.bool,hidden:r.bool,media:r.string};const E=()=>t.createElement(t.Fragment,null),I=E;var y=(e=>(e.head="head",e.body="body",e))(y||{}),S=(e=>(e.create="create",e.edit="edit",e.delete="delete",e.select="select",e.copySelection="copySelection",e.copySelectionNoHeaders="copySelectionNoHeaders",e.paste="paste",e.reorderRow="reorderRow",e.exportPDF="exportPDF",e.exportExcel="exportExcel",e.separator="separator",e.sortAsc="sortAsc",e.sortDesc="sortDesc",e))(S||{});function k(e,t){const r=(null!=e?e:"").split(".");let n=t;return r.forEach((e=>{n=n?n[e]:void 0})),n}function w(e,t,r,a,o,i,s,c,d,u,p=0,g){var m;let h=p;for(let f=0;f<t.length;f++){let C;if(!o||void 0===t[f].value||void 0===t[f].items){e[e.length]={dataIndex:a.index,dataItem:t[f],rowType:"data",level:p,group:g,expanded:null!=(m=i?k(i,t[f]):u&&!(null==s||!s[n.getter(u)(t[f])]))&&m},a.index++;continue}{let e;e=null!=g&&g.parents?[{field:g.field,value:g.value},...g.parents]:g?[g]:[],C={field:t[f].field,value:t[f].value,parents:e}}h=Math.max(h,p+1);let v=!1;if(i)v=!1!==k(i,t[f]);else{const e=l.findGroupExpand(c||[],C);v=e?!1!==e.expanded:!1!==d}e[e.length]={dataIndex:-1,dataItem:t[f],level:p,group:C,rowType:"groupHeader",expanded:v},v&&(C.expanded=v,h=Math.max(w(e,t[f].items,r,a,o,i,s,c,d,u,p+1,C),h)),("always"===r||v&&"visible"===r)&&(e[e.length]={dataIndex:-1,dataItem:t[f],rowType:"groupFooter",level:p,expanded:v})}return h}const P=(e,t)=>"function"==typeof e.colSpan?e.colSpan({dataItem:t,column:e}):e.colSpan||1;function R(e,t,r,n=0){const a=[];if(!e)return[];e&&void 0===e.length&&(e=[e]),e.filter((e=>e&&e.props?!e.props.hidden:!e.hidden)).forEach(((e,o)=>{e=e.props?e.props:e;const i=t[o]||null,s=R(e.children,i&&i.children||[],r,n+1);a.push(Object.assign({depth:n},x,s.length?{cell:()=>null,filterCell:()=>null}:{},i?{width:i.width,orderIndex:i.orderIndex}:{},e,{id:e.id?e.id:l.tableKeyboardNavigationTools.generateNavigatableId(""+r.prevId++,r.idPrefix,"column"),declarationIndex:a.length,children:s,headerColSpan:e.headerColSpan,rowSpan:0,columnType:e.columnType||"data",colSpan:e.colSpan||1,isAccessible:!0,left:e.lockedColumn?i&&Math.floor(i.left):null,right:e.lockedColumn?i&&Math.floor(i.right):null,rowSpannable:e.rowSpannable}))}));if(a.sort(((e,t)=>e.orderIndex===t.orderIndex?e.declarationIndex-t.declarationIndex:(e.orderIndex||0)-(t.orderIndex||0))),0===n){const e=[],t=(r,n)=>r.forEach((r=>{r.parentIndex=n,t(r.children,e.push(r)-1)}));return t(a,-1),e}return a}const N=e=>Array.isArray(e)?e:e?e.data:[];const T=e=>void 0!==e.width?Math.floor(parseFloat(e.width.toString()))+"px":void 0,D=(e,t)=>t&&t.filter((t=>t.field===e)).length>0,M=e=>(e.sort(((e,t)=>e.declarationIndex-t.declarationIndex)),e.map((e=>{const{declarationIndex:t,parentIndex:r,depth:n,headerColSpan:l,rowSpan:a,index:o,kFirst:i,children:s,...c}=e;return s.length?{children:M(s),...c}:c}))),G=e=>{const{filterCell:t,headerCell:r,footerCell:n,cells:l,cell:a,rowSpannable:o,...i}=e;return e.children.length?{...i,children:e.children.map(G)}:i},L="undefined"!=typeof window&&/Firefox/.test(window.navigator.userAgent),O=17895697,F=(e,t)=>{if(e||t)return t?e?{...e,...t,select:{...e.select||{},...t.select||{}},hierarchy:{...e.hierarchy||{},...t.hierarchy||{}},group:{...e.group||{},...t.group||{}},edit:{...e.edit||{},...t.edit||{}}}:t:e},H=e=>{var t;return"object"==typeof e?null==(t=e.enabled)||t:null!=e&&e},K=e=>!(!e||e.$$typeof!==Symbol.for("react.client.reference")),A=e=>({id:e.id,ariaColumnIndex:e.ariaColumnIndex,isSelected:e.isSelected,isInEdit:e.isInEdit,isSorted:e.isSorted,isAlt:e.isAlt,expanded:e.expanded,className:e.className,style:e.style,field:e.field,dataItem:e.dataItem,format:e.format,colSpan:e.colSpan,dataIndex:e.dataIndex,columnIndex:e.columnIndex,columnsCount:e.columnsCount,rowType:e.rowType,level:e.level,editor:e.editor,render:e.render,locked:e.locked,isRtl:e.isRtl,rowDataIndex:e.rowDataIndex,columnPosition:e.columnPosition,group:e.group}),z=e=>{var t,r;const l="object"==typeof e?null==(t=e.enabled)||t:null!=e&&e,a="object"==typeof e&&null!=(r=e.valueGetter)?r:(e,t)=>n.getter(t)(e);return{enabled:l,valueGetter:a}},B=(e,t)=>{const r=(e=>{var t;return v.isValidElement(e)?e:null==(t=v.Children.toArray(e))?void 0:t[0]})(e);return r?v.cloneElement(r,t):null},V=t.createContext([{},()=>{},{}]),W=()=>t.useContext(V),q=e=>{var r,n,l,a,o,i,s,c,d,u,p,g,m,h,f,C,v,b,x,E,I,y;const{children:S,onEditChange:k,onFilterChange:w,onSortChange:P,onSearchChange:R,onPageChange:N,onGroupChange:T,onDataStateChange:D,onSelectionChange:M,onDetailExpandChange:G,onGroupExpandChange:L,onHeaderSelectionChange:O,onColumnsStateChange:F}=e,[H,K]=t.useState({edit:null!=(r=e.defaultEdit)?r:e.edit,filter:null!=(n=e.defaultFilter)?n:e.filter,select:null!=(l=e.defaultSelect)?l:e.select,search:null!=(a=e.defaultSearch)?a:e.search,sort:null!=(o=e.defaultSort)?o:e.sort,take:null!=(i=e.defaultTake)?i:e.take,skip:null!=(s=e.defaultSkip)?s:e.skip,group:null!=(c=e.defaultGroup)?c:e.group,detailExpand:null!=(d=e.defaultDetailExpand)?d:e.detailExpand,groupExpand:null!=(u=e.defaultGroupExpand)?u:e.groupExpand,columnsState:null!=(p=e.defaultColumnsState)?p:e.columnsState}),A={edit:null!=(g=e.edit)?g:H.edit,filter:null!=(m=e.filter)?m:H.filter,search:null!=(h=e.search)?h:H.search,sort:null!=(f=e.sort)?f:H.sort,take:null!=(C=e.take)?C:H.take,skip:null!=(v=e.skip)?v:H.skip,group:null!=(b=e.group)?b:H.group,select:null!=(x=e.select)?x:H.select,detailExpand:null!=(E=e.detailExpand)?E:H.detailExpand,groupExpand:null!=(I=e.groupExpand)?I:H.groupExpand,columnsState:null!=(y=e.columnsState)?y:H.columnsState};return t.createElement(V.Provider,{value:[A,e=>{},{onEditChange:e=>{K((t=>({...t,edit:e.edit}))),null==k||k(e)},onFilterChange:w&&(e=>{K((t=>({...t,filter:e.filter}))),null==w||w(e)}),onSearchChange:e=>{K((t=>({...t,search:e.search}))),null==R||R(e)},onSortChange:P&&(e=>{K((t=>({...t,sort:e.sort}))),null==P||P(e)}),onPageChange:N&&(e=>{K((t=>({...t,...e.page}))),null==N||N(e)}),onGroupChange:T&&(e=>{K((t=>({...t,group:e.group}))),null==T||T(e)}),onDataStateChange:e=>{K((t=>({...t,...e.dataState}))),null==D||D(e)},onSelectionChange:e=>{K((t=>({...t,select:e.select}))),null==M||M(e)},onHeaderSelectionChange:e=>{K((t=>({...t,select:e.select}))),null==O||O(e)},onDetailExpandChange:e=>{K((t=>({...t,detailExpand:e.detailExpand}))),null==G||G(e)},onGroupExpandChange:e=>{K((t=>({...t,groupExpand:e.groupExpand}))),null==L||L(e)},onColumnsStateChange:e=>{K((t=>({...t,columnsState:e.columnsState}))),null==F||F(e)}}]},S)},_=e=>{const t=a.useId(),r=e.id||t,n=a.useUnstyled(),l=o.useLocalization(),i=o.useInternationalization(),[,s]=v.useReducer((e=>!e),!0),c=v.useRef([]),d=v.useRef(0),[u,,p]=W();return B(e.children,{...u,...p,id:r,unstyled:n,localization:l,intl:i,columnsRef:c,scrollLeftRef:d,forceUpdate:s,isClient:!0})};let U=class{constructor(e){this.columns=[],this.resizable=!1,this.isRtl=!1,this.setIsRtl=e=>{this.isRtl=e},this.dragHandler=(e,t,r,n)=>{const l=e.originalEvent;n||(l.preventDefault(),l.stopPropagation(),l.stopImmediatePropagation());const a=r.closest("th");if(!a||!a)return;const o=a.clientWidth;let i=o;if(this.isRtl?i+=r.getBoundingClientRect().right-r.offsetWidth/2-e.clientX:i+=e.clientX-r.getBoundingClientRect().left-r.offsetWidth/2,!n&&Math.abs(i-o)<1)return;this.fixateInitialWidths(a.parentElement.clientWidth),this.setWidths(t,Math.floor(i)/o);const s=this.columns.filter((e=>!e.children.length)).findIndex((e=>e.id===t.id));this.onResize(s,o,i,l,n,t.id)},this.dblClickHandler=(e,t)=>{const r=this.columns.filter((e=>t.indexOf(e.id)>-1));if(!this.colGroupMain||!r.length)return;const n={},l=r;for(;l.length>0;){const e=l.pop();if(!e)break;e.children.length?l.push(...e.children):n[e.id]=e}const a=this.columns.filter((e=>!e.children.length)),o=[];a.forEach(((e,t)=>{n[e.id]&&o.push(t)}));const i=[this.colGroupMain.parentElement],s=[this.colGroupMain];this.colGroupHeader&&(i.push(this.colGroupHeader.parentElement),s.push(this.colGroupHeader)),this.colGroupFooter&&(i.push(this.colGroupFooter.parentElement),s.push(this.colGroupFooter)),i.forEach((e=>e.classList.add("k-autofitting")));const c=[];s.forEach((e=>{o.forEach((t=>{e.children[t]&&(e.children[t].width="",c[t]=Math.max(c[t]||0,e.children[t].offsetWidth+1))}))})),s.forEach((e=>{o.forEach((t=>{e.children[t]&&(e.children[t].width=c[t]+"px",a[t].width=c[t])}))})),i.forEach((e=>e.classList.remove("k-autofitting"))),this.onResize(o[0],0,0,e,!0,t[0])},this.updateColElements=e=>{const t=this.columns.filter((e=>!e.children.length));let r=1e-10;for(let n=0;n<e.length;n++){const l=e[n],a=t.findIndex((e=>e.id===l.id)),o=parseFloat((l.width||0).toString()),i=Math.floor(o);r+=o-i;const s=i+Math.floor(r);if(r-=Math.floor(r),this.colGroupMain&&this.colGroupMain.children[a]){const e=parseInt(this.colGroupMain.children[a].width,10);this.colGroupMain.children[a].width=s+"px",this.updateNextLockedCol(this.colGroupMain.parentElement,l,e-s)}if(this.colGroupHeader&&this.colGroupHeader.children[a]){const e=parseInt(this.colGroupHeader.children[a].width,10);this.colGroupHeader.children[a].width=s+"px",this.updateNextLockedCol(this.colGroupHeader.parentElement,l,e-s)}if(this.colGroupFooter&&this.colGroupFooter.children[a]){const e=parseInt(this.colGroupFooter.children[a].width,10);this.colGroupFooter.children[a].width=s+"px",this.updateNextLockedCol(this.colGroupFooter.parentElement,l,e-s)}}},this.onResize=e}fixateInitialWidths(e){const t=this.columns.filter((e=>!e.children.length));let r=0;const n=this.colGroupMain?this.colGroupMain.children:[];for(let t=0;t<n.length;t++)n[t].width?e-=parseFloat(n[t].width):r++;if(0===r)return;const l=Math.floor(e/r);for(let e=0;e<n.length;e++){const r=n[e];r.width||(r.width=l,t[e].width=l.toString(),this.colGroupHeader&&(this.colGroupHeader.children[e].width=l),this.colGroupFooter&&(this.colGroupFooter.children[e].width=l))}}setWidths(e,t){const r=this.columns.findIndex((t=>t.id===e.id)),n=[];let l=e.children.length;for(let e=r+1;e<this.columns.length&&!(l<=0);e++){const t=this.columns[e];t.children.length?l+=t.children.length:n.push(t),l--}return 0===n.length&&n.push(e),n.forEach((e=>{let r=e.width?parseFloat(e.width.toString())*t:0;const n=void 0===e.minResizableWidth?10:e.minResizableWidth;r<n&&(r=n),e.width=r})),this.updateColElements(n),n}updateNextLockedCol(e,t,r){const n=t.index,l=this.colGroupMain.parentElement.closest(".k-grid"),a=null==l?void 0:l.clientWidth,o=this.columns.filter((e=>e.locked)).map((e=>parseInt(e.width+"",10))).reduce(((e,t)=>e+t),0);!t.locked||a<=o+20||this.columns.forEach((t=>{if(null!=t&&t.locked&&r){const l=null==e?void 0:e.querySelectorAll('[aria-colindex="'+t.ariaColumnIndex+'"]');null==l||l.forEach((e=>{const l=e.style;this.isRtl?(t.index>n&&l&&l.right&&(l.right=parseInt(l.right,10)-r+"px"),t.index<n&&l&&l.left&&(l.left=parseInt(l.left,10)-r+"px")):(t.index>n&&l&&l.left&&(l.left=parseInt(l.left,10)-r+"px"),t.index<n&&l&&l.right&&(l.right=parseInt(l.right,10)-r+"px"))}))}}))}},j=class{constructor(e,t,r){this.refDragElementClue=v.createRef(),this.refDropElementClue=v.createRef(),this.columns=[],this.reorderable=!1,this.groupable=!1,this.startColumn=-1,this.startGroup=-1,this.currentColumn=-1,this.currentGroup=-1,this.groupPanelDivElement=null,this.refGroupPanelDiv=e=>{this.groupPanelDivElement=e&&e.children?e.children[0]:e},this.pressHandler=(e,t)=>{const r=this.getColumnIndex(e,t);if(this.startGroup=this.getGroupIndex(e),r>=0){const e=this.columns[r];(e.reorderable&&this.reorderable||e.groupable&&this.groupable)&&(this.startColumn=r)}},this.dragHandler=(e,t)=>{if(e.isTouch||e.originalEvent.preventDefault(),e.originalEvent.stopPropagation(),-1===this.startColumn&&-1===this.startGroup)return;this.currentColumn=this.getColumnIndex(e,t),this.currentGroup=this.isTargetGroupingContainer(e)?this.getCurrentGroupsLength:this.getGroupIndex(e);const r=!this.isValid();r&&(this.currentColumn=-1,this.currentGroup=-1);const n=this.currentColumn>=0?t.children[this.columns[this.currentColumn].index]:this.isTargetGroupingContainer(e)?e.originalEvent.target:this.groupPanelDivElement&&this.groupPanelDivElement.children[this.currentGroup];this.updateDragElementClue(e,t,n,r),this.updateDropElementClue(e,t,n,r)},this.releaseHandler=e=>{const t=this.startColumn,r=this.currentColumn,n=this.startGroup,l=this.currentGroup;e.originalEvent.preventDefault(),this.dropElementClue&&this.dropElementClue.setState({visible:!1}),this.dragElementClue&&this.dragElementClue.setState({visible:!1});const a=this.isValid();this.startColumn=this.startGroup=this.currentColumn=this.currentGroup=-1,a&&(t>=0&&r>=0?this.columnReorder(t,r,e.originalEvent):n>=0&&l>=0?this.groupReorder(n,l,e.originalEvent):t>=0&&l>=0&&this.columnToGroup(t,l,e.originalEvent))},this.columnReorder=e,this.groupReorder=t,this.columnToGroup=r}get dragClueRef(){return this.refDragElementClue}get dropClueRef(){return this.refDropElementClue}get getCurrentGroupsLength(){const e=this.groupPanelDivElement&&this.groupPanelDivElement.children;return e&&e.length||0}get dragElementClue(){return this.refDragElementClue.current}get dropElementClue(){return this.refDropElementClue.current}getColumnIndex(e,t){if(!t||t.parentElement===this.groupPanelDivElement)return-1;const r=l.getIndex(e,t);if(-1===r)return-1;for(let e=0;e<t.parentNode.children.length;e++)if(t.parentNode.children[e]===t)return this.columns.findIndex((t=>t.index===r&&t.depth===e));return-1}isTargetGroupingContainer(e){const t=e.originalEvent.target;return!!t.className.indexOf&&-1!==t.className.indexOf("k-grouping-drop-container")}getGroupIndex(e){return l.getIndex(e,this.groupPanelDivElement)}isValid(){return this.startGroup>=0?this.currentGroup>=0&&this.currentGroup!==this.startGroup:-1!==this.startColumn&&(this.currentGroup>=0?!0===this.columns[this.startColumn].groupable&&!0===this.groupable:!0===this.reorderable&&this.currentColumn>=0&&this.currentColumn!==this.startColumn&&!0===this.columns[this.startColumn].reorderable&&this.columns[this.currentColumn].parentIndex===this.columns[this.startColumn].parentIndex)}updateDragElementClue(e,t,r,n){if(!this.dragElementClue)return;const l=this.startColumn>=0?t.children[this.columns[this.startColumn].index].innerText:t.innerText;this.dragElementClue.setState({visible:!0,top:e.pageY+10,left:e.pageX,innerText:l,status:n||!r?"k-i-cancel":"k-i-plus"})}updateDropElementClue(e,t,r,n){if(!this.dropElementClue)return;if(n||!r)return void this.dropElementClue.setState({visible:!1});const l=r.getBoundingClientRect(),a=(r.closest(".k-grouping-header")||r).getBoundingClientRect();let o=l.left+e.pageX-e.clientX-6;!this.isTargetGroupingContainer(e)&&(this.currentColumn>this.startColumn||this.currentGroup>this.startGroup&&-1!==this.startGroup)&&(o+=l.width);const i=a.top+e.pageY-e.clientY;this.dropElementClue.setState({visible:!0,top:i,left:o,height:this.currentColumn>=0?t.clientHeight:a.height})}};const $=l.TABLE_ROW_INDEX_ATTRIBUTE,X=l.TABLE_COL_INDEX_ATTRIBUTE,Y=l.TABLE_PREVENT_SELECTION_ELEMENT,J=/^(?!.*\bChrome).*\bSafari/i;let Q=class{constructor(e){this.table=null,this.containerHeight=0,this.topCacheCount=0,this.attendedSkip=0,this.propsSkip=0,this.total=0,this.scrollableVirtual=!1,this.realSkip=0,this.pageSize=0,this.PageChange=null,this.tableBodyRef=null,this.fixedScroll=!1,this.askedSkip=void 0,this.containerRef=null,this.tableTransform="",this.scrollSyncing=!1,this.lastLoaded=0,this.firstLoaded=0,this.lastScrollTop=0,this.reactVersion=Number.parseFloat(v.version),this.firstLoaded=this.pageSize,this.lastLoaded=this.realSkip+this.pageSize,this.scrollHandler=this.scrollHandler.bind(this)}get container(){var e;return(null==(e=this.containerRef)?void 0:e.current)||void 0}translate(e,t){this.scrollableVirtual&&this.table&&(L||this.reactVersion<=17||t?this.table.style.transform="translateY("+e+"px)":this.tableTransform="translateY("+e+"px)")}changePage(e,t){this.PageChange&&this.PageChange({skip:Math.max(0,e),take:this.pageSize},t)}reset(){this.scrollSyncing=!0,!this.fixedScroll&&(this.container&&(this.container.scrollTop=0),this.translate(0,!0))}scrollHandler(e){var t;if(!(this.scrollableVirtual&&this.container&&this.table&&this.rowHeightService&&null!=(t=this.containerRef)&&t.current))return;if(this.scrollSyncing)return void(this.scrollSyncing=!1);const r=this.container.scrollTop,n=this.lastScrollTop>=r,l=!n;this.lastScrollTop=r;let a=this.rowHeightService.index(r),o=this.rowHeightService.offset(a);const{offsetHeight:i}=this.containerRef.current,s=this.rowHeightService.index(r+i);if(l&&s>=this.lastLoaded&&this.lastLoaded<this.total){const t=a+this.pageSize-this.total;t>0&&(a-=t,o=this.rowHeightService.offset(a)),this.firstLoaded=a,this.translate(o);const r=this.firstLoaded+this.pageSize;this.lastLoaded=Math.min(r,this.total),this.changePage(this.firstLoaded,e)}else if(n&&a<this.firstLoaded){const t=Math.floor(.3*this.pageSize);this.firstLoaded=Math.max(a-t,0),this.translate(this.rowHeightService.offset(this.firstLoaded)),this.lastLoaded=Math.min(this.firstLoaded+this.pageSize,this.total),this.changePage(this.firstLoaded,e)}}},Z=class{constructor(e){this.table=null,this.containerHeight=0,this.topCacheCount=0,this.attendedSkip=0,this.propsSkip=0,this.total=0,this.scrollableVirtual=!1,this.realSkip=0,this.pageSize=0,this.PageChange=null,this.tableBodyRef=null,this.fixedScroll=!1,this.askedSkip=void 0,this.containerRef=null,this.tableTransform="",this.prevScrollPos=0,this.tableTranslate=0,this.scrollSyncing=!1,this.reactVersion=Number.parseFloat(v.version),this.topItems=(e,t)=>{if(!this.container||t)return{topItemsCount:0,topItemsHeight:0};const r=this.container.clientHeight,n=Math.ceil(r/e[0].line),l=Math.ceil((e.length-n)/2);let a=0;for(let t=0;t<l;t++)a+=e[t].line+e[t].acc;return{topItemsCount:l,topItemsHeight:a,itemsNeededOnScreen:n+n/2}},this.horizontalScrollbarHeight=()=>this.container?this.container.offsetHeight-this.container.clientHeight:0,e&&(this.topCacheCount=4,this.attendedSkip=-this.topCacheCount),this.scrollHandler=this.scrollHandler.bind(this)}get container(){var e;return null==(e=this.containerRef)?void 0:e.current}get rowHeights(){var e,t;const r=[],n=(null==(e=this.tableBodyRef)?void 0:e.current)&&(null==(t=this.tableBodyRef)?void 0:t.current.children)||[];let l=0;for(let e=0;e<n.length;e++)n[e].className.indexOf("k-grouping-row")>-1?l+=n[e].scrollHeight:n[e].className.indexOf("k-detail-row")>-1?r[r.length-1].line+=n[e].scrollHeight:(r.push({line:n[e].scrollHeight,acc:l}),l=0);return r}changePage(e,t){this.attendedSkip=e-this.topCacheCount,this.PageChange&&this.PageChange({skip:Math.max(0,e-this.topCacheCount),take:this.pageSize},t)}translate(e,t){this.tableTranslate=e,this.scrollableVirtual&&this.table&&(this.reactVersion<=17||t?this.table.style.transform="translateY("+e+"px)":this.tableTransform="translateY("+e+"px)")}reset(){this.scrollSyncing=!0,!this.fixedScroll&&(this.container&&(this.container.scrollTop=0),this.translate(0,!0))}localScrollUp(e){if(!this.container)return;const t=this.rowHeights,r=this.container.scrollTop;let n=this.tableTranslate,l=0;const{topItemsCount:a,topItemsHeight:o,itemsNeededOnScreen:i}=this.topItems(t,!!this.topCacheCount),s=r-n;if(!(s>o||t.length<=i)){for(;l<this.topCacheCount+this.attendedSkip-this.realSkip+a&&this.propsSkip-l>0&&!(n+(t[t.length-1-l].line+t[t.length-1-l].acc)+s<=r);)n-=t[t.length-1-l].line+t[t.length-1-l].acc,l++;if(0===l&&0===this.topCacheCount&&this.attendedSkip>0&&(n=Math.max(n-t[0].line,0),l=1),this.propsSkip-l<=0&&n>r)return this.translate(0),this.changePage(0,e),void(this.container.scrollTop=0);if(n>r&&(n=r),n!==this.tableTranslate){this.translate(Math.max(0,n-o));const t=Math.max(0,this.propsSkip-l-a);this.changePage(t,e)}}}localScrollDown(e){if(!this.container)return;const t=this.rowHeights,r=this.container.scrollTop;let n=this.tableTranslate,l=0;const{topItemsCount:a,topItemsHeight:o,itemsNeededOnScreen:i}=this.topItems(t,!!this.topCacheCount);for(;l<t.length-this.topCacheCount&&!(n+t[l].line+t[l].acc>r);)n+=t[l].line+t[l].acc,l++;a>this.propsSkip+l||t.length<=i||(l>=t.length-this.topCacheCount&&this.propsSkip+l>=this.total?(this.translate(n-o),this.changePage(this.total-1-a,e)):n!==this.tableTranslate&&this.propsSkip+l-a!==this.propsSkip&&(this.translate(n-o),this.changePage(this.propsSkip+l-a,e)))}scrollNonStrict(e){const t=this.total*this.prevScrollPos/this.containerHeight;let r=Math.floor(t);r>=this.total&&(r=this.total-1);const n=Math.min(t-r,1);let l=0;const a=r-this.propsSkip,o=this.rowHeights;a>=0&&a<=1?l=-(o[0].line+o[0].acc)*n:-1===a&&(l=-(o[o.length-1].line+o[o.length-1].acc)*n);const{topItemsCount:i,topItemsHeight:s}=this.topItems(o,!!this.topCacheCount);this.translate(Math.max(0,l-s-this.horizontalScrollbarHeight()+this.containerHeight*t/this.total)),this.changePage(r-i,e)}scrollHandler(e){if(!this.scrollableVirtual)return;if(this.scrollSyncing||!this.container||!this.table)return void(this.scrollSyncing=!1);const t=this.container.scrollTop,r=this.prevScrollPos;if(this.prevScrollPos=t,void 0!==this.askedSkip)return this.translate(this.containerHeight*this.askedSkip/this.total),this.changePage(this.askedSkip,e),this.prevScrollPos=t,void(this.askedSkip=void 0);t-r<0&&t>this.tableTranslate-this.table.scrollHeight/10?this.localScrollUp(e):t-r>0&&t<this.tableTranslate+2*this.table.scrollHeight/3?this.localScrollDown(e):this.scrollNonStrict(e),this.prevScrollPos=t}};const ee={[S.create]:{name:"create",text:"Add",icon:"plus",svgIcon:i.plusIcon,data:{action:"AddCommand"}},[S.edit]:{name:"edit",text:"Edit",icon:"pencil",svgIcon:i.pencilIcon,data:{action:"EditCommand"}},[S.delete]:{name:"delete",text:"Delete",icon:"trash",svgIcon:i.trashIcon,data:{action:"DeleteCommand"}},[S.select]:{name:"select",text:"Select",icon:"table-body",svgIcon:i.tableBodyIcon,items:[{name:"selectRow",text:"Row",icon:"table-row-groups",svgIcon:i.tableRowGroupsIcon,data:{action:"SelectRowCommand"}},{name:"selectAllRows",text:"All rows",icon:"grid",svgIcon:i.gridIcon,data:{action:"SelectAllRowsCommand"}},{name:"clearSelection",text:"Clear selection",icon:"table-unmerge",svgIcon:i.tableUnmergeIcon,data:{action:"ClearSelectionCommand"}}]},[S.copySelection]:{name:"copySelection",text:"Copy selection",icon:"page-header-section",svgIcon:i.pageHeaderSectionIcon,data:{action:"CopySelectionCommand"},options:"withHeaders"},[S.copySelectionNoHeaders]:{name:"copySelectionNoHeaders",text:"Copy selection (No Headers)",icon:"file-txt",svgIcon:i.fileTxtIcon,data:{action:"CopySelectionCommand"}},[S.paste]:{name:"paste",text:"Paste (use CTRL/⌘ + V)",icon:"clipboard",svgIcon:i.clipboardIcon,data:{action:"PasteCommand"}},[S.reorderRow]:{name:"reorderRow",text:"Reorder row",icon:"caret-alt-expand",svgIcon:i.caretAltExpandIcon,items:[{name:"reorderRowUp",text:"Up",icon:"caret-alt-up",svgIcon:i.caretAltUpIcon,data:{action:"ReorderRowCommand"}},{name:"reorderRowDown",text:"Down",icon:"caret-alt-down",svgIcon:i.caretAltDownIcon,data:{action:"ReorderRowCommand"}},{name:"reorderRowTop",text:"Top",icon:"caret-alt-to-top",svgIcon:i.caretAltToTopIcon,data:{action:"ReorderRowCommand"}},{name:"reorderRowBottom",text:"Bottom",icon:"caret-alt-to-bottom",svgIcon:i.caretAltToBottomIcon,data:{action:"ReorderRowCommand"}}]},[S.exportPDF]:{name:"exportPDF",text:"Export to PDF",icon:"file-pdf",svgIcon:i.filePdfIcon,data:{action:"ExportPDFCommand"}},[S.exportExcel]:{name:"exportExcel",text:"Export to Excel",icon:"file-excel",svgIcon:i.fileExcelIcon,items:[{name:"exportToExcelAll",text:"All",data:{action:"ExportExcelCommand"}},{name:"exportToExcelSelection",text:"Selection",data:{action:"ExportExcelCommand"},options:"selection,withHeaders"},{name:"exportToExcelSelectionNoHeaders",text:"Selection (No Headers)",data:{action:"ExportExcelCommand"},options:"selection"}]},[S.separator]:{name:"separator",separator:!0},[S.sortAsc]:{name:"sortAsc",text:"Sort Ascending",icon:"sort-asc-small",svgIcon:i.sortAscSmallIcon,data:{action:"SortCommand"}},[S.sortDesc]:{name:"sortDesc",text:"Sort Descending",icon:"sort-desc-small",svgIcon:i.sortDescSmallIcon,data:{action:"SortCommand"}}},te=e=>{const{show:t,offset:r,dataItem:n,field:l,items:a,onClose:i,onSelect:c}=e,d=o.useLocalization(),u=v.useCallback((e=>{c.call(void 0,{event:e,dataItem:n,field:l})}),[c,n,l]),p=v.useCallback((e=>{const t=e;return t.text&&t.name&&(t.text=d.toLanguageString(`contextMenu.${t.name}`,t.text||"")),t.items&&Array.isArray(t.items)&&(t.items=t.items.map((e=>p(e)))),t}),[d]),g=v.useMemo((()=>a&&a.map((e=>p("string"==typeof e?ee[e]:e)))),[a,p]);return v.createElement(s.ContextMenu,{show:t,offset:r,items:g,onClose:i,onSelect:u})},re=(...e)=>Object.assign({allowUnsort:!0,mode:"single"},...e),ne={true:{asc:{asc:"",desc:"desc"},desc:{asc:"asc",desc:""},"":{asc:"asc",desc:"desc"}},false:{asc:{asc:"asc",desc:"desc"},desc:{asc:"asc",desc:"desc"},"":{asc:"asc",desc:"desc"}}},le={true:{asc:"desc",desc:"","":"asc"},false:{asc:"desc",desc:"asc","":"asc"}},ae=v.createContext(void 0),oe=e=>{var t,r;const n=e.gridProps.isClient,[o,i]=v.useState({}),s=()=>{i({})},c=v.useMemo((()=>e.columnsRef.current.find((e=>e.field===o.field))),[e.columnsRef,o]),d=v.useMemo((()=>(e=>{let t=[];return e.sortable&&(t=t.concat([S.sortAsc,S.sortDesc])),t})({sortable:!!(e.gridProps.sortable&&(null==c?void 0:c.sortable)),selectable:l.getSelectionOptions(e.gridProps.selectable).enabled,clipboard:!!e.gridProps.clipboard})),[c,e.gridProps.sortable,e.gridProps.selectable,e.gridProps.clipboard]),u=v.useMemo((()=>(e=>{let t=[];return e.clipboard&&(t=t.concat([S.copySelection,S.copySelectionNoHeaders,S.paste])),e.editable&&(t.length&&(t=t.concat([S.separator])),t=t.concat([S.create,S.edit,S.delete])),e.selectable&&(t.length&&(t=t.concat([S.separator])),t=t.concat([S.select])),e.rowReorderable&&(t.length&&(t=t.concat([S.separator])),t=t.concat([S.reorderRow])),t})({sortable:!!(e.gridProps.sortable&&(null==c?void 0:c.sortable)),selectable:l.getSelectionOptions(e.gridProps.selectable).enabled,clipboard:!!e.gridProps.clipboard,rowReorderable:H(e.gridProps.rowReorderable)})),[c,e.gridProps.sortable,e.gridProps.selectable,e.gridProps.clipboard]),p=v.useMemo((()=>{const t=(null==c?void 0:c.contextMenu)||e.gridProps.contextMenu,r="function"==typeof t?t(o):t;if(r&&o.offset){const e=r[o.dataItem?y.body:y.head],t=o.dataItem?u:d;return!1===e?void 0:!0===e||void 0===e?t:e}}),[e.gridProps.contextMenu,o,u,d,c]),g=()=>{const e=de.current.filter((e=>e.declarationIndex>=0&&-1===e.parentIndex));return M(e)},m=t=>{if("moveToNextPage"===t.action&&k(t.event),"moveToPrevPage"===t.action&&w(t.event),t.focusElement&&"reorderToRight"===t.action){const e=parseInt(t.focusElement.ariaColIndex,10)-1;e<de.current.length-1&&T(e,e+1,t.event)}if(t.focusElement&&"reorderToLeft"===t.action){const e=parseInt(t.focusElement.ariaColIndex,10)-1;e>0&&T(e,e-1,t.event)}if(e.gridProps.onNavigationAction&&n){const r={focusElement:t.focusElement,...W(t.event)};q(e.gridProps.onNavigationAction,r)}},h=(t,r,n)=>{const{allowUnsort:l,mode:a}=re(e.gridProps.sortable||!1,r.sortable||!1),o=(e.gridProps.sort||[]).filter((e=>e.field===r.field))[0],i=n||le[l][o&&o.dir||""],s="single"===a?[]:(e.gridProps.sort||[]).filter((e=>e.field!==r.field));""!==i&&r.field&&s.push({field:r.field,dir:i}),P(s,t)},f=(t,r)=>{e.gridProps.onSelectionChange&&Ve.enabled&&q(e.gridProps.onSelectionChange,{...t,select:r})},C=t=>{if(e.gridProps.onSelectionChange&&Ve.enabled){const r=t.dataItems[0],n=t.dataItems[t.dataItems.length-1],l={},o={...t,startDataItem:r,endDataItem:n,startRowIndex:0,endRowIndex:t.dataItems.length-1,startColIndex:0,endColIndex:de.current.length-1};t.dataItems.forEach((r=>{const n=a.getter(e.gridProps.dataItemKey)(r);l[n]=!t.cell||[...Array(de.current.length).keys()]})),f(o,l)}},b=t=>{if(e.gridProps.onSelectionChange&&Ve.enabled){const r=a.getter(e.gridProps.dataItemKey)(t.dataItem),n=0,l=de.current.length-1,o=t.dataItems.findIndex((r=>r[e.gridProps.dataItemKey]===t.dataItem[e.gridProps.dataItemKey])),i={...t,startDataItem:o,endDataItem:o,startRowIndex:o,endRowIndex:o,startColIndex:n,endColIndex:l},s="multiple"===t.mode&&e.gridProps.select||{};!0===s[r]||Array.isArray(s[r])&&s[r].length===de.current.length?delete s[r]:s[r]=!t.cell||[...Array(de.current.length).keys()],f(i,s)}},x=t=>{e.gridProps.onSelectionChange&&Ve.enabled&&f(t,{})},E=(t,r,n,l,a)=>{const o=e.gridProps.onDataStateChange;if(t){const e={...W(l),...r,targetEvent:a};q(t,e)}else o&&q(o,{...W(l),targetEvent:a||{},dataState:{...V(),...n}})},I=(t,r,n)=>{E(e.gridProps.onPageChange,{page:t},{skip:t.skip,take:t.take},r,n)},k=t=>{var r,n;const l=null!=(n=null!=(r=e.gridProps.take)?r:e.gridProps.pageSize)?n:0,a=(e.gridProps.skip||0)+l,o=(()=>{let t=e.gridProps.total||0;return Array.isArray(e.gridProps.data)?t=t||e.gridProps.data.length:e.gridProps.data&&(t=t||e.gridProps.data.total),t})();a<o&&I({skip:a,take:l},t)},w=t=>{var r,n;const l=null!=(n=null!=(r=e.gridProps.take)?r:e.gridProps.pageSize)?n:0,a=(e.gridProps.skip||0)-l;a>=0&&I({skip:a,take:l},t)},P=(t,r)=>{E(e.gridProps.onSortChange,{sort:t},{sort:t,..."virtual"===e.gridProps.scrollable?{skip:0}:{}},r)},R=(t,r)=>{const n=r.nativeEvent?r:{nativeEvent:r.nativeEvent||r.originalEvent};0===t.length&&e.gridProps.navigatable&&(Pe.current=!0),E(e.gridProps.onGroupChange,{group:t},{group:t,skip:0},n)},T=(t,r,n)=>{const a=de.current[t],o=a.depth,i=e=>{do{e++}while(e<de.current.length&&de.current[e].depth>o);return e},s=de.current.splice(t,i(t)-t);de.current.splice(t<r?i(r-s.length):r,0,...s),de.current.filter((e=>e.declarationIndex>=0)).forEach(((e,t)=>e.orderIndex=t));const c=de.current[t].locked&&de.current[r].locked;l.updateLeft(e.columnsMapRef,de.current,c||De.current),l.updateRight(e.columnsMapRef,de.current,c||De.current),we.current&&(De.current=!1,we.current=!1);const d=g();if(se(),e.gridProps.onColumnReorder){const t={target:ce.current,columns:d,columnId:a.id,nativeEvent:n};q(e.gridProps.onColumnReorder,t)}},D=(t,r,n)=>{const l="object"==typeof e.gridProps.rowReorderable?e.gridProps.rowReorderable.enabled:e.gridProps.rowReorderable;if("forbidden"===n||!l||!He.current)return;const{slicedData:a,dataRef:o}=e,i=(a||o)[r];e.gridProps.onRowReorder&&q(e.gridProps.onRowReorder,{draggedDataItems:[He.current],droppedDataItem:null==i?void 0:i.dataItem,dropPosition:n,nativeEvent:t.originalEvent,dragEvent:t,target:ce.current}),He.current=null},G=(t,r,n)=>{if(void 0===e.gridProps.group)return;const l=e.gridProps.group.slice();l.splice(r,0,...l.splice(t,1)),R(l,n)},F=(t,r,n)=>{const l=de.current[t].field;if(!l)return;const a=(e.gridProps.group||[]).slice();a.splice(r,0,{field:l}),R(a,n)},K=()=>{let e=0;if(!pe.current.colGroupMain)return;const t=pe.current.colGroupMain.children;for(let r=0;r<t.length;r++){const n=t[r].width;if(!n)return;e+=parseFloat(n.toString())}e=Math.round(e),ke.current&&ke.current.setWidth(e),Se.current&&Se.current.setWidth(e),Ee.current&&(Ee.current.style.width=e+"px")},A=v.useCallback(((t,r,a,o,i)=>{var s;if(!z()&&!a||!t)return;const c={type:t,nativeEvent:r,columns:de.current,dataItemKey:e.gridProps.dataItemKey||"",dataItem:o,field:i,..."boolean"!=typeof e.gridProps.clipboard?e.gridProps.clipboard:{},...a},d=$(),u=l.populateClipboardData({event:c,data:d,selectedState:null!=(s=e.gridProps.select)?s:{},previousCopiedItems:Fe.current});t!==l.ClipboardActionType.paste&&(Fe.current=u.copiedItems),e.gridProps.onClipboard&&n&&q(e.gridProps.onClipboard,{...c,...u})}),[e.gridProps.select,e.gridProps.dataItemKey,e.gridProps.data,e.gridProps.clipboard,e.gridProps.onClipboard]),z=()=>{var e,t,r;if(!a.canUseDOM)return!1;const n=a.getActiveElement(X()),l=n?n.matches(".k-table-td")?n:null==(e=X())?void 0:e.body:null==(t=X())?void 0:t.body,o=l.closest(".k-grid-container"),i=l&&(null==(r=ye.current)?void 0:r.contains(l));return!!(l&&i&&o)},B=(t,r,l,a,o,i)=>{K(),De.current=!0,we.current=!0,e.gridProps.onColumnResize&&n&&q(e.gridProps.onColumnResize,{columns:g(),nativeEvent:a,targetColumnId:i,index:t,newWidth:r,oldWidth:l,end:o,target:ce.current})},V=()=>{var t;return{filter:e.gridProps.filter,sort:e.gridProps.sort,skip:e.gridProps.skip,take:null!=(t=e.gridProps.take)?t:e.gridProps.pageSize,group:e.gridProps.group}},W=e=>({nativeEvent:e&&e.nativeEvent,syntheticEvent:e,target:ce.current}),q=(t,r)=>{e.gridProps.isClient?t(r):t((e=>({...e,nativeEvent:void 0,syntheticEvent:void 0,target:void 0,targetEvent:void 0,focusElement:void 0}))(r))},_=()=>e.dataRef.filter((e=>"data"===e.rowType)).map((e=>e.dataItem)),$=()=>(e.slicedData||e.dataRef).filter((e=>"data"===e.rowType)).map((e=>e.dataItem)),X=()=>{var e;if(a.canUseDOM)return(null==(e=Y())?void 0:e.ownerDocument)||document},Y=()=>ye.current,ee=v.useCallback((t=>{var r;if(!ue.current||null==(r=ue.current)||!r.container||"none"===e.gridProps.scrollable)return;Ce.current&&Ce.current.disconnect();const{rowIndex:n}=t,l=Y();if("virtual"===e.gridProps.scrollable)ue.current.askedSkip=n,ue.current.container.scroll(0,Math.round(ue.current.askedSkip/ue.current.total*ue.current.container.scrollHeight));else if(l){const e=n<1?l.querySelector("tbody > tr:nth-child(1)"):l.querySelector(`tbody > tr:nth-child(${n+1})`);e&&xe.current&&(xe.current.scrollTop=e.offsetTop)}}),[e.gridProps.scrollable]),ne=e=>JSON.stringify(e.map((e=>({id:e.id,field:e.field,title:e.title,children:e.children})))),oe=()=>{ne(Be)===ne(de.current)||se()},ie=v.useCallback((e=>{const t={rowIndex:Le.current};e.forEach((e=>{e.isIntersecting||ee(t)}))}),[ee]),se=()=>{e.gridProps.forceUpdate&&e.gridProps.forceUpdate()},ce=v.useRef(null),de=e.columnsRef,ue=v.useRef(),pe=v.useRef(),ge=v.useRef(),me=v.useRef(),he=v.useRef(),fe=v.useRef(),Ce=v.useRef(null),ve=v.useRef(null),be=v.useRef(null),xe=v.useRef(null),Ee=v.useRef(null),Ie=v.useRef(null),ye=v.useRef(null),Se=v.useRef(null),ke=v.useRef(null),we=v.useRef(!1),Pe=v.useRef(!1),Re=v.useRef(),Ne=v.useRef(),Te=v.useRef(!1),De=v.useRef(!0),Me=v.useRef(0),Ge=v.useRef(),Le=v.useRef(),Oe=v.useRef([]),Fe=v.useRef([]),He=v.useRef(null),Ke=v.useRef(null),Ae=v.useRef(null),ze=a.useDir(ye),Be=v.useMemo((()=>v.Children.toArray(e.gridProps.children)),[e.gridProps.children]),Ve=l.getSelectionOptions(null!=(t=e.gridProps.selectable)?t:!!e.gridProps.selectedField),We=l.getEditableOptions(null!=(r=e.gridProps.editable)?r:!!e.gridProps.editField);v.useMemo((()=>{l.tableKeyboardNavigation.onConstructor({navigatable:!!e.gridProps.navigatable,contextStateRef:me,navigationStateRef:he,idPrefix:e.id})}),[]),v.useMemo((()=>{var t;null==(t=ue.current)||t.reset();const r=!0===e.gridProps.groupable||"object"==typeof e.gridProps.groupable&&!1!==e.gridProps.groupable.enabled,n=e.isFixedVirtualScroll?Q:Z;ue.current=new n(r||void 0===e.gridProps.rowHeight||0===e.gridProps.rowHeight)}),[e.gridProps.scrollable,e.gridProps.total,e.gridProps.filter,e.gridProps.group,e.gridProps.groupable,e.gridProps.sort,e.gridProps.rowHeight]),v.useEffect((()=>(e.gridProps.clipboard&&(fe.current=new l.ClipboardService(A),fe.current.addEventListeners(X())),()=>{fe.current&&fe.current.removeEventListeners(X())})),[e.gridProps.onClipboard,e.gridProps.clipboard,A,X]),v.useEffect((()=>(e.gridProps.columnVirtualization&&!window.navigator.userAgent.match(J)&&(Ie.current&&(Ie.current.style.display="block"),Ee.current&&(Ee.current.style.display="block")),K(),a.setScrollbarWidth(),l.tableKeyboardNavigation.onComponentDidMount({scope:ye.current||void 0,contextStateRef:me,navigationStateRef:he}),()=>{clearTimeout(Ge.current)})),[]),v.useEffect((()=>{var t;K(),a.setScrollbarWidth(),null!=(t=ue.current)&&t.tableTransform&&ue.current.table&&(ue.current.table.style.transform=ue.current.tableTransform,ue.current.tableTransform=""),(()=>{var e,t,r;if(ve.current&&(null==(e=ve.current)?void 0:e.getElementsByClassName("k-grid-edit-row").length)>0){Te.current=!1,null!=(t=document.activeElement)&&t.closest(".k-grid-edit-row")?Ne.current=document.activeElement:Ne.current=void 0;const e=Array.from(null==(r=ve.current)?void 0:r.getElementsByClassName("k-grid-edit-row"));e.length>Oe.current.length?Re.current=e.filter((e=>!Oe.current.includes(e)))[0]:1===e.length&&(Re.current=e[0],Te.current=!0),Oe.current=e}})(),l.tableKeyboardNavigation.onComponentDidUpdate({scope:ye.current||void 0,contextStateRef:me,navigationStateRef:he,focusFirst:Pe.current,newEditableRow:Re.current,singleEditRow:Te.current,lastActiveElement:Ne.current,navigatable:e.gridProps.navigatable}),Pe.current=!1,Re.current=void 0})),v.useEffect((()=>{if(a.canUseDOM){const e={rootMargin:"0px",threshold:.9};Ce.current=window.IntersectionObserver&&new window.IntersectionObserver(ie,e)||null}}),[ie]),v.useEffect((()=>{var e;let t;return a.canUseDOM&&window.ResizeObserver&&(t=new window.ResizeObserver(oe),t.observe(null==(e=X())?void 0:e.body)),()=>{null==t||t.disconnect()}}),[]),v.useImperativeHandle(ce,(()=>({get element(){return Y()},props:e.gridProps,get columns(){return g()},scrollIntoView:t=>{var r;if(null==(r=ue.current)||!r.container||"none"===e.gridProps.scrollable)return;const{rowIndex:n}=t;Le.current=n;const l=Y();if(Ce.current&&l){Ce.current.disconnect();const e=l.querySelector(`[absolute-row-index="${Le.current}"]`);e?Ce.current.observe(e):ee(t)}},fitColumns:e=>{pe.current.dblClickHandler(null,e)}}))),v.useImperativeHandle(e.gridRef,(()=>ce.current)),v.useMemo((()=>{pe.current=new U(B)}),[e.gridProps.onColumnResize]),v.useMemo((()=>{ge.current=new j(T,G,F)}),[e.gridProps.onColumnReorder,e.gridProps.onGroupChange,e.gridProps.group,e.gridProps.groupable]),pe.current.resizable=e.gridProps.resizable||!1,pe.current.columns=de.current;const qe=!0===e.gridProps.groupable||"object"==typeof e.gridProps.groupable&&!1!==e.gridProps.groupable.enabled;ge.current.reorderable=e.gridProps.reorderable||!1,ge.current.groupable=qe,ge.current.columns=de.current,((t,r)=>{var n,l;if(ue.current){if(ue.current.fixedScroll=e.gridProps.fixedScroll||!1,ue.current.PageChange=I,ue.current.realSkip=e.gridProps.skip||0,ue.current.pageSize=null!=(l=null!=(n=e.gridProps.take)?n:e.gridProps.pageSize)?l:0,ue.current.scrollableVirtual="virtual"===e.gridProps.scrollable,ue.current.total=t,ue.current.propsSkip=(e.gridProps.skip||0)+("virtual"===e.gridProps.scrollable?ue.current.topCacheCount+(ue.current.attendedSkip-(e.gridProps.skip||0)):0),void 0!==e.gridProps.rowHeight&&e.gridProps.rowHeight>0&&!r){const r=e.gridProps.rowHeight*t;ue.current.containerHeight=L?Math.min(O,r):r}else ue.current.containerHeight=1533915;if(ue.current.containerRef=xe,ue.current.tableBodyRef=ve,ue.current.table=Ee.current,ue.current instanceof Q){const{rowHeight:r=0,detail:n,expandField:l}=e.gridProps;let{detailRowHeight:o=0}=e.gridProps;o=n&&l?o:r,(()=>{const{data:t,total:r}=e.gridProps;return Array.isArray(t)?t.length===r:!!t&&r===t.total})()?(ue.current.total=e.dataRef.length,ue.current.rowHeightService=new a.RowHeightService(e.dataRef.length,r,o,e.dataRef)):ue.current.rowHeightService=new a.RowHeightService(t,r,o);const i=ue.current.rowHeightService.totalHeight();ue.current.containerHeight=L?Math.min(O,i):i}}})(e.total,qe);const _e=e.gridProps.columnsState||(()=>{const t=e=>e.map((e=>({id:e.id,field:e.field,title:e.title,hidden:!1,children:e.children?t(e.children):null}))),r=e.columnsRef.current.filter((e=>0===e.depth));return t(r)})();return v.createElement(ae.Provider,{value:{isClient:n,rowReorder:D,activeDragRowDataItemRef:He,reorderRowDragTargetRef:Ke,reorderRowDropTargetRef:Ae,dir:ze,getCellPositionStyle:e=>void 0!==e.left?"rtl"!==ze?{left:e.left,right:e.right}:{left:e.right,right:e.left}:{},dataItemKey:e.gridProps.dataItemKey,columnsState:_e,onColumnsStateChange:t=>{if(e.gridProps.onColumnsStateChange){const r={target:ce.current,columnsState:t};q(e.gridProps.onColumnsStateChange,r)}},groupChange:R,selectionRelease:t=>{var r;if(e.gridProps.onSelectionChange&&Ve.enabled){const n=$()[t.startRowIndex],a=$()[t.endRowIndex],o={syntheticEvent:void 0,target:ce.current,selectedField:e.gridProps.selectedField||"",componentId:e.id,dataItems:_(),dataItem:null,startDataItem:n,endDataItem:a,...t},i=l.getSelectedState({event:o,selectedState:null!=(r=e.gridProps.select)?r:{},dataItemKey:e.gridProps.dataItemKey});f(o,i)}},pagerPageChange:e=>{I({skip:e.skip,take:e.take},e.syntheticEvent,e.targetEvent)},onContextMenu:(t,r,l)=>{if(e.gridProps.onContextMenu&&n){const n={target:ce.current,syntheticEvent:t,nativeEvent:t.nativeEvent,dataItem:r,field:l};q(e.gridProps.onContextMenu,n)}e.gridProps.contextMenu&&(e=>{e.event.preventDefault(),i({...o,show:!0,offset:{left:e.event.pageX,top:e.event.pageY},dataItem:e.dataItem,field:e.field})})({event:t,dataItem:r,field:l})},rowClick:(t,r)=>{e.gridProps.onRowClick&&"TD"===t.target.nodeName&&q(e.gridProps.onRowClick,{dataItem:r,...W(t)})},rowDblClick:(t,r)=>{e.gridProps.onRowDoubleClick&&"TD"===t.target.nodeName&&q(e.gridProps.onRowDoubleClick,{dataItem:r,...W(t)})},cellClick:(t,r,n)=>{if(We.enabled&&"incell"===We.mode&&e.gridProps.dataItemKey){const a=l.editReducer(e.gridProps.edit,{type:l.EDIT_ACTION.ENTER_FIELD_EDIT,payload:{id:r[e.gridProps.dataItemKey],field:n}});e.gridProps.onEditChange&&q(e.gridProps.onEditChange,{edit:a,...W(t)})}},headerCellClick:h,itemChange:t=>{var r;if(t.field===e.gridProps.expandField||t._expand||e.gridProps.group&&void 0===t.field){if(e.gridProps.onExpandChange){const n=e.gridProps.dataItemKey?l.detailExpandReducer(null!=(r=e.gridProps.detailExpand)?r:{},{type:l.DETAIL_EXPAND_ACTION.SET,id:t.dataItem[e.gridProps.dataItemKey],payload:t.value}):e.gridProps.detailExpand;q(e.gridProps.onExpandChange,{...W(t.syntheticEvent),expand:n,dataItem:t.dataItem,dataIndex:t.dataIndex,value:t.value})}}else e.gridProps.onItemChange&&q(e.gridProps.onItemChange,{...W(t.syntheticEvent),dataItem:t.dataItem,dataIndex:t.dataIndex,field:t.field,value:t.value})},sortChange:P,filterChange:(t,r)=>{E(e.gridProps.onFilterChange,{filter:t},{filter:t||void 0,skip:0},r)},searchChange:t=>{const r=e.gridProps.searchFields||de.current.map((e=>e.field))||[],n=t.nativeEvent.target.value,l={logic:"or",filters:r.filter((e=>void 0!==e)).map((e=>{var t;return"string"==typeof e?{field:e,value:n,operator:"contains"}:{value:n,operator:null!=(t=e.operator)?t:"contains",field:e.field,ignoreCase:e.ignoreCase}}))};E(e.gridProps.onSearchChange,{search:l},{},t.syntheticEvent)},onHeaderSelectionChange:t=>{var r;if(e.gridProps.onHeaderSelectionChange&&Ve.enabled){const n=_();q(e.gridProps.onHeaderSelectionChange,{select:t.syntheticEvent.target.checked?n.reduce(((t,r)=>(e.gridProps.dataItemKey&&void 0!==a.getter(e.gridProps.dataItemKey)(r)&&(t[a.getter(e.gridProps.dataItemKey)(r)]=!0),t)),{}):{},field:t.field,nativeEvent:t.syntheticEvent&&t.syntheticEvent.nativeEvent,syntheticEvent:t.syntheticEvent,target:ce.current,dataItems:n,selectedField:null!=(r=e.gridProps.selectedField)?r:""})}},columnGroupChange:(e,t)=>{const r=ge.current.getCurrentGroupsLength;F(e,r,t)},onKeyDown:t=>{var r,a;l.tableKeyboardNavigation.onKeyDown(t,{navigatable:e.gridProps.navigatable||!1,contextStateRef:me,navigationStateRef:he,onNavigationAction:m,columns:g()}),l.tableKeyboardNavigation.onGetSnapshotBeforeUpdate({document:X(),contextStateRef:me,navigationStateRef:he});const o={dataItems:_(),mode:Ve.mode,cell:Ve.cell,componentId:e.id,selectedField:e.gridProps.selectedField,...W(t)};if(e.gridProps.onKeyDown&&n&&q(e.gridProps.onKeyDown,o),!e.gridProps.selectedField&&Ve.enabled&&e.gridProps.dataItemKey){const n=l.getSelectedStateFromKeyDown({event:o,selectedState:null!=(r=e.gridProps.select)?r:{},dataItemKey:e.gridProps.dataItemKey});if(n===e.gridProps.select)return;const i=t.target,s=l.closestTagName(i,"TD"),c=l.closestTagName(i,"TR"),d=l.getColumnIndex(s),u=l.getRowIndex(c);if(void 0!==d&&void 0!==u){const r=null==(a=N(e.gridProps.data))?void 0:a[u];e.gridProps.onSelectionChange&&q(e.gridProps.onSelectionChange,{...o,select:n,dataItem:r,startRowIndex:u,startColIndex:d,startDataItem:r,endDataItem:r,endRowIndex:u,endColIndex:d,ctrlKey:t.ctrlKey,altKey:t.altKey,metaKey:t.metaKey,shiftKey:t.shiftKey,isDrag:!1})}}},onFocus:t=>{l.tableKeyboardNavigation.onFocus(t,{navigatable:!!e.gridProps.navigatable,contextStateRef:me})},scrollHandler:t=>{if(t.target!==t.currentTarget)return;clearTimeout(Ge.current),ue.current&&(ue.current.table=Ee.current);const r=t.currentTarget.scrollLeft,l=t.currentTarget.scrollTop,a="virtual"===e.gridProps.scrollable;e.gridProps.columnVirtualization&&(!a||l===Me.current)&&(Ge.current=window.setTimeout((()=>{se()}),0)),e.gridProps.scrollLeftRef&&(e.gridProps.scrollLeftRef.current=r),ke.current&&ke.current.setScrollLeft(r),Se.current&&Se.current.setScrollLeft(r),ue.current&&l!==Me.current&&ue.current.scrollHandler(t),e.gridProps.onScroll&&n&&q(e.gridProps.onScroll,{...W(t)}),Me.current=l},selectionChange:t=>{var r;if(e.gridProps.onSelectionChange&&Ve.enabled){const{event:n,dataItem:a,dataIndex:o,columnIndex:i}=t,s={...W(n.syntheticEvent),dataItem:a,startColIndex:i,endColIndex:i,startRowIndex:o,endRowIndex:o,dataItems:_(),altKey:!1,ctrlKey:!1,shiftKey:!1,metaKey:!1,mode:Ve.mode,cell:Ve.cell,isDrag:!1,componentId:e.id,selectedField:e.gridProps.selectedField||""};q(e.gridProps.onSelectionChange,{...s,select:e.gridProps.dataItemKey?l.getSelectedState({event:s,selectedState:null!=(r=e.gridProps.select)?r:{},dataItemKey:e.gridProps.dataItemKey}):{}})}},dispatchDetailExpand:(t,r)=>{var n;if(l.getDetailExpandableOptions(e.detailExpandable).enabled){const a=l.detailExpandReducer(null!=(n=e.gridProps.detailExpand)?n:{},t);e.gridProps.onDetailExpandChange&&q(e.gridProps.onDetailExpandChange,{...W(r),detailExpand:a})}},dispatchGroupExpand:(t,r)=>{var n;const a=l.getGroupExpandableOptions("object"==typeof e.gridProps.groupable?!1!==e.gridProps.groupable.expandable:e.gridProps.groupable);if(a.enabled){const o=l.groupExpandReducer(null!=(n=e.gridProps.groupExpand)?n:[],t,a);e.gridProps.onGroupExpandChange&&q(e.gridProps.onGroupExpandChange,{...W(r),groupExpand:o})}},columnResizeRef:pe,dragLogicRef:ge,navigationStateRef:he,tableElementRef:Ee,tableBodyElementRef:ve,headerElementRef:be,containerElementRef:xe,headTableElementRef:Ie,elementRef:ye,footerRef:Se,headerRef:ke,vsRef:ue}},v.createElement(l.TableKeyboardNavigationContext.Provider,{value:me.current},e.children),v.createElement(te,{show:o.show,dataItem:o.dataItem,field:o.field,items:p,offset:o.offset,onClose:s,onSelect:t=>{var r,n,a,o,i,d,u,p,g;const m=t.event.item,f={target:ce.current,syntheticEvent:t.event.syntheticEvent,nativeEvent:t.event.nativeEvent,menuItem:m,...t};e.gridProps.onContextMenuItemClick&&q(e.gridProps.onContextMenuItemClick,f);const v=$(),E={selectedField:e.gridProps.selectedField||"",componentId:e.id,dataItems:v,dataItem:t.dataItem,startRowIndex:-1,endRowIndex:-1,startColIndex:-1,endColIndex:-1,ctrlKey:!1,altKey:!1,metaKey:!1,shiftKey:!1,isDrag:!1,...l.getSelectionOptions(e.gridProps.selectable),...f},I=v.findIndex((e=>e===t.dataItem));switch(null==(r=m.data)?void 0:r.action){case"SortCommand":if(c){const e=null==(n=m.name)?void 0:n.toLowerCase().includes("asc"),r=(null==(a=m.name)?void 0:a.toLowerCase().includes("desc"))?"desc":void 0,l=e?"asc":r,o=m.name?l:void 0;h(t.event.syntheticEvent,c,o)}break;case"SelectRowCommand":b(E);break;case"SelectAllRowsCommand":C(E);break;case"ClearSelectionCommand":x(E);break;case"ReorderRowCommand":He.current=t.dataItem,null!=(o=m.name)&&o.toLowerCase().includes("rowup")&&I>0&&D(t.event.syntheticEvent,I-1,"before"),null!=(i=m.name)&&i.toLowerCase().includes("rowdown")&&I<v.length-1&&D(t.event.syntheticEvent,I+1,"after"),null!=(d=m.name)&&d.toLowerCase().includes("rowtop")&&D(t.event.syntheticEvent,0,"before"),null!=(u=m.name)&&u.toLowerCase().includes("rowbottom")&&D(t.event.syntheticEvent,v.length-1,"after");break;case"CopySelectionCommand":A(l.ClipboardActionType.copy,t.event.nativeEvent,{copyHeaders:!(null!=(p=m.name)&&p.toLowerCase().includes("noheaders"))},t.dataItem,t.field);break;case"PasteCommand":A(l.ClipboardActionType.paste,t.event.nativeEvent,{copyHeaders:!(null!=(g=m.name)&&g.toLowerCase().includes("noheaders"))},t.dataItem,t.field)}s()}}))},ie="grid.noRecords",se="grid.pagerInfo",ce="grid.pagerFirstPage",de="grid.pagerPreviousPage",ue="grid.pagerNextPage",pe="grid.pagerLastPage",ge="grid.pagerItemsPerPage",me="grid.groupPanelEmpty",he="grid.groupColumn",fe="grid.ungroupColumn",Ce="grid.columnMenu",ve="grid.filterApplyButton",be="grid.filterClearButton",xe="grid.filterResetButton",Ee="grid.filterSubmitButton",Ie="grid.filterTitle",ye="grid.sortAscending",Se="grid.sortDescending",ke="grid.searchPlaceholder",we="grid.searchboxPlaceholder",Pe="grid.filterCheckAll",Re="grid.filterChooseOperator",Ne="grid.filterSelectAll",Te="grid.filterSelectedItems",De="grid.sortAriaLabel",Me="grid.filterAriaLabel",Ge="grid.groupPanelAriaLabel",Le="grid.groupExpand",Oe="grid.groupCollapse",Fe="grid.detailExpand",He="grid.detailCollapse",Ke="grid.selectRow",Ae="grid.gridAriaLabel",ze="grid.gridRowReorderAriaLabel",Be={[Fe]:"Expand detail row",[He]:"Collapse detail row",[Le]:"Expand group",[Oe]:"Collapse Group",[ie]:"No records available",[me]:"Drag a column header and drop it here to group by that column",[ve]:"Apply",[be]:"Clear",[xe]:"Reset",[Ee]:"Filter",[Ie]:"Filter",[ye]:"Sort Ascending",[Se]:"Sort Descending",[De]:"Sortable",[he]:"Group Column",[fe]:"Ungroup Column",[Ce]:"Column menu",[ge]:"items per page",[se]:"{0} - {1} of {2} items",[ce]:"Go to the first page",[de]:"Go to the previous page",[ue]:"Go to the next page",[pe]:"Go to the last page","grid.pagerPage":"Page","grid.pagerPageSizeAriaLabel":"Page size","grid.pagerOf":"of","grid.pagerTotalPages":"{0}",[ke]:"Search",[we]:"Search...",[Pe]:"Check All",[Re]:"Choose Operator",[Te]:"selected items",[Ne]:"Select All",[Me]:"Filter",[Ge]:"Group panel",[Ae]:"Table",[ze]:"Drag row",[Ke]:"Select Row","grid.filterEqOperator":"Is equal to","grid.filterNotEqOperator":"Is not equal to","grid.filterIsNullOperator":"Is null","grid.filterIsNotNullOperator":"Is not null","grid.filterIsEmptyOperator":"Is empty","grid.filterIsNotEmptyOperator":"Is not empty","grid.filterStartsWithOperator":"Starts with","grid.filterContainsOperator":"Contains","grid.filterNotContainsOperator":"Does not contain","grid.filterEndsWithOperator":"Ends with","grid.filterGteOperator":"Is greater than or equal to","grid.filterGtOperator":"Is greater than","grid.filterLteOperator":"Is less than or equal to","grid.filterLtOperator":"Is less than","grid.filterIsTrue":"Is true","grid.filterIsFalse":"Is false","grid.filterBooleanAll":"(All)","grid.filterAfterOrEqualOperator":"Is after or equal to","grid.filterAfterOperator":"Is after","grid.filterBeforeOperator":"Is before","grid.filterBeforeOrEqualOperator":"Is before or equal to","grid.filterAndLogic":"And","grid.filterOrLogic":"Or"},Ve=e=>{var t;const r=v.useContext(ae),n=a.useId(),l=o.useLocalization(),i=null!=(t=e.isSelected)?t:a.getNestedValue(e.field,e.dataItem),s="boolean"==typeof i&&i,c=v.useCallback((t=>{null==r||r.selectionChange({event:t,dataItem:e.dataItem,dataIndex:e.rowDataIndex,columnIndex:e.columnIndex})}),[r,e.columnIndex,e.rowDataIndex,e.dataItem]);return v.createElement("span",{className:"k-checkbox-wrap"},v.createElement("input",{id:n,tabIndex:-1,type:"checkbox",className:"k-checkbox k-checkbox-md k-rounded-md","aria-label":l.toLanguageString(Ke,Be[Ke]),"aria-checked":s,checked:s,onChange:c}))},We=e=>{var t;const{cellProps:r}=e,n=v.useContext(ae),a=l.useTableKeyboardNavigation(r.id),o={onContextMenu:v.useCallback((e=>{null!=n&&n.onContextMenu&&n.onContextMenu.call(void 0,e,r.dataItem,r.field)}),[n,r.dataItem,r.field])},i=n.getCellPositionStyle(r.columnPosition),s={...a,...o,...{style:{...null==(t=e.tdProps)?void 0:t.style,...i}}},c={onContextMenu:n.onContextMenu,onChange:n.itemChange,selectionChange:e=>{n.selectionChange({event:e,dataItem:r.dataItem,dataIndex:r.rowDataIndex,columnIndex:r.columnIndex})}};if(e.isCustom)return n.isClient||e.isClient?B(e.children,{tdProps:{...e.tdProps,...s},...c}):B(e.children,{...s});if(r.render){const t="groupHeader"!==r.rowType?v.createElement("td",{...e.tdProps,...s},e.content):null;return r.render.call(void 0,t,{...r,...c})}return e.children&&B(e.children,{...s})},qe=e=>{const{className:t,colSpan:r,style:n,ariaColumnIndex:l,rowType:o,cells:i}=e,s={colSpan:r,style:n,className:a.classNames("k-table-td",t),"aria-colindex":l,role:"gridcell"},c=v.createElement(Ve,{key:1,...e}),d=A(e),u=o||"data",p=i;if(p&&p.select&&p.select[u]){const e=p.select[u],t=K(e);return v.createElement(We,{cellProps:d,tdProps:s,isCustom:!0,isClient:t},v.createElement(e,{...d,tdProps:s},c))}const g="groupHeader"!==o?v.createElement("td",{...s},c):null;return v.createElement(We,{cellProps:d,content:c,tdProps:s},g)},_e=e=>{const{cellProps:t}=e,r=v.useContext(ae),n=l.useTableKeyboardNavigation(t.id),o=e.expanded,i=v.useCallback((e=>{e.isDefaultPrevented()||e.keyCode===a.Keys.enter&&null!=r&&r.itemChange&&(e.preventDefault(),r.itemChange({dataItem:t.dataItem,dataIndex:t.dataIndex,syntheticEvent:e,field:t.field,value:!o}))}),[t.dataItem,t.dataIndex,t.field,r,o]),s={...n,..."groupHeader"!==t.rowType&&"groupFooter"!==t.rowType?{onKeyDown:i}:{}},c={onContextMenu:r.onContextMenu,onChange:r.itemChange,selectionChange:e=>{r.selectionChange({event:e,dataItem:t.dataItem,dataIndex:t.rowDataIndex,columnIndex:t.columnIndex})}};if(e.isCustom)return r.isClient||e.isClient?B(e.children,{tdProps:{...e.tdProps,...s},...c}):B(e.children,{...s});if(t.render){const r="groupHeader"!==t.rowType?v.createElement("td",{...e.tdProps,...s},e.content):null;return t.render.call(void 0,r,{...t,...c})}return e.children&&B(e.children,{...s})},Ue=e=>{const t=v.useContext(ae),r=o.useLocalization(),n=e.expanded,s=n?He:Fe,c=r.toLanguageString(s,Be[s]);return v.createElement("a",{onClick:r=>{r.preventDefault(),null!=t&&t.itemChange&&t.itemChange({dataItem:e.dataItem,dataIndex:e.dataIndex,syntheticEvent:r,field:e.field,value:!n,_expand:!0}),void 0!==e.dataItem[t.dataItemKey]&&(null==t||t.dispatchDetailExpand({type:l.DETAIL_EXPAND_ACTION.TOGGLE,id:e.dataItem[t.dataItemKey]}))},"aria-label":c,href:"#",tabIndex:-1},v.createElement(a.IconWrap,{name:n?"minus":"plus",icon:n?i.minusIcon:i.plusIcon}))},je=e=>{let t=null,r=null,n=null;const l=A(e),a=e.expanded;"groupFooter"===e.rowType?r={className:"k-table-td k-hierarchy-cell",role:"gridcell"}:"groupHeader"!==e.rowType&&(r={className:"k-table-td k-hierarchy-cell",role:"gridcell","aria-expanded":!!a,"aria-colindex":e.ariaColumnIndex},n=v.createElement(Ue,{...l}));const o=e.rowType||"data",i=e.cells;if(i&&i.hierarchy&&i.hierarchy[o]){const e=i.hierarchy[o],t=K(e);return v.createElement(_e,{cellProps:l,tdProps:r,isCustom:!0,isClient:t},v.createElement(e,{...l,tdProps:r},n))}return"groupHeader"!==e.rowType&&(t=v.createElement("td",{...r},n)),v.createElement(_e,{cellProps:l,content:n,tdProps:r},t)},$e=e=>{const{cellProps:t}=e,r=v.useContext(ae),n=a.useId(),o=a.getNestedValue(t.field,t.dataItem);let i=null;const s=v.useCallback((e=>{null!=r&&r.itemChange&&r.itemChange({dataItem:t.dataItem,dataIndex:t.dataIndex,field:t.field,syntheticEvent:e.syntheticEvent,value:e.value})}),[r,t.dataItem,t.dataIndex,t.field]);switch(t.editor){case"numeric":i=v.createElement(c.NumericTextBox,{className:e.className,value:void 0===o?null:o,onChange:s,[l.TABLE_PREVENT_SELECTION_ELEMENT]:!0});break;case"date":i=v.createElement(d.DatePicker,{className:e.className,value:o,onChange:s,[l.TABLE_PREVENT_SELECTION_ELEMENT]:!0});break;case"boolean":i=v.createElement(c.Checkbox,{className:e.className,checked:o||!1,id:n,onChange:s,[l.TABLE_PREVENT_SELECTION_ELEMENT]:!0});break;default:i=v.createElement(c.TextBox,{className:e.className,value:o||"",onChange:s,[l.TABLE_PREVENT_SELECTION_ELEMENT]:!0})}return i},Xe=e=>{var t;const{cellProps:r}=e,n=v.useContext(ae),a=l.useTableKeyboardNavigation(r.id),o={onContextMenu:v.useCallback((e=>{null!=n&&n.onContextMenu&&n.onContextMenu.call(void 0,e,r.dataItem,r.field)}),[n,r.dataItem,r.field])},i=n.getCellPositionStyle(r.columnPosition),s={...a,...o,...{style:{...null==(t=e.tdProps)?void 0:t.style,...i}}},c={onContextMenu:n.onContextMenu,onChange:n.itemChange,selectionChange:e=>{n.selectionChange({event:e,dataItem:r.dataItem,dataIndex:r.rowDataIndex,columnIndex:r.columnIndex})}};if(e.isCustom)return n.isClient||e.isClient?B(e.children,{tdProps:{...e.tdProps,...s},...c}):B(e.children,{...s});if(r.render){const t=v.createElement("td",{...e.tdProps,...s},e.content);return r.render.call(void 0,t,{...r,...c})}return e.children&&B(e.children,{...s})},Ye=e=>{const t=e.unstyled,r=t&&t.uGrid?t.uGrid:a.uGrid,n=a.classNames(r.editTd({selected:e.isSelected}),e.className),l={colSpan:e.colSpan,style:e.style,className:n,"aria-colindex":e.ariaColumnIndex,"aria-selected":e.isSelected,[X]:e.columnIndex,role:"gridcell"},o=A(e),i=v.createElement($e,{cellProps:o}),s=e.editor||"text",c=e.cells;if(c){let e;if(c.edit&&c.edit[s]?e=c.edit[s]:c.data&&(e=c.data),e){const t=K(e);return v.createElement(Xe,{cellProps:o,tdProps:l,isCustom:!0,isClient:t},v.createElement(e,{...o,tdProps:l},i))}}return v.createElement(Xe,{cellProps:o,content:i,tdProps:l},v.createElement("td",{...l},i))},Je=e=>{const t=v.useRef(null),r=v.useRef(null),n=v.useRef(!1),o=v.useContext(ae),i=a.useRtl(o.headerElementRef);o.columnResizeRef.current&&o.columnResizeRef.current.setIsRtl("rtl"===i),v.useImperativeHandle(o.headerRef,(()=>({setScrollLeft:e=>{t.current&&t.current.scrollLeft!==e&&(n.current=!0,t.current.scrollLeft=e)},setWidth:e=>{r.current&&(r.current.style.width=e+"px")},table:()=>r.current})));const s=a.useUnstyled(),c=s&&s.uGrid?s.uGrid:a.uGrid,{size:d="md"}=e;return e.staticHeaders?v.createElement("div",{ref:o.headerElementRef,className:a.classNames(c.header({draggable:e.draggable}),e.className),role:"presentation"},v.createElement("div",{ref:t,className:a.classNames(c.headerWrap({})),onScroll:e=>{var r;if(n.current)return void(n.current=!1);if(!t.current)return;const l=t.current.scrollLeft,a=(null==(r=o.vsRef.current)?void 0:r.container)||null;a&&a.scrollLeft!==l&&(a.scrollLeft=l)},role:"presentation"},v.createElement("table",{ref:r,className:a.classNames(c.headerTable({size:d}),e.className),role:"presentation"},v.createElement("colgroup",{ref:e=>{o.columnResizeRef.current&&(o.columnResizeRef.current.colGroupHeader=e)}},e.cols),v.createElement("thead",{className:a.classNames(c.tableThead({})),role:"rowgroup",...l.tableKeyboardNavigationHeaderAttributes},e.headerRow,e.filterRow)))):v.createElement("thead",{role:"presentation",className:a.classNames(c.thead({draggable:e.draggable}),e.className),...l.tableKeyboardNavigationHeaderAttributes},e.headerRow,e.filterRow)};Je.displayName="KendoReactHeader";const Qe=[".k-columnmenu-item-content",".k-filter-menu-container"].map((e=>a.TABBABLE_ELEMENTS.map((t=>`${e} ${t}`)))),Ze=[[".k-tabstrip-items"],[".k-columnmenu-item"],...Qe],et=e=>{const[t,r]=v.useState(!1),n=v.useRef(null),l=v.useRef(null),s=v.useRef(null),c=v.useRef(0),{columnMenu:d,...p}=e,{column:g,columnMenuIcon:m,navigatable:h}=e,f=o.useLocalization(),C=g.title||g.field,b=C?`${C} `:"",x=()=>{e.onCloseMenu&&e.onCloseMenu(),r(!1),!e.navigatable&&n.current&&n.current.focus()},E=v.useMemo((()=>void 0!==e.show?e.show:t),[e.show,t]),I=(e,t,r)=>{r.preventDefault(),r.shiftKey?t.focusPrevious(e):t.focusNext(e)},y=(e,t,r)=>{e&&e.click()},S=(e,t,r)=>{r.preventDefault(),x()},k=(e,t,r)=>{r.preventDefault(),t.focusElement(e)};return v.useEffect((()=>(E&&l.current&&(s.current=new a.Navigation({tabIndex:0,root:l,selectors:Ze,keyboardEvents:{keydown:{Tab:I,Enter:y,Escape:S}},mouseEvents:{mousedown:k}}),s.current.focusElement(s.current.first,null)),()=>{s.current&&(s.current=null)})),[E]),v.createElement(v.Fragment,null,v.createElement("a",{className:"k-grid-header-menu k-grid-column-menu",ref:n,onClick:n=>{n.preventDefault(),t&&e.onCloseMenu&&e.onCloseMenu(),r(!t)},onKeyDown:e=>{var t;if(e.keyCode===a.Keys.tab){const r=e.target,n=r&&(null==(t=r.closest(".k-grid"))?void 0:t.getElementsByClassName("k-grid-content")[0]);n&&n.scrollWidth>n.clientWidth&&r.scrollIntoView({inline:"center"})}},href:"#",tabIndex:h?-1:void 0,"aria-label":`${h?"":b}${f.toLanguageString(Ce,Be[Ce])}`},m?v.createElement(a.IconWrap,{name:m.name,icon:m}):v.createElement(a.IconWrap,{name:"more-vertical",icon:i.moreVerticalIcon})),v.createElement(u.Popup,{anchor:n.current,show:E,popupClass:"k-column-menu k-column-menu-popup k-grid-columnmenu-popup",onMouseDownOutside:e=>{!e.isAnchorClicked&&r(!1)}},v.createElement("div",{ref:l,onBlur:e=>{const t=a.getActiveElement(document);clearTimeout(c.current),c.current=window.setTimeout((()=>{t&&e.relatedTarget!==n.current&&l.current&&!l.current.contains(t)&&x()}))},onFocus:()=>{clearTimeout(c.current)},onMouseDown:e=>{var t;null==(t=s.current)||t.triggerMouseEvent(e)},onKeyDown:e=>{var t;null==(t=s.current)||t.triggerKeyboardEvent(e)},style:{outline:"none"}},d&&v.createElement(d,{...p,onCloseMenu:x}))))},tt=e=>{const t=a.useUnstyled(),r=t&&t.uGrid?t.uGrid:a.uGrid,n=e.onClick?{onClick:e.onClick}:{},l=v.createElement("span",{className:a.classNames(r.headerCellInner({}))},v.createElement("span",{className:a.classNames(r.headerCellLink({sortable:e.columnMenuWrapperProps.sortable})),...n},v.createElement("span",{className:a.classNames(r.columnTitle({}))},e.title||e.field||" "),e.children),e.columnMenuWrapperProps.columnMenu&&v.createElement(et,{...e.columnMenuWrapperProps}));return e.render?e.render.call(void 0,l,e):l},rt=v.createContext(void 0),nt=e=>{const t=v.useContext(ae),r=v.useRef(null),[n,l]=v.useState(),o=(r,n)=>{e.sortable&&n.sortable&&(r.preventDefault(),t.sortChange&&t.headerCellClick(r,n))};return v.createElement(rt.Provider,{value:{cellClick:o,cellKeyDown:(n,i)=>{if(n.isDefaultPrevented())return;const{keyCode:s,metaKey:c,ctrlKey:d,altKey:u}=n,p=e.sortable&&i.sortable,g=n.target;if(p&&n.keyCode===a.Keys.enter&&-1!==g.className.indexOf("k-table-th")&&o(n,i),e.navigatable){if(e.groupable&&(c&&s===a.Keys.enter||d&&s===a.Keys.space)){n.preventDefault();const r=e.columns.findIndex((e=>e.field===i.field));t.columnGroupChange&&t.columnGroupChange(r,n)}u&&s===a.Keys.down&&(n.preventDefault(),l(i.field),r.current=g)}},handleCloseMenu:()=>{l(void 0),r.current&&"-1"!==r.current.getAttribute("tabindex")&&r.current.focus()},showColumnMenuField:n}},e.children)},lt=e=>{const t=v.useContext(ae),r=v.useContext(rt),n=t.isClient||e.isClient,l={style:{...t.getCellPositionStyle(e.column)}},a={onKeyDown:t=>{r.cellKeyDown(t,e.column)}};let o={onClick:t=>{r.cellClick(t,e.column)}};return n&&(o={...o,render:e.render,selectionChange:t.onHeaderSelectionChange,columnMenuWrapperProps:{...e.columnMenuWrapperProps,onSortChange:t.sortChange,onFilterChange:t.filterChange,onGroupChange:t.groupChange,onColumnsStateChange:t.onColumnsStateChange,show:r.showColumnMenuField===e.column.field||void 0,onCloseMenu:r.handleCloseMenu,columnsState:t.columnsState}}),e.isCustom&&(o=n?{...o,thProps:{...e.thProps,...a,...l}}:{...o,...a,...l}),B(e.children,{...o})},at=e=>{const t=v.useRef(null),r=a.useUnstyled(),n=r&&r.uGrid?r.uGrid:a.uGrid;return v.createElement(a.Draggable,{onPress:r=>{const n=t.current&&t.current.element;n&&e.pressHandler&&e.pressHandler(r.event,n)},onDrag:r=>{const n=t.current&&t.current.element;n&&e.dragHandler&&e.dragHandler(r.event,n)},onRelease:r=>{t.current&&t.current.element&&e.releaseHandler&&e.releaseHandler(r.event)},hint:e.dragClue,autoScroll:{boundaryElementRef:e.headerRef,direction:{horizontal:!0,vertical:!1}},scrollContainer:e.containerRef||void 0,ref:t},v.createElement("tr",{className:a.classNames(n.simpleTr({})),style:{touchAction:"none"},role:"row","aria-rowindex":e.ariaRowIndex},e.children))},ot=e=>{const t=v.useContext(ae);return t.dragLogicRef.current.pressHandler&&v.createElement(at,{ariaRowIndex:e.ariaRowIndex,pressHandler:t.dragLogicRef.current.pressHandler,dragHandler:t.dragLogicRef.current.dragHandler,releaseHandler:t.dragLogicRef.current.releaseHandler,dragClue:t.dragLogicRef.current.dragClue,headerRef:t.headerElementRef,containerRef:t.containerElementRef},e.children)||v.createElement("tr",{className:e.className,role:"row","aria-rowindex":e.ariaRowIndex},e.children)},it=e=>{const t=v.useContext(ae),r=v.useContext(rt),n={style:{...t.getCellPositionStyle(e.column)}};return B(e.children,{onKeyDown:t=>{r.cellKeyDown(t,e.column)},onContextMenu:r=>{t.onContextMenu(r,void 0,e.column.field)},...n})},st=e=>{const{column:t}=e,r=v.useContext(ae);return r.columnResizeRef.current&&r.columnResizeRef.current.resizable&&t.resizable&&v.createElement(l.ColumnResizer,{key:2,resize:(e,n,l)=>r.columnResizeRef.current&&r.columnResizeRef.current.dragHandler(e,t,n,l),autofit:e=>r.columnResizeRef.current&&r.columnResizeRef.current.dblClickHandler(e,[t.id])})||v.createElement(v.Fragment,null)},ct={none:"none",asc:"ascending",desc:"descending"},dt=e=>{const t=e.unstyled,r=t&&t.uGrid?t.uGrid:a.uGrid;let n=0,o=-1;const s=t=>{if(!e.sort)return null;const n=a.classNames(r.sortIcon({}));return t>=0&&[v.createElement("span",{key:1,className:n},v.createElement(a.IconWrap,{name:"sort-"+e.sort[t].dir+"-small",icon:"asc"===e.sort[t].dir?i.sortAscSmallIcon:i.sortDescSmallIcon})),e.sort.length>1&&v.createElement("span",{key:2,className:n},v.createElement("span",{className:a.classNames(r.sortOrder({}))},t+1))]},c=e.columns.map(G);return v.createElement(nt,{sortable:e.sortable,sort:e.sort,navigatable:e.navigatable,groupable:e.groupable,columns:c},e.columnsMap.map(((t,i)=>v.createElement(ot,{key:i,className:a.classNames(r.simpleTr({})),ariaRowIndex:i+1},(t=>t.map((t=>{var i;const c=e.columns[t],d=e.sortable&&c.sortable,u=e.sort?e.sort.findIndex((e=>e.field===c.field)):-1,p=u>=0&&e.sort[u].dir||"none",g=null===c.columnMenu?null:c.columnMenu||e.columnMenu,m=c.menuIcon||e.columnMenuIcon,h=a.classNames(a.classNames(r.headerTh({first:c.kFirst,filterable:!!g,locked:c.locked,sorted:e.sort&&e.sort.some((e=>e.field===c.field))})),c.headerClassName);!1===c.locked&&(c.left=0);const f=e.localization.toLanguageString(De,Be[De]),C=c.isAccessible?{ariaSort:ct[p],role:"columnheader",ariaColumnIndex:c.ariaColumnIndex,ariaSelected:!1,ariaDescription:d?f:""}:{role:"presentation"},b=c.declarationIndex>=0?++o:--n,x={field:c.field,title:c.title,selectionValue:null!=(i=c.headerSelectionValue)?i:e.headerSelectionValue,children:s(u),selectionChange:null,columnMenuWrapperProps:{column:{field:c.field,title:c.title,locked:c.locked,filter:c.filter,id:c.id},sortable:d&&e.sortable,sort:e.sort,filter:e.filter,filterable:e.filterable&&c.filterable,filterOperators:e.filterOperators,navigatable:e.navigatable,group:e.group,groupable:e.groupable,columnMenu:g,columnMenuIcon:m}},E={...C,colSpan:c.headerColSpan,rowSpan:c.rowSpan,className:h,columnId:c.id,navigatable:c.navigatable,role:"columnheader"},I=G(c),y={column:I,render:e.cellRender,sortable:e.sortable,sort:e.sort,columnMenuWrapperProps:x.columnMenuWrapperProps},S=c.headerCell?c.headerCell:tt,k=[v.createElement(lt,{key:1,...y,isClient:K(S)},v.createElement(S,{...x})),v.createElement(st,{key:2,column:I})],w=F(e.cells,c.cells);if(w&&w.headerCell){const e=w.headerCell,r=K(e);return v.createElement(lt,{key:b,...y,thProps:E,isCustom:!0,isClient:r},v.createElement(e,{...x,thProps:E,index:t},k))}return v.createElement(it,{key:b,column:I},v.createElement(l.HeaderThElement,{...E},k))})))(t)))))},ut=[{text:"grid.filterAndLogic",operator:"and"},{text:"grid.filterOrLogic",operator:"or"}],pt={text:[{text:"grid.filterContainsOperator",operator:"contains"},{text:"grid.filterNotContainsOperator",operator:"doesnotcontain"},{text:"grid.filterEqOperator",operator:"eq"},{text:"grid.filterNotEqOperator",operator:"neq"},{text:"grid.filterStartsWithOperator",operator:"startswith"},{text:"grid.filterEndsWithOperator",operator:"endswith"},{text:"grid.filterIsNullOperator",operator:"isnull"},{text:"grid.filterIsNotNullOperator",operator:"isnotnull"},{text:"grid.filterIsEmptyOperator",operator:"isempty"},{text:"grid.filterIsNotEmptyOperator",operator:"isnotempty"}],numeric:[{text:"grid.filterEqOperator",operator:"eq"},{text:"grid.filterNotEqOperator",operator:"neq"},{text:"grid.filterGteOperator",operator:"gte"},{text:"grid.filterGtOperator",operator:"gt"},{text:"grid.filterLteOperator",operator:"lte"},{text:"grid.filterLtOperator",operator:"lt"},{text:"grid.filterIsNullOperator",operator:"isnull"},{text:"grid.filterIsNotNullOperator",operator:"isnotnull"}],date:[{text:"grid.filterEqOperator",operator:"eq"},{text:"grid.filterNotEqOperator",operator:"neq"},{text:"grid.filterAfterOrEqualOperator",operator:"gte"},{text:"grid.filterAfterOperator",operator:"gt"},{text:"grid.filterBeforeOperator",operator:"lt"},{text:"grid.filterBeforeOrEqualOperator",operator:"lte"},{text:"grid.filterIsNullOperator",operator:"isnull"},{text:"grid.filterIsNotNullOperator",operator:"isnotnull"}],boolean:[{text:"grid.filterEqOperator",operator:"eq"}]},gt=e=>"isnull"===e||"isnotnull"===e||"isempty"===e||"isnotempty"===e,mt=(e,t)=>e.map((e=>({text:t.toLanguageString(e.text,Be[e.text]),operator:e.operator}))),ht=[{text:"grid.filterBooleanAll",operator:""},{text:"grid.filterIsTrue",operator:!0},{text:"grid.filterIsFalse",operator:!1}],ft={text:!1,numeric:!1,date:!1,boolean:!0},Ct=(e,t,r)=>{const n=vt(r.operators);let l=r.operator;switch(r.filterType){case"numeric":case"date":(!l||gt(l))&&(l=n),null===e&&l===n&&(l="");break;case"text":(!l||gt(l))&&(l=n),!e&&l===n&&(l="");break;default:return}r.onChange({value:e,operator:l,syntheticEvent:t})},vt=(e,t)=>t?e[t][0].operator:e[0].operator,bt=e=>e||"text",xt=(e,t)=>{const r=e.target.value;t({value:r.operator,operator:""===r.operator?"":"eq",syntheticEvent:e.syntheticEvent})},Et=(e,t,r)=>{let n=t;const l=e.target.value;e.target.state.opened&&(gt(l.operator)&&(n=null),null===t&&!gt(l.operator)&&(n=void 0),r({value:n,operator:l.operator,syntheticEvent:e.syntheticEvent}))},It=e=>{const t=v.useRef(),r=o.useLocalization(),n=(t,r)=>{Ct(t,r,e)},l=t=>{Et(t,e.value,e.onChange)},s=t=>{xt(t,e.onChange)},u=v.createElement("div",{className:"k-filtercell"},v.createElement("div",{className:"k-filtercell-wrapper"},((r,l,a)=>{switch(r){case"numeric":return v.createElement(c.NumericTextBox,{ref:t,size:e.size,value:l,onChange:e=>{n(e.value,e.syntheticEvent)},title:e.title,ariaLabel:e.ariaLabel});case"date":return v.createElement(d.DatePicker,{ref:t,size:e.size,value:l,onChange:e=>{n(e.value,e.syntheticEvent)},title:e.title,ariaLabel:e.ariaLabel,popupSettings:{onMouseDownOutside:e=>{!e.isAnchorClicked&&e.state&&e.state.props.show&&t&&t.current.togglePopup()}}});case"boolean":{const r=e=>null==e;return v.createElement(g.DropDownList,{ref:t,size:e.size,onChange:s,value:a.find((e=>e.operator===(r(l)?"":l))),data:a,textField:"text",title:e.title,ariaLabel:e.ariaLabel,popupSettings:{onMouseDownOutside:e=>{!e.isAnchorClicked&&e.state&&e.state.props.show&&t&&t.current.togglePopup()}}})}default:return v.createElement(c.TextBox,{ref:t,size:e.size,value:l||"",onChange:e=>{n(e.target.value,e.syntheticEvent)},title:e.title,"aria-label":e.ariaLabel})}})(e.filterType,e.value,e.booleanValues),v.createElement("div",{className:"k-filtercell-operator"},(()=>{if("boolean"===e.filterType)return;let t;const n=e.operators.find((t=>t.operator===e.operator))||null;return v.createElement(g.DropDownList,{ref:e=>t=e,size:e.size,value:n,onChange:l,className:"k-dropdown-operator",iconClassName:"k-i-filter k-icon",svgIcon:i.filterIcon,data:e.operators,textField:"text",title:r.toLanguageString(Re,Be[Re]),popupSettings:{width:"",onMouseDownOutside:function(e){!e.isAnchorClicked&&e.state&&e.state.props.show&&t&&t.togglePopup()}}})})()," ",v.createElement(p.Button,{size:e.size,icon:"filter-clear",svgIcon:i.filterClearIcon,className:a.classNames({"k-clear-button-visible":!!(null!==e.value&&""!==e.value||e.operator)}),title:r.toLanguageString(be,Be[be]),type:"button",onClick:r=>{r.preventDefault(),e.onChange({value:"",operator:"",syntheticEvent:r}),t.current&&(t.current.element.value="",setTimeout((()=>{t.current.element.focus()}),0))},disabled:!(null!==e.value&&""!==e.value||e.operator)}))));return e.render?e.render.call(void 0,u,e):u},yt=e=>{const t=v.useContext(ae),r=t.getCellPositionStyle(e.column),n=e.isCustom?{style:{...r}}:{};return t.isClient||e.isClient?B(e.children,{render:e.render,onChange:r=>{((r,n,l,a)=>{if(!t.filterChange)return;const o=[];(""!==r&&null!==r||""!==n)&&o.push({field:l,operator:n,value:r}),e.filter&&e.filter.filters&&(e.filter.filters||[]).forEach((e=>{e&&e.field!==l&&o.push(e)}));const i=e.filter&&e.filter.logic?e.filter.logic:"and";t.filterChange(o.length>0?{logic:i,filters:o}:null,a)})(r.value,r.operator,e.field,r.syntheticEvent)},tdProps:{...e.tdProps,...n}}):B(e.children,{})},St=e=>{const t={style:{...v.useContext(ae).getCellPositionStyle(e.column)}};return B(e.children,{...t})},kt=e=>{const t=(t,r)=>{let n=""+(r?"k-grid-header-sticky":"");return e.sort&&e.sort.filter((e=>e.field===t)).length>0&&(n+=" k-sorted"),n},r=e.filter&&e.filter.filters||[];let n=0,o=-1;const i=e.columns.filter((e=>0===e.children.length)).map((i=>{const s=bt(i.filter),c=(e=>{if(void 0===e)return;const t=r.filter((t=>t.field===e));return t.length?t[0]:void 0})(i.field),d=`${i.field} ${e.localization.toLanguageString(Me,Be[Me])}`;let u=c&&c.value;void 0===u&&(u="text"===s?"":null);const p=i.filterable&&{field:i.field,title:i.filterTitle,value:u,operator:c&&c.operator,operators:mt(e.filterOperators[s]||[],e.localization),booleanValues:mt(ht,e.localization),filterType:s,ariaLabel:"reorder"===i.columnType?"":d,size:e.size},g=i.declarationIndex>=0?++o:--n,m={columnId:l.tableKeyboardNavigationTools.getFilterColumnId(i.id),navigatable:i.navigatable||e.navigatable,className:a.classNames("k-table-td",t(i.field,i.locked)||void 0),role:"gridcell",ariaLabel:"reorder"===i.columnType?void 0:d,ariaColumnIndex:i.ariaColumnIndex},h=G(i),f={column:h,filter:e.filter,field:i.field,render:e.cellRender};let C=null;if(p&&"reorder"!==i.columnType){const e=i.filterCell?i.filterCell:It;C=v.createElement(yt,{...f,isClient:K(e)},v.createElement(e,{...p}))}const b=F(e.cells,i.cells);if(b&&b.filterCell){const e=b.filterCell,t=K(e);return v.createElement(yt,{key:g,...f,isClient:t,isCustom:!0},v.createElement(e,{key:g,...p,tdProps:m,index:o},C))}return v.createElement(St,{key:g,column:h},v.createElement(l.HeaderTdElement,{...m},C))}));return v.createElement("tr",{className:"k-table-row k-filter-row","aria-rowindex":e.ariaRowIndex,role:"row"},i)},wt=e=>{const t=v.useRef(null),{dir:r,title:n}=e;return v.createElement(a.Draggable,{onPress:r=>{const n=t.current&&t.current.element;n&&e.onPress&&e.onPress(r.event,n)},onDrag:r=>{const n=t.current&&t.current.element;n&&e.onDrag&&e.onDrag(r.event,n)},onRelease:r=>{t.current&&t.current.element&&e.onRelease&&e.onRelease(r.event)},ref:t},v.createElement("div",{className:"k-chip k-chip-md k-chip-solid k-chip-solid-base k-rounded-md",onClick:t=>{if(t.preventDefault(),e.onSortChange){const r="asc"===e.dir?"desc":"asc";e.onSortChange(t,r)}},onContextMenu:t=>{const r={title:e.title,dir:e.dir,index:e.index};e.onContextMenu&&e.onContextMenu.call(void 0,t,{dataItem:{...r}})},onKeyDown:t=>{(t.keyCode===a.Keys.delete||t.keyCode===a.Keys.backspace)&&(t.preventDefault(),t.stopPropagation(),e.onRemove&&e.onRemove(t))},tabIndex:0,role:"button",style:{touchAction:"none"}},v.createElement("span",null,v.createElement(a.IconWrap,{name:"sort-"+r+"-small",icon:"asc"===r?i.sortAscSmallIcon:i.sortDescSmallIcon,size:"small"})),v.createElement("span",{className:"k-chip-content"},v.createElement("span",{className:"k-chip-label"},n)),v.createElement("span",{className:"k-chip-actions"},v.createElement("span",{className:"k-chip-action k-chip-remove-action",onClick:t=>{t.preventDefault(),t.stopPropagation(),e.onRemove&&e.onRemove(t)}},v.createElement(a.IconWrap,{name:"x-circle",icon:i.xCircleIcon,size:"small"})))))},Pt=e=>{const t=v.useContext(ae),r=o.useLocalization(),n=e.group||[],l=t=>{const r=e.columns.find((e=>e.field===t)),n=r&&(r.title||r.field);return void 0===n?t:n},a=n.map(((r,n)=>v.createElement(wt,{key:n,index:n,dir:r.dir||"asc",title:l(r.field),onRemove:r=>{((r,n)=>{const l=e.group.slice();l.splice(n,1),t.groupChange(l,r)})(r,n)},onSortChange:(l,a)=>{((r,n,l,a)=>{const o=Object.assign({},l,{dir:a}),i=e.group.slice();i.splice(n,1,o),t.groupChange(i,r)})(l,n,r,a)},onPress:t.dragLogicRef.current.pressHandler,onDrag:t.dragLogicRef.current.dragHandler,onRelease:t.dragLogicRef.current.releaseHandler,onContextMenu:t.onContextMenu})));return v.createElement("div",{ref:t.dragLogicRef.current.refGroupPanelDiv,className:"k-grouping-header",role:"toolbar","aria-label":r.toLanguageString(Ge,Be[Ge]),"aria-controls":e.ariaControls||""},v.createElement("div",{className:"k-chip-list k-chip-list-md",role:"none"},a),v.createElement("div",{className:"k-grouping-drop-container"},!a.length&&r.toLanguageString(me,Be[me])," "))},Rt=e=>{const t=v.useRef(null),r=v.useRef(null),n=v.useContext(ae);return v.useImperativeHandle(n.footerRef,(()=>({setScrollLeft:e=>{t.current&&(t.current.scrollLeft=e)},setWidth:e=>{r.current&&(r.current.style.width=e+"px")}}))),e.staticHeaders?v.createElement("div",{className:"k-grid-footer",role:"presentation"},v.createElement("div",{ref:t,className:"k-grid-footer-wrap",role:"presentation"},v.createElement("table",{ref:r,className:a.classNames("k-table k-grid-footer-table",{"k-table-md":!e.size,[`k-table-${a.kendoThemeMaps.sizeMap[e.size]||e.size}`]:e.size},e.className),role:"presentation"},v.createElement("colgroup",{ref:e=>{n.columnResizeRef.current.colGroupFooter=e},role:"presentation"},e.cols),v.createElement("tfoot",{className:"k-table-tfoot",role:"presentation"},e.row)))):v.createElement("tfoot",{className:"k-table-tfoot"},e.row)};Rt.displayName="KendoReactFooter";const Nt=e=>{var t;const{cellProps:r}=e,n=v.useContext(ae),a=l.useTableKeyboardNavigation(r.id),o=v.useCallback((e=>{var t;null==(t=null==n?void 0:n.cellClick)||t.call(n,e,r.dataItem,r.field)}),[n,r.dataItem,r.field]),i=v.useCallback((e=>{var t;null==(t=null==n?void 0:n.onContextMenu)||t.call(void 0,e,r.dataItem,r.field)}),[n,r.dataItem,r.field]),s="groupFooter"===r.rowType||"groupHeader"!==r.rowType?{onContextMenu:i}:{},c=n.getCellPositionStyle(r.columnPosition),d={...a,...s,..."groupFooter"!==r.rowType&&"groupHeader"!==r.rowType?{style:{...null==(t=e.tdProps)?void 0:t.style,...c}}:{},onClick:o},u={onContextMenu:n.onContextMenu,onChange:n.itemChange,selectionChange:e=>{n.selectionChange({event:e,dataItem:r.dataItem,dataIndex:r.rowDataIndex,columnIndex:r.columnIndex})}};if(e.isCustom)return n.isClient||e.isClient?B(e.children,{tdProps:{...e.tdProps,...d},...u}):B(e.children,{...d});if(r.render){const t="groupHeader"!==r.rowType?v.createElement("td",{...e.tdProps,...d},e.content):null;return r.render.call(void 0,t,{...r,...u})}return e.children&&B(e.children,{...d})},Tt=e=>{var t,r,n;let l=null,o=null,i=null;const s=e.unstyled,c=s&&s.uGrid?s.uGrid:a.uGrid;if(null===(null==(t=e._rowSpan)?void 0:t.count))return null;if("groupFooter"===e.rowType)o={className:e.className},l=v.createElement("td",{...o},i);else if("groupHeader"!==e.rowType){if(void 0!==e.field){const t=k(e.field,e.dataItem);null!=t&&(i=e.intl&&e.format?e.intl.format(e.format,t):t.toString())}const t=a.classNames(c.td({selected:e.isSelected,sorted:e.isSorted,alt:e.isAlt}),e.className);o={rowSpan:null!=(n=null==(r=e._rowSpan)?void 0:r.count)?n:void 0,colSpan:e.colSpan,style:e.style,className:t,role:"gridcell","aria-colindex":e.ariaColumnIndex,"aria-selected":e.isSelected,[X]:e.columnIndex},l=v.createElement("td",{...o},i)}const d=A(e),u=e.rowType||"data",p=e.cells;if(p&&p[u]){const e=p[u],t=K(e);return v.createElement(Nt,{cellProps:d,tdProps:o,isCustom:!0,isClient:t},v.createElement(e,{...d,tdProps:o},i))}return v.createElement(Nt,{cellProps:d,content:i,tdProps:o},l)},Dt=e=>{const t=v.useContext(ae),r=o.useLocalization(),n=e.expanded?Oe:Le,s=r.toLanguageString(n,Be[n]),c="rtl"===t.dir;return v.createElement("a",{onClick:r=>{var n;r.preventDefault(),null!=t&&t.itemChange&&t.itemChange({dataItem:e.dataItem,dataIndex:e.dataIndex,syntheticEvent:r,field:void 0,value:!e.expanded}),null==(n=null==t?void 0:t.dispatchGroupExpand)||n.call(t,{type:l.GROUP_EXPAND_ACTION.TOGGLE,group:e.group})},href:"#",tabIndex:-1,"aria-label":s},v.createElement(a.IconWrap,{name:e.expanded?"caret-alt-down":c?"caret-alt-left":"caret-alt-right",icon:e.expanded?i.caretAltDownIcon:c?i.caretAltLeftIcon:i.caretAltRightIcon}))},Mt=e=>{var t;const{cellProps:r}=e,n=v.useContext(ae),o=l.useTableKeyboardNavigation(r.id),i=v.useCallback((e=>{e.isDefaultPrevented()||e.keyCode===a.Keys.enter&&null!=n&&n.itemChange&&(e.preventDefault(),n.itemChange({dataItem:r.dataItem,dataIndex:r.dataIndex,syntheticEvent:e,field:void 0,value:!r.expanded}),null==n||n.dispatchGroupExpand({type:l.GROUP_EXPAND_ACTION.TOGGLE,group:r.group},e))}),[n,r.dataItem,r.dataIndex,r.expanded,r.group]),s=e.addKeyDownHandler?{onKeyDown:i}:{},c=v.useCallback((e=>{null!=n&&n.onContextMenu&&n.onContextMenu.call(void 0,e,r.dataItem,r.field)}),[n,r.dataItem,r.field]),d=n.getCellPositionStyle(r.columnPosition),u={...o,...s,onContextMenu:c,...{style:{...null==(t=e.tdProps)?void 0:t.style,...d}}},p={onContextMenu:n.onContextMenu,onChange:n.itemChange,selectionChange:e=>{n.selectionChange({event:e,dataItem:r.dataItem,dataIndex:r.rowDataIndex,columnIndex:r.columnIndex})}};if(e.isCustom)return n.isClient||e.isClient?B(e.children,{tdProps:e.tdProps?{...e.tdProps,...u}:null,td2Props:e.td2Props?{...e.td2Props,onContextMenu:c}:null,...p}):B(e.children,{...u});const g=e.renderSecondCell?v.createElement("td",{...e.td2Props,onContextMenu:c}):null;if(r.render){let t=null;return e.renderFirstCell&&(t=e.renderSecondCell?v.createElement(v.Fragment,null,v.createElement("td",{...e.tdProps,...u},e.content),e.renderSecondCell&&g):v.createElement("td",{...e.tdProps,...u},e.content)),r.render.call(void 0,t,{...r,...p})}return v.createElement(v.Fragment,null,e.children&&B(e.children,{...u}),g)},Gt=e=>{const{columnIndex:t,level:r,columnsCount:n,rowType:l,dataItem:o,field:i,expanded:s,render:c,ariaColumnIndex:d}=e,u=i||"";let p=null,g=null,m=null,h=!1,f=!1,C=!1;const b=A(e);void 0===t||void 0===r||t<r||void 0===n||"groupHeader"!==l||void 0===o[u]?(f=!0,p={style:e.style,key:"g"+t,className:a.classNames("k-table-td","k-group-cell",{"k-grid-content-sticky":e.locked}),role:"gridcell"}):t===r&&(f=!0,p={className:"k-table-td",style:e.style,colSpan:n-t,key:"g-colspan",role:"gridcell","aria-selected":!1,"aria-expanded":s,"aria-colindex":d},m=v.createElement("p",{className:"k-reset"},v.createElement(Dt,{...b}),o[u]instanceof Date&&o[u].toString?o[u].toString():o[u]),h=!0,e.locked&&(C=!0,p={...p,colSpan:0,style:{...e.style,position:"sticky",zIndex:2}},g={className:"k-table-td",role:"gridcell",colSpan:n-t,style:{borderLeftWidth:0,borderRightWidth:0}}));const x=e.rowType||"data",E=e.cells;if(E&&E.group&&E.group[x]){const e=E.group[x],t=K(e);return v.createElement(Mt,{cellProps:b,tdProps:p,td2Props:g,isCustom:!0,isClient:t,addKeyDownHandler:!0},v.createElement(e,{...b,tdProps:p,td2Props:g},m))}const I=f?v.createElement("td",{...p,key:null==p?void 0:p.key},m):null;return v.createElement(Mt,{cellProps:b,addKeyDownHandler:h,tdProps:p,td2Props:g,renderFirstCell:f,renderSecondCell:C,content:m},I)},Lt=e=>{var t;const r=v.useContext(ae),{reorderRowDropTargetRef:n,reorderRowDragTargetRef:l,activeDragRowDataItemRef:o}=r,{rowType:i,isAltRow:s,isInEdit:c,isSelected:d}=e,u=a.useUnstyled(),p=u&&u.uGrid?u.uGrid:a.uGrid,g=a.classNames(p.tr({selected:d,isHeader:"groupHeader"===i,isFooter:"groupFooter"===i,isMaster:"groupHeader"!==i&&"groupFooter"!==i,isAltRow:s,isInEdit:c})),m=v.useRef(null);a.useDroppable(m,{onDragOver:t=>{if(e.isRowReorderable&&o.current){const e=t.originalEvent.target;n.current=e.closest(".k-table-row")}},onDrop:()=>{l.current&&e.isRowReorderable&&(l.current.style.userSelect="")}});const h={onClick:t=>r.rowClick(t,e.dataItem),onDoubleClick:t=>r.rowDblClick(t,e.dataItem)},f={ref:m,id:e.id,...h,className:g,style:{height:e.rowHeight?e.rowHeight+"px":"",visibility:e.isHidden?"hidden":"",userSelect:null==(t=null==l?void 0:l.current)?void 0:t.style.userSelect},role:"row","aria-rowindex":e.ariaRowIndex,"absolute-row-index":e.absoluteRowIndex,[$]:"data"===e.rowType?e.dataIndex:void 0},C=e.rowType||"data",b=e.rows;if(b&&b[C]){const t=b[C];return v.createElement(t,{key:e.absoluteRowIndex,...e,trProps:f},e.children)}const x=v.createElement("tr",{key:e.absoluteRowIndex,...f},e.children);return e.render?e.render.call(void 0,x,{...e,...h}):x},Ot=e=>{const t=v.useContext(ae),r=a.useId(),n=o.useLocalization(),l=e.id||r,i=[v.createElement("span",{key:0,className:"k-checkbox-wrap"},v.createElement("input",{id:l,type:"checkbox",tabIndex:-1,className:"k-checkbox k-checkbox-md k-rounded-md","aria-label":n.toLanguageString(Ke,Be[Ke]),"aria-checked":e.selectionValue,checked:e.selectionValue,onChange:r=>t.onHeaderSelectionChange({field:e.field,syntheticEvent:r})})),e.columnMenuWrapperProps.columnMenu&&v.createElement(et,{...e.columnMenuWrapperProps})];return e.render?e.render.call(void 0,i,e):i},Ft=e=>{const t=o.useLocalization();return v.createElement(v.Fragment,null,e.children||t.toLanguageString(ie,Be[ie]))};Ft.displayName="KendoReactGridNoRecords";const Ht=e=>{const t=v.useContext(ae),r=l.useTableKeyboardNavigation(e.id),n=t.getCellPositionStyle(e.column),a={...r,style:{...n}};return e.isCustom&&(t.isClient||e.isClient)?B(e.children,{tdProps:{...e.tdProps,...a},...r}):B(e.children,{...a})},Kt=e=>{const{column:t,index:r,cells:n}=e,l={colSpan:1!==t.colSpan?t.colSpan:void 0,className:a.classNames("k-table-td",t.locked&&void 0!==t.left?"k-grid-footer-sticky":""),role:"gridcell","aria-colindex":t.ariaColumnIndex},o={field:t.field,ariaColumnIndex:t.ariaColumnIndex,...l},i=G(t),s=F(n,t.cells);if(s&&s.footerCell){const t=s.footerCell,n=K(t);return v.createElement(Ht,{key:r,id:e.id,tdProps:l,isCustom:!0,isClient:n,column:i},v.createElement(t,{...o,tdProps:l,index:r}))}return v.createElement(Ht,{key:r,id:e.id,column:i},t.footerCell&&v.createElement(t.footerCell,{...o})||v.createElement("td",{...l}))},At=e=>v.createElement("tr",{className:"k-table-row",role:"row","aria-rowindex":e.ariaRowIndex},(e=>e.filter((t=>!(((e,t)=>{let r=e[t.parentIndex];for(;r;){if(r.footerCell)return!0;r=e[r.parentIndex]}return!1})(e,t)||!t.footerCell&&t.children&&t.children.length>0))))(e.columns).map(((t,r)=>{const n=l.tableKeyboardNavigationTools.generateNavigatableId(`${r}-footercell`,e.idPrefix,"nodata");return v.createElement(Kt,{key:n,column:t,id:n,index:r,cells:e.cells})}))),zt=e=>(({buttonCount:e=10,info:t=!0,type:r="numeric",pageSizes:n,previousNext:l=!0,responsive:a,navigatable:o,pageSizeValue:i})=>({buttonCount:e,info:t,pageSizes:!0===n?[5,10,20]:n||void 0,previousNext:l,responsive:!1!==a,navigatable:!1!==o,type:r,pageSizeValue:i}))(!0===e?{}:e),Bt={name:"@progress/kendo-react-grid",productName:"KendoReact",productCode:"KENDOUIREACT",productCodes:["KENDOUIREACT"],publishDate:0,version:"$VERSION",licensingDocsUrl:"https://www.telerik.com/kendo-react-ui/components/my-license/"},Vt=e=>{const t=v.useContext(ae),r=l.useTableKeyboardNavigation(e.id),n=v.useCallback((r=>{null!=t&&t.onContextMenu&&t.onContextMenu.call(void 0,r,e.dataItem)}),[t,e.dataItem]);return B(e.children,{onContextMenu:n,...r})},Wt=e=>{const{colSpan:t,ariaColIndex:r,dataItem:n,dataIndex:l,id:o}=e,i=e.unstyled,s=i&&i.uGrid?i.uGrid:a.uGrid;return v.createElement(Vt,{id:o,dataItem:n},v.createElement("td",{className:a.classNames(s.detailTd({})),colSpan:t,"aria-colindex":r,role:"gridcell"},v.createElement(e.detail,{dataItem:n,dataIndex:l})))},qt=e=>{const t=e.unstyled,r=t&&t.uGrid?t.uGrid:a.uGrid;return v.createElement("td",{className:a.classNames(r.hierarchyTd({})),role:"gridcell"})},_t=e=>{const t=v.useContext(ae),r=t.headerRef.current,n=r&&r.table()&&r.table().clientWidth,o=a.uGrid;return v.createElement("div",{key:"no-records",className:a.classNames(o.noRecords({})),style:{width:n}},v.createElement("div",{className:a.classNames(o.noRecordsTemplate({})),[l.KEYBOARD_NAV_DATA_ID]:l.tableKeyboardNavigationTools.generateNavigatableId("no-records",l.tableKeyboardNavigationTools.getIdPrefix(t.navigationStateRef))},e.children))};_t.displayName="KendoReactGridNoRecordsContainer";const Ut=e=>a.shouldShowValidationUI(Bt)&&v.createElement(a.WatermarkOverlay,null),jt=e=>{const t=v.useContext(ae);return v.createElement("colgroup",{ref:e=>{t.columnResizeRef.current.colGroupMain=e}},e.children)},$t=e=>{const t=v.useContext(ae);return v.createElement(l.TableSelection,{selectable:e.selectable,onRelease:t.selectionRelease,childRef:e=>{t.tableElementRef.current=e,t.headTableElementRef.current=e}},v.createElement("table",{ref:t.headTableElementRef,className:e.tableClassName},e.children))},Xt=e=>{const t=v.useContext(ae);return v.createElement(l.DropClue,{ref:t.dragLogicRef.current.refDropElementClue})},Yt=e=>{const t=v.useContext(ae);return v.createElement(l.DragClue,{ref:t.dragLogicRef.current.refDragElementClue})},Jt=e=>{const t=v.useContext(ae);return v.createElement(v.Fragment,null,e.rowReorderable?v.createElement(a.DragAndDrop,null,e.children):B(e.children,{ref:t.tableBodyElementRef}))};function Qt(e){const t=e.replace(/^pager\.([a-z])/,((e,t)=>"grid.pager"+t.toUpperCase()));return{messageKey:t,defaultMessage:Be[t]}}const Zt=e=>{const t=v.useContext(ae);return B(e.children,{onPageChange:t.pagerPageChange,messagesMap:Qt,dir:t.dir})},er=e=>{const t=v.useContext(ae);return v.createElement(l.TableSelection,{selectable:e.selectable,onRelease:t.selectionRelease,childRef:e=>{t.tableElementRef.current=e}},v.createElement("table",{className:e.tableClassName,role:"presentation",style:e.tableStyle,ref:t.tableElementRef},e.children))},tr=e=>{const t=v.useContext(ae);return B(e.children,{ref:t.elementRef,onKeyDown:t.onKeyDown,onFocus:t.onFocus})},rr=e=>{const t=v.useContext(ae);return B(e.children,{ref:t.containerElementRef,onScroll:t.scrollHandler})},nr=e=>{const t=v.useContext(ae);return v.createElement("div",{style:e.isVirtualScroll?{height:t.vsRef.current.containerHeight+"px"}:{}})},lr=e=>{const t=v.useContext(ae);if(t.isClient||e.isClient){const r=t.getCellPositionStyle(e.columnPosition);return e.children&&B(e.children,{style:{...e.style,...r},onContextMenu:t.onContextMenu,onChange:t.itemChange,selectionChange:r=>{t.selectionChange({event:r,dataItem:e.dataItem,dataIndex:e.rowDataIndex,columnIndex:e.columnIndex})}})}return e.children},ar="before",or="after",ir="forbidden";function sr(e){const{clientTop:t,clientLeft:r}=cr(e),{pageYOffset:n,pageXOffset:l}=dr(e),{top:a,left:o}=e.getBoundingClientRect();return{top:a+n-t,left:o+l-r}}const cr=e=>null==e?void 0:e.ownerDocument.documentElement,dr=e=>null==e?void 0:e.ownerDocument.defaultView,ur={zIndex:"19000",position:"absolute",display:"none",visibility:"hidden"},pr={zIndex:"20000",display:"flex",position:"fixed",visibility:"hidden",pointerEvents:"none"},gr=e=>{const{rowReorderSettings:r,columns:n,unstyled:l}=e,{rowReorder:o,reorderRowDragTargetRef:s,reorderRowDropTargetRef:c,activeDragRowDataItemRef:d,tableBodyElementRef:u}=t.useContext(ae),[p,g]=t.useState(!1),[h,f]=t.useState(i.cancelIcon),C=t.useRef(null),v=t.useRef(null),b=t.useRef(null),x=t.useRef(null),E=t.useRef(!1),I=t.useRef(null),y="object"==typeof r?r.enabled:r;t.useEffect((()=>{u.current=C.current}),[]),a.useDraggable(C,{onPress:e=>{const t=e.originalEvent.target;t.closest(".k-drag-cell")&&(x.current=e.offsetY,E.current=!0,s.current=t.closest(".k-table-row"))},onDragStart:e=>{!E.current||!y||!d.current||(s.current&&(s.current.style.userSelect="none"),g(!0))},onDrag:e=>{if(!E.current&&!v.current)return;const{clientX:t,clientY:r}=e,n=t,l=r-x.current;v.current&&(v.current.style.left=`${n}px`,v.current.style.top=`${l}px`,v.current.style.visibility="visible"),S(e)},onDragEnd:e=>{var t;if(!y||!d.current)return;g(!1);const r=Number(null==(t=c.current)?void 0:t.getAttribute("absolute-row-index"));o(e,r,I.current),E.current=!1}});const S=e=>{I.current=R(e),k()},k=()=>{var e;if(I.current===ir||!c.current)return void w();P();const t=sr(c.current);let r=t.top;const n=t.left+((null==(e=b.current)?void 0:e.offsetWidth)||0)/2;I.current===or&&(r+=c.current.offsetHeight),b.current&&(b.current.style.top=`${r}px`,b.current.style.left=`${n}px`,b.current.style.visibility="visible")},w=()=>{b.current&&(b.current.style.display="none")},P=()=>{b.current&&(b.current.style.display="")},R=e=>{if(c.current===s.current||!c.current)return ir;if(((e,t)=>(null==e?void 0:e.parentElement)!==(null==t?void 0:t.parentElement))(c.current,s.current))return ir;const t=c.current.getBoundingClientRect(),r=t.height/2,n=e.clientY,l=t.top;let a=null;n<l+r?a=ar:n>=l+t.height-r&&(a=or),(a===ar&&c.current===s.current.nextElementSibling||a===or&&c.current===s.current.previousElementSibling)&&(a=ir);const o=a===ir?i.cancelIcon:i.insertMiddleIcon;return f(o),a},N=t.useMemo((()=>{if(d.current){if(r.dragClue)return"string"==typeof r.dragClue?r.dragClue:r.dragClue(d.current);{const e=n.find((e=>!e.hidden&&"data"===e.columnType));return d.current[e.field]}}}),[d.current]);return t.createElement(t.Fragment,null,p&&m.createPortal(t.createElement(t.Fragment,null,t.createElement("div",{ref:b,style:ur,className:a.classNames(l.rowReorder({dropIndicatorMain:!0,dropIndicatorDirection:!0}))},t.createElement("div",{className:"k-drop-hint-start"}),t.createElement("div",{className:"k-drop-hint-line"})),t.createElement("div",{ref:v,style:pr,className:a.classNames(l.rowReorder({dragClueMain:!0,dragClueOperation:!0}))},t.createElement(a.SvgIcon,{className:"k-drag-status",icon:h}),N)),document.body),B(e.children,{ref:C}))},mr=()=>t.createElement(a.SvgIcon,{icon:i.reorderIcon}),hr=e=>{const{cellProps:r,rowReorderable:n}=e,{id:a,dataItem:i}=r,s=o.useLocalization(),c=t.useContext(ae),d=l.useTableKeyboardNavigation(a),u=n,p=s.toLanguageString(ze,Be[ze]),g=t.useCallback((e=>{null!=c&&c.onContextMenu&&c.onContextMenu.call(void 0,e,r.dataItem,r.field)}),[c,r.dataItem,r.field]);return e.children&&B(e.children,{"aria-label":p,...d,onMouseDown:()=>u?c.activeDragRowDataItemRef.current=i:null,onContextMenu:g})},fr=e=>{const{...r}=e,n=e.unstyled,l=n&&n.uGrid?n.uGrid:a.uGrid,o=a.classNames(l.td({selected:e.isSelected,sorted:e.isSorted,alt:e.isAlt}),e.className),i={colSpan:e.colSpan,style:e.style,className:o,role:"gridcell","aria-colindex":e.ariaColumnIndex,"aria-selected":e.isSelected,[X]:e.columnIndex},s=a.classNames(null==i?void 0:i.className,["k-drag-cell",""+(e.rowReorderable?"":"k-disabled")]);return t.createElement(hr,{rowReorderable:e.rowReorderable,cellProps:r},t.createElement("td",{...i,style:{touchAction:"none"},"aria-disabled":!e.rowReorderable,className:s},t.createElement(mr,null)))},Cr=e=>v.createElement(tt,{...e}),vr={height:"100%",display:"flex",justifyContent:"center",alignItems:"center"},br=e=>{var t;return v.createElement(v.Fragment,null,e.showLoader?null!=(t=e.loader)?t:v.createElement("div",{className:"k-loading-mask"},v.createElement("div",{className:"k-loading-color"}),v.createElement("div",{style:vr},v.createElement(h.Loader,{size:"large",type:"converging-spinner"}))):null)},xr=v.forwardRef(((e,t)=>{var r,i,s,c,d,u,p;const g=e.id+"-role-element-id",m=e.navigatable?g:"";a.validatePackage(Bt);const h=e=>{const t=e.filter((e=>e&&e.type&&"KendoReactGridColumn"===e.type.displayName)),r=S.current.filter((e=>e.declarationIndex>=0&&-1===e.parentIndex));return R(t,M(r),{prevId:0,idPrefix:m})},f=t=>{const r=(()=>{const t=[],r=(e,n)=>null==e?void 0:e.forEach((e=>{const l=e.hidden||n;t.push({...e,hidden:l}),r(e.children,l)}));return r(e.columnsState,!1),t})();return t.filter((e=>{var t;return!(null!=(t=r.find((t=>t.id===e.id)))&&t.hidden)}))},C=(t,r)=>{var n;t.filter((t=>e.selectedField&&t.field===e.selectedField||"checkbox"===t.columnType)).forEach((e=>{e.width=e.width||"50px",e.cell=e.cell||qe,e._type="edit",e.headerCell=e.headerCell||Ot})),void 0!==_&&t.filter((e=>"reorder"===e.columnType)).forEach((e=>{e.width=e.width||"50px",e.cell=e.cell||fr,e.headerCell=e.headerCell||Cr,e.sortable=!1,e.filterable=!1,e.editable=!1}));const l={id:"",resizable:!0,width:"32px",title:" ",declarationIndex:-1,orderIndex:-1,children:[],parentIndex:-1,depth:0,colSpan:0,headerColSpan:0,rowSpan:0,left:0,right:0,index:0,rightBorder:!1,ariaColumnIndex:0,isAccessible:!0};let o=0;(e.expandField||te.enabled)&&e.detail&&(t.unshift({...l,_type:"expand",cell:je,field:null!=(n=te.column)?n:e.expandField,headerClassName:a.classNames(q.hierarchyCell({}))}),o++);for(let n=0;n<r;n++)t.unshift({...l,isAccessible:!1,cell:Gt,field:"value",locked:e.lockGroups}),o++;t.slice(o).forEach((e=>{e.parentIndex>=0&&(e.parentIndex+=o),e.rowSpannable=void 0!==e.rowSpannable?z(e.rowSpannable):se}))},b=()=>j.length===e.total,E=()=>e.isClient?S:L;let I,y=[];const S=e.columnsRef||{current:[]},L={current:[]};let O=[[]];const A=e.scrollLeftRef||{current:0},B=e.localization||new o.LocalizationService,V=e.intl||new o.IntlService("en"),W=e.unstyled,q=W&&W.uGrid?W.uGrid:a.uGrid,_=H(e.rowReorderable),U=!0===e.autoProcessData?{group:!0,sort:!0,filter:!0,search:!0,page:!0}:e.autoProcessData;let j,$;if(Array.isArray(e.data)?(j=e.data,$=null!=(r=e.total)?r:j.length):(j=(null==(i=e.data)?void 0:i.data)||[],$=null!=(d=null!=(c=e.total)?c:null==(s=e.data)?void 0:s.total)?d:j.length),U){const{data:t,total:r}=n.process(j,{group:U.group?e.group:void 0,sort:U.sort?e.sort:void 0,filter:l.combineFilters(U.filter?e.filter:void 0,U.search?e.search:void 0),...U.page?{take:e.take,skip:e.skip}:{}});j=t,$=null!=(u=e.total)?u:r}const{size:X="medium"}=e,Y="object"==typeof e.groupable&&e.groupable.footer||"none",J="virtual"===e.scrollable,ee=!0===e.groupable||"object"==typeof e.groupable&&!1!==e.groupable.enabled,te=l.getDetailExpandableOptions(!!e.detail),re=l.getGroupExpandableOptions("object"==typeof e.groupable&&!1!==e.groupable.enabled?e.groupable.expandable:e.groupable),{resolvedGroupsCount:ne,flattedData:le}=((e,t,r,n,l,a,o)=>{const i=[];return{flattedData:i,resolvedGroupsCount:w(i,j,e,{index:t},void 0!==r,n,l,a,re.defaultExpand,o)}})(Y,e.skip||0,e.group,e.expandField,e.detailExpand,e.groupExpand,e.dataItemKey);y=le;const ae=(()=>{const{rowHeight:t,detailRowHeight:r,detail:n,expandField:l}=e,a=b();return!(void 0!==t&&t>0)||ee&&!a||n&&l&&(!(void 0!==r&&r>0)||!a)?Z:Q})();ae===Q&&b()&&(I=y.slice(e.skip||0,(e.skip||0)+((void 0!==e.take?e.take:e.pageSize)||0)));const ie=l.getSelectionOptions(e.selectable||!!e.selectedField),se=z(e.rowSpannable),ce=ie&&ie.drag?"none":void 0,de=v.Children.toArray(e.children);((t,r)=>{var n;const o=(e=>e.filter((e=>a.canUseDOM&&e&&e.media?window.matchMedia(e.media).matches:e)))(h(t));S.current=o,0===S.current.length&&(S.current=function(e,t,r,n){const a=N(e),o=[];if(a.length>0){let e=a[0];if(t)for(let r=0;r<t.length;r++)e=e.items&&e.items[0];Object.getOwnPropertyNames(e).forEach((e=>{e!==r.column&&o.push(Object.assign({id:l.tableKeyboardNavigationTools.generateNavigatableId(""+n.prevId++,n.idPrefix,"column"),declarationIndex:-1,parentIndex:-1,depth:0,colSpan:0,headerColSpan:0,rowSpan:0,index:0,columnType:"data",left:0,right:0,rightBorder:!1,children:[],ariaColumnIndex:0,isAccessible:!0},x,{field:e}))}))}return o}(j,e.group,{column:null!=(n=te.column)?n:e.expandField},{prevId:0,idPrefix:m})),S.current=f(S.current),C(S.current,r),O=function(e,t){const r=[[]];let n=0;for(let t=e.length-1;t>=0;t--)n=Math.max(n,e[t].depth),e[t].headerColSpan=e[t].headerColSpan||1,e[t].children.length>0&&(e[t].headerColSpan=e[t].children.reduce(((e,t)=>t.hidden?e:e+t.headerColSpan),0));const a=[];let o=1;return e.forEach(((e,t)=>{r[e.depth]=r[e.depth]||[];let l=!1;0===r[e.depth].length&&(o<=1?o=1+(e.children.length>0?0:n-e.depth):(o--,l=!0)),e.rowSpan=1+(e.children.length>0?0:n-e.depth),e.kFirst=l,e.index=r[e.depth].length,r[e.depth].push(t),e.ariaColumnIndex=a[e.depth]?a[e.depth]+1:1;for(let t=e.depth;t<e.depth+e.rowSpan;t++)a[t]=(a[t]||0)+e.headerColSpan})),l.updateLeft(r,e,t),l.updateRight(r,e,t),r}(S.current,!0),L.current=S.current.map(G)})(de,ne);const ue=de.map((e=>e&&e.type&&"KendoReactGridToolbar"===e.type.displayName?v.cloneElement(e,{...e.props,ariaControls:g}):null)),pe=de.filter((e=>e&&e.type&&"KendoReactGridNoRecords"===e.type.displayName)),ge=de.filter((e=>e&&e.type&&"KendoReactGridStatusBar"===e.type.displayName)),me=S.current.filter((e=>0===e.children.length)),he=ee&&v.createElement(Pt,{columns:E().current,group:e.group||[],ariaControls:g}),fe=v.createElement(Je,{size:X,staticHeaders:"none"!==e.scrollable,draggable:e.reorderable||ee,headerRow:v.createElement(dt,{cells:e.cells,sort:e.sort,sortable:e.sortable,group:e.group||[],groupable:ee,filter:e.filter,filterable:e.filterable,filterOperators:e.filterOperators||pt,columnMenu:e.columnMenu,columnMenuIcon:e.columnMenuIcon,columns:S.current,columnsMap:O,cellRender:e.headerCellRender,navigatable:!!e.navigatable,localization:B,unstyled:W,headerSelectionValue:!(!e.select||!y.filter((e=>"data"===e.rowType)).every((t=>e.select&&e.dataItemKey&&void 0!==a.getter(e.dataItemKey)(t.dataItem)?e.select[a.getter(e.dataItemKey)(t.dataItem)]:void 0)))}),filterRow:e.filterable&&v.createElement(kt,{cells:e.cells,size:X,columns:S.current,filter:e.filter,filterOperators:e.filterOperators||pt,sort:e.sort,cellRender:e.filterCellRender,navigatable:!!e.navigatable,ariaRowIndex:O.length+1,localization:B})||void 0,cols:me.map(((e,t)=>v.createElement("col",{key:t.toString(),width:T(e)})))}),Ce=A.current||0,ve=parseFloat(((e.style||{}).width||"").toString()),be=(t,r,n,o,i)=>{let s=!1;const c=e.selectedField?k(e.selectedField,t.dataItem):e.select&&e.dataItemKey&&void 0!==a.getter(e.dataItemKey)(t.dataItem)?e.select[a.getter(e.dataItemKey)(t.dataItem)]:void 0;let d=0;const{colSpans:u,hiddenColumns:p}=l.tableColumnsVirtualization({enabled:e.columnVirtualization,columns:me,tableViewPortWidth:ve,scrollLeft:Ce,getColSpan:P,dataItem:t.dataItem}),g=me.filter(((e,t)=>!p[t]));return{row:me.map(((h,f)=>{var C,b,x,E;if(p[f])return null;if(d>0)return d--,null;let I;if(null!=(C=h.rowSpannable)&&C.enabled&&"data"===t.rowType&&h.field&&i){const e=h.field?null==(x=(b=h.rowSpannable).valueGetter)?void 0:x.call(b,t.dataItem,h.field):null;I={value:e,count:1},i[h.field]&&(null==(E=i[h.field])?void 0:E.value)===e&&null!==i[h.field]?(i[h.field].count++,I.count=null):i[h.field]=I}const{colSpan:y,colsToSkip:S}=((t,r,n,l,a,o)=>{let i=P(t,r);if(e.columnVirtualization&&1===t.colSpan)return{colSpan:o,colsToSkip:a};let s=n.length-1===l,c=n.length-l;return e.columnVirtualization&&(s=me.length-1===l,c=me.length-l),i>1&&!s?a=i-1:i=1,c<=i&&!s&&(i=c),{colSpan:i,colsToSkip:a}})(h,t.dataItem,g,f,d,u[f]);d=S;const w=h.id?h.id:f,R=a.classNames(q.contentSticky({locked:h.locked}),h.className),N=void 0!==h.left?{left:h.left,right:h.right}:{};let T=!1;if(h.editable&&(e.editable||e.editField)){const r=e.editField?k(e.editField,t.dataItem):e.edit&&e.dataItemKey?e.edit[a.getter(e.dataItemKey)(t.dataItem)]:void 0,n="boolean"==typeof r?r:Array.isArray(r)?r.indexOf(h.field)>-1:void 0!==h.field&&r===h.field;n&&"data"===h.columnType&&(!0===n||n===h.field)&&(s=!0,T=!0)}const M=h.cell||T&&Ye||Tt,G=e.expandField&&e.detail&&h.field===e.expandField||"expand"===h._type,L={locked:e.lockGroups,id:l.tableKeyboardNavigationTools.generateNavigatableId(`${r}-${String(f)}`,m,G||"groupHeader"===t.rowType||"groupFooter"===t.rowType||"value"===h.field?"nodata":"cell"),colSpan:y,dataItem:t.dataItem,field:h.field,editor:h.editor,format:h.format,columnType:h.columnType,rowReorderable:_,className:R,render:e.cellRender,cells:F(e.cells,h.cells),columnIndex:f,columnsCount:me.length,rowType:t.rowType,level:t.level,expanded:t.expanded,dataIndex:t.dataIndex,rowDataIndex:n,columnPosition:N,style:{},ariaColumnIndex:h.ariaColumnIndex,isSelected:"edit"===(null==h?void 0:h._type)?c:Array.isArray(c)&&c.indexOf(f)>-1,isSorted:!!D(h.field,e.sort),isInEdit:T,isAlt:o,unstyled:W,group:t.group,localization:B,intl:V,_rowSpan:I};return h.cell?v.createElement(lr,{key:w,isClient:K(M),dataItem:L.dataItem,rowDataIndex:L.rowDataIndex,columnIndex:L.columnIndex,columnPosition:L.columnPosition},v.createElement(M,{...L})):v.createElement(M,{key:w,...L})})),isInEdit:s,isSelected:"boolean"==typeof c&&c}};let xe=0;const Ee=e=>e>=y.length-xe;let Ie=e.skip||0;const ye=[],Se=!y.length,ke=O.length+(e.filterable?1:0)+1;let we=0;if(y.length){let t=-1,r=0;const n=se.enabled?{}:void 0;(I||y).forEach(((o,i)=>{"data"===o.rowType&&(Ie++,t++);const s=Ie%2==0,c=e.dataItemKey&&a.getter(e.dataItemKey)(o.dataItem),d=i+(e.skip||0),u=c||"ai"+d,p=u+"_1",g=be(o,u,t,s,n);if(we=d+ke+r,ye.push(v.createElement(Lt,{key:u,dataItem:o.dataItem,isAltRow:s,isInEdit:g.isInEdit,rowType:o.rowType,isRowReorderable:_,isHidden:Ee(i),onClick:null,onDoubleClick:null,selectedField:e.selectedField,rowHeight:e.rowHeight,render:e.rowRender,ariaRowIndex:we,absoluteRowIndex:d,dataIndex:J&&!e.groupable?d:t,isSelected:g.isSelected,rows:e.rows},g.row)),e.detail&&"data"===o.rowType&&o.expanded){const t=me.length-(e.expandField||te.enabled?1:0)-(e.group?e.group.length:0)||1;r++,we=d+ke+r,ye.push(v.createElement("tr",{key:p,className:a.classNames(q.detailTr({isAlt:s})),style:{visibility:Ee(i)?"hidden":"",height:e.detailRowHeight},role:"row","aria-rowindex":we},e.group&&e.group.map(((t,r)=>{var n;const l=null==(n=null==g?void 0:g.row[r])?void 0:n.props.style,a=l?{left:l.left,right:l.right}:{};return v.createElement(Gt,{id:"",dataIndex:o.dataIndex,field:t.field,dataItem:o.dataItem,key:r,columnPosition:a,style:{},ariaColumnIndex:1+r,isSelected:!1,locked:e.lockGroups,cells:e.cells,group:o.group})})),(e.expandField||te.enabled)&&v.createElement(qt,{unstyled:W,id:l.tableKeyboardNavigationTools.generateNavigatableId(`${p}-dhcell`,m)}),v.createElement(Wt,{dataItem:o.dataItem,dataIndex:o.dataIndex,colSpan:t,ariaColIndex:2+(e.group?e.group.length:0),detail:e.detail,id:l.tableKeyboardNavigationTools.generateNavigatableId(`${p}-dcell`,m)})))}}))}const Pe={size:X,total:$,skip:e.skip||0,take:(void 0!==e.take?e.take:e.pageSize)||10,...zt(e.pageable||{})},Re=v.createElement(Zt,null,e.pager?v.createElement(e.pager,{...Pe}):v.createElement(l.Pager,{className:a.classNames(q.pager({})),...Pe})),Ne=null!=(p=e.cells)&&p.footerCell||S.current.some((e=>{var t;return!!(e.footerCell||null!=(t=e.cells)&&t.footerCell)}))?v.createElement(Rt,{size:X,staticHeaders:"none"!==e.scrollable,row:v.createElement(At,{cells:e.cells,idPrefix:m,columns:S.current,ariaRowIndex:we+1}),cols:me.map(((e,t)=>v.createElement("col",{key:t.toString(),width:T(e)})))}):null,Te=v.createElement(jt,null,me.map(((t,r)=>v.createElement("col",{key:r.toString(),className:D(t.field,e.sort)?a.classNames(q.sorted({})):void 0,width:T(t)})))),De=e.reorderable||ee,{detail:Me,cells:Ge,rows:Le,...Oe}=e,Fe=v.createElement("tbody",{role:"rowgroup",className:a.classNames(q.tbody({})),...l.tableKeyboardNavigationBodyAttributes},ye);let He=Fe;if(_&&(He=v.createElement(gr,{unstyled:q,columns:S.current,rowReorderSettings:e.rowReorderable},Fe)),"none"===e.scrollable)return v.createElement(oe,{gridRef:t,gridProps:Oe,columnsRef:E(),columnsMapRef:O,dataRef:y,slicedData:I,isFixedVirtualScroll:ae===Q,id:g,total:$,detailExpandable:!!e.detail},v.createElement(tr,null,v.createElement("div",{id:e.id,style:e.style,className:a.classNames(q.wrapper({size:X}),e.className),"aria-label":e.ariaLabel,...l.tableKeyboardNavigationScopeAttributes},ue,he,v.createElement($t,{selectable:e.selectable,className:a.classNames(q.table({size:X}))},Te,fe,v.createElement(Jt,{rowReorderable:_},He)),Se&&v.createElement(_t,null,pe.length?pe:v.createElement(Ft,null)),De&&v.createElement(v.Fragment,null,v.createElement(Xt,null),v.createElement(Yt,null)))),ge,e.pageable&&Re,v.createElement(br,{loader:e.loader,showLoader:e.showLoader}));let Ke=e.style||{};return J&&(Ke.height||(Ke=Object.assign({},Ke,{height:"450px"}))),v.createElement(oe,{gridRef:t,gridProps:Oe,columnsRef:E(),columnsMapRef:O,dataRef:y,slicedData:I,isFixedVirtualScroll:ae===Q,id:g,total:$,detailExpandable:!!e.detail},v.createElement(tr,null,v.createElement("div",{id:e.id,style:Ke,className:a.classNames(q.wrapper({size:X,virtual:J}),e.className),"aria-label":e.ariaLabel,...l.tableKeyboardNavigationScopeAttributes},ue,he,v.createElement("div",{className:a.classNames(q.ariaRoot({})),role:"grid","aria-colcount":me.length,"aria-rowcount":$,id:g,"aria-label":B.toLanguageString(Ae,Be[Ae])},fe,v.createElement("div",{className:a.classNames(q.container({})),role:"presentation"},v.createElement(rr,null,v.createElement("div",{className:a.classNames(q.content({})),role:"presentation"},v.createElement("div",{className:a.classNames(q.tableWrap({})),role:"presentation"},v.createElement(er,{selectable:e.selectable,tableClassName:a.classNames(q.table({size:X})),tableStyle:{userSelect:ce}},Te,v.createElement(Jt,{rowReorderable:_},He)),Se&&v.createElement(_t,null,pe.length?pe:v.createElement(Ft,null))),J&&v.createElement("div",{className:a.classNames(q.heightContainer({})),role:"presentation"},v.createElement(nr,{isVirtualScroll:J}))))),Ne,De&&v.createElement(v.Fragment,null,v.createElement(Xt,null),v.createElement(Yt,null)),v.createElement(Ut,null)),ge,e.pageable&&Re,v.createElement(br,{loader:e.loader,showLoader:e.showLoader}))))}));xr.displayName="KendoReactGridComponent";const Er=v.forwardRef(((e,t)=>{const{isPaid:r}={isPaid:!0},[n]=a.useCustomComponent(r?q:v.Fragment);return E===I?v.createElement(n,{...e},v.createElement(_,{id:e.id},v.createElement(xr,{ref:t,...e}))):v.createElement(xr,{ref:t,...e})})),Ir={data:r.oneOfType([r.array,r.shape({data:r.array,total:r.number})]),sortable:r.oneOfType([r.bool,r.shape({mode:r.oneOf(["single","multiple"]),allowUnsort:r.bool})]),onSortChange:r.func,sort:r.array,filterable:r.bool,filter:r.any,onFilterChange:r.func,pageable:r.oneOfType([r.bool,r.shape({buttonCount:r.number,responsive:r.bool,info:r.bool,type:r.oneOf(["numeric","input"]),pageSizes:r.oneOfType([r.bool,r.arrayOf(r.oneOfType([r.string,r.number]))]),previousNext:r.bool})]),pageSize:r.number,onPageChange:r.func,total:r.number,skip:r.number,take:r.number,fixedScroll:r.bool,onExpandChange:r.func,expandField:r.string,selectedField:r.string,onSelectionChange:r.func,onHeaderSelectionChange:r.func,resizable:r.bool,reorderable:r.bool,group:r.any,groupable:r.oneOfType([r.bool,r.shape({enabled:r.bool,footer:r.oneOf(["always","visible","none"])})]),onGroupChange:r.func,onRowClick:r.func,onRowDoubleClick:r.func,onItemChange:r.func,editField:r.string,scrollable:r.oneOf(["none","scrollable","virtual"]),rowHeight:r.number,detailRowHeight:r.number,detail:r.any,style:r.object,onDataStateChange:r.func,onColumnResize:r.func,onColumnReorder:r.func,dataItemKey:r.string,navigatable:r.oneOfType([r.bool,r.shape({mode:r.oneOf(["incell","inline","popup"])})]),size:r.oneOf(["small","medium"])};Er.displayName="KendoReactGrid",Er.propTypes=Ir;const yr=e=>{const{children:t,id:r,className:n,style:l}=e;return v.createElement("div",{id:r,className:a.classNames("k-columnmenu-item-wrapper",n),style:l},t)},Sr=e=>{const{title:t,iconClass:r,svgIcon:n,selected:l}=e;return v.createElement("div",{onClick:e.onClick,className:"k-columnmenu-item "+(l?"k-selected":"")},(r||n)&&v.createElement(a.IconWrap,{name:r&&a.toIconName(r),icon:n}),t)},kr="desc",wr=(e,t)=>t?t.findIndex((t=>t.field===e)):-1,Pr=(e,t)=>!!(t&&e>-1&&"asc"===t[e].dir),Rr=(e,t)=>!!(t&&e>-1&&t[e].dir===kr),Nr=e=>{const{children:t,id:r,className:n,style:l,show:o}=e;return v.createElement("div",{id:r,className:a.classNames("k-columnmenu-item-content",n),style:l,tabIndex:0},v.createElement(f.Reveal,{style:{position:"relative",display:"block"}},o?t:null))},Tr=e=>{const t=(t,r)=>{Ct(t,r,e)},r=t=>{Et(t,e.value,e.onChange)},n=t=>{xt(t,e.onChange)};return v.createElement(v.Fragment,null,(()=>{if("boolean"===e.filterType)return;const t=e.operators.find((t=>t.operator===e.operator))||null;return v.createElement(g.DropDownList,{value:t,onChange:r,data:e.operators,textField:"text"})})(),((e,r,l)=>{switch(e){case"numeric":return v.createElement(c.NumericTextBox,{value:r,onChange:e=>{t(e.value,e.syntheticEvent)},rangeOnEnter:!1});case"date":return v.createElement(d.DatePicker,{value:r,onChange:e=>{t(e.value,e.syntheticEvent)}});case"boolean":{const e=e=>null==e;return v.createElement(g.DropDownList,{onChange:n,value:l.find((t=>t.operator===(e(r)?"":r))),data:l,textField:"text"})}default:return v.createElement(c.Input,{value:r||"",onChange:e=>{t(e.target.value,e.syntheticEvent)}})}})(e.filterType,e.value,e.booleanValues))},Dr=e=>{const{firstFilterProps:t,hideSecondFilter:r,secondFilterProps:n,logicData:l,logicValue:a,onLogicChange:o}=e;return v.createElement(v.Fragment,null,v.createElement(Tr,{...t}),!r&&v.createElement(v.Fragment,null,v.createElement(g.DropDownList,{data:l,value:a,onChange:o,className:"k-filter-and",textField:"text"}),v.createElement(Tr,{...n})))},Mr=e=>e||{filters:[],logic:"and"},Gr=(e,t)=>Mr(t).filters.filter((t=>!!n.isCompositeFilterDescriptor(t)&&(t.filters&&t.filters.length&&!t.filters.find((t=>n.isCompositeFilterDescriptor(t)||t.field!==e)))))[0]||null,Lr={uniqueData:!0},Or=e=>{const[t,r]=v.useState(""),n=e.columns.reduce(((t,r)=>({...t,[r.id||""]:!!e.columnsState.find((e=>e.id===r.id))})),{}),[l,s]=v.useState(n),d=v.useMemo((()=>e.columns.filter((e=>{var r;return null==(r=e.title||e.field)?void 0:r.toLowerCase().includes(t.toLowerCase())}))),[e.columns,t]),u=o.useLocalization(),g=v.useCallback((()=>{const t=e.columns.filter((e=>l[e.id||""]));e.onColumnsChange.call(void 0,t),e.onCloseMenu.call(void 0)}),[l,e.columns,e.onColumnsChange,e.onCloseMenu]),m=v.useMemo((()=>Object.values(l).filter((e=>e)).length),[l]),h=v.useMemo((()=>m===e.columns.length),[e.columns,m]),f=v.useCallback((()=>{const e={...l};Object.keys(e).forEach(((t,r)=>e[t]=!(!h||0!==r)||!h)),s(e)}),[l,h]),C=v.useCallback(((e,t)=>{const r={...l};r[t||""]=e,s(r)}),[l]);return v.createElement("form",{className:"k-filter-menu"},v.createElement("div",{className:"k-filter-menu-container"},v.createElement(c.TextBox,{className:"k-searchbox",value:t,onChange:e=>{r(String(e.target.value))},prefix:()=>v.createElement(c.InputPrefix,null,v.createElement(a.IconWrap,{name:"search",icon:i.searchIcon}))}),v.createElement("ul",{className:"k-reset k-multicheck-wrap"},!t&&v.createElement("li",{className:"k-item k-check-all-wrap"},v.createElement(c.Checkbox,{checked:h,onChange:f,label:u.toLanguageString(Ne,Be[Ne])})),d.map(((e,t)=>v.createElement("li",{key:e.id,className:"k-item"},v.createElement(c.Checkbox,{disabled:l[e.id||""]&&1===m,checked:l[e.id||""],onChange:t=>{var r;return C(!(null==(r=t.target.element)||!r.checked),e.id)},label:e.title||e.field}))))),v.createElement("div",{className:"k-filter-selected-items"},m," selected items"),v.createElement("div",{className:"k-actions k-actions-start k-actions-horizontal"},v.createElement(p.Button,{type:"button",themeColor:"primary",onClick:g},u.toLanguageString(ve,Be[ve])),v.createElement(p.Button,{type:"button",onClick:()=>{s(n)}},u.toLanguageString(xe,Be[xe])))))};Or.displayName="GridColumnMenuColumnsList";const Fr=e=>{const{columnsState:t,onCloseMenu:r,onColumnsStateChange:n}=e,l=o.useLocalization(),[s,d]=v.useState(""),u=t.reduce(((e,t)=>({...e,[t.id||""]:!t.hidden})),{}),[g,m]=v.useState(u),h=v.useMemo((()=>(null==t?void 0:t.filter((e=>{var t;return null==(t=e.title||e.field)?void 0:t.toLowerCase().includes(s.toLowerCase())})))||[]),[t,s]),f=v.useMemo((()=>Object.values(g).filter((e=>e)).length),[g]),C=v.useMemo((()=>f===(null==t?void 0:t.length)),[t,f]),b=v.useCallback((e=>{const l=(e=>(null==e?void 0:e.map((e=>({...e,hidden:!g[e.id||""]}))))||[])(t);n&&n(l),null==r||r.call(void 0)}),[g,t,r]),x=v.useCallback((()=>{const e={...g};Object.keys(e).forEach(((t,r)=>e[t]=!(!C||0!==r)||!C)),m(e)}),[g,C]),E=v.useCallback(((e,t)=>{const r={...g};r[t||""]=e,m(r)}),[g]);return v.createElement("form",{className:"k-filter-menu"},v.createElement("div",{className:"k-filter-menu-container"},v.createElement(c.TextBox,{className:"k-searchbox",value:s,onChange:e=>{d(String(e.target.value))},prefix:()=>v.createElement(c.InputPrefix,null,v.createElement(a.IconWrap,{name:"search",icon:i.searchIcon}))}),v.createElement("ul",{className:"k-reset k-multicheck-wrap"},!s&&v.createElement("li",{className:"k-item k-check-all-wrap"},v.createElement(c.Checkbox,{checked:C,onChange:x,label:l.toLanguageString(Ne,Be[Ne])})),h.map(((e,t)=>v.createElement("li",{key:e.id,className:"k-item"},v.createElement(c.Checkbox,{disabled:g[e.id||""]&&1===f,checked:g[e.id||""],onChange:t=>{var r;return E(!(null==(r=t.target.element)||!r.checked),e.id)},label:e.title||e.field}))))),v.createElement("div",{className:"k-filter-selected-items"},f," selected items"),v.createElement("div",{className:"k-actions k-actions-start k-actions-horizontal"},v.createElement(p.Button,{type:"button",themeColor:"primary",onClick:b},l.toLanguageString(ve,Be[ve])),v.createElement(p.Button,{type:"button",onClick:()=>{m(u)}},l.toLanguageString(xe,Be[xe])))))};Fr.displayName="GridColumnMenuColumnsChooser";const Hr=e=>{const{size:t,className:r,ariaLabel:n,ariaControls:l,children:o}=e;return v.createElement("div",{className:a.classNames("k-toolbar k-grid-toolbar k-toolbar-solid",{"k-toolbar-md":!t,[`k-toolbar-${a.kendoThemeMaps.sizeMap[t]||t}`]:t},r),"aria-label":n,"aria-controls":l,role:"toolbar"},o)};Hr.displayName="KendoReactGridToolbar";const Kr=e=>{const{data:t=[]}=e;return v.createElement("div",{className:"k-selection-aggregates k-grid-selection-aggregates"},t.map(((e,t)=>v.createElement("div",{key:t},v.createElement("span",{className:"k-selection-aggregates-item-text"},e.type,": "),v.createElement("span",{className:"k-selection-aggregates-item-value"},e.formattedValue)))))};Kr.displayName="KendoReactGridStatusBar";const Ar=e=>{var t;const r=e.slice();for(let e=0;e<r.length;e++)for(;r[e]&&null!=(t=r[e].children)&&t.length;)r.splice(e,1,...r[e].children);return r};Object.defineProperty(e,"getSelectedState",{enumerable:!0,get:function(){return l.getSelectedState}}),Object.defineProperty(e,"getSelectedStateFromKeyDown",{enumerable:!0,get:function(){return l.getSelectedStateFromKeyDown}}),Object.defineProperty(e,"setSelectedState",{enumerable:!0,get:function(){return l.setSelectedState}}),e.GRID_COL_INDEX_ATTRIBUTE=X,e.GRID_PREVENT_SELECTION_ELEMENT=Y,e.GRID_ROW_INDEX_ATTRIBUTE=$,e.Grid=Er,e.GridCell=Tt,e.GridColumn=b,e.GridColumnMenuCheckboxFilter=e=>{const{uniqueData:t=Lr.uniqueData}=e,r=(t,r)=>{const n=e.column.field||"",l=t.map((e=>k(n,e)));return r?l.filter(((e,t)=>l.indexOf(e)===t)):l},l=()=>e.filter?a.clone(e.filter):{filters:[],logic:"and"},s=v.useRef((()=>{const t=e.column.field;return l().filters.findIndex((e=>e.filters&&e.filters.length>0&&e.filters[0].field===t))})()),[d,u]=v.useState(e.expanded||!1),[g,m]=v.useState(""),[h,f]=v.useState(r(e.data,t)||[]),[C,b]=v.useState(r(e.data,!1)||[]),[x,E]=v.useState(l());v.useEffect((()=>{const t=e.column.field||"",r=e.data.map((e=>k(t,e)));((e,t)=>e.length===t.length&&e.every(((e,r)=>e===t[r])))(r,C)||(f(r),b(r))}),[e.column,e.data]);const I=()=>void 0!==e.expanded,y=l=>{const a=e.searchBoxFilterOperator?e.searchBoxFilterOperator:"startswith",o={logic:"and",filters:[{field:e.column.field,operator:a,value:l.target.value,ignoreCase:!0}]};m(l.target.value),f(r(n.filterBy(e.data||[],o),t))},S=(t,r)=>{const n=e.column.field||"",l={...x},a=[...x.filters];let o=[];if(-1!==s.current&&l.filters[s.current].filters&&"all"!==r&&(o=l.filters[s.current].filters),t.value&&"all"===r)h.forEach((e=>{o.push({field:n,operator:"eq",value:e})}));else if(t.value)o.push({field:n,operator:"eq",value:r});else if(x){const e=o.findIndex((e=>e.value===r));o.splice(e,1)}l.logic="and",-1!==s.current?a[s.current]={logic:"or",filters:o}:a.push({logic:"or",filters:o}),(!t.value&&"all"===r||0===o.length)&&a.splice(s.current,1),l.filters=a,E(l)},w=o.useLocalization(),{column:P}=e;if(!P||!P.field)return v.createElement("div",null);const R=I()?e.expanded:d,N=[];if(x){const t=[...x.filters];s.current=t.findIndex((e=>!!(e.filters&&e.filters.length>0)&&e.filters[0].field===P.field)),-1!==s.current&&t[s.current].filters.length>0&&t[s.current].filters.forEach((t=>{t.field===e.column.field&&N.push(t.value)}))}const T=w.toLanguageString(be,Be[be]),D=e.searchBox?v.createElement(e.searchBox,{value:g,onChange:y}):v.createElement("div",{className:"k-searchbox k-textbox k-input k-input-md k-input-solid"},v.createElement(a.IconWrap,{className:"k-input-icon",name:"search",icon:i.searchIcon}),v.createElement(c.Input,{className:"k-input-inner",type:"text",placeholder:w.toLanguageString(ke,Be[ke]),value:g,onChange:e=>y(e.nativeEvent)}),v.createElement(p.Button,{type:"button",rounded:null,className:"k-input-button",onClick:()=>{const l=e.searchBoxFilterOperator?e.searchBoxFilterOperator:"startswith",a={logic:"and",filters:[{field:e.column.field,operator:l,value:"",ignoreCase:!0}]};m(""),f(r(n.filterBy(e.data||[],a),t))},icon:"x","aria-label":T,svgIcon:i.xIcon})),M=N.filter(((e,t)=>N.indexOf(e)===t));return v.createElement(yr,null,v.createElement(Sr,{title:w.toLanguageString(Ie,Be[Ie]),iconClass:"k-i-filter",svgIcon:i.filterIcon,onClick:()=>{const t=I(),r=!(t?e.expanded:d);e.onExpandChange&&e.onExpandChange(r),t||u(r)}}),v.createElement(Nr,{show:!!R},v.createElement("form",{className:"k-filter-menu",onSubmit:t=>{if(t.preventDefault(),!e.onFilterChange)return;const r=x||null;e.onFilterChange(r,t),e.onCloseMenu&&e.onCloseMenu()},onReset:t=>{if(t.preventDefault(),!e.onFilterChange)return;const r=x||null;null!==r&&r.filters.length>0?(s.current>=0&&r.filters.splice(s.current,1),e.onFilterChange(r,t)):e.onFilterChange(null,t),e.onCloseMenu&&e.onCloseMenu()}},v.createElement("div",{className:"k-filter-menu-container"},D,v.createElement("ul",{className:"k-reset k-multicheck-wrap"},v.createElement("li",{className:"k-item k-check-all-wrap"},v.createElement(c.Checkbox,{label:w.toLanguageString(Pe,Be[Pe]),onChange:e=>S(e,"all"),checked:(()=>{let e=!1;if(x){const t=[...x.filters];return-1!==s.current&&(e=h.every((e=>!(-1===s.current||!t[s.current].filters)&&t[s.current].filters.findIndex((t=>t.value===e))>=0)),e)}return e})()})),h.map(((e,t)=>v.createElement("li",{className:"k-item",key:t},v.createElement(c.Checkbox,{label:String(e),onChange:t=>S(t,e),checked:M.includes(e)}))))),v.createElement("div",{className:"k-filter-selected-items"},M.length+" "+w.toLanguageString(Te,Be[Te])),v.createElement("div",{className:"k-actions k-hstack k-justify-content-stretch"},v.createElement(p.Button,{themeColor:"primary",type:"submit"},w.toLanguageString(Ee,Be[Ee])),v.createElement(p.Button,{className:"k-button",type:"reset"},w.toLanguageString(be,Be[be])))))))},e.GridColumnMenuColumnsChooser=Fr,e.GridColumnMenuColumnsList=Or,e.GridColumnMenuFilter=e=>{const t=v.useCallback((()=>{let t;if(e.column&&e.column.field){const r=bt(e.column.filter),n=vt(e.filterOperators,r);t=Gr(e.column.field,e.filter),t=t?{...t,filters:t.filters.map((e=>({...e})))}:{logic:"and",filters:[{field:e.column.field,operator:n,value:gt(n)?null:void 0},{field:e.column.field,operator:n,value:gt(n)?null:void 0}]},1===t.filters.filter((t=>t.field===e.column.field)).length&&t.filters.splice(1,0,{field:e.column.field,operator:n})}return t}),[e.column]),[r,n]=v.useState(e.expanded||!1),[l,a]=v.useState(t()),s=()=>void 0!==e.expanded,c=(e,t)=>{const r=l.filters.map(((r,n)=>n===e?{...r,value:t.value,operator:t.operator}:r));a({...l,filters:r})},d=()=>({...l,filters:l.filters.filter((e=>void 0!==e.value&&null!==e.value&&""!==e.value||null===e.value&&e.operator))}),{column:u,filterUI:g,hideSecondFilter:m,filterOperators:h}=e,f=o.useLocalization();if(!u||!u.field)return v.createElement("div",null);const C=bt(u.filter),b=void 0!==m?m:ft[C],x=l.filters,E=mt(h[C],f),I=mt(ht,f),y={field:u.field,value:x[0].value,operator:x[0].operator,operators:E,booleanValues:I,onChange:e=>{c(0,e)},filterType:C},S={field:u.field,value:x[1].value,operator:x[1].operator,operators:E,booleanValues:I,onChange:e=>{c(1,e)},filterType:C},k=l.logic,w=mt(ut,f),P={value:w.find((e=>e.operator===(null===k?"":k))),onChange:e=>{a({...l,logic:e.target.value.operator})},data:w},R=g,N={firstFilterProps:y,secondFilterProps:S,logicData:P.data,logicValue:P.value,onLogicChange:P.onChange,hideSecondFilter:b},T=0!==d().filters.length||gt(x[0].operator)||gt(x[1].operator),D=s()?e.expanded:r,M=e.alwaysExpand;return v.createElement(yr,null,!M&&v.createElement(Sr,{title:f.toLanguageString(Ie,Be[Ie]),iconClass:"k-i-filter",svgIcon:i.filterIcon,onClick:()=>{const t=s(),l=!(t?e.expanded:r);e.onExpandChange&&e.onExpandChange(l),t||n(l)}}),v.createElement(Nr,{show:M||!!D},v.createElement("form",{className:"k-filter-menu",onSubmit:t=>{if(t.preventDefault(),!e.onFilterChange)return;const r=e.column.field,n=Mr(e.filter),l=Gr(r,e.filter),a=d();let o=null;if(l&&a.filters.length>0){const e=n.filters.map((e=>e===l?a:e));o={...n,filters:e}}else if(0===a.filters.length){const e=n.filters.filter((e=>e!==l));e.length&&(o={...n,filters:e})}else o={...n,filters:[...n.filters,a]};e.onFilterChange(o,t),e.onCloseMenu&&e.onCloseMenu()},onReset:t=>{if(t.preventDefault(),!e.onFilterChange)return;const r=e.column.field,n=Mr(e.filter),l=Gr(r,e.filter),a=n.filters.filter((e=>e!==l));a.length?e.onFilterChange({...n,filters:a},t):e.onFilterChange(null,t),e.onCloseMenu&&e.onCloseMenu()}},v.createElement("div",{className:"k-filter-menu-container"},R?v.createElement(R,{...N}):v.createElement(Dr,{...N}),v.createElement("div",{className:"k-actions k-actions-stretched"},v.createElement(p.Button,{themeColor:"primary",disabled:!T},f.toLanguageString(Ee,Be[Ee])),v.createElement(p.Button,{type:"reset"},f.toLanguageString(be,Be[be])))))))},e.GridColumnMenuFilterCell=Tr,e.GridColumnMenuFilterUI=Dr,e.GridColumnMenuGroup=e=>{const{group:t,column:r}=e,n=o.useLocalization(),l=!!(t&&r.field&&t.find((e=>e.field===r.field))),a=l?fe:he;return v.createElement(yr,null,v.createElement(Sr,{title:n.toLanguageString(a,Be[a]),iconClass:l?"k-i-ungroup":"k-i-group",svgIcon:l?i.ungroupIcon:i.groupIcon,onClick:t=>{if(t.preventDefault(),e.onGroupChange){if(!e.column.field)return;const r=(e.group||[]).slice(),n=r.findIndex((t=>t.field===e.column.field));n>-1?r.splice(n,1):r.push({field:e.column.field}),e.onGroupChange(r,t)}e.onCloseMenu&&e.onCloseMenu()}}))},e.GridColumnMenuItem=Sr,e.GridColumnMenuItemContent=Nr,e.GridColumnMenuItemGroup=yr,e.GridColumnMenuSort=e=>{const t=(t,r)=>{if(t.preventDefault(),!e.onSortChange)return;const{allowUnsort:n,mode:l}=re(e.sortable||!1,!1),a=(e.sort||[]).filter((t=>t.field===e.column.field))[0],o=ne[n][a&&a.dir||""][r],i="single"===l?[]:(e.sort||[]).filter((t=>t.field!==e.column.field));""!==o&&e.column.field&&i.push({field:e.column.field,dir:o}),e.onSortChange(i,t)},{sort:r,column:n}=e,l=wr(n.field,r),a=o.useLocalization();return v.createElement(yr,null,v.createElement(Sr,{title:a.toLanguageString(ye,Be[ye]),iconClass:"k-i-sort-asc-sm",svgIcon:i.sortAscSmallIcon,selected:Pr(l,r),onClick:r=>{t(r,"asc"),e.onCloseMenu&&e.onCloseMenu()}}),v.createElement(Sr,{title:a.toLanguageString(Se,Be[Se]),iconClass:"k-i-sort-desc-sm",svgIcon:i.sortDescSmallIcon,selected:Rr(l,r),onClick:r=>{t(r,kr),e.onCloseMenu&&e.onCloseMenu()}}))},e.GridColumnMenuWrapper=et,e.GridCommonDragLogic=j,e.GridContextMenu=te,e.GridContextMenuAnchorPart=y,e.GridContextMenuItemNames=S,e.GridDetailRow=e=>null,e.GridEditCell=Ye,e.GridFilterCell=It,e.GridGroupCell=Gt,e.GridHeaderCell=tt,e.GridHierarchyCell=je,e.GridNoRecords=Ft,e.GridRow=Lt,e.GridSearchBox=e=>{const t=o.useLocalization(),r=v.useContext(ae),[n]=W(),s=l.getStringFromSearch(n.search),d=a.classNames("k-grid-search","k-searchbox",e.className),u=t.toLanguageString(we,Be[we]);return v.createElement(c.TextBox,{placeholder:u,value:s,prefix:()=>v.createElement(c.InputPrefix,{orientation:"horizontal"},v.createElement(a.SvgIcon,{icon:i.searchIcon})),...e,className:d,onChange:t=>{r.searchChange(t),e.onChange&&e.onChange.call(void 0,t)}})},e.GridSelectionCell=qe,e.GridToolbar=Hr,e.StatusBar=Kr,e.booleanFilterValues=ht,e.cellBoolDropdownChange=xt,e.cellInputChange=Ct,e.cellOperatorChange=Et,e.contextMenuItemsMap=ee,e.filterGroupByField=Gr,e.getStatusData=e=>{const{dataItems:t,target:r}=e,n=Ar(r.columns).map((e=>e.field)).filter((e=>e&&"string"==typeof e)).map((e=>a.getter(e))),l="selectedField"in e?a.getter(e.selectedField):t=>e.select[a.getter(e.dataItemKey)(t)],o={dates:[],numbers:[],booleans:[],others:[]};t.forEach((e=>{const t=l(e);t&&t.forEach((t=>{(e=>{"number"==typeof e?o.numbers.push(e):"boolean"==typeof e?o.booleans.push(e):e instanceof Date?o.dates.push(e):o.others.push(e)})(n[t](e))}))}));const i=o.dates.map((e=>e.getTime())),s=o.booleans.filter((e=>e)).length,c=o.booleans.filter((e=>!e)).length,d=o.numbers.length?o.numbers.reduce(((e,t)=>e+t),0):void 0,u={sum:d,average:"number"==typeof d?d/o.numbers.length:void 0,min:o.numbers.length?Math.min(...o.numbers):void 0,max:o.numbers.length?Math.max(...o.numbers):void 0,count:o.numbers.length+o.booleans.length+o.dates.length+o.others.length,isTrue:s>0?s:void 0,isFalse:c>0?c:void 0,earliest:o.dates.length?new Date(Math.min(...i)):void 0,latest:o.dates.length?new Date(Math.max(...i)):void 0},p=(e,t)=>"sum"!==t&&"average"!==t||"number"!=typeof e?("earliest"===t||"latest"===t)&&e instanceof Date?e.toLocaleDateString():String(e):e.toFixed(2),g=[];return Object.keys(u).forEach((e=>{const t=e,r=u[t];void 0!==r&&g.push({type:t,value:r,formattedValue:p(r,t)})})),g},e.gridMessages=Be,e.isColumnMenuFilterActive=(e,t)=>!!Gr(e,t),e.isColumnMenuSortActive=(e,t)=>{const r=wr(e,t);return Rr(r,t)||Pr(r,t)},e.leafColumns=Ar,e.operators=pt,e.pagerFirstPage=ce,e.pagerInfo=se,e.pagerItemPerPage=ge,e.pagerLastPage=pe,e.pagerNextPage=ue,e.pagerPreviousPage=de,e.rootFilterOrDefault=Mr}));
|
|
15
|
+
!function(e,t){"object"==typeof exports&&"undefined"!=typeof module?t(exports,require("react"),require("prop-types"),require("@progress/kendo-data-query"),require("@progress/kendo-react-data-tools"),require("@progress/kendo-react-common"),require("@progress/kendo-react-intl"),require("@progress/kendo-svg-icons"),require("@progress/kendo-react-layout"),require("@progress/kendo-react-inputs"),require("@progress/kendo-react-dateinputs"),require("@progress/kendo-react-popup"),require("@progress/kendo-react-buttons"),require("@progress/kendo-react-dropdowns"),require("react-dom"),require("@progress/kendo-react-indicators"),require("@progress/kendo-react-animation")):"function"==typeof define&&define.amd?define(["exports","react","prop-types","@progress/kendo-data-query","@progress/kendo-react-data-tools","@progress/kendo-react-common","@progress/kendo-react-intl","@progress/kendo-svg-icons","@progress/kendo-react-layout","@progress/kendo-react-inputs","@progress/kendo-react-dateinputs","@progress/kendo-react-popup","@progress/kendo-react-buttons","@progress/kendo-react-dropdowns","react-dom","@progress/kendo-react-indicators","@progress/kendo-react-animation"],t):t((e="undefined"!=typeof globalThis?globalThis:e||self).KendoReactGrid={},e.React,e.PropTypes,e.KendoDataQuery,e.KendoReactDataTools,e.KendoReactCommon,e.KendoReactIntl,e.KendoSvgIcons,e.KendoReactLayout,e.KendoReactInputs,e.KendoReactDateinputs,e.KendoReactPopup,e.KendoReactButtons,e.KendoReactDropdowns,e.ReactDOM,e.KendoReactIndicators,e.KendoReactAnimation)}(this,(function(e,t,r,n,l,a,o,i,s,c,d,u,p,g,m,h,f){"use strict";function C(e){var t=Object.create(null);return e&&Object.keys(e).forEach((function(r){if("default"!==r){var n=Object.getOwnPropertyDescriptor(e,r);Object.defineProperty(t,r,n.get?n:{enumerable:!0,get:function(){return e[r]}})}})),t.default=e,Object.freeze(t)}var v=C(t);const b=e=>null;b.displayName="KendoReactGridColumn";const x={filterable:!0,editable:!0,sortable:!0,resizable:!0,reorderable:!0,groupable:!0};b.propTypes={field:r.string,title:r.string,editable:r.bool,sortable:r.oneOfType([r.bool,r.shape({allowUnsort:r.bool.isRequired})]),cell:r.any,filterCell:r.any,filterTitle:r.string,filterable:r.bool,filter:r.oneOf(["text","numeric","boolean","date"]),editor:r.oneOf(["text","numeric","boolean","date"]),width:r.oneOfType([r.string,r.number]),minResizableWidth:r.number,headerCell:r.any,footerCell:r.any,headerSelectionValue:r.bool,format:r.string,headerClassName:r.string,className:r.string,reorderable:r.bool,resizable:r.bool,orderIndex:r.number,groupable:r.bool,columnMenu:r.any,menuIcon:r.any,locked:r.bool,hidden:r.bool,media:r.string};const E=()=>t.createElement(t.Fragment,null),I=E;var y=(e=>(e.head="head",e.body="body",e))(y||{}),S=(e=>(e.create="create",e.edit="edit",e.delete="delete",e.select="select",e.copySelection="copySelection",e.copySelectionNoHeaders="copySelectionNoHeaders",e.paste="paste",e.reorderRow="reorderRow",e.exportPDF="exportPDF",e.exportExcel="exportExcel",e.separator="separator",e.sortAsc="sortAsc",e.sortDesc="sortDesc",e))(S||{});function k(e,t){const r=(null!=e?e:"").split(".");let n=t;return r.forEach((e=>{n=n?n[e]:void 0})),n}function w(e,t,r,a,o,i,s,c,d,u,p=0,g){var m;let h=p;for(let f=0;f<t.length;f++){let C;if(!o||void 0===t[f].value||void 0===t[f].items){e[e.length]={dataIndex:a.index,dataItem:t[f],rowType:"data",level:p,group:g,expanded:null!=(m=i?k(i,t[f]):u&&!(null==s||!s[n.getter(u)(t[f])]))&&m},a.index++;continue}{let e;e=null!=g&&g.parents?[{field:g.field,value:g.value},...g.parents]:g?[g]:[],C={field:t[f].field,value:t[f].value,parents:e}}h=Math.max(h,p+1);let v=!1;if(i)v=!1!==k(i,t[f]);else{const e=l.findGroupExpand(c||[],C);v=e?!1!==e.expanded:!1!==d}e[e.length]={dataIndex:-1,dataItem:t[f],level:p,group:C,rowType:"groupHeader",expanded:v},v&&(C.expanded=v,h=Math.max(w(e,t[f].items,r,a,o,i,s,c,d,u,p+1,C),h)),("always"===r||v&&"visible"===r)&&(e[e.length]={dataIndex:-1,dataItem:t[f],rowType:"groupFooter",level:p,expanded:v})}return h}const P=(e,t)=>"function"==typeof e.colSpan?e.colSpan({dataItem:t,column:e}):e.colSpan||1;function R(e,t,r,n=0){const a=[];if(!e)return[];e&&void 0===e.length&&(e=[e]),e.filter((e=>e&&e.props?!e.props.hidden:!e.hidden)).forEach(((e,o)=>{e=e.props?e.props:e;const i=t[o]||null,s=R(e.children,i&&i.children||[],r,n+1);a.push(Object.assign({depth:n},x,s.length?{cell:()=>null,filterCell:()=>null}:{},i?{width:i.width,orderIndex:i.orderIndex}:{},e,{id:e.id?e.id:l.tableKeyboardNavigationTools.generateNavigatableId(""+r.prevId++,r.idPrefix,"column"),declarationIndex:a.length,children:s,headerColSpan:e.headerColSpan,rowSpan:0,columnType:e.columnType||"data",colSpan:e.colSpan||1,isAccessible:!0,left:e.lockedColumn?i&&Math.floor(i.left):null,right:e.lockedColumn?i&&Math.floor(i.right):null,rowSpannable:e.rowSpannable}))}));if(a.sort(((e,t)=>e.orderIndex===t.orderIndex?e.declarationIndex-t.declarationIndex:(e.orderIndex||0)-(t.orderIndex||0))),0===n){const e=[],t=(r,n)=>r.forEach((r=>{r.parentIndex=n,t(r.children,e.push(r)-1)}));return t(a,-1),e}return a}const N=e=>Array.isArray(e)?e:e?e.data:[];const T=e=>void 0!==e.width?Math.floor(parseFloat(e.width.toString()))+"px":void 0,D=(e,t)=>t&&t.filter((t=>t.field===e)).length>0,M=e=>(e.sort(((e,t)=>e.declarationIndex-t.declarationIndex)),e.map((e=>{const{declarationIndex:t,parentIndex:r,depth:n,headerColSpan:l,rowSpan:a,index:o,kFirst:i,children:s,...c}=e;return s.length?{children:M(s),...c}:c}))),G=e=>{const{filterCell:t,headerCell:r,footerCell:n,cells:l,cell:a,rowSpannable:o,...i}=e;return e.children.length?{...i,children:e.children.map(G)}:i},L="undefined"!=typeof window&&/Firefox/.test(window.navigator.userAgent),O=17895697,F=(e,t)=>{if(e||t)return t?e?{...e,...t,select:{...e.select||{},...t.select||{}},hierarchy:{...e.hierarchy||{},...t.hierarchy||{}},group:{...e.group||{},...t.group||{}},edit:{...e.edit||{},...t.edit||{}}}:t:e},H=e=>{var t;return"object"==typeof e?null==(t=e.enabled)||t:null!=e&&e},K=e=>!(!e||e.$$typeof!==Symbol.for("react.client.reference")),A=e=>({id:e.id,ariaColumnIndex:e.ariaColumnIndex,isSelected:e.isSelected,isInEdit:e.isInEdit,isSorted:e.isSorted,isAlt:e.isAlt,expanded:e.expanded,className:e.className,style:e.style,field:e.field,dataItem:e.dataItem,format:e.format,colSpan:e.colSpan,dataIndex:e.dataIndex,columnIndex:e.columnIndex,columnsCount:e.columnsCount,rowType:e.rowType,level:e.level,editor:e.editor,render:e.render,locked:e.locked,isRtl:e.isRtl,rowDataIndex:e.rowDataIndex,columnPosition:e.columnPosition,group:e.group}),z=e=>{var t,r;const l="object"==typeof e?null==(t=e.enabled)||t:null!=e&&e,a="object"==typeof e&&null!=(r=e.valueGetter)?r:(e,t)=>n.getter(t)(e);return{enabled:l,valueGetter:a}},B=(e,t)=>{const r=(e=>{var t;return v.isValidElement(e)?e:null==(t=v.Children.toArray(e))?void 0:t[0]})(e);return r?v.cloneElement(r,t):null},V=t.createContext([{},()=>{},{}]),W=()=>t.useContext(V),q=e=>{var r,n,l,a,o,i,s,c,d,u,p,g,m,h,f,C,v,b,x,E,I,y;const{children:S,onEditChange:k,onFilterChange:w,onSortChange:P,onSearchChange:R,onPageChange:N,onGroupChange:T,onDataStateChange:D,onSelectionChange:M,onDetailExpandChange:G,onGroupExpandChange:L,onHeaderSelectionChange:O,onColumnsStateChange:F}=e,[H,K]=t.useState({edit:null!=(r=e.defaultEdit)?r:e.edit,filter:null!=(n=e.defaultFilter)?n:e.filter,select:null!=(l=e.defaultSelect)?l:e.select,search:null!=(a=e.defaultSearch)?a:e.search,sort:null!=(o=e.defaultSort)?o:e.sort,take:null!=(i=e.defaultTake)?i:e.take,skip:null!=(s=e.defaultSkip)?s:e.skip,group:null!=(c=e.defaultGroup)?c:e.group,detailExpand:null!=(d=e.defaultDetailExpand)?d:e.detailExpand,groupExpand:null!=(u=e.defaultGroupExpand)?u:e.groupExpand,columnsState:null!=(p=e.defaultColumnsState)?p:e.columnsState}),A={edit:null!=(g=e.edit)?g:H.edit,filter:null!=(m=e.filter)?m:H.filter,search:null!=(h=e.search)?h:H.search,sort:null!=(f=e.sort)?f:H.sort,take:null!=(C=e.take)?C:H.take,skip:null!=(v=e.skip)?v:H.skip,group:null!=(b=e.group)?b:H.group,select:null!=(x=e.select)?x:H.select,detailExpand:null!=(E=e.detailExpand)?E:H.detailExpand,groupExpand:null!=(I=e.groupExpand)?I:H.groupExpand,columnsState:null!=(y=e.columnsState)?y:H.columnsState};return t.createElement(V.Provider,{value:[A,e=>{},{onEditChange:e=>{K((t=>({...t,edit:e.edit}))),null==k||k(e)},onFilterChange:w&&(e=>{K((t=>({...t,filter:e.filter}))),null==w||w(e)}),onSearchChange:e=>{K((t=>({...t,search:e.search}))),null==R||R(e)},onSortChange:P&&(e=>{K((t=>({...t,sort:e.sort}))),null==P||P(e)}),onPageChange:N&&(e=>{K((t=>({...t,...e.page}))),null==N||N(e)}),onGroupChange:T&&(e=>{K((t=>({...t,group:e.group}))),null==T||T(e)}),onDataStateChange:e=>{K((t=>({...t,...e.dataState}))),null==D||D(e)},onSelectionChange:e=>{K((t=>({...t,select:e.select}))),null==M||M(e)},onHeaderSelectionChange:e=>{K((t=>({...t,select:e.select}))),null==O||O(e)},onDetailExpandChange:e=>{K((t=>({...t,detailExpand:e.detailExpand}))),null==G||G(e)},onGroupExpandChange:e=>{K((t=>({...t,groupExpand:e.groupExpand}))),null==L||L(e)},onColumnsStateChange:e=>{K((t=>({...t,columnsState:e.columnsState}))),null==F||F(e)}}]},S)},_=e=>{const t=a.useId(),r=e.id||t,n=a.useUnstyled(),l=o.useLocalization(),i=o.useInternationalization(),[,s]=v.useReducer((e=>!e),!0),c=v.useRef([]),d=v.useRef(0),[u,,p]=W();return B(e.children,{...u,...p,id:r,unstyled:n,localization:l,intl:i,columnsRef:c,scrollLeftRef:d,forceUpdate:s,isClient:!0})};let U=class{constructor(e){this.columns=[],this.resizable=!1,this.isRtl=!1,this.setIsRtl=e=>{this.isRtl=e},this.dragHandler=(e,t,r,n)=>{const l=e.originalEvent;n||(l.preventDefault(),l.stopPropagation(),l.stopImmediatePropagation());const a=r.closest("th");if(!a||!a)return;const o=a.clientWidth;let i=o;if(this.isRtl?i+=r.getBoundingClientRect().right-r.offsetWidth/2-e.clientX:i+=e.clientX-r.getBoundingClientRect().left-r.offsetWidth/2,!n&&Math.abs(i-o)<1)return;this.fixateInitialWidths(a.parentElement.clientWidth),this.setWidths(t,Math.floor(i)/o);const s=this.columns.filter((e=>!e.children.length)).findIndex((e=>e.id===t.id));this.onResize(s,o,i,l,n,t.id)},this.dblClickHandler=(e,t)=>{const r=this.columns.filter((e=>t.indexOf(e.id)>-1));if(!this.colGroupMain||!r.length)return;const n={},l=r;for(;l.length>0;){const e=l.pop();if(!e)break;e.children.length?l.push(...e.children):n[e.id]=e}const a=this.columns.filter((e=>!e.children.length)),o=[];a.forEach(((e,t)=>{n[e.id]&&o.push(t)}));const i=[this.colGroupMain.parentElement],s=[this.colGroupMain];this.colGroupHeader&&(i.push(this.colGroupHeader.parentElement),s.push(this.colGroupHeader)),this.colGroupFooter&&(i.push(this.colGroupFooter.parentElement),s.push(this.colGroupFooter)),i.forEach((e=>e.classList.add("k-autofitting")));const c=[];s.forEach((e=>{o.forEach((t=>{e.children[t]&&(e.children[t].width="",c[t]=Math.max(c[t]||0,e.children[t].offsetWidth+1))}))})),s.forEach((e=>{o.forEach((t=>{e.children[t]&&(e.children[t].width=c[t]+"px",a[t].width=c[t])}))})),i.forEach((e=>e.classList.remove("k-autofitting"))),this.onResize(o[0],0,0,e,!0,t[0])},this.updateColElements=e=>{const t=this.columns.filter((e=>!e.children.length));let r=1e-10;for(let n=0;n<e.length;n++){const l=e[n],a=t.findIndex((e=>e.id===l.id)),o=parseFloat((l.width||0).toString()),i=Math.floor(o);r+=o-i;const s=i+Math.floor(r);if(r-=Math.floor(r),this.colGroupMain&&this.colGroupMain.children[a]){const e=parseInt(this.colGroupMain.children[a].width,10);this.colGroupMain.children[a].width=s+"px",this.updateNextLockedCol(this.colGroupMain.parentElement,l,e-s)}if(this.colGroupHeader&&this.colGroupHeader.children[a]){const e=parseInt(this.colGroupHeader.children[a].width,10);this.colGroupHeader.children[a].width=s+"px",this.updateNextLockedCol(this.colGroupHeader.parentElement,l,e-s)}if(this.colGroupFooter&&this.colGroupFooter.children[a]){const e=parseInt(this.colGroupFooter.children[a].width,10);this.colGroupFooter.children[a].width=s+"px",this.updateNextLockedCol(this.colGroupFooter.parentElement,l,e-s)}}},this.onResize=e}fixateInitialWidths(e){const t=this.columns.filter((e=>!e.children.length));let r=0;const n=this.colGroupMain?this.colGroupMain.children:[];for(let t=0;t<n.length;t++)n[t].width?e-=parseFloat(n[t].width):r++;if(0===r)return;const l=Math.floor(e/r);for(let e=0;e<n.length;e++){const r=n[e];r.width||(r.width=l,t[e].width=l.toString(),this.colGroupHeader&&(this.colGroupHeader.children[e].width=l),this.colGroupFooter&&(this.colGroupFooter.children[e].width=l))}}setWidths(e,t){const r=this.columns.findIndex((t=>t.id===e.id)),n=[];let l=e.children.length;for(let e=r+1;e<this.columns.length&&!(l<=0);e++){const t=this.columns[e];t.children.length?l+=t.children.length:n.push(t),l--}return 0===n.length&&n.push(e),n.forEach((e=>{let r=e.width?parseFloat(e.width.toString())*t:0;const n=void 0===e.minResizableWidth?10:e.minResizableWidth;r<n&&(r=n),e.width=r})),this.updateColElements(n),n}updateNextLockedCol(e,t,r){const n=t.index,l=this.colGroupMain.parentElement.closest(".k-grid"),a=null==l?void 0:l.clientWidth,o=this.columns.filter((e=>e.locked)).map((e=>parseInt(e.width+"",10))).reduce(((e,t)=>e+t),0);!t.locked||a<=o+20||this.columns.forEach((t=>{if(null!=t&&t.locked&&r){const l=null==e?void 0:e.querySelectorAll('[aria-colindex="'+t.ariaColumnIndex+'"]');null==l||l.forEach((e=>{const l=e.style;this.isRtl?(t.index>n&&l&&l.right&&(l.right=parseInt(l.right,10)-r+"px"),t.index<n&&l&&l.left&&(l.left=parseInt(l.left,10)-r+"px")):(t.index>n&&l&&l.left&&(l.left=parseInt(l.left,10)-r+"px"),t.index<n&&l&&l.right&&(l.right=parseInt(l.right,10)-r+"px"))}))}}))}},j=class{constructor(e,t,r){this.refDragElementClue=v.createRef(),this.refDropElementClue=v.createRef(),this.columns=[],this.reorderable=!1,this.groupable=!1,this.startColumn=-1,this.startGroup=-1,this.currentColumn=-1,this.currentGroup=-1,this.groupPanelDivElement=null,this.refGroupPanelDiv=e=>{this.groupPanelDivElement=e&&e.children?e.children[0]:e},this.pressHandler=(e,t)=>{const r=this.getColumnIndex(e,t);if(this.startGroup=this.getGroupIndex(e),r>=0){const e=this.columns[r];(e.reorderable&&this.reorderable||e.groupable&&this.groupable)&&(this.startColumn=r)}},this.dragHandler=(e,t)=>{if(e.isTouch||e.originalEvent.preventDefault(),e.originalEvent.stopPropagation(),-1===this.startColumn&&-1===this.startGroup)return;this.currentColumn=this.getColumnIndex(e,t),this.currentGroup=this.isTargetGroupingContainer(e)?this.getCurrentGroupsLength:this.getGroupIndex(e);const r=!this.isValid();r&&(this.currentColumn=-1,this.currentGroup=-1);const n=this.currentColumn>=0?t.children[this.columns[this.currentColumn].index]:this.isTargetGroupingContainer(e)?e.originalEvent.target:this.groupPanelDivElement&&this.groupPanelDivElement.children[this.currentGroup];this.updateDragElementClue(e,t,n,r),this.updateDropElementClue(e,t,n,r)},this.releaseHandler=e=>{const t=this.startColumn,r=this.currentColumn,n=this.startGroup,l=this.currentGroup;e.originalEvent.preventDefault(),this.dropElementClue&&this.dropElementClue.setState({visible:!1}),this.dragElementClue&&this.dragElementClue.setState({visible:!1});const a=this.isValid();this.startColumn=this.startGroup=this.currentColumn=this.currentGroup=-1,a&&(t>=0&&r>=0?this.columnReorder(t,r,e.originalEvent):n>=0&&l>=0?this.groupReorder(n,l,e.originalEvent):t>=0&&l>=0&&this.columnToGroup(t,l,e.originalEvent))},this.columnReorder=e,this.groupReorder=t,this.columnToGroup=r}get dragClueRef(){return this.refDragElementClue}get dropClueRef(){return this.refDropElementClue}get getCurrentGroupsLength(){const e=this.groupPanelDivElement&&this.groupPanelDivElement.children;return e&&e.length||0}get dragElementClue(){return this.refDragElementClue.current}get dropElementClue(){return this.refDropElementClue.current}getColumnIndex(e,t){if(!t||t.parentElement===this.groupPanelDivElement)return-1;const r=l.getIndex(e,t);if(-1===r)return-1;for(let e=0;e<t.parentNode.children.length;e++)if(t.parentNode.children[e]===t)return this.columns.findIndex((t=>t.index===r&&t.depth===e));return-1}isTargetGroupingContainer(e){const t=e.originalEvent.target;return!!t.className.indexOf&&-1!==t.className.indexOf("k-grouping-drop-container")}getGroupIndex(e){return l.getIndex(e,this.groupPanelDivElement)}isValid(){return this.startGroup>=0?this.currentGroup>=0&&this.currentGroup!==this.startGroup:-1!==this.startColumn&&(this.currentGroup>=0?!0===this.columns[this.startColumn].groupable&&!0===this.groupable:!0===this.reorderable&&this.currentColumn>=0&&this.currentColumn!==this.startColumn&&!0===this.columns[this.startColumn].reorderable&&this.columns[this.currentColumn].parentIndex===this.columns[this.startColumn].parentIndex)}updateDragElementClue(e,t,r,n){if(!this.dragElementClue)return;const l=this.startColumn>=0?t.children[this.columns[this.startColumn].index].innerText:t.innerText;this.dragElementClue.setState({visible:!0,top:e.pageY+10,left:e.pageX,innerText:l,status:n||!r?"k-i-cancel":"k-i-plus"})}updateDropElementClue(e,t,r,n){if(!this.dropElementClue)return;if(n||!r)return void this.dropElementClue.setState({visible:!1});const l=r.getBoundingClientRect(),a=(r.closest(".k-grouping-header")||r).getBoundingClientRect();let o=l.left+e.pageX-e.clientX-6;!this.isTargetGroupingContainer(e)&&(this.currentColumn>this.startColumn||this.currentGroup>this.startGroup&&-1!==this.startGroup)&&(o+=l.width);const i=a.top+e.pageY-e.clientY;this.dropElementClue.setState({visible:!0,top:i,left:o,height:this.currentColumn>=0?t.clientHeight:a.height})}};const $=l.TABLE_ROW_INDEX_ATTRIBUTE,X=l.TABLE_COL_INDEX_ATTRIBUTE,Y=l.TABLE_PREVENT_SELECTION_ELEMENT,J=/^(?!.*\bChrome).*\bSafari/i;let Q=class{constructor(e){this.table=null,this.containerHeight=0,this.topCacheCount=0,this.attendedSkip=0,this.propsSkip=0,this.total=0,this.scrollableVirtual=!1,this.realSkip=0,this.pageSize=0,this.PageChange=null,this.tableBodyRef=null,this.fixedScroll=!1,this.askedSkip=void 0,this.containerRef=null,this.tableTransform="",this.scrollSyncing=!1,this.lastLoaded=0,this.firstLoaded=0,this.lastScrollTop=0,this.reactVersion=Number.parseFloat(v.version),this.firstLoaded=this.pageSize,this.lastLoaded=this.realSkip+this.pageSize,this.scrollHandler=this.scrollHandler.bind(this)}get container(){var e;return(null==(e=this.containerRef)?void 0:e.current)||void 0}translate(e,t){this.scrollableVirtual&&this.table&&(L||this.reactVersion<=17||t?this.table.style.transform="translateY("+e+"px)":this.tableTransform="translateY("+e+"px)")}changePage(e,t){this.PageChange&&this.PageChange({skip:Math.max(0,e),take:this.pageSize},t)}reset(){this.scrollSyncing=!0,!this.fixedScroll&&(this.container&&(this.container.scrollTop=0),this.translate(0,!0))}scrollHandler(e){var t;if(!(this.scrollableVirtual&&this.container&&this.table&&this.rowHeightService&&null!=(t=this.containerRef)&&t.current))return;if(this.scrollSyncing)return void(this.scrollSyncing=!1);const r=this.container.scrollTop,n=this.lastScrollTop>=r,l=!n;this.lastScrollTop=r;let a=this.rowHeightService.index(r),o=this.rowHeightService.offset(a);const{offsetHeight:i}=this.containerRef.current,s=this.rowHeightService.index(r+i);if(l&&s>=this.lastLoaded&&this.lastLoaded<this.total){const t=a+this.pageSize-this.total;t>0&&(a-=t,o=this.rowHeightService.offset(a)),this.firstLoaded=a,this.translate(o);const r=this.firstLoaded+this.pageSize;this.lastLoaded=Math.min(r,this.total),this.changePage(this.firstLoaded,e)}else if(n&&a<this.firstLoaded){const t=Math.floor(.3*this.pageSize);this.firstLoaded=Math.max(a-t,0),this.translate(this.rowHeightService.offset(this.firstLoaded)),this.lastLoaded=Math.min(this.firstLoaded+this.pageSize,this.total),this.changePage(this.firstLoaded,e)}}},Z=class{constructor(e){this.table=null,this.containerHeight=0,this.topCacheCount=0,this.attendedSkip=0,this.propsSkip=0,this.total=0,this.scrollableVirtual=!1,this.realSkip=0,this.pageSize=0,this.PageChange=null,this.tableBodyRef=null,this.fixedScroll=!1,this.askedSkip=void 0,this.containerRef=null,this.tableTransform="",this.prevScrollPos=0,this.tableTranslate=0,this.scrollSyncing=!1,this.reactVersion=Number.parseFloat(v.version),this.topItems=(e,t)=>{if(!this.container||t)return{topItemsCount:0,topItemsHeight:0};const r=this.container.clientHeight,n=Math.ceil(r/e[0].line),l=Math.ceil((e.length-n)/2);let a=0;for(let t=0;t<l;t++)a+=e[t].line+e[t].acc;return{topItemsCount:l,topItemsHeight:a,itemsNeededOnScreen:n+n/2}},this.horizontalScrollbarHeight=()=>this.container?this.container.offsetHeight-this.container.clientHeight:0,e&&(this.topCacheCount=4,this.attendedSkip=-this.topCacheCount),this.scrollHandler=this.scrollHandler.bind(this)}get container(){var e;return null==(e=this.containerRef)?void 0:e.current}get rowHeights(){var e,t;const r=[],n=(null==(e=this.tableBodyRef)?void 0:e.current)&&(null==(t=this.tableBodyRef)?void 0:t.current.children)||[];let l=0;for(let e=0;e<n.length;e++)n[e].className.indexOf("k-grouping-row")>-1?l+=n[e].scrollHeight:n[e].className.indexOf("k-detail-row")>-1?r[r.length-1].line+=n[e].scrollHeight:(r.push({line:n[e].scrollHeight,acc:l}),l=0);return r}changePage(e,t){this.attendedSkip=e-this.topCacheCount,this.PageChange&&this.PageChange({skip:Math.max(0,e-this.topCacheCount),take:this.pageSize},t)}translate(e,t){this.tableTranslate=e,this.scrollableVirtual&&this.table&&(this.reactVersion<=17||t?this.table.style.transform="translateY("+e+"px)":this.tableTransform="translateY("+e+"px)")}reset(){this.scrollSyncing=!0,!this.fixedScroll&&(this.container&&(this.container.scrollTop=0),this.translate(0,!0))}localScrollUp(e){if(!this.container)return;const t=this.rowHeights,r=this.container.scrollTop;let n=this.tableTranslate,l=0;const{topItemsCount:a,topItemsHeight:o,itemsNeededOnScreen:i}=this.topItems(t,!!this.topCacheCount),s=r-n;if(!(s>o||t.length<=i)){for(;l<this.topCacheCount+this.attendedSkip-this.realSkip+a&&this.propsSkip-l>0&&!(n+(t[t.length-1-l].line+t[t.length-1-l].acc)+s<=r);)n-=t[t.length-1-l].line+t[t.length-1-l].acc,l++;if(0===l&&0===this.topCacheCount&&this.attendedSkip>0&&(n=Math.max(n-t[0].line,0),l=1),this.propsSkip-l<=0&&n>r)return this.translate(0),this.changePage(0,e),void(this.container.scrollTop=0);if(n>r&&(n=r),n!==this.tableTranslate){this.translate(Math.max(0,n-o));const t=Math.max(0,this.propsSkip-l-a);this.changePage(t,e)}}}localScrollDown(e){if(!this.container)return;const t=this.rowHeights,r=this.container.scrollTop;let n=this.tableTranslate,l=0;const{topItemsCount:a,topItemsHeight:o,itemsNeededOnScreen:i}=this.topItems(t,!!this.topCacheCount);for(;l<t.length-this.topCacheCount&&!(n+t[l].line+t[l].acc>r);)n+=t[l].line+t[l].acc,l++;a>this.propsSkip+l||t.length<=i||(l>=t.length-this.topCacheCount&&this.propsSkip+l>=this.total?(this.translate(n-o),this.changePage(this.total-1-a,e)):n!==this.tableTranslate&&this.propsSkip+l-a!==this.propsSkip&&(this.translate(n-o),this.changePage(this.propsSkip+l-a,e)))}scrollNonStrict(e){const t=this.total*this.prevScrollPos/this.containerHeight;let r=Math.floor(t);r>=this.total&&(r=this.total-1);const n=Math.min(t-r,1);let l=0;const a=r-this.propsSkip,o=this.rowHeights;a>=0&&a<=1?l=-(o[0].line+o[0].acc)*n:-1===a&&(l=-(o[o.length-1].line+o[o.length-1].acc)*n);const{topItemsCount:i,topItemsHeight:s}=this.topItems(o,!!this.topCacheCount);this.translate(Math.max(0,l-s-this.horizontalScrollbarHeight()+this.containerHeight*t/this.total)),this.changePage(r-i,e)}scrollHandler(e){if(!this.scrollableVirtual)return;if(this.scrollSyncing||!this.container||!this.table)return void(this.scrollSyncing=!1);const t=this.container.scrollTop,r=this.prevScrollPos;if(this.prevScrollPos=t,void 0!==this.askedSkip)return this.translate(this.containerHeight*this.askedSkip/this.total),this.changePage(this.askedSkip,e),this.prevScrollPos=t,void(this.askedSkip=void 0);t-r<0&&t>this.tableTranslate-this.table.scrollHeight/10?this.localScrollUp(e):t-r>0&&t<this.tableTranslate+2*this.table.scrollHeight/3?this.localScrollDown(e):this.scrollNonStrict(e),this.prevScrollPos=t}};const ee={[S.create]:{name:"create",text:"Add",icon:"plus",svgIcon:i.plusIcon,data:{action:"AddCommand"}},[S.edit]:{name:"edit",text:"Edit",icon:"pencil",svgIcon:i.pencilIcon,data:{action:"EditCommand"}},[S.delete]:{name:"delete",text:"Delete",icon:"trash",svgIcon:i.trashIcon,data:{action:"DeleteCommand"}},[S.select]:{name:"select",text:"Select",icon:"table-body",svgIcon:i.tableBodyIcon,items:[{name:"selectRow",text:"Row",icon:"table-row-groups",svgIcon:i.tableRowGroupsIcon,data:{action:"SelectRowCommand"}},{name:"selectAllRows",text:"All rows",icon:"grid",svgIcon:i.gridIcon,data:{action:"SelectAllRowsCommand"}},{name:"clearSelection",text:"Clear selection",icon:"table-unmerge",svgIcon:i.tableUnmergeIcon,data:{action:"ClearSelectionCommand"}}]},[S.copySelection]:{name:"copySelection",text:"Copy selection",icon:"page-header-section",svgIcon:i.pageHeaderSectionIcon,data:{action:"CopySelectionCommand"},options:"withHeaders"},[S.copySelectionNoHeaders]:{name:"copySelectionNoHeaders",text:"Copy selection (No Headers)",icon:"file-txt",svgIcon:i.fileTxtIcon,data:{action:"CopySelectionCommand"}},[S.paste]:{name:"paste",text:"Paste (use CTRL/⌘ + V)",icon:"clipboard",svgIcon:i.clipboardIcon,data:{action:"PasteCommand"}},[S.reorderRow]:{name:"reorderRow",text:"Reorder row",icon:"caret-alt-expand",svgIcon:i.caretAltExpandIcon,items:[{name:"reorderRowUp",text:"Up",icon:"caret-alt-up",svgIcon:i.caretAltUpIcon,data:{action:"ReorderRowCommand"}},{name:"reorderRowDown",text:"Down",icon:"caret-alt-down",svgIcon:i.caretAltDownIcon,data:{action:"ReorderRowCommand"}},{name:"reorderRowTop",text:"Top",icon:"caret-alt-to-top",svgIcon:i.caretAltToTopIcon,data:{action:"ReorderRowCommand"}},{name:"reorderRowBottom",text:"Bottom",icon:"caret-alt-to-bottom",svgIcon:i.caretAltToBottomIcon,data:{action:"ReorderRowCommand"}}]},[S.exportPDF]:{name:"exportPDF",text:"Export to PDF",icon:"file-pdf",svgIcon:i.filePdfIcon,data:{action:"ExportPDFCommand"}},[S.exportExcel]:{name:"exportExcel",text:"Export to Excel",icon:"file-excel",svgIcon:i.fileExcelIcon,items:[{name:"exportToExcelAll",text:"All",data:{action:"ExportExcelCommand"}},{name:"exportToExcelSelection",text:"Selection",data:{action:"ExportExcelCommand"},options:"selection,withHeaders"},{name:"exportToExcelSelectionNoHeaders",text:"Selection (No Headers)",data:{action:"ExportExcelCommand"},options:"selection"}]},[S.separator]:{name:"separator",separator:!0},[S.sortAsc]:{name:"sortAsc",text:"Sort Ascending",icon:"sort-asc-small",svgIcon:i.sortAscSmallIcon,data:{action:"SortCommand"}},[S.sortDesc]:{name:"sortDesc",text:"Sort Descending",icon:"sort-desc-small",svgIcon:i.sortDescSmallIcon,data:{action:"SortCommand"}}},te=e=>{const{show:t,offset:r,dataItem:n,field:l,items:a,onClose:i,onSelect:c}=e,d=o.useLocalization(),u=v.useCallback((e=>{c.call(void 0,{event:e,dataItem:n,field:l})}),[c,n,l]),p=v.useCallback((e=>{const t=e;return t.text&&t.name&&(t.text=d.toLanguageString(`contextMenu.${t.name}`,t.text||"")),t.items&&Array.isArray(t.items)&&(t.items=t.items.map((e=>p(e)))),t}),[d]),g=v.useMemo((()=>a&&a.map((e=>p("string"==typeof e?ee[e]:e)))),[a,p]);return v.createElement(s.ContextMenu,{show:t,offset:r,items:g,onClose:i,onSelect:u})},re=(...e)=>Object.assign({allowUnsort:!0,mode:"single"},...e),ne={true:{asc:{asc:"",desc:"desc"},desc:{asc:"asc",desc:""},"":{asc:"asc",desc:"desc"}},false:{asc:{asc:"asc",desc:"desc"},desc:{asc:"asc",desc:"desc"},"":{asc:"asc",desc:"desc"}}},le={true:{asc:"desc",desc:"","":"asc"},false:{asc:"desc",desc:"asc","":"asc"}},ae=v.createContext(void 0),oe=e=>{var t,r;const n=e.gridProps.isClient,[o,i]=v.useState({}),s=()=>{i({})},c=v.useMemo((()=>e.columnsRef.current.find((e=>e.field===o.field))),[e.columnsRef,o]),d=v.useMemo((()=>(e=>{let t=[];return e.sortable&&(t=t.concat([S.sortAsc,S.sortDesc])),t})({sortable:!!(e.gridProps.sortable&&(null==c?void 0:c.sortable)),selectable:l.getSelectionOptions(e.gridProps.selectable).enabled,clipboard:!!e.gridProps.clipboard})),[c,e.gridProps.sortable,e.gridProps.selectable,e.gridProps.clipboard]),u=v.useMemo((()=>(e=>{let t=[];return e.clipboard&&(t=t.concat([S.copySelection,S.copySelectionNoHeaders,S.paste])),e.editable&&(t.length&&(t=t.concat([S.separator])),t=t.concat([S.create,S.edit,S.delete])),e.selectable&&(t.length&&(t=t.concat([S.separator])),t=t.concat([S.select])),e.rowReorderable&&(t.length&&(t=t.concat([S.separator])),t=t.concat([S.reorderRow])),t})({sortable:!!(e.gridProps.sortable&&(null==c?void 0:c.sortable)),selectable:l.getSelectionOptions(e.gridProps.selectable).enabled,clipboard:!!e.gridProps.clipboard,rowReorderable:H(e.gridProps.rowReorderable)})),[c,e.gridProps.sortable,e.gridProps.selectable,e.gridProps.clipboard]),p=v.useMemo((()=>{const t=(null==c?void 0:c.contextMenu)||e.gridProps.contextMenu,r="function"==typeof t?t(o):t;if(r&&o.offset){const e=r[o.dataItem?y.body:y.head],t=o.dataItem?u:d;return!1===e?void 0:!0===e||void 0===e?t:e}}),[e.gridProps.contextMenu,o,u,d,c]),g=()=>{const e=ue.current.filter((e=>e.declarationIndex>=0&&-1===e.parentIndex));return M(e)},m=t=>{if("moveToNextPage"===t.action&&w(t.event),"moveToPrevPage"===t.action&&P(t.event),t.focusElement&&"reorderToRight"===t.action){const e=parseInt(t.focusElement.ariaColIndex,10)-1;e<ue.current.length-1&&D(e,e+1,t.event)}if(t.focusElement&&"reorderToLeft"===t.action){const e=parseInt(t.focusElement.ariaColIndex,10)-1;e>0&&D(e,e-1,t.event)}if("select"===t.action&&f(t.event),e.gridProps.onNavigationAction&&n){const r={focusElement:t.focusElement,...q(t.event)};_(e.gridProps.onNavigationAction,r)}},h=(t,r,n)=>{const{allowUnsort:l,mode:a}=re(e.gridProps.sortable||!1,r.sortable||!1),o=(e.gridProps.sort||[]).filter((e=>e.field===r.field))[0],i=n||le[l][o&&o.dir||""],s="single"===a?[]:(e.gridProps.sort||[]).filter((e=>e.field!==r.field));""!==i&&r.field&&s.push({field:r.field,dir:i}),R(s,t)},f=t=>{var r,n;if(e.gridProps.selectedField||!We.enabled||!e.gridProps.dataItemKey)return;const a={dataItems:$(),mode:We.mode,cell:We.cell,componentId:e.id,selectedField:e.gridProps.selectedField,...q(t)},o=l.getSelectedStateFromKeyDown({event:a,selectedState:null!=(r=e.gridProps.select)?r:{},dataItemKey:e.gridProps.dataItemKey});if(o===e.gridProps.select)return;const i=t.target,s=l.closestTagName(i,"TD"),c=l.closestTagName(i,"TR"),d=l.getColumnIndex(s),u=l.getRowIndex(c);if(void 0!==d&&void 0!==u){const r=null==(n=N(e.gridProps.data))?void 0:n[u];e.gridProps.onSelectionChange&&_(e.gridProps.onSelectionChange,{...a,select:o,dataItem:r,startRowIndex:u,startColIndex:d,startDataItem:r,endDataItem:r,endRowIndex:u,endColIndex:d,ctrlKey:t.ctrlKey,altKey:t.altKey,metaKey:t.metaKey,shiftKey:t.shiftKey,isDrag:!1})}},C=(t,r)=>{e.gridProps.onSelectionChange&&We.enabled&&_(e.gridProps.onSelectionChange,{...t,select:r})},b=t=>{if(e.gridProps.onSelectionChange&&We.enabled){const r=t.dataItems[0],n=t.dataItems[t.dataItems.length-1],l={},o={...t,startDataItem:r,endDataItem:n,startRowIndex:0,endRowIndex:t.dataItems.length-1,startColIndex:0,endColIndex:ue.current.length-1};t.dataItems.forEach((r=>{const n=a.getter(e.gridProps.dataItemKey)(r);l[n]=!t.cell||[...Array(ue.current.length).keys()]})),C(o,l)}},x=t=>{if(e.gridProps.onSelectionChange&&We.enabled){const r=a.getter(e.gridProps.dataItemKey)(t.dataItem),n=0,l=ue.current.length-1,o=t.dataItems.findIndex((r=>r[e.gridProps.dataItemKey]===t.dataItem[e.gridProps.dataItemKey])),i={...t,startDataItem:o,endDataItem:o,startRowIndex:o,endRowIndex:o,startColIndex:n,endColIndex:l},s="multiple"===t.mode&&e.gridProps.select||{};!0===s[r]||Array.isArray(s[r])&&s[r].length===ue.current.length?delete s[r]:s[r]=!t.cell||[...Array(ue.current.length).keys()],C(i,s)}},E=t=>{e.gridProps.onSelectionChange&&We.enabled&&C(t,{})},I=(t,r,n,l,a)=>{const o=e.gridProps.onDataStateChange;if(t){const e={...q(l),...r,targetEvent:a};_(t,e)}else o&&_(o,{...q(l),targetEvent:a||{},dataState:{...W(),...n}})},k=(t,r,n)=>{I(e.gridProps.onPageChange,{page:t},{skip:t.skip,take:t.take},r,n)},w=t=>{var r,n;const l=null!=(n=null!=(r=e.gridProps.take)?r:e.gridProps.pageSize)?n:0,a=(e.gridProps.skip||0)+l,o=(()=>{let t=e.gridProps.total||0;return Array.isArray(e.gridProps.data)?t=t||e.gridProps.data.length:e.gridProps.data&&(t=t||e.gridProps.data.total),t})();a<o&&k({skip:a,take:l},t)},P=t=>{var r,n;const l=null!=(n=null!=(r=e.gridProps.take)?r:e.gridProps.pageSize)?n:0,a=(e.gridProps.skip||0)-l;a>=0&&k({skip:a,take:l},t)},R=(t,r)=>{I(e.gridProps.onSortChange,{sort:t},{sort:t,..."virtual"===e.gridProps.scrollable?{skip:0}:{}},r)},T=(t,r)=>{const n=r.nativeEvent?r:{nativeEvent:r.nativeEvent||r.originalEvent};0===t.length&&e.gridProps.navigatable&&(Re.current=!0),I(e.gridProps.onGroupChange,{group:t},{group:t,skip:0},n)},D=(t,r,n)=>{const a=ue.current[t],o=a.depth,i=e=>{do{e++}while(e<ue.current.length&&ue.current[e].depth>o);return e},s=ue.current.splice(t,i(t)-t);ue.current.splice(t<r?i(r-s.length):r,0,...s),ue.current.filter((e=>e.declarationIndex>=0)).forEach(((e,t)=>e.orderIndex=t));const c=ue.current[t].locked&&ue.current[r].locked;l.updateLeft(e.columnsMapRef,ue.current,c||Me.current),l.updateRight(e.columnsMapRef,ue.current,c||Me.current),Pe.current&&(Me.current=!1,Pe.current=!1);const d=g();if(ce(),e.gridProps.onColumnReorder){const t={target:de.current,columns:d,columnId:a.id,nativeEvent:n};_(e.gridProps.onColumnReorder,t)}},G=(t,r,n)=>{const l="object"==typeof e.gridProps.rowReorderable?e.gridProps.rowReorderable.enabled:e.gridProps.rowReorderable;if("forbidden"===n||!l||!Ke.current)return;const{slicedData:a,dataRef:o}=e,i=(a||o)[r];e.gridProps.onRowReorder&&_(e.gridProps.onRowReorder,{draggedDataItems:[Ke.current],droppedDataItem:null==i?void 0:i.dataItem,dropPosition:n,nativeEvent:t.originalEvent,dragEvent:t,target:de.current}),Ke.current=null},F=(t,r,n)=>{if(void 0===e.gridProps.group)return;const l=e.gridProps.group.slice();l.splice(r,0,...l.splice(t,1)),T(l,n)},K=(t,r,n)=>{const l=ue.current[t].field;if(!l)return;const a=(e.gridProps.group||[]).slice();a.splice(r,0,{field:l}),T(a,n)},A=()=>{let e=0;if(!ge.current.colGroupMain)return;const t=ge.current.colGroupMain.children;for(let r=0;r<t.length;r++){const n=t[r].width;if(!n)return;e+=parseFloat(n.toString())}e=Math.round(e),we.current&&we.current.setWidth(e),ke.current&&ke.current.setWidth(e),Ie.current&&(Ie.current.style.width=e+"px")},z=v.useCallback(((t,r,a,o,i)=>{var s;if(!B()&&!a||!t)return;const c={type:t,nativeEvent:r,columns:ue.current,dataItemKey:e.gridProps.dataItemKey||"",dataItem:o,field:i,..."boolean"!=typeof e.gridProps.clipboard?e.gridProps.clipboard:{},...a},d=X(),u=l.populateClipboardData({event:c,data:d,selectedState:null!=(s=e.gridProps.select)?s:{},previousCopiedItems:He.current});t!==l.ClipboardActionType.paste&&(He.current=u.copiedItems),e.gridProps.onClipboard&&n&&_(e.gridProps.onClipboard,{...c,...u})}),[e.gridProps.select,e.gridProps.dataItemKey,e.gridProps.data,e.gridProps.clipboard,e.gridProps.onClipboard]),B=()=>{var e,t,r;if(!a.canUseDOM)return!1;const n=a.getActiveElement(Y()),l=n?n.matches(".k-table-td")?n:null==(e=Y())?void 0:e.body:null==(t=Y())?void 0:t.body,o=l.closest(".k-grid-container"),i=l&&(null==(r=Se.current)?void 0:r.contains(l));return!!(l&&i&&o)},V=(t,r,l,a,o,i)=>{A(),Me.current=!0,Pe.current=!0,e.gridProps.onColumnResize&&n&&_(e.gridProps.onColumnResize,{columns:g(),nativeEvent:a,targetColumnId:i,index:t,newWidth:r,oldWidth:l,end:o,target:de.current})},W=()=>{var t;return{filter:e.gridProps.filter,sort:e.gridProps.sort,skip:e.gridProps.skip,take:null!=(t=e.gridProps.take)?t:e.gridProps.pageSize,group:e.gridProps.group}},q=e=>({nativeEvent:e&&e.nativeEvent,syntheticEvent:e,target:de.current}),_=(t,r)=>{e.gridProps.isClient?t(r):t((e=>({...e,nativeEvent:void 0,syntheticEvent:void 0,target:void 0,targetEvent:void 0,focusElement:void 0}))(r))},$=()=>e.dataRef.filter((e=>"data"===e.rowType)).map((e=>e.dataItem)),X=()=>(e.slicedData||e.dataRef).filter((e=>"data"===e.rowType)).map((e=>e.dataItem)),Y=()=>{var e;if(a.canUseDOM)return(null==(e=ee())?void 0:e.ownerDocument)||document},ee=()=>Se.current,ne=v.useCallback((t=>{var r;if(!pe.current||null==(r=pe.current)||!r.container||"none"===e.gridProps.scrollable)return;ve.current&&ve.current.disconnect();const{rowIndex:n}=t,l=ee();if("virtual"===e.gridProps.scrollable)pe.current.askedSkip=n,pe.current.container.scroll(0,Math.round(pe.current.askedSkip/pe.current.total*pe.current.container.scrollHeight));else if(l){const e=n<1?l.querySelector("tbody > tr:nth-child(1)"):l.querySelector(`tbody > tr:nth-child(${n+1})`);e&&Ee.current&&(Ee.current.scrollTop=e.offsetTop)}}),[e.gridProps.scrollable]),oe=e=>JSON.stringify(e.map((e=>({id:e.id,field:e.field,title:e.title,children:e.children})))),ie=()=>{oe(Ve)===oe(ue.current)||ce()},se=v.useCallback((e=>{const t={rowIndex:Oe.current};e.forEach((e=>{e.isIntersecting||ne(t)}))}),[ne]),ce=()=>{e.gridProps.forceUpdate&&e.gridProps.forceUpdate()},de=v.useRef(null),ue=e.columnsRef,pe=v.useRef(),ge=v.useRef(),me=v.useRef(),he=v.useRef(),fe=v.useRef(),Ce=v.useRef(),ve=v.useRef(null),be=v.useRef(null),xe=v.useRef(null),Ee=v.useRef(null),Ie=v.useRef(null),ye=v.useRef(null),Se=v.useRef(null),ke=v.useRef(null),we=v.useRef(null),Pe=v.useRef(!1),Re=v.useRef(!1),Ne=v.useRef(),Te=v.useRef(),De=v.useRef(!1),Me=v.useRef(!0),Ge=v.useRef(0),Le=v.useRef(),Oe=v.useRef(),Fe=v.useRef([]),He=v.useRef([]),Ke=v.useRef(null),Ae=v.useRef(null),ze=v.useRef(null),Be=a.useDir(Se),Ve=v.useMemo((()=>v.Children.toArray(e.gridProps.children)),[e.gridProps.children]),We=l.getSelectionOptions(null!=(t=e.gridProps.selectable)?t:!!e.gridProps.selectedField),qe=l.getEditableOptions(null!=(r=e.gridProps.editable)?r:!!e.gridProps.editField);v.useMemo((()=>{l.tableKeyboardNavigation.onConstructor({navigatable:!!e.gridProps.navigatable,contextStateRef:he,navigationStateRef:fe,idPrefix:e.id})}),[]),v.useMemo((()=>{var t;null==(t=pe.current)||t.reset();const r=!0===e.gridProps.groupable||"object"==typeof e.gridProps.groupable&&!1!==e.gridProps.groupable.enabled,n=e.isFixedVirtualScroll?Q:Z;pe.current=new n(r||void 0===e.gridProps.rowHeight||0===e.gridProps.rowHeight)}),[e.gridProps.scrollable,e.gridProps.total,e.gridProps.filter,e.gridProps.group,e.gridProps.groupable,e.gridProps.sort,e.gridProps.rowHeight]),v.useEffect((()=>(e.gridProps.clipboard&&(Ce.current=new l.ClipboardService(z),Ce.current.addEventListeners(Y())),()=>{Ce.current&&Ce.current.removeEventListeners(Y())})),[e.gridProps.onClipboard,e.gridProps.clipboard,z,Y]),v.useEffect((()=>(e.gridProps.columnVirtualization&&!window.navigator.userAgent.match(J)&&(ye.current&&(ye.current.style.display="block"),Ie.current&&(Ie.current.style.display="block")),A(),a.setScrollbarWidth(),l.tableKeyboardNavigation.onComponentDidMount({scope:Se.current||void 0,contextStateRef:he,navigationStateRef:fe}),()=>{clearTimeout(Le.current)})),[]),v.useEffect((()=>{var t;A(),a.setScrollbarWidth(),null!=(t=pe.current)&&t.tableTransform&&pe.current.table&&(pe.current.table.style.transform=pe.current.tableTransform,pe.current.tableTransform=""),(()=>{var e,t,r;if(be.current&&(null==(e=be.current)?void 0:e.getElementsByClassName("k-grid-edit-row").length)>0){De.current=!1,null!=(t=document.activeElement)&&t.closest(".k-grid-edit-row")?Te.current=document.activeElement:Te.current=void 0;const e=Array.from(null==(r=be.current)?void 0:r.getElementsByClassName("k-grid-edit-row"));e.length>Fe.current.length?Ne.current=e.filter((e=>!Fe.current.includes(e)))[0]:1===e.length&&(Ne.current=e[0],De.current=!0),Fe.current=e}})(),l.tableKeyboardNavigation.onComponentDidUpdate({scope:Se.current||void 0,contextStateRef:he,navigationStateRef:fe,focusFirst:Re.current,newEditableRow:Ne.current,singleEditRow:De.current,lastActiveElement:Te.current,navigatable:e.gridProps.navigatable}),Re.current=!1,Ne.current=void 0})),v.useEffect((()=>{if(a.canUseDOM){const e={rootMargin:"0px",threshold:.9};ve.current=window.IntersectionObserver&&new window.IntersectionObserver(se,e)||null}}),[se]),v.useEffect((()=>{var e;let t;return a.canUseDOM&&window.ResizeObserver&&(t=new window.ResizeObserver(ie),t.observe(null==(e=Y())?void 0:e.body)),()=>{null==t||t.disconnect()}}),[]),v.useImperativeHandle(de,(()=>({get element(){return ee()},props:e.gridProps,get columns(){return g()},scrollIntoView:t=>{var r;if(null==(r=pe.current)||!r.container||"none"===e.gridProps.scrollable)return;const{rowIndex:n}=t;Oe.current=n;const l=ee();if(ve.current&&l){ve.current.disconnect();const e=l.querySelector(`[absolute-row-index="${Oe.current}"]`);e?ve.current.observe(e):ne(t)}},fitColumns:e=>{ge.current.dblClickHandler(null,e)}}))),v.useImperativeHandle(e.gridRef,(()=>de.current)),v.useMemo((()=>{ge.current=new U(V)}),[e.gridProps.onColumnResize]),v.useMemo((()=>{me.current=new j(D,F,K)}),[e.gridProps.onColumnReorder,e.gridProps.onGroupChange,e.gridProps.group,e.gridProps.groupable]),ge.current.resizable=e.gridProps.resizable||!1,ge.current.columns=ue.current;const _e=!0===e.gridProps.groupable||"object"==typeof e.gridProps.groupable&&!1!==e.gridProps.groupable.enabled;me.current.reorderable=e.gridProps.reorderable||!1,me.current.groupable=_e,me.current.columns=ue.current,((t,r)=>{var n,l;if(pe.current){if(pe.current.fixedScroll=e.gridProps.fixedScroll||!1,pe.current.PageChange=k,pe.current.realSkip=e.gridProps.skip||0,pe.current.pageSize=null!=(l=null!=(n=e.gridProps.take)?n:e.gridProps.pageSize)?l:0,pe.current.scrollableVirtual="virtual"===e.gridProps.scrollable,pe.current.total=t,pe.current.propsSkip=(e.gridProps.skip||0)+("virtual"===e.gridProps.scrollable?pe.current.topCacheCount+(pe.current.attendedSkip-(e.gridProps.skip||0)):0),void 0!==e.gridProps.rowHeight&&e.gridProps.rowHeight>0&&!r){const r=e.gridProps.rowHeight*t;pe.current.containerHeight=L?Math.min(O,r):r}else pe.current.containerHeight=1533915;if(pe.current.containerRef=Ee,pe.current.tableBodyRef=be,pe.current.table=Ie.current,pe.current instanceof Q){const{rowHeight:r=0,detail:n,expandField:l}=e.gridProps;let{detailRowHeight:o=0}=e.gridProps;o=n&&l?o:r,(()=>{const{data:t,total:r}=e.gridProps;return Array.isArray(t)?t.length===r:!!t&&r===t.total})()?(pe.current.total=e.dataRef.length,pe.current.rowHeightService=new a.RowHeightService(e.dataRef.length,r,o,e.dataRef)):pe.current.rowHeightService=new a.RowHeightService(t,r,o);const i=pe.current.rowHeightService.totalHeight();pe.current.containerHeight=L?Math.min(O,i):i}}})(e.total,_e);const Ue=e.gridProps.columnsState||(()=>{const t=e=>e.map((e=>({id:e.id,field:e.field,title:e.title,hidden:!1,children:e.children?t(e.children):null}))),r=e.columnsRef.current.filter((e=>0===e.depth));return t(r)})();return v.createElement(ae.Provider,{value:{isClient:n,rowReorder:G,activeDragRowDataItemRef:Ke,reorderRowDragTargetRef:Ae,reorderRowDropTargetRef:ze,dir:Be,getCellPositionStyle:e=>void 0!==e.left?"rtl"!==Be?{left:e.left,right:e.right}:{left:e.right,right:e.left}:{},dataItemKey:e.gridProps.dataItemKey,columnsState:Ue,onColumnsStateChange:t=>{if(e.gridProps.onColumnsStateChange){const r={target:de.current,columnsState:t};_(e.gridProps.onColumnsStateChange,r)}},groupChange:T,selectionRelease:t=>{var r;if(e.gridProps.onSelectionChange&&We.enabled){const n=X()[t.startRowIndex],a=X()[t.endRowIndex],o={syntheticEvent:void 0,target:de.current,selectedField:e.gridProps.selectedField||"",componentId:e.id,dataItems:$(),dataItem:null,startDataItem:n,endDataItem:a,...t},i=l.getSelectedState({event:o,selectedState:null!=(r=e.gridProps.select)?r:{},dataItemKey:e.gridProps.dataItemKey});C(o,i)}},pagerPageChange:e=>{k({skip:e.skip,take:e.take},e.syntheticEvent,e.targetEvent)},onContextMenu:(t,r,l)=>{if(e.gridProps.onContextMenu&&n){const n={target:de.current,syntheticEvent:t,nativeEvent:t.nativeEvent,dataItem:r,field:l};_(e.gridProps.onContextMenu,n)}e.gridProps.contextMenu&&(e=>{e.event.preventDefault(),i({...o,show:!0,offset:{left:e.event.pageX,top:e.event.pageY},dataItem:e.dataItem,field:e.field})})({event:t,dataItem:r,field:l})},rowClick:(t,r)=>{e.gridProps.onRowClick&&"TD"===t.target.nodeName&&_(e.gridProps.onRowClick,{dataItem:r,...q(t)})},rowDblClick:(t,r)=>{e.gridProps.onRowDoubleClick&&"TD"===t.target.nodeName&&_(e.gridProps.onRowDoubleClick,{dataItem:r,...q(t)})},cellClick:(t,r,n)=>{if(qe.enabled&&"incell"===qe.mode&&e.gridProps.dataItemKey){const a=l.editReducer(e.gridProps.edit,{type:l.EDIT_ACTION.ENTER_FIELD_EDIT,payload:{id:r[e.gridProps.dataItemKey],field:n}});e.gridProps.onEditChange&&_(e.gridProps.onEditChange,{edit:a,...q(t)})}},headerCellClick:h,itemChange:t=>{var r;if(t.field===e.gridProps.expandField||t._expand||e.gridProps.group&&void 0===t.field){if(e.gridProps.onExpandChange){const n=e.gridProps.dataItemKey?l.detailExpandReducer(null!=(r=e.gridProps.detailExpand)?r:{},{type:l.DETAIL_EXPAND_ACTION.SET,id:t.dataItem[e.gridProps.dataItemKey],payload:t.value}):e.gridProps.detailExpand;_(e.gridProps.onExpandChange,{...q(t.syntheticEvent),expand:n,dataItem:t.dataItem,dataIndex:t.dataIndex,value:t.value})}}else e.gridProps.onItemChange&&_(e.gridProps.onItemChange,{...q(t.syntheticEvent),dataItem:t.dataItem,dataIndex:t.dataIndex,field:t.field,value:t.value})},sortChange:R,filterChange:(t,r)=>{I(e.gridProps.onFilterChange,{filter:t},{filter:t||void 0,skip:0},r)},searchChange:t=>{const r=e.gridProps.searchFields||ue.current.map((e=>e.field))||[],n=t.nativeEvent.target.value,l={logic:"or",filters:r.filter((e=>void 0!==e)).map((e=>{var t;return"string"==typeof e?{field:e,value:n,operator:"contains"}:{value:n,operator:null!=(t=e.operator)?t:"contains",field:e.field,ignoreCase:e.ignoreCase}}))};I(e.gridProps.onSearchChange,{search:l},{},t.syntheticEvent)},onHeaderSelectionChange:t=>{var r;if(e.gridProps.onHeaderSelectionChange&&We.enabled){const n=$();_(e.gridProps.onHeaderSelectionChange,{select:t.syntheticEvent.target.checked?n.reduce(((t,r)=>(e.gridProps.dataItemKey&&void 0!==a.getter(e.gridProps.dataItemKey)(r)&&(t[a.getter(e.gridProps.dataItemKey)(r)]=!0),t)),{}):{},field:t.field,nativeEvent:t.syntheticEvent&&t.syntheticEvent.nativeEvent,syntheticEvent:t.syntheticEvent,target:de.current,dataItems:n,selectedField:null!=(r=e.gridProps.selectedField)?r:""})}},columnGroupChange:(e,t)=>{const r=me.current.getCurrentGroupsLength;K(e,r,t)},onKeyDown:t=>{l.tableKeyboardNavigation.onKeyDown(t,{navigatable:e.gridProps.navigatable||!1,contextStateRef:he,navigationStateRef:fe,onNavigationAction:m,columns:g()}),l.tableKeyboardNavigation.onGetSnapshotBeforeUpdate({document:Y(),contextStateRef:he,navigationStateRef:fe});const r={dataItems:$(),mode:We.mode,cell:We.cell,componentId:e.id,selectedField:e.gridProps.selectedField,...q(t)};e.gridProps.onKeyDown&&n&&_(e.gridProps.onKeyDown,r)},onFocus:t=>{l.tableKeyboardNavigation.onFocus(t,{navigatable:!!e.gridProps.navigatable,contextStateRef:he})},scrollHandler:t=>{if(t.target!==t.currentTarget)return;clearTimeout(Le.current),pe.current&&(pe.current.table=Ie.current);const r=t.currentTarget.scrollLeft,l=t.currentTarget.scrollTop,a="virtual"===e.gridProps.scrollable;e.gridProps.columnVirtualization&&(!a||l===Ge.current)&&(Le.current=window.setTimeout((()=>{ce()}),0)),e.gridProps.scrollLeftRef&&(e.gridProps.scrollLeftRef.current=r),we.current&&we.current.setScrollLeft(r),ke.current&&ke.current.setScrollLeft(r),pe.current&&l!==Ge.current&&pe.current.scrollHandler(t),e.gridProps.onScroll&&n&&_(e.gridProps.onScroll,{...q(t)}),Ge.current=l},selectionChange:t=>{var r;if(e.gridProps.onSelectionChange&&We.enabled){const{event:n,dataItem:a,dataIndex:o,columnIndex:i}=t,s={...q(n.syntheticEvent),dataItem:a,startColIndex:i,endColIndex:i,startRowIndex:o,endRowIndex:o,dataItems:$(),altKey:!1,ctrlKey:!1,shiftKey:!1,metaKey:!1,mode:We.mode,cell:We.cell,isDrag:!1,componentId:e.id,selectedField:e.gridProps.selectedField||""};_(e.gridProps.onSelectionChange,{...s,select:e.gridProps.dataItemKey?l.getSelectedState({event:s,selectedState:null!=(r=e.gridProps.select)?r:{},dataItemKey:e.gridProps.dataItemKey}):{}})}},dispatchDetailExpand:(t,r)=>{var n;if(l.getDetailExpandableOptions(e.detailExpandable).enabled){const a=l.detailExpandReducer(null!=(n=e.gridProps.detailExpand)?n:{},t);e.gridProps.onDetailExpandChange&&_(e.gridProps.onDetailExpandChange,{...q(r),detailExpand:a})}},dispatchGroupExpand:(t,r)=>{var n;const a=l.getGroupExpandableOptions("object"==typeof e.gridProps.groupable?!1!==e.gridProps.groupable.expandable:e.gridProps.groupable);if(a.enabled){const o=l.groupExpandReducer(null!=(n=e.gridProps.groupExpand)?n:[],t,a);e.gridProps.onGroupExpandChange&&_(e.gridProps.onGroupExpandChange,{...q(r),groupExpand:o})}},columnResizeRef:ge,dragLogicRef:me,navigationStateRef:fe,tableElementRef:Ie,tableBodyElementRef:be,headerElementRef:xe,containerElementRef:Ee,headTableElementRef:ye,elementRef:Se,footerRef:ke,headerRef:we,vsRef:pe}},v.createElement(l.TableKeyboardNavigationContext.Provider,{value:he.current},e.children),v.createElement(te,{show:o.show,dataItem:o.dataItem,field:o.field,items:p,offset:o.offset,onClose:s,onSelect:t=>{var r,n,a,o,i,d,u,p,g;const m=t.event.item,f={target:de.current,syntheticEvent:t.event.syntheticEvent,nativeEvent:t.event.nativeEvent,menuItem:m,...t};e.gridProps.onContextMenuItemClick&&_(e.gridProps.onContextMenuItemClick,f);const C=X(),v={selectedField:e.gridProps.selectedField||"",componentId:e.id,dataItems:C,dataItem:t.dataItem,startRowIndex:-1,endRowIndex:-1,startColIndex:-1,endColIndex:-1,ctrlKey:!1,altKey:!1,metaKey:!1,shiftKey:!1,isDrag:!1,...l.getSelectionOptions(e.gridProps.selectable),...f},I=C.findIndex((e=>e===t.dataItem));switch(null==(r=m.data)?void 0:r.action){case"SortCommand":if(c){const e=null==(n=m.name)?void 0:n.toLowerCase().includes("asc"),r=(null==(a=m.name)?void 0:a.toLowerCase().includes("desc"))?"desc":void 0,l=e?"asc":r,o=m.name?l:void 0;h(t.event.syntheticEvent,c,o)}break;case"SelectRowCommand":x(v);break;case"SelectAllRowsCommand":b(v);break;case"ClearSelectionCommand":E(v);break;case"ReorderRowCommand":Ke.current=t.dataItem,null!=(o=m.name)&&o.toLowerCase().includes("rowup")&&I>0&&G(t.event.syntheticEvent,I-1,"before"),null!=(i=m.name)&&i.toLowerCase().includes("rowdown")&&I<C.length-1&&G(t.event.syntheticEvent,I+1,"after"),null!=(d=m.name)&&d.toLowerCase().includes("rowtop")&&G(t.event.syntheticEvent,0,"before"),null!=(u=m.name)&&u.toLowerCase().includes("rowbottom")&&G(t.event.syntheticEvent,C.length-1,"after");break;case"CopySelectionCommand":z(l.ClipboardActionType.copy,t.event.nativeEvent,{copyHeaders:!(null!=(p=m.name)&&p.toLowerCase().includes("noheaders"))},t.dataItem,t.field);break;case"PasteCommand":z(l.ClipboardActionType.paste,t.event.nativeEvent,{copyHeaders:!(null!=(g=m.name)&&g.toLowerCase().includes("noheaders"))},t.dataItem,t.field)}s()}}))},ie="grid.noRecords",se="grid.pagerInfo",ce="grid.pagerFirstPage",de="grid.pagerPreviousPage",ue="grid.pagerNextPage",pe="grid.pagerLastPage",ge="grid.pagerItemsPerPage",me="grid.groupPanelEmpty",he="grid.groupColumn",fe="grid.ungroupColumn",Ce="grid.columnMenu",ve="grid.filterApplyButton",be="grid.filterClearButton",xe="grid.filterResetButton",Ee="grid.filterSubmitButton",Ie="grid.filterTitle",ye="grid.sortAscending",Se="grid.sortDescending",ke="grid.searchPlaceholder",we="grid.searchboxPlaceholder",Pe="grid.filterCheckAll",Re="grid.filterChooseOperator",Ne="grid.filterSelectAll",Te="grid.filterSelectedItems",De="grid.sortAriaLabel",Me="grid.filterAriaLabel",Ge="grid.groupPanelAriaLabel",Le="grid.groupExpand",Oe="grid.groupCollapse",Fe="grid.detailExpand",He="grid.detailCollapse",Ke="grid.selectRow",Ae="grid.gridAriaLabel",ze="grid.gridRowReorderAriaLabel",Be={[Fe]:"Expand detail row",[He]:"Collapse detail row",[Le]:"Expand group",[Oe]:"Collapse Group",[ie]:"No records available",[me]:"Drag a column header and drop it here to group by that column",[ve]:"Apply",[be]:"Clear",[xe]:"Reset",[Ee]:"Filter",[Ie]:"Filter",[ye]:"Sort Ascending",[Se]:"Sort Descending",[De]:"Sortable",[he]:"Group Column",[fe]:"Ungroup Column",[Ce]:"Column menu",[ge]:"items per page",[se]:"{0} - {1} of {2} items",[ce]:"Go to the first page",[de]:"Go to the previous page",[ue]:"Go to the next page",[pe]:"Go to the last page","grid.pagerPage":"Page","grid.pagerPageSizeAriaLabel":"Page size","grid.pagerOf":"of","grid.pagerTotalPages":"{0}",[ke]:"Search",[we]:"Search...",[Pe]:"Check All",[Re]:"Choose Operator",[Te]:"selected items",[Ne]:"Select All",[Me]:"Filter",[Ge]:"Group panel",[Ae]:"Table",[ze]:"Drag row",[Ke]:"Select Row","grid.filterEqOperator":"Is equal to","grid.filterNotEqOperator":"Is not equal to","grid.filterIsNullOperator":"Is null","grid.filterIsNotNullOperator":"Is not null","grid.filterIsEmptyOperator":"Is empty","grid.filterIsNotEmptyOperator":"Is not empty","grid.filterStartsWithOperator":"Starts with","grid.filterContainsOperator":"Contains","grid.filterNotContainsOperator":"Does not contain","grid.filterEndsWithOperator":"Ends with","grid.filterGteOperator":"Is greater than or equal to","grid.filterGtOperator":"Is greater than","grid.filterLteOperator":"Is less than or equal to","grid.filterLtOperator":"Is less than","grid.filterIsTrue":"Is true","grid.filterIsFalse":"Is false","grid.filterBooleanAll":"(All)","grid.filterAfterOrEqualOperator":"Is after or equal to","grid.filterAfterOperator":"Is after","grid.filterBeforeOperator":"Is before","grid.filterBeforeOrEqualOperator":"Is before or equal to","grid.filterAndLogic":"And","grid.filterOrLogic":"Or"},Ve=e=>{var t;const r=v.useContext(ae),n=a.useId(),l=o.useLocalization(),i=null!=(t=e.isSelected)?t:a.getNestedValue(e.field,e.dataItem),s="boolean"==typeof i&&i,c=v.useCallback((t=>{null==r||r.selectionChange({event:t,dataItem:e.dataItem,dataIndex:e.rowDataIndex,columnIndex:e.columnIndex})}),[r,e.columnIndex,e.rowDataIndex,e.dataItem]);return v.createElement("span",{className:"k-checkbox-wrap"},v.createElement("input",{id:n,tabIndex:-1,type:"checkbox",className:"k-checkbox k-checkbox-md k-rounded-md","aria-label":l.toLanguageString(Ke,Be[Ke]),"aria-checked":s,checked:s,onChange:c}))},We=e=>{var t;const{cellProps:r}=e,n=v.useContext(ae),a=l.useTableKeyboardNavigation(r.id),o={onContextMenu:v.useCallback((e=>{null!=n&&n.onContextMenu&&n.onContextMenu.call(void 0,e,r.dataItem,r.field)}),[n,r.dataItem,r.field])},i=n.getCellPositionStyle(r.columnPosition),s={...a,...o,...{style:{...null==(t=e.tdProps)?void 0:t.style,...i}}},c={onContextMenu:n.onContextMenu,onChange:n.itemChange,selectionChange:e=>{n.selectionChange({event:e,dataItem:r.dataItem,dataIndex:r.rowDataIndex,columnIndex:r.columnIndex})}};if(e.isCustom)return n.isClient||e.isClient?B(e.children,{tdProps:{...e.tdProps,...s},...c}):B(e.children,{...s});if(r.render){const t="groupHeader"!==r.rowType?v.createElement("td",{...e.tdProps,...s},e.content):null;return r.render.call(void 0,t,{...r,...c})}return e.children&&B(e.children,{...s})},qe=e=>{const{className:t,colSpan:r,style:n,ariaColumnIndex:l,rowType:o,cells:i}=e,s={colSpan:r,style:n,className:a.classNames("k-table-td",t),"aria-colindex":l,role:"gridcell"},c=v.createElement(Ve,{key:1,...e}),d=A(e),u=o||"data",p=i;if(p&&p.select&&p.select[u]){const e=p.select[u],t=K(e);return v.createElement(We,{cellProps:d,tdProps:s,isCustom:!0,isClient:t},v.createElement(e,{...d,tdProps:s},c))}const g="groupHeader"!==o?v.createElement("td",{...s},c):null;return v.createElement(We,{cellProps:d,content:c,tdProps:s},g)},_e=e=>{const{cellProps:t}=e,r=v.useContext(ae),n=l.useTableKeyboardNavigation(t.id),o=e.expanded,i=v.useCallback((e=>{e.isDefaultPrevented()||e.keyCode===a.Keys.enter&&null!=r&&r.itemChange&&(e.preventDefault(),r.itemChange({dataItem:t.dataItem,dataIndex:t.dataIndex,syntheticEvent:e,field:t.field,value:!o}))}),[t.dataItem,t.dataIndex,t.field,r,o]),s={...n,..."groupHeader"!==t.rowType&&"groupFooter"!==t.rowType?{onKeyDown:i}:{}},c={onContextMenu:r.onContextMenu,onChange:r.itemChange,selectionChange:e=>{r.selectionChange({event:e,dataItem:t.dataItem,dataIndex:t.rowDataIndex,columnIndex:t.columnIndex})}};if(e.isCustom)return r.isClient||e.isClient?B(e.children,{tdProps:{...e.tdProps,...s},...c}):B(e.children,{...s});if(t.render){const r="groupHeader"!==t.rowType?v.createElement("td",{...e.tdProps,...s},e.content):null;return t.render.call(void 0,r,{...t,...c})}return e.children&&B(e.children,{...s})},Ue=e=>{const t=v.useContext(ae),r=o.useLocalization(),n=e.expanded,s=n?He:Fe,c=r.toLanguageString(s,Be[s]);return v.createElement("a",{onClick:r=>{r.preventDefault(),null!=t&&t.itemChange&&t.itemChange({dataItem:e.dataItem,dataIndex:e.dataIndex,syntheticEvent:r,field:e.field,value:!n,_expand:!0}),void 0!==e.dataItem[t.dataItemKey]&&(null==t||t.dispatchDetailExpand({type:l.DETAIL_EXPAND_ACTION.TOGGLE,id:e.dataItem[t.dataItemKey]}))},"aria-label":c,href:"#",tabIndex:-1},v.createElement(a.IconWrap,{name:n?"minus":"plus",icon:n?i.minusIcon:i.plusIcon}))},je=e=>{let t=null,r=null,n=null;const l=A(e),a=e.expanded;"groupFooter"===e.rowType?r={className:"k-table-td k-hierarchy-cell",role:"gridcell"}:"groupHeader"!==e.rowType&&(r={className:"k-table-td k-hierarchy-cell",role:"gridcell","aria-expanded":!!a,"aria-colindex":e.ariaColumnIndex},n=v.createElement(Ue,{...l}));const o=e.rowType||"data",i=e.cells;if(i&&i.hierarchy&&i.hierarchy[o]){const e=i.hierarchy[o],t=K(e);return v.createElement(_e,{cellProps:l,tdProps:r,isCustom:!0,isClient:t},v.createElement(e,{...l,tdProps:r},n))}return"groupHeader"!==e.rowType&&(t=v.createElement("td",{...r},n)),v.createElement(_e,{cellProps:l,content:n,tdProps:r},t)},$e=e=>{const{cellProps:t}=e,r=v.useContext(ae),n=a.useId(),o=a.getNestedValue(t.field,t.dataItem);let i=null;const s=v.useCallback((e=>{null!=r&&r.itemChange&&r.itemChange({dataItem:t.dataItem,dataIndex:t.dataIndex,field:t.field,syntheticEvent:e.syntheticEvent,value:e.value})}),[r,t.dataItem,t.dataIndex,t.field]);switch(t.editor){case"numeric":i=v.createElement(c.NumericTextBox,{className:e.className,value:void 0===o?null:o,onChange:s,[l.TABLE_PREVENT_SELECTION_ELEMENT]:!0});break;case"date":i=v.createElement(d.DatePicker,{className:e.className,value:o,onChange:s,[l.TABLE_PREVENT_SELECTION_ELEMENT]:!0});break;case"boolean":i=v.createElement(c.Checkbox,{className:e.className,checked:o||!1,id:n,onChange:s,[l.TABLE_PREVENT_SELECTION_ELEMENT]:!0});break;default:i=v.createElement(c.TextBox,{className:e.className,value:o||"",onChange:s,[l.TABLE_PREVENT_SELECTION_ELEMENT]:!0})}return i},Xe=e=>{var t;const{cellProps:r}=e,n=v.useContext(ae),a=l.useTableKeyboardNavigation(r.id),o={onContextMenu:v.useCallback((e=>{null!=n&&n.onContextMenu&&n.onContextMenu.call(void 0,e,r.dataItem,r.field)}),[n,r.dataItem,r.field])},i=n.getCellPositionStyle(r.columnPosition),s={...a,...o,...{style:{...null==(t=e.tdProps)?void 0:t.style,...i}}},c={onContextMenu:n.onContextMenu,onChange:n.itemChange,selectionChange:e=>{n.selectionChange({event:e,dataItem:r.dataItem,dataIndex:r.rowDataIndex,columnIndex:r.columnIndex})}};if(e.isCustom)return n.isClient||e.isClient?B(e.children,{tdProps:{...e.tdProps,...s},...c}):B(e.children,{...s});if(r.render){const t=v.createElement("td",{...e.tdProps,...s},e.content);return r.render.call(void 0,t,{...r,...c})}return e.children&&B(e.children,{...s})},Ye=e=>{const t=e.unstyled,r=t&&t.uGrid?t.uGrid:a.uGrid,n=a.classNames(r.editTd({selected:e.isSelected}),e.className),l={colSpan:e.colSpan,style:e.style,className:n,"aria-colindex":e.ariaColumnIndex,"aria-selected":e.isSelected,[X]:e.columnIndex,role:"gridcell"},o=A(e),i=v.createElement($e,{cellProps:o}),s=e.editor||"text",c=e.cells;if(c){let e;if(c.edit&&c.edit[s]?e=c.edit[s]:c.data&&(e=c.data),e){const t=K(e);return v.createElement(Xe,{cellProps:o,tdProps:l,isCustom:!0,isClient:t},v.createElement(e,{...o,tdProps:l},i))}}return v.createElement(Xe,{cellProps:o,content:i,tdProps:l},v.createElement("td",{...l},i))},Je=e=>{const t=v.useRef(null),r=v.useRef(null),n=v.useRef(!1),o=v.useContext(ae),i=a.useRtl(o.headerElementRef);o.columnResizeRef.current&&o.columnResizeRef.current.setIsRtl("rtl"===i),v.useImperativeHandle(o.headerRef,(()=>({setScrollLeft:e=>{t.current&&t.current.scrollLeft!==e&&(n.current=!0,t.current.scrollLeft=e)},setWidth:e=>{r.current&&(r.current.style.width=e+"px")},table:()=>r.current})));const s=a.useUnstyled(),c=s&&s.uGrid?s.uGrid:a.uGrid,{size:d="md"}=e;return e.staticHeaders?v.createElement("div",{ref:o.headerElementRef,className:a.classNames(c.header({draggable:e.draggable}),e.className),role:"presentation"},v.createElement("div",{ref:t,className:a.classNames(c.headerWrap({})),onScroll:e=>{var r;if(n.current)return void(n.current=!1);if(!t.current)return;const l=t.current.scrollLeft,a=(null==(r=o.vsRef.current)?void 0:r.container)||null;a&&a.scrollLeft!==l&&(a.scrollLeft=l)},role:"presentation"},v.createElement("table",{ref:r,className:a.classNames(c.headerTable({size:d}),e.className),role:"presentation"},v.createElement("colgroup",{ref:e=>{o.columnResizeRef.current&&(o.columnResizeRef.current.colGroupHeader=e)}},e.cols),v.createElement("thead",{className:a.classNames(c.tableThead({})),role:"rowgroup",...l.tableKeyboardNavigationHeaderAttributes},e.headerRow,e.filterRow)))):v.createElement("thead",{role:"presentation",className:a.classNames(c.thead({draggable:e.draggable}),e.className),...l.tableKeyboardNavigationHeaderAttributes},e.headerRow,e.filterRow)};Je.displayName="KendoReactHeader";const Qe=[".k-columnmenu-item-content",".k-filter-menu-container"].map((e=>a.TABBABLE_ELEMENTS.map((t=>`${e} ${t}`)))),Ze=[[".k-tabstrip-items"],[".k-columnmenu-item"],...Qe],et=e=>{const[t,r]=v.useState(!1),n=v.useRef(null),l=v.useRef(null),s=v.useRef(null),c=v.useRef(0),{columnMenu:d,...p}=e,{column:g,columnMenuIcon:m,navigatable:h}=e,f=o.useLocalization(),C=g.title||g.field,b=C?`${C} `:"",x=()=>{e.onCloseMenu&&e.onCloseMenu(),r(!1),!e.navigatable&&n.current&&n.current.focus()},E=v.useMemo((()=>void 0!==e.show?e.show:t),[e.show,t]),I=(e,t,r)=>{r.preventDefault(),r.shiftKey?t.focusPrevious(e):t.focusNext(e)},y=(e,t,r)=>{e&&e.click()},S=(e,t,r)=>{r.preventDefault(),x()},k=(e,t,r)=>{r.preventDefault(),t.focusElement(e)};return v.useEffect((()=>(E&&l.current&&(s.current=new a.Navigation({tabIndex:0,root:l,selectors:Ze,keyboardEvents:{keydown:{Tab:I,Enter:y,Escape:S}},mouseEvents:{mousedown:k}}),s.current.focusElement(s.current.first,null)),()=>{s.current&&(s.current=null)})),[E]),v.createElement(v.Fragment,null,v.createElement("a",{className:"k-grid-header-menu k-grid-column-menu",ref:n,onClick:n=>{n.preventDefault(),t&&e.onCloseMenu&&e.onCloseMenu(),r(!t)},onKeyDown:e=>{var t;if(e.keyCode===a.Keys.tab){const r=e.target,n=r&&(null==(t=r.closest(".k-grid"))?void 0:t.getElementsByClassName("k-grid-content")[0]);n&&n.scrollWidth>n.clientWidth&&r.scrollIntoView({inline:"center"})}},href:"#",tabIndex:h?-1:void 0,"aria-label":`${h?"":b}${f.toLanguageString(Ce,Be[Ce])}`},m?v.createElement(a.IconWrap,{name:m.name,icon:m}):v.createElement(a.IconWrap,{name:"more-vertical",icon:i.moreVerticalIcon})),v.createElement(u.Popup,{anchor:n.current,show:E,popupClass:"k-column-menu k-column-menu-popup k-grid-columnmenu-popup",onMouseDownOutside:e=>{!e.isAnchorClicked&&r(!1)}},v.createElement("div",{ref:l,onBlur:e=>{const t=a.getActiveElement(document);clearTimeout(c.current),c.current=window.setTimeout((()=>{t&&e.relatedTarget!==n.current&&l.current&&!l.current.contains(t)&&x()}))},onFocus:()=>{clearTimeout(c.current)},onMouseDown:e=>{var t;null==(t=s.current)||t.triggerMouseEvent(e)},onKeyDown:e=>{var t;null==(t=s.current)||t.triggerKeyboardEvent(e)},style:{outline:"none"}},d&&v.createElement(d,{...p,onCloseMenu:x}))))},tt=e=>{const t=a.useUnstyled(),r=t&&t.uGrid?t.uGrid:a.uGrid,n=e.onClick?{onClick:e.onClick}:{},l=v.createElement("span",{className:a.classNames(r.headerCellInner({}))},v.createElement("span",{className:a.classNames(r.headerCellLink({sortable:e.columnMenuWrapperProps.sortable})),...n},v.createElement("span",{className:a.classNames(r.columnTitle({}))},e.title||e.field||" "),e.children),e.columnMenuWrapperProps.columnMenu&&v.createElement(et,{...e.columnMenuWrapperProps}));return e.render?e.render.call(void 0,l,e):l},rt=v.createContext(void 0),nt=e=>{const t=v.useContext(ae),r=v.useRef(null),[n,l]=v.useState(),o=(r,n)=>{e.sortable&&n.sortable&&(r.preventDefault(),t.sortChange&&t.headerCellClick(r,n))};return v.createElement(rt.Provider,{value:{cellClick:o,cellKeyDown:(n,i)=>{if(n.isDefaultPrevented())return;const{keyCode:s,metaKey:c,ctrlKey:d,altKey:u}=n,p=e.sortable&&i.sortable,g=n.target;if(p&&n.keyCode===a.Keys.enter&&-1!==g.className.indexOf("k-table-th")&&o(n,i),e.navigatable){if(e.groupable&&(c&&s===a.Keys.enter||d&&s===a.Keys.space)){n.preventDefault();const r=e.columns.findIndex((e=>e.field===i.field));t.columnGroupChange&&t.columnGroupChange(r,n)}u&&s===a.Keys.down&&(n.preventDefault(),l(i.field),r.current=g)}},handleCloseMenu:()=>{l(void 0),r.current&&"-1"!==r.current.getAttribute("tabindex")&&r.current.focus()},showColumnMenuField:n}},e.children)},lt=e=>{const t=v.useContext(ae),r=v.useContext(rt),n=t.isClient||e.isClient,l={style:{...t.getCellPositionStyle(e.column)}},a={onKeyDown:t=>{r.cellKeyDown(t,e.column)}};let o={onClick:t=>{r.cellClick(t,e.column)}};return n&&(o={...o,render:e.render,selectionChange:t.onHeaderSelectionChange,columnMenuWrapperProps:{...e.columnMenuWrapperProps,onSortChange:t.sortChange,onFilterChange:t.filterChange,onGroupChange:t.groupChange,onColumnsStateChange:t.onColumnsStateChange,show:r.showColumnMenuField===e.column.field||void 0,onCloseMenu:r.handleCloseMenu,columnsState:t.columnsState}}),e.isCustom&&(o=n?{...o,thProps:{...e.thProps,...a,...l}}:{...o,...a,...l}),B(e.children,{...o})},at=e=>{const t=v.useRef(null),r=a.useUnstyled(),n=r&&r.uGrid?r.uGrid:a.uGrid;return v.createElement(a.Draggable,{onPress:r=>{const n=t.current&&t.current.element;n&&e.pressHandler&&e.pressHandler(r.event,n)},onDrag:r=>{const n=t.current&&t.current.element;n&&e.dragHandler&&e.dragHandler(r.event,n)},onRelease:r=>{t.current&&t.current.element&&e.releaseHandler&&e.releaseHandler(r.event)},hint:e.dragClue,autoScroll:{boundaryElementRef:e.headerRef,direction:{horizontal:!0,vertical:!1}},scrollContainer:e.containerRef||void 0,ref:t},v.createElement("tr",{className:a.classNames(n.simpleTr({})),style:{touchAction:"none"},role:"row","aria-rowindex":e.ariaRowIndex},e.children))},ot=e=>{const t=v.useContext(ae);return t.dragLogicRef.current.pressHandler&&v.createElement(at,{ariaRowIndex:e.ariaRowIndex,pressHandler:t.dragLogicRef.current.pressHandler,dragHandler:t.dragLogicRef.current.dragHandler,releaseHandler:t.dragLogicRef.current.releaseHandler,dragClue:t.dragLogicRef.current.dragClue,headerRef:t.headerElementRef,containerRef:t.containerElementRef},e.children)||v.createElement("tr",{className:e.className,role:"row","aria-rowindex":e.ariaRowIndex},e.children)},it=e=>{const t=v.useContext(ae),r=v.useContext(rt),n={style:{...t.getCellPositionStyle(e.column)}};return B(e.children,{onKeyDown:t=>{r.cellKeyDown(t,e.column)},onContextMenu:r=>{t.onContextMenu(r,void 0,e.column.field)},...n})},st=e=>{const{column:t}=e,r=v.useContext(ae);return r.columnResizeRef.current&&r.columnResizeRef.current.resizable&&t.resizable&&v.createElement(l.ColumnResizer,{key:2,resize:(e,n,l)=>r.columnResizeRef.current&&r.columnResizeRef.current.dragHandler(e,t,n,l),autofit:e=>r.columnResizeRef.current&&r.columnResizeRef.current.dblClickHandler(e,[t.id])})||v.createElement(v.Fragment,null)},ct={none:"none",asc:"ascending",desc:"descending"},dt=e=>{const t=e.unstyled,r=t&&t.uGrid?t.uGrid:a.uGrid;let n=0,o=-1;const s=t=>{if(!e.sort)return null;const n=a.classNames(r.sortIcon({}));return t>=0&&[v.createElement("span",{key:1,className:n},v.createElement(a.IconWrap,{name:"sort-"+e.sort[t].dir+"-small",icon:"asc"===e.sort[t].dir?i.sortAscSmallIcon:i.sortDescSmallIcon})),e.sort.length>1&&v.createElement("span",{key:2,className:n},v.createElement("span",{className:a.classNames(r.sortOrder({}))},t+1))]},c=e.columns.map(G);return v.createElement(nt,{sortable:e.sortable,sort:e.sort,navigatable:e.navigatable,groupable:e.groupable,columns:c},e.columnsMap.map(((t,i)=>v.createElement(ot,{key:i,className:a.classNames(r.simpleTr({})),ariaRowIndex:i+1},(t=>t.map((t=>{var i;const c=e.columns[t],d=e.sortable&&c.sortable,u=e.sort?e.sort.findIndex((e=>e.field===c.field)):-1,p=u>=0&&e.sort[u].dir||"none",g=null===c.columnMenu?null:c.columnMenu||e.columnMenu,m=c.menuIcon||e.columnMenuIcon,h=a.classNames(a.classNames(r.headerTh({first:c.kFirst,filterable:!!g,locked:c.locked,sorted:e.sort&&e.sort.some((e=>e.field===c.field))})),c.headerClassName);!1===c.locked&&(c.left=0);const f=e.localization.toLanguageString(De,Be[De]),C=c.isAccessible?{ariaSort:ct[p],role:"columnheader",ariaColumnIndex:c.ariaColumnIndex,ariaSelected:!1,ariaDescription:d?f:""}:{role:"presentation"},b=c.declarationIndex>=0?++o:--n,x={field:c.field,title:c.title,selectionValue:null!=(i=c.headerSelectionValue)?i:e.headerSelectionValue,children:s(u),selectionChange:null,columnMenuWrapperProps:{column:{field:c.field,title:c.title,locked:c.locked,filter:c.filter,id:c.id},sortable:d&&e.sortable,sort:e.sort,filter:e.filter,filterable:e.filterable&&c.filterable,filterOperators:e.filterOperators,navigatable:e.navigatable,group:e.group,groupable:e.groupable,columnMenu:g,columnMenuIcon:m}},E={...C,colSpan:c.headerColSpan,rowSpan:c.rowSpan,className:h,columnId:c.id,navigatable:c.navigatable,role:"columnheader"},I=G(c),y={column:I,render:e.cellRender,sortable:e.sortable,sort:e.sort,columnMenuWrapperProps:x.columnMenuWrapperProps},S=c.headerCell?c.headerCell:tt,k=[v.createElement(lt,{key:1,...y,isClient:K(S)},v.createElement(S,{...x})),v.createElement(st,{key:2,column:I})],w=F(e.cells,c.cells);if(w&&w.headerCell){const e=w.headerCell,r=K(e);return v.createElement(lt,{key:b,...y,thProps:E,isCustom:!0,isClient:r},v.createElement(e,{...x,thProps:E,index:t},k))}return v.createElement(it,{key:b,column:I},v.createElement(l.HeaderThElement,{...E},k))})))(t)))))},ut=[{text:"grid.filterAndLogic",operator:"and"},{text:"grid.filterOrLogic",operator:"or"}],pt={text:[{text:"grid.filterContainsOperator",operator:"contains"},{text:"grid.filterNotContainsOperator",operator:"doesnotcontain"},{text:"grid.filterEqOperator",operator:"eq"},{text:"grid.filterNotEqOperator",operator:"neq"},{text:"grid.filterStartsWithOperator",operator:"startswith"},{text:"grid.filterEndsWithOperator",operator:"endswith"},{text:"grid.filterIsNullOperator",operator:"isnull"},{text:"grid.filterIsNotNullOperator",operator:"isnotnull"},{text:"grid.filterIsEmptyOperator",operator:"isempty"},{text:"grid.filterIsNotEmptyOperator",operator:"isnotempty"}],numeric:[{text:"grid.filterEqOperator",operator:"eq"},{text:"grid.filterNotEqOperator",operator:"neq"},{text:"grid.filterGteOperator",operator:"gte"},{text:"grid.filterGtOperator",operator:"gt"},{text:"grid.filterLteOperator",operator:"lte"},{text:"grid.filterLtOperator",operator:"lt"},{text:"grid.filterIsNullOperator",operator:"isnull"},{text:"grid.filterIsNotNullOperator",operator:"isnotnull"}],date:[{text:"grid.filterEqOperator",operator:"eq"},{text:"grid.filterNotEqOperator",operator:"neq"},{text:"grid.filterAfterOrEqualOperator",operator:"gte"},{text:"grid.filterAfterOperator",operator:"gt"},{text:"grid.filterBeforeOperator",operator:"lt"},{text:"grid.filterBeforeOrEqualOperator",operator:"lte"},{text:"grid.filterIsNullOperator",operator:"isnull"},{text:"grid.filterIsNotNullOperator",operator:"isnotnull"}],boolean:[{text:"grid.filterEqOperator",operator:"eq"}]},gt=e=>"isnull"===e||"isnotnull"===e||"isempty"===e||"isnotempty"===e,mt=(e,t)=>e.map((e=>({text:t.toLanguageString(e.text,Be[e.text]),operator:e.operator}))),ht=[{text:"grid.filterBooleanAll",operator:""},{text:"grid.filterIsTrue",operator:!0},{text:"grid.filterIsFalse",operator:!1}],ft={text:!1,numeric:!1,date:!1,boolean:!0},Ct=(e,t,r)=>{const n=vt(r.operators);let l=r.operator;switch(r.filterType){case"numeric":case"date":(!l||gt(l))&&(l=n),null===e&&l===n&&(l="");break;case"text":(!l||gt(l))&&(l=n),!e&&l===n&&(l="");break;default:return}r.onChange({value:e,operator:l,syntheticEvent:t})},vt=(e,t)=>t?e[t][0].operator:e[0].operator,bt=e=>e||"text",xt=(e,t)=>{const r=e.target.value;t({value:r.operator,operator:""===r.operator?"":"eq",syntheticEvent:e.syntheticEvent})},Et=(e,t,r)=>{let n=t;const l=e.target.value;e.target.state.opened&&(gt(l.operator)&&(n=null),null===t&&!gt(l.operator)&&(n=void 0),r({value:n,operator:l.operator,syntheticEvent:e.syntheticEvent}))},It=e=>{const t=v.useRef(),r=o.useLocalization(),n=(t,r)=>{Ct(t,r,e)},l=t=>{Et(t,e.value,e.onChange)},s=t=>{xt(t,e.onChange)},u=v.createElement("div",{className:"k-filtercell"},v.createElement("div",{className:"k-filtercell-wrapper"},((r,l,a)=>{switch(r){case"numeric":return v.createElement(c.NumericTextBox,{ref:t,size:e.size,value:l,onChange:e=>{n(e.value,e.syntheticEvent)},title:e.title,ariaLabel:e.ariaLabel});case"date":return v.createElement(d.DatePicker,{ref:t,size:e.size,value:l,onChange:e=>{n(e.value,e.syntheticEvent)},title:e.title,ariaLabel:e.ariaLabel,popupSettings:{onMouseDownOutside:e=>{!e.isAnchorClicked&&e.state&&e.state.props.show&&t&&t.current.togglePopup()}}});case"boolean":{const r=e=>null==e;return v.createElement(g.DropDownList,{ref:t,size:e.size,onChange:s,value:a.find((e=>e.operator===(r(l)?"":l))),data:a,textField:"text",title:e.title,ariaLabel:e.ariaLabel,popupSettings:{onMouseDownOutside:e=>{!e.isAnchorClicked&&e.state&&e.state.props.show&&t&&t.current.togglePopup()}}})}default:return v.createElement(c.TextBox,{ref:t,size:e.size,value:l||"",onChange:e=>{n(e.target.value,e.syntheticEvent)},title:e.title,"aria-label":e.ariaLabel})}})(e.filterType,e.value,e.booleanValues),v.createElement("div",{className:"k-filtercell-operator"},(()=>{if("boolean"===e.filterType)return;let t;const n=e.operators.find((t=>t.operator===e.operator))||null;return v.createElement(g.DropDownList,{ref:e=>t=e,size:e.size,value:n,onChange:l,className:"k-dropdown-operator",iconClassName:"k-i-filter k-icon",svgIcon:i.filterIcon,data:e.operators,textField:"text",title:r.toLanguageString(Re,Be[Re]),popupSettings:{width:"",onMouseDownOutside:function(e){!e.isAnchorClicked&&e.state&&e.state.props.show&&t&&t.togglePopup()}}})})()," ",v.createElement(p.Button,{size:e.size,icon:"filter-clear",svgIcon:i.filterClearIcon,className:a.classNames({"k-clear-button-visible":!!(null!==e.value&&""!==e.value||e.operator)}),title:r.toLanguageString(be,Be[be]),type:"button",onClick:r=>{r.preventDefault(),e.onChange({value:"",operator:"",syntheticEvent:r}),t.current&&(t.current.element.value="",setTimeout((()=>{t.current.element.focus()}),0))},disabled:!(null!==e.value&&""!==e.value||e.operator)}))));return e.render?e.render.call(void 0,u,e):u},yt=e=>{const t=v.useContext(ae),r=t.getCellPositionStyle(e.column),n=e.isCustom?{style:{...r}}:{};return t.isClient||e.isClient?B(e.children,{render:e.render,onChange:r=>{((r,n,l,a)=>{if(!t.filterChange)return;const o=[];(""!==r&&null!==r||""!==n)&&o.push({field:l,operator:n,value:r}),e.filter&&e.filter.filters&&(e.filter.filters||[]).forEach((e=>{e&&e.field!==l&&o.push(e)}));const i=e.filter&&e.filter.logic?e.filter.logic:"and";t.filterChange(o.length>0?{logic:i,filters:o}:null,a)})(r.value,r.operator,e.field,r.syntheticEvent)},tdProps:{...e.tdProps,...n}}):B(e.children,{})},St=e=>{const t={style:{...v.useContext(ae).getCellPositionStyle(e.column)}};return B(e.children,{...t})},kt=e=>{const t=(t,r)=>{let n=""+(r?"k-grid-header-sticky":"");return e.sort&&e.sort.filter((e=>e.field===t)).length>0&&(n+=" k-sorted"),n},r=e.filter&&e.filter.filters||[];let n=0,o=-1;const i=e.columns.filter((e=>0===e.children.length)).map((i=>{const s=bt(i.filter),c=(e=>{if(void 0===e)return;const t=r.filter((t=>t.field===e));return t.length?t[0]:void 0})(i.field),d=`${i.field} ${e.localization.toLanguageString(Me,Be[Me])}`;let u=c&&c.value;void 0===u&&(u="text"===s?"":null);const p=i.filterable&&{field:i.field,title:i.filterTitle,value:u,operator:c&&c.operator,operators:mt(e.filterOperators[s]||[],e.localization),booleanValues:mt(ht,e.localization),filterType:s,ariaLabel:"reorder"===i.columnType?"":d,size:e.size},g=i.declarationIndex>=0?++o:--n,m={columnId:l.tableKeyboardNavigationTools.getFilterColumnId(i.id),navigatable:i.navigatable||e.navigatable,className:a.classNames("k-table-td",t(i.field,i.locked)||void 0),role:"gridcell",ariaLabel:"reorder"===i.columnType?void 0:d,ariaColumnIndex:i.ariaColumnIndex},h=G(i),f={column:h,filter:e.filter,field:i.field,render:e.cellRender};let C=null;if(p&&"reorder"!==i.columnType){const e=i.filterCell?i.filterCell:It;C=v.createElement(yt,{...f,isClient:K(e)},v.createElement(e,{...p}))}const b=F(e.cells,i.cells);if(b&&b.filterCell){const e=b.filterCell,t=K(e);return v.createElement(yt,{key:g,...f,isClient:t,isCustom:!0},v.createElement(e,{key:g,...p,tdProps:m,index:o},C))}return v.createElement(St,{key:g,column:h},v.createElement(l.HeaderTdElement,{...m},C))}));return v.createElement("tr",{className:"k-table-row k-filter-row","aria-rowindex":e.ariaRowIndex,role:"row"},i)},wt=e=>{const t=v.useRef(null),{dir:r,title:n}=e;return v.createElement(a.Draggable,{onPress:r=>{const n=t.current&&t.current.element;n&&e.onPress&&e.onPress(r.event,n)},onDrag:r=>{const n=t.current&&t.current.element;n&&e.onDrag&&e.onDrag(r.event,n)},onRelease:r=>{t.current&&t.current.element&&e.onRelease&&e.onRelease(r.event)},ref:t},v.createElement("div",{className:"k-chip k-chip-md k-chip-solid k-chip-solid-base k-rounded-md",onClick:t=>{if(t.preventDefault(),e.onSortChange){const r="asc"===e.dir?"desc":"asc";e.onSortChange(t,r)}},onContextMenu:t=>{const r={title:e.title,dir:e.dir,index:e.index};e.onContextMenu&&e.onContextMenu.call(void 0,t,{dataItem:{...r}})},onKeyDown:t=>{(t.keyCode===a.Keys.delete||t.keyCode===a.Keys.backspace)&&(t.preventDefault(),t.stopPropagation(),e.onRemove&&e.onRemove(t))},tabIndex:0,role:"button",style:{touchAction:"none"}},v.createElement("span",null,v.createElement(a.IconWrap,{name:"sort-"+r+"-small",icon:"asc"===r?i.sortAscSmallIcon:i.sortDescSmallIcon,size:"small"})),v.createElement("span",{className:"k-chip-content"},v.createElement("span",{className:"k-chip-label"},n)),v.createElement("span",{className:"k-chip-actions"},v.createElement("span",{className:"k-chip-action k-chip-remove-action",onClick:t=>{t.preventDefault(),t.stopPropagation(),e.onRemove&&e.onRemove(t)}},v.createElement(a.IconWrap,{name:"x-circle",icon:i.xCircleIcon,size:"small"})))))},Pt=e=>{const t=v.useContext(ae),r=o.useLocalization(),n=e.group||[],l=t=>{const r=e.columns.find((e=>e.field===t)),n=r&&(r.title||r.field);return void 0===n?t:n},a=n.map(((r,n)=>v.createElement(wt,{key:n,index:n,dir:r.dir||"asc",title:l(r.field),onRemove:r=>{((r,n)=>{const l=e.group.slice();l.splice(n,1),t.groupChange(l,r)})(r,n)},onSortChange:(l,a)=>{((r,n,l,a)=>{const o=Object.assign({},l,{dir:a}),i=e.group.slice();i.splice(n,1,o),t.groupChange(i,r)})(l,n,r,a)},onPress:t.dragLogicRef.current.pressHandler,onDrag:t.dragLogicRef.current.dragHandler,onRelease:t.dragLogicRef.current.releaseHandler,onContextMenu:t.onContextMenu})));return v.createElement("div",{ref:t.dragLogicRef.current.refGroupPanelDiv,className:"k-grouping-header",role:"toolbar","aria-label":r.toLanguageString(Ge,Be[Ge]),"aria-controls":e.ariaControls||""},v.createElement("div",{className:"k-chip-list k-chip-list-md",role:"none"},a),v.createElement("div",{className:"k-grouping-drop-container"},!a.length&&r.toLanguageString(me,Be[me])," "))},Rt=e=>{const t=v.useRef(null),r=v.useRef(null),n=v.useContext(ae);return v.useImperativeHandle(n.footerRef,(()=>({setScrollLeft:e=>{t.current&&(t.current.scrollLeft=e)},setWidth:e=>{r.current&&(r.current.style.width=e+"px")}}))),e.staticHeaders?v.createElement("div",{className:"k-grid-footer",role:"presentation"},v.createElement("div",{ref:t,className:"k-grid-footer-wrap",role:"presentation"},v.createElement("table",{ref:r,className:a.classNames("k-table k-grid-footer-table",{"k-table-md":!e.size,[`k-table-${a.kendoThemeMaps.sizeMap[e.size]||e.size}`]:e.size},e.className),role:"presentation"},v.createElement("colgroup",{ref:e=>{n.columnResizeRef.current.colGroupFooter=e},role:"presentation"},e.cols),v.createElement("tfoot",{className:"k-table-tfoot",role:"presentation"},e.row)))):v.createElement("tfoot",{className:"k-table-tfoot"},e.row)};Rt.displayName="KendoReactFooter";const Nt=e=>{var t;const{cellProps:r}=e,n=v.useContext(ae),a=l.useTableKeyboardNavigation(r.id),o=v.useCallback((e=>{var t;null==(t=null==n?void 0:n.cellClick)||t.call(n,e,r.dataItem,r.field)}),[n,r.dataItem,r.field]),i=v.useCallback((e=>{var t;null==(t=null==n?void 0:n.onContextMenu)||t.call(void 0,e,r.dataItem,r.field)}),[n,r.dataItem,r.field]),s="groupFooter"===r.rowType||"groupHeader"!==r.rowType?{onContextMenu:i}:{},c=n.getCellPositionStyle(r.columnPosition),d={...a,...s,..."groupFooter"!==r.rowType&&"groupHeader"!==r.rowType?{style:{...null==(t=e.tdProps)?void 0:t.style,...c}}:{},onClick:o},u={onContextMenu:n.onContextMenu,onChange:n.itemChange,selectionChange:e=>{n.selectionChange({event:e,dataItem:r.dataItem,dataIndex:r.rowDataIndex,columnIndex:r.columnIndex})}};if(e.isCustom)return n.isClient||e.isClient?B(e.children,{tdProps:{...e.tdProps,...d},...u}):B(e.children,{...d});if(r.render){const t="groupHeader"!==r.rowType?v.createElement("td",{...e.tdProps,...d},e.content):null;return r.render.call(void 0,t,{...r,...u})}return e.children&&B(e.children,{...d})},Tt=e=>{var t,r,n;let l=null,o=null,i=null;const s=e.unstyled,c=s&&s.uGrid?s.uGrid:a.uGrid;if(null===(null==(t=e._rowSpan)?void 0:t.count))return null;if("groupFooter"===e.rowType)o={className:e.className},l=v.createElement("td",{...o},i);else if("groupHeader"!==e.rowType){if(void 0!==e.field){const t=k(e.field,e.dataItem);null!=t&&(i=e.intl&&e.format?e.intl.format(e.format,t):t.toString())}const t=a.classNames(c.td({selected:e.isSelected,sorted:e.isSorted,alt:e.isAlt}),e.className);o={rowSpan:null!=(n=null==(r=e._rowSpan)?void 0:r.count)?n:void 0,colSpan:e.colSpan,style:e.style,className:t,role:"gridcell","aria-colindex":e.ariaColumnIndex,"aria-selected":e.isSelected,[X]:e.columnIndex},l=v.createElement("td",{...o},i)}const d=A(e),u=e.rowType||"data",p=e.cells;if(p&&p[u]){const e=p[u],t=K(e);return v.createElement(Nt,{cellProps:d,tdProps:o,isCustom:!0,isClient:t},v.createElement(e,{...d,tdProps:o},i))}return v.createElement(Nt,{cellProps:d,content:i,tdProps:o},l)},Dt=e=>{const t=v.useContext(ae),r=o.useLocalization(),n=e.expanded?Oe:Le,s=r.toLanguageString(n,Be[n]),c="rtl"===t.dir;return v.createElement("a",{onClick:r=>{var n;r.preventDefault(),null!=t&&t.itemChange&&t.itemChange({dataItem:e.dataItem,dataIndex:e.dataIndex,syntheticEvent:r,field:void 0,value:!e.expanded}),null==(n=null==t?void 0:t.dispatchGroupExpand)||n.call(t,{type:l.GROUP_EXPAND_ACTION.TOGGLE,group:e.group})},href:"#",tabIndex:-1,"aria-label":s},v.createElement(a.IconWrap,{name:e.expanded?"caret-alt-down":c?"caret-alt-left":"caret-alt-right",icon:e.expanded?i.caretAltDownIcon:c?i.caretAltLeftIcon:i.caretAltRightIcon}))},Mt=e=>{var t;const{cellProps:r}=e,n=v.useContext(ae),o=l.useTableKeyboardNavigation(r.id),i=v.useCallback((e=>{e.isDefaultPrevented()||e.keyCode===a.Keys.enter&&null!=n&&n.itemChange&&(e.preventDefault(),n.itemChange({dataItem:r.dataItem,dataIndex:r.dataIndex,syntheticEvent:e,field:void 0,value:!r.expanded}),null==n||n.dispatchGroupExpand({type:l.GROUP_EXPAND_ACTION.TOGGLE,group:r.group},e))}),[n,r.dataItem,r.dataIndex,r.expanded,r.group]),s=e.addKeyDownHandler?{onKeyDown:i}:{},c=v.useCallback((e=>{null!=n&&n.onContextMenu&&n.onContextMenu.call(void 0,e,r.dataItem,r.field)}),[n,r.dataItem,r.field]),d=n.getCellPositionStyle(r.columnPosition),u={...o,...s,onContextMenu:c,...{style:{...null==(t=e.tdProps)?void 0:t.style,...d}}},p={onContextMenu:n.onContextMenu,onChange:n.itemChange,selectionChange:e=>{n.selectionChange({event:e,dataItem:r.dataItem,dataIndex:r.rowDataIndex,columnIndex:r.columnIndex})}};if(e.isCustom)return n.isClient||e.isClient?B(e.children,{tdProps:e.tdProps?{...e.tdProps,...u}:null,td2Props:e.td2Props?{...e.td2Props,onContextMenu:c}:null,...p}):B(e.children,{...u});const g=e.renderSecondCell?v.createElement("td",{...e.td2Props,onContextMenu:c}):null;if(r.render){let t=null;return e.renderFirstCell&&(t=e.renderSecondCell?v.createElement(v.Fragment,null,v.createElement("td",{...e.tdProps,...u},e.content),e.renderSecondCell&&g):v.createElement("td",{...e.tdProps,...u},e.content)),r.render.call(void 0,t,{...r,...p})}return v.createElement(v.Fragment,null,e.children&&B(e.children,{...u}),g)},Gt=e=>{const{columnIndex:t,level:r,columnsCount:n,rowType:l,dataItem:o,field:i,expanded:s,render:c,ariaColumnIndex:d}=e,u=i||"";let p=null,g=null,m=null,h=!1,f=!1,C=!1;const b=A(e);void 0===t||void 0===r||t<r||void 0===n||"groupHeader"!==l||void 0===o[u]?(f=!0,p={style:e.style,key:"g"+t,className:a.classNames("k-table-td","k-group-cell",{"k-grid-content-sticky":e.locked}),role:"gridcell"}):t===r&&(f=!0,p={className:"k-table-td",style:e.style,colSpan:n-t,key:"g-colspan",role:"gridcell","aria-selected":!1,"aria-expanded":s,"aria-colindex":d},m=v.createElement("p",{className:"k-reset"},v.createElement(Dt,{...b}),o[u]instanceof Date&&o[u].toString?o[u].toString():o[u]),h=!0,e.locked&&(C=!0,p={...p,colSpan:0,style:{...e.style,position:"sticky",zIndex:2}},g={className:"k-table-td",role:"gridcell",colSpan:n-t,style:{borderLeftWidth:0,borderRightWidth:0}}));const x=e.rowType||"data",E=e.cells;if(E&&E.group&&E.group[x]){const e=E.group[x],t=K(e);return v.createElement(Mt,{cellProps:b,tdProps:p,td2Props:g,isCustom:!0,isClient:t,addKeyDownHandler:!0},v.createElement(e,{...b,tdProps:p,td2Props:g},m))}const I=f?v.createElement("td",{...p,key:null==p?void 0:p.key},m):null;return v.createElement(Mt,{cellProps:b,addKeyDownHandler:h,tdProps:p,td2Props:g,renderFirstCell:f,renderSecondCell:C,content:m},I)},Lt=e=>{var t;const r=v.useContext(ae),{reorderRowDropTargetRef:n,reorderRowDragTargetRef:l,activeDragRowDataItemRef:o}=r,{rowType:i,isAltRow:s,isInEdit:c,isSelected:d}=e,u=a.useUnstyled(),p=u&&u.uGrid?u.uGrid:a.uGrid,g=a.classNames(p.tr({selected:d,isHeader:"groupHeader"===i,isFooter:"groupFooter"===i,isMaster:"groupHeader"!==i&&"groupFooter"!==i,isAltRow:s,isInEdit:c})),m=v.useRef(null);a.useDroppable(m,{onDragOver:t=>{if(e.isRowReorderable&&o.current){const e=t.originalEvent.target;n.current=e.closest(".k-table-row")}},onDrop:()=>{l.current&&e.isRowReorderable&&(l.current.style.userSelect="")}});const h={onClick:t=>r.rowClick(t,e.dataItem),onDoubleClick:t=>r.rowDblClick(t,e.dataItem)},f={ref:m,id:e.id,...h,className:g,style:{height:e.rowHeight?e.rowHeight+"px":"",visibility:e.isHidden?"hidden":"",userSelect:null==(t=null==l?void 0:l.current)?void 0:t.style.userSelect},role:"row","aria-rowindex":e.ariaRowIndex,"absolute-row-index":e.absoluteRowIndex,[$]:"data"===e.rowType?e.dataIndex:void 0},C=e.rowType||"data",b=e.rows;if(b&&b[C]){const t=b[C];return v.createElement(t,{key:e.absoluteRowIndex,...e,trProps:f},e.children)}const x=v.createElement("tr",{key:e.absoluteRowIndex,...f},e.children);return e.render?e.render.call(void 0,x,{...e,...h}):x},Ot=e=>{const t=v.useContext(ae),r=a.useId(),n=o.useLocalization(),l=e.id||r,i=[v.createElement("span",{key:0,className:"k-checkbox-wrap"},v.createElement("input",{id:l,type:"checkbox",tabIndex:-1,className:"k-checkbox k-checkbox-md k-rounded-md","aria-label":n.toLanguageString(Ke,Be[Ke]),"aria-checked":e.selectionValue,checked:e.selectionValue,onChange:r=>t.onHeaderSelectionChange({field:e.field,syntheticEvent:r})})),e.columnMenuWrapperProps.columnMenu&&v.createElement(et,{...e.columnMenuWrapperProps})];return e.render?e.render.call(void 0,i,e):i},Ft=e=>{const t=o.useLocalization();return v.createElement(v.Fragment,null,e.children||t.toLanguageString(ie,Be[ie]))};Ft.displayName="KendoReactGridNoRecords";const Ht=e=>{const t=v.useContext(ae),r=l.useTableKeyboardNavigation(e.id),n=t.getCellPositionStyle(e.column),a={...r,style:{...n}};return e.isCustom&&(t.isClient||e.isClient)?B(e.children,{tdProps:{...e.tdProps,...a},...r}):B(e.children,{...a})},Kt=e=>{const{column:t,index:r,cells:n}=e,l={colSpan:1!==t.colSpan?t.colSpan:void 0,className:a.classNames("k-table-td",t.locked&&void 0!==t.left?"k-grid-footer-sticky":""),role:"gridcell","aria-colindex":t.ariaColumnIndex},o={field:t.field,ariaColumnIndex:t.ariaColumnIndex,...l},i=G(t),s=F(n,t.cells);if(s&&s.footerCell){const t=s.footerCell,n=K(t);return v.createElement(Ht,{key:r,id:e.id,tdProps:l,isCustom:!0,isClient:n,column:i},v.createElement(t,{...o,tdProps:l,index:r}))}return v.createElement(Ht,{key:r,id:e.id,column:i},t.footerCell&&v.createElement(t.footerCell,{...o})||v.createElement("td",{...l}))},At=e=>v.createElement("tr",{className:"k-table-row",role:"row","aria-rowindex":e.ariaRowIndex},(e=>e.filter((t=>!(((e,t)=>{let r=e[t.parentIndex];for(;r;){if(r.footerCell)return!0;r=e[r.parentIndex]}return!1})(e,t)||!t.footerCell&&t.children&&t.children.length>0))))(e.columns).map(((t,r)=>{const n=l.tableKeyboardNavigationTools.generateNavigatableId(`${r}-footercell`,e.idPrefix,"nodata");return v.createElement(Kt,{key:n,column:t,id:n,index:r,cells:e.cells})}))),zt=e=>(({buttonCount:e=10,info:t=!0,type:r="numeric",pageSizes:n,previousNext:l=!0,responsive:a,navigatable:o,pageSizeValue:i})=>({buttonCount:e,info:t,pageSizes:!0===n?[5,10,20]:n||void 0,previousNext:l,responsive:!1!==a,navigatable:!1!==o,type:r,pageSizeValue:i}))(!0===e?{}:e),Bt={name:"@progress/kendo-react-grid",productName:"KendoReact",productCode:"KENDOUIREACT",productCodes:["KENDOUIREACT"],publishDate:0,version:"$VERSION",licensingDocsUrl:"https://www.telerik.com/kendo-react-ui/components/my-license/"},Vt=e=>{const t=v.useContext(ae),r=l.useTableKeyboardNavigation(e.id),n=v.useCallback((r=>{null!=t&&t.onContextMenu&&t.onContextMenu.call(void 0,r,e.dataItem)}),[t,e.dataItem]);return B(e.children,{onContextMenu:n,...r})},Wt=e=>{const{colSpan:t,ariaColIndex:r,dataItem:n,dataIndex:l,id:o}=e,i=e.unstyled,s=i&&i.uGrid?i.uGrid:a.uGrid;return v.createElement(Vt,{id:o,dataItem:n},v.createElement("td",{className:a.classNames(s.detailTd({})),colSpan:t,"aria-colindex":r,role:"gridcell"},v.createElement(e.detail,{dataItem:n,dataIndex:l})))},qt=e=>{const t=e.unstyled,r=t&&t.uGrid?t.uGrid:a.uGrid;return v.createElement("td",{className:a.classNames(r.hierarchyTd({})),role:"gridcell"})},_t=e=>{const t=v.useContext(ae),r=t.headerRef.current,n=r&&r.table()&&r.table().clientWidth,o=a.uGrid;return v.createElement("div",{key:"no-records",className:a.classNames(o.noRecords({})),style:{width:n}},v.createElement("div",{className:a.classNames(o.noRecordsTemplate({})),[l.KEYBOARD_NAV_DATA_ID]:l.tableKeyboardNavigationTools.generateNavigatableId("no-records",l.tableKeyboardNavigationTools.getIdPrefix(t.navigationStateRef))},e.children))};_t.displayName="KendoReactGridNoRecordsContainer";const Ut=e=>a.shouldShowValidationUI(Bt)&&v.createElement(a.WatermarkOverlay,null),jt=e=>{const t=v.useContext(ae);return v.createElement("colgroup",{ref:e=>{t.columnResizeRef.current.colGroupMain=e}},e.children)},$t=e=>{const t=v.useContext(ae);return v.createElement(l.TableSelection,{selectable:e.selectable,onRelease:t.selectionRelease,childRef:e=>{t.tableElementRef.current=e,t.headTableElementRef.current=e}},v.createElement("table",{ref:t.headTableElementRef,className:e.tableClassName},e.children))},Xt=e=>{const t=v.useContext(ae);return v.createElement(l.DropClue,{ref:t.dragLogicRef.current.refDropElementClue})},Yt=e=>{const t=v.useContext(ae);return v.createElement(l.DragClue,{ref:t.dragLogicRef.current.refDragElementClue})},Jt=e=>{const t=v.useContext(ae);return v.createElement(v.Fragment,null,e.rowReorderable?v.createElement(a.DragAndDrop,null,e.children):B(e.children,{ref:t.tableBodyElementRef}))};function Qt(e){const t=e.replace(/^pager\.([a-z])/,((e,t)=>"grid.pager"+t.toUpperCase()));return{messageKey:t,defaultMessage:Be[t]}}const Zt=e=>{const t=v.useContext(ae);return B(e.children,{onPageChange:t.pagerPageChange,messagesMap:Qt,dir:t.dir})},er=e=>{const t=v.useContext(ae);return v.createElement(l.TableSelection,{selectable:e.selectable,onRelease:t.selectionRelease,childRef:e=>{t.tableElementRef.current=e}},v.createElement("table",{className:e.tableClassName,role:"presentation",style:e.tableStyle,ref:t.tableElementRef},e.children))},tr=e=>{const t=v.useContext(ae);return B(e.children,{ref:t.elementRef,onKeyDown:t.onKeyDown,onFocus:t.onFocus})},rr=e=>{const t=v.useContext(ae);return B(e.children,{ref:t.containerElementRef,onScroll:t.scrollHandler})},nr=e=>{const t=v.useContext(ae);return v.createElement("div",{style:e.isVirtualScroll?{height:t.vsRef.current.containerHeight+"px"}:{}})},lr=e=>{const t=v.useContext(ae);if(t.isClient||e.isClient){const r=t.getCellPositionStyle(e.columnPosition);return e.children&&B(e.children,{style:{...e.style,...r},onContextMenu:t.onContextMenu,onChange:t.itemChange,selectionChange:r=>{t.selectionChange({event:r,dataItem:e.dataItem,dataIndex:e.rowDataIndex,columnIndex:e.columnIndex})}})}return e.children},ar="before",or="after",ir="forbidden";function sr(e){const{clientTop:t,clientLeft:r}=cr(e),{pageYOffset:n,pageXOffset:l}=dr(e),{top:a,left:o}=e.getBoundingClientRect();return{top:a+n-t,left:o+l-r}}const cr=e=>null==e?void 0:e.ownerDocument.documentElement,dr=e=>null==e?void 0:e.ownerDocument.defaultView,ur={zIndex:"19000",position:"absolute",display:"none",visibility:"hidden"},pr={zIndex:"20000",display:"flex",position:"fixed",visibility:"hidden",pointerEvents:"none"},gr=e=>{const{rowReorderSettings:r,columns:n,unstyled:l}=e,{rowReorder:o,reorderRowDragTargetRef:s,reorderRowDropTargetRef:c,activeDragRowDataItemRef:d,tableBodyElementRef:u}=t.useContext(ae),[p,g]=t.useState(!1),[h,f]=t.useState(i.cancelIcon),C=t.useRef(null),v=t.useRef(null),b=t.useRef(null),x=t.useRef(null),E=t.useRef(!1),I=t.useRef(null),y="object"==typeof r?r.enabled:r;t.useEffect((()=>{u.current=C.current}),[]),a.useDraggable(C,{onPress:e=>{const t=e.originalEvent.target;t.closest(".k-drag-cell")&&(x.current=e.offsetY,E.current=!0,s.current=t.closest(".k-table-row"))},onDragStart:e=>{!E.current||!y||!d.current||(s.current&&(s.current.style.userSelect="none"),g(!0))},onDrag:e=>{if(!E.current&&!v.current)return;const{clientX:t,clientY:r}=e,n=t,l=r-x.current;v.current&&(v.current.style.left=`${n}px`,v.current.style.top=`${l}px`,v.current.style.visibility="visible"),S(e)},onDragEnd:e=>{var t;if(!y||!d.current)return;g(!1);const r=Number(null==(t=c.current)?void 0:t.getAttribute("absolute-row-index"));o(e,r,I.current),E.current=!1}});const S=e=>{I.current=R(e),k()},k=()=>{var e;if(I.current===ir||!c.current)return void w();P();const t=sr(c.current);let r=t.top;const n=t.left+((null==(e=b.current)?void 0:e.offsetWidth)||0)/2;I.current===or&&(r+=c.current.offsetHeight),b.current&&(b.current.style.top=`${r}px`,b.current.style.left=`${n}px`,b.current.style.visibility="visible")},w=()=>{b.current&&(b.current.style.display="none")},P=()=>{b.current&&(b.current.style.display="")},R=e=>{if(c.current===s.current||!c.current)return ir;if(((e,t)=>(null==e?void 0:e.parentElement)!==(null==t?void 0:t.parentElement))(c.current,s.current))return ir;const t=c.current.getBoundingClientRect(),r=t.height/2,n=e.clientY,l=t.top;let a=null;n<l+r?a=ar:n>=l+t.height-r&&(a=or),(a===ar&&c.current===s.current.nextElementSibling||a===or&&c.current===s.current.previousElementSibling)&&(a=ir);const o=a===ir?i.cancelIcon:i.insertMiddleIcon;return f(o),a},N=t.useMemo((()=>{if(d.current){if(r.dragClue)return"string"==typeof r.dragClue?r.dragClue:r.dragClue(d.current);{const e=n.find((e=>!e.hidden&&"data"===e.columnType));return d.current[e.field]}}}),[d.current]);return t.createElement(t.Fragment,null,p&&m.createPortal(t.createElement(t.Fragment,null,t.createElement("div",{ref:b,style:ur,className:a.classNames(l.rowReorder({dropIndicatorMain:!0,dropIndicatorDirection:!0}))},t.createElement("div",{className:"k-drop-hint-start"}),t.createElement("div",{className:"k-drop-hint-line"})),t.createElement("div",{ref:v,style:pr,className:a.classNames(l.rowReorder({dragClueMain:!0,dragClueOperation:!0}))},t.createElement(a.SvgIcon,{className:"k-drag-status",icon:h}),N)),document.body),B(e.children,{ref:C}))},mr=()=>t.createElement(a.SvgIcon,{icon:i.reorderIcon}),hr=e=>{const{cellProps:r,rowReorderable:n}=e,{id:a,dataItem:i}=r,s=o.useLocalization(),c=t.useContext(ae),d=l.useTableKeyboardNavigation(a),u=n,p=s.toLanguageString(ze,Be[ze]),g=t.useCallback((e=>{null!=c&&c.onContextMenu&&c.onContextMenu.call(void 0,e,r.dataItem,r.field)}),[c,r.dataItem,r.field]);return e.children&&B(e.children,{"aria-label":p,...d,onMouseDown:()=>u?c.activeDragRowDataItemRef.current=i:null,onContextMenu:g})},fr=e=>{const{...r}=e,n=e.unstyled,l=n&&n.uGrid?n.uGrid:a.uGrid,o=a.classNames(l.td({selected:e.isSelected,sorted:e.isSorted,alt:e.isAlt}),e.className),i={colSpan:e.colSpan,style:e.style,className:o,role:"gridcell","aria-colindex":e.ariaColumnIndex,"aria-selected":e.isSelected,[X]:e.columnIndex},s=a.classNames(null==i?void 0:i.className,["k-drag-cell",""+(e.rowReorderable?"":"k-disabled")]);return t.createElement(hr,{rowReorderable:e.rowReorderable,cellProps:r},t.createElement("td",{...i,style:{touchAction:"none"},"aria-disabled":!e.rowReorderable,className:s},t.createElement(mr,null)))},Cr=e=>v.createElement(tt,{...e}),vr={height:"100%",display:"flex",justifyContent:"center",alignItems:"center"},br=e=>{var t;return v.createElement(v.Fragment,null,e.showLoader?null!=(t=e.loader)?t:v.createElement("div",{className:"k-loading-mask"},v.createElement("div",{className:"k-loading-color"}),v.createElement("div",{style:vr},v.createElement(h.Loader,{size:"large",type:"converging-spinner"}))):null)},xr=v.forwardRef(((e,t)=>{var r,i,s,c,d,u,p;const g=e.id+"-role-element-id",m=e.navigatable?g:"";a.validatePackage(Bt);const h=e=>{const t=e.filter((e=>e&&e.type&&"KendoReactGridColumn"===e.type.displayName)),r=S.current.filter((e=>e.declarationIndex>=0&&-1===e.parentIndex));return R(t,M(r),{prevId:0,idPrefix:m})},f=t=>{const r=(()=>{const t=[],r=(e,n)=>null==e?void 0:e.forEach((e=>{const l=e.hidden||n;t.push({...e,hidden:l}),r(e.children,l)}));return r(e.columnsState,!1),t})();return t.filter((e=>{var t;return!(null!=(t=r.find((t=>t.id===e.id)))&&t.hidden)}))},C=(t,r)=>{var n;t.filter((t=>e.selectedField&&t.field===e.selectedField||"checkbox"===t.columnType)).forEach((e=>{e.width=e.width||"50px",e.cell=e.cell||qe,e._type="edit",e.headerCell=e.headerCell||Ot})),void 0!==_&&t.filter((e=>"reorder"===e.columnType)).forEach((e=>{e.width=e.width||"50px",e.cell=e.cell||fr,e.headerCell=e.headerCell||Cr,e.sortable=!1,e.filterable=!1,e.editable=!1}));const l={id:"",resizable:!0,width:"32px",title:" ",declarationIndex:-1,orderIndex:-1,children:[],parentIndex:-1,depth:0,colSpan:0,headerColSpan:0,rowSpan:0,left:0,right:0,index:0,rightBorder:!1,ariaColumnIndex:0,isAccessible:!0};let o=0;(e.expandField||te.enabled)&&e.detail&&(t.unshift({...l,_type:"expand",cell:je,field:null!=(n=te.column)?n:e.expandField,headerClassName:a.classNames(q.hierarchyCell({}))}),o++);for(let n=0;n<r;n++)t.unshift({...l,isAccessible:!1,cell:Gt,field:"value",locked:e.lockGroups}),o++;t.slice(o).forEach((e=>{e.parentIndex>=0&&(e.parentIndex+=o),e.rowSpannable=void 0!==e.rowSpannable?z(e.rowSpannable):se}))},b=()=>j.length===e.total,E=()=>e.isClient?S:L;let I,y=[];const S=e.columnsRef||{current:[]},L={current:[]};let O=[[]];const A=e.scrollLeftRef||{current:0},B=e.localization||new o.LocalizationService,V=e.intl||new o.IntlService("en"),W=e.unstyled,q=W&&W.uGrid?W.uGrid:a.uGrid,_=H(e.rowReorderable),U=!0===e.autoProcessData?{group:!0,sort:!0,filter:!0,search:!0,page:!0}:e.autoProcessData;let j,$;if(Array.isArray(e.data)?(j=e.data,$=null!=(r=e.total)?r:j.length):(j=(null==(i=e.data)?void 0:i.data)||[],$=null!=(d=null!=(c=e.total)?c:null==(s=e.data)?void 0:s.total)?d:j.length),U){const{data:t,total:r}=n.process(j,{group:U.group?e.group:void 0,sort:U.sort?e.sort:void 0,filter:l.combineFilters(U.filter?e.filter:void 0,U.search?e.search:void 0),...U.page?{take:e.take,skip:e.skip}:{}});j=t,$=null!=(u=e.total)?u:r}const{size:X="medium"}=e,Y="object"==typeof e.groupable&&e.groupable.footer||"none",J="virtual"===e.scrollable,ee=!0===e.groupable||"object"==typeof e.groupable&&!1!==e.groupable.enabled,te=l.getDetailExpandableOptions(!!e.detail),re=l.getGroupExpandableOptions("object"==typeof e.groupable&&!1!==e.groupable.enabled?e.groupable.expandable:e.groupable),{resolvedGroupsCount:ne,flattedData:le}=((e,t,r,n,l,a,o)=>{const i=[];return{flattedData:i,resolvedGroupsCount:w(i,j,e,{index:t},void 0!==r,n,l,a,re.defaultExpand,o)}})(Y,e.skip||0,e.group,e.expandField,e.detailExpand,e.groupExpand,e.dataItemKey);y=le;const ae=(()=>{const{rowHeight:t,detailRowHeight:r,detail:n,expandField:l}=e,a=b();return!(void 0!==t&&t>0)||ee&&!a||n&&l&&(!(void 0!==r&&r>0)||!a)?Z:Q})();ae===Q&&b()&&(I=y.slice(e.skip||0,(e.skip||0)+((void 0!==e.take?e.take:e.pageSize)||0)));const ie=l.getSelectionOptions(e.selectable||!!e.selectedField),se=z(e.rowSpannable),ce=ie&&ie.drag?"none":void 0,de=v.Children.toArray(e.children);((t,r)=>{var n;const o=(e=>e.filter((e=>a.canUseDOM&&e&&e.media?window.matchMedia(e.media).matches:e)))(h(t));S.current=o,0===S.current.length&&(S.current=function(e,t,r,n){const a=N(e),o=[];if(a.length>0){let e=a[0];if(t)for(let r=0;r<t.length;r++)e=e.items&&e.items[0];Object.getOwnPropertyNames(e).forEach((e=>{e!==r.column&&o.push(Object.assign({id:l.tableKeyboardNavigationTools.generateNavigatableId(""+n.prevId++,n.idPrefix,"column"),declarationIndex:-1,parentIndex:-1,depth:0,colSpan:0,headerColSpan:0,rowSpan:0,index:0,columnType:"data",left:0,right:0,rightBorder:!1,children:[],ariaColumnIndex:0,isAccessible:!0},x,{field:e}))}))}return o}(j,e.group,{column:null!=(n=te.column)?n:e.expandField},{prevId:0,idPrefix:m})),S.current=f(S.current),C(S.current,r),O=function(e,t){const r=[[]];let n=0;for(let t=e.length-1;t>=0;t--)n=Math.max(n,e[t].depth),e[t].headerColSpan=e[t].headerColSpan||1,e[t].children.length>0&&(e[t].headerColSpan=e[t].children.reduce(((e,t)=>t.hidden?e:e+t.headerColSpan),0));const a=[];let o=1;return e.forEach(((e,t)=>{r[e.depth]=r[e.depth]||[];let l=!1;0===r[e.depth].length&&(o<=1?o=1+(e.children.length>0?0:n-e.depth):(o--,l=!0)),e.rowSpan=1+(e.children.length>0?0:n-e.depth),e.kFirst=l,e.index=r[e.depth].length,r[e.depth].push(t),e.ariaColumnIndex=a[e.depth]?a[e.depth]+1:1;for(let t=e.depth;t<e.depth+e.rowSpan;t++)a[t]=(a[t]||0)+e.headerColSpan})),l.updateLeft(r,e,t),l.updateRight(r,e,t),r}(S.current,!0),L.current=S.current.map(G)})(de,ne);const ue=de.map((e=>e&&e.type&&"KendoReactGridToolbar"===e.type.displayName?v.cloneElement(e,{...e.props,ariaControls:g}):null)),pe=de.filter((e=>e&&e.type&&"KendoReactGridNoRecords"===e.type.displayName)),ge=de.filter((e=>e&&e.type&&"KendoReactGridStatusBar"===e.type.displayName)),me=S.current.filter((e=>0===e.children.length)),he=ee&&v.createElement(Pt,{columns:E().current,group:e.group||[],ariaControls:g}),fe=v.createElement(Je,{size:X,staticHeaders:"none"!==e.scrollable,draggable:e.reorderable||ee,headerRow:v.createElement(dt,{cells:e.cells,sort:e.sort,sortable:e.sortable,group:e.group||[],groupable:ee,filter:e.filter,filterable:e.filterable,filterOperators:e.filterOperators||pt,columnMenu:e.columnMenu,columnMenuIcon:e.columnMenuIcon,columns:S.current,columnsMap:O,cellRender:e.headerCellRender,navigatable:!!e.navigatable,localization:B,unstyled:W,headerSelectionValue:!(!e.select||!y.filter((e=>"data"===e.rowType)).every((t=>e.select&&e.dataItemKey&&void 0!==a.getter(e.dataItemKey)(t.dataItem)?e.select[a.getter(e.dataItemKey)(t.dataItem)]:void 0)))}),filterRow:e.filterable&&v.createElement(kt,{cells:e.cells,size:X,columns:S.current,filter:e.filter,filterOperators:e.filterOperators||pt,sort:e.sort,cellRender:e.filterCellRender,navigatable:!!e.navigatable,ariaRowIndex:O.length+1,localization:B})||void 0,cols:me.map(((e,t)=>v.createElement("col",{key:t.toString(),width:T(e)})))}),Ce=A.current||0,ve=parseFloat(((e.style||{}).width||"").toString()),be=(t,r,n,o,i)=>{let s=!1;const c=e.selectedField?k(e.selectedField,t.dataItem):e.select&&e.dataItemKey&&void 0!==a.getter(e.dataItemKey)(t.dataItem)?e.select[a.getter(e.dataItemKey)(t.dataItem)]:void 0;let d=0;const{colSpans:u,hiddenColumns:p}=l.tableColumnsVirtualization({enabled:e.columnVirtualization,columns:me,tableViewPortWidth:ve,scrollLeft:Ce,getColSpan:P,dataItem:t.dataItem}),g=me.filter(((e,t)=>!p[t]));return{row:me.map(((h,f)=>{var C,b,x,E;if(p[f])return null;if(d>0)return d--,null;let I;if(null!=(C=h.rowSpannable)&&C.enabled&&"data"===t.rowType&&h.field&&i){const e=h.field?null==(x=(b=h.rowSpannable).valueGetter)?void 0:x.call(b,t.dataItem,h.field):null;I={value:e,count:1},i[h.field]&&(null==(E=i[h.field])?void 0:E.value)===e&&null!==i[h.field]?(i[h.field].count++,I.count=null):i[h.field]=I}const{colSpan:y,colsToSkip:S}=((t,r,n,l,a,o)=>{let i=P(t,r);if(e.columnVirtualization&&1===t.colSpan)return{colSpan:o,colsToSkip:a};let s=n.length-1===l,c=n.length-l;return e.columnVirtualization&&(s=me.length-1===l,c=me.length-l),i>1&&!s?a=i-1:i=1,c<=i&&!s&&(i=c),{colSpan:i,colsToSkip:a}})(h,t.dataItem,g,f,d,u[f]);d=S;const w=h.id?h.id:f,R=a.classNames(q.contentSticky({locked:h.locked}),h.className),N=void 0!==h.left?{left:h.left,right:h.right}:{};let T=!1;if(h.editable&&(e.editable||e.editField)){const r=e.editField?k(e.editField,t.dataItem):e.edit&&e.dataItemKey?e.edit[a.getter(e.dataItemKey)(t.dataItem)]:void 0,n="boolean"==typeof r?r:Array.isArray(r)?r.indexOf(h.field)>-1:void 0!==h.field&&r===h.field;n&&"data"===h.columnType&&(!0===n||n===h.field)&&(s=!0,T=!0)}const M=h.cell||T&&Ye||Tt,G=e.expandField&&e.detail&&h.field===e.expandField||"expand"===h._type,L={locked:e.lockGroups,id:l.tableKeyboardNavigationTools.generateNavigatableId(`${r}-${String(f)}`,m,G||"groupHeader"===t.rowType||"groupFooter"===t.rowType||"value"===h.field?"nodata":"cell"),colSpan:y,dataItem:t.dataItem,field:h.field,editor:h.editor,format:h.format,columnType:h.columnType,rowReorderable:_,className:R,render:e.cellRender,cells:F(e.cells,h.cells),columnIndex:f,columnsCount:me.length,rowType:t.rowType,level:t.level,expanded:t.expanded,dataIndex:t.dataIndex,rowDataIndex:n,columnPosition:N,style:{},ariaColumnIndex:h.ariaColumnIndex,isSelected:"edit"===(null==h?void 0:h._type)?c:Array.isArray(c)&&c.indexOf(f)>-1,isSorted:!!D(h.field,e.sort),isInEdit:T,isAlt:o,unstyled:W,group:t.group,localization:B,intl:V,_rowSpan:I};return h.cell?v.createElement(lr,{key:w,isClient:K(M),dataItem:L.dataItem,rowDataIndex:L.rowDataIndex,columnIndex:L.columnIndex,columnPosition:L.columnPosition},v.createElement(M,{...L})):v.createElement(M,{key:w,...L})})),isInEdit:s,isSelected:"boolean"==typeof c&&c}};let xe=0;const Ee=e=>e>=y.length-xe;let Ie=e.skip||0;const ye=[],Se=!y.length,ke=O.length+(e.filterable?1:0)+1;let we=0;if(y.length){let t=-1,r=0;const n=se.enabled?{}:void 0;(I||y).forEach(((o,i)=>{"data"===o.rowType&&(Ie++,t++);const s=Ie%2==0,c=e.dataItemKey&&a.getter(e.dataItemKey)(o.dataItem),d=i+(e.skip||0),u=c||"ai"+d,p=u+"_1",g=be(o,u,t,s,n);if(we=d+ke+r,ye.push(v.createElement(Lt,{key:u,dataItem:o.dataItem,isAltRow:s,isInEdit:g.isInEdit,rowType:o.rowType,isRowReorderable:_,isHidden:Ee(i),onClick:null,onDoubleClick:null,selectedField:e.selectedField,rowHeight:e.rowHeight,render:e.rowRender,ariaRowIndex:we,absoluteRowIndex:d,dataIndex:J&&!e.groupable?d:t,isSelected:g.isSelected,rows:e.rows},g.row)),e.detail&&"data"===o.rowType&&o.expanded){const t=me.length-(e.expandField||te.enabled?1:0)-(e.group?e.group.length:0)||1;r++,we=d+ke+r,ye.push(v.createElement("tr",{key:p,className:a.classNames(q.detailTr({isAlt:s})),style:{visibility:Ee(i)?"hidden":"",height:e.detailRowHeight},role:"row","aria-rowindex":we},e.group&&e.group.map(((t,r)=>{var n;const l=null==(n=null==g?void 0:g.row[r])?void 0:n.props.style,a=l?{left:l.left,right:l.right}:{};return v.createElement(Gt,{id:"",dataIndex:o.dataIndex,field:t.field,dataItem:o.dataItem,key:r,columnPosition:a,style:{},ariaColumnIndex:1+r,isSelected:!1,locked:e.lockGroups,cells:e.cells,group:o.group})})),(e.expandField||te.enabled)&&v.createElement(qt,{unstyled:W,id:l.tableKeyboardNavigationTools.generateNavigatableId(`${p}-dhcell`,m)}),v.createElement(Wt,{dataItem:o.dataItem,dataIndex:o.dataIndex,colSpan:t,ariaColIndex:2+(e.group?e.group.length:0),detail:e.detail,id:l.tableKeyboardNavigationTools.generateNavigatableId(`${p}-dcell`,m)})))}}))}const Pe={size:X,total:$,skip:e.skip||0,take:(void 0!==e.take?e.take:e.pageSize)||10,...zt(e.pageable||{})},Re=v.createElement(Zt,null,e.pager?v.createElement(e.pager,{...Pe}):v.createElement(l.Pager,{className:a.classNames(q.pager({})),...Pe})),Ne=null!=(p=e.cells)&&p.footerCell||S.current.some((e=>{var t;return!!(e.footerCell||null!=(t=e.cells)&&t.footerCell)}))?v.createElement(Rt,{size:X,staticHeaders:"none"!==e.scrollable,row:v.createElement(At,{cells:e.cells,idPrefix:m,columns:S.current,ariaRowIndex:we+1}),cols:me.map(((e,t)=>v.createElement("col",{key:t.toString(),width:T(e)})))}):null,Te=v.createElement(jt,null,me.map(((t,r)=>v.createElement("col",{key:r.toString(),className:D(t.field,e.sort)?a.classNames(q.sorted({})):void 0,width:T(t)})))),De=e.reorderable||ee,{detail:Me,cells:Ge,rows:Le,...Oe}=e,Fe=v.createElement("tbody",{role:"rowgroup",className:a.classNames(q.tbody({})),...l.tableKeyboardNavigationBodyAttributes},ye);let He=Fe;if(_&&(He=v.createElement(gr,{unstyled:q,columns:S.current,rowReorderSettings:e.rowReorderable},Fe)),"none"===e.scrollable)return v.createElement(oe,{gridRef:t,gridProps:Oe,columnsRef:E(),columnsMapRef:O,dataRef:y,slicedData:I,isFixedVirtualScroll:ae===Q,id:g,total:$,detailExpandable:!!e.detail},v.createElement(tr,null,v.createElement("div",{id:e.id,style:e.style,className:a.classNames(q.wrapper({size:X}),e.className),"aria-label":e.ariaLabel,...l.tableKeyboardNavigationScopeAttributes},ue,he,v.createElement($t,{selectable:e.selectable,className:a.classNames(q.table({size:X}))},Te,fe,v.createElement(Jt,{rowReorderable:_},He)),Se&&v.createElement(_t,null,pe.length?pe:v.createElement(Ft,null)),De&&v.createElement(v.Fragment,null,v.createElement(Xt,null),v.createElement(Yt,null)))),ge,e.pageable&&Re,v.createElement(br,{loader:e.loader,showLoader:e.showLoader}));let Ke=e.style||{};return J&&(Ke.height||(Ke=Object.assign({},Ke,{height:"450px"}))),v.createElement(oe,{gridRef:t,gridProps:Oe,columnsRef:E(),columnsMapRef:O,dataRef:y,slicedData:I,isFixedVirtualScroll:ae===Q,id:g,total:$,detailExpandable:!!e.detail},v.createElement(tr,null,v.createElement("div",{id:e.id,style:Ke,className:a.classNames(q.wrapper({size:X,virtual:J}),e.className),"aria-label":e.ariaLabel,...l.tableKeyboardNavigationScopeAttributes},ue,he,v.createElement("div",{className:a.classNames(q.ariaRoot({})),role:"grid","aria-colcount":me.length,"aria-rowcount":$,id:g,"aria-label":B.toLanguageString(Ae,Be[Ae])},fe,v.createElement("div",{className:a.classNames(q.container({})),role:"presentation"},v.createElement(rr,null,v.createElement("div",{className:a.classNames(q.content({})),role:"presentation"},v.createElement("div",{className:a.classNames(q.tableWrap({})),role:"presentation"},v.createElement(er,{selectable:e.selectable,tableClassName:a.classNames(q.table({size:X})),tableStyle:{userSelect:ce}},Te,v.createElement(Jt,{rowReorderable:_},He)),Se&&v.createElement(_t,null,pe.length?pe:v.createElement(Ft,null))),J&&v.createElement("div",{className:a.classNames(q.heightContainer({})),role:"presentation"},v.createElement(nr,{isVirtualScroll:J}))))),Ne,De&&v.createElement(v.Fragment,null,v.createElement(Xt,null),v.createElement(Yt,null)),v.createElement(Ut,null)),ge,e.pageable&&Re,v.createElement(br,{loader:e.loader,showLoader:e.showLoader}))))}));xr.displayName="KendoReactGridComponent";const Er=v.forwardRef(((e,t)=>{const{isPaid:r}={isPaid:!0},[n]=a.useCustomComponent(r?q:v.Fragment);return E===I?v.createElement(n,{...e},v.createElement(_,{id:e.id},v.createElement(xr,{ref:t,...e}))):v.createElement(xr,{ref:t,...e})})),Ir={data:r.oneOfType([r.array,r.shape({data:r.array,total:r.number})]),sortable:r.oneOfType([r.bool,r.shape({mode:r.oneOf(["single","multiple"]),allowUnsort:r.bool})]),onSortChange:r.func,sort:r.array,filterable:r.bool,filter:r.any,onFilterChange:r.func,pageable:r.oneOfType([r.bool,r.shape({buttonCount:r.number,responsive:r.bool,info:r.bool,type:r.oneOf(["numeric","input"]),pageSizes:r.oneOfType([r.bool,r.arrayOf(r.oneOfType([r.string,r.number]))]),previousNext:r.bool})]),pageSize:r.number,onPageChange:r.func,total:r.number,skip:r.number,take:r.number,fixedScroll:r.bool,onExpandChange:r.func,expandField:r.string,selectedField:r.string,onSelectionChange:r.func,onHeaderSelectionChange:r.func,resizable:r.bool,reorderable:r.bool,group:r.any,groupable:r.oneOfType([r.bool,r.shape({enabled:r.bool,footer:r.oneOf(["always","visible","none"])})]),onGroupChange:r.func,onRowClick:r.func,onRowDoubleClick:r.func,onItemChange:r.func,editField:r.string,scrollable:r.oneOf(["none","scrollable","virtual"]),rowHeight:r.number,detailRowHeight:r.number,detail:r.any,style:r.object,onDataStateChange:r.func,onColumnResize:r.func,onColumnReorder:r.func,dataItemKey:r.string,navigatable:r.oneOfType([r.bool,r.shape({mode:r.oneOf(["incell","inline","popup"])})]),size:r.oneOf(["small","medium"])};Er.displayName="KendoReactGrid",Er.propTypes=Ir;const yr=e=>{const{children:t,id:r,className:n,style:l}=e;return v.createElement("div",{id:r,className:a.classNames("k-columnmenu-item-wrapper",n),style:l},t)},Sr=e=>{const{title:t,iconClass:r,svgIcon:n,selected:l}=e;return v.createElement("div",{onClick:e.onClick,className:"k-columnmenu-item "+(l?"k-selected":"")},(r||n)&&v.createElement(a.IconWrap,{name:r&&a.toIconName(r),icon:n}),t)},kr="desc",wr=(e,t)=>t?t.findIndex((t=>t.field===e)):-1,Pr=(e,t)=>!!(t&&e>-1&&"asc"===t[e].dir),Rr=(e,t)=>!!(t&&e>-1&&t[e].dir===kr),Nr=e=>{const{children:t,id:r,className:n,style:l,show:o}=e;return v.createElement("div",{id:r,className:a.classNames("k-columnmenu-item-content",n),style:l,tabIndex:0},v.createElement(f.Reveal,{style:{position:"relative",display:"block"}},o?t:null))},Tr=e=>{const t=(t,r)=>{Ct(t,r,e)},r=t=>{Et(t,e.value,e.onChange)},n=t=>{xt(t,e.onChange)};return v.createElement(v.Fragment,null,(()=>{if("boolean"===e.filterType)return;const t=e.operators.find((t=>t.operator===e.operator))||null;return v.createElement(g.DropDownList,{value:t,onChange:r,data:e.operators,textField:"text"})})(),((e,r,l)=>{switch(e){case"numeric":return v.createElement(c.NumericTextBox,{value:r,onChange:e=>{t(e.value,e.syntheticEvent)},rangeOnEnter:!1});case"date":return v.createElement(d.DatePicker,{value:r,onChange:e=>{t(e.value,e.syntheticEvent)}});case"boolean":{const e=e=>null==e;return v.createElement(g.DropDownList,{onChange:n,value:l.find((t=>t.operator===(e(r)?"":r))),data:l,textField:"text"})}default:return v.createElement(c.Input,{value:r||"",onChange:e=>{t(e.target.value,e.syntheticEvent)}})}})(e.filterType,e.value,e.booleanValues))},Dr=e=>{const{firstFilterProps:t,hideSecondFilter:r,secondFilterProps:n,logicData:l,logicValue:a,onLogicChange:o}=e;return v.createElement(v.Fragment,null,v.createElement(Tr,{...t}),!r&&v.createElement(v.Fragment,null,v.createElement(g.DropDownList,{data:l,value:a,onChange:o,className:"k-filter-and",textField:"text"}),v.createElement(Tr,{...n})))},Mr=e=>e||{filters:[],logic:"and"},Gr=(e,t)=>Mr(t).filters.filter((t=>!!n.isCompositeFilterDescriptor(t)&&(t.filters&&t.filters.length&&!t.filters.find((t=>n.isCompositeFilterDescriptor(t)||t.field!==e)))))[0]||null,Lr={uniqueData:!0},Or=e=>{const[t,r]=v.useState(""),n=e.columns.reduce(((t,r)=>({...t,[r.id||""]:!!e.columnsState.find((e=>e.id===r.id))})),{}),[l,s]=v.useState(n),d=v.useMemo((()=>e.columns.filter((e=>{var r;return null==(r=e.title||e.field)?void 0:r.toLowerCase().includes(t.toLowerCase())}))),[e.columns,t]),u=o.useLocalization(),g=v.useCallback((()=>{const t=e.columns.filter((e=>l[e.id||""]));e.onColumnsChange.call(void 0,t),e.onCloseMenu.call(void 0)}),[l,e.columns,e.onColumnsChange,e.onCloseMenu]),m=v.useMemo((()=>Object.values(l).filter((e=>e)).length),[l]),h=v.useMemo((()=>m===e.columns.length),[e.columns,m]),f=v.useCallback((()=>{const e={...l};Object.keys(e).forEach(((t,r)=>e[t]=!(!h||0!==r)||!h)),s(e)}),[l,h]),C=v.useCallback(((e,t)=>{const r={...l};r[t||""]=e,s(r)}),[l]);return v.createElement("form",{className:"k-filter-menu"},v.createElement("div",{className:"k-filter-menu-container"},v.createElement(c.TextBox,{className:"k-searchbox",value:t,onChange:e=>{r(String(e.target.value))},prefix:()=>v.createElement(c.InputPrefix,null,v.createElement(a.IconWrap,{name:"search",icon:i.searchIcon}))}),v.createElement("ul",{className:"k-reset k-multicheck-wrap"},!t&&v.createElement("li",{className:"k-item k-check-all-wrap"},v.createElement(c.Checkbox,{checked:h,onChange:f,label:u.toLanguageString(Ne,Be[Ne])})),d.map(((e,t)=>v.createElement("li",{key:e.id,className:"k-item"},v.createElement(c.Checkbox,{disabled:l[e.id||""]&&1===m,checked:l[e.id||""],onChange:t=>{var r;return C(!(null==(r=t.target.element)||!r.checked),e.id)},label:e.title||e.field}))))),v.createElement("div",{className:"k-filter-selected-items"},m," selected items"),v.createElement("div",{className:"k-actions k-actions-start k-actions-horizontal"},v.createElement(p.Button,{type:"button",themeColor:"primary",onClick:g},u.toLanguageString(ve,Be[ve])),v.createElement(p.Button,{type:"button",onClick:()=>{s(n)}},u.toLanguageString(xe,Be[xe])))))};Or.displayName="GridColumnMenuColumnsList";const Fr=e=>{const{columnsState:t,onCloseMenu:r,onColumnsStateChange:n}=e,l=o.useLocalization(),[s,d]=v.useState(""),u=t.reduce(((e,t)=>({...e,[t.id||""]:!t.hidden})),{}),[g,m]=v.useState(u),h=v.useMemo((()=>(null==t?void 0:t.filter((e=>{var t;return null==(t=e.title||e.field)?void 0:t.toLowerCase().includes(s.toLowerCase())})))||[]),[t,s]),f=v.useMemo((()=>Object.values(g).filter((e=>e)).length),[g]),C=v.useMemo((()=>f===(null==t?void 0:t.length)),[t,f]),b=v.useCallback((e=>{const l=(e=>(null==e?void 0:e.map((e=>({...e,hidden:!g[e.id||""]}))))||[])(t);n&&n(l),null==r||r.call(void 0)}),[g,t,r]),x=v.useCallback((()=>{const e={...g};Object.keys(e).forEach(((t,r)=>e[t]=!(!C||0!==r)||!C)),m(e)}),[g,C]),E=v.useCallback(((e,t)=>{const r={...g};r[t||""]=e,m(r)}),[g]);return v.createElement("form",{className:"k-filter-menu"},v.createElement("div",{className:"k-filter-menu-container"},v.createElement(c.TextBox,{className:"k-searchbox",value:s,onChange:e=>{d(String(e.target.value))},prefix:()=>v.createElement(c.InputPrefix,null,v.createElement(a.IconWrap,{name:"search",icon:i.searchIcon}))}),v.createElement("ul",{className:"k-reset k-multicheck-wrap"},!s&&v.createElement("li",{className:"k-item k-check-all-wrap"},v.createElement(c.Checkbox,{checked:C,onChange:x,label:l.toLanguageString(Ne,Be[Ne])})),h.map(((e,t)=>v.createElement("li",{key:e.id,className:"k-item"},v.createElement(c.Checkbox,{disabled:g[e.id||""]&&1===f,checked:g[e.id||""],onChange:t=>{var r;return E(!(null==(r=t.target.element)||!r.checked),e.id)},label:e.title||e.field}))))),v.createElement("div",{className:"k-filter-selected-items"},f," selected items"),v.createElement("div",{className:"k-actions k-actions-start k-actions-horizontal"},v.createElement(p.Button,{type:"button",themeColor:"primary",onClick:b},l.toLanguageString(ve,Be[ve])),v.createElement(p.Button,{type:"button",onClick:()=>{m(u)}},l.toLanguageString(xe,Be[xe])))))};Fr.displayName="GridColumnMenuColumnsChooser";const Hr=e=>{const{size:t,className:r,ariaLabel:n,ariaControls:l,children:o}=e;return v.createElement("div",{className:a.classNames("k-toolbar k-grid-toolbar k-toolbar-solid",{"k-toolbar-md":!t,[`k-toolbar-${a.kendoThemeMaps.sizeMap[t]||t}`]:t},r),"aria-label":n,"aria-controls":l,role:"toolbar"},o)};Hr.displayName="KendoReactGridToolbar";const Kr=e=>{const{data:t=[]}=e;return v.createElement("div",{className:"k-selection-aggregates k-grid-selection-aggregates"},t.map(((e,t)=>v.createElement("div",{key:t},v.createElement("span",{className:"k-selection-aggregates-item-text"},e.type,": "),v.createElement("span",{className:"k-selection-aggregates-item-value"},e.formattedValue)))))};Kr.displayName="KendoReactGridStatusBar";const Ar=e=>{var t;const r=e.slice();for(let e=0;e<r.length;e++)for(;r[e]&&null!=(t=r[e].children)&&t.length;)r.splice(e,1,...r[e].children);return r};Object.defineProperty(e,"getSelectedState",{enumerable:!0,get:function(){return l.getSelectedState}}),Object.defineProperty(e,"getSelectedStateFromKeyDown",{enumerable:!0,get:function(){return l.getSelectedStateFromKeyDown}}),Object.defineProperty(e,"setSelectedState",{enumerable:!0,get:function(){return l.setSelectedState}}),e.GRID_COL_INDEX_ATTRIBUTE=X,e.GRID_PREVENT_SELECTION_ELEMENT=Y,e.GRID_ROW_INDEX_ATTRIBUTE=$,e.Grid=Er,e.GridCell=Tt,e.GridColumn=b,e.GridColumnMenuCheckboxFilter=e=>{const{uniqueData:t=Lr.uniqueData}=e,r=(t,r)=>{const n=e.column.field||"",l=t.map((e=>k(n,e)));return r?l.filter(((e,t)=>l.indexOf(e)===t)):l},l=()=>e.filter?a.clone(e.filter):{filters:[],logic:"and"},s=v.useRef((()=>{const t=e.column.field;return l().filters.findIndex((e=>e.filters&&e.filters.length>0&&e.filters[0].field===t))})()),[d,u]=v.useState(e.expanded||!1),[g,m]=v.useState(""),[h,f]=v.useState(r(e.data,t)||[]),[C,b]=v.useState(r(e.data,!1)||[]),[x,E]=v.useState(l());v.useEffect((()=>{const t=e.column.field||"",r=e.data.map((e=>k(t,e)));((e,t)=>e.length===t.length&&e.every(((e,r)=>e===t[r])))(r,C)||(f(r),b(r))}),[e.column,e.data]);const I=()=>void 0!==e.expanded,y=l=>{const a=e.searchBoxFilterOperator?e.searchBoxFilterOperator:"startswith",o={logic:"and",filters:[{field:e.column.field,operator:a,value:l.target.value,ignoreCase:!0}]};m(l.target.value),f(r(n.filterBy(e.data||[],o),t))},S=(t,r)=>{const n=e.column.field||"",l={...x},a=[...x.filters];let o=[];if(-1!==s.current&&l.filters[s.current].filters&&"all"!==r&&(o=l.filters[s.current].filters),t.value&&"all"===r)h.forEach((e=>{o.push({field:n,operator:"eq",value:e})}));else if(t.value)o.push({field:n,operator:"eq",value:r});else if(x){const e=o.findIndex((e=>e.value===r));o.splice(e,1)}l.logic="and",-1!==s.current?a[s.current]={logic:"or",filters:o}:a.push({logic:"or",filters:o}),(!t.value&&"all"===r||0===o.length)&&a.splice(s.current,1),l.filters=a,E(l)},w=o.useLocalization(),{column:P}=e;if(!P||!P.field)return v.createElement("div",null);const R=I()?e.expanded:d,N=[];if(x){const t=[...x.filters];s.current=t.findIndex((e=>!!(e.filters&&e.filters.length>0)&&e.filters[0].field===P.field)),-1!==s.current&&t[s.current].filters.length>0&&t[s.current].filters.forEach((t=>{t.field===e.column.field&&N.push(t.value)}))}const T=w.toLanguageString(be,Be[be]),D=e.searchBox?v.createElement(e.searchBox,{value:g,onChange:y}):v.createElement("div",{className:"k-searchbox k-textbox k-input k-input-md k-input-solid"},v.createElement(a.IconWrap,{className:"k-input-icon",name:"search",icon:i.searchIcon}),v.createElement(c.Input,{className:"k-input-inner",type:"text",placeholder:w.toLanguageString(ke,Be[ke]),value:g,onChange:e=>y(e.nativeEvent)}),v.createElement(p.Button,{type:"button",rounded:null,className:"k-input-button",onClick:()=>{const l=e.searchBoxFilterOperator?e.searchBoxFilterOperator:"startswith",a={logic:"and",filters:[{field:e.column.field,operator:l,value:"",ignoreCase:!0}]};m(""),f(r(n.filterBy(e.data||[],a),t))},icon:"x","aria-label":T,svgIcon:i.xIcon})),M=N.filter(((e,t)=>N.indexOf(e)===t));return v.createElement(yr,null,v.createElement(Sr,{title:w.toLanguageString(Ie,Be[Ie]),iconClass:"k-i-filter",svgIcon:i.filterIcon,onClick:()=>{const t=I(),r=!(t?e.expanded:d);e.onExpandChange&&e.onExpandChange(r),t||u(r)}}),v.createElement(Nr,{show:!!R},v.createElement("form",{className:"k-filter-menu",onSubmit:t=>{if(t.preventDefault(),!e.onFilterChange)return;const r=x||null;e.onFilterChange(r,t),e.onCloseMenu&&e.onCloseMenu()},onReset:t=>{if(t.preventDefault(),!e.onFilterChange)return;const r=x||null;null!==r&&r.filters.length>0?(s.current>=0&&r.filters.splice(s.current,1),e.onFilterChange(r,t)):e.onFilterChange(null,t),e.onCloseMenu&&e.onCloseMenu()}},v.createElement("div",{className:"k-filter-menu-container"},D,v.createElement("ul",{className:"k-reset k-multicheck-wrap"},v.createElement("li",{className:"k-item k-check-all-wrap"},v.createElement(c.Checkbox,{label:w.toLanguageString(Pe,Be[Pe]),onChange:e=>S(e,"all"),checked:(()=>{let e=!1;if(x){const t=[...x.filters];return-1!==s.current&&(e=h.every((e=>!(-1===s.current||!t[s.current].filters)&&t[s.current].filters.findIndex((t=>t.value===e))>=0)),e)}return e})()})),h.map(((e,t)=>v.createElement("li",{className:"k-item",key:t},v.createElement(c.Checkbox,{label:String(e),onChange:t=>S(t,e),checked:M.includes(e)}))))),v.createElement("div",{className:"k-filter-selected-items"},M.length+" "+w.toLanguageString(Te,Be[Te])),v.createElement("div",{className:"k-actions k-hstack k-justify-content-stretch"},v.createElement(p.Button,{themeColor:"primary",type:"submit"},w.toLanguageString(Ee,Be[Ee])),v.createElement(p.Button,{className:"k-button",type:"reset"},w.toLanguageString(be,Be[be])))))))},e.GridColumnMenuColumnsChooser=Fr,e.GridColumnMenuColumnsList=Or,e.GridColumnMenuFilter=e=>{const t=v.useCallback((()=>{let t;if(e.column&&e.column.field){const r=bt(e.column.filter),n=vt(e.filterOperators,r);t=Gr(e.column.field,e.filter),t=t?{...t,filters:t.filters.map((e=>({...e})))}:{logic:"and",filters:[{field:e.column.field,operator:n,value:gt(n)?null:void 0},{field:e.column.field,operator:n,value:gt(n)?null:void 0}]},1===t.filters.filter((t=>t.field===e.column.field)).length&&t.filters.splice(1,0,{field:e.column.field,operator:n})}return t}),[e.column]),[r,n]=v.useState(e.expanded||!1),[l,a]=v.useState(t()),s=()=>void 0!==e.expanded,c=(e,t)=>{const r=l.filters.map(((r,n)=>n===e?{...r,value:t.value,operator:t.operator}:r));a({...l,filters:r})},d=()=>({...l,filters:l.filters.filter((e=>void 0!==e.value&&null!==e.value&&""!==e.value||null===e.value&&e.operator))}),{column:u,filterUI:g,hideSecondFilter:m,filterOperators:h}=e,f=o.useLocalization();if(!u||!u.field)return v.createElement("div",null);const C=bt(u.filter),b=void 0!==m?m:ft[C],x=l.filters,E=mt(h[C],f),I=mt(ht,f),y={field:u.field,value:x[0].value,operator:x[0].operator,operators:E,booleanValues:I,onChange:e=>{c(0,e)},filterType:C},S={field:u.field,value:x[1].value,operator:x[1].operator,operators:E,booleanValues:I,onChange:e=>{c(1,e)},filterType:C},k=l.logic,w=mt(ut,f),P={value:w.find((e=>e.operator===(null===k?"":k))),onChange:e=>{a({...l,logic:e.target.value.operator})},data:w},R=g,N={firstFilterProps:y,secondFilterProps:S,logicData:P.data,logicValue:P.value,onLogicChange:P.onChange,hideSecondFilter:b},T=0!==d().filters.length||gt(x[0].operator)||gt(x[1].operator),D=s()?e.expanded:r,M=e.alwaysExpand;return v.createElement(yr,null,!M&&v.createElement(Sr,{title:f.toLanguageString(Ie,Be[Ie]),iconClass:"k-i-filter",svgIcon:i.filterIcon,onClick:()=>{const t=s(),l=!(t?e.expanded:r);e.onExpandChange&&e.onExpandChange(l),t||n(l)}}),v.createElement(Nr,{show:M||!!D},v.createElement("form",{className:"k-filter-menu",onSubmit:t=>{if(t.preventDefault(),!e.onFilterChange)return;const r=e.column.field,n=Mr(e.filter),l=Gr(r,e.filter),a=d();let o=null;if(l&&a.filters.length>0){const e=n.filters.map((e=>e===l?a:e));o={...n,filters:e}}else if(0===a.filters.length){const e=n.filters.filter((e=>e!==l));e.length&&(o={...n,filters:e})}else o={...n,filters:[...n.filters,a]};e.onFilterChange(o,t),e.onCloseMenu&&e.onCloseMenu()},onReset:t=>{if(t.preventDefault(),!e.onFilterChange)return;const r=e.column.field,n=Mr(e.filter),l=Gr(r,e.filter),a=n.filters.filter((e=>e!==l));a.length?e.onFilterChange({...n,filters:a},t):e.onFilterChange(null,t),e.onCloseMenu&&e.onCloseMenu()}},v.createElement("div",{className:"k-filter-menu-container"},R?v.createElement(R,{...N}):v.createElement(Dr,{...N}),v.createElement("div",{className:"k-actions k-actions-stretched"},v.createElement(p.Button,{themeColor:"primary",disabled:!T},f.toLanguageString(Ee,Be[Ee])),v.createElement(p.Button,{type:"reset"},f.toLanguageString(be,Be[be])))))))},e.GridColumnMenuFilterCell=Tr,e.GridColumnMenuFilterUI=Dr,e.GridColumnMenuGroup=e=>{const{group:t,column:r}=e,n=o.useLocalization(),l=!!(t&&r.field&&t.find((e=>e.field===r.field))),a=l?fe:he;return v.createElement(yr,null,v.createElement(Sr,{title:n.toLanguageString(a,Be[a]),iconClass:l?"k-i-ungroup":"k-i-group",svgIcon:l?i.ungroupIcon:i.groupIcon,onClick:t=>{if(t.preventDefault(),e.onGroupChange){if(!e.column.field)return;const r=(e.group||[]).slice(),n=r.findIndex((t=>t.field===e.column.field));n>-1?r.splice(n,1):r.push({field:e.column.field}),e.onGroupChange(r,t)}e.onCloseMenu&&e.onCloseMenu()}}))},e.GridColumnMenuItem=Sr,e.GridColumnMenuItemContent=Nr,e.GridColumnMenuItemGroup=yr,e.GridColumnMenuSort=e=>{const t=(t,r)=>{if(t.preventDefault(),!e.onSortChange)return;const{allowUnsort:n,mode:l}=re(e.sortable||!1,!1),a=(e.sort||[]).filter((t=>t.field===e.column.field))[0],o=ne[n][a&&a.dir||""][r],i="single"===l?[]:(e.sort||[]).filter((t=>t.field!==e.column.field));""!==o&&e.column.field&&i.push({field:e.column.field,dir:o}),e.onSortChange(i,t)},{sort:r,column:n}=e,l=wr(n.field,r),a=o.useLocalization();return v.createElement(yr,null,v.createElement(Sr,{title:a.toLanguageString(ye,Be[ye]),iconClass:"k-i-sort-asc-sm",svgIcon:i.sortAscSmallIcon,selected:Pr(l,r),onClick:r=>{t(r,"asc"),e.onCloseMenu&&e.onCloseMenu()}}),v.createElement(Sr,{title:a.toLanguageString(Se,Be[Se]),iconClass:"k-i-sort-desc-sm",svgIcon:i.sortDescSmallIcon,selected:Rr(l,r),onClick:r=>{t(r,kr),e.onCloseMenu&&e.onCloseMenu()}}))},e.GridColumnMenuWrapper=et,e.GridCommonDragLogic=j,e.GridContextMenu=te,e.GridContextMenuAnchorPart=y,e.GridContextMenuItemNames=S,e.GridDetailRow=e=>null,e.GridEditCell=Ye,e.GridFilterCell=It,e.GridGroupCell=Gt,e.GridHeaderCell=tt,e.GridHierarchyCell=je,e.GridNoRecords=Ft,e.GridRow=Lt,e.GridSearchBox=e=>{const t=o.useLocalization(),r=v.useContext(ae),[n]=W(),s=l.getStringFromSearch(n.search),d=a.classNames("k-grid-search","k-searchbox",e.className),u=t.toLanguageString(we,Be[we]);return v.createElement(c.TextBox,{placeholder:u,value:s,prefix:()=>v.createElement(c.InputPrefix,{orientation:"horizontal"},v.createElement(a.SvgIcon,{icon:i.searchIcon})),...e,className:d,onChange:t=>{r.searchChange(t),e.onChange&&e.onChange.call(void 0,t)}})},e.GridSelectionCell=qe,e.GridToolbar=Hr,e.StatusBar=Kr,e.booleanFilterValues=ht,e.cellBoolDropdownChange=xt,e.cellInputChange=Ct,e.cellOperatorChange=Et,e.contextMenuItemsMap=ee,e.filterGroupByField=Gr,e.getStatusData=e=>{const{dataItems:t,target:r}=e,n=Ar(r.columns).map((e=>e.field)).filter((e=>e&&"string"==typeof e)).map((e=>a.getter(e))),l="selectedField"in e?a.getter(e.selectedField):t=>e.select[a.getter(e.dataItemKey)(t)],o={dates:[],numbers:[],booleans:[],others:[]};t.forEach((e=>{const t=l(e);t&&t.forEach((t=>{(e=>{"number"==typeof e?o.numbers.push(e):"boolean"==typeof e?o.booleans.push(e):e instanceof Date?o.dates.push(e):o.others.push(e)})(n[t](e))}))}));const i=o.dates.map((e=>e.getTime())),s=o.booleans.filter((e=>e)).length,c=o.booleans.filter((e=>!e)).length,d=o.numbers.length?o.numbers.reduce(((e,t)=>e+t),0):void 0,u={sum:d,average:"number"==typeof d?d/o.numbers.length:void 0,min:o.numbers.length?Math.min(...o.numbers):void 0,max:o.numbers.length?Math.max(...o.numbers):void 0,count:o.numbers.length+o.booleans.length+o.dates.length+o.others.length,isTrue:s>0?s:void 0,isFalse:c>0?c:void 0,earliest:o.dates.length?new Date(Math.min(...i)):void 0,latest:o.dates.length?new Date(Math.max(...i)):void 0},p=(e,t)=>"sum"!==t&&"average"!==t||"number"!=typeof e?("earliest"===t||"latest"===t)&&e instanceof Date?e.toLocaleDateString():String(e):e.toFixed(2),g=[];return Object.keys(u).forEach((e=>{const t=e,r=u[t];void 0!==r&&g.push({type:t,value:r,formattedValue:p(r,t)})})),g},e.gridMessages=Be,e.isColumnMenuFilterActive=(e,t)=>!!Gr(e,t),e.isColumnMenuSortActive=(e,t)=>{const r=wr(e,t);return Rr(r,t)||Pr(r,t)},e.leafColumns=Ar,e.operators=pt,e.pagerFirstPage=ce,e.pagerInfo=se,e.pagerItemPerPage=ge,e.pagerLastPage=pe,e.pagerNextPage=ue,e.pagerPreviousPage=de,e.rootFilterOrDefault=Mr}));
|