countries 4.1.1 → 4.2.3

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.
Files changed (526) hide show
  1. checksums.yaml +4 -4
  2. data/.github/workflows/tests.yml +2 -0
  3. data/CHANGELOG.md +97 -5
  4. data/LICENSE +3 -1
  5. data/README.markdown +55 -50
  6. data/Rakefile +25 -31
  7. data/countries.gemspec +5 -5
  8. data/lib/countries/cache/countries.json +1 -1
  9. data/lib/countries/cache/locales/ab.json +1 -1
  10. data/lib/countries/cache/locales/af.json +1 -1
  11. data/lib/countries/cache/locales/ak.json +1 -1
  12. data/lib/countries/cache/locales/am.json +1 -1
  13. data/lib/countries/cache/locales/an.json +1 -1
  14. data/lib/countries/cache/locales/as.json +1 -1
  15. data/lib/countries/cache/locales/ay.json +1 -1
  16. data/lib/countries/cache/locales/az.json +1 -1
  17. data/lib/countries/cache/locales/ba.json +1 -1
  18. data/lib/countries/cache/locales/bg.json +1 -1
  19. data/lib/countries/cache/locales/bi.json +1 -1
  20. data/lib/countries/cache/locales/br.json +1 -1
  21. data/lib/countries/cache/locales/bs.json +1 -1
  22. data/lib/countries/cache/locales/ca.json +1 -1
  23. data/lib/countries/cache/locales/ce.json +1 -1
  24. data/lib/countries/cache/locales/ch.json +1 -1
  25. data/lib/countries/cache/locales/cv.json +1 -1
  26. data/lib/countries/cache/locales/de.json +1 -1
  27. data/lib/countries/cache/locales/dv.json +1 -1
  28. data/lib/countries/cache/locales/dz.json +1 -1
  29. data/lib/countries/cache/locales/ee.json +1 -1
  30. data/lib/countries/cache/locales/en.json +1 -1
  31. data/lib/countries/cache/locales/eo.json +1 -1
  32. data/lib/countries/cache/locales/es.json +1 -1
  33. data/lib/countries/cache/locales/et.json +1 -1
  34. data/lib/countries/cache/locales/ff.json +1 -1
  35. data/lib/countries/cache/locales/fi.json +1 -1
  36. data/lib/countries/cache/locales/fo.json +1 -1
  37. data/lib/countries/cache/locales/fr.json +1 -1
  38. data/lib/countries/cache/locales/fy.json +1 -1
  39. data/lib/countries/cache/locales/ga.json +1 -1
  40. data/lib/countries/cache/locales/gl.json +1 -1
  41. data/lib/countries/cache/locales/gn.json +1 -1
  42. data/lib/countries/cache/locales/gu.json +1 -1
  43. data/lib/countries/cache/locales/gv.json +1 -1
  44. data/lib/countries/cache/locales/ha.json +1 -1
  45. data/lib/countries/cache/locales/he.json +1 -1
  46. data/lib/countries/cache/locales/hi.json +1 -1
  47. data/lib/countries/cache/locales/hr.json +1 -1
  48. data/lib/countries/cache/locales/ht.json +1 -1
  49. data/lib/countries/cache/locales/hy.json +1 -1
  50. data/lib/countries/cache/locales/io.json +1 -1
  51. data/lib/countries/cache/locales/is.json +1 -1
  52. data/lib/countries/cache/locales/iu.json +1 -1
  53. data/lib/countries/cache/locales/ja.json +1 -1
  54. data/lib/countries/cache/locales/ka.json +1 -1
  55. data/lib/countries/cache/locales/ki.json +1 -1
  56. data/lib/countries/cache/locales/kk.json +1 -1
  57. data/lib/countries/cache/locales/kl.json +1 -1
  58. data/lib/countries/cache/locales/km.json +1 -1
  59. data/lib/countries/cache/locales/kn.json +1 -1
  60. data/lib/countries/cache/locales/kv.json +1 -1
  61. data/lib/countries/cache/locales/kw.json +1 -1
  62. data/lib/countries/cache/locales/ky.json +1 -1
  63. data/lib/countries/cache/locales/lo.json +1 -1
  64. data/lib/countries/cache/locales/lt.json +1 -1
  65. data/lib/countries/cache/locales/lv.json +1 -1
  66. data/lib/countries/cache/locales/mi.json +1 -1
  67. data/lib/countries/cache/locales/mk.json +1 -1
  68. data/lib/countries/cache/locales/ml.json +1 -1
  69. data/lib/countries/cache/locales/mn.json +1 -1
  70. data/lib/countries/cache/locales/ms.json +1 -1
  71. data/lib/countries/cache/locales/mt.json +1 -1
  72. data/lib/countries/cache/locales/my.json +1 -1
  73. data/lib/countries/cache/locales/na.json +1 -1
  74. data/lib/countries/cache/locales/nb.json +1 -1
  75. data/lib/countries/cache/locales/ne.json +1 -1
  76. data/lib/countries/cache/locales/nl.json +1 -1
  77. data/lib/countries/cache/locales/nn.json +1 -1
  78. data/lib/countries/cache/locales/nv.json +1 -1
  79. data/lib/countries/cache/locales/oc.json +1 -1
  80. data/lib/countries/cache/locales/pi.json +1 -1
  81. data/lib/countries/cache/locales/ps.json +1 -1
  82. data/lib/countries/cache/locales/pt-br.json +1 -1
  83. data/lib/countries/cache/locales/ro.json +1 -1
  84. data/lib/countries/cache/locales/ru.json +1 -1
  85. data/lib/countries/cache/locales/rw.json +1 -1
  86. data/lib/countries/cache/locales/sc.json +1 -1
  87. data/lib/countries/cache/locales/sd.json +1 -1
  88. data/lib/countries/cache/locales/si.json +1 -1
  89. data/lib/countries/cache/locales/sk.json +1 -1
  90. data/lib/countries/cache/locales/sl.json +1 -1
  91. data/lib/countries/cache/locales/so.json +1 -1
  92. data/lib/countries/cache/locales/sr.json +1 -1
  93. data/lib/countries/cache/locales/sv.json +1 -1
  94. data/lib/countries/cache/locales/sw.json +1 -1
  95. data/lib/countries/cache/locales/ta.json +1 -1
  96. data/lib/countries/cache/locales/te.json +1 -1
  97. data/lib/countries/cache/locales/th.json +1 -1
  98. data/lib/countries/cache/locales/ti.json +1 -1
  99. data/lib/countries/cache/locales/tk.json +1 -1
  100. data/lib/countries/cache/locales/tl.json +1 -1
  101. data/lib/countries/cache/locales/tr.json +1 -1
  102. data/lib/countries/cache/locales/tt.json +1 -1
  103. data/lib/countries/cache/locales/ur.json +1 -1
  104. data/lib/countries/cache/locales/uz.json +1 -1
  105. data/lib/countries/cache/locales/ve.json +1 -1
  106. data/lib/countries/cache/locales/vi.json +1 -1
  107. data/lib/countries/cache/locales/wa.json +1 -1
  108. data/lib/countries/cache/locales/wo.json +1 -1
  109. data/lib/countries/cache/locales/xh.json +1 -1
  110. data/lib/countries/cache/locales/yo.json +1 -1
  111. data/lib/countries/cache/locales/zh-cn.json +1 -1
  112. data/lib/countries/cache/locales/zh.json +1 -1
  113. data/lib/countries/cache/locales/zu.json +1 -1
  114. data/lib/countries/configuration.rb +13 -0
  115. data/lib/countries/country/class_methods.rb +19 -6
  116. data/lib/countries/country/currency_methods.rb +4 -1
  117. data/lib/countries/country/emoji.rb +3 -0
  118. data/lib/countries/country.rb +147 -7
  119. data/lib/countries/data/countries/AD.yaml +28 -29
  120. data/lib/countries/data/countries/AE.yaml +32 -33
  121. data/lib/countries/data/countries/AF.yaml +32 -33
  122. data/lib/countries/data/countries/AG.yaml +28 -29
  123. data/lib/countries/data/countries/AI.yaml +27 -28
  124. data/lib/countries/data/countries/AL.yaml +28 -29
  125. data/lib/countries/data/countries/AM.yaml +30 -31
  126. data/lib/countries/data/countries/AO.yaml +25 -26
  127. data/lib/countries/data/countries/AQ.yaml +24 -25
  128. data/lib/countries/data/countries/AR.yaml +30 -31
  129. data/lib/countries/data/countries/AS.yaml +31 -32
  130. data/lib/countries/data/countries/AT.yaml +36 -37
  131. data/lib/countries/data/countries/AU.yaml +33 -34
  132. data/lib/countries/data/countries/AW.yaml +25 -26
  133. data/lib/countries/data/countries/AX.yaml +27 -28
  134. data/lib/countries/data/countries/AZ.yaml +30 -31
  135. data/lib/countries/data/countries/BA.yaml +32 -33
  136. data/lib/countries/data/countries/BB.yaml +28 -29
  137. data/lib/countries/data/countries/BD.yaml +27 -28
  138. data/lib/countries/data/countries/BE.yaml +41 -42
  139. data/lib/countries/data/countries/BF.yaml +27 -28
  140. data/lib/countries/data/countries/BG.yaml +36 -37
  141. data/lib/countries/data/countries/BH.yaml +28 -29
  142. data/lib/countries/data/countries/BI.yaml +27 -28
  143. data/lib/countries/data/countries/BJ.yaml +26 -27
  144. data/lib/countries/data/countries/BL.yaml +25 -26
  145. data/lib/countries/data/countries/BM.yaml +29 -30
  146. data/lib/countries/data/countries/BN.yaml +26 -27
  147. data/lib/countries/data/countries/BO.yaml +31 -32
  148. data/lib/countries/data/countries/BQ.yaml +28 -29
  149. data/lib/countries/data/countries/BR.yaml +35 -36
  150. data/lib/countries/data/countries/BS.yaml +27 -28
  151. data/lib/countries/data/countries/BT.yaml +28 -29
  152. data/lib/countries/data/countries/BV.yaml +23 -24
  153. data/lib/countries/data/countries/BW.yaml +27 -28
  154. data/lib/countries/data/countries/BY.yaml +30 -31
  155. data/lib/countries/data/countries/BZ.yaml +28 -29
  156. data/lib/countries/data/countries/CA.yaml +30 -31
  157. data/lib/countries/data/countries/CC.yaml +28 -29
  158. data/lib/countries/data/countries/CD.yaml +35 -36
  159. data/lib/countries/data/countries/CF.yaml +29 -30
  160. data/lib/countries/data/countries/CG.yaml +29 -30
  161. data/lib/countries/data/countries/CH.yaml +40 -41
  162. data/lib/countries/data/countries/CI.yaml +27 -28
  163. data/lib/countries/data/countries/CK.yaml +27 -28
  164. data/lib/countries/data/countries/CL.yaml +32 -33
  165. data/lib/countries/data/countries/CM.yaml +29 -30
  166. data/lib/countries/data/countries/CN.yaml +28 -29
  167. data/lib/countries/data/countries/CO.yaml +28 -29
  168. data/lib/countries/data/countries/CR.yaml +26 -27
  169. data/lib/countries/data/countries/CU.yaml +27 -28
  170. data/lib/countries/data/countries/CV.yaml +28 -29
  171. data/lib/countries/data/countries/CW.yaml +25 -26
  172. data/lib/countries/data/countries/CX.yaml +30 -31
  173. data/lib/countries/data/countries/CY.yaml +40 -41
  174. data/lib/countries/data/countries/CZ.yaml +38 -39
  175. data/lib/countries/data/countries/DE.yaml +36 -37
  176. data/lib/countries/data/countries/DJ.yaml +29 -30
  177. data/lib/countries/data/countries/DK.yaml +35 -36
  178. data/lib/countries/data/countries/DM.yaml +26 -27
  179. data/lib/countries/data/countries/DO.yaml +28 -29
  180. data/lib/countries/data/countries/DZ.yaml +28 -29
  181. data/lib/countries/data/countries/EC.yaml +28 -29
  182. data/lib/countries/data/countries/EE.yaml +35 -36
  183. data/lib/countries/data/countries/EG.yaml +28 -29
  184. data/lib/countries/data/countries/EH.yaml +30 -31
  185. data/lib/countries/data/countries/ER.yaml +31 -32
  186. data/lib/countries/data/countries/ES.yaml +36 -37
  187. data/lib/countries/data/countries/ET.yaml +28 -29
  188. data/lib/countries/data/countries/FI.yaml +38 -39
  189. data/lib/countries/data/countries/FJ.yaml +33 -34
  190. data/lib/countries/data/countries/FK.yaml +29 -30
  191. data/lib/countries/data/countries/FM.yaml +28 -29
  192. data/lib/countries/data/countries/FO.yaml +28 -29
  193. data/lib/countries/data/countries/FR.yaml +37 -38
  194. data/lib/countries/data/countries/GA.yaml +27 -28
  195. data/lib/countries/data/countries/GB.yaml +39 -38
  196. data/lib/countries/data/countries/GD.yaml +26 -27
  197. data/lib/countries/data/countries/GE.yaml +28 -29
  198. data/lib/countries/data/countries/GF.yaml +29 -30
  199. data/lib/countries/data/countries/GG.yaml +30 -31
  200. data/lib/countries/data/countries/GH.yaml +27 -28
  201. data/lib/countries/data/countries/GI.yaml +26 -27
  202. data/lib/countries/data/countries/GL.yaml +29 -30
  203. data/lib/countries/data/countries/GM.yaml +25 -26
  204. data/lib/countries/data/countries/GN.yaml +30 -31
  205. data/lib/countries/data/countries/GP.yaml +27 -28
  206. data/lib/countries/data/countries/GQ.yaml +29 -30
  207. data/lib/countries/data/countries/GR.yaml +37 -38
  208. data/lib/countries/data/countries/GS.yaml +27 -28
  209. data/lib/countries/data/countries/GT.yaml +26 -27
  210. data/lib/countries/data/countries/GU.yaml +31 -32
  211. data/lib/countries/data/countries/GW.yaml +28 -29
  212. data/lib/countries/data/countries/GY.yaml +26 -27
  213. data/lib/countries/data/countries/HK.yaml +28 -29
  214. data/lib/countries/data/countries/HM.yaml +27 -28
  215. data/lib/countries/data/countries/HN.yaml +27 -28
  216. data/lib/countries/data/countries/HR.yaml +37 -38
  217. data/lib/countries/data/countries/HT.yaml +29 -30
  218. data/lib/countries/data/countries/HU.yaml +37 -38
  219. data/lib/countries/data/countries/ID.yaml +28 -29
  220. data/lib/countries/data/countries/IE.yaml +39 -40
  221. data/lib/countries/data/countries/IL.yaml +35 -31
  222. data/lib/countries/data/countries/IM.yaml +29 -30
  223. data/lib/countries/data/countries/IN.yaml +30 -31
  224. data/lib/countries/data/countries/IO.yaml +26 -27
  225. data/lib/countries/data/countries/IQ.yaml +28 -29
  226. data/lib/countries/data/countries/IR.yaml +28 -29
  227. data/lib/countries/data/countries/IS.yaml +35 -36
  228. data/lib/countries/data/countries/IT.yaml +36 -37
  229. data/lib/countries/data/countries/JE.yaml +26 -27
  230. data/lib/countries/data/countries/JM.yaml +28 -29
  231. data/lib/countries/data/countries/JO.yaml +28 -29
  232. data/lib/countries/data/countries/JP.yaml +28 -29
  233. data/lib/countries/data/countries/KE.yaml +29 -30
  234. data/lib/countries/data/countries/KG.yaml +30 -31
  235. data/lib/countries/data/countries/KH.yaml +28 -29
  236. data/lib/countries/data/countries/KI.yaml +25 -26
  237. data/lib/countries/data/countries/KM.yaml +29 -30
  238. data/lib/countries/data/countries/KN.yaml +29 -29
  239. data/lib/countries/data/countries/KP.yaml +27 -28
  240. data/lib/countries/data/countries/KR.yaml +28 -29
  241. data/lib/countries/data/countries/KW.yaml +28 -29
  242. data/lib/countries/data/countries/KY.yaml +29 -30
  243. data/lib/countries/data/countries/KZ.yaml +30 -31
  244. data/lib/countries/data/countries/LA.yaml +27 -28
  245. data/lib/countries/data/countries/LB.yaml +30 -31
  246. data/lib/countries/data/countries/LC.yaml +28 -29
  247. data/lib/countries/data/countries/LI.yaml +27 -28
  248. data/lib/countries/data/countries/LK.yaml +28 -29
  249. data/lib/countries/data/countries/LR.yaml +28 -29
  250. data/lib/countries/data/countries/LS.yaml +28 -29
  251. data/lib/countries/data/countries/LT.yaml +37 -38
  252. data/lib/countries/data/countries/LU.yaml +39 -40
  253. data/lib/countries/data/countries/LV.yaml +36 -37
  254. data/lib/countries/data/countries/LY.yaml +27 -28
  255. data/lib/countries/data/countries/MA.yaml +28 -29
  256. data/lib/countries/data/countries/MC.yaml +28 -29
  257. data/lib/countries/data/countries/MD.yaml +28 -29
  258. data/lib/countries/data/countries/ME.yaml +33 -34
  259. data/lib/countries/data/countries/MF.yaml +29 -30
  260. data/lib/countries/data/countries/MG.yaml +30 -31
  261. data/lib/countries/data/countries/MH.yaml +30 -31
  262. data/lib/countries/data/countries/MK.yaml +28 -29
  263. data/lib/countries/data/countries/ML.yaml +25 -26
  264. data/lib/countries/data/countries/MM.yaml +27 -28
  265. data/lib/countries/data/countries/MN.yaml +28 -29
  266. data/lib/countries/data/countries/MO.yaml +28 -29
  267. data/lib/countries/data/countries/MP.yaml +31 -32
  268. data/lib/countries/data/countries/MQ.yaml +27 -28
  269. data/lib/countries/data/countries/MR.yaml +29 -30
  270. data/lib/countries/data/countries/MS.yaml +26 -27
  271. data/lib/countries/data/countries/MT.yaml +36 -37
  272. data/lib/countries/data/countries/MU.yaml +28 -29
  273. data/lib/countries/data/countries/MV.yaml +28 -29
  274. data/lib/countries/data/countries/MW.yaml +27 -28
  275. data/lib/countries/data/countries/MX.yaml +33 -34
  276. data/lib/countries/data/countries/MY.yaml +30 -31
  277. data/lib/countries/data/countries/MZ.yaml +28 -29
  278. data/lib/countries/data/countries/NA.yaml +30 -31
  279. data/lib/countries/data/countries/NC.yaml +29 -30
  280. data/lib/countries/data/countries/NE.yaml +27 -28
  281. data/lib/countries/data/countries/NF.yaml +29 -30
  282. data/lib/countries/data/countries/NG.yaml +33 -34
  283. data/lib/countries/data/countries/NI.yaml +26 -27
  284. data/lib/countries/data/countries/NL.yaml +36 -37
  285. data/lib/countries/data/countries/NO.yaml +36 -37
  286. data/lib/countries/data/countries/NP.yaml +32 -33
  287. data/lib/countries/data/countries/NR.yaml +27 -28
  288. data/lib/countries/data/countries/NU.yaml +25 -26
  289. data/lib/countries/data/countries/NZ.yaml +34 -35
  290. data/lib/countries/data/countries/OM.yaml +28 -29
  291. data/lib/countries/data/countries/PA.yaml +26 -27
  292. data/lib/countries/data/countries/PE.yaml +28 -29
  293. data/lib/countries/data/countries/PF.yaml +29 -30
  294. data/lib/countries/data/countries/PG.yaml +28 -29
  295. data/lib/countries/data/countries/PH.yaml +35 -36
  296. data/lib/countries/data/countries/PK.yaml +30 -31
  297. data/lib/countries/data/countries/PL.yaml +36 -37
  298. data/lib/countries/data/countries/PM.yaml +29 -30
  299. data/lib/countries/data/countries/PN.yaml +27 -28
  300. data/lib/countries/data/countries/PR.yaml +28 -29
  301. data/lib/countries/data/countries/PS.yaml +31 -32
  302. data/lib/countries/data/countries/PT.yaml +33 -34
  303. data/lib/countries/data/countries/PW.yaml +26 -27
  304. data/lib/countries/data/countries/PY.yaml +28 -29
  305. data/lib/countries/data/countries/QA.yaml +27 -28
  306. data/lib/countries/data/countries/RE.yaml +28 -29
  307. data/lib/countries/data/countries/RO.yaml +37 -38
  308. data/lib/countries/data/countries/RS.yaml +28 -29
  309. data/lib/countries/data/countries/RU.yaml +28 -29
  310. data/lib/countries/data/countries/RW.yaml +31 -32
  311. data/lib/countries/data/countries/SA.yaml +33 -29
  312. data/lib/countries/data/countries/SB.yaml +27 -28
  313. data/lib/countries/data/countries/SC.yaml +28 -29
  314. data/lib/countries/data/countries/SD.yaml +30 -31
  315. data/lib/countries/data/countries/SE.yaml +37 -38
  316. data/lib/countries/data/countries/SG.yaml +32 -33
  317. data/lib/countries/data/countries/SH.yaml +29 -30
  318. data/lib/countries/data/countries/SI.yaml +36 -37
  319. data/lib/countries/data/countries/SJ.yaml +29 -30
  320. data/lib/countries/data/countries/SK.yaml +36 -37
  321. data/lib/countries/data/countries/SL.yaml +25 -26
  322. data/lib/countries/data/countries/SM.yaml +28 -29
  323. data/lib/countries/data/countries/SN.yaml +27 -28
  324. data/lib/countries/data/countries/SO.yaml +30 -31
  325. data/lib/countries/data/countries/SR.yaml +26 -27
  326. data/lib/countries/data/countries/SS.yaml +29 -30
  327. data/lib/countries/data/countries/ST.yaml +27 -28
  328. data/lib/countries/data/countries/SV.yaml +27 -28
  329. data/lib/countries/data/countries/SX.yaml +28 -29
  330. data/lib/countries/data/countries/SY.yaml +27 -28
  331. data/lib/countries/data/countries/SZ.yaml +30 -31
  332. data/lib/countries/data/countries/TC.yaml +30 -31
  333. data/lib/countries/data/countries/TD.yaml +29 -30
  334. data/lib/countries/data/countries/TF.yaml +28 -29
  335. data/lib/countries/data/countries/TG.yaml +25 -26
  336. data/lib/countries/data/countries/TH.yaml +34 -35
  337. data/lib/countries/data/countries/TJ.yaml +30 -31
  338. data/lib/countries/data/countries/TK.yaml +27 -28
  339. data/lib/countries/data/countries/TL.yaml +27 -28
  340. data/lib/countries/data/countries/TM.yaml +30 -31
  341. data/lib/countries/data/countries/TN.yaml +30 -31
  342. data/lib/countries/data/countries/TO.yaml +29 -30
  343. data/lib/countries/data/countries/TR.yaml +28 -29
  344. data/lib/countries/data/countries/TT.yaml +28 -29
  345. data/lib/countries/data/countries/TV.yaml +25 -26
  346. data/lib/countries/data/countries/TW.yaml +28 -29
  347. data/lib/countries/data/countries/TZ.yaml +30 -31
  348. data/lib/countries/data/countries/UA.yaml +34 -35
  349. data/lib/countries/data/countries/UG.yaml +28 -29
  350. data/lib/countries/data/countries/UM.yaml +29 -30
  351. data/lib/countries/data/countries/US.yaml +29 -29
  352. data/lib/countries/data/countries/UY.yaml +27 -28
  353. data/lib/countries/data/countries/UZ.yaml +30 -31
  354. data/lib/countries/data/countries/VA.yaml +31 -32
  355. data/lib/countries/data/countries/VC.yaml +29 -30
  356. data/lib/countries/data/countries/VE.yaml +26 -27
  357. data/lib/countries/data/countries/VG.yaml +29 -30
  358. data/lib/countries/data/countries/VI.yaml +28 -29
  359. data/lib/countries/data/countries/VN.yaml +28 -29
  360. data/lib/countries/data/countries/VU.yaml +31 -32
  361. data/lib/countries/data/countries/WF.yaml +29 -30
  362. data/lib/countries/data/countries/WS.yaml +28 -29
  363. data/lib/countries/data/countries/YE.yaml +27 -28
  364. data/lib/countries/data/countries/YT.yaml +26 -27
  365. data/lib/countries/data/countries/ZA.yaml +39 -40
  366. data/lib/countries/data/countries/ZM.yaml +28 -29
  367. data/lib/countries/data/countries/ZW.yaml +31 -32
  368. data/lib/countries/data/subdivisions/AD.yaml +21 -21
  369. data/lib/countries/data/subdivisions/AF.yaml +2 -2
  370. data/lib/countries/data/subdivisions/AG.yaml +1 -1
  371. data/lib/countries/data/subdivisions/AI.yaml +98 -98
  372. data/lib/countries/data/subdivisions/AL.yaml +82 -626
  373. data/lib/countries/data/subdivisions/AZ.yaml +5 -5
  374. data/lib/countries/data/subdivisions/BA.yaml +11 -11
  375. data/lib/countries/data/subdivisions/BD.yaml +8 -8
  376. data/lib/countries/data/subdivisions/BE.yaml +2 -2
  377. data/lib/countries/data/subdivisions/BF.yaml +13 -13
  378. data/lib/countries/data/subdivisions/BI.yaml +3 -3
  379. data/lib/countries/data/subdivisions/BM.yaml +77 -77
  380. data/lib/countries/data/subdivisions/BS.yaml +22 -22
  381. data/lib/countries/data/subdivisions/BW.yaml +7 -7
  382. data/lib/countries/data/subdivisions/BY.yaml +1 -1
  383. data/lib/countries/data/subdivisions/CD.yaml +19 -19
  384. data/lib/countries/data/subdivisions/CG.yaml +1 -1
  385. data/lib/countries/data/subdivisions/CI.yaml +14 -14
  386. data/lib/countries/data/subdivisions/CK.yaml +77 -77
  387. data/lib/countries/data/subdivisions/CN.yaml +0 -107
  388. data/lib/countries/data/subdivisions/CV.yaml +9 -9
  389. data/lib/countries/data/subdivisions/CZ.yaml +1045 -3736
  390. data/lib/countries/data/subdivisions/DE.yaml +16 -16
  391. data/lib/countries/data/subdivisions/DK.yaml +65 -286
  392. data/lib/countries/data/subdivisions/DO.yaml +11 -11
  393. data/lib/countries/data/subdivisions/EE.yaml +172 -88
  394. data/lib/countries/data/subdivisions/EH.yaml +12 -12
  395. data/lib/countries/data/subdivisions/ES.yaml +17 -17
  396. data/lib/countries/data/subdivisions/FI.yaml +101 -498
  397. data/lib/countries/data/subdivisions/FJ.yaml +14 -14
  398. data/lib/countries/data/subdivisions/FR.yaml +584 -977
  399. data/lib/countries/data/subdivisions/GB.yaml +21 -20
  400. data/lib/countries/data/subdivisions/GH.yaml +7 -7
  401. data/lib/countries/data/subdivisions/GL.yaml +6 -6
  402. data/lib/countries/data/subdivisions/GN.yaml +7 -7
  403. data/lib/countries/data/subdivisions/GQ.yaml +1 -0
  404. data/lib/countries/data/subdivisions/GR.yaml +117 -988
  405. data/lib/countries/data/subdivisions/GW.yaml +3 -3
  406. data/lib/countries/data/subdivisions/HT.yaml +1 -1
  407. data/lib/countries/data/subdivisions/HU.yaml +62 -62
  408. data/lib/countries/data/subdivisions/ID.yaml +41 -41
  409. data/lib/countries/data/subdivisions/IE.yaml +483 -483
  410. data/lib/countries/data/subdivisions/IN.yaml +4 -3
  411. data/lib/countries/data/subdivisions/IQ.yaml +1 -1
  412. data/lib/countries/data/subdivisions/IR.yaml +2 -1
  413. data/lib/countries/data/subdivisions/IS.yaml +72 -0
  414. data/lib/countries/data/subdivisions/IT.yaml +1250 -1839
  415. data/lib/countries/data/subdivisions/KE.yaml +391 -503
  416. data/lib/countries/data/subdivisions/KG.yaml +1 -1
  417. data/lib/countries/data/subdivisions/KH.yaml +1 -1
  418. data/lib/countries/data/subdivisions/KN.yaml +2 -2
  419. data/lib/countries/data/subdivisions/KP.yaml +12 -12
  420. data/lib/countries/data/subdivisions/KR.yaml +1 -1
  421. data/lib/countries/data/subdivisions/KZ.yaml +1 -1
  422. data/lib/countries/data/subdivisions/LA.yaml +1 -1
  423. data/lib/countries/data/subdivisions/LB.yaml +2 -2
  424. data/lib/countries/data/subdivisions/LC.yaml +10 -10
  425. data/lib/countries/data/subdivisions/LK.yaml +9 -9
  426. data/lib/countries/data/subdivisions/LR.yaml +2 -2
  427. data/lib/countries/data/subdivisions/LT.yaml +60 -60
  428. data/lib/countries/data/subdivisions/LU.yaml +194 -243
  429. data/lib/countries/data/subdivisions/LV.yaml +147 -5139
  430. data/lib/countries/data/subdivisions/MA.yaml +35 -35
  431. data/lib/countries/data/subdivisions/MC.yaml +17 -17
  432. data/lib/countries/data/subdivisions/MD.yaml +740 -740
  433. data/lib/countries/data/subdivisions/ME.yaml +3 -3
  434. data/lib/countries/data/subdivisions/MH.yaml +2 -2
  435. data/lib/countries/data/subdivisions/MK.yaml +3501 -5809
  436. data/lib/countries/data/subdivisions/ML.yaml +2 -2
  437. data/lib/countries/data/subdivisions/MM.yaml +1 -1
  438. data/lib/countries/data/subdivisions/MR.yaml +3 -3
  439. data/lib/countries/data/subdivisions/MV.yaml +8 -8
  440. data/lib/countries/data/subdivisions/MW.yaml +4 -4
  441. data/lib/countries/data/subdivisions/MX.yaml +1 -1
  442. data/lib/countries/data/subdivisions/NL.yaml +6 -6
  443. data/lib/countries/data/subdivisions/NO.yaml +1 -0
  444. data/lib/countries/data/subdivisions/NP.yaml +12 -12
  445. data/lib/countries/data/subdivisions/NZ.yaml +68 -112
  446. data/lib/countries/data/subdivisions/OM.yaml +6 -6
  447. data/lib/countries/data/subdivisions/PG.yaml +3 -3
  448. data/lib/countries/data/subdivisions/PH.yaml +16 -16
  449. data/lib/countries/data/subdivisions/PK.yaml +2 -2
  450. data/lib/countries/data/subdivisions/PL.yaml +210 -1208
  451. data/lib/countries/data/subdivisions/PS.yaml +16 -16
  452. data/lib/countries/data/subdivisions/QA.yaml +2 -2
  453. data/lib/countries/data/subdivisions/RS.yaml +2 -2
  454. data/lib/countries/data/subdivisions/SC.yaml +4 -2
  455. data/lib/countries/data/subdivisions/SG.yaml +39 -109
  456. data/lib/countries/data/subdivisions/SH.yaml +1 -1
  457. data/lib/countries/data/subdivisions/SI.yaml +19 -19
  458. data/lib/countries/data/subdivisions/SJ.yaml +14 -14
  459. data/lib/countries/data/subdivisions/SL.yaml +1 -1
  460. data/lib/countries/data/subdivisions/SN.yaml +3 -3
  461. data/lib/countries/data/subdivisions/SS.yaml +10 -10
  462. data/lib/countries/data/subdivisions/ST.yaml +6 -0
  463. data/lib/countries/data/subdivisions/TD.yaml +6 -6
  464. data/lib/countries/data/subdivisions/TH.yaml +1 -1
  465. data/lib/countries/data/subdivisions/TJ.yaml +2 -2
  466. data/lib/countries/data/subdivisions/TK.yaml +21 -21
  467. data/lib/countries/data/subdivisions/TM.yaml +1 -1
  468. data/lib/countries/data/subdivisions/TT.yaml +2 -2
  469. data/lib/countries/data/subdivisions/TV.yaml +1 -1
  470. data/lib/countries/data/subdivisions/TW.yaml +3 -17
  471. data/lib/countries/data/subdivisions/TZ.yaml +5 -5
  472. data/lib/countries/data/subdivisions/UG.yaml +59 -52
  473. data/lib/countries/data/subdivisions/UM.yaml +0 -10
  474. data/lib/countries/data/subdivisions/US.yaml +0 -42
  475. data/lib/countries/data/subdivisions/WF.yaml +3 -13
  476. data/lib/countries/data/subdivisions/YE.yaml +3 -3
  477. data/lib/countries/data/subdivisions/ZA.yaml +2 -2
  478. data/lib/countries/data/subdivisions/ZM.yaml +1 -1
  479. data/lib/countries/data/translation_corrections.yaml +20 -12
  480. data/lib/countries/data.rb +5 -1
  481. data/lib/countries/global.rb +13 -3
  482. data/lib/countries/mongoid.rb +3 -0
  483. data/lib/countries/sources/cldr/downloader.rb +3 -0
  484. data/lib/countries/sources/cldr/subdivision.rb +1 -0
  485. data/lib/countries/sources/cldr/subdivision_updater.rb +1 -0
  486. data/lib/countries/sources/local/cached_loader.rb +2 -0
  487. data/lib/countries/sources/local/subdivision.rb +1 -0
  488. data/lib/countries/structure.rb +2 -5
  489. data/lib/countries/tasks/geocoding.rake +1 -1
  490. data/lib/countries/timezones.rb +4 -2
  491. data/lib/countries/translations.rb +2 -3
  492. data/lib/countries/version.rb +1 -1
  493. data/spec/country_spec.rb +60 -56
  494. data/spec/data_spec.rb +9 -9
  495. metadata +7 -38
  496. data/lib/countries/data/subdivisions/AS.yaml +0 -85
  497. data/lib/countries/data/subdivisions/AW.yaml +0 -9
  498. data/lib/countries/data/subdivisions/AX.yaml +0 -51
  499. data/lib/countries/data/subdivisions/BL.yaml +0 -11
  500. data/lib/countries/data/subdivisions/CP.yaml +0 -4
  501. data/lib/countries/data/subdivisions/CW.yaml +0 -9
  502. data/lib/countries/data/subdivisions/FO.yaml +0 -85
  503. data/lib/countries/data/subdivisions/GF.yaml +0 -11
  504. data/lib/countries/data/subdivisions/GG.yaml +0 -155
  505. data/lib/countries/data/subdivisions/GP.yaml +0 -11
  506. data/lib/countries/data/subdivisions/GU.yaml +0 -275
  507. data/lib/countries/data/subdivisions/HK.yaml +0 -267
  508. data/lib/countries/data/subdivisions/IC.yaml +0 -4
  509. data/lib/countries/data/subdivisions/IM.yaml +0 -337
  510. data/lib/countries/data/subdivisions/JE.yaml +0 -169
  511. data/lib/countries/data/subdivisions/KY.yaml +0 -85
  512. data/lib/countries/data/subdivisions/MF.yaml +0 -9
  513. data/lib/countries/data/subdivisions/MO.yaml +0 -9
  514. data/lib/countries/data/subdivisions/MP.yaml +0 -71
  515. data/lib/countries/data/subdivisions/MQ.yaml +0 -11
  516. data/lib/countries/data/subdivisions/MS.yaml +0 -43
  517. data/lib/countries/data/subdivisions/NC.yaml +0 -57
  518. data/lib/countries/data/subdivisions/PF.yaml +0 -81
  519. data/lib/countries/data/subdivisions/PM.yaml +0 -39
  520. data/lib/countries/data/subdivisions/PR.yaml +0 -1107
  521. data/lib/countries/data/subdivisions/RE.yaml +0 -11
  522. data/lib/countries/data/subdivisions/SX.yaml +0 -9
  523. data/lib/countries/data/subdivisions/TA.yaml +0 -4
  524. data/lib/countries/data/subdivisions/TF.yaml +0 -67
  525. data/lib/countries/data/subdivisions/VI.yaml +0 -57
  526. data/lib/countries/data/subdivisions/YT.yaml +0 -247
@@ -39,7 +39,7 @@ module ISO3166
39
39
 
40
40
  def all_names_with_codes(locale = 'en')
41
41
  Country.all.map do |c|
42
- lc = (c.translation(locale) || c.name)
42
+ lc = (c.translation(locale) || c.iso_short_name)
43
43
  [lc.respond_to?('html_safe') ? lc.html_safe : lc, c.alpha2]
44
44
  end.sort
45
45
  end
@@ -55,7 +55,7 @@ module ISO3166
55
55
 
56
56
  custom_countries = (ISO3166::Data.codes - i18n_data_countries.keys).map do |code|
57
57
  country = ISO3166::Country[code]
58
- translation = country.translations[locale] || country.name
58
+ translation = country.translations[locale] || country.iso_short_name
59
59
  [code, translation]
60
60
  end.to_h
61
61
 
@@ -76,6 +76,14 @@ module ISO3166
76
76
  return_all = matches[1]
77
77
  super unless matches
78
78
 
79
+ if matches[3] == 'names'
80
+ if RUBY_VERSION =~ /^3\.\d\.\d/
81
+ warn "DEPRECATION WARNING: 'find_by_name' and 'find_*_by_name' methods are deprecated, please refer to the README file for more information on this change.", uplevel: 1, category: :deprecated
82
+ else
83
+ warn "DEPRECATION WARNING: 'find_by_name' and 'find_*_by_name' methods are deprecated, please refer to the README file for more information on this change.", uplevel: 1
84
+ end
85
+ end
86
+
79
87
  countries = find_by(matches[3], arguments[0], matches[2])
80
88
  return_all ? countries : countries.last
81
89
  end
@@ -128,10 +136,15 @@ module ISO3166
128
136
  raise "Invalid attribute name '#{attribute}'" unless searchable_attribute?(attribute.to_sym)
129
137
 
130
138
  attributes = Array(attribute.to_s)
131
- if attributes == ['name']
132
- attributes << 'unofficial_names'
133
- # TODO: Revisit when better data from i18n_data
134
- # attributes << 'translated_names'
139
+ if attribute.to_s == 'name'
140
+ if RUBY_VERSION =~ /^3\.\d\.\d/
141
+ warn "DEPRECATION WARNING: 'find_by_name' and 'find_*_by_name' methods are deprecated, please refer to the README file for more information on this change.", uplevel: 1, category: :deprecated
142
+ else
143
+ warn "DEPRECATION WARNING: 'find_by_name' and 'find_*_by_name' methods are deprecated, please refer to the README file for more information on this change.", uplevel: 1
144
+ end
145
+ # 'find_by_name' and 'find_*_by_name' will be changed for 5.0
146
+ # The addition of 'iso_short_name' here ensures the behaviour of 4.1 is kept for 4.2
147
+ attributes = %w[iso_short_name unofficial_names translated_names]
135
148
  end
136
149
 
137
150
  [attributes, parse_value(val)]
@@ -1,8 +1,11 @@
1
1
  require 'money'
2
2
 
3
3
  module ISO3166
4
- # Optional extension which allows you to get back a Money::Currency object with all the currency info
4
+ # Optional extension which allows you to get back a +Money::Currency+ object with all the currency info.
5
+ # This requires enabling the integration with the {Money}[https://github.com/RubyMoney/money] gem (See {ISO3166::Configuration#enable_currency_extension!})
5
6
  module CountryCurrencyMethods
7
+
8
+ # @return [Money::Currency] The currency data for this Country's +currency_code+
6
9
  def currency
7
10
  Money::Currency.find(data['currency_code'])
8
11
  end
@@ -32,6 +32,9 @@ module ISO3166
32
32
  'z' => '🇿'
33
33
  }.freeze
34
34
 
35
+ # @return [String] the emoji flag for this country
36
+ #
37
+ # The emoji flag for this country, using Unicode Regional Indicator characters. e.g: "U+1F1FA U+1F1F8" for 🇺🇸
35
38
  def emoji_flag
36
39
  alpha2.downcase.chars.map { |c| CODE_POINTS[c] }.join('')
37
40
  end
@@ -30,7 +30,24 @@ module ISO3166
30
30
  alias postal_code? postal_code
31
31
  alias zip_format postal_code_format
32
32
  alias languages languages_official
33
- alias names unofficial_names
33
+
34
+ def latitude_dec
35
+ if RUBY_VERSION =~ /^3\.\d\.\d/
36
+ warn "DEPRECATION WARNING: The Country#latitude_dec method has been deprecated and will be removed in 5.0. Please use Country#latitude instead.", uplevel: 1, category: :deprecated
37
+ else
38
+ warn "DEPRECATION WARNING: The Country#latitude_dec method has been deprecated and will be removed in 5.0. Please use Country#latitude instead.", uplevel: 1
39
+ end
40
+ latitude
41
+ end
42
+
43
+ def longitude_dec
44
+ if RUBY_VERSION =~ /^3\.\d\.\d/
45
+ warn "DEPRECATION WARNING: The Country#longitude_dec method has been deprecated and will be removed in 5.0. Please use Country#longitude instead.", uplevel: 1, category: :deprecated
46
+ else
47
+ warn "DEPRECATION WARNING: The Country#longitude_dec method has been deprecated and will be removed in 5.0. Please use Country#longitude instead.", uplevel: 1
48
+ end
49
+ longitude
50
+ end
34
51
 
35
52
  def ==(other)
36
53
  other.respond_to?(:alpha2) && other.alpha2 == alpha2
@@ -48,14 +65,12 @@ module ISO3166
48
65
  to_s <=> other.to_s
49
66
  end
50
67
 
51
- def start_of_week
52
- data['start_of_week']
53
- end
54
-
68
+ # +true+ if this Country has any Subdivisions.
55
69
  def subdivisions?
56
70
  !subdivisions.empty?
57
71
  end
58
72
 
73
+ # @return [Array<ISO3166::Subdivision>] the list of subdivisions for this Country.
59
74
  def subdivisions
60
75
  @subdivisions ||= if data['subdivisions']
61
76
  self.class.create_subdivisions(data['subdivisions'])
@@ -64,37 +79,51 @@ module ISO3166
64
79
  end
65
80
  end
66
81
 
82
+ # @param locale [String] The locale to use for translations.
83
+ # @return [Array<Array>] This Country's subdivision pairs of names and codes.
67
84
  def subdivision_names_with_codes(locale = 'en')
68
85
  subdivisions.map { |k, v| [v.translations[locale] || v.name, k] }
69
86
  end
70
87
 
71
88
  alias states subdivisions
72
89
 
90
+ # +true+ if this country is a member of the European Union.
73
91
  def in_eu?
74
92
  data['eu_member'].nil? ? false : data['eu_member']
75
93
  end
76
94
 
95
+ # +true+ if this country is a member of the European Economic Area.
77
96
  def in_eea?
78
97
  data['eea_member'].nil? ? false : data['eea_member']
79
98
  end
80
99
 
100
+ # +true+ if this country is a member of the European Single Market.
81
101
  def in_esm?
82
102
  data['esm_member'].nil? ? in_eea? : data['esm_member']
83
103
  end
84
104
 
85
105
  def to_s
86
- data['name']
106
+ data['iso_short_name']
87
107
  end
88
108
 
109
+ # @return [Array<String>] the list of names for this Country in all loaded locales.
89
110
  def translated_names
90
111
  data['translations'].values
91
112
  end
92
113
 
114
+ # @param locale [String] The locale to use for translations.
115
+ # @return [String] the name of this Country in the selected locale.
93
116
  def translation(locale = 'en')
94
117
  data['translations'][locale.to_s.downcase]
95
118
  end
96
119
 
97
- # TODO: Looping through locale langs could be be very slow across multiple countries
120
+ # @return [String] the “common name” of this Country in English.
121
+ def common_name
122
+ ISO3166.configuration.locales = ISO3166.configuration.locales.append(:en).uniq
123
+ translation('en')
124
+ end
125
+
126
+ # @return [Array<String>] TThe list of names for this Country, in this Country's locales.
98
127
  def local_names
99
128
  ISO3166.configuration.locales = (ISO3166.configuration.locales + languages.map(&:to_sym)).uniq
100
129
  reload
@@ -102,10 +131,121 @@ module ISO3166
102
131
  @local_names ||= languages.map { |language| translations[language] }
103
132
  end
104
133
 
134
+ # @return [String] The name for this Country, in this Country's locale.
105
135
  def local_name
106
136
  @local_name ||= local_names.first
107
137
  end
108
138
 
139
+ # @return [String] This Country's ISO Short Name
140
+ # @deprecated Use {#iso_short_name} instead.
141
+ def name
142
+ if RUBY_VERSION =~ /^3\.\d\.\d/
143
+ warn "DEPRECATION WARNING: The Country#name method has been deprecated. Please use Country#iso_short_name instead or refer to the README file for more information on this change.", uplevel: 1, category: :deprecated
144
+ else
145
+ warn "DEPRECATION WARNING: The Country#name method has been deprecated. Please use Country#iso_short_name instead or refer to the README file for more information on this change.", uplevel: 1
146
+ end
147
+ iso_short_name
148
+ end
149
+
150
+ # @return [Array<String>] Array of unofficial, slang names or aliases for this Country
151
+ # @deprecated Use {#unofficial_names} instead.
152
+ def names
153
+ if RUBY_VERSION =~ /^3\.\d\.\d/
154
+ warn "DEPRECATION WARNING: The Country#names method has been deprecated. Please use Country#unofficial_names instead or refer to the README file for more information on this change.", uplevel: 1, category: :deprecated
155
+ else
156
+ warn "DEPRECATION WARNING: The Country#names method has been deprecated. Please use Country#unofficial_names instead or refer to the README file for more information on this change.", uplevel: 1
157
+ end
158
+ unofficial_names
159
+ end
160
+
161
+ # @!attribute alpha2
162
+ # @return [String] the ISO3166 alpha-2 code for this Country
163
+ #
164
+ # @!attribute alpha3
165
+ # @return [String] the ISO3166 alpha-3 code for this Country
166
+ #
167
+ # @!attribute address_format
168
+ # @return [String] a template for formatting addresses in this Country.
169
+ #
170
+ # @!attribute continent
171
+ # @return [String] the continent for this Country
172
+ #
173
+ # @!attribute country_code
174
+ # @return [String] the country calling code for this Country
175
+ #
176
+ # @!attribute currency_code
177
+ # @return [String] the ISO 4217 currency code for this Country
178
+ #
179
+ # @!attribute gec
180
+ # @return [String] the "Geopolitical Entities and Codes", formerly FIPS 10-4 code for this Country
181
+ #
182
+ # @!attribute geo
183
+ # @return [Hash] the hash of coordinates for this Country.
184
+ #
185
+ # @!attribute international_prefix
186
+ # @return [String] the phone prefix used in this Country for dialing international numbers
187
+ #
188
+ # @!attribute ioc
189
+ # @return [String] The International Olympic Committee code for for this Country
190
+ #
191
+ # @!attribute national_destination_code_lengths
192
+ # @return [Array<Integer>] Lengths of phone number destination codes
193
+ #
194
+ # @!attribute national_number_lengths
195
+ # @return [Array<Integer>] Lengths of phone numbers
196
+ #
197
+ # @!attribute national_prefix
198
+ # @return [String] the phone prefix used in this Country for dialing national numbers
199
+ #
200
+ # @!attribute nanp_prefix
201
+ # @return [String] the NANP prefix code
202
+ #
203
+ # @!attribute nationality
204
+ # @return [String] the nationality for this Country, in English
205
+ #
206
+ # @!attribute number
207
+ # @return [String] The ISO 3166-1 numeric code for this Country
208
+ #
209
+ # @!attribute languages_official
210
+ # @return [Array<String>] the list of official languages (locale codes) for this Country
211
+ #
212
+ # @!attribute languages_spoken
213
+ # @return [Array<String>] the list of spoken languages (locale codes) for this Country
214
+ #
215
+ # @!attribute translations
216
+ # @return [Hash] The hash of country name translations for this Country.
217
+ #
218
+ # @!attribute postal_code
219
+ # @return [Boolean] Does this Country uses postal codes in addresses
220
+ #
221
+ # @!attribute postal_code_format
222
+ # @return [String] The regex for valid postal codes in this Country
223
+ #
224
+ # @!attribute region
225
+ # @return [String] The Region this country is in. Approximately matches the United Nations geoscheme
226
+ #
227
+ # @!attribute unofficial_names
228
+ # @return [Array<String>] Array of unofficial, slang names or aliases for this Country
229
+ #
230
+ # @!attribute start_of_week
231
+ # @return [String] The starting day of the week ( +'monday'+ or +'sunday'+ )
232
+ #
233
+ # @!attribute subregion
234
+ # @return [String] The Subegion this country is in. Approximately matches the United Nations geoscheme's Subregions
235
+ #
236
+ # @!attribute un_locode
237
+ # @return [String] The UN/LOCODE prefix for this Country
238
+ #
239
+ # @!attribute vat_rates
240
+ # @return [Hash] the hash of VAT Rates for this Country
241
+ #
242
+ # @!attribute world_region
243
+ # @return [String] The "World Region" this country is in: +"AMER"+ , +"APAC"+ or +"EMEA"+
244
+
245
+
246
+
247
+ private
248
+
109
249
  def reload
110
250
  @data = if @country_data_or_code.is_a?(Hash)
111
251
  @country_data_or_code
@@ -1,13 +1,33 @@
1
1
  ---
2
2
  AD:
3
- continent: Europe
4
3
  alpha2: AD
5
4
  alpha3: AND
5
+ continent: Europe
6
6
  country_code: '376'
7
+ currency_code: EUR
8
+ gec: AN
9
+ geo:
10
+ latitude: 42.506285
11
+ longitude: 1.521801
12
+ max_latitude: 42.655791
13
+ max_longitude: 1.786639
14
+ min_latitude: 42.4287488
15
+ min_longitude: 1.4087052
16
+ bounds:
17
+ northeast:
18
+ lat: 42.655791
19
+ lng: 1.786639
20
+ southwest:
21
+ lat: 42.4287488
22
+ lng: 1.4087052
7
23
  international_prefix: '00'
8
24
  ioc: AND
9
- gec: AN
10
- name: Andorra
25
+ iso_long_name: The Principality of Andorra
26
+ iso_short_name: Andorra
27
+ languages_official:
28
+ - ca
29
+ languages_spoken:
30
+ - ca
11
31
  national_destination_code_lengths:
12
32
  - 2
13
33
  national_number_lengths:
@@ -16,37 +36,16 @@ AD:
16
36
  - 8
17
37
  - 9
18
38
  national_prefix: None
39
+ nationality: Andorran
19
40
  number: '020'
41
+ postal_code: true
42
+ postal_code_format: AD[1-7]0\d
20
43
  region: Europe
44
+ start_of_week: monday
21
45
  subregion: Southern Europe
22
- world_region: EMEA
23
46
  un_locode: AD
24
- nationality: Andorran
25
- postal_code: true
26
- postal_code_format: AD[1-7]0\d
27
47
  unofficial_names:
28
48
  - Andorre
29
49
  - Andorra
30
50
  - アンドラ
31
- languages_official:
32
- - ca
33
- languages_spoken:
34
- - ca
35
- geo:
36
- latitude: 42.506285
37
- latitude_dec: '42.5506591796875'
38
- longitude: 1.521801
39
- longitude_dec: '1.5762332677841187'
40
- max_latitude: 42.655791
41
- max_longitude: 1.786639
42
- min_latitude: 42.4287488
43
- min_longitude: 1.4087052
44
- bounds:
45
- northeast:
46
- lat: 42.655791
47
- lng: 1.786639
48
- southwest:
49
- lat: 42.4287488
50
- lng: 1.4087052
51
- currency_code: EUR
52
- start_of_week: monday
51
+ world_region: EMEA
@@ -1,6 +1,5 @@
1
1
  ---
2
2
  AE:
3
- continent: Asia
4
3
  address_format: |-
5
4
  {{recipient}}
6
5
  {{street}}
@@ -8,11 +7,32 @@ AE:
8
7
  {{country}}
9
8
  alpha2: AE
10
9
  alpha3: ARE
10
+ continent: Asia
11
11
  country_code: '971'
12
+ currency_code: AED
13
+ gec: AE
14
+ geo:
15
+ latitude: 23.424076
16
+ longitude: 53.847818
17
+ max_latitude: 26.0765
18
+ max_longitude: 56.4395001
19
+ min_latitude: 22.6315138
20
+ min_longitude: 51.4723
21
+ bounds:
22
+ northeast:
23
+ lat: 26.0765
24
+ lng: 56.4395001
25
+ southwest:
26
+ lat: 22.6315138
27
+ lng: 51.4723
12
28
  international_prefix: '00'
13
29
  ioc: UAE
14
- gec: AE
15
- name: United Arab Emirates
30
+ iso_long_name: The United Arab Emirates
31
+ iso_short_name: United Arab Emirates
32
+ languages_official:
33
+ - ar
34
+ languages_spoken:
35
+ - ar
16
36
  national_destination_code_lengths:
17
37
  - 2
18
38
  national_number_lengths:
@@ -20,18 +40,13 @@ AE:
20
40
  - 8
21
41
  - 9
22
42
  national_prefix: '0'
43
+ nationality: Emirian
23
44
  number: '784'
45
+ postal_code: false
24
46
  region: Asia
47
+ start_of_week: monday
25
48
  subregion: Western Asia
26
- world_region: EMEA
27
49
  un_locode: AE
28
- nationality: Emirian
29
- vat_rates:
30
- standard: 5
31
- reduced: []
32
- super_reduced:
33
- parking:
34
- postal_code: false
35
50
  unofficial_names:
36
51
  - United Arab Emirates
37
52
  - الإمارات العربية المتحدة
@@ -40,25 +55,9 @@ AE:
40
55
  - Emiratos Árabes Unidos
41
56
  - アラブ首長国連邦
42
57
  - Verenigde Arabische Emiraten
43
- languages_official:
44
- - ar
45
- languages_spoken:
46
- - ar
47
- geo:
48
- latitude: 23.424076
49
- latitude_dec: '23.684776306152344'
50
- longitude: 53.847818
51
- longitude_dec: '54.536643981933594'
52
- max_latitude: 26.0765
53
- max_longitude: 56.4395001
54
- min_latitude: 22.6315138
55
- min_longitude: 51.4723
56
- bounds:
57
- northeast:
58
- lat: 26.0765
59
- lng: 56.4395001
60
- southwest:
61
- lat: 22.6315138
62
- lng: 51.4723
63
- currency_code: AED
64
- start_of_week: sunday
58
+ vat_rates:
59
+ standard: 5
60
+ reduced: []
61
+ super_reduced:
62
+ parking:
63
+ world_region: EMEA
@@ -1,44 +1,14 @@
1
1
  ---
2
2
  AF:
3
- continent: Asia
4
3
  alpha2: AF
5
4
  alpha3: AFG
5
+ continent: Asia
6
6
  country_code: '93'
7
- international_prefix: '00'
8
- ioc: AFG
7
+ currency_code: AFN
9
8
  gec: AF
10
- name: Afghanistan
11
- national_destination_code_lengths:
12
- - 2
13
- national_number_lengths:
14
- - 8
15
- - 9
16
- national_prefix: '0'
17
- number: '004'
18
- region: Asia
19
- subregion: Southern Asia
20
- world_region: APAC
21
- un_locode: AF
22
- nationality: Afghan
23
- postal_code: true
24
- postal_code_format: "\\d{4}"
25
- unofficial_names:
26
- - Afghanistan
27
- - Afganistán
28
- - アフガニスタン
29
- languages_official:
30
- - ps
31
- - uz
32
- - tk
33
- languages_spoken:
34
- - ps
35
- - uz
36
- - tk
37
9
  geo:
38
10
  latitude: 33.93911
39
- latitude_dec: '33.833248138427734'
40
11
  longitude: 67.709953
41
- longitude_dec: '66.02528381347656'
42
12
  max_latitude: 38.49087670000001
43
13
  max_longitude: 74.8898619
44
14
  min_latitude: 29.3772
@@ -50,5 +20,34 @@ AF:
50
20
  southwest:
51
21
  lat: 29.3772
52
22
  lng: 60.5170005
53
- currency_code: AFN
23
+ international_prefix: '00'
24
+ ioc: AFG
25
+ iso_long_name: The Islamic Republic of Afghanistan
26
+ iso_short_name: Afghanistan
27
+ languages_official:
28
+ - ps
29
+ - uz
30
+ - tk
31
+ languages_spoken:
32
+ - ps
33
+ - uz
34
+ - tk
35
+ national_destination_code_lengths:
36
+ - 2
37
+ national_number_lengths:
38
+ - 8
39
+ - 9
40
+ national_prefix: '0'
41
+ nationality: Afghan
42
+ number: '004'
43
+ postal_code: true
44
+ postal_code_format: "\\d{4}"
45
+ region: Asia
54
46
  start_of_week: monday
47
+ subregion: Southern Asia
48
+ un_locode: AF
49
+ unofficial_names:
50
+ - Afghanistan
51
+ - Afganistán
52
+ - アフガニスタン
53
+ world_region: APAC
@@ -1,26 +1,46 @@
1
1
  ---
2
2
  AG:
3
- continent: North America
4
3
  alpha2: AG
5
4
  alpha3: ATG
5
+ continent: North America
6
6
  country_code: '1'
7
- nanp_prefix: '1268'
7
+ currency_code: XCD
8
+ gec: AC
9
+ geo:
10
+ latitude: 17.060816
11
+ longitude: -61.796428
12
+ max_latitude: 17.7499946
13
+ max_longitude: -61.6394
14
+ min_latitude: 16.9018
15
+ min_longitude: -62.38100009999999
16
+ bounds:
17
+ northeast:
18
+ lat: 17.7499946
19
+ lng: -61.6394
20
+ southwest:
21
+ lat: 16.9018
22
+ lng: -62.38100009999999
8
23
  international_prefix: '011'
9
24
  ioc: ANT
10
- gec: AC
11
- name: Antigua and Barbuda
25
+ iso_long_name: Antigua and Barbuda
26
+ iso_short_name: Antigua and Barbuda
27
+ languages_official:
28
+ - en
29
+ languages_spoken:
30
+ - en
31
+ nanp_prefix: '1268'
12
32
  national_destination_code_lengths:
13
33
  - 3
14
34
  national_number_lengths:
15
35
  - 10
16
36
  national_prefix: '1'
37
+ nationality: Antiguan, Barbudan
17
38
  number: '028'
39
+ postal_code: false
18
40
  region: Americas
41
+ start_of_week: monday
19
42
  subregion: Caribbean
20
- world_region: AMER
21
43
  un_locode: AG
22
- nationality: Antiguan, Barbudan
23
- postal_code: false
24
44
  unofficial_names:
25
45
  - Antigua and Barbuda
26
46
  - Antigua und Barbuda
@@ -28,25 +48,4 @@ AG:
28
48
  - Antigua y Barbuda
29
49
  - アンティグア・バーブーダ
30
50
  - Antigua en Barbuda
31
- languages_official:
32
- - en
33
- languages_spoken:
34
- - en
35
- geo:
36
- latitude: 17.060816
37
- latitude_dec: '17.09273910522461'
38
- longitude: -61.796428
39
- longitude_dec: "-61.81040954589844"
40
- max_latitude: 17.7499946
41
- max_longitude: -61.6394
42
- min_latitude: 16.9018
43
- min_longitude: -62.38100009999999
44
- bounds:
45
- northeast:
46
- lat: 17.7499946
47
- lng: -61.6394
48
- southwest:
49
- lat: 16.9018
50
- lng: -62.38100009999999
51
- currency_code: XCD
52
- start_of_week: monday
51
+ world_region: AMER
@@ -1,39 +1,14 @@
1
1
  ---
2
2
  AI:
3
- continent: North America
4
3
  alpha2: AI
5
4
  alpha3: AIA
5
+ continent: North America
6
6
  country_code: '1'
7
- nanp_prefix: '1264'
8
- international_prefix: '011'
9
- ioc:
7
+ currency_code: XCD
10
8
  gec: AV
11
- name: Anguilla
12
- national_destination_code_lengths:
13
- - 3
14
- national_number_lengths:
15
- - 10
16
- national_prefix: '1'
17
- number: '660'
18
- region: Americas
19
- subregion: Caribbean
20
- world_region: AMER
21
- un_locode: AI
22
- nationality: Anguillian
23
- postal_code: true
24
- postal_code_format: "(?:AI-)?2640"
25
- unofficial_names:
26
- - Anguilla
27
- - アンギラ
28
- languages_official:
29
- - en
30
- languages_spoken:
31
- - en
32
9
  geo:
33
10
  latitude: 18.220554
34
- latitude_dec: '18.22646713256836'
35
11
  longitude: -63.06861499999999
36
- longitude_dec: "-63.0473518371582"
37
12
  max_latitude: 18.6332326
38
13
  max_longitude: -62.91999999999999
39
14
  min_latitude: 18.1465043
@@ -45,5 +20,29 @@ AI:
45
20
  southwest:
46
21
  lat: 18.1465043
47
22
  lng: -63.4803
48
- currency_code: XCD
23
+ international_prefix: '011'
24
+ ioc:
25
+ iso_long_name: Anguilla
26
+ iso_short_name: Anguilla
27
+ languages_official:
28
+ - en
29
+ languages_spoken:
30
+ - en
31
+ nanp_prefix: '1264'
32
+ national_destination_code_lengths:
33
+ - 3
34
+ national_number_lengths:
35
+ - 10
36
+ national_prefix: '1'
37
+ nationality: Anguillian
38
+ number: '660'
39
+ postal_code: true
40
+ postal_code_format: "(?:AI-)?2640"
41
+ region: Americas
49
42
  start_of_week: monday
43
+ subregion: Caribbean
44
+ un_locode: AI
45
+ unofficial_names:
46
+ - Anguilla
47
+ - アンギラ
48
+ world_region: AMER