Initial commit: OAuth IAM Laravel application

Laravel-based OAuth/IAM service with Passport, Vue 3 frontend, and
Docker Compose setup for local and production deployment.

Co-Authored-By: Claude Sonnet 5 <noreply@anthropic.com>
This commit is contained in:
2026-07-26 01:02:41 +02:00
commit c2b5291a74
174 changed files with 29318 additions and 0 deletions

229
lang/ca.json Normal file
View File

@@ -0,0 +1,229 @@
{
"(and :count more error)": "(i :count error més)",
"(and :count more errors)": "(i :count error més)|(i :count errors més)|(i :count errors més)",
"A decryption key is required.": "Cal una clau de desxifrat.",
"A Timeout Occurred": "S'ha produït un temps mort",
"Accept": "Acceptar",
"Accepted": "Acceptat",
"Action": "Acció",
"Actions": "Accions",
"Add": "Afegir",
"Add :name": "Afegeix :name",
"Admin": "Admin",
"Agree": "Acordar",
"All rights reserved.": "Tots els drets reservats.",
"Already Reported": "Ja s'ha informat",
"Archive": "Arxiu",
"Assign": "Assignar",
"Associate": "Associat",
"Attach": "Adjuntar",
"Bad Gateway": "Porta d'enllaç incorrecta",
"Bad Request": "Petició dolenta",
"Bandwidth Limit Exceeded": "Límit d'ample de banda excedit",
"Browse": "Navega",
"Cancel": "Cancel·la",
"Choose": "Triar",
"Choose :name": "Trieu :name",
"Choose File": "Tria el fitxer",
"Choose Image": "Trieu Imatge",
"Click to copy": "Feu clic per copiar",
"Client Closed Request": "Sol·licitud de client tancada",
"Close": "Tancar",
"Collapse": "Col·lapse",
"Collapse All": "Col · lapsar tot",
"Comment": "Comenta",
"Confirm": "Confirmar",
"Conflict": "Conflicte",
"Connect": "Connecta't",
"Connection Closed Without Response": "Connexió tancada sense resposta",
"Connection Timed Out": "Temps de connexió esgotat",
"Continue": "Continua",
"Create": "Crear",
"Create :name": "Crea :name",
"Created": "Creat",
"Delete": "Esborrar",
"Delete :name": "Suprimeix :name",
"Detach": "Separa",
"Details": "Detalls",
"Disable": "Deshabilitar",
"Discard": "Descartar",
"Done": "Fet",
"Down": "Avall",
"Duplicate": "Duplicat",
"Duplicate :name": "Duplicat: nom",
"Edit": "Edita",
"Edit :name": "Edita :name",
"Enable": "Habilitar",
"Encrypted environment file already exists.": "El fitxer d'entorn xifrat ja existeix.",
"Encrypted environment file not found.": "No s'ha trobat el fitxer d'entorn xifrat.",
"Environment file already exists.": "El fitxer d'entorn ja existeix.",
"Environment file not found.": "No s'ha trobat el fitxer d'entorn.",
"errors": "errors",
"Expand": "Ampliar",
"Expand All": "Amplia-ho tot",
"Expectation Failed": "L'expectativa ha fallat",
"Explanation": "Explicació",
"Export": "Exporta",
"Export :name": "Export :name",
"Failed Dependency": "Dependència fallida",
"File": "Dossier",
"Files": "Fitxers",
"Forbidden": "Prohibit",
"Found": "Trobat",
"Gateway Timeout": "Temps d'espera de la passarel·la",
"Go Home": "Aneu a l'inici",
"Go to page :page": "Aneu a la pàgina :page",
"Gone": "Desaparegut",
"Hello!": "Hola!",
"Hide": "Amaga",
"Hide :name": "Amaga :name",
"Home": "Inici",
"HTTP Version Not Supported": "Versió HTTP no compatible",
"I'm a teapot": "Sóc una tetera",
"If you did not create an account, no further action is required.": "Si no heu creat cap compte, no es requereix cap acció adicional.",
"If you did not request a password reset, no further action is required.": "Si no heu sol·licitat el restabliment de la contrasenya, obvieu aquest correu electrònic.",
"If you're having trouble clicking the \":actionText\" button, copy and paste the URL below\ninto your web browser:": "Si té algun problema per a fer clic al botó \":actionText\", copii i enganxi la següent URL al seu navegador web",
"IM Used": "IM utilitzat",
"Image": "Imatge",
"Impersonate": "Suplantar",
"Impersonation": "Suplantació d'identitat",
"Import": "Importar",
"Import :name": "Importació :name",
"Insufficient Storage": "Emmagatzematge insuficient",
"Internal Server Error": "error del servidor intern",
"Introduction": "Introducció",
"Invalid filename.": "Nom de fitxer no vàlid.",
"Invalid JSON was returned from the route.": "S'ha retornat un JSON no vàlid des de la ruta.",
"Invalid SSL Certificate": "Certificat SSL no vàlid",
"Length Required": "Longitud requerida",
"Like": "M'agrada",
"Load": "Carrega",
"Localize": "Localitza",
"Location": "Ubicació",
"Locked": "Tancat",
"Log In": "Entrar",
"Log Out": "Sortir",
"Login": "Entrar",
"Logout": "Sortir",
"Loop Detected": "Bucle detectat",
"Maintenance Mode": "mode de manteniment",
"Method Not Allowed": "Mètode no permès",
"Misdirected Request": "Sol·licitud mal dirigida",
"Moved Permanently": "Mogut permanentment",
"Multi-Status": "Multiestatus",
"Multiple Choices": "Opcions múltiples",
"Network Authentication Required": "Es requereix autenticació de xarxa",
"Network Connect Timeout Error": "Error de temps d'espera de connexió a la xarxa",
"Network Read Timeout Error": "Error de temps d'espera de lectura de la xarxa",
"New": "Nous",
"New :name": "Nou :name",
"No": "No",
"No Content": "Sense contingut",
"Non-Authoritative Information": "Informació no autoritzada",
"Not Acceptable": "No és acceptable",
"Not Extended": "No ampliat",
"Not Found": "No trobat",
"Not Implemented": "No implementat",
"Not Modified": "No modificat",
"of": "de",
"OK": "D'acord",
"Open": "Obert",
"Open in a current window": "Obre en una finestra actual",
"Open in a new window": "Obre en una finestra nova",
"Open in a parent frame": "Obre en un marc principal",
"Open in the topmost frame": "Obre al marc superior",
"Open on the website": "Obert al lloc web",
"Origin Is Unreachable": "L'origen és inabastable",
"Page Expired": "Pàgina caducada",
"Pagination Navigation": "Navegació de la paginació",
"Partial Content": "Contingut parcial",
"Payload Too Large": "Càrrega útil massa gran",
"Payment Required": "Pagament obligatori",
"Permanent Redirect": "Redirecció permanent",
"Please click the button below to verify your email address.": "Si us plau, feu clic al botó inferior per verificar la vostra adreça electrònica.",
"Precondition Failed": "La condició prèvia ha fallat",
"Precondition Required": "Condició prèvia requerida",
"Preview": "Vista prèvia",
"Price": "Preu",
"Processing": "Processament",
"Proxy Authentication Required": "Es requereix autenticació de proxy",
"Railgun Error": "Error de canó de ferrocarril",
"Range Not Satisfiable": "Interval no satisfactori",
"Record": "Registre",
"Regards,": "Salutacions,",
"Register": "Registre",
"Request Header Fields Too Large": "Els camps de la capçalera de la sol·licitud són massa grans",
"Request Timeout": "Temps d'espera esgotat",
"Reset Content": "Restablir contingut",
"Reset Password": "Restablir contrasenya",
"Reset your password": "Restableix la teva contrasenya",
"Restore": "Restauració",
"Restore :name": "Restaurar :name",
"results": "resultats",
"Retry With": "Torna-ho a provar amb",
"Save": "Desar",
"Save & Close": "Desa i tanca",
"Save & Return": "Guarda i torna",
"Save :name": "Estalvia :name",
"Search": "Cerca",
"Search :name": "Cerca :name",
"See Other": "Vegeu Altres",
"Select": "Seleccioni",
"Select All": "Seleccionar tot",
"Send": "Enviar",
"Server Error": "Error del servidor",
"Service Unavailable": "Servei no disponible",
"Session Has Expired": "La sessió ha caducat",
"Settings": "Configuració",
"Show": "Espectacle",
"Show :name": "Mostra :name",
"Show All": "Mostrar tots",
"Showing": "Mostrant",
"Sign In": "Inicieu la sessió",
"Solve": "Resol",
"SSL Handshake Failed": "SSL Handshake ha fallat",
"Start": "Començar",
"Stop": "Atura",
"Submit": "Presentar",
"Subscribe": "Subscrigui",
"Switch": "Interruptor",
"Switch To Role": "Canvia al rol",
"Switching Protocols": "Protocols de commutació",
"Tag": "Etiqueta",
"Tags": "Etiquetes",
"Temporary Redirect": "Redirecció temporal",
"The given data was invalid.": "Les dades proporcionades no eren vàlides.",
"The response is not a streamed response.": "La resposta no és una resposta en streaming.",
"The response is not a view.": "La resposta no és una visió.",
"This action is unauthorized.": "Aquesta acció no està autoritzada.",
"This password reset link will expire in :count minutes.": "Aquest enllaç de restabliment de contrasenya caducarà en :count minuts.",
"to": "a",
"Toggle navigation": "Commutar navegació",
"Too Early": "Massa aviat",
"Too Many Requests": "Massa peticions",
"Translate": "Traduir",
"Translate It": "Tradueix-ho",
"Unauthorized": "No autoritzat",
"Unavailable For Legal Reasons": "No disponible per motius legals",
"Unknown Error": "Error desconegut",
"Unpack": "Desempaquetar",
"Unprocessable Entity": "Entitat no processable",
"Unsubscribe": "Cancel·la la subscripció",
"Unsupported Media Type": "Tipus de suport no compatible",
"Up": "Amunt",
"Update": "Actualització",
"Update :name": "Actualització :name",
"Upgrade Required": "Actualització necessària",
"URI Too Long": "URI massa llarg",
"Use Proxy": "Utilitzeu el proxy",
"User": "Usuari",
"Variant Also Negotiates": "La variant també es negocia",
"Verify Email Address": "Confirmeu la vostra adreça electrònica",
"Verify your email address": "Verifica la teva adreça de correu electrònic",
"View": "Vista",
"View :name": "Vista :name",
"Web Server is Down": "El servidor web està caigut",
"Whoops!": "Vaja!",
"Yes": "Sí",
"You are receiving this email because we received a password reset request for your account.": "Heu rebut aquest correu electrònic perquè s'ha solicitat el restabliment de la contrasenya per al vostre compte."
}

119
lang/ca/actions.php Normal file
View File

@@ -0,0 +1,119 @@
<?php
declare(strict_types=1);
return [
'accept' => 'Acceptar',
'action' => 'Acció',
'actions' => 'Accions',
'add' => 'Afegeix',
'admin' => 'Admin',
'agree' => 'Acordar',
'archive' => 'Arxiu',
'assign' => 'Assignar',
'associate' => 'Associat',
'attach' => 'Adjuntar',
'browse' => 'Navega',
'cancel' => 'Cancel · lar',
'choose' => 'Tria',
'choose_file' => 'Trieu l\'arxiu',
'choose_image' => 'Trieu Imatge',
'click_to_copy' => 'Feu clic per copiar',
'close' => 'Tanca',
'collapse' => 'Col·lapse',
'collapse_all' => 'Col · lapsar tot',
'comment' => 'Comenta',
'confirm' => 'Confirmeu',
'connect' => 'Connecta\'t',
'create' => 'Crear',
'delete' => 'Suprimeix',
'detach' => 'Separar',
'details' => 'Detalls',
'disable' => 'Desactivar',
'discard' => 'Descartar',
'done' => 'Fet',
'down' => 'Avall',
'duplicate' => 'Duplicat',
'edit' => 'Edita',
'enable' => 'Activa',
'expand' => 'Ampliar',
'expand_all' => 'Amplia-ho tot',
'explanation' => 'Explicació',
'export' => 'Exporta',
'file' => 'Dossier',
'files' => 'Fitxers',
'go_home' => 'Aneu a l\'inici',
'hide' => 'Amaga',
'home' => 'Inici',
'image' => 'Imatge',
'impersonate' => 'Suplantar la identitat',
'impersonation' => 'Suplantació d\'identitat',
'import' => 'Importar',
'introduction' => 'Introducció',
'like' => 'M\'agrada',
'load' => 'Carrega',
'localize' => 'Localitza',
'log_in' => 'Iniciar Sessió',
'log_out' => 'Tancar sessió',
'named' => [
'add' => 'Afegeix :name',
'choose' => 'Trieu :name',
'create' => 'Crea :name',
'delete' => 'Suprimeix :name',
'duplicate' => 'Duplicat: nom',
'edit' => 'Edita :name',
'export' => 'Export :name',
'hide' => 'Amaga :name',
'import' => 'Importació :name',
'new' => 'Nou :name',
'restore' => 'Restaurar :name',
'save' => 'Estalvia :name',
'search' => 'Cerca :name',
'show' => 'Mostra :name',
'update' => 'Actualització :name',
'view' => 'Vista :name',
],
'new' => 'Nou',
'no' => 'No',
'open' => 'Obert',
'open_website' => 'Obert al lloc web',
'preview' => 'Vista prèvia',
'price' => 'Preu',
'record' => 'Registre',
'restore' => 'Restaurar',
'save' => 'Desa',
'save_and_close' => 'Desa i tanca',
'save_and_return' => 'Guarda i torna',
'search' => 'Cerca',
'select' => 'Seleccioneu',
'select_all' => 'Seleccionar tot',
'send' => 'Enviar',
'settings' => 'Configuració',
'show' => 'Espectacle',
'show_all' => 'Mostrar tots',
'sign_in' => 'Inicieu la sessió',
'solve' => 'Resol',
'start' => 'Començar',
'stop' => 'Atura',
'submit' => 'Presentar',
'subscribe' => 'Subscriu-te',
'switch' => 'Interruptor',
'switch_to_role' => 'Canvia al rol',
'tag' => 'Etiqueta',
'tags' => 'Etiquetes',
'target_link' => [
'blank' => 'Obre en una finestra nova',
'parent' => 'Obre en un marc principal',
'self' => 'Obre en una finestra actual',
'top' => 'Obre al marc superior',
],
'translate' => 'Traduir',
'translate_it' => 'Tradueix-ho',
'unpack' => 'Desempaquetar',
'unsubscribe' => 'Cancel·la la subscripció',
'up' => 'Amunt',
'update' => 'Actualització',
'user' => 'Usuari',
'view' => 'Veure',
'yes' => 'Sí',
];

9
lang/ca/auth.php Normal file
View File

@@ -0,0 +1,9 @@
<?php
declare(strict_types=1);
return [
'failed' => 'Aquestes credencials no concorden amb els nostres registres.',
'password' => 'La contrasenya és incorrecta.',
'throttle' => 'Ha superat el nombre màxim d\'intents d\'accés. Si us plau, torni a intentar-ho en :seconds segons.',
];

84
lang/ca/http-statuses.php Normal file
View File

@@ -0,0 +1,84 @@
<?php
declare(strict_types=1);
return [
'0' => 'Error desconegut',
'100' => 'Continua',
'101' => 'Protocols de commutació',
'102' => 'Processament',
'200' => 'D\'acord',
'201' => 'Creat',
'202' => 'Acceptat',
'203' => 'Informació no autoritzada',
'204' => 'Sense contingut',
'205' => 'Restablir contingut',
'206' => 'Contingut parcial',
'207' => 'Multiestatus',
'208' => 'Ja s\'ha informat',
'226' => 'IM utilitzat',
'300' => 'Opcions múltiples',
'301' => 'Mogut permanentment',
'302' => 'Trobat',
'303' => 'Vegeu Altres',
'304' => 'No modificat',
'305' => 'Utilitzeu el proxy',
'307' => 'Redirecció temporal',
'308' => 'Redirecció permanent',
'400' => 'Petició dolenta',
'401' => 'No autoritzat',
'402' => 'Pagament obligatori',
'403' => 'Prohibit',
'404' => 'No trobat',
'405' => 'Mètode no permès',
'406' => 'No és acceptable',
'407' => 'Es requereix autenticació de proxy',
'408' => 'Temps d\'espera esgotat',
'409' => 'Conflicte',
'410' => 'Desaparegut',
'411' => 'Longitud requerida',
'412' => 'La condició prèvia ha fallat',
'413' => 'Càrrega útil massa gran',
'414' => 'URI massa llarg',
'415' => 'Tipus de suport no compatible',
'416' => 'Interval no satisfactori',
'417' => 'L\'expectativa ha fallat',
'418' => 'Sóc una tetera',
'419' => 'La sessió ha caducat',
'421' => 'Sol·licitud mal dirigida',
'422' => 'Entitat no processable',
'423' => 'Tancat',
'424' => 'Dependència fallida',
'425' => 'Massa aviat',
'426' => 'Actualització necessària',
'428' => 'Condició prèvia requerida',
'429' => 'Massa sol·licituds',
'431' => 'Els camps de la capçalera de la sol·licitud són massa grans',
'444' => 'Connexió tancada sense resposta',
'449' => 'Torna-ho a provar amb',
'451' => 'No disponible per motius legals',
'499' => 'Sol·licitud de client tancada',
'500' => 'error del servidor intern',
'501' => 'No implementat',
'502' => 'Porta d\'enllaç incorrecta',
'503' => 'mode de manteniment',
'504' => 'Temps d\'espera de la passarel·la',
'505' => 'Versió HTTP no compatible',
'506' => 'La variant també es negocia',
'507' => 'Emmagatzematge insuficient',
'508' => 'Bucle detectat',
'509' => 'Límit d\'ample de banda excedit',
'510' => 'No ampliat',
'511' => 'Es requereix autenticació de xarxa',
'520' => 'Error desconegut',
'521' => 'El servidor web està caigut',
'522' => 'Temps de connexió esgotat',
'523' => 'L\'origen és inabastable',
'524' => 'S\'ha produït un temps mort',
'525' => 'SSL Handshake ha fallat',
'526' => 'Certificat SSL no vàlid',
'527' => 'Error de canó de ferrocarril',
'598' => 'Error de temps d\'espera de lectura de la xarxa',
'599' => 'Error de temps d\'espera de connexió a la xarxa',
'unknownError' => 'Error desconegut',
];

13
lang/ca/messages.php Normal file
View File

@@ -0,0 +1,13 @@
<?php
return [
'invalid_credentials' => 'Credencials no vàlides.',
'account_deactivated' => 'Aquest compte està desactivat.',
'account_pending_approval' => 'El teu compte està pendent d\'aprovació per un administrador.',
'registration_pending' => 'Compte creat. Un administrador l\'ha d\'aprovar abans que puguis entrar.',
'cannot_remove_own_admin_role' => 'No et pots treure el rol d\'admin a tu mateix.',
'cannot_delete_self' => 'No pots esborrar el teu propi compte.',
'cannot_delete_last_admin' => 'No pots esborrar l\'últim administrador.',
'self_service_requires_user' => 'Aquest recurs és self-service: necessita un token amb un usuari associat (no funciona amb client_credentials).',
'user_not_trashed' => 'Aquest usuari no és a la paperera.',
];

8
lang/ca/pagination.php Normal file
View File

@@ -0,0 +1,8 @@
<?php
declare(strict_types=1);
return [
'next' => 'Següent &raquo;',
'previous' => '&laquo; Anterior',
];

11
lang/ca/passwords.php Normal file
View File

@@ -0,0 +1,11 @@
<?php
declare(strict_types=1);
return [
'reset' => 'La contrasenya s\'ha restablert!',
'sent' => 'Li hem enviat un correu electrònic amb un enllaç per a reiniciar la teva contrasenya!',
'throttled' => 'Si us plau, esperi abans de tornar-ho a intentar.',
'token' => 'Aquest token de recuperació de contrasenya és invàlid.',
'user' => 'No existeix cap usuari amb aquest correu.',
];

289
lang/ca/validation.php Normal file
View File

@@ -0,0 +1,289 @@
<?php
declare(strict_types=1);
return [
'accepted' => ':Attribute ha de ser acceptat.',
'accepted_if' => 'El :attribute s\'ha d\'acceptar quan :other és :value.',
'active_url' => ':Attribute no és un URL vàlid.',
'after' => ':Attribute ha de ser una data posterior a :date.',
'after_or_equal' => ':Attribute ha de ser una data posterior o igual a :date.',
'alpha' => ':Attribute només pot contenir lletres.',
'alpha_dash' => ':Attribute només pot contenir lletres, números i guions.',
'alpha_num' => ':Attribute només pot contenir lletres i números.',
'any_of' => 'El camp :attribute no és vàlid.',
'array' => ':Attribute ha de ser una matriu.',
'ascii' => 'El :attribute només ha de contenir caràcters i símbols alfanumèrics d\'un sol byte.',
'base64' => 'The :attribute field must be a valid Base64 string.',
'before' => ':Attribute ha de ser una data anterior a :date.',
'before_or_equal' => ':Attribute ha de ser una data anterior o igual a :date.',
'between' => [
'array' => ':Attribute ha de tenir entre :min - :max ítems.',
'file' => ':Attribute ha de pesar entre :min - :max kilobytes.',
'numeric' => ':Attribute ha d\'estar entre :min - :max.',
'string' => ':Attribute ha de tenir entre :min - :max caràcters.',
],
'boolean' => 'El camp :attribute ha de ser verdader o fals',
'can' => 'El camp :attribute conté un valor no autoritzat.',
'confirmed' => 'La confirmació de :attribute no coincideix.',
'contains' => 'Al camp :attribute li falta un valor obligatori.',
'current_password' => 'La contrasenya és incorrecta.',
'date' => ':Attribute no és una data vàlida.',
'date_equals' => 'El :attribute ha de ser una data igual a :date.',
'date_format' => 'El camp :attribute no concorda amb el format :format.',
'decimal' => 'El :attribute ha de tenir :decimal decimals.',
'declined' => 'Els :attribute s\'han de rebutjar.',
'declined_if' => 'El :attribute s\'ha de rebutjar quan :other és :value.',
'different' => ':Attribute i :other han de ser diferents.',
'digits' => ':Attribute ha de tenir :digits dígits.',
'digits_between' => ':Attribute ha de tenir entre :min i :max dígits.',
'dimensions' => 'Les dimensions de la imatge :attribute no són vàlides.',
'distinct' => 'El camp :attribute té un valor duplicat.',
'doesnt_contain' => 'El camp :attribute no ha de contenir cap dels següents: :values.',
'doesnt_end_with' => 'El :attribute no pot acabar amb un dels següents: :values.',
'doesnt_start_with' => 'El :attribute no pot començar amb un dels següents: :values.',
'email' => ':Attribute no és un e-mail vàlid',
'encoding' => 'El camp :attribute s\'ha de codificar en :encoding.',
'ends_with' => 'La :attribute ha d\'acabar amb una de les següents: :values.',
'enum' => 'El :attribute seleccionat no és vàlid.',
'exists' => ':Attribute és invàlid.',
'extensions' => 'El camp :attribute ha de tenir una de les extensions següents: :values.',
'file' => 'El camp :attribute ha de ser un arxiu.',
'filled' => 'El camp :attribute és obligatori.',
'gt' => [
'array' => 'El :attribute ha de tenir més de :value ítems.',
'file' => 'El :attribute ha de ser superior a :value kilobytes.',
'numeric' => 'El :attribute ha de ser superior a :value.',
'string' => 'El :attribute ha de superar els :value caràcters.',
],
'gte' => [
'array' => 'El :attribute ha de tenir :value ítems o més.',
'file' => 'El :attribute ha de ser igual o superior a :value kilobytes.',
'numeric' => 'El :attribute ha de ser igual o superior a :value.',
'string' => 'El :attribute ha de ser igual o superior a :value caràcters.',
],
'hex_color' => 'El camp :attribute ha de ser un color hexadecimal vàlid.',
'image' => ':Attribute ha de ser una imatge.',
'in' => ':Attribute és invàlid',
'in_array' => 'El camp :attribute no existeix dintre de :other.',
'in_array_keys' => 'El camp :attribute ha de contenir almenys una de les tecles següents: :values.',
'integer' => ':Attribute ha de ser un nombre enter.',
'ip' => ':Attribute ha de ser una adreça IP vàlida.',
'ipv4' => ':Attribute ha de ser una adreça IPv4 vàlida.',
'ipv6' => ':Attribute ha de ser una adreça IPv6 vàlida.',
'json' => 'El camp :attribute ha de ser una cadena JSON vàlida.',
'list' => 'El camp :attribute ha de ser una llista.',
'lowercase' => 'El :attribute ha d\'anar en minúscula.',
'lt' => [
'array' => 'El :attribute ha de tenir menys de :value ítems.',
'file' => 'El :attribute ha de ser inferior a :value kilobytes.',
'numeric' => 'El :attribute ha de ser inferior a :value.',
'string' => 'El :attribute no ha de superar els :value caràcters.',
],
'lte' => [
'array' => 'El :attribute no ha de tenir més de :value ítems.',
'file' => 'El :attribute ha de ser igual o inferior a :value kilobytes.',
'numeric' => 'El :attribute ha de ser igual o inferior a :value.',
'string' => 'El :attribute ha de ser igual o inferior a :value caràcters.',
],
'mac_address' => 'El :attribute ha de ser una adreça MAC vàlida.',
'max' => [
'array' => ':Attribute no pot tenir més de :max ítems.',
'file' => ':Attribute no pot ser més gran que :max kilobytes.',
'numeric' => ':Attribute no pot ser més gran que :max.',
'string' => ':Attribute no pot ser més gran que :max caràcters.',
],
'max_digits' => 'El :attribute no ha de tenir més de :max dígits.',
'mimes' => ':Attribute ha de ser un arxiu amb format: :values.',
'mimetypes' => ':Attribute ha de ser un arxiu amb format: :values.',
'min' => [
'array' => ':Attribute ha de tenir almenys :min ítems.',
'file' => 'La mida de :attribute ha de ser d\'almenys :min kilobytes.',
'numeric' => 'La mida de :attribute ha de ser d\'almenys :min.',
'string' => ':Attribute ha de contenir almenys :min caràcters.',
],
'min_digits' => 'El :attribute ha de tenir almenys :min dígits.',
'missing' => 'El camp :attribute ha de faltar.',
'missing_if' => 'El camp :attribute ha de faltar quan :other és :value.',
'missing_unless' => 'El camp :attribute ha de faltar, tret que :other sigui :value.',
'missing_with' => 'El camp :attribute ha de faltar quan hi ha :values.',
'missing_with_all' => 'El camp :attribute ha de faltar quan n\'hi ha :values.',
'multiple_of' => 'La :attribute ha de ser un múltiple de :value',
'not_in' => ':Attribute és invàlid.',
'not_regex' => 'El format de :attribute no és vàlid.',
'numeric' => ':Attribute ha de ser numèric.',
'password' => [
'letters' => 'El :attribute ha de contenir almenys una lletra.',
'mixed' => 'El :attribute ha de contenir almenys una lletra majúscula i una minúscula.',
'numbers' => 'El :attribute ha de contenir almenys un número.',
'symbols' => 'El :attribute ha de contenir almenys un símbol.',
'uncompromised' => 'El :attribute donat ha aparegut en una filtració de dades. Si us plau, trieu un :attribute diferent.',
],
'present' => 'El camp :attribute ha d\'existir.',
'present_if' => 'El camp :attribute ha d\'estar present quan :other és :value.',
'present_unless' => 'El camp :attribute ha d\'estar present tret que :other sigui :value.',
'present_with' => 'El camp :attribute ha d\'estar present quan n\'hi ha :values.',
'present_with_all' => 'El camp :attribute ha d\'estar present quan n\'hi ha :values.',
'prohibited' => 'La :attribute camp està prohibit.',
'prohibited_if' => 'La :attribute camp és prohibida quan :other és :value.',
'prohibited_if_accepted' => 'El camp :attribute està prohibit quan s’accepta :other.',
'prohibited_if_declined' => 'El camp :attribute està prohibit quan es declina :other.',
'prohibited_unless' => 'La :attribute camp és prohibida, tret que :other és en :values.',
'prohibits' => 'El camp :attribute prohibeix la presència de :other.',
'regex' => 'El format de :attribute és invàlid.',
'required' => 'El camp :attribute és obligatori.',
'required_array_keys' => 'El camp :attribute ha de contenir entrades per a: :values.',
'required_if' => 'El camp :attribute és obligatori quan :other és :value.',
'required_if_accepted' => 'El camp :attribute és obligatori quan s\'accepta :other.',
'required_if_declined' => 'El camp :attribute és obligatori quan es rebutja :other.',
'required_unless' => 'El camp :attribute és obligatori a no ser que :other sigui a :values.',
'required_with' => 'El camp :attribute és obligatori quan hi ha :values.',
'required_with_all' => 'El camp :attribute és obligatori quan hi ha :values.',
'required_without' => 'El camp :attribute és obligatori quan no hi ha :values.',
'required_without_all' => 'El camp :attribute és obligatori quan no hi ha cap valor dels següents: :values.',
'same' => ':Attribute i :other han de coincidir.',
'size' => [
'array' => ':Attribute ha de contenir :size ítems.',
'file' => 'La mida de :attribute ha de ser :size kilobytes.',
'numeric' => 'La mida de :attribute ha de ser :size.',
'string' => ':Attribute ha de contenir :size caràcters.',
],
'starts_with' => 'El :attribute ha de començar per un dels valors següents: :values',
'string' => 'El camp :attribute ha de ser una cadena.',
'timezone' => 'El camp :attribute ha de ser una zona vàlida.',
'ulid' => 'El :attribute ha de ser un ULID vàlid.',
'unique' => ':Attribute ja està registrat i no es pot repetir.',
'uploaded' => ':Attribute ha fallat al pujar.',
'uppercase' => 'El :attribute ha d\'anar en majúscula.',
'url' => ':Attribute no és una adreça web vàlida.',
'uuid' => 'El :attribute ha de ser un indentificador únic universal (UUID) vàlid.',
'attributes' => [
'address' => 'adreça',
'affiliate_url' => 'URL d\'afiliat',
'age' => 'edat',
'amount' => 'quantitat',
'announcement' => 'anunci',
'area' => 'zona',
'audience_prize' => 'premi del públic',
'audience_winner' => 'audience winner',
'available' => 'disponible',
'birthday' => 'aniversari',
'body' => 'cos',
'city' => 'ciutat',
'color' => 'color',
'company' => 'company',
'compilation' => 'compilació',
'concept' => 'concepte',
'conditions' => 'condicions',
'content' => 'contingut',
'contest' => 'contest',
'country' => 'país',
'cover' => 'coberta',
'created_at' => 'creat a',
'creator' => 'creador',
'currency' => 'moneda',
'current_password' => 'Contrasenya actual',
'customer' => 'client',
'date' => 'data',
'date_of_birth' => 'data de naixement',
'dates' => 'dates',
'day' => 'dia',
'deleted_at' => 'esborrat a les',
'description' => 'descripció',
'display_type' => 'tipus de visualització',
'district' => 'districte',
'duration' => 'durada',
'email' => 'adreça electrònica',
'excerpt' => 'extracte',
'filter' => 'filtre',
'finished_at' => 'acabat a les',
'first_name' => 'nom',
'gender' => 'gènere',
'grand_prize' => 'gran premi',
'group' => 'grup',
'hour' => 'hora',
'image' => 'imatge',
'image_desktop' => 'imatge d\'escriptori',
'image_main' => 'imatge principal',
'image_mobile' => 'imatge mòbil',
'images' => 'imatges',
'is_audience_winner' => 'és el guanyador del públic',
'is_hidden' => 'està amagat',
'is_subscribed' => 'està subscrit',
'is_visible' => 'és visible',
'is_winner' => 'és el guanyador',
'items' => 'elements',
'key' => 'clau',
'last_name' => 'cognom',
'lesson' => 'lliçó',
'line_address_1' => 'adreça de línia 1',
'line_address_2' => 'adreça de línia 2',
'login' => 'iniciar Sessió',
'message' => 'missatge',
'middle_name' => 'segon nom',
'minute' => 'minut',
'mobile' => 'mòbil',
'month' => 'mes',
'name' => 'nom',
'national_code' => 'codi nacional',
'number' => 'nombre',
'password' => 'contrasenya',
'password_confirmation' => 'confirmació de la contrasenya',
'phone' => 'telèfon',
'photo' => 'foto',
'portfolio' => 'cartera',
'postal_code' => 'Codi Postal',
'preview' => 'Vista prèvia',
'price' => 'preu',
'product_id' => 'ID del producte',
'product_uid' => 'UID del producte',
'product_uuid' => 'UUID del producte',
'promo_code' => 'codi promocional',
'province' => 'província',
'quantity' => 'quantitat',
'reason' => 'raó',
'recaptcha_response_field' => 'camp de resposta recaptcha',
'referee' => 'àrbitre',
'referees' => 'àrbitres',
'region' => 'region',
'reject_reason' => 'rebutjar la raó',
'remember' => 'recorda',
'restored_at' => 'restaurat a',
'result_text_under_image' => 'text del resultat sota la imatge',
'role' => 'paper',
'rule' => 'regla',
'rules' => 'regles',
'second' => 'segon',
'sex' => 'sexe',
'shipment' => 'enviament',
'short_text' => 'text breu',
'size' => 'mida',
'skills' => 'habilitats',
'slug' => 'llimac',
'specialization' => 'especialització',
'started_at' => 'va començar a',
'state' => 'estat',
'status' => 'estat',
'street' => 'carrer',
'student' => 'estudiant',
'subject' => 'assumpte',
'tag' => 'etiqueta',
'tags' => 'etiquetes',
'teacher' => 'professor',
'terms' => 'termes',
'test_description' => 'descripció de la prova',
'test_locale' => 'localització de prova',
'test_name' => 'nom de la prova',
'text' => 'text',
'time' => 'hora',
'title' => 'títol',
'type' => 'tipus',
'updated_at' => 'actualitzat a',
'user' => 'usuari',
'username' => 'usuari',
'value' => 'valor',
'winner' => 'winner',
'work' => 'work',
'year' => 'any',
],
];

229
lang/en.json Normal file
View File

@@ -0,0 +1,229 @@
{
"(and :count more error)": "(and :count more error)",
"(and :count more errors)": "(and :count more error)|(and :count more errors)|(and :count more errors)",
"A decryption key is required.": "A decryption key is required.",
"A Timeout Occurred": "A Timeout Occurred",
"Accept": "Accept",
"Accepted": "Accepted",
"Action": "Action",
"Actions": "Actions",
"Add": "Add",
"Add :name": "Add :name",
"Admin": "Admin",
"Agree": "Agree",
"All rights reserved.": "All rights reserved.",
"Already Reported": "Already Reported",
"Archive": "Archive",
"Assign": "Assign",
"Associate": "Associate",
"Attach": "Attach",
"Bad Gateway": "Bad Gateway",
"Bad Request": "Bad Request",
"Bandwidth Limit Exceeded": "Bandwidth Limit Exceeded",
"Browse": "Browse",
"Cancel": "Cancel",
"Choose": "Choose",
"Choose :name": "Choose :name",
"Choose File": "Choose File",
"Choose Image": "Choose Image",
"Click to copy": "Click to copy",
"Client Closed Request": "Client Closed Request",
"Close": "Close",
"Collapse": "Collapse",
"Collapse All": "Collapse All",
"Comment": "Comment",
"Confirm": "Confirm",
"Conflict": "Conflict",
"Connect": "Connect",
"Connection Closed Without Response": "Connection Closed Without Response",
"Connection Timed Out": "Connection Timed Out",
"Continue": "Continue",
"Create": "Create",
"Create :name": "Create :name",
"Created": "Created",
"Delete": "Delete",
"Delete :name": "Delete :name",
"Detach": "Detach",
"Details": "Details",
"Disable": "Disable",
"Discard": "Discard",
"Done": "Done",
"Down": "Down",
"Duplicate": "Duplicate",
"Duplicate :name": "Duplicate :name",
"Edit": "Edit",
"Edit :name": "Edit :name",
"Enable": "Enable",
"Encrypted environment file already exists.": "Encrypted environment file already exists.",
"Encrypted environment file not found.": "Encrypted environment file not found.",
"Environment file already exists.": "Environment file already exists.",
"Environment file not found.": "Environment file not found.",
"errors": "errors",
"Expand": "Expand",
"Expand All": "Expand All",
"Expectation Failed": "Expectation Failed",
"Explanation": "Explanation",
"Export": "Export",
"Export :name": "Export :name",
"Failed Dependency": "Failed Dependency",
"File": "File",
"Files": "Files",
"Forbidden": "Forbidden",
"Found": "Found",
"Gateway Timeout": "Gateway Timeout",
"Go Home": "Go Home",
"Go to page :page": "Go to page :page",
"Gone": "Gone",
"Hello!": "Hello!",
"Hide": "Hide",
"Hide :name": "Hide :name",
"Home": "Home",
"HTTP Version Not Supported": "HTTP Version Not Supported",
"I'm a teapot": "I'm a teapot",
"If you did not create an account, no further action is required.": "If you did not create an account, no further action is required.",
"If you did not request a password reset, no further action is required.": "If you did not request a password reset, no further action is required.",
"If you're having trouble clicking the \":actionText\" button, copy and paste the URL below\ninto your web browser:": "If you're having trouble clicking the \":actionText\" button, copy and paste the URL below\ninto your web browser:",
"IM Used": "IM Used",
"Image": "Image",
"Impersonate": "Impersonate",
"Impersonation": "Impersonation",
"Import": "Import",
"Import :name": "Import :name",
"Insufficient Storage": "Insufficient Storage",
"Internal Server Error": "Internal Server Error",
"Introduction": "Introduction",
"Invalid filename.": "Invalid filename.",
"Invalid JSON was returned from the route.": "Invalid JSON was returned from the route.",
"Invalid SSL Certificate": "Invalid SSL Certificate",
"Length Required": "Length Required",
"Like": "Like",
"Load": "Load",
"Localize": "Localize",
"Location": "Location",
"Locked": "Locked",
"Log In": "Log In",
"Log Out": "Log Out",
"Login": "Login",
"Logout": "Logout",
"Loop Detected": "Loop Detected",
"Maintenance Mode": "Maintenance Mode",
"Method Not Allowed": "Method Not Allowed",
"Misdirected Request": "Misdirected Request",
"Moved Permanently": "Moved Permanently",
"Multi-Status": "Multi-Status",
"Multiple Choices": "Multiple Choices",
"Network Authentication Required": "Network Authentication Required",
"Network Connect Timeout Error": "Network Connect Timeout Error",
"Network Read Timeout Error": "Network Read Timeout Error",
"New": "New",
"New :name": "New :name",
"No": "No",
"No Content": "No Content",
"Non-Authoritative Information": "Non-Authoritative Information",
"Not Acceptable": "Not Acceptable",
"Not Extended": "Not Extended",
"Not Found": "Not Found",
"Not Implemented": "Not Implemented",
"Not Modified": "Not Modified",
"of": "of",
"OK": "OK",
"Open": "Open",
"Open in a current window": "Open in a current window",
"Open in a new window": "Open in a new window",
"Open in a parent frame": "Open in a parent frame",
"Open in the topmost frame": "Open in the topmost frame",
"Open on the website": "Open on the website",
"Origin Is Unreachable": "Origin Is Unreachable",
"Page Expired": "Page Expired",
"Pagination Navigation": "Pagination Navigation",
"Partial Content": "Partial Content",
"Payload Too Large": "Payload Too Large",
"Payment Required": "Payment Required",
"Permanent Redirect": "Permanent Redirect",
"Please click the button below to verify your email address.": "Please click the button below to verify your email address.",
"Precondition Failed": "Precondition Failed",
"Precondition Required": "Precondition Required",
"Preview": "Preview",
"Price": "Price",
"Processing": "Processing",
"Proxy Authentication Required": "Proxy Authentication Required",
"Railgun Error": "Railgun Error",
"Range Not Satisfiable": "Range Not Satisfiable",
"Record": "Record",
"Regards,": "Regards,",
"Register": "Register",
"Request Header Fields Too Large": "Request Header Fields Too Large",
"Request Timeout": "Request Timeout",
"Reset Content": "Reset Content",
"Reset Password": "Reset Password",
"Reset your password": "Reset your password",
"Restore": "Restore",
"Restore :name": "Restore :name",
"results": "results",
"Retry With": "Retry With",
"Save": "Save",
"Save & Close": "Save & Close",
"Save & Return": "Save & Return",
"Save :name": "Save :name",
"Search": "Search",
"Search :name": "Search :name",
"See Other": "See Other",
"Select": "Select",
"Select All": "Select All",
"Send": "Send",
"Server Error": "Server Error",
"Service Unavailable": "Service Unavailable",
"Session Has Expired": "Session Has Expired",
"Settings": "Settings",
"Show": "Show",
"Show :name": "Show :name",
"Show All": "Show All",
"Showing": "Showing",
"Sign In": "Sign In",
"Solve": "Solve",
"SSL Handshake Failed": "SSL Handshake Failed",
"Start": "Start",
"Stop": "Stop",
"Submit": "Submit",
"Subscribe": "Subscribe",
"Switch": "Switch",
"Switch To Role": "Switch To Role",
"Switching Protocols": "Switching Protocols",
"Tag": "Tag",
"Tags": "Tags",
"Temporary Redirect": "Temporary Redirect",
"The given data was invalid.": "The given data was invalid.",
"The response is not a streamed response.": "The response is not a streamed response.",
"The response is not a view.": "The response is not a view.",
"This action is unauthorized.": "This action is unauthorized.",
"This password reset link will expire in :count minutes.": "This password reset link will expire in :count minutes.",
"to": "to",
"Toggle navigation": "Toggle navigation",
"Too Early": "Too Early",
"Too Many Requests": "Too Many Requests",
"Translate": "Translate",
"Translate It": "Translate It",
"Unauthorized": "Unauthorized",
"Unavailable For Legal Reasons": "Unavailable For Legal Reasons",
"Unknown Error": "Unknown Error",
"Unpack": "Unpack",
"Unprocessable Entity": "Unprocessable Entity",
"Unsubscribe": "Unsubscribe",
"Unsupported Media Type": "Unsupported Media Type",
"Up": "Up",
"Update": "Update",
"Update :name": "Update :name",
"Upgrade Required": "Upgrade Required",
"URI Too Long": "URI Too Long",
"Use Proxy": "Use Proxy",
"User": "User",
"Variant Also Negotiates": "Variant Also Negotiates",
"Verify Email Address": "Verify Email Address",
"Verify your email address": "Verify your email address",
"View": "View",
"View :name": "View :name",
"Web Server is Down": "Web Server is Down",
"Whoops!": "Whoops!",
"Yes": "Yes",
"You are receiving this email because we received a password reset request for your account.": "You are receiving this email because we received a password reset request for your account."
}

119
lang/en/actions.php Normal file
View File

@@ -0,0 +1,119 @@
<?php
declare(strict_types=1);
return [
'accept' => 'Accept',
'action' => 'Action',
'actions' => 'Actions',
'add' => 'Add',
'admin' => 'Admin',
'agree' => 'Agree',
'archive' => 'Archive',
'assign' => 'Assign',
'associate' => 'Associate',
'attach' => 'Attach',
'browse' => 'Browse',
'cancel' => 'Cancel',
'choose' => 'Choose',
'choose_file' => 'Choose File',
'choose_image' => 'Choose Image',
'click_to_copy' => 'Click to copy',
'close' => 'Close',
'collapse' => 'Collapse',
'collapse_all' => 'Collapse All',
'comment' => 'Comment',
'confirm' => 'Confirm',
'connect' => 'Connect',
'create' => 'Create',
'delete' => 'Delete',
'detach' => 'Detach',
'details' => 'Details',
'disable' => 'Disable',
'discard' => 'Discard',
'done' => 'Done',
'down' => 'Down',
'duplicate' => 'Duplicate',
'edit' => 'Edit',
'enable' => 'Enable',
'expand' => 'Expand',
'expand_all' => 'Expand All',
'explanation' => 'Explanation',
'export' => 'Export',
'file' => 'File',
'files' => 'Files',
'go_home' => 'Go Home',
'hide' => 'Hide',
'home' => 'Home',
'image' => 'Image',
'impersonate' => 'Impersonate',
'impersonation' => 'Impersonation',
'import' => 'Import',
'introduction' => 'Introduction',
'like' => 'Like',
'load' => 'Load',
'localize' => 'Localize',
'log_in' => 'Log In',
'log_out' => 'Log Out',
'named' => [
'add' => 'Add :name',
'choose' => 'Choose :name',
'create' => 'Create :name',
'delete' => 'Delete :name',
'duplicate' => 'Duplicate :name',
'edit' => 'Edit :name',
'export' => 'Export :name',
'hide' => 'Hide :name',
'import' => 'Import :name',
'new' => 'New :name',
'restore' => 'Restore :name',
'save' => 'Save :name',
'search' => 'Search :name',
'show' => 'Show :name',
'update' => 'Update :name',
'view' => 'View :name',
],
'new' => 'New',
'no' => 'No',
'open' => 'Open',
'open_website' => 'Open on the website',
'preview' => 'Preview',
'price' => 'Price',
'record' => 'Record',
'restore' => 'Restore',
'save' => 'Save',
'save_and_close' => 'Save & Close',
'save_and_return' => 'Save & Return',
'search' => 'Search',
'select' => 'Select',
'select_all' => 'Select All',
'send' => 'Send',
'settings' => 'Settings',
'show' => 'Show',
'show_all' => 'Show All',
'sign_in' => 'Sign In',
'solve' => 'Solve',
'start' => 'Start',
'stop' => 'Stop',
'submit' => 'Submit',
'subscribe' => 'Subscribe',
'switch' => 'Switch',
'switch_to_role' => 'Switch To Role',
'tag' => 'Tag',
'tags' => 'Tags',
'target_link' => [
'blank' => 'Open in a new window',
'parent' => 'Open in a parent frame',
'self' => 'Open in a current window',
'top' => 'Open in the topmost frame',
],
'translate' => 'Translate',
'translate_it' => 'Translate It',
'unpack' => 'Unpack',
'unsubscribe' => 'Unsubscribe',
'up' => 'Up',
'update' => 'Update',
'user' => 'User',
'view' => 'View',
'yes' => 'Yes',
];

9
lang/en/auth.php Normal file
View File

@@ -0,0 +1,9 @@
<?php
declare(strict_types=1);
return [
'failed' => 'These credentials do not match our records.',
'password' => 'The provided password is incorrect.',
'throttle' => 'Too many login attempts. Please try again in :seconds seconds.',
];

84
lang/en/http-statuses.php Normal file
View File

@@ -0,0 +1,84 @@
<?php
declare(strict_types=1);
return [
'0' => 'Unknown Error',
'100' => 'Continue',
'101' => 'Switching Protocols',
'102' => 'Processing',
'200' => 'OK',
'201' => 'Created',
'202' => 'Accepted',
'203' => 'Non-Authoritative Information',
'204' => 'No Content',
'205' => 'Reset Content',
'206' => 'Partial Content',
'207' => 'Multi-Status',
'208' => 'Already Reported',
'226' => 'IM Used',
'300' => 'Multiple Choices',
'301' => 'Moved Permanently',
'302' => 'Found',
'303' => 'See Other',
'304' => 'Not Modified',
'305' => 'Use Proxy',
'307' => 'Temporary Redirect',
'308' => 'Permanent Redirect',
'400' => 'Bad Request',
'401' => 'Unauthorized',
'402' => 'Payment Required',
'403' => 'Forbidden',
'404' => 'Not Found',
'405' => 'Method Not Allowed',
'406' => 'Not Acceptable',
'407' => 'Proxy Authentication Required',
'408' => 'Request Timeout',
'409' => 'Conflict',
'410' => 'Gone',
'411' => 'Length Required',
'412' => 'Precondition Failed',
'413' => 'Payload Too Large',
'414' => 'URI Too Long',
'415' => 'Unsupported Media Type',
'416' => 'Range Not Satisfiable',
'417' => 'Expectation Failed',
'418' => 'I\'m a teapot',
'419' => 'Session Has Expired',
'421' => 'Misdirected Request',
'422' => 'Unprocessable Entity',
'423' => 'Locked',
'424' => 'Failed Dependency',
'425' => 'Too Early',
'426' => 'Upgrade Required',
'428' => 'Precondition Required',
'429' => 'Too Many Requests',
'431' => 'Request Header Fields Too Large',
'444' => 'Connection Closed Without Response',
'449' => 'Retry With',
'451' => 'Unavailable For Legal Reasons',
'499' => 'Client Closed Request',
'500' => 'Internal Server Error',
'501' => 'Not Implemented',
'502' => 'Bad Gateway',
'503' => 'Maintenance Mode',
'504' => 'Gateway Timeout',
'505' => 'HTTP Version Not Supported',
'506' => 'Variant Also Negotiates',
'507' => 'Insufficient Storage',
'508' => 'Loop Detected',
'509' => 'Bandwidth Limit Exceeded',
'510' => 'Not Extended',
'511' => 'Network Authentication Required',
'520' => 'Unknown Error',
'521' => 'Web Server is Down',
'522' => 'Connection Timed Out',
'523' => 'Origin Is Unreachable',
'524' => 'A Timeout Occurred',
'525' => 'SSL Handshake Failed',
'526' => 'Invalid SSL Certificate',
'527' => 'Railgun Error',
'598' => 'Network Read Timeout Error',
'599' => 'Network Connect Timeout Error',
'unknownError' => 'Unknown Error',
];

13
lang/en/messages.php Normal file
View File

@@ -0,0 +1,13 @@
<?php
return [
'invalid_credentials' => 'Invalid credentials.',
'account_deactivated' => 'This account is deactivated.',
'account_pending_approval' => 'Your account is pending approval by an administrator.',
'registration_pending' => 'Account created. An administrator has to approve it before you can sign in.',
'cannot_remove_own_admin_role' => "You can't remove your own admin role.",
'cannot_delete_self' => "You can't delete your own account.",
'cannot_delete_last_admin' => "You can't delete the last administrator.",
'self_service_requires_user' => 'This resource is self-service: it needs a token with an associated user (does not work with client_credentials).',
'user_not_trashed' => 'This user is not in the trash.',
];

8
lang/en/pagination.php Normal file
View File

@@ -0,0 +1,8 @@
<?php
declare(strict_types=1);
return [
'next' => 'Next &raquo;',
'previous' => '&laquo; Previous',
];

11
lang/en/passwords.php Normal file
View File

@@ -0,0 +1,11 @@
<?php
declare(strict_types=1);
return [
'reset' => 'Your password has been reset.',
'sent' => 'We have emailed your password reset link.',
'throttled' => 'Please wait before retrying.',
'token' => 'This password reset token is invalid.',
'user' => 'We can\'t find a user with that email address.',
];

289
lang/en/validation.php Normal file
View File

@@ -0,0 +1,289 @@
<?php
declare(strict_types=1);
return [
'accepted' => 'The :attribute field must be accepted.',
'accepted_if' => 'The :attribute field must be accepted when :other is :value.',
'active_url' => 'The :attribute field must be a valid URL.',
'after' => 'The :attribute field must be a date after :date.',
'after_or_equal' => 'The :attribute field must be a date after or equal to :date.',
'alpha' => 'The :attribute field must only contain letters.',
'alpha_dash' => 'The :attribute field must only contain letters, numbers, dashes, and underscores.',
'alpha_num' => 'The :attribute field must only contain letters and numbers.',
'any_of' => 'The :attribute field is invalid.',
'array' => 'The :attribute field must be an array.',
'ascii' => 'The :attribute field must only contain single-byte alphanumeric characters and symbols.',
'base64' => 'The :attribute field must be a valid Base64 string.',
'before' => 'The :attribute field must be a date before :date.',
'before_or_equal' => 'The :attribute field must be a date before or equal to :date.',
'between' => [
'array' => 'The :attribute field must have between :min and :max items.',
'file' => 'The :attribute field must be between :min and :max kilobytes.',
'numeric' => 'The :attribute field must be between :min and :max.',
'string' => 'The :attribute field must be between :min and :max characters.',
],
'boolean' => 'The :attribute field must be true or false.',
'can' => 'The :attribute field contains an unauthorized value.',
'confirmed' => 'The :attribute field confirmation does not match.',
'contains' => 'The :attribute field is missing a required value.',
'current_password' => 'The password is incorrect.',
'date' => 'The :attribute field must be a valid date.',
'date_equals' => 'The :attribute field must be a date equal to :date.',
'date_format' => 'The :attribute field must match the format :format.',
'decimal' => 'The :attribute field must have :decimal decimal places.',
'declined' => 'The :attribute field must be declined.',
'declined_if' => 'The :attribute field must be declined when :other is :value.',
'different' => 'The :attribute field and :other must be different.',
'digits' => 'The :attribute field must be :digits digits.',
'digits_between' => 'The :attribute field must be between :min and :max digits.',
'dimensions' => 'The :attribute field has invalid image dimensions.',
'distinct' => 'The :attribute field has a duplicate value.',
'doesnt_contain' => 'The :attribute field must not contain any of the following: :values.',
'doesnt_end_with' => 'The :attribute field must not end with one of the following: :values.',
'doesnt_start_with' => 'The :attribute field must not start with one of the following: :values.',
'email' => 'The :attribute field must be a valid email address.',
'encoding' => 'The :attribute field must be encoded in :encoding.',
'ends_with' => 'The :attribute field must end with one of the following: :values.',
'enum' => 'The selected :attribute is invalid.',
'exists' => 'The selected :attribute is invalid.',
'extensions' => 'The :attribute field must have one of the following extensions: :values.',
'file' => 'The :attribute field must be a file.',
'filled' => 'The :attribute field must have a value.',
'gt' => [
'array' => 'The :attribute field must have more than :value items.',
'file' => 'The :attribute field must be greater than :value kilobytes.',
'numeric' => 'The :attribute field must be greater than :value.',
'string' => 'The :attribute field must be greater than :value characters.',
],
'gte' => [
'array' => 'The :attribute field must have :value items or more.',
'file' => 'The :attribute field must be greater than or equal to :value kilobytes.',
'numeric' => 'The :attribute field must be greater than or equal to :value.',
'string' => 'The :attribute field must be greater than or equal to :value characters.',
],
'hex_color' => 'The :attribute field must be a valid hexadecimal color.',
'image' => 'The :attribute field must be an image.',
'in' => 'The selected :attribute is invalid.',
'in_array' => 'The :attribute field must exist in :other.',
'in_array_keys' => 'The :attribute field must contain at least one of the following keys: :values.',
'integer' => 'The :attribute field must be an integer.',
'ip' => 'The :attribute field must be a valid IP address.',
'ipv4' => 'The :attribute field must be a valid IPv4 address.',
'ipv6' => 'The :attribute field must be a valid IPv6 address.',
'json' => 'The :attribute field must be a valid JSON string.',
'list' => 'The :attribute field must be a list.',
'lowercase' => 'The :attribute field must be lowercase.',
'lt' => [
'array' => 'The :attribute field must have less than :value items.',
'file' => 'The :attribute field must be less than :value kilobytes.',
'numeric' => 'The :attribute field must be less than :value.',
'string' => 'The :attribute field must be less than :value characters.',
],
'lte' => [
'array' => 'The :attribute field must not have more than :value items.',
'file' => 'The :attribute field must be less than or equal to :value kilobytes.',
'numeric' => 'The :attribute field must be less than or equal to :value.',
'string' => 'The :attribute field must be less than or equal to :value characters.',
],
'mac_address' => 'The :attribute field must be a valid MAC address.',
'max' => [
'array' => 'The :attribute field must not have more than :max items.',
'file' => 'The :attribute field must not be greater than :max kilobytes.',
'numeric' => 'The :attribute field must not be greater than :max.',
'string' => 'The :attribute field must not be greater than :max characters.',
],
'max_digits' => 'The :attribute field must not have more than :max digits.',
'mimes' => 'The :attribute field must be a file of type: :values.',
'mimetypes' => 'The :attribute field must be a file of type: :values.',
'min' => [
'array' => 'The :attribute field must have at least :min items.',
'file' => 'The :attribute field must be at least :min kilobytes.',
'numeric' => 'The :attribute field must be at least :min.',
'string' => 'The :attribute field must be at least :min characters.',
],
'min_digits' => 'The :attribute field must have at least :min digits.',
'missing' => 'The :attribute field must be missing.',
'missing_if' => 'The :attribute field must be missing when :other is :value.',
'missing_unless' => 'The :attribute field must be missing unless :other is :value.',
'missing_with' => 'The :attribute field must be missing when :values is present.',
'missing_with_all' => 'The :attribute field must be missing when :values are present.',
'multiple_of' => 'The :attribute field must be a multiple of :value.',
'not_in' => 'The selected :attribute is invalid.',
'not_regex' => 'The :attribute field format is invalid.',
'numeric' => 'The :attribute field must be a number.',
'password' => [
'letters' => 'The :attribute field must contain at least one letter.',
'mixed' => 'The :attribute field must contain at least one uppercase and one lowercase letter.',
'numbers' => 'The :attribute field must contain at least one number.',
'symbols' => 'The :attribute field must contain at least one symbol.',
'uncompromised' => 'The given :attribute has appeared in a data leak. Please choose a different :attribute.',
],
'present' => 'The :attribute field must be present.',
'present_if' => 'The :attribute field must be present when :other is :value.',
'present_unless' => 'The :attribute field must be present unless :other is :value.',
'present_with' => 'The :attribute field must be present when :values is present.',
'present_with_all' => 'The :attribute field must be present when :values are present.',
'prohibited' => 'The :attribute field is prohibited.',
'prohibited_if' => 'The :attribute field is prohibited when :other is :value.',
'prohibited_if_accepted' => 'The :attribute field is prohibited when :other is accepted.',
'prohibited_if_declined' => 'The :attribute field is prohibited when :other is declined.',
'prohibited_unless' => 'The :attribute field is prohibited unless :other is in :values.',
'prohibits' => 'The :attribute field prohibits :other from being present.',
'regex' => 'The :attribute field format is invalid.',
'required' => 'The :attribute field is required.',
'required_array_keys' => 'The :attribute field must contain entries for: :values.',
'required_if' => 'The :attribute field is required when :other is :value.',
'required_if_accepted' => 'The :attribute field is required when :other is accepted.',
'required_if_declined' => 'The :attribute field is required when :other is declined.',
'required_unless' => 'The :attribute field is required unless :other is in :values.',
'required_with' => 'The :attribute field is required when :values is present.',
'required_with_all' => 'The :attribute field is required when :values are present.',
'required_without' => 'The :attribute field is required when :values is not present.',
'required_without_all' => 'The :attribute field is required when none of :values are present.',
'same' => 'The :attribute field must match :other.',
'size' => [
'array' => 'The :attribute field must contain :size items.',
'file' => 'The :attribute field must be :size kilobytes.',
'numeric' => 'The :attribute field must be :size.',
'string' => 'The :attribute field must be :size characters.',
],
'starts_with' => 'The :attribute field must start with one of the following: :values.',
'string' => 'The :attribute field must be a string.',
'timezone' => 'The :attribute field must be a valid timezone.',
'ulid' => 'The :attribute field must be a valid ULID.',
'unique' => 'The :attribute has already been taken.',
'uploaded' => 'The :attribute failed to upload.',
'uppercase' => 'The :attribute field must be uppercase.',
'url' => 'The :attribute field must be a valid URL.',
'uuid' => 'The :attribute field must be a valid UUID.',
'attributes' => [
'address' => 'address',
'affiliate_url' => 'affiliate URL',
'age' => 'age',
'amount' => 'amount',
'announcement' => 'announcement',
'area' => 'area',
'audience_prize' => 'audience prize',
'audience_winner' => 'audience winner',
'available' => 'available',
'birthday' => 'birthday',
'body' => 'body',
'city' => 'city',
'color' => 'color',
'company' => 'company',
'compilation' => 'compilation',
'concept' => 'concept',
'conditions' => 'conditions',
'content' => 'content',
'contest' => 'contest',
'country' => 'country',
'cover' => 'cover',
'created_at' => 'created at',
'creator' => 'creator',
'currency' => 'currency',
'current_password' => 'current password',
'customer' => 'customer',
'date' => 'date',
'date_of_birth' => 'date of birth',
'dates' => 'dates',
'day' => 'day',
'deleted_at' => 'deleted at',
'description' => 'description',
'display_type' => 'display type',
'district' => 'district',
'duration' => 'duration',
'email' => 'email',
'excerpt' => 'excerpt',
'filter' => 'filter',
'finished_at' => 'finished at',
'first_name' => 'first name',
'gender' => 'gender',
'grand_prize' => 'grand prize',
'group' => 'group',
'hour' => 'hour',
'image' => 'image',
'image_desktop' => 'desktop image',
'image_main' => 'main image',
'image_mobile' => 'mobile image',
'images' => 'images',
'is_audience_winner' => 'is audience winner',
'is_hidden' => 'is hidden',
'is_subscribed' => 'is subscribed',
'is_visible' => 'is visible',
'is_winner' => 'is winner',
'items' => 'items',
'key' => 'key',
'last_name' => 'last name',
'lesson' => 'lesson',
'line_address_1' => 'line address 1',
'line_address_2' => 'line address 2',
'login' => 'login',
'message' => 'message',
'middle_name' => 'middle name',
'minute' => 'minute',
'mobile' => 'mobile',
'month' => 'month',
'name' => 'name',
'national_code' => 'national code',
'number' => 'number',
'password' => 'password',
'password_confirmation' => 'password confirmation',
'phone' => 'phone',
'photo' => 'photo',
'portfolio' => 'portfolio',
'postal_code' => 'postal code',
'preview' => 'preview',
'price' => 'price',
'product_id' => 'product ID',
'product_uid' => 'product UID',
'product_uuid' => 'product UUID',
'promo_code' => 'promo code',
'province' => 'province',
'quantity' => 'quantity',
'reason' => 'reason',
'recaptcha_response_field' => 'recaptcha response field',
'referee' => 'referee',
'referees' => 'referees',
'region' => 'region',
'reject_reason' => 'reject reason',
'remember' => 'remember',
'restored_at' => 'restored at',
'result_text_under_image' => 'result text under image',
'role' => 'role',
'rule' => 'rule',
'rules' => 'rules',
'second' => 'second',
'sex' => 'sex',
'shipment' => 'shipment',
'short_text' => 'short text',
'size' => 'size',
'skills' => 'skills',
'slug' => 'slug',
'specialization' => 'specialization',
'started_at' => 'started at',
'state' => 'state',
'status' => 'status',
'street' => 'street',
'student' => 'student',
'subject' => 'subject',
'tag' => 'tag',
'tags' => 'tags',
'teacher' => 'teacher',
'terms' => 'terms',
'test_description' => 'test description',
'test_locale' => 'test locale',
'test_name' => 'test name',
'text' => 'text',
'time' => 'time',
'title' => 'title',
'type' => 'type',
'updated_at' => 'updated at',
'user' => 'user',
'username' => 'username',
'value' => 'value',
'winner' => 'winner',
'work' => 'work',
'year' => 'year',
],
];

229
lang/es.json Normal file
View File

@@ -0,0 +1,229 @@
{
"(and :count more error)": "(y :count error más)",
"(and :count more errors)": "(y :count error más)|(y :count errores más)|(y :count errores más)",
"A decryption key is required.": "Se requiere una clave de descifrado.",
"A Timeout Occurred": "Se produjo un tiempo de espera",
"Accept": "Aceptar",
"Accepted": "Aceptado",
"Action": "Acción",
"Actions": "Acciones",
"Add": "Añadir",
"Add :name": "Agregar :name",
"Admin": "Administrar",
"Agree": "Aceptar",
"All rights reserved.": "Todos los derechos reservados.",
"Already Reported": "Ya Reportado",
"Archive": "Archivar",
"Assign": "Asignar",
"Associate": "Asociar",
"Attach": "Adjuntar",
"Bad Gateway": "Mala puerta de enlace",
"Bad Request": "Solicitud incorrecta",
"Bandwidth Limit Exceeded": "Límite de ancho de banda excedido",
"Browse": "Navegar",
"Cancel": "Cancelar",
"Choose": "Elija",
"Choose :name": "Elegir :name",
"Choose File": "Elija archivo",
"Choose Image": "Elegir Imagen",
"Click to copy": "Haga clic para copiar",
"Client Closed Request": "Solicitud cerrada del cliente",
"Close": "Cerrar",
"Collapse": "Colapsar",
"Collapse All": "Colapsar todo",
"Comment": "Comentar",
"Confirm": "Confirmar",
"Conflict": "Conflicto",
"Connect": "Conectar",
"Connection Closed Without Response": "Conexión cerrada sin respuesta",
"Connection Timed Out": "Tiempo de conexión agotado",
"Continue": "Continuar",
"Create": "Crear",
"Create :name": "Crear :name",
"Created": "Creado",
"Delete": "Eliminar",
"Delete :name": "Eliminar :name",
"Detach": "Desvincular",
"Details": "Detalles",
"Disable": "Deshabilitar",
"Discard": "Descartar",
"Done": "Hecho",
"Down": "Abajo",
"Duplicate": "Duplicar",
"Duplicate :name": "Duplicar :name",
"Edit": "Editar",
"Edit :name": "Editar :name",
"Enable": "Habilitar",
"Encrypted environment file already exists.": "El archivo de entorno cifrado ya existe.",
"Encrypted environment file not found.": "No se encontró el archivo de entorno cifrado.",
"Environment file already exists.": "El archivo de entorno ya existe.",
"Environment file not found.": "Archivo de entorno no encontrado.",
"errors": "errores",
"Expand": "Expandir",
"Expand All": "Expandir todo",
"Expectation Failed": "Expectativa fallida",
"Explanation": "Explicación",
"Export": "Exportar",
"Export :name": "Exportar :name",
"Failed Dependency": "Dependencia fallida",
"File": "Archivo",
"Files": "Archivos",
"Forbidden": "Prohibido",
"Found": "Encontrado",
"Gateway Timeout": "Tiempo de espera de puerta de enlace",
"Go Home": "Ir a inicio",
"Go to page :page": "Ir a la página :page",
"Gone": "Recurso no disponible",
"Hello!": "¡Hola!",
"Hide": "Ocultar",
"Hide :name": "Ocultar :name",
"Home": "Inicio",
"HTTP Version Not Supported": "Versión HTTP no compatible",
"I'm a teapot": "Soy una tetera",
"If you did not create an account, no further action is required.": "Si no ha creado una cuenta, no se requiere ninguna acción adicional.",
"If you did not request a password reset, no further action is required.": "Si no ha solicitado el restablecimiento de contraseña, omita este mensaje de correo electrónico.",
"If you're having trouble clicking the \":actionText\" button, copy and paste the URL below\ninto your web browser:": "Si está teniendo problemas al hacer clic en el botón \":actionText\", copie y pegue la URL de abajo\nen su navegador web:",
"IM Used": "IM usado",
"Image": "Imagen",
"Impersonate": "Personificar",
"Impersonation": "Personificación",
"Import": "Importar",
"Import :name": "Importar :name",
"Insufficient Storage": "Espacio insuficiente",
"Internal Server Error": "Error interno del servidor",
"Introduction": "Introducción",
"Invalid filename.": "Nombre de archivo no válido.",
"Invalid JSON was returned from the route.": "Se devolvió un JSON no válido desde la ruta.",
"Invalid SSL Certificate": "Certificado SSL no válido",
"Length Required": "Longitud requerida",
"Like": "Me gusta",
"Load": "Cargar",
"Localize": "Localizar",
"Location": "Ubicación",
"Locked": "Bloqueado",
"Log In": "Iniciar sesión",
"Log Out": "Finalizar sesión",
"Login": "Iniciar sesión",
"Logout": "Finalizar sesión",
"Loop Detected": "Bucle detectado",
"Maintenance Mode": "Modo de mantenimiento",
"Method Not Allowed": "Método no permitido",
"Misdirected Request": "Solicitud mal dirigida",
"Moved Permanently": "Movido permanentemente",
"Multi-Status": "Multiestado",
"Multiple Choices": "Múltiples opciones",
"Network Authentication Required": "Se requiere autenticación de red",
"Network Connect Timeout Error": "Error de tiempo de espera de conexión de red",
"Network Read Timeout Error": "Error de tiempo de espera de lectura de red",
"New": "Nuevo",
"New :name": "Nuevo :name",
"No": "No",
"No Content": "Sin contenido",
"Non-Authoritative Information": "Información no autorizada",
"Not Acceptable": "Inaceptable",
"Not Extended": "no extendido",
"Not Found": "No encontrado",
"Not Implemented": "No se ha implementado",
"Not Modified": "No modificado",
"of": "de",
"OK": "Correcto",
"Open": "Abrir",
"Open in a current window": "Abrir en una ventana actual",
"Open in a new window": "Abrir en una ventana nueva",
"Open in a parent frame": "Abrir en un marco principal",
"Open in the topmost frame": "Abrir en el marco superior",
"Open on the website": "Abrir en el sitio web",
"Origin Is Unreachable": "El origen es inalcanzable",
"Page Expired": "Página expirada",
"Pagination Navigation": "Navegación por los enlaces de paginación",
"Partial Content": "Contenido parcial",
"Payload Too Large": "Solicitud demasiado grande",
"Payment Required": "Pago requerido",
"Permanent Redirect": "Redirección permanente",
"Please click the button below to verify your email address.": "Por favor, haga clic en el botón de abajo para verificar su dirección de correo electrónico.",
"Precondition Failed": "Error de condición previa",
"Precondition Required": "Precondición requerida",
"Preview": "Previsualizar",
"Price": "Precio",
"Processing": "Procesando",
"Proxy Authentication Required": "Se requiere autenticación proxy",
"Railgun Error": "Error de cañón de riel",
"Range Not Satisfiable": "Rango no satisfactorio",
"Record": "Registro",
"Regards,": "Saludos,",
"Register": "Registrarse",
"Request Header Fields Too Large": "Campos de encabezado de solicitud demasiado grandes",
"Request Timeout": "Solicitud de tiempo de espera",
"Reset Content": "Restablecer contenido",
"Reset Password": "Restablecer contraseña",
"Reset your password": "Restablezca su contraseña",
"Restore": "Restaurar",
"Restore :name": "Restaurar :name",
"results": "resultados",
"Retry With": "Reintentar con",
"Save": "Guardar",
"Save & Close": "Guardar y cerrar",
"Save & Return": "Guardar y volver",
"Save :name": "Guardar :name",
"Search": "Buscar",
"Search :name": "Buscar :name",
"See Other": "Ver otros",
"Select": "Seleccione",
"Select All": "Seleccionar todo",
"Send": "Enviar",
"Server Error": "Error del servidor",
"Service Unavailable": "Servicio no disponible",
"Session Has Expired": "La sesión ha expirado",
"Settings": "Ajustes",
"Show": "Mostrar",
"Show :name": "Mostrar :name",
"Show All": "Mostrar todo",
"Showing": "Mostrando",
"Sign In": "Iniciar sesión",
"Solve": "Resolver",
"SSL Handshake Failed": "Protocolo de enlace SSL fallido",
"Start": "Comenzar",
"Stop": "Detener",
"Submit": "Enviar",
"Subscribe": "Suscriba",
"Switch": "Cambiar",
"Switch To Role": "Cambiar de rol",
"Switching Protocols": "Protocolos de conmutación",
"Tag": "Etiqueta",
"Tags": "Etiquetas",
"Temporary Redirect": "Redirección temporal",
"The given data was invalid.": "Los datos proporcionados no son válidos.",
"The response is not a streamed response.": "La respuesta no es una respuesta transmitida.",
"The response is not a view.": "La respuesta no es una vista.",
"This action is unauthorized.": "Esta acción no está autorizada.",
"This password reset link will expire in :count minutes.": "Este enlace de restablecimiento de contraseña expirará en :count minutos.",
"to": "al",
"Toggle navigation": "Alternar navegación",
"Too Early": "Demasiado temprano",
"Too Many Requests": "Demasiadas peticiones",
"Translate": "Traducir",
"Translate It": "Traducirlo",
"Unauthorized": "No autorizado",
"Unavailable For Legal Reasons": "No disponible por razones legales",
"Unknown Error": "Error desconocido",
"Unpack": "Desglosar",
"Unprocessable Entity": "Entidad no procesable",
"Unsubscribe": "Darse de baja",
"Unsupported Media Type": "Tipo de medio no admitido",
"Up": "Arriba",
"Update": "Actualizar",
"Update :name": "Actualizar :name",
"Upgrade Required": "Se requiere actualización",
"URI Too Long": "URI demasiado largo",
"Use Proxy": "Usa proxy",
"User": "Usuario",
"Variant Also Negotiates": "Variante También Negocia",
"Verify Email Address": "Confirme su correo electrónico",
"Verify your email address": "Verifique su dirección de correo electrónico",
"View": "Ver",
"View :name": "Ver :name",
"Web Server is Down": "El servidor web está caído",
"Whoops!": "¡Ups!",
"Yes": "Sí",
"You are receiving this email because we received a password reset request for your account.": "Ha recibido este mensaje porque se solicitó un restablecimiento de contraseña para su cuenta."
}

119
lang/es/actions.php Normal file
View File

@@ -0,0 +1,119 @@
<?php
declare(strict_types=1);
return [
'accept' => 'Aceptar',
'action' => 'Acción',
'actions' => 'Acciones',
'add' => 'Agregar',
'admin' => 'Administrar',
'agree' => 'Aceptar',
'archive' => 'Archivar',
'assign' => 'Asignar',
'associate' => 'Asociar',
'attach' => 'Adjuntar',
'browse' => 'Navegar',
'cancel' => 'Cancelar',
'choose' => 'Elegir',
'choose_file' => 'Elegir archivo',
'choose_image' => 'Elegir Imagen',
'click_to_copy' => 'Haga clic para copiar',
'close' => 'Cerrar',
'collapse' => 'Colapsar',
'collapse_all' => 'Colapsar todo',
'comment' => 'Comentar',
'confirm' => 'Confirmar',
'connect' => 'Conectar',
'create' => 'Crear',
'delete' => 'Borrar',
'detach' => 'Desasociar',
'details' => 'Detalles',
'disable' => 'Desactivar',
'discard' => 'Descartar',
'done' => 'Hecho',
'down' => 'Abajo',
'duplicate' => 'Duplicar',
'edit' => 'Editar',
'enable' => 'Permitir',
'expand' => 'Expandir',
'expand_all' => 'Expandir todo',
'explanation' => 'Explicación',
'export' => 'Exportar',
'file' => 'Archivo',
'files' => 'Archivos',
'go_home' => 'Ir a Inicio',
'hide' => 'Ocultar',
'home' => 'Inicio',
'image' => 'Imagen',
'impersonate' => 'Personificar',
'impersonation' => 'Personificación',
'import' => 'Importar',
'introduction' => 'Introducción',
'like' => 'Me gusta',
'load' => 'Cargar',
'localize' => 'Localizar',
'log_in' => 'Acceder',
'log_out' => 'Cerrar sesión',
'named' => [
'add' => 'Agregar :name',
'choose' => 'Elegir :name',
'create' => 'Crear :name',
'delete' => 'Eliminar :name',
'duplicate' => 'Duplicar :name',
'edit' => 'Editar :name',
'export' => 'Exportar :name',
'hide' => 'Ocultar :name',
'import' => 'Importar :name',
'new' => 'Nuevo :name',
'restore' => 'Restaurar :name',
'save' => 'Guardar :name',
'search' => 'Buscar :name',
'show' => 'Mostrar :name',
'update' => 'Actualizar :name',
'view' => 'Ver :name',
],
'new' => 'Nuevo',
'no' => 'No',
'open' => 'Abrir',
'open_website' => 'Abrir en el sitio web',
'preview' => 'Previsualizar',
'price' => 'Precio',
'record' => 'Registro',
'restore' => 'Restaurar',
'save' => 'Guardar',
'save_and_close' => 'Guardar y cerrar',
'save_and_return' => 'Guardar y volver',
'search' => 'Buscar',
'select' => 'Seleccionar',
'select_all' => 'Seleccionar todo',
'send' => 'Enviar',
'settings' => 'Ajustes',
'show' => 'Mostrar',
'show_all' => 'Mostrar todo',
'sign_in' => 'Iniciar sesión',
'solve' => 'Resolver',
'start' => 'Comenzar',
'stop' => 'Detener',
'submit' => 'Enviar',
'subscribe' => 'Suscribir',
'switch' => 'Cambiar',
'switch_to_role' => 'Cambiar de rol',
'tag' => 'Etiqueta',
'tags' => 'Etiquetas',
'target_link' => [
'blank' => 'Abrir en una ventana nueva',
'parent' => 'Abrir en el marco principal',
'self' => 'Abrir en la ventana actual',
'top' => 'Abrir en el marco superior',
],
'translate' => 'Traducir',
'translate_it' => 'Traducirlo',
'unpack' => 'Desglosar',
'unsubscribe' => 'Darse de baja',
'up' => 'Arriba',
'update' => 'Actualizar',
'user' => 'Usuario',
'view' => 'Ver',
'yes' => 'Sí',
];

9
lang/es/auth.php Normal file
View File

@@ -0,0 +1,9 @@
<?php
declare(strict_types=1);
return [
'failed' => 'Estas credenciales no coinciden con nuestros registros.',
'password' => 'La contraseña es incorrecta.',
'throttle' => 'Demasiados intentos de acceso. Por favor intente nuevamente en :seconds segundos.',
];

84
lang/es/http-statuses.php Normal file
View File

@@ -0,0 +1,84 @@
<?php
declare(strict_types=1);
return [
'0' => 'Error desconocido',
'100' => 'Continuar',
'101' => 'Protocolos de conmutación',
'102' => 'Procesando',
'200' => 'DE ACUERDO',
'201' => 'Creado',
'202' => 'Aceptado',
'203' => 'Información no autorizada',
'204' => 'Sin contenido',
'205' => 'Restablecer contenido',
'206' => 'Contenido parcial',
'207' => 'Multiestado',
'208' => 'Ya Reportado',
'226' => 'IM usado',
'300' => 'Múltiples opciones',
'301' => 'Movido permanentemente',
'302' => 'Encontrado',
'303' => 'Ver otros',
'304' => 'No modificado',
'305' => 'Usa proxy',
'307' => 'Redirección temporal',
'308' => 'Redirección permanente',
'400' => 'Solicitud incorrecta',
'401' => 'No autorizado',
'402' => 'Pago requerido',
'403' => 'Prohibido',
'404' => 'No encontrado',
'405' => 'Método no permitido',
'406' => 'Inaceptable',
'407' => 'Se requiere autenticación proxy',
'408' => 'Solicitud de tiempo de espera',
'409' => 'Conflicto',
'410' => 'Recurso no disponible',
'411' => 'Longitud requerida',
'412' => 'Error de condición previa',
'413' => 'Solicitud demasiado grande',
'414' => 'URI demasiado largo',
'415' => 'Tipo de medio no admitido',
'416' => 'Rango no satisfactorio',
'417' => 'Expectativa fallida',
'418' => 'Soy una tetera',
'419' => 'La sesión ha expirado',
'421' => 'Solicitud mal dirigida',
'422' => 'Entidad no procesable',
'423' => 'Bloqueado',
'424' => 'Dependencia fallida',
'425' => 'Demasiado temprano',
'426' => 'Se requiere actualización',
'428' => 'Precondición requerida',
'429' => 'Demasiadas solicitudes',
'431' => 'Campos de encabezado de solicitud demasiado grandes',
'444' => 'Conexión cerrada sin respuesta',
'449' => 'Reintentar con',
'451' => 'No disponible por razones legales',
'499' => 'Solicitud cerrada del cliente',
'500' => 'Error interno del servidor',
'501' => 'No se ha implementado',
'502' => 'Mala puerta de enlace',
'503' => 'Modo de mantenimiento',
'504' => 'Tiempo de espera de puerta de enlace',
'505' => 'Versión HTTP no compatible',
'506' => 'Variante También Negocia',
'507' => 'Espacio insuficiente',
'508' => 'Bucle detectado',
'509' => 'Límite de ancho de banda excedido',
'510' => 'no extendido',
'511' => 'Se requiere autenticación de red',
'520' => 'Error desconocido',
'521' => 'El servidor web está caído',
'522' => 'Tiempo de conexión agotado',
'523' => 'El origen es inalcanzable',
'524' => 'Se produjo un tiempo de espera',
'525' => 'Protocolo de enlace SSL fallido',
'526' => 'Certificado SSL no válido',
'527' => 'Error de cañón de riel',
'598' => 'Error de tiempo de espera de lectura de red',
'599' => 'Error de tiempo de espera de conexión de red',
'unknownError' => 'Error desconocido',
];

13
lang/es/messages.php Normal file
View File

@@ -0,0 +1,13 @@
<?php
return [
'invalid_credentials' => 'Credenciales inválidas.',
'account_deactivated' => 'Esta cuenta está desactivada.',
'account_pending_approval' => 'Tu cuenta está pendiente de aprobación por un administrador.',
'registration_pending' => 'Cuenta creada. Un administrador tiene que aprobarla antes de que puedas ingresar.',
'cannot_remove_own_admin_role' => 'No podés quitarte el rol de admin a vos mismo.',
'cannot_delete_self' => 'No podés borrar tu propia cuenta.',
'cannot_delete_last_admin' => 'No podés borrar al último administrador.',
'self_service_requires_user' => 'Este recurso es self-service: necesita un token con usuario asociado (no funciona con client_credentials).',
'user_not_trashed' => 'Este usuario no está en la papelera.',
];

8
lang/es/pagination.php Normal file
View File

@@ -0,0 +1,8 @@
<?php
declare(strict_types=1);
return [
'next' => 'Siguiente &raquo;',
'previous' => '&laquo; Anterior',
];

11
lang/es/passwords.php Normal file
View File

@@ -0,0 +1,11 @@
<?php
declare(strict_types=1);
return [
'reset' => 'Su contraseña ha sido restablecida.',
'sent' => 'Le hemos enviado por correo electrónico el enlace para restablecer su contraseña.',
'throttled' => 'Por favor espere antes de intentar de nuevo.',
'token' => 'El token de restablecimiento de contraseña es inválido.',
'user' => 'No encontramos ningún usuario con ese correo electrónico.',
];

289
lang/es/validation.php Normal file
View File

@@ -0,0 +1,289 @@
<?php
declare(strict_types=1);
return [
'accepted' => 'El campo :attribute debe ser aceptado.',
'accepted_if' => 'El campo :attribute debe ser aceptado cuando :other sea :value.',
'active_url' => 'El campo :attribute debe ser una URL válida.',
'after' => 'El campo :attribute debe ser una fecha posterior a :date.',
'after_or_equal' => 'El campo :attribute debe ser una fecha posterior o igual a :date.',
'alpha' => 'El campo :attribute sólo debe contener letras.',
'alpha_dash' => 'El campo :attribute sólo debe contener letras, números, guiones y guiones bajos.',
'alpha_num' => 'El campo :attribute sólo debe contener letras y números.',
'any_of' => 'El campo :attribute no es válido.',
'array' => 'El campo :attribute debe ser un conjunto.',
'ascii' => 'El campo :attribute solo debe contener caracteres alfanuméricos y símbolos de un solo byte.',
'base64' => 'The :attribute field must be a valid Base64 string.',
'before' => 'El campo :attribute debe ser una fecha anterior a :date.',
'before_or_equal' => 'El campo :attribute debe ser una fecha anterior o igual a :date.',
'between' => [
'array' => 'El campo :attribute tiene que tener entre :min - :max elementos.',
'file' => 'El campo :attribute debe pesar entre :min - :max kilobytes.',
'numeric' => 'El campo :attribute tiene que estar entre :min - :max.',
'string' => 'El campo :attribute tiene que tener entre :min - :max caracteres.',
],
'boolean' => 'El campo :attribute debe tener un valor verdadero o falso.',
'can' => 'El campo :attribute contiene un valor no autorizado.',
'confirmed' => 'La confirmación de :attribute no coincide.',
'contains' => 'Al campo :attribute le falta un valor obligatorio.',
'current_password' => 'La contraseña es incorrecta.',
'date' => 'El campo :attribute debe ser una fecha válida.',
'date_equals' => 'El campo :attribute debe ser una fecha igual a :date.',
'date_format' => 'El campo :attribute debe coincidir con el formato :format.',
'decimal' => 'El campo :attribute debe tener :decimal cifras decimales.',
'declined' => 'El campo :attribute debe ser rechazado.',
'declined_if' => 'El campo :attribute debe ser rechazado cuando :other sea :value.',
'different' => 'El campo :attribute y :other deben ser diferentes.',
'digits' => 'El campo :attribute debe tener :digits dígitos.',
'digits_between' => 'El campo :attribute debe tener entre :min y :max dígitos.',
'dimensions' => 'El campo :attribute tiene dimensiones de imagen no válidas.',
'distinct' => 'El campo :attribute contiene un valor duplicado.',
'doesnt_contain' => 'El campo :attribute no debe contener ninguno de los siguientes valores: :values.',
'doesnt_end_with' => 'El campo :attribute no debe finalizar con uno de los siguientes: :values.',
'doesnt_start_with' => 'El campo :attribute no debe comenzar con uno de los siguientes: :values.',
'email' => 'El campo :attribute no es un correo válido.',
'encoding' => 'El campo :attribute debe estar codificado en :encoding.',
'ends_with' => 'El campo :attribute debe finalizar con uno de los siguientes valores: :values',
'enum' => 'El campo :attribute no está en la lista de valores permitidos.',
'exists' => 'El campo :attribute no existe.',
'extensions' => 'El campo :attribute debe tener una de las siguientes extensiones: :values.',
'file' => 'El campo :attribute debe ser un archivo.',
'filled' => 'El campo :attribute es obligatorio.',
'gt' => [
'array' => 'El campo :attribute debe tener más de :value elementos.',
'file' => 'El campo :attribute debe tener más de :value kilobytes.',
'numeric' => 'El campo :attribute debe ser mayor que :value.',
'string' => 'El campo :attribute debe tener más de :value caracteres.',
],
'gte' => [
'array' => 'El campo :attribute debe tener como mínimo :value elementos.',
'file' => 'El campo :attribute debe tener como mínimo :value kilobytes.',
'numeric' => 'El campo :attribute debe ser como mínimo :value.',
'string' => 'El campo :attribute debe tener como mínimo :value caracteres.',
],
'hex_color' => 'El campo :attribute debe tener un color hexadecimal válido.',
'image' => 'El campo :attribute debe ser una imagen.',
'in' => 'El campo :attribute no está en la lista de valores permitidos.',
'in_array' => 'El campo :attribute debe existir en :other.',
'in_array_keys' => 'El campo :attribute debe contener al menos una de las siguientes claves: :values.',
'integer' => 'El campo :attribute debe ser un número entero.',
'ip' => 'El campo :attribute debe ser una dirección IP válida.',
'ipv4' => 'El campo :attribute debe ser una dirección IPv4 válida.',
'ipv6' => 'El campo :attribute debe ser una dirección IPv6 válida.',
'json' => 'El campo :attribute debe ser una cadena JSON válida.',
'list' => 'El campo :attribute debe ser una lista.',
'lowercase' => 'El campo :attribute debe estar en minúscula.',
'lt' => [
'array' => 'El campo :attribute debe tener menos de :value elementos.',
'file' => 'El campo :attribute debe tener menos de :value kilobytes.',
'numeric' => 'El campo :attribute debe ser menor que :value.',
'string' => 'El campo :attribute debe tener menos de :value caracteres.',
],
'lte' => [
'array' => 'El campo :attribute debe tener como máximo :value elementos.',
'file' => 'El campo :attribute debe tener como máximo :value kilobytes.',
'numeric' => 'El campo :attribute debe ser como máximo :value.',
'string' => 'El campo :attribute debe tener como máximo :value caracteres.',
],
'mac_address' => 'El campo :attribute debe ser una dirección MAC válida.',
'max' => [
'array' => 'El campo :attribute no debe tener más de :max elementos.',
'file' => 'El campo :attribute no debe ser mayor que :max kilobytes.',
'numeric' => 'El campo :attribute no debe ser mayor que :max.',
'string' => 'El campo :attribute no debe ser mayor que :max caracteres.',
],
'max_digits' => 'El campo :attribute no debe tener más de :max dígitos.',
'mimes' => 'El campo :attribute debe ser un archivo con formato: :values.',
'mimetypes' => 'El campo :attribute debe ser un archivo con formato: :values.',
'min' => [
'array' => 'El campo :attribute debe tener al menos :min elementos.',
'file' => 'El tamaño de :attribute debe ser de al menos :min kilobytes.',
'numeric' => 'El tamaño de :attribute debe ser de al menos :min.',
'string' => 'El campo :attribute debe contener al menos :min caracteres.',
],
'min_digits' => 'El campo :attribute debe tener al menos :min dígitos.',
'missing' => 'El campo :attribute no debe estar presente.',
'missing_if' => 'El campo :attribute no debe estar presente cuando :other sea :value.',
'missing_unless' => 'El campo :attribute no debe estar presente a menos que :other sea :value.',
'missing_with' => 'El campo :attribute no debe estar presente si alguno de los campos :values está presente.',
'missing_with_all' => 'El campo :attribute no debe estar presente cuando los campos :values estén presentes.',
'multiple_of' => 'El campo :attribute debe ser múltiplo de :value',
'not_in' => 'El campo :attribute no debe estar en la lista.',
'not_regex' => 'El formato del campo :attribute no es válido.',
'numeric' => 'El campo :attribute debe ser numérico.',
'password' => [
'letters' => 'La :attribute debe contener al menos una letra.',
'mixed' => 'La :attribute debe contener al menos una letra mayúscula y una minúscula.',
'numbers' => 'La :attribute debe contener al menos un número.',
'symbols' => 'La :attribute debe contener al menos un símbolo.',
'uncompromised' => 'La :attribute proporcionada se ha visto comprometida en una filtración de datos (data leak). Elija una :attribute diferente.',
],
'present' => 'El campo :attribute debe estar presente.',
'present_if' => 'El campo :attribute debe estar presente cuando :other es :value.',
'present_unless' => 'El campo :attribute debe estar presente a menos que :other sea :value.',
'present_with' => 'El campo :attribute debe estar presente cuando :values esté presente.',
'present_with_all' => 'El campo :attribute debe estar presente cuando :values estén presentes.',
'prohibited' => 'El campo :attribute está prohibido.',
'prohibited_if' => 'El campo :attribute está prohibido cuando :other es :value.',
'prohibited_if_accepted' => 'El campo :attribute está prohibido cuando se acepta :other.',
'prohibited_if_declined' => 'El campo :attribute está prohibido cuando se rechaza :other.',
'prohibited_unless' => 'El campo :attribute está prohibido a menos que :other sea :values.',
'prohibits' => 'El campo :attribute prohibe que :other esté presente.',
'regex' => 'El formato del campo :attribute no es válido.',
'required' => 'El campo :attribute es obligatorio.',
'required_array_keys' => 'El campo :attribute debe contener entradas para: :values.',
'required_if' => 'El campo :attribute es obligatorio cuando :other es :value.',
'required_if_accepted' => 'El campo :attribute es obligatorio si :other es aceptado.',
'required_if_declined' => 'El campo :attribute es obligatorio si :other es rechazado.',
'required_unless' => 'El campo :attribute es obligatorio a menos que :other esté en :values.',
'required_with' => 'El campo :attribute es obligatorio cuando :values está presente.',
'required_with_all' => 'El campo :attribute es obligatorio cuando :values están presentes.',
'required_without' => 'El campo :attribute es obligatorio cuando :values no está presente.',
'required_without_all' => 'El campo :attribute es obligatorio cuando ninguno de :values está presente.',
'same' => 'Los campos :attribute y :other deben coincidir.',
'size' => [
'array' => 'El campo :attribute debe contener :size elementos.',
'file' => 'El tamaño de :attribute debe ser :size kilobytes.',
'numeric' => 'El tamaño de :attribute debe ser :size.',
'string' => 'El campo :attribute debe contener :size caracteres.',
],
'starts_with' => 'El campo :attribute debe comenzar con uno de los siguientes valores: :values',
'string' => 'El campo :attribute debe ser una cadena de caracteres.',
'timezone' => 'El campo :attribute debe ser una zona horaria válida.',
'ulid' => 'El campo :attribute debe ser un ULID válido.',
'unique' => 'El campo :attribute ya ha sido registrado.',
'uploaded' => 'Subir :attribute ha fallado.',
'uppercase' => 'El campo :attribute debe estar en mayúscula.',
'url' => 'El campo :attribute debe ser una URL válida.',
'uuid' => 'El campo :attribute debe ser un UUID válido.',
'attributes' => [
'address' => 'dirección',
'affiliate_url' => 'URL de afiliado',
'age' => 'edad',
'amount' => 'cantidad',
'announcement' => 'anuncio',
'area' => 'área',
'audience_prize' => 'premio del público',
'audience_winner' => 'ganador del público',
'available' => 'disponible',
'birthday' => 'cumpleaños',
'body' => 'contenido',
'city' => 'ciudad',
'color' => 'color',
'company' => 'compañía',
'compilation' => 'compilación',
'concept' => 'concepto',
'conditions' => 'condiciones',
'content' => 'contenido',
'contest' => 'concurso',
'country' => 'país',
'cover' => 'portada',
'created_at' => 'creado el',
'creator' => 'creador',
'currency' => 'moneda',
'current_password' => 'contraseña actual',
'customer' => 'cliente',
'date' => 'fecha',
'date_of_birth' => 'fecha de nacimiento',
'dates' => 'fechas',
'day' => 'día',
'deleted_at' => 'eliminado el',
'description' => 'descripción',
'display_type' => 'tipo de visualización',
'district' => 'distrito',
'duration' => 'duración',
'email' => 'correo electrónico',
'excerpt' => 'extracto',
'filter' => 'filtro',
'finished_at' => 'terminado el',
'first_name' => 'nombre',
'gender' => 'género',
'grand_prize' => 'gran Premio',
'group' => 'grupo',
'hour' => 'hora',
'image' => 'imagen',
'image_desktop' => 'imagen de escritorio',
'image_main' => 'imagen principal',
'image_mobile' => 'imagen móvil',
'images' => 'imágenes',
'is_audience_winner' => 'es ganador de audiencia',
'is_hidden' => 'está oculto',
'is_subscribed' => 'está suscrito',
'is_visible' => 'es visible',
'is_winner' => 'es ganador',
'items' => 'elementos',
'key' => 'clave',
'last_name' => 'apellidos',
'lesson' => 'lección',
'line_address_1' => 'línea de dirección 1',
'line_address_2' => 'línea de dirección 2',
'login' => 'acceso',
'message' => 'mensaje',
'middle_name' => 'segundo nombre',
'minute' => 'minuto',
'mobile' => 'móvil',
'month' => 'mes',
'name' => 'nombre',
'national_code' => 'código nacional',
'number' => 'número',
'password' => 'contraseña',
'password_confirmation' => 'confirmación de la contraseña',
'phone' => 'teléfono',
'photo' => 'foto',
'portfolio' => 'portafolio',
'postal_code' => 'código postal',
'preview' => 'vista preliminar',
'price' => 'precio',
'product_id' => 'ID del producto',
'product_uid' => 'UID del producto',
'product_uuid' => 'UUID del producto',
'promo_code' => 'código promocional',
'province' => 'provincia',
'quantity' => 'cantidad',
'reason' => 'razón',
'recaptcha_response_field' => 'respuesta del recaptcha',
'referee' => 'árbitro',
'referees' => 'árbitros',
'region' => 'región',
'reject_reason' => 'motivo de rechazo',
'remember' => 'recordar',
'restored_at' => 'restaurado el',
'result_text_under_image' => 'texto bajo la imagen',
'role' => 'rol',
'rule' => 'regla',
'rules' => 'reglas',
'second' => 'segundo',
'sex' => 'sexo',
'shipment' => 'envío',
'short_text' => 'texto corto',
'size' => 'tamaño',
'skills' => 'habilidades',
'slug' => 'slug',
'specialization' => 'especialización',
'started_at' => 'comenzado el',
'state' => 'estado',
'status' => 'estado',
'street' => 'calle',
'student' => 'estudiante',
'subject' => 'asunto',
'tag' => 'etiqueta',
'tags' => 'etiquetas',
'teacher' => 'profesor',
'terms' => 'términos',
'test_description' => 'descripción de prueba',
'test_locale' => 'idioma de prueba',
'test_name' => 'nombre de prueba',
'text' => 'texto',
'time' => 'hora',
'title' => 'título',
'type' => 'tipo',
'updated_at' => 'actualizado el',
'user' => 'usuario',
'username' => 'usuario',
'value' => 'valor',
'winner' => 'ganador',
'work' => 'trabajo',
'year' => 'año',
],
];