/**
 * 预设的国家码列表（24个常见国家）
 * 
 * 包含：
 * - 亚洲：中国、香港、澳门、台湾、日本、韩国、新加坡、马来西亚、泰国、印度
 * - 欧洲：英国、法国、德国、意大利、西班牙、俄罗斯
 * - 美洲：美国、加拿大、墨西哥、巴西
 * - 大洋洲：澳大利亚、新西兰
 * - 中东：阿联酋、沙特阿拉伯
 */
export var PRESET_COUNTRY_CODES = [
// 亚洲
{
  code: '+86',
  name: '中国',
  flag: '🇨🇳',
  format: 'XXX XXXX XXXX',
  maxLength: 11,
  pattern: /^1[3-9]\d{9}$/
}, {
  code: '+852',
  name: '香港',
  flag: '🇭🇰',
  format: 'XXXX XXXX',
  maxLength: 8,
  pattern: /^\d{8}$/
}, {
  code: '+853',
  name: '澳门',
  flag: '🇲🇴',
  format: 'XXXX XXXX',
  maxLength: 8,
  pattern: /^\d{8}$/
}, {
  code: '+886',
  name: '台湾',
  flag: '🇹🇼',
  format: 'XXXX XXX XXX',
  maxLength: 9,
  pattern: /^\d{9}$/
}, {
  code: '+81',
  name: '日本',
  flag: '🇯🇵',
  format: 'XX-XXXX-XXXX',
  maxLength: 10,
  pattern: /^\d{10}$/
}, {
  code: '+82',
  name: '韩国',
  flag: '🇰🇷',
  format: 'XX-XXXX-XXXX',
  maxLength: 10,
  pattern: /^\d{10}$/
}, {
  code: '+65',
  name: '新加坡',
  flag: '🇸🇬',
  format: 'XXXX XXXX',
  maxLength: 8,
  pattern: /^\d{8}$/
}, {
  code: '+60',
  name: '马来西亚',
  flag: '🇲🇾',
  format: 'XX-XXXX XXXX',
  maxLength: 10,
  pattern: /^\d{9,10}$/
}, {
  code: '+66',
  name: '泰国',
  flag: '🇹🇭',
  format: 'XX-XXX-XXXX',
  maxLength: 9,
  pattern: /^\d{9}$/
}, {
  code: '+91',
  name: '印度',
  flag: '🇮🇳',
  format: 'XXXXX XXXXX',
  maxLength: 10,
  pattern: /^\d{10}$/
},
// 欧洲
{
  code: '+44',
  name: '英国',
  flag: '🇬🇧',
  format: 'XXXX XXX XXXX',
  maxLength: 10,
  pattern: /^\d{10}$/
}, {
  code: '+33',
  name: '法国',
  flag: '🇫🇷',
  format: 'X XX XX XX XX',
  maxLength: 9,
  pattern: /^\d{9}$/
}, {
  code: '+49',
  name: '德国',
  flag: '🇩🇪',
  format: 'XXX XXXXXXX',
  maxLength: 11,
  pattern: /^\d{10,11}$/
}, {
  code: '+39',
  name: '意大利',
  flag: '🇮🇹',
  format: 'XXX XXX XXXX',
  maxLength: 10,
  pattern: /^\d{10}$/
}, {
  code: '+34',
  name: '西班牙',
  flag: '🇪🇸',
  format: 'XXX XX XX XX',
  maxLength: 9,
  pattern: /^\d{9}$/
}, {
  code: '+7',
  name: '俄罗斯',
  flag: '🇷🇺',
  format: 'XXX XXX-XX-XX',
  maxLength: 10,
  pattern: /^\d{10}$/
},
// 美洲
{
  code: '+1',
  name: '美国',
  flag: '🇺🇸',
  format: '(XXX) XXX-XXXX',
  maxLength: 10,
  pattern: /^\d{10}$/
}, {
  code: '+1',
  name: '加拿大',
  flag: '🇨🇦',
  format: '(XXX) XXX-XXXX',
  maxLength: 10,
  pattern: /^\d{10}$/
}, {
  code: '+52',
  name: '墨西哥',
  flag: '🇲🇽',
  format: 'XX XXXX XXXX',
  maxLength: 10,
  pattern: /^\d{10}$/
}, {
  code: '+55',
  name: '巴西',
  flag: '🇧🇷',
  format: 'XX XXXXX-XXXX',
  maxLength: 11,
  pattern: /^\d{10,11}$/
},
// 大洋洲
{
  code: '+61',
  name: '澳大利亚',
  flag: '🇦🇺',
  format: 'XXX XXX XXX',
  maxLength: 9,
  pattern: /^\d{9}$/
}, {
  code: '+64',
  name: '新西兰',
  flag: '🇳🇿',
  format: 'XX XXX XXXX',
  maxLength: 9,
  pattern: /^\d{9}$/
},
// 中东
{
  code: '+971',
  name: '阿联酋',
  flag: '🇦🇪',
  format: 'XX XXX XXXX',
  maxLength: 9,
  pattern: /^\d{9}$/
}, {
  code: '+966',
  name: '沙特阿拉伯',
  flag: '🇸🇦',
  format: 'XX XXX XXXX',
  maxLength: 9,
  pattern: /^\d{9}$/
}];

/**
 * 默认国家码
 */
export var DEFAULT_COUNTRY_CODE = '+86';

/**
 * 常用国家码（可作为默认的 commonCountryCodes）
 */
export var COMMON_COUNTRY_CODES = ['+86', '+1', '+44'];