Merge branch 'dev' into mediasession

This commit is contained in:
chaos 2024-01-06 18:44:37 +02:00 committed by GitHub
commit b952d0a4d0
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
28 changed files with 1047 additions and 37 deletions

View File

@ -1,6 +1,6 @@
{
"name": "movie-web",
"version": "4.2.3",
"version": "4.2.4",
"private": true,
"homepage": "https://movie-web.app",
"scripts": {
@ -29,7 +29,7 @@
"@formkit/auto-animate": "^0.8.1",
"@headlessui/react": "^1.7.17",
"@ladjs/country-language": "^1.0.3",
"@movie-web/providers": "^2.0.2",
"@movie-web/providers": "^2.0.4",
"@noble/hashes": "^1.3.3",
"@react-spring/web": "^9.7.3",
"@scure/bip39": "^1.2.2",

View File

@ -21,8 +21,8 @@ dependencies:
specifier: ^1.0.3
version: 1.0.3
'@movie-web/providers':
specifier: ^2.0.2
version: 2.0.3
specifier: ^2.0.4
version: 2.0.4
'@noble/hashes':
specifier: ^1.3.3
version: 1.3.3
@ -1917,8 +1917,8 @@ packages:
engines: {node: '>= 14'}
dev: false
/@movie-web/providers@2.0.3:
resolution: {integrity: sha512-6UNk5EebiNjGoFTuyHuu0eZZTreRYv0cdsn52CVYjm6CXG63w4dMbx8ybxcvMUrDF3o8bWlqnlovG142sdOmNw==}
/@movie-web/providers@2.0.4:
resolution: {integrity: sha512-+WXOCCKCDZBkKs8TLTCIzSjtpyofH7YHewNvOKMNKXtB6tiE3NvXU5tKq9J6mQA/RwR5VqSKUiWpgzJvOvG3dA==}
dependencies:
cheerio: 1.0.0-rc.12
crypto-js: 4.2.0

View File

@ -1,6 +1,7 @@
import ar from "@/assets/locales/ar.json";
import bg from "@/assets/locales/bg.json";
import bn from "@/assets/locales/bn.json";
import ca from "@/assets/locales/ca.json";
import cs from "@/assets/locales/cs.json";
import de from "@/assets/locales/de.json";
import el from "@/assets/locales/el.json";
@ -40,6 +41,7 @@ import zh from "@/assets/locales/zh.json";
export const locales = {
en,
ca,
cs,
de,
fr,

437
src/assets/locales/ca.json Normal file
View File

@ -0,0 +1,437 @@
{
"about": {
"description": "movie-web és una aplicació web que cerca fluxos a internet. L'equip té com a objectiu un enfocament majoritàriament minimalista del consum de contingut.",
"faqTitle": "Preguntes freqüents",
"q1": {
"body": "movie-web no allotja cap contingut. Quan feu clic a alguna cosa per a mirar-la, es busca a Internet el contingut seleccionat (a la pantalla de càrrega i a la pestanya «Fonts de vídeo» podeu veure quina font utilitzeu). movie-web mai hi puja contingut, tot és a través d'aquest mecanisme de cerca.",
"title": "D'on prové el contingut?"
},
"q2": {
"body": "No és possible sol·licitar un programa o una pel·lícula, movie-web no gestiona cap contingut. Tot el contingut es visualitza a través de fonts a internet.",
"title": "On puc sol·licitar un programa o una pel·lícula?"
},
"q3": {
"body": "Els resultats de cerca funcionen amb The Movie Database (TMDB) i es mostren independentment de si les nostres fonts realment tenen el contingut.",
"title": "Els resultats de la cerca mostren el programa o la pel·lícula, per què no puc reproduir-lo?"
},
"title": "Sobre movie-web"
},
"actions": {
"copied": "S'ha copiat",
"copy": "Cipia"
},
"auth": {
"createAccount": "Encara no teniu un compte? <0>Creeu un compte.</0>",
"deviceNameLabel": "Nom del dispositiu",
"deviceNamePlaceholder": "Telèfon personal",
"generate": {
"description": "La frase de contrasenya actua com a nom d'usuari i contrasenya. Assegureu-vos de mantenir-la segura, ja que haureu d'introduir-la per a iniciar la sessió al vostre compte",
"next": "He desat la frase de contrasenya",
"passphraseFrameLabel": "Frase de contrasenya",
"title": "La vostra frase de contrasenya"
},
"hasAccount": "Ja teniu un compte? <0>Inicieu sessió aquí.</0>",
"login": {
"description": "Introduïu la vostra frase de contrasenya per a iniciar sessió al vostre compte",
"deviceLengthError": "Introduïu un nom per al dispositiu",
"passphraseLabel": "Frase de contrasenya de 12 paraules",
"passphrasePlaceholder": "Frase de contrasenya",
"submit": "Inicia sessió",
"title": "Inicieu sessió al vostre compte",
"validationError": "Frase de contrasenya incorrecta o incompleta"
},
"register": {
"information": {
"color1": "Color de perfil 1",
"color2": "Color de perfil 2",
"header": "Introduïu un nom per al dispositiu i trieu els colors i la icona d'usuari que vulgueu",
"icon": "Icona d'usuari",
"next": "Següent",
"title": "Informació del compte"
}
},
"trust": {
"failed": {
"text": "L'heu configurada correctament?",
"title": "No s'ha pogut accedir al servidor"
},
"host": "Us esteu connectant a <0>{{hostname}}</0>. Confirmeu que hi confieu abans de crear un compte",
"no": "Torna",
"title": "Confieu en aquest servidor?",
"yes": "Confie en aquest servidor"
},
"verify": {
"description": "Introduïu la vostra frase de contrasenya anterior per a confirmar que l'heu desat, i crear el compte",
"invalidData": "La data no és vàlida",
"noMatch": "La frase de contrasenya no coincideix",
"passphraseLabel": "Frase de contrasenya de 12 paraules",
"recaptchaFailed": "Ha fallat la validació de ReCaptcha",
"register": "Crea el compte",
"title": "Confirmeu la frase de contrasenya"
}
},
"errors": {
"badge": "S'ha trencat",
"details": "Detalls de l'error",
"reloadPage": "Recarrega la pàgina",
"showError": "Mostra els detalls de l'error",
"title": "Hem trobat un error!"
},
"footer": {
"legal": {
"disclaimer": "Avís d'exempció de responsabilitat",
"disclaimerText": "movie-web no allotja cap fitxer, només enllaça a serveis de tercers. Els problemes legals s'han d'abordar amb qui allotja i els proveïdors de fitxers. movie-web no es fa responsable del contingut mostrat pels proveïdors de vídeo."
},
"links": {
"discord": "Discord",
"dmca": "DMCA",
"github": "GitHub"
},
"tagline": "Mireu els vostres programes i pel·lícules preferits amb aquesta aplicació de codi obert de reproducció en temps real."
},
"global": {
"name": "movie-web",
"pages": {
"about": "Quant a",
"dmca": "DMCA",
"login": "Inicia sessió",
"pagetitle": "{{title}} - movie-web",
"register": "Registra",
"settings": "Configuració"
}
},
"home": {
"bookmarks": {
"sectionTitle": "Marcadors"
},
"continueWatching": {
"sectionTitle": "Continueu mirant"
},
"mediaList": {
"stopEditing": "Atura l'edició"
},
"search": {
"allResults": "Això és tot el que tenim!",
"failed": "No s'ha pogut trobar cap contingut, torneu-ho a provar!",
"loading": "S'està carregant…",
"noResults": "No hem pogut trobar res!",
"placeholder": "Què voleu mirar?",
"sectionTitle": "Resultats de la cerca"
},
"titles": {
"day": {
"default": "Què us agradaria mirar aquesta vesprada/tarda?",
"extra": [
"Voleu aventura? Jurassic Park podria ser l'elecció perfecta."
]
},
"morning": {
"default": "Què us agradaria mirar aquest matí?",
"extra": [
"He sentit que «Abans de l'alba» és bona"
]
},
"night": {
"default": "Què us agradaria mirar aquesta nit?",
"extra": [
"Esteu cansat? He sentit que «L'exorcista» és bona."
]
}
}
},
"media": {
"episodeDisplay": "T{{season}} E{{episode}}",
"types": {
"movie": "Pel·lícula",
"show": "Sèrie/Programa"
}
},
"navigation": {
"banner": {
"offline": "Comproveu la connexió a internet"
},
"menu": {
"about": "Quant a nosaltres",
"donation": "Feu una donació",
"logout": "Tanca la sessió",
"register": "Sincronitza al núvol",
"settings": "Configuració",
"support": "Ajuda"
}
},
"notFound": {
"badge": "No s'ha trobat",
"goHome": "Torna a l'inici",
"message": "Hem mirat per tot arreu: davall de les papereres, a l'armari, darrere del servidor intermediari, però al remat no hem pogut trobar la pàgina que busqueu.",
"title": "No s'ha pogut trobar la pàgina"
},
"overlays": {
"close": "Tanca"
},
"player": {
"back": {
"default": "Torna a l'inici",
"short": "Torna"
},
"casting": {
"enabled": "S'està emetent al dispositiu…"
},
"menus": {
"downloads": {
"disclaimer": "Les baixades s'obtenen directament del proveïdor. movie-web no té control sobre com es proporcionen les baixades.",
"downloadPlaylist": "Baixa la llista de reproducció",
"downloadSubtitle": "Baixa els subtítols actuals",
"downloadVideo": "Baixa el vídeo",
"hlsDisclaimer": "Les baixades s'obtenen directament del proveïdor. movie-web no té control sobre com es proporcionen les baixades. Tingueu en compte que esteu baixant una llista de reproducció HLS, destinada als usuaris familiaritzats amb la transmissió multimèdia avançada.",
"onAndroid": {
"1": "Per a baixar-lo a Android, feu clic al botó de baixada i, a la pàgina nova, <bold>manteniu premut</bold> el vídeo i, a continuació, seleccioneu <bold>Desa</bold>.",
"shortTitle": "Baixa / Android",
"title": "Baixada a Android"
},
"onIos": {
"1": "Per a baixar a iOS, feu clic al botó de baixada i, a la pàgina nova, feu clic a <bold><ios_share /></bold> /> i, a continuació, <bold>Desa als Arxius <ios_files /></bold>.",
"shortTitle": "Baixa / iOS",
"title": "Baixada a iOS"
},
"onPc": {
"1": "En un PC, feu clic al botó de baixada i, a la pàgina nova, feu clic amb el botó dret al vídeo i seleccioneu <bold>Anomena i desa el vídeo</bold>",
"shortTitle": "Baixa / PC",
"title": "Baixada a un PC"
},
"title": "Baixa"
},
"episodes": {
"button": "Episodi",
"emptyState": "No hi ha episodis en aquesta temporada, torneu-ho a comprovar més tard!",
"episodeBadge": "E{{episode}}",
"loadingError": "Error en carregar la temporada",
"loadingList": "S'està carregant…",
"loadingTitle": "S'està carregant…",
"unairedEpisodes": "Un o més episodis d'aquesta temporada s'han desactivat perquè encara no s'han emés."
},
"playback": {
"speedLabel": "Velocitat de la reproducció",
"title": "Configuració de la reproducció"
},
"quality": {
"automaticLabel": "Qualitat automàtica",
"hint": "Podeu provar a <0>canviar la font</0> per a obtenir diferents opcions de qualitat.",
"iosNoQuality": "A causa de les limitacions definides per Apple, la selecció de qualitat no està disponible a iOS per a aquesta font. Podeu provar a <0>canviar a una altra font</0> per a obtenir diferents opcions de qualitat.",
"title": "Qualitat"
},
"settings": {
"downloadItem": "Baixa",
"enableSubtitles": "Activa els subtítols",
"experienceSection": "Experiència de visualització",
"playbackItem": "Configuració de la reproducció",
"qualityItem": "Qualitat",
"sourceItem": "Fonts de vídeo",
"subtitleItem": "Configuració dels subtítols",
"videoSection": "Configuració de vídeo"
},
"sources": {
"failed": {
"text": "S'ha produït un error en intentar trobar vídeos, proveu una font diferent.",
"title": "No s'ha pogut obtenir"
},
"noEmbeds": {
"text": "No hem pogut trobar cap incrustat, proveu una font diferent.",
"title": "No s'ha trobat cap incrustació"
},
"noStream": {
"text": "Aquesta font no té fluxos per a aquesta pel·lícula o programa.",
"title": "Cap flux"
},
"title": "Fonts",
"unknownOption": "Desconeguda"
},
"subtitles": {
"customChoice": "Selecciona un fitxer de subtítols",
"customizeLabel": "Personalitza",
"offChoice": "Desactivats",
"settings": {
"backlink": "Subtítols personalitzats",
"delay": "Retard dels subtítols",
"fixCapitals": "Corregeix les majúscules/minúscules"
},
"title": "Subtítols",
"unknownLanguage": "Desconeguda"
}
},
"metadata": {
"api": {
"text": "No s'han pogut carregar les metadades de l'API, comproveu la connexió a Internet.",
"title": "No s'han pogut carregar les metadades de l'API"
},
"failed": {
"badge": "Ha fallat",
"homeButton": "Vés a l'inici",
"text": "No s'han pogut carregar les metadades del contingut des de TMDB. Comproveu si TMDB no funciona o està bloquejat a la vostra connexió a Internet.",
"title": "Ha fallat la càrrega de les metadades"
},
"notFound": {
"badge": "No s'ha trobat",
"homeButton": "Torna a l'inici",
"text": "No hem pogut trobar el contingut sol·licitat. O bé s'ha eliminat o bé heu alterat l'URL.",
"title": "No s'ha trobat el contingut."
}
},
"nextEpisode": {
"cancel": "Cancel·la",
"next": "Episodi següent"
},
"playbackError": {
"badge": "Error en la reproducció",
"errors": {
"errorAborted": "S'ha interromput l'obtenció del contingut per petició de l'usuari.",
"errorDecode": "Tot i haver-se determinat prèviament que era utilitzable, s'ha produït un error en intentar descodificar el recurs multimèdia.",
"errorGenericMedia": "S'ha produït un error desconegut al contingut.",
"errorNetwork": "S'ha produït algun tipus d'error de xarxa que ha impedit que el contingut s'obtinga correctament, tot i haver estat disponibles prèviament.",
"errorNotSupported": "El contingut o el proveïdor del contingut no és compatible."
},
"homeButton": "Torna a l'inici",
"text": "S'ha produït un error en intentar reproduir el contingut. Torneu-ho a provar.",
"title": "No s'ha pogut reproduir el vídeo!"
},
"scraping": {
"items": {
"failure": "S'ha produït un error",
"notFound": "No té el vídeo",
"pending": "S'estan cercant vídeos…"
},
"notFound": {
"badge": "No s'ha trobat",
"detailsButton": "Mostra els detalls",
"homeButton": "Torna a l'inici",
"text": "Hem buscat a través dels nostres proveïdors i no trobem el contingut que busqueu! No allotgem contingut i no tenim control sobre què hi ha disponible. Feu clic a «Mostra els detalls» a continuació per a més informació.",
"title": "No s'ha pogut trobar"
}
},
"time": {
"regular": "{{timeWatched}} / {{duration}}",
"remaining": "{{timeLeft}} restants • Acaba a les {{timeFinished, datetime}}",
"shortRegular": "{{timeWatched}}",
"shortRemaining": "-{{timeLeft}}"
},
"turnstile": {
"description": "Verifiqueu que sou humà completant el Captcha de la dreta. Ho fem per a mantenir segura movie-web!",
"error": "No s'ha pogut verificar la humanitat. Torneu-ho a provar.",
"title": "Necessitem verificar que sou humà.",
"verifyingHumanity": "Verificant la vostra humanitat…"
}
},
"screens": {
"dmca": {
"text": "Us donem la benvinguda a la pàgina de contacte DMCA de movie-web! Respectem els drets de propietat intel·lectual i volem resoldre qualsevol problema de drets d'autor ràpidament. Si creieu que la vostra obra protegida per drets d'autor s'ha utilitzat incorrectament a la nostra plataforma, envieu un avís detallat de la DMCA al correu electrònic següent. Incloeu una descripció del material protegit per drets d'autor, les vostres dades de contacte i una declaració de creença de bona fe. Ens comprometem a resoldre aquests assumptes amb agilitat i agraïm la vostra col·laboració per a mantenir movie-web en un lloc que respecta la creativitat i els drets d'autor.",
"title": "DMCA"
},
"loadingApp": "S'està carregant l'aplicació",
"loadingUser": "S'està carregant el perfil",
"loadingUserError": {
"logout": "Tanca la sessió",
"reset": "Restableix el servidor personalitzat",
"text": "Ha fallat la càrrega del perfil",
"textWithReset": "Error en carregar el vostre perfil des del servidor personalitzat, voleu restablir el servidor per defecte?"
},
"migration": {
"failed": "La migració de les dades ha fallat.",
"inProgress": "Espereu, estem migrant les vostres dades. No hauria de tardar massa."
}
},
"settings": {
"account": {
"accountDetails": {
"deviceNameLabel": "Nom del dispositiu",
"deviceNamePlaceholder": "Telèfon personal",
"editProfile": "Edita",
"logoutButton": "Tanca la sessió"
},
"actions": {
"delete": {
"button": "Elimina el compte",
"confirmButton": "Elimina el compte",
"confirmDescription": "Segur que voleu eliminar el compte? Es perdran totes les dades!",
"confirmTitle": "Segur?",
"text": "Aquesta acció és irreversible. Totes les dades s'eliminaran i no es podrà recuperar res.",
"title": "Elimina el compte"
},
"title": "Accions"
},
"devices": {
"deviceNameLabel": "Nom del dispositiu",
"failed": "La càrrega de sessions ha fallat",
"removeDevice": "Elimina",
"title": "Dispositiu"
},
"profile": {
"finish": "Finalitza l'edició",
"firstColor": "Color de perfil 1",
"secondColor": "Color de perfil dos",
"title": "Edita la foto de perfil",
"userIcon": "Icona d'usuari"
},
"register": {
"cta": "Comença",
"text": "Compartiu el progrés de la visualització entre dispositius i manteniu-los sincronitzats.",
"title": "Sincronització amb el núvol"
},
"title": "Compte"
},
"appearance": {
"activeTheme": "Actiu",
"themes": {
"blue": "Blau",
"default": "Per defecte",
"gray": "Gris",
"red": "Vermell",
"teal": "Verd blavós"
},
"title": "Aparença"
},
"connections": {
"server": {
"description": "Si voleu connectar-vos a un rerefons personalitzat per a emmagatzemar les vostres dades, activeu-ho i proporcioneu l'URL.",
"label": "Servidor personalitzat",
"urlLabel": "URL del servidor personalitzat"
},
"title": "Connexions",
"workers": {
"addButton": "Afig un «worker»",
"description": "Per fer funcionar l'aplicació, tot el trànsit s'encamina a través de servidors intermediaris. Activeu-ho si voleu portar els vostres propis «workers».",
"emptyState": "Encara no hi ha «workers», afegiu-ne un a continuació",
"label": "Utilitza «workers» intermediaris personalitzats",
"urlLabel": "URL dels «workers»",
"urlPlaceholder": "https://"
}
},
"locale": {
"language": "Llengua de l'aplicació",
"languageDescription": "La llengua s'aplica a tota l'aplicació.",
"title": "Llengua"
},
"reset": "Restableix",
"save": "Desa",
"sidebar": {
"info": {
"appVersion": "Versió de l'aplicacií",
"backendUrl": "URL del rerefons",
"backendVersion": "Versió del rerefons",
"hostname": "Nom de l'amfitrió",
"insecure": "Insegur",
"notLoggedIn": "No heu iniciat sessió",
"secure": "Segur",
"title": "Informació de l'aplicació",
"unknownVersion": "Desconeguda",
"userId": "ID d'usuari"
}
},
"subtitles": {
"backgroundLabel": "Opacitat del fons",
"colorLabel": "Color",
"previewQuote": "No he de tenir por. La por és l'assassina de la ment.",
"textSizeLabel": "Grandària del text",
"title": "Subtítols"
},
"unsaved": "Hi ha canvis sense desar"
}
}

View File

@ -259,6 +259,10 @@
}
},
"metadata": {
"api": {
"text": "Metadata API nelze načíst, zkontrolujte prosím vaše připojení k internetu.",
"title": "Nepodařilo se načíst API metadata"
},
"failed": {
"badge": "Neúspěšný",
"homeButton": "Jít domů",
@ -308,6 +312,12 @@
"remaining": "{{timeLeft}} zbývá • Dokončeno v {{timeFinished, datetime}}",
"shortRegular": "{{timeWatched}}",
"shortRemaining": "-{{timeLeft}}"
},
"turnstile": {
"description": "Ověřte, prosím, že jste člověk, vyplněním Captchy napravo. Toto je pro zajištění bezpečnosti movie-web!",
"error": "Nepodařilo se ověřit vaši lidskost. Zkuste to prosím znovu.",
"title": "Potřebujeme ověřit, zda jste člověk.",
"verifyingHumanity": "Ověřování vaši lidskosti..."
}
},
"screens": {

View File

@ -259,6 +259,10 @@
}
},
"metadata": {
"api": {
"text": "API Metadaten konnten nicht geladen werden, überprüfe deine Netzwerkverbindung.",
"title": "API Metadaten konnten nicht geladen werden"
},
"failed": {
"badge": "Fehlgeschlagen",
"homeButton": "Zurück zur Startseite",
@ -308,6 +312,12 @@
"remaining": "{{timeLeft}} übrig • Fertig um {{timeFinished, datetime}}",
"shortRegular": "{{timeWatched}}",
"shortRemaining": "-{{timeLeft}}"
},
"turnstile": {
"description": "Bitte verifiziere deine Menschlichkeit mit dem Captcha auf der Rechten Seite. Dies ist um movie-web sicher zu halten!",
"error": "Menschlichkeit konnte nicht verifiziert werden. Bitte versuche es erneut.",
"title": "Wir müssen sicherstellen, dass du Menschlich bist.",
"verifyingHumanity": "Verifiziere deine Menschlichkeit..."
}
},
"screens": {

View File

@ -206,7 +206,8 @@
"episodeBadge": "Ε{{episode}}",
"loadingError": "Σφάλμα φόρτωσης της σεζόν",
"loadingList": "Φόρτωση...",
"loadingTitle": "Φόρτωση..."
"loadingTitle": "Φόρτωση...",
"unairedEpisodes": "Ένα ή περισσότερα επεισόδια αυτής της σεζόν έχουν απενεργοποιηθεί επειδή δεν έχουν προβληθεί ακόμα."
},
"playback": {
"speedLabel": "Ταχύτητα αναπαραγωγής",
@ -258,6 +259,10 @@
}
},
"metadata": {
"api": {
"text": "Δεν ήταν δυνατή η φόρτωση των μεταδεδομένων του API, ελέγξτε τη σύνδεσή σας στο διαδίκτυο.",
"title": "Αποτυχία φόρτωσης μεταδεδομένων API"
},
"failed": {
"badge": "Απέτυχε",
"homeButton": "Επιστοφή στην αρχική",
@ -307,6 +312,12 @@
"remaining": "{{timeLeft}} απέμεινε • Ολοκλήρωση στις {{timeFinished, datetime}}",
"shortRegular": "{{timeWatched}}",
"shortRemaining": "-{{timeLeft}}"
},
"turnstile": {
"description": "Επαληθεύστε ότι είστε άνθρωπος συμπληρώνοντας το Captcha στα δεξιά. Αυτό γίνεται για να διατηρηθεί ο ιστός της ταινίας ασφαλής!",
"error": "Αποτυχία επαλήθευσης της ανθρωπιάς σας. ΠΑΡΑΚΑΛΩ προσπαθησε ξανα.",
"title": "Πρέπει να επαληθεύσουμε ότι είστε άνθρωπος.",
"verifyingHumanity": "Επαλήθευση της ανθρωπιάς σας..."
}
},
"screens": {

View File

@ -215,7 +215,7 @@
},
"quality": {
"automaticLabel": "Qualité automatique",
"hint": "Vous pouvez essayer de <0>changer de fournisseur/0> pour obtenir différentes options de qualité.",
"hint": "Vous pouvez essayer de <0>changer de fournisseur</0> pour obtenir différentes options de qualité.",
"iosNoQuality": "En raison des limitations définies par Apple, la sélection de la qualité n'est pas disponible sur iOS pour cette source. Vous pouvez essayer <0>de passer à une autre source</0> pour obtenir des options de qualité différentes.",
"title": "Qualité"
},
@ -259,9 +259,13 @@
}
},
"metadata": {
"api": {
"text": "Impossible de charger les métadonnées de l'API, veuillez vérifier votre connexion Internet.",
"title": "Échec du chargement des métadonnées de l'API"
},
"failed": {
"badge": "Échec",
"homeButton": "Retour à la maison",
"homeButton": "Revenir à l'accueil",
"text": "Impossible de charger les métadonnées du média à partir de TMDB. Veuillez vérifier si TMDB est en panne ou bloqué sur votre connexion internet.",
"title": "Échec du chargement des métadonnées"
},
@ -308,6 +312,12 @@
"remaining": "{{timeLeft}} restant • Fini à {{timeFinished, datetime}}",
"shortRegular": "{{timeWatched}}",
"shortRemaining": "-{{timeLeft}}"
},
"turnstile": {
"description": "Veuillez vérifier que vous êtes bien humain en complétant le Captcha à droite. C'est pour assurer la sécurité de movie-web !",
"error": "Échec de la vérification de votre humanité. Veuillez réessayer.",
"title": "Nous devons vérifier que vous êtes un humain.",
"verifyingHumanity": "Vérification de votre humanité..."
}
},
"screens": {

View File

@ -259,6 +259,10 @@
}
},
"metadata": {
"api": {
"text": "API મેટાડેટા લોડ કરી શકાયું નથી, કૃપા કરીને તમારું ઇન્ટરનેટ કનેક્શન તપાસો.",
"title": "API મેટાડેટા લોડ કરવામાં નિષ્ફળ"
},
"failed": {
"badge": "નિષ્ફળ",
"homeButton": "ઘર જાઓ",
@ -308,6 +312,12 @@
"remaining": "{{timeLeft}} બાકી • {{timeFinished, datetime}} વાગ્યે સમાપ્ત થાય છે",
"shortRegular": "{{timeWatched}}",
"shortRemaining": "-{{timeLeft}}"
},
"turnstile": {
"description": "કૃપા કરીને જમણી બાજુએ કૅપ્ચા પૂર્ણ કરીને ચકાસો કે તમે માનવ છો. આ મૂવી-વેબને સુરક્ષિત રાખવા માટે છે!",
"error": "તમારી માનવતા ચકાસવામાં નિષ્ફળ. મહેરબાની કરીને ફરીથી પ્રયત્ન કરો.",
"title": "અમારે ચકાસવાની જરૂર છે કે તમે માનવ છો.",
"verifyingHumanity": "તમારી માનવતા ચકાસવી..."
}
},
"screens": {

View File

@ -206,7 +206,8 @@
"episodeBadge": "פ{{episode}}",
"loadingError": "ארע שגיאה בטעינת העונה",
"loadingList": "טוען...",
"loadingTitle": "טוען..."
"loadingTitle": "טוען...",
"unairedEpisodes": "פרק אחד או יותר בעונה זו הושבת מכיוון שהם עדיין לא שודרו."
},
"playback": {
"speedLabel": "מהירות הניגון",
@ -258,6 +259,10 @@
}
},
"metadata": {
"api": {
"text": "לא ניתן היה לטעון מטא נתונים של ה-API, אנא בדוק את חיבור האינטרנט שלך.",
"title": "טעינת מטא נתונים של ממשק API נכשלה"
},
"failed": {
"badge": "נכשל",
"homeButton": "חזור לדף הבית",
@ -307,6 +312,12 @@
"remaining": "{{timeLeft}} נשאר • סיים ב {{timeFinished, datetime}}",
"shortRegular": "{{timeWatched}}",
"shortRemaining": "-{{timeLeft}}"
},
"turnstile": {
"description": "אנא ודא שאתה אנושי על ידי מילוי ה-Captcha בצד ימין. זה כדי לשמור על movie-web!",
"error": "נכשל אימות האנושיות שלך. בבקשה נסה שוב.",
"title": "אנחנו צריכים לאמת שאתה אנושי.",
"verifyingHumanity": "מאמת את האנושיות שלך..."
}
},
"screens": {

View File

@ -115,7 +115,7 @@
"failed": "मीडिया ढूंढने में विफल, पुनः प्रयास करें!",
"loading": "लोड हो रहा है..।",
"noResults": "हमें कुछ नहीं मिला!",
"placeholder": "क्या देखना चाहते हो भाई?",
"placeholder": "क्या देखना चाहते हो?",
"sectionTitle": "खोज के परिणाम"
},
"titles": {
@ -259,6 +259,10 @@
}
},
"metadata": {
"api": {
"text": "एपीआई मेटाडेटा लोड नहीं हो सका, कृपया अपना इंटरनेट कनेक्शन जांचें।",
"title": "एपीआई मेटाडेटा लोड करने में विफल"
},
"failed": {
"badge": "असफल",
"homeButton": "घर जाओ",
@ -308,6 +312,12 @@
"remaining": "{{timeLeft}} समय बचा है • ख़तम होगा {{timeFinished, datetime}}",
"shortRegular": "{{timeWatched}}",
"shortRemaining": "-{{timeLeft}}"
},
"turnstile": {
"description": "कृपया दाईं ओर दिए गए कैप्चा को पूरा करके सत्यापित करें कि आप इंसान हैं। यह मूवी-वेब को सुरक्षित रखने के लिए है!",
"error": "आपकी मानवता को सत्यापित करने में विफल. कृपया पुन: प्रयास करें।",
"title": "हमें यह सत्यापित करने की आवश्यकता है कि आप इंसान हैं।",
"verifyingHumanity": "आपकी मानवता का सत्यापन..।"
}
},
"screens": {

View File

@ -206,7 +206,8 @@
"episodeBadge": "E{{episode}}",
"loadingError": "Errore nel caricare la stagione",
"loadingList": "Caricamento...",
"loadingTitle": "Caricamento..."
"loadingTitle": "Caricamento...",
"unairedEpisodes": "Uno o più episodi di questa stagione sono stati disabilitati perché non sono ancora andati in onda."
},
"playback": {
"speedLabel": "Velocità di riproduzione",
@ -258,6 +259,10 @@
}
},
"metadata": {
"api": {
"text": "Impossibile caricare metadati API, verifica la connessione internet.",
"title": "Impossibile caricare metadati API"
},
"failed": {
"badge": "Fallito",
"homeButton": "Vai alla pagina iniziale",
@ -307,6 +312,12 @@
"remaining": "{{timeLeft}} rimasto • Finisce a {{timeFinished, datetime}}",
"shortRegular": "{{timeWatched}}",
"shortRemaining": "-{{timeLeft}}"
},
"turnstile": {
"description": "Verifica che siate umani completando il Captcha sulla destra. Questo serve a mantenere movie-web sicuro!",
"error": "Impossibile verificare il proprio umanità. Riprova.",
"title": "Dobbiamo verificare che lei sia umano.",
"verifyingHumanity": "verificare il proprio umanità..."
}
},
"screens": {

View File

@ -5,6 +5,34 @@
"q1": {
"body": "movie-web មិនផ្ទុកមាតិកាណាមួយទេ។ នៅពេលអ្នកចុចលើអ្វីមួយដើម្បីមើល អ៊ីនធឺណិតត្រូវបានស្វែងរកសម្រាប់មេឌៀដែលបានជ្រើសរើស (នៅលើអេក្រង់ផ្ទុក និងក្នុងផ្ទាំង 'ប្រភពវីដេអូ' អ្នកអាចឃើញប្រភពណាមួយដែលអ្នកកំពុងប្រើ)។ ប្រព័ន្ធផ្សព្វផ្សាយមិនដែលត្រូវបានបង្ហោះដោយគេហទំព័រភាពយន្តនោះទេ អ្វីគ្រប់យ៉ាងគឺតាមរយៈយន្តការស្វែងរកនេះ។",
"title": "តើមាតិកាបានមកពីណា?"
},
"q2": {
"title": "តើខ្ញុំអាចស្នើសុំកម្មវិធី ឬ ភាពយន្តបាននៅឯណា?"
},
"q3": {
"body": "លទ្ធផលស្វែងរករបស់យើងត្រូវបានដំណើរការដោយ The Movie Database (TMDB) ហើយបង្ហាញដោយមិនខ្វល់ពីប្រភពរបស់យើងមានខ្លឹមសារឬ​អត់ទេ។",
"title": "លទ្ធផលស្វែងរកបង្ហាញកម្មវិធី ឬ ភាពយន្ត ហេតុអ្វីខ្ញុំមិនអាចមើលបាន?"
},
"title": "អំពី movie-web"
},
"actions": {
"copied": "បានចម្លង",
"copy": "ចម្លង"
},
"auth": {
"createAccount": "មិនទាន់មានគណនីមែនទេ? <0>បង្កើតគណនី</0>",
"deviceNameLabel": "ឈ្មោះឧបករណ៍",
"deviceNamePlaceholder": "ទូរស័ព្ទផ្ទាល់ខ្លួន",
"generate": {
"description": "ឃ្លាសម្ងាត់របស់អ្នកដើរតួជាឈ្មោះអ្នកប្រើប្រាស់ និងពាក្យសម្ងាត់របស់អ្នក។ ត្រូវប្រាកដថារក្សាវាឱ្យមានសុវត្ថិភាព ព្រោះអ្នកនឹងត្រូវបញ្ចូលវាដើម្បីចូលគណនីរបស់អ្នក",
"next": "ខ្ញុំបានរក្សាទុកឃ្លាសម្ងាត់របស់ខ្ញុំរួចហើយ",
"passphraseFrameLabel": "ឃ្លាសម្ងាត់",
"title": "ឃ្លាសម្ងាត់របស់អ្នក"
},
"hasAccount": "មានគណនីរួចហើយ? <0>ចូលទីនេះ</0>",
"login": {
"description": "សូមបញ្ចូលឃ្លាសម្ងាត់របស់អ្នក ដើម្បីចូលគណនីរបស់អ្នក",
"deviceLengthError": "សូមបញ្ចូលឈ្មោះឧបករណ៍"
}
}
}

View File

@ -120,7 +120,10 @@
},
"titles": {
"day": {
"default": "What would you like to banana this banana?"
"default": "What would you like to banana this banana?",
"extra": [
"Feeling banana? Jurassic banana banana banana banana perfect banana."
]
},
"morning": {
"default": "What would you like to banana this banana?",
@ -157,7 +160,7 @@
}
},
"notFound": {
"badge": "Not found",
"badge": "Not banana",
"goHome": "Back to banana",
"message": "We looked everywhere: under the banana, in the banana, behind the banana but ultimately couldn't find the banana you are looking for.",
"title": "Couldn't find that banana"
@ -179,6 +182,7 @@
"downloadPlaylist": "Download banana",
"downloadSubtitle": "Download current banana",
"downloadVideo": "Banana",
"hlsDisclaimer": "Downloads are taken directly from the banana. Banana-web does not have control over how the downloads are banana. please note that you are downloading Banana playlist, this is intended for minions familiar with advanced multimedia banana.",
"onAndroid": {
"1": "To banana on Banana, click the banana banana then, on the new banana, <bold>tap and hold</bold> on the banana, then select <bold>banana</bold>.",
"shortTitle": "Banana / Banana",
@ -202,7 +206,8 @@
"episodeBadge": "E{{episode}}",
"loadingError": "Error loading banana",
"loadingList": "Loading...",
"loadingTitle": "Loading..."
"loadingTitle": "Loading...",
"unairedEpisodes": "One or more banana in this banana have been banana because they haven't been aired yet."
},
"playback": {
"speedLabel": "Banana speed",
@ -254,6 +259,10 @@
}
},
"metadata": {
"api": {
"text": "Could not load API banana, please check your banana connection.",
"title": "Failed to load API banana"
},
"failed": {
"badge": "Banana Failed",
"homeButton": "Go banana",
@ -303,9 +312,19 @@
"remaining": "{{timeLeft}} left • Finish at {{timeFinished, datetime}}",
"shortRegular": "{{timeWatched}}",
"shortRemaining": "-{{timeLeft}}"
},
"turnstile": {
"description": "Please verify that you are banana by completing the banana on the right. This is to keep banana-web banana!",
"error": "Failed to verify your banananess. Please try banana.",
"title": "We banana to verify that you're banana",
"verifyingHumanity": "Verifying your banana..."
}
},
"screens": {
"dmca": {
"text": "Very long and boring banana.",
"title": "Banana"
},
"loadingApp": "Loading banana",
"loadingUser": "Loading your banana",
"loadingUserError": {
@ -407,6 +426,8 @@
}
},
"subtitles": {
"backgroundLabel": "Banana capacity",
"colorLabel": "Banana",
"previewQuote": "I must not banana. Banana is the minion-killer.",
"textSizeLabel": "Banana size",
"title": "Bananas"

View File

@ -206,7 +206,8 @@
"episodeBadge": "E{{episode}}",
"loadingError": "सिजन लोड गर्दा त्रुटि भयो",
"loadingList": "लोड गर्दै...",
"loadingTitle": "लोड गर्दै..."
"loadingTitle": "लोड गर्दै...",
"unairedEpisodes": "यस सिजनका एक वा बढी एपिसोडहरू अझै प्रसारण नभएकाले असक्षम पारिएका छन्।"
},
"playback": {
"speedLabel": "प्लेब्याकको गति",
@ -258,6 +259,10 @@
}
},
"metadata": {
"api": {
"text": "API मेटाडेटा लोड गर्न सकिएन, कृपया आफ्नो इन्टरनेट जडान जाँच गर्नुहोस्।",
"title": "API मेटाडेटा लोड गर्न असफल भयो"
},
"failed": {
"badge": "असफल",
"homeButton": "होम् जाउँ",
@ -307,6 +312,12 @@
"remaining": "{{timeLeft}} बाकी • {{timeFinished, datetime}} मा सक्किनेछ",
"shortRegular": "{{timeWatched}}",
"shortRemaining": "-{{timeLeft}}"
},
"turnstile": {
"description": "कृपया दायाँपट्टि Captch पूरा गरेर तपाईं मानव हुनुहुन्छ भनी प्रमाणित गर्नुहोस्। यो movie-web लाई सुरक्षित राख्न को लागी हो!",
"error": "तपाईंको मानवता प्रमाणित गर्न असफल भयौ। फेरि प्रयास गर्नुहोस।",
"title": "हामीले तपाईं मानव हुनुहुन्छ भनेर प्रमाणित गर्न आवश्यक छ।",
"verifyingHumanity": "तपाईंको मानवता प्रमाणित हुदैछ..."
}
},
"screens": {

View File

@ -259,6 +259,10 @@
}
},
"metadata": {
"api": {
"text": "Kan API-metagegevens niet laden. Controleer uw internetverbinding.",
"title": "Kan API-metagegevens niet laden"
},
"failed": {
"badge": "Mislukt",
"homeButton": "Ga naar de home-pagina",
@ -308,6 +312,12 @@
"remaining": "Nog {{timeLeft}} • Klaar om {{timeFinished, datetime}}",
"shortRegular": "{{timeWatched}}",
"shortRemaining": "-{{timeLeft}}"
},
"turnstile": {
"description": "Bevestig dat u een mens bent door de Captcha aan de rechterkant in te vullen. Dit is om movie-web veilig te houden!",
"error": "Kan uw menselijkheid niet verifiëren. Probeer het opnieuw.",
"title": "We moeten verifiëren dat u een mens bent.",
"verifyingHumanity": "Je menselijkheid verifiëren..."
}
},
"screens": {

View File

@ -1,9 +1,31 @@
{
"about": {
"description": "ਮੂਵੀ-ਵੈਬ ਇੱਕ ਵੈੱਬ ਐਪਲੀਕੇਸ਼ਨ ਹੈ ਜੋ ਸਟ੍ਰੀਮ ਲਈ ਇੰਟਰਨੈਟ ਦੀ ਖੋਜ ਕਰਦੀ ਹੈ. ਟੀਮ ਦਾ ਉਦੇਸ਼ ਕੰਟੈਂਟ ਦੀ ਖਪਤ ਕਰਨ ਲਈ ਜ਼ਿਆਦਾਤਰ ਘੱਟੋ-ਘੱਟ ਪਹੁੰਚ ਹੈ.",
"faqTitle": "ਆਮ ਸਵਾਲ",
"q1": {
"body": "ਮੂਵੀ ਵੈੱਬ ਕਿਸੇ ਕੰਟੈਂਟ ਦੀ ਮੇਜ਼ਬਾਨੀ ਨਹੀਂ ਕਰਦਾ ਹੈ.ਜਦੋਂ ਤੁਸੀਂ ਦੇਖਣ ਲਈ ਕਿਸੇ ਚੀਜ਼ 'ਤੇ ਕਲਿੱਕ ਕਰਦੇ ਹੋ, ਤਾਂ ਚੁਣੇ ਹੋਏ ਮੀਡੀਆ ਲਈ ਇੰਟਰਨੈੱਟ ਖੋਜਿਆ ਜਾਂਦਾ ਹੈ (ਲੋਡਿੰਗ ਸਕ੍ਰੀਨ 'ਤੇ ਅਤੇ 'ਵੀਡੀਓ ਸਰੋਤ' ਟੈਬ ਵਿੱਚ ਤੁਸੀਂ ਦੇਖ ਸਕਦੇ ਹੋ ਕਿ ਤੁਸੀਂ ਕਿਹੜਾ ਸਰੋਤ ਵਰਤ ਰਹੇ ਹੋ) ਮੀਡੀਆ ਕਦੇ ਵੀ ਮੂਵੀ-ਵੈੱਬ ਦੁਆਰਾ ਅਪਲੋਡ ਨਹੀਂ ਹੁੰਦਾ, ਸਭ ਕੁਝ ਇਸ ਖੋਜ ਵਿਧੀ ਦੁਆਰਾ ਹੁੰਦਾ ਹੈ।",
"title": "ਕੰਟੈਂਟ ਕਿੱਥੋਂ ਆਉਂਦੀ ਹੈ?"
},
"q2": {
"body": "ਕਿਸੇ ਸ਼ੋਅ ਜਾਂ ਮੂਵੀ ਦੀ ਬੇਨਤੀ ਕਰਨਾ ਸੰਭਵ ਨਹੀਂ ਹੈ, ਮੂਵੀ-ਵੈੱਬ ਕਿਸੇ ਵੀ ਕੰਟੈਂਟ ਦਾ ਪ੍ਰਬੰਧਨ ਨਹੀਂ ਕਰਦਾ ਹੈ। ਸਾਰੇ ਕੰਟੈਂਟ ਨੂੰ ਇੰਟਰਨੈੱਟ 'ਤੇ ਸਰੋਤਾਂ ਰਾਹੀਂ ਦੇਖਿਆ ਜਾਂਦਾ ਹੈ।",
"title": "ਮੈਂ ਇੱਕ ਸ਼ੋਅ ਜਾਂ ਫ਼ਿਲਮ ਲਈ ਕਿੱਥੇ ਬੇਨਤੀ ਕਰ ਸਕਦਾ/ਸਕਦੀ ਹਾਂ?"
},
"q3": {
"title": "ਖੋਜ ਨਤੀਜੇ ਸ਼ੋਅ ਜਾਂ ਫ਼ਿਲਮ ਦਿਖਾਉਂਦੇ ਹਨ, ਮੈਂ ਇਸਨੂੰ ਕਿਉਂ ਨਹੀਂ ਚਲਾ ਸਕਦਾ?"
},
"title": "ਮੂਵੀ-ਵੈੱਬ ਡੀ ਬਾਰੇ"
},
"actions": {
"copied": "ਕਾਪੀਡ",
"copy": "ਕਾਪੀ"
},
"auth": {
"deviceNameLabel": "ਡਿਵਾਈਸ ਦਾ ਨਾਮ",
"generate": {
"passphraseFrameLabel": "ਪੈਰਾਫਰਾਜ਼"
},
"login": {
"passphrasePlaceholder": "ਪੈਰਾਫਰਾਜ਼",
"submit": "ਲੌਗ-ਇਨ"
},
"register": {
@ -12,7 +34,31 @@
}
},
"trust": {
"no": "ਵਾਪਸ ਜਾਓ"
"no": "ਵਾਪਸ ਜਾਓ",
"yes": "ਮੈਨੂੰ ਇਸ ਸਰਵਰ 'ਤੇ ਭਰੋਸਾ ਹੈ"
}
},
"footer": {
"links": {
"discord": "ਡਿਸਕੋਰਡ",
"dmca": "ਡੀ.ਐਮ.ਸੀ.ਏ",
"github": "ਗਿਥਬ"
}
},
"global": {
"name": "ਮੂਵੀ-ਵੈੱਬ",
"pages": {
"about": "ਬਾਰੇ",
"dmca": "ਡੀ.ਐਮ.ਸੀ.ਏ",
"login": "ਲਾਗਿਨ",
"pagetitle": "{{title}} - ਮੂਵੀ-ਵੈੱਬ",
"register": "ਰਜਿਸਟਰ",
"settings": "ਸੈਟਿੰਗਾਂ"
}
},
"home": {
"bookmarks": {
"sectionTitle": "ਬੁੱਕਮਾਰਕ"
}
}
}

View File

@ -112,7 +112,7 @@
},
"search": {
"allResults": "That's all we have, me heartie!",
"failed": "Failed to find media, try again!",
"failed": "Arrrr failed to find media, try again!",
"loading": "Hold yer horses, me heartie!",
"noResults": "We couldn't find anythin', arrr!",
"placeholder": "What do ye want to watch?",

View File

@ -307,6 +307,11 @@
"remaining": "Zostało {{timeLeft}} • Skończ o {{timeFinished, datetime}}",
"shortRegular": "{{timeWatched}}",
"shortRemaining": "-{{timeLeft}}"
},
"turnstile": {
"error": "Nie udało się zweryfikować Twojego człowieczeństwa. Proszę spróbuj ponownie.",
"title": "Musimy sprawdzić, czy jesteś człowiekiem.",
"verifyingHumanity": "Sprawdzasz swoje człowieczeństwo..."
}
},
"screens": {

View File

@ -206,7 +206,8 @@
"episodeBadge": "E{{episode}}",
"loadingError": "Erro ao carregar temporada",
"loadingList": "Carregando...",
"loadingTitle": "Carregando..."
"loadingTitle": "Carregando...",
"unairedEpisodes": "Um ou mais episódios nesta temporada foram desabilitados porque ainda não foram ao ar."
},
"playback": {
"speedLabel": "Velocidade de reprodução",
@ -258,6 +259,10 @@
}
},
"metadata": {
"api": {
"text": "Não foi possível carregar os metadados da API. Por favor, verifique sua conexão com a internet.",
"title": "Falha ao carregar os metadados da API"
},
"failed": {
"badge": "Falhou",
"homeButton": "Ir para o início",
@ -307,6 +312,12 @@
"remaining": "{{timeLeft}} restantes • Terminar às {{timeFinished, datetime}}",
"shortRegular": "{{timeWatched}}",
"shortRemaining": "-{{timeLeft}}"
},
"turnstile": {
"description": "Por favor, confirme que você é um humano completando o Captcha à direita. Isso é para manter movie-web seguro!",
"error": "Falha ao verificar sua humanidade. Por favor, tente novamente.",
"title": "Precisamos verificar se você é humano.",
"verifyingHumanity": "Verificando sua humanidade..."
}
},
"screens": {

View File

@ -1,7 +1,7 @@
{
"about": {
"description": "movie-web este o aplicație web care caută fluxuri pe internet. Echipa urmărește o abordare mai ales minimalistă a consumului de conținut.",
"faqTitle": "Intrebari obisnuite",
"faqTitle": "Întrebări obișnuite",
"q1": {
"body": "movie-web nu găzduiește niciun conținut. Când faceți clic pe ceva pentru a viziona, pe Internet este căutat media selectată (Pe ecranul de încărcare și în fila „Surse video”, puteți vedea ce sursă utilizați). Media nu este niciodată încărcată de movie-web, totul se face prin acest mecanism de căutare.",
"title": "De unde vine conținutul?"
@ -18,7 +18,7 @@
},
"actions": {
"copied": "Copiat",
"copy": "Copie"
"copy": "Copiați"
},
"auth": {
"createAccount": "Nu aveți încă un cont? <0>Creați un cont.</0>",
@ -26,8 +26,8 @@
"deviceNamePlaceholder": "Telefon personal",
"generate": {
"description": "Fraza de acces acționează ca nume de utilizator și parolă. Asigurați-vă că îl păstrați în siguranță, deoarece va trebui să îl introduceți pentru a vă conecta la contul dvs",
"next": "Mi-am salvat expresia de acces",
"passphraseFrameLabel": "Fraza de acces",
"next": "Mi-am salvat fraza de acces",
"passphraseFrameLabel": "Frază de acces",
"title": "Fraza dvs. de acces"
},
"hasAccount": "ai deja un cont? <0>Autentificați-vă aici.</0>",
@ -35,19 +35,19 @@
"description": "Vă rugăm să introduceți fraza de acces pentru a vă conecta la contul dvs",
"deviceLengthError": "Introduceți un nume de dispozitiv",
"passphraseLabel": "Expresie de acces din 12 cuvinte",
"passphrasePlaceholder": "Fraza de acces",
"submit": "Log in",
"passphrasePlaceholder": "Frază de acces",
"submit": "Conectează te",
"title": "conecteaza-te la contul tau",
"validationError": "Fraza de acces incorectă sau incompletă"
"validationError": "Fraza de acces este incorectă sau incompletă"
},
"register": {
"information": {
"color1": "Culoarea profilului unu",
"color2": "Culoarea profilului doi",
"header": "Introduceți un nume pentru dispozitivul dvs. și alegeți culorile și o pictogramă de utilizator la alegerea dvs",
"icon": "Pictograma utilizator",
"icon": "Pictograma utilizatorului",
"next": "Următorul",
"title": "Informatii despre cont"
"title": "Informații despre cont"
}
},
"trust": {
@ -177,6 +177,29 @@
"enabled": "Casting pe dispozitiv..."
},
"menus": {
"downloads": {
"disclaimer": "Descărcările sunt luate direct de la furnizor. Movie-web nu are control cum descărcările sunt furnizate.",
"downloadPlaylist": "Descarcă lista de redare",
"downloadSubtitle": "Descărcați subtitlul curente",
"downloadVideo": "Descarcă video",
"hlsDisclaimer": "Descărcările sunt preluate direct de la furnizor. movie-web nu are control asupra modului în care sunt furnizate descărcările. Vă rugăm să rețineți că descărcați o listă de redare HLS, aceasta este destinată utilizatorilor familiar cu streamingul avansat.",
"onAndroid": {
"1": "Pentru a descărca pe android, apăsați butonul de descărcare apoi în pagina nouă,<bold>apăsați și țineți</bold> pe video, apoi selectați <bold>salvează</bold>.",
"shortTitle": "Descărcare / Android",
"title": "Descărcare pe Android"
},
"onIos": {
"1": "Pentru a instala pe iOS, apăsați butonul de instalare apoi în pagina nouă apăsați <bold><ios_share /></bold>, apoi <bold>Salvează in File <ios_files /></bold>.",
"shortTitle": "Descărcare / iOS",
"title": "Descărcare pe iOS"
},
"onPc": {
"1": "Pe calculator, apăsați butonul de descărcare apoi în pagina nouă, apăsați click drept pe video și selectați <bold> Salvați videoul ca</bold>",
"shortTitle": "Descarcă / Calculator",
"title": "Descărcare pe calculator"
},
"title": "Descarcă"
},
"episodes": {
"button": "Episoade",
"emptyState": "Nu sunt episoade in sezonul acesta, reveniți mai târziu!",
@ -186,6 +209,16 @@
"loadingTitle": "Se încarcă...",
"unairedEpisodes": "Unul sau mai multe episoade din sezonul acesta sunt indisponibile deoarece incă nu au venit încă."
},
"playback": {
"speedLabel": "Viteză de redare",
"title": "Setările de redare"
},
"quality": {
"automaticLabel": "Calitate automată",
"hint": "Puteți încerca <0>Schimbarea sursei</0> pentru a primi opțiuni de calitate diferită.",
"iosNoQuality": "Din cauza limitărilor definite de Apple, selecția calității nu este disponibilă pe iOS pentru această sursă. Puteți încerca să <0>treceți la altă sursă</0> pentru a obține diferite opțiuni de calitate.",
"title": "Calitate"
},
"settings": {
"downloadItem": "Descarcă",
"enableSubtitles": "Activează subtitlurile",
@ -197,6 +230,10 @@
"videoSection": "Setări video"
},
"sources": {
"failed": {
"text": "Aici a fost o eroare încercând să găsim video, încercați o altă sursă.",
"title": "Nu s-a răzuit"
},
"noEmbeds": {
"text": "Nu am putut găsi nicio incorporare, vă rog să încercați o altă sursă.",
"title": "Nu a fost găsită nicio încorporare"
@ -207,10 +244,194 @@
},
"title": "Surse",
"unknownOption": "Necunoscut"
},
"subtitles": {
"customChoice": "Selectați subtitlul din filă",
"customizeLabel": "Costumizează",
"offChoice": "Oprit",
"settings": {
"backlink": "Subtitluri personalizate",
"delay": "Intârziera subtitlurilor",
"fixCapitals": "Fixați capitalizația"
},
"title": "Subtitluri",
"unknownLanguage": "Necunoscut"
}
},
"metadata": {
"api": {
"text": "Metadatele API nu au putut fi încărcate, vă rugăm să vă verificați conexiunea la internet.",
"title": "Nu s-a putut incărca API metadata"
},
"failed": {
"badge": "Eșuat",
"homeButton": "Du-te acasă :)",
"text": "Nu s-au putut încărca metadatele media din TMDB. Vă rugăm să verificați dacă TMDB este oprit sau blocat pe conexiunea ta. la internet.",
"title": "Nu s-au încărcat metadatele"
},
"notFound": {
"badge": "Nu a fost găsit",
"homeButton": "Înapoi acasă :)",
"text": "Nu am putut găsi media pe care ați cerut-o. Poate este ștearsă sau ați manipulat adresa URL.",
"title": "Nu am putut găsi acel media."
}
},
"nextEpisode": {
"cancel": "Anulare",
"next": "Episodul următor"
},
"playbackError": {
"badge": "Eroare la redare",
"errors": {
"errorAborted": "Preluarea media a fost întreruptă la cererea utilizatorului.",
"errorDecode": "În ciuda faptului că anterior a fost determinată a fi utilizabilă, a apărut o eroare în timpul încercării de a decoda resursa media, rezultând o eroare.",
"errorGenericMedia": "Eroare media cumva sa întâmplat.",
"errorNetwork": "A apărut o eroare de rețea care a împiedicat preluarea cu succes a suportului media, în ciuda faptului că fusese disponibil anterior.",
"errorNotSupported": "Obiectul media sau furnizorul media nu este acceptat."
},
"homeButton": "Du-te acasă :)",
"text": "A apărut o eroare la încercarea de a reda media. Vă rugăm să încercați din nou.",
"title": "O eroare la redarea videoului!"
},
"scraping": {
"items": {
"failure": "Sa întâmplat o eraore",
"notFound": "Nu are acel video",
"pending": "Verificând pentru videouri..."
},
"notFound": {
"badge": "Nu a fost găsit",
"detailsButton": "Arată detalii",
"homeButton": "Du-te acasă",
"text": "Am căutat prin furnizorii noștri și nu putem găsi media pe care o căutați! Nu găzduim mass-media și nu avem control asupra a ceea ce este disponibil. Vă rugăm să faceți clic pe „Afișați detalii” de mai jos pentru mai multe detalii.",
"title": "Nu am putut găsi aia"
}
},
"time": {
"regular": "{{timeWatched}} / {{duration}}",
"remaining": "{{timeLeft}} rămas • Se termină la{{timeFinished, datetime}}",
"shortRegular": "{{timeWatched}}",
"shortRemaining": "-{{timeLeft}}"
},
"turnstile": {
"description": "Vă rog să vă verificați umanitatea completând acest captcha in partea dreapta. Asta este pentru a pastra movie-web sigur!",
"error": "Verificarea umanității tale a eșuat. Încercați din nou.",
"title": "Noi trebuie să verificăm dacă sunteți un om.",
"verifyingHumanity": "Verificați-vă umanitatea voastră..."
}
},
"screens": {
"dmca": {
"text": "Bun venit pe pagina de contact DMCA a movie-web! Respectăm drepturile de proprietate intelectuală și dorim să abordăm rapid orice problemă privind drepturile de autor. Dacă credeți că lucrarea dumneavoastră protejată prin drepturi de autor a fost utilizată necorespunzător pe platforma noastră, vă rugăm să trimiteți o notificare detaliată DMCA la e-mailul de mai jos. Vă rugăm să includeți o descriere a materialului protejat prin drepturi de autor, detaliile dvs. de contact și o declarație de bună credință. Ne angajăm să rezolvăm aceste probleme cu promptitudine și apreciem cooperarea dumneavoastră pentru a menține movie-web un loc care respectă creativitatea și drepturile de autor.",
"title": "DMCA"
},
"loadingApp": "Se încarcă aplicația",
"loadingUser": "Se încarcă profilul tău",
"loadingUserError": {
"logout": "Deconectare",
"reset": "Resetare servere personalizate",
"text": "Nu s-a încărcat profilul dvs",
"textWithReset": "Nu s-a încărcat profilul dvs. de pe serverul personalizat, doriți să reveniți la serverul implicit?"
},
"migration": {
"failed": "Eroare la migrarea datelor voastre.",
"inProgress": "Vă rugăm să așteptați, migrăm datele dvs. Acest lucru nu ar trebui să dureze mult."
}
},
"settings": {
"account": {
"accountDetails": {
"deviceNameLabel": "Numele dispozitivului",
"deviceNamePlaceholder": "Telefonul personal",
"editProfile": "Editează",
"logoutButton": "Deconectați-vă"
},
"actions": {
"delete": {
"button": "Șterge contul",
"confirmButton": "Șterge contul",
"confirmDescription": "Ești sigur că vrei să ștergi contul tău? Toate datele tale vor dispărea!",
"confirmTitle": "Ești sigur?",
"text": "Acțiunea asta este ireversibilă. Toate datele tale vor dispărea și nimic nu va putea fi recuperat.",
"title": "Șterge contul"
},
"title": "Acțiuni"
},
"devices": {
"deviceNameLabel": "Numele dispozitivului",
"failed": "Eroare la încărcarea sesiunii",
"removeDevice": "Șterge",
"title": "Dispozitive"
},
"profile": {
"finish": "Termină editarea",
"firstColor": "Culoarea profilului unu",
"secondColor": "Culoare profilului doi",
"title": "Editează poza de profil",
"userIcon": "Iconița utilizatorului"
},
"register": {
"cta": "Începeți",
"text": "Partajați progresul vizionării între dispozitive și păstrați-le sincronizate.",
"title": "Sincronizare în cloud"
},
"title": "Cont"
},
"appearance": {
"activeTheme": "Activ",
"themes": {
"blue": "Albastru",
"default": "Implicit",
"gray": "Gri",
"red": "Roșu",
"teal": "Albastru verziu"
},
"title": "Aparență"
},
"connections": {
"server": {
"description": "Dacă doriți să vă conectați la un backend personalizat pentru a vă stoca datele, activați acest lucru și furnizați adresa URL.",
"label": "Server personalizat",
"urlLabel": "Adresa URL personalizată a serverului"
},
"title": "Conexiuni",
"workers": {
"addButton": "Adaugă un nou muncitor",
"description": "Pentru ca aplicația să funcționeze, tot traficul este direcționat prin proxy. Activați acest lucru dacă doriți să vă aduceți proprii lucrători.",
"emptyState": "Niciun muncitor incă, adaugă unu",
"label": "Utilizați lucrători proxy personalizați",
"urlLabel": "Adresele URL ale lucrătorilor",
"urlPlaceholder": "https://"
}
},
"locale": {
"language": "Limba aplicației",
"languageDescription": "Limbajul aplicat întregii aplicații.",
"title": "Local"
},
"reset": "Resetare",
"save": "Salvează",
"sidebar": {
"info": {
"appVersion": "Versiunea aplicației",
"backendUrl": "URL de backend",
"backendVersion": "Versiunea backend",
"hostname": "Numele gazdei",
"insecure": "Nesigur",
"notLoggedIn": "Nu sunteți autentificat",
"secure": "Securizat",
"title": "Informația aplicației",
"unknownVersion": "Necunoscut",
"userId": "ID-ul utilizatorului"
}
},
"subtitles": {
"backgroundLabel": "Opacitatea fundalului",
"colorLabel": "Culoare",
"previewQuote": "nu trebuie să mă tem. Frica este ucigașul minții.",
"textSizeLabel": "Dimensiunea textului",
"title": "Subtitluri"
},
"unsaved": "Aveți modificări nesalvate"
}
}

View File

@ -24,10 +24,18 @@
"createAccount": "У вас ещё нет аккаунта? <0>Создайте учётную запись.</0>",
"deviceNameLabel": "Имя устройства",
"deviceNamePlaceholder": "Личный телефон",
"generate": {
"description": "Твоя фраза работает как твой пароль и имя. Сделай чтобы она была в защите чтобы ты смог зайти снова в аккаунт",
"next": "Я сохранил мою фразу",
"passphraseFrameLabel": "Фраза",
"title": "Твоя фраза"
},
"hasAccount": "У вас уже есть аккаунт? <0>Войдите здесь.</0>",
"login": {
"description": "Пожалуйста напишите вашу фразу чтобы зайти в аккаунт",
"deviceLengthError": "Введите имя устройства",
"passphraseLabel": "12-словная парольная фраза",
"passphrasePlaceholder": "Фраза",
"submit": "Авторизоваться",
"title": "Войдите в свой аккаунт",
"validationError": "Неверная или неполная парольная фраза"
@ -43,17 +51,25 @@
}
},
"trust": {
"failed": {
"text": "Ты её конфигурировал правильно?",
"title": "Не удалось связаться с сервером"
},
"host": "Вы подключаетесь к <0>{{hostname}}</0> - пожалуйста, подтвердите, что вы доверяете ему, прежде чем создавать учётную запись",
"no": "Вернуться назад",
"title": "Доверяете ли вы этому серверу?",
"yes": "Я доверяю этому серверу"
},
"verify": {
"description": "Пожалуйста, введите фразу, полученную ранее, чтобы подтвердить, что вы ее сохранили, и создать свой аккаунт",
"invalidData": "Дата инвалидная",
"noMatch": "Парольная фраза не совпадает",
"register": "Создать учётную запись"
}
},
"errors": {
"details": "Подробности ошибки",
"reloadPage": "Перезагрузить страницу",
"showError": "Показать сведения об ошибке"
},
"footer": {
@ -84,9 +100,13 @@
"continueWatching": {
"sectionTitle": "Продолжить просмотр"
},
"mediaList": {
"stopEditing": "Завершить редактирование"
},
"search": {
"allResults": "Это все, что у нас есть!",
"loading": "Загрузка..."
"loading": "Загрузка...",
"sectionTitle": "Результаты поиска"
}
},
"media": {
@ -112,6 +132,9 @@
"close": "Закрыть"
},
"player": {
"back": {
"default": "Вернуться на главную"
},
"menus": {
"downloads": {
"downloadSubtitle": "Скачать текущие субтитры",
@ -119,6 +142,8 @@
},
"episodes": {
"button": "Эпизоды",
"emptyState": "В этом сезоне нет ни одной серии, загляните позже!",
"episodeBadge": "Э{{episode}}",
"loadingError": "Ошибка при загрузке сезона",
"loadingList": "Загрузка...",
"loadingTitle": "Загрузка..."
@ -132,6 +157,7 @@
},
"settings": {
"downloadItem": "Скачать",
"enableSubtitles": "Включить субтитры",
"playbackItem": "Настройки воспроизведения",
"qualityItem": "Качество",
"sourceItem": "Видео источники",
@ -139,9 +165,16 @@
"videoSection": "Настройки видео"
},
"subtitles": {
"settings": {
"backlink": "Пользовательские субтитры"
},
"title": "Субтитры"
}
},
"nextEpisode": {
"cancel": "Отмена",
"next": "След. эпизод"
},
"playbackError": {
"badge": "Ошибка воспроизведения",
"errors": {
@ -154,6 +187,8 @@
"settings": {
"account": {
"accountDetails": {
"deviceNameLabel": "Имя устройства",
"editProfile": "Редактировать",
"logoutButton": "Выйти"
},
"actions": {
@ -169,6 +204,7 @@
},
"devices": {
"deviceNameLabel": "Имя устройства",
"failed": "Не удалось загрузить сеансы",
"removeDevice": "Удалить",
"title": "Устройства"
},
@ -185,7 +221,7 @@
"title": "Аккаунт"
},
"appearance": {
"activeTheme": "Активная тема",
"activeTheme": "Активная",
"themes": {
"blue": "Cиний",
"default": "Стандартный",
@ -221,6 +257,7 @@
"sidebar": {
"info": {
"appVersion": "Версия приложения",
"hostname": "Имя хоста",
"notLoggedIn": "Вы не авторизованы",
"secure": "Безопасный",
"title": "Информация о приложении",

View File

@ -206,7 +206,8 @@
"episodeBadge": "Е{{episode}}",
"loadingError": "Помилка завантаження сезону",
"loadingList": "Завантаження...",
"loadingTitle": "Завантаження..."
"loadingTitle": "Завантаження...",
"unairedEpisodes": "Один або кілька епізодів у цьому сезоні недоступні, оскільки вони ще не вийшли в ефір."
},
"playback": {
"speedLabel": "Швидкість відтворення",
@ -258,6 +259,10 @@
}
},
"metadata": {
"api": {
"text": "Не вдалося завантажити метадані API, перевірте підключення до Інтернету.",
"title": "Не вдалося завантажити метадані API"
},
"failed": {
"badge": "Не вдалося",
"homeButton": "Повернутися на головну",
@ -307,6 +312,12 @@
"remaining": "{{timeLeft}} залишилось • Закінчити в {{timeFinished, datetime}}",
"shortRegular": "{{timeWatched}}",
"shortRemaining": "-{{timeLeft}}"
},
"turnstile": {
"description": "Будь ласка, переконайтеся, що ви людина, заповнивши капчу праворуч. Це робиться для безпеки movie-web!",
"error": "Не вдалося підтвердити вашу людяність. Будь ласка, спробуйте ще раз.",
"title": "Ми повинні переконатися, що ви людина.",
"verifyingHumanity": "Перевіряємо вашу людяність..."
}
},
"screens": {
@ -323,7 +334,7 @@
"textWithReset": "Сталася помилка при завантаженні вашого профілю з вашого сервера, чи бажаєте повернутись на стандартний сервер?"
},
"migration": {
"failed": "Сталася помилка під час міграції даних",
"failed": "Сталася помилка під час міграції даних.",
"inProgress": "Будь ласка, зачекайте, відбувається міграція ваших даних. Це не повинно зайняти багато часу."
}
},
@ -386,7 +397,7 @@
"title": "З'єднання",
"workers": {
"addButton": "Додати нового працівника",
"description": "Щоб додаток працював, весь трафік маршрутизується через проксі-сервери. Увімкніть це, якщо ви хочете використовувати власні працівникию",
"description": "Щоб додаток працював, весь трафік маршрутизується через проксі-сервери. Увімкніть це, якщо ви хочете використовувати власні проксі воркери.",
"emptyState": "Немає працівників",
"label": "Використовувати власних проксі-працівників",
"urlLabel": "URL-у працівника",

View File

@ -1,4 +1,61 @@
{
"about": {
"description": "movie-web là một ứng dụng web tìm kiếm các truyền pháp trực tuyến trên internet. Nhóm phát triển ứng dụng này nhắm đến một cách tiêu thụ nội dung chủ yếu là đơn giản hơn.",
"faqTitle": "Các câu hỏi thường gặp",
"q1": {
"body": "movie-web không lưu trữ bất kì nội dung nào. Khi bạn bấm vào một cái gì đó để xem, ứng dụng sẽ tìm kiếm nội dung đó trên internet (Trên màn hình tải và trong tab 'nguồn video' bạn sẽ tìm thấy nguồn đang được dùng). Nội dung không bao giờ được tải lên trên movie-web, mọi thứ đều thông qua cơ chế tìm kiếm này.",
"title": "Nội dung đến từ đâu?"
},
"q2": {
"body": "Việc yêu cầu một chương trình truyền hình hoặc phim là bất khả thi bởi vì movie-web không quản lý nội dung nào. Tất cả nội dung được truyền thông qua các nguồn trên internet.",
"title": "Tôi có thể yêu cầu một chương trình truyền hình hoặc phim ở đâu?"
},
"q3": {
"body": "Các kết quả tìm kiếm được cung cấp bởi The Movie Database (TMDB) và hiện lên bất kể các nguồn của trang thực sự có lưu trữ nội dung hay không.",
"title": "Tại sao kết quả tìm kiếm hiển thị chương trình truyền hình hoặc phim nhưng tôi không thể chơi nó?"
},
"title": "Về movie-web"
},
"actions": {
"copied": "Đã sao chép",
"copy": "Sao chép"
},
"auth": {
"createAccount": "Chưa có tài khoản? <0>Hãy tạo tài khoản.</0>",
"deviceNameLabel": "Tên thiết bị",
"deviceNamePlaceholder": "Điện thoại cá nhân",
"generate": {
"description": "Mật ngữ của bạn đóng vai trò là tên người dùng và mật khẩu của bạn. Hãy giữ nó an toàn vì bạn sẽ cần nhập nó để đăng nhập vào tài khoản của bạn",
"next": "Tôi đã lưu giữ mật ngữ của mình",
"passphraseFrameLabel": "Mật ngữ",
"title": "Mật ngữ của bạn"
},
"hasAccount": "Đã có tài khoản? <0>Hãy đăng nhập.</0>",
"login": {
"description": "Hãy nhập mật ngữ của bạn để đăng nhập vào tài khoản",
"deviceLengthError": "Hãy nhập tên thiết bị",
"passphraseLabel": "Mật ngữ gồm 12 từ",
"passphrasePlaceholder": "Mật ngữ",
"submit": "Đăng nhập",
"title": "Đăng nhập vào tài khoản của bạn",
"validationError": "Mật ngữ không chính xác hoặc không đầy đủ"
},
"register": {
"information": {
"color1": "Màu hồ sơ số một",
"color2": "Màu hồ sơ số hai",
"header": "Hãy nhập tên cho thiết bị của bạn và chọn màu sắc và biểu tượng người dùng",
"icon": "Biểu tượng người dùng",
"next": "Tiếp theo",
"title": "Thông tin tài khoản"
}
},
"trust": {
"failed": {
"text": "Bạn đã lắp đặt nó một cách chính xác chưa?"
}
}
},
"global": {
"name": "movie-web"
},

View File

@ -259,6 +259,10 @@
}
},
"metadata": {
"api": {
"text": "无法载入 API 元数据,请检查您的互联网连接。",
"title": "载入 API 元数据失败"
},
"failed": {
"badge": "失败",
"homeButton": "返回首页",
@ -308,6 +312,12 @@
"remaining": "剩余 {{timeLeft}} • 完结于 {{timeFinished, datetime}}",
"shortRegular": "{{timeWatched}}",
"shortRemaining": "-{{timeLeft}}"
},
"turnstile": {
"description": "请完成右侧的验证码以验证您是人类。这是为了确保 movie-web 的安全!",
"error": "验证失败。请重试。",
"title": "我们需要验证您是人类。",
"verifyingHumanity": "正在验证您是否为人类…"
}
},
"screens": {

View File

@ -1,6 +1,7 @@
import { useCallback, useState } from "react";
import { useTranslation } from "react-i18next";
import { Avatar } from "@/components/Avatar";
import { Button } from "@/components/buttons/Button";
import { ColorPicker, initialColor } from "@/components/form/ColorPicker";
import { IconPicker, initialIcon } from "@/components/form/IconPicker";
@ -55,7 +56,13 @@ export function AccountCreatePart(props: AccountCreatePartProps) {
return (
<LargeCard>
<LargeCardText
icon={<Icon icon={Icons.USER} />}
icon={
<Avatar
profile={{ colorA, colorB, icon: userIcon }}
iconClass="text-3xl"
sizeClass="w-16 h-16"
/>
}
title={t("auth.register.information.title") ?? undefined}
>
{t("auth.register.information.header")}

View File

@ -1,5 +1,6 @@
import { useTranslation } from "react-i18next";
import { Avatar } from "@/components/Avatar";
import { Button } from "@/components/buttons/Button";
import { ColorPicker } from "@/components/form/ColorPicker";
import { IconPicker } from "@/components/form/IconPicker";
@ -24,9 +25,20 @@ export function ProfileEditModal(props: ProfileEditModalProps) {
return (
<Modal id={props.id}>
<ModalCard>
<Heading2 className="!mt-0">
<div className="flex justify-between items-center mb-9">
<Heading2 className="!mt-0 !mb-0">
{t("settings.account.profile.title")}
</Heading2>
<Avatar
profile={{
colorA: props.colorA,
colorB: props.colorB,
icon: props.userIcon,
}}
iconClass="text-2xl"
sizeClass="w-12 h-12"
/>
</div>
<div className="space-y-6">
<ColorPicker
label={t("settings.account.profile.firstColor")}

View File

@ -18,6 +18,7 @@ const defaultLanguageCodes: string[] = [
"bg-BG",
"bn-BD",
"cs-CZ",
"ca-AD",
"de-DE",
"el-GR",
"en-US",