UNPKG

@progress/kendo-react-grid

Version:

React Data Grid (Table) provides 100+ ready-to-use data grid features. KendoReact Grid package

9 lines (8 loc) 2.34 kB
/** * @license *------------------------------------------------------------------------------------------- * Copyright © 2025 Progress Software Corporation. All rights reserved. * Licensed under commercial license. See LICENSE.md in the package root for more information *------------------------------------------------------------------------------------------- */ "use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const u=require("react"),n=require("@progress/kendo-react-data-tools"),d=require("../sortCommon.js"),s=require("../paging/GridPagerSettings.js");function c(e){const t=Object.create(null,{[Symbol.toStringTag]:{value:"Module"}});if(e){for(const l in e)if(l!=="default"){const r=Object.getOwnPropertyDescriptor(e,l);Object.defineProperty(t,l,r.get?r:{enumerable:!0,get:()=>e[l]})}}return t.default=e,Object.freeze(t)}const m=c(u),b=e=>({lockedColumn:e.some(t=>t.locked)}),g=e=>({multiColumn:e.some(t=>t.children&&t.children.length>0)}),C=e=>({columnCellTemplate:e.some(t=>t.columnType!=="data"?!1:t.cells||t.cell||t.headerCell||t.footerCell||t.filterCell)}),f=e=>({columnMenu:e.some(t=>t.columnMenu)}),y=e=>m.Children.toArray(e.children).some(l=>l&&l.type&&l.type.displayName==="KendoReactGridColumn"?l.props.hidden:!1),a=e=>{const t=n.getSelectionOptions(e.selectable),l=n.getEditableOptions(e.editable),r=e.sortable&&d.normalizeSortable(e.sortable),o=e.pageable&&s.normalize(e.pageable);return{cells:!!e.cells,detail:!!e.detail,cellRender:!!e.cellRender,rows:!!e.rows,rowRender:!!e.rowRender,filterCellRender:!!e.filterCellRender,headerCellRender:!!e.headerCellRender,editableInline:l.mode==="inline",selectionMultiple:t.enabled&&t.mode==="multiple",selectionDrag:t.enabled&&t.drag,columnMenu:!!e.columnMenu,filterOperators:!!e.filterOperators,groupable:!!e.groupable,group:!!e.group,groupExpand:!!e.groupExpand,customPager:!!e.pager,clipboard:!!e.clipboard,contextMenu:!!e.contextMenu,serverGrid:!e.isClient,scrollableVirtual:e.scrollable==="virtual",pageableInput:!!(e.pageable&&o.type==="input"),sortableMultiple:!!(e.sortable&&r.mode==="multiple"),hiddenColumns:y(e)}},i=e=>({...b(e),...g(e),...C(e),...f(e)}),h=(e,t)=>{const l={...a(e),...i(t)};return Object.keys(l).filter(r=>l[r]===!0)};exports.gridPremiumFeatures=h;exports.isPremiumGridByColumns=i;exports.isPremiumGridByProps=a;