mirror of
https://github.com/Stremio/stremio-web.git
synced 2026-04-21 11:42: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 Slider = require('./Slider');
|
||||||
const TextInput = require('./TextInput');
|
const TextInput = require('./TextInput');
|
||||||
const { ToastProvider, useToast } = require('./Toast');
|
const { ToastProvider, useToast } = require('./Toast');
|
||||||
|
const comparatorWithPriorities = require('./comparatorWithPriorities');
|
||||||
const CONSTANTS = require('./CONSTANTS');
|
const CONSTANTS = require('./CONSTANTS');
|
||||||
const languageNames = require('./languageNames');
|
const languageNames = require('./languageNames');
|
||||||
const routesRegexp = require('./routesRegexp');
|
const routesRegexp = require('./routesRegexp');
|
||||||
|
|
@ -55,6 +56,7 @@ module.exports = {
|
||||||
TextInput,
|
TextInput,
|
||||||
ToastProvider,
|
ToastProvider,
|
||||||
useToast,
|
useToast,
|
||||||
|
comparatorWithPriorities,
|
||||||
CONSTANTS,
|
CONSTANTS,
|
||||||
languageNames,
|
languageNames,
|
||||||
routesRegexp,
|
routesRegexp,
|
||||||
|
|
|
||||||
Loading…
Reference in a new issue