@superdispatch/phones 0.13.0 → 0.16.0-alpha.0

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.
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sources":["../dist-src/country-code-metadata/CountryCodeMetadata.js","../dist-src/apn/APN.js","../dist-src/phone-service/PhoneService.js","../dist-src/formatted-phone-number/FormattedPhoneNumber.js","../dist-src/phone-field/PhoneFieldFlag.js","../dist-src/phone-field/PhoneFieldMenuItem.js","../dist-src/phone-field/PhoneFieldMenu.js","../dist-src/phone-field/PhoneFieldStartAdornment.js","../dist-src/phone-field/PhoneField.js","../dist-src/phone-link/PhoneLink.js","../dist-src/phone-text/PhoneText.js"],"sourcesContent":["var COUNTRY_CODE_METADATA = /*#__PURE__*/JSON.parse('[[\"US\",1,\"United States\"],[\"CA\",1,\"Canada\"],[\"AU\",61,\"Australia\"],[\"NZ\",64,\"New Zealand\"],[\"AC\",247,\"Ascension Island\"],[\"AD\",376,\"Andorra\"],[\"AE\",971,\"United Arab Emirates\"],[\"AF\",93,\"Afghanistan\"],[\"AG\",1,\"Antigua and Barbuda\"],[\"AI\",1,\"Anguilla\"],[\"AL\",355,\"Albania\"],[\"AM\",374,\"Armenia\"],[\"AO\",244,\"Angola\"],[\"AR\",54,\"Argentina\"],[\"AS\",1,\"American Samoa\"],[\"AT\",43,\"Austria\"],[\"AW\",297,\"Aruba\"],[\"AX\",358,\"Åland Islands\"],[\"AZ\",994,\"Azerbaijan\"],[\"BA\",387,\"Bosnia and Herzegovina\"],[\"BB\",1,\"Barbados\"],[\"BD\",880,\"Bangladesh\"],[\"BE\",32,\"Belgium\"],[\"BF\",226,\"Burkina Faso\"],[\"BG\",359,\"Bulgaria\"],[\"BH\",973,\"Bahrain\"],[\"BI\",257,\"Burundi\"],[\"BJ\",229,\"Benin\"],[\"BL\",590,\"Saint Barthélemy\"],[\"BM\",1,\"Bermuda\"],[\"BN\",673,\"Brunei\"],[\"BO\",591,\"Bolivia\"],[\"BQ\",599,\"Caribbean Netherlands\"],[\"BR\",55,\"Brazil\"],[\"BS\",1,\"Bahamas\"],[\"BT\",975,\"Bhutan\"],[\"BW\",267,\"Botswana\"],[\"BY\",375,\"Belarus\"],[\"BZ\",501,\"Belize\"],[\"CC\",61,\"Cocos\"],[\"CD\",243,\"Congo\"],[\"CF\",236,\"Central African Republic\"],[\"CG\",242,\"Congo\"],[\"CH\",41,\"Switzerland\"],[\"CI\",225,\"Côte d’Ivoire\"],[\"CK\",682,\"Cook Islands\"],[\"CL\",56,\"Chile\"],[\"CM\",237,\"Cameroon\"],[\"CN\",86,\"China\"],[\"CO\",57,\"Colombia\"],[\"CR\",506,\"Costa Rica\"],[\"CU\",53,\"Cuba\"],[\"CV\",238,\"Cape Verde\"],[\"CW\",599,\"Curaçao\"],[\"CX\",61,\"Christmas Island\"],[\"CY\",357,\"Cyprus\"],[\"CZ\",420,\"Czech Republic\"],[\"DE\",49,\"Germany\"],[\"DJ\",253,\"Djibouti\"],[\"DK\",45,\"Denmark\"],[\"DM\",1,\"Dominica\"],[\"DO\",1,\"Dominican Republic\"],[\"DZ\",213,\"Algeria\"],[\"EC\",593,\"Ecuador\"],[\"EE\",372,\"Estonia\"],[\"EG\",20,\"Egypt\"],[\"EH\",212,\"Western Sahara\"],[\"ER\",291,\"Eritrea\"],[\"ES\",34,\"Spain\"],[\"ET\",251,\"Ethiopia\"],[\"FI\",358,\"Finland\"],[\"FJ\",679,\"Fiji\"],[\"FK\",500,\"Falkland Islands\"],[\"FM\",691,\"Micronesia\"],[\"FO\",298,\"Faroe Islands\"],[\"FR\",33,\"France\"],[\"GA\",241,\"Gabon\"],[\"GB\",44,\"United Kingdom\"],[\"GD\",1,\"Grenada\"],[\"GE\",995,\"Georgia\"],[\"GF\",594,\"French Guiana\"],[\"GG\",44,\"Guernsey\"],[\"GH\",233,\"Ghana\"],[\"GI\",350,\"Gibraltar\"],[\"GL\",299,\"Greenland\"],[\"GM\",220,\"Gambia\"],[\"GN\",224,\"Guinea\"],[\"GP\",590,\"Guadeloupe\"],[\"GQ\",240,\"Equatorial Guinea\"],[\"GR\",30,\"Greece\"],[\"GT\",502,\"Guatemala\"],[\"GU\",1,\"Guam\"],[\"GW\",245,\"Guinea-Bissau\"],[\"GY\",592,\"Guyana\"],[\"HK\",852,\"Hong Kong\"],[\"HN\",504,\"Honduras\"],[\"HR\",385,\"Croatia\"],[\"HT\",509,\"Haiti\"],[\"HU\",36,\"Hungary\"],[\"ID\",62,\"Indonesia\"],[\"IE\",353,\"Ireland\"],[\"IL\",972,\"Israel\"],[\"IM\",44,\"Isle of Man\"],[\"IN\",91,\"India\"],[\"IO\",246,\"British Indian Ocean Territory\"],[\"IQ\",964,\"Iraq\"],[\"IR\",98,\"Iran\"],[\"IS\",354,\"Iceland\"],[\"IT\",39,\"Italy\"],[\"JE\",44,\"Jersey\"],[\"JM\",1,\"Jamaica\"],[\"JO\",962,\"Jordan\"],[\"JP\",81,\"Japan\"],[\"KE\",254,\"Kenya\"],[\"KG\",996,\"Kyrgyzstan\"],[\"KH\",855,\"Cambodia\"],[\"KI\",686,\"Kiribati\"],[\"KM\",269,\"Comoros\"],[\"KN\",1,\"Saint Kitts and Nevis\"],[\"KP\",850,\"North Korea\"],[\"KR\",82,\"South Korea\"],[\"KW\",965,\"Kuwait\"],[\"KY\",1,\"Cayman Islands\"],[\"KZ\",7,\"Kazakhstan\"],[\"LA\",856,\"Laos\"],[\"LB\",961,\"Lebanon\"],[\"LC\",1,\"Saint Lucia\"],[\"LI\",423,\"Liechtenstein\"],[\"LK\",94,\"Sri Lanka\"],[\"LR\",231,\"Liberia\"],[\"LS\",266,\"Lesotho\"],[\"LT\",370,\"Lithuania\"],[\"LU\",352,\"Luxembourg\"],[\"LV\",371,\"Latvia\"],[\"LY\",218,\"Libya\"],[\"MA\",212,\"Morocco\"],[\"MC\",377,\"Monaco\"],[\"MD\",373,\"Moldova\"],[\"ME\",382,\"Montenegro\"],[\"MF\",590,\"Saint Martin\"],[\"MG\",261,\"Madagascar\"],[\"MH\",692,\"Marshall Islands\"],[\"MK\",389,\"Macedonia\"],[\"ML\",223,\"Mali\"],[\"MM\",95,\"Myanmar\"],[\"MN\",976,\"Mongolia\"],[\"MO\",853,\"Macau\"],[\"MP\",1,\"Northern Mariana Islands\"],[\"MQ\",596,\"Martinique\"],[\"MR\",222,\"Mauritania\"],[\"MS\",1,\"Montserrat\"],[\"MT\",356,\"Malta\"],[\"MU\",230,\"Mauritius\"],[\"MV\",960,\"Maldives\"],[\"MW\",265,\"Malawi\"],[\"MX\",52,\"Mexico\"],[\"MY\",60,\"Malaysia\"],[\"MZ\",258,\"Mozambique\"],[\"NA\",264,\"Namibia\"],[\"NC\",687,\"New Caledonia\"],[\"NE\",227,\"Niger\"],[\"NF\",672,\"Norfolk Island\"],[\"NG\",234,\"Nigeria\"],[\"NI\",505,\"Nicaragua\"],[\"NL\",31,\"Netherlands\"],[\"NO\",47,\"Norway\"],[\"NP\",977,\"Nepal\"],[\"NR\",674,\"Nauru\"],[\"NU\",683,\"Niue\"],[\"OM\",968,\"Oman\"],[\"PA\",507,\"Panama\"],[\"PE\",51,\"Peru\"],[\"PF\",689,\"French Polynesia\"],[\"PG\",675,\"Papua New Guinea\"],[\"PH\",63,\"Philippines\"],[\"PK\",92,\"Pakistan\"],[\"PL\",48,\"Poland\"],[\"PM\",508,\"Saint Pierre and Miquelon\"],[\"PR\",1,\"Puerto Rico\"],[\"PS\",970,\"Palestine\"],[\"PT\",351,\"Portugal\"],[\"PW\",680,\"Palau\"],[\"PY\",595,\"Paraguay\"],[\"QA\",974,\"Qatar\"],[\"RE\",262,\"Réunion\"],[\"RO\",40,\"Romania\"],[\"RS\",381,\"Serbia\"],[\"RU\",7,\"Russia\"],[\"RW\",250,\"Rwanda\"],[\"SA\",966,\"Saudi Arabia\"],[\"SB\",677,\"Solomon Islands\"],[\"SC\",248,\"Seychelles\"],[\"SD\",249,\"Sudan\"],[\"SE\",46,\"Sweden\"],[\"SG\",65,\"Singapore\"],[\"SH\",290,\"Saint Helena\"],[\"SI\",386,\"Slovenia\"],[\"SJ\",47,\"Svalbard and Jan Mayen\"],[\"SK\",421,\"Slovakia\"],[\"SL\",232,\"Sierra Leone\"],[\"SM\",378,\"San Marino\"],[\"SN\",221,\"Senegal\"],[\"SO\",252,\"Somalia\"],[\"SR\",597,\"Suriname\"],[\"SS\",211,\"South Sudan\"],[\"ST\",239,\"São Tomé and Príncipe\"],[\"SV\",503,\"El Salvador\"],[\"SX\",1,\"Sint Maarten\"],[\"SY\",963,\"Syria\"],[\"SZ\",268,\"Swaziland\"],[\"TA\",290,\"Tristan da Cunha\"],[\"TC\",1,\"Turks and Caicos Islands\"],[\"TD\",235,\"Chad\"],[\"TG\",228,\"Togo\"],[\"TH\",66,\"Thailand\"],[\"TJ\",992,\"Tajikistan\"],[\"TK\",690,\"Tokelau\"],[\"TL\",670,\"Timor-Leste\"],[\"TM\",993,\"Turkmenistan\"],[\"TN\",216,\"Tunisia\"],[\"TO\",676,\"Tonga\"],[\"TR\",90,\"Turkey\"],[\"TT\",1,\"Trinidad and Tobago\"],[\"TV\",688,\"Tuvalu\"],[\"TW\",886,\"Taiwan\"],[\"TZ\",255,\"Tanzania\"],[\"UA\",380,\"Ukraine\"],[\"UG\",256,\"Uganda\"],[\"UY\",598,\"Uruguay\"],[\"UZ\",998,\"Uzbekistan\"],[\"VA\",39,\"Vatican City\"],[\"VC\",1,\"Saint Vincent and the Grenadines\"],[\"VE\",58,\"Venezuela\"],[\"VG\",1,\"British Virgin Islands\"],[\"VI\",1,\"U.S. Virgin Islands\"],[\"VN\",84,\"Vietnam\"],[\"VU\",678,\"Vanuatu\"],[\"WF\",681,\"Wallis and Futuna\"],[\"WS\",685,\"Samoa\"],[\"XK\",383,\"Kosovo\"],[\"YE\",967,\"Yemen\"],[\"YT\",262,\"Mayotte\"],[\"ZA\",27,\"South Africa\"],[\"ZM\",260,\"Zambia\"],[\"ZW\",263,\"Zimbabwe\"]]');\nexport var DEFAULT_COUNTRY = 'US';\nvar COUNTRIES = [];\nvar COUNTRY_CODE_MAP = /*#__PURE__*/new Map();\nvar COUNTRY_NAME_MAP = /*#__PURE__*/new Map();\n\nfor (var [country, code, name] of COUNTRY_CODE_METADATA) {\n COUNTRIES.push(country);\n COUNTRY_CODE_MAP.set(country, code);\n COUNTRY_NAME_MAP.set(country, name);\n}\n\nexport function listCountries() {\n return COUNTRIES;\n}\nexport function isCountryISO(value) {\n return typeof value == 'string' && COUNTRY_CODE_MAP.has(value);\n}\nexport function toCountryISO(value) {\n return isCountryISO(value) ? value : DEFAULT_COUNTRY;\n}\nexport function getCountryCode(country) {\n return COUNTRY_CODE_MAP.get(country) || 0;\n}\nexport function formatCountry(country) {\n return COUNTRY_NAME_MAP.get(country) || 'Invalid Country ISO';\n}","var loadError;\nvar loadedAPN;\nexport function loadAPN() {\n return import(\n /* webpackPrefetch: true */\n\n /* webpackChunkName: \"apn\" */\n 'awesome-phonenumber').then(apn => {\n loadedAPN = apn.default;\n return loadedAPN;\n }, error => {\n loadError = error;\n throw error;\n });\n}\nexport function getAPN() {\n if (loadError) {\n throw loadError;\n }\n\n if (!loadedAPN) {\n // eslint-disable-next-line @typescript-eslint/no-throw-literal\n throw loadAPN();\n }\n\n return loadedAPN;\n}","import { useMemo } from 'react';\nimport { getAPN, loadAPN } from \"../apn/APN.js\";\nimport { DEFAULT_COUNTRY, getCountryCode, toCountryISO } from \"../country-code-metadata/CountryCodeMetadata.js\";\nvar PLUS_SIGN = '+';\nvar NON_PHONE_SYMBOLS_PATTERN = /[^+\\d]/g;\nvar PHONE_PATTERN = /^\\+?\\d+/g;\n\nfunction getPrefix(country) {\n return PLUS_SIGN + String(getCountryCode(toCountryISO(country)));\n}\n\nfunction trim(input) {\n return typeof input == 'string' ? input.trim() : undefined;\n}\n\nfunction normalize(input) {\n if (typeof input == 'string') {\n var matches = input.replace(NON_PHONE_SYMBOLS_PATTERN, '').match(PHONE_PATTERN);\n if (matches !== null && matches !== void 0 && matches[0]) return matches[0];\n }\n\n return '';\n}\n\nfunction normalizeNational(country, input) {\n var phone = normalize(input);\n var prefix = getPrefix(country);\n\n if (phone.startsWith(PLUS_SIGN)) {\n return phone.slice(prefix.length);\n }\n\n return phone;\n}\n\nexport class PhoneService {\n static load() {\n return loadAPN().then(APN => new PhoneService(APN));\n }\n\n static checkPossibility(input) {\n return this.load().then(phoneService => phoneService.checkPossibility(input));\n }\n\n static validate(input, rules) {\n return this.load().then(phoneService => phoneService.validate(input, rules));\n }\n\n constructor(APN) {\n this.APN = APN;\n }\n\n createAPN(phone, country) {\n var asYouType = this.APN.getAsYouType(toCountryISO(country));\n asYouType.reset(normalize(phone));\n return asYouType.getPhoneNumber();\n }\n\n getJSON(phone, country) {\n return this.createAPN(phone, country).toJSON();\n }\n\n checkPossibility(input) {\n var phone = trim(input);\n\n if (!phone) {\n return 'unknown';\n }\n\n var apn = phone.startsWith(PLUS_SIGN) ? new this.APN(phone) : new this.APN(phone, DEFAULT_COUNTRY);\n var {\n valid,\n possible,\n possibility\n } = apn.toJSON(); // Avoid false positive short phone numbers.\n\n if (!valid && possible) {\n return 'invalid-number';\n }\n\n return possibility;\n }\n\n validate(input) {\n var {\n required,\n requiredMessage = 'This field is required',\n invalidMessage = 'Invalid phone number',\n tooLongMessage = 'Phone number is too long',\n tooShortMessage = 'Phone number is too short'\n } = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : {};\n var phone = trim(input);\n\n if (!phone) {\n if (required) {\n return requiredMessage;\n }\n\n return undefined;\n }\n\n switch (this.checkPossibility(phone)) {\n case 'is-possible':\n return undefined;\n\n case 'too-long':\n return tooLongMessage;\n\n case 'too-short':\n return tooShortMessage;\n }\n\n return invalidMessage;\n }\n\n getInfo(phone) {\n var {\n regionCode,\n number: {\n input,\n national: nationalNumber\n }\n } = this.getJSON(phone);\n var country = toCountryISO(regionCode);\n\n if (!nationalNumber) {\n nationalNumber = normalizeNational(country, input);\n }\n\n return {\n country,\n nationalNumber\n };\n }\n\n format(input) {\n var {\n country,\n format = 'e164',\n fallback = ''\n } = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : {};\n var phone = normalize(input);\n\n if (!phone) {\n return fallback;\n }\n\n var apn = this.createAPN(phone, country);\n var formatted = apn.getNumber(format);\n\n if (!formatted) {\n country = toCountryISO(apn.getRegionCode());\n var nationalNumber = normalizeNational(country, phone);\n\n if (format === 'national') {\n return nationalNumber;\n }\n\n var prefix = '';\n var separator = '';\n\n if (format === 'rfc3966') {\n prefix = 'tel:';\n separator = '-';\n }\n\n if (format === 'international') {\n separator = ' ';\n }\n\n formatted = prefix + getPrefix(country);\n\n if (nationalNumber) {\n formatted += separator + nationalNumber;\n }\n }\n\n return formatted;\n }\n\n}\nexport function usePhoneService() {\n var APN = getAPN();\n return useMemo(() => new PhoneService(APN), [APN]);\n}","import { useMemo } from 'react';\nimport { usePhoneService } from \"../phone-service/PhoneService.js\";\nexport function useFormattedPhoneNumber(input) {\n var {\n format,\n country,\n fallback = ''\n } = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : {};\n var phoneService = usePhoneService();\n return useMemo(() => {\n if (phoneService.checkPossibility(input) !== 'is-possible') {\n return fallback;\n }\n\n return phoneService.format(input, {\n format,\n country,\n fallback\n });\n }, [phoneService, input, format, country, fallback]);\n}","import _objectSpread from \"@babel/runtime/helpers/objectSpread2\";\nimport _objectWithoutProperties from \"@babel/runtime/helpers/objectWithoutProperties\";\nvar _excluded = [\"country\", \"alt\", \"className\"];\nimport { Typography } from '@material-ui/core';\nimport { makeStyles } from '@material-ui/styles';\nimport clsx from 'clsx';\nimport { forwardRef } from 'react';\nimport { jsx as _jsx } from \"react/jsx-runtime\";\nvar useStyles = /*#__PURE__*/makeStyles(theme => ({\n root: {\n minHeight: theme.spacing(2),\n minWidth: theme.spacing(2.75)\n }\n}), {\n name: 'SD-PhoneFieldFlag'\n});\nexport var PhoneFieldFlag = /*#__PURE__*/forwardRef((_ref, ref) => {\n var {\n country,\n alt = country,\n className\n } = _ref,\n props = _objectWithoutProperties(_ref, _excluded);\n\n var styles = useStyles();\n\n if (country === 'AC' || country === 'BQ' || country === 'EH' || country === 'TA') {\n return /*#__PURE__*/_jsx(Typography, {\n ref: ref,\n variant: \"h6\",\n align: \"center\",\n component: \"span\",\n color: \"textSecondary\",\n className: clsx(styles.root, className),\n children: country\n });\n }\n\n return /*#__PURE__*/_jsx(\"img\", _objectSpread(_objectSpread({}, props), {}, {\n alt: alt,\n ref: ref,\n className: clsx(styles.root, className),\n src: \"https://cdn.jsdelivr.net/gh/madebybowtie/FlagKit@2.2/Assets/SVG/\".concat(country, \".svg\")\n }));\n});\nif (process.env.NODE_ENV !== \"production\") PhoneFieldFlag.displayName = \"PhoneFieldFlag\";","import _objectSpread from \"@babel/runtime/helpers/objectSpread2\";\nimport _objectWithoutProperties from \"@babel/runtime/helpers/objectWithoutProperties\";\nvar _excluded = [\"country\", \"classes\"],\n _excluded2 = [\"flag\"];\nimport { MenuItem, Typography } from '@material-ui/core';\nimport { makeStyles } from '@material-ui/styles';\nimport { forwardRef, useMemo } from 'react';\nimport { formatCountry, getCountryCode } from \"../country-code-metadata/CountryCodeMetadata.js\";\nimport { PhoneFieldFlag } from \"./PhoneFieldFlag.js\";\nimport { jsx as _jsx } from \"react/jsx-runtime\";\nimport { jsxs as _jsxs } from \"react/jsx-runtime\";\nvar useStyles = /*#__PURE__*/makeStyles(theme => ({\n dense: {},\n gutters: {},\n root: {},\n selected: {},\n flag: {\n marginRight: theme.spacing(1)\n }\n}), {\n name: 'SD-PhoneFieldMenuItem'\n});\nexport var PhoneFieldMenuItem = /*#__PURE__*/forwardRef((_ref, ref) => {\n var {\n country,\n classes\n } = _ref,\n props = _objectWithoutProperties(_ref, _excluded);\n\n var _useStyles = useStyles({\n classes\n }),\n {\n flag: flagClassName\n } = _useStyles,\n styles = _objectWithoutProperties(_useStyles, _excluded2);\n\n var countryCode = useMemo(() => getCountryCode(country), [country]);\n return /*#__PURE__*/_jsxs(MenuItem, _objectSpread(_objectSpread({}, props), {}, {\n ref: ref,\n button: true,\n classes: styles,\n children: [/*#__PURE__*/_jsx(PhoneFieldFlag, {\n country: country,\n className: flagClassName\n }), formatCountry(country), \"\\xA0\", /*#__PURE__*/_jsx(Typography, {\n color: \"textSecondary\",\n children: countryCode\n })]\n }));\n});\nif (process.env.NODE_ENV !== \"production\") PhoneFieldMenuItem.displayName = \"PhoneFieldMenuItem\";","import { Divider, Menu } from '@material-ui/core';\nimport { makeStyles } from '@material-ui/styles';\nimport { forwardRef } from 'react';\nimport { listCountries } from \"../country-code-metadata/CountryCodeMetadata.js\";\nimport { PhoneFieldMenuItem } from \"./PhoneFieldMenuItem.js\";\nimport { jsx as _jsx } from \"react/jsx-runtime\";\nvar useStyles = /*#__PURE__*/makeStyles(theme => ({\n paper: {\n maxHeight: theme.spacing(30)\n }\n}), {\n name: 'SD-PhoneFieldMenu'\n});\nexport var PhoneFieldMenu = /*#__PURE__*/forwardRef((_ref, ref) => {\n var {\n anchorEl,\n value,\n onClose,\n onChange\n } = _ref;\n var styles = useStyles();\n return /*#__PURE__*/_jsx(Menu, {\n ref: ref,\n open: !!anchorEl,\n onClose: onClose,\n anchorEl: anchorEl,\n classes: {\n paper: styles.paper\n },\n children: listCountries().map(country => [/*#__PURE__*/_jsx(PhoneFieldMenuItem, {\n country: country,\n selected: country === value,\n onClick: () => {\n onChange(country);\n onClose();\n }\n }, country), country === 'NZ' && /*#__PURE__*/_jsx(Divider, {}, \"divider\")])\n });\n});\nif (process.env.NODE_ENV !== \"production\") PhoneFieldMenu.displayName = \"PhoneFieldMenu\";","import { ButtonBase, InputAdornment, Typography } from '@material-ui/core';\nimport { ArrowDropDown, ArrowDropUp } from '@material-ui/icons';\nimport { makeStyles } from '@material-ui/styles';\nimport { Color } from '@superdispatch/ui';\nimport { forwardRef, useMemo } from 'react';\nimport { formatCountry, getCountryCode } from \"../country-code-metadata/CountryCodeMetadata.js\";\nimport { PhoneFieldFlag } from \"./PhoneFieldFlag.js\";\nimport { jsx as _jsx } from \"react/jsx-runtime\";\nimport { jsxs as _jsxs } from \"react/jsx-runtime\";\nvar useStyles = /*#__PURE__*/makeStyles(theme => ({\n root: {\n marginLeft: theme.spacing(-1),\n marginRight: 0\n },\n button: {\n color: Color.Blue300,\n padding: theme.spacing(0.5, 0.5, 0.5, 1),\n borderRadius: theme.spacing(0.5, 0, 0, 0.5),\n '&:hover, &:focus': {\n backgroundColor: Color.Blue50\n }\n }\n}), {\n name: 'SD-PhoneFieldStartAdornment'\n});\nexport var PhoneFieldStartAdornment = /*#__PURE__*/forwardRef((_ref, ref) => {\n var {\n country,\n onClick,\n isExpanded\n } = _ref;\n var styles = useStyles();\n var [title, countryCode] = useMemo(() => {\n var code = \"+\".concat(getCountryCode(country));\n return [\"\".concat(formatCountry(country), \": \").concat(code), code];\n }, [country]);\n return /*#__PURE__*/_jsx(InputAdornment, {\n ref: ref,\n position: \"start\",\n className: styles.root,\n children: /*#__PURE__*/_jsxs(ButtonBase, {\n title: title,\n onClick: onClick,\n className: styles.button,\n \"aria-expanded\": isExpanded,\n children: [/*#__PURE__*/_jsx(PhoneFieldFlag, {\n country: country\n }), isExpanded ? /*#__PURE__*/_jsx(ArrowDropUp, {\n htmlColor: Color.Dark200\n }) : /*#__PURE__*/_jsx(ArrowDropDown, {\n htmlColor: Color.Dark200\n }), /*#__PURE__*/_jsx(Typography, {\n color: \"textPrimary\",\n children: countryCode\n })]\n })\n });\n});\nif (process.env.NODE_ENV !== \"production\") PhoneFieldStartAdornment.displayName = \"PhoneFieldStartAdornment\";","import _objectSpread from \"@babel/runtime/helpers/objectSpread2\";\nimport _objectWithoutProperties from \"@babel/runtime/helpers/objectWithoutProperties\";\nvar _excluded = [\"value\", \"onBlur\", \"onFocus\", \"onChange\"],\n _excluded2 = [\"label\", \"fullWidth\", \"helperText\", \"suspenseFallback\"];\nimport { TextField } from '@material-ui/core';\nimport { mergeRefs } from '@superdispatch/ui';\nimport { forwardRef, Suspense, useCallback, useEffect, useMemo, useRef, useState } from 'react';\nimport { usePhoneService } from \"../phone-service/PhoneService.js\";\nimport { PhoneFieldMenu } from \"./PhoneFieldMenu.js\";\nimport { PhoneFieldStartAdornment } from \"./PhoneFieldStartAdornment.js\";\nimport { jsx as _jsx } from \"react/jsx-runtime\";\nimport { Fragment as _Fragment } from \"react/jsx-runtime\";\nimport { jsxs as _jsxs } from \"react/jsx-runtime\";\n\nfunction normalizeValue(value) {\n return typeof value === 'string' ? value : '';\n}\n\nexport var PhoneField = /*#__PURE__*/forwardRef((_ref, ref) => {\n var {\n value: valueProp,\n onBlur: _onBlur,\n onFocus: _onFocus,\n onChange: _onChange\n } = _ref,\n props = _objectWithoutProperties(_ref, _excluded);\n\n var rootRef = useRef(null);\n var inputRef = useRef(null);\n var [menuAnchor, setMenuAnchor] = useState(null);\n var phoneService = usePhoneService();\n var createState = useCallback(value => _objectSpread({\n value\n }, phoneService.getInfo(value)), [phoneService]);\n var value = useMemo(() => normalizeValue(valueProp), [valueProp]);\n var [{\n country,\n nationalNumber\n }, setValue] = useState(() => createState(value));\n var placeholder = useMemo(() => phoneService.APN.getExample(country).getNumber('national'), [country, phoneService.APN]);\n\n function handleChange(fn, nextCountry, nextNationalNumber) {\n if (fn) {\n var nextValue = phoneService.format(nextNationalNumber, {\n country: nextCountry\n });\n setValue({\n value: nextValue,\n country: nextCountry,\n nationalNumber: nextNationalNumber\n });\n fn(nextValue);\n }\n }\n\n function handleChangeEvent(fn, _ref2) {\n var {\n target: {\n value: nextValue\n }\n } = _ref2;\n\n if (fn) {\n handleChange(fn, country, phoneService.format(nextValue, {\n country,\n format: 'national'\n }));\n }\n }\n\n useEffect(() => {\n setValue(prev => // Ignore `props.value` changes when they were performed from inside.\n prev.value === value ? prev : createState(value));\n }, [value, createState]);\n return /*#__PURE__*/_jsxs(_Fragment, {\n children: [/*#__PURE__*/_jsx(PhoneFieldMenu, {\n value: country,\n anchorEl: menuAnchor,\n onClose: () => {\n setMenuAnchor(null);\n },\n onChange: nextRegion => {\n handleChange(_onChange, nextRegion, nationalNumber);\n }\n }), /*#__PURE__*/_jsx(TextField, _objectSpread(_objectSpread({}, props), {}, {\n type: \"tel\",\n variant: \"outlined\",\n autoComplete: \"off\",\n value: nationalNumber,\n placeholder: placeholder,\n ref: mergeRefs(ref, rootRef),\n inputRef: inputRef,\n onBlur: event => {\n handleChangeEvent(_onBlur, event);\n },\n onFocus: event => {\n handleChangeEvent(_onFocus, event);\n },\n onChange: event => {\n handleChangeEvent(_onChange, event);\n },\n InputProps: {\n startAdornment: /*#__PURE__*/_jsx(PhoneFieldStartAdornment, {\n country: country,\n isExpanded: !!menuAnchor,\n onClick: () => {\n var _inputRef$current;\n\n // `FocusTrap` inside of `Menu` will restore focus to\n // the last focused element. We want to manually focus input\n // to trick the `FocusTrap`.\n (_inputRef$current = inputRef.current) === null || _inputRef$current === void 0 ? void 0 : _inputRef$current.focus();\n setMenuAnchor(rootRef.current);\n }\n })\n }\n }))]\n });\n});\nif (process.env.NODE_ENV !== \"production\") PhoneField.displayName = \"PhoneField\";\nexport var SuspendedPhoneField = /*#__PURE__*/forwardRef((_ref3, ref) => {\n var {\n label,\n fullWidth,\n helperText,\n suspenseFallback = /*#__PURE__*/_jsx(TextField, {\n disabled: true,\n label: label,\n fullWidth: fullWidth,\n helperText: helperText,\n placeholder: \"Loading\\u2026\"\n })\n } = _ref3,\n props = _objectWithoutProperties(_ref3, _excluded2);\n\n return /*#__PURE__*/_jsx(Suspense, {\n fallback: suspenseFallback,\n children: /*#__PURE__*/_jsx(PhoneField, _objectSpread(_objectSpread({}, props), {}, {\n ref: ref,\n label: label,\n fullWidth: fullWidth,\n helperText: helperText\n }))\n });\n});\nif (process.env.NODE_ENV !== \"production\") SuspendedPhoneField.displayName = \"SuspendedPhoneField\";","import _objectSpread from \"@babel/runtime/helpers/objectSpread2\";\nimport _objectWithoutProperties from \"@babel/runtime/helpers/objectWithoutProperties\";\nvar _excluded = [\"phone\", \"country\", \"fallback\", \"format\"],\n _excluded2 = [\"suspenseFallback\"];\nimport { Link } from '@material-ui/core';\nimport { renderChildren } from '@superdispatch/ui';\nimport { forwardRef, Suspense, useMemo } from 'react';\nimport { usePhoneService } from \"../phone-service/PhoneService.js\";\nimport { jsx as _jsx } from \"react/jsx-runtime\";\nexport var PhoneLink = /*#__PURE__*/forwardRef((_ref, ref) => {\n var {\n phone,\n country,\n fallback,\n format = 'international'\n } = _ref,\n props = _objectWithoutProperties(_ref, _excluded);\n\n var service = usePhoneService();\n var [text, href] = useMemo(() => {\n if (service.checkPossibility(phone) !== 'is-possible') {\n return [undefined, undefined];\n }\n\n return [service.format(phone, {\n country,\n format\n }), service.format(phone, {\n country,\n format: 'rfc3966'\n })];\n }, [phone, country, format, service]);\n return !href ? renderChildren(fallback) : /*#__PURE__*/_jsx(Link, _objectSpread(_objectSpread({}, props), {}, {\n ref: ref,\n href: href,\n children: text\n }));\n});\nif (process.env.NODE_ENV !== \"production\") PhoneLink.displayName = \"PhoneLink\";\nexport var SuspendedPhoneLink = /*#__PURE__*/forwardRef((_ref2, ref) => {\n var {\n suspenseFallback = null\n } = _ref2,\n props = _objectWithoutProperties(_ref2, _excluded2);\n\n return /*#__PURE__*/_jsx(Suspense, {\n fallback: suspenseFallback,\n children: /*#__PURE__*/_jsx(PhoneLink, _objectSpread(_objectSpread({}, props), {}, {\n ref: ref\n }))\n });\n});\nif (process.env.NODE_ENV !== \"production\") SuspendedPhoneLink.displayName = \"SuspendedPhoneLink\";","import _objectSpread from \"@babel/runtime/helpers/objectSpread2\";\nimport _objectWithoutProperties from \"@babel/runtime/helpers/objectWithoutProperties\";\nvar _excluded = [\"suspenseFallback\"];\nimport { renderChildren } from '@superdispatch/ui';\nimport { Suspense } from 'react';\nimport { useFormattedPhoneNumber } from \"../formatted-phone-number/FormattedPhoneNumber.js\";\nimport { jsx as _jsx } from \"react/jsx-runtime\";\nexport function PhoneText(_ref) {\n var {\n phone,\n country,\n fallback,\n format = 'international'\n } = _ref;\n var children = useFormattedPhoneNumber(phone, {\n format,\n country\n });\n return renderChildren(children || fallback);\n}\nexport function SuspendedPhoneText(_ref2) {\n var {\n suspenseFallback = null\n } = _ref2,\n props = _objectWithoutProperties(_ref2, _excluded);\n\n return /*#__PURE__*/_jsx(Suspense, {\n fallback: suspenseFallback,\n children: /*#__PURE__*/_jsx(PhoneText, _objectSpread({}, props))\n });\n}"],"names":["COUNTRY_CODE_METADATA","JSON","parse","DEFAULT_COUNTRY","COUNTRIES","COUNTRY_CODE_MAP","Map","COUNTRY_NAME_MAP","country","code","name","push","set","listCountries","isCountryISO","value","has","toCountryISO","getCountryCode","get","formatCountry","loadError","loadedAPN","loadAPN","then","apn","default","error","getAPN","PLUS_SIGN","NON_PHONE_SYMBOLS_PATTERN","PHONE_PATTERN","getPrefix","String","trim","input","undefined","normalize","matches","replace","match","normalizeNational","phone","prefix","startsWith","slice","length","PhoneService","load","APN","checkPossibility","phoneService","validate","rules","constructor","createAPN","asYouType","getAsYouType","reset","getPhoneNumber","getJSON","toJSON","valid","possible","possibility","required","requiredMessage","invalidMessage","tooLongMessage","tooShortMessage","arguments","getInfo","regionCode","number","national","nationalNumber","format","fallback","formatted","getNumber","getRegionCode","separator","usePhoneService","useMemo","useFormattedPhoneNumber","_excluded","useStyles","makeStyles","theme","root","minHeight","spacing","minWidth","PhoneFieldFlag","forwardRef","_ref","ref","alt","className","props","_objectWithoutProperties","styles","_jsx","Typography","variant","align","component","color","clsx","children","_objectSpread","src","concat","process","env","NODE_ENV","displayName","_excluded2","dense","gutters","selected","flag","marginRight","PhoneFieldMenuItem","classes","_useStyles","flagClassName","countryCode","_jsxs","MenuItem","button","paper","maxHeight","PhoneFieldMenu","anchorEl","onClose","onChange","Menu","open","map","onClick","Divider","marginLeft","Color","Blue300","padding","borderRadius","backgroundColor","Blue50","PhoneFieldStartAdornment","isExpanded","title","InputAdornment","position","ButtonBase","ArrowDropUp","htmlColor","Dark200","ArrowDropDown","normalizeValue","PhoneField","valueProp","onBlur","_onBlur","onFocus","_onFocus","_onChange","rootRef","useRef","inputRef","menuAnchor","setMenuAnchor","useState","createState","useCallback","setValue","placeholder","getExample","handleChange","fn","nextCountry","nextNationalNumber","nextValue","handleChangeEvent","_ref2","target","useEffect","prev","_Fragment","nextRegion","TextField","type","autoComplete","mergeRefs","event","InputProps","startAdornment","_inputRef$current","current","focus","SuspendedPhoneField","_ref3","label","fullWidth","helperText","suspenseFallback","disabled","Suspense","PhoneLink","service","text","href","renderChildren","Link","SuspendedPhoneLink","PhoneText","SuspendedPhoneText"],"mappings":"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"}
1
+ {"version":3,"file":"index.js","sources":["../dist-src/v5/country-code-metadata/CountryCodeMetadata.js","../dist-src/v5/apn/APN.js","../dist-src/v5/phone-service/PhoneService.js","../dist-src/v5/formatted-phone-number/FormattedPhoneNumber.js","../dist-src/v5/phone-field/PhoneFieldFlag.js","../dist-src/v5/phone-field/PhoneFieldMenuItem.js","../dist-src/v5/phone-field/PhoneFieldMenu.js","../dist-src/v5/phone-field/PhoneFieldStartAdornment.js","../dist-src/v5/phone-field/PhoneField.js","../dist-src/v5/phone-link/PhoneLink.js","../dist-src/v5/phone-text/PhoneText.js","../dist-src/country-code-metadata/CountryCodeMetadata.js","../dist-src/apn/APN.js","../dist-src/phone-service/PhoneService.js","../dist-src/formatted-phone-number/FormattedPhoneNumber.js","../dist-src/phone-field/PhoneFieldFlag.js","../dist-src/phone-field/PhoneFieldMenuItem.js","../dist-src/phone-field/PhoneFieldMenu.js","../dist-src/phone-field/PhoneFieldStartAdornment.js","../dist-src/phone-field/PhoneField.js","../dist-src/phone-link/PhoneLink.js","../dist-src/phone-text/PhoneText.js"],"sourcesContent":["var COUNTRY_CODE_METADATA = /*#__PURE__*/JSON.parse('[[\"US\",1,\"United States\"],[\"CA\",1,\"Canada\"],[\"AU\",61,\"Australia\"],[\"NZ\",64,\"New Zealand\"],[\"AC\",247,\"Ascension Island\"],[\"AD\",376,\"Andorra\"],[\"AE\",971,\"United Arab Emirates\"],[\"AF\",93,\"Afghanistan\"],[\"AG\",1,\"Antigua and Barbuda\"],[\"AI\",1,\"Anguilla\"],[\"AL\",355,\"Albania\"],[\"AM\",374,\"Armenia\"],[\"AO\",244,\"Angola\"],[\"AR\",54,\"Argentina\"],[\"AS\",1,\"American Samoa\"],[\"AT\",43,\"Austria\"],[\"AW\",297,\"Aruba\"],[\"AX\",358,\"Åland Islands\"],[\"AZ\",994,\"Azerbaijan\"],[\"BA\",387,\"Bosnia and Herzegovina\"],[\"BB\",1,\"Barbados\"],[\"BD\",880,\"Bangladesh\"],[\"BE\",32,\"Belgium\"],[\"BF\",226,\"Burkina Faso\"],[\"BG\",359,\"Bulgaria\"],[\"BH\",973,\"Bahrain\"],[\"BI\",257,\"Burundi\"],[\"BJ\",229,\"Benin\"],[\"BL\",590,\"Saint Barthélemy\"],[\"BM\",1,\"Bermuda\"],[\"BN\",673,\"Brunei\"],[\"BO\",591,\"Bolivia\"],[\"BQ\",599,\"Caribbean Netherlands\"],[\"BR\",55,\"Brazil\"],[\"BS\",1,\"Bahamas\"],[\"BT\",975,\"Bhutan\"],[\"BW\",267,\"Botswana\"],[\"BY\",375,\"Belarus\"],[\"BZ\",501,\"Belize\"],[\"CC\",61,\"Cocos\"],[\"CD\",243,\"Congo\"],[\"CF\",236,\"Central African Republic\"],[\"CG\",242,\"Congo\"],[\"CH\",41,\"Switzerland\"],[\"CI\",225,\"Côte d’Ivoire\"],[\"CK\",682,\"Cook Islands\"],[\"CL\",56,\"Chile\"],[\"CM\",237,\"Cameroon\"],[\"CN\",86,\"China\"],[\"CO\",57,\"Colombia\"],[\"CR\",506,\"Costa Rica\"],[\"CU\",53,\"Cuba\"],[\"CV\",238,\"Cape Verde\"],[\"CW\",599,\"Curaçao\"],[\"CX\",61,\"Christmas Island\"],[\"CY\",357,\"Cyprus\"],[\"CZ\",420,\"Czech Republic\"],[\"DE\",49,\"Germany\"],[\"DJ\",253,\"Djibouti\"],[\"DK\",45,\"Denmark\"],[\"DM\",1,\"Dominica\"],[\"DO\",1,\"Dominican Republic\"],[\"DZ\",213,\"Algeria\"],[\"EC\",593,\"Ecuador\"],[\"EE\",372,\"Estonia\"],[\"EG\",20,\"Egypt\"],[\"EH\",212,\"Western Sahara\"],[\"ER\",291,\"Eritrea\"],[\"ES\",34,\"Spain\"],[\"ET\",251,\"Ethiopia\"],[\"FI\",358,\"Finland\"],[\"FJ\",679,\"Fiji\"],[\"FK\",500,\"Falkland Islands\"],[\"FM\",691,\"Micronesia\"],[\"FO\",298,\"Faroe Islands\"],[\"FR\",33,\"France\"],[\"GA\",241,\"Gabon\"],[\"GB\",44,\"United Kingdom\"],[\"GD\",1,\"Grenada\"],[\"GE\",995,\"Georgia\"],[\"GF\",594,\"French Guiana\"],[\"GG\",44,\"Guernsey\"],[\"GH\",233,\"Ghana\"],[\"GI\",350,\"Gibraltar\"],[\"GL\",299,\"Greenland\"],[\"GM\",220,\"Gambia\"],[\"GN\",224,\"Guinea\"],[\"GP\",590,\"Guadeloupe\"],[\"GQ\",240,\"Equatorial Guinea\"],[\"GR\",30,\"Greece\"],[\"GT\",502,\"Guatemala\"],[\"GU\",1,\"Guam\"],[\"GW\",245,\"Guinea-Bissau\"],[\"GY\",592,\"Guyana\"],[\"HK\",852,\"Hong Kong\"],[\"HN\",504,\"Honduras\"],[\"HR\",385,\"Croatia\"],[\"HT\",509,\"Haiti\"],[\"HU\",36,\"Hungary\"],[\"ID\",62,\"Indonesia\"],[\"IE\",353,\"Ireland\"],[\"IL\",972,\"Israel\"],[\"IM\",44,\"Isle of Man\"],[\"IN\",91,\"India\"],[\"IO\",246,\"British Indian Ocean Territory\"],[\"IQ\",964,\"Iraq\"],[\"IR\",98,\"Iran\"],[\"IS\",354,\"Iceland\"],[\"IT\",39,\"Italy\"],[\"JE\",44,\"Jersey\"],[\"JM\",1,\"Jamaica\"],[\"JO\",962,\"Jordan\"],[\"JP\",81,\"Japan\"],[\"KE\",254,\"Kenya\"],[\"KG\",996,\"Kyrgyzstan\"],[\"KH\",855,\"Cambodia\"],[\"KI\",686,\"Kiribati\"],[\"KM\",269,\"Comoros\"],[\"KN\",1,\"Saint Kitts and Nevis\"],[\"KP\",850,\"North Korea\"],[\"KR\",82,\"South Korea\"],[\"KW\",965,\"Kuwait\"],[\"KY\",1,\"Cayman Islands\"],[\"KZ\",7,\"Kazakhstan\"],[\"LA\",856,\"Laos\"],[\"LB\",961,\"Lebanon\"],[\"LC\",1,\"Saint Lucia\"],[\"LI\",423,\"Liechtenstein\"],[\"LK\",94,\"Sri Lanka\"],[\"LR\",231,\"Liberia\"],[\"LS\",266,\"Lesotho\"],[\"LT\",370,\"Lithuania\"],[\"LU\",352,\"Luxembourg\"],[\"LV\",371,\"Latvia\"],[\"LY\",218,\"Libya\"],[\"MA\",212,\"Morocco\"],[\"MC\",377,\"Monaco\"],[\"MD\",373,\"Moldova\"],[\"ME\",382,\"Montenegro\"],[\"MF\",590,\"Saint Martin\"],[\"MG\",261,\"Madagascar\"],[\"MH\",692,\"Marshall Islands\"],[\"MK\",389,\"Macedonia\"],[\"ML\",223,\"Mali\"],[\"MM\",95,\"Myanmar\"],[\"MN\",976,\"Mongolia\"],[\"MO\",853,\"Macau\"],[\"MP\",1,\"Northern Mariana Islands\"],[\"MQ\",596,\"Martinique\"],[\"MR\",222,\"Mauritania\"],[\"MS\",1,\"Montserrat\"],[\"MT\",356,\"Malta\"],[\"MU\",230,\"Mauritius\"],[\"MV\",960,\"Maldives\"],[\"MW\",265,\"Malawi\"],[\"MX\",52,\"Mexico\"],[\"MY\",60,\"Malaysia\"],[\"MZ\",258,\"Mozambique\"],[\"NA\",264,\"Namibia\"],[\"NC\",687,\"New Caledonia\"],[\"NE\",227,\"Niger\"],[\"NF\",672,\"Norfolk Island\"],[\"NG\",234,\"Nigeria\"],[\"NI\",505,\"Nicaragua\"],[\"NL\",31,\"Netherlands\"],[\"NO\",47,\"Norway\"],[\"NP\",977,\"Nepal\"],[\"NR\",674,\"Nauru\"],[\"NU\",683,\"Niue\"],[\"OM\",968,\"Oman\"],[\"PA\",507,\"Panama\"],[\"PE\",51,\"Peru\"],[\"PF\",689,\"French Polynesia\"],[\"PG\",675,\"Papua New Guinea\"],[\"PH\",63,\"Philippines\"],[\"PK\",92,\"Pakistan\"],[\"PL\",48,\"Poland\"],[\"PM\",508,\"Saint Pierre and Miquelon\"],[\"PR\",1,\"Puerto Rico\"],[\"PS\",970,\"Palestine\"],[\"PT\",351,\"Portugal\"],[\"PW\",680,\"Palau\"],[\"PY\",595,\"Paraguay\"],[\"QA\",974,\"Qatar\"],[\"RE\",262,\"Réunion\"],[\"RO\",40,\"Romania\"],[\"RS\",381,\"Serbia\"],[\"RU\",7,\"Russia\"],[\"RW\",250,\"Rwanda\"],[\"SA\",966,\"Saudi Arabia\"],[\"SB\",677,\"Solomon Islands\"],[\"SC\",248,\"Seychelles\"],[\"SD\",249,\"Sudan\"],[\"SE\",46,\"Sweden\"],[\"SG\",65,\"Singapore\"],[\"SH\",290,\"Saint Helena\"],[\"SI\",386,\"Slovenia\"],[\"SJ\",47,\"Svalbard and Jan Mayen\"],[\"SK\",421,\"Slovakia\"],[\"SL\",232,\"Sierra Leone\"],[\"SM\",378,\"San Marino\"],[\"SN\",221,\"Senegal\"],[\"SO\",252,\"Somalia\"],[\"SR\",597,\"Suriname\"],[\"SS\",211,\"South Sudan\"],[\"ST\",239,\"São Tomé and Príncipe\"],[\"SV\",503,\"El Salvador\"],[\"SX\",1,\"Sint Maarten\"],[\"SY\",963,\"Syria\"],[\"SZ\",268,\"Swaziland\"],[\"TA\",290,\"Tristan da Cunha\"],[\"TC\",1,\"Turks and Caicos Islands\"],[\"TD\",235,\"Chad\"],[\"TG\",228,\"Togo\"],[\"TH\",66,\"Thailand\"],[\"TJ\",992,\"Tajikistan\"],[\"TK\",690,\"Tokelau\"],[\"TL\",670,\"Timor-Leste\"],[\"TM\",993,\"Turkmenistan\"],[\"TN\",216,\"Tunisia\"],[\"TO\",676,\"Tonga\"],[\"TR\",90,\"Turkey\"],[\"TT\",1,\"Trinidad and Tobago\"],[\"TV\",688,\"Tuvalu\"],[\"TW\",886,\"Taiwan\"],[\"TZ\",255,\"Tanzania\"],[\"UA\",380,\"Ukraine\"],[\"UG\",256,\"Uganda\"],[\"UY\",598,\"Uruguay\"],[\"UZ\",998,\"Uzbekistan\"],[\"VA\",39,\"Vatican City\"],[\"VC\",1,\"Saint Vincent and the Grenadines\"],[\"VE\",58,\"Venezuela\"],[\"VG\",1,\"British Virgin Islands\"],[\"VI\",1,\"U.S. Virgin Islands\"],[\"VN\",84,\"Vietnam\"],[\"VU\",678,\"Vanuatu\"],[\"WF\",681,\"Wallis and Futuna\"],[\"WS\",685,\"Samoa\"],[\"XK\",383,\"Kosovo\"],[\"YE\",967,\"Yemen\"],[\"YT\",262,\"Mayotte\"],[\"ZA\",27,\"South Africa\"],[\"ZM\",260,\"Zambia\"],[\"ZW\",263,\"Zimbabwe\"]]');\nexport var DEFAULT_COUNTRY = 'US';\nvar COUNTRIES = [];\nvar COUNTRY_CODE_MAP = /*#__PURE__*/new Map();\nvar COUNTRY_NAME_MAP = /*#__PURE__*/new Map();\n\nfor (var [country, code, name] of COUNTRY_CODE_METADATA) {\n COUNTRIES.push(country);\n COUNTRY_CODE_MAP.set(country, code);\n COUNTRY_NAME_MAP.set(country, name);\n}\n\nexport function listCountries() {\n return COUNTRIES;\n}\nexport function isCountryISO(value) {\n return typeof value == 'string' && COUNTRY_CODE_MAP.has(value);\n}\nexport function toCountryISO(value) {\n return isCountryISO(value) ? value : DEFAULT_COUNTRY;\n}\nexport function getCountryCode(country) {\n return COUNTRY_CODE_MAP.get(country) || 0;\n}\nexport function formatCountry(country) {\n return COUNTRY_NAME_MAP.get(country) || 'Invalid Country ISO';\n}","var loadError;\nvar loadedAPN;\nexport function loadAPN() {\n return import(\n /* webpackPrefetch: true */\n\n /* webpackChunkName: \"apn\" */\n 'awesome-phonenumber').then(apn => {\n loadedAPN = apn.default;\n return loadedAPN;\n }, error => {\n loadError = error;\n throw error;\n });\n}\nexport function getAPN() {\n if (loadError) {\n throw loadError;\n }\n\n if (!loadedAPN) {\n // eslint-disable-next-line @typescript-eslint/no-throw-literal\n throw loadAPN();\n }\n\n return loadedAPN;\n}","import { useMemo } from 'react';\nimport { getAPN, loadAPN } from \"../apn/APN.js\";\nimport { DEFAULT_COUNTRY, getCountryCode, toCountryISO } from \"../country-code-metadata/CountryCodeMetadata.js\";\nvar PLUS_SIGN = '+';\nvar NON_PHONE_SYMBOLS_PATTERN = /[^+\\d]/g;\nvar PHONE_PATTERN = /^\\+?\\d+/g;\n\nfunction getPrefix(country) {\n return PLUS_SIGN + String(getCountryCode(toCountryISO(country)));\n}\n\nfunction trim(input) {\n return typeof input == 'string' ? input.trim() : undefined;\n}\n\nfunction normalize(input) {\n if (typeof input == 'string') {\n var matches = input.replace(NON_PHONE_SYMBOLS_PATTERN, '').match(PHONE_PATTERN);\n if (matches !== null && matches !== void 0 && matches[0]) return matches[0];\n }\n\n return '';\n}\n\nfunction normalizeNational(country, input) {\n var phone = normalize(input);\n var prefix = getPrefix(country);\n\n if (phone.startsWith(PLUS_SIGN)) {\n return phone.slice(prefix.length);\n }\n\n return phone;\n}\n\nexport class PhoneService {\n static load() {\n return loadAPN().then(APN => new PhoneService(APN));\n }\n\n static checkPossibility(input) {\n return this.load().then(phoneService => phoneService.checkPossibility(input));\n }\n\n static validate(input, rules) {\n return this.load().then(phoneService => phoneService.validate(input, rules));\n }\n\n constructor(APN) {\n this.APN = APN;\n }\n\n createAPN(phone, country) {\n var asYouType = this.APN.getAsYouType(toCountryISO(country));\n asYouType.reset(normalize(phone));\n return asYouType.getPhoneNumber();\n }\n\n getJSON(phone, country) {\n return this.createAPN(phone, country).toJSON();\n }\n\n checkPossibility(input) {\n var phone = trim(input);\n\n if (!phone) {\n return 'unknown';\n }\n\n var apn = phone.startsWith(PLUS_SIGN) ? new this.APN(phone) : new this.APN(phone, DEFAULT_COUNTRY);\n var {\n valid,\n possible,\n possibility\n } = apn.toJSON(); // Avoid false positive short phone numbers.\n\n if (!valid && possible) {\n return 'invalid-number';\n }\n\n return possibility;\n }\n\n validate(input) {\n var {\n required,\n requiredMessage = 'This field is required',\n invalidMessage = 'Invalid phone number',\n tooLongMessage = 'Phone number is too long',\n tooShortMessage = 'Phone number is too short'\n } = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : {};\n var phone = trim(input);\n\n if (!phone) {\n if (required) {\n return requiredMessage;\n }\n\n return undefined;\n }\n\n switch (this.checkPossibility(phone)) {\n case 'is-possible':\n return undefined;\n\n case 'too-long':\n return tooLongMessage;\n\n case 'too-short':\n return tooShortMessage;\n }\n\n return invalidMessage;\n }\n\n getInfo(phone) {\n var {\n regionCode,\n number: {\n input,\n national: nationalNumber\n }\n } = this.getJSON(phone);\n var country = toCountryISO(regionCode);\n\n if (!nationalNumber) {\n nationalNumber = normalizeNational(country, input);\n }\n\n return {\n country,\n nationalNumber\n };\n }\n\n format(input) {\n var {\n country,\n format = 'e164',\n fallback = ''\n } = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : {};\n var phone = normalize(input);\n\n if (!phone) {\n return fallback;\n }\n\n var apn = this.createAPN(phone, country);\n var formatted = apn.getNumber(format);\n\n if (!formatted) {\n country = toCountryISO(apn.getRegionCode());\n var nationalNumber = normalizeNational(country, phone);\n\n if (format === 'national') {\n return nationalNumber;\n }\n\n var prefix = '';\n var separator = '';\n\n if (format === 'rfc3966') {\n prefix = 'tel:';\n separator = '-';\n }\n\n if (format === 'international') {\n separator = ' ';\n }\n\n formatted = prefix + getPrefix(country);\n\n if (nationalNumber) {\n formatted += separator + nationalNumber;\n }\n }\n\n return formatted;\n }\n\n}\nexport function usePhoneService() {\n var APN = getAPN();\n return useMemo(() => new PhoneService(APN), [APN]);\n}","import { useMemo } from 'react';\nimport { usePhoneService } from \"../phone-service/PhoneService.js\";\nexport function useFormattedPhoneNumber(input) {\n var {\n format,\n country,\n fallback = ''\n } = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : {};\n var phoneService = usePhoneService();\n return useMemo(() => {\n if (phoneService.checkPossibility(input) !== 'is-possible') {\n return fallback;\n }\n\n return phoneService.format(input, {\n format,\n country,\n fallback\n });\n }, [phoneService, input, format, country, fallback]);\n}","import _objectSpread from \"@babel/runtime/helpers/objectSpread2\";\nimport _objectWithoutProperties from \"@babel/runtime/helpers/objectWithoutProperties\";\nvar _excluded = [\"country\", \"alt\", \"className\"];\nimport { Typography } from '@mui/material';\nimport { makeStyles } from '@mui/styles';\nimport clsx from 'clsx';\nimport { forwardRef } from 'react';\nimport { jsx as _jsx } from \"react/jsx-runtime\";\nvar useStyles = /*#__PURE__*/makeStyles(theme => ({\n root: {\n minHeight: theme.spacing(2),\n minWidth: theme.spacing(2.75)\n }\n}), {\n name: 'SD-PhoneFieldFlag'\n});\nexport var PhoneFieldFlag = /*#__PURE__*/forwardRef((_ref, ref) => {\n var {\n country,\n alt = country,\n className\n } = _ref,\n props = _objectWithoutProperties(_ref, _excluded);\n\n var styles = useStyles();\n\n if (country === 'AC' || country === 'BQ' || country === 'EH' || country === 'TA') {\n return /*#__PURE__*/_jsx(Typography, {\n ref: ref,\n variant: \"h6\",\n align: \"center\",\n component: \"span\",\n color: \"textSecondary\",\n className: clsx(styles.root, className),\n children: country\n });\n }\n\n return /*#__PURE__*/_jsx(\"img\", _objectSpread(_objectSpread({}, props), {}, {\n alt: alt,\n ref: ref,\n className: clsx(styles.root, className),\n src: \"https://cdn.jsdelivr.net/gh/madebybowtie/FlagKit@2.2/Assets/SVG/\".concat(country, \".svg\")\n }));\n});\nif (process.env.NODE_ENV !== \"production\") PhoneFieldFlag.displayName = \"PhoneFieldFlag\";","import _objectSpread from \"@babel/runtime/helpers/objectSpread2\";\nimport _objectWithoutProperties from \"@babel/runtime/helpers/objectWithoutProperties\";\nvar _excluded = [\"country\", \"classes\"],\n _excluded2 = [\"flag\"];\nimport { MenuItem, Typography } from '@mui/material';\nimport { makeStyles } from '@mui/styles';\nimport { forwardRef, useMemo } from 'react';\nimport { formatCountry, getCountryCode } from \"../country-code-metadata/CountryCodeMetadata.js\";\nimport { PhoneFieldFlag } from \"./PhoneFieldFlag.js\";\nimport { jsx as _jsx } from \"react/jsx-runtime\";\nimport { jsxs as _jsxs } from \"react/jsx-runtime\";\nvar useStyles = /*#__PURE__*/makeStyles(theme => ({\n dense: {},\n gutters: {},\n root: {},\n selected: {},\n disabled: {},\n divider: {},\n focusVisible: {},\n flag: {\n marginRight: theme.spacing(1)\n }\n}), {\n name: 'SD-PhoneFieldMenuItem'\n});\nexport var PhoneFieldMenuItem = /*#__PURE__*/forwardRef((_ref, ref) => {\n var {\n country,\n classes\n } = _ref,\n props = _objectWithoutProperties(_ref, _excluded);\n\n var _useStyles = useStyles({\n classes\n }),\n {\n flag: flagClassName\n } = _useStyles,\n styles = _objectWithoutProperties(_useStyles, _excluded2);\n\n var countryCode = useMemo(() => getCountryCode(country), [country]);\n return /*#__PURE__*/_jsxs(MenuItem, _objectSpread(_objectSpread({}, props), {}, {\n ref: ref,\n classes: styles,\n children: [/*#__PURE__*/_jsx(PhoneFieldFlag, {\n country: country,\n className: flagClassName\n }), formatCountry(country), \"\\xA0\", /*#__PURE__*/_jsx(Typography, {\n color: \"textSecondary\",\n children: countryCode\n })]\n }));\n});\nif (process.env.NODE_ENV !== \"production\") PhoneFieldMenuItem.displayName = \"PhoneFieldMenuItem\";","import { Divider, Menu } from '@mui/material';\nimport { makeStyles } from '@mui/styles';\nimport { forwardRef } from 'react';\nimport { listCountries } from \"../country-code-metadata/CountryCodeMetadata.js\";\nimport { PhoneFieldMenuItem } from \"./PhoneFieldMenuItem.js\";\nimport { jsx as _jsx } from \"react/jsx-runtime\";\nvar useStyles = /*#__PURE__*/makeStyles(theme => ({\n paper: {\n maxHeight: theme.spacing(30)\n }\n}), {\n name: 'SD-PhoneFieldMenu'\n});\nexport var PhoneFieldMenu = /*#__PURE__*/forwardRef((_ref, ref) => {\n var {\n anchorEl,\n value,\n onClose,\n onChange\n } = _ref;\n var styles = useStyles();\n return /*#__PURE__*/_jsx(Menu, {\n ref: ref,\n open: !!anchorEl,\n onClose: onClose,\n anchorEl: anchorEl,\n classes: {\n paper: styles.paper\n },\n children: listCountries().map(country => [/*#__PURE__*/_jsx(PhoneFieldMenuItem, {\n country: country,\n selected: country === value,\n onClick: () => {\n onChange(country);\n onClose();\n }\n }, country), country === 'NZ' && /*#__PURE__*/_jsx(Divider, {}, \"divider\")])\n });\n});\nif (process.env.NODE_ENV !== \"production\") PhoneFieldMenu.displayName = \"PhoneFieldMenu\";","import { ArrowDropDown, ArrowDropUp } from '@mui/icons-material';\nimport { ButtonBase, InputAdornment, Typography } from '@mui/material';\nimport { makeStyles } from '@mui/styles';\nimport { v5 } from '@superdispatch/ui';\nimport { forwardRef, useMemo } from 'react';\nimport { formatCountry, getCountryCode } from \"../country-code-metadata/CountryCodeMetadata.js\";\nimport { PhoneFieldFlag } from \"./PhoneFieldFlag.js\";\nimport { jsx as _jsx } from \"react/jsx-runtime\";\nimport { jsxs as _jsxs } from \"react/jsx-runtime\";\nvar {\n Color\n} = v5;\nvar useStyles = /*#__PURE__*/makeStyles(theme => ({\n root: {\n marginLeft: theme.spacing(-1),\n marginRight: 0\n },\n button: {\n color: Color.Blue300,\n padding: theme.spacing(0.5, 0.5, 0.5, 1),\n borderRadius: theme.spacing(0.5, 0, 0, 0.5),\n '&:hover, &:focus': {\n backgroundColor: Color.Blue50\n }\n }\n}), {\n name: 'SD-PhoneFieldStartAdornment'\n});\nexport var PhoneFieldStartAdornment = /*#__PURE__*/forwardRef((_ref, ref) => {\n var {\n country,\n onClick,\n isExpanded\n } = _ref;\n var styles = useStyles();\n var [title, countryCode] = useMemo(() => {\n var code = \"+\".concat(getCountryCode(country));\n return [\"\".concat(formatCountry(country), \": \").concat(code), code];\n }, [country]);\n return /*#__PURE__*/_jsx(InputAdornment, {\n ref: ref,\n position: \"start\",\n className: styles.root,\n children: /*#__PURE__*/_jsxs(ButtonBase, {\n title: title,\n onClick: onClick,\n className: styles.button,\n \"aria-expanded\": isExpanded,\n children: [/*#__PURE__*/_jsx(PhoneFieldFlag, {\n country: country\n }), isExpanded ? /*#__PURE__*/_jsx(ArrowDropUp, {\n htmlColor: Color.Dark200\n }) : /*#__PURE__*/_jsx(ArrowDropDown, {\n htmlColor: Color.Dark200\n }), /*#__PURE__*/_jsx(Typography, {\n color: \"textPrimary\",\n children: countryCode\n })]\n })\n });\n});\nif (process.env.NODE_ENV !== \"production\") PhoneFieldStartAdornment.displayName = \"PhoneFieldStartAdornment\";","import _objectSpread from \"@babel/runtime/helpers/objectSpread2\";\nimport _objectWithoutProperties from \"@babel/runtime/helpers/objectWithoutProperties\";\nvar _excluded = [\"value\", \"onBlur\", \"onFocus\", \"onChange\"],\n _excluded2 = [\"label\", \"fullWidth\", \"helperText\", \"suspenseFallback\"];\nimport { TextField } from '@mui/material';\nimport { v5 } from '@superdispatch/ui';\nimport { forwardRef, Suspense, useCallback, useEffect, useMemo, useRef, useState } from 'react';\nimport { usePhoneService } from \"../phone-service/PhoneService.js\";\nimport { PhoneFieldMenu } from \"./PhoneFieldMenu.js\";\nimport { PhoneFieldStartAdornment } from \"./PhoneFieldStartAdornment.js\";\nimport { jsx as _jsx } from \"react/jsx-runtime\";\nimport { Fragment as _Fragment } from \"react/jsx-runtime\";\nimport { jsxs as _jsxs } from \"react/jsx-runtime\";\nvar {\n mergeRefs\n} = v5;\n\nfunction normalizeValue(value) {\n return typeof value === 'string' ? value : '';\n}\n\nexport var PhoneField = /*#__PURE__*/forwardRef((_ref, ref) => {\n var {\n value: valueProp,\n onBlur: _onBlur,\n onFocus: _onFocus,\n onChange: _onChange\n } = _ref,\n props = _objectWithoutProperties(_ref, _excluded);\n\n var rootRef = useRef(null);\n var inputRef = useRef(null);\n var [menuAnchor, setMenuAnchor] = useState(null);\n var phoneService = usePhoneService();\n var createState = useCallback(value => _objectSpread({\n value\n }, phoneService.getInfo(value)), [phoneService]);\n var value = useMemo(() => normalizeValue(valueProp), [valueProp]);\n var [{\n country,\n nationalNumber\n }, setValue] = useState(() => createState(value));\n var placeholder = useMemo(() => phoneService.APN.getExample(country).getNumber('national'), [country, phoneService.APN]);\n\n function handleChange(fn, nextCountry, nextNationalNumber) {\n if (fn) {\n var nextValue = phoneService.format(nextNationalNumber, {\n country: nextCountry\n });\n setValue({\n value: nextValue,\n country: nextCountry,\n nationalNumber: nextNationalNumber\n });\n fn(nextValue);\n }\n }\n\n function handleChangeEvent(fn, _ref2) {\n var {\n target: {\n value: nextValue\n }\n } = _ref2;\n\n if (fn) {\n handleChange(fn, country, phoneService.format(nextValue, {\n country,\n format: 'national'\n }));\n }\n }\n\n useEffect(() => {\n setValue(prev => // Ignore `props.value` changes when they were performed from inside.\n prev.value === value ? prev : createState(value));\n }, [value, createState]);\n return /*#__PURE__*/_jsxs(_Fragment, {\n children: [/*#__PURE__*/_jsx(PhoneFieldMenu, {\n value: country,\n anchorEl: menuAnchor,\n onClose: () => {\n setMenuAnchor(null);\n },\n onChange: nextRegion => {\n handleChange(_onChange, nextRegion, nationalNumber);\n }\n }), /*#__PURE__*/_jsx(TextField, _objectSpread(_objectSpread({}, props), {}, {\n type: \"tel\",\n variant: \"outlined\",\n autoComplete: \"off\",\n value: nationalNumber,\n placeholder: placeholder,\n ref: mergeRefs(ref, rootRef),\n inputRef: inputRef,\n onBlur: event => {\n handleChangeEvent(_onBlur, event);\n },\n onFocus: event => {\n handleChangeEvent(_onFocus, event);\n },\n onChange: event => {\n handleChangeEvent(_onChange, event);\n },\n InputProps: {\n startAdornment: /*#__PURE__*/_jsx(PhoneFieldStartAdornment, {\n country: country,\n isExpanded: !!menuAnchor,\n onClick: () => {\n var _inputRef$current;\n\n // `FocusTrap` inside of `Menu` will restore focus to\n // the last focused element. We want to manually focus input\n // to trick the `FocusTrap`.\n (_inputRef$current = inputRef.current) === null || _inputRef$current === void 0 ? void 0 : _inputRef$current.focus();\n setMenuAnchor(rootRef.current);\n }\n })\n }\n }))]\n });\n});\nif (process.env.NODE_ENV !== \"production\") PhoneField.displayName = \"PhoneField\";\nexport var SuspendedPhoneField = /*#__PURE__*/forwardRef((_ref3, ref) => {\n var {\n label,\n fullWidth,\n helperText,\n suspenseFallback = /*#__PURE__*/_jsx(TextField, {\n disabled: true,\n label: label,\n fullWidth: fullWidth,\n helperText: helperText,\n placeholder: \"Loading\\u2026\"\n })\n } = _ref3,\n props = _objectWithoutProperties(_ref3, _excluded2);\n\n return /*#__PURE__*/_jsx(Suspense, {\n fallback: suspenseFallback,\n children: /*#__PURE__*/_jsx(PhoneField, _objectSpread(_objectSpread({}, props), {}, {\n ref: ref,\n label: label,\n fullWidth: fullWidth,\n helperText: helperText\n }))\n });\n});\nif (process.env.NODE_ENV !== \"production\") SuspendedPhoneField.displayName = \"SuspendedPhoneField\";","import _objectSpread from \"@babel/runtime/helpers/objectSpread2\";\nimport _objectWithoutProperties from \"@babel/runtime/helpers/objectWithoutProperties\";\nvar _excluded = [\"phone\", \"country\", \"fallback\", \"format\"],\n _excluded2 = [\"suspenseFallback\"];\nimport { Link } from '@mui/material';\nimport { v5 } from '@superdispatch/ui';\nimport { forwardRef, Suspense, useMemo } from 'react';\nimport { usePhoneService } from \"../phone-service/PhoneService.js\";\nimport { jsx as _jsx } from \"react/jsx-runtime\";\nvar {\n renderChildren\n} = v5;\nexport var PhoneLink = /*#__PURE__*/forwardRef((_ref, ref) => {\n var {\n phone,\n country,\n fallback,\n format = 'international'\n } = _ref,\n props = _objectWithoutProperties(_ref, _excluded);\n\n var service = usePhoneService();\n var [text, href] = useMemo(() => {\n if (service.checkPossibility(phone) !== 'is-possible') {\n return [undefined, undefined];\n }\n\n return [service.format(phone, {\n country,\n format\n }), service.format(phone, {\n country,\n format: 'rfc3966'\n })];\n }, [phone, country, format, service]);\n return !href ? renderChildren(fallback) : /*#__PURE__*/_jsx(Link, _objectSpread(_objectSpread({}, props), {}, {\n ref: ref,\n href: href,\n children: text\n }));\n});\nif (process.env.NODE_ENV !== \"production\") PhoneLink.displayName = \"PhoneLink\";\nexport var SuspendedPhoneLink = /*#__PURE__*/forwardRef((_ref2, ref) => {\n var {\n suspenseFallback = null\n } = _ref2,\n props = _objectWithoutProperties(_ref2, _excluded2);\n\n return /*#__PURE__*/_jsx(Suspense, {\n fallback: suspenseFallback,\n children: /*#__PURE__*/_jsx(PhoneLink, _objectSpread(_objectSpread({}, props), {}, {\n ref: ref\n }))\n });\n});\nif (process.env.NODE_ENV !== \"production\") SuspendedPhoneLink.displayName = \"SuspendedPhoneLink\";","import _objectSpread from \"@babel/runtime/helpers/objectSpread2\";\nimport _objectWithoutProperties from \"@babel/runtime/helpers/objectWithoutProperties\";\nvar _excluded = [\"suspenseFallback\"];\nimport { v5 } from '@superdispatch/ui';\nimport { Suspense } from 'react';\nimport { useFormattedPhoneNumber } from \"../formatted-phone-number/FormattedPhoneNumber.js\";\nimport { jsx as _jsx } from \"react/jsx-runtime\";\nvar {\n renderChildren\n} = v5;\nexport function PhoneText(_ref) {\n var {\n phone,\n country,\n fallback,\n format = 'international'\n } = _ref;\n var children = useFormattedPhoneNumber(phone, {\n format,\n country\n });\n return renderChildren(children || fallback);\n}\nexport function SuspendedPhoneText(_ref2) {\n var {\n suspenseFallback = null\n } = _ref2,\n props = _objectWithoutProperties(_ref2, _excluded);\n\n return /*#__PURE__*/_jsx(Suspense, {\n fallback: suspenseFallback,\n children: /*#__PURE__*/_jsx(PhoneText, _objectSpread({}, props))\n });\n}","var COUNTRY_CODE_METADATA = /*#__PURE__*/JSON.parse('[[\"US\",1,\"United States\"],[\"CA\",1,\"Canada\"],[\"AU\",61,\"Australia\"],[\"NZ\",64,\"New Zealand\"],[\"AC\",247,\"Ascension Island\"],[\"AD\",376,\"Andorra\"],[\"AE\",971,\"United Arab Emirates\"],[\"AF\",93,\"Afghanistan\"],[\"AG\",1,\"Antigua and Barbuda\"],[\"AI\",1,\"Anguilla\"],[\"AL\",355,\"Albania\"],[\"AM\",374,\"Armenia\"],[\"AO\",244,\"Angola\"],[\"AR\",54,\"Argentina\"],[\"AS\",1,\"American Samoa\"],[\"AT\",43,\"Austria\"],[\"AW\",297,\"Aruba\"],[\"AX\",358,\"Åland Islands\"],[\"AZ\",994,\"Azerbaijan\"],[\"BA\",387,\"Bosnia and Herzegovina\"],[\"BB\",1,\"Barbados\"],[\"BD\",880,\"Bangladesh\"],[\"BE\",32,\"Belgium\"],[\"BF\",226,\"Burkina Faso\"],[\"BG\",359,\"Bulgaria\"],[\"BH\",973,\"Bahrain\"],[\"BI\",257,\"Burundi\"],[\"BJ\",229,\"Benin\"],[\"BL\",590,\"Saint Barthélemy\"],[\"BM\",1,\"Bermuda\"],[\"BN\",673,\"Brunei\"],[\"BO\",591,\"Bolivia\"],[\"BQ\",599,\"Caribbean Netherlands\"],[\"BR\",55,\"Brazil\"],[\"BS\",1,\"Bahamas\"],[\"BT\",975,\"Bhutan\"],[\"BW\",267,\"Botswana\"],[\"BY\",375,\"Belarus\"],[\"BZ\",501,\"Belize\"],[\"CC\",61,\"Cocos\"],[\"CD\",243,\"Congo\"],[\"CF\",236,\"Central African Republic\"],[\"CG\",242,\"Congo\"],[\"CH\",41,\"Switzerland\"],[\"CI\",225,\"Côte d’Ivoire\"],[\"CK\",682,\"Cook Islands\"],[\"CL\",56,\"Chile\"],[\"CM\",237,\"Cameroon\"],[\"CN\",86,\"China\"],[\"CO\",57,\"Colombia\"],[\"CR\",506,\"Costa Rica\"],[\"CU\",53,\"Cuba\"],[\"CV\",238,\"Cape Verde\"],[\"CW\",599,\"Curaçao\"],[\"CX\",61,\"Christmas Island\"],[\"CY\",357,\"Cyprus\"],[\"CZ\",420,\"Czech Republic\"],[\"DE\",49,\"Germany\"],[\"DJ\",253,\"Djibouti\"],[\"DK\",45,\"Denmark\"],[\"DM\",1,\"Dominica\"],[\"DO\",1,\"Dominican Republic\"],[\"DZ\",213,\"Algeria\"],[\"EC\",593,\"Ecuador\"],[\"EE\",372,\"Estonia\"],[\"EG\",20,\"Egypt\"],[\"EH\",212,\"Western Sahara\"],[\"ER\",291,\"Eritrea\"],[\"ES\",34,\"Spain\"],[\"ET\",251,\"Ethiopia\"],[\"FI\",358,\"Finland\"],[\"FJ\",679,\"Fiji\"],[\"FK\",500,\"Falkland Islands\"],[\"FM\",691,\"Micronesia\"],[\"FO\",298,\"Faroe Islands\"],[\"FR\",33,\"France\"],[\"GA\",241,\"Gabon\"],[\"GB\",44,\"United Kingdom\"],[\"GD\",1,\"Grenada\"],[\"GE\",995,\"Georgia\"],[\"GF\",594,\"French Guiana\"],[\"GG\",44,\"Guernsey\"],[\"GH\",233,\"Ghana\"],[\"GI\",350,\"Gibraltar\"],[\"GL\",299,\"Greenland\"],[\"GM\",220,\"Gambia\"],[\"GN\",224,\"Guinea\"],[\"GP\",590,\"Guadeloupe\"],[\"GQ\",240,\"Equatorial Guinea\"],[\"GR\",30,\"Greece\"],[\"GT\",502,\"Guatemala\"],[\"GU\",1,\"Guam\"],[\"GW\",245,\"Guinea-Bissau\"],[\"GY\",592,\"Guyana\"],[\"HK\",852,\"Hong Kong\"],[\"HN\",504,\"Honduras\"],[\"HR\",385,\"Croatia\"],[\"HT\",509,\"Haiti\"],[\"HU\",36,\"Hungary\"],[\"ID\",62,\"Indonesia\"],[\"IE\",353,\"Ireland\"],[\"IL\",972,\"Israel\"],[\"IM\",44,\"Isle of Man\"],[\"IN\",91,\"India\"],[\"IO\",246,\"British Indian Ocean Territory\"],[\"IQ\",964,\"Iraq\"],[\"IR\",98,\"Iran\"],[\"IS\",354,\"Iceland\"],[\"IT\",39,\"Italy\"],[\"JE\",44,\"Jersey\"],[\"JM\",1,\"Jamaica\"],[\"JO\",962,\"Jordan\"],[\"JP\",81,\"Japan\"],[\"KE\",254,\"Kenya\"],[\"KG\",996,\"Kyrgyzstan\"],[\"KH\",855,\"Cambodia\"],[\"KI\",686,\"Kiribati\"],[\"KM\",269,\"Comoros\"],[\"KN\",1,\"Saint Kitts and Nevis\"],[\"KP\",850,\"North Korea\"],[\"KR\",82,\"South Korea\"],[\"KW\",965,\"Kuwait\"],[\"KY\",1,\"Cayman Islands\"],[\"KZ\",7,\"Kazakhstan\"],[\"LA\",856,\"Laos\"],[\"LB\",961,\"Lebanon\"],[\"LC\",1,\"Saint Lucia\"],[\"LI\",423,\"Liechtenstein\"],[\"LK\",94,\"Sri Lanka\"],[\"LR\",231,\"Liberia\"],[\"LS\",266,\"Lesotho\"],[\"LT\",370,\"Lithuania\"],[\"LU\",352,\"Luxembourg\"],[\"LV\",371,\"Latvia\"],[\"LY\",218,\"Libya\"],[\"MA\",212,\"Morocco\"],[\"MC\",377,\"Monaco\"],[\"MD\",373,\"Moldova\"],[\"ME\",382,\"Montenegro\"],[\"MF\",590,\"Saint Martin\"],[\"MG\",261,\"Madagascar\"],[\"MH\",692,\"Marshall Islands\"],[\"MK\",389,\"Macedonia\"],[\"ML\",223,\"Mali\"],[\"MM\",95,\"Myanmar\"],[\"MN\",976,\"Mongolia\"],[\"MO\",853,\"Macau\"],[\"MP\",1,\"Northern Mariana Islands\"],[\"MQ\",596,\"Martinique\"],[\"MR\",222,\"Mauritania\"],[\"MS\",1,\"Montserrat\"],[\"MT\",356,\"Malta\"],[\"MU\",230,\"Mauritius\"],[\"MV\",960,\"Maldives\"],[\"MW\",265,\"Malawi\"],[\"MX\",52,\"Mexico\"],[\"MY\",60,\"Malaysia\"],[\"MZ\",258,\"Mozambique\"],[\"NA\",264,\"Namibia\"],[\"NC\",687,\"New Caledonia\"],[\"NE\",227,\"Niger\"],[\"NF\",672,\"Norfolk Island\"],[\"NG\",234,\"Nigeria\"],[\"NI\",505,\"Nicaragua\"],[\"NL\",31,\"Netherlands\"],[\"NO\",47,\"Norway\"],[\"NP\",977,\"Nepal\"],[\"NR\",674,\"Nauru\"],[\"NU\",683,\"Niue\"],[\"OM\",968,\"Oman\"],[\"PA\",507,\"Panama\"],[\"PE\",51,\"Peru\"],[\"PF\",689,\"French Polynesia\"],[\"PG\",675,\"Papua New Guinea\"],[\"PH\",63,\"Philippines\"],[\"PK\",92,\"Pakistan\"],[\"PL\",48,\"Poland\"],[\"PM\",508,\"Saint Pierre and Miquelon\"],[\"PR\",1,\"Puerto Rico\"],[\"PS\",970,\"Palestine\"],[\"PT\",351,\"Portugal\"],[\"PW\",680,\"Palau\"],[\"PY\",595,\"Paraguay\"],[\"QA\",974,\"Qatar\"],[\"RE\",262,\"Réunion\"],[\"RO\",40,\"Romania\"],[\"RS\",381,\"Serbia\"],[\"RU\",7,\"Russia\"],[\"RW\",250,\"Rwanda\"],[\"SA\",966,\"Saudi Arabia\"],[\"SB\",677,\"Solomon Islands\"],[\"SC\",248,\"Seychelles\"],[\"SD\",249,\"Sudan\"],[\"SE\",46,\"Sweden\"],[\"SG\",65,\"Singapore\"],[\"SH\",290,\"Saint Helena\"],[\"SI\",386,\"Slovenia\"],[\"SJ\",47,\"Svalbard and Jan Mayen\"],[\"SK\",421,\"Slovakia\"],[\"SL\",232,\"Sierra Leone\"],[\"SM\",378,\"San Marino\"],[\"SN\",221,\"Senegal\"],[\"SO\",252,\"Somalia\"],[\"SR\",597,\"Suriname\"],[\"SS\",211,\"South Sudan\"],[\"ST\",239,\"São Tomé and Príncipe\"],[\"SV\",503,\"El Salvador\"],[\"SX\",1,\"Sint Maarten\"],[\"SY\",963,\"Syria\"],[\"SZ\",268,\"Swaziland\"],[\"TA\",290,\"Tristan da Cunha\"],[\"TC\",1,\"Turks and Caicos Islands\"],[\"TD\",235,\"Chad\"],[\"TG\",228,\"Togo\"],[\"TH\",66,\"Thailand\"],[\"TJ\",992,\"Tajikistan\"],[\"TK\",690,\"Tokelau\"],[\"TL\",670,\"Timor-Leste\"],[\"TM\",993,\"Turkmenistan\"],[\"TN\",216,\"Tunisia\"],[\"TO\",676,\"Tonga\"],[\"TR\",90,\"Turkey\"],[\"TT\",1,\"Trinidad and Tobago\"],[\"TV\",688,\"Tuvalu\"],[\"TW\",886,\"Taiwan\"],[\"TZ\",255,\"Tanzania\"],[\"UA\",380,\"Ukraine\"],[\"UG\",256,\"Uganda\"],[\"UY\",598,\"Uruguay\"],[\"UZ\",998,\"Uzbekistan\"],[\"VA\",39,\"Vatican City\"],[\"VC\",1,\"Saint Vincent and the Grenadines\"],[\"VE\",58,\"Venezuela\"],[\"VG\",1,\"British Virgin Islands\"],[\"VI\",1,\"U.S. Virgin Islands\"],[\"VN\",84,\"Vietnam\"],[\"VU\",678,\"Vanuatu\"],[\"WF\",681,\"Wallis and Futuna\"],[\"WS\",685,\"Samoa\"],[\"XK\",383,\"Kosovo\"],[\"YE\",967,\"Yemen\"],[\"YT\",262,\"Mayotte\"],[\"ZA\",27,\"South Africa\"],[\"ZM\",260,\"Zambia\"],[\"ZW\",263,\"Zimbabwe\"]]');\nexport var DEFAULT_COUNTRY = 'US';\nvar COUNTRIES = [];\nvar COUNTRY_CODE_MAP = /*#__PURE__*/new Map();\nvar COUNTRY_NAME_MAP = /*#__PURE__*/new Map();\n\nfor (var [country, code, name] of COUNTRY_CODE_METADATA) {\n COUNTRIES.push(country);\n COUNTRY_CODE_MAP.set(country, code);\n COUNTRY_NAME_MAP.set(country, name);\n}\n\nexport function listCountries() {\n return COUNTRIES;\n}\nexport function isCountryISO(value) {\n return typeof value == 'string' && COUNTRY_CODE_MAP.has(value);\n}\nexport function toCountryISO(value) {\n return isCountryISO(value) ? value : DEFAULT_COUNTRY;\n}\nexport function getCountryCode(country) {\n return COUNTRY_CODE_MAP.get(country) || 0;\n}\nexport function formatCountry(country) {\n return COUNTRY_NAME_MAP.get(country) || 'Invalid Country ISO';\n}","var loadError;\nvar loadedAPN;\nexport function loadAPN() {\n return import(\n /* webpackPrefetch: true */\n\n /* webpackChunkName: \"apn\" */\n 'awesome-phonenumber').then(apn => {\n loadedAPN = apn.default;\n return loadedAPN;\n }, error => {\n loadError = error;\n throw error;\n });\n}\nexport function getAPN() {\n if (loadError) {\n throw loadError;\n }\n\n if (!loadedAPN) {\n // eslint-disable-next-line @typescript-eslint/no-throw-literal\n throw loadAPN();\n }\n\n return loadedAPN;\n}","import { useMemo } from 'react';\nimport { getAPN, loadAPN } from \"../apn/APN.js\";\nimport { DEFAULT_COUNTRY, getCountryCode, toCountryISO } from \"../country-code-metadata/CountryCodeMetadata.js\";\nvar PLUS_SIGN = '+';\nvar NON_PHONE_SYMBOLS_PATTERN = /[^+\\d]/g;\nvar PHONE_PATTERN = /^\\+?\\d+/g;\n\nfunction getPrefix(country) {\n return PLUS_SIGN + String(getCountryCode(toCountryISO(country)));\n}\n\nfunction trim(input) {\n return typeof input == 'string' ? input.trim() : undefined;\n}\n\nfunction normalize(input) {\n if (typeof input == 'string') {\n var matches = input.replace(NON_PHONE_SYMBOLS_PATTERN, '').match(PHONE_PATTERN);\n if (matches !== null && matches !== void 0 && matches[0]) return matches[0];\n }\n\n return '';\n}\n\nfunction normalizeNational(country, input) {\n var phone = normalize(input);\n var prefix = getPrefix(country);\n\n if (phone.startsWith(PLUS_SIGN)) {\n return phone.slice(prefix.length);\n }\n\n return phone;\n}\n\nexport class PhoneService {\n static load() {\n return loadAPN().then(APN => new PhoneService(APN));\n }\n\n static checkPossibility(input) {\n return this.load().then(phoneService => phoneService.checkPossibility(input));\n }\n\n static validate(input, rules) {\n return this.load().then(phoneService => phoneService.validate(input, rules));\n }\n\n constructor(APN) {\n this.APN = APN;\n }\n\n createAPN(phone, country) {\n var asYouType = this.APN.getAsYouType(toCountryISO(country));\n asYouType.reset(normalize(phone));\n return asYouType.getPhoneNumber();\n }\n\n getJSON(phone, country) {\n return this.createAPN(phone, country).toJSON();\n }\n\n checkPossibility(input) {\n var phone = trim(input);\n\n if (!phone) {\n return 'unknown';\n }\n\n var apn = phone.startsWith(PLUS_SIGN) ? new this.APN(phone) : new this.APN(phone, DEFAULT_COUNTRY);\n var {\n valid,\n possible,\n possibility\n } = apn.toJSON(); // Avoid false positive short phone numbers.\n\n if (!valid && possible) {\n return 'invalid-number';\n }\n\n return possibility;\n }\n\n validate(input) {\n var {\n required,\n requiredMessage = 'This field is required',\n invalidMessage = 'Invalid phone number',\n tooLongMessage = 'Phone number is too long',\n tooShortMessage = 'Phone number is too short'\n } = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : {};\n var phone = trim(input);\n\n if (!phone) {\n if (required) {\n return requiredMessage;\n }\n\n return undefined;\n }\n\n switch (this.checkPossibility(phone)) {\n case 'is-possible':\n return undefined;\n\n case 'too-long':\n return tooLongMessage;\n\n case 'too-short':\n return tooShortMessage;\n }\n\n return invalidMessage;\n }\n\n getInfo(phone) {\n var {\n regionCode,\n number: {\n input,\n national: nationalNumber\n }\n } = this.getJSON(phone);\n var country = toCountryISO(regionCode);\n\n if (!nationalNumber) {\n nationalNumber = normalizeNational(country, input);\n }\n\n return {\n country,\n nationalNumber\n };\n }\n\n format(input) {\n var {\n country,\n format = 'e164',\n fallback = ''\n } = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : {};\n var phone = normalize(input);\n\n if (!phone) {\n return fallback;\n }\n\n var apn = this.createAPN(phone, country);\n var formatted = apn.getNumber(format);\n\n if (!formatted) {\n country = toCountryISO(apn.getRegionCode());\n var nationalNumber = normalizeNational(country, phone);\n\n if (format === 'national') {\n return nationalNumber;\n }\n\n var prefix = '';\n var separator = '';\n\n if (format === 'rfc3966') {\n prefix = 'tel:';\n separator = '-';\n }\n\n if (format === 'international') {\n separator = ' ';\n }\n\n formatted = prefix + getPrefix(country);\n\n if (nationalNumber) {\n formatted += separator + nationalNumber;\n }\n }\n\n return formatted;\n }\n\n}\nexport function usePhoneService() {\n var APN = getAPN();\n return useMemo(() => new PhoneService(APN), [APN]);\n}","import { useMemo } from 'react';\nimport { usePhoneService } from \"../phone-service/PhoneService.js\";\nexport function useFormattedPhoneNumber(input) {\n var {\n format,\n country,\n fallback = ''\n } = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : {};\n var phoneService = usePhoneService();\n return useMemo(() => {\n if (phoneService.checkPossibility(input) !== 'is-possible') {\n return fallback;\n }\n\n return phoneService.format(input, {\n format,\n country,\n fallback\n });\n }, [phoneService, input, format, country, fallback]);\n}","import _objectSpread from \"@babel/runtime/helpers/objectSpread2\";\nimport _objectWithoutProperties from \"@babel/runtime/helpers/objectWithoutProperties\";\nvar _excluded = [\"country\", \"alt\", \"className\"];\nimport { Typography } from '@material-ui/core';\nimport { makeStyles } from '@material-ui/styles';\nimport clsx from 'clsx';\nimport { forwardRef } from 'react';\nimport { jsx as _jsx } from \"react/jsx-runtime\";\nvar useStyles = /*#__PURE__*/makeStyles(theme => ({\n root: {\n minHeight: theme.spacing(2),\n minWidth: theme.spacing(2.75)\n }\n}), {\n name: 'SD-PhoneFieldFlag'\n});\nexport var PhoneFieldFlag = /*#__PURE__*/forwardRef((_ref, ref) => {\n var {\n country,\n alt = country,\n className\n } = _ref,\n props = _objectWithoutProperties(_ref, _excluded);\n\n var styles = useStyles();\n\n if (country === 'AC' || country === 'BQ' || country === 'EH' || country === 'TA') {\n return /*#__PURE__*/_jsx(Typography, {\n ref: ref,\n variant: \"h6\",\n align: \"center\",\n component: \"span\",\n color: \"textSecondary\",\n className: clsx(styles.root, className),\n children: country\n });\n }\n\n return /*#__PURE__*/_jsx(\"img\", _objectSpread(_objectSpread({}, props), {}, {\n alt: alt,\n ref: ref,\n className: clsx(styles.root, className),\n src: \"https://cdn.jsdelivr.net/gh/madebybowtie/FlagKit@2.2/Assets/SVG/\".concat(country, \".svg\")\n }));\n});\nif (process.env.NODE_ENV !== \"production\") PhoneFieldFlag.displayName = \"PhoneFieldFlag\";","import _objectSpread from \"@babel/runtime/helpers/objectSpread2\";\nimport _objectWithoutProperties from \"@babel/runtime/helpers/objectWithoutProperties\";\nvar _excluded = [\"country\", \"classes\"],\n _excluded2 = [\"flag\"];\nimport { MenuItem, Typography } from '@material-ui/core';\nimport { makeStyles } from '@material-ui/styles';\nimport { forwardRef, useMemo } from 'react';\nimport { formatCountry, getCountryCode } from \"../country-code-metadata/CountryCodeMetadata.js\";\nimport { PhoneFieldFlag } from \"./PhoneFieldFlag.js\";\nimport { jsx as _jsx } from \"react/jsx-runtime\";\nimport { jsxs as _jsxs } from \"react/jsx-runtime\";\nvar useStyles = /*#__PURE__*/makeStyles(theme => ({\n dense: {},\n gutters: {},\n root: {},\n selected: {},\n flag: {\n marginRight: theme.spacing(1)\n }\n}), {\n name: 'SD-PhoneFieldMenuItem'\n});\nexport var PhoneFieldMenuItem = /*#__PURE__*/forwardRef((_ref, ref) => {\n var {\n country,\n classes\n } = _ref,\n props = _objectWithoutProperties(_ref, _excluded);\n\n var _useStyles = useStyles({\n classes\n }),\n {\n flag: flagClassName\n } = _useStyles,\n styles = _objectWithoutProperties(_useStyles, _excluded2);\n\n var countryCode = useMemo(() => getCountryCode(country), [country]);\n return /*#__PURE__*/_jsxs(MenuItem, _objectSpread(_objectSpread({}, props), {}, {\n ref: ref,\n button: true,\n classes: styles,\n children: [/*#__PURE__*/_jsx(PhoneFieldFlag, {\n country: country,\n className: flagClassName\n }), formatCountry(country), \"\\xA0\", /*#__PURE__*/_jsx(Typography, {\n color: \"textSecondary\",\n children: countryCode\n })]\n }));\n});\nif (process.env.NODE_ENV !== \"production\") PhoneFieldMenuItem.displayName = \"PhoneFieldMenuItem\";","import { Divider, Menu } from '@material-ui/core';\nimport { makeStyles } from '@material-ui/styles';\nimport { forwardRef } from 'react';\nimport { listCountries } from \"../country-code-metadata/CountryCodeMetadata.js\";\nimport { PhoneFieldMenuItem } from \"./PhoneFieldMenuItem.js\";\nimport { jsx as _jsx } from \"react/jsx-runtime\";\nvar useStyles = /*#__PURE__*/makeStyles(theme => ({\n paper: {\n maxHeight: theme.spacing(30)\n }\n}), {\n name: 'SD-PhoneFieldMenu'\n});\nexport var PhoneFieldMenu = /*#__PURE__*/forwardRef((_ref, ref) => {\n var {\n anchorEl,\n value,\n onClose,\n onChange\n } = _ref;\n var styles = useStyles();\n return /*#__PURE__*/_jsx(Menu, {\n ref: ref,\n open: !!anchorEl,\n onClose: onClose,\n anchorEl: anchorEl,\n classes: {\n paper: styles.paper\n },\n children: listCountries().map(country => [/*#__PURE__*/_jsx(PhoneFieldMenuItem, {\n country: country,\n selected: country === value,\n onClick: () => {\n onChange(country);\n onClose();\n }\n }, country), country === 'NZ' && /*#__PURE__*/_jsx(Divider, {}, \"divider\")])\n });\n});\nif (process.env.NODE_ENV !== \"production\") PhoneFieldMenu.displayName = \"PhoneFieldMenu\";","import { ButtonBase, InputAdornment, Typography } from '@material-ui/core';\nimport { ArrowDropDown, ArrowDropUp } from '@material-ui/icons';\nimport { makeStyles } from '@material-ui/styles';\nimport { Color } from '@superdispatch/ui';\nimport { forwardRef, useMemo } from 'react';\nimport { formatCountry, getCountryCode } from \"../country-code-metadata/CountryCodeMetadata.js\";\nimport { PhoneFieldFlag } from \"./PhoneFieldFlag.js\";\nimport { jsx as _jsx } from \"react/jsx-runtime\";\nimport { jsxs as _jsxs } from \"react/jsx-runtime\";\nvar useStyles = /*#__PURE__*/makeStyles(theme => ({\n root: {\n marginLeft: theme.spacing(-1),\n marginRight: 0\n },\n button: {\n color: Color.Blue300,\n padding: theme.spacing(0.5, 0.5, 0.5, 1),\n borderRadius: theme.spacing(0.5, 0, 0, 0.5),\n '&:hover, &:focus': {\n backgroundColor: Color.Blue50\n }\n }\n}), {\n name: 'SD-PhoneFieldStartAdornment'\n});\nexport var PhoneFieldStartAdornment = /*#__PURE__*/forwardRef((_ref, ref) => {\n var {\n country,\n onClick,\n isExpanded\n } = _ref;\n var styles = useStyles();\n var [title, countryCode] = useMemo(() => {\n var code = \"+\".concat(getCountryCode(country));\n return [\"\".concat(formatCountry(country), \": \").concat(code), code];\n }, [country]);\n return /*#__PURE__*/_jsx(InputAdornment, {\n ref: ref,\n position: \"start\",\n className: styles.root,\n children: /*#__PURE__*/_jsxs(ButtonBase, {\n title: title,\n onClick: onClick,\n className: styles.button,\n \"aria-expanded\": isExpanded,\n children: [/*#__PURE__*/_jsx(PhoneFieldFlag, {\n country: country\n }), isExpanded ? /*#__PURE__*/_jsx(ArrowDropUp, {\n htmlColor: Color.Dark200\n }) : /*#__PURE__*/_jsx(ArrowDropDown, {\n htmlColor: Color.Dark200\n }), /*#__PURE__*/_jsx(Typography, {\n color: \"textPrimary\",\n children: countryCode\n })]\n })\n });\n});\nif (process.env.NODE_ENV !== \"production\") PhoneFieldStartAdornment.displayName = \"PhoneFieldStartAdornment\";","import _objectSpread from \"@babel/runtime/helpers/objectSpread2\";\nimport _objectWithoutProperties from \"@babel/runtime/helpers/objectWithoutProperties\";\nvar _excluded = [\"value\", \"onBlur\", \"onFocus\", \"onChange\"],\n _excluded2 = [\"label\", \"fullWidth\", \"helperText\", \"suspenseFallback\"];\nimport { TextField } from '@material-ui/core';\nimport { mergeRefs } from '@superdispatch/ui';\nimport { forwardRef, Suspense, useCallback, useEffect, useMemo, useRef, useState } from 'react';\nimport { usePhoneService } from \"../phone-service/PhoneService.js\";\nimport { PhoneFieldMenu } from \"./PhoneFieldMenu.js\";\nimport { PhoneFieldStartAdornment } from \"./PhoneFieldStartAdornment.js\";\nimport { jsx as _jsx } from \"react/jsx-runtime\";\nimport { Fragment as _Fragment } from \"react/jsx-runtime\";\nimport { jsxs as _jsxs } from \"react/jsx-runtime\";\n\nfunction normalizeValue(value) {\n return typeof value === 'string' ? value : '';\n}\n\nexport var PhoneField = /*#__PURE__*/forwardRef((_ref, ref) => {\n var {\n value: valueProp,\n onBlur: _onBlur,\n onFocus: _onFocus,\n onChange: _onChange\n } = _ref,\n props = _objectWithoutProperties(_ref, _excluded);\n\n var rootRef = useRef(null);\n var inputRef = useRef(null);\n var [menuAnchor, setMenuAnchor] = useState(null);\n var phoneService = usePhoneService();\n var createState = useCallback(value => _objectSpread({\n value\n }, phoneService.getInfo(value)), [phoneService]);\n var value = useMemo(() => normalizeValue(valueProp), [valueProp]);\n var [{\n country,\n nationalNumber\n }, setValue] = useState(() => createState(value));\n var placeholder = useMemo(() => phoneService.APN.getExample(country).getNumber('national'), [country, phoneService.APN]);\n\n function handleChange(fn, nextCountry, nextNationalNumber) {\n if (fn) {\n var nextValue = phoneService.format(nextNationalNumber, {\n country: nextCountry\n });\n setValue({\n value: nextValue,\n country: nextCountry,\n nationalNumber: nextNationalNumber\n });\n fn(nextValue);\n }\n }\n\n function handleChangeEvent(fn, _ref2) {\n var {\n target: {\n value: nextValue\n }\n } = _ref2;\n\n if (fn) {\n handleChange(fn, country, phoneService.format(nextValue, {\n country,\n format: 'national'\n }));\n }\n }\n\n useEffect(() => {\n setValue(prev => // Ignore `props.value` changes when they were performed from inside.\n prev.value === value ? prev : createState(value));\n }, [value, createState]);\n return /*#__PURE__*/_jsxs(_Fragment, {\n children: [/*#__PURE__*/_jsx(PhoneFieldMenu, {\n value: country,\n anchorEl: menuAnchor,\n onClose: () => {\n setMenuAnchor(null);\n },\n onChange: nextRegion => {\n handleChange(_onChange, nextRegion, nationalNumber);\n }\n }), /*#__PURE__*/_jsx(TextField, _objectSpread(_objectSpread({}, props), {}, {\n type: \"tel\",\n variant: \"outlined\",\n autoComplete: \"off\",\n value: nationalNumber,\n placeholder: placeholder,\n ref: mergeRefs(ref, rootRef),\n inputRef: inputRef,\n onBlur: event => {\n handleChangeEvent(_onBlur, event);\n },\n onFocus: event => {\n handleChangeEvent(_onFocus, event);\n },\n onChange: event => {\n handleChangeEvent(_onChange, event);\n },\n InputProps: {\n startAdornment: /*#__PURE__*/_jsx(PhoneFieldStartAdornment, {\n country: country,\n isExpanded: !!menuAnchor,\n onClick: () => {\n var _inputRef$current;\n\n // `FocusTrap` inside of `Menu` will restore focus to\n // the last focused element. We want to manually focus input\n // to trick the `FocusTrap`.\n (_inputRef$current = inputRef.current) === null || _inputRef$current === void 0 ? void 0 : _inputRef$current.focus();\n setMenuAnchor(rootRef.current);\n }\n })\n }\n }))]\n });\n});\nif (process.env.NODE_ENV !== \"production\") PhoneField.displayName = \"PhoneField\";\nexport var SuspendedPhoneField = /*#__PURE__*/forwardRef((_ref3, ref) => {\n var {\n label,\n fullWidth,\n helperText,\n suspenseFallback = /*#__PURE__*/_jsx(TextField, {\n disabled: true,\n label: label,\n fullWidth: fullWidth,\n helperText: helperText,\n placeholder: \"Loading\\u2026\"\n })\n } = _ref3,\n props = _objectWithoutProperties(_ref3, _excluded2);\n\n return /*#__PURE__*/_jsx(Suspense, {\n fallback: suspenseFallback,\n children: /*#__PURE__*/_jsx(PhoneField, _objectSpread(_objectSpread({}, props), {}, {\n ref: ref,\n label: label,\n fullWidth: fullWidth,\n helperText: helperText\n }))\n });\n});\nif (process.env.NODE_ENV !== \"production\") SuspendedPhoneField.displayName = \"SuspendedPhoneField\";","import _objectSpread from \"@babel/runtime/helpers/objectSpread2\";\nimport _objectWithoutProperties from \"@babel/runtime/helpers/objectWithoutProperties\";\nvar _excluded = [\"phone\", \"country\", \"fallback\", \"format\"],\n _excluded2 = [\"suspenseFallback\"];\nimport { Link } from '@material-ui/core';\nimport { renderChildren } from '@superdispatch/ui';\nimport { forwardRef, Suspense, useMemo } from 'react';\nimport { usePhoneService } from \"../phone-service/PhoneService.js\";\nimport { jsx as _jsx } from \"react/jsx-runtime\";\nexport var PhoneLink = /*#__PURE__*/forwardRef((_ref, ref) => {\n var {\n phone,\n country,\n fallback,\n format = 'international'\n } = _ref,\n props = _objectWithoutProperties(_ref, _excluded);\n\n var service = usePhoneService();\n var [text, href] = useMemo(() => {\n if (service.checkPossibility(phone) !== 'is-possible') {\n return [undefined, undefined];\n }\n\n return [service.format(phone, {\n country,\n format\n }), service.format(phone, {\n country,\n format: 'rfc3966'\n })];\n }, [phone, country, format, service]);\n return !href ? renderChildren(fallback) : /*#__PURE__*/_jsx(Link, _objectSpread(_objectSpread({}, props), {}, {\n ref: ref,\n href: href,\n children: text\n }));\n});\nif (process.env.NODE_ENV !== \"production\") PhoneLink.displayName = \"PhoneLink\";\nexport var SuspendedPhoneLink = /*#__PURE__*/forwardRef((_ref2, ref) => {\n var {\n suspenseFallback = null\n } = _ref2,\n props = _objectWithoutProperties(_ref2, _excluded2);\n\n return /*#__PURE__*/_jsx(Suspense, {\n fallback: suspenseFallback,\n children: /*#__PURE__*/_jsx(PhoneLink, _objectSpread(_objectSpread({}, props), {}, {\n ref: ref\n }))\n });\n});\nif (process.env.NODE_ENV !== \"production\") SuspendedPhoneLink.displayName = \"SuspendedPhoneLink\";","import _objectSpread from \"@babel/runtime/helpers/objectSpread2\";\nimport _objectWithoutProperties from \"@babel/runtime/helpers/objectWithoutProperties\";\nvar _excluded = [\"suspenseFallback\"];\nimport { renderChildren } from '@superdispatch/ui';\nimport { Suspense } from 'react';\nimport { useFormattedPhoneNumber } from \"../formatted-phone-number/FormattedPhoneNumber.js\";\nimport { jsx as _jsx } from \"react/jsx-runtime\";\nexport function PhoneText(_ref) {\n var {\n phone,\n country,\n fallback,\n format = 'international'\n } = _ref;\n var children = useFormattedPhoneNumber(phone, {\n format,\n country\n });\n return renderChildren(children || fallback);\n}\nexport function SuspendedPhoneText(_ref2) {\n var {\n suspenseFallback = null\n } = _ref2,\n props = _objectWithoutProperties(_ref2, _excluded);\n\n return /*#__PURE__*/_jsx(Suspense, {\n fallback: suspenseFallback,\n children: /*#__PURE__*/_jsx(PhoneText, _objectSpread({}, props))\n });\n}"],"names":["COUNTRY_CODE_METADATA","JSON","parse","DEFAULT_COUNTRY","COUNTRIES","COUNTRY_CODE_MAP","Map","COUNTRY_NAME_MAP","country","code","name","push","set","listCountries","isCountryISO","value","has","toCountryISO","getCountryCode","get","formatCountry","loadError","loadedAPN","loadAPN","then","apn","default","error","getAPN","PLUS_SIGN","NON_PHONE_SYMBOLS_PATTERN","PHONE_PATTERN","getPrefix","String","trim","input","undefined","normalize","matches","replace","match","normalizeNational","phone","prefix","startsWith","slice","length","PhoneService","load","APN","checkPossibility","phoneService","validate","rules","constructor","createAPN","asYouType","getAsYouType","reset","getPhoneNumber","getJSON","toJSON","valid","possible","possibility","required","requiredMessage","invalidMessage","tooLongMessage","tooShortMessage","arguments","getInfo","regionCode","number","national","nationalNumber","format","fallback","formatted","getNumber","getRegionCode","separator","usePhoneService","useMemo","useFormattedPhoneNumber","_excluded","useStyles","makeStyles","theme","root","minHeight","spacing","minWidth","PhoneFieldFlag","forwardRef","_ref","ref","alt","className","props","_objectWithoutProperties","styles","_jsx","Typography","variant","align","component","color","clsx","children","_objectSpread","src","concat","process","env","NODE_ENV","displayName","_excluded2","dense","gutters","selected","disabled","divider","focusVisible","flag","marginRight","PhoneFieldMenuItem","classes","_useStyles","flagClassName","countryCode","_jsxs","MenuItem","paper","maxHeight","PhoneFieldMenu","anchorEl","onClose","onChange","Menu","open","map","onClick","Divider","Color","v5","marginLeft","button","Blue300","padding","borderRadius","backgroundColor","Blue50","PhoneFieldStartAdornment","isExpanded","title","InputAdornment","position","ButtonBase","ArrowDropUp","htmlColor","Dark200","ArrowDropDown","mergeRefs","normalizeValue","PhoneField","valueProp","onBlur","_onBlur","onFocus","_onFocus","_onChange","rootRef","useRef","inputRef","menuAnchor","setMenuAnchor","useState","createState","useCallback","setValue","placeholder","getExample","handleChange","fn","nextCountry","nextNationalNumber","nextValue","handleChangeEvent","_ref2","target","useEffect","prev","_Fragment","nextRegion","TextField","type","autoComplete","event","InputProps","startAdornment","_inputRef$current","current","focus","SuspendedPhoneField","_ref3","label","fullWidth","helperText","suspenseFallback","Suspense","renderChildren","PhoneLink","service","text","href","Link","SuspendedPhoneLink","PhoneText","SuspendedPhoneText"],"mappings":"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"}
package/dist-src/index.js CHANGED
@@ -1,6 +1,8 @@
1
+ import * as v5 from "./v5/index.js";
1
2
  export * from "./country-code-metadata/CountryCodeMetadata.js";
2
3
  export * from "./formatted-phone-number/FormattedPhoneNumber.js";
3
4
  export * from "./phone-field/PhoneField.js";
4
5
  export * from "./phone-link/PhoneLink.js";
5
6
  export * from "./phone-service/PhoneService.js";
6
- export * from "./phone-text/PhoneText.js";
7
+ export * from "./phone-text/PhoneText.js";
8
+ export { v5 };
@@ -0,0 +1,27 @@
1
+ var loadError;
2
+ var loadedAPN;
3
+ export function loadAPN() {
4
+ return import(
5
+ /* webpackPrefetch: true */
6
+
7
+ /* webpackChunkName: "apn" */
8
+ 'awesome-phonenumber').then(apn => {
9
+ loadedAPN = apn.default;
10
+ return loadedAPN;
11
+ }, error => {
12
+ loadError = error;
13
+ throw error;
14
+ });
15
+ }
16
+ export function getAPN() {
17
+ if (loadError) {
18
+ throw loadError;
19
+ }
20
+
21
+ if (!loadedAPN) {
22
+ // eslint-disable-next-line @typescript-eslint/no-throw-literal
23
+ throw loadAPN();
24
+ }
25
+
26
+ return loadedAPN;
27
+ }
@@ -0,0 +1,27 @@
1
+ var COUNTRY_CODE_METADATA = /*#__PURE__*/JSON.parse('[["US",1,"United States"],["CA",1,"Canada"],["AU",61,"Australia"],["NZ",64,"New Zealand"],["AC",247,"Ascension Island"],["AD",376,"Andorra"],["AE",971,"United Arab Emirates"],["AF",93,"Afghanistan"],["AG",1,"Antigua and Barbuda"],["AI",1,"Anguilla"],["AL",355,"Albania"],["AM",374,"Armenia"],["AO",244,"Angola"],["AR",54,"Argentina"],["AS",1,"American Samoa"],["AT",43,"Austria"],["AW",297,"Aruba"],["AX",358,"Åland Islands"],["AZ",994,"Azerbaijan"],["BA",387,"Bosnia and Herzegovina"],["BB",1,"Barbados"],["BD",880,"Bangladesh"],["BE",32,"Belgium"],["BF",226,"Burkina Faso"],["BG",359,"Bulgaria"],["BH",973,"Bahrain"],["BI",257,"Burundi"],["BJ",229,"Benin"],["BL",590,"Saint Barthélemy"],["BM",1,"Bermuda"],["BN",673,"Brunei"],["BO",591,"Bolivia"],["BQ",599,"Caribbean Netherlands"],["BR",55,"Brazil"],["BS",1,"Bahamas"],["BT",975,"Bhutan"],["BW",267,"Botswana"],["BY",375,"Belarus"],["BZ",501,"Belize"],["CC",61,"Cocos"],["CD",243,"Congo"],["CF",236,"Central African Republic"],["CG",242,"Congo"],["CH",41,"Switzerland"],["CI",225,"Côte d’Ivoire"],["CK",682,"Cook Islands"],["CL",56,"Chile"],["CM",237,"Cameroon"],["CN",86,"China"],["CO",57,"Colombia"],["CR",506,"Costa Rica"],["CU",53,"Cuba"],["CV",238,"Cape Verde"],["CW",599,"Curaçao"],["CX",61,"Christmas Island"],["CY",357,"Cyprus"],["CZ",420,"Czech Republic"],["DE",49,"Germany"],["DJ",253,"Djibouti"],["DK",45,"Denmark"],["DM",1,"Dominica"],["DO",1,"Dominican Republic"],["DZ",213,"Algeria"],["EC",593,"Ecuador"],["EE",372,"Estonia"],["EG",20,"Egypt"],["EH",212,"Western Sahara"],["ER",291,"Eritrea"],["ES",34,"Spain"],["ET",251,"Ethiopia"],["FI",358,"Finland"],["FJ",679,"Fiji"],["FK",500,"Falkland Islands"],["FM",691,"Micronesia"],["FO",298,"Faroe Islands"],["FR",33,"France"],["GA",241,"Gabon"],["GB",44,"United Kingdom"],["GD",1,"Grenada"],["GE",995,"Georgia"],["GF",594,"French Guiana"],["GG",44,"Guernsey"],["GH",233,"Ghana"],["GI",350,"Gibraltar"],["GL",299,"Greenland"],["GM",220,"Gambia"],["GN",224,"Guinea"],["GP",590,"Guadeloupe"],["GQ",240,"Equatorial Guinea"],["GR",30,"Greece"],["GT",502,"Guatemala"],["GU",1,"Guam"],["GW",245,"Guinea-Bissau"],["GY",592,"Guyana"],["HK",852,"Hong Kong"],["HN",504,"Honduras"],["HR",385,"Croatia"],["HT",509,"Haiti"],["HU",36,"Hungary"],["ID",62,"Indonesia"],["IE",353,"Ireland"],["IL",972,"Israel"],["IM",44,"Isle of Man"],["IN",91,"India"],["IO",246,"British Indian Ocean Territory"],["IQ",964,"Iraq"],["IR",98,"Iran"],["IS",354,"Iceland"],["IT",39,"Italy"],["JE",44,"Jersey"],["JM",1,"Jamaica"],["JO",962,"Jordan"],["JP",81,"Japan"],["KE",254,"Kenya"],["KG",996,"Kyrgyzstan"],["KH",855,"Cambodia"],["KI",686,"Kiribati"],["KM",269,"Comoros"],["KN",1,"Saint Kitts and Nevis"],["KP",850,"North Korea"],["KR",82,"South Korea"],["KW",965,"Kuwait"],["KY",1,"Cayman Islands"],["KZ",7,"Kazakhstan"],["LA",856,"Laos"],["LB",961,"Lebanon"],["LC",1,"Saint Lucia"],["LI",423,"Liechtenstein"],["LK",94,"Sri Lanka"],["LR",231,"Liberia"],["LS",266,"Lesotho"],["LT",370,"Lithuania"],["LU",352,"Luxembourg"],["LV",371,"Latvia"],["LY",218,"Libya"],["MA",212,"Morocco"],["MC",377,"Monaco"],["MD",373,"Moldova"],["ME",382,"Montenegro"],["MF",590,"Saint Martin"],["MG",261,"Madagascar"],["MH",692,"Marshall Islands"],["MK",389,"Macedonia"],["ML",223,"Mali"],["MM",95,"Myanmar"],["MN",976,"Mongolia"],["MO",853,"Macau"],["MP",1,"Northern Mariana Islands"],["MQ",596,"Martinique"],["MR",222,"Mauritania"],["MS",1,"Montserrat"],["MT",356,"Malta"],["MU",230,"Mauritius"],["MV",960,"Maldives"],["MW",265,"Malawi"],["MX",52,"Mexico"],["MY",60,"Malaysia"],["MZ",258,"Mozambique"],["NA",264,"Namibia"],["NC",687,"New Caledonia"],["NE",227,"Niger"],["NF",672,"Norfolk Island"],["NG",234,"Nigeria"],["NI",505,"Nicaragua"],["NL",31,"Netherlands"],["NO",47,"Norway"],["NP",977,"Nepal"],["NR",674,"Nauru"],["NU",683,"Niue"],["OM",968,"Oman"],["PA",507,"Panama"],["PE",51,"Peru"],["PF",689,"French Polynesia"],["PG",675,"Papua New Guinea"],["PH",63,"Philippines"],["PK",92,"Pakistan"],["PL",48,"Poland"],["PM",508,"Saint Pierre and Miquelon"],["PR",1,"Puerto Rico"],["PS",970,"Palestine"],["PT",351,"Portugal"],["PW",680,"Palau"],["PY",595,"Paraguay"],["QA",974,"Qatar"],["RE",262,"Réunion"],["RO",40,"Romania"],["RS",381,"Serbia"],["RU",7,"Russia"],["RW",250,"Rwanda"],["SA",966,"Saudi Arabia"],["SB",677,"Solomon Islands"],["SC",248,"Seychelles"],["SD",249,"Sudan"],["SE",46,"Sweden"],["SG",65,"Singapore"],["SH",290,"Saint Helena"],["SI",386,"Slovenia"],["SJ",47,"Svalbard and Jan Mayen"],["SK",421,"Slovakia"],["SL",232,"Sierra Leone"],["SM",378,"San Marino"],["SN",221,"Senegal"],["SO",252,"Somalia"],["SR",597,"Suriname"],["SS",211,"South Sudan"],["ST",239,"São Tomé and Príncipe"],["SV",503,"El Salvador"],["SX",1,"Sint Maarten"],["SY",963,"Syria"],["SZ",268,"Swaziland"],["TA",290,"Tristan da Cunha"],["TC",1,"Turks and Caicos Islands"],["TD",235,"Chad"],["TG",228,"Togo"],["TH",66,"Thailand"],["TJ",992,"Tajikistan"],["TK",690,"Tokelau"],["TL",670,"Timor-Leste"],["TM",993,"Turkmenistan"],["TN",216,"Tunisia"],["TO",676,"Tonga"],["TR",90,"Turkey"],["TT",1,"Trinidad and Tobago"],["TV",688,"Tuvalu"],["TW",886,"Taiwan"],["TZ",255,"Tanzania"],["UA",380,"Ukraine"],["UG",256,"Uganda"],["UY",598,"Uruguay"],["UZ",998,"Uzbekistan"],["VA",39,"Vatican City"],["VC",1,"Saint Vincent and the Grenadines"],["VE",58,"Venezuela"],["VG",1,"British Virgin Islands"],["VI",1,"U.S. Virgin Islands"],["VN",84,"Vietnam"],["VU",678,"Vanuatu"],["WF",681,"Wallis and Futuna"],["WS",685,"Samoa"],["XK",383,"Kosovo"],["YE",967,"Yemen"],["YT",262,"Mayotte"],["ZA",27,"South Africa"],["ZM",260,"Zambia"],["ZW",263,"Zimbabwe"]]');
2
+ export var DEFAULT_COUNTRY = 'US';
3
+ var COUNTRIES = [];
4
+ var COUNTRY_CODE_MAP = /*#__PURE__*/new Map();
5
+ var COUNTRY_NAME_MAP = /*#__PURE__*/new Map();
6
+
7
+ for (var [country, code, name] of COUNTRY_CODE_METADATA) {
8
+ COUNTRIES.push(country);
9
+ COUNTRY_CODE_MAP.set(country, code);
10
+ COUNTRY_NAME_MAP.set(country, name);
11
+ }
12
+
13
+ export function listCountries() {
14
+ return COUNTRIES;
15
+ }
16
+ export function isCountryISO(value) {
17
+ return typeof value == 'string' && COUNTRY_CODE_MAP.has(value);
18
+ }
19
+ export function toCountryISO(value) {
20
+ return isCountryISO(value) ? value : DEFAULT_COUNTRY;
21
+ }
22
+ export function getCountryCode(country) {
23
+ return COUNTRY_CODE_MAP.get(country) || 0;
24
+ }
25
+ export function formatCountry(country) {
26
+ return COUNTRY_NAME_MAP.get(country) || 'Invalid Country ISO';
27
+ }
@@ -0,0 +1,21 @@
1
+ import { useMemo } from 'react';
2
+ import { usePhoneService } from "../phone-service/PhoneService.js";
3
+ export function useFormattedPhoneNumber(input) {
4
+ var {
5
+ format,
6
+ country,
7
+ fallback = ''
8
+ } = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : {};
9
+ var phoneService = usePhoneService();
10
+ return useMemo(() => {
11
+ if (phoneService.checkPossibility(input) !== 'is-possible') {
12
+ return fallback;
13
+ }
14
+
15
+ return phoneService.format(input, {
16
+ format,
17
+ country,
18
+ fallback
19
+ });
20
+ }, [phoneService, input, format, country, fallback]);
21
+ }
@@ -0,0 +1,6 @@
1
+ export * from "./country-code-metadata/CountryCodeMetadata.js";
2
+ export * from "./formatted-phone-number/FormattedPhoneNumber.js";
3
+ export * from "./phone-field/PhoneField.js";
4
+ export * from "./phone-link/PhoneLink.js";
5
+ export * from "./phone-service/PhoneService.js";
6
+ export * from "./phone-text/PhoneText.js";