@progress/kendo-react-grid
Version:
React Data Grid (Table) provides 100+ ready-to-use data grid features. KendoReact Grid package
15 lines • 191 kB
JavaScript
/**
* @license
*-------------------------------------------------------------------------------------------
* Copyright © 2025 Progress Software Corporation. All rights reserved.
* Licensed under commercial license. See LICENSE.md in the package root for more information
*-------------------------------------------------------------------------------------------
*/
/**
* @license
*-------------------------------------------------------------------------------------------
* Copyright © 2025 Progress Software Corporation. All rights reserved.
* Licensed under commercial license. See LICENSE.md in the package root for more information
*-------------------------------------------------------------------------------------------
*/
!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-inputs"),require("@progress/kendo-react-dateinputs"),require("@progress/kendo-react-popup"),require("@progress/kendo-react-layout"),require("@progress/kendo-react-buttons"),require("react-dom"),require("@progress/kendo-react-dropdowns"),require("@progress/kendo-react-indicators"),require("@progress/kendo-react-labels"),require("@progress/kendo-react-dialogs"),require("@progress/kendo-react-form"),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-inputs","@progress/kendo-react-dateinputs","@progress/kendo-react-popup","@progress/kendo-react-layout","@progress/kendo-react-buttons","react-dom","@progress/kendo-react-dropdowns","@progress/kendo-react-indicators","@progress/kendo-react-labels","@progress/kendo-react-dialogs","@progress/kendo-react-form","@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.KendoReactInputs,e.KendoReactDateinputs,e.KendoReactPopup,e.KendoReactLayout,e.KendoReactButtons,e.ReactDOM,e.KendoReactDropdowns,e.KendoReactIndicators,e.KendoReactLabels,e.KendoReactDialogs,e.KendoReactForm,e.KendoReactAnimation)}(this,(function(e,t,n,l,r,o,a,i,s,c,d,u,m,p,g,f,h,v,E,C){"use strict";function b(e){var t=Object.create(null);return e&&Object.keys(e).forEach((function(n){if("default"!==n){var l=Object.getOwnPropertyDescriptor(e,n);Object.defineProperty(t,n,l.get?l:{enumerable:!0,get:function(){return e[n]}})}})),t.default=e,Object.freeze(t)}var k=b(t);const x=e=>null;x.displayName="KendoReactGridColumn";const y={filterable:!0,editable:!0,sortable:!0,resizable:!0,reorderable:!0,groupable:!0};x.propTypes={field:n.string,title:n.string,editable:n.bool,sortable:n.oneOfType([n.bool,n.shape({allowUnsort:n.bool.isRequired})]),cell:n.any,filterCell:n.any,filterTitle:n.string,filterable:n.bool,filter:n.oneOf(["text","numeric","boolean","date"]),editor:n.oneOf(["text","numeric","boolean","date"]),width:n.oneOfType([n.string,n.number]),minResizableWidth:n.number,headerCell:n.any,footerCell:n.any,headerSelectionValue:n.bool,format:n.string,headerClassName:n.string,className:n.string,reorderable:n.bool,resizable:n.bool,orderIndex:n.number,groupable:n.bool,columnMenu:n.any,menuIcon:n.any,locked:n.bool,hidden:n.bool,media:n.string};const I=()=>t.createElement(t.Fragment,null),S=I;var w=(e=>(e.head="head",e.body="body",e))(w||{}),R=(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))(R||{});function N(e,t){const n=(null!=e?e:"").split(".");let l=t;return n.forEach((e=>{l=l?l[e]:void 0})),l}function P(e,t,n,o,a,i,s,c,d,u=0,m){var p;let g=u;for(let f=0;f<t.length;f++){let h;if(!a||void 0===t[f].value||void 0===t[f].items){e[e.length]={dataIndex:o.index,dataItem:t[f],rowType:"data",level:u,group:m,expanded:null!=(p=!!d&&!(null==i||!i[l.getter(d)(t[f])]))&&p},o.index++;continue}{let e;e=null!=m&&m.parents?[{field:m.field,value:m.value},...m.parents]:m?[m]:[],h={field:t[f].field,value:t[f].value,parents:e}}g=Math.max(g,u+1);let v=!1;const E=r.findGroupExpand(s||[],h);v=E?!1!==E.expanded:!1!==c,e[e.length]={dataIndex:-1,dataItem:t[f],level:u,group:h,rowType:"groupHeader",expanded:v},v&&(h.expanded=v,g=Math.max(P(e,t[f].items,n,o,a,i,s,c,d,u+1,h),g)),("always"===n||v&&"visible"===n)&&(e[e.length]={dataIndex:-1,dataItem:t[f],rowType:"groupFooter",level:u,expanded:v})}return g}function M(e,t,n,l=0,a=!1){const i=[];if(!e)return[];e&&void 0===e.length&&(e=[e]),e.forEach(((e,s)=>{const c=(e=e.props?e.props:e).id?e.id:r.tableKeyboardNavigationTools.generateNavigatableId(""+n.prevId++,n.idPrefix,"column"),d=!!(o.canUseDOM&&e.media&&window.matchMedia)&&!window.matchMedia(e.media).matches,u=a||d||e.hidden,m=null==t?void 0:t.find((e=>e.id===c)),p=M(e.children,(null==m?void 0:m.children)||[],n,l+1,u);i.push(Object.assign({depth:l},y,p.length?{cell:()=>null,filterCell:()=>null}:{},e,{id:c,declarationIndex:i.length,children:p,headerColSpan:0,rowSpan:0,columnType:e.columnType||"data",colSpan:e.colSpan||1,isAccessible:!0,hidden:u,left:null,right:null,rowSpannable:e.rowSpannable},m?{width:m.width,orderIndex:m.orderIndex}:{}))}));if(i.sort(((e,t)=>e.orderIndex===t.orderIndex?e.declarationIndex-t.declarationIndex:(e.orderIndex||0)-(t.orderIndex||0))),0===l){const e=[],t=(n,l)=>n.forEach((n=>{n.parentIndex=l,t(n.children,e.push(n)-1)}));return t(i,-1),e}return i}const T=e=>Array.isArray(e)?e:e?e.data:[];const D=e=>void 0!==e.width?Math.floor(parseFloat(e.width.toString()))+"px":void 0,L=(e,t)=>t&&t.filter((t=>t.field===e)).length>0,A=e=>(e.sort(((e,t)=>e.declarationIndex-t.declarationIndex)),e.map((e=>{const{declarationIndex:t,parentIndex:n,depth:l,headerColSpan:r,rowSpan:o,index:a,kFirst:i,children:s,...c}=e;return s.length?{children:A(s),...c}:c}))),F=e=>{const{cells:t,rowSpannable:n,defaultCell:l,...r}=e;return e.children.length?{...r,children:e.children.map(F)}:r},G=e=>({id:e.id,field:e.field,title:e.title,width:e.width,hidden:!1,children:e.children?B(e.children):null}),B=e=>e.map(G),O=e=>{const t=[],n=e=>null==e?void 0:e.forEach((e=>{t.push(e),n(e.children)}));return n(e),t},z="undefined"!=typeof window&&/Firefox/.test(window.navigator.userAgent),K=(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},V=e=>!(!e||e.$$typeof!==Symbol.for("react.client.reference")),W=e=>({id:e.id,ariaColumnIndex:e.ariaColumnIndex,isSelected:e.isSelected,isHighlighted:e.isHighlighted,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,locked:e.locked,isRtl:e.isRtl,rowDataIndex:e.rowDataIndex,columnPosition:e.columnPosition,group:e.group}),q=e=>{var t,n;const r="object"==typeof e?null==(t=e.enabled)||t:null!=e&&e,o="object"==typeof e&&null!=(n=e.valueGetter)?n:(e,t)=>l.getter(t)(e);return{enabled:r,valueGetter:o}},_=(e,t)=>{const n=(e=>{var t;return k.isValidElement(e)?e:null==(t=k.Children.toArray(e))?void 0:t[0]})(e);return n?k.cloneElement(n,t):null},U=t.createContext([{},()=>{},{}]),j=()=>t.useContext(U),$=e=>{var n,l,r,o,a,i,s,c,d,u,m,p,g,f,h,v,E,C,b,k,x,y;const{children:I,onEditChange:S,onFilterChange:w,onSortChange:R,onSearchChange:N,onPageChange:P,onGroupChange:M,onDataStateChange:T,onSelectionChange:D,onDetailExpandChange:L,onGroupExpandChange:A,onHeaderSelectionChange:F,onColumnsStateChange:G}=e,[B,O]=t.useState({edit:null!=(n=e.defaultEdit)?n:e.edit,filter:null!=(l=e.defaultFilter)?l:e.filter,select:null!=(r=e.defaultSelect)?r:e.select,search:null!=(o=e.defaultSearch)?o:e.search,sort:null!=(a=e.defaultSort)?a: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!=(m=e.defaultColumnsState)?m:e.columnsState}),z={edit:null!=(p=e.edit)?p:B.edit,filter:null!=(g=e.filter)?g:B.filter,search:null!=(f=e.search)?f:B.search,sort:null!=(h=e.sort)?h:B.sort,take:null!=(v=e.take)?v:B.take,skip:null!=(E=e.skip)?E:B.skip,group:null!=(C=e.group)?C:B.group,select:null!=(b=e.select)?b:B.select,detailExpand:null!=(k=e.detailExpand)?k:B.detailExpand,groupExpand:null!=(x=e.groupExpand)?x:B.groupExpand,columnsState:null!=(y=e.columnsState)?y:B.columnsState};return t.createElement(U.Provider,{value:[z,e=>{},{onEditChange:e=>{O((t=>({...t,edit:e.edit}))),null==S||S(e)},onFilterChange:w&&(e=>{O((t=>({...t,filter:e.filter}))),null==w||w(e)}),onSearchChange:e=>{O((t=>({...t,search:e.search}))),null==N||N(e)},onSortChange:R&&(e=>{O((t=>({...t,sort:e.sort}))),null==R||R(e)}),onPageChange:P&&(e=>{O((t=>({...t,...e.page}))),null==P||P(e)}),onGroupChange:M&&(e=>{O((t=>({...t,group:e.group}))),null==M||M(e)}),onDataStateChange:e=>{O((t=>({...t,...e.dataState}))),null==T||T(e)},onSelectionChange:e=>{O((t=>({...t,select:e.select}))),null==D||D(e)},onHeaderSelectionChange:e=>{O((t=>({...t,select:e.select}))),null==F||F(e)},onDetailExpandChange:e=>{O((t=>({...t,detailExpand:e.detailExpand}))),null==L||L(e)},onGroupExpandChange:e=>{O((t=>({...t,groupExpand:e.groupExpand}))),null==A||A(e)},onColumnsStateChange:e=>{O((t=>({...t,columnsState:e.columnsState}))),null==G||G(e)}}]},I)},X=e=>{const t=o.useId(),n=e.id||t,l=o.useUnstyled(),r=a.useLocalization(),i=a.useInternationalization(),[,s]=k.useReducer((e=>!e),!0),c=k.useRef(0),d=k.useRef(0),u=k.useRef(0),m=k.useRef(0),p=k.useRef(0),[g,,f]=j();return _(e.children,{...g,...f,id:n,unstyled:l,localization:r,intl:i,scrollLeftRef:c,widthRef:d,containerHeightRef:u,minRowHeightRef:m,virtualSkipRef:p,forceUpdate:s,isClient:!0})},Y=k.createContext(void 0),J="grid.noRecords",Q="grid.pagerInfo",Z="grid.pagerFirstPage",ee="grid.pagerPreviousPage",te="grid.pagerNextPage",ne="grid.pagerLastPage",le="grid.pagerItemsPerPage",re="grid.groupPanelEmpty",oe="grid.groupColumn",ae="grid.ungroupColumn",ie="grid.columnMenu",se="grid.filterApplyButton",ce="grid.filterClearButton",de="grid.filterClearAllButton",ue="grid.filterResetButton",me="grid.filterSubmitButton",pe="grid.filterTitle",ge="grid.sortAscending",fe="grid.sortDescending",he="grid.sortClearButton",ve="grid.sortApplyButton",Ee="grid.searchPlaceholder",Ce="grid.searchboxPlaceholder",be="grid.exportPDF",ke="grid.filterCheckAll",xe="grid.filterChooseOperator",ye="grid.filterSelectAll",Ie="grid.filterSelectedItems",Se="grid.sortAriaLabel",we="grid.editDialogTitle",Re="grid.editDialogSaveButtonTitle",Ne="grid.editDialogCancelButtonTitle",Pe="grid.filterAriaLabel",Me="grid.groupPanelAriaLabel",Te="grid.groupExpand",De="grid.groupCollapse",Le="grid.groupClearButton",Ae="grid.groupApplyButton",Fe="grid.detailExpand",Ge="grid.detailCollapse",Be="grid.selectRow",Oe="grid.gridAriaLabel",ze="grid.gridRowReorderAriaLabel",Ke="grid.gridAdaptiveColumnMenuFilterTitle",He="grid.columnMenuColumnChooserSelectedItems",Ve="grid.adaptiveColumnMenuChooserTitle",We="grid.adaptiveColumnMenuChooserSubTitle",qe="grid.adaptiveColumnMenuCheckboxFilterTitle",_e="grid.adaptiveToolbarSortTitle",Ue="grid.adaptiveToolbarGroupTitle",je="grid.toolbarSort",$e="grid.toolbarGroup",Xe="grid.toolbarFilter",Ye="grid.toolbarColumnsChooser",Je="grid.toolbarCheckboxFilter",Qe={[Fe]:"Expand detail row",[Ge]:"Collapse detail row",[Te]:"Expand group",[De]:"Collapse Group",[Le]:"Clear grouping",[Ae]:"Done",[J]:"No records available",[re]:"Drag a column header and drop it here to group by that column",[se]:"Apply",[ce]:"Clear",[de]:"Clear all filters",[ue]:"Reset",[me]:"Filter",[pe]:"Filter",[ge]:"Sort Ascending",[fe]:"Sort Descending",[he]:"Clear sorting",[ve]:"Done",[Se]:"Sortable",[_e]:"Sort by",[Ue]:"Group by",[je]:"Sort",[$e]:"Group",[Xe]:"Filter",[Ye]:"Columns",[Je]:"Filter",[oe]:"Group Column",[ae]:"Ungroup Column",[ie]:"Column menu",[le]:"items per page",[Q]:"{0} - {1} of {2} items",[Z]:"Go to the first page",[ee]:"Go to the previous page",[te]:"Go to the next page",[ne]:"Go to the last page","grid.pagerPage":"Page","grid.pagerPageSizeAriaLabel":"Page size","grid.pagerOf":"of","grid.pagerTotalPages":"{0}",[Ee]:"Search",[Ce]:"Search...",[be]:"Export PDF",[ke]:"Check All",[we]:"Edit Dialog",[Re]:"Save",[Ne]:"Cancel",[xe]:"Choose Operator",[Ie]:"selected items",[ye]:"Select All",[Pe]:"Filter",[Me]:"Group panel",[Oe]:"Table",[ze]:"Drag row",[Be]:"Select Row","grid.columnMenuColumnChooserTitle":"Columns Chooser",[Ke]:"Filter by",[Ve]:"Columns Chooser",[We]:"Selected fields are visible",[qe]:"Filter by",[He]:"Selected items","grid.columnChooserApplyButton":"Apply","grid.columnChooserResetButton":"Reset","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"},Ze=e=>{const t=k.useContext(Y),n=a.useLocalization(),l=e.expanded,s=l?Ge:Fe,c=n.toLanguageString(s,Qe[s]);return k.createElement("a",{onClick:n=>{n.preventDefault(),null!=t&&t.itemChange&&t.itemChange({dataItem:e.dataItem,dataIndex:e.dataIndex,syntheticEvent:n,field:e.field,value:!l,_expand:!0}),void 0!==e.dataItem[t.dataItemKey]&&(null==t||t.dispatchDetailExpand({type:r.DETAIL_EXPAND_ACTION.TOGGLE,id:e.dataItem[t.dataItemKey]}))},"aria-label":c,href:"#",tabIndex:-1},k.createElement(o.IconWrap,{name:l?"minus":"plus",icon:l?i.minusIcon:i.plusIcon}))},et=e=>{let t=null,n=null;const l=W(e);return"groupFooter"===e.rowType?t={className:"k-table-td k-hierarchy-cell",role:"gridcell"}:"groupHeader"!==e.rowType&&(t={className:"k-table-td k-hierarchy-cell",role:"gridcell","aria-expanded":!!e.expanded,"aria-colindex":e.ariaColumnIndex},n=k.createElement(Ze,{...l})),{tdProps:t,content:n}},tt=e=>{var t,n;return null==(n=null==(t=e.cells)?void 0:t.hierarchy)?void 0:n[e.rowType||"data"]},nt=e=>{const t=k.useContext(Y),n=r.useTableKeyboardNavigation(e.id),l=k.useCallback((n=>{n.isDefaultPrevented()||n.keyCode===o.Keys.enter&&null!=t&&t.dispatchDetailExpand&&(n.preventDefault(),t.dispatchDetailExpand({type:r.DETAIL_EXPAND_ACTION.TOGGLE,id:o.getter(t.dataItemKey)(e.dataItem)}))}),[e.dataItem,t]);return{...n,..."groupHeader"!==e.rowType&&"groupFooter"!==e.rowType?{onKeyDown:l}:{}}},lt=e=>{const t=k.useContext(Y);return{onContextMenu:t.onContextMenu,onChange:t.itemChange,selectionChange:n=>{t.selectionChange({event:n,dataItem:e.dataItem,dataIndex:e.rowDataIndex,columnIndex:e.columnIndex})}}},rt=(e,t)=>{const n=k.useContext(Y);return k.useCallback((l=>{null!=n&&n.onContextMenu&&n.onContextMenu.call(void 0,l,e,t)}),[n,e,t])},ot=e=>{const t=k.useContext(Y).getCellPositionStyle(e.columnPosition)||{};return{...e.style,...t}},at=e=>{const{cellProps:t}=e,{tdProps:n,content:l}=et(t),r=nt(t),o=lt(t),a=tt(t);return a?k.createElement(a,{...t,...o,tdProps:{...n,...r}},l):"groupHeader"!==t.rowType?k.createElement("td",{...n,...r},l):null},it=e=>{const{cellProps:t}=e,n=k.useContext(Y),l=o.useId(),a=o.getNestedValue(t.field,t.dataItem);let i=null;const d=k.useCallback((e=>{null!=n&&n.itemChange&&n.itemChange({dataItem:t.dataItem,dataIndex:t.dataIndex,field:t.field,syntheticEvent:e.syntheticEvent,value:e.value})}),[n,t.dataItem,t.dataIndex,t.field]);switch(t.editor){case"numeric":i=k.createElement(s.NumericTextBox,{className:e.className,value:void 0===a?null:a,onChange:d,[r.TABLE_PREVENT_SELECTION_ELEMENT]:!0});break;case"date":i=k.createElement(c.DatePicker,{className:e.className,value:a,onChange:d,[r.TABLE_PREVENT_SELECTION_ELEMENT]:!0});break;case"boolean":i=k.createElement(s.Checkbox,{className:e.className,checked:a||!1,id:l,onChange:d,[r.TABLE_PREVENT_SELECTION_ELEMENT]:!0});break;default:i=k.createElement(s.TextBox,{className:e.className,value:a||"",onChange:d,[r.TABLE_PREVENT_SELECTION_ELEMENT]:!0})}return i},st=r.TABLE_ROW_INDEX_ATTRIBUTE,ct=r.TABLE_COL_INDEX_ATTRIBUTE,dt=r.TABLE_PREVENT_SELECTION_ELEMENT,ut=/^(?!.*\bChrome).*\bSafari/i,mt=e=>{let t=null;const n=e.unstyled,l=n&&n.uGrid?n.uGrid:o.uGrid,r=o.classNames(l.editTd({selected:e.isSelected}),e.className);return t={colSpan:e.colSpan,style:e.style,className:r,"aria-colindex":e.ariaColumnIndex,"aria-selected":e.isSelected,[ct]:e.columnIndex,role:"gridcell"},{tdProps:t}},pt=e=>{var t,n,l;return(null==(n=null==(t=e.cells)?void 0:t.edit)?void 0:n[e.editor||"text"])||(null==(l=e.cells)?void 0:l.data)},gt=e=>({...r.useTableKeyboardNavigation(e.id),onContextMenu:rt(e.dataItem,e.field),style:ot(e)}),ft=e=>{const{cellProps:t}=e,{tdProps:n}=mt(t),l=gt(t),r=lt(t),o=k.createElement(it,{cellProps:t}),a=pt(t);return a?k.createElement(a,{...t,...r,tdProps:{...n,...l}},o):n?k.createElement("td",{...n,...l},o):null},ht=e=>{const t=k.useRef(null),n=k.useRef(null),l=k.useRef(!1),a=k.useContext(Y),i=o.useRtl(a.headerElementRef);a.columnResizeRef.current&&a.columnResizeRef.current.setIsRtl("rtl"===i),k.useImperativeHandle(a.headerRef,(()=>({setScrollLeft:e=>{t.current&&t.current.scrollLeft!==e&&(l.current=!0,t.current.scrollLeft=e)},setWidth:e=>{n.current&&(n.current.style.width=e?e+"px":"")},table:()=>n.current})));const s=o.useUnstyled(),c=s&&s.uGrid?s.uGrid:o.uGrid,{size:d="md"}=e;return e.staticHeaders?k.createElement("div",{ref:a.headerElementRef,className:o.classNames(c.header({draggable:e.draggable}),e.className),role:"presentation"},k.createElement("div",{ref:t,className:o.classNames(c.headerWrap({})),onScroll:e=>{var n;if(l.current)return void(l.current=!1);if(!t.current)return;const r=t.current.scrollLeft,o=(null==(n=a.vsRef.current)?void 0:n.container)||null;o&&o.scrollLeft!==r&&(o.scrollLeft=r)},role:"presentation"},k.createElement("table",{ref:n,className:o.classNames(c.headerTable({size:d}),e.className),role:"presentation"},k.createElement("colgroup",{ref:e=>{a.columnResizeRef.current&&(a.columnResizeRef.current.colGroupHeader=e)}},e.cols),k.createElement("thead",{className:o.classNames(c.tableThead({})),role:"rowgroup",...r.tableKeyboardNavigationHeaderAttributes},e.headerRow,e.filterRow)))):k.createElement("thead",{role:"presentation",className:o.classNames(c.thead({draggable:e.draggable}),e.className),...r.tableKeyboardNavigationHeaderAttributes},e.headerRow,e.filterRow)};ht.displayName="KendoReactHeader";const vt=t.createContext(void 0),Et=e=>{const n=t.useRef(null),l=t.useRef(null),r=t.useRef(null),o=t.useMemo((()=>({actionSheetRef:n,firstViewRef:l,secondViewRef:r})),[]);return t.createElement(vt.Provider,{value:o},e.children)},Ct=e=>{const n=t.useContext(Y),{actionSheetRef:l,firstViewRef:r,secondViewRef:s}=t.useContext(vt),c=o.useAdaptiveModeContext(),d=a.useLocalization(),p={animation:!0,navigatable:!1,navigatableElements:[],expand:e.computedShow,animationStyles:c&&n.adaptiveColumnMenuRef<=c.small?{top:0,width:"100%",height:"100%"}:void 0,className:"k-adaptive-actionsheet",position:c&&n.adaptiveColumnMenuRef<=c.small?"fullscreen":void 0};return t.createElement(u.ActionSheet,{...p,ref:l,style:{"--kendo-actionsheet-view-current":1},onClose:()=>{e.closeMenu()}},t.createElement(u.ActionSheetView,{className:"k-actionsheet-view-animated",ref:r,style:{transitionDuration:"500ms",transitionProperty:"transform"}},t.createElement(u.ActionSheetHeader,null,t.createElement("div",{className:"k-actionsheet-titlebar-group"},t.createElement("div",{className:"k-actionsheet-title"},t.createElement("div",{className:"k-text-center"},n.adaptiveTitle||d.toLanguageString(ie,Qe[ie]))),t.createElement("div",{className:"k-actionsheet-actions"},t.createElement(m.Button,{svgIcon:i.xIcon,onClick:e.closeMenu,fillMode:"flat"})))),t.createElement(u.ActionSheetContent,null,t.createElement("div",{className:"k-column-menu k-column-menu-lg"},e.children))),t.createElement(u.ActionSheetView,{className:"k-actionsheet-view-animated",ref:s,style:{transitionDuration:"500ms",transitionProperty:"transform"}}))},bt=[".k-columnmenu-item-content",".k-filter-menu-container"].map((e=>o.TABBABLE_ELEMENTS.map((t=>`${e} ${t}`)))),kt=[[".k-tabstrip-items"],[".k-columnmenu-item"],...bt],xt=e=>{var t;const n=k.useContext(Y),[l,r]=k.useState(!1),s=k.useRef(null),c=k.useRef(null),u=k.useRef(null),m=k.useRef(0),g=o.useDocument(s),{columnMenu:f,...h}=e,{column:v,columnMenuIcon:E,navigatable:C}=e,b=a.useLocalization(),x=v.title||v.field,y=x?`${x} `:"",I=()=>{e.onCloseMenu&&e.onCloseMenu(),r(!1),!e.navigatable&&s.current&&s.current.focus()},S=k.useMemo((()=>void 0!==e.show?e.show:l),[e.show,l]),w=(e,t,n)=>{n.preventDefault(),n.shiftKey?t.focusPrevious(e):t.focusNext(e)},R=(e,t,n)=>{e&&(n.preventDefault(),e.click())},N=(e,t,n)=>{n.preventDefault(),I()},P=(e,t,n)=>{t.focusElement(e)},M=k.useCallback(((e,t)=>{const n=[];if(!t||"object"!=typeof t)return!1;if(Array.isArray(t.filters))for(const n of t.filters)if(M(e,n))return!0;return"field"in t&&"string"==typeof t.field&&n.push(t.field),n.includes(e)}),[]),T=k.useCallback(((e,t)=>!(!t||!Array.isArray(t))&&t.some((t=>t.field===e))),[]),D=k.useMemo((()=>v.field&&(M(v.field,n.filter)||T(v.field,n.group))),[v.field,n.filter,n.group,M,T]);return k.useEffect((()=>(S&&c.current&&(u.current=new o.Navigation({tabIndex:0,root:c,selectors:kt,keyboardEvents:{keydown:{Tab:w,Enter:R,Escape:N}},mouseEvents:{mousedown:P}}),u.current.focusElement(u.current.first,null)),()=>{u.current&&(u.current=null)})),[S]),k.createElement(k.Fragment,null,k.createElement("a",{className:o.classNames("k-grid-header-menu k-grid-column-menu",{"k-active":D}),ref:s,onClick:t=>{t.preventDefault(),l&&e.onCloseMenu&&e.onCloseMenu(),r(!l)},onKeyDown:e=>{var t;if(e.keyCode===o.Keys.tab){const n=e.target,l=n&&(null==(t=n.closest(".k-grid"))?void 0:t.getElementsByClassName("k-grid-content")[0]);l&&l.scrollWidth>l.clientWidth&&n.scrollIntoView({inline:"center"})}},href:"#",tabIndex:C?-1:void 0,"aria-label":`${C?"":y}${b.toLanguageString(ie,Qe[ie])}`},E?k.createElement(o.IconWrap,{name:E.name,icon:E}):k.createElement(o.IconWrap,{name:"more-vertical",icon:i.moreVerticalIcon})),k.createElement(Et,null,n.mobileMode?k.createElement(k.Fragment,null,p.createPortal(k.createElement(Ct,{computedShow:S,ColumnMenu:f,closeMenu:I},f&&k.createElement(f,{...h,onCloseMenu:I})),null==(t=g())?void 0:t.body)):k.createElement(d.Popup,{anchor:s.current,show:S,popupClass:"k-grid-columnmenu-popup",onMouseDownOutside:e=>{!e.isAnchorClicked&&r(!1)}},k.createElement("div",{ref:c,onBlur:e=>{const t=o.getActiveElement(document);clearTimeout(m.current),m.current=window.setTimeout((()=>{!n.mobileMode&&t&&e.relatedTarget!==s.current&&c.current&&!c.current.contains(t)&&I()}))},onFocus:()=>{clearTimeout(m.current)},onMouseDown:e=>{var t;null==(t=u.current)||t.triggerMouseEvent(e)},onKeyDown:e=>{var t;null==(t=u.current)||t.triggerKeyboardEvent(e)},className:"k-column-menu k-column-menu-md"},f&&k.createElement(f,{...h,onCloseMenu:I})))))},yt=e=>{const t=o.useUnstyled(),n=t&&t.uGrid?t.uGrid:o.uGrid,l=e.onClick?{onClick:e.onClick}:{};return k.createElement("span",{className:o.classNames(n.headerCellInner({}))},k.createElement("span",{className:o.classNames(n.headerCellLink({sortable:e.columnMenuWrapperProps.sortable})),...l},k.createElement("span",{className:o.classNames(n.columnTitle({}))},e.title||e.field||" "),e.children),e.columnMenuWrapperProps.columnMenu&&k.createElement(xt,{...e.columnMenuWrapperProps}))},It=k.createContext(void 0),St=e=>{const t=k.useContext(Y),n=k.useRef(null),[l,r]=k.useState(),a=(n,l)=>{e.sortable&&l.sortable&&(n.preventDefault(),t.sortChange&&t.headerCellClick(n,l))};return k.createElement(It.Provider,{value:{cellClick:a,cellKeyDown:(l,i)=>{if(l.isDefaultPrevented())return;const{keyCode:s,metaKey:c,ctrlKey:d,altKey:u}=l,m=e.sortable&&i.sortable,p=l.target;if(m&&l.keyCode===o.Keys.enter&&-1!==p.className.indexOf("k-table-th")&&a(l,i),e.navigatable){if(e.groupable&&(c&&s===o.Keys.enter||d&&s===o.Keys.space)){l.preventDefault();const n=e.columns.findIndex((e=>e.field===i.field));t.columnGroupChange&&t.columnGroupChange(n,l)}u&&s===o.Keys.down&&(l.preventDefault(),r(i.field),n.current=p)}},handleCloseMenu:()=>{r(void 0),n.current&&"-1"!==n.current.getAttribute("tabindex")&&n.current.focus()},showColumnMenuField:l}},e.children)},wt=e=>{const t=k.useContext(Y),n=k.useContext(It),l=t.isClient||e.isClient,r={style:{...t.getCellPositionStyle(e.column)}},o={onKeyDown:t=>{n.cellKeyDown(t,e.column)},onContextMenu:n=>{t.onContextMenu(n,void 0,e.column.field)}};let a={onClick:t=>{n.cellClick(t,e.column)}};return l&&(a={...a,selectionChange:t.onHeaderSelectionChange,columnMenuWrapperProps:{...e.columnMenuWrapperProps,onSortChange:t.sortChange,onFilterChange:t.filterChange,onGroupChange:t.groupChange,onColumnsStateChange:t.onColumnsStateChange,show:n.showColumnMenuField===e.column.field||void 0,onCloseMenu:n.handleCloseMenu,columnsState:t.columnsState}}),e.isCustom&&(a=l?{...a,thProps:{...e.thProps,...o,...r}}:{...a,...o,...r}),_(e.children,{...a})},Rt=e=>{const t=k.useRef(null),n=o.useUnstyled(),l=n&&n.uGrid?n.uGrid:o.uGrid;return k.createElement(o.Draggable,{onPress:n=>{const l=t.current&&t.current.element;l&&e.pressHandler&&e.pressHandler(n.event,l)},onDrag:n=>{const l=t.current&&t.current.element;l&&e.dragHandler&&e.dragHandler(n.event,l)},onRelease:n=>{t.current&&t.current.element&&e.releaseHandler&&e.releaseHandler(n.event)},hint:e.dragClue,autoScroll:{boundaryElementRef:e.headerRef,direction:{horizontal:!0,vertical:!1}},scrollContainer:e.containerRef||void 0,ref:t},k.createElement("tr",{className:o.classNames(l.simpleTr({})),style:{touchAction:"none"},role:"row","aria-rowindex":e.ariaRowIndex},e.children))},Nt=e=>{const t=k.useContext(Y);return t.dragLogicRef.current.pressHandler&&k.createElement(Rt,{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)||k.createElement("tr",{className:e.className,role:"row","aria-rowindex":e.ariaRowIndex},e.children)},Pt=e=>{const t=k.useContext(Y),n=k.useContext(It),l={style:{...t.getCellPositionStyle(e.column)}};return _(e.children,{onKeyDown:t=>{n.cellKeyDown(t,e.column)},onContextMenu:n=>{t.onContextMenu(n,void 0,e.column.field)},...l})},Mt=e=>{const{column:t}=e,n=k.useContext(Y);return n.columnResizeRef.current&&n.columnResizeRef.current.resizable&&t.resizable&&k.createElement(r.ColumnResizer,{key:2,resize:(e,l,r)=>n.columnResizeRef.current&&n.columnResizeRef.current.dragHandler(e,t,l,r),autofit:e=>n.columnResizeRef.current&&n.columnResizeRef.current.dblClickHandler(e,[t.id])})||k.createElement(k.Fragment,null)},Tt={none:"none",asc:"ascending",desc:"descending"},Dt=e=>{const t=e.unstyled,n=t&&t.uGrid?t.uGrid:o.uGrid;let l=0,a=-1;const s=t=>{if(!e.sort)return null;const l=o.classNames(n.sortIcon({}));return t>=0&&[k.createElement("span",{key:1,className:l},k.createElement(o.IconWrap,{name:"sort-"+e.sort[t].dir+"-small",icon:"asc"===e.sort[t].dir?i.sortAscSmallIcon:i.sortDescSmallIcon})),e.sort.length>1&&k.createElement("span",{key:2,className:l},k.createElement("span",{className:o.classNames(n.sortOrder({}))},t+1))]},c=e.columns.map(F);return k.createElement(St,{sortable:e.sortable,sort:e.sort,navigatable:e.navigatable,groupable:e.groupable,columns:c},e.columnsMap.map(((t,i)=>k.createElement(Nt,{key:i,className:o.classNames(n.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,m=u>=0&&e.sort[u].dir||"none",p=null===c.columnMenu?null:c.columnMenu||e.columnMenu,g=c.menuIcon||e.columnMenuIcon,f=o.classNames(o.classNames(n.headerTh({first:c.kFirst,filterable:!!p,locked:c.locked,sorted:e.sort&&e.sort.some((e=>e.field===c.field))})),c.headerClassName);!1===c.locked&&(c.left=0);const h=e.localization.toLanguageString(Se,Qe[Se]),v=c.isAccessible?{ariaSort:Tt[m],role:"columnheader",ariaColumnIndex:c.ariaColumnIndex,ariaSelected:!1,ariaDescription:d?h:""}:{role:"presentation"},E=c.declarationIndex>=0?++a:--l,C={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:p,columnMenuIcon:g}},b={...v,colSpan:c.headerColSpan,rowSpan:c.rowSpan,className:f,columnId:c.id,navigatable:c.navigatable,role:"columnheader"},x=F(c),y={column:x,sortable:e.sortable,sort:e.sort,columnMenuWrapperProps:C.columnMenuWrapperProps},I=c.defaultHeaderCell?c.defaultHeaderCell:yt,S=[k.createElement(wt,{key:1,...y,isClient:V(I)},k.createElement(I,{...C})),k.createElement(Mt,{key:2,column:x})],w=K(e.cells,c.cells);if(w&&w.headerCell){const e=w.headerCell,n=V(e);return k.createElement(wt,{key:E,...y,thProps:b,isCustom:!0,isClient:n},k.createElement(e,{...C,thProps:b,index:t},S))}return k.createElement(Pt,{key:E,column:x},k.createElement(r.HeaderThElement,{...b},S))})))(t)))))},Lt=[{text:"grid.filterAndLogic",operator:"and"},{text:"grid.filterOrLogic",operator:"or"}],At={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"}]},Ft=e=>"isnull"===e||"isnotnull"===e||"isempty"===e||"isnotempty"===e,Gt=(e,t)=>e.map((e=>({text:t.toLanguageString(e.text,Qe[e.text]),operator:e.operator}))),Bt=[{text:"grid.filterBooleanAll",operator:""},{text:"grid.filterIsTrue",operator:!0},{text:"grid.filterIsFalse",operator:!1}],Ot={text:!1,numeric:!1,date:!1,boolean:!0},zt=(e,t,n)=>{const l=Kt(n.operators);let r=n.operator;switch(n.filterType){case"numeric":case"date":(!r||Ft(r))&&(r=l),null===e&&r===l&&(r="");break;case"text":(!r||Ft(r))&&(r=l),!e&&r===l&&(r="");break;default:return}n.onChange({value:e,operator:r,syntheticEvent:t})},Kt=(e,t)=>t?e[t][0].operator:e[0].operator,Ht=e=>e||"text",Vt=(e,t)=>{const n=e.target.value;t({value:n.operator,operator:""===n.operator?"":"eq",syntheticEvent:e.syntheticEvent})},Wt=(e,t,n)=>{let l=t;const r=e.target.value;e.target.state.opened&&(Ft(r.operator)&&(l=null),null===t&&!Ft(r.operator)&&(l=void 0),n({value:l,operator:r.operator,syntheticEvent:e.syntheticEvent}))},qt=e=>{const t=k.useRef(null),n=a.useLocalization(),l=(t,n)=>{zt(t,n,e)},r=t=>{Wt(t,e.value,e.onChange)},d=t=>{Vt(t,e.onChange)};return k.createElement("div",{className:"k-filtercell"},k.createElement("div",{className:"k-filtercell-wrapper"},((n,r,o)=>{switch(n){case"numeric":return k.createElement(s.NumericTextBox,{ref:t,size:e.size,value:r,onChange:e=>{l(e.value,e.syntheticEvent)},title:e.title,ariaLabel:e.ariaLabel});case"date":return k.createElement(c.DatePicker,{ref:t,size:e.size,value:r,onChange:e=>{l(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 n=e=>null==e;return k.createElement(g.DropDownList,{ref:t,size:e.size,onChange:d,value:o.find((e=>e.operator===(n(r)?"":r))),data:o,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 k.createElement(s.TextBox,{ref:t,size:e.size,value:r||"",onChange:e=>{l(e.target.value,e.syntheticEvent)},title:e.title,"aria-label":e.ariaLabel})}})(e.filterType,e.value,e.booleanValues),k.createElement("div",{className:"k-filtercell-operator"},(()=>{if("boolean"===e.filterType)return;let t;const l=e.operators.find((t=>t.operator===e.operator))||null;return k.createElement(g.DropDownList,{ref:e=>{t=e},size:e.size,value:l,onChange:r,className:"k-dropdown-operator",svgIcon:i.filterIcon,data:e.operators,textField:"text",title:n.toLanguageString(xe,Qe[xe]),popupSettings:{width:"",onMouseDownOutside:function(e){!e.isAnchorClicked&&e.state&&e.state.props.show&&t&&t.togglePopup()}}})})()," ",k.createElement(m.Button,{size:e.size,svgIcon:i.filterClearIcon,className:o.classNames({"k-clear-button-visible":!!(null!==e.value&&""!==e.value||e.operator)}),title:n.toLanguageString(ce,Qe[ce]),type:"button",onClick:n=>{n.preventDefault(),e.onChange({value:"",operator:"",syntheticEvent:n}),t.current&&(t.current.element.value="",setTimeout((()=>{t.current.element.focus()}),0))},disabled:!(null!==e.value&&""!==e.value||e.operator)}))))},_t=e=>{const t=k.useContext(Y),n=t.getCellPositionStyle(e.column),l=e.isCustom?{style:{...n}}:{};return t.isClient||e.isClient?_(e.children,{onChange:n=>{((n,l,r,o)=>{if(!t.filterChange)return;const a=[];(""!==n&&null!==n||""!==l)&&a.push({field:r,operator:l,value:n}),e.filter&&e.filter.filters&&(e.filter.filters||[]).forEach((e=>{e&&e.field!==r&&a.push(e)}));const i=e.filter&&e.filter.logic?e.filter.logic:"and";t.filterChange(a.length>0?{logic:i,filters:a}:null,o)})(n.value,n.operator,e.field,n.syntheticEvent)},tdProps:{...e.tdProps,...l},thProps:{...e.tdProps,...l}}):_(e.children,{})},Ut=e=>{const t={style:{...k.useContext(Y).getCellPositionStyle(e.column)}};return _(e.children,{...t})},jt=e=>{const t=(t,n)=>{let l=""+(n?"k-grid-header-sticky":"");return e.sort&&e.sort.filter((e=>e.field===t)).length>0&&(l+=" k-sorted"),l},n=e.filter&&e.filter.filters||[];let l=0,a=-1;const i=e.columns.filter((e=>0===e.children.length)).map((i=>{const s=Ht(i.filter),c=(e=>{if(void 0===e)return;const t=n.filter((t=>t.field===e));return t.length?t[0]:void 0})(i.field),d=`${i.field} ${e.localization.toLanguageString(Pe,Qe[Pe])}`;let u=c&&c.value;void 0===u&&(u="text"===s?"":null);const m=i.filterable&&{field:i.field,title:i.filterTitle,value:u,operator:c&&c.operator,operators:Gt(e.filterOperators[s]||[],e.localization),booleanValues:Gt(Bt,e.localization),filterType:s,ariaLabel:"reorder"===i.columnType?"":d,size:e.size},p=i.declarationIndex>=0?++a:--l,g={columnId:r.tableKeyboardNavigationTools.getFilterColumnId(i.id),navigatable:i.navigatable||e.navigatable,className:o.classNames("k-table-td",t(i.field,i.locked)||void 0),role:"gridcell",ariaLabel:"reorder"===i.columnType?void 0:d,ariaColumnIndex:i.ariaColumnIndex},f=F(i),h={column:f,filter:e.filter,field:i.field,tdProps:g,thProps:g};let v=null;m&&"reorder"!==i.columnType&&(v=k.createElement(_t,{...h,isClient:V(qt)},k.createElement(qt,{...m})));const E=K(e.cells,i.cells);if(E&&E.filterCell){const e=E.filterCell,t=V(e);return k.createElement(_t,{key:p,...h,isClient:t,isCustom:!0},k.createElement(e,{key:p,...m,tdProps:g,thProps:g,index:a},v))}return k.createElement(Ut,{key:p,column:f},k.createElement(r.HeaderTdElement,{...g},v))}));return k.createElement("tr",{className:"k-table-row k-filter-row","aria-rowindex":e.ariaRowIndex,role:"row"},i)},$t=e=>{const t=k.useRef(null),{dir:n,title:l}=e;return k.createElement(o.Draggable,{onPress:n=>{const l=t.current&&t.current.element;l&&e.onPress&&e.onPress(n.event,l)},onDrag:n=>{const l=t.current&&t.current.element;l&&e.onDrag&&e.onDrag(n.event,l)},onRelease:n=>{t.current&&t.current.element&&e.onRelease&&e.onRelease(n.event)},ref:t},k.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 n="asc"===e.dir?"desc":"asc";e.onSortChange(t,n)}},onContextMenu:t=>{const n={title:e.title,dir:e.dir,index:e.index};e.onContextMenu&&e.onContextMenu.call(void 0,t,{dataItem:{...n}})},onKeyDown:t=>{(t.keyCode===o.Keys.delete||t.keyCode===o.Keys.backspace)&&(t.preventDefault(),t.stopPropagation(),e.onRemove&&e.onRemove(t))},tabIndex:0,role:"button",style:{touchAction:"none"}},k.createElement("span",null,k.createElement(o.IconWrap,{name:"sort-"+n+"-small",icon:"asc"===n?i.sortAscSmallIcon:i.sortDescSmallIcon,size:"small"})),k.createElement("span",{className:"k-chip-content"},k.createElement("span",{className:"k-chip-label"},l)),k.createElement("span",{className:"k-chip-actions"},k.createElement("span",{className:"k-chip-action k-chip-remove-action",onClick:t=>{t.preventDefault(),t.stopPropagation(),e.onRemove&&e.onRemove(t)}},k.createElement(o.IconWrap,{name:"x-circle",icon:i.xCircleIcon,size:"small"})))))},Xt=e=>{const t=k.useContext(Y),n=a.useLocalization(),l=e.group||[],r=t=>{const n=e.columns.find((e=>e.field===t)),l=n&&(n.title||n.field);return void 0===l?t:l},o=l.map(((n,l)=>k.createElement($t,{key:l,index:l,dir:n.dir||"asc",title:r(n.field),onRemove:n=>{((n,l)=>{const r=e.group.slice();r.splice(l,1),t.groupChange(r,n)})(n,l)},onSortChange:(r,o)=>{((n,l,r,o)=>{const a=Object.assign({},r,{dir:o}),i=e.group.slice();i.splice(l,1,a),t.groupChange(i,n)})(r,l,n,o)},onPress:t.dragLogicRef.current.pressHandler,onDrag:t.dragLogicRef.current.dragHandler,onRelease:t.dragLogicRef.current.releaseHandler,onContextMenu:t.onContextMenu})));return k.createElement("div",{ref:t.dragLogicRef.current.refGroupPanelDiv,className:"k-grouping-header",role:"toolbar","aria-label":n.toLanguageString(Me,Qe[Me]),"aria-controls":e.ariaControls||""},k.createElement("div",{className:"k-chip-list k-chip-list-md",role:"none"},o),k.createElement("div",{className:"k-grouping-drop-container"},!o.length&&n.toLanguageString(re,Qe[re])," "))},Yt=e=>{const t=k.useRef(null),n=k.useRef(null),l=k.useContext(Y);return k.useImperativeHandle(l.footerRef,(()=>({setScrollLeft:e=>{t.current&&(t.current.scrollLeft=e)},setWidth:e=>{n.current&&(n.current.style.width=e?e+"px":"")}}))),e.staticHeaders?k.createElement("div",{className:"k-grid-footer",role:"presentation"},k.createElement("div",{ref:t,className:"k-grid-footer-wrap",role:"presentation"},k.createElement("table",{ref:n,className:o.classNames("k-table k-grid-footer-table",{"k-table-md":!e.size,[`k-table-${o.kendoThemeMaps.sizeMap[e.size]||e.size}`]:e.size},e.className),role:"presentation"},k.createElement("colgroup",{ref:e=>{l.columnResizeRef.current.colGroupFooter=e},role:"presentation"},e.cols),k.createElement("tfoot",{className:"k-table-tfoot",role:"presentation"},e.row)))):k.createElement("tfoot",{className:"k-table-tfoot"},e.row)};Yt.displayName="KendoReactFooter";const Jt=e=>{const t=k.useContext(Y),n=r.useTableKeyboardNavigation(e.id),l=rt(e.dataItem,e.field),o=ot(e),a=k.useCallback((n=>{var l;null==(l=null==t?void 0:t.cellClick)||l.call(t,n,e.dataItem,e.field)}),[t,e.dataItem,e.field]);return{...n,..."groupFooter"===e.rowType||"groupHeader"!==e.rowType?{onContextMenu:l}:{},..."groupFooter"!==e.rowType&&"groupHeader"!==e.rowType?{style:o}:{},onClick:a}},Qt=e=>{var t,n;let l=null,r=null;const a=e.unstyled,i=a&&a.uGrid?a.uGrid:o.uGrid;if("groupFooter"===e.rowType)l={className:e.className};else if("groupHeader"!==e.rowType){if(void 0!==e.field){const t=N(e.field,e.dataItem);null!=t&&(r=e.intl&&e.format?e.intl.format(e.format,t):t.toString())}const a=o.classNames(i.td({selected:e.isSelected,highlighted:e.isHighlighted,sorted:e.isSorted,alt:e.isAlt}),e.className);l={rowSpan:null!=(n=null==(t=e._rowSpan)?void 0:t.count)?n:void 0,colSpan:e.colSpan,style:e.style,className:a,role:"gridcell","aria-colindex":e.ariaColumnIndex,"aria-selected":e.isSelected,[ct]:e.columnIndex}}return{tdProps:l,content:r}},Zt=e=>{var t;return null==(t=e.cells)?void 0:t[e.rowType||"data"]},en=e=>{var t;const{cellProps:n}=e,{tdProps:l,content:r}=Qt(n),o=Jt(n),a=lt(n);if(null===(null==(t=n._rowSpan)?void 0:t.count))return null;const i=Zt(n);return i?k.createElement(i,{...n,...a,tdProps:{...l,...o}},r):l?k.createElement("td",{...l,...o},r):null},tn=e=>{const t=k.useContext(Y),n=a.useLocalization(),l=e.expanded?De:Te,s=n.toLanguageString(l,Qe[l]),c="rtl"===t.dir;return k.createElement("a",{onClick:n=>{var l;n.preventDefault(),null!=t&&t.itemChange&&t.itemChange({dataItem:e.dataItem,dataIndex:e.dataIndex,syntheticEvent:n,field:void 0,value:!e.expanded}),null==(l=null==t?void 0:t.dispatchGroupExpand)||l.call(t,{type:r.GROUP_EXPAND_ACTION.TOGGLE,group:e.group})},href:"#",tabIndex:-1,"aria-label":s},k.createElement(o.IconWrap,{name:e.expanded?"caret-alt-down":c?"caret-alt-left":"caret-alt-right",icon:e.expanded?i.caretAltDownIcon:c?i.caretAltLeftIcon:i.caretAltRightIcon}))},nn=e=>{const{columnIndex:t,level:n,columnsCount:l,rowType:r,dataItem:a,field:i,expanded:s,ariaColumnIndex:c,locked:d,style:u}=e,m=i||"";let p=null,g=null,f=null;const h=W(e);let v=!1;return void 0===t||void 0===n||t<n||void 0===l||"groupHeader"!==r||void 0===a[m]?p={style:u,key:"g"+t,className:o.classNames("k-table-td","k-group-cell",{"k-grid-content-sticky":d}),role:"gridcell"}:t===n&&(v=!0,p={className:"k-table-td",style:u,colSpan:l-t,key:"g-colspan",role:"gridcell","aria-selected":!1,"aria-expanded":s,"aria-colindex":c},f=k.createElement("p",{className:"k-reset"},k.createElement(tn,{...h}),a[m]instanceof Date?a[m].toString():a[m]),d&&(p={...p,colSpan:0,style:{...u,position:"sticky",zIndex:2}},g={className:"k-table-td",role:"gridcell",colSpan:l-t,style:{borderLeftWidth:0,borderRightWidth:0}})),{tdProps:p,td2Props:g,content:f,renderToggleCell:v}},ln=e=>{var t,n;return null==(n=null==(t=e.cells)?void 0:t.group)?void 0:n[e.rowType||"data"]},rn=(e,t)=>{const n=k.useContext(Y),l=r.useTableKeyboardNavigation(e.id),a=rt(e.dataItem,e.field),i=ot(e),s=k.useCallback((t=>{t.isDefaultPrevented()||t.keyCode===o.Keys.enter&&null!=n&&n.itemChange&&(t.preventDefault(),n.itemChange({dataItem:e.dataItem,dataIndex:e.dataIndex,syntheticEvent:t,field:void 0,value:!e.expanded}),null==n||n.dispatchGroupExpand({type:r.GROUP_EXPAND_ACTION.TOGGLE,group:e.group},t))}),[n,e.dataItem,e.dataIndex,e.expanded,e.group]);return{...l,...t?{onKeyDown:s}:{},onContextMenu:a,style:i}},on=e=>{const{cellProps:t}=e,{tdProps:n,td2Props:l,content:r,renderToggleCell:o}=nn(t),a=rn(t,o),i=lt(t),s={...t,...i},c={...n,...a,style:{...null==n?void 0:n.style,...a.style}},d=l?{...l,onContextMenu:a.onContextMenu}:null,u=ln(t);if(u)return k.createElement(u,{...s,tdProps:c,td2Props:d},r);const m=n?k.createElement("td",{...c,key:null==n?void 0:n.key},r):null,p=d?k.createElement("td",{...d}):null;return p?k.createElement(k.Fragment,null,m,p):m},an=e=>{var t;const n=k.useContext(Y),{reorderRowDropTargetRef:l,reorderRowDragTargetRef:r,activeDragRowDataItemRef:a}=n,{rowType:i,isAltRow:s,isInEdit:c,isSelected:d,isHighlighted:u}=e,m=o.useUnstyled(),p=m&&m.uGrid?m.uGrid:o.uGrid,g=o.classNames(p.tr({selected:d,highlighted:u,isHeader:"groupHeader"===i,isFooter:"groupFooter"===i,isMaster:"groupHeader"!==i&&"groupFooter"!==i,isAltRow:s,isInEdit:c})),f=k.useRef(null);o.useDroppable(f,{onDragOver:t=>{if(e.isRowReorderable&&a.current){const e=t.originalEvent.target;l.current=e.closest(".k-table-row")}},onDrop:()=>{r.current&&e.isRowReorderable&&(r.current.style.userSelect="")}});const h={onClick:t=>n.rowClick(t,e.dataItem),onDoubleClick:t=>n.rowDblClick(t,e.dataItem)},v={ref:f,id:e.id,...h,className:g,style:{height:e.rowHeight?e.rowHeight+"px":"",visibility:e.isHidden?"hidden":"",userSelect:null==(t=null==r?void 0:r.current)?void 0:t.style.userSelect},role:"row","aria-rowindex":e.ariaRowIndex,"absolute-row-index":e.absoluteRowIndex,[st]:"data"===e.rowType?e.dataIndex:void 0},E=e.rowType||"data",C=e.rows;if(C&&C[E]){const t=C[E];return k.createElement(t,{key:e.absoluteRowIndex,...e,trProps:v},e.children)}return k.createElement("tr",{key:e.absoluteRowIndex,...v},e.children)},sn=e=>{const t=k.useContext(Y),n=o.useId(),l=a.useLocalization(),r=e.id||n;return[k.createElement("span",{key:0,className:"k-checkbox-wrap"},k.createElement("input",{id:r,type:"checkbox",tabIndex:-1,className:"k-checkbox k-checkbox-md k-rounded-md","aria-label":l.toLanguageString(Be,Qe[Be]),"aria-checked":e.selectionValue,checked:e.selectionValue,onChange:n=>t.onHeaderSelectionChange({field:e.field,syntheticEvent:n})})),e.columnMenuWrapperProps.columnMenu&&k.createElement(xt,{...e.columnMenuWrapperProps})]},cn=e=>{const t=a.useLocalization();return k.createElement(k.Fragment,null,e.children||t.toLanguageString(J,Qe[J]))};cn.displayName="KendoReactGridNoRecords";const dn=e=>{const t=k.useContext(Y),n=r.useTableKeyboardNavigation(e.id),l=t.getCellPositionStyle(e.column),o={...n,style:{...l}};return e.isCustom&&(t.isClient||e.isClient)?_(e.children,{tdProps:{...e.tdProps,...o},...n}):_(e.children,{...o})},un=e=>{const{column:t,index:n,cells:l}=e,r={colSpan:1!==t.colSpan?t.colSpan:void 0,className:o.classNames("k-table-td",t.locked&&void 0!==t.left?"k-grid-footer-sticky":""),role:"gridcell","aria-colindex":t.ariaColumnIndex},a={field:t.field,ariaColumnIndex:t.ariaColumnIndex,...r},i=F(t),s=K(l,t.cells);if(s&&s.footerCell){const t=s.footerCell,l=V(t);return k.createElement(dn,{key:n,id:e.id,tdProps:r,isCustom:!0,isClient:l,column:i},k.createElement(t,{...a,tdProps:r,index:n}))}return k.createElement(dn,{key:n,id:e.id,column:i},k.createElement("td",{...r}))},mn=e=>k.createElement("tr",{className:"k-table-row",role:"row","aria-rowindex":e.ariaRowIndex},(e=>e.filter((t=>{var n;return!(((e,t)=>{var n;let l=e[t.parentIndex];for(;l;){if(null!=(n=l.cells)&&n.footerCell)return!0;l=e[l.parentIndex]}return!1})(e,t)||(null==(n=t.cells)||!n.footerCell)&&t.children&&t.children.length>0)})))(e.columns).map(((t,n)=>{const l=r.tableKeyboardNavigationTools.generateNavigatableId(`${n}-footercell`,e.idPrefix,"nodata");return k.createElement(un,{key:l,column:t,id:l,index:n,cells:e.cells})}))),pn=e=>(({buttonCount:e=10,info:t=!0,type:n="numeric",pageSizes:l,previousNext:r=!0,responsive:o,adaptive:a,adaptiveTitle:i,navigatable:s,pageSizeValue:c})=>({buttonCount:e,info:t,pageSizes:!0===l?[5,10,20]:l||void 0,previousNext:r,responsive:!1!==o,adaptive:!0===a,adaptiveTitle:i||"Items per page",navigatable:!1!==s,type:n,pageSizeValue:c}))(!0===e?{}:e),gn={name:"@progress/kendo-react-grid",productName:"KendoReact",productCode:"KENDOUIREACT",productCodes:["KENDOUIREACT"],publishDate:0,version:"11.3.1",licensingDocsUrl:"https://www.telerik.com/kendo-react-ui/components/my-license/"},fn=e=>{const{colSpan:t,ariaColIndex:n,unstyled:l}=e,r=l&&l.uGrid?l.uGrid:o.uGrid;return{tdProps:{className:o.classNames(r.detailTd({})),colSpan:t,"aria-colindex":n,role:"gridcell"}}},hn=e=>{const t=r.useTableKeyboardNavigation(e.id);return{onContextMenu:rt(e.dataItem),...t}},vn=e=>{const{dataItem:t,dataIndex:n}=e,{tdProps:l}=fn(e),r=hn(e);return k.createElement("td",{...l,...r},k.createElement(e.detail,{dataItem:t,dataIndex:n}))},En=e=>{const t=e.unstyled,n=t&&t.uGrid?t.uGrid:o.uGrid;return k.createElement("td",{className:o.classNames(n.hierarchyTd({})),role:"gridcell"})},Cn=e=>{const t=k.useContext(Y),n=t.headerRef.current,l=n&&n.table()&&n.table().clientWidth,a=o.uGrid;return k.createElement("div",{key:"no-records",className:o.classNames(a.noRecords({})),style:{width:l}},k.createElement("div",{className:o.classNames(a.noRecordsTemplate({})),[r.KEYBOARD_NAV_DATA_ID]:r.tableKeyboardNavigationTools.generateNavigatableId("no-records",r.tableKeyboardNavigationTools.getIdPrefix(t.navigationStateRef))},e.children))};Cn.displayName="KendoReactGridNoRecordsContainer";let bn=class{constructor(e){this.columns=[],this.columnsState=[],this.resizable=!1,this.isRtl