@progress/kendo-react-grid 9.0.0-develop.9 → 9.0.1-develop.1
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/Grid.js +1 -1
- package/Grid.mjs +927 -1042
- package/GridNoRecords.js +1 -1
- package/GridNoRecords.mjs +7 -14
- package/GridToolbar.js +1 -1
- package/GridToolbar.mjs +23 -28
- package/VirtualScroll.js +1 -1
- package/VirtualScroll.mjs +53 -51
- package/VirtualScrollFixed.js +1 -1
- package/VirtualScrollFixed.mjs +16 -14
- package/cells/GridFilterCell.js +1 -1
- package/cells/GridFilterCell.mjs +99 -113
- package/columnMenu/GridColumnMenuCheckboxFilter.js +1 -1
- package/columnMenu/GridColumnMenuCheckboxFilter.mjs +132 -178
- package/columnMenu/GridColumnMenuFilter.js +1 -1
- package/columnMenu/GridColumnMenuFilter.mjs +123 -156
- package/columnMenu/GridColumnMenuFilterCell.js +1 -1
- package/columnMenu/GridColumnMenuFilterCell.mjs +42 -53
- package/columnMenu/GridColumnMenuFilterUI.js +1 -1
- package/columnMenu/GridColumnMenuFilterUI.mjs +15 -17
- package/columnMenu/GridColumnMenuGroup.js +1 -1
- package/columnMenu/GridColumnMenuGroup.mjs +29 -40
- package/columnMenu/GridColumnMenuItemContent.js +1 -1
- package/columnMenu/GridColumnMenuItemContent.mjs +7 -20
- package/columnMenu/GridColumnMenuItemGroup.js +1 -1
- package/columnMenu/GridColumnMenuItemGroup.mjs +7 -20
- package/columnMenu/GridColumnMenuSort.js +1 -1
- package/columnMenu/GridColumnMenuSort.mjs +42 -53
- package/dist/cdn/js/kendo-react-grid.js +1 -1
- package/drag/ColumnDraggable.js +1 -1
- package/drag/ColumnDraggable.mjs +34 -45
- package/drag/GroupingIndicator.js +1 -1
- package/drag/GroupingIndicator.mjs +51 -69
- package/footer/Footer.js +1 -1
- package/footer/Footer.mjs +40 -57
- package/header/FilterRow.js +1 -1
- package/header/FilterRow.mjs +70 -78
- package/header/GridHeaderSelectionCell.js +1 -1
- package/header/GridHeaderSelectionCell.mjs +28 -37
- package/header/GroupPanel.js +1 -1
- package/header/GroupPanel.mjs +43 -49
- package/header/Header.js +1 -1
- package/header/Header.mjs +70 -89
- package/index.d.mts +261 -725
- package/index.d.ts +261 -725
- package/index.js +1 -1
- package/index.mjs +78 -80
- package/package-metadata.mjs +1 -1
- package/package.json +11 -11
- package/rows/GridDetailRow.js +1 -1
- package/rows/GridDetailRow.mjs +2 -10
|
@@ -5,4 +5,4 @@
|
|
|
5
5
|
* Licensed under commercial license. See LICENSE.md in the package root for more information
|
|
6
6
|
*-------------------------------------------------------------------------------------------
|
|
7
7
|
*/
|
|
8
|
-
!function(e,t){"object"==typeof exports&&"undefined"!=typeof module?t(exports,require("react"),require("prop-types"),require("@progress/kendo-react-common"),require("@progress/kendo-react-data-tools"),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-buttons"),require("@progress/kendo-react-dropdowns"),require("@progress/kendo-data-query"),require("@progress/kendo-react-animation")):"function"==typeof define&&define.amd?define(["exports","react","prop-types","@progress/kendo-react-common","@progress/kendo-react-data-tools","@progress/kendo-react-intl","@progress/kendo-svg-icons","@progress/kendo-react-inputs","@progress/kendo-react-dateinputs","@progress/kendo-react-popup","@progress/kendo-react-buttons","@progress/kendo-react-dropdowns","@progress/kendo-data-query","@progress/kendo-react-animation"],t):t((e="undefined"!=typeof globalThis?globalThis:e||self).KendoReactGrid={},e.React,e.PropTypes,e.KendoReactCommon,e.KendoReactDataTools,e.KendoReactIntl,e.KendoSvgIcons,e.KendoReactInputs,e.KendoReactDateinputs,e.KendoReactPopup,e.KendoReactButtons,e.KendoReactDropdowns,e.KendoDataQuery,e.KendoReactAnimation)}(this,(function(e,t,r,i,s,o,a,n,l,c,h,d,p,u){"use strict";function g(e){var t=Object.create(null);return e&&Object.keys(e).forEach((function(r){if("default"!==r){var i=Object.getOwnPropertyDescriptor(e,r);Object.defineProperty(t,r,i.get?i:{enumerable:!0,get:function(){return e[r]}})}})),t.default=e,Object.freeze(t)}var m=g(t);const f=e=>null;f.displayName="KendoReactGridColumn";const v={filterable:!0,editable:!0,sortable:!0,resizable:!0,reorderable:!0,groupable:!0};function b(e,t){const r=(e||"").split(".");let i=t;return r.forEach((e=>{i=i?i[e]:void 0})),i}function C(e,t,r,i,s,o,a=0){let n=a;for(let l=0;l<t.length;l++){if(!s||void 0===t[l].value||void 0===t[l].items){e[e.length]={dataIndex:i.index,dataItem:t[l],rowType:"data",level:a,expanded:void 0===o||b(o,t[l])},i.index++;continue}n=Math.max(n,a+1);const c=void 0===o||void 0===b(o,t[l])||b(o,t[l]);e[e.length]={dataIndex:-1,dataItem:t[l],level:a,rowType:"groupHeader",expanded:c},c&&(n=Math.max(C(e,t[l].items,r,i,s,o,a+1),n)),("always"===r||c&&"visible"===r)&&(e[e.length]={dataIndex:-1,dataItem:t[l],rowType:"groupFooter",level:a,expanded:c})}return n}function x(e,t,r,i=0){const o=[];if(!e)return[];e&&void 0===e.length&&(e=[e]),e.filter((e=>e&&e.props?!e.props.hidden:!e.hidden)).forEach(((e,a)=>{e=e.props?e.props:e;const n=t[a]||null,l=x(e.children,n&&n.children||[],r,i+1);o.push(Object.assign({depth:i},v,l.length?{cell:()=>null,filterCell:()=>null}:{},n?{width:n.width,orderIndex:n.orderIndex}:{},e,{id:e.id?e.id:s.tableKeyboardNavigationTools.generateNavigatableId(""+r.prevId++,r.idPrefix,"column"),declarationIndex:o.length,children:l,rowSpan:0,colSpan:0,isAccessible:!0,left:n&&Math.floor(n.left),right:n&&Math.floor(n.right)}))}));if(o.sort(((e,t)=>e.orderIndex===t.orderIndex?e.declarationIndex-t.declarationIndex:(e.orderIndex||0)-(t.orderIndex||0))),0===i){const e=[],t=(r,i)=>r.forEach((r=>{r.parentIndex=i,t(r.children,e.push(r)-1)}));return t(o,-1),e}return o}f.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=e=>void 0!==e.width?Math.floor(parseFloat(e.width.toString()))+"px":void 0,k=(e,t)=>t&&t.filter((t=>t.field===e)).length>0,I=e=>(e.sort(((e,t)=>e.declarationIndex-t.declarationIndex)),e.map((e=>{const{declarationIndex:t,parentIndex:r,depth:i,colSpan:s,rowSpan:o,index:a,kFirst:n,children:l,...c}=e;return l.length?{children:I(l),...c}:c}))),y="undefined"!=typeof window&&/Firefox/.test(window.navigator.userAgent),S=17895697,w=(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},R="grid.noRecords",N="grid.pagerInfo",T="grid.pagerFirstPage",D="grid.pagerPreviousPage",G="grid.pagerNextPage",M="grid.pagerLastPage",L="grid.pagerItemsPerPage",F="grid.groupPanelEmpty",O="grid.groupColumn",z="grid.ungroupColumn",_="grid.columnMenu",H="grid.filterApplyButton",P="grid.filterClearButton",A="grid.filterResetButton",K="grid.filterSubmitButton",W="grid.filterTitle",B="grid.sortAscending",V="grid.sortDescending",U="grid.searchPlaceholder",q="grid.filterCheckAll",j="grid.filterChooseOperator",$="grid.filterSelectAll",X="grid.filterSelectedItems",Y="grid.sortAriaLabel",J="grid.filterAriaLabel",Q="grid.groupPanelAriaLabel",Z="grid.groupExpand",ee="grid.groupCollapse",te="grid.detailExpand",re="grid.detailCollapse",ie="grid.selectRow",se="grid.gridAriaLabel",oe={[te]:"Expand detail row",[re]:"Collapse detail row",[Z]:"Expand group",[ee]:"Collapse Group",[R]:"No records available",[F]:"Drag a column header and drop it here to group by that column",[H]:"Apply",[P]:"Clear",[A]:"Reset",[K]:"Filter",[W]:"Filter",[B]:"Sort Ascending",[V]:"Sort Descending",[Y]:"Sortable",[O]:"Group Column",[z]:"Ungroup Column",[_]:"Column menu",[L]:"items per page",[N]:"{0} - {1} of {2} items",[T]:"Go to the first page",[D]:"Go to the previous page",[G]:"Go to the next page",[M]:"Go to the last page","grid.pagerPage":"Page","grid.pagerPageSizeAriaLabel":"Page size","grid.pagerOf":"of","grid.pagerTotalPages":"{0}",[U]:"Search",[q]:"Check All",[j]:"Choose Operator",[X]:"selected items",[$]:"Select All",[J]:"Filter",[Q]:"Group panel",[se]:"Table",[ie]:"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"};function ae(e){const t=e.replace(/^pager\.([a-z])/,((e,t)=>"grid.pager"+t.toUpperCase()));return{messageKey:t,defaultMessage:oe[t]}}const ne=e=>{const{selectionChange:t,field:r,dataItem:a,id:n,className:l,colSpan:c,style:h,ariaColumnIndex:d,rowType:p,cells:u,render:g}=e,f=o.useLocalization(),v=m.useCallback((e=>{t&&t({syntheticEvent:e})}),[t]),C=i.useId(),x=b(r,a),E=s.useTableKeyboardNavigation(n),k={colSpan:c,style:h,className:i.classNames("k-table-td",l),"aria-colindex":d,role:"gridcell",...E},I="boolean"==typeof x&&x,y=m.createElement("span",{key:1,className:"k-checkbox-wrap"},m.createElement("input",{id:C,tabIndex:-1,type:"checkbox",className:"k-checkbox k-checkbox-md k-rounded-md","aria-label":f.toLanguageString(ie,oe[ie]),"aria-checked":I,checked:I,onChange:v})),S="groupHeader"!==p?m.createElement("td",{...k},y):null,w=p||"data",R=u;if(R&&R.select&&R.select[w]){const t=R.select[w];return m.createElement(t,{...e,tdProps:k},y)}return g?g.call(void 0,S,e):S},le=e=>{let t=null,r=null,n=null;const l=b(e.field,e.dataItem),c=s.useTableKeyboardNavigation(e.id),h=o.useLocalization(),d=m.useCallback((t=>{t.isDefaultPrevented()||t.keyCode===i.Keys.enter&&e.onChange&&(t.preventDefault(),e.onChange({dataItem:e.dataItem,dataIndex:e.dataIndex,syntheticEvent:t,field:e.field,value:!l}))}),[e.dataItem,e.dataIndex,e.field,e.onChange,l]);if("groupFooter"===e.rowType)r={className:"k-table-td k-hierarchy-cell",role:"gridcell",...c},t=m.createElement("td",{...r});else if("groupHeader"!==e.rowType){const s=l?re:te,o=h.toLanguageString(s,oe[s]);r={className:"k-table-td k-hierarchy-cell",onKeyDown:d,"aria-expanded":!!l,role:"gridcell","aria-colindex":e.ariaColumnIndex,...c},n=m.createElement("a",{onClick:t=>{t.preventDefault(),e.onChange&&e.onChange({dataItem:e.dataItem,dataIndex:e.dataIndex,syntheticEvent:t,field:e.field,value:!l})},"aria-label":o,href:"#",tabIndex:-1},m.createElement(i.IconWrap,{name:l?"minus":"plus",icon:l?a.minusIcon:a.plusIcon})),t=m.createElement("td",{...r},n)}const p=e.rowType||"data",u=e.cells;if(u&&u.hierarchy&&u.hierarchy[p]){const t=u.hierarchy[p];return m.createElement(t,{...e,tdProps:r},n)}return e.render?e.render.call(void 0,t,e):t},ce=s.TABLE_ROW_INDEX_ATTRIBUTE,he=s.TABLE_COL_INDEX_ATTRIBUTE,de=s.TABLE_PREVENT_SELECTION_ELEMENT,pe=/^(?!.*\bChrome).*\bSafari/i,ue=e=>{const t=b(e.field,e.dataItem),r=i.useUnstyled(),o=r&&r.uGrid?r.uGrid:i.uGrid;let a=null;const c=i.classNames(o.editTd({selected:e.isSelected}),e.className),h=i.useId(),d=s.useTableKeyboardNavigation(e.id);let p=null,u=null;const g=m.useCallback((t=>{if(e.onChange){const r="checkbox"===t.target.type?t.target.checked:t.target.value;e.onChange({dataItem:e.dataItem,dataIndex:e.dataIndex,field:e.field,syntheticEvent:t,value:r})}}),[e.onChange,e.dataItem,e.dataIndex,e.field]),f=m.useCallback((t=>{e.onContextMenu&&e.onContextMenu.call(void 0,t,e.dataItem,e.field)}),[e.onContextMenu,e.dataItem,e.field]),v=m.useCallback((t=>{e.onChange&&e.onChange({dataItem:e.dataItem,dataIndex:e.dataIndex,field:e.field,syntheticEvent:t.syntheticEvent,value:t.value})}),[e.onChange,e.dataItem,e.dataIndex,e.field]);switch(e.editor){case"numeric":p={onContextMenu:f,colSpan:e.colSpan,style:e.style,className:c,"aria-colindex":e.ariaColumnIndex,"aria-selected":e.isSelected,[he]:e.columnIndex,role:"gridcell",...d},u=m.createElement(n.NumericTextBox,{value:void 0===t?null:t,onChange:v,[s.TABLE_PREVENT_SELECTION_ELEMENT]:!0}),a=m.createElement("td",{...p},u);break;case"date":p={onContextMenu:f,colSpan:e.colSpan,style:e.style,className:c,"aria-colindex":e.ariaColumnIndex,"aria-selected":e.isSelected,[he]:e.columnIndex,role:"gridcell",...d},u=m.createElement(l.DatePicker,{value:t,onChange:v,[s.TABLE_PREVENT_SELECTION_ELEMENT]:!0}),a=m.createElement("td",{...p},u);break;case"boolean":p={onContextMenu:f,colSpan:e.colSpan,style:e.style,className:c,"aria-colindex":e.ariaColumnIndex,"aria-selected":e.isSelected,[he]:e.columnIndex,role:"gridcell",...d},u=[m.createElement("span",{key:1,className:"k-checkbox-wrap"},m.createElement("input",{checked:t||!1,id:h,type:"checkbox",className:"k-checkbox k-checkbox-md k-rounded-md",onChange:g})),m.createElement("label",{className:"k-checkbox-label",htmlFor:h,key:2})],a=m.createElement("td",{...p},u);break;default:p={onContextMenu:f,colSpan:e.colSpan,style:e.style,className:c,"aria-colindex":e.ariaColumnIndex,"aria-selected":e.isSelected,[he]:e.columnIndex,role:"gridcell",...d},u=m.createElement("input",{style:{width:"100%"},className:"k-input",value:t||"",onChange:g,[s.TABLE_PREVENT_SELECTION_ELEMENT]:!0}),a=m.createElement("td",{...p},u)}const C=e.editor||"text",x=e.cells;if(x){let t;return x.edit&&x.edit[C]?t=x.edit[C]:x.data&&(t=x.data),m.createElement(t,{...e,tdProps:p},u)}return e.render?e.render.call(void 0,a,e):a};let ge=class extends m.Component{constructor(){super(...arguments),this.headerWrap=null,this.table=null,this.syncScroll=!1,this.scrollbarWidth=i.getScrollbarWidth(),this.onScroll=e=>{if(this.syncScroll)return void(this.syncScroll=!1);if(!this.headerWrap)return;const t=this.headerWrap.scrollLeft,r=this.props.scrollableDataElement();r&&r.scrollLeft!==t&&(r.scrollLeft=t)}}get element(){return this.props.elemRef.current}componentDidMount(){const e=s.isRtl(this.element);this.props.columnResize&&this.props.columnResize.setIsRtl(e),this.forceUpdate()}setScrollLeft(e){this.headerWrap&&this.headerWrap.scrollLeft!==e&&(this.syncScroll=!0,this.headerWrap.scrollLeft=e)}setWidth(e){this.table&&(this.table.style.width=e+"px")}render(){const e=this.context&&this.context.uGrid?this.context.uGrid:i.uGrid,{size:t="md"}=this.props;return this.props.staticHeaders?m.createElement("div",{ref:this.props.elemRef,className:i.classNames(e.header({draggable:this.props.draggable}),this.props.className),role:"presentation"},m.createElement("div",{ref:e=>{this.headerWrap=e},className:i.classNames(e.headerWrap({})),style:this.props.hasScrollbarWidth?{}:{borderWidth:0},onScroll:this.onScroll,role:"presentation"},m.createElement("table",{ref:e=>{this.table=e},className:i.classNames(e.headerTable({size:t}),this.props.className),role:"presentation"},m.createElement("colgroup",{ref:e=>{this.props.columnResize.colGroupHeader=e}},this.props.cols),m.createElement("thead",{className:i.classNames(e.tableThead({})),role:"rowgroup",...s.tableKeyboardNavigationHeaderAttributes},this.props.headerRow,this.props.filterRow)))):m.createElement("thead",{role:"presentation",className:i.classNames(e.thead({draggable:this.props.draggable}),this.props.className),...s.tableKeyboardNavigationHeaderAttributes},this.props.headerRow,this.props.filterRow)}};const me=(...e)=>Object.assign({allowUnsort:!0,mode:"single"},...e);let fe=class extends m.PureComponent{constructor(){super(...arguments),this.draggable=null,this.onPress=e=>{const t=this.draggable&&this.draggable.element;t&&this.props.pressHandler&&this.props.pressHandler(e.event,t)},this.onDrag=e=>{const t=this.draggable&&this.draggable.element;t&&this.props.dragHandler&&this.props.dragHandler(e.event,t)},this.onRelease=e=>{this.draggable&&this.draggable.element&&this.props.releaseHandler&&this.props.releaseHandler(e.event)}}render(){const e=this.context&&this.context.uGrid?this.context.uGrid:i.uGrid;return m.createElement(i.Draggable,{onPress:this.onPress,onDrag:this.onDrag,onRelease:this.onRelease,hint:this.props.dragClue,autoScroll:{boundaryElementRef:this.props.headerRef,direction:{horizontal:!0,vertical:!1}},scrollContainer:this.props.containerRef||void 0,ref:e=>{this.draggable=e}},m.createElement("tr",{className:i.classNames(e.simpleTr({})),style:{touchAction:"none"},role:"row","aria-rowindex":this.props.ariaRowIndex},this.props.children))}};fe.contextType=i.UnstyledContext;const ve=[".k-columnmenu-item-content",".k-filter-menu-container"].map((e=>i.TABBABLE_ELEMENTS.map((t=>`${e} ${t}`)))),be=[[".k-tabstrip-items"],[".k-columnmenu-item"],...ve],Ce=e=>{const[t,r]=m.useState(!1),s=m.useRef(null),n=m.useRef(null),l=m.useRef(null),h=m.useRef(0),{columnMenu:d,...p}=e,{column:u,columnMenuIcon:g,navigatable:f}=e,v=o.useLocalization(),b=u.title||u.field,C=b?`${b} `:"",x=()=>{e.onCloseMenu&&e.onCloseMenu(),r(!1),!e.navigatable&&s.current&&s.current.focus()},E=m.useMemo((()=>void 0!==e.show?e.show:t),[e.show,t]),k=(e,t,r)=>{r.preventDefault(),r.shiftKey?t.focusPrevious(e):t.focusNext(e)},I=(e,t,r)=>{e&&e.click()},y=(e,t,r)=>{r.preventDefault(),x()},S=(e,t,r)=>{r.preventDefault(),t.focusElement(e)};return m.useEffect((()=>(E&&n.current&&(l.current=new i.Navigation({tabIndex:0,root:n,selectors:be,keyboardEvents:{keydown:{Tab:k,Enter:I,Escape:y}},mouseEvents:{mousedown:S}}),l.current.focusElement(l.current.first,null)),()=>{l.current&&(l.current=null)})),[E]),m.createElement(m.Fragment,null,m.createElement("a",{className:"k-grid-header-menu k-grid-column-menu",ref:s,onClick:i=>{i.preventDefault(),t&&e.onCloseMenu&&e.onCloseMenu(),r(!t)},onKeyDown:e=>{var t;if(e.keyCode===i.Keys.tab){const r=e.target,i=r&&(null==(t=r.closest(".k-grid"))?void 0:t.getElementsByClassName("k-grid-content")[0]);i&&i.scrollWidth>i.clientWidth&&r.scrollIntoView({inline:"center"})}},href:"#",tabIndex:f?-1:void 0,"aria-label":`${f?"":C}${v.toLanguageString(_,oe[_])}`},g?m.createElement(i.IconWrap,{name:g.name,icon:g}):m.createElement(i.IconWrap,{name:"more-vertical",icon:a.moreVerticalIcon})),m.createElement(c.Popup,{anchor:s.current,show:E,popupClass:"k-column-menu k-column-menu-popup k-grid-columnmenu-popup",onMouseDownOutside:e=>{!e.isAnchorClicked&&r(!1)}},m.createElement("div",{ref:n,onBlur:e=>{const t=i.getActiveElement(document);clearTimeout(h.current),h.current=window.setTimeout((()=>{t&&e.relatedTarget!==s.current&&n.current&&!n.current.contains(t)&&x()}))},onFocus:()=>{clearTimeout(h.current)},onMouseDown:e=>{var t;null==(t=l.current)||t.triggerMouseEvent(e)},onKeyDown:e=>{var t;null==(t=l.current)||t.triggerKeyboardEvent(e)},style:{outline:"none"}},d&&m.createElement(d,{...p,onCloseMenu:x}))))},xe=e=>{const t=i.useUnstyled(),r=t&&t.uGrid?t.uGrid:i.uGrid,{columnMenuWrapperProps:s}=e,o=e.onClick?{onClick:e.onClick}:{},a=m.createElement("span",{className:i.classNames(r.headerCellInner({}))},m.createElement("span",{className:i.classNames(r.headerCellLink({sortable:e.columnMenuWrapperProps.sortable})),...o},m.createElement("span",{className:i.classNames(r.columnTitle({}))},e.title||e.field||" "),e.children),s.columnMenu&&m.createElement(Ce,{...s}));return e.render?e.render.call(void 0,a,e):a},Ee={true:{asc:"desc",desc:"","":"asc"},false:{asc:"desc",desc:"asc","":"asc"}},ke={none:"none",asc:"ascending",desc:"descending"},Ie=e=>{const[t,r]=m.useState(),n=o.useLocalization(),l=i.useUnstyled(),c=l&&l.uGrid?l.uGrid:i.uGrid,h=m.useRef(null);let d=0,p=-1;const u=(t,r)=>{if(t.preventDefault(),!e.sortChange)return;const{allowUnsort:i,mode:s}=me(e.sortable||!1,r.sortable||!1),o=(e.sort||[]).filter((e=>e.field===r.field))[0],a=Ee[i][o&&o.dir||""],n="single"===s?[]:(e.sort||[]).filter((e=>e.field!==r.field));""!==a&&r.field&&n.push({field:r.field,dir:a}),e.sortChange(n,t)},g=()=>{r(void 0),h.current&&"-1"!==h.current.getAttribute("tabindex")&&h.current.focus()},f=t=>{if(!e.sort)return null;const r=i.classNames(c.sortIcon({}));return t>=0&&[m.createElement("span",{key:1,className:r},m.createElement(i.IconWrap,{name:"sort-"+e.sort[t].dir+"-small",icon:"asc"===e.sort[t].dir?a.sortAscSmallIcon:a.sortDescSmallIcon})),e.sort.length>1&&m.createElement("span",{key:2,className:r},m.createElement("span",{className:i.classNames(c.sortOrder({}))},t+1))]},v=o=>o.map((o=>{const a=e.columns[o],l=e.sortable&&a.sortable,v=e.sort?e.sort.findIndex((e=>e.field===a.field)):-1,b=v>=0&&e.sort[v].dir||"none",C=null===a.columnMenu?null:a.columnMenu||e.columnMenu,x=a.menuIcon||e.columnMenuIcon,E=i.classNames(i.classNames(c.headerTh({first:a.kFirst,filterable:!!C,locked:a.locked,sorted:e.sort&&e.sort.some((e=>e.field===a.field))})),a.headerClassName);!1===a.locked&&(a.left=0);const k=void 0!==a.left?e.isRtl?{left:a.right,right:a.left}:{left:a.left,right:a.right}:{},I=n.toLanguageString(Y,oe[Y]),y=a.isAccessible?{ariaSort:ke[b],role:"columnheader",ariaColumnIndex:a.ariaColumnIndex,ariaSelected:!1,ariaDescription:l?I:""}:{role:"presentation"},S=a.declarationIndex>=0?++p:--d,R=a.headerCell?a.headerCell:xe,N=m.createElement(R,{key:1,field:a.field,onClick:l&&(e=>u(e,a))||void 0,selectionChange:e.selectionChange,title:a.title,selectionValue:a.headerSelectionValue,render:e.cellRender,children:f(v),columnMenuWrapperProps:{column:{field:a.field,title:a.title,locked:a.locked,filter:a.filter,id:a.id},sortable:l&&e.sortable,sort:e.sort,onSortChange:e.sortChange,filter:e.filter,filterable:e.filterable&&a.filterable,filterOperators:e.filterOperators,onFilterChange:e.filterChange,show:t===a.field||void 0,onCloseMenu:g,navigatable:e.navigatable,group:e.group,groupable:e.groupable,onGroupChange:e.groupChange,columnMenu:C,columnMenuIcon:x}}),T={...y,key:S,colSpan:a.colSpan,rowSpan:a.rowSpan,className:E,style:k,columnId:a.id,navigatable:a.navigatable,onKeyDown:t=>((t,s)=>{if(t.isDefaultPrevented())return;const{keyCode:o,metaKey:a,ctrlKey:n,altKey:l}=t,c=e.sortable&&s.sortable,d=t.target;if(c&&t.keyCode===i.Keys.enter&&-1!==d.className.indexOf("k-table-th")&&u(t,s),e.navigatable){if(e.groupable&&(a&&o===i.Keys.enter||n&&o===i.Keys.space)){t.preventDefault();const r=e.columns.findIndex((e=>e.field===s.field));e.columnGroupChange&&e.columnGroupChange(r,t)}l&&o===i.Keys.down&&(t.preventDefault(),r(s.field),h.current=d)}})(t,a),role:"columnheader"},D=[N,e.columnResize&&e.columnResize.resizable&&a.resizable&&m.createElement(s.ColumnResizer,{key:2,resize:(t,r,i)=>e.columnResize&&e.columnResize.dragHandler(t,a,r,i),autofit:t=>e.columnResize&&e.columnResize.dblClickHandler(t,[a.id])})],G=w(e.cells,a.cells);if(G&&G.headerCell){const e=G.headerCell;return m.createElement(e,{...N.props,key:S,thProps:T,index:o},D)}return m.createElement(s.HeaderThElement,{...T,key:S},D)}));return e.columnsMap.map(((t,r)=>e.pressHandler&&m.createElement(fe,{key:r,pressHandler:e.pressHandler,dragHandler:e.dragHandler,releaseHandler:e.releaseHandler,ariaRowIndex:r+1,dragClue:e.dragClue,headerRef:e.headerRef,containerRef:e.containerRef},v(t))||m.createElement("tr",{key:r,className:i.classNames(c.simpletr({})),role:"row","aria-rowindex":r+1},v(t))))},ye=[{text:"grid.filterAndLogic",operator:"and"},{text:"grid.filterOrLogic",operator:"or"}],Se={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"}]},we=e=>"isnull"===e||"isnotnull"===e||"isempty"===e||"isnotempty"===e,Re=(e,t)=>e.map((e=>({text:t.toLanguageString(e.text,oe[e.text]),operator:e.operator}))),Ne=[{text:"grid.filterBooleanAll",operator:""},{text:"grid.filterIsTrue",operator:!0},{text:"grid.filterIsFalse",operator:!1}],Te={text:!1,numeric:!1,date:!1,boolean:!0},De=(e,t,r)=>{const i=Ge(r.operators);let s=r.operator;switch(r.filterType){case"numeric":case"date":(!s||we(s))&&(s=i),null===e&&s===i&&(s="");break;case"text":(!s||we(s))&&(s=i),!e&&s===i&&(s="");break;default:return}r.onChange({value:e,operator:s,syntheticEvent:t})},Ge=(e,t)=>t?e[t][0].operator:e[0].operator,Me=e=>e||"text",Le=(e,t)=>{const r=e.target.value;t({value:r.operator,operator:""===r.operator?"":"eq",syntheticEvent:e.syntheticEvent})},Fe=(e,t,r)=>{let i=t;const s=e.target.value;e.target.state.opened&&(we(s.operator)&&(i=null),null===t&&!we(s.operator)&&(i=void 0),r({value:i,operator:s.operator,syntheticEvent:e.syntheticEvent}))};let Oe=class extends m.Component{constructor(e){super(e),this._inputRef=m.createRef(),this.renderOperatorEditor=e=>{if("boolean"===this.props.filterType)return;let t;const r=this.props.operators.find((e=>e.operator===this.props.operator))||null;return m.createElement(d.DropDownList,{ref:e=>t=e,size:this.props.size,value:r,onChange:this.operatorChange,className:"k-dropdown-operator",iconClassName:"k-i-filter k-icon",svgIcon:a.filterIcon,data:this.props.operators,textField:"text",title:e.toLanguageString(j,oe[j]),popupSettings:{width:"",onMouseDownOutside:function(e){!e.isAnchorClicked&&e.state&&e.state.props.show&&t&&t.togglePopup()}}})},this.inputChange=this.inputChange.bind(this),this.clear=this.clear.bind(this),this.operatorChange=this.operatorChange.bind(this),this.boolDropdownChange=this.boolDropdownChange.bind(this)}render(){const e=o.provideLocalizationService(this),t=m.createElement("div",{className:"k-filtercell"},m.createElement("div",{className:"k-filtercell-wrapper"},this.filterComponent(this.props.filterType,this.props.value,this.props.booleanValues),m.createElement("div",{className:"k-filtercell-operator"},this.renderOperatorEditor(e)," ",m.createElement(h.Button,{size:this.props.size,icon:"filter-clear",svgIcon:a.filterClearIcon,className:i.classNames({"k-clear-button-visible":!!(null!==this.props.value&&""!==this.props.value||this.props.operator)}),title:e.toLanguageString(P,oe[P]),type:"button",onClick:this.clear,disabled:!(null!==this.props.value&&""!==this.props.value||this.props.operator)}))));return this.props.render?this.props.render.call(void 0,t,this.props):t}inputChange(e,t){De(e,t,this.props)}operatorChange(e){Fe(e,this.props.value,this.props.onChange)}boolDropdownChange(e){Le(e,this.props.onChange)}clear(e){e.preventDefault(),this.props.onChange({value:"",operator:"",syntheticEvent:e}),this._inputRef.current&&(this._inputRef.current.element.value="",setTimeout((()=>{this._inputRef.current.element.focus()}),0))}filterComponent(e,t,r){switch(e){case"numeric":return m.createElement(n.NumericTextBox,{ref:this._inputRef,size:this.props.size,value:t,onChange:e=>{this.inputChange(e.value,e.syntheticEvent)},title:this.props.title,ariaLabel:this.props.ariaLabel});case"date":return m.createElement(l.DatePicker,{ref:this._inputRef,size:this.props.size,value:t,onChange:e=>{this.inputChange(e.value,e.syntheticEvent)},title:this.props.title,ariaLabel:this.props.ariaLabel,popupSettings:{onMouseDownOutside:e=>{!e.isAnchorClicked&&e.state&&e.state.props.show&&this._inputRef&&this._inputRef.current.togglePopup()}}});case"boolean":{const e=e=>null==e;return m.createElement(d.DropDownList,{ref:this._inputRef,size:this.props.size,onChange:this.boolDropdownChange,value:r.find((r=>r.operator===(e(t)?"":t))),data:r,textField:"text",title:this.props.title,ariaLabel:this.props.ariaLabel,popupSettings:{onMouseDownOutside:e=>{!e.isAnchorClicked&&e.state&&e.state.props.show&&this._inputRef&&this._inputRef.current.togglePopup()}}})}default:return m.createElement(n.TextBox,{ref:this._inputRef,size:this.props.size,value:t||"",onChange:e=>{this.inputChange(e.target.value,e.syntheticEvent)},title:this.props.title,"aria-label":this.props.ariaLabel})}}};o.registerForLocalization(Oe);let ze=class extends m.Component{headerCellClassName(e,t){let r=""+(t?"k-grid-header-sticky":"");return this.props.sort&&this.props.sort.filter((t=>t.field===e)).length>0&&(r+=" k-sorted"),r}setFilter(e,t,r,i){if(!this.props.filterChange)return;const s=[];(""!==e&&null!==e||""!==t)&&s.push({field:r,operator:t,value:e}),this.props.filter&&this.props.filter.filters&&(this.props.filter.filters||[]).forEach((e=>{const t=e;t&&t.field!==r&&s.push(t)}));const o=this.props.filter&&this.props.filter.logic?this.props.filter.logic:"and";this.props.filterChange(s.length>0?{logic:o,filters:s}:null,i)}render(){const e=o.provideLocalizationService(this),t=this.props.filter&&this.props.filter.filters||[];let r=0,a=-1;const n=this.props.columns.filter((e=>0===e.children.length)).map((o=>{const n=Me(o.filter),l=(e=>{if(void 0===e)return;const r=t.filter((t=>t.field===e));return r.length?r[0]:void 0})(o.field),c=o.filterable?e.toLanguageString(J,oe[J]):void 0;let h=l&&l.value;void 0===h&&(h="text"===n?"":null);const d=o.filterable&&{render:this.props.cellRender,field:o.field,title:o.filterTitle,value:h,operator:l&&l.operator,operators:Re(this.props.filterOperators[n]||[],e),booleanValues:Re(Ne,e),filterType:n,ariaLabel:c,onChange:e=>{this.setFilter(e.value,e.operator,o.field,e.syntheticEvent)}},p=o.declarationIndex>=0?++a:--r,u={ariaLabel:c,ariaColumnIndex:o.ariaColumnIndex},g=void 0!==o.left?this.props.isRtl?{left:o.right,right:o.left}:{left:o.left,right:o.right}:{},f={columnId:s.tableKeyboardNavigationTools.getFilterColumnId(o.id),navigatable:o.navigatable||this.props.navigatable,style:g,className:i.classNames("k-table-th",this.headerCellClassName(o.field,o.locked)||void 0),role:"columnheader",...u},v=d&&(o.filterCell?m.createElement(o.filterCell,{...d}):m.createElement(Oe,{size:this.props.size,...d})),b=w(this.props.cells,o.cells);if(b&&b.filterCell){const e=b.filterCell;return m.createElement(e,{key:p,...d,thProps:f,index:a},v)}return m.createElement(s.HeaderThElement,{key:p,...f},v)}));return m.createElement("tr",{className:"k-table-row k-filter-row","aria-rowindex":this.props.ariaRowIndex,role:"row"},n)}};o.registerForLocalization(ze);class _e extends m.Component{constructor(){super(...arguments),this.draggable=null,this.onPress=e=>{const t=this.draggable&&this.draggable.element;t&&this.props.onPress&&this.props.onPress(e.event,t)},this.onDrag=e=>{const t=this.draggable&&this.draggable.element;t&&this.props.onDrag&&this.props.onDrag(e.event,t)},this.onRelease=e=>{this.draggable&&this.draggable.element&&this.props.onRelease&&this.props.onRelease(e.event)},this.sortChange=e=>{if(e.preventDefault(),this.props.onSortChange){const t="asc"===this.props.dir?"desc":"asc";this.props.onSortChange(e,t)}},this.handleKeyDown=e=>{(e.keyCode===i.Keys.delete||e.keyCode===i.Keys.backspace)&&(e.preventDefault(),e.stopPropagation(),this.props.onRemove&&this.props.onRemove(e))},this.groupRemove=e=>{e.preventDefault(),e.stopPropagation(),this.props.onRemove&&this.props.onRemove(e)},this.onContextMenu=e=>{const t={title:this.props.title,dir:this.props.dir,index:this.props.index};this.props.onContextMenu&&this.props.onContextMenu.call(void 0,e,{dataItem:{...t}})}}render(){const{dir:e}=this.props;return m.createElement(i.Draggable,{onPress:this.onPress,onDrag:this.onDrag,onRelease:this.onRelease,ref:e=>{this.draggable=e}},m.createElement("div",{className:"k-chip k-chip-md k-chip-solid k-chip-solid-base k-rounded-md",onClick:this.sortChange,onContextMenu:this.onContextMenu,onKeyDown:this.handleKeyDown,tabIndex:0,role:"button",style:{touchAction:"none"}},m.createElement("span",null,m.createElement(i.IconWrap,{name:"sort-"+e+"-small",icon:"asc"===e?a.sortAscSmallIcon:a.sortDescSmallIcon,size:"small"})),m.createElement("span",{className:"k-chip-content"},this.props.title),m.createElement("span",{className:"k-chip-actions"},m.createElement("span",{className:"k-chip-action k-chip-remove-action",onClick:this.groupRemove},m.createElement(i.IconWrap,{name:"x-circle",icon:a.xCircleIcon,size:"small"})))))}}o.registerForLocalization(_e);class He extends m.Component{constructor(){super(...arguments),this.onGroupRemove=(e,t)=>{const r=this.props.group.slice();r.splice(t,1),this.props.groupChange(r,e)},this.onGroupSortChange=(e,t,r,i)=>{const s=Object.assign({},r,{dir:i}),o=this.props.group.slice();o.splice(t,1,s),this.props.groupChange(o,e)}}render(){const e=(this.props.group||[]).map(((e,t)=>m.createElement(_e,{key:t,index:t,dir:e.dir||"asc",title:this.props.resolveTitle(e.field),onRemove:e=>{this.onGroupRemove(e,t)},onSortChange:(r,i)=>{this.onGroupSortChange(r,t,e,i)},onPress:this.props.pressHandler,onDrag:this.props.dragHandler,onRelease:this.props.releaseHandler,onContextMenu:this.props.onContextMenu})));return m.createElement("div",{ref:this.props.refCallback,className:"k-grouping-header",role:"toolbar","aria-label":o.provideLocalizationService(this).toLanguageString(Q,oe[Q]),"aria-controls":this.props.ariaControls||""},m.createElement("div",{className:"k-chip-list k-chip-list-md",role:"none"},e),m.createElement("div",{className:"k-grouping-drop-container"},!e.length&&o.provideLocalizationService(this).toLanguageString(F,oe[F])," "))}}o.registerForLocalization(He);let Pe=class extends m.Component{constructor(){super(...arguments),this.footerWrap=null,this.table=null}componentDidMount(){this.setState({})}setScrollLeft(e){this.footerWrap&&(this.footerWrap.scrollLeft=e)}setWidth(e){this.table&&(this.table.style.width=e+"px")}render(){return this.props.staticHeaders?m.createElement("div",{className:"k-grid-footer",role:"presentation"},m.createElement("div",{ref:e=>{this.footerWrap=e},className:"k-grid-footer-wrap",style:this.props.hasScrollbarWidth?{}:{borderWidth:0},role:"presentation"},m.createElement("table",{ref:e=>{this.table=e},className:i.classNames("k-table k-grid-footer-table",{"k-table-md":!this.props.size,[`k-table-${i.kendoThemeMaps.sizeMap[this.props.size]||this.props.size}`]:this.props.size},this.props.className),role:"presentation"},m.createElement("colgroup",{ref:e=>{this.props.columnResize.colGroupFooter=e},role:"presentation"},this.props.cols),m.createElement("tfoot",{className:"k-table-tfoot",role:"presentation"},this.props.row)))):m.createElement("tfoot",{className:"k-table-tfoot"},this.props.row)}},Ae=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=m.createRef(),this.fixedScroll=!1,this.askedSkip=void 0,this.containerRef=m.createRef(),this.tableTransform="",this.prevScrollPos=0,this.tableTranslate=0,this.scrollSyncing=!1,this.reactVersion=Number.parseFloat(m.version),this.topItems=(e,t)=>{if(!this.container||t)return{topItemsCount:0,topItemsHeight:0};const r=this.container.clientHeight,i=Math.ceil(r/e[0].line),s=Math.ceil((e.length-i)/2);let o=0;for(let t=0;t<s;t++)o+=e[t].line+e[t].acc;return{topItemsCount:s,topItemsHeight:o,itemsNeededOnScreen:i+i/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(){return this.containerRef.current}get rowHeights(){const e=[],t=this.tableBodyRef.current&&this.tableBodyRef.current.children||[];let r=0;for(let i=0;i<t.length;i++)t[i].className.indexOf("k-grouping-row")>-1?r+=t[i].scrollHeight:t[i].className.indexOf("k-detail-row")>-1?e[e.length-1].line+=t[i].scrollHeight:(e.push({line:t[i].scrollHeight,acc:r}),r=0);return e}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 i=this.tableTranslate,s=0;const{topItemsCount:o,topItemsHeight:a,itemsNeededOnScreen:n}=this.topItems(t,!!this.topCacheCount),l=r-i;if(!(l>a||t.length<=n)){for(;s<this.topCacheCount+this.attendedSkip-this.realSkip+o&&this.propsSkip-s>0&&!(i+(t[t.length-1-s].line+t[t.length-1-s].acc)+l<=r);)i-=t[t.length-1-s].line+t[t.length-1-s].acc,s++;if(0===s&&0===this.topCacheCount&&this.attendedSkip>0&&(i=Math.max(i-t[0].line,0),s=1),this.propsSkip-s<=0&&i>r)return this.translate(0),this.changePage(0,e),void(this.container.scrollTop=0);if(i>r&&(i=r),i!==this.tableTranslate){this.translate(Math.max(0,i-a));const t=Math.max(0,this.propsSkip-s-o);this.changePage(t,e)}}}localScrollDown(e){if(!this.container)return;const t=this.rowHeights,r=this.container.scrollTop;let i=this.tableTranslate,s=0;const{topItemsCount:o,topItemsHeight:a,itemsNeededOnScreen:n}=this.topItems(t,!!this.topCacheCount);for(;s<t.length-this.topCacheCount&&!(i+t[s].line+t[s].acc>r);)i+=t[s].line+t[s].acc,s++;o>this.propsSkip+s||t.length<=n||(s>=t.length-this.topCacheCount&&this.propsSkip+s>=this.total?(this.translate(i-a),this.changePage(this.total-1-o,e)):i!==this.tableTranslate&&this.propsSkip+s-o!==this.propsSkip&&(this.translate(i-a),this.changePage(this.propsSkip+s-o,e)))}scrollNonStrict(e){const t=this.total*this.prevScrollPos/this.containerHeight;let r=Math.floor(t);r>=this.total&&(r=this.total-1);const i=Math.min(t-r,1);let s=0;const o=r-this.propsSkip,a=this.rowHeights;o>=0&&o<=1?s=-(a[0].line+a[0].acc)*i:-1===o&&(s=-(a[a.length-1].line+a[a.length-1].acc)*i);const{topItemsCount:n,topItemsHeight:l}=this.topItems(a,!!this.topCacheCount);this.translate(Math.max(0,s-l-this.horizontalScrollbarHeight()+this.containerHeight*t/this.total)),this.changePage(r-n,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}},Ke=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=m.createRef(),this.fixedScroll=!1,this.askedSkip=void 0,this.containerRef=m.createRef(),this.tableTransform="",this.scrollSyncing=!1,this.lastLoaded=0,this.firstLoaded=0,this.lastScrollTop=0,this.reactVersion=Number.parseFloat(m.version),this.firstLoaded=this.pageSize,this.lastLoaded=this.realSkip+this.pageSize,this.scrollHandler=this.scrollHandler.bind(this)}get container(){return this.containerRef.current}translate(e,t){this.scrollableVirtual&&this.table&&(y||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){if(!(this.scrollableVirtual&&this.container&&this.table&&this.rowHeightService&&this.containerRef.current))return;if(this.scrollSyncing)return void(this.scrollSyncing=!1);const t=this.container.scrollTop,r=this.lastScrollTop>=t,i=!r;this.lastScrollTop=t;let s=this.rowHeightService.index(t),o=this.rowHeightService.offset(s);const{offsetHeight:a}=this.containerRef.current,n=this.rowHeightService.index(t+a);if(i&&n>=this.lastLoaded&&this.lastLoaded<this.total){const t=s+this.pageSize-this.total;t>0&&(s-=t,o=this.rowHeightService.offset(s)),this.firstLoaded=s,this.translate(o);const r=this.firstLoaded+this.pageSize;this.lastLoaded=Math.min(r,this.total),this.changePage(this.firstLoaded,e)}else if(r&&s<this.firstLoaded){const t=Math.floor(.3*this.pageSize);this.firstLoaded=Math.max(s-t,0),this.translate(this.rowHeightService.offset(this.firstLoaded)),this.lastLoaded=Math.min(this.firstLoaded+this.pageSize,this.total),this.changePage(this.firstLoaded,e)}}},We=class{constructor(e){this.columns=[],this.resizable=!1,this.isRtl=!1,this.setIsRtl=e=>{this.isRtl=e},this.dragHandler=(e,t,r,i)=>{const s=e.originalEvent;i||(s.preventDefault(),s.stopPropagation(),s.stopImmediatePropagation());const o=r.closest("th");if(!o||!o)return;const a=o.clientWidth;let n=a;if(this.isRtl?n+=r.getBoundingClientRect().right-r.offsetWidth/2-e.clientX:n+=e.clientX-r.getBoundingClientRect().left-r.offsetWidth/2,!i&&Math.abs(n-a)<1)return;this.fixateInitialWidths(o.parentElement.clientWidth),this.setWidths(t,Math.floor(n)/a);const l=this.columns.filter((e=>!e.children.length)).findIndex((e=>e.id===t.id));this.onResize(l,a,n,s,i,t.id)},this.dblClickHandler=(e,t)=>{const r=this.columns.filter((e=>t.indexOf(e.id)>-1));if(!this.colGroupMain||!r.length)return;const i={},s=r;for(;s.length>0;){const e=s.pop();if(!e)break;e.children.length?s.push(...e.children):i[e.id]=e}const o=this.columns.filter((e=>!e.children.length)),a=[];o.forEach(((e,t)=>{i[e.id]&&a.push(t)}));const n=[this.colGroupMain.parentElement],l=[this.colGroupMain];this.colGroupHeader&&(n.push(this.colGroupHeader.parentElement),l.push(this.colGroupHeader)),this.colGroupFooter&&(n.push(this.colGroupFooter.parentElement),l.push(this.colGroupFooter)),n.forEach((e=>e.classList.add("k-autofitting")));const c=[];l.forEach((e=>{a.forEach((t=>{e.children[t]&&(e.children[t].width="",c[t]=Math.max(c[t]||0,e.children[t].offsetWidth+1))}))})),l.forEach((e=>{a.forEach((t=>{e.children[t]&&(e.children[t].width=c[t]+"px",o[t].width=c[t])}))})),n.forEach((e=>e.classList.remove("k-autofitting"))),this.onResize(a[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 i=0;i<e.length;i++){const s=e[i],o=t.findIndex((e=>e.id===s.id)),a=parseFloat((s.width||0).toString()),n=Math.floor(a);r+=a-n;const l=n+Math.floor(r);if(r-=Math.floor(r),this.colGroupMain&&this.colGroupMain.children[o]){const e=parseInt(this.colGroupMain.children[o].width,10);this.colGroupMain.children[o].width=l+"px",this.updateNextLockedCol(this.colGroupMain.parentElement,s,e-l)}if(this.colGroupHeader&&this.colGroupHeader.children[o]){const e=parseInt(this.colGroupHeader.children[o].width,10);this.colGroupHeader.children[o].width=l+"px",this.updateNextLockedCol(this.colGroupHeader.parentElement,s,e-l)}if(this.colGroupFooter&&this.colGroupFooter.children[o]){const e=parseInt(this.colGroupFooter.children[o].width,10);this.colGroupFooter.children[o].width=l+"px",this.updateNextLockedCol(this.colGroupFooter.parentElement,s,e-l)}}},this.onResize=e}fixateInitialWidths(e){const t=this.columns.filter((e=>!e.children.length));let r=0;const i=this.colGroupMain?this.colGroupMain.children:[];for(let t=0;t<i.length;t++)i[t].width?e-=parseFloat(i[t].width):r++;if(0===r)return;const s=Math.floor(e/r);for(let e=0;e<i.length;e++){const r=i[e];r.width||(r.width=s,t[e].width=s.toString(),this.colGroupHeader&&(this.colGroupHeader.children[e].width=s),this.colGroupFooter&&(this.colGroupFooter.children[e].width=s))}}setWidths(e,t){const r=this.columns.findIndex((t=>t.id===e.id)),i=[];let s=e.children.length;for(let e=r+1;s>0&&e<this.columns.length;e++,s--){const t=this.columns[e];t.children.length?s+=t.children.length:i.push(t)}return 0===i.length&&i.push(e),i.forEach((e=>{let r=e.width?parseFloat(e.width.toString())*t:0;const i=void 0===e.minResizableWidth?10:e.minResizableWidth;r<i&&(r=i),e.width=r})),this.updateColElements(i),i}updateNextLockedCol(e,t,r){const i=t.index,s=this.colGroupMain.parentElement.closest(".k-grid"),o=null==s?void 0:s.clientWidth,a=this.columns.filter((e=>e.locked)).map((e=>parseInt(e.width+"",10))).reduce(((e,t)=>e+t),0);!t.locked||o<=a+20||this.columns.forEach((t=>{if(null!=t&&t.locked&&r){const s=null==e?void 0:e.querySelectorAll('[aria-colindex="'+t.ariaColumnIndex+'"]');null==s||s.forEach((e=>{const s=e.style;this.isRtl?(t.index>i&&s&&s.right&&(s.right=parseInt(s.right,10)-r+"px"),t.index<i&&s&&s.left&&(s.left=parseInt(s.left,10)-r+"px")):(t.index>i&&s&&s.left&&(s.left=parseInt(s.left,10)-r+"px"),t.index<i&&s&&s.right&&(s.right=parseInt(s.right,10)-r+"px"))}))}}))}},Be=class{constructor(e,t,r){this.refDragElementClue=m.createRef(),this.refDropElementClue=m.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 i=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,i,r),this.updateDropElementClue(e,t,i,r)},this.releaseHandler=e=>{const t=this.startColumn,r=this.currentColumn,i=this.startGroup,s=this.currentGroup;e.originalEvent.preventDefault(),this.dropElementClue&&this.dropElementClue.setState({visible:!1}),this.dragElementClue&&this.dragElementClue.setState({visible:!1});const o=this.isValid();this.startColumn=this.startGroup=this.currentColumn=this.currentGroup=-1,o&&(t>=0&&r>=0?this.columnReorder(t,r,e.originalEvent):i>=0&&s>=0?this.groupReorder(i,s,e.originalEvent):t>=0&&s>=0&&this.columnToGroup(t,s,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=s.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 s.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,i){if(!this.dragElementClue)return;const s=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:s,status:i||!r?"k-i-cancel":"k-i-plus"})}updateDropElementClue(e,t,r,i){if(!this.dropElementClue)return;if(i||!r)return void this.dropElementClue.setState({visible:!1});const s=r.getBoundingClientRect(),o=(r.closest(".k-grouping-header")||r).getBoundingClientRect();let a=s.left+e.pageX-e.clientX-6;!this.isTargetGroupingContainer(e)&&(this.currentColumn>this.startColumn||this.currentGroup>this.startGroup&&-1!==this.startGroup)&&(a+=s.width);const n=o.top+e.pageY-e.clientY;this.dropElementClue.setState({visible:!0,top:n,left:a,height:this.currentColumn>=0?t.clientHeight:o.height})}};const Ve=e=>{let t=null;const r=o.useInternationalization(),a=i.useUnstyled(),n=a&&a.uGrid?a.uGrid:i.uGrid,l=s.useTableKeyboardNavigation(e.id),c=m.useCallback((t=>{e.onContextMenu&&e.onContextMenu.call(void 0,t,e.dataItem,e.field)}),[e.onContextMenu,e.dataItem,e.field]);let h=null,d=null;if("groupFooter"===e.rowType)h={onContextMenu:c,className:e.className,...l},t=m.createElement("td",{...h});else if("groupHeader"!==e.rowType){if(void 0!==e.field){const t=b(e.field,e.dataItem);null!=t&&(d=e.format?r.format(e.format,t):t.toString())}const s=i.classNames(n.td({selected:e.isSelected,sorted:e.isSorted,alt:e.isAlt}),e.className);h={onContextMenu:c,colSpan:e.colSpan,style:e.style,className:s,role:"gridcell","aria-colindex":e.ariaColumnIndex,"aria-selected":e.isSelected,[he]:e.columnIndex,...l},t=m.createElement("td",{...h},d)}const p=e.rowType||"data",u=e.cells;if(u&&u[p]){const t=u[p];return m.createElement(t,{...e,tdProps:h},d)}return e.render?e.render.call(void 0,t,e):t},Ue=e=>{let t=null;const{columnIndex:r,level:n,columnsCount:l,rowType:c,dataItem:h,field:d,onChange:p,expanded:u,render:g,dataIndex:f,ariaColumnIndex:v,isRtl:b}=e,C=d||"",x=s.useTableKeyboardNavigation(e.id),E=o.useLocalization();let k=null,I=null,y=null;const S=m.useCallback((e=>{e.isDefaultPrevented()||e.keyCode===i.Keys.enter&&p&&(e.preventDefault(),p({dataItem:h,dataIndex:f,syntheticEvent:e,field:void 0,value:!u}))}),[u,p,h,f]),w=m.useCallback((t=>{e.onContextMenu&&e.onContextMenu.call(void 0,t,e.dataItem,e.field)}),[e.onContextMenu,e.dataItem,e.field]),R=(t,r)=>{const s=u?ee:Z,o=E.toLanguageString(s,oe[s]);return k={className:"k-table-td",style:{...e.style,...r},colSpan:t,key:"g-colspan",role:"gridcell","aria-selected":!1,"aria-expanded":u,"aria-colindex":v,onKeyDown:S,onContextMenu:w,...x},y=m.createElement("p",{className:"k-reset"},m.createElement("a",{onClick:e=>{e.preventDefault(),p&&p({dataItem:h,dataIndex:f,syntheticEvent:e,field:void 0,value:!u})},href:"#",tabIndex:-1,"aria-label":o},m.createElement(i.IconWrap,{name:u?"caret-alt-down":b?"caret-alt-left":"caret-alt-right",icon:u?a.caretAltDownIcon:b?a.caretAltLeftIcon:a.caretAltRightIcon})),h[C]instanceof Date&&h[C].toString?h[C].toString():h[C]),m.createElement("td",{...k,key:k.key},y)};void 0===r||void 0===n||r<n||void 0===l||"groupHeader"!==c||void 0===h[C]?(k={style:e.style,key:"g"+r,className:i.classNames("k-table-td","k-group-cell",{"k-grid-content-sticky":e.locked}),role:"gridcell",onContextMenu:w,...x},t=m.createElement("td",{...k,key:k.key})):r<=n&&!e.locked?t=R(l-r,{}):r<=n&&e.locked&&(I={className:"k-table-td",role:"gridcell",colSpan:l-r,style:{borderLeftWidth:0,borderRightWidth:0},onContextMenu:w},t=m.createElement(m.Fragment,null,R(0,{position:"sticky",zIndex:2}),m.createElement("td",{...I})));const N=e.rowType||"data",T=e.cells;if(T&&T.group&&T.group[N]){const t=T.group[N];return m.createElement(t,{...e,tdProps:k,td2Props:I},y)}return g?g.call(void 0,t,e):t},qe=e=>{const{rowType:t,isAltRow:r,isInEdit:s,isSelected:o}=e,a=i.useUnstyled(),n=a&&a.uGrid?a.uGrid:i.uGrid,l=i.classNames(n.tr({selected:o,isHeader:"groupHeader"===t,isFooter:"groupFooter"===t,isMaster:"groupHeader"!==t&&"groupFooter"!==t,isAltRow:r,isInEdit:s})),c=m.createElement("tr",{id:e.id,onClick:e.onClick,onDoubleClick:e.onDoubleClick,className:l,style:{height:e.rowHeight?e.rowHeight+"px":"",visibility:e.isHidden?"hidden":""},role:"row","aria-rowindex":e.ariaRowIndex,"absolute-row-index":e.absoluteRowIndex,key:e.absoluteRowIndex,[ce]:"data"===e.rowType?e.dataIndex:void 0},e.children);return e.render?e.render.call(void 0,c,e):c};let je=class extends m.Component{get _inputId(){return this.props.id}render(){const e=o.provideLocalizationService(this),{columnMenuWrapperProps:t}=this.props,r=[m.createElement("span",{key:0,className:"k-checkbox-wrap"},m.createElement("input",{id:this._inputId,type:"checkbox",tabIndex:-1,className:"k-checkbox k-checkbox-md k-rounded-md","aria-label":e.toLanguageString(ie,oe[ie]),"aria-checked":this.props.selectionValue,checked:this.props.selectionValue,onChange:e=>this.props.selectionChange({field:this.props.field,syntheticEvent:e})})),t.columnMenu&&m.createElement(Ce,{...t})];return this.props.render?this.props.render.call(void 0,r,this.props):r}};o.registerForLocalization(je);const $e=i.withIdHOC(i.withUnstyledHOC(je)),Xe=class extends m.Component{render(){return this.props.children||o.provideLocalizationService(this).toLanguageString(R,oe[R])}};Xe.displayName="KendoReactGridNoRecords";let Ye=Xe;o.registerForLocalization(Ye);const Je=e=>{const{column:t,index:r,isRtl:o,id:a,cells:n}=e,l=s.useTableKeyboardNavigation(a),c={colSpan:1!==t.colSpan?t.colSpan:void 0,style:void 0!==t.left?o?{left:t.right,right:t.left}:{left:t.left,right:t.right}:{},className:i.classNames("k-table-td",t.locked&&void 0!==t.left?"k-grid-footer-sticky":""),key:r,role:"gridcell","aria-colindex":t.ariaColumnIndex,...l},h={field:t.field,ariaColumnIndex:t.ariaColumnIndex,...c},d=w(n,t.cells);if(d&&d.footerCell){const e=d.footerCell;return m.createElement(e,{...h,tdProps:c,index:r})}return t.footerCell&&m.createElement(t.footerCell,{...h,key:r})||m.createElement("td",{...c})},Qe=e=>m.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 i=s.tableKeyboardNavigationTools.generateNavigatableId(`${r}-footercell`,e.idPrefix,"nodata");return m.createElement(Je,{key:i,column:t,id:i,index:r,cells:e.cells,isRtl:e.isRtl})}))),Ze=e=>(({buttonCount:e=10,info:t=!0,type:r="numeric",pageSizes:i,previousNext:s=!0,responsive:o,navigatable:a,pageSizeValue:n})=>({buttonCount:e,info:t,pageSizes:!0===i?[5,10,20]:i||void 0,previousNext:s,responsive:!1!==o,navigatable:!1!==a,type:r,pageSizeValue:n}))(!0===e?{}:e),et={name:"@progress/kendo-react-grid",productName:"KendoReact",productCodes:["KENDOUIREACT","KENDOUICOMPLETE"],publishDate:0,version:"",licensingDocsUrl:"https://www.telerik.com/kendo-react-ui/components/my-license/"},tt=e=>{const{colSpan:t,ariaColIndex:r,dataItem:o,dataIndex:a,id:n}=e,l=s.useTableKeyboardNavigation(n),c=i.useUnstyled(),h=c&&c.uGrid?c.uGrid:i.uGrid,d=m.useCallback((t=>{e.onContextMenu&&e.onContextMenu.call(void 0,t,e.dataItem)}),[e.onContextMenu,e.dataItem]);return m.createElement("td",{onContextMenu:d,className:i.classNames(h.detailTd({})),colSpan:t,"aria-colindex":r,role:"gridcell",...l},m.createElement(e.detail,{dataItem:o,dataIndex:a}))},rt=e=>{const t=i.useUnstyled(),r=t&&t.uGrid?t.uGrid:i.uGrid;return m.createElement("td",{className:i.classNames(r.hierarchyTd({})),role:"gridcell"})},it=class extends m.Component{constructor(e){super(e),this._columns=[],this._columnsMap=[[]],this._columnsMutations=0,this._resized=!1,this._focusFirst=!1,this._singleEditRow=!1,this._shouldUpdateLeftRight=!0,this._scrollbarWidth=void 0,this.contextStateRef={current:void 0},this.navigationStateRef={current:void 0},this._data=[],this._slicedData=void 0,this.wrapperScrollTop=0,this.showLicenseWatermark=!1,this.headerRef=m.createRef(),this.headerElementRef=m.createRef(),this._element=null,this.tableElement=null,this.containerRef=m.createRef(),this.tableBodyRef=m.createRef(),this._footer=null,this.forceUpdateTimeout=void 0,this.isRtl=!1,this.headTable=null,this.rowsInEdit=[],this.observer=null,this.handleIntersection=e=>{const t={rowIndex:this.rowIndex};e.forEach((e=>{e.isIntersecting||this.setCurrentOnTop(t)}))},this.setCurrentOnTop=e=>{if(!this.vs.container||"none"===this.props.scrollable)return;this.observer&&this.observer.disconnect();const{rowIndex:t}=e;if("virtual"===this.props.scrollable)this.vs.askedSkip=t,this.vs.container.scroll(0,Math.round(this.vs.askedSkip/this.vs.total*this.vs.container.scrollHeight));else if(this.element){const e=t<1?this.element.querySelector("tbody > tr:nth-child(1)"):this.element.querySelector(`tbody > tr:nth-child(${t+1})`);e&&this.containerRef.current&&(this.containerRef.current.scrollTop=e.offsetTop)}},this.scrollIntoView=e=>{if(!this.vs.container||"none"===this.props.scrollable)return;this.rowIndex=e.rowIndex;const{rowIndex:t}=e,r=this.element;if(this.observer&&r){this.observer.disconnect();const i=r.querySelector(`[absolute-row-index="${t}"]`);i?this.observer.observe(i):this.setCurrentOnTop(e)}},this.fitColumns=e=>{this.columnResize.dblClickHandler(null,e)},this.getColumnsEssentialProps=e=>JSON.stringify(e.map((e=>({id:e.id,field:e.field,title:e.title,children:e.children})))),this.checkMatchMediaColumnsDifferece=()=>{const e=this.childrenToArray(this.props.children);return this.getColumnsEssentialProps(e)===this.getColumnsEssentialProps(this._columns)},this.onContextMenu=(e,t,r)=>{if(this.props.onContextMenu){const i={target:this,syntheticEvent:e,nativeEvent:e.nativeEvent,dataItem:t,field:r};this.props.onContextMenu.call(void 0,i)}},this.getVirtualScroll=e=>{const{rowHeight:t,detailRowHeight:r,detail:i,expandField:s,groupable:o}=e,a=this.isAllData(),n=void 0!==t&&t>0,l=void 0!==r&&r>0,c=!0===o||"object"==typeof o&&!1!==o.enabled;return!n||c&&!a||i&&s&&(!l||!a)?Ae:Ke},this.isAllData=()=>{const{data:e,total:t}=this.props;return Array.isArray(e)?e.length===t:!!e&&t===e.total},this.initializeVirtualization=(e,t)=>{if(this.reInitVirtualization("virtual"===this.props.scrollable,this.props.total,this.props.filter,this.props.group,this.props.sort,t||void 0===this.props.rowHeight||0===this.props.rowHeight),this.vs.fixedScroll=this.props.fixedScroll||!1,this.vs.PageChange=this.pageChange,this.vs.realSkip=this.props.skip||0,this.vs.pageSize=(void 0!==this.props.take?this.props.take:this.props.pageSize)||0,this.vs.scrollableVirtual="virtual"===this.props.scrollable,this.vs.total=e,this.vs.propsSkip=(this.props.skip||0)+("virtual"===this.props.scrollable?this.vs.topCacheCount+(this.vs.attendedSkip-(this.props.skip||0)):0),void 0!==this.props.rowHeight&&this.props.rowHeight>0&&!t){const t=this.props.rowHeight*e;this.vs.containerHeight=y?Math.min(S,t):t}else this.vs.containerHeight=1533915;if(this.vs.containerRef=this.containerRef,this.vs.tableBodyRef=this.tableBodyRef,this.vs.table=this.tableElement,this._slicedData=void 0,this.vs instanceof Ke){const{rowHeight:t=0,detail:r,expandField:s}=this.props;let{detailRowHeight:o=0}=this.props;o=r&&s?o:t,this.isAllData()?(this.vs.total=this._data.length,this._slicedData=this._data.slice(this.vs.realSkip,this.vs.realSkip+this.vs.pageSize),this.vs.rowHeightService=this.rowHeightService(this.vs,this._data.length,t,o,this._data)):this.vs.rowHeightService=new i.RowHeightService(e,t,o);const a=this.vs.rowHeightService.totalHeight();this.vs.containerHeight=y?Math.min(S,a):a}},this.getCachedScrollbarWidth=()=>(this._scrollbarWidth||(this._scrollbarWidth=i.getScrollbarWidth()||void 0),this._scrollbarWidth),this.scrollHandler=e=>{if(e.target!==e.currentTarget)return;clearTimeout(this.forceUpdateTimeout),this.vs.table=this.tableElement;const t=e.currentTarget.scrollLeft,r=e.currentTarget.scrollTop;this.props.columnVirtualization&&(!this.vs.scrollableVirtual||r===this.wrapperScrollTop)&&(this.forceUpdateTimeout=window.setTimeout((()=>{this.forceUpdate()}),0)),this._header&&this._header.setScrollLeft(t),this._footer&&this._footer.setScrollLeft(t),this.vs&&r!==this.wrapperScrollTop&&this.vs.scrollHandler(e),i.dispatchEvent(this.props.onScroll,e,this,void 0),this.wrapperScrollTop=r},this.onKeyDown=e=>{if(s.tableKeyboardNavigation.onKeyDown(e,{navigatable:this.props.navigatable||!1,contextStateRef:this.contextStateRef,navigationStateRef:this.navigationStateRef,onNavigationAction:this.onNavigationAction,columns:this.columns}),this.props.onKeyDown){const{mode:t,cell:r}=s.getSelectionOptions(this.props.selectable),i={dataItems:this.getLeafDataItems(),mode:t,cell:r,componentId:this._gridId,selectedField:this.props.selectedField,...this.getArguments(e)};this.props.onKeyDown.call(void 0,i)}},this.onFocus=e=>{s.tableKeyboardNavigation.onFocus(e,{navigatable:!!this.props.navigatable,contextStateRef:this.contextStateRef})},this.onNavigationAction=e=>{if("moveToNextPage"===e.action&&this.moveToNextPage(e.event),"moveToPrevPage"===e.action&&this.moveToPrevPage(e.event),e.focusElement&&"reorderToRight"===e.action){const t=parseInt(e.focusElement.ariaColIndex,10)-1;t<this._columns.length-1&&this.columnReorder(t,t+1,e.event)}if(e.focusElement&&"reorderToLeft"===e.action){const t=parseInt(e.focusElement.ariaColIndex,10)-1;t>0&&this.columnReorder(t,t-1,e.event)}if(this.props.onNavigationAction){const t={focusElement:e.focusElement,...this.getArguments(e.event)};this.props.onNavigationAction.call(void 0,t)}},this.rowClick=(e,t)=>{this.props.onRowClick&&"TD"===e.target.nodeName&&this.props.onRowClick.call(void 0,{dataItem:t.dataItem,...this.getArguments(e)})},this.rowDblClick=(e,t)=>{this.props.onRowDoubleClick&&"TD"===e.target.nodeName&&this.props.onRowDoubleClick.call(void 0,{dataItem:t.dataItem,...this.getArguments(e)})},this.itemChange=e=>{const t=this.props.onItemChange;if(e.field===this.props.expandField||this.props.group&&void 0===e.field){const t=this.props.onExpandChange;t&&t.call(void 0,{...this.getArguments(e.syntheticEvent),dataItem:e.dataItem,dataIndex:e.dataIndex,value:e.value})}else t&&t.call(void 0,{...this.getArguments(e.syntheticEvent),dataItem:e.dataItem,dataIndex:e.dataIndex,field:e.field,value:e.value})},this.onHeaderSelectionChange=e=>{this.props.onHeaderSelectionChange&&this.props.onHeaderSelectionChange.call(void 0,{field:e.field,nativeEvent:e.syntheticEvent&&e.syntheticEvent.nativeEvent,syntheticEvent:e.syntheticEvent,target:this,dataItems:this.getLeafDataItems(),selectedField:this.props.selectedField})},this.selectionRelease=e=>{if(this.props.onSelectionChange){const t=this.getSlicedLeafDataItems()[e.startRowIndex],r=this.getSlicedLeafDataItems()[e.endRowIndex],i={syntheticEvent:void 0,target:this,selectedField:this.props.selectedField||"",componentId:this._gridId,dataItems:this.getLeafDataItems(),dataItem:null,startDataItem:t,endDataItem:r,...e};this.props.onSelectionChange.call(void 0,i)}},this.pageChange=(e,t,r)=>{this.raiseDataEvent(this.props.onPageChange,{page:e},{skip:e.skip,take:e.take},t,r)},this.getTotal=()=>{let e=this.props.total||0;return Array.isArray(this.props.data)?e=e||this.props.data.length:this.props.data&&(e=e||this.props.data.total),e},this.moveToNextPage=e=>{const t=this.props.take||0,r=(this.props.skip||0)+t;r<this.getTotal()&&this.pageChange({skip:r,take:t},e)},this.moveToPrevPage=e=>{const t=this.props.take||0,r=(this.props.skip||0)-t;r>=0&&this.pageChange({skip:r,take:t},e)},this.pagerPageChange=e=>{this.pageChange({skip:e.skip,take:e.take},e.syntheticEvent,e.targetEvent)},this.sortChange=(e,t)=>{this.raiseDataEvent(this.props.onSortChange,{sort:e},{sort:e,..."virtual"===this.props.scrollable?{skip:0}:{}},t)},this.filterChange=(e,t)=>{this.raiseDataEvent(this.props.onFilterChange,{filter:e},{filter:e||void 0,skip:0},t)},this.groupChange=(e,t)=>{const r=t.nativeEvent?t:{nativeEvent:t.nativeEvent||t.originalEvent};0===e.length&&this.props.navigatable&&(this._focusFirst=!0),this._columnsMutations++,this.raiseDataEvent(this.props.onGroupChange,{group:e},{group:e,skip:0},r)},this.onClipboard=(e,t)=>{if(this.props.onClipboard){if(!this.inActiveElement()||!e)return;this.props.onClipboard.call(void 0,{type:e,nativeEvent:t,columns:this._columns,dataItemKey:this.props.dataItemKey||"",..."boolean"!=typeof this.props.clipboard?this.props.clipboard:{}})}},this.inActiveElement=()=>{var e,t,r;if(!i.canUseDOM)return!1;const s=i.getActiveElement(this.document),o=s?s.matches(".k-table-td")?s:null==(e=this.document)?void 0:e.body:null==(t=this.document)?void 0:t.body,a=o.closest(".k-grid-container"),n=o&&(null==(r=this._element)?void 0:r.contains(o));return!!(o&&n&&a)},this.onResize=(e,t,r,i,s,o)=>{this.resetTableWidth(),this._shouldUpdateLeftRight=!0,this._resized=!0,this._columnsMutations++,this.props.onColumnResize&&this.props.onColumnResize.call(void 0,{columns:this.columns,nativeEvent:i,targetColumnId:o,index:e,newWidth:t,oldWidth:r,end:s,target:this})},this.reInitVirtualization=i.memoizeOne(((e,t,r,i,s,o)=>{this.vs.reset();const a=this.getVirtualScroll(this.props);this.vs=new a(o)})),this.flatData=i.memoizeOne(((e,t,r,i,s,o,a)=>{const n=[];return{flattedData:n,resolvedGroupsCount:C(n,e,t,{index:r},void 0!==i,s)}})),this.rowHeightService=i.memoizeOne(((e,t,r,s,o)=>new i.RowHeightService(t,r,s,o))),this.childrenToArray=i.memoizeOne((e=>m.Children.toArray(e))),this.readColumns=i.memoizeOne(((e,t,r)=>{const i=e.filter((e=>e&&e.type&&"KendoReactGridColumn"===e.type.displayName));return x(i,this.columns,{prevId:0,idPrefix:t})})),this.mapColumns=i.memoizeOne(((e,t)=>s.mapColumns(e,!0))),this.filterColumnsByMediaProp=e=>e.filter((e=>i.canUseDOM&&e&&e.media?window.matchMedia(e.media).matches:e)),this.configureColumns=i.memoizeOne(((e,t,r)=>{this.props.selectedField&&e.filter((e=>e.field===this.props.selectedField)).forEach((e=>{e.width=e.width||"50px",e.cell=e.cell||ne,e.headerCell=e.headerCell||$e}));const{unstyled:s}=this.props,o=s&&s.uGrid?s.uGrid:i.uGrid,a={id:"",resizable:!0,width:"32px",title:" ",declarationIndex:-1,orderIndex:-1,children:[],parentIndex:-1,depth:0,colSpan:0,rowSpan:0,left:0,right:0,index:0,rightBorder:!1,ariaColumnIndex:0,isAccessible:!0};let n=0;this.props.expandField&&this.props.onExpandChange&&this.props.detail&&(e.unshift({...a,cell:le,field:this.props.expandField,headerClassName:i.classNames(o.hierarchyCell({}))}),n++);for(let r=0;r<t;r++)e.unshift({...a,isAccessible:!1,cell:Ue,field:"value",locked:this.props.lockGroups}),n++;e.slice(n).forEach((e=>e.parentIndex>=0&&(e.parentIndex+=n)))})),this.getHeaderRow=i.memoizeOne(((e,t,r,i,s,o,a,n,l,c,h,d,p)=>m.createElement(Ie,{cells:this.props.cells,sort:e,sortable:t,sortChange:this.sortChange,group:r||[],groupable:i,groupChange:this.groupChange,filter:s,filterable:o,filterOperators:a,filterChange:this.filterChange,columnMenu:l,columnMenuIcon:c,selectionChange:this.onHeaderSelectionChange,columns:h,columnResize:this.columnResize,pressHandler:this.dragLogic.pressHandler,dragHandler:this.dragLogic.dragHandler,releaseHandler:this.dragLogic.releaseHandler,columnsMap:d,cellRender:n,isRtl:p,dragClue:this.dragLogic.dragClueRef,headerRef:this.headerElementRef,containerRef:this.containerRef,navigatable:!!this.props.navigatable,columnGroupChange:this.columnGroupChange}))),this.resolveTitle=e=>{const t=this._columns.find((t=>t.field===e)),r=t&&(t.title||t.field);return void 0===r?e:r},this.getLeafDataItems=()=>this._data.filter((e=>"data"===e.rowType)).map((e=>e.dataItem)),this.getSlicedLeafDataItems=()=>(this._slicedData||this._data).filter((e=>"data"===e.rowType)).map((e=>e.dataItem)),this.handleFocusInEditableRows=()=>{var e,t,r;if(this.tableBodyRef.current&&(null==(e=this.tableBodyRef.current)?void 0:e.getElementsByClassName("k-grid-edit-row").length)>0){this._singleEditRow=!1,null!=(t=document.activeElement)&&t.closest(".k-grid-edit-row")?this._lastActiveElement=document.activeElement:this._lastActiveElement=void 0;const e=Array.from(null==(r=this.tableBodyRef.current)?void 0:r.getElementsByClassName("k-grid-edit-row"));e.length>this.rowsInEdit.length?this._newEditableRow=e.filter((e=>!this.rowsInEdit.includes(e)))[0]:1===e.length&&(this._newEditableRow=e[0],this._singleEditRow=!0),this.rowsInEdit=e}},i.validatePackage(et),this.showLicenseWatermark=i.shouldShowValidationUI(et);const t=!0===this.props.groupable||"object"==typeof this.props.groupable&&!1!==this.props.groupable.enabled,r=this.getVirtualScroll(e);this.vs=new r(t||void 0===e.rowHeight||0===e.rowHeight),this.dragLogic=new Be(this.columnReorder.bind(this),this.groupReorder.bind(this),this.columnToGroup.bind(this)),this.columnGroupChange=this.columnGroupChange.bind(this),this.columnResize=new We(this.onResize),this.props.clipboard&&(this.clipboardService=new s.ClipboardService(this.onClipboard)),s.tableKeyboardNavigation.onConstructor({navigatable:!!e.navigatable,contextStateRef:this.contextStateRef,navigationStateRef:this.navigationStateRef,idPrefix:this._gridId})}get columns(){const e=this._columns.filter((e=>e.declarationIndex>=0&&-1===e.parentIndex));return I(e)}get element(){return this._element}get document(){if(i.canUseDOM)return this.element&&this.element.ownerDocument||document}get _header(){return this.headerRef.current}get _gridId(){return this.props.id+"-role-element-id"}componentDidMount(){var e;this.props.columnVirtualization&&!navigator.userAgent.match(pe)&&(this.headTable&&(this.headTable.style.display="block"),this.tableElement&&(this.tableElement.style.display="block")),this.resetTableWidth(),i.setScrollbarWidth(this.getCachedScrollbarWidth());const t=s.isRtl(this.element);this.isRtl=t,s.tableKeyboardNavigation.onComponentDidMount({scope:this.element||void 0,contextStateRef:this.contextStateRef,navigationStateRef:this.navigationStateRef}),this.isRtl&&this.forceUpdate();this.clipboardService&&this.clipboardService.addEventListeners(this.document),this.observer=i.canUseDOM&&window.IntersectionObserver&&new window.IntersectionObserver(this.handleIntersection,{rootMargin:"0px",threshold:.9})||null,this.resizeObserver=i.canUseDOM&&window.ResizeObserver&&new window.ResizeObserver(this.calculateMedia.bind(this)),null!=(e=this.document)&&e.body&&this.resizeObserver&&this.resizeObserver.observe(this.document.body)}getSnapshotBeforeUpdate(){return s.tableKeyboardNavigation.onGetSnapshotBeforeUpdate({document:this.document,contextStateRef:this.contextStateRef,navigationStateRef:this.navigationStateRef}),null}componentDidUpdate(){this.resetTableWidth(),i.setScrollbarWidth(this.getCachedScrollbarWidth()),this.vs.tableTransform&&this.vs.table&&(this.vs.table.style.transform=this.vs.tableTransform,this.vs.tableTransform=""),this.handleFocusInEditableRows(),s.tableKeyboardNavigation.onComponentDidUpdate({scope:this.element||void 0,contextStateRef:this.contextStateRef,navigationStateRef:this.navigationStateRef,focusFirst:this._focusFirst,newEditableRow:this._newEditableRow,singleEditRow:this._singleEditRow,lastActiveElement:this._lastActiveElement,navigatable:this.props.navigatable}),this._focusFirst=!1,this._newEditableRow=void 0}componentWillUnmount(){var e;clearTimeout(this.forceUpdateTimeout),this.clipboardService&&this.clipboardService.removeEventListeners(this.document),null!=(e=this.document)&&e.body&&this.resizeObserver&&this.resizeObserver.disconnect()}render(){var e;let t=this.props.total||0;const r=s.tableKeyboardNavigationTools.getIdPrefix(this.navigationStateRef),a=o.provideLocalizationService(this),{unstyled:n,size:l="medium"}=this.props,c=n&&n.uGrid?n.uGrid:i.uGrid;let h=[];Array.isArray(this.props.data)?(h=this.props.data,t=t||this.props.data.length):this.props.data&&(h=this.props.data.data,t=t||this.props.data.total);const d="object"==typeof this.props.groupable&&this.props.groupable.footer||"none",p="virtual"===this.props.scrollable,{resolvedGroupsCount:u,flattedData:g}=this.flatData(h,d,this.props.skip||0,this.props.group,this.props.expandField,this.props.filter,this.props.sort);this._data=g;const f=!0===this.props.groupable||"object"==typeof this.props.groupable&&!1!==this.props.groupable.enabled;this.columnResize.resizable=this.props.resizable||!1,this.dragLogic.reorderable=this.props.reorderable||!1,this.dragLogic.groupable=f;const v=this.props.selectable&&this.props.selectable.drag?"none":void 0;this.initializeVirtualization(t,f);const C=this.childrenToArray(this.props.children);this.initColumns(C,u);const x=C.map((e=>e&&e.type&&"KendoReactGridToolbar"===e.type.displayName?m.cloneElement(e,{...e.props,ariaControls:this._gridId}):null)),I=C.filter((e=>e&&e.type&&"KendoReactGridNoRecords"===e.type.displayName)),y=C.filter((e=>e&&e.type&&"KendoReactGridStatusBar"===e.type.displayName)),S=this._columns.filter((e=>0===e.children.length)),R=f&&m.createElement(He,{group:this.props.group||[],groupChange:this.groupChange,pressHandler:this.dragLogic.pressHandler,dragHandler:this.dragLogic.dragHandler,releaseHandler:this.dragLogic.releaseHandler,refCallback:this.dragLogic.refGroupPanelDiv,resolveTitle:this.resolveTitle,ariaControls:this._gridId,onContextMenu:this.onContextMenu}),{sort:N,sortable:T,group:D,filter:G,filterable:M,filterOperators:L=Se,headerCellRender:F,columnMenu:O,columnMenuIcon:z}=this.props,_=m.createElement(ge,{size:l,columnResize:this.columnResize,staticHeaders:"none"!==this.props.scrollable,scrollableDataElement:()=>this.vs.container,hasScrollbarWidth:!!this.getCachedScrollbarWidth(),draggable:this.props.reorderable||f,ref:this.headerRef,elemRef:this.headerElementRef,headerRow:this.getHeaderRow(N,T,D,f,G,M,L,F,O,z,this._columns,this._columnsMap,this.isRtl),filterRow:this.props.filterable&&m.createElement(ze,{cells:this.props.cells,size:l,columns:this._columns,filter:this.props.filter,filterOperators:this.props.filterOperators||Se,filterChange:this.filterChange,sort:this.props.sort,cellRender:this.props.filterCellRender,isRtl:this.isRtl,navigatable:!!this.props.navigatable,ariaRowIndex:this._columnsMap.length+1})||void 0,cols:S.map(((e,t)=>m.createElement("col",{key:t.toString(),width:E(e)})))}),H=this.vs&&this.vs.container&&this.vs.container.scrollLeft||0,P=parseFloat(((this.props.style||{}).width||"").toString()),{colSpans:A,hiddenColumns:K}=s.tableColumnsVirtualization({enabled:this.props.columnVirtualization,columns:S,tableViewPortWidth:P,scrollLeft:H}),W=(e,t,o,a)=>{let n=!1;const l=this.props.selectedField?b(this.props.selectedField,e.dataItem):void 0;return{row:S.map(((h,d)=>{if(K[d])return null;const p=h.id?h.id:d,u=i.classNames(c.contentSticky({locked:h.locked}),h.className),g=void 0!==h.left?this.isRtl?{left:h.right,right:h.left}:{left:h.left,right:h.right}:{};let f=!1;if(h.editable&&this.props.editField){const t=b(this.props.editField,e.dataItem);t&&(!0===t||t===h.field)&&(n=!0,f=!0)}const v=h.cell||f&&ue||Ve,C=this.props.expandField&&this.props.detail&&h.field===this.props.expandField;return m.createElement(v,{onContextMenu:this.onContextMenu,key:p,locked:this.props.lockGroups,id:s.tableKeyboardNavigationTools.generateNavigatableId(`${t}-${String(d)}`,r,C||"groupHeader"===e.rowType||"groupFooter"===e.rowType||"value"===h.field?"nodata":"cell"),colSpan:A[d],dataItem:e.dataItem,field:h.field,editor:h.editor,format:h.format,className:u,render:this.props.cellRender,cells:w(this.props.cells,h.cells),onChange:this.itemChange,selectionChange:this.props.onSelectionChange?t=>{this.selectionChange({event:t,dataItem:e.dataItem,dataIndex:o,columnIndex:d})}:void 0,columnIndex:d,columnsCount:S.length,rowType:e.rowType,level:e.level,expanded:e.expanded,dataIndex:e.dataIndex,style:g,ariaColumnIndex:h.ariaColumnIndex,isSelected:Array.isArray(l)&&l.indexOf(d)>-1,isSorted:!!k(h.field,this.props.sort),isAlt:a})})),isInEdit:n,isSelected:"boolean"==typeof l&&l}};let B=0;if(p)for(let e=0;e<this.vs.topCacheCount+this.vs.attendedSkip-(this.props.skip||0);e++){const t=this._data.shift();if(!t)break;this._data.push(t),B++,"groupHeader"===t.rowType&&e--}const V=e=>e>=this._data.length-B;let U=this.vs.realSkip||0;const q=[];let j=!1;const $=this._columnsMap.length+(this.props.filterable?1:0)+1;let X=0;if(this._data.length){let e=-1,t=0;(this._slicedData||this._data).forEach(((o,a)=>{"data"===o.rowType&&(U++,e++);const n=U%2==0,l=this.props.dataItemKey&&i.getter(this.props.dataItemKey)(o.dataItem),h=a+(this.vs.realSkip||0),d=l||"ai"+h,p=d+"_1",u=W(o,d,e,n);if(X=h+$+t,q.push(m.createElement(qe,{key:d,dataItem:o.dataItem,isAltRow:n,isInEdit:u.isInEdit,rowType:o.rowType,isHidden:V(a),onClick:e=>this.rowClick(e,o),onDoubleClick:e=>this.rowDblClick(e,o),selectedField:this.props.selectedField,rowHeight:this.props.rowHeight,render:this.props.rowRender,ariaRowIndex:X,absoluteRowIndex:h,dataIndex:this.vs.scrollableVirtual&&!this.props.groupable?h:e,isSelected:u.isSelected},u.row)),this.props.detail&&"data"===o.rowType&&o.expanded){const e=S.length-(this.props.expandField?1:0)-(this.props.group?this.props.group.length:0)||1;t++,X=h+$+t,q.push(m.createElement("tr",{key:p,className:i.classNames(c.detailTr({isAlt:n})),style:{visibility:V(a)?"hidden":"",height:this.props.detailRowHeight},role:"row","aria-rowindex":X},this.props.group&&this.props.group.map(((e,t)=>{var r;const i=null==(r=null==u?void 0:u.row[t])?void 0:r.props.style,s=i?this.isRtl?{left:i.right,right:i.left}:{left:i.left,right:i.right}:{};return m.createElement(Ue,{id:"",dataIndex:o.dataIndex,field:e.field,dataItem:o.dataItem,key:t,style:s,ariaColumnIndex:1+t,isSelected:!1,locked:this.props.lockGroups,isRtl:this.isRtl,cells:this.props.cells})})),this.props.expandField&&m.createElement(rt,{id:s.tableKeyboardNavigationTools.generateNavigatableId(`${p}-dhcell`,r)}),m.createElement(tt,{onContextMenu:this.onContextMenu,dataItem:o.dataItem,dataIndex:o.dataIndex,colSpan:e,ariaColIndex:2+(this.props.group?this.props.group.length:0),detail:this.props.detail,id:s.tableKeyboardNavigationTools.generateNavigatableId(`${p}-dcell`,r)})))}}))}else j=!0;const Y=()=>{const e=this._header;return e&&e.table&&e.table.clientWidth},J=()=>m.createElement("div",{key:"no-records",className:i.classNames(c.noRecords({})),style:{width:Y()}},m.createElement("div",{className:i.classNames(c.noRecordsTemplate({})),[s.KEYBOARD_NAV_DATA_ID]:s.tableKeyboardNavigationTools.generateNavigatableId("no-records",r)},I.length?I:m.createElement(Ye,null))),Q={size:l,onPageChange:this.pagerPageChange,total:t,dir:this.isRtl?"rtl":void 0,skip:this.vs.propsSkip||0,take:(void 0!==this.props.take?this.props.take:this.props.pageSize)||10,messagesMap:ae,...Ze(this.props.pageable||{})},Z=this.props.pager?m.createElement(this.props.pager,{...Q}):m.createElement(s.Pager,{className:i.classNames(c.pager({})),...Q}),ee=null!=(e=this.props.cells)&&e.footerCell||this._columns.some((e=>{var t;return!!(e.footerCell||null!=(t=e.cells)&&t.footerCell)}))?m.createElement(Pe,{size:l,columnResize:this.columnResize,staticHeaders:"none"!==this.props.scrollable,hasScrollbarWidth:!!this.getCachedScrollbarWidth(),ref:e=>this._footer=e,row:m.createElement(Qe,{cells:this.props.cells,idPrefix:r,columns:this._columns,isRtl:this.isRtl,ariaRowIndex:X+1}),cols:S.map(((e,t)=>m.createElement("col",{key:t.toString(),width:E(e)})))}):null,te=m.createElement("colgroup",{ref:e=>{this.columnResize.colGroupMain=e}},S.map(((e,t)=>m.createElement("col",{key:t.toString(),className:k(e.field,this.props.sort)?i.classNames(c.sorted({})):void 0,width:E(e)})))),re=this.dragLogic.reorderable||this.dragLogic.groupable;if("none"===this.props.scrollable)return m.createElement(s.TableKeyboardNavigationContext.Provider,{value:this.contextStateRef.current},m.createElement("div",{id:this.props.id,style:this.props.style,className:i.classNames(c.wrapper({size:l}),this.props.className),ref:e=>{this._element=e},"aria-label":this.props.ariaLabel,onKeyDown:this.onKeyDown,onFocus:this.onFocus,...s.tableKeyboardNavigationScopeAttributes},x,R,m.createElement(s.TableSelection,{selectable:this.props.selectable,onRelease:this.selectionRelease,childRef:e=>{this.tableElement=e,this.headTable=e}},m.createElement("table",{ref:e=>this.headTable=e,className:i.classNames(c.table({size:l}))},te,_,m.createElement("tbody",{role:"rowgroup",className:i.classNames(c.tbody({})),...s.tableKeyboardNavigationBodyAttributes},q),ee)),j&&J(),re&&m.createElement(m.Fragment,null,m.createElement(s.DropClue,{ref:this.dragLogic.refDropElementClue}),m.createElement(s.DragClue,{ref:this.dragLogic.refDragElementClue}))),y,this.props.pageable&&Z);let ie=this.props.style||{};return p&&(ie.height||(ie=Object.assign({},ie,{height:"450px"}))),m.createElement(s.TableKeyboardNavigationContext.Provider,{value:this.contextStateRef.current},m.createElement("div",{id:this.props.id,style:ie,className:i.classNames(c.wrapper({size:l,virtual:p}),this.props.className),ref:e=>{this._element=e},"aria-label":this.props.ariaLabel,onKeyDown:this.onKeyDown,onFocus:this.onFocus,...s.tableKeyboardNavigationScopeAttributes},x,R,m.createElement("div",{className:i.classNames(c.ariaRoot({})),role:"grid","aria-colcount":S.length,"aria-rowcount":t,id:this._gridId,"aria-label":a.toLanguageString(se,oe[se])},_,m.createElement("div",{className:i.classNames(c.container({})),role:"presentation"},m.createElement("div",{ref:this.containerRef,className:i.classNames(c.content({})),onScroll:this.scrollHandler,role:"presentation"},m.createElement("div",{className:i.classNames(c.tableWrap({})),role:"presentation"},m.createElement(s.TableSelection,{selectable:this.props.selectable,onRelease:this.selectionRelease,childRef:e=>{this.tableElement=e}},m.createElement("table",{ref:e=>this.tableElement=e,className:i.classNames(c.table({size:l})),role:"presentation",style:{userSelect:v}},te,m.createElement("tbody",{className:i.classNames(c.tbody({})),ref:this.tableBodyRef,role:"rowgroup",...s.tableKeyboardNavigationBodyAttributes},q))),j&&J()),p&&m.createElement("div",{className:i.classNames(c.heightContainer({})),role:"presentation"},m.createElement("div",{style:p?{height:this.vs.containerHeight+"px"}:{}})))),ee,re&&m.createElement(m.Fragment,null,m.createElement(s.DropClue,{ref:this.dragLogic.refDropElementClue}),m.createElement(s.DragClue,{ref:this.dragLogic.refDragElementClue})),this.showLicenseWatermark&&m.createElement(i.WatermarkOverlay,null)),y,this.props.pageable&&Z))}calculateMedia(){this.checkMatchMediaColumnsDifferece()||this.forceUpdate()}selectionChange(e){if(this.props.onSelectionChange){const{event:t,dataItem:r,dataIndex:i,columnIndex:o}=e,{mode:a,cell:n}=s.getSelectionOptions(this.props.selectable),l={...this.getArguments(t.syntheticEvent),dataItem:r,startColIndex:o,endColIndex:o,startRowIndex:i,endRowIndex:i,dataItems:this.getLeafDataItems(),altKey:!1,ctrlKey:!1,shiftKey:!1,metaKey:!1,mode:a,cell:n,isDrag:!1,componentId:this._gridId,selectedField:this.props.selectedField||""};this.props.onSelectionChange.call(void 0,l)}}raiseDataEvent(e,t,r,i,s){const o=this.props.onDataStateChange;if(e){const r={...this.getArguments(i),...t,targetEvent:s};e.call(void 0,r)}else o&&o.call(void 0,{...this.getArguments(i),targetEvent:s||{},dataState:{...this.getDataState(),...r}})}columnReorder(e,t,r){const i=this._columns[e],o=i.depth,a=e=>{do{e++}while(e<this._columns.length&&this._columns[e].depth>o);return e},n=this._columns.splice(e,a(e)-e);this._columns.splice(e<t?a(t-n.length):t,0,...n),this._columns.filter((e=>e.declarationIndex>=0)).forEach(((e,t)=>e.orderIndex=t)),this._columnsMutations++;const l=this._columns[e].locked&&this._columns[t].locked;s.updateLeft(this._columnsMap,this._columns,l||this._shouldUpdateLeftRight),s.updateRight(this._columnsMap,this._columns,l||this._shouldUpdateLeftRight),this._resized&&(this._shouldUpdateLeftRight=!1,this._resized=!1);const c=this.columns;if(this.forceUpdate(),this.props.onColumnReorder){const e={target:this,columns:c,columnId:i.id,nativeEvent:r};this.props.onColumnReorder.call(void 0,e)}}groupReorder(e,t,r){if(void 0===this.props.group)return;const i=this.props.group.slice();i.splice(t,0,...i.splice(e,1)),this.groupChange(i,r)}columnToGroup(e,t,r){const i=this._columns[e].field;if(!i)return;const s=(this.props.group||[]).slice();s.splice(t,0,{field:i}),this.groupChange(s,r)}columnGroupChange(e,t){const r=this.dragLogic.getCurrentGroupsLength;this.columnToGroup(e,r,t)}resetTableWidth(){let e=0;if(!this.columnResize.colGroupMain)return;const t=this.columnResize.colGroupMain.children;for(let r=0;r<t.length;r++){const i=t[r].width;if(!i)return;e+=parseFloat(i.toString())}e=Math.round(e),this._header&&this._header.setWidth(e),this._footer&&this._footer.setWidth(e),this.tableElement&&(this.tableElement.style.width=e+"px")}initColumns(e,t){const r=s.tableKeyboardNavigationTools.getIdPrefix(this.navigationStateRef),i=this.readColumns(e,r,this._columnsMutations),o=this.filterColumnsByMediaProp(i);this._columns=o,0===this._columns.length&&(this._columns=function(e,t,r,i){let o=[];Array.isArray(e)?o=e:e&&(o=e.data);const a=[];if(o.length>0){let e=o[0];if(t)for(let r=0;r<t.length;r++)e=e.items&&e.items[0];Object.getOwnPropertyNames(e).forEach((e=>{e!==r&&a.push(Object.assign({id:s.tableKeyboardNavigationTools.generateNavigatableId(""+i.prevId++,i.idPrefix,"column"),declarationIndex:-1,parentIndex:-1,depth:0,colSpan:0,rowSpan:0,index:0,left:0,right:0,rightBorder:!1,children:[],ariaColumnIndex:0,isAccessible:!0},v,{field:e}))}))}return a}(this.props.data,this.props.group,this.props.expandField,{prevId:0,idPrefix:r})),this.configureColumns(this._columns,t,r),this._columnsMap=this.mapColumns(this._columns,this._columnsMutations),this.columnResize.columns=this._columns,this.dragLogic.columns=this._columns}getDataState(){return{filter:this.props.filter,sort:this.props.sort,skip:this.props.skip,take:void 0!==this.props.take?this.props.take:this.props.pageSize,group:this.props.group}}getArguments(e){return{nativeEvent:e&&e.nativeEvent,syntheticEvent:e,target:this}}};it.displayName="KendoReactGrid",it.defaultProps={},it.propTypes={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"])},it.contextType=s.TableKeyboardNavigationContext;let st=it;o.registerForLocalization(st);let ot=class extends m.Component{render(){const{children:e}=this.props;return m.createElement("div",{id:this.props.id,className:i.classNames("k-columnmenu-item-wrapper",this.props.className),style:this.props.style},e)}};const at=e=>{const{title:t,iconClass:r,svgIcon:s,selected:o}=e;return m.createElement("div",{onClick:e.onClick,className:"k-columnmenu-item "+(o?"k-selected":"")},(r||s)&&m.createElement(i.IconWrap,{name:r&&i.toIconName(r),icon:s}),t)};let nt=class extends m.Component{constructor(){super(...arguments),this.onGroupClick=e=>{if(e.preventDefault(),this.props.onGroupChange){const{column:t}=this.props;if(!t.field)return;const r=(this.props.group||[]).slice(),i=r.findIndex((e=>e.field===t.field));i>-1?r.splice(i,1):r.push({field:t.field}),this.props.onGroupChange(r,e)}this.props.onCloseMenu&&this.props.onCloseMenu()}}render(){const{group:e,column:t}=this.props,r=o.provideLocalizationService(this),i=!!(e&&t.field&&e.find((e=>e.field===t.field))),s=i?z:O;return m.createElement(ot,null,m.createElement(at,{title:r.toLanguageString(s,oe[s]),iconClass:i?"k-i-ungroup":"k-i-group",svgIcon:i?a.ungroupIcon:a.groupIcon,onClick:this.onGroupClick}))}};o.registerForIntl(nt),o.registerForLocalization(nt);const lt="desc",ct={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"}}},ht=(e,t)=>t?t.findIndex((t=>t.field===e)):-1,dt=(e,t)=>!!(t&&e>-1&&"asc"===t[e].dir),pt=(e,t)=>!!(t&&e>-1&&t[e].dir===lt),ut=class extends m.Component{constructor(){super(...arguments),this.onAscClick=e=>{this.onSort(e,"asc"),this.props.onCloseMenu&&this.props.onCloseMenu()},this.onDescClick=e=>{this.onSort(e,lt),this.props.onCloseMenu&&this.props.onCloseMenu()},this.onSort=(e,t)=>{if(e.preventDefault(),!this.props.onSortChange)return;const{column:r,sortable:i,sort:s}=this.props,{allowUnsort:o,mode:a}=me(i||!1,!1),n=(s||[]).filter((e=>e.field===r.field))[0],l=ct[o][n&&n.dir||""][t],c="single"===a?[]:(this.props.sort||[]).filter((e=>e.field!==r.field));""!==l&&r.field&&c.push({field:r.field,dir:l}),this.props.onSortChange(c,e)}}render(){const{sort:e,column:t}=this.props,r=ht(t.field,e),i=o.provideLocalizationService(this);return m.createElement(ot,null,m.createElement(at,{title:i.toLanguageString(B,oe[B]),iconClass:"k-i-sort-asc-sm",svgIcon:a.sortAscSmallIcon,selected:dt(r,e),onClick:this.onAscClick}),m.createElement(at,{title:i.toLanguageString(V,oe[V]),iconClass:"k-i-sort-desc-sm",svgIcon:a.sortDescSmallIcon,selected:pt(r,e),onClick:this.onDescClick}))}};ut.active=(e,t)=>{const r=ht(e,t);return pt(r,t)||dt(r,t)};let gt=ut;o.registerForIntl(gt),o.registerForLocalization(gt);class mt extends m.Component{render(){return m.createElement("div",{id:this.props.id,className:i.classNames("k-columnmenu-item-content",this.props.className),style:this.props.style,tabIndex:0},m.createElement(u.Reveal,{style:{position:"relative",display:"block"}},this.props.show?this.props.children:null))}}class ft extends m.Component{constructor(e){super(e),this.renderOperatorEditor=()=>{if("boolean"===this.props.filterType)return;const e=this.props.operators.find((e=>e.operator===this.props.operator))||null;return m.createElement(d.DropDownList,{value:e,onChange:this.operatorChange,data:this.props.operators,textField:"text"})},this.inputChange=this.inputChange.bind(this),this.operatorChange=this.operatorChange.bind(this),this.boolDropdownChange=this.boolDropdownChange.bind(this)}render(){return m.createElement(m.Fragment,null,this.renderOperatorEditor(),this.filterComponent(this.props.filterType,this.props.value,this.props.booleanValues))}inputChange(e,t){De(e,t,this.props)}operatorChange(e){Fe(e,this.props.value,this.props.onChange)}boolDropdownChange(e){Le(e,this.props.onChange)}filterComponent(e,t,r){switch(e){case"numeric":return m.createElement(n.NumericTextBox,{value:t,onChange:e=>{this.inputChange(e.value,e.syntheticEvent)},rangeOnEnter:!1});case"date":return m.createElement(l.DatePicker,{value:t,onChange:e=>{this.inputChange(e.value,e.syntheticEvent)}});case"boolean":{const e=e=>null==e;return m.createElement(d.DropDownList,{onChange:this.boolDropdownChange,value:r.find((r=>r.operator===(e(t)?"":t))),data:r,textField:"text"})}default:return m.createElement(n.Input,{value:t||"",onChange:e=>{this.inputChange(e.target.value,e.syntheticEvent)}})}}}class vt extends m.Component{render(){const{firstFilterProps:e,hideSecondFilter:t,secondFilterProps:r,logicData:i,logicValue:s,onLogicChange:o}=this.props;return m.createElement(m.Fragment,null,m.createElement(ft,{...e}),!t&&m.createElement(m.Fragment,null,m.createElement(d.DropDownList,{data:i,value:s,onChange:o,className:"k-filter-and",textField:"text"}),m.createElement(ft,{...r})))}}const bt=e=>e||{filters:[],logic:"and"},Ct=(e,t)=>bt(t).filters.filter((t=>!!p.isCompositeFilterDescriptor(t)&&(t.filters&&t.filters.length&&t.filters.length<=2&&!t.filters.find((t=>p.isCompositeFilterDescriptor(t)||t.field!==e)))))[0]||null,xt=class extends m.Component{constructor(e){let t;if(super(e),this.removeGroup=(e,t)=>{const r=[...t.filters],i=r.findIndex((t=>t===e));return i>-1&&r.splice(i,1),{...t,filters:r}},this.insertGroup=(e,t)=>({...t,filters:[e,...t.filters]}),this.isControlled=()=>void 0!==this.props.expanded,this.onFilterExpand=()=>{const e=this.isControlled(),t=!(e?this.props.expanded:this.state.expanded);this.props.onExpandChange&&this.props.onExpandChange(t),e||this.setState({expanded:t})},this.firstFilterChange=e=>{this.filterChange(0,e)},this.secondFilterChange=e=>{this.filterChange(1,e)},this.filterChange=(e,t)=>{const r=this.state.filterGroup.filters.map(((r,i)=>i===e?{...r,value:t.value,operator:t.operator}:r));this.setState({filterGroup:{...this.state.filterGroup,filters:r}})},this.logicChange=e=>{this.setState({filterGroup:{...this.state.filterGroup,logic:e.target.value.operator}})},this.clear=e=>{if(e.preventDefault(),!this.props.onFilterChange)return;const t=this.props.column.field,r=bt(this.props.filter),i=Ct(t,this.props.filter),s=r.filters.filter((e=>e!==i));s.length?this.props.onFilterChange({...r,filters:s},e):this.props.onFilterChange(null,e),this.props.onCloseMenu&&this.props.onCloseMenu()},this.currentFilterGroup=()=>({...this.state.filterGroup,filters:this.state.filterGroup.filters.filter((e=>void 0!==e.value&&null!==e.value&&""!==e.value||null===e.value&&e.operator))}),this.submit=e=>{if(e.preventDefault(),!this.props.onFilterChange)return;const t=this.props.column.field,r=bt(this.props.filter),i=Ct(t,this.props.filter),s=this.currentFilterGroup();let o=null;if(i&&s.filters.length>0){const e=r.filters.map((e=>e===i?s:e));o={...r,filters:e}}else if(0===s.filters.length){const e=r.filters.filter((e=>e!==i));e.length&&(o={...r,filters:e})}else o={...r,filters:[...r.filters,s]};this.props.onFilterChange(o,e),this.props.onCloseMenu&&this.props.onCloseMenu()},e.column&&e.column.field){const r=Me(e.column.filter),i=Ge(e.filterOperators,r);t=Ct(e.column.field,e.filter),t=t?{...t,filters:t.filters.map((e=>({...e})))}:{logic:"and",filters:[{field:e.column.field,operator:i,value:we(i)?null:void 0},{field:e.column.field,operator:i,value:we(i)?null:void 0}]},1===t.filters.filter((t=>t.field===e.column.field)).length&&t.filters.splice(1,0,{field:e.column.field,operator:i})}this.state={expanded:e.expanded||!1,filterGroup:t}}render(){const{column:e,filterUI:t,hideSecondFilter:r,filterOperators:i}=this.props;if(!e||!e.field)return m.createElement("div",null);const s=Me(e.filter),n=void 0!==r?r:Te[s],l=o.provideLocalizationService(this),c=this.state.filterGroup.filters,d=Re(i[s],l),p=Re(Ne,l),u={field:e.field,value:c[0].value,operator:c[0].operator,operators:d,booleanValues:p,onChange:this.firstFilterChange,filterType:s},g={field:e.field,value:c[1].value,operator:c[1].operator,operators:d,booleanValues:p,onChange:this.secondFilterChange,filterType:s},f=this.state.filterGroup.logic,v=Re(ye,l),b={value:v.find((e=>e.operator===(null===f?"":f))),onChange:this.logicChange,data:v},C=t,x={firstFilterProps:u,secondFilterProps:g,logicData:b.data,logicValue:b.value,onLogicChange:b.onChange,hideSecondFilter:n},E=0!==this.currentFilterGroup().filters.length||we(c[0].operator)||we(c[1].operator),k=this.isControlled()?this.props.expanded:this.state.expanded,I=this.props.alwaysExpand;return m.createElement(ot,null,!I&&m.createElement(at,{title:l.toLanguageString(W,oe[W]),iconClass:"k-i-filter",svgIcon:a.filterIcon,onClick:this.onFilterExpand}),m.createElement(mt,{show:I||!!k},m.createElement("form",{className:"k-filter-menu",onSubmit:this.submit,onReset:this.clear},m.createElement("div",{className:"k-filter-menu-container"},C?m.createElement(C,{...x}):m.createElement(vt,{...x}),m.createElement("div",{className:"k-actions k-actions-stretched"},m.createElement(h.Button,{themeColor:"primary",disabled:!E},l.toLanguageString(K,oe[K])),m.createElement(h.Button,{type:"reset"},l.toLanguageString(P,oe[P])))))))}};xt.active=(e,t)=>!!Ct(e,t);let Et=xt;o.registerForLocalization(Et);const kt=class extends m.Component{constructor(e){super(e),this.defaultFilter=()=>this.props.filter?i.clone(this.props.filter):{filters:[],logic:"and"},this.isControlled=()=>void 0!==this.props.expanded,this.parseData=(e,t)=>{const r=this.props.column.field||"",i=e.map((e=>b(r,e)));return t?i.filter(((e,t)=>i.indexOf(e)===t)):i},this.getFilterIndex=()=>{const e=this.props.column.field;return this.defaultFilter().filters.findIndex((t=>t.filters&&t.filters.length>0&&t.filters[0].field===e))},this.onFilterExpand=()=>{const e=this.isControlled(),t=!(e?this.props.expanded:this.state.expanded);this.props.onExpandChange&&this.props.onExpandChange(t),e||this.setState({expanded:t})},this.handleSearchChange=e=>{const t=this.props.searchBoxFilterOperator?this.props.searchBoxFilterOperator:"startswith",r={logic:"and",filters:[{field:this.props.column.field,operator:t,value:e.target.value,ignoreCase:!0}]};this.setState({value:e.target.value,data:this.parseData(p.filterBy(this.props.data||[],r),this.props.uniqueData)})},this.handleClear=()=>{const e=this.props.searchBoxFilterOperator?this.props.searchBoxFilterOperator:"startswith",t={logic:"and",filters:[{field:this.props.column.field,operator:e,value:"",ignoreCase:!0}]};this.setState({value:"",data:this.parseData(p.filterBy(this.props.data||[],t),this.props.uniqueData)})},this.clear=e=>{if(e.preventDefault(),!this.props.onFilterChange)return;const t=this.state.currentFilter||null;null!==t&&t.filters.length>0?(this.compositeFilterIndex>=0&&t.filters.splice(this.compositeFilterIndex,1),this.props.onFilterChange(t,e)):this.props.onFilterChange(null,e),this.props.onCloseMenu&&this.props.onCloseMenu()},this.submit=e=>{if(e.preventDefault(),!this.props.onFilterChange)return;const t=this.state.currentFilter||null;this.props.onFilterChange(t,e),this.props.onCloseMenu&&this.props.onCloseMenu()},this.handleCheckBoxChange=(e,t)=>{const r=this.props.column.field||"",i={...this.state.currentFilter},s=[...this.state.currentFilter.filters];let o=[];if(-1!==this.compositeFilterIndex&&i.filters[this.compositeFilterIndex].filters&&"all"!==t&&(o=i.filters[this.compositeFilterIndex].filters),e.value&&"all"===t)this.state.data.forEach((e=>{o.push({field:r,operator:"eq",value:e})}));else if(e.value)o.push({field:r,operator:"eq",value:t});else if(this.state.currentFilter){const e=o.findIndex((e=>e.value===t));o.splice(e,1)}i.logic="and",-1!==this.compositeFilterIndex?s[this.compositeFilterIndex]={logic:"or",filters:o}:s.push({logic:"or",filters:o}),(!e.value&&"all"===t||0===o.length)&&s.splice(this.compositeFilterIndex,1),i.filters=s,this.setState({currentFilter:i})},this.isAllSelected=()=>{let e=!1;if(this.state.currentFilter){const t=[...this.state.currentFilter.filters];return-1!==this.compositeFilterIndex&&(e=this.state.data.every((e=>!(-1===this.compositeFilterIndex||!t[this.compositeFilterIndex].filters)&&t[this.compositeFilterIndex].filters.findIndex((t=>t.value===e))>=0)),e)}return e},this.compositeFilterIndex=this.getFilterIndex(),this.state={expanded:e.expanded||!1,value:"",data:this.parseData(this.props.data,this.props.uniqueData)||[],dataFromProps:this.parseData(this.props.data,!1)||[],currentFilter:this.defaultFilter()}}componentDidUpdate(){const e=this.props.column.field||"",t=this.props.data.map((t=>b(e,t)));((e,t)=>e.length===t.length&&e.every(((e,r)=>e===t[r])))(t,this.state.dataFromProps)||this.setState({data:t,dataFromProps:t})}render(){const{column:e}=this.props;if(!e||!e.field)return m.createElement("div",null);const t=o.provideLocalizationService(this),r=this.isControlled()?this.props.expanded:this.state.expanded,s=[];if(this.state.currentFilter){const t=[...this.state.currentFilter.filters];this.compositeFilterIndex=t.findIndex((t=>!!(t.filters&&t.filters.length>0)&&t.filters[0].field===e.field)),-1!==this.compositeFilterIndex&&t[this.compositeFilterIndex].filters.length>0&&t[this.compositeFilterIndex].filters.forEach((e=>{e.field===this.props.column.field&&s.push(e.value)}))}const l=this.props.searchBox?m.createElement(this.props.searchBox,{value:this.state.value,onChange:this.handleSearchChange}):m.createElement("div",{className:"k-searchbox k-textbox k-input k-input-md k-input-solid"},m.createElement(i.IconWrap,{className:"k-input-icon",name:"search",icon:a.searchIcon}),m.createElement(n.Input,{className:"k-input-inner",type:"text",placeholder:t.toLanguageString(U,oe[U]),value:this.state.value,onChange:e=>this.handleSearchChange(e.nativeEvent)}),m.createElement(h.Button,{type:"button",rounded:null,className:"k-input-button",onClick:this.handleClear,icon:"x",svgIcon:a.xIcon})),c=s.filter(((e,t)=>s.indexOf(e)===t));return m.createElement(ot,null,m.createElement(at,{title:t.toLanguageString(W,oe[W]),iconClass:"k-i-filter",svgIcon:a.filterIcon,onClick:this.onFilterExpand}),m.createElement(mt,{show:!!r},m.createElement("form",{className:"k-filter-menu",onSubmit:this.submit,onReset:this.clear},m.createElement("div",{className:"k-filter-menu-container"},l,m.createElement("ul",{className:"k-reset k-multicheck-wrap"},m.createElement("li",{className:"k-item k-check-all-wrap"},m.createElement(n.Checkbox,{label:t.toLanguageString(q,oe[q]),onChange:e=>this.handleCheckBoxChange(e,"all"),checked:this.isAllSelected()})),this.state.data.map(((e,t)=>m.createElement("li",{className:"k-item",key:t},m.createElement(n.Checkbox,{label:String(e),onChange:t=>this.handleCheckBoxChange(t,e),checked:c.includes(e)}))))),m.createElement("div",{className:"k-filter-selected-items"},c.length+" "+t.toLanguageString(X,oe[X])),m.createElement("div",{className:"k-actions k-hstack k-justify-content-stretch"},m.createElement(h.Button,{themeColor:"primary",type:"submit"},t.toLanguageString(K,oe[K])),m.createElement(h.Button,{className:"k-button",type:"reset"},t.toLanguageString(P,oe[P])))))))}};kt.defaultProps={uniqueData:!0};let It=kt;o.registerForLocalization(It);const yt=e=>{const[t,r]=m.useState(""),s=e.columns.reduce(((t,r)=>({...t,[r.id||""]:!!e.columnsState.find((e=>e.id===r.id))})),{}),[l,c]=m.useState(s),d=m.useMemo((()=>e.columns.filter((e=>{var r;return null==(r=e.title||e.field)?void 0:r.toLowerCase().includes(t.toLowerCase())}))),[e.columns,t]),p=o.useLocalization(),u=m.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]),g=m.useMemo((()=>Object.values(l).filter((e=>e)).length),[l]),f=m.useMemo((()=>g===e.columns.length),[e.columns,g]),v=m.useCallback((()=>{const e={...l};Object.keys(e).forEach(((t,r)=>e[t]=!(!f||0!==r)||!f)),c(e)}),[l,f]),b=m.useCallback(((e,t)=>{const r={...l};r[t||""]=e,c(r)}),[l]);return m.createElement("form",{className:"k-filter-menu"},m.createElement("div",{className:"k-filter-menu-container"},m.createElement(n.TextBox,{className:"k-searchbox",value:t,onChange:e=>{r(String(e.target.value))},prefix:()=>m.createElement(n.InputPrefix,null,m.createElement(i.IconWrap,{name:"search",icon:a.searchIcon}))}),m.createElement("ul",{className:"k-reset k-multicheck-wrap"},!t&&m.createElement("li",{className:"k-item k-check-all-wrap"},m.createElement(n.Checkbox,{checked:f,onChange:v,label:p.toLanguageString($,oe[$])})),d.map(((e,t)=>m.createElement("li",{key:e.id,className:"k-item"},m.createElement(n.Checkbox,{disabled:l[e.id||""]&&1===g,checked:l[e.id||""],onChange:t=>{var r;return b(!(null==(r=t.target.element)||!r.checked),e.id)},label:e.title||e.field}))))),m.createElement("div",{className:"k-filter-selected-items"},g," selected items"),m.createElement("div",{className:"k-actions k-actions-start k-actions-horizontal"},m.createElement(h.Button,{type:"button",themeColor:"primary",onClick:u},p.toLanguageString(H,oe[H])),m.createElement(h.Button,{type:"button",onClick:()=>{c(s)}},p.toLanguageString(A,oe[A])))))};yt.displayName="GridColumnMenuColumnsList";let St=class extends m.Component{render(){return null}};const wt=class extends m.Component{render(){return m.createElement("div",{className:i.classNames("k-toolbar k-grid-toolbar k-toolbar-solid",{"k-toolbar-md":!this.props.size,[`k-toolbar-${i.kendoThemeMaps.sizeMap[this.props.size]||this.props.size}`]:this.props.size},this.props.className),"aria-label":this.props.ariaLabel,"aria-controls":this.props.ariaControls,role:"toolbar"},this.props.children)}};wt.displayName="KendoReactGridToolbar";let Rt=wt;const Nt=e=>{const{data:t=[]}=e;return m.createElement("div",{className:"k-selection-aggregates k-grid-selection-aggregates"},t.map(((e,t)=>m.createElement("div",{key:t},m.createElement("span",{className:"k-selection-aggregates-item-text"},e.type,": "),m.createElement("span",{className:"k-selection-aggregates-item-value"},e.formattedValue)))))};Nt.displayName="KendoReactGridStatusBar";const Tt=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},Dt=i.withIdHOC(i.withUnstyledHOC(st));Dt.displayName="KendoReactGrid",Object.defineProperty(e,"getSelectedState",{enumerable:!0,get:function(){return s.getSelectedState}}),Object.defineProperty(e,"getSelectedStateFromKeyDown",{enumerable:!0,get:function(){return s.getSelectedStateFromKeyDown}}),Object.defineProperty(e,"setSelectedState",{enumerable:!0,get:function(){return s.setSelectedState}}),e.GRID_COL_INDEX_ATTRIBUTE=he,e.GRID_PREVENT_SELECTION_ELEMENT=de,e.GRID_ROW_INDEX_ATTRIBUTE=ce,e.Grid=Dt,e.GridCell=Ve,e.GridClassComponent=st,e.GridColumn=f,e.GridColumnMenuCheckboxFilter=It,e.GridColumnMenuColumnsList=yt,e.GridColumnMenuFilter=Et,e.GridColumnMenuFilterCell=ft,e.GridColumnMenuFilterUI=vt,e.GridColumnMenuGroup=nt,e.GridColumnMenuItem=at,e.GridColumnMenuItemContent=mt,e.GridColumnMenuItemGroup=ot,e.GridColumnMenuSort=gt,e.GridColumnMenuWrapper=Ce,e.GridCommonDragLogic=Be,e.GridDetailRow=St,e.GridEditCell=ue,e.GridFilterCell=Oe,e.GridGroupCell=Ue,e.GridHeaderCell=xe,e.GridHierarchyCell=le,e.GridNoRecords=Ye,e.GridRow=qe,e.GridSelectionCell=ne,e.GridToolbar=Rt,e.StatusBar=Nt,e.booleanFilterValues=Ne,e.cellBoolDropdownChange=Le,e.cellInputChange=De,e.cellOperatorChange=Fe,e.filterGroupByField=Ct,e.getStatusData=e=>{const{dataItems:t,target:r,selectedField:s}=e,o=Tt(r.columns).map((e=>e.field)).filter((e=>e&&"string"==typeof e)).map((e=>i.getter(e))),a=i.getter(s),n={dates:[],numbers:[],booleans:[],others:[]};t.forEach((e=>{const t=a(e);t&&t.forEach((t=>{(e=>{"number"==typeof e?n.numbers.push(e):"boolean"==typeof e?n.booleans.push(e):e instanceof Date?n.dates.push(e):n.others.push(e)})(o[t](e))}))}));const l=n.dates.map((e=>e.getTime())),c=n.booleans.filter((e=>e)).length,h=n.booleans.filter((e=>!e)).length,d=n.numbers.length?n.numbers.reduce(((e,t)=>e+t),0):void 0,p={sum:d,average:"number"==typeof d?d/n.numbers.length:void 0,min:n.numbers.length?Math.min(...n.numbers):void 0,max:n.numbers.length?Math.max(...n.numbers):void 0,count:n.numbers.length+n.booleans.length+n.dates.length+n.others.length,isTrue:c>0?c:void 0,isFalse:h>0?h:void 0,earliest:n.dates.length?new Date(Math.min(...l)):void 0,latest:n.dates.length?new Date(Math.max(...l)):void 0},u=(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(p).forEach((e=>{const t=e,r=p[t];void 0!==r&&g.push({type:t,value:r,formattedValue:u(r,t)})})),g},e.gridMessages=oe,e.leafColumns=Tt,e.operators=Se,e.pagerFirstPage=T,e.pagerInfo=N,e.pagerItemPerPage=L,e.pagerLastPage=M,e.pagerNextPage=G,e.pagerPreviousPage=D,e.rootFilterOrDefault=bt}));
|
|
8
|
+
!function(e,t){"object"==typeof exports&&"undefined"!=typeof module?t(exports,require("react"),require("prop-types"),require("@progress/kendo-react-common"),require("@progress/kendo-react-data-tools"),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-buttons"),require("@progress/kendo-react-dropdowns"),require("@progress/kendo-data-query"),require("@progress/kendo-react-animation")):"function"==typeof define&&define.amd?define(["exports","react","prop-types","@progress/kendo-react-common","@progress/kendo-react-data-tools","@progress/kendo-react-intl","@progress/kendo-svg-icons","@progress/kendo-react-inputs","@progress/kendo-react-dateinputs","@progress/kendo-react-popup","@progress/kendo-react-buttons","@progress/kendo-react-dropdowns","@progress/kendo-data-query","@progress/kendo-react-animation"],t):t((e="undefined"!=typeof globalThis?globalThis:e||self).KendoReactGrid={},e.React,e.PropTypes,e.KendoReactCommon,e.KendoReactDataTools,e.KendoReactIntl,e.KendoSvgIcons,e.KendoReactInputs,e.KendoReactDateinputs,e.KendoReactPopup,e.KendoReactButtons,e.KendoReactDropdowns,e.KendoDataQuery,e.KendoReactAnimation)}(this,(function(e,t,r,n,l,a,o,i,s,c,d,u,p,h){"use strict";function g(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 m=g(t);const f=e=>null;f.displayName="KendoReactGridColumn";const v={filterable:!0,editable:!0,sortable:!0,resizable:!0,reorderable:!0,groupable:!0};function b(e,t){const r=(e||"").split(".");let n=t;return r.forEach((e=>{n=n?n[e]:void 0})),n}function C(e,t,r,n,l,a,o=0){let i=o;for(let s=0;s<t.length;s++){if(!l||void 0===t[s].value||void 0===t[s].items){e[e.length]={dataIndex:n.index,dataItem:t[s],rowType:"data",level:o,expanded:void 0===a||b(a,t[s])},n.index++;continue}i=Math.max(i,o+1);const c=void 0===a||void 0===b(a,t[s])||b(a,t[s]);e[e.length]={dataIndex:-1,dataItem:t[s],level:o,rowType:"groupHeader",expanded:c},c&&(i=Math.max(C(e,t[s].items,r,n,l,a,o+1),i)),("always"===r||c&&"visible"===r)&&(e[e.length]={dataIndex:-1,dataItem:t[s],rowType:"groupFooter",level:o,expanded:c})}return i}function E(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=E(e.children,i&&i.children||[],r,n+1);a.push(Object.assign({depth:n},v,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,rowSpan:0,colSpan:0,isAccessible:!0,left:i&&Math.floor(i.left),right:i&&Math.floor(i.right)}))}));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}function x(e,t,r,n){let a=[];Array.isArray(e)?a=e:e&&(a=e.data);const 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&&o.push(Object.assign({id:l.tableKeyboardNavigationTools.generateNavigatableId(""+n.prevId++,n.idPrefix,"column"),declarationIndex:-1,parentIndex:-1,depth:0,colSpan:0,rowSpan:0,index:0,left:0,right:0,rightBorder:!1,children:[],ariaColumnIndex:0,isAccessible:!0},v,{field:e}))}))}return o}f.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 k=e=>void 0!==e.width?Math.floor(parseFloat(e.width.toString()))+"px":void 0,y=(e,t)=>t&&t.filter((t=>t.field===e)).length>0,I=e=>(e.sort(((e,t)=>e.declarationIndex-t.declarationIndex)),e.map((e=>{const{declarationIndex:t,parentIndex:r,depth:n,colSpan:l,rowSpan:a,index:o,kFirst:i,children:s,...c}=e;return s.length?{children:I(s),...c}:c}))),S="undefined"!=typeof window&&/Firefox/.test(window.navigator.userAgent),N=17895697,w=(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},R="grid.noRecords",T="grid.pagerInfo",M="grid.pagerFirstPage",G="grid.pagerPreviousPage",D="grid.pagerNextPage",L="grid.pagerLastPage",O="grid.pagerItemsPerPage",H="grid.groupPanelEmpty",P="grid.groupColumn",F="grid.ungroupColumn",z="grid.columnMenu",K="grid.filterApplyButton",A="grid.filterClearButton",B="grid.filterResetButton",W="grid.filterSubmitButton",q="grid.filterTitle",V="grid.sortAscending",U="grid.sortDescending",_="grid.searchPlaceholder",j="grid.filterCheckAll",$="grid.filterChooseOperator",X="grid.filterSelectAll",Y="grid.filterSelectedItems",J="grid.sortAriaLabel",Q="grid.filterAriaLabel",Z="grid.groupPanelAriaLabel",ee="grid.groupExpand",te="grid.groupCollapse",re="grid.detailExpand",ne="grid.detailCollapse",le="grid.selectRow",ae="grid.gridAriaLabel",oe={[re]:"Expand detail row",[ne]:"Collapse detail row",[ee]:"Expand group",[te]:"Collapse Group",[R]:"No records available",[H]:"Drag a column header and drop it here to group by that column",[K]:"Apply",[A]:"Clear",[B]:"Reset",[W]:"Filter",[q]:"Filter",[V]:"Sort Ascending",[U]:"Sort Descending",[J]:"Sortable",[P]:"Group Column",[F]:"Ungroup Column",[z]:"Column menu",[O]:"items per page",[T]:"{0} - {1} of {2} items",[M]:"Go to the first page",[G]:"Go to the previous page",[D]:"Go to the next page",[L]:"Go to the last page","grid.pagerPage":"Page","grid.pagerPageSizeAriaLabel":"Page size","grid.pagerOf":"of","grid.pagerTotalPages":"{0}",[_]:"Search",[j]:"Check All",[$]:"Choose Operator",[Y]:"selected items",[X]:"Select All",[Q]:"Filter",[Z]:"Group panel",[ae]:"Table",[le]:"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"};function ie(e){const t=e.replace(/^pager\.([a-z])/,((e,t)=>"grid.pager"+t.toUpperCase()));return{messageKey:t,defaultMessage:oe[t]}}const se=e=>{const{selectionChange:t,field:r,dataItem:o,id:i,className:s,colSpan:c,style:d,ariaColumnIndex:u,rowType:p,cells:h,render:g}=e,f=a.useLocalization(),v=m.useCallback((e=>{t&&t({syntheticEvent:e})}),[t]),C=n.useId(),E=b(r,o),x=l.useTableKeyboardNavigation(i),k={colSpan:c,style:d,className:n.classNames("k-table-td",s),"aria-colindex":u,role:"gridcell",...x},y="boolean"==typeof E&&E,I=m.createElement("span",{key:1,className:"k-checkbox-wrap"},m.createElement("input",{id:C,tabIndex:-1,type:"checkbox",className:"k-checkbox k-checkbox-md k-rounded-md","aria-label":f.toLanguageString(le,oe[le]),"aria-checked":y,checked:y,onChange:v})),S="groupHeader"!==p?m.createElement("td",{...k},I):null,N=p||"data",w=h;if(w&&w.select&&w.select[N]){const t=w.select[N];return m.createElement(t,{...e,tdProps:k},I)}return g?g.call(void 0,S,e):S},ce=e=>{let t=null,r=null,i=null;const s=b(e.field,e.dataItem),c=l.useTableKeyboardNavigation(e.id),d=a.useLocalization(),u=m.useCallback((t=>{t.isDefaultPrevented()||t.keyCode===n.Keys.enter&&e.onChange&&(t.preventDefault(),e.onChange({dataItem:e.dataItem,dataIndex:e.dataIndex,syntheticEvent:t,field:e.field,value:!s}))}),[e.dataItem,e.dataIndex,e.field,e.onChange,s]);if("groupFooter"===e.rowType)r={className:"k-table-td k-hierarchy-cell",role:"gridcell",...c},t=m.createElement("td",{...r});else if("groupHeader"!==e.rowType){const l=s?ne:re,a=d.toLanguageString(l,oe[l]);r={className:"k-table-td k-hierarchy-cell",onKeyDown:u,"aria-expanded":!!s,role:"gridcell","aria-colindex":e.ariaColumnIndex,...c},i=m.createElement("a",{onClick:t=>{t.preventDefault(),e.onChange&&e.onChange({dataItem:e.dataItem,dataIndex:e.dataIndex,syntheticEvent:t,field:e.field,value:!s})},"aria-label":a,href:"#",tabIndex:-1},m.createElement(n.IconWrap,{name:s?"minus":"plus",icon:s?o.minusIcon:o.plusIcon})),t=m.createElement("td",{...r},i)}const p=e.rowType||"data",h=e.cells;if(h&&h.hierarchy&&h.hierarchy[p]){const t=h.hierarchy[p];return m.createElement(t,{...e,tdProps:r},i)}return e.render?e.render.call(void 0,t,e):t},de=l.TABLE_ROW_INDEX_ATTRIBUTE,ue=l.TABLE_COL_INDEX_ATTRIBUTE,pe=l.TABLE_PREVENT_SELECTION_ELEMENT,he=/^(?!.*\bChrome).*\bSafari/i,ge=e=>{const t=b(e.field,e.dataItem),r=n.useUnstyled(),a=r&&r.uGrid?r.uGrid:n.uGrid;let o=null;const c=n.classNames(a.editTd({selected:e.isSelected}),e.className),d=n.useId(),u=l.useTableKeyboardNavigation(e.id);let p=null,h=null;const g=m.useCallback((t=>{if(e.onChange){const r="checkbox"===t.target.type?t.target.checked:t.target.value;e.onChange({dataItem:e.dataItem,dataIndex:e.dataIndex,field:e.field,syntheticEvent:t,value:r})}}),[e.onChange,e.dataItem,e.dataIndex,e.field]),f=m.useCallback((t=>{e.onContextMenu&&e.onContextMenu.call(void 0,t,e.dataItem,e.field)}),[e.onContextMenu,e.dataItem,e.field]),v=m.useCallback((t=>{e.onChange&&e.onChange({dataItem:e.dataItem,dataIndex:e.dataIndex,field:e.field,syntheticEvent:t.syntheticEvent,value:t.value})}),[e.onChange,e.dataItem,e.dataIndex,e.field]);switch(e.editor){case"numeric":p={onContextMenu:f,colSpan:e.colSpan,style:e.style,className:c,"aria-colindex":e.ariaColumnIndex,"aria-selected":e.isSelected,[ue]:e.columnIndex,role:"gridcell",...u},h=m.createElement(i.NumericTextBox,{value:void 0===t?null:t,onChange:v,[l.TABLE_PREVENT_SELECTION_ELEMENT]:!0}),o=m.createElement("td",{...p},h);break;case"date":p={onContextMenu:f,colSpan:e.colSpan,style:e.style,className:c,"aria-colindex":e.ariaColumnIndex,"aria-selected":e.isSelected,[ue]:e.columnIndex,role:"gridcell",...u},h=m.createElement(s.DatePicker,{value:t,onChange:v,[l.TABLE_PREVENT_SELECTION_ELEMENT]:!0}),o=m.createElement("td",{...p},h);break;case"boolean":p={onContextMenu:f,colSpan:e.colSpan,style:e.style,className:c,"aria-colindex":e.ariaColumnIndex,"aria-selected":e.isSelected,[ue]:e.columnIndex,role:"gridcell",...u},h=[m.createElement("span",{key:1,className:"k-checkbox-wrap"},m.createElement("input",{checked:t||!1,id:d,type:"checkbox",className:"k-checkbox k-checkbox-md k-rounded-md",onChange:g})),m.createElement("label",{className:"k-checkbox-label",htmlFor:d,key:2})],o=m.createElement("td",{...p},h);break;default:p={onContextMenu:f,colSpan:e.colSpan,style:e.style,className:c,"aria-colindex":e.ariaColumnIndex,"aria-selected":e.isSelected,[ue]:e.columnIndex,role:"gridcell",...u},h=m.createElement("input",{style:{width:"100%"},className:"k-input",value:t||"",onChange:g,[l.TABLE_PREVENT_SELECTION_ELEMENT]:!0}),o=m.createElement("td",{...p},h)}const C=e.editor||"text",E=e.cells;if(E){let t;return E.edit&&E.edit[C]?t=E.edit[C]:E.data&&(t=E.data),m.createElement(t,{...e,tdProps:p},h)}return e.render?e.render.call(void 0,o,e):o},me=m.forwardRef(((e,t)=>{const r=m.useRef(null),a=m.useRef(null),o=m.useRef(!1),i=n.useRtl(e.elemRef);e.columnResize&&e.columnResize.setIsRtl("rtl"===i),m.useImperativeHandle(t,(()=>({setScrollLeft:e=>{r.current&&r.current.scrollLeft!==e&&(o.current=!0,r.current.scrollLeft=e)},setWidth:e=>{a.current&&(a.current.style.width=e+"px")},table:()=>a.current})));const s=n.useUnstyled(),c=s&&s.uGrid?s.uGrid:n.uGrid,{size:d="md"}=e;return e.staticHeaders?m.createElement("div",{ref:e.elemRef,className:n.classNames(c.header({draggable:e.draggable}),e.className),role:"presentation"},m.createElement("div",{ref:r,className:n.classNames(c.headerWrap({})),style:e.hasScrollbarWidth?{}:{borderWidth:0},onScroll:t=>{if(o.current)return void(o.current=!1);if(!r.current)return;const n=r.current.scrollLeft,l=e.scrollableDataElement();l&&l.scrollLeft!==n&&(l.scrollLeft=n)},role:"presentation"},m.createElement("table",{ref:a,className:n.classNames(c.headerTable({size:d}),e.className),role:"presentation"},m.createElement("colgroup",{ref:t=>{e.columnResize.colGroupHeader=t}},e.cols),m.createElement("thead",{className:n.classNames(c.tableThead({})),role:"rowgroup",...l.tableKeyboardNavigationHeaderAttributes},e.headerRow,e.filterRow)))):m.createElement("thead",{role:"presentation",className:n.classNames(c.thead({draggable:e.draggable}),e.className),...l.tableKeyboardNavigationHeaderAttributes},e.headerRow,e.filterRow)}));me.displayName="KendoReactHeader";const fe=(...e)=>Object.assign({allowUnsort:!0,mode:"single"},...e),ve=e=>{const t=m.useRef(null),r=n.useUnstyled(),l=r&&r.uGrid?r.uGrid:n.uGrid;return m.createElement(n.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},m.createElement("tr",{className:n.classNames(l.simpleTr({})),style:{touchAction:"none"},role:"row","aria-rowindex":e.ariaRowIndex},e.children))},be=[".k-columnmenu-item-content",".k-filter-menu-container"].map((e=>n.TABBABLE_ELEMENTS.map((t=>`${e} ${t}`)))),Ce=[[".k-tabstrip-items"],[".k-columnmenu-item"],...be],Ee=e=>{const[t,r]=m.useState(!1),l=m.useRef(null),i=m.useRef(null),s=m.useRef(null),d=m.useRef(0),{columnMenu:u,...p}=e,{column:h,columnMenuIcon:g,navigatable:f}=e,v=a.useLocalization(),b=h.title||h.field,C=b?`${b} `:"",E=()=>{e.onCloseMenu&&e.onCloseMenu(),r(!1),!e.navigatable&&l.current&&l.current.focus()},x=m.useMemo((()=>void 0!==e.show?e.show:t),[e.show,t]),k=(e,t,r)=>{r.preventDefault(),r.shiftKey?t.focusPrevious(e):t.focusNext(e)},y=(e,t,r)=>{e&&e.click()},I=(e,t,r)=>{r.preventDefault(),E()},S=(e,t,r)=>{r.preventDefault(),t.focusElement(e)};return m.useEffect((()=>(x&&i.current&&(s.current=new n.Navigation({tabIndex:0,root:i,selectors:Ce,keyboardEvents:{keydown:{Tab:k,Enter:y,Escape:I}},mouseEvents:{mousedown:S}}),s.current.focusElement(s.current.first,null)),()=>{s.current&&(s.current=null)})),[x]),m.createElement(m.Fragment,null,m.createElement("a",{className:"k-grid-header-menu k-grid-column-menu",ref:l,onClick:n=>{n.preventDefault(),t&&e.onCloseMenu&&e.onCloseMenu(),r(!t)},onKeyDown:e=>{var t;if(e.keyCode===n.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:f?-1:void 0,"aria-label":`${f?"":C}${v.toLanguageString(z,oe[z])}`},g?m.createElement(n.IconWrap,{name:g.name,icon:g}):m.createElement(n.IconWrap,{name:"more-vertical",icon:o.moreVerticalIcon})),m.createElement(c.Popup,{anchor:l.current,show:x,popupClass:"k-column-menu k-column-menu-popup k-grid-columnmenu-popup",onMouseDownOutside:e=>{!e.isAnchorClicked&&r(!1)}},m.createElement("div",{ref:i,onBlur:e=>{const t=n.getActiveElement(document);clearTimeout(d.current),d.current=window.setTimeout((()=>{t&&e.relatedTarget!==l.current&&i.current&&!i.current.contains(t)&&E()}))},onFocus:()=>{clearTimeout(d.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"}},u&&m.createElement(u,{...p,onCloseMenu:E}))))},xe=e=>{const t=n.useUnstyled(),r=t&&t.uGrid?t.uGrid:n.uGrid,{columnMenuWrapperProps:l}=e,a=e.onClick?{onClick:e.onClick}:{},o=m.createElement("span",{className:n.classNames(r.headerCellInner({}))},m.createElement("span",{className:n.classNames(r.headerCellLink({sortable:e.columnMenuWrapperProps.sortable})),...a},m.createElement("span",{className:n.classNames(r.columnTitle({}))},e.title||e.field||" "),e.children),l.columnMenu&&m.createElement(Ee,{...l}));return e.render?e.render.call(void 0,o,e):o},ke={true:{asc:"desc",desc:"","":"asc"},false:{asc:"desc",desc:"asc","":"asc"}},ye={none:"none",asc:"ascending",desc:"descending"},Ie=e=>{const[t,r]=m.useState(),i=a.useLocalization(),s=n.useUnstyled(),c=s&&s.uGrid?s.uGrid:n.uGrid,d=m.useRef(null);let u=0,p=-1;const h=(t,r)=>{if(t.preventDefault(),!e.sortChange)return;const{allowUnsort:n,mode:l}=fe(e.sortable||!1,r.sortable||!1),a=(e.sort||[]).filter((e=>e.field===r.field))[0],o=ke[n][a&&a.dir||""],i="single"===l?[]:(e.sort||[]).filter((e=>e.field!==r.field));""!==o&&r.field&&i.push({field:r.field,dir:o}),e.sortChange(i,t)},g=()=>{r(void 0),d.current&&"-1"!==d.current.getAttribute("tabindex")&&d.current.focus()},f=t=>{if(!e.sort)return null;const r=n.classNames(c.sortIcon({}));return t>=0&&[m.createElement("span",{key:1,className:r},m.createElement(n.IconWrap,{name:"sort-"+e.sort[t].dir+"-small",icon:"asc"===e.sort[t].dir?o.sortAscSmallIcon:o.sortDescSmallIcon})),e.sort.length>1&&m.createElement("span",{key:2,className:r},m.createElement("span",{className:n.classNames(c.sortOrder({}))},t+1))]},v=a=>a.map((a=>{const o=e.columns[a],s=e.sortable&&o.sortable,v=e.sort?e.sort.findIndex((e=>e.field===o.field)):-1,b=v>=0&&e.sort[v].dir||"none",C=null===o.columnMenu?null:o.columnMenu||e.columnMenu,E=o.menuIcon||e.columnMenuIcon,x=n.classNames(n.classNames(c.headerTh({first:o.kFirst,filterable:!!C,locked:o.locked,sorted:e.sort&&e.sort.some((e=>e.field===o.field))})),o.headerClassName);!1===o.locked&&(o.left=0);const k=void 0!==o.left?e.isRtl?{left:o.right,right:o.left}:{left:o.left,right:o.right}:{},y=i.toLanguageString(J,oe[J]),I=o.isAccessible?{ariaSort:ye[b],role:"columnheader",ariaColumnIndex:o.ariaColumnIndex,ariaSelected:!1,ariaDescription:s?y:""}:{role:"presentation"},S=o.declarationIndex>=0?++p:--u,N=o.headerCell?o.headerCell:xe,R=m.createElement(N,{key:1,field:o.field,onClick:s&&(e=>h(e,o))||void 0,selectionChange:e.selectionChange,title:o.title,selectionValue:o.headerSelectionValue,render:e.cellRender,children:f(v),columnMenuWrapperProps:{column:{field:o.field,title:o.title,locked:o.locked,filter:o.filter,id:o.id},sortable:s&&e.sortable,sort:e.sort,onSortChange:e.sortChange,filter:e.filter,filterable:e.filterable&&o.filterable,filterOperators:e.filterOperators,onFilterChange:e.filterChange,show:t===o.field||void 0,onCloseMenu:g,navigatable:e.navigatable,group:e.group,groupable:e.groupable,onGroupChange:e.groupChange,columnMenu:C,columnMenuIcon:E}}),T={...I,key:S,colSpan:o.colSpan,rowSpan:o.rowSpan,className:x,style:k,columnId:o.id,navigatable:o.navigatable,onKeyDown:t=>((t,l)=>{if(t.isDefaultPrevented())return;const{keyCode:a,metaKey:o,ctrlKey:i,altKey:s}=t,c=e.sortable&&l.sortable,u=t.target;if(c&&t.keyCode===n.Keys.enter&&-1!==u.className.indexOf("k-table-th")&&h(t,l),e.navigatable){if(e.groupable&&(o&&a===n.Keys.enter||i&&a===n.Keys.space)){t.preventDefault();const r=e.columns.findIndex((e=>e.field===l.field));e.columnGroupChange&&e.columnGroupChange(r,t)}s&&a===n.Keys.down&&(t.preventDefault(),r(l.field),d.current=u)}})(t,o),role:"columnheader"},M=[R,e.columnResize&&e.columnResize.resizable&&o.resizable&&m.createElement(l.ColumnResizer,{key:2,resize:(t,r,n)=>e.columnResize&&e.columnResize.dragHandler(t,o,r,n),autofit:t=>e.columnResize&&e.columnResize.dblClickHandler(t,[o.id])})],G=w(e.cells,o.cells);if(G&&G.headerCell){const e=G.headerCell;return m.createElement(e,{...R.props,key:S,thProps:T,index:a},M)}return m.createElement(l.HeaderThElement,{...T,key:S},M)}));return e.columnsMap.map(((t,r)=>e.pressHandler&&m.createElement(ve,{key:r,pressHandler:e.pressHandler,dragHandler:e.dragHandler,releaseHandler:e.releaseHandler,ariaRowIndex:r+1,dragClue:e.dragClue,headerRef:e.headerRef,containerRef:e.containerRef},v(t))||m.createElement("tr",{key:r,className:n.classNames(c.simpletr({})),role:"row","aria-rowindex":r+1},v(t))))},Se=[{text:"grid.filterAndLogic",operator:"and"},{text:"grid.filterOrLogic",operator:"or"}],Ne={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"}]},we=e=>"isnull"===e||"isnotnull"===e||"isempty"===e||"isnotempty"===e,Re=(e,t)=>e.map((e=>({text:t.toLanguageString(e.text,oe[e.text]),operator:e.operator}))),Te=[{text:"grid.filterBooleanAll",operator:""},{text:"grid.filterIsTrue",operator:!0},{text:"grid.filterIsFalse",operator:!1}],Me={text:!1,numeric:!1,date:!1,boolean:!0},Ge=(e,t,r)=>{const n=De(r.operators);let l=r.operator;switch(r.filterType){case"numeric":case"date":(!l||we(l))&&(l=n),null===e&&l===n&&(l="");break;case"text":(!l||we(l))&&(l=n),!e&&l===n&&(l="");break;default:return}r.onChange({value:e,operator:l,syntheticEvent:t})},De=(e,t)=>t?e[t][0].operator:e[0].operator,Le=e=>e||"text",Oe=(e,t)=>{const r=e.target.value;t({value:r.operator,operator:""===r.operator?"":"eq",syntheticEvent:e.syntheticEvent})},He=(e,t,r)=>{let n=t;const l=e.target.value;e.target.state.opened&&(we(l.operator)&&(n=null),null===t&&!we(l.operator)&&(n=void 0),r({value:n,operator:l.operator,syntheticEvent:e.syntheticEvent}))},Pe=e=>{const t=m.useRef(),r=a.useLocalization(),l=(t,r)=>{Ge(t,r,e)},c=t=>{He(t,e.value,e.onChange)},p=t=>{Oe(t,e.onChange)},h=m.createElement("div",{className:"k-filtercell"},m.createElement("div",{className:"k-filtercell-wrapper"},((r,n,a)=>{switch(r){case"numeric":return m.createElement(i.NumericTextBox,{ref:t,size:e.size,value:n,onChange:e=>{l(e.value,e.syntheticEvent)},title:e.title,ariaLabel:e.ariaLabel});case"date":return m.createElement(s.DatePicker,{ref:t,size:e.size,value:n,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 r=e=>null==e;return m.createElement(u.DropDownList,{ref:t,size:e.size,onChange:p,value:a.find((e=>e.operator===(r(n)?"":n))),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 m.createElement(i.TextBox,{ref:t,size:e.size,value:n||"",onChange:e=>{l(e.target.value,e.syntheticEvent)},title:e.title,"aria-label":e.ariaLabel})}})(e.filterType,e.value,e.booleanValues),m.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 m.createElement(u.DropDownList,{ref:e=>t=e,size:e.size,value:n,onChange:c,className:"k-dropdown-operator",iconClassName:"k-i-filter k-icon",svgIcon:o.filterIcon,data:e.operators,textField:"text",title:r.toLanguageString($,oe[$]),popupSettings:{width:"",onMouseDownOutside:function(e){!e.isAnchorClicked&&e.state&&e.state.props.show&&t&&t.togglePopup()}}})})()," ",m.createElement(d.Button,{size:e.size,icon:"filter-clear",svgIcon:o.filterClearIcon,className:n.classNames({"k-clear-button-visible":!!(null!==e.value&&""!==e.value||e.operator)}),title:r.toLanguageString(A,oe[A]),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,h,e):h},Fe=e=>{const t=a.useLocalization(),r=(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},o=e.filter&&e.filter.filters||[];let i=0,s=-1;const c=e.columns.filter((e=>0===e.children.length)).map((a=>{const c=Le(a.filter),d=(e=>{if(void 0===e)return;const t=o.filter((t=>t.field===e));return t.length?t[0]:void 0})(a.field),u=`${a.field} ${t.toLanguageString(Q,oe[Q])}`;let p=d&&d.value;void 0===p&&(p="text"===c?"":null);const h=a.filterable&&{render:e.cellRender,field:a.field,title:a.filterTitle,value:p,operator:d&&d.operator,operators:Re(e.filterOperators[c]||[],t),booleanValues:Re(Te,t),filterType:c,ariaLabel:u,onChange:t=>{((t,r,n,l)=>{if(!e.filterChange)return;const a=[];(""!==t&&null!==t||""!==r)&&a.push({field:n,operator:r,value:t}),e.filter&&e.filter.filters&&(e.filter.filters||[]).forEach((e=>{const t=e;t&&t.field!==n&&a.push(t)}));const o=e.filter&&e.filter.logic?e.filter.logic:"and";e.filterChange(a.length>0?{logic:o,filters:a}:null,l)})(t.value,t.operator,a.field,t.syntheticEvent)}},g=a.declarationIndex>=0?++s:--i,f=void 0!==a.left?e.isRtl?{left:a.right,right:a.left}:{left:a.left,right:a.right}:{},v={columnId:l.tableKeyboardNavigationTools.getFilterColumnId(a.id),navigatable:a.navigatable||e.navigatable,style:f,className:n.classNames("k-table-td",r(a.field,a.locked)||void 0),role:"gridcell",ariaLabel:u,ariaColumnIndex:a.ariaColumnIndex},b=h&&(a.filterCell?m.createElement(a.filterCell,{...h}):m.createElement(Pe,{size:e.size,...h})),C=w(e.cells,a.cells);if(C&&C.filterCell){const e=C.filterCell;return m.createElement(e,{key:g,...h,tdProps:v,index:s},b)}return m.createElement(l.HeaderTdElement,{key:g,...v},b)}));return m.createElement("tr",{className:"k-table-row k-filter-row","aria-rowindex":e.ariaRowIndex,role:"row"},c)},ze=e=>{const t=m.useRef(null),{dir:r,title:l}=e;return m.createElement(n.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},m.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===n.Keys.delete||t.keyCode===n.Keys.backspace)&&(t.preventDefault(),t.stopPropagation(),e.onRemove&&e.onRemove(t))},tabIndex:0,role:"button",style:{touchAction:"none"}},m.createElement("span",null,m.createElement(n.IconWrap,{name:"sort-"+r+"-small",icon:"asc"===r?o.sortAscSmallIcon:o.sortDescSmallIcon,size:"small"})),m.createElement("span",{className:"k-chip-content"},l),m.createElement("span",{className:"k-chip-actions"},m.createElement("span",{className:"k-chip-action k-chip-remove-action",onClick:t=>{t.preventDefault(),t.stopPropagation(),e.onRemove&&e.onRemove(t)}},m.createElement(n.IconWrap,{name:"x-circle",icon:o.xCircleIcon,size:"small"})))))},Ke=e=>{const t=a.useLocalization(),r=(e.group||[]).map(((t,r)=>m.createElement(ze,{key:r,index:r,dir:t.dir||"asc",title:e.resolveTitle(t.field),onRemove:t=>{((t,r)=>{const n=e.group.slice();n.splice(r,1),e.groupChange(n,t)})(t,r)},onSortChange:(n,l)=>{((t,r,n,l)=>{const a=Object.assign({},n,{dir:l}),o=e.group.slice();o.splice(r,1,a),e.groupChange(o,t)})(n,r,t,l)},onPress:e.pressHandler,onDrag:e.dragHandler,onRelease:e.releaseHandler,onContextMenu:e.onContextMenu})));return m.createElement("div",{ref:e.refCallback,className:"k-grouping-header",role:"toolbar","aria-label":t.toLanguageString(Z,oe[Z]),"aria-controls":e.ariaControls||""},m.createElement("div",{className:"k-chip-list k-chip-list-md",role:"none"},r),m.createElement("div",{className:"k-grouping-drop-container"},!r.length&&t.toLanguageString(H,oe[H])," "))},Ae=m.forwardRef(((e,t)=>{const r=m.useRef(null),l=m.useRef(null);return m.useImperativeHandle(t,(()=>({setScrollLeft:e=>{r.current&&(r.current.scrollLeft=e)},setWidth:e=>{l.current&&(l.current.style.width=e+"px")}}))),e.staticHeaders?m.createElement("div",{className:"k-grid-footer",role:"presentation"},m.createElement("div",{ref:r,className:"k-grid-footer-wrap",style:e.hasScrollbarWidth?{}:{borderWidth:0},role:"presentation"},m.createElement("table",{ref:l,className:n.classNames("k-table k-grid-footer-table",{"k-table-md":!e.size,[`k-table-${n.kendoThemeMaps.sizeMap[e.size]||e.size}`]:e.size},e.className),role:"presentation"},m.createElement("colgroup",{ref:t=>{e.columnResize.colGroupFooter=t},role:"presentation"},e.cols),m.createElement("tfoot",{className:"k-table-tfoot",role:"presentation"},e.row)))):m.createElement("tfoot",{className:"k-table-tfoot"},e.row)}));Ae.displayName="KendoReactFooter";let Be=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(m.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}},We=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(m.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&&(S||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)}}},qe=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;l>0&&e<this.columns.length;e++,l--){const t=this.columns[e];t.children.length?l+=t.children.length:n.push(t)}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"))}))}}))}},Ve=class{constructor(e,t,r){this.refDragElementClue=m.createRef(),this.refDropElementClue=m.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 Ue=e=>{let t=null;const r=a.useInternationalization(),o=n.useUnstyled(),i=o&&o.uGrid?o.uGrid:n.uGrid,s=l.useTableKeyboardNavigation(e.id),c=m.useCallback((t=>{e.onContextMenu&&e.onContextMenu.call(void 0,t,e.dataItem,e.field)}),[e.onContextMenu,e.dataItem,e.field]);let d=null,u=null;if("groupFooter"===e.rowType)d={onContextMenu:c,className:e.className,...s},t=m.createElement("td",{...d});else if("groupHeader"!==e.rowType){if(void 0!==e.field){const t=b(e.field,e.dataItem);null!=t&&(u=e.format?r.format(e.format,t):t.toString())}const l=n.classNames(i.td({selected:e.isSelected,sorted:e.isSorted,alt:e.isAlt}),e.className);d={onContextMenu:c,colSpan:e.colSpan,style:e.style,className:l,role:"gridcell","aria-colindex":e.ariaColumnIndex,"aria-selected":e.isSelected,[ue]:e.columnIndex,...s},t=m.createElement("td",{...d},u)}const p=e.rowType||"data",h=e.cells;if(h&&h[p]){const t=h[p];return m.createElement(t,{...e,tdProps:d},u)}return e.render?e.render.call(void 0,t,e):t},_e=e=>{let t=null;const{columnIndex:r,level:i,columnsCount:s,rowType:c,dataItem:d,field:u,onChange:p,expanded:h,render:g,dataIndex:f,ariaColumnIndex:v,isRtl:b}=e,C=u||"",E=l.useTableKeyboardNavigation(e.id),x=a.useLocalization();let k=null,y=null,I=null;const S=m.useCallback((e=>{e.isDefaultPrevented()||e.keyCode===n.Keys.enter&&p&&(e.preventDefault(),p({dataItem:d,dataIndex:f,syntheticEvent:e,field:void 0,value:!h}))}),[h,p,d,f]),N=m.useCallback((t=>{e.onContextMenu&&e.onContextMenu.call(void 0,t,e.dataItem,e.field)}),[e.onContextMenu,e.dataItem,e.field]),w=(t,r)=>{const l=h?te:ee,a=x.toLanguageString(l,oe[l]);return k={className:"k-table-td",style:{...e.style,...r},colSpan:t,key:"g-colspan",role:"gridcell","aria-selected":!1,"aria-expanded":h,"aria-colindex":v,onKeyDown:S,onContextMenu:N,...E},I=m.createElement("p",{className:"k-reset"},m.createElement("a",{onClick:e=>{e.preventDefault(),p&&p({dataItem:d,dataIndex:f,syntheticEvent:e,field:void 0,value:!h})},href:"#",tabIndex:-1,"aria-label":a},m.createElement(n.IconWrap,{name:h?"caret-alt-down":b?"caret-alt-left":"caret-alt-right",icon:h?o.caretAltDownIcon:b?o.caretAltLeftIcon:o.caretAltRightIcon})),d[C]instanceof Date&&d[C].toString?d[C].toString():d[C]),m.createElement("td",{...k,key:k.key},I)};void 0===r||void 0===i||r<i||void 0===s||"groupHeader"!==c||void 0===d[C]?(k={style:e.style,key:"g"+r,className:n.classNames("k-table-td","k-group-cell",{"k-grid-content-sticky":e.locked}),role:"gridcell",onContextMenu:N,...E},t=m.createElement("td",{...k,key:k.key})):r<=i&&!e.locked?t=w(s-r,{}):r<=i&&e.locked&&(y={className:"k-table-td",role:"gridcell",colSpan:s-r,style:{borderLeftWidth:0,borderRightWidth:0},onContextMenu:N},t=m.createElement(m.Fragment,null,w(0,{position:"sticky",zIndex:2}),m.createElement("td",{...y})));const R=e.rowType||"data",T=e.cells;if(T&&T.group&&T.group[R]){const t=T.group[R];return m.createElement(t,{...e,tdProps:k,td2Props:y},I)}return g?g.call(void 0,t,e):t},je=e=>{const{rowType:t,isAltRow:r,isInEdit:l,isSelected:a}=e,o=n.useUnstyled(),i=o&&o.uGrid?o.uGrid:n.uGrid,s=n.classNames(i.tr({selected:a,isHeader:"groupHeader"===t,isFooter:"groupFooter"===t,isMaster:"groupHeader"!==t&&"groupFooter"!==t,isAltRow:r,isInEdit:l})),c=m.createElement("tr",{id:e.id,onClick:e.onClick,onDoubleClick:e.onDoubleClick,className:s,style:{height:e.rowHeight?e.rowHeight+"px":"",visibility:e.isHidden?"hidden":""},role:"row","aria-rowindex":e.ariaRowIndex,"absolute-row-index":e.absoluteRowIndex,key:e.absoluteRowIndex,[de]:"data"===e.rowType?e.dataIndex:void 0},e.children);return e.render?e.render.call(void 0,c,e):c},$e=e=>{const t=n.useId(),r=a.useLocalization(),l=e.id||t,{columnMenuWrapperProps:o}=e,i=[m.createElement("span",{key:0,className:"k-checkbox-wrap"},m.createElement("input",{id:l,type:"checkbox",tabIndex:-1,className:"k-checkbox k-checkbox-md k-rounded-md","aria-label":r.toLanguageString(le,oe[le]),"aria-checked":e.selectionValue,checked:e.selectionValue,onChange:t=>e.selectionChange({field:e.field,syntheticEvent:t})})),o.columnMenu&&m.createElement(Ee,{...o})];return e.render?e.render.call(void 0,i,e):i},Xe=e=>{const t=a.useLocalization();return e.children||t.toLanguageString(R,oe[R])};Xe.displayName="KendoReactGridNoRecords";const Ye=e=>{const{column:t,index:r,isRtl:a,id:o,cells:i}=e,s=l.useTableKeyboardNavigation(o),c={colSpan:1!==t.colSpan?t.colSpan:void 0,style:void 0!==t.left?a?{left:t.right,right:t.left}:{left:t.left,right:t.right}:{},className:n.classNames("k-table-td",t.locked&&void 0!==t.left?"k-grid-footer-sticky":""),key:r,role:"gridcell","aria-colindex":t.ariaColumnIndex,...s},d={field:t.field,ariaColumnIndex:t.ariaColumnIndex,...c},u=w(i,t.cells);if(u&&u.footerCell){const e=u.footerCell;return m.createElement(e,{...d,tdProps:c,index:r})}return t.footerCell&&m.createElement(t.footerCell,{...d,key:r})||m.createElement("td",{...c})},Je=e=>m.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 m.createElement(Ye,{key:n,column:t,id:n,index:r,cells:e.cells,isRtl:e.isRtl})}))),Qe=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),Ze={name:"@progress/kendo-react-grid",productName:"KendoReact",productCodes:["KENDOUIREACT","KENDOUICOMPLETE"],publishDate:0,version:"",licensingDocsUrl:"https://www.telerik.com/kendo-react-ui/components/my-license/"},et=e=>{const{colSpan:t,ariaColIndex:r,dataItem:a,dataIndex:o,id:i}=e,s=l.useTableKeyboardNavigation(i),c=n.useUnstyled(),d=c&&c.uGrid?c.uGrid:n.uGrid,u=m.useCallback((t=>{e.onContextMenu&&e.onContextMenu.call(void 0,t,e.dataItem)}),[e.onContextMenu,e.dataItem]);return m.createElement("td",{onContextMenu:u,className:n.classNames(d.detailTd({})),colSpan:t,"aria-colindex":r,role:"gridcell",...s},m.createElement(e.detail,{dataItem:a,dataIndex:o}))},tt=e=>{const t=n.useUnstyled(),r=t&&t.uGrid?t.uGrid:n.uGrid;return m.createElement("td",{className:n.classNames(r.hierarchyTd({})),role:"gridcell"})},rt=m.forwardRef(((e,t)=>{var r,o,i,s;const c=n.useId();n.validatePackage(Ze);const d=()=>{var e;if(n.canUseDOM)return(null==(e=h())?void 0:e.ownerDocument)||document},u=()=>(e.id||c)+"-role-element-id",p=()=>{const e=Ee.current.filter((e=>e.declarationIndex>=0&&-1===e.parentIndex));return I(e)},h=()=>Ye.current,g=m.useCallback((t=>{var r;if(!pe.current||null==(r=pe.current)||!r.container||"none"===e.scrollable)return;ve.current&&ve.current.disconnect();const{rowIndex:n}=t,l=h();if("virtual"===e.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&&nt.current&&(nt.current.scrollTop=e.offsetTop)}}),[e.scrollable]),f=m.useCallback((e=>{const t={rowIndex:Le.current};e.forEach((e=>{e.isIntersecting||g(t)}))}),[g]),[,v]=m.useReducer((e=>!e),!0),R=e=>JSON.stringify(e.map((e=>({id:e.id,field:e.field,title:e.title,children:e.children})))),T=m.useMemo((()=>m.Children.toArray(e.children)),[e.children]),M=()=>{R(T)===R(Ee.current)||v()},G=(t,r,n)=>{if(e.onContextMenu){const l={target:ut.current,syntheticEvent:t,nativeEvent:t.nativeEvent,dataItem:r,field:n};e.onContextMenu.call(void 0,l)}},D=()=>{const{data:t,total:r}=e;return Array.isArray(t)?t.length===r:!!t&&r===t.total},L=()=>(Me.current||(Me.current=n.getScrollbarWidth()||void 0),Me.current),O=t=>{if(l.tableKeyboardNavigation.onKeyDown(t,{navigatable:e.navigatable||!1,contextStateRef:le,navigationStateRef:de,onNavigationAction:P,columns:p()}),l.tableKeyboardNavigation.onGetSnapshotBeforeUpdate({document:d(),contextStateRef:le,navigationStateRef:de}),e.onKeyDown){const{mode:r,cell:n}=l.getSelectionOptions(e.selectable),a={dataItems:te(),mode:r,cell:n,componentId:u(),selectedField:e.selectedField,...ee(t)};e.onKeyDown.call(void 0,a)}},H=t=>{l.tableKeyboardNavigation.onFocus(t,{navigatable:!!e.navigatable,contextStateRef:le})},P=t=>{if("moveToNextPage"===t.action&&A(t.event),"moveToPrevPage"===t.action&&B(t.event),t.focusElement&&"reorderToRight"===t.action){const e=parseInt(t.focusElement.ariaColIndex,10)-1;e<Ee.current.length-1&&U(e,e+1,t.event)}if(t.focusElement&&"reorderToLeft"===t.action){const e=parseInt(t.focusElement.ariaColIndex,10)-1;e>0&&U(e,e-1,t.event)}if(e.onNavigationAction){const r={focusElement:t.focusElement,...ee(t.event)};e.onNavigationAction.call(void 0,r)}},F=t=>{t.field===e.expandField||e.group&&void 0===t.field?e.onExpandChange&&e.onExpandChange.call(void 0,{...ee(t.syntheticEvent),dataItem:t.dataItem,dataIndex:t.dataIndex,value:t.value}):e.onItemChange&&e.onItemChange.call(void 0,{...ee(t.syntheticEvent),dataItem:t.dataItem,dataIndex:t.dataIndex,field:t.field,value:t.value})},z=t=>{if(e.onSelectionChange){const r=re()[t.startRowIndex],n=re()[t.endRowIndex],l={syntheticEvent:void 0,target:ut.current,selectedField:e.selectedField||"",componentId:u(),dataItems:te(),dataItem:null,startDataItem:r,endDataItem:n,...t};e.onSelectionChange.call(void 0,l)}},K=(t,r,n)=>{V(e.onPageChange,{page:t},{skip:t.skip,take:t.take},r,n)},A=t=>{const r=e.take||0,n=(e.skip||0)+r,l=(()=>{let t=e.total||0;return Array.isArray(e.data)?t=t||e.data.length:e.data&&(t=t||e.data.total),t})();n<l&&K({skip:n,take:r},t)},B=t=>{const r=e.take||0,n=(e.skip||0)-r;n>=0&&K({skip:n,take:r},t)},W=(t,r)=>{V(e.onFilterChange,{filter:t},{filter:t||void 0,skip:0},r)},q=(t,r)=>{const n=r.nativeEvent?r:{nativeEvent:r.nativeEvent||r.originalEvent};0===t.length&&e.navigatable&&(ye.current=!0),V(e.onGroupChange,{group:t},{group:t,skip:0},n)},V=(t,r,n,l,a)=>{const o=e.onDataStateChange;if(t){const e={...ee(l),...r,targetEvent:a};t.call(void 0,e)}else o&&o.call(void 0,{...ee(l),targetEvent:a||{},dataState:{...Z(),...n}})},U=(t,r,n)=>{const a=Ee.current[t],o=a.depth,i=e=>{do{e++}while(e<Ee.current.length&&Ee.current[e].depth>o);return e},s=Ee.current.splice(t,i(t)-t);Ee.current.splice(t<r?i(r-s.length):r,0,...s),Ee.current.filter((e=>e.declarationIndex>=0)).forEach(((e,t)=>e.orderIndex=t));const c=Ee.current[t].locked&&Ee.current[r].locked;l.updateLeft(xe.current,Ee.current,c||Te.current),l.updateRight(xe.current,Ee.current,c||Te.current),ke.current&&(Te.current=!1,ke.current=!1);const d=p();if(v(),e.onColumnReorder){const t={target:ut.current,columns:d,columnId:a.id,nativeEvent:n};e.onColumnReorder.call(void 0,t)}},_=(t,r,n)=>{if(void 0===e.group)return;const l=e.group.slice();l.splice(r,0,...l.splice(t,1)),q(l,n)},j=(t,r,n)=>{const l=Ee.current[t].field;if(!l)return;const a=(e.group||[]).slice();a.splice(r,0,{field:l}),q(a,n)},$=()=>{let e=0;if(!fe.current.colGroupMain)return;const t=fe.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),Pe.current&&Pe.current.setWidth(e),He.current&&He.current.setWidth(e),rt.current&&(rt.current.style.width=e+"px")},X=(t,r)=>{if(e.onClipboard){if(!Y()||!t)return;e.onClipboard.call(void 0,{type:t,nativeEvent:r,columns:Ee.current,dataItemKey:e.dataItemKey||"",..."boolean"!=typeof e.clipboard?e.clipboard:{}})}},Y=()=>{var e,t,r;if(!n.canUseDOM)return!1;const l=n.getActiveElement(d()),a=l?l.matches(".k-table-td")?l:null==(e=d())?void 0:e.body:null==(t=d())?void 0:t.body,o=a.closest(".k-grid-container"),i=a&&(null==(r=Ye.current)?void 0:r.contains(a));return!!(a&&i&&o)},J=(t,r,n,l,a,o)=>{$(),Te.current=!0,ke.current=!0,e.onColumnResize&&e.onColumnResize.call(void 0,{columns:p(),nativeEvent:l,targetColumnId:o,index:t,newWidth:r,oldWidth:n,end:a,target:ut.current})},Q=(t,r)=>{e.selectedField&&t.filter((t=>t.field===e.selectedField)).forEach((e=>{e.width=e.width||"50px",e.cell=e.cell||se,e.headerCell=e.headerCell||$e}));const l={id:"",resizable:!0,width:"32px",title:" ",declarationIndex:-1,orderIndex:-1,children:[],parentIndex:-1,depth:0,colSpan:0,rowSpan:0,left:0,right:0,index:0,rightBorder:!1,ariaColumnIndex:0,isAccessible:!0};let a=0;e.expandField&&e.onExpandChange&&e.detail&&(t.unshift({...l,cell:ce,field:e.expandField,headerClassName:n.classNames(st.hierarchyCell({}))}),a++);for(let n=0;n<r;n++)t.unshift({...l,isAccessible:!1,cell:_e,field:"value",locked:e.lockGroups}),a++;t.slice(a).forEach((e=>e.parentIndex>=0&&(e.parentIndex+=a)))},Z=()=>({filter:e.filter,sort:e.sort,skip:e.skip,take:void 0!==e.take?e.take:e.pageSize,group:e.group}),ee=e=>({nativeEvent:e&&e.nativeEvent,syntheticEvent:e,target:ut.current}),te=()=>be.current.filter((e=>"data"===e.rowType)).map((e=>e.dataItem)),re=()=>(Ce.current||be.current).filter((e=>"data"===e.rowType)).map((e=>e.dataItem)),ne=m.useRef(),le=m.useRef(),de=m.useRef(),ue=m.useRef(),pe=m.useRef(),fe=m.useRef(),ve=m.useRef(null),be=m.useRef([]),Ce=m.useRef(),Ee=m.useRef([]),xe=m.useRef([[]]),ke=m.useRef(!1),ye=m.useRef(!1),Se=m.useRef(),we=m.useRef(),Re=m.useRef(!1),Te=m.useRef(!0),Me=m.useRef(),Ge=m.useRef(0),De=m.useRef(),Le=m.useRef(),Oe=m.useRef([]),He=m.useRef(null),Pe=m.useRef(null),ze=m.useRef(null),Ye=m.useRef(null),rt=m.useRef(null),nt=m.useRef(null),lt=m.useRef(null),at=m.useRef(null),ot=a.useLocalization(),it=n.useUnstyled(),st=it&&it.uGrid?it.uGrid:n.uGrid,ct=n.shouldShowValidationUI(Ze),dt=n.useDir(Ye);m.useMemo((()=>{l.tableKeyboardNavigation.onConstructor({navigatable:!!e.navigatable,contextStateRef:le,navigationStateRef:de,idPrefix:u()})}),[]),m.useMemo((()=>{var t;null==(t=pe.current)||t.reset();const r=!0===e.groupable||"object"==typeof e.groupable&&!1!==e.groupable.enabled,n=(()=>{const{rowHeight:t,detailRowHeight:r,detail:n,expandField:l,groupable:a}=e,o=D(),i=void 0!==t&&t>0,s=void 0!==r&&r>0,c=!0===a||"object"==typeof a&&!1!==a.enabled;return!i||c&&!o||n&&l&&(!s||!o)?Be:We})();pe.current=new n(r||void 0===e.rowHeight||0===e.rowHeight)}),[e.scrollable,e.total,e.filter,e.group,e.groupable,e.sort,e.rowHeight]),m.useEffect((()=>(e.clipboard&&(ue.current=new l.ClipboardService(X),ue.current.addEventListeners(d())),()=>{ue.current&&ue.current.removeEventListeners(d())})),[e.onClipboard,e.clipboard]),m.useMemo((()=>{fe.current=new qe(J)}),[e.onColumnResize]),m.useMemo((()=>{ne.current=new Ve(U,_,j)}),[e.onColumnReorder,e.onGroupChange,e.group,e.groupable]),m.useEffect((()=>(e.columnVirtualization&&!window.navigator.userAgent.match(he)&&(at.current&&(at.current.style.display="block"),rt.current&&(rt.current.style.display="block")),$(),n.setScrollbarWidth(L()),l.tableKeyboardNavigation.onComponentDidMount({scope:Ye.current||void 0,contextStateRef:le,navigationStateRef:de}),()=>{clearTimeout(De.current)})),[]),m.useEffect((()=>{var t;$(),n.setScrollbarWidth(L()),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(lt.current&&(null==(e=lt.current)?void 0:e.getElementsByClassName("k-grid-edit-row").length)>0){Re.current=!1,null!=(t=document.activeElement)&&t.closest(".k-grid-edit-row")?we.current=document.activeElement:we.current=void 0;const e=Array.from(null==(r=lt.current)?void 0:r.getElementsByClassName("k-grid-edit-row"));e.length>Oe.current.length?Se.current=e.filter((e=>!Oe.current.includes(e)))[0]:1===e.length&&(Se.current=e[0],Re.current=!0),Oe.current=e}})(),l.tableKeyboardNavigation.onComponentDidUpdate({scope:Ye.current||void 0,contextStateRef:le,navigationStateRef:de,focusFirst:ye.current,newEditableRow:Se.current,singleEditRow:Re.current,lastActiveElement:we.current,navigatable:e.navigatable}),ye.current=!1,Se.current=void 0})),m.useEffect((()=>{if(n.canUseDOM){const e={rootMargin:"0px",threshold:.9};ve.current=window.IntersectionObserver&&new window.IntersectionObserver(f,e)||null}}),[f]),m.useEffect((()=>{let e;return n.canUseDOM&&window.ResizeObserver&&(e=new window.ResizeObserver(M),e.observe(Ye.current)),()=>{null==e||e.disconnect()}}),[]);const ut=m.useRef(null);m.useImperativeHandle(ut,(()=>({get element(){return h()},props:e,get columns(){return p()},scrollIntoView:t=>{var r;if(null==(r=pe.current)||!r.container||"none"===e.scrollable)return;const{rowIndex:n}=t;Le.current=n;const l=h();if(ve.current&&l){ve.current.disconnect();const e=l.querySelector(`[absolute-row-index="${Le.current}"]`);e?ve.current.observe(e):g(t)}},fitColumns:e=>{fe.current.dblClickHandler(null,e)}}))),m.useImperativeHandle(t,(()=>ut.current));let pt=e.total||0;const ht=l.tableKeyboardNavigationTools.getIdPrefix(de),{size:gt="medium"}=e;let mt=[];Array.isArray(e.data)?(mt=e.data,pt=pt||e.data.length):e.data&&(mt=e.data.data,pt=pt||e.data.total);const ft="object"==typeof e.groupable&&e.groupable.footer||"none",vt="virtual"===e.scrollable,{resolvedGroupsCount:bt,flattedData:Ct}=((e,t,r,n,l)=>{const a=[];return{flattedData:a,resolvedGroupsCount:C(a,e,t,{index:r},void 0!==n,l)}})(mt,ft,e.skip||0,e.group,e.expandField);be.current=Ct;const Et=!0===e.groupable||"object"==typeof e.groupable&&!1!==e.groupable.enabled;fe.current.resizable=e.resizable||!1,ne.current.reorderable=e.reorderable||!1,ne.current.groupable=Et;const xt=e.selectable&&e.selectable.drag?"none":void 0;((t,r)=>{if(pe.current){if(pe.current.fixedScroll=e.fixedScroll||!1,pe.current.PageChange=K,pe.current.realSkip=e.skip||0,pe.current.pageSize=(void 0!==e.take?e.take:e.pageSize)||0,pe.current.scrollableVirtual="virtual"===e.scrollable,pe.current.total=t,pe.current.propsSkip=(e.skip||0)+("virtual"===e.scrollable?pe.current.topCacheCount+(pe.current.attendedSkip-(e.skip||0)):0),void 0!==e.rowHeight&&e.rowHeight>0&&!r){const r=e.rowHeight*t;pe.current.containerHeight=S?Math.min(N,r):r}else pe.current.containerHeight=1533915;if(pe.current.containerRef=nt,pe.current.tableBodyRef=lt,pe.current.table=rt.current,Ce.current=void 0,pe.current instanceof We){const{rowHeight:r=0,detail:l,expandField:a}=e;let{detailRowHeight:o=0}=e;o=l&&a?o:r,D()?(pe.current.total=be.current.length,Ce.current=be.current.slice(pe.current.realSkip,pe.current.realSkip+pe.current.pageSize),pe.current.rowHeightService=new n.RowHeightService(be.current.length,r,o,be.current)):pe.current.rowHeightService=new n.RowHeightService(t,r,o);const i=pe.current.rowHeightService.totalHeight();pe.current.containerHeight=S?Math.min(N,i):i}}})(pt,Et),((t,r)=>{const a=l.tableKeyboardNavigationTools.getIdPrefix(de),o=((e,t)=>{const r=e.filter((e=>e&&e.type&&"KendoReactGridColumn"===e.type.displayName));return E(r,p(),{prevId:0,idPrefix:t})})(t,a),i=(e=>e.filter((e=>n.canUseDOM&&e&&e.media?window.matchMedia(e.media).matches:e)))(o);Ee.current=i,0===Ee.current.length&&(Ee.current=x(e.data,e.group,e.expandField,{prevId:0,idPrefix:a})),Q(Ee.current,r),xe.current=l.mapColumns(Ee.current,!0),fe.current.columns=Ee.current,ne.current.columns=Ee.current})(T,bt);const kt=T.map((e=>e&&e.type&&"KendoReactGridToolbar"===e.type.displayName?m.cloneElement(e,{...e.props,ariaControls:u()}):null)),yt=T.filter((e=>e&&e.type&&"KendoReactGridNoRecords"===e.type.displayName)),It=T.filter((e=>e&&e.type&&"KendoReactGridStatusBar"===e.type.displayName)),St=Ee.current.filter((e=>0===e.children.length)),Nt=Et&&m.createElement(Ke,{group:e.group||[],groupChange:q,pressHandler:ne.current.pressHandler,dragHandler:ne.current.dragHandler,releaseHandler:ne.current.releaseHandler,refCallback:ne.current.refGroupPanelDiv,resolveTitle:e=>{const t=Ee.current.find((t=>t.field===e)),r=t&&(t.title||t.field);return void 0===r?e:r},ariaControls:u(),onContextMenu:G}),wt=m.createElement(me,{size:gt,columnResize:fe.current,staticHeaders:"none"!==e.scrollable,scrollableDataElement:()=>{var e;return(null==(e=pe.current)?void 0:e.container)||null},hasScrollbarWidth:!!L(),draggable:e.reorderable||Et,ref:Pe,elemRef:ze,headerRow:m.createElement(Ie,{cells:e.cells,sort:e.sort,sortable:e.sortable,sortChange:(t,r)=>{V(e.onSortChange,{sort:t},{sort:t,..."virtual"===e.scrollable?{skip:0}:{}},r)},group:e.group||[],groupable:Et,groupChange:q,filter:e.filter,filterable:e.filterable,filterOperators:e.filterOperators||Ne,filterChange:W,columnMenu:e.columnMenu,columnMenuIcon:e.columnMenuIcon,selectionChange:t=>{e.onHeaderSelectionChange&&e.onHeaderSelectionChange.call(void 0,{field:t.field,nativeEvent:t.syntheticEvent&&t.syntheticEvent.nativeEvent,syntheticEvent:t.syntheticEvent,target:ut.current,dataItems:te(),selectedField:e.selectedField})},columns:Ee.current,columnResize:fe.current,pressHandler:ne.current.pressHandler,dragHandler:ne.current.dragHandler,releaseHandler:ne.current.releaseHandler,columnsMap:xe.current,cellRender:e.headerCellRender,isRtl:"rtl"===dt,dragClue:ne.current.dragClueRef,headerRef:ze,containerRef:nt,navigatable:!!e.navigatable,columnGroupChange:(e,t)=>{const r=ne.current.getCurrentGroupsLength;j(e,r,t)}}),filterRow:e.filterable&&m.createElement(Fe,{cells:e.cells,size:gt,columns:Ee.current,filter:e.filter,filterOperators:e.filterOperators||Ne,filterChange:W,sort:e.sort,cellRender:e.filterCellRender,isRtl:"rtl"===dt,navigatable:!!e.navigatable,ariaRowIndex:xe.current.length+1})||void 0,cols:St.map(((e,t)=>m.createElement("col",{key:t.toString(),width:k(e)})))}),Rt=pe.current&&pe.current.container&&pe.current.container.scrollLeft||0,Tt=parseFloat(((e.style||{}).width||"").toString()),{colSpans:Mt,hiddenColumns:Gt}=l.tableColumnsVirtualization({enabled:e.columnVirtualization,columns:St,tableViewPortWidth:Tt,scrollLeft:Rt}),Dt=(t,r,a,o)=>{let i=!1;const s=e.selectedField?b(e.selectedField,t.dataItem):void 0;return{row:St.map(((c,d)=>{if(Gt[d])return null;const p=c.id?c.id:d,h=n.classNames(st.contentSticky({locked:c.locked}),c.className),g=void 0!==c.left?"rtl"!==dt?{left:c.left,right:c.right}:{left:c.right,right:c.left}:{};let f=!1;if(c.editable&&e.editField){const r=b(e.editField,t.dataItem);r&&(!0===r||r===c.field)&&(i=!0,f=!0)}const v=c.cell||f&&ge||Ue,C=e.expandField&&e.detail&&c.field===e.expandField;return m.createElement(v,{onContextMenu:G,key:p,locked:e.lockGroups,id:l.tableKeyboardNavigationTools.generateNavigatableId(`${r}-${String(d)}`,ht,C||"groupHeader"===t.rowType||"groupFooter"===t.rowType||"value"===c.field?"nodata":"cell"),colSpan:Mt[d],dataItem:t.dataItem,field:c.field,editor:c.editor,format:c.format,className:h,render:e.cellRender,cells:w(e.cells,c.cells),onChange:F,selectionChange:e.onSelectionChange?r=>{(t=>{if(e.onSelectionChange){const{event:r,dataItem:n,dataIndex:a,columnIndex:o}=t,{mode:i,cell:s}=l.getSelectionOptions(e.selectable),c={...ee(r.syntheticEvent),dataItem:n,startColIndex:o,endColIndex:o,startRowIndex:a,endRowIndex:a,dataItems:te(),altKey:!1,ctrlKey:!1,shiftKey:!1,metaKey:!1,mode:i,cell:s,isDrag:!1,componentId:u(),selectedField:e.selectedField||""};e.onSelectionChange.call(void 0,c)}})({event:r,dataItem:t.dataItem,dataIndex:a,columnIndex:d})}:void 0,columnIndex:d,columnsCount:St.length,rowType:t.rowType,level:t.level,expanded:t.expanded,dataIndex:t.dataIndex,style:g,ariaColumnIndex:c.ariaColumnIndex,isSelected:Array.isArray(s)&&s.indexOf(d)>-1,isSorted:!!y(c.field,e.sort),isAlt:o})})),isInEdit:i,isSelected:"boolean"==typeof s&&s}};let Lt=0;if(vt&&pe.current)for(let t=0;t<pe.current.topCacheCount+pe.current.attendedSkip-(e.skip||0);t++){const e=be.current.shift();if(!e)break;be.current.push(e),Lt++,"groupHeader"===e.rowType&&t--}const Ot=e=>e>=be.current.length-Lt;let Ht=(null==(r=pe.current)?void 0:r.realSkip)||0;const Pt=[];let Ft=!1;const zt=xe.current.length+(e.filterable?1:0)+1;let Kt=0;if(be.current.length){let t=-1,r=0;(Ce.current||be.current).forEach(((a,o)=>{var i,s;"data"===a.rowType&&(Ht++,t++);const c=Ht%2==0,d=e.dataItemKey&&n.getter(e.dataItemKey)(a.dataItem),u=o+((null==(i=pe.current)?void 0:i.realSkip)||0),p=d||"ai"+u,h=p+"_1",g=Dt(a,p,t,c);if(Kt=u+zt+r,Pt.push(m.createElement(je,{key:p,dataItem:a.dataItem,isAltRow:c,isInEdit:g.isInEdit,rowType:a.rowType,isHidden:Ot(o),onClick:t=>((t,r)=>{e.onRowClick&&"TD"===t.target.nodeName&&e.onRowClick.call(void 0,{dataItem:r.dataItem,...ee(t)})})(t,a),onDoubleClick:t=>((t,r)=>{e.onRowDoubleClick&&"TD"===t.target.nodeName&&e.onRowDoubleClick.call(void 0,{dataItem:r.dataItem,...ee(t)})})(t,a),selectedField:e.selectedField,rowHeight:e.rowHeight,render:e.rowRender,ariaRowIndex:Kt,absoluteRowIndex:u,dataIndex:null!=(s=pe.current)&&s.scrollableVirtual&&!e.groupable?u:t,isSelected:g.isSelected},g.row)),e.detail&&"data"===a.rowType&&a.expanded){const t=St.length-(e.expandField?1:0)-(e.group?e.group.length:0)||1;r++,Kt=u+zt+r,Pt.push(m.createElement("tr",{key:h,className:n.classNames(st.detailTr({isAlt:c})),style:{visibility:Ot(o)?"hidden":"",height:e.detailRowHeight},role:"row","aria-rowindex":Kt},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,o=l?"rtl"!==dt?{left:l.left,right:l.right}:{left:l.right,right:l.left}:{};return m.createElement(_e,{id:"",dataIndex:a.dataIndex,field:t.field,dataItem:a.dataItem,key:r,style:o,ariaColumnIndex:1+r,isSelected:!1,locked:e.lockGroups,isRtl:"rtl"===dt,cells:e.cells})})),e.expandField&&m.createElement(tt,{id:l.tableKeyboardNavigationTools.generateNavigatableId(`${h}-dhcell`,ht)}),m.createElement(et,{onContextMenu:G,dataItem:a.dataItem,dataIndex:a.dataIndex,colSpan:t,ariaColIndex:2+(e.group?e.group.length:0),detail:e.detail,id:l.tableKeyboardNavigationTools.generateNavigatableId(`${h}-dcell`,ht)})))}}))}else Ft=!0;const At=()=>{const e=Pe.current;return e&&e.table()&&e.table().clientWidth},Bt=()=>m.createElement("div",{key:"no-records",className:n.classNames(st.noRecords({})),style:{width:At()}},m.createElement("div",{className:n.classNames(st.noRecordsTemplate({})),[l.KEYBOARD_NAV_DATA_ID]:l.tableKeyboardNavigationTools.generateNavigatableId("no-records",ht)},yt.length?yt:m.createElement(Xe,null))),Wt={size:gt,onPageChange:e=>{K({skip:e.skip,take:e.take},e.syntheticEvent,e.targetEvent)},total:pt,dir:dt,skip:(null==(o=pe.current)?void 0:o.propsSkip)||0,take:(void 0!==e.take?e.take:e.pageSize)||10,messagesMap:ie,...Qe(e.pageable||{})},qt=e.pager?m.createElement(e.pager,{...Wt}):m.createElement(l.Pager,{className:n.classNames(st.pager({})),...Wt}),Vt=null!=(i=e.cells)&&i.footerCell||Ee.current.some((e=>{var t;return!!(e.footerCell||null!=(t=e.cells)&&t.footerCell)}))?m.createElement(Ae,{size:gt,columnResize:fe.current,staticHeaders:"none"!==e.scrollable,hasScrollbarWidth:!!L(),ref:He,row:m.createElement(Je,{cells:e.cells,idPrefix:ht,columns:Ee.current,isRtl:"rtl"===dt,ariaRowIndex:Kt+1}),cols:St.map(((e,t)=>m.createElement("col",{key:t.toString(),width:k(e)})))}):null,Ut=m.createElement("colgroup",{ref:e=>{fe.current.colGroupMain=e}},St.map(((t,r)=>m.createElement("col",{key:r.toString(),className:y(t.field,e.sort)?n.classNames(st.sorted({})):void 0,width:k(t)})))),_t=ne.current.reorderable||ne.current.groupable;if("none"===e.scrollable)return m.createElement(l.TableKeyboardNavigationContext.Provider,{value:le.current},m.createElement("div",{id:e.id||c,style:e.style,className:n.classNames(st.wrapper({size:gt}),e.className),ref:Ye,"aria-label":e.ariaLabel,onKeyDown:O,onFocus:H,...l.tableKeyboardNavigationScopeAttributes},kt,Nt,m.createElement(l.TableSelection,{selectable:e.selectable,onRelease:z,childRef:e=>{rt.current=e,at.current=e}},m.createElement("table",{ref:at,className:n.classNames(st.table({size:gt}))},Ut,wt,m.createElement("tbody",{role:"rowgroup",className:n.classNames(st.tbody({})),...l.tableKeyboardNavigationBodyAttributes},Pt),Vt)),Ft&&Bt(),_t&&m.createElement(m.Fragment,null,m.createElement(l.DropClue,{ref:ne.current.refDropElementClue}),m.createElement(l.DragClue,{ref:ne.current.refDragElementClue}))),It,e.pageable&&qt);let jt=e.style||{};return vt&&(jt.height||(jt=Object.assign({},jt,{height:"450px"}))),m.createElement(l.TableKeyboardNavigationContext.Provider,{value:le.current},m.createElement("div",{id:e.id||c,style:jt,className:n.classNames(st.wrapper({size:gt,virtual:vt}),e.className),ref:Ye,"aria-label":e.ariaLabel,onKeyDown:O,onFocus:H,...l.tableKeyboardNavigationScopeAttributes},kt,Nt,m.createElement("div",{className:n.classNames(st.ariaRoot({})),role:"grid","aria-colcount":St.length,"aria-rowcount":pt,id:u(),"aria-label":ot.toLanguageString(ae,oe[ae])},wt,m.createElement("div",{className:n.classNames(st.container({})),role:"presentation"},m.createElement("div",{ref:nt,className:n.classNames(st.content({})),onScroll:t=>{var r;if(t.target!==t.currentTarget)return;clearTimeout(De.current),pe.current&&(pe.current.table=rt.current);const l=t.currentTarget.scrollLeft,a=t.currentTarget.scrollTop;e.columnVirtualization&&(!(null!=(r=pe.current)&&r.scrollableVirtual)||a===Ge.current)&&(De.current=window.setTimeout((()=>{v()}),0)),Pe.current&&Pe.current.setScrollLeft(l),He.current&&He.current.setScrollLeft(l),pe.current&&a!==Ge.current&&pe.current.scrollHandler(t),n.dispatchEvent(e.onScroll,t,ut.current,void 0),Ge.current=a},role:"presentation"},m.createElement("div",{className:n.classNames(st.tableWrap({})),role:"presentation"},m.createElement(l.TableSelection,{selectable:e.selectable,onRelease:z,childRef:e=>{rt.current=e}},m.createElement("table",{ref:rt,className:n.classNames(st.table({size:gt})),role:"presentation",style:{userSelect:xt}},Ut,m.createElement("tbody",{className:n.classNames(st.tbody({})),ref:lt,role:"rowgroup",...l.tableKeyboardNavigationBodyAttributes},Pt))),Ft&&Bt()),vt&&m.createElement("div",{className:n.classNames(st.heightContainer({})),role:"presentation"},m.createElement("div",{style:vt?{height:(null==(s=pe.current)?void 0:s.containerHeight)+"px"}:{}})))),Vt,_t&&m.createElement(m.Fragment,null,m.createElement(l.DropClue,{ref:ne.current.refDropElementClue}),m.createElement(l.DragClue,{ref:ne.current.refDragElementClue})),ct&&m.createElement(n.WatermarkOverlay,null)),It,e.pageable&&qt))})),nt={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"])};rt.displayName="KendoReactGrid",rt.propTypes=nt;const lt=e=>{const{children:t,id:r,className:l,style:a}=e;return m.createElement("div",{id:r,className:n.classNames("k-columnmenu-item-wrapper",l),style:a},t)},at=e=>{const{title:t,iconClass:r,svgIcon:l,selected:a}=e;return m.createElement("div",{onClick:e.onClick,className:"k-columnmenu-item "+(a?"k-selected":"")},(r||l)&&m.createElement(n.IconWrap,{name:r&&n.toIconName(r),icon:l}),t)},ot="desc",it={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"}}},st=(e,t)=>t?t.findIndex((t=>t.field===e)):-1,ct=(e,t)=>!!(t&&e>-1&&"asc"===t[e].dir),dt=(e,t)=>!!(t&&e>-1&&t[e].dir===ot),ut=e=>{const{children:t,id:r,className:l,style:a,show:o}=e;return m.createElement("div",{id:r,className:n.classNames("k-columnmenu-item-content",l),style:a,tabIndex:0},m.createElement(h.Reveal,{style:{position:"relative",display:"block"}},o?t:null))},pt=e=>{const t=(t,r)=>{Ge(t,r,e)},r=t=>{He(t,e.value,e.onChange)},n=t=>{Oe(t,e.onChange)};return m.createElement(m.Fragment,null,(()=>{if("boolean"===e.filterType)return;const t=e.operators.find((t=>t.operator===e.operator))||null;return m.createElement(u.DropDownList,{value:t,onChange:r,data:e.operators,textField:"text"})})(),((e,r,l)=>{switch(e){case"numeric":return m.createElement(i.NumericTextBox,{value:r,onChange:e=>{t(e.value,e.syntheticEvent)},rangeOnEnter:!1});case"date":return m.createElement(s.DatePicker,{value:r,onChange:e=>{t(e.value,e.syntheticEvent)}});case"boolean":{const e=e=>null==e;return m.createElement(u.DropDownList,{onChange:n,value:l.find((t=>t.operator===(e(r)?"":r))),data:l,textField:"text"})}default:return m.createElement(i.Input,{value:r||"",onChange:e=>{t(e.target.value,e.syntheticEvent)}})}})(e.filterType,e.value,e.booleanValues))},ht=e=>{const{firstFilterProps:t,hideSecondFilter:r,secondFilterProps:n,logicData:l,logicValue:a,onLogicChange:o}=e;return m.createElement(m.Fragment,null,m.createElement(pt,{...t}),!r&&m.createElement(m.Fragment,null,m.createElement(u.DropDownList,{data:l,value:a,onChange:o,className:"k-filter-and",textField:"text"}),m.createElement(pt,{...n})))},gt=e=>e||{filters:[],logic:"and"},mt=(e,t)=>gt(t).filters.filter((t=>!!p.isCompositeFilterDescriptor(t)&&(t.filters&&t.filters.length&&t.filters.length<=2&&!t.filters.find((t=>p.isCompositeFilterDescriptor(t)||t.field!==e)))))[0]||null,ft={uniqueData:!0},vt=e=>{const[t,r]=m.useState(""),l=e.columns.reduce(((t,r)=>({...t,[r.id||""]:!!e.columnsState.find((e=>e.id===r.id))})),{}),[s,c]=m.useState(l),u=m.useMemo((()=>e.columns.filter((e=>{var r;return null==(r=e.title||e.field)?void 0:r.toLowerCase().includes(t.toLowerCase())}))),[e.columns,t]),p=a.useLocalization(),h=m.useCallback((()=>{const t=e.columns.filter((e=>s[e.id||""]));e.onColumnsChange.call(void 0,t),e.onCloseMenu.call(void 0)}),[s,e.columns,e.onColumnsChange,e.onCloseMenu]),g=m.useMemo((()=>Object.values(s).filter((e=>e)).length),[s]),f=m.useMemo((()=>g===e.columns.length),[e.columns,g]),v=m.useCallback((()=>{const e={...s};Object.keys(e).forEach(((t,r)=>e[t]=!(!f||0!==r)||!f)),c(e)}),[s,f]),b=m.useCallback(((e,t)=>{const r={...s};r[t||""]=e,c(r)}),[s]);return m.createElement("form",{className:"k-filter-menu"},m.createElement("div",{className:"k-filter-menu-container"},m.createElement(i.TextBox,{className:"k-searchbox",value:t,onChange:e=>{r(String(e.target.value))},prefix:()=>m.createElement(i.InputPrefix,null,m.createElement(n.IconWrap,{name:"search",icon:o.searchIcon}))}),m.createElement("ul",{className:"k-reset k-multicheck-wrap"},!t&&m.createElement("li",{className:"k-item k-check-all-wrap"},m.createElement(i.Checkbox,{checked:f,onChange:v,label:p.toLanguageString(X,oe[X])})),u.map(((e,t)=>m.createElement("li",{key:e.id,className:"k-item"},m.createElement(i.Checkbox,{disabled:s[e.id||""]&&1===g,checked:s[e.id||""],onChange:t=>{var r;return b(!(null==(r=t.target.element)||!r.checked),e.id)},label:e.title||e.field}))))),m.createElement("div",{className:"k-filter-selected-items"},g," selected items"),m.createElement("div",{className:"k-actions k-actions-start k-actions-horizontal"},m.createElement(d.Button,{type:"button",themeColor:"primary",onClick:h},p.toLanguageString(K,oe[K])),m.createElement(d.Button,{type:"button",onClick:()=>{c(l)}},p.toLanguageString(B,oe[B])))))};vt.displayName="GridColumnMenuColumnsList";const bt=e=>{const{size:t,className:r,ariaLabel:l,ariaControls:a,children:o}=e;return m.createElement("div",{className:n.classNames("k-toolbar k-grid-toolbar k-toolbar-solid",{"k-toolbar-md":!t,[`k-toolbar-${n.kendoThemeMaps.sizeMap[t]||t}`]:t},r),"aria-label":l,"aria-controls":a,role:"toolbar"},o)};bt.displayName="KendoReactGridToolbar";const Ct=e=>{const{data:t=[]}=e;return m.createElement("div",{className:"k-selection-aggregates k-grid-selection-aggregates"},t.map(((e,t)=>m.createElement("div",{key:t},m.createElement("span",{className:"k-selection-aggregates-item-text"},e.type,": "),m.createElement("span",{className:"k-selection-aggregates-item-value"},e.formattedValue)))))};Ct.displayName="KendoReactGridStatusBar";const Et=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=ue,e.GRID_PREVENT_SELECTION_ELEMENT=pe,e.GRID_ROW_INDEX_ATTRIBUTE=de,e.Grid=rt,e.GridCell=Ue,e.GridColumn=f,e.GridColumnMenuCheckboxFilter=e=>{const{uniqueData:t=ft.uniqueData}=e,r=(t,r)=>{const n=e.column.field||"",l=t.map((e=>b(n,e)));return r?l.filter(((e,t)=>l.indexOf(e)===t)):l},l=()=>e.filter?n.clone(e.filter):{filters:[],logic:"and"},s=m.useRef((()=>{const t=e.column.field;return l().filters.findIndex((e=>e.filters&&e.filters.length>0&&e.filters[0].field===t))})()),[c,u]=m.useState(e.expanded||!1),[h,g]=m.useState(""),[f,v]=m.useState(r(e.data,t)||[]),[C,E]=m.useState(r(e.data,!1)||[]),[x,k]=m.useState(l());m.useEffect((()=>{const t=e.column.field||"",r=e.data.map((e=>b(t,e)));((e,t)=>e.length===t.length&&e.every(((e,r)=>e===t[r])))(r,C)||(v(r),E(r))}),[e.column,e.data]);const y=()=>void 0!==e.expanded,I=n=>{const l=e.searchBoxFilterOperator?e.searchBoxFilterOperator:"startswith",a={logic:"and",filters:[{field:e.column.field,operator:l,value:n.target.value,ignoreCase:!0}]};g(n.target.value),v(r(p.filterBy(e.data||[],a),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)f.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,k(l)},N=a.useLocalization(),{column:w}=e;if(!w||!w.field)return m.createElement("div",null);const R=y()?e.expanded:c,T=[];if(x){const t=[...x.filters];s.current=t.findIndex((e=>!!(e.filters&&e.filters.length>0)&&e.filters[0].field===w.field)),-1!==s.current&&t[s.current].filters.length>0&&t[s.current].filters.forEach((t=>{t.field===e.column.field&&T.push(t.value)}))}const M=e.searchBox?m.createElement(e.searchBox,{value:h,onChange:I}):m.createElement("div",{className:"k-searchbox k-textbox k-input k-input-md k-input-solid"},m.createElement(n.IconWrap,{className:"k-input-icon",name:"search",icon:o.searchIcon}),m.createElement(i.Input,{className:"k-input-inner",type:"text",placeholder:N.toLanguageString(_,oe[_]),value:h,onChange:e=>I(e.nativeEvent)}),m.createElement(d.Button,{type:"button",rounded:null,className:"k-input-button",onClick:()=>{const n=e.searchBoxFilterOperator?e.searchBoxFilterOperator:"startswith",l={logic:"and",filters:[{field:e.column.field,operator:n,value:"",ignoreCase:!0}]};g(""),v(r(p.filterBy(e.data||[],l),t))},icon:"x",svgIcon:o.xIcon})),G=T.filter(((e,t)=>T.indexOf(e)===t));return m.createElement(lt,null,m.createElement(at,{title:N.toLanguageString(q,oe[q]),iconClass:"k-i-filter",svgIcon:o.filterIcon,onClick:()=>{const t=y(),r=!(t?e.expanded:c);e.onExpandChange&&e.onExpandChange(r),t||u(r)}}),m.createElement(ut,{show:!!R},m.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()}},m.createElement("div",{className:"k-filter-menu-container"},M,m.createElement("ul",{className:"k-reset k-multicheck-wrap"},m.createElement("li",{className:"k-item k-check-all-wrap"},m.createElement(i.Checkbox,{label:N.toLanguageString(j,oe[j]),onChange:e=>S(e,"all"),checked:(()=>{let e=!1;if(x){const t=[...x.filters];return-1!==s.current&&(e=f.every((e=>!(-1===s.current||!t[s.current].filters)&&t[s.current].filters.findIndex((t=>t.value===e))>=0)),e)}return e})()})),f.map(((e,t)=>m.createElement("li",{className:"k-item",key:t},m.createElement(i.Checkbox,{label:String(e),onChange:t=>S(t,e),checked:G.includes(e)}))))),m.createElement("div",{className:"k-filter-selected-items"},G.length+" "+N.toLanguageString(Y,oe[Y])),m.createElement("div",{className:"k-actions k-hstack k-justify-content-stretch"},m.createElement(d.Button,{themeColor:"primary",type:"submit"},N.toLanguageString(W,oe[W])),m.createElement(d.Button,{className:"k-button",type:"reset"},N.toLanguageString(A,oe[A])))))))},e.GridColumnMenuColumnsList=vt,e.GridColumnMenuFilter=e=>{const t=m.useCallback((()=>{let t;if(e.column&&e.column.field){const r=Le(e.column.filter),n=De(e.filterOperators,r);t=mt(e.column.field,e.filter),t=t?{...t,filters:t.filters.map((e=>({...e})))}:{logic:"and",filters:[{field:e.column.field,operator:n,value:we(n)?null:void 0},{field:e.column.field,operator:n,value:we(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]=m.useState(e.expanded||!1),[l,i]=m.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));i({...l,filters:r})},u=()=>({...l,filters:l.filters.filter((e=>void 0!==e.value&&null!==e.value&&""!==e.value||null===e.value&&e.operator))}),{column:p,filterUI:h,hideSecondFilter:g,filterOperators:f}=e,v=a.useLocalization();if(!p||!p.field)return m.createElement("div",null);const b=Le(p.filter),C=void 0!==g?g:Me[b],E=l.filters,x=Re(f[b],v),k=Re(Te,v),y={field:p.field,value:E[0].value,operator:E[0].operator,operators:x,booleanValues:k,onChange:e=>{c(0,e)},filterType:b},I={field:p.field,value:E[1].value,operator:E[1].operator,operators:x,booleanValues:k,onChange:e=>{c(1,e)},filterType:b},S=l.logic,N=Re(Se,v),w={value:N.find((e=>e.operator===(null===S?"":S))),onChange:e=>{i({...l,logic:e.target.value.operator})},data:N},R=h,T={firstFilterProps:y,secondFilterProps:I,logicData:w.data,logicValue:w.value,onLogicChange:w.onChange,hideSecondFilter:C},M=0!==u().filters.length||we(E[0].operator)||we(E[1].operator),G=s()?e.expanded:r,D=e.alwaysExpand;return m.createElement(lt,null,!D&&m.createElement(at,{title:v.toLanguageString(q,oe[q]),iconClass:"k-i-filter",svgIcon:o.filterIcon,onClick:()=>{const t=s(),l=!(t?e.expanded:r);e.onExpandChange&&e.onExpandChange(l),t||n(l)}}),m.createElement(ut,{show:D||!!G},m.createElement("form",{className:"k-filter-menu",onSubmit:t=>{if(t.preventDefault(),!e.onFilterChange)return;const r=e.column.field,n=gt(e.filter),l=mt(r,e.filter),a=u();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=gt(e.filter),l=mt(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()}},m.createElement("div",{className:"k-filter-menu-container"},R?m.createElement(R,{...T}):m.createElement(ht,{...T}),m.createElement("div",{className:"k-actions k-actions-stretched"},m.createElement(d.Button,{themeColor:"primary",disabled:!M},v.toLanguageString(W,oe[W])),m.createElement(d.Button,{type:"reset"},v.toLanguageString(A,oe[A])))))))},e.GridColumnMenuFilterCell=pt,e.GridColumnMenuFilterUI=ht,e.GridColumnMenuGroup=e=>{const{group:t,column:r}=e,n=a.useLocalization(),l=!!(t&&r.field&&t.find((e=>e.field===r.field))),i=l?F:P;return m.createElement(lt,null,m.createElement(at,{title:n.toLanguageString(i,oe[i]),iconClass:l?"k-i-ungroup":"k-i-group",svgIcon:l?o.ungroupIcon:o.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=at,e.GridColumnMenuItemContent=ut,e.GridColumnMenuItemGroup=lt,e.GridColumnMenuSort=e=>{const t=(t,r)=>{if(t.preventDefault(),!e.onSortChange)return;const{allowUnsort:n,mode:l}=fe(e.sortable||!1,!1),a=(e.sort||[]).filter((t=>t.field===e.column.field))[0],o=it[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=st(n.field,r),i=a.useLocalization();return m.createElement(lt,null,m.createElement(at,{title:i.toLanguageString(V,oe[V]),iconClass:"k-i-sort-asc-sm",svgIcon:o.sortAscSmallIcon,selected:ct(l,r),onClick:r=>{t(r,"asc"),e.onCloseMenu&&e.onCloseMenu()}}),m.createElement(at,{title:i.toLanguageString(U,oe[U]),iconClass:"k-i-sort-desc-sm",svgIcon:o.sortDescSmallIcon,selected:dt(l,r),onClick:r=>{t(r,ot),e.onCloseMenu&&e.onCloseMenu()}}))},e.GridColumnMenuWrapper=Ee,e.GridCommonDragLogic=Ve,e.GridDetailRow=e=>null,e.GridEditCell=ge,e.GridFilterCell=Pe,e.GridGroupCell=_e,e.GridHeaderCell=xe,e.GridHierarchyCell=ce,e.GridNoRecords=Xe,e.GridRow=je,e.GridSelectionCell=se,e.GridToolbar=bt,e.StatusBar=Ct,e.booleanFilterValues=Te,e.cellBoolDropdownChange=Oe,e.cellInputChange=Ge,e.cellOperatorChange=He,e.filterGroupByField=mt,e.getStatusData=e=>{const{dataItems:t,target:r,selectedField:l}=e,a=Et(r.columns).map((e=>e.field)).filter((e=>e&&"string"==typeof e)).map((e=>n.getter(e))),o=n.getter(l),i={dates:[],numbers:[],booleans:[],others:[]};t.forEach((e=>{const t=o(e);t&&t.forEach((t=>{(e=>{"number"==typeof e?i.numbers.push(e):"boolean"==typeof e?i.booleans.push(e):e instanceof Date?i.dates.push(e):i.others.push(e)})(a[t](e))}))}));const s=i.dates.map((e=>e.getTime())),c=i.booleans.filter((e=>e)).length,d=i.booleans.filter((e=>!e)).length,u=i.numbers.length?i.numbers.reduce(((e,t)=>e+t),0):void 0,p={sum:u,average:"number"==typeof u?u/i.numbers.length:void 0,min:i.numbers.length?Math.min(...i.numbers):void 0,max:i.numbers.length?Math.max(...i.numbers):void 0,count:i.numbers.length+i.booleans.length+i.dates.length+i.others.length,isTrue:c>0?c:void 0,isFalse:d>0?d:void 0,earliest:i.dates.length?new Date(Math.min(...s)):void 0,latest:i.dates.length?new Date(Math.max(...s)):void 0},h=(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(p).forEach((e=>{const t=e,r=p[t];void 0!==r&&g.push({type:t,value:r,formattedValue:h(r,t)})})),g},e.gridMessages=oe,e.isColumnMenuFilterActive=(e,t)=>!!mt(e,t),e.isColumnMenuSortActive=(e,t)=>{const r=st(e,t);return dt(r,t)||ct(r,t)},e.leafColumns=Et,e.operators=Ne,e.pagerFirstPage=M,e.pagerInfo=T,e.pagerItemPerPage=O,e.pagerLastPage=L,e.pagerNextPage=D,e.pagerPreviousPage=G,e.rootFilterOrDefault=gt}));
|
package/drag/ColumnDraggable.js
CHANGED
|
@@ -5,4 +5,4 @@
|
|
|
5
5
|
* Licensed under commercial license. See LICENSE.md in the package root for more information
|
|
6
6
|
*-------------------------------------------------------------------------------------------
|
|
7
7
|
*/
|
|
8
|
-
"use client";"use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const
|
|
8
|
+
"use client";"use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const d=require("react"),c=require("@progress/kendo-react-common");function m(e){const t=Object.create(null,{[Symbol.toStringTag]:{value:"Module"}});if(e){for(const n in e)if(n!=="default"){const a=Object.getOwnPropertyDescriptor(e,n);Object.defineProperty(t,n,a.get?a:{enumerable:!0,get:()=>e[n]})}}return t.default=e,Object.freeze(t)}const s=m(d),g=e=>{const t=s.useRef(null),n=l=>{const r=t.current&&t.current.element;r&&e.pressHandler&&e.pressHandler(l.event,r)},a=l=>{const r=t.current&&t.current.element;r&&e.dragHandler&&e.dragHandler(l.event,r)},u=l=>{t.current&&t.current.element&&e.releaseHandler&&e.releaseHandler(l.event)},o=c.useUnstyled(),i=o&&o.uGrid?o.uGrid:c.uGrid;return s.createElement(c.Draggable,{onPress:n,onDrag:a,onRelease:u,hint:e.dragClue,autoScroll:{boundaryElementRef:e.headerRef,direction:{horizontal:!0,vertical:!1}},scrollContainer:e.containerRef||void 0,ref:t},s.createElement("tr",{className:c.classNames(i.simpleTr({})),style:{touchAction:"none"},role:"row","aria-rowindex":e.ariaRowIndex},e.children))};exports.ColumnDraggable=g;
|