@mailwoman/corpus 9.4.0 → 10.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 (981) hide show
  1. package/README.md +16 -0
  2. package/lib/adapters/geonames/adapter.ts +3 -3
  3. package/lib/adapters/geonames/postal/adapter.ts +122 -0
  4. package/lib/adapters/index.ts +39 -32
  5. package/lib/adapters/openaddresses/adapter.ts +4 -7
  6. package/lib/adapters/osm/adapter.ts +278 -0
  7. package/lib/adapters/overture/adapter.ts +22 -7
  8. package/lib/adapters/utils/index.ts +1 -1
  9. package/lib/adapters/wof/admin/json/adapter.ts +239 -0
  10. package/lib/adapters/wof/json-rows.ts +181 -0
  11. package/lib/adapters/wof/postalcode-json/adapter.ts +196 -0
  12. package/lib/au/adapters/gnaf/adapter.ts +152 -0
  13. package/lib/au/adapters/gnaf/assemble.ts +225 -0
  14. package/lib/de/recipes/locale.ts +360 -0
  15. package/lib/fr/adapters/ban/adapter.ts +159 -0
  16. package/lib/fr/recipes/admin-split.ts +243 -0
  17. package/lib/fr/recipes/bare-street.ts +171 -0
  18. package/lib/fr/recipes/fragment.ts +334 -0
  19. package/lib/fr/recipes/lieudit.ts +274 -0
  20. package/lib/fr/recipes/order.ts +246 -0
  21. package/lib/fr/tools/fetch/ban.ts +289 -0
  22. package/lib/index.ts +1 -1
  23. package/lib/international/recipes/locale.ts +598 -0
  24. package/lib/jp/tools/fetch/houjin.ts +141 -0
  25. package/lib/kr/adapters/juso/label-rows.ts +259 -0
  26. package/lib/kr/adapters/localdata/align.ts +299 -0
  27. package/lib/kr/adapters/localdata/key-index.ts +185 -0
  28. package/lib/kr/adapters/localdata/permit-rows.ts +186 -0
  29. package/lib/kr/tools/fetch/juso.ts +172 -0
  30. package/lib/kr/tools/fetch/localdata.ts +206 -0
  31. package/lib/recipes/bare/postcode/eval.ts +99 -0
  32. package/lib/recipes/bare/postcode/index.ts +327 -0
  33. package/lib/recipes/country-balanced.ts +1 -1
  34. package/lib/recipes/index.ts +28 -21
  35. package/lib/recipes/intersection.ts +1 -1
  36. package/lib/recipes/po/box/cedex/au-nz.ts +82 -0
  37. package/lib/recipes/po/box/cedex/ca.ts +58 -0
  38. package/lib/recipes/po/box/cedex/fr.ts +76 -0
  39. package/lib/recipes/po/box/cedex/phrases.ts +108 -0
  40. package/lib/recipes/po/box/cedex/recipe.ts +203 -0
  41. package/lib/recipes/po/box/cedex/sources.ts +189 -0
  42. package/lib/recipes/po/box/cedex/types.ts +35 -0
  43. package/lib/recipes/po/box/cedex/us.ts +69 -0
  44. package/lib/recipes/po/box/cedex/vocabulary.ts +106 -0
  45. package/lib/recipes/po/box/cedex.ts +9 -0
  46. package/lib/recipes/po/box/index.ts +128 -0
  47. package/lib/recipes/scaffold.ts +18 -41
  48. package/lib/recipes/street/affix.ts +807 -0
  49. package/lib/recipes/sub/venue/context.ts +149 -0
  50. package/lib/recipes/sub/venue/index.ts +997 -0
  51. package/lib/recipes/sub/venue/sources.ts +739 -0
  52. package/lib/recipes/trailing-region.ts +6 -1
  53. package/lib/recipes/unit.ts +1 -1
  54. package/lib/sg/recipes/register.ts +270 -0
  55. package/lib/sg/tools/fetch/acra.ts +179 -0
  56. package/lib/south-asia/recipes/register.ts +214 -0
  57. package/lib/synthesizers/anchor-absorption.ts +1 -1
  58. package/lib/synthesizers/locale.ts +261 -0
  59. package/lib/synthesizers/street.ts +1 -1
  60. package/lib/synthesizers/utils.ts +2 -2
  61. package/lib/tools/audit.ts +3 -2
  62. package/lib/tools/corpus-stats.ts +3 -3
  63. package/lib/tools/fetch/download/index.ts +10 -0
  64. package/lib/tools/fetch/download/manifest.ts +102 -0
  65. package/lib/tools/fetch/download/network.ts +226 -0
  66. package/lib/tools/fetch/download/retry.ts +173 -0
  67. package/lib/tools/fetch/geonames/dump.ts +257 -0
  68. package/lib/tools/fetch/geonames/postal.ts +180 -0
  69. package/lib/tools/fetch/index.ts +30 -30
  70. package/lib/tools/fetch/openaddresses.ts +2 -2
  71. package/lib/tools/fetch/ourairports.ts +2 -2
  72. package/lib/tools/fetch/ppd.ts +1 -3
  73. package/lib/tools/fetch/wikidata-subvenue.ts +2 -2
  74. package/lib/tools/golden/promote.ts +340 -0
  75. package/lib/tools/golden/relabel-street/directory.ts +340 -0
  76. package/lib/tools/golden/relabel-street/index.ts +9 -0
  77. package/lib/tools/golden/relabel-street/row.ts +361 -0
  78. package/lib/tools/index.ts +10 -10
  79. package/lib/tools/ingest-csv.ts +5 -7
  80. package/lib/tools/lint/slice/vocab.ts +376 -0
  81. package/lib/tools/overlay-manifest.ts +92 -25
  82. package/lib/tools/overture-subvenue.ts +1 -1
  83. package/lib/tools/postcode-triples.ts +138 -14
  84. package/lib/tools/sub/venue/harvest.ts +234 -0
  85. package/lib/tools/sub/venue/head-nouns.ts +245 -0
  86. package/lib/tools/sub/venue/lexicon.ts +429 -0
  87. package/lib/tools/sub/venue/surfaces.ts +95 -0
  88. package/lib/tools/sub/venue/table.ts +281 -0
  89. package/lib/tools/sub/venue/wikidata.ts +85 -0
  90. package/lib/tw/tools/fetch/gcis.ts +180 -0
  91. package/lib/types.ts +1 -1
  92. package/lib/us/adapters/fcc-bdc/adapter.ts +173 -0
  93. package/lib/us/adapters/state/hi-schools/adapter.ts +160 -0
  94. package/lib/us/adapters/state/ia-contractors/adapter.ts +136 -0
  95. package/lib/us/adapters/state/ny-notaries/adapter.ts +133 -0
  96. package/lib/us/adapters/state/tx-notaries/adapter.ts +149 -0
  97. package/lib/us/adapters/tiger/adapter.ts +250 -0
  98. package/lib/us/adapters/usgov/hrsa-fqhc/adapter.ts +156 -0
  99. package/lib/us/adapters/usgov/imls-pls/adapter.ts +134 -0
  100. package/lib/us/adapters/usgov/irs-bmf/adapter.ts +145 -0
  101. package/lib/us/adapters/usgov/nad/adapter.ts +324 -0
  102. package/lib/us/adapters/usgov/nppes/adapter.ts +143 -0
  103. package/lib/us/adapters/usgov/samhsa-treatment-locator/adapter.ts +182 -0
  104. package/lib/us/tools/fetch/hrsa.ts +59 -0
  105. package/lib/us/tools/fetch/imls-pls.ts +149 -0
  106. package/lib/us/tools/fetch/nad.ts +341 -0
  107. package/lib/us/tools/fetch/nppes.ts +165 -0
  108. package/lib/us/tools/fetch/state/hi-schools.ts +161 -0
  109. package/lib/us/tools/fetch/state/sources.ts +146 -0
  110. package/lib/us/tools/fetch/tiger-full.ts +308 -0
  111. package/lib/utils/align.ts +1 -1
  112. package/lib/utils/golden.ts +12 -8
  113. package/lib/utils/wof-json.ts +7 -13
  114. package/out/adapters/geonames/adapter.d.ts +1 -1
  115. package/out/adapters/geonames/adapter.js +3 -3
  116. package/out/adapters/geonames/adapter.js.map +1 -1
  117. package/out/adapters/geonames/postal/adapter.d.ts.map +1 -0
  118. package/out/adapters/geonames/postal/adapter.js +107 -0
  119. package/out/adapters/geonames/postal/adapter.js.map +1 -0
  120. package/out/adapters/index.d.ts +16 -16
  121. package/out/adapters/index.d.ts.map +1 -1
  122. package/out/adapters/index.js +34 -32
  123. package/out/adapters/index.js.map +1 -1
  124. package/out/adapters/openaddresses/adapter.d.ts.map +1 -1
  125. package/out/adapters/openaddresses/adapter.js +4 -6
  126. package/out/adapters/openaddresses/adapter.js.map +1 -1
  127. package/out/adapters/osm/adapter.d.ts +95 -0
  128. package/out/adapters/osm/adapter.d.ts.map +1 -0
  129. package/out/adapters/osm/adapter.js +211 -0
  130. package/out/adapters/osm/adapter.js.map +1 -0
  131. package/out/adapters/overture/adapter.d.ts +10 -0
  132. package/out/adapters/overture/adapter.d.ts.map +1 -1
  133. package/out/adapters/overture/adapter.js +20 -7
  134. package/out/adapters/overture/adapter.js.map +1 -1
  135. package/out/adapters/synth-po-box/adapter.js.map +1 -1
  136. package/out/adapters/utils/index.d.ts +1 -1
  137. package/out/adapters/utils/index.d.ts.map +1 -1
  138. package/out/adapters/utils/index.js.map +1 -1
  139. package/out/adapters/wof/admin/json/adapter.d.ts +79 -0
  140. package/out/adapters/wof/admin/json/adapter.d.ts.map +1 -0
  141. package/out/adapters/wof/admin/json/adapter.js +204 -0
  142. package/out/adapters/wof/admin/json/adapter.js.map +1 -0
  143. package/out/adapters/wof/json-rows.d.ts +73 -0
  144. package/out/adapters/wof/json-rows.d.ts.map +1 -0
  145. package/out/adapters/wof/json-rows.js +115 -0
  146. package/out/adapters/wof/json-rows.js.map +1 -0
  147. package/out/adapters/wof/postalcode-json/adapter.d.ts +65 -0
  148. package/out/adapters/wof/postalcode-json/adapter.d.ts.map +1 -0
  149. package/out/adapters/wof/postalcode-json/adapter.js +167 -0
  150. package/out/adapters/wof/postalcode-json/adapter.js.map +1 -0
  151. package/out/au/adapters/gnaf/adapter.d.ts.map +1 -0
  152. package/out/au/adapters/gnaf/adapter.js +127 -0
  153. package/out/au/adapters/gnaf/adapter.js.map +1 -0
  154. package/out/au/adapters/gnaf/assemble.d.ts +65 -0
  155. package/out/au/adapters/gnaf/assemble.d.ts.map +1 -0
  156. package/out/au/adapters/gnaf/assemble.js +154 -0
  157. package/out/au/adapters/gnaf/assemble.js.map +1 -0
  158. package/out/cn/recipes/organizational-units.d.ts +36 -0
  159. package/out/cn/recipes/organizational-units.d.ts.map +1 -0
  160. package/out/cn/recipes/organizational-units.js +159 -0
  161. package/out/cn/recipes/organizational-units.js.map +1 -0
  162. package/out/cz/recipes/pcfirst-preposition.d.ts +22 -0
  163. package/out/cz/recipes/pcfirst-preposition.d.ts.map +1 -0
  164. package/out/cz/recipes/pcfirst-preposition.js +101 -0
  165. package/out/cz/recipes/pcfirst-preposition.js.map +1 -0
  166. package/out/de/recipes/locale.d.ts +44 -0
  167. package/out/de/recipes/locale.d.ts.map +1 -0
  168. package/out/de/recipes/locale.js +289 -0
  169. package/out/de/recipes/locale.js.map +1 -0
  170. package/out/env.d.ts +1 -1
  171. package/out/fr/adapters/ban/adapter.d.ts.map +1 -0
  172. package/out/fr/adapters/ban/adapter.js +123 -0
  173. package/out/fr/adapters/ban/adapter.js.map +1 -0
  174. package/out/fr/adapters/ban/street-decompose.d.ts.map +1 -0
  175. package/out/fr/adapters/ban/street-decompose.js.map +1 -0
  176. package/out/fr/recipes/admin-split.d.ts +38 -0
  177. package/out/fr/recipes/admin-split.d.ts.map +1 -0
  178. package/out/fr/recipes/admin-split.js +192 -0
  179. package/out/fr/recipes/admin-split.js.map +1 -0
  180. package/out/fr/recipes/bare-street.d.ts +28 -0
  181. package/out/fr/recipes/bare-street.d.ts.map +1 -0
  182. package/out/fr/recipes/bare-street.js +144 -0
  183. package/out/fr/recipes/bare-street.js.map +1 -0
  184. package/out/fr/recipes/fragment.d.ts +77 -0
  185. package/out/fr/recipes/fragment.d.ts.map +1 -0
  186. package/out/fr/recipes/fragment.js +277 -0
  187. package/out/fr/recipes/fragment.js.map +1 -0
  188. package/out/fr/recipes/lieudit.d.ts +32 -0
  189. package/out/fr/recipes/lieudit.d.ts.map +1 -0
  190. package/out/fr/recipes/lieudit.js +211 -0
  191. package/out/fr/recipes/lieudit.js.map +1 -0
  192. package/out/fr/recipes/order.d.ts +38 -0
  193. package/out/fr/recipes/order.d.ts.map +1 -0
  194. package/out/fr/recipes/order.js +198 -0
  195. package/out/fr/recipes/order.js.map +1 -0
  196. package/out/fr/tools/fetch/ban.d.ts +31 -0
  197. package/out/fr/tools/fetch/ban.d.ts.map +1 -0
  198. package/out/fr/tools/fetch/ban.js +239 -0
  199. package/out/fr/tools/fetch/ban.js.map +1 -0
  200. package/out/index.d.ts +1 -1
  201. package/out/index.d.ts.map +1 -1
  202. package/out/index.js +1 -1
  203. package/out/index.js.map +1 -1
  204. package/out/international/recipes/locale.d.ts +136 -0
  205. package/out/international/recipes/locale.d.ts.map +1 -0
  206. package/out/international/recipes/locale.js +458 -0
  207. package/out/international/recipes/locale.js.map +1 -0
  208. package/out/jp/adapters/wof-admin/adapter.d.ts.map +1 -0
  209. package/out/jp/adapters/wof-admin/adapter.js.map +1 -0
  210. package/out/jp/tools/fetch/houjin.d.ts +24 -0
  211. package/out/jp/tools/fetch/houjin.d.ts.map +1 -0
  212. package/out/jp/tools/fetch/houjin.js +102 -0
  213. package/out/jp/tools/fetch/houjin.js.map +1 -0
  214. package/out/kr/adapters/juso/label-rows.d.ts +76 -0
  215. package/out/kr/adapters/juso/label-rows.d.ts.map +1 -0
  216. package/out/kr/adapters/juso/label-rows.js +194 -0
  217. package/out/kr/adapters/juso/label-rows.js.map +1 -0
  218. package/out/kr/adapters/localdata/align.d.ts +43 -0
  219. package/out/kr/adapters/localdata/align.d.ts.map +1 -0
  220. package/out/kr/adapters/localdata/align.js +223 -0
  221. package/out/kr/adapters/localdata/align.js.map +1 -0
  222. package/out/kr/adapters/localdata/key-index.d.ts +71 -0
  223. package/out/kr/adapters/localdata/key-index.d.ts.map +1 -0
  224. package/out/kr/adapters/localdata/key-index.js +133 -0
  225. package/out/kr/adapters/localdata/key-index.js.map +1 -0
  226. package/out/kr/adapters/localdata/permit-rows.d.ts +66 -0
  227. package/out/kr/adapters/localdata/permit-rows.d.ts.map +1 -0
  228. package/out/kr/adapters/localdata/permit-rows.js +131 -0
  229. package/out/kr/adapters/localdata/permit-rows.js.map +1 -0
  230. package/out/kr/tools/fetch/juso.d.ts +30 -0
  231. package/out/kr/tools/fetch/juso.d.ts.map +1 -0
  232. package/out/kr/tools/fetch/juso.js +120 -0
  233. package/out/kr/tools/fetch/juso.js.map +1 -0
  234. package/out/kr/tools/fetch/localdata.d.ts +30 -0
  235. package/out/kr/tools/fetch/localdata.d.ts.map +1 -0
  236. package/out/kr/tools/fetch/localdata.js +139 -0
  237. package/out/kr/tools/fetch/localdata.js.map +1 -0
  238. package/out/nl/recipes/postcode.d.ts +26 -0
  239. package/out/nl/recipes/postcode.d.ts.map +1 -0
  240. package/out/nl/recipes/postcode.js +103 -0
  241. package/out/nl/recipes/postcode.js.map +1 -0
  242. package/out/no/recipes/fragment.d.ts +43 -0
  243. package/out/no/recipes/fragment.d.ts.map +1 -0
  244. package/out/no/recipes/fragment.js +183 -0
  245. package/out/no/recipes/fragment.js.map +1 -0
  246. package/out/no/recipes/street/index.d.ts +18 -0
  247. package/out/no/recipes/street/index.d.ts.map +1 -0
  248. package/out/no/recipes/street/index.js +72 -0
  249. package/out/no/recipes/street/index.js.map +1 -0
  250. package/out/no/recipes/street/led.d.ts +24 -0
  251. package/out/no/recipes/street/led.d.ts.map +1 -0
  252. package/out/no/recipes/street/led.js +114 -0
  253. package/out/no/recipes/street/led.js.map +1 -0
  254. package/out/recipes/bare/country.d.ts +25 -0
  255. package/out/recipes/bare/country.d.ts.map +1 -0
  256. package/out/recipes/bare/country.js +88 -0
  257. package/out/recipes/bare/country.js.map +1 -0
  258. package/out/recipes/bare/postcode/eval.d.ts +29 -0
  259. package/out/recipes/bare/postcode/eval.d.ts.map +1 -0
  260. package/out/recipes/bare/postcode/eval.js +85 -0
  261. package/out/recipes/bare/postcode/eval.js.map +1 -0
  262. package/out/recipes/bare/postcode/index.d.ts +62 -0
  263. package/out/recipes/bare/postcode/index.d.ts.map +1 -0
  264. package/out/recipes/bare/postcode/index.js +267 -0
  265. package/out/recipes/bare/postcode/index.js.map +1 -0
  266. package/out/recipes/country-balanced.js.map +1 -1
  267. package/out/recipes/index.d.ts.map +1 -1
  268. package/out/recipes/index.js +28 -21
  269. package/out/recipes/index.js.map +1 -1
  270. package/out/recipes/intersection.js.map +1 -1
  271. package/out/recipes/po/box/cedex/au-nz.d.ts +7 -0
  272. package/out/recipes/po/box/cedex/au-nz.d.ts.map +1 -0
  273. package/out/recipes/po/box/cedex/au-nz.js +56 -0
  274. package/out/recipes/po/box/cedex/au-nz.js.map +1 -0
  275. package/out/recipes/po/box/cedex/ca.d.ts +7 -0
  276. package/out/recipes/po/box/cedex/ca.d.ts.map +1 -0
  277. package/out/recipes/po/box/cedex/ca.js +38 -0
  278. package/out/recipes/po/box/cedex/ca.js.map +1 -0
  279. package/out/recipes/po/box/cedex/fr.d.ts +7 -0
  280. package/out/recipes/po/box/cedex/fr.d.ts.map +1 -0
  281. package/out/recipes/po/box/cedex/fr.js +57 -0
  282. package/out/recipes/po/box/cedex/fr.js.map +1 -0
  283. package/out/recipes/po/box/cedex/phrases.d.ts +8 -0
  284. package/out/recipes/po/box/cedex/phrases.d.ts.map +1 -0
  285. package/out/recipes/po/box/cedex/phrases.js +76 -0
  286. package/out/recipes/po/box/cedex/phrases.js.map +1 -0
  287. package/out/recipes/po/box/cedex/recipe.d.ts +9 -0
  288. package/out/recipes/po/box/cedex/recipe.d.ts.map +1 -0
  289. package/out/recipes/po/box/cedex/recipe.js +153 -0
  290. package/out/recipes/po/box/cedex/recipe.js.map +1 -0
  291. package/out/recipes/po/box/cedex/sources.d.ts +86 -0
  292. package/out/recipes/po/box/cedex/sources.d.ts.map +1 -0
  293. package/out/recipes/po/box/cedex/sources.js +143 -0
  294. package/out/recipes/po/box/cedex/sources.js.map +1 -0
  295. package/out/recipes/po/box/cedex/types.d.ts +31 -0
  296. package/out/recipes/po/box/cedex/types.d.ts.map +1 -0
  297. package/out/recipes/po/box/cedex/types.js +5 -0
  298. package/out/recipes/po/box/cedex/types.js.map +1 -0
  299. package/out/recipes/po/box/cedex/us.d.ts +7 -0
  300. package/out/recipes/po/box/cedex/us.d.ts.map +1 -0
  301. package/out/recipes/po/box/cedex/us.js +51 -0
  302. package/out/recipes/po/box/cedex/us.js.map +1 -0
  303. package/out/recipes/po/box/cedex/vocabulary.d.ts +68 -0
  304. package/out/recipes/po/box/cedex/vocabulary.d.ts.map +1 -0
  305. package/out/recipes/po/box/cedex/vocabulary.js +90 -0
  306. package/out/recipes/po/box/cedex/vocabulary.js.map +1 -0
  307. package/out/recipes/po/box/cedex.d.ts +9 -0
  308. package/out/recipes/po/box/cedex.d.ts.map +1 -0
  309. package/out/recipes/po/box/cedex.js +9 -0
  310. package/out/recipes/po/box/cedex.js.map +1 -0
  311. package/out/recipes/po/box/index.d.ts +17 -0
  312. package/out/recipes/po/box/index.d.ts.map +1 -0
  313. package/out/recipes/po/box/index.js +105 -0
  314. package/out/recipes/po/box/index.js.map +1 -0
  315. package/out/recipes/scaffold.d.ts +20 -0
  316. package/out/recipes/scaffold.d.ts.map +1 -1
  317. package/out/recipes/scaffold.js +18 -37
  318. package/out/recipes/scaffold.js.map +1 -1
  319. package/out/recipes/street/affix.d.ts +89 -0
  320. package/out/recipes/street/affix.d.ts.map +1 -0
  321. package/out/recipes/street/affix.js +565 -0
  322. package/out/recipes/street/affix.js.map +1 -0
  323. package/out/recipes/street/bare.d.ts +25 -0
  324. package/out/recipes/street/bare.d.ts.map +1 -0
  325. package/out/recipes/street/bare.js +87 -0
  326. package/out/recipes/street/bare.js.map +1 -0
  327. package/out/recipes/sub/venue/context.d.ts +29 -0
  328. package/out/recipes/sub/venue/context.d.ts.map +1 -0
  329. package/out/recipes/sub/venue/context.js +106 -0
  330. package/out/recipes/sub/venue/context.js.map +1 -0
  331. package/out/recipes/sub/venue/index.d.ts +270 -0
  332. package/out/recipes/sub/venue/index.d.ts.map +1 -0
  333. package/out/recipes/sub/venue/index.js +728 -0
  334. package/out/recipes/sub/venue/index.js.map +1 -0
  335. package/out/recipes/sub/venue/sources.d.ts +209 -0
  336. package/out/recipes/sub/venue/sources.d.ts.map +1 -0
  337. package/out/recipes/sub/venue/sources.js +555 -0
  338. package/out/recipes/sub/venue/sources.js.map +1 -0
  339. package/out/recipes/trailing-region.d.ts.map +1 -1
  340. package/out/recipes/trailing-region.js +6 -1
  341. package/out/recipes/trailing-region.js.map +1 -1
  342. package/out/recipes/unit.js.map +1 -1
  343. package/out/sg/recipes/register.d.ts +69 -0
  344. package/out/sg/recipes/register.d.ts.map +1 -0
  345. package/out/sg/recipes/register.js +211 -0
  346. package/out/sg/recipes/register.js.map +1 -0
  347. package/out/sg/tools/fetch/acra.d.ts +23 -0
  348. package/out/sg/tools/fetch/acra.d.ts.map +1 -0
  349. package/out/sg/tools/fetch/acra.js +126 -0
  350. package/out/sg/tools/fetch/acra.js.map +1 -0
  351. package/out/si/recipes/bare-village.d.ts +32 -0
  352. package/out/si/recipes/bare-village.d.ts.map +1 -0
  353. package/out/si/recipes/bare-village.js +89 -0
  354. package/out/si/recipes/bare-village.js.map +1 -0
  355. package/out/south-asia/recipes/register.d.ts +51 -0
  356. package/out/south-asia/recipes/register.d.ts.map +1 -0
  357. package/out/south-asia/recipes/register.js +154 -0
  358. package/out/south-asia/recipes/register.js.map +1 -0
  359. package/out/synthesizers/anchor-absorption.d.ts +1 -1
  360. package/out/synthesizers/anchor-absorption.d.ts.map +1 -1
  361. package/out/synthesizers/anchor-absorption.js.map +1 -1
  362. package/out/synthesizers/boundary-stress.js.map +1 -1
  363. package/out/synthesizers/house-venue.js.map +1 -1
  364. package/out/synthesizers/intersection.js.map +1 -1
  365. package/out/synthesizers/locale.d.ts +116 -0
  366. package/out/synthesizers/locale.d.ts.map +1 -0
  367. package/out/synthesizers/locale.js +150 -0
  368. package/out/synthesizers/locale.js.map +1 -0
  369. package/out/synthesizers/no-street.d.ts.map +1 -1
  370. package/out/synthesizers/no-street.js.map +1 -1
  371. package/out/synthesizers/po-box.js.map +1 -1
  372. package/out/synthesizers/street.d.ts.map +1 -1
  373. package/out/synthesizers/street.js +1 -1
  374. package/out/synthesizers/street.js.map +1 -1
  375. package/out/synthesizers/utils.js +1 -1
  376. package/out/synthesizers/utils.js.map +1 -1
  377. package/out/test-kit/corpus-recipe.d.ts.map +1 -1
  378. package/out/test-kit/corpus-recipe.js.map +1 -1
  379. package/out/tools/audit.d.ts.map +1 -1
  380. package/out/tools/audit.js +3 -2
  381. package/out/tools/audit.js.map +1 -1
  382. package/out/tools/corpus-stats.js +3 -3
  383. package/out/tools/corpus-stats.js.map +1 -1
  384. package/out/tools/fetch/download/index.d.ts +10 -0
  385. package/out/tools/fetch/download/index.d.ts.map +1 -0
  386. package/out/tools/fetch/download/index.js +10 -0
  387. package/out/tools/fetch/download/index.js.map +1 -0
  388. package/out/tools/fetch/download/manifest.d.ts +47 -0
  389. package/out/tools/fetch/download/manifest.d.ts.map +1 -0
  390. package/out/tools/fetch/download/manifest.js +74 -0
  391. package/out/tools/fetch/download/manifest.js.map +1 -0
  392. package/out/tools/fetch/download/network.d.ts +105 -0
  393. package/out/tools/fetch/download/network.d.ts.map +1 -0
  394. package/out/tools/fetch/download/network.js +130 -0
  395. package/out/tools/fetch/download/network.js.map +1 -0
  396. package/out/tools/fetch/download/retry.d.ts +45 -0
  397. package/out/tools/fetch/download/retry.d.ts.map +1 -0
  398. package/out/tools/fetch/download/retry.js +136 -0
  399. package/out/tools/fetch/download/retry.js.map +1 -0
  400. package/out/tools/fetch/geonames/dump.d.ts +91 -0
  401. package/out/tools/fetch/geonames/dump.d.ts.map +1 -0
  402. package/out/tools/fetch/geonames/dump.js +171 -0
  403. package/out/tools/fetch/geonames/dump.js.map +1 -0
  404. package/out/tools/fetch/geonames/postal.d.ts +76 -0
  405. package/out/tools/fetch/geonames/postal.d.ts.map +1 -0
  406. package/out/tools/fetch/geonames/postal.js +126 -0
  407. package/out/tools/fetch/geonames/postal.js.map +1 -0
  408. package/out/tools/fetch/index.d.ts +30 -30
  409. package/out/tools/fetch/index.d.ts.map +1 -1
  410. package/out/tools/fetch/index.js +30 -30
  411. package/out/tools/fetch/index.js.map +1 -1
  412. package/out/tools/fetch/openaddresses.d.ts +1 -1
  413. package/out/tools/fetch/openaddresses.d.ts.map +1 -1
  414. package/out/tools/fetch/openaddresses.js +1 -1
  415. package/out/tools/fetch/openaddresses.js.map +1 -1
  416. package/out/tools/fetch/ourairports.d.ts +1 -1
  417. package/out/tools/fetch/ourairports.d.ts.map +1 -1
  418. package/out/tools/fetch/ourairports.js +1 -1
  419. package/out/tools/fetch/ourairports.js.map +1 -1
  420. package/out/tools/fetch/ppd.js +1 -3
  421. package/out/tools/fetch/ppd.js.map +1 -1
  422. package/out/tools/fetch/wikidata-subvenue.d.ts +1 -1
  423. package/out/tools/fetch/wikidata-subvenue.d.ts.map +1 -1
  424. package/out/tools/fetch/wikidata-subvenue.js +1 -1
  425. package/out/tools/fetch/wikidata-subvenue.js.map +1 -1
  426. package/out/tools/golden/expand.d.ts +90 -0
  427. package/out/tools/golden/expand.d.ts.map +1 -0
  428. package/out/tools/golden/expand.js +406 -0
  429. package/out/tools/golden/expand.js.map +1 -0
  430. package/out/tools/golden/promote.d.ts +72 -0
  431. package/out/tools/golden/promote.d.ts.map +1 -0
  432. package/out/tools/golden/promote.js +243 -0
  433. package/out/tools/golden/promote.js.map +1 -0
  434. package/out/tools/golden/relabel-street/directory.d.ts +83 -0
  435. package/out/tools/golden/relabel-street/directory.d.ts.map +1 -0
  436. package/out/tools/golden/relabel-street/directory.js +216 -0
  437. package/out/tools/golden/relabel-street/directory.js.map +1 -0
  438. package/out/tools/golden/relabel-street/index.d.ts +9 -0
  439. package/out/tools/golden/relabel-street/index.d.ts.map +1 -0
  440. package/out/tools/golden/relabel-street/index.js +9 -0
  441. package/out/tools/golden/relabel-street/index.js.map +1 -0
  442. package/out/tools/golden/relabel-street/row.d.ts +121 -0
  443. package/out/tools/golden/relabel-street/row.d.ts.map +1 -0
  444. package/out/tools/golden/relabel-street/row.js +232 -0
  445. package/out/tools/golden/relabel-street/row.js.map +1 -0
  446. package/out/tools/index.d.ts +10 -10
  447. package/out/tools/index.d.ts.map +1 -1
  448. package/out/tools/index.js +10 -10
  449. package/out/tools/index.js.map +1 -1
  450. package/out/tools/ingest-csv.d.ts.map +1 -1
  451. package/out/tools/ingest-csv.js +5 -7
  452. package/out/tools/ingest-csv.js.map +1 -1
  453. package/out/tools/lint/slice/index.d.ts +93 -0
  454. package/out/tools/lint/slice/index.d.ts.map +1 -0
  455. package/out/tools/lint/slice/index.js +322 -0
  456. package/out/tools/lint/slice/index.js.map +1 -0
  457. package/out/tools/lint/slice/vocab.d.ts +90 -0
  458. package/out/tools/lint/slice/vocab.d.ts.map +1 -0
  459. package/out/tools/lint/slice/vocab.js +254 -0
  460. package/out/tools/lint/slice/vocab.js.map +1 -0
  461. package/out/tools/overlay-manifest.d.ts +56 -6
  462. package/out/tools/overlay-manifest.d.ts.map +1 -1
  463. package/out/tools/overlay-manifest.js +56 -15
  464. package/out/tools/overlay-manifest.js.map +1 -1
  465. package/out/tools/overture-subvenue.d.ts +1 -1
  466. package/out/tools/postcode-triples.d.ts +36 -0
  467. package/out/tools/postcode-triples.d.ts.map +1 -1
  468. package/out/tools/postcode-triples.js +91 -12
  469. package/out/tools/postcode-triples.js.map +1 -1
  470. package/out/tools/slice/kryptonite.d.ts +32 -0
  471. package/out/tools/slice/kryptonite.d.ts.map +1 -0
  472. package/out/tools/slice/kryptonite.js +99 -0
  473. package/out/tools/slice/kryptonite.js.map +1 -0
  474. package/out/tools/slice/translit.d.ts +51 -0
  475. package/out/tools/slice/translit.d.ts.map +1 -0
  476. package/out/tools/slice/translit.js +166 -0
  477. package/out/tools/slice/translit.js.map +1 -0
  478. package/out/tools/sub/venue/harvest.d.ts +100 -0
  479. package/out/tools/sub/venue/harvest.d.ts.map +1 -0
  480. package/out/tools/sub/venue/harvest.js +168 -0
  481. package/out/tools/sub/venue/harvest.js.map +1 -0
  482. package/out/tools/sub/venue/head-nouns.d.ts +50 -0
  483. package/out/tools/sub/venue/head-nouns.d.ts.map +1 -0
  484. package/out/tools/sub/venue/head-nouns.js.map +1 -0
  485. package/out/tools/sub/venue/lexicon.d.ts +156 -0
  486. package/out/tools/sub/venue/lexicon.d.ts.map +1 -0
  487. package/out/tools/sub/venue/lexicon.js +283 -0
  488. package/out/tools/sub/venue/lexicon.js.map +1 -0
  489. package/out/tools/sub/venue/promotions.d.ts +94 -0
  490. package/out/tools/sub/venue/promotions.d.ts.map +1 -0
  491. package/out/tools/sub/venue/promotions.js +266 -0
  492. package/out/tools/sub/venue/promotions.js.map +1 -0
  493. package/out/tools/sub/venue/surfaces.d.ts +45 -0
  494. package/out/tools/sub/venue/surfaces.d.ts.map +1 -0
  495. package/out/tools/sub/venue/surfaces.js.map +1 -0
  496. package/out/tools/sub/venue/table.d.ts +229 -0
  497. package/out/tools/sub/venue/table.d.ts.map +1 -0
  498. package/out/tools/sub/venue/table.js.map +1 -0
  499. package/out/tools/sub/venue/wikidata.d.ts +26 -0
  500. package/out/tools/sub/venue/wikidata.d.ts.map +1 -0
  501. package/out/tools/sub/venue/wikidata.js +62 -0
  502. package/out/tools/sub/venue/wikidata.js.map +1 -0
  503. package/out/tw/tools/fetch/gcis.d.ts +23 -0
  504. package/out/tw/tools/fetch/gcis.d.ts.map +1 -0
  505. package/out/tw/tools/fetch/gcis.js +135 -0
  506. package/out/tw/tools/fetch/gcis.js.map +1 -0
  507. package/out/types.d.ts +1 -1
  508. package/out/types.d.ts.map +1 -1
  509. package/out/us/adapters/fcc-bdc/adapter.d.ts.map +1 -0
  510. package/out/us/adapters/fcc-bdc/adapter.js +142 -0
  511. package/out/us/adapters/fcc-bdc/adapter.js.map +1 -0
  512. package/out/us/adapters/state/hi-schools/adapter.d.ts.map +1 -0
  513. package/out/us/adapters/state/hi-schools/adapter.js +136 -0
  514. package/out/us/adapters/state/hi-schools/adapter.js.map +1 -0
  515. package/out/us/adapters/state/hi-schools/workbook.d.ts.map +1 -0
  516. package/out/us/adapters/state/hi-schools/workbook.js.map +1 -0
  517. package/out/us/adapters/state/ia-contractors/adapter.d.ts.map +1 -0
  518. package/out/us/adapters/state/ia-contractors/adapter.js +104 -0
  519. package/out/us/adapters/state/ia-contractors/adapter.js.map +1 -0
  520. package/out/us/adapters/state/ny-notaries/adapter.d.ts.map +1 -0
  521. package/out/us/adapters/state/ny-notaries/adapter.js +112 -0
  522. package/out/us/adapters/state/ny-notaries/adapter.js.map +1 -0
  523. package/out/us/adapters/state/tx-notaries/adapter.d.ts.map +1 -0
  524. package/out/us/adapters/state/tx-notaries/adapter.js +118 -0
  525. package/out/us/adapters/state/tx-notaries/adapter.js.map +1 -0
  526. package/out/us/adapters/tiger/adapter.d.ts +55 -0
  527. package/out/us/adapters/tiger/adapter.d.ts.map +1 -0
  528. package/out/us/adapters/tiger/adapter.js +197 -0
  529. package/out/us/adapters/tiger/adapter.js.map +1 -0
  530. package/out/us/adapters/tiger/street-decompose.d.ts.map +1 -0
  531. package/out/us/adapters/tiger/street-decompose.js.map +1 -0
  532. package/out/us/adapters/usgov/hrsa-fqhc/adapter.d.ts.map +1 -0
  533. package/out/us/adapters/usgov/hrsa-fqhc/adapter.js +121 -0
  534. package/out/us/adapters/usgov/hrsa-fqhc/adapter.js.map +1 -0
  535. package/out/us/adapters/usgov/imls-pls/adapter.d.ts.map +1 -0
  536. package/out/us/adapters/usgov/imls-pls/adapter.js +106 -0
  537. package/out/us/adapters/usgov/imls-pls/adapter.js.map +1 -0
  538. package/out/us/adapters/usgov/irs-bmf/adapter.d.ts.map +1 -0
  539. package/out/us/adapters/usgov/irs-bmf/adapter.js +116 -0
  540. package/out/us/adapters/usgov/irs-bmf/adapter.js.map +1 -0
  541. package/out/us/adapters/usgov/nad/adapter.d.ts.map +1 -0
  542. package/out/us/adapters/usgov/nad/adapter.js +239 -0
  543. package/out/us/adapters/usgov/nad/adapter.js.map +1 -0
  544. package/out/us/adapters/usgov/nppes/adapter.d.ts.map +1 -0
  545. package/out/us/adapters/usgov/nppes/adapter.js +110 -0
  546. package/out/us/adapters/usgov/nppes/adapter.js.map +1 -0
  547. package/out/us/adapters/usgov/samhsa-treatment-locator/adapter.d.ts.map +1 -0
  548. package/out/us/adapters/usgov/samhsa-treatment-locator/adapter.js +143 -0
  549. package/out/us/adapters/usgov/samhsa-treatment-locator/adapter.js.map +1 -0
  550. package/out/us/fips-state.d.ts +41 -0
  551. package/out/us/fips-state.d.ts.map +1 -0
  552. package/out/us/fips-state.js +100 -0
  553. package/out/us/fips-state.js.map +1 -0
  554. package/out/us/tools/fetch/hrsa.d.ts +18 -0
  555. package/out/us/tools/fetch/hrsa.d.ts.map +1 -0
  556. package/out/us/tools/fetch/hrsa.js +46 -0
  557. package/out/us/tools/fetch/hrsa.js.map +1 -0
  558. package/out/us/tools/fetch/imls-pls.d.ts +25 -0
  559. package/out/us/tools/fetch/imls-pls.d.ts.map +1 -0
  560. package/out/us/tools/fetch/imls-pls.js +108 -0
  561. package/out/us/tools/fetch/imls-pls.js.map +1 -0
  562. package/out/us/tools/fetch/nad.d.ts +70 -0
  563. package/out/us/tools/fetch/nad.d.ts.map +1 -0
  564. package/out/us/tools/fetch/nad.js +234 -0
  565. package/out/us/tools/fetch/nad.js.map +1 -0
  566. package/out/us/tools/fetch/nppes.d.ts +26 -0
  567. package/out/us/tools/fetch/nppes.d.ts.map +1 -0
  568. package/out/us/tools/fetch/nppes.js +126 -0
  569. package/out/us/tools/fetch/nppes.js.map +1 -0
  570. package/out/us/tools/fetch/state/hi-schools.d.ts +26 -0
  571. package/out/us/tools/fetch/state/hi-schools.d.ts.map +1 -0
  572. package/out/us/tools/fetch/state/hi-schools.js +112 -0
  573. package/out/us/tools/fetch/state/hi-schools.js.map +1 -0
  574. package/out/us/tools/fetch/state/sources.d.ts +26 -0
  575. package/out/us/tools/fetch/state/sources.d.ts.map +1 -0
  576. package/out/us/tools/fetch/state/sources.js +111 -0
  577. package/out/us/tools/fetch/state/sources.js.map +1 -0
  578. package/out/us/tools/fetch/tiger-full.d.ts +22 -0
  579. package/out/us/tools/fetch/tiger-full.d.ts.map +1 -0
  580. package/out/us/tools/fetch/tiger-full.js +217 -0
  581. package/out/us/tools/fetch/tiger-full.js.map +1 -0
  582. package/out/utils/align.d.ts +1 -1
  583. package/out/utils/align.d.ts.map +1 -1
  584. package/out/utils/align.js.map +1 -1
  585. package/out/utils/golden.d.ts +7 -3
  586. package/out/utils/golden.d.ts.map +1 -1
  587. package/out/utils/golden.js +12 -8
  588. package/out/utils/golden.js.map +1 -1
  589. package/out/utils/parquet.d.ts.map +1 -1
  590. package/out/utils/split.js.map +1 -1
  591. package/out/utils/wof-json.d.ts.map +1 -1
  592. package/out/utils/wof-json.js +7 -12
  593. package/out/utils/wof-json.js.map +1 -1
  594. package/out/ve/recipes/reviewed-postcode-tail.d.ts.map +1 -0
  595. package/out/ve/recipes/reviewed-postcode-tail.js.map +1 -0
  596. package/package.json +196 -46
  597. package/lib/adapters/ban/adapter.ts +0 -190
  598. package/lib/adapters/fcc-bdc/adapter.ts +0 -174
  599. package/lib/adapters/geonames-postal/adapter.ts +0 -122
  600. package/lib/adapters/gnaf/adapter.ts +0 -149
  601. package/lib/adapters/gnaf/assemble.ts +0 -225
  602. package/lib/adapters/state-hi-schools/adapter.ts +0 -170
  603. package/lib/adapters/state-ia-contractors/adapter.ts +0 -144
  604. package/lib/adapters/state-ny-notaries/adapter.ts +0 -141
  605. package/lib/adapters/state-tx-notaries/adapter.ts +0 -157
  606. package/lib/adapters/tiger/adapter.ts +0 -252
  607. package/lib/adapters/usgov-hrsa-fqhc/adapter.ts +0 -167
  608. package/lib/adapters/usgov-imls-pls/adapter.ts +0 -143
  609. package/lib/adapters/usgov-irs-bmf/adapter.ts +0 -151
  610. package/lib/adapters/usgov-nad/adapter.ts +0 -334
  611. package/lib/adapters/usgov-nppes/adapter.ts +0 -151
  612. package/lib/adapters/usgov-samhsa-treatment-locator/adapter.ts +0 -193
  613. package/lib/adapters/wof-admin-json/adapter.ts +0 -231
  614. package/lib/adapters/wof-json-rows.ts +0 -129
  615. package/lib/adapters/wof-postalcode-json/adapter.ts +0 -176
  616. package/lib/recipes/fr-admin-split.ts +0 -243
  617. package/lib/recipes/fr-bare-street.ts +0 -171
  618. package/lib/recipes/fr-fragment.ts +0 -334
  619. package/lib/recipes/fr-lieudit.ts +0 -301
  620. package/lib/recipes/fr-order.ts +0 -246
  621. package/lib/recipes/german.ts +0 -360
  622. package/lib/recipes/locale.ts +0 -600
  623. package/lib/recipes/po-box-cedex.ts +0 -976
  624. package/lib/recipes/po-box.ts +0 -124
  625. package/lib/recipes/street-affix.ts +0 -805
  626. package/lib/recipes/sub-venue-sources.ts +0 -878
  627. package/lib/recipes/sub-venue.ts +0 -998
  628. package/lib/synthesizers/german.ts +0 -260
  629. package/lib/tools/fetch/acra-sg.ts +0 -174
  630. package/lib/tools/fetch/ban.ts +0 -289
  631. package/lib/tools/fetch/download.ts +0 -477
  632. package/lib/tools/fetch/gcis-tw.ts +0 -175
  633. package/lib/tools/fetch/geonames-dump.ts +0 -257
  634. package/lib/tools/fetch/geonames-postal.ts +0 -180
  635. package/lib/tools/fetch/houjin-jp.ts +0 -135
  636. package/lib/tools/fetch/hrsa.ts +0 -59
  637. package/lib/tools/fetch/imls-pls.ts +0 -149
  638. package/lib/tools/fetch/juso-kr.ts +0 -165
  639. package/lib/tools/fetch/localdata-kr.ts +0 -194
  640. package/lib/tools/fetch/nad.ts +0 -341
  641. package/lib/tools/fetch/nppes.ts +0 -165
  642. package/lib/tools/fetch/state-hi-schools.ts +0 -161
  643. package/lib/tools/fetch/state-sources.ts +0 -146
  644. package/lib/tools/fetch/tiger-full.ts +0 -308
  645. package/lib/tools/golden-promote.ts +0 -337
  646. package/lib/tools/golden-relabel-street.ts +0 -686
  647. package/lib/tools/lint-slice-vocab.ts +0 -388
  648. package/lib/tools/sub-venue/harvest.ts +0 -234
  649. package/lib/tools/sub-venue/head-nouns.ts +0 -245
  650. package/lib/tools/sub-venue/surfaces.ts +0 -95
  651. package/lib/tools/sub-venue/table.ts +0 -281
  652. package/lib/tools/sub-venue/wikidata.ts +0 -85
  653. package/lib/tools/sub-venue-lexicon.ts +0 -429
  654. package/out/adapters/ban/adapter.d.ts.map +0 -1
  655. package/out/adapters/ban/adapter.js +0 -149
  656. package/out/adapters/ban/adapter.js.map +0 -1
  657. package/out/adapters/ban/street-decompose.d.ts.map +0 -1
  658. package/out/adapters/ban/street-decompose.js.map +0 -1
  659. package/out/adapters/fcc-bdc/adapter.d.ts.map +0 -1
  660. package/out/adapters/fcc-bdc/adapter.js +0 -144
  661. package/out/adapters/fcc-bdc/adapter.js.map +0 -1
  662. package/out/adapters/geonames-postal/adapter.d.ts.map +0 -1
  663. package/out/adapters/geonames-postal/adapter.js +0 -107
  664. package/out/adapters/geonames-postal/adapter.js.map +0 -1
  665. package/out/adapters/gnaf/adapter.d.ts.map +0 -1
  666. package/out/adapters/gnaf/adapter.js +0 -124
  667. package/out/adapters/gnaf/adapter.js.map +0 -1
  668. package/out/adapters/gnaf/assemble.d.ts +0 -65
  669. package/out/adapters/gnaf/assemble.d.ts.map +0 -1
  670. package/out/adapters/gnaf/assemble.js +0 -154
  671. package/out/adapters/gnaf/assemble.js.map +0 -1
  672. package/out/adapters/state-hi-schools/adapter.d.ts.map +0 -1
  673. package/out/adapters/state-hi-schools/adapter.js +0 -145
  674. package/out/adapters/state-hi-schools/adapter.js.map +0 -1
  675. package/out/adapters/state-hi-schools/workbook.d.ts.map +0 -1
  676. package/out/adapters/state-hi-schools/workbook.js.map +0 -1
  677. package/out/adapters/state-ia-contractors/adapter.d.ts.map +0 -1
  678. package/out/adapters/state-ia-contractors/adapter.js +0 -111
  679. package/out/adapters/state-ia-contractors/adapter.js.map +0 -1
  680. package/out/adapters/state-ny-notaries/adapter.d.ts.map +0 -1
  681. package/out/adapters/state-ny-notaries/adapter.js +0 -119
  682. package/out/adapters/state-ny-notaries/adapter.js.map +0 -1
  683. package/out/adapters/state-tx-notaries/adapter.d.ts.map +0 -1
  684. package/out/adapters/state-tx-notaries/adapter.js +0 -125
  685. package/out/adapters/state-tx-notaries/adapter.js.map +0 -1
  686. package/out/adapters/tiger/adapter.d.ts +0 -55
  687. package/out/adapters/tiger/adapter.d.ts.map +0 -1
  688. package/out/adapters/tiger/adapter.js +0 -201
  689. package/out/adapters/tiger/adapter.js.map +0 -1
  690. package/out/adapters/tiger/street-decompose.d.ts.map +0 -1
  691. package/out/adapters/tiger/street-decompose.js.map +0 -1
  692. package/out/adapters/usgov-hrsa-fqhc/adapter.d.ts.map +0 -1
  693. package/out/adapters/usgov-hrsa-fqhc/adapter.js +0 -132
  694. package/out/adapters/usgov-hrsa-fqhc/adapter.js.map +0 -1
  695. package/out/adapters/usgov-imls-pls/adapter.d.ts.map +0 -1
  696. package/out/adapters/usgov-imls-pls/adapter.js +0 -114
  697. package/out/adapters/usgov-imls-pls/adapter.js.map +0 -1
  698. package/out/adapters/usgov-irs-bmf/adapter.d.ts.map +0 -1
  699. package/out/adapters/usgov-irs-bmf/adapter.js +0 -120
  700. package/out/adapters/usgov-irs-bmf/adapter.js.map +0 -1
  701. package/out/adapters/usgov-nad/adapter.d.ts.map +0 -1
  702. package/out/adapters/usgov-nad/adapter.js +0 -249
  703. package/out/adapters/usgov-nad/adapter.js.map +0 -1
  704. package/out/adapters/usgov-nppes/adapter.d.ts.map +0 -1
  705. package/out/adapters/usgov-nppes/adapter.js +0 -118
  706. package/out/adapters/usgov-nppes/adapter.js.map +0 -1
  707. package/out/adapters/usgov-samhsa-treatment-locator/adapter.d.ts.map +0 -1
  708. package/out/adapters/usgov-samhsa-treatment-locator/adapter.js +0 -154
  709. package/out/adapters/usgov-samhsa-treatment-locator/adapter.js.map +0 -1
  710. package/out/adapters/wof-admin-jp/adapter.d.ts.map +0 -1
  711. package/out/adapters/wof-admin-jp/adapter.js.map +0 -1
  712. package/out/adapters/wof-admin-json/adapter.d.ts +0 -79
  713. package/out/adapters/wof-admin-json/adapter.d.ts.map +0 -1
  714. package/out/adapters/wof-admin-json/adapter.js +0 -197
  715. package/out/adapters/wof-admin-json/adapter.js.map +0 -1
  716. package/out/adapters/wof-json-rows.d.ts +0 -62
  717. package/out/adapters/wof-json-rows.d.ts.map +0 -1
  718. package/out/adapters/wof-json-rows.js +0 -83
  719. package/out/adapters/wof-json-rows.js.map +0 -1
  720. package/out/adapters/wof-postalcode-json/adapter.d.ts +0 -65
  721. package/out/adapters/wof-postalcode-json/adapter.d.ts.map +0 -1
  722. package/out/adapters/wof-postalcode-json/adapter.js +0 -151
  723. package/out/adapters/wof-postalcode-json/adapter.js.map +0 -1
  724. package/out/codex/us-fips-state.d.ts +0 -41
  725. package/out/codex/us-fips-state.d.ts.map +0 -1
  726. package/out/codex/us-fips-state.js +0 -100
  727. package/out/codex/us-fips-state.js.map +0 -1
  728. package/out/recipes/bare-country.d.ts +0 -25
  729. package/out/recipes/bare-country.d.ts.map +0 -1
  730. package/out/recipes/bare-country.js +0 -88
  731. package/out/recipes/bare-country.js.map +0 -1
  732. package/out/recipes/cn-organizational-units.d.ts +0 -36
  733. package/out/recipes/cn-organizational-units.d.ts.map +0 -1
  734. package/out/recipes/cn-organizational-units.js +0 -159
  735. package/out/recipes/cn-organizational-units.js.map +0 -1
  736. package/out/recipes/cz-pcfirst-preposition.d.ts +0 -22
  737. package/out/recipes/cz-pcfirst-preposition.d.ts.map +0 -1
  738. package/out/recipes/cz-pcfirst-preposition.js +0 -101
  739. package/out/recipes/cz-pcfirst-preposition.js.map +0 -1
  740. package/out/recipes/fr-admin-split.d.ts +0 -38
  741. package/out/recipes/fr-admin-split.d.ts.map +0 -1
  742. package/out/recipes/fr-admin-split.js +0 -192
  743. package/out/recipes/fr-admin-split.js.map +0 -1
  744. package/out/recipes/fr-bare-street.d.ts +0 -28
  745. package/out/recipes/fr-bare-street.d.ts.map +0 -1
  746. package/out/recipes/fr-bare-street.js +0 -144
  747. package/out/recipes/fr-bare-street.js.map +0 -1
  748. package/out/recipes/fr-fragment.d.ts +0 -77
  749. package/out/recipes/fr-fragment.d.ts.map +0 -1
  750. package/out/recipes/fr-fragment.js +0 -277
  751. package/out/recipes/fr-fragment.js.map +0 -1
  752. package/out/recipes/fr-lieudit.d.ts +0 -32
  753. package/out/recipes/fr-lieudit.d.ts.map +0 -1
  754. package/out/recipes/fr-lieudit.js +0 -227
  755. package/out/recipes/fr-lieudit.js.map +0 -1
  756. package/out/recipes/fr-order.d.ts +0 -38
  757. package/out/recipes/fr-order.d.ts.map +0 -1
  758. package/out/recipes/fr-order.js +0 -198
  759. package/out/recipes/fr-order.js.map +0 -1
  760. package/out/recipes/german.d.ts +0 -44
  761. package/out/recipes/german.d.ts.map +0 -1
  762. package/out/recipes/german.js +0 -289
  763. package/out/recipes/german.js.map +0 -1
  764. package/out/recipes/locale.d.ts +0 -136
  765. package/out/recipes/locale.d.ts.map +0 -1
  766. package/out/recipes/locale.js +0 -460
  767. package/out/recipes/locale.js.map +0 -1
  768. package/out/recipes/nl-postcode.d.ts +0 -26
  769. package/out/recipes/nl-postcode.d.ts.map +0 -1
  770. package/out/recipes/nl-postcode.js +0 -103
  771. package/out/recipes/nl-postcode.js.map +0 -1
  772. package/out/recipes/no-fragment.d.ts +0 -43
  773. package/out/recipes/no-fragment.d.ts.map +0 -1
  774. package/out/recipes/no-fragment.js +0 -183
  775. package/out/recipes/no-fragment.js.map +0 -1
  776. package/out/recipes/no-street-led.d.ts +0 -24
  777. package/out/recipes/no-street-led.d.ts.map +0 -1
  778. package/out/recipes/no-street-led.js +0 -114
  779. package/out/recipes/no-street-led.js.map +0 -1
  780. package/out/recipes/no-street.d.ts +0 -18
  781. package/out/recipes/no-street.d.ts.map +0 -1
  782. package/out/recipes/no-street.js +0 -72
  783. package/out/recipes/no-street.js.map +0 -1
  784. package/out/recipes/po-box-cedex.d.ts +0 -38
  785. package/out/recipes/po-box-cedex.d.ts.map +0 -1
  786. package/out/recipes/po-box-cedex.js +0 -768
  787. package/out/recipes/po-box-cedex.js.map +0 -1
  788. package/out/recipes/po-box.d.ts +0 -17
  789. package/out/recipes/po-box.d.ts.map +0 -1
  790. package/out/recipes/po-box.js +0 -101
  791. package/out/recipes/po-box.js.map +0 -1
  792. package/out/recipes/reviewed-postcode-tail.d.ts.map +0 -1
  793. package/out/recipes/reviewed-postcode-tail.js.map +0 -1
  794. package/out/recipes/si-bare-village.d.ts +0 -32
  795. package/out/recipes/si-bare-village.d.ts.map +0 -1
  796. package/out/recipes/si-bare-village.js +0 -89
  797. package/out/recipes/si-bare-village.js.map +0 -1
  798. package/out/recipes/street-affix.d.ts +0 -89
  799. package/out/recipes/street-affix.d.ts.map +0 -1
  800. package/out/recipes/street-affix.js +0 -563
  801. package/out/recipes/street-affix.js.map +0 -1
  802. package/out/recipes/street-bare.d.ts +0 -25
  803. package/out/recipes/street-bare.d.ts.map +0 -1
  804. package/out/recipes/street-bare.js +0 -87
  805. package/out/recipes/street-bare.js.map +0 -1
  806. package/out/recipes/sub-venue-sources.d.ts +0 -229
  807. package/out/recipes/sub-venue-sources.d.ts.map +0 -1
  808. package/out/recipes/sub-venue-sources.js +0 -654
  809. package/out/recipes/sub-venue-sources.js.map +0 -1
  810. package/out/recipes/sub-venue.d.ts +0 -269
  811. package/out/recipes/sub-venue.d.ts.map +0 -1
  812. package/out/recipes/sub-venue.js +0 -726
  813. package/out/recipes/sub-venue.js.map +0 -1
  814. package/out/synthesizers/german.d.ts +0 -115
  815. package/out/synthesizers/german.d.ts.map +0 -1
  816. package/out/synthesizers/german.js +0 -149
  817. package/out/synthesizers/german.js.map +0 -1
  818. package/out/tools/fetch/acra-sg.d.ts +0 -23
  819. package/out/tools/fetch/acra-sg.d.ts.map +0 -1
  820. package/out/tools/fetch/acra-sg.js +0 -126
  821. package/out/tools/fetch/acra-sg.js.map +0 -1
  822. package/out/tools/fetch/ban.d.ts +0 -31
  823. package/out/tools/fetch/ban.d.ts.map +0 -1
  824. package/out/tools/fetch/ban.js +0 -239
  825. package/out/tools/fetch/ban.js.map +0 -1
  826. package/out/tools/fetch/download.d.ts +0 -182
  827. package/out/tools/fetch/download.d.ts.map +0 -1
  828. package/out/tools/fetch/download.js +0 -318
  829. package/out/tools/fetch/download.js.map +0 -1
  830. package/out/tools/fetch/gcis-tw.d.ts +0 -23
  831. package/out/tools/fetch/gcis-tw.d.ts.map +0 -1
  832. package/out/tools/fetch/gcis-tw.js +0 -135
  833. package/out/tools/fetch/gcis-tw.js.map +0 -1
  834. package/out/tools/fetch/geonames-dump.d.ts +0 -91
  835. package/out/tools/fetch/geonames-dump.d.ts.map +0 -1
  836. package/out/tools/fetch/geonames-dump.js +0 -171
  837. package/out/tools/fetch/geonames-dump.js.map +0 -1
  838. package/out/tools/fetch/geonames-postal.d.ts +0 -76
  839. package/out/tools/fetch/geonames-postal.d.ts.map +0 -1
  840. package/out/tools/fetch/geonames-postal.js +0 -126
  841. package/out/tools/fetch/geonames-postal.js.map +0 -1
  842. package/out/tools/fetch/houjin-jp.d.ts +0 -24
  843. package/out/tools/fetch/houjin-jp.d.ts.map +0 -1
  844. package/out/tools/fetch/houjin-jp.js +0 -102
  845. package/out/tools/fetch/houjin-jp.js.map +0 -1
  846. package/out/tools/fetch/hrsa.d.ts +0 -18
  847. package/out/tools/fetch/hrsa.d.ts.map +0 -1
  848. package/out/tools/fetch/hrsa.js +0 -46
  849. package/out/tools/fetch/hrsa.js.map +0 -1
  850. package/out/tools/fetch/imls-pls.d.ts +0 -25
  851. package/out/tools/fetch/imls-pls.d.ts.map +0 -1
  852. package/out/tools/fetch/imls-pls.js +0 -108
  853. package/out/tools/fetch/imls-pls.js.map +0 -1
  854. package/out/tools/fetch/juso-kr.d.ts +0 -30
  855. package/out/tools/fetch/juso-kr.d.ts.map +0 -1
  856. package/out/tools/fetch/juso-kr.js +0 -120
  857. package/out/tools/fetch/juso-kr.js.map +0 -1
  858. package/out/tools/fetch/localdata-kr.d.ts +0 -30
  859. package/out/tools/fetch/localdata-kr.d.ts.map +0 -1
  860. package/out/tools/fetch/localdata-kr.js +0 -139
  861. package/out/tools/fetch/localdata-kr.js.map +0 -1
  862. package/out/tools/fetch/nad.d.ts +0 -70
  863. package/out/tools/fetch/nad.d.ts.map +0 -1
  864. package/out/tools/fetch/nad.js +0 -234
  865. package/out/tools/fetch/nad.js.map +0 -1
  866. package/out/tools/fetch/nppes.d.ts +0 -26
  867. package/out/tools/fetch/nppes.d.ts.map +0 -1
  868. package/out/tools/fetch/nppes.js +0 -126
  869. package/out/tools/fetch/nppes.js.map +0 -1
  870. package/out/tools/fetch/state-hi-schools.d.ts +0 -26
  871. package/out/tools/fetch/state-hi-schools.d.ts.map +0 -1
  872. package/out/tools/fetch/state-hi-schools.js +0 -112
  873. package/out/tools/fetch/state-hi-schools.js.map +0 -1
  874. package/out/tools/fetch/state-sources.d.ts +0 -26
  875. package/out/tools/fetch/state-sources.d.ts.map +0 -1
  876. package/out/tools/fetch/state-sources.js +0 -111
  877. package/out/tools/fetch/state-sources.js.map +0 -1
  878. package/out/tools/fetch/tiger-full.d.ts +0 -22
  879. package/out/tools/fetch/tiger-full.d.ts.map +0 -1
  880. package/out/tools/fetch/tiger-full.js +0 -217
  881. package/out/tools/fetch/tiger-full.js.map +0 -1
  882. package/out/tools/golden-expand.d.ts +0 -90
  883. package/out/tools/golden-expand.d.ts.map +0 -1
  884. package/out/tools/golden-expand.js +0 -406
  885. package/out/tools/golden-expand.js.map +0 -1
  886. package/out/tools/golden-promote.d.ts +0 -72
  887. package/out/tools/golden-promote.d.ts.map +0 -1
  888. package/out/tools/golden-promote.js +0 -240
  889. package/out/tools/golden-promote.js.map +0 -1
  890. package/out/tools/golden-relabel-street.d.ts +0 -196
  891. package/out/tools/golden-relabel-street.d.ts.map +0 -1
  892. package/out/tools/golden-relabel-street.js +0 -439
  893. package/out/tools/golden-relabel-street.js.map +0 -1
  894. package/out/tools/lint-slice-vocab.d.ts +0 -90
  895. package/out/tools/lint-slice-vocab.d.ts.map +0 -1
  896. package/out/tools/lint-slice-vocab.js +0 -267
  897. package/out/tools/lint-slice-vocab.js.map +0 -1
  898. package/out/tools/lint-slice.d.ts +0 -93
  899. package/out/tools/lint-slice.d.ts.map +0 -1
  900. package/out/tools/lint-slice.js +0 -322
  901. package/out/tools/lint-slice.js.map +0 -1
  902. package/out/tools/slice-kryptonite.d.ts +0 -32
  903. package/out/tools/slice-kryptonite.d.ts.map +0 -1
  904. package/out/tools/slice-kryptonite.js +0 -99
  905. package/out/tools/slice-kryptonite.js.map +0 -1
  906. package/out/tools/slice-translit.d.ts +0 -51
  907. package/out/tools/slice-translit.d.ts.map +0 -1
  908. package/out/tools/slice-translit.js +0 -166
  909. package/out/tools/slice-translit.js.map +0 -1
  910. package/out/tools/sub-venue/harvest.d.ts +0 -100
  911. package/out/tools/sub-venue/harvest.d.ts.map +0 -1
  912. package/out/tools/sub-venue/harvest.js +0 -168
  913. package/out/tools/sub-venue/harvest.js.map +0 -1
  914. package/out/tools/sub-venue/head-nouns.d.ts +0 -50
  915. package/out/tools/sub-venue/head-nouns.d.ts.map +0 -1
  916. package/out/tools/sub-venue/head-nouns.js.map +0 -1
  917. package/out/tools/sub-venue/surfaces.d.ts +0 -45
  918. package/out/tools/sub-venue/surfaces.d.ts.map +0 -1
  919. package/out/tools/sub-venue/surfaces.js.map +0 -1
  920. package/out/tools/sub-venue/table.d.ts +0 -229
  921. package/out/tools/sub-venue/table.d.ts.map +0 -1
  922. package/out/tools/sub-venue/table.js.map +0 -1
  923. package/out/tools/sub-venue/wikidata.d.ts +0 -26
  924. package/out/tools/sub-venue/wikidata.d.ts.map +0 -1
  925. package/out/tools/sub-venue/wikidata.js +0 -62
  926. package/out/tools/sub-venue/wikidata.js.map +0 -1
  927. package/out/tools/sub-venue-lexicon.d.ts +0 -156
  928. package/out/tools/sub-venue-lexicon.d.ts.map +0 -1
  929. package/out/tools/sub-venue-lexicon.js +0 -283
  930. package/out/tools/sub-venue-lexicon.js.map +0 -1
  931. package/out/tools/sub-venue-promotions.d.ts +0 -94
  932. package/out/tools/sub-venue-promotions.d.ts.map +0 -1
  933. package/out/tools/sub-venue-promotions.js +0 -266
  934. package/out/tools/sub-venue-promotions.js.map +0 -1
  935. /package/lib/{recipes/cn-organizational-units.ts → cn/recipes/organizational-units.ts} +0 -0
  936. /package/lib/{recipes/cz-pcfirst-preposition.ts → cz/recipes/pcfirst-preposition.ts} +0 -0
  937. /package/lib/{adapters → fr/adapters}/ban/street-decompose.ts +0 -0
  938. /package/lib/{adapters/wof-admin-jp → jp/adapters/wof-admin}/adapter.ts +0 -0
  939. /package/lib/{recipes/nl-postcode.ts → nl/recipes/postcode.ts} +0 -0
  940. /package/lib/{recipes/no-fragment.ts → no/recipes/fragment.ts} +0 -0
  941. /package/lib/{recipes/no-street.ts → no/recipes/street/index.ts} +0 -0
  942. /package/lib/{recipes/no-street-led.ts → no/recipes/street/led.ts} +0 -0
  943. /package/lib/recipes/{bare-country.ts → bare/country.ts} +0 -0
  944. /package/lib/recipes/{street-bare.ts → street/bare.ts} +0 -0
  945. /package/lib/{recipes/si-bare-village.ts → si/recipes/bare-village.ts} +0 -0
  946. /package/lib/tools/{golden-expand.ts → golden/expand.ts} +0 -0
  947. /package/lib/tools/{lint-slice.ts → lint/slice/index.ts} +0 -0
  948. /package/lib/tools/{slice-kryptonite.ts → slice/kryptonite.ts} +0 -0
  949. /package/lib/tools/{slice-translit.ts → slice/translit.ts} +0 -0
  950. /package/lib/tools/{sub-venue-promotions.ts → sub/venue/promotions.ts} +0 -0
  951. /package/lib/{adapters/state-hi-schools → us/adapters/state/hi-schools}/workbook.ts +0 -0
  952. /package/lib/{adapters → us/adapters}/tiger/street-decompose.ts +0 -0
  953. /package/lib/{codex/us-fips-state.ts → us/fips-state.ts} +0 -0
  954. /package/lib/{recipes → ve/recipes}/reviewed-postcode-tail.ts +0 -0
  955. /package/out/adapters/{geonames-postal → geonames/postal}/adapter.d.ts +0 -0
  956. /package/out/{adapters → au/adapters}/gnaf/adapter.d.ts +0 -0
  957. /package/out/{adapters → fr/adapters}/ban/adapter.d.ts +0 -0
  958. /package/out/{adapters → fr/adapters}/ban/street-decompose.d.ts +0 -0
  959. /package/out/{adapters → fr/adapters}/ban/street-decompose.js +0 -0
  960. /package/out/{adapters/wof-admin-jp → jp/adapters/wof-admin}/adapter.d.ts +0 -0
  961. /package/out/{adapters/wof-admin-jp → jp/adapters/wof-admin}/adapter.js +0 -0
  962. /package/out/tools/{sub-venue → sub/venue}/head-nouns.js +0 -0
  963. /package/out/tools/{sub-venue → sub/venue}/surfaces.js +0 -0
  964. /package/out/tools/{sub-venue → sub/venue}/table.js +0 -0
  965. /package/out/{adapters → us/adapters}/fcc-bdc/adapter.d.ts +0 -0
  966. /package/out/{adapters/state-hi-schools → us/adapters/state/hi-schools}/adapter.d.ts +0 -0
  967. /package/out/{adapters/state-hi-schools → us/adapters/state/hi-schools}/workbook.d.ts +0 -0
  968. /package/out/{adapters/state-hi-schools → us/adapters/state/hi-schools}/workbook.js +0 -0
  969. /package/out/{adapters/state-ia-contractors → us/adapters/state/ia-contractors}/adapter.d.ts +0 -0
  970. /package/out/{adapters/state-ny-notaries → us/adapters/state/ny-notaries}/adapter.d.ts +0 -0
  971. /package/out/{adapters/state-tx-notaries → us/adapters/state/tx-notaries}/adapter.d.ts +0 -0
  972. /package/out/{adapters → us/adapters}/tiger/street-decompose.d.ts +0 -0
  973. /package/out/{adapters → us/adapters}/tiger/street-decompose.js +0 -0
  974. /package/out/{adapters/usgov-hrsa-fqhc → us/adapters/usgov/hrsa-fqhc}/adapter.d.ts +0 -0
  975. /package/out/{adapters/usgov-imls-pls → us/adapters/usgov/imls-pls}/adapter.d.ts +0 -0
  976. /package/out/{adapters/usgov-irs-bmf → us/adapters/usgov/irs-bmf}/adapter.d.ts +0 -0
  977. /package/out/{adapters/usgov-nad → us/adapters/usgov/nad}/adapter.d.ts +0 -0
  978. /package/out/{adapters/usgov-nppes → us/adapters/usgov/nppes}/adapter.d.ts +0 -0
  979. /package/out/{adapters/usgov-samhsa-treatment-locator → us/adapters/usgov/samhsa-treatment-locator}/adapter.d.ts +0 -0
  980. /package/out/{recipes → ve/recipes}/reviewed-postcode-tail.d.ts +0 -0
  981. /package/out/{recipes → ve/recipes}/reviewed-postcode-tail.js +0 -0
@@ -0,0 +1 @@
1
+ {"version":3,"file":"sources.js","sourceRoot":"","sources":["../../../../../lib/recipes/po/box/cedex/sources.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,31 @@
1
+ /**
2
+ * @copyright Sister Software
3
+ */
4
+ export interface USTuple {
5
+ house_number: string;
6
+ street: string;
7
+ locality: string;
8
+ region: string;
9
+ postcode: string;
10
+ }
11
+ export interface FRTuple {
12
+ house_number: string;
13
+ street: string;
14
+ locality: string;
15
+ postcode: string;
16
+ }
17
+ export interface AUTuple {
18
+ locality: string;
19
+ region: string;
20
+ postcode: string;
21
+ }
22
+ export interface NZTuple {
23
+ locality: string;
24
+ postcode: string;
25
+ }
26
+ export interface Rendered {
27
+ fmt: string;
28
+ raw: string;
29
+ components: Record<string, string>;
30
+ }
31
+ //# sourceMappingURL=types.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../../../../lib/recipes/po/box/cedex/types.ts"],"names":[],"mappings":"AAAA;;GAEG;AAEH,MAAM,WAAW,OAAO;IACvB,YAAY,EAAE,MAAM,CAAA;IACpB,MAAM,EAAE,MAAM,CAAA;IACd,QAAQ,EAAE,MAAM,CAAA;IAChB,MAAM,EAAE,MAAM,CAAA;IACd,QAAQ,EAAE,MAAM,CAAA;CAChB;AAED,MAAM,WAAW,OAAO;IACvB,YAAY,EAAE,MAAM,CAAA;IACpB,MAAM,EAAE,MAAM,CAAA;IACd,QAAQ,EAAE,MAAM,CAAA;IAChB,QAAQ,EAAE,MAAM,CAAA;CAChB;AAED,MAAM,WAAW,OAAO;IACvB,QAAQ,EAAE,MAAM,CAAA;IAChB,MAAM,EAAE,MAAM,CAAA;IACd,QAAQ,EAAE,MAAM,CAAA;CAChB;AAED,MAAM,WAAW,OAAO;IACvB,QAAQ,EAAE,MAAM,CAAA;IAChB,QAAQ,EAAE,MAAM,CAAA;CAChB;AAED,MAAM,WAAW,QAAQ;IACxB,GAAG,EAAE,MAAM,CAAA;IACX,GAAG,EAAE,MAAM,CAAA;IACX,UAAU,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAA;CAClC"}
@@ -0,0 +1,5 @@
1
+ /**
2
+ * @copyright Sister Software
3
+ */
4
+ export {};
5
+ //# sourceMappingURL=types.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"types.js","sourceRoot":"","sources":["../../../../../lib/recipes/po/box/cedex/types.ts"],"names":[],"mappings":"AAAA;;GAEG"}
@@ -0,0 +1,7 @@
1
+ /**
2
+ * @copyright Sister Software
3
+ */
4
+ import type { Rendered, USTuple } from "#recipes/po/box/cedex/types";
5
+ export declare function renderPoBoxUs(random: () => number, tuple: USTuple): Rendered;
6
+ export declare function renderPmbUs(random: () => number, tuple: USTuple): Rendered;
7
+ //# sourceMappingURL=us.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"us.d.ts","sourceRoot":"","sources":["../../../../../lib/recipes/po/box/cedex/us.ts"],"names":[],"mappings":"AAAA;;GAEG;AAGH,OAAO,KAAK,EAAE,QAAQ,EAAE,OAAO,EAAE,MAAM,6BAA6B,CAAA;AAYpE,wBAAgB,aAAa,CAAC,MAAM,EAAE,MAAM,MAAM,EAAE,KAAK,EAAE,OAAO,GAAG,QAAQ,CAmC5E;AAED,wBAAgB,WAAW,CAAC,MAAM,EAAE,MAAM,MAAM,EAAE,KAAK,EAAE,OAAO,GAAG,QAAQ,CAc1E"}
@@ -0,0 +1,51 @@
1
+ /**
2
+ * @copyright Sister Software
3
+ */
4
+ import { makePoBoxPhrase } from "#recipes/po/box/cedex/phrases";
5
+ import { US_LEADERS_COMMON, US_LEADERS_RARE, US_PMB_LEADERS, VENUES_EN } from "#recipes/po/box/cedex/vocabulary";
6
+ import { pick } from "#synthesizers/utils";
7
+ const US_FULL_CUTOFF = 0.4, US_NO_POSTCODE_CUTOFF = 0.55, US_BARE_CUTOFF = 0.75, US_VENUE_CUTOFF = 0.9;
8
+ const PMB_AFTER_STREET_CUTOFF = 0.5, PMB_COMMA_CUTOFF = 0.85;
9
+ export function renderPoBoxUs(random, tuple) {
10
+ const phrase = makePoBoxPhrase(random, US_LEADERS_COMMON, US_LEADERS_RARE);
11
+ const { locality, region, postcode } = tuple;
12
+ const base = { po_box: phrase, locality, region };
13
+ const draw = random();
14
+ if (draw < US_FULL_CUTOFF && postcode)
15
+ return { fmt: "full", raw: `${phrase}, ${locality}, ${region} ${postcode}`, components: { ...base, postcode } };
16
+ if (draw < US_NO_POSTCODE_CUTOFF)
17
+ return { fmt: "no-postcode", raw: `${phrase}, ${locality}, ${region}`, components: base };
18
+ if (draw < US_BARE_CUTOFF)
19
+ return { fmt: "bare", raw: phrase, components: { po_box: phrase } };
20
+ if (draw < US_VENUE_CUTOFF) {
21
+ const venue = pick(VENUES_EN, random);
22
+ return {
23
+ fmt: "venue",
24
+ raw: postcode
25
+ ? `${venue}, ${phrase}, ${locality}, ${region} ${postcode}`
26
+ : `${venue}, ${phrase}, ${locality}, ${region}`,
27
+ components: { venue, ...base, ...(postcode ? { postcode } : {}) },
28
+ };
29
+ }
30
+ const upper = (value) => value.toUpperCase();
31
+ return {
32
+ fmt: "label-nocomma",
33
+ raw: postcode
34
+ ? `${upper(phrase)} ${upper(locality)} ${region} ${postcode}`
35
+ : `${upper(phrase)} ${upper(locality)} ${region}`,
36
+ components: { po_box: upper(phrase), locality: upper(locality), region, ...(postcode ? { postcode } : {}) },
37
+ };
38
+ }
39
+ export function renderPmbUs(random, tuple) {
40
+ const phrase = makePoBoxPhrase(random, US_PMB_LEADERS);
41
+ const { house_number, street, locality, region, postcode } = tuple;
42
+ const road = `${house_number} ${street}`;
43
+ const components = { house_number, street, po_box: phrase, locality, region, postcode };
44
+ const draw = random();
45
+ if (draw < PMB_AFTER_STREET_CUTOFF)
46
+ return { fmt: "pmb-after-street", raw: `${road} ${phrase}, ${locality}, ${region} ${postcode}`, components };
47
+ if (draw < PMB_COMMA_CUTOFF)
48
+ return { fmt: "pmb-comma", raw: `${road}, ${phrase}, ${locality}, ${region} ${postcode}`, components };
49
+ return { fmt: "pmb-bare", raw: `${road} ${phrase}`, components: { house_number, street, po_box: phrase } };
50
+ }
51
+ //# sourceMappingURL=us.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"us.js","sourceRoot":"","sources":["../../../../../lib/recipes/po/box/cedex/us.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,68 @@
1
+ /**
2
+ * @copyright Sister Software
3
+ */
4
+ /**
5
+ * Common US PO-box leaders from the en-US corpus template.
6
+ */
7
+ export declare const US_LEADERS_COMMON: readonly string[];
8
+ /**
9
+ * Less-common USPS designators derived from the codex list.
10
+ */
11
+ export declare const US_LEADERS_RARE: string[];
12
+ /**
13
+ * US private-mailbox leaders excluding the conflicting hash sign.
14
+ */
15
+ export declare const US_PMB_LEADERS: string[];
16
+ /**
17
+ * French PO-box leaders from the fr-FR corpus template.
18
+ */
19
+ export declare const FR_LEADERS: readonly string[];
20
+ /**
21
+ * French-language Canadian PO-box leaders from the fr-CA template.
22
+ */
23
+ export declare const CA_FR_LEADERS: readonly string[];
24
+ /**
25
+ * English-language Canadian PO-box leaders from the en-CA template.
26
+ */
27
+ export declare const CA_EN_LEADERS: readonly string[];
28
+ /**
29
+ * Current Australian delivery-service leaders.
30
+ */
31
+ export declare const AU_LEADERS_CURRENT: string[];
32
+ /**
33
+ * Recognized legacy Australian delivery-service leaders.
34
+ */
35
+ export declare const AU_LEADERS_LEGACY: string[];
36
+ /**
37
+ * Common New Zealand delivery-service leaders.
38
+ */
39
+ export declare const NZ_LEADERS_COMMON: string[];
40
+ /**
41
+ * Rare New Zealand delivery-service leader.
42
+ */
43
+ export declare const NZ_LEADERS_RARE: string[];
44
+ /**
45
+ * Quebec first-letter choices from the Canadian FSA prior.
46
+ */
47
+ export declare const QC_FSA_LETTERS: string[];
48
+ /**
49
+ * Ontario first-letter choices from the Canadian FSA prior.
50
+ */
51
+ export declare const ON_FSA_LETTERS: string[];
52
+ /**
53
+ * Valid Canadian postal-code interior letters.
54
+ */
55
+ export declare const CA_INTERIOR_LETTERS = "ABCEGHJKLMNPRSTVWXYZ";
56
+ /**
57
+ * Weighted country and address-form mix for generated rows.
58
+ */
59
+ export declare const CLASS_MIX: ReadonlyArray<[string, number]>;
60
+ /**
61
+ * English recipient prefixes used in venue layouts.
62
+ */
63
+ export declare const VENUES_EN: string[];
64
+ /**
65
+ * French recipient prefixes used in venue layouts.
66
+ */
67
+ export declare const VENUES_FR: string[];
68
+ //# sourceMappingURL=vocabulary.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"vocabulary.d.ts","sourceRoot":"","sources":["../../../../../lib/recipes/po/box/cedex/vocabulary.ts"],"names":[],"mappings":"AAAA;;GAEG;AAWH;;GAEG;AACH,eAAO,MAAM,iBAAiB,mBAA8B,CAAA;AAE5D;;GAEG;AACH,eAAO,MAAM,eAAe,UAQ3B,CAAA;AAED;;GAEG;AACH,eAAO,MAAM,cAAc,UAA8D,CAAA;AACzF;;GAEG;AACH,eAAO,MAAM,UAAU,mBAA8B,CAAA;AACrD;;GAEG;AACH,eAAO,MAAM,aAAa,mBAA8B,CAAA;AACxD;;GAEG;AACH,eAAO,MAAM,aAAa,mBAA8B,CAAA;AACxD;;GAEG;AACH,eAAO,MAAM,kBAAkB,UAAoF,CAAA;AACnH;;GAEG;AACH,eAAO,MAAM,iBAAiB,UAAwB,CAAA;AACtD;;GAEG;AACH,eAAO,MAAM,iBAAiB,UAA4B,CAAA;AAC1D;;GAEG;AACH,eAAO,MAAM,eAAe,UAAU,CAAA;AAEtC;;GAEG;AACH,eAAO,MAAM,cAAc,UAEA,CAAA;AAE3B;;GAEG;AACH,eAAO,MAAM,cAAc,UAEA,CAAA;AAE3B;;GAEG;AACH,eAAO,MAAM,mBAAmB,yBAAyB,CAAA;AAEzD;;GAEG;AACH,eAAO,MAAM,SAAS,EAAE,aAAa,CAAC,CAAC,MAAM,EAAE,MAAM,CAAC,CAUrD,CAAA;AAED;;GAEG;AACH,eAAO,MAAM,SAAS,UAAkG,CAAA;AACxH;;GAEG;AACH,eAAO,MAAM,SAAS,UAAiG,CAAA"}
@@ -0,0 +1,90 @@
1
+ /**
2
+ * @copyright Sister Software
3
+ */
4
+ import { FSA_LETTER_TO_PROVINCE } from "@mailwoman/codex/ca";
5
+ import { US_PO_BOX_DESIGNATORS } from "@mailwoman/codex/us";
6
+ import { PO_BOX_LOCALE_TEMPLATES } from "#synthesizers/po-box";
7
+ const templates = Object.fromEntries(PO_BOX_LOCALE_TEMPLATES.map((template) => [template.locale, template]));
8
+ /**
9
+ * Common US PO-box leaders from the en-US corpus template.
10
+ */
11
+ export const US_LEADERS_COMMON = templates["en-US"].leaders;
12
+ /**
13
+ * Less-common USPS designators derived from the codex list.
14
+ */
15
+ export const US_LEADERS_RARE = US_PO_BOX_DESIGNATORS.filter((designator) => !["POST OFFICE BOX", "PO BOX", "P O BOX", "BOX"].includes(designator)).map((designator) => designator
16
+ .toLowerCase()
17
+ .split(" ")
18
+ .map((word) => `${word[0].toUpperCase()}${word.slice(1)}`)
19
+ .join(" "));
20
+ /**
21
+ * US private-mailbox leaders excluding the conflicting hash sign.
22
+ */
23
+ export const US_PMB_LEADERS = templates["en-US"].pmb.filter((leader) => leader !== "#");
24
+ /**
25
+ * French PO-box leaders from the fr-FR corpus template.
26
+ */
27
+ export const FR_LEADERS = templates["fr-FR"].leaders;
28
+ /**
29
+ * French-language Canadian PO-box leaders from the fr-CA template.
30
+ */
31
+ export const CA_FR_LEADERS = templates["fr-CA"].leaders;
32
+ /**
33
+ * English-language Canadian PO-box leaders from the en-CA template.
34
+ */
35
+ export const CA_EN_LEADERS = templates["en-CA"].leaders;
36
+ /**
37
+ * Current Australian delivery-service leaders.
38
+ */
39
+ export const AU_LEADERS_CURRENT = ["PO Box", "P.O. Box", "Post Office Box", "GPO Box", "Locked Bag", "Private Bag"];
40
+ /**
41
+ * Recognized legacy Australian delivery-service leaders.
42
+ */
43
+ export const AU_LEADERS_LEGACY = ["RMB", "RSD", "CMB"];
44
+ /**
45
+ * Common New Zealand delivery-service leaders.
46
+ */
47
+ export const NZ_LEADERS_COMMON = ["PO Box", "Private Bag"];
48
+ /**
49
+ * Rare New Zealand delivery-service leader.
50
+ */
51
+ export const NZ_LEADERS_RARE = ["CMB"];
52
+ /**
53
+ * Quebec first-letter choices from the Canadian FSA prior.
54
+ */
55
+ export const QC_FSA_LETTERS = Object.entries(FSA_LETTER_TO_PROVINCE)
56
+ .filter(([, province]) => province === "QC")
57
+ .map(([letter]) => letter);
58
+ /**
59
+ * Ontario first-letter choices from the Canadian FSA prior.
60
+ */
61
+ export const ON_FSA_LETTERS = Object.entries(FSA_LETTER_TO_PROVINCE)
62
+ .filter(([, province]) => province === "ON")
63
+ .map(([letter]) => letter);
64
+ /**
65
+ * Valid Canadian postal-code interior letters.
66
+ */
67
+ export const CA_INTERIOR_LETTERS = "ABCEGHJKLMNPRSTVWXYZ";
68
+ /**
69
+ * Weighted country and address-form mix for generated rows.
70
+ */
71
+ export const CLASS_MIX = [
72
+ ["po-box-us", 0.27],
73
+ ["po-box-us-military", 0.05],
74
+ ["pmb-us", 0.07],
75
+ ["bp-fr", 0.1],
76
+ ["cedex-fr", 0.17],
77
+ ["cp-ca-fr", 0.12],
78
+ ["po-box-ca-en", 0.04],
79
+ ["po-box-au", 0.12],
80
+ ["po-box-nz", 0.06],
81
+ ];
82
+ /**
83
+ * English recipient prefixes used in venue layouts.
84
+ */
85
+ export const VENUES_EN = ["John Doe", "Jane Smith", "Acme Inc", "Wayne Enterprises", "Maria Garcia", "Riverside Clinic"];
86
+ /**
87
+ * French recipient prefixes used in venue layouts.
88
+ */
89
+ export const VENUES_FR = ["Société Dupont", "Cabinet Martin", "Hôpital Central", "Mairie Annexe", "Imprimerie Moderne"];
90
+ //# sourceMappingURL=vocabulary.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"vocabulary.js","sourceRoot":"","sources":["../../../../../lib/recipes/po/box/cedex/vocabulary.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,9 @@
1
+ /**
2
+ * @copyright Sister Software
3
+ * @license AGPL-3.0
4
+ * @author Teffen Ellis, et al.
5
+ *
6
+ * The recipe's implementation is partitioned by data source and postal system in `cedex/`.
7
+ */
8
+ export { poBoxCedexRecipe } from "#recipes/po/box/cedex/recipe";
9
+ //# sourceMappingURL=cedex.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"cedex.d.ts","sourceRoot":"","sources":["../../../../lib/recipes/po/box/cedex.ts"],"names":[],"mappings":"AAAA;;;;;;GAMG;AAEH,OAAO,EAAE,gBAAgB,EAAE,MAAM,8BAA8B,CAAA"}
@@ -0,0 +1,9 @@
1
+ /**
2
+ * @copyright Sister Software
3
+ * @license AGPL-3.0
4
+ * @author Teffen Ellis, et al.
5
+ *
6
+ * The recipe's implementation is partitioned by data source and postal system in `cedex/`.
7
+ */
8
+ export { poBoxCedexRecipe } from "#recipes/po/box/cedex/recipe";
9
+ //# sourceMappingURL=cedex.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"cedex.js","sourceRoot":"","sources":["../../../../lib/recipes/po/box/cedex.ts"],"names":[],"mappings":"AAAA;;;;;;GAMG;AAEH,OAAO,EAAE,gBAAgB,EAAE,MAAM,8BAA8B,CAAA"}
@@ -0,0 +1,17 @@
1
+ /**
2
+ * @copyright Sister Software
3
+ * @license AGPL-3.0
4
+ * @author Teffen Ellis, et al.
5
+ *
6
+ * `po-box` slice recipe — synthetic PO box rows: tuples → {@link synthesizePoBoxRow} → aligned
7
+ * LabeledRow, plus optional self-contained US military/diplomatic rows (#517) at
8
+ * `--military-ratio`. Region is required EXCEPT region-less locales (NZ). Ported from
9
+ * scripts/build-po-box-slice.mjs.
10
+ */
11
+ import { type CorpusRecipe } from "#recipes/scaffold";
12
+ /**
13
+ * Slice recipe registered with the corpus builder — see the file header for the parse behaviour it exists to exercise,
14
+ * and `description` below for the surface form it generates.
15
+ */
16
+ export declare const poBoxRecipe: CorpusRecipe;
17
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../lib/recipes/po/box/index.ts"],"names":[],"mappings":"AAAA;;;;;;;;;GASG;AAIH,OAAO,EAKN,KAAK,YAAY,EACjB,MAAM,mBAAmB,CAAA;AAG1B;;;GAGG;AACH,eAAO,MAAM,WAAW,EAAE,YAqGzB,CAAA"}
@@ -0,0 +1,105 @@
1
+ /**
2
+ * @copyright Sister Software
3
+ * @license AGPL-3.0
4
+ * @author Teffen Ellis, et al.
5
+ *
6
+ * `po-box` slice recipe — synthetic PO box rows: tuples → {@link synthesizePoBoxRow} → aligned
7
+ * LabeledRow, plus optional self-contained US military/diplomatic rows (#517) at
8
+ * `--military-ratio`. Region is required EXCEPT region-less locales (NZ). Ported from
9
+ * scripts/build-po-box-slice.mjs.
10
+ */
11
+ import { makeLcg } from "@mailwoman/core/utils";
12
+ import { alignAndWrite, readTuples, sliceSourceID, SYNTHETIC_TUPLE_LICENSE as LICENSE, } from "#recipes/scaffold";
13
+ import { synthesizeMilitaryPoBoxRow, synthesizePoBoxRow } from "#synthesizers/po-box";
14
+ /**
15
+ * Slice recipe registered with the corpus builder — see the file header for the parse behaviour it exists to exercise,
16
+ * and `description` below for the surface form it generates.
17
+ */
18
+ export const poBoxRecipe = {
19
+ name: "po-box",
20
+ description: "PO box rows: tuples → synthesizePoBoxRow (+ optional US military/diplomatic rows)",
21
+ mode: "tuples",
22
+ options: [
23
+ { flag: "--pmb-ratio <p>", description: "P(private-mailbox layout). Default 0.15" },
24
+ { flag: "--military-ratio <p>", description: "P(emit one US military/diplomatic row per input, #517). Default 0" },
25
+ ],
26
+ async run(opts, write) {
27
+ if (!opts.input)
28
+ throw new Error("po-box recipe requires --input <tuples.jsonl>");
29
+ const random = makeLcg(opts.seed);
30
+ const pmbRatio = opts.pmbRatio ?? 0.15;
31
+ const militaryRatio = opts.militaryRatio ?? 0;
32
+ // `--source-name` so a slice built for one class carries its own source label and its own dose. A
33
+ // military-only slice (`--variants 0 --military-ratio 1`) is otherwise indistinguishable from the
34
+ // leader-template rows in the mixture, and the two are dosed for different reasons (#517).
35
+ const source = opts.sourceName ?? "synth-po-box";
36
+ let read = 0;
37
+ let emitted = 0;
38
+ let skipped = 0;
39
+ for await (const tuple of readTuples(opts.input)) {
40
+ read++;
41
+ // Region required EXCEPT region-less locales (NZ: "Private Bag 12, Auckland 1010", #517).
42
+ const regionOptional = ["NZ", "NZL", "NEW ZEALAND"].includes(String(tuple.country || "").toUpperCase());
43
+ if (!tuple.locality || !tuple.postcode || !tuple.country || (!tuple.region && !regionOptional)) {
44
+ skipped++;
45
+ continue;
46
+ }
47
+ for (let v = 0; v < opts.variants; v++) {
48
+ const synth = synthesizePoBoxRow(tuple, { random, pmbRatio });
49
+ if (!synth)
50
+ continue;
51
+ const ok = alignAndWrite(write, {
52
+ raw: synth.raw,
53
+ components: synth.components,
54
+ country: tuple.country,
55
+ locale: synth.locale,
56
+ source,
57
+ source_id: sliceSourceID(source, {
58
+ locality: tuple.locality,
59
+ region: tuple.region,
60
+ postcode: tuple.postcode,
61
+ country: tuple.country,
62
+ v: String(v),
63
+ }),
64
+ corpus_version: "0.4.0",
65
+ license: LICENSE,
66
+ }, synth.template);
67
+ if (ok) {
68
+ emitted++;
69
+ }
70
+ else {
71
+ skipped++;
72
+ }
73
+ }
74
+ // US military/diplomatic rows (#517): self-contained, one per input line at --military-ratio.
75
+ // Default 0 → byte-stable (random() not called when off). US-only.
76
+ if (militaryRatio > 0 && random() < militaryRatio) {
77
+ const mil = synthesizeMilitaryPoBoxRow({ random });
78
+ const ok = alignAndWrite(write, {
79
+ raw: mil.raw,
80
+ components: mil.components,
81
+ country: "US",
82
+ locale: mil.locale,
83
+ source,
84
+ source_id: sliceSourceID(source, {
85
+ po_box: mil.components.po_box,
86
+ locality: mil.components.locality,
87
+ region: mil.components.region,
88
+ postcode: mil.components.postcode,
89
+ v: `mil${emitted}`,
90
+ }),
91
+ corpus_version: "0.4.0",
92
+ license: LICENSE,
93
+ }, mil.template);
94
+ if (ok) {
95
+ emitted++;
96
+ }
97
+ else {
98
+ skipped++;
99
+ }
100
+ }
101
+ }
102
+ return { read, emitted, skipped };
103
+ },
104
+ };
105
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../lib/recipes/po/box/index.ts"],"names":[],"mappings":"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"}
@@ -71,6 +71,26 @@ export interface SliceTuple {
71
71
  * as `undefined`; a column the header declares but this record does not reach reads as `""`.
72
72
  */
73
73
  export type CSVRecord = Record<string, string | undefined>;
74
+ /**
75
+ * Line breaks inside a value become single spaces, and every value is trimmed.
76
+ *
77
+ * A quote-aware parse is the first thing able to return a value CONTAINING a line break — `us/ia/statewide.csv` has 12,
78
+ * all unit designators like `"#2\n#2"` — and every consumer synthesizes one-line address text from these cells with no
79
+ * guard, because until that parse landed no value could carry one. Collapsing keeps the record (the address is fine;
80
+ * the source's line break is not part of it) without emitting a training row with a newline inside it.
81
+ *
82
+ * Only `\r` and `\n`, deliberately — NOT `\s`. Runs of spaces and tabs pass through exactly as the source wrote them
83
+ * (OA's IA extract writes `NORTH`, three spaces, `MAIN STREET`), because those could always appear and every slice
84
+ * built to date contains them. Widening this to `\s+` silently rewrites values on rows with no line break at all.
85
+ * `scaffold.test.ts` pins both halves.
86
+ *
87
+ * This is what a CSV reader here still owns. Quote handling, object rows, and lower-case keys are `CSVSpliterator`'s
88
+ * defaults, so a recipe reads a source with `CSVSpliterator.fromAsync(source).map(withoutLineBreaks)` and needs nothing
89
+ * else.
90
+ *
91
+ * @category CSV
92
+ */
93
+ export declare function withoutLineBreaks(record: CSVRecord): CSVRecord;
74
94
  /**
75
95
  * Read a CSV as header-keyed records.
76
96
  *
@@ -1 +1 @@
1
- {"version":3,"file":"scaffold.d.ts","sourceRoot":"","sources":["../../lib/recipes/scaffold.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"scaffold.d.ts","sourceRoot":"","sources":["../../lib/recipes/scaffold.ts"],"names":[],"mappings":"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"}
@@ -22,41 +22,30 @@ export function sliceSourceID(adapterID, parts) {
22
22
  return stableSourceIDFromParts(adapterID, parts);
23
23
  }
24
24
  /**
25
- * Quote handling spans the ROW split, not only the column split: a newline inside a quoted field belongs to a single
26
- * record, so the record boundaries can only be found by a scanner that already knows where the quotes are. Find the
27
- * lines first and unquote afterwards and such a record splits in two — the first half short by however many columns
28
- * followed the newline, which is how a `street` value comes to be read as `city`.
25
+ * Line breaks inside a value become single spaces, and every value is trimmed.
29
26
  *
30
- * `header: false` keeps the first record in the stream, so this module owns the lower-casing rather than
31
- * `normalizeKeys` — see {@link toHeader}.
32
- */
33
- const CSV_INIT = { header: false, enableQuoteHandling: true };
34
- /**
35
- * Header names are lower-cased on the way in. `normalizeKeys` will not do it: it leaves an ALL CAPS header alone, and
36
- * OpenAddresses ships `LON,LAT,NUMBER,STREET` while other extracts ship the same names lower-case. A recipe names its
37
- * columns in lower case either way.
38
- */
39
- function toHeader(cells) {
40
- return cells.map((name) => name.trim().toLowerCase());
41
- }
42
- /**
43
- * Line breaks inside a value become single spaces. A quote-aware parse is the first thing here able to return a value
44
- * CONTAINING one — `us/ia/statewide.csv` has 12, all unit designators like `"#2\n#2"` — and every consumer synthesizes
45
- * one-line address text from these cells with no guard, because until that parse landed no value could carry one.
46
- * Collapsing keeps the record (the address is fine; the source's line break is not part of it) without emitting a
47
- * training row with a newline inside it.
27
+ * A quote-aware parse is the first thing able to return a value CONTAINING a line break — `us/ia/statewide.csv` has 12,
28
+ * all unit designators like `"#2\n#2"` — and every consumer synthesizes one-line address text from these cells with no
29
+ * guard, because until that parse landed no value could carry one. Collapsing keeps the record (the address is fine;
30
+ * the source's line break is not part of it) without emitting a training row with a newline inside it.
48
31
  *
49
32
  * Only `\r` and `\n`, deliberately — NOT `\s`. Runs of spaces and tabs pass through exactly as the source wrote them
50
33
  * (OA's IA extract writes `NORTH`, three spaces, `MAIN STREET`), because those could always appear and every slice
51
34
  * built to date contains them. Widening this to `\s+` silently rewrites values on rows with no line break at all.
52
- * `scaffold.test.ts` pins both halves, against both readers.
35
+ * `scaffold.test.ts` pins both halves.
36
+ *
37
+ * This is what a CSV reader here still owns. Quote handling, object rows, and lower-case keys are `CSVSpliterator`'s
38
+ * defaults, so a recipe reads a source with `CSVSpliterator.fromAsync(source).map(withoutLineBreaks)` and needs nothing
39
+ * else.
40
+ *
41
+ * @category CSV
53
42
  */
54
- function toRecord(header, cells) {
55
- const record = {};
56
- for (let i = 0; i < header.length; i++) {
57
- record[header[i]] = (cells[i] ?? "").replaceAll(/[\r\n]+/g, " ").trim();
43
+ export function withoutLineBreaks(record) {
44
+ const out = {};
45
+ for (const [key, value] of Object.entries(record)) {
46
+ out[key] = (value ?? "").replaceAll(/[\r\n]+/g, " ").trim();
58
47
  }
59
- return record;
48
+ return out;
60
49
  }
61
50
  /**
62
51
  * Read a CSV as header-keyed records.
@@ -71,15 +60,7 @@ function toRecord(header, cells) {
71
60
  * @category CSV
72
61
  */
73
62
  export function readCSVRecords(source) {
74
- let header = null;
75
- return CSVSpliterator.fromAsync(source, CSV_INIT)
76
- .filter((cells) => {
77
- if (header)
78
- return true;
79
- header = toHeader(cells);
80
- return false;
81
- })
82
- .map((cells) => toRecord(header, cells));
63
+ return CSVSpliterator.fromAsync(source).map(withoutLineBreaks);
83
64
  }
84
65
  /**
85
66
  * {@link readCSVRecords} over one member of a zip archive — what every recipe reading a cached OA source wants.
@@ -1 +1 @@
1
- {"version":3,"file":"scaffold.js","sourceRoot":"","sources":["../../lib/recipes/scaffold.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"scaffold.js","sourceRoot":"","sources":["../../lib/recipes/scaffold.ts"],"names":[],"mappings":"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"}