0.3.0 • Published 7 years ago

adonis-phone-validator v0.3.0

Weekly downloads
6
License
MIT
Repository
github
Last release
7 years ago

Adonis Phone Validator

Easy phone number validation, parsing and formatting for adonis framework.

Installation

  1. Add package:
$ npm i adonis-phone-validator --save

or

$ yarn add adonis-phone-validator
  1. Register providers inside the your start/app.js file.
const providers = [
  ...
  'adonis-phone-validator/providers/PhoneValidatorProvider',
  ...
]

Validation example

// 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
  • mobile

For more information about supported types see libphonenumber-js.

Sanitization example

// 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

Support

Having trouble? Open an issue!

License

The MIT License (MIT). Please see License File for more information.

0.3.0

7 years ago

0.2.1

7 years ago

0.2.0

7 years ago

0.1.0

7 years ago

0.0.1

7 years ago