@progress/kendo-react-grid 11.0.0-develop.19 → 11.0.0-develop.20
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/GridClientWrapper.js +1 -1
- package/GridClientWrapper.mjs +46 -37
- package/GridComponent.js +1 -1
- package/GridComponent.mjs +18 -18
- package/GridToolbar.js +1 -1
- package/GridToolbar.mjs +15 -20
- package/columnMenu/GridColumnMenuCheckboxFilter.js +1 -1
- package/columnMenu/GridColumnMenuCheckboxFilter.mjs +2 -1
- package/columnMenu/GridColumnMenuFilterCell.js +1 -1
- package/columnMenu/GridColumnMenuFilterCell.mjs +35 -28
- package/columnMenu/GridColumnMenuWrapper.js +1 -1
- package/columnMenu/GridColumnMenuWrapper.mjs +62 -49
- package/columnMenu/adaptiveContent/GridAdaptiveColumnMenu.js +1 -1
- package/columnMenu/adaptiveContent/GridAdaptiveColumnMenu.mjs +1 -1
- package/dist/cdn/js/kendo-react-grid.js +1 -1
- package/index.d.mts +244 -18
- package/index.d.ts +244 -18
- package/index.js +1 -1
- package/index.mjs +80 -72
- package/messages/index.js +1 -1
- package/messages/index.mjs +92 -76
- package/package-metadata.js +1 -1
- package/package-metadata.mjs +2 -2
- package/package.json +16 -16
- package/toolbar-tools/GridToolbarCheckboxFilter.js +8 -0
- package/toolbar-tools/GridToolbarCheckboxFilter.mjs +312 -0
- package/toolbar-tools/GridToolbarColumnsChooser.js +8 -0
- package/toolbar-tools/GridToolbarColumnsChooser.mjs +178 -0
- package/toolbar-tools/GridToolbarFilter.js +8 -0
- package/toolbar-tools/GridToolbarFilter.mjs +281 -0
- package/toolbar-tools/GridToolbarSort.js +8 -0
- package/toolbar-tools/GridToolbarSort.mjs +146 -0
- package/toolbar-tools/adaptiveContent/GridAdaptiveToolbarCheckboxFilter.js +9 -0
- package/toolbar-tools/adaptiveContent/GridAdaptiveToolbarCheckboxFilter.mjs +114 -0
- package/toolbar-tools/adaptiveContent/GridAdaptiveToolbarColumnChooser.js +9 -0
- package/toolbar-tools/adaptiveContent/GridAdaptiveToolbarColumnChooser.mjs +89 -0
- package/toolbar-tools/adaptiveContent/GridAdaptiveToolbarFilter.js +9 -0
- package/toolbar-tools/adaptiveContent/GridAdaptiveToolbarFilter.mjs +98 -0
- package/toolbar-tools/adaptiveContent/GridAdaptiveToolbarSort.js +9 -0
- package/toolbar-tools/adaptiveContent/GridAdaptiveToolbarSort.mjs +68 -0
- package/toolbar-tools/adaptiveContext/GridToolbarAdaptiveContext.js +9 -0
- package/toolbar-tools/adaptiveContext/GridToolbarAdaptiveContext.mjs +17 -0
package/GridClientWrapper.js
CHANGED
|
@@ -6,4 +6,4 @@
|
|
|
6
6
|
*-------------------------------------------------------------------------------------------
|
|
7
7
|
*/
|
|
8
8
|
"use client";
|
|
9
|
-
"use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const Ot=require("react"),b=require("@progress/kendo-react-common"),d=require("@progress/kendo-react-data-tools"),Lt=require("./drag/ColumnResize.js"),zt=require("./drag/CommonDragLogic.js"),Nt=require("./constants/index.js"),A=require("./utils/index.js"),Ft=require("./VirtualScroll.js"),qt=require("./contextMenu/GridContextMenu.js"),Le=require("./contextMenu/enums.js"),ze=require("./sortCommon.js"),Ut=require("./BasePDFExport.js"),Vt=require("./utils/GridContext.js");function Wt(t){const I=Object.create(null,{[Symbol.toStringTag]:{value:"Module"}});if(t){for(const g in t)if(g!=="default"){const L=Object.getOwnPropertyDescriptor(t,g);Object.defineProperty(I,g,L.get?L:{enumerable:!0,get:()=>t[g]})}}return I.default=t,Object.freeze(I)}const i=Wt(Ot),Bt=t=>{const I=t.gridProps.isClient,[g,L]=i.useState({}),Ce=b.useAdaptiveModeContext(),Ie=i.useRef(null),Ne=e=>{e.event.preventDefault(),L({...g,show:!0,offset:{left:e.event.pageX,top:e.event.pageY},dataItem:e.dataItem,field:e.field})},Ee=()=>{L({})},R=i.useMemo(()=>t.columnsRef.find(e=>e.field===g.field),[t.columnsRef,g]),we=i.useMemo(()=>{const e=t.gridProps.sortable&&(R==null?void 0:R.sortable);return A.getDefaultHeadContextMenuItems({pdf:!!t.gridProps.pdf,sortable:!!e,selectable:d.getSelectionOptions(t.gridProps.selectable).enabled,clipboard:!!t.gridProps.clipboard})},[R,t.gridProps.sortable,t.gridProps.selectable,t.gridProps.clipboard]),ye=i.useMemo(()=>{const e=t.gridProps.sortable&&(R==null?void 0:R.sortable);return A.getDefaultBodyContextMenuItems({pdf:!!t.gridProps.pdf,sortable:!!e,selectable:d.getSelectionOptions(t.gridProps.selectable).enabled,clipboard:!!t.gridProps.clipboard,rowReorderable:A.isRowReorderEnabled(t.gridProps.rowReorderable)})},[R,t.gridProps.sortable,t.gridProps.selectable,t.gridProps.clipboard]),$=i.useMemo(()=>{const e=(R==null?void 0:R.contextMenu)||t.gridProps.contextMenu,n=typeof e=="function"?e(g):e;if(n&&g.offset){const o=g.dataItem?Le.GridContextMenuAnchorPart.body:Le.GridContextMenuAnchorPart.head,r=n[o],a=g.dataItem?ye:we;return r===!1?void 0:r===!0||r===void 0?a:r}},[t.gridProps.contextMenu,g,ye,we,R]),Fe=e=>{var l,u,f,h,w,re,C,B,j;const n=e.event.item,o={target:E.current,syntheticEvent:e.event.syntheticEvent,nativeEvent:e.event.nativeEvent,menuItem:n,...e};t.gridProps.onContextMenuItemClick&&s(t.gridProps.onContextMenuItemClick,o);const r=y(),a={selectedField:"",componentId:t.id,dataItems:r,dataItem:e.dataItem,startRowIndex:-1,endRowIndex:-1,startColIndex:-1,endColIndex:-1,ctrlKey:!1,altKey:!1,metaKey:!1,shiftKey:!1,isDrag:!1,...d.getSelectionOptions(t.gridProps.selectable),...o},c=r.findIndex(_=>_===e.dataItem);switch((l=n.data)==null?void 0:l.action){case"SortCommand":if(R){const _=(u=n.name)==null?void 0:u.toLowerCase().includes("asc"),At=((f=n.name)==null?void 0:f.toLowerCase().includes("desc"))?"desc":void 0,Gt=_?"asc":At,Ht=n.name?Gt:void 0;Se(e.event.syntheticEvent,R,Ht)}break;case"SelectRowCommand":ot(a);break;case"SelectAllRowsCommand":rt(a);break;case"ExportPDFCommand":oe();break;case"ClearSelectionCommand":at(a);break;case"ReorderRowCommand":W.current=e.dataItem,(h=n.name)!=null&&h.toLowerCase().includes("rowup")&&c>0&&N(e.event.syntheticEvent,c-1,"before"),(w=n.name)!=null&&w.toLowerCase().includes("rowdown")&&c<r.length-1&&N(e.event.syntheticEvent,c+1,"after"),(re=n.name)!=null&&re.toLowerCase().includes("rowtop")&&N(e.event.syntheticEvent,0,"before"),(C=n.name)!=null&&C.toLowerCase().includes("rowbottom")&&N(e.event.syntheticEvent,r.length-1,"after");break;case"CopySelectionCommand":Q(d.ClipboardActionType.copy,e.event.nativeEvent,{copyHeaders:!((B=n.name)!=null&&B.toLowerCase().includes("noheaders"))},e.dataItem,e.field);break;case"PasteCommand":Q(d.ClipboardActionType.paste,e.event.nativeEvent,{copyHeaders:!((j=n.name)!=null&&j.toLowerCase().includes("noheaders"))},e.dataItem,e.field);break}Ee()},X=()=>{const e=t.columnsRef.filter(n=>n.declarationIndex>=0&&n.parentIndex===-1);return A.sanitizeColumns(e)},qe=(e,n,o)=>{if(t.gridProps.onContextMenu&&I){const r={target:E.current,syntheticEvent:e,nativeEvent:e.nativeEvent,dataItem:n,field:o};s(t.gridProps.onContextMenu,r)}t.gridProps.contextMenu&&Ne({event:e,dataItem:n,field:o})},Ue=e=>{if(e.target!==e.currentTarget)return;clearTimeout(he.current),P.current&&(P.current.table=M.current);const n=e.currentTarget.scrollLeft,o=e.currentTarget.scrollTop;t.gridProps.columnVirtualization&&(!D||o===Pe.current)&&(he.current=window.setTimeout(()=>{F()},0)),t.gridProps.scrollLeftRef&&(t.gridProps.scrollLeftRef.current=n),V.current&&V.current.setScrollLeft(n),U.current&&U.current.setScrollLeft(n),P.current&&o!==Pe.current&&P.current.scrollHandler(e),t.gridProps.onScroll&&I&&s(t.gridProps.onScroll,{...m(e)}),Pe.current=o},Ve=e=>{d.tableKeyboardNavigation.onKeyDown(e,{navigatable:t.gridProps.navigatable||!1,contextStateRef:K,navigationStateRef:G,onNavigationAction:Be,columns:X()}),d.tableKeyboardNavigation.onGetSnapshotBeforeUpdate({document:S(),contextStateRef:K,navigationStateRef:G});const n={dataItems:y(),mode:v.mode,cell:v.cell,componentId:t.id,selectedField:"",...m(e)};t.gridProps.onKeyDown&&I&&s(t.gridProps.onKeyDown,n)},We=e=>{d.tableKeyboardNavigation.onFocus(e,{navigatable:!!t.gridProps.navigatable,contextStateRef:K})},Be=e=>{if(e.action==="moveToNextPage"&<(e.event),e.action==="moveToPrevPage"&&st(e.event),e.focusElement&&e.action==="reorderToRight"){const n=parseInt(e.focusElement.ariaColIndex,10)-1;n<t.columnsRef.length-1&&ce(n,n+1,e.event)}if(e.focusElement&&e.action==="reorderToLeft"){const n=parseInt(e.focusElement.ariaColIndex,10)-1;n>0&&ce(n,n-1,e.event)}if(e.action==="select"&&et(e.event),t.gridProps.onNavigationAction&&I){const n={focusElement:e.focusElement,...m(e.event)};s(t.gridProps.onNavigationAction,n)}},je=(e,n)=>{t.gridProps.onRowClick&&e.target.nodeName==="TD"&&s(t.gridProps.onRowClick,{dataItem:n,...m(e)})},_e=(e,n)=>{t.gridProps.onRowDoubleClick&&e.target.nodeName==="TD"&&s(t.gridProps.onRowDoubleClick,{dataItem:n,...m(e)})},$e=e=>{t.gridProps.onItemChange&&s(t.gridProps.onItemChange,{...m(e.syntheticEvent),dataItem:e.dataItem,field:void 0,value:void 0})},Xe=e=>{t.gridProps.onItemChange&&t.gridProps.onEditChange&&s(t.gridProps.onEditChange,{edit:{},...m(e.syntheticEvent)})},Je=(e,n,o)=>{if(Oe.enabled&&Oe.mode==="incell"&&t.gridProps.dataItemKey){const r=d.editReducer(t.gridProps.edit,{type:d.EDIT_ACTION.ENTER_FIELD_EDIT,payload:{id:n[t.gridProps.dataItemKey],field:o}});t.gridProps.onEditChange&&s(t.gridProps.onEditChange,{edit:r,...m(e)})}},Ye=(e,n)=>{var r;if(d.getDetailExpandableOptions(t.detailExpandable).enabled){const a=d.detailExpandReducer((r=t.gridProps.detailExpand)!=null?r:{},e);t.gridProps.onDetailExpandChange&&s(t.gridProps.onDetailExpandChange,{...m(n),detailExpand:a})}},Qe=(e,n)=>{var r;const o=d.getGroupExpandableOptions(typeof t.gridProps.groupable=="object"?t.gridProps.groupable.expandable!==!1:t.gridProps.groupable);if(o.enabled){const a=d.groupExpandReducer((r=t.gridProps.groupExpand)!=null?r:[],e,o);t.gridProps.onGroupExpandChange&&s(t.gridProps.onGroupExpandChange,{...m(n),groupExpand:a})}},Se=(e,n,o)=>{const{allowUnsort:r,mode:a}=ze.normalizeSortable(t.gridProps.sortable||!1,n.sortable||!1),c=(t.gridProps.sort||[]).filter(f=>f.field===n.field)[0],l=o||ze.firstLevelSortSeqMap[r][c&&c.dir||""],u=a==="single"?[]:(t.gridProps.sort||[]).filter(f=>f.field!==n.field);l!==""&&n.field&&u.push({field:n.field,dir:l}),xe(u,e)},Ze=e=>{t.gridProps.onItemChange&&s(t.gridProps.onItemChange,{...m(e.syntheticEvent),dataItem:e.dataItem,dataIndex:e.dataIndex,field:e.field,value:e.value})},pe=e=>{var n;if(t.gridProps.onSelectionChange&&v.enabled){const{event:o,dataItem:r,dataIndex:a,columnIndex:c}=e,l={...m(o.syntheticEvent),dataItem:r,startColIndex:c,endColIndex:c,startRowIndex:a,endRowIndex:a,dataItems:y(),altKey:!1,ctrlKey:!1,shiftKey:!1,metaKey:!1,mode:v.mode,cell:v.cell,isDrag:!1,componentId:t.id,selectedField:""};s(t.gridProps.onSelectionChange,{...l,select:t.gridProps.dataItemKey?d.getSelectedState({event:l,selectedState:(n=t.gridProps.select)!=null?n:{},dataItemKey:t.gridProps.dataItemKey}):{}})}},et=e=>{var f,h;if(!v.enabled||!t.gridProps.dataItemKey)return;const n={dataItems:y(),mode:v.mode,cell:v.cell,componentId:t.id,selectedField:"",...m(e)},o=d.getSelectedStateFromKeyDown({event:n,selectedState:(f=t.gridProps.select)!=null?f:{},dataItemKey:t.gridProps.dataItemKey});if(o===t.gridProps.select)return;const r=e.target,a=d.closestTagName(r,"TD"),c=d.closestTagName(r,"TR"),l=d.getColumnIndex(a),u=d.getRowIndex(c);if(l!==void 0&&u!==void 0){const w=(h=A.getDataAsArray(t.gridProps.data))==null?void 0:h[u];t.gridProps.onSelectionChange&&s(t.gridProps.onSelectionChange,{...n,select:o,dataItem:w,startRowIndex:u,startColIndex:l,startDataItem:w,endDataItem:w,endRowIndex:u,endColIndex:l,ctrlKey:e.ctrlKey,altKey:e.altKey,metaKey:e.metaKey,shiftKey:e.shiftKey,isDrag:!1})}},tt=e=>{if(t.gridProps.onHeaderSelectionChange&&v.enabled){const n=y();s(t.gridProps.onHeaderSelectionChange,{select:e.syntheticEvent.target.checked?n.reduce((o,r)=>(t.gridProps.dataItemKey&&b.getter(t.gridProps.dataItemKey)(r)!==void 0&&(o[b.getter(t.gridProps.dataItemKey)(r)]=!0),o),{}):{},field:e.field,nativeEvent:e.syntheticEvent&&e.syntheticEvent.nativeEvent,syntheticEvent:e.syntheticEvent,target:E.current,dataItems:n})}},J=(e,n)=>{t.gridProps.onSelectionChange&&v.enabled&&s(t.gridProps.onSelectionChange,{...e,select:n})},nt=e=>{var n;if(t.gridProps.onSelectionChange&&v.enabled){const o=y()[e.startRowIndex],r=y()[e.endRowIndex],a={syntheticEvent:void 0,target:E.current,selectedField:"",componentId:t.id,dataItems:y(),dataItem:null,startDataItem:o,endDataItem:r,...e},c=d.getSelectedState({event:a,selectedState:(n=t.gridProps.select)!=null?n:{},dataItemKey:t.gridProps.dataItemKey});J(a,c)}},rt=e=>{if(t.gridProps.onSelectionChange&&v.enabled){const n=e.dataItems[0],o=e.dataItems[e.dataItems.length-1],r={},a={...e,startDataItem:n,endDataItem:o,startRowIndex:0,endRowIndex:e.dataItems.length-1,startColIndex:0,endColIndex:t.columnsRef.length-1};e.dataItems.forEach(c=>{const u=b.getter(t.gridProps.dataItemKey)(c);r[u]=e.cell?[...Array(t.columnsRef.length).keys()]:!0}),J(a,r)}},ot=e=>{if(t.gridProps.onSelectionChange&&v.enabled){const o=b.getter(t.gridProps.dataItemKey)(e.dataItem),r=0,a=t.columnsRef.length-1,c=e.dataItems.findIndex(w=>w[t.gridProps.dataItemKey]===e.dataItem[t.gridProps.dataItemKey]),f={...e,startDataItem:c,endDataItem:c,startRowIndex:c,endRowIndex:c,startColIndex:r,endColIndex:a},h=e.mode==="multiple"?t.gridProps.select||{}:{};h[o]===!0||Array.isArray(h[o])&&h[o].length===t.columnsRef.length?delete h[o]:h[o]=e.cell?[...Array(t.columnsRef.length).keys()]:!0,J(f,h)}},at=e=>{t.gridProps.onSelectionChange&&v.enabled&&J(e,{})},z=(e,n,o,r,a)=>{dt();const c=t.gridProps.onDataStateChange;if(e){const l={...m(r),...n,targetEvent:a};s(e,l)}else c&&s(c,{...m(r),targetEvent:a||{},dataState:{...Ct(),...o}})},Y=(e,n,o)=>{var r;D&&t.gridProps.pageable&&((r=P.current)==null||r.reset()),z(t.gridProps.onPageChange,{page:e},{skip:e.skip,take:e.take},n,o)},it=(e,n,o)=>{var r;t.gridProps.pageable||(r=t.gridProps.group)!=null&&r.length?t.gridProps.virtualSkipRef&&(t.gridProps.virtualSkipRef.current=e.skip,F()):Y(e,n,o)},ct=()=>{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},dt=()=>{D&&t.gridProps.virtualSkipRef&&(t.gridProps.virtualSkipRef.current=0)},lt=e=>{var a,c;const n=(c=(a=t.gridProps.take)!=null?a:t.gridProps.pageSize)!=null?c:0,o=(t.gridProps.skip||0)+n,r=ct();o<r&&Y({skip:o,take:n},e)},st=e=>{var r,a;const n=(a=(r=t.gridProps.take)!=null?r:t.gridProps.pageSize)!=null?a:0,o=(t.gridProps.skip||0)-n;o>=0&&Y({skip:o,take:n},e)},ut=e=>{Y({skip:e.skip,take:e.take},e.syntheticEvent,e.targetEvent)},xe=(e,n)=>{z(t.gridProps.onSortChange,{sort:e},{sort:e,...D&&!t.gridProps.pageable?{skip:0}:{}},n)},gt=(e,n)=>{z(t.gridProps.onFilterChange,{filter:e},{filter:e,skip:0},n)},ft=e=>{const n=t.gridProps.searchFields||t.columnsRef.map(a=>a.field)||[],o=e.nativeEvent.target.value,r={logic:"or",filters:n.filter(a=>a!==void 0).map(a=>{var c;return typeof a=="string"?{field:a,value:o,operator:"contains"}:{value:o,operator:(c=a.operator)!=null?c:"contains",field:a.field,ignoreCase:a.ignoreCase}})};z(t.gridProps.onSearchChange,{search:r},{},e.syntheticEvent)},oe=()=>{var e;(e=Ie.current)==null||e.save()},mt=async e=>{var n,o;(n=t.gridProps)!=null&&n.onPdfExport&&await((o=t.gridProps)==null?void 0:o.onPdfExport(e))},ae=(e,n)=>{const o=n.nativeEvent?n:{nativeEvent:n.nativeEvent||n.originalEvent};let r={};t.isVirtualScroll&&e.length&&!t.gridProps.pageable&&(r={take:void 0}),e.length===0&&t.gridProps.navigatable&&(ge.current=!0),z(t.gridProps.onGroupChange,{group:e},{group:e,skip:0,...r},o)},ie=e=>{if(t.gridProps.onColumnsStateChange){const n={target:E.current,columnsState:e};s(t.gridProps.onColumnsStateChange,n)}},ce=(e,n,o)=>{const{columnsRef:r,columnsState:a}=t,c=r[e],l=A.getFlatColumnsState(a),u=c.depth,f=C=>{do C++;while(C<r.length&&r[C].depth>u);return C},h=r.splice(e,f(e)-e);r.splice(e<n?f(n-h.length):n,0,...h),r.filter(C=>C.declarationIndex>=0).forEach((C,B)=>{C.orderIndex=B;const j=l.find(_=>_.id===C.id);j&&(j.orderIndex=B)});const w=r[e].locked&&r[n].locked;d.updateLeft(t.columnsMapRef,r,w||te.current),d.updateRight(t.columnsMapRef,r,w||te.current),ue.current&&(te.current=!1,ue.current=!1);const re=X();if(F(),t.gridProps.onColumnReorder){const C={target:E.current,columns:re,columnId:c.id,nativeEvent:o};s(t.gridProps.onColumnReorder,C)}ie(a)},N=(e,n,o)=>{const r=typeof t.gridProps.rowReorderable=="object"?t.gridProps.rowReorderable.enabled:t.gridProps.rowReorderable;if(o==="forbidden"||!r||!W.current)return;const a=t.dataRef[n];t.gridProps.onRowReorder&&s(t.gridProps.onRowReorder,{draggedDataItems:[W.current],droppedDataItem:a==null?void 0:a.dataItem,dropPosition:o,nativeEvent:e.originalEvent,dragEvent:e,target:E.current}),W.current=null},Pt=(e,n,o)=>{if(t.gridProps.group===void 0)return;const r=t.gridProps.group.slice();r.splice(n,0,...r.splice(e,1)),ae(r,o)},De=(e,n,o)=>{const r=t.columnsRef[e].field;if(!r)return;const a=(t.gridProps.group||[]).slice();a.splice(n,0,{field:r}),ae(a,o)},ht=(e,n)=>{const o=k.current.getCurrentGroupsLength;De(e,o,n)},de=()=>{let e=0;if(!x.current.colGroupMain)return;const n=x.current.colGroupMain.children;for(let o=0;o<n.length;o++){const r=n[o].width;if(!r){e=0;break}e+=parseFloat(r.toString())}e=Math.round(e),V.current&&V.current.setWidth(e),U.current&&U.current.setWidth(e),M.current&&(M.current.style.width=e?e+"px":"")},ke=()=>{var e;t.gridProps.widthRef&&(t.gridProps.widthRef.current=((e=T.current)==null?void 0:e.offsetWidth)||0)},Ke=()=>{var e;t.gridProps.containerHeightRef&&(t.gridProps.containerHeightRef.current=((e=q.current)==null?void 0:e.offsetHeight)||0)},bt=()=>{const e=t.gridProps.minRowHeightRef;if(e&&!e.current&&!t.gridProps.rowHeight){const n=A.calcRowHeight(O.current);n&&(e.current=n,F())}},Q=i.useCallback((e,n,o,r,a)=>{var f;if(!Rt()&&!o||!e)return;const c={type:e,nativeEvent:n,columns:t.columnsRef,dataItemKey:t.gridProps.dataItemKey||"",dataItem:r,field:a,...typeof t.gridProps.clipboard!="boolean"?t.gridProps.clipboard:{},...o},l=y(),u=d.populateClipboardData({event:c,data:l,selectedState:(f=t.gridProps.select)!=null?f:{},previousCopiedItems:Ge.current});e!==d.ClipboardActionType.paste&&(Ge.current=u.copiedItems),t.gridProps.onClipboard&&I&&s(t.gridProps.onClipboard,{...c,...u})},[t.gridProps.select,t.gridProps.dataItemKey,t.gridProps.data,t.gridProps.clipboard,t.gridProps.onClipboard]),Rt=()=>{var a,c,l;if(!b.canUseDOM)return!1;const e=b.getActiveElement(S()),n=e?e.matches(".k-table-td")?e:(a=S())==null?void 0:a.body:(c=S())==null?void 0:c.body,o=n.closest(".k-grid-container"),r=n&&((l=T.current)==null?void 0:l.contains(n));return!!(n&&r&&o)},vt=(e,n,o,r,a,c,l)=>{de(),te.current=!0,ue.current=!0,t.gridProps.onColumnResize&&I&&s(t.gridProps.onColumnResize,{columns:X(),nativeEvent:r,targetColumnId:l,index:e,newWidth:n,oldWidth:o,end:a,target:E.current}),a&&ie(c)},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}},m=e=>({nativeEvent:e&&e.nativeEvent,syntheticEvent:e,target:E.current}),It=e=>({...e,nativeEvent:void 0,syntheticEvent:void 0,target:void 0,targetEvent:void 0,focusElement:void 0}),s=(e,n)=>{if(t.gridProps.isClient){e(n);return}e(It(n))},Et=()=>{var e,n,o;if(O.current&&((e=O.current)==null?void 0:e.getElementsByClassName("k-grid-edit-row").length)>0){me.current=!1,(n=document.activeElement)!=null&&n.closest(".k-grid-edit-row")?fe.current=document.activeElement:fe.current=void 0;const r=Array.from((o=O.current)==null?void 0:o.getElementsByClassName("k-grid-edit-row"));r.length>Re.current.length?ee.current=r.filter(a=>!Re.current.includes(a))[0]:r.length===1&&(ee.current=r[0],me.current=!0),Re.current=r}},y=()=>t.dataRef.filter(e=>e.rowType==="data").map(e=>e.dataItem),S=()=>{var e;if(b.canUseDOM)return((e=Z())==null?void 0:e.ownerDocument)||document},Z=()=>T.current,le=i.useCallback(e=>{var r,a;if(!P.current||!((r=P.current)!=null&&r.container)||t.gridProps.scrollable==="none")return;H.current&&H.current.disconnect();const{rowIndex:n}=e,o=Z();if(D){const c=((a=P.current.rowHeightService)==null?void 0:a.offset(n))||0;P.current.container.scroll(0,c)}else if(o){const c=n<1?o.querySelector("tbody > tr:nth-child(1)"):o.querySelector(`tbody > tr:nth-child(${n+1})`);c&&q.current&&(q.current.scrollTop=c.offsetTop)}},[t.gridProps.scrollable]),Me=e=>JSON.stringify(e.map(n=>({id:n.id,field:n.field,title:n.title,children:n.children}))),wt=()=>Me(Mt)===Me(t.columnsRef),yt=()=>{ne.current=window.innerWidth,wt()||F()},St=()=>{var c;const{virtualTotal:e,virtualPageSize:n,gridProps:o}=t,r=P.current,a=t.gridProps.rowHeight||((c=o.minRowHeightRef)==null?void 0:c.current)||0;r&&(r.fixedScroll=o.fixedScroll||!1,r.PageChange=it,r.pageSize=n,r.scrollableVirtual=D,r.container=q.current,r.tableBody=O.current,r.scrollHeightContainer=Ae.current,r.table=M.current,(!r.rowHeightService||r.total!==e)&&a&&(r.total=e,r.rowHeightService=new b.RowHeightService(e,a)))},Te=i.useCallback(e=>{const n={rowIndex:be.current};e.forEach(o=>{o.isIntersecting||le(n)})},[le]),F=()=>{t.gridProps.forceUpdate&&t.gridProps.forceUpdate()},xt=e=>e.left!==void 0?ve!=="rtl"?{left:e.left,right:e.right}:{left:e.right,right:e.left}:{},E=i.useRef(null),P=i.useRef(void 0),x=i.useRef(void 0),k=i.useRef(void 0),K=i.useRef(void 0),G=i.useRef(void 0),p=i.useRef(void 0),H=i.useRef(null),O=i.useRef(null),Dt=i.useRef(null),q=i.useRef(null),M=i.useRef(null),se=i.useRef(null),T=i.useRef(null),Ae=i.useRef(null),U=i.useRef(null),V=i.useRef(null),ue=i.useRef(!1),ge=i.useRef(!1),ee=i.useRef(void 0),fe=i.useRef(void 0),me=i.useRef(!1),te=i.useRef(!0),Pe=i.useRef(0),he=i.useRef(void 0),be=i.useRef(void 0),Re=i.useRef([]),Ge=i.useRef([]),ne=i.useRef(0),W=i.useRef(null),kt=i.useRef(null),Kt=i.useRef(null),ve=b.useDir(T),D=t.isVirtualScroll,Mt=i.useMemo(()=>i.Children.toArray(t.gridProps.children),[t.gridProps.children]),He=t.gridProps.groupable===!0||typeof t.gridProps.groupable=="object"&&t.gridProps.groupable.enabled!==!1,v=d.getSelectionOptions(t.gridProps.selectable),Oe=d.getEditableOptions(t.gridProps.editable),Tt=ne.current&&Ce&&ne.current<=Ce.medium&&t.gridProps.adaptive;return i.useMemo(()=>{d.tableKeyboardNavigation.onConstructor({navigatable:!!t.gridProps.navigatable,contextStateRef:K,navigationStateRef:G,idPrefix:t.id}),P.current=new Ft.VirtualScroll},[]),i.useMemo(()=>{var e;(e=P.current)==null||e.reset()},[t.gridProps.scrollable,t.gridProps.total,t.gridProps.filter,t.gridProps.group,He,t.gridProps.sort,t.gridProps.rowHeight]),i.useEffect(()=>(t.gridProps.clipboard&&(p.current=new d.ClipboardService(Q),p.current.addEventListeners(S())),()=>{p.current&&p.current.removeEventListeners(S())}),[t.gridProps.onClipboard,t.gridProps.clipboard,Q,S]),i.useEffect(()=>(t.gridProps.columnVirtualization&&!window.navigator.userAgent.match(Nt.SAFARI_REGEX)&&(se.current&&(se.current.style.display="block"),M.current&&(M.current.style.display="block")),ke(),de(),b.setScrollbarWidth(),d.tableKeyboardNavigation.onComponentDidMount({scope:T.current||void 0,contextStateRef:K,navigationStateRef:G}),()=>{clearTimeout(he.current)}),[]),i.useEffect(()=>{var e;ke(),de(),b.setScrollbarWidth(),D&&(Ke(),bt(),(e=P.current)==null||e.update()),Et(),d.tableKeyboardNavigation.onComponentDidUpdate({scope:T.current||void 0,contextStateRef:K,navigationStateRef:G,focusFirst:ge.current,newEditableRow:ee.current,singleEditRow:me.current,lastActiveElement:fe.current,navigatable:t.gridProps.navigatable}),ge.current=!1,ee.current=void 0}),i.useEffect(()=>{if(b.canUseDOM){const e={rootMargin:"0px",threshold:.9};H.current=window.IntersectionObserver&&new window.IntersectionObserver(Te,e)||null}},[Te]),i.useEffect(()=>{var n;let e;return b.canUseDOM&&window.ResizeObserver&&(e=new window.ResizeObserver(()=>{yt(),D&&Ke()}),e.observe((n=S())==null?void 0:n.body)),()=>{e==null||e.disconnect()}},[]),i.useImperativeHandle(E,()=>({get element(){return Z()},props:t.gridProps,get columns(){return X()},scrollIntoView:e=>{var r;if(!((r=P.current)!=null&&r.container)||t.gridProps.scrollable==="none")return;const{rowIndex:n}=e;be.current=n;const o=Z();if(H.current&&o){H.current.disconnect();const a=o.querySelector(`[absolute-row-index="${be.current}"]`);a?H.current.observe(a):le(e)}},fitColumns:e=>{x.current.dblClickHandler(null,e)},exportAsPdf:oe})),i.useImperativeHandle(t.gridRef,()=>E.current),i.useMemo(()=>{x.current=new Lt.ColumnResize(vt)},[t.gridProps.onColumnResize,t.columnsRef]),i.useMemo(()=>{k.current=new zt.CommonDragLogic(ce,Pt,De)},[t.gridProps.onColumnReorder,t.gridProps.onGroupChange,t.gridProps.group,t.columnsRef,t.gridProps.groupable]),x.current.resizable=t.gridProps.resizable||!1,x.current.columns=t.columnsRef,x.current.columnsState=b.cloneArray(t.columnsState),k.current.reorderable=t.gridProps.reorderable||!1,k.current.groupable=He,k.current.columns=t.columnsRef,k.current.dir=ve,St(),i.createElement(Vt.GridContext.Provider,{value:{isClient:I,rowReorder:N,activeDragRowDataItemRef:W,reorderRowDragTargetRef:kt,reorderRowDropTargetRef:Kt,dir:ve,getCellPositionStyle:xt,dataItemKey:t.gridProps.dataItemKey,columnsState:t.columnsState,onColumnsStateChange:ie,groupChange:ae,selectionRelease:nt,pagerPageChange:ut,onContextMenu:qe,rowClick:je,rowDblClick:_e,cellClick:Je,headerCellClick:Se,itemChange:Ze,onDialogEditCancel:Xe,onDialogEditSubmit:$e,sortChange:xe,filterChange:gt,searchChange:ft,exportAsPdf:oe,onHeaderSelectionChange:tt,columnGroupChange:ht,onKeyDown:Ve,onFocus:We,scrollHandler:Ue,selectionChange:pe,mobileMode:Tt,adaptiveColumnMenuRef:ne.current,adpativeTitle:t.gridProps.adaptiveTitle,adaptive:t.gridProps.adaptive,dispatchDetailExpand:Ye,dispatchGroupExpand:Qe,columnResizeRef:x,dragLogicRef:k,navigationStateRef:G,tableElementRef:M,tableBodyElementRef:O,headerElementRef:Dt,containerElementRef:q,headTableElementRef:se,elementRef:T,virtualScrollHeightContainerRef:Ae,footerRef:U,headerRef:V,vsRef:P}},i.createElement(d.TableKeyboardNavigationContext.Provider,{value:K.current},t.children),i.createElement(qt.GridContextMenu,{show:g.show&&($==null?void 0:$.length),dataItem:g.dataItem,field:g.field,items:$,offset:g.offset,onClose:Ee,onSelect:Fe}),t.gridProps.pdf&&i.createElement(Ut.BasePDFExport,{gridProps:t.gridProps,innerGrid:t.innerGrid,pdf:typeof t.gridProps.pdf=="object"?t.gridProps.pdf:{},onPdfExport:mt,ref:e=>Ie.current=e}))};exports.GridClientWrapper=Bt;
|
|
9
|
+
"use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const Ot=require("react"),b=require("@progress/kendo-react-common"),d=require("@progress/kendo-react-data-tools"),Lt=require("./drag/ColumnResize.js"),zt=require("./drag/CommonDragLogic.js"),Ft=require("./constants/index.js"),A=require("./utils/index.js"),Nt=require("./VirtualScroll.js"),qt=require("./contextMenu/GridContextMenu.js"),Le=require("./contextMenu/enums.js"),ze=require("./sortCommon.js"),Ut=require("./BasePDFExport.js"),Vt=require("./utils/GridContext.js"),Wt=require("./filterCommon.js");function Bt(t){const I=Object.create(null,{[Symbol.toStringTag]:{value:"Module"}});if(t){for(const g in t)if(g!=="default"){const L=Object.getOwnPropertyDescriptor(t,g);Object.defineProperty(I,g,L.get?L:{enumerable:!0,get:()=>t[g]})}}return I.default=t,Object.freeze(I)}const i=Bt(Ot),jt=t=>{const I=t.gridProps.isClient,[g,L]=i.useState({}),Ce=b.useAdaptiveModeContext(),Ie=i.useRef(null),Fe=e=>{e.event.preventDefault(),L({...g,show:!0,offset:{left:e.event.pageX,top:e.event.pageY},dataItem:e.dataItem,field:e.field})},Ee=()=>{L({})},R=i.useMemo(()=>t.columnsRef.find(e=>e.field===g.field),[t.columnsRef,g]),we=i.useMemo(()=>{const e=t.gridProps.sortable&&(R==null?void 0:R.sortable);return A.getDefaultHeadContextMenuItems({pdf:!!t.gridProps.pdf,sortable:!!e,selectable:d.getSelectionOptions(t.gridProps.selectable).enabled,clipboard:!!t.gridProps.clipboard})},[R,t.gridProps.sortable,t.gridProps.selectable,t.gridProps.clipboard]),ye=i.useMemo(()=>{const e=t.gridProps.sortable&&(R==null?void 0:R.sortable);return A.getDefaultBodyContextMenuItems({pdf:!!t.gridProps.pdf,sortable:!!e,selectable:d.getSelectionOptions(t.gridProps.selectable).enabled,clipboard:!!t.gridProps.clipboard,rowReorderable:A.isRowReorderEnabled(t.gridProps.rowReorderable)})},[R,t.gridProps.sortable,t.gridProps.selectable,t.gridProps.clipboard]),$=i.useMemo(()=>{const e=(R==null?void 0:R.contextMenu)||t.gridProps.contextMenu,n=typeof e=="function"?e(g):e;if(n&&g.offset){const o=g.dataItem?Le.GridContextMenuAnchorPart.body:Le.GridContextMenuAnchorPart.head,r=n[o],a=g.dataItem?ye:we;return r===!1?void 0:r===!0||r===void 0?a:r}},[t.gridProps.contextMenu,g,ye,we,R]),Ne=e=>{var l,u,f,h,w,re,C,B,j;const n=e.event.item,o={target:E.current,syntheticEvent:e.event.syntheticEvent,nativeEvent:e.event.nativeEvent,menuItem:n,...e};t.gridProps.onContextMenuItemClick&&s(t.gridProps.onContextMenuItemClick,o);const r=y(),a={selectedField:"",componentId:t.id,dataItems:r,dataItem:e.dataItem,startRowIndex:-1,endRowIndex:-1,startColIndex:-1,endColIndex:-1,ctrlKey:!1,altKey:!1,metaKey:!1,shiftKey:!1,isDrag:!1,...d.getSelectionOptions(t.gridProps.selectable),...o},c=r.findIndex(_=>_===e.dataItem);switch((l=n.data)==null?void 0:l.action){case"SortCommand":if(R){const _=(u=n.name)==null?void 0:u.toLowerCase().includes("asc"),At=((f=n.name)==null?void 0:f.toLowerCase().includes("desc"))?"desc":void 0,Gt=_?"asc":At,Ht=n.name?Gt:void 0;Se(e.event.syntheticEvent,R,Ht)}break;case"SelectRowCommand":ot(a);break;case"SelectAllRowsCommand":rt(a);break;case"ExportPDFCommand":oe();break;case"ClearSelectionCommand":at(a);break;case"ReorderRowCommand":W.current=e.dataItem,(h=n.name)!=null&&h.toLowerCase().includes("rowup")&&c>0&&F(e.event.syntheticEvent,c-1,"before"),(w=n.name)!=null&&w.toLowerCase().includes("rowdown")&&c<r.length-1&&F(e.event.syntheticEvent,c+1,"after"),(re=n.name)!=null&&re.toLowerCase().includes("rowtop")&&F(e.event.syntheticEvent,0,"before"),(C=n.name)!=null&&C.toLowerCase().includes("rowbottom")&&F(e.event.syntheticEvent,r.length-1,"after");break;case"CopySelectionCommand":Q(d.ClipboardActionType.copy,e.event.nativeEvent,{copyHeaders:!((B=n.name)!=null&&B.toLowerCase().includes("noheaders"))},e.dataItem,e.field);break;case"PasteCommand":Q(d.ClipboardActionType.paste,e.event.nativeEvent,{copyHeaders:!((j=n.name)!=null&&j.toLowerCase().includes("noheaders"))},e.dataItem,e.field);break}Ee()},X=()=>{const e=t.columnsRef.filter(n=>n.declarationIndex>=0&&n.parentIndex===-1);return A.sanitizeColumns(e)},qe=(e,n,o)=>{if(t.gridProps.onContextMenu&&I){const r={target:E.current,syntheticEvent:e,nativeEvent:e.nativeEvent,dataItem:n,field:o};s(t.gridProps.onContextMenu,r)}t.gridProps.contextMenu&&Fe({event:e,dataItem:n,field:o})},Ue=e=>{if(e.target!==e.currentTarget)return;clearTimeout(he.current),P.current&&(P.current.table=M.current);const n=e.currentTarget.scrollLeft,o=e.currentTarget.scrollTop;t.gridProps.columnVirtualization&&(!D||o===Pe.current)&&(he.current=window.setTimeout(()=>{N()},0)),t.gridProps.scrollLeftRef&&(t.gridProps.scrollLeftRef.current=n),V.current&&V.current.setScrollLeft(n),U.current&&U.current.setScrollLeft(n),P.current&&o!==Pe.current&&P.current.scrollHandler(e),t.gridProps.onScroll&&I&&s(t.gridProps.onScroll,{...m(e)}),Pe.current=o},Ve=e=>{d.tableKeyboardNavigation.onKeyDown(e,{navigatable:t.gridProps.navigatable||!1,contextStateRef:K,navigationStateRef:G,onNavigationAction:Be,columns:X()}),d.tableKeyboardNavigation.onGetSnapshotBeforeUpdate({document:S(),contextStateRef:K,navigationStateRef:G});const n={dataItems:y(),mode:v.mode,cell:v.cell,componentId:t.id,selectedField:"",...m(e)};t.gridProps.onKeyDown&&I&&s(t.gridProps.onKeyDown,n)},We=e=>{d.tableKeyboardNavigation.onFocus(e,{navigatable:!!t.gridProps.navigatable,contextStateRef:K})},Be=e=>{if(e.action==="moveToNextPage"&<(e.event),e.action==="moveToPrevPage"&&st(e.event),e.focusElement&&e.action==="reorderToRight"){const n=parseInt(e.focusElement.ariaColIndex,10)-1;n<t.columnsRef.length-1&&ce(n,n+1,e.event)}if(e.focusElement&&e.action==="reorderToLeft"){const n=parseInt(e.focusElement.ariaColIndex,10)-1;n>0&&ce(n,n-1,e.event)}if(e.action==="select"&&et(e.event),t.gridProps.onNavigationAction&&I){const n={focusElement:e.focusElement,...m(e.event)};s(t.gridProps.onNavigationAction,n)}},je=(e,n)=>{t.gridProps.onRowClick&&e.target.nodeName==="TD"&&s(t.gridProps.onRowClick,{dataItem:n,...m(e)})},_e=(e,n)=>{t.gridProps.onRowDoubleClick&&e.target.nodeName==="TD"&&s(t.gridProps.onRowDoubleClick,{dataItem:n,...m(e)})},$e=e=>{t.gridProps.onItemChange&&s(t.gridProps.onItemChange,{...m(e.syntheticEvent),dataItem:e.dataItem,field:void 0,value:void 0})},Xe=e=>{t.gridProps.onItemChange&&t.gridProps.onEditChange&&s(t.gridProps.onEditChange,{edit:{},...m(e.syntheticEvent)})},Je=(e,n,o)=>{if(Oe.enabled&&Oe.mode==="incell"&&t.gridProps.dataItemKey){const r=d.editReducer(t.gridProps.edit,{type:d.EDIT_ACTION.ENTER_FIELD_EDIT,payload:{id:n[t.gridProps.dataItemKey],field:o}});t.gridProps.onEditChange&&s(t.gridProps.onEditChange,{edit:r,...m(e)})}},Ye=(e,n)=>{var r;if(d.getDetailExpandableOptions(t.detailExpandable).enabled){const a=d.detailExpandReducer((r=t.gridProps.detailExpand)!=null?r:{},e);t.gridProps.onDetailExpandChange&&s(t.gridProps.onDetailExpandChange,{...m(n),detailExpand:a})}},Qe=(e,n)=>{var r;const o=d.getGroupExpandableOptions(typeof t.gridProps.groupable=="object"?t.gridProps.groupable.expandable!==!1:t.gridProps.groupable);if(o.enabled){const a=d.groupExpandReducer((r=t.gridProps.groupExpand)!=null?r:[],e,o);t.gridProps.onGroupExpandChange&&s(t.gridProps.onGroupExpandChange,{...m(n),groupExpand:a})}},Se=(e,n,o)=>{const{allowUnsort:r,mode:a}=ze.normalizeSortable(t.gridProps.sortable||!1,n.sortable||!1),c=(t.gridProps.sort||[]).filter(f=>f.field===n.field)[0],l=o||ze.firstLevelSortSeqMap[r][c&&c.dir||""],u=a==="single"?[]:(t.gridProps.sort||[]).filter(f=>f.field!==n.field);l!==""&&n.field&&u.push({field:n.field,dir:l}),xe(u,e)},Ze=e=>{t.gridProps.onItemChange&&s(t.gridProps.onItemChange,{...m(e.syntheticEvent),dataItem:e.dataItem,dataIndex:e.dataIndex,field:e.field,value:e.value})},pe=e=>{var n;if(t.gridProps.onSelectionChange&&v.enabled){const{event:o,dataItem:r,dataIndex:a,columnIndex:c}=e,l={...m(o.syntheticEvent),dataItem:r,startColIndex:c,endColIndex:c,startRowIndex:a,endRowIndex:a,dataItems:y(),altKey:!1,ctrlKey:!1,shiftKey:!1,metaKey:!1,mode:v.mode,cell:v.cell,isDrag:!1,componentId:t.id,selectedField:""};s(t.gridProps.onSelectionChange,{...l,select:t.gridProps.dataItemKey?d.getSelectedState({event:l,selectedState:(n=t.gridProps.select)!=null?n:{},dataItemKey:t.gridProps.dataItemKey}):{}})}},et=e=>{var f,h;if(!v.enabled||!t.gridProps.dataItemKey)return;const n={dataItems:y(),mode:v.mode,cell:v.cell,componentId:t.id,selectedField:"",...m(e)},o=d.getSelectedStateFromKeyDown({event:n,selectedState:(f=t.gridProps.select)!=null?f:{},dataItemKey:t.gridProps.dataItemKey});if(o===t.gridProps.select)return;const r=e.target,a=d.closestTagName(r,"TD"),c=d.closestTagName(r,"TR"),l=d.getColumnIndex(a),u=d.getRowIndex(c);if(l!==void 0&&u!==void 0){const w=(h=A.getDataAsArray(t.gridProps.data))==null?void 0:h[u];t.gridProps.onSelectionChange&&s(t.gridProps.onSelectionChange,{...n,select:o,dataItem:w,startRowIndex:u,startColIndex:l,startDataItem:w,endDataItem:w,endRowIndex:u,endColIndex:l,ctrlKey:e.ctrlKey,altKey:e.altKey,metaKey:e.metaKey,shiftKey:e.shiftKey,isDrag:!1})}},tt=e=>{if(t.gridProps.onHeaderSelectionChange&&v.enabled){const n=y();s(t.gridProps.onHeaderSelectionChange,{select:e.syntheticEvent.target.checked?n.reduce((o,r)=>(t.gridProps.dataItemKey&&b.getter(t.gridProps.dataItemKey)(r)!==void 0&&(o[b.getter(t.gridProps.dataItemKey)(r)]=!0),o),{}):{},field:e.field,nativeEvent:e.syntheticEvent&&e.syntheticEvent.nativeEvent,syntheticEvent:e.syntheticEvent,target:E.current,dataItems:n})}},J=(e,n)=>{t.gridProps.onSelectionChange&&v.enabled&&s(t.gridProps.onSelectionChange,{...e,select:n})},nt=e=>{var n;if(t.gridProps.onSelectionChange&&v.enabled){const o=y()[e.startRowIndex],r=y()[e.endRowIndex],a={syntheticEvent:void 0,target:E.current,selectedField:"",componentId:t.id,dataItems:y(),dataItem:null,startDataItem:o,endDataItem:r,...e},c=d.getSelectedState({event:a,selectedState:(n=t.gridProps.select)!=null?n:{},dataItemKey:t.gridProps.dataItemKey});J(a,c)}},rt=e=>{if(t.gridProps.onSelectionChange&&v.enabled){const n=e.dataItems[0],o=e.dataItems[e.dataItems.length-1],r={},a={...e,startDataItem:n,endDataItem:o,startRowIndex:0,endRowIndex:e.dataItems.length-1,startColIndex:0,endColIndex:t.columnsRef.length-1};e.dataItems.forEach(c=>{const u=b.getter(t.gridProps.dataItemKey)(c);r[u]=e.cell?[...Array(t.columnsRef.length).keys()]:!0}),J(a,r)}},ot=e=>{if(t.gridProps.onSelectionChange&&v.enabled){const o=b.getter(t.gridProps.dataItemKey)(e.dataItem),r=0,a=t.columnsRef.length-1,c=e.dataItems.findIndex(w=>w[t.gridProps.dataItemKey]===e.dataItem[t.gridProps.dataItemKey]),f={...e,startDataItem:c,endDataItem:c,startRowIndex:c,endRowIndex:c,startColIndex:r,endColIndex:a},h=e.mode==="multiple"?t.gridProps.select||{}:{};h[o]===!0||Array.isArray(h[o])&&h[o].length===t.columnsRef.length?delete h[o]:h[o]=e.cell?[...Array(t.columnsRef.length).keys()]:!0,J(f,h)}},at=e=>{t.gridProps.onSelectionChange&&v.enabled&&J(e,{})},z=(e,n,o,r,a)=>{dt();const c=t.gridProps.onDataStateChange;if(e){const l={...m(r),...n,targetEvent:a};s(e,l)}else c&&s(c,{...m(r),targetEvent:a||{},dataState:{...Ct(),...o}})},Y=(e,n,o)=>{var r;D&&t.gridProps.pageable&&((r=P.current)==null||r.reset()),z(t.gridProps.onPageChange,{page:e},{skip:e.skip,take:e.take},n,o)},it=(e,n,o)=>{var r;t.gridProps.pageable||(r=t.gridProps.group)!=null&&r.length?t.gridProps.virtualSkipRef&&(t.gridProps.virtualSkipRef.current=e.skip,N()):Y(e,n,o)},ct=()=>{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},dt=()=>{D&&t.gridProps.virtualSkipRef&&(t.gridProps.virtualSkipRef.current=0)},lt=e=>{var a,c;const n=(c=(a=t.gridProps.take)!=null?a:t.gridProps.pageSize)!=null?c:0,o=(t.gridProps.skip||0)+n,r=ct();o<r&&Y({skip:o,take:n},e)},st=e=>{var r,a;const n=(a=(r=t.gridProps.take)!=null?r:t.gridProps.pageSize)!=null?a:0,o=(t.gridProps.skip||0)-n;o>=0&&Y({skip:o,take:n},e)},ut=e=>{Y({skip:e.skip,take:e.take},e.syntheticEvent,e.targetEvent)},xe=(e,n)=>{z(t.gridProps.onSortChange,{sort:e},{sort:e,...D&&!t.gridProps.pageable?{skip:0}:{}},n)},gt=(e,n)=>{z(t.gridProps.onFilterChange,{filter:e},{filter:e,skip:0},n)},ft=e=>{const n=t.gridProps.searchFields||t.columnsRef.map(a=>a.field)||[],o=e.nativeEvent.target.value,r={logic:"or",filters:n.filter(a=>a!==void 0).map(a=>{var c;return typeof a=="string"?{field:a,value:o,operator:"contains"}:{value:o,operator:(c=a.operator)!=null?c:"contains",field:a.field,ignoreCase:a.ignoreCase}})};z(t.gridProps.onSearchChange,{search:r},{},e.syntheticEvent)},oe=()=>{var e;(e=Ie.current)==null||e.save()},mt=async e=>{var n,o;(n=t.gridProps)!=null&&n.onPdfExport&&await((o=t.gridProps)==null?void 0:o.onPdfExport(e))},ae=(e,n)=>{const o=n.nativeEvent?n:{nativeEvent:n.nativeEvent||n.originalEvent};let r={};t.isVirtualScroll&&e.length&&!t.gridProps.pageable&&(r={take:void 0}),e.length===0&&t.gridProps.navigatable&&(ge.current=!0),z(t.gridProps.onGroupChange,{group:e},{group:e,skip:0,...r},o)},ie=e=>{if(t.gridProps.onColumnsStateChange){const n={target:E.current,columnsState:e};s(t.gridProps.onColumnsStateChange,n)}},ce=(e,n,o)=>{const{columnsRef:r,columnsState:a}=t,c=r[e],l=A.getFlatColumnsState(a),u=c.depth,f=C=>{do C++;while(C<r.length&&r[C].depth>u);return C},h=r.splice(e,f(e)-e);r.splice(e<n?f(n-h.length):n,0,...h),r.filter(C=>C.declarationIndex>=0).forEach((C,B)=>{C.orderIndex=B;const j=l.find(_=>_.id===C.id);j&&(j.orderIndex=B)});const w=r[e].locked&&r[n].locked;d.updateLeft(t.columnsMapRef,r,w||te.current),d.updateRight(t.columnsMapRef,r,w||te.current),ue.current&&(te.current=!1,ue.current=!1);const re=X();if(N(),t.gridProps.onColumnReorder){const C={target:E.current,columns:re,columnId:c.id,nativeEvent:o};s(t.gridProps.onColumnReorder,C)}ie(a)},F=(e,n,o)=>{const r=typeof t.gridProps.rowReorderable=="object"?t.gridProps.rowReorderable.enabled:t.gridProps.rowReorderable;if(o==="forbidden"||!r||!W.current)return;const a=t.dataRef[n];t.gridProps.onRowReorder&&s(t.gridProps.onRowReorder,{draggedDataItems:[W.current],droppedDataItem:a==null?void 0:a.dataItem,dropPosition:o,nativeEvent:e.originalEvent,dragEvent:e,target:E.current}),W.current=null},Pt=(e,n,o)=>{if(t.gridProps.group===void 0)return;const r=t.gridProps.group.slice();r.splice(n,0,...r.splice(e,1)),ae(r,o)},De=(e,n,o)=>{const r=t.columnsRef[e].field;if(!r)return;const a=(t.gridProps.group||[]).slice();a.splice(n,0,{field:r}),ae(a,o)},ht=(e,n)=>{const o=k.current.getCurrentGroupsLength;De(e,o,n)},de=()=>{let e=0;if(!x.current.colGroupMain)return;const n=x.current.colGroupMain.children;for(let o=0;o<n.length;o++){const r=n[o].width;if(!r){e=0;break}e+=parseFloat(r.toString())}e=Math.round(e),V.current&&V.current.setWidth(e),U.current&&U.current.setWidth(e),M.current&&(M.current.style.width=e?e+"px":"")},ke=()=>{var e;t.gridProps.widthRef&&(t.gridProps.widthRef.current=((e=T.current)==null?void 0:e.offsetWidth)||0)},Ke=()=>{var e;t.gridProps.containerHeightRef&&(t.gridProps.containerHeightRef.current=((e=q.current)==null?void 0:e.offsetHeight)||0)},bt=()=>{const e=t.gridProps.minRowHeightRef;if(e&&!e.current&&!t.gridProps.rowHeight){const n=A.calcRowHeight(O.current);n&&(e.current=n,N())}},Q=i.useCallback((e,n,o,r,a)=>{var f;if(!Rt()&&!o||!e)return;const c={type:e,nativeEvent:n,columns:t.columnsRef,dataItemKey:t.gridProps.dataItemKey||"",dataItem:r,field:a,...typeof t.gridProps.clipboard!="boolean"?t.gridProps.clipboard:{},...o},l=y(),u=d.populateClipboardData({event:c,data:l,selectedState:(f=t.gridProps.select)!=null?f:{},previousCopiedItems:Ge.current});e!==d.ClipboardActionType.paste&&(Ge.current=u.copiedItems),t.gridProps.onClipboard&&I&&s(t.gridProps.onClipboard,{...c,...u})},[t.gridProps.select,t.gridProps.dataItemKey,t.gridProps.data,t.gridProps.clipboard,t.gridProps.onClipboard]),Rt=()=>{var a,c,l;if(!b.canUseDOM)return!1;const e=b.getActiveElement(S()),n=e?e.matches(".k-table-td")?e:(a=S())==null?void 0:a.body:(c=S())==null?void 0:c.body,o=n.closest(".k-grid-container"),r=n&&((l=T.current)==null?void 0:l.contains(n));return!!(n&&r&&o)},vt=(e,n,o,r,a,c,l)=>{de(),te.current=!0,ue.current=!0,t.gridProps.onColumnResize&&I&&s(t.gridProps.onColumnResize,{columns:X(),nativeEvent:r,targetColumnId:l,index:e,newWidth:n,oldWidth:o,end:a,target:E.current}),a&&ie(c)},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}},m=e=>({nativeEvent:e&&e.nativeEvent,syntheticEvent:e,target:E.current}),It=e=>({...e,nativeEvent:void 0,syntheticEvent:void 0,target:void 0,targetEvent:void 0,focusElement:void 0}),s=(e,n)=>{if(t.gridProps.isClient){e(n);return}e(It(n))},Et=()=>{var e,n,o;if(O.current&&((e=O.current)==null?void 0:e.getElementsByClassName("k-grid-edit-row").length)>0){me.current=!1,(n=document.activeElement)!=null&&n.closest(".k-grid-edit-row")?fe.current=document.activeElement:fe.current=void 0;const r=Array.from((o=O.current)==null?void 0:o.getElementsByClassName("k-grid-edit-row"));r.length>Re.current.length?ee.current=r.filter(a=>!Re.current.includes(a))[0]:r.length===1&&(ee.current=r[0],me.current=!0),Re.current=r}},y=()=>t.dataRef.filter(e=>e.rowType==="data").map(e=>e.dataItem),S=()=>{var e;if(b.canUseDOM)return((e=Z())==null?void 0:e.ownerDocument)||document},Z=()=>T.current,le=i.useCallback(e=>{var r,a;if(!P.current||!((r=P.current)!=null&&r.container)||t.gridProps.scrollable==="none")return;H.current&&H.current.disconnect();const{rowIndex:n}=e,o=Z();if(D){const c=((a=P.current.rowHeightService)==null?void 0:a.offset(n))||0;P.current.container.scroll(0,c)}else if(o){const c=n<1?o.querySelector("tbody > tr:nth-child(1)"):o.querySelector(`tbody > tr:nth-child(${n+1})`);c&&q.current&&(q.current.scrollTop=c.offsetTop)}},[t.gridProps.scrollable]),Me=e=>JSON.stringify(e.map(n=>({id:n.id,field:n.field,title:n.title,children:n.children}))),wt=()=>Me(Mt)===Me(t.columnsRef),yt=()=>{ne.current=window.innerWidth,wt()||N()},St=()=>{var c;const{virtualTotal:e,virtualPageSize:n,gridProps:o}=t,r=P.current,a=t.gridProps.rowHeight||((c=o.minRowHeightRef)==null?void 0:c.current)||0;r&&(r.fixedScroll=o.fixedScroll||!1,r.PageChange=it,r.pageSize=n,r.scrollableVirtual=D,r.container=q.current,r.tableBody=O.current,r.scrollHeightContainer=Ae.current,r.table=M.current,(!r.rowHeightService||r.total!==e)&&a&&(r.total=e,r.rowHeightService=new b.RowHeightService(e,a)))},Te=i.useCallback(e=>{const n={rowIndex:be.current};e.forEach(o=>{o.isIntersecting||le(n)})},[le]),N=()=>{t.gridProps.forceUpdate&&t.gridProps.forceUpdate()},xt=e=>e.left!==void 0?ve!=="rtl"?{left:e.left,right:e.right}:{left:e.right,right:e.left}:{},E=i.useRef(null),P=i.useRef(void 0),x=i.useRef(void 0),k=i.useRef(void 0),K=i.useRef(void 0),G=i.useRef(void 0),p=i.useRef(void 0),H=i.useRef(null),O=i.useRef(null),Dt=i.useRef(null),q=i.useRef(null),M=i.useRef(null),se=i.useRef(null),T=i.useRef(null),Ae=i.useRef(null),U=i.useRef(null),V=i.useRef(null),ue=i.useRef(!1),ge=i.useRef(!1),ee=i.useRef(void 0),fe=i.useRef(void 0),me=i.useRef(!1),te=i.useRef(!0),Pe=i.useRef(0),he=i.useRef(void 0),be=i.useRef(void 0),Re=i.useRef([]),Ge=i.useRef([]),ne=i.useRef(0),W=i.useRef(null),kt=i.useRef(null),Kt=i.useRef(null),ve=b.useDir(T),D=t.isVirtualScroll,Mt=i.useMemo(()=>i.Children.toArray(t.gridProps.children),[t.gridProps.children]),He=t.gridProps.groupable===!0||typeof t.gridProps.groupable=="object"&&t.gridProps.groupable.enabled!==!1,v=d.getSelectionOptions(t.gridProps.selectable),Oe=d.getEditableOptions(t.gridProps.editable),Tt=ne.current&&Ce&&ne.current<=Ce.medium&&t.gridProps.adaptive;return i.useMemo(()=>{d.tableKeyboardNavigation.onConstructor({navigatable:!!t.gridProps.navigatable,contextStateRef:K,navigationStateRef:G,idPrefix:t.id}),P.current=new Nt.VirtualScroll},[]),i.useMemo(()=>{var e;(e=P.current)==null||e.reset()},[t.gridProps.scrollable,t.gridProps.total,t.gridProps.filter,t.gridProps.group,He,t.gridProps.sort,t.gridProps.rowHeight]),i.useEffect(()=>(t.gridProps.clipboard&&(p.current=new d.ClipboardService(Q),p.current.addEventListeners(S())),()=>{p.current&&p.current.removeEventListeners(S())}),[t.gridProps.onClipboard,t.gridProps.clipboard,Q,S]),i.useEffect(()=>(t.gridProps.columnVirtualization&&!window.navigator.userAgent.match(Ft.SAFARI_REGEX)&&(se.current&&(se.current.style.display="block"),M.current&&(M.current.style.display="block")),ke(),de(),b.setScrollbarWidth(),d.tableKeyboardNavigation.onComponentDidMount({scope:T.current||void 0,contextStateRef:K,navigationStateRef:G}),()=>{clearTimeout(he.current)}),[]),i.useEffect(()=>{var e;ke(),de(),b.setScrollbarWidth(),D&&(Ke(),bt(),(e=P.current)==null||e.update()),Et(),d.tableKeyboardNavigation.onComponentDidUpdate({scope:T.current||void 0,contextStateRef:K,navigationStateRef:G,focusFirst:ge.current,newEditableRow:ee.current,singleEditRow:me.current,lastActiveElement:fe.current,navigatable:t.gridProps.navigatable}),ge.current=!1,ee.current=void 0}),i.useEffect(()=>{if(b.canUseDOM){const e={rootMargin:"0px",threshold:.9};H.current=window.IntersectionObserver&&new window.IntersectionObserver(Te,e)||null}},[Te]),i.useEffect(()=>{var n;let e;return b.canUseDOM&&window.ResizeObserver&&(e=new window.ResizeObserver(()=>{yt(),D&&Ke()}),e.observe((n=S())==null?void 0:n.body)),()=>{e==null||e.disconnect()}},[]),i.useImperativeHandle(E,()=>({get element(){return Z()},props:t.gridProps,get columns(){return X()},scrollIntoView:e=>{var r;if(!((r=P.current)!=null&&r.container)||t.gridProps.scrollable==="none")return;const{rowIndex:n}=e;be.current=n;const o=Z();if(H.current&&o){H.current.disconnect();const a=o.querySelector(`[absolute-row-index="${be.current}"]`);a?H.current.observe(a):le(e)}},fitColumns:e=>{x.current.dblClickHandler(null,e)},exportAsPdf:oe})),i.useImperativeHandle(t.gridRef,()=>E.current),i.useMemo(()=>{x.current=new Lt.ColumnResize(vt)},[t.gridProps.onColumnResize,t.columnsRef]),i.useMemo(()=>{k.current=new zt.CommonDragLogic(ce,Pt,De)},[t.gridProps.onColumnReorder,t.gridProps.onGroupChange,t.gridProps.group,t.columnsRef,t.gridProps.groupable]),x.current.resizable=t.gridProps.resizable||!1,x.current.columns=t.columnsRef,x.current.columnsState=b.cloneArray(t.columnsState),k.current.reorderable=t.gridProps.reorderable||!1,k.current.groupable=He,k.current.columns=t.columnsRef,k.current.dir=ve,St(),i.createElement(Vt.GridContext.Provider,{value:{isClient:I,rowReorder:F,activeDragRowDataItemRef:W,reorderRowDragTargetRef:kt,reorderRowDropTargetRef:Kt,dir:ve,getCellPositionStyle:xt,dataItemKey:t.gridProps.dataItemKey,columnsState:t.columnsState,columnsRef:t.columnsRef,onColumnsStateChange:ie,groupChange:ae,selectionRelease:nt,pagerPageChange:ut,onContextMenu:qe,rowClick:je,rowDblClick:_e,cellClick:Je,headerCellClick:Se,itemChange:Ze,onDialogEditCancel:Xe,onDialogEditSubmit:$e,sortable:t.gridProps.sortable,sort:t.gridProps.sort,defaultSort:t.gridProps.defaultSort,sortChange:xe,filterable:t.gridProps.filterable,filter:t.gridProps.filter,defaultFilter:t.gridProps.defaultFilter,filterOperators:t.gridProps.filterOperators||Wt.operators,filterChange:gt,searchChange:ft,exportAsPdf:oe,onHeaderSelectionChange:tt,columnGroupChange:ht,onKeyDown:Ve,onFocus:We,scrollHandler:Ue,selectionChange:pe,mobileMode:Tt,adaptiveColumnMenuRef:ne.current,adpativeTitle:t.gridProps.adaptiveTitle,adaptive:t.gridProps.adaptive,dispatchDetailExpand:Ye,dispatchGroupExpand:Qe,columnResizeRef:x,dragLogicRef:k,navigationStateRef:G,tableElementRef:M,tableBodyElementRef:O,headerElementRef:Dt,containerElementRef:q,headTableElementRef:se,elementRef:T,virtualScrollHeightContainerRef:Ae,footerRef:U,headerRef:V,vsRef:P}},i.createElement(d.TableKeyboardNavigationContext.Provider,{value:K.current},t.children),i.createElement(qt.GridContextMenu,{show:g.show&&($==null?void 0:$.length),dataItem:g.dataItem,field:g.field,items:$,offset:g.offset,onClose:Ee,onSelect:Ne}),t.gridProps.pdf&&i.createElement(Ut.BasePDFExport,{gridProps:t.gridProps,innerGrid:t.innerGrid,pdf:typeof t.gridProps.pdf=="object"?t.gridProps.pdf:{},onPdfExport:mt,ref:e=>Ie.current=e}))};exports.GridClientWrapper=jt;
|
package/GridClientWrapper.mjs
CHANGED
|
@@ -16,13 +16,14 @@ import { getDefaultHeadContextMenuItems as ln, getDefaultBodyContextMenuItems as
|
|
|
16
16
|
import { VirtualScroll as hn } from "./VirtualScroll.mjs";
|
|
17
17
|
import { GridContextMenu as Rn } from "./contextMenu/GridContextMenu.mjs";
|
|
18
18
|
import { GridContextMenuAnchorPart as Ve } from "./contextMenu/enums.mjs";
|
|
19
|
-
import { normalizeSortable as
|
|
19
|
+
import { normalizeSortable as bn, firstLevelSortSeqMap as vn } from "./sortCommon.mjs";
|
|
20
20
|
import { BasePDFExport as In } from "./BasePDFExport.mjs";
|
|
21
21
|
import { GridContext as Cn } from "./utils/GridContext.mjs";
|
|
22
|
-
|
|
23
|
-
|
|
22
|
+
import { operators as En } from "./filterCommon.mjs";
|
|
23
|
+
const Fn = (t) => {
|
|
24
|
+
const S = t.gridProps.isClient, [b, Ce] = a.useState({}), Ee = Nt(), we = a.useRef(null), Be = (e) => {
|
|
24
25
|
e.event.preventDefault(), Ce({
|
|
25
|
-
...
|
|
26
|
+
...b,
|
|
26
27
|
show: !0,
|
|
27
28
|
offset: {
|
|
28
29
|
left: e.event.pageX,
|
|
@@ -33,7 +34,7 @@ const Ln = (t) => {
|
|
|
33
34
|
});
|
|
34
35
|
}, ye = () => {
|
|
35
36
|
Ce({});
|
|
36
|
-
}, P = a.useMemo(() => t.columnsRef.find((e) => e.field ===
|
|
37
|
+
}, P = a.useMemo(() => t.columnsRef.find((e) => e.field === b.field), [t.columnsRef, b]), Se = a.useMemo(() => {
|
|
37
38
|
const e = t.gridProps.sortable && (P == null ? void 0 : P.sortable);
|
|
38
39
|
return ln({
|
|
39
40
|
pdf: !!t.gridProps.pdf,
|
|
@@ -51,15 +52,15 @@ const Ln = (t) => {
|
|
|
51
52
|
rowReorderable: un(t.gridProps.rowReorderable)
|
|
52
53
|
});
|
|
53
54
|
}, [P, t.gridProps.sortable, t.gridProps.selectable, t.gridProps.clipboard]), j = a.useMemo(() => {
|
|
54
|
-
const e = (P == null ? void 0 : P.contextMenu) || t.gridProps.contextMenu, n = typeof e == "function" ? e(
|
|
55
|
-
if (n &&
|
|
56
|
-
const o =
|
|
55
|
+
const e = (P == null ? void 0 : P.contextMenu) || t.gridProps.contextMenu, n = typeof e == "function" ? e(b) : e;
|
|
56
|
+
if (n && b.offset) {
|
|
57
|
+
const o = b.dataItem ? Ve.body : Ve.head, r = n[o], i = b.dataItem ? xe : Se;
|
|
57
58
|
return r === !1 ? void 0 : r === !0 || r === void 0 ? i : r;
|
|
58
59
|
}
|
|
59
|
-
}, [t.gridProps.contextMenu,
|
|
60
|
+
}, [t.gridProps.contextMenu, b, xe, Se, P]), We = (e) => {
|
|
60
61
|
var c, s, u, m, I, ee, R, V, B;
|
|
61
62
|
const n = e.event.item, o = {
|
|
62
|
-
target:
|
|
63
|
+
target: v.current,
|
|
63
64
|
syntheticEvent: e.event.syntheticEvent,
|
|
64
65
|
nativeEvent: e.event.nativeEvent,
|
|
65
66
|
menuItem: n,
|
|
@@ -135,7 +136,7 @@ const Ln = (t) => {
|
|
|
135
136
|
}, je = (e, n, o) => {
|
|
136
137
|
if (t.gridProps.onContextMenu && S) {
|
|
137
138
|
const r = {
|
|
138
|
-
target:
|
|
139
|
+
target: v.current,
|
|
139
140
|
syntheticEvent: e,
|
|
140
141
|
nativeEvent: e.nativeEvent,
|
|
141
142
|
dataItem: n,
|
|
@@ -255,10 +256,10 @@ const Ln = (t) => {
|
|
|
255
256
|
});
|
|
256
257
|
}
|
|
257
258
|
}, De = (e, n, o) => {
|
|
258
|
-
const { allowUnsort: r, mode: i } =
|
|
259
|
+
const { allowUnsort: r, mode: i } = bn(
|
|
259
260
|
t.gridProps.sortable || !1,
|
|
260
261
|
n.sortable || !1
|
|
261
|
-
), d = (t.gridProps.sort || []).filter((u) => u.field === n.field)[0], c = o ||
|
|
262
|
+
), d = (t.gridProps.sort || []).filter((u) => u.field === n.field)[0], c = o || vn[r][d && d.dir || ""], s = i === "single" ? [] : (t.gridProps.sort || []).filter((u) => u.field !== n.field);
|
|
262
263
|
c !== "" && n.field && s.push({ field: n.field, dir: c }), ke(s, e);
|
|
263
264
|
}, nt = (e) => {
|
|
264
265
|
t.gridProps.onItemChange && l(t.gridProps.onItemChange, {
|
|
@@ -344,7 +345,7 @@ const Ln = (t) => {
|
|
|
344
345
|
field: e.field,
|
|
345
346
|
nativeEvent: e.syntheticEvent && e.syntheticEvent.nativeEvent,
|
|
346
347
|
syntheticEvent: e.syntheticEvent,
|
|
347
|
-
target:
|
|
348
|
+
target: v.current,
|
|
348
349
|
dataItems: n
|
|
349
350
|
});
|
|
350
351
|
}
|
|
@@ -358,7 +359,7 @@ const Ln = (t) => {
|
|
|
358
359
|
if (t.gridProps.onSelectionChange && h.enabled) {
|
|
359
360
|
const o = C()[e.startRowIndex], r = C()[e.endRowIndex], i = {
|
|
360
361
|
syntheticEvent: void 0,
|
|
361
|
-
target:
|
|
362
|
+
target: v.current,
|
|
362
363
|
selectedField: "",
|
|
363
364
|
componentId: t.id,
|
|
364
365
|
dataItems: C(),
|
|
@@ -487,7 +488,7 @@ const Ln = (t) => {
|
|
|
487
488
|
}, oe = () => {
|
|
488
489
|
var e;
|
|
489
490
|
(e = we.current) == null || e.save();
|
|
490
|
-
},
|
|
491
|
+
}, bt = async (e) => {
|
|
491
492
|
var n, o;
|
|
492
493
|
(n = t.gridProps) != null && n.onPdfExport && await ((o = t.gridProps) == null ? void 0 : o.onPdfExport(e));
|
|
493
494
|
}, ie = (e, n) => {
|
|
@@ -502,7 +503,7 @@ const Ln = (t) => {
|
|
|
502
503
|
}, ae = (e) => {
|
|
503
504
|
if (t.gridProps.onColumnsStateChange) {
|
|
504
505
|
const n = {
|
|
505
|
-
target:
|
|
506
|
+
target: v.current,
|
|
506
507
|
columnsState: e
|
|
507
508
|
};
|
|
508
509
|
l(t.gridProps.onColumnsStateChange, n);
|
|
@@ -524,7 +525,7 @@ const Ln = (t) => {
|
|
|
524
525
|
const ee = _();
|
|
525
526
|
if (z(), t.gridProps.onColumnReorder) {
|
|
526
527
|
const R = {
|
|
527
|
-
target:
|
|
528
|
+
target: v.current,
|
|
528
529
|
columns: ee,
|
|
529
530
|
columnId: d.id,
|
|
530
531
|
nativeEvent: o
|
|
@@ -543,9 +544,9 @@ const Ln = (t) => {
|
|
|
543
544
|
dropPosition: o,
|
|
544
545
|
nativeEvent: e.originalEvent,
|
|
545
546
|
dragEvent: e,
|
|
546
|
-
target:
|
|
547
|
+
target: v.current
|
|
547
548
|
}), U.current = null;
|
|
548
|
-
},
|
|
549
|
+
}, vt = (e, n, o) => {
|
|
549
550
|
if (t.gridProps.group === void 0)
|
|
550
551
|
return;
|
|
551
552
|
const r = t.gridProps.group.slice();
|
|
@@ -632,7 +633,7 @@ const Ln = (t) => {
|
|
|
632
633
|
newWidth: n,
|
|
633
634
|
oldWidth: o,
|
|
634
635
|
end: i,
|
|
635
|
-
target:
|
|
636
|
+
target: v.current
|
|
636
637
|
}), i && ae(d);
|
|
637
638
|
}, yt = () => {
|
|
638
639
|
var e;
|
|
@@ -646,7 +647,7 @@ const Ln = (t) => {
|
|
|
646
647
|
}, g = (e) => ({
|
|
647
648
|
nativeEvent: e && e.nativeEvent,
|
|
648
649
|
syntheticEvent: e,
|
|
649
|
-
target:
|
|
650
|
+
target: v.current
|
|
650
651
|
}), St = (e) => ({
|
|
651
652
|
...e,
|
|
652
653
|
nativeEvent: void 0,
|
|
@@ -665,9 +666,9 @@ const Ln = (t) => {
|
|
|
665
666
|
if (A.current && ((e = A.current) == null ? void 0 : e.getElementsByClassName("k-grid-edit-row").length) > 0) {
|
|
666
667
|
me.current = !1, (n = document.activeElement) != null && n.closest(".k-grid-edit-row") ? fe.current = document.activeElement : fe.current = void 0;
|
|
667
668
|
const r = Array.from((o = A.current) == null ? void 0 : o.getElementsByClassName("k-grid-edit-row"));
|
|
668
|
-
r.length >
|
|
669
|
-
(i) => !
|
|
670
|
-
)[0] : r.length === 1 && (Q.current = r[0], me.current = !0),
|
|
669
|
+
r.length > be.current.length ? Q.current = r.filter(
|
|
670
|
+
(i) => !be.current.includes(i)
|
|
671
|
+
)[0] : r.length === 1 && (Q.current = r[0], me.current = !0), be.current = r;
|
|
671
672
|
}
|
|
672
673
|
}, C = () => t.dataRef.filter((e) => e.rowType === "data").map((e) => e.dataItem), E = () => {
|
|
673
674
|
var e;
|
|
@@ -705,7 +706,7 @@ const Ln = (t) => {
|
|
|
705
706
|
[le]
|
|
706
707
|
), z = () => {
|
|
707
708
|
t.gridProps.forceUpdate && t.gridProps.forceUpdate();
|
|
708
|
-
}, Mt = (e) => e.left !== void 0 ?
|
|
709
|
+
}, Mt = (e) => e.left !== void 0 ? ve !== "rtl" ? { left: e.left, right: e.right } : { left: e.right, right: e.left } : {}, v = a.useRef(null), f = a.useRef(void 0), w = a.useRef(void 0), x = a.useRef(void 0), D = a.useRef(void 0), M = a.useRef(void 0), Y = a.useRef(void 0), T = a.useRef(null), A = a.useRef(null), Tt = a.useRef(null), F = a.useRef(null), k = a.useRef(null), se = a.useRef(null), K = a.useRef(null), Ge = a.useRef(null), O = a.useRef(null), N = a.useRef(null), ue = a.useRef(!1), ge = a.useRef(!1), Q = a.useRef(void 0), fe = a.useRef(void 0), me = a.useRef(!1), Z = a.useRef(!0), Pe = a.useRef(0), he = a.useRef(void 0), Re = a.useRef(void 0), be = a.useRef([]), Le = a.useRef([]), p = a.useRef(0), U = a.useRef(null), At = a.useRef(null), Ht = a.useRef(null), ve = Vt(K), y = t.isVirtualScroll, Gt = a.useMemo(() => a.Children.toArray(t.gridProps.children), [t.gridProps.children]), ze = t.gridProps.groupable === !0 || typeof t.gridProps.groupable == "object" && t.gridProps.groupable.enabled !== !1, h = re(t.gridProps.selectable), Fe = _t(t.gridProps.editable), Lt = p.current && Ee && p.current <= Ee.medium && t.gridProps.adaptive;
|
|
709
710
|
return a.useMemo(() => {
|
|
710
711
|
H.onConstructor({
|
|
711
712
|
navigatable: !!t.gridProps.navigatable,
|
|
@@ -761,7 +762,7 @@ const Ln = (t) => {
|
|
|
761
762
|
e == null || e.disconnect();
|
|
762
763
|
};
|
|
763
764
|
}, []), a.useImperativeHandle(
|
|
764
|
-
|
|
765
|
+
v,
|
|
765
766
|
() => ({
|
|
766
767
|
get element() {
|
|
767
768
|
return J();
|
|
@@ -788,17 +789,17 @@ const Ln = (t) => {
|
|
|
788
789
|
},
|
|
789
790
|
exportAsPdf: oe
|
|
790
791
|
})
|
|
791
|
-
), a.useImperativeHandle(t.gridRef, () =>
|
|
792
|
+
), a.useImperativeHandle(t.gridRef, () => v.current), a.useMemo(() => {
|
|
792
793
|
w.current = new an(wt);
|
|
793
794
|
}, [t.gridProps.onColumnResize, t.columnsRef]), a.useMemo(() => {
|
|
794
|
-
x.current = new dn(de,
|
|
795
|
+
x.current = new dn(de, vt, Ke);
|
|
795
796
|
}, [
|
|
796
797
|
t.gridProps.onColumnReorder,
|
|
797
798
|
t.gridProps.onGroupChange,
|
|
798
799
|
t.gridProps.group,
|
|
799
800
|
t.columnsRef,
|
|
800
801
|
t.gridProps.groupable
|
|
801
|
-
]), w.current.resizable = t.gridProps.resizable || !1, w.current.columns = t.columnsRef, w.current.columnsState = Bt(t.columnsState), x.current.reorderable = t.gridProps.reorderable || !1, x.current.groupable = ze, x.current.columns = t.columnsRef, x.current.dir =
|
|
802
|
+
]), w.current.resizable = t.gridProps.resizable || !1, w.current.columns = t.columnsRef, w.current.columnsState = Bt(t.columnsState), x.current.reorderable = t.gridProps.reorderable || !1, x.current.groupable = ze, x.current.columns = t.columnsRef, x.current.dir = ve, Kt(), /* @__PURE__ */ a.createElement(
|
|
802
803
|
Cn.Provider,
|
|
803
804
|
{
|
|
804
805
|
value: {
|
|
@@ -807,10 +808,11 @@ const Ln = (t) => {
|
|
|
807
808
|
activeDragRowDataItemRef: U,
|
|
808
809
|
reorderRowDragTargetRef: At,
|
|
809
810
|
reorderRowDropTargetRef: Ht,
|
|
810
|
-
dir:
|
|
811
|
+
dir: ve,
|
|
811
812
|
getCellPositionStyle: Mt,
|
|
812
813
|
dataItemKey: t.gridProps.dataItemKey,
|
|
813
814
|
columnsState: t.columnsState,
|
|
815
|
+
columnsRef: t.columnsRef,
|
|
814
816
|
onColumnsStateChange: ae,
|
|
815
817
|
groupChange: ie,
|
|
816
818
|
selectionRelease: at,
|
|
@@ -823,7 +825,14 @@ const Ln = (t) => {
|
|
|
823
825
|
itemChange: nt,
|
|
824
826
|
onDialogEditCancel: Ze,
|
|
825
827
|
onDialogEditSubmit: Qe,
|
|
828
|
+
sortable: t.gridProps.sortable,
|
|
829
|
+
sort: t.gridProps.sort,
|
|
830
|
+
defaultSort: t.gridProps.defaultSort,
|
|
826
831
|
sortChange: ke,
|
|
832
|
+
filterable: t.gridProps.filterable,
|
|
833
|
+
filter: t.gridProps.filter,
|
|
834
|
+
defaultFilter: t.gridProps.defaultFilter,
|
|
835
|
+
filterOperators: t.gridProps.filterOperators || En,
|
|
827
836
|
filterChange: ht,
|
|
828
837
|
searchChange: Rt,
|
|
829
838
|
exportAsPdf: oe,
|
|
@@ -858,11 +867,11 @@ const Ln = (t) => {
|
|
|
858
867
|
/* @__PURE__ */ a.createElement(
|
|
859
868
|
Rn,
|
|
860
869
|
{
|
|
861
|
-
show:
|
|
862
|
-
dataItem:
|
|
863
|
-
field:
|
|
870
|
+
show: b.show && (j == null ? void 0 : j.length),
|
|
871
|
+
dataItem: b.dataItem,
|
|
872
|
+
field: b.field,
|
|
864
873
|
items: j,
|
|
865
|
-
offset:
|
|
874
|
+
offset: b.offset,
|
|
866
875
|
onClose: ye,
|
|
867
876
|
onSelect: We
|
|
868
877
|
}
|
|
@@ -873,12 +882,12 @@ const Ln = (t) => {
|
|
|
873
882
|
gridProps: t.gridProps,
|
|
874
883
|
innerGrid: t.innerGrid,
|
|
875
884
|
pdf: typeof t.gridProps.pdf == "object" ? t.gridProps.pdf : {},
|
|
876
|
-
onPdfExport:
|
|
885
|
+
onPdfExport: bt,
|
|
877
886
|
ref: (e) => we.current = e
|
|
878
887
|
}
|
|
879
888
|
)
|
|
880
889
|
);
|
|
881
890
|
};
|
|
882
891
|
export {
|
|
883
|
-
|
|
892
|
+
Fn as GridClientWrapper
|
|
884
893
|
};
|
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 strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const Rt=require("react"),c=require("@progress/kendo-react-common"),It=require("@progress/kendo-data-query"),b=require("@progress/kendo-react-data-tools"),Nt=require("./cells/hierarchycell/GridHierarchyCell.js"),qt=require("./cells/editcell/GridEditCell.js"),xt=require("./header/Header.js"),kt=require("./header/HeaderRow.js"),Dt=require("./header/FilterRow.js"),Tt=require("./header/GroupPanel.js"),Ht=require("./footer/Footer.js"),u=require("./utils/index.js"),Pt=require("./cells/datacell/GridCell.js"),We=require("./cells/groupcell/GridGroupCell.js"),Kt=require("./rows/GridRow.js"),At=require("./header/GridHeaderSelectionCell.js"),Ve=require("./components/noRecords/GridNoRecords.js"),je=require("./filterCommon.js"),Ot=require("./footer/FooterRow.js"),Bt=require("./paging/GridPagerSettings.js"),$e=require("./package-metadata.js"),Ft=require("./cells/detailcell/GridDetailCell.js"),Mt=require("./cells/GridDetailHierarchyCell.js"),Qe=require("./components/noRecords/GridNoRecordsContainer.js"),Ue=require("./GridClientWrapper.js"),Lt=require("./components/colGroup/GridColGroup.js"),_t=require("./components/table/GridTable.js"),Je=require("./components/GridDropClue.js"),Xe=require("./components/GridDragClue.js"),Ye=require("./components/table/GridTableBody.js"),zt=require("./components/PagerContainer.js"),Wt=require("./components/table/GridTableScrollable.js"),Ze=require("./components/GridElementContainer.js"),Vt=require("./components/GridContainerElementContainer.js"),jt=require("./components/VirtualScrollHeightContainer.js"),ie=require("./messages/index.js"),$t=require("./components/GridDraggableRowsContainer.js"),Qt=require("./cells/rowreordercell/GridRowReorderCell.js"),Ut=require("./header/client/GridHeaderRowReorderCell.js"),pe=require("./components/GridLoader.js"),Jt=require("./utils/premium.js"),et=require("@progress/kendo-react-intl"),Xt=require("./utils/virtualColumns.js"),Yt=require("./components/GridEditDialog.js"),Zt=require("./cells/datacell/GridCellServer.js"),pt=require("./cells/editcell/GridEditCellServer.js"),el=require("./cells/selectioncell/GridSelectionCellServer.js"),tl=require("./cells/selectioncell/GridSelectionCell.js"),ll=require("./cells/hierarchycell/GridHierarchyCellServer.js"),al=require("./cells/rowreordercell/GridRowReorderCellServer.js"),rl=require("./cells/detailcell/GridDetailCellServer.js"),nl=require("./cells/groupcell/GridGroupCellServer.js");function il(e){const x=Object.create(null,{[Symbol.toStringTag]:{value:"Module"}});if(e){for(const y in e)if(y!=="default"){const G=Object.getOwnPropertyDescriptor(e,y);Object.defineProperty(x,y,G.get?G:{enumerable:!0,get:()=>e[y]})}}return x.default=e,Object.freeze(x)}const a=il(Rt),tt=a.forwardRef((e,x)=>{var ke,De,Te,He,Pe,Ke,Ae,Oe,Be,Fe,Me,Le;const y=e.id+"-role-element-id",G=e.navigatable?y:"";let R=e.columnsState||[];const lt=(t,i,n,d,o,l,s)=>{const g=[],P=u.flatData(g,t,i,{index:n},d!==void 0,o,l,Ct.defaultExpand,s);return{flattedData:g,resolvedGroupsCount:P}},at=t=>{const i=t.filter(n=>n&&n.type&&n.type.displayName==="KendoReactGridColumn");return u.readColumns(i,R,{prevId:0,idPrefix:G})},rt=()=>{const t=[],i=(n,d)=>n==null?void 0:n.forEach(o=>{const l=o.hidden||d;t.push({...o,hidden:l}),i(o.children,l)});return i(R,!1),t},nt=t=>{const i=rt();return t.filter(n=>{var d;return!n.hidden&&!((d=i.find(o=>o.id===n.id))!=null&&d.hidden)})},it=(t,i)=>{m=at(t),m.filter(n=>!n.hidden).length===0&&(m=u.autoGenerateColumns(S,e.group,{column:K.column},{prevId:0,idPrefix:G})),dt(m,i),m=nt(m),k=u.mapColumns(m,!0),ce=m.map(u.clientColumn)},ot=(t,i)=>{const n=d=>{var l;const o=i.find(s=>s.id===d.id);return o?(o.children=(l=d.children)==null?void 0:l.map(n),o):u.getColumnState(d)};R=t.filter(d=>d.parentIndex===-1).map(n)},dt=(t,i)=>{t.filter(l=>l.columnType==="checkbox").forEach(l=>{l.width=l.width||"50px",l.defaultCell=e.isClient?tl.GridSelectionCell:el.GridSelectionCellServer,l.defaultHeaderCell=At.GridHeaderSelectionCell,l._type="edit"}),T!==void 0&&t.filter(l=>l.columnType==="reorder").forEach(l=>{l.width=l.width||"50px",l.defaultCell=e.isClient?Qt.GridRowReorderCell:al.GridRowReorderCellServer,l.defaultHeaderCell=Ut.GridHeaderRowReorderCell,l.sortable=!1,l.filterable=!1,l.editable=!1});const n=u.getFlatColumnsState(R);ot(t,n);const d={id:"",resizable:!0,width:"32px",title:" ",declarationIndex:-1,orderIndex:-1,children:[],parentIndex:-1,depth:0,colSpan:0,headerColSpan:0,rowSpan:0,left:0,right:0,index:0,rightBorder:!1,ariaColumnIndex:0,isAccessible:!0};let o=0;if(K.enabled&&e.detail){const l={...d,_type:"expand",id:b.tableKeyboardNavigationTools.generateNavigatableId(`${o++}`,"expand","column"),defaultCell:e.isClient?Nt.GridHierarchyCell:ll.GridHierarchyCellServer,field:K.column,headerClassName:c.classNames(f.hierarchyCell({}))};t.unshift(l),R.unshift(n.find(s=>s.id===l.id)||u.getColumnState(l))}for(let l=0;l<i;l++){const s={...d,isAccessible:!1,defaultCell:e.isClient?We.GridGroupCell:nl.GridGroupCellServer,id:b.tableKeyboardNavigationTools.generateNavigatableId(`${o++}`,"group","column"),field:"value",locked:e.lockGroups};t.unshift(s),R.unshift(n.find(g=>g.id===s.id)||u.getColumnState(s))}t.slice(o).forEach(l=>{l.parentIndex>=0&&(l.parentIndex+=o),l.rowSpannable=l.rowSpannable!==void 0?u.getRowSpanOptions(l.rowSpannable):me})},Q=()=>e.isClient?m:ce,oe=t=>{const i=[];let n=null,d=0;if(C.forEach((o,l)=>{const s=parseFloat((o.width||"").toString())||10;if(d){d--,n&&(n.width+=s);return}const g=Math.min(u.getColSpan(o,t),C.length-l);d=g-1,n={width:s,colSpan:g,columnIndex:l},i.push(n)}),e.columnVirtualization){const o=st.current||0,l=ut.current||parseFloat(((e.style||{}).width||"").toString());return Xt.getVirtualCellsToRender({cellModels:i,columns:C,tableViewPortWidth:l,scrollLeft:o})}return i},ct=()=>{const{pageable:t,take:i,pageSize:n}=e;if(!w)return 0;if(!t){if(i)return i;if(n)return n}const d=e.rowHeight||gt.current,o=mt.current;return o&&d?Math.ceil(o/d*1.5):0};let h=[],de,m=[],ce=[],k=[[]];const st=e.scrollLeftRef||{current:0},ut=e.widthRef||{current:0},mt=e.containerHeightRef||{current:0},gt=e.minRowHeightRef||{current:0},_=e.localization||new et.LocalizationService(e.language),ft=e.intl||new et.IntlService((ke=e.locale)!=null?ke:"en"),D=e.unstyled,f=D&&D.uGrid?D.uGrid:c.uGrid,T=u.isRowReorderEnabled(e.rowReorderable),w=e.scrollable==="virtual"||e.scrollable===void 0&&c.hasValidLicense($e.packageMetadata),H=e.autoProcessData===!0?{group:!0,sort:!0,filter:!0,search:!0,page:!0}:e.autoProcessData;let S,q;if(Array.isArray(e.data)?(S=e.data,q=(De=e.total)!=null?De:S.length):(S=((Te=e.data)==null?void 0:Te.data)||[],q=(Ke=(Pe=e.total)!=null?Pe:(He=e.data)==null?void 0:He.total)!=null?Ke:S.length),H){const t=H.page&&!(w&&!e.pageable),{data:i,total:n}=It.process(S,{group:H.group?e.group:void 0,sort:H.sort?e.sort:void 0,filter:b.combineFilters(H.filter?e.filter:void 0,H.search?e.search:void 0),...t?{take:e.pageable?e.take||10:e.take,skip:e.skip||0}:{}});S=i,q=(Ae=e.total)!=null?Ae:n}const z=S.length===q,{size:I="medium"}=e,bt=typeof e.groupable=="object"&&e.groupable.footer||"none",W=e.groupable===!0||typeof e.groupable=="object"&&e.groupable.enabled!==!1,K=b.getDetailExpandableOptions(!!e.detail),Ct=b.getGroupExpandableOptions(typeof e.groupable=="object"&&e.groupable.enabled!==!1?e.groupable.expandable:e.groupable),se=!!((Oe=e.group)!=null&&Oe.length),{resolvedGroupsCount:yt,flattedData:ht}=lt(S,bt,z?0:e.skip||0,e.group,e.detailExpand,e.groupExpand,e.dataItemKey);h=ht;const U=ct(),J=((Be=e.virtualSkipRef)==null?void 0:Be.current)||0;let X=q;if(w){let t=e.skip||0;(se||e.pageable)&&(t=J,X=h.length),(z||se||e.pageable)&&(de=h.slice(t,t+U))}const ue=b.getSelectionOptions(e.selectable),me=u.getRowSpanOptions(e.rowSpannable),Gt=ue&&ue.drag?"none":void 0,V=a.useMemo(()=>a.Children.toArray(e.children),[e.children]);it(V,yt);const Y=a.useMemo(()=>{const t=Jt.gridPremiumFeatures(e,m);return{premium:t.length>0,features:t}},[e,m]),ge=a.useMemo(()=>Y.premium?!c.validatePackage($e.packageMetadata,{component:"Grid",features:Y.features}):!1,[Y.premium]),fe=V.map(t=>t&&t.type&&t.type.displayName==="KendoReactGridToolbar"?a.cloneElement(t,{...t.props,ariaControls:y}):null),j=V.filter(t=>t&&t.type&&t.type.displayName==="KendoReactGridNoRecords"),be=V.filter(t=>t&&t.type&&t.type.displayName==="KendoReactGridStatusBar"),C=m.filter(t=>t.children.length===0),Ce=W&&a.createElement(Tt.GroupPanel,{columns:Q(),group:e.group||[],ariaControls:y}),ye=a.createElement(xt.Header,{size:I,staticHeaders:e.scrollable!=="none",draggable:e.reorderable||W,headerRow:a.createElement(kt.HeaderRow,{cells:e.cells,sort:e.sort,sortable:e.sortable,group:e.group||[],groupable:W,filter:e.filter,filterable:e.filterable,filterOperators:e.filterOperators||je.operators,columnMenu:e.columnMenu,columnMenuIcon:e.columnMenuIcon,columns:m,columnsMap:k,navigatable:!!e.navigatable,localization:_,unstyled:D,headerSelectionValue:!!(e.select&&h.filter(t=>t.rowType==="data").every(t=>e.select&&e.dataItemKey&&c.getter(e.dataItemKey)(t.dataItem)!==void 0?e.select[c.getter(e.dataItemKey)(t.dataItem)]:void 0))}),filterRow:e.filterable&&a.createElement(Dt.FilterRow,{cells:e.cells,size:I,columns:m,filter:e.filter,filterOperators:e.filterOperators||je.operators,sort:e.sort,navigatable:!!e.navigatable,ariaRowIndex:k.length+1,localization:_})||void 0,cols:C.map((t,i)=>a.createElement("col",{key:i.toString(),width:u.getColumnWidth(t)}))}),he=C.findIndex(t=>typeof t.colSpan=="function")>-1;let Z;he||(Z=oe(null));const p=((Fe=e.editable)==null?void 0:Fe.mode)==="dialog",wt=(Me=e.editable)==null?void 0:Me.enabled,St=(t,i,n,d,o)=>{let l=!1;const s=e.select&&e.dataItemKey&&c.getter(e.dataItemKey)(t.dataItem)!==void 0?e.select[c.getter(e.dataItemKey)(t.dataItem)]:void 0;return he&&(Z=oe(t.dataItem)),{row:Z.map(({columnIndex:g,colSpan:P})=>{var $,L,_e,ze;const r=C[g];let E;if(($=r.rowSpannable)!=null&&$.enabled&&t.rowType==="data"&&r.field&&o){const N=r.field?(_e=(L=r.rowSpannable).valueGetter)==null?void 0:_e.call(L,t.dataItem,r.field):null;E={value:N,count:1},o[r.field]&&((ze=o[r.field])==null?void 0:ze.value)===N&&o[r.field]!==null?(o[r.field].count++,E.count=null):o[r.field]=E}const O=r.id?r.id:g,v=c.classNames(f.contentSticky({locked:r.locked}),r.className),ae=r.left!==void 0?{left:r.left,right:r.right}:{};let B=!1;if(r.editable&&e.editable){const N=e.edit&&e.dataItemKey?e.edit[c.getter(e.dataItemKey)(t.dataItem)]:void 0,ne=typeof N=="boolean"?N:Array.isArray(N)?r.field&&N.indexOf(r.field)>-1:r.field!==void 0&&N===r.field;ne&&r.columnType==="data"&&(ne===!0||ne===r.field)&&(l=!0,p||(B=!0))}const re=r._type==="expand",F={locked:e.lockGroups,id:b.tableKeyboardNavigationTools.generateNavigatableId(`${i}-${String(g)}`,G,re||t.rowType==="groupHeader"||t.rowType==="groupFooter"||r.field==="value"?"nodata":"cell"),colSpan:P,dataItem:t.dataItem,field:r.field,editor:r.editor,format:r.format,columnType:r.columnType,rowReorderable:T,className:v,cells:u.resolveCells(e.cells,r.cells),columnIndex:g,columnsCount:C.length,rowType:t.rowType,level:t.level,expanded:t.expanded,dataIndex:t.dataIndex,rowDataIndex:n,columnPosition:ae,style:{},ariaColumnIndex:r.ariaColumnIndex,isSelected:!!((r==null?void 0:r._type)==="edit"?s:Array.isArray(s)&&s.indexOf(g)>-1),isSorted:!!u.isSorted(r.field,e.sort),isInEdit:B,isAlt:d,unstyled:D,group:t.group,localization:_,intl:ft,_rowSpan:E},M=r.defaultCell||B&&(e.isClient?qt.GridEditCell:pt.GridEditCellServer)||(e.isClient?Pt.GridCell:Zt.GridCellServer);return a.createElement(M,{key:O,cellProps:F})}),isInEdit:l,isSelected:typeof s=="boolean"&&s}};let Et=0,ee=null;const Ge=t=>t>=h.length-Et,te=[],we=!h.length;let A=0;if(h.length){const t=k.length+(e.filterable?1:0)+1;let i=e.skip||0,n=-1,d=0;const o=me.enabled?{}:void 0;w&&(n+=J,i+=J,e.pageable||(n+=e.skip||0)),(de||h).forEach((l,s)=>{l.rowType==="data"&&n++;const g=l.dataIndex%2!==0,P=e.dataItemKey&&c.getter(e.dataItemKey)(l.dataItem),r=s+i,E=P||"ai"+r,O=E+"_1",v=St(l,E,n,g,o);if(A=r+t+d,p&&wt&&v.isInEdit&&(ee=l.dataItem),te.push(a.createElement(Kt.GridRow,{key:E,dataItem:l.dataItem,isAltRow:g,isInEdit:v.isInEdit&&!p,rowType:l.rowType,isRowReorderable:T,isHidden:Ge(s),onClick:null,onDoubleClick:null,rowHeight:e.rowHeight,ariaRowIndex:A,absoluteRowIndex:r,dataIndex:n,isSelected:v.isSelected,rows:e.rows},v.row)),e.detail&&l.rowType==="data"&&l.expanded){const ae=C.length-(K.enabled?1:0)-(e.group?e.group.length:0)||1;d++,A=r+t+d;const B=e.isClient?Ft.GridDetailCell:rl.GridDetailCellServer;te.push(a.createElement("tr",{key:O,className:c.classNames(f.detailTr({isAlt:g})),style:{visibility:Ge(s)?"hidden":"",height:e.detailRowHeight},role:"row","aria-rowindex":A},e.group&&e.group.map((re,F)=>{var L;const M=(L=v==null?void 0:v.row[F])==null?void 0:L.props.style,$=M?{left:M.left,right:M.right}:{};return a.createElement(We.GridGroupCell,{key:F,cellProps:{id:"",dataItem:l.dataItem,field:re.field,dataIndex:l.dataIndex,columnPosition:$,style:{},ariaColumnIndex:1+F,isSelected:!1,locked:e.lockGroups,cells:e.cells,group:l.group}})}),K.enabled&&a.createElement(Mt.GridDetailHierarchyCell,{unstyled:D,id:b.tableKeyboardNavigationTools.generateNavigatableId(`${O}-dhcell`,G)}),a.createElement(B,{dataItem:l.dataItem,dataIndex:l.dataIndex,colSpan:ae,ariaColIndex:2+(e.group?e.group.length:0),detail:e.detail,id:b.tableKeyboardNavigationTools.generateNavigatableId(`${O}-dcell`,G)})))}})}const Se={size:I,total:q,skip:e.skip||0,take:(e.take!==void 0?e.take:e.pageSize)||10,...Bt.normalize(e.pageable||{})},Ee=a.createElement(zt.PagerContainer,null,e.pager?a.createElement(e.pager,{...Se}):a.createElement(b.Pager,{className:c.classNames(f.pager({})),...Se})),vt=(t,i)=>a.createElement("col",{key:i.toString(),width:u.getColumnWidth(t)}),ve=(Le=e.cells)!=null&&Le.footerCell||m.some(t=>{var i;return!!((i=t.cells)!=null&&i.footerCell)})?a.createElement(Ht.Footer,{size:I,staticHeaders:e.scrollable!=="none",row:a.createElement(Ot.FooterRow,{cells:e.cells,idPrefix:G,columns:m,ariaRowIndex:A+1}),cols:C.map(vt)}):null,Re=a.createElement(Lt.GridColGroup,null,C.map((t,i)=>a.createElement("col",{key:i.toString(),className:u.isSorted(t.field,e.sort)?c.classNames(f.sorted({})):void 0,width:u.getColumnWidth(t)}))),Ie=e.reorderable||W,{detail:ol,cells:dl,rows:cl,...Ne}=e,qe=a.createElement("tbody",{role:"rowgroup",className:c.classNames(f.tbody({})),...b.tableKeyboardNavigationBodyAttributes},te),xe=ee?a.createElement(Yt.GridEditDialog,{columns:C,customEditDialog:e.editDialog,dataItem:ee}):null;let le=qe;return T&&(le=a.createElement($t.GridReorderableRowsContainer,{unstyled:f,columns:m,rowReorderSettings:e.rowReorderable},qe)),e.scrollable==="none"?a.createElement(Ue.GridClientWrapper,{gridRef:x,gridProps:Ne,innerGrid:e.innerGrid,columnsRef:Q(),columnsMapRef:k,columnsState:R,dataRef:h,id:y,virtualTotal:X,isAllData:z,virtualPageSize:U,isVirtualScroll:w,detailExpandable:!!e.detail},a.createElement(Ze.GridElementContainer,null,a.createElement("div",{id:e.id,style:e.style,className:c.classNames(f.wrapper({size:I}),e.className),...b.tableKeyboardNavigationScopeAttributes},fe,Ce,a.createElement(_t.GridTable,{selectable:e.selectable,className:c.classNames(f.table({size:I}))},Re,ye,a.createElement(Ye.GridTableBody,{rowReorderable:T},le),ve),we&&a.createElement(Qe.GridNoRecordsContainer,null,j.length?j:a.createElement(Ve.GridNoRecords,null)),Ie&&a.createElement(a.Fragment,null,a.createElement(Je.GridDropClue,null),a.createElement(Xe.GridDragClue,null)))),be,e.pageable&&Ee,a.createElement(pe.GridLoader,{loader:e.loader,showLoader:e.showLoader}),xe,ge&&a.createElement(c.WatermarkOverlay,null)):a.createElement(Ue.GridClientWrapper,{gridRef:x,innerGrid:e.innerGrid,gridProps:Ne,columnsRef:Q(),columnsMapRef:k,columnsState:R,dataRef:h,id:y,virtualTotal:X,isAllData:z,virtualPageSize:U,isVirtualScroll:w,detailExpandable:!!e.detail},a.createElement(Ze.GridElementContainer,null,a.createElement("div",{id:e.id,style:e.style,className:c.classNames(f.wrapper({size:I,virtual:w}),e.className),...b.tableKeyboardNavigationScopeAttributes},fe,Ce,a.createElement("div",{className:c.classNames(f.ariaRoot({})),role:"grid","aria-colcount":C.length,"aria-rowcount":q,id:y,"aria-label":_.toLanguageString(ie.gridAriaLabel,ie.messages[ie.gridAriaLabel])},ye,a.createElement("div",{className:c.classNames(f.container({})),role:"presentation"},a.createElement(Vt.GridContainerElementContainer,null,a.createElement("div",{className:c.classNames(f.content({})),role:"presentation"},a.createElement("div",{className:c.classNames(f.tableWrap({})),role:"presentation"},a.createElement(Wt.GridTableScrollable,{selectable:e.selectable,tableClassName:c.classNames(f.table({size:I})),tableStyle:{userSelect:Gt}},Re,a.createElement(Ye.GridTableBody,{rowReorderable:T},le)),we&&a.createElement(Qe.GridNoRecordsContainer,null,j.length?j:a.createElement(Ve.GridNoRecords,null))),w&&a.createElement("div",{className:c.classNames(f.heightContainer({})),role:"presentation"},a.createElement(jt.VirtualScrollHeightContainer,{isVirtualScroll:w}))))),ve,Ie&&a.createElement(a.Fragment,null,a.createElement(Je.GridDropClue,null),a.createElement(Xe.GridDragClue,null)),ge&&a.createElement(c.WatermarkOverlay,null)),be,e.pageable&&Ee,a.createElement(pe.GridLoader,{loader:e.loader,showLoader:e.showLoader}),xe)))});tt.displayName="KendoReactGridComponent";exports.GridComponent=tt;
|
|
8
|
+
"use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const Rt=require("react"),c=require("@progress/kendo-react-common"),It=require("@progress/kendo-data-query"),b=require("@progress/kendo-react-data-tools"),Nt=require("./cells/hierarchycell/GridHierarchyCell.js"),qt=require("./cells/editcell/GridEditCell.js"),xt=require("./header/Header.js"),kt=require("./header/HeaderRow.js"),Dt=require("./header/FilterRow.js"),Tt=require("./header/GroupPanel.js"),Ht=require("./footer/Footer.js"),u=require("./utils/index.js"),Pt=require("./cells/datacell/GridCell.js"),We=require("./cells/groupcell/GridGroupCell.js"),Kt=require("./rows/GridRow.js"),At=require("./header/GridHeaderSelectionCell.js"),Ve=require("./components/noRecords/GridNoRecords.js"),je=require("./filterCommon.js"),Ot=require("./footer/FooterRow.js"),Bt=require("./paging/GridPagerSettings.js"),$e=require("./package-metadata.js"),Ft=require("./cells/detailcell/GridDetailCell.js"),Lt=require("./cells/GridDetailHierarchyCell.js"),Qe=require("./components/noRecords/GridNoRecordsContainer.js"),Ue=require("./GridClientWrapper.js"),Mt=require("./components/colGroup/GridColGroup.js"),_t=require("./components/table/GridTable.js"),Je=require("./components/GridDropClue.js"),Xe=require("./components/GridDragClue.js"),Ye=require("./components/table/GridTableBody.js"),zt=require("./components/PagerContainer.js"),Wt=require("./components/table/GridTableScrollable.js"),Ze=require("./components/GridElementContainer.js"),Vt=require("./components/GridContainerElementContainer.js"),jt=require("./components/VirtualScrollHeightContainer.js"),ie=require("./messages/index.js"),$t=require("./components/GridDraggableRowsContainer.js"),Qt=require("./cells/rowreordercell/GridRowReorderCell.js"),Ut=require("./header/client/GridHeaderRowReorderCell.js"),pe=require("./components/GridLoader.js"),Jt=require("./utils/premium.js"),et=require("@progress/kendo-react-intl"),Xt=require("./utils/virtualColumns.js"),Yt=require("./components/GridEditDialog.js"),Zt=require("./cells/datacell/GridCellServer.js"),pt=require("./cells/editcell/GridEditCellServer.js"),el=require("./cells/selectioncell/GridSelectionCellServer.js"),tl=require("./cells/selectioncell/GridSelectionCell.js"),ll=require("./cells/hierarchycell/GridHierarchyCellServer.js"),al=require("./cells/rowreordercell/GridRowReorderCellServer.js"),rl=require("./cells/detailcell/GridDetailCellServer.js"),nl=require("./cells/groupcell/GridGroupCellServer.js");function il(e){const x=Object.create(null,{[Symbol.toStringTag]:{value:"Module"}});if(e){for(const y in e)if(y!=="default"){const G=Object.getOwnPropertyDescriptor(e,y);Object.defineProperty(x,y,G.get?G:{enumerable:!0,get:()=>e[y]})}}return x.default=e,Object.freeze(x)}const a=il(Rt),tt=a.forwardRef((e,x)=>{var ke,De,Te,He,Pe,Ke,Ae,Oe,Be,Fe,Le,Me;const y=e.id+"-role-element-id",G=e.navigatable?y:"";let R=e.columnsState||[];const lt=(t,i,n,d,o,l,s)=>{const g=[],P=u.flatData(g,t,i,{index:n},d!==void 0,o,l,Ct.defaultExpand,s);return{flattedData:g,resolvedGroupsCount:P}},at=t=>{const i=t.filter(n=>n&&n.type&&n.type.displayName==="KendoReactGridColumn");return u.readColumns(i,R,{prevId:0,idPrefix:G})},rt=()=>{const t=[],i=(n,d)=>n==null?void 0:n.forEach(o=>{const l=o.hidden||d;t.push({...o,hidden:l}),i(o.children,l)});return i(R,!1),t},nt=t=>{const i=rt();return t.filter(n=>{var d;return!n.hidden&&!((d=i.find(o=>o.id===n.id))!=null&&d.hidden)})},it=(t,i)=>{m=at(t),m.filter(n=>!n.hidden).length===0&&(m=u.autoGenerateColumns(S,e.group,{column:K.column},{prevId:0,idPrefix:G})),dt(m,i),m=nt(m),k=u.mapColumns(m,!0),ce=m.map(u.clientColumn)},ot=(t,i)=>{const n=d=>{var l;const o=i.find(s=>s.id===d.id);return o?(o.children=(l=d.children)==null?void 0:l.map(n),o):u.getColumnState(d)};R=t.filter(d=>d.parentIndex===-1).map(n)},dt=(t,i)=>{t.filter(l=>l.columnType==="checkbox").forEach(l=>{l.width=l.width||"50px",l.defaultCell=e.isClient?tl.GridSelectionCell:el.GridSelectionCellServer,l.defaultHeaderCell=At.GridHeaderSelectionCell,l._type="edit"}),T!==void 0&&t.filter(l=>l.columnType==="reorder").forEach(l=>{l.width=l.width||"50px",l.defaultCell=e.isClient?Qt.GridRowReorderCell:al.GridRowReorderCellServer,l.defaultHeaderCell=Ut.GridHeaderRowReorderCell,l.sortable=!1,l.filterable=!1,l.editable=!1});const n=u.getFlatColumnsState(R);ot(t,n);const d={id:"",resizable:!0,width:"32px",title:" ",declarationIndex:-1,orderIndex:-1,children:[],parentIndex:-1,depth:0,colSpan:0,headerColSpan:0,rowSpan:0,left:0,right:0,index:0,rightBorder:!1,ariaColumnIndex:0,isAccessible:!0};let o=0;if(K.enabled&&e.detail){const l={...d,_type:"expand",id:b.tableKeyboardNavigationTools.generateNavigatableId(`${o++}`,"expand","column"),defaultCell:e.isClient?Nt.GridHierarchyCell:ll.GridHierarchyCellServer,field:K.column,headerClassName:c.classNames(f.hierarchyCell({}))};t.unshift(l),R.unshift(n.find(s=>s.id===l.id)||u.getColumnState(l))}for(let l=0;l<i;l++){const s={...d,isAccessible:!1,defaultCell:e.isClient?We.GridGroupCell:nl.GridGroupCellServer,id:b.tableKeyboardNavigationTools.generateNavigatableId(`${o++}`,"group","column"),field:"value",locked:e.lockGroups};t.unshift(s),R.unshift(n.find(g=>g.id===s.id)||u.getColumnState(s))}t.slice(o).forEach(l=>{l.parentIndex>=0&&(l.parentIndex+=o),l.rowSpannable=l.rowSpannable!==void 0?u.getRowSpanOptions(l.rowSpannable):me})},Q=()=>e.isClient?m:ce,oe=t=>{const i=[];let n=null,d=0;if(C.forEach((o,l)=>{const s=parseFloat((o.width||"").toString())||10;if(d){d--,n&&(n.width+=s);return}const g=Math.min(u.getColSpan(o,t),C.length-l);d=g-1,n={width:s,colSpan:g,columnIndex:l},i.push(n)}),e.columnVirtualization){const o=st.current||0,l=ut.current||parseFloat(((e.style||{}).width||"").toString());return Xt.getVirtualCellsToRender({cellModels:i,columns:C,tableViewPortWidth:l,scrollLeft:o})}return i},ct=()=>{const{pageable:t,take:i,pageSize:n}=e;if(!w)return 0;if(!t){if(i)return i;if(n)return n}const d=e.rowHeight||gt.current,o=mt.current;return o&&d?Math.ceil(o/d*1.5):0};let h=[],de,m=[],ce=[],k=[[]];const st=e.scrollLeftRef||{current:0},ut=e.widthRef||{current:0},mt=e.containerHeightRef||{current:0},gt=e.minRowHeightRef||{current:0},_=e.localization||new et.LocalizationService(e.language),ft=e.intl||new et.IntlService((ke=e.locale)!=null?ke:"en"),D=e.unstyled,f=D&&D.uGrid?D.uGrid:c.uGrid,T=u.isRowReorderEnabled(e.rowReorderable),w=e.scrollable==="virtual"||e.scrollable===void 0&&c.hasValidLicense($e.packageMetadata),H=e.autoProcessData===!0?{group:!0,sort:!0,filter:!0,search:!0,page:!0}:e.autoProcessData;let S,q;if(Array.isArray(e.data)?(S=e.data,q=(De=e.total)!=null?De:S.length):(S=((Te=e.data)==null?void 0:Te.data)||[],q=(Ke=(Pe=e.total)!=null?Pe:(He=e.data)==null?void 0:He.total)!=null?Ke:S.length),H){const t=H.page&&!(w&&!e.pageable),{data:i,total:n}=It.process(S,{group:H.group?e.group:void 0,sort:H.sort?e.sort:void 0,filter:b.combineFilters(H.filter?e.filter:void 0,H.search?e.search:void 0),...t?{take:e.pageable?e.take||10:e.take,skip:e.skip||0}:{}});S=i,q=(Ae=e.total)!=null?Ae:n}const z=S.length===q,{size:I="medium"}=e,bt=typeof e.groupable=="object"&&e.groupable.footer||"none",W=e.groupable===!0||typeof e.groupable=="object"&&e.groupable.enabled!==!1,K=b.getDetailExpandableOptions(!!e.detail),Ct=b.getGroupExpandableOptions(typeof e.groupable=="object"&&e.groupable.enabled!==!1?e.groupable.expandable:e.groupable),se=!!((Oe=e.group)!=null&&Oe.length),{resolvedGroupsCount:yt,flattedData:ht}=lt(S,bt,z?0:e.skip||0,e.group,e.detailExpand,e.groupExpand,e.dataItemKey);h=ht;const U=ct(),J=((Be=e.virtualSkipRef)==null?void 0:Be.current)||0;let X=q;if(w){let t=e.skip||0;(se||e.pageable)&&(t=J,X=h.length),(z||se||e.pageable)&&(de=h.slice(t,t+U))}const ue=b.getSelectionOptions(e.selectable),me=u.getRowSpanOptions(e.rowSpannable),Gt=ue&&ue.drag?"none":void 0,V=a.useMemo(()=>a.Children.toArray(e.children),[e.children]);it(V,yt);const Y=a.useMemo(()=>{const t=Jt.gridPremiumFeatures(e,m);return{premium:t.length>0,features:t}},[e,m]),ge=a.useMemo(()=>Y.premium?!c.validatePackage($e.packageMetadata,{component:"Grid",features:Y.features}):!1,[Y.premium]),fe=V.map(t=>t&&t.type&&t.type.displayName==="KendoReactGridToolbar"?a.cloneElement(t,{...t.props,_ariaControls:y,ariaLabel:"Top toolbar"}):null),j=V.filter(t=>t&&t.type&&t.type.displayName==="KendoReactGridNoRecords"),be=V.filter(t=>t&&t.type&&t.type.displayName==="KendoReactGridStatusBar"),C=m.filter(t=>t.children.length===0),Ce=W&&a.createElement(Tt.GroupPanel,{columns:Q(),group:e.group||[],ariaControls:y}),ye=a.createElement(xt.Header,{size:I,staticHeaders:e.scrollable!=="none",draggable:e.reorderable||W,headerRow:a.createElement(kt.HeaderRow,{cells:e.cells,sort:e.sort,sortable:e.sortable,group:e.group||[],groupable:W,filter:e.filter,filterable:e.filterable,filterOperators:e.filterOperators||je.operators,columnMenu:e.columnMenu,columnMenuIcon:e.columnMenuIcon,columns:m,columnsMap:k,navigatable:!!e.navigatable,localization:_,unstyled:D,headerSelectionValue:!!(e.select&&h.filter(t=>t.rowType==="data").every(t=>e.select&&e.dataItemKey&&c.getter(e.dataItemKey)(t.dataItem)!==void 0?e.select[c.getter(e.dataItemKey)(t.dataItem)]:void 0))}),filterRow:e.filterable&&a.createElement(Dt.FilterRow,{cells:e.cells,size:I,columns:m,filter:e.filter,filterOperators:e.filterOperators||je.operators,sort:e.sort,navigatable:!!e.navigatable,ariaRowIndex:k.length+1,localization:_})||void 0,cols:C.map((t,i)=>a.createElement("col",{key:i.toString(),width:u.getColumnWidth(t)}))}),he=C.findIndex(t=>typeof t.colSpan=="function")>-1;let Z;he||(Z=oe(null));const p=((Fe=e.editable)==null?void 0:Fe.mode)==="dialog",wt=(Le=e.editable)==null?void 0:Le.enabled,St=(t,i,n,d,o)=>{let l=!1;const s=e.select&&e.dataItemKey&&c.getter(e.dataItemKey)(t.dataItem)!==void 0?e.select[c.getter(e.dataItemKey)(t.dataItem)]:void 0;return he&&(Z=oe(t.dataItem)),{row:Z.map(({columnIndex:g,colSpan:P})=>{var $,M,_e,ze;const r=C[g];let E;if(($=r.rowSpannable)!=null&&$.enabled&&t.rowType==="data"&&r.field&&o){const N=r.field?(_e=(M=r.rowSpannable).valueGetter)==null?void 0:_e.call(M,t.dataItem,r.field):null;E={value:N,count:1},o[r.field]&&((ze=o[r.field])==null?void 0:ze.value)===N&&o[r.field]!==null?(o[r.field].count++,E.count=null):o[r.field]=E}const O=r.id?r.id:g,v=c.classNames(f.contentSticky({locked:r.locked}),r.className),ae=r.left!==void 0?{left:r.left,right:r.right}:{};let B=!1;if(r.editable&&e.editable){const N=e.edit&&e.dataItemKey?e.edit[c.getter(e.dataItemKey)(t.dataItem)]:void 0,ne=typeof N=="boolean"?N:Array.isArray(N)?r.field&&N.indexOf(r.field)>-1:r.field!==void 0&&N===r.field;ne&&r.columnType==="data"&&(ne===!0||ne===r.field)&&(l=!0,p||(B=!0))}const re=r._type==="expand",F={locked:e.lockGroups,id:b.tableKeyboardNavigationTools.generateNavigatableId(`${i}-${String(g)}`,G,re||t.rowType==="groupHeader"||t.rowType==="groupFooter"||r.field==="value"?"nodata":"cell"),colSpan:P,dataItem:t.dataItem,field:r.field,editor:r.editor,format:r.format,columnType:r.columnType,rowReorderable:T,className:v,cells:u.resolveCells(e.cells,r.cells),columnIndex:g,columnsCount:C.length,rowType:t.rowType,level:t.level,expanded:t.expanded,dataIndex:t.dataIndex,rowDataIndex:n,columnPosition:ae,style:{},ariaColumnIndex:r.ariaColumnIndex,isSelected:!!((r==null?void 0:r._type)==="edit"?s:Array.isArray(s)&&s.indexOf(g)>-1),isSorted:!!u.isSorted(r.field,e.sort),isInEdit:B,isAlt:d,unstyled:D,group:t.group,localization:_,intl:ft,_rowSpan:E},L=r.defaultCell||B&&(e.isClient?qt.GridEditCell:pt.GridEditCellServer)||(e.isClient?Pt.GridCell:Zt.GridCellServer);return a.createElement(L,{key:O,cellProps:F})}),isInEdit:l,isSelected:typeof s=="boolean"&&s}};let Et=0,ee=null;const Ge=t=>t>=h.length-Et,te=[],we=!h.length;let A=0;if(h.length){const t=k.length+(e.filterable?1:0)+1;let i=e.skip||0,n=-1,d=0;const o=me.enabled?{}:void 0;w&&(n+=J,i+=J,e.pageable||(n+=e.skip||0)),(de||h).forEach((l,s)=>{l.rowType==="data"&&n++;const g=l.dataIndex%2!==0,P=e.dataItemKey&&c.getter(e.dataItemKey)(l.dataItem),r=s+i,E=P||"ai"+r,O=E+"_1",v=St(l,E,n,g,o);if(A=r+t+d,p&&wt&&v.isInEdit&&(ee=l.dataItem),te.push(a.createElement(Kt.GridRow,{key:E,dataItem:l.dataItem,isAltRow:g,isInEdit:v.isInEdit&&!p,rowType:l.rowType,isRowReorderable:T,isHidden:Ge(s),onClick:null,onDoubleClick:null,rowHeight:e.rowHeight,ariaRowIndex:A,absoluteRowIndex:r,dataIndex:n,isSelected:v.isSelected,rows:e.rows},v.row)),e.detail&&l.rowType==="data"&&l.expanded){const ae=C.length-(K.enabled?1:0)-(e.group?e.group.length:0)||1;d++,A=r+t+d;const B=e.isClient?Ft.GridDetailCell:rl.GridDetailCellServer;te.push(a.createElement("tr",{key:O,className:c.classNames(f.detailTr({isAlt:g})),style:{visibility:Ge(s)?"hidden":"",height:e.detailRowHeight},role:"row","aria-rowindex":A},e.group&&e.group.map((re,F)=>{var M;const L=(M=v==null?void 0:v.row[F])==null?void 0:M.props.style,$=L?{left:L.left,right:L.right}:{};return a.createElement(We.GridGroupCell,{key:F,cellProps:{id:"",dataItem:l.dataItem,field:re.field,dataIndex:l.dataIndex,columnPosition:$,style:{},ariaColumnIndex:1+F,isSelected:!1,locked:e.lockGroups,cells:e.cells,group:l.group}})}),K.enabled&&a.createElement(Lt.GridDetailHierarchyCell,{unstyled:D,id:b.tableKeyboardNavigationTools.generateNavigatableId(`${O}-dhcell`,G)}),a.createElement(B,{dataItem:l.dataItem,dataIndex:l.dataIndex,colSpan:ae,ariaColIndex:2+(e.group?e.group.length:0),detail:e.detail,id:b.tableKeyboardNavigationTools.generateNavigatableId(`${O}-dcell`,G)})))}})}const Se={size:I,total:q,skip:e.skip||0,take:(e.take!==void 0?e.take:e.pageSize)||10,...Bt.normalize(e.pageable||{})},Ee=a.createElement(zt.PagerContainer,null,e.pager?a.createElement(e.pager,{...Se}):a.createElement(b.Pager,{className:c.classNames(f.pager({})),...Se})),vt=(t,i)=>a.createElement("col",{key:i.toString(),width:u.getColumnWidth(t)}),ve=(Me=e.cells)!=null&&Me.footerCell||m.some(t=>{var i;return!!((i=t.cells)!=null&&i.footerCell)})?a.createElement(Ht.Footer,{size:I,staticHeaders:e.scrollable!=="none",row:a.createElement(Ot.FooterRow,{cells:e.cells,idPrefix:G,columns:m,ariaRowIndex:A+1}),cols:C.map(vt)}):null,Re=a.createElement(Mt.GridColGroup,null,C.map((t,i)=>a.createElement("col",{key:i.toString(),className:u.isSorted(t.field,e.sort)?c.classNames(f.sorted({})):void 0,width:u.getColumnWidth(t)}))),Ie=e.reorderable||W,{detail:ol,cells:dl,rows:cl,...Ne}=e,qe=a.createElement("tbody",{role:"rowgroup",className:c.classNames(f.tbody({})),...b.tableKeyboardNavigationBodyAttributes},te),xe=ee?a.createElement(Yt.GridEditDialog,{columns:C,customEditDialog:e.editDialog,dataItem:ee}):null;let le=qe;return T&&(le=a.createElement($t.GridReorderableRowsContainer,{unstyled:f,columns:m,rowReorderSettings:e.rowReorderable},qe)),e.scrollable==="none"?a.createElement(Ue.GridClientWrapper,{gridRef:x,gridProps:Ne,innerGrid:e.innerGrid,columnsRef:Q(),columnsMapRef:k,columnsState:R,dataRef:h,id:y,virtualTotal:X,isAllData:z,virtualPageSize:U,isVirtualScroll:w,detailExpandable:!!e.detail},a.createElement(Ze.GridElementContainer,null,a.createElement("div",{id:e.id,style:e.style,className:c.classNames(f.wrapper({size:I}),e.className),...b.tableKeyboardNavigationScopeAttributes},fe,Ce,a.createElement(_t.GridTable,{selectable:e.selectable,className:c.classNames(f.table({size:I}))},Re,ye,a.createElement(Ye.GridTableBody,{rowReorderable:T},le),ve),we&&a.createElement(Qe.GridNoRecordsContainer,null,j.length?j:a.createElement(Ve.GridNoRecords,null)),Ie&&a.createElement(a.Fragment,null,a.createElement(Je.GridDropClue,null),a.createElement(Xe.GridDragClue,null)))),be,e.pageable&&Ee,a.createElement(pe.GridLoader,{loader:e.loader,showLoader:e.showLoader}),xe,ge&&a.createElement(c.WatermarkOverlay,null)):a.createElement(Ue.GridClientWrapper,{gridRef:x,innerGrid:e.innerGrid,gridProps:Ne,columnsRef:Q(),columnsMapRef:k,columnsState:R,dataRef:h,id:y,virtualTotal:X,isAllData:z,virtualPageSize:U,isVirtualScroll:w,detailExpandable:!!e.detail},a.createElement(Ze.GridElementContainer,null,a.createElement("div",{id:e.id,style:e.style,className:c.classNames(f.wrapper({size:I,virtual:w}),e.className),...b.tableKeyboardNavigationScopeAttributes},fe,Ce,a.createElement("div",{className:c.classNames(f.ariaRoot({})),role:"grid","aria-colcount":C.length,"aria-rowcount":q,id:y,"aria-label":_.toLanguageString(ie.gridAriaLabel,ie.messages[ie.gridAriaLabel])},ye,a.createElement("div",{className:c.classNames(f.container({})),role:"presentation"},a.createElement(Vt.GridContainerElementContainer,null,a.createElement("div",{className:c.classNames(f.content({})),role:"presentation"},a.createElement("div",{className:c.classNames(f.tableWrap({})),role:"presentation"},a.createElement(Wt.GridTableScrollable,{selectable:e.selectable,tableClassName:c.classNames(f.table({size:I})),tableStyle:{userSelect:Gt}},Re,a.createElement(Ye.GridTableBody,{rowReorderable:T},le)),we&&a.createElement(Qe.GridNoRecordsContainer,null,j.length?j:a.createElement(Ve.GridNoRecords,null))),w&&a.createElement("div",{className:c.classNames(f.heightContainer({})),role:"presentation"},a.createElement(jt.VirtualScrollHeightContainer,{isVirtualScroll:w}))))),ve,Ie&&a.createElement(a.Fragment,null,a.createElement(Je.GridDropClue,null),a.createElement(Xe.GridDragClue,null)),ge&&a.createElement(c.WatermarkOverlay,null)),be,e.pageable&&Ee,a.createElement(pe.GridLoader,{loader:e.loader,showLoader:e.showLoader}),xe)))});tt.displayName="KendoReactGridComponent";exports.GridComponent=tt;
|
package/GridComponent.mjs
CHANGED
|
@@ -11,8 +11,8 @@ import { process as Ht } from "@progress/kendo-data-query";
|
|
|
11
11
|
import { combineFilters as Pt, getDetailExpandableOptions as Kt, getGroupExpandableOptions as At, getSelectionOptions as Bt, tableKeyboardNavigationTools as O, Pager as Ft, tableKeyboardNavigationBodyAttributes as Lt, tableKeyboardNavigationScopeAttributes as je } from "@progress/kendo-react-data-tools";
|
|
12
12
|
import { GridHierarchyCell as Mt } from "./cells/hierarchycell/GridHierarchyCell.mjs";
|
|
13
13
|
import { GridEditCell as Ot } from "./cells/editcell/GridEditCell.mjs";
|
|
14
|
-
import { Header as
|
|
15
|
-
import { HeaderRow as
|
|
14
|
+
import { Header as _t } from "./header/Header.mjs";
|
|
15
|
+
import { HeaderRow as zt } from "./header/HeaderRow.mjs";
|
|
16
16
|
import { FilterRow as Vt } from "./header/FilterRow.mjs";
|
|
17
17
|
import { GroupPanel as Wt } from "./header/GroupPanel.mjs";
|
|
18
18
|
import { Footer as $t } from "./footer/Footer.mjs";
|
|
@@ -58,7 +58,7 @@ import { GridRowReorderCellServer as kl } from "./cells/rowreordercell/GridRowRe
|
|
|
58
58
|
import { GridDetailCellServer as Nl } from "./cells/detailcell/GridDetailCellServer.mjs";
|
|
59
59
|
import { GridGroupCellServer as Dl } from "./cells/groupcell/GridGroupCellServer.mjs";
|
|
60
60
|
const Tl = a.forwardRef((e, ie) => {
|
|
61
|
-
var Te, He, Pe, Ke, Ae, Be, Fe, Le, Me, Oe,
|
|
61
|
+
var Te, He, Pe, Ke, Ae, Be, Fe, Le, Me, Oe, _e, ze;
|
|
62
62
|
const R = e.id + "-role-element-id", G = e.navigatable ? R : "";
|
|
63
63
|
let E = e.columnsState || [];
|
|
64
64
|
const ot = (t, o, n, d, i, l, c) => {
|
|
@@ -206,7 +206,7 @@ const Tl = a.forwardRef((e, ie) => {
|
|
|
206
206
|
return i && d ? Math.ceil(i / d * 1.5) : 0;
|
|
207
207
|
};
|
|
208
208
|
let b = [], ce, m = [], me = [], x = [[]];
|
|
209
|
-
const gt = e.scrollLeftRef || { current: 0 }, bt = e.widthRef || { current: 0 }, ht = e.containerHeightRef || { current: 0 }, Ct = e.minRowHeightRef || { current: 0 },
|
|
209
|
+
const gt = e.scrollLeftRef || { current: 0 }, bt = e.widthRef || { current: 0 }, ht = e.containerHeightRef || { current: 0 }, Ct = e.minRowHeightRef || { current: 0 }, _ = e.localization || new yl(e.language), yt = e.intl || new wl((Te = e.locale) != null ? Te : "en"), k = e.unstyled, s = k && k.uGrid ? k.uGrid : Nt, N = jt(e.rowReorderable), h = e.scrollable === "virtual" || e.scrollable === void 0 && Dt(Ye), D = e.autoProcessData === !0 ? {
|
|
210
210
|
group: !0,
|
|
211
211
|
sort: !0,
|
|
212
212
|
filter: !0,
|
|
@@ -229,12 +229,12 @@ const Tl = a.forwardRef((e, ie) => {
|
|
|
229
229
|
});
|
|
230
230
|
C = o, v = (Fe = e.total) != null ? Fe : n;
|
|
231
231
|
}
|
|
232
|
-
const
|
|
232
|
+
const z = C.length === v, { size: S = "medium" } = e, wt = typeof e.groupable == "object" && e.groupable.footer || "none", V = e.groupable === !0 || typeof e.groupable == "object" && e.groupable.enabled !== !1, P = Kt(!!e.detail), Et = At(
|
|
233
233
|
typeof e.groupable == "object" && e.groupable.enabled !== !1 ? e.groupable.expandable : e.groupable
|
|
234
234
|
), ue = !!((Le = e.group) != null && Le.length), { resolvedGroupsCount: St, flattedData: It } = ot(
|
|
235
235
|
C,
|
|
236
236
|
wt,
|
|
237
|
-
|
|
237
|
+
z ? 0 : e.skip || 0,
|
|
238
238
|
e.group,
|
|
239
239
|
e.detailExpand,
|
|
240
240
|
e.groupExpand,
|
|
@@ -245,7 +245,7 @@ const Tl = a.forwardRef((e, ie) => {
|
|
|
245
245
|
let Q = v;
|
|
246
246
|
if (h) {
|
|
247
247
|
let t = e.skip || 0;
|
|
248
|
-
(ue || e.pageable) && (t = J, Q = b.length), (
|
|
248
|
+
(ue || e.pageable) && (t = J, Q = b.length), (z || ue || e.pageable) && (ce = b.slice(t, t + q));
|
|
249
249
|
}
|
|
250
250
|
const se = Bt(e.selectable), fe = Ue(e.rowSpannable), vt = se && se.drag ? "none" : void 0, W = a.useMemo(() => a.Children.toArray(e.children), [e.children]);
|
|
251
251
|
mt(W, St);
|
|
@@ -255,16 +255,16 @@ const Tl = a.forwardRef((e, ie) => {
|
|
|
255
255
|
premium: t.length > 0,
|
|
256
256
|
features: t
|
|
257
257
|
};
|
|
258
|
-
}, [e, m]), ge = a.useMemo(() => X.premium ? !Tt(Ye, { component: "Grid", features: X.features }) : !1, [X.premium]), be = W.map((t) => t && t.type && t.type.displayName === "KendoReactGridToolbar" ? a.cloneElement(t, { ...t.props,
|
|
258
|
+
}, [e, m]), ge = a.useMemo(() => X.premium ? !Tt(Ye, { component: "Grid", features: X.features }) : !1, [X.premium]), be = W.map((t) => t && t.type && t.type.displayName === "KendoReactGridToolbar" ? a.cloneElement(t, { ...t.props, _ariaControls: R, ariaLabel: "Top toolbar" }) : null), $ = W.filter((t) => t && t.type && t.type.displayName === "KendoReactGridNoRecords"), he = W.filter(
|
|
259
259
|
(t) => t && t.type && t.type.displayName === "KendoReactGridStatusBar"
|
|
260
260
|
), g = m.filter((t) => t.children.length === 0), Ce = V && /* @__PURE__ */ a.createElement(Wt, { columns: U(), group: e.group || [], ariaControls: R }), ye = /* @__PURE__ */ a.createElement(
|
|
261
|
-
|
|
261
|
+
_t,
|
|
262
262
|
{
|
|
263
263
|
size: S,
|
|
264
264
|
staticHeaders: e.scrollable !== "none",
|
|
265
265
|
draggable: e.reorderable || V,
|
|
266
266
|
headerRow: /* @__PURE__ */ a.createElement(
|
|
267
|
-
|
|
267
|
+
zt,
|
|
268
268
|
{
|
|
269
269
|
cells: e.cells,
|
|
270
270
|
sort: e.sort,
|
|
@@ -279,7 +279,7 @@ const Tl = a.forwardRef((e, ie) => {
|
|
|
279
279
|
columns: m,
|
|
280
280
|
columnsMap: x,
|
|
281
281
|
navigatable: !!e.navigatable,
|
|
282
|
-
localization:
|
|
282
|
+
localization: _,
|
|
283
283
|
unstyled: k,
|
|
284
284
|
headerSelectionValue: !!(e.select && b.filter((t) => t.rowType === "data").every(
|
|
285
285
|
(t) => e.select && e.dataItemKey && H(e.dataItemKey)(t.dataItem) !== void 0 ? e.select[H(e.dataItemKey)(t.dataItem)] : void 0
|
|
@@ -297,7 +297,7 @@ const Tl = a.forwardRef((e, ie) => {
|
|
|
297
297
|
sort: e.sort,
|
|
298
298
|
navigatable: !!e.navigatable,
|
|
299
299
|
ariaRowIndex: x.length + 1,
|
|
300
|
-
localization:
|
|
300
|
+
localization: _
|
|
301
301
|
}
|
|
302
302
|
) || void 0,
|
|
303
303
|
cols: g.map((t, o) => /* @__PURE__ */ a.createElement("col", { key: o.toString(), width: ne(t) }))
|
|
@@ -305,7 +305,7 @@ const Tl = a.forwardRef((e, ie) => {
|
|
|
305
305
|
), we = g.findIndex((t) => typeof t.colSpan == "function") > -1;
|
|
306
306
|
let Y;
|
|
307
307
|
we || (Y = de(null));
|
|
308
|
-
const Z = ((Oe = e.editable) == null ? void 0 : Oe.mode) === "dialog", Rt = (
|
|
308
|
+
const Z = ((Oe = e.editable) == null ? void 0 : Oe.mode) === "dialog", Rt = (_e = e.editable) == null ? void 0 : _e.enabled, Gt = (t, o, n, d, i) => {
|
|
309
309
|
let l = !1;
|
|
310
310
|
const c = e.select && e.dataItemKey && H(e.dataItemKey)(t.dataItem) !== void 0 ? e.select[H(e.dataItemKey)(t.dataItem)] : void 0;
|
|
311
311
|
return we && (Y = de(t.dataItem)), {
|
|
@@ -355,7 +355,7 @@ const Tl = a.forwardRef((e, ie) => {
|
|
|
355
355
|
isAlt: d,
|
|
356
356
|
unstyled: k,
|
|
357
357
|
group: t.group,
|
|
358
|
-
localization:
|
|
358
|
+
localization: _,
|
|
359
359
|
intl: yt,
|
|
360
360
|
_rowSpan: y
|
|
361
361
|
}, L = r.defaultCell || B && (e.isClient ? Ot : vl) || (e.isClient ? el : Il);
|
|
@@ -466,7 +466,7 @@ const Tl = a.forwardRef((e, ie) => {
|
|
|
466
466
|
skip: e.skip || 0,
|
|
467
467
|
take: (e.take !== void 0 ? e.take : e.pageSize) || 10,
|
|
468
468
|
...rl(e.pageable || {})
|
|
469
|
-
}, ve = /* @__PURE__ */ a.createElement(cl, null, e.pager ? /* @__PURE__ */ a.createElement(e.pager, { ...Ie }) : /* @__PURE__ */ a.createElement(Ft, { className: f(s.pager({})), ...Ie })), kt = (t, o) => /* @__PURE__ */ a.createElement("col", { key: o.toString(), width: ne(t) }), Re = (
|
|
469
|
+
}, ve = /* @__PURE__ */ a.createElement(cl, null, e.pager ? /* @__PURE__ */ a.createElement(e.pager, { ...Ie }) : /* @__PURE__ */ a.createElement(Ft, { className: f(s.pager({})), ...Ie })), kt = (t, o) => /* @__PURE__ */ a.createElement("col", { key: o.toString(), width: ne(t) }), Re = (ze = e.cells) != null && ze.footerCell || m.some((t) => {
|
|
470
470
|
var o;
|
|
471
471
|
return !!((o = t.cells) != null && o.footerCell);
|
|
472
472
|
}) ? /* @__PURE__ */ a.createElement(
|
|
@@ -522,7 +522,7 @@ const Tl = a.forwardRef((e, ie) => {
|
|
|
522
522
|
dataRef: b,
|
|
523
523
|
id: R,
|
|
524
524
|
virtualTotal: Q,
|
|
525
|
-
isAllData:
|
|
525
|
+
isAllData: z,
|
|
526
526
|
virtualPageSize: q,
|
|
527
527
|
isVirtualScroll: h,
|
|
528
528
|
detailExpandable: !!e.detail
|
|
@@ -568,7 +568,7 @@ const Tl = a.forwardRef((e, ie) => {
|
|
|
568
568
|
dataRef: b,
|
|
569
569
|
id: R,
|
|
570
570
|
virtualTotal: Q,
|
|
571
|
-
isAllData:
|
|
571
|
+
isAllData: z,
|
|
572
572
|
virtualPageSize: q,
|
|
573
573
|
isVirtualScroll: h,
|
|
574
574
|
detailExpandable: !!e.detail
|
|
@@ -597,7 +597,7 @@ const Tl = a.forwardRef((e, ie) => {
|
|
|
597
597
|
"aria-colcount": g.length,
|
|
598
598
|
"aria-rowcount": v,
|
|
599
599
|
id: R,
|
|
600
|
-
"aria-label":
|
|
600
|
+
"aria-label": _.toLanguageString(rt, fl[rt])
|
|
601
601
|
},
|
|
602
602
|
ye,
|
|
603
603
|
/* @__PURE__ */ a.createElement("div", { className: f(s.container({})), role: "presentation" }, /* @__PURE__ */ a.createElement(ul, null, /* @__PURE__ */ a.createElement("div", { className: f(s.content({})), role: "presentation" }, /* @__PURE__ */ a.createElement("div", { className: f(s.tableWrap({})), role: "presentation" }, /* @__PURE__ */ a.createElement(
|
package/GridToolbar.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 strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const
|
|
8
|
+
"use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const c=require("react"),i=require("@progress/kendo-react-buttons");function s(e){const r=Object.create(null,{[Symbol.toStringTag]:{value:"Module"}});if(e){for(const t in e)if(t!=="default"){const o=Object.getOwnPropertyDescriptor(e,t);Object.defineProperty(r,t,o.get?o:{enumerable:!0,get:()=>e[t]})}}return r.default=e,Object.freeze(r)}const u=s(c),a=e=>{const{ariaLabel:r,_ariaControls:t,children:o,overflow:n="scroll",...l}=e;return u.createElement(i.Toolbar,{className:"k-grid-toolbar",role:"toolbar",ariaLabel:r,_ariaControls:t,overflow:n,...l},o)};a.displayName="KendoReactGridToolbar";exports.GridToolbar=a;
|