Huge News!Announcing our $40M Series B led by Abstract Ventures.Learn More
Socket
Sign inDemoInstall
Socket

@utils-fns/validators

Package Overview
Dependencies
Maintainers
1
Versions
21
Alerts
File Explorer

Advanced tools

Socket logo

Install Socket

Detect and block malicious and high-risk dependencies

Install

@utils-fns/validators

![npm](https://img.shields.io/npm/v/@utils-fns/validators) [![License](https://img.shields.io/github/license/ccqueiroz/utils-fns)](LICENSE) [![Repository](https://img.shields.io/badge/repository-GitHub-blue.svg)](https://github.com/ccqueiroz/utils-fn) ##

  • 10.0.0
  • latest
  • npm
  • Socket score

Version published
Weekly downloads
480
increased by25%
Maintainers
1
Weekly downloads
 
Created
Source

@utils-fns/validators

npm License Repository

README versions

Portuguese 🇧🇷 | English 🇺🇸

The @utils-fns/validators library was developed to be part of a larger library, @utils-fns, which is being developed with the aim of providing unified tools that facilitate the daily tasks of programmers. Our motivation is to simplify common tasks, such as validators, value masking, sorting, search and conversion methods, offering a comprehensive and efficient solution that makes possible the use of this set of libraries in web - mobile - service environments.

Features

Validators: The @utils-fns/validators library provides the following validators:

🖥 Environment Support

  • Applications with javascript ES6 or higher
    • Modern browsers
    • Server-side
    • Electron
    • Mobile

📦 Install

If you want to install the complete module, follow the documents in the @utils-fns/utils-fns.

To install the @utils-fns/validators library: use your preferred package manager

  yarn add @utils-fns/validators

  or

  npm install @utils-fns/validators

🔨 How to use

To access the features, just follow the example:

  //ES6
  import { validators } from "@utils-fns/validators";
  //CommomJS
  const { validators } = require("@utils-fns/validators");

So, just choose which validation tool will be used.

  const cpfValidation = validators.cpf('64912007013')
  //return true

Typescript

@utils-fns/validators is written in TypeScript with complete definitions.

Cpf Validator

MethodParamsType
cpfcpfstring | undefined
  import { validators } from "@utils-fns/validators";

  validators.cpf('64912007013')
  //✅ return true

  validators.cpf('649.120.070-13')
  //✅ return true

  validators.cpf('01234598329')
  //❌ return false

Nis Validator

MethodParamsType
nisnisstring | undefined
  import { validators } from "@utils-fns/validators";

  validators.nis('90152083257')
  //✅ return true

  validators.nis('901.52083.25-7')
  //✅ return true

  validators.nis('00000000000')
  //❌ return false

Email Validator

MethodParamsType
emailemailstring | undefined
emailparamsEmailValidator.minMaxUserNameEmail.minnumber | undefined
emailparamsEmailValidator.minMaxUserNameEmail.maxnumber | undefined
emailparamsEmailValidator.minMaxEmailDomain.minnumber | undefined
emailparamsEmailValidator.minMaxEmailDomain.maxnumber | undefined
emailparamsEmailValidator.emailDomainNameRegExp | undefined
  import { validators } from "@utils-fns/validators";

  validators.email({ email: 'foobar@validator.com' })
  //✅ return true

  validators.email({ email: 'fóobar@validatior.com' })
  //❌ return false

  validators.email({
    email: 'foobar@gmail.com',
    paramsEmailValidator: {
      emailDomainName: RegExp(/(gmail.com|hotmail.com)/)
    },
  })
  //✅ return true

  validators.email({
    email: 'foobar@validator.com',
    paramsEmailValidator: {
      emailDomainName: RegExp(/(gmail.com|hotmail.com)/)
    },
  })
  //❌ return false

Cnpj Validator

MethodParamsType
cnpjcnpjstring | undefined
  import { validators } from "@utils-fns/validators";

  validators.cnpj('22014929000102')
  //✅ return true

  validators.cnpj('22.014.929/0001-02')
  //✅ return true

  validators.cnpj('01234569841234')
  //❌ return false

Phone Validator

MethodParamsType
phonephonestring | undefined
phoneparamsPhoneValidator.onlyMobilePhoneBRboolean | undefined
phoneparamsPhoneValidator.canReceiveInternationalNumbersboolean | undefined
phoneparamsPhoneValidator.customPatternPhone.coutryCodeRegExp
phoneparamsPhoneValidator.customPatternPhone.areaStateCodeRegExp
phoneparamsPhoneValidator.customPatternPhone.phoneNumberRegExp
phoneparamsPhoneValidator.publicUtilityNumberBRboolean | undefined
phoneparamsPhoneValidator.numberWithoutCodeAreasboolean | undefined
  import { validators } from "@utils-fns/validators";

  validators.phone({ phone: '(63) 92102-2418' })
  //✅ return true

  validators.phone({ phone: '63921022418' })
  //✅ return true

  validators.phone({ phone: '988283' })
  //❌ return false

  validators.phone({ phone: '190', {
    publicUtilityNumberBR: true
  } })
  //✅ return true

  validators.phone({ phone: '(11) 99385-3318', {
    numberWithoutCodeAreas: true
  } })
  //❌ return false

  validators.phone({ phone: '66934451006', {
    canReceiveInternationalNumbers: true,
      customPatternPhone: {
        coutryCode: RegExp(/66/),
        areaStateCode: RegExp(/9{0,1}/),
        phoneNumber: RegExp(/([2-9]{1}\d{6,7})$/),
      }
    }
  })
  //✅ return true

  validators.phone({ phone: '+1 (541) 708-3275', {
      canReceiveInternationalNumbers: true
    }
  })
  //✅ return true

PaymentCard Validator

MethodParamsType
paymentCardcardNumberstring | undefined
paymentCard.isValidparamsPaymentCardValidator.validationTypeCardcredit | debit | credit-debit | undefined
paymentCard.isValidparamsPaymentCardValidator.specificBrandCardamerican-express | diners-club | discover | elo | hiper | hipercard | jcb | maestro | mastercard | mir | unionpay | visa | visa-electron | undefined
paymentCard.isValidparamsPaymentCardValidator.customPatternPaymentCardRegExp | undefined
paymentCard.getData--
  import { validators } from "@utils-fns/validators";

  validators.paymentCard({ cardNumber: '4024 0071 6435 7039' }).getData()
  //✅ return {
  //    bankDigits: '4',
  //    bankName: 'Visa',
  //    cardNumber: '4024 0071 6435 7039',
  //    isValid: true,
  //  }

  validators.paymentCard({ cardNumber: '4024 0071 6435 7039' }).isValid()
  //✅ return true

  validators.paymentCard({ cardNumber: '4124007164357039' }).isValid({
    customPatternPaymentCard: RegExp(/^4[0-2](\d{14})$/),
  })
  //✅ return true

  validators.paymentCard({ cardNumber: '3014 842898 5841' }).isValid({
    specificBrandCard: 'diners-club',
  })
  //✅ return true

  validators.paymentCard({ cardNumber: '3014 842898 5841' }).isValid({
    specificBrandCard: 'visa',
  })
  //❌ return false

PaymentSlip Validator

MethodParamsType
paymentSlipdigitsstring | undefined
paymentSlip.isValidparamsPaymentSlipValidator.validByBankBankCode | BankName | undefined
paymentSlip.isValidparamsPaymentSlipValidator.validSegmentTypeTaxas Municipais | Taxas de Saneamento | Taxas de Energia Elétrica e Gás | Taxas de Telecomunicações | Taxas de Órgãos Governamentais | Taxas de Trânsito | Uso Exclusivo dos Bancos | Pagamento de Boletos Bancários | Outros | undefined
paymentSlip.isValidparamsPaymentSlipValidator.validByPricestring | number | undefined
paymentSlip.isValidparamsPaymentSlipValidator.validByDatestring | Date | undefined
paymentSlip.isValidparamsPaymentSlipValidator.validByTypeOfPaymentSlipBoleto Bancário
paymentSlip.isValidparamsPaymentSlipValidator.validByIfIsBarCodeOrTypeableLineCód. Barras | Linha Digitável | undefined
paymentSlip.getData--
  import { validators } from "@utils-fns/validators";

  validators.paymentSlip({ digits: '65591942700000005000000000442500009390032700' }).getData()
  //✅ return {
  //    bankCode: '655',
  //    bankName: 'Banco Votorantim S.A.',
  //    barCodeOrTypeableLine: 'Cód. Barras',
  //    digits: '65591942700000005000000000442500009390032700',
  //    expirationDate: '30/07/2023',
  //    price: '5.00',
  //    segmentPaymentSplip: 'Pagamento de Boletos Bancários',
  //    typeOfPaymentSlip: 'Boleto Bancário',
  //    isValid: true,
  //  }

  validators.paymentSlip({ digits: '65591942700000005000000000442500009390032700' }).isValid()
  //✅ return true

  validators.paymentSlip({ digits: '65591942700000005000000000442500009390032700' }).isValid({
    validByTypeOfPaymentSlip: 'Boleto Bancário'
  })
  //✅ return true

  validators.paymentSlip({ digits: '65591942700000005000000000442500009390032700' }).isValid({
    validByTypeOfPaymentSlip: 'Boleto de Arrecadação'
  })
  //❌ return false

  validators.paymentSlip({ digits: '84610000000319901090110049617944480805321901' }).isValid({
    validByPrice: '31.99',
    validSegmentType: 'Taxas de Telecomunicações',
    validByIfIsBarCodeOrTypeableLine: 'Cód. Barras',
    validByTypeOfPaymentSlip: 'Boleto de Arrecadação',
  })
  //✅ return true

  validators.paymentSlip({ digits: '65590000020044250000594059050008194290000006050' }).isValid({
    validByBank: '655',
    validByDate: '08-01-2023',
    validByPrice: 60.5,
    validSegmentType: 'Pagamento de Boletos Bancários',
    validByIfIsBarCodeOrTypeableLine: 'Linha Digitável',
    validByTypeOfPaymentSlip: 'Boleto Bancário',
  })
  //✅ return true

State Registration Validator

MethodParamsType
stateRegistrationValidatordigitsstring | undefined
stateRegistrationValidatorufAC | AL | AP | AM | BA | CE | DF | ES | GO | MA | MT | MS | MG | PA | PB | PR | PE | PI | RJ | RN | RS | RO | RR | SC | SP | SE | TO
  import { validators } from "@utils-fns/validators";

  validators.stateRegistrationValidator({ digits: '746943024', uf: 'PB' })
  //✅ return true

  validators.stateRegistrationValidator({ digits: '746943024', uf: 'SP' })
  //❌ return false

Voter Registration Validator

MethodParamsType
voterRegistrationValidationdigitsstring | undefined
  import { validators } from "@utils-fns/validators";

  validators.voterRegistration('613752510213')
  //✅ return true

  validators.voterRegistration('0123.4567.8901')
  //❌ return false

Cnh Validator

MethodParamsType
cnhcnhstring | undefined
  import { validators } from "@utils-fns/validators";

  validators.cnh('45426105401')
  //✅ return true

  validators.cnh('703417160228787182')
  //❌ return false

Renavam Validator

MethodParamsType
renavamValidatorrenavamstring | undefined
  import { validators } from "@utils-fns/validators";

  validators.renavam('08804737318')
  //✅ return true

  validators.renavam('703417160228787182')
  //❌ return false

Cep Validator

MethodParamsType
cepcepstring | undefined
cep.isValid--
cep.getDatasignalAbortSignal | null | undefined
  import { validators } from "@utils-fns/validators";

  validators.cep('01001000').isValid()
  //✅ return true

  await validators.cep('01001000').getData()
  //✅ return {
  //    estado: 'São Paulo',
  //    uf: 'SP',
  //    complemento: '- lado ímpar',
  //    cep: '01001-000',
  //    cidade: 'São Paulo',
  //    bairro: 'Sé',
  //    logradouro: 'Praça da Sé',
  //    enderecoPostal: 'Praça da Sé, lado ímpar, Sé, 01001-000, São Paulo/SP',
  //    isValid: true,
  //  }

Author


Caio Queiroz

Linkedin Badge Gmail Badge

License

This API is licensed MIT.

Keywords

FAQs

Package last updated on 08 Aug 2023

Did you know?

Socket

Socket for GitHub automatically highlights issues in each pull request and monitors the health of all your open source dependencies. Discover the contents of your packages and block harmful activity before you install or update your dependencies.

Install

Related posts

SocketSocket SOC 2 Logo

Product

  • Package Alerts
  • Integrations
  • Docs
  • Pricing
  • FAQ
  • Roadmap
  • Changelog

Packages

npm

Stay in touch

Get open source security insights delivered straight into your inbox.


  • Terms
  • Privacy
  • Security

Made with ⚡️ by Socket Inc