npm package discovery and stats viewer.

Discover Tips

  • General search

    [free text search, go nuts!]

  • Package details

    pkg:[package-name]

  • User packages

    @[username]

Sponsor

Optimize Toolset

I’ve always been into building performant and accessible sites, but lately I’ve been taking it extremely seriously. So much so that I’ve been building a tool to help me optimize and monitor the sites that I build to make sure that I’m making an attempt to offer the best experience to those who visit them. If you’re into performant, accessible and SEO friendly sites, you might like it too! You can check it out at Optimize Toolset.

About

Hi, 👋, I’m Ryan Hefner  and I built this site for me, and you! The goal of this site was to provide an easy way for me to check the stats on my npm packages, both for prioritizing issues and updates, and to give me a little kick in the pants to keep up on stuff.

As I was building it, I realized that I was actually using the tool to build the tool, and figured I might as well put this out there and hopefully others will find it to be a fast and useful way to search and browse npm packages as I have.

If you’re interested in other things I’m working on, follow me on Twitter or check out the open source projects I’ve been publishing on GitHub.

I am also working on a Twitter bot for this site to tweet the most popular, newest, random packages from npm. Please follow that account now and it will start sending out packages soon–ish.

Open Software & Tools

This site wouldn’t be possible without the immense generosity and tireless efforts from the people who make contributions to the world and share their work via open source initiatives. Thank you 🙏

© 2026 – Pkg Stats / Ryan Hefner

uget-helpers

v1.0.0

Published

Biblioteca com várias funções utilitárias para projetos UGET

Readme

uget-helpers

NPM
Version NPM
Downloads License

Biblioteca com várias funções utilitárias para projetos UGET

Instalação

npm install uget-helpers

Funções Front-end (Máscaras e Validações)

allFirstLettersToUppercase(textValue: string)

Converte a primeira letra de cada palavra em uma string para maiúscula.

Parâmetros:

  • textValue (string): A string a ser formatada.

Retorno:

  • (string): A string com a primeira letra de cada palavra em maiúscula.

Exemplo de uso:

import { allFirstLettersToUppercase } from "uget-helpers";

const text = "exemplo de texto";
const formattedText = allFirstLettersToUppercase(text);

console.log(formattedText); // 'Exemplo De Texto'

americanExpressMask(americanExpressNumber: string)

Aplica uma máscara de cartão American Express.

Parâmetros:

  • americanExpressNumber (string): O número do cartão a ser formatado.

Retorno:

  • (string): O número do cartão com a máscara.

Formato: #### ###### #####

Exemplo de uso:

import { americanExpressMask } from "uget-helpers";

const cardNumber = "371234567890123";
const maskedCardNumber = americanExpressMask(cardNumber);

console.log(maskedCardNumber); // '3712 345678 90123'

birthDateIsValid(birthDate: string)

Verifica se uma data de nascimento é válida (entre 18 e 120 anos).

Parâmetros:

  • birthDate (string): A data de nascimento no formato DD/MM/YYYY ou DD-MM-YYYY.

Retorno:

  • (boolean): true se a data for válida, false caso contrário.

Exemplo de uso:

import { birthDateIsValid } from "uget-helpers";

const validBirthDate = "01/01/2000";
const invalidBirthDate = "01/01/2020";

console.log(birthDateIsValid(validBirthDate)); // true
console.log(birthDateIsValid(invalidBirthDate)); // false

birthDateMask(birthDate: string)

Aplica uma máscara de data de nascimento.

Parâmetros:

  • birthDate (string): A data de nascimento a ser formatada.

Retorno:

  • (string): A data de nascimento com a máscara.

Formato: ##/##/####

Exemplo de uso:

import { birthDateMask } from "uget-helpers";

const date = "01012000";
const maskedDate = birthDateMask(date);

console.log(maskedDate); // '01/01/2000'

cardDueDateMask(cardDueDate: string)

Aplica uma máscara de data de vencimento de cartão.

Parâmetros:

  • cardDueDate (string): A data de vencimento a ser formatada.

Retorno:

  • (string): A data de vencimento com a máscara.

Formato: ##/## ou ##/####

Exemplo de uso:

import { cardDueDateMask } from "uget-helpers";

const dueDate = "1225";
const maskedDueDate = cardDueDateMask(dueDate);

console.log(maskedDueDate); // '12/25'

cepMask(cep: string)

Aplica uma máscara de CEP.

Parâmetros:

  • cep (string): O CEP a ser formatado.

Retorno:

  • (string): O CEP com a máscara.

Formato: #####-###

Exemplo de uso:

import { cepMask } from "uget-helpers";

const cep = "12345678";
const maskedCep = cepMask(cep);

console.log(maskedCep); // '12345-678'

checkIfIsValidPhoneOrLandlineNumber(number: string, checkIfIs: 'phoneNumber' | 'landline')

Verifica se um número de telefone (celular ou fixo) é válido.

Parâmetros:

  • number (string): O número a ser verificado.
  • checkIfIs ('phoneNumber' | 'landline'): O tipo de número a ser verificado.

Retorno:

  • (boolean): true se o número for válido, false caso contrário.

Exemplo de uso:

import { checkIfIsValidPhoneOrLandlineNumber } from "uget-helpers";

const validPhoneNumber = "31988888888";
const invalidPhoneNumber = "3188888888";
const validLandline = "3140028922";
const invalidLandline = "40028922";

console.log(
  checkIfIsValidPhoneOrLandlineNumber(validPhoneNumber, "phoneNumber")
); // true
console.log(
  checkIfIsValidPhoneOrLandlineNumber(invalidPhoneNumber, "phoneNumber")
); // false
console.log(checkIfIsValidPhoneOrLandlineNumber(validLandline, "landline")); // true
console.log(checkIfIsValidPhoneOrLandlineNumber(invalidLandline, "landline")); // true

cnpjIsValid(cnpj: string)

Verifica se um CNPJ é válido.

Parâmetros:

  • cnpj (string): O CNPJ a ser verificado.

Retorno:

  • (boolean): true se o CNPJ for válido, false caso contrário.

Exemplo de uso:

import { cnpjIsValid } from "uget-helpers";

const validCnpj = "11.222.333/0001-81";
const invalidCnpj = "11.111.111/1111-11";

console.log(cnpjIsValid(validCnpj)); // true
console.log(cnpjIsValid(invalidCnpj)); // false

cnpjMask(cpnj: string)

Aplica uma máscara de CNPJ.

Parâmetros:

  • cpnj (string): O CNPJ a ser formatado.

Retorno:

  • (string): O CNPJ com a máscara.

Formato: ##.###.###/####-##

Exemplo de uso:

import { cnpjMask } from "uget-helpers";

const cnpj = "11222333000181";
const maskedCnpj = cnpjMask(cnpj);

console.log(maskedCnpj); // '11.222.333/0001-81'

cpfIsValid(cpf: string)

Verifica se um CPF é válido.

⚠️ Atenção: Esta função pode ter um comportamento inesperado para alguns CPFs devido a uma implementação legada. Para validações de back-end, é altamente recomendável usar a função isCpfStrictValid.

Parâmetros:

  • cpf (string): O CPF a ser verificado.

Retorno:

  • (boolean): true se o CPF for válido, false caso contrário.

isCpfStrictValid(cpf: string)

Realiza uma validação estrita de CPF, usando o algoritmo correto. Ideal para ser usado no back-end.

Parâmetros:

  • cpf (string): O CPF a ser verificado.

Retorno:

  • (boolean): true se o CPF for válido, false caso contrário.

Exemplo de uso:

import { isCpfStrictValid } from "uget-helpers";

console.log(isCpfStrictValid("111.444.777-05")); // true
console.log(isCpfStrictValid("111.111.111-11")); // false

cpfMask(cpf: string)

Aplica uma máscara de CPF.

Parâmetros:

  • cpf (string): O CPF a ser formatado.

Retorno:

  • (string): O CPF com a máscara.

Formato: ###.###.###-##

Exemplo de uso:

import { cpfMask } from "uget-helpers";

const cpf = "11122233344";
const maskedCpf = cpfMask(cpf);

console.log(maskedCpf); // '111.222.333-44'

creditCardDueDateIsValid(currentDate: string, mask: 'mm/yy' | 'mm/yyyy')

Verifica se a data de vencimento de um cartão de crédito é válida.

Parâmetros:

  • currentDate (string): A data de vencimento no formato MM/YY ou MM/YYYY.
  • mask ('mm/yy' | 'mm/yyyy'): O formato da data de vencimento.

Retorno:

  • (boolean): true se a data for válida, false caso contrário.

Exemplo de uso:

import { creditCardDueDateIsValid } from "uget-helpers";

const validDate = "12/25";
const invalidDate = "12/20";

console.log(creditCardDueDateIsValid(validDate, "mm/yy")); // true
console.log(creditCardDueDateIsValid(invalidDate, "mm/yy")); // false

eloMask(eloNumber: string)

Aplica uma máscara de cartão Elo.

Parâmetros:

  • eloNumber (string): O número do cartão a ser formatado.

Retorno:

  • (string): O número do cartão com a máscara.

Formato: #### #### #### ####

Exemplo de uso:

import { eloMask } from "uget-helpers";

const cardNumber = "4011780000000000";
const maskedCardNumber = eloMask(cardNumber);

console.log(maskedCardNumber); // '4011 7800 0000 0000'

emailIsValid(email: string)

Verifica se um e-mail é válido.

Parâmetros:

  • email (string): O e-mail a ser verificado.

Retorno:

  • (boolean): true se o e-mail for válido, false caso contrário.

Exemplo de uso:

import { emailIsValid } from "uget-helpers";

const validEmail = "[email protected]";
const invalidEmail = "test@example";

console.log(emailIsValid(validEmail)); // true
console.log(emailIsValid(invalidEmail)); // false

formatDate(date: string | number | Date, style: 'short' | 'long' | 'complete')

Formata uma data.

Parâmetros:

  • date (string | number | Date): A data a ser formatada.
  • style ('short' | 'long' | 'complete'): O estilo de formatação.

Retorno:

  • (string): A data formatada.

Estilos:

  • short: abril/2022
  • long: 22/04/2022
  • complete: 22/04/2022 às 17:14

Exemplo de uso:

import { formatDate } from "uget-helpers";

const date = new Date();

console.log(formatDate(date, "short"));
console.log(formatDate(date, "long"));
console.log(formatDate(date, "complete"));

formatNumberToBRL(number: number)

Formata um número para o formato de moeda BRL.

Parâmetros:

  • number (number): O número a ser formatado.

Retorno:

  • (string): O número formatado como moeda BRL.

Exemplo de uso:

import { formatNumberToBRL } from "uget-helpers";

const number = 10;
const formattedNumber = formatNumberToBRL(number);

console.log(formattedNumber); // 'R$ 10,00'

landlineMask(landline: string)

Aplica uma máscara de telefone fixo.

Parâmetros:

  • landline (string): O número de telefone a ser formatado.

Retorno:

  • (string): O número de telefone com a máscara.

Formato: (##) ####-####

Exemplo de uso:

import { landlineMask } from "uget-helpers";

const phoneNumber = "3140028922";
const maskedPhoneNumber = landlineMask(phoneNumber);

console.log(maskedPhoneNumber); // '(31) 4002-8922'

mastercardMask(mastercardNumber: string)

Aplica uma máscara de cartão Mastercard.

Parâmetros:

  • mastercardNumber (string): O número do cartão a ser formatado.

Retorno:

  • (string): O número do cartão com a máscara.

Formato: #### #### #### ####

Exemplo de uso:

import { mastercardMask } from "uget-helpers";

const cardNumber = "5123456789012345";
const maskedCardNumber = mastercardMask(cardNumber);

console.log(maskedCardNumber); // '5123 4567 8901 2345'

phoneMask(phone: string)

Aplica uma máscara de telefone celular.

Parâmetros:

  • phone (string): O número de telefone a ser formatado.

Retorno:

  • (string): O número de telefone com a máscara.

Formato: (##) #####-####

Exemplo de uso:

import { phoneMask } from "uget-helpers";

const phoneNumber = "31988888888";
const maskedPhoneNumber = phoneMask(phoneNumber);

console.log(maskedPhoneNumber); // '(31) 98888-8888'

phoneNumberIsValid(number: string)

Verifica se um número de celular é válido.

Parâmetros:

  • number (string): O número a ser verificado.

Retorno:

  • (boolean): true se o número for válido, false caso contrário.

Exemplo de uso:

import { phoneNumberIsValid } from "uget-helpers";

const validPhoneNumber = "31988888888";
const invalidPhoneNumber = "3188888888";

console.log(phoneNumberIsValid(validPhoneNumber)); // true
console.log(phoneNumberIsValid(invalidPhoneNumber)); // false

rgMask(rg: string)

Aplica uma máscara de RG.

Parâmetros:

  • rg (string): O RG a ser formatado.

Retorno:

  • (string): O RG com a máscara.

Formato: ##.###.###

Exemplo de uso:

import { rgMask } from "uget-helpers";

const rg = "12345678";
const maskedRg = rgMask(rg);

console.log(maskedRg); // '12.345.678'

visaMask(visaNumber: string)

Aplica uma máscara de cartão Visa.

Parâmetros:

  • visaNumber (string): O número do cartão a ser formatado.

Retorno:

  • (string): O número do cartão com a máscara.

Formato: #### #### #### ####

Exemplo de uso:

import { visaMask } from "uget-helpers";

const cardNumber = "4123456789012345";
const maskedCardNumber = visaMask(cardNumber);

console.log(maskedCardNumber); // '4123 4567 8901 2345'

whichCardFlag(numberOfCard: string)

Identifica a bandeira de um cartão de crédito.

Parâmetros:

  • numberOfCard (string): O número do cartão.

Retorno:

  • (string | undefined): A bandeira do cartão (visa, mastercard, americanExpress, elo) ou undefined se não for identificada.

Exemplo de uso:

import { whichCardFlag } from "uget-helpers";

const visaCard = "4123456789012345";
const mastercardCard = "5123456789012345";
const amexCard = "371234567890123";
const eloCard = "4011780000000000";

console.log(whichCardFlag(visaCard)); // 'visa'
console.log(whichCardFlag(mastercardCard)); // 'mastercard'
console.log(whichCardFlag(amexCard)); // 'americanExpress'
console.log(whichCardFlag(eloCard)); // 'elo'

Funções Back-end (Limpeza, Validação e Utilitários Gerais)

unmaskCpf(cpf: string)

Remove a máscara de um CPF, valida-o e retorna apenas os números se for válido.

Parâmetros:

  • cpf (string): O CPF que pode ou não estar com a máscara (ex: "123.456.789-00").

Retorno:

  • (string | false): Retorna o CPF contendo apenas os números se for válido, ou false caso seja inválido.

Exemplo de uso:

import { unmaskCpf } from "uget-helpers";

const maskedCpf = "111.444.777-05"; // CPF válido
const unmasked = unmaskCpf(maskedCpf);

console.log(unmasked); // '11144477705'

const invalidCpf = "111.111.111-11";
const result = unmaskCpf(invalidCpf);

console.log(result); // false

unmaskCnpj(cnpj: string)

Remove a máscara de um CNPJ, valida-o e retorna apenas os números se for válido.

Parâmetros:

  • cnpj (string): O CNPJ que pode ou não estar com a máscara (ex: "11.222.333/0001-81").

Retorno:

  • (string | false): Retorna o CNPJ contendo apenas os números se for válido, ou false caso seja inválido.

Exemplo de uso:

import { unmaskCnpj } from "uget-helpers";

const maskedCnpj = "11.222.333/0001-81"; // CNPJ válido
const unmasked = unmaskCnpj(maskedCnpj);

console.log(unmasked); // '11222333000181'

const invalidCnpj = "11.111.111/1111-11";
const result = unmaskCnpj(invalidCnpj);

console.log(result); // false

unmaskCep(cep: string)

Remove a máscara de um CEP e retorna apenas os números.

Parâmetros:

  • cep (string): O CEP que pode ou não estar com a máscara (ex: "12345-678").

Retorno:

  • (string): Retorna o CEP contendo apenas os números.

Exemplo de uso:

import { unmaskCep } from "uget-helpers";

const maskedCep = "12345-678";
const unmasked = unmaskCep(maskedCep);

console.log(unmasked); // '12345678'

unmaskPhone(phone: string)

Remove a máscara de um número de telefone, valida-o e retorna apenas os números se for válido.

Parâmetros:

  • phone (string): O número de telefone que pode ou não estar com a máscara (ex: "(31) 98888-8888").

Retorno:

  • (string | false): Retorna o número de telefone contendo apenas os números se for válido, ou false caso seja inválido.

Exemplo de uso:

import { unmaskPhone } from "uget-helpers";

const maskedPhone = "(31) 98888-8888"; // Telefone válido
const unmasked = unmaskPhone(maskedPhone);

console.log(unmasked); // '31988888888'

const invalidPhone = "31 8888-8888";
const result = unmaskPhone(invalidPhone);

console.log(result); // false

unmaskLandline(landline: string)

Remove a máscara de um número de telefone fixo, valida-o e retorna apenas os números se for válido.

Parâmetros:

  • landline (string): O número de telefone fixo que pode ou não estar com a máscara (ex: "(31) 4002-8922").

Retorno:

  • (string | false): Retorna o número de telefone fixo contendo apenas os números se for válido, ou false caso seja inválido.

Exemplo de uso:

import { unmaskLandline } from "uget-helpers";

const maskedLandline = "(31) 4002-8922"; // Telefone fixo válido
const unmasked = unmaskLandline(maskedLandline);

console.log(unmasked); // '3140028922'

const invalidLandline = "31 4002-892";
const result = unmaskLandline(invalidLandline);

console.log(result); // false

pick(obj: object, keys: string[])

Cria um novo objeto a partir de um objeto existente, contendo apenas as chaves especificadas.

Parâmetros:

  • obj (object): O objeto de origem.
  • keys (string[]): Um array com os nomes das chaves a serem mantidas.

Retorno:

  • (object): Um novo objeto contendo apenas as propriedades especificadas.

Exemplo de uso:

import { pick } from "uget-helpers";

const user = {
  id: 1,
  name: "Rafael",
  email: "[email protected]",
  password: "123",
};
const publicUser = pick(user, ["id", "name"]);

console.log(publicUser); // { id: 1, name: 'Rafael' }

omit(obj: object, keys: string[])

Cria um novo objeto a partir de um objeto existente, omitindo as chaves especificadas.

Parâmetros:

  • obj (object): O objeto de origem.
  • keys (string[]): Um array com os nomes das chaves a serem omitidas.

Retorno:

  • (object): Um novo objeto sem as propriedades especificadas.

Exemplo de uso:

import { omit } from "uget-helpers";

const user = {
  id: 1,
  name: "Rafael",
  email: "[email protected]",
  password: "123",
};
const publicUser = omit(user, ["password", "email"]);

console.log(publicUser); // { id: 1, name: 'Rafael' }

generateRandomString(length: number)

Gera uma string aleatória, criptograficamente segura, em formato hexadecimal.

Parâmetros:

  • length (number): O comprimento final da string a ser gerada.

Retorno:

  • (string): Uma string aleatória hexadecimal.

Exemplo de uso:

import { generateRandomString } from "uget-helpers";

const token = generateRandomString(32);

console.log(token); // ex: "a1b2c3d4e5f6a1b2c3d4e5f6a1b2c3d4"

sanitize(data: any)

Sanitiza dados de forma recursiva, removendo tags HTML de todos os campos de string.

Parâmetros:

  • data (any): O dado a ser sanitizado (string, objeto, array, etc.).

Retorno:

  • (any): O dado sanitizado, com todas as strings limpas.

Exemplo de uso:

import { sanitize } from "uget-helpers";

const userInput = {
  comment: "<p>Ótimo post! <script>alert('XSS');</script></p>",
  tags: ["<tag>Importante</tag>", "Segurança"],
};
const cleanInput = sanitize(userInput);

console.log(cleanInput);
// {
//   comment: "Ótimo post! alert('XSS');",
//   tags: ["Importante", "Segurança"]
// }

groupBy(array: any[], key: string)

Agrupa os elementos de um array de objetos com base no valor de uma chave especificada.

Parâmetros:

  • array (any[]): O array de objetos a ser agrupado.
  • key (string): A chave do objeto pela qual agrupar.

Retorno:

  • (object): Um objeto onde as chaves são os valores de agrupamento.

Exemplo de uso:

import { groupBy } from "uget-helpers";

const products = [
  { name: "Maçã", category: "Fruta" },
  { name: "Banana", category: "Fruta" },
  { name: "Alface", category: "Verdura" },
];
const grouped = groupBy(products, "category");

console.log(grouped);
// {
//   "Fruta": [{ "name": "Maçã", "category": "Fruta" }, { "name": "Banana", "category": "Fruta" }],
//   "Verdura": [{ "name": "Alface", "category": "Verdura" }]
// }

isEqual(a: any, b: any)

Realiza uma comparação profunda (deep equal) entre dois valores para determinar se são equivalentes.

Parâmetros:

  • a (any): O primeiro valor a ser comparado.
  • b (any): O segundo valor a ser comparado.

Retorno:

  • (boolean): Retorna true se os valores forem equivalentes, caso contrário, false.

Exemplo de uso:

import { isEqual } from "uget-helpers";

const obj1 = { a: 1, b: { c: [2, 3] } };
const obj2 = { a: 1, b: { c: [2, 3] } };
const obj3 = { a: 1, b: { c: [3, 2] } };

console.log(isEqual(obj1, obj2)); // true
console.log(isEqual(obj1, obj3)); // false

deepClone(value: any)

Cria uma cópia profunda (deep clone) de um valor (objeto, array, etc.).

Parâmetros:

  • value (any): O valor a ser clonado.

Retorno:

  • (any): Uma cópia profunda do valor.

Exemplo de uso:

import { deepClone } from "uget-helpers";

const original = { a: 1, b: { c: 2 } };
const clone = deepClone(original);

clone.b.c = 99;

console.log(original.b.c); // 2
console.log(clone.b.c); // 99

📄 Licença

Este projeto está licenciado sob a licença ISC. Veja o arquivo LICENSE para mais detalhes.