diff --git a/i18n.ts b/i18n.ts index 79701cb..2e1af07 100644 --- a/i18n.ts +++ b/i18n.ts @@ -1,13 +1,15 @@ import {getRequestConfig} from 'next-intl/server'; import ro from './messages/ro.json'; import en from './messages/en.json'; +import es from './messages/es.json'; // Can be imported from a shared config -export const locales = ['en', 'ro'] as const; +export const locales = ['en', 'ro', 'es'] as const; const messages = { ro, - en + en, + es } as const; export default getRequestConfig(async ({locale}) => { diff --git a/messages/en.json b/messages/en.json index 2022fb6..78f2862 100644 --- a/messages/en.json +++ b/messages/en.json @@ -282,7 +282,8 @@ "helper": "Choose which languages to include. Your current language stays selected.", "options": { "en": "English", - "ro": "Romanian" + "ro": "Romanian", + "es": "Spanish" } }, "alerts": { @@ -479,7 +480,8 @@ }, "languages": { "ro": "Română", - "en": "English" + "en": "English", + "es": "Español" } }, "bookmarks": { diff --git a/messages/es.json b/messages/es.json new file mode 100644 index 0000000..fe37c8c --- /dev/null +++ b/messages/es.json @@ -0,0 +1,575 @@ +{ + "navigation": { + "home": "Inicio", + "bible": "Biblia", + "prayers": "Oraciones", + "search": "Buscar", + "bookmarks": "Marcadores", + "profile": "Perfil", + "settings": "Configuración", + "logout": "Cerrar sesión", + "language": "Idioma" + }, + "chat": { + "title": "Chat Bíblico con IA", + "subtitle": "Asistente para preguntas bíblicas", + "placeholder": "Haz tu pregunta bíblica...", + "loading": "Escribiendo respuesta...", + "send": "Enviar", + "minimize": "Minimizar", + "close": "Cerrar", + "openFullPage": "Abrir página completa", + "enterToSend": "Enter para enviar • Shift+Enter para nueva línea", + "suggestions": { + "title": "Preguntas sugeridas:", + "questions": [ + "¿Qué dice la Biblia sobre el amor?", + "Explica la parábola del sembrador", + "¿Cuáles son los frutos del Espíritu?", + "¿Qué significa nacer de nuevo?", + "¿Cómo puedo orar mejor?" + ] + } + }, + "home": { + "hero": { + "title": "Guía Bíblica – Estudio Bíblico en Línea con Chat IA, Versículos Diarios y Comunidad de Oración", + "subtitle": "Estudio Bíblico en línea con asistencia de IA", + "description": "Guía Bíblica es una aplicación de estudio bíblico en línea. Lee las Escrituras, haz preguntas con chat impulsado por IA, busca versículos al instante y únete a una comunidad global de oración que apoya tu crecimiento espiritual.", + "cta": { + "readBible": "Comenzar a leer", + "askAI": "Pruébalo gratis ahora – Chat Bíblico con IA" + }, + "liveCounter": "Únete a miles de creyentes que usan Guía Bíblica para estudiar, comprender y aplicar la Palabra de Dios en su vida cotidiana" + }, + "features": { + "title": "Descubre las características", + "subtitle": "Todo lo que necesitas para una experiencia completa de estudio bíblico", + "bible": { + "title": "Lee la Biblia en línea", + "description": "accede a los 66 libros con una interfaz moderna e intuitiva" + }, + "chat": { + "title": "Chat Bíblico con IA", + "description": "haz preguntas sobre las Escrituras y obtén respuestas claras y precisas" + }, + "prayers": { + "title": "Comunidad de Oración", + "description": "comparte peticiones y únete a otros en oración" + }, + "search": { + "title": "Búsqueda de Versículos", + "description": "encuentra rápidamente versículos, palabras clave y temas en toda la Biblia" + } + }, + "stats": { + "bibleVersions": "Versiones de la Biblia", + "verses": "Versículos", + "aiAvailable": "Chat IA disponible" + }, + "cta": { + "title": "Comienza tu viaje espiritual", + "description": "Únete a nuestra comunidad y descubre la sabiduría de las Escrituras", + "startNow": "Comenzar ahora" + }, + "demo": { + "title": "Míralo en Acción", + "subtitle": "Experimenta nuestro asistente de IA inmediatamente sin necesidad de registrarte", + "userQuestion": "¿Qué dice la Biblia sobre la esperanza?", + "aiResponse": "La Biblia ofrece muchos versículos alentadores sobre la esperanza. Romanos 15:13 dice 'Que el Dios de la esperanza os llene de todo gozo y paz...'", + "tryButton": "Pruébalo tú mismo" + }, + "dailyVerse": { + "title": "Versículo Bíblico Diario – recibe ánimo de las Escrituras todos los días, directamente en tu bandeja de entrada", + "date": "15 de enero, 2024", + "verse": "Porque yo sé los planes que tengo para vosotros, declara el Señor, planes de prosperaros y no de dañaros, planes de daros esperanza y un futuro.", + "reference": "Jeremías 29:11", + "discuss": "Discutir Este Versículo", + "save": "Guardar", + "share": "Compartir", + "tomorrow": "Mañana: Recibe versículos diarios en tu bandeja de entrada", + "subscribe": "Suscribirse" + }, + "howItWorks": { + "title": "Comienza Tu Viaje Bíblico", + "subtitle": "Tres simples pasos para profundizar tu fe", + "step1": { + "title": "Haz Cualquier Pregunta", + "description": "Escribe o habla tus preguntas espirituales" + }, + "step2": { + "title": "Obtén Respuestas Bíblicas", + "description": "Recibe versículos y conocimientos al instante" + }, + "step3": { + "title": "Crece en Fe", + "description": "Guarda conocimientos, rastrea tu viaje" + }, + "getStarted": "Comenzar Gratis" + }, + "prayerWall": { + "title": "Peticiones de Oración de Nuestra Comunidad", + "prayer1": "Por favor oren por la salud y recuperación de mi madre...", + "time1": "hace 2 minutos", + "prayer2": "Buscando orientación para mi entrevista de trabajo mañana...", + "time2": "hace 15 minutos", + "prayer3": "¡Agradecido por oraciones respondidas sobre mi familia!", + "time3": "hace 1 hora", + "praying": "Orando", + "celebrating": "Celebrando", + "shareRequest": "Comparte Tu Petición de Oración", + "viewAll": "Ver Todas las Oraciones" + }, + "testimonials": { + "title": "Historias Reales de Nuestra Comunidad", + "subtitle": "Escucha cómo nuestra plataforma ha tocado vidas en todo el mundo", + "testimonial1": { + "name": "Sarah M.", + "role": "Madre de Dos | Usando durante 3 meses", + "text": "Como nueva mamá con poco tiempo, el chat IA me ayuda a mantenerme conectada con la palabra de Dios durante las tomas de las 3 am." + }, + "testimonial2": { + "name": "Pastor David K.", + "role": "Iglesia Bautista | Ministro Verificado", + "text": "Era escéptico sobre la IA y la fe, pero la precisión bíblica y las respuestas reflexivas superaron mis expectativas." + }, + "testimonial3": { + "name": "João S.", + "role": "Brasil | Usuario Internacional", + "text": "¡Finalmente, una aplicación bíblica que habla mi idioma - literalmente! El soporte en portugués es perfecto." + }, + "testimonial4": { + "name": "Rebecca T.", + "role": "Líder de Estudio Bíblico | 2 años usando", + "text": "Nuestro pequeño grupo usa esto para la preparación del estudio. Los conocimientos nos ayudan a profundizar juntos en la palabra de Dios." + }, + "shareStory": "Comparte Tu Historia" + }, + "faq": { + "title": "Preguntas Comunes", + "questions": { + "accurate": "¿Es la IA teológicamente precisa?", + "free": "¿Es realmente gratis?", + "languages": "¿Qué idiomas están soportados?", + "offline": "¿Puedo usarlo sin conexión?", + "privacy": "¿Son privados mis datos?", + "versions": "¿Qué versiones de la Biblia están disponibles?" + }, + "answers": { + "accurate": "Sí, nuestra IA está entrenada en fuentes teológicas verificadas y revisada por profesores de seminario y pastores para asegurar la precisión bíblica.", + "free": "Las características principales incluyendo lectura de la Biblia, chat IA y búsqueda básica son completamente gratuitas. Las características premium están disponibles para usuarios avanzados.", + "languages": "Soportamos 8 idiomas incluyendo inglés, español, portugués, francés, alemán y muchos más con calidad de hablante nativo.", + "offline": "La lectura básica de la Biblia está disponible sin conexión. Las características de IA y búsqueda requieren una conexión a Internet para la mejor experiencia.", + "privacy": "Tu viaje espiritual permanece entre tú y Dios. Usamos encriptación estándar de la industria y nunca compartimos datos personales.", + "versions": "Ofrecemos múltiples versiones de la Biblia incluyendo NIV, ESV, NASB, King James y traducciones en muchos idiomas." + }, + "contactSupport": "Contactar Soporte", + "viewAllFaqs": "Ver Todas las Preguntas Frecuentes" + }, + "newsletter": { + "title": "Sabiduría Diaria en Tu Bandeja de Entrada", + "description": "Recibe versículos alentadores, conocimientos y orientación espiritual entregados diariamente", + "placeholder": "Ingresa tu correo electrónico", + "subscribe": "Suscribirse" + }, + "footer": { + "brand": "Guía Bíblica", + "description": "Una plataforma moderna para el estudio bíblico con conocimientos impulsados por IA y soporte comunitario.", + "quickLinks": { + "title": "Enlaces Rápidos", + "about": "Acerca de", + "blog": "Blog", + "contact": "Contacto", + "support": "Soporte", + "api": "Documentación API" + }, + "legal": { + "title": "Legal", + "terms": "Términos", + "privacy": "Privacidad", + "cookies": "Política de Cookies", + "gdpr": "GDPR" + }, + "social": { + "title": "Síguenos" + }, + "copyright": "© 2024 Guía Bíblica - Hecho con ❤️ y 🙏" + } + }, + "pages": { + "bible": { + "title": "Lee la Biblia", + "subtitle": "Explora las Escrituras con una interfaz moderna e intuitiva", + "selectBook": "Seleccionar libro", + "selectChapter": "Seleccionar capítulo", + "version": "Versión", + "book": "Libro", + "chapter": "Capítulo", + "verse": "Versículo", + "verses": "versículos", + "save": "Guardar", + "saved": "Guardado", + "saving": "Guardando...", + "share": "Compartir", + "previousChapter": "Capítulo anterior", + "nextChapter": "Siguiente capítulo", + "loading": "Cargando versículos...", + "noVerses": "No se encontraron versículos para esta selección.", + "startReading": "Comienza a explorar las Escrituras", + "navigation": "Navegación", + "settings": "Configuración de Lectura", + "readingSettings": "Configuración de Lectura", + "preferences": "Preferencias", + "fontSize": "Tamaño de Fuente", + "lineHeight": "Altura de Línea", + "fontFamily": "Familia de Fuente", + "theme": "Tema", + "showVerseNumbers": "Mostrar Números de Versículos", + "columnLayout": "Diseño en Columnas", + "readingMode": "Modo de Lectura", + "readingModeDesc": "Ocultar elementos de la interfaz para lectura sin distracciones", + "resetPreferences": "Restablecer Preferencias", + "keyboardShortcuts": "Atajos de Teclado", + "shortcuts": { + "navigation": "← → : Navegar capítulos", + "sidebar": "B : Alternar barra lateral", + "settings": "S : Abrir configuración", + "readingMode": "R : Alternar modo de lectura", + "copy": "Ctrl+C : Copiar versículo actual" + }, + "themes": { + "light": "Claro", + "dark": "Oscuro", + "sepia": "Sepia" + }, + "fontFamilies": { + "system": "Fuente del Sistema", + "serif": "Serif", + "sans": "Sans-serif" + }, + "copy": "Copiar", + "copied": "¡Copiado!", + "copyVerse": "Copiar versículo", + "scrollToTop": "Desplazarse arriba", + "toggleSidebar": "Alternar barra lateral", + "toggleSettings": "Alternar configuración", + "toggleReadingMode": "Alternar modo de lectura", + "chapters": "capítulos", + "addBookmark": "Agregar marcador", + "removeBookmark": "Eliminar marcador", + "loginToBookmark": "Inicia sesión para marcar", + "bookmarkVerse": "Marcar versículo", + "removeVerseBookmark": "Eliminar marcador de versículo", + "toggleFullscreen": "Alternar pantalla completa", + "light": "Claro", + "dark": "Oscuro", + "sepia": "Sepia", + "close": "Cerrar" + }, + "prayers": { + "title": "Oraciones", + "subtitle": "Comparte oraciones y ora junto con la comunidad", + "viewModes": { + "private": "Mis oraciones privadas", + "public": "Muro de oración público" + }, + "chips": { + "private": "Privado", + "public": "Público" + }, + "languageFilter": { + "title": "Idiomas", + "helper": "Elige qué idiomas incluir. Tu idioma actual permanece seleccionado.", + "options": { + "en": "Inglés", + "ro": "Rumano", + "es": "Español" + } + }, + "alerts": { + "privateInfo": "Las oraciones privadas son visibles solo para ti. Activa el compartir público para publicarlas en el muro de oración.", + "publicInfo": "Navegando oraciones públicas para tu idioma seleccionado. Agrega más idiomas desde el filtro." + }, + "empty": { + "private": "Aún no tienes oraciones privadas. Crea una para comenzar tu diario de oración.", + "public": "Aún no hay oraciones públicas que coincidan con los filtros seleccionados." + }, + "addRequest": "Agregar petición de oración", + "anonymous": "Anónimo", + "prayFor": "Orar por esto", + "categories": { + "title": "Categorías", + "all": "Todas", + "personal": "Personal", + "family": "Familia", + "health": "Salud", + "work": "Trabajo", + "ministry": "Ministerio", + "world": "Mundo" + }, + "stats": { + "title": "Estadísticas", + "activeRequests": "{count} peticiones activas", + "totalPrayers": "{count} oraciones totales", + "youPrayed": "{count} peticiones por las que oraste" + }, + "buttons": { + "pray": "Orar", + "prayed": "Orado", + "share": "Compartir" + }, + "dialog": { + "title": "Agregar una petición de oración", + "titleLabel": "Título", + "categoryLabel": "Categoría", + "descriptionLabel": "Descripción", + "placeholder": "Describe tu petición de oración...", + "cancel": "Cancelar", + "submit": "Agregar oración", + "makePublic": "Compartir en el muro de oración público", + "visibilityPrivate": "Las oraciones privadas permanecen visibles solo para ti.", + "visibilityPublic": "Las oraciones públicas son visibles para todos en el muro de oración." + }, + "samples": { + "item1": { + "title": "Oración por sanidad", + "description": "Por favor oren por mi padre que está en el hospital. Necesita la sanidad de Dios.", + "author": "María P." + }, + "item2": { + "title": "Guía de Dios en la carrera", + "description": "Buscando la dirección de Dios para el siguiente paso en mi carrera. Por favor oren por claridad y paz.", + "author": "Alex M." + }, + "item3": { + "title": "Unidad en nuestra familia", + "description": "Por favor oren por la restauración de relaciones en nuestra familia y por el perdón mutuo.", + "author": "Anónimo" + } + } + }, + "search": { + "title": "Buscar en las Escrituras", + "subtitle": "Encuentra versículos y pasajes en toda la Biblia", + "input": { + "placeholder": "Buscar palabras, frases o referencias..." + }, + "button": { + "search": "Buscar" + }, + "filters": { + "title": "Filtros", + "clear": "Limpiar", + "testament": "Testamento", + "version": "Versión", + "options": { + "all": "Biblia Completa", + "old": "Antiguo Testamento", + "new": "Nuevo Testamento" + }, + "specificBooks": "Libros específicos" + }, + "history": { + "title": "Búsquedas recientes" + }, + "popular": { + "title": "Búsquedas populares", + "items": [ + "amor", + "fe", + "esperanza", + "perdón", + "paz", + "oración", + "sabiduría", + "alegría", + "paciencia", + "misericordia" + ] + }, + "searching": "Buscando...", + "results": "Resultados ({count})", + "relevance": "relevancia", + "searchIn": "Buscando en: {books}", + "noResults": { + "title": "No se encontraron resultados", + "description": "Intenta cambiar el término de búsqueda o ajustar los filtros." + }, + "empty": { + "title": "Comienza a buscar en las Escrituras", + "description": "Ingresa una palabra, una frase o una referencia bíblica para encontrar versículos relevantes." + }, + "copyVerse": "Copiar versículo", + "goTo": "Ir a", + "addBookmark": "Agregar marcador", + "removeBookmark": "Eliminar marcador", + "searchTypes": { + "anyWords": "Cualquier palabra", + "exactPhrase": "Frase exacta" + } + } + }, + "auth": { + "email": "Correo electrónico", + "password": "Contraseña", + "confirmPassword": "Confirmar contraseña", + "name": "Nombre", + "optional": "(opcional)", + "login": "Iniciar sesión", + "register": "Registrarse", + "logout": "Cerrar sesión", + "logging_in": "Iniciando sesión...", + "registering": "Registrando...", + "loginError": "Error al iniciar sesión", + "registerError": "Error al registrarse", + "connectionError": "Error de conexión", + "passwordMismatch": "Las contraseñas no coinciden", + "createAccount": "Crear cuenta", + "alreadyHaveAccount": "¿Ya tienes una cuenta?", + "noAccount": "¿No tienes una cuenta?", + "forgotPassword": "¿Olvidaste tu contraseña?", + "welcomeBack": "¡Bienvenido de nuevo!", + "joinUs": "¡Únete a nosotros!" + }, + "profile": { + "title": "Perfil", + "subtitle": "Administra la información de tu cuenta", + "personalInfo": "Información Personal", + "accountDetails": "Detalles de la Cuenta", + "name": "Nombre", + "email": "Correo electrónico", + "role": "Rol", + "memberSince": "Miembro Desde", + "edit": "Editar", + "save": "Guardar Cambios", + "saving": "Guardando...", + "cancel": "Cancelar", + "emailCannotChange": "El correo electrónico no se puede cambiar", + "profileUpdated": "¡Perfil actualizado exitosamente!", + "updateError": "Error al actualizar el perfil", + "user": "Usuario", + "admin": "Administrador", + "moderator": "Moderador" + }, + "settings": { + "title": "Configuración", + "subtitle": "Personaliza tu experiencia", + "appearance": "Apariencia", + "languageAndNotifications": "Idioma y Notificaciones", + "security": "Seguridad", + "theme": "Tema", + "fontSize": "Tamaño de Fuente", + "language": "Idioma", + "notifications": "Habilitar notificaciones", + "emailUpdates": "Actualizaciones por correo electrónico", + "changePassword": "Cambiar Contraseña", + "changePasswordSoon": "Cambiar Contraseña (Próximamente)", + "passwordSecurity": "Configuración de contraseña y seguridad", + "saveSettings": "Guardar Configuración", + "settingsSaved": "¡Configuración guardada exitosamente!", + "settingsError": "Error al guardar la configuración", + "themes": { + "light": "Claro", + "dark": "Oscuro", + "auto": "Automático" + }, + "fontSizes": { + "small": "Pequeño", + "medium": "Mediano", + "large": "Grande" + }, + "languages": { + "ro": "Română", + "en": "English", + "es": "Español" + } + }, + "bookmarks": { + "title": "Mis Marcadores", + "subtitle": "Tus versículos y capítulos guardados", + "totalBookmarks": "Marcadores totales", + "chapterBookmarks": "Capítulos guardados", + "verseBookmarks": "Versículos guardados", + "allBookmarks": "Todos", + "chapters": "Capítulos", + "verses": "Versículos", + "chapter": "Capítulo", + "verse": "Versículo", + "noBookmarks": "Aún no tienes marcadores", + "noBookmarksDescription": "Comienza a leer la Biblia y guarda tus capítulos o versículos favoritos", + "startReading": "Comenzar a leer", + "goTo": "Ir a", + "authRequired": "Debes estar autenticado", + "loadError": "Error al cargar marcadores" + }, + "common": { + "loading": "Cargando...", + "error": "Ocurrió un error", + "save": "Guardar", + "cancel": "Cancelar", + "delete": "Eliminar", + "edit": "Editar", + "close": "Cerrar", + "back": "Atrás", + "next": "Siguiente", + "previous": "Anterior" + }, + "contact": { + "hero": { + "title": "Contáctanos", + "subtitle": "Ponte en contacto con nuestro equipo", + "description": "¿Tienes preguntas sobre Guía Bíblica? ¿Necesitas soporte técnico? ¿Quieres compartir comentarios? Estamos aquí para ayudarte en tu viaje espiritual." + }, + "form": { + "title": "Envíanos un mensaje", + "description": "Completa el formulario a continuación y nos pondremos en contacto contigo lo antes posible.", + "fields": { + "name": "Tu Nombre", + "email": "Dirección de Correo Electrónico", + "subject": "Asunto", + "message": "Tu Mensaje" + }, + "submit": "Enviar Mensaje", + "submitting": "Enviando...", + "success": "¡Gracias por tu mensaje! Nos pondremos en contacto contigo pronto.", + "error": "Hubo un error al enviar tu mensaje. Por favor, inténtalo de nuevo." + }, + "info": { + "title": "Información de Contacto", + "description": "Contáctanos a través de cualquiera de estos canales:", + "email": { + "title": "Soporte por Correo Electrónico", + "content": "contact@biblical-guide.com" + }, + "address": { + "title": "Nuestra Oficina", + "content": "123 Bible Street, Faith City, FC 12345" + } + }, + "faq": { + "title": "Preguntas Frecuentes", + "description": "Encuentra respuestas rápidas a preguntas comunes sobre Guía Bíblica.", + "viewFaq": "Ver Preguntas Frecuentes" + } + }, + "seo": { + "title": "Guía Bíblica – Estudio Bíblico en Línea con IA, Versículos Diarios y Comunidad de Oración", + "description": "Guía Bíblica es una aplicación de estudio bíblico en línea con chat impulsado por IA, búsqueda instantánea de versículos y una comunidad global de oración. Recibe versículos bíblicos diarios y respuestas basadas en las Escrituras a tus preguntas.", + "keywords": "estudio bíblico en línea, chat bíblico con IA, versículo bíblico diario, aplicación de estudio bíblico, comunidad de oración, leer la biblia en línea, búsqueda de versículos, estudio de las escrituras", + "ogTitle": "Guía Bíblica – Estudio Bíblico en Línea con IA", + "ogDescription": "Lee la Biblia en línea, haz preguntas con chat IA y únete a una comunidad de oración. Recibe versículos bíblicos diarios en tu bandeja de entrada.", + "twitterTitle": "Guía Bíblica – Estudio Bíblico en Línea con IA", + "twitterDescription": "Aplicación de estudio bíblico en línea con chat IA, versículos diarios y comunidad de oración.", + "footer": "Guía Bíblica – aplicación de estudio bíblico en línea con chat IA, versículos diarios y comunidad de oración." + }, + "pwa": { + "install": "Instalar Aplicación", + "installing": "Instalando...", + "installSuccess": "¡Aplicación instalada exitosamente!", + "installFailed": "Instalación fallida", + "update": "Actualización disponible", + "updateReady": "Actualización lista", + "offline": "Estás sin conexión", + "onlineAgain": "¡Estás de vuelta en línea!" + } +} diff --git a/messages/ro.json b/messages/ro.json index 769c793..29c3ac6 100644 --- a/messages/ro.json +++ b/messages/ro.json @@ -282,7 +282,8 @@ "helper": "Alege limbile pentru care vrei să vezi rugăciuni. Limba curentă rămâne selectată.", "options": { "en": "Engleză", - "ro": "Română" + "ro": "Română", + "es": "Spaniolă" } }, "alerts": { @@ -479,7 +480,8 @@ }, "languages": { "ro": "Română", - "en": "English" + "en": "English", + "es": "Español" } }, "bookmarks": { diff --git a/middleware.ts b/middleware.ts index e04dfde..6ccc651 100644 --- a/middleware.ts +++ b/middleware.ts @@ -62,7 +62,7 @@ export async function middleware(request: NextRequest) { if (!token) { // Extract locale from pathname for redirect const locale = request.nextUrl.pathname.split('/')[1] - const isValidLocale = ['ro', 'en'].includes(locale) + const isValidLocale = ['ro', 'en', 'es'].includes(locale) const redirectLocale = isValidLocale ? locale : 'en' return NextResponse.redirect(new URL(`/${redirectLocale}/auth/login`, request.url)) @@ -83,6 +83,6 @@ export const config = { // - favicon.ico, robots.txt, sitemap.xml '/((?!api|admin|_next|_vercel|.*\\..*|favicon.ico|robots.txt|sitemap.xml).*)', // Match internationalized pathnames - '/(ro|en)/:path*' + '/(ro|en|es)/:path*' ], }