Package Exports
- @type-ddd/cnpj
- @type-ddd/cnpj/index.js
This package does not declare an exports field, so the exports above have been automatically detected and optimized by JSPM instead. If any package subpath is missing, it is recommended to post an issue to the original package (@type-ddd/cnpj) to support the "exports" field. If that is not possible, create a JSPM override to customize the exports field for this package.
Readme
@type-ddd/cnpj
The @type-ddd/cnpj library provides TypeScript type definitions for handling CNPJ (Cadastro Nacional da Pessoa Jurídica) in Domain-Driven Design contexts. It facilitates the validation and manipulation of CNPJ numbers, ensuring they adhere to the Brazilian legal standards.
Installation
Install rich-domain and @type-ddd/cnpj with your favorite package manager
npm i rich-domain @type-ddd/cnpj
# OR
yarn add rich-domain @type-ddd/cnpj
Usage
Don't worry about removing special characters; they are automatically stripped from all instances.
import { CNPJ } from '@type-ddd/cnpj'
// Instance of CNPJ or throws an error if provide an invalid value
const cnpj = CNPJ.init('54097792000193');
// OR
// Result of CNPJ (Check Result pattern docs)
const result = CNPJ.create('54097792000193');
result.isOk(); // true
// cnpj instance or null if provide an invalid value
const cnpj = result.value();
Compare values or instances
Method to compare two instances or values.
// value as string
const isEqual = cnpj.compare('54097792000194')
// Output: false
// OR
// value as instance of CNPJ
const isEqual = cnpj.compare(cnpj2)
// Output: false
Check string is valid cnpj
Don't worry about removing special characters; they are automatically stripped from all instances.
const result = CNPJ.isValid('54097792000193');
// Output: true
Special chars
If you need the value with the mask, you can use the toPattern method:
cnpj.toPattern();
// Output: 54.097.792/0001-93
Or if you need to apply mask from a string value you may use addMask method
CNPJ.addMask('54097792000193');
// Output: 54.097.792/0001-93