@vlsergey/react-bootstrap-pagetable
Version:
Complex solution to work with pageable data, including sorting, filtering, actions, changing displayed columns, etc.
28 lines (27 loc) • 899 B
JavaScript
Object.defineProperty(exports, "__esModule", { value: true });
function strToSort(str) {
if (!str)
return undefined;
if (typeof str === 'string') {
var sortBy = strToSortBy(str);
if (!sortBy)
return undefined;
return [sortBy];
}
var strAsArray = str;
var resultArray = strAsArray.map(strToSortBy).filter(function (x) { return !!x; });
return !resultArray ? undefined : resultArray;
}
exports.default = strToSort;
function strToSortBy(str) {
if (!str)
return undefined;
var commaIndex = str.indexOf(',');
if (commaIndex === -1) {
return { field: str, direction: 'ASC' };
}
var field = str.substring(0, commaIndex);
var strDir = str.substring(commaIndex + 1);
return { field: field, direction: strDir.toUpperCase() === 'DESC' ? 'DESC' : 'ASC' };
}
;