123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475 |
- "use strict";
- Object.defineProperty(exports, "__esModule", {
- value: true
- });
- exports["default"] = matchPhoneNumberStringAgainstPhoneNumber;
- var _parsePhoneNumber = _interopRequireDefault(require("../parsePhoneNumber.js"));
- function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { "default": obj }; }
- function matchPhoneNumberStringAgainstPhoneNumber(phoneNumberString, phoneNumber, metadata) {
-
- var phoneNumberStringContainsCallingCode = true;
- var parsedPhoneNumber = (0, _parsePhoneNumber["default"])(phoneNumberString, metadata);
- if (!parsedPhoneNumber) {
-
-
- phoneNumberStringContainsCallingCode = false;
- parsedPhoneNumber = (0, _parsePhoneNumber["default"])(phoneNumberString, {
- defaultCallingCode: phoneNumber.countryCallingCode
- }, metadata);
- }
- if (!parsedPhoneNumber) {
- return 'INVALID_NUMBER';
- }
- if (phoneNumber.ext) {
- if (parsedPhoneNumber.ext !== phoneNumber.ext) {
- return 'NO_MATCH';
- }
- } else {
- if (parsedPhoneNumber.ext) {
- return 'NO_MATCH';
- }
- }
- if (phoneNumberStringContainsCallingCode) {
- if (phoneNumber.countryCallingCode !== parsedPhoneNumber.countryCallingCode) {
- return 'NO_MATCH';
- }
- }
- if (phoneNumber.number === parsedPhoneNumber.number) {
- if (phoneNumberStringContainsCallingCode) {
- return 'EXACT_MATCH';
- } else {
- return 'NSN_MATCH';
- }
- }
- if (phoneNumber.nationalNumber.indexOf(parsedPhoneNumber.nationalNumber) === 0 || parsedPhoneNumber.nationalNumber.indexOf(phoneNumber.nationalNumber) === 0) {
-
-
-
-
- return 'SHORT_NSN_MATCH';
- }
- return 'NO_MATCH';
- }
|