@onethousandswaps-libs/uikit
Version:
User interface package for One THousand Swaps apps
24 lines (22 loc) • 666 B
text/typescript
export const byTextAscending = <T>(getTextProperty: (object: T) => string) => (objectA: T, objectB: T): number => {
const upperA = getTextProperty(objectA).toUpperCase();
const upperB = getTextProperty(objectB).toUpperCase();
if (upperA < upperB) {
return -1;
}
if (upperA > upperB) {
return 1;
}
return 0;
};
export const byTextDescending = <T>(getTextProperty: (object: T) => string) => (objectA: T, objectB: T): number => {
const upperA = getTextProperty(objectA).toUpperCase();
const upperB = getTextProperty(objectB).toUpperCase();
if (upperA > upperB) {
return -1;
}
if (upperA < upperB) {
return 1;
}
return 0;
};