@mailwoman/resolver-wof-sqlite 9.2.0 → 9.3.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +16 -19
- package/lib/address/index.ts +9 -0
- package/{address-point-interpolation.ts → lib/address/point-interpolation.ts} +24 -22
- package/{address-point-schema.ts → lib/address/point-schema.ts} +18 -4
- package/{address-point.ts → lib/address/point.ts} +89 -27
- package/{ancestry-backfill.ts → lib/ancestry/backfill.ts} +14 -19
- package/{ancestry.ts → lib/ancestry/index.ts} +5 -3
- package/{build-candidate.ts → lib/build-candidate.ts} +84 -77
- package/{build-slim.ts → lib/build-slim.ts} +150 -165
- package/{candidate → lib/candidate}/alias-bags.ts +8 -6
- package/{candidate → lib/candidate}/ancestors-sidecar.ts +13 -15
- package/{candidate → lib/candidate}/country-display-names.ts +2 -2
- package/{candidate/shard-fold.ts → lib/candidate/extract-fold.ts} +26 -25
- package/{candidate → lib/candidate}/name-roles.ts +17 -16
- package/{candidate → lib/candidate}/own-name.ts +1 -1
- package/{candidate → lib/candidate}/place-attrs.ts +3 -3
- package/{candidate-ancestors-schema.ts → lib/candidate-ancestors-schema.ts} +4 -4
- package/{candidate-fts.ts → lib/candidate-fts.ts} +3 -3
- package/{candidate-importance.ts → lib/candidate-importance.ts} +53 -57
- package/{candidate-lookup.ts → lib/candidate-lookup.ts} +76 -73
- package/{candidate-schema.ts → lib/candidate-schema.ts} +5 -5
- package/{candidate-scoring.ts → lib/candidate-scoring.ts} +15 -22
- package/{capital-schema.ts → lib/capital-schema.ts} +5 -6
- package/{capitals.ts → lib/capitals.ts} +2 -2
- package/{coincident-roles.ts → lib/coincident-roles.ts} +8 -11
- package/{convention.ts → lib/convention/index.ts} +3 -3
- package/{convention-schema.ts → lib/convention/schema.ts} +2 -2
- package/{coverage-manifest-schema.ts → lib/coverage-manifest-schema.ts} +9 -10
- package/{currency-backfill.ts → lib/currency-backfill.ts} +126 -41
- package/lib/env.ts +50 -0
- package/{exact-match.ts → lib/exact-match.ts} +23 -14
- package/{sharding.ts → lib/extracts.ts} +61 -58
- package/{fst-autocomplete.ts → lib/fst/autocomplete.ts} +4 -4
- package/{fst-builder.ts → lib/fst/builder.ts} +17 -16
- package/{fst-deserialize-web.ts → lib/fst/deserialize-web.ts} +27 -87
- package/lib/fst/format.ts +106 -0
- package/{fst-freshness.ts → lib/fst/freshness.ts} +41 -74
- package/lib/fst/index.ts +14 -0
- package/{fst-matcher.ts → lib/fst/matcher.ts} +1 -1
- package/{fst-serialize.ts → lib/fst/serialize.ts} +37 -115
- package/{fst-types.ts → lib/fst/types.ts} +4 -2
- package/{fts.ts → lib/fts/index.ts} +24 -19
- package/{fts-query.ts → lib/fts/query.ts} +1 -1
- package/{geonames-aliases.ts → lib/geonames/aliases.ts} +13 -13
- package/lib/geonames/index.ts +8 -0
- package/{geonames-postal.ts → lib/geonames/postal.ts} +14 -13
- package/{index.ts → lib/index.ts} +37 -37
- package/{interpolation.ts → lib/interpolation.ts} +27 -25
- package/{lookup.ts → lib/lookup.ts} +129 -141
- package/lib/nsul/index.ts +8 -0
- package/lib/nsul/lookup.ts +144 -0
- package/lib/nsul/schema.ts +130 -0
- package/{place-importance-schema.ts → lib/place-importance-schema.ts} +7 -8
- package/lib/poi/index.ts +8 -0
- package/{poi-lookup.ts → lib/poi/lookup.ts} +22 -28
- package/{poi-schema.ts → lib/poi/schema.ts} +3 -4
- package/{postal-city-alias-lookup.ts → lib/postal/city-alias-lookup.ts} +14 -20
- package/{postal-city-candidate-schema.ts → lib/postal/city-candidate-schema.ts} +2 -2
- package/lib/postal/index.ts +9 -0
- package/{postcode-point-lookup.ts → lib/postcode-point-lookup.ts} +17 -15
- package/{primary-preference.ts → lib/primary-preference.ts} +29 -10
- package/{proximity-rerank.ts → lib/proximity-rerank.ts} +2 -2
- package/{ranking-weights.ts → lib/ranking-weights.ts} +30 -4
- package/{region-keys.ts → lib/region-keys.ts} +9 -9
- package/{reverse.ts → lib/reverse.ts} +34 -46
- package/{schema.ts → lib/schema.ts} +10 -0
- package/{search-fetch.ts → lib/search-fetch.ts} +29 -28
- package/{sqlite-convention-source.ts → lib/sqlite-convention-source.ts} +9 -10
- package/{sqlite-utils.ts → lib/sqlite-utils.ts} +14 -18
- package/{street-centroid-schema.ts → lib/street/centroid-schema.ts} +5 -5
- package/{street-centroid.ts → lib/street/centroid.ts} +14 -21
- package/lib/street/index.ts +13 -0
- package/{street-morphology-fst-builder.ts → lib/street/morphology-fst-builder.ts} +24 -14
- package/{street-morphology-fst-loader.ts → lib/street/morphology-fst-loader.ts} +14 -12
- package/{street-name-lookup.ts → lib/street/name-lookup.ts} +14 -30
- package/{street-normalize.ts → lib/street/normalize.ts} +44 -19
- package/{street-segment-schema.ts → lib/street/segment-schema.ts} +7 -7
- package/{types.ts → lib/types.ts} +18 -12
- package/{unified-schema.ts → lib/unified-schema.ts} +20 -24
- package/lib/uprn/existence.ts +84 -0
- package/lib/uprn/index.ts +9 -0
- package/{uprn-lookup.ts → lib/uprn/lookup.ts} +14 -18
- package/{uprn-schema.ts → lib/uprn/schema.ts} +3 -3
- package/lib/weights-overlay-linker.ts +878 -0
- package/out/address/index.d.ts +9 -0
- package/out/address/index.d.ts.map +1 -0
- package/out/address/index.js +9 -0
- package/out/address/index.js.map +1 -0
- package/out/{address-point-interpolation.d.ts → address/point-interpolation.d.ts} +11 -10
- package/out/address/point-interpolation.d.ts.map +1 -0
- package/out/{address-point-interpolation.js → address/point-interpolation.js} +18 -18
- package/out/address/point-interpolation.js.map +1 -0
- package/out/{address-point-schema.d.ts → address/point-schema.d.ts} +16 -6
- package/out/address/point-schema.d.ts.map +1 -0
- package/out/{address-point-schema.js → address/point-schema.js} +7 -3
- package/out/address/point-schema.js.map +1 -0
- package/out/{address-point.d.ts → address/point.d.ts} +16 -8
- package/out/address/point.d.ts.map +1 -0
- package/out/{address-point.js → address/point.js} +71 -20
- package/out/address/point.js.map +1 -0
- package/out/{ancestry-backfill.d.ts → ancestry/backfill.d.ts} +7 -5
- package/out/ancestry/backfill.d.ts.map +1 -0
- package/out/{ancestry-backfill.js → ancestry/backfill.js} +12 -16
- package/out/ancestry/backfill.js.map +1 -0
- package/out/{ancestry.d.ts → ancestry/index.d.ts} +4 -3
- package/out/ancestry/index.d.ts.map +1 -0
- package/out/{ancestry.js → ancestry/index.js} +3 -2
- package/out/ancestry/index.js.map +1 -0
- package/out/build-candidate.d.ts +30 -24
- package/out/build-candidate.d.ts.map +1 -1
- package/out/build-candidate.js +50 -52
- package/out/build-candidate.js.map +1 -1
- package/out/build-slim.d.ts +4 -4
- package/out/build-slim.d.ts.map +1 -1
- package/out/build-slim.js +124 -139
- package/out/build-slim.js.map +1 -1
- package/out/candidate/alias-bags.d.ts +5 -3
- package/out/candidate/alias-bags.d.ts.map +1 -1
- package/out/candidate/alias-bags.js +2 -2
- package/out/candidate/alias-bags.js.map +1 -1
- package/out/candidate/ancestors-sidecar.d.ts +9 -10
- package/out/candidate/ancestors-sidecar.d.ts.map +1 -1
- package/out/candidate/ancestors-sidecar.js +7 -7
- package/out/candidate/ancestors-sidecar.js.map +1 -1
- package/out/candidate/country-display-names.d.ts +1 -1
- package/out/candidate/country-display-names.d.ts.map +1 -1
- package/out/candidate/country-display-names.js +1 -1
- package/out/candidate/country-display-names.js.map +1 -1
- package/out/candidate/extract-fold.d.ts +32 -0
- package/out/candidate/extract-fold.d.ts.map +1 -0
- package/out/candidate/{shard-fold.js → extract-fold.js} +20 -20
- package/out/candidate/extract-fold.js.map +1 -0
- package/out/candidate/name-roles.d.ts +13 -11
- package/out/candidate/name-roles.d.ts.map +1 -1
- package/out/candidate/name-roles.js +11 -10
- package/out/candidate/name-roles.js.map +1 -1
- package/out/candidate/own-name.d.ts +1 -1
- package/out/candidate/own-name.d.ts.map +1 -1
- package/out/candidate/own-name.js +1 -1
- package/out/candidate/own-name.js.map +1 -1
- package/out/candidate/place-attrs.d.ts +3 -3
- package/out/candidate/place-attrs.d.ts.map +1 -1
- package/out/candidate/place-attrs.js +1 -1
- package/out/candidate/place-attrs.js.map +1 -1
- package/out/candidate-ancestors-schema.d.ts +4 -4
- package/out/candidate-ancestors-schema.d.ts.map +1 -1
- package/out/candidate-ancestors-schema.js +2 -2
- package/out/candidate-ancestors-schema.js.map +1 -1
- package/out/candidate-fts.d.ts +3 -3
- package/out/candidate-fts.d.ts.map +1 -1
- package/out/candidate-fts.js +1 -1
- package/out/candidate-fts.js.map +1 -1
- package/out/candidate-importance.d.ts +16 -16
- package/out/candidate-importance.d.ts.map +1 -1
- package/out/candidate-importance.js +46 -51
- package/out/candidate-importance.js.map +1 -1
- package/out/candidate-lookup.d.ts +11 -9
- package/out/candidate-lookup.d.ts.map +1 -1
- package/out/candidate-lookup.js +61 -58
- package/out/candidate-lookup.js.map +1 -1
- package/out/candidate-schema.d.ts +5 -5
- package/out/candidate-schema.d.ts.map +1 -1
- package/out/candidate-schema.js.map +1 -1
- package/out/candidate-scoring.d.ts +7 -7
- package/out/candidate-scoring.d.ts.map +1 -1
- package/out/candidate-scoring.js +10 -14
- package/out/candidate-scoring.js.map +1 -1
- package/out/capital-schema.d.ts +3 -3
- package/out/capital-schema.d.ts.map +1 -1
- package/out/capital-schema.js +2 -2
- package/out/capital-schema.js.map +1 -1
- package/out/capitals.d.ts +1 -1
- package/out/capitals.d.ts.map +1 -1
- package/out/capitals.js +2 -2
- package/out/capitals.js.map +1 -1
- package/out/coincident-roles.d.ts +6 -5
- package/out/coincident-roles.d.ts.map +1 -1
- package/out/coincident-roles.js +2 -4
- package/out/coincident-roles.js.map +1 -1
- package/out/{convention.d.ts → convention/index.d.ts} +4 -4
- package/out/convention/index.d.ts.map +1 -0
- package/out/{convention.js → convention/index.js} +2 -2
- package/out/convention/index.js.map +1 -0
- package/out/{convention-schema.d.ts → convention/schema.d.ts} +2 -2
- package/out/convention/schema.d.ts.map +1 -0
- package/out/{convention-schema.js → convention/schema.js} +3 -3
- package/out/convention/schema.js.map +1 -0
- package/out/coverage-manifest-schema.d.ts +8 -8
- package/out/coverage-manifest-schema.d.ts.map +1 -1
- package/out/coverage-manifest-schema.js +4 -4
- package/out/coverage-manifest-schema.js.map +1 -1
- package/out/currency-backfill.d.ts +51 -7
- package/out/currency-backfill.d.ts.map +1 -1
- package/out/currency-backfill.js +65 -49
- package/out/currency-backfill.js.map +1 -1
- package/out/env.d.ts +43 -0
- package/out/env.d.ts.map +1 -0
- package/out/env.js +48 -0
- package/out/env.js.map +1 -0
- package/out/exact-match.d.ts +5 -5
- package/out/exact-match.d.ts.map +1 -1
- package/out/exact-match.js +10 -11
- package/out/exact-match.js.map +1 -1
- package/out/extracts.d.ts +114 -0
- package/out/extracts.d.ts.map +1 -0
- package/out/{sharding.js → extracts.js} +38 -38
- package/out/extracts.js.map +1 -0
- package/out/{fst-autocomplete.d.ts → fst/autocomplete.d.ts} +2 -2
- package/out/fst/autocomplete.d.ts.map +1 -0
- package/out/{fst-autocomplete.js → fst/autocomplete.js} +3 -3
- package/out/fst/autocomplete.js.map +1 -0
- package/out/{fst-builder.d.ts → fst/builder.d.ts} +5 -5
- package/out/fst/builder.d.ts.map +1 -0
- package/out/{fst-builder.js → fst/builder.js} +14 -13
- package/out/fst/builder.js.map +1 -0
- package/out/{fst-deserialize-web.d.ts → fst/deserialize-web.d.ts} +3 -3
- package/out/fst/deserialize-web.d.ts.map +1 -0
- package/out/{fst-deserialize-web.js → fst/deserialize-web.js} +10 -74
- package/out/fst/deserialize-web.js.map +1 -0
- package/out/fst/format.d.ts +80 -0
- package/out/fst/format.d.ts.map +1 -0
- package/out/fst/format.js +91 -0
- package/out/fst/format.js.map +1 -0
- package/out/{fst-freshness.d.ts → fst/freshness.d.ts} +10 -13
- package/out/fst/freshness.d.ts.map +1 -0
- package/out/{fst-freshness.js → fst/freshness.js} +41 -73
- package/out/fst/freshness.js.map +1 -0
- package/out/fst/index.d.ts +14 -0
- package/out/fst/index.d.ts.map +1 -0
- package/out/fst/index.js +14 -0
- package/out/fst/index.js.map +1 -0
- package/out/{fst-matcher.d.ts → fst/matcher.d.ts} +2 -2
- package/out/fst/matcher.d.ts.map +1 -0
- package/out/{fst-matcher.js → fst/matcher.js} +1 -1
- package/out/fst/matcher.js.map +1 -0
- package/out/{fst-serialize.d.ts → fst/serialize.d.ts} +5 -10
- package/out/fst/serialize.d.ts.map +1 -0
- package/out/{fst-serialize.js → fst/serialize.js} +18 -98
- package/out/fst/serialize.js.map +1 -0
- package/out/{fst-types.d.ts → fst/types.d.ts} +4 -3
- package/out/fst/types.d.ts.map +1 -0
- package/out/{fst-types.js → fst/types.js} +1 -1
- package/out/fst/types.js.map +1 -0
- package/out/{fts.d.ts → fts/index.d.ts} +16 -9
- package/out/fts/index.d.ts.map +1 -0
- package/out/{fts.js → fts/index.js} +16 -11
- package/out/fts/index.js.map +1 -0
- package/out/{fts-query.d.ts → fts/query.d.ts} +2 -2
- package/out/fts/query.d.ts.map +1 -0
- package/out/{fts-query.js → fts/query.js} +1 -1
- package/out/fts/query.js.map +1 -0
- package/out/{geonames-aliases.d.ts → geonames/aliases.d.ts} +8 -6
- package/out/geonames/aliases.d.ts.map +1 -0
- package/out/{geonames-aliases.js → geonames/aliases.js} +7 -7
- package/out/geonames/aliases.js.map +1 -0
- package/out/geonames/index.d.ts +8 -0
- package/out/geonames/index.d.ts.map +1 -0
- package/out/geonames/index.js +8 -0
- package/out/geonames/index.js.map +1 -0
- package/out/{geonames-postal.d.ts → geonames/postal.d.ts} +10 -8
- package/out/geonames/postal.d.ts.map +1 -0
- package/out/{geonames-postal.js → geonames/postal.js} +9 -9
- package/out/geonames/postal.js.map +1 -0
- package/out/index.d.ts +32 -32
- package/out/index.d.ts.map +1 -1
- package/out/index.js +24 -24
- package/out/index.js.map +1 -1
- package/out/interpolation.d.ts +10 -9
- package/out/interpolation.d.ts.map +1 -1
- package/out/interpolation.js +20 -20
- package/out/interpolation.js.map +1 -1
- package/out/lookup.d.ts +21 -20
- package/out/lookup.d.ts.map +1 -1
- package/out/lookup.js +102 -112
- package/out/lookup.js.map +1 -1
- package/out/name-score.d.ts.map +1 -1
- package/out/name-score.js.map +1 -1
- package/out/nsul/index.d.ts +8 -0
- package/out/nsul/index.d.ts.map +1 -0
- package/out/nsul/index.js +8 -0
- package/out/nsul/index.js.map +1 -0
- package/out/nsul/lookup.d.ts +83 -0
- package/out/nsul/lookup.d.ts.map +1 -0
- package/out/nsul/lookup.js +80 -0
- package/out/nsul/lookup.js.map +1 -0
- package/out/nsul/schema.d.ts +100 -0
- package/out/nsul/schema.d.ts.map +1 -0
- package/out/nsul/schema.js +78 -0
- package/out/nsul/schema.js.map +1 -0
- package/out/place-importance-schema.d.ts +5 -5
- package/out/place-importance-schema.d.ts.map +1 -1
- package/out/place-importance-schema.js +3 -3
- package/out/place-importance-schema.js.map +1 -1
- package/out/poi/index.d.ts +8 -0
- package/out/poi/index.d.ts.map +1 -0
- package/out/poi/index.js +8 -0
- package/out/poi/index.js.map +1 -0
- package/out/{poi-lookup.d.ts → poi/lookup.d.ts} +8 -10
- package/out/poi/lookup.d.ts.map +1 -0
- package/out/{poi-lookup.js → poi/lookup.js} +14 -18
- package/out/poi/lookup.js.map +1 -0
- package/out/{poi-schema.d.ts → poi/schema.d.ts} +4 -4
- package/out/poi/schema.d.ts.map +1 -0
- package/out/{poi-schema.js → poi/schema.js} +1 -1
- package/out/poi/schema.js.map +1 -0
- package/out/polygon-schema.d.ts.map +1 -1
- package/out/polygon-schema.js.map +1 -1
- package/out/{postal-city-alias-lookup.d.ts → postal/city-alias-lookup.d.ts} +6 -5
- package/out/postal/city-alias-lookup.d.ts.map +1 -0
- package/out/{postal-city-alias-lookup.js → postal/city-alias-lookup.js} +11 -15
- package/out/postal/city-alias-lookup.js.map +1 -0
- package/out/{postal-city-alias-schema.d.ts → postal/city-alias-schema.d.ts} +1 -1
- package/out/{postal-city-alias-schema.d.ts.map → postal/city-alias-schema.d.ts.map} +1 -1
- package/out/{postal-city-alias-schema.js → postal/city-alias-schema.js} +1 -1
- package/out/{postal-city-alias-schema.js.map → postal/city-alias-schema.js.map} +1 -1
- package/out/{postal-city-candidate-schema.d.ts → postal/city-candidate-schema.d.ts} +3 -3
- package/out/{postal-city-candidate-schema.d.ts.map → postal/city-candidate-schema.d.ts.map} +1 -1
- package/out/{postal-city-candidate-schema.js → postal/city-candidate-schema.js} +2 -2
- package/out/{postal-city-candidate-schema.js.map → postal/city-candidate-schema.js.map} +1 -1
- package/out/postal/index.d.ts +9 -0
- package/out/postal/index.d.ts.map +1 -0
- package/out/postal/index.js +9 -0
- package/out/postal/index.js.map +1 -0
- package/out/postcode-point-lookup.d.ts +10 -10
- package/out/postcode-point-lookup.d.ts.map +1 -1
- package/out/postcode-point-lookup.js +13 -13
- package/out/postcode-point-lookup.js.map +1 -1
- package/out/primary-preference.d.ts +13 -5
- package/out/primary-preference.d.ts.map +1 -1
- package/out/primary-preference.js +16 -8
- package/out/primary-preference.js.map +1 -1
- package/out/proximity-rerank.d.ts +2 -2
- package/out/proximity-rerank.d.ts.map +1 -1
- package/out/proximity-rerank.js +2 -2
- package/out/proximity-rerank.js.map +1 -1
- package/out/ranking-weights.d.ts +15 -3
- package/out/ranking-weights.d.ts.map +1 -1
- package/out/ranking-weights.js +21 -3
- package/out/ranking-weights.js.map +1 -1
- package/out/region-keys.d.ts +8 -8
- package/out/region-keys.d.ts.map +1 -1
- package/out/region-keys.js +9 -9
- package/out/region-keys.js.map +1 -1
- package/out/reverse.d.ts +6 -6
- package/out/reverse.d.ts.map +1 -1
- package/out/reverse.js +20 -29
- package/out/reverse.js.map +1 -1
- package/out/schema.d.ts +9 -0
- package/out/schema.d.ts.map +1 -1
- package/out/schema.js.map +1 -1
- package/out/search-fetch.d.ts +12 -10
- package/out/search-fetch.d.ts.map +1 -1
- package/out/search-fetch.js +21 -20
- package/out/search-fetch.js.map +1 -1
- package/out/sqlite-convention-source.d.ts +7 -7
- package/out/sqlite-convention-source.d.ts.map +1 -1
- package/out/sqlite-convention-source.js +5 -5
- package/out/sqlite-convention-source.js.map +1 -1
- package/out/sqlite-utils.d.ts +8 -8
- package/out/sqlite-utils.d.ts.map +1 -1
- package/out/sqlite-utils.js +7 -8
- package/out/sqlite-utils.js.map +1 -1
- package/out/{street-centroid-schema.d.ts → street/centroid-schema.d.ts} +6 -6
- package/out/{street-centroid-schema.d.ts.map → street/centroid-schema.d.ts.map} +1 -1
- package/out/{street-centroid-schema.js → street/centroid-schema.js} +5 -5
- package/out/{street-centroid-schema.js.map → street/centroid-schema.js.map} +1 -1
- package/out/{street-centroid.d.ts → street/centroid.d.ts} +6 -6
- package/out/street/centroid.d.ts.map +1 -0
- package/out/{street-centroid.js → street/centroid.js} +13 -19
- package/out/street/centroid.js.map +1 -0
- package/out/street/index.d.ts +13 -0
- package/out/street/index.d.ts.map +1 -0
- package/out/street/index.js +13 -0
- package/out/street/index.js.map +1 -0
- package/out/{street-morphology-fst-builder.d.ts → street/morphology-fst-builder.d.ts} +4 -4
- package/out/street/morphology-fst-builder.d.ts.map +1 -0
- package/out/{street-morphology-fst-builder.js → street/morphology-fst-builder.js} +18 -13
- package/out/street/morphology-fst-builder.js.map +1 -0
- package/out/{street-morphology-fst-loader.d.ts → street/morphology-fst-loader.d.ts} +5 -5
- package/out/street/morphology-fst-loader.d.ts.map +1 -0
- package/out/{street-morphology-fst-loader.js → street/morphology-fst-loader.js} +11 -10
- package/out/street/morphology-fst-loader.js.map +1 -0
- package/out/{street-name-lookup.d.ts → street/name-lookup.d.ts} +4 -7
- package/out/street/name-lookup.d.ts.map +1 -0
- package/out/{street-name-lookup.js → street/name-lookup.js} +9 -23
- package/out/street/name-lookup.js.map +1 -0
- package/out/{street-normalize.d.ts → street/normalize.d.ts} +25 -14
- package/out/street/normalize.d.ts.map +1 -0
- package/out/{street-normalize.js → street/normalize.js} +36 -17
- package/out/street/normalize.js.map +1 -0
- package/out/{street-segment-schema.d.ts → street/segment-schema.d.ts} +8 -8
- package/out/{street-segment-schema.d.ts.map → street/segment-schema.d.ts.map} +1 -1
- package/out/{street-segment-schema.js → street/segment-schema.js} +4 -4
- package/out/{street-segment-schema.js.map → street/segment-schema.js.map} +1 -1
- package/out/types.d.ts +18 -12
- package/out/types.d.ts.map +1 -1
- package/out/types.js.map +1 -1
- package/out/unified-schema.d.ts +5 -4
- package/out/unified-schema.d.ts.map +1 -1
- package/out/unified-schema.js +15 -18
- package/out/unified-schema.js.map +1 -1
- package/out/uprn/existence.d.ts +53 -0
- package/out/uprn/existence.d.ts.map +1 -0
- package/out/uprn/existence.js +61 -0
- package/out/uprn/existence.js.map +1 -0
- package/out/uprn/index.d.ts +9 -0
- package/out/uprn/index.d.ts.map +1 -0
- package/out/uprn/index.js +9 -0
- package/out/uprn/index.js.map +1 -0
- package/out/{uprn-lookup.d.ts → uprn/lookup.d.ts} +4 -4
- package/out/uprn/lookup.d.ts.map +1 -0
- package/out/{uprn-lookup.js → uprn/lookup.js} +11 -14
- package/out/uprn/lookup.js.map +1 -0
- package/out/{uprn-schema.d.ts → uprn/schema.d.ts} +4 -4
- package/out/uprn/schema.d.ts.map +1 -0
- package/out/{uprn-schema.js → uprn/schema.js} +4 -4
- package/out/uprn/schema.js.map +1 -0
- package/out/weights-overlay-linker.d.ts +184 -26
- package/out/weights-overlay-linker.d.ts.map +1 -1
- package/out/weights-overlay-linker.js +338 -86
- package/out/weights-overlay-linker.js.map +1 -1
- package/package.json +465 -269
- package/out/address-point-interpolation.d.ts.map +0 -1
- package/out/address-point-interpolation.js.map +0 -1
- package/out/address-point-schema.d.ts.map +0 -1
- package/out/address-point-schema.js.map +0 -1
- package/out/address-point.d.ts.map +0 -1
- package/out/address-point.js.map +0 -1
- package/out/ancestry-backfill.d.ts.map +0 -1
- package/out/ancestry-backfill.js.map +0 -1
- package/out/ancestry.d.ts.map +0 -1
- package/out/ancestry.js.map +0 -1
- package/out/candidate/shard-fold.d.ts +0 -31
- package/out/candidate/shard-fold.d.ts.map +0 -1
- package/out/candidate/shard-fold.js.map +0 -1
- package/out/convention-schema.d.ts.map +0 -1
- package/out/convention-schema.js.map +0 -1
- package/out/convention.d.ts.map +0 -1
- package/out/convention.js.map +0 -1
- package/out/fst-autocomplete.d.ts.map +0 -1
- package/out/fst-autocomplete.js.map +0 -1
- package/out/fst-builder.d.ts.map +0 -1
- package/out/fst-builder.js.map +0 -1
- package/out/fst-deserialize-web.d.ts.map +0 -1
- package/out/fst-deserialize-web.js.map +0 -1
- package/out/fst-freshness.d.ts.map +0 -1
- package/out/fst-freshness.js.map +0 -1
- package/out/fst-matcher.d.ts.map +0 -1
- package/out/fst-matcher.js.map +0 -1
- package/out/fst-serialize.d.ts.map +0 -1
- package/out/fst-serialize.js.map +0 -1
- package/out/fst-types.d.ts.map +0 -1
- package/out/fst-types.js.map +0 -1
- package/out/fts-query.d.ts.map +0 -1
- package/out/fts-query.js.map +0 -1
- package/out/fts.d.ts.map +0 -1
- package/out/fts.js.map +0 -1
- package/out/geonames-aliases.d.ts.map +0 -1
- package/out/geonames-aliases.js.map +0 -1
- package/out/geonames-postal.d.ts.map +0 -1
- package/out/geonames-postal.js.map +0 -1
- package/out/poi-lookup.d.ts.map +0 -1
- package/out/poi-lookup.js.map +0 -1
- package/out/poi-schema.d.ts.map +0 -1
- package/out/poi-schema.js.map +0 -1
- package/out/postal-city-alias-lookup.d.ts.map +0 -1
- package/out/postal-city-alias-lookup.js.map +0 -1
- package/out/sharding.d.ts +0 -114
- package/out/sharding.d.ts.map +0 -1
- package/out/sharding.js.map +0 -1
- package/out/street-centroid.d.ts.map +0 -1
- package/out/street-centroid.js.map +0 -1
- package/out/street-morphology-fst-builder.d.ts.map +0 -1
- package/out/street-morphology-fst-builder.js.map +0 -1
- package/out/street-morphology-fst-loader.d.ts.map +0 -1
- package/out/street-morphology-fst-loader.js.map +0 -1
- package/out/street-name-lookup.d.ts.map +0 -1
- package/out/street-name-lookup.js.map +0 -1
- package/out/street-normalize.d.ts.map +0 -1
- package/out/street-normalize.js.map +0 -1
- package/out/uprn-lookup.d.ts.map +0 -1
- package/out/uprn-lookup.js.map +0 -1
- package/out/uprn-schema.d.ts.map +0 -1
- package/out/uprn-schema.js.map +0 -1
- package/weights-overlay-linker.ts +0 -377
- /package/{name-score.ts → lib/name-score.ts} +0 -0
- /package/{polygon-schema.ts → lib/polygon-schema.ts} +0 -0
- /package/{postal-city-alias-schema.ts → lib/postal/city-alias-schema.ts} +0 -0
package/out/lookup.js
CHANGED
|
@@ -9,33 +9,31 @@
|
|
|
9
9
|
*
|
|
10
10
|
* See `docs/plan/phases/PHASE_4_2_wof_sqlite.md` for the design rationale.
|
|
11
11
|
*/
|
|
12
|
-
import { DatabaseSync } from "node:sqlite";
|
|
13
|
-
import { SqliteDialect } from "@mailwoman/core/kysley/dialect";
|
|
14
12
|
import { expandPlacetypeFilter } from "@mailwoman/resolver";
|
|
15
13
|
import { haversineKm } from "@mailwoman/spatial";
|
|
16
|
-
import {
|
|
17
|
-
import { ancestorLineage } from "
|
|
18
|
-
import { candidateFromSearchRow, rankCandidates } from "
|
|
19
|
-
import { loadCoincidentLocalities } from "
|
|
20
|
-
import { ADDRESS_CONVENTION_TABLE, resolveConvention, SeedConventionSource, } from "
|
|
21
|
-
import {
|
|
22
|
-
import { buildPlaceSearchFTS, PLACE_BBOX_TABLE, PLACE_POPULATION_TABLE, PLACE_SEARCH_TABLE, placeBboxExists, placePopulationExists, placeSearchFTSExists, } from "
|
|
23
|
-
import {
|
|
24
|
-
import {
|
|
25
|
-
import {
|
|
26
|
-
import {
|
|
27
|
-
import {
|
|
28
|
-
import { SqliteConventionSource } from "
|
|
29
|
-
import { allRows } from "
|
|
14
|
+
import { DatabaseClient } from "@mailwoman/sqlite/client";
|
|
15
|
+
import { ancestorLineage } from "#ancestry/index";
|
|
16
|
+
import { candidateFromSearchRow, rankCandidates } from "#candidate-scoring";
|
|
17
|
+
import { loadCoincidentLocalities } from "#coincident-roles";
|
|
18
|
+
import { ADDRESS_CONVENTION_TABLE, resolveConvention, SeedConventionSource, } from "#convention/index";
|
|
19
|
+
import { pickExtractForPlacetype, pickExtractsForPlacetype, resolveExtracts, } from "#extracts";
|
|
20
|
+
import { buildPlaceSearchFTS, PLACE_BBOX_TABLE, PLACE_POPULATION_TABLE, PLACE_SEARCH_TABLE, placeBboxExists, placePopulationExists, placeSearchFTSExists, } from "#fts/index";
|
|
21
|
+
import { normalizePlacetypes, sanitizeFTSQuery } from "#fts/query";
|
|
22
|
+
import { cfNormalize, softNameScore } from "#name-score";
|
|
23
|
+
import { encyclopedicClauses } from "#place-importance-schema";
|
|
24
|
+
import { DEFAULT_WEIGHTS, populationScaleTerm } from "#ranking-weights";
|
|
25
|
+
import { fetchSearchRows } from "#search-fetch";
|
|
26
|
+
import { SqliteConventionSource } from "#sqlite-convention-source";
|
|
27
|
+
import { allRows } from "#sqlite-utils";
|
|
30
28
|
/**
|
|
31
29
|
* The coordinate-first candidate table (scripts/build-postcode-locality.ts): postcode → containing
|
|
32
30
|
*
|
|
33
31
|
* - Nearby localities with WOF alt-name aliases.
|
|
34
32
|
*/
|
|
35
33
|
/**
|
|
36
|
-
* The placetypes `
|
|
37
|
-
* purpose-built
|
|
38
|
-
* to enumerate the gazetteer.
|
|
34
|
+
* The placetypes `pickExtractsForPlacetype`'s substring rule can route by name. Not every WOF placetype — only the ones
|
|
35
|
+
* a purpose-built extract is ever named for — so the diagnostic below can say "this name routes nowhere" without
|
|
36
|
+
* claiming to enumerate the gazetteer.
|
|
39
37
|
*/
|
|
40
38
|
const KNOWN_ROUTED_PLACETYPES = [
|
|
41
39
|
"postalcode",
|
|
@@ -61,43 +59,46 @@ const CF_PC_DECAY_KM = 8;
|
|
|
61
59
|
const CF_MISMATCH_KM = 50;
|
|
62
60
|
export class WOFSQLitePlaceLookup {
|
|
63
61
|
#db;
|
|
64
|
-
|
|
65
|
-
|
|
62
|
+
/**
|
|
63
|
+
* Resources this instance opened. A connection handed in by a caller is NOT in here, so disposal cannot reach it —
|
|
64
|
+
* ownership is membership rather than a flag a later branch has to check.
|
|
65
|
+
*/
|
|
66
|
+
#resources = new DisposableStack();
|
|
66
67
|
#weights;
|
|
67
68
|
/**
|
|
68
69
|
* Cached at construction so we don't `sqlite_master` query on every findPlace call. Bbox + near- with-radius queries
|
|
69
70
|
* fall back to no-filter when this is false, preserving compatibility with DBs that were FTS-built before the R*Tree
|
|
70
71
|
* shipped.
|
|
71
72
|
*
|
|
72
|
-
* Per-
|
|
73
|
+
* Per-extract: a extract is only considered to have the bbox index if its own R*Tree table exists.
|
|
73
74
|
*/
|
|
74
75
|
#hasBboxIndex;
|
|
75
76
|
/**
|
|
76
|
-
* Per-
|
|
77
|
+
* Per-extract probe for the `place_population` aux table. When false, the LEFT JOIN is omitted from the SELECT and
|
|
77
78
|
* population boost is 0 for every row — preserves compatibility with DBs built before this feature shipped.
|
|
78
79
|
*/
|
|
79
80
|
#hasPopulationIndex;
|
|
80
81
|
/**
|
|
81
|
-
* Per-
|
|
82
|
-
* built once at construction. Degrades to `NULL AS encyclopedic` with no join on a pre-split
|
|
83
|
-
*
|
|
82
|
+
* Per-extract SELECT term + LEFT JOIN for the two-score split's `encyclopedic` carry (ROAD_TO_V9 §2 R1), probed and
|
|
83
|
+
* built once at construction. Degrades to `NULL AS encyclopedic` with no join on a pre-split extract — every shipped
|
|
84
|
+
* extract today. See {@link encyclopedicClauses} for why the probe is a column and not a table.
|
|
84
85
|
*/
|
|
85
86
|
#encyclopedicClauses;
|
|
86
87
|
/**
|
|
87
|
-
* Per-
|
|
88
|
+
* Per-extract probe for the `postcode_locality` table (the coordinate-first candidate table, built by
|
|
88
89
|
* scripts/build-postcode-locality.ts). Cached at construction; null'd out when absent so the coord-first path
|
|
89
90
|
* silently no-ops on a deployment that didn't ship the table.
|
|
90
91
|
*/
|
|
91
|
-
#
|
|
92
|
+
#postcodeLocalityExtract;
|
|
92
93
|
/**
|
|
93
|
-
* Resolved
|
|
94
|
-
* override) schema names.
|
|
94
|
+
* Resolved extract list. Always at least one entry; first is `main`. Multi-extract adds extras with their own derived
|
|
95
|
+
* (or override) schema names.
|
|
95
96
|
*/
|
|
96
|
-
#
|
|
97
|
+
#extracts;
|
|
97
98
|
/**
|
|
98
|
-
* #920: per-schema probed country sets for country-aware
|
|
99
|
+
* #920: per-schema probed country sets for country-aware extract routing (non-main extracts only).
|
|
99
100
|
*/
|
|
100
|
-
#
|
|
101
|
+
#extractCountries;
|
|
101
102
|
/**
|
|
102
103
|
* The Geographic Rule Engine (Direction E, #289). `#conventionSource` supplies per-WOF-polygon resolution profiles;
|
|
103
104
|
* `#strategies` is the named-primitive registry the merged convention dispatches. Empty source → every query resolves
|
|
@@ -122,7 +123,7 @@ export class WOFSQLitePlaceLookup {
|
|
|
122
123
|
#ancestorsCache = new Map();
|
|
123
124
|
/**
|
|
124
125
|
* Opt-in postal-city alias reader (#475). `null` unless `opts.postalCityAliases` was supplied — every alias code path
|
|
125
|
-
* is
|
|
126
|
+
* is conditioned on this, so the default resolver is byte-identical.
|
|
126
127
|
*/
|
|
127
128
|
#postalCityAliases;
|
|
128
129
|
constructor(opts, weights) {
|
|
@@ -134,23 +135,21 @@ export class WOFSQLitePlaceLookup {
|
|
|
134
135
|
}
|
|
135
136
|
if (opts.database) {
|
|
136
137
|
this.#db = opts.database;
|
|
137
|
-
this.#
|
|
138
|
-
this.#shards = [{ path: ":memory:", schemaName: "main", placetypes: [] }];
|
|
138
|
+
this.#extracts = [{ path: ":memory:", schemaName: "main", placetypes: [] }];
|
|
139
139
|
}
|
|
140
140
|
else {
|
|
141
|
-
const
|
|
142
|
-
this.#
|
|
143
|
-
// Read-only by default — shipped gazetteer
|
|
141
|
+
const extracts = resolveExtracts(opts.databasePath);
|
|
142
|
+
this.#extracts = extracts;
|
|
143
|
+
// Read-only by default — shipped gazetteer extracts are sealed 0444 and Docker `:ro` mounts
|
|
144
144
|
// forbid write-mode opens, so a writable open fails there. The only code path that writes to
|
|
145
|
-
// the main
|
|
145
|
+
// the main extract is `#ensureFTS()` (FTS5 index build), conditioned on `opts.buildFTS`; open writable
|
|
146
146
|
// ONLY when that build was explicitly requested. Every read query (FTS5 MATCH, the aux-table
|
|
147
147
|
// SELECTs, ATTACH, and the `busy_timeout` PRAGMA) works read-only. See the docker read-only
|
|
148
148
|
// mount limitation (#1213).
|
|
149
|
-
this.#db = new
|
|
150
|
-
|
|
151
|
-
// ATTACH each non-main shard. Schema names were validated by resolveShards, so safe to
|
|
149
|
+
this.#db = this.#resources.use(new DatabaseClient(extracts[0].path, { readOnly: !opts.buildFTS }));
|
|
150
|
+
// ATTACH each non-main extract. Schema names were validated by resolveExtracts, so safe to
|
|
152
151
|
// interpolate directly (SQLite ATTACH doesn't accept parameters for the schema name).
|
|
153
|
-
for (const s of
|
|
152
|
+
for (const s of extracts.slice(1)) {
|
|
154
153
|
this.#db.exec(`ATTACH DATABASE '${s.path.replaceAll("'", "''")}' AS ${s.schemaName}`);
|
|
155
154
|
}
|
|
156
155
|
}
|
|
@@ -162,47 +161,44 @@ export class WOFSQLitePlaceLookup {
|
|
|
162
161
|
else {
|
|
163
162
|
this.#assertFTSExists();
|
|
164
163
|
}
|
|
165
|
-
this.#kysely = new Kysely({
|
|
166
|
-
dialect: new SqliteDialect({ database: this.#db }),
|
|
167
|
-
});
|
|
168
164
|
this.#weights = { ...DEFAULT_WEIGHTS, ...weights };
|
|
169
|
-
// Probe each
|
|
165
|
+
// Probe each extract's aux-table presence — driven by per-extract table existence in
|
|
170
166
|
// sqlite_master. Cached at construction so findPlace doesn't query sqlite_master per call.
|
|
171
167
|
this.#hasBboxIndex = new Map();
|
|
172
168
|
this.#hasPopulationIndex = new Map();
|
|
173
169
|
this.#encyclopedicClauses = new Map();
|
|
174
|
-
for (const s of this.#
|
|
175
|
-
this.#hasBboxIndex.set(s.schemaName, this.#
|
|
176
|
-
this.#hasPopulationIndex.set(s.schemaName, this.#
|
|
170
|
+
for (const s of this.#extracts) {
|
|
171
|
+
this.#hasBboxIndex.set(s.schemaName, this.#extractHasTable(s.schemaName, PLACE_BBOX_TABLE));
|
|
172
|
+
this.#hasPopulationIndex.set(s.schemaName, this.#extractHasTable(s.schemaName, PLACE_POPULATION_TABLE));
|
|
177
173
|
this.#encyclopedicClauses.set(s.schemaName, encyclopedicClauses(this.#db, s.schemaName));
|
|
178
174
|
}
|
|
179
|
-
// Every lookup path here reaches `place_search`, and a
|
|
175
|
+
// Every lookup path here reaches `place_search`, and a extract without it fails in one of two ways
|
|
180
176
|
// that are both hard to read: an unroutable name returns zero hits (indistinguishable from "this
|
|
181
177
|
// country has no places") and a routable one throws mid-query from deep inside a SELECT. The
|
|
182
|
-
// unroutable half is the worse of the two — a
|
|
178
|
+
// unroutable half is the worse of the two — a extract reaches routing only through the name
|
|
183
179
|
// `deriveSchemaName` derives from its FILENAME, so a file spelled one letter off the placetype it
|
|
184
180
|
// serves answers with nothing while holding every row that was asked for.
|
|
185
181
|
//
|
|
186
|
-
// Two independent things bring a
|
|
187
|
-
// CLAIM to be a place
|
|
182
|
+
// Two independent things bring a extract under the guard, and it needs both. Carrying `spr` is a
|
|
183
|
+
// CLAIM to be a place extract. Carrying a name that routes is an INVITATION to be queried as one, and
|
|
188
184
|
// it is made by the filename alone — so a database with no tables at all still gets picked, still
|
|
189
185
|
// answers no query, and still dies inside a SELECT. Testing only the claim lets an empty or
|
|
190
186
|
// truncated file past construction; testing only the name would exempt a correctly-named build
|
|
191
|
-
// input. A
|
|
187
|
+
// input. A extract needs to fail neither test to be exempt.
|
|
192
188
|
//
|
|
193
189
|
// Exempt by design: `postcode-locality-<cc>.db` carries a relation table and nothing else, matches
|
|
194
|
-
// no routed placetype, and is part of the documented default
|
|
195
|
-
for (const s of this.#
|
|
190
|
+
// no routed placetype, and is part of the documented default extract list.
|
|
191
|
+
for (const s of this.#extracts) {
|
|
196
192
|
if (s.schemaName === "main")
|
|
197
193
|
continue;
|
|
198
194
|
const routes = KNOWN_ROUTED_PLACETYPES.some((pt) => s.schemaName === pt || s.schemaName.startsWith(`${pt}_`) || s.schemaName.endsWith(`_${pt}`));
|
|
199
|
-
const
|
|
200
|
-
if (!routes && !
|
|
195
|
+
const claimsPlaceExtract = this.#extractHasTable(s.schemaName, "spr");
|
|
196
|
+
if (!routes && !claimsPlaceExtract)
|
|
201
197
|
continue;
|
|
202
|
-
if (this.#
|
|
198
|
+
if (this.#extractHasTable(s.schemaName, PLACE_SEARCH_TABLE))
|
|
203
199
|
continue;
|
|
204
200
|
throw new Error(`WOFSQLitePlaceLookup: ${s.path} ` +
|
|
205
|
-
(
|
|
201
|
+
(claimsPlaceExtract
|
|
206
202
|
? `carries "spr" but no "${PLACE_SEARCH_TABLE}" table, so it cannot serve a lookup.`
|
|
207
203
|
: `is named for a routed placetype but carries neither "spr" nor "${PLACE_SEARCH_TABLE}", so every ` +
|
|
208
204
|
`query routed to it would die mid-SELECT. An empty or truncated file reads exactly like this.`) +
|
|
@@ -212,53 +208,53 @@ export class WOFSQLitePlaceLookup {
|
|
|
212
208
|
: ` Its schema name "${s.schemaName}" also matches no routed placetype (${KNOWN_ROUTED_PLACETYPES.join(", ")}), ` +
|
|
213
209
|
`so it would never have been queried even with the table — check the filename's spelling.`));
|
|
214
210
|
}
|
|
215
|
-
// #920 country-aware
|
|
216
|
-
// construction (they're small, purpose-built
|
|
211
|
+
// #920 country-aware extract routing: probe each NON-MAIN extract's country set once at
|
|
212
|
+
// construction (they're small, purpose-built extracts — postcode/locality slices; main is the
|
|
217
213
|
// multi-GB admin DB and is the fallback anyway, so it is deliberately NOT scanned). Feeds
|
|
218
|
-
//
|
|
219
|
-
// route by the query's country instead of first-match starving the second
|
|
220
|
-
this.#
|
|
221
|
-
for (const sh of this.#
|
|
214
|
+
// pickExtractForPlacetype so two postcode extracts (postalcode-us + postalcode-geonames-tail)
|
|
215
|
+
// route by the query's country instead of first-match starving the second extract.
|
|
216
|
+
this.#extractCountries = new Map();
|
|
217
|
+
for (const sh of this.#extracts) {
|
|
222
218
|
if (sh.schemaName === "main")
|
|
223
219
|
continue;
|
|
224
220
|
try {
|
|
225
221
|
const rows = this.#db
|
|
226
222
|
.prepare(`SELECT DISTINCT country FROM ${sh.schemaName}.spr WHERE country != ''`)
|
|
227
223
|
.all();
|
|
228
|
-
this.#
|
|
224
|
+
this.#extractCountries.set(sh.schemaName, new Set(rows.map((r) => r.country)));
|
|
229
225
|
}
|
|
230
226
|
catch {
|
|
231
|
-
// A
|
|
227
|
+
// A extract without spr (or an attach oddity) just doesn't participate in country routing.
|
|
232
228
|
}
|
|
233
229
|
}
|
|
234
|
-
// The postcode_locality table can live on any attached
|
|
235
|
-
// `postcode-locality-<cc>.db`). Find the first
|
|
236
|
-
this.#
|
|
237
|
-
this.#
|
|
238
|
-
// Opt-in postal-city alias reader (#475). Construction-time present-or-not is the
|
|
230
|
+
// The postcode_locality table can live on any attached extract (typically its own
|
|
231
|
+
// `postcode-locality-<cc>.db`). Find the first extract that has it; null = coord-first disabled.
|
|
232
|
+
this.#postcodeLocalityExtract =
|
|
233
|
+
this.#extracts.find((s) => this.#extractHasTable(s.schemaName, POSTCODE_LOCALITY_TABLE))?.schemaName ?? null;
|
|
234
|
+
// Opt-in postal-city alias reader (#475). Construction-time present-or-not is the check: null
|
|
239
235
|
// keeps the coordinate-first scorer byte-identical to pre-#475.
|
|
240
236
|
this.#postalCityAliases = opts.postalCityAliases ?? null;
|
|
241
237
|
// The Geographic Rule Engine convention source. Precedence: an explicit `opts.conventions`
|
|
242
238
|
// (a ready source or a seed map) wins; else the build-from-source convention asset if one is
|
|
243
|
-
// attached (auto-detected, like the postcode_locality
|
|
239
|
+
// attached (auto-detected, like the postcode_locality extract — adding conventions.db to
|
|
244
240
|
// databasePath enables it; queried on demand, not paged into memory); else empty, so EU rides
|
|
245
241
|
// WORLD_DEFAULT. The registry binds strategy NAMES to the SQL-bound primitives — adding a
|
|
246
242
|
// strategy is registering it here.
|
|
247
|
-
const
|
|
243
|
+
const conventionExtract = this.#extracts.find((s) => this.#extractHasTable(s.schemaName, ADDRESS_CONVENTION_TABLE))?.schemaName ?? null;
|
|
248
244
|
this.#conventionSource = opts.conventions
|
|
249
245
|
? "get" in opts.conventions && typeof opts.conventions.get === "function"
|
|
250
246
|
? opts.conventions
|
|
251
247
|
: new SeedConventionSource(opts.conventions)
|
|
252
|
-
:
|
|
253
|
-
? new SqliteConventionSource(this.#db,
|
|
248
|
+
: conventionExtract
|
|
249
|
+
? new SqliteConventionSource(this.#db, conventionExtract)
|
|
254
250
|
: new SeedConventionSource();
|
|
255
251
|
this.#strategies = new Map([
|
|
256
252
|
["postcode_area_resolution", (q, c) => this.#postcodeAreaResolution(q, c)],
|
|
257
253
|
["fallback_fuzzy_name_match", (q) => this.#fuzzyNameMatch(q)],
|
|
258
254
|
]);
|
|
259
255
|
}
|
|
260
|
-
#
|
|
261
|
-
// For main, the existing helpers work directly. For attached
|
|
256
|
+
#extractHasTable(schemaName, tableName) {
|
|
257
|
+
// For main, the existing helpers work directly. For attached extracts we have to ask via the
|
|
262
258
|
// schema-qualified `sqlite_master` view.
|
|
263
259
|
if (schemaName === "main") {
|
|
264
260
|
if (tableName === PLACE_BBOX_TABLE)
|
|
@@ -297,9 +293,9 @@ export class WOFSQLitePlaceLookup {
|
|
|
297
293
|
// #924: NL postcode retry ladder. The WOF NL postalcode repo stores full codes UNSPACED
|
|
298
294
|
// ('1012LG') plus 4-digit stems ('1012'), while Dutch addresses carry the spaced form
|
|
299
295
|
// ('1012 LG') — two FTS tokens that can never match the one-token doc (the #920 name law,
|
|
300
|
-
// resurfacing in a WOF-built
|
|
296
|
+
// resurfacing in a WOF-built extract). On a postcode-typed NL-shape miss, retry ONCE with the
|
|
301
297
|
// whitespace-joined form (block-level precision when the full-code row exists), then the
|
|
302
|
-
// 4-digit stem (area-level). Country-
|
|
298
|
+
// 4-digit stem (area-level). Country-restricted to NL — the same digits+letters shape elsewhere
|
|
303
299
|
// must not silently coarsen to a different system's code. Each retry only fires when its
|
|
304
300
|
// text differs from the current one, so the ladder terminates by construction.
|
|
305
301
|
if (query.country?.toUpperCase() === "NL" &&
|
|
@@ -372,46 +368,46 @@ export class WOFSQLitePlaceLookup {
|
|
|
372
368
|
`against a newer code revision, rebuild the asset for this one.`);
|
|
373
369
|
}
|
|
374
370
|
/**
|
|
375
|
-
* Strategy `postcode_area_resolution` — the coordinate-first locality path, strictly
|
|
376
|
-
* postcode_locality table AND a locality query). Returns `null` — so the dispatcher falls through to the next
|
|
377
|
-
* strategy — when the
|
|
371
|
+
* Strategy `postcode_area_resolution` — the coordinate-first locality path, strictly conditioned (a sibling postcode
|
|
372
|
+
* AND a postcode_locality table AND a locality query). Returns `null` — so the dispatcher falls through to the next
|
|
373
|
+
* strategy — when the condition is unmet or the postcode isn't in the table; otherwise the soft-scored postcode∪name
|
|
378
374
|
* candidate set.
|
|
379
375
|
*/
|
|
380
376
|
#postcodeAreaResolution(query, convention) {
|
|
381
|
-
if (!(query.postcode && this.#
|
|
377
|
+
if (!(query.postcode && this.#postcodeLocalityExtract && this.#isLocalityQuery(query))) {
|
|
382
378
|
return Promise.resolve(null);
|
|
383
379
|
}
|
|
384
|
-
return this.#findLocalityCoordFirst(query, this.#
|
|
380
|
+
return this.#findLocalityCoordFirst(query, this.#postcodeLocalityExtract, convention);
|
|
385
381
|
}
|
|
386
382
|
/**
|
|
387
383
|
* Strategy `fallback_fuzzy_name_match` — the BM25 FTS name-match over the gazetteer, the universal fallback. Always
|
|
388
384
|
* returns an array (never null), so it terminates the dispatch chain.
|
|
389
385
|
*/
|
|
390
|
-
async #fuzzyNameMatch(query,
|
|
386
|
+
async #fuzzyNameMatch(query, forceExtract) {
|
|
391
387
|
const limit = query.limit ?? 10;
|
|
392
388
|
// Expand the placetype filter through the shared equivalence table (core/resolver): a
|
|
393
389
|
// `locality` query must also reach `borough` / `localadmin` rows — Brooklyn-the-borough
|
|
394
390
|
// (pop 2.5M) is a borough, not a locality, and a strict filter made it unreachable so the
|
|
395
391
|
// fuzzy "Brooklyn Park, MN" won instead. Order-preserving: the FIRST entry stays the
|
|
396
|
-
// requested placetype, which is what
|
|
392
|
+
// requested placetype, which is what extract routing keys off below.
|
|
397
393
|
const placetypes = expandPlacetypeFilter(normalizePlacetypes(query.placetype));
|
|
398
394
|
// Postcode-typed queries keep the #920 fused name-law shape; everything else splits on
|
|
399
395
|
// intra-token punctuation so hyphenated names reach the FTS as their real terms (#945).
|
|
400
396
|
const ftsQuery = sanitizeFTSQuery(query.text, { fuseTokens: placetypes?.includes("postalcode") ?? false });
|
|
401
397
|
if (!ftsQuery)
|
|
402
398
|
return [];
|
|
403
|
-
// Pick the
|
|
404
|
-
// `placetype` always goes to main. (Mixed-placetype queries with multiple
|
|
399
|
+
// Pick the extract for this query. Multi-extract routing is placetype-driven; a query without
|
|
400
|
+
// `placetype` always goes to main. (Mixed-placetype queries with multiple extracts aren't
|
|
405
401
|
// supported in v1 — caller can issue two findPlace calls and merge in TS if needed.)
|
|
406
402
|
const firstPlacetype = placetypes?.[0];
|
|
407
403
|
// Bias fan-out (#58/proximity-bias): a country-less query WITH proximity hints must see the
|
|
408
|
-
// cross-
|
|
409
|
-
// postalcode-intl, and single-
|
|
410
|
-
// (self-recursion with a
|
|
411
|
-
// keys the per-
|
|
404
|
+
// cross-extract ambiguity the hints exist to resolve — "48026" lives in postalcode-us AND
|
|
405
|
+
// postalcode-intl, and single-extract routing would hide one side. Query every matching extract
|
|
406
|
+
// (self-recursion with a extract pin), merge by id, and re-sort by the same (exact, prominence)
|
|
407
|
+
// keys the per-extract tier sort used. Bounded: hints + no country + >1 matching extract only.
|
|
412
408
|
const hasBiasHints = !!query.near || (query.bias?.length ?? 0) > 0;
|
|
413
|
-
if (!
|
|
414
|
-
const matching =
|
|
409
|
+
if (!forceExtract && hasBiasHints && !query.country) {
|
|
410
|
+
const matching = pickExtractsForPlacetype(this.#extracts, firstPlacetype);
|
|
415
411
|
if (matching.length > 1) {
|
|
416
412
|
const pools = [];
|
|
417
413
|
for (const sh of matching) {
|
|
@@ -430,13 +426,13 @@ export class WOFSQLitePlaceLookup {
|
|
|
430
426
|
return merged.slice(0, limit);
|
|
431
427
|
}
|
|
432
428
|
}
|
|
433
|
-
const
|
|
434
|
-
|
|
429
|
+
const extract = forceExtract ??
|
|
430
|
+
pickExtractForPlacetype(this.#extracts, firstPlacetype, {
|
|
435
431
|
country: query.country,
|
|
436
|
-
countriesBySchema: this.#
|
|
432
|
+
countriesBySchema: this.#extractCountries,
|
|
437
433
|
});
|
|
438
434
|
// bare schema name; safe to interpolate (validated at construction)
|
|
439
|
-
const sch =
|
|
435
|
+
const sch = extract.schemaName;
|
|
440
436
|
const rawRows = fetchSearchRows({
|
|
441
437
|
db: this.#db,
|
|
442
438
|
schemaName: sch,
|
|
@@ -569,7 +565,7 @@ export class WOFSQLitePlaceLookup {
|
|
|
569
565
|
? [...wofAliases, ...(postalAliasByGeo.get(cfNormalize(cand.name)) ?? [])]
|
|
570
566
|
: wofAliases;
|
|
571
567
|
const sName = softNameScore(query.text, cand.name, aliases);
|
|
572
|
-
const sPop = cand.population
|
|
568
|
+
const sPop = populationScaleTerm(cand.population, this.#weights);
|
|
573
569
|
scored.push({ ...cand, score: w.pc * sPc + w.name * sName + w.pop * sPop, exact: sName >= 1 });
|
|
574
570
|
}
|
|
575
571
|
// Exact-name tiering (same philosophy as the FTS path): an EXACT name/alias match tiers above
|
|
@@ -634,16 +630,10 @@ export class WOFSQLitePlaceLookup {
|
|
|
634
630
|
return c;
|
|
635
631
|
});
|
|
636
632
|
}
|
|
637
|
-
close() {
|
|
638
|
-
// Destroying the Kysely instance closes the underlying connection IF we own it. If the caller
|
|
639
|
-
// passed in a pre-opened DatabaseSync (test fixture), respect their ownership.
|
|
640
|
-
void this.#kysely.destroy();
|
|
641
|
-
if (this.#ownsDB) {
|
|
642
|
-
this.#db.close();
|
|
643
|
-
}
|
|
644
|
-
}
|
|
645
633
|
[Symbol.dispose]() {
|
|
646
|
-
this
|
|
634
|
+
// Only when we opened it. A caller who passed a pre-opened client keeps using it after this returns — the FTS
|
|
635
|
+
// build this lookup performed lives on their connection, and closing it would take that with us.
|
|
636
|
+
this.#resources[Symbol.dispose]();
|
|
647
637
|
}
|
|
648
638
|
/**
|
|
649
639
|
* Build the FTS5 virtual table from the `names` + `places` tables.
|
package/out/lookup.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"lookup.js","sourceRoot":"","sources":["../lookup.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"lookup.js","sourceRoot":"","sources":["../lib/lookup.ts"],"names":[],"mappings":"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"}
|
package/out/name-score.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"name-score.d.ts","sourceRoot":"","sources":["../name-score.ts"],"names":[],"mappings":"AAAA;;;;;;;;GAQG;AAEH;;GAEG;AACH,wBAAgB,WAAW,CAAC,CAAC,EAAE,MAAM,GAAG,MAAM,CAO7C;AAsCD;;GAEG;AACH,wBAAgB,aAAa,CAAC,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,EAAE,OAAO,EAAE,SAAS,MAAM,EAAE,GAAG,MAAM,CAgB5F"}
|
|
1
|
+
{"version":3,"file":"name-score.d.ts","sourceRoot":"","sources":["../lib/name-score.ts"],"names":[],"mappings":"AAAA;;;;;;;;GAQG;AAEH;;GAEG;AACH,wBAAgB,WAAW,CAAC,CAAC,EAAE,MAAM,GAAG,MAAM,CAO7C;AAsCD;;GAEG;AACH,wBAAgB,aAAa,CAAC,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,EAAE,OAAO,EAAE,SAAS,MAAM,EAAE,GAAG,MAAM,CAgB5F"}
|
package/out/name-score.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"name-score.js","sourceRoot":"","sources":["../name-score.ts"],"names":[],"mappings":"AAAA;;;;;;;;GAQG;AAEH;;GAEG;AACH,MAAM,UAAU,WAAW,CAAC,CAAS;IACpC,OAAO,CAAC;SACN,WAAW,EAAE;SACb,SAAS,CAAC,KAAK,CAAC;SAChB,UAAU,CAAC,kBAAkB,EAAE,EAAE,CAAC,CAAC,8BAA8B;SACjE,UAAU,CAAC,aAAa,EAAE,GAAG,CAAC;SAC9B,IAAI,EAAE,CAAA;AACT,CAAC;AAED;;GAEG;AACH,SAAS,QAAQ,CAAC,CAAS;IAC1B,MAAM,CAAC,GAAG,IAAI,CAAC,GAAG,CAAA;IAClB,MAAM,GAAG,GAAG,IAAI,GAAG,EAAU,CAAA;IAE7B,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC,MAAM,EAAE,CAAC,EAAE,EAAE,CAAC;QACxC,GAAG,CAAC,GAAG,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,EAAE,CAAC,GAAG,CAAC,CAAC,CAAC,CAAA;IAC3B,CAAC;IAED,OAAO,GAAG,CAAA;AACX,CAAC;AAED;;;;;;GAMG;AACH,SAAS,cAAc,CAAC,CAAS,EAAE,CAAS;IAC3C,MAAM,CAAC,GAAG,QAAQ,CAAC,CAAC,CAAC,CAAA;IACrB,MAAM,CAAC,GAAG,QAAQ,CAAC,CAAC,CAAC,CAAA;IAErB,IAAI,CAAC,CAAC,CAAC,IAAI,IAAI,CAAC,CAAC,CAAC,IAAI;QAAE,OAAO,CAAC,CAAA;IAChC,IAAI,KAAK,GAAG,CAAC,CAAA;IAEb,KAAK,MAAM,CAAC,IAAI,CAAC;QAChB,IAAI,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC;YACd,KAAK,EAAE,CAAA;QACR,CAAC;IAEF,OAAO,KAAK,GAAG,CAAC,CAAC,CAAC,IAAI,GAAG,CAAC,CAAC,IAAI,GAAG,KAAK,CAAC,CAAA;AACzC,CAAC;AAED;;GAEG;AACH,MAAM,UAAU,aAAa,CAAC,IAAY,EAAE,IAAY,EAAE,OAA0B;IACnF,MAAM,CAAC,GAAG,WAAW,CAAC,IAAI,CAAC,CAAA;IAE3B,IAAI,CAAC,CAAC;QAAE,OAAO,CAAC,CAAA;IAChB,IAAI,IAAI,GAAG,CAAC,CAAA;IAEZ,KAAK,MAAM,GAAG,IAAI,CAAC,IAAI,EAAE,GAAG,OAAO,CAAC,EAAE,CAAC;QACtC,MAAM,CAAC,GAAG,WAAW,CAAC,GAAG,CAAC,CAAA;QAE1B,IAAI,CAAC,CAAC;YAAE,SAAQ;QAEhB,IAAI,CAAC,KAAK,CAAC;YAAE,OAAO,CAAC,CAAA;QACrB,IAAI,GAAG,IAAI,CAAC,GAAG,CAAC,IAAI,EAAE,cAAc,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAA;IAC5C,CAAC;IAED,OAAO,IAAI,CAAA;AACZ,CAAC"}
|
|
1
|
+
{"version":3,"file":"name-score.js","sourceRoot":"","sources":["../lib/name-score.ts"],"names":[],"mappings":"AAAA;;;;;;;;GAQG;AAEH;;GAEG;AACH,MAAM,UAAU,WAAW,CAAC,CAAS;IACpC,OAAO,CAAC;SACN,WAAW,EAAE;SACb,SAAS,CAAC,KAAK,CAAC;SAChB,UAAU,CAAC,kBAAkB,EAAE,EAAE,CAAC,CAAC,8BAA8B;SACjE,UAAU,CAAC,aAAa,EAAE,GAAG,CAAC;SAC9B,IAAI,EAAE,CAAA;AACT,CAAC;AAED;;GAEG;AACH,SAAS,QAAQ,CAAC,CAAS;IAC1B,MAAM,CAAC,GAAG,IAAI,CAAC,GAAG,CAAA;IAClB,MAAM,GAAG,GAAG,IAAI,GAAG,EAAU,CAAA;IAE7B,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC,MAAM,EAAE,CAAC,EAAE,EAAE,CAAC;QACxC,GAAG,CAAC,GAAG,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,EAAE,CAAC,GAAG,CAAC,CAAC,CAAC,CAAA;IAC3B,CAAC;IAED,OAAO,GAAG,CAAA;AACX,CAAC;AAED;;;;;;GAMG;AACH,SAAS,cAAc,CAAC,CAAS,EAAE,CAAS;IAC3C,MAAM,CAAC,GAAG,QAAQ,CAAC,CAAC,CAAC,CAAA;IACrB,MAAM,CAAC,GAAG,QAAQ,CAAC,CAAC,CAAC,CAAA;IAErB,IAAI,CAAC,CAAC,CAAC,IAAI,IAAI,CAAC,CAAC,CAAC,IAAI;QAAE,OAAO,CAAC,CAAA;IAChC,IAAI,KAAK,GAAG,CAAC,CAAA;IAEb,KAAK,MAAM,CAAC,IAAI,CAAC;QAChB,IAAI,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC;YACd,KAAK,EAAE,CAAA;QACR,CAAC;IAEF,OAAO,KAAK,GAAG,CAAC,CAAC,CAAC,IAAI,GAAG,CAAC,CAAC,IAAI,GAAG,KAAK,CAAC,CAAA;AACzC,CAAC;AAED;;GAEG;AACH,MAAM,UAAU,aAAa,CAAC,IAAY,EAAE,IAAY,EAAE,OAA0B;IACnF,MAAM,CAAC,GAAG,WAAW,CAAC,IAAI,CAAC,CAAA;IAE3B,IAAI,CAAC,CAAC;QAAE,OAAO,CAAC,CAAA;IAChB,IAAI,IAAI,GAAG,CAAC,CAAA;IAEZ,KAAK,MAAM,GAAG,IAAI,CAAC,IAAI,EAAE,GAAG,OAAO,CAAC,EAAE,CAAC;QACtC,MAAM,CAAC,GAAG,WAAW,CAAC,GAAG,CAAC,CAAA;QAE1B,IAAI,CAAC,CAAC;YAAE,SAAQ;QAEhB,IAAI,CAAC,KAAK,CAAC;YAAE,OAAO,CAAC,CAAA;QACrB,IAAI,GAAG,IAAI,CAAC,GAAG,CAAC,IAAI,EAAE,cAAc,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAA;IAC5C,CAAC;IAED,OAAO,IAAI,CAAA;AACZ,CAAC"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../lib/nsul/index.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH,cAAc,cAAc,CAAA;AAC5B,cAAc,cAAc,CAAA"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../lib/nsul/index.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH,cAAc,cAAc,CAAA;AAC5B,cAAc,cAAc,CAAA"}
|