nanpa_tools
v0.0.1
Published
A library with tools to work with NANPA numbers
Downloads
4
Maintainers
Readme
nanpa_tools
This library is used to handle NANPA telephone numbers while at the same time gathering information about them.
Installing
Add this library to your package.json configuration:
"dependencies": {
"nanpa_tools": "latest"
}
Using it
Below you will find a few examples for the most common usage. More examples can be found in the tests.
Import the module in your code
var nanpa_tools = require('nanpa_tools');
Figuring out if a given number is a NANPA number.
if (nanpa_tools.isNanpa("13055556666")) {
...
}
}
Getting information for a NANPA number
var result = nanpa_tools.resolve("13055556666");
If the number is a NANPA number, the result object will contain:
- npa: Area code.
- nxx: Exchange code.
- num: Subscriber number.
- countryCode: ISO2 code for the country.
- countryName: Full country name (in English).
- usStateCode: Only present for US numbers. 2-letter state code.
- usStateName: Only present for US numbers. Full state name.
- caProvinceCode: Only present for Canada numbers. 2-letter province code.
- caProvinceName: Only present for Canada numbers. Full province name.
- isTollFree:
true
if the given number is a Toll Free. - isPremium:
true
if the given number is a Premium Number.
Detecting Intra- or Inter-State calls
var result = nanpa_tools.resolveInterIntra("13055556666", "17866667777");
The result object will contain:
- number1: A result object like the one described above.
- number2: A result object like the one described above.
- isIntra:
true
if the call should be considered Intra-State. US calls only. - isInter:
true
if the call should be considered Inter-State. US calls only.
Developers
This project uses standard npm scripts. Current tasks include:
- test: Runs Mocha tests.
- jsdoc: Runs JSDoc3.
- eslint: Runs ESLint.
- coverage: Runs the tests and then Instanbul to get a coverage report.
- build: This is the default task, and will run all the other tasks.
Running an npm task
To run a task, just do:
npm run build
Contributing
To contribute:
- Make sure you open a concise and short pull request.
- Throw in any needed unit tests to accomodate the new code or the changes involved.
- Run
npm run build
and make sure everything is ok before submitting the pull request (make eslint happy). - Your code must comply with the Javascript Standard Style, ESLint should take care of that.
License
The source code is released under Apache 2 License.
Check LICENSE file for more information.