Why Gemfury? Push, build, and install  RubyGems npm packages Python packages Maven artifacts PHP packages Go Modules Debian packages RPM packages NuGet packages

Repository URL to install this package:

Details    
@skava/modules / ___dist / utils / formatPhoneNumber.js
Size: Mime:
"use strict";

Object.defineProperty(exports, "__esModule", {
  value: true
});
exports.formatPhoneNumber = formatPhoneNumber;
exports.removePhoneNumberFormatting = removePhoneNumberFormatting;
exports.default = void 0;

var _exotic = require("../exotic");

const regexParensFormat1 = /^([1-9]..)([0-9]..)([0-9]{1,})$/;
const regexParensFormat2 = /^([1-9]..)([0-9]{1,3})/;

function formatPhoneNumber(phoneNumber) {
  if ((0, _exotic.isNumber)(phoneNumber)) {
    let formattedPhoneNumber = phoneNumber.replace(/[^0-9]/g, '').slice(0, 10);

    if (regexParensFormat1.test(formattedPhoneNumber)) {
      formattedPhoneNumber = formattedPhoneNumber.replace(regexParensFormat1, '$1 - $2 - $3');
    } else if (regexParensFormat2.test(formattedPhoneNumber)) {
      formattedPhoneNumber = formattedPhoneNumber.replace(regexParensFormat2, '$1 - $2');
    }

    return formattedPhoneNumber;
  }

  return phoneNumber;
}

function removePhoneNumberFormatting(phoneNumber) {
  if ((0, _exotic.isString)(phoneNumber)) {
    return phoneNumber.replace(/[^0-9]/g, '');
  }

  return phoneNumber;
}

var _default = formatPhoneNumber;
exports.default = _default;