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
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...
Para instalar este pacote, você precisa:
NodeJS
Instalado- Uma máquina
Windows
,Linux
, ouMac
. - Ler a documentação :)
As funções estarão nesse formato:
NomeDaFunção(parametroObrigatório, ?parametroOpicional)
Explicação da função
nomeDoParametro (tipo)
valor default
(tipo)
retorno da função
Para contribuir com esse projeto, siga estas etapas:
- Bifurque este repositório.
- Crie um branch:
git checkout -b <nome_branch>
. - Faça suas alterações e confirme-as:
git commit -m '<mensagem_commit>'
- Envie para o branch original:
git push origin <nome_do_projeto> / <local>
- Crie a solicitação de pull.
Como alternativa, consulte a documentação do GitHub em como criar uma solicitação pull.
Agradecemos às seguintes pessoas que contribuíram para este projeto:
Luciano655dev |
Yagasaki7K |
Para instalar, é só rodar o comando:
npm i better-format
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
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)
string (string)
- a string que será formatada{ wordCase, removeSpaces, removeSpecialChars, capitalize }
- objeto opicional para personalizar a formatação da StringwordCase (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.
- Exemplo:
{ obscenities, censorshipChar, leetspeak }
- valor opicional, se for declarado, a string irá censurar palavrõesobscenities (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
(string)
- retorna uma string com o valor da string formatada.
bf.RemoveCurseWords(string, ?obscenities, ?censorshipChar, ?leetspeak)
Essa função irá censurar palavrões e palaras específicas. Mesma utilizada na FormatString()
string (string)
- a string que será formatadaobscenities (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
(string)
- retorna uma string com o valor da string censurada.
bf.ValidateCPF(cpf)
Essa função irá validar um CPF, retornando true
se for válido e false
se for inválido.
cpf (string/number)
- O CPF que será validado.
{ isValid: false }
- Caso o CPF seja inválido.
s{ isValid: true, cleanCPF: string }
- Caso o CPF seja válido, onde ocleanCPF
é apenas a parte numérica do CPF.
bf.ValidateCNPJ(cnpj)
Essa função irá validar um CNPJ, retornando true
se for válido e false
se for inválido.
cnpj (string/number)
- O CNPJ que será validado.
{ isValid: false }
- Caso o CNPJ seja inválido.{ isValid: true, cleanCNPJ: string }
- Caso o CNPJ seja válido, onde ocleanCNPJ
é apenas a parte numérica do CNPJ.
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
)
cep (string/number)
- O cep que será validado.
{ isValid, cleanCEP, logradouro, complemento, bairro, cidade, estado }
- Caso sejatrue
isValid (bool)
- Um booleano, sendotrue
quando é válido efalse
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 sejafalse
isValid (bool)
- Um booleano, sendotrue
quando é válido efalse
quando não é válido.errorMsg (string)
- A mensagem de erro referente ao erro (em português).
bf.ValidatePhoneNumber(phoneNumber, ?localização)
Essa função irá validar um Número de Telefone de qualquer país, mais informações Aqui.
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.
- 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 efalse
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 degetNumberType()
quando comparado a i18n.phonenumbers.PhoneNumberType.
bf.ValidateEmail(email)
Essa função irá validar um e-mail, retornando true
se for válido e false
se for inválido.
email (string)
- O e-mail que será validado.
(boolean)
-true
caso o e-mail seja válido efalse
caso seja inválido.
bf.ParseURL(url)
Essa função irá retornar informações diversas sobre uma URL.
url (string)
- A URL que será validado.
{ urlObj, protocol, subdomain, domain, port, path, query, parameters, fragment }
- As informações da URL, onde:
urlObj (object)
- retorna onew URL(url)
completo.protocol (string)
- retorna o protocolo da URL (http/https).subdomain (string/null)
- retorna o subdomínio da URL ounull
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.
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.
creditCardNumber (string/number)
- O número do cartão que será validado.
(boolean)
-true
caso o e-mail seja válido efalse
caso seja inválido.bank (string/undefined)
-nomeDaBandeira
caso seja definida e esteja pre-definida no código eundefined
caso não tenha ou não esteja pre-definida.
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.
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. Sendo0
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. Sendofalse
ou[]
para não ter palavras comuns.
{ verifications, totalPoints, isValid }
verifications (object of booleans)
- Um objeto com todas as verificações, de mesmo nome dos parâmetros, comtrue
caso a senha passe efalse
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 retornandotrue
caso a pontuação seja acima de 0 efalse
caso seja abaixo.