@mailwoman/codex 9.1.0 → 9.3.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 (287) hide show
  1. package/README.md +51 -8
  2. package/{address-system-conventions.ts → lib/address-system-conventions.ts} +9 -9
  3. package/{au → lib/au}/index.ts +4 -4
  4. package/{ca → lib/ca}/index.ts +4 -4
  5. package/{ca → lib/ca}/postal-code.ts +12 -12
  6. package/{ca → lib/ca}/province.ts +1 -1
  7. package/{ca → lib/ca}/street-type.ts +10 -12
  8. package/{country → lib/country}/codes.ts +1 -1
  9. package/{country → lib/country}/country.ts +43 -14
  10. package/lib/country/display-names.ts +150 -0
  11. package/lib/country/index.ts +17 -0
  12. package/lib/country/population.ts +265 -0
  13. package/{country → lib/country}/reference.ts +2 -2
  14. package/{country → lib/country}/subdivision.ts +62 -3
  15. package/{de → lib/de}/index.ts +4 -4
  16. package/{de → lib/de}/postleitzahl.ts +3 -3
  17. package/{es → lib/es}/codigo-postal.ts +24 -6
  18. package/{es → lib/es}/index.ts +1 -1
  19. package/{fr → lib/fr}/cedex.ts +1 -1
  20. package/{fr → lib/fr}/code-postal.ts +8 -8
  21. package/{fr → lib/fr}/departement.ts +5 -2
  22. package/{fr → lib/fr}/index.ts +6 -6
  23. package/{fr → lib/fr}/region.ts +1 -1
  24. package/{fr → lib/fr}/voie.ts +5 -13
  25. package/{gb → lib/gb}/country.ts +2 -10
  26. package/{gb → lib/gb}/index.ts +4 -4
  27. package/{gb → lib/gb}/postcode-area.ts +1 -1
  28. package/{gb → lib/gb}/street-type.ts +1 -1
  29. package/{index.ts → lib/index.ts} +22 -12
  30. package/{it → lib/it}/cap.ts +23 -5
  31. package/{it → lib/it}/index.ts +1 -1
  32. package/{jp → lib/jp}/index.ts +4 -4
  33. package/{jp → lib/jp}/postal-code.ts +11 -11
  34. package/{jp → lib/jp}/prefecture.ts +7 -5
  35. package/{normalize.ts → lib/normalize.ts} +15 -1
  36. package/{nz → lib/nz}/delivery-service.ts +1 -1
  37. package/{nz → lib/nz}/index.ts +2 -2
  38. package/lib/postcode-systems.ts +198 -0
  39. package/{tools → lib/tools}/build-country-surface-lexicon.ts +10 -9
  40. package/{tools → lib/tools}/export-country-surfaces.ts +8 -8
  41. package/lib/tools/generate-country-population.ts +142 -0
  42. package/{tools → lib/tools}/generate-country-reference.ts +8 -7
  43. package/{tools → lib/tools}/generate-official-languages.ts +15 -13
  44. package/{tools → lib/tools}/index.ts +4 -4
  45. package/{us → lib/us}/index.ts +8 -8
  46. package/{us → lib/us}/po-box.ts +1 -1
  47. package/{us → lib/us}/street-directional.ts +2 -2
  48. package/{us → lib/us}/street-suffix.ts +1 -1
  49. package/{us → lib/us}/unit-designator.ts +1 -1
  50. package/{us → lib/us}/zipcode.ts +2 -2
  51. package/out/address-system-conventions.d.ts +1 -1
  52. package/out/address-system-conventions.d.ts.map +1 -1
  53. package/out/address-system-conventions.js +8 -8
  54. package/out/address-system-conventions.js.map +1 -1
  55. package/out/au/delivery-service.d.ts.map +1 -1
  56. package/out/au/delivery-service.js.map +1 -1
  57. package/out/au/index.d.ts +4 -4
  58. package/out/au/index.d.ts.map +1 -1
  59. package/out/au/index.js +4 -4
  60. package/out/au/index.js.map +1 -1
  61. package/out/au/level-designator.d.ts.map +1 -1
  62. package/out/au/level-designator.js.map +1 -1
  63. package/out/au/postcode.d.ts.map +1 -1
  64. package/out/au/postcode.js.map +1 -1
  65. package/out/au/state.d.ts.map +1 -1
  66. package/out/au/state.js.map +1 -1
  67. package/out/ca/index.d.ts +4 -4
  68. package/out/ca/index.d.ts.map +1 -1
  69. package/out/ca/index.js +4 -4
  70. package/out/ca/index.js.map +1 -1
  71. package/out/ca/postal-code.d.ts +11 -11
  72. package/out/ca/postal-code.d.ts.map +1 -1
  73. package/out/ca/postal-code.js +9 -9
  74. package/out/ca/postal-code.js.map +1 -1
  75. package/out/ca/province.d.ts.map +1 -1
  76. package/out/ca/province.js +1 -1
  77. package/out/ca/province.js.map +1 -1
  78. package/out/ca/street-type.d.ts.map +1 -1
  79. package/out/ca/street-type.js +9 -12
  80. package/out/ca/street-type.js.map +1 -1
  81. package/out/country/codes.d.ts.map +1 -1
  82. package/out/country/codes.js.map +1 -1
  83. package/out/country/country.d.ts +13 -11
  84. package/out/country/country.d.ts.map +1 -1
  85. package/out/country/country.js +35 -13
  86. package/out/country/country.js.map +1 -1
  87. package/out/country/display-names.d.ts +67 -0
  88. package/out/country/display-names.d.ts.map +1 -0
  89. package/out/country/display-names.js +118 -0
  90. package/out/country/display-names.js.map +1 -0
  91. package/out/country/index.d.ts +10 -8
  92. package/out/country/index.d.ts.map +1 -1
  93. package/out/country/index.js +10 -8
  94. package/out/country/index.js.map +1 -1
  95. package/out/country/names.d.ts.map +1 -1
  96. package/out/country/names.js.map +1 -1
  97. package/out/country/official-languages.d.ts.map +1 -1
  98. package/out/country/official-languages.js.map +1 -1
  99. package/out/country/population.d.ts +16 -0
  100. package/out/country/population.d.ts.map +1 -0
  101. package/out/country/population.js +265 -0
  102. package/out/country/population.js.map +1 -0
  103. package/out/country/reference-data.d.ts.map +1 -1
  104. package/out/country/reference-data.js.map +1 -1
  105. package/out/country/reference.d.ts +1 -1
  106. package/out/country/reference.d.ts.map +1 -1
  107. package/out/country/reference.js +2 -2
  108. package/out/country/reference.js.map +1 -1
  109. package/out/country/subdivision.d.ts +7 -0
  110. package/out/country/subdivision.d.ts.map +1 -1
  111. package/out/country/subdivision.js +52 -3
  112. package/out/country/subdivision.js.map +1 -1
  113. package/out/de/bundesland.d.ts.map +1 -1
  114. package/out/de/bundesland.js.map +1 -1
  115. package/out/de/index.d.ts +4 -4
  116. package/out/de/index.d.ts.map +1 -1
  117. package/out/de/index.js +4 -4
  118. package/out/de/index.js.map +1 -1
  119. package/out/de/postleitzahl.d.ts +3 -3
  120. package/out/de/postleitzahl.d.ts.map +1 -1
  121. package/out/de/postleitzahl.js +2 -2
  122. package/out/de/postleitzahl.js.map +1 -1
  123. package/out/de/street-type.d.ts.map +1 -1
  124. package/out/de/street-type.js.map +1 -1
  125. package/out/es/codigo-postal.d.ts +13 -2
  126. package/out/es/codigo-postal.d.ts.map +1 -1
  127. package/out/es/codigo-postal.js +21 -4
  128. package/out/es/codigo-postal.js.map +1 -1
  129. package/out/es/index.d.ts +1 -1
  130. package/out/es/index.d.ts.map +1 -1
  131. package/out/es/index.js +1 -1
  132. package/out/es/index.js.map +1 -1
  133. package/out/fr/cedex.d.ts +1 -1
  134. package/out/fr/cedex.d.ts.map +1 -1
  135. package/out/fr/cedex.js +1 -1
  136. package/out/fr/cedex.js.map +1 -1
  137. package/out/fr/code-postal.d.ts +7 -7
  138. package/out/fr/code-postal.d.ts.map +1 -1
  139. package/out/fr/code-postal.js +8 -8
  140. package/out/fr/code-postal.js.map +1 -1
  141. package/out/fr/departement.d.ts +2 -2
  142. package/out/fr/departement.d.ts.map +1 -1
  143. package/out/fr/departement.js +3 -0
  144. package/out/fr/departement.js.map +1 -1
  145. package/out/fr/index.d.ts +6 -6
  146. package/out/fr/index.d.ts.map +1 -1
  147. package/out/fr/index.js +6 -6
  148. package/out/fr/index.js.map +1 -1
  149. package/out/fr/region.d.ts.map +1 -1
  150. package/out/fr/region.js +1 -1
  151. package/out/fr/region.js.map +1 -1
  152. package/out/fr/voie.d.ts.map +1 -1
  153. package/out/fr/voie.js +4 -11
  154. package/out/fr/voie.js.map +1 -1
  155. package/out/gb/country.d.ts.map +1 -1
  156. package/out/gb/country.js +1 -9
  157. package/out/gb/country.js.map +1 -1
  158. package/out/gb/index.d.ts +4 -4
  159. package/out/gb/index.d.ts.map +1 -1
  160. package/out/gb/index.js +4 -4
  161. package/out/gb/index.js.map +1 -1
  162. package/out/gb/postcode-area.d.ts +1 -1
  163. package/out/gb/postcode-area.d.ts.map +1 -1
  164. package/out/gb/postcode-area.js.map +1 -1
  165. package/out/gb/postcode.d.ts.map +1 -1
  166. package/out/gb/postcode.js.map +1 -1
  167. package/out/gb/street-type.d.ts +1 -1
  168. package/out/gb/street-type.d.ts.map +1 -1
  169. package/out/gb/street-type.js +1 -1
  170. package/out/gb/street-type.js.map +1 -1
  171. package/out/index.d.ts +12 -12
  172. package/out/index.d.ts.map +1 -1
  173. package/out/index.js +12 -12
  174. package/out/index.js.map +1 -1
  175. package/out/it/cap.d.ts +13 -2
  176. package/out/it/cap.d.ts.map +1 -1
  177. package/out/it/cap.js +20 -3
  178. package/out/it/cap.js.map +1 -1
  179. package/out/it/index.d.ts +1 -1
  180. package/out/it/index.d.ts.map +1 -1
  181. package/out/it/index.js +1 -1
  182. package/out/it/index.js.map +1 -1
  183. package/out/jp/address-unit.d.ts.map +1 -1
  184. package/out/jp/address-unit.js.map +1 -1
  185. package/out/jp/index.d.ts +4 -4
  186. package/out/jp/index.d.ts.map +1 -1
  187. package/out/jp/index.js +4 -4
  188. package/out/jp/index.js.map +1 -1
  189. package/out/jp/postal-code.d.ts +11 -11
  190. package/out/jp/postal-code.d.ts.map +1 -1
  191. package/out/jp/postal-code.js +8 -8
  192. package/out/jp/postal-code.js.map +1 -1
  193. package/out/jp/prefecture.d.ts +4 -1
  194. package/out/jp/prefecture.d.ts.map +1 -1
  195. package/out/jp/prefecture.js +6 -5
  196. package/out/jp/prefecture.js.map +1 -1
  197. package/out/level-semantics.d.ts.map +1 -1
  198. package/out/level-semantics.js.map +1 -1
  199. package/out/normalize.d.ts +8 -0
  200. package/out/normalize.d.ts.map +1 -1
  201. package/out/normalize.js +14 -1
  202. package/out/normalize.js.map +1 -1
  203. package/out/nz/delivery-service.d.ts +1 -1
  204. package/out/nz/delivery-service.d.ts.map +1 -1
  205. package/out/nz/delivery-service.js +1 -1
  206. package/out/nz/delivery-service.js.map +1 -1
  207. package/out/nz/index.d.ts +2 -2
  208. package/out/nz/index.d.ts.map +1 -1
  209. package/out/nz/index.js +2 -2
  210. package/out/nz/index.js.map +1 -1
  211. package/out/nz/postcode.d.ts.map +1 -1
  212. package/out/nz/postcode.js.map +1 -1
  213. package/out/postcode-systems.d.ts +99 -4
  214. package/out/postcode-systems.d.ts.map +1 -1
  215. package/out/postcode-systems.js +132 -11
  216. package/out/postcode-systems.js.map +1 -1
  217. package/out/tools/build-country-surface-lexicon.d.ts +1 -1
  218. package/out/tools/build-country-surface-lexicon.d.ts.map +1 -1
  219. package/out/tools/build-country-surface-lexicon.js +10 -9
  220. package/out/tools/build-country-surface-lexicon.js.map +1 -1
  221. package/out/tools/export-country-surfaces.d.ts +1 -1
  222. package/out/tools/export-country-surfaces.d.ts.map +1 -1
  223. package/out/tools/export-country-surfaces.js +7 -7
  224. package/out/tools/export-country-surfaces.js.map +1 -1
  225. package/out/tools/generate-country-population.d.ts +42 -0
  226. package/out/tools/generate-country-population.d.ts.map +1 -0
  227. package/out/tools/generate-country-population.js +106 -0
  228. package/out/tools/generate-country-population.js.map +1 -0
  229. package/out/tools/generate-country-reference.d.ts.map +1 -1
  230. package/out/tools/generate-country-reference.js +8 -8
  231. package/out/tools/generate-country-reference.js.map +1 -1
  232. package/out/tools/generate-official-languages.d.ts.map +1 -1
  233. package/out/tools/generate-official-languages.js +14 -11
  234. package/out/tools/generate-official-languages.js.map +1 -1
  235. package/out/tools/index.d.ts +4 -4
  236. package/out/tools/index.d.ts.map +1 -1
  237. package/out/tools/index.js +4 -4
  238. package/out/tools/index.js.map +1 -1
  239. package/out/us/floor-designator.d.ts.map +1 -1
  240. package/out/us/floor-designator.js.map +1 -1
  241. package/out/us/index.d.ts +8 -8
  242. package/out/us/index.d.ts.map +1 -1
  243. package/out/us/index.js +8 -8
  244. package/out/us/index.js.map +1 -1
  245. package/out/us/military-address.d.ts.map +1 -1
  246. package/out/us/military-address.js.map +1 -1
  247. package/out/us/po-box.d.ts +1 -1
  248. package/out/us/po-box.d.ts.map +1 -1
  249. package/out/us/po-box.js +1 -1
  250. package/out/us/po-box.js.map +1 -1
  251. package/out/us/state.d.ts.map +1 -1
  252. package/out/us/state.js.map +1 -1
  253. package/out/us/street-directional.d.ts.map +1 -1
  254. package/out/us/street-directional.js +2 -2
  255. package/out/us/street-directional.js.map +1 -1
  256. package/out/us/street-suffix.d.ts +1 -1
  257. package/out/us/street-suffix.d.ts.map +1 -1
  258. package/out/us/street-suffix.js +1 -1
  259. package/out/us/street-suffix.js.map +1 -1
  260. package/out/us/unit-designator.d.ts +1 -1
  261. package/out/us/unit-designator.d.ts.map +1 -1
  262. package/out/us/unit-designator.js +1 -1
  263. package/out/us/unit-designator.js.map +1 -1
  264. package/out/us/zipcode.d.ts +2 -2
  265. package/out/us/zipcode.d.ts.map +1 -1
  266. package/out/us/zipcode.js +2 -2
  267. package/out/us/zipcode.js.map +1 -1
  268. package/package.json +129 -6
  269. package/country/index.ts +0 -15
  270. package/postcode-systems.ts +0 -70
  271. /package/{au → lib/au}/delivery-service.ts +0 -0
  272. /package/{au → lib/au}/level-designator.ts +0 -0
  273. /package/{au → lib/au}/postcode.ts +0 -0
  274. /package/{au → lib/au}/state.ts +0 -0
  275. /package/{country → lib/country}/names.ts +0 -0
  276. /package/{country → lib/country}/official-languages.ts +0 -0
  277. /package/{country → lib/country}/reference-data.ts +0 -0
  278. /package/{de → lib/de}/bundesland.ts +0 -0
  279. /package/{de → lib/de}/street-type.ts +0 -0
  280. /package/{gb → lib/gb}/postcode.ts +0 -0
  281. /package/{jp → lib/jp}/address-unit.ts +0 -0
  282. /package/{level-semantics.ts → lib/level-semantics.ts} +0 -0
  283. /package/{nz → lib/nz}/postcode.ts +0 -0
  284. /package/{us → lib/us}/floor-designator.ts +0 -0
  285. /package/{us → lib/us}/military-address.ts +0 -0
  286. /package/{us → lib/us}/state.ts +0 -0
  287. /package/{us → lib/us}/street-suffix.json +0 -0
@@ -3,7 +3,7 @@
3
3
  * @license AGPL-3.0
4
4
  * @author Teffen Ellis, et al.
5
5
  *
6
- * Canadian postal codes: the branded type, the shape, normalization, and the FSA-letter →
6
+ * Canadian postcodes: the branded type, the shape, normalization, and the FSA-letter →
7
7
  * province/territory prior — the only ALPHANUMERIC postcode of the systems the codex models.
8
8
  *
9
9
  * The informative contrast across `us/zipcode.ts`, `de/postleitzahl.ts`, `fr/code-postal.ts`, and
@@ -12,7 +12,7 @@
12
12
  * - A US ZIP is numeric; its first digit maps to a loose BAND of states.
13
13
  * - A German PLZ is numeric; its first digit maps to a Leitzone that CROSSES Bundesland borders.
14
14
  * - A French code postal is numeric; its first TWO digits ARE the département.
15
- * - A Canadian postal code is `A1A 1A1` — Letter Digit Letter, then Digit Letter Digit — and its
15
+ * - A Canadian postcode is `A1A 1A1` — Letter Digit Letter, then Digit Letter Digit — and its
16
16
  * first LETTER pins the province or territory directly (`M` → Ontario, `H` → Quebec, `V` →
17
17
  * British Columbia). So like the French prefix it is a clean admin prior, but it does the job
18
18
  * with a single ALPHA character rather than digits.
@@ -25,15 +25,15 @@
25
25
  * the bridge to the wider, lower-density delivery zones.
26
26
  */
27
27
  import type { Tagged } from "type-fest";
28
- import type { CanadianProvinceCode } from "./province.ts";
28
+ import type { CanadianProvinceCode } from "#ca/province";
29
29
  /**
30
- * A Canadian postal code: `A1A 1A1`. Six alphanumeric characters in a strict Letter-Digit-Letter-Digit-Letter-Digit
30
+ * A Canadian postcode: `A1A 1A1`. Six alphanumeric characters in a strict Letter-Digit-Letter-Digit-Letter-Digit
31
31
  * pattern, conventionally written with a single space after the third. Unlike the other systems' bare five digits, the
32
32
  * shape alone already says "Canada".
33
33
  *
34
34
  * @category Postal
35
35
  * @type string
36
- * @title Postal Code
36
+ * @title Postcode
37
37
  * @pattern ^[ABCEGHJ-NPRSTVXY]\d[ABCEGHJ-NPRSTV-Z] ?\d[ABCEGHJ-NPRSTV-Z]\d$
38
38
  */
39
39
  export type PostalCode = Tagged<string, "CaPostalCode">;
@@ -46,11 +46,11 @@ export declare const CA_POSTAL_CODE_PATTERN: RegExp;
46
46
  /**
47
47
  * Normalize a postal-code surface form to canonical `A1A 1A1`: uppercase and ensure exactly one space between the FSA
48
48
  * (first three chars) and the LDU (last three) — `K1A0B1` → `K1A 0B1`, `k1a 0b1` → `K1A 0B1`. Returns null if the input
49
- * is not a valid Canadian postal code.
49
+ * is not a valid Canadian postcode.
50
50
  */
51
51
  export declare function normalizeCaPostalCode(raw: unknown): PostalCode | null;
52
52
  /**
53
- * Type-predicate for a Canadian postal code (accepts the spaced or unspaced surface form).
53
+ * Type-predicate for a Canadian postcode (accepts the spaced or unspaced surface form).
54
54
  */
55
55
  export declare function isCaPostalCode(input: unknown): input is PostalCode;
56
56
  /**
@@ -60,13 +60,13 @@ export declare function isCaPostalCode(input: unknown): input is PostalCode;
60
60
  */
61
61
  export declare const FSA_LETTER_TO_PROVINCE: Record<string, CanadianProvinceCode | CanadianProvinceCode[]>;
62
62
  /**
63
- * The province/territory a postal code belongs to, via its FSA first letter. Returns the single code for the clean
64
- * letters, the `["NT", "NU"]` pair for the shared `X`, and null if the input is not a valid Canadian postal code (or
65
- * its first letter has no province, which the pattern already forbids).
63
+ * The province/territory a postcode belongs to, via its FSA first letter. Returns the single code for the clean
64
+ * letters, the `["NT", "NU"]` pair for the shared `X`, and null if the input is not a valid Canadian postcode (or its
65
+ * first letter has no province, which the pattern already forbids).
66
66
  */
67
67
  export declare function provinceOfPostalCode(postalCode: unknown): CanadianProvinceCode | CanadianProvinceCode[] | null;
68
68
  /**
69
- * True when a postal code is RURAL: its SECOND character (the FSA's first digit) is `0`. Canada Post uses a `0` in that
69
+ * True when a postcode is RURAL: its SECOND character (the FSA's first digit) is `0`. Canada Post uses a `0` in that
70
70
  * position to mark the lower-density delivery zones (rural routes, small communities) — the contrast with the urban
71
71
  * `1`–`9` FSAs. Returns false for a non-code.
72
72
  */
@@ -1 +1 @@
1
- {"version":3,"file":"postal-code.d.ts","sourceRoot":"","sources":["../../ca/postal-code.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;;;GAyBG;AAEH,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,WAAW,CAAA;AAEvC,OAAO,KAAK,EAAE,oBAAoB,EAAE,MAAM,eAAe,CAAA;AAOzD;;;;;;;;;GASG;AACH,MAAM,MAAM,UAAU,GAAG,MAAM,CAAC,MAAM,EAAE,cAAc,CAAC,CAAA;AAEvD;;;;GAIG;AACH,eAAO,MAAM,sBAAsB,QAAsE,CAAA;AAEzG;;;;GAIG;AACH,wBAAgB,qBAAqB,CAAC,GAAG,EAAE,OAAO,GAAG,UAAU,GAAG,IAAI,CAQrE;AAED;;GAEG;AACH,wBAAgB,cAAc,CAAC,KAAK,EAAE,OAAO,GAAG,KAAK,IAAI,UAAU,CAElE;AAED;;;;GAIG;AACH,eAAO,MAAM,sBAAsB,EAAE,MAAM,CAAC,MAAM,EAAE,oBAAoB,GAAG,oBAAoB,EAAE,CAmBhG,CAAA;AAED;;;;GAIG;AACH,wBAAgB,oBAAoB,CAAC,UAAU,EAAE,OAAO,GAAG,oBAAoB,GAAG,oBAAoB,EAAE,GAAG,IAAI,CAM9G;AAED;;;;GAIG;AACH,wBAAgB,iBAAiB,CAAC,EAAE,EAAE,OAAO,GAAG,OAAO,CAMtD"}
1
+ {"version":3,"file":"postal-code.d.ts","sourceRoot":"","sources":["../../lib/ca/postal-code.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;;;GAyBG;AAEH,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,WAAW,CAAA;AAEvC,OAAO,KAAK,EAAE,oBAAoB,EAAE,MAAM,cAAc,CAAA;AAOxD;;;;;;;;;GASG;AACH,MAAM,MAAM,UAAU,GAAG,MAAM,CAAC,MAAM,EAAE,cAAc,CAAC,CAAA;AAEvD;;;;GAIG;AACH,eAAO,MAAM,sBAAsB,QAAsE,CAAA;AAEzG;;;;GAIG;AACH,wBAAgB,qBAAqB,CAAC,GAAG,EAAE,OAAO,GAAG,UAAU,GAAG,IAAI,CAQrE;AAED;;GAEG;AACH,wBAAgB,cAAc,CAAC,KAAK,EAAE,OAAO,GAAG,KAAK,IAAI,UAAU,CAElE;AAED;;;;GAIG;AACH,eAAO,MAAM,sBAAsB,EAAE,MAAM,CAAC,MAAM,EAAE,oBAAoB,GAAG,oBAAoB,EAAE,CAmBhG,CAAA;AAED;;;;GAIG;AACH,wBAAgB,oBAAoB,CAAC,UAAU,EAAE,OAAO,GAAG,oBAAoB,GAAG,oBAAoB,EAAE,GAAG,IAAI,CAM9G;AAED;;;;GAIG;AACH,wBAAgB,iBAAiB,CAAC,EAAE,EAAE,OAAO,GAAG,OAAO,CAMtD"}
@@ -3,7 +3,7 @@
3
3
  * @license AGPL-3.0
4
4
  * @author Teffen Ellis, et al.
5
5
  *
6
- * Canadian postal codes: the branded type, the shape, normalization, and the FSA-letter →
6
+ * Canadian postcodes: the branded type, the shape, normalization, and the FSA-letter →
7
7
  * province/territory prior — the only ALPHANUMERIC postcode of the systems the codex models.
8
8
  *
9
9
  * The informative contrast across `us/zipcode.ts`, `de/postleitzahl.ts`, `fr/code-postal.ts`, and
@@ -12,7 +12,7 @@
12
12
  * - A US ZIP is numeric; its first digit maps to a loose BAND of states.
13
13
  * - A German PLZ is numeric; its first digit maps to a Leitzone that CROSSES Bundesland borders.
14
14
  * - A French code postal is numeric; its first TWO digits ARE the département.
15
- * - A Canadian postal code is `A1A 1A1` — Letter Digit Letter, then Digit Letter Digit — and its
15
+ * - A Canadian postcode is `A1A 1A1` — Letter Digit Letter, then Digit Letter Digit — and its
16
16
  * first LETTER pins the province or territory directly (`M` → Ontario, `H` → Quebec, `V` →
17
17
  * British Columbia). So like the French prefix it is a clean admin prior, but it does the job
18
18
  * with a single ALPHA character rather than digits.
@@ -25,7 +25,7 @@
25
25
  * the bridge to the wider, lower-density delivery zones.
26
26
  */
27
27
  /**
28
- * Characters in a Canadian postal code once spaces are stripped: `A1A1A1`.
28
+ * Characters in a Canadian postcode once spaces are stripped: `A1A1A1`.
29
29
  */
30
30
  const POSTAL_CODE_LENGTH = 6;
31
31
  /**
@@ -37,7 +37,7 @@ export const CA_POSTAL_CODE_PATTERN = /^[ABCEGHJ-NPRSTVXY]\d[ABCEGHJ-NPRSTV-Z] ?
37
37
  /**
38
38
  * Normalize a postal-code surface form to canonical `A1A 1A1`: uppercase and ensure exactly one space between the FSA
39
39
  * (first three chars) and the LDU (last three) — `K1A0B1` → `K1A 0B1`, `k1a 0b1` → `K1A 0B1`. Returns null if the input
40
- * is not a valid Canadian postal code.
40
+ * is not a valid Canadian postcode.
41
41
  */
42
42
  export function normalizeCaPostalCode(raw) {
43
43
  if (typeof raw !== "string")
@@ -49,7 +49,7 @@ export function normalizeCaPostalCode(raw) {
49
49
  return CA_POSTAL_CODE_PATTERN.test(spaced) ? spaced : null;
50
50
  }
51
51
  /**
52
- * Type-predicate for a Canadian postal code (accepts the spaced or unspaced surface form).
52
+ * Type-predicate for a Canadian postcode (accepts the spaced or unspaced surface form).
53
53
  */
54
54
  export function isCaPostalCode(input) {
55
55
  return typeof input === "string" && CA_POSTAL_CODE_PATTERN.test(input);
@@ -80,9 +80,9 @@ export const FSA_LETTER_TO_PROVINCE = {
80
80
  Y: "YT",
81
81
  };
82
82
  /**
83
- * The province/territory a postal code belongs to, via its FSA first letter. Returns the single code for the clean
84
- * letters, the `["NT", "NU"]` pair for the shared `X`, and null if the input is not a valid Canadian postal code (or
85
- * its first letter has no province, which the pattern already forbids).
83
+ * The province/territory a postcode belongs to, via its FSA first letter. Returns the single code for the clean
84
+ * letters, the `["NT", "NU"]` pair for the shared `X`, and null if the input is not a valid Canadian postcode (or its
85
+ * first letter has no province, which the pattern already forbids).
86
86
  */
87
87
  export function provinceOfPostalCode(postalCode) {
88
88
  const normalized = normalizeCaPostalCode(postalCode);
@@ -91,7 +91,7 @@ export function provinceOfPostalCode(postalCode) {
91
91
  return FSA_LETTER_TO_PROVINCE[normalized[0]] ?? null;
92
92
  }
93
93
  /**
94
- * True when a postal code is RURAL: its SECOND character (the FSA's first digit) is `0`. Canada Post uses a `0` in that
94
+ * True when a postcode is RURAL: its SECOND character (the FSA's first digit) is `0`. Canada Post uses a `0` in that
95
95
  * position to mark the lower-density delivery zones (rural routes, small communities) — the contrast with the urban
96
96
  * `1`–`9` FSAs. Returns false for a non-code.
97
97
  */
@@ -1 +1 @@
1
- {"version":3,"file":"postal-code.js","sourceRoot":"","sources":["../../ca/postal-code.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;;;GAyBG;AAMH;;GAEG;AACH,MAAM,kBAAkB,GAAG,CAAC,CAAA;AAc5B;;;;GAIG;AACH,MAAM,CAAC,MAAM,sBAAsB,GAAG,mEAAmE,CAAA;AAEzG;;;;GAIG;AACH,MAAM,UAAU,qBAAqB,CAAC,GAAY;IACjD,IAAI,OAAO,GAAG,KAAK,QAAQ;QAAE,OAAO,IAAI,CAAA;IACxC,MAAM,OAAO,GAAG,GAAG,CAAC,IAAI,EAAE,CAAC,WAAW,EAAE,CAAC,UAAU,CAAC,MAAM,EAAE,EAAE,CAAC,CAAA;IAE/D,IAAI,OAAO,CAAC,MAAM,KAAK,kBAAkB;QAAE,OAAO,IAAI,CAAA;IACtD,MAAM,MAAM,GAAG,GAAG,OAAO,CAAC,KAAK,CAAC,CAAC,EAAE,CAAC,CAAC,IAAI,OAAO,CAAC,KAAK,CAAC,CAAC,CAAC,EAAE,CAAA;IAE3D,OAAO,sBAAsB,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC,CAAC,CAAE,MAAqB,CAAC,CAAC,CAAC,IAAI,CAAA;AAC3E,CAAC;AAED;;GAEG;AACH,MAAM,UAAU,cAAc,CAAC,KAAc;IAC5C,OAAO,OAAO,KAAK,KAAK,QAAQ,IAAI,sBAAsB,CAAC,IAAI,CAAC,KAAK,CAAC,CAAA;AACvE,CAAC;AAED;;;;GAIG;AACH,MAAM,CAAC,MAAM,sBAAsB,GAAkE;IACpG,CAAC,EAAE,IAAI;IACP,CAAC,EAAE,IAAI;IACP,CAAC,EAAE,IAAI;IACP,CAAC,EAAE,IAAI;IACP,CAAC,EAAE,IAAI;IACP,CAAC,EAAE,IAAI;IACP,CAAC,EAAE,IAAI;IACP,CAAC,EAAE,IAAI;IACP,CAAC,EAAE,IAAI;IACP,CAAC,EAAE,IAAI;IACP,CAAC,EAAE,IAAI;IACP,CAAC,EAAE,IAAI;IACP,CAAC,EAAE,IAAI;IACP,CAAC,EAAE,IAAI;IACP,CAAC,EAAE,IAAI;IACP,CAAC,EAAE,IAAI;IACP,CAAC,EAAE,CAAC,IAAI,EAAE,IAAI,CAAC;IACf,CAAC,EAAE,IAAI;CACP,CAAA;AAED;;;;GAIG;AACH,MAAM,UAAU,oBAAoB,CAAC,UAAmB;IACvD,MAAM,UAAU,GAAG,qBAAqB,CAAC,UAAU,CAAC,CAAA;IAEpD,IAAI,CAAC,UAAU;QAAE,OAAO,IAAI,CAAA;IAE5B,OAAO,sBAAsB,CAAC,UAAU,CAAC,CAAC,CAAE,CAAC,IAAI,IAAI,CAAA;AACtD,CAAC;AAED;;;;GAIG;AACH,MAAM,UAAU,iBAAiB,CAAC,EAAW;IAC5C,MAAM,UAAU,GAAG,qBAAqB,CAAC,EAAE,CAAC,CAAA;IAE5C,IAAI,CAAC,UAAU;QAAE,OAAO,KAAK,CAAA;IAE7B,OAAO,UAAU,CAAC,CAAC,CAAC,KAAK,GAAG,CAAA;AAC7B,CAAC"}
1
+ {"version":3,"file":"postal-code.js","sourceRoot":"","sources":["../../lib/ca/postal-code.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;;;GAyBG;AAMH;;GAEG;AACH,MAAM,kBAAkB,GAAG,CAAC,CAAA;AAc5B;;;;GAIG;AACH,MAAM,CAAC,MAAM,sBAAsB,GAAG,mEAAmE,CAAA;AAEzG;;;;GAIG;AACH,MAAM,UAAU,qBAAqB,CAAC,GAAY;IACjD,IAAI,OAAO,GAAG,KAAK,QAAQ;QAAE,OAAO,IAAI,CAAA;IACxC,MAAM,OAAO,GAAG,GAAG,CAAC,IAAI,EAAE,CAAC,WAAW,EAAE,CAAC,UAAU,CAAC,MAAM,EAAE,EAAE,CAAC,CAAA;IAE/D,IAAI,OAAO,CAAC,MAAM,KAAK,kBAAkB;QAAE,OAAO,IAAI,CAAA;IACtD,MAAM,MAAM,GAAG,GAAG,OAAO,CAAC,KAAK,CAAC,CAAC,EAAE,CAAC,CAAC,IAAI,OAAO,CAAC,KAAK,CAAC,CAAC,CAAC,EAAE,CAAA;IAE3D,OAAO,sBAAsB,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC,CAAC,CAAE,MAAqB,CAAC,CAAC,CAAC,IAAI,CAAA;AAC3E,CAAC;AAED;;GAEG;AACH,MAAM,UAAU,cAAc,CAAC,KAAc;IAC5C,OAAO,OAAO,KAAK,KAAK,QAAQ,IAAI,sBAAsB,CAAC,IAAI,CAAC,KAAK,CAAC,CAAA;AACvE,CAAC;AAED;;;;GAIG;AACH,MAAM,CAAC,MAAM,sBAAsB,GAAkE;IACpG,CAAC,EAAE,IAAI;IACP,CAAC,EAAE,IAAI;IACP,CAAC,EAAE,IAAI;IACP,CAAC,EAAE,IAAI;IACP,CAAC,EAAE,IAAI;IACP,CAAC,EAAE,IAAI;IACP,CAAC,EAAE,IAAI;IACP,CAAC,EAAE,IAAI;IACP,CAAC,EAAE,IAAI;IACP,CAAC,EAAE,IAAI;IACP,CAAC,EAAE,IAAI;IACP,CAAC,EAAE,IAAI;IACP,CAAC,EAAE,IAAI;IACP,CAAC,EAAE,IAAI;IACP,CAAC,EAAE,IAAI;IACP,CAAC,EAAE,IAAI;IACP,CAAC,EAAE,CAAC,IAAI,EAAE,IAAI,CAAC;IACf,CAAC,EAAE,IAAI;CACP,CAAA;AAED;;;;GAIG;AACH,MAAM,UAAU,oBAAoB,CAAC,UAAmB;IACvD,MAAM,UAAU,GAAG,qBAAqB,CAAC,UAAU,CAAC,CAAA;IAEpD,IAAI,CAAC,UAAU;QAAE,OAAO,IAAI,CAAA;IAE5B,OAAO,sBAAsB,CAAC,UAAU,CAAC,CAAC,CAAE,CAAC,IAAI,IAAI,CAAA;AACtD,CAAC;AAED;;;;GAIG;AACH,MAAM,UAAU,iBAAiB,CAAC,EAAW;IAC5C,MAAM,UAAU,GAAG,qBAAqB,CAAC,EAAE,CAAC,CAAA;IAE5C,IAAI,CAAC,UAAU;QAAE,OAAO,KAAK,CAAA;IAE7B,OAAO,UAAU,CAAC,CAAC,CAAC,KAAK,GAAG,CAAA;AAC7B,CAAC"}
@@ -1 +1 @@
1
- {"version":3,"file":"province.d.ts","sourceRoot":"","sources":["../../ca/province.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;GAgBG;AAIH;;GAEG;AACH,MAAM,WAAW,oBAAoB;IACpC;;OAEG;IACH,IAAI,EAAE,MAAM,CAAA;IACZ;;OAEG;IACH,IAAI,EAAE,MAAM,CAAA;IACZ;;OAEG;IACH,MAAM,EAAE,MAAM,CAAA;CACd;AAED;;;GAGG;AACH,eAAO,MAAM,YAAY;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CAcgC,CAAA;AAEzD;;GAEG;AACH,MAAM,MAAM,oBAAoB,GAAG,MAAM,OAAO,YAAY,CAAA;AAI5D;;GAEG;AACH,wBAAgB,sBAAsB,CAAC,KAAK,EAAE,OAAO,GAAG,KAAK,IAAI,oBAAoB,CAEpF;AAED;;;;;GAKG;AACH,eAAO,MAAM,wBAAwB,EAAE,WAAW,CAAC,MAAM,EAAE,oBAAoB,CAW3E,CAAA;AAEJ;;;GAGG;AACH,wBAAgB,sBAAsB,CAAC,KAAK,EAAE,MAAM,GAAG,IAAI,GAAG,SAAS,GAAG,oBAAoB,GAAG,IAAI,CAOpG"}
1
+ {"version":3,"file":"province.d.ts","sourceRoot":"","sources":["../../lib/ca/province.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;GAgBG;AAIH;;GAEG;AACH,MAAM,WAAW,oBAAoB;IACpC;;OAEG;IACH,IAAI,EAAE,MAAM,CAAA;IACZ;;OAEG;IACH,IAAI,EAAE,MAAM,CAAA;IACZ;;OAEG;IACH,MAAM,EAAE,MAAM,CAAA;CACd;AAED;;;GAGG;AACH,eAAO,MAAM,YAAY;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CAcgC,CAAA;AAEzD;;GAEG;AACH,MAAM,MAAM,oBAAoB,GAAG,MAAM,OAAO,YAAY,CAAA;AAI5D;;GAEG;AACH,wBAAgB,sBAAsB,CAAC,KAAK,EAAE,OAAO,GAAG,KAAK,IAAI,oBAAoB,CAEpF;AAED;;;;;GAKG;AACH,eAAO,MAAM,wBAAwB,EAAE,WAAW,CAAC,MAAM,EAAE,oBAAoB,CAW3E,CAAA;AAEJ;;;GAGG;AACH,wBAAgB,sBAAsB,CAAC,KAAK,EAAE,MAAM,GAAG,IAAI,GAAG,SAAS,GAAG,oBAAoB,GAAG,IAAI,CAOpG"}
@@ -15,7 +15,7 @@
15
15
  * is the abbreviation people actually write on the address line — so unlike German or French
16
16
  * regions, the Canadian code IS a surface form, not just a resolver key.
17
17
  */
18
- import { foldName } from "../normalize.js";
18
+ import { foldName } from "#normalize";
19
19
  /**
20
20
  * ISO 3166-2:CA code → province/territory info, for all 13 subdivisions (10 provinces + 3 territories). Codes are the
21
21
  * official subdivision codes minus the `CA-` prefix.
@@ -1 +1 @@
1
- {"version":3,"file":"province.js","sourceRoot":"","sources":["../../ca/province.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"province.js","sourceRoot":"","sources":["../../lib/ca/province.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"street-type.d.ts","sourceRoot":"","sources":["../../ca/street-type.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;GAuBG;AAEH;;;GAGG;AACH,eAAO,MAAM,kBAAkB,EAAE,WAAW,CAAC,MAAM,CA8BjD,CAAA;AAEF;;;;GAIG;AACH,eAAO,MAAM,kBAAkB,EAAE,WAAW,CAAC,MAAM,CAmBjD,CAAA;AA8BF;;;;GAIG;AACH,wBAAgB,oBAAoB,CAAC,KAAK,EAAE,OAAO,GAAG,OAAO,CAK5D;AAED;;;;;GAKG;AACH,eAAO,MAAM,eAAe,EAAE,MAAM,CAAC,MAAM,EAAE,GAAG,GAAG,GAAG,GAAG,GAAG,GAAG,GAAG,CAcjE,CAAA;AAED;;;;GAIG;AACH,wBAAgB,qBAAqB,CAAC,KAAK,EAAE,OAAO,GAAG,OAAO,CAgB7D"}
1
+ {"version":3,"file":"street-type.d.ts","sourceRoot":"","sources":["../../lib/ca/street-type.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;GAuBG;AAIH;;;GAGG;AACH,eAAO,MAAM,kBAAkB,EAAE,WAAW,CAAC,MAAM,CA8BjD,CAAA;AAEF;;;;GAIG;AACH,eAAO,MAAM,kBAAkB,EAAE,WAAW,CAAC,MAAM,CAmBjD,CAAA;AA0BF;;;;GAIG;AACH,wBAAgB,oBAAoB,CAAC,KAAK,EAAE,OAAO,GAAG,OAAO,CAK5D;AAED;;;;;GAKG;AACH,eAAO,MAAM,eAAe,EAAE,MAAM,CAAC,MAAM,EAAE,GAAG,GAAG,GAAG,GAAG,GAAG,GAAG,GAAG,CAcjE,CAAA;AAED;;;;GAIG;AACH,wBAAgB,qBAAqB,CAAC,KAAK,EAAE,OAAO,GAAG,OAAO,CAgB7D"}
@@ -22,6 +22,7 @@
22
22
  * the quadrant entirely. {@link CA_DIRECTIONALS} spells out the French abbreviations so `O` =
23
23
  * Ouest = West is recognized.
24
24
  */
25
+ import { foldToken } from "#normalize";
25
26
  /**
26
27
  * English Canadian street-type words (Canada Post's recognized set, lowercase). Appear as the TRAILING token of an
27
28
  * English street name (`Maple Avenue`, `Sunset Crescent`).
@@ -52,7 +53,7 @@ export const CA_STREET_TYPES_EN = new Set([
52
53
  "green",
53
54
  "bay",
54
55
  "cove",
55
- "gate",
56
+ "check",
56
57
  "point",
57
58
  "ridge",
58
59
  "view",
@@ -83,14 +84,10 @@ export const CA_STREET_TYPES_FR = new Set([
83
84
  "sentier",
84
85
  ]);
85
86
  /**
86
- * Strip diacritics + lowercase so `Côte`/`cote`, `Allée`/`allee`, `Crescent`/`crescent` key alike.
87
+ * {@link foldToken}, letters only, so `Côte`/`cote`, `Allée`/`allee`, `Crescent`/`crescent` key alike.
87
88
  */
88
- function foldToken(s) {
89
- return s
90
- .toLowerCase()
91
- .normalize("NFD")
92
- .replaceAll(/[\u0300-\u036F]/g, "")
93
- .replaceAll(/[^a-z]/g, "");
89
+ function foldLetters(s) {
90
+ return foldToken(s).replaceAll(/[^a-z]/g, "");
94
91
  }
95
92
  /**
96
93
  * The English + French street-type vocabularies, both folded, for one position-agnostic lookup.
@@ -98,10 +95,10 @@ function foldToken(s) {
98
95
  const STREET_WORD_SET = (() => {
99
96
  const out = new Set();
100
97
  for (const w of CA_STREET_TYPES_EN) {
101
- out.add(foldToken(w));
98
+ out.add(foldLetters(w));
102
99
  }
103
100
  for (const w of CA_STREET_TYPES_FR) {
104
- out.add(foldToken(w));
101
+ out.add(foldLetters(w));
105
102
  }
106
103
  return out;
107
104
  })();
@@ -113,7 +110,7 @@ const STREET_WORD_SET = (() => {
113
110
  export function isCanadianStreetWord(token) {
114
111
  if (typeof token !== "string")
115
112
  return false;
116
- const t = foldToken(token);
113
+ const t = foldLetters(token);
117
114
  return t.length > 0 && STREET_WORD_SET.has(t);
118
115
  }
119
116
  /**
@@ -145,7 +142,7 @@ export const CA_DIRECTIONALS = {
145
142
  export function isCanadianDirectional(token) {
146
143
  if (typeof token !== "string")
147
144
  return false;
148
- const t = foldToken(token);
145
+ const t = foldLetters(token);
149
146
  if (!t.length)
150
147
  return false;
151
148
  if (t in CA_DIRECTIONALS)
@@ -1 +1 @@
1
- {"version":3,"file":"street-type.js","sourceRoot":"","sources":["../../ca/street-type.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"street-type.js","sourceRoot":"","sources":["../../lib/ca/street-type.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;GAuBG;AAEH,OAAO,EAAE,SAAS,EAAE,MAAM,YAAY,CAAA;AAEtC;;;GAGG;AACH,MAAM,CAAC,MAAM,kBAAkB,GAAwB,IAAI,GAAG,CAAC;IAC9D,QAAQ;IACR,QAAQ;IACR,WAAW;IACX,OAAO;IACP,MAAM;IACN,UAAU;IACV,OAAO;IACP,OAAO;IACP,MAAM;IACN,KAAK;IACL,OAAO;IACP,SAAS;IACT,OAAO;IACP,QAAQ;IACR,QAAQ;IACR,SAAS;IACT,OAAO;IACP,SAAS;IACT,MAAM;IACN,MAAM;IACN,KAAK;IACL,MAAM;IACN,OAAO;IACP,KAAK;IACL,MAAM;IACN,OAAO;IACP,OAAO;IACP,OAAO;IACP,MAAM;CACN,CAAC,CAAA;AAEF;;;;GAIG;AACH,MAAM,CAAC,MAAM,kBAAkB,GAAwB,IAAI,GAAG,CAAC;IAC9D,KAAK;IACL,QAAQ;IACR,WAAW;IACX,QAAQ;IACR,MAAM;IACN,OAAO;IACP,SAAS;IACT,OAAO;IACP,WAAW;IACX,QAAQ;IACR,MAAM;IACN,QAAQ;IACR,MAAM;IACN,SAAS;IACT,OAAO;IACP,UAAU;IACV,WAAW;IACX,SAAS;CACT,CAAC,CAAA;AAEF;;GAEG;AACH,SAAS,WAAW,CAAC,CAAS;IAC7B,OAAO,SAAS,CAAC,CAAC,CAAC,CAAC,UAAU,CAAC,SAAS,EAAE,EAAE,CAAC,CAAA;AAC9C,CAAC;AAED;;GAEG;AACH,MAAM,eAAe,GAAwB,CAAC,GAAG,EAAE;IAClD,MAAM,GAAG,GAAG,IAAI,GAAG,EAAU,CAAA;IAE7B,KAAK,MAAM,CAAC,IAAI,kBAAkB,EAAE,CAAC;QACpC,GAAG,CAAC,GAAG,CAAC,WAAW,CAAC,CAAC,CAAC,CAAC,CAAA;IACxB,CAAC;IAED,KAAK,MAAM,CAAC,IAAI,kBAAkB,EAAE,CAAC;QACpC,GAAG,CAAC,GAAG,CAAC,WAAW,CAAC,CAAC,CAAC,CAAC,CAAA;IACxB,CAAC;IAED,OAAO,GAAG,CAAA;AACX,CAAC,CAAC,EAAE,CAAA;AAEJ;;;;GAIG;AACH,MAAM,UAAU,oBAAoB,CAAC,KAAc;IAClD,IAAI,OAAO,KAAK,KAAK,QAAQ;QAAE,OAAO,KAAK,CAAA;IAC3C,MAAM,CAAC,GAAG,WAAW,CAAC,KAAK,CAAC,CAAA;IAE5B,OAAO,CAAC,CAAC,MAAM,GAAG,CAAC,IAAI,eAAe,CAAC,GAAG,CAAC,CAAC,CAAC,CAAA;AAC9C,CAAC;AAED;;;;;GAKG;AACH,MAAM,CAAC,MAAM,eAAe,GAA0C;IACrE,CAAC,EAAE,GAAG;IACN,KAAK,EAAE,GAAG;IACV,IAAI,EAAE,GAAG;IACT,CAAC,EAAE,GAAG;IACN,KAAK,EAAE,GAAG;IACV,GAAG,EAAE,GAAG;IACR,CAAC,EAAE,GAAG;IACN,IAAI,EAAE,GAAG;IACT,GAAG,EAAE,GAAG;IACR,CAAC,EAAE,GAAG;IACN,IAAI,EAAE,GAAG;IACT,KAAK,EAAE,GAAG;IACV,CAAC,EAAE,GAAG,EAAE,6DAA6D;CACrE,CAAA;AAED;;;;GAIG;AACH,MAAM,UAAU,qBAAqB,CAAC,KAAc;IACnD,IAAI,OAAO,KAAK,KAAK,QAAQ;QAAE,OAAO,KAAK,CAAA;IAC3C,MAAM,CAAC,GAAG,WAAW,CAAC,KAAK,CAAC,CAAA;IAE5B,IAAI,CAAC,CAAC,CAAC,MAAM;QAAE,OAAO,KAAK,CAAA;IAE3B,IAAI,CAAC,IAAI,eAAe;QAAE,OAAO,IAAI,CAAA;IAErC,oGAAoG;IACpG,IAAI,CAAC,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;QACpB,MAAM,QAAQ,GAAG,CAAC,CAAS,EAAW,EAAE,CAAC,CAAC,KAAK,GAAG,IAAI,CAAC,KAAK,GAAG,IAAI,CAAC,KAAK,GAAG,IAAI,CAAC,KAAK,GAAG,CAAA;QAEzF,OAAO,QAAQ,CAAC,CAAC,CAAC,CAAC,CAAE,CAAC,IAAI,QAAQ,CAAC,CAAC,CAAC,CAAC,CAAE,CAAC,CAAA;IAC1C,CAAC;IAED,OAAO,KAAK,CAAA;AACb,CAAC"}
@@ -1 +1 @@
1
- {"version":3,"file":"codes.d.ts","sourceRoot":"","sources":["../../country/codes.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAIH;;;;GAIG;AACH,eAAO,MAAM,WAAW;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CA0Pd,CAAA;AAEV,MAAM,MAAM,WAAW,GAAG,CAAC,OAAO,WAAW,CAAC,CAAC,MAAM,OAAO,WAAW,CAAC,CAAA;AAExE;;;;;GAKG;AACH,eAAO,MAAM,qBAAqB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CA0Pc,CAAA;AAEhD;;;;;;;GAOG;AACH,MAAM,MAAM,WAAW,GAAG,MAAM,OAAO,qBAAqB,CAAA"}
1
+ {"version":3,"file":"codes.d.ts","sourceRoot":"","sources":["../../lib/country/codes.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAIH;;;;GAIG;AACH,eAAO,MAAM,WAAW;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CA0Pd,CAAA;AAEV,MAAM,MAAM,WAAW,GAAG,CAAC,OAAO,WAAW,CAAC,CAAC,MAAM,OAAO,WAAW,CAAC,CAAA;AAExE;;;;;GAKG;AACH,eAAO,MAAM,qBAAqB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CA0Pc,CAAA;AAEhD;;;;;;;GAOG;AACH,MAAM,MAAM,WAAW,GAAG,MAAM,OAAO,qBAAqB,CAAA"}
@@ -1 +1 @@
1
- {"version":3,"file":"codes.js","sourceRoot":"","sources":["../../country/codes.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAIH;;;;GAIG;AACH,MAAM,CAAC,MAAM,WAAW,GAAG;IAC1B,WAAW,EAAE,IAAI;IACjB,OAAO,EAAE,IAAI;IACb,OAAO,EAAE,IAAI;IACb,gBAAgB,EAAE,IAAI;IACtB,OAAO,EAAE,IAAI;IACb,MAAM,EAAE,IAAI;IACZ,QAAQ,EAAE,IAAI;IACd,UAAU,EAAE,IAAI;IAChB,qBAAqB,EAAE,IAAI;IAC3B,SAAS,EAAE,IAAI;IACf,OAAO,EAAE,IAAI;IACb,KAAK,EAAE,IAAI;IACX,SAAS,EAAE,IAAI;IACf,OAAO,EAAE,IAAI;IACb,UAAU,EAAE,IAAI;IAChB,OAAO,EAAE,IAAI;IACb,OAAO,EAAE,IAAI;IACb,UAAU,EAAE,IAAI;IAChB,QAAQ,EAAE,IAAI;IACd,OAAO,EAAE,IAAI;IACb,OAAO,EAAE,IAAI;IACb,MAAM,EAAE,IAAI;IACZ,KAAK,EAAE,IAAI;IACX,OAAO,EAAE,IAAI;IACb,MAAM,EAAE,IAAI;IACZ,OAAO,EAAE,IAAI;IACb,kCAAkC,EAAE,IAAI;IACxC,wBAAwB,EAAE,IAAI;IAC9B,QAAQ,EAAE,IAAI;IACd,eAAe,EAAE,IAAI;IACrB,MAAM,EAAE,IAAI;IACZ,gCAAgC,EAAE,IAAI;IACtC,mBAAmB,EAAE,IAAI;IACzB,QAAQ,EAAE,IAAI;IACd,cAAc,EAAE,IAAI;IACpB,OAAO,EAAE,IAAI;IACb,QAAQ,EAAE,IAAI;IACd,QAAQ,EAAE,IAAI;IACd,MAAM,EAAE,IAAI;IACZ,YAAY,EAAE,IAAI;IAClB,gBAAgB,EAAE,IAAI;IACtB,0BAA0B,EAAE,IAAI;IAChC,IAAI,EAAE,IAAI;IACV,KAAK,EAAE,IAAI;IACX,KAAK,EAAE,IAAI;IACX,kBAAkB,EAAE,IAAI;IACxB,yBAAyB,EAAE,IAAI;IAC/B,QAAQ,EAAE,IAAI;IACd,OAAO,EAAE,IAAI;IACb,KAAK,EAAE,IAAI;IACX,uCAAuC,EAAE,IAAI;IAC7C,cAAc,EAAE,IAAI;IACpB,YAAY,EAAE,IAAI;IAClB,cAAc,EAAE,IAAI;IACpB,OAAO,EAAE,IAAI;IACb,IAAI,EAAE,IAAI;IACV,OAAO,EAAE,IAAI;IACb,MAAM,EAAE,IAAI;IACZ,gBAAgB,EAAE,IAAI;IACtB,OAAO,EAAE,IAAI;IACb,QAAQ,EAAE,IAAI;IACd,QAAQ,EAAE,IAAI;IACd,oBAAoB,EAAE,IAAI;IAC1B,OAAO,EAAE,IAAI;IACb,KAAK,EAAE,IAAI;IACX,aAAa,EAAE,IAAI;IACnB,mBAAmB,EAAE,IAAI;IACzB,OAAO,EAAE,IAAI;IACb,OAAO,EAAE,IAAI;IACb,QAAQ,EAAE,IAAI;IACd,6BAA6B,EAAE,IAAI;IACnC,eAAe,EAAE,IAAI;IACrB,IAAI,EAAE,IAAI;IACV,OAAO,EAAE,IAAI;IACb,MAAM,EAAE,IAAI;IACZ,eAAe,EAAE,IAAI;IACrB,kBAAkB,EAAE,IAAI;IACxB,6BAA6B,EAAE,IAAI;IACnC,KAAK,EAAE,IAAI;IACX,MAAM,EAAE,IAAI;IACZ,OAAO,EAAE,IAAI;IACb,OAAO,EAAE,IAAI;IACb,KAAK,EAAE,IAAI;IACX,SAAS,EAAE,IAAI;IACf,MAAM,EAAE,IAAI;IACZ,SAAS,EAAE,IAAI;IACf,OAAO,EAAE,IAAI;IACb,UAAU,EAAE,IAAI;IAChB,IAAI,EAAE,IAAI;IACV,SAAS,EAAE,IAAI;IACf,QAAQ,EAAE,IAAI;IACd,MAAM,EAAE,IAAI;IACZ,eAAe,EAAE,IAAI;IACrB,MAAM,EAAE,IAAI;IACZ,KAAK,EAAE,IAAI;IACX,mCAAmC,EAAE,IAAI;IACzC,+BAA+B,EAAE,IAAI;IACrC,QAAQ,EAAE,IAAI;IACd,WAAW,EAAE,IAAI;IACjB,OAAO,EAAE,IAAI;IACb,OAAO,EAAE,IAAI;IACb,KAAK,EAAE,IAAI;IACX,SAAS,EAAE,IAAI;IACf,2BAA2B,EAAE,IAAI;IACjC,IAAI,EAAE,IAAI;IACV,OAAO,EAAE,IAAI;IACb,aAAa,EAAE,IAAI;IACnB,MAAM,EAAE,IAAI;IACZ,KAAK,EAAE,IAAI;IACX,OAAO,EAAE,IAAI;IACb,KAAK,EAAE,IAAI;IACX,MAAM,EAAE,IAAI;IACZ,MAAM,EAAE,IAAI;IACZ,UAAU,EAAE,IAAI;IAChB,KAAK,EAAE,IAAI;IACX,QAAQ,EAAE,IAAI;IACd,wCAAwC,EAAE,IAAI;IAC9C,oBAAoB,EAAE,IAAI;IAC1B,MAAM,EAAE,IAAI;IACZ,UAAU,EAAE,IAAI;IAChB,kCAAkC,EAAE,IAAI;IACxC,MAAM,EAAE,IAAI;IACZ,OAAO,EAAE,IAAI;IACb,OAAO,EAAE,IAAI;IACb,OAAO,EAAE,IAAI;IACb,KAAK,EAAE,IAAI;IACX,aAAa,EAAE,IAAI;IACnB,SAAS,EAAE,IAAI;IACf,UAAU,EAAE,IAAI;IAChB,KAAK,EAAE,IAAI;IACX,4CAA4C,EAAE,IAAI;IAClD,UAAU,EAAE,IAAI;IAChB,MAAM,EAAE,IAAI;IACZ,QAAQ,EAAE,IAAI;IACd,QAAQ,EAAE,IAAI;IACd,IAAI,EAAE,IAAI;IACV,KAAK,EAAE,IAAI;IACX,kBAAkB,EAAE,IAAI;IACxB,UAAU,EAAE,IAAI;IAChB,UAAU,EAAE,IAAI;IAChB,SAAS,EAAE,IAAI;IACf,OAAO,EAAE,IAAI;IACb,MAAM,EAAE,IAAI;IACZ,iCAAiC,EAAE,IAAI;IACvC,sBAAsB,EAAE,IAAI;IAC5B,MAAM,EAAE,IAAI;IACZ,QAAQ,EAAE,IAAI;IACd,UAAU,EAAE,IAAI;IAChB,UAAU,EAAE,IAAI;IAChB,OAAO,EAAE,IAAI;IACb,UAAU,EAAE,IAAI;IAChB,OAAO,EAAE,IAAI;IACb,OAAO,EAAE,IAAI;IACb,KAAK,EAAE,IAAI;IACX,KAAK,EAAE,IAAI;IACX,WAAW,EAAE,IAAI;IACjB,eAAe,EAAE,IAAI;IACrB,aAAa,EAAE,IAAI;IACnB,SAAS,EAAE,IAAI;IACf,KAAK,EAAE,IAAI;IACX,OAAO,EAAE,IAAI;IACb,IAAI,EAAE,IAAI;IACV,gBAAgB,EAAE,IAAI;IACtB,0BAA0B,EAAE,IAAI;IAChC,MAAM,EAAE,IAAI;IACZ,IAAI,EAAE,IAAI;IACV,QAAQ,EAAE,IAAI;IACd,KAAK,EAAE,IAAI;IACX,qBAAqB,EAAE,IAAI;IAC3B,MAAM,EAAE,IAAI;IACZ,kBAAkB,EAAE,IAAI;IACxB,QAAQ,EAAE,IAAI;IACd,IAAI,EAAE,IAAI;IACV,WAAW,EAAE,IAAI;IACjB,QAAQ,EAAE,IAAI;IACd,MAAM,EAAE,IAAI;IACZ,QAAQ,EAAE,IAAI;IACd,aAAa,EAAE,IAAI;IACnB,KAAK,EAAE,IAAI;IACX,OAAO,EAAE,IAAI;IACb,OAAO,EAAE,IAAI;IACb,oBAAoB,EAAE,IAAI;IAC1B,MAAM,EAAE,IAAI;IACZ,kBAAkB,EAAE,IAAI;IACxB,8CAA8C,EAAE,IAAI;IACpD,uBAAuB,EAAE,IAAI;IAC7B,aAAa,EAAE,IAAI;IACnB,4BAA4B,EAAE,IAAI;IAClC,2BAA2B,EAAE,IAAI;IACjC,kCAAkC,EAAE,IAAI;IACxC,KAAK,EAAE,IAAI;IACX,YAAY,EAAE,IAAI;IAClB,uBAAuB,EAAE,IAAI;IAC7B,cAAc,EAAE,IAAI;IACpB,OAAO,EAAE,IAAI;IACb,MAAM,EAAE,IAAI;IACZ,UAAU,EAAE,IAAI;IAChB,cAAc,EAAE,IAAI;IACpB,SAAS,EAAE,IAAI;IACf,2BAA2B,EAAE,IAAI;IACjC,QAAQ,EAAE,IAAI;IACd,QAAQ,EAAE,IAAI;IACd,iBAAiB,EAAE,IAAI;IACvB,OAAO,EAAE,IAAI;IACb,cAAc,EAAE,IAAI;IACpB,8CAA8C,EAAE,IAAI;IACpD,aAAa,EAAE,IAAI;IACnB,KAAK,EAAE,IAAI;IACX,WAAW,EAAE,IAAI;IACjB,KAAK,EAAE,IAAI;IACX,QAAQ,EAAE,IAAI;IACd,wBAAwB,EAAE,IAAI;IAC9B,SAAS,EAAE,IAAI;IACf,MAAM,EAAE,IAAI;IACZ,WAAW,EAAE,IAAI;IACjB,sBAAsB,EAAE,IAAI;IAC5B,4BAA4B,EAAE,IAAI;IAClC,UAAU,EAAE,IAAI;IAChB,8BAA8B,EAAE,IAAI;IACpC,QAAQ,EAAE,IAAI;IACd,aAAa,EAAE,IAAI;IACnB,IAAI,EAAE,IAAI;IACV,OAAO,EAAE,IAAI;IACb,KAAK,EAAE,IAAI;IACX,qBAAqB,EAAE,IAAI;IAC3B,OAAO,EAAE,IAAI;IACb,MAAM,EAAE,IAAI;IACZ,YAAY,EAAE,IAAI;IAClB,0BAA0B,EAAE,IAAI;IAChC,MAAM,EAAE,IAAI;IACZ,MAAM,EAAE,IAAI;IACZ,OAAO,EAAE,IAAI;IACb,sBAAsB,EAAE,IAAI;IAC5B,gBAAgB,EAAE,IAAI;IACtB,eAAe,EAAE,IAAI;IACrB,sCAAsC,EAAE,IAAI;IAC5C,OAAO,EAAE,IAAI;IACb,UAAU,EAAE,IAAI;IAChB,OAAO,EAAE,IAAI;IACb,SAAS,EAAE,IAAI;IACf,UAAU,EAAE,IAAI;IAChB,0BAA0B,EAAE,IAAI;IAChC,uBAAuB,EAAE,IAAI;IAC7B,mBAAmB,EAAE,IAAI;IACzB,gBAAgB,EAAE,IAAI;IACtB,KAAK,EAAE,IAAI;IACX,MAAM,EAAE,IAAI;IACZ,QAAQ,EAAE,IAAI;IACd,eAAe,EAAE,IAAI;CACZ,CAAA;AAIV;;;;;GAKG;AACH,MAAM,CAAC,MAAM,qBAAqB,GAAG;IACpC,GAAG,EAAE,aAAa;IAClB,GAAG,EAAE,SAAS;IACd,GAAG,EAAE,SAAS;IACd,GAAG,EAAE,gBAAgB;IACrB,GAAG,EAAE,SAAS;IACd,GAAG,EAAE,QAAQ;IACb,GAAG,EAAE,UAAU;IACf,GAAG,EAAE,YAAY;IACjB,GAAG,EAAE,qBAAqB;IAC1B,GAAG,EAAE,WAAW;IAChB,GAAG,EAAE,SAAS;IACd,GAAG,EAAE,OAAO;IACZ,GAAG,EAAE,WAAW;IAChB,GAAG,EAAE,SAAS;IACd,GAAG,EAAE,YAAY;IACjB,GAAG,EAAE,SAAS;IACd,GAAG,EAAE,SAAS;IACd,GAAG,EAAE,YAAY;IACjB,GAAG,EAAE,UAAU;IACf,GAAG,EAAE,SAAS;IACd,GAAG,EAAE,SAAS;IACd,GAAG,EAAE,QAAQ;IACb,GAAG,EAAE,OAAO;IACZ,GAAG,EAAE,SAAS;IACd,GAAG,EAAE,QAAQ;IACb,GAAG,EAAE,SAAS;IACd,GAAG,EAAE,kCAAkC;IACvC,GAAG,EAAE,wBAAwB;IAC7B,GAAG,EAAE,UAAU;IACf,GAAG,EAAE,eAAe;IACpB,GAAG,EAAE,QAAQ;IACb,GAAG,EAAE,gCAAgC;IACrC,GAAG,EAAE,mBAAmB;IACxB,GAAG,EAAE,UAAU;IACf,GAAG,EAAE,cAAc;IACnB,GAAG,EAAE,SAAS;IACd,GAAG,EAAE,UAAU;IACf,GAAG,EAAE,UAAU;IACf,GAAG,EAAE,QAAQ;IACb,GAAG,EAAE,YAAY;IACjB,GAAG,EAAE,gBAAgB;IACrB,GAAG,EAAE,0BAA0B;IAC/B,GAAG,EAAE,MAAM;IACX,GAAG,EAAE,OAAO;IACZ,GAAG,EAAE,OAAO;IACZ,GAAG,EAAE,kBAAkB;IACvB,GAAG,EAAE,yBAAyB;IAC9B,GAAG,EAAE,UAAU;IACf,GAAG,EAAE,SAAS;IACd,GAAG,EAAE,OAAO;IACZ,GAAG,EAAE,uCAAuC;IAC5C,GAAG,EAAE,cAAc;IACnB,GAAG,EAAE,YAAY;IACjB,GAAG,EAAE,cAAc;IACnB,GAAG,EAAE,SAAS;IACd,GAAG,EAAE,MAAM;IACX,GAAG,EAAE,SAAS;IACd,GAAG,EAAE,QAAQ;IACb,GAAG,EAAE,gBAAgB;IACrB,GAAG,EAAE,SAAS;IACd,GAAG,EAAE,UAAU;IACf,GAAG,EAAE,UAAU;IACf,GAAG,EAAE,oBAAoB;IACzB,GAAG,EAAE,SAAS;IACd,GAAG,EAAE,OAAO;IACZ,GAAG,EAAE,aAAa;IAClB,GAAG,EAAE,mBAAmB;IACxB,GAAG,EAAE,SAAS;IACd,GAAG,EAAE,SAAS;IACd,GAAG,EAAE,UAAU;IACf,GAAG,EAAE,6BAA6B;IAClC,GAAG,EAAE,eAAe;IACpB,GAAG,EAAE,MAAM;IACX,GAAG,EAAE,SAAS;IACd,GAAG,EAAE,QAAQ;IACb,GAAG,EAAE,eAAe;IACpB,GAAG,EAAE,kBAAkB;IACvB,GAAG,EAAE,6BAA6B;IAClC,GAAG,EAAE,OAAO;IACZ,GAAG,EAAE,QAAQ;IACb,GAAG,EAAE,SAAS;IACd,GAAG,EAAE,SAAS;IACd,GAAG,EAAE,OAAO;IACZ,GAAG,EAAE,WAAW;IAChB,GAAG,EAAE,QAAQ;IACb,GAAG,EAAE,WAAW;IAChB,GAAG,EAAE,SAAS;IACd,GAAG,EAAE,YAAY;IACjB,GAAG,EAAE,MAAM;IACX,GAAG,EAAE,WAAW;IAChB,GAAG,EAAE,UAAU;IACf,GAAG,EAAE,QAAQ;IACb,GAAG,EAAE,eAAe;IACpB,GAAG,EAAE,QAAQ;IACb,GAAG,EAAE,OAAO;IACZ,GAAG,EAAE,mCAAmC;IACxC,GAAG,EAAE,+BAA+B;IACpC,GAAG,EAAE,UAAU;IACf,GAAG,EAAE,WAAW;IAChB,GAAG,EAAE,SAAS;IACd,GAAG,EAAE,SAAS;IACd,GAAG,EAAE,OAAO;IACZ,GAAG,EAAE,WAAW;IAChB,GAAG,EAAE,2BAA2B;IAChC,GAAG,EAAE,MAAM;IACX,GAAG,EAAE,SAAS;IACd,GAAG,EAAE,aAAa;IAClB,GAAG,EAAE,QAAQ;IACb,GAAG,EAAE,OAAO;IACZ,GAAG,EAAE,SAAS;IACd,GAAG,EAAE,OAAO;IACZ,GAAG,EAAE,QAAQ;IACb,GAAG,EAAE,QAAQ;IACb,GAAG,EAAE,YAAY;IACjB,GAAG,EAAE,OAAO;IACZ,GAAG,EAAE,UAAU;IACf,GAAG,EAAE,wCAAwC;IAC7C,GAAG,EAAE,oBAAoB;IACzB,GAAG,EAAE,QAAQ;IACb,GAAG,EAAE,YAAY;IACjB,GAAG,EAAE,kCAAkC;IACvC,GAAG,EAAE,QAAQ;IACb,GAAG,EAAE,SAAS;IACd,GAAG,EAAE,SAAS;IACd,GAAG,EAAE,SAAS;IACd,GAAG,EAAE,OAAO;IACZ,GAAG,EAAE,eAAe;IACpB,GAAG,EAAE,WAAW;IAChB,GAAG,EAAE,YAAY;IACjB,GAAG,EAAE,OAAO;IACZ,GAAG,EAAE,4CAA4C;IACjD,GAAG,EAAE,YAAY;IACjB,GAAG,EAAE,QAAQ;IACb,GAAG,EAAE,UAAU;IACf,GAAG,EAAE,UAAU;IACf,GAAG,EAAE,MAAM;IACX,GAAG,EAAE,OAAO;IACZ,GAAG,EAAE,kBAAkB;IACvB,GAAG,EAAE,YAAY;IACjB,GAAG,EAAE,YAAY;IACjB,GAAG,EAAE,WAAW;IAChB,GAAG,EAAE,SAAS;IACd,GAAG,EAAE,QAAQ;IACb,GAAG,EAAE,iCAAiC;IACtC,GAAG,EAAE,sBAAsB;IAC3B,GAAG,EAAE,QAAQ;IACb,GAAG,EAAE,UAAU;IACf,GAAG,EAAE,YAAY;IACjB,GAAG,EAAE,YAAY;IACjB,GAAG,EAAE,SAAS;IACd,GAAG,EAAE,YAAY;IACjB,GAAG,EAAE,SAAS;IACd,GAAG,EAAE,SAAS;IACd,GAAG,EAAE,OAAO;IACZ,GAAG,EAAE,OAAO;IACZ,GAAG,EAAE,aAAa;IAClB,GAAG,EAAE,eAAe;IACpB,GAAG,EAAE,aAAa;IAClB,GAAG,EAAE,WAAW;IAChB,GAAG,EAAE,OAAO;IACZ,GAAG,EAAE,SAAS;IACd,GAAG,EAAE,MAAM;IACX,GAAG,EAAE,gBAAgB;IACrB,GAAG,EAAE,0BAA0B;IAC/B,GAAG,EAAE,QAAQ;IACb,GAAG,EAAE,MAAM;IACX,GAAG,EAAE,UAAU;IACf,GAAG,EAAE,OAAO;IACZ,GAAG,EAAE,qBAAqB;IAC1B,GAAG,EAAE,QAAQ;IACb,GAAG,EAAE,kBAAkB;IACvB,GAAG,EAAE,UAAU;IACf,GAAG,EAAE,MAAM;IACX,GAAG,EAAE,aAAa;IAClB,GAAG,EAAE,UAAU;IACf,GAAG,EAAE,QAAQ;IACb,GAAG,EAAE,UAAU;IACf,GAAG,EAAE,aAAa;IAClB,GAAG,EAAE,OAAO;IACZ,GAAG,EAAE,SAAS;IACd,GAAG,EAAE,SAAS;IACd,GAAG,EAAE,oBAAoB;IACzB,GAAG,EAAE,QAAQ;IACb,GAAG,EAAE,kBAAkB;IACvB,GAAG,EAAE,8CAA8C;IACnD,GAAG,EAAE,uBAAuB;IAC5B,GAAG,EAAE,aAAa;IAClB,GAAG,EAAE,4BAA4B;IACjC,GAAG,EAAE,2BAA2B;IAChC,GAAG,EAAE,kCAAkC;IACvC,GAAG,EAAE,OAAO;IACZ,GAAG,EAAE,YAAY;IACjB,GAAG,EAAE,uBAAuB;IAC5B,GAAG,EAAE,cAAc;IACnB,GAAG,EAAE,SAAS;IACd,GAAG,EAAE,QAAQ;IACb,GAAG,EAAE,YAAY;IACjB,GAAG,EAAE,cAAc;IACnB,GAAG,EAAE,WAAW;IAChB,GAAG,EAAE,2BAA2B;IAChC,GAAG,EAAE,UAAU;IACf,GAAG,EAAE,UAAU;IACf,GAAG,EAAE,iBAAiB;IACtB,GAAG,EAAE,SAAS;IACd,GAAG,EAAE,cAAc;IACnB,GAAG,EAAE,8CAA8C;IACnD,GAAG,EAAE,aAAa;IAClB,GAAG,EAAE,OAAO;IACZ,GAAG,EAAE,WAAW;IAChB,GAAG,EAAE,OAAO;IACZ,GAAG,EAAE,UAAU;IACf,GAAG,EAAE,wBAAwB;IAC7B,GAAG,EAAE,WAAW;IAChB,GAAG,EAAE,QAAQ;IACb,GAAG,EAAE,aAAa;IAClB,GAAG,EAAE,sBAAsB;IAC3B,GAAG,EAAE,4BAA4B;IACjC,GAAG,EAAE,YAAY;IACjB,GAAG,EAAE,8BAA8B;IACnC,GAAG,EAAE,UAAU;IACf,GAAG,EAAE,aAAa;IAClB,GAAG,EAAE,MAAM;IACX,GAAG,EAAE,SAAS;IACd,GAAG,EAAE,OAAO;IACZ,GAAG,EAAE,qBAAqB;IAC1B,GAAG,EAAE,SAAS;IACd,GAAG,EAAE,QAAQ;IACb,GAAG,EAAE,cAAc;IACnB,GAAG,EAAE,0BAA0B;IAC/B,GAAG,EAAE,QAAQ;IACb,GAAG,EAAE,QAAQ;IACb,GAAG,EAAE,SAAS;IACd,GAAG,EAAE,sBAAsB;IAC3B,GAAG,EAAE,gBAAgB;IACrB,GAAG,EAAE,eAAe;IACpB,GAAG,EAAE,sCAAsC;IAC3C,GAAG,EAAE,SAAS;IACd,GAAG,EAAE,YAAY;IACjB,GAAG,EAAE,SAAS;IACd,GAAG,EAAE,WAAW;IAChB,GAAG,EAAE,UAAU;IACf,GAAG,EAAE,0BAA0B;IAC/B,GAAG,EAAE,uBAAuB;IAC5B,GAAG,EAAE,mBAAmB;IACxB,GAAG,EAAE,gBAAgB;IACrB,GAAG,EAAE,OAAO;IACZ,GAAG,EAAE,QAAQ;IACb,GAAG,EAAE,UAAU;IACf,GAAG,EAAE,eAAe;CAC2B,CAAA"}
1
+ {"version":3,"file":"codes.js","sourceRoot":"","sources":["../../lib/country/codes.ts"],"names":[],"mappings":"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"}
@@ -3,15 +3,15 @@
3
3
  * @license AGPL-3.0
4
4
  * @author Teffen Ellis, et al.
5
5
  *
6
- * Country recognition for the `country` parity lever. The ISO 3166-1 base (names + alpha-2/alpha-3)
6
+ * Country recognition for the `country` parity change. The ISO 3166-1 base (names + alpha-2/alpha-3)
7
7
  * is salvaged from isp-nexus `spatial/countries` ({@link ./names.ts}, {@link ./codes.ts}); this
8
8
  * adds the layer ISO doesn't carry — the **surface forms** addresses actually use (endonyms +
9
9
  * common abbreviations: "USA"/"United States"/"U.S."; "Deutschland"/"Germany"; "España"/"Spain")
10
- * — plus a {@link matchCountry} resolver the corpus country-shard + parsing reuse. Same shape as
10
+ * — plus a {@link matchCountry} resolver the corpus country-extract + parsing reuse. Same shape as
11
11
  * the other codex matchers (street-suffix, directional, po-box).
12
12
  */
13
- import type { CountryName } from "./names.ts";
14
- export { Alpha3ToCountryRecord, CountryISO2, type CountryISO3 } from "./codes.ts";
13
+ import type { CountryName } from "#country/names";
14
+ export { Alpha3ToCountryRecord, CountryISO2, type CountryISO3 } from "#country/codes";
15
15
  /**
16
16
  * Common real-address surface forms per ISO 3166-1 alpha-2, **canonical English name first** then endonym +
17
17
  * abbreviations. Curated for the corpus locales + frequent countries (NOT a full 249-entry variant table — the ISO base
@@ -42,9 +42,11 @@ export type CountrySurfaceISO2 = keyof typeof COUNTRY_SURFACE_FORMS;
42
42
  */
43
43
  export declare const ISO2_TO_NAME: ReadonlyMap<string, CountryName>;
44
44
  /**
45
- * Any recognized country surface form / canonical name / alpha-2 / alpha-3 → alpha-2 code. Built once at module load,
46
- * lowercase-keyed. Canonical names + codes from the ISO base, plus the curated surface forms (surface forms win on
47
- * collisionthey're the address-facing spellings).
45
+ * Any recognized country surface form / canonical name / alpha-2 / alpha-3 → alpha-2 code. Built once at module load.
46
+ * Each surface contributes its lowercased key AND its {@link foldName}-folded key when the fold leaves anything a
47
+ * non-Latin surface like `日本` survives only as its lowercased self so accented and punctuated variants resolve.
48
+ * Canonical names + codes from the ISO base, plus the curated surface forms (surface forms win on collision — they're
49
+ * the address-facing spellings).
48
50
  */
49
51
  export declare const COUNTRY_LOOKUP: ReadonlyMap<string, string>;
50
52
  /**
@@ -56,9 +58,9 @@ export interface CountryMatch {
56
58
  matched: string;
57
59
  }
58
60
  /**
59
- * Resolve a token (surface form, canonical name, alpha-2, or alpha-3) to a country. Case-insensitive. Returns null if
60
- * unrecognized. Multi-word names ("United States", "Great Britain") must be passed as the whole phrase — the caller
61
- * decides the span; this matches it.
61
+ * Resolve a token (surface form, canonical name, alpha-2, or alpha-3) to a country. Case-, accent-, and
62
+ * punctuation-insensitive. Returns null if unrecognized. Multi-word names ("United States", "Great Britain") must be
63
+ * passed as the whole phrase — the caller decides the span; this matches it.
62
64
  */
63
65
  export declare function matchCountry(token: string | null | undefined): CountryMatch | null;
64
66
  /**
@@ -66,7 +68,7 @@ export declare function matchCountry(token: string | null | undefined): CountryM
66
68
  */
67
69
  export declare function isCountryToken(token: unknown): boolean;
68
70
  /**
69
- * The preferred render forms for an alpha-2 (canonical first), for synth shards. Empty if none curated.
71
+ * The preferred render forms for an alpha-2 (canonical first), for synth extracts. Empty if none curated.
70
72
  */
71
73
  export declare function countrySurfaceForms(iso2: string): readonly string[];
72
74
  //# sourceMappingURL=country.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"country.d.ts","sourceRoot":"","sources":["../../country/country.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;GAWG;AAGH,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,YAAY,CAAA;AAE7C,OAAO,EAAE,qBAAqB,EAAE,WAAW,EAAE,KAAK,WAAW,EAAE,MAAM,YAAY,CAAA;AAEjF;;;;;GAKG;AACH,eAAO,MAAM,qBAAqB;;;;;;;;;;;;;;;;;CAiB6B,CAAA;AAE/D,MAAM,MAAM,kBAAkB,GAAG,MAAM,OAAO,qBAAqB,CAAA;AAEnE;;GAEG;AACH,eAAO,MAAM,YAAY,EAAE,WAAW,CAAC,MAAM,EAAE,WAAW,CAEzD,CAAA;AAED;;;;GAIG;AACH,eAAO,MAAM,cAAc,EAAE,WAAW,CAAC,MAAM,EAAE,MAAM,CAqCnD,CAAA;AAEJ;;GAEG;AACH,MAAM,WAAW,YAAY;IAC5B,IAAI,EAAE,MAAM,CAAA;IACZ,SAAS,EAAE,WAAW,GAAG,SAAS,CAAA;IAClC,OAAO,EAAE,MAAM,CAAA;CACf;AAED;;;;GAIG;AACH,wBAAgB,YAAY,CAAC,KAAK,EAAE,MAAM,GAAG,IAAI,GAAG,SAAS,GAAG,YAAY,GAAG,IAAI,CAOlF;AAED;;GAEG;AACH,wBAAgB,cAAc,CAAC,KAAK,EAAE,OAAO,GAAG,OAAO,CAEtD;AAED;;GAEG;AACH,wBAAgB,mBAAmB,CAAC,IAAI,EAAE,MAAM,GAAG,SAAS,MAAM,EAAE,CAEnE"}
1
+ {"version":3,"file":"country.d.ts","sourceRoot":"","sources":["../../lib/country/country.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;GAWG;AAGH,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,gBAAgB,CAAA;AAGjD,OAAO,EAAE,qBAAqB,EAAE,WAAW,EAAE,KAAK,WAAW,EAAE,MAAM,gBAAgB,CAAA;AAErF;;;;;GAKG;AACH,eAAO,MAAM,qBAAqB;;;;;;;;;;;;;;;;;CAiB6B,CAAA;AAE/D,MAAM,MAAM,kBAAkB,GAAG,MAAM,OAAO,qBAAqB,CAAA;AAEnE;;GAEG;AACH,eAAO,MAAM,YAAY,EAAE,WAAW,CAAC,MAAM,EAAE,WAAW,CAEzD,CAAA;AAED;;;;;;GAMG;AACH,eAAO,MAAM,cAAc,EAAE,WAAW,CAAC,MAAM,EAAE,MAAM,CAiDnD,CAAA;AAgBJ;;GAEG;AACH,MAAM,WAAW,YAAY;IAC5B,IAAI,EAAE,MAAM,CAAA;IACZ,SAAS,EAAE,WAAW,GAAG,SAAS,CAAA;IAClC,OAAO,EAAE,MAAM,CAAA;CACf;AAED;;;;GAIG;AACH,wBAAgB,YAAY,CAAC,KAAK,EAAE,MAAM,GAAG,IAAI,GAAG,SAAS,GAAG,YAAY,GAAG,IAAI,CAOlF;AAED;;GAEG;AACH,wBAAgB,cAAc,CAAC,KAAK,EAAE,OAAO,GAAG,OAAO,CAEtD;AAED;;GAEG;AACH,wBAAgB,mBAAmB,CAAC,IAAI,EAAE,MAAM,GAAG,SAAS,MAAM,EAAE,CAEnE"}
@@ -3,15 +3,16 @@
3
3
  * @license AGPL-3.0
4
4
  * @author Teffen Ellis, et al.
5
5
  *
6
- * Country recognition for the `country` parity lever. The ISO 3166-1 base (names + alpha-2/alpha-3)
6
+ * Country recognition for the `country` parity change. The ISO 3166-1 base (names + alpha-2/alpha-3)
7
7
  * is salvaged from isp-nexus `spatial/countries` ({@link ./names.ts}, {@link ./codes.ts}); this
8
8
  * adds the layer ISO doesn't carry — the **surface forms** addresses actually use (endonyms +
9
9
  * common abbreviations: "USA"/"United States"/"U.S."; "Deutschland"/"Germany"; "España"/"Spain")
10
- * — plus a {@link matchCountry} resolver the corpus country-shard + parsing reuse. Same shape as
10
+ * — plus a {@link matchCountry} resolver the corpus country-extract + parsing reuse. Same shape as
11
11
  * the other codex matchers (street-suffix, directional, po-box).
12
12
  */
13
- import { Alpha3ToCountryRecord, CountryISO2 } from "./codes.js";
14
- export { Alpha3ToCountryRecord, CountryISO2 } from "./codes.js";
13
+ import { Alpha3ToCountryRecord, CountryISO2 } from "#country/codes";
14
+ import { foldName } from "#normalize";
15
+ export { Alpha3ToCountryRecord, CountryISO2 } from "#country/codes";
15
16
  /**
16
17
  * Common real-address surface forms per ISO 3166-1 alpha-2, **canonical English name first** then endonym +
17
18
  * abbreviations. Curated for the corpus locales + frequent countries (NOT a full 249-entry variant table — the ISO base
@@ -41,9 +42,11 @@ export const COUNTRY_SURFACE_FORMS = {
41
42
  */
42
43
  export const ISO2_TO_NAME = new Map(Object.entries(CountryISO2).map(([name, code]) => [code, name]));
43
44
  /**
44
- * Any recognized country surface form / canonical name / alpha-2 / alpha-3 → alpha-2 code. Built once at module load,
45
- * lowercase-keyed. Canonical names + codes from the ISO base, plus the curated surface forms (surface forms win on
46
- * collisionthey're the address-facing spellings).
45
+ * Any recognized country surface form / canonical name / alpha-2 / alpha-3 → alpha-2 code. Built once at module load.
46
+ * Each surface contributes its lowercased key AND its {@link foldName}-folded key when the fold leaves anything a
47
+ * non-Latin surface like `日本` survives only as its lowercased self so accented and punctuated variants resolve.
48
+ * Canonical names + codes from the ISO base, plus the curated surface forms (surface forms win on collision — they're
49
+ * the address-facing spellings).
47
50
  */
48
51
  export const COUNTRY_LOOKUP = (() => {
49
52
  const out = new Map();
@@ -52,6 +55,10 @@ export const COUNTRY_LOOKUP = (() => {
52
55
  if (key && !out.has(key)) {
53
56
  out.set(key, iso2);
54
57
  }
58
+ const folded = foldName(k);
59
+ if (folded && !out.has(folded)) {
60
+ out.set(folded, iso2);
61
+ }
55
62
  };
56
63
  // ISO base: canonical name + alpha-2 + alpha-3.
57
64
  for (const [name, code] of Object.entries(CountryISO2)) {
@@ -71,19 +78,34 @@ export const COUNTRY_LOOKUP = (() => {
71
78
  for (const [iso2, forms] of Object.entries(COUNTRY_SURFACE_FORMS)) {
72
79
  for (const f of forms) {
73
80
  out.set(f.trim().toLowerCase(), iso2);
81
+ const folded = foldName(f);
82
+ if (folded) {
83
+ out.set(folded, iso2);
84
+ }
74
85
  }
75
86
  }
76
87
  return out;
77
88
  })();
78
89
  /**
79
- * Resolve a token (surface form, canonical name, alpha-2, or alpha-3) to a country. Case-insensitive. Returns null if
80
- * unrecognized. Multi-word names ("United States", "Great Britain") must be passed as the whole phrase — the caller
81
- * decides the span; this matches it.
90
+ * Probe the lookup the way it is keyed: the lowercased surface first, then the {@link foldName} fold when it is
91
+ * non-empty.
92
+ */
93
+ function probeCountry(token) {
94
+ const direct = COUNTRY_LOOKUP.get(token.trim().toLowerCase());
95
+ if (direct)
96
+ return direct;
97
+ const folded = foldName(token);
98
+ return folded ? COUNTRY_LOOKUP.get(folded) : undefined;
99
+ }
100
+ /**
101
+ * Resolve a token (surface form, canonical name, alpha-2, or alpha-3) to a country. Case-, accent-, and
102
+ * punctuation-insensitive. Returns null if unrecognized. Multi-word names ("United States", "Great Britain") must be
103
+ * passed as the whole phrase — the caller decides the span; this matches it.
82
104
  */
83
105
  export function matchCountry(token) {
84
106
  if (!token || typeof token !== "string")
85
107
  return null;
86
- const iso2 = COUNTRY_LOOKUP.get(token.trim().toLowerCase());
108
+ const iso2 = probeCountry(token);
87
109
  if (!iso2)
88
110
  return null;
89
111
  return { iso2, canonical: ISO2_TO_NAME.get(iso2), matched: token.trim() };
@@ -92,10 +114,10 @@ export function matchCountry(token) {
92
114
  * Case-insensitive check: is the token any recognized country form?
93
115
  */
94
116
  export function isCountryToken(token) {
95
- return typeof token === "string" && COUNTRY_LOOKUP.has(token.trim().toLowerCase());
117
+ return typeof token === "string" && probeCountry(token) !== undefined;
96
118
  }
97
119
  /**
98
- * The preferred render forms for an alpha-2 (canonical first), for synth shards. Empty if none curated.
120
+ * The preferred render forms for an alpha-2 (canonical first), for synth extracts. Empty if none curated.
99
121
  */
100
122
  export function countrySurfaceForms(iso2) {
101
123
  return COUNTRY_SURFACE_FORMS[iso2.toUpperCase()] ?? [];
@@ -1 +1 @@
1
- {"version":3,"file":"country.js","sourceRoot":"","sources":["../../country/country.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"country.js","sourceRoot":"","sources":["../../lib/country/country.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,67 @@
1
+ /**
2
+ * @copyright Sister Software
3
+ * @license AGPL-3.0
4
+ * @author Teffen Ellis, et al.
5
+ *
6
+ * Country surface forms across scripts, enumerated from the RUNTIME's own ICU via `Intl.DisplayNames`.
7
+ *
8
+ * The gazetteer holds country names in English and little else, which is why a bare `格鲁吉亚` (Georgia the country,
9
+ * Chinese), `沙特阿拉伯` or `巴布亚新几内亚` resolves to nothing while `佐治亚州` (Georgia the US state) resolves
10
+ * correctly — the state is a real WOF record carrying multilingual names, and 140 of the 237 country rows are
11
+ * synthetic and carry only a canonical English name. Measured 2026-08-15; WOF has no Chinese country names at all,
12
+ * and `geonames-aliases.ts` filters every alias through a Latin-script regex.
13
+ *
14
+ * ICU already knows all of it. No download, no vendored corpus, no licence question, and no drift against a snapshot
15
+ * we would otherwise have to refresh: the names come from the same ICU the runtime uses for every other
16
+ * locale-sensitive operation. Measured coverage at time of writing: **280 regions, 5,244 distinct surfaces** across
17
+ * the locale × style grid below.
18
+ *
19
+ * This module ENUMERATES. It does not decide what the gazetteer stores — see the candidate build for that, and note
20
+ * that a surface here is a NAME THE WORLD USES, never an authority's designation.
21
+ */
22
+ /**
23
+ * The locales whose display names are enumerated. Chosen for script coverage rather than speaker count: each entry
24
+ * either contributes a distinct script (Han simplified/traditional, Kana, Hangul, Arabic, Cyrillic, Devanagari, Hebrew,
25
+ * Greek, Thai) or a major Latin-script exonym set that diverges from English.
26
+ *
27
+ * Adding a locale is additive and safe — surfaces are deduplicated — but every addition grows the candidate table, so
28
+ * it earns its place by contributing surfaces a user would plausibly type.
29
+ */
30
+ export declare const DISPLAY_NAME_LOCALES: readonly ["en", "zh-Hans", "zh-Hant", "ja", "ko", "ar", "ru", "es", "fr", "de", "hi", "pt", "it", "nl", "pl", "tr", "vi", "th", "id", "fa", "he", "uk", "sv", "el"];
31
+ /**
32
+ * `long` is the ordinary name, `short` supplies the abbreviations people actually type (`UK`, `US`, `アメリカ`), and
33
+ * `narrow` occasionally differs again. All three are enumerated because the query register is whatever the user wrote.
34
+ */
35
+ export declare const DISPLAY_NAME_STYLES: readonly ["long", "short", "narrow"];
36
+ /**
37
+ * One country surface and where it came from.
38
+ */
39
+ export interface CountryDisplayName {
40
+ /**
41
+ * ISO 3166-1 alpha-2.
42
+ */
43
+ iso2: string;
44
+ /**
45
+ * The surface as ICU renders it, unmodified — normalisation is the consumer's job, and the raw form is what a
46
+ * provenance record needs to be auditable.
47
+ */
48
+ name: string;
49
+ /**
50
+ * BCP-47 tag this surface came from. Carried so a consumer can scope by locale rather than accepting every script for
51
+ * every query.
52
+ */
53
+ locale: string;
54
+ }
55
+ /**
56
+ * Enumerate every AA–ZZ code against the locale × style grid, keeping what ICU recognises.
57
+ *
58
+ * Deduplicated per (iso2, name): the same surface reached from several locales is one row, and the FIRST locale that
59
+ * produced it wins the attribution — deterministic because {@link DISPLAY_NAME_LOCALES} is ordered.
60
+ */
61
+ export declare function enumerateCountryDisplayNames(locales?: readonly string[]): Generator<CountryDisplayName>;
62
+ /**
63
+ * Every surface ICU knows for one country. Convenience over {@link enumerateCountryDisplayNames} for a single lookup;
64
+ * the generator is the bulk path.
65
+ */
66
+ export declare function countryDisplayNames(iso2: string, locales?: readonly string[]): string[];
67
+ //# sourceMappingURL=display-names.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"display-names.d.ts","sourceRoot":"","sources":["../../lib/country/display-names.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;GAoBG;AAEH;;;;;;;GAOG;AACH,eAAO,MAAM,oBAAoB,qKAyBvB,CAAA;AAEV;;;GAGG;AACH,eAAO,MAAM,mBAAmB,sCAAuC,CAAA;AAEvE;;GAEG;AACH,MAAM,WAAW,kBAAkB;IAClC;;OAEG;IACH,IAAI,EAAE,MAAM,CAAA;IACZ;;;OAGG;IACH,IAAI,EAAE,MAAM,CAAA;IACZ;;;OAGG;IACH,MAAM,EAAE,MAAM,CAAA;CACd;AAiBD;;;;;GAKG;AACH,wBAAiB,4BAA4B,CAC5C,OAAO,GAAE,SAAS,MAAM,EAAyB,GAC/C,SAAS,CAAC,kBAAkB,CAAC,CAiC/B;AAED;;;GAGG;AACH,wBAAgB,mBAAmB,CAAC,IAAI,EAAE,MAAM,EAAE,OAAO,CAAC,EAAE,SAAS,MAAM,EAAE,GAAG,MAAM,EAAE,CAIvF"}