@progress/kendo-react-grid 10.0.0-develop.2 → 10.0.0-develop.3
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 +54 -54
- package/GridComponent.js +1 -1
- package/GridComponent.mjs +47 -46
- package/dist/cdn/js/kendo-react-grid.js +1 -1
- package/package-metadata.js +1 -1
- package/package-metadata.mjs +2 -2
- package/package.json +13 -13
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 Kt=require("react"),R=require("@progress/kendo-react-common"),l=require("@progress/kendo-react-data-tools"),Mt=require("./drag/ColumnResize.js"),Tt=require("./drag/CommonDragLogic.js"),At=require("./constants/index.js"),w=require("./utils/index.js"),Me=require("./VirtualScrollFixed.js"),Ht=require("./VirtualScroll.js"),Ft=require("./contextMenu/GridContextMenu.js"),Te=require("./contextMenu/enums.js"),Ae=require("./sortCommon.js");function Gt(t){const v=Object.create(null,{[Symbol.toStringTag]:{value:"Module"}});if(t){for(const h in t)if(h!=="default"){const H=Object.getOwnPropertyDescriptor(t,h);Object.defineProperty(v,h,H.get?H:{enumerable:!0,get:()=>t[h]})}}return v.default=t,Object.freeze(v)}const i=Gt(Kt),He=i.createContext(void 0),Lt=t=>{var we,xe;const v=t.gridProps.isClient,[h,H]=i.useState({}),Fe=e=>{e.event.preventDefault(),H({...h,show:!0,offset:{left:e.event.pageX,top:e.event.pageY},dataItem:e.dataItem,field:e.field})},ge=()=>{H({})},b=i.useMemo(()=>t.columnsRef.current.find(e=>e.field===h.field),[t.columnsRef,h]),fe=i.useMemo(()=>{const e=t.gridProps.sortable&&(b==null?void 0:b.sortable);return w.getDefaultHeadContextMenuItems({sortable:!!e,selectable:l.getSelectionOptions(t.gridProps.selectable).enabled,clipboard:!!t.gridProps.clipboard})},[b,t.gridProps.sortable,t.gridProps.selectable,t.gridProps.clipboard]),me=i.useMemo(()=>{const e=t.gridProps.sortable&&(b==null?void 0:b.sortable);return w.getDefaultBodyContextMenuItems({sortable:!!e,selectable:l.getSelectionOptions(t.gridProps.selectable).enabled,clipboard:!!t.gridProps.clipboard,rowReorderable:w.isRowReorderEnabled(t.gridProps.rowReorderable)})},[b,t.gridProps.sortable,t.gridProps.selectable,t.gridProps.clipboard]),Ge=i.useMemo(()=>{const e=(b==null?void 0:b.contextMenu)||t.gridProps.contextMenu,r=typeof e=="function"?e(h):e;if(r&&h.offset){const n=h.dataItem?Te.GridContextMenuAnchorPart.body:Te.GridContextMenuAnchorPart.head,a=r[n],o=h.dataItem?me:fe;return a===!1?void 0:a===!0||a===void 0?o:a}},[t.gridProps.contextMenu,h,me,fe,b]),Le=e=>{var s,u,P,m,y,Se,De,ke,Ke;const r=e.event.item,n={target:E.current,syntheticEvent:e.event.syntheticEvent,nativeEvent:e.event.nativeEvent,menuItem:r,...e};t.gridProps.onContextMenuItemClick&&g(t.gridProps.onContextMenuItemClick,n);const a=j(),o={selectedField:t.gridProps.selectedField||"",componentId:t.id,dataItems:a,dataItem:e.dataItem,startRowIndex:-1,endRowIndex:-1,startColIndex:-1,endColIndex:-1,ctrlKey:!1,altKey:!1,metaKey:!1,shiftKey:!1,isDrag:!1,...l.getSelectionOptions(t.gridProps.selectable),...n},c=a.findIndex(ue=>ue===e.dataItem);switch((s=r.data)==null?void 0:s.action){case"SortCommand":if(b){const ue=(u=r.name)==null?void 0:u.toLowerCase().includes("asc"),St=((P=r.name)==null?void 0:P.toLowerCase().includes("desc"))?"desc":void 0,Dt=ue?"asc":St,kt=r.name?Dt:void 0;Pe(e.event.syntheticEvent,b,kt)}break;case"SelectRowCommand":pe(o);break;case"SelectAllRowsCommand":Ze(o);break;case"ClearSelectionCommand":et(o);break;case"ReorderRowCommand":q.current=e.dataItem,(m=r.name)!=null&&m.toLowerCase().includes("rowup")&&c>0&&G(e.event.syntheticEvent,c-1,"before"),(y=r.name)!=null&&y.toLowerCase().includes("rowdown")&&c<a.length-1&&G(e.event.syntheticEvent,c+1,"after"),(Se=r.name)!=null&&Se.toLowerCase().includes("rowtop")&&G(e.event.syntheticEvent,0,"before"),(De=r.name)!=null&&De.toLowerCase().includes("rowbottom")&&G(e.event.syntheticEvent,a.length-1,"after");break;case"CopySelectionCommand":B(l.ClipboardActionType.copy,e.event.nativeEvent,{copyHeaders:!((ke=r.name)!=null&&ke.toLowerCase().includes("noheaders"))},e.dataItem,e.field);break;case"PasteCommand":B(l.ClipboardActionType.paste,e.event.nativeEvent,{copyHeaders:!((Ke=r.name)!=null&&Ke.toLowerCase().includes("noheaders"))},e.dataItem,e.field);break}ge()},U=()=>{const e=f.current.filter(r=>r.declarationIndex>=0&&r.parentIndex===-1);return w.sanitizeColumns(e)},Oe=(e,r,n)=>{if(t.gridProps.onContextMenu&&v){const a={target:E.current,syntheticEvent:e,nativeEvent:e.nativeEvent,dataItem:r,field:n};g(t.gridProps.onContextMenu,a)}t.gridProps.contextMenu&&Fe({event:e,dataItem:r,field:n})},ze=e=>{if(e.target!==e.currentTarget)return;clearTimeout(de.current),d.current&&(d.current.table=k.current);const r=e.currentTarget.scrollLeft,n=e.currentTarget.scrollTop,a=t.gridProps.scrollable==="virtual";t.gridProps.columnVirtualization&&(!a||n===ce.current)&&(de.current=window.setTimeout(()=>{te()},0)),t.gridProps.scrollLeftRef&&(t.gridProps.scrollLeftRef.current=r),N.current&&N.current.setScrollLeft(r),z.current&&z.current.setScrollLeft(r),d.current&&n!==ce.current&&d.current.scrollHandler(e),t.gridProps.onScroll&&v&&g(t.gridProps.onScroll,{...I(e)}),ce.current=n},Ne=e=>{l.tableKeyboardNavigation.onKeyDown(e,{navigatable:t.gridProps.navigatable||!1,contextStateRef:D,navigationStateRef:M,onNavigationAction:Ue,columns:U()}),l.tableKeyboardNavigation.onGetSnapshotBeforeUpdate({document:x(),contextStateRef:D,navigationStateRef:M});const r={dataItems:L(),mode:C.mode,cell:C.cell,componentId:t.id,selectedField:t.gridProps.selectedField,...I(e)};t.gridProps.onKeyDown&&v&&g(t.gridProps.onKeyDown,r)},qe=e=>{l.tableKeyboardNavigation.onFocus(e,{navigatable:!!t.gridProps.navigatable,contextStateRef:D})},Ue=e=>{if(e.action==="moveToNextPage"&&rt(e.event),e.action==="moveToPrevPage"&&nt(e.event),e.focusElement&&e.action==="reorderToRight"){const r=parseInt(e.focusElement.ariaColIndex,10)-1;r<f.current.length-1&&Z(r,r+1,e.event)}if(e.focusElement&&e.action==="reorderToLeft"){const r=parseInt(e.focusElement.ariaColIndex,10)-1;r>0&&Z(r,r-1,e.event)}if(e.action==="select"&&Je(e.event),t.gridProps.onNavigationAction&&v){const r={focusElement:e.focusElement,...I(e.event)};g(t.gridProps.onNavigationAction,r)}},Ve=(e,r)=>{t.gridProps.onRowClick&&e.target.nodeName==="TD"&&g(t.gridProps.onRowClick,{dataItem:r,...I(e)})},_e=(e,r)=>{t.gridProps.onRowDoubleClick&&e.target.nodeName==="TD"&&g(t.gridProps.onRowDoubleClick,{dataItem:r,...I(e)})},Be=(e,r,n)=>{if(Ee.enabled&&Ee.mode==="incell"&&t.gridProps.dataItemKey){const a=l.editReducer(t.gridProps.edit,{type:l.EDIT_ACTION.ENTER_FIELD_EDIT,payload:{id:r[t.gridProps.dataItemKey],field:n}});t.gridProps.onEditChange&&g(t.gridProps.onEditChange,{edit:a,...I(e)})}},je=(e,r)=>{var a;if(l.getDetailExpandableOptions(t.detailExpandable).enabled){const o=l.detailExpandReducer((a=t.gridProps.detailExpand)!=null?a:{},e);t.gridProps.onDetailExpandChange&&g(t.gridProps.onDetailExpandChange,{...I(r),detailExpand:o})}},We=(e,r)=>{var a;const n=l.getGroupExpandableOptions(typeof t.gridProps.groupable=="object"?t.gridProps.groupable.expandable!==!1:t.gridProps.groupable);if(n.enabled){const o=l.groupExpandReducer((a=t.gridProps.groupExpand)!=null?a:[],e,n);t.gridProps.onGroupExpandChange&&g(t.gridProps.onGroupExpandChange,{...I(r),groupExpand:o})}},Pe=(e,r,n)=>{const{allowUnsort:a,mode:o}=Ae.normalizeSortable(t.gridProps.sortable||!1,r.sortable||!1),c=(t.gridProps.sort||[]).filter(P=>P.field===r.field)[0],s=n||Ae.firstLevelSortSeqMap[a][c&&c.dir||""],u=o==="single"?[]:(t.gridProps.sort||[]).filter(P=>P.field!==r.field);s!==""&&r.field&&u.push({field:r.field,dir:s}),he(u,e)},$e=e=>{var r;if(e.field===t.gridProps.expandField||e._expand||t.gridProps.group&&e.field===void 0){if(t.gridProps.onExpandChange){const n=t.gridProps.dataItemKey?l.detailExpandReducer((r=t.gridProps.detailExpand)!=null?r:{},{type:l.DETAIL_EXPAND_ACTION.SET,id:e.dataItem[t.gridProps.dataItemKey],payload:e.value}):t.gridProps.detailExpand;g(t.gridProps.onExpandChange,{...I(e.syntheticEvent),expand:n,dataItem:e.dataItem,dataIndex:e.dataIndex,value:e.value})}return}t.gridProps.onItemChange&&g(t.gridProps.onItemChange,{...I(e.syntheticEvent),dataItem:e.dataItem,dataIndex:e.dataIndex,field:e.field,value:e.value})},Xe=e=>{var r;if(t.gridProps.onSelectionChange&&C.enabled){const{event:n,dataItem:a,dataIndex:o,columnIndex:c}=e,s={...I(n.syntheticEvent),dataItem:a,startColIndex:c,endColIndex:c,startRowIndex:o,endRowIndex:o,dataItems:L(),altKey:!1,ctrlKey:!1,shiftKey:!1,metaKey:!1,mode:C.mode,cell:C.cell,isDrag:!1,componentId:t.id,selectedField:t.gridProps.selectedField||""};g(t.gridProps.onSelectionChange,{...s,select:t.gridProps.dataItemKey?l.getSelectedState({event:s,selectedState:(r=t.gridProps.select)!=null?r:{},dataItemKey:t.gridProps.dataItemKey}):{}})}},Je=e=>{var P,m;if(t.gridProps.selectedField||!C.enabled||!t.gridProps.dataItemKey)return;const r={dataItems:L(),mode:C.mode,cell:C.cell,componentId:t.id,selectedField:t.gridProps.selectedField,...I(e)},n=l.getSelectedStateFromKeyDown({event:r,selectedState:(P=t.gridProps.select)!=null?P:{},dataItemKey:t.gridProps.dataItemKey});if(n===t.gridProps.select)return;const a=e.target,o=l.closestTagName(a,"TD"),c=l.closestTagName(a,"TR"),s=l.getColumnIndex(o),u=l.getRowIndex(c);if(s!==void 0&&u!==void 0){const y=(m=w.getDataAsArray(t.gridProps.data))==null?void 0:m[u];t.gridProps.onSelectionChange&&g(t.gridProps.onSelectionChange,{...r,select:n,dataItem:y,startRowIndex:u,startColIndex:s,startDataItem:y,endDataItem:y,endRowIndex:u,endColIndex:s,ctrlKey:e.ctrlKey,altKey:e.altKey,metaKey:e.metaKey,shiftKey:e.shiftKey,isDrag:!1})}},Ye=e=>{var r;if(t.gridProps.onHeaderSelectionChange&&C.enabled){const n=L();g(t.gridProps.onHeaderSelectionChange,{select:e.syntheticEvent.target.checked?n.reduce((a,o)=>(t.gridProps.dataItemKey&&R.getter(t.gridProps.dataItemKey)(o)!==void 0&&(a[R.getter(t.gridProps.dataItemKey)(o)]=!0),a),{}):{},field:e.field,nativeEvent:e.syntheticEvent&&e.syntheticEvent.nativeEvent,syntheticEvent:e.syntheticEvent,target:E.current,dataItems:n,selectedField:(r=t.gridProps.selectedField)!=null?r:""})}},V=(e,r)=>{t.gridProps.onSelectionChange&&C.enabled&&g(t.gridProps.onSelectionChange,{...e,select:r})},Qe=e=>{var r;if(t.gridProps.onSelectionChange&&C.enabled){const n=j()[e.startRowIndex],a=j()[e.endRowIndex],o={syntheticEvent:void 0,target:E.current,selectedField:t.gridProps.selectedField||"",componentId:t.id,dataItems:L(),dataItem:null,startDataItem:n,endDataItem:a,...e},c=l.getSelectedState({event:o,selectedState:(r=t.gridProps.select)!=null?r:{},dataItemKey:t.gridProps.dataItemKey});V(o,c)}},Ze=e=>{if(t.gridProps.onSelectionChange&&C.enabled){const r=e.dataItems[0],n=e.dataItems[e.dataItems.length-1],a={},o={...e,startDataItem:r,endDataItem:n,startRowIndex:0,endRowIndex:e.dataItems.length-1,startColIndex:0,endColIndex:f.current.length-1};e.dataItems.forEach(c=>{const u=R.getter(t.gridProps.dataItemKey)(c);a[u]=e.cell?[...Array(f.current.length).keys()]:!0}),V(o,a)}},pe=e=>{if(t.gridProps.onSelectionChange&&C.enabled){const n=R.getter(t.gridProps.dataItemKey)(e.dataItem),a=0,o=f.current.length-1,c=e.dataItems.findIndex(y=>y[t.gridProps.dataItemKey]===e.dataItem[t.gridProps.dataItemKey]),P={...e,startDataItem:c,endDataItem:c,startRowIndex:c,endRowIndex:c,startColIndex:a,endColIndex:o},m=e.mode==="multiple"?t.gridProps.select||{}:{};m[n]===!0||Array.isArray(m[n])&&m[n].length===f.current.length?delete m[n]:m[n]=e.cell?[...Array(f.current.length).keys()]:!0,V(P,m)}},et=e=>{t.gridProps.onSelectionChange&&C.enabled&&V(e,{})},F=(e,r,n,a,o)=>{const c=t.gridProps.onDataStateChange;if(e){const s={...I(a),...r,targetEvent:o};g(e,s)}else c&&g(c,{...I(a),targetEvent:o||{},dataState:{...gt(),...n}})},_=(e,r,n)=>{F(t.gridProps.onPageChange,{page:e},{skip:e.skip,take:e.take},r,n)},tt=()=>{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},rt=e=>{var o,c;const r=(c=(o=t.gridProps.take)!=null?o:t.gridProps.pageSize)!=null?c:0,n=(t.gridProps.skip||0)+r,a=tt();n<a&&_({skip:n,take:r},e)},nt=e=>{var a,o;const r=(o=(a=t.gridProps.take)!=null?a:t.gridProps.pageSize)!=null?o:0,n=(t.gridProps.skip||0)-r;n>=0&&_({skip:n,take:r},e)},at=e=>{_({skip:e.skip,take:e.take},e.syntheticEvent,e.targetEvent)},he=(e,r)=>{F(t.gridProps.onSortChange,{sort:e},{sort:e,...t.gridProps.scrollable==="virtual"?{skip:0}:{}},r)},ot=(e,r)=>{F(t.gridProps.onFilterChange,{filter:e},{filter:e||void 0,skip:0},r)},it=e=>{const r=t.gridProps.searchFields||f.current.map(o=>o.field)||[],n=e.nativeEvent.target.value,a={logic:"or",filters:r.filter(o=>o!==void 0).map(o=>{var c;return typeof o=="string"?{field:o,value:n,operator:"contains"}:{value:n,operator:(c=o.operator)!=null?c:"contains",field:o.field,ignoreCase:o.ignoreCase}})};F(t.gridProps.onSearchChange,{search:a},{},e.syntheticEvent)},Q=(e,r)=>{const n=r.nativeEvent?r:{nativeEvent:r.nativeEvent||r.originalEvent};e.length===0&&t.gridProps.navigatable&&(ae.current=!0),F(t.gridProps.onGroupChange,{group:e},{group:e,skip:0},n)},ct=e=>{if(t.gridProps.onColumnsStateChange){const r={target:E.current,columnsState:e};g(t.gridProps.onColumnsStateChange,r)}},Z=(e,r,n)=>{const a=f.current[e],o=a.depth,c=m=>{do m++;while(m<f.current.length&&f.current[m].depth>o);return m},s=f.current.splice(e,c(e)-e);f.current.splice(e<r?c(r-s.length):r,0,...s),f.current.filter(m=>m.declarationIndex>=0).forEach((m,y)=>m.orderIndex=y);const u=f.current[e].locked&&f.current[r].locked;l.updateLeft(t.columnsMapRef,f.current,u||Y.current),l.updateRight(t.columnsMapRef,f.current,u||Y.current),ne.current&&(Y.current=!1,ne.current=!1);const P=U();if(te(),t.gridProps.onColumnReorder){const m={target:E.current,columns:P,columnId:a.id,nativeEvent:n};g(t.gridProps.onColumnReorder,m)}},G=(e,r,n)=>{const a=typeof t.gridProps.rowReorderable=="object"?t.gridProps.rowReorderable.enabled:t.gridProps.rowReorderable;if(n==="forbidden"||!a||!q.current)return;const{slicedData:o,dataRef:c}=t,s=(o||c)[r];t.gridProps.onRowReorder&&g(t.gridProps.onRowReorder,{draggedDataItems:[q.current],droppedDataItem:s==null?void 0:s.dataItem,dropPosition:n,nativeEvent:e.originalEvent,dragEvent:e,target:E.current}),q.current=null},dt=(e,r,n)=>{if(t.gridProps.group===void 0)return;const a=t.gridProps.group.slice();a.splice(r,0,...a.splice(e,1)),Q(a,n)},be=(e,r,n)=>{const a=f.current[e].field;if(!a)return;const o=(t.gridProps.group||[]).slice();o.splice(r,0,{field:a}),Q(o,n)},lt=(e,r)=>{const n=K.current.getCurrentGroupsLength;be(e,n,r)},p=()=>{let e=0;if(!S.current.colGroupMain)return;const r=S.current.colGroupMain.children;for(let n=0;n<r.length;n++){const a=r[n].width;if(!a)return;e+=parseFloat(a.toString())}e=Math.round(e),N.current&&N.current.setWidth(e),z.current&&z.current.setWidth(e),k.current&&(k.current.style.width=e+"px")},B=i.useCallback((e,r,n,a,o)=>{var P;if(!st()&&!n||!e)return;const c={type:e,nativeEvent:r,columns:f.current,dataItemKey:t.gridProps.dataItemKey||"",dataItem:a,field:o,...typeof t.gridProps.clipboard!="boolean"?t.gridProps.clipboard:{},...n},s=j(),u=l.populateClipboardData({event:c,data:s,selectedState:(P=t.gridProps.select)!=null?P:{},previousCopiedItems:Re.current});e!==l.ClipboardActionType.paste&&(Re.current=u.copiedItems),t.gridProps.onClipboard&&v&&g(t.gridProps.onClipboard,{...c,...u})},[t.gridProps.select,t.gridProps.dataItemKey,t.gridProps.data,t.gridProps.clipboard,t.gridProps.onClipboard]),st=()=>{var o,c,s;if(!R.canUseDOM)return!1;const e=R.getActiveElement(x()),r=e?e.matches(".k-table-td")?e:(o=x())==null?void 0:o.body:(c=x())==null?void 0:c.body,n=r.closest(".k-grid-container"),a=r&&((s=A.current)==null?void 0:s.contains(r));return!!(r&&a&&n)},ut=(e,r,n,a,o,c)=>{p(),Y.current=!0,ne.current=!0,t.gridProps.onColumnResize&&v&&g(t.gridProps.onColumnResize,{columns:U(),nativeEvent:a,targetColumnId:c,index:e,newWidth:r,oldWidth:n,end:o,target:E.current})},gt=()=>{var e;return{filter:t.gridProps.filter,sort:t.gridProps.sort,skip:t.gridProps.skip,take:(e=t.gridProps.take)!=null?e:t.gridProps.pageSize,group:t.gridProps.group}},I=e=>({nativeEvent:e&&e.nativeEvent,syntheticEvent:e,target:E.current}),ft=e=>({...e,nativeEvent:void 0,syntheticEvent:void 0,target:void 0,targetEvent:void 0,focusElement:void 0}),g=(e,r)=>{if(t.gridProps.isClient){e(r);return}e(ft(r))},mt=()=>{var e,r,n;if(O.current&&((e=O.current)==null?void 0:e.getElementsByClassName("k-grid-edit-row").length)>0){ie.current=!1,(r=document.activeElement)!=null&&r.closest(".k-grid-edit-row")?oe.current=document.activeElement:oe.current=void 0;const a=Array.from((n=O.current)==null?void 0:n.getElementsByClassName("k-grid-edit-row"));a.length>se.current.length?J.current=a.filter(o=>!se.current.includes(o))[0]:a.length===1&&(J.current=a[0],ie.current=!0),se.current=a}},L=()=>t.dataRef.filter(e=>e.rowType==="data").map(e=>e.dataItem),j=()=>(t.slicedData||t.dataRef).filter(e=>e.rowType==="data").map(e=>e.dataItem),x=()=>{var e;if(R.canUseDOM)return((e=W())==null?void 0:e.ownerDocument)||document},W=()=>A.current,ee=i.useCallback(e=>{var a;if(!d.current||!((a=d.current)!=null&&a.container)||t.gridProps.scrollable==="none")return;T.current&&T.current.disconnect();const{rowIndex:r}=e,n=W();if(t.gridProps.scrollable==="virtual")d.current.askedSkip=r,d.current.container.scroll(0,Math.round(d.current.askedSkip/d.current.total*d.current.container.scrollHeight));else if(n){const o=r<1?n.querySelector("tbody > tr:nth-child(1)"):n.querySelector(`tbody > tr:nth-child(${r+1})`);o&&X.current&&(X.current.scrollTop=o.offsetTop)}},[t.gridProps.scrollable]),Ie=e=>JSON.stringify(e.map(r=>({id:r.id,field:r.field,title:r.title,children:r.children}))),Pt=()=>Ie(wt)===Ie(f.current),ht=()=>{Pt()||te()},bt=()=>{const{data:e,total:r}=t.gridProps;return Array.isArray(e)?e.length===r:e?r===e.total:!1},It=(e,r)=>{var n,a;if(d.current){if(d.current.fixedScroll=t.gridProps.fixedScroll||!1,d.current.PageChange=_,d.current.realSkip=t.gridProps.skip||0,d.current.pageSize=(a=(n=t.gridProps.take)!=null?n:t.gridProps.pageSize)!=null?a:0,d.current.scrollableVirtual=t.gridProps.scrollable==="virtual",d.current.total=e,d.current.propsSkip=(t.gridProps.skip||0)+(t.gridProps.scrollable==="virtual"?d.current.topCacheCount+(d.current.attendedSkip-(t.gridProps.skip||0)):0),t.gridProps.rowHeight!==void 0&&t.gridProps.rowHeight>0&&!r){const o=t.gridProps.rowHeight*e;d.current.containerHeight=w.firefox?Math.min(w.firefoxMaxHeight,o):o}else d.current.containerHeight=1533915;if(d.current.containerRef=X,d.current.tableBodyRef=O,d.current.table=k.current,d.current instanceof Me.VirtualScrollFixed){const{rowHeight:o=0,detail:c,expandField:s}=t.gridProps;let{detailRowHeight:u=0}=t.gridProps;u=c&&s?u:o,bt()?(d.current.total=t.dataRef.length,d.current.rowHeightService=new R.RowHeightService(t.dataRef.length,o,u,t.dataRef)):d.current.rowHeightService=new R.RowHeightService(e,o,u);const P=d.current.rowHeightService.totalHeight();d.current.containerHeight=w.firefox?Math.min(w.firefoxMaxHeight,P):P}}},Ct=()=>{const e=n=>n.map(a=>({id:a.id,field:a.field,title:a.title,hidden:!1,children:a.children?e(a.children):null})),r=t.columnsRef.current.filter(n=>n.depth===0);return e(r)},Ce=i.useCallback(e=>{const r={rowIndex:le.current};e.forEach(n=>{n.isIntersecting||ee(r)})},[ee]),te=()=>{t.gridProps.forceUpdate&&t.gridProps.forceUpdate()},Rt=e=>e.left!==void 0?ve!=="rtl"?{left:e.left,right:e.right}:{left:e.right,right:e.left}:{},E=i.useRef(null),f=t.columnsRef,d=i.useRef(),S=i.useRef(),K=i.useRef(),D=i.useRef(),M=i.useRef(),$=i.useRef(),T=i.useRef(null),O=i.useRef(null),vt=i.useRef(null),X=i.useRef(null),k=i.useRef(null),re=i.useRef(null),A=i.useRef(null),z=i.useRef(null),N=i.useRef(null),ne=i.useRef(!1),ae=i.useRef(!1),J=i.useRef(),oe=i.useRef(),ie=i.useRef(!1),Y=i.useRef(!0),ce=i.useRef(0),de=i.useRef(),le=i.useRef(),se=i.useRef([]),Re=i.useRef([]),q=i.useRef(null),Et=i.useRef(null),yt=i.useRef(null),ve=R.useDir(A),wt=i.useMemo(()=>i.Children.toArray(t.gridProps.children),[t.gridProps.children]),C=l.getSelectionOptions((we=t.gridProps.selectable)!=null?we:!!t.gridProps.selectedField),Ee=l.getEditableOptions((xe=t.gridProps.editable)!=null?xe:!!t.gridProps.editField);i.useMemo(()=>{l.tableKeyboardNavigation.onConstructor({navigatable:!!t.gridProps.navigatable,contextStateRef:D,navigationStateRef:M,idPrefix:t.id})},[]),i.useMemo(()=>{var n;(n=d.current)==null||n.reset();const e=t.gridProps.groupable===!0||typeof t.gridProps.groupable=="object"&&t.gridProps.groupable.enabled!==!1,r=t.isFixedVirtualScroll?Me.VirtualScrollFixed:Ht.VirtualScroll;d.current=new r(e||t.gridProps.rowHeight===void 0||t.gridProps.rowHeight===0)},[t.gridProps.scrollable,t.gridProps.total,t.gridProps.filter,t.gridProps.group,t.gridProps.groupable,t.gridProps.sort,t.gridProps.rowHeight]),i.useEffect(()=>(t.gridProps.clipboard&&($.current=new l.ClipboardService(B),$.current.addEventListeners(x())),()=>{$.current&&$.current.removeEventListeners(x())}),[t.gridProps.onClipboard,t.gridProps.clipboard,B,x]),i.useEffect(()=>(t.gridProps.columnVirtualization&&!window.navigator.userAgent.match(At.SAFARI_REGEX)&&(re.current&&(re.current.style.display="block"),k.current&&(k.current.style.display="block")),p(),R.setScrollbarWidth(),l.tableKeyboardNavigation.onComponentDidMount({scope:A.current||void 0,contextStateRef:D,navigationStateRef:M}),()=>{clearTimeout(de.current)}),[]),i.useEffect(()=>{var e;p(),R.setScrollbarWidth(),(e=d.current)!=null&&e.tableTransform&&d.current.table&&(d.current.table.style.transform=d.current.tableTransform,d.current.tableTransform=""),mt(),l.tableKeyboardNavigation.onComponentDidUpdate({scope:A.current||void 0,contextStateRef:D,navigationStateRef:M,focusFirst:ae.current,newEditableRow:J.current,singleEditRow:ie.current,lastActiveElement:oe.current,navigatable:t.gridProps.navigatable}),ae.current=!1,J.current=void 0}),i.useEffect(()=>{if(R.canUseDOM){const e={rootMargin:"0px",threshold:.9};T.current=window.IntersectionObserver&&new window.IntersectionObserver(Ce,e)||null}},[Ce]),i.useEffect(()=>{var r;let e;return R.canUseDOM&&window.ResizeObserver&&(e=new window.ResizeObserver(ht),e.observe((r=x())==null?void 0:r.body)),()=>{e==null||e.disconnect()}},[]),i.useImperativeHandle(E,()=>({get element(){return W()},props:t.gridProps,get columns(){return U()},scrollIntoView:e=>{var a;if(!((a=d.current)!=null&&a.container)||t.gridProps.scrollable==="none")return;const{rowIndex:r}=e;le.current=r;const n=W();if(T.current&&n){T.current.disconnect();const o=n.querySelector(`[absolute-row-index="${le.current}"]`);o?T.current.observe(o):ee(e)}},fitColumns:e=>{S.current.dblClickHandler(null,e)}})),i.useImperativeHandle(t.gridRef,()=>E.current),i.useMemo(()=>{S.current=new Mt.ColumnResize(ut)},[t.gridProps.onColumnResize]),i.useMemo(()=>{K.current=new Tt.CommonDragLogic(Z,dt,be)},[t.gridProps.onColumnReorder,t.gridProps.onGroupChange,t.gridProps.group,t.gridProps.groupable]),S.current.resizable=t.gridProps.resizable||!1,S.current.columns=f.current;const ye=t.gridProps.groupable===!0||typeof t.gridProps.groupable=="object"&&t.gridProps.groupable.enabled!==!1;K.current.reorderable=t.gridProps.reorderable||!1,K.current.groupable=ye,K.current.columns=f.current,It(t.total,ye);const xt=t.gridProps.columnsState||Ct();return i.createElement(He.Provider,{value:{isClient:v,rowReorder:G,activeDragRowDataItemRef:q,reorderRowDragTargetRef:Et,reorderRowDropTargetRef:yt,dir:ve,getCellPositionStyle:Rt,dataItemKey:t.gridProps.dataItemKey,columnsState:xt,onColumnsStateChange:ct,groupChange:Q,selectionRelease:Qe,pagerPageChange:at,onContextMenu:Oe,rowClick:Ve,rowDblClick:_e,cellClick:Be,headerCellClick:Pe,itemChange:$e,sortChange:he,filterChange:ot,searchChange:it,onHeaderSelectionChange:Ye,columnGroupChange:lt,onKeyDown:Ne,onFocus:qe,scrollHandler:ze,selectionChange:Xe,dispatchDetailExpand:je,dispatchGroupExpand:We,columnResizeRef:S,dragLogicRef:K,navigationStateRef:M,tableElementRef:k,tableBodyElementRef:O,headerElementRef:vt,containerElementRef:X,headTableElementRef:re,elementRef:A,footerRef:z,headerRef:N,vsRef:d}},i.createElement(l.TableKeyboardNavigationContext.Provider,{value:D.current},t.children),i.createElement(Ft.GridContextMenu,{show:h.show,dataItem:h.dataItem,field:h.field,items:Ge,offset:h.offset,onClose:ge,onSelect:Le}))};exports.GridClientWrapper=Lt;exports.GridContext=He;
|
|
9
|
+
"use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const kt=require("react"),R=require("@progress/kendo-react-common"),l=require("@progress/kendo-react-data-tools"),Kt=require("./drag/ColumnResize.js"),Mt=require("./drag/CommonDragLogic.js"),Tt=require("./constants/index.js"),w=require("./utils/index.js"),Me=require("./VirtualScrollFixed.js"),At=require("./VirtualScroll.js"),Ht=require("./contextMenu/GridContextMenu.js"),Te=require("./contextMenu/enums.js"),Ae=require("./sortCommon.js");function Ft(t){const v=Object.create(null,{[Symbol.toStringTag]:{value:"Module"}});if(t){for(const h in t)if(h!=="default"){const H=Object.getOwnPropertyDescriptor(t,h);Object.defineProperty(v,h,H.get?H:{enumerable:!0,get:()=>t[h]})}}return v.default=t,Object.freeze(v)}const i=Ft(kt),He=i.createContext(void 0),Gt=t=>{var we,xe;const v=t.gridProps.isClient,[h,H]=i.useState({}),Fe=e=>{e.event.preventDefault(),H({...h,show:!0,offset:{left:e.event.pageX,top:e.event.pageY},dataItem:e.dataItem,field:e.field})},ge=()=>{H({})},b=i.useMemo(()=>t.columnsRef.current.find(e=>e.field===h.field),[t.columnsRef,h]),fe=i.useMemo(()=>{const e=t.gridProps.sortable&&(b==null?void 0:b.sortable);return w.getDefaultHeadContextMenuItems({sortable:!!e,selectable:l.getSelectionOptions(t.gridProps.selectable).enabled,clipboard:!!t.gridProps.clipboard})},[b,t.gridProps.sortable,t.gridProps.selectable,t.gridProps.clipboard]),me=i.useMemo(()=>{const e=t.gridProps.sortable&&(b==null?void 0:b.sortable);return w.getDefaultBodyContextMenuItems({sortable:!!e,selectable:l.getSelectionOptions(t.gridProps.selectable).enabled,clipboard:!!t.gridProps.clipboard,rowReorderable:w.isRowReorderEnabled(t.gridProps.rowReorderable)})},[b,t.gridProps.sortable,t.gridProps.selectable,t.gridProps.clipboard]),Ge=i.useMemo(()=>{const e=(b==null?void 0:b.contextMenu)||t.gridProps.contextMenu,r=typeof e=="function"?e(h):e;if(r&&h.offset){const n=h.dataItem?Te.GridContextMenuAnchorPart.body:Te.GridContextMenuAnchorPart.head,a=r[n],o=h.dataItem?me:fe;return a===!1?void 0:a===!0||a===void 0?o:a}},[t.gridProps.contextMenu,h,me,fe,b]),Le=e=>{var s,u,P,m,y,Se,De,ke,Ke;const r=e.event.item,n={target:E.current,syntheticEvent:e.event.syntheticEvent,nativeEvent:e.event.nativeEvent,menuItem:r,...e};t.gridProps.onContextMenuItemClick&&g(t.gridProps.onContextMenuItemClick,n);const a=j(),o={selectedField:t.gridProps.selectedField||"",componentId:t.id,dataItems:a,dataItem:e.dataItem,startRowIndex:-1,endRowIndex:-1,startColIndex:-1,endColIndex:-1,ctrlKey:!1,altKey:!1,metaKey:!1,shiftKey:!1,isDrag:!1,...l.getSelectionOptions(t.gridProps.selectable),...n},c=a.findIndex(ue=>ue===e.dataItem);switch((s=r.data)==null?void 0:s.action){case"SortCommand":if(b){const ue=(u=r.name)==null?void 0:u.toLowerCase().includes("asc"),xt=((P=r.name)==null?void 0:P.toLowerCase().includes("desc"))?"desc":void 0,St=ue?"asc":xt,Dt=r.name?St:void 0;Pe(e.event.syntheticEvent,b,Dt)}break;case"SelectRowCommand":pe(o);break;case"SelectAllRowsCommand":Ze(o);break;case"ClearSelectionCommand":et(o);break;case"ReorderRowCommand":q.current=e.dataItem,(m=r.name)!=null&&m.toLowerCase().includes("rowup")&&c>0&&G(e.event.syntheticEvent,c-1,"before"),(y=r.name)!=null&&y.toLowerCase().includes("rowdown")&&c<a.length-1&&G(e.event.syntheticEvent,c+1,"after"),(Se=r.name)!=null&&Se.toLowerCase().includes("rowtop")&&G(e.event.syntheticEvent,0,"before"),(De=r.name)!=null&&De.toLowerCase().includes("rowbottom")&&G(e.event.syntheticEvent,a.length-1,"after");break;case"CopySelectionCommand":B(l.ClipboardActionType.copy,e.event.nativeEvent,{copyHeaders:!((ke=r.name)!=null&&ke.toLowerCase().includes("noheaders"))},e.dataItem,e.field);break;case"PasteCommand":B(l.ClipboardActionType.paste,e.event.nativeEvent,{copyHeaders:!((Ke=r.name)!=null&&Ke.toLowerCase().includes("noheaders"))},e.dataItem,e.field);break}ge()},U=()=>{const e=f.current.filter(r=>r.declarationIndex>=0&&r.parentIndex===-1);return w.sanitizeColumns(e)},Oe=(e,r,n)=>{if(t.gridProps.onContextMenu&&v){const a={target:E.current,syntheticEvent:e,nativeEvent:e.nativeEvent,dataItem:r,field:n};g(t.gridProps.onContextMenu,a)}t.gridProps.contextMenu&&Fe({event:e,dataItem:r,field:n})},ze=e=>{if(e.target!==e.currentTarget)return;clearTimeout(de.current),d.current&&(d.current.table=k.current);const r=e.currentTarget.scrollLeft,n=e.currentTarget.scrollTop,a=t.gridProps.scrollable==="virtual";t.gridProps.columnVirtualization&&(!a||n===ce.current)&&(de.current=window.setTimeout(()=>{te()},0)),t.gridProps.scrollLeftRef&&(t.gridProps.scrollLeftRef.current=r),N.current&&N.current.setScrollLeft(r),z.current&&z.current.setScrollLeft(r),d.current&&n!==ce.current&&d.current.scrollHandler(e),t.gridProps.onScroll&&v&&g(t.gridProps.onScroll,{...I(e)}),ce.current=n},Ne=e=>{l.tableKeyboardNavigation.onKeyDown(e,{navigatable:t.gridProps.navigatable||!1,contextStateRef:D,navigationStateRef:M,onNavigationAction:Ue,columns:U()}),l.tableKeyboardNavigation.onGetSnapshotBeforeUpdate({document:x(),contextStateRef:D,navigationStateRef:M});const r={dataItems:L(),mode:C.mode,cell:C.cell,componentId:t.id,selectedField:t.gridProps.selectedField,...I(e)};t.gridProps.onKeyDown&&v&&g(t.gridProps.onKeyDown,r)},qe=e=>{l.tableKeyboardNavigation.onFocus(e,{navigatable:!!t.gridProps.navigatable,contextStateRef:D})},Ue=e=>{if(e.action==="moveToNextPage"&&rt(e.event),e.action==="moveToPrevPage"&&nt(e.event),e.focusElement&&e.action==="reorderToRight"){const r=parseInt(e.focusElement.ariaColIndex,10)-1;r<f.current.length-1&&Z(r,r+1,e.event)}if(e.focusElement&&e.action==="reorderToLeft"){const r=parseInt(e.focusElement.ariaColIndex,10)-1;r>0&&Z(r,r-1,e.event)}if(e.action==="select"&&Je(e.event),t.gridProps.onNavigationAction&&v){const r={focusElement:e.focusElement,...I(e.event)};g(t.gridProps.onNavigationAction,r)}},Ve=(e,r)=>{t.gridProps.onRowClick&&e.target.nodeName==="TD"&&g(t.gridProps.onRowClick,{dataItem:r,...I(e)})},_e=(e,r)=>{t.gridProps.onRowDoubleClick&&e.target.nodeName==="TD"&&g(t.gridProps.onRowDoubleClick,{dataItem:r,...I(e)})},Be=(e,r,n)=>{if(Ee.enabled&&Ee.mode==="incell"&&t.gridProps.dataItemKey){const a=l.editReducer(t.gridProps.edit,{type:l.EDIT_ACTION.ENTER_FIELD_EDIT,payload:{id:r[t.gridProps.dataItemKey],field:n}});t.gridProps.onEditChange&&g(t.gridProps.onEditChange,{edit:a,...I(e)})}},je=(e,r)=>{var a;if(l.getDetailExpandableOptions(t.detailExpandable).enabled){const o=l.detailExpandReducer((a=t.gridProps.detailExpand)!=null?a:{},e);t.gridProps.onDetailExpandChange&&g(t.gridProps.onDetailExpandChange,{...I(r),detailExpand:o})}},We=(e,r)=>{var a;const n=l.getGroupExpandableOptions(typeof t.gridProps.groupable=="object"?t.gridProps.groupable.expandable!==!1:t.gridProps.groupable);if(n.enabled){const o=l.groupExpandReducer((a=t.gridProps.groupExpand)!=null?a:[],e,n);t.gridProps.onGroupExpandChange&&g(t.gridProps.onGroupExpandChange,{...I(r),groupExpand:o})}},Pe=(e,r,n)=>{const{allowUnsort:a,mode:o}=Ae.normalizeSortable(t.gridProps.sortable||!1,r.sortable||!1),c=(t.gridProps.sort||[]).filter(P=>P.field===r.field)[0],s=n||Ae.firstLevelSortSeqMap[a][c&&c.dir||""],u=o==="single"?[]:(t.gridProps.sort||[]).filter(P=>P.field!==r.field);s!==""&&r.field&&u.push({field:r.field,dir:s}),he(u,e)},$e=e=>{var r;if(e.field===t.gridProps.expandField||e._expand||t.gridProps.group&&e.field===void 0){if(t.gridProps.onExpandChange){const n=t.gridProps.dataItemKey?l.detailExpandReducer((r=t.gridProps.detailExpand)!=null?r:{},{type:l.DETAIL_EXPAND_ACTION.SET,id:e.dataItem[t.gridProps.dataItemKey],payload:e.value}):t.gridProps.detailExpand;g(t.gridProps.onExpandChange,{...I(e.syntheticEvent),expand:n,dataItem:e.dataItem,dataIndex:e.dataIndex,value:e.value})}return}t.gridProps.onItemChange&&g(t.gridProps.onItemChange,{...I(e.syntheticEvent),dataItem:e.dataItem,dataIndex:e.dataIndex,field:e.field,value:e.value})},Xe=e=>{var r;if(t.gridProps.onSelectionChange&&C.enabled){const{event:n,dataItem:a,dataIndex:o,columnIndex:c}=e,s={...I(n.syntheticEvent),dataItem:a,startColIndex:c,endColIndex:c,startRowIndex:o,endRowIndex:o,dataItems:L(),altKey:!1,ctrlKey:!1,shiftKey:!1,metaKey:!1,mode:C.mode,cell:C.cell,isDrag:!1,componentId:t.id,selectedField:t.gridProps.selectedField||""};g(t.gridProps.onSelectionChange,{...s,select:t.gridProps.dataItemKey?l.getSelectedState({event:s,selectedState:(r=t.gridProps.select)!=null?r:{},dataItemKey:t.gridProps.dataItemKey}):{}})}},Je=e=>{var P,m;if(t.gridProps.selectedField||!C.enabled||!t.gridProps.dataItemKey)return;const r={dataItems:L(),mode:C.mode,cell:C.cell,componentId:t.id,selectedField:t.gridProps.selectedField,...I(e)},n=l.getSelectedStateFromKeyDown({event:r,selectedState:(P=t.gridProps.select)!=null?P:{},dataItemKey:t.gridProps.dataItemKey});if(n===t.gridProps.select)return;const a=e.target,o=l.closestTagName(a,"TD"),c=l.closestTagName(a,"TR"),s=l.getColumnIndex(o),u=l.getRowIndex(c);if(s!==void 0&&u!==void 0){const y=(m=w.getDataAsArray(t.gridProps.data))==null?void 0:m[u];t.gridProps.onSelectionChange&&g(t.gridProps.onSelectionChange,{...r,select:n,dataItem:y,startRowIndex:u,startColIndex:s,startDataItem:y,endDataItem:y,endRowIndex:u,endColIndex:s,ctrlKey:e.ctrlKey,altKey:e.altKey,metaKey:e.metaKey,shiftKey:e.shiftKey,isDrag:!1})}},Ye=e=>{var r;if(t.gridProps.onHeaderSelectionChange&&C.enabled){const n=L();g(t.gridProps.onHeaderSelectionChange,{select:e.syntheticEvent.target.checked?n.reduce((a,o)=>(t.gridProps.dataItemKey&&R.getter(t.gridProps.dataItemKey)(o)!==void 0&&(a[R.getter(t.gridProps.dataItemKey)(o)]=!0),a),{}):{},field:e.field,nativeEvent:e.syntheticEvent&&e.syntheticEvent.nativeEvent,syntheticEvent:e.syntheticEvent,target:E.current,dataItems:n,selectedField:(r=t.gridProps.selectedField)!=null?r:""})}},V=(e,r)=>{t.gridProps.onSelectionChange&&C.enabled&&g(t.gridProps.onSelectionChange,{...e,select:r})},Qe=e=>{var r;if(t.gridProps.onSelectionChange&&C.enabled){const n=j()[e.startRowIndex],a=j()[e.endRowIndex],o={syntheticEvent:void 0,target:E.current,selectedField:t.gridProps.selectedField||"",componentId:t.id,dataItems:L(),dataItem:null,startDataItem:n,endDataItem:a,...e},c=l.getSelectedState({event:o,selectedState:(r=t.gridProps.select)!=null?r:{},dataItemKey:t.gridProps.dataItemKey});V(o,c)}},Ze=e=>{if(t.gridProps.onSelectionChange&&C.enabled){const r=e.dataItems[0],n=e.dataItems[e.dataItems.length-1],a={},o={...e,startDataItem:r,endDataItem:n,startRowIndex:0,endRowIndex:e.dataItems.length-1,startColIndex:0,endColIndex:f.current.length-1};e.dataItems.forEach(c=>{const u=R.getter(t.gridProps.dataItemKey)(c);a[u]=e.cell?[...Array(f.current.length).keys()]:!0}),V(o,a)}},pe=e=>{if(t.gridProps.onSelectionChange&&C.enabled){const n=R.getter(t.gridProps.dataItemKey)(e.dataItem),a=0,o=f.current.length-1,c=e.dataItems.findIndex(y=>y[t.gridProps.dataItemKey]===e.dataItem[t.gridProps.dataItemKey]),P={...e,startDataItem:c,endDataItem:c,startRowIndex:c,endRowIndex:c,startColIndex:a,endColIndex:o},m=e.mode==="multiple"?t.gridProps.select||{}:{};m[n]===!0||Array.isArray(m[n])&&m[n].length===f.current.length?delete m[n]:m[n]=e.cell?[...Array(f.current.length).keys()]:!0,V(P,m)}},et=e=>{t.gridProps.onSelectionChange&&C.enabled&&V(e,{})},F=(e,r,n,a,o)=>{const c=t.gridProps.onDataStateChange;if(e){const s={...I(a),...r,targetEvent:o};g(e,s)}else c&&g(c,{...I(a),targetEvent:o||{},dataState:{...gt(),...n}})},_=(e,r,n)=>{F(t.gridProps.onPageChange,{page:e},{skip:e.skip,take:e.take},r,n)},tt=()=>{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},rt=e=>{var o,c;const r=(c=(o=t.gridProps.take)!=null?o:t.gridProps.pageSize)!=null?c:0,n=(t.gridProps.skip||0)+r,a=tt();n<a&&_({skip:n,take:r},e)},nt=e=>{var a,o;const r=(o=(a=t.gridProps.take)!=null?a:t.gridProps.pageSize)!=null?o:0,n=(t.gridProps.skip||0)-r;n>=0&&_({skip:n,take:r},e)},at=e=>{_({skip:e.skip,take:e.take},e.syntheticEvent,e.targetEvent)},he=(e,r)=>{F(t.gridProps.onSortChange,{sort:e},{sort:e,...t.gridProps.scrollable==="virtual"?{skip:0}:{}},r)},ot=(e,r)=>{F(t.gridProps.onFilterChange,{filter:e},{filter:e||void 0,skip:0},r)},it=e=>{const r=t.gridProps.searchFields||f.current.map(o=>o.field)||[],n=e.nativeEvent.target.value,a={logic:"or",filters:r.filter(o=>o!==void 0).map(o=>{var c;return typeof o=="string"?{field:o,value:n,operator:"contains"}:{value:n,operator:(c=o.operator)!=null?c:"contains",field:o.field,ignoreCase:o.ignoreCase}})};F(t.gridProps.onSearchChange,{search:a},{},e.syntheticEvent)},Q=(e,r)=>{const n=r.nativeEvent?r:{nativeEvent:r.nativeEvent||r.originalEvent};e.length===0&&t.gridProps.navigatable&&(ae.current=!0),F(t.gridProps.onGroupChange,{group:e},{group:e,skip:0},n)},ct=e=>{if(t.gridProps.onColumnsStateChange){const r={target:E.current,columnsState:e};g(t.gridProps.onColumnsStateChange,r)}},Z=(e,r,n)=>{const a=f.current[e],o=a.depth,c=m=>{do m++;while(m<f.current.length&&f.current[m].depth>o);return m},s=f.current.splice(e,c(e)-e);f.current.splice(e<r?c(r-s.length):r,0,...s),f.current.filter(m=>m.declarationIndex>=0).forEach((m,y)=>m.orderIndex=y);const u=f.current[e].locked&&f.current[r].locked;l.updateLeft(t.columnsMapRef,f.current,u||Y.current),l.updateRight(t.columnsMapRef,f.current,u||Y.current),ne.current&&(Y.current=!1,ne.current=!1);const P=U();if(te(),t.gridProps.onColumnReorder){const m={target:E.current,columns:P,columnId:a.id,nativeEvent:n};g(t.gridProps.onColumnReorder,m)}},G=(e,r,n)=>{const a=typeof t.gridProps.rowReorderable=="object"?t.gridProps.rowReorderable.enabled:t.gridProps.rowReorderable;if(n==="forbidden"||!a||!q.current)return;const{slicedData:o,dataRef:c}=t,s=(o||c)[r];t.gridProps.onRowReorder&&g(t.gridProps.onRowReorder,{draggedDataItems:[q.current],droppedDataItem:s==null?void 0:s.dataItem,dropPosition:n,nativeEvent:e.originalEvent,dragEvent:e,target:E.current}),q.current=null},dt=(e,r,n)=>{if(t.gridProps.group===void 0)return;const a=t.gridProps.group.slice();a.splice(r,0,...a.splice(e,1)),Q(a,n)},be=(e,r,n)=>{const a=f.current[e].field;if(!a)return;const o=(t.gridProps.group||[]).slice();o.splice(r,0,{field:a}),Q(o,n)},lt=(e,r)=>{const n=K.current.getCurrentGroupsLength;be(e,n,r)},p=()=>{let e=0;if(!S.current.colGroupMain)return;const r=S.current.colGroupMain.children;for(let n=0;n<r.length;n++){const a=r[n].width;if(!a)return;e+=parseFloat(a.toString())}e=Math.round(e),N.current&&N.current.setWidth(e),z.current&&z.current.setWidth(e),k.current&&(k.current.style.width=e+"px")},B=i.useCallback((e,r,n,a,o)=>{var P;if(!st()&&!n||!e)return;const c={type:e,nativeEvent:r,columns:f.current,dataItemKey:t.gridProps.dataItemKey||"",dataItem:a,field:o,...typeof t.gridProps.clipboard!="boolean"?t.gridProps.clipboard:{},...n},s=j(),u=l.populateClipboardData({event:c,data:s,selectedState:(P=t.gridProps.select)!=null?P:{},previousCopiedItems:Re.current});e!==l.ClipboardActionType.paste&&(Re.current=u.copiedItems),t.gridProps.onClipboard&&v&&g(t.gridProps.onClipboard,{...c,...u})},[t.gridProps.select,t.gridProps.dataItemKey,t.gridProps.data,t.gridProps.clipboard,t.gridProps.onClipboard]),st=()=>{var o,c,s;if(!R.canUseDOM)return!1;const e=R.getActiveElement(x()),r=e?e.matches(".k-table-td")?e:(o=x())==null?void 0:o.body:(c=x())==null?void 0:c.body,n=r.closest(".k-grid-container"),a=r&&((s=A.current)==null?void 0:s.contains(r));return!!(r&&a&&n)},ut=(e,r,n,a,o,c)=>{p(),Y.current=!0,ne.current=!0,t.gridProps.onColumnResize&&v&&g(t.gridProps.onColumnResize,{columns:U(),nativeEvent:a,targetColumnId:c,index:e,newWidth:r,oldWidth:n,end:o,target:E.current})},gt=()=>{var e;return{filter:t.gridProps.filter,sort:t.gridProps.sort,skip:t.gridProps.skip,take:(e=t.gridProps.take)!=null?e:t.gridProps.pageSize,group:t.gridProps.group}},I=e=>({nativeEvent:e&&e.nativeEvent,syntheticEvent:e,target:E.current}),ft=e=>({...e,nativeEvent:void 0,syntheticEvent:void 0,target:void 0,targetEvent:void 0,focusElement:void 0}),g=(e,r)=>{if(t.gridProps.isClient){e(r);return}e(ft(r))},mt=()=>{var e,r,n;if(O.current&&((e=O.current)==null?void 0:e.getElementsByClassName("k-grid-edit-row").length)>0){ie.current=!1,(r=document.activeElement)!=null&&r.closest(".k-grid-edit-row")?oe.current=document.activeElement:oe.current=void 0;const a=Array.from((n=O.current)==null?void 0:n.getElementsByClassName("k-grid-edit-row"));a.length>se.current.length?J.current=a.filter(o=>!se.current.includes(o))[0]:a.length===1&&(J.current=a[0],ie.current=!0),se.current=a}},L=()=>t.dataRef.filter(e=>e.rowType==="data").map(e=>e.dataItem),j=()=>(t.slicedData||t.dataRef).filter(e=>e.rowType==="data").map(e=>e.dataItem),x=()=>{var e;if(R.canUseDOM)return((e=W())==null?void 0:e.ownerDocument)||document},W=()=>A.current,ee=i.useCallback(e=>{var a;if(!d.current||!((a=d.current)!=null&&a.container)||t.gridProps.scrollable==="none")return;T.current&&T.current.disconnect();const{rowIndex:r}=e,n=W();if(t.gridProps.scrollable==="virtual")d.current.askedSkip=r,d.current.container.scroll(0,Math.round(d.current.askedSkip/d.current.total*d.current.container.scrollHeight));else if(n){const o=r<1?n.querySelector("tbody > tr:nth-child(1)"):n.querySelector(`tbody > tr:nth-child(${r+1})`);o&&X.current&&(X.current.scrollTop=o.offsetTop)}},[t.gridProps.scrollable]),Ie=e=>JSON.stringify(e.map(r=>({id:r.id,field:r.field,title:r.title,children:r.children}))),Pt=()=>Ie(yt)===Ie(f.current),ht=()=>{Pt()||te()},bt=(e,r)=>{var n,a;if(d.current){if(d.current.fixedScroll=t.gridProps.fixedScroll||!1,d.current.PageChange=_,d.current.realSkip=t.gridProps.skip||0,d.current.pageSize=(a=(n=t.gridProps.take)!=null?n:t.gridProps.pageSize)!=null?a:0,d.current.scrollableVirtual=t.gridProps.scrollable==="virtual",d.current.total=e,d.current.propsSkip=(t.gridProps.skip||0)+(t.gridProps.scrollable==="virtual"?d.current.topCacheCount+(d.current.attendedSkip-(t.gridProps.skip||0)):0),t.gridProps.rowHeight!==void 0&&t.gridProps.rowHeight>0&&!r){const o=t.gridProps.rowHeight*e;d.current.containerHeight=w.firefox?Math.min(w.firefoxMaxHeight,o):o}else d.current.containerHeight=1533915;if(d.current.containerRef=X,d.current.tableBodyRef=O,d.current.table=k.current,d.current instanceof Me.VirtualScrollFixed){const{rowHeight:o=0,detail:c,expandField:s}=t.gridProps;let{detailRowHeight:u=0}=t.gridProps;u=c&&s?u:o,t.isAllData?(d.current.total=t.dataRef.length,d.current.rowHeightService=new R.RowHeightService(t.dataRef.length,o,u,t.dataRef)):d.current.rowHeightService=new R.RowHeightService(e,o,u);const P=d.current.rowHeightService.totalHeight();d.current.containerHeight=w.firefox?Math.min(w.firefoxMaxHeight,P):P}}},It=()=>{const e=n=>n.map(a=>({id:a.id,field:a.field,title:a.title,hidden:!1,children:a.children?e(a.children):null})),r=t.columnsRef.current.filter(n=>n.depth===0);return e(r)},Ce=i.useCallback(e=>{const r={rowIndex:le.current};e.forEach(n=>{n.isIntersecting||ee(r)})},[ee]),te=()=>{t.gridProps.forceUpdate&&t.gridProps.forceUpdate()},Ct=e=>e.left!==void 0?ve!=="rtl"?{left:e.left,right:e.right}:{left:e.right,right:e.left}:{},E=i.useRef(null),f=t.columnsRef,d=i.useRef(),S=i.useRef(),K=i.useRef(),D=i.useRef(),M=i.useRef(),$=i.useRef(),T=i.useRef(null),O=i.useRef(null),Rt=i.useRef(null),X=i.useRef(null),k=i.useRef(null),re=i.useRef(null),A=i.useRef(null),z=i.useRef(null),N=i.useRef(null),ne=i.useRef(!1),ae=i.useRef(!1),J=i.useRef(),oe=i.useRef(),ie=i.useRef(!1),Y=i.useRef(!0),ce=i.useRef(0),de=i.useRef(),le=i.useRef(),se=i.useRef([]),Re=i.useRef([]),q=i.useRef(null),vt=i.useRef(null),Et=i.useRef(null),ve=R.useDir(A),yt=i.useMemo(()=>i.Children.toArray(t.gridProps.children),[t.gridProps.children]),C=l.getSelectionOptions((we=t.gridProps.selectable)!=null?we:!!t.gridProps.selectedField),Ee=l.getEditableOptions((xe=t.gridProps.editable)!=null?xe:!!t.gridProps.editField);i.useMemo(()=>{l.tableKeyboardNavigation.onConstructor({navigatable:!!t.gridProps.navigatable,contextStateRef:D,navigationStateRef:M,idPrefix:t.id})},[]),i.useMemo(()=>{var n;(n=d.current)==null||n.reset();const e=t.gridProps.groupable===!0||typeof t.gridProps.groupable=="object"&&t.gridProps.groupable.enabled!==!1,r=t.isFixedVirtualScroll?Me.VirtualScrollFixed:At.VirtualScroll;d.current=new r(e||t.gridProps.rowHeight===void 0||t.gridProps.rowHeight===0)},[t.gridProps.scrollable,t.gridProps.total,t.gridProps.filter,t.gridProps.group,t.gridProps.groupable,t.gridProps.sort,t.gridProps.rowHeight]),i.useEffect(()=>(t.gridProps.clipboard&&($.current=new l.ClipboardService(B),$.current.addEventListeners(x())),()=>{$.current&&$.current.removeEventListeners(x())}),[t.gridProps.onClipboard,t.gridProps.clipboard,B,x]),i.useEffect(()=>(t.gridProps.columnVirtualization&&!window.navigator.userAgent.match(Tt.SAFARI_REGEX)&&(re.current&&(re.current.style.display="block"),k.current&&(k.current.style.display="block")),p(),R.setScrollbarWidth(),l.tableKeyboardNavigation.onComponentDidMount({scope:A.current||void 0,contextStateRef:D,navigationStateRef:M}),()=>{clearTimeout(de.current)}),[]),i.useEffect(()=>{var e;p(),R.setScrollbarWidth(),(e=d.current)!=null&&e.tableTransform&&d.current.table&&(d.current.table.style.transform=d.current.tableTransform,d.current.tableTransform=""),mt(),l.tableKeyboardNavigation.onComponentDidUpdate({scope:A.current||void 0,contextStateRef:D,navigationStateRef:M,focusFirst:ae.current,newEditableRow:J.current,singleEditRow:ie.current,lastActiveElement:oe.current,navigatable:t.gridProps.navigatable}),ae.current=!1,J.current=void 0}),i.useEffect(()=>{if(R.canUseDOM){const e={rootMargin:"0px",threshold:.9};T.current=window.IntersectionObserver&&new window.IntersectionObserver(Ce,e)||null}},[Ce]),i.useEffect(()=>{var r;let e;return R.canUseDOM&&window.ResizeObserver&&(e=new window.ResizeObserver(ht),e.observe((r=x())==null?void 0:r.body)),()=>{e==null||e.disconnect()}},[]),i.useImperativeHandle(E,()=>({get element(){return W()},props:t.gridProps,get columns(){return U()},scrollIntoView:e=>{var a;if(!((a=d.current)!=null&&a.container)||t.gridProps.scrollable==="none")return;const{rowIndex:r}=e;le.current=r;const n=W();if(T.current&&n){T.current.disconnect();const o=n.querySelector(`[absolute-row-index="${le.current}"]`);o?T.current.observe(o):ee(e)}},fitColumns:e=>{S.current.dblClickHandler(null,e)}})),i.useImperativeHandle(t.gridRef,()=>E.current),i.useMemo(()=>{S.current=new Kt.ColumnResize(ut)},[t.gridProps.onColumnResize]),i.useMemo(()=>{K.current=new Mt.CommonDragLogic(Z,dt,be)},[t.gridProps.onColumnReorder,t.gridProps.onGroupChange,t.gridProps.group,t.gridProps.groupable]),S.current.resizable=t.gridProps.resizable||!1,S.current.columns=f.current;const ye=t.gridProps.groupable===!0||typeof t.gridProps.groupable=="object"&&t.gridProps.groupable.enabled!==!1;K.current.reorderable=t.gridProps.reorderable||!1,K.current.groupable=ye,K.current.columns=f.current,bt(t.total,ye);const wt=t.gridProps.columnsState||It();return i.createElement(He.Provider,{value:{isClient:v,rowReorder:G,activeDragRowDataItemRef:q,reorderRowDragTargetRef:vt,reorderRowDropTargetRef:Et,dir:ve,getCellPositionStyle:Ct,dataItemKey:t.gridProps.dataItemKey,columnsState:wt,onColumnsStateChange:ct,groupChange:Q,selectionRelease:Qe,pagerPageChange:at,onContextMenu:Oe,rowClick:Ve,rowDblClick:_e,cellClick:Be,headerCellClick:Pe,itemChange:$e,sortChange:he,filterChange:ot,searchChange:it,onHeaderSelectionChange:Ye,columnGroupChange:lt,onKeyDown:Ne,onFocus:qe,scrollHandler:ze,selectionChange:Xe,dispatchDetailExpand:je,dispatchGroupExpand:We,columnResizeRef:S,dragLogicRef:K,navigationStateRef:M,tableElementRef:k,tableBodyElementRef:O,headerElementRef:Rt,containerElementRef:X,headTableElementRef:re,elementRef:A,footerRef:z,headerRef:N,vsRef:d}},i.createElement(l.TableKeyboardNavigationContext.Provider,{value:D.current},t.children),i.createElement(Ht.GridContextMenu,{show:h.show,dataItem:h.dataItem,field:h.field,items:Ge,offset:h.offset,onClose:ge,onSelect:Le}))};exports.GridClientWrapper=Gt;exports.GridContext=He;
|
package/GridClientWrapper.mjs
CHANGED
|
@@ -7,18 +7,18 @@
|
|
|
7
7
|
*/
|
|
8
8
|
"use client";
|
|
9
9
|
import * as i from "react";
|
|
10
|
-
import { canUseDOM as $, getActiveElement as
|
|
11
|
-
import { getSelectionOptions as Y, populateClipboardData as
|
|
12
|
-
import { ColumnResize as
|
|
13
|
-
import { CommonDragLogic as
|
|
14
|
-
import { SAFARI_REGEX as
|
|
15
|
-
import { getDefaultHeadContextMenuItems as
|
|
10
|
+
import { canUseDOM as $, getActiveElement as Lt, useDir as Gt, setScrollbarWidth as Ae, getter as J, RowHeightService as He } from "@progress/kendo-react-common";
|
|
11
|
+
import { getSelectionOptions as Y, populateClipboardData as zt, ClipboardActionType as ge, getEditableOptions as Nt, tableKeyboardNavigation as T, ClipboardService as Ot, TableKeyboardNavigationContext as Bt, editReducer as Ut, EDIT_ACTION as Vt, getDetailExpandableOptions as _t, detailExpandReducer as Fe, getGroupExpandableOptions as Wt, groupExpandReducer as jt, DETAIL_EXPAND_ACTION as qt, getSelectedState as Le, getSelectedStateFromKeyDown as Xt, closestTagName as Ge, getColumnIndex as $t, getRowIndex as Jt, updateLeft as Yt, updateRight as Qt } from "@progress/kendo-react-data-tools";
|
|
12
|
+
import { ColumnResize as Zt } from "./drag/ColumnResize.mjs";
|
|
13
|
+
import { CommonDragLogic as pt } from "./drag/CommonDragLogic.mjs";
|
|
14
|
+
import { SAFARI_REGEX as er } from "./constants/index.mjs";
|
|
15
|
+
import { getDefaultHeadContextMenuItems as tr, getDefaultBodyContextMenuItems as rr, isRowReorderEnabled as nr, sanitizeColumns as or, getDataAsArray as ar, firefox as ze, firefoxMaxHeight as Ne } from "./utils/index.mjs";
|
|
16
16
|
import { VirtualScrollFixed as Oe } from "./VirtualScrollFixed.mjs";
|
|
17
|
-
import { VirtualScroll as
|
|
18
|
-
import { GridContextMenu as
|
|
17
|
+
import { VirtualScroll as ir } from "./VirtualScroll.mjs";
|
|
18
|
+
import { GridContextMenu as dr } from "./contextMenu/GridContextMenu.mjs";
|
|
19
19
|
import { GridContextMenuAnchorPart as Be } from "./contextMenu/enums.mjs";
|
|
20
|
-
import { normalizeSortable as
|
|
21
|
-
const
|
|
20
|
+
import { normalizeSortable as cr, firstLevelSortSeqMap as lr } from "./sortCommon.mjs";
|
|
21
|
+
const sr = i.createContext(void 0), wr = (t) => {
|
|
22
22
|
var Se, De;
|
|
23
23
|
const E = t.gridProps.isClient, [I, fe] = i.useState({}), Ue = (e) => {
|
|
24
24
|
e.event.preventDefault(), fe({
|
|
@@ -35,18 +35,18 @@ const ur = i.createContext(void 0), yr = (t) => {
|
|
|
35
35
|
fe({});
|
|
36
36
|
}, P = i.useMemo(() => t.columnsRef.current.find((e) => e.field === I.field), [t.columnsRef, I]), Pe = i.useMemo(() => {
|
|
37
37
|
const e = t.gridProps.sortable && (P == null ? void 0 : P.sortable);
|
|
38
|
-
return
|
|
38
|
+
return tr({
|
|
39
39
|
sortable: !!e,
|
|
40
40
|
selectable: Y(t.gridProps.selectable).enabled,
|
|
41
41
|
clipboard: !!t.gridProps.clipboard
|
|
42
42
|
});
|
|
43
43
|
}, [P, t.gridProps.sortable, t.gridProps.selectable, t.gridProps.clipboard]), he = i.useMemo(() => {
|
|
44
44
|
const e = t.gridProps.sortable && (P == null ? void 0 : P.sortable);
|
|
45
|
-
return
|
|
45
|
+
return rr({
|
|
46
46
|
sortable: !!e,
|
|
47
47
|
selectable: Y(t.gridProps.selectable).enabled,
|
|
48
48
|
clipboard: !!t.gridProps.clipboard,
|
|
49
|
-
rowReorderable:
|
|
49
|
+
rowReorderable: nr(t.gridProps.rowReorderable)
|
|
50
50
|
});
|
|
51
51
|
}, [P, t.gridProps.sortable, t.gridProps.selectable, t.gridProps.clipboard]), Ve = i.useMemo(() => {
|
|
52
52
|
const e = (P == null ? void 0 : P.contextMenu) || t.gridProps.contextMenu, r = typeof e == "function" ? e(I) : e;
|
|
@@ -84,8 +84,8 @@ const ur = i.createContext(void 0), yr = (t) => {
|
|
|
84
84
|
switch ((l = r.data) == null ? void 0 : l.action) {
|
|
85
85
|
case "SortCommand":
|
|
86
86
|
if (P) {
|
|
87
|
-
const ue = (s = r.name) == null ? void 0 : s.toLowerCase().includes("asc"),
|
|
88
|
-
be(e.event.syntheticEvent, P,
|
|
87
|
+
const ue = (s = r.name) == null ? void 0 : s.toLowerCase().includes("asc"), At = ((m = r.name) == null ? void 0 : m.toLowerCase().includes("desc")) ? "desc" : void 0, Ht = ue ? "asc" : At, Ft = r.name ? Ht : void 0;
|
|
88
|
+
be(e.event.syntheticEvent, P, Ft);
|
|
89
89
|
}
|
|
90
90
|
break;
|
|
91
91
|
case "SelectRowCommand":
|
|
@@ -126,7 +126,7 @@ const ur = i.createContext(void 0), yr = (t) => {
|
|
|
126
126
|
me();
|
|
127
127
|
}, N = () => {
|
|
128
128
|
const e = g.current.filter((r) => r.declarationIndex >= 0 && r.parentIndex === -1);
|
|
129
|
-
return
|
|
129
|
+
return or(e);
|
|
130
130
|
}, We = (e, r, n) => {
|
|
131
131
|
if (t.gridProps.onContextMenu && E) {
|
|
132
132
|
const o = {
|
|
@@ -207,8 +207,8 @@ const ur = i.createContext(void 0), yr = (t) => {
|
|
|
207
207
|
});
|
|
208
208
|
}, Qe = (e, r, n) => {
|
|
209
209
|
if (ye.enabled && ye.mode === "incell" && t.gridProps.dataItemKey) {
|
|
210
|
-
const o =
|
|
211
|
-
type:
|
|
210
|
+
const o = Ut(t.gridProps.edit, {
|
|
211
|
+
type: Vt.ENTER_FIELD_EDIT,
|
|
212
212
|
payload: { id: r[t.gridProps.dataItemKey], field: n }
|
|
213
213
|
});
|
|
214
214
|
t.gridProps.onEditChange && u(t.gridProps.onEditChange, {
|
|
@@ -218,7 +218,7 @@ const ur = i.createContext(void 0), yr = (t) => {
|
|
|
218
218
|
}
|
|
219
219
|
}, Ze = (e, r) => {
|
|
220
220
|
var o;
|
|
221
|
-
if (
|
|
221
|
+
if (_t(t.detailExpandable).enabled) {
|
|
222
222
|
const a = Fe((o = t.gridProps.detailExpand) != null ? o : {}, e);
|
|
223
223
|
t.gridProps.onDetailExpandChange && u(t.gridProps.onDetailExpandChange, {
|
|
224
224
|
...h(r),
|
|
@@ -227,25 +227,28 @@ const ur = i.createContext(void 0), yr = (t) => {
|
|
|
227
227
|
}
|
|
228
228
|
}, pe = (e, r) => {
|
|
229
229
|
var o;
|
|
230
|
-
const n =
|
|
230
|
+
const n = Wt(
|
|
231
231
|
typeof t.gridProps.groupable == "object" ? t.gridProps.groupable.expandable !== !1 : t.gridProps.groupable
|
|
232
232
|
);
|
|
233
233
|
if (n.enabled) {
|
|
234
|
-
const a =
|
|
234
|
+
const a = jt((o = t.gridProps.groupExpand) != null ? o : [], e, n);
|
|
235
235
|
t.gridProps.onGroupExpandChange && u(t.gridProps.onGroupExpandChange, {
|
|
236
236
|
...h(r),
|
|
237
237
|
groupExpand: a
|
|
238
238
|
});
|
|
239
239
|
}
|
|
240
240
|
}, be = (e, r, n) => {
|
|
241
|
-
const { allowUnsort: o, mode: a } =
|
|
241
|
+
const { allowUnsort: o, mode: a } = cr(
|
|
242
|
+
t.gridProps.sortable || !1,
|
|
243
|
+
r.sortable || !1
|
|
244
|
+
), d = (t.gridProps.sort || []).filter((m) => m.field === r.field)[0], l = n || lr[o][d && d.dir || ""], s = a === "single" ? [] : (t.gridProps.sort || []).filter((m) => m.field !== r.field);
|
|
242
245
|
l !== "" && r.field && s.push({ field: r.field, dir: l }), Ie(s, e);
|
|
243
246
|
}, et = (e) => {
|
|
244
247
|
var r;
|
|
245
248
|
if (e.field === t.gridProps.expandField || e._expand || t.gridProps.group && e.field === void 0) {
|
|
246
249
|
if (t.gridProps.onExpandChange) {
|
|
247
250
|
const n = t.gridProps.dataItemKey ? Fe((r = t.gridProps.detailExpand) != null ? r : {}, {
|
|
248
|
-
type:
|
|
251
|
+
type: qt.SET,
|
|
249
252
|
id: e.dataItem[t.gridProps.dataItemKey],
|
|
250
253
|
payload: e.value
|
|
251
254
|
}) : t.gridProps.detailExpand;
|
|
@@ -307,16 +310,16 @@ const ur = i.createContext(void 0), yr = (t) => {
|
|
|
307
310
|
componentId: t.id,
|
|
308
311
|
selectedField: t.gridProps.selectedField,
|
|
309
312
|
...h(e)
|
|
310
|
-
}, n =
|
|
313
|
+
}, n = Xt({
|
|
311
314
|
event: r,
|
|
312
315
|
selectedState: (m = t.gridProps.select) != null ? m : {},
|
|
313
316
|
dataItemKey: t.gridProps.dataItemKey
|
|
314
317
|
});
|
|
315
318
|
if (n === t.gridProps.select)
|
|
316
319
|
return;
|
|
317
|
-
const o = e.target, a = Ge(o, "TD"), d = Ge(o, "TR"), l =
|
|
320
|
+
const o = e.target, a = Ge(o, "TD"), d = Ge(o, "TR"), l = $t(a), s = Jt(d);
|
|
318
321
|
if (l !== void 0 && s !== void 0) {
|
|
319
|
-
const R = (f =
|
|
322
|
+
const R = (f = ar(t.gridProps.data)) == null ? void 0 : f[s];
|
|
320
323
|
t.gridProps.onSelectionChange && u(t.gridProps.onSelectionChange, {
|
|
321
324
|
...r,
|
|
322
325
|
select: n,
|
|
@@ -503,7 +506,7 @@ const ur = i.createContext(void 0), yr = (t) => {
|
|
|
503
506
|
}, l = g.current.splice(e, d(e) - e);
|
|
504
507
|
g.current.splice(e < r ? d(r - l.length) : r, 0, ...l), g.current.filter((f) => f.declarationIndex >= 0).forEach((f, R) => f.orderIndex = R);
|
|
505
508
|
const s = g.current[e].locked && g.current[r].locked;
|
|
506
|
-
|
|
509
|
+
Yt(t.columnsMapRef, g.current, s || X.current), Qt(t.columnsMapRef, g.current, s || X.current), ne.current && (X.current = !1, ne.current = !1);
|
|
507
510
|
const m = N();
|
|
508
511
|
if (te(), t.gridProps.onColumnReorder) {
|
|
509
512
|
const f = {
|
|
@@ -567,7 +570,7 @@ const ur = i.createContext(void 0), yr = (t) => {
|
|
|
567
570
|
field: a,
|
|
568
571
|
...typeof t.gridProps.clipboard != "boolean" ? t.gridProps.clipboard : {},
|
|
569
572
|
...n
|
|
570
|
-
}, l = V(), s =
|
|
573
|
+
}, l = V(), s = zt({
|
|
571
574
|
event: d,
|
|
572
575
|
data: l,
|
|
573
576
|
selectedState: (m = t.gridProps.select) != null ? m : {},
|
|
@@ -589,7 +592,7 @@ const ur = i.createContext(void 0), yr = (t) => {
|
|
|
589
592
|
var a, d, l;
|
|
590
593
|
if (!$)
|
|
591
594
|
return !1;
|
|
592
|
-
const e =
|
|
595
|
+
const e = Lt(v()), r = e ? e.matches(".k-table-td") ? e : (a = v()) == null ? void 0 : a.body : (d = v()) == null ? void 0 : d.body, n = r.closest(".k-grid-container"), o = r && ((l = K.current) == null ? void 0 : l.contains(r));
|
|
593
596
|
return !!(r && o && n);
|
|
594
597
|
}, It = (e, r, n, o, a, d) => {
|
|
595
598
|
p(), X.current = !0, ne.current = !0, t.gridProps.onColumnResize && E && u(t.gridProps.onColumnResize, {
|
|
@@ -659,12 +662,9 @@ const ur = i.createContext(void 0), yr = (t) => {
|
|
|
659
662
|
}
|
|
660
663
|
},
|
|
661
664
|
[t.gridProps.scrollable]
|
|
662
|
-
), Re = (e) => JSON.stringify(e.map((r) => ({ id: r.id, field: r.field, title: r.title, children: r.children }))), Et = () => Re(
|
|
665
|
+
), Re = (e) => JSON.stringify(e.map((r) => ({ id: r.id, field: r.field, title: r.title, children: r.children }))), Et = () => Re(Tt) === Re(g.current), wt = () => {
|
|
663
666
|
Et() || te();
|
|
664
|
-
}, yt = () => {
|
|
665
|
-
const { data: e, total: r } = t.gridProps;
|
|
666
|
-
return Array.isArray(e) ? e.length === r : e ? r === e.total : !1;
|
|
667
|
-
}, xt = (e, r) => {
|
|
667
|
+
}, yt = (e, r) => {
|
|
668
668
|
var n, o;
|
|
669
669
|
if (c.current) {
|
|
670
670
|
if (c.current.fixedScroll = t.gridProps.fixedScroll || !1, c.current.PageChange = B, c.current.realSkip = t.gridProps.skip || 0, c.current.pageSize = (o = (n = t.gridProps.take) != null ? n : t.gridProps.pageSize) != null ? o : 0, c.current.scrollableVirtual = t.gridProps.scrollable === "virtual", c.current.total = e, c.current.propsSkip = (t.gridProps.skip || 0) + (t.gridProps.scrollable === "virtual" ? c.current.topCacheCount + (c.current.attendedSkip - (t.gridProps.skip || 0)) : 0), t.gridProps.rowHeight !== void 0 && t.gridProps.rowHeight > 0 && !r) {
|
|
@@ -675,7 +675,7 @@ const ur = i.createContext(void 0), yr = (t) => {
|
|
|
675
675
|
if (c.current.containerRef = j, c.current.tableBodyRef = F, c.current.table = x.current, c.current instanceof Oe) {
|
|
676
676
|
const { rowHeight: a = 0, detail: d, expandField: l } = t.gridProps;
|
|
677
677
|
let { detailRowHeight: s = 0 } = t.gridProps;
|
|
678
|
-
s = d && l ? s : a,
|
|
678
|
+
s = d && l ? s : a, t.isAllData ? (c.current.total = t.dataRef.length, c.current.rowHeightService = new He(
|
|
679
679
|
t.dataRef.length,
|
|
680
680
|
a,
|
|
681
681
|
s,
|
|
@@ -685,7 +685,7 @@ const ur = i.createContext(void 0), yr = (t) => {
|
|
|
685
685
|
c.current.containerHeight = ze ? Math.min(Ne, m) : m;
|
|
686
686
|
}
|
|
687
687
|
}
|
|
688
|
-
},
|
|
688
|
+
}, xt = () => {
|
|
689
689
|
const e = (n) => n.map((o) => ({
|
|
690
690
|
id: o.id,
|
|
691
691
|
field: o.field,
|
|
@@ -704,7 +704,7 @@ const ur = i.createContext(void 0), yr = (t) => {
|
|
|
704
704
|
[ee]
|
|
705
705
|
), te = () => {
|
|
706
706
|
t.gridProps.forceUpdate && t.gridProps.forceUpdate();
|
|
707
|
-
},
|
|
707
|
+
}, St = (e) => e.left !== void 0 ? we !== "rtl" ? { left: e.left, right: e.right } : { left: e.right, right: e.left } : {}, C = i.useRef(null), g = t.columnsRef, c = i.useRef(), w = i.useRef(), S = i.useRef(), y = i.useRef(), D = i.useRef(), W = i.useRef(), k = i.useRef(null), F = i.useRef(null), Dt = i.useRef(null), j = i.useRef(null), x = i.useRef(null), re = i.useRef(null), K = i.useRef(null), L = i.useRef(null), G = i.useRef(null), ne = i.useRef(!1), oe = i.useRef(!1), q = i.useRef(), ae = i.useRef(), ie = i.useRef(!1), X = i.useRef(!0), de = i.useRef(0), ce = i.useRef(), le = i.useRef(), se = i.useRef([]), Ee = i.useRef([]), z = i.useRef(null), kt = i.useRef(null), Kt = i.useRef(null), we = Gt(K), Tt = i.useMemo(() => i.Children.toArray(t.gridProps.children), [t.gridProps.children]), b = Y((Se = t.gridProps.selectable) != null ? Se : !!t.gridProps.selectedField), ye = Nt((De = t.gridProps.editable) != null ? De : !!t.gridProps.editField);
|
|
708
708
|
i.useMemo(() => {
|
|
709
709
|
T.onConstructor({
|
|
710
710
|
navigatable: !!t.gridProps.navigatable,
|
|
@@ -715,7 +715,7 @@ const ur = i.createContext(void 0), yr = (t) => {
|
|
|
715
715
|
}, []), i.useMemo(() => {
|
|
716
716
|
var n;
|
|
717
717
|
(n = c.current) == null || n.reset();
|
|
718
|
-
const e = t.gridProps.groupable === !0 || typeof t.gridProps.groupable == "object" && t.gridProps.groupable.enabled !== !1, r = t.isFixedVirtualScroll ? Oe :
|
|
718
|
+
const e = t.gridProps.groupable === !0 || typeof t.gridProps.groupable == "object" && t.gridProps.groupable.enabled !== !1, r = t.isFixedVirtualScroll ? Oe : ir;
|
|
719
719
|
c.current = new r(e || t.gridProps.rowHeight === void 0 || t.gridProps.rowHeight === 0);
|
|
720
720
|
}, [
|
|
721
721
|
t.gridProps.scrollable,
|
|
@@ -725,9 +725,9 @@ const ur = i.createContext(void 0), yr = (t) => {
|
|
|
725
725
|
t.gridProps.groupable,
|
|
726
726
|
t.gridProps.sort,
|
|
727
727
|
t.gridProps.rowHeight
|
|
728
|
-
]), i.useEffect(() => (t.gridProps.clipboard && (W.current = new
|
|
728
|
+
]), i.useEffect(() => (t.gridProps.clipboard && (W.current = new Ot(U), W.current.addEventListeners(v())), () => {
|
|
729
729
|
W.current && W.current.removeEventListeners(v());
|
|
730
|
-
}), [t.gridProps.onClipboard, t.gridProps.clipboard, U, v]), i.useEffect(() => (t.gridProps.columnVirtualization && !window.navigator.userAgent.match(
|
|
730
|
+
}), [t.gridProps.onClipboard, t.gridProps.clipboard, U, v]), i.useEffect(() => (t.gridProps.columnVirtualization && !window.navigator.userAgent.match(er) && (re.current && (re.current.style.display = "block"), x.current && (x.current.style.display = "block")), p(), Ae(), T.onComponentDidMount({
|
|
731
731
|
scope: K.current || void 0,
|
|
732
732
|
contextStateRef: y,
|
|
733
733
|
navigationStateRef: D
|
|
@@ -787,9 +787,9 @@ const ur = i.createContext(void 0), yr = (t) => {
|
|
|
787
787
|
}
|
|
788
788
|
})
|
|
789
789
|
), i.useImperativeHandle(t.gridRef, () => C.current), i.useMemo(() => {
|
|
790
|
-
w.current = new
|
|
790
|
+
w.current = new Zt(It);
|
|
791
791
|
}, [t.gridProps.onColumnResize]), i.useMemo(() => {
|
|
792
|
-
S.current = new
|
|
792
|
+
S.current = new pt(Z, Pt, Ce);
|
|
793
793
|
}, [
|
|
794
794
|
t.gridProps.onColumnReorder,
|
|
795
795
|
t.gridProps.onGroupChange,
|
|
@@ -797,21 +797,21 @@ const ur = i.createContext(void 0), yr = (t) => {
|
|
|
797
797
|
t.gridProps.groupable
|
|
798
798
|
]), w.current.resizable = t.gridProps.resizable || !1, w.current.columns = g.current;
|
|
799
799
|
const xe = t.gridProps.groupable === !0 || typeof t.gridProps.groupable == "object" && t.gridProps.groupable.enabled !== !1;
|
|
800
|
-
S.current.reorderable = t.gridProps.reorderable || !1, S.current.groupable = xe, S.current.columns = g.current,
|
|
801
|
-
const
|
|
800
|
+
S.current.reorderable = t.gridProps.reorderable || !1, S.current.groupable = xe, S.current.columns = g.current, yt(t.total, xe);
|
|
801
|
+
const Mt = t.gridProps.columnsState || xt();
|
|
802
802
|
return /* @__PURE__ */ i.createElement(
|
|
803
|
-
|
|
803
|
+
sr.Provider,
|
|
804
804
|
{
|
|
805
805
|
value: {
|
|
806
806
|
isClient: E,
|
|
807
807
|
rowReorder: A,
|
|
808
808
|
activeDragRowDataItemRef: z,
|
|
809
|
-
reorderRowDragTargetRef:
|
|
810
|
-
reorderRowDropTargetRef:
|
|
809
|
+
reorderRowDragTargetRef: kt,
|
|
810
|
+
reorderRowDropTargetRef: Kt,
|
|
811
811
|
dir: we,
|
|
812
|
-
getCellPositionStyle:
|
|
812
|
+
getCellPositionStyle: St,
|
|
813
813
|
dataItemKey: t.gridProps.dataItemKey,
|
|
814
|
-
columnsState:
|
|
814
|
+
columnsState: Mt,
|
|
815
815
|
onColumnsStateChange: mt,
|
|
816
816
|
groupChange: Q,
|
|
817
817
|
selectionRelease: ot,
|
|
@@ -838,7 +838,7 @@ const ur = i.createContext(void 0), yr = (t) => {
|
|
|
838
838
|
navigationStateRef: D,
|
|
839
839
|
tableElementRef: x,
|
|
840
840
|
tableBodyElementRef: F,
|
|
841
|
-
headerElementRef:
|
|
841
|
+
headerElementRef: Dt,
|
|
842
842
|
containerElementRef: j,
|
|
843
843
|
headTableElementRef: re,
|
|
844
844
|
elementRef: K,
|
|
@@ -847,9 +847,9 @@ const ur = i.createContext(void 0), yr = (t) => {
|
|
|
847
847
|
vsRef: c
|
|
848
848
|
}
|
|
849
849
|
},
|
|
850
|
-
/* @__PURE__ */ i.createElement(
|
|
850
|
+
/* @__PURE__ */ i.createElement(Bt.Provider, { value: y.current }, t.children),
|
|
851
851
|
/* @__PURE__ */ i.createElement(
|
|
852
|
-
|
|
852
|
+
dr,
|
|
853
853
|
{
|
|
854
854
|
show: I.show,
|
|
855
855
|
dataItem: I.dataItem,
|
|
@@ -863,6 +863,6 @@ const ur = i.createContext(void 0), yr = (t) => {
|
|
|
863
863
|
);
|
|
864
864
|
};
|
|
865
865
|
export {
|
|
866
|
-
|
|
867
|
-
|
|
866
|
+
wr as GridClientWrapper,
|
|
867
|
+
sr as GridContext
|
|
868
868
|
};
|
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 ht=require("react"),d=require("@progress/kendo-react-common"),wt=require("@progress/kendo-data-query"),b=require("@progress/kendo-react-data-tools"),Gt=require("./cells/GridSelectionCell.js"),St=require("./cells/GridHierarchyCell.js"),Et=require("./cells/GridEditCell.js"),Rt=require("./header/Header.js"),It=require("./header/HeaderRow.js"),vt=require("./header/FilterRow.js"),xt=require("./header/GroupPanel.js"),Nt=require("./footer/Footer.js"),s=require("./utils/index.js"),kt=require("./cells/GridCell.js"),Ke=require("./cells/GridGroupCell.js"),qt=require("./rows/GridRow.js"),Ft=require("./header/GridHeaderSelectionCell.js"),Ve=require("./components/noRecords/GridNoRecords.js"),Ae=require("./filterCommon.js"),Dt=require("./footer/FooterRow.js"),Tt=require("./paging/GridPagerSettings.js"),Pt=require("./package-metadata.js"),Ht=require("./cells/GridDetailCell.js"),Kt=require("./cells/GridDetailHierarchyCell.js"),Be=require("./components/noRecords/GridNoRecordsContainer.js"),Oe=require("./GridClientWrapper.js"),Vt=require("./components/colGroup/GridColGroup.js"),At=require("./components/table/GridTable.js"),Le=require("./components/GridDropClue.js"),_e=require("./components/GridDragClue.js"),Me=require("./components/table/GridTableBody.js"),Bt=require("./components/PagerContainer.js"),Ot=require("./components/table/GridTableScrollable.js"),ze=require("./components/GridElementContainer.js"),Lt=require("./components/GridContainerElementContainer.js"),_t=require("./components/VirtualScrollHeightContainer.js"),le=require("./messages/index.js"),$=require("./VirtualScrollFixed.js"),Mt=require("./VirtualScroll.js"),zt=require("./components/GridCustomCellClientContainer.js"),Wt=require("./components/GridDraggableRowsContainer.js"),jt=require("./cells/GridRowReorderCell.js"),$t=require("./header/client/GridHeaderRowReorderCell.js"),We=require("./components/GridLoader.js"),Ut=require("./utils/premium.js"),je=require("@progress/kendo-react-intl");function Qt(e){const k=Object.create(null,{[Symbol.toStringTag]:{value:"Module"}});if(e){for(const C in e)if(C!=="default"){const S=Object.getOwnPropertyDescriptor(e,C);Object.defineProperty(k,C,S.get?S:{enumerable:!0,get:()=>e[C]})}}return k.default=e,Object.freeze(k)}const a=Qt(ht),$e=a.forwardRef((e,k)=>{var Re,Ie,ve,xe,Ne,ke,qe,Fe;const C=e.id+"-role-element-id",S=e.navigatable?C:"",Ue=(t,r,c,o,i,l,u)=>{const g=[],w=s.flatData(g,E,t,{index:r},c!==void 0,o,i,l,nt.defaultExpand,u);return{flattedData:g,resolvedGroupsCount:w}},Qe=t=>{const r=t.filter(i=>i&&i.type&&i.type.displayName==="KendoReactGridColumn"),c=f.current.filter(i=>i.declarationIndex>=0&&i.parentIndex===-1),o=s.sanitizeColumns(c);return s.readColumns(r,o,{prevId:0,idPrefix:S})},Je=t=>t.filter(r=>d.canUseDOM&&r&&r.media?window.matchMedia(r.media).matches:r),Xe=()=>{const t=[],r=(c,o)=>c==null?void 0:c.forEach(i=>{const l=i.hidden||o;t.push({...i,hidden:l}),r(i.children,l)});return r(e.columnsState,!1),t},Ye=t=>{const r=Xe();return t.filter(c=>{var o;return!((o=r.find(i=>i.id===c.id))!=null&&o.hidden)})},Ze=(t,r)=>{var i;const c=Qe(t),o=Je(c);f.current=o,f.current.length===0&&(f.current=s.autoGenerateColumns(E,e.group,{column:(i=A.column)!=null?i:e.expandField},{prevId:0,idPrefix:S})),f.current=Ye(f.current),pe(f.current,r),q=s.mapColumns(f.current,!0),ne.current=f.current.map(s.clientColumn)},pe=(t,r)=>{var i;t.filter(l=>e.selectedField&&l.field===e.selectedField||l.columnType==="checkbox").forEach(l=>{l.width=l.width||"50px",l.cell=l.cell||Gt.GridSelectionCell,l._type="edit",l.headerCell=l.headerCell||Ft.GridHeaderSelectionCell}),D!==void 0&&t.filter(l=>l.columnType==="reorder").forEach(l=>{l.width=l.width||"50px",l.cell=l.cell||jt.GridRowReorderCell,l.headerCell=l.headerCell||$t.GridHeaderRowReorderCell,l.sortable=!1,l.filterable=!1,l.editable=!1});const c={id:"",resizable:!0,width:"32px",title:" ",declarationIndex:-1,orderIndex:-1,children:[],parentIndex:-1,depth:0,colSpan:0,headerColSpan:0,rowSpan:0,left:0,right:0,index:0,rightBorder:!1,ariaColumnIndex:0,isAccessible:!0};let o=0;(e.expandField||A.enabled)&&e.detail&&(t.unshift({...c,_type:"expand",cell:St.GridHierarchyCell,field:(i=A.column)!=null?i:e.expandField,headerClassName:d.classNames(m.hierarchyCell({}))}),o++);for(let l=0;l<r;l++)t.unshift({...c,isAccessible:!1,cell:Ke.GridGroupCell,field:"value",locked:e.lockGroups}),o++;t.slice(o).forEach(l=>{l.parentIndex>=0&&(l.parentIndex+=o),l.rowSpannable=l.rowSpannable!==void 0?s.getRowSpanOptions(l.rowSpannable):oe})},re=()=>E.length===e.total,et=()=>{const{rowHeight:t,detailRowHeight:r,detail:c,expandField:o}=e,i=re(),l=t!==void 0&&t>0,u=r!==void 0&&r>0;return!l||V&&!i||!!(c&&o)&&(!u||!i)?Mt.VirtualScroll:$.VirtualScrollFixed},U=()=>e.isClient?f:ne,tt=(t,r,c,o,i,l)=>{let u=s.getColSpan(t,r);if(e.columnVirtualization&&t.colSpan===1)return{colSpan:l,colsToSkip:i};let g=c.length-1===o,w=c.length-o;return e.columnVirtualization&&(g=h.length-1===o,w=h.length-o),u>1&&!g?i=u-1:u=1,w<=u&&!g&&(u=w),{colSpan:u,colsToSkip:i}};let Q,y=[],_;const f=e.columnsRef||{current:[]},ne={current:[]};let q=[[]];const at=e.scrollLeftRef||{current:0},M=e.localization||new je.LocalizationService(e.language),lt=e.intl||new je.IntlService((Re=e.locale)!=null?Re:"en"),F=e.unstyled,m=F&&F.uGrid?F.uGrid:d.uGrid,D=s.isRowReorderEnabled(e.rowReorderable),T=e.autoProcessData===!0?{group:!0,sort:!0,filter:!0,search:!0,page:!0}:e.autoProcessData;let E,N;if(Array.isArray(e.data)?(E=e.data,N=(Ie=e.total)!=null?Ie:E.length):(E=((ve=e.data)==null?void 0:ve.data)||[],N=(ke=(Ne=e.total)!=null?Ne:(xe=e.data)==null?void 0:xe.total)!=null?ke:E.length),T){const{data:t,total:r}=wt.process(E,{group:T.group?e.group:void 0,sort:T.sort?e.sort:void 0,filter:b.combineFilters(T.filter?e.filter:void 0,T.search?e.search:void 0),...T.page?{take:e.take,skip:e.skip}:{}});E=t,N=(qe=e.total)!=null?qe:r}const{size:I="medium"}=e,rt=typeof e.groupable=="object"&&e.groupable.footer||"none",P=e.scrollable==="virtual",V=e.groupable===!0||typeof e.groupable=="object"&&e.groupable.enabled!==!1,A=b.getDetailExpandableOptions(!!e.detail),nt=b.getGroupExpandableOptions(typeof e.groupable=="object"&&e.groupable.enabled!==!1?e.groupable.expandable:e.groupable),{resolvedGroupsCount:it,flattedData:ot}=Ue(rt,e.skip||0,e.group,e.expandField,e.detailExpand,e.groupExpand,e.dataItemKey);y=ot;const J=et();J===$.VirtualScrollFixed&&re()&&(_=y.slice(e.skip||0,(e.skip||0)+((e.take!==void 0?e.take:e.pageSize)||0)));const ie=b.getSelectionOptions(e.selectable||!!e.selectedField),oe=s.getRowSpanOptions(e.rowSpannable),dt=ie&&ie.drag?"none":void 0,z=a.useMemo(()=>a.Children.toArray(e.children),[e.children]);Ze(z,it);const X=a.useMemo(()=>{const t=Ut.gridPremiumFeatures(e,f.current);return{premium:t.length>0,features:t}},[e,f]),ct=a.useMemo(()=>X.premium?!d.validatePackage(Pt.packageMetadata,{component:"Grid",features:X.features}):!1,[X.premium]),de=z.map(t=>t&&t.type&&t.type.displayName==="KendoReactGridToolbar"?a.cloneElement(t,{...t.props,ariaControls:C}):null),W=z.filter(t=>t&&t.type&&t.type.displayName==="KendoReactGridNoRecords"),ce=z.filter(t=>t&&t.type&&t.type.displayName==="KendoReactGridStatusBar"),h=f.current.filter(t=>t.children.length===0),se=V&&a.createElement(xt.GroupPanel,{columns:U().current,group:e.group||[],ariaControls:C}),ue=a.createElement(Rt.Header,{size:I,staticHeaders:e.scrollable!=="none",draggable:e.reorderable||V,headerRow:a.createElement(It.HeaderRow,{cells:e.cells,sort:e.sort,sortable:e.sortable,group:e.group||[],groupable:V,filter:e.filter,filterable:e.filterable,filterOperators:e.filterOperators||Ae.operators,columnMenu:e.columnMenu,columnMenuIcon:e.columnMenuIcon,columns:f.current,columnsMap:q,cellRender:e.headerCellRender,navigatable:!!e.navigatable,localization:M,unstyled:F,headerSelectionValue:!!(e.select&&y.filter(t=>t.rowType==="data").every(t=>e.select&&e.dataItemKey&&d.getter(e.dataItemKey)(t.dataItem)!==void 0?e.select[d.getter(e.dataItemKey)(t.dataItem)]:void 0))}),filterRow:e.filterable&&a.createElement(vt.FilterRow,{cells:e.cells,size:I,columns:f.current,filter:e.filter,filterOperators:e.filterOperators||Ae.operators,sort:e.sort,cellRender:e.filterCellRender,navigatable:!!e.navigatable,ariaRowIndex:q.length+1,localization:M})||void 0,cols:h.map((t,r)=>a.createElement("col",{key:r.toString(),width:s.getColumnWidth(t)}))}),st=at.current||0,ut=parseFloat(((e.style||{}).width||"").toString()),ft=(t,r,c,o,i)=>{let l=!1;const u=e.selectedField?s.getNestedValue(e.selectedField,t.dataItem):e.select&&e.dataItemKey&&d.getter(e.dataItemKey)(t.dataItem)!==void 0?e.select[d.getter(e.dataItemKey)(t.dataItem)]:void 0;let g=0;const{colSpans:w,hiddenColumns:H}=b.tableColumnsVirtualization({enabled:e.columnVirtualization,columns:h,tableViewPortWidth:ut,scrollLeft:st,getColSpan:s.getColSpan,dataItem:t.dataItem}),v=h.filter((n,G)=>!H[G]);return{row:h.map((n,G)=>{var De,Te,Pe,He;if(H[G])return null;if(g>0)return g--,null;let R;if((De=n.rowSpannable)!=null&&De.enabled&&t.rowType==="data"&&n.field&&i){const x=n.field?(Pe=(Te=n.rowSpannable).valueGetter)==null?void 0:Pe.call(Te,t.dataItem,n.field):null;R={value:x,count:1},i[n.field]&&((He=i[n.field])==null?void 0:He.value)===x&&i[n.field]!==null?(i[n.field].count++,R.count=null):i[n.field]=R}const{colSpan:O,colsToSkip:p}=tt(n,t.dataItem,v,G,g,w[G]);g=p;const L=n.id?n.id:G,bt=d.classNames(m.contentSticky({locked:n.locked}),n.className),Ct=n.left!==void 0?{left:n.left,right:n.right}:{};let ee=!1;if(n.editable&&(e.editable||e.editField)){const x=e.editField?s.getNestedValue(e.editField,t.dataItem):e.edit&&e.dataItemKey?e.edit[d.getter(e.dataItemKey)(t.dataItem)]:void 0,ae=typeof x=="boolean"?x:Array.isArray(x)?x.indexOf(n.field)>-1:n.field!==void 0&&x===n.field;ae&&n.columnType==="data"&&(ae===!0||ae===n.field)&&(l=!0,ee=!0)}const te=n.cell||ee&&Et.GridEditCell||kt.GridCell,yt=e.expandField&&e.detail&&n.field===e.expandField||n._type==="expand",K={locked:e.lockGroups,id:b.tableKeyboardNavigationTools.generateNavigatableId(`${r}-${String(G)}`,S,yt||t.rowType==="groupHeader"||t.rowType==="groupFooter"||n.field==="value"?"nodata":"cell"),colSpan:O,dataItem:t.dataItem,field:n.field,editor:n.editor,format:n.format,columnType:n.columnType,rowReorderable:D,className:bt,render:e.cellRender,cells:s.resolveCells(e.cells,n.cells),columnIndex:G,columnsCount:h.length,rowType:t.rowType,level:t.level,expanded:t.expanded,dataIndex:t.dataIndex,rowDataIndex:c,columnPosition:Ct,style:{},ariaColumnIndex:n.ariaColumnIndex,isSelected:(n==null?void 0:n._type)==="edit"?u:Array.isArray(u)&&u.indexOf(G)>-1,isSorted:!!s.isSorted(n.field,e.sort),isInEdit:ee,isAlt:o,unstyled:F,group:t.group,localization:M,intl:lt,_rowSpan:R};return n.cell?a.createElement(zt.GridCustomCellClientContainer,{key:L,isClient:s.isClientReference(te),dataItem:K.dataItem,rowDataIndex:K.rowDataIndex,columnIndex:K.columnIndex,columnPosition:K.columnPosition},a.createElement(te,{...K})):a.createElement(te,{key:L,...K})}),isInEdit:l,isSelected:typeof u=="boolean"&&u}};let fe=0;if(P&&Q)for(let t=0;t<Q.topCacheCount+Q.attendedSkip-(e.skip||0);t++){const r=y.shift();if(r)y.push(r),fe++,r.rowType==="groupHeader"&&t--;else break}const ge=t=>t>=y.length-fe;let me=e.skip||0;const Y=[],be=!y.length,Ce=q.length+(e.filterable?1:0)+1;let B=0;if(y.length){let t=-1,r=0;const c=oe.enabled?{}:void 0;(_||y).forEach((o,i)=>{o.rowType==="data"&&(me++,t++);const l=me%2===0,u=e.dataItemKey&&d.getter(e.dataItemKey)(o.dataItem),g=i+(e.skip||0),w=u||"ai"+g,H=w+"_1",v=ft(o,w,t,l,c);if(B=g+Ce+r,Y.push(a.createElement(qt.GridRow,{key:w,dataItem:o.dataItem,isAltRow:l,isInEdit:v.isInEdit,rowType:o.rowType,isRowReorderable:D,isHidden:ge(i),onClick:null,onDoubleClick:null,selectedField:e.selectedField,rowHeight:e.rowHeight,render:e.rowRender,ariaRowIndex:B,absoluteRowIndex:g,dataIndex:P&&!e.groupable?g:t,isSelected:v.isSelected,rows:e.rows},v.row)),e.detail&&o.rowType==="data"&&o.expanded){const n=h.length-(e.expandField||A.enabled?1:0)-(e.group?e.group.length:0)||1;r++,B=g+Ce+r,Y.push(a.createElement("tr",{key:H,className:d.classNames(m.detailTr({isAlt:l})),style:{visibility:ge(i)?"hidden":"",height:e.detailRowHeight},role:"row","aria-rowindex":B},e.group&&e.group.map((G,R)=>{var L;const O=(L=v==null?void 0:v.row[R])==null?void 0:L.props.style,p=O?{left:O.left,right:O.right}:{};return a.createElement(Ke.GridGroupCell,{id:"",dataIndex:o.dataIndex,field:G.field,dataItem:o.dataItem,key:R,columnPosition:p,style:{},ariaColumnIndex:1+R,isSelected:!1,locked:e.lockGroups,cells:e.cells,group:o.group})}),(e.expandField||A.enabled)&&a.createElement(Kt.GridDetailHierarchyCell,{unstyled:F,id:b.tableKeyboardNavigationTools.generateNavigatableId(`${H}-dhcell`,S)}),a.createElement(Ht.GridDetailCell,{dataItem:o.dataItem,dataIndex:o.dataIndex,colSpan:n,ariaColIndex:2+(e.group?e.group.length:0),detail:e.detail,id:b.tableKeyboardNavigationTools.generateNavigatableId(`${H}-dcell`,S)})))}})}const ye={size:I,total:N,skip:e.skip||0,take:(e.take!==void 0?e.take:e.pageSize)||10,...Tt.normalize(e.pageable||{})},he=a.createElement(Bt.PagerContainer,null,e.pager?a.createElement(e.pager,{...ye}):a.createElement(b.Pager,{className:d.classNames(m.pager({})),...ye})),gt=(t,r)=>a.createElement("col",{key:r.toString(),width:s.getColumnWidth(t)}),mt=(Fe=e.cells)!=null&&Fe.footerCell||f.current.some(t=>{var r;return!!(t.footerCell||(r=t.cells)!=null&&r.footerCell)})?a.createElement(Nt.Footer,{size:I,staticHeaders:e.scrollable!=="none",row:a.createElement(Dt.FooterRow,{cells:e.cells,idPrefix:S,columns:f.current,ariaRowIndex:B+1}),cols:h.map(gt)}):null,we=a.createElement(Vt.GridColGroup,null,h.map((t,r)=>a.createElement("col",{key:r.toString(),className:s.isSorted(t.field,e.sort)?d.classNames(m.sorted({})):void 0,width:s.getColumnWidth(t)}))),Ge=e.reorderable||V,{detail:Jt,cells:Xt,rows:Yt,...Se}=e,Ee=a.createElement("tbody",{role:"rowgroup",className:d.classNames(m.tbody({})),...b.tableKeyboardNavigationBodyAttributes},Y);let Z=Ee;if(D&&(Z=a.createElement(Wt.GridReorderableRowsContainer,{unstyled:m,columns:f.current,rowReorderSettings:e.rowReorderable},Ee)),e.scrollable==="none")return a.createElement(Oe.GridClientWrapper,{gridRef:k,gridProps:Se,columnsRef:U(),columnsMapRef:q,dataRef:y,slicedData:_,isFixedVirtualScroll:J===$.VirtualScrollFixed,id:C,total:N,detailExpandable:!!e.detail},a.createElement(ze.GridElementContainer,null,a.createElement("div",{id:e.id,style:e.style,className:d.classNames(m.wrapper({size:I}),e.className),"aria-label":e.ariaLabel,...b.tableKeyboardNavigationScopeAttributes},de,se,a.createElement(At.GridTable,{selectable:e.selectable,className:d.classNames(m.table({size:I}))},we,ue,a.createElement(Me.GridTableBody,{rowReorderable:D},Z)),be&&a.createElement(Be.GridNoRecordsContainer,null,W.length?W:a.createElement(Ve.GridNoRecords,null)),Ge&&a.createElement(a.Fragment,null,a.createElement(Le.GridDropClue,null),a.createElement(_e.GridDragClue,null)))),ce,e.pageable&&he,a.createElement(We.GridLoader,{loader:e.loader,showLoader:e.showLoader}));let j=e.style||{};return P&&(j.height||(j=Object.assign({},j,{height:"450px"}))),a.createElement(Oe.GridClientWrapper,{gridRef:k,gridProps:Se,columnsRef:U(),columnsMapRef:q,dataRef:y,slicedData:_,isFixedVirtualScroll:J===$.VirtualScrollFixed,id:C,total:N,detailExpandable:!!e.detail},a.createElement(ze.GridElementContainer,null,a.createElement("div",{id:e.id,style:j,className:d.classNames(m.wrapper({size:I,virtual:P}),e.className),"aria-label":e.ariaLabel,...b.tableKeyboardNavigationScopeAttributes},de,se,a.createElement("div",{className:d.classNames(m.ariaRoot({})),role:"grid","aria-colcount":h.length,"aria-rowcount":N,id:C,"aria-label":M.toLanguageString(le.gridAriaLabel,le.messages[le.gridAriaLabel])},ue,a.createElement("div",{className:d.classNames(m.container({})),role:"presentation"},a.createElement(Lt.GridContainerElementContainer,null,a.createElement("div",{className:d.classNames(m.content({})),role:"presentation"},a.createElement("div",{className:d.classNames(m.tableWrap({})),role:"presentation"},a.createElement(Ot.GridTableScrollable,{selectable:e.selectable,tableClassName:d.classNames(m.table({size:I})),tableStyle:{userSelect:dt}},we,a.createElement(Me.GridTableBody,{rowReorderable:D},Z)),be&&a.createElement(Be.GridNoRecordsContainer,null,W.length?W:a.createElement(Ve.GridNoRecords,null))),P&&a.createElement("div",{className:d.classNames(m.heightContainer({})),role:"presentation"},a.createElement(_t.VirtualScrollHeightContainer,{isVirtualScroll:P}))))),mt,Ge&&a.createElement(a.Fragment,null,a.createElement(Le.GridDropClue,null),a.createElement(_e.GridDragClue,null)),ct&&a.createElement(d.WatermarkOverlay,null)),ce,e.pageable&&he,a.createElement(We.GridLoader,{loader:e.loader,showLoader:e.showLoader}))))});$e.displayName="KendoReactGridComponent";exports.GridComponent=$e;
|
|
8
|
+
"use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const ht=require("react"),d=require("@progress/kendo-react-common"),wt=require("@progress/kendo-data-query"),b=require("@progress/kendo-react-data-tools"),Gt=require("./cells/GridSelectionCell.js"),St=require("./cells/GridHierarchyCell.js"),Et=require("./cells/GridEditCell.js"),Rt=require("./header/Header.js"),It=require("./header/HeaderRow.js"),vt=require("./header/FilterRow.js"),xt=require("./header/GroupPanel.js"),Nt=require("./footer/Footer.js"),s=require("./utils/index.js"),kt=require("./cells/GridCell.js"),Ke=require("./cells/GridGroupCell.js"),qt=require("./rows/GridRow.js"),Ft=require("./header/GridHeaderSelectionCell.js"),Ve=require("./components/noRecords/GridNoRecords.js"),Ae=require("./filterCommon.js"),Dt=require("./footer/FooterRow.js"),Tt=require("./paging/GridPagerSettings.js"),Pt=require("./package-metadata.js"),Ht=require("./cells/GridDetailCell.js"),Kt=require("./cells/GridDetailHierarchyCell.js"),Be=require("./components/noRecords/GridNoRecordsContainer.js"),Oe=require("./GridClientWrapper.js"),Vt=require("./components/colGroup/GridColGroup.js"),At=require("./components/table/GridTable.js"),Le=require("./components/GridDropClue.js"),_e=require("./components/GridDragClue.js"),Me=require("./components/table/GridTableBody.js"),Bt=require("./components/PagerContainer.js"),Ot=require("./components/table/GridTableScrollable.js"),ze=require("./components/GridElementContainer.js"),Lt=require("./components/GridContainerElementContainer.js"),_t=require("./components/VirtualScrollHeightContainer.js"),re=require("./messages/index.js"),$=require("./VirtualScrollFixed.js"),Mt=require("./VirtualScroll.js"),zt=require("./components/GridCustomCellClientContainer.js"),Wt=require("./components/GridDraggableRowsContainer.js"),jt=require("./cells/GridRowReorderCell.js"),$t=require("./header/client/GridHeaderRowReorderCell.js"),We=require("./components/GridLoader.js"),Ut=require("./utils/premium.js"),je=require("@progress/kendo-react-intl");function Qt(e){const k=Object.create(null,{[Symbol.toStringTag]:{value:"Module"}});if(e){for(const C in e)if(C!=="default"){const S=Object.getOwnPropertyDescriptor(e,C);Object.defineProperty(k,C,S.get?S:{enumerable:!0,get:()=>e[C]})}}return k.default=e,Object.freeze(k)}const a=Qt(ht),$e=a.forwardRef((e,k)=>{var Re,Ie,ve,xe,Ne,ke,qe,Fe;const C=e.id+"-role-element-id",S=e.navigatable?C:"",Ue=(t,r,c,o,i,l,u)=>{const g=[],w=s.flatData(g,E,t,{index:r},c!==void 0,o,i,l,nt.defaultExpand,u);return{flattedData:g,resolvedGroupsCount:w}},Qe=t=>{const r=t.filter(i=>i&&i.type&&i.type.displayName==="KendoReactGridColumn"),c=f.current.filter(i=>i.declarationIndex>=0&&i.parentIndex===-1),o=s.sanitizeColumns(c);return s.readColumns(r,o,{prevId:0,idPrefix:S})},Je=t=>t.filter(r=>d.canUseDOM&&r&&r.media?window.matchMedia(r.media).matches:r),Xe=()=>{const t=[],r=(c,o)=>c==null?void 0:c.forEach(i=>{const l=i.hidden||o;t.push({...i,hidden:l}),r(i.children,l)});return r(e.columnsState,!1),t},Ye=t=>{const r=Xe();return t.filter(c=>{var o;return!((o=r.find(i=>i.id===c.id))!=null&&o.hidden)})},Ze=(t,r)=>{var i;const c=Qe(t),o=Je(c);f.current=o,f.current.length===0&&(f.current=s.autoGenerateColumns(E,e.group,{column:(i=A.column)!=null?i:e.expandField},{prevId:0,idPrefix:S})),f.current=Ye(f.current),pe(f.current,r),q=s.mapColumns(f.current,!0),ne.current=f.current.map(s.clientColumn)},pe=(t,r)=>{var i;t.filter(l=>e.selectedField&&l.field===e.selectedField||l.columnType==="checkbox").forEach(l=>{l.width=l.width||"50px",l.cell=l.cell||Gt.GridSelectionCell,l._type="edit",l.headerCell=l.headerCell||Ft.GridHeaderSelectionCell}),D!==void 0&&t.filter(l=>l.columnType==="reorder").forEach(l=>{l.width=l.width||"50px",l.cell=l.cell||jt.GridRowReorderCell,l.headerCell=l.headerCell||$t.GridHeaderRowReorderCell,l.sortable=!1,l.filterable=!1,l.editable=!1});const c={id:"",resizable:!0,width:"32px",title:" ",declarationIndex:-1,orderIndex:-1,children:[],parentIndex:-1,depth:0,colSpan:0,headerColSpan:0,rowSpan:0,left:0,right:0,index:0,rightBorder:!1,ariaColumnIndex:0,isAccessible:!0};let o=0;(e.expandField||A.enabled)&&e.detail&&(t.unshift({...c,_type:"expand",cell:St.GridHierarchyCell,field:(i=A.column)!=null?i:e.expandField,headerClassName:d.classNames(m.hierarchyCell({}))}),o++);for(let l=0;l<r;l++)t.unshift({...c,isAccessible:!1,cell:Ke.GridGroupCell,field:"value",locked:e.lockGroups}),o++;t.slice(o).forEach(l=>{l.parentIndex>=0&&(l.parentIndex+=o),l.rowSpannable=l.rowSpannable!==void 0?s.getRowSpanOptions(l.rowSpannable):oe})},U=()=>E.length===e.total,et=()=>{const{rowHeight:t,detailRowHeight:r,detail:c,expandField:o}=e,i=U(),l=t!==void 0&&t>0,u=r!==void 0&&r>0;return!l||V&&!i||!!(c&&o)&&(!u||!i)?Mt.VirtualScroll:$.VirtualScrollFixed},Q=()=>e.isClient?f:ne,tt=(t,r,c,o,i,l)=>{let u=s.getColSpan(t,r);if(e.columnVirtualization&&t.colSpan===1)return{colSpan:l,colsToSkip:i};let g=c.length-1===o,w=c.length-o;return e.columnVirtualization&&(g=h.length-1===o,w=h.length-o),u>1&&!g?i=u-1:u=1,w<=u&&!g&&(u=w),{colSpan:u,colsToSkip:i}};let J,y=[],_;const f=e.columnsRef||{current:[]},ne={current:[]};let q=[[]];const at=e.scrollLeftRef||{current:0},M=e.localization||new je.LocalizationService(e.language),lt=e.intl||new je.IntlService((Re=e.locale)!=null?Re:"en"),F=e.unstyled,m=F&&F.uGrid?F.uGrid:d.uGrid,D=s.isRowReorderEnabled(e.rowReorderable),T=e.autoProcessData===!0?{group:!0,sort:!0,filter:!0,search:!0,page:!0}:e.autoProcessData;let E,N;if(Array.isArray(e.data)?(E=e.data,N=(Ie=e.total)!=null?Ie:E.length):(E=((ve=e.data)==null?void 0:ve.data)||[],N=(ke=(Ne=e.total)!=null?Ne:(xe=e.data)==null?void 0:xe.total)!=null?ke:E.length),T){const{data:t,total:r}=wt.process(E,{group:T.group?e.group:void 0,sort:T.sort?e.sort:void 0,filter:b.combineFilters(T.filter?e.filter:void 0,T.search?e.search:void 0),...T.page?{take:e.take,skip:e.skip}:{}});E=t,N=(qe=e.total)!=null?qe:r}const{size:I="medium"}=e,rt=typeof e.groupable=="object"&&e.groupable.footer||"none",P=e.scrollable==="virtual",V=e.groupable===!0||typeof e.groupable=="object"&&e.groupable.enabled!==!1,A=b.getDetailExpandableOptions(!!e.detail),nt=b.getGroupExpandableOptions(typeof e.groupable=="object"&&e.groupable.enabled!==!1?e.groupable.expandable:e.groupable),{resolvedGroupsCount:it,flattedData:ot}=Ue(rt,e.skip||0,e.group,e.expandField,e.detailExpand,e.groupExpand,e.dataItemKey);y=ot;const X=et();X===$.VirtualScrollFixed&&U()&&(_=y.slice(e.skip||0,(e.skip||0)+((e.take!==void 0?e.take:e.pageSize)||0)));const ie=b.getSelectionOptions(e.selectable||!!e.selectedField),oe=s.getRowSpanOptions(e.rowSpannable),dt=ie&&ie.drag?"none":void 0,z=a.useMemo(()=>a.Children.toArray(e.children),[e.children]);Ze(z,it);const Y=a.useMemo(()=>{const t=Ut.gridPremiumFeatures(e,f.current);return{premium:t.length>0,features:t}},[e,f]),ct=a.useMemo(()=>Y.premium?!d.validatePackage(Pt.packageMetadata,{component:"Grid",features:Y.features}):!1,[Y.premium]),de=z.map(t=>t&&t.type&&t.type.displayName==="KendoReactGridToolbar"?a.cloneElement(t,{...t.props,ariaControls:C}):null),W=z.filter(t=>t&&t.type&&t.type.displayName==="KendoReactGridNoRecords"),ce=z.filter(t=>t&&t.type&&t.type.displayName==="KendoReactGridStatusBar"),h=f.current.filter(t=>t.children.length===0),se=V&&a.createElement(xt.GroupPanel,{columns:Q().current,group:e.group||[],ariaControls:C}),ue=a.createElement(Rt.Header,{size:I,staticHeaders:e.scrollable!=="none",draggable:e.reorderable||V,headerRow:a.createElement(It.HeaderRow,{cells:e.cells,sort:e.sort,sortable:e.sortable,group:e.group||[],groupable:V,filter:e.filter,filterable:e.filterable,filterOperators:e.filterOperators||Ae.operators,columnMenu:e.columnMenu,columnMenuIcon:e.columnMenuIcon,columns:f.current,columnsMap:q,cellRender:e.headerCellRender,navigatable:!!e.navigatable,localization:M,unstyled:F,headerSelectionValue:!!(e.select&&y.filter(t=>t.rowType==="data").every(t=>e.select&&e.dataItemKey&&d.getter(e.dataItemKey)(t.dataItem)!==void 0?e.select[d.getter(e.dataItemKey)(t.dataItem)]:void 0))}),filterRow:e.filterable&&a.createElement(vt.FilterRow,{cells:e.cells,size:I,columns:f.current,filter:e.filter,filterOperators:e.filterOperators||Ae.operators,sort:e.sort,cellRender:e.filterCellRender,navigatable:!!e.navigatable,ariaRowIndex:q.length+1,localization:M})||void 0,cols:h.map((t,r)=>a.createElement("col",{key:r.toString(),width:s.getColumnWidth(t)}))}),st=at.current||0,ut=parseFloat(((e.style||{}).width||"").toString()),ft=(t,r,c,o,i)=>{let l=!1;const u=e.selectedField?s.getNestedValue(e.selectedField,t.dataItem):e.select&&e.dataItemKey&&d.getter(e.dataItemKey)(t.dataItem)!==void 0?e.select[d.getter(e.dataItemKey)(t.dataItem)]:void 0;let g=0;const{colSpans:w,hiddenColumns:H}=b.tableColumnsVirtualization({enabled:e.columnVirtualization,columns:h,tableViewPortWidth:ut,scrollLeft:st,getColSpan:s.getColSpan,dataItem:t.dataItem}),v=h.filter((n,G)=>!H[G]);return{row:h.map((n,G)=>{var De,Te,Pe,He;if(H[G])return null;if(g>0)return g--,null;let R;if((De=n.rowSpannable)!=null&&De.enabled&&t.rowType==="data"&&n.field&&i){const x=n.field?(Pe=(Te=n.rowSpannable).valueGetter)==null?void 0:Pe.call(Te,t.dataItem,n.field):null;R={value:x,count:1},i[n.field]&&((He=i[n.field])==null?void 0:He.value)===x&&i[n.field]!==null?(i[n.field].count++,R.count=null):i[n.field]=R}const{colSpan:O,colsToSkip:ee}=tt(n,t.dataItem,v,G,g,w[G]);g=ee;const L=n.id?n.id:G,bt=d.classNames(m.contentSticky({locked:n.locked}),n.className),Ct=n.left!==void 0?{left:n.left,right:n.right}:{};let te=!1;if(n.editable&&(e.editable||e.editField)){const x=e.editField?s.getNestedValue(e.editField,t.dataItem):e.edit&&e.dataItemKey?e.edit[d.getter(e.dataItemKey)(t.dataItem)]:void 0,le=typeof x=="boolean"?x:Array.isArray(x)?x.indexOf(n.field)>-1:n.field!==void 0&&x===n.field;le&&n.columnType==="data"&&(le===!0||le===n.field)&&(l=!0,te=!0)}const ae=n.cell||te&&Et.GridEditCell||kt.GridCell,yt=e.expandField&&e.detail&&n.field===e.expandField||n._type==="expand",K={locked:e.lockGroups,id:b.tableKeyboardNavigationTools.generateNavigatableId(`${r}-${String(G)}`,S,yt||t.rowType==="groupHeader"||t.rowType==="groupFooter"||n.field==="value"?"nodata":"cell"),colSpan:O,dataItem:t.dataItem,field:n.field,editor:n.editor,format:n.format,columnType:n.columnType,rowReorderable:D,className:bt,render:e.cellRender,cells:s.resolveCells(e.cells,n.cells),columnIndex:G,columnsCount:h.length,rowType:t.rowType,level:t.level,expanded:t.expanded,dataIndex:t.dataIndex,rowDataIndex:c,columnPosition:Ct,style:{},ariaColumnIndex:n.ariaColumnIndex,isSelected:(n==null?void 0:n._type)==="edit"?u:Array.isArray(u)&&u.indexOf(G)>-1,isSorted:!!s.isSorted(n.field,e.sort),isInEdit:te,isAlt:o,unstyled:F,group:t.group,localization:M,intl:lt,_rowSpan:R};return n.cell?a.createElement(zt.GridCustomCellClientContainer,{key:L,isClient:s.isClientReference(ae),dataItem:K.dataItem,rowDataIndex:K.rowDataIndex,columnIndex:K.columnIndex,columnPosition:K.columnPosition},a.createElement(ae,{...K})):a.createElement(ae,{key:L,...K})}),isInEdit:l,isSelected:typeof u=="boolean"&&u}};let fe=0;if(P&&J)for(let t=0;t<J.topCacheCount+J.attendedSkip-(e.skip||0);t++){const r=y.shift();if(r)y.push(r),fe++,r.rowType==="groupHeader"&&t--;else break}const ge=t=>t>=y.length-fe;let me=e.skip||0;const Z=[],be=!y.length,Ce=q.length+(e.filterable?1:0)+1;let B=0;if(y.length){let t=-1,r=0;const c=oe.enabled?{}:void 0;(_||y).forEach((o,i)=>{o.rowType==="data"&&(me++,t++);const l=me%2===0,u=e.dataItemKey&&d.getter(e.dataItemKey)(o.dataItem),g=i+(e.skip||0),w=u||"ai"+g,H=w+"_1",v=ft(o,w,t,l,c);if(B=g+Ce+r,Z.push(a.createElement(qt.GridRow,{key:w,dataItem:o.dataItem,isAltRow:l,isInEdit:v.isInEdit,rowType:o.rowType,isRowReorderable:D,isHidden:ge(i),onClick:null,onDoubleClick:null,selectedField:e.selectedField,rowHeight:e.rowHeight,render:e.rowRender,ariaRowIndex:B,absoluteRowIndex:g,dataIndex:P&&!e.groupable?g:t,isSelected:v.isSelected,rows:e.rows},v.row)),e.detail&&o.rowType==="data"&&o.expanded){const n=h.length-(e.expandField||A.enabled?1:0)-(e.group?e.group.length:0)||1;r++,B=g+Ce+r,Z.push(a.createElement("tr",{key:H,className:d.classNames(m.detailTr({isAlt:l})),style:{visibility:ge(i)?"hidden":"",height:e.detailRowHeight},role:"row","aria-rowindex":B},e.group&&e.group.map((G,R)=>{var L;const O=(L=v==null?void 0:v.row[R])==null?void 0:L.props.style,ee=O?{left:O.left,right:O.right}:{};return a.createElement(Ke.GridGroupCell,{id:"",dataIndex:o.dataIndex,field:G.field,dataItem:o.dataItem,key:R,columnPosition:ee,style:{},ariaColumnIndex:1+R,isSelected:!1,locked:e.lockGroups,cells:e.cells,group:o.group})}),(e.expandField||A.enabled)&&a.createElement(Kt.GridDetailHierarchyCell,{unstyled:F,id:b.tableKeyboardNavigationTools.generateNavigatableId(`${H}-dhcell`,S)}),a.createElement(Ht.GridDetailCell,{dataItem:o.dataItem,dataIndex:o.dataIndex,colSpan:n,ariaColIndex:2+(e.group?e.group.length:0),detail:e.detail,id:b.tableKeyboardNavigationTools.generateNavigatableId(`${H}-dcell`,S)})))}})}const ye={size:I,total:N,skip:e.skip||0,take:(e.take!==void 0?e.take:e.pageSize)||10,...Tt.normalize(e.pageable||{})},he=a.createElement(Bt.PagerContainer,null,e.pager?a.createElement(e.pager,{...ye}):a.createElement(b.Pager,{className:d.classNames(m.pager({})),...ye})),gt=(t,r)=>a.createElement("col",{key:r.toString(),width:s.getColumnWidth(t)}),mt=(Fe=e.cells)!=null&&Fe.footerCell||f.current.some(t=>{var r;return!!(t.footerCell||(r=t.cells)!=null&&r.footerCell)})?a.createElement(Nt.Footer,{size:I,staticHeaders:e.scrollable!=="none",row:a.createElement(Dt.FooterRow,{cells:e.cells,idPrefix:S,columns:f.current,ariaRowIndex:B+1}),cols:h.map(gt)}):null,we=a.createElement(Vt.GridColGroup,null,h.map((t,r)=>a.createElement("col",{key:r.toString(),className:s.isSorted(t.field,e.sort)?d.classNames(m.sorted({})):void 0,width:s.getColumnWidth(t)}))),Ge=e.reorderable||V,{detail:Jt,cells:Xt,rows:Yt,...Se}=e,Ee=a.createElement("tbody",{role:"rowgroup",className:d.classNames(m.tbody({})),...b.tableKeyboardNavigationBodyAttributes},Z);let p=Ee;if(D&&(p=a.createElement(Wt.GridReorderableRowsContainer,{unstyled:m,columns:f.current,rowReorderSettings:e.rowReorderable},Ee)),e.scrollable==="none")return a.createElement(Oe.GridClientWrapper,{gridRef:k,gridProps:Se,columnsRef:Q(),columnsMapRef:q,dataRef:y,slicedData:_,isFixedVirtualScroll:X===$.VirtualScrollFixed,id:C,total:N,isAllData:U(),detailExpandable:!!e.detail},a.createElement(ze.GridElementContainer,null,a.createElement("div",{id:e.id,style:e.style,className:d.classNames(m.wrapper({size:I}),e.className),"aria-label":e.ariaLabel,...b.tableKeyboardNavigationScopeAttributes},de,se,a.createElement(At.GridTable,{selectable:e.selectable,className:d.classNames(m.table({size:I}))},we,ue,a.createElement(Me.GridTableBody,{rowReorderable:D},p)),be&&a.createElement(Be.GridNoRecordsContainer,null,W.length?W:a.createElement(Ve.GridNoRecords,null)),Ge&&a.createElement(a.Fragment,null,a.createElement(Le.GridDropClue,null),a.createElement(_e.GridDragClue,null)))),ce,e.pageable&&he,a.createElement(We.GridLoader,{loader:e.loader,showLoader:e.showLoader}));let j=e.style||{};return P&&(j.height||(j=Object.assign({},j,{height:"450px"}))),a.createElement(Oe.GridClientWrapper,{gridRef:k,gridProps:Se,columnsRef:Q(),columnsMapRef:q,dataRef:y,slicedData:_,isFixedVirtualScroll:X===$.VirtualScrollFixed,id:C,total:N,detailExpandable:!!e.detail},a.createElement(ze.GridElementContainer,null,a.createElement("div",{id:e.id,style:j,className:d.classNames(m.wrapper({size:I,virtual:P}),e.className),"aria-label":e.ariaLabel,...b.tableKeyboardNavigationScopeAttributes},de,se,a.createElement("div",{className:d.classNames(m.ariaRoot({})),role:"grid","aria-colcount":h.length,"aria-rowcount":N,id:C,"aria-label":M.toLanguageString(re.gridAriaLabel,re.messages[re.gridAriaLabel])},ue,a.createElement("div",{className:d.classNames(m.container({})),role:"presentation"},a.createElement(Lt.GridContainerElementContainer,null,a.createElement("div",{className:d.classNames(m.content({})),role:"presentation"},a.createElement("div",{className:d.classNames(m.tableWrap({})),role:"presentation"},a.createElement(Ot.GridTableScrollable,{selectable:e.selectable,tableClassName:d.classNames(m.table({size:I})),tableStyle:{userSelect:dt}},we,a.createElement(Me.GridTableBody,{rowReorderable:D},p)),be&&a.createElement(Be.GridNoRecordsContainer,null,W.length?W:a.createElement(Ve.GridNoRecords,null))),P&&a.createElement("div",{className:d.classNames(m.heightContainer({})),role:"presentation"},a.createElement(_t.VirtualScrollHeightContainer,{isVirtualScroll:P}))))),mt,Ge&&a.createElement(a.Fragment,null,a.createElement(Le.GridDropClue,null),a.createElement(_e.GridDragClue,null)),ct&&a.createElement(d.WatermarkOverlay,null)),ce,e.pageable&&he,a.createElement(We.GridLoader,{loader:e.loader,showLoader:e.showLoader}))))});$e.displayName="KendoReactGridComponent";exports.GridComponent=$e;
|