better-format v0.0.8
better-format
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:
NodeJSInstalado- Uma máquina
Windows,Linux, ouMac. - 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
- Para seguir essa etapa da melhor forma, siga a documentação d Jest.JS
📞 Contato
- Twitter: @Luciano655dev
- GitHub: @Luciano655dev
- Discord: @Luciano655 (antes Luciano655#7898)
📫 Contribua
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.
🤝 Colaboradores
Agradecemos às seguintes pessoas que contribuíram para este projeto:
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 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
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á 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
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 ocleanCPFé 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 ocleanCNPJé 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 sejatrueisValid (bool)- Um booleano, sendotruequando é válido efalsequando 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 sejafalseisValid (bool)- Um booleano, sendotruequando é válido efalsequando 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)-truese for valido efalsese 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.
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)-truecaso o e-mail seja válido efalsecaso 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 onew URL(url)completo.protocol (string)- retorna o protocolo da URL (http/https).subdomain (string/null)- retorna o subdomínio da URL ounullcaso 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)-truecaso o e-mail seja válido efalsecaso seja inválido.bank (string/undefined)-nomeDaBandeiracaso seja definida e esteja pre-definida no código eundefinedcaso 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. Sendo0quando 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. Sendofalseou[]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, comtruecaso a senha passe efalsecaso não passe da verificação.totalPoints (number)- numero com a pontuação da seha de acordo com as verificações.isValid (boolean)- Boolean retornandotruecaso a pontuação seja acima de 0 efalsecaso seja abaixo.