pixel-react 1.14.87 → 1.14.89
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +75 -75
- package/lib/_virtual/index10.js +2 -2
- package/lib/_virtual/index11.js +2 -2
- package/lib/_virtual/index12.js +2 -2
- package/lib/_virtual/index9.js +2 -2
- package/lib/assets/icons/dataset_list.svg.js +1 -1
- package/lib/assets/icons/dataset_list.svg.js.map +1 -1
- package/lib/assets/icons/spinner.svg.js +1 -1
- package/lib/assets/icons/spinner.svg.js.map +1 -1
- package/lib/components/Chip/Chip.js +1 -1
- package/lib/components/Chip/Chip.js.map +1 -1
- package/lib/components/NLPInput/components/NlpDropDown/NlpDropdown.js +9 -0
- package/lib/components/NLPInput/components/NlpDropDown/NlpDropdown.js.map +1 -1
- package/lib/components/Select/Select.js +3 -2
- package/lib/components/Select/Select.js.map +1 -1
- package/lib/index.cjs +1362 -6766
- package/lib/index.cjs.map +1 -1
- package/lib/index.d.ts +1 -1
- package/lib/node_modules/js-beautify/js/src/css/beautifier.js +1 -1
- package/lib/node_modules/js-beautify/js/src/css/index.js +1 -1
- package/lib/node_modules/js-beautify/js/src/css/options.js +1 -1
- package/lib/node_modules/js-beautify/js/src/html/beautifier.js +1 -1
- package/lib/node_modules/js-beautify/js/src/html/index.js +1 -1
- package/lib/node_modules/js-beautify/js/src/html/options.js +1 -1
- package/lib/node_modules/js-beautify/js/src/html/tokenizer.js +1 -1
- package/lib/node_modules/js-beautify/js/src/javascript/index.js +1 -1
- package/lib/node_modules/js-beautify/js/src/javascript/tokenizer.js +1 -1
- package/lib/node_modules/libphonenumber-js/es6/AsYouType.js +6 -8
- package/lib/node_modules/libphonenumber-js/es6/AsYouType.js.map +1 -1
- package/lib/node_modules/libphonenumber-js/es6/AsYouTypeFormatter.complete.js +4 -4
- package/lib/node_modules/libphonenumber-js/es6/AsYouTypeFormatter.complete.js.map +1 -1
- package/lib/node_modules/libphonenumber-js/es6/AsYouTypeFormatter.js +4 -4
- package/lib/node_modules/libphonenumber-js/es6/AsYouTypeFormatter.js.map +1 -1
- package/lib/node_modules/libphonenumber-js/es6/AsYouTypeParser.js +41 -28
- package/lib/node_modules/libphonenumber-js/es6/AsYouTypeParser.js.map +1 -1
- package/lib/node_modules/libphonenumber-js/es6/AsYouTypeState.js +21 -17
- package/lib/node_modules/libphonenumber-js/es6/AsYouTypeState.js.map +1 -1
- package/lib/node_modules/libphonenumber-js/es6/PhoneNumber.js +1 -1
- package/lib/node_modules/libphonenumber-js/es6/PhoneNumber.js.map +1 -1
- package/lib/node_modules/libphonenumber-js/es6/format.js +50 -91
- package/lib/node_modules/libphonenumber-js/es6/format.js.map +1 -1
- package/lib/node_modules/libphonenumber-js/es6/helpers/checkNumberLength.js +39 -6
- package/lib/node_modules/libphonenumber-js/es6/helpers/checkNumberLength.js.map +1 -1
- package/lib/node_modules/libphonenumber-js/es6/helpers/extractCountryCallingCode.js +13 -10
- package/lib/node_modules/libphonenumber-js/es6/helpers/extractCountryCallingCode.js.map +1 -1
- package/lib/node_modules/libphonenumber-js/es6/helpers/extractCountryCallingCodeFromInternationalNumberWithoutPlusSign.js +10 -8
- package/lib/node_modules/libphonenumber-js/es6/helpers/extractCountryCallingCodeFromInternationalNumberWithoutPlusSign.js.map +1 -1
- package/lib/node_modules/libphonenumber-js/es6/helpers/extractNationalNumber.js +15 -5
- package/lib/node_modules/libphonenumber-js/es6/helpers/extractNationalNumber.js.map +1 -1
- package/lib/node_modules/libphonenumber-js/es6/helpers/getCountryByCallingCode.js +2 -2
- package/lib/node_modules/libphonenumber-js/es6/helpers/getCountryByCallingCode.js.map +1 -1
- package/lib/node_modules/libphonenumber-js/es6/helpers/getCountryByNationalNumber.js +30 -8
- package/lib/node_modules/libphonenumber-js/es6/helpers/getCountryByNationalNumber.js.map +1 -1
- package/lib/node_modules/libphonenumber-js/es6/helpers/matchesEntirely.js +4 -4
- package/lib/node_modules/libphonenumber-js/es6/helpers/matchesEntirely.js.map +1 -1
- package/lib/node_modules/libphonenumber-js/es6/isPossible.js +4 -4
- package/lib/node_modules/libphonenumber-js/es6/isPossible.js.map +1 -1
- package/lib/node_modules/libphonenumber-js/es6/metadata.js +1 -1
- package/lib/node_modules/libphonenumber-js/es6/metadata.js.map +1 -1
- package/lib/node_modules/libphonenumber-js/es6/parse.js +9 -7
- package/lib/node_modules/libphonenumber-js/es6/parse.js.map +1 -1
- package/lib/node_modules/libphonenumber-js/es6/parseIncompletePhoneNumber.js +7 -7
- package/lib/node_modules/libphonenumber-js/es6/parseIncompletePhoneNumber.js.map +1 -1
- package/lib/node_modules/libphonenumber-js/metadata.min.json.js +11 -11
- package/lib/node_modules/libphonenumber-js/metadata.min.json.js.map +1 -1
- package/lib/node_modules/prop-types/index.js +1 -1
- package/lib/node_modules/react-day-picker/dist/esm/DayPicker.js +33 -21
- package/lib/node_modules/react-day-picker/dist/esm/DayPicker.js.map +1 -1
- package/lib/node_modules/react-day-picker/dist/esm/classes/DateLib.js +41 -0
- package/lib/node_modules/react-day-picker/dist/esm/classes/DateLib.js.map +1 -1
- package/lib/node_modules/react-day-picker/dist/esm/formatters/formatCaption.js +3 -2
- package/lib/node_modules/react-day-picker/dist/esm/formatters/formatCaption.js.map +1 -1
- package/lib/node_modules/react-day-picker/dist/esm/labels/labelGrid.js +3 -2
- package/lib/node_modules/react-day-picker/dist/esm/labels/labelGrid.js.map +1 -1
- package/lib/node_modules/react-hook-form/dist/index.esm.js +60 -38
- package/lib/node_modules/react-hook-form/dist/index.esm.js.map +1 -1
- package/lib/node_modules/react-virtuoso/dist/index.js +397 -397
- package/lib/node_modules/react-virtuoso/dist/index.js.map +1 -1
- package/lib/node_modules/ua-parser-js/src/ua-parser.js +85 -71
- package/lib/node_modules/ua-parser-js/src/ua-parser.js.map +1 -1
- package/lib/styles.css +1 -1
- package/lib/styles.css.map +1 -1
- package/lib/utils/getEncryptedData/getEncryptedData.d.ts +1 -1
- package/lib/utils/getEncryptedData/getEncryptedData.js +17 -8
- package/lib/utils/getEncryptedData/getEncryptedData.js.map +1 -1
- package/package.json +106 -107
- package/lib/node_modules/jsencrypt/lib/JSEncrypt.js +0 -246
- package/lib/node_modules/jsencrypt/lib/JSEncrypt.js.map +0 -1
- package/lib/node_modules/jsencrypt/lib/JSEncryptRSAKey.js +0 -325
- package/lib/node_modules/jsencrypt/lib/JSEncryptRSAKey.js.map +0 -1
- package/lib/node_modules/jsencrypt/lib/index.js +0 -6
- package/lib/node_modules/jsencrypt/lib/index.js.map +0 -1
- package/lib/node_modules/jsencrypt/lib/lib/asn1js/asn1.js +0 -570
- package/lib/node_modules/jsencrypt/lib/lib/asn1js/asn1.js.map +0 -1
- package/lib/node_modules/jsencrypt/lib/lib/asn1js/base64.js +0 -88
- package/lib/node_modules/jsencrypt/lib/lib/asn1js/base64.js.map +0 -1
- package/lib/node_modules/jsencrypt/lib/lib/asn1js/hex.js +0 -66
- package/lib/node_modules/jsencrypt/lib/lib/asn1js/hex.js.map +0 -1
- package/lib/node_modules/jsencrypt/lib/lib/asn1js/int10.js +0 -87
- package/lib/node_modules/jsencrypt/lib/lib/asn1js/int10.js.map +0 -1
- package/lib/node_modules/jsencrypt/lib/lib/jsbn/base64.js +0 -65
- package/lib/node_modules/jsencrypt/lib/lib/jsbn/base64.js.map +0 -1
- package/lib/node_modules/jsencrypt/lib/lib/jsbn/jsbn.js +0 -1700
- package/lib/node_modules/jsencrypt/lib/lib/jsbn/jsbn.js.map +0 -1
- package/lib/node_modules/jsencrypt/lib/lib/jsbn/prng4.js +0 -48
- package/lib/node_modules/jsencrypt/lib/lib/jsbn/prng4.js.map +0 -1
- package/lib/node_modules/jsencrypt/lib/lib/jsbn/rng.js +0 -77
- package/lib/node_modules/jsencrypt/lib/lib/jsbn/rng.js.map +0 -1
- package/lib/node_modules/jsencrypt/lib/lib/jsbn/rsa.js +0 -415
- package/lib/node_modules/jsencrypt/lib/lib/jsbn/rsa.js.map +0 -1
- package/lib/node_modules/jsencrypt/lib/lib/jsbn/sha256.js +0 -307
- package/lib/node_modules/jsencrypt/lib/lib/jsbn/sha256.js.map +0 -1
- package/lib/node_modules/jsencrypt/lib/lib/jsbn/util.js +0 -61
- package/lib/node_modules/jsencrypt/lib/lib/jsbn/util.js.map +0 -1
- package/lib/node_modules/jsencrypt/lib/lib/jsrsasign/asn1-1.0.js +0 -1559
- package/lib/node_modules/jsencrypt/lib/lib/jsrsasign/asn1-1.0.js.map +0 -1
@@ -1 +1 @@
|
|
1
|
-
{"version":3,"file":"metadata.js","sources":["../../../../node_modules/libphonenumber-js/es6/metadata.js"],"sourcesContent":["function _readOnlyError(r) { throw new TypeError('\"' + r + '\" is read-only'); }\nfunction _typeof(o) { \"@babel/helpers - typeof\"; return _typeof = \"function\" == typeof Symbol && \"symbol\" == typeof Symbol.iterator ? function (o) { return typeof o; } : function (o) { return o && \"function\" == typeof Symbol && o.constructor === Symbol && o !== Symbol.prototype ? \"symbol\" : typeof o; }, _typeof(o); }\nfunction _classCallCheck(a, n) { if (!(a instanceof n)) throw new TypeError(\"Cannot call a class as a function\"); }\nfunction _defineProperties(e, r) { for (var t = 0; t < r.length; t++) { var o = r[t]; o.enumerable = o.enumerable || !1, o.configurable = !0, \"value\" in o && (o.writable = !0), Object.defineProperty(e, _toPropertyKey(o.key), o); } }\nfunction _createClass(e, r, t) { return r && _defineProperties(e.prototype, r), t && _defineProperties(e, t), Object.defineProperty(e, \"prototype\", { writable: !1 }), e; }\nfunction _toPropertyKey(t) { var i = _toPrimitive(t, \"string\"); return \"symbol\" == _typeof(i) ? i : i + \"\"; }\nfunction _toPrimitive(t, r) { if (\"object\" != _typeof(t) || !t) return t; var e = t[Symbol.toPrimitive]; if (void 0 !== e) { var i = e.call(t, r || \"default\"); if (\"object\" != _typeof(i)) return i; throw new TypeError(\"@@toPrimitive must return a primitive value.\"); } return (\"string\" === r ? String : Number)(t); }\nimport compare from './tools/semver-compare.js';\nimport isObject from './helpers/isObject.js';\n\n// Added \"possibleLengths\" and renamed\n// \"country_phone_code_to_countries\" to \"country_calling_codes\".\nvar V2 = '1.0.18';\n\n// Added \"idd_prefix\" and \"default_idd_prefix\".\nvar V3 = '1.2.0';\n\n// Moved `001` country code to \"nonGeographic\" section of metadata.\nvar V4 = '1.7.35';\nvar DEFAULT_EXT_PREFIX = ' ext. ';\nvar CALLING_CODE_REG_EXP = /^\\d+$/;\n\n/**\r\n * See: https://gitlab.com/catamphetamine/libphonenumber-js/blob/master/METADATA.md\r\n */\nvar Metadata = /*#__PURE__*/function () {\n function Metadata(metadata) {\n _classCallCheck(this, Metadata);\n validateMetadata(metadata);\n this.metadata = metadata;\n setVersion.call(this, metadata);\n }\n return _createClass(Metadata, [{\n key: \"getCountries\",\n value: function getCountries() {\n return Object.keys(this.metadata.countries).filter(function (_) {\n return _ !== '001';\n });\n }\n }, {\n key: \"getCountryMetadata\",\n value: function getCountryMetadata(countryCode) {\n return this.metadata.countries[countryCode];\n }\n }, {\n key: \"nonGeographic\",\n value: function nonGeographic() {\n if (this.v1 || this.v2 || this.v3) return;\n // `nonGeographical` was a typo.\n // It's present in metadata generated from `1.7.35` to `1.7.37`.\n // The test case could be found by searching for \"nonGeographical\".\n return this.metadata.nonGeographic || this.metadata.nonGeographical;\n }\n }, {\n key: \"hasCountry\",\n value: function hasCountry(country) {\n return this.getCountryMetadata(country) !== undefined;\n }\n }, {\n key: \"hasCallingCode\",\n value: function hasCallingCode(callingCode) {\n if (this.getCountryCodesForCallingCode(callingCode)) {\n return true;\n }\n if (this.nonGeographic()) {\n if (this.nonGeographic()[callingCode]) {\n return true;\n }\n } else {\n // A hacky workaround for old custom metadata (generated before V4).\n var countryCodes = this.countryCallingCodes()[callingCode];\n if (countryCodes && countryCodes.length === 1 && countryCodes[0] === '001') {\n return true;\n }\n }\n }\n }, {\n key: \"isNonGeographicCallingCode\",\n value: function isNonGeographicCallingCode(callingCode) {\n if (this.nonGeographic()) {\n return this.nonGeographic()[callingCode] ? true : false;\n } else {\n return this.getCountryCodesForCallingCode(callingCode) ? false : true;\n }\n }\n\n // Deprecated.\n }, {\n key: \"country\",\n value: function country(countryCode) {\n return this.selectNumberingPlan(countryCode);\n }\n }, {\n key: \"selectNumberingPlan\",\n value: function selectNumberingPlan(countryCode, callingCode) {\n // Supports just passing `callingCode` as the first argument.\n if (countryCode && CALLING_CODE_REG_EXP.test(countryCode)) {\n callingCode = countryCode;\n countryCode = null;\n }\n if (countryCode && countryCode !== '001') {\n if (!this.hasCountry(countryCode)) {\n throw new Error(\"Unknown country: \".concat(countryCode));\n }\n this.numberingPlan = new NumberingPlan(this.getCountryMetadata(countryCode), this);\n } else if (callingCode) {\n if (!this.hasCallingCode(callingCode)) {\n throw new Error(\"Unknown calling code: \".concat(callingCode));\n }\n this.numberingPlan = new NumberingPlan(this.getNumberingPlanMetadata(callingCode), this);\n } else {\n this.numberingPlan = undefined;\n }\n return this;\n }\n }, {\n key: \"getCountryCodesForCallingCode\",\n value: function getCountryCodesForCallingCode(callingCode) {\n var countryCodes = this.countryCallingCodes()[callingCode];\n if (countryCodes) {\n // Metadata before V4 included \"non-geographic entity\" calling codes\n // inside `country_calling_codes` (for example, `\"881\":[\"001\"]`).\n // Now the semantics of `country_calling_codes` has changed:\n // it's specifically for \"countries\" now.\n // Older versions of custom metadata will simply skip parsing\n // \"non-geographic entity\" phone numbers with new versions\n // of this library: it's not considered a bug,\n // because such numbers are extremely rare,\n // and developers extremely rarely use custom metadata.\n if (countryCodes.length === 1 && countryCodes[0].length === 3) {\n return;\n }\n return countryCodes;\n }\n }\n }, {\n key: \"getCountryCodeForCallingCode\",\n value: function getCountryCodeForCallingCode(callingCode) {\n var countryCodes = this.getCountryCodesForCallingCode(callingCode);\n if (countryCodes) {\n return countryCodes[0];\n }\n }\n }, {\n key: \"getNumberingPlanMetadata\",\n value: function getNumberingPlanMetadata(callingCode) {\n var countryCode = this.getCountryCodeForCallingCode(callingCode);\n if (countryCode) {\n return this.getCountryMetadata(countryCode);\n }\n if (this.nonGeographic()) {\n var metadata = this.nonGeographic()[callingCode];\n if (metadata) {\n return metadata;\n }\n } else {\n // A hacky workaround for old custom metadata (generated before V4).\n // In that metadata, there was no concept of \"non-geographic\" metadata\n // so metadata for `001` country code was stored along with other countries.\n // The test case can be found by searching for:\n // \"should work around `nonGeographic` metadata not existing\".\n var countryCodes = this.countryCallingCodes()[callingCode];\n if (countryCodes && countryCodes.length === 1 && countryCodes[0] === '001') {\n return this.metadata.countries['001'];\n }\n }\n }\n\n // Deprecated.\n }, {\n key: \"countryCallingCode\",\n value: function countryCallingCode() {\n return this.numberingPlan.callingCode();\n }\n\n // Deprecated.\n }, {\n key: \"IDDPrefix\",\n value: function IDDPrefix() {\n return this.numberingPlan.IDDPrefix();\n }\n\n // Deprecated.\n }, {\n key: \"defaultIDDPrefix\",\n value: function defaultIDDPrefix() {\n return this.numberingPlan.defaultIDDPrefix();\n }\n\n // Deprecated.\n }, {\n key: \"nationalNumberPattern\",\n value: function nationalNumberPattern() {\n return this.numberingPlan.nationalNumberPattern();\n }\n\n // Deprecated.\n }, {\n key: \"possibleLengths\",\n value: function possibleLengths() {\n return this.numberingPlan.possibleLengths();\n }\n\n // Deprecated.\n }, {\n key: \"formats\",\n value: function formats() {\n return this.numberingPlan.formats();\n }\n\n // Deprecated.\n }, {\n key: \"nationalPrefixForParsing\",\n value: function nationalPrefixForParsing() {\n return this.numberingPlan.nationalPrefixForParsing();\n }\n\n // Deprecated.\n }, {\n key: \"nationalPrefixTransformRule\",\n value: function nationalPrefixTransformRule() {\n return this.numberingPlan.nationalPrefixTransformRule();\n }\n\n // Deprecated.\n }, {\n key: \"leadingDigits\",\n value: function leadingDigits() {\n return this.numberingPlan.leadingDigits();\n }\n\n // Deprecated.\n }, {\n key: \"hasTypes\",\n value: function hasTypes() {\n return this.numberingPlan.hasTypes();\n }\n\n // Deprecated.\n }, {\n key: \"type\",\n value: function type(_type) {\n return this.numberingPlan.type(_type);\n }\n\n // Deprecated.\n }, {\n key: \"ext\",\n value: function ext() {\n return this.numberingPlan.ext();\n }\n }, {\n key: \"countryCallingCodes\",\n value: function countryCallingCodes() {\n if (this.v1) return this.metadata.country_phone_code_to_countries;\n return this.metadata.country_calling_codes;\n }\n\n // Deprecated.\n }, {\n key: \"chooseCountryByCountryCallingCode\",\n value: function chooseCountryByCountryCallingCode(callingCode) {\n return this.selectNumberingPlan(callingCode);\n }\n }, {\n key: \"hasSelectedNumberingPlan\",\n value: function hasSelectedNumberingPlan() {\n return this.numberingPlan !== undefined;\n }\n }]);\n}();\nexport { Metadata as default };\nvar NumberingPlan = /*#__PURE__*/function () {\n function NumberingPlan(metadata, globalMetadataObject) {\n _classCallCheck(this, NumberingPlan);\n this.globalMetadataObject = globalMetadataObject;\n this.metadata = metadata;\n setVersion.call(this, globalMetadataObject.metadata);\n }\n return _createClass(NumberingPlan, [{\n key: \"callingCode\",\n value: function callingCode() {\n return this.metadata[0];\n }\n\n // Formatting information for regions which share\n // a country calling code is contained by only one region\n // for performance reasons. For example, for NANPA region\n // (\"North American Numbering Plan Administration\",\n // which includes USA, Canada, Cayman Islands, Bahamas, etc)\n // it will be contained in the metadata for `US`.\n }, {\n key: \"getDefaultCountryMetadataForRegion\",\n value: function getDefaultCountryMetadataForRegion() {\n return this.globalMetadataObject.getNumberingPlanMetadata(this.callingCode());\n }\n\n // Is always present.\n }, {\n key: \"IDDPrefix\",\n value: function IDDPrefix() {\n if (this.v1 || this.v2) return;\n return this.metadata[1];\n }\n\n // Is only present when a country supports multiple IDD prefixes.\n }, {\n key: \"defaultIDDPrefix\",\n value: function defaultIDDPrefix() {\n if (this.v1 || this.v2) return;\n return this.metadata[12];\n }\n }, {\n key: \"nationalNumberPattern\",\n value: function nationalNumberPattern() {\n if (this.v1 || this.v2) return this.metadata[1];\n return this.metadata[2];\n }\n\n // \"possible length\" data is always present in Google's metadata.\n }, {\n key: \"possibleLengths\",\n value: function possibleLengths() {\n if (this.v1) return;\n return this.metadata[this.v2 ? 2 : 3];\n }\n }, {\n key: \"_getFormats\",\n value: function _getFormats(metadata) {\n return metadata[this.v1 ? 2 : this.v2 ? 3 : 4];\n }\n\n // For countries of the same region (e.g. NANPA)\n // formats are all stored in the \"main\" country for that region.\n // E.g. \"RU\" and \"KZ\", \"US\" and \"CA\".\n }, {\n key: \"formats\",\n value: function formats() {\n var _this = this;\n var formats = this._getFormats(this.metadata) || this._getFormats(this.getDefaultCountryMetadataForRegion()) || [];\n return formats.map(function (_) {\n return new Format(_, _this);\n });\n }\n }, {\n key: \"nationalPrefix\",\n value: function nationalPrefix() {\n return this.metadata[this.v1 ? 3 : this.v2 ? 4 : 5];\n }\n }, {\n key: \"_getNationalPrefixFormattingRule\",\n value: function _getNationalPrefixFormattingRule(metadata) {\n return metadata[this.v1 ? 4 : this.v2 ? 5 : 6];\n }\n\n // For countries of the same region (e.g. NANPA)\n // national prefix formatting rule is stored in the \"main\" country for that region.\n // E.g. \"RU\" and \"KZ\", \"US\" and \"CA\".\n }, {\n key: \"nationalPrefixFormattingRule\",\n value: function nationalPrefixFormattingRule() {\n return this._getNationalPrefixFormattingRule(this.metadata) || this._getNationalPrefixFormattingRule(this.getDefaultCountryMetadataForRegion());\n }\n }, {\n key: \"_nationalPrefixForParsing\",\n value: function _nationalPrefixForParsing() {\n return this.metadata[this.v1 ? 5 : this.v2 ? 6 : 7];\n }\n }, {\n key: \"nationalPrefixForParsing\",\n value: function nationalPrefixForParsing() {\n // If `national_prefix_for_parsing` is not set explicitly,\n // then infer it from `national_prefix` (if any)\n return this._nationalPrefixForParsing() || this.nationalPrefix();\n }\n }, {\n key: \"nationalPrefixTransformRule\",\n value: function nationalPrefixTransformRule() {\n return this.metadata[this.v1 ? 6 : this.v2 ? 7 : 8];\n }\n }, {\n key: \"_getNationalPrefixIsOptionalWhenFormatting\",\n value: function _getNationalPrefixIsOptionalWhenFormatting() {\n return !!this.metadata[this.v1 ? 7 : this.v2 ? 8 : 9];\n }\n\n // For countries of the same region (e.g. NANPA)\n // \"national prefix is optional when formatting\" flag is\n // stored in the \"main\" country for that region.\n // E.g. \"RU\" and \"KZ\", \"US\" and \"CA\".\n }, {\n key: \"nationalPrefixIsOptionalWhenFormattingInNationalFormat\",\n value: function nationalPrefixIsOptionalWhenFormattingInNationalFormat() {\n return this._getNationalPrefixIsOptionalWhenFormatting(this.metadata) || this._getNationalPrefixIsOptionalWhenFormatting(this.getDefaultCountryMetadataForRegion());\n }\n }, {\n key: \"leadingDigits\",\n value: function leadingDigits() {\n return this.metadata[this.v1 ? 8 : this.v2 ? 9 : 10];\n }\n }, {\n key: \"types\",\n value: function types() {\n return this.metadata[this.v1 ? 9 : this.v2 ? 10 : 11];\n }\n }, {\n key: \"hasTypes\",\n value: function hasTypes() {\n // Versions 1.2.0 - 1.2.4: can be `[]`.\n /* istanbul ignore next */\n if (this.types() && this.types().length === 0) {\n return false;\n }\n // Versions <= 1.2.4: can be `undefined`.\n // Version >= 1.2.5: can be `0`.\n return !!this.types();\n }\n }, {\n key: \"type\",\n value: function type(_type2) {\n if (this.hasTypes() && getType(this.types(), _type2)) {\n return new Type(getType(this.types(), _type2), this);\n }\n }\n }, {\n key: \"ext\",\n value: function ext() {\n if (this.v1 || this.v2) return DEFAULT_EXT_PREFIX;\n return this.metadata[13] || DEFAULT_EXT_PREFIX;\n }\n }]);\n}();\nvar Format = /*#__PURE__*/function () {\n function Format(format, metadata) {\n _classCallCheck(this, Format);\n this._format = format;\n this.metadata = metadata;\n }\n return _createClass(Format, [{\n key: \"pattern\",\n value: function pattern() {\n return this._format[0];\n }\n }, {\n key: \"format\",\n value: function format() {\n return this._format[1];\n }\n }, {\n key: \"leadingDigitsPatterns\",\n value: function leadingDigitsPatterns() {\n return this._format[2] || [];\n }\n }, {\n key: \"nationalPrefixFormattingRule\",\n value: function nationalPrefixFormattingRule() {\n return this._format[3] || this.metadata.nationalPrefixFormattingRule();\n }\n }, {\n key: \"nationalPrefixIsOptionalWhenFormattingInNationalFormat\",\n value: function nationalPrefixIsOptionalWhenFormattingInNationalFormat() {\n return !!this._format[4] || this.metadata.nationalPrefixIsOptionalWhenFormattingInNationalFormat();\n }\n }, {\n key: \"nationalPrefixIsMandatoryWhenFormattingInNationalFormat\",\n value: function nationalPrefixIsMandatoryWhenFormattingInNationalFormat() {\n // National prefix is omitted if there's no national prefix formatting rule\n // set for this country, or when the national prefix formatting rule\n // contains no national prefix itself, or when this rule is set but\n // national prefix is optional for this phone number format\n // (and it is not enforced explicitly)\n return this.usesNationalPrefix() && !this.nationalPrefixIsOptionalWhenFormattingInNationalFormat();\n }\n\n // Checks whether national prefix formatting rule contains national prefix.\n }, {\n key: \"usesNationalPrefix\",\n value: function usesNationalPrefix() {\n return this.nationalPrefixFormattingRule() &&\n // Check that national prefix formatting rule is not a \"dummy\" one.\n !FIRST_GROUP_ONLY_PREFIX_PATTERN.test(this.nationalPrefixFormattingRule())\n // In compressed metadata, `this.nationalPrefixFormattingRule()` is `0`\n // when `national_prefix_formatting_rule` is not present.\n // So, `true` or `false` are returned explicitly here, so that\n // `0` number isn't returned.\n ? true : false;\n }\n }, {\n key: \"internationalFormat\",\n value: function internationalFormat() {\n return this._format[5] || this.format();\n }\n }]);\n}();\n/**\r\n * A pattern that is used to determine if the national prefix formatting rule\r\n * has the first group only, i.e., does not start with the national prefix.\r\n * Note that the pattern explicitly allows for unbalanced parentheses.\r\n */\nvar FIRST_GROUP_ONLY_PREFIX_PATTERN = /^\\(?\\$1\\)?$/;\nvar Type = /*#__PURE__*/function () {\n function Type(type, metadata) {\n _classCallCheck(this, Type);\n this.type = type;\n this.metadata = metadata;\n }\n return _createClass(Type, [{\n key: \"pattern\",\n value: function pattern() {\n if (this.metadata.v1) return this.type;\n return this.type[0];\n }\n }, {\n key: \"possibleLengths\",\n value: function possibleLengths() {\n if (this.metadata.v1) return;\n return this.type[1] || this.metadata.possibleLengths();\n }\n }]);\n}();\nfunction getType(types, type) {\n switch (type) {\n case 'FIXED_LINE':\n return types[0];\n case 'MOBILE':\n return types[1];\n case 'TOLL_FREE':\n return types[2];\n case 'PREMIUM_RATE':\n return types[3];\n case 'PERSONAL_NUMBER':\n return types[4];\n case 'VOICEMAIL':\n return types[5];\n case 'UAN':\n return types[6];\n case 'PAGER':\n return types[7];\n case 'VOIP':\n return types[8];\n case 'SHARED_COST':\n return types[9];\n }\n}\nexport function validateMetadata(metadata) {\n if (!metadata) {\n throw new Error('[libphonenumber-js] `metadata` argument not passed. Check your arguments.');\n }\n\n // `country_phone_code_to_countries` was renamed to `country_calling_codes` in `1.0.18`.\n // For that reason, it's not used in this detection algorithm.\n // Instead, it detects by `countries: {}` property existence.\n if (!isObject(metadata) || !isObject(metadata.countries)) {\n throw new Error(\"[libphonenumber-js] `metadata` argument was passed but it's not a valid metadata. Must be an object having `.countries` child object property. Got \".concat(isObject(metadata) ? 'an object of shape: { ' + Object.keys(metadata).join(', ') + ' }' : 'a ' + typeOf(metadata) + ': ' + metadata, \".\"));\n }\n}\n\n// Babel transforms `typeof` into some \"branches\"\n// so istanbul will show this as \"branch not covered\".\n/* istanbul ignore next */\nvar typeOf = function typeOf(_) {\n return _typeof(_);\n};\n\n/**\r\n * Returns extension prefix for a country.\r\n * @param {string} country\r\n * @param {object} metadata\r\n * @return {string?}\r\n * @example\r\n * // Returns \" ext. \"\r\n * getExtPrefix(\"US\")\r\n */\nexport function getExtPrefix(country, metadata) {\n metadata = new Metadata(metadata);\n if (metadata.hasCountry(country)) {\n return metadata.country(country).ext();\n }\n return DEFAULT_EXT_PREFIX;\n}\n\n/**\r\n * Returns \"country calling code\" for a country.\r\n * Throws an error if the country doesn't exist or isn't supported by this library.\r\n * @param {string} country\r\n * @param {object} metadata\r\n * @return {string}\r\n * @example\r\n * // Returns \"44\"\r\n * getCountryCallingCode(\"GB\")\r\n */\nexport function getCountryCallingCode(country, metadata) {\n metadata = new Metadata(metadata);\n if (metadata.hasCountry(country)) {\n return metadata.country(country).countryCallingCode();\n }\n throw new Error(\"Unknown country: \".concat(country));\n}\nexport function isSupportedCountry(country, metadata) {\n // metadata = new Metadata(metadata)\n // return metadata.hasCountry(country)\n return metadata.countries.hasOwnProperty(country);\n}\nfunction setVersion(metadata) {\n var version = metadata.version;\n if (typeof version === 'number') {\n this.v1 = version === 1;\n this.v2 = version === 2;\n this.v3 = version === 3;\n this.v4 = version === 4;\n } else {\n if (!version) {\n this.v1 = true;\n } else if (compare(version, V3) === -1) {\n this.v2 = true;\n } else if (compare(version, V4) === -1) {\n this.v3 = true;\n } else {\n this.v4 = true;\n }\n }\n}\n\n// const ISO_COUNTRY_CODE = /^[A-Z]{2}$/\n// function isCountryCode(countryCode) {\n// \treturn ISO_COUNTRY_CODE.test(countryCodeOrCountryCallingCode)\n// }\n//# sourceMappingURL=metadata.js.map"],"names":["V3","V4","DEFAULT_EXT_PREFIX","CALLING_CODE_REG_EXP","Metadata","metadata","_classCallCheck","validateMetadata","setVersion","call","_createClass","key","value","getCountries","Object","keys","countries","filter","_","getCountryMetadata","countryCode","nonGeographic","v1","v2","v3","nonGeographical","hasCountry","country","undefined","hasCallingCode","callingCode","getCountryCodesForCallingCode","countryCodes","countryCallingCodes","length","isNonGeographicCallingCode","selectNumberingPlan","test","Error","concat","numberingPlan","NumberingPlan","getNumberingPlanMetadata","getCountryCodeForCallingCode","countryCallingCode","IDDPrefix","defaultIDDPrefix","nationalNumberPattern","possibleLengths","formats","nationalPrefixForParsing","nationalPrefixTransformRule","leadingDigits","hasTypes","type","_type","ext","country_phone_code_to_countries","country_calling_codes","chooseCountryByCountryCallingCode","hasSelectedNumberingPlan","globalMetadataObject","getDefaultCountryMetadataForRegion","_getFormats","_this","map","Format","nationalPrefix","_getNationalPrefixFormattingRule","nationalPrefixFormattingRule","_nationalPrefixForParsing","_getNationalPrefixIsOptionalWhenFormatting","nationalPrefixIsOptionalWhenFormattingInNationalFormat","types","_type2","getType","Type","format","_format","pattern","leadingDigitsPatterns","nationalPrefixIsMandatoryWhenFormattingInNationalFormat","usesNationalPrefix","FIRST_GROUP_ONLY_PREFIX_PATTERN","internationalFormat","isObject","join","typeOf","_typeof","getCountryCallingCode","isSupportedCountry","hasOwnProperty","version","v4","compare"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAOA;AACA,IAAMA,EAAE,GAAG,OAAO;;AAElB;AACA,IAAMC,EAAE,GAAG,QAAQ;AAEnB,IAAMC,kBAAkB,GAAG,QAAQ;AAEnC,IAAMC,oBAAoB,GAAG,OAAO;;AAEpC;AACA;AACA;AAFA,IAGqBC,QAAQ,gBAAA,YAAA;EAC5B,SAAAA,QAAAA,CAAYC,QAAQ,EAAE;AAAAC,IAAAA,eAAA,OAAAF,QAAA,CAAA;IACrBG,gBAAgB,CAACF,QAAQ,CAAC;IAC1B,IAAI,CAACA,QAAQ,GAAGA,QAAQ;AACxBG,IAAAA,UAAU,CAACC,IAAI,CAAC,IAAI,EAAEJ,QAAQ,CAAC;AAChC,EAAA;EAAC,OAAAK,YAAA,CAAAN,QAAA,EAAA,CAAA;IAAAO,GAAA,EAAA,cAAA;AAAAC,IAAAA,KAAA,EAED,SAAAC,YAAYA,GAAG;AACd,MAAA,OAAOC,MAAM,CAACC,IAAI,CAAC,IAAI,CAACV,QAAQ,CAACW,SAAS,CAAC,CAACC,MAAM,CAAC,UAAAC,CAAC,EAAA;QAAA,OAAIA,CAAC,KAAK,KAAK;MAAA,CAAA,CAAC;AACrE,IAAA;AAAC,GAAA,EAAA;IAAAP,GAAA,EAAA,oBAAA;AAAAC,IAAAA,KAAA,EAED,SAAAO,kBAAkBA,CAACC,WAAW,EAAE;AAC/B,MAAA,OAAO,IAAI,CAACf,QAAQ,CAACW,SAAS,CAACI,WAAW,CAAC;AAC5C,IAAA;AAAC,GAAA,EAAA;IAAAT,GAAA,EAAA,eAAA;AAAAC,IAAAA,KAAA,EAED,SAAAS,aAAaA,GAAG;MACf,IAAI,IAAI,CAACC,EAAE,IAAI,IAAI,CAACC,EAAE,IAAI,IAAI,CAACC,EAAE,EAAE;AACnC;AACA;AACA;MACA,OAAO,IAAI,CAACnB,QAAQ,CAACgB,aAAa,IAAI,IAAI,CAAChB,QAAQ,CAACoB,eAAe;AACpE,IAAA;AAAC,GAAA,EAAA;IAAAd,GAAA,EAAA,YAAA;AAAAC,IAAAA,KAAA,EAED,SAAAc,UAAUA,CAACC,OAAO,EAAE;AACnB,MAAA,OAAO,IAAI,CAACR,kBAAkB,CAACQ,OAAO,CAAC,KAAKC,SAAS;AACtD,IAAA;AAAC,GAAA,EAAA;IAAAjB,GAAA,EAAA,gBAAA;AAAAC,IAAAA,KAAA,EAED,SAAAiB,cAAcA,CAACC,WAAW,EAAE;AAC3B,MAAA,IAAI,IAAI,CAACC,6BAA6B,CAACD,WAAW,CAAC,EAAE;AACpD,QAAA,OAAO,IAAI;AACZ,MAAA;AACA,MAAA,IAAI,IAAI,CAACT,aAAa,EAAE,EAAE;QACzB,IAAI,IAAI,CAACA,aAAa,EAAE,CAACS,WAAW,CAAC,EAAE;AACtC,UAAA,OAAO,IAAI;AACZ,QAAA;AACD,MAAA,CAAC,MAAM;AACN;QACA,IAAME,YAAY,GAAG,IAAI,CAACC,mBAAmB,EAAE,CAACH,WAAW,CAAC;AAC5D,QAAA,IAAIE,YAAY,IAAIA,YAAY,CAACE,MAAM,KAAK,CAAC,IAAIF,YAAY,CAAC,CAAC,CAAC,KAAK,KAAK,EAAE;AAC3E,UAAA,OAAO,IAAI;AACZ,QAAA;AACD,MAAA;AACD,IAAA;AAAC,GAAA,EAAA;IAAArB,GAAA,EAAA,4BAAA;AAAAC,IAAAA,KAAA,EAED,SAAAuB,0BAA0BA,CAACL,WAAW,EAAE;AACvC,MAAA,IAAI,IAAI,CAACT,aAAa,EAAE,EAAE;QACzB,OAAO,IAAI,CAACA,aAAa,EAAE,CAACS,WAAW,CAAC,GAAG,IAAI,GAAG,KAAK;AACxD,MAAA,CAAC,MAAM;QACN,OAAO,IAAI,CAACC,6BAA6B,CAACD,WAAW,CAAC,GAAG,KAAK,GAAG,IAAI;AACtE,MAAA;AACD,IAAA;;AAEA;AAAA,GAAA,EAAA;IAAAnB,GAAA,EAAA,SAAA;AAAAC,IAAAA,KAAA,EACA,SAAAe,OAAOA,CAACP,WAAW,EAAE;AACpB,MAAA,OAAO,IAAI,CAACgB,mBAAmB,CAAChB,WAAW,CAAC;AAC7C,IAAA;AAAC,GAAA,EAAA;IAAAT,GAAA,EAAA,qBAAA;AAAAC,IAAAA,KAAA,EAED,SAAAwB,mBAAmBA,CAAChB,WAAW,EAAEU,WAAW,EAAE;AAC7C;MACA,IAAIV,WAAW,IAAIjB,oBAAoB,CAACkC,IAAI,CAACjB,WAAW,CAAC,EAAE;AAC1DU,QAAAA,WAAW,GAAGV,WAAW;AACzBA,QAAAA,WAAW,GAAG,IAAI;AACnB,MAAA;AACA,MAAA,IAAIA,WAAW,IAAIA,WAAW,KAAK,KAAK,EAAE;AACzC,QAAA,IAAI,CAAC,IAAI,CAACM,UAAU,CAACN,WAAW,CAAC,EAAE;AAClC,UAAA,MAAM,IAAIkB,KAAK,CAAA,mBAAA,CAAAC,MAAA,CAAqBnB,WAAW,CAAE,CAAC;AACnD,QAAA;AACA,QAAA,IAAI,CAACoB,aAAa,GAAG,IAAIC,aAAa,CAAC,IAAI,CAACtB,kBAAkB,CAACC,WAAW,CAAC,EAAE,IAAI,CAAC;MACnF,CAAC,MAAM,IAAIU,WAAW,EAAE;AACvB,QAAA,IAAI,CAAC,IAAI,CAACD,cAAc,CAACC,WAAW,CAAC,EAAE;AACtC,UAAA,MAAM,IAAIQ,KAAK,CAAA,wBAAA,CAAAC,MAAA,CAA0BT,WAAW,CAAE,CAAC;AACxD,QAAA;AACA,QAAA,IAAI,CAACU,aAAa,GAAG,IAAIC,aAAa,CAAC,IAAI,CAACC,wBAAwB,CAACZ,WAAW,CAAC,EAAE,IAAI,CAAC;AACzF,MAAA,CAAC,MAAM;QACN,IAAI,CAACU,aAAa,GAAGZ,SAAS;AAC/B,MAAA;AACA,MAAA,OAAO,IAAI;AACZ,IAAA;AAAC,GAAA,EAAA;IAAAjB,GAAA,EAAA,+BAAA;AAAAC,IAAAA,KAAA,EAED,SAAAmB,6BAA6BA,CAACD,WAAW,EAAE;MAC1C,IAAME,YAAY,GAAG,IAAI,CAACC,mBAAmB,EAAE,CAACH,WAAW,CAAC;AAC5D,MAAA,IAAIE,YAAY,EAAE;AACjB;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,QAAA,IAAIA,YAAY,CAACE,MAAM,KAAK,CAAC,IAAIF,YAAY,CAAC,CAAC,CAAC,CAACE,MAAM,KAAK,CAAC,EAAE;AAC9D,UAAA;AACD,QAAA;AACA,QAAA,OAAOF,YAAY;AACpB,MAAA;AACD,IAAA;AAAC,GAAA,EAAA;IAAArB,GAAA,EAAA,8BAAA;AAAAC,IAAAA,KAAA,EAED,SAAA+B,4BAA4BA,CAACb,WAAW,EAAE;AACzC,MAAA,IAAME,YAAY,GAAG,IAAI,CAACD,6BAA6B,CAACD,WAAW,CAAC;AACpE,MAAA,IAAIE,YAAY,EAAE;QACjB,OAAOA,YAAY,CAAC,CAAC,CAAC;AACvB,MAAA;AACD,IAAA;AAAC,GAAA,EAAA;IAAArB,GAAA,EAAA,0BAAA;AAAAC,IAAAA,KAAA,EAED,SAAA8B,wBAAwBA,CAACZ,WAAW,EAAE;AACrC,MAAA,IAAMV,WAAW,GAAG,IAAI,CAACuB,4BAA4B,CAACb,WAAW,CAAC;AAClE,MAAA,IAAIV,WAAW,EAAE;AAChB,QAAA,OAAO,IAAI,CAACD,kBAAkB,CAACC,WAAW,CAAC;AAC5C,MAAA;AACA,MAAA,IAAI,IAAI,CAACC,aAAa,EAAE,EAAE;QACzB,IAAMhB,QAAQ,GAAG,IAAI,CAACgB,aAAa,EAAE,CAACS,WAAW,CAAC;AAClD,QAAA,IAAIzB,QAAQ,EAAE;AACb,UAAA,OAAOA,QAAQ;AAChB,QAAA;AACD,MAAA,CAAC,MAAM;AACN;AACA;AACA;AACA;AACA;QACA,IAAM2B,YAAY,GAAG,IAAI,CAACC,mBAAmB,EAAE,CAACH,WAAW,CAAC;AAC5D,QAAA,IAAIE,YAAY,IAAIA,YAAY,CAACE,MAAM,KAAK,CAAC,IAAIF,YAAY,CAAC,CAAC,CAAC,KAAK,KAAK,EAAE;AAC3E,UAAA,OAAO,IAAI,CAAC3B,QAAQ,CAACW,SAAS,CAAC,KAAK,CAAC;AACtC,QAAA;AACD,MAAA;AACD,IAAA;;AAEA;AAAA,GAAA,EAAA;IAAAL,GAAA,EAAA,oBAAA;AAAAC,IAAAA,KAAA,EACA,SAAAgC,kBAAkBA,GAAG;AACpB,MAAA,OAAO,IAAI,CAACJ,aAAa,CAACV,WAAW,EAAE;AACxC,IAAA;;AAEA;AAAA,GAAA,EAAA;IAAAnB,GAAA,EAAA,WAAA;AAAAC,IAAAA,KAAA,EACA,SAAAiC,SAASA,GAAG;AACX,MAAA,OAAO,IAAI,CAACL,aAAa,CAACK,SAAS,EAAE;AACtC,IAAA;;AAEA;AAAA,GAAA,EAAA;IAAAlC,GAAA,EAAA,kBAAA;AAAAC,IAAAA,KAAA,EACA,SAAAkC,gBAAgBA,GAAG;AAClB,MAAA,OAAO,IAAI,CAACN,aAAa,CAACM,gBAAgB,EAAE;AAC7C,IAAA;;AAEA;AAAA,GAAA,EAAA;IAAAnC,GAAA,EAAA,uBAAA;AAAAC,IAAAA,KAAA,EACA,SAAAmC,qBAAqBA,GAAG;AACvB,MAAA,OAAO,IAAI,CAACP,aAAa,CAACO,qBAAqB,EAAE;AAClD,IAAA;;AAEA;AAAA,GAAA,EAAA;IAAApC,GAAA,EAAA,iBAAA;AAAAC,IAAAA,KAAA,EACA,SAAAoC,eAAeA,GAAG;AACjB,MAAA,OAAO,IAAI,CAACR,aAAa,CAACQ,eAAe,EAAE;AAC5C,IAAA;;AAEA;AAAA,GAAA,EAAA;IAAArC,GAAA,EAAA,SAAA;AAAAC,IAAAA,KAAA,EACA,SAAAqC,OAAOA,GAAG;AACT,MAAA,OAAO,IAAI,CAACT,aAAa,CAACS,OAAO,EAAE;AACpC,IAAA;;AAEA;AAAA,GAAA,EAAA;IAAAtC,GAAA,EAAA,0BAAA;AAAAC,IAAAA,KAAA,EACA,SAAAsC,wBAAwBA,GAAG;AAC1B,MAAA,OAAO,IAAI,CAACV,aAAa,CAACU,wBAAwB,EAAE;AACrD,IAAA;;AAEA;AAAA,GAAA,EAAA;IAAAvC,GAAA,EAAA,6BAAA;AAAAC,IAAAA,KAAA,EACA,SAAAuC,2BAA2BA,GAAG;AAC7B,MAAA,OAAO,IAAI,CAACX,aAAa,CAACW,2BAA2B,EAAE;AACxD,IAAA;;AAEA;AAAA,GAAA,EAAA;IAAAxC,GAAA,EAAA,eAAA;AAAAC,IAAAA,KAAA,EACA,SAAAwC,aAAaA,GAAG;AACf,MAAA,OAAO,IAAI,CAACZ,aAAa,CAACY,aAAa,EAAE;AAC1C,IAAA;;AAEA;AAAA,GAAA,EAAA;IAAAzC,GAAA,EAAA,UAAA;AAAAC,IAAAA,KAAA,EACA,SAAAyC,QAAQA,GAAG;AACV,MAAA,OAAO,IAAI,CAACb,aAAa,CAACa,QAAQ,EAAE;AACrC,IAAA;;AAEA;AAAA,GAAA,EAAA;IAAA1C,GAAA,EAAA,MAAA;AAAAC,IAAAA,KAAA,EACA,SAAA0C,IAAIA,CAACC,KAAI,EAAE;AACV,MAAA,OAAO,IAAI,CAACf,aAAa,CAACc,IAAI,CAACC,KAAI,CAAC;AACrC,IAAA;;AAEA;AAAA,GAAA,EAAA;IAAA5C,GAAA,EAAA,KAAA;AAAAC,IAAAA,KAAA,EACA,SAAA4C,GAAGA,GAAG;AACL,MAAA,OAAO,IAAI,CAAChB,aAAa,CAACgB,GAAG,EAAE;AAChC,IAAA;AAAC,GAAA,EAAA;IAAA7C,GAAA,EAAA,qBAAA;AAAAC,IAAAA,KAAA,EAED,SAAAqB,mBAAmBA,GAAG;MACrB,IAAI,IAAI,CAACX,EAAE,EAAE,OAAO,IAAI,CAACjB,QAAQ,CAACoD,+BAA+B;AACjE,MAAA,OAAO,IAAI,CAACpD,QAAQ,CAACqD,qBAAqB;AAC3C,IAAA;;AAEA;AAAA,GAAA,EAAA;IAAA/C,GAAA,EAAA,mCAAA;AAAAC,IAAAA,KAAA,EACA,SAAA+C,iCAAiCA,CAAC7B,WAAW,EAAE;AAC9C,MAAA,OAAO,IAAI,CAACM,mBAAmB,CAACN,WAAW,CAAC;AAC7C,IAAA;AAAC,GAAA,EAAA;IAAAnB,GAAA,EAAA,0BAAA;AAAAC,IAAAA,KAAA,EAED,SAAAgD,wBAAwBA,GAAG;AAC1B,MAAA,OAAO,IAAI,CAACpB,aAAa,KAAKZ,SAAS;AACxC,IAAA;AAAC,GAAA,CAAA,CAAA;AAAA,CAAA;AAxM2B,IA2MvBa,aAAa,gBAAA,YAAA;AAClB,EAAA,SAAAA,aAAAA,CAAYpC,QAAQ,EAAEwD,oBAAoB,EAAE;AAAAvD,IAAAA,eAAA,OAAAmC,aAAA,CAAA;IAC3C,IAAI,CAACoB,oBAAoB,GAAGA,oBAAoB;IAChD,IAAI,CAACxD,QAAQ,GAAGA,QAAQ;IACxBG,UAAU,CAACC,IAAI,CAAC,IAAI,EAAEoD,oBAAoB,CAACxD,QAAQ,CAAC;AACrD,EAAA;EAAC,OAAAK,YAAA,CAAA+B,aAAA,EAAA,CAAA;IAAA9B,GAAA,EAAA,aAAA;AAAAC,IAAAA,KAAA,EAED,SAAAkB,WAAWA,GAAG;AACb,MAAA,OAAO,IAAI,CAACzB,QAAQ,CAAC,CAAC,CAAC;AACxB,IAAA;;AAEA;AACA;AACA;AACA;AACA;AACA;AAAA,GAAA,EAAA;IAAAM,GAAA,EAAA,oCAAA;AAAAC,IAAAA,KAAA,EACA,SAAAkD,kCAAkCA,GAAG;MACpC,OAAO,IAAI,CAACD,oBAAoB,CAACnB,wBAAwB,CAAC,IAAI,CAACZ,WAAW,EAAE,CAAC;AAC9E,IAAA;;AAEA;AAAA,GAAA,EAAA;IAAAnB,GAAA,EAAA,WAAA;AAAAC,IAAAA,KAAA,EACA,SAAAiC,SAASA,GAAG;AACX,MAAA,IAAI,IAAI,CAACvB,EAAE,IAAI,IAAI,CAACC,EAAE,EAAE;AACxB,MAAA,OAAO,IAAI,CAAClB,QAAQ,CAAC,CAAC,CAAC;AACxB,IAAA;;AAEA;AAAA,GAAA,EAAA;IAAAM,GAAA,EAAA,kBAAA;AAAAC,IAAAA,KAAA,EACA,SAAAkC,gBAAgBA,GAAG;AAClB,MAAA,IAAI,IAAI,CAACxB,EAAE,IAAI,IAAI,CAACC,EAAE,EAAE;AACxB,MAAA,OAAO,IAAI,CAAClB,QAAQ,CAAC,EAAE,CAAC;AACzB,IAAA;AAAC,GAAA,EAAA;IAAAM,GAAA,EAAA,uBAAA;AAAAC,IAAAA,KAAA,EAED,SAAAmC,qBAAqBA,GAAG;AACvB,MAAA,IAAI,IAAI,CAACzB,EAAE,IAAI,IAAI,CAACC,EAAE,EAAE,OAAO,IAAI,CAAClB,QAAQ,CAAC,CAAC,CAAC;AAC/C,MAAA,OAAO,IAAI,CAACA,QAAQ,CAAC,CAAC,CAAC;AACxB,IAAA;;AAEA;AAAA,GAAA,EAAA;IAAAM,GAAA,EAAA,iBAAA;AAAAC,IAAAA,KAAA,EACA,SAAAoC,eAAeA,GAAG;MACjB,IAAI,IAAI,CAAC1B,EAAE,EAAE;MACb,OAAO,IAAI,CAACjB,QAAQ,CAAC,IAAI,CAACkB,EAAE,GAAG,CAAC,GAAG,CAAC,CAAC;AACtC,IAAA;AAAC,GAAA,EAAA;IAAAZ,GAAA,EAAA,aAAA;AAAAC,IAAAA,KAAA,EAED,SAAAmD,WAAWA,CAAC1D,QAAQ,EAAE;AACrB,MAAA,OAAOA,QAAQ,CAAC,IAAI,CAACiB,EAAE,GAAG,CAAC,GAAG,IAAI,CAACC,EAAE,GAAG,CAAC,GAAG,CAAC,CAAC;AAC/C,IAAA;;AAEA;AACA;AACA;AAAA,GAAA,EAAA;IAAAZ,GAAA,EAAA,SAAA;AAAAC,IAAAA,KAAA,EACA,SAAAqC,OAAOA,GAAG;AAAA,MAAA,IAAAe,KAAA,GAAA,IAAA;MACT,IAAMf,OAAO,GAAG,IAAI,CAACc,WAAW,CAAC,IAAI,CAAC1D,QAAQ,CAAC,IAAI,IAAI,CAAC0D,WAAW,CAAC,IAAI,CAACD,kCAAkC,EAAE,CAAC,IAAI,EAAE;AACpH,MAAA,OAAOb,OAAO,CAACgB,GAAG,CAAC,UAAA/C,CAAC,EAAA;AAAA,QAAA,OAAI,IAAIgD,MAAM,CAAChD,CAAC,EAAE8C,KAAI,CAAC;MAAA,CAAA,CAAC;AAC7C,IAAA;AAAC,GAAA,EAAA;IAAArD,GAAA,EAAA,gBAAA;AAAAC,IAAAA,KAAA,EAED,SAAAuD,cAAcA,GAAG;AAChB,MAAA,OAAO,IAAI,CAAC9D,QAAQ,CAAC,IAAI,CAACiB,EAAE,GAAG,CAAC,GAAG,IAAI,CAACC,EAAE,GAAG,CAAC,GAAG,CAAC,CAAC;AACpD,IAAA;AAAC,GAAA,EAAA;IAAAZ,GAAA,EAAA,kCAAA;AAAAC,IAAAA,KAAA,EAED,SAAAwD,gCAAgCA,CAAC/D,QAAQ,EAAE;AAC1C,MAAA,OAAOA,QAAQ,CAAC,IAAI,CAACiB,EAAE,GAAG,CAAC,GAAG,IAAI,CAACC,EAAE,GAAG,CAAC,GAAG,CAAC,CAAC;AAC/C,IAAA;;AAEA;AACA;AACA;AAAA,GAAA,EAAA;IAAAZ,GAAA,EAAA,8BAAA;AAAAC,IAAAA,KAAA,EACA,SAAAyD,4BAA4BA,GAAG;AAC9B,MAAA,OAAO,IAAI,CAACD,gCAAgC,CAAC,IAAI,CAAC/D,QAAQ,CAAC,IAAI,IAAI,CAAC+D,gCAAgC,CAAC,IAAI,CAACN,kCAAkC,EAAE,CAAC;AAChJ,IAAA;AAAC,GAAA,EAAA;IAAAnD,GAAA,EAAA,2BAAA;AAAAC,IAAAA,KAAA,EAED,SAAA0D,yBAAyBA,GAAG;AAC3B,MAAA,OAAO,IAAI,CAACjE,QAAQ,CAAC,IAAI,CAACiB,EAAE,GAAG,CAAC,GAAG,IAAI,CAACC,EAAE,GAAG,CAAC,GAAG,CAAC,CAAC;AACpD,IAAA;AAAC,GAAA,EAAA;IAAAZ,GAAA,EAAA,0BAAA;AAAAC,IAAAA,KAAA,EAED,SAAAsC,wBAAwBA,GAAG;AAC1B;AACA;MACA,OAAO,IAAI,CAACoB,yBAAyB,EAAE,IAAI,IAAI,CAACH,cAAc,EAAE;AACjE,IAAA;AAAC,GAAA,EAAA;IAAAxD,GAAA,EAAA,6BAAA;AAAAC,IAAAA,KAAA,EAED,SAAAuC,2BAA2BA,GAAG;AAC7B,MAAA,OAAO,IAAI,CAAC9C,QAAQ,CAAC,IAAI,CAACiB,EAAE,GAAG,CAAC,GAAG,IAAI,CAACC,EAAE,GAAG,CAAC,GAAG,CAAC,CAAC;AACpD,IAAA;AAAC,GAAA,EAAA;IAAAZ,GAAA,EAAA,4CAAA;AAAAC,IAAAA,KAAA,EAED,SAAA2D,0CAA0CA,GAAG;AAC5C,MAAA,OAAO,CAAC,CAAC,IAAI,CAAClE,QAAQ,CAAC,IAAI,CAACiB,EAAE,GAAG,CAAC,GAAG,IAAI,CAACC,EAAE,GAAG,CAAC,GAAG,CAAC,CAAC;AACtD,IAAA;;AAEA;AACA;AACA;AACA;AAAA,GAAA,EAAA;IAAAZ,GAAA,EAAA,wDAAA;AAAAC,IAAAA,KAAA,EACA,SAAA4D,sDAAsDA,GAAG;AACxD,MAAA,OAAO,IAAI,CAACD,0CAA0C,CAAC,IAAI,CAAClE,QAAQ,CAAC,IACpE,IAAI,CAACkE,0CAA0C,CAAC,IAAI,CAACT,kCAAkC,EAAE,CAAC;AAC5F,IAAA;AAAC,GAAA,EAAA;IAAAnD,GAAA,EAAA,eAAA;AAAAC,IAAAA,KAAA,EAED,SAAAwC,aAAaA,GAAG;AACf,MAAA,OAAO,IAAI,CAAC/C,QAAQ,CAAC,IAAI,CAACiB,EAAE,GAAG,CAAC,GAAG,IAAI,CAACC,EAAE,GAAG,CAAC,GAAG,EAAE,CAAC;AACrD,IAAA;AAAC,GAAA,EAAA;IAAAZ,GAAA,EAAA,OAAA;AAAAC,IAAAA,KAAA,EAED,SAAA6D,KAAKA,GAAG;AACP,MAAA,OAAO,IAAI,CAACpE,QAAQ,CAAC,IAAI,CAACiB,EAAE,GAAG,CAAC,GAAG,IAAI,CAACC,EAAE,GAAG,EAAE,GAAG,EAAE,CAAC;AACtD,IAAA;AAAC,GAAA,EAAA;IAAAZ,GAAA,EAAA,UAAA;AAAAC,IAAAA,KAAA,EAED,SAAAyC,QAAQA,GAAG;AACV;AACA;AACA,MAAA,IAAI,IAAI,CAACoB,KAAK,EAAE,IAAI,IAAI,CAACA,KAAK,EAAE,CAACvC,MAAM,KAAK,CAAC,EAAE;AAC9C,QAAA,OAAO,KAAK;AACb,MAAA;AACA;AACA;AACA,MAAA,OAAO,CAAC,CAAC,IAAI,CAACuC,KAAK,EAAE;AACtB,IAAA;AAAC,GAAA,EAAA;IAAA9D,GAAA,EAAA,MAAA;AAAAC,IAAAA,KAAA,EAED,SAAA0C,IAAIA,CAACoB,MAAI,EAAE;AACV,MAAA,IAAI,IAAI,CAACrB,QAAQ,EAAE,IAAIsB,OAAO,CAAC,IAAI,CAACF,KAAK,EAAE,EAAEC,MAAI,CAAC,EAAE;AACnD,QAAA,OAAO,IAAIE,IAAI,CAACD,OAAO,CAAC,IAAI,CAACF,KAAK,EAAE,EAAEC,MAAI,CAAC,EAAE,IAAI,CAAC;AACnD,MAAA;AACD,IAAA;AAAC,GAAA,EAAA;IAAA/D,GAAA,EAAA,KAAA;AAAAC,IAAAA,KAAA,EAED,SAAA4C,GAAGA,GAAG;MACL,IAAI,IAAI,CAAClC,EAAE,IAAI,IAAI,CAACC,EAAE,EAAE,OAAOrB,kBAAkB;AACjD,MAAA,OAAO,IAAI,CAACG,QAAQ,CAAC,EAAE,CAAC,IAAIH,kBAAkB;AAC/C,IAAA;AAAC,GAAA,CAAA,CAAA;AAAA,CAAA,EAAA;AAAA,IAGIgE,MAAM,gBAAA,YAAA;AACX,EAAA,SAAAA,MAAAA,CAAYW,MAAM,EAAExE,QAAQ,EAAE;AAAAC,IAAAA,eAAA,OAAA4D,MAAA,CAAA;IAC7B,IAAI,CAACY,OAAO,GAAGD,MAAM;IACrB,IAAI,CAACxE,QAAQ,GAAGA,QAAQ;AACzB,EAAA;EAAC,OAAAK,YAAA,CAAAwD,MAAA,EAAA,CAAA;IAAAvD,GAAA,EAAA,SAAA;AAAAC,IAAAA,KAAA,EAED,SAAAmE,OAAOA,GAAG;AACT,MAAA,OAAO,IAAI,CAACD,OAAO,CAAC,CAAC,CAAC;AACvB,IAAA;AAAC,GAAA,EAAA;IAAAnE,GAAA,EAAA,QAAA;AAAAC,IAAAA,KAAA,EAED,SAAAiE,MAAMA,GAAG;AACR,MAAA,OAAO,IAAI,CAACC,OAAO,CAAC,CAAC,CAAC;AACvB,IAAA;AAAC,GAAA,EAAA;IAAAnE,GAAA,EAAA,uBAAA;AAAAC,IAAAA,KAAA,EAED,SAAAoE,qBAAqBA,GAAG;AACvB,MAAA,OAAO,IAAI,CAACF,OAAO,CAAC,CAAC,CAAC,IAAI,EAAE;AAC7B,IAAA;AAAC,GAAA,EAAA;IAAAnE,GAAA,EAAA,8BAAA;AAAAC,IAAAA,KAAA,EAED,SAAAyD,4BAA4BA,GAAG;AAC9B,MAAA,OAAO,IAAI,CAACS,OAAO,CAAC,CAAC,CAAC,IAAI,IAAI,CAACzE,QAAQ,CAACgE,4BAA4B,EAAE;AACvE,IAAA;AAAC,GAAA,EAAA;IAAA1D,GAAA,EAAA,wDAAA;AAAAC,IAAAA,KAAA,EAED,SAAA4D,sDAAsDA,GAAG;AACxD,MAAA,OAAO,CAAC,CAAC,IAAI,CAACM,OAAO,CAAC,CAAC,CAAC,IAAI,IAAI,CAACzE,QAAQ,CAACmE,sDAAsD,EAAE;AACnG,IAAA;AAAC,GAAA,EAAA;IAAA7D,GAAA,EAAA,yDAAA;AAAAC,IAAAA,KAAA,EAED,SAAAqE,uDAAuDA,GAAG;AACzD;AACA;AACA;AACA;AACA;MACA,OAAO,IAAI,CAACC,kBAAkB,EAAE,IAAI,CAAC,IAAI,CAACV,sDAAsD,EAAE;AACnG,IAAA;;AAEA;AAAA,GAAA,EAAA;IAAA7D,GAAA,EAAA,oBAAA;AAAAC,IAAAA,KAAA,EACA,SAAAsE,kBAAkBA,GAAG;AACpB,MAAA,OAAO,IAAI,CAACb,4BAA4B,EAAE;AACzC;MACA,CAACc,+BAA+B,CAAC9C,IAAI,CAAC,IAAI,CAACgC,4BAA4B,EAAE;AACzE;AACA;AACA;AACA;QACE,IAAI,GACJ,KAAK;AACT,IAAA;AAAC,GAAA,EAAA;IAAA1D,GAAA,EAAA,qBAAA;AAAAC,IAAAA,KAAA,EAED,SAAAwE,mBAAmBA,GAAG;MACrB,OAAO,IAAI,CAACN,OAAO,CAAC,CAAC,CAAC,IAAI,IAAI,CAACD,MAAM,EAAE;AACxC,IAAA;AAAC,GAAA,CAAA,CAAA;AAAA,CAAA,EAAA;AAGF;AACA;AACA;AACA;AACA;AACA,IAAMM,+BAA+B,GAAG,aAAa;AAAA,IAE/CP,IAAI,gBAAA,YAAA;AACT,EAAA,SAAAA,IAAAA,CAAYtB,IAAI,EAAEjD,QAAQ,EAAE;AAAAC,IAAAA,eAAA,OAAAsE,IAAA,CAAA;IAC3B,IAAI,CAACtB,IAAI,GAAGA,IAAI;IAChB,IAAI,CAACjD,QAAQ,GAAGA,QAAQ;AACzB,EAAA;EAAC,OAAAK,YAAA,CAAAkE,IAAA,EAAA,CAAA;IAAAjE,GAAA,EAAA,SAAA;AAAAC,IAAAA,KAAA,EAED,SAAAmE,OAAOA,GAAG;MACT,IAAI,IAAI,CAAC1E,QAAQ,CAACiB,EAAE,EAAE,OAAO,IAAI,CAACgC,IAAI;AACtC,MAAA,OAAO,IAAI,CAACA,IAAI,CAAC,CAAC,CAAC;AACpB,IAAA;AAAC,GAAA,EAAA;IAAA3C,GAAA,EAAA,iBAAA;AAAAC,IAAAA,KAAA,EAED,SAAAoC,eAAeA,GAAG;AACjB,MAAA,IAAI,IAAI,CAAC3C,QAAQ,CAACiB,EAAE,EAAE;AACtB,MAAA,OAAO,IAAI,CAACgC,IAAI,CAAC,CAAC,CAAC,IAAI,IAAI,CAACjD,QAAQ,CAAC2C,eAAe,EAAE;AACvD,IAAA;AAAC,GAAA,CAAA,CAAA;AAAA,CAAA,EAAA;AAGF,SAAS2B,OAAOA,CAACF,KAAK,EAAEnB,IAAI,EAAE;AAC7B,EAAA,QAAQA,IAAI;AACX,IAAA,KAAK,YAAY;MAChB,OAAOmB,KAAK,CAAC,CAAC,CAAC;AAChB,IAAA,KAAK,QAAQ;MACZ,OAAOA,KAAK,CAAC,CAAC,CAAC;AAChB,IAAA,KAAK,WAAW;MACf,OAAOA,KAAK,CAAC,CAAC,CAAC;AAChB,IAAA,KAAK,cAAc;MAClB,OAAOA,KAAK,CAAC,CAAC,CAAC;AAChB,IAAA,KAAK,iBAAiB;MACrB,OAAOA,KAAK,CAAC,CAAC,CAAC;AAChB,IAAA,KAAK,WAAW;MACf,OAAOA,KAAK,CAAC,CAAC,CAAC;AAChB,IAAA,KAAK,KAAK;MACT,OAAOA,KAAK,CAAC,CAAC,CAAC;AAChB,IAAA,KAAK,OAAO;MACX,OAAOA,KAAK,CAAC,CAAC,CAAC;AAChB,IAAA,KAAK,MAAM;MACV,OAAOA,KAAK,CAAC,CAAC,CAAC;AAChB,IAAA,KAAK,aAAa;MACjB,OAAOA,KAAK,CAAC,CAAC,CAAC;AACjB;AACD;AAEO,SAASlE,gBAAgBA,CAACF,QAAQ,EAAE;EAC1C,IAAI,CAACA,QAAQ,EAAE;AACd,IAAA,MAAM,IAAIiC,KAAK,CAAC,2EAA2E,CAAC;AAC7F,EAAA;;AAEA;AACA;AACA;AACA,EAAA,IAAI,CAAC+C,QAAQ,CAAChF,QAAQ,CAAC,IAAI,CAACgF,QAAQ,CAAChF,QAAQ,CAACW,SAAS,CAAC,EAAE;AACzD,IAAA,MAAM,IAAIsB,KAAK,CAAA,qJAAA,CAAAC,MAAA,CAA2J8C,QAAQ,CAAChF,QAAQ,CAAC,GAAG,wBAAwB,GAAGS,MAAM,CAACC,IAAI,CAACV,QAAQ,CAAC,CAACiF,IAAI,CAAC,IAAI,CAAC,GAAG,IAAI,GAAG,IAAI,GAAGC,MAAM,CAAClF,QAAQ,CAAC,GAAG,IAAI,GAAGA,QAAQ,MAAG,CAAC;AAClT,EAAA;AACD;;AAEA;AACA;AACA;AACA,IAAMkF,MAAM,GAAG,SAATA,MAAMA,CAAGrE,CAAC,EAAA;EAAA,OAAAsE,OAAA,CAAWtE,CAAC,CAAA;AAAA,CAAA;;AAmB5B;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACO,SAASuE,qBAAqBA,CAAC9D,OAAO,EAAEtB,QAAQ,EAAE;AACxDA,EAAAA,QAAQ,GAAG,IAAID,QAAQ,CAACC,QAAQ,CAAC;AACjC,EAAA,IAAIA,QAAQ,CAACqB,UAAU,CAACC,OAAO,CAAC,EAAE;IACjC,OAAOtB,QAAQ,CAACsB,OAAO,CAACA,OAAO,CAAC,CAACiB,kBAAkB,EAAE;AACtD,EAAA;AACA,EAAA,MAAM,IAAIN,KAAK,CAAA,mBAAA,CAAAC,MAAA,CAAqBZ,OAAO,CAAE,CAAC;AAC/C;AAEO,SAAS+D,kBAAkBA,CAAC/D,OAAO,EAAEtB,QAAQ,EAAE;AACrD;AACA;AACA,EAAA,OAAOA,QAAQ,CAACW,SAAS,CAAC2E,cAAc,CAAChE,OAAO,CAAC;AAClD;AAEA,SAASnB,UAAUA,CAACH,QAAQ,EAAE;AAC7B,EAAA,IAAQuF,OAAO,GAAKvF,QAAQ,CAApBuF,OAAO;AACf,EAAA,IAAI,OAAOA,OAAO,KAAK,QAAQ,EAAE;AAChC,IAAA,IAAI,CAACtE,EAAE,GAAGsE,OAAO,KAAK,CAAC;AACvB,IAAA,IAAI,CAACrE,EAAE,GAAGqE,OAAO,KAAK,CAAC;AACvB,IAAA,IAAI,CAACpE,EAAE,GAAGoE,OAAO,KAAK,CAAC;AACvB,IAAA,IAAI,CAACC,EAAE,GAAGD,OAAO,KAAK,CAAC;AACxB,EAAA,CAAC,MAAM;IACN,IAAI,CAACA,OAAO,EAAE;MACb,IAAI,CAACtE,EAAE,GAAG,IAAI;IACf,CAAC,MAAM,IAAIwE,OAAO,CAACF,OAAO,EAAE5F,EAAE,CAAC,KAAK,EAAE,EAAE;MACvC,IAAI,CAACuB,EAAE,GAAG,IAAI;IACf,CAAC,MAAM,IAAIuE,OAAO,CAACF,OAAO,EAAE3F,EAAE,CAAC,KAAK,EAAE,EAAE;MACvC,IAAI,CAACuB,EAAE,GAAG,IAAI;AACf,IAAA,CAAC,MAAM;MACN,IAAI,CAACqE,EAAE,GAAG,IAAI;AACf,IAAA;AACD,EAAA;AACD;;AAEA;AACA;AACA;AACA;;;;","x_google_ignoreList":[0]}
|
1
|
+
{"version":3,"file":"metadata.js","sources":["../../../../node_modules/libphonenumber-js/es6/metadata.js"],"sourcesContent":["function _readOnlyError(r) { throw new TypeError('\"' + r + '\" is read-only'); }\nfunction _typeof(o) { \"@babel/helpers - typeof\"; return _typeof = \"function\" == typeof Symbol && \"symbol\" == typeof Symbol.iterator ? function (o) { return typeof o; } : function (o) { return o && \"function\" == typeof Symbol && o.constructor === Symbol && o !== Symbol.prototype ? \"symbol\" : typeof o; }, _typeof(o); }\nfunction _classCallCheck(a, n) { if (!(a instanceof n)) throw new TypeError(\"Cannot call a class as a function\"); }\nfunction _defineProperties(e, r) { for (var t = 0; t < r.length; t++) { var o = r[t]; o.enumerable = o.enumerable || !1, o.configurable = !0, \"value\" in o && (o.writable = !0), Object.defineProperty(e, _toPropertyKey(o.key), o); } }\nfunction _createClass(e, r, t) { return r && _defineProperties(e.prototype, r), t && _defineProperties(e, t), Object.defineProperty(e, \"prototype\", { writable: !1 }), e; }\nfunction _toPropertyKey(t) { var i = _toPrimitive(t, \"string\"); return \"symbol\" == _typeof(i) ? i : i + \"\"; }\nfunction _toPrimitive(t, r) { if (\"object\" != _typeof(t) || !t) return t; var e = t[Symbol.toPrimitive]; if (void 0 !== e) { var i = e.call(t, r || \"default\"); if (\"object\" != _typeof(i)) return i; throw new TypeError(\"@@toPrimitive must return a primitive value.\"); } return (\"string\" === r ? String : Number)(t); }\nimport compare from './tools/semver-compare.js';\nimport isObject from './helpers/isObject.js';\n\n// Added \"possibleLengths\" and renamed\n// \"country_phone_code_to_countries\" to \"country_calling_codes\".\nvar V2 = '1.0.18';\n\n// Added \"idd_prefix\" and \"default_idd_prefix\".\nvar V3 = '1.2.0';\n\n// Moved `001` country code to \"nonGeographic\" section of metadata.\nvar V4 = '1.7.35';\nvar DEFAULT_EXT_PREFIX = ' ext. ';\nvar CALLING_CODE_REG_EXP = /^\\d+$/;\n\n/**\r\n * See: https://gitlab.com/catamphetamine/libphonenumber-js/blob/master/METADATA.md\r\n */\nvar Metadata = /*#__PURE__*/function () {\n function Metadata(metadata) {\n _classCallCheck(this, Metadata);\n validateMetadata(metadata);\n this.metadata = metadata;\n setVersion.call(this, metadata);\n }\n return _createClass(Metadata, [{\n key: \"getCountries\",\n value: function getCountries() {\n return Object.keys(this.metadata.countries).filter(function (_) {\n return _ !== '001';\n });\n }\n }, {\n key: \"getCountryMetadata\",\n value: function getCountryMetadata(countryCode) {\n return this.metadata.countries[countryCode];\n }\n }, {\n key: \"nonGeographic\",\n value: function nonGeographic() {\n if (this.v1 || this.v2 || this.v3) return;\n // `nonGeographical` was a typo.\n // It's present in metadata generated from `1.7.35` to `1.7.37`.\n // The test case could be found by searching for \"nonGeographical\".\n return this.metadata.nonGeographic || this.metadata.nonGeographical;\n }\n }, {\n key: \"hasCountry\",\n value: function hasCountry(country) {\n return this.getCountryMetadata(country) !== undefined;\n }\n }, {\n key: \"hasCallingCode\",\n value: function hasCallingCode(callingCode) {\n if (this.getCountryCodesForCallingCode(callingCode)) {\n return true;\n }\n if (this.nonGeographic()) {\n if (this.nonGeographic()[callingCode]) {\n return true;\n }\n } else {\n // A hacky workaround for old custom metadata (generated before V4).\n var countryCodes = this.countryCallingCodes()[callingCode];\n if (countryCodes && countryCodes.length === 1 && countryCodes[0] === '001') {\n return true;\n }\n }\n }\n }, {\n key: \"isNonGeographicCallingCode\",\n value: function isNonGeographicCallingCode(callingCode) {\n if (this.nonGeographic()) {\n return this.nonGeographic()[callingCode] ? true : false;\n } else {\n return this.getCountryCodesForCallingCode(callingCode) ? false : true;\n }\n }\n\n // Deprecated.\n }, {\n key: \"country\",\n value: function country(countryCode) {\n return this.selectNumberingPlan(countryCode);\n }\n }, {\n key: \"selectNumberingPlan\",\n value: function selectNumberingPlan(countryCode, callingCode) {\n // Supports just passing `callingCode` as the first argument.\n if (countryCode && CALLING_CODE_REG_EXP.test(countryCode)) {\n callingCode = countryCode;\n countryCode = null;\n }\n if (countryCode && countryCode !== '001') {\n if (!this.hasCountry(countryCode)) {\n throw new Error(\"Unknown country: \".concat(countryCode));\n }\n this.numberingPlan = new NumberingPlan(this.getCountryMetadata(countryCode), this);\n } else if (callingCode) {\n if (!this.hasCallingCode(callingCode)) {\n throw new Error(\"Unknown calling code: \".concat(callingCode));\n }\n this.numberingPlan = new NumberingPlan(this.getNumberingPlanMetadata(callingCode), this);\n } else {\n this.numberingPlan = undefined;\n }\n return this;\n }\n }, {\n key: \"getCountryCodesForCallingCode\",\n value: function getCountryCodesForCallingCode(callingCode) {\n var countryCodes = this.countryCallingCodes()[callingCode];\n if (countryCodes) {\n // Metadata before V4 included \"non-geographic entity\" calling codes\n // inside `country_calling_codes` (for example, `\"881\":[\"001\"]`).\n // Now the semantics of `country_calling_codes` has changed:\n // it's specifically for \"countries\" now.\n // Older versions of custom metadata will simply skip parsing\n // \"non-geographic entity\" phone numbers with new versions\n // of this library: it's not considered a bug,\n // because such numbers are extremely rare,\n // and developers extremely rarely use custom metadata.\n if (countryCodes.length === 1 && countryCodes[0].length === 3) {\n return;\n }\n return countryCodes;\n }\n }\n }, {\n key: \"getCountryCodeForCallingCode\",\n value: function getCountryCodeForCallingCode(callingCode) {\n var countryCodes = this.getCountryCodesForCallingCode(callingCode);\n if (countryCodes) {\n return countryCodes[0];\n }\n }\n }, {\n key: \"getNumberingPlanMetadata\",\n value: function getNumberingPlanMetadata(callingCode) {\n var countryCode = this.getCountryCodeForCallingCode(callingCode);\n if (countryCode) {\n return this.getCountryMetadata(countryCode);\n }\n if (this.nonGeographic()) {\n var metadata = this.nonGeographic()[callingCode];\n if (metadata) {\n return metadata;\n }\n } else {\n // A hacky workaround for old custom metadata (generated before V4).\n // In that metadata, there was no concept of \"non-geographic\" metadata\n // so metadata for `001` country code was stored along with other countries.\n // The test case can be found by searching for:\n // \"should work around `nonGeographic` metadata not existing\".\n var countryCodes = this.countryCallingCodes()[callingCode];\n if (countryCodes && countryCodes.length === 1 && countryCodes[0] === '001') {\n return this.metadata.countries['001'];\n }\n }\n }\n\n // Deprecated.\n }, {\n key: \"countryCallingCode\",\n value: function countryCallingCode() {\n return this.numberingPlan.callingCode();\n }\n\n // Deprecated.\n }, {\n key: \"IDDPrefix\",\n value: function IDDPrefix() {\n return this.numberingPlan.IDDPrefix();\n }\n\n // Deprecated.\n }, {\n key: \"defaultIDDPrefix\",\n value: function defaultIDDPrefix() {\n return this.numberingPlan.defaultIDDPrefix();\n }\n\n // Deprecated.\n }, {\n key: \"nationalNumberPattern\",\n value: function nationalNumberPattern() {\n return this.numberingPlan.nationalNumberPattern();\n }\n\n // Deprecated.\n }, {\n key: \"possibleLengths\",\n value: function possibleLengths() {\n return this.numberingPlan.possibleLengths();\n }\n\n // Deprecated.\n }, {\n key: \"formats\",\n value: function formats() {\n return this.numberingPlan.formats();\n }\n\n // Deprecated.\n }, {\n key: \"nationalPrefixForParsing\",\n value: function nationalPrefixForParsing() {\n return this.numberingPlan.nationalPrefixForParsing();\n }\n\n // Deprecated.\n }, {\n key: \"nationalPrefixTransformRule\",\n value: function nationalPrefixTransformRule() {\n return this.numberingPlan.nationalPrefixTransformRule();\n }\n\n // Deprecated.\n }, {\n key: \"leadingDigits\",\n value: function leadingDigits() {\n return this.numberingPlan.leadingDigits();\n }\n\n // Deprecated.\n }, {\n key: \"hasTypes\",\n value: function hasTypes() {\n return this.numberingPlan.hasTypes();\n }\n\n // Deprecated.\n }, {\n key: \"type\",\n value: function type(_type) {\n return this.numberingPlan.type(_type);\n }\n\n // Deprecated.\n }, {\n key: \"ext\",\n value: function ext() {\n return this.numberingPlan.ext();\n }\n }, {\n key: \"countryCallingCodes\",\n value: function countryCallingCodes() {\n if (this.v1) return this.metadata.country_phone_code_to_countries;\n return this.metadata.country_calling_codes;\n }\n\n // Deprecated.\n }, {\n key: \"chooseCountryByCountryCallingCode\",\n value: function chooseCountryByCountryCallingCode(callingCode) {\n return this.selectNumberingPlan(callingCode);\n }\n }, {\n key: \"hasSelectedNumberingPlan\",\n value: function hasSelectedNumberingPlan() {\n return this.numberingPlan !== undefined;\n }\n }]);\n}();\nexport { Metadata as default };\nvar NumberingPlan = /*#__PURE__*/function () {\n function NumberingPlan(metadata, globalMetadataObject) {\n _classCallCheck(this, NumberingPlan);\n this.globalMetadataObject = globalMetadataObject;\n this.metadata = metadata;\n setVersion.call(this, globalMetadataObject.metadata);\n }\n return _createClass(NumberingPlan, [{\n key: \"callingCode\",\n value: function callingCode() {\n return this.metadata[0];\n }\n\n // Formatting information for regions which share\n // a country calling code is contained by only one region\n // for performance reasons. For example, for NANPA region\n // (\"North American Numbering Plan Administration\",\n // which includes USA, Canada, Cayman Islands, Bahamas, etc)\n // it will be contained in the metadata for `US`.\n }, {\n key: \"getDefaultCountryMetadataForRegion\",\n value: function getDefaultCountryMetadataForRegion() {\n return this.globalMetadataObject.getNumberingPlanMetadata(this.callingCode());\n }\n\n // Is always present.\n }, {\n key: \"IDDPrefix\",\n value: function IDDPrefix() {\n if (this.v1 || this.v2) return;\n return this.metadata[1];\n }\n\n // Is only present when a country supports multiple IDD prefixes.\n }, {\n key: \"defaultIDDPrefix\",\n value: function defaultIDDPrefix() {\n if (this.v1 || this.v2) return;\n return this.metadata[12];\n }\n }, {\n key: \"nationalNumberPattern\",\n value: function nationalNumberPattern() {\n if (this.v1 || this.v2) return this.metadata[1];\n return this.metadata[2];\n }\n\n // \"possible length\" data is always present in Google's metadata.\n }, {\n key: \"possibleLengths\",\n value: function possibleLengths() {\n if (this.v1) return;\n return this.metadata[this.v2 ? 2 : 3];\n }\n }, {\n key: \"_getFormats\",\n value: function _getFormats(metadata) {\n return metadata[this.v1 ? 2 : this.v2 ? 3 : 4];\n }\n\n // For countries of the same region (e.g. NANPA)\n // formats are all stored in the \"main\" country for that region.\n // E.g. \"RU\" and \"KZ\", \"US\" and \"CA\".\n }, {\n key: \"formats\",\n value: function formats() {\n var _this = this;\n var formats = this._getFormats(this.metadata) || this._getFormats(this.getDefaultCountryMetadataForRegion()) || [];\n return formats.map(function (_) {\n return new Format(_, _this);\n });\n }\n }, {\n key: \"nationalPrefix\",\n value: function nationalPrefix() {\n return this.metadata[this.v1 ? 3 : this.v2 ? 4 : 5];\n }\n }, {\n key: \"_getNationalPrefixFormattingRule\",\n value: function _getNationalPrefixFormattingRule(metadata) {\n return metadata[this.v1 ? 4 : this.v2 ? 5 : 6];\n }\n\n // For countries of the same region (e.g. NANPA)\n // national prefix formatting rule is stored in the \"main\" country for that region.\n // E.g. \"RU\" and \"KZ\", \"US\" and \"CA\".\n }, {\n key: \"nationalPrefixFormattingRule\",\n value: function nationalPrefixFormattingRule() {\n return this._getNationalPrefixFormattingRule(this.metadata) || this._getNationalPrefixFormattingRule(this.getDefaultCountryMetadataForRegion());\n }\n }, {\n key: \"_nationalPrefixForParsing\",\n value: function _nationalPrefixForParsing() {\n return this.metadata[this.v1 ? 5 : this.v2 ? 6 : 7];\n }\n }, {\n key: \"nationalPrefixForParsing\",\n value: function nationalPrefixForParsing() {\n // If `national_prefix_for_parsing` is not set explicitly,\n // then infer it from `national_prefix` (if any)\n return this._nationalPrefixForParsing() || this.nationalPrefix();\n }\n }, {\n key: \"nationalPrefixTransformRule\",\n value: function nationalPrefixTransformRule() {\n return this.metadata[this.v1 ? 6 : this.v2 ? 7 : 8];\n }\n }, {\n key: \"_getNationalPrefixIsOptionalWhenFormatting\",\n value: function _getNationalPrefixIsOptionalWhenFormatting() {\n return !!this.metadata[this.v1 ? 7 : this.v2 ? 8 : 9];\n }\n\n // For countries of the same region (e.g. NANPA)\n // \"national prefix is optional when formatting\" flag is\n // stored in the \"main\" country for that region.\n // E.g. \"RU\" and \"KZ\", \"US\" and \"CA\".\n }, {\n key: \"nationalPrefixIsOptionalWhenFormattingInNationalFormat\",\n value: function nationalPrefixIsOptionalWhenFormattingInNationalFormat() {\n return this._getNationalPrefixIsOptionalWhenFormatting(this.metadata) || this._getNationalPrefixIsOptionalWhenFormatting(this.getDefaultCountryMetadataForRegion());\n }\n }, {\n key: \"leadingDigits\",\n value: function leadingDigits() {\n return this.metadata[this.v1 ? 8 : this.v2 ? 9 : 10];\n }\n }, {\n key: \"types\",\n value: function types() {\n return this.metadata[this.v1 ? 9 : this.v2 ? 10 : 11];\n }\n }, {\n key: \"hasTypes\",\n value: function hasTypes() {\n // Versions 1.2.0 - 1.2.4: can be `[]`.\n /* istanbul ignore next */\n if (this.types() && this.types().length === 0) {\n return false;\n }\n // Versions <= 1.2.4: can be `undefined`.\n // Version >= 1.2.5: can be `0`.\n return !!this.types();\n }\n }, {\n key: \"type\",\n value: function type(_type2) {\n if (this.hasTypes() && getType(this.types(), _type2)) {\n return new Type(getType(this.types(), _type2), this);\n }\n }\n }, {\n key: \"ext\",\n value: function ext() {\n if (this.v1 || this.v2) return DEFAULT_EXT_PREFIX;\n return this.metadata[13] || DEFAULT_EXT_PREFIX;\n }\n }]);\n}();\nvar Format = /*#__PURE__*/function () {\n function Format(format, metadata) {\n _classCallCheck(this, Format);\n this._format = format;\n this.metadata = metadata;\n }\n return _createClass(Format, [{\n key: \"pattern\",\n value: function pattern() {\n return this._format[0];\n }\n }, {\n key: \"format\",\n value: function format() {\n return this._format[1];\n }\n }, {\n key: \"leadingDigitsPatterns\",\n value: function leadingDigitsPatterns() {\n return this._format[2] || [];\n }\n }, {\n key: \"nationalPrefixFormattingRule\",\n value: function nationalPrefixFormattingRule() {\n return this._format[3] || this.metadata.nationalPrefixFormattingRule();\n }\n }, {\n key: \"nationalPrefixIsOptionalWhenFormattingInNationalFormat\",\n value: function nationalPrefixIsOptionalWhenFormattingInNationalFormat() {\n return !!this._format[4] || this.metadata.nationalPrefixIsOptionalWhenFormattingInNationalFormat();\n }\n }, {\n key: \"nationalPrefixIsMandatoryWhenFormattingInNationalFormat\",\n value: function nationalPrefixIsMandatoryWhenFormattingInNationalFormat() {\n // National prefix is omitted if there's no national prefix formatting rule\n // set for this country, or when the national prefix formatting rule\n // contains no national prefix itself, or when this rule is set but\n // national prefix is optional for this phone number format\n // (and it is not enforced explicitly)\n return this.usesNationalPrefix() && !this.nationalPrefixIsOptionalWhenFormattingInNationalFormat();\n }\n\n // Checks whether national prefix formatting rule contains national prefix.\n }, {\n key: \"usesNationalPrefix\",\n value: function usesNationalPrefix() {\n return this.nationalPrefixFormattingRule() &&\n // Check that national prefix formatting rule is not a \"dummy\" one.\n !FIRST_GROUP_ONLY_PREFIX_PATTERN.test(this.nationalPrefixFormattingRule())\n // In compressed metadata, `this.nationalPrefixFormattingRule()` is `0`\n // when `national_prefix_formatting_rule` is not present.\n // So, `true` or `false` are returned explicitly here, so that\n // `0` number isn't returned.\n ? true : false;\n }\n }, {\n key: \"internationalFormat\",\n value: function internationalFormat() {\n return this._format[5] || this.format();\n }\n }]);\n}();\n/**\r\n * A pattern that is used to determine if the national prefix formatting rule\r\n * has the first group only, i.e., does not start with the national prefix.\r\n * Note that the pattern explicitly allows for unbalanced parentheses.\r\n */\nvar FIRST_GROUP_ONLY_PREFIX_PATTERN = /^\\(?\\$1\\)?$/;\nvar Type = /*#__PURE__*/function () {\n function Type(type, metadata) {\n _classCallCheck(this, Type);\n this.type = type;\n this.metadata = metadata;\n }\n return _createClass(Type, [{\n key: \"pattern\",\n value: function pattern() {\n if (this.metadata.v1) return this.type;\n return this.type[0];\n }\n }, {\n key: \"possibleLengths\",\n value: function possibleLengths() {\n if (this.metadata.v1) return;\n return this.type[1] || this.metadata.possibleLengths();\n }\n }]);\n}();\nfunction getType(types, type) {\n switch (type) {\n case 'FIXED_LINE':\n return types[0];\n case 'MOBILE':\n return types[1];\n case 'TOLL_FREE':\n return types[2];\n case 'PREMIUM_RATE':\n return types[3];\n case 'PERSONAL_NUMBER':\n return types[4];\n case 'VOICEMAIL':\n return types[5];\n case 'UAN':\n return types[6];\n case 'PAGER':\n return types[7];\n case 'VOIP':\n return types[8];\n case 'SHARED_COST':\n return types[9];\n }\n}\nexport function validateMetadata(metadata) {\n if (!metadata) {\n throw new Error('[libphonenumber-js] `metadata` argument not passed. Check your arguments.');\n }\n\n // `country_phone_code_to_countries` was renamed to `country_calling_codes` in `1.0.18`.\n // For that reason, it's not used in this detection algorithm.\n // Instead, it detects by `countries: {}` property existence.\n if (!isObject(metadata) || !isObject(metadata.countries)) {\n throw new Error(\"[libphonenumber-js] `metadata` argument was passed but it's not a valid metadata. Must be an object having `.countries` child object property. Got \".concat(isObject(metadata) ? 'an object of shape: { ' + Object.keys(metadata).join(', ') + ' }' : 'a ' + typeOf(metadata) + ': ' + metadata, \".\"));\n }\n}\n\n// Babel transforms `typeof` into some \"branches\"\n// so istanbul will show this as \"branch not covered\".\n/* istanbul ignore next */\nvar typeOf = function typeOf(_) {\n return _typeof(_);\n};\n\n/**\r\n * Returns extension prefix for a country.\r\n * @param {string} country\r\n * @param {object} metadata\r\n * @return {string?}\r\n * @example\r\n * // Returns \" ext. \"\r\n * getExtPrefix(\"US\")\r\n */\nexport function getExtPrefix(country, metadata) {\n metadata = new Metadata(metadata);\n if (metadata.hasCountry(country)) {\n return metadata.selectNumberingPlan(country).ext();\n }\n return DEFAULT_EXT_PREFIX;\n}\n\n/**\r\n * Returns \"country calling code\" for a country.\r\n * Throws an error if the country doesn't exist or isn't supported by this library.\r\n * @param {string} country\r\n * @param {object} metadata\r\n * @return {string}\r\n * @example\r\n * // Returns \"44\"\r\n * getCountryCallingCode(\"GB\")\r\n */\nexport function getCountryCallingCode(country, metadata) {\n metadata = new Metadata(metadata);\n if (metadata.hasCountry(country)) {\n return metadata.selectNumberingPlan(country).countryCallingCode();\n }\n throw new Error(\"Unknown country: \".concat(country));\n}\nexport function isSupportedCountry(country, metadata) {\n // metadata = new Metadata(metadata)\n // return metadata.hasCountry(country)\n return metadata.countries.hasOwnProperty(country);\n}\nfunction setVersion(metadata) {\n var version = metadata.version;\n if (typeof version === 'number') {\n this.v1 = version === 1;\n this.v2 = version === 2;\n this.v3 = version === 3;\n this.v4 = version === 4;\n } else {\n if (!version) {\n this.v1 = true;\n } else if (compare(version, V3) === -1) {\n this.v2 = true;\n } else if (compare(version, V4) === -1) {\n this.v3 = true;\n } else {\n this.v4 = true;\n }\n }\n}\n\n// const ISO_COUNTRY_CODE = /^[A-Z]{2}$/\n// function isCountryCode(countryCode) {\n// \treturn ISO_COUNTRY_CODE.test(countryCodeOrCountryCallingCode)\n// }\n//# sourceMappingURL=metadata.js.map"],"names":["V3","V4","DEFAULT_EXT_PREFIX","CALLING_CODE_REG_EXP","Metadata","metadata","_classCallCheck","validateMetadata","setVersion","call","_createClass","key","value","getCountries","Object","keys","countries","filter","_","getCountryMetadata","countryCode","nonGeographic","v1","v2","v3","nonGeographical","hasCountry","country","undefined","hasCallingCode","callingCode","getCountryCodesForCallingCode","countryCodes","countryCallingCodes","length","isNonGeographicCallingCode","selectNumberingPlan","test","Error","concat","numberingPlan","NumberingPlan","getNumberingPlanMetadata","getCountryCodeForCallingCode","countryCallingCode","IDDPrefix","defaultIDDPrefix","nationalNumberPattern","possibleLengths","formats","nationalPrefixForParsing","nationalPrefixTransformRule","leadingDigits","hasTypes","type","_type","ext","country_phone_code_to_countries","country_calling_codes","chooseCountryByCountryCallingCode","hasSelectedNumberingPlan","globalMetadataObject","getDefaultCountryMetadataForRegion","_getFormats","_this","map","Format","nationalPrefix","_getNationalPrefixFormattingRule","nationalPrefixFormattingRule","_nationalPrefixForParsing","_getNationalPrefixIsOptionalWhenFormatting","nationalPrefixIsOptionalWhenFormattingInNationalFormat","types","_type2","getType","Type","format","_format","pattern","leadingDigitsPatterns","nationalPrefixIsMandatoryWhenFormattingInNationalFormat","usesNationalPrefix","FIRST_GROUP_ONLY_PREFIX_PATTERN","internationalFormat","isObject","join","typeOf","_typeof","getCountryCallingCode","isSupportedCountry","hasOwnProperty","version","v4","compare"],"mappings":"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","x_google_ignoreList":[0]}
|
@@ -154,7 +154,7 @@ function parse(text, options, metadata) {
|
|
154
154
|
countryCallingCode: countryCallingCode,
|
155
155
|
carrierCode: carrierCode,
|
156
156
|
valid: valid,
|
157
|
-
possible: valid ? true : options.extended === true && metadata.possibleLengths() && isPossibleNumber(nationalNumber, metadata) ? true : false,
|
157
|
+
possible: valid ? true : options.extended === true && metadata.possibleLengths() && isPossibleNumber(nationalNumber, country, metadata) ? true : false,
|
158
158
|
phone: nationalNumber,
|
159
159
|
ext: ext
|
160
160
|
};
|
@@ -261,17 +261,20 @@ function result(country, nationalNumber, ext) {
|
|
261
261
|
*/
|
262
262
|
function parsePhoneNumber(formattedPhoneNumber, defaultCountry, defaultCallingCode, metadata) {
|
263
263
|
// Extract calling code from phone number.
|
264
|
-
var _extractCountryCallin = extractCountryCallingCode(parseIncompletePhoneNumber(formattedPhoneNumber), defaultCountry, defaultCallingCode, metadata.metadata),
|
264
|
+
var _extractCountryCallin = extractCountryCallingCode(parseIncompletePhoneNumber(formattedPhoneNumber), undefined, defaultCountry, defaultCallingCode, metadata.metadata),
|
265
265
|
countryCallingCodeSource = _extractCountryCallin.countryCallingCodeSource,
|
266
266
|
countryCallingCode = _extractCountryCallin.countryCallingCode,
|
267
267
|
number = _extractCountryCallin.number;
|
268
268
|
|
269
|
-
//
|
269
|
+
// The exact country of the phone number
|
270
270
|
var country;
|
271
|
+
|
272
|
+
// If `formattedPhoneNumber` is passed in "international" format,
|
273
|
+
// choose a country by `countryCallingCode`.
|
271
274
|
if (countryCallingCode) {
|
272
275
|
metadata.selectNumberingPlan(countryCallingCode);
|
273
276
|
}
|
274
|
-
//
|
277
|
+
// Else, if `formattedPhoneNumber` is passed in "national" format,
|
275
278
|
// then `number` is defined and `countryCallingCode` is `undefined`.
|
276
279
|
else if (number && (defaultCountry || defaultCallingCode)) {
|
277
280
|
metadata.selectNumberingPlan(defaultCountry, defaultCallingCode);
|
@@ -286,7 +289,7 @@ function parsePhoneNumber(formattedPhoneNumber, defaultCountry, defaultCallingCo
|
|
286
289
|
countryCallingCode: countryCallingCode
|
287
290
|
};
|
288
291
|
}
|
289
|
-
var _extractNationalNumbe = extractNationalNumber(parseIncompletePhoneNumber(number), metadata),
|
292
|
+
var _extractNationalNumbe = extractNationalNumber(parseIncompletePhoneNumber(number), country, metadata),
|
290
293
|
nationalNumber = _extractNationalNumbe.nationalNumber,
|
291
294
|
carrierCode = _extractNationalNumbe.carrierCode;
|
292
295
|
|
@@ -302,14 +305,13 @@ function parsePhoneNumber(formattedPhoneNumber, defaultCountry, defaultCallingCo
|
|
302
305
|
//
|
303
306
|
var exactCountry = getCountryByCallingCode(countryCallingCode, {
|
304
307
|
nationalNumber: nationalNumber,
|
305
|
-
defaultCountry: defaultCountry,
|
306
308
|
metadata: metadata
|
307
309
|
});
|
308
310
|
if (exactCountry) {
|
309
311
|
country = exactCountry;
|
310
312
|
/* istanbul ignore if */
|
311
313
|
if (exactCountry === '001') ; else {
|
312
|
-
metadata.
|
314
|
+
metadata.selectNumberingPlan(country);
|
313
315
|
}
|
314
316
|
}
|
315
317
|
return {
|
@@ -1 +1 @@
|
|
1
|
-
{"version":3,"file":"parse.js","sources":["../../../../node_modules/libphonenumber-js/es6/parse.js"],"sourcesContent":["// This is a port of Google Android `libphonenumber`'s\n// `phonenumberutil.js` of December 31th, 2018.\n//\n// https://github.com/googlei18n/libphonenumber/commits/master/javascript/i18n/phonenumbers/phonenumberutil.js\n\nimport { VALID_DIGITS, PLUS_CHARS, MIN_LENGTH_FOR_NSN, MAX_LENGTH_FOR_NSN } from './constants.js';\nimport ParseError from './ParseError.js';\nimport Metadata from './metadata.js';\nimport isViablePhoneNumber, { isViablePhoneNumberStart } from './helpers/isViablePhoneNumber.js';\nimport extractExtension from './helpers/extension/extractExtension.js';\nimport parseIncompletePhoneNumber from './parseIncompletePhoneNumber.js';\nimport getCountryCallingCode from './getCountryCallingCode.js';\nimport { isPossibleNumber } from './isPossible.js';\n// import { parseRFC3966 } from './helpers/RFC3966.js'\nimport PhoneNumber from './PhoneNumber.js';\nimport matchesEntirely from './helpers/matchesEntirely.js';\nimport extractCountryCallingCode from './helpers/extractCountryCallingCode.js';\nimport extractNationalNumber from './helpers/extractNationalNumber.js';\nimport stripIddPrefix from './helpers/stripIddPrefix.js';\nimport getCountryByCallingCode from './helpers/getCountryByCallingCode.js';\nimport extractFormattedPhoneNumberFromPossibleRfc3966NumberUri from './helpers/extractFormattedPhoneNumberFromPossibleRfc3966NumberUri.js';\n\n// We don't allow input strings for parsing to be longer than 250 chars.\n// This prevents malicious input from consuming CPU.\nvar MAX_INPUT_STRING_LENGTH = 250;\n\n// This consists of the plus symbol, digits, and arabic-indic digits.\nvar PHONE_NUMBER_START_PATTERN = new RegExp('[' + PLUS_CHARS + VALID_DIGITS + ']');\n\n// Regular expression of trailing characters that we want to remove.\n// A trailing `#` is sometimes used when writing phone numbers with extensions in US.\n// Example: \"+1 (645) 123 1234-910#\" number has extension \"910\".\nvar AFTER_PHONE_NUMBER_END_PATTERN = new RegExp('[^' + VALID_DIGITS + '#' + ']+$');\nvar USE_NON_GEOGRAPHIC_COUNTRY_CODE = false;\n\n// Examples:\n//\n// ```js\n// parse('8 (800) 555-35-35', 'RU')\n// parse('8 (800) 555-35-35', 'RU', metadata)\n// parse('8 (800) 555-35-35', { country: { default: 'RU' } })\n// parse('8 (800) 555-35-35', { country: { default: 'RU' } }, metadata)\n// parse('+7 800 555 35 35')\n// parse('+7 800 555 35 35', metadata)\n// ```\n//\n\n/**\r\n * Parses a phone number.\r\n *\r\n * parse('123456789', { defaultCountry: 'RU', v2: true }, metadata)\r\n * parse('123456789', { defaultCountry: 'RU' }, metadata)\r\n * parse('123456789', undefined, metadata)\r\n *\r\n * @param {string} input\r\n * @param {object} [options]\r\n * @param {object} metadata\r\n * @return {object|PhoneNumber?} If `options.v2: true` flag is passed, it returns a `PhoneNumber?` instance. Otherwise, returns an object of shape `{ phone: '...', country: '...' }` (or just `{}` if no phone number was parsed).\r\n */\nexport default function parse(text, options, metadata) {\n // If assigning the `{}` default value is moved to the arguments above,\n // code coverage would decrease for some weird reason.\n options = options || {};\n metadata = new Metadata(metadata);\n\n // Validate `defaultCountry`.\n if (options.defaultCountry && !metadata.hasCountry(options.defaultCountry)) {\n if (options.v2) {\n throw new ParseError('INVALID_COUNTRY');\n }\n throw new Error(\"Unknown country: \".concat(options.defaultCountry));\n }\n\n // Parse the phone number.\n var _parseInput = parseInput(text, options.v2, options.extract),\n formattedPhoneNumber = _parseInput.number,\n ext = _parseInput.ext,\n error = _parseInput.error;\n\n // If the phone number is not viable then return nothing.\n if (!formattedPhoneNumber) {\n if (options.v2) {\n if (error === 'TOO_SHORT') {\n throw new ParseError('TOO_SHORT');\n }\n throw new ParseError('NOT_A_NUMBER');\n }\n return {};\n }\n var _parsePhoneNumber = parsePhoneNumber(formattedPhoneNumber, options.defaultCountry, options.defaultCallingCode, metadata),\n country = _parsePhoneNumber.country,\n nationalNumber = _parsePhoneNumber.nationalNumber,\n countryCallingCode = _parsePhoneNumber.countryCallingCode,\n countryCallingCodeSource = _parsePhoneNumber.countryCallingCodeSource,\n carrierCode = _parsePhoneNumber.carrierCode;\n if (!metadata.hasSelectedNumberingPlan()) {\n if (options.v2) {\n throw new ParseError('INVALID_COUNTRY');\n }\n return {};\n }\n\n // Validate national (significant) number length.\n if (!nationalNumber || nationalNumber.length < MIN_LENGTH_FOR_NSN) {\n // Won't throw here because the regexp already demands length > 1.\n /* istanbul ignore if */\n if (options.v2) {\n throw new ParseError('TOO_SHORT');\n }\n // Google's demo just throws an error in this case.\n return {};\n }\n\n // Validate national (significant) number length.\n //\n // A sidenote:\n //\n // They say that sometimes national (significant) numbers\n // can be longer than `MAX_LENGTH_FOR_NSN` (e.g. in Germany).\n // https://github.com/googlei18n/libphonenumber/blob/7e1748645552da39c4e1ba731e47969d97bdb539/resources/phonenumber.proto#L36\n // Such numbers will just be discarded.\n //\n if (nationalNumber.length > MAX_LENGTH_FOR_NSN) {\n if (options.v2) {\n throw new ParseError('TOO_LONG');\n }\n // Google's demo just throws an error in this case.\n return {};\n }\n if (options.v2) {\n var phoneNumber = new PhoneNumber(countryCallingCode, nationalNumber, metadata.metadata);\n if (country) {\n phoneNumber.country = country;\n }\n if (carrierCode) {\n phoneNumber.carrierCode = carrierCode;\n }\n if (ext) {\n phoneNumber.ext = ext;\n }\n phoneNumber.__countryCallingCodeSource = countryCallingCodeSource;\n return phoneNumber;\n }\n\n // Check if national phone number pattern matches the number.\n // National number pattern is different for each country,\n // even for those ones which are part of the \"NANPA\" group.\n var valid = (options.extended ? metadata.hasSelectedNumberingPlan() : country) ? matchesEntirely(nationalNumber, metadata.nationalNumberPattern()) : false;\n if (!options.extended) {\n return valid ? result(country, nationalNumber, ext) : {};\n }\n\n // isInternational: countryCallingCode !== undefined\n\n return {\n country: country,\n countryCallingCode: countryCallingCode,\n carrierCode: carrierCode,\n valid: valid,\n possible: valid ? true : options.extended === true && metadata.possibleLengths() && isPossibleNumber(nationalNumber, metadata) ? true : false,\n phone: nationalNumber,\n ext: ext\n };\n}\n\n/**\r\n * Extracts a formatted phone number from text.\r\n * Doesn't guarantee that the extracted phone number\r\n * is a valid phone number (for example, doesn't validate its length).\r\n * @param {string} text\r\n * @param {boolean} [extract] — If `false`, then will parse the entire `text` as a phone number.\r\n * @param {boolean} [throwOnError] — By default, it won't throw if the text is too long.\r\n * @return {string}\r\n * @example\r\n * // Returns \"(213) 373-4253\".\r\n * extractFormattedPhoneNumber(\"Call (213) 373-4253 for assistance.\")\r\n */\nfunction _extractFormattedPhoneNumber(text, extract, throwOnError) {\n if (!text) {\n return;\n }\n if (text.length > MAX_INPUT_STRING_LENGTH) {\n if (throwOnError) {\n throw new ParseError('TOO_LONG');\n }\n return;\n }\n if (extract === false) {\n return text;\n }\n // Attempt to extract a possible number from the string passed in\n var startsAt = text.search(PHONE_NUMBER_START_PATTERN);\n if (startsAt < 0) {\n return;\n }\n return text\n // Trim everything to the left of the phone number\n .slice(startsAt)\n // Remove trailing non-numerical characters\n .replace(AFTER_PHONE_NUMBER_END_PATTERN, '');\n}\n\n/**\r\n * @param {string} text - Input.\r\n * @param {boolean} v2 - Legacy API functions don't pass `v2: true` flag.\r\n * @param {boolean} [extract] - Whether to extract a phone number from `text`, or attempt to parse the entire text as a phone number.\r\n * @return {object} `{ ?number, ?ext }`.\r\n */\nfunction parseInput(text, v2, extract) {\n // // Parse RFC 3966 phone number URI.\n // if (text && text.indexOf('tel:') === 0) {\n // \treturn parseRFC3966(text)\n // }\n // let number = extractFormattedPhoneNumber(text, extract, v2)\n var number = extractFormattedPhoneNumberFromPossibleRfc3966NumberUri(text, {\n extractFormattedPhoneNumber: function extractFormattedPhoneNumber(text) {\n return _extractFormattedPhoneNumber(text, extract, v2);\n }\n });\n // If the phone number is not viable, then abort.\n if (!number) {\n return {};\n }\n if (!isViablePhoneNumber(number)) {\n if (isViablePhoneNumberStart(number)) {\n return {\n error: 'TOO_SHORT'\n };\n }\n return {};\n }\n // Attempt to parse extension first, since it doesn't require region-specific\n // data and we want to have the non-normalised number here.\n var withExtensionStripped = extractExtension(number);\n if (withExtensionStripped.ext) {\n return withExtensionStripped;\n }\n return {\n number: number\n };\n}\n\n/**\r\n * Creates `parse()` result object.\r\n */\nfunction result(country, nationalNumber, ext) {\n var result = {\n country: country,\n phone: nationalNumber\n };\n if (ext) {\n result.ext = ext;\n }\n return result;\n}\n\n/**\r\n * Parses a viable phone number.\r\n * @param {string} formattedPhoneNumber — Example: \"(213) 373-4253\".\r\n * @param {string} [defaultCountry]\r\n * @param {string} [defaultCallingCode]\r\n * @param {Metadata} metadata\r\n * @return {object} Returns `{ country: string?, countryCallingCode: string?, nationalNumber: string? }`.\r\n */\nfunction parsePhoneNumber(formattedPhoneNumber, defaultCountry, defaultCallingCode, metadata) {\n // Extract calling code from phone number.\n var _extractCountryCallin = extractCountryCallingCode(parseIncompletePhoneNumber(formattedPhoneNumber), defaultCountry, defaultCallingCode, metadata.metadata),\n countryCallingCodeSource = _extractCountryCallin.countryCallingCodeSource,\n countryCallingCode = _extractCountryCallin.countryCallingCode,\n number = _extractCountryCallin.number;\n\n // Choose a country by `countryCallingCode`.\n var country;\n if (countryCallingCode) {\n metadata.selectNumberingPlan(countryCallingCode);\n }\n // If `formattedPhoneNumber` is passed in \"national\" format\n // then `number` is defined and `countryCallingCode` is `undefined`.\n else if (number && (defaultCountry || defaultCallingCode)) {\n metadata.selectNumberingPlan(defaultCountry, defaultCallingCode);\n if (defaultCountry) {\n country = defaultCountry;\n } else {\n /* istanbul ignore if */\n if (USE_NON_GEOGRAPHIC_COUNTRY_CODE) {\n if (metadata.isNonGeographicCallingCode(defaultCallingCode)) {\n country = '001';\n }\n }\n }\n countryCallingCode = defaultCallingCode || getCountryCallingCode(defaultCountry, metadata.metadata);\n } else return {};\n if (!number) {\n return {\n countryCallingCodeSource: countryCallingCodeSource,\n countryCallingCode: countryCallingCode\n };\n }\n var _extractNationalNumbe = extractNationalNumber(parseIncompletePhoneNumber(number), metadata),\n nationalNumber = _extractNationalNumbe.nationalNumber,\n carrierCode = _extractNationalNumbe.carrierCode;\n\n // Sometimes there are several countries\n // corresponding to the same country phone code\n // (e.g. NANPA countries all having `1` country phone code).\n // Therefore, to reliably determine the exact country,\n // national (significant) number should have been parsed first.\n //\n // When `metadata.json` is generated, all \"ambiguous\" country phone codes\n // get their countries populated with the full set of\n // \"phone number type\" regular expressions.\n //\n var exactCountry = getCountryByCallingCode(countryCallingCode, {\n nationalNumber: nationalNumber,\n defaultCountry: defaultCountry,\n metadata: metadata\n });\n if (exactCountry) {\n country = exactCountry;\n /* istanbul ignore if */\n if (exactCountry === '001') {\n // Can't happen with `USE_NON_GEOGRAPHIC_COUNTRY_CODE` being `false`.\n // If `USE_NON_GEOGRAPHIC_COUNTRY_CODE` is set to `true` for some reason,\n // then remove the \"istanbul ignore if\".\n } else {\n metadata.country(country);\n }\n }\n return {\n country: country,\n countryCallingCode: countryCallingCode,\n countryCallingCodeSource: countryCallingCodeSource,\n nationalNumber: nationalNumber,\n carrierCode: carrierCode\n };\n}\n//# sourceMappingURL=parse.js.map"],"names":["MAX_INPUT_STRING_LENGTH","PHONE_NUMBER_START_PATTERN","RegExp","PLUS_CHARS","VALID_DIGITS","AFTER_PHONE_NUMBER_END_PATTERN","parse","text","options","metadata","Metadata","defaultCountry","hasCountry","v2","ParseError","Error","concat","_parseInput","parseInput","extract","formattedPhoneNumber","number","ext","error","_parsePhoneNumber","parsePhoneNumber","defaultCallingCode","country","nationalNumber","countryCallingCode","countryCallingCodeSource","carrierCode","hasSelectedNumberingPlan","length","MIN_LENGTH_FOR_NSN","MAX_LENGTH_FOR_NSN","phoneNumber","PhoneNumber","__countryCallingCodeSource","valid","extended","matchesEntirely","nationalNumberPattern","result","possible","possibleLengths","isPossibleNumber","phone","_extractFormattedPhoneNumber","throwOnError","startsAt","search","slice","replace","extractFormattedPhoneNumberFromPossibleRfc3966NumberUri","extractFormattedPhoneNumber","isViablePhoneNumber","isViablePhoneNumberStart","withExtensionStripped","extractExtension","_extractCountryCallin","extractCountryCallingCode","parseIncompletePhoneNumber","selectNumberingPlan","getCountryCallingCode","_extractNationalNumbe","extractNationalNumber","exactCountry","getCountryByCallingCode"],"mappings":"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","x_google_ignoreList":[0]}
|
1
|
+
{"version":3,"file":"parse.js","sources":["../../../../node_modules/libphonenumber-js/es6/parse.js"],"sourcesContent":["// This is a port of Google Android `libphonenumber`'s\n// `phonenumberutil.js` of December 31th, 2018.\n//\n// https://github.com/googlei18n/libphonenumber/commits/master/javascript/i18n/phonenumbers/phonenumberutil.js\n\nimport { VALID_DIGITS, PLUS_CHARS, MIN_LENGTH_FOR_NSN, MAX_LENGTH_FOR_NSN } from './constants.js';\nimport ParseError from './ParseError.js';\nimport Metadata from './metadata.js';\nimport isViablePhoneNumber, { isViablePhoneNumberStart } from './helpers/isViablePhoneNumber.js';\nimport extractExtension from './helpers/extension/extractExtension.js';\nimport parseIncompletePhoneNumber from './parseIncompletePhoneNumber.js';\nimport getCountryCallingCode from './getCountryCallingCode.js';\nimport { isPossibleNumber } from './isPossible.js';\n// import { parseRFC3966 } from './helpers/RFC3966.js'\nimport PhoneNumber from './PhoneNumber.js';\nimport matchesEntirely from './helpers/matchesEntirely.js';\nimport extractCountryCallingCode from './helpers/extractCountryCallingCode.js';\nimport extractNationalNumber from './helpers/extractNationalNumber.js';\nimport stripIddPrefix from './helpers/stripIddPrefix.js';\nimport getCountryByCallingCode from './helpers/getCountryByCallingCode.js';\nimport extractFormattedPhoneNumberFromPossibleRfc3966NumberUri from './helpers/extractFormattedPhoneNumberFromPossibleRfc3966NumberUri.js';\n\n// We don't allow input strings for parsing to be longer than 250 chars.\n// This prevents malicious input from consuming CPU.\nvar MAX_INPUT_STRING_LENGTH = 250;\n\n// This consists of the plus symbol, digits, and arabic-indic digits.\nvar PHONE_NUMBER_START_PATTERN = new RegExp('[' + PLUS_CHARS + VALID_DIGITS + ']');\n\n// Regular expression of trailing characters that we want to remove.\n// A trailing `#` is sometimes used when writing phone numbers with extensions in US.\n// Example: \"+1 (645) 123 1234-910#\" number has extension \"910\".\nvar AFTER_PHONE_NUMBER_END_PATTERN = new RegExp('[^' + VALID_DIGITS + '#' + ']+$');\nvar USE_NON_GEOGRAPHIC_COUNTRY_CODE = false;\n\n// Examples:\n//\n// ```js\n// parse('8 (800) 555-35-35', 'RU')\n// parse('8 (800) 555-35-35', 'RU', metadata)\n// parse('8 (800) 555-35-35', { country: { default: 'RU' } })\n// parse('8 (800) 555-35-35', { country: { default: 'RU' } }, metadata)\n// parse('+7 800 555 35 35')\n// parse('+7 800 555 35 35', metadata)\n// ```\n//\n\n/**\r\n * Parses a phone number.\r\n *\r\n * parse('123456789', { defaultCountry: 'RU', v2: true }, metadata)\r\n * parse('123456789', { defaultCountry: 'RU' }, metadata)\r\n * parse('123456789', undefined, metadata)\r\n *\r\n * @param {string} input\r\n * @param {object} [options]\r\n * @param {object} metadata\r\n * @return {object|PhoneNumber?} If `options.v2: true` flag is passed, it returns a `PhoneNumber?` instance. Otherwise, returns an object of shape `{ phone: '...', country: '...' }` (or just `{}` if no phone number was parsed).\r\n */\nexport default function parse(text, options, metadata) {\n // If assigning the `{}` default value is moved to the arguments above,\n // code coverage would decrease for some weird reason.\n options = options || {};\n metadata = new Metadata(metadata);\n\n // Validate `defaultCountry`.\n if (options.defaultCountry && !metadata.hasCountry(options.defaultCountry)) {\n if (options.v2) {\n throw new ParseError('INVALID_COUNTRY');\n }\n throw new Error(\"Unknown country: \".concat(options.defaultCountry));\n }\n\n // Parse the phone number.\n var _parseInput = parseInput(text, options.v2, options.extract),\n formattedPhoneNumber = _parseInput.number,\n ext = _parseInput.ext,\n error = _parseInput.error;\n\n // If the phone number is not viable then return nothing.\n if (!formattedPhoneNumber) {\n if (options.v2) {\n if (error === 'TOO_SHORT') {\n throw new ParseError('TOO_SHORT');\n }\n throw new ParseError('NOT_A_NUMBER');\n }\n return {};\n }\n var _parsePhoneNumber = parsePhoneNumber(formattedPhoneNumber, options.defaultCountry, options.defaultCallingCode, metadata),\n country = _parsePhoneNumber.country,\n nationalNumber = _parsePhoneNumber.nationalNumber,\n countryCallingCode = _parsePhoneNumber.countryCallingCode,\n countryCallingCodeSource = _parsePhoneNumber.countryCallingCodeSource,\n carrierCode = _parsePhoneNumber.carrierCode;\n if (!metadata.hasSelectedNumberingPlan()) {\n if (options.v2) {\n throw new ParseError('INVALID_COUNTRY');\n }\n return {};\n }\n\n // Validate national (significant) number length.\n if (!nationalNumber || nationalNumber.length < MIN_LENGTH_FOR_NSN) {\n // Won't throw here because the regexp already demands length > 1.\n /* istanbul ignore if */\n if (options.v2) {\n throw new ParseError('TOO_SHORT');\n }\n // Google's demo just throws an error in this case.\n return {};\n }\n\n // Validate national (significant) number length.\n //\n // A sidenote:\n //\n // They say that sometimes national (significant) numbers\n // can be longer than `MAX_LENGTH_FOR_NSN` (e.g. in Germany).\n // https://github.com/googlei18n/libphonenumber/blob/7e1748645552da39c4e1ba731e47969d97bdb539/resources/phonenumber.proto#L36\n // Such numbers will just be discarded.\n //\n if (nationalNumber.length > MAX_LENGTH_FOR_NSN) {\n if (options.v2) {\n throw new ParseError('TOO_LONG');\n }\n // Google's demo just throws an error in this case.\n return {};\n }\n if (options.v2) {\n var phoneNumber = new PhoneNumber(countryCallingCode, nationalNumber, metadata.metadata);\n if (country) {\n phoneNumber.country = country;\n }\n if (carrierCode) {\n phoneNumber.carrierCode = carrierCode;\n }\n if (ext) {\n phoneNumber.ext = ext;\n }\n phoneNumber.__countryCallingCodeSource = countryCallingCodeSource;\n return phoneNumber;\n }\n\n // Check if national phone number pattern matches the number.\n // National number pattern is different for each country,\n // even for those ones which are part of the \"NANPA\" group.\n var valid = (options.extended ? metadata.hasSelectedNumberingPlan() : country) ? matchesEntirely(nationalNumber, metadata.nationalNumberPattern()) : false;\n if (!options.extended) {\n return valid ? result(country, nationalNumber, ext) : {};\n }\n\n // isInternational: countryCallingCode !== undefined\n\n return {\n country: country,\n countryCallingCode: countryCallingCode,\n carrierCode: carrierCode,\n valid: valid,\n possible: valid ? true : options.extended === true && metadata.possibleLengths() && isPossibleNumber(nationalNumber, country, metadata) ? true : false,\n phone: nationalNumber,\n ext: ext\n };\n}\n\n/**\r\n * Extracts a formatted phone number from text.\r\n * Doesn't guarantee that the extracted phone number\r\n * is a valid phone number (for example, doesn't validate its length).\r\n * @param {string} text\r\n * @param {boolean} [extract] — If `false`, then will parse the entire `text` as a phone number.\r\n * @param {boolean} [throwOnError] — By default, it won't throw if the text is too long.\r\n * @return {string}\r\n * @example\r\n * // Returns \"(213) 373-4253\".\r\n * extractFormattedPhoneNumber(\"Call (213) 373-4253 for assistance.\")\r\n */\nfunction _extractFormattedPhoneNumber(text, extract, throwOnError) {\n if (!text) {\n return;\n }\n if (text.length > MAX_INPUT_STRING_LENGTH) {\n if (throwOnError) {\n throw new ParseError('TOO_LONG');\n }\n return;\n }\n if (extract === false) {\n return text;\n }\n // Attempt to extract a possible number from the string passed in\n var startsAt = text.search(PHONE_NUMBER_START_PATTERN);\n if (startsAt < 0) {\n return;\n }\n return text\n // Trim everything to the left of the phone number\n .slice(startsAt)\n // Remove trailing non-numerical characters\n .replace(AFTER_PHONE_NUMBER_END_PATTERN, '');\n}\n\n/**\r\n * @param {string} text - Input.\r\n * @param {boolean} v2 - Legacy API functions don't pass `v2: true` flag.\r\n * @param {boolean} [extract] - Whether to extract a phone number from `text`, or attempt to parse the entire text as a phone number.\r\n * @return {object} `{ ?number, ?ext }`.\r\n */\nfunction parseInput(text, v2, extract) {\n // // Parse RFC 3966 phone number URI.\n // if (text && text.indexOf('tel:') === 0) {\n // \treturn parseRFC3966(text)\n // }\n // let number = extractFormattedPhoneNumber(text, extract, v2)\n var number = extractFormattedPhoneNumberFromPossibleRfc3966NumberUri(text, {\n extractFormattedPhoneNumber: function extractFormattedPhoneNumber(text) {\n return _extractFormattedPhoneNumber(text, extract, v2);\n }\n });\n // If the phone number is not viable, then abort.\n if (!number) {\n return {};\n }\n if (!isViablePhoneNumber(number)) {\n if (isViablePhoneNumberStart(number)) {\n return {\n error: 'TOO_SHORT'\n };\n }\n return {};\n }\n // Attempt to parse extension first, since it doesn't require region-specific\n // data and we want to have the non-normalised number here.\n var withExtensionStripped = extractExtension(number);\n if (withExtensionStripped.ext) {\n return withExtensionStripped;\n }\n return {\n number: number\n };\n}\n\n/**\r\n * Creates `parse()` result object.\r\n */\nfunction result(country, nationalNumber, ext) {\n var result = {\n country: country,\n phone: nationalNumber\n };\n if (ext) {\n result.ext = ext;\n }\n return result;\n}\n\n/**\r\n * Parses a viable phone number.\r\n * @param {string} formattedPhoneNumber — Example: \"(213) 373-4253\".\r\n * @param {string} [defaultCountry]\r\n * @param {string} [defaultCallingCode]\r\n * @param {Metadata} metadata\r\n * @return {object} Returns `{ country: string?, countryCallingCode: string?, nationalNumber: string? }`.\r\n */\nfunction parsePhoneNumber(formattedPhoneNumber, defaultCountry, defaultCallingCode, metadata) {\n // Extract calling code from phone number.\n var _extractCountryCallin = extractCountryCallingCode(parseIncompletePhoneNumber(formattedPhoneNumber), undefined, defaultCountry, defaultCallingCode, metadata.metadata),\n countryCallingCodeSource = _extractCountryCallin.countryCallingCodeSource,\n countryCallingCode = _extractCountryCallin.countryCallingCode,\n number = _extractCountryCallin.number;\n\n // The exact country of the phone number\n var country;\n\n // If `formattedPhoneNumber` is passed in \"international\" format,\n // choose a country by `countryCallingCode`.\n if (countryCallingCode) {\n metadata.selectNumberingPlan(countryCallingCode);\n }\n // Else, if `formattedPhoneNumber` is passed in \"national\" format,\n // then `number` is defined and `countryCallingCode` is `undefined`.\n else if (number && (defaultCountry || defaultCallingCode)) {\n metadata.selectNumberingPlan(defaultCountry, defaultCallingCode);\n if (defaultCountry) {\n country = defaultCountry;\n } else {\n /* istanbul ignore if */\n if (USE_NON_GEOGRAPHIC_COUNTRY_CODE) {\n if (metadata.isNonGeographicCallingCode(defaultCallingCode)) {\n country = '001';\n }\n }\n }\n countryCallingCode = defaultCallingCode || getCountryCallingCode(defaultCountry, metadata.metadata);\n } else return {};\n if (!number) {\n return {\n countryCallingCodeSource: countryCallingCodeSource,\n countryCallingCode: countryCallingCode\n };\n }\n var _extractNationalNumbe = extractNationalNumber(parseIncompletePhoneNumber(number), country, metadata),\n nationalNumber = _extractNationalNumbe.nationalNumber,\n carrierCode = _extractNationalNumbe.carrierCode;\n\n // Sometimes there are several countries\n // corresponding to the same country phone code\n // (e.g. NANPA countries all having `1` country phone code).\n // Therefore, to reliably determine the exact country,\n // national (significant) number should have been parsed first.\n //\n // When `metadata.json` is generated, all \"ambiguous\" country phone codes\n // get their countries populated with the full set of\n // \"phone number type\" regular expressions.\n //\n var exactCountry = getCountryByCallingCode(countryCallingCode, {\n nationalNumber: nationalNumber,\n metadata: metadata\n });\n if (exactCountry) {\n country = exactCountry;\n /* istanbul ignore if */\n if (exactCountry === '001') {\n // Can't happen with `USE_NON_GEOGRAPHIC_COUNTRY_CODE` being `false`.\n // If `USE_NON_GEOGRAPHIC_COUNTRY_CODE` is set to `true` for some reason,\n // then remove the \"istanbul ignore if\".\n } else {\n metadata.selectNumberingPlan(country);\n }\n }\n return {\n country: country,\n countryCallingCode: countryCallingCode,\n countryCallingCodeSource: countryCallingCodeSource,\n nationalNumber: nationalNumber,\n carrierCode: carrierCode\n };\n}\n//# sourceMappingURL=parse.js.map"],"names":["MAX_INPUT_STRING_LENGTH","PHONE_NUMBER_START_PATTERN","RegExp","PLUS_CHARS","VALID_DIGITS","AFTER_PHONE_NUMBER_END_PATTERN","parse","text","options","metadata","Metadata","defaultCountry","hasCountry","v2","ParseError","Error","concat","_parseInput","parseInput","extract","formattedPhoneNumber","number","ext","error","_parsePhoneNumber","parsePhoneNumber","defaultCallingCode","country","nationalNumber","countryCallingCode","countryCallingCodeSource","carrierCode","hasSelectedNumberingPlan","length","MIN_LENGTH_FOR_NSN","MAX_LENGTH_FOR_NSN","phoneNumber","PhoneNumber","__countryCallingCodeSource","valid","extended","matchesEntirely","nationalNumberPattern","result","possible","possibleLengths","isPossibleNumber","phone","_extractFormattedPhoneNumber","throwOnError","startsAt","search","slice","replace","extractFormattedPhoneNumberFromPossibleRfc3966NumberUri","extractFormattedPhoneNumber","isViablePhoneNumber","isViablePhoneNumberStart","withExtensionStripped","extractExtension","_extractCountryCallin","extractCountryCallingCode","parseIncompletePhoneNumber","undefined","selectNumberingPlan","getCountryCallingCode","_extractNationalNumbe","extractNationalNumber","exactCountry","getCountryByCallingCode"],"mappings":"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","x_google_ignoreList":[0]}
|
@@ -68,28 +68,28 @@ function parseIncompletePhoneNumber(string) {
|
|
68
68
|
* [`input-format`](https://gitlab.com/catamphetamine/input-format).
|
69
69
|
* @param {string} character - Yet another character from raw input string.
|
70
70
|
* @param {string?} prevParsedCharacters - Previous parsed characters.
|
71
|
-
* @param {function?}
|
71
|
+
* @param {function?} eventListener - An optional "on event" function.
|
72
72
|
* @return {string?} The parsed character.
|
73
73
|
*/
|
74
|
-
function parsePhoneNumberCharacter(character, prevParsedCharacters,
|
74
|
+
function parsePhoneNumberCharacter(character, prevParsedCharacters, eventListener) {
|
75
75
|
// Only allow a leading `+`.
|
76
76
|
if (character === '+') {
|
77
77
|
// If this `+` is not the first parsed character
|
78
78
|
// then discard it.
|
79
79
|
if (prevParsedCharacters) {
|
80
|
-
// `
|
80
|
+
// `eventListener` argument was added to this `export`ed function on Dec 26th, 2023.
|
81
81
|
// Any 3rd-party code that used to `import` and call this function before that
|
82
|
-
// won't be passing any `
|
82
|
+
// won't be passing any `eventListener` argument.
|
83
83
|
//
|
84
|
-
// The addition of the `
|
84
|
+
// The addition of the `eventListener` argument was to fix the slightly-weird behavior
|
85
85
|
// of parsing an input string when the user inputs something like `"2+7"
|
86
86
|
// https://github.com/catamphetamine/react-phone-number-input/issues/437
|
87
87
|
//
|
88
88
|
// If the parser encounters an unexpected `+` in a string being parsed
|
89
89
|
// then it simply discards that out-of-place `+` and any following characters.
|
90
90
|
//
|
91
|
-
if (typeof
|
92
|
-
|
91
|
+
if (typeof eventListener === 'function') {
|
92
|
+
eventListener('end');
|
93
93
|
}
|
94
94
|
return;
|
95
95
|
}
|
@@ -1 +1 @@
|
|
1
|
-
{"version":3,"file":"parseIncompletePhoneNumber.js","sources":["../../../../node_modules/libphonenumber-js/es6/parseIncompletePhoneNumber.js"],"sourcesContent":["function _createForOfIteratorHelperLoose(r, e) { var t = \"undefined\" != typeof Symbol && r[Symbol.iterator] || r[\"@@iterator\"]; if (t) return (t = t.call(r)).next.bind(t); if (Array.isArray(r) || (t = _unsupportedIterableToArray(r)) || e && r && \"number\" == typeof r.length) { t && (r = t); var o = 0; return function () { return o >= r.length ? { done: !0 } : { done: !1, value: r[o++] }; }; } throw new TypeError(\"Invalid attempt to iterate non-iterable instance.\\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.\"); }\nfunction _unsupportedIterableToArray(r, a) { if (r) { if (\"string\" == typeof r) return _arrayLikeToArray(r, a); var t = {}.toString.call(r).slice(8, -1); return \"Object\" === t && r.constructor && (t = r.constructor.name), \"Map\" === t || \"Set\" === t ? Array.from(r) : \"Arguments\" === t || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(t) ? _arrayLikeToArray(r, a) : void 0; } }\nfunction _arrayLikeToArray(r, a) { (null == a || a > r.length) && (a = r.length); for (var e = 0, n = Array(a); e < a; e++) n[e] = r[e]; return n; }\nimport { parseDigit } from './helpers/parseDigits.js';\n\n/**\r\n * Parses phone number characters from a string.\r\n * Drops all punctuation leaving only digits and the leading `+` sign (if any).\r\n * Also converts wide-ascii and arabic-indic numerals to conventional numerals.\r\n * E.g. in Iraq they don't write `+442323234` but rather `+٤٤٢٣٢٣٢٣٤`.\r\n * @param {string} string\r\n * @return {string}\r\n * @example\r\n * ```js\r\n * // Outputs '8800555'.\r\n * parseIncompletePhoneNumber('8 (800) 555')\r\n * // Outputs '+7800555'.\r\n * parseIncompletePhoneNumber('+7 800 555')\r\n * ```\r\n */\nexport default function parseIncompletePhoneNumber(string) {\n var result = '';\n // Using `.split('')` here instead of normal `for ... of`\n // because the importing application doesn't neccessarily include an ES6 polyfill.\n // The `.split('')` approach discards \"exotic\" UTF-8 characters\n // (the ones consisting of four bytes) but digits\n // (including non-European ones) don't fall into that range\n // so such \"exotic\" characters would be discarded anyway.\n for (var _iterator = _createForOfIteratorHelperLoose(string.split('')), _step; !(_step = _iterator()).done;) {\n var character = _step.value;\n result += parsePhoneNumberCharacter(character, result) || '';\n }\n return result;\n}\n\n/**\r\n * Parses next character while parsing phone number digits (including a `+`)\r\n * from text: discards everything except `+` and digits, and `+` is only allowed\r\n * at the start of a phone number.\r\n * For example, is used in `react-phone-number-input` where it uses\r\n * [`input-format`](https://gitlab.com/catamphetamine/input-format).\r\n * @param {string} character - Yet another character from raw input string.\r\n * @param {string?} prevParsedCharacters - Previous parsed characters.\r\n * @param {function?}
|
1
|
+
{"version":3,"file":"parseIncompletePhoneNumber.js","sources":["../../../../node_modules/libphonenumber-js/es6/parseIncompletePhoneNumber.js"],"sourcesContent":["function _createForOfIteratorHelperLoose(r, e) { var t = \"undefined\" != typeof Symbol && r[Symbol.iterator] || r[\"@@iterator\"]; if (t) return (t = t.call(r)).next.bind(t); if (Array.isArray(r) || (t = _unsupportedIterableToArray(r)) || e && r && \"number\" == typeof r.length) { t && (r = t); var o = 0; return function () { return o >= r.length ? { done: !0 } : { done: !1, value: r[o++] }; }; } throw new TypeError(\"Invalid attempt to iterate non-iterable instance.\\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.\"); }\nfunction _unsupportedIterableToArray(r, a) { if (r) { if (\"string\" == typeof r) return _arrayLikeToArray(r, a); var t = {}.toString.call(r).slice(8, -1); return \"Object\" === t && r.constructor && (t = r.constructor.name), \"Map\" === t || \"Set\" === t ? Array.from(r) : \"Arguments\" === t || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(t) ? _arrayLikeToArray(r, a) : void 0; } }\nfunction _arrayLikeToArray(r, a) { (null == a || a > r.length) && (a = r.length); for (var e = 0, n = Array(a); e < a; e++) n[e] = r[e]; return n; }\nimport { parseDigit } from './helpers/parseDigits.js';\n\n/**\r\n * Parses phone number characters from a string.\r\n * Drops all punctuation leaving only digits and the leading `+` sign (if any).\r\n * Also converts wide-ascii and arabic-indic numerals to conventional numerals.\r\n * E.g. in Iraq they don't write `+442323234` but rather `+٤٤٢٣٢٣٢٣٤`.\r\n * @param {string} string\r\n * @return {string}\r\n * @example\r\n * ```js\r\n * // Outputs '8800555'.\r\n * parseIncompletePhoneNumber('8 (800) 555')\r\n * // Outputs '+7800555'.\r\n * parseIncompletePhoneNumber('+7 800 555')\r\n * ```\r\n */\nexport default function parseIncompletePhoneNumber(string) {\n var result = '';\n // Using `.split('')` here instead of normal `for ... of`\n // because the importing application doesn't neccessarily include an ES6 polyfill.\n // The `.split('')` approach discards \"exotic\" UTF-8 characters\n // (the ones consisting of four bytes) but digits\n // (including non-European ones) don't fall into that range\n // so such \"exotic\" characters would be discarded anyway.\n for (var _iterator = _createForOfIteratorHelperLoose(string.split('')), _step; !(_step = _iterator()).done;) {\n var character = _step.value;\n result += parsePhoneNumberCharacter(character, result) || '';\n }\n return result;\n}\n\n/**\r\n * Parses next character while parsing phone number digits (including a `+`)\r\n * from text: discards everything except `+` and digits, and `+` is only allowed\r\n * at the start of a phone number.\r\n * For example, is used in `react-phone-number-input` where it uses\r\n * [`input-format`](https://gitlab.com/catamphetamine/input-format).\r\n * @param {string} character - Yet another character from raw input string.\r\n * @param {string?} prevParsedCharacters - Previous parsed characters.\r\n * @param {function?} eventListener - An optional \"on event\" function.\r\n * @return {string?} The parsed character.\r\n */\nexport function parsePhoneNumberCharacter(character, prevParsedCharacters, eventListener) {\n // Only allow a leading `+`.\n if (character === '+') {\n // If this `+` is not the first parsed character\n // then discard it.\n if (prevParsedCharacters) {\n // `eventListener` argument was added to this `export`ed function on Dec 26th, 2023.\n // Any 3rd-party code that used to `import` and call this function before that\n // won't be passing any `eventListener` argument.\n //\n // The addition of the `eventListener` argument was to fix the slightly-weird behavior\n // of parsing an input string when the user inputs something like `\"2+7\"\n // https://github.com/catamphetamine/react-phone-number-input/issues/437\n //\n // If the parser encounters an unexpected `+` in a string being parsed\n // then it simply discards that out-of-place `+` and any following characters.\n //\n if (typeof eventListener === 'function') {\n eventListener('end');\n }\n return;\n }\n return '+';\n }\n // Allow digits.\n return parseDigit(character);\n}\n//# sourceMappingURL=parseIncompletePhoneNumber.js.map"],"names":["parseIncompletePhoneNumber","string","result","_iterator","_createForOfIteratorHelperLoose","split","_step","done","character","value","parsePhoneNumberCharacter","prevParsedCharacters","eventListener","parseDigit"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACe,SAASA,0BAA0BA,CAACC,MAAM,EAAE;EAC1D,IAAIC,MAAM,GAAG,EAAE;AACf;AACA;AACA;AACA;AACA;AACA;AACA,EAAA,KAAA,IAAAC,SAAA,GAAAC,+BAAA,CAAwBH,MAAM,CAACI,KAAK,CAAC,EAAE,CAAC,CAAA,EAAAC,KAAA,EAAA,CAAA,CAAAA,KAAA,GAAAH,SAAA,EAAA,EAAAI,IAAA,GAAE;AAAA,IAAA,IAA/BC,SAAS,GAAAF,KAAA,CAAAG,KAAA;IACnBP,MAAM,IAAIQ,yBAAyB,CAACF,SAAS,EAAEN,MAAM,CAAC,IAAI,EAAE;AAC7D,EAAA;AACA,EAAA,OAAOA,MAAM;AACd;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACO,SAASQ,yBAAyBA,CAACF,SAAS,EAAEG,oBAAoB,EAAEC,aAAa,EAAE;AACzF;EACA,IAAIJ,SAAS,KAAK,GAAG,EAAE;AACtB;AACA;AACA,IAAA,IAAIG,oBAAoB,EAAE;AACzB;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,MAAA,IAAI,OAAOC,aAAa,KAAK,UAAU,EAAE;QACxCA,aAAa,CAAC,KAAK,CAAC;AACrB,MAAA;AACA,MAAA;AACD,IAAA;AACA,IAAA,OAAO,GAAG;AACX,EAAA;AACA;EACA,OAAOC,UAAU,CAACL,SAAS,CAAC;AAC7B;;;;","x_google_ignoreList":[0]}
|