# Lib phone number - Carrier Mapper

![Nodejs](https://img.shields.io/badge/Node.js-43853D?style=for-the-badge&logo=node.js&logoColor=white)

### Simply [get the phone carrier](#get-carrier-of-a-phone-number), [phone details](#get-all-details-of-a-phone-number) and [get possible countries codes ](#get-possible-countries-codes) attached to a phoneNumber


<br/>

# Installation
```bash
npm install @chipdeals/libphonenumber-carriermapper --save
# or
yarn add @chipdeals/libphonenumber-carriermapper
```

<br/>

# Usage

## Get carrier of a phone number

<!-- [Try getting carrier now](https://onecompiler.com/nodejs/3ycuucxud) -->

```javascript
const carrierMapper = require('@chipdeals/libphonenumber-carriermapper');

carrierMapper
  .getCarrier("22951010588","BJ")
  .then((carrier) => console.log(carrier)); 
  // MTN
```
<br/>

## Get All details of a phone number

```javascript
const carrierMapper = require('@chipdeals/libphonenumber-carriermapper');

carrierMapper
  .getDetails("22951010588","BJ")
  .then((phoneDetails) => console.log(phoneDetails)); 

  /* --- console ---  
  phoneDetails => {
    number: '+229 51 85 85 85', => the phone number you enter in parameter
    countryCode: 'BJ', => the country code you enter in parametter
    isPossibleNumber: true,
    isValidNumber: true,
    isValidNumberForRegion: true,
    isMobilePhone: true,
    isFixedLine: false,
    isTollFee: false,
    carrier: 'MTN',
    location: 'Benin',
    phoneNumberRegion: 'BJ',
    phonePrefix: '229',
    nationalFormat: '51 85 85 85',
    internationalFormat: '+229 51 85 85 85'
  }
  */
  
```
<br/>

## Get possible countries codes

```javascript
const carrierMapper = require('@chipdeals/libphonenumber-carriermapper');

const countriesCodes = carrierMapper.getPossibleCountriesCodes("+1 671-400-8982");

console.log(countriesCodes)
// [ 'CA', 'GU', 'US' ]
  
```
<br/>

# Interfaces

```javascript
//getCarrier method
(method) CarrierMapper.getCarrier(phoneNumber: string , countryCode: string )

//getDetails method
(method) CarrierMapper.getDetails(phoneNumber: string , countryCode: string )

//getPossibleCountriesCodes method
(method) CarrierMapper.getPossibleCountriesCodes(phoneNumber: string)
```

You can send two parammeters to both methods. 

The first parameter: `phoneNumber` is the phone number you want to get info about. It can be a `string` or a `number`

The second parameter is an optionnal `couontryCode`. It represent the country code of the phone number


# About us

### [Chipdeals](https://chipdeals.me) is a technology company solving payments problems for ambitious businesses. [Get more about our services](https://chipdeals.me)

<br/>

E-mail: products@chipdeals.me<br/>
Website: https://chipdeals.me<br/>
Phone: +22990630401<br/>
Telegram: [+22990630401](https://t.me/chipdealsInc)<br/>
Whatsapp: [+22990630401](https://wa.me/22990630401) <br/>

<br/>
<br/>
<br/>
<br/>
<br/>

#
Copyright (C) 2022 Chipdeals Inc - https://chipdeals.me