Messages

O Messages servirá para traduzir o sistema a um idioma específica como pt-BR (Português Brasileiro) ou en (Inglês Americano).

Sua estrutura fica da seguinte forma:

src ├─ Crucial │ ├─ Messages │ │ ├─ lang │ │ │ ├─ default.json │ │ │ ├─ pt-BR.json │ │ │ └─ index.js │ │ └─ index.js

Sintaxe

import { Messages } from "Crucial";

export default ({})=>{
    return <div>
        <h1>Título em Inglês: {Messages.getMsg("TITLE", "en")}</h1>
    </div>
}

/* Render: <div>
    <h1>Título em Inglês: Title</h1>
</div> */

Em: src/Crucial/Messages/lang/en.json

{
    "@metadata": {
        "lang-code": "en",
        "name": "English",
        "nativeName": "English",
        "authors": []
    },
    ...
    "TITLE": "Title",
    ...
}

Idiomas

Os diálogos de um idioma específico são concentrados em um único arquivo JSON arrow-up-rightdo idioma.

@ metadata

O metadata armazena os dados de identificação do idioma, nele contem os seguintes parâmetros:

  • "lang-code" : string

  • "name" : string

    • Se refere ao nome do idioma em Inglês.

  • "nativeName" : string

    • Se refere ao nome do idioma traduzido em seu idioma nativo, por exemplo, o idioma ja - Japanese o seu nome de idioma nativo será "日本語 (にほんご/にっぽんご)".

  • "authors" : Array

    • Se refere aos autores responsáveis pelo dicionário do idioma em questão.

Tradução

A forma de traduzir é no mesmo conceito do JSONarrow-up-right, com chave e valor.

A chave será a forma que chamará a tradução no dicionário, essa chave deve está no padrão: maiúsculo, se caracteres especiais e separados por traço (-). Exemplos: "MENU-INICIAL", "LOGIN-ERRO-EMAIL-INVALIDO", "REDEFINIR-SENHA", etc...

Para conseguir traduzir o valor da chave, essa chave deve ser utilizada da mesma forma em outros arquivos JSON arrow-up-rightdo idioma, porém, com seus valores traduzidos referente ao idioma em questão. Caso se no dicionário de um idioma específico não possuir uma tradução a aquela chave, ele retornará um valor nulo se caso não tiver definido no dicionário padrão (src/Crucial/Messages/lang/default.json).

circle-exclamation

Atenção!

O valor será o diálogo traduzido que retornará após ser convocado utilizando o método getMsg. Exemplo:

src/Crucial/Messages/lang/pt-BR.json

src/Crucial/Messages/lang/en.json

Propriedades

langList

static langList : Array

Se refere a lista de códigos em abreviação dos idiomas disponíveis.

lang

static lang : string

Se refere ao idioma que o sistema estará utilizando no momento, vem como padrão o idioma pt-BR (Português Brasileiro)

dic

static dic : object

Onde estará o dicionário traduzido de acordo com idioma que o sistema estará utilizando no momento.

dicKeys

static dicKeys : Array

Se refere a uma lista de chaves de vocação disponível no dicionário.

Métodos

getMsg

static getMsg ( key : string , lang : string | null ) : string | null

Esse método será responsável em consultar no dicionário a tradução do diálogo de acordo com a chave já pré-definida, se caso a chave não for encontrado, retornará valor nulo ou um diálogo semelhante.

Exemplo:

Last updated