Skip to content

Commit

Permalink
[INJIWEB-1056] : add portuguese support for injiweb
Browse files Browse the repository at this point in the history
Signed-off-by: Vijay <94220135+vijay151096@users.noreply.github.com>
  • Loading branch information
vijay151096 committed Nov 27, 2024
1 parent 4017b7d commit 51a60b8
Show file tree
Hide file tree
Showing 4 changed files with 110 additions and 4 deletions.
2 changes: 1 addition & 1 deletion inji-web/public/env.config.js
Original file line number Diff line number Diff line change
@@ -1,5 +1,5 @@
window._env_ = {
DEFAULT_LANG: "en",
DEFAULT_LANG: "pt",
DEFAULT_THEME: "CAR_theme",
DEFAULT_FAVICON: "favicon.ico",
DEFAULT_TITLE: "Inji Web",
Expand Down
103 changes: 103 additions & 0 deletions inji-web/src/locales/pt.json
Original file line number Diff line number Diff line change
@@ -0,0 +1,103 @@
{
"PageTemplate": {
"Header": {
"home": "Lar",
"help": "Ajuda"
},
"Footer": {
"copyRight": "Desenvolvido por Inji, um produto MOSIP"
}
},
"HomePage": {
"Intro": {
"title": "Baixar uma credencial está a apenas um clique de distância!",
"subTitle": "Procure o emissor e na próxima etapa selecione a credencial para fazer o download.",
"searchText": "Pesquisar emissores por nome"
},
"emptyContainerContent": "Nenhum emissor encontrado. ",
"containerHeading": "Lista de Emissores",
"errorContent": "O serviço não está disponível no momento. "
},
"CredentialsPage": {
"searchText": "Tipo de credencial de pesquisa",
"emptyContainerContent": "Nenhuma credencial encontrada. ",
"containerHeading": "Lista de tipos de credenciais",
"errorContent": "O serviço não está disponível no momento. "
},
"RedirectionPage": {
"navigateButton": "Vá para casa",
"loading": {
"title": "Download em andamento...",
"subTitle": "Por favor, espere um momento! "
},
"success": {
"title": "Sucesso!",
"subTitle": "Verifique sua pasta de downloads!"
},
"error": {
"invalidSession": {
"title": "Sessão inválida",
"subTitle": "a sessão não é válida ou a sessão foi concluída"
},
"generic": {
"title": "Ocorreu um erro",
"subTitle": "Desculpe, devido a um erro técnico, não foi possível fazer o download do VC. "
}
}
},
"AuthorizationPage": {
"error": {
"code": {
"invalid_redirect_uri": "Acesso negado!",
"invalid_client": "Acesso negado!"
},
"message": {
"invalid_redirect_uri": "As credenciais não podem ser compartilhadas porque não conseguimos identificar quem as solicitou. ",
"invalid_client": "As credenciais não podem ser compartilhadas porque não conseguimos identificar quem as solicitou. "
}
}
},
"PageNotFound": {
"navigateButton": "Vá para casa",
"heading": "Isso é um erro",
"subHeading": "O URL solicitado {{pathname}} não foi encontrado neste servidor."
},
"HelpPage": {
"title": "Ajuda"
},
"Help": {
"item1": {
"title": "Quem são os emissores?",
"description1": "Os emissores são órgãos governamentais ou entidades de confiança do governo, responsáveis ​​por fornecer credenciais verificáveis ​​em formato PDF aos residentes, mediante solicitação."
},
"item2": {
"title": "O que são credenciais verificáveis?",
"description1": "Credenciais verificáveis ​​são documentos digitais que ajudam os usuários a compartilhar informações como identidade ou qualificações com o provedor de serviços, que podem ser verificadas instantaneamente. "
},
"item3": {
"title": "Como posso baixar uma credencial no Inji Web?",
"description1": "Etapa 1: pesquise e escolha um emissor na página inicial e selecione um tipo de credencial.",
"description2": "Etapa 2: na página de autenticação, forneça os detalhes necessários",
"description3": "Etapa 3: O formato PDF da credencial verificável será baixado no sistema."
},
"item4": {
"title": "Quais detalhes preciso fornecer para baixar minha credencial?",
"description1": "O emissor da credencial teria fornecido detalhes como UIN/VID no caso de identificação nacional MOSIP ou número da apólice, nome e DoB para um cartão de seguro. "
},
"item5": {
"title": "Onde posso encontrar minha credencial?",
"description1": "A credencial verificável será baixada na pasta Downloads do seu sistema."
},
"item6": {
"title": "Quais detalhes estão presentes na credencial PDF?",
"description1": "Os detalhes coletados como parte do processo de inscrição serão apresentados no PDF. "
},
"item7": {
"title": "Por que não encontro a lista de emissores?",
"description1": "Os possíveis motivos para esse problema incluem:",
"description2": "1. Erros técnicos podem tornar o serviço temporariamente indisponível, impedindo o acesso à lista de emissores.",
"description3": "2. Nenhum emissor foi configurado.",
"description4": "Em ambos os casos, entre em contato com sua equipe técnica para resolver o problema."
}
}
}
3 changes: 2 additions & 1 deletion inji-web/src/pages/RedirectionPage.tsx
Original file line number Diff line number Diff line change
Expand Up @@ -24,6 +24,7 @@ export const RedirectionPage: React.FC = () => {
const [session, setSession] = useState<SessionObject | null>(activeSessionInfo);
const [completedDownload, setCompletedDownload] = useState<boolean>(false);
const displayObject = getObjectForCurrentLanguage(session?.selectedIssuer?.display ?? []);
const language = useSelector((state: RootState) => state.common.language);

useEffect(() => {
const fetchToken = async () => {
Expand All @@ -33,7 +34,7 @@ export const RedirectionPage: React.FC = () => {
const codeVerifier = activeSessionInfo?.codeVerifier;
const issuerId = activeSessionInfo?.selectedIssuer.credential_issuer ?? "";
const certificateId = activeSessionInfo?.certificateId;
const language = useSelector((state: RootState) => state.common.language);


const requestBody = new URLSearchParams(getTokenRequestBody(code, codeVerifier, issuerId, certificateId, language));
const apiRequest = api.fetchTokenAnddownloadVc;
Expand Down
6 changes: 4 additions & 2 deletions inji-web/src/utils/i18n.ts
Original file line number Diff line number Diff line change
Expand Up @@ -6,18 +6,20 @@ import ta from '../locales/ta.json';
import hi from '../locales/hi.json';
import kn from '../locales/kn.json';
import ar from '../locales/ar.json';
import pt from '../locales/pt.json';
import {storage} from "./storage";
import {DisplayArrayObject, LanguageObject} from "../types/data";

const resources = {en, ta, kn, hi, fr, ar};
const resources = {en, ta, kn, hi, fr, ar, pt};

export const LanguagesSupported: LanguageObject[] = [
{label: "English", value: 'en'},
{label: "தமிழ்", value: 'ta'},
{label: "ಕನ್ನಡ", value: 'kn'},
{label: "हिंदी", value: 'hi'},
{label: "Français", value: 'fr'},
{label: "عربي", value: 'ar'}
{label: "عربي", value: 'ar'},
{label: "português", value: 'pt'}
]

export const defaultLanguage = window._env_.DEFAULT_LANG;
Expand Down

0 comments on commit 51a60b8

Please sign in to comment.