UNPKG

@adaptabletools/adaptable-cjs

Version:

Powerful data-agnostic HTML5 AG Grid extension which provides advanced, cutting-edge functionality to meet all DataGrid requirements

27 lines (26 loc) 1.43 kB
"use strict"; Object.defineProperty(exports, "__esModule", { value: true }); exports.NewColumnSelector = void 0; const tslib_1 = require("tslib"); const React = tslib_1.__importStar(require("react")); const react_1 = require("react"); const ValueSelector_1 = require("../ValueSelector"); const NewColumnSelector = ({ allowReorder = true, ...props }) => { const { columnFilterText, availableColumns, selected, onChange, singleSelect } = props; const filterFn = (0, react_1.useMemo)(() => { return columnFilterText ? (c) => c.friendlyName.toLowerCase().indexOf(columnFilterText.toLowerCase()) != -1 : null; }, [columnFilterText]); return (React.createElement(ValueSelector_1.ValueSelector, { value: selected, options: availableColumns, filter: filterFn, singleSelect: singleSelect, allowReorder: false, onChange: (colIds) => { if (singleSelect) { onChange(colIds.length ? [colIds.pop()] : []); } else { onChange(colIds); } }, toIdentifier: (c) => c.columnId, toLabel: (c) => c.friendlyName, noSelectionLabel: singleSelect ? 'Please select a column' : 'You have not selected any columns.', xSelectedLabel: singleSelect ? () => null : (count) => (count > 1 ? `You selected ${count} columns.` : 'You selected one column.') })); }; exports.NewColumnSelector = NewColumnSelector;