UNPKG

@awsui/components-react

Version:

AWS UI is a collection of [React](https://reactjs.org/) components that help create intuitive, responsive, and accessible user experiences for web applications. It is developed by Amazon Web Services (AWS). This work is available under the terms of the [A

51 lines (50 loc) 1.56 kB
export var applyTrackBy = function (trackBy, item) { if (typeof trackBy === 'function') { return trackBy(item); } return item[trackBy]; }; export var getItemKey = function (trackBy, item, index) { if (!trackBy) { return index; } return applyTrackBy(trackBy, item); }; export var getTrackableValue = function (trackBy, item) { if (!trackBy) { return item; } return applyTrackBy(trackBy, item); }; export var getColumnKey = function (column, index) { return column.id || index; }; var stateToIcon = { sortable: 'caret-down', ascending: 'caret-up-filled', descending: 'caret-down-filled' }; var stateToAriaSort = { sortable: 'none', ascending: 'ascending', descending: 'descending' }; export var getSortingStatus = function (sortable, sorted, descending, disabled) { if (sorted) { if (descending) { return 'descending'; } return 'ascending'; } if (sortable && !disabled) { return 'sortable'; } return undefined; }; export var getSortingIconName = function (sortingState) { return stateToIcon[sortingState]; }; export var getAriaSort = function (sortingState) { return stateToAriaSort[sortingState]; }; export var isSorted = function (column, sortingColumn) { return column === sortingColumn || (column.sortingField !== undefined && column.sortingField === sortingColumn.sortingField) || (column.sortingComparator !== undefined && column.sortingComparator === sortingColumn.sortingComparator); };