@mailwoman/corpus 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 (1202) hide show
  1. package/README.md +24 -24
  2. package/data/PROVENANCE.md +20 -7
  3. package/data/reviewed-ve-postcode-tuples.json +74 -0
  4. package/lib/adapters/ban/adapter.ts +190 -0
  5. package/lib/adapters/ban/street-decompose.ts +66 -0
  6. package/lib/adapters/fcc-bdc/adapter.ts +174 -0
  7. package/lib/adapters/geonames/adapter.ts +199 -0
  8. package/lib/adapters/geonames-postal/adapter.ts +122 -0
  9. package/lib/adapters/gnaf/adapter.ts +149 -0
  10. package/lib/adapters/gnaf/assemble.ts +225 -0
  11. package/lib/adapters/index.ts +153 -0
  12. package/lib/adapters/openaddresses/adapter.ts +251 -0
  13. package/lib/adapters/overture/adapter.ts +162 -0
  14. package/lib/adapters/state-hi-schools/adapter.ts +170 -0
  15. package/lib/adapters/state-hi-schools/workbook.ts +35 -0
  16. package/lib/adapters/state-ia-contractors/adapter.ts +144 -0
  17. package/lib/adapters/state-ny-notaries/adapter.ts +141 -0
  18. package/lib/adapters/state-tx-notaries/adapter.ts +157 -0
  19. package/lib/adapters/synth-po-box/adapter.ts +204 -0
  20. package/lib/adapters/tiger/adapter.ts +252 -0
  21. package/lib/adapters/tiger/street-decompose.ts +83 -0
  22. package/lib/adapters/usgov-hrsa-fqhc/adapter.ts +167 -0
  23. package/lib/adapters/usgov-imls-pls/adapter.ts +143 -0
  24. package/lib/adapters/usgov-irs-bmf/adapter.ts +151 -0
  25. package/lib/adapters/usgov-nad/adapter.ts +334 -0
  26. package/lib/adapters/usgov-nppes/adapter.ts +151 -0
  27. package/lib/adapters/usgov-samhsa-treatment-locator/adapter.ts +193 -0
  28. package/lib/adapters/utils/index.ts +307 -0
  29. package/lib/adapters/wof-admin-jp/adapter.ts +214 -0
  30. package/lib/adapters/wof-admin-json/adapter.ts +231 -0
  31. package/lib/adapters/wof-json-rows.ts +129 -0
  32. package/lib/adapters/wof-postalcode-json/adapter.ts +176 -0
  33. package/lib/build.ts +378 -0
  34. package/lib/env.ts +50 -0
  35. package/lib/index.ts +13 -0
  36. package/lib/name-prone-us-suffixes.ts +12 -0
  37. package/lib/recipes/anchor-absorption.ts +101 -0
  38. package/lib/recipes/bare-country.ts +95 -0
  39. package/lib/recipes/boundary-stress.ts +100 -0
  40. package/lib/recipes/cn-organizational-units.ts +199 -0
  41. package/lib/recipes/country-balanced.ts +509 -0
  42. package/lib/recipes/cz-pcfirst-preposition.ts +111 -0
  43. package/lib/recipes/fr-admin-split.ts +242 -0
  44. package/lib/recipes/fr-bare-street.ts +170 -0
  45. package/lib/recipes/fr-fragment.ts +333 -0
  46. package/lib/recipes/fr-lieudit.ts +301 -0
  47. package/lib/recipes/fr-order.ts +245 -0
  48. package/lib/recipes/german.ts +359 -0
  49. package/lib/recipes/house-venue.ts +92 -0
  50. package/lib/recipes/index.ts +97 -0
  51. package/lib/recipes/intersection.ts +618 -0
  52. package/lib/recipes/locale.ts +599 -0
  53. package/lib/recipes/nl-postcode.ts +115 -0
  54. package/lib/recipes/no-fragment.ts +219 -0
  55. package/lib/recipes/no-street-led.ts +141 -0
  56. package/lib/recipes/no-street.ts +90 -0
  57. package/lib/recipes/po-box-cedex.ts +976 -0
  58. package/lib/recipes/po-box.ts +123 -0
  59. package/lib/recipes/reviewed-postcode-tail.ts +190 -0
  60. package/lib/recipes/scaffold.ts +469 -0
  61. package/lib/recipes/si-bare-village.ts +97 -0
  62. package/lib/recipes/street-affix.ts +804 -0
  63. package/lib/recipes/street-bare.ts +100 -0
  64. package/lib/recipes/street.ts +81 -0
  65. package/lib/recipes/sub-venue-sources.ts +877 -0
  66. package/lib/recipes/sub-venue.ts +997 -0
  67. package/lib/recipes/trailing-region.ts +183 -0
  68. package/lib/recipes/unit.ts +304 -0
  69. package/lib/runner.ts +312 -0
  70. package/lib/synthesizers/anchor-absorption.ts +288 -0
  71. package/lib/synthesizers/boundary-stress.ts +532 -0
  72. package/lib/synthesizers/german.ts +260 -0
  73. package/lib/synthesizers/house-venue.ts +308 -0
  74. package/lib/synthesizers/intersection.ts +233 -0
  75. package/lib/synthesizers/no-street.ts +327 -0
  76. package/lib/synthesizers/po-box.ts +323 -0
  77. package/lib/synthesizers/street.ts +269 -0
  78. package/lib/synthesizers/utils.ts +993 -0
  79. package/lib/test-kit/corpus-recipe.ts +86 -0
  80. package/lib/test-kit/index.ts +100 -0
  81. package/lib/tools/align-slice.ts +68 -0
  82. package/lib/tools/audit.ts +403 -0
  83. package/lib/tools/corpus-stats.ts +136 -0
  84. package/lib/tools/fetch/ban.ts +289 -0
  85. package/lib/tools/fetch/download.ts +262 -0
  86. package/lib/tools/fetch/geonames-dump.ts +257 -0
  87. package/lib/tools/fetch/geonames-postal.ts +180 -0
  88. package/lib/tools/fetch/hrsa.ts +59 -0
  89. package/lib/tools/fetch/imls-pls.ts +149 -0
  90. package/lib/tools/fetch/index.ts +147 -0
  91. package/lib/tools/fetch/nad.ts +341 -0
  92. package/lib/tools/fetch/nppes.ts +165 -0
  93. package/lib/tools/fetch/openaddresses.ts +347 -0
  94. package/lib/tools/fetch/ourairports.ts +170 -0
  95. package/lib/tools/fetch/ppd.ts +121 -0
  96. package/lib/tools/fetch/state-hi-schools.ts +161 -0
  97. package/lib/tools/fetch/state-sources.ts +146 -0
  98. package/lib/tools/fetch/tiger-full.ts +308 -0
  99. package/lib/tools/fetch/wikidata-subvenue.ts +384 -0
  100. package/lib/tools/golden-expand.ts +574 -0
  101. package/lib/tools/golden-promote.ts +337 -0
  102. package/lib/tools/golden-relabel-street.ts +683 -0
  103. package/lib/tools/index.ts +28 -0
  104. package/lib/tools/ingest-csv.ts +378 -0
  105. package/lib/tools/jsonl-to-parquet.ts +207 -0
  106. package/lib/tools/lint-slice-vocab.ts +388 -0
  107. package/lib/tools/lint-slice.ts +496 -0
  108. package/lib/tools/overlay-manifest.ts +148 -0
  109. package/lib/tools/overture-subvenue.ts +209 -0
  110. package/lib/tools/postcode-triples.ts +363 -0
  111. package/lib/tools/slice-kryptonite.ts +137 -0
  112. package/lib/tools/slice-translit.ts +218 -0
  113. package/lib/tools/sub-venue/harvest.ts +234 -0
  114. package/lib/tools/sub-venue/head-nouns.ts +245 -0
  115. package/lib/tools/sub-venue/surfaces.ts +95 -0
  116. package/lib/tools/sub-venue/table.ts +281 -0
  117. package/lib/tools/sub-venue/wikidata.ts +85 -0
  118. package/lib/tools/sub-venue-lexicon.ts +429 -0
  119. package/lib/tools/sub-venue-promotions.ts +330 -0
  120. package/lib/types.ts +247 -0
  121. package/lib/utils/align.ts +330 -0
  122. package/lib/utils/golden.ts +189 -0
  123. package/lib/utils/index.ts +14 -0
  124. package/lib/utils/license.ts +50 -0
  125. package/lib/utils/parquet.ts +582 -0
  126. package/lib/utils/slice-stats.ts +95 -0
  127. package/lib/utils/split.ts +279 -0
  128. package/lib/utils/tokenize.ts +120 -0
  129. package/lib/utils/wof-json.ts +247 -0
  130. package/out/adapters/ban/adapter.d.ts +44 -0
  131. package/out/adapters/ban/adapter.d.ts.map +1 -0
  132. package/out/adapters/ban/adapter.js +149 -0
  133. package/out/adapters/ban/adapter.js.map +1 -0
  134. package/out/adapters/ban/street-decompose.d.ts.map +1 -0
  135. package/out/adapters/ban/street-decompose.js +51 -0
  136. package/out/adapters/ban/street-decompose.js.map +1 -0
  137. package/out/adapters/fcc-bdc/adapter.d.ts +68 -0
  138. package/out/adapters/fcc-bdc/adapter.d.ts.map +1 -0
  139. package/out/adapters/fcc-bdc/adapter.js +144 -0
  140. package/out/adapters/fcc-bdc/adapter.js.map +1 -0
  141. package/out/adapters/geonames/adapter.d.ts +46 -0
  142. package/out/adapters/geonames/adapter.d.ts.map +1 -0
  143. package/out/adapters/geonames/adapter.js +176 -0
  144. package/out/adapters/geonames/adapter.js.map +1 -0
  145. package/out/adapters/geonames-postal/adapter.d.ts +54 -0
  146. package/out/adapters/geonames-postal/adapter.d.ts.map +1 -0
  147. package/out/adapters/geonames-postal/adapter.js +107 -0
  148. package/out/adapters/geonames-postal/adapter.js.map +1 -0
  149. package/out/adapters/gnaf/adapter.d.ts +49 -0
  150. package/out/adapters/gnaf/adapter.d.ts.map +1 -0
  151. package/out/adapters/gnaf/adapter.js +124 -0
  152. package/out/adapters/gnaf/adapter.js.map +1 -0
  153. package/out/adapters/gnaf/assemble.d.ts +65 -0
  154. package/out/adapters/gnaf/assemble.d.ts.map +1 -0
  155. package/out/adapters/gnaf/assemble.js +154 -0
  156. package/out/adapters/gnaf/assemble.js.map +1 -0
  157. package/out/adapters/index.d.ts +51 -0
  158. package/out/adapters/index.d.ts.map +1 -0
  159. package/out/adapters/index.js +95 -0
  160. package/out/adapters/index.js.map +1 -0
  161. package/out/adapters/openaddresses/adapter.d.ts +72 -0
  162. package/out/adapters/openaddresses/adapter.d.ts.map +1 -0
  163. package/out/adapters/openaddresses/adapter.js +186 -0
  164. package/out/adapters/openaddresses/adapter.js.map +1 -0
  165. package/out/adapters/overture/adapter.d.ts +48 -0
  166. package/out/adapters/overture/adapter.d.ts.map +1 -0
  167. package/out/adapters/overture/adapter.js +125 -0
  168. package/out/adapters/overture/adapter.js.map +1 -0
  169. package/out/adapters/state-hi-schools/adapter.d.ts +46 -0
  170. package/out/adapters/state-hi-schools/adapter.d.ts.map +1 -0
  171. package/out/adapters/state-hi-schools/adapter.js +145 -0
  172. package/out/adapters/state-hi-schools/adapter.js.map +1 -0
  173. package/out/adapters/state-hi-schools/workbook.d.ts +29 -0
  174. package/out/adapters/state-hi-schools/workbook.d.ts.map +1 -0
  175. package/out/adapters/state-hi-schools/workbook.js +20 -0
  176. package/out/adapters/state-hi-schools/workbook.js.map +1 -0
  177. package/out/adapters/state-ia-contractors/adapter.d.ts +34 -0
  178. package/out/adapters/state-ia-contractors/adapter.d.ts.map +1 -0
  179. package/out/adapters/state-ia-contractors/adapter.js +111 -0
  180. package/out/adapters/state-ia-contractors/adapter.js.map +1 -0
  181. package/out/adapters/state-ny-notaries/adapter.d.ts +32 -0
  182. package/out/adapters/state-ny-notaries/adapter.d.ts.map +1 -0
  183. package/out/adapters/state-ny-notaries/adapter.js +119 -0
  184. package/out/adapters/state-ny-notaries/adapter.js.map +1 -0
  185. package/out/adapters/state-tx-notaries/adapter.d.ts +33 -0
  186. package/out/adapters/state-tx-notaries/adapter.d.ts.map +1 -0
  187. package/out/adapters/state-tx-notaries/adapter.js +125 -0
  188. package/out/adapters/state-tx-notaries/adapter.js.map +1 -0
  189. package/out/adapters/synth-po-box/adapter.d.ts +67 -0
  190. package/out/adapters/synth-po-box/adapter.d.ts.map +1 -0
  191. package/out/adapters/synth-po-box/adapter.js +140 -0
  192. package/out/adapters/synth-po-box/adapter.js.map +1 -0
  193. package/out/adapters/tiger/adapter.d.ts +55 -0
  194. package/out/adapters/tiger/adapter.d.ts.map +1 -0
  195. package/out/adapters/tiger/adapter.js +201 -0
  196. package/out/adapters/tiger/adapter.js.map +1 -0
  197. package/out/adapters/tiger/street-decompose.d.ts.map +1 -0
  198. package/out/adapters/tiger/street-decompose.js +68 -0
  199. package/out/adapters/tiger/street-decompose.js.map +1 -0
  200. package/out/adapters/usgov-hrsa-fqhc/adapter.d.ts +56 -0
  201. package/out/adapters/usgov-hrsa-fqhc/adapter.d.ts.map +1 -0
  202. package/out/adapters/usgov-hrsa-fqhc/adapter.js +132 -0
  203. package/out/adapters/usgov-hrsa-fqhc/adapter.js.map +1 -0
  204. package/out/adapters/usgov-imls-pls/adapter.d.ts +36 -0
  205. package/out/adapters/usgov-imls-pls/adapter.d.ts.map +1 -0
  206. package/out/adapters/usgov-imls-pls/adapter.js +114 -0
  207. package/out/adapters/usgov-imls-pls/adapter.js.map +1 -0
  208. package/out/adapters/usgov-irs-bmf/adapter.d.ts +37 -0
  209. package/out/adapters/usgov-irs-bmf/adapter.d.ts.map +1 -0
  210. package/out/adapters/usgov-irs-bmf/adapter.js +120 -0
  211. package/out/adapters/usgov-irs-bmf/adapter.js.map +1 -0
  212. package/out/adapters/usgov-nad/adapter.d.ts +48 -0
  213. package/out/adapters/usgov-nad/adapter.d.ts.map +1 -0
  214. package/out/adapters/usgov-nad/adapter.js +249 -0
  215. package/out/adapters/usgov-nad/adapter.js.map +1 -0
  216. package/out/adapters/usgov-nppes/adapter.d.ts +39 -0
  217. package/out/adapters/usgov-nppes/adapter.d.ts.map +1 -0
  218. package/out/adapters/usgov-nppes/adapter.js +118 -0
  219. package/out/adapters/usgov-nppes/adapter.js.map +1 -0
  220. package/out/adapters/usgov-samhsa-treatment-locator/adapter.d.ts +46 -0
  221. package/out/adapters/usgov-samhsa-treatment-locator/adapter.d.ts.map +1 -0
  222. package/out/adapters/usgov-samhsa-treatment-locator/adapter.js +154 -0
  223. package/out/adapters/usgov-samhsa-treatment-locator/adapter.js.map +1 -0
  224. package/out/adapters/utils/index.d.ts +191 -0
  225. package/out/adapters/utils/index.d.ts.map +1 -0
  226. package/out/adapters/utils/index.js +206 -0
  227. package/out/adapters/utils/index.js.map +1 -0
  228. package/out/adapters/wof-admin-jp/adapter.d.ts +65 -0
  229. package/out/adapters/wof-admin-jp/adapter.d.ts.map +1 -0
  230. package/out/adapters/wof-admin-jp/adapter.js +161 -0
  231. package/out/adapters/wof-admin-jp/adapter.js.map +1 -0
  232. package/out/adapters/wof-admin-json/adapter.d.ts +79 -0
  233. package/out/adapters/wof-admin-json/adapter.d.ts.map +1 -0
  234. package/out/adapters/wof-admin-json/adapter.js +197 -0
  235. package/out/adapters/wof-admin-json/adapter.js.map +1 -0
  236. package/out/adapters/wof-json-rows.d.ts +62 -0
  237. package/out/adapters/wof-json-rows.d.ts.map +1 -0
  238. package/out/adapters/wof-json-rows.js +83 -0
  239. package/out/adapters/wof-json-rows.js.map +1 -0
  240. package/out/adapters/wof-postalcode-json/adapter.d.ts +65 -0
  241. package/out/adapters/wof-postalcode-json/adapter.d.ts.map +1 -0
  242. package/out/adapters/wof-postalcode-json/adapter.js +151 -0
  243. package/out/adapters/wof-postalcode-json/adapter.js.map +1 -0
  244. package/out/build.d.ts +132 -0
  245. package/out/build.d.ts.map +1 -0
  246. package/out/build.js +245 -0
  247. package/out/build.js.map +1 -0
  248. package/out/codex/us-fips-state.d.ts.map +1 -0
  249. package/out/codex/us-fips-state.js.map +1 -0
  250. package/out/env.d.ts +46 -0
  251. package/out/env.d.ts.map +1 -0
  252. package/out/env.js +46 -0
  253. package/out/env.js.map +1 -0
  254. package/out/index.d.ts +13 -0
  255. package/out/index.d.ts.map +1 -0
  256. package/out/index.js +13 -0
  257. package/out/index.js.map +1 -0
  258. package/out/name-prone-us-suffixes.d.ts +12 -0
  259. package/out/name-prone-us-suffixes.d.ts.map +1 -0
  260. package/out/name-prone-us-suffixes.js +12 -0
  261. package/out/name-prone-us-suffixes.js.map +1 -0
  262. package/out/recipes/anchor-absorption.d.ts +20 -0
  263. package/out/recipes/anchor-absorption.d.ts.map +1 -0
  264. package/out/recipes/anchor-absorption.js +81 -0
  265. package/out/recipes/anchor-absorption.js.map +1 -0
  266. package/out/recipes/bare-country.d.ts +25 -0
  267. package/out/recipes/bare-country.d.ts.map +1 -0
  268. package/out/recipes/bare-country.js +87 -0
  269. package/out/recipes/bare-country.js.map +1 -0
  270. package/out/recipes/boundary-stress.d.ts +20 -0
  271. package/out/recipes/boundary-stress.d.ts.map +1 -0
  272. package/out/recipes/boundary-stress.js +83 -0
  273. package/out/recipes/boundary-stress.js.map +1 -0
  274. package/out/recipes/cn-organizational-units.d.ts +36 -0
  275. package/out/recipes/cn-organizational-units.d.ts.map +1 -0
  276. package/out/recipes/cn-organizational-units.js +159 -0
  277. package/out/recipes/cn-organizational-units.js.map +1 -0
  278. package/out/recipes/country-balanced.d.ts +32 -0
  279. package/out/recipes/country-balanced.d.ts.map +1 -0
  280. package/out/recipes/country-balanced.js +393 -0
  281. package/out/recipes/country-balanced.js.map +1 -0
  282. package/out/recipes/cz-pcfirst-preposition.d.ts +22 -0
  283. package/out/recipes/cz-pcfirst-preposition.d.ts.map +1 -0
  284. package/out/recipes/cz-pcfirst-preposition.js +100 -0
  285. package/out/recipes/cz-pcfirst-preposition.js.map +1 -0
  286. package/out/recipes/fr-admin-split.d.ts +38 -0
  287. package/out/recipes/fr-admin-split.d.ts.map +1 -0
  288. package/out/recipes/fr-admin-split.js +192 -0
  289. package/out/recipes/fr-admin-split.js.map +1 -0
  290. package/out/recipes/fr-bare-street.d.ts +28 -0
  291. package/out/recipes/fr-bare-street.d.ts.map +1 -0
  292. package/out/recipes/fr-bare-street.js +143 -0
  293. package/out/recipes/fr-bare-street.js.map +1 -0
  294. package/out/recipes/fr-fragment.d.ts +77 -0
  295. package/out/recipes/fr-fragment.d.ts.map +1 -0
  296. package/out/recipes/fr-fragment.js +276 -0
  297. package/out/recipes/fr-fragment.js.map +1 -0
  298. package/out/recipes/fr-lieudit.d.ts +32 -0
  299. package/out/recipes/fr-lieudit.d.ts.map +1 -0
  300. package/out/recipes/fr-lieudit.js +227 -0
  301. package/out/recipes/fr-lieudit.js.map +1 -0
  302. package/out/recipes/fr-order.d.ts +38 -0
  303. package/out/recipes/fr-order.d.ts.map +1 -0
  304. package/out/recipes/fr-order.js +197 -0
  305. package/out/recipes/fr-order.js.map +1 -0
  306. package/out/recipes/german.d.ts +44 -0
  307. package/out/recipes/german.d.ts.map +1 -0
  308. package/out/recipes/german.js +288 -0
  309. package/out/recipes/german.js.map +1 -0
  310. package/out/recipes/house-venue.d.ts +18 -0
  311. package/out/recipes/house-venue.d.ts.map +1 -0
  312. package/out/recipes/house-venue.js +73 -0
  313. package/out/recipes/house-venue.js.map +1 -0
  314. package/out/recipes/index.d.ts +24 -0
  315. package/out/recipes/index.d.ts.map +1 -0
  316. package/out/recipes/index.js +91 -0
  317. package/out/recipes/index.js.map +1 -0
  318. package/out/recipes/intersection.d.ts +42 -0
  319. package/out/recipes/intersection.d.ts.map +1 -0
  320. package/out/recipes/intersection.js +452 -0
  321. package/out/recipes/intersection.js.map +1 -0
  322. package/out/recipes/locale.d.ts +136 -0
  323. package/out/recipes/locale.d.ts.map +1 -0
  324. package/out/recipes/locale.js +460 -0
  325. package/out/recipes/locale.js.map +1 -0
  326. package/out/recipes/nl-postcode.d.ts +26 -0
  327. package/out/recipes/nl-postcode.d.ts.map +1 -0
  328. package/out/recipes/nl-postcode.js +102 -0
  329. package/out/recipes/nl-postcode.js.map +1 -0
  330. package/out/recipes/no-fragment.d.ts +43 -0
  331. package/out/recipes/no-fragment.d.ts.map +1 -0
  332. package/out/recipes/no-fragment.js +182 -0
  333. package/out/recipes/no-fragment.js.map +1 -0
  334. package/out/recipes/no-street-led.d.ts +24 -0
  335. package/out/recipes/no-street-led.d.ts.map +1 -0
  336. package/out/recipes/no-street-led.js +113 -0
  337. package/out/recipes/no-street-led.js.map +1 -0
  338. package/out/recipes/no-street.d.ts +18 -0
  339. package/out/recipes/no-street.d.ts.map +1 -0
  340. package/out/recipes/no-street.js +71 -0
  341. package/out/recipes/no-street.js.map +1 -0
  342. package/out/recipes/po-box-cedex.d.ts +38 -0
  343. package/out/recipes/po-box-cedex.d.ts.map +1 -0
  344. package/out/recipes/po-box-cedex.js +767 -0
  345. package/out/recipes/po-box-cedex.js.map +1 -0
  346. package/out/recipes/po-box.d.ts +17 -0
  347. package/out/recipes/po-box.d.ts.map +1 -0
  348. package/out/recipes/po-box.js +100 -0
  349. package/out/recipes/po-box.js.map +1 -0
  350. package/out/recipes/reviewed-postcode-tail.d.ts +47 -0
  351. package/out/recipes/reviewed-postcode-tail.d.ts.map +1 -0
  352. package/out/recipes/reviewed-postcode-tail.js +125 -0
  353. package/out/recipes/reviewed-postcode-tail.js.map +1 -0
  354. package/out/recipes/scaffold.d.ts +324 -0
  355. package/out/recipes/scaffold.d.ts.map +1 -0
  356. package/out/recipes/scaffold.js +186 -0
  357. package/out/recipes/scaffold.js.map +1 -0
  358. package/out/recipes/si-bare-village.d.ts +32 -0
  359. package/out/recipes/si-bare-village.d.ts.map +1 -0
  360. package/out/recipes/si-bare-village.js +88 -0
  361. package/out/recipes/si-bare-village.js.map +1 -0
  362. package/out/recipes/street-affix.d.ts +89 -0
  363. package/out/recipes/street-affix.d.ts.map +1 -0
  364. package/out/recipes/street-affix.js +563 -0
  365. package/out/recipes/street-affix.js.map +1 -0
  366. package/out/recipes/street-bare.d.ts +25 -0
  367. package/out/recipes/street-bare.d.ts.map +1 -0
  368. package/out/recipes/street-bare.js +86 -0
  369. package/out/recipes/street-bare.js.map +1 -0
  370. package/out/recipes/street.d.ts +15 -0
  371. package/out/recipes/street.d.ts.map +1 -0
  372. package/out/recipes/street.js +69 -0
  373. package/out/recipes/street.js.map +1 -0
  374. package/out/recipes/sub-venue-sources.d.ts +229 -0
  375. package/out/recipes/sub-venue-sources.d.ts.map +1 -0
  376. package/out/recipes/sub-venue-sources.js +653 -0
  377. package/out/recipes/sub-venue-sources.js.map +1 -0
  378. package/out/recipes/sub-venue.d.ts +269 -0
  379. package/out/recipes/sub-venue.d.ts.map +1 -0
  380. package/out/recipes/sub-venue.js +725 -0
  381. package/out/recipes/sub-venue.js.map +1 -0
  382. package/out/recipes/trailing-region.d.ts +74 -0
  383. package/out/recipes/trailing-region.d.ts.map +1 -0
  384. package/out/recipes/trailing-region.js +157 -0
  385. package/out/recipes/trailing-region.js.map +1 -0
  386. package/out/recipes/unit.d.ts +29 -0
  387. package/out/recipes/unit.d.ts.map +1 -0
  388. package/out/recipes/unit.js +230 -0
  389. package/out/recipes/unit.js.map +1 -0
  390. package/out/runner.d.ts +130 -0
  391. package/out/runner.d.ts.map +1 -0
  392. package/out/runner.js +185 -0
  393. package/out/runner.js.map +1 -0
  394. package/out/synthesizers/anchor-absorption.d.ts +63 -0
  395. package/out/synthesizers/anchor-absorption.d.ts.map +1 -0
  396. package/out/synthesizers/anchor-absorption.js +221 -0
  397. package/out/synthesizers/anchor-absorption.js.map +1 -0
  398. package/out/synthesizers/boundary-stress.d.ts +78 -0
  399. package/out/synthesizers/boundary-stress.d.ts.map +1 -0
  400. package/out/synthesizers/boundary-stress.js +455 -0
  401. package/out/synthesizers/boundary-stress.js.map +1 -0
  402. package/out/synthesizers/german.d.ts +115 -0
  403. package/out/synthesizers/german.d.ts.map +1 -0
  404. package/out/synthesizers/german.js +149 -0
  405. package/out/synthesizers/german.js.map +1 -0
  406. package/out/synthesizers/house-venue.d.ts +56 -0
  407. package/out/synthesizers/house-venue.d.ts.map +1 -0
  408. package/out/synthesizers/house-venue.js +247 -0
  409. package/out/synthesizers/house-venue.js.map +1 -0
  410. package/out/synthesizers/intersection.d.ts +52 -0
  411. package/out/synthesizers/intersection.d.ts.map +1 -0
  412. package/out/synthesizers/intersection.js +175 -0
  413. package/out/synthesizers/intersection.js.map +1 -0
  414. package/out/synthesizers/no-street.d.ts +72 -0
  415. package/out/synthesizers/no-street.d.ts.map +1 -0
  416. package/out/synthesizers/no-street.js +262 -0
  417. package/out/synthesizers/no-street.js.map +1 -0
  418. package/out/synthesizers/po-box.d.ts +108 -0
  419. package/out/synthesizers/po-box.d.ts.map +1 -0
  420. package/out/synthesizers/po-box.js +250 -0
  421. package/out/synthesizers/po-box.js.map +1 -0
  422. package/out/synthesizers/street.d.ts +54 -0
  423. package/out/synthesizers/street.d.ts.map +1 -0
  424. package/out/synthesizers/street.js +218 -0
  425. package/out/synthesizers/street.js.map +1 -0
  426. package/out/synthesizers/utils.d.ts +241 -0
  427. package/out/synthesizers/utils.d.ts.map +1 -0
  428. package/out/synthesizers/utils.js +776 -0
  429. package/out/synthesizers/utils.js.map +1 -0
  430. package/out/test-kit/corpus-recipe.d.ts +59 -0
  431. package/out/test-kit/corpus-recipe.d.ts.map +1 -0
  432. package/out/test-kit/corpus-recipe.js +39 -0
  433. package/out/test-kit/corpus-recipe.js.map +1 -0
  434. package/out/test-kit/index.d.ts +48 -0
  435. package/out/test-kit/index.d.ts.map +1 -0
  436. package/out/test-kit/index.js +78 -0
  437. package/out/test-kit/index.js.map +1 -0
  438. package/out/tools/align-slice.d.ts +7 -0
  439. package/out/tools/align-slice.d.ts.map +1 -0
  440. package/out/tools/align-slice.js +55 -0
  441. package/out/tools/align-slice.js.map +1 -0
  442. package/out/tools/audit.d.ts +29 -0
  443. package/out/tools/audit.d.ts.map +1 -0
  444. package/out/tools/audit.js +282 -0
  445. package/out/tools/audit.js.map +1 -0
  446. package/out/tools/corpus-stats.d.ts +44 -0
  447. package/out/tools/corpus-stats.d.ts.map +1 -0
  448. package/out/tools/corpus-stats.js +102 -0
  449. package/out/tools/corpus-stats.js.map +1 -0
  450. package/out/tools/fetch/ban.d.ts +31 -0
  451. package/out/tools/fetch/ban.d.ts.map +1 -0
  452. package/out/tools/fetch/ban.js +239 -0
  453. package/out/tools/fetch/ban.js.map +1 -0
  454. package/out/tools/fetch/download.d.ts +117 -0
  455. package/out/tools/fetch/download.d.ts.map +1 -0
  456. package/out/tools/fetch/download.js +160 -0
  457. package/out/tools/fetch/download.js.map +1 -0
  458. package/out/tools/fetch/geonames-dump.d.ts +91 -0
  459. package/out/tools/fetch/geonames-dump.d.ts.map +1 -0
  460. package/out/tools/fetch/geonames-dump.js +171 -0
  461. package/out/tools/fetch/geonames-dump.js.map +1 -0
  462. package/out/tools/fetch/geonames-postal.d.ts +76 -0
  463. package/out/tools/fetch/geonames-postal.d.ts.map +1 -0
  464. package/out/tools/fetch/geonames-postal.js +126 -0
  465. package/out/tools/fetch/geonames-postal.js.map +1 -0
  466. package/out/tools/fetch/hrsa.d.ts +18 -0
  467. package/out/tools/fetch/hrsa.d.ts.map +1 -0
  468. package/out/tools/fetch/hrsa.js +46 -0
  469. package/out/tools/fetch/hrsa.js.map +1 -0
  470. package/out/tools/fetch/imls-pls.d.ts +25 -0
  471. package/out/tools/fetch/imls-pls.d.ts.map +1 -0
  472. package/out/tools/fetch/imls-pls.js +108 -0
  473. package/out/tools/fetch/imls-pls.js.map +1 -0
  474. package/out/tools/fetch/index.d.ts +144 -0
  475. package/out/tools/fetch/index.d.ts.map +1 -0
  476. package/out/tools/fetch/index.js +143 -0
  477. package/out/tools/fetch/index.js.map +1 -0
  478. package/out/tools/fetch/nad.d.ts +70 -0
  479. package/out/tools/fetch/nad.d.ts.map +1 -0
  480. package/out/tools/fetch/nad.js +234 -0
  481. package/out/tools/fetch/nad.js.map +1 -0
  482. package/out/tools/fetch/nppes.d.ts +26 -0
  483. package/out/tools/fetch/nppes.d.ts.map +1 -0
  484. package/out/tools/fetch/nppes.js +126 -0
  485. package/out/tools/fetch/nppes.js.map +1 -0
  486. package/out/tools/fetch/openaddresses.d.ts +9 -0
  487. package/out/tools/fetch/openaddresses.d.ts.map +1 -0
  488. package/out/tools/fetch/openaddresses.js +279 -0
  489. package/out/tools/fetch/openaddresses.js.map +1 -0
  490. package/out/tools/fetch/ourairports.d.ts +45 -0
  491. package/out/tools/fetch/ourairports.d.ts.map +1 -0
  492. package/out/tools/fetch/ourairports.js +128 -0
  493. package/out/tools/fetch/ourairports.js.map +1 -0
  494. package/out/tools/fetch/ppd.d.ts +14 -0
  495. package/out/tools/fetch/ppd.d.ts.map +1 -0
  496. package/out/tools/fetch/ppd.js +85 -0
  497. package/out/tools/fetch/ppd.js.map +1 -0
  498. package/out/tools/fetch/state-hi-schools.d.ts +26 -0
  499. package/out/tools/fetch/state-hi-schools.d.ts.map +1 -0
  500. package/out/tools/fetch/state-hi-schools.js +112 -0
  501. package/out/tools/fetch/state-hi-schools.js.map +1 -0
  502. package/out/tools/fetch/state-sources.d.ts +26 -0
  503. package/out/tools/fetch/state-sources.d.ts.map +1 -0
  504. package/out/tools/fetch/state-sources.js +111 -0
  505. package/out/tools/fetch/state-sources.js.map +1 -0
  506. package/out/tools/fetch/tiger-full.d.ts +22 -0
  507. package/out/tools/fetch/tiger-full.d.ts.map +1 -0
  508. package/out/tools/fetch/tiger-full.js +217 -0
  509. package/out/tools/fetch/tiger-full.js.map +1 -0
  510. package/out/tools/fetch/wikidata-subvenue.d.ts +171 -0
  511. package/out/tools/fetch/wikidata-subvenue.d.ts.map +1 -0
  512. package/out/tools/fetch/wikidata-subvenue.js +274 -0
  513. package/out/tools/fetch/wikidata-subvenue.js.map +1 -0
  514. package/out/tools/gb-title-case.d.ts.map +1 -0
  515. package/out/tools/gb-title-case.js.map +1 -0
  516. package/out/tools/golden-expand.d.ts +90 -0
  517. package/out/tools/golden-expand.d.ts.map +1 -0
  518. package/out/tools/golden-expand.js +406 -0
  519. package/out/tools/golden-expand.js.map +1 -0
  520. package/out/tools/golden-promote.d.ts.map +1 -0
  521. package/out/tools/golden-promote.js +240 -0
  522. package/out/tools/golden-promote.js.map +1 -0
  523. package/out/tools/golden-relabel-street.d.ts +196 -0
  524. package/out/tools/golden-relabel-street.d.ts.map +1 -0
  525. package/out/tools/golden-relabel-street.js +440 -0
  526. package/out/tools/golden-relabel-street.js.map +1 -0
  527. package/out/tools/index.d.ts +28 -0
  528. package/out/tools/index.d.ts.map +1 -0
  529. package/out/tools/index.js +28 -0
  530. package/out/tools/index.js.map +1 -0
  531. package/out/tools/ingest-csv.d.ts.map +1 -0
  532. package/out/tools/ingest-csv.js +265 -0
  533. package/out/tools/ingest-csv.js.map +1 -0
  534. package/out/tools/jsonl-to-parquet.d.ts +61 -0
  535. package/out/tools/jsonl-to-parquet.d.ts.map +1 -0
  536. package/out/tools/jsonl-to-parquet.js +150 -0
  537. package/out/tools/jsonl-to-parquet.js.map +1 -0
  538. package/out/tools/lint-slice-vocab.d.ts +90 -0
  539. package/out/tools/lint-slice-vocab.d.ts.map +1 -0
  540. package/out/tools/lint-slice-vocab.js +267 -0
  541. package/out/tools/lint-slice-vocab.js.map +1 -0
  542. package/out/tools/lint-slice.d.ts +93 -0
  543. package/out/tools/lint-slice.d.ts.map +1 -0
  544. package/out/tools/lint-slice.js +322 -0
  545. package/out/tools/lint-slice.js.map +1 -0
  546. package/out/tools/overlay-manifest.d.ts +39 -0
  547. package/out/tools/overlay-manifest.d.ts.map +1 -0
  548. package/out/tools/overlay-manifest.js +90 -0
  549. package/out/tools/overlay-manifest.js.map +1 -0
  550. package/out/tools/overture-subvenue.d.ts +112 -0
  551. package/out/tools/overture-subvenue.d.ts.map +1 -0
  552. package/out/tools/overture-subvenue.js +139 -0
  553. package/out/tools/overture-subvenue.js.map +1 -0
  554. package/out/tools/postcode-triples.d.ts +174 -0
  555. package/out/tools/postcode-triples.d.ts.map +1 -0
  556. package/out/tools/postcode-triples.js +292 -0
  557. package/out/tools/postcode-triples.js.map +1 -0
  558. package/out/tools/slice-kryptonite.d.ts +32 -0
  559. package/out/tools/slice-kryptonite.d.ts.map +1 -0
  560. package/out/tools/slice-kryptonite.js +99 -0
  561. package/out/tools/slice-kryptonite.js.map +1 -0
  562. package/out/tools/slice-translit.d.ts +51 -0
  563. package/out/tools/slice-translit.d.ts.map +1 -0
  564. package/out/tools/slice-translit.js +166 -0
  565. package/out/tools/slice-translit.js.map +1 -0
  566. package/out/tools/sub-venue/harvest.d.ts +100 -0
  567. package/out/tools/sub-venue/harvest.d.ts.map +1 -0
  568. package/out/tools/sub-venue/harvest.js +168 -0
  569. package/out/tools/sub-venue/harvest.js.map +1 -0
  570. package/out/tools/sub-venue/head-nouns.d.ts +50 -0
  571. package/out/tools/sub-venue/head-nouns.d.ts.map +1 -0
  572. package/out/tools/sub-venue/head-nouns.js +213 -0
  573. package/out/tools/sub-venue/head-nouns.js.map +1 -0
  574. package/out/tools/sub-venue/surfaces.d.ts +45 -0
  575. package/out/tools/sub-venue/surfaces.d.ts.map +1 -0
  576. package/out/tools/sub-venue/surfaces.js +77 -0
  577. package/out/tools/sub-venue/surfaces.js.map +1 -0
  578. package/out/tools/sub-venue/table.d.ts +229 -0
  579. package/out/tools/sub-venue/table.d.ts.map +1 -0
  580. package/out/tools/sub-venue/table.js +108 -0
  581. package/out/tools/sub-venue/table.js.map +1 -0
  582. package/out/tools/sub-venue/wikidata.d.ts +26 -0
  583. package/out/tools/sub-venue/wikidata.d.ts.map +1 -0
  584. package/out/tools/sub-venue/wikidata.js +62 -0
  585. package/out/tools/sub-venue/wikidata.js.map +1 -0
  586. package/out/tools/sub-venue-lexicon.d.ts +156 -0
  587. package/out/tools/sub-venue-lexicon.d.ts.map +1 -0
  588. package/out/tools/sub-venue-lexicon.js +283 -0
  589. package/out/tools/sub-venue-lexicon.js.map +1 -0
  590. package/out/tools/sub-venue-promotions.d.ts +94 -0
  591. package/out/tools/sub-venue-promotions.d.ts.map +1 -0
  592. package/out/tools/sub-venue-promotions.js +266 -0
  593. package/out/tools/sub-venue-promotions.js.map +1 -0
  594. package/out/types.d.ts +221 -0
  595. package/out/types.d.ts.map +1 -0
  596. package/out/types.js.map +1 -0
  597. package/out/utils/align.d.ts +93 -0
  598. package/out/utils/align.d.ts.map +1 -0
  599. package/out/utils/align.js +234 -0
  600. package/out/utils/align.js.map +1 -0
  601. package/out/utils/golden.d.ts +85 -0
  602. package/out/utils/golden.d.ts.map +1 -0
  603. package/out/utils/golden.js +127 -0
  604. package/out/utils/golden.js.map +1 -0
  605. package/out/utils/index.d.ts +14 -0
  606. package/out/utils/index.d.ts.map +1 -0
  607. package/out/utils/index.js +14 -0
  608. package/out/utils/index.js.map +1 -0
  609. package/out/utils/license.d.ts.map +1 -0
  610. package/out/utils/license.js +47 -0
  611. package/out/utils/license.js.map +1 -0
  612. package/out/utils/parquet.d.ts +178 -0
  613. package/out/utils/parquet.d.ts.map +1 -0
  614. package/out/utils/parquet.js +371 -0
  615. package/out/utils/parquet.js.map +1 -0
  616. package/out/utils/slice-stats.d.ts +52 -0
  617. package/out/utils/slice-stats.d.ts.map +1 -0
  618. package/out/utils/slice-stats.js +58 -0
  619. package/out/utils/slice-stats.js.map +1 -0
  620. package/out/utils/split.d.ts +128 -0
  621. package/out/utils/split.d.ts.map +1 -0
  622. package/out/utils/split.js +204 -0
  623. package/out/utils/split.js.map +1 -0
  624. package/out/utils/tokenize.d.ts +64 -0
  625. package/out/utils/tokenize.d.ts.map +1 -0
  626. package/out/utils/tokenize.js +82 -0
  627. package/out/utils/tokenize.js.map +1 -0
  628. package/out/utils/wof-json.d.ts +113 -0
  629. package/out/utils/wof-json.d.ts.map +1 -0
  630. package/out/utils/wof-json.js +173 -0
  631. package/out/utils/wof-json.js.map +1 -0
  632. package/package.json +350 -65
  633. package/out/src/adapters/ban/adapter.d.ts +0 -44
  634. package/out/src/adapters/ban/adapter.d.ts.map +0 -1
  635. package/out/src/adapters/ban/adapter.js +0 -148
  636. package/out/src/adapters/ban/adapter.js.map +0 -1
  637. package/out/src/adapters/ban/street-decompose.d.ts.map +0 -1
  638. package/out/src/adapters/ban/street-decompose.js +0 -75
  639. package/out/src/adapters/ban/street-decompose.js.map +0 -1
  640. package/out/src/adapters/fcc-bdc/adapter.d.ts +0 -68
  641. package/out/src/adapters/fcc-bdc/adapter.d.ts.map +0 -1
  642. package/out/src/adapters/fcc-bdc/adapter.js +0 -144
  643. package/out/src/adapters/fcc-bdc/adapter.js.map +0 -1
  644. package/out/src/adapters/geonames/adapter.d.ts +0 -46
  645. package/out/src/adapters/geonames/adapter.d.ts.map +0 -1
  646. package/out/src/adapters/geonames/adapter.js +0 -176
  647. package/out/src/adapters/geonames/adapter.js.map +0 -1
  648. package/out/src/adapters/geonames-postal/adapter.d.ts +0 -41
  649. package/out/src/adapters/geonames-postal/adapter.d.ts.map +0 -1
  650. package/out/src/adapters/geonames-postal/adapter.js +0 -104
  651. package/out/src/adapters/geonames-postal/adapter.js.map +0 -1
  652. package/out/src/adapters/gnaf/adapter.d.ts +0 -49
  653. package/out/src/adapters/gnaf/adapter.d.ts.map +0 -1
  654. package/out/src/adapters/gnaf/adapter.js +0 -124
  655. package/out/src/adapters/gnaf/adapter.js.map +0 -1
  656. package/out/src/adapters/gnaf/assemble.d.ts +0 -65
  657. package/out/src/adapters/gnaf/assemble.d.ts.map +0 -1
  658. package/out/src/adapters/gnaf/assemble.js +0 -154
  659. package/out/src/adapters/gnaf/assemble.js.map +0 -1
  660. package/out/src/adapters/index.d.ts +0 -51
  661. package/out/src/adapters/index.d.ts.map +0 -1
  662. package/out/src/adapters/index.js +0 -95
  663. package/out/src/adapters/index.js.map +0 -1
  664. package/out/src/adapters/openaddresses/adapter.d.ts +0 -72
  665. package/out/src/adapters/openaddresses/adapter.d.ts.map +0 -1
  666. package/out/src/adapters/openaddresses/adapter.js +0 -186
  667. package/out/src/adapters/openaddresses/adapter.js.map +0 -1
  668. package/out/src/adapters/overture/adapter.d.ts +0 -48
  669. package/out/src/adapters/overture/adapter.d.ts.map +0 -1
  670. package/out/src/adapters/overture/adapter.js +0 -125
  671. package/out/src/adapters/overture/adapter.js.map +0 -1
  672. package/out/src/adapters/state-hi-schools/adapter.d.ts +0 -47
  673. package/out/src/adapters/state-hi-schools/adapter.d.ts.map +0 -1
  674. package/out/src/adapters/state-hi-schools/adapter.js +0 -132
  675. package/out/src/adapters/state-hi-schools/adapter.js.map +0 -1
  676. package/out/src/adapters/state-ia-contractors/adapter.d.ts +0 -34
  677. package/out/src/adapters/state-ia-contractors/adapter.d.ts.map +0 -1
  678. package/out/src/adapters/state-ia-contractors/adapter.js +0 -106
  679. package/out/src/adapters/state-ia-contractors/adapter.js.map +0 -1
  680. package/out/src/adapters/state-ny-notaries/adapter.d.ts +0 -32
  681. package/out/src/adapters/state-ny-notaries/adapter.d.ts.map +0 -1
  682. package/out/src/adapters/state-ny-notaries/adapter.js +0 -125
  683. package/out/src/adapters/state-ny-notaries/adapter.js.map +0 -1
  684. package/out/src/adapters/state-tx-notaries/adapter.d.ts +0 -33
  685. package/out/src/adapters/state-tx-notaries/adapter.d.ts.map +0 -1
  686. package/out/src/adapters/state-tx-notaries/adapter.js +0 -120
  687. package/out/src/adapters/state-tx-notaries/adapter.js.map +0 -1
  688. package/out/src/adapters/synth-po-box/adapter.d.ts +0 -67
  689. package/out/src/adapters/synth-po-box/adapter.d.ts.map +0 -1
  690. package/out/src/adapters/synth-po-box/adapter.js +0 -140
  691. package/out/src/adapters/synth-po-box/adapter.js.map +0 -1
  692. package/out/src/adapters/tiger/adapter.d.ts +0 -55
  693. package/out/src/adapters/tiger/adapter.d.ts.map +0 -1
  694. package/out/src/adapters/tiger/adapter.js +0 -201
  695. package/out/src/adapters/tiger/adapter.js.map +0 -1
  696. package/out/src/adapters/tiger/street-decompose.d.ts.map +0 -1
  697. package/out/src/adapters/tiger/street-decompose.js +0 -90
  698. package/out/src/adapters/tiger/street-decompose.js.map +0 -1
  699. package/out/src/adapters/usgov-hrsa-fqhc/adapter.d.ts +0 -47
  700. package/out/src/adapters/usgov-hrsa-fqhc/adapter.d.ts.map +0 -1
  701. package/out/src/adapters/usgov-hrsa-fqhc/adapter.js +0 -138
  702. package/out/src/adapters/usgov-hrsa-fqhc/adapter.js.map +0 -1
  703. package/out/src/adapters/usgov-imls-pls/adapter.d.ts +0 -36
  704. package/out/src/adapters/usgov-imls-pls/adapter.d.ts.map +0 -1
  705. package/out/src/adapters/usgov-imls-pls/adapter.js +0 -110
  706. package/out/src/adapters/usgov-imls-pls/adapter.js.map +0 -1
  707. package/out/src/adapters/usgov-irs-bmf/adapter.d.ts +0 -37
  708. package/out/src/adapters/usgov-irs-bmf/adapter.d.ts.map +0 -1
  709. package/out/src/adapters/usgov-irs-bmf/adapter.js +0 -123
  710. package/out/src/adapters/usgov-irs-bmf/adapter.js.map +0 -1
  711. package/out/src/adapters/usgov-nad/adapter.d.ts +0 -48
  712. package/out/src/adapters/usgov-nad/adapter.d.ts.map +0 -1
  713. package/out/src/adapters/usgov-nad/adapter.js +0 -252
  714. package/out/src/adapters/usgov-nad/adapter.js.map +0 -1
  715. package/out/src/adapters/usgov-nppes/adapter.d.ts +0 -39
  716. package/out/src/adapters/usgov-nppes/adapter.d.ts.map +0 -1
  717. package/out/src/adapters/usgov-nppes/adapter.js +0 -116
  718. package/out/src/adapters/usgov-nppes/adapter.js.map +0 -1
  719. package/out/src/adapters/usgov-samhsa-treatment-locator/adapter.d.ts +0 -46
  720. package/out/src/adapters/usgov-samhsa-treatment-locator/adapter.d.ts.map +0 -1
  721. package/out/src/adapters/usgov-samhsa-treatment-locator/adapter.js +0 -155
  722. package/out/src/adapters/usgov-samhsa-treatment-locator/adapter.js.map +0 -1
  723. package/out/src/adapters/utils/index.d.ts +0 -144
  724. package/out/src/adapters/utils/index.d.ts.map +0 -1
  725. package/out/src/adapters/utils/index.js +0 -151
  726. package/out/src/adapters/utils/index.js.map +0 -1
  727. package/out/src/adapters/wof-admin-jp/adapter.d.ts +0 -65
  728. package/out/src/adapters/wof-admin-jp/adapter.d.ts.map +0 -1
  729. package/out/src/adapters/wof-admin-jp/adapter.js +0 -164
  730. package/out/src/adapters/wof-admin-jp/adapter.js.map +0 -1
  731. package/out/src/adapters/wof-admin-json/adapter.d.ts +0 -93
  732. package/out/src/adapters/wof-admin-json/adapter.d.ts.map +0 -1
  733. package/out/src/adapters/wof-admin-json/adapter.js +0 -248
  734. package/out/src/adapters/wof-admin-json/adapter.js.map +0 -1
  735. package/out/src/adapters/wof-postalcode-json/adapter.d.ts +0 -70
  736. package/out/src/adapters/wof-postalcode-json/adapter.d.ts.map +0 -1
  737. package/out/src/adapters/wof-postalcode-json/adapter.js +0 -185
  738. package/out/src/adapters/wof-postalcode-json/adapter.js.map +0 -1
  739. package/out/src/build.d.ts +0 -131
  740. package/out/src/build.d.ts.map +0 -1
  741. package/out/src/build.js +0 -248
  742. package/out/src/build.js.map +0 -1
  743. package/out/src/codex/us-fips-state.d.ts.map +0 -1
  744. package/out/src/codex/us-fips-state.js.map +0 -1
  745. package/out/src/index.d.ts +0 -14
  746. package/out/src/index.d.ts.map +0 -1
  747. package/out/src/index.js +0 -14
  748. package/out/src/index.js.map +0 -1
  749. package/out/src/name-prone-us-suffixes.d.ts +0 -12
  750. package/out/src/name-prone-us-suffixes.d.ts.map +0 -1
  751. package/out/src/name-prone-us-suffixes.js +0 -12
  752. package/out/src/name-prone-us-suffixes.js.map +0 -1
  753. package/out/src/parquet-wrapper/index.d.ts +0 -9
  754. package/out/src/parquet-wrapper/index.d.ts.map +0 -1
  755. package/out/src/parquet-wrapper/index.js +0 -9
  756. package/out/src/parquet-wrapper/index.js.map +0 -1
  757. package/out/src/parquet-wrapper/reader.d.ts +0 -34
  758. package/out/src/parquet-wrapper/reader.d.ts.map +0 -1
  759. package/out/src/parquet-wrapper/reader.js +0 -64
  760. package/out/src/parquet-wrapper/reader.js.map +0 -1
  761. package/out/src/parquet-wrapper/schema.d.ts +0 -49
  762. package/out/src/parquet-wrapper/schema.d.ts.map +0 -1
  763. package/out/src/parquet-wrapper/schema.js +0 -55
  764. package/out/src/parquet-wrapper/schema.js.map +0 -1
  765. package/out/src/parquet-wrapper/writer.d.ts +0 -46
  766. package/out/src/parquet-wrapper/writer.d.ts.map +0 -1
  767. package/out/src/parquet-wrapper/writer.js +0 -76
  768. package/out/src/parquet-wrapper/writer.js.map +0 -1
  769. package/out/src/runner.d.ts +0 -126
  770. package/out/src/runner.d.ts.map +0 -1
  771. package/out/src/runner.js +0 -189
  772. package/out/src/runner.js.map +0 -1
  773. package/out/src/shard-recipes/anchor-absorption.d.ts +0 -20
  774. package/out/src/shard-recipes/anchor-absorption.d.ts.map +0 -1
  775. package/out/src/shard-recipes/anchor-absorption.js +0 -83
  776. package/out/src/shard-recipes/anchor-absorption.js.map +0 -1
  777. package/out/src/shard-recipes/boundary-stress.d.ts +0 -20
  778. package/out/src/shard-recipes/boundary-stress.d.ts.map +0 -1
  779. package/out/src/shard-recipes/boundary-stress.js +0 -83
  780. package/out/src/shard-recipes/boundary-stress.js.map +0 -1
  781. package/out/src/shard-recipes/country-balanced.d.ts +0 -32
  782. package/out/src/shard-recipes/country-balanced.d.ts.map +0 -1
  783. package/out/src/shard-recipes/country-balanced.js +0 -405
  784. package/out/src/shard-recipes/country-balanced.js.map +0 -1
  785. package/out/src/shard-recipes/cz-pcfirst-preposition.d.ts +0 -22
  786. package/out/src/shard-recipes/cz-pcfirst-preposition.d.ts.map +0 -1
  787. package/out/src/shard-recipes/cz-pcfirst-preposition.js +0 -82
  788. package/out/src/shard-recipes/cz-pcfirst-preposition.js.map +0 -1
  789. package/out/src/shard-recipes/fr-admin-split.d.ts +0 -38
  790. package/out/src/shard-recipes/fr-admin-split.d.ts.map +0 -1
  791. package/out/src/shard-recipes/fr-admin-split.js +0 -187
  792. package/out/src/shard-recipes/fr-admin-split.js.map +0 -1
  793. package/out/src/shard-recipes/fr-bare-street.d.ts +0 -28
  794. package/out/src/shard-recipes/fr-bare-street.d.ts.map +0 -1
  795. package/out/src/shard-recipes/fr-bare-street.js +0 -82
  796. package/out/src/shard-recipes/fr-bare-street.js.map +0 -1
  797. package/out/src/shard-recipes/fr-fragment.d.ts +0 -77
  798. package/out/src/shard-recipes/fr-fragment.d.ts.map +0 -1
  799. package/out/src/shard-recipes/fr-fragment.js +0 -276
  800. package/out/src/shard-recipes/fr-fragment.js.map +0 -1
  801. package/out/src/shard-recipes/fr-lieudit.d.ts +0 -32
  802. package/out/src/shard-recipes/fr-lieudit.d.ts.map +0 -1
  803. package/out/src/shard-recipes/fr-lieudit.js +0 -225
  804. package/out/src/shard-recipes/fr-lieudit.js.map +0 -1
  805. package/out/src/shard-recipes/fr-order.d.ts +0 -38
  806. package/out/src/shard-recipes/fr-order.d.ts.map +0 -1
  807. package/out/src/shard-recipes/fr-order.js +0 -207
  808. package/out/src/shard-recipes/fr-order.js.map +0 -1
  809. package/out/src/shard-recipes/german.d.ts +0 -23
  810. package/out/src/shard-recipes/german.d.ts.map +0 -1
  811. package/out/src/shard-recipes/german.js +0 -132
  812. package/out/src/shard-recipes/german.js.map +0 -1
  813. package/out/src/shard-recipes/house-venue.d.ts +0 -18
  814. package/out/src/shard-recipes/house-venue.d.ts.map +0 -1
  815. package/out/src/shard-recipes/house-venue.js +0 -74
  816. package/out/src/shard-recipes/house-venue.js.map +0 -1
  817. package/out/src/shard-recipes/index.d.ts +0 -24
  818. package/out/src/shard-recipes/index.d.ts.map +0 -1
  819. package/out/src/shard-recipes/index.js +0 -83
  820. package/out/src/shard-recipes/index.js.map +0 -1
  821. package/out/src/shard-recipes/intersection.d.ts +0 -42
  822. package/out/src/shard-recipes/intersection.d.ts.map +0 -1
  823. package/out/src/shard-recipes/intersection.js +0 -460
  824. package/out/src/shard-recipes/intersection.js.map +0 -1
  825. package/out/src/shard-recipes/locale.d.ts +0 -135
  826. package/out/src/shard-recipes/locale.d.ts.map +0 -1
  827. package/out/src/shard-recipes/locale.js +0 -458
  828. package/out/src/shard-recipes/locale.js.map +0 -1
  829. package/out/src/shard-recipes/nl-postcode.d.ts +0 -26
  830. package/out/src/shard-recipes/nl-postcode.d.ts.map +0 -1
  831. package/out/src/shard-recipes/nl-postcode.js +0 -102
  832. package/out/src/shard-recipes/nl-postcode.js.map +0 -1
  833. package/out/src/shard-recipes/no-fragment.d.ts +0 -43
  834. package/out/src/shard-recipes/no-fragment.d.ts.map +0 -1
  835. package/out/src/shard-recipes/no-fragment.js +0 -188
  836. package/out/src/shard-recipes/no-fragment.js.map +0 -1
  837. package/out/src/shard-recipes/no-street-led.d.ts +0 -24
  838. package/out/src/shard-recipes/no-street-led.d.ts.map +0 -1
  839. package/out/src/shard-recipes/no-street-led.js +0 -121
  840. package/out/src/shard-recipes/no-street-led.js.map +0 -1
  841. package/out/src/shard-recipes/no-street.d.ts +0 -18
  842. package/out/src/shard-recipes/no-street.d.ts.map +0 -1
  843. package/out/src/shard-recipes/no-street.js +0 -72
  844. package/out/src/shard-recipes/no-street.js.map +0 -1
  845. package/out/src/shard-recipes/po-box-cedex.d.ts +0 -38
  846. package/out/src/shard-recipes/po-box-cedex.d.ts.map +0 -1
  847. package/out/src/shard-recipes/po-box-cedex.js +0 -726
  848. package/out/src/shard-recipes/po-box-cedex.js.map +0 -1
  849. package/out/src/shard-recipes/po-box.d.ts +0 -17
  850. package/out/src/shard-recipes/po-box.d.ts.map +0 -1
  851. package/out/src/shard-recipes/po-box.js +0 -101
  852. package/out/src/shard-recipes/po-box.js.map +0 -1
  853. package/out/src/shard-recipes/scaffold.d.ts +0 -217
  854. package/out/src/shard-recipes/scaffold.d.ts.map +0 -1
  855. package/out/src/shard-recipes/scaffold.js +0 -138
  856. package/out/src/shard-recipes/scaffold.js.map +0 -1
  857. package/out/src/shard-recipes/si-bare-village.d.ts +0 -32
  858. package/out/src/shard-recipes/si-bare-village.d.ts.map +0 -1
  859. package/out/src/shard-recipes/si-bare-village.js +0 -88
  860. package/out/src/shard-recipes/si-bare-village.js.map +0 -1
  861. package/out/src/shard-recipes/street-affix.d.ts +0 -89
  862. package/out/src/shard-recipes/street-affix.d.ts.map +0 -1
  863. package/out/src/shard-recipes/street-affix.js +0 -578
  864. package/out/src/shard-recipes/street-affix.js.map +0 -1
  865. package/out/src/shard-recipes/street-bare.d.ts +0 -25
  866. package/out/src/shard-recipes/street-bare.d.ts.map +0 -1
  867. package/out/src/shard-recipes/street-bare.js +0 -86
  868. package/out/src/shard-recipes/street-bare.js.map +0 -1
  869. package/out/src/shard-recipes/street.d.ts +0 -15
  870. package/out/src/shard-recipes/street.d.ts.map +0 -1
  871. package/out/src/shard-recipes/street.js +0 -69
  872. package/out/src/shard-recipes/street.js.map +0 -1
  873. package/out/src/shard-recipes/sub-venue-sources.d.ts +0 -228
  874. package/out/src/shard-recipes/sub-venue-sources.d.ts.map +0 -1
  875. package/out/src/shard-recipes/sub-venue-sources.js +0 -664
  876. package/out/src/shard-recipes/sub-venue-sources.js.map +0 -1
  877. package/out/src/shard-recipes/sub-venue.d.ts +0 -269
  878. package/out/src/shard-recipes/sub-venue.d.ts.map +0 -1
  879. package/out/src/shard-recipes/sub-venue.js +0 -709
  880. package/out/src/shard-recipes/sub-venue.js.map +0 -1
  881. package/out/src/shard-recipes/unit.d.ts +0 -29
  882. package/out/src/shard-recipes/unit.d.ts.map +0 -1
  883. package/out/src/shard-recipes/unit.js +0 -243
  884. package/out/src/shard-recipes/unit.js.map +0 -1
  885. package/out/src/synthesizers/anchor-absorption.d.ts +0 -63
  886. package/out/src/synthesizers/anchor-absorption.d.ts.map +0 -1
  887. package/out/src/synthesizers/anchor-absorption.js +0 -223
  888. package/out/src/synthesizers/anchor-absorption.js.map +0 -1
  889. package/out/src/synthesizers/boundary-stress.d.ts +0 -78
  890. package/out/src/synthesizers/boundary-stress.d.ts.map +0 -1
  891. package/out/src/synthesizers/boundary-stress.js +0 -455
  892. package/out/src/synthesizers/boundary-stress.js.map +0 -1
  893. package/out/src/synthesizers/german.d.ts +0 -107
  894. package/out/src/synthesizers/german.d.ts.map +0 -1
  895. package/out/src/synthesizers/german.js +0 -148
  896. package/out/src/synthesizers/german.js.map +0 -1
  897. package/out/src/synthesizers/house-venue.d.ts +0 -56
  898. package/out/src/synthesizers/house-venue.d.ts.map +0 -1
  899. package/out/src/synthesizers/house-venue.js +0 -253
  900. package/out/src/synthesizers/house-venue.js.map +0 -1
  901. package/out/src/synthesizers/intersection.d.ts +0 -52
  902. package/out/src/synthesizers/intersection.d.ts.map +0 -1
  903. package/out/src/synthesizers/intersection.js +0 -175
  904. package/out/src/synthesizers/intersection.js.map +0 -1
  905. package/out/src/synthesizers/no-street.d.ts +0 -72
  906. package/out/src/synthesizers/no-street.d.ts.map +0 -1
  907. package/out/src/synthesizers/no-street.js +0 -282
  908. package/out/src/synthesizers/no-street.js.map +0 -1
  909. package/out/src/synthesizers/po-box.d.ts +0 -104
  910. package/out/src/synthesizers/po-box.d.ts.map +0 -1
  911. package/out/src/synthesizers/po-box.js +0 -266
  912. package/out/src/synthesizers/po-box.js.map +0 -1
  913. package/out/src/synthesizers/street.d.ts +0 -54
  914. package/out/src/synthesizers/street.d.ts.map +0 -1
  915. package/out/src/synthesizers/street.js +0 -220
  916. package/out/src/synthesizers/street.js.map +0 -1
  917. package/out/src/synthesizers/utils.d.ts +0 -203
  918. package/out/src/synthesizers/utils.d.ts.map +0 -1
  919. package/out/src/synthesizers/utils.js +0 -707
  920. package/out/src/synthesizers/utils.js.map +0 -1
  921. package/out/src/tools/align-shard.d.ts +0 -8
  922. package/out/src/tools/align-shard.d.ts.map +0 -1
  923. package/out/src/tools/align-shard.js +0 -56
  924. package/out/src/tools/align-shard.js.map +0 -1
  925. package/out/src/tools/audit.d.ts +0 -28
  926. package/out/src/tools/audit.d.ts.map +0 -1
  927. package/out/src/tools/audit.js +0 -285
  928. package/out/src/tools/audit.js.map +0 -1
  929. package/out/src/tools/corpus-stats.d.ts +0 -44
  930. package/out/src/tools/corpus-stats.d.ts.map +0 -1
  931. package/out/src/tools/corpus-stats.js +0 -138
  932. package/out/src/tools/corpus-stats.js.map +0 -1
  933. package/out/src/tools/fetch/ban.d.ts +0 -31
  934. package/out/src/tools/fetch/ban.d.ts.map +0 -1
  935. package/out/src/tools/fetch/ban.js +0 -255
  936. package/out/src/tools/fetch/ban.js.map +0 -1
  937. package/out/src/tools/fetch/download.d.ts +0 -69
  938. package/out/src/tools/fetch/download.d.ts.map +0 -1
  939. package/out/src/tools/fetch/download.js +0 -100
  940. package/out/src/tools/fetch/download.js.map +0 -1
  941. package/out/src/tools/fetch/hrsa.d.ts +0 -18
  942. package/out/src/tools/fetch/hrsa.d.ts.map +0 -1
  943. package/out/src/tools/fetch/hrsa.js +0 -46
  944. package/out/src/tools/fetch/hrsa.js.map +0 -1
  945. package/out/src/tools/fetch/imls-pls.d.ts +0 -25
  946. package/out/src/tools/fetch/imls-pls.d.ts.map +0 -1
  947. package/out/src/tools/fetch/imls-pls.js +0 -108
  948. package/out/src/tools/fetch/imls-pls.js.map +0 -1
  949. package/out/src/tools/fetch/index.d.ts +0 -133
  950. package/out/src/tools/fetch/index.d.ts.map +0 -1
  951. package/out/src/tools/fetch/index.js +0 -132
  952. package/out/src/tools/fetch/index.js.map +0 -1
  953. package/out/src/tools/fetch/nad.d.ts +0 -70
  954. package/out/src/tools/fetch/nad.d.ts.map +0 -1
  955. package/out/src/tools/fetch/nad.js +0 -225
  956. package/out/src/tools/fetch/nad.js.map +0 -1
  957. package/out/src/tools/fetch/nppes.d.ts +0 -26
  958. package/out/src/tools/fetch/nppes.d.ts.map +0 -1
  959. package/out/src/tools/fetch/nppes.js +0 -124
  960. package/out/src/tools/fetch/nppes.js.map +0 -1
  961. package/out/src/tools/fetch/openaddresses.d.ts +0 -61
  962. package/out/src/tools/fetch/openaddresses.d.ts.map +0 -1
  963. package/out/src/tools/fetch/openaddresses.js +0 -316
  964. package/out/src/tools/fetch/openaddresses.js.map +0 -1
  965. package/out/src/tools/fetch/ourairports.d.ts +0 -45
  966. package/out/src/tools/fetch/ourairports.d.ts.map +0 -1
  967. package/out/src/tools/fetch/ourairports.js +0 -123
  968. package/out/src/tools/fetch/ourairports.js.map +0 -1
  969. package/out/src/tools/fetch/ppd.d.ts +0 -18
  970. package/out/src/tools/fetch/ppd.d.ts.map +0 -1
  971. package/out/src/tools/fetch/ppd.js +0 -100
  972. package/out/src/tools/fetch/ppd.js.map +0 -1
  973. package/out/src/tools/fetch/state-hi-schools.d.ts +0 -25
  974. package/out/src/tools/fetch/state-hi-schools.d.ts.map +0 -1
  975. package/out/src/tools/fetch/state-hi-schools.js +0 -178
  976. package/out/src/tools/fetch/state-hi-schools.js.map +0 -1
  977. package/out/src/tools/fetch/state-sources.d.ts +0 -22
  978. package/out/src/tools/fetch/state-sources.d.ts.map +0 -1
  979. package/out/src/tools/fetch/state-sources.js +0 -115
  980. package/out/src/tools/fetch/state-sources.js.map +0 -1
  981. package/out/src/tools/fetch/tiger-full.d.ts +0 -42
  982. package/out/src/tools/fetch/tiger-full.d.ts.map +0 -1
  983. package/out/src/tools/fetch/tiger-full.js +0 -254
  984. package/out/src/tools/fetch/tiger-full.js.map +0 -1
  985. package/out/src/tools/fetch/wikidata-subvenue.d.ts +0 -171
  986. package/out/src/tools/fetch/wikidata-subvenue.d.ts.map +0 -1
  987. package/out/src/tools/fetch/wikidata-subvenue.js +0 -275
  988. package/out/src/tools/fetch/wikidata-subvenue.js.map +0 -1
  989. package/out/src/tools/gb-title-case.d.ts.map +0 -1
  990. package/out/src/tools/gb-title-case.js.map +0 -1
  991. package/out/src/tools/golden-expand.d.ts +0 -90
  992. package/out/src/tools/golden-expand.d.ts.map +0 -1
  993. package/out/src/tools/golden-expand.js +0 -404
  994. package/out/src/tools/golden-expand.js.map +0 -1
  995. package/out/src/tools/golden-promote.d.ts.map +0 -1
  996. package/out/src/tools/golden-promote.js +0 -244
  997. package/out/src/tools/golden-promote.js.map +0 -1
  998. package/out/src/tools/golden-relabel-street.d.ts +0 -196
  999. package/out/src/tools/golden-relabel-street.d.ts.map +0 -1
  1000. package/out/src/tools/golden-relabel-street.js +0 -440
  1001. package/out/src/tools/golden-relabel-street.js.map +0 -1
  1002. package/out/src/tools/index.d.ts +0 -28
  1003. package/out/src/tools/index.d.ts.map +0 -1
  1004. package/out/src/tools/index.js +0 -28
  1005. package/out/src/tools/index.js.map +0 -1
  1006. package/out/src/tools/ingest-csv.d.ts.map +0 -1
  1007. package/out/src/tools/ingest-csv.js +0 -307
  1008. package/out/src/tools/ingest-csv.js.map +0 -1
  1009. package/out/src/tools/jsonl-to-parquet.d.ts +0 -61
  1010. package/out/src/tools/jsonl-to-parquet.d.ts.map +0 -1
  1011. package/out/src/tools/jsonl-to-parquet.js +0 -164
  1012. package/out/src/tools/jsonl-to-parquet.js.map +0 -1
  1013. package/out/src/tools/lint-shard-vocab.d.ts +0 -90
  1014. package/out/src/tools/lint-shard-vocab.d.ts.map +0 -1
  1015. package/out/src/tools/lint-shard-vocab.js +0 -281
  1016. package/out/src/tools/lint-shard-vocab.js.map +0 -1
  1017. package/out/src/tools/lint-shard.d.ts +0 -93
  1018. package/out/src/tools/lint-shard.d.ts.map +0 -1
  1019. package/out/src/tools/lint-shard.js +0 -354
  1020. package/out/src/tools/lint-shard.js.map +0 -1
  1021. package/out/src/tools/overlay-manifest.d.ts +0 -35
  1022. package/out/src/tools/overlay-manifest.d.ts.map +0 -1
  1023. package/out/src/tools/overlay-manifest.js +0 -88
  1024. package/out/src/tools/overlay-manifest.js.map +0 -1
  1025. package/out/src/tools/overture-subvenue.d.ts +0 -112
  1026. package/out/src/tools/overture-subvenue.d.ts.map +0 -1
  1027. package/out/src/tools/overture-subvenue.js +0 -144
  1028. package/out/src/tools/overture-subvenue.js.map +0 -1
  1029. package/out/src/tools/shard-kryptonite.d.ts +0 -32
  1030. package/out/src/tools/shard-kryptonite.d.ts.map +0 -1
  1031. package/out/src/tools/shard-kryptonite.js +0 -101
  1032. package/out/src/tools/shard-kryptonite.js.map +0 -1
  1033. package/out/src/tools/shard-translit.d.ts +0 -51
  1034. package/out/src/tools/shard-translit.d.ts.map +0 -1
  1035. package/out/src/tools/shard-translit.js +0 -197
  1036. package/out/src/tools/shard-translit.js.map +0 -1
  1037. package/out/src/tools/sub-venue-lexicon.d.ts +0 -507
  1038. package/out/src/tools/sub-venue-lexicon.d.ts.map +0 -1
  1039. package/out/src/tools/sub-venue-lexicon.js +0 -817
  1040. package/out/src/tools/sub-venue-lexicon.js.map +0 -1
  1041. package/out/src/tools/sub-venue-promotions.d.ts +0 -94
  1042. package/out/src/tools/sub-venue-promotions.d.ts.map +0 -1
  1043. package/out/src/tools/sub-venue-promotions.js +0 -266
  1044. package/out/src/tools/sub-venue-promotions.js.map +0 -1
  1045. package/out/src/types.d.ts +0 -221
  1046. package/out/src/types.d.ts.map +0 -1
  1047. package/out/src/types.js.map +0 -1
  1048. package/out/src/utils/align.d.ts +0 -93
  1049. package/out/src/utils/align.d.ts.map +0 -1
  1050. package/out/src/utils/align.js +0 -234
  1051. package/out/src/utils/align.js.map +0 -1
  1052. package/out/src/utils/golden.d.ts +0 -69
  1053. package/out/src/utils/golden.d.ts.map +0 -1
  1054. package/out/src/utils/golden.js +0 -127
  1055. package/out/src/utils/golden.js.map +0 -1
  1056. package/out/src/utils/index.d.ts +0 -14
  1057. package/out/src/utils/index.d.ts.map +0 -1
  1058. package/out/src/utils/index.js +0 -14
  1059. package/out/src/utils/index.js.map +0 -1
  1060. package/out/src/utils/license.d.ts.map +0 -1
  1061. package/out/src/utils/license.js +0 -47
  1062. package/out/src/utils/license.js.map +0 -1
  1063. package/out/src/utils/parquet.d.ts +0 -143
  1064. package/out/src/utils/parquet.d.ts.map +0 -1
  1065. package/out/src/utils/parquet.js +0 -258
  1066. package/out/src/utils/parquet.js.map +0 -1
  1067. package/out/src/utils/split.d.ts +0 -127
  1068. package/out/src/utils/split.d.ts.map +0 -1
  1069. package/out/src/utils/split.js +0 -204
  1070. package/out/src/utils/split.js.map +0 -1
  1071. package/out/src/utils/tokenize.d.ts +0 -56
  1072. package/out/src/utils/tokenize.d.ts.map +0 -1
  1073. package/out/src/utils/tokenize.js +0 -48
  1074. package/out/src/utils/tokenize.js.map +0 -1
  1075. package/out/src/utils/wof-json.d.ts +0 -109
  1076. package/out/src/utils/wof-json.d.ts.map +0 -1
  1077. package/out/src/utils/wof-json.js +0 -173
  1078. package/out/src/utils/wof-json.js.map +0 -1
  1079. package/src/adapters/ban/adapter.ts +0 -189
  1080. package/src/adapters/ban/street-decompose.ts +0 -96
  1081. package/src/adapters/fcc-bdc/adapter.ts +0 -173
  1082. package/src/adapters/geonames/adapter.ts +0 -199
  1083. package/src/adapters/geonames-postal/adapter.ts +0 -118
  1084. package/src/adapters/gnaf/adapter.ts +0 -148
  1085. package/src/adapters/gnaf/assemble.ts +0 -226
  1086. package/src/adapters/index.ts +0 -149
  1087. package/src/adapters/openaddresses/adapter.ts +0 -250
  1088. package/src/adapters/overture/adapter.ts +0 -161
  1089. package/src/adapters/state-hi-schools/adapter.ts +0 -162
  1090. package/src/adapters/state-ia-contractors/adapter.ts +0 -138
  1091. package/src/adapters/state-ny-notaries/adapter.ts +0 -159
  1092. package/src/adapters/state-tx-notaries/adapter.ts +0 -151
  1093. package/src/adapters/synth-po-box/adapter.ts +0 -203
  1094. package/src/adapters/tiger/adapter.ts +0 -252
  1095. package/src/adapters/tiger/street-decompose.ts +0 -111
  1096. package/src/adapters/usgov-hrsa-fqhc/adapter.ts +0 -181
  1097. package/src/adapters/usgov-imls-pls/adapter.ts +0 -138
  1098. package/src/adapters/usgov-irs-bmf/adapter.ts +0 -161
  1099. package/src/adapters/usgov-nad/adapter.ts +0 -347
  1100. package/src/adapters/usgov-nppes/adapter.ts +0 -157
  1101. package/src/adapters/usgov-samhsa-treatment-locator/adapter.ts +0 -202
  1102. package/src/adapters/utils/index.ts +0 -220
  1103. package/src/adapters/wof-admin-jp/adapter.ts +0 -219
  1104. package/src/adapters/wof-admin-json/adapter.ts +0 -294
  1105. package/src/adapters/wof-postalcode-json/adapter.ts +0 -216
  1106. package/src/build.ts +0 -386
  1107. package/src/index.ts +0 -14
  1108. package/src/name-prone-us-suffixes.ts +0 -12
  1109. package/src/parquet-wrapper/index.ts +0 -9
  1110. package/src/parquet-wrapper/reader.ts +0 -88
  1111. package/src/parquet-wrapper/schema.ts +0 -88
  1112. package/src/parquet-wrapper/writer.ts +0 -110
  1113. package/src/runner.ts +0 -322
  1114. package/src/shard-recipes/anchor-absorption.ts +0 -103
  1115. package/src/shard-recipes/boundary-stress.ts +0 -104
  1116. package/src/shard-recipes/country-balanced.ts +0 -522
  1117. package/src/shard-recipes/cz-pcfirst-preposition.ts +0 -92
  1118. package/src/shard-recipes/fr-admin-split.ts +0 -237
  1119. package/src/shard-recipes/fr-bare-street.ts +0 -95
  1120. package/src/shard-recipes/fr-fragment.ts +0 -332
  1121. package/src/shard-recipes/fr-lieudit.ts +0 -300
  1122. package/src/shard-recipes/fr-order.ts +0 -256
  1123. package/src/shard-recipes/german.ts +0 -169
  1124. package/src/shard-recipes/house-venue.ts +0 -88
  1125. package/src/shard-recipes/index.ts +0 -89
  1126. package/src/shard-recipes/intersection.ts +0 -629
  1127. package/src/shard-recipes/locale.ts +0 -601
  1128. package/src/shard-recipes/nl-postcode.ts +0 -115
  1129. package/src/shard-recipes/no-fragment.ts +0 -219
  1130. package/src/shard-recipes/no-street-led.ts +0 -143
  1131. package/src/shard-recipes/no-street.ts +0 -86
  1132. package/src/shard-recipes/po-box-cedex.ts +0 -919
  1133. package/src/shard-recipes/po-box.ts +0 -123
  1134. package/src/shard-recipes/scaffold.ts +0 -329
  1135. package/src/shard-recipes/si-bare-village.ts +0 -97
  1136. package/src/shard-recipes/street-affix.ts +0 -825
  1137. package/src/shard-recipes/street-bare.ts +0 -101
  1138. package/src/shard-recipes/street.ts +0 -82
  1139. package/src/shard-recipes/sub-venue-sources.ts +0 -895
  1140. package/src/shard-recipes/sub-venue.ts +0 -982
  1141. package/src/shard-recipes/unit.ts +0 -320
  1142. package/src/synthesizers/anchor-absorption.ts +0 -290
  1143. package/src/synthesizers/boundary-stress.ts +0 -531
  1144. package/src/synthesizers/german.ts +0 -250
  1145. package/src/synthesizers/house-venue.ts +0 -316
  1146. package/src/synthesizers/intersection.ts +0 -232
  1147. package/src/synthesizers/no-street.ts +0 -349
  1148. package/src/synthesizers/po-box.ts +0 -339
  1149. package/src/synthesizers/street.ts +0 -272
  1150. package/src/synthesizers/utils.ts +0 -901
  1151. package/src/tools/align-shard.ts +0 -69
  1152. package/src/tools/audit.ts +0 -399
  1153. package/src/tools/corpus-stats.ts +0 -184
  1154. package/src/tools/fetch/ban.ts +0 -310
  1155. package/src/tools/fetch/download.ts +0 -158
  1156. package/src/tools/fetch/hrsa.ts +0 -68
  1157. package/src/tools/fetch/imls-pls.ts +0 -158
  1158. package/src/tools/fetch/index.ts +0 -136
  1159. package/src/tools/fetch/nad.ts +0 -331
  1160. package/src/tools/fetch/nppes.ts +0 -172
  1161. package/src/tools/fetch/openaddresses.ts +0 -408
  1162. package/src/tools/fetch/ourairports.ts +0 -166
  1163. package/src/tools/fetch/ppd.ts +0 -137
  1164. package/src/tools/fetch/state-hi-schools.ts +0 -228
  1165. package/src/tools/fetch/state-sources.ts +0 -155
  1166. package/src/tools/fetch/tiger-full.ts +0 -361
  1167. package/src/tools/fetch/wikidata-subvenue.ts +0 -386
  1168. package/src/tools/golden-expand.ts +0 -573
  1169. package/src/tools/golden-promote.ts +0 -353
  1170. package/src/tools/golden-relabel-street.ts +0 -685
  1171. package/src/tools/index.ts +0 -28
  1172. package/src/tools/ingest-csv.ts +0 -435
  1173. package/src/tools/jsonl-to-parquet.ts +0 -221
  1174. package/src/tools/lint-shard-vocab.ts +0 -409
  1175. package/src/tools/lint-shard.ts +0 -543
  1176. package/src/tools/overlay-manifest.ts +0 -145
  1177. package/src/tools/overture-subvenue.ts +0 -215
  1178. package/src/tools/shard-kryptonite.ts +0 -138
  1179. package/src/tools/shard-translit.ts +0 -270
  1180. package/src/tools/sub-venue-lexicon.ts +0 -1250
  1181. package/src/tools/sub-venue-promotions.ts +0 -330
  1182. package/src/types.ts +0 -247
  1183. package/src/utils/align.ts +0 -330
  1184. package/src/utils/golden.ts +0 -176
  1185. package/src/utils/index.ts +0 -14
  1186. package/src/utils/license.ts +0 -50
  1187. package/src/utils/parquet.ts +0 -377
  1188. package/src/utils/split.ts +0 -278
  1189. package/src/utils/tokenize.ts +0 -78
  1190. package/src/utils/wof-json.ts +0 -244
  1191. /package/{src → lib}/codex/us-fips-state.ts +0 -0
  1192. /package/{src → lib}/tools/gb-title-case.ts +0 -0
  1193. /package/out/{src/adapters → adapters}/ban/street-decompose.d.ts +0 -0
  1194. /package/out/{src/adapters → adapters}/tiger/street-decompose.d.ts +0 -0
  1195. /package/out/{src/codex → codex}/us-fips-state.d.ts +0 -0
  1196. /package/out/{src/codex → codex}/us-fips-state.js +0 -0
  1197. /package/out/{src/tools → tools}/gb-title-case.d.ts +0 -0
  1198. /package/out/{src/tools → tools}/gb-title-case.js +0 -0
  1199. /package/out/{src/tools → tools}/golden-promote.d.ts +0 -0
  1200. /package/out/{src/tools → tools}/ingest-csv.d.ts +0 -0
  1201. /package/out/{src/types.js → types.js} +0 -0
  1202. /package/out/{src/utils → utils}/license.d.ts +0 -0
@@ -0,0 +1,201 @@
1
+ /**
2
+ * @copyright Sister Software
3
+ * @license AGPL-3.0
4
+ * @author Teffen Ellis, et al.
5
+ *
6
+ * `tiger`: US Census TIGER/Line consumer adapter.
7
+ *
8
+ * TIGER/Line is the canonical US street + locality dataset published by the Census Bureau as a
9
+ * **public-domain** product (no ODbL share-alike concerns for US-only corpora). Coverage extends
10
+ * to every named street segment + every incorporated place + CDP across the 50 states + DC + the
11
+ * five primary territories — substantially better US street-name coverage than OSM, especially in
12
+ * rural areas.
13
+ *
14
+ * Following the `wof-admin` / `wof-postalcode` pattern, this adapter consumes a SQLite database the
15
+ * operator pre-builds from the raw TIGER shapefiles (see the README for the schema and a
16
+ * suggested `ogr2ogr` pipeline). The mailwoman side does not parse Shapefile binary directly —
17
+ * keeping the adapter narrow lets the operator pick their own ingestion tool (ogr2ogr / shp2pgsql
18
+ * / a custom Python script / etc.) without forcing a heavy native dep into `@mailwoman/corpus`.
19
+ *
20
+ * Two row classes are emitted:
21
+ *
22
+ * - **Street-level** (`tiger_streets`): one row per segment, optionally with up to two postcode
23
+ * variants if `zipl` / `zipr` differ. Components: `{ street, region, postcode? }`. Streets
24
+ * without a recognized state FIPS are dropped — there's no useful row without `region`.
25
+ * - **Locality-level** (`tiger_places`): up to three variants per place: locality-only,
26
+ * locality-with-region, locality-with-region-country (mirrors `wof-admin`'s fan-out for
27
+ * consistency).
28
+ * - `packages/corpus/lib/codex/us-fips-state.ts` — the FIPS → `{abbreviation, name}` lookup table
29
+ * (originally `tiger/state.ts`, AGPL-3.0 → AGPL-3.0). The full isp-nexus TIGER module ships a
30
+ * TypeORM-backed service layer; mailwoman only needs the lookup data so we don't carry the
31
+ * service layer over.
32
+ *
33
+ * License: stamped `"Public Domain"` per Census Bureau guidance on TIGER/Line. No per-row override
34
+ * needed — every row in TIGER is the same license.
35
+ */
36
+ import { formatAddress, reconcileComponents } from "@mailwoman/formatter";
37
+ import { DatabaseClient } from "@mailwoman/sqlite/client";
38
+ import { decomposeStreet } from "#adapters/tiger/street-decompose";
39
+ import { lookupFipsState } from "#codex/us-fips-state";
40
+ /**
41
+ * Registry id for this adapter. Stamped into every row it emits, so a corpus record can be traced back to the dataset
42
+ * it came from.
43
+ */
44
+ export const TIGER_ADAPTER_ID = "tiger";
45
+ /**
46
+ * License carried by this source (Public Domain), attached to each row so downstream consumers inherit the terms rather
47
+ * than having to look them up.
48
+ */
49
+ export const TIGER_DEFAULT_LICENSE = "Public Domain";
50
+ /**
51
+ * The country surface form used in `formatAddress` for US. Matches the canonical OpenCage US template output so
52
+ * reconciliation doesn't strip it when the row carries `country` explicitly.
53
+ */
54
+ const US_COUNTRY_DISPLAY = "United States of America";
55
+ /**
56
+ * Yield one or more `CanonicalRow`s per street segment. Postcode variants:
57
+ *
58
+ * - No ZIP set → one row, street + region.
59
+ * - `zipl === zipr` → one row, street + region + postcode.
60
+ * - `zipl !== zipr` → two rows (one per side's ZIP).
61
+ */
62
+ function* streetVariants(row) {
63
+ const fullname = row.fullname.trim();
64
+ if (!fullname)
65
+ return;
66
+ const state = lookupFipsState(row.statefp);
67
+ if (!state)
68
+ return;
69
+ const zipl = row.zipl?.trim() ?? "";
70
+ const zipr = row.zipr?.trim() ?? "";
71
+ const decomposed = decomposeStreet(fullname);
72
+ const baseComponents = {
73
+ region: state.abbreviation,
74
+ street: decomposed.street,
75
+ };
76
+ if (decomposed.prefix) {
77
+ baseComponents.street_prefix = decomposed.prefix;
78
+ }
79
+ if (decomposed.suffix) {
80
+ baseComponents.street_suffix = decomposed.suffix;
81
+ }
82
+ if (!zipl && !zipr) {
83
+ yield { components: baseComponents, variantKey: "no-zip" };
84
+ return;
85
+ }
86
+ if (zipl && zipr && zipl === zipr) {
87
+ yield {
88
+ components: { ...baseComponents, postcode: zipl },
89
+ variantKey: `zip-${zipl}`,
90
+ };
91
+ return;
92
+ }
93
+ if (zipl) {
94
+ yield { components: { ...baseComponents, postcode: zipl }, variantKey: `zipl-${zipl}` };
95
+ }
96
+ if (zipr && zipr !== zipl) {
97
+ yield { components: { ...baseComponents, postcode: zipr }, variantKey: `zipr-${zipr}` };
98
+ }
99
+ }
100
+ /**
101
+ * Three locality-level variants, mirroring `wof-admin`'s fan-out.
102
+ */
103
+ function* placeVariants(row) {
104
+ const name = row.name.trim();
105
+ if (!name)
106
+ return;
107
+ const state = lookupFipsState(row.statefp);
108
+ if (!state)
109
+ return;
110
+ yield {
111
+ components: { locality: name },
112
+ variantKey: "locality-only",
113
+ };
114
+ yield {
115
+ components: { locality: name, region: state.abbreviation },
116
+ variantKey: "with-region",
117
+ };
118
+ yield {
119
+ components: { locality: name, region: state.abbreviation, country: US_COUNTRY_DISPLAY },
120
+ variantKey: "with-region-country",
121
+ };
122
+ }
123
+ /**
124
+ * Build a TIGER adapter. Pure factory so multiple instances can be created in tests.
125
+ */
126
+ export function createTigerAdapter() {
127
+ return {
128
+ id: TIGER_ADAPTER_ID,
129
+ defaultLicense: TIGER_DEFAULT_LICENSE,
130
+ description: "US Census TIGER/Line streets + places consumer (public-domain); SQLite DB built via `mailwoman tiger fetch`.",
131
+ async *rows(opts) {
132
+ if (opts.country && opts.country !== "US") {
133
+ throw new Error(`tiger adapter: only US supported, got country=${opts.country}`);
134
+ }
135
+ const db = new DatabaseClient(opts.inputPath, { readOnly: true });
136
+ let emitted = 0;
137
+ try {
138
+ const streetStmt = db.prepare(`SELECT linearid, fullname, zipl, zipr, statefp FROM tiger_streets`);
139
+ const placeStmt = db.prepare(`SELECT geoid, name, statefp, lsad FROM tiger_places`);
140
+ for (const row of streetStmt.iterate()) {
141
+ if (opts.signal?.aborted)
142
+ return;
143
+ for (const variant of streetVariants(row)) {
144
+ if (opts.limit !== undefined && emitted >= opts.limit)
145
+ return;
146
+ const raw = formatAddress(variant.components, "US", { separator: ", " });
147
+ if (!raw)
148
+ continue;
149
+ const aligned = reconcileComponents(variant.components, raw);
150
+ if (!Object.keys(aligned).length)
151
+ continue;
152
+ yield {
153
+ raw,
154
+ components: aligned,
155
+ country: "US",
156
+ locale: "en-US",
157
+ source: TIGER_ADAPTER_ID,
158
+ source_id: `${TIGER_ADAPTER_ID}-st-${row.linearid}-${variant.variantKey}`,
159
+ corpus_version: "",
160
+ license: TIGER_DEFAULT_LICENSE,
161
+ };
162
+ emitted++;
163
+ }
164
+ }
165
+ for (const row of placeStmt.iterate()) {
166
+ if (opts.signal?.aborted)
167
+ return;
168
+ for (const variant of placeVariants(row)) {
169
+ if (opts.limit !== undefined && emitted >= opts.limit)
170
+ return;
171
+ const raw = formatAddress(variant.components, "US", { separator: ", " });
172
+ if (!raw)
173
+ continue;
174
+ const aligned = reconcileComponents(variant.components, raw);
175
+ if (!Object.keys(aligned).length)
176
+ continue;
177
+ yield {
178
+ raw,
179
+ components: aligned,
180
+ country: "US",
181
+ locale: "en-US",
182
+ source: TIGER_ADAPTER_ID,
183
+ source_id: `${TIGER_ADAPTER_ID}-pl-${row.geoid}-${variant.variantKey}`,
184
+ corpus_version: "",
185
+ license: TIGER_DEFAULT_LICENSE,
186
+ };
187
+ emitted++;
188
+ }
189
+ }
190
+ }
191
+ finally {
192
+ await db.destroy();
193
+ }
194
+ },
195
+ };
196
+ }
197
+ /**
198
+ * The configured adapter instance registered with the corpus builder.
199
+ */
200
+ export const tigerAdapter = createTigerAdapter();
201
+ //# sourceMappingURL=adapter.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"adapter.js","sourceRoot":"","sources":["../../../lib/adapters/tiger/adapter.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1 @@
1
+ {"version":3,"file":"street-decompose.d.ts","sourceRoot":"","sources":["../../../lib/adapters/tiger/street-decompose.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;GAgBG;AASH,MAAM,WAAW,gBAAgB;IAChC,MAAM,EAAE,MAAM,GAAG,IAAI,CAAA;IACrB,MAAM,EAAE,MAAM,CAAA;IACd,MAAM,EAAE,MAAM,GAAG,IAAI,CAAA;CACrB;AAED;;;;;GAKG;AACH,wBAAgB,eAAe,CAAC,QAAQ,EAAE,MAAM,GAAG,gBAAgB,CA6ClE"}
@@ -0,0 +1,68 @@
1
+ /**
2
+ * @copyright Sister Software
3
+ * @license AGPL-3.0
4
+ * @author Teffen Ellis, et al.
5
+ *
6
+ * Decompose a US street name into Stage 3 components: street_prefix, street, street_suffix.
7
+ *
8
+ * Sources directionals and street types from the curated libpostal/en dictionaries
9
+ * (`core/data/libpostal/dictionaries/en/{directionals,street_types}.txt`). These are the same
10
+ * dictionaries the runtime classifiers (StreetPrefixClassifier, StreetSuffixClassifier) use, so
11
+ * corpus labels and runtime classifications agree on the vocabulary.
12
+ *
13
+ * Examples: "N Main St" → { prefix: "N", street: "Main", suffix: "St" } "Pennsylvania Avenue NW" →
14
+ * { prefix: null, street: "Pennsylvania", suffix: "Avenue NW" } "Salmon St" → { prefix: null,
15
+ * street: "Salmon", suffix: "St" } "SE Hawthorne Blvd" → { prefix: "SE", street: "Hawthorne",
16
+ * suffix: "Blvd" }
17
+ */
18
+ import { loadLibpostalDictionary } from "#adapters/utils";
19
+ const [DIRECTIONALS, STREET_TYPES] = await Promise.all([
20
+ loadLibpostalDictionary("en", "directionals.txt"),
21
+ loadLibpostalDictionary("en", "street_types.txt"),
22
+ ]);
23
+ /**
24
+ * Decompose a US street name into prefix/name/suffix components.
25
+ *
26
+ * Conservative — only emits prefix/suffix when there's a clear directional or street-type keyword. Returns the original
27
+ * as `street` if nothing matches.
28
+ */
29
+ export function decomposeStreet(fullname) {
30
+ const trimmed = fullname.trim();
31
+ if (!trimmed)
32
+ return { prefix: null, street: "", suffix: null };
33
+ const tokens = trimmed.split(/\s+/);
34
+ if (tokens.length === 1)
35
+ return { prefix: null, street: trimmed, suffix: null };
36
+ const norm = (s) => s.toLowerCase().replace(/\.$/, "");
37
+ let prefix = null;
38
+ let suffix = null;
39
+ let startIdx = 0;
40
+ let endIdx = tokens.length;
41
+ // Leading directional prefix
42
+ if (DIRECTIONALS.has(norm(tokens[0])) && tokens.length >= 2) {
43
+ prefix = tokens[0];
44
+ startIdx = 1;
45
+ }
46
+ // Trailing post-directional combined with street type (e.g. "Pennsylvania Ave NW")
47
+ const last = norm(tokens[endIdx - 1]);
48
+ const secondLast = endIdx >= 2 ? norm(tokens[endIdx - 2]) : "";
49
+ if (DIRECTIONALS.has(last) && STREET_TYPES.has(secondLast)) {
50
+ suffix = tokens.slice(endIdx - 2, endIdx).join(" ");
51
+ endIdx -= 2;
52
+ }
53
+ else if (STREET_TYPES.has(last) && endIdx - startIdx >= 2) {
54
+ suffix = tokens[endIdx - 1];
55
+ endIdx -= 1;
56
+ }
57
+ else if (DIRECTIONALS.has(last) && endIdx - startIdx >= 2) {
58
+ // Post-directional without type
59
+ suffix = tokens[endIdx - 1];
60
+ endIdx -= 1;
61
+ }
62
+ const street = tokens.slice(startIdx, endIdx).join(" ").trim();
63
+ if (!street) {
64
+ return { prefix: null, street: trimmed, suffix: null };
65
+ }
66
+ return { prefix, street, suffix };
67
+ }
68
+ //# sourceMappingURL=street-decompose.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"street-decompose.js","sourceRoot":"","sources":["../../../lib/adapters/tiger/street-decompose.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,56 @@
1
+ /**
2
+ * @copyright Sister Software
3
+ * @license AGPL-3.0
4
+ * @author Teffen Ellis, et al.
5
+ *
6
+ * `usgov-hrsa-fqhc`: HRSA "Health Center Service Delivery Site Locations" CSV consumer.
7
+ *
8
+ * Federally Qualified Health Centers (FQHCs) are HRSA-funded community health programs that
9
+ * self-report site addresses to the HRSA Data Warehouse. The published CSV (`data.hrsa.gov`)
10
+ * carries the site name, the postal-formatted street address, and the locality/region/postcode
11
+ * quad. The source earns its place on adversarial-value-per-row (#22): every facility name is a
12
+ * human-typed venue string and the addresses pass through enough hands to accumulate the
13
+ * abbreviation drift + suite designator chaos that pure gazetteer data does not.
14
+ *
15
+ * The adapter consumes a CSV file the operator pre-downloads. The HRSA data is published as a
16
+ * single national CSV (~10K rows), small enough that the operator can re-fetch on every corpus
17
+ * rebuild without an intermediate SQLite step. Column names below match the HRSA Data Warehouse's
18
+ * "Health Center Service Delivery Site" public dataset. Operators substituting the
19
+ * closely-related "Site Address" or "Health Center" public extracts may need to remap columns;
20
+ * the README documents the expected set.
21
+ *
22
+ * Output: one row per CSV record, with `venue` component carrying the site name and the address
23
+ * quad on `(house_number, street, locality, region, postcode)`. Component order is critical:
24
+ * `venue` is inserted FIRST so alignment claims its surface span before `locality` searches for
25
+ * its own (the kryptonite case "Buffalo Health Clinic, …, Buffalo, NY" relies on `venue`
26
+ * consuming the first "Buffalo" so locality lands on the second).
27
+ *
28
+ * License: stamped `"Public Domain"` per the HRSA Data Warehouse's federal government distribution
29
+ * terms.
30
+ */
31
+ import type { CorpusAdapter } from "#types";
32
+ /**
33
+ * Registry id for this adapter. Stamped into every row it emits, so a corpus record can be traced back to the dataset
34
+ * it came from.
35
+ */
36
+ export declare const USGOV_HRSA_FQHC_ADAPTER_ID = "usgov-hrsa-fqhc";
37
+ /**
38
+ * License carried by this source (Public Domain), attached to each row so downstream consumers inherit the terms rather
39
+ * than having to look them up.
40
+ */
41
+ export declare const USGOV_HRSA_FQHC_DEFAULT_LICENSE = "Public Domain";
42
+ /**
43
+ * Split a "123 Main St Suite 4" surface form into `(house_number, street)`. The regex tolerates one trailing letter on
44
+ * the number (`"123A Main St"`) and a hyphenated form (`"40-12 Bell Blvd"`); anything else falls back to street-only.
45
+ *
46
+ * Suite / Apt / Unit designators stay on `street` — Mailwoman's `unit` component exists but the address-formatter does
47
+ * not have a clean slot for it, and HRSA addresses do not separate the suite into its own column. Leaving the surface
48
+ * form intact in `street` preserves the adversarial training signal (the model learns that a trailing "Suite 4" is part
49
+ * of the road line in this distribution).
50
+ */
51
+ export declare function createUSGovHRSAFQHCAdapter(): CorpusAdapter;
52
+ /**
53
+ * The configured adapter instance registered with the corpus builder.
54
+ */
55
+ export declare const usgovHrsaFqhcAdapter: CorpusAdapter;
56
+ //# sourceMappingURL=adapter.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"adapter.d.ts","sourceRoot":"","sources":["../../../lib/adapters/usgov-hrsa-fqhc/adapter.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA6BG;AAOH,OAAO,KAAK,EAAgC,aAAa,EAAE,MAAM,QAAQ,CAAA;AAEzE;;;GAGG;AACH,eAAO,MAAM,0BAA0B,oBAAoB,CAAA;AAC3D;;;GAGG;AACH,eAAO,MAAM,+BAA+B,kBAAkB,CAAA;AAmB9D;;;;;;;;GAQG;AAEH,wBAAgB,0BAA0B,IAAI,aAAa,CAqF1D;AAED;;GAEG;AACH,eAAO,MAAM,oBAAoB,eAA+B,CAAA"}
@@ -0,0 +1,132 @@
1
+ /**
2
+ * @copyright Sister Software
3
+ * @license AGPL-3.0
4
+ * @author Teffen Ellis, et al.
5
+ *
6
+ * `usgov-hrsa-fqhc`: HRSA "Health Center Service Delivery Site Locations" CSV consumer.
7
+ *
8
+ * Federally Qualified Health Centers (FQHCs) are HRSA-funded community health programs that
9
+ * self-report site addresses to the HRSA Data Warehouse. The published CSV (`data.hrsa.gov`)
10
+ * carries the site name, the postal-formatted street address, and the locality/region/postcode
11
+ * quad. The source earns its place on adversarial-value-per-row (#22): every facility name is a
12
+ * human-typed venue string and the addresses pass through enough hands to accumulate the
13
+ * abbreviation drift + suite designator chaos that pure gazetteer data does not.
14
+ *
15
+ * The adapter consumes a CSV file the operator pre-downloads. The HRSA data is published as a
16
+ * single national CSV (~10K rows), small enough that the operator can re-fetch on every corpus
17
+ * rebuild without an intermediate SQLite step. Column names below match the HRSA Data Warehouse's
18
+ * "Health Center Service Delivery Site" public dataset. Operators substituting the
19
+ * closely-related "Site Address" or "Health Center" public extracts may need to remap columns;
20
+ * the README documents the expected set.
21
+ *
22
+ * Output: one row per CSV record, with `venue` component carrying the site name and the address
23
+ * quad on `(house_number, street, locality, region, postcode)`. Component order is critical:
24
+ * `venue` is inserted FIRST so alignment claims its surface span before `locality` searches for
25
+ * its own (the kryptonite case "Buffalo Health Clinic, …, Buffalo, NY" relies on `venue`
26
+ * consuming the first "Buffalo" so locality lands on the second).
27
+ *
28
+ * License: stamped `"Public Domain"` per the HRSA Data Warehouse's federal government distribution
29
+ * terms.
30
+ */
31
+ import { reconcileComponents } from "@mailwoman/formatter";
32
+ import { CSVSpliterator } from "spliterator";
33
+ import { composeRaw, splitStreetLine, stableSourceID } from "#adapters/utils";
34
+ import { lookupStateAbbreviation } from "#codex/us-fips-state";
35
+ /**
36
+ * Registry id for this adapter. Stamped into every row it emits, so a corpus record can be traced back to the dataset
37
+ * it came from.
38
+ */
39
+ export const USGOV_HRSA_FQHC_ADAPTER_ID = "usgov-hrsa-fqhc";
40
+ /**
41
+ * License carried by this source (Public Domain), attached to each row so downstream consumers inherit the terms rather
42
+ * than having to look them up.
43
+ */
44
+ export const USGOV_HRSA_FQHC_DEFAULT_LICENSE = "Public Domain";
45
+ /**
46
+ * Split a "123 Main St Suite 4" surface form into `(house_number, street)`. The regex tolerates one trailing letter on
47
+ * the number (`"123A Main St"`) and a hyphenated form (`"40-12 Bell Blvd"`); anything else falls back to street-only.
48
+ *
49
+ * Suite / Apt / Unit designators stay on `street` — Mailwoman's `unit` component exists but the address-formatter does
50
+ * not have a clean slot for it, and HRSA addresses do not separate the suite into its own column. Leaving the surface
51
+ * form intact in `street` preserves the adversarial training signal (the model learns that a trailing "Suite 4" is part
52
+ * of the road line in this distribution).
53
+ */
54
+ export function createUSGovHRSAFQHCAdapter() {
55
+ return {
56
+ id: USGOV_HRSA_FQHC_ADAPTER_ID,
57
+ defaultLicense: USGOV_HRSA_FQHC_DEFAULT_LICENSE,
58
+ description: "HRSA Federally Qualified Health Center site locations (public-domain). Adversarial source: venue + address co-occurrence, hand-entered.",
59
+ async *rows(opts) {
60
+ if (opts.country && opts.country !== "US") {
61
+ throw new Error(`usgov-hrsa-fqhc adapter: only US supported, got country=${opts.country}`);
62
+ }
63
+ const rows = CSVSpliterator.fromAsync(opts.inputPath, {
64
+ mode: "object",
65
+ normalizeKeys: false,
66
+ enableQuoteHandling: true,
67
+ });
68
+ let emitted = 0;
69
+ for await (const record of rows) {
70
+ if (opts.signal?.aborted)
71
+ break;
72
+ if (opts.limit !== undefined && emitted >= opts.limit)
73
+ break;
74
+ const venue = (record["Site Name"] ?? "").trim();
75
+ const split = splitStreetLine(record["Site Address"] ?? "");
76
+ const city = (record["Site City"] ?? "").trim();
77
+ const stateAbbr = (record["Site State Abbreviation"] ?? "").trim();
78
+ const postcode = (record["Site Postal Code"] ?? "").trim();
79
+ if (!venue || !split || !city || !postcode)
80
+ continue;
81
+ const state = lookupStateAbbreviation(stateAbbr);
82
+ if (!state)
83
+ continue;
84
+ // Insertion order matters here. `venue` first so alignment claims its span
85
+ // (which may contain a token like "Buffalo") before `locality` runs its
86
+ // search — the kryptonite case `Buffalo Health Clinic, Buffalo NY`
87
+ // otherwise mis-labels the venue's "Buffalo" as locality.
88
+ const components = {
89
+ venue,
90
+ ...(split.house_number ? { house_number: split.house_number } : {}),
91
+ street: split.street,
92
+ locality: city,
93
+ region: state.abbreviation,
94
+ postcode,
95
+ };
96
+ const raw = composeRaw({
97
+ venue,
98
+ houseNumber: split.house_number,
99
+ street: split.street,
100
+ locality: city,
101
+ region: state.abbreviation,
102
+ postcode,
103
+ });
104
+ if (!raw)
105
+ continue;
106
+ const aligned = reconcileComponents(components, raw);
107
+ if (!Object.keys(aligned).length)
108
+ continue;
109
+ const siteID = (record["Site ID"] ?? "").trim();
110
+ const sourceID = siteID
111
+ ? `${USGOV_HRSA_FQHC_ADAPTER_ID}-${siteID}`
112
+ : stableSourceID(USGOV_HRSA_FQHC_ADAPTER_ID, aligned);
113
+ yield {
114
+ raw,
115
+ components: aligned,
116
+ country: "US",
117
+ locale: "en-US",
118
+ source: USGOV_HRSA_FQHC_ADAPTER_ID,
119
+ source_id: sourceID,
120
+ corpus_version: "",
121
+ license: USGOV_HRSA_FQHC_DEFAULT_LICENSE,
122
+ };
123
+ emitted++;
124
+ }
125
+ },
126
+ };
127
+ }
128
+ /**
129
+ * The configured adapter instance registered with the corpus builder.
130
+ */
131
+ export const usgovHrsaFqhcAdapter = createUSGovHRSAFQHCAdapter();
132
+ //# sourceMappingURL=adapter.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"adapter.js","sourceRoot":"","sources":["../../../lib/adapters/usgov-hrsa-fqhc/adapter.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,36 @@
1
+ /**
2
+ * @copyright Sister Software
3
+ * @license AGPL-3.0
4
+ * @author Teffen Ellis, et al.
5
+ *
6
+ * `usgov-imls-pls`: IMLS Public Libraries Survey outlet CSV consumer.
7
+ *
8
+ * The Institute of Museum and Library Services publishes an annual Public Libraries Survey with one
9
+ * row per library outlet (~17K rows). Each row carries the library name, street address, city,
10
+ * ZIP, county, and geocoordinates.
11
+ *
12
+ * The adapter consumes the outlet CSV the operator pre-downloads via `fetch-imls-pls.ts`. Column
13
+ * names match the IMLS PLS outlet file header.
14
+ *
15
+ * Output: one row per outlet with `venue` (library name), `(house_number, street, locality,
16
+ * subregion, postcode)`, and lat/lon preserved in `source_id` stability.
17
+ *
18
+ * License: stamped `"Public Domain"` per IMLS federal government distribution terms.
19
+ */
20
+ import type { CorpusAdapter } from "#types";
21
+ /**
22
+ * Registry id for this adapter. Stamped into every row it emits, so a corpus record can be traced back to the dataset
23
+ * it came from.
24
+ */
25
+ export declare const USGOV_IMLS_PLS_ADAPTER_ID = "usgov-imls-pls";
26
+ /**
27
+ * License carried by this source (Public Domain), attached to each row so downstream consumers inherit the terms rather
28
+ * than having to look them up.
29
+ */
30
+ export declare const USGOV_IMLS_PLS_DEFAULT_LICENSE = "Public Domain";
31
+ export declare function createUSGovIMLSPLSAdapter(): CorpusAdapter;
32
+ /**
33
+ * The configured adapter instance registered with the corpus builder.
34
+ */
35
+ export declare const usgovImlsPlsAdapter: CorpusAdapter;
36
+ //# sourceMappingURL=adapter.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"adapter.d.ts","sourceRoot":"","sources":["../../../lib/adapters/usgov-imls-pls/adapter.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;GAkBG;AAQH,OAAO,KAAK,EAAgC,aAAa,EAAE,MAAM,QAAQ,CAAA;AAEzE;;;GAGG;AACH,eAAO,MAAM,yBAAyB,mBAAmB,CAAA;AACzD;;;GAGG;AACH,eAAO,MAAM,8BAA8B,kBAAkB,CAAA;AAY7D,wBAAgB,yBAAyB,IAAI,aAAa,CAwFzD;AAED;;GAEG;AACH,eAAO,MAAM,mBAAmB,eAA8B,CAAA"}
@@ -0,0 +1,114 @@
1
+ /**
2
+ * @copyright Sister Software
3
+ * @license AGPL-3.0
4
+ * @author Teffen Ellis, et al.
5
+ *
6
+ * `usgov-imls-pls`: IMLS Public Libraries Survey outlet CSV consumer.
7
+ *
8
+ * The Institute of Museum and Library Services publishes an annual Public Libraries Survey with one
9
+ * row per library outlet (~17K rows). Each row carries the library name, street address, city,
10
+ * ZIP, county, and geocoordinates.
11
+ *
12
+ * The adapter consumes the outlet CSV the operator pre-downloads via `fetch-imls-pls.ts`. Column
13
+ * names match the IMLS PLS outlet file header.
14
+ *
15
+ * Output: one row per outlet with `venue` (library name), `(house_number, street, locality,
16
+ * subregion, postcode)`, and lat/lon preserved in `source_id` stability.
17
+ *
18
+ * License: stamped `"Public Domain"` per IMLS federal government distribution terms.
19
+ */
20
+ import { isPresent } from "@mailwoman/core/objects";
21
+ import { reconcileComponents } from "@mailwoman/formatter";
22
+ import { CSVSpliterator } from "spliterator";
23
+ import { splitStreetLine, stableSourceID } from "#adapters/utils";
24
+ import { lookupStateAbbreviation } from "#codex/us-fips-state";
25
+ /**
26
+ * Registry id for this adapter. Stamped into every row it emits, so a corpus record can be traced back to the dataset
27
+ * it came from.
28
+ */
29
+ export const USGOV_IMLS_PLS_ADAPTER_ID = "usgov-imls-pls";
30
+ /**
31
+ * License carried by this source (Public Domain), attached to each row so downstream consumers inherit the terms rather
32
+ * than having to look them up.
33
+ */
34
+ export const USGOV_IMLS_PLS_DEFAULT_LICENSE = "Public Domain";
35
+ export function createUSGovIMLSPLSAdapter() {
36
+ return {
37
+ id: USGOV_IMLS_PLS_ADAPTER_ID,
38
+ defaultLicense: USGOV_IMLS_PLS_DEFAULT_LICENSE,
39
+ description: "IMLS Public Libraries Survey — ~17K library outlets with venue+address (public-domain).",
40
+ async *rows(opts) {
41
+ if (opts.country && opts.country !== "US") {
42
+ throw new Error(`usgov-imls-pls adapter: only US supported, got country=${opts.country}`);
43
+ }
44
+ const rows = CSVSpliterator.fromAsync(opts.inputPath, {
45
+ mode: "object",
46
+ normalizeKeys: false,
47
+ enableQuoteHandling: true,
48
+ });
49
+ let emitted = 0;
50
+ for await (const record of rows) {
51
+ if (opts.signal?.aborted)
52
+ break;
53
+ if (opts.limit !== undefined && emitted >= opts.limit)
54
+ break;
55
+ const libName = (record.LIBNAME ?? "").trim();
56
+ const address = (record.ADDRESS ?? "").trim();
57
+ const city = (record.CITY ?? "").trim();
58
+ const zip = (record.ZIP ?? "").trim();
59
+ const stateAbbr = (record.STABR ?? "").trim();
60
+ if (!libName || !city || !zip)
61
+ continue;
62
+ const state = lookupStateAbbreviation(stateAbbr);
63
+ if (!state)
64
+ continue;
65
+ const split = splitStreetLine(address);
66
+ if (!split)
67
+ continue;
68
+ const components = {
69
+ venue: libName,
70
+ ...(split.house_number ? { house_number: split.house_number } : {}),
71
+ street: split.street,
72
+ locality: city,
73
+ region: state.abbreviation,
74
+ postcode: zip,
75
+ // #552: no subregion — US postal addresses don't surface the county, so emitting
76
+ // subregion creates a phantom component with no raw-span to align to, quarantining
77
+ // ~21% of rows. The county is still available in the source CSV; it just isn't
78
+ // a postal-surface component here.
79
+ };
80
+ const streetPart = [split.house_number, split.street].filter(isPresent).join(" ").trim();
81
+ const raw = [
82
+ libName,
83
+ streetPart,
84
+ [city, [stateAbbr, zip].filter(isPresent).join(" ")].filter(isPresent).join(", "),
85
+ ]
86
+ .filter(isPresent)
87
+ .join(", ");
88
+ const aligned = reconcileComponents(components, raw);
89
+ if (Object.keys(aligned).length <= 2)
90
+ continue;
91
+ const fscsKey = (record.FSCSKEY ?? "").trim();
92
+ const sourceID = fscsKey
93
+ ? `${USGOV_IMLS_PLS_ADAPTER_ID}-${fscsKey}`
94
+ : stableSourceID(USGOV_IMLS_PLS_ADAPTER_ID, aligned);
95
+ yield {
96
+ raw,
97
+ components: aligned,
98
+ country: "US",
99
+ locale: "en-US",
100
+ source: USGOV_IMLS_PLS_ADAPTER_ID,
101
+ source_id: sourceID,
102
+ corpus_version: "",
103
+ license: USGOV_IMLS_PLS_DEFAULT_LICENSE,
104
+ };
105
+ emitted++;
106
+ }
107
+ },
108
+ };
109
+ }
110
+ /**
111
+ * The configured adapter instance registered with the corpus builder.
112
+ */
113
+ export const usgovImlsPlsAdapter = createUSGovIMLSPLSAdapter();
114
+ //# sourceMappingURL=adapter.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"adapter.js","sourceRoot":"","sources":["../../../lib/adapters/usgov-imls-pls/adapter.ts"],"names":[],"mappings":"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"}