mirror of
https://github.com/Stremio/stremio-web.git
synced 2026-03-16 05:16:05 +00:00
25 lines
739 B
JavaScript
25 lines
739 B
JavaScript
// Copyright (C) 2017-2023 Smart code 203358507
|
|
|
|
const comparatorWithPriorities = (priorities) => {
|
|
return (a, b) => {
|
|
if (isNaN(priorities[a]) && isNaN(priorities[b])) {
|
|
return a.localeCompare(b);
|
|
} else if (isNaN(priorities[a])) {
|
|
if (priorities[b] === Number.NEGATIVE_INFINITY) {
|
|
return -1;
|
|
} else {
|
|
return 1;
|
|
}
|
|
} else if (isNaN(priorities[b])) {
|
|
if (priorities[a] === Number.NEGATIVE_INFINITY) {
|
|
return 1;
|
|
} else {
|
|
return -1;
|
|
}
|
|
} else {
|
|
return priorities[b] - priorities[a];
|
|
}
|
|
};
|
|
};
|
|
|
|
module.exports = comparatorWithPriorities;
|