mirror of
https://github.com/Stremio/stremio-web.git
synced 2026-03-11 21:27:05 +00:00
comparatorWithPriorities function implemented
This commit is contained in:
parent
7c9e06f037
commit
d4a08bf6ff
2 changed files with 25 additions and 0 deletions
23
src/common/comparatorWithPriorities.js
Normal file
23
src/common/comparatorWithPriorities.js
Normal file
|
|
@ -0,0 +1,23 @@
|
|||
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;
|
||||
|
|
@ -18,6 +18,7 @@ const SharePrompt = require('./SharePrompt');
|
|||
const Slider = require('./Slider');
|
||||
const TextInput = require('./TextInput');
|
||||
const { ToastProvider, useToast } = require('./Toast');
|
||||
const comparatorWithPriorities = require('./comparatorWithPriorities');
|
||||
const CONSTANTS = require('./CONSTANTS');
|
||||
const languageNames = require('./languageNames');
|
||||
const routesRegexp = require('./routesRegexp');
|
||||
|
|
@ -55,6 +56,7 @@ module.exports = {
|
|||
TextInput,
|
||||
ToastProvider,
|
||||
useToast,
|
||||
comparatorWithPriorities,
|
||||
CONSTANTS,
|
||||
languageNames,
|
||||
routesRegexp,
|
||||
|
|
|
|||
Loading…
Reference in a new issue