@mailwoman/corpus 10.6.0 → 10.7.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/data/PROVENANCE.md +24 -0
- package/data/address-source-register.json +18948 -8757
- package/data/corpus-source-inputs.json +4756 -0
- package/data/license-decisions.json +7260 -0
- package/data/licenses/whosonfirst-licenses.md +3 -2
- package/data/reviewed-ve-postcode-tuples.json +5 -72
- package/data/source-additions.json +2450 -0
- package/data/source-resolutions.json +87 -0
- package/data/training-manifests/v0.7.10-gb-county.effective.json +2335 -0
- package/data/training-manifests/v0.7.10-gb-county.json +1132 -0
- package/data/training-manifests/v0.7.2-address-systems.effective.json +3 -2
- package/data/training-manifests/v0.7.7-no-ppd.json +550 -0
- package/data/training-manifests/v0.7.8-rights-clean.json +538 -0
- package/data/training-manifests/v0.7.9-country-gap.json +1132 -0
- package/data/us-situs-sources.json +128 -0
- package/lib/adapters/cordis/adapter.ts +1 -1
- package/lib/adapters/libpostal-dictionary.ts +23 -3
- package/lib/adapters/osm/adapter.ts +42 -11
- package/lib/adapters.ts +14 -0
- package/lib/az/adapters/opendata/adapter.ts +389 -0
- package/lib/bs/adapters/gbpa/adapter.ts +248 -0
- package/lib/build/types.ts +16 -0
- package/lib/build.ts +21 -0
- package/lib/ee/adapters/ads/adapter.ts +18 -0
- package/lib/fo/adapters/adressur/adapter.ts +242 -0
- package/lib/gb/adapters/os-open/adapter.ts +12 -0
- package/lib/gb/county.ts +59 -0
- package/lib/gb/os-open/open/names.ts +41 -0
- package/lib/gu/adapters/bsp/adapter.ts +434 -0
- package/lib/im/adapters/land-registry/adapter.ts +340 -0
- package/lib/international/recipes/locale.ts +164 -19
- package/lib/li/adapters/llv/adapter.ts +246 -0
- package/lib/recipes/bare/postcode.ts +10 -34
- package/lib/recipes/country-balanced.ts +95 -78
- package/lib/recipes/intersection.ts +22 -30
- package/lib/recipes/po/box/cedex/recipe.ts +8 -5
- package/lib/recipes/po/box/cedex/sources.ts +2 -23
- package/lib/recipes/scaffold.ts +28 -3
- package/lib/recipes/sources.ts +112 -1
- package/lib/recipes/street/affix.ts +17 -29
- package/lib/recipes/sub/venue/context.ts +33 -9
- package/lib/recipes/sub/venue/sources.ts +54 -13
- package/lib/recipes/sub/venue.ts +68 -23
- package/lib/recipes/unit.ts +20 -7
- package/lib/registers.ts +33 -0
- package/lib/source-register/corpus-inputs.ts +528 -0
- package/lib/source-register/effective-manifest.ts +37 -5
- package/lib/source-register/types.ts +20 -0
- package/lib/south-asia/recipes/register.ts +1 -1
- package/lib/tools/overlay/manifest.ts +109 -1
- package/lib/tools/source-register/build.ts +47 -1
- package/lib/tools/variety-sample.ts +633 -0
- package/lib/us/adapters/usgov/nad/adapter.ts +39 -10
- package/lib/us/recipes/skeleton-sources.ts +156 -0
- package/lib/us/tools/nad-skeletons.ts +395 -0
- package/lib/uy/adapters/ide/adapter.ts +275 -0
- package/lib/ve/recipes/reviewed-postcode-tail.ts +29 -6
- package/out/adapters/cordis/adapter.d.ts +1 -1
- package/out/adapters/cordis/adapter.js +1 -1
- package/out/adapters/libpostal-dictionary.d.ts +9 -0
- package/out/adapters/libpostal-dictionary.d.ts.map +1 -1
- package/out/adapters/libpostal-dictionary.js +19 -3
- package/out/adapters/libpostal-dictionary.js.map +1 -1
- package/out/adapters/osm/adapter.d.ts +12 -1
- package/out/adapters/osm/adapter.d.ts.map +1 -1
- package/out/adapters/osm/adapter.js +30 -13
- package/out/adapters/osm/adapter.js.map +1 -1
- package/out/adapters.d.ts.map +1 -1
- package/out/adapters.js +14 -0
- package/out/adapters.js.map +1 -1
- package/out/az/adapters/opendata/adapter.d.ts +88 -0
- package/out/az/adapters/opendata/adapter.d.ts.map +1 -0
- package/out/az/adapters/opendata/adapter.js +282 -0
- package/out/az/adapters/opendata/adapter.js.map +1 -0
- package/out/bs/adapters/gbpa/adapter.d.ts +64 -0
- package/out/bs/adapters/gbpa/adapter.d.ts.map +1 -0
- package/out/bs/adapters/gbpa/adapter.js +187 -0
- package/out/bs/adapters/gbpa/adapter.js.map +1 -0
- package/out/build/types.d.ts +15 -0
- package/out/build/types.d.ts.map +1 -1
- package/out/build/types.js.map +1 -1
- package/out/build.d.ts.map +1 -1
- package/out/build.js +17 -0
- package/out/build.js.map +1 -1
- package/out/ee/adapters/ads/adapter.d.ts +6 -0
- package/out/ee/adapters/ads/adapter.d.ts.map +1 -1
- package/out/ee/adapters/ads/adapter.js +16 -0
- package/out/ee/adapters/ads/adapter.js.map +1 -1
- package/out/fo/adapters/adressur/adapter.d.ts +63 -0
- package/out/fo/adapters/adressur/adapter.d.ts.map +1 -0
- package/out/fo/adapters/adressur/adapter.js +177 -0
- package/out/fo/adapters/adressur/adapter.js.map +1 -0
- package/out/gb/adapters/os-open/adapter.d.ts +8 -0
- package/out/gb/adapters/os-open/adapter.d.ts.map +1 -1
- package/out/gb/adapters/os-open/adapter.js +11 -0
- package/out/gb/adapters/os-open/adapter.js.map +1 -1
- package/out/gb/county.d.ts +30 -0
- package/out/gb/county.d.ts.map +1 -0
- package/out/gb/county.js +51 -0
- package/out/gb/county.js.map +1 -0
- package/out/gb/os-open/open/names.d.ts +17 -0
- package/out/gb/os-open/open/names.d.ts.map +1 -1
- package/out/gb/os-open/open/names.js +19 -0
- package/out/gb/os-open/open/names.js.map +1 -1
- package/out/gu/adapters/bsp/adapter.d.ts +83 -0
- package/out/gu/adapters/bsp/adapter.d.ts.map +1 -0
- package/out/gu/adapters/bsp/adapter.js +346 -0
- package/out/gu/adapters/bsp/adapter.js.map +1 -0
- package/out/im/adapters/land-registry/adapter.d.ts +68 -0
- package/out/im/adapters/land-registry/adapter.d.ts.map +1 -0
- package/out/im/adapters/land-registry/adapter.js +261 -0
- package/out/im/adapters/land-registry/adapter.js.map +1 -0
- package/out/international/recipes/locale.d.ts +24 -4
- package/out/international/recipes/locale.d.ts.map +1 -1
- package/out/international/recipes/locale.js +107 -15
- package/out/international/recipes/locale.js.map +1 -1
- package/out/li/adapters/llv/adapter.d.ts +69 -0
- package/out/li/adapters/llv/adapter.d.ts.map +1 -0
- package/out/li/adapters/llv/adapter.js +181 -0
- package/out/li/adapters/llv/adapter.js.map +1 -0
- package/out/recipes/bare/postcode.d.ts.map +1 -1
- package/out/recipes/bare/postcode.js +9 -30
- package/out/recipes/bare/postcode.js.map +1 -1
- package/out/recipes/country-balanced.d.ts.map +1 -1
- package/out/recipes/country-balanced.js +82 -73
- package/out/recipes/country-balanced.js.map +1 -1
- package/out/recipes/intersection.d.ts +3 -2
- package/out/recipes/intersection.d.ts.map +1 -1
- package/out/recipes/intersection.js +20 -26
- package/out/recipes/intersection.js.map +1 -1
- package/out/recipes/po/box/cedex/recipe.d.ts.map +1 -1
- package/out/recipes/po/box/cedex/recipe.js +5 -4
- package/out/recipes/po/box/cedex/recipe.js.map +1 -1
- package/out/recipes/po/box/cedex/sources.d.ts +2 -45
- package/out/recipes/po/box/cedex/sources.d.ts.map +1 -1
- package/out/recipes/po/box/cedex/sources.js +0 -20
- package/out/recipes/po/box/cedex/sources.js.map +1 -1
- package/out/recipes/scaffold.d.ts +15 -2
- package/out/recipes/scaffold.d.ts.map +1 -1
- package/out/recipes/scaffold.js +21 -1
- package/out/recipes/scaffold.js.map +1 -1
- package/out/recipes/sources.d.ts.map +1 -1
- package/out/recipes/sources.js +112 -1
- package/out/recipes/sources.js.map +1 -1
- package/out/recipes/street/affix.d.ts.map +1 -1
- package/out/recipes/street/affix.js +8 -20
- package/out/recipes/street/affix.js.map +1 -1
- package/out/recipes/sub/venue/context.d.ts +14 -3
- package/out/recipes/sub/venue/context.d.ts.map +1 -1
- package/out/recipes/sub/venue/context.js +29 -9
- package/out/recipes/sub/venue/context.js.map +1 -1
- package/out/recipes/sub/venue/sources.d.ts +41 -8
- package/out/recipes/sub/venue/sources.d.ts.map +1 -1
- package/out/recipes/sub/venue/sources.js +26 -7
- package/out/recipes/sub/venue/sources.js.map +1 -1
- package/out/recipes/sub/venue.d.ts.map +1 -1
- package/out/recipes/sub/venue.js +35 -14
- package/out/recipes/sub/venue.js.map +1 -1
- package/out/recipes/unit.d.ts +4 -0
- package/out/recipes/unit.d.ts.map +1 -1
- package/out/recipes/unit.js +7 -6
- package/out/recipes/unit.js.map +1 -1
- package/out/registers.d.ts +33 -0
- package/out/registers.d.ts.map +1 -1
- package/out/registers.js +33 -0
- package/out/registers.js.map +1 -1
- package/out/source-register/corpus-inputs.d.ts +240 -0
- package/out/source-register/corpus-inputs.d.ts.map +1 -0
- package/out/source-register/corpus-inputs.js +275 -0
- package/out/source-register/corpus-inputs.js.map +1 -0
- package/out/source-register/effective-manifest.d.ts +2 -0
- package/out/source-register/effective-manifest.d.ts.map +1 -1
- package/out/source-register/effective-manifest.js +33 -4
- package/out/source-register/effective-manifest.js.map +1 -1
- package/out/source-register/types.d.ts +21 -1
- package/out/source-register/types.d.ts.map +1 -1
- package/out/source-register/types.js +20 -0
- package/out/source-register/types.js.map +1 -1
- package/out/south-asia/recipes/register.js +1 -1
- package/out/south-asia/recipes/register.js.map +1 -1
- package/out/tools/overlay/manifest.d.ts +7 -0
- package/out/tools/overlay/manifest.d.ts.map +1 -1
- package/out/tools/overlay/manifest.js +72 -1
- package/out/tools/overlay/manifest.js.map +1 -1
- package/out/tools/source-register/build.d.ts +9 -0
- package/out/tools/source-register/build.d.ts.map +1 -1
- package/out/tools/source-register/build.js +25 -3
- package/out/tools/source-register/build.js.map +1 -1
- package/out/tools/variety-sample.d.ts +196 -0
- package/out/tools/variety-sample.d.ts.map +1 -0
- package/out/tools/variety-sample.js +417 -0
- package/out/tools/variety-sample.js.map +1 -0
- package/out/us/adapters/usgov/nad/adapter.d.ts +80 -0
- package/out/us/adapters/usgov/nad/adapter.d.ts.map +1 -1
- package/out/us/adapters/usgov/nad/adapter.js +27 -8
- package/out/us/adapters/usgov/nad/adapter.js.map +1 -1
- package/out/us/recipes/skeleton-sources.d.ts +92 -0
- package/out/us/recipes/skeleton-sources.d.ts.map +1 -0
- package/out/us/recipes/skeleton-sources.js +121 -0
- package/out/us/recipes/skeleton-sources.js.map +1 -0
- package/out/us/tools/nad-skeletons.d.ts +120 -0
- package/out/us/tools/nad-skeletons.d.ts.map +1 -0
- package/out/us/tools/nad-skeletons.js +262 -0
- package/out/us/tools/nad-skeletons.js.map +1 -0
- package/out/uy/adapters/ide/adapter.d.ts +64 -0
- package/out/uy/adapters/ide/adapter.d.ts.map +1 -0
- package/out/uy/adapters/ide/adapter.js +206 -0
- package/out/uy/adapters/ide/adapter.js.map +1 -0
- package/out/ve/recipes/reviewed-postcode-tail.d.ts +6 -2
- package/out/ve/recipes/reviewed-postcode-tail.d.ts.map +1 -1
- package/out/ve/recipes/reviewed-postcode-tail.js +16 -5
- package/out/ve/recipes/reviewed-postcode-tail.js.map +1 -1
- package/package.json +14 -14
- package/lib/recipes/unit/sources.ts +0 -44
- package/lib/tools/fetch/ppd.ts +0 -121
- package/out/recipes/unit/sources.d.ts +0 -28
- package/out/recipes/unit/sources.d.ts.map +0 -1
- package/out/recipes/unit/sources.js +0 -30
- package/out/recipes/unit/sources.js.map +0 -1
- package/out/tools/fetch/ppd.d.ts +0 -15
- package/out/tools/fetch/ppd.d.ts.map +0 -1
- package/out/tools/fetch/ppd.js +0 -86
- package/out/tools/fetch/ppd.js.map +0 -1
|
@@ -0,0 +1,187 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* @copyright Sister Software
|
|
3
|
+
* @license AGPL-3.0
|
|
4
|
+
* @author Teffen Ellis, et al.
|
|
5
|
+
*
|
|
6
|
+
* `gbpa-bs`: the address points of the Grand Bahama Port Authority (GBPA), covering the City of Freeport
|
|
7
|
+
* and Lucaya on Grand Bahama, which the GBPA publishes in its `GBPA/gis-datafiles` repository on GitHub.
|
|
8
|
+
* The adapter reads the CSV export, `CSV/addresses.csv`.
|
|
9
|
+
*
|
|
10
|
+
* A Freeport address number is a block and a parcel joined by a hyphen (`8-29 Seagull Drive`), and either
|
|
11
|
+
* part may be lettered (`UU-3`, `13-43C`, `W-A-10`). The adapter reads `AddressNum` as the house number,
|
|
12
|
+
* `FullStName` as the street, `City` as the locality, `Island` as the region and `AltName` as a venue
|
|
13
|
+
* (`Lucayan International School`, `Shoreline`). The export truncates some parcel ids to five characters and
|
|
14
|
+
* a star (`Minis*`), and those numbers are dropped.
|
|
15
|
+
*
|
|
16
|
+
* The export repeats the street's name in a few records (`Rippindale Rippindale`, and across an embedded
|
|
17
|
+
* line break `Santa Maria \r\nSanta Maria Avenue`). The adapter collapses the repeat and counts it.
|
|
18
|
+
*
|
|
19
|
+
* The GBPA licenses the data under CC BY 4.0 and asks for the statement "Data Provided by The Grand Bahama
|
|
20
|
+
* Port Authority". Every row records that license.
|
|
21
|
+
*/
|
|
22
|
+
import { formatAddressRow } from "@mailwoman/codex/address/format";
|
|
23
|
+
import { readLocalBuffer } from "@mailwoman/core/fs/readers";
|
|
24
|
+
import { resolvePath } from "path-ts";
|
|
25
|
+
import { CSVSpliterator } from "spliterator";
|
|
26
|
+
import { UnsupportedCountryError } from "#adapters/errors";
|
|
27
|
+
import { stableSourceIDFromParts } from "#adapters/source-id";
|
|
28
|
+
import { SourceRegister } from "#registers";
|
|
29
|
+
import { AddressRole, countDropped, SurfaceOrigin, } from "#types";
|
|
30
|
+
/**
|
|
31
|
+
* Registry id for this adapter, stamped into every row it emits.
|
|
32
|
+
*/
|
|
33
|
+
export const GBPA_BS_ADAPTER_ID = "gbpa-bs";
|
|
34
|
+
/**
|
|
35
|
+
* The license the GBPA publishes the repository's data under.
|
|
36
|
+
*/
|
|
37
|
+
export const GBPA_BS_LICENSE = "CC-BY-4.0";
|
|
38
|
+
/**
|
|
39
|
+
* The attribution statement the GBPA asks for.
|
|
40
|
+
*/
|
|
41
|
+
export const GBPA_BS_ATTRIBUTION = "Data Provided by The Grand Bahama Port Authority";
|
|
42
|
+
/**
|
|
43
|
+
* Every jurisdiction this adapter emits, checked against a caller's `--country`.
|
|
44
|
+
*/
|
|
45
|
+
export const GBPA_BS_COUNTRIES = ["BS"];
|
|
46
|
+
/**
|
|
47
|
+
* A value with its whitespace, including the export's embedded line breaks, collapsed, or null when empty.
|
|
48
|
+
*/
|
|
49
|
+
function present(value) {
|
|
50
|
+
const trimmed = value?.replaceAll(/\s+/gu, " ").trim() ?? "";
|
|
51
|
+
return trimmed || null;
|
|
52
|
+
}
|
|
53
|
+
/**
|
|
54
|
+
* A block and parcel number: alphanumeric parts joined by hyphens (`8-29`, `UU-3`, `W-A-10`, `G-3B10`, `L`).
|
|
55
|
+
*/
|
|
56
|
+
const ADDRESS_NUMBER = /^[A-Z\d]+(?:-[A-Z\d]+)*$/iu;
|
|
57
|
+
/**
|
|
58
|
+
* A street's name repeated before its type (`Santa Maria Santa Maria Avenue`)
|
|
59
|
+
* or after it (`Wragby Wragby`).
|
|
60
|
+
*/
|
|
61
|
+
const REPEATED_NAME = /^(.+?) \1(?= |$)/u;
|
|
62
|
+
/**
|
|
63
|
+
* A street value that is only a type word, with no name before it.
|
|
64
|
+
*/
|
|
65
|
+
const TYPE_WORD_ONLY = /^(?:road|lane|drive|avenue|street|court|close|way|place|circle|terrace|crescent)$/iu;
|
|
66
|
+
/**
|
|
67
|
+
* Initials and a surname alone (`J.S. Johnson`) name a person rather than a place or a business.
|
|
68
|
+
*/
|
|
69
|
+
const INITIALS_AND_SURNAME = /^(?:\p{Lu}\.\s*)+\p{Lu}\p{Ll}+$/u;
|
|
70
|
+
/**
|
|
71
|
+
* Maps one record onto the components the corpus asserts, or returns null when the row is refused.
|
|
72
|
+
*
|
|
73
|
+
* Each refusal and each dropped or repaired component increments its reason in `dropped`.
|
|
74
|
+
*/
|
|
75
|
+
export function componentsForGBPARecord(record, dropped) {
|
|
76
|
+
const tally = dropped ?? {};
|
|
77
|
+
let street = present(record.FullStName);
|
|
78
|
+
if (!street) {
|
|
79
|
+
countDropped(tally, "row:no-street");
|
|
80
|
+
return null;
|
|
81
|
+
}
|
|
82
|
+
if (REPEATED_NAME.test(street)) {
|
|
83
|
+
street = street.replace(REPEATED_NAME, "$1");
|
|
84
|
+
countDropped(tally, "component:street:repeated-name-collapsed");
|
|
85
|
+
}
|
|
86
|
+
if (TYPE_WORD_ONLY.test(street)) {
|
|
87
|
+
countDropped(tally, "row:street-is-a-type-word");
|
|
88
|
+
return null;
|
|
89
|
+
}
|
|
90
|
+
const components = { street };
|
|
91
|
+
const number = present(record.AddressNum);
|
|
92
|
+
if (number && ADDRESS_NUMBER.test(number)) {
|
|
93
|
+
components.house_number = number;
|
|
94
|
+
}
|
|
95
|
+
else if (number?.includes("*")) {
|
|
96
|
+
countDropped(tally, "component:house_number:truncated");
|
|
97
|
+
}
|
|
98
|
+
else if (number) {
|
|
99
|
+
countDropped(tally, "component:house_number:not-a-block-parcel-number");
|
|
100
|
+
}
|
|
101
|
+
const venue = present(record.AltName);
|
|
102
|
+
if (venue && !/\p{L}{3}/u.test(venue)) {
|
|
103
|
+
countDropped(tally, "component:venue:code");
|
|
104
|
+
}
|
|
105
|
+
else if (venue && /(\p{L})\1{3,}$/u.test(venue)) {
|
|
106
|
+
// `Bellevue Gifts & Suppliesccccc` carries a run of repeated keystrokes.
|
|
107
|
+
countDropped(tally, "component:venue:malformed");
|
|
108
|
+
}
|
|
109
|
+
else if (venue && INITIALS_AND_SURNAME.test(venue)) {
|
|
110
|
+
countDropped(tally, "component:venue:names-a-person");
|
|
111
|
+
}
|
|
112
|
+
else if (venue) {
|
|
113
|
+
components.venue = venue;
|
|
114
|
+
}
|
|
115
|
+
if (!components.house_number && !components.venue) {
|
|
116
|
+
countDropped(tally, "row:no-house-number-or-name");
|
|
117
|
+
return null;
|
|
118
|
+
}
|
|
119
|
+
const locality = present(record.City);
|
|
120
|
+
const region = present(record.Island);
|
|
121
|
+
if (locality) {
|
|
122
|
+
components.locality = locality;
|
|
123
|
+
}
|
|
124
|
+
if (region) {
|
|
125
|
+
components.region = region;
|
|
126
|
+
}
|
|
127
|
+
if (!components.locality) {
|
|
128
|
+
countDropped(tally, "row:no-locality");
|
|
129
|
+
return null;
|
|
130
|
+
}
|
|
131
|
+
return components;
|
|
132
|
+
}
|
|
133
|
+
export function createGBPAAdapter() {
|
|
134
|
+
return {
|
|
135
|
+
id: GBPA_BS_ADAPTER_ID,
|
|
136
|
+
defaultLicense: GBPA_BS_LICENSE,
|
|
137
|
+
addressRole: AddressRole.Premise,
|
|
138
|
+
register: SourceRegister.GrandBahamaPortAuthorityAddresses,
|
|
139
|
+
surface: SurfaceOrigin.Rendered,
|
|
140
|
+
description: "Grand Bahama Port Authority address points (Freeport and Lucaya), GBPA/gis-datafiles CSV export.",
|
|
141
|
+
async *rows(opts) {
|
|
142
|
+
if (opts.country && !GBPA_BS_COUNTRIES.includes(opts.country)) {
|
|
143
|
+
throw new UnsupportedCountryError(GBPA_BS_ADAPTER_ID, GBPA_BS_COUNTRIES, opts.country);
|
|
144
|
+
}
|
|
145
|
+
// The file is 8 MB, so it is decoded whole.
|
|
146
|
+
// The BOM would otherwise prefix the first header.
|
|
147
|
+
const text = (await readLocalBuffer(resolvePath(opts.inputPath))).toString("utf8").replace(/^/u, "");
|
|
148
|
+
const records = CSVSpliterator.from(Buffer.from(text, "utf8"), { normalizeKeys: false });
|
|
149
|
+
let emitted = 0;
|
|
150
|
+
for (const record of records) {
|
|
151
|
+
if (opts.signal?.aborted)
|
|
152
|
+
return;
|
|
153
|
+
if (opts.limit !== undefined && emitted >= opts.limit)
|
|
154
|
+
return;
|
|
155
|
+
const components = componentsForGBPARecord(record, opts);
|
|
156
|
+
if (!components)
|
|
157
|
+
continue;
|
|
158
|
+
const rendered = formatAddressRow(components, "BS", { singleLine: true });
|
|
159
|
+
if (!rendered) {
|
|
160
|
+
countDropped(opts, "row:render-failed");
|
|
161
|
+
continue;
|
|
162
|
+
}
|
|
163
|
+
for (const tag of rendered.unplaced) {
|
|
164
|
+
countDropped(opts, `component:${tag}:not-rendered`);
|
|
165
|
+
}
|
|
166
|
+
const { raw, components: aligned } = rendered;
|
|
167
|
+
yield {
|
|
168
|
+
raw,
|
|
169
|
+
components: aligned,
|
|
170
|
+
country: "BS",
|
|
171
|
+
locale: "en-BS",
|
|
172
|
+
source: GBPA_BS_ADAPTER_ID,
|
|
173
|
+
// The GBPA's own address id separates two points the rendered components cannot.
|
|
174
|
+
source_id: stableSourceIDFromParts(GBPA_BS_ADAPTER_ID, { ...aligned, add_id: record.AddID ?? "" }),
|
|
175
|
+
corpus_version: "",
|
|
176
|
+
license: GBPA_BS_LICENSE,
|
|
177
|
+
};
|
|
178
|
+
emitted++;
|
|
179
|
+
}
|
|
180
|
+
},
|
|
181
|
+
};
|
|
182
|
+
}
|
|
183
|
+
/**
|
|
184
|
+
* The configured adapter instance registered with the corpus builder.
|
|
185
|
+
*/
|
|
186
|
+
export const gbpaAdapter = createGBPAAdapter();
|
|
187
|
+
//# sourceMappingURL=adapter.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"adapter.js","sourceRoot":"","sources":["../../../../lib/bs/adapters/gbpa/adapter.ts"],"names":[],"mappings":"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"}
|
package/out/build/types.d.ts
CHANGED
|
@@ -11,6 +11,7 @@
|
|
|
11
11
|
import type { PathBuilderLike } from "path-ts";
|
|
12
12
|
import type { ParquetManifest } from "#parquet/writers";
|
|
13
13
|
import type { AdapterRunManifest } from "#runner";
|
|
14
|
+
import type { SourceRightsRecord } from "#source-register/corpus-inputs";
|
|
14
15
|
import type { AdapterOptions, CorpusAdapter } from "#types";
|
|
15
16
|
import type { LicensePolicy, LicenseRefusalKind } from "#utils/license";
|
|
16
17
|
import type { SplitManifest } from "#utils/split";
|
|
@@ -124,6 +125,15 @@ export interface BuildCorpusOptions {
|
|
|
124
125
|
* @defaultValue {@linkcode BuildProfile.Exploratory}
|
|
125
126
|
*/
|
|
126
127
|
profile?: BuildProfile;
|
|
128
|
+
/**
|
|
129
|
+
* Why a local experiment admits sources whose register rows lack an elected
|
|
130
|
+
* decision permitting `transform` and `train`.
|
|
131
|
+
*
|
|
132
|
+
* Without it the build refuses such a source before any adapter runs.
|
|
133
|
+
* With it the build logs every gap and records the corpus as not shippable
|
|
134
|
+
* in {@linkcode BuildCorpusManifest.source_rights}.
|
|
135
|
+
*/
|
|
136
|
+
unshippableReason?: string;
|
|
127
137
|
}
|
|
128
138
|
/**
|
|
129
139
|
* Top-level manifest tying every stage together.
|
|
@@ -218,5 +228,10 @@ export interface BuildCorpusManifest {
|
|
|
218
228
|
* That file is the frozen record of which sources contributed and under which terms.
|
|
219
229
|
*/
|
|
220
230
|
training_manifest_digest: string;
|
|
231
|
+
/**
|
|
232
|
+
* Whether every source this build emitted reads only register sources whose decisions permit
|
|
233
|
+
* `transform` and `train`, and the gaps an `unshippableReason` admitted when they do not.
|
|
234
|
+
*/
|
|
235
|
+
source_rights: SourceRightsRecord;
|
|
221
236
|
}
|
|
222
237
|
//# sourceMappingURL=types.d.ts.map
|
package/out/build/types.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../lib/build/types.ts"],"names":[],"mappings":"AAAA;;;;;;;;;GASG;AAEH,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,SAAS,CAAA;AAE9C,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,kBAAkB,CAAA;AACvD,OAAO,KAAK,EAAE,kBAAkB,EAAE,MAAM,SAAS,CAAA;AACjD,OAAO,KAAK,EAAE,cAAc,EAAE,aAAa,EAAE,MAAM,QAAQ,CAAA;AAC3D,OAAO,KAAK,EAAE,aAAa,EAAE,kBAAkB,EAAE,MAAM,gBAAgB,CAAA;AACvE,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,cAAc,CAAA;AAEjD;;GAEG;AACH,MAAM,MAAM,UAAU,GAAG,aAAa,GAAG,OAAO,GAAG,OAAO,GAAG,SAAS,GAAG,UAAU,CAAA;AAEnF;;GAEG;AACH,eAAO,MAAM,sBAAsB,0BAA0B,CAAA;AAE7D;;;;;;GAMG;AACH,eAAO,MAAM,YAAY;IACxB;;;OAGG;aACH,WAAW,EAAE,aAAa;IAC1B;;;OAGG;aACH,eAAe,EAAE,kBAAkB;CAC1B,CAAA;AAEV,MAAM,MAAM,YAAY,GAAG,CAAC,OAAO,YAAY,CAAC,CAAC,MAAM,OAAO,YAAY,CAAC,CAAA;AAE3E;;GAEG;AACH,MAAM,WAAW,kBAAkB;IAClC;;;OAGG;IACH,SAAS,EAAE,eAAe,CAAA;IAE1B;;OAEG;IACH,aAAa,EAAE,MAAM,CAAA;IAErB;;;;OAIG;IACH,QAAQ,CAAC,EAAE,SAAS,aAAa,EAAE,CAAA;IAEnC;;;;OAIG;IACH,aAAa,EAAE,MAAM,CAAC,MAAM,EAAE,cAAc,CAAC,CAAA;IAE7C;;;;OAIG;IACH,UAAU,CAAC,EAAE,OAAO,CAAA;IAEpB;;;;OAIG;IACH,WAAW,CAAC,EAAE,MAAM,CAAA;IAEpB;;;;;;;;;;;OAWG;IACH,aAAa,CAAC,EAAE,MAAM,CAAA;IAEtB;;;;OAIG;IACH,WAAW,CAAC,EAAE,MAAM,CAAA;IAEpB;;;OAGG;IACH,UAAU,CAAC,EAAE,CAAC,KAAK,EAAE,UAAU,EAAE,OAAO,EAAE,MAAM,KAAK,IAAI,CAAA;IAEzD;;;;;OAKG;IACH,eAAe,CAAC,EAAE,SAAS,MAAM,EAAE,CAAA;IAEnC;;;;;;OAMG;IACH,aAAa,CAAC,EAAE,aAAa,CAAA;IAE7B;;;;OAIG;IACH,OAAO,CAAC,EAAE,YAAY,CAAA;
|
|
1
|
+
{"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../lib/build/types.ts"],"names":[],"mappings":"AAAA;;;;;;;;;GASG;AAEH,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,SAAS,CAAA;AAE9C,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,kBAAkB,CAAA;AACvD,OAAO,KAAK,EAAE,kBAAkB,EAAE,MAAM,SAAS,CAAA;AACjD,OAAO,KAAK,EAAE,kBAAkB,EAAE,MAAM,gCAAgC,CAAA;AACxE,OAAO,KAAK,EAAE,cAAc,EAAE,aAAa,EAAE,MAAM,QAAQ,CAAA;AAC3D,OAAO,KAAK,EAAE,aAAa,EAAE,kBAAkB,EAAE,MAAM,gBAAgB,CAAA;AACvE,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,cAAc,CAAA;AAEjD;;GAEG;AACH,MAAM,MAAM,UAAU,GAAG,aAAa,GAAG,OAAO,GAAG,OAAO,GAAG,SAAS,GAAG,UAAU,CAAA;AAEnF;;GAEG;AACH,eAAO,MAAM,sBAAsB,0BAA0B,CAAA;AAE7D;;;;;;GAMG;AACH,eAAO,MAAM,YAAY;IACxB;;;OAGG;aACH,WAAW,EAAE,aAAa;IAC1B;;;OAGG;aACH,eAAe,EAAE,kBAAkB;CAC1B,CAAA;AAEV,MAAM,MAAM,YAAY,GAAG,CAAC,OAAO,YAAY,CAAC,CAAC,MAAM,OAAO,YAAY,CAAC,CAAA;AAE3E;;GAEG;AACH,MAAM,WAAW,kBAAkB;IAClC;;;OAGG;IACH,SAAS,EAAE,eAAe,CAAA;IAE1B;;OAEG;IACH,aAAa,EAAE,MAAM,CAAA;IAErB;;;;OAIG;IACH,QAAQ,CAAC,EAAE,SAAS,aAAa,EAAE,CAAA;IAEnC;;;;OAIG;IACH,aAAa,EAAE,MAAM,CAAC,MAAM,EAAE,cAAc,CAAC,CAAA;IAE7C;;;;OAIG;IACH,UAAU,CAAC,EAAE,OAAO,CAAA;IAEpB;;;;OAIG;IACH,WAAW,CAAC,EAAE,MAAM,CAAA;IAEpB;;;;;;;;;;;OAWG;IACH,aAAa,CAAC,EAAE,MAAM,CAAA;IAEtB;;;;OAIG;IACH,WAAW,CAAC,EAAE,MAAM,CAAA;IAEpB;;;OAGG;IACH,UAAU,CAAC,EAAE,CAAC,KAAK,EAAE,UAAU,EAAE,OAAO,EAAE,MAAM,KAAK,IAAI,CAAA;IAEzD;;;;;OAKG;IACH,eAAe,CAAC,EAAE,SAAS,MAAM,EAAE,CAAA;IAEnC;;;;;;OAMG;IACH,aAAa,CAAC,EAAE,aAAa,CAAA;IAE7B;;;;OAIG;IACH,OAAO,CAAC,EAAE,YAAY,CAAA;IAEtB;;;;;;;OAOG;IACH,iBAAiB,CAAC,EAAE,MAAM,CAAA;CAC1B;AAED;;GAEG;AACH,MAAM,WAAW,mBAAmB;IACnC,cAAc,EAAE,MAAM,CAAA;IACtB,QAAQ,EAAE,MAAM,CAAA;IAChB,QAAQ,EAAE,kBAAkB,EAAE,CAAA;IAC9B,gBAAgB,EAAE,MAAM,EAAE,CAAA;IAC1B,MAAM,EAAE;QAAE,MAAM,EAAE,aAAa,CAAC,QAAQ,CAAC,CAAC;QAAC,QAAQ,EAAE,aAAa,CAAC,UAAU,CAAC,CAAA;KAAE,CAAA;IAChF,MAAM,EAAE;QAAE,MAAM,EAAE,eAAe,CAAC,QAAQ,CAAC,CAAC;QAAC,UAAU,EAAE,MAAM,CAAA;KAAE,CAAA;IACjE,gBAAgB,EAAE,MAAM,CAAA;IACxB,kBAAkB,EAAE,MAAM,CAAA;IAC1B;;;;;;;;;;;;OAYG;IACH,QAAQ,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAA;IAChC;;;;OAIG;IACH,cAAc,EAAE,MAAM,CAAA;IACtB,mBAAmB,EAAE,MAAM,CAAA;IAC3B;;;OAGG;IACH,cAAc,EAAE,aAAa,CAAA;IAC7B;;;;OAIG;IACH,uBAAuB,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAA;IAC/C;;;;OAIG;IACH,sBAAsB,EAAE,MAAM,CAAC,MAAM,EAAE,kBAAkB,CAAC,CAAA;IAC1D;;;;;;;OAOG;IACH,sBAAsB,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAA;IAC9C;;;;;OAKG;IACH,gCAAgC,EAAE,MAAM,CAAA;IACxC;;OAEG;IACH,OAAO,EAAE,YAAY,CAAA;IACrB;;;;OAIG;IACH,uBAAuB,EAAE,MAAM,CAAA;IAC/B;;;OAGG;IACH,kBAAkB,EAAE,MAAM,CAAC,MAAM,EAAE,SAAS,MAAM,EAAE,CAAC,CAAA;IACrD;;;;OAIG;IACH,wBAAwB,EAAE,MAAM,CAAA;IAChC;;;OAGG;IACH,aAAa,EAAE,kBAAkB,CAAA;CACjC"}
|
package/out/build/types.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"types.js","sourceRoot":"","sources":["../../lib/build/types.ts"],"names":[],"mappings":"AAAA;;;;;;;;;GASG;
|
|
1
|
+
{"version":3,"file":"types.js","sourceRoot":"","sources":["../../lib/build/types.ts"],"names":[],"mappings":"AAAA;;;;;;;;;GASG;AAgBH;;GAEG;AACH,MAAM,CAAC,MAAM,sBAAsB,GAAG,uBAAuB,CAAA;AAE7D;;;;;;GAMG;AACH,MAAM,CAAC,MAAM,YAAY,GAAG;IAC3B;;;OAGG;IACH,WAAW,EAAE,aAAa;IAC1B;;;OAGG;IACH,eAAe,EAAE,kBAAkB;CAC1B,CAAA"}
|
package/out/build.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"build.d.ts","sourceRoot":"","sources":["../lib/build.ts"],"names":[],"mappings":"AAAA;;;;;;;;GAQG;AAYH,OAAO,EAAwC,KAAK,mBAAmB,EAAE,KAAK,kBAAkB,EAAE,MAAM,cAAc,CAAA;
|
|
1
|
+
{"version":3,"file":"build.d.ts","sourceRoot":"","sources":["../lib/build.ts"],"names":[],"mappings":"AAAA;;;;;;;;GAQG;AAYH,OAAO,EAAwC,KAAK,mBAAmB,EAAE,KAAK,kBAAkB,EAAE,MAAM,cAAc,CAAA;AAWtH,cAAc,aAAa,CAAA;AAC3B,cAAc,cAAc,CAAA;AAE5B;;GAEG;AACH,wBAAsB,WAAW,CAAC,IAAI,EAAE,kBAAkB,GAAG,OAAO,CAAC,mBAAmB,CAAC,CA6KxF"}
|
package/out/build.js
CHANGED
|
@@ -21,6 +21,7 @@ import { $public } from "#env";
|
|
|
21
21
|
import { ROWS_PER_FILE } from "#parquet/schema";
|
|
22
22
|
import { DEFAULT_SHUFFLE_SEED, DEFAULT_SHUFFLE_WINDOW, shuffleWithinWindow } from "#parquet/shuffle";
|
|
23
23
|
import { writeParquetSplits } from "#parquet/writers";
|
|
24
|
+
import { openSourceRightsAdmission } from "#source-register/corpus-inputs";
|
|
24
25
|
import { freezeTrainingManifest } from "#source-register/training-manifest";
|
|
25
26
|
import { LicensePolicy } from "#utils/license";
|
|
26
27
|
import { defaultHoldouts, writeSplitManifestsFromLabeledFiles } from "#utils/split";
|
|
@@ -43,6 +44,18 @@ export async function buildCorpus(opts) {
|
|
|
43
44
|
const heapLimit = heapLimitBytes();
|
|
44
45
|
const configured = adapters.filter((adapter) => opts.adapterInputs[adapter.id]).map((adapter) => adapter.id);
|
|
45
46
|
opts.onProgress?.("adapter-run", `heap limit ${(heapLimit / 1024 / 1024 / 1024).toFixed(1)} GiB, ${configured.length} adapters configured`);
|
|
47
|
+
// An adapter stamps its own id into each row's `source`, so the configured
|
|
48
|
+
// adapters are the sources this build will emit.
|
|
49
|
+
// Checking them here refuses before hours of adapter work rather than after.
|
|
50
|
+
const rights = await openSourceRightsAdmission({
|
|
51
|
+
context: `corpus build ${opts.corpusVersion}`,
|
|
52
|
+
unshippableReason: opts.unshippableReason ?? null,
|
|
53
|
+
log: (line) => {
|
|
54
|
+
console.error(line);
|
|
55
|
+
opts.onProgress?.("adapter-run", line);
|
|
56
|
+
},
|
|
57
|
+
});
|
|
58
|
+
rights.admitAll(configured);
|
|
46
59
|
const outputDir = PathBuilder.from(opts.outputDir);
|
|
47
60
|
const intermediateDir = outputDir("intermediate");
|
|
48
61
|
await makeDirectories(outputDir, intermediateDir);
|
|
@@ -74,6 +87,9 @@ export async function buildCorpus(opts) {
|
|
|
74
87
|
checkpointPath: intermediateDir("align-checkpoint.json"),
|
|
75
88
|
onProgress: opts.onProgress,
|
|
76
89
|
});
|
|
90
|
+
// A row's `source` can differ from its adapter's id, so every source the align phase
|
|
91
|
+
// admitted is checked again before any of its rows reach a split or a parquet file.
|
|
92
|
+
rights.admitAll(align.rowsBySource.keys());
|
|
77
93
|
opts.onProgress?.("split", `splitting ${align.aligned} aligned rows`);
|
|
78
94
|
const splitCounts = await writeSplitManifestsFromLabeledFiles({
|
|
79
95
|
labeledPaths,
|
|
@@ -143,6 +159,7 @@ export async function buildCorpus(opts) {
|
|
|
143
159
|
excluded_by_eligibility: align.excludedByEligibility,
|
|
144
160
|
ineligible_sources: Object.fromEntries(align.ineligibleSources),
|
|
145
161
|
training_manifest_digest: trainingManifest.contentDigest,
|
|
162
|
+
source_rights: rights.record(),
|
|
146
163
|
};
|
|
147
164
|
await writeLocalJSONFile(manifest, outputDir("MANIFEST.json"));
|
|
148
165
|
return manifest;
|
package/out/build.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"build.js","sourceRoot":"","sources":["../lib/build.ts"],"names":[],"mappings":"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
|
|
1
|
+
{"version":3,"file":"build.js","sourceRoot":"","sources":["../lib/build.ts"],"names":[],"mappings":"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"}
|
|
@@ -59,6 +59,12 @@ export declare const ADS_ADAPTER_ID = "ads";
|
|
|
59
59
|
* matches `EE` or asks for a jurisdiction the dataset does not publish.
|
|
60
60
|
*/
|
|
61
61
|
export declare const ADS_COUNTRIES: readonly string[];
|
|
62
|
+
/**
|
|
63
|
+
* Whether a locator name ends in an Estonian street type (`tänav`, `tee`, `maantee`, `pst`).
|
|
64
|
+
*
|
|
65
|
+
* Such a locator name is the street's own name, where any other is a farm or building name.
|
|
66
|
+
*/
|
|
67
|
+
export declare function locatorNamesStreet(locatorName: string): boolean;
|
|
62
68
|
/**
|
|
63
69
|
* The license the address-source register elected for this publisher.
|
|
64
70
|
*
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"adapter.d.ts","sourceRoot":"","sources":["../../../../lib/ee/adapters/ads/adapter.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA8CG;
|
|
1
|
+
{"version":3,"file":"adapter.d.ts","sourceRoot":"","sources":["../../../../lib/ee/adapters/ads/adapter.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA8CG;AASH,OAAO,EAAuD,KAAK,aAAa,EAAiB,MAAM,QAAQ,CAAA;AAE/G;;;;GAIG;AACH,eAAO,MAAM,cAAc,QAAQ,CAAA;AAEnC;;;;;GAKG;AACH,eAAO,MAAM,aAAa,EAAE,SAAS,MAAM,EAAW,CAAA;AAItD;;;;GAIG;AACH,wBAAgB,kBAAkB,CAAC,WAAW,EAAE,MAAM,GAAG,OAAO,CAI/D;AAED;;;;;GAKG;AACH,eAAO,MAAM,mBAAmB,YAAY,CAAA;AAW5C;;;;;;GAMG;AACH,UAAU,aAAa;IACtB,MAAM,CAAC,EAAE,MAAM,GAAG,MAAM,CAAA;IACxB,4BAA4B,CAAC,EAAE,MAAM,GAAG,MAAM,CAAA;IAC9C,0DAA0D,CAAC,EAAE,MAAM,CAAA;IACnE,sBAAsB,CAAC,EAAE,MAAM,CAAA;IAC/B,sBAAsB,CAAC,EAAE,MAAM,CAAA;IAC/B,sBAAsB,CAAC,EAAE,MAAM,CAAA;IAC/B,sBAAsB,CAAC,EAAE,MAAM,CAAA;IAC/B,sBAAsB,CAAC,EAAE,MAAM,CAAA;IAC/B,sBAAsB,CAAC,EAAE,MAAM,CAAA;CAC/B;AAsBD;;;;;;;GAOG;AACH,wBAAgB,cAAc,CAAC,UAAU,EAAE,aAAa,GAAG,MAAM,CAEhE;AAED,wBAAgB,gBAAgB,IAAI,aAAa,CAmGhD;AAED;;GAEG;AACH,eAAO,MAAM,UAAU,eAAqB,CAAA"}
|
|
@@ -48,6 +48,7 @@
|
|
|
48
48
|
import { formatAddressRow } from "@mailwoman/codex/address/format";
|
|
49
49
|
import { JSONSpliterator } from "spliterator";
|
|
50
50
|
import { UnsupportedCountryError } from "#adapters/errors";
|
|
51
|
+
import { loadLibpostalDictionary } from "#adapters/libpostal-dictionary";
|
|
51
52
|
import { stableSourceID } from "#adapters/source-id";
|
|
52
53
|
import { SourceRegister } from "#registers";
|
|
53
54
|
import { AddressRole, SurfaceOrigin } from "#types";
|
|
@@ -64,6 +65,16 @@ export const ADS_ADAPTER_ID = "ads";
|
|
|
64
65
|
* matches `EE` or asks for a jurisdiction the dataset does not publish.
|
|
65
66
|
*/
|
|
66
67
|
export const ADS_COUNTRIES = ["EE"];
|
|
68
|
+
const ESTONIAN_STREET_TYPES = await loadLibpostalDictionary("et", "street_types.txt");
|
|
69
|
+
/**
|
|
70
|
+
* Whether a locator name ends in an Estonian street type (`tänav`, `tee`, `maantee`, `pst`).
|
|
71
|
+
*
|
|
72
|
+
* Such a locator name is the street's own name, where any other is a farm or building name.
|
|
73
|
+
*/
|
|
74
|
+
export function locatorNamesStreet(locatorName) {
|
|
75
|
+
const last = locatorName.trim().split(/\s+/u).at(-1)?.toLowerCase().replace(/\.$/u, "") ?? "";
|
|
76
|
+
return ESTONIAN_STREET_TYPES.has(last);
|
|
77
|
+
}
|
|
67
78
|
/**
|
|
68
79
|
* The license the address-source register elected for this publisher.
|
|
69
80
|
*
|
|
@@ -139,6 +150,11 @@ export function createADSAdapter() {
|
|
|
139
150
|
}
|
|
140
151
|
components.street = street;
|
|
141
152
|
}
|
|
153
|
+
else if (locatorName && locatorNamesStreet(locatorName)) {
|
|
154
|
+
// ADS addresses a road's own parcel by the road's name (`Paju tänav`), with no
|
|
155
|
+
// thoroughfare element and no number, so that name is the street rather than a site.
|
|
156
|
+
components.street = locatorName;
|
|
157
|
+
}
|
|
142
158
|
else if (locatorName) {
|
|
143
159
|
// With no thoroughfare the locator name is the site or building name
|
|
144
160
|
// that designates the addressable unit.
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"adapter.js","sourceRoot":"","sources":["../../../../lib/ee/adapters/ads/adapter.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"adapter.js","sourceRoot":"","sources":["../../../../lib/ee/adapters/ads/adapter.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA8CG;AAEH,OAAO,EAAE,gBAAgB,EAAE,MAAM,iCAAiC,CAAA;AAClE,OAAO,EAAE,eAAe,EAAE,MAAM,aAAa,CAAA;AAE7C,OAAO,EAAE,uBAAuB,EAAE,MAAM,kBAAkB,CAAA;AAC1D,OAAO,EAAE,uBAAuB,EAAE,MAAM,gCAAgC,CAAA;AACxE,OAAO,EAAE,cAAc,EAAE,MAAM,qBAAqB,CAAA;AACpD,OAAO,EAAE,cAAc,EAAE,MAAM,YAAY,CAAA;AAC3C,OAAO,EAAE,WAAW,EAA8D,aAAa,EAAE,MAAM,QAAQ,CAAA;AAE/G;;;;GAIG;AACH,MAAM,CAAC,MAAM,cAAc,GAAG,KAAK,CAAA;AAEnC;;;;;GAKG;AACH,MAAM,CAAC,MAAM,aAAa,GAAsB,CAAC,IAAI,CAAC,CAAA;AAEtD,MAAM,qBAAqB,GAAG,MAAM,uBAAuB,CAAC,IAAI,EAAE,kBAAkB,CAAC,CAAA;AAErF;;;;GAIG;AACH,MAAM,UAAU,kBAAkB,CAAC,WAAmB;IACrD,MAAM,IAAI,GAAG,WAAW,CAAC,IAAI,EAAE,CAAC,KAAK,CAAC,MAAM,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,EAAE,WAAW,EAAE,CAAC,OAAO,CAAC,MAAM,EAAE,EAAE,CAAC,IAAI,EAAE,CAAA;IAE7F,OAAO,qBAAqB,CAAC,GAAG,CAAC,IAAI,CAAC,CAAA;AACvC,CAAC;AAED;;;;;GAKG;AACH,MAAM,CAAC,MAAM,mBAAmB,GAAG,SAAS,CAAA;AAE5C;;;;;;GAMG;AACH,MAAM,WAAW,GAAG,aAAa,CAAA;AA6BjC;;;;;GAKG;AACH,SAAS,SAAS,CAAC,KAAgC;IAClD,MAAM,OAAO,GAAG,CAAC,KAAK,IAAI,EAAE,CAAC,CAAC,IAAI,EAAE,CAAA;IAEpC,OAAO,OAAO,CAAC,WAAW,EAAE,KAAK,WAAW,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,OAAO,CAAA;AAC5D,CAAC;AAED;;;;;;;GAOG;AACH,MAAM,UAAU,cAAc,CAAC,UAAyB;IACvD,OAAO,SAAS,CAAC,UAAU,CAAC,sBAAsB,CAAC,IAAI,SAAS,CAAC,UAAU,CAAC,sBAAsB,CAAC,CAAA;AACpG,CAAC;AAED,MAAM,UAAU,gBAAgB;IAC/B,OAAO;QACN,EAAE,EAAE,cAAc;QAClB,cAAc,EAAE,mBAAmB;QACnC,WAAW,EAAE,WAAW,CAAC,OAAO;QAChC,QAAQ,EAAE,cAAc,CAAC,UAAU;QACnC,OAAO,EAAE,aAAa,CAAC,QAAQ;QAC/B,WAAW,EACV,4GAA4G;QAE7G,KAAK,CAAC,CAAC,IAAI,CAAC,IAAoB;YAC/B,IAAI,IAAI,CAAC,OAAO,IAAI,CAAC,aAAa,CAAC,QAAQ,CAAC,IAAI,CAAC,OAAO,CAAC,EAAE,CAAC;gBAC3D,MAAM,IAAI,uBAAuB,CAAC,cAAc,EAAE,aAAa,EAAE,IAAI,CAAC,OAAO,CAAC,CAAA;YAC/E,CAAC;YAED,MAAM,QAAQ,GAAG,eAAe,CAAC,SAAS,CAAa,IAAI,CAAC,SAAS,CAAC,CAAA;YAEtE,IAAI,OAAO,GAAG,CAAC,CAAA;YAEf,IAAI,KAAK,EAAE,MAAM,OAAO,IAAI,QAAQ,EAAE,CAAC;gBACtC,IAAI,IAAI,CAAC,MAAM,EAAE,OAAO;oBAAE,MAAK;gBAE/B,IAAI,IAAI,CAAC,KAAK,KAAK,SAAS,IAAI,OAAO,IAAI,IAAI,CAAC,KAAK;oBAAE,MAAK;gBAE5D,MAAM,UAAU,GAAG,OAAO,CAAC,UAAU,IAAI,EAAE,CAAA;gBAE3C,MAAM,MAAM,GAAG,SAAS,CAAC,UAAU,CAAC,sBAAsB,CAAC,CAAA;gBAC3D,MAAM,YAAY,GAAG,SAAS,CAAC,UAAU,CAAC,sBAAsB,CAAC,CAAA;gBACjE,MAAM,UAAU,GAAG,SAAS,CAAC,UAAU,CAAC,sBAAsB,CAAC,CAAA;gBAC/D,MAAM,MAAM,GAAG,cAAc,CAAC,UAAU,CAAC,CAAA;gBACzC,MAAM,QAAQ,GAAG,SAAS,CAAC,UAAU,CAAC,sBAAsB,CAAC,CAAA;gBAC7D,MAAM,WAAW,GAAG,CAAC,UAAU,CAAC,0DAA0D,IAAI,EAAE,CAAC,CAAC,IAAI,EAAE,CAAA;gBAExG,IAAI,CAAC,YAAY;oBAAE,SAAQ;gBAE3B,IAAI,CAAC,QAAQ,IAAI,CAAC,UAAU;oBAAE,SAAQ;gBAEtC,MAAM,UAAU,GAA+B,EAAE,CAAA;gBAEjD,IAAI,MAAM,EAAE,CAAC;oBACZ,0EAA0E;oBAC1E,+BAA+B;oBAC/B,IAAI,WAAW,EAAE,CAAC;wBACjB,UAAU,CAAC,YAAY,GAAG,WAAW,CAAA;oBACtC,CAAC;oBAED,UAAU,CAAC,MAAM,GAAG,MAAM,CAAA;gBAC3B,CAAC;qBAAM,IAAI,WAAW,IAAI,kBAAkB,CAAC,WAAW,CAAC,EAAE,CAAC;oBAC3D,+EAA+E;oBAC/E,qFAAqF;oBACrF,UAAU,CAAC,MAAM,GAAG,WAAW,CAAA;gBAChC,CAAC;qBAAM,IAAI,WAAW,EAAE,CAAC;oBACxB,qEAAqE;oBACrE,wCAAwC;oBACxC,8CAA8C;oBAC9C,UAAU,CAAC,KAAK,GAAG,WAAW,CAAA;gBAC/B,CAAC;gBAED,kFAAkF;gBAClF,4EAA4E;gBAC5E,IAAI,UAAU,EAAE,CAAC;oBAChB,UAAU,CAAC,kBAAkB,GAAG,UAAU,CAAA;gBAC3C,CAAC;gBAED,IAAI,QAAQ,EAAE,CAAC;oBACd,UAAU,CAAC,QAAQ,GAAG,QAAQ,CAAA;gBAC/B,CAAC;gBAED,UAAU,CAAC,QAAQ,GAAG,YAAY,CAAA;gBAElC,IAAI,MAAM,EAAE,CAAC;oBACZ,UAAU,CAAC,MAAM,GAAG,MAAM,CAAA;gBAC3B,CAAC;gBAED,MAAM,QAAQ,GAAG,gBAAgB,CAAC,UAAU,EAAE,IAAI,EAAE,EAAE,UAAU,EAAE,IAAI,EAAE,CAAC,CAAA;gBAEzE,IAAI,CAAC,QAAQ;oBAAE,SAAQ;gBAEvB,MAAM,EAAE,GAAG,EAAE,UAAU,EAAE,OAAO,EAAE,GAAG,QAAQ,CAAA;gBAE7C,MAAM,IAAI,GAAG,MAAM,CAAC,UAAU,CAAC,4BAA4B,IAAI,UAAU,CAAC,MAAM,IAAI,OAAO,CAAC,EAAE,IAAI,EAAE,CAAC,CAAC,IAAI,EAAE,CAAA;gBAE5G,MAAM,QAAQ,GAAG,IAAI,CAAC,CAAC,CAAC,GAAG,cAAc,IAAI,IAAI,EAAE,CAAC,CAAC,CAAC,cAAc,CAAC,cAAc,EAAE,OAAO,CAAC,CAAA;gBAE7F,MAAM;oBACL,GAAG;oBACH,UAAU,EAAE,OAAO;oBACnB,OAAO,EAAE,IAAI;oBACb,MAAM,EAAE,OAAO;oBACf,MAAM,EAAE,cAAc;oBACtB,SAAS,EAAE,QAAQ;oBACnB,cAAc,EAAE,EAAE;oBAClB,OAAO,EAAE,mBAAmB;iBAC5B,CAAA;gBAED,OAAO,EAAE,CAAA;YACV,CAAC;QACF,CAAC;KACD,CAAA;AACF,CAAC;AAED;;GAEG;AACH,MAAM,CAAC,MAAM,UAAU,GAAG,gBAAgB,EAAE,CAAA"}
|
|
@@ -0,0 +1,63 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* @copyright Sister Software
|
|
3
|
+
* @license AGPL-3.0
|
|
4
|
+
* @author Teffen Ellis, et al.
|
|
5
|
+
*
|
|
6
|
+
* `adressur-fo`: the Faroese national address register, `Adressur`, which Umhvørvisstovan (the Faroese
|
|
7
|
+
* Environment Agency) serves as the ArcGIS MapServer layer `adressur/us_adr_husanr/MapServer/0` on
|
|
8
|
+
* `gis.us.fo`.
|
|
9
|
+
*
|
|
10
|
+
* Input is the layer queried whole as GeoJSON (`query?where=1=1&outFields=*&f=geojson&outSR=4326`), one
|
|
11
|
+
* FeatureCollection, or a directory of such page files read in name order. Each feature's `properties`
|
|
12
|
+
* hold the register's columns. The register states no absent value as a sentinel: `house_letter` is the
|
|
13
|
+
* empty string when a number has no letter, and every row carries a street, since Faroese villages name
|
|
14
|
+
* their lanes and paths too (`Heimi í Húsi`, `Suðuri á Bø`).
|
|
15
|
+
*
|
|
16
|
+
* The adapter reads `street_name` as the street, `house_digit` with `house_letter` as the house number
|
|
17
|
+
* (their concatenation equals the register's own `house_no` on every row), `zip` as the postcode and
|
|
18
|
+
* `city` as the postal locality. Two postal localities carry a comma that disambiguates them,
|
|
19
|
+
* `Nes, Eysturoy` and `Syðradalur, Kalsoy`, and the adapter keeps them as the register spells them.
|
|
20
|
+
* `municipality` is left out, because the FO layout prints no region.
|
|
21
|
+
*
|
|
22
|
+
* Umhvørvisstovan grants anyone a free, worldwide right to copy, distribute, publish, modify and combine
|
|
23
|
+
* the data, for commercial and non-commercial use, on condition that the source is credited as
|
|
24
|
+
* `Data from the Faroese Environment Agency, Umhvørvisstovan: Adressur, <date>` and the terms are made
|
|
25
|
+
* available to third parties. Every row records those terms.
|
|
26
|
+
*/
|
|
27
|
+
import { type AdapterOptions, type CanonicalRow, type CorpusAdapter } from "#types";
|
|
28
|
+
/**
|
|
29
|
+
* Registry id for this adapter, stamped into every row it emits.
|
|
30
|
+
*/
|
|
31
|
+
export declare const ADRESSUR_FO_ADAPTER_ID = "adressur-fo";
|
|
32
|
+
/**
|
|
33
|
+
* Umhvørvisstovan's `Brúksrættur og treytir` (June 2019).
|
|
34
|
+
* They have no SPDX identifier.
|
|
35
|
+
*/
|
|
36
|
+
export declare const ADRESSUR_FO_LICENSE = "LicenseRef-FO-Umhvorvisstovan-Brukstreytir";
|
|
37
|
+
/**
|
|
38
|
+
* Every jurisdiction this adapter emits, checked against a caller's `--country`.
|
|
39
|
+
*/
|
|
40
|
+
export declare const ADRESSUR_FO_COUNTRIES: readonly string[];
|
|
41
|
+
/**
|
|
42
|
+
* The feature properties the adapter reads.
|
|
43
|
+
*/
|
|
44
|
+
export interface AdressurRecord {
|
|
45
|
+
address_id: number | null;
|
|
46
|
+
house_digit: number | null;
|
|
47
|
+
house_letter: string | null;
|
|
48
|
+
street_name: string | null;
|
|
49
|
+
zip: number | string | null;
|
|
50
|
+
city: string | null;
|
|
51
|
+
}
|
|
52
|
+
/**
|
|
53
|
+
* Maps one record onto the components the corpus asserts, or returns null when the row is refused.
|
|
54
|
+
*
|
|
55
|
+
* Each refusal increments its reason in `dropped`.
|
|
56
|
+
*/
|
|
57
|
+
export declare function componentsForAdressurRecord(record: AdressurRecord, dropped?: Pick<AdapterOptions, "dropped">): CanonicalRow["components"] | null;
|
|
58
|
+
export declare function createAdressurFaroeAdapter(): CorpusAdapter;
|
|
59
|
+
/**
|
|
60
|
+
* The configured adapter instance registered with the corpus builder.
|
|
61
|
+
*/
|
|
62
|
+
export declare const adressurFaroeAdapter: CorpusAdapter;
|
|
63
|
+
//# sourceMappingURL=adapter.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"adapter.d.ts","sourceRoot":"","sources":["../../../../lib/fo/adapters/adressur/adapter.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;;;GAyBG;AAcH,OAAO,EAEN,KAAK,cAAc,EACnB,KAAK,YAAY,EACjB,KAAK,aAAa,EAGlB,MAAM,QAAQ,CAAA;AAEf;;GAEG;AACH,eAAO,MAAM,sBAAsB,gBAAgB,CAAA;AAEnD;;;GAGG;AACH,eAAO,MAAM,mBAAmB,+CAA+C,CAAA;AAE/E;;GAEG;AACH,eAAO,MAAM,qBAAqB,EAAE,SAAS,MAAM,EAAW,CAAA;AAE9D;;GAEG;AACH,MAAM,WAAW,cAAc;IAC9B,UAAU,EAAE,MAAM,GAAG,IAAI,CAAA;IACzB,WAAW,EAAE,MAAM,GAAG,IAAI,CAAA;IAC1B,YAAY,EAAE,MAAM,GAAG,IAAI,CAAA;IAC3B,WAAW,EAAE,MAAM,GAAG,IAAI,CAAA;IAC1B,GAAG,EAAE,MAAM,GAAG,MAAM,GAAG,IAAI,CAAA;IAC3B,IAAI,EAAE,MAAM,GAAG,IAAI,CAAA;CACnB;AAcD;;;;GAIG;AACH,wBAAgB,2BAA2B,CAC1C,MAAM,EAAE,cAAc,EACtB,OAAO,CAAC,EAAE,IAAI,CAAC,cAAc,EAAE,SAAS,CAAC,GACvC,YAAY,CAAC,YAAY,CAAC,GAAG,IAAI,CA6CnC;AAkBD,wBAAgB,0BAA0B,IAAI,aAAa,CA6E1D;AAED;;GAEG;AACH,eAAO,MAAM,oBAAoB,eAA+B,CAAA"}
|