fix(gui): If two asbs have the same relevancy score, sort by price

This commit is contained in:
Binarybaron 2024-11-19 16:25:01 +01:00
parent 288a13e8e7
commit c5958c4dc1

View File

@ -12,20 +12,17 @@ export function sortProviderList(list: ExtendedProviderStatus[]) {
if (isProviderOutdated(firstEl) && !isProviderOutdated(secondEl)) return 1;
if (!isProviderOutdated(firstEl) && isProviderOutdated(secondEl)) return -1;
// If neither of them have a relevancy score, sort by price
if (firstEl.relevancy == null && secondEl.relevancy == null) {
// If neither of them have a relevancy score or they are the same, sort by price
if (firstEl.relevancy == secondEl.relevancy) {
return firstEl.price - secondEl.price;
}
// If only on of the two don't have a relevancy score, prioritize the one that does
// If only one of the two doesn't have a relevancy score, prioritize the one that does
if (firstEl.relevancy == null) return 1;
if (secondEl.relevancy == null) return -1;
// Otherwise, sort by relevancy score
if (firstEl.relevancy > secondEl.relevancy) {
return -1;
}
return 1;
return secondEl.relevancy - firstEl.relevancy;
})
// Remove duplicate providers
.filter((provider, index, self) =>