countries 7.1.1 → 8.0.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.
Files changed (309) hide show
  1. checksums.yaml +4 -4
  2. data/lib/countries/cache/countries.json +1 -1
  3. data/lib/countries/cache/locales/es.json +1 -1
  4. data/lib/countries/cache/locales/pt-br.json +1 -1
  5. data/lib/countries/configuration.rb +1 -0
  6. data/lib/countries/country/class_methods.rb +41 -20
  7. data/lib/countries/country/country_subdivision_methods.rb +19 -12
  8. data/lib/countries/country/emoji.rb +1 -1
  9. data/lib/countries/country/finder_methods.rb +24 -11
  10. data/lib/countries/country.rb +17 -2
  11. data/lib/countries/data/countries/AE.yaml +0 -3
  12. data/lib/countries/data/countries/AI.yaml +0 -1
  13. data/lib/countries/data/countries/AQ.yaml +0 -10
  14. data/lib/countries/data/countries/AT.yaml +0 -1
  15. data/lib/countries/data/countries/AU.yaml +0 -3
  16. data/lib/countries/data/countries/AX.yaml +0 -6
  17. data/lib/countries/data/countries/BE.yaml +0 -1
  18. data/lib/countries/data/countries/BG.yaml +0 -2
  19. data/lib/countries/data/countries/BL.yaml +0 -5
  20. data/lib/countries/data/countries/BR.yaml +0 -2
  21. data/lib/countries/data/countries/BV.yaml +0 -10
  22. data/lib/countries/data/countries/CC.yaml +0 -1
  23. data/lib/countries/data/countries/CH.yaml +0 -2
  24. data/lib/countries/data/countries/CL.yaml +0 -3
  25. data/lib/countries/data/countries/CW.yaml +1 -2
  26. data/lib/countries/data/countries/CX.yaml +0 -3
  27. data/lib/countries/data/countries/CY.yaml +0 -2
  28. data/lib/countries/data/countries/CZ.yaml +0 -2
  29. data/lib/countries/data/countries/DE.yaml +0 -2
  30. data/lib/countries/data/countries/DK.yaml +0 -4
  31. data/lib/countries/data/countries/EE.yaml +0 -2
  32. data/lib/countries/data/countries/EH.yaml +0 -5
  33. data/lib/countries/data/countries/ES.yaml +0 -1
  34. data/lib/countries/data/countries/FI.yaml +0 -2
  35. data/lib/countries/data/countries/FK.yaml +0 -1
  36. data/lib/countries/data/countries/FR.yaml +0 -1
  37. data/lib/countries/data/countries/GB.yaml +1 -4
  38. data/lib/countries/data/countries/GF.yaml +0 -1
  39. data/lib/countries/data/countries/GG.yaml +0 -5
  40. data/lib/countries/data/countries/GI.yaml +0 -1
  41. data/lib/countries/data/countries/GL.yaml +0 -1
  42. data/lib/countries/data/countries/GP.yaml +0 -1
  43. data/lib/countries/data/countries/GR.yaml +0 -2
  44. data/lib/countries/data/countries/GS.yaml +0 -5
  45. data/lib/countries/data/countries/HM.yaml +0 -7
  46. data/lib/countries/data/countries/HR.yaml +0 -2
  47. data/lib/countries/data/countries/HU.yaml +0 -2
  48. data/lib/countries/data/countries/IL.yaml +0 -3
  49. data/lib/countries/data/countries/IM.yaml +0 -5
  50. data/lib/countries/data/countries/IO.yaml +0 -5
  51. data/lib/countries/data/countries/IS.yaml +0 -2
  52. data/lib/countries/data/countries/IT.yaml +0 -1
  53. data/lib/countries/data/countries/JE.yaml +0 -5
  54. data/lib/countries/data/countries/LT.yaml +0 -2
  55. data/lib/countries/data/countries/LV.yaml +0 -2
  56. data/lib/countries/data/countries/MF.yaml +0 -5
  57. data/lib/countries/data/countries/MO.yaml +0 -1
  58. data/lib/countries/data/countries/MP.yaml +0 -1
  59. data/lib/countries/data/countries/MQ.yaml +0 -1
  60. data/lib/countries/data/countries/MS.yaml +0 -1
  61. data/lib/countries/data/countries/MT.yaml +0 -2
  62. data/lib/countries/data/countries/MX.yaml +0 -3
  63. data/lib/countries/data/countries/NC.yaml +0 -1
  64. data/lib/countries/data/countries/NF.yaml +0 -1
  65. data/lib/countries/data/countries/NG.yaml +0 -3
  66. data/lib/countries/data/countries/NL.yaml +0 -2
  67. data/lib/countries/data/countries/NO.yaml +0 -3
  68. data/lib/countries/data/countries/NU.yaml +0 -1
  69. data/lib/countries/data/countries/NZ.yaml +0 -2
  70. data/lib/countries/data/countries/PF.yaml +0 -1
  71. data/lib/countries/data/countries/PH.yaml +0 -3
  72. data/lib/countries/data/countries/PL.yaml +0 -2
  73. data/lib/countries/data/countries/PM.yaml +0 -1
  74. data/lib/countries/data/countries/PN.yaml +0 -2
  75. data/lib/countries/data/countries/PT.yaml +0 -1
  76. data/lib/countries/data/countries/RE.yaml +0 -1
  77. data/lib/countries/data/countries/RO.yaml +0 -2
  78. data/lib/countries/data/countries/SA.yaml +0 -3
  79. data/lib/countries/data/countries/SE.yaml +0 -2
  80. data/lib/countries/data/countries/SH.yaml +0 -1
  81. data/lib/countries/data/countries/SI.yaml +0 -2
  82. data/lib/countries/data/countries/SJ.yaml +0 -1
  83. data/lib/countries/data/countries/SK.yaml +1 -3
  84. data/lib/countries/data/countries/SL.yaml +1 -1
  85. data/lib/countries/data/countries/SS.yaml +0 -1
  86. data/lib/countries/data/countries/ST.yaml +1 -1
  87. data/lib/countries/data/countries/SX.yaml +1 -2
  88. data/lib/countries/data/countries/TC.yaml +0 -1
  89. data/lib/countries/data/countries/TF.yaml +0 -5
  90. data/lib/countries/data/countries/TH.yaml +0 -2
  91. data/lib/countries/data/countries/TK.yaml +0 -1
  92. data/lib/countries/data/countries/TW.yaml +5 -5
  93. data/lib/countries/data/countries/UA.yaml +0 -2
  94. data/lib/countries/data/countries/UM.yaml +0 -6
  95. data/lib/countries/data/countries/VA.yaml +0 -1
  96. data/lib/countries/data/countries/WF.yaml +0 -1
  97. data/lib/countries/data/countries/YT.yaml +0 -1
  98. data/lib/countries/data/locales_methods.rb +4 -2
  99. data/lib/countries/data/subdivision_methods.rb +5 -2
  100. data/lib/countries/data/subdivisions/AD.yaml +8 -11
  101. data/lib/countries/data/subdivisions/AE.yaml +9 -15
  102. data/lib/countries/data/subdivisions/AF.yaml +36 -85
  103. data/lib/countries/data/subdivisions/AG.yaml +22 -31
  104. data/lib/countries/data/subdivisions/AL.yaml +12 -38
  105. data/lib/countries/data/subdivisions/AM.yaml +25 -44
  106. data/lib/countries/data/subdivisions/AO.yaml +44 -49
  107. data/lib/countries/data/subdivisions/AR.yaml +70 -76
  108. data/lib/countries/data/subdivisions/AT.yaml +13 -22
  109. data/lib/countries/data/subdivisions/AU.yaml +24 -28
  110. data/lib/countries/data/subdivisions/AZ.yaml +224 -271
  111. data/lib/countries/data/subdivisions/BA.yaml +7 -20
  112. data/lib/countries/data/subdivisions/BB.yaml +33 -34
  113. data/lib/countries/data/subdivisions/BD.yaml +82 -267
  114. data/lib/countries/data/subdivisions/BE.yaml +13 -43
  115. data/lib/countries/data/subdivisions/BF.yaml +142 -267
  116. data/lib/countries/data/subdivisions/BG.yaml +84 -84
  117. data/lib/countries/data/subdivisions/BH.yaml +6 -13
  118. data/lib/countries/data/subdivisions/BI.yaml +42 -74
  119. data/lib/countries/data/subdivisions/BJ.yaml +32 -34
  120. data/lib/countries/data/subdivisions/BN.yaml +12 -16
  121. data/lib/countries/data/subdivisions/BO.yaml +27 -27
  122. data/lib/countries/data/subdivisions/BQ.yaml +9 -9
  123. data/lib/countries/data/subdivisions/BR.yaml +81 -89
  124. data/lib/countries/data/subdivisions/BS.yaml +49 -260
  125. data/lib/countries/data/subdivisions/BT.yaml +24 -44
  126. data/lib/countries/data/subdivisions/BW.yaml +32 -98
  127. data/lib/countries/data/subdivisions/BY.yaml +7 -44
  128. data/lib/countries/data/subdivisions/BZ.yaml +18 -19
  129. data/lib/countries/data/subdivisions/CA.yaml +13 -31
  130. data/lib/countries/data/subdivisions/CD.yaml +38 -211
  131. data/lib/countries/data/subdivisions/CF.yaml +37 -44
  132. data/lib/countries/data/subdivisions/CG.yaml +30 -41
  133. data/lib/countries/data/subdivisions/CH.yaml +34 -58
  134. data/lib/countries/data/subdivisions/CI.yaml +14 -140
  135. data/lib/countries/data/subdivisions/CL.yaml +33 -45
  136. data/lib/countries/data/subdivisions/CM.yaml +26 -28
  137. data/lib/countries/data/subdivisions/CN.yaml +52 -33
  138. data/lib/countries/data/subdivisions/CO.yaml +97 -105
  139. data/lib/countries/data/subdivisions/CR.yaml +24 -24
  140. data/lib/countries/data/subdivisions/CU.yaml +48 -52
  141. data/lib/countries/data/subdivisions/CV.yaml +56 -145
  142. data/lib/countries/data/subdivisions/CY.yaml +18 -18
  143. data/lib/countries/data/subdivisions/CZ.yaml +106 -106
  144. data/lib/countries/data/subdivisions/DE.yaml +24 -37
  145. data/lib/countries/data/subdivisions/DJ.yaml +8 -13
  146. data/lib/countries/data/subdivisions/DK.yaml +5 -13
  147. data/lib/countries/data/subdivisions/DM.yaml +30 -30
  148. data/lib/countries/data/subdivisions/DO.yaml +102 -210
  149. data/lib/countries/data/subdivisions/DZ.yaml +48 -103
  150. data/lib/countries/data/subdivisions/EC.yaml +72 -77
  151. data/lib/countries/data/subdivisions/EE.yaml +15 -30
  152. data/lib/countries/data/subdivisions/EG.yaml +27 -55
  153. data/lib/countries/data/subdivisions/ER.yaml +18 -20
  154. data/lib/countries/data/subdivisions/ES.yaml +69 -284
  155. data/lib/countries/data/subdivisions/ET.yaml +29 -33
  156. data/lib/countries/data/subdivisions/FI.yaml +33 -35
  157. data/lib/countries/data/subdivisions/FJ.yaml +29 -155
  158. data/lib/countries/data/subdivisions/FM.yaml +6 -13
  159. data/lib/countries/data/subdivisions/FR.yaml +320 -482
  160. data/lib/countries/data/subdivisions/GA.yaml +23 -25
  161. data/lib/countries/data/subdivisions/GB.yaml +561 -846
  162. data/lib/countries/data/subdivisions/GD.yaml +21 -23
  163. data/lib/countries/data/subdivisions/GE.yaml +20 -30
  164. data/lib/countries/data/subdivisions/GH.yaml +24 -40
  165. data/lib/countries/data/subdivisions/GL.yaml +3 -36
  166. data/lib/countries/data/subdivisions/GM.yaml +10 -19
  167. data/lib/countries/data/subdivisions/GN.yaml +107 -176
  168. data/lib/countries/data/subdivisions/GQ.yaml +27 -32
  169. data/lib/countries/data/subdivisions/GR.yaml +14 -123
  170. data/lib/countries/data/subdivisions/GT.yaml +64 -69
  171. data/lib/countries/data/subdivisions/GW.yaml +28 -60
  172. data/lib/countries/data/subdivisions/GY.yaml +30 -33
  173. data/lib/countries/data/subdivisions/HN.yaml +54 -56
  174. data/lib/countries/data/subdivisions/HR.yaml +21 -44
  175. data/lib/countries/data/subdivisions/HT.yaml +24 -35
  176. data/lib/countries/data/subdivisions/HU.yaml +129 -130
  177. data/lib/countries/data/subdivisions/ID.yaml +41 -143
  178. data/lib/countries/data/subdivisions/IE.yaml +30 -90
  179. data/lib/countries/data/subdivisions/IL.yaml +8 -17
  180. data/lib/countries/data/subdivisions/IN.yaml +88 -119
  181. data/lib/countries/data/subdivisions/IQ.yaml +20 -54
  182. data/lib/countries/data/subdivisions/IR.yaml +61 -93
  183. data/lib/countries/data/subdivisions/IS.yaml +27 -31
  184. data/lib/countries/data/subdivisions/IT.yaml +131 -332
  185. data/lib/countries/data/subdivisions/JM.yaml +42 -42
  186. data/lib/countries/data/subdivisions/JO.yaml +14 -61
  187. data/lib/countries/data/subdivisions/JP.yaml +95 -122
  188. data/lib/countries/data/subdivisions/KE.yaml +49 -467
  189. data/lib/countries/data/subdivisions/KG.yaml +15 -29
  190. data/lib/countries/data/subdivisions/KH.yaml +25 -85
  191. data/lib/countries/data/subdivisions/KI.yaml +7 -14
  192. data/lib/countries/data/subdivisions/KM.yaml +3 -6
  193. data/lib/countries/data/subdivisions/KN.yaml +44 -78
  194. data/lib/countries/data/subdivisions/KP.yaml +11 -116
  195. data/lib/countries/data/subdivisions/KR.yaml +21 -75
  196. data/lib/countries/data/subdivisions/KW.yaml +8 -13
  197. data/lib/countries/data/subdivisions/KZ.yaml +22 -38
  198. data/lib/countries/data/subdivisions/LA.yaml +24 -48
  199. data/lib/countries/data/subdivisions/LB.yaml +8 -55
  200. data/lib/countries/data/subdivisions/LC.yaml +10 -101
  201. data/lib/countries/data/subdivisions/LI.yaml +31 -72
  202. data/lib/countries/data/subdivisions/LK.yaml +52 -151
  203. data/lib/countries/data/subdivisions/LR.yaml +43 -63
  204. data/lib/countries/data/subdivisions/LS.yaml +30 -30
  205. data/lib/countries/data/subdivisions/LT.yaml +78 -632
  206. data/lib/countries/data/subdivisions/LU.yaml +12 -79
  207. data/lib/countries/data/subdivisions/LV.yaml +126 -347
  208. data/lib/countries/data/subdivisions/LY.yaml +48 -74
  209. data/lib/countries/data/subdivisions/MA.yaml +199 -288
  210. data/lib/countries/data/subdivisions/MC.yaml +17 -173
  211. data/lib/countries/data/subdivisions/MD.yaml +57 -318
  212. data/lib/countries/data/subdivisions/ME.yaml +65 -86
  213. data/lib/countries/data/subdivisions/MG.yaml +6 -12
  214. data/lib/countries/data/subdivisions/MH.yaml +50 -112
  215. data/lib/countries/data/subdivisions/MK.yaml +237 -241
  216. data/lib/countries/data/subdivisions/ML.yaml +27 -32
  217. data/lib/countries/data/subdivisions/MM.yaml +29 -45
  218. data/lib/countries/data/subdivisions/MN.yaml +36 -51
  219. data/lib/countries/data/subdivisions/MR.yaml +21 -62
  220. data/lib/countries/data/subdivisions/MT.yaml +190 -206
  221. data/lib/countries/data/subdivisions/MU.yaml +36 -44
  222. data/lib/countries/data/subdivisions/MV.yaml +21 -49
  223. data/lib/countries/data/subdivisions/MW.yaml +85 -121
  224. data/lib/countries/data/subdivisions/MX.yaml +96 -105
  225. data/lib/countries/data/subdivisions/MY.yaml +46 -47
  226. data/lib/countries/data/subdivisions/MZ.yaml +33 -33
  227. data/lib/countries/data/subdivisions/NA.yaml +40 -41
  228. data/lib/countries/data/subdivisions/NE.yaml +22 -23
  229. data/lib/countries/data/subdivisions/NG.yaml +105 -109
  230. data/lib/countries/data/subdivisions/NI.yaml +47 -52
  231. data/lib/countries/data/subdivisions/NL.yaml +38 -96
  232. data/lib/countries/data/subdivisions/NO.yaml +18 -80
  233. data/lib/countries/data/subdivisions/NP.yaml +61 -115
  234. data/lib/countries/data/subdivisions/NR.yaml +40 -41
  235. data/lib/countries/data/subdivisions/NZ.yaml +47 -50
  236. data/lib/countries/data/subdivisions/OM.yaml +15 -76
  237. data/lib/countries/data/subdivisions/PA.yaml +39 -65
  238. data/lib/countries/data/subdivisions/PE.yaml +70 -79
  239. data/lib/countries/data/subdivisions/PG.yaml +31 -76
  240. data/lib/countries/data/subdivisions/PH.yaml +252 -437
  241. data/lib/countries/data/subdivisions/PK.yaml +17 -35
  242. data/lib/countries/data/subdivisions/PL.yaml +16 -16
  243. data/lib/countries/data/subdivisions/PS.yaml +16 -163
  244. data/lib/countries/data/subdivisions/PT.yaml +60 -60
  245. data/lib/countries/data/subdivisions/PW.yaml +44 -50
  246. data/lib/countries/data/subdivisions/PY.yaml +50 -53
  247. data/lib/countries/data/subdivisions/QA.yaml +7 -26
  248. data/lib/countries/data/subdivisions/RO.yaml +80 -103
  249. data/lib/countries/data/subdivisions/RS.yaml +92 -133
  250. data/lib/countries/data/subdivisions/RU.yaml +89 -197
  251. data/lib/countries/data/subdivisions/RW.yaml +15 -15
  252. data/lib/countries/data/subdivisions/SA.yaml +15 -28
  253. data/lib/countries/data/subdivisions/SB.yaml +22 -27
  254. data/lib/countries/data/subdivisions/SC.yaml +71 -94
  255. data/lib/countries/data/subdivisions/SD.yaml +18 -67
  256. data/lib/countries/data/subdivisions/SE.yaml +57 -60
  257. data/lib/countries/data/subdivisions/SG.yaml +15 -22
  258. data/lib/countries/data/subdivisions/SH.yaml +7 -18
  259. data/lib/countries/data/subdivisions/SI.yaml +598 -803
  260. data/lib/countries/data/subdivisions/SK.yaml +24 -24
  261. data/lib/countries/data/subdivisions/SL.yaml +12 -15
  262. data/lib/countries/data/subdivisions/SM.yaml +23 -25
  263. data/lib/countries/data/subdivisions/SN.yaml +36 -63
  264. data/lib/countries/data/subdivisions/SO.yaml +54 -54
  265. data/lib/countries/data/subdivisions/SR.yaml +30 -30
  266. data/lib/countries/data/subdivisions/SS.yaml +10 -107
  267. data/lib/countries/data/subdivisions/ST.yaml +3 -3
  268. data/lib/countries/data/subdivisions/SV.yaml +42 -42
  269. data/lib/countries/data/subdivisions/SY.yaml +16 -41
  270. data/lib/countries/data/subdivisions/SZ.yaml +10 -11
  271. data/lib/countries/data/subdivisions/TD.yaml +57 -114
  272. data/lib/countries/data/subdivisions/TG.yaml +15 -15
  273. data/lib/countries/data/subdivisions/TH.yaml +222 -240
  274. data/lib/countries/data/subdivisions/TJ.yaml +5 -27
  275. data/lib/countries/data/subdivisions/TL.yaml +29 -34
  276. data/lib/countries/data/subdivisions/TM.yaml +10 -22
  277. data/lib/countries/data/subdivisions/TN.yaml +26 -49
  278. data/lib/countries/data/subdivisions/TO.yaml +13 -14
  279. data/lib/countries/data/subdivisions/TR.yaml +185 -214
  280. data/lib/countries/data/subdivisions/TT.yaml +41 -62
  281. data/lib/countries/data/subdivisions/TV.yaml +18 -34
  282. data/lib/countries/data/subdivisions/TW.yaml +50 -98
  283. data/lib/countries/data/subdivisions/TZ.yaml +72 -120
  284. data/lib/countries/data/subdivisions/UA.yaml +27 -55
  285. data/lib/countries/data/subdivisions/UG.yaml +277 -656
  286. data/lib/countries/data/subdivisions/UM.yaml +27 -35
  287. data/lib/countries/data/subdivisions/US.yaml +171 -193
  288. data/lib/countries/data/subdivisions/UY.yaml +55 -57
  289. data/lib/countries/data/subdivisions/UZ.yaml +16 -30
  290. data/lib/countries/data/subdivisions/VC.yaml +18 -22
  291. data/lib/countries/data/subdivisions/VE.yaml +75 -76
  292. data/lib/countries/data/subdivisions/VN.yaml +190 -193
  293. data/lib/countries/data/subdivisions/VU.yaml +8 -13
  294. data/lib/countries/data/subdivisions/WF.yaml +3 -30
  295. data/lib/countries/data/subdivisions/WS.yaml +33 -33
  296. data/lib/countries/data/subdivisions/YE.yaml +38 -82
  297. data/lib/countries/data/subdivisions/ZA.yaml +16 -28
  298. data/lib/countries/data/subdivisions/ZM.yaml +26 -35
  299. data/lib/countries/data/subdivisions/ZW.yaml +30 -35
  300. data/lib/countries/data/translations/countries-es.yaml +1 -1
  301. data/lib/countries/data/translations/countries-pt_BR.yaml +1 -1
  302. data/lib/countries/data.rb +9 -4
  303. data/lib/countries/mongoid.rb +2 -0
  304. data/lib/countries/sources/cldr/downloader.rb +2 -2
  305. data/lib/countries/sources/cldr/subdivision_updater.rb +2 -2
  306. data/lib/countries/subdivision.rb +7 -2
  307. data/lib/countries/translations.rb +6 -1
  308. data/lib/countries/version.rb +1 -1
  309. metadata +10 -4
@@ -2,7 +2,8 @@
2
2
  '01':
3
3
  name: Western
4
4
  code: '01'
5
- unofficial_names: Western
5
+ unofficial_names:
6
+ - Western
6
7
  geo:
7
8
  latitude: -15.9454906
8
9
  longitude: 23.3823545
@@ -62,12 +63,12 @@
62
63
  fa: استان غربی (زامبیا)
63
64
  he: מחוז המערב
64
65
  zu: Western Province, Zambiya
65
- comments:
66
66
  type: province
67
67
  '02':
68
68
  name: Central
69
69
  code: '02'
70
- unofficial_names: Central
70
+ unofficial_names:
71
+ - Central
71
72
  geo:
72
73
  latitude: -14.3112263
73
74
  longitude: 28.299435
@@ -125,12 +126,12 @@
125
126
  cs: Centrální provincie (Zambie)
126
127
  'no': Central
127
128
  fa: استان مرکزی، زامبیا
128
- comments:
129
129
  type: province
130
130
  '03':
131
131
  name: Eastern
132
132
  code: '03'
133
- unofficial_names: Eastern
133
+ unofficial_names:
134
+ - Eastern
134
135
  geo:
135
136
  latitude: -13.8056187
136
137
  longitude: 31.99280779999999
@@ -182,17 +183,17 @@
182
183
  lv: Austrumu province
183
184
  ceb: Eastern Province (lalawigan sa Zambia)
184
185
  zh: 东方省
185
- ccp: "\U0001111B\U0001112A\U00011107\U00011134\U0001111F\U0001112C\U00011107\U00011134\U00011108\U0001112C"
186
+ ccp: "𑄛𑄪𑄇𑄴𑄟𑄬𑄇𑄴𑄈𑄬"
186
187
  'no': Eastern
187
188
  ca: Província de l’Est
188
189
  fa: استان شرقی (زامبیا)
189
190
  he: האזור המזרחי
190
- comments:
191
191
  type: province
192
192
  '04':
193
193
  name: Luapula
194
194
  code: '04'
195
- unofficial_names: Luapula
195
+ unofficial_names:
196
+ - Luapula
196
197
  geo:
197
198
  latitude: -11.564831
198
199
  longitude: 29.0459927
@@ -244,18 +245,18 @@
244
245
  lv: Luapalas province
245
246
  ceb: Luapula Province
246
247
  zh: 卢阿普拉省
247
- ccp: "\U00011123\U0001112A\U00011120\U0001111B\U0001112A\U00011123"
248
+ ccp: "𑄣𑄪𑄠𑄛𑄪𑄣"
248
249
  ca: província de Luapula
249
250
  'no': Luapula
250
251
  cs: Provincie Luapula
251
252
  fa: استان لوآپولا
252
253
  hu: Luapula
253
- comments:
254
254
  type: province
255
255
  '05':
256
256
  name: Northern
257
257
  code: '05'
258
- unofficial_names: Northern
258
+ unofficial_names:
259
+ - Northern
259
260
  geo:
260
261
  latitude: -9.7670177
261
262
  longitude: 30.8958242
@@ -306,16 +307,16 @@
306
307
  lv: Ziemeļu province
307
308
  ceb: Northern Province
308
309
  zh: 北方省
309
- ccp: "\U00011105\U0001112A\U00011116\U00011133\U00011126\U00011127\U00011122\U00011134\U0001111F\U0001112C\U00011107\U00011134\U00011108\U0001112C"
310
+ ccp: "𑄅𑄪𑄖𑄳𑄦𑄧𑄢𑄴𑄟𑄬𑄇𑄴𑄈𑄬"
310
311
  'no': Northern
311
312
  fa: استان شمالی (زامبیا)
312
313
  he: אזור הצפון
313
- comments:
314
314
  type: province
315
315
  '06':
316
316
  name: North-Western
317
317
  code: '06'
318
- unofficial_names: North-Western
318
+ unofficial_names:
319
+ - North-Western
319
320
  geo:
320
321
  latitude: -13.0050258
321
322
  longitude: 24.9042208
@@ -368,17 +369,17 @@
368
369
  ceb: North-Western Province
369
370
  zh: 西北省
370
371
  yue_Hans: 西北省
371
- ccp: "\U00011105\U0001112A\U00011116\U00011133\U00011126\U00011127\U00011122\U00011134-\U0001111B\U00011127\U0001110F\U00011128\U0001111F\U00011134\U0001111F\U0001112C\U00011107\U00011134\U00011108\U0001112C"
372
+ ccp: "𑄅𑄪𑄖𑄳𑄦𑄧𑄢𑄴-𑄛𑄧𑄏𑄨𑄟𑄴𑄟𑄬𑄇𑄴𑄈𑄬"
372
373
  yue: 西北省
373
374
  'no': North-Western
374
375
  ca: Província del Nord-oest
375
376
  fa: استان شمال غربی (زامبیا)
376
- comments:
377
377
  type: province
378
378
  '07':
379
379
  name: Southern
380
380
  code: '07'
381
- unofficial_names: Southern
381
+ unofficial_names:
382
+ - Southern
382
383
  geo:
383
384
  latitude: -16.9620634
384
385
  longitude: 26.419389
@@ -431,17 +432,17 @@
431
432
  lv: Dienvidu province
432
433
  ceb: Southern Province
433
434
  zh: 南部省
434
- ccp: "\U00011118\U00011127\U0001110A\U00011128\U0001111A\U00011134\U0001111F\U0001112C\U00011107\U00011134\U00011108\U0001112C"
435
+ ccp: "𑄘𑄧𑄊𑄨𑄚𑄴𑄟𑄬𑄇𑄴𑄈𑄬"
435
436
  'no': Southern
436
437
  ca: Província Meridional
437
438
  fa: استان جنوبی (زامبیا)
438
439
  ga: Cúige an Deiscirt
439
- comments:
440
440
  type: province
441
441
  '08':
442
442
  name: Copperbelt
443
443
  code: '08'
444
- unofficial_names: Copperbelt
444
+ unofficial_names:
445
+ - Copperbelt
445
446
  geo:
446
447
  latitude: -13.0570073
447
448
  longitude: 27.5495846
@@ -495,16 +496,16 @@
495
496
  lv: Koperbeltas province
496
497
  ceb: Copperbelt Province
497
498
  zh: 铜带省
498
- ccp: "\U00011107\U0001112E\U0001111B\U0001112C\U00011122\U00011134\U0001111D\U0001112C\U00011123\U00011134\U00011111\U00011134"
499
+ ccp: "𑄇𑄮𑄛𑄬𑄢𑄴𑄝𑄬𑄣𑄴𑄑𑄴"
499
500
  ca: província de Copperbelt
500
501
  'no': Copperbelt
501
502
  he: מחוז קופרבלט
502
- comments:
503
503
  type: province
504
504
  '09':
505
505
  name: Lusaka
506
506
  code: '09'
507
- unofficial_names: Lusaka
507
+ unofficial_names:
508
+ - Lusaka
508
509
  geo:
509
510
  latitude: -15.416667
510
511
  longitude: 28.283333
@@ -555,24 +556,15 @@
555
556
  lv: Lusakas province
556
557
  ceb: Lusaka Province
557
558
  zh: 卢萨卡省
558
- ccp: "\U00011123\U0001112A\U00011125\U00011107"
559
+ ccp: "𑄣𑄪𑄥𑄇"
559
560
  'no': Lusaka
560
561
  ca: Lusaka
561
562
  cy: Talaith Lusaka
562
563
  fa: استان لوساکا
563
- comments:
564
564
  type: province
565
565
  '10':
566
566
  name: Muchinga
567
567
  code: '10'
568
- unofficial_names:
569
- geo:
570
- latitude:
571
- longitude:
572
- min_latitude:
573
- min_longitude:
574
- max_latitude:
575
- max_longitude:
576
568
  translations:
577
569
  ar: محافظة موتشينغا
578
570
  bn: মোসিঙ্গা প্রদেশ
@@ -611,9 +603,8 @@
611
603
  ceb: Muchinga Province
612
604
  lt: Mučingos provincija
613
605
  zh: 穆欽加省
614
- ccp: "\U0001111F\U0001112A\U0001110C\U00011128\U00011101\U00011109"
606
+ ccp: "𑄟𑄪𑄌𑄨𑄁𑄉"
615
607
  'no': Muchinga
616
608
  cy: Talaith Muchinga
617
609
  fa: استان موچینگا
618
- comments:
619
610
  type: province
@@ -2,7 +2,8 @@
2
2
  BU:
3
3
  name: Bulawayo
4
4
  code: BU
5
- unofficial_names: Bulawayo
5
+ unofficial_names:
6
+ - Bulawayo
6
7
  geo:
7
8
  latitude: -20.1325066
8
9
  longitude: 28.626479
@@ -16,17 +17,17 @@ BU:
16
17
  ceb: Bulawayo Province
17
18
  ar: إقليم بولاوايو
18
19
  ja: ブラワヨ
19
- ccp: "\U0001111D\U0001112A\U00011123\U00011124\U00011103\U0001112E"
20
+ ccp: "𑄝𑄪𑄣𑄤𑄃𑄮"
20
21
  be: Булавая
21
22
  cy: Talaith Bulawayo
22
23
  fr: province de Bulawayo
23
24
  zh: 布拉瓦约省
24
- comments:
25
25
  type: province
26
26
  HA:
27
27
  name: Harare
28
28
  code: HA
29
- unofficial_names: Harare
29
+ unofficial_names:
30
+ - Harare
30
31
  geo:
31
32
  latitude: -17.863889
32
33
  longitude: 31.029722
@@ -41,7 +42,7 @@ HA:
41
42
  ceb: Harare Province
42
43
  ar: إقليم هراري
43
44
  ja: ハラレ州
44
- ccp: "\U00011126\U00011122\U00011122\U0001112C"
45
+ ccp: "𑄦𑄢𑄢𑄬"
45
46
  ko: 하라레주
46
47
  pt: Harare
47
48
  nb: Harare Province
@@ -53,12 +54,12 @@ HA:
53
54
  uk: Хараре
54
55
  zh: 哈拉雷省
55
56
  zu: Harare, Isifundazwe
56
- comments:
57
57
  type: province
58
58
  MA:
59
59
  name: Manicaland
60
60
  code: MA
61
- unofficial_names: Manicaland
61
+ unofficial_names:
62
+ - Manicaland
62
63
  geo:
63
64
  latitude: -18.9216386
64
65
  longitude: 32.174605
@@ -114,15 +115,15 @@ MA:
114
115
  lv: Manikalandes province
115
116
  ceb: Manicaland Province
116
117
  sr_Latn: Manikalend
117
- ccp: "\U0001111F\U00011127\U0001111A\U00011128\U00011107\U00011123\U00011133\U00011120\U0001111A\U00011133\U00011113\U00011134"
118
+ ccp: "𑄟𑄧𑄚𑄨𑄇𑄣𑄳𑄠𑄚𑄳𑄓𑄴"
118
119
  'no': Manicaland
119
120
  zu: Manicaland
120
- comments:
121
121
  type: province
122
122
  MC:
123
123
  name: Mashonaland Central
124
124
  code: MC
125
- unofficial_names: Mashonaland Central
125
+ unofficial_names:
126
+ - Mashonaland Central
126
127
  geo:
127
128
  latitude: -16.7644295
128
129
  longitude: 31.0793705
@@ -177,16 +178,15 @@ MC:
177
178
  lv: Centrālās Mašonalendas province
178
179
  ceb: Mashonaland Central Province
179
180
  sr_Latn: Mašonalend Central
180
- ccp: "\U0001111F\U00011125\U0001112E\U0001111A\U00011123\U00011133\U00011120\U0001111A\U00011133\U00011113\U00011134
181
- \U00011125\U0001112C\U0001111A\U00011134\U00011111\U00011133\U00011122\U00011123\U00011134"
181
+ ccp: "𑄟𑄥𑄮𑄚𑄣𑄳𑄠𑄚𑄳𑄓𑄴 𑄥𑄬𑄚𑄴𑄑𑄳𑄢𑄣𑄴"
182
182
  'no': Mashonaland Central
183
183
  zu: Mashonaland Central
184
- comments:
185
184
  type: province
186
185
  ME:
187
186
  name: Mashonaland East
188
187
  code: ME
189
- unofficial_names: Mashonaland East
188
+ unofficial_names:
189
+ - Mashonaland East
190
190
  geo:
191
191
  latitude: -18.5871642
192
192
  longitude: 31.2626366
@@ -241,17 +241,16 @@ ME:
241
241
  lv: Austrummašonalendas province
242
242
  ceb: Mashonaland East Province
243
243
  sr_Latn: Mašonalend Istok
244
- ccp: "\U0001111F\U00011125\U0001112E\U0001111A\U00011123\U00011133\U00011120\U0001111A\U00011133\U00011113\U00011134
245
- \U0001111B\U0001112A\U00011107\U00011134"
244
+ ccp: "𑄟𑄥𑄮𑄚𑄣𑄳𑄠𑄚𑄳𑄓𑄴 𑄛𑄪𑄇𑄴"
246
245
  he: משונאלנד מזרח פרובינציה
247
246
  'no': Mashonaland East
248
247
  zu: Mashonaland East
249
- comments:
250
248
  type: province
251
249
  MI:
252
250
  name: Midlands
253
251
  code: MI
254
- unofficial_names: Midlands
252
+ unofficial_names:
253
+ - Midlands
255
254
  geo:
256
255
  latitude: -19.0552009
257
256
  longitude: 29.6035495
@@ -306,15 +305,15 @@ MI:
306
305
  lv: Midlendsas province
307
306
  ceb: Midlands Province
308
307
  sr_Latn: Midlends
309
- ccp: "\U0001111F\U00011128\U00011116\U00011134\U00011123\U00011133\U00011120\U0001111A\U00011133\U00011113\U00011134\U00011125\U00011134"
308
+ ccp: "𑄟𑄨𑄖𑄴𑄣𑄳𑄠𑄚𑄳𑄓𑄴𑄥𑄴"
310
309
  'no': Midlands
311
310
  zu: Midlands (Isifundazwe)
312
- comments:
313
311
  type: province
314
312
  MN:
315
313
  name: Matabeleland North
316
314
  code: MN
317
- unofficial_names: Matabeleland North
315
+ unofficial_names:
316
+ - Matabeleland North
318
317
  geo:
319
318
  latitude: -18.5331566
320
319
  longitude: 27.5495846
@@ -370,16 +369,15 @@ MN:
370
369
  lv: Ziemeļmatabelelendas province
371
370
  ceb: Matabeleland North Province
372
371
  sr_Latn: Matabelelend Sever
373
- ccp: "\U0001111F\U00011111\U0001111D\U00011128\U00011123\U00011128\U00011123\U00011133\U00011120\U0001111A\U00011133\U00011113\U00011134
374
- \U00011105\U0001112A\U00011116\U00011133\U00011126\U00011127\U00011122\U00011134"
372
+ ccp: "𑄟𑄑𑄝𑄨𑄣𑄨𑄣𑄳𑄠𑄚𑄳𑄓𑄴 𑄅𑄪𑄖𑄳𑄦𑄧𑄢𑄴"
375
373
  'no': Matabeleland North
376
374
  zu: Matabeleland North
377
- comments:
378
375
  type: province
379
376
  MS:
380
377
  name: Matabeleland South
381
378
  code: MS
382
- unofficial_names: Matabeleland South
379
+ unofficial_names:
380
+ - Matabeleland South
383
381
  geo:
384
382
  latitude: -21.052337
385
383
  longitude: 29.0459927
@@ -434,17 +432,16 @@ MS:
434
432
  lv: Dienvidmatabelelendas province
435
433
  ceb: Matabeleland South Province
436
434
  sr_Latn: Matabelelend Jug
437
- ccp: "\U0001111F\U00011111\U0001111D\U00011128\U00011123\U00011128\U00011123\U00011133\U00011120\U0001111A\U00011133\U00011113\U00011134
438
- \U00011118\U00011127\U0001110A\U00011128\U0001111A\U00011134"
435
+ ccp: "𑄟𑄑𑄝𑄨𑄣𑄨𑄣𑄳𑄠𑄚𑄳𑄓𑄴 𑄘𑄧𑄊𑄨𑄚𑄴"
439
436
  'no': Matabeleland South
440
437
  hy: Հարավային Մատաբելելենդ
441
438
  zu: Matabeleland South
442
- comments:
443
439
  type: province
444
440
  MV:
445
441
  name: Masvingo
446
442
  code: MV
447
- unofficial_names: Masvingo
443
+ unofficial_names:
444
+ - Masvingo
448
445
  geo:
449
446
  latitude: -20.074444
450
447
  longitude: 30.83277799999999
@@ -499,16 +496,16 @@ MV:
499
496
  lv: Masvingo province
500
497
  ceb: Masvingo Province
501
498
  sr_Latn: Mašvingo
502
- ccp: "\U0001111F\U0001110C\U00011134\U0001111E\U00011128\U00011101\U00011109\U0001112E"
499
+ ccp: "𑄟𑄌𑄴𑄞𑄨𑄁𑄉𑄮"
503
500
  'no': Masvingo
504
501
  hy: Մասվինգո
505
502
  zu: Masvingo (Isifundazwe)
506
- comments:
507
503
  type: province
508
504
  MW:
509
505
  name: Mashonaland West
510
506
  code: MW
511
- unofficial_names: Mashonaland West
507
+ unofficial_names:
508
+ - Mashonaland West
512
509
  geo:
513
510
  latitude: -17.4851029
514
511
  longitude: 29.7889248
@@ -563,10 +560,8 @@ MW:
563
560
  lv: Rietummašonalendas province
564
561
  ceb: Mashonaland West Province
565
562
  sr_Latn: Mašonalend Zapad
566
- ccp: "\U0001111F\U00011125\U0001112E\U0001111A\U00011123\U00011133\U00011120\U0001111A\U00011133\U00011113\U00011134
567
- \U0001111B\U00011127\U0001110F\U00011128\U0001111F\U00011134"
563
+ ccp: "𑄟𑄥𑄮𑄚𑄣𑄳𑄠𑄚𑄳𑄓𑄴 𑄛𑄧𑄏𑄨𑄟𑄴"
568
564
  'no': Mashonaland West
569
565
  he: משונלנד-מערב
570
566
  zu: Mashonaland West
571
- comments:
572
567
  type: province
@@ -64,7 +64,7 @@ DJ: Yibuti
64
64
  DK: Dinamarca
65
65
  DM: Dominica
66
66
  DO: República Dominicana
67
- DZ: Algeria
67
+ DZ: Argelia
68
68
  EC: Ecuador
69
69
  EE: Estonia
70
70
  EG: Egipto
@@ -200,7 +200,7 @@ SB: Ilhas Salomão
200
200
  SC: Seychelles
201
201
  SD: Sudão
202
202
  SE: Suécia
203
- SG: Cingapura
203
+ SG: Singapura
204
204
  SH: Santa Helena, Ascensão e Tristão da Cunha
205
205
  SI: Eslovênia
206
206
  SJ: Svalbard e a Ilha de Jan Mayen
@@ -14,7 +14,10 @@ module ISO3166
14
14
  @subdivisions = {}
15
15
 
16
16
  def initialize(alpha2)
17
- @alpha2 = alpha2.to_s.upcase
17
+ alpha2 = alpha2.to_s if alpha2.is_a?(Symbol)
18
+ alpha2 = alpha2.upcase if alpha2.match?(/[a-z]/)
19
+
20
+ @alpha2 = alpha2
18
21
  end
19
22
 
20
23
  def call
@@ -27,8 +30,10 @@ module ISO3166
27
30
  # Overriding an existing country will also remove it from the internal management of translations.
28
31
  def register(data)
29
32
  alpha2 = data[:alpha2].upcase
30
- @registered_data[alpha2] = deep_stringify_keys(data)
31
- @registered_data[alpha2]['translations'] = Translations.new.merge(data['translations'] || {})
33
+ @registered_data[alpha2] = deep_stringify_keys(data.except('translations', :translations))
34
+ translations = data['translations'] || data[:translations] || {}
35
+ translations.transform_keys!(&:to_sym)
36
+ @registered_data[alpha2]['translations'] = Translations.new.merge(translations)
32
37
  @cache = cache.merge(@registered_data)
33
38
  end
34
39
 
@@ -156,7 +161,7 @@ module ISO3166
156
161
 
157
162
  def deep_stringify_keys(data)
158
163
  data.transform_keys!(&:to_s)
159
- data.transform_values! { |v| v.is_a?(Hash) ? deep_stringify_keys(v) : v }
164
+ data.transform_values! { |value| value.is_a?(Hash) ? deep_stringify_keys(value) : value }
160
165
 
161
166
  data
162
167
  end
@@ -8,6 +8,7 @@ module ISO3166
8
8
 
9
9
  class << self
10
10
  # Convert an +ISO3166::Country+ to the data that is stored by Mongoid.
11
+ # :reek:NilCheck
11
12
  def mongoize(country)
12
13
  if country.is_a?(self) && !country.data.nil?
13
14
  country.alpha2
@@ -28,6 +29,7 @@ module ISO3166
28
29
 
29
30
  private
30
31
 
32
+ # :reek:NilCheck
31
33
  def valid_alpha2?(country)
32
34
  country.is_a?(String) && !ISO3166::Country.new(country).nil?
33
35
  end
@@ -26,9 +26,9 @@ module Sources
26
26
  path_listing.each do |path|
27
27
  next unless path['name'] =~ /\.xml$/
28
28
 
29
- File.open(File.join(folder, path['name']), 'w') do |f|
29
+ File.open(File.join(folder, path['name']), 'w') do |file|
30
30
  raw_url = URI.parse(path['download_url'])
31
- f.write(Net::HTTP.get_response(raw_url).body)
31
+ file.write(Net::HTTP.get_response(raw_url).body)
32
32
  end
33
33
  end
34
34
  end
@@ -10,9 +10,9 @@ module Sources
10
10
  # Updates local subdivision files with data from the Unicode CLDR repository
11
11
  class SubdivisionUpdater
12
12
  def call
13
- d = Dir['./tmp/cldr/trunk/common/subdivisions/*.xml']
13
+ dirs = Dir['./tmp/cldr/trunk/common/subdivisions/*.xml']
14
14
  @loader = Sources::Local::CachedLoader.new(Sources::Local::Subdivision)
15
- d.each { |file_path| update_locale(file_path) }
15
+ dirs.each { |file_path| update_locale(file_path) }
16
16
  end
17
17
 
18
18
  def update_locale(file_path)
@@ -11,8 +11,8 @@ module ISO3166
11
11
  :type
12
12
 
13
13
  def initialize(attrs)
14
- attrs.each_pair do |k, v|
15
- send "#{k}=", v
14
+ attrs.each_pair do |key, value|
15
+ send "#{key}=", value
16
16
  end
17
17
  end
18
18
 
@@ -24,5 +24,10 @@ module ISO3166
24
24
  def code_with_translations
25
25
  { code => translations }
26
26
  end
27
+
28
+ def match?(subdivision_str)
29
+ name == subdivision_str ||
30
+ translations.values.include?(subdivision_str)
31
+ end
27
32
  end
28
33
  end
@@ -5,9 +5,14 @@ module ISO3166
5
5
  #
6
6
  # E.g. if a country has translations for +pt+, and the user looks up +pt-br+ fallback
7
7
  # to +pt+ to prevent from showing nil values
8
+ #
9
+ # Also allows "indifferent access" to the hash, so you can use strings or symbols
8
10
  class Translations < Hash
9
11
  def [](locale)
10
- super || super(locale.to_s.sub(/-.*/, ''))
12
+ translations = locale.is_a?(String) ? super(locale.to_sym) : super
13
+ return translations if translations
14
+
15
+ super(locale.to_s.sub(/-.*/, '').to_sym)
11
16
  end
12
17
  end
13
18
  end
@@ -1,5 +1,5 @@
1
1
  # frozen_string_literal: true
2
2
 
3
3
  module Countries
4
- VERSION = '7.1.1'
4
+ VERSION = '8.0.0'
5
5
  end
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: countries
3
3
  version: !ruby/object:Gem::Version
4
- version: 7.1.1
4
+ version: 8.0.0
5
5
  platform: ruby
6
6
  authors:
7
7
  - Josh Robinson
@@ -10,7 +10,7 @@ authors:
10
10
  - Pedro Moreira
11
11
  bindir: bin
12
12
  cert_chain: []
13
- date: 2025-02-08 00:00:00.000000000 Z
13
+ date: 1980-01-02 00:00:00.000000000 Z
14
14
  dependencies:
15
15
  - !ruby/object:Gem::Dependency
16
16
  name: unaccent
@@ -33,6 +33,9 @@ dependencies:
33
33
  - - ">="
34
34
  - !ruby/object:Gem::Version
35
35
  version: '3'
36
+ - - "<"
37
+ - !ruby/object:Gem::Version
38
+ version: '8'
36
39
  type: :development
37
40
  prerelease: false
38
41
  version_requirements: !ruby/object:Gem::Requirement
@@ -40,6 +43,9 @@ dependencies:
40
43
  - - ">="
41
44
  - !ruby/object:Gem::Version
42
45
  version: '3'
46
+ - - "<"
47
+ - !ruby/object:Gem::Version
48
+ version: '8'
43
49
  - !ruby/object:Gem::Dependency
44
50
  name: nokogiri
45
51
  requirement: !ruby/object:Gem::Requirement
@@ -848,14 +854,14 @@ required_ruby_version: !ruby/object:Gem::Requirement
848
854
  requirements:
849
855
  - - ">="
850
856
  - !ruby/object:Gem::Version
851
- version: '3.1'
857
+ version: '3.2'
852
858
  required_rubygems_version: !ruby/object:Gem::Requirement
853
859
  requirements:
854
860
  - - ">="
855
861
  - !ruby/object:Gem::Version
856
862
  version: '0'
857
863
  requirements: []
858
- rubygems_version: 3.6.2
864
+ rubygems_version: 3.6.8
859
865
  specification_version: 4
860
866
  summary: Gives you a country object full of all sorts of useful information.
861
867
  test_files: []