Skip to content

Luciano655dev/better-format

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

27 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

better-format

GitHub repo size GitHub language count GitHub forks Bitbucket open issues Bitbucket open pull requests

Um Pacote NPM para facilitar sua vida na hora de formatar e pegar informações sobre variáveis
Acesse o projeto no site do NPM
Acesse o projeto no GitHub

Ajustes e melhorias

O projeto ainda está em desenvolvimento, com o tempo, novas funcionalidades serão adicionadas, como:

  • Formatar Strings
  • Verificar e-mail
  • Verificar CPF
  • Formatar Numeros
  • etc...

💻 Pré-requisitos

Para instalar este pacote, você precisa:

  • NodeJS Instalado
  • Uma máquina Windows, Linux, ou Mac.
  • Ler a documentação :)

📖 Como ler a documentação

As funções estarão nesse formato:

NomeDaFunção()

NomeDaFunção(parametroObrigatório, ?parametroOpicional)

Explicação da função

Parametros

  • nomeDoParametro (tipo) valor default

Retorno

  • (tipo) retorno da função

🧪 Como fazer um teste

📞 Contato

📫 Contribua

Para contribuir com esse projeto, siga estas etapas:

  1. Bifurque este repositório.
  2. Crie um branch: git checkout -b <nome_branch>.
  3. Faça suas alterações e confirme-as: git commit -m '<mensagem_commit>'
  4. Envie para o branch original: git push origin <nome_do_projeto> / <local>
  5. Crie a solicitação de pull.

Como alternativa, consulte a documentação do GitHub em como criar uma solicitação pull.

🤝 Colaboradores

Agradecemos às seguintes pessoas que contribuíram para este projeto:


Luciano655dev

Yagasaki7K

Nick-Gabe


As informações do projeto começam aqui



🚀 Instalação

Para instalar, é só rodar o comando:

npm i better-format

☕ Como utilizar

Primeiro, coloque um require no topo dos arquivos que você irá utilizar, por exemplo:

const bt = require('better-format');

Você pode colocar o nome que preferir no lugar de bt

🖥️ Funções

FormatString()

bf.FormatString(string, ?{ wordCase, removeSpaces, removeSpecialChars, capitalize }, ?{ obscenities, censorshipChar, leetspeak })

Essa função irá:

  • deixar o texto todo em minúsculo
  • retirar espaços
  • retirar caracteres especiais (#$%¨)
  • Censurar palavrões e outras palavras (opicional)

Parametros

  • string (string) - a string que será formatada
  • { wordCase, removeSpaces, removeSpecialChars, capitalize } - objeto opicional para personalizar a formatação da String
    • wordCase (string, can be 'lower', 'upper' or '') default: 'lower' - Fala se as letras serão colocadas todas em minusculo ou maiusculo, utilize '' (string vazia) para não modifica-las.
    • removeSpaces (boolean) default: true - Remove ou não os espaços da string.
    • removeSpecialChars (boolean) default: true - Remove ou não os caracteres especiais (tudo que não seja letra e número) da string.
    • capitalize (string or array of strings) default: '' - Deixa uma letra maiuscula depois de todas as strings passadas na string inicial. Utilize '' para não modificar
      • Exemplo: capitalize: '. ' - 'ele é legal. outra frase. olha isso' -> 'Ele é legal. Outra frase. Olha isso'
      • Exemplo: capitalize: ['. ', '5 '] - 'frase bacana. nós temos 5 pessoas' -> 'Frase Bacana. Nós temos 5 Pessoas'
      • A implementação de Regex para essa função será adicionada nas próximas atualizações. Você também pode contribuir.
  • { obscenities, censorshipChar, leetspeak } - valor opicional, se for declarado, a string irá censurar palavrões
    • obscenities (array of strings) default: [] - uma Array com as palavras censuradas. Caso esteja vazia, apenas as palavras no banco de dados serão censuradas (alguns palavrões em inglês).
    • censorshipChar (char) default: '#' - O caractere que substituirá as letras da palavra censurada. Para retirar a palavra censurada, utilize '' como valor dessa variável;
    • leetspeak (boolean) default: true - irá ou não considerar numeros que se parecem com letras na hora de procurar palavras. Ex: h3ll0

Retorno

  • (string) - retorna uma string com o valor da string formatada.

RemoveCurseWords()

bf.RemoveCurseWords(string, ?obscenities, ?censorshipChar, ?leetspeak)

Essa função irá censurar palavrões e palaras específicas. Mesma utilizada na FormatString()

Parametros

  • string (string) - a string que será formatada
  • obscenities (array of strings) default: [] - uma Array com as palavras censuradas. Caso esteja vazia, apenas as palavras no banco de dados serão censuradas (alguns palavrões em inglês).
  • censorshipChar (char) default: '#' - O caractere que substituirá as letras da palavra censurada. Para retirar a palavra censurada, utilize '' como valor dessa variável;
  • leetspeak (boolean) default: true - irá ou não considerar numeros que se parecem com letras na hora de procurar palavras. Ex: h3ll0

Retorno

  • (string) - retorna uma string com o valor da string censurada.

ValidateCPF()

bf.ValidateCPF(cpf)

Essa função irá validar um CPF, retornando true se for válido e false se for inválido.

Parametros

  • cpf (string/number) - O CPF que será validado.

Retorno

  • { isValid: false } - Caso o CPF seja inválido.
    s
  • { isValid: true, cleanCPF: string } - Caso o CPF seja válido, onde o cleanCPF é apenas a parte numérica do CPF.

ValidateCNPJ()

bf.ValidateCNPJ(cnpj)

Essa função irá validar um CNPJ, retornando true se for válido e false se for inválido.

Parametros

  • cnpj (string/number) - O CNPJ que será validado.

Retorno

  • { isValid: false } - Caso o CNPJ seja inválido.
  • { isValid: true, cleanCNPJ: string } - Caso o CNPJ seja válido, onde o cleanCNPJ é apenas a parte numérica do CNPJ.

ValidateCEP()

await bf.ValidateCEP(cep)

Essa função irá validar e retornar as informações de um CEP de acordo com a API ViaCEP. NOTA: Essa é uma PROMISE, portanto, para utiliza-la, será preciso do .then().catch() ou de uma função assíncrona (async/await)

Parametros

  • cep (string/number) - O cep que será validado.

Retorno

  • { isValid, cleanCEP, logradouro, complemento, bairro, cidade, estado } - Caso seja true
    • isValid (bool) - Um booleano, sendo true quando é válido e false quando não é válido.
    • cleanCEP (string) - Uma string com o valor do CEP formatado.
    • logradouro (string) - O logradouro referente ao CEP (Ex: 'Avenida Paulista').
    • complemento (string) - O complemento referente ao CEP (Ex: 'numero 243, apartamento 502').
    • bairro - O bairro referente ao CEP (Ex: 'Liberdade').
    • cidade - A cidade referente ao CEP (Ex: 'São Paulo').
    • estado - A sigla do estado referente ao CEP (Ex: 'SP').
  • { isValid, errorMsg } - Caso seja false
    • isValid (bool) - Um booleano, sendo true quando é válido e false quando não é válido.
    • errorMsg (string) - A mensagem de erro referente ao erro (em português).

ValidatePhoneNumber()

bf.ValidatePhoneNumber(phoneNumber, ?localização)

Essa função irá validar um Número de Telefone de qualquer país, mais informações Aqui.

Parametros

  • phoneNumber (string) - O nº de telefone que será validado, precisa começar com '+' seguido do código do pais, exemplo: +## ## #####-####.
  • localização (string) - A sigla do país ('BR', 'US', etc). Caso seja preenchido, a função irá verificar se o número é daquele país.

Retorno

  • caso negado - { valid: false, locality: null } - Caso o telefone não pertença ao país especificado (se for especificado) ou não seja válido.
  • caso aceito - { valid: true, locality, nationalNumber, extension, countrySourceCode, numberType } - Caso o telefone seja válido e pertença ao pais especificado (se for especificado).
    • valid (boolean) - true se for valido e false se for inválido.
    • locality (string) - Sigla do país do número ('BR', 'US', etc).
    • nationalNumber (number) - Seu número nacional, sem o código do país, como +## ## #####-### -> #########.
    • extension (string) - Mostra o ramal do telefone (se possuir).
    • countrySourceCode (number) - Imprime o ramal do telefone em comparação com i18n.phonenumbers.CountryCodeSource .
    • numberType (number) - Resultado de getNumberType() quando comparado a i18n.phonenumbers.PhoneNumberType.

ValidateEmail()

bf.ValidateEmail(email)

Essa função irá validar um e-mail, retornando true se for válido e false se for inválido.

Parametros

  • email (string) - O e-mail que será validado.

Retorno

  • (boolean) - true caso o e-mail seja válido e false caso seja inválido.

ParseURL()

bf.ParseURL(url)

Essa função irá retornar informações diversas sobre uma URL.

Parametros

  • url (string) - A URL que será validado.

Retorno

  • { urlObj, protocol, subdomain, domain, port, path, query, parameters, fragment } - As informações da URL, onde:
    • urlObj (object) - retorna o new URL(url) completo.
    • protocol (string) - retorna o protocolo da URL (http/https).
    • subdomain (string/null) - retorna o subdomínio da URL ou null caso não tenha.
    • domain (string) - retorna o domínio principal da URL ou uma string vazia "" caso não tenha.
    • port (string) - retorna a porta da URL ou uma string vazia "" caso não tenha.
    • path (string) - retorna os caminhos da URL ou uma string vazia "" caso não tenha.
    • query (string) - retona a query da URL ou uma string vazia "" caso não tenha.
    • parameters (object) - retorna os parametros da URL ou um objeto vazio {} caso não tenha.
    • fragment (string) - retorna os fragmentos da URL ou uma string vazia "" caso não tenha.

ValidateCreditCard()

bf.ValidateCreditCard(creditCardNumber)

Essa função irá validar um cartão, retornando true e bank (string) se for válido e false se for inválido.

Parametros

  • creditCardNumber (string/number) - O número do cartão que será validado.

Retorno

  • (boolean) - true caso o e-mail seja válido e false caso seja inválido.
  • bank (string/undefined) - nomeDaBandeira caso seja definida e esteja pre-definida no código e undefined caso não tenha ou não esteja pre-definida.

ValidatePassword()

bf.ValidatePassword(password, ?{ minLength, needNumbers, needUppercaseLetters, needSpecialChars, commonWords })

Essa função irá validar uma senha, retornando uma pontuação para ela, mostrando se é ou não é válida e retornando os testes aprovados e recusados.

Parametros

  • creditCardNumber (string/number) - O número do cartão que será validado.
  • { minLength, needNumbers, needUppercaseLetters, needSpecialChars, commonWords } - Objeto opicional para personalizar a validação, onde:
    • minLength (string) default: 8 - Tamanho mínimo para a senha. Sendo 0 quando não tem tamanho mínimo.
    • needNumbers (boolean) default: true - Se precisa ou não de números.
    • needUppercaseLetters (boolean) default: true - Se precisa ou não de alguma letra maiúscula.
    • needSpecialChars (boolean) default: true - Se precisa ou não de algum caractere especial.
    • commonWords (array of strings) default: ["123", "abc"] - Lista de palavras que não podem ser usadas na senha, por serem muito comuns ou por conterem informações pessoais. Sendo false ou [] para não ter palavras comuns.

Retorno

  • { verifications, totalPoints, isValid }
    • verifications (object of booleans) - Um objeto com todas as verificações, de mesmo nome dos parâmetros, com true caso a senha passe e false caso não passe da verificação.
    • totalPoints (number) - numero com a pontuação da seha de acordo com as verificações.
    • isValid (boolean) - Boolean retornando true caso a pontuação seja acima de 0 e false caso seja abaixo.

About

Um pacote NPM para facilitar a formatação de variaveis e conseguir detalhes sobre elas

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published