Package Exports
- @type-ddd/phone
- @type-ddd/phone/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/phone) 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/phone
The @type-ddd/phone library provides TypeScript type definitions for handling phone (Brazilian) in Domain-Driven Design contexts. It facilitates the validation and manipulation of phone numbers, ensuring they adhere to the Brazilian legal standards.
Installation
Install rich-domain and @type-ddd/phone with your favorite package manager
npm i rich-domain @type-ddd/phone
# OR
yarn add rich-domain @type-ddd/phone
Usage
Don't worry about removing special characters; they are automatically stripped from all instances.
import { Phone } from '@type-ddd/phone'
// Instance of phone or throws an error if provide an invalid value
const phone = Phone.init('11994882021');
// OR
// Result of phone (Check Result pattern docs)
const result = Phone.create('11994882021');
result.isOk(); // true
// phone instance or null if provide an invalid value
const phone = result.value();
Check phone type
Method to verify instance type.
// value as string
const isMobile = Phone.isMobile('11994882021');
// Output: true
// OR
// value as string
const isMobile = Phone.isHome('11994882021');
// Output: false
Special Chars
Don't worry about removing special characters; they are automatically stripped from all instances.
const result = Phone.isValid('(11) 99488-2021');
// Output: true
Special chars
If you need the value with the mask, you can use the toPattern method:
phone.toPattern();
// Output: '(11) 99488-2021'
Or if you need to apply mask from a string value you may use addMask method
Phone.addMask('11994882021');
// Output: (11) 99488-2021
Or if you need to remove mask from a string value you may use removeSpecialChars method
Phone.removeSpecialChars('(11) 99488-2021');
// Output: 11994882021
If you need to identify uf from a phone number
const phone = Phone.init('(11) 99488-2021');
phone.uf();
// Output: "São Paulo"
phone.code();
// 11
phone.number();
// 994882021
phone.toCall();
// 011994882021