bs-telefonnummer

![npm](https://img.shields.io/npm/v/bs-telefonnummer.svg) [![Build Status](https://travis-ci.com/believer/bs-telefonnummer.svg?branch=master)](https://travis-ci.com/believer/bs-telefonnummer) [![Test Coverage](https://api.codeclimate.com/v1/badges/ca9e96b

Usage no npm install needed!

<script type="module">
  import bsTelefonnummer from 'https://cdn.skypack.dev/bs-telefonnummer';
</script>

README

Telefonnummer

npm Build Status Test Coverage

This is a port of my library telefonnummer to ReasonML. It parses Swedish phone numbers into a standard format. It doesn't contain the full API of the original library as I felt it would be a good opportunity to start fresh.

Installation

npm install bs-telefonnummer

Add bs-telefonnummer in bs-dependencies of bsconfig.json

API

parse

Takes a phone number of any kind and parses it to a standard format

let parse: Js.String.t => Js.String.t;

Example

let parsedPhoneNumber = Telefonnummer.parse("081234567"); /* 08-123 45 67 */
let parsedMobileNumber = Telefonnummer.parse("0701234567"); /* 070-123 45 67 */

typeOfNumber

Takes a phone number and returns the type. Usable for pattern-matching.

type t =
  | VoiceMail
  | Mobile
  | Landline;

let typeOfNumber: Js.String.t => t;

Example

let phoneNumberType = Telefonnummer.typeOfNumber("081234567"); /* Landline */

Normalize

The Normalize module is exposed publically if you need to clean up a phone number for use in for example tel: links.

module Normalize = {
  let clean: Js.String.t => Js.String.t;
}

Example

let cleanPhoneNumber = Telefonnummer.Normalize.clean("08-12 3 45.67"); /* 081234567 */

Validator

The Validator module can help you check if a phone number is valid. It cleans the phone number from any non-number characters.

module Validator = {
  let isValid: Js.String.t => bool;
}

Example

let isValid = Telefonnummer.Validator.isValid("08-12 3 45.67"); /* true */

Link

The Link module creates phone number links.

module Link = {
  let make: Js.String.t => Js.String.t;
}

Example

let link = Telefonnummer.Link.make("08-12 3 45.67"); /* tel:081234567 */