Merge branch 'dev' into dev

This commit is contained in:
mrjvs 2023-06-17 20:13:37 +02:00 committed by GitHub
commit 0066cff111
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
7 changed files with 303 additions and 9 deletions

View File

@ -154,7 +154,7 @@ export const FloatingCardView = {
className="flex cursor-pointer items-center space-x-2 transition-colors duration-200 hover:text-white" className="flex cursor-pointer items-center space-x-2 transition-colors duration-200 hover:text-white"
> >
<Icon icon={Icons.X} /> <Icon icon={Icons.X} />
<span>Close</span> <span>{t("videoPlayer.popouts.close")}</span>
</div> </div>
); );

View File

@ -7,8 +7,10 @@ import cs from "./locales/cs/translation.json";
import de from "./locales/de/translation.json"; import de from "./locales/de/translation.json";
import en from "./locales/en/translation.json"; import en from "./locales/en/translation.json";
import fr from "./locales/fr/translation.json"; import fr from "./locales/fr/translation.json";
import it from "./locales/it/translation.json";
import nl from "./locales/nl/translation.json"; import nl from "./locales/nl/translation.json";
import pirate from "./locales/pirate/translation.json"; import pirate from "./locales/pirate/translation.json";
import pl from "./locales/pl/translation.json";
import tr from "./locales/tr/translation.json"; import tr from "./locales/tr/translation.json";
import zh from "./locales/zh/translation.json"; import zh from "./locales/zh/translation.json";
@ -16,6 +18,9 @@ const locales = {
en: { en: {
translation: en, translation: en,
}, },
it: {
translation: it,
},
nl: { nl: {
translation: nl, translation: nl,
}, },
@ -37,6 +42,9 @@ const locales = {
pirate: { pirate: {
translation: pirate, translation: pirate,
}, },
pl: {
translation: pl,
},
}; };
i18n i18n
// pass the i18n instance to react-i18next. // pass the i18n instance to react-i18next.

View File

@ -71,7 +71,16 @@
"popouts": { "popouts": {
"back": "Go back", "back": "Go back",
"sources": "Sources", "sources": "Sources",
"seasons": "Seasons", "close": "Close",
"seasons": {
"title":"Seasons",
"other": "Other seasons",
"noSeason": "No season"
},
"episodes": {
"unknown": "Unknown episode",
"noEpisode": "No episode"
},
"captions": "Captions", "captions": "Captions",
"playbackSpeed": "Playback speed", "playbackSpeed": "Playback speed",
"customPlaybackSpeed": "Custom playback speed", "customPlaybackSpeed": "Custom playback speed",

View File

@ -0,0 +1,128 @@
{
"global": {
"name": "movie-web"
},
"search": {
"loading_series": "Recupero delle tue serie preferite...",
"loading_movie": "Recupero dei tuoi film preferiti...",
"loading": "Caricamento...",
"allResults": "Ecco tutto ciò che abbiamo!",
"noResults": "Non abbiamo trovato nulla!",
"allFailed": "Impossibile trovare i media, riprova!",
"headingTitle": "Risultati della ricerca",
"bookmarks": "Segnalibri",
"continueWatching": "Continua a guardare",
"title": "Cosa vuoi guardare?",
"placeholder": "Cosa vuoi guardare?"
},
"media": {
"movie": "Film",
"series": "Serie",
"stopEditing": "Interrompi modifica",
"errors": {
"genericTitle": "Ops, qualcosa si è rotto!",
"failedMeta": "Caricamento dei metadati non riuscito",
"mediaFailed": "Impossibile richiedere il media che hai richiesto, controlla la tua connessione internet e riprova.",
"videoFailed": "Si è verificato un errore durante la riproduzione del video che hai richiesto. Se ciò continua a accadere, segnala il problema sul <0>server Discord</0> o su <1>GitHub</1>."
}
},
"seasons": {
"seasonAndEpisode": "S{{season}} E{{episode}}"
},
"notFound": {
"genericTitle": "Non trovato",
"backArrow": "Torna alla home",
"media": {
"title": "Impossibile trovare quel media",
"description": "Non siamo riusciti a trovare il media richiesto. È stato rimosso o hai manomesso l'URL."
},
"provider": {
"title": "Questo provider è stato disabilitato",
"description": "Abbiamo riscontrato problemi con il provider o era troppo instabile da utilizzare, quindi abbiamo dovuto disabilitarlo."
},
"page": {
"title": "Impossibile trovare quella pagina",
"description": "Abbiamo cercato ovunque: sotto i bidoni, nell'armadio, dietro il proxy, ma alla fine non siamo riusciti a trovare la pagina che stai cercando."
}
},
"searchBar": {
"movie": "Film",
"series": "Serie",
"Search": "Cerca"
},
"videoPlayer": {
"findingBestVideo": "Ricerca del miglior video per te",
"noVideos": "Ops, non è stato possibile trovare alcun video per te",
"loading": "Caricamento...",
"backToHome": "Torna alla home",
"backToHomeShort": "Indietro",
"seasonAndEpisode": "S{{season}} E{{episode}}",
"timeLeft": "{{timeLeft}} rimanente",
"finishAt": "Fine alle {{timeFinished, datetime}}",
"buttons": {
"episodes": "Episodi",
"source": "Fonte",
"captions": "Sottotitoli",
"download": "Download",
"settings": "Impostazioni",
"pictureInPicture": "Picture in Picture",
"playbackSpeed": "Velocità di riproduzione"
},
"popouts": {
"back": "Torna indietro",
"sources": "Fonti",
"seasons": "Stagioni",
"captions": "Sottotitoli",
"playbackSpeed": "Velocità di riproduzione",
"customPlaybackSpeed": "Velocità di riproduzione personalizzata",
"captionPreferences": {
"title": "Personalizza",
"delay": "Ritardo",
"fontSize": "Dimensione carattere",
"opacity": "Opacità",
"color": "Colore"
},
"episode": "E{{index}} - {{title}}",
"noCaptions": "Nessun sottotitolo",
"linkedCaptions": "Sottotitoli collegati",
"customCaption": "Sottotitolo personalizzato",
"uploadCustomCaption": "Carica sottotitolo",
"noEmbeds": "Nessun embed è stato trovato per questa fonte",
"errors": {
"loadingWentWong": "Si è verificato un problema durante il caricamento degli episodi per {{seasonTitle}}",
"embedsError": "Si è verificato un problema durante il caricamento degli embed per questa cosa che ti piace"
},
"descriptions": {
"sources": "Quale provider desideri utilizzare?",
"embeds": "Scegli quale video visualizzare",
"seasons": "Scegli quale stagione vuoi guardare",
"episode": "Scegli un episodio",
"captions": "Scegli una lingua per i sottotitoli",
"captionPreferences": "Personalizza l'aspetto dei sottotitoli",
"playbackSpeed": "Cambia la velocità di riproduzione"
}
},
"errors": {
"fatalError": "Il lettore video ha riscontrato un errore fatale, segnalalo sul <0>server Discord</0> o su <1>GitHub</1>."
}
},
"settings": {
"title": "Impostazioni",
"language": "Lingua",
"captionLanguage": "Lingua dei sottotitoli"
},
"v3": {
"newSiteTitle": "Nuova versione ora disponibile!",
"newDomain": "https://movie-web.app",
"newDomainText": "movie-web si sposterà presto su un nuovo dominio: <0>https://movie-web.app</0>. Assicurati di aggiornare tutti i tuoi segnalibri poiché <1>il vecchio sito smetterà di funzionare il {{date}}.</1>",
"tireless": "Abbiamo lavorato instancabilmente su questo nuovo aggiornamento, speriamo che ti piaccia quello su cui abbiamo lavorato negli ultimi mesi.",
"leaveAnnouncement": "Portami lì!"
},
"casting": {
"casting": "Trasmissione su dispositivo in corso..."
},
"errors": {
"offline": "Controlla la tua connessione internet"
}
}

View File

@ -0,0 +1,137 @@
{
"global": {
"name": "movie-web"
},
"search": {
"loading_series": "Szukamy twoich ulubionych seriali...",
"loading_movie": "Szukamy twoich ulubionych filmów...",
"loading": "Wczytywanie...",
"allResults": "To wszystko co mamy!",
"noResults": "Nie mogliśmy niczego znaleźć!",
"allFailed": "Nie udało się znaleźć mediów, Spróbuj ponownie!",
"headingTitle": "Wyniki wyszukiwania",
"bookmarks": "Zakładki",
"continueWatching": "Kontynuuj oglądanie",
"title": "Co chciałbyś obejrzeć?",
"placeholder": "Co chciałbyś obejrzeć?"
},
"media": {
"movie": "Film",
"series": "Serial",
"stopEditing": "Zatrzymaj edycje",
"errors": {
"genericTitle": "Ups, popsuło się!",
"failedMeta": "Nie udało się wczytać metadanych",
"mediaFailed": "Nie udało nam się zarządać mediów, sprawdź połączenie sieciowe i spróbuj ponownie.",
"videoFailed": "Napotkaliśmy błąd podczas odtwarzania rządanego video. Jeśli problem będzie się powtarzać prosimy o zgłoszenie problemu na <0>Serwer Discord</0> lub na <1>GitHub</1>."
}
},
"seasons": {
"seasonAndEpisode": "S{{season}} E{{episode}}"
},
"notFound": {
"genericTitle": "Nie znaleziono",
"backArrow": "Wróć na stronę główną",
"media": {
"title": "Nie można znaleźć multimediów",
"description": "Nie mogliśmy znaleźć rządanych multimediów. Albo zostały usunięte, albo grzebałeś przy adresie URL."
},
"provider": {
"title": "Ten dostawca został wyłączony",
"description": "Mieliśmy problemy z tym dostawcą, albo był zbyt niestabilny, więc musieliśmy go wyłączyć."
},
"page": {
"title": "Nie można znaleźć tej strony",
"description": "Szukaliśmy wszędzie: w koszu, w szafie a nawet w piwnicy, ale nie byliśmy w stanie znaleźć strony której szukasz."
}
},
"searchBar": {
"movie": "Filmy",
"series": "Seriale",
"Search": "Szukaj"
},
"videoPlayer": {
"findingBestVideo": "Szukamy najlepszego video dla ciebie",
"noVideos": "Oj, Nie mogliśmy znaleźć żadnego video",
"loading": "Wczytywanie...",
"backToHome": "Wróć na stronę główną",
"backToHomeShort": "Wróć",
"seasonAndEpisode": "S{{season}} E{{episode}}",
"timeLeft": "Pozostało {{timeLeft}}",
"finishAt": "Zakończ na {{timeFinished, datetime}}",
"buttons": {
"episodes": "Odcinki",
"source": "Źródło",
"captions": "Napisy",
"download": "Pobierz",
"settings": "Ustawienia",
"pictureInPicture": "Obraz w obrazie (PIP)",
"playbackSpeed": "Prędkość odtwarzania"
},
"popouts": {
"close": "Zamknąć",
"seasons": {
"title":"Sezony",
"other": "Inne sezony",
"noSeason": "Brak sezonu"
},
"episodes": {
"unknown": "Nieznany odcinki",
"noEpisode": "Brak odcinki"
},
"back": "Wróć",
"sources": "Źródła",
"captions": "Napisy",
"playbackSpeed": "Prędkość odtwarzania",
"customPlaybackSpeed": "Niestandardowa prędkość odtwarzania",
"captionPreferences": {
"title": "Personalizuj",
"delay": "Opóźnienie",
"fontSize": "Rozmiar",
"opacity": "Przeźroczystość",
"color": "Kolor"
},
"episode": "E{{index}} - {{title}}",
"noCaptions": "Brak napisów",
"linkedCaptions": "Załączone napisy",
"customCaption": "Napisy niestandardowe",
"uploadCustomCaption": "Załącz",
"noEmbeds": "Nie znaleziono osadzonych mediów dla tego źródła",
"errors": {
"loadingWentWong": "Coś poszło nie tak {{seasonTitle}}",
"embedsError": "Coś poszło nie tak przy wczytywaniu osadzonych mediów"
},
"descriptions": {
"sources": "Którego dostawcy chciałbyś używać?",
"embeds": "Wybierz, które video chcesz zobaczyć",
"seasons": "Wybierz, który sezon chcesz obejrzeć",
"episode": "Wybierz odcinek",
"captions": "Zmień język napisów",
"captionPreferences": "Ustaw napisy, tak jak ci to odpowiada",
"playbackSpeed": "Zmień prędkość odtwarzania"
}
},
"errors": {
"fatalError": "Odtwarzacz napotkał poważny błąd, Prosimy o złoszenie tego na <0>Serwer Discord</0> lub na <1>GitHub</1>."
}
},
"settings": {
"title": "Ustawienia",
"language": "Język",
"captionLanguage": "Język napisów"
},
"v3": {
"newSiteTitle": "Nowa wersja została wydana!",
"newDomain": "https://movie-web.app",
"newDomainText": "movie-web przeniesie się wkrótce na nowy adres: <0>https://movie-web.app</0>. Prosimy zaaktualizować swoje zakładki ponieważ <1>stara strona przestanie działać {{date}}.</1>",
"tireless": "Pracowaliśmy niestrudzenie nad tą aktualizacją, Mamy nadzieję że będziecie zadowoleni z tego nad czym pracowaliśmy przez ostatnie parę miesięcy.",
"leaveAnnouncement": "Zabierz mnie tam!"
},
"casting": {
"casting": "Przesyłanie do urządzenia..."
},
"errors": {
"offline": "Sprawdź swoje połączenie sieciowe"
}
}

View File

@ -71,7 +71,16 @@
"popouts": { "popouts": {
"back": "Geri git", "back": "Geri git",
"sources": "Kaynaklar", "sources": "Kaynaklar",
"seasons": "Sezonlar", "close":"Kapat",
"seasons": {
"title":"Sezonlar",
"other": "Diğer sezonlar",
"noSeason": "Sezon yok"
},
"episodes": {
"unknown": "Bilinmeyen bölüm",
"noEpisode": "Bölüm yok"
},
"captions": "Altyazılar", "captions": "Altyazılar",
"playbackSpeed": "Oynatma hızı", "playbackSpeed": "Oynatma hızı",
"customPlaybackSpeed": "Özel oynatma hızı", "customPlaybackSpeed": "Özel oynatma hızı",

View File

@ -99,10 +99,10 @@ export function EpisodeSelectionPopout() {
<> <>
<FloatingView {...pageProps("seasons")} height={600} width={375}> <FloatingView {...pageProps("seasons")} height={600} width={375}>
<FloatingCardView.Header <FloatingCardView.Header
title={t("videoPlayer.popouts.seasons")} title={t("videoPlayer.popouts.seasons.title")}
description={t("videoPlayer.popouts.descriptions.seasons")} description={t("videoPlayer.popouts.descriptions.seasons")}
goBack={() => navigate("/episodes")} goBack={() => navigate("/episodes")}
backText={`To ${currentSeasonInfo?.title.toLowerCase()}`} backText={currentSeasonInfo?.title}
/> />
<FloatingCardView.Content> <FloatingCardView.Content>
{currentSeasonInfo {currentSeasonInfo
@ -115,12 +115,15 @@ export function EpisodeSelectionPopout() {
{season.title} {season.title}
</PopoutListEntry> </PopoutListEntry>
)) ))
: "No season"} : t("videoPlayer.popouts.seasons.noSeason")}
</FloatingCardView.Content> </FloatingCardView.Content>
</FloatingView> </FloatingView>
<FloatingView {...pageProps("episodes")} height={600} width={375}> <FloatingView {...pageProps("episodes")} height={600} width={375}>
<FloatingCardView.Header <FloatingCardView.Header
title={currentSeasonInfo?.title ?? "Unknown season"} title={
currentSeasonInfo?.title ??
t("videoPlayer.popouts.episodes.unknown")
}
description={t("videoPlayer.popouts.descriptions.episode")} description={t("videoPlayer.popouts.descriptions.episode")}
goBack={closePopout} goBack={closePopout}
close close
@ -130,7 +133,7 @@ export function EpisodeSelectionPopout() {
onClick={() => navigate("/episodes/seasons")} onClick={() => navigate("/episodes/seasons")}
className="flex cursor-pointer items-center space-x-2 transition-colors duration-200 hover:text-white" className="flex cursor-pointer items-center space-x-2 transition-colors duration-200 hover:text-white"
> >
<span>Other seasons</span> <span>{t("videoPlayer.popouts.seasons.other")}</span>
<Icon icon={Icons.CHEVRON_RIGHT} /> <Icon icon={Icons.CHEVRON_RIGHT} />
</button> </button>
} }
@ -181,7 +184,7 @@ export function EpisodeSelectionPopout() {
})} })}
</PopoutListEntry> </PopoutListEntry>
)) ))
: "No episodes"} : t("videoPlayer.popouts.episodes.noEpisode")}
</div> </div>
)} )}
</FloatingCardView.Content> </FloatingCardView.Content>