Skip to content

Commit

Permalink
Merge pull request #39 from moveo-ai/translations
Browse files Browse the repository at this point in the history
feat: add es and pt-br translations
  • Loading branch information
germanattanasio authored May 19, 2024
2 parents b4e0f61 + 341b5a1 commit 41ad61f
Show file tree
Hide file tree
Showing 5 changed files with 261 additions and 6 deletions.
4 changes: 2 additions & 2 deletions pages/api/book-tickets/util/api.ts
Original file line number Diff line number Diff line change
Expand Up @@ -56,7 +56,7 @@ export const getEvents = async (
*/
export const getDates = async (
logger: pino.Logger,
eventId: number,
eventId: string,
session_id: string,
request_id: string,
moveo_request_id: string,
Expand All @@ -72,7 +72,7 @@ export const getDates = async (
'X-Request-Id': request_id,
};
const events = mockedEvents(t);
const event = events.find((e) => e.eventId === eventId);
const event = events.find((e) => e.eventId.toString() === eventId);

if (event) {
logger.info(
Expand Down
2 changes: 1 addition & 1 deletion pages/api/book-tickets/util/models.ts
Original file line number Diff line number Diff line change
Expand Up @@ -65,7 +65,7 @@ export interface GetEventsResponse extends WebhookResponse {
}

export type GetEventDatesContext = {
event_id: number;
event_id: string;
};

export type GetEventDatesResult = { dates: string[]; price: number };
Expand Down
126 changes: 125 additions & 1 deletion public/locales/es/translation.json
Original file line number Diff line number Diff line change
Expand Up @@ -13,6 +13,130 @@
"type_here": "Escribe aqui...",
"well": "Qué salió bien?",
"wrong": "Qué salió mal?",
"survey": "Encuesta"
"survey": "Encuesta",
"rating_required": "Se requiere calificación"
},
"book-tickets": {
"accoustic_concert": "Concierto acústico",
"action_movie": "Película de acción",
"animation_movie": "Película de animación",
"blues_concert": "Blues",
"carousel_button_label": "Reservar boletos",
"carousel_button_value": "Reserva para un evento específico con nombre \"{{0}}\" {{1}}",
"cartoon": "Dibujos animados",
"cartoons": "Dibujos animados",
"classical_concert": "Concierto clásico",
"comedy_movie": "Pelicula de comedia",
"concerts": "Conciertos",
"dance_festival": "Festival de DJ/Danza",
"dance_performance": "Espectáculo de danza",
"dance_performances": "Espectáculos de danza",
"electronic_concert": "Concierto electrónico",
"event_title": "{{0}} en {{1}}",
"festivals": "festivales",
"friday": "Viernes",
"horror_movie": "Película de terror",
"london": "Londres",
"movies": "Películas",
"musical": "Musical",
"musicals": "Espectáculos musicales",
"mystery_movie": "Película de misterio",
"new_york": "Nueva York",
"no_more_events": "No más eventos",
"no_more_events_text": "No hay otros {{0}} disponibles en {{1}} para el próximo mes",
"no_price": "Sin precio",
"no_results": "No hay resultados",
"no_results_text": "No hay {{0}} disponibles en {{1}} para el próximo mes",
"no_title": "Sin título",
"number_of_events_in_area": "Hay {{0}} {{1}} disponibles en {{2}}",
"pop_concert": "Concierto pop",
"rap_festival": "Festival de Hip Hop/Rap",
"rock_concert": "Concierto de rock",
"romance_movie": "Pelicula de romance",
"saturday": "Sábado",
"select_date": "Por favor seleccione una de las fechas disponibles para el evento",
"theatrical_performance": "Presentación teatral",
"theatrical_performances": "Representaciones teatrales",
"tickets_cost": "Las entradas cuestan {{0}}€",
"view_more_button_label": "Ver más",
"view_more_button_value": "Quiero ver más {{0}} en {{1}}",
"view_more_subtitle": "Para ver más {{0}} en {{1}}, presione a continuación",
"view_more_title": "¿Quieres ver más {{0}}?"
},
"common": {
"address": "DIRECCIÓN",
"city": "Ciudad",
"continue": "Continuar",
"disclaimer": "Los datos personales que usted inserte serán almacenados y utilizados por la empresa únicamente cuando envíe este Formulario.",
"email": "Correo electrónico",
"loading": "Cargando",
"loading_message": "Envío de información a Môveo",
"name": "Nombre",
"other": "Otro",
"phone_number": "Número de teléfono",
"success_message": "Información enviada con éxito a Môveo",
"surname": "Apellido",
"zip_code": "Código postal"
},
"demo-form": {
"female": "Femenino",
"gender": "Género",
"male": "Masculino",
"region": "Región",
"title": "Formulario de demostración"
},
"errors": {
"credit_card": "Por favor inserte un número de tarjeta de crédito válido",
"credit_card_digits": "El número de tarjeta consta de 16 dígitos.",
"cvv": "Por favor inserte un cvv válido",
"cvv_digits": "CVV consta de 3 dígitos",
"date": "Por favor inserte una fecha válida",
"date_format": "La fecha debe tener formato MM/AA",
"email": "Por favor inserte una dirección de correo electrónico válida",
"only_latin": "Sólo se permiten caracteres latinos.",
"only_numbers": "Sólo se permiten números",
"phone_number": "Por favor inserte un número de teléfono válido",
"required": "Se requiere campo",
"ten_digit_num": "Por favor inserte un número de 10 dígitos",
"zip_code": "Por favor inserte un código postal válido"
},
"list-property-form": {
"asking-price-eur": "Precio de venta (€)",
"commercial": "Comercial",
"location": "Ubicación",
"offering_type": "Tipo de oferta",
"owner": "Nombre del dueño",
"plot": "Trama",
"property_type": "Tipo de propiedad",
"rent": "Alquilar",
"residential": "Residencial",
"sell": "Vender",
"size-sq-m": "Tamaño (m2)",
"title": "Listar propiedad"
},
"payment_form": {
"card_holder": "Nombre del titular de la tarjeta",
"card_number": "Número de tarjeta",
"cvv": "CVV",
"exp_date": "Fecha de caducidad",
"loading": "Su pago está siendo procesado",
"pay": "Pagar",
"payment-form": "Formulario de pago",
"success": "Su pago fue exitoso",
"title": "Paga de forma segura con tu tarjeta de crédito o débito"
},
"return_product_form": {
"changed_mind": "Cambié de opinión",
"damaged_product": "Recibí un producto dañado",
"defective_product": "El producto esta defectuoso",
"orderNo": "N º de pedido.",
"product_id": "ID del Producto",
"reason": "Razón",
"size": "La talla no me queda bien",
"title": "Devolver producto",
"wrong_product": "El producto no es lo que pedí."
},
"web-client-instance": {
"preview": "Avance"
}
}
126 changes: 125 additions & 1 deletion public/locales/pt-BR/translation.json
Original file line number Diff line number Diff line change
Expand Up @@ -13,6 +13,130 @@
"type_here": "Digite aqui...",
"well": "O que foi bem?",
"wrong": "O que deu errado?",
"survey": "Enquete"
"survey": "Enquete",
"rating_required": "A classificação é obrigatória"
},
"book-tickets": {
"accoustic_concert": "Concerto acústico",
"action_movie": "Filme de ação",
"animation_movie": "Filme de animação",
"blues_concert": "Blues",
"carousel_button_label": "Reservar ingressos",
"carousel_button_value": "Reserva para evento específico com nome \"{{0}}\" {{1}}",
"cartoon": "Desenho animado",
"cartoons": "Desenhos animados",
"classical_concert": "Concerto clássico",
"comedy_movie": "Filme de comédia",
"concerts": "Concertos",
"dance_festival": "Festival de Dj/Dança",
"dance_performance": "Performance de dança",
"dance_performances": "Apresentações de dança",
"electronic_concert": "Concerto eletrônico",
"event_title": "{{0}} em {{1}}",
"festivals": "Festivais",
"friday": "Sexta-feira",
"horror_movie": "Filme de terror",
"london": "Londres",
"movies": "Filmes",
"musical": "Musical",
"musicals": "Espetáculos musicais",
"mystery_movie": "Filme de mistério",
"new_york": "Nova Iorque",
"no_more_events": "Não há mais eventos",
"no_more_events_text": "Não há outros {{0}} disponíveis em {{1}} para o próximo mês",
"no_price": "Gratuito",
"no_results": "Nenhum resultado",
"no_results_text": "Não há {{0}} disponíveis em {{1}} para o próximo mês",
"no_title": "Sem título",
"number_of_events_in_area": "Existem {{0}} {{1}} disponíveis em {{2}}",
"pop_concert": "Concerto pop",
"rap_festival": "Festival de Hip Hop/Rap",
"rock_concert": "Concerto de rock",
"romance_movie": "Filme romântico",
"saturday": "Sábado",
"select_date": "Selecione uma das datas disponíveis para o evento",
"theatrical_performance": "Performance teatral",
"theatrical_performances": "Apresentações teatrais",
"tickets_cost": "Os ingressos custam {{0}}€",
"view_more_button_label": "Veja mais",
"view_more_button_value": "Quero ver mais {{0}} em {{1}}",
"view_more_subtitle": "Para ver mais {{0}} em {{1}}, pressione abaixo",
"view_more_title": "Gostaria de ver mais {{0}}?"
},
"common": {
"address": "Endereço",
"city": "Cidade",
"continue": "Continuar",
"disclaimer": "Os dados pessoais que você inserir serão armazenados e utilizados pela empresa somente quando você enviar este Formulário.",
"email": "E-mail",
"loading": "Carregando",
"loading_message": "Envio de informações para Môveo",
"name": "Nome",
"other": "Outro",
"phone_number": "Número de telefone",
"success_message": "Informações enviadas ao Môveo com sucesso",
"surname": "Sobrenome",
"zip_code": "CEP"
},
"demo-form": {
"female": "Fêmea",
"gender": "Gênero",
"male": "Macho",
"region": "Região",
"title": "Formulário de demonstração"
},
"errors": {
"credit_card": "Por favor insira um número de cartão de crédito válido",
"credit_card_digits": "O número do cartão consiste em 16 dígitos",
"cvv": "Por favor insira um cvv válido",
"cvv_digits": "CVV consiste em 3 dígitos",
"date": "Por favor insira uma data válida",
"date_format": "A data deve ter o formato MM/AA",
"email": "Por favor insira um endereço de e-mail válido",
"only_latin": "Somente caracteres latinos são permitidos",
"only_numbers": "Somente números são permitidos",
"phone_number": "Por favor insira um número de telefone válido",
"required": "Campo é obrigatório",
"ten_digit_num": "Por favor insira um número de 10 dígitos",
"zip_code": "Por favor insira um CEP válido"
},
"list-property-form": {
"asking-price-eur": "Preço pedido (€)",
"commercial": "Comercial",
"location": "Localização",
"offering_type": "Tipo de oferta",
"owner": "Nome do dono",
"plot": "Trama",
"property_type": "Tipo de Propriedade",
"rent": "Aluguel",
"residential": "residencial",
"sell": "Vender",
"size-sq-m": "Tamanho (m²)",
"title": "Listar propriedade"
},
"payment_form": {
"card_holder": "Nome do Titular",
"card_number": "Número do cartão",
"cvv": "CVV",
"exp_date": "Data de validade",
"loading": "Seu pagamento está sendo processado",
"pay": "Pagar",
"payment-form": "Formulário de pagamento",
"success": "Seu pagamento foi aprovado",
"title": "Pague com segurança com seu cartão de crédito ou débito"
},
"return_product_form": {
"changed_mind": "eu mudei de ideia",
"damaged_product": "Recebi um produto danificado",
"defective_product": "O produto está com defeito",
"orderNo": "Pedido nº.",
"product_id": "ID do produto",
"reason": "Razão",
"size": "O tamanho não cabe em mim",
"title": "Devolver produto",
"wrong_product": "O produto não é o que encomendei"
},
"web-client-instance": {
"preview": "Visualização"
}
}
9 changes: 8 additions & 1 deletion util/i18n.ts
Original file line number Diff line number Diff line change
Expand Up @@ -2,6 +2,8 @@ import i18n from 'i18next';
import { supportedLngs } from '../ni18n.config';
import EL from '../public/locales/el/translation.json';
import EN from '../public/locales/en/translation.json';
import ES from '../public/locales/es/translation.json';
import PT from '../public/locales/pt-BR/translation.json';

export const i18nInstance = async (lang = undefined) => {
i18n.init({
Expand All @@ -13,7 +15,12 @@ export const i18nInstance = async (lang = undefined) => {
supportedLngs,
fallbackLng: 'en',
debug: true,
resources: { en: { translation: EN }, el: { translation: EL } },
resources: {
en: { translation: EN },
el: { translation: EL },
es: { translation: ES },
pt: { translation: PT },
},
interpolation: {
escapeValue: false,
},
Expand Down

0 comments on commit 41ad61f

Please sign in to comment.