@progress/kendo-angular-grid
Version:
Kendo UI Grid for Angular - high performance data grid with paging, filtering, virtualization, CRUD, and more.
53 lines (52 loc) • 1.82 kB
JavaScript
/**-----------------------------------------------------------------------------------------
* Copyright © 2025 Progress Software Corporation. All rights reserved.
* Licensed under commercial license. See LICENSE.md in the project root for more information
*-------------------------------------------------------------------------------------------*/
/**
* @hidden
*/
export const hasFilter = (settings, column) => settings.filter !== false && column.field && column.filterable;
/**
* @hidden
*/
export const hasSort = (settings, column) => settings.sort !== false && column.field && column.sortable;
/**
* @hidden
*/
export const hasLock = (settings, column) => settings.lock && column.lockable && !(column.parent && !column.parent.isSpanColumn);
/**
* @hidden
*/
export const hasStick = (settings, column) => settings.stick && column.stickable && !(column.parent && !column.parent.isSpanColumn);
/**
* @hidden
*/
export const hasPosition = (settings, column) => settings.setColumnPosition && (column.stickable || column.lockable) && !(column.parent && !column.parent.isSpanColumn);
/**
* @hidden
*/
export const hasColumnChooser = (settings) => settings.columnChooser !== false;
/**
* @hidden
*/
export const hasAutoSizeColumn = (settings) => settings.autoSizeColumn;
/**
* @hidden
*/
export const hasAutoSizeAllColumns = (settings) => settings.autoSizeAllColumns;
/**
* @hidden
*/
export const autoSizeColumn = (grid, service, column) => {
column ? grid.autoFitColumn(column) : grid.autoFitColumns();
service.close();
};
/**
* @hidden
*/
export const hasItems = (settings, column) => hasAutoSizeAllColumns(settings) ||
hasColumnChooser(settings) ||
hasFilter(settings, column) ||
hasAutoSizeColumn(settings) ||
hasLock(settings, column) ||
hasSort(settings, column);