@mailwoman/resolver-wof-sqlite 10.1.0 → 10.2.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (212) hide show
  1. package/README.md +1 -0
  2. package/lib/address/point/interpolation.ts +6 -2
  3. package/lib/address/point.ts +15 -14
  4. package/lib/build/candidate.ts +11 -21
  5. package/lib/build/slim.ts +1 -1
  6. package/lib/candidate/importance.ts +1 -1
  7. package/lib/candidate/lookup.ts +47 -34
  8. package/lib/candidate/own-name.ts +1 -1
  9. package/lib/candidate/scoring.ts +29 -29
  10. package/lib/capitals.ts +3 -3
  11. package/lib/coincident-roles.ts +15 -4
  12. package/lib/convention/schema.ts +2 -9
  13. package/lib/convention.ts +7 -7
  14. package/lib/coverage-manifest-schema.ts +6 -6
  15. package/lib/currency-backfill.ts +13 -13
  16. package/lib/exact-match.ts +1 -1
  17. package/lib/extracts.ts +1 -1
  18. package/lib/fst/autocomplete.ts +2 -2
  19. package/lib/fst/builder.ts +9 -7
  20. package/lib/fst/deserialize-web.ts +8 -8
  21. package/lib/fst/freshness.ts +27 -26
  22. package/lib/fst/matcher.ts +5 -3
  23. package/lib/fst/serialize.ts +12 -17
  24. package/lib/fst/types.ts +14 -23
  25. package/lib/fst.ts +1 -0
  26. package/lib/fts.ts +1 -1
  27. package/lib/geonames/aliases.ts +3 -3
  28. package/lib/geonames/postal.ts +1 -1
  29. package/lib/index.ts +3 -2
  30. package/lib/interpolation.ts +7 -6
  31. package/lib/lookup.ts +26 -20
  32. package/lib/nsul/lookup.ts +1 -1
  33. package/lib/place-importance-schema.ts +5 -5
  34. package/lib/poi/lookup.ts +13 -21
  35. package/lib/postcode-point-lookup.ts +1 -10
  36. package/lib/primary-preference.ts +2 -2
  37. package/lib/proximity-rerank.ts +1 -1
  38. package/lib/ranking-weights.ts +15 -10
  39. package/lib/region-keys.ts +2 -2
  40. package/lib/reverse.ts +45 -18
  41. package/lib/schema.ts +3 -12
  42. package/lib/sqlite/convention-source.ts +3 -3
  43. package/lib/sqlite/utils.ts +1 -1
  44. package/lib/street/centroid.ts +1 -1
  45. package/lib/street/morphology/fst/builder.ts +16 -7
  46. package/lib/street/morphology/fst/loader.ts +8 -7
  47. package/lib/street/name-lookup.ts +4 -8
  48. package/lib/street/normalize.ts +3 -3
  49. package/lib/street/segment-schema.ts +2 -2
  50. package/lib/types.ts +17 -12
  51. package/lib/uprn/lookup.ts +1 -1
  52. package/lib/weights-overlay-linker.ts +38 -26
  53. package/out/address/point/interpolation.d.ts +1 -0
  54. package/out/address/point/interpolation.d.ts.map +1 -1
  55. package/out/address/point/interpolation.js +5 -2
  56. package/out/address/point/interpolation.js.map +1 -1
  57. package/out/address/point.d.ts +5 -4
  58. package/out/address/point.d.ts.map +1 -1
  59. package/out/address/point.js +11 -10
  60. package/out/address/point.js.map +1 -1
  61. package/out/build/candidate.d.ts +7 -17
  62. package/out/build/candidate.d.ts.map +1 -1
  63. package/out/build/candidate.js +4 -11
  64. package/out/build/candidate.js.map +1 -1
  65. package/out/build/slim.js +1 -1
  66. package/out/build/slim.js.map +1 -1
  67. package/out/candidate/importance.js +1 -1
  68. package/out/candidate/importance.js.map +1 -1
  69. package/out/candidate/lookup.d.ts +8 -5
  70. package/out/candidate/lookup.d.ts.map +1 -1
  71. package/out/candidate/lookup.js +35 -25
  72. package/out/candidate/lookup.js.map +1 -1
  73. package/out/candidate/own-name.js +1 -1
  74. package/out/candidate/own-name.js.map +1 -1
  75. package/out/candidate/scoring.js +27 -25
  76. package/out/candidate/scoring.js.map +1 -1
  77. package/out/capitals.d.ts +1 -1
  78. package/out/capitals.d.ts.map +1 -1
  79. package/out/capitals.js.map +1 -1
  80. package/out/coincident-roles.d.ts +4 -4
  81. package/out/coincident-roles.d.ts.map +1 -1
  82. package/out/coincident-roles.js +11 -0
  83. package/out/coincident-roles.js.map +1 -1
  84. package/out/convention/schema.d.ts +2 -8
  85. package/out/convention/schema.d.ts.map +1 -1
  86. package/out/convention/schema.js.map +1 -1
  87. package/out/convention.d.ts +4 -4
  88. package/out/convention.d.ts.map +1 -1
  89. package/out/convention.js +3 -3
  90. package/out/convention.js.map +1 -1
  91. package/out/coverage-manifest-schema.d.ts +1 -1
  92. package/out/coverage-manifest-schema.d.ts.map +1 -1
  93. package/out/coverage-manifest-schema.js +5 -5
  94. package/out/coverage-manifest-schema.js.map +1 -1
  95. package/out/currency-backfill.d.ts +6 -6
  96. package/out/currency-backfill.d.ts.map +1 -1
  97. package/out/currency-backfill.js +7 -7
  98. package/out/currency-backfill.js.map +1 -1
  99. package/out/exact-match.js +1 -1
  100. package/out/exact-match.js.map +1 -1
  101. package/out/extracts.d.ts +1 -1
  102. package/out/extracts.d.ts.map +1 -1
  103. package/out/extracts.js.map +1 -1
  104. package/out/fst/autocomplete.d.ts +1 -1
  105. package/out/fst/autocomplete.d.ts.map +1 -1
  106. package/out/fst/autocomplete.js +1 -1
  107. package/out/fst/autocomplete.js.map +1 -1
  108. package/out/fst/builder.d.ts.map +1 -1
  109. package/out/fst/builder.js +9 -7
  110. package/out/fst/builder.js.map +1 -1
  111. package/out/fst/deserialize-web.d.ts +1 -1
  112. package/out/fst/deserialize-web.d.ts.map +1 -1
  113. package/out/fst/deserialize-web.js +7 -7
  114. package/out/fst/deserialize-web.js.map +1 -1
  115. package/out/fst/freshness.d.ts +9 -9
  116. package/out/fst/freshness.d.ts.map +1 -1
  117. package/out/fst/freshness.js +19 -18
  118. package/out/fst/freshness.js.map +1 -1
  119. package/out/fst/matcher.d.ts +4 -3
  120. package/out/fst/matcher.d.ts.map +1 -1
  121. package/out/fst/matcher.js.map +1 -1
  122. package/out/fst/serialize.d.ts +1 -5
  123. package/out/fst/serialize.d.ts.map +1 -1
  124. package/out/fst/serialize.js +11 -15
  125. package/out/fst/serialize.js.map +1 -1
  126. package/out/fst/types.d.ts +14 -22
  127. package/out/fst/types.d.ts.map +1 -1
  128. package/out/fst.d.ts +1 -0
  129. package/out/fst.d.ts.map +1 -1
  130. package/out/fst.js +1 -0
  131. package/out/fst.js.map +1 -1
  132. package/out/fts.js +1 -1
  133. package/out/fts.js.map +1 -1
  134. package/out/geonames/aliases.d.ts +1 -1
  135. package/out/geonames/aliases.d.ts.map +1 -1
  136. package/out/geonames/aliases.js +2 -2
  137. package/out/geonames/aliases.js.map +1 -1
  138. package/out/geonames/postal.js +1 -1
  139. package/out/geonames/postal.js.map +1 -1
  140. package/out/index.d.ts +3 -2
  141. package/out/index.d.ts.map +1 -1
  142. package/out/index.js +1 -0
  143. package/out/index.js.map +1 -1
  144. package/out/interpolation.d.ts +4 -4
  145. package/out/interpolation.d.ts.map +1 -1
  146. package/out/interpolation.js +4 -3
  147. package/out/interpolation.js.map +1 -1
  148. package/out/lookup.d.ts +4 -3
  149. package/out/lookup.d.ts.map +1 -1
  150. package/out/lookup.js +22 -14
  151. package/out/lookup.js.map +1 -1
  152. package/out/nsul/lookup.js.map +1 -1
  153. package/out/place-importance-schema.d.ts +2 -2
  154. package/out/place-importance-schema.d.ts.map +1 -1
  155. package/out/place-importance-schema.js +3 -3
  156. package/out/place-importance-schema.js.map +1 -1
  157. package/out/poi/lookup.d.ts +10 -13
  158. package/out/poi/lookup.d.ts.map +1 -1
  159. package/out/poi/lookup.js +3 -7
  160. package/out/poi/lookup.js.map +1 -1
  161. package/out/postcode-point-lookup.d.ts +1 -9
  162. package/out/postcode-point-lookup.d.ts.map +1 -1
  163. package/out/postcode-point-lookup.js.map +1 -1
  164. package/out/primary-preference.js +2 -2
  165. package/out/primary-preference.js.map +1 -1
  166. package/out/proximity-rerank.d.ts +1 -1
  167. package/out/proximity-rerank.d.ts.map +1 -1
  168. package/out/ranking-weights.d.ts +15 -10
  169. package/out/ranking-weights.d.ts.map +1 -1
  170. package/out/ranking-weights.js.map +1 -1
  171. package/out/region-keys.d.ts +2 -2
  172. package/out/region-keys.d.ts.map +1 -1
  173. package/out/region-keys.js.map +1 -1
  174. package/out/reverse.d.ts +7 -4
  175. package/out/reverse.d.ts.map +1 -1
  176. package/out/reverse.js +38 -13
  177. package/out/reverse.js.map +1 -1
  178. package/out/schema.d.ts +2 -11
  179. package/out/schema.d.ts.map +1 -1
  180. package/out/sqlite/convention-source.d.ts +1 -1
  181. package/out/sqlite/convention-source.d.ts.map +1 -1
  182. package/out/sqlite/convention-source.js +2 -2
  183. package/out/sqlite/convention-source.js.map +1 -1
  184. package/out/sqlite/utils.d.ts +1 -1
  185. package/out/sqlite/utils.d.ts.map +1 -1
  186. package/out/street/centroid.js +1 -1
  187. package/out/street/centroid.js.map +1 -1
  188. package/out/street/morphology/fst/builder.d.ts +3 -3
  189. package/out/street/morphology/fst/builder.d.ts.map +1 -1
  190. package/out/street/morphology/fst/builder.js +13 -4
  191. package/out/street/morphology/fst/builder.js.map +1 -1
  192. package/out/street/morphology/fst/loader.d.ts +4 -4
  193. package/out/street/morphology/fst/loader.d.ts.map +1 -1
  194. package/out/street/morphology/fst/loader.js +4 -3
  195. package/out/street/morphology/fst/loader.js.map +1 -1
  196. package/out/street/name-lookup.d.ts +2 -2
  197. package/out/street/name-lookup.d.ts.map +1 -1
  198. package/out/street/name-lookup.js +2 -4
  199. package/out/street/name-lookup.js.map +1 -1
  200. package/out/street/normalize.js +3 -3
  201. package/out/street/normalize.js.map +1 -1
  202. package/out/street/segment-schema.d.ts +2 -2
  203. package/out/street/segment-schema.js +2 -2
  204. package/out/types.d.ts +16 -12
  205. package/out/types.d.ts.map +1 -1
  206. package/out/uprn/lookup.js +1 -1
  207. package/out/uprn/lookup.js.map +1 -1
  208. package/out/weights-overlay-linker.d.ts +9 -6
  209. package/out/weights-overlay-linker.d.ts.map +1 -1
  210. package/out/weights-overlay-linker.js +21 -7
  211. package/out/weights-overlay-linker.js.map +1 -1
  212. package/package.json +13 -13
@@ -1 +1 @@
1
- {"version":3,"file":"region-keys.js","sourceRoot":"","sources":["../lib/region-keys.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"region-keys.js","sourceRoot":"","sources":["../lib/region-keys.ts"],"names":[],"mappings":"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"}
package/out/reverse.d.ts CHANGED
@@ -82,19 +82,21 @@ export interface ReverseGeocodeOpts {
82
82
  /**
83
83
  * Restrict the hierarchy to these placetypes (both the bbox candidates and the descent tiers).
84
84
  *
85
- * Default: every admin placetype in the gazetteer.
86
85
  * E.g.
87
86
  *
88
87
  * `["region", "county", "locality"]` to skip the neighborhood grain.
88
+ *
89
+ * @defaultValue every admin placetype in the gazetteer.
89
90
  */
90
91
  placetypes?: WOFPlacetype[];
91
92
  /**
92
93
  * Cap on the bbox candidate fetch.
93
94
  *
94
- * The default is 128.
95
95
  * Current measurements show that this covers a dense metro.
96
96
  *
97
97
  * The most bbox-overlapping point we have measured is a few dozen neighborhoods plus the admin chain.
98
+ *
99
+ * @defaultValue `128`
98
100
  */
99
101
  maxCandidates?: number;
100
102
  /**
@@ -103,7 +105,8 @@ export interface ReverseGeocodeOpts {
103
105
  * This keeps a sparse gazetteer from "refining" to a far-away sibling.
104
106
  *
105
107
  * Polygon-confirmed steps ignore it (containment is exact regardless of centroid distance).
106
- * Default 25 km.
108
+ *
109
+ * @defaultValue `25 km`
107
110
  */
108
111
  maxApproximateKm?: number;
109
112
  }
@@ -125,7 +128,7 @@ export declare class WOFReverseGeocoder implements Disposable {
125
128
  * The async method above exists only for call-site symmetry with `PlaceLookup.findPlace`.
126
129
  *
127
130
  * Exposed directly for callers that can't await mid-call
128
- * (e.g. `mailwoman/poi-executor.ts`'s `createPOIExecutor`, whose `POIIntentOutcome`
131
+ * (e.g. `mailwoman/poi-executor.ts`'s `createPOIExecutor`, whose `POIQueryResult`
129
132
  * return type is synchronous by interface. See `poi-intent.ts`'s `deps.execute`).
130
133
  */
131
134
  reverseGeocodeSync(lat: number, lon: number, opts?: ReverseGeocodeOpts): ReverseGeocodeResult;
@@ -1 +1 @@
1
- {"version":3,"file":"reverse.d.ts","sourceRoot":"","sources":["../lib/reverse.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;GAsBG;AAKH,OAAO,EAAE,cAAc,EAAE,MAAM,0BAA0B,CAAA;AAEzD,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,SAAS,CAAA;AAI9C,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,SAAS,CAAA;AAC1C,OAAO,KAAK,EAAE,cAAc,EAAE,YAAY,EAAE,MAAM,QAAQ,CAAA;AAW1D;;;;;;;;GAQG;AACH,MAAM,MAAM,eAAe,GAAG,SAAS,GAAG,aAAa,CAAA;AAEvD,MAAM,WAAW,oBAAoB;IACpC;;;;;;;OAOG;IACH,SAAS,EAAE,cAAc,EAAE,CAAA;IAC3B;;OAEG;IACH,WAAW,EAAE,eAAe,CAAA;CAC5B;AAED,MAAM,WAAW,sBAAsB;IACtC;;;;;;;OAOG;IACH,WAAW,CAAC,EAAE,eAAe,CAAA;IAC7B;;OAEG;IACH,aAAa,CAAC,EAAE,cAAc,CAAC,WAAW,CAAC,CAAA;IAC3C;;;;;;;OAOG;IACH,aAAa,CAAC,EAAE,eAAe,CAAA;IAC/B;;OAEG;IACH,eAAe,CAAC,EAAE,cAAc,CAAC,WAAW,CAAC,CAAA;CAC7C;AAED,MAAM,WAAW,kBAAkB;IAClC;;;;;;;OAOG;IACH,UAAU,CAAC,EAAE,YAAY,EAAE,CAAA;IAC3B;;;;;;;OAOG;IACH,aAAa,CAAC,EAAE,MAAM,CAAA;IACtB;;;;;;;OAOG;IACH,gBAAgB,CAAC,EAAE,MAAM,CAAA;CACzB;AAoDD,qBAAa,kBAAmB,YAAW,UAAU;;IAgBpD,YAAY,IAAI,EAAE,sBAAsB,EAsCvC;IAED;;;;;;OAMG;IACG,cAAc,CAAC,GAAG,EAAE,MAAM,EAAE,GAAG,EAAE,MAAM,EAAE,IAAI,GAAE,kBAAuB,GAAG,OAAO,CAAC,oBAAoB,CAAC,CAE3G;IAED;;;;;;;;;OASG;IACH,kBAAkB,CAAC,GAAG,EAAE,MAAM,EAAE,GAAG,EAAE,MAAM,EAAE,IAAI,GAAE,kBAAuB,GAAG,oBAAoB,CAqIhG;IA8FD,CAAC,MAAM,CAAC,OAAO,CAAC,IAAI,IAAI,CAQvB;CACD"}
1
+ {"version":3,"file":"reverse.d.ts","sourceRoot":"","sources":["../lib/reverse.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;GAsBG;AAKH,OAAO,EAAE,cAAc,EAAE,MAAM,0BAA0B,CAAA;AAEzD,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,SAAS,CAAA;AAI9C,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,SAAS,CAAA;AAC1C,OAAO,KAAK,EAAE,cAAc,EAAE,YAAY,EAAE,MAAM,QAAQ,CAAA;AAW1D;;;;;;;;GAQG;AACH,MAAM,MAAM,eAAe,GAAG,SAAS,GAAG,aAAa,CAAA;AAEvD,MAAM,WAAW,oBAAoB;IACpC;;;;;;;OAOG;IACH,SAAS,EAAE,cAAc,EAAE,CAAA;IAC3B;;OAEG;IACH,WAAW,EAAE,eAAe,CAAA;CAC5B;AAED,MAAM,WAAW,sBAAsB;IACtC;;;;;;;OAOG;IACH,WAAW,CAAC,EAAE,eAAe,CAAA;IAC7B;;OAEG;IACH,aAAa,CAAC,EAAE,cAAc,CAAC,WAAW,CAAC,CAAA;IAC3C;;;;;;;OAOG;IACH,aAAa,CAAC,EAAE,eAAe,CAAA;IAC/B;;OAEG;IACH,eAAe,CAAC,EAAE,cAAc,CAAC,WAAW,CAAC,CAAA;CAC7C;AAED,MAAM,WAAW,kBAAkB;IAClC;;;;;;;;OAQG;IACH,UAAU,CAAC,EAAE,YAAY,EAAE,CAAA;IAC3B;;;;;;;;OAQG;IACH,aAAa,CAAC,EAAE,MAAM,CAAA;IACtB;;;;;;;;OAQG;IACH,gBAAgB,CAAC,EAAE,MAAM,CAAA;CACzB;AAgED,qBAAa,kBAAmB,YAAW,UAAU;;IAgBpD,YAAY,IAAI,EAAE,sBAAsB,EAsCvC;IAED;;;;;;OAMG;IACG,cAAc,CAAC,GAAG,EAAE,MAAM,EAAE,GAAG,EAAE,MAAM,EAAE,IAAI,GAAE,kBAAuB,GAAG,OAAO,CAAC,oBAAoB,CAAC,CAE3G;IAED;;;;;;;;;OASG;IACH,kBAAkB,CAAC,GAAG,EAAE,MAAM,EAAE,GAAG,EAAE,MAAM,EAAE,IAAI,GAAE,kBAAuB,GAAG,oBAAoB,CAiJhG;IA8FD,CAAC,MAAM,CAAC,OAAO,CAAC,IAAI,IAAI,CAQvB;CACD"}
package/out/reverse.js CHANGED
@@ -52,21 +52,34 @@ const DESCENT_TIERS = [
52
52
  "neighbourhood",
53
53
  "microhood",
54
54
  ];
55
- function toPlaceCandidate(row, distanceKm) {
56
- const c = {
55
+ const ABSENT_CANDIDATE_FIELDS = {
56
+ parent_id: null,
57
+ distanceKm: null,
58
+ exactMatch: null,
59
+ prominence: null,
60
+ population: null,
61
+ referential: null,
62
+ encyclopedic: null,
63
+ importance: null,
64
+ bbox: null,
65
+ mismatch: null,
66
+ containedByQualifier: null,
67
+ regionScopeMiss: null,
68
+ variantAliasExempted: null,
69
+ };
70
+ function toPlaceCandidate(row, distanceKm = null) {
71
+ return {
72
+ ...ABSENT_CANDIDATE_FIELDS,
57
73
  id: row.id,
58
74
  name: row.name,
59
75
  placetype: row.placetype,
60
76
  country: row.country ?? "",
61
77
  lat: row.lat,
62
78
  lon: row.lon,
63
- parent_id: row.parent_id ?? undefined,
79
+ parent_id: row.parent_id ?? null,
64
80
  score: 0,
81
+ distanceKm,
65
82
  };
66
- if (distanceKm !== undefined) {
67
- c.distanceKm = distanceKm;
68
- }
69
- return c;
70
83
  }
71
84
  export class WOFReverseGeocoder {
72
85
  #admin;
@@ -128,7 +141,7 @@ export class WOFReverseGeocoder {
128
141
  * The async method above exists only for call-site symmetry with `PlaceLookup.findPlace`.
129
142
  *
130
143
  * Exposed directly for callers that can't await mid-call
131
- * (e.g. `mailwoman/poi-executor.ts`'s `createPOIExecutor`, whose `POIIntentOutcome`
144
+ * (e.g. `mailwoman/poi-executor.ts`'s `createPOIExecutor`, whose `POIQueryResult`
132
145
  * return type is synchronous by interface. See `poi-intent.ts`'s `deps.execute`).
133
146
  */
134
147
  reverseGeocodeSync(lat, lon, opts = {}) {
@@ -173,7 +186,7 @@ export class WOFReverseGeocoder {
173
186
  // Approximate descent into finer tiers than the winner.
174
187
  let current = winner;
175
188
  let currentConfirmed = winnerConfirmed;
176
- let currentDistanceKm = currentConfirmed ? undefined : haversineKm(lat, lon, current.lat, current.lon);
189
+ let currentDistanceKm = currentConfirmed ? null : haversineKm(lat, lon, current.lat, current.lon);
177
190
  for (const tier of DESCENT_TIERS) {
178
191
  if (placetypeDepth(tier) <= placetypeDepth(current.placetype))
179
192
  continue;
@@ -182,14 +195,14 @@ export class WOFReverseGeocoder {
182
195
  const kids = this.#descendants(current.id, tier, lat, lon, maxApproximateKm);
183
196
  let next = null;
184
197
  let nextConfirmed = false;
185
- let nextKm;
198
+ let nextKm = null;
186
199
  let bestKm = Infinity;
187
200
  for (const k of kids) {
188
201
  const contains = geometryContains(this.#geometry(k.id), lon, lat);
189
202
  if (contains === true) {
190
203
  next = k;
191
204
  nextConfirmed = true;
192
- nextKm = undefined;
205
+ nextKm = null;
193
206
  break;
194
207
  }
195
208
  if (contains === false)
@@ -216,14 +229,26 @@ export class WOFReverseGeocoder {
216
229
  const byID = new Map([[current.id, toPlaceCandidate(current, currentDistanceKm)]]);
217
230
  for (const a of ancestorLineage(this.#admin, current.id)) {
218
231
  if (!byID.has(a.id)) {
219
- byID.set(a.id, { ...a, placetype: a.placetype, country: a.country ?? "", score: 0 });
232
+ byID.set(a.id, {
233
+ ...ABSENT_CANDIDATE_FIELDS,
234
+ ...a,
235
+ placetype: a.placetype,
236
+ country: a.country ?? "",
237
+ score: 0,
238
+ });
220
239
  }
221
240
  }
222
241
  if (!byID.has(winner.id)) {
223
242
  byID.set(winner.id, toPlaceCandidate(winner));
224
243
  for (const a of ancestorLineage(this.#admin, winner.id)) {
225
244
  if (!byID.has(a.id)) {
226
- byID.set(a.id, { ...a, placetype: a.placetype, country: a.country ?? "", score: 0 });
245
+ byID.set(a.id, {
246
+ ...ABSENT_CANDIDATE_FIELDS,
247
+ ...a,
248
+ placetype: a.placetype,
249
+ country: a.country ?? "",
250
+ score: 0,
251
+ });
227
252
  }
228
253
  }
229
254
  }
@@ -1 +1 @@
1
- {"version":3,"file":"reverse.js","sourceRoot":"","sources":["../lib/reverse.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"reverse.js","sourceRoot":"","sources":["../lib/reverse.ts"],"names":[],"mappings":"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"}
package/out/schema.d.ts CHANGED
@@ -13,6 +13,7 @@
13
13
  * - Whosonfirst SQLite readme: https://github.com/whosonfirst/go-whosonfirst-sqlite
14
14
  * - Per-table sources under https://github.com/whosonfirst/go-whosonfirst-sqlite-features
15
15
  */
16
+ import type { KeyValueMetaTable } from "@mailwoman/sqlite/database-schema";
16
17
  /**
17
18
  * The FTS5 virtual table this package builds on first open.
18
19
  * It is local to this repository.
@@ -183,18 +184,8 @@ export interface CoincidentRolesTable {
183
184
  *
184
185
  * The build and augment writers adopt it so a column rename is a compile error on both sides.
185
186
  */
186
- /**
187
- * The provenance row every built extract includes: source fingerprints stored with
188
- * the database rather than in a document that can drift from it.
189
- *
190
- * Written by the postcode builders in `mailwoman/gazetteer-pipeline`.
191
- */
192
- export interface ExtractMetaTable {
193
- key: string;
194
- value: string | null;
195
- }
196
187
  export interface WOFDatabase {
197
- meta: ExtractMetaTable;
188
+ meta: KeyValueMetaTable;
198
189
  place_search: PlaceSearchTable;
199
190
  spr: SprTable;
200
191
  names: NamesTable;
@@ -1 +1 @@
1
- {"version":3,"file":"schema.d.ts","sourceRoot":"","sources":["../lib/schema.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"schema.d.ts","sourceRoot":"","sources":["../lib/schema.ts"],"names":[],"mappings":"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"}
@@ -20,6 +20,6 @@ export declare class SqliteConventionSource<DB> implements ConventionSource {
20
20
  * @param schema The schema that holds the convention table, either `main` or an attached extract's name.
21
21
  */
22
22
  constructor(db: DatabaseClient<DB>, schema: string);
23
- get(wofID: number): Convention | undefined;
23
+ get(wofID: number): Convention | null;
24
24
  }
25
25
  //# sourceMappingURL=convention-source.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"convention-source.d.ts","sourceRoot":"","sources":["../../lib/sqlite/convention-source.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAGH,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,0BAA0B,CAAA;AAE9D,OAAO,EAA4B,KAAK,UAAU,EAAE,KAAK,gBAAgB,EAAE,MAAM,aAAa,CAAA;AAE9F;;;;;GAKG;AACH,qBAAa,sBAAsB,CAAC,EAAE,CAAE,YAAW,gBAAgB;;IAMlE;;;;;OAKG;IACH,YAAY,EAAE,EAAE,cAAc,CAAC,EAAE,CAAC,EAAE,MAAM,EAAE,MAAM,EAGjD;IAED,GAAG,CAAC,KAAK,EAAE,MAAM,GAAG,UAAU,GAAG,SAAS,CAqBzC;CACD"}
1
+ {"version":3,"file":"convention-source.d.ts","sourceRoot":"","sources":["../../lib/sqlite/convention-source.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAGH,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,0BAA0B,CAAA;AAE9D,OAAO,EAA4B,KAAK,UAAU,EAAE,KAAK,gBAAgB,EAAE,MAAM,aAAa,CAAA;AAE9F;;;;;GAKG;AACH,qBAAa,sBAAsB,CAAC,EAAE,CAAE,YAAW,gBAAgB;;IAMlE;;;;;OAKG;IACH,YAAY,EAAE,EAAE,cAAc,CAAC,EAAE,CAAC,EAAE,MAAM,EAAE,MAAM,EAGjD;IAED,GAAG,CAAC,KAAK,EAAE,MAAM,GAAG,UAAU,GAAG,IAAI,CAqBpC;CACD"}
@@ -28,7 +28,7 @@ export class SqliteConventionSource {
28
28
  get(wofID) {
29
29
  const cached = this.#cache.get(wofID);
30
30
  if (cached !== undefined)
31
- return cached ?? undefined;
31
+ return cached;
32
32
  let value = null;
33
33
  try {
34
34
  const row = this.#db
@@ -42,7 +42,7 @@ export class SqliteConventionSource {
42
42
  value = null;
43
43
  }
44
44
  this.#cache.set(wofID, value);
45
- return value ?? undefined;
45
+ return value;
46
46
  }
47
47
  }
48
48
  //# sourceMappingURL=convention-source.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"convention-source.js","sourceRoot":"","sources":["../../lib/sqlite/convention-source.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH,OAAO,EAAE,cAAc,EAAE,MAAM,sBAAsB,CAAA;AAGrD,OAAO,EAAE,wBAAwB,EAA0C,MAAM,aAAa,CAAA;AAE9F;;;;;GAKG;AACH,MAAM,OAAO,sBAAsB;IACzB,GAAG,CAAoB;IACvB,OAAO,CAAQ;IAEf,MAAM,GAAG,IAAI,GAAG,EAA6B,CAAA;IAEtD;;;;;OAKG;IACH,YAAY,EAAsB,EAAE,MAAc;QACjD,IAAI,CAAC,GAAG,GAAG,EAAE,CAAA;QACb,IAAI,CAAC,OAAO,GAAG,MAAM,CAAA;IACtB,CAAC;IAED,GAAG,CAAC,KAAa;QAChB,MAAM,MAAM,GAAG,IAAI,CAAC,MAAM,CAAC,GAAG,CAAC,KAAK,CAAC,CAAA;QAErC,IAAI,MAAM,KAAK,SAAS;YAAE,OAAO,MAAM,IAAI,SAAS,CAAA;QACpD,IAAI,KAAK,GAAsB,IAAI,CAAA;QAEnC,IAAI,CAAC;YACJ,MAAM,GAAG,GAAG,IAAI,CAAC,GAAG;iBAClB,OAAO,CAAC,0BAA0B,IAAI,CAAC,OAAO,IAAI,wBAAwB,mBAAmB,CAAC;iBAC9F,GAAG,CAAC,KAAK,CAAuC,CAAA;YAElD,IAAI,GAAG,EAAE,UAAU,EAAE,CAAC;gBACrB,KAAK,GAAG,cAAc,CAAa,GAAG,CAAC,UAAU,CAAC,CAAA;YACnD,CAAC;QACF,CAAC;QAAC,MAAM,CAAC;YACR,KAAK,GAAG,IAAI,CAAA;QACb,CAAC;QAED,IAAI,CAAC,MAAM,CAAC,GAAG,CAAC,KAAK,EAAE,KAAK,CAAC,CAAA;QAE7B,OAAO,KAAK,IAAI,SAAS,CAAA;IAC1B,CAAC;CACD"}
1
+ {"version":3,"file":"convention-source.js","sourceRoot":"","sources":["../../lib/sqlite/convention-source.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH,OAAO,EAAE,cAAc,EAAE,MAAM,sBAAsB,CAAA;AAGrD,OAAO,EAAE,wBAAwB,EAA0C,MAAM,aAAa,CAAA;AAE9F;;;;;GAKG;AACH,MAAM,OAAO,sBAAsB;IACzB,GAAG,CAAoB;IACvB,OAAO,CAAQ;IAEf,MAAM,GAAG,IAAI,GAAG,EAA6B,CAAA;IAEtD;;;;;OAKG;IACH,YAAY,EAAsB,EAAE,MAAc;QACjD,IAAI,CAAC,GAAG,GAAG,EAAE,CAAA;QACb,IAAI,CAAC,OAAO,GAAG,MAAM,CAAA;IACtB,CAAC;IAED,GAAG,CAAC,KAAa;QAChB,MAAM,MAAM,GAAG,IAAI,CAAC,MAAM,CAAC,GAAG,CAAC,KAAK,CAAC,CAAA;QAErC,IAAI,MAAM,KAAK,SAAS;YAAE,OAAO,MAAM,CAAA;QACvC,IAAI,KAAK,GAAsB,IAAI,CAAA;QAEnC,IAAI,CAAC;YACJ,MAAM,GAAG,GAAG,IAAI,CAAC,GAAG;iBAClB,OAAO,CAAC,0BAA0B,IAAI,CAAC,OAAO,IAAI,wBAAwB,mBAAmB,CAAC;iBAC9F,GAAG,CAAC,KAAK,CAAuC,CAAA;YAElD,IAAI,GAAG,EAAE,UAAU,EAAE,CAAC;gBACrB,KAAK,GAAG,cAAc,CAAa,GAAG,CAAC,UAAU,CAAC,CAAA;YACnD,CAAC;QACF,CAAC;QAAC,MAAM,CAAC;YACR,KAAK,GAAG,IAAI,CAAA;QACb,CAAC;QAED,IAAI,CAAC,MAAM,CAAC,GAAG,CAAC,KAAK,EAAE,KAAK,CAAC,CAAA;QAE7B,OAAO,KAAK,CAAA;IACb,CAAC;CACD"}
@@ -10,7 +10,7 @@ import type { DatabaseClient, SQLInputValue } from "@mailwoman/sqlite/client";
10
10
  *
11
11
  * `StatementSync` accepts any `SQLInputValue[]`, which would erase tagged key types at the call site.
12
12
  */
13
- export type PreparedGet<Parameters extends SQLInputValue[], Row> = (...parameters: Parameters) => Row | undefined;
13
+ export type PreparedGet<Parameters extends SQLInputValue[], Row> = (...parameters: Parameters) => Row | null;
14
14
  /**
15
15
  * Prepares a single-row query with a typed parameter tuple.
16
16
  */
@@ -1 +1 @@
1
- {"version":3,"file":"utils.d.ts","sourceRoot":"","sources":["../../lib/sqlite/utils.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAGH,OAAO,KAAK,EAAE,cAAc,EAAE,aAAa,EAAE,MAAM,0BAA0B,CAAA;AAG7E;;;;GAIG;AACH,MAAM,MAAM,WAAW,CAAC,UAAU,SAAS,aAAa,EAAE,EAAE,GAAG,IAAI,CAAC,GAAG,UAAU,EAAE,UAAU,KAAK,GAAG,GAAG,SAAS,CAAA;AAEjH;;GAEG;AACH,wBAAgB,UAAU,CAAC,UAAU,SAAS,aAAa,EAAE,EAAE,GAAG,EAAE,EAAE,EACrE,EAAE,EAAE,cAAc,CAAC,EAAE,CAAC,EACtB,GAAG,EAAE,MAAM,GACT,WAAW,CAAC,UAAU,EAAE,GAAG,CAAC,CAI9B;AAED;;GAEG;AACH,MAAM,MAAM,WAAW,CAAC,UAAU,SAAS,aAAa,EAAE,EAAE,GAAG,IAAI,CAAC,GAAG,UAAU,EAAE,UAAU,KAAK,GAAG,EAAE,CAAA;AAEvG;;GAEG;AACH,wBAAgB,UAAU,CAAC,UAAU,SAAS,aAAa,EAAE,EAAE,GAAG,EAAE,EAAE,EACrE,EAAE,EAAE,cAAc,CAAC,EAAE,CAAC,EACtB,GAAG,EAAE,MAAM,GACT,WAAW,CAAC,UAAU,EAAE,GAAG,CAAC,CAI9B;AAED;;;;;;GAMG;AACH,wBAAgB,QAAQ,CAAC,EAAE,EAAE,EAAE,EAAE,cAAc,CAAC,EAAE,CAAC,EAAE,IAAI,EAAE,MAAM,GAAG,OAAO,CAM1E;AAED;;;;;;;;;GASG;AACH,wBAAgB,SAAS,CAAC,EAAE,EAAE,EAAE,EAAE,cAAc,CAAC,EAAE,CAAC,EAAE,KAAK,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,GAAG,OAAO,CAM5F"}
1
+ {"version":3,"file":"utils.d.ts","sourceRoot":"","sources":["../../lib/sqlite/utils.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAGH,OAAO,KAAK,EAAE,cAAc,EAAE,aAAa,EAAE,MAAM,0BAA0B,CAAA;AAG7E;;;;GAIG;AACH,MAAM,MAAM,WAAW,CAAC,UAAU,SAAS,aAAa,EAAE,EAAE,GAAG,IAAI,CAAC,GAAG,UAAU,EAAE,UAAU,KAAK,GAAG,GAAG,IAAI,CAAA;AAE5G;;GAEG;AACH,wBAAgB,UAAU,CAAC,UAAU,SAAS,aAAa,EAAE,EAAE,GAAG,EAAE,EAAE,EACrE,EAAE,EAAE,cAAc,CAAC,EAAE,CAAC,EACtB,GAAG,EAAE,MAAM,GACT,WAAW,CAAC,UAAU,EAAE,GAAG,CAAC,CAI9B;AAED;;GAEG;AACH,MAAM,MAAM,WAAW,CAAC,UAAU,SAAS,aAAa,EAAE,EAAE,GAAG,IAAI,CAAC,GAAG,UAAU,EAAE,UAAU,KAAK,GAAG,EAAE,CAAA;AAEvG;;GAEG;AACH,wBAAgB,UAAU,CAAC,UAAU,SAAS,aAAa,EAAE,EAAE,GAAG,EAAE,EAAE,EACrE,EAAE,EAAE,cAAc,CAAC,EAAE,CAAC,EACtB,GAAG,EAAE,MAAM,GACT,WAAW,CAAC,UAAU,EAAE,GAAG,CAAC,CAI9B;AAED;;;;;;GAMG;AACH,wBAAgB,QAAQ,CAAC,EAAE,EAAE,EAAE,EAAE,cAAc,CAAC,EAAE,CAAC,EAAE,IAAI,EAAE,MAAM,GAAG,OAAO,CAM1E;AAED;;;;;;;;;GASG;AACH,wBAAgB,SAAS,CAAC,EAAE,EAAE,EAAE,EAAE,cAAc,CAAC,EAAE,CAAC,EAAE,KAAK,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,GAAG,OAAO,CAM5F"}
@@ -50,7 +50,7 @@ export class StreetCentroidSqliteLookup {
50
50
  const streetNorm = normalizeStreetForKeyLocale(query.street, streetLocaleForSurface(query.street, this.#locale));
51
51
  if (!streetNorm)
52
52
  return null;
53
- let row;
53
+ let row = null;
54
54
  if (query.postcode?.trim()) {
55
55
  row = this.#byPostcode(query.postcode.trim(), streetNorm);
56
56
  }
@@ -1 +1 @@
1
- {"version":3,"file":"centroid.js","sourceRoot":"","sources":["../../lib/street/centroid.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"centroid.js","sourceRoot":"","sources":["../../lib/street/centroid.ts"],"names":[],"mappings":"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"}
@@ -34,14 +34,12 @@ export interface BuildStreetMorphologyFSTOpts {
34
34
  /**
35
35
  * Optional locale filter — only ingest these locale subfolders.
36
36
  *
37
- * Defaults to all that have a `street_types.txt`.
37
+ * @defaultValue all that have a `street_types.txt`.
38
38
  */
39
39
  locales?: string[];
40
40
  /**
41
41
  * Minimum length (in characters, post-normalization) of variant surface forms to insert into the trie.
42
42
  *
43
- * Defaults to 3.
44
- *
45
43
  * Rationale: libpostal's street_types dictionaries contain 1-2 character abbreviations
46
44
  * (`a`, `b`, `av`, `bd`, `br`, ...) that collide with non-affix tokens at parse time,
47
45
  * including US state abbreviations (`or`, `CA`, `ND`, `NY`).
@@ -51,6 +49,8 @@ export interface BuildStreetMorphologyFSTOpts {
51
49
  * abbreviations as `street_suffix`.
52
50
  *
53
51
  * A minimum length of 3 retains useful forms (`ave`, `blvd`, `rue`, `str`) while filtering out the noise.
52
+ *
53
+ * @defaultValue `3`
54
54
  */
55
55
  minVariantLength?: number;
56
56
  /**
@@ -1 +1 @@
1
- {"version":3,"file":"builder.d.ts","sourceRoot":"","sources":["../../../../lib/street/morphology/fst/builder.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;;GAwBG;AAGH,OAAO,EAAe,KAAK,eAAe,EAAE,MAAM,SAAS,CAAA;AAK3D,OAAO,EAAE,UAAU,EAAmB,MAAM,cAAc,CAAA;AAC1D,OAAO,KAAK,EAAE,aAAa,EAAc,MAAM,YAAY,CAAA;AAa3D,MAAM,WAAW,4BAA4B;IAC5C;;OAEG;IACH,eAAe,EAAE,eAAe,CAAA;IAChC;;;;OAIG;IACH,OAAO,CAAC,EAAE,MAAM,EAAE,CAAA;IAClB;;;;;;;;;;;;;;OAcG;IACH,gBAAgB,CAAC,EAAE,MAAM,CAAA;IACzB;;OAEG;IACH,UAAU,CAAC,EAAE,CAAC,KAAK,EAAE,MAAM,EAAE,MAAM,CAAC,EAAE,MAAM,KAAK,IAAI,CAAA;CACrD;AAED,MAAM,WAAW,8BAA8B;IAC9C,OAAO,EAAE,UAAU,CAAA;IACnB,UAAU,EAAE,aAAa,CAAA;IACzB,cAAc,EAAE,MAAM,CAAA;IACtB,YAAY,EAAE,MAAM,CAAA;IACpB,WAAW,EAAE,MAAM,CAAA;IACnB,OAAO,EAAE,MAAM,EAAE,CAAA;CACjB;AAsBD,wBAAsB,wBAAwB,CAC7C,IAAI,EAAE,4BAA4B,GAChC,OAAO,CAAC,8BAA8B,CAAC,CAmKzC"}
1
+ {"version":3,"file":"builder.d.ts","sourceRoot":"","sources":["../../../../lib/street/morphology/fst/builder.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;;GAwBG;AAIH,OAAO,EAAe,KAAK,eAAe,EAAE,MAAM,SAAS,CAAA;AAK3D,OAAO,EAAE,UAAU,EAAmB,MAAM,cAAc,CAAA;AAC1D,OAAO,KAAK,EAAE,aAAa,EAAc,MAAM,YAAY,CAAA;AAa3D,MAAM,WAAW,4BAA4B;IAC5C;;OAEG;IACH,eAAe,EAAE,eAAe,CAAA;IAChC;;;;OAIG;IACH,OAAO,CAAC,EAAE,MAAM,EAAE,CAAA;IAClB;;;;;;;;;;;;;;OAcG;IACH,gBAAgB,CAAC,EAAE,MAAM,CAAA;IACzB;;OAEG;IACH,UAAU,CAAC,EAAE,CAAC,KAAK,EAAE,MAAM,EAAE,MAAM,CAAC,EAAE,MAAM,KAAK,IAAI,CAAA;CACrD;AAED,MAAM,WAAW,8BAA8B;IAC9C,OAAO,EAAE,UAAU,CAAA;IACnB,UAAU,EAAE,aAAa,CAAA;IACzB,cAAc,EAAE,MAAM,CAAA;IACtB,YAAY,EAAE,MAAM,CAAA;IACpB,WAAW,EAAE,MAAM,CAAA;IACnB,OAAO,EAAE,MAAM,EAAE,CAAA;CACjB;AAsBD,wBAAsB,wBAAwB,CAC7C,IAAI,EAAE,4BAA4B,GAChC,OAAO,CAAC,8BAA8B,CAAC,CA2KzC"}
@@ -23,7 +23,8 @@
23
23
  * Output: an `FSTMatcher` ready to serialize via `serializeFST` to e.g.
24
24
  * `fst-street-morphology.bin`.
25
25
  */
26
- import { isDirectory, isFile, readLocalTextFile } from "@mailwoman/core/fs/readers";
26
+ import { readLocalTextFile } from "@mailwoman/core/fs/readers";
27
+ import { isDirectory, isFile } from "@mailwoman/core/fs/readers/stat";
27
28
  import { PathBuilder } from "path-ts";
28
29
  import { TextSpliterator } from "spliterator";
29
30
  import { Globerator } from "spliterator/node/fs";
@@ -47,7 +48,7 @@ const STREET_TYPES_FILENAME = "street_types.txt";
47
48
  */
48
49
  function parseLine(line) {
49
50
  const trimmed = line.trim();
50
- if (!trimmed.length || trimmed.startsWith("#"))
51
+ if (!trimmed || trimmed.startsWith("#"))
51
52
  return null;
52
53
  const parts = TextSpliterator.from(trimmed, { delimiter: "|" }).toArray();
53
54
  if (!parts.length)
@@ -144,11 +145,12 @@ export async function buildStreetMorphologyFST(opts) {
144
145
  // (Avenue is almost never anything but street-typing).
145
146
  // The morphology prior caps bias separately.
146
147
  // This value just feeds the cap formula `referential * cap`.
147
- // No encyclopedic field — a street affix is not a place and has no article.
148
- // Absence here is the correct statement.
148
+ // No encyclopedic score — a street affix is not a place and has no article.
149
149
  referential: 1,
150
+ encyclopedic: null,
150
151
  lat: 0,
151
152
  lon: 0,
153
+ crossCountryBranches: null,
152
154
  };
153
155
  for (const variant of variants) {
154
156
  const tokens = normalizeTokens(variant);
@@ -175,7 +177,14 @@ export async function buildStreetMorphologyFST(opts) {
175
177
  edgeCount,
176
178
  nameInsertions: insertCount,
177
179
  importanceMatches: 0, // No importance scoring for morphology — fixed at 1.0.
180
+ encyclopedicMatches: null,
181
+ importanceSource: null,
178
182
  sourceDB: dictionariesDir.toString(),
183
+ sourceDBMD5: null,
184
+ sourceDBBytes: null,
185
+ modelCardVersion: null,
186
+ exclusionPolicy: null,
187
+ excludedInsertions: null,
179
188
  };
180
189
  return {
181
190
  matcher,
@@ -1 +1 @@
1
- {"version":3,"file":"builder.js","sourceRoot":"","sources":["../../../../lib/street/morphology/fst/builder.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"builder.js","sourceRoot":"","sources":["../../../../lib/street/morphology/fst/builder.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;;GAwBG;AAEH,OAAO,EAAE,iBAAiB,EAAE,MAAM,4BAA4B,CAAA;AAC9D,OAAO,EAAE,WAAW,EAAE,MAAM,EAAE,MAAM,iCAAiC,CAAA;AACrE,OAAO,EAAE,WAAW,EAAwB,MAAM,SAAS,CAAA;AAC3D,OAAO,EAAE,eAAe,EAAE,MAAM,aAAa,CAAA;AAC7C,OAAO,EAAE,UAAU,EAAE,MAAM,qBAAqB,CAAA;AAGhD,OAAO,EAAE,UAAU,EAAE,eAAe,EAAE,MAAM,cAAc,CAAA;AAG1D;;;;;;GAMG;AACH,MAAM,uBAAuB,GAAG,aAAa,CAAA;AAE7C,MAAM,qBAAqB,GAAG,kBAAkB,CAAA;AA4ChD;;;;;;;GAOG;AACH,SAAS,SAAS,CAAC,IAAY;IAC9B,MAAM,OAAO,GAAG,IAAI,CAAC,IAAI,EAAE,CAAA;IAE3B,IAAI,CAAC,OAAO,IAAI,OAAO,CAAC,UAAU,CAAC,GAAG,CAAC;QAAE,OAAO,IAAI,CAAA;IAEpD,MAAM,KAAK,GAAG,eAAe,CAAC,IAAI,CAAC,OAAO,EAAE,EAAE,SAAS,EAAE,GAAG,EAAE,CAAC,CAAC,OAAO,EAAE,CAAA;IAEzE,IAAI,CAAC,KAAK,CAAC,MAAM;QAAE,OAAO,IAAI,CAAA;IAE9B,OAAO,EAAE,SAAS,EAAE,KAAK,CAAC,CAAC,CAAE,EAAE,QAAQ,EAAE,KAAK,EAAE,CAAA;AACjD,CAAC;AAED,MAAM,CAAC,KAAK,UAAU,wBAAwB,CAC7C,IAAkC;IAElC,MAAM,QAAQ,GAAG,IAAI,CAAC,UAAU,IAAI,CAAC,GAAG,EAAE,GAAE,CAAC,CAAC,CAAA;IAC9C,MAAM,gBAAgB,GAAG,IAAI,CAAC,gBAAgB,IAAI,CAAC,CAAA;IACnD,MAAM,eAAe,GAAG,WAAW,CAAC,IAAI,CAAC,IAAI,CAAC,eAAe,CAAC,CAAA;IAE9D,iGAAiG;IACjG,IAAI,OAAiB,CAAA;IAErB,oGAAoG;IACpG,IAAI,IAAI,CAAC,OAAO,IAAI,IAAI,CAAC,OAAO,CAAC,MAAM,EAAE,CAAC;QACzC,OAAO,GAAG,IAAI,CAAC,OAAO,CAAA;IACvB,CAAC;SAAM,CAAC;QACP,MAAM,OAAO,GAAG,MAAM,UAAU,CAAC,IAAI,CAAC,GAAG,EAAE;YAC1C,GAAG,EAAE,eAAe;YACpB,QAAQ,EAAE,KAAK;YACf,SAAS,EAAE,KAAK;SAChB,CAAC,CAAC,OAAO,EAAE,CAAA;QAEZ,MAAM,YAAY,GAA6B,EAAE,CAAA;QAEjD,KAAK,MAAM,KAAK,IAAI,OAAO,EAAE,CAAC;YAC7B,MAAM,UAAU,GAAG,eAAe,CAAC,KAAK,CAAC,CAAA;YAEzC,IAAI,CAAC,CAAC,MAAM,WAAW,CAAC,UAAU,CAAC,CAAC,EAAE,CAAC;gBACtC,YAAY,CAAC,IAAI,CAAC,CAAC,KAAK,EAAE,KAAK,CAAC,CAAC,CAAA;gBAEjC,SAAQ;YACT,CAAC;YAED,YAAY,CAAC,IAAI,CAAC,CAAC,KAAK,EAAE,MAAM,MAAM,CAAC,UAAU,CAAC,qBAAqB,CAAC,CAAC,CAAC,CAAC,CAAA;QAC5E,CAAC;QAED,OAAO,GAAG,YAAY,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,OAAO,CAAC,EAAE,EAAE,CAAC,OAAO,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,KAAK,CAAC,EAAE,EAAE,CAAC,KAAK,CAAC,CAAA;IAChF,CAAC;IAED,QAAQ,CAAC,UAAU,EAAE,SAAS,OAAO,CAAC,MAAM,iBAAiB,qBAAqB,EAAE,CAAC,CAAA;IAErF,0DAA0D;IAC1D,0GAA0G;IAC1G,MAAM,mBAAmB,GAAG,IAAI,GAAG,EAAuB,CAAA;IAE1D,KAAK,MAAM,MAAM,IAAI,OAAO,EAAE,CAAC;QAC9B,MAAM,QAAQ,GAAG,eAAe,CAAC,MAAM,EAAE,qBAAqB,CAAC,CAAA;QAC/D,MAAM,OAAO,GAAG,MAAM,iBAAiB,CAAC,QAAQ,CAAC,CAAA;QAEjD,KAAK,MAAM,IAAI,IAAI,eAAe,CAAC,IAAI,CAAC,OAAO,CAAC,EAAE,CAAC;YAClD,MAAM,MAAM,GAAG,SAAS,CAAC,IAAI,CAAC,CAAA;YAE9B,IAAI,CAAC,MAAM;gBAAE,SAAQ;YACrB,MAAM,QAAQ,GAAG,mBAAmB,CAAC,GAAG,CAAC,MAAM,CAAC,SAAS,CAAC,IAAI,IAAI,GAAG,EAAU,CAAA;YAE/E,KAAK,MAAM,OAAO,IAAI,MAAM,CAAC,QAAQ,EAAE,CAAC;gBACvC,QAAQ,CAAC,GAAG,CAAC,OAAO,CAAC,CAAA;YACtB,CAAC;YAED,mBAAmB,CAAC,GAAG,CAAC,MAAM,CAAC,SAAS,EAAE,QAAQ,CAAC,CAAA;QACpD,CAAC;IACF,CAAC;IAED,QAAQ,CAAC,SAAS,EAAE,aAAa,mBAAmB,CAAC,IAAI,oBAAoB,CAAC,CAAA;IAE9E,kCAAkC;IAClC,mCAAmC;IACnC,MAAM,gBAAgB,GAAG,CAAC,GAAG,mBAAmB,CAAC,IAAI,EAAE,CAAC,CAAC,QAAQ,EAAE,CAAA;IACnE,MAAM,gBAAgB,GAAG,IAAI,GAAG,EAAkB,CAAA;IAElD,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,gBAAgB,CAAC,MAAM,EAAE,CAAC,EAAE,EAAE,CAAC;QAClD,gBAAgB,CAAC,GAAG,CAAC,gBAAgB,CAAC,CAAC,CAAE,EAAE,uBAAuB,GAAG,CAAC,CAAC,CAAA;IACxE,CAAC;IAED,kBAAkB;IAClB,wFAAwF;IACxF,iFAAiF;IACjF,MAAM,KAAK,GAAc,CAAC,EAAE,KAAK,EAAE,IAAI,GAAG,EAAE,EAAE,MAAM,EAAE,EAAE,EAAE,CAAC,CAAA;IAE3D,SAAS,UAAU,CAAC,MAAgB,EAAE,KAAiB;QACtD,IAAI,CAAC,MAAM,CAAC,MAAM;YAAE,OAAM;QAC1B,IAAI,OAAO,GAAG,CAAC,CAAA;QAEf,KAAK,MAAM,CAAC,IAAI,MAAM,EAAE,CAAC;YACxB,MAAM,IAAI,GAAG,KAAK,CAAC,OAAO,CAAE,CAAA;YAC5B,IAAI,IAAI,GAAG,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,CAAC,CAAA;YAE5B,IAAI,IAAI,KAAK,SAAS,EAAE,CAAC;gBACxB,IAAI,GAAG,KAAK,CAAC,MAAM,CAAA;gBACnB,KAAK,CAAC,IAAI,CAAC,EAAE,KAAK,EAAE,IAAI,GAAG,EAAE,EAAE,MAAM,EAAE,EAAE,EAAE,CAAC,CAAA;gBAC5C,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,EAAE,IAAI,CAAC,CAAA;YACxB,CAAC;YAED,OAAO,GAAG,IAAI,CAAA;QACf,CAAC;QAED,MAAM,QAAQ,GAAG,KAAK,CAAC,OAAO,CAAE,CAAC,MAAM,CAAA;QAEvC,IAAI,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,KAAK,KAAK,KAAK,CAAC,KAAK,IAAI,CAAC,CAAC,SAAS,KAAK,KAAK,CAAC,SAAS,CAAC,EAAE,CAAC;YACvF,QAAQ,CAAC,IAAI,CAAC,KAAK,CAAC,CAAA;QACrB,CAAC;IACF,CAAC;IAED,IAAI,WAAW,GAAG,CAAC,CAAA;IACnB,IAAI,YAAY,GAAG,CAAC,CAAA;IAEpB,KAAK,MAAM,SAAS,IAAI,gBAAgB,EAAE,CAAC;QAC1C,MAAM,QAAQ,GAAG,mBAAmB,CAAC,GAAG,CAAC,SAAS,CAAE,CAAA;QACpD,MAAM,KAAK,GAAG,gBAAgB,CAAC,GAAG,CAAC,SAAS,CAAE,CAAA;QAE9C,MAAM,KAAK,GAAe;YACzB,KAAK;YACL,SAAS,EAAE,cAAc;YACzB,IAAI,EAAE,SAAS;YACf,WAAW,EAAE,EAAE;YACf,uEAAuE;YACvE,uDAAuD;YACvD,6CAA6C;YAC7C,6DAA6D;YAC7D,4EAA4E;YAC5E,WAAW,EAAE,CAAC;YACd,YAAY,EAAE,IAAI;YAClB,GAAG,EAAE,CAAC;YACN,GAAG,EAAE,CAAC;YACN,oBAAoB,EAAE,IAAI;SAC1B,CAAA;QAED,KAAK,MAAM,OAAO,IAAI,QAAQ,EAAE,CAAC;YAChC,MAAM,MAAM,GAAG,eAAe,CAAC,OAAO,CAAC,CAAA;YAEvC,IAAI,CAAC,MAAM,CAAC,MAAM;gBAAE,SAAQ;YAC5B,qFAAqF;YACrF,2FAA2F;YAC3F,MAAM,MAAM,GAAG,MAAM,CAAC,IAAI,CAAC,EAAE,CAAC,CAAA;YAE9B,IAAI,MAAM,CAAC,MAAM,GAAG,gBAAgB;gBAAE,SAAQ;YAC9C,UAAU,CAAC,MAAM,EAAE,KAAK,CAAC,CAAA;YAEzB,WAAW,EAAE,CAAA;YAEb,YAAY,EAAE,CAAA;QACf,CAAC;IACF,CAAC;IAED,QAAQ,CAAC,MAAM,EAAE,eAAe,KAAK,CAAC,MAAM,YAAY,WAAW,qBAAqB,CAAC,CAAA;IAEzF,MAAM,SAAS,GAAG,KAAK,CAAC,MAAM,CAAC,CAAC,GAAG,EAAE,CAAC,EAAE,EAAE,CAAC,GAAG,GAAG,CAAC,CAAC,KAAK,CAAC,IAAI,EAAE,CAAC,CAAC,CAAA;IACjE,MAAM,OAAO,GAAG,UAAU,CAAC,SAAS,CAAC,KAAK,CAAC,CAAA;IAE3C,MAAM,UAAU,GAAkB;QACjC,OAAO,EAAE,IAAI,IAAI,EAAE,CAAC,WAAW,EAAE;QACjC,SAAS,EAAE,OAAO,EAAE,kFAAkF;QACtG,UAAU,EAAE,KAAK,CAAC,MAAM;QACxB,UAAU,EAAE,gBAAgB,CAAC,MAAM;QACnC,SAAS;QACT,cAAc,EAAE,WAAW;QAC3B,iBAAiB,EAAE,CAAC,EAAE,uDAAuD;QAC7E,mBAAmB,EAAE,IAAI;QACzB,gBAAgB,EAAE,IAAI;QACtB,QAAQ,EAAE,eAAe,CAAC,QAAQ,EAAE;QACpC,WAAW,EAAE,IAAI;QACjB,aAAa,EAAE,IAAI;QACnB,gBAAgB,EAAE,IAAI;QACtB,eAAe,EAAE,IAAI;QACrB,kBAAkB,EAAE,IAAI;KACxB,CAAA;IAED,OAAO;QACN,OAAO;QACP,UAAU;QACV,cAAc,EAAE,gBAAgB,CAAC,MAAM;QACvC,YAAY;QACZ,WAAW;QACX,OAAO;KACP,CAAA;AACF,CAAC"}
@@ -41,13 +41,13 @@ export interface LoadStreetMorphologyFSTOpts {
41
41
  /**
42
42
  * Dictionaries dir for the build fallback.
43
43
  *
44
- * Defaults to core's bundled libpostal dictionaries.
44
+ * @defaultValue core's bundled libpostal dictionaries.
45
45
  */
46
46
  dictionariesDir?: PathBuilderLike;
47
47
  /**
48
48
  * Unreadable-artifact diagnostics.
49
49
  *
50
- * Defaults to silent (the caller owns its warn channel).
50
+ * @defaultValue silent (the caller owns its warn channel).
51
51
  */
52
52
  onWarn?: (message: string) => void;
53
53
  }
@@ -60,11 +60,11 @@ export interface LoadedStreetMorphologyFST {
60
60
  /**
61
61
  * The artifact path when `source === "artifact"`.
62
62
  */
63
- path?: PathBuilderLike;
63
+ path: PathBuilderLike | null;
64
64
  /**
65
65
  * Build provenance, read from the artifact trailer or copied from the fallback build.
66
66
  */
67
- provenance?: FSTProvenance;
67
+ provenance: FSTProvenance | null;
68
68
  }
69
69
  /**
70
70
  * Load the street-morphology matcher: sealed artifact first, per-process
@@ -1 +1 @@
1
- {"version":3,"file":"loader.d.ts","sourceRoot":"","sources":["../../../../lib/street/morphology/fst/loader.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;GAmBG;AAIH,OAAO,KAAK,EAAE,WAAW,EAAE,eAAe,EAAE,MAAM,SAAS,CAAA;AAE3D,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,cAAc,CAAA;AAE9C,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,YAAY,CAAA;AAI/C;;;GAGG;AACH,eAAO,MAAM,mCAAmC,8BAA8B,CAAA;AAE9E;;GAEG;AACH,wBAAgB,mCAAmC,IAAI,WAAW,CAEjE;AAED,MAAM,WAAW,2BAA2B;IAC3C;;;;;OAKG;IACH,YAAY,CAAC,EAAE,eAAe,CAAA;IAC9B;;;;OAIG;IACH,eAAe,CAAC,EAAE,eAAe,CAAA;IACjC;;;;OAIG;IACH,MAAM,CAAC,EAAE,CAAC,OAAO,EAAE,MAAM,KAAK,IAAI,CAAA;CAClC;AAED,MAAM,WAAW,yBAAyB;IACzC,OAAO,EAAE,UAAU,CAAA;IACnB;;OAEG;IACH,MAAM,EAAE,UAAU,GAAG,OAAO,CAAA;IAC5B;;OAEG;IACH,IAAI,CAAC,EAAE,eAAe,CAAA;IACtB;;OAEG;IACH,UAAU,CAAC,EAAE,aAAa,CAAA;CAC1B;AAED;;;GAGG;AACH,wBAAsB,uBAAuB,CAC5C,IAAI,GAAE,2BAAgC,GACpC,OAAO,CAAC,yBAAyB,CAAC,CAuBpC"}
1
+ {"version":3,"file":"loader.d.ts","sourceRoot":"","sources":["../../../../lib/street/morphology/fst/loader.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;GAmBG;AAKH,OAAO,KAAK,EAAE,WAAW,EAAE,eAAe,EAAE,MAAM,SAAS,CAAA;AAE3D,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,cAAc,CAAA;AAE9C,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,YAAY,CAAA;AAI/C;;;GAGG;AACH,eAAO,MAAM,mCAAmC,8BAA8B,CAAA;AAE9E;;GAEG;AACH,wBAAgB,mCAAmC,IAAI,WAAW,CAEjE;AAED,MAAM,WAAW,2BAA2B;IAC3C;;;;;OAKG;IACH,YAAY,CAAC,EAAE,eAAe,CAAA;IAC9B;;;;OAIG;IACH,eAAe,CAAC,EAAE,eAAe,CAAA;IACjC;;;;OAIG;IACH,MAAM,CAAC,EAAE,CAAC,OAAO,EAAE,MAAM,KAAK,IAAI,CAAA;CAClC;AAED,MAAM,WAAW,yBAAyB;IACzC,OAAO,EAAE,UAAU,CAAA;IACnB;;OAEG;IACH,MAAM,EAAE,UAAU,GAAG,OAAO,CAAA;IAC5B;;OAEG;IACH,IAAI,EAAE,eAAe,GAAG,IAAI,CAAA;IAC5B;;OAEG;IACH,UAAU,EAAE,aAAa,GAAG,IAAI,CAAA;CAChC;AAED;;;GAGG;AACH,wBAAsB,uBAAuB,CAC5C,IAAI,GAAE,2BAAgC,GACpC,OAAO,CAAC,yBAAyB,CAAC,CAuBpC"}
@@ -18,7 +18,8 @@
18
18
  * Browsers cannot take the fallback because they have no filesystem API. They deserialize the same
19
19
  * artifact through `fst-deserialize-web.ts` (see the docs demo loader).
20
20
  */
21
- import { pathExists, readLocalBuffer } from "@mailwoman/core/fs/readers";
21
+ import { readLocalBuffer } from "@mailwoman/core/fs/readers";
22
+ import { pathExists } from "@mailwoman/core/fs/readers/stat";
22
23
  import { resourceDictionaryPath } from "@mailwoman/core/paths";
23
24
  import { deserializeFST, readFSTProvenance } from "#fst/serialize";
24
25
  import { wofDatabasePath } from "#paths";
@@ -46,7 +47,7 @@ export async function loadStreetMorphologyFST(opts = {}) {
46
47
  const buf = await readLocalBuffer(artifactPath);
47
48
  const matcher = deserializeFST(buf);
48
49
  const provenance = readFSTProvenance(buf);
49
- return { matcher, source: "artifact", path: artifactPath, ...(provenance ? { provenance } : {}) };
50
+ return { matcher, source: "artifact", path: artifactPath, provenance };
50
51
  }
51
52
  catch (error) {
52
53
  warn(`street-morphology artifact at ${artifactPath} unreadable (${error.message}) — falling back to the dictionary build`);
@@ -55,6 +56,6 @@ export async function loadStreetMorphologyFST(opts = {}) {
55
56
  const built = await buildStreetMorphologyFST({
56
57
  dictionariesDir: (opts.dictionariesDir ?? resourceDictionaryPath("libpostal")).toString(),
57
58
  });
58
- return { matcher: built.matcher, source: "built", provenance: built.provenance };
59
+ return { matcher: built.matcher, source: "built", path: null, provenance: built.provenance };
59
60
  }
60
61
  //# sourceMappingURL=loader.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"loader.js","sourceRoot":"","sources":["../../../../lib/street/morphology/fst/loader.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;GAmBG;AAEH,OAAO,EAAE,UAAU,EAAE,eAAe,EAAE,MAAM,4BAA4B,CAAA;AACxE,OAAO,EAAE,sBAAsB,EAAE,MAAM,uBAAuB,CAAA;AAI9D,OAAO,EAAE,cAAc,EAAE,iBAAiB,EAAE,MAAM,gBAAgB,CAAA;AAElE,OAAO,EAAE,eAAe,EAAE,MAAM,QAAQ,CAAA;AACxC,OAAO,EAAE,wBAAwB,EAAE,MAAM,gCAAgC,CAAA;AAEzE;;;GAGG;AACH,MAAM,CAAC,MAAM,mCAAmC,GAAG,2BAA2B,CAAA;AAE9E;;GAEG;AACH,MAAM,UAAU,mCAAmC;IAClD,OAAO,eAAe,CAAC,mCAAmC,CAAC,CAAA;AAC5D,CAAC;AAwCD;;;GAGG;AACH,MAAM,CAAC,KAAK,UAAU,uBAAuB,CAC5C,IAAI,GAAgC,EAAE;IAEtC,MAAM,IAAI,GAAG,IAAI,CAAC,MAAM,IAAI,CAAC,GAAG,EAAE,GAAE,CAAC,CAAC,CAAA;IACtC,MAAM,YAAY,GAAG,IAAI,CAAC,YAAY,IAAI,mCAAmC,EAAE,CAAA;IAE/E,IAAI,MAAM,UAAU,CAAC,YAAY,CAAC,EAAE,CAAC;QACpC,IAAI,CAAC;YACJ,MAAM,GAAG,GAAG,MAAM,eAAe,CAAC,YAAY,CAAC,CAAA;YAC/C,MAAM,OAAO,GAAG,cAAc,CAAC,GAAG,CAAC,CAAA;YACnC,MAAM,UAAU,GAAG,iBAAiB,CAAC,GAAG,CAAC,CAAA;YAEzC,OAAO,EAAE,OAAO,EAAE,MAAM,EAAE,UAAU,EAAE,IAAI,EAAE,YAAY,EAAE,GAAG,CAAC,UAAU,CAAC,CAAC,CAAC,EAAE,UAAU,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,CAAA;QAClG,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YAChB,IAAI,CACH,iCAAiC,YAAY,gBAAiB,KAAe,CAAC,OAAO,0CAA0C,CAC/H,CAAA;QACF,CAAC;IACF,CAAC;IAED,MAAM,KAAK,GAAG,MAAM,wBAAwB,CAAC;QAC5C,eAAe,EAAE,CAAC,IAAI,CAAC,eAAe,IAAI,sBAAsB,CAAC,WAAW,CAAC,CAAC,CAAC,QAAQ,EAAE;KACzF,CAAC,CAAA;IAEF,OAAO,EAAE,OAAO,EAAE,KAAK,CAAC,OAAO,EAAE,MAAM,EAAE,OAAO,EAAE,UAAU,EAAE,KAAK,CAAC,UAAU,EAAE,CAAA;AACjF,CAAC"}
1
+ {"version":3,"file":"loader.js","sourceRoot":"","sources":["../../../../lib/street/morphology/fst/loader.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;GAmBG;AAEH,OAAO,EAAE,eAAe,EAAE,MAAM,4BAA4B,CAAA;AAC5D,OAAO,EAAE,UAAU,EAAE,MAAM,iCAAiC,CAAA;AAC5D,OAAO,EAAE,sBAAsB,EAAE,MAAM,uBAAuB,CAAA;AAI9D,OAAO,EAAE,cAAc,EAAE,iBAAiB,EAAE,MAAM,gBAAgB,CAAA;AAElE,OAAO,EAAE,eAAe,EAAE,MAAM,QAAQ,CAAA;AACxC,OAAO,EAAE,wBAAwB,EAAE,MAAM,gCAAgC,CAAA;AAEzE;;;GAGG;AACH,MAAM,CAAC,MAAM,mCAAmC,GAAG,2BAA2B,CAAA;AAE9E;;GAEG;AACH,MAAM,UAAU,mCAAmC;IAClD,OAAO,eAAe,CAAC,mCAAmC,CAAC,CAAA;AAC5D,CAAC;AAwCD;;;GAGG;AACH,MAAM,CAAC,KAAK,UAAU,uBAAuB,CAC5C,IAAI,GAAgC,EAAE;IAEtC,MAAM,IAAI,GAAG,IAAI,CAAC,MAAM,IAAI,CAAC,GAAG,EAAE,GAAE,CAAC,CAAC,CAAA;IACtC,MAAM,YAAY,GAAG,IAAI,CAAC,YAAY,IAAI,mCAAmC,EAAE,CAAA;IAE/E,IAAI,MAAM,UAAU,CAAC,YAAY,CAAC,EAAE,CAAC;QACpC,IAAI,CAAC;YACJ,MAAM,GAAG,GAAG,MAAM,eAAe,CAAC,YAAY,CAAC,CAAA;YAC/C,MAAM,OAAO,GAAG,cAAc,CAAC,GAAG,CAAC,CAAA;YACnC,MAAM,UAAU,GAAG,iBAAiB,CAAC,GAAG,CAAC,CAAA;YAEzC,OAAO,EAAE,OAAO,EAAE,MAAM,EAAE,UAAU,EAAE,IAAI,EAAE,YAAY,EAAE,UAAU,EAAE,CAAA;QACvE,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YAChB,IAAI,CACH,iCAAiC,YAAY,gBAAiB,KAAe,CAAC,OAAO,0CAA0C,CAC/H,CAAA;QACF,CAAC;IACF,CAAC;IAED,MAAM,KAAK,GAAG,MAAM,wBAAwB,CAAC;QAC5C,eAAe,EAAE,CAAC,IAAI,CAAC,eAAe,IAAI,sBAAsB,CAAC,WAAW,CAAC,CAAC,CAAC,QAAQ,EAAE;KACzF,CAAC,CAAA;IAEF,OAAO,EAAE,OAAO,EAAE,KAAK,CAAC,OAAO,EAAE,MAAM,EAAE,OAAO,EAAE,IAAI,EAAE,IAAI,EAAE,UAAU,EAAE,KAAK,CAAC,UAAU,EAAE,CAAA;AAC7F,CAAC"}
@@ -24,13 +24,13 @@ export interface SQLiteStreetNameLookupOpts {
24
24
  /**
25
25
  * ISO-2 (upper-case) countries this index answers for.
26
26
  *
27
- * Default `["FR"]` (the BAN street-centroids instance).
27
+ * @defaultValue `["FR"]` (the BAN street-centroids instance).
28
28
  */
29
29
  countries?: Iterable<string>;
30
30
  /**
31
31
  * Table name.
32
32
  *
33
- * Default `street_centroid`.
33
+ * @defaultValue `street_centroid`
34
34
  */
35
35
  table?: string;
36
36
  }
@@ -1 +1 @@
1
- {"version":3,"file":"name-lookup.d.ts","sourceRoot":"","sources":["../../lib/street/name-lookup.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;GAiBG;AAEH,OAAO,EAAqB,KAAK,mBAAmB,EAAE,KAAK,sBAAsB,EAAE,MAAM,qBAAqB,CAAA;AAE9G,OAAO,EAAE,YAAY,EAAE,MAAM,0BAA0B,CAAA;AACvD,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,SAAS,CAAA;AAE9C,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,SAAS,CAAA;AAG1C,MAAM,WAAW,0BAA0B;IAC1C;;;;OAIG;IACH,SAAS,CAAC,EAAE,QAAQ,CAAC,MAAM,CAAC,CAAA;IAC5B;;;;OAIG;IACH,KAAK,CAAC,EAAE,MAAM,CAAA;CACd;AAED;;;;;GAKG;AACH,qBAAa,sBAAuB,SAAQ,YAAY,CAAC,WAAW,CAAE,YAAW,sBAAsB;;IACtG,QAAQ,CAAC,SAAS,EAAE,WAAW,CAAC,MAAM,CAAC,CAAA;IAKvC,YAAY,MAAM,EAAE,eAAe,EAAE,IAAI,GAAE,0BAA+B,EAyBzE;IAED,aAAa,CAAC,aAAa,EAAE,MAAM,EAAE,KAAK,CAAC,EAAE,mBAAmB,GAAG,OAAO,CAsBzE;CACD"}
1
+ {"version":3,"file":"name-lookup.d.ts","sourceRoot":"","sources":["../../lib/street/name-lookup.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;GAiBG;AAEH,OAAO,EAAqB,KAAK,mBAAmB,EAAE,KAAK,sBAAsB,EAAE,MAAM,qBAAqB,CAAA;AAE9G,OAAO,EAAE,YAAY,EAAE,MAAM,0BAA0B,CAAA;AACvD,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,SAAS,CAAA;AAE9C,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,SAAS,CAAA;AAG1C,MAAM,WAAW,0BAA0B;IAC1C;;;;OAIG;IACH,SAAS,CAAC,EAAE,QAAQ,CAAC,MAAM,CAAC,CAAA;IAC5B;;;;OAIG;IACH,KAAK,CAAC,EAAE,MAAM,CAAA;CACd;AAED;;;;;GAKG;AACH,qBAAa,sBAAuB,SAAQ,YAAY,CAAC,WAAW,CAAE,YAAW,sBAAsB;;IACtG,QAAQ,CAAC,SAAS,EAAE,WAAW,CAAC,MAAM,CAAC,CAAA;IAKvC,YAAY,MAAM,EAAE,eAAe,EAAE,IAAI,GAAE,0BAA+B,EAyBzE;IAED,aAAa,CAAC,aAAa,EAAE,MAAM,EAAE,KAAK,CAAC,EAAE,mBAAmB,GAAG,OAAO,CAkBzE;CACD"}
@@ -58,12 +58,10 @@ export class SQLiteStreetNameLookup extends SQLiteLookup {
58
58
  // Scoped lookups tighten precision when the hypothesis includes a locality/postcode.
59
59
  // A scoped miss falls back to the unscoped probe.
60
60
  // The scope column may be incomplete, so a miss there does not establish absence.
61
- if (scope?.locality &&
62
- this.#byNameLocality &&
63
- this.#byNameLocality.get(norm, foldStreetSurface(scope.locality)) !== undefined) {
61
+ if (scope?.locality && this.#byNameLocality && this.#byNameLocality.get(norm, foldStreetSurface(scope.locality))) {
64
62
  return true;
65
63
  }
66
- if (scope?.postcode && this.#byNamePostcode && this.#byNamePostcode.get(norm, scope.postcode) !== undefined) {
64
+ if (scope?.postcode && this.#byNamePostcode && this.#byNamePostcode.get(norm, scope.postcode)) {
67
65
  return true;
68
66
  }
69
67
  return this.#byName.get(norm) !== undefined;
@@ -1 +1 @@
1
- {"version":3,"file":"name-lookup.js","sourceRoot":"","sources":["../../lib/street/name-lookup.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;GAiBG;AAEH,OAAO,EAAE,iBAAiB,EAAyD,MAAM,qBAAqB,CAAA;AAE9G,OAAO,EAAE,YAAY,EAAE,MAAM,0BAA0B,CAAA;AAIvD,OAAO,EAAE,SAAS,EAAE,QAAQ,EAAE,MAAM,eAAe,CAAA;AAiBnD;;;;;GAKG;AACH,MAAM,OAAO,sBAAuB,SAAQ,YAAyB;IAC3D,SAAS,CAAqB;IAC9B,OAAO,CAAmD;IAC1D,eAAe,CAAmD;IAClE,eAAe,CAAmD;IAE3E,YAAY,MAAuB,EAAE,IAAI,GAA+B,EAAE;QACzE,KAAK,CAAC,EAAE,YAAY,EAAE,MAAM,EAAE,CAAC,CAAA;QAC/B,IAAI,CAAC,SAAS,GAAG,IAAI,GAAG,CAAC,CAAC,GAAG,CAAC,IAAI,CAAC,SAAS,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,WAAW,EAAE,CAAC,CAAC,CAAA;QACrF,MAAM,KAAK,GAAG,IAAI,CAAC,KAAK,IAAI,iBAAiB,CAAA;QAE7C,uDAAuD;QACvD,+BAA+B;QAC/B,IAAI,QAAQ,CAAC,IAAI,CAAC,QAAQ,EAAE,KAAK,CAAC,EAAE,CAAC;YACpC,+DAA+D;YAC/D,mDAAmD;YACnD,iEAAiE;YACjE,uBAAuB;YACvB,sEAAsE;YACtE,qCAAqC;YACrC,MAAM,MAAM,GAAG,SAAS,CAAC,IAAI,CAAC,QAAQ,EAAE,KAAK,EAAE,UAAU,CAAC,CAAC,CAAC,CAAC,UAAU,CAAC,CAAC,CAAC,aAAa,CAAA;YACvF,IAAI,CAAC,OAAO,GAAG,IAAI,CAAC,QAAQ,CAAC,OAAO,CAAC,iBAAiB,KAAK,UAAU,MAAM,cAAc,CAAC,CAAA;YAE1F,IAAI,CAAC,eAAe,GAAG,IAAI,CAAC,QAAQ,CAAC,OAAO,CAC3C,iBAAiB,KAAK,UAAU,MAAM,oCAAoC,CAC1E,CAAA;YAED,IAAI,CAAC,eAAe,GAAG,IAAI,CAAC,QAAQ,CAAC,OAAO,CAC3C,iBAAiB,KAAK,UAAU,MAAM,+BAA+B,CACrE,CAAA;QACF,CAAC;IACF,CAAC;IAED,aAAa,CAAC,aAAqB,EAAE,KAA2B;QAC/D,IAAI,CAAC,IAAI,CAAC,OAAO;YAAE,OAAO,KAAK,CAAA;QAC/B,MAAM,IAAI,GAAG,iBAAiB,CAAC,aAAa,CAAC,CAAA;QAE7C,IAAI,CAAC,IAAI;YAAE,OAAO,KAAK,CAAA;QAEvB,qFAAqF;QACrF,kDAAkD;QAClD,kFAAkF;QAClF,IACC,KAAK,EAAE,QAAQ;YACf,IAAI,CAAC,eAAe;YACpB,IAAI,CAAC,eAAe,CAAC,GAAG,CAAC,IAAI,EAAE,iBAAiB,CAAC,KAAK,CAAC,QAAQ,CAAC,CAAC,KAAK,SAAS,EAC9E,CAAC;YACF,OAAO,IAAI,CAAA;QACZ,CAAC;QAED,IAAI,KAAK,EAAE,QAAQ,IAAI,IAAI,CAAC,eAAe,IAAI,IAAI,CAAC,eAAe,CAAC,GAAG,CAAC,IAAI,EAAE,KAAK,CAAC,QAAQ,CAAC,KAAK,SAAS,EAAE,CAAC;YAC7G,OAAO,IAAI,CAAA;QACZ,CAAC;QAED,OAAO,IAAI,CAAC,OAAO,CAAC,GAAG,CAAC,IAAI,CAAC,KAAK,SAAS,CAAA;IAC5C,CAAC;CACD"}
1
+ {"version":3,"file":"name-lookup.js","sourceRoot":"","sources":["../../lib/street/name-lookup.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;GAiBG;AAEH,OAAO,EAAE,iBAAiB,EAAyD,MAAM,qBAAqB,CAAA;AAE9G,OAAO,EAAE,YAAY,EAAE,MAAM,0BAA0B,CAAA;AAIvD,OAAO,EAAE,SAAS,EAAE,QAAQ,EAAE,MAAM,eAAe,CAAA;AAiBnD;;;;;GAKG;AACH,MAAM,OAAO,sBAAuB,SAAQ,YAAyB;IAC3D,SAAS,CAAqB;IAC9B,OAAO,CAAmD;IAC1D,eAAe,CAAmD;IAClE,eAAe,CAAmD;IAE3E,YAAY,MAAuB,EAAE,IAAI,GAA+B,EAAE;QACzE,KAAK,CAAC,EAAE,YAAY,EAAE,MAAM,EAAE,CAAC,CAAA;QAC/B,IAAI,CAAC,SAAS,GAAG,IAAI,GAAG,CAAC,CAAC,GAAG,CAAC,IAAI,CAAC,SAAS,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,WAAW,EAAE,CAAC,CAAC,CAAA;QACrF,MAAM,KAAK,GAAG,IAAI,CAAC,KAAK,IAAI,iBAAiB,CAAA;QAE7C,uDAAuD;QACvD,+BAA+B;QAC/B,IAAI,QAAQ,CAAC,IAAI,CAAC,QAAQ,EAAE,KAAK,CAAC,EAAE,CAAC;YACpC,+DAA+D;YAC/D,mDAAmD;YACnD,iEAAiE;YACjE,uBAAuB;YACvB,sEAAsE;YACtE,qCAAqC;YACrC,MAAM,MAAM,GAAG,SAAS,CAAC,IAAI,CAAC,QAAQ,EAAE,KAAK,EAAE,UAAU,CAAC,CAAC,CAAC,CAAC,UAAU,CAAC,CAAC,CAAC,aAAa,CAAA;YACvF,IAAI,CAAC,OAAO,GAAG,IAAI,CAAC,QAAQ,CAAC,OAAO,CAAC,iBAAiB,KAAK,UAAU,MAAM,cAAc,CAAC,CAAA;YAE1F,IAAI,CAAC,eAAe,GAAG,IAAI,CAAC,QAAQ,CAAC,OAAO,CAC3C,iBAAiB,KAAK,UAAU,MAAM,oCAAoC,CAC1E,CAAA;YAED,IAAI,CAAC,eAAe,GAAG,IAAI,CAAC,QAAQ,CAAC,OAAO,CAC3C,iBAAiB,KAAK,UAAU,MAAM,+BAA+B,CACrE,CAAA;QACF,CAAC;IACF,CAAC;IAED,aAAa,CAAC,aAAqB,EAAE,KAA2B;QAC/D,IAAI,CAAC,IAAI,CAAC,OAAO;YAAE,OAAO,KAAK,CAAA;QAC/B,MAAM,IAAI,GAAG,iBAAiB,CAAC,aAAa,CAAC,CAAA;QAE7C,IAAI,CAAC,IAAI;YAAE,OAAO,KAAK,CAAA;QAEvB,qFAAqF;QACrF,kDAAkD;QAClD,kFAAkF;QAClF,IAAI,KAAK,EAAE,QAAQ,IAAI,IAAI,CAAC,eAAe,IAAI,IAAI,CAAC,eAAe,CAAC,GAAG,CAAC,IAAI,EAAE,iBAAiB,CAAC,KAAK,CAAC,QAAQ,CAAC,CAAC,EAAE,CAAC;YAClH,OAAO,IAAI,CAAA;QACZ,CAAC;QAED,IAAI,KAAK,EAAE,QAAQ,IAAI,IAAI,CAAC,eAAe,IAAI,IAAI,CAAC,eAAe,CAAC,GAAG,CAAC,IAAI,EAAE,KAAK,CAAC,QAAQ,CAAC,EAAE,CAAC;YAC/F,OAAO,IAAI,CAAA;QACZ,CAAC;QAED,OAAO,IAAI,CAAC,OAAO,CAAC,GAAG,CAAC,IAAI,CAAC,KAAK,SAAS,CAAA;IAC5C,CAAC;CACD"}
@@ -300,7 +300,7 @@ export function stripLocalityQualifier(locality) {
300
300
  s = s.split("/")[0].trim();
301
301
  }
302
302
  const words = [...s.matchAll(/\S+/gu)].map((match) => ({ value: match[0], index: match.index }));
303
- let qualifierStart;
303
+ let qualifierStart = null;
304
304
  for (let index = 1; index < words.length; index++) {
305
305
  const word = words[index];
306
306
  const first = word.value[0] ?? "";
@@ -314,14 +314,14 @@ export function stripLocalityQualifier(locality) {
314
314
  }
315
315
  }
316
316
  const suffix = words.at(-1);
317
- if (qualifierStart === undefined &&
317
+ if (qualifierStart === null &&
318
318
  suffix &&
319
319
  words.length > 1 &&
320
320
  (["S", "N", "E", "W", "V", "Ø", "Sø", "Fyn", "Thy", "Sjælland", "Jylland"].includes(suffix.value) ||
321
321
  /^[A-ZÅÄÖ]{2}$/u.test(suffix.value))) {
322
322
  qualifierStart = suffix.index;
323
323
  }
324
- if (qualifierStart !== undefined) {
324
+ if (qualifierStart !== null) {
325
325
  s = s.slice(0, qualifierStart).trimEnd();
326
326
  }
327
327
  s = s.trim();