Merge branch 'master' into hadicharara/added-support-for-rtl-layouts

This commit is contained in:
Hadi Charara 2022-10-03 13:43:50 -04:00
commit d9155484b4
9 changed files with 99 additions and 26 deletions

View File

@ -7,7 +7,8 @@ module.exports = {
'react',
'promise',
'import',
'eslint-comments'
'eslint-comments',
'sonarjs'
],
env: {
node: true,
@ -29,7 +30,8 @@ module.exports = {
// 'plugin:promise/recommended',
'plugin:import/errors',
'plugin:eslint-comments/recommended',
'plugin:compat/recommended'
'plugin:compat/recommended',
'plugin:sonarjs/recommended'
],
rules: {
'array-callback-return': ['error'],
@ -51,6 +53,7 @@ module.exports = {
'no-multiple-empty-lines': ['error', { 'max': 1 }],
'no-restricted-globals': ['error'].concat(restrictedGlobals),
'no-return-await': ['error'],
'no-sequences': ['error', { 'allowInParentheses': false }],
'no-trailing-spaces': ['error'],
'@babel/no-unused-expressions': ['error', { 'allowShortCircuit': true, 'allowTernary': true, 'allowTaggedTemplates': true }],
'no-void': ['error', { 'allowAsStatement': true }],
@ -64,9 +67,23 @@ module.exports = {
'space-before-blocks': ['error'],
'space-infix-ops': 'error',
'yoda': 'error',
'no-sequences': ['error', { 'allowInParentheses': false }],
'react/jsx-filename-extension': ['error', { 'extensions': ['.jsx', '.tsx'] }]
'react/jsx-filename-extension': ['error', { 'extensions': ['.jsx', '.tsx'] }],
'sonarjs/cognitive-complexity': ['warn'],
// TODO: Enable the following rules and fix issues
'sonarjs/max-switch-cases': ['off'],
'sonarjs/no-collapsible-if': ['off'],
'sonarjs/no-duplicate-string': ['off'],
'sonarjs/no-duplicated-branches': ['off'],
'sonarjs/no-gratuitous-expressions': ['off'],
'sonarjs/no-identical-functions': ['off'],
'sonarjs/no-nested-switch': ['off'],
'sonarjs/no-redundant-jump': ['off'],
'sonarjs/no-small-switch': ['off'],
'sonarjs/no-unused-collection': ['off'],
'sonarjs/prefer-object-literal': ['off'],
'sonarjs/prefer-single-boolean-return': ['off']
},
settings: {
react: {

View File

@ -26,7 +26,7 @@ jobs:
run: echo "::set-output name=dir::$(npm config get cache)"
- name: Cache node_modules
uses: actions/cache@ac8075791e805656e71b4ba23325ace9e3421120 # tag=v3.0.9
uses: actions/cache@56461b9eb0f8438fd15c7a9968e3c9ebb18ceff1 # tag=v3.0.10
id: npm-cache
with:
path: ${{ steps.npm-cache-dir-path.outputs.dir }}
@ -61,7 +61,7 @@ jobs:
run: echo "::set-output name=dir::$(npm config get cache)"
- name: Cache node_modules
uses: actions/cache@ac8075791e805656e71b4ba23325ace9e3421120 # tag=v3.0.9
uses: actions/cache@56461b9eb0f8438fd15c7a9968e3c9ebb18ceff1 # tag=v3.0.10
id: npm-cache
with:
path: ${{ steps.npm-cache-dir-path.outputs.dir }}
@ -99,7 +99,7 @@ jobs:
run: echo "::set-output name=dir::$(npm config get cache)"
- name: Cache node_modules
uses: actions/cache@ac8075791e805656e71b4ba23325ace9e3421120 # tag=v3.0.9
uses: actions/cache@56461b9eb0f8438fd15c7a9968e3c9ebb18ceff1 # tag=v3.0.10
id: npm-cache
with:
path: ${{ steps.npm-cache-dir-path.outputs.dir }}

34
package-lock.json generated
View File

@ -20,7 +20,7 @@
"blurhash": "2.0.0",
"classlist.js": "https://github.com/eligrey/classList.js/archive/1.2.20180112.tar.gz",
"classnames": "2.3.2",
"core-js": "3.25.2",
"core-js": "3.25.3",
"date-fns": "2.29.3",
"dompurify": "2.4.0",
"epubjs": "0.3.93",
@ -85,6 +85,7 @@
"eslint-plugin-promise": "6.0.1",
"eslint-plugin-react": "7.31.8",
"eslint-plugin-react-hooks": "4.6.0",
"eslint-plugin-sonarjs": "0.15.0",
"expose-loader": "4.0.0",
"html-loader": "4.2.0",
"html-webpack-plugin": "5.5.0",
@ -4872,9 +4873,9 @@
}
},
"node_modules/core-js": {
"version": "3.25.2",
"resolved": "https://registry.npmjs.org/core-js/-/core-js-3.25.2.tgz",
"integrity": "sha512-YB4IAT1bjEfxTJ1XYy11hJAKskO+qmhuDBM8/guIfMz4JvdsAQAqvyb97zXX7JgSrfPLG5mRGFWJwJD39ruq2A==",
"version": "3.25.3",
"resolved": "https://registry.npmjs.org/core-js/-/core-js-3.25.3.tgz",
"integrity": "sha512-y1hvKXmPHvm5B7w4ln1S4uc9eV/O5+iFExSRUimnvIph11uaizFR8LFMdONN8hG3P2pipUfX4Y/fR8rAEtcHcQ==",
"hasInstallScript": true,
"funding": {
"type": "opencollective",
@ -6416,6 +6417,18 @@
"url": "https://github.com/sponsors/ljharb"
}
},
"node_modules/eslint-plugin-sonarjs": {
"version": "0.15.0",
"resolved": "https://registry.npmjs.org/eslint-plugin-sonarjs/-/eslint-plugin-sonarjs-0.15.0.tgz",
"integrity": "sha512-LuxHdAe6VqSbi1phsUvNjbmXLuvlobmryQJJNyQYbdubCfz6K8tmgoqNiJPnz0pP2AbYDbtuPm0ajOMgMrC+dQ==",
"dev": true,
"engines": {
"node": ">=12"
},
"peerDependencies": {
"eslint": "^5.0.0 || ^6.0.0 || ^7.0.0 || ^8.0.0"
}
},
"node_modules/eslint-rule-composer": {
"version": "0.3.0",
"resolved": "https://registry.npmjs.org/eslint-rule-composer/-/eslint-rule-composer-0.3.0.tgz",
@ -21984,9 +21997,9 @@
}
},
"core-js": {
"version": "3.25.2",
"resolved": "https://registry.npmjs.org/core-js/-/core-js-3.25.2.tgz",
"integrity": "sha512-YB4IAT1bjEfxTJ1XYy11hJAKskO+qmhuDBM8/guIfMz4JvdsAQAqvyb97zXX7JgSrfPLG5mRGFWJwJD39ruq2A=="
"version": "3.25.3",
"resolved": "https://registry.npmjs.org/core-js/-/core-js-3.25.3.tgz",
"integrity": "sha512-y1hvKXmPHvm5B7w4ln1S4uc9eV/O5+iFExSRUimnvIph11uaizFR8LFMdONN8hG3P2pipUfX4Y/fR8rAEtcHcQ=="
},
"core-js-compat": {
"version": "3.25.3",
@ -23343,6 +23356,13 @@
"dev": true,
"requires": {}
},
"eslint-plugin-sonarjs": {
"version": "0.15.0",
"resolved": "https://registry.npmjs.org/eslint-plugin-sonarjs/-/eslint-plugin-sonarjs-0.15.0.tgz",
"integrity": "sha512-LuxHdAe6VqSbi1phsUvNjbmXLuvlobmryQJJNyQYbdubCfz6K8tmgoqNiJPnz0pP2AbYDbtuPm0ajOMgMrC+dQ==",
"dev": true,
"requires": {}
},
"eslint-rule-composer": {
"version": "0.3.0",
"resolved": "https://registry.npmjs.org/eslint-rule-composer/-/eslint-rule-composer-0.3.0.tgz",

View File

@ -37,6 +37,7 @@
"eslint-plugin-promise": "6.0.1",
"eslint-plugin-react": "7.31.8",
"eslint-plugin-react-hooks": "4.6.0",
"eslint-plugin-sonarjs": "0.15.0",
"expose-loader": "4.0.0",
"html-loader": "4.2.0",
"html-webpack-plugin": "5.5.0",
@ -75,7 +76,7 @@
"blurhash": "2.0.0",
"classlist.js": "https://github.com/eligrey/classList.js/archive/1.2.20180112.tar.gz",
"classnames": "2.3.2",
"core-js": "3.25.2",
"core-js": "3.25.3",
"date-fns": "2.29.3",
"dompurify": "2.4.0",
"epubjs": "0.3.93",

View File

@ -79,8 +79,7 @@ function generateDeviceId() {
keys.push(navigator.userAgent);
keys.push(new Date().getTime());
if (window.btoa) {
const result = replaceAll(btoa(keys.join('|')), '=', '1');
return result;
return replaceAll(btoa(keys.join('|')), '=', '1');
}
return new Date().getTime();

View File

@ -1676,5 +1676,8 @@
"MediaInfoElPresentFlag": "DV el verfügbar Marker",
"MediaInfoVideoRangeType": "Spektrum",
"LabelVideoRangeType": "Spektrum:",
"IgnoreDtsHelp": "Die Deaktivierung dieser Option könnte Probleme beheben, z. B. kein Ton auf Filmen mit getrennten Audio- und Video-Streams."
"IgnoreDtsHelp": "Die Deaktivierung dieser Option könnte Probleme beheben, z. B. kein Ton auf Filmen mit getrennten Audio- und Video-Streams.",
"OptionDateShowAdded": "Datum Serie hinzugefügt",
"OptionDateEpisodeAdded": "Datum Episode hinzugefügt",
"IgnoreDts": "DTS ignorieren (Dekodierungszeitstempel)"
}

View File

@ -1677,5 +1677,7 @@
"MediaInfoElPresentFlag": "Dolby Vision EL elérhető markerek",
"MediaInfoRpuPresentFlag": "Dolby Vision rpu zászló jelen van",
"IgnoreDtsHelp": "Ennek az opciónak a letiltása megoldhat bizonyos problémákat, pl. hiányzik a hang a külön hang- és videofolyamokkal rendelkező csatornákon.",
"IgnoreDts": "DTS (dekódolási időbélyeg) figyelmen kívül hagyása"
"IgnoreDts": "DTS (dekódolási időbélyeg) figyelmen kívül hagyása",
"OptionDateShowAdded": "Műsor hozzáadásának dátuma",
"OptionDateEpisodeAdded": "Epizód hozzáadásának dátuma"
}

View File

@ -1412,7 +1412,7 @@
"Season": "시즌",
"ScanForNewAndUpdatedFiles": "새 파일 및 업데이트 된 파일 검색",
"SaveSubtitlesIntoMediaFoldersHelp": "비디오 파일 옆에 자막을 저장하면보다 쉽게 관리 할 수 있습니다.",
"SaveChanges": "변경 사항을 저장하다",
"SaveChanges": "저장",
"Restart": "재시작",
"ResetPassword": "패스워드 리셋",
"ReplaceAllMetadata": "모든 메타데이터 교체",

View File

@ -986,7 +986,7 @@
"ShowAdvancedSettings": "Geavanceerde instellingen weergeven",
"ShowIndicatorsFor": "Toon indicatoren voor:",
"ShowTitle": "Laat de titel zien",
"ShowYear": "Laat het jaar zien",
"ShowYear": "Toon jaar",
"Shows": "Series",
"Shuffle": "Willekeurig",
"SimultaneousConnectionLimitHelp": "Het maximum aantal toegestane gelijktijdige streams. Geef 0 in voor geen limiet.",
@ -1502,7 +1502,7 @@
"MessagePlaybackError": "Er was een error tijdens het afspelen van dit bestand op uw Google Cast.",
"MessageChromecastConnectionError": "Uw Google Cast kan niet verbinden met de Jellyfin server. Controleer de verbinding en probeer opnieuw.",
"LabelMinAudiobookResumeHelp": "Titels worden als niet afgespeeld beschouwd indien gestopt voor deze tijd.",
"AllowVppTonemappingHelp": "Volledige hardware-gebaseerde tonemapping zonder OpenCL-filter. Werkt momenteel alleen bij het transcoderen van video's met ingesloten HDR10-metadata.",
"AllowVppTonemappingHelp": "Volledige op Intel drivers-gebaseerde tonemapping werkt momenteel alleen op sommige hardware met HDR10 video's. Dit heeft een hogere slagingskans ten opzichte van andere OpenCL implementaties.",
"EnableVppTonemapping": "VPP Tone mapping aanzetten",
"EnableEnhancedNvdecDecoder": "Verbeterde NVDEC decoder aanzetten",
"Framerate": "Beeldsnelheid",
@ -1549,7 +1549,7 @@
"SetUsingLastTracksHelp": "Probeer de ondertiteling/het audiospoor in te stellen op de video die het meest overeenkomt met de laatste video.",
"TextSent": "Tekst verzonden.",
"Track": "Nummer",
"Controls": "Controles",
"Controls": "Controllers",
"LabelEnableGamepad": "Gamepad Inschakelen",
"VideoFramerateNotSupported": "De framerate van de video wordt niet ondersteund",
"VideoLevelNotSupported": "Het niveau van de video codec wordt niet ondersteund",
@ -1637,15 +1637,46 @@
"VideoBitrateNotSupported": "De video's bitrate is niet ondersteunt",
"AudioIsExternal": "De audio stream is extern",
"LabelHardwareEncodingOptions": "Hardware codering opties:",
"IntelLowPowerEncHelp": "Low-Power Encoderen kan onnodige CPU-GPU synchronisatie houden. Bij linux moet deze uitgeschakeld zijn als de i915 HuC firmware niet geconfigureerd is.",
"IntelLowPowerEncHelp": "Low-Power Encoderen kan onnodige CPU-GPU synchronisatie houden. Bij Linux moet deze uitgeschakeld zijn als de i915 HuC firmware niet geconfigureerd is.",
"EnableIntelLowPowerHevcHwEncoder": "Schakel Intel Low-Power HEVC hardware encoder in",
"EnableIntelLowPowerH264HwEncoder": "Schakel Intel Low-Power H.264 hardware encoder in",
"PreferSystemNativeHwDecoder": "Voorkeur OS eigen DXVA of VA-API hardware decoders",
"PreferSystemNativeHwDecoder": "Voorkeur voor OS eigen DXVA of VA-API hardware decoders",
"ScreenResolution": "Scherm Resolutie",
"RememberSubtitleSelections": "Ondertiteltrack instellen op basis van vorig item",
"RememberAudioSelections": "Stel audio spoor in gebaseerd op",
"IgnoreDtsHelp": "Deze optie uitschakelen kan problemen oplossen, bijv; missende audio bij kanalen met aparte audio en video streams.",
"IgnoreDts": "Negeer DTS (tijdstempel decoderen)",
"RememberSubtitleSelectionsHelp": "Probeer de ondertiteltrack in te stellen op de dichtstbijzijnde overeenkomst met de laatste video.",
"RememberAudioSelectionsHelp": "Probeer de audiotrack zo in te stellen dat deze het dichtst bij de laatste video past."
"RememberAudioSelectionsHelp": "Probeer de audiotrack zo in te stellen dat deze het dichtst bij de laatste video past.",
"MediaInfoDvBlSignalCompatibilityId": "ID voor DV bl-signaalcompatibiliteit",
"MediaInfoBlPresentFlag": "DV bl vooraf ingestelde vlag",
"MediaInfoElPresentFlag": "DV el vooraf ingestelde vlag",
"MediaInfoRpuPresentFlag": "DV rpu vooraf ingestelde vlag",
"MediaInfoDvLevel": "DV niveau",
"MediaInfoDvProfile": "DV profiel",
"MediaInfoDvVersionMinor": "DV-versie minor",
"MediaInfoDvVersionMajor": "DV-versie major",
"MediaInfoDoViTitle": "DV-title",
"MediaInfoVideoRangeType": "Type videobereik",
"LabelVideoRangeType": "Type videobereik:",
"VideoRangeTypeNotSupported": "Het bereiktype van de video wordt niet ondersteund",
"LabelVppTonemappingContrastHelp": "Pas contrastversterking toe in VPP tonemapping. De aanbevolen en standaardwaarden zijn 1.2 en 1.",
"LabelVppTonemappingContrast": "VPP Tone mapping contrastversterking:",
"LabelVppTonemappingBrightnessHelp": "Pas helderheidsversterking toe in VPP-tonemapping Zowel de aanbevolen als de standaardwaarden zijn 0.",
"LabelVppTonemappingBrightness": "VPP Tone mapping helderheidsversterking:",
"EnableSplashScreen": "Het opstartscherm inschakelen",
"EnableEnhancedNvdecDecoderHelp": "Experimentele NVDEC implementatie, deze instelling niet inschakelen tenzij u decoderingsfouten tegenkomt.",
"ThemeVideo": "Thema Video",
"ThemeSong": "Themalied",
"Sample": "Voorbeeld",
"Scene": "Scene",
"Interview": "Interview",
"DeletedScene": "Verwijderde scene",
"BehindTheScenes": "Achter de scenes",
"Trailer": "Trailer",
"Clip": "Korte film",
"SelectAll": "Selecteer alles",
"DirectPlayError": "Er is een fout opgetreden tijdens het starten van direct playback",
"OptionDateShowAdded": "Datum Serie Toegevoegd",
"OptionDateEpisodeAdded": "Datum Aflevering Toegevoegd"
}