random-world
Version:
Node.js module to generate random collections of data.
95 lines (89 loc) • 4.71 kB
JavaScript
/**
* Phone number data
*/
// International country calling codes
const countryCodes = [
{ country: 'US', code: '+1', name: 'United States' },
{ country: 'GB', code: '+44', name: 'United Kingdom' },
{ country: 'CA', code: '+1', name: 'Canada' },
{ country: 'AU', code: '+61', name: 'Australia' },
{ country: 'DE', code: '+49', name: 'Germany' },
{ country: 'FR', code: '+33', name: 'France' },
{ country: 'IT', code: '+39', name: 'Italy' },
{ country: 'ES', code: '+34', name: 'Spain' },
{ country: 'JP', code: '+81', name: 'Japan' },
{ country: 'CN', code: '+86', name: 'China' },
{ country: 'IN', code: '+91', name: 'India' },
{ country: 'BR', code: '+55', name: 'Brazil' },
{ country: 'MX', code: '+52', name: 'Mexico' },
{ country: 'RU', code: '+7', name: 'Russia' },
{ country: 'KR', code: '+82', name: 'South Korea' },
{ country: 'NL', code: '+31', name: 'Netherlands' },
{ country: 'SE', code: '+46', name: 'Sweden' },
{ country: 'NO', code: '+47', name: 'Norway' },
{ country: 'DK', code: '+45', name: 'Denmark' },
{ country: 'FI', code: '+358', name: 'Finland' },
{ country: 'PL', code: '+48', name: 'Poland' },
{ country: 'BE', code: '+32', name: 'Belgium' },
{ country: 'AT', code: '+43', name: 'Austria' },
{ country: 'CH', code: '+41', name: 'Switzerland' },
{ country: 'IE', code: '+353', name: 'Ireland' },
{ country: 'NZ', code: '+64', name: 'New Zealand' },
{ country: 'SG', code: '+65', name: 'Singapore' },
{ country: 'HK', code: '+852', name: 'Hong Kong' },
{ country: 'AE', code: '+971', name: 'United Arab Emirates' },
{ country: 'ZA', code: '+27', name: 'South Africa' }
];
// US area codes (sample of major metropolitan areas)
const usAreaCodes = [
'201', '202', '203', '205', '206', '207', '208', '209', '210', '212',
'213', '214', '215', '216', '217', '218', '219', '224', '225', '228',
'229', '231', '234', '239', '240', '248', '251', '252', '253', '254',
'256', '260', '262', '267', '269', '270', '272', '276', '281', '301',
'302', '303', '304', '305', '307', '308', '309', '310', '312', '313',
'314', '315', '316', '317', '318', '319', '320', '321', '323', '325',
'330', '331', '334', '336', '337', '339', '347', '351', '352', '360',
'361', '386', '401', '402', '404', '405', '406', '407', '408', '409',
'410', '412', '413', '414', '415', '417', '419', '423', '424', '425',
'430', '432', '434', '435', '440', '442', '443', '458', '469', '470',
'475', '478', '479', '480', '484', '501', '502', '503', '504', '505',
'507', '508', '509', '510', '512', '513', '515', '516', '517', '518',
'520', '530', '531', '534', '539', '540', '541', '551', '559', '561',
'562', '563', '567', '570', '571', '573', '574', '575', '580', '585',
'586', '601', '602', '603', '605', '606', '607', '608', '609', '610',
'612', '614', '615', '616', '617', '618', '619', '620', '623', '626',
'628', '629', '630', '631', '636', '641', '646', '650', '651', '657',
'660', '661', '662', '667', '669', '678', '681', '682', '701', '702',
'703', '704', '706', '707', '708', '712', '713', '714', '715', '716',
'717', '718', '719', '720', '724', '725', '727', '731', '732', '734',
'737', '740', '743', '747', '754', '757', '760', '762', '763', '765',
'769', '770', '772', '773', '774', '775', '779', '781', '785', '786',
'801', '802', '803', '804', '805', '806', '808', '810', '812', '813',
'814', '815', '816', '817', '818', '828', '830', '831', '832', '843',
'845', '847', '848', '850', '856', '857', '858', '859', '860', '862',
'863', '864', '865', '870', '872', '878', '901', '903', '904', '906',
'907', '908', '909', '910', '912', '913', '914', '915', '916', '917',
'918', '919', '920', '925', '928', '929', '931', '936', '937', '938',
'940', '941', '947', '949', '951', '952', '954', '956', '959', '970',
'971', '972', '973', '978', '979', '980', '984', '985', '989'
];
// Type Allocation Codes for IMEI (first 8 digits represent device manufacturer/model)
const tacPrefixes = [
'35', '86', '01', '91', '45', '49', '52', '53', '54', '55',
'35', '36', '37', '38', '39', '86', '87', '88', '89', '90'
];
// Phone number formats by country
const phoneFormats = {
US: '(###) ###-####',
GB: '#### ### ####',
CA: '(###) ###-####',
AU: '#### ### ###',
DE: '#### #######',
FR: '## ## ## ## ##',
IT: '### ### ####',
ES: '### ## ## ##',
JP: '###-####-####',
default: '### ### ####'
};
export { countryCodes, usAreaCodes, tacPrefixes, phoneFormats };
export default { countryCodes, usAreaCodes, tacPrefixes, phoneFormats };