@progress/kendo-react-grid 9.4.0-develop.5 → 9.4.0-develop.7
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 +4 -5
- package/GridClientContextReader.js +2 -1
- package/GridClientContextReader.mjs +15 -14
- package/GridClientWrapper.js +2 -1
- package/GridColumn.js +1 -1
- package/GridColumn.mjs +4 -5
- package/GridComponent.js +1 -1
- package/GridComponent.mjs +120 -119
- package/GridState.js +2 -1
- package/GridToolbar.js +1 -1
- package/GridToolbar.mjs +5 -6
- package/GridWatermarkOverlay.js +2 -1
- package/GridWatermarkOverlay.mjs +2 -2
- package/StatusBar.js +1 -1
- package/StatusBar.mjs +0 -1
- package/VirtualScroll.js +1 -1
- package/VirtualScroll.mjs +0 -1
- package/VirtualScrollFixed.js +1 -1
- package/VirtualScrollFixed.mjs +9 -10
- package/cells/GridCell.js +1 -1
- package/cells/GridCell.mjs +15 -17
- package/cells/GridDetailCell.js +1 -1
- package/cells/GridDetailCell.mjs +5 -6
- package/cells/GridDetailHierarchyCell.js +1 -1
- package/cells/GridDetailHierarchyCell.mjs +4 -5
- package/cells/GridEditCell.js +1 -1
- package/cells/GridEditCell.mjs +6 -7
- package/cells/GridFilterCell.js +2 -1
- package/cells/GridGroupCell.js +1 -1
- package/cells/GridGroupCell.mjs +11 -12
- package/cells/GridHierarchyCell.js +1 -1
- package/cells/GridHierarchyCell.mjs +7 -8
- package/cells/GridRowReorderCell.js +1 -1
- package/cells/GridRowReorderCell.mjs +3 -4
- package/cells/GridSelectionCell.js +1 -1
- package/cells/GridSelectionCell.mjs +12 -13
- package/cells/client/DetailCellContainer.js +2 -1
- package/cells/client/DetailCellContainer.mjs +2 -2
- package/cells/client/GridCellContainer.js +2 -1
- package/cells/client/GridEditCellContainer.js +2 -1
- package/cells/client/GridEditCellEditor.js +2 -1
- package/cells/client/GridEditCellEditor.mjs +14 -14
- package/cells/client/GridGroupCellContainer.js +2 -1
- package/cells/client/GridGroupCellContainer.mjs +39 -39
- package/cells/client/GridGroupCellToggle.js +2 -1
- package/cells/client/GridGroupCellToggle.mjs +3 -3
- package/cells/client/GridHierarchyCellContainer.js +2 -1
- package/cells/client/GridHierarchyCellToggle.js +2 -1
- package/cells/client/GridHierarchyCellToggle.mjs +15 -15
- package/cells/client/GridRowReorderContainer.js +2 -1
- package/cells/client/GridRowReorderContainer.mjs +3 -3
- package/cells/client/GridSelectionCellContainer.js +2 -1
- package/cells/client/GridSelectionCellInput.js +2 -1
- package/cells/client/GridSelectionCellInput.mjs +3 -3
- package/columnMenu/GridColumnMenuCheckboxFilter.js +2 -1
- package/columnMenu/GridColumnMenuColumnsList.js +2 -1
- package/columnMenu/GridColumnMenuColumnsList.mjs +16 -16
- package/columnMenu/GridColumnMenuFilter.js +2 -1
- package/columnMenu/GridColumnMenuFilterCell.js +2 -1
- package/columnMenu/GridColumnMenuFilterCell.mjs +3 -3
- package/columnMenu/GridColumnMenuFilterUI.js +2 -1
- package/columnMenu/GridColumnMenuGroup.js +2 -1
- package/columnMenu/GridColumnMenuGroup.mjs +5 -5
- package/columnMenu/GridColumnMenuItem.js +2 -1
- package/columnMenu/GridColumnMenuItem.mjs +2 -2
- package/columnMenu/GridColumnMenuItemContent.js +2 -1
- package/columnMenu/GridColumnMenuItemContent.mjs +4 -4
- package/columnMenu/GridColumnMenuItemGroup.js +2 -1
- package/columnMenu/GridColumnMenuItemGroup.mjs +4 -4
- package/columnMenu/GridColumnMenuSort.js +2 -1
- package/columnMenu/GridColumnMenuSort.mjs +7 -7
- package/columnMenu/GridColumnMenuWrapper.js +2 -1
- package/components/GridContainerElementContainer.js +2 -1
- package/components/GridCustomCellClientContainer.js +2 -1
- package/components/GridCustomCellClientContainer.mjs +2 -2
- package/components/GridDragClue.js +2 -1
- package/components/GridDragClue.mjs +5 -5
- package/components/GridDraggableRowsContainer.js +2 -1
- package/components/GridDropClue.js +2 -1
- package/components/GridDropClue.mjs +5 -5
- package/components/GridElementContainer.js +2 -1
- package/components/GridElementContainer.mjs +6 -6
- package/components/PagerContainer.js +2 -1
- package/components/PagerContainer.mjs +4 -4
- package/components/VirtualScrollHeightContainer.js +2 -1
- package/components/VirtualScrollHeightContainer.mjs +2 -2
- package/components/colGroup/GridColGroup.js +2 -1
- package/components/colGroup/GridColGroup.mjs +5 -5
- package/components/icons/reorder-row-svg.js +2 -1
- package/components/icons/reorder-row-svg.mjs +2 -2
- package/components/noRecords/GridNoRecords.js +2 -1
- package/components/noRecords/GridNoRecords.mjs +5 -5
- package/components/noRecords/GridNoRecordsContainer.js +2 -1
- package/components/noRecords/GridNoRecordsContainer.mjs +4 -4
- package/components/table/GridTable.js +2 -1
- package/components/table/GridTable.mjs +4 -4
- package/components/table/GridTableBody.js +2 -1
- package/components/table/GridTableBody.mjs +2 -2
- package/components/table/GridTableScrollable.js +2 -1
- package/components/table/GridTableScrollable.mjs +6 -6
- package/components/utils.js +1 -1
- package/components/utils.mjs +0 -1
- package/constants/index.js +1 -1
- package/constants/index.mjs +0 -1
- package/contextMenu/GridContextMenu.js +2 -1
- package/contextMenu/GridContextMenu.mjs +3 -3
- package/contextMenu/enums.js +1 -1
- package/contextMenu/enums.mjs +0 -1
- package/dist/cdn/js/kendo-react-grid.js +1 -1
- package/drag/ColumnDraggable.js +2 -1
- package/drag/ColumnDraggable.mjs +7 -7
- package/drag/ColumnResize.js +1 -1
- package/drag/ColumnResize.mjs +0 -1
- package/drag/CommonDragLogic.js +1 -1
- package/drag/CommonDragLogic.mjs +0 -1
- package/drag/GroupingIndicator.js +2 -1
- package/drag/GroupingIndicator.mjs +11 -11
- package/filterCommon.js +1 -1
- package/filterCommon.mjs +4 -5
- package/footer/Footer.js +2 -1
- package/footer/FooterCell.js +1 -1
- package/footer/FooterCell.mjs +3 -4
- package/footer/FooterRow.js +1 -1
- package/footer/FooterRow.mjs +6 -7
- package/footer/client/FooterCellContainer.js +2 -1
- package/footer/client/FooterCellContainer.mjs +5 -5
- package/header/FilterRow.js +1 -1
- package/header/FilterRow.mjs +41 -43
- package/header/GridHeaderCell.js +2 -1
- package/header/GridHeaderCell.mjs +4 -4
- package/header/GridHeaderSelectionCell.js +2 -1
- package/header/GroupPanel.js +2 -1
- package/header/Header.js +2 -1
- package/header/HeaderRow.js +1 -1
- package/header/HeaderRow.mjs +33 -35
- package/header/client/GridFilterCellContainer.js +2 -1
- package/header/client/GridFilterCellContainer.mjs +7 -7
- package/header/client/GridFilterCellElementContainer.js +2 -1
- package/header/client/GridHeaderCellContainer.js +2 -1
- package/header/client/GridHeaderCellElementContainer.js +2 -1
- package/header/client/GridHeaderCellElementContainer.mjs +10 -10
- package/header/client/GridHeaderRowContainer.js +2 -1
- package/header/client/GridHeaderRowReorderCell.js +2 -1
- package/header/client/GridHeaderRowReorderCell.mjs +2 -2
- package/header/client/HeaderCellResizer.js +2 -1
- package/header/client/HeaderRowDraggable.js +2 -1
- package/index.d.mts +6 -0
- package/index.d.ts +6 -0
- package/index.js +1 -1
- package/index.mjs +13 -14
- package/interfaces/GridSortSettings.js +1 -1
- package/interfaces/GridSortSettings.mjs +0 -1
- package/messages/index.js +1 -1
- package/messages/index.mjs +0 -1
- package/messages/messagesMap.js +1 -1
- package/messages/messagesMap.mjs +2 -3
- package/package-metadata.js +1 -1
- package/package-metadata.mjs +2 -3
- package/package.json +12 -12
- package/paging/GridPagerSettings.js +1 -1
- package/paging/GridPagerSettings.mjs +6 -7
- package/rows/GridDetailRow.js +1 -1
- package/rows/GridDetailRow.mjs +2 -3
- package/rows/GridRow.js +2 -1
- package/utils/_clientModule.js +2 -1
- package/utils/_clientModule.mjs +2 -2
- package/utils/_serverModule.js +1 -1
- package/utils/_serverModule.mjs +0 -1
- package/utils/index.js +1 -1
- package/utils/index.mjs +38 -39
package/Grid.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
|
|
8
|
+
"use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const u=require("react"),e=require("prop-types"),c=require("./utils/index.js"),s=require("./GridClientContextReader.js"),l=require("./GridComponent.js"),d=require("./GridState.js"),b=require("@progress/kendo-react-common");function f(n){const o=Object.create(null,{[Symbol.toStringTag]:{value:"Module"}});if(n){for(const t in n)if(t!=="default"){const a=Object.getOwnPropertyDescriptor(n,t);Object.defineProperty(o,t,a.get?a:{enumerable:!0,get:()=>n[t]})}}return o.default=n,Object.freeze(o)}const r=f(u),i=r.forwardRef((n,o)=>{const{isPaid:t}={isPaid:!0},[a]=b.useCustomComponent(t?d.GridClientStateProvider:r.Fragment);return c.isClient()?r.createElement(a,{...n},r.createElement(s.GridClientContextReader,{id:n.id},r.createElement(l.GridComponent,{ref:o,...n}))):r.createElement(l.GridComponent,{ref:o,...n})}),p={data:e.oneOfType([e.array,e.shape({data:e.array,total:e.number})]),sortable:e.oneOfType([e.bool,e.shape({mode:e.oneOf(["single","multiple"]),allowUnsort:e.bool})]),onSortChange:e.func,sort:e.array,filterable:e.bool,filter:e.any,onFilterChange:e.func,pageable:e.oneOfType([e.bool,e.shape({buttonCount:e.number,responsive:e.bool,info:e.bool,type:e.oneOf(["numeric","input"]),pageSizes:e.oneOfType([e.bool,e.arrayOf(e.oneOfType([e.string,e.number]))]),previousNext:e.bool})]),pageSize:e.number,onPageChange:e.func,total:e.number,skip:e.number,take:e.number,fixedScroll:e.bool,onExpandChange:e.func,expandField:e.string,selectedField:e.string,onSelectionChange:e.func,onHeaderSelectionChange:e.func,resizable:e.bool,reorderable:e.bool,group:e.any,groupable:e.oneOfType([e.bool,e.shape({enabled:e.bool,footer:e.oneOf(["always","visible","none"])})]),onGroupChange:e.func,onRowClick:e.func,onRowDoubleClick:e.func,onItemChange:e.func,editField:e.string,scrollable:e.oneOf(["none","scrollable","virtual"]),rowHeight:e.number,detailRowHeight:e.number,detail:e.any,style:e.object,onDataStateChange:e.func,onColumnResize:e.func,onColumnReorder:e.func,dataItemKey:e.string,navigatable:e.oneOfType([e.bool,e.shape({mode:e.oneOf(["incell","inline","popup"])})]),size:e.oneOf(["small","medium"])};i.displayName="KendoReactGrid";i.propTypes=p;exports.Grid=i;
|
package/Grid.mjs
CHANGED
|
@@ -5,19 +5,18 @@
|
|
|
5
5
|
* Licensed under commercial license. See LICENSE.md in the package root for more information
|
|
6
6
|
*-------------------------------------------------------------------------------------------
|
|
7
7
|
*/
|
|
8
|
-
"use client";
|
|
9
8
|
import * as o from "react";
|
|
10
9
|
import e from "prop-types";
|
|
11
10
|
import { isClient as m } from "./utils/index.mjs";
|
|
12
|
-
import { GridClientContextReader as
|
|
11
|
+
import { GridClientContextReader as p } from "./GridClientContextReader.mjs";
|
|
13
12
|
import { GridComponent as t } from "./GridComponent.mjs";
|
|
14
|
-
import { GridClientStateProvider as
|
|
13
|
+
import { GridClientStateProvider as u } from "./GridState.mjs";
|
|
15
14
|
import { useCustomComponent as f } from "@progress/kendo-react-common";
|
|
16
15
|
const a = o.forwardRef((n, r) => {
|
|
17
16
|
const { isPaid: l } = {
|
|
18
17
|
isPaid: !0
|
|
19
|
-
}, [i] = f(l ?
|
|
20
|
-
return m() ? /* @__PURE__ */ o.createElement(i, { ...n }, /* @__PURE__ */ o.createElement(
|
|
18
|
+
}, [i] = f(l ? u : o.Fragment);
|
|
19
|
+
return m() ? /* @__PURE__ */ o.createElement(i, { ...n }, /* @__PURE__ */ o.createElement(p, { id: n.id }, /* @__PURE__ */ o.createElement(t, { ref: r, ...n }))) : /* @__PURE__ */ o.createElement(t, { ref: r, ...n });
|
|
21
20
|
}), s = {
|
|
22
21
|
data: e.oneOfType([
|
|
23
22
|
e.array,
|
|
@@ -5,4 +5,5 @@
|
|
|
5
5
|
* Licensed under commercial license. See LICENSE.md in the package root for more information
|
|
6
6
|
*-------------------------------------------------------------------------------------------
|
|
7
7
|
*/
|
|
8
|
-
"use client";
|
|
8
|
+
"use client";
|
|
9
|
+
"use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const p=require("react"),r=require("@progress/kendo-react-common"),s=require("@progress/kendo-react-intl"),g=require("./GridState.js");function y(e){const t=Object.create(null,{[Symbol.toStringTag]:{value:"Module"}});if(e){for(const n in e)if(n!=="default"){const o=Object.getOwnPropertyDescriptor(e,n);Object.defineProperty(t,n,o.get?o:{enumerable:!0,get:()=>e[n]})}}return t.default=e,Object.freeze(t)}const c=y(p),C=e=>{const{children:t}=e,n=r.useId(),o=e.id||n,a=r.useUnstyled(),i=s.useLocalization(),l=s.useInternationalization(),[,u]=c.useReducer(m=>!m,!0),d=c.useRef([]),f=c.useRef(0),[R,,b]=g.useGridState();return c.cloneElement(t,{...t==null?void 0:t.props,...R,...b,id:o,unstyled:a,localization:i,intl:l,columnsRef:d,scrollLeftRef:f,forceUpdate:u,isClient:!0})};exports.GridClientContextReader=C;
|
|
@@ -6,25 +6,26 @@
|
|
|
6
6
|
*-------------------------------------------------------------------------------------------
|
|
7
7
|
*/
|
|
8
8
|
"use client";
|
|
9
|
-
import * as
|
|
10
|
-
import { useId as
|
|
11
|
-
import { useLocalization as
|
|
12
|
-
import { useGridState as
|
|
13
|
-
const
|
|
14
|
-
const { children:
|
|
15
|
-
return
|
|
16
|
-
...
|
|
17
|
-
...a,
|
|
9
|
+
import * as e from "react";
|
|
10
|
+
import { useId as R, useUnstyled as p } from "@progress/kendo-react-common";
|
|
11
|
+
import { useLocalization as z, useInternationalization as C } from "@progress/kendo-react-intl";
|
|
12
|
+
import { useGridState as I } from "./GridState.mjs";
|
|
13
|
+
const L = (o) => {
|
|
14
|
+
const { children: t } = o, n = R(), s = o.id || n, c = p(), r = z(), i = C(), [, l] = e.useReducer((m) => !m, !0), a = e.useRef([]), u = e.useRef(0), [d, , f] = I();
|
|
15
|
+
return e.cloneElement(t, {
|
|
16
|
+
...t == null ? void 0 : t.props,
|
|
18
17
|
...d,
|
|
19
|
-
|
|
20
|
-
|
|
18
|
+
...f,
|
|
19
|
+
id: s,
|
|
20
|
+
unstyled: c,
|
|
21
21
|
localization: r,
|
|
22
|
-
|
|
22
|
+
intl: i,
|
|
23
|
+
columnsRef: a,
|
|
23
24
|
scrollLeftRef: u,
|
|
24
|
-
forceUpdate:
|
|
25
|
+
forceUpdate: l,
|
|
25
26
|
isClient: !0
|
|
26
27
|
});
|
|
27
28
|
};
|
|
28
29
|
export {
|
|
29
|
-
|
|
30
|
+
L as GridClientContextReader
|
|
30
31
|
};
|
package/GridClientWrapper.js
CHANGED
|
@@ -5,4 +5,5 @@
|
|
|
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 Rt=require("react"),b=require("@progress/kendo-react-common"),l=require("@progress/kendo-react-data-tools"),Ct=require("./drag/ColumnResize.js"),Et=require("./drag/CommonDragLogic.js"),vt=require("./constants/index.js"),k=require("./utils/index.js"),Se=require("./VirtualScrollFixed.js"),xt=require("./VirtualScroll.js"),yt=require("./contextMenu/GridContextMenu.js"),De=require("./contextMenu/enums.js"),ke=require("./interfaces/GridSortSettings.js");function wt(t){const R=Object.create(null,{[Symbol.toStringTag]:{value:"Module"}});if(t){for(const m in t)if(m!=="default"){const G=Object.getOwnPropertyDescriptor(t,m);Object.defineProperty(R,m,G.get?G:{enumerable:!0,get:()=>t[m]})}}return R.default=t,Object.freeze(R)}const i=wt(Rt),Ke=i.createContext(void 0),St=t=>{var ye,we;const R=t.gridProps.isClient,[m,G]=i.useState({}),Me=e=>{e.event.preventDefault(),G({...m,show:!0,offset:{left:e.event.pageX,top:e.event.pageY},dataItem:e.dataItem,field:e.field})},fe=()=>{G({})},h=i.useMemo(()=>t.columnsRef.current.find(e=>e.field===m.field),[t.columnsRef,m]),me=i.useMemo(()=>{const e=t.gridProps.sortable&&(h==null?void 0:h.sortable);return k.getDefaultHeadContextMenuItems({sortable:!!e,selectable:l.getSelectionOptions(t.gridProps.selectable).enabled,clipboard:!!t.gridProps.clipboard})},[h,t.gridProps.sortable,t.gridProps.selectable,t.gridProps.clipboard]),Pe=i.useMemo(()=>{const e=t.gridProps.sortable&&(h==null?void 0:h.sortable);return k.getDefaultBodyContextMenuItems({sortable:!!e,selectable:l.getSelectionOptions(t.gridProps.selectable).enabled,clipboard:!!t.gridProps.clipboard})},[h,t.gridProps.sortable,t.gridProps.selectable,t.gridProps.clipboard]),Te=i.useMemo(()=>{const e=(h==null?void 0:h.contextMenu)||t.gridProps.contextMenu,r=typeof e=="function"?e(m):e;if(r&&m.offset){const n=m.dataItem?De.GridContextMenuAnchorPart.body:De.GridContextMenuAnchorPart.head,a=r[n];return a===!1?void 0:a===!0||a===void 0?m.dataItem?Pe:me:a}},[t.gridProps.contextMenu,m,Pe,me,h]),Ae=e=>{var d;const r=e.event.item,n={target:v.current,syntheticEvent:e.event.syntheticEvent,nativeEvent:e.event.nativeEvent,menuItem:r,...e};t.gridProps.onContextMenuItemClick&&u(t.gridProps.onContextMenuItemClick,n);const a=Z(),o={selectedField:t.gridProps.selectedField||"",componentId:t.id,dataItems:a,dataItem:e.dataItem,startRowIndex:-1,endRowIndex:-1,startColIndex:-1,endColIndex:-1,ctrlKey:!1,altKey:!1,metaKey:!1,shiftKey:!1,isDrag:!1,...l.getSelectionOptions(t.gridProps.selectable),...n};switch((d=r.data)==null?void 0:d.action){case"SortCommand":if(h){const s=r.name?r.name.toLowerCase().includes("asc")?"asc":r.name.toLowerCase().includes("desc")?"desc":void 0:void 0;be(e.event.syntheticEvent,h,s)}break;case"SelectRowCommand":Xe(o);break;case"SelectAllRowsCommand":$e(o);break;case"ClearSelectionCommand":Je(o);break}fe()},N=()=>{const e=g.current.filter(r=>r.declarationIndex>=0&&r.parentIndex===-1);return k.sanitizeColumns(e)},Ge=(e,r,n)=>{if(t.gridProps.onContextMenu&&R){const a={target:v.current,syntheticEvent:e,nativeEvent:e.nativeEvent,dataItem:r,field:n};u(t.gridProps.onContextMenu,a)}t.gridProps.contextMenu&&Me({event:e,dataItem:r,field:n})},He=e=>{if(e.target!==e.currentTarget)return;clearTimeout(le.current),c.current&&(c.current.table=S.current);const r=e.currentTarget.scrollLeft,n=e.currentTarget.scrollTop,a=t.gridProps.scrollable==="virtual";t.gridProps.columnVirtualization&&(!a||n===de.current)&&(le.current=window.setTimeout(()=>{te()},0)),t.gridProps.scrollLeftRef&&(t.gridProps.scrollLeftRef.current=r),O.current&&O.current.setScrollLeft(r),F.current&&F.current.setScrollLeft(r),c.current&&n!==de.current&&c.current.scrollHandler(e),t.gridProps.onScroll&&R&&u(t.gridProps.onScroll,{...I(e)}),de.current=n},Fe=e=>{var n,a,o,d;l.tableKeyboardNavigation.onKeyDown(e,{navigatable:t.gridProps.navigatable||!1,contextStateRef:w,navigationStateRef:M,onNavigationAction:ze,columns:N()}),l.tableKeyboardNavigation.onGetSnapshotBeforeUpdate({document:x(),contextStateRef:w,navigationStateRef:M});const r={dataItems:V(),mode:C.mode,cell:C.cell,componentId:t.id,selectedField:t.gridProps.selectedField,...I(e)};if(t.gridProps.onKeyDown&&R&&u(t.gridProps.onKeyDown,r),!t.gridProps.selectedField&&C.enabled&&t.gridProps.dataItemKey){const s=l.getSelectedStateFromKeyDown({event:r,selectedState:(n=t.gridProps.select)!=null?n:{},dataItemKey:t.gridProps.dataItemKey});if(s===t.gridProps.select)return;const P=e.target,E=l.closestTagName(P,"TD"),f=l.closestTagName(P,"TR"),D=l.getColumnIndex(E),z=l.getRowIndex(f);if(D!==void 0&&z!==void 0){const ge=Array.isArray(t.gridProps.data)?(a=t.gridProps.data)==null?void 0:a[z]:(d=(o=t.gridProps.data)==null?void 0:o.data)==null?void 0:d[z];t.gridProps.onSelectionChange&&u(t.gridProps.onSelectionChange,{...r,select:s,dataItem:ge,startRowIndex:z,startColIndex:D,startDataItem:ge,endDataItem:ge,endRowIndex:z,endColIndex:D,ctrlKey:e.ctrlKey,altKey:e.altKey,metaKey:e.metaKey,shiftKey:e.shiftKey,isDrag:!1})}}},Oe=e=>{l.tableKeyboardNavigation.onFocus(e,{navigatable:!!t.gridProps.navigatable,contextStateRef:w})},ze=e=>{if(e.action==="moveToNextPage"&&Qe(e.event),e.action==="moveToPrevPage"&&Ze(e.event),e.focusElement&&e.action==="reorderToRight"){const r=parseInt(e.focusElement.ariaColIndex,10)-1;r<g.current.length-1&&Y(r,r+1,e.event)}if(e.focusElement&&e.action==="reorderToLeft"){const r=parseInt(e.focusElement.ariaColIndex,10)-1;r>0&&Y(r,r-1,e.event)}if(t.gridProps.onNavigationAction&&R){const r={focusElement:e.focusElement,...I(e.event)};u(t.gridProps.onNavigationAction,r)}},Ne=(e,r)=>{t.gridProps.onRowClick&&e.target.nodeName==="TD"&&u(t.gridProps.onRowClick,{dataItem:r,...I(e)})},Le=(e,r)=>{t.gridProps.onRowDoubleClick&&e.target.nodeName==="TD"&&u(t.gridProps.onRowDoubleClick,{dataItem:r,...I(e)})},qe=(e,r,n)=>{if(ve.enabled&&ve.mode==="incell"&&t.gridProps.dataItemKey){const a=l.editReducer(t.gridProps.edit,{type:l.EDIT_ACTION.ENTER_FIELD_EDIT,payload:{id:r[t.gridProps.dataItemKey],field:n}});t.gridProps.onEditChange&&u(t.gridProps.onEditChange,{edit:a,...I(e)})}},Ue=(e,r)=>{var a;if(l.getDetailExpandableOptions(t.detailExpandable).enabled){const o=l.detailExpandReducer((a=t.gridProps.detailExpand)!=null?a:{},e);t.gridProps.onDetailExpandChange&&u(t.gridProps.onDetailExpandChange,{...I(r),detailExpand:o})}},Ve=(e,r)=>{var a;const n=l.getGroupExpandableOptions(typeof t.gridProps.groupable=="object"?t.gridProps.groupable.expandable!==!1:t.gridProps.groupable);if(n.enabled){const o=l.groupExpandReducer((a=t.gridProps.groupExpand)!=null?a:[],e,n);t.gridProps.onGroupExpandChange&&u(t.gridProps.onGroupExpandChange,{...I(r),groupExpand:o})}},be=(e,r,n)=>{const{allowUnsort:a,mode:o}=ke.normalize(t.gridProps.sortable||!1,r.sortable||!1),d=(t.gridProps.sort||[]).filter(E=>E.field===r.field)[0],s=n||ke.firstLevelSortSeqMap[a][d&&d.dir||""],P=o==="single"?[]:(t.gridProps.sort||[]).filter(E=>E.field!==r.field);s!==""&&r.field&&P.push({field:r.field,dir:s}),he(P,e)},We=e=>{var r;if(e.field===t.gridProps.expandField||e._expand||t.gridProps.group&&e.field===void 0){if(t.gridProps.onExpandChange){const n=t.gridProps.dataItemKey?l.detailExpandReducer((r=t.gridProps.detailExpand)!=null?r:{},{type:l.DETAIL_EXPAND_ACTION.SET,id:e.dataItem[t.gridProps.dataItemKey],payload:e.value}):t.gridProps.detailExpand;u(t.gridProps.onExpandChange,{...I(e.syntheticEvent),expand:n,dataItem:e.dataItem,dataIndex:e.dataIndex,value:e.value})}return}t.gridProps.onItemChange&&u(t.gridProps.onItemChange,{...I(e.syntheticEvent),dataItem:e.dataItem,dataIndex:e.dataIndex,field:e.field,value:e.value})},_e=e=>{var r;if(t.gridProps.onSelectionChange&&C.enabled){const{event:n,dataItem:a,dataIndex:o,columnIndex:d}=e,s={...I(n.syntheticEvent),dataItem:a,startColIndex:d,endColIndex:d,startRowIndex:o,endRowIndex:o,dataItems:V(),altKey:!1,ctrlKey:!1,shiftKey:!1,metaKey:!1,mode:C.mode,cell:C.cell,isDrag:!1,componentId:t.id,selectedField:t.gridProps.selectedField||""};u(t.gridProps.onSelectionChange,{...s,select:t.gridProps.dataItemKey?l.getSelectedState({event:s,selectedState:(r=t.gridProps.select)!=null?r:{},dataItemKey:t.gridProps.dataItemKey}):{}})}},Be=e=>{var r;if(t.gridProps.onHeaderSelectionChange&&C.enabled){const n=V();u(t.gridProps.onHeaderSelectionChange,{select:e.syntheticEvent.target.checked?n.reduce((a,o)=>(t.gridProps.dataItemKey&&b.getter(t.gridProps.dataItemKey)(o)!==void 0&&(a[b.getter(t.gridProps.dataItemKey)(o)]=!0),a),{}):{},field:e.field,nativeEvent:e.syntheticEvent&&e.syntheticEvent.nativeEvent,syntheticEvent:e.syntheticEvent,target:v.current,dataItems:n,selectedField:(r=t.gridProps.selectedField)!=null?r:""})}},L=(e,r)=>{t.gridProps.onSelectionChange&&R&&C.enabled&&u(t.gridProps.onSelectionChange,{...e,select:r})},je=e=>{var r;if(t.gridProps.onSelectionChange&&C.enabled){const n=Z()[e.startRowIndex],a=Z()[e.endRowIndex],o={syntheticEvent:void 0,target:v.current,selectedField:t.gridProps.selectedField||"",componentId:t.id,dataItems:V(),dataItem:null,startDataItem:n,endDataItem:a,...e},d=l.getSelectedState({event:o,selectedState:(r=t.gridProps.select)!=null?r:{},dataItemKey:t.gridProps.dataItemKey});L(o,d)}},$e=e=>{if(t.gridProps.onSelectionChange&&C.enabled){const r=e.dataItems[0],n=e.dataItems[e.dataItems.length-1],a={},o={...e,startDataItem:r,endDataItem:n,startRowIndex:0,endRowIndex:e.dataItems.length-1,startColIndex:0,endColIndex:g.current.length-1};e.dataItems.forEach(d=>{const P=b.getter(t.gridProps.dataItemKey)(d);a[P]=e.cell?[...Array(g.current.length).keys()]:!0}),L(o,a)}},Xe=e=>{if(t.gridProps.onSelectionChange&&C.enabled){const n=b.getter(t.gridProps.dataItemKey)(e.dataItem),a=0,o=g.current.length-1,d=e.dataItems.findIndex(D=>D[t.gridProps.dataItemKey]===e.dataItem[t.gridProps.dataItemKey]),E={...e,startDataItem:d,endDataItem:d,startRowIndex:d,endRowIndex:d,startColIndex:a,endColIndex:o},f=e.mode==="multiple"?t.gridProps.select||{}:{};f[n]===!0||Array.isArray(f[n])&&f[n].length===g.current.length?delete f[n]:f[n]=e.cell?[...Array(g.current.length).keys()]:!0,L(E,f)}},Je=e=>{t.gridProps.onSelectionChange&&C.enabled&&L(e,{})},q=(e,r,n,a,o)=>{const d=t.gridProps.onDataStateChange;if(e){const s={...I(a),...r,targetEvent:o};u(e,s)}else d&&u(d,{...I(a),targetEvent:o||{},dataState:{...ct(),...n}})},U=(e,r,n)=>{q(t.gridProps.onPageChange,{page:e},{skip:e.skip,take:e.take},r,n)},Ye=()=>{let e=t.gridProps.total||0;return Array.isArray(t.gridProps.data)?e=e||t.gridProps.data.length:t.gridProps.data&&(e=e||t.gridProps.data.total),e},Qe=e=>{var o,d;const r=(d=(o=t.gridProps.take)!=null?o:t.gridProps.pageSize)!=null?d:0,n=(t.gridProps.skip||0)+r,a=Ye();n<a&&U({skip:n,take:r},e)},Ze=e=>{var a,o;const r=(o=(a=t.gridProps.take)!=null?a:t.gridProps.pageSize)!=null?o:0,n=(t.gridProps.skip||0)-r;n>=0&&U({skip:n,take:r},e)},pe=e=>{U({skip:e.skip,take:e.take},e.syntheticEvent,e.targetEvent)},he=(e,r)=>{q(t.gridProps.onSortChange,{sort:e},{sort:e,...t.gridProps.scrollable==="virtual"?{skip:0}:{}},r)},et=(e,r)=>{q(t.gridProps.onFilterChange,{filter:e},{filter:e||void 0,skip:0},r)},J=(e,r)=>{const n=r.nativeEvent?r:{nativeEvent:r.nativeEvent||r.originalEvent};e.length===0&&t.gridProps.navigatable&&(oe.current=!0),q(t.gridProps.onGroupChange,{group:e},{group:e,skip:0},n)},Y=(e,r,n)=>{const a=g.current[e],o=a.depth,d=f=>{do f++;while(f<g.current.length&&g.current[f].depth>o);return f},s=g.current.splice(e,d(e)-e);g.current.splice(e<r?d(r-s.length):r,0,...s),g.current.filter(f=>f.declarationIndex>=0).forEach((f,D)=>f.orderIndex=D);const P=g.current[e].locked&&g.current[r].locked;l.updateLeft(t.columnsMapRef,g.current,P||$.current),l.updateRight(t.columnsMapRef,g.current,P||$.current),ae.current&&($.current=!1,ae.current=!1);const E=N();if(te(),t.gridProps.onColumnReorder){const f={target:v.current,columns:E,columnId:a.id,nativeEvent:n};u(t.gridProps.onColumnReorder,f)}},tt=(e,r,n)=>{const a=typeof t.gridProps.rowReorderable=="object"?t.gridProps.rowReorderable.enabled:t.gridProps.rowReorderable;if(n==="forbidden"||!a||!X.current)return;const{slicedData:o,dataRef:d}=t,s=(o||d)[r];t.gridProps.onRowReorder&&u(t.gridProps.onRowReorder,{draggedDataItems:[X.current],droppedDataItem:s==null?void 0:s.dataItem,dropPosition:n,nativeEvent:e.originalEvent,dragEvent:e,target:v.current}),X.current=null},rt=(e,r,n)=>{if(t.gridProps.group===void 0)return;const a=t.gridProps.group.slice();a.splice(r,0,...a.splice(e,1)),J(a,n)},Ie=(e,r,n)=>{const a=g.current[e].field;if(!a)return;const o=(t.gridProps.group||[]).slice();o.splice(r,0,{field:a}),J(o,n)},nt=(e,r)=>{const n=K.current.getCurrentGroupsLength;Ie(e,n,r)},Q=()=>{let e=0;if(!y.current.colGroupMain)return;const r=y.current.colGroupMain.children;for(let n=0;n<r.length;n++){const a=r[n].width;if(!a)return;e+=parseFloat(a.toString())}e=Math.round(e),O.current&&O.current.setWidth(e),F.current&&F.current.setWidth(e),S.current&&(S.current.style.width=e+"px")},at=(e,r)=>{if(t.gridProps.onClipboard&&R){if(!ot()||!e)return;u(t.gridProps.onClipboard,{type:e,nativeEvent:r,columns:g.current,dataItemKey:t.gridProps.dataItemKey||"",...typeof t.gridProps.clipboard!="boolean"?t.gridProps.clipboard:{}})}},ot=()=>{var o,d,s;if(!b.canUseDOM)return!1;const e=b.getActiveElement(x()),r=e?e.matches(".k-table-td")?e:(o=x())==null?void 0:o.body:(d=x())==null?void 0:d.body,n=r.closest(".k-grid-container"),a=r&&((s=A.current)==null?void 0:s.contains(r));return!!(r&&a&&n)},it=(e,r,n,a,o,d)=>{Q(),$.current=!0,ae.current=!0,t.gridProps.onColumnResize&&R&&u(t.gridProps.onColumnResize,{columns:N(),nativeEvent:a,targetColumnId:d,index:e,newWidth:r,oldWidth:n,end:o,target:v.current})},ct=()=>{var e;return{filter:t.gridProps.filter,sort:t.gridProps.sort,skip:t.gridProps.skip,take:(e=t.gridProps.take)!=null?e:t.gridProps.pageSize,group:t.gridProps.group}},I=e=>({nativeEvent:e&&e.nativeEvent,syntheticEvent:e,target:v.current}),dt=e=>({...e,nativeEvent:void 0,syntheticEvent:void 0,target:void 0,targetEvent:void 0,focusElement:void 0}),u=(e,r)=>{if(e.name==="proxy"){e.call(void 0,dt(r));return}e.call(void 0,r)},lt=()=>{var e,r,n;if(H.current&&((e=H.current)==null?void 0:e.getElementsByClassName("k-grid-edit-row").length)>0){ce.current=!1,(r=document.activeElement)!=null&&r.closest(".k-grid-edit-row")?ie.current=document.activeElement:ie.current=void 0;const a=Array.from((n=H.current)==null?void 0:n.getElementsByClassName("k-grid-edit-row"));a.length>ue.current.length?j.current=a.filter(o=>!ue.current.includes(o))[0]:a.length===1&&(j.current=a[0],ce.current=!0),ue.current=a}},V=()=>t.dataRef.filter(e=>e.rowType==="data").map(e=>e.dataItem),Z=()=>(t.slicedData||t.dataRef).filter(e=>e.rowType==="data").map(e=>e.dataItem),p=()=>(ne.current||(ne.current=b.getScrollbarWidth()||void 0),ne.current),x=()=>{var e;if(b.canUseDOM)return((e=W())==null?void 0:e.ownerDocument)||document},W=()=>A.current,ee=i.useCallback(e=>{var a;if(!c.current||!((a=c.current)!=null&&a.container)||t.gridProps.scrollable==="none")return;T.current&&T.current.disconnect();const{rowIndex:r}=e,n=W();if(t.gridProps.scrollable==="virtual")c.current.askedSkip=r,c.current.container.scroll(0,Math.round(c.current.askedSkip/c.current.total*c.current.container.scrollHeight));else if(n){const o=r<1?n.querySelector("tbody > tr:nth-child(1)"):n.querySelector(`tbody > tr:nth-child(${r+1})`);o&&B.current&&(B.current.scrollTop=o.offsetTop)}},[t.gridProps.scrollable]),Re=e=>JSON.stringify(e.map(r=>({id:r.id,field:r.field,title:r.title,children:r.children}))),st=()=>Re(It)===Re(g.current),ut=()=>{st()||te()},gt=()=>{const{data:e,total:r}=t.gridProps;return Array.isArray(e)?e.length===r:e?r===e.total:!1},ft=(e,r)=>{var n,a;if(c.current){if(c.current.fixedScroll=t.gridProps.fixedScroll||!1,c.current.PageChange=U,c.current.realSkip=t.gridProps.skip||0,c.current.pageSize=(a=(n=t.gridProps.take)!=null?n:t.gridProps.pageSize)!=null?a:0,c.current.scrollableVirtual=t.gridProps.scrollable==="virtual",c.current.total=e,c.current.propsSkip=(t.gridProps.skip||0)+(t.gridProps.scrollable==="virtual"?c.current.topCacheCount+(c.current.attendedSkip-(t.gridProps.skip||0)):0),t.gridProps.rowHeight!==void 0&&t.gridProps.rowHeight>0&&!r){const o=t.gridProps.rowHeight*e;c.current.containerHeight=k.firefox?Math.min(k.firefoxMaxHeight,o):o}else c.current.containerHeight=1533915;if(c.current.containerRef=B,c.current.tableBodyRef=H,c.current.table=S.current,c.current instanceof Se.VirtualScrollFixed){const{rowHeight:o=0,detail:d,expandField:s}=t.gridProps;let{detailRowHeight:P=0}=t.gridProps;P=d&&s?P:o,gt()?(c.current.total=t.dataRef.length,c.current.rowHeightService=new b.RowHeightService(t.dataRef.length,o,P,t.dataRef)):c.current.rowHeightService=new b.RowHeightService(e,o,P);const E=c.current.rowHeightService.totalHeight();c.current.containerHeight=k.firefox?Math.min(k.firefoxMaxHeight,E):E}}},Ce=i.useCallback(e=>{const r={rowIndex:se.current};e.forEach(n=>{n.isIntersecting||ee(r)})},[ee]),te=()=>{t.gridProps.forceUpdate&&t.gridProps.forceUpdate()},mt=e=>e.left!==void 0?Ee!=="rtl"?{left:e.left,right:e.right}:{left:e.right,right:e.left}:{},v=i.useRef(null),g=t.columnsRef,c=i.useRef(),y=i.useRef(),K=i.useRef(),w=i.useRef(),M=i.useRef(),_=i.useRef(),T=i.useRef(null),H=i.useRef(null),Pt=i.useRef(null),B=i.useRef(null),S=i.useRef(null),re=i.useRef(null),A=i.useRef(null),F=i.useRef(null),O=i.useRef(null),ne=i.useRef(),ae=i.useRef(!1),oe=i.useRef(!1),j=i.useRef(),ie=i.useRef(),ce=i.useRef(!1),$=i.useRef(!0),de=i.useRef(0),le=i.useRef(),se=i.useRef(),ue=i.useRef([]),X=i.useRef(null),bt=i.useRef(null),ht=i.useRef(null),Ee=b.useDir(A),It=i.useMemo(()=>i.Children.toArray(t.gridProps.children),[t.gridProps.children]),C=l.getSelectionOptions((ye=t.gridProps.selectable)!=null?ye:!!t.gridProps.selectedField),ve=l.getEditableOptions((we=t.gridProps.editable)!=null?we:!!t.gridProps.editField);i.useMemo(()=>{l.tableKeyboardNavigation.onConstructor({navigatable:!!t.gridProps.navigatable,contextStateRef:w,navigationStateRef:M,idPrefix:t.id})},[]),i.useMemo(()=>{var n;(n=c.current)==null||n.reset();const e=t.gridProps.groupable===!0||typeof t.gridProps.groupable=="object"&&t.gridProps.groupable.enabled!==!1,r=t.isFixedVirtualScroll?Se.VirtualScrollFixed:xt.VirtualScroll;c.current=new r(e||t.gridProps.rowHeight===void 0||t.gridProps.rowHeight===0)},[t.gridProps.scrollable,t.gridProps.total,t.gridProps.filter,t.gridProps.group,t.gridProps.groupable,t.gridProps.sort,t.gridProps.rowHeight]),i.useEffect(()=>(t.gridProps.clipboard&&(_.current=new l.ClipboardService(at),_.current.addEventListeners(x())),()=>{_.current&&_.current.removeEventListeners(x())}),[t.gridProps.onClipboard,t.gridProps.clipboard]),i.useEffect(()=>(t.gridProps.columnVirtualization&&!window.navigator.userAgent.match(vt.SAFARI_REGEX)&&(re.current&&(re.current.style.display="block"),S.current&&(S.current.style.display="block")),Q(),b.setScrollbarWidth(p()),l.tableKeyboardNavigation.onComponentDidMount({scope:A.current||void 0,contextStateRef:w,navigationStateRef:M}),()=>{clearTimeout(le.current)}),[]),i.useEffect(()=>{var e;Q(),b.setScrollbarWidth(p()),(e=c.current)!=null&&e.tableTransform&&c.current.table&&(c.current.table.style.transform=c.current.tableTransform,c.current.tableTransform=""),lt(),l.tableKeyboardNavigation.onComponentDidUpdate({scope:A.current||void 0,contextStateRef:w,navigationStateRef:M,focusFirst:oe.current,newEditableRow:j.current,singleEditRow:ce.current,lastActiveElement:ie.current,navigatable:t.gridProps.navigatable}),oe.current=!1,j.current=void 0}),i.useEffect(()=>{if(b.canUseDOM){const e={rootMargin:"0px",threshold:.9};T.current=window.IntersectionObserver&&new window.IntersectionObserver(Ce,e)||null}},[Ce]),i.useEffect(()=>{var r;let e;return b.canUseDOM&&window.ResizeObserver&&(e=new window.ResizeObserver(ut),e.observe((r=x())==null?void 0:r.body)),()=>{e==null||e.disconnect()}},[]),i.useImperativeHandle(v,()=>({get element(){return W()},props:t.gridProps,get columns(){return N()},scrollIntoView:e=>{var a;if(!((a=c.current)!=null&&a.container)||t.gridProps.scrollable==="none")return;const{rowIndex:r}=e;se.current=r;const n=W();if(T.current&&n){T.current.disconnect();const o=n.querySelector(`[absolute-row-index="${se.current}"]`);o?T.current.observe(o):ee(e)}},fitColumns:e=>{y.current.dblClickHandler(null,e)}})),i.useImperativeHandle(t.gridRef,()=>v.current),i.useMemo(()=>{y.current=new Ct.ColumnResize(it)},[t.gridProps.onColumnResize]),i.useMemo(()=>{K.current=new Et.CommonDragLogic(Y,rt,Ie)},[t.gridProps.onColumnReorder,t.gridProps.onGroupChange,t.gridProps.group,t.gridProps.groupable]),y.current.resizable=t.gridProps.resizable||!1,y.current.columns=g.current;const xe=t.gridProps.groupable===!0||typeof t.gridProps.groupable=="object"&&t.gridProps.groupable.enabled!==!1;return K.current.reorderable=t.gridProps.reorderable||!1,K.current.groupable=xe,K.current.columns=g.current,ft(t.total,xe),i.createElement(Ke.Provider,{value:{isClient:R,rowReorder:tt,activeDragRowDataItemRef:X,reorderRowDragTargetRef:bt,reorderRowDropTargetRef:ht,dir:Ee,getCellPositionStyle:mt,dataItemKey:t.gridProps.dataItemKey,groupChange:J,selectionRelease:je,pagerPageChange:pe,onContextMenu:Ge,rowClick:Ne,rowDblClick:Le,cellClick:qe,headerCellClick:be,itemChange:We,sortChange:he,filterChange:et,onHeaderSelectionChange:Be,columnGroupChange:nt,onKeyDown:Fe,onFocus:Oe,scrollHandler:He,selectionChange:_e,dispatchDetailExpand:Ue,dispatchGroupExpand:Ve,columnResizeRef:y,dragLogicRef:K,navigationStateRef:M,tableElementRef:S,tableBodyElementRef:H,headerElementRef:Pt,containerElementRef:B,headTableElementRef:re,elementRef:A,footerRef:F,headerRef:O,getCachedScrollbarWidth:p,vsRef:c}},i.createElement(l.TableKeyboardNavigationContext.Provider,{value:w.current},t.children),i.createElement(yt.GridContextMenu,{show:m.show,dataItem:m.dataItem,field:m.field,items:Te,offset:m.offset,onClose:fe,onSelect:Ae}))};exports.GridClientWrapper=St;exports.GridContext=Ke;
|
|
8
|
+
"use client";
|
|
9
|
+
"use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const Rt=require("react"),b=require("@progress/kendo-react-common"),l=require("@progress/kendo-react-data-tools"),Ct=require("./drag/ColumnResize.js"),Et=require("./drag/CommonDragLogic.js"),vt=require("./constants/index.js"),k=require("./utils/index.js"),Se=require("./VirtualScrollFixed.js"),xt=require("./VirtualScroll.js"),yt=require("./contextMenu/GridContextMenu.js"),De=require("./contextMenu/enums.js"),ke=require("./interfaces/GridSortSettings.js");function wt(t){const R=Object.create(null,{[Symbol.toStringTag]:{value:"Module"}});if(t){for(const m in t)if(m!=="default"){const G=Object.getOwnPropertyDescriptor(t,m);Object.defineProperty(R,m,G.get?G:{enumerable:!0,get:()=>t[m]})}}return R.default=t,Object.freeze(R)}const i=wt(Rt),Ke=i.createContext(void 0),St=t=>{var ye,we;const R=t.gridProps.isClient,[m,G]=i.useState({}),Me=e=>{e.event.preventDefault(),G({...m,show:!0,offset:{left:e.event.pageX,top:e.event.pageY},dataItem:e.dataItem,field:e.field})},fe=()=>{G({})},h=i.useMemo(()=>t.columnsRef.current.find(e=>e.field===m.field),[t.columnsRef,m]),me=i.useMemo(()=>{const e=t.gridProps.sortable&&(h==null?void 0:h.sortable);return k.getDefaultHeadContextMenuItems({sortable:!!e,selectable:l.getSelectionOptions(t.gridProps.selectable).enabled,clipboard:!!t.gridProps.clipboard})},[h,t.gridProps.sortable,t.gridProps.selectable,t.gridProps.clipboard]),Pe=i.useMemo(()=>{const e=t.gridProps.sortable&&(h==null?void 0:h.sortable);return k.getDefaultBodyContextMenuItems({sortable:!!e,selectable:l.getSelectionOptions(t.gridProps.selectable).enabled,clipboard:!!t.gridProps.clipboard})},[h,t.gridProps.sortable,t.gridProps.selectable,t.gridProps.clipboard]),Te=i.useMemo(()=>{const e=(h==null?void 0:h.contextMenu)||t.gridProps.contextMenu,r=typeof e=="function"?e(m):e;if(r&&m.offset){const n=m.dataItem?De.GridContextMenuAnchorPart.body:De.GridContextMenuAnchorPart.head,a=r[n];return a===!1?void 0:a===!0||a===void 0?m.dataItem?Pe:me:a}},[t.gridProps.contextMenu,m,Pe,me,h]),Ae=e=>{var d;const r=e.event.item,n={target:v.current,syntheticEvent:e.event.syntheticEvent,nativeEvent:e.event.nativeEvent,menuItem:r,...e};t.gridProps.onContextMenuItemClick&&u(t.gridProps.onContextMenuItemClick,n);const a=Z(),o={selectedField:t.gridProps.selectedField||"",componentId:t.id,dataItems:a,dataItem:e.dataItem,startRowIndex:-1,endRowIndex:-1,startColIndex:-1,endColIndex:-1,ctrlKey:!1,altKey:!1,metaKey:!1,shiftKey:!1,isDrag:!1,...l.getSelectionOptions(t.gridProps.selectable),...n};switch((d=r.data)==null?void 0:d.action){case"SortCommand":if(h){const s=r.name?r.name.toLowerCase().includes("asc")?"asc":r.name.toLowerCase().includes("desc")?"desc":void 0:void 0;be(e.event.syntheticEvent,h,s)}break;case"SelectRowCommand":Xe(o);break;case"SelectAllRowsCommand":$e(o);break;case"ClearSelectionCommand":Je(o);break}fe()},N=()=>{const e=g.current.filter(r=>r.declarationIndex>=0&&r.parentIndex===-1);return k.sanitizeColumns(e)},Ge=(e,r,n)=>{if(t.gridProps.onContextMenu&&R){const a={target:v.current,syntheticEvent:e,nativeEvent:e.nativeEvent,dataItem:r,field:n};u(t.gridProps.onContextMenu,a)}t.gridProps.contextMenu&&Me({event:e,dataItem:r,field:n})},He=e=>{if(e.target!==e.currentTarget)return;clearTimeout(le.current),c.current&&(c.current.table=S.current);const r=e.currentTarget.scrollLeft,n=e.currentTarget.scrollTop,a=t.gridProps.scrollable==="virtual";t.gridProps.columnVirtualization&&(!a||n===de.current)&&(le.current=window.setTimeout(()=>{te()},0)),t.gridProps.scrollLeftRef&&(t.gridProps.scrollLeftRef.current=r),O.current&&O.current.setScrollLeft(r),F.current&&F.current.setScrollLeft(r),c.current&&n!==de.current&&c.current.scrollHandler(e),t.gridProps.onScroll&&R&&u(t.gridProps.onScroll,{...I(e)}),de.current=n},Fe=e=>{var n,a,o,d;l.tableKeyboardNavigation.onKeyDown(e,{navigatable:t.gridProps.navigatable||!1,contextStateRef:w,navigationStateRef:M,onNavigationAction:ze,columns:N()}),l.tableKeyboardNavigation.onGetSnapshotBeforeUpdate({document:x(),contextStateRef:w,navigationStateRef:M});const r={dataItems:V(),mode:C.mode,cell:C.cell,componentId:t.id,selectedField:t.gridProps.selectedField,...I(e)};if(t.gridProps.onKeyDown&&R&&u(t.gridProps.onKeyDown,r),!t.gridProps.selectedField&&C.enabled&&t.gridProps.dataItemKey){const s=l.getSelectedStateFromKeyDown({event:r,selectedState:(n=t.gridProps.select)!=null?n:{},dataItemKey:t.gridProps.dataItemKey});if(s===t.gridProps.select)return;const P=e.target,E=l.closestTagName(P,"TD"),f=l.closestTagName(P,"TR"),D=l.getColumnIndex(E),z=l.getRowIndex(f);if(D!==void 0&&z!==void 0){const ge=Array.isArray(t.gridProps.data)?(a=t.gridProps.data)==null?void 0:a[z]:(d=(o=t.gridProps.data)==null?void 0:o.data)==null?void 0:d[z];t.gridProps.onSelectionChange&&u(t.gridProps.onSelectionChange,{...r,select:s,dataItem:ge,startRowIndex:z,startColIndex:D,startDataItem:ge,endDataItem:ge,endRowIndex:z,endColIndex:D,ctrlKey:e.ctrlKey,altKey:e.altKey,metaKey:e.metaKey,shiftKey:e.shiftKey,isDrag:!1})}}},Oe=e=>{l.tableKeyboardNavigation.onFocus(e,{navigatable:!!t.gridProps.navigatable,contextStateRef:w})},ze=e=>{if(e.action==="moveToNextPage"&&Qe(e.event),e.action==="moveToPrevPage"&&Ze(e.event),e.focusElement&&e.action==="reorderToRight"){const r=parseInt(e.focusElement.ariaColIndex,10)-1;r<g.current.length-1&&Y(r,r+1,e.event)}if(e.focusElement&&e.action==="reorderToLeft"){const r=parseInt(e.focusElement.ariaColIndex,10)-1;r>0&&Y(r,r-1,e.event)}if(t.gridProps.onNavigationAction&&R){const r={focusElement:e.focusElement,...I(e.event)};u(t.gridProps.onNavigationAction,r)}},Ne=(e,r)=>{t.gridProps.onRowClick&&e.target.nodeName==="TD"&&u(t.gridProps.onRowClick,{dataItem:r,...I(e)})},Le=(e,r)=>{t.gridProps.onRowDoubleClick&&e.target.nodeName==="TD"&&u(t.gridProps.onRowDoubleClick,{dataItem:r,...I(e)})},qe=(e,r,n)=>{if(ve.enabled&&ve.mode==="incell"&&t.gridProps.dataItemKey){const a=l.editReducer(t.gridProps.edit,{type:l.EDIT_ACTION.ENTER_FIELD_EDIT,payload:{id:r[t.gridProps.dataItemKey],field:n}});t.gridProps.onEditChange&&u(t.gridProps.onEditChange,{edit:a,...I(e)})}},Ue=(e,r)=>{var a;if(l.getDetailExpandableOptions(t.detailExpandable).enabled){const o=l.detailExpandReducer((a=t.gridProps.detailExpand)!=null?a:{},e);t.gridProps.onDetailExpandChange&&u(t.gridProps.onDetailExpandChange,{...I(r),detailExpand:o})}},Ve=(e,r)=>{var a;const n=l.getGroupExpandableOptions(typeof t.gridProps.groupable=="object"?t.gridProps.groupable.expandable!==!1:t.gridProps.groupable);if(n.enabled){const o=l.groupExpandReducer((a=t.gridProps.groupExpand)!=null?a:[],e,n);t.gridProps.onGroupExpandChange&&u(t.gridProps.onGroupExpandChange,{...I(r),groupExpand:o})}},be=(e,r,n)=>{const{allowUnsort:a,mode:o}=ke.normalize(t.gridProps.sortable||!1,r.sortable||!1),d=(t.gridProps.sort||[]).filter(E=>E.field===r.field)[0],s=n||ke.firstLevelSortSeqMap[a][d&&d.dir||""],P=o==="single"?[]:(t.gridProps.sort||[]).filter(E=>E.field!==r.field);s!==""&&r.field&&P.push({field:r.field,dir:s}),he(P,e)},We=e=>{var r;if(e.field===t.gridProps.expandField||e._expand||t.gridProps.group&&e.field===void 0){if(t.gridProps.onExpandChange){const n=t.gridProps.dataItemKey?l.detailExpandReducer((r=t.gridProps.detailExpand)!=null?r:{},{type:l.DETAIL_EXPAND_ACTION.SET,id:e.dataItem[t.gridProps.dataItemKey],payload:e.value}):t.gridProps.detailExpand;u(t.gridProps.onExpandChange,{...I(e.syntheticEvent),expand:n,dataItem:e.dataItem,dataIndex:e.dataIndex,value:e.value})}return}t.gridProps.onItemChange&&u(t.gridProps.onItemChange,{...I(e.syntheticEvent),dataItem:e.dataItem,dataIndex:e.dataIndex,field:e.field,value:e.value})},_e=e=>{var r;if(t.gridProps.onSelectionChange&&C.enabled){const{event:n,dataItem:a,dataIndex:o,columnIndex:d}=e,s={...I(n.syntheticEvent),dataItem:a,startColIndex:d,endColIndex:d,startRowIndex:o,endRowIndex:o,dataItems:V(),altKey:!1,ctrlKey:!1,shiftKey:!1,metaKey:!1,mode:C.mode,cell:C.cell,isDrag:!1,componentId:t.id,selectedField:t.gridProps.selectedField||""};u(t.gridProps.onSelectionChange,{...s,select:t.gridProps.dataItemKey?l.getSelectedState({event:s,selectedState:(r=t.gridProps.select)!=null?r:{},dataItemKey:t.gridProps.dataItemKey}):{}})}},Be=e=>{var r;if(t.gridProps.onHeaderSelectionChange&&C.enabled){const n=V();u(t.gridProps.onHeaderSelectionChange,{select:e.syntheticEvent.target.checked?n.reduce((a,o)=>(t.gridProps.dataItemKey&&b.getter(t.gridProps.dataItemKey)(o)!==void 0&&(a[b.getter(t.gridProps.dataItemKey)(o)]=!0),a),{}):{},field:e.field,nativeEvent:e.syntheticEvent&&e.syntheticEvent.nativeEvent,syntheticEvent:e.syntheticEvent,target:v.current,dataItems:n,selectedField:(r=t.gridProps.selectedField)!=null?r:""})}},L=(e,r)=>{t.gridProps.onSelectionChange&&R&&C.enabled&&u(t.gridProps.onSelectionChange,{...e,select:r})},je=e=>{var r;if(t.gridProps.onSelectionChange&&C.enabled){const n=Z()[e.startRowIndex],a=Z()[e.endRowIndex],o={syntheticEvent:void 0,target:v.current,selectedField:t.gridProps.selectedField||"",componentId:t.id,dataItems:V(),dataItem:null,startDataItem:n,endDataItem:a,...e},d=l.getSelectedState({event:o,selectedState:(r=t.gridProps.select)!=null?r:{},dataItemKey:t.gridProps.dataItemKey});L(o,d)}},$e=e=>{if(t.gridProps.onSelectionChange&&C.enabled){const r=e.dataItems[0],n=e.dataItems[e.dataItems.length-1],a={},o={...e,startDataItem:r,endDataItem:n,startRowIndex:0,endRowIndex:e.dataItems.length-1,startColIndex:0,endColIndex:g.current.length-1};e.dataItems.forEach(d=>{const P=b.getter(t.gridProps.dataItemKey)(d);a[P]=e.cell?[...Array(g.current.length).keys()]:!0}),L(o,a)}},Xe=e=>{if(t.gridProps.onSelectionChange&&C.enabled){const n=b.getter(t.gridProps.dataItemKey)(e.dataItem),a=0,o=g.current.length-1,d=e.dataItems.findIndex(D=>D[t.gridProps.dataItemKey]===e.dataItem[t.gridProps.dataItemKey]),E={...e,startDataItem:d,endDataItem:d,startRowIndex:d,endRowIndex:d,startColIndex:a,endColIndex:o},f=e.mode==="multiple"?t.gridProps.select||{}:{};f[n]===!0||Array.isArray(f[n])&&f[n].length===g.current.length?delete f[n]:f[n]=e.cell?[...Array(g.current.length).keys()]:!0,L(E,f)}},Je=e=>{t.gridProps.onSelectionChange&&C.enabled&&L(e,{})},q=(e,r,n,a,o)=>{const d=t.gridProps.onDataStateChange;if(e){const s={...I(a),...r,targetEvent:o};u(e,s)}else d&&u(d,{...I(a),targetEvent:o||{},dataState:{...ct(),...n}})},U=(e,r,n)=>{q(t.gridProps.onPageChange,{page:e},{skip:e.skip,take:e.take},r,n)},Ye=()=>{let e=t.gridProps.total||0;return Array.isArray(t.gridProps.data)?e=e||t.gridProps.data.length:t.gridProps.data&&(e=e||t.gridProps.data.total),e},Qe=e=>{var o,d;const r=(d=(o=t.gridProps.take)!=null?o:t.gridProps.pageSize)!=null?d:0,n=(t.gridProps.skip||0)+r,a=Ye();n<a&&U({skip:n,take:r},e)},Ze=e=>{var a,o;const r=(o=(a=t.gridProps.take)!=null?a:t.gridProps.pageSize)!=null?o:0,n=(t.gridProps.skip||0)-r;n>=0&&U({skip:n,take:r},e)},pe=e=>{U({skip:e.skip,take:e.take},e.syntheticEvent,e.targetEvent)},he=(e,r)=>{q(t.gridProps.onSortChange,{sort:e},{sort:e,...t.gridProps.scrollable==="virtual"?{skip:0}:{}},r)},et=(e,r)=>{q(t.gridProps.onFilterChange,{filter:e},{filter:e||void 0,skip:0},r)},J=(e,r)=>{const n=r.nativeEvent?r:{nativeEvent:r.nativeEvent||r.originalEvent};e.length===0&&t.gridProps.navigatable&&(oe.current=!0),q(t.gridProps.onGroupChange,{group:e},{group:e,skip:0},n)},Y=(e,r,n)=>{const a=g.current[e],o=a.depth,d=f=>{do f++;while(f<g.current.length&&g.current[f].depth>o);return f},s=g.current.splice(e,d(e)-e);g.current.splice(e<r?d(r-s.length):r,0,...s),g.current.filter(f=>f.declarationIndex>=0).forEach((f,D)=>f.orderIndex=D);const P=g.current[e].locked&&g.current[r].locked;l.updateLeft(t.columnsMapRef,g.current,P||$.current),l.updateRight(t.columnsMapRef,g.current,P||$.current),ae.current&&($.current=!1,ae.current=!1);const E=N();if(te(),t.gridProps.onColumnReorder){const f={target:v.current,columns:E,columnId:a.id,nativeEvent:n};u(t.gridProps.onColumnReorder,f)}},tt=(e,r,n)=>{const a=typeof t.gridProps.rowReorderable=="object"?t.gridProps.rowReorderable.enabled:t.gridProps.rowReorderable;if(n==="forbidden"||!a||!X.current)return;const{slicedData:o,dataRef:d}=t,s=(o||d)[r];t.gridProps.onRowReorder&&u(t.gridProps.onRowReorder,{draggedDataItems:[X.current],droppedDataItem:s==null?void 0:s.dataItem,dropPosition:n,nativeEvent:e.originalEvent,dragEvent:e,target:v.current}),X.current=null},rt=(e,r,n)=>{if(t.gridProps.group===void 0)return;const a=t.gridProps.group.slice();a.splice(r,0,...a.splice(e,1)),J(a,n)},Ie=(e,r,n)=>{const a=g.current[e].field;if(!a)return;const o=(t.gridProps.group||[]).slice();o.splice(r,0,{field:a}),J(o,n)},nt=(e,r)=>{const n=K.current.getCurrentGroupsLength;Ie(e,n,r)},Q=()=>{let e=0;if(!y.current.colGroupMain)return;const r=y.current.colGroupMain.children;for(let n=0;n<r.length;n++){const a=r[n].width;if(!a)return;e+=parseFloat(a.toString())}e=Math.round(e),O.current&&O.current.setWidth(e),F.current&&F.current.setWidth(e),S.current&&(S.current.style.width=e+"px")},at=(e,r)=>{if(t.gridProps.onClipboard&&R){if(!ot()||!e)return;u(t.gridProps.onClipboard,{type:e,nativeEvent:r,columns:g.current,dataItemKey:t.gridProps.dataItemKey||"",...typeof t.gridProps.clipboard!="boolean"?t.gridProps.clipboard:{}})}},ot=()=>{var o,d,s;if(!b.canUseDOM)return!1;const e=b.getActiveElement(x()),r=e?e.matches(".k-table-td")?e:(o=x())==null?void 0:o.body:(d=x())==null?void 0:d.body,n=r.closest(".k-grid-container"),a=r&&((s=A.current)==null?void 0:s.contains(r));return!!(r&&a&&n)},it=(e,r,n,a,o,d)=>{Q(),$.current=!0,ae.current=!0,t.gridProps.onColumnResize&&R&&u(t.gridProps.onColumnResize,{columns:N(),nativeEvent:a,targetColumnId:d,index:e,newWidth:r,oldWidth:n,end:o,target:v.current})},ct=()=>{var e;return{filter:t.gridProps.filter,sort:t.gridProps.sort,skip:t.gridProps.skip,take:(e=t.gridProps.take)!=null?e:t.gridProps.pageSize,group:t.gridProps.group}},I=e=>({nativeEvent:e&&e.nativeEvent,syntheticEvent:e,target:v.current}),dt=e=>({...e,nativeEvent:void 0,syntheticEvent:void 0,target:void 0,targetEvent:void 0,focusElement:void 0}),u=(e,r)=>{if(e.name==="proxy"){e.call(void 0,dt(r));return}e.call(void 0,r)},lt=()=>{var e,r,n;if(H.current&&((e=H.current)==null?void 0:e.getElementsByClassName("k-grid-edit-row").length)>0){ce.current=!1,(r=document.activeElement)!=null&&r.closest(".k-grid-edit-row")?ie.current=document.activeElement:ie.current=void 0;const a=Array.from((n=H.current)==null?void 0:n.getElementsByClassName("k-grid-edit-row"));a.length>ue.current.length?j.current=a.filter(o=>!ue.current.includes(o))[0]:a.length===1&&(j.current=a[0],ce.current=!0),ue.current=a}},V=()=>t.dataRef.filter(e=>e.rowType==="data").map(e=>e.dataItem),Z=()=>(t.slicedData||t.dataRef).filter(e=>e.rowType==="data").map(e=>e.dataItem),p=()=>(ne.current||(ne.current=b.getScrollbarWidth()||void 0),ne.current),x=()=>{var e;if(b.canUseDOM)return((e=W())==null?void 0:e.ownerDocument)||document},W=()=>A.current,ee=i.useCallback(e=>{var a;if(!c.current||!((a=c.current)!=null&&a.container)||t.gridProps.scrollable==="none")return;T.current&&T.current.disconnect();const{rowIndex:r}=e,n=W();if(t.gridProps.scrollable==="virtual")c.current.askedSkip=r,c.current.container.scroll(0,Math.round(c.current.askedSkip/c.current.total*c.current.container.scrollHeight));else if(n){const o=r<1?n.querySelector("tbody > tr:nth-child(1)"):n.querySelector(`tbody > tr:nth-child(${r+1})`);o&&B.current&&(B.current.scrollTop=o.offsetTop)}},[t.gridProps.scrollable]),Re=e=>JSON.stringify(e.map(r=>({id:r.id,field:r.field,title:r.title,children:r.children}))),st=()=>Re(It)===Re(g.current),ut=()=>{st()||te()},gt=()=>{const{data:e,total:r}=t.gridProps;return Array.isArray(e)?e.length===r:e?r===e.total:!1},ft=(e,r)=>{var n,a;if(c.current){if(c.current.fixedScroll=t.gridProps.fixedScroll||!1,c.current.PageChange=U,c.current.realSkip=t.gridProps.skip||0,c.current.pageSize=(a=(n=t.gridProps.take)!=null?n:t.gridProps.pageSize)!=null?a:0,c.current.scrollableVirtual=t.gridProps.scrollable==="virtual",c.current.total=e,c.current.propsSkip=(t.gridProps.skip||0)+(t.gridProps.scrollable==="virtual"?c.current.topCacheCount+(c.current.attendedSkip-(t.gridProps.skip||0)):0),t.gridProps.rowHeight!==void 0&&t.gridProps.rowHeight>0&&!r){const o=t.gridProps.rowHeight*e;c.current.containerHeight=k.firefox?Math.min(k.firefoxMaxHeight,o):o}else c.current.containerHeight=1533915;if(c.current.containerRef=B,c.current.tableBodyRef=H,c.current.table=S.current,c.current instanceof Se.VirtualScrollFixed){const{rowHeight:o=0,detail:d,expandField:s}=t.gridProps;let{detailRowHeight:P=0}=t.gridProps;P=d&&s?P:o,gt()?(c.current.total=t.dataRef.length,c.current.rowHeightService=new b.RowHeightService(t.dataRef.length,o,P,t.dataRef)):c.current.rowHeightService=new b.RowHeightService(e,o,P);const E=c.current.rowHeightService.totalHeight();c.current.containerHeight=k.firefox?Math.min(k.firefoxMaxHeight,E):E}}},Ce=i.useCallback(e=>{const r={rowIndex:se.current};e.forEach(n=>{n.isIntersecting||ee(r)})},[ee]),te=()=>{t.gridProps.forceUpdate&&t.gridProps.forceUpdate()},mt=e=>e.left!==void 0?Ee!=="rtl"?{left:e.left,right:e.right}:{left:e.right,right:e.left}:{},v=i.useRef(null),g=t.columnsRef,c=i.useRef(),y=i.useRef(),K=i.useRef(),w=i.useRef(),M=i.useRef(),_=i.useRef(),T=i.useRef(null),H=i.useRef(null),Pt=i.useRef(null),B=i.useRef(null),S=i.useRef(null),re=i.useRef(null),A=i.useRef(null),F=i.useRef(null),O=i.useRef(null),ne=i.useRef(),ae=i.useRef(!1),oe=i.useRef(!1),j=i.useRef(),ie=i.useRef(),ce=i.useRef(!1),$=i.useRef(!0),de=i.useRef(0),le=i.useRef(),se=i.useRef(),ue=i.useRef([]),X=i.useRef(null),bt=i.useRef(null),ht=i.useRef(null),Ee=b.useDir(A),It=i.useMemo(()=>i.Children.toArray(t.gridProps.children),[t.gridProps.children]),C=l.getSelectionOptions((ye=t.gridProps.selectable)!=null?ye:!!t.gridProps.selectedField),ve=l.getEditableOptions((we=t.gridProps.editable)!=null?we:!!t.gridProps.editField);i.useMemo(()=>{l.tableKeyboardNavigation.onConstructor({navigatable:!!t.gridProps.navigatable,contextStateRef:w,navigationStateRef:M,idPrefix:t.id})},[]),i.useMemo(()=>{var n;(n=c.current)==null||n.reset();const e=t.gridProps.groupable===!0||typeof t.gridProps.groupable=="object"&&t.gridProps.groupable.enabled!==!1,r=t.isFixedVirtualScroll?Se.VirtualScrollFixed:xt.VirtualScroll;c.current=new r(e||t.gridProps.rowHeight===void 0||t.gridProps.rowHeight===0)},[t.gridProps.scrollable,t.gridProps.total,t.gridProps.filter,t.gridProps.group,t.gridProps.groupable,t.gridProps.sort,t.gridProps.rowHeight]),i.useEffect(()=>(t.gridProps.clipboard&&(_.current=new l.ClipboardService(at),_.current.addEventListeners(x())),()=>{_.current&&_.current.removeEventListeners(x())}),[t.gridProps.onClipboard,t.gridProps.clipboard]),i.useEffect(()=>(t.gridProps.columnVirtualization&&!window.navigator.userAgent.match(vt.SAFARI_REGEX)&&(re.current&&(re.current.style.display="block"),S.current&&(S.current.style.display="block")),Q(),b.setScrollbarWidth(p()),l.tableKeyboardNavigation.onComponentDidMount({scope:A.current||void 0,contextStateRef:w,navigationStateRef:M}),()=>{clearTimeout(le.current)}),[]),i.useEffect(()=>{var e;Q(),b.setScrollbarWidth(p()),(e=c.current)!=null&&e.tableTransform&&c.current.table&&(c.current.table.style.transform=c.current.tableTransform,c.current.tableTransform=""),lt(),l.tableKeyboardNavigation.onComponentDidUpdate({scope:A.current||void 0,contextStateRef:w,navigationStateRef:M,focusFirst:oe.current,newEditableRow:j.current,singleEditRow:ce.current,lastActiveElement:ie.current,navigatable:t.gridProps.navigatable}),oe.current=!1,j.current=void 0}),i.useEffect(()=>{if(b.canUseDOM){const e={rootMargin:"0px",threshold:.9};T.current=window.IntersectionObserver&&new window.IntersectionObserver(Ce,e)||null}},[Ce]),i.useEffect(()=>{var r;let e;return b.canUseDOM&&window.ResizeObserver&&(e=new window.ResizeObserver(ut),e.observe((r=x())==null?void 0:r.body)),()=>{e==null||e.disconnect()}},[]),i.useImperativeHandle(v,()=>({get element(){return W()},props:t.gridProps,get columns(){return N()},scrollIntoView:e=>{var a;if(!((a=c.current)!=null&&a.container)||t.gridProps.scrollable==="none")return;const{rowIndex:r}=e;se.current=r;const n=W();if(T.current&&n){T.current.disconnect();const o=n.querySelector(`[absolute-row-index="${se.current}"]`);o?T.current.observe(o):ee(e)}},fitColumns:e=>{y.current.dblClickHandler(null,e)}})),i.useImperativeHandle(t.gridRef,()=>v.current),i.useMemo(()=>{y.current=new Ct.ColumnResize(it)},[t.gridProps.onColumnResize]),i.useMemo(()=>{K.current=new Et.CommonDragLogic(Y,rt,Ie)},[t.gridProps.onColumnReorder,t.gridProps.onGroupChange,t.gridProps.group,t.gridProps.groupable]),y.current.resizable=t.gridProps.resizable||!1,y.current.columns=g.current;const xe=t.gridProps.groupable===!0||typeof t.gridProps.groupable=="object"&&t.gridProps.groupable.enabled!==!1;return K.current.reorderable=t.gridProps.reorderable||!1,K.current.groupable=xe,K.current.columns=g.current,ft(t.total,xe),i.createElement(Ke.Provider,{value:{isClient:R,rowReorder:tt,activeDragRowDataItemRef:X,reorderRowDragTargetRef:bt,reorderRowDropTargetRef:ht,dir:Ee,getCellPositionStyle:mt,dataItemKey:t.gridProps.dataItemKey,groupChange:J,selectionRelease:je,pagerPageChange:pe,onContextMenu:Ge,rowClick:Ne,rowDblClick:Le,cellClick:qe,headerCellClick:be,itemChange:We,sortChange:he,filterChange:et,onHeaderSelectionChange:Be,columnGroupChange:nt,onKeyDown:Fe,onFocus:Oe,scrollHandler:He,selectionChange:_e,dispatchDetailExpand:Ue,dispatchGroupExpand:Ve,columnResizeRef:y,dragLogicRef:K,navigationStateRef:M,tableElementRef:S,tableBodyElementRef:H,headerElementRef:Pt,containerElementRef:B,headTableElementRef:re,elementRef:A,footerRef:F,headerRef:O,getCachedScrollbarWidth:p,vsRef:c}},i.createElement(l.TableKeyboardNavigationContext.Provider,{value:w.current},t.children),i.createElement(yt.GridContextMenu,{show:m.show,dataItem:m.dataItem,field:m.field,items:Te,offset:m.offset,onClose:fe,onSelect:Ae}))};exports.GridClientWrapper=St;exports.GridContext=Ke;
|
package/GridColumn.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
|
|
8
|
+
"use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const e=require("prop-types"),r=o=>null;r.displayName="KendoReactGridColumn";const l={filterable:!0,editable:!0,sortable:!0,resizable:!0,reorderable:!0,groupable:!0};r.propTypes={field:e.string,title:e.string,editable:e.bool,sortable:e.oneOfType([e.bool,e.shape({allowUnsort:e.bool.isRequired})]),cell:e.any,filterCell:e.any,filterTitle:e.string,filterable:e.bool,filter:e.oneOf(["text","numeric","boolean","date"]),editor:e.oneOf(["text","numeric","boolean","date"]),width:e.oneOfType([e.string,e.number]),minResizableWidth:e.number,headerCell:e.any,footerCell:e.any,headerSelectionValue:e.bool,format:e.string,headerClassName:e.string,className:e.string,reorderable:e.bool,resizable:e.bool,orderIndex:e.number,groupable:e.bool,columnMenu:e.any,menuIcon:e.any,locked:e.bool,hidden:e.bool,media:e.string};exports.GridColumn=r;exports.gridDefaultProps=l;
|
package/GridColumn.mjs
CHANGED
|
@@ -5,10 +5,9 @@
|
|
|
5
5
|
* Licensed under commercial license. See LICENSE.md in the package root for more information
|
|
6
6
|
*-------------------------------------------------------------------------------------------
|
|
7
7
|
*/
|
|
8
|
-
"use client";
|
|
9
8
|
import e from "prop-types";
|
|
10
|
-
const
|
|
11
|
-
|
|
9
|
+
const o = (l) => null;
|
|
10
|
+
o.displayName = "KendoReactGridColumn";
|
|
12
11
|
const t = {
|
|
13
12
|
filterable: !0,
|
|
14
13
|
editable: !0,
|
|
@@ -17,7 +16,7 @@ const t = {
|
|
|
17
16
|
reorderable: !0,
|
|
18
17
|
groupable: !0
|
|
19
18
|
};
|
|
20
|
-
|
|
19
|
+
o.propTypes = {
|
|
21
20
|
field: e.string,
|
|
22
21
|
title: e.string,
|
|
23
22
|
editable: e.bool,
|
|
@@ -52,6 +51,6 @@ l.propTypes = {
|
|
|
52
51
|
media: e.string
|
|
53
52
|
};
|
|
54
53
|
export {
|
|
55
|
-
|
|
54
|
+
o as GridColumn,
|
|
56
55
|
t as gridDefaultProps
|
|
57
56
|
};
|
package/GridComponent.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 at=require("react"),d=require("@progress/kendo-react-common"),rt=require("@progress/kendo-data-query"),w=require("@progress/kendo-react-data-tools"),nt=require("./cells/GridSelectionCell.js"),it=require("./cells/GridHierarchyCell.js"),ot=require("./cells/GridEditCell.js"),dt=require("./header/Header.js"),ct=require("./header/HeaderRow.js"),st=require("./header/FilterRow.js"),ut=require("./header/GroupPanel.js"),gt=require("./footer/Footer.js"),u=require("./utils/index.js"),mt=require("./cells/GridCell.js"),Ne=require("./cells/GridGroupCell.js"),ft=require("./rows/GridRow.js"),bt=require("./header/GridHeaderSelectionCell.js"),ke=require("./components/noRecords/GridNoRecords.js"),qe=require("./filterCommon.js"),Ct=require("./footer/FooterRow.js"),yt=require("./paging/GridPagerSettings.js"),ht=require("./package-metadata.js"),Gt=require("./cells/GridDetailCell.js"),wt=require("./cells/GridDetailHierarchyCell.js"),De=require("./components/noRecords/GridNoRecordsContainer.js"),Rt=require("./GridWatermarkOverlay.js"),Fe=require("./GridClientWrapper.js"),Et=require("./components/colGroup/GridColGroup.js"),It=require("./components/table/GridTable.js"),Te=require("./components/GridDropClue.js"),He=require("./components/GridDragClue.js"),Pe=require("./components/table/GridTableBody.js"),St=require("./components/PagerContainer.js"),xt=require("./components/table/GridTableScrollable.js"),Ke=require("./components/GridElementContainer.js"),vt=require("./components/GridContainerElementContainer.js"),Nt=require("./components/VirtualScrollHeightContainer.js"),kt=require("@progress/kendo-react-intl"),ee=require("./messages/index.js"),j=require("./VirtualScrollFixed.js"),qt=require("./VirtualScroll.js"),Dt=require("./components/GridCustomCellClientContainer.js"),Ft=require("./components/GridDraggableRowsContainer.js"),Tt=require("./cells/GridRowReorderCell.js"),Ht=require("./header/client/GridHeaderRowReorderCell.js");function Pt(e){const v=Object.create(null,{[Symbol.toStringTag]:{value:"Module"}});if(e){for(const C in e)if(C!=="default"){const R=Object.getOwnPropertyDescriptor(e,C);Object.defineProperty(v,C,R.get?R:{enumerable:!0,get:()=>e[C]})}}return v.default=e,Object.freeze(v)}const l=Pt(at),Ve=l.forwardRef((e,v)=>{var Ge,we,Re,Ee,Ie,Se,xe;const C=e.id+"-role-element-id",R=e.navigatable?C:"";d.validatePackage(ht.packageMetadata);const Ae=(t,r,o,c,i,a,s)=>{const f=[],b=u.flatData(f,E,t,{index:r},o!==void 0,c,i,a,$e.defaultExpand,s);return{flattedData:f,resolvedGroupsCount:b}},Be=t=>{const r=t.filter(i=>i&&i.type&&i.type.displayName==="KendoReactGridColumn"),o=m.current.filter(i=>i.declarationIndex>=0&&i.parentIndex===-1),c=u.sanitizeColumns(o);return u.readColumns(r,c,{prevId:0,idPrefix:R})},Oe=t=>t.filter(r=>d.canUseDOM&&r&&r.media?window.matchMedia(r.media).matches:r),_e=(t,r)=>{var i;const o=Be(t),c=Oe(o);m.current=c,m.current.length===0&&(m.current=u.autoGenerateColumns(E,e.group,{column:(i=H.column)!=null?i:e.expandField},{prevId:0,idPrefix:R})),ze(m.current,r),N=u.mapColumns(m.current,!0),le.current=m.current.map(u.clientColumn)},ze=(t,r)=>{var i;t.filter(a=>e.selectedField&&a.field===e.selectedField||a.columnType==="checkbox").forEach(a=>{a.width=a.width||"50px",a.cell=a.cell||nt.GridSelectionCell,a._type="edit",a.headerCell=a.headerCell||bt.GridHeaderSelectionCell}),q!==void 0&&t.filter(a=>a.columnType==="reorder").forEach(a=>{a.width=a.width||"50px",a.cell=a.cell||Tt.GridRowReorderCell,a.headerCell=a.headerCell||Ht.GridHeaderRowReorderCell,a.sortable=!1,a.filterable=!1,a.editable=!1});const o={id:"",resizable:!0,width:"32px",title:" ",declarationIndex:-1,orderIndex:-1,children:[],parentIndex:-1,depth:0,colSpan:0,headerColSpan:0,rowSpan:0,left:0,right:0,index:0,rightBorder:!1,ariaColumnIndex:0,isAccessible:!0};let c=0;(e.expandField||H.enabled)&&e.detail&&(t.unshift({...o,_type:"expand",cell:it.GridHierarchyCell,field:(i=H.column)!=null?i:e.expandField,headerClassName:d.classNames(g.hierarchyCell({}))}),c++);for(let a=0;a<r;a++)t.unshift({...o,isAccessible:!1,cell:Ne.GridGroupCell,field:"value",locked:e.lockGroups}),c++;t.slice(c).forEach(a=>a.parentIndex>=0&&(a.parentIndex+=c))},te=()=>E.length===e.total,Me=()=>{const{rowHeight:t,detailRowHeight:r,detail:o,expandField:c}=e,i=te(),a=t!==void 0&&t>0,s=r!==void 0&&r>0;return!a||T&&!i||!!(o&&c)&&(!s||!i)?qt.VirtualScroll:j.VirtualScrollFixed},$=()=>e.isClient?m:le,Le=(t,r,o,c,i,a)=>{let s=u.getColSpan(t,r);if(e.columnVirtualization&&t.colSpan===1)return{colSpan:a,colsToSkip:i};let f=o.length-1===c,b=o.length-c;return e.columnVirtualization&&(f=h.length-1===c,b=h.length-c),s>1&&!f?i=s-1:s=1,b<=s&&!f&&(s=b),{colSpan:s,colsToSkip:i}};let U,y=[],O;const m=e.columnsRef||{current:[]},le={current:[]};let N=[[]];const We=e.scrollLeftRef||{current:0},Q=e.localization||new kt.LocalizationService,k=e.unstyled,g=k&&k.uGrid?k.uGrid:d.uGrid,q=typeof e.rowReorderable=="object"?e.rowReorderable.enabled:e.rowReorderable,F=e.autoProcessData===!0?{group:!0,sort:!0,filter:!0,page:!0}:e.autoProcessData;let E,x;if(Array.isArray(e.data)?(E=e.data,x=(Ge=e.total)!=null?Ge:E.length):(E=((we=e.data)==null?void 0:we.data)||[],x=(Ie=(Ee=e.total)!=null?Ee:(Re=e.data)==null?void 0:Re.total)!=null?Ie:E.length),F){const{data:t,total:r}=rt.process(E,{group:F.group?e.group:void 0,sort:F.sort?e.sort:void 0,filter:F.filter?e.filter:void 0,...F.page?{take:e.take,skip:e.skip}:{}});E=t,x=(Se=e.total)!=null?Se:r}const{size:I="medium"}=e,je=typeof e.groupable=="object"&&e.groupable.footer||"none",D=e.scrollable==="virtual",T=e.groupable===!0||typeof e.groupable=="object"&&e.groupable.enabled!==!1,H=w.getDetailExpandableOptions(!!e.detail),$e=w.getGroupExpandableOptions(typeof e.groupable=="object"&&e.groupable.enabled!==!1?e.groupable.expandable:e.groupable),{resolvedGroupsCount:Ue,flattedData:Qe}=Ae(je,e.skip||0,e.group,e.expandField,e.detailExpand,e.groupExpand,e.dataItemKey);y=Qe;const J=Me();J===j.VirtualScrollFixed&&te()&&(O=y.slice(e.skip||0,(e.skip||0)+((e.take!==void 0?e.take:e.pageSize)||0)));const ae=w.getSelectionOptions(e.selectable||!!e.selectedField),Je=ae&&ae.drag?"none":void 0,_=l.Children.toArray(e.children);_e(_,Ue);const re=_.map(t=>t&&t.type&&t.type.displayName==="KendoReactGridToolbar"?l.cloneElement(t,{...t.props,ariaControls:C}):null),z=_.filter(t=>t&&t.type&&t.type.displayName==="KendoReactGridNoRecords"),ne=_.filter(t=>t&&t.type&&t.type.displayName==="KendoReactGridStatusBar"),h=m.current.filter(t=>t.children.length===0),ie=T&&l.createElement(ut.GroupPanel,{columns:$().current,group:e.group||[],ariaControls:C}),oe=l.createElement(dt.Header,{size:I,staticHeaders:e.scrollable!=="none",draggable:e.reorderable||T,headerRow:l.createElement(ct.HeaderRow,{cells:e.cells,sort:e.sort,sortable:e.sortable,group:e.group||[],groupable:T,filter:e.filter,filterable:e.filterable,filterOperators:e.filterOperators||qe.operators,columnMenu:e.columnMenu,columnMenuIcon:e.columnMenuIcon,columns:m.current,columnsMap:N,cellRender:e.headerCellRender,navigatable:!!e.navigatable,localization:Q,unstyled:k,headerSelectionValue:!!(e.select&&y.filter(t=>t.rowType==="data").every(t=>e.select&&e.dataItemKey&&d.getter(e.dataItemKey)(t.dataItem)!==void 0?e.select[d.getter(e.dataItemKey)(t.dataItem)]:void 0))}),filterRow:e.filterable&&l.createElement(st.FilterRow,{cells:e.cells,size:I,columns:m.current,filter:e.filter,filterOperators:e.filterOperators||qe.operators,sort:e.sort,cellRender:e.filterCellRender,navigatable:!!e.navigatable,ariaRowIndex:N.length+1,localization:Q})||void 0,cols:h.map((t,r)=>l.createElement("col",{key:r.toString(),width:u.getColumnWidth(t)}))}),Xe=We.current||0,Ye=parseFloat(((e.style||{}).width||"").toString()),Ze=(t,r,o,c)=>{let i=!1;const a=e.selectedField?u.getNestedValue(e.selectedField,t.dataItem):e.select&&e.dataItemKey&&d.getter(e.dataItemKey)(t.dataItem)!==void 0?e.select[d.getter(e.dataItemKey)(t.dataItem)]:void 0;let s=0;const{colSpans:f,hiddenColumns:b}=w.tableColumnsVirtualization({enabled:e.columnVirtualization,columns:h,tableViewPortWidth:Ye,scrollLeft:Xe,getColSpan:u.getColSpan,dataItem:t.dataItem}),S=h.filter((n,G)=>!b[G]);return{row:h.map((n,G)=>{if(b[G])return null;if(s>0)return s--,null;const{colSpan:K,colsToSkip:V}=Le(n,t.dataItem,S,G,s,f[G]);s=V;const L=n.id?n.id:G,W=d.classNames(g.contentSticky({locked:n.locked}),n.className),tt=n.left!==void 0?{left:n.left,right:n.right}:{};let ve=!1;if(n.editable&&(e.editable||e.editField)){const B=e.editField?u.getNestedValue(e.editField,t.dataItem):e.edit&&e.dataItemKey?e.edit[d.getter(e.dataItemKey)(t.dataItem)]:void 0,p=typeof B=="boolean"?B:Array.isArray(B)?B.indexOf(n.field)>-1:n.field!==void 0&&B===n.field;p&&n.columnType==="data"&&(p===!0||p===n.field)&&(i=!0,ve=!0)}const Z=n.cell||ve&&ot.GridEditCell||mt.GridCell,lt=e.expandField&&e.detail&&n.field===e.expandField||n._type==="expand",A={locked:e.lockGroups,id:w.tableKeyboardNavigationTools.generateNavigatableId(`${r}-${String(G)}`,R,lt||t.rowType==="groupHeader"||t.rowType==="groupFooter"||n.field==="value"?"nodata":"cell"),colSpan:K,dataItem:t.dataItem,field:n.field,editor:n.editor,format:n.format,columnType:n.columnType,rowReorderable:q,className:W,render:e.cellRender,cells:u.resolveCells(e.cells,n.cells),columnIndex:G,columnsCount:h.length,rowType:t.rowType,level:t.level,expanded:t.expanded,dataIndex:t.dataIndex,rowDataIndex:o,columnPosition:tt,style:{},ariaColumnIndex:n.ariaColumnIndex,isSelected:(n==null?void 0:n._type)==="edit"?a:Array.isArray(a)&&a.indexOf(G)>-1,isSorted:!!u.isSorted(n.field,e.sort),isInEdit:i,isAlt:c,unstyled:k,group:t.group};return n.cell?l.createElement(Dt.GridCustomCellClientContainer,{key:L,isClient:u.isClientReference(Z),dataItem:A.dataItem,rowDataIndex:A.rowDataIndex,columnIndex:A.columnIndex},l.createElement(Z,{...A})):l.createElement(Z,{key:L,...A})}),isInEdit:i,isSelected:typeof a=="boolean"&&a}};let de=0;if(D&&U)for(let t=0;t<U.topCacheCount+U.attendedSkip-(e.skip||0);t++){const r=y.shift();if(r)y.push(r),de++,r.rowType==="groupHeader"&&t--;else break}const ce=t=>t>=y.length-de;let se=e.skip||0;const X=[],ue=!y.length,ge=N.length+(e.filterable?1:0)+1;let P=0;if(y.length){let t=-1,r=0;(O||y).forEach((o,c)=>{o.rowType==="data"&&(se++,t++);const i=se%2===0,a=e.dataItemKey&&d.getter(e.dataItemKey)(o.dataItem),s=c+(e.skip||0),f=a||"ai"+s,b=f+"_1",S=Ze(o,f,t,i);if(P=s+ge+r,X.push(l.createElement(ft.GridRow,{key:f,dataItem:o.dataItem,isAltRow:i,isInEdit:S.isInEdit,rowType:o.rowType,isRowReorderable:q,isHidden:ce(c),onClick:null,onDoubleClick:null,selectedField:e.selectedField,rowHeight:e.rowHeight,render:e.rowRender,ariaRowIndex:P,absoluteRowIndex:s,dataIndex:D&&!e.groupable?s:t,isSelected:S.isSelected},S.row)),e.detail&&o.rowType==="data"&&o.expanded){const n=h.length-(e.expandField||H.enabled?1:0)-(e.group?e.group.length:0)||1;r++,P=s+ge+r,X.push(l.createElement("tr",{key:b,className:d.classNames(g.detailTr({isAlt:i})),style:{visibility:ce(c)?"hidden":"",height:e.detailRowHeight},role:"row","aria-rowindex":P},e.group&&e.group.map((G,K)=>{var W;const V=(W=S==null?void 0:S.row[K])==null?void 0:W.props.style,L=V?{left:V.left,right:V.right}:{};return l.createElement(Ne.GridGroupCell,{id:"",dataIndex:o.dataIndex,field:G.field,dataItem:o.dataItem,key:K,columnPosition:L,style:{},ariaColumnIndex:1+K,isSelected:!1,locked:e.lockGroups,cells:e.cells,group:o.group})}),(e.expandField||H.enabled)&&l.createElement(wt.GridDetailHierarchyCell,{unstyled:k,id:w.tableKeyboardNavigationTools.generateNavigatableId(`${b}-dhcell`,R)}),l.createElement(Gt.GridDetailCell,{dataItem:o.dataItem,dataIndex:o.dataIndex,colSpan:n,ariaColIndex:2+(e.group?e.group.length:0),detail:e.detail,id:w.tableKeyboardNavigationTools.generateNavigatableId(`${b}-dcell`,R)})))}})}const me={size:I,total:x,skip:e.skip||0,take:(e.take!==void 0?e.take:e.pageSize)||10,...yt.normalize(e.pageable||{})},fe=l.createElement(St.PagerContainer,null,e.pager?l.createElement(e.pager,{...me}):l.createElement(w.Pager,{className:d.classNames(g.pager({})),...me})),pe=(t,r)=>l.createElement("col",{key:r.toString(),width:u.getColumnWidth(t)}),et=(xe=e.cells)!=null&&xe.footerCell||m.current.some(t=>{var r;return!!(t.footerCell||(r=t.cells)!=null&&r.footerCell)})?l.createElement(gt.Footer,{size:I,staticHeaders:e.scrollable!=="none",row:l.createElement(Ct.FooterRow,{cells:e.cells,idPrefix:R,columns:m.current,ariaRowIndex:P+1}),cols:h.map(pe)}):null,be=l.createElement(Et.GridColGroup,null,h.map((t,r)=>l.createElement("col",{key:r.toString(),className:u.isSorted(t.field,e.sort)?d.classNames(g.sorted({})):void 0,width:u.getColumnWidth(t)}))),Ce=e.reorderable||T,{detail:Kt,cells:Vt,...ye}=e,he=l.createElement("tbody",{role:"rowgroup",className:d.classNames(g.tbody({})),...w.tableKeyboardNavigationBodyAttributes},X);let Y=he;if(q&&(Y=l.createElement(Ft.GridReorderableRowsContainer,{unstyled:g,columns:m.current,rowReorderSettings:e.rowReorderable},he)),e.scrollable==="none")return l.createElement(Fe.GridClientWrapper,{gridRef:v,gridProps:ye,columnsRef:$(),columnsMapRef:N,dataRef:y,slicedData:O,isFixedVirtualScroll:J===j.VirtualScrollFixed,id:C,total:x,detailExpandable:!!e.detail},l.createElement(Ke.GridElementContainer,null,l.createElement("div",{id:e.id,style:e.style,className:d.classNames(g.wrapper({size:I}),e.className),"aria-label":e.ariaLabel,...w.tableKeyboardNavigationScopeAttributes},re,ie,l.createElement(It.GridTable,{selectable:e.selectable,className:d.classNames(g.table({size:I}))},be,oe,l.createElement(Pe.GridTableBody,{rowReorderable:q},Y)),ue&&l.createElement(De.GridNoRecordsContainer,null,z.length?z:l.createElement(ke.GridNoRecords,null)),Ce&&l.createElement(l.Fragment,null,l.createElement(Te.GridDropClue,null),l.createElement(He.GridDragClue,null)))),ne,e.pageable&&fe);let M=e.style||{};return D&&(M.height||(M=Object.assign({},M,{height:"450px"}))),l.createElement(Fe.GridClientWrapper,{gridRef:v,gridProps:ye,columnsRef:$(),columnsMapRef:N,dataRef:y,slicedData:O,isFixedVirtualScroll:J===j.VirtualScrollFixed,id:C,total:x,detailExpandable:!!e.detail},l.createElement(Ke.GridElementContainer,null,l.createElement("div",{id:e.id,style:M,className:d.classNames(g.wrapper({size:I,virtual:D}),e.className),"aria-label":e.ariaLabel,...w.tableKeyboardNavigationScopeAttributes},re,ie,l.createElement("div",{className:d.classNames(g.ariaRoot({})),role:"grid","aria-colcount":h.length,"aria-rowcount":x,id:C,"aria-label":Q.toLanguageString(ee.gridAriaLabel,ee.messages[ee.gridAriaLabel])},oe,l.createElement("div",{className:d.classNames(g.container({})),role:"presentation"},l.createElement(vt.GridContainerElementContainer,null,l.createElement("div",{className:d.classNames(g.content({})),role:"presentation"},l.createElement("div",{className:d.classNames(g.tableWrap({})),role:"presentation"},l.createElement(xt.GridTableScrollable,{selectable:e.selectable,tableClassName:d.classNames(g.table({size:I})),tableStyle:{userSelect:Je}},be,l.createElement(Pe.GridTableBody,{rowReorderable:q},Y)),ue&&l.createElement(De.GridNoRecordsContainer,null,z.length?z:l.createElement(ke.GridNoRecords,null))),D&&l.createElement("div",{className:d.classNames(g.heightContainer({})),role:"presentation"},l.createElement(Nt.VirtualScrollHeightContainer,{isVirtualScroll:D}))))),et,Ce&&l.createElement(l.Fragment,null,l.createElement(Te.GridDropClue,null),l.createElement(He.GridDragClue,null)),l.createElement(Rt.GridWatermarkOverlay,null)),ne,e.pageable&&fe)))});Ve.displayName="KendoReactGridComponent";exports.GridComponent=Ve;
|
|
8
|
+
"use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const nt=require("react"),d=require("@progress/kendo-react-common"),it=require("@progress/kendo-data-query"),G=require("@progress/kendo-react-data-tools"),ot=require("./cells/GridSelectionCell.js"),dt=require("./cells/GridHierarchyCell.js"),ct=require("./cells/GridEditCell.js"),st=require("./header/Header.js"),ut=require("./header/HeaderRow.js"),gt=require("./header/FilterRow.js"),mt=require("./header/GroupPanel.js"),ft=require("./footer/Footer.js"),u=require("./utils/index.js"),bt=require("./cells/GridCell.js"),Ne=require("./cells/GridGroupCell.js"),Ct=require("./rows/GridRow.js"),yt=require("./header/GridHeaderSelectionCell.js"),ke=require("./components/noRecords/GridNoRecords.js"),qe=require("./filterCommon.js"),ht=require("./footer/FooterRow.js"),wt=require("./paging/GridPagerSettings.js"),Gt=require("./package-metadata.js"),Rt=require("./cells/GridDetailCell.js"),Et=require("./cells/GridDetailHierarchyCell.js"),De=require("./components/noRecords/GridNoRecordsContainer.js"),It=require("./GridWatermarkOverlay.js"),Fe=require("./GridClientWrapper.js"),St=require("./components/colGroup/GridColGroup.js"),vt=require("./components/table/GridTable.js"),Te=require("./components/GridDropClue.js"),He=require("./components/GridDragClue.js"),Pe=require("./components/table/GridTableBody.js"),xt=require("./components/PagerContainer.js"),Nt=require("./components/table/GridTableScrollable.js"),Ke=require("./components/GridElementContainer.js"),kt=require("./components/GridContainerElementContainer.js"),qt=require("./components/VirtualScrollHeightContainer.js"),Ve=require("@progress/kendo-react-intl"),ee=require("./messages/index.js"),$=require("./VirtualScrollFixed.js"),Dt=require("./VirtualScroll.js"),Ft=require("./components/GridCustomCellClientContainer.js"),Tt=require("./components/GridDraggableRowsContainer.js"),Ht=require("./cells/GridRowReorderCell.js"),Pt=require("./header/client/GridHeaderRowReorderCell.js");function Kt(e){const x=Object.create(null,{[Symbol.toStringTag]:{value:"Module"}});if(e){for(const C in e)if(C!=="default"){const R=Object.getOwnPropertyDescriptor(e,C);Object.defineProperty(x,C,R.get?R:{enumerable:!0,get:()=>e[C]})}}return x.default=e,Object.freeze(x)}const l=Kt(nt),Ae=l.forwardRef((e,x)=>{var we,Ge,Re,Ee,Ie,Se,ve;const C=e.id+"-role-element-id",R=e.navigatable?C:"";d.validatePackage(Gt.packageMetadata);const Be=(t,r,o,c,i,a,s)=>{const f=[],b=u.flatData(f,E,t,{index:r},o!==void 0,c,i,a,Qe.defaultExpand,s);return{flattedData:f,resolvedGroupsCount:b}},Oe=t=>{const r=t.filter(i=>i&&i.type&&i.type.displayName==="KendoReactGridColumn"),o=m.current.filter(i=>i.declarationIndex>=0&&i.parentIndex===-1),c=u.sanitizeColumns(o);return u.readColumns(r,c,{prevId:0,idPrefix:R})},_e=t=>t.filter(r=>d.canUseDOM&&r&&r.media?window.matchMedia(r.media).matches:r),ze=(t,r)=>{var i;const o=Oe(t),c=_e(o);m.current=c,m.current.length===0&&(m.current=u.autoGenerateColumns(E,e.group,{column:(i=H.column)!=null?i:e.expandField},{prevId:0,idPrefix:R})),Me(m.current,r),N=u.mapColumns(m.current,!0),le.current=m.current.map(u.clientColumn)},Me=(t,r)=>{var i;t.filter(a=>e.selectedField&&a.field===e.selectedField||a.columnType==="checkbox").forEach(a=>{a.width=a.width||"50px",a.cell=a.cell||ot.GridSelectionCell,a._type="edit",a.headerCell=a.headerCell||yt.GridHeaderSelectionCell}),q!==void 0&&t.filter(a=>a.columnType==="reorder").forEach(a=>{a.width=a.width||"50px",a.cell=a.cell||Ht.GridRowReorderCell,a.headerCell=a.headerCell||Pt.GridHeaderRowReorderCell,a.sortable=!1,a.filterable=!1,a.editable=!1});const o={id:"",resizable:!0,width:"32px",title:" ",declarationIndex:-1,orderIndex:-1,children:[],parentIndex:-1,depth:0,colSpan:0,headerColSpan:0,rowSpan:0,left:0,right:0,index:0,rightBorder:!1,ariaColumnIndex:0,isAccessible:!0};let c=0;(e.expandField||H.enabled)&&e.detail&&(t.unshift({...o,_type:"expand",cell:dt.GridHierarchyCell,field:(i=H.column)!=null?i:e.expandField,headerClassName:d.classNames(g.hierarchyCell({}))}),c++);for(let a=0;a<r;a++)t.unshift({...o,isAccessible:!1,cell:Ne.GridGroupCell,field:"value",locked:e.lockGroups}),c++;t.slice(c).forEach(a=>a.parentIndex>=0&&(a.parentIndex+=c))},te=()=>E.length===e.total,Le=()=>{const{rowHeight:t,detailRowHeight:r,detail:o,expandField:c}=e,i=te(),a=t!==void 0&&t>0,s=r!==void 0&&r>0;return!a||T&&!i||!!(o&&c)&&(!s||!i)?Dt.VirtualScroll:$.VirtualScrollFixed},U=()=>e.isClient?m:le,We=(t,r,o,c,i,a)=>{let s=u.getColSpan(t,r);if(e.columnVirtualization&&t.colSpan===1)return{colSpan:a,colsToSkip:i};let f=o.length-1===c,b=o.length-c;return e.columnVirtualization&&(f=h.length-1===c,b=h.length-c),s>1&&!f?i=s-1:s=1,b<=s&&!f&&(s=b),{colSpan:s,colsToSkip:i}};let Q,y=[],O;const m=e.columnsRef||{current:[]},le={current:[]};let N=[[]];const je=e.scrollLeftRef||{current:0},_=e.localization||new Ve.LocalizationService,$e=e.intl||new Ve.IntlService("en"),k=e.unstyled,g=k&&k.uGrid?k.uGrid:d.uGrid,q=typeof e.rowReorderable=="object"?e.rowReorderable.enabled:e.rowReorderable,F=e.autoProcessData===!0?{group:!0,sort:!0,filter:!0,page:!0}:e.autoProcessData;let E,v;if(Array.isArray(e.data)?(E=e.data,v=(we=e.total)!=null?we:E.length):(E=((Ge=e.data)==null?void 0:Ge.data)||[],v=(Ie=(Ee=e.total)!=null?Ee:(Re=e.data)==null?void 0:Re.total)!=null?Ie:E.length),F){const{data:t,total:r}=it.process(E,{group:F.group?e.group:void 0,sort:F.sort?e.sort:void 0,filter:F.filter?e.filter:void 0,...F.page?{take:e.take,skip:e.skip}:{}});E=t,v=(Se=e.total)!=null?Se:r}const{size:I="medium"}=e,Ue=typeof e.groupable=="object"&&e.groupable.footer||"none",D=e.scrollable==="virtual",T=e.groupable===!0||typeof e.groupable=="object"&&e.groupable.enabled!==!1,H=G.getDetailExpandableOptions(!!e.detail),Qe=G.getGroupExpandableOptions(typeof e.groupable=="object"&&e.groupable.enabled!==!1?e.groupable.expandable:e.groupable),{resolvedGroupsCount:Je,flattedData:Xe}=Be(Ue,e.skip||0,e.group,e.expandField,e.detailExpand,e.groupExpand,e.dataItemKey);y=Xe;const J=Le();J===$.VirtualScrollFixed&&te()&&(O=y.slice(e.skip||0,(e.skip||0)+((e.take!==void 0?e.take:e.pageSize)||0)));const ae=G.getSelectionOptions(e.selectable||!!e.selectedField),Ye=ae&&ae.drag?"none":void 0,z=l.Children.toArray(e.children);ze(z,Je);const re=z.map(t=>t&&t.type&&t.type.displayName==="KendoReactGridToolbar"?l.cloneElement(t,{...t.props,ariaControls:C}):null),M=z.filter(t=>t&&t.type&&t.type.displayName==="KendoReactGridNoRecords"),ne=z.filter(t=>t&&t.type&&t.type.displayName==="KendoReactGridStatusBar"),h=m.current.filter(t=>t.children.length===0),ie=T&&l.createElement(mt.GroupPanel,{columns:U().current,group:e.group||[],ariaControls:C}),oe=l.createElement(st.Header,{size:I,staticHeaders:e.scrollable!=="none",draggable:e.reorderable||T,headerRow:l.createElement(ut.HeaderRow,{cells:e.cells,sort:e.sort,sortable:e.sortable,group:e.group||[],groupable:T,filter:e.filter,filterable:e.filterable,filterOperators:e.filterOperators||qe.operators,columnMenu:e.columnMenu,columnMenuIcon:e.columnMenuIcon,columns:m.current,columnsMap:N,cellRender:e.headerCellRender,navigatable:!!e.navigatable,localization:_,unstyled:k,headerSelectionValue:!!(e.select&&y.filter(t=>t.rowType==="data").every(t=>e.select&&e.dataItemKey&&d.getter(e.dataItemKey)(t.dataItem)!==void 0?e.select[d.getter(e.dataItemKey)(t.dataItem)]:void 0))}),filterRow:e.filterable&&l.createElement(gt.FilterRow,{cells:e.cells,size:I,columns:m.current,filter:e.filter,filterOperators:e.filterOperators||qe.operators,sort:e.sort,cellRender:e.filterCellRender,navigatable:!!e.navigatable,ariaRowIndex:N.length+1,localization:_})||void 0,cols:h.map((t,r)=>l.createElement("col",{key:r.toString(),width:u.getColumnWidth(t)}))}),Ze=je.current||0,pe=parseFloat(((e.style||{}).width||"").toString()),et=(t,r,o,c)=>{let i=!1;const a=e.selectedField?u.getNestedValue(e.selectedField,t.dataItem):e.select&&e.dataItemKey&&d.getter(e.dataItemKey)(t.dataItem)!==void 0?e.select[d.getter(e.dataItemKey)(t.dataItem)]:void 0;let s=0;const{colSpans:f,hiddenColumns:b}=G.tableColumnsVirtualization({enabled:e.columnVirtualization,columns:h,tableViewPortWidth:pe,scrollLeft:Ze,getColSpan:u.getColSpan,dataItem:t.dataItem}),S=h.filter((n,w)=>!b[w]);return{row:h.map((n,w)=>{if(b[w])return null;if(s>0)return s--,null;const{colSpan:K,colsToSkip:V}=We(n,t.dataItem,S,w,s,f[w]);s=V;const W=n.id?n.id:w,j=d.classNames(g.contentSticky({locked:n.locked}),n.className),at=n.left!==void 0?{left:n.left,right:n.right}:{};let xe=!1;if(n.editable&&(e.editable||e.editField)){const B=e.editField?u.getNestedValue(e.editField,t.dataItem):e.edit&&e.dataItemKey?e.edit[d.getter(e.dataItemKey)(t.dataItem)]:void 0,p=typeof B=="boolean"?B:Array.isArray(B)?B.indexOf(n.field)>-1:n.field!==void 0&&B===n.field;p&&n.columnType==="data"&&(p===!0||p===n.field)&&(i=!0,xe=!0)}const Z=n.cell||xe&&ct.GridEditCell||bt.GridCell,rt=e.expandField&&e.detail&&n.field===e.expandField||n._type==="expand",A={locked:e.lockGroups,id:G.tableKeyboardNavigationTools.generateNavigatableId(`${r}-${String(w)}`,R,rt||t.rowType==="groupHeader"||t.rowType==="groupFooter"||n.field==="value"?"nodata":"cell"),colSpan:K,dataItem:t.dataItem,field:n.field,editor:n.editor,format:n.format,columnType:n.columnType,rowReorderable:q,className:j,render:e.cellRender,cells:u.resolveCells(e.cells,n.cells),columnIndex:w,columnsCount:h.length,rowType:t.rowType,level:t.level,expanded:t.expanded,dataIndex:t.dataIndex,rowDataIndex:o,columnPosition:at,style:{},ariaColumnIndex:n.ariaColumnIndex,isSelected:(n==null?void 0:n._type)==="edit"?a:Array.isArray(a)&&a.indexOf(w)>-1,isSorted:!!u.isSorted(n.field,e.sort),isInEdit:i,isAlt:c,unstyled:k,group:t.group,localization:_,intl:$e};return n.cell?l.createElement(Ft.GridCustomCellClientContainer,{key:W,isClient:u.isClientReference(Z),dataItem:A.dataItem,rowDataIndex:A.rowDataIndex,columnIndex:A.columnIndex},l.createElement(Z,{...A})):l.createElement(Z,{key:W,...A})}),isInEdit:i,isSelected:typeof a=="boolean"&&a}};let de=0;if(D&&Q)for(let t=0;t<Q.topCacheCount+Q.attendedSkip-(e.skip||0);t++){const r=y.shift();if(r)y.push(r),de++,r.rowType==="groupHeader"&&t--;else break}const ce=t=>t>=y.length-de;let se=e.skip||0;const X=[],ue=!y.length,ge=N.length+(e.filterable?1:0)+1;let P=0;if(y.length){let t=-1,r=0;(O||y).forEach((o,c)=>{o.rowType==="data"&&(se++,t++);const i=se%2===0,a=e.dataItemKey&&d.getter(e.dataItemKey)(o.dataItem),s=c+(e.skip||0),f=a||"ai"+s,b=f+"_1",S=et(o,f,t,i);if(P=s+ge+r,X.push(l.createElement(Ct.GridRow,{key:f,dataItem:o.dataItem,isAltRow:i,isInEdit:S.isInEdit,rowType:o.rowType,isRowReorderable:q,isHidden:ce(c),onClick:null,onDoubleClick:null,selectedField:e.selectedField,rowHeight:e.rowHeight,render:e.rowRender,ariaRowIndex:P,absoluteRowIndex:s,dataIndex:D&&!e.groupable?s:t,isSelected:S.isSelected},S.row)),e.detail&&o.rowType==="data"&&o.expanded){const n=h.length-(e.expandField||H.enabled?1:0)-(e.group?e.group.length:0)||1;r++,P=s+ge+r,X.push(l.createElement("tr",{key:b,className:d.classNames(g.detailTr({isAlt:i})),style:{visibility:ce(c)?"hidden":"",height:e.detailRowHeight},role:"row","aria-rowindex":P},e.group&&e.group.map((w,K)=>{var j;const V=(j=S==null?void 0:S.row[K])==null?void 0:j.props.style,W=V?{left:V.left,right:V.right}:{};return l.createElement(Ne.GridGroupCell,{id:"",dataIndex:o.dataIndex,field:w.field,dataItem:o.dataItem,key:K,columnPosition:W,style:{},ariaColumnIndex:1+K,isSelected:!1,locked:e.lockGroups,cells:e.cells,group:o.group})}),(e.expandField||H.enabled)&&l.createElement(Et.GridDetailHierarchyCell,{unstyled:k,id:G.tableKeyboardNavigationTools.generateNavigatableId(`${b}-dhcell`,R)}),l.createElement(Rt.GridDetailCell,{dataItem:o.dataItem,dataIndex:o.dataIndex,colSpan:n,ariaColIndex:2+(e.group?e.group.length:0),detail:e.detail,id:G.tableKeyboardNavigationTools.generateNavigatableId(`${b}-dcell`,R)})))}})}const me={size:I,total:v,skip:e.skip||0,take:(e.take!==void 0?e.take:e.pageSize)||10,...wt.normalize(e.pageable||{})},fe=l.createElement(xt.PagerContainer,null,e.pager?l.createElement(e.pager,{...me}):l.createElement(G.Pager,{className:d.classNames(g.pager({})),...me})),tt=(t,r)=>l.createElement("col",{key:r.toString(),width:u.getColumnWidth(t)}),lt=(ve=e.cells)!=null&&ve.footerCell||m.current.some(t=>{var r;return!!(t.footerCell||(r=t.cells)!=null&&r.footerCell)})?l.createElement(ft.Footer,{size:I,staticHeaders:e.scrollable!=="none",row:l.createElement(ht.FooterRow,{cells:e.cells,idPrefix:R,columns:m.current,ariaRowIndex:P+1}),cols:h.map(tt)}):null,be=l.createElement(St.GridColGroup,null,h.map((t,r)=>l.createElement("col",{key:r.toString(),className:u.isSorted(t.field,e.sort)?d.classNames(g.sorted({})):void 0,width:u.getColumnWidth(t)}))),Ce=e.reorderable||T,{detail:Vt,cells:At,...ye}=e,he=l.createElement("tbody",{role:"rowgroup",className:d.classNames(g.tbody({})),...G.tableKeyboardNavigationBodyAttributes},X);let Y=he;if(q&&(Y=l.createElement(Tt.GridReorderableRowsContainer,{unstyled:g,columns:m.current,rowReorderSettings:e.rowReorderable},he)),e.scrollable==="none")return l.createElement(Fe.GridClientWrapper,{gridRef:x,gridProps:ye,columnsRef:U(),columnsMapRef:N,dataRef:y,slicedData:O,isFixedVirtualScroll:J===$.VirtualScrollFixed,id:C,total:v,detailExpandable:!!e.detail},l.createElement(Ke.GridElementContainer,null,l.createElement("div",{id:e.id,style:e.style,className:d.classNames(g.wrapper({size:I}),e.className),"aria-label":e.ariaLabel,...G.tableKeyboardNavigationScopeAttributes},re,ie,l.createElement(vt.GridTable,{selectable:e.selectable,className:d.classNames(g.table({size:I}))},be,oe,l.createElement(Pe.GridTableBody,{rowReorderable:q},Y)),ue&&l.createElement(De.GridNoRecordsContainer,null,M.length?M:l.createElement(ke.GridNoRecords,null)),Ce&&l.createElement(l.Fragment,null,l.createElement(Te.GridDropClue,null),l.createElement(He.GridDragClue,null)))),ne,e.pageable&&fe);let L=e.style||{};return D&&(L.height||(L=Object.assign({},L,{height:"450px"}))),l.createElement(Fe.GridClientWrapper,{gridRef:x,gridProps:ye,columnsRef:U(),columnsMapRef:N,dataRef:y,slicedData:O,isFixedVirtualScroll:J===$.VirtualScrollFixed,id:C,total:v,detailExpandable:!!e.detail},l.createElement(Ke.GridElementContainer,null,l.createElement("div",{id:e.id,style:L,className:d.classNames(g.wrapper({size:I,virtual:D}),e.className),"aria-label":e.ariaLabel,...G.tableKeyboardNavigationScopeAttributes},re,ie,l.createElement("div",{className:d.classNames(g.ariaRoot({})),role:"grid","aria-colcount":h.length,"aria-rowcount":v,id:C,"aria-label":_.toLanguageString(ee.gridAriaLabel,ee.messages[ee.gridAriaLabel])},oe,l.createElement("div",{className:d.classNames(g.container({})),role:"presentation"},l.createElement(kt.GridContainerElementContainer,null,l.createElement("div",{className:d.classNames(g.content({})),role:"presentation"},l.createElement("div",{className:d.classNames(g.tableWrap({})),role:"presentation"},l.createElement(Nt.GridTableScrollable,{selectable:e.selectable,tableClassName:d.classNames(g.table({size:I})),tableStyle:{userSelect:Ye}},be,l.createElement(Pe.GridTableBody,{rowReorderable:q},Y)),ue&&l.createElement(De.GridNoRecordsContainer,null,M.length?M:l.createElement(ke.GridNoRecords,null))),D&&l.createElement("div",{className:d.classNames(g.heightContainer({})),role:"presentation"},l.createElement(qt.VirtualScrollHeightContainer,{isVirtualScroll:D}))))),lt,Ce&&l.createElement(l.Fragment,null,l.createElement(Te.GridDropClue,null),l.createElement(He.GridDragClue,null)),l.createElement(It.GridWatermarkOverlay,null)),ne,e.pageable&&fe)))});Ae.displayName="KendoReactGridComponent";exports.GridComponent=Ae;
|