Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
https://github.com/enniel/adonis-phone-validator
https://github.com/enniel/adonis-phone-validator
adonis adonis-framework adonisjs indicative phone phone-validation validation
Last synced: 11 days ago
JSON representation
- Host: GitHub
- URL: https://github.com/enniel/adonis-phone-validator
- Owner: enniel
- License: mit
- Created: 2017-04-24T07:08:25.000Z (over 7 years ago)
- Default Branch: master
- Last Pushed: 2017-09-02T19:08:15.000Z (over 7 years ago)
- Last Synced: 2024-12-06T11:48:07.673Z (30 days ago)
- Topics: adonis, adonis-framework, adonisjs, indicative, phone, phone-validation, validation
- Language: JavaScript
- Size: 16.6 KB
- Stars: 0
- Watchers: 2
- Forks: 0
- Open Issues: 3
-
Metadata Files:
- Readme: README.md
- License: LICENSE.md
Awesome Lists containing this project
README
# Adonis Phone Validator
Easy phone number validation, parsing and formatting for [adonis framework](http://adonisjs.com).
## Installation
1. Add package:
```bash
$ npm i adonis-phone-validator --save
```
or```bash
$ yarn add adonis-phone-validator
```2. Register providers inside the your start/app.js file.
```js
const providers = [
...
'adonis-phone-validator/providers/PhoneValidatorProvider',
...
]
```
## Validation example```js
// with country code and phone type
const rules = {
phone: 'phone:RU,mobile'
}const data = {
phone: '+7 (800) 555-35-35'
}await Validator.validate(data, rules)
// without country code and with phone type (default country code: US)
const rules = {
phone: 'phone:mobile'
}const data = {
phone: '+1-202-555-0120'
}await Validator.validate(data, rules)
// without country code and phone type (default country code: US)
const rules = {
phone: 'phone'
}const data = {
phone: '+1-202-555-0120'
}await Validator.validate(data, rules)
```Supported types:
- premium_rate
- toll_free
- shared_cost
- voip
- personal_number
- pager
- uan
- voicemail
- fixed_line_or_mobile
- fixed_line
- mobileFor more information about supported types see [libphonenumber-js](https://github.com/halt-hammerzeit/libphonenumber-js).
## Sanitization example
```js
// parse phone
const rules = {
phone: 'parse_phone:RU'
}const data = {
phone: '+7 (800) 555-35-35'
}const sanitized = Validator.sanitize(data, rules) // 8005553535
// format phone to internation format
const rules = {
phone: 'format_phone:RU,!i'
}const data = {
phone: '8005553535'
}const sanitized = Validator.sanitize(data, rules) // +7 800 555 35 35
// format phone to national format
const rules = {
phone: 'format_phone:RU,!n'
}const data = {
phone: '8005553535'
}const sanitized = Validator.sanitize(data, rules) // 800 555-35-35
// format phone to international plaintext (E.164) format
const rules = {
phone: 'format_phone:RU,!ip'
}const data = {
phone: '8005553535'
}const sanitized = Validator.sanitize(data, rules) // +78005553535
```## Credits
- [Evgeni Razumov](https://github.com/enniel)
## Support
Having trouble? [Open an issue](https://github.com/enniel/adonis-phone-validator/issues/new)!
## License
The MIT License (MIT). Please see [License File](LICENSE.md) for more information.