Skip to content

Commit

Permalink
feat: Emby support (#234)
Browse files Browse the repository at this point in the history
* fix: support credential extraction from Emby

* fix: minor compatibility with emby for retrieving albums

* fix: rename credentials and save credentials type

* fix: weird issue when changing libraries

* fix: correctly map platform names in auth header

* chore: properly carry over old settings

* fix: only enable playlists on jellyfin

* fix: remove jellyfin mentions

* fix: incorporate jellyfin and emby as mentions
  • Loading branch information
leinelissen authored Jul 25, 2024
1 parent c15f8fe commit a6452f0
Show file tree
Hide file tree
Showing 35 changed files with 294 additions and 168 deletions.
12 changes: 6 additions & 6 deletions src/localisation/lang/bg/locale.json
Original file line number Diff line number Diff line change
@@ -1,12 +1,12 @@
{
"play-album": "Пусни албум",
"track": "Песен",
"jellyfin-user-id": "Jellyfin потребител",
"user-id": "Jellyfin потребител",
"play-playlist": "Пусни списък",
"color-scheme-system": "Система",
"streaming": "Предава се поточно",
"download-album": "Изтегли албум",
"jellyfin-access-token": "Jellyfin Жетон за достъп (access token)",
"access-token": "Jellyfin Жетон за достъп (access token)",
"delete-playlist": "Изтрий списък",
"add-to-queue": "Добави към опашката",
"playback-reporting": "Докладване на изпълненията",
Expand All @@ -16,7 +16,7 @@
"no-results": "Няма резултати…",
"total-duration": "Обща продължителност",
"error-reporting": "Доклаване на грешки",
"jellyfin-server-url": "Адрес на Jellyfin сървър",
"server-url": "Адрес на Jellyfin сървър",
"downloads": "Изтеглени",
"onboarding-cta": "За да започнете Ви трябва Jellyfin сървър. Натиснете бутона отдолу, за да въведете адресът на вашия Jellyfin сървър и се впишете в него.",
"shuffle-album": "Разбъркай албум",
Expand All @@ -26,7 +26,7 @@
"artists": "Изпълнители",
"queue": "Опашка",
"error-reporting-description": "Докато използвате приложението, може да срещнете грешки. Докладването на тези грешки помага на програмата да стане по-сигурна и стабилна.",
"set-jellyfin-server": "Настройте Jellyfin сървър",
"set-server": "Настройте Jellyfin сървър",
"similar-albums": "Подобни албуми",
"albums": "Албуми",
"why-use-tracking-description": "Проследяването помага да се ускори процесът по разработка на приложението, като се докладват странни гранични случаи и недоглеждания. Това помага на приложението да стане по стабилно и приятно за използване от всички.",
Expand All @@ -52,7 +52,7 @@
"disable": "Изключи",
"search": "Търси",
"download-playlist": "Изтегли списък",
"jellyfin-library": "Jellyfin Библиотека",
"library": "Jellyfin Библиотека",
"enable-error-reporting": "Желаете ли да пуснете докладването на грешки?",
"color-scheme-description": "По подразбиране Fintunes ще следва цветовата схмена на вашата операционна система. Вие обаче можете да изберете Fintunes да се показва винаги в тъмен или светъл режим.",
"color-scheme": "Цветова схема",
Expand All @@ -66,7 +66,7 @@
"setting-cache": "Кеш",
"local-playback": "Локално изпълняване",
"clear-queue": "Изчисти опашката",
"set-jellyfin-server-instruction": "Моля въведете адресът на вашия Jellyfin сървър. Трябва да включва протоколът и порта",
"set-server-instruction": "Моля въведете адресът на вашия Jellyfin сървър. Трябва да включва протоколът и порта",
"delete-all-tracks": "Изтрий всички песни",
"where-is-data-stored": "Къде се пазят данните?",
"color-scheme-light": "Светъл режим",
Expand Down
12 changes: 6 additions & 6 deletions src/localisation/lang/ca/locale.json
Original file line number Diff line number Diff line change
Expand Up @@ -52,13 +52,13 @@
"onboarding-welcome": "Benvinguts!",
"onboarding-intro": "Fintunes us permetrà reproduir la vostra biblioteca de música des de qualsevol lloc, amb total suport per a l'àudio en segon pla i l'enviament del so a altres dispositius.",
"onboarding-cta": "Per començar, necessiteu un servidor de Jellyfin. Si us plau, introdueix dins de la caixa de text els caràcters que veu a la imatge de sota. Això és requerit per evitar enviaments automàtics.",
"set-jellyfin-server": "Configura el servidor Jellyfin",
"set-jellyfin-server-instruction": "Introduïu l'URL del vostre servidor Jellyfin. Assegureu-vos d'incloure el protocol i el port",
"set-server": "Configura el servidor Jellyfin",
"set-server-instruction": "Introduïu l'URL del vostre servidor Jellyfin. Assegureu-vos d'incloure el protocol i el port",
"settings": "Configuració",
"jellyfin-library": "Biblioteca Jellyfin",
"jellyfin-server-url": "Preguntes Freqüents - FAQ",
"jellyfin-access-token": "Jellyfin Access Token",
"jellyfin-user-id": "Jellyfin User ID",
"library": "Biblioteca Jellyfin",
"server-url": "Preguntes Freqüents - FAQ",
"access-token": "Jellyfin Access Token",
"user-id": "Jellyfin User ID",
"setting-cache": "Caché",
"setting-cache-description": "Si heu actualitzat la vostra biblioteca de Jellyfin, però l’aplicació està subjectant a actius amagats, podeu esborrar la memòria cau amb aquest botó. Això obligarà l’aplicació a fer una cerca de la biblioteca des de zero.",
"recent-albums": "Afegit Recentment",
Expand Down
12 changes: 6 additions & 6 deletions src/localisation/lang/cs/locale.json
Original file line number Diff line number Diff line change
@@ -1,12 +1,12 @@
{
"play-album": "Přehrát Album",
"track": "Skladba",
"jellyfin-user-id": "ID uživatele Jellyfin",
"user-id": "ID uživatele Jellyfin",
"play-playlist": "Přehrát seznam skladeb",
"color-scheme-system": "Systém",
"streaming": "Streamování",
"download-album": "Stáhnout Album",
"jellyfin-access-token": "Přístupový token Jellyfin",
"access-token": "Přístupový token Jellyfin",
"delete-playlist": "Smazat seznam skladeb",
"add-to-queue": "Přidat do Fronty",
"playback-reporting": "Hlášení o přehrávání",
Expand All @@ -16,7 +16,7 @@
"no-results": "Žádné výsledky…",
"total-duration": "Celková doba trvání",
"error-reporting": "Hlášení chyb",
"jellyfin-server-url": "Adresa URL serveru Jellyfin",
"server-url": "Adresa URL serveru Jellyfin",
"downloads": "Ke stažení",
"onboarding-cta": "Abyste mohli začít, potřebujete server Jellyfin. Kliknutím na tlačítko níže zadejte adresu svého serveru Jellyfin a přihlaste se k němu.",
"shuffle-album": "Zamíchat album",
Expand All @@ -26,7 +26,7 @@
"artists": "Umělci",
"queue": "Fronta",
"error-reporting-description": "Během používání této aplikace můžete narazit na chyby. Nahlášení těchto chyb pomáhá vytvářet bezpečnější a stabilnější prostředí aplikace.",
"set-jellyfin-server": "Nastavit Jellyfin Server",
"set-server": "Nastavit Jellyfin Server",
"similar-albums": "Podobná alba",
"albums": "Alba",
"why-use-tracking-description": "Sledování pomáhá urychlit vývoj pro tuto aplikaci tím, že nahlásí divné případy hran a dohledy. To pomáhá, aby aplikace stabilnější a robustní, čímž zlepšuje zážitek z aplikace pro každého.",
Expand All @@ -52,7 +52,7 @@
"disable": "Zakázat",
"search": "Vyhledat",
"download-playlist": "Stáhnnout seznam skladeb",
"jellyfin-library": "Knihovna Jellyfin",
"library": "Knihovna Jellyfin",
"enable-error-reporting": "Chcete povolit hlášení chyb?",
"color-scheme-description": "Ve výchozím nastavení bude Fintunes sledovat barevné schéma vašeho operačního systému. Můžete se však rozhodnout toto nastavení změnit, abyste zajistili, že Fintunes bude vždy v tmavém nebo světlém režimu.",
"color-scheme": "Barevné Schéma",
Expand All @@ -66,7 +66,7 @@
"setting-cache": "Mezipaměť",
"local-playback": "Místní přehrávání",
"clear-queue": "Vymazat Frontu",
"set-jellyfin-server-instruction": "Zadejte adresu URL serveru Jellyfin. Nezapomeňte uvést protokol a port",
"set-server-instruction": "Zadejte adresu URL serveru Jellyfin. Nezapomeňte uvést protokol a port",
"delete-all-tracks": "Smazat Všechny Skladby",
"where-is-data-stored": "Kde jsou data uložena?",
"color-scheme-light": "Světlý Režim",
Expand Down
12 changes: 6 additions & 6 deletions src/localisation/lang/da/locale.json
Original file line number Diff line number Diff line change
Expand Up @@ -3,7 +3,7 @@
"error-reporting": "Fejlrapportering",
"music": "Musik",
"album": "Album",
"jellyfin-server-url": "Jellyfin server URL",
"server-url": "Jellyfin server URL",
"setting-cache": "Cache",
"reset-cache": "Nulstil cache",
"enable": "Aktivér",
Expand Down Expand Up @@ -31,12 +31,12 @@
"play-album": "Afspil album",
"queue": "",
"add-to-queue": "Tilføj til kø",
"jellyfin-library": "Jellyfin bibliotek",
"jellyfin-user-id": "Jellyfin bruger ID",
"library": "Jellyfin bibliotek",
"user-id": "Jellyfin bruger ID",
"recent-albums": "Seneste albummer",
"clear-queue": "Ryd kø",
"no-results": "Ingen resultater…",
"set-jellyfin-server": "Sæt Jellyfin Server",
"set-server": "Sæt Jellyfin Server",
"why-use-tracking": "Hvorfor bruge sporing?",
"what-data-is-gathered": "Hvilke data indsamles?",
"where-is-data-stored": "Indtast venligst din Jellyfin server URL. Sørg for at inkludere protokollen og havnen",
Expand All @@ -53,8 +53,8 @@
"sleep-timer": "Søvn timer",
"onboarding-intro": "Fintunes giver dig mulighed for at streame dit musikbibliotek overalt, med fuld støtte til baggrundslyd og støbning.",
"onboarding-cta": "For at komme i gang skal du bruge en Jellyfin server. Klik på knappen nedenfor for at indtaste din Jellyfin-serveradresse og log ind på den.",
"set-jellyfin-server-instruction": "Indtast venligst din Jellyfin server URL. Sørg for at inkludere protokollen og havnen",
"jellyfin-access-token": "Jellyfin Access Token",
"set-server-instruction": "Indtast venligst din Jellyfin server URL. Sørg for at inkludere protokollen og havnen",
"access-token": "Jellyfin Access Token",
"setting-cache-description": "Hvis du har opdateret dit Jellyfin-bibliotek, men appen holder på cachelagrede aktiver, kan du tvinges til at rydde cachen ved hjælp af denne knap. Dette vil tvinge app til at hente biblioteket fra bunden.",
"error-reporting-description": "Under brug af denne app, kan du støde fejl. Rapportering af disse fejl hjælper med at skabe en mere sikker og stabil appoplevelse.",
"error-reporting-rationale": "Når du aktiverer fejlrapportering, hver gang en fejl opstår, oprettes en rapport automatisk og sendes til en server, sammen med nyttige fejlfindingsoplysninger såsom enheder, versioner og den specifikke fejl.",
Expand Down
12 changes: 6 additions & 6 deletions src/localisation/lang/de/locale.json
Original file line number Diff line number Diff line change
@@ -1,7 +1,7 @@
{
"onboarding-welcome": "Willkommen!",
"settings": "Einstellungen",
"jellyfin-library": "Jellyfin-Bibliothek",
"library": "Jellyfin-Bibliothek",
"more-info": "Mehr Informationen",
"track": "Titel",
"playlists": "Wiedergabelisten",
Expand All @@ -28,11 +28,11 @@
"now-playing": "Läuft gerade",
"onboarding-intro": "Mit Fintunes können Sie Ihre Musikbibliothek von überall aus streamen, mit voller Unterstützung für Hintergrundwiedergabe und Casting.",
"onboarding-cta": "Um loslegen zu können benötigen Sie einen Jellyfin Server. Klicken Sie auf den Button und geben Sie ihre Jellyfin Serveradresse und Logindaten ein.",
"set-jellyfin-server": "Legen Sie den Jellyfin-Server fest",
"set-jellyfin-server-instruction": "Bitte geben Sie die URL Ihres Jellyfin-Servers ein. Stellen Sie sicher, dass Sie das Protokoll und den Port angeben",
"jellyfin-server-url": "Jellyfin-Server-URL",
"jellyfin-access-token": "Jellyfin-Zugriffstoken",
"jellyfin-user-id": "Jellyfin-Benutzer-ID",
"set-server": "Legen Sie den Jellyfin-Server fest",
"set-server-instruction": "Bitte geben Sie die URL Ihres Jellyfin-Servers ein. Stellen Sie sicher, dass Sie das Protokoll und den Port angeben",
"server-url": "Jellyfin-Server-URL",
"access-token": "Jellyfin-Zugriffstoken",
"user-id": "Jellyfin-Benutzer-ID",
"setting-cache": "Zwischenspeicher",
"setting-cache-description": "Wenn Sie Ihre Jellyfin-Bibliothek aktualisiert haben, aber weiterhin zwischengespeicherte Elemente angezeigt werden kann man mit diesen Button erzwingen, den Zwischenspeicher vollständig zu leeren. Dies zwingt die App Ihre Bibliothek vollständig neu abzurufen.",
"reset-cache": "Zwischenspeicher zurücksetzen",
Expand Down
18 changes: 9 additions & 9 deletions src/localisation/lang/en/locale.json
Original file line number Diff line number Diff line change
Expand Up @@ -13,16 +13,16 @@
"now-playing": "Now Playing",
"onboarding-welcome": "Welcome!",
"onboarding-intro": "Fintunes will allow you to stream your music library from anywhere, with full support for background audio and casting.",
"onboarding-cta": "In order to get started, you need a Jellyfin server. Click the button below to enter your Jellyfin server address and login to it.",
"set-jellyfin-server": "Set Jellyfin Server",
"set-jellyfin-server-instruction": "Please enter your Jellyfin server URL. Make sure to include the protocol and port",
"onboarding-cta": "In order to get started, you need a Jellyfin (or Emby) server. Click the button below to enter your server address and login to it.",
"set-server": "Set Server",
"set-server-instruction": "Please enter your server URL. Make sure to include the protocol and port",
"settings": "Settings",
"jellyfin-library": "Jellyfin Library",
"jellyfin-server-url": "Jellyfin Server URL",
"jellyfin-access-token": "Jellyfin Access Token",
"jellyfin-user-id": "Jellyfin User ID",
"library": "Library",
"server-url": "Server URL",
"access-token": "Access Token",
"user-id": "User ID",
"setting-cache": "Cache",
"setting-cache-description": "If you have updated your Jellyfin library, but the app is holding on to cached assets, you can forcefully clear the cache using this button. This will force the app to fetch the library from scratch.",
"setting-cache-description": "If you have updated your library, but the app is holding on to cached assets, you can forcefully clear the cache using this button. This will force the app to fetch the library from scratch.",
"reset-cache": "Reset Cache",
"recent-albums": "Recent Albums",
"error-reporting": "Error Reporting",
Expand Down Expand Up @@ -64,7 +64,7 @@
"total-duration": "Total duration",
"similar-albums": "Similar albums",
"playback-reporting": "Playback Reporting",
"playback-reporting-description": "With Playback Reporting, all your playback events are relayed back to Jellyfin. This allows you to track your most listened songs, particularly with Jellyfin plugins such as ListenBrainz.",
"playback-reporting-description": "With Playback Reporting, all your playback events are relayed back to your server. This allows you to track your most listened songs, particularly with plugins such as ListenBrainz or LastFM.",
"color-scheme": "Color Scheme",
"color-scheme-description": "By default, Fintunes will follow your operating system's color scheme. You can however choose to override this to make sure Fintunes is always in dark mode or light mode.",
"color-scheme-system": "System",
Expand Down
12 changes: 6 additions & 6 deletions src/localisation/lang/es/locale.json
Original file line number Diff line number Diff line change
Expand Up @@ -14,13 +14,13 @@
"onboarding-welcome": "Bienvenido!",
"onboarding-intro": "Fintunes te permitirá reproducir tu biblioteca musical desde cualquier sitio, con suporte completo para audio en segundo plano y casteo en otros dispositivos.",
"onboarding-cta": "Para empezar necesitas un servidor de Jellyfin. Pulsa el botón de abajo para introducir la dirección del servidor y autentifícate con tus credenciales.",
"set-jellyfin-server": "Introduce servidor de Jellyfin",
"set-jellyfin-server-instruction": "Por favor introduce la URL de tu servidor de Jellyfin. Acuérdate de incluir protocolo y puerto",
"set-server": "Introduce servidor de Jellyfin",
"set-server-instruction": "Por favor introduce la URL de tu servidor de Jellyfin. Acuérdate de incluir protocolo y puerto",
"settings": "Configuración",
"jellyfin-library": "Biblioteca Jellyfin",
"jellyfin-server-url": "Url del servidor Jellyfin",
"jellyfin-access-token": "Token de acceso Jellyfin",
"jellyfin-user-id": "ID de usuario Jellyfin",
"library": "Biblioteca Jellyfin",
"server-url": "Url del servidor Jellyfin",
"access-token": "Token de acceso Jellyfin",
"user-id": "ID de usuario Jellyfin",
"setting-cache": "Caché",
"setting-cache-description": "Si actualizó la biblioteca Jellyfin, pero el software aún muestra el contenido anterior, puede hacer clic en el botón a continuación para forzar una actualización. Esto obligará al software a recuperar la información del servidor.",
"reset-cache": "Resetear Caché",
Expand Down
12 changes: 6 additions & 6 deletions src/localisation/lang/fr/locale.json
Original file line number Diff line number Diff line change
Expand Up @@ -14,13 +14,13 @@
"onboarding-welcome": "Bienvenue !",
"onboarding-intro": "Fintunes vous permettra de diffuser votre bibliothèque musicale de n'importe où, avec un support de la lecture en arrière plan et la diffusion à distance.",
"onboarding-cta": "Pour utiliser Fintunes, vous avez besoin d'un serveur Jellyfin. Cliquez sur le bouton ci-dessous pour entrer l'adresse de votre serveur Jellyfin et vous y connecter.",
"set-jellyfin-server": "Configurer le serveur Jellyfin",
"set-jellyfin-server-instruction": "Veuillez entrer l'URL de votre serveur Jellyfin. Assurez-vous d'inclure le protocole et le port",
"set-server": "Configurer le serveur Jellyfin",
"set-server-instruction": "Veuillez entrer l'URL de votre serveur Jellyfin. Assurez-vous d'inclure le protocole et le port",
"settings": "Réglages",
"jellyfin-library": "Bibliothèque Jellyfin",
"jellyfin-server-url": "URL du serveur Jellyfin",
"jellyfin-access-token": "Jeton d'accès à la Jellyfin",
"jellyfin-user-id": "ID utilisateur Jellyfin",
"library": "Bibliothèque Jellyfin",
"server-url": "URL du serveur Jellyfin",
"access-token": "Jeton d'accès à la Jellyfin",
"user-id": "ID utilisateur Jellyfin",
"setting-cache": "Cache",
"setting-cache-description": "Si vous avez mis à jour votre bibliothèque Jellyfin mais que l'application conserve toujours des ressources en cache, vous pouvez vider le cache en utilisant ce bouton. Cela forcera l'application à récupérer l’intégralité de bibliothèque.",
"reset-cache": "Réinitialiser le cache",
Expand Down
12 changes: 6 additions & 6 deletions src/localisation/lang/it/locale.json
Original file line number Diff line number Diff line change
@@ -1,5 +1,5 @@
{
"jellyfin-server-url": "URL del Server Jellyfin",
"server-url": "URL del Server Jellyfin",
"settings": "Impostazioni",
"why-use-tracking": "Perché utilizzare il Monitoraggio?",
"streaming": "Streaming",
Expand All @@ -23,11 +23,11 @@
"onboarding-welcome": "Benvenuto!",
"onboarding-intro": "Fintunes ti consentirà di riprodurre in streaming la tua libreria musicale da dove vuoi, con pieno supporto per l'audio di sottofondo e la trasmissione.",
"onboarding-cta": "Per iniziare, hai bisogno di un server Jellyfin. Fai clic sul pulsante in basso per inserire l'indirizzo del tuo server Jellyfin e accedere.",
"set-jellyfin-server": "Imposta il Server Jellyfin",
"set-jellyfin-server-instruction": "Inserisci l'URL del tuo server Jellyfin. Assicurati di includere il protocollo e la porta",
"jellyfin-library": "Libreria Jellyfin",
"jellyfin-access-token": "Token di Accesso Jellyfin",
"jellyfin-user-id": "ID Utente Jellyfin",
"set-server": "Imposta il Server Jellyfin",
"set-server-instruction": "Inserisci l'URL del tuo server Jellyfin. Assicurati di includere il protocollo e la porta",
"library": "Libreria Jellyfin",
"access-token": "Token di Accesso Jellyfin",
"user-id": "ID Utente Jellyfin",
"setting-cache": "Cache",
"setting-cache-description": "Se hai aggiornato la tua libreria Jellyfin, ma l'app trattiene le risorse memorizzate nella cache, puoi forzare la cancellazione della cache utilizzando questo pulsante. Ciò costringerà l'app a recuperare la libreria da zero.",
"reset-cache": "Reimposta Cache",
Expand Down
Loading

0 comments on commit a6452f0

Please sign in to comment.