@mailwoman/corpus 9.4.0 → 10.1.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.
- package/README.md +134 -32
- package/data/PROVENANCE.md +623 -17
- package/data/address-source-register.json +14249 -0
- package/data/builds/v0.7.0-de-holdout/inputs.json +22 -0
- package/data/builds/v0.8.0-registers/inputs.json +92 -0
- package/data/license-decisions.json +1603 -0
- package/data/licenses/PROVENANCE.md +65 -0
- package/data/licenses/cdla-permissive-2.0.md +43 -0
- package/data/licenses/geonames-publication.md +34 -0
- package/data/licenses/licence-ouverte-2.0.md +36 -0
- package/data/licenses/national-address-database.md +46 -0
- package/data/licenses/nlod-2.0.md +90 -0
- package/data/licenses/sirene-publication.md +38 -0
- package/data/licenses/whosonfirst-licenses.md +65 -0
- package/data/source-resolutions.json +804 -0
- package/data/sub-venue-lexicon.json +1 -1
- package/data/training-manifests/v0.7.0-de-holdout.effective.json +477 -0
- package/data/training-manifests/v0.7.0-de-holdout.json +78 -0
- package/lib/adapters/cordis/adapter.ts +785 -0
- package/lib/adapters/dedup-key.ts +40 -0
- package/lib/adapters/errors.ts +21 -0
- package/lib/adapters/geonames/adapter.ts +43 -53
- package/lib/adapters/geonames/postal/adapter.ts +116 -0
- package/lib/adapters/gleif/adapter.ts +828 -0
- package/lib/adapters/libpostal-dictionary.ts +39 -0
- package/lib/adapters/openaddresses/adapter.ts +54 -61
- package/lib/adapters/osm/adapter.ts +356 -0
- package/lib/adapters/overture/adapter.ts +65 -41
- package/lib/adapters/po-box/adapter.ts +202 -0
- package/lib/adapters/registry.ts +79 -0
- package/lib/adapters/sha256-stream.ts +49 -0
- package/lib/adapters/source-id.ts +49 -0
- package/lib/adapters/street-line.ts +135 -0
- package/lib/adapters/wof/admin/json/adapter.ts +254 -0
- package/lib/adapters/wof/json-rows.ts +211 -0
- package/lib/adapters/wof/postalcode-json/adapter.ts +194 -0
- package/lib/adapters.ts +230 -0
- package/lib/au/adapters/gnaf/adapter.ts +144 -0
- package/lib/au/adapters/gnaf/assemble.ts +205 -0
- package/lib/be/adapters/brussels/adapter.ts +566 -0
- package/lib/be/adapters/vlaanderen/adapter.ts +670 -0
- package/lib/be/adapters/wallonie/adapter.ts +537 -0
- package/lib/be/tools/fetch/brussels.ts +239 -0
- package/lib/be/tools/fetch/wallonie.ts +274 -0
- package/lib/build/adapters.ts +110 -0
- package/lib/build/align.ts +364 -0
- package/lib/build/checkpoint.ts +131 -0
- package/lib/build/eligibility.ts +96 -0
- package/lib/build/heap.ts +53 -0
- package/lib/build/inputs.ts +81 -0
- package/lib/build/rows.ts +21 -0
- package/lib/build/types.ts +232 -0
- package/lib/build.ts +127 -315
- package/lib/cn/recipes/organizational-units.ts +178 -0
- package/lib/cz/adapters/cuzk/adapter.ts +317 -0
- package/lib/cz/recipes/pcfirst-preposition.ts +125 -0
- package/lib/cz/tools/fetch/cuzk.ts +699 -0
- package/lib/de/recipes/locale.ts +370 -0
- package/lib/directory.ts +31 -0
- package/lib/dk/adapters/inspire/adapter.ts +345 -0
- package/lib/dk/tools/fetch/inspire.ts +321 -0
- package/lib/ee/adapters/ads/adapter.ts +246 -0
- package/lib/ee/tools/fetch/ads.ts +270 -0
- package/lib/env.ts +6 -2
- package/lib/es/adapters/bizkaia/adapter.ts +388 -0
- package/lib/es/adapters/catastro/adapter.ts +343 -0
- package/lib/es/adapters/gipuzkoa/adapter.ts +263 -0
- package/lib/es/adapters/navarra/adapter.ts +289 -0
- package/lib/es/cadastre.ts +194 -0
- package/lib/es/tools/fetch/bizkaia.ts +748 -0
- package/lib/es/tools/fetch/catastro.ts +754 -0
- package/lib/es/tools/fetch/gipuzkoa.ts +336 -0
- package/lib/es/tools/fetch/navarra.ts +488 -0
- package/lib/fi/adapters/ryhti/adapter.ts +323 -0
- package/lib/fi/tools/fetch/ryhti.ts +476 -0
- package/lib/fingerprints.ts +154 -0
- package/lib/fr/adapters/annuaire-education/adapter.ts +598 -0
- package/lib/fr/adapters/ban/adapter.ts +187 -0
- package/lib/fr/adapters/finess/adapter.ts +618 -0
- package/lib/fr/adapters/finess/postal-lines.ts +157 -0
- package/lib/fr/adapters/finess/voie-type.ts +200 -0
- package/lib/fr/insee-country.ts +62 -0
- package/lib/fr/recipes/admin-split.ts +221 -0
- package/lib/fr/recipes/bare-street.ts +158 -0
- package/lib/fr/recipes/fragment.ts +251 -0
- package/lib/fr/recipes/lieudit.ts +310 -0
- package/lib/fr/recipes/order.ts +219 -0
- package/lib/fr/street-decompose.ts +67 -0
- package/lib/fr/tools/fetch/annuaire-education.ts +306 -0
- package/lib/fr/tools/fetch/ban.ts +298 -0
- package/lib/fr/tools/fetch/finess.ts +352 -0
- package/lib/gauntlet-inputs.ts +92 -0
- package/lib/index.ts +10 -4
- package/lib/inspire/address.ts +457 -0
- package/lib/inspire/archive.ts +44 -0
- package/lib/inspire/errors.ts +71 -0
- package/lib/inspire/stream.ts +262 -0
- package/lib/international/recipes/locale.ts +556 -0
- package/lib/it/adapters/anac/adapter.ts +522 -0
- package/lib/it/tools/fetch/anac.ts +394 -0
- package/lib/jp/adapters/wof-admin/adapter.ts +224 -0
- package/lib/jp/tools/fetch/houjin.ts +139 -0
- package/lib/kr/adapters/juso/label-rows.ts +239 -0
- package/lib/kr/adapters/localdata/align.ts +288 -0
- package/lib/kr/adapters/localdata/key-index.ts +177 -0
- package/lib/kr/adapters/localdata/permit-rows.ts +193 -0
- package/lib/kr/tools/fetch/juso.ts +170 -0
- package/lib/kr/tools/fetch/localdata.ts +205 -0
- package/lib/lu/adapters/bd-adresses/adapter.ts +240 -0
- package/lib/lu/tools/fetch/bd-adresses.ts +351 -0
- package/lib/lv/adapters/varis/adapter.ts +499 -0
- package/lib/lv/tools/fetch/varis.ts +214 -0
- package/lib/nl/adapters/kadaster/adapter.ts +386 -0
- package/lib/nl/recipes/postcode.ts +139 -0
- package/lib/nl/tools/fetch/kadaster.ts +298 -0
- package/lib/no/adapters/matrikkelen/adapter.ts +187 -0
- package/lib/no/recipes/fragment.ts +189 -0
- package/lib/no/recipes/street/led.ts +154 -0
- package/lib/no/recipes/street.ts +109 -0
- package/lib/no/tools/fetch/matrikkelen.ts +519 -0
- package/lib/parquet/duckdb.ts +144 -0
- package/lib/parquet/readers.ts +86 -0
- package/lib/parquet/schema.ts +214 -0
- package/lib/parquet/shuffle.ts +59 -0
- package/lib/parquet/span-sql.ts +54 -0
- package/lib/parquet/streams.ts +113 -0
- package/lib/parquet/writers.ts +451 -0
- package/lib/pl/adapters/emuia/adapter.ts +202 -0
- package/lib/pl/tools/fetch/emuia.ts +360 -0
- package/lib/recipes/anchor-absorption.ts +30 -19
- package/lib/recipes/bare/country.ts +87 -0
- package/lib/recipes/bare/postcode/eval.ts +99 -0
- package/lib/recipes/bare/postcode.ts +346 -0
- package/lib/recipes/boundary-stress.ts +36 -19
- package/lib/recipes/country-balanced.ts +67 -87
- package/lib/recipes/house-venue.ts +31 -13
- package/lib/recipes/intersection.ts +83 -61
- package/lib/recipes/po/box/cedex/au-nz.ts +82 -0
- package/lib/recipes/po/box/cedex/ca.ts +59 -0
- package/lib/recipes/po/box/cedex/fr.ts +77 -0
- package/lib/recipes/po/box/cedex/phrases.ts +109 -0
- package/lib/recipes/po/box/cedex/recipe.ts +215 -0
- package/lib/recipes/po/box/cedex/sources.ts +189 -0
- package/lib/recipes/po/box/cedex/types.ts +35 -0
- package/lib/recipes/po/box/cedex/us.ts +74 -0
- package/lib/recipes/po/box/cedex/vocabulary.ts +106 -0
- package/lib/recipes/po/box/cedex.ts +9 -0
- package/lib/recipes/po/box.ts +149 -0
- package/lib/recipes/scaffold.ts +258 -182
- package/lib/recipes/sources.ts +399 -0
- package/lib/recipes/street/affix.ts +707 -0
- package/lib/recipes/street/bare.ts +115 -0
- package/lib/recipes/street.ts +32 -8
- package/lib/recipes/sub/venue/context.ts +156 -0
- package/lib/recipes/sub/venue/render.ts +170 -0
- package/lib/recipes/sub/venue/sources.ts +588 -0
- package/lib/recipes/sub/venue.ts +801 -0
- package/lib/recipes/trailing-region.ts +70 -81
- package/lib/recipes/unit/sources.ts +44 -0
- package/lib/recipes/unit.ts +102 -90
- package/lib/recipes.ts +106 -0
- package/lib/registers.ts +278 -0
- package/lib/ro/adapters/retea-scolara/adapter.ts +264 -0
- package/lib/ro/tools/fetch/retea-scolara.ts +187 -0
- package/lib/runner.ts +220 -84
- package/lib/sg/recipes/register.ts +264 -0
- package/lib/sg/tools/fetch/acra.ts +174 -0
- package/lib/si/recipes/bare-village.ts +116 -0
- package/lib/sk/adapters/inspire/adapter.ts +395 -0
- package/lib/sk/tools/fetch/inspire.ts +402 -0
- package/lib/source-register/effective-manifest.ts +659 -0
- package/lib/source-register/register.ts +539 -0
- package/lib/source-register/training-manifest.ts +218 -0
- package/lib/source-register/types.ts +590 -0
- package/lib/source-register.ts +71 -0
- package/lib/south-asia/recipes/register.ts +233 -0
- package/lib/subvenue/harvest.ts +251 -0
- package/lib/subvenue/promotions.ts +293 -0
- package/lib/subvenue/surfaces.ts +94 -0
- package/lib/subvenue/table.ts +264 -0
- package/lib/surfaces/locale.ts +246 -0
- package/lib/synthesizers/anchor-absorption.ts +55 -91
- package/lib/synthesizers/boundary-stress.ts +49 -131
- package/lib/synthesizers/house-venue.ts +44 -102
- package/lib/synthesizers/intersection.ts +37 -26
- package/lib/synthesizers/no-street.ts +70 -119
- package/lib/synthesizers/po-box.ts +90 -105
- package/lib/synthesizers/street.ts +47 -35
- package/lib/synthesizers/utils.ts +65 -219
- package/lib/test-kit/corpus-recipe.ts +45 -28
- package/lib/test-kit.ts +116 -0
- package/lib/tools/align-canonical.ts +64 -0
- package/lib/tools/audit.ts +114 -118
- package/lib/tools/corpus-stats.ts +46 -32
- package/lib/tools/fetch/atom.ts +164 -0
- package/lib/tools/fetch/cordis.ts +318 -0
- package/lib/tools/fetch/download/manifest.ts +114 -0
- package/lib/tools/fetch/download/network.ts +250 -0
- package/lib/tools/fetch/download/retry.ts +174 -0
- package/lib/tools/fetch/download.ts +4 -471
- package/lib/tools/fetch/geonames/dump.ts +275 -0
- package/lib/tools/fetch/geonames/postal.ts +145 -0
- package/lib/tools/fetch/gleif.ts +360 -0
- package/lib/tools/fetch/header.ts +69 -0
- package/lib/tools/fetch/inspire-addresses.ts +495 -0
- package/lib/tools/fetch/openaddresses.ts +20 -109
- package/lib/tools/fetch/ourairports.ts +16 -49
- package/lib/tools/fetch/ppd.ts +10 -10
- package/lib/tools/fetch/vlaanderen-ad.ts +435 -0
- package/lib/tools/fetch/wfs-harvest.ts +943 -0
- package/lib/tools/fetch/wikidata-subvenue.ts +43 -143
- package/lib/tools/fetch/zip-archive.ts +100 -0
- package/lib/tools/fetch.ts +143 -0
- package/lib/tools/golden/expand.ts +605 -0
- package/lib/tools/golden/promote.ts +349 -0
- package/lib/tools/golden/relabel-street/directory.ts +367 -0
- package/lib/tools/golden/relabel-street/row.ts +283 -0
- package/lib/tools/golden/relabel-street.ts +9 -0
- package/lib/tools/ingest-csv.ts +45 -50
- package/lib/tools/jsonl-to-parquet.ts +59 -98
- package/lib/tools/lint/recipe-output/vocab.ts +366 -0
- package/lib/tools/lint/recipe-output.ts +482 -0
- package/lib/tools/migrate/overlay-parquet.ts +173 -0
- package/lib/tools/migrate/recipe-output.ts +153 -0
- package/lib/tools/migrate/source-names.ts +161 -0
- package/lib/tools/overlay/kryptonite.ts +144 -0
- package/lib/tools/overlay/manifest.ts +407 -0
- package/lib/tools/overlay/merge-source.ts +138 -0
- package/lib/tools/overlay/split-slice.ts +144 -0
- package/lib/tools/overlay/translit.ts +234 -0
- package/lib/tools/overture-subvenue.ts +18 -91
- package/lib/tools/postcode-triples.ts +362 -167
- package/lib/tools/source-register/build.ts +819 -0
- package/lib/tools/sub/venue/head-nouns.ts +208 -0
- package/lib/tools/sub/venue/lexicon.ts +394 -0
- package/lib/tools/sub/venue/wikidata.ts +88 -0
- package/lib/tools.ts +31 -0
- package/lib/tw/tools/fetch/gcis.ts +181 -0
- package/lib/types.ts +304 -101
- package/lib/us/adapters/fcc-bdc/adapter.ts +158 -0
- package/lib/us/adapters/state/hi-schools/adapter.ts +171 -0
- package/lib/us/adapters/state/hi-schools/workbook.ts +40 -0
- package/lib/us/adapters/state/ia-contractors/adapter.ts +148 -0
- package/lib/us/adapters/state/ny-notaries/adapter.ts +132 -0
- package/lib/us/adapters/state/tx-notaries/adapter.ts +155 -0
- package/lib/us/adapters/tiger/adapter.ts +225 -0
- package/lib/us/adapters/tiger/street-decompose.ts +73 -0
- package/lib/us/adapters/usgov/hrsa-fqhc/adapter.ts +171 -0
- package/lib/us/adapters/usgov/imls-pls/adapter.ts +140 -0
- package/lib/us/adapters/usgov/irs-bmf/adapter.ts +154 -0
- package/lib/us/adapters/usgov/nad/adapter.ts +263 -0
- package/lib/us/adapters/usgov/nppes/adapter.ts +180 -0
- package/lib/us/adapters/usgov/samhsa-treatment-locator/adapter.ts +195 -0
- package/lib/us/fips-state.ts +122 -0
- package/lib/us/tools/fetch/hrsa.ts +58 -0
- package/lib/us/tools/fetch/imls-pls.ts +131 -0
- package/lib/us/tools/fetch/nad.ts +359 -0
- package/lib/us/tools/fetch/nppes.ts +153 -0
- package/lib/us/tools/fetch/state/hi-schools.ts +167 -0
- package/lib/us/tools/fetch/state/sources.ts +146 -0
- package/lib/us/tools/fetch/tiger-full.ts +256 -0
- package/lib/utils/align.ts +43 -53
- package/lib/utils/cooccurrence-stats.ts +101 -0
- package/lib/utils/golden.ts +39 -50
- package/lib/utils/license.ts +238 -26
- package/lib/utils/split.ts +205 -88
- package/lib/utils/tokenize.ts +22 -34
- package/lib/utils/wof-json.ts +134 -87
- package/lib/utils.ts +13 -0
- package/lib/ve/recipes/reviewed-postcode-tail.ts +217 -0
- package/out/adapters/cordis/adapter.d.ts +324 -0
- package/out/adapters/cordis/adapter.d.ts.map +1 -0
- package/out/adapters/cordis/adapter.js +616 -0
- package/out/adapters/cordis/adapter.js.map +1 -0
- package/out/adapters/dedup-key.d.ts +30 -0
- package/out/adapters/dedup-key.d.ts.map +1 -0
- package/out/adapters/dedup-key.js +35 -0
- package/out/adapters/dedup-key.js.map +1 -0
- package/out/adapters/errors.d.ts +17 -0
- package/out/adapters/errors.d.ts.map +1 -0
- package/out/adapters/errors.js +20 -0
- package/out/adapters/errors.js.map +1 -0
- package/out/adapters/geonames/adapter.d.ts +26 -28
- package/out/adapters/geonames/adapter.d.ts.map +1 -1
- package/out/adapters/geonames/adapter.js +40 -50
- package/out/adapters/geonames/adapter.js.map +1 -1
- package/out/adapters/geonames/postal/adapter.d.ts +41 -0
- package/out/adapters/geonames/postal/adapter.d.ts.map +1 -0
- package/out/adapters/geonames/postal/adapter.js +102 -0
- package/out/adapters/geonames/postal/adapter.js.map +1 -0
- package/out/adapters/gleif/adapter.d.ts +293 -0
- package/out/adapters/gleif/adapter.d.ts.map +1 -0
- package/out/adapters/gleif/adapter.js +684 -0
- package/out/adapters/gleif/adapter.js.map +1 -0
- package/out/adapters/libpostal-dictionary.d.ts +22 -0
- package/out/adapters/libpostal-dictionary.d.ts.map +1 -0
- package/out/adapters/libpostal-dictionary.js +36 -0
- package/out/adapters/libpostal-dictionary.js.map +1 -0
- package/out/adapters/openaddresses/adapter.d.ts +28 -43
- package/out/adapters/openaddresses/adapter.d.ts.map +1 -1
- package/out/adapters/openaddresses/adapter.js +37 -51
- package/out/adapters/openaddresses/adapter.js.map +1 -1
- package/out/adapters/osm/adapter.d.ts +101 -0
- package/out/adapters/osm/adapter.d.ts.map +1 -0
- package/out/adapters/osm/adapter.js +260 -0
- package/out/adapters/osm/adapter.js.map +1 -0
- package/out/adapters/overture/adapter.d.ts +14 -30
- package/out/adapters/overture/adapter.d.ts.map +1 -1
- package/out/adapters/overture/adapter.js +57 -41
- package/out/adapters/overture/adapter.js.map +1 -1
- package/out/adapters/po-box/adapter.d.ts +63 -0
- package/out/adapters/po-box/adapter.d.ts.map +1 -0
- package/out/adapters/po-box/adapter.js +139 -0
- package/out/adapters/po-box/adapter.js.map +1 -0
- package/out/adapters/registry.d.ts +55 -0
- package/out/adapters/registry.d.ts.map +1 -0
- package/out/adapters/registry.js +43 -0
- package/out/adapters/registry.js.map +1 -0
- package/out/adapters/sha256-stream.d.ts +26 -0
- package/out/adapters/sha256-stream.d.ts.map +1 -0
- package/out/adapters/sha256-stream.js +34 -0
- package/out/adapters/sha256-stream.js.map +1 -0
- package/out/adapters/source-id.d.ts +33 -0
- package/out/adapters/source-id.d.ts.map +1 -0
- package/out/adapters/source-id.js +42 -0
- package/out/adapters/source-id.js.map +1 -0
- package/out/adapters/street-line.d.ts +102 -0
- package/out/adapters/street-line.d.ts.map +1 -0
- package/out/adapters/street-line.js +117 -0
- package/out/adapters/street-line.js.map +1 -0
- package/out/adapters/wof/admin/json/adapter.d.ts +88 -0
- package/out/adapters/wof/admin/json/adapter.d.ts.map +1 -0
- package/out/adapters/wof/admin/json/adapter.js +220 -0
- package/out/adapters/wof/admin/json/adapter.js.map +1 -0
- package/out/adapters/wof/json-rows.d.ts +89 -0
- package/out/adapters/wof/json-rows.d.ts.map +1 -0
- package/out/adapters/wof/json-rows.js +135 -0
- package/out/adapters/wof/json-rows.js.map +1 -0
- package/out/adapters/wof/postalcode-json/adapter.d.ts +49 -0
- package/out/adapters/wof/postalcode-json/adapter.d.ts.map +1 -0
- package/out/adapters/wof/postalcode-json/adapter.js +165 -0
- package/out/adapters/wof/postalcode-json/adapter.js.map +1 -0
- package/out/adapters.d.ts +75 -0
- package/out/adapters.d.ts.map +1 -0
- package/out/adapters.js +167 -0
- package/out/adapters.js.map +1 -0
- package/out/au/adapters/gnaf/adapter.d.ts +37 -0
- package/out/au/adapters/gnaf/adapter.d.ts.map +1 -0
- package/out/au/adapters/gnaf/adapter.js +119 -0
- package/out/au/adapters/gnaf/adapter.js.map +1 -0
- package/out/au/adapters/gnaf/assemble.d.ts +54 -0
- package/out/au/adapters/gnaf/assemble.d.ts.map +1 -0
- package/out/au/adapters/gnaf/assemble.js +134 -0
- package/out/au/adapters/gnaf/assemble.js.map +1 -0
- package/out/be/adapters/brussels/adapter.d.ts +212 -0
- package/out/be/adapters/brussels/adapter.d.ts.map +1 -0
- package/out/be/adapters/brussels/adapter.js +435 -0
- package/out/be/adapters/brussels/adapter.js.map +1 -0
- package/out/be/adapters/vlaanderen/adapter.d.ts +233 -0
- package/out/be/adapters/vlaanderen/adapter.d.ts.map +1 -0
- package/out/be/adapters/vlaanderen/adapter.js +416 -0
- package/out/be/adapters/vlaanderen/adapter.js.map +1 -0
- package/out/be/adapters/wallonie/adapter.d.ts +196 -0
- package/out/be/adapters/wallonie/adapter.d.ts.map +1 -0
- package/out/be/adapters/wallonie/adapter.js +437 -0
- package/out/be/adapters/wallonie/adapter.js.map +1 -0
- package/out/be/tools/fetch/brussels.d.ts +119 -0
- package/out/be/tools/fetch/brussels.d.ts.map +1 -0
- package/out/be/tools/fetch/brussels.js +146 -0
- package/out/be/tools/fetch/brussels.js.map +1 -0
- package/out/be/tools/fetch/wallonie.d.ts +119 -0
- package/out/be/tools/fetch/wallonie.d.ts.map +1 -0
- package/out/be/tools/fetch/wallonie.js +167 -0
- package/out/be/tools/fetch/wallonie.js.map +1 -0
- package/out/build/adapters.d.ts +33 -0
- package/out/build/adapters.d.ts.map +1 -0
- package/out/build/adapters.js +68 -0
- package/out/build/adapters.js.map +1 -0
- package/out/build/align.d.ts +73 -0
- package/out/build/align.d.ts.map +1 -0
- package/out/build/align.js +226 -0
- package/out/build/align.js.map +1 -0
- package/out/build/checkpoint.d.ts +94 -0
- package/out/build/checkpoint.d.ts.map +1 -0
- package/out/build/checkpoint.js +59 -0
- package/out/build/checkpoint.js.map +1 -0
- package/out/build/eligibility.d.ts +47 -0
- package/out/build/eligibility.d.ts.map +1 -0
- package/out/build/eligibility.js +80 -0
- package/out/build/eligibility.js.map +1 -0
- package/out/build/heap.d.ts +28 -0
- package/out/build/heap.d.ts.map +1 -0
- package/out/build/heap.js +47 -0
- package/out/build/heap.js.map +1 -0
- package/out/build/inputs.d.ts +52 -0
- package/out/build/inputs.d.ts.map +1 -0
- package/out/build/inputs.js +49 -0
- package/out/build/inputs.js.map +1 -0
- package/out/build/rows.d.ts +16 -0
- package/out/build/rows.d.ts.map +1 -0
- package/out/build/rows.js +19 -0
- package/out/build/rows.js.map +1 -0
- package/out/build/types.d.ts +220 -0
- package/out/build/types.d.ts.map +1 -0
- package/out/build/types.js +34 -0
- package/out/build/types.js.map +1 -0
- package/out/build.d.ts +6 -121
- package/out/build.d.ts.map +1 -1
- package/out/build.js +112 -207
- package/out/build.js.map +1 -1
- package/out/cn/recipes/organizational-units.d.ts +19 -0
- package/out/cn/recipes/organizational-units.d.ts.map +1 -0
- package/out/cn/recipes/organizational-units.js +138 -0
- package/out/cn/recipes/organizational-units.js.map +1 -0
- package/out/cz/adapters/cuzk/adapter.d.ts +52 -0
- package/out/cz/adapters/cuzk/adapter.d.ts.map +1 -0
- package/out/cz/adapters/cuzk/adapter.js +266 -0
- package/out/cz/adapters/cuzk/adapter.js.map +1 -0
- package/out/cz/recipes/pcfirst-preposition.d.ts +18 -0
- package/out/cz/recipes/pcfirst-preposition.d.ts.map +1 -0
- package/out/cz/recipes/pcfirst-preposition.js +110 -0
- package/out/cz/recipes/pcfirst-preposition.js.map +1 -0
- package/out/cz/tools/fetch/cuzk.d.ts +272 -0
- package/out/cz/tools/fetch/cuzk.d.ts.map +1 -0
- package/out/cz/tools/fetch/cuzk.js +446 -0
- package/out/cz/tools/fetch/cuzk.js.map +1 -0
- package/out/de/recipes/locale.d.ts +42 -0
- package/out/de/recipes/locale.d.ts.map +1 -0
- package/out/de/recipes/locale.js +299 -0
- package/out/de/recipes/locale.js.map +1 -0
- package/out/directory.d.ts +20 -0
- package/out/directory.d.ts.map +1 -0
- package/out/directory.js +27 -0
- package/out/directory.js.map +1 -0
- package/out/dk/adapters/inspire/adapter.d.ts +154 -0
- package/out/dk/adapters/inspire/adapter.d.ts.map +1 -0
- package/out/dk/adapters/inspire/adapter.js +258 -0
- package/out/dk/adapters/inspire/adapter.js.map +1 -0
- package/out/dk/tools/fetch/inspire.d.ts +100 -0
- package/out/dk/tools/fetch/inspire.d.ts.map +1 -0
- package/out/dk/tools/fetch/inspire.js +230 -0
- package/out/dk/tools/fetch/inspire.js.map +1 -0
- package/out/ee/adapters/ads/adapter.d.ts +109 -0
- package/out/ee/adapters/ads/adapter.d.ts.map +1 -0
- package/out/ee/adapters/ads/adapter.js +191 -0
- package/out/ee/adapters/ads/adapter.js.map +1 -0
- package/out/ee/tools/fetch/ads.d.ts +123 -0
- package/out/ee/tools/fetch/ads.d.ts.map +1 -0
- package/out/ee/tools/fetch/ads.js +195 -0
- package/out/ee/tools/fetch/ads.js.map +1 -0
- package/out/env.d.ts +7 -3
- package/out/env.d.ts.map +1 -1
- package/out/env.js +6 -2
- package/out/env.js.map +1 -1
- package/out/es/adapters/bizkaia/adapter.d.ts +143 -0
- package/out/es/adapters/bizkaia/adapter.d.ts.map +1 -0
- package/out/es/adapters/bizkaia/adapter.js +332 -0
- package/out/es/adapters/bizkaia/adapter.js.map +1 -0
- package/out/es/adapters/catastro/adapter.d.ts +104 -0
- package/out/es/adapters/catastro/adapter.d.ts.map +1 -0
- package/out/es/adapters/catastro/adapter.js +288 -0
- package/out/es/adapters/catastro/adapter.js.map +1 -0
- package/out/es/adapters/gipuzkoa/adapter.d.ts +91 -0
- package/out/es/adapters/gipuzkoa/adapter.d.ts.map +1 -0
- package/out/es/adapters/gipuzkoa/adapter.js +225 -0
- package/out/es/adapters/gipuzkoa/adapter.js.map +1 -0
- package/out/es/adapters/navarra/adapter.d.ts +105 -0
- package/out/es/adapters/navarra/adapter.d.ts.map +1 -0
- package/out/es/adapters/navarra/adapter.js +241 -0
- package/out/es/adapters/navarra/adapter.js.map +1 -0
- package/out/es/cadastre.d.ts +109 -0
- package/out/es/cadastre.d.ts.map +1 -0
- package/out/es/cadastre.js +130 -0
- package/out/es/cadastre.js.map +1 -0
- package/out/es/tools/fetch/bizkaia.d.ts +278 -0
- package/out/es/tools/fetch/bizkaia.d.ts.map +1 -0
- package/out/es/tools/fetch/bizkaia.js +477 -0
- package/out/es/tools/fetch/bizkaia.js.map +1 -0
- package/out/es/tools/fetch/catastro.d.ts +272 -0
- package/out/es/tools/fetch/catastro.d.ts.map +1 -0
- package/out/es/tools/fetch/catastro.js +486 -0
- package/out/es/tools/fetch/catastro.js.map +1 -0
- package/out/es/tools/fetch/gipuzkoa.d.ts +162 -0
- package/out/es/tools/fetch/gipuzkoa.d.ts.map +1 -0
- package/out/es/tools/fetch/gipuzkoa.js +209 -0
- package/out/es/tools/fetch/gipuzkoa.js.map +1 -0
- package/out/es/tools/fetch/navarra.d.ts +189 -0
- package/out/es/tools/fetch/navarra.d.ts.map +1 -0
- package/out/es/tools/fetch/navarra.js +316 -0
- package/out/es/tools/fetch/navarra.js.map +1 -0
- package/out/fi/adapters/ryhti/adapter.d.ts +115 -0
- package/out/fi/adapters/ryhti/adapter.d.ts.map +1 -0
- package/out/fi/adapters/ryhti/adapter.js +244 -0
- package/out/fi/adapters/ryhti/adapter.js.map +1 -0
- package/out/fi/tools/fetch/ryhti.d.ts +206 -0
- package/out/fi/tools/fetch/ryhti.d.ts.map +1 -0
- package/out/fi/tools/fetch/ryhti.js +327 -0
- package/out/fi/tools/fetch/ryhti.js.map +1 -0
- package/out/fingerprints.d.ts +68 -0
- package/out/fingerprints.d.ts.map +1 -0
- package/out/fingerprints.js +130 -0
- package/out/fingerprints.js.map +1 -0
- package/out/fr/adapters/annuaire-education/adapter.d.ts +236 -0
- package/out/fr/adapters/annuaire-education/adapter.d.ts.map +1 -0
- package/out/fr/adapters/annuaire-education/adapter.js +475 -0
- package/out/fr/adapters/annuaire-education/adapter.js.map +1 -0
- package/out/fr/adapters/ban/adapter.d.ts +38 -0
- package/out/fr/adapters/ban/adapter.d.ts.map +1 -0
- package/out/fr/adapters/ban/adapter.js +134 -0
- package/out/fr/adapters/ban/adapter.js.map +1 -0
- package/out/fr/adapters/finess/adapter.d.ts +276 -0
- package/out/fr/adapters/finess/adapter.d.ts.map +1 -0
- package/out/fr/adapters/finess/adapter.js +519 -0
- package/out/fr/adapters/finess/adapter.js.map +1 -0
- package/out/fr/adapters/finess/postal-lines.d.ts +61 -0
- package/out/fr/adapters/finess/postal-lines.d.ts.map +1 -0
- package/out/fr/adapters/finess/postal-lines.js +114 -0
- package/out/fr/adapters/finess/postal-lines.js.map +1 -0
- package/out/fr/adapters/finess/voie-type.d.ts +77 -0
- package/out/fr/adapters/finess/voie-type.d.ts.map +1 -0
- package/out/fr/adapters/finess/voie-type.js +172 -0
- package/out/fr/adapters/finess/voie-type.js.map +1 -0
- package/out/fr/insee-country.d.ts +45 -0
- package/out/fr/insee-country.d.ts.map +1 -0
- package/out/fr/insee-country.js +60 -0
- package/out/fr/insee-country.js.map +1 -0
- package/out/fr/recipes/admin-split.d.ts +15 -0
- package/out/fr/recipes/admin-split.d.ts.map +1 -0
- package/out/fr/recipes/admin-split.js +170 -0
- package/out/fr/recipes/admin-split.js.map +1 -0
- package/out/fr/recipes/bare-street.d.ts +13 -0
- package/out/fr/recipes/bare-street.d.ts.map +1 -0
- package/out/fr/recipes/bare-street.js +129 -0
- package/out/fr/recipes/bare-street.js.map +1 -0
- package/out/fr/recipes/fragment.d.ts +18 -0
- package/out/fr/recipes/fragment.d.ts.map +1 -0
- package/out/fr/recipes/fragment.js +197 -0
- package/out/fr/recipes/fragment.js.map +1 -0
- package/out/fr/recipes/lieudit.d.ts +30 -0
- package/out/fr/recipes/lieudit.d.ts.map +1 -0
- package/out/fr/recipes/lieudit.js +231 -0
- package/out/fr/recipes/lieudit.js.map +1 -0
- package/out/fr/recipes/order.d.ts +15 -0
- package/out/fr/recipes/order.d.ts.map +1 -0
- package/out/fr/recipes/order.js +171 -0
- package/out/fr/recipes/order.js.map +1 -0
- package/out/fr/street-decompose.d.ts +29 -0
- package/out/fr/street-decompose.d.ts.map +1 -0
- package/out/fr/street-decompose.js +52 -0
- package/out/fr/street-decompose.js.map +1 -0
- package/out/fr/tools/fetch/annuaire-education.d.ts +130 -0
- package/out/fr/tools/fetch/annuaire-education.d.ts.map +1 -0
- package/out/fr/tools/fetch/annuaire-education.js +196 -0
- package/out/fr/tools/fetch/annuaire-education.js.map +1 -0
- package/out/fr/tools/fetch/ban.d.ts +33 -0
- package/out/fr/tools/fetch/ban.d.ts.map +1 -0
- package/out/fr/tools/fetch/ban.js +248 -0
- package/out/fr/tools/fetch/ban.js.map +1 -0
- package/out/fr/tools/fetch/finess.d.ts +145 -0
- package/out/fr/tools/fetch/finess.d.ts.map +1 -0
- package/out/fr/tools/fetch/finess.js +228 -0
- package/out/fr/tools/fetch/finess.js.map +1 -0
- package/out/gauntlet-inputs.d.ts +42 -0
- package/out/gauntlet-inputs.d.ts.map +1 -0
- package/out/gauntlet-inputs.js +78 -0
- package/out/gauntlet-inputs.js.map +1 -0
- package/out/index.d.ts +10 -4
- package/out/index.d.ts.map +1 -1
- package/out/index.js +10 -4
- package/out/index.js.map +1 -1
- package/out/inspire/address.d.ts +251 -0
- package/out/inspire/address.d.ts.map +1 -0
- package/out/inspire/address.js +384 -0
- package/out/inspire/address.js.map +1 -0
- package/out/inspire/archive.d.ts +36 -0
- package/out/inspire/archive.d.ts.map +1 -0
- package/out/inspire/archive.js +42 -0
- package/out/inspire/archive.js.map +1 -0
- package/out/inspire/errors.d.ts +55 -0
- package/out/inspire/errors.d.ts.map +1 -0
- package/out/inspire/errors.js +64 -0
- package/out/inspire/errors.js.map +1 -0
- package/out/inspire/stream.d.ts +137 -0
- package/out/inspire/stream.d.ts.map +1 -0
- package/out/inspire/stream.js +125 -0
- package/out/inspire/stream.js.map +1 -0
- package/out/international/recipes/locale.d.ts +90 -0
- package/out/international/recipes/locale.d.ts.map +1 -0
- package/out/international/recipes/locale.js +419 -0
- package/out/international/recipes/locale.js.map +1 -0
- package/out/it/adapters/anac/adapter.d.ts +267 -0
- package/out/it/adapters/anac/adapter.d.ts.map +1 -0
- package/out/it/adapters/anac/adapter.js +429 -0
- package/out/it/adapters/anac/adapter.js.map +1 -0
- package/out/it/tools/fetch/anac.d.ts +174 -0
- package/out/it/tools/fetch/anac.d.ts.map +1 -0
- package/out/it/tools/fetch/anac.js +272 -0
- package/out/it/tools/fetch/anac.js.map +1 -0
- package/out/jp/adapters/wof-admin/adapter.d.ts +68 -0
- package/out/jp/adapters/wof-admin/adapter.d.ts.map +1 -0
- package/out/jp/adapters/wof-admin/adapter.js +172 -0
- package/out/jp/adapters/wof-admin/adapter.js.map +1 -0
- package/out/jp/tools/fetch/houjin.d.ts +27 -0
- package/out/jp/tools/fetch/houjin.d.ts.map +1 -0
- package/out/jp/tools/fetch/houjin.js +106 -0
- package/out/jp/tools/fetch/houjin.js.map +1 -0
- package/out/kr/adapters/juso/label-rows.d.ts +62 -0
- package/out/kr/adapters/juso/label-rows.d.ts.map +1 -0
- package/out/kr/adapters/juso/label-rows.js +172 -0
- package/out/kr/adapters/juso/label-rows.js.map +1 -0
- package/out/kr/adapters/localdata/align.d.ts +31 -0
- package/out/kr/adapters/localdata/align.d.ts.map +1 -0
- package/out/kr/adapters/localdata/align.js +212 -0
- package/out/kr/adapters/localdata/align.js.map +1 -0
- package/out/kr/adapters/localdata/key-index.d.ts +62 -0
- package/out/kr/adapters/localdata/key-index.d.ts.map +1 -0
- package/out/kr/adapters/localdata/key-index.js +127 -0
- package/out/kr/adapters/localdata/key-index.js.map +1 -0
- package/out/kr/adapters/localdata/permit-rows.d.ts +73 -0
- package/out/kr/adapters/localdata/permit-rows.d.ts.map +1 -0
- package/out/kr/adapters/localdata/permit-rows.js +136 -0
- package/out/kr/adapters/localdata/permit-rows.js.map +1 -0
- package/out/kr/tools/fetch/juso.d.ts +33 -0
- package/out/kr/tools/fetch/juso.d.ts.map +1 -0
- package/out/kr/tools/fetch/juso.js +121 -0
- package/out/kr/tools/fetch/juso.js.map +1 -0
- package/out/kr/tools/fetch/localdata.d.ts +37 -0
- package/out/kr/tools/fetch/localdata.d.ts.map +1 -0
- package/out/kr/tools/fetch/localdata.js +147 -0
- package/out/kr/tools/fetch/localdata.js.map +1 -0
- package/out/lu/adapters/bd-adresses/adapter.d.ts +109 -0
- package/out/lu/adapters/bd-adresses/adapter.d.ts.map +1 -0
- package/out/lu/adapters/bd-adresses/adapter.js +196 -0
- package/out/lu/adapters/bd-adresses/adapter.js.map +1 -0
- package/out/lu/tools/fetch/bd-adresses.d.ts +163 -0
- package/out/lu/tools/fetch/bd-adresses.d.ts.map +1 -0
- package/out/lu/tools/fetch/bd-adresses.js +223 -0
- package/out/lu/tools/fetch/bd-adresses.js.map +1 -0
- package/out/lv/adapters/varis/adapter.d.ts +283 -0
- package/out/lv/adapters/varis/adapter.d.ts.map +1 -0
- package/out/lv/adapters/varis/adapter.js +404 -0
- package/out/lv/adapters/varis/adapter.js.map +1 -0
- package/out/lv/tools/fetch/varis.d.ts +80 -0
- package/out/lv/tools/fetch/varis.d.ts.map +1 -0
- package/out/lv/tools/fetch/varis.js +133 -0
- package/out/lv/tools/fetch/varis.js.map +1 -0
- package/out/nl/adapters/kadaster/adapter.d.ts +125 -0
- package/out/nl/adapters/kadaster/adapter.d.ts.map +1 -0
- package/out/nl/adapters/kadaster/adapter.js +310 -0
- package/out/nl/adapters/kadaster/adapter.js.map +1 -0
- package/out/nl/recipes/postcode.d.ts +24 -0
- package/out/nl/recipes/postcode.d.ts.map +1 -0
- package/out/nl/recipes/postcode.js +121 -0
- package/out/nl/recipes/postcode.js.map +1 -0
- package/out/nl/tools/fetch/kadaster.d.ts +155 -0
- package/out/nl/tools/fetch/kadaster.d.ts.map +1 -0
- package/out/nl/tools/fetch/kadaster.js +179 -0
- package/out/nl/tools/fetch/kadaster.js.map +1 -0
- package/out/no/adapters/matrikkelen/adapter.d.ts +44 -0
- package/out/no/adapters/matrikkelen/adapter.d.ts.map +1 -0
- package/out/no/adapters/matrikkelen/adapter.js +143 -0
- package/out/no/adapters/matrikkelen/adapter.js.map +1 -0
- package/out/no/recipes/fragment.d.ts +11 -0
- package/out/no/recipes/fragment.d.ts.map +1 -0
- package/out/no/recipes/fragment.js +149 -0
- package/out/no/recipes/fragment.js.map +1 -0
- package/out/no/recipes/street/led.d.ts +21 -0
- package/out/no/recipes/street/led.d.ts.map +1 -0
- package/out/no/recipes/street/led.js +124 -0
- package/out/no/recipes/street/led.js.map +1 -0
- package/out/no/recipes/street.d.ts +19 -0
- package/out/no/recipes/street.d.ts.map +1 -0
- package/out/no/recipes/street.js +88 -0
- package/out/no/recipes/street.js.map +1 -0
- package/out/no/tools/fetch/matrikkelen.d.ts +251 -0
- package/out/no/tools/fetch/matrikkelen.d.ts.map +1 -0
- package/out/no/tools/fetch/matrikkelen.js +345 -0
- package/out/no/tools/fetch/matrikkelen.js.map +1 -0
- package/out/parquet/duckdb.d.ts +100 -0
- package/out/parquet/duckdb.d.ts.map +1 -0
- package/out/parquet/duckdb.js +92 -0
- package/out/parquet/duckdb.js.map +1 -0
- package/out/parquet/readers.d.ts +44 -0
- package/out/parquet/readers.d.ts.map +1 -0
- package/out/parquet/readers.js +69 -0
- package/out/parquet/readers.js.map +1 -0
- package/out/parquet/schema.d.ts +95 -0
- package/out/parquet/schema.d.ts.map +1 -0
- package/out/parquet/schema.js +157 -0
- package/out/parquet/schema.js.map +1 -0
- package/out/parquet/shuffle.d.ts +25 -0
- package/out/parquet/shuffle.d.ts.map +1 -0
- package/out/parquet/shuffle.js +44 -0
- package/out/parquet/shuffle.js.map +1 -0
- package/out/parquet/span-sql.d.ts +49 -0
- package/out/parquet/span-sql.d.ts.map +1 -0
- package/out/parquet/span-sql.js +53 -0
- package/out/parquet/span-sql.js.map +1 -0
- package/out/parquet/streams.d.ts +47 -0
- package/out/parquet/streams.d.ts.map +1 -0
- package/out/parquet/streams.js +78 -0
- package/out/parquet/streams.js.map +1 -0
- package/out/parquet/writers.d.ts +124 -0
- package/out/parquet/writers.d.ts.map +1 -0
- package/out/parquet/writers.js +251 -0
- package/out/parquet/writers.js.map +1 -0
- package/out/pl/adapters/emuia/adapter.d.ts +81 -0
- package/out/pl/adapters/emuia/adapter.d.ts.map +1 -0
- package/out/pl/adapters/emuia/adapter.js +178 -0
- package/out/pl/adapters/emuia/adapter.js.map +1 -0
- package/out/pl/tools/fetch/emuia.d.ts +165 -0
- package/out/pl/tools/fetch/emuia.d.ts.map +1 -0
- package/out/pl/tools/fetch/emuia.js +260 -0
- package/out/pl/tools/fetch/emuia.js.map +1 -0
- package/out/recipes/anchor-absorption.d.ts +9 -9
- package/out/recipes/anchor-absorption.d.ts.map +1 -1
- package/out/recipes/anchor-absorption.js +29 -19
- package/out/recipes/anchor-absorption.js.map +1 -1
- package/out/recipes/bare/country.d.ts +7 -0
- package/out/recipes/bare/country.d.ts.map +1 -0
- package/out/recipes/bare/country.js +77 -0
- package/out/recipes/bare/country.js.map +1 -0
- package/out/recipes/bare/postcode/eval.d.ts +29 -0
- package/out/recipes/bare/postcode/eval.d.ts.map +1 -0
- package/out/recipes/bare/postcode/eval.js +85 -0
- package/out/recipes/bare/postcode/eval.js.map +1 -0
- package/out/recipes/bare/postcode.d.ts +41 -0
- package/out/recipes/bare/postcode.d.ts.map +1 -0
- package/out/recipes/bare/postcode.js +279 -0
- package/out/recipes/bare/postcode.js.map +1 -0
- package/out/recipes/boundary-stress.d.ts +8 -8
- package/out/recipes/boundary-stress.d.ts.map +1 -1
- package/out/recipes/boundary-stress.js +36 -19
- package/out/recipes/boundary-stress.js.map +1 -1
- package/out/recipes/country-balanced.d.ts +3 -21
- package/out/recipes/country-balanced.d.ts.map +1 -1
- package/out/recipes/country-balanced.js +58 -76
- package/out/recipes/country-balanced.js.map +1 -1
- package/out/recipes/house-venue.d.ts +8 -6
- package/out/recipes/house-venue.d.ts.map +1 -1
- package/out/recipes/house-venue.js +29 -13
- package/out/recipes/house-venue.js.map +1 -1
- package/out/recipes/intersection.d.ts +20 -20
- package/out/recipes/intersection.d.ts.map +1 -1
- package/out/recipes/intersection.js +65 -53
- package/out/recipes/intersection.js.map +1 -1
- package/out/recipes/po/box/cedex/au-nz.d.ts +7 -0
- package/out/recipes/po/box/cedex/au-nz.d.ts.map +1 -0
- package/out/recipes/po/box/cedex/au-nz.js +56 -0
- package/out/recipes/po/box/cedex/au-nz.js.map +1 -0
- package/out/recipes/po/box/cedex/ca.d.ts +7 -0
- package/out/recipes/po/box/cedex/ca.d.ts.map +1 -0
- package/out/recipes/po/box/cedex/ca.js +38 -0
- package/out/recipes/po/box/cedex/ca.js.map +1 -0
- package/out/recipes/po/box/cedex/fr.d.ts +7 -0
- package/out/recipes/po/box/cedex/fr.d.ts.map +1 -0
- package/out/recipes/po/box/cedex/fr.js +57 -0
- package/out/recipes/po/box/cedex/fr.js.map +1 -0
- package/out/recipes/po/box/cedex/phrases.d.ts +8 -0
- package/out/recipes/po/box/cedex/phrases.d.ts.map +1 -0
- package/out/recipes/po/box/cedex/phrases.js +77 -0
- package/out/recipes/po/box/cedex/phrases.js.map +1 -0
- package/out/recipes/po/box/cedex/recipe.d.ts +9 -0
- package/out/recipes/po/box/cedex/recipe.d.ts.map +1 -0
- package/out/recipes/po/box/cedex/recipe.js +163 -0
- package/out/recipes/po/box/cedex/recipe.js.map +1 -0
- package/out/recipes/po/box/cedex/sources.d.ts +86 -0
- package/out/recipes/po/box/cedex/sources.d.ts.map +1 -0
- package/out/recipes/po/box/cedex/sources.js +143 -0
- package/out/recipes/po/box/cedex/sources.js.map +1 -0
- package/out/recipes/po/box/cedex/types.d.ts +31 -0
- package/out/recipes/po/box/cedex/types.d.ts.map +1 -0
- package/out/recipes/po/box/cedex/types.js +5 -0
- package/out/recipes/po/box/cedex/types.js.map +1 -0
- package/out/recipes/po/box/cedex/us.d.ts +7 -0
- package/out/recipes/po/box/cedex/us.d.ts.map +1 -0
- package/out/recipes/po/box/cedex/us.js +54 -0
- package/out/recipes/po/box/cedex/us.js.map +1 -0
- package/out/recipes/po/box/cedex/vocabulary.d.ts +68 -0
- package/out/recipes/po/box/cedex/vocabulary.d.ts.map +1 -0
- package/out/recipes/po/box/cedex/vocabulary.js +90 -0
- package/out/recipes/po/box/cedex/vocabulary.js.map +1 -0
- package/out/recipes/po/box/cedex.d.ts +9 -0
- package/out/recipes/po/box/cedex.d.ts.map +1 -0
- package/out/recipes/po/box/cedex.js +9 -0
- package/out/recipes/po/box/cedex.js.map +1 -0
- package/out/recipes/po/box.d.ts +18 -0
- package/out/recipes/po/box.d.ts.map +1 -0
- package/out/recipes/po/box.js +123 -0
- package/out/recipes/po/box.js.map +1 -0
- package/out/recipes/scaffold.d.ts +214 -121
- package/out/recipes/scaffold.d.ts.map +1 -1
- package/out/recipes/scaffold.js +78 -88
- package/out/recipes/scaffold.js.map +1 -1
- package/out/recipes/sources.d.ts +178 -0
- package/out/recipes/sources.d.ts.map +1 -0
- package/out/recipes/sources.js +348 -0
- package/out/recipes/sources.js.map +1 -0
- package/out/recipes/street/affix.d.ts +59 -0
- package/out/recipes/street/affix.d.ts.map +1 -0
- package/out/recipes/street/affix.js +477 -0
- package/out/recipes/street/affix.js.map +1 -0
- package/out/recipes/street/bare.d.ts +27 -0
- package/out/recipes/street/bare.d.ts.map +1 -0
- package/out/recipes/street/bare.js +98 -0
- package/out/recipes/street/bare.js.map +1 -0
- package/out/recipes/street.d.ts +6 -4
- package/out/recipes/street.d.ts.map +1 -1
- package/out/recipes/street.js +29 -8
- package/out/recipes/street.js.map +1 -1
- package/out/recipes/sub/venue/context.d.ts +32 -0
- package/out/recipes/sub/venue/context.d.ts.map +1 -0
- package/out/recipes/sub/venue/context.js +110 -0
- package/out/recipes/sub/venue/context.js.map +1 -0
- package/out/recipes/sub/venue/render.d.ts +58 -0
- package/out/recipes/sub/venue/render.d.ts.map +1 -0
- package/out/recipes/sub/venue/render.js +118 -0
- package/out/recipes/sub/venue/render.js.map +1 -0
- package/out/recipes/sub/venue/sources.d.ts +166 -0
- package/out/recipes/sub/venue/sources.d.ts.map +1 -0
- package/out/recipes/sub/venue/sources.js +419 -0
- package/out/recipes/sub/venue/sources.js.map +1 -0
- package/out/recipes/sub/venue.d.ts +176 -0
- package/out/recipes/sub/venue.d.ts.map +1 -0
- package/out/recipes/sub/venue.js +562 -0
- package/out/recipes/sub/venue.js.map +1 -0
- package/out/recipes/trailing-region.d.ts +9 -61
- package/out/recipes/trailing-region.d.ts.map +1 -1
- package/out/recipes/trailing-region.js +56 -81
- package/out/recipes/trailing-region.js.map +1 -1
- package/out/recipes/unit/sources.d.ts +28 -0
- package/out/recipes/unit/sources.d.ts.map +1 -0
- package/out/recipes/unit/sources.js +30 -0
- package/out/recipes/unit/sources.js.map +1 -0
- package/out/recipes/unit.d.ts +30 -17
- package/out/recipes/unit.d.ts.map +1 -1
- package/out/recipes/unit.js +90 -79
- package/out/recipes/unit.js.map +1 -1
- package/out/recipes.d.ts +26 -0
- package/out/recipes.d.ts.map +1 -0
- package/out/recipes.js +100 -0
- package/out/recipes.js.map +1 -0
- package/out/registers.d.ts +277 -0
- package/out/registers.d.ts.map +1 -0
- package/out/registers.js +273 -0
- package/out/registers.js.map +1 -0
- package/out/ro/adapters/retea-scolara/adapter.d.ts +114 -0
- package/out/ro/adapters/retea-scolara/adapter.d.ts.map +1 -0
- package/out/ro/adapters/retea-scolara/adapter.js +209 -0
- package/out/ro/adapters/retea-scolara/adapter.js.map +1 -0
- package/out/ro/tools/fetch/retea-scolara.d.ts +69 -0
- package/out/ro/tools/fetch/retea-scolara.d.ts.map +1 -0
- package/out/ro/tools/fetch/retea-scolara.js +117 -0
- package/out/ro/tools/fetch/retea-scolara.js.map +1 -0
- package/out/runner.d.ts +120 -60
- package/out/runner.d.ts.map +1 -1
- package/out/runner.js +130 -56
- package/out/runner.js.map +1 -1
- package/out/sg/recipes/register.d.ts +55 -0
- package/out/sg/recipes/register.d.ts.map +1 -0
- package/out/sg/recipes/register.js +206 -0
- package/out/sg/recipes/register.js.map +1 -0
- package/out/sg/tools/fetch/acra.d.ts +20 -0
- package/out/sg/tools/fetch/acra.d.ts.map +1 -0
- package/out/sg/tools/fetch/acra.js +123 -0
- package/out/sg/tools/fetch/acra.js.map +1 -0
- package/out/si/recipes/bare-village.d.ts +31 -0
- package/out/si/recipes/bare-village.d.ts.map +1 -0
- package/out/si/recipes/bare-village.js +103 -0
- package/out/si/recipes/bare-village.js.map +1 -0
- package/out/sk/adapters/inspire/adapter.d.ts +119 -0
- package/out/sk/adapters/inspire/adapter.d.ts.map +1 -0
- package/out/sk/adapters/inspire/adapter.js +318 -0
- package/out/sk/adapters/inspire/adapter.js.map +1 -0
- package/out/sk/tools/fetch/inspire.d.ts +195 -0
- package/out/sk/tools/fetch/inspire.d.ts.map +1 -0
- package/out/sk/tools/fetch/inspire.js +280 -0
- package/out/sk/tools/fetch/inspire.js.map +1 -0
- package/out/source-register/effective-manifest.d.ts +355 -0
- package/out/source-register/effective-manifest.d.ts.map +1 -0
- package/out/source-register/effective-manifest.js +355 -0
- package/out/source-register/effective-manifest.js.map +1 -0
- package/out/source-register/register.d.ts +79 -0
- package/out/source-register/register.d.ts.map +1 -0
- package/out/source-register/register.js +400 -0
- package/out/source-register/register.js.map +1 -0
- package/out/source-register/training-manifest.d.ts +111 -0
- package/out/source-register/training-manifest.d.ts.map +1 -0
- package/out/source-register/training-manifest.js +120 -0
- package/out/source-register/training-manifest.js.map +1 -0
- package/out/source-register/types.d.ts +539 -0
- package/out/source-register/types.d.ts.map +1 -0
- package/out/source-register/types.js +263 -0
- package/out/source-register/types.js.map +1 -0
- package/out/source-register.d.ts +19 -0
- package/out/source-register.d.ts.map +1 -0
- package/out/source-register.js +16 -0
- package/out/source-register.js.map +1 -0
- package/out/south-asia/recipes/register.d.ts +54 -0
- package/out/south-asia/recipes/register.d.ts.map +1 -0
- package/out/south-asia/recipes/register.js +174 -0
- package/out/south-asia/recipes/register.js.map +1 -0
- package/out/subvenue/harvest.d.ts +117 -0
- package/out/subvenue/harvest.d.ts.map +1 -0
- package/out/subvenue/harvest.js +172 -0
- package/out/subvenue/harvest.js.map +1 -0
- package/out/subvenue/promotions.d.ts +65 -0
- package/out/subvenue/promotions.d.ts.map +1 -0
- package/out/subvenue/promotions.js +226 -0
- package/out/subvenue/promotions.js.map +1 -0
- package/out/subvenue/surfaces.d.ts +39 -0
- package/out/subvenue/surfaces.d.ts.map +1 -0
- package/out/subvenue/surfaces.js +75 -0
- package/out/subvenue/surfaces.js.map +1 -0
- package/out/subvenue/table.d.ts +212 -0
- package/out/subvenue/table.d.ts.map +1 -0
- package/out/subvenue/table.js +94 -0
- package/out/subvenue/table.js.map +1 -0
- package/out/surfaces/locale.d.ts +113 -0
- package/out/surfaces/locale.d.ts.map +1 -0
- package/out/surfaces/locale.js +136 -0
- package/out/surfaces/locale.js.map +1 -0
- package/out/synthesizers/anchor-absorption.d.ts +22 -31
- package/out/synthesizers/anchor-absorption.d.ts.map +1 -1
- package/out/synthesizers/anchor-absorption.js +30 -85
- package/out/synthesizers/anchor-absorption.js.map +1 -1
- package/out/synthesizers/boundary-stress.d.ts +17 -48
- package/out/synthesizers/boundary-stress.d.ts.map +1 -1
- package/out/synthesizers/boundary-stress.js +27 -121
- package/out/synthesizers/boundary-stress.js.map +1 -1
- package/out/synthesizers/house-venue.d.ts +22 -25
- package/out/synthesizers/house-venue.d.ts.map +1 -1
- package/out/synthesizers/house-venue.js +28 -97
- package/out/synthesizers/house-venue.js.map +1 -1
- package/out/synthesizers/intersection.d.ts +10 -8
- package/out/synthesizers/intersection.d.ts.map +1 -1
- package/out/synthesizers/intersection.js +33 -26
- package/out/synthesizers/intersection.js.map +1 -1
- package/out/synthesizers/no-street.d.ts +7 -37
- package/out/synthesizers/no-street.d.ts.map +1 -1
- package/out/synthesizers/no-street.js +55 -111
- package/out/synthesizers/no-street.js.map +1 -1
- package/out/synthesizers/po-box.d.ts +46 -45
- package/out/synthesizers/po-box.d.ts.map +1 -1
- package/out/synthesizers/po-box.js +57 -97
- package/out/synthesizers/po-box.js.map +1 -1
- package/out/synthesizers/street.d.ts +18 -12
- package/out/synthesizers/street.d.ts.map +1 -1
- package/out/synthesizers/street.js +37 -30
- package/out/synthesizers/street.js.map +1 -1
- package/out/synthesizers/utils.d.ts +32 -129
- package/out/synthesizers/utils.d.ts.map +1 -1
- package/out/synthesizers/utils.js +54 -166
- package/out/synthesizers/utils.js.map +1 -1
- package/out/test-kit/corpus-recipe.d.ts +29 -23
- package/out/test-kit/corpus-recipe.d.ts.map +1 -1
- package/out/test-kit/corpus-recipe.js +28 -13
- package/out/test-kit/corpus-recipe.js.map +1 -1
- package/out/test-kit.d.ts +63 -0
- package/out/test-kit.d.ts.map +1 -0
- package/out/test-kit.js +88 -0
- package/out/test-kit.js.map +1 -0
- package/out/tools/align-canonical.d.ts +7 -0
- package/out/tools/align-canonical.d.ts.map +1 -0
- package/out/tools/align-canonical.js +52 -0
- package/out/tools/align-canonical.js.map +1 -0
- package/out/tools/audit.d.ts +18 -11
- package/out/tools/audit.d.ts.map +1 -1
- package/out/tools/audit.js +87 -95
- package/out/tools/audit.js.map +1 -1
- package/out/tools/corpus-stats.d.ts +24 -15
- package/out/tools/corpus-stats.d.ts.map +1 -1
- package/out/tools/corpus-stats.js +35 -31
- package/out/tools/corpus-stats.js.map +1 -1
- package/out/tools/fetch/atom.d.ts +115 -0
- package/out/tools/fetch/atom.d.ts.map +1 -0
- package/out/tools/fetch/atom.js +84 -0
- package/out/tools/fetch/atom.js.map +1 -0
- package/out/tools/fetch/cordis.d.ts +123 -0
- package/out/tools/fetch/cordis.d.ts.map +1 -0
- package/out/tools/fetch/cordis.js +208 -0
- package/out/tools/fetch/cordis.js.map +1 -0
- package/out/tools/fetch/download/manifest.d.ts +56 -0
- package/out/tools/fetch/download/manifest.d.ts.map +1 -0
- package/out/tools/fetch/download/manifest.js +81 -0
- package/out/tools/fetch/download/manifest.js.map +1 -0
- package/out/tools/fetch/download/network.d.ts +126 -0
- package/out/tools/fetch/download/network.d.ts.map +1 -0
- package/out/tools/fetch/download/network.js +140 -0
- package/out/tools/fetch/download/network.js.map +1 -0
- package/out/tools/fetch/download/retry.d.ts +46 -0
- package/out/tools/fetch/download/retry.d.ts.map +1 -0
- package/out/tools/fetch/download/retry.js +136 -0
- package/out/tools/fetch/download/retry.js.map +1 -0
- package/out/tools/fetch/download.d.ts +4 -176
- package/out/tools/fetch/download.d.ts.map +1 -1
- package/out/tools/fetch/download.js +4 -312
- package/out/tools/fetch/download.js.map +1 -1
- package/out/tools/fetch/geonames/dump.d.ts +109 -0
- package/out/tools/fetch/geonames/dump.d.ts.map +1 -0
- package/out/tools/fetch/geonames/dump.js +181 -0
- package/out/tools/fetch/geonames/dump.js.map +1 -0
- package/out/tools/fetch/geonames/postal.d.ts +41 -0
- package/out/tools/fetch/geonames/postal.d.ts.map +1 -0
- package/out/tools/fetch/geonames/postal.js +87 -0
- package/out/tools/fetch/geonames/postal.js.map +1 -0
- package/out/tools/fetch/gleif.d.ts +137 -0
- package/out/tools/fetch/gleif.d.ts.map +1 -0
- package/out/tools/fetch/gleif.js +220 -0
- package/out/tools/fetch/gleif.js.map +1 -0
- package/out/tools/fetch/header.d.ts +41 -0
- package/out/tools/fetch/header.d.ts.map +1 -0
- package/out/tools/fetch/header.js +59 -0
- package/out/tools/fetch/header.js.map +1 -0
- package/out/tools/fetch/inspire-addresses.d.ts +249 -0
- package/out/tools/fetch/inspire-addresses.d.ts.map +1 -0
- package/out/tools/fetch/inspire-addresses.js +276 -0
- package/out/tools/fetch/inspire-addresses.js.map +1 -0
- package/out/tools/fetch/openaddresses.d.ts +0 -3
- package/out/tools/fetch/openaddresses.d.ts.map +1 -1
- package/out/tools/fetch/openaddresses.js +18 -97
- package/out/tools/fetch/openaddresses.js.map +1 -1
- package/out/tools/fetch/ourairports.d.ts +5 -32
- package/out/tools/fetch/ourairports.d.ts.map +1 -1
- package/out/tools/fetch/ourairports.js +13 -46
- package/out/tools/fetch/ourairports.js.map +1 -1
- package/out/tools/fetch/ppd.d.ts +4 -3
- package/out/tools/fetch/ppd.d.ts.map +1 -1
- package/out/tools/fetch/ppd.js +10 -9
- package/out/tools/fetch/ppd.js.map +1 -1
- package/out/tools/fetch/vlaanderen-ad.d.ts +131 -0
- package/out/tools/fetch/vlaanderen-ad.d.ts.map +1 -0
- package/out/tools/fetch/vlaanderen-ad.js +293 -0
- package/out/tools/fetch/vlaanderen-ad.js.map +1 -0
- package/out/tools/fetch/wfs-harvest.d.ts +410 -0
- package/out/tools/fetch/wfs-harvest.d.ts.map +1 -0
- package/out/tools/fetch/wfs-harvest.js +522 -0
- package/out/tools/fetch/wfs-harvest.js.map +1 -0
- package/out/tools/fetch/wikidata-subvenue.d.ts +31 -99
- package/out/tools/fetch/wikidata-subvenue.d.ts.map +1 -1
- package/out/tools/fetch/wikidata-subvenue.js +26 -121
- package/out/tools/fetch/wikidata-subvenue.js.map +1 -1
- package/out/tools/fetch/zip-archive.d.ts +54 -0
- package/out/tools/fetch/zip-archive.d.ts.map +1 -0
- package/out/tools/fetch/zip-archive.js +58 -0
- package/out/tools/fetch/zip-archive.js.map +1 -0
- package/out/tools/fetch.d.ts +140 -0
- package/out/tools/fetch.d.ts.map +1 -0
- package/out/tools/fetch.js +136 -0
- package/out/tools/fetch.js.map +1 -0
- package/out/tools/golden/expand.d.ts +105 -0
- package/out/tools/golden/expand.d.ts.map +1 -0
- package/out/tools/golden/expand.js +420 -0
- package/out/tools/golden/expand.js.map +1 -0
- package/out/tools/golden/promote.d.ts +77 -0
- package/out/tools/golden/promote.d.ts.map +1 -0
- package/out/tools/golden/promote.js +248 -0
- package/out/tools/golden/promote.js.map +1 -0
- package/out/tools/golden/relabel-street/directory.d.ts +98 -0
- package/out/tools/golden/relabel-street/directory.d.ts.map +1 -0
- package/out/tools/golden/relabel-street/directory.js +227 -0
- package/out/tools/golden/relabel-street/directory.js.map +1 -0
- package/out/tools/golden/relabel-street/row.d.ts +69 -0
- package/out/tools/golden/relabel-street/row.d.ts.map +1 -0
- package/out/tools/golden/relabel-street/row.js +174 -0
- package/out/tools/golden/relabel-street/row.js.map +1 -0
- package/out/tools/golden/relabel-street.d.ts +9 -0
- package/out/tools/golden/relabel-street.d.ts.map +1 -0
- package/out/tools/golden/relabel-street.js +9 -0
- package/out/tools/golden/relabel-street.js.map +1 -0
- package/out/tools/ingest-csv.d.ts +19 -15
- package/out/tools/ingest-csv.d.ts.map +1 -1
- package/out/tools/ingest-csv.js +39 -45
- package/out/tools/ingest-csv.js.map +1 -1
- package/out/tools/jsonl-to-parquet.d.ts +15 -28
- package/out/tools/jsonl-to-parquet.d.ts.map +1 -1
- package/out/tools/jsonl-to-parquet.js +49 -91
- package/out/tools/jsonl-to-parquet.js.map +1 -1
- package/out/tools/lint/recipe-output/vocab.d.ts +77 -0
- package/out/tools/lint/recipe-output/vocab.d.ts.map +1 -0
- package/out/tools/lint/recipe-output/vocab.js +239 -0
- package/out/tools/lint/recipe-output/vocab.js.map +1 -0
- package/out/tools/lint/recipe-output.d.ts +73 -0
- package/out/tools/lint/recipe-output.d.ts.map +1 -0
- package/out/tools/lint/recipe-output.js +302 -0
- package/out/tools/lint/recipe-output.js.map +1 -0
- package/out/tools/migrate/overlay-parquet.d.ts +30 -0
- package/out/tools/migrate/overlay-parquet.d.ts.map +1 -0
- package/out/tools/migrate/overlay-parquet.js +141 -0
- package/out/tools/migrate/overlay-parquet.js.map +1 -0
- package/out/tools/migrate/recipe-output.d.ts +35 -0
- package/out/tools/migrate/recipe-output.d.ts.map +1 -0
- package/out/tools/migrate/recipe-output.js +124 -0
- package/out/tools/migrate/recipe-output.js.map +1 -0
- package/out/tools/migrate/source-names.d.ts +52 -0
- package/out/tools/migrate/source-names.d.ts.map +1 -0
- package/out/tools/migrate/source-names.js +105 -0
- package/out/tools/migrate/source-names.js.map +1 -0
- package/out/tools/overlay/kryptonite.d.ts +33 -0
- package/out/tools/overlay/kryptonite.d.ts.map +1 -0
- package/out/tools/overlay/kryptonite.js +108 -0
- package/out/tools/overlay/kryptonite.js.map +1 -0
- package/out/tools/overlay/manifest.d.ts +142 -0
- package/out/tools/overlay/manifest.d.ts.map +1 -0
- package/out/tools/overlay/manifest.js +260 -0
- package/out/tools/overlay/manifest.js.map +1 -0
- package/out/tools/overlay/merge-source.d.ts +73 -0
- package/out/tools/overlay/merge-source.d.ts.map +1 -0
- package/out/tools/overlay/merge-source.js +63 -0
- package/out/tools/overlay/merge-source.js.map +1 -0
- package/out/tools/overlay/split-slice.d.ts +66 -0
- package/out/tools/overlay/split-slice.d.ts.map +1 -0
- package/out/tools/overlay/split-slice.js +78 -0
- package/out/tools/overlay/split-slice.js.map +1 -0
- package/out/tools/overlay/translit.d.ts +54 -0
- package/out/tools/overlay/translit.d.ts.map +1 -0
- package/out/tools/overlay/translit.js +177 -0
- package/out/tools/overlay/translit.js.map +1 -0
- package/out/tools/overture-subvenue.d.ts +17 -76
- package/out/tools/overture-subvenue.d.ts.map +1 -1
- package/out/tools/overture-subvenue.js +7 -74
- package/out/tools/overture-subvenue.js.map +1 -1
- package/out/tools/postcode-triples.d.ts +96 -109
- package/out/tools/postcode-triples.d.ts.map +1 -1
- package/out/tools/postcode-triples.js +237 -152
- package/out/tools/postcode-triples.js.map +1 -1
- package/out/tools/source-register/build.d.ts +145 -0
- package/out/tools/source-register/build.d.ts.map +1 -0
- package/out/tools/source-register/build.js +515 -0
- package/out/tools/source-register/build.js.map +1 -0
- package/out/tools/sub/venue/head-nouns.d.ts +21 -0
- package/out/tools/sub/venue/head-nouns.d.ts.map +1 -0
- package/out/tools/sub/venue/head-nouns.js +176 -0
- package/out/tools/sub/venue/head-nouns.js.map +1 -0
- package/out/tools/sub/venue/lexicon.d.ts +129 -0
- package/out/tools/sub/venue/lexicon.d.ts.map +1 -0
- package/out/tools/sub/venue/lexicon.js +239 -0
- package/out/tools/sub/venue/lexicon.js.map +1 -0
- package/out/tools/sub/venue/wikidata.d.ts +28 -0
- package/out/tools/sub/venue/wikidata.d.ts.map +1 -0
- package/out/tools/sub/venue/wikidata.js +65 -0
- package/out/tools/sub/venue/wikidata.js.map +1 -0
- package/out/tools.d.ts +31 -0
- package/out/tools.d.ts.map +1 -0
- package/out/tools.js +31 -0
- package/out/tools.js.map +1 -0
- package/out/tw/tools/fetch/gcis.d.ts +29 -0
- package/out/tw/tools/fetch/gcis.d.ts.map +1 -0
- package/out/tw/tools/fetch/gcis.js +141 -0
- package/out/tw/tools/fetch/gcis.js.map +1 -0
- package/out/types.d.ts +270 -101
- package/out/types.d.ts.map +1 -1
- package/out/types.js +133 -9
- package/out/types.js.map +1 -1
- package/out/us/adapters/fcc-bdc/adapter.d.ts +50 -0
- package/out/us/adapters/fcc-bdc/adapter.d.ts.map +1 -0
- package/out/us/adapters/fcc-bdc/adapter.js +129 -0
- package/out/us/adapters/fcc-bdc/adapter.js.map +1 -0
- package/out/us/adapters/state/hi-schools/adapter.d.ts +47 -0
- package/out/us/adapters/state/hi-schools/adapter.d.ts.map +1 -0
- package/out/us/adapters/state/hi-schools/adapter.js +146 -0
- package/out/us/adapters/state/hi-schools/adapter.js.map +1 -0
- package/out/us/adapters/state/hi-schools/workbook.d.ts +34 -0
- package/out/us/adapters/state/hi-schools/workbook.d.ts.map +1 -0
- package/out/us/adapters/state/hi-schools/workbook.js +22 -0
- package/out/us/adapters/state/hi-schools/workbook.js.map +1 -0
- package/out/us/adapters/state/ia-contractors/adapter.d.ts +41 -0
- package/out/us/adapters/state/ia-contractors/adapter.d.ts.map +1 -0
- package/out/us/adapters/state/ia-contractors/adapter.js +117 -0
- package/out/us/adapters/state/ia-contractors/adapter.js.map +1 -0
- package/out/us/adapters/state/ny-notaries/adapter.d.ts +33 -0
- package/out/us/adapters/state/ny-notaries/adapter.d.ts.map +1 -0
- package/out/us/adapters/state/ny-notaries/adapter.js +114 -0
- package/out/us/adapters/state/ny-notaries/adapter.js.map +1 -0
- package/out/us/adapters/state/tx-notaries/adapter.d.ts +34 -0
- package/out/us/adapters/state/tx-notaries/adapter.d.ts.map +1 -0
- package/out/us/adapters/state/tx-notaries/adapter.js +125 -0
- package/out/us/adapters/state/tx-notaries/adapter.js.map +1 -0
- package/out/us/adapters/tiger/adapter.d.ts +31 -0
- package/out/us/adapters/tiger/adapter.d.ts.map +1 -0
- package/out/us/adapters/tiger/adapter.js +173 -0
- package/out/us/adapters/tiger/adapter.js.map +1 -0
- package/out/us/adapters/tiger/street-decompose.d.ts +23 -0
- package/out/us/adapters/tiger/street-decompose.d.ts.map +1 -0
- package/out/us/adapters/tiger/street-decompose.js +58 -0
- package/out/us/adapters/tiger/street-decompose.js.map +1 -0
- package/out/us/adapters/usgov/hrsa-fqhc/adapter.d.ts +62 -0
- package/out/us/adapters/usgov/hrsa-fqhc/adapter.d.ts.map +1 -0
- package/out/us/adapters/usgov/hrsa-fqhc/adapter.js +133 -0
- package/out/us/adapters/usgov/hrsa-fqhc/adapter.js.map +1 -0
- package/out/us/adapters/usgov/imls-pls/adapter.d.ts +37 -0
- package/out/us/adapters/usgov/imls-pls/adapter.d.ts.map +1 -0
- package/out/us/adapters/usgov/imls-pls/adapter.js +113 -0
- package/out/us/adapters/usgov/imls-pls/adapter.js.map +1 -0
- package/out/us/adapters/usgov/irs-bmf/adapter.d.ts +38 -0
- package/out/us/adapters/usgov/irs-bmf/adapter.d.ts.map +1 -0
- package/out/us/adapters/usgov/irs-bmf/adapter.js +126 -0
- package/out/us/adapters/usgov/irs-bmf/adapter.js.map +1 -0
- package/out/us/adapters/usgov/nad/adapter.d.ts +28 -0
- package/out/us/adapters/usgov/nad/adapter.d.ts.map +1 -0
- package/out/us/adapters/usgov/nad/adapter.js +185 -0
- package/out/us/adapters/usgov/nad/adapter.js.map +1 -0
- package/out/us/adapters/usgov/nppes/adapter.d.ts +29 -0
- package/out/us/adapters/usgov/nppes/adapter.d.ts.map +1 -0
- package/out/us/adapters/usgov/nppes/adapter.js +140 -0
- package/out/us/adapters/usgov/nppes/adapter.js.map +1 -0
- package/out/us/adapters/usgov/samhsa-treatment-locator/adapter.d.ts +47 -0
- package/out/us/adapters/usgov/samhsa-treatment-locator/adapter.d.ts.map +1 -0
- package/out/us/adapters/usgov/samhsa-treatment-locator/adapter.js +153 -0
- package/out/us/adapters/usgov/samhsa-treatment-locator/adapter.js.map +1 -0
- package/out/us/fips-state.d.ts +50 -0
- package/out/us/fips-state.d.ts.map +1 -0
- package/out/us/fips-state.js +109 -0
- package/out/us/fips-state.js.map +1 -0
- package/out/us/tools/fetch/hrsa.d.ts +18 -0
- package/out/us/tools/fetch/hrsa.d.ts.map +1 -0
- package/out/us/tools/fetch/hrsa.js +45 -0
- package/out/us/tools/fetch/hrsa.js.map +1 -0
- package/out/us/tools/fetch/imls-pls.d.ts +14 -0
- package/out/us/tools/fetch/imls-pls.d.ts.map +1 -0
- package/out/us/tools/fetch/imls-pls.js +91 -0
- package/out/us/tools/fetch/imls-pls.js.map +1 -0
- package/out/us/tools/fetch/nad.d.ts +82 -0
- package/out/us/tools/fetch/nad.d.ts.map +1 -0
- package/out/us/tools/fetch/nad.js +239 -0
- package/out/us/tools/fetch/nad.js.map +1 -0
- package/out/us/tools/fetch/nppes.d.ts +16 -0
- package/out/us/tools/fetch/nppes.d.ts.map +1 -0
- package/out/us/tools/fetch/nppes.js +114 -0
- package/out/us/tools/fetch/nppes.js.map +1 -0
- package/out/us/tools/fetch/state/hi-schools.d.ts +29 -0
- package/out/us/tools/fetch/state/hi-schools.d.ts.map +1 -0
- package/out/us/tools/fetch/state/hi-schools.js +114 -0
- package/out/us/tools/fetch/state/hi-schools.js.map +1 -0
- package/out/us/tools/fetch/state/sources.d.ts +27 -0
- package/out/us/tools/fetch/state/sources.d.ts.map +1 -0
- package/out/us/tools/fetch/state/sources.js +110 -0
- package/out/us/tools/fetch/state/sources.js.map +1 -0
- package/out/us/tools/fetch/tiger-full.d.ts +9 -0
- package/out/us/tools/fetch/tiger-full.d.ts.map +1 -0
- package/out/us/tools/fetch/tiger-full.js +178 -0
- package/out/us/tools/fetch/tiger-full.js.map +1 -0
- package/out/utils/align.d.ts +25 -20
- package/out/utils/align.d.ts.map +1 -1
- package/out/utils/align.js +27 -42
- package/out/utils/align.js.map +1 -1
- package/out/utils/cooccurrence-stats.d.ts +58 -0
- package/out/utils/cooccurrence-stats.d.ts.map +1 -0
- package/out/utils/cooccurrence-stats.js +62 -0
- package/out/utils/cooccurrence-stats.js.map +1 -0
- package/out/utils/golden.d.ts +23 -29
- package/out/utils/golden.d.ts.map +1 -1
- package/out/utils/golden.js +33 -45
- package/out/utils/golden.js.map +1 -1
- package/out/utils/license.d.ts +158 -21
- package/out/utils/license.d.ts.map +1 -1
- package/out/utils/license.js +156 -26
- package/out/utils/license.js.map +1 -1
- package/out/utils/split.d.ts +66 -70
- package/out/utils/split.d.ts.map +1 -1
- package/out/utils/split.js +158 -69
- package/out/utils/split.js.map +1 -1
- package/out/utils/tokenize.d.ts +16 -28
- package/out/utils/tokenize.d.ts.map +1 -1
- package/out/utils/tokenize.js +18 -31
- package/out/utils/tokenize.js.map +1 -1
- package/out/utils/wof-json.d.ts +88 -62
- package/out/utils/wof-json.d.ts.map +1 -1
- package/out/utils/wof-json.js +81 -65
- package/out/utils/wof-json.js.map +1 -1
- package/out/utils.d.ts +13 -0
- package/out/utils.d.ts.map +1 -0
- package/out/utils.js +13 -0
- package/out/utils.js.map +1 -0
- package/out/ve/recipes/reviewed-postcode-tail.d.ts +65 -0
- package/out/ve/recipes/reviewed-postcode-tail.d.ts.map +1 -0
- package/out/ve/recipes/reviewed-postcode-tail.js +146 -0
- package/out/ve/recipes/reviewed-postcode-tail.js.map +1 -0
- package/package.json +46 -330
- package/lib/adapters/ban/adapter.ts +0 -190
- package/lib/adapters/ban/street-decompose.ts +0 -66
- package/lib/adapters/fcc-bdc/adapter.ts +0 -174
- package/lib/adapters/geonames-postal/adapter.ts +0 -122
- package/lib/adapters/gnaf/adapter.ts +0 -149
- package/lib/adapters/gnaf/assemble.ts +0 -225
- package/lib/adapters/index.ts +0 -153
- package/lib/adapters/state-hi-schools/adapter.ts +0 -170
- package/lib/adapters/state-hi-schools/workbook.ts +0 -35
- package/lib/adapters/state-ia-contractors/adapter.ts +0 -144
- package/lib/adapters/state-ny-notaries/adapter.ts +0 -141
- package/lib/adapters/state-tx-notaries/adapter.ts +0 -157
- package/lib/adapters/synth-po-box/adapter.ts +0 -204
- package/lib/adapters/tiger/adapter.ts +0 -252
- package/lib/adapters/tiger/street-decompose.ts +0 -83
- package/lib/adapters/usgov-hrsa-fqhc/adapter.ts +0 -167
- package/lib/adapters/usgov-imls-pls/adapter.ts +0 -143
- package/lib/adapters/usgov-irs-bmf/adapter.ts +0 -151
- package/lib/adapters/usgov-nad/adapter.ts +0 -334
- package/lib/adapters/usgov-nppes/adapter.ts +0 -151
- package/lib/adapters/usgov-samhsa-treatment-locator/adapter.ts +0 -193
- package/lib/adapters/utils/index.ts +0 -307
- package/lib/adapters/wof-admin-jp/adapter.ts +0 -214
- package/lib/adapters/wof-admin-json/adapter.ts +0 -231
- package/lib/adapters/wof-json-rows.ts +0 -129
- package/lib/adapters/wof-postalcode-json/adapter.ts +0 -176
- package/lib/codex/us-fips-state.ts +0 -113
- package/lib/recipes/bare-country.ts +0 -95
- package/lib/recipes/cn-organizational-units.ts +0 -199
- package/lib/recipes/cz-pcfirst-preposition.ts +0 -112
- package/lib/recipes/fr-admin-split.ts +0 -243
- package/lib/recipes/fr-bare-street.ts +0 -171
- package/lib/recipes/fr-fragment.ts +0 -334
- package/lib/recipes/fr-lieudit.ts +0 -301
- package/lib/recipes/fr-order.ts +0 -246
- package/lib/recipes/german.ts +0 -360
- package/lib/recipes/index.ts +0 -97
- package/lib/recipes/locale.ts +0 -600
- package/lib/recipes/nl-postcode.ts +0 -117
- package/lib/recipes/no-fragment.ts +0 -213
- package/lib/recipes/no-street-led.ts +0 -135
- package/lib/recipes/no-street.ts +0 -91
- package/lib/recipes/po-box-cedex.ts +0 -976
- package/lib/recipes/po-box.ts +0 -124
- package/lib/recipes/reviewed-postcode-tail.ts +0 -190
- package/lib/recipes/si-bare-village.ts +0 -99
- package/lib/recipes/street-affix.ts +0 -805
- package/lib/recipes/street-bare.ts +0 -102
- package/lib/recipes/sub-venue-sources.ts +0 -878
- package/lib/recipes/sub-venue.ts +0 -998
- package/lib/synthesizers/german.ts +0 -260
- package/lib/test-kit/index.ts +0 -100
- package/lib/tools/align-slice.ts +0 -68
- package/lib/tools/fetch/acra-sg.ts +0 -174
- package/lib/tools/fetch/ban.ts +0 -289
- package/lib/tools/fetch/gcis-tw.ts +0 -175
- package/lib/tools/fetch/geonames-dump.ts +0 -257
- package/lib/tools/fetch/geonames-postal.ts +0 -180
- package/lib/tools/fetch/houjin-jp.ts +0 -135
- package/lib/tools/fetch/hrsa.ts +0 -59
- package/lib/tools/fetch/imls-pls.ts +0 -149
- package/lib/tools/fetch/index.ts +0 -174
- package/lib/tools/fetch/juso-kr.ts +0 -165
- package/lib/tools/fetch/localdata-kr.ts +0 -194
- package/lib/tools/fetch/nad.ts +0 -341
- package/lib/tools/fetch/nppes.ts +0 -165
- package/lib/tools/fetch/state-hi-schools.ts +0 -161
- package/lib/tools/fetch/state-sources.ts +0 -146
- package/lib/tools/fetch/tiger-full.ts +0 -308
- package/lib/tools/gb-title-case.ts +0 -69
- package/lib/tools/golden-expand.ts +0 -574
- package/lib/tools/golden-promote.ts +0 -337
- package/lib/tools/golden-relabel-street.ts +0 -686
- package/lib/tools/index.ts +0 -28
- package/lib/tools/lint-slice-vocab.ts +0 -388
- package/lib/tools/lint-slice.ts +0 -496
- package/lib/tools/overlay-manifest.ts +0 -148
- package/lib/tools/slice-kryptonite.ts +0 -137
- package/lib/tools/slice-translit.ts +0 -218
- package/lib/tools/sub-venue/harvest.ts +0 -234
- package/lib/tools/sub-venue/head-nouns.ts +0 -245
- package/lib/tools/sub-venue/surfaces.ts +0 -95
- package/lib/tools/sub-venue/table.ts +0 -281
- package/lib/tools/sub-venue/wikidata.ts +0 -85
- package/lib/tools/sub-venue-lexicon.ts +0 -429
- package/lib/tools/sub-venue-promotions.ts +0 -330
- package/lib/utils/index.ts +0 -14
- package/lib/utils/parquet.ts +0 -582
- package/lib/utils/slice-stats.ts +0 -95
- package/out/adapters/ban/adapter.d.ts +0 -44
- package/out/adapters/ban/adapter.d.ts.map +0 -1
- package/out/adapters/ban/adapter.js +0 -149
- package/out/adapters/ban/adapter.js.map +0 -1
- package/out/adapters/ban/street-decompose.d.ts +0 -28
- package/out/adapters/ban/street-decompose.d.ts.map +0 -1
- package/out/adapters/ban/street-decompose.js +0 -51
- package/out/adapters/ban/street-decompose.js.map +0 -1
- package/out/adapters/fcc-bdc/adapter.d.ts +0 -68
- package/out/adapters/fcc-bdc/adapter.d.ts.map +0 -1
- package/out/adapters/fcc-bdc/adapter.js +0 -144
- package/out/adapters/fcc-bdc/adapter.js.map +0 -1
- package/out/adapters/geonames-postal/adapter.d.ts +0 -54
- package/out/adapters/geonames-postal/adapter.d.ts.map +0 -1
- package/out/adapters/geonames-postal/adapter.js +0 -107
- package/out/adapters/geonames-postal/adapter.js.map +0 -1
- package/out/adapters/gnaf/adapter.d.ts +0 -49
- package/out/adapters/gnaf/adapter.d.ts.map +0 -1
- package/out/adapters/gnaf/adapter.js +0 -124
- package/out/adapters/gnaf/adapter.js.map +0 -1
- package/out/adapters/gnaf/assemble.d.ts +0 -65
- package/out/adapters/gnaf/assemble.d.ts.map +0 -1
- package/out/adapters/gnaf/assemble.js +0 -154
- package/out/adapters/gnaf/assemble.js.map +0 -1
- package/out/adapters/index.d.ts +0 -51
- package/out/adapters/index.d.ts.map +0 -1
- package/out/adapters/index.js +0 -95
- package/out/adapters/index.js.map +0 -1
- package/out/adapters/state-hi-schools/adapter.d.ts +0 -46
- package/out/adapters/state-hi-schools/adapter.d.ts.map +0 -1
- package/out/adapters/state-hi-schools/adapter.js +0 -145
- package/out/adapters/state-hi-schools/adapter.js.map +0 -1
- package/out/adapters/state-hi-schools/workbook.d.ts +0 -29
- package/out/adapters/state-hi-schools/workbook.d.ts.map +0 -1
- package/out/adapters/state-hi-schools/workbook.js +0 -20
- package/out/adapters/state-hi-schools/workbook.js.map +0 -1
- package/out/adapters/state-ia-contractors/adapter.d.ts +0 -34
- package/out/adapters/state-ia-contractors/adapter.d.ts.map +0 -1
- package/out/adapters/state-ia-contractors/adapter.js +0 -111
- package/out/adapters/state-ia-contractors/adapter.js.map +0 -1
- package/out/adapters/state-ny-notaries/adapter.d.ts +0 -32
- package/out/adapters/state-ny-notaries/adapter.d.ts.map +0 -1
- package/out/adapters/state-ny-notaries/adapter.js +0 -119
- package/out/adapters/state-ny-notaries/adapter.js.map +0 -1
- package/out/adapters/state-tx-notaries/adapter.d.ts +0 -33
- package/out/adapters/state-tx-notaries/adapter.d.ts.map +0 -1
- package/out/adapters/state-tx-notaries/adapter.js +0 -125
- package/out/adapters/state-tx-notaries/adapter.js.map +0 -1
- package/out/adapters/synth-po-box/adapter.d.ts +0 -67
- package/out/adapters/synth-po-box/adapter.d.ts.map +0 -1
- package/out/adapters/synth-po-box/adapter.js +0 -140
- package/out/adapters/synth-po-box/adapter.js.map +0 -1
- package/out/adapters/tiger/adapter.d.ts +0 -55
- package/out/adapters/tiger/adapter.d.ts.map +0 -1
- package/out/adapters/tiger/adapter.js +0 -201
- package/out/adapters/tiger/adapter.js.map +0 -1
- package/out/adapters/tiger/street-decompose.d.ts +0 -30
- package/out/adapters/tiger/street-decompose.d.ts.map +0 -1
- package/out/adapters/tiger/street-decompose.js +0 -68
- package/out/adapters/tiger/street-decompose.js.map +0 -1
- package/out/adapters/usgov-hrsa-fqhc/adapter.d.ts +0 -56
- package/out/adapters/usgov-hrsa-fqhc/adapter.d.ts.map +0 -1
- package/out/adapters/usgov-hrsa-fqhc/adapter.js +0 -132
- package/out/adapters/usgov-hrsa-fqhc/adapter.js.map +0 -1
- package/out/adapters/usgov-imls-pls/adapter.d.ts +0 -36
- package/out/adapters/usgov-imls-pls/adapter.d.ts.map +0 -1
- package/out/adapters/usgov-imls-pls/adapter.js +0 -114
- package/out/adapters/usgov-imls-pls/adapter.js.map +0 -1
- package/out/adapters/usgov-irs-bmf/adapter.d.ts +0 -37
- package/out/adapters/usgov-irs-bmf/adapter.d.ts.map +0 -1
- package/out/adapters/usgov-irs-bmf/adapter.js +0 -120
- package/out/adapters/usgov-irs-bmf/adapter.js.map +0 -1
- package/out/adapters/usgov-nad/adapter.d.ts +0 -48
- package/out/adapters/usgov-nad/adapter.d.ts.map +0 -1
- package/out/adapters/usgov-nad/adapter.js +0 -249
- package/out/adapters/usgov-nad/adapter.js.map +0 -1
- package/out/adapters/usgov-nppes/adapter.d.ts +0 -39
- package/out/adapters/usgov-nppes/adapter.d.ts.map +0 -1
- package/out/adapters/usgov-nppes/adapter.js +0 -118
- package/out/adapters/usgov-nppes/adapter.js.map +0 -1
- package/out/adapters/usgov-samhsa-treatment-locator/adapter.d.ts +0 -46
- package/out/adapters/usgov-samhsa-treatment-locator/adapter.d.ts.map +0 -1
- package/out/adapters/usgov-samhsa-treatment-locator/adapter.js +0 -154
- package/out/adapters/usgov-samhsa-treatment-locator/adapter.js.map +0 -1
- package/out/adapters/utils/index.d.ts +0 -191
- package/out/adapters/utils/index.d.ts.map +0 -1
- package/out/adapters/utils/index.js +0 -206
- package/out/adapters/utils/index.js.map +0 -1
- package/out/adapters/wof-admin-jp/adapter.d.ts +0 -65
- package/out/adapters/wof-admin-jp/adapter.d.ts.map +0 -1
- package/out/adapters/wof-admin-jp/adapter.js +0 -161
- package/out/adapters/wof-admin-jp/adapter.js.map +0 -1
- package/out/adapters/wof-admin-json/adapter.d.ts +0 -79
- package/out/adapters/wof-admin-json/adapter.d.ts.map +0 -1
- package/out/adapters/wof-admin-json/adapter.js +0 -197
- package/out/adapters/wof-admin-json/adapter.js.map +0 -1
- package/out/adapters/wof-json-rows.d.ts +0 -62
- package/out/adapters/wof-json-rows.d.ts.map +0 -1
- package/out/adapters/wof-json-rows.js +0 -83
- package/out/adapters/wof-json-rows.js.map +0 -1
- package/out/adapters/wof-postalcode-json/adapter.d.ts +0 -65
- package/out/adapters/wof-postalcode-json/adapter.d.ts.map +0 -1
- package/out/adapters/wof-postalcode-json/adapter.js +0 -151
- package/out/adapters/wof-postalcode-json/adapter.js.map +0 -1
- package/out/codex/us-fips-state.d.ts +0 -41
- package/out/codex/us-fips-state.d.ts.map +0 -1
- package/out/codex/us-fips-state.js +0 -100
- package/out/codex/us-fips-state.js.map +0 -1
- package/out/recipes/bare-country.d.ts +0 -25
- package/out/recipes/bare-country.d.ts.map +0 -1
- package/out/recipes/bare-country.js +0 -88
- package/out/recipes/bare-country.js.map +0 -1
- package/out/recipes/cn-organizational-units.d.ts +0 -36
- package/out/recipes/cn-organizational-units.d.ts.map +0 -1
- package/out/recipes/cn-organizational-units.js +0 -159
- package/out/recipes/cn-organizational-units.js.map +0 -1
- package/out/recipes/cz-pcfirst-preposition.d.ts +0 -22
- package/out/recipes/cz-pcfirst-preposition.d.ts.map +0 -1
- package/out/recipes/cz-pcfirst-preposition.js +0 -101
- package/out/recipes/cz-pcfirst-preposition.js.map +0 -1
- package/out/recipes/fr-admin-split.d.ts +0 -38
- package/out/recipes/fr-admin-split.d.ts.map +0 -1
- package/out/recipes/fr-admin-split.js +0 -192
- package/out/recipes/fr-admin-split.js.map +0 -1
- package/out/recipes/fr-bare-street.d.ts +0 -28
- package/out/recipes/fr-bare-street.d.ts.map +0 -1
- package/out/recipes/fr-bare-street.js +0 -144
- package/out/recipes/fr-bare-street.js.map +0 -1
- package/out/recipes/fr-fragment.d.ts +0 -77
- package/out/recipes/fr-fragment.d.ts.map +0 -1
- package/out/recipes/fr-fragment.js +0 -277
- package/out/recipes/fr-fragment.js.map +0 -1
- package/out/recipes/fr-lieudit.d.ts +0 -32
- package/out/recipes/fr-lieudit.d.ts.map +0 -1
- package/out/recipes/fr-lieudit.js +0 -227
- package/out/recipes/fr-lieudit.js.map +0 -1
- package/out/recipes/fr-order.d.ts +0 -38
- package/out/recipes/fr-order.d.ts.map +0 -1
- package/out/recipes/fr-order.js +0 -198
- package/out/recipes/fr-order.js.map +0 -1
- package/out/recipes/german.d.ts +0 -44
- package/out/recipes/german.d.ts.map +0 -1
- package/out/recipes/german.js +0 -289
- package/out/recipes/german.js.map +0 -1
- package/out/recipes/index.d.ts +0 -24
- package/out/recipes/index.d.ts.map +0 -1
- package/out/recipes/index.js +0 -91
- package/out/recipes/index.js.map +0 -1
- package/out/recipes/locale.d.ts +0 -136
- package/out/recipes/locale.d.ts.map +0 -1
- package/out/recipes/locale.js +0 -460
- package/out/recipes/locale.js.map +0 -1
- package/out/recipes/nl-postcode.d.ts +0 -26
- package/out/recipes/nl-postcode.d.ts.map +0 -1
- package/out/recipes/nl-postcode.js +0 -103
- package/out/recipes/nl-postcode.js.map +0 -1
- package/out/recipes/no-fragment.d.ts +0 -43
- package/out/recipes/no-fragment.d.ts.map +0 -1
- package/out/recipes/no-fragment.js +0 -183
- package/out/recipes/no-fragment.js.map +0 -1
- package/out/recipes/no-street-led.d.ts +0 -24
- package/out/recipes/no-street-led.d.ts.map +0 -1
- package/out/recipes/no-street-led.js +0 -114
- package/out/recipes/no-street-led.js.map +0 -1
- package/out/recipes/no-street.d.ts +0 -18
- package/out/recipes/no-street.d.ts.map +0 -1
- package/out/recipes/no-street.js +0 -72
- package/out/recipes/no-street.js.map +0 -1
- package/out/recipes/po-box-cedex.d.ts +0 -38
- package/out/recipes/po-box-cedex.d.ts.map +0 -1
- package/out/recipes/po-box-cedex.js +0 -768
- package/out/recipes/po-box-cedex.js.map +0 -1
- package/out/recipes/po-box.d.ts +0 -17
- package/out/recipes/po-box.d.ts.map +0 -1
- package/out/recipes/po-box.js +0 -101
- package/out/recipes/po-box.js.map +0 -1
- package/out/recipes/reviewed-postcode-tail.d.ts +0 -47
- package/out/recipes/reviewed-postcode-tail.d.ts.map +0 -1
- package/out/recipes/reviewed-postcode-tail.js +0 -125
- package/out/recipes/reviewed-postcode-tail.js.map +0 -1
- package/out/recipes/si-bare-village.d.ts +0 -32
- package/out/recipes/si-bare-village.d.ts.map +0 -1
- package/out/recipes/si-bare-village.js +0 -89
- package/out/recipes/si-bare-village.js.map +0 -1
- package/out/recipes/street-affix.d.ts +0 -89
- package/out/recipes/street-affix.d.ts.map +0 -1
- package/out/recipes/street-affix.js +0 -563
- package/out/recipes/street-affix.js.map +0 -1
- package/out/recipes/street-bare.d.ts +0 -25
- package/out/recipes/street-bare.d.ts.map +0 -1
- package/out/recipes/street-bare.js +0 -87
- package/out/recipes/street-bare.js.map +0 -1
- package/out/recipes/sub-venue-sources.d.ts +0 -229
- package/out/recipes/sub-venue-sources.d.ts.map +0 -1
- package/out/recipes/sub-venue-sources.js +0 -654
- package/out/recipes/sub-venue-sources.js.map +0 -1
- package/out/recipes/sub-venue.d.ts +0 -269
- package/out/recipes/sub-venue.d.ts.map +0 -1
- package/out/recipes/sub-venue.js +0 -726
- package/out/recipes/sub-venue.js.map +0 -1
- package/out/synthesizers/german.d.ts +0 -115
- package/out/synthesizers/german.d.ts.map +0 -1
- package/out/synthesizers/german.js +0 -149
- package/out/synthesizers/german.js.map +0 -1
- package/out/test-kit/index.d.ts +0 -48
- package/out/test-kit/index.d.ts.map +0 -1
- package/out/test-kit/index.js +0 -78
- package/out/test-kit/index.js.map +0 -1
- package/out/tools/align-slice.d.ts +0 -7
- package/out/tools/align-slice.d.ts.map +0 -1
- package/out/tools/align-slice.js +0 -55
- package/out/tools/align-slice.js.map +0 -1
- package/out/tools/fetch/acra-sg.d.ts +0 -23
- package/out/tools/fetch/acra-sg.d.ts.map +0 -1
- package/out/tools/fetch/acra-sg.js +0 -126
- package/out/tools/fetch/acra-sg.js.map +0 -1
- package/out/tools/fetch/ban.d.ts +0 -31
- package/out/tools/fetch/ban.d.ts.map +0 -1
- package/out/tools/fetch/ban.js +0 -239
- package/out/tools/fetch/ban.js.map +0 -1
- package/out/tools/fetch/gcis-tw.d.ts +0 -23
- package/out/tools/fetch/gcis-tw.d.ts.map +0 -1
- package/out/tools/fetch/gcis-tw.js +0 -135
- package/out/tools/fetch/gcis-tw.js.map +0 -1
- package/out/tools/fetch/geonames-dump.d.ts +0 -91
- package/out/tools/fetch/geonames-dump.d.ts.map +0 -1
- package/out/tools/fetch/geonames-dump.js +0 -171
- package/out/tools/fetch/geonames-dump.js.map +0 -1
- package/out/tools/fetch/geonames-postal.d.ts +0 -76
- package/out/tools/fetch/geonames-postal.d.ts.map +0 -1
- package/out/tools/fetch/geonames-postal.js +0 -126
- package/out/tools/fetch/geonames-postal.js.map +0 -1
- package/out/tools/fetch/houjin-jp.d.ts +0 -24
- package/out/tools/fetch/houjin-jp.d.ts.map +0 -1
- package/out/tools/fetch/houjin-jp.js +0 -102
- package/out/tools/fetch/houjin-jp.js.map +0 -1
- package/out/tools/fetch/hrsa.d.ts +0 -18
- package/out/tools/fetch/hrsa.d.ts.map +0 -1
- package/out/tools/fetch/hrsa.js +0 -46
- package/out/tools/fetch/hrsa.js.map +0 -1
- package/out/tools/fetch/imls-pls.d.ts +0 -25
- package/out/tools/fetch/imls-pls.d.ts.map +0 -1
- package/out/tools/fetch/imls-pls.js +0 -108
- package/out/tools/fetch/imls-pls.js.map +0 -1
- package/out/tools/fetch/index.d.ts +0 -171
- package/out/tools/fetch/index.d.ts.map +0 -1
- package/out/tools/fetch/index.js +0 -170
- package/out/tools/fetch/index.js.map +0 -1
- package/out/tools/fetch/juso-kr.d.ts +0 -30
- package/out/tools/fetch/juso-kr.d.ts.map +0 -1
- package/out/tools/fetch/juso-kr.js +0 -120
- package/out/tools/fetch/juso-kr.js.map +0 -1
- package/out/tools/fetch/localdata-kr.d.ts +0 -30
- package/out/tools/fetch/localdata-kr.d.ts.map +0 -1
- package/out/tools/fetch/localdata-kr.js +0 -139
- package/out/tools/fetch/localdata-kr.js.map +0 -1
- package/out/tools/fetch/nad.d.ts +0 -70
- package/out/tools/fetch/nad.d.ts.map +0 -1
- package/out/tools/fetch/nad.js +0 -234
- package/out/tools/fetch/nad.js.map +0 -1
- package/out/tools/fetch/nppes.d.ts +0 -26
- package/out/tools/fetch/nppes.d.ts.map +0 -1
- package/out/tools/fetch/nppes.js +0 -126
- package/out/tools/fetch/nppes.js.map +0 -1
- package/out/tools/fetch/state-hi-schools.d.ts +0 -26
- package/out/tools/fetch/state-hi-schools.d.ts.map +0 -1
- package/out/tools/fetch/state-hi-schools.js +0 -112
- package/out/tools/fetch/state-hi-schools.js.map +0 -1
- package/out/tools/fetch/state-sources.d.ts +0 -26
- package/out/tools/fetch/state-sources.d.ts.map +0 -1
- package/out/tools/fetch/state-sources.js +0 -111
- package/out/tools/fetch/state-sources.js.map +0 -1
- package/out/tools/fetch/tiger-full.d.ts +0 -22
- package/out/tools/fetch/tiger-full.d.ts.map +0 -1
- package/out/tools/fetch/tiger-full.js +0 -217
- package/out/tools/fetch/tiger-full.js.map +0 -1
- package/out/tools/gb-title-case.d.ts +0 -2
- package/out/tools/gb-title-case.d.ts.map +0 -1
- package/out/tools/gb-title-case.js +0 -65
- package/out/tools/gb-title-case.js.map +0 -1
- package/out/tools/golden-expand.d.ts +0 -90
- package/out/tools/golden-expand.d.ts.map +0 -1
- package/out/tools/golden-expand.js +0 -406
- package/out/tools/golden-expand.js.map +0 -1
- package/out/tools/golden-promote.d.ts +0 -72
- package/out/tools/golden-promote.d.ts.map +0 -1
- package/out/tools/golden-promote.js +0 -240
- package/out/tools/golden-promote.js.map +0 -1
- package/out/tools/golden-relabel-street.d.ts +0 -196
- package/out/tools/golden-relabel-street.d.ts.map +0 -1
- package/out/tools/golden-relabel-street.js +0 -439
- package/out/tools/golden-relabel-street.js.map +0 -1
- package/out/tools/index.d.ts +0 -28
- package/out/tools/index.d.ts.map +0 -1
- package/out/tools/index.js +0 -28
- package/out/tools/index.js.map +0 -1
- package/out/tools/lint-slice-vocab.d.ts +0 -90
- package/out/tools/lint-slice-vocab.d.ts.map +0 -1
- package/out/tools/lint-slice-vocab.js +0 -267
- package/out/tools/lint-slice-vocab.js.map +0 -1
- package/out/tools/lint-slice.d.ts +0 -93
- package/out/tools/lint-slice.d.ts.map +0 -1
- package/out/tools/lint-slice.js +0 -322
- package/out/tools/lint-slice.js.map +0 -1
- package/out/tools/overlay-manifest.d.ts +0 -39
- package/out/tools/overlay-manifest.d.ts.map +0 -1
- package/out/tools/overlay-manifest.js +0 -90
- package/out/tools/overlay-manifest.js.map +0 -1
- package/out/tools/slice-kryptonite.d.ts +0 -32
- package/out/tools/slice-kryptonite.d.ts.map +0 -1
- package/out/tools/slice-kryptonite.js +0 -99
- package/out/tools/slice-kryptonite.js.map +0 -1
- package/out/tools/slice-translit.d.ts +0 -51
- package/out/tools/slice-translit.d.ts.map +0 -1
- package/out/tools/slice-translit.js +0 -166
- package/out/tools/slice-translit.js.map +0 -1
- package/out/tools/sub-venue/harvest.d.ts +0 -100
- package/out/tools/sub-venue/harvest.d.ts.map +0 -1
- package/out/tools/sub-venue/harvest.js +0 -168
- package/out/tools/sub-venue/harvest.js.map +0 -1
- package/out/tools/sub-venue/head-nouns.d.ts +0 -50
- package/out/tools/sub-venue/head-nouns.d.ts.map +0 -1
- package/out/tools/sub-venue/head-nouns.js +0 -213
- package/out/tools/sub-venue/head-nouns.js.map +0 -1
- package/out/tools/sub-venue/surfaces.d.ts +0 -45
- package/out/tools/sub-venue/surfaces.d.ts.map +0 -1
- package/out/tools/sub-venue/surfaces.js +0 -77
- package/out/tools/sub-venue/surfaces.js.map +0 -1
- package/out/tools/sub-venue/table.d.ts +0 -229
- package/out/tools/sub-venue/table.d.ts.map +0 -1
- package/out/tools/sub-venue/table.js +0 -108
- package/out/tools/sub-venue/table.js.map +0 -1
- package/out/tools/sub-venue/wikidata.d.ts +0 -26
- package/out/tools/sub-venue/wikidata.d.ts.map +0 -1
- package/out/tools/sub-venue/wikidata.js +0 -62
- package/out/tools/sub-venue/wikidata.js.map +0 -1
- package/out/tools/sub-venue-lexicon.d.ts +0 -156
- package/out/tools/sub-venue-lexicon.d.ts.map +0 -1
- package/out/tools/sub-venue-lexicon.js +0 -283
- package/out/tools/sub-venue-lexicon.js.map +0 -1
- package/out/tools/sub-venue-promotions.d.ts +0 -94
- package/out/tools/sub-venue-promotions.d.ts.map +0 -1
- package/out/tools/sub-venue-promotions.js +0 -266
- package/out/tools/sub-venue-promotions.js.map +0 -1
- package/out/utils/index.d.ts +0 -14
- package/out/utils/index.d.ts.map +0 -1
- package/out/utils/index.js +0 -14
- package/out/utils/index.js.map +0 -1
- package/out/utils/parquet.d.ts +0 -178
- package/out/utils/parquet.d.ts.map +0 -1
- package/out/utils/parquet.js +0 -371
- package/out/utils/parquet.js.map +0 -1
- package/out/utils/slice-stats.d.ts +0 -52
- package/out/utils/slice-stats.d.ts.map +0 -1
- package/out/utils/slice-stats.js +0 -58
- package/out/utils/slice-stats.js.map +0 -1
|
@@ -0,0 +1,147 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* @copyright Sister Software
|
|
3
|
+
* @license AGPL-3.0
|
|
4
|
+
* @author Teffen Ellis, et al.
|
|
5
|
+
*
|
|
6
|
+
* Fetch Korea's local-government permit registry (지방행정인허가데이터): one CSV per permit category,
|
|
7
|
+
* every business a local authority has licensed, about 195 categories. Each row includes both address
|
|
8
|
+
* forms of the same premises — `소재지전체주소` (the lot-number form, 지번) and `도로명전체주소` (the
|
|
9
|
+
* road-name form) — plus both postcodes and a planar coordinate (`좌표정보(x/y)`, epsg:5174). That
|
|
10
|
+
* The two formats together provide the cheapest dual-format signal in Korean addresses.
|
|
11
|
+
* The coordinate supplies the board's coordinate half. That role gives this source its weight.
|
|
12
|
+
*
|
|
13
|
+
* What it asserts differs by field. The local authority grants the permit, so the permit identifier is an
|
|
14
|
+
* `identity` assertion. The address is an `observation`: a clerk typed it, in both address systems, with
|
|
15
|
+
* no validation. The registry attests only that it received the string. Both sit on `premise` rows —
|
|
16
|
+
* the address of the licensed premises. One verdict over the source would discard the permit identity.
|
|
17
|
+
*
|
|
18
|
+
* The public-data portal labels the category files "이용허락범위 제한 없음" and links them to
|
|
19
|
+
* `file.localdata.go.kr`, which serves them behind a session: the category page sets the xsrf cookie,
|
|
20
|
+
* `/file/validate/download-count` is the portal's own rate check (429 when it wants a pause), and
|
|
21
|
+
* `/file/download/<slug>/info` streams the CSV. The files are CP949 as delivered. the adapter
|
|
22
|
+
* decodes. The restaurant category by itself is about 700 MB.
|
|
23
|
+
*
|
|
24
|
+
* Invoke via `mailwoman corpus fetch localdata-kr --out-root <path>`, optionally with
|
|
25
|
+
* `--categories general_restaurants,rest_cafes`.
|
|
26
|
+
*/
|
|
27
|
+
import { BYTES_PER_KIB } from "@mailwoman/core/fs/formatters";
|
|
28
|
+
import { pathExists } from "@mailwoman/core/fs/readers";
|
|
29
|
+
import { makeDirectories } from "@mailwoman/core/fs/writers";
|
|
30
|
+
import { sha256File } from "@mailwoman/core/hash";
|
|
31
|
+
import { sleep } from "@mailwoman/core/utils/sleep";
|
|
32
|
+
import { cookieHeader, loadCollectionFiles, streamBodyToFile, withRetries, writeManifest } from "#tools/fetch/download";
|
|
33
|
+
const SLUG = "localdata-kr";
|
|
34
|
+
const PORTAL = "https://file.localdata.go.kr";
|
|
35
|
+
const INDEX_URL = `${PORTAL}/file/general_restaurants/info`;
|
|
36
|
+
const LICENSE = "이용허락범위 제한 없음 (data.go.kr label on each category file, e.g. 행정안전부_식품_일반음식점)";
|
|
37
|
+
const ATTRIBUTION = "행정안전부 (Ministry of the Interior and Safety), 지방행정인허가데이터";
|
|
38
|
+
const HTTP_TOO_MANY_REQUESTS = 429;
|
|
39
|
+
const RATE_PAUSE_MS = 30_000;
|
|
40
|
+
const USER_AGENT = "Mozilla/5.0 (X11; Linux x86_64) mailwoman-corpus-fetch";
|
|
41
|
+
/**
|
|
42
|
+
* Open a session on the portal: the category page answers the xsrf cookie
|
|
43
|
+
* and the navigation that names every category.
|
|
44
|
+
*/
|
|
45
|
+
async function openSession() {
|
|
46
|
+
const res = await fetch(INDEX_URL, {
|
|
47
|
+
headers: { "user-agent": USER_AGENT, accept: "text/html", referer: "https://www.data.go.kr/" },
|
|
48
|
+
});
|
|
49
|
+
if (!res.ok)
|
|
50
|
+
throw new Error(`localdata-kr: the category page answered HTTP ${res.status}`);
|
|
51
|
+
const html = await res.text();
|
|
52
|
+
const cookie = cookieHeader(res);
|
|
53
|
+
const xsrf = /XSRF-TOKEN=([^;]+)/.exec(cookie)?.[1];
|
|
54
|
+
const categories = [];
|
|
55
|
+
const seen = new Set();
|
|
56
|
+
for (const [, slug, name] of html.matchAll(/href="\/file\/([a-z0-9_]+)\/info"[^>]*>\s*<span>([^<]+)<\/span>/g)) {
|
|
57
|
+
if (!slug || !name || seen.has(slug))
|
|
58
|
+
continue;
|
|
59
|
+
seen.add(slug);
|
|
60
|
+
categories.push({ slug, name: name.trim() });
|
|
61
|
+
}
|
|
62
|
+
return { cookie, xsrf, categories };
|
|
63
|
+
}
|
|
64
|
+
/**
|
|
65
|
+
* The portal's own rate check.
|
|
66
|
+
*
|
|
67
|
+
* A 429 response states the requested pause in prose, so the caller sleeps and retries.
|
|
68
|
+
*/
|
|
69
|
+
async function validateDownloadCount(session) {
|
|
70
|
+
const headers = { "user-agent": USER_AGENT, cookie: session.cookie, referer: INDEX_URL };
|
|
71
|
+
if (session.xsrf) {
|
|
72
|
+
headers["X-XSRF-TOKEN"] = session.xsrf;
|
|
73
|
+
}
|
|
74
|
+
const res = await fetch(`${PORTAL}/file/validate/download-count`, { headers });
|
|
75
|
+
return res.status !== HTTP_TOO_MANY_REQUESTS;
|
|
76
|
+
}
|
|
77
|
+
export async function fetchLocaldataKR(options, report) {
|
|
78
|
+
const destDir = options.outRoot(SLUG);
|
|
79
|
+
await makeDirectories(destDir);
|
|
80
|
+
const manifestPath = destDir("MANIFEST.json");
|
|
81
|
+
const session = await openSession();
|
|
82
|
+
const wanted = options.categories?.length
|
|
83
|
+
? session.categories.filter((category) => options.categories.includes(category.slug))
|
|
84
|
+
: session.categories;
|
|
85
|
+
report?.(`=== ${SLUG}: ${wanted.length} of ${session.categories.length} categories`);
|
|
86
|
+
// A previous run's entries survive, keyed by file name, so a re-run
|
|
87
|
+
// after an interruption fetches only what is missing.
|
|
88
|
+
const previous = await loadCollectionFiles(manifestPath);
|
|
89
|
+
const files = new Map();
|
|
90
|
+
let fetched = 0;
|
|
91
|
+
let skipped = 0;
|
|
92
|
+
const failedCodes = [];
|
|
93
|
+
for (const category of wanted) {
|
|
94
|
+
const filename = `${category.slug}.csv`;
|
|
95
|
+
const dest = destDir(filename);
|
|
96
|
+
const url = `${PORTAL}/file/download/${category.slug}/info`;
|
|
97
|
+
const before = previous.get(filename);
|
|
98
|
+
if (before && (await pathExists(dest))) {
|
|
99
|
+
files.set(filename, before);
|
|
100
|
+
skipped++;
|
|
101
|
+
continue;
|
|
102
|
+
}
|
|
103
|
+
report?.(`--- ${category.name} (${category.slug})`);
|
|
104
|
+
while (!(await validateDownloadCount(session))) {
|
|
105
|
+
report?.(` portal asks for a pause — sleeping ${RATE_PAUSE_MS / 1000}s`);
|
|
106
|
+
await sleep(RATE_PAUSE_MS);
|
|
107
|
+
}
|
|
108
|
+
let bytes;
|
|
109
|
+
try {
|
|
110
|
+
bytes = await withRetries(async () => {
|
|
111
|
+
const res = await fetch(url, {
|
|
112
|
+
headers: { "user-agent": USER_AGENT, cookie: session.cookie, referer: INDEX_URL, accept: "*/*" },
|
|
113
|
+
signal: AbortSignal.timeout(1_800_000),
|
|
114
|
+
});
|
|
115
|
+
if (!res.ok || !(res.headers.get("content-type") ?? "").includes("text/csv")) {
|
|
116
|
+
throw new Error(`HTTP ${res.status} ${res.headers.get("content-type") ?? ""} for ${category.slug}`);
|
|
117
|
+
}
|
|
118
|
+
return streamBodyToFile(res, dest);
|
|
119
|
+
}, { report, label: category.slug });
|
|
120
|
+
}
|
|
121
|
+
catch (error) {
|
|
122
|
+
report?.(` ✗ ${error.message}`);
|
|
123
|
+
failedCodes.push(category.slug);
|
|
124
|
+
continue;
|
|
125
|
+
}
|
|
126
|
+
if (bytes < BYTES_PER_KIB) {
|
|
127
|
+
report?.(` ✗ ${bytes} bytes — an error page, not the register`);
|
|
128
|
+
failedCodes.push(category.slug);
|
|
129
|
+
continue;
|
|
130
|
+
}
|
|
131
|
+
const sha = await sha256File(dest);
|
|
132
|
+
files.set(filename, { source_url: url, downloaded_at: new Date().toISOString(), filename, sha256: sha, bytes });
|
|
133
|
+
fetched++;
|
|
134
|
+
report?.(` ✓ ${(bytes / 1024 / 1024).toFixed(1)} MB sha256=${sha}`);
|
|
135
|
+
const manifest = {
|
|
136
|
+
source: SLUG,
|
|
137
|
+
source_url: INDEX_URL,
|
|
138
|
+
license: LICENSE,
|
|
139
|
+
attribution: ATTRIBUTION,
|
|
140
|
+
downloaded_at: new Date().toISOString(),
|
|
141
|
+
files: [...files.values()],
|
|
142
|
+
};
|
|
143
|
+
await writeManifest(manifestPath, manifest);
|
|
144
|
+
}
|
|
145
|
+
return { fetched, skipped, failed: failedCodes.length, failedCodes };
|
|
146
|
+
}
|
|
147
|
+
//# sourceMappingURL=localdata.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"localdata.js","sourceRoot":"","sources":["../../../../lib/kr/tools/fetch/localdata.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,109 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* @copyright Sister Software
|
|
3
|
+
* @license AGPL-3.0
|
|
4
|
+
* @author Teffen Ellis, et al.
|
|
5
|
+
*
|
|
6
|
+
* `bd-adresses`: the Administration du cadastre et de la topographie's BD-Adresses CSV adapter,
|
|
7
|
+
* covering Luxembourg.
|
|
8
|
+
*
|
|
9
|
+
* Input is the semicolon-separated `addresses.csv` the ACT publishes for the whole country through
|
|
10
|
+
* `data.public.lu`, beside a GeoJSON and a shapefile carrying the same records. The adapter reads
|
|
11
|
+
* `rue` as the street, `numero` as the house number, and `code_postal` with `localite` as the
|
|
12
|
+
* postcode and its postal locality.
|
|
13
|
+
*
|
|
14
|
+
* The publisher describes BD-Adresses as `un sous-ensemble des adresses figurant dans le registre
|
|
15
|
+
* national des localités et des rues`, enriched with coordinates. The row count is therefore the
|
|
16
|
+
* published subset rather than Luxembourg's address count.
|
|
17
|
+
*
|
|
18
|
+
* `data.public.lu` states `cc-zero` for the dataset, and the address-source register elects
|
|
19
|
+
* `CC0-1.0` for `lu-property-building-1` on that statement, so the adapter records that license on
|
|
20
|
+
* every row.
|
|
21
|
+
*
|
|
22
|
+
* Luxembourg writes the house number before the street, which `STREET_ORDERS` records as
|
|
23
|
+
* `number-first`, and `COMMA_JOINED_STREET_COUNTRIES` does not list it. `formatAddressRow` therefore
|
|
24
|
+
* renders `20 Kaesfurterstrooss, L-9755 Hupperdange`.
|
|
25
|
+
*
|
|
26
|
+
* ## The file carries one street name, in no single language
|
|
27
|
+
*
|
|
28
|
+
* Luxembourg is trilingual, and the CSV declares one street column.
|
|
29
|
+
* There is no `rue_fr`, `rue_de` or `rue_lb` to choose between, so the adapter emits `rue` as the
|
|
30
|
+
* publisher wrote it.
|
|
31
|
+
*
|
|
32
|
+
* What that column holds is mixed.
|
|
33
|
+
* Measured over the 179,622 rows of the 2026-09-28 edition with a generic-word probe rather than a
|
|
34
|
+
* language classifier: 133,449 values open with a French street generic such as `Rue`, `Avenue` or
|
|
35
|
+
* `Montée`, 18,629 close with a Luxembourgish one such as `-strooss`, `-wee` or `-gaass`, and the
|
|
36
|
+
* remaining 27,544 match neither probe and include plainly Luxembourgish forms such as
|
|
37
|
+
* `Am Stengber`, `An Hiesel` and `Um Reebou`.
|
|
38
|
+
* No column marks a row's language, so `locale` reads `und-LU`.
|
|
39
|
+
* `und` is BCP-47's undetermined language subtag, and the repository already stores it in
|
|
40
|
+
* `#recipes/bare/country` and `#tools/postcode-triples`.
|
|
41
|
+
* Labeling every row `fr-LU` or `lb-LU` would assert a language for a name the publisher did not
|
|
42
|
+
* tag.
|
|
43
|
+
*
|
|
44
|
+
* ## The number comes from `numero`, and never from the street line
|
|
45
|
+
*
|
|
46
|
+
* `rue` and `numero` are separate columns and the publisher never composes them, so neither
|
|
47
|
+
* `splitStreetLine` nor `composeHouseNumber` applies here: there is no line to split and no second
|
|
48
|
+
* column to join.
|
|
49
|
+
* Splitting the street would also be wrong in both directions.
|
|
50
|
+
* 175 `rue` values end in a digit, among them `Route Nationale 1`, `Rue du 9 août 2019` and
|
|
51
|
+
* `Cité des Sacrifiés 1940-1945`.
|
|
52
|
+
* `numero` already carries its own suffix as one token: 162,273 rows hold bare digits, 17,087 a
|
|
53
|
+
* trailing letter such as `12A`, 239 a hyphenated range such as `22-26`, eight the word `BIS` or
|
|
54
|
+
* `bis`, and 15 are empty.
|
|
55
|
+
*
|
|
56
|
+
* `id_geoportail` is the publisher's own composition of the same two values.
|
|
57
|
+
* It ends in `_<id_caclr_rue>_<numero>` on 179,607 of the 179,607 numbered rows, so the number this
|
|
58
|
+
* adapter emits agrees with the publisher's where the publisher states one.
|
|
59
|
+
* The file publishes no preformatted address line, so a rendered single line has no publisher-side
|
|
60
|
+
* counterpart to be asserted against.
|
|
61
|
+
*
|
|
62
|
+
* ## Reading the file needs a quote-aware parser
|
|
63
|
+
*
|
|
64
|
+
* 22 rows RFC 4180-quote `rue` and double its interior quotes:
|
|
65
|
+
* `"Cité ""Pënscherbierg""";3;Wilwerwiltz;…`.
|
|
66
|
+
* Those rows carry no semicolon inside the quotes, so a naive split on `;` still yields 13 fields
|
|
67
|
+
* and passes a field-count check while handing the street to the corpus as
|
|
68
|
+
* `"Cité ""Pënscherbierg"""`.
|
|
69
|
+
* `CSVSpliterator` unescapes it to `Cité "Pënscherbierg"`.
|
|
70
|
+
* The same edition carries 0 fields with an embedded newline and 0 carriage returns in the whole
|
|
71
|
+
* file.
|
|
72
|
+
*
|
|
73
|
+
* The file opens with a UTF-8 byte-order mark, the three bytes `EF BB BF`, which the reader strips.
|
|
74
|
+
* The first record's own first key therefore reads `rue` rather than the mark followed by `rue`.
|
|
75
|
+
* That mark is why the portal's byte count exceeds by three what a reader that discards it reports.
|
|
76
|
+
*
|
|
77
|
+
* The adapter streams with `CSVSpliterator.fromAsync`.
|
|
78
|
+
* It honors `opts.limit`, `opts.signal` and `opts.country`.
|
|
79
|
+
*/
|
|
80
|
+
import { type CorpusAdapter } from "#types";
|
|
81
|
+
/**
|
|
82
|
+
* Registry id for this adapter.
|
|
83
|
+
*
|
|
84
|
+
* Stamped into every row it emits, so a corpus record can be traced back to the dataset it came from.
|
|
85
|
+
*/
|
|
86
|
+
export declare const BD_ADRESSES_ADAPTER_ID = "bd-adresses";
|
|
87
|
+
/**
|
|
88
|
+
* The license the address-source register elects for this publication.
|
|
89
|
+
*/
|
|
90
|
+
export declare const BD_ADRESSES_DEFAULT_LICENSE = "CC0-1.0";
|
|
91
|
+
/**
|
|
92
|
+
* Every jurisdiction this adapter emits, checked against a caller's `--country`.
|
|
93
|
+
*
|
|
94
|
+
* BD-Adresses is one national file and Luxembourg has no dependency, so this is a single entry
|
|
95
|
+
* where `ban`, `matrikkelen` and `ryhti` each carry more than one.
|
|
96
|
+
*/
|
|
97
|
+
export declare const BD_ADRESSES_COUNTRIES: readonly string[];
|
|
98
|
+
/**
|
|
99
|
+
* The columns `rows` indexes by name, in the order the published header declares them.
|
|
100
|
+
*
|
|
101
|
+
* A caller that downloads the file checks its header against this list.
|
|
102
|
+
*/
|
|
103
|
+
export declare const BD_ADRESSES_REQUIRED_COLUMNS: readonly string[];
|
|
104
|
+
export declare function createBDAdressesAdapter(): CorpusAdapter;
|
|
105
|
+
/**
|
|
106
|
+
* The configured adapter instance registered with the corpus builder.
|
|
107
|
+
*/
|
|
108
|
+
export declare const bdAdressesAdapter: CorpusAdapter;
|
|
109
|
+
//# sourceMappingURL=adapter.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"adapter.d.ts","sourceRoot":"","sources":["../../../../lib/lu/adapters/bd-adresses/adapter.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA8EG;AAQH,OAAO,EAAuD,KAAK,aAAa,EAAiB,MAAM,QAAQ,CAAA;AAE/G;;;;GAIG;AACH,eAAO,MAAM,sBAAsB,gBAAgB,CAAA;AAEnD;;GAEG;AACH,eAAO,MAAM,2BAA2B,YAAY,CAAA;AAEpD;;;;;GAKG;AACH,eAAO,MAAM,qBAAqB,EAAE,SAAS,MAAM,EAAW,CAAA;AAqB9D;;;;GAIG;AACH,eAAO,MAAM,4BAA4B,EAAE,SAAS,MAAM,EAOzD,CAAA;AAED,wBAAgB,uBAAuB,IAAI,aAAa,CA6FvD;AAED;;GAEG;AACH,eAAO,MAAM,iBAAiB,eAA4B,CAAA"}
|
|
@@ -0,0 +1,196 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* @copyright Sister Software
|
|
3
|
+
* @license AGPL-3.0
|
|
4
|
+
* @author Teffen Ellis, et al.
|
|
5
|
+
*
|
|
6
|
+
* `bd-adresses`: the Administration du cadastre et de la topographie's BD-Adresses CSV adapter,
|
|
7
|
+
* covering Luxembourg.
|
|
8
|
+
*
|
|
9
|
+
* Input is the semicolon-separated `addresses.csv` the ACT publishes for the whole country through
|
|
10
|
+
* `data.public.lu`, beside a GeoJSON and a shapefile carrying the same records. The adapter reads
|
|
11
|
+
* `rue` as the street, `numero` as the house number, and `code_postal` with `localite` as the
|
|
12
|
+
* postcode and its postal locality.
|
|
13
|
+
*
|
|
14
|
+
* The publisher describes BD-Adresses as `un sous-ensemble des adresses figurant dans le registre
|
|
15
|
+
* national des localités et des rues`, enriched with coordinates. The row count is therefore the
|
|
16
|
+
* published subset rather than Luxembourg's address count.
|
|
17
|
+
*
|
|
18
|
+
* `data.public.lu` states `cc-zero` for the dataset, and the address-source register elects
|
|
19
|
+
* `CC0-1.0` for `lu-property-building-1` on that statement, so the adapter records that license on
|
|
20
|
+
* every row.
|
|
21
|
+
*
|
|
22
|
+
* Luxembourg writes the house number before the street, which `STREET_ORDERS` records as
|
|
23
|
+
* `number-first`, and `COMMA_JOINED_STREET_COUNTRIES` does not list it. `formatAddressRow` therefore
|
|
24
|
+
* renders `20 Kaesfurterstrooss, L-9755 Hupperdange`.
|
|
25
|
+
*
|
|
26
|
+
* ## The file carries one street name, in no single language
|
|
27
|
+
*
|
|
28
|
+
* Luxembourg is trilingual, and the CSV declares one street column.
|
|
29
|
+
* There is no `rue_fr`, `rue_de` or `rue_lb` to choose between, so the adapter emits `rue` as the
|
|
30
|
+
* publisher wrote it.
|
|
31
|
+
*
|
|
32
|
+
* What that column holds is mixed.
|
|
33
|
+
* Measured over the 179,622 rows of the 2026-09-28 edition with a generic-word probe rather than a
|
|
34
|
+
* language classifier: 133,449 values open with a French street generic such as `Rue`, `Avenue` or
|
|
35
|
+
* `Montée`, 18,629 close with a Luxembourgish one such as `-strooss`, `-wee` or `-gaass`, and the
|
|
36
|
+
* remaining 27,544 match neither probe and include plainly Luxembourgish forms such as
|
|
37
|
+
* `Am Stengber`, `An Hiesel` and `Um Reebou`.
|
|
38
|
+
* No column marks a row's language, so `locale` reads `und-LU`.
|
|
39
|
+
* `und` is BCP-47's undetermined language subtag, and the repository already stores it in
|
|
40
|
+
* `#recipes/bare/country` and `#tools/postcode-triples`.
|
|
41
|
+
* Labeling every row `fr-LU` or `lb-LU` would assert a language for a name the publisher did not
|
|
42
|
+
* tag.
|
|
43
|
+
*
|
|
44
|
+
* ## The number comes from `numero`, and never from the street line
|
|
45
|
+
*
|
|
46
|
+
* `rue` and `numero` are separate columns and the publisher never composes them, so neither
|
|
47
|
+
* `splitStreetLine` nor `composeHouseNumber` applies here: there is no line to split and no second
|
|
48
|
+
* column to join.
|
|
49
|
+
* Splitting the street would also be wrong in both directions.
|
|
50
|
+
* 175 `rue` values end in a digit, among them `Route Nationale 1`, `Rue du 9 août 2019` and
|
|
51
|
+
* `Cité des Sacrifiés 1940-1945`.
|
|
52
|
+
* `numero` already carries its own suffix as one token: 162,273 rows hold bare digits, 17,087 a
|
|
53
|
+
* trailing letter such as `12A`, 239 a hyphenated range such as `22-26`, eight the word `BIS` or
|
|
54
|
+
* `bis`, and 15 are empty.
|
|
55
|
+
*
|
|
56
|
+
* `id_geoportail` is the publisher's own composition of the same two values.
|
|
57
|
+
* It ends in `_<id_caclr_rue>_<numero>` on 179,607 of the 179,607 numbered rows, so the number this
|
|
58
|
+
* adapter emits agrees with the publisher's where the publisher states one.
|
|
59
|
+
* The file publishes no preformatted address line, so a rendered single line has no publisher-side
|
|
60
|
+
* counterpart to be asserted against.
|
|
61
|
+
*
|
|
62
|
+
* ## Reading the file needs a quote-aware parser
|
|
63
|
+
*
|
|
64
|
+
* 22 rows RFC 4180-quote `rue` and double its interior quotes:
|
|
65
|
+
* `"Cité ""Pënscherbierg""";3;Wilwerwiltz;…`.
|
|
66
|
+
* Those rows carry no semicolon inside the quotes, so a naive split on `;` still yields 13 fields
|
|
67
|
+
* and passes a field-count check while handing the street to the corpus as
|
|
68
|
+
* `"Cité ""Pënscherbierg"""`.
|
|
69
|
+
* `CSVSpliterator` unescapes it to `Cité "Pënscherbierg"`.
|
|
70
|
+
* The same edition carries 0 fields with an embedded newline and 0 carriage returns in the whole
|
|
71
|
+
* file.
|
|
72
|
+
*
|
|
73
|
+
* The file opens with a UTF-8 byte-order mark, the three bytes `EF BB BF`, which the reader strips.
|
|
74
|
+
* The first record's own first key therefore reads `rue` rather than the mark followed by `rue`.
|
|
75
|
+
* That mark is why the portal's byte count exceeds by three what a reader that discards it reports.
|
|
76
|
+
*
|
|
77
|
+
* The adapter streams with `CSVSpliterator.fromAsync`.
|
|
78
|
+
* It honors `opts.limit`, `opts.signal` and `opts.country`.
|
|
79
|
+
*/
|
|
80
|
+
import { formatAddressRow } from "@mailwoman/codex/address/format";
|
|
81
|
+
import { CSVSpliterator } from "spliterator";
|
|
82
|
+
import { UnsupportedCountryError } from "#adapters/errors";
|
|
83
|
+
import { stableSourceID } from "#adapters/source-id";
|
|
84
|
+
import { SourceRegister } from "#registers";
|
|
85
|
+
import { AddressRole, SurfaceOrigin } from "#types";
|
|
86
|
+
/**
|
|
87
|
+
* Registry id for this adapter.
|
|
88
|
+
*
|
|
89
|
+
* Stamped into every row it emits, so a corpus record can be traced back to the dataset it came from.
|
|
90
|
+
*/
|
|
91
|
+
export const BD_ADRESSES_ADAPTER_ID = "bd-adresses";
|
|
92
|
+
/**
|
|
93
|
+
* The license the address-source register elects for this publication.
|
|
94
|
+
*/
|
|
95
|
+
export const BD_ADRESSES_DEFAULT_LICENSE = "CC0-1.0";
|
|
96
|
+
/**
|
|
97
|
+
* Every jurisdiction this adapter emits, checked against a caller's `--country`.
|
|
98
|
+
*
|
|
99
|
+
* BD-Adresses is one national file and Luxembourg has no dependency, so this is a single entry
|
|
100
|
+
* where `ban`, `matrikkelen` and `ryhti` each carry more than one.
|
|
101
|
+
*/
|
|
102
|
+
export const BD_ADRESSES_COUNTRIES = ["LU"];
|
|
103
|
+
/**
|
|
104
|
+
* The columns `rows` indexes by name, in the order the published header declares them.
|
|
105
|
+
*
|
|
106
|
+
* A caller that downloads the file checks its header against this list.
|
|
107
|
+
*/
|
|
108
|
+
export const BD_ADRESSES_REQUIRED_COLUMNS = [
|
|
109
|
+
"rue",
|
|
110
|
+
"numero",
|
|
111
|
+
"localite",
|
|
112
|
+
"code_postal",
|
|
113
|
+
"id_caclr_rue",
|
|
114
|
+
"id_geoportail",
|
|
115
|
+
];
|
|
116
|
+
export function createBDAdressesAdapter() {
|
|
117
|
+
return {
|
|
118
|
+
id: BD_ADRESSES_ADAPTER_ID,
|
|
119
|
+
defaultLicense: BD_ADRESSES_DEFAULT_LICENSE,
|
|
120
|
+
addressRole: AddressRole.Premise,
|
|
121
|
+
register: SourceRegister.BDAdresses,
|
|
122
|
+
surface: SurfaceOrigin.Rendered,
|
|
123
|
+
description: "BD-Adresses (Administration du cadastre et de la topographie): street-level addresses for Luxembourg.",
|
|
124
|
+
async *rows(opts) {
|
|
125
|
+
if (opts.country && !BD_ADRESSES_COUNTRIES.includes(opts.country)) {
|
|
126
|
+
throw new UnsupportedCountryError(BD_ADRESSES_ADAPTER_ID, BD_ADRESSES_COUNTRIES, opts.country);
|
|
127
|
+
}
|
|
128
|
+
const rows = CSVSpliterator.fromAsync(opts.inputPath, {
|
|
129
|
+
normalizeKeys: false,
|
|
130
|
+
columnDelimiter: ";",
|
|
131
|
+
});
|
|
132
|
+
let emitted = 0;
|
|
133
|
+
let unnamed = 0;
|
|
134
|
+
try {
|
|
135
|
+
for await (const record of rows) {
|
|
136
|
+
if (opts.signal?.aborted)
|
|
137
|
+
break;
|
|
138
|
+
if (opts.limit !== undefined && emitted >= opts.limit)
|
|
139
|
+
break;
|
|
140
|
+
const street = (record.rue ?? "").trim();
|
|
141
|
+
const house = (record.numero ?? "").trim();
|
|
142
|
+
const postcode = (record.code_postal ?? "").trim();
|
|
143
|
+
const locality = (record.localite ?? "").trim();
|
|
144
|
+
if (!street) {
|
|
145
|
+
unnamed += 1;
|
|
146
|
+
continue;
|
|
147
|
+
}
|
|
148
|
+
if (!postcode && !locality)
|
|
149
|
+
continue;
|
|
150
|
+
const components = {};
|
|
151
|
+
// 15 of the 179,622 rows publish an empty `numero`, among them `Al Géidgen`
|
|
152
|
+
// in Goedange and `Jaanshaff` in Walferdange.
|
|
153
|
+
// Those are named places, so they keep their street and postcode
|
|
154
|
+
// rather than being assigned a number.
|
|
155
|
+
if (house) {
|
|
156
|
+
components.house_number = house;
|
|
157
|
+
}
|
|
158
|
+
components.street = street;
|
|
159
|
+
if (postcode) {
|
|
160
|
+
components.postcode = postcode;
|
|
161
|
+
}
|
|
162
|
+
if (locality) {
|
|
163
|
+
components.locality = locality;
|
|
164
|
+
}
|
|
165
|
+
const rendered = formatAddressRow(components, "LU", { singleLine: true });
|
|
166
|
+
if (!rendered)
|
|
167
|
+
continue;
|
|
168
|
+
const { raw, components: aligned } = rendered;
|
|
169
|
+
const seed = (record.id_geoportail ?? "").trim();
|
|
170
|
+
const sourceID = seed ? `${BD_ADRESSES_ADAPTER_ID}-${seed}` : stableSourceID(BD_ADRESSES_ADAPTER_ID, aligned);
|
|
171
|
+
yield {
|
|
172
|
+
raw,
|
|
173
|
+
components: aligned,
|
|
174
|
+
country: "LU",
|
|
175
|
+
locale: "und-LU",
|
|
176
|
+
source: BD_ADRESSES_ADAPTER_ID,
|
|
177
|
+
source_id: sourceID,
|
|
178
|
+
corpus_version: "",
|
|
179
|
+
license: BD_ADRESSES_DEFAULT_LICENSE,
|
|
180
|
+
};
|
|
181
|
+
emitted++;
|
|
182
|
+
}
|
|
183
|
+
}
|
|
184
|
+
finally {
|
|
185
|
+
if (unnamed > 0) {
|
|
186
|
+
process.stderr.write(` bd-adresses: ${unnamed} rows publish an empty rue and were dropped, ${emitted} kept\n`);
|
|
187
|
+
}
|
|
188
|
+
}
|
|
189
|
+
},
|
|
190
|
+
};
|
|
191
|
+
}
|
|
192
|
+
/**
|
|
193
|
+
* The configured adapter instance registered with the corpus builder.
|
|
194
|
+
*/
|
|
195
|
+
export const bdAdressesAdapter = createBDAdressesAdapter();
|
|
196
|
+
//# sourceMappingURL=adapter.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"adapter.js","sourceRoot":"","sources":["../../../../lib/lu/adapters/bd-adresses/adapter.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,163 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* @copyright Sister Software
|
|
3
|
+
* @license AGPL-3.0
|
|
4
|
+
* @author Teffen Ellis, et al.
|
|
5
|
+
*
|
|
6
|
+
* Download the Administration du cadastre et de la topographie's BD-Adresses CSV for the
|
|
7
|
+
* `bd-adresses` adapter.
|
|
8
|
+
*
|
|
9
|
+
* The acquisition belongs under a `tools/` root. `@mailwoman/corpus` is one of the
|
|
10
|
+
* `TOOLING_PACKAGES` in `dependency-cruiser.config.mjs`, which keep their tooling under `lib/`, so
|
|
11
|
+
* this module sits beside `#fi/tools/fetch/ryhti` rather than in an `sdk/` root the workspace does
|
|
12
|
+
* not declare.
|
|
13
|
+
*
|
|
14
|
+
* `data.public.lu` states `cc-zero` for this dataset, which the address-source register elects as
|
|
15
|
+
* `CC0-1.0` under `lu-property-building-1`. CC0 asks for no attribution, and crediting the ACT
|
|
16
|
+
* remains good practice, so the manifest records the publisher beside the license.
|
|
17
|
+
*
|
|
18
|
+
* Four measured properties decide what this module does:
|
|
19
|
+
*
|
|
20
|
+
* 1. **The download URL carries the edition's own timestamp.** The dataset is republished weekly
|
|
21
|
+
* and the CSV resource's `url` reads
|
|
22
|
+
* `https://download.data.public.lu/resources/adresses-georeferencees-bd-adresses/20260928-023119/addresses.csv`,
|
|
23
|
+
* where the path segment is the publication time. A hardcoded URL therefore pins one edition and
|
|
24
|
+
* 404s on the next. The module reads {@linkcode LU_BD_ADRESSES_DATASET_URL} and takes the `url`
|
|
25
|
+
* of the resource whose `format` is `csv`. The resource's own `latest`,
|
|
26
|
+
* `https://data.public.lu/fr/datasets/r/<resource id>`, answers http 302 to the same dated path,
|
|
27
|
+
* and the dated path is the one downloaded, so the bytes and the checksum recorded beside them
|
|
28
|
+
* belong to one edition.
|
|
29
|
+
* 2. **The publisher states an md5 for the file.** The resource carries
|
|
30
|
+
* `checksum: {type: "md5", value: "…"}` and a `filesize`, measured as
|
|
31
|
+
* `c2df2f3c18b846144bb5d5dc57fc14ca` and 28,186,970 on the 2026-09-28 edition. The transfer is
|
|
32
|
+
* checked against both, so a truncated body is a reported failure rather than a short CSV that
|
|
33
|
+
* parses. A publisher that one day states a digest of another type is reported rather than
|
|
34
|
+
* skipped silently.
|
|
35
|
+
* 3. **The file opens with a UTF-8 byte-order mark**, `EF BB BF`. The portal's `filesize` counts it,
|
|
36
|
+
* which is why a reader that discards the mark reports three bytes fewer than the portal does.
|
|
37
|
+
* The module writes the body to disk unaltered and checks the digest over the bytes as delivered.
|
|
38
|
+
* 4. **The re-run check is the stated checksum against the manifest.** The dataset API answer is
|
|
39
|
+
* roughly 15 KB, so comparing it costs one small request instead of 28 MB.
|
|
40
|
+
*
|
|
41
|
+
* The CSV is the only one of the three bulk files this reads. The GeoJSON is 80,836,067 bytes and
|
|
42
|
+
* the shapefile 19,681,289 for the same records, and `#lu/adapters/bd-adresses/adapter` hands
|
|
43
|
+
* `opts.inputPath` to `CSVSpliterator.fromAsync`.
|
|
44
|
+
*/
|
|
45
|
+
import { APIClient } from "@mailwoman/core/api";
|
|
46
|
+
import { PathBuilder, type PathBuilderLike } from "path-ts";
|
|
47
|
+
import type { BaseFetchOptions, FetchSummary, SourceManifest } from "#tools/fetch/download";
|
|
48
|
+
/**
|
|
49
|
+
* The dataset record that states the current edition of each bulk file.
|
|
50
|
+
*/
|
|
51
|
+
export declare const LU_BD_ADRESSES_DATASET_URL = "https://data.public.lu/api/1/datasets/adresses-georeferencees-bd-adresses/";
|
|
52
|
+
/**
|
|
53
|
+
* The file the adapter reads.
|
|
54
|
+
*
|
|
55
|
+
* It is the publisher's own name for the resource.
|
|
56
|
+
*/
|
|
57
|
+
export declare const LU_BD_ADRESSES_CSV_FILENAME = "addresses.csv";
|
|
58
|
+
/**
|
|
59
|
+
* The publisher the manifest credits.
|
|
60
|
+
*/
|
|
61
|
+
export declare const LU_BD_ADRESSES_ATTRIBUTION = "Administration du cadastre et de la topographie";
|
|
62
|
+
/**
|
|
63
|
+
* The semicolon the publisher delimits with.
|
|
64
|
+
*/
|
|
65
|
+
export declare const LU_BD_ADRESSES_DELIMITER = ";";
|
|
66
|
+
/**
|
|
67
|
+
* One bulk file as the dataset record describes it.
|
|
68
|
+
*/
|
|
69
|
+
export interface BDAdressesResource {
|
|
70
|
+
/**
|
|
71
|
+
* The dated download URL, which names one edition.
|
|
72
|
+
*/
|
|
73
|
+
url: string;
|
|
74
|
+
/**
|
|
75
|
+
* The publisher's stated byte count, `null` when the record omits it.
|
|
76
|
+
*/
|
|
77
|
+
filesize: number | null;
|
|
78
|
+
/**
|
|
79
|
+
* The publisher's stated md5, `null` when the record states a digest of another type or none.
|
|
80
|
+
*/
|
|
81
|
+
md5: string | null;
|
|
82
|
+
/**
|
|
83
|
+
* The resource's own last-modified time, as the record states it.
|
|
84
|
+
*/
|
|
85
|
+
lastModified: string | null;
|
|
86
|
+
}
|
|
87
|
+
/**
|
|
88
|
+
* The manifest this module writes beside the CSV.
|
|
89
|
+
*/
|
|
90
|
+
export interface BDAdressesManifest extends SourceManifest {
|
|
91
|
+
license: string;
|
|
92
|
+
attribution: string;
|
|
93
|
+
dataset_url: string;
|
|
94
|
+
/**
|
|
95
|
+
* The md5 the dataset record stated, which the downloaded bytes were checked against.
|
|
96
|
+
*/
|
|
97
|
+
publisher_md5: string | null;
|
|
98
|
+
/**
|
|
99
|
+
* The byte count the dataset record stated, beside the `bytes` that arrived.
|
|
100
|
+
*/
|
|
101
|
+
publisher_filesize: number | null;
|
|
102
|
+
last_modified: string | null;
|
|
103
|
+
columns: readonly string[];
|
|
104
|
+
}
|
|
105
|
+
/**
|
|
106
|
+
* The shape the dataset API answers with, narrowed to the fields this module reads.
|
|
107
|
+
*/
|
|
108
|
+
interface DatasetRecord {
|
|
109
|
+
resources?: readonly {
|
|
110
|
+
format?: string;
|
|
111
|
+
url?: string;
|
|
112
|
+
filesize?: number;
|
|
113
|
+
checksum?: {
|
|
114
|
+
type?: string;
|
|
115
|
+
value?: string;
|
|
116
|
+
};
|
|
117
|
+
last_modified?: string;
|
|
118
|
+
}[];
|
|
119
|
+
}
|
|
120
|
+
/**
|
|
121
|
+
* The CSV resource of a dataset record.
|
|
122
|
+
*
|
|
123
|
+
* @throws When the record carries no `csv` resource with a URL, because the publisher
|
|
124
|
+
* having moved the file is a reported failure rather than an empty transfer.
|
|
125
|
+
*/
|
|
126
|
+
export declare function readBDAdressesResource(record: DatasetRecord): BDAdressesResource;
|
|
127
|
+
export interface DownloadBDAdressesOptions {
|
|
128
|
+
outputDir: PathBuilderLike;
|
|
129
|
+
/**
|
|
130
|
+
* Download although the manifest already records this edition's checksum.
|
|
131
|
+
*/
|
|
132
|
+
force?: boolean;
|
|
133
|
+
retries?: number;
|
|
134
|
+
retryDelayMs?: number;
|
|
135
|
+
signal?: AbortSignal;
|
|
136
|
+
report?: (line: string) => void;
|
|
137
|
+
}
|
|
138
|
+
/**
|
|
139
|
+
* Download the current edition of `addresses.csv` into `options.outputDir`.
|
|
140
|
+
*
|
|
141
|
+
* `client` is the caller's, so a test supplies its own and {@linkcode fetchBDAdresses}
|
|
142
|
+
* decides the retry policy.
|
|
143
|
+
*/
|
|
144
|
+
export declare function downloadBDAdresses(client: Pick<APIClient, "fetch">, options: DownloadBDAdressesOptions): Promise<FetchSummary>;
|
|
145
|
+
export interface FetchBDAdressesOptions extends BaseFetchOptions {
|
|
146
|
+
force?: boolean;
|
|
147
|
+
retries?: number;
|
|
148
|
+
signal?: AbortSignal;
|
|
149
|
+
}
|
|
150
|
+
/**
|
|
151
|
+
* Download BD-Adresses into `<outRoot>/bd-adresses/`.
|
|
152
|
+
*
|
|
153
|
+
* The registry entry point.
|
|
154
|
+
* `#lu/adapters/bd-adresses/adapter` is pointed at {@linkcode bdAdressesInputPath},
|
|
155
|
+
* the `addresses.csv` inside that directory, rather than at the directory itself.
|
|
156
|
+
*/
|
|
157
|
+
export declare function fetchBDAdresses(options: FetchBDAdressesOptions, report?: (line: string) => void): Promise<FetchSummary>;
|
|
158
|
+
/**
|
|
159
|
+
* The file `#lu/adapters/bd-adresses/adapter` reads, under a fetch run's `outRoot`.
|
|
160
|
+
*/
|
|
161
|
+
export declare function bdAdressesInputPath(outRoot: PathBuilder): PathBuilder;
|
|
162
|
+
export {};
|
|
163
|
+
//# sourceMappingURL=bd-adresses.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"bd-adresses.d.ts","sourceRoot":"","sources":["../../../../lib/lu/tools/fetch/bd-adresses.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA2CG;AAEH,OAAO,EAAE,SAAS,EAAE,MAAM,qBAAqB,CAAA;AAK/C,OAAO,EAAE,WAAW,EAAE,KAAK,eAAe,EAAE,MAAM,SAAS,CAAA;AAO3D,OAAO,KAAK,EAAE,gBAAgB,EAAE,YAAY,EAAE,cAAc,EAAE,MAAM,uBAAuB,CAAA;AAI3F;;GAEG;AACH,eAAO,MAAM,0BAA0B,+EAA+E,CAAA;AAOtH;;;;GAIG;AACH,eAAO,MAAM,2BAA2B,kBAAkB,CAAA;AAE1D;;GAEG;AACH,eAAO,MAAM,0BAA0B,oDAAoD,CAAA;AAE3F;;GAEG;AACH,eAAO,MAAM,wBAAwB,MAAM,CAAA;AAE3C;;GAEG;AACH,MAAM,WAAW,kBAAkB;IAClC;;OAEG;IACH,GAAG,EAAE,MAAM,CAAA;IACX;;OAEG;IACH,QAAQ,EAAE,MAAM,GAAG,IAAI,CAAA;IACvB;;OAEG;IACH,GAAG,EAAE,MAAM,GAAG,IAAI,CAAA;IAClB;;OAEG;IACH,YAAY,EAAE,MAAM,GAAG,IAAI,CAAA;CAC3B;AAED;;GAEG;AACH,MAAM,WAAW,kBAAmB,SAAQ,cAAc;IACzD,OAAO,EAAE,MAAM,CAAA;IACf,WAAW,EAAE,MAAM,CAAA;IACnB,WAAW,EAAE,MAAM,CAAA;IACnB;;OAEG;IACH,aAAa,EAAE,MAAM,GAAG,IAAI,CAAA;IAC5B;;OAEG;IACH,kBAAkB,EAAE,MAAM,GAAG,IAAI,CAAA;IACjC,aAAa,EAAE,MAAM,GAAG,IAAI,CAAA;IAC5B,OAAO,EAAE,SAAS,MAAM,EAAE,CAAA;CAC1B;AAED;;GAEG;AACH,UAAU,aAAa;IACtB,SAAS,CAAC,EAAE,SAAS;QACpB,MAAM,CAAC,EAAE,MAAM,CAAA;QACf,GAAG,CAAC,EAAE,MAAM,CAAA;QACZ,QAAQ,CAAC,EAAE,MAAM,CAAA;QACjB,QAAQ,CAAC,EAAE;YAAE,IAAI,CAAC,EAAE,MAAM,CAAC;YAAC,KAAK,CAAC,EAAE,MAAM,CAAA;SAAE,CAAA;QAC5C,aAAa,CAAC,EAAE,MAAM,CAAA;KACtB,EAAE,CAAA;CACH;AAED;;;;;GAKG;AACH,wBAAgB,sBAAsB,CAAC,MAAM,EAAE,aAAa,GAAG,kBAAkB,CAqBhF;AAED,MAAM,WAAW,yBAAyB;IACzC,SAAS,EAAE,eAAe,CAAA;IAC1B;;OAEG;IACH,KAAK,CAAC,EAAE,OAAO,CAAA;IACf,OAAO,CAAC,EAAE,MAAM,CAAA;IAChB,YAAY,CAAC,EAAE,MAAM,CAAA;IACrB,MAAM,CAAC,EAAE,WAAW,CAAA;IACpB,MAAM,CAAC,EAAE,CAAC,IAAI,EAAE,MAAM,KAAK,IAAI,CAAA;CAC/B;AAED;;;;;GAKG;AACH,wBAAsB,kBAAkB,CACvC,MAAM,EAAE,IAAI,CAAC,SAAS,EAAE,OAAO,CAAC,EAChC,OAAO,EAAE,yBAAyB,GAChC,OAAO,CAAC,YAAY,CAAC,CAwHvB;AAED,MAAM,WAAW,sBAAuB,SAAQ,gBAAgB;IAC/D,KAAK,CAAC,EAAE,OAAO,CAAA;IACf,OAAO,CAAC,EAAE,MAAM,CAAA;IAChB,MAAM,CAAC,EAAE,WAAW,CAAA;CACpB;AAED;;;;;;GAMG;AACH,wBAAsB,eAAe,CACpC,OAAO,EAAE,sBAAsB,EAC/B,MAAM,CAAC,EAAE,CAAC,IAAI,EAAE,MAAM,KAAK,IAAI,GAC7B,OAAO,CAAC,YAAY,CAAC,CAavB;AAED;;GAEG;AACH,wBAAgB,mBAAmB,CAAC,OAAO,EAAE,WAAW,GAAG,WAAW,CAErE"}
|