add latino language

This commit is contained in:
TheBeastLT
2023-05-08 16:01:14 +02:00
parent a63e377607
commit 978ab408ac
6 changed files with 83 additions and 25 deletions

View File

@@ -1,6 +1,6 @@
const { DebridOptions } = require('../moch/options');
const { QualityFilter, Providers } = require('./filter');
const { LanguageOptions } = require('./sort');
const { LanguageOptions } = require('./languages');
const PRE_CONFIGURATIONS = {
lite: {

View File

@@ -186,7 +186,7 @@ a.install-link {
`;
const { Providers } = require('./filter');
const { SortOptions } = require('./sort');
const { LanguageOptions } = require('./sort');
const { LanguageOptions } = require('./languages');
const { QualityFilter } = require('./filter');
const { DebridOptions } = require('../moch/options');
const { MochOptions } = require('../moch/moch');

View File

@@ -6,9 +6,10 @@ const languageMapping = {
'english': '🇬🇧',
'japanese': '🇯🇵',
'russian': '🇷🇺',
'italian': '🇮🇹',
'portuguese': '🇵🇹',
'spanish': '🇪🇸',
'italian': '🇮🇹',
'latino': '🇲🇽',
'korean': '🇰🇷',
'chinese': '🇨🇳',
'french': '🇫🇷',
@@ -38,7 +39,14 @@ const languageMapping = {
'indonesian': '🇮🇩',
'thai': '🇹🇭'
}
const languages = Object.keys(languageMapping).slice(4);
const LanguageOptions = {
key: 'language',
options: Object.keys(languageMapping).slice(5).map(lang => ({
key: lang,
label: `${languageMapping[lang]} ${lang.charAt(0).toUpperCase()}${lang.slice(1)}`
}))
}
function mapLanguages(languages) {
const mapped = languages
@@ -55,4 +63,4 @@ function containsLanguage(stream, languages) {
return languages.map(lang => languageMapping[lang]).some(lang => stream.title.includes(lang));
}
module.exports = { mapLanguages, containsLanguage, languages }
module.exports = { mapLanguages, containsLanguage, LanguageOptions }

View File

@@ -1,5 +1,5 @@
const { QualityFilter } = require('./filter');
const { languages, containsLanguage } = require('./languages');
const { containsLanguage, LanguageOptions } = require('./languages');
const { Type } = require("./types");
const { hasMochConfigured } = require("../moch/moch");
@@ -31,19 +31,12 @@ const SortOptions = {
},
}
}
const LanguageOptions = {
key: 'language',
options: languages.slice(1).map(lang => ({
key: lang,
label: lang.charAt(0).toUpperCase() + lang.slice(1)
}))
}
function sortStreams(streams, config, type) {
const configLanguages = config[LanguageOptions.key];
if (configLanguages && configLanguages.length && configLanguages[0] !== languages[0]) {
const languages = config[LanguageOptions.key];
if (languages && languages.length && languages[0] !== 'english') {
// No need to filter english since it's hard to predict which entries are english
const streamsWithLanguage = streams.filter(stream => containsLanguage(stream, configLanguages));
const streamsWithLanguage = streams.filter(stream => containsLanguage(stream, languages));
const streamsNoLanguage = streams.filter(stream => !streamsWithLanguage.includes(stream));
return _sortStreams(streamsWithLanguage, config, type).concat(_sortStreams(streamsNoLanguage, config, type));
}
@@ -161,5 +154,4 @@ function parseSize(sizeText) {
}
module.exports = sortStreams;
module.exports.SortOptions = SortOptions;
module.exports.LanguageOptions = LanguageOptions;
module.exports.SortOptions = SortOptions;