nanpa_tools

0.0.1 • Public • Published

License npm version js-standard-style

Build Status Coverage Status Code Climate Issue Count

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.

Package Sidebar

Install

npm i nanpa_tools

Weekly Downloads

5

Version

0.0.1

License

Apache-2.0

Last publish

Collaborators

  • marcelog