@jakguru/phone-object
Version:
An immutable data structure representing a specific phone number and accompanying methods. It contains class and instance methods of creating, parsing, validating, and formatting phone numbers. Based on google-libphonenumber, which is in turn based on Goo
482 lines (479 loc) • 7.15 kB
text/typescript
/**
* An interface describing an object where a NANPA area code is a key, and a NANPA country code is a value.
*/
export interface AreaCodeMap {
[areaCode: string]: string;
}
/**
* A map of NANPA area codes to NANPA country codes.
*/
export const areaCodeMap: AreaCodeMap = {
'201': 'US',
'202': 'US',
'203': 'US',
'204': 'CA',
'205': 'US',
'206': 'US',
'207': 'US',
'208': 'US',
'209': 'US',
'210': 'US',
'212': 'US',
'213': 'US',
'214': 'US',
'215': 'US',
'216': 'US',
'217': 'US',
'218': 'US',
'219': 'US',
'220': 'US',
'223': 'US',
'224': 'US',
'225': 'US',
'226': 'CA',
'228': 'US',
'229': 'US',
'231': 'US',
'234': 'US',
'236': 'CA',
'239': 'US',
'240': 'US',
'242': 'BS',
'246': 'BB',
'248': 'US',
'249': 'CA',
'250': 'CA',
'251': 'US',
'252': 'US',
'253': 'US',
'254': 'US',
'256': 'US',
'260': 'US',
'262': 'US',
'263': 'CA',
'264': 'AI',
'267': 'US',
'268': 'AG',
'269': 'US',
'270': 'US',
'272': 'US',
'276': 'US',
'279': 'US',
'281': 'US',
'283': 'US',
'284': 'VG',
'289': 'CA',
'301': 'US',
'302': 'US',
'303': 'US',
'304': 'US',
'305': 'US',
'306': 'CA',
'307': 'US',
'308': 'US',
'309': 'US',
'310': 'US',
'312': 'US',
'313': 'US',
'314': 'US',
'315': 'US',
'316': 'US',
'317': 'US',
'318': 'US',
'319': 'US',
'320': 'US',
'321': 'US',
'323': 'US',
'325': 'US',
'326': 'US',
'330': 'US',
'331': 'US',
'332': 'US',
'334': 'US',
'336': 'US',
'337': 'US',
'339': 'US',
'340': 'VI',
'341': 'US',
'343': 'CA',
'345': 'KY',
'346': 'US',
'347': 'US',
'350': 'US',
'351': 'US',
'352': 'US',
'354': 'CA',
'360': 'US',
'361': 'US',
'364': 'US',
'365': 'CA',
'367': 'CA',
'368': 'CA',
'380': 'US',
'382': 'CA',
'385': 'US',
'386': 'US',
'401': 'US',
'402': 'US',
'403': 'CA',
'404': 'US',
'405': 'US',
'406': 'US',
'407': 'US',
'408': 'US',
'409': 'US',
'410': 'US',
'412': 'US',
'413': 'US',
'414': 'US',
'415': 'US',
'416': 'CA',
'417': 'US',
'418': 'CA',
'419': 'US',
'423': 'US',
'424': 'US',
'425': 'US',
'430': 'US',
'431': 'CA',
'432': 'US',
'434': 'US',
'435': 'US',
'437': 'CA',
'438': 'CA',
'440': 'US',
'441': 'BM',
'442': 'US',
'443': 'US',
'445': 'US',
'447': 'US',
'448': 'US',
'450': 'CA',
'458': 'US',
'463': 'US',
'464': 'US',
'468': 'CA',
'469': 'US',
'470': 'US',
'473': 'GD',
'474': 'CA',
'475': 'US',
'478': 'US',
'479': 'US',
'480': 'US',
'484': 'US',
'500': 'US',
'501': 'US',
'502': 'US',
'503': 'US',
'504': 'US',
'505': 'US',
'506': 'CA',
'507': 'US',
'508': 'US',
'509': 'US',
'510': 'US',
'512': 'US',
'513': 'US',
'514': 'CA',
'515': 'US',
'516': 'US',
'517': 'US',
'518': 'US',
'519': 'CA',
'520': 'US',
'521': 'US',
'522': 'US',
'525': 'US',
'526': 'US',
'527': 'US',
'530': 'US',
'531': 'US',
'533': 'US',
'534': 'US',
'539': 'US',
'540': 'US',
'541': 'US',
'544': 'US',
'548': 'CA',
'551': 'US',
'559': 'US',
'561': 'US',
'562': 'US',
'563': 'US',
'564': 'US',
'566': 'US',
'567': 'US',
'570': 'US',
'571': 'US',
'572': 'US',
'573': 'US',
'574': 'US',
'575': 'US',
'577': 'US',
'579': 'CA',
'580': 'US',
'581': 'CA',
'582': 'US',
'584': 'CA',
'585': 'US',
'586': 'US',
'587': 'CA',
'588': 'US',
'600': 'CA',
'601': 'US',
'602': 'US',
'603': 'US',
'604': 'CA',
'605': 'US',
'606': 'US',
'607': 'US',
'608': 'US',
'609': 'US',
'610': 'US',
'612': 'US',
'613': 'CA',
'614': 'US',
'615': 'US',
'616': 'US',
'617': 'US',
'618': 'US',
'619': 'US',
'620': 'US',
'622': 'CA',
'623': 'US',
'626': 'US',
'628': 'US',
'629': 'US',
'630': 'US',
'631': 'US',
'636': 'US',
'639': 'CA',
'640': 'US',
'641': 'US',
'646': 'US',
'647': 'CA',
'649': 'TC',
'650': 'US',
'651': 'US',
'656': 'US',
'657': 'US',
'658': 'JM',
'659': 'US',
'660': 'US',
'661': 'US',
'662': 'US',
'664': 'MS',
'667': 'US',
'669': 'US',
'670': 'MP',
'671': 'GU',
'672': 'CA',
'678': 'US',
'680': 'US',
'681': 'US',
'682': 'US',
'683': 'CA',
'684': 'AS',
'689': 'US',
'701': 'US',
'702': 'US',
'703': 'US',
'704': 'US',
'705': 'CA',
'706': 'US',
'707': 'US',
'708': 'US',
'709': 'CA',
'712': 'US',
'713': 'US',
'714': 'US',
'715': 'US',
'716': 'US',
'717': 'US',
'718': 'US',
'719': 'US',
'720': 'US',
'721': 'SX',
'724': 'US',
'725': 'US',
'726': 'US',
'727': 'US',
'731': 'US',
'732': 'US',
'734': 'US',
'737': 'US',
'740': 'US',
'742': 'CA',
'743': 'US',
'747': 'US',
'753': 'CA',
'754': 'US',
'757': 'US',
'758': 'LC',
'760': 'US',
'762': 'US',
'763': 'US',
'765': 'US',
'767': 'DM',
'769': 'US',
'770': 'US',
'771': 'US',
'772': 'US',
'773': 'US',
'774': 'US',
'775': 'US',
'778': 'CA',
'779': 'US',
'780': 'CA',
'781': 'US',
'782': 'CA',
'784': 'VC',
'785': 'US',
'786': 'US',
'787': 'PR',
'800': 'US',
'801': 'US',
'802': 'US',
'803': 'US',
'804': 'US',
'805': 'US',
'806': 'US',
'807': 'CA',
'808': 'US',
'809': 'DO',
'810': 'US',
'812': 'US',
'813': 'US',
'814': 'US',
'815': 'US',
'816': 'US',
'817': 'US',
'818': 'US',
'819': 'CA',
'820': 'US',
'825': 'CA',
'826': 'US',
'828': 'US',
'829': 'DO',
'830': 'US',
'831': 'US',
'832': 'US',
'833': 'US',
'835': 'US',
'838': 'US',
'839': 'US',
'840': 'US',
'843': 'US',
'844': 'US',
'845': 'US',
'847': 'US',
'848': 'US',
'849': 'DO',
'850': 'US',
'854': 'US',
'855': 'US',
'856': 'US',
'857': 'US',
'858': 'US',
'859': 'US',
'860': 'US',
'862': 'US',
'863': 'US',
'864': 'US',
'865': 'US',
'866': 'US',
'867': 'CA',
'868': 'TT',
'869': 'KN',
'870': 'US',
'872': 'US',
'873': 'CA',
'876': 'JM',
'877': 'US',
'878': 'US',
'888': 'US',
'900': 'US',
'901': 'US',
'902': 'CA',
'903': 'US',
'904': 'US',
'905': 'CA',
'906': 'US',
'907': 'US',
'908': 'US',
'909': 'US',
'910': 'US',
'912': 'US',
'913': 'US',
'914': 'US',
'915': 'US',
'916': 'US',
'917': 'US',
'918': 'US',
'919': 'US',
'920': 'US',
'925': 'US',
'928': 'US',
'929': 'US',
'930': 'US',
'931': 'US',
'934': 'US',
'936': 'US',
'937': 'US',
'938': 'US',
'939': 'PR',
'940': 'US',
'941': 'US',
'943': 'US',
'945': 'US',
'947': 'US',
'948': 'US',
'949': 'US',
'951': 'US',
'952': 'US',
'954': 'US',
'956': 'US',
'959': 'US',
'970': 'US',
'971': 'US',
'972': 'US',
'973': 'US',
'978': 'US',
'979': 'US',
'980': 'US',
'984': 'US',
'985': 'US',
'986': 'US',
'989': 'US',
}
/**
* A list of NANPA country codes.
*/
export const nanpaCountries: Array<string> = [
'US',
'CA',
'BS',
'BB',
'AI',
'AG',
'VG',
'VI',
'KY',
'BM',
'GD',
'TC',
'JM',
'MS',
'MP',
'GU',
'AS',
'SX',
'LC',
'DM',
'VC',
'PR',
'DO',
'TT',
'KN',
]