@vepler/sdk 2.167.0 → 3.0.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 (582) hide show
  1. package/README.md +408 -402
  2. package/dist/commonjs/address-search/__tests__/controller.test.d.ts +2 -0
  3. package/dist/commonjs/address-search/__tests__/controller.test.d.ts.map +1 -0
  4. package/dist/commonjs/address-search/__tests__/controller.test.js +329 -0
  5. package/dist/commonjs/address-search/__tests__/controller.test.js.map +1 -0
  6. package/dist/commonjs/address-search/__tests__/default-transports.test.d.ts +2 -0
  7. package/dist/commonjs/address-search/__tests__/default-transports.test.d.ts.map +1 -0
  8. package/dist/commonjs/address-search/__tests__/default-transports.test.js +161 -0
  9. package/dist/commonjs/address-search/__tests__/default-transports.test.js.map +1 -0
  10. package/dist/commonjs/address-search/__tests__/narrow.test.d.ts +2 -0
  11. package/dist/commonjs/address-search/__tests__/narrow.test.d.ts.map +1 -0
  12. package/dist/commonjs/address-search/__tests__/narrow.test.js +63 -0
  13. package/dist/commonjs/address-search/__tests__/narrow.test.js.map +1 -0
  14. package/dist/commonjs/address-search/controller.d.ts +14 -0
  15. package/dist/commonjs/address-search/controller.d.ts.map +1 -0
  16. package/dist/commonjs/address-search/controller.js +190 -0
  17. package/dist/commonjs/address-search/controller.js.map +1 -0
  18. package/dist/commonjs/address-search/default-transports.d.ts +52 -0
  19. package/dist/commonjs/address-search/default-transports.d.ts.map +1 -0
  20. package/dist/commonjs/address-search/default-transports.js +134 -0
  21. package/dist/commonjs/address-search/default-transports.js.map +1 -0
  22. package/dist/commonjs/address-search/errors.d.ts +5 -0
  23. package/dist/commonjs/address-search/errors.d.ts.map +1 -0
  24. package/dist/commonjs/address-search/errors.js +12 -0
  25. package/dist/commonjs/address-search/errors.js.map +1 -0
  26. package/dist/commonjs/address-search/index.d.ts +8 -0
  27. package/dist/commonjs/address-search/index.d.ts.map +1 -0
  28. package/dist/commonjs/address-search/index.js +43 -0
  29. package/dist/commonjs/address-search/index.js.map +1 -0
  30. package/dist/commonjs/address-search/lru-cache.d.ts +13 -0
  31. package/dist/commonjs/address-search/lru-cache.d.ts.map +1 -0
  32. package/dist/commonjs/address-search/lru-cache.js +50 -0
  33. package/dist/commonjs/address-search/lru-cache.js.map +1 -0
  34. package/dist/commonjs/address-search/narrow.d.ts +21 -0
  35. package/dist/commonjs/address-search/narrow.d.ts.map +1 -0
  36. package/dist/commonjs/address-search/narrow.js +49 -0
  37. package/dist/commonjs/address-search/narrow.js.map +1 -0
  38. package/dist/commonjs/address-search/types.d.ts +125 -0
  39. package/dist/commonjs/address-search/types.d.ts.map +1 -0
  40. package/dist/commonjs/address-search/types.js +9 -0
  41. package/dist/commonjs/address-search/types.js.map +1 -0
  42. package/dist/commonjs/address-search.d.ts +3 -0
  43. package/dist/commonjs/address-search.d.ts.map +1 -0
  44. package/dist/commonjs/address-search.js +19 -0
  45. package/dist/commonjs/address-search.js.map +1 -0
  46. package/dist/commonjs/funcs/avmPredictPropertyValue.d.ts +1 -1
  47. package/dist/commonjs/funcs/avmPredictPropertyValue.d.ts.map +1 -1
  48. package/dist/commonjs/funcs/avmPredictPropertyValue.js +1 -1
  49. package/dist/commonjs/funcs/avmPredictPropertyValue.js.map +1 -1
  50. package/dist/commonjs/funcs/propertyGetProperties.js +1 -0
  51. package/dist/commonjs/funcs/propertyGetProperties.js.map +1 -1
  52. package/dist/commonjs/funcs/propertyGetPropertiesByLocation.js +1 -0
  53. package/dist/commonjs/funcs/propertyGetPropertiesByLocation.js.map +1 -1
  54. package/dist/commonjs/funcs/propertyGetPropertiesBySource.js +1 -0
  55. package/dist/commonjs/funcs/propertyGetPropertiesBySource.js.map +1 -1
  56. package/dist/commonjs/funcs/searchSearchRetrieve.d.ts +23 -0
  57. package/dist/commonjs/funcs/searchSearchRetrieve.d.ts.map +1 -0
  58. package/dist/commonjs/funcs/searchSearchRetrieve.js +128 -0
  59. package/dist/commonjs/funcs/searchSearchRetrieve.js.map +1 -0
  60. package/dist/commonjs/funcs/searchSearchSuggest.d.ts +3 -1
  61. package/dist/commonjs/funcs/searchSearchSuggest.d.ts.map +1 -1
  62. package/dist/commonjs/funcs/searchSearchSuggest.js +5 -1
  63. package/dist/commonjs/funcs/searchSearchSuggest.js.map +1 -1
  64. package/dist/commonjs/lib/config.d.ts +3 -3
  65. package/dist/commonjs/lib/config.js +3 -3
  66. package/dist/commonjs/lib/config.js.map +1 -1
  67. package/dist/commonjs/sdk/models/errors/index.d.ts +1 -0
  68. package/dist/commonjs/sdk/models/errors/index.d.ts.map +1 -1
  69. package/dist/commonjs/sdk/models/errors/index.js +1 -0
  70. package/dist/commonjs/sdk/models/errors/index.js.map +1 -1
  71. package/dist/commonjs/sdk/models/errors/predictpropertyvalue.d.ts +65 -0
  72. package/dist/commonjs/sdk/models/errors/predictpropertyvalue.d.ts.map +1 -1
  73. package/dist/commonjs/sdk/models/errors/predictpropertyvalue.js +57 -1
  74. package/dist/commonjs/sdk/models/errors/predictpropertyvalue.js.map +1 -1
  75. package/dist/commonjs/sdk/models/errors/searchretrieve.d.ts +201 -0
  76. package/dist/commonjs/sdk/models/errors/searchretrieve.d.ts.map +1 -0
  77. package/dist/commonjs/sdk/models/errors/searchretrieve.js +213 -0
  78. package/dist/commonjs/sdk/models/errors/searchretrieve.js.map +1 -0
  79. package/dist/commonjs/sdk/models/operations/getcensuswholelevel.d.ts +1 -0
  80. package/dist/commonjs/sdk/models/operations/getcensuswholelevel.d.ts.map +1 -1
  81. package/dist/commonjs/sdk/models/operations/getcensuswholelevel.js +1 -0
  82. package/dist/commonjs/sdk/models/operations/getcensuswholelevel.js.map +1 -1
  83. package/dist/commonjs/sdk/models/operations/getlistingbyid.d.ts +18 -15
  84. package/dist/commonjs/sdk/models/operations/getlistingbyid.d.ts.map +1 -1
  85. package/dist/commonjs/sdk/models/operations/getlistingbyid.js +15 -15
  86. package/dist/commonjs/sdk/models/operations/getlistingbyid.js.map +1 -1
  87. package/dist/commonjs/sdk/models/operations/getlistingbysource.d.ts +18 -15
  88. package/dist/commonjs/sdk/models/operations/getlistingbysource.d.ts.map +1 -1
  89. package/dist/commonjs/sdk/models/operations/getlistingbysource.js +15 -15
  90. package/dist/commonjs/sdk/models/operations/getlistingbysource.js.map +1 -1
  91. package/dist/commonjs/sdk/models/operations/getlistingsbylocation.d.ts +18 -15
  92. package/dist/commonjs/sdk/models/operations/getlistingsbylocation.d.ts.map +1 -1
  93. package/dist/commonjs/sdk/models/operations/getlistingsbylocation.js +16 -15
  94. package/dist/commonjs/sdk/models/operations/getlistingsbylocation.js.map +1 -1
  95. package/dist/commonjs/sdk/models/operations/getproperties.d.ts +5 -0
  96. package/dist/commonjs/sdk/models/operations/getproperties.d.ts.map +1 -1
  97. package/dist/commonjs/sdk/models/operations/getproperties.js +1 -0
  98. package/dist/commonjs/sdk/models/operations/getproperties.js.map +1 -1
  99. package/dist/commonjs/sdk/models/operations/getpropertiesbylocation.d.ts +5 -0
  100. package/dist/commonjs/sdk/models/operations/getpropertiesbylocation.d.ts.map +1 -1
  101. package/dist/commonjs/sdk/models/operations/getpropertiesbylocation.js +1 -0
  102. package/dist/commonjs/sdk/models/operations/getpropertiesbylocation.js.map +1 -1
  103. package/dist/commonjs/sdk/models/operations/getpropertiesbysource.d.ts +5 -0
  104. package/dist/commonjs/sdk/models/operations/getpropertiesbysource.d.ts.map +1 -1
  105. package/dist/commonjs/sdk/models/operations/getpropertiesbysource.js +1 -0
  106. package/dist/commonjs/sdk/models/operations/getpropertiesbysource.js.map +1 -1
  107. package/dist/commonjs/sdk/models/operations/index.d.ts +1 -0
  108. package/dist/commonjs/sdk/models/operations/index.d.ts.map +1 -1
  109. package/dist/commonjs/sdk/models/operations/index.js +1 -0
  110. package/dist/commonjs/sdk/models/operations/index.js.map +1 -1
  111. package/dist/commonjs/sdk/models/operations/querylistings.d.ts +18 -15
  112. package/dist/commonjs/sdk/models/operations/querylistings.d.ts.map +1 -1
  113. package/dist/commonjs/sdk/models/operations/querylistings.js +17 -16
  114. package/dist/commonjs/sdk/models/operations/querylistings.js.map +1 -1
  115. package/dist/commonjs/sdk/models/operations/querylistingsbysource.d.ts +18 -15
  116. package/dist/commonjs/sdk/models/operations/querylistingsbysource.d.ts.map +1 -1
  117. package/dist/commonjs/sdk/models/operations/querylistingsbysource.js +16 -15
  118. package/dist/commonjs/sdk/models/operations/querylistingsbysource.js.map +1 -1
  119. package/dist/commonjs/sdk/models/operations/resolveaddress.d.ts +16 -3
  120. package/dist/commonjs/sdk/models/operations/resolveaddress.d.ts.map +1 -1
  121. package/dist/commonjs/sdk/models/operations/resolveaddress.js +18 -3
  122. package/dist/commonjs/sdk/models/operations/resolveaddress.js.map +1 -1
  123. package/dist/commonjs/sdk/models/operations/searchretrieve.d.ts +20 -0
  124. package/dist/commonjs/sdk/models/operations/searchretrieve.d.ts.map +1 -0
  125. package/dist/commonjs/sdk/models/operations/searchretrieve.js +55 -0
  126. package/dist/commonjs/sdk/models/operations/searchretrieve.js.map +1 -0
  127. package/dist/commonjs/sdk/models/operations/searchsuggest.d.ts +35 -0
  128. package/dist/commonjs/sdk/models/operations/searchsuggest.d.ts.map +1 -1
  129. package/dist/commonjs/sdk/models/operations/searchsuggest.js +18 -1
  130. package/dist/commonjs/sdk/models/operations/searchsuggest.js.map +1 -1
  131. package/dist/commonjs/sdk/models/shared/addressresolverequest.d.ts +27 -0
  132. package/dist/commonjs/sdk/models/shared/addressresolverequest.d.ts.map +1 -1
  133. package/dist/commonjs/sdk/models/shared/addressresolverequest.js +25 -1
  134. package/dist/commonjs/sdk/models/shared/addressresolverequest.js.map +1 -1
  135. package/dist/commonjs/sdk/models/shared/advancedlisting.d.ts +2 -2
  136. package/dist/commonjs/sdk/models/shared/advancedlisting.d.ts.map +1 -1
  137. package/dist/commonjs/sdk/models/shared/advancedlisting.js +2 -2
  138. package/dist/commonjs/sdk/models/shared/advancedlisting.js.map +1 -1
  139. package/dist/commonjs/sdk/models/shared/censusareaprofilerequest.d.ts +20 -0
  140. package/dist/commonjs/sdk/models/shared/censusareaprofilerequest.d.ts.map +1 -1
  141. package/dist/commonjs/sdk/models/shared/censusareaprofilerequest.js +13 -1
  142. package/dist/commonjs/sdk/models/shared/censusareaprofilerequest.js.map +1 -1
  143. package/dist/commonjs/sdk/models/shared/censusrolluprequest.d.ts +20 -0
  144. package/dist/commonjs/sdk/models/shared/censusrolluprequest.d.ts.map +1 -1
  145. package/dist/commonjs/sdk/models/shared/censusrolluprequest.js +12 -1
  146. package/dist/commonjs/sdk/models/shared/censusrolluprequest.js.map +1 -1
  147. package/dist/commonjs/sdk/models/shared/geocodeprecision.d.ts +17 -0
  148. package/dist/commonjs/sdk/models/shared/geocodeprecision.d.ts.map +1 -0
  149. package/dist/commonjs/sdk/models/shared/geocodeprecision.js +51 -0
  150. package/dist/commonjs/sdk/models/shared/geocodeprecision.js.map +1 -0
  151. package/dist/commonjs/sdk/models/shared/index.d.ts +14 -7
  152. package/dist/commonjs/sdk/models/shared/index.d.ts.map +1 -1
  153. package/dist/commonjs/sdk/models/shared/index.js +14 -7
  154. package/dist/commonjs/sdk/models/shared/index.js.map +1 -1
  155. package/dist/commonjs/sdk/models/shared/mortgagecharge.d.ts +38 -0
  156. package/dist/commonjs/sdk/models/shared/mortgagecharge.d.ts.map +1 -0
  157. package/dist/commonjs/sdk/models/shared/{extractionmortgagecharge.js → mortgagecharge.js} +11 -11
  158. package/dist/commonjs/sdk/models/shared/mortgagecharge.js.map +1 -0
  159. package/dist/commonjs/sdk/models/shared/othercharge.d.ts +23 -0
  160. package/dist/commonjs/sdk/models/shared/othercharge.d.ts.map +1 -0
  161. package/dist/commonjs/sdk/models/shared/{extractionothercharge.js → othercharge.js} +6 -6
  162. package/dist/commonjs/sdk/models/shared/othercharge.js.map +1 -0
  163. package/dist/commonjs/sdk/models/shared/propertyaddress.d.ts +24 -2
  164. package/dist/commonjs/sdk/models/shared/propertyaddress.d.ts.map +1 -1
  165. package/dist/commonjs/sdk/models/shared/propertyaddress.js +14 -2
  166. package/dist/commonjs/sdk/models/shared/propertyaddress.js.map +1 -1
  167. package/dist/commonjs/sdk/models/shared/propertybyslugsrequest.d.ts +5 -0
  168. package/dist/commonjs/sdk/models/shared/propertybyslugsrequest.d.ts.map +1 -1
  169. package/dist/commonjs/sdk/models/shared/propertybyslugsrequest.js +1 -0
  170. package/dist/commonjs/sdk/models/shared/propertybyslugsrequest.js.map +1 -1
  171. package/dist/commonjs/sdk/models/shared/propertydataapi.d.ts +38 -0
  172. package/dist/commonjs/sdk/models/shared/propertydataapi.d.ts.map +1 -1
  173. package/dist/commonjs/sdk/models/shared/propertydataapi.js +22 -1
  174. package/dist/commonjs/sdk/models/shared/propertydataapi.js.map +1 -1
  175. package/dist/commonjs/sdk/models/shared/propertyqueryrequest.d.ts +5 -0
  176. package/dist/commonjs/sdk/models/shared/propertyqueryrequest.d.ts.map +1 -1
  177. package/dist/commonjs/sdk/models/shared/propertyqueryrequest.js +1 -0
  178. package/dist/commonjs/sdk/models/shared/propertyqueryrequest.js.map +1 -1
  179. package/dist/commonjs/sdk/models/shared/registeredcharges.d.ts +14 -0
  180. package/dist/commonjs/sdk/models/shared/registeredcharges.d.ts.map +1 -0
  181. package/dist/commonjs/sdk/models/shared/{extractionproprietor.js → registeredcharges.js} +11 -15
  182. package/dist/commonjs/sdk/models/shared/registeredcharges.js.map +1 -0
  183. package/dist/commonjs/sdk/models/shared/salerecord.d.ts +45 -0
  184. package/dist/commonjs/sdk/models/shared/salerecord.d.ts.map +1 -1
  185. package/dist/commonjs/sdk/models/shared/salerecord.js +26 -1
  186. package/dist/commonjs/sdk/models/shared/salerecord.js.map +1 -1
  187. package/dist/commonjs/sdk/models/shared/searchresponse.d.ts +8 -0
  188. package/dist/commonjs/sdk/models/shared/searchresponse.d.ts.map +1 -1
  189. package/dist/commonjs/sdk/models/shared/searchresponse.js +4 -0
  190. package/dist/commonjs/sdk/models/shared/searchresponse.js.map +1 -1
  191. package/dist/commonjs/sdk/models/shared/searchretrieveresponse.d.ts +82 -0
  192. package/dist/commonjs/sdk/models/shared/searchretrieveresponse.d.ts.map +1 -0
  193. package/dist/commonjs/sdk/models/shared/searchretrieveresponse.js +88 -0
  194. package/dist/commonjs/sdk/models/shared/searchretrieveresponse.js.map +1 -0
  195. package/dist/commonjs/sdk/models/shared/streetmatch.d.ts +106 -0
  196. package/dist/commonjs/sdk/models/shared/streetmatch.d.ts.map +1 -0
  197. package/dist/commonjs/sdk/models/shared/streetmatch.js +84 -0
  198. package/dist/commonjs/sdk/models/shared/streetmatch.js.map +1 -0
  199. package/dist/commonjs/sdk/models/shared/titlecovenant.d.ts +23 -0
  200. package/dist/commonjs/sdk/models/shared/titlecovenant.d.ts.map +1 -0
  201. package/dist/commonjs/sdk/models/shared/{extractionrestriction.js → titlecovenant.js} +6 -6
  202. package/dist/commonjs/sdk/models/shared/titlecovenant.js.map +1 -0
  203. package/dist/commonjs/sdk/models/shared/{extractiondocumentsummary.d.ts → titledocumentsummary.d.ts} +9 -9
  204. package/dist/commonjs/sdk/models/shared/titledocumentsummary.d.ts.map +1 -0
  205. package/dist/commonjs/sdk/models/shared/{extractiondocumentsummary.js → titledocumentsummary.js} +11 -11
  206. package/dist/commonjs/sdk/models/shared/titledocumentsummary.js.map +1 -0
  207. package/dist/commonjs/sdk/models/shared/titleextractionpayload.d.ts +83 -0
  208. package/dist/commonjs/sdk/models/shared/titleextractionpayload.d.ts.map +1 -0
  209. package/dist/commonjs/sdk/models/shared/titleextractionpayload.js +103 -0
  210. package/dist/commonjs/sdk/models/shared/titleextractionpayload.js.map +1 -0
  211. package/dist/commonjs/sdk/models/shared/titleextractionpollresponse.d.ts +2 -2
  212. package/dist/commonjs/sdk/models/shared/titleextractionpollresponse.d.ts.map +1 -1
  213. package/dist/commonjs/sdk/models/shared/titleextractionpollresponse.js +2 -2
  214. package/dist/commonjs/sdk/models/shared/titleextractionpollresponse.js.map +1 -1
  215. package/dist/{esm/sdk/models/shared/extractionnotice.d.ts → commonjs/sdk/models/shared/titlenotice.d.ts} +13 -4
  216. package/dist/commonjs/sdk/models/shared/titlenotice.d.ts.map +1 -0
  217. package/dist/commonjs/sdk/models/shared/{extractionnotice.js → titlenotice.js} +6 -6
  218. package/dist/commonjs/sdk/models/shared/titlenotice.js.map +1 -0
  219. package/dist/commonjs/sdk/models/shared/titleproprietor.d.ts +54 -0
  220. package/dist/commonjs/sdk/models/shared/titleproprietor.d.ts.map +1 -0
  221. package/dist/commonjs/sdk/models/shared/titleproprietor.js +75 -0
  222. package/dist/commonjs/sdk/models/shared/titleproprietor.js.map +1 -0
  223. package/dist/commonjs/sdk/models/shared/titlerestriction.d.ts +23 -0
  224. package/dist/commonjs/sdk/models/shared/titlerestriction.d.ts.map +1 -0
  225. package/dist/commonjs/sdk/models/shared/titlerestriction.js +54 -0
  226. package/dist/commonjs/sdk/models/shared/titlerestriction.js.map +1 -0
  227. package/dist/commonjs/sdk/models/shared/titleschedulenoticeoflease.d.ts +13 -0
  228. package/dist/commonjs/sdk/models/shared/titleschedulenoticeoflease.d.ts.map +1 -0
  229. package/dist/commonjs/sdk/models/shared/titleschedulenoticeoflease.js +50 -0
  230. package/dist/commonjs/sdk/models/shared/titleschedulenoticeoflease.js.map +1 -0
  231. package/dist/commonjs/sdk/models/shared/titlesummarycounts.d.ts +15 -0
  232. package/dist/commonjs/sdk/models/shared/titlesummarycounts.d.ts.map +1 -0
  233. package/dist/commonjs/sdk/models/shared/titlesummarycounts.js +55 -0
  234. package/dist/commonjs/sdk/models/shared/titlesummarycounts.js.map +1 -0
  235. package/dist/commonjs/sdk/search.d.ts +14 -1
  236. package/dist/commonjs/sdk/search.d.ts.map +1 -1
  237. package/dist/commonjs/sdk/search.js +17 -1
  238. package/dist/commonjs/sdk/search.js.map +1 -1
  239. package/dist/esm/address-search/__tests__/controller.test.d.ts +2 -0
  240. package/dist/esm/address-search/__tests__/controller.test.d.ts.map +1 -0
  241. package/dist/esm/address-search/__tests__/controller.test.js +327 -0
  242. package/dist/esm/address-search/__tests__/controller.test.js.map +1 -0
  243. package/dist/esm/address-search/__tests__/default-transports.test.d.ts +2 -0
  244. package/dist/esm/address-search/__tests__/default-transports.test.d.ts.map +1 -0
  245. package/dist/esm/address-search/__tests__/default-transports.test.js +159 -0
  246. package/dist/esm/address-search/__tests__/default-transports.test.js.map +1 -0
  247. package/dist/esm/address-search/__tests__/narrow.test.d.ts +2 -0
  248. package/dist/esm/address-search/__tests__/narrow.test.d.ts.map +1 -0
  249. package/dist/esm/address-search/__tests__/narrow.test.js +61 -0
  250. package/dist/esm/address-search/__tests__/narrow.test.js.map +1 -0
  251. package/dist/esm/address-search/controller.d.ts +14 -0
  252. package/dist/esm/address-search/controller.d.ts.map +1 -0
  253. package/dist/esm/address-search/controller.js +187 -0
  254. package/dist/esm/address-search/controller.js.map +1 -0
  255. package/dist/esm/address-search/default-transports.d.ts +52 -0
  256. package/dist/esm/address-search/default-transports.d.ts.map +1 -0
  257. package/dist/esm/address-search/default-transports.js +129 -0
  258. package/dist/esm/address-search/default-transports.js.map +1 -0
  259. package/dist/esm/address-search/errors.d.ts +5 -0
  260. package/dist/esm/address-search/errors.d.ts.map +1 -0
  261. package/dist/esm/address-search/errors.js +8 -0
  262. package/dist/esm/address-search/errors.js.map +1 -0
  263. package/dist/esm/address-search/index.d.ts +8 -0
  264. package/dist/esm/address-search/index.d.ts.map +1 -0
  265. package/dist/esm/address-search/index.js +30 -0
  266. package/dist/esm/address-search/index.js.map +1 -0
  267. package/dist/esm/address-search/lru-cache.d.ts +13 -0
  268. package/dist/esm/address-search/lru-cache.d.ts.map +1 -0
  269. package/dist/esm/address-search/lru-cache.js +46 -0
  270. package/dist/esm/address-search/lru-cache.js.map +1 -0
  271. package/dist/esm/address-search/narrow.d.ts +21 -0
  272. package/dist/esm/address-search/narrow.d.ts.map +1 -0
  273. package/dist/esm/address-search/narrow.js +43 -0
  274. package/dist/esm/address-search/narrow.js.map +1 -0
  275. package/dist/esm/address-search/types.d.ts +125 -0
  276. package/dist/esm/address-search/types.d.ts.map +1 -0
  277. package/dist/esm/address-search/types.js +8 -0
  278. package/dist/esm/address-search/types.js.map +1 -0
  279. package/dist/esm/address-search.d.ts +3 -0
  280. package/dist/esm/address-search.d.ts.map +1 -0
  281. package/dist/esm/address-search.js +6 -0
  282. package/dist/esm/address-search.js.map +1 -0
  283. package/dist/esm/funcs/avmPredictPropertyValue.d.ts +1 -1
  284. package/dist/esm/funcs/avmPredictPropertyValue.d.ts.map +1 -1
  285. package/dist/esm/funcs/avmPredictPropertyValue.js +1 -1
  286. package/dist/esm/funcs/avmPredictPropertyValue.js.map +1 -1
  287. package/dist/esm/funcs/propertyGetProperties.js +1 -0
  288. package/dist/esm/funcs/propertyGetProperties.js.map +1 -1
  289. package/dist/esm/funcs/propertyGetPropertiesByLocation.js +1 -0
  290. package/dist/esm/funcs/propertyGetPropertiesByLocation.js.map +1 -1
  291. package/dist/esm/funcs/propertyGetPropertiesBySource.js +1 -0
  292. package/dist/esm/funcs/propertyGetPropertiesBySource.js.map +1 -1
  293. package/dist/esm/funcs/searchSearchRetrieve.d.ts +23 -0
  294. package/dist/esm/funcs/searchSearchRetrieve.d.ts.map +1 -0
  295. package/dist/esm/funcs/searchSearchRetrieve.js +92 -0
  296. package/dist/esm/funcs/searchSearchRetrieve.js.map +1 -0
  297. package/dist/esm/funcs/searchSearchSuggest.d.ts +3 -1
  298. package/dist/esm/funcs/searchSearchSuggest.d.ts.map +1 -1
  299. package/dist/esm/funcs/searchSearchSuggest.js +5 -1
  300. package/dist/esm/funcs/searchSearchSuggest.js.map +1 -1
  301. package/dist/esm/lib/config.d.ts +3 -3
  302. package/dist/esm/lib/config.js +3 -3
  303. package/dist/esm/lib/config.js.map +1 -1
  304. package/dist/esm/sdk/models/errors/index.d.ts +1 -0
  305. package/dist/esm/sdk/models/errors/index.d.ts.map +1 -1
  306. package/dist/esm/sdk/models/errors/index.js +1 -0
  307. package/dist/esm/sdk/models/errors/index.js.map +1 -1
  308. package/dist/esm/sdk/models/errors/predictpropertyvalue.d.ts +65 -0
  309. package/dist/esm/sdk/models/errors/predictpropertyvalue.d.ts.map +1 -1
  310. package/dist/esm/sdk/models/errors/predictpropertyvalue.js +54 -0
  311. package/dist/esm/sdk/models/errors/predictpropertyvalue.js.map +1 -1
  312. package/dist/esm/sdk/models/errors/searchretrieve.d.ts +201 -0
  313. package/dist/esm/sdk/models/errors/searchretrieve.d.ts.map +1 -0
  314. package/dist/esm/sdk/models/errors/searchretrieve.js +171 -0
  315. package/dist/esm/sdk/models/errors/searchretrieve.js.map +1 -0
  316. package/dist/esm/sdk/models/operations/getcensuswholelevel.d.ts +1 -0
  317. package/dist/esm/sdk/models/operations/getcensuswholelevel.d.ts.map +1 -1
  318. package/dist/esm/sdk/models/operations/getcensuswholelevel.js +1 -0
  319. package/dist/esm/sdk/models/operations/getcensuswholelevel.js.map +1 -1
  320. package/dist/esm/sdk/models/operations/getlistingbyid.d.ts +18 -15
  321. package/dist/esm/sdk/models/operations/getlistingbyid.d.ts.map +1 -1
  322. package/dist/esm/sdk/models/operations/getlistingbyid.js +16 -16
  323. package/dist/esm/sdk/models/operations/getlistingbyid.js.map +1 -1
  324. package/dist/esm/sdk/models/operations/getlistingbysource.d.ts +18 -15
  325. package/dist/esm/sdk/models/operations/getlistingbysource.d.ts.map +1 -1
  326. package/dist/esm/sdk/models/operations/getlistingbysource.js +16 -16
  327. package/dist/esm/sdk/models/operations/getlistingbysource.js.map +1 -1
  328. package/dist/esm/sdk/models/operations/getlistingsbylocation.d.ts +18 -15
  329. package/dist/esm/sdk/models/operations/getlistingsbylocation.d.ts.map +1 -1
  330. package/dist/esm/sdk/models/operations/getlistingsbylocation.js +17 -16
  331. package/dist/esm/sdk/models/operations/getlistingsbylocation.js.map +1 -1
  332. package/dist/esm/sdk/models/operations/getproperties.d.ts +5 -0
  333. package/dist/esm/sdk/models/operations/getproperties.d.ts.map +1 -1
  334. package/dist/esm/sdk/models/operations/getproperties.js +1 -0
  335. package/dist/esm/sdk/models/operations/getproperties.js.map +1 -1
  336. package/dist/esm/sdk/models/operations/getpropertiesbylocation.d.ts +5 -0
  337. package/dist/esm/sdk/models/operations/getpropertiesbylocation.d.ts.map +1 -1
  338. package/dist/esm/sdk/models/operations/getpropertiesbylocation.js +1 -0
  339. package/dist/esm/sdk/models/operations/getpropertiesbylocation.js.map +1 -1
  340. package/dist/esm/sdk/models/operations/getpropertiesbysource.d.ts +5 -0
  341. package/dist/esm/sdk/models/operations/getpropertiesbysource.d.ts.map +1 -1
  342. package/dist/esm/sdk/models/operations/getpropertiesbysource.js +1 -0
  343. package/dist/esm/sdk/models/operations/getpropertiesbysource.js.map +1 -1
  344. package/dist/esm/sdk/models/operations/index.d.ts +1 -0
  345. package/dist/esm/sdk/models/operations/index.d.ts.map +1 -1
  346. package/dist/esm/sdk/models/operations/index.js +1 -0
  347. package/dist/esm/sdk/models/operations/index.js.map +1 -1
  348. package/dist/esm/sdk/models/operations/querylistings.d.ts +18 -15
  349. package/dist/esm/sdk/models/operations/querylistings.d.ts.map +1 -1
  350. package/dist/esm/sdk/models/operations/querylistings.js +18 -17
  351. package/dist/esm/sdk/models/operations/querylistings.js.map +1 -1
  352. package/dist/esm/sdk/models/operations/querylistingsbysource.d.ts +18 -15
  353. package/dist/esm/sdk/models/operations/querylistingsbysource.d.ts.map +1 -1
  354. package/dist/esm/sdk/models/operations/querylistingsbysource.js +17 -16
  355. package/dist/esm/sdk/models/operations/querylistingsbysource.js.map +1 -1
  356. package/dist/esm/sdk/models/operations/resolveaddress.d.ts +16 -3
  357. package/dist/esm/sdk/models/operations/resolveaddress.d.ts.map +1 -1
  358. package/dist/esm/sdk/models/operations/resolveaddress.js +16 -2
  359. package/dist/esm/sdk/models/operations/resolveaddress.js.map +1 -1
  360. package/dist/esm/sdk/models/operations/searchretrieve.d.ts +20 -0
  361. package/dist/esm/sdk/models/operations/searchretrieve.d.ts.map +1 -0
  362. package/dist/esm/sdk/models/operations/searchretrieve.js +18 -0
  363. package/dist/esm/sdk/models/operations/searchretrieve.js.map +1 -0
  364. package/dist/esm/sdk/models/operations/searchsuggest.d.ts +35 -0
  365. package/dist/esm/sdk/models/operations/searchsuggest.d.ts.map +1 -1
  366. package/dist/esm/sdk/models/operations/searchsuggest.js +17 -0
  367. package/dist/esm/sdk/models/operations/searchsuggest.js.map +1 -1
  368. package/dist/esm/sdk/models/shared/addressresolverequest.d.ts +27 -0
  369. package/dist/esm/sdk/models/shared/addressresolverequest.d.ts.map +1 -1
  370. package/dist/esm/sdk/models/shared/addressresolverequest.js +23 -0
  371. package/dist/esm/sdk/models/shared/addressresolverequest.js.map +1 -1
  372. package/dist/esm/sdk/models/shared/advancedlisting.d.ts +2 -2
  373. package/dist/esm/sdk/models/shared/advancedlisting.d.ts.map +1 -1
  374. package/dist/esm/sdk/models/shared/advancedlisting.js +2 -2
  375. package/dist/esm/sdk/models/shared/advancedlisting.js.map +1 -1
  376. package/dist/esm/sdk/models/shared/censusareaprofilerequest.d.ts +20 -0
  377. package/dist/esm/sdk/models/shared/censusareaprofilerequest.d.ts.map +1 -1
  378. package/dist/esm/sdk/models/shared/censusareaprofilerequest.js +12 -0
  379. package/dist/esm/sdk/models/shared/censusareaprofilerequest.js.map +1 -1
  380. package/dist/esm/sdk/models/shared/censusrolluprequest.d.ts +20 -0
  381. package/dist/esm/sdk/models/shared/censusrolluprequest.d.ts.map +1 -1
  382. package/dist/esm/sdk/models/shared/censusrolluprequest.js +11 -0
  383. package/dist/esm/sdk/models/shared/censusrolluprequest.js.map +1 -1
  384. package/dist/esm/sdk/models/shared/geocodeprecision.d.ts +17 -0
  385. package/dist/esm/sdk/models/shared/geocodeprecision.d.ts.map +1 -0
  386. package/dist/esm/sdk/models/shared/geocodeprecision.js +15 -0
  387. package/dist/esm/sdk/models/shared/geocodeprecision.js.map +1 -0
  388. package/dist/esm/sdk/models/shared/index.d.ts +14 -7
  389. package/dist/esm/sdk/models/shared/index.d.ts.map +1 -1
  390. package/dist/esm/sdk/models/shared/index.js +14 -7
  391. package/dist/esm/sdk/models/shared/index.js.map +1 -1
  392. package/dist/esm/sdk/models/shared/mortgagecharge.d.ts +38 -0
  393. package/dist/esm/sdk/models/shared/mortgagecharge.d.ts.map +1 -0
  394. package/dist/esm/sdk/models/shared/mortgagecharge.js +28 -0
  395. package/dist/esm/sdk/models/shared/mortgagecharge.js.map +1 -0
  396. package/dist/esm/sdk/models/shared/othercharge.d.ts +23 -0
  397. package/dist/esm/sdk/models/shared/othercharge.d.ts.map +1 -0
  398. package/dist/esm/sdk/models/shared/{extractionothercharge.js → othercharge.js} +4 -4
  399. package/dist/esm/sdk/models/shared/othercharge.js.map +1 -0
  400. package/dist/esm/sdk/models/shared/propertyaddress.d.ts +24 -2
  401. package/dist/esm/sdk/models/shared/propertyaddress.d.ts.map +1 -1
  402. package/dist/esm/sdk/models/shared/propertyaddress.js +13 -1
  403. package/dist/esm/sdk/models/shared/propertyaddress.js.map +1 -1
  404. package/dist/esm/sdk/models/shared/propertybyslugsrequest.d.ts +5 -0
  405. package/dist/esm/sdk/models/shared/propertybyslugsrequest.d.ts.map +1 -1
  406. package/dist/esm/sdk/models/shared/propertybyslugsrequest.js +1 -0
  407. package/dist/esm/sdk/models/shared/propertybyslugsrequest.js.map +1 -1
  408. package/dist/esm/sdk/models/shared/propertydataapi.d.ts +38 -0
  409. package/dist/esm/sdk/models/shared/propertydataapi.d.ts.map +1 -1
  410. package/dist/esm/sdk/models/shared/propertydataapi.js +21 -0
  411. package/dist/esm/sdk/models/shared/propertydataapi.js.map +1 -1
  412. package/dist/esm/sdk/models/shared/propertyqueryrequest.d.ts +5 -0
  413. package/dist/esm/sdk/models/shared/propertyqueryrequest.d.ts.map +1 -1
  414. package/dist/esm/sdk/models/shared/propertyqueryrequest.js +1 -0
  415. package/dist/esm/sdk/models/shared/propertyqueryrequest.js.map +1 -1
  416. package/dist/esm/sdk/models/shared/registeredcharges.d.ts +14 -0
  417. package/dist/esm/sdk/models/shared/registeredcharges.d.ts.map +1 -0
  418. package/dist/esm/sdk/models/shared/registeredcharges.js +17 -0
  419. package/dist/esm/sdk/models/shared/registeredcharges.js.map +1 -0
  420. package/dist/esm/sdk/models/shared/salerecord.d.ts +45 -0
  421. package/dist/esm/sdk/models/shared/salerecord.d.ts.map +1 -1
  422. package/dist/esm/sdk/models/shared/salerecord.js +25 -0
  423. package/dist/esm/sdk/models/shared/salerecord.js.map +1 -1
  424. package/dist/esm/sdk/models/shared/searchresponse.d.ts +8 -0
  425. package/dist/esm/sdk/models/shared/searchresponse.d.ts.map +1 -1
  426. package/dist/esm/sdk/models/shared/searchresponse.js +4 -0
  427. package/dist/esm/sdk/models/shared/searchresponse.js.map +1 -1
  428. package/dist/esm/sdk/models/shared/searchretrieveresponse.d.ts +82 -0
  429. package/dist/esm/sdk/models/shared/searchretrieveresponse.d.ts.map +1 -0
  430. package/dist/esm/sdk/models/shared/searchretrieveresponse.js +50 -0
  431. package/dist/esm/sdk/models/shared/searchretrieveresponse.js.map +1 -0
  432. package/dist/esm/sdk/models/shared/streetmatch.d.ts +106 -0
  433. package/dist/esm/sdk/models/shared/streetmatch.d.ts.map +1 -0
  434. package/dist/esm/sdk/models/shared/streetmatch.js +45 -0
  435. package/dist/esm/sdk/models/shared/streetmatch.js.map +1 -0
  436. package/dist/esm/sdk/models/shared/titlecovenant.d.ts +23 -0
  437. package/dist/esm/sdk/models/shared/titlecovenant.d.ts.map +1 -0
  438. package/dist/esm/sdk/models/shared/{extractionrestriction.js → titlecovenant.js} +4 -4
  439. package/dist/esm/sdk/models/shared/titlecovenant.js.map +1 -0
  440. package/dist/esm/sdk/models/shared/{extractiondocumentsummary.d.ts → titledocumentsummary.d.ts} +9 -9
  441. package/dist/esm/sdk/models/shared/titledocumentsummary.d.ts.map +1 -0
  442. package/dist/esm/sdk/models/shared/{extractiondocumentsummary.js → titledocumentsummary.js} +9 -9
  443. package/dist/esm/sdk/models/shared/titledocumentsummary.js.map +1 -0
  444. package/dist/esm/sdk/models/shared/titleextractionpayload.d.ts +83 -0
  445. package/dist/esm/sdk/models/shared/titleextractionpayload.d.ts.map +1 -0
  446. package/dist/esm/sdk/models/shared/titleextractionpayload.js +65 -0
  447. package/dist/esm/sdk/models/shared/titleextractionpayload.js.map +1 -0
  448. package/dist/esm/sdk/models/shared/titleextractionpollresponse.d.ts +2 -2
  449. package/dist/esm/sdk/models/shared/titleextractionpollresponse.d.ts.map +1 -1
  450. package/dist/esm/sdk/models/shared/titleextractionpollresponse.js +2 -2
  451. package/dist/esm/sdk/models/shared/titleextractionpollresponse.js.map +1 -1
  452. package/dist/{commonjs/sdk/models/shared/extractionnotice.d.ts → esm/sdk/models/shared/titlenotice.d.ts} +13 -4
  453. package/dist/esm/sdk/models/shared/titlenotice.d.ts.map +1 -0
  454. package/dist/esm/sdk/models/shared/{extractionnotice.js → titlenotice.js} +4 -4
  455. package/dist/esm/sdk/models/shared/titlenotice.js.map +1 -0
  456. package/dist/esm/sdk/models/shared/titleproprietor.d.ts +54 -0
  457. package/dist/esm/sdk/models/shared/titleproprietor.d.ts.map +1 -0
  458. package/dist/esm/sdk/models/shared/titleproprietor.js +38 -0
  459. package/dist/esm/sdk/models/shared/titleproprietor.js.map +1 -0
  460. package/dist/esm/sdk/models/shared/titlerestriction.d.ts +23 -0
  461. package/dist/esm/sdk/models/shared/titlerestriction.d.ts.map +1 -0
  462. package/dist/esm/sdk/models/shared/titlerestriction.js +17 -0
  463. package/dist/esm/sdk/models/shared/titlerestriction.js.map +1 -0
  464. package/dist/esm/sdk/models/shared/titleschedulenoticeoflease.d.ts +13 -0
  465. package/dist/esm/sdk/models/shared/titleschedulenoticeoflease.d.ts.map +1 -0
  466. package/dist/esm/sdk/models/shared/titleschedulenoticeoflease.js +13 -0
  467. package/dist/esm/sdk/models/shared/titleschedulenoticeoflease.js.map +1 -0
  468. package/dist/esm/sdk/models/shared/titlesummarycounts.d.ts +15 -0
  469. package/dist/esm/sdk/models/shared/titlesummarycounts.d.ts.map +1 -0
  470. package/dist/esm/sdk/models/shared/titlesummarycounts.js +18 -0
  471. package/dist/esm/sdk/models/shared/titlesummarycounts.js.map +1 -0
  472. package/dist/esm/sdk/search.d.ts +14 -1
  473. package/dist/esm/sdk/search.d.ts.map +1 -1
  474. package/dist/esm/sdk/search.js +17 -1
  475. package/dist/esm/sdk/search.js.map +1 -1
  476. package/package.json +3 -2
  477. package/src/address-search/__tests__/controller.test.ts +395 -0
  478. package/src/address-search/__tests__/default-transports.test.ts +201 -0
  479. package/src/address-search/__tests__/narrow.test.ts +74 -0
  480. package/src/address-search/controller.ts +219 -0
  481. package/src/address-search/default-transports.ts +199 -0
  482. package/src/address-search/errors.ts +7 -0
  483. package/src/address-search/index.ts +54 -0
  484. package/src/address-search/lru-cache.ts +34 -0
  485. package/src/address-search/narrow.ts +45 -0
  486. package/src/address-search/types.ts +147 -0
  487. package/src/address-search.ts +40 -0
  488. package/src/funcs/avmPredictPropertyValue.ts +9 -2
  489. package/src/funcs/propertyGetProperties.ts +1 -0
  490. package/src/funcs/propertyGetPropertiesByLocation.ts +1 -0
  491. package/src/funcs/propertyGetPropertiesBySource.ts +1 -0
  492. package/src/funcs/searchSearchRetrieve.ts +192 -0
  493. package/src/funcs/searchSearchSuggest.ts +5 -1
  494. package/src/lib/config.ts +3 -3
  495. package/src/sdk/models/errors/index.ts +1 -0
  496. package/src/sdk/models/errors/predictpropertyvalue.ts +136 -0
  497. package/src/sdk/models/errors/searchretrieve.ts +391 -0
  498. package/src/sdk/models/operations/getcensuswholelevel.ts +1 -0
  499. package/src/sdk/models/operations/getlistingbyid.ts +84 -76
  500. package/src/sdk/models/operations/getlistingbysource.ts +95 -87
  501. package/src/sdk/models/operations/getlistingsbylocation.ts +95 -86
  502. package/src/sdk/models/operations/getproperties.ts +6 -0
  503. package/src/sdk/models/operations/getpropertiesbylocation.ts +6 -0
  504. package/src/sdk/models/operations/getpropertiesbysource.ts +6 -0
  505. package/src/sdk/models/operations/index.ts +1 -0
  506. package/src/sdk/models/operations/querylistings.ts +91 -82
  507. package/src/sdk/models/operations/querylistingsbysource.ts +95 -86
  508. package/src/sdk/models/operations/resolveaddress.ts +50 -12
  509. package/src/sdk/models/operations/searchretrieve.ts +45 -0
  510. package/src/sdk/models/operations/searchsuggest.ts +41 -0
  511. package/src/sdk/models/shared/addressresolverequest.ts +60 -0
  512. package/src/sdk/models/shared/advancedlisting.ts +4 -4
  513. package/src/sdk/models/shared/censusareaprofilerequest.ts +24 -0
  514. package/src/sdk/models/shared/censusrolluprequest.ts +27 -0
  515. package/src/sdk/models/shared/geocodeprecision.ts +27 -0
  516. package/src/sdk/models/shared/index.ts +14 -7
  517. package/src/sdk/models/shared/mortgagecharge.ts +76 -0
  518. package/src/sdk/models/shared/{extractionothercharge.ts → othercharge.ts} +16 -7
  519. package/src/sdk/models/shared/propertyaddress.ts +36 -3
  520. package/src/sdk/models/shared/propertybyslugsrequest.ts +6 -0
  521. package/src/sdk/models/shared/propertydataapi.ts +55 -0
  522. package/src/sdk/models/shared/propertyqueryrequest.ts +6 -0
  523. package/src/sdk/models/shared/registeredcharges.ts +40 -0
  524. package/src/sdk/models/shared/salerecord.ts +62 -0
  525. package/src/sdk/models/shared/searchresponse.ts +12 -0
  526. package/src/sdk/models/shared/searchretrieveresponse.ts +153 -0
  527. package/src/sdk/models/shared/streetmatch.ts +181 -0
  528. package/src/sdk/models/shared/{extractionrestriction.ts → titlecovenant.ts} +16 -7
  529. package/src/sdk/models/shared/{extractiondocumentsummary.ts → titledocumentsummary.ts} +20 -18
  530. package/src/sdk/models/shared/titleextractionpayload.ts +170 -0
  531. package/src/sdk/models/shared/titleextractionpollresponse.ts +5 -5
  532. package/src/sdk/models/shared/{extractionnotice.ts → titlenotice.ts} +16 -7
  533. package/src/sdk/models/shared/titleproprietor.ts +90 -0
  534. package/src/sdk/models/shared/titlerestriction.ts +48 -0
  535. package/src/sdk/models/shared/titleschedulenoticeoflease.ts +34 -0
  536. package/src/sdk/models/shared/titlesummarycounts.ts +41 -0
  537. package/src/sdk/search.ts +25 -1
  538. package/dist/commonjs/sdk/models/shared/extractiondocumentsummary.d.ts.map +0 -1
  539. package/dist/commonjs/sdk/models/shared/extractiondocumentsummary.js.map +0 -1
  540. package/dist/commonjs/sdk/models/shared/extractionmortgagecharge.d.ts +0 -26
  541. package/dist/commonjs/sdk/models/shared/extractionmortgagecharge.d.ts.map +0 -1
  542. package/dist/commonjs/sdk/models/shared/extractionmortgagecharge.js.map +0 -1
  543. package/dist/commonjs/sdk/models/shared/extractionnotice.d.ts.map +0 -1
  544. package/dist/commonjs/sdk/models/shared/extractionnotice.js.map +0 -1
  545. package/dist/commonjs/sdk/models/shared/extractionothercharge.d.ts +0 -14
  546. package/dist/commonjs/sdk/models/shared/extractionothercharge.d.ts.map +0 -1
  547. package/dist/commonjs/sdk/models/shared/extractionothercharge.js.map +0 -1
  548. package/dist/commonjs/sdk/models/shared/extractionpayload.d.ts +0 -63
  549. package/dist/commonjs/sdk/models/shared/extractionpayload.d.ts.map +0 -1
  550. package/dist/commonjs/sdk/models/shared/extractionpayload.js +0 -108
  551. package/dist/commonjs/sdk/models/shared/extractionpayload.js.map +0 -1
  552. package/dist/commonjs/sdk/models/shared/extractionproprietor.d.ts +0 -18
  553. package/dist/commonjs/sdk/models/shared/extractionproprietor.d.ts.map +0 -1
  554. package/dist/commonjs/sdk/models/shared/extractionproprietor.js.map +0 -1
  555. package/dist/commonjs/sdk/models/shared/extractionrestriction.d.ts +0 -14
  556. package/dist/commonjs/sdk/models/shared/extractionrestriction.d.ts.map +0 -1
  557. package/dist/commonjs/sdk/models/shared/extractionrestriction.js.map +0 -1
  558. package/dist/esm/sdk/models/shared/extractiondocumentsummary.d.ts.map +0 -1
  559. package/dist/esm/sdk/models/shared/extractiondocumentsummary.js.map +0 -1
  560. package/dist/esm/sdk/models/shared/extractionmortgagecharge.d.ts +0 -26
  561. package/dist/esm/sdk/models/shared/extractionmortgagecharge.d.ts.map +0 -1
  562. package/dist/esm/sdk/models/shared/extractionmortgagecharge.js +0 -28
  563. package/dist/esm/sdk/models/shared/extractionmortgagecharge.js.map +0 -1
  564. package/dist/esm/sdk/models/shared/extractionnotice.d.ts.map +0 -1
  565. package/dist/esm/sdk/models/shared/extractionnotice.js.map +0 -1
  566. package/dist/esm/sdk/models/shared/extractionothercharge.d.ts +0 -14
  567. package/dist/esm/sdk/models/shared/extractionothercharge.d.ts.map +0 -1
  568. package/dist/esm/sdk/models/shared/extractionothercharge.js.map +0 -1
  569. package/dist/esm/sdk/models/shared/extractionpayload.d.ts +0 -63
  570. package/dist/esm/sdk/models/shared/extractionpayload.d.ts.map +0 -1
  571. package/dist/esm/sdk/models/shared/extractionpayload.js +0 -68
  572. package/dist/esm/sdk/models/shared/extractionpayload.js.map +0 -1
  573. package/dist/esm/sdk/models/shared/extractionproprietor.d.ts +0 -18
  574. package/dist/esm/sdk/models/shared/extractionproprietor.d.ts.map +0 -1
  575. package/dist/esm/sdk/models/shared/extractionproprietor.js +0 -21
  576. package/dist/esm/sdk/models/shared/extractionproprietor.js.map +0 -1
  577. package/dist/esm/sdk/models/shared/extractionrestriction.d.ts +0 -14
  578. package/dist/esm/sdk/models/shared/extractionrestriction.d.ts.map +0 -1
  579. package/dist/esm/sdk/models/shared/extractionrestriction.js.map +0 -1
  580. package/src/sdk/models/shared/extractionmortgagecharge.ts +0 -66
  581. package/src/sdk/models/shared/extractionpayload.ts +0 -177
  582. package/src/sdk/models/shared/extractionproprietor.ts +0 -47
@@ -0,0 +1,187 @@
1
+ import { LruCache } from "./lru-cache.js";
2
+ import { extendsTriggerPrefix, narrowSuggestions, normaliseQuery } from "./narrow.js";
3
+ const DEFAULT_DEBOUNCE_MS = 250;
4
+ const DEFAULT_MIN_QUERY_LENGTH = 3;
5
+ const DEFAULT_CACHE_SIZE = 50;
6
+ const defaultTimers = {
7
+ now: () => Date.now(),
8
+ setTimeout: (callback, ms) => setTimeout(callback, ms),
9
+ clearTimeout: (handle) => clearTimeout(handle),
10
+ };
11
+ const INITIAL_STATE = {
12
+ status: "idle",
13
+ query: "",
14
+ suggestions: [],
15
+ searchId: null,
16
+ setComplete: false,
17
+ billing: null,
18
+ error: null,
19
+ };
20
+ /**
21
+ * Headless address autocomplete controller (SV2-C1). Framework-agnostic: no
22
+ * DOM access, no framework dependencies — feed keystrokes to `input()`,
23
+ * render from `subscribe()`/`getState()`, resolve a pick with `select()`.
24
+ *
25
+ * The point of the controller is the candidate-set protocol: once a response
26
+ * arrives with `set_complete: true`, further keystrokes that extend the
27
+ * fetched prefix narrow the held set locally — no request, no new royalty
28
+ * transaction. The server is consulted again only when the local narrow
29
+ * empties (set exhaustion) or the input stops extending the trigger prefix.
30
+ */
31
+ export function createAddressSearch(options) {
32
+ const debounceMs = options.debounceMs ?? DEFAULT_DEBOUNCE_MS;
33
+ const minQueryLength = options.minQueryLength ?? DEFAULT_MIN_QUERY_LENGTH;
34
+ const timers = options.timers ?? defaultTimers;
35
+ const cache = new LruCache(options.cacheSize ?? DEFAULT_CACHE_SIZE);
36
+ let state = INITIAL_STATE;
37
+ const listeners = new Set();
38
+ let heldSet = null;
39
+ let pendingTimer = null;
40
+ let inFlight = null;
41
+ let requestSeq = 0;
42
+ const selections = new Map();
43
+ let disposed = false;
44
+ function setState(patch) {
45
+ state = { ...state, ...patch };
46
+ for (const listener of listeners)
47
+ listener(state);
48
+ }
49
+ function stampBilling(billing) {
50
+ return billing === null ? {} : { billing: { ...billing, receivedAt: timers.now() } };
51
+ }
52
+ function cancelPending() {
53
+ if (pendingTimer !== null) {
54
+ timers.clearTimeout(pendingTimer);
55
+ pendingTimer = null;
56
+ }
57
+ if (inFlight !== null) {
58
+ inFlight.abort();
59
+ inFlight = null;
60
+ }
61
+ }
62
+ /** Apply a server (or cached) result; adopt the set when it is complete. */
63
+ function applyResult(query, result) {
64
+ if (result.setComplete && result.searchId !== null) {
65
+ heldSet = { searchId: result.searchId, triggerPrefix: normaliseQuery(query), rows: result.suggestions };
66
+ }
67
+ setState({
68
+ status: "ready",
69
+ query,
70
+ suggestions: result.suggestions,
71
+ searchId: result.searchId,
72
+ setComplete: result.setComplete,
73
+ error: null,
74
+ ...stampBilling(result.billing),
75
+ });
76
+ }
77
+ async function fetchSuggestions(query, normalised) {
78
+ inFlight?.abort();
79
+ const abort = new AbortController();
80
+ inFlight = abort;
81
+ const seq = ++requestSeq;
82
+ setState({ status: "loading", query });
83
+ try {
84
+ // Always a fresh query, never a search_id: local narrowing mirrors the
85
+ // server's, so a server-side narrow of the held set could only return
86
+ // what we already computed (or less) — the only useful re-query is a
87
+ // fresh probe, which is the counted path.
88
+ const result = await options.suggest({ query, searchId: null, signal: abort.signal });
89
+ if (seq !== requestSeq || abort.signal.aborted)
90
+ return; // superseded
91
+ inFlight = null;
92
+ cache.set(normalised, result);
93
+ applyResult(query, result);
94
+ }
95
+ catch (error) {
96
+ if (seq !== requestSeq || abort.signal.aborted)
97
+ return; // superseded or cancelled
98
+ inFlight = null;
99
+ setState({ status: "error", query, error: error instanceof Error ? error : new Error(String(error)) });
100
+ }
101
+ }
102
+ function input(text) {
103
+ if (disposed)
104
+ return;
105
+ const normalised = normaliseQuery(text);
106
+ // Below the minimum: clear suggestions, never fetch. The held set is kept —
107
+ // retyping into its prefix resumes local narrowing at zero cost.
108
+ if (normalised.length < minQueryLength) {
109
+ cancelPending();
110
+ setState({ status: "idle", query: text, suggestions: [], searchId: null, setComplete: false, error: null });
111
+ return;
112
+ }
113
+ // A query answered before costs nothing to answer again.
114
+ const cached = cache.get(normalised);
115
+ if (cached !== undefined) {
116
+ cancelPending();
117
+ applyResult(text, cached);
118
+ return;
119
+ }
120
+ // Local narrowing: the input extends the held set's trigger prefix, so the
121
+ // true match set is a subset of what we hold. Served instantly (no
122
+ // debounce — it is free) and no request leaves the client.
123
+ if (heldSet !== null && extendsTriggerPrefix(text, heldSet.triggerPrefix)) {
124
+ const narrowed = narrowSuggestions(heldSet.rows, text);
125
+ if (narrowed.length > 0) {
126
+ cancelPending();
127
+ setState({
128
+ status: "ready",
129
+ query: text,
130
+ suggestions: narrowed,
131
+ searchId: heldSet.searchId,
132
+ setComplete: true,
133
+ error: null,
134
+ });
135
+ return;
136
+ }
137
+ // Set exhaustion: fall through to a fresh counted fetch (no search_id).
138
+ }
139
+ cancelPending();
140
+ setState({ status: "debouncing", query: text });
141
+ pendingTimer = timers.setTimeout(() => {
142
+ pendingTimer = null;
143
+ void fetchSuggestions(text, normalised);
144
+ }, debounceMs);
145
+ }
146
+ function select(suggestion) {
147
+ const searchId = state.searchId;
148
+ const key = `${searchId ?? ""}::${suggestion.uprn ?? suggestion.id}`;
149
+ const existing = selections.get(key);
150
+ if (existing !== undefined)
151
+ return existing;
152
+ const promise = (async () => {
153
+ const result = await options.retrieve({ suggestion, searchId });
154
+ if (result.billing != null)
155
+ setState(stampBilling(result.billing));
156
+ return result.record;
157
+ })();
158
+ selections.set(key, promise);
159
+ // A failed retrieve must not poison the guard — the user may retry.
160
+ promise.catch(() => {
161
+ selections.delete(key);
162
+ });
163
+ return promise;
164
+ }
165
+ function subscribe(listener) {
166
+ listeners.add(listener);
167
+ return () => {
168
+ listeners.delete(listener);
169
+ };
170
+ }
171
+ function dispose() {
172
+ disposed = true;
173
+ cancelPending();
174
+ listeners.clear();
175
+ }
176
+ return {
177
+ input,
178
+ select,
179
+ subscribe,
180
+ getState: () => state,
181
+ get billing() {
182
+ return state.billing;
183
+ },
184
+ dispose,
185
+ };
186
+ }
187
+ //# sourceMappingURL=controller.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"controller.js","sourceRoot":"","sources":["../../../src/address-search/controller.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,52 @@
1
+ import type { SDKCore } from "../core.js";
2
+ import type { UprnLookupResponse } from "../sdk/models/shared/uprnlookupresponse.js";
3
+ import type { Result } from "../sdk/types/fp.js";
4
+ import type { BillingMetadata, RetrieveTransport, SuggestTransport } from "./types.js";
5
+ /** The subset of a fetch Response the suggest transport reads. */
6
+ export interface SuggestHttpResponse {
7
+ readonly ok: boolean;
8
+ readonly status: number;
9
+ readonly headers: {
10
+ get(name: string): string | null;
11
+ };
12
+ json(): Promise<unknown>;
13
+ }
14
+ /** Injectable fetch — the global `fetch` is assignable. */
15
+ export type FetchLike = (url: string, init: {
16
+ readonly headers: Record<string, string>;
17
+ readonly signal: AbortSignal;
18
+ }) => Promise<SuggestHttpResponse>;
19
+ export interface SuggestTransportConfig {
20
+ /** API origin. Default `https://api.vepler.com`. */
21
+ readonly baseUrl?: string;
22
+ /** API key sent as `x-api-key`. Omit when auth is ambient (proxy, cookie). */
23
+ readonly apiKey?: string;
24
+ readonly fetch?: FetchLike;
25
+ /** Page size requested. Default 100 (the candidate-set cap). */
26
+ readonly limit?: number;
27
+ }
28
+ /** Parse the billing transparency headers; null when none are present. */
29
+ export declare function parseBillingHeaders(headers: {
30
+ get(name: string): string | null;
31
+ }): BillingMetadata | null;
32
+ /**
33
+ * Default suggest transport: `GET /v1/search/suggest` with the v2 response
34
+ * envelope, candidate-set fields (`search_id`, `set_complete`) and billing
35
+ * headers lifted into a `SuggestResult`.
36
+ */
37
+ export declare function createSuggestTransport(config?: SuggestTransportConfig): SuggestTransport;
38
+ /** The generated UPRN lookup, injectable for tests. */
39
+ export type UprnLookupFn = (client: SDKCore, request: {
40
+ uprn: string;
41
+ }) => PromiseLike<Result<UprnLookupResponse, unknown>>;
42
+ /**
43
+ * Default retrieve transport: resolves a selected suggestion to the full
44
+ * address record through the SDK's UPRN lookup (`GET /v1/address/uprn/{uprn}`).
45
+ * Swap it out once the dedicated candidate-set retrieve endpoint ships — the
46
+ * `searchId` on the request is there for exactly that transport; this one
47
+ * cannot attribute it, so the lookup opens its own transaction row server-side.
48
+ */
49
+ export declare function createUprnRetrieveTransport(client: SDKCore, deps?: {
50
+ readonly lookup?: UprnLookupFn;
51
+ }): RetrieveTransport<UprnLookupResponse>;
52
+ //# sourceMappingURL=default-transports.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"default-transports.d.ts","sourceRoot":"","sources":["../../../src/address-search/default-transports.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,YAAY,CAAC;AAE1C,OAAO,KAAK,EAAE,kBAAkB,EAAE,MAAM,4CAA4C,CAAC;AACrF,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,oBAAoB,CAAC;AAEjD,OAAO,KAAK,EAEV,eAAe,EAGf,iBAAiB,EAEjB,gBAAgB,EACjB,MAAM,YAAY,CAAC;AAWpB,kEAAkE;AAClE,MAAM,WAAW,mBAAmB;IAClC,QAAQ,CAAC,EAAE,EAAE,OAAO,CAAC;IACrB,QAAQ,CAAC,MAAM,EAAE,MAAM,CAAC;IACxB,QAAQ,CAAC,OAAO,EAAE;QAAE,GAAG,CAAC,IAAI,EAAE,MAAM,GAAG,MAAM,GAAG,IAAI,CAAA;KAAE,CAAC;IACvD,IAAI,IAAI,OAAO,CAAC,OAAO,CAAC,CAAC;CAC1B;AAED,2DAA2D;AAC3D,MAAM,MAAM,SAAS,GAAG,CACtB,GAAG,EAAE,MAAM,EACX,IAAI,EAAE;IAAE,QAAQ,CAAC,OAAO,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;IAAC,QAAQ,CAAC,MAAM,EAAE,WAAW,CAAA;CAAE,KAC7E,OAAO,CAAC,mBAAmB,CAAC,CAAC;AAElC,MAAM,WAAW,sBAAsB;IACrC,oDAAoD;IACpD,QAAQ,CAAC,OAAO,CAAC,EAAE,MAAM,CAAC;IAC1B,8EAA8E;IAC9E,QAAQ,CAAC,MAAM,CAAC,EAAE,MAAM,CAAC;IACzB,QAAQ,CAAC,KAAK,CAAC,EAAE,SAAS,CAAC;IAC3B,gEAAgE;IAChE,QAAQ,CAAC,KAAK,CAAC,EAAE,MAAM,CAAC;CACzB;AAED,0EAA0E;AAC1E,wBAAgB,mBAAmB,CAAC,OAAO,EAAE;IAAE,GAAG,CAAC,IAAI,EAAE,MAAM,GAAG,MAAM,GAAG,IAAI,CAAA;CAAE,GAAG,eAAe,GAAG,IAAI,CAUzG;AA4ED;;;;GAIG;AACH,wBAAgB,sBAAsB,CAAC,MAAM,GAAE,sBAA2B,GAAG,gBAAgB,CAuB5F;AAED,uDAAuD;AACvD,MAAM,MAAM,YAAY,GAAG,CACzB,MAAM,EAAE,OAAO,EACf,OAAO,EAAE;IAAE,IAAI,EAAE,MAAM,CAAA;CAAE,KACtB,WAAW,CAAC,MAAM,CAAC,kBAAkB,EAAE,OAAO,CAAC,CAAC,CAAC;AAEtD;;;;;;GAMG;AACH,wBAAgB,2BAA2B,CACzC,MAAM,EAAE,OAAO,EACf,IAAI,GAAE;IAAE,QAAQ,CAAC,MAAM,CAAC,EAAE,YAAY,CAAA;CAAO,GAC5C,iBAAiB,CAAC,kBAAkB,CAAC,CAiBvC"}
@@ -0,0 +1,129 @@
1
+ import { addressLookupUprn } from "../funcs/addressLookupUprn.js";
2
+ import { AddressSearchError } from "./errors.js";
3
+ const DEFAULT_BASE_URL = "https://api.vepler.com";
4
+ /**
5
+ * Request the full page cap so any candidate set the server forms (at most
6
+ * 100 rows) arrives complete in one response — `set_complete` is only true
7
+ * when nothing was paginated away.
8
+ */
9
+ const CANDIDATE_PAGE_LIMIT = 100;
10
+ /** Parse the billing transparency headers; null when none are present. */
11
+ export function parseBillingHeaders(headers) {
12
+ const charged = headers.get("X-Credits-Charged");
13
+ const balance = headers.get("X-Credits-Balance");
14
+ const already = headers.get("X-Already-Charged");
15
+ if (charged === null && balance === null && already === null)
16
+ return null;
17
+ return {
18
+ creditsCharged: parseNumeric(charged),
19
+ creditsBalance: parseNumeric(balance),
20
+ alreadyCharged: already === null ? null : already === "true" || already === "1",
21
+ };
22
+ }
23
+ function parseNumeric(value) {
24
+ if (value === null)
25
+ return null;
26
+ const parsed = Number(value);
27
+ return Number.isFinite(parsed) ? parsed : null;
28
+ }
29
+ function parseMatchedSubstrings(value) {
30
+ if (!Array.isArray(value))
31
+ return [];
32
+ const ranges = [];
33
+ for (const entry of value) {
34
+ if (typeof entry !== "object" || entry === null)
35
+ continue;
36
+ const { offset, length } = entry;
37
+ if (typeof offset === "number" && typeof length === "number")
38
+ ranges.push({ offset, length });
39
+ }
40
+ return ranges;
41
+ }
42
+ function toSuggestion(row) {
43
+ if (typeof row !== "object" || row === null)
44
+ return null;
45
+ const record = row;
46
+ const title = typeof record.title === "string" ? record.title : typeof record.main_text === "string" ? record.main_text : null;
47
+ if (title === null)
48
+ return null;
49
+ return {
50
+ id: typeof record.id === "string" ? record.id : title,
51
+ title,
52
+ uprn: typeof record.uprn === "string" ? record.uprn : null,
53
+ source: typeof record.source === "string" ? record.source : "address",
54
+ matchedSubstrings: parseMatchedSubstrings(record.matched_substrings),
55
+ raw: row,
56
+ };
57
+ }
58
+ function parseSuggestBody(body) {
59
+ const envelope = typeof body === "object" && body !== null ? body : {};
60
+ const rawRows = Array.isArray(envelope.data)
61
+ ? envelope.data
62
+ : Array.isArray(envelope.result)
63
+ ? envelope.result
64
+ : [];
65
+ const rows = [];
66
+ for (const raw of rawRows) {
67
+ const suggestion = toSuggestion(raw);
68
+ if (suggestion !== null)
69
+ rows.push(suggestion);
70
+ }
71
+ return {
72
+ rows,
73
+ searchId: typeof envelope.search_id === "string" ? envelope.search_id : null,
74
+ setComplete: envelope.set_complete === true,
75
+ };
76
+ }
77
+ /**
78
+ * Default suggest transport: `GET /v1/search/suggest` with the v2 response
79
+ * envelope, candidate-set fields (`search_id`, `set_complete`) and billing
80
+ * headers lifted into a `SuggestResult`.
81
+ */
82
+ export function createSuggestTransport(config = {}) {
83
+ const baseUrl = (config.baseUrl ?? DEFAULT_BASE_URL).replace(/\/+$/, "");
84
+ const fetchFn = config.fetch ?? globalThis.fetch;
85
+ const limit = config.limit ?? CANDIDATE_PAGE_LIMIT;
86
+ return async ({ query, searchId, signal }) => {
87
+ const params = new URLSearchParams({ q: query, limit: String(limit) });
88
+ if (searchId !== null)
89
+ params.set("search_id", searchId);
90
+ const headers = { Accept: "application/json", "X-API-Version": "2" };
91
+ if (config.apiKey !== undefined)
92
+ headers["x-api-key"] = config.apiKey;
93
+ const response = await fetchFn(`${baseUrl}/v1/search/suggest?${params.toString()}`, { headers, signal });
94
+ if (!response.ok) {
95
+ throw new AddressSearchError(`Suggest request failed with status ${response.status}`);
96
+ }
97
+ const { rows, searchId: responseSearchId, setComplete } = parseSuggestBody(await response.json());
98
+ return {
99
+ suggestions: rows,
100
+ searchId: responseSearchId,
101
+ setComplete,
102
+ billing: parseBillingHeaders(response.headers),
103
+ };
104
+ };
105
+ }
106
+ /**
107
+ * Default retrieve transport: resolves a selected suggestion to the full
108
+ * address record through the SDK's UPRN lookup (`GET /v1/address/uprn/{uprn}`).
109
+ * Swap it out once the dedicated candidate-set retrieve endpoint ships — the
110
+ * `searchId` on the request is there for exactly that transport; this one
111
+ * cannot attribute it, so the lookup opens its own transaction row server-side.
112
+ */
113
+ export function createUprnRetrieveTransport(client, deps = {}) {
114
+ const lookup = deps.lookup ?? addressLookupUprn;
115
+ return async ({ suggestion }) => {
116
+ if (suggestion.uprn === null) {
117
+ throw new AddressSearchError(`Cannot retrieve suggestion "${suggestion.id}": it has no UPRN. ` +
118
+ "Only address rows are retrievable through the default UPRN transport.");
119
+ }
120
+ const result = await lookup(client, { uprn: suggestion.uprn });
121
+ if (!result.ok) {
122
+ throw result.error instanceof Error
123
+ ? result.error
124
+ : new AddressSearchError(`UPRN lookup failed for "${suggestion.uprn}"`);
125
+ }
126
+ return { record: result.value };
127
+ };
128
+ }
129
+ //# sourceMappingURL=default-transports.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"default-transports.js","sourceRoot":"","sources":["../../../src/address-search/default-transports.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,iBAAiB,EAAE,MAAM,+BAA+B,CAAC;AAGlE,OAAO,EAAE,kBAAkB,EAAE,MAAM,aAAa,CAAC;AAWjD,MAAM,gBAAgB,GAAG,wBAAwB,CAAC;AAElD;;;;GAIG;AACH,MAAM,oBAAoB,GAAG,GAAG,CAAC;AA0BjC,0EAA0E;AAC1E,MAAM,UAAU,mBAAmB,CAAC,OAA6C;IAC/E,MAAM,OAAO,GAAG,OAAO,CAAC,GAAG,CAAC,mBAAmB,CAAC,CAAC;IACjD,MAAM,OAAO,GAAG,OAAO,CAAC,GAAG,CAAC,mBAAmB,CAAC,CAAC;IACjD,MAAM,OAAO,GAAG,OAAO,CAAC,GAAG,CAAC,mBAAmB,CAAC,CAAC;IACjD,IAAI,OAAO,KAAK,IAAI,IAAI,OAAO,KAAK,IAAI,IAAI,OAAO,KAAK,IAAI;QAAE,OAAO,IAAI,CAAC;IAC1E,OAAO;QACL,cAAc,EAAE,YAAY,CAAC,OAAO,CAAC;QACrC,cAAc,EAAE,YAAY,CAAC,OAAO,CAAC;QACrC,cAAc,EAAE,OAAO,KAAK,IAAI,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,OAAO,KAAK,MAAM,IAAI,OAAO,KAAK,GAAG;KAChF,CAAC;AACJ,CAAC;AAED,SAAS,YAAY,CAAC,KAAoB;IACxC,IAAI,KAAK,KAAK,IAAI;QAAE,OAAO,IAAI,CAAC;IAChC,MAAM,MAAM,GAAG,MAAM,CAAC,KAAK,CAAC,CAAC;IAC7B,OAAO,MAAM,CAAC,QAAQ,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,IAAI,CAAC;AACjD,CAAC;AAwBD,SAAS,sBAAsB,CAAC,KAAc;IAC5C,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,KAAK,CAAC;QAAE,OAAO,EAAE,CAAC;IACrC,MAAM,MAAM,GAAuB,EAAE,CAAC;IACtC,KAAK,MAAM,KAAK,IAAI,KAAK,EAAE,CAAC;QAC1B,IAAI,OAAO,KAAK,KAAK,QAAQ,IAAI,KAAK,KAAK,IAAI;YAAE,SAAS;QAC1D,MAAM,EAAE,MAAM,EAAE,MAAM,EAAE,GAAG,KAA4B,CAAC;QACxD,IAAI,OAAO,MAAM,KAAK,QAAQ,IAAI,OAAO,MAAM,KAAK,QAAQ;YAAE,MAAM,CAAC,IAAI,CAAC,EAAE,MAAM,EAAE,MAAM,EAAE,CAAC,CAAC;IAChG,CAAC;IACD,OAAO,MAAM,CAAC;AAChB,CAAC;AAED,SAAS,YAAY,CAAC,GAAY;IAChC,IAAI,OAAO,GAAG,KAAK,QAAQ,IAAI,GAAG,KAAK,IAAI;QAAE,OAAO,IAAI,CAAC;IACzD,MAAM,MAAM,GAAG,GAAoB,CAAC;IACpC,MAAM,KAAK,GACT,OAAO,MAAM,CAAC,KAAK,KAAK,QAAQ,CAAC,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC,CAAC,OAAO,MAAM,CAAC,SAAS,KAAK,QAAQ,CAAC,CAAC,CAAC,MAAM,CAAC,SAAS,CAAC,CAAC,CAAC,IAAI,CAAC;IACnH,IAAI,KAAK,KAAK,IAAI;QAAE,OAAO,IAAI,CAAC;IAChC,OAAO;QACL,EAAE,EAAE,OAAO,MAAM,CAAC,EAAE,KAAK,QAAQ,CAAC,CAAC,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC,CAAC,KAAK;QACrD,KAAK;QACL,IAAI,EAAE,OAAO,MAAM,CAAC,IAAI,KAAK,QAAQ,CAAC,CAAC,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC,CAAC,IAAI;QAC1D,MAAM,EAAE,OAAO,MAAM,CAAC,MAAM,KAAK,QAAQ,CAAC,CAAC,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC,CAAC,SAAS;QACrE,iBAAiB,EAAE,sBAAsB,CAAC,MAAM,CAAC,kBAAkB,CAAC;QACpE,GAAG,EAAE,GAAG;KACT,CAAC;AACJ,CAAC;AAED,SAAS,gBAAgB,CAAC,IAAa;IACrC,MAAM,QAAQ,GAAuB,OAAO,IAAI,KAAK,QAAQ,IAAI,IAAI,KAAK,IAAI,CAAC,CAAC,CAAE,IAA2B,CAAC,CAAC,CAAC,EAAE,CAAC;IACnH,MAAM,OAAO,GAAc,KAAK,CAAC,OAAO,CAAC,QAAQ,CAAC,IAAI,CAAC;QACrD,CAAC,CAAC,QAAQ,CAAC,IAAI;QACf,CAAC,CAAC,KAAK,CAAC,OAAO,CAAC,QAAQ,CAAC,MAAM,CAAC;YAC9B,CAAC,CAAC,QAAQ,CAAC,MAAM;YACjB,CAAC,CAAC,EAAE,CAAC;IACT,MAAM,IAAI,GAAwB,EAAE,CAAC;IACrC,KAAK,MAAM,GAAG,IAAI,OAAO,EAAE,CAAC;QAC1B,MAAM,UAAU,GAAG,YAAY,CAAC,GAAG,CAAC,CAAC;QACrC,IAAI,UAAU,KAAK,IAAI;YAAE,IAAI,CAAC,IAAI,CAAC,UAAU,CAAC,CAAC;IACjD,CAAC;IACD,OAAO;QACL,IAAI;QACJ,QAAQ,EAAE,OAAO,QAAQ,CAAC,SAAS,KAAK,QAAQ,CAAC,CAAC,CAAC,QAAQ,CAAC,SAAS,CAAC,CAAC,CAAC,IAAI;QAC5E,WAAW,EAAE,QAAQ,CAAC,YAAY,KAAK,IAAI;KAC5C,CAAC;AACJ,CAAC;AAED;;;;GAIG;AACH,MAAM,UAAU,sBAAsB,CAAC,SAAiC,EAAE;IACxE,MAAM,OAAO,GAAG,CAAC,MAAM,CAAC,OAAO,IAAI,gBAAgB,CAAC,CAAC,OAAO,CAAC,MAAM,EAAE,EAAE,CAAC,CAAC;IACzE,MAAM,OAAO,GAAc,MAAM,CAAC,KAAK,IAAI,UAAU,CAAC,KAAK,CAAC;IAC5D,MAAM,KAAK,GAAG,MAAM,CAAC,KAAK,IAAI,oBAAoB,CAAC;IAEnD,OAAO,KAAK,EAAE,EAAE,KAAK,EAAE,QAAQ,EAAE,MAAM,EAAE,EAA0B,EAAE;QACnE,MAAM,MAAM,GAAG,IAAI,eAAe,CAAC,EAAE,CAAC,EAAE,KAAK,EAAE,KAAK,EAAE,MAAM,CAAC,KAAK,CAAC,EAAE,CAAC,CAAC;QACvE,IAAI,QAAQ,KAAK,IAAI;YAAE,MAAM,CAAC,GAAG,CAAC,WAAW,EAAE,QAAQ,CAAC,CAAC;QACzD,MAAM,OAAO,GAA2B,EAAE,MAAM,EAAE,kBAAkB,EAAE,eAAe,EAAE,GAAG,EAAE,CAAC;QAC7F,IAAI,MAAM,CAAC,MAAM,KAAK,SAAS;YAAE,OAAO,CAAC,WAAW,CAAC,GAAG,MAAM,CAAC,MAAM,CAAC;QAEtE,MAAM,QAAQ,GAAG,MAAM,OAAO,CAAC,GAAG,OAAO,sBAAsB,MAAM,CAAC,QAAQ,EAAE,EAAE,EAAE,EAAE,OAAO,EAAE,MAAM,EAAE,CAAC,CAAC;QACzG,IAAI,CAAC,QAAQ,CAAC,EAAE,EAAE,CAAC;YACjB,MAAM,IAAI,kBAAkB,CAAC,sCAAsC,QAAQ,CAAC,MAAM,EAAE,CAAC,CAAC;QACxF,CAAC;QACD,MAAM,EAAE,IAAI,EAAE,QAAQ,EAAE,gBAAgB,EAAE,WAAW,EAAE,GAAG,gBAAgB,CAAC,MAAM,QAAQ,CAAC,IAAI,EAAE,CAAC,CAAC;QAClG,OAAO;YACL,WAAW,EAAE,IAAI;YACjB,QAAQ,EAAE,gBAAgB;YAC1B,WAAW;YACX,OAAO,EAAE,mBAAmB,CAAC,QAAQ,CAAC,OAAO,CAAC;SAC/C,CAAC;IACJ,CAAC,CAAC;AACJ,CAAC;AAQD;;;;;;GAMG;AACH,MAAM,UAAU,2BAA2B,CACzC,MAAe,EACf,OAA2C,EAAE;IAE7C,MAAM,MAAM,GAAG,IAAI,CAAC,MAAM,IAAI,iBAAiB,CAAC;IAChD,OAAO,KAAK,EAAE,EAAE,UAAU,EAAE,EAA+C,EAAE;QAC3E,IAAI,UAAU,CAAC,IAAI,KAAK,IAAI,EAAE,CAAC;YAC7B,MAAM,IAAI,kBAAkB,CAC1B,+BAA+B,UAAU,CAAC,EAAE,qBAAqB;gBAC/D,uEAAuE,CAC1E,CAAC;QACJ,CAAC;QACD,MAAM,MAAM,GAAG,MAAM,MAAM,CAAC,MAAM,EAAE,EAAE,IAAI,EAAE,UAAU,CAAC,IAAI,EAAE,CAAC,CAAC;QAC/D,IAAI,CAAC,MAAM,CAAC,EAAE,EAAE,CAAC;YACf,MAAM,MAAM,CAAC,KAAK,YAAY,KAAK;gBACjC,CAAC,CAAC,MAAM,CAAC,KAAK;gBACd,CAAC,CAAC,IAAI,kBAAkB,CAAC,2BAA2B,UAAU,CAAC,IAAI,GAAG,CAAC,CAAC;QAC5E,CAAC;QACD,OAAO,EAAE,MAAM,EAAE,MAAM,CAAC,KAAK,EAAE,CAAC;IAClC,CAAC,CAAC;AACJ,CAAC"}
@@ -0,0 +1,5 @@
1
+ /** Error raised by the address-search controller and its default transports. */
2
+ export declare class AddressSearchError extends Error {
3
+ constructor(message: string);
4
+ }
5
+ //# sourceMappingURL=errors.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"errors.d.ts","sourceRoot":"","sources":["../../../src/address-search/errors.ts"],"names":[],"mappings":"AAAA,gFAAgF;AAChF,qBAAa,kBAAmB,SAAQ,KAAK;gBAC/B,OAAO,EAAE,MAAM;CAI5B"}
@@ -0,0 +1,8 @@
1
+ /** Error raised by the address-search controller and its default transports. */
2
+ export class AddressSearchError extends Error {
3
+ constructor(message) {
4
+ super(message);
5
+ this.name = "AddressSearchError";
6
+ }
7
+ }
8
+ //# sourceMappingURL=errors.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"errors.js","sourceRoot":"","sources":["../../../src/address-search/errors.ts"],"names":[],"mappings":"AAAA,gFAAgF;AAChF,MAAM,OAAO,kBAAmB,SAAQ,KAAK;IAC3C,YAAY,OAAe;QACzB,KAAK,CAAC,OAAO,CAAC,CAAC;QACf,IAAI,CAAC,IAAI,GAAG,oBAAoB,CAAC;IACnC,CAAC;CACF"}
@@ -0,0 +1,8 @@
1
+ export { createAddressSearch } from "./controller.js";
2
+ export type { FetchLike, SuggestHttpResponse, SuggestTransportConfig, UprnLookupFn } from "./default-transports.js";
3
+ export { createSuggestTransport, createUprnRetrieveTransport, parseBillingHeaders, } from "./default-transports.js";
4
+ export { AddressSearchError } from "./errors.js";
5
+ export { LruCache } from "./lru-cache.js";
6
+ export { extendsTriggerPrefix, narrowSuggestions, normaliseQuery, tokenise } from "./narrow.js";
7
+ export type { AddressSearchController, AddressSearchListener, AddressSearchOptions, AddressSearchState, AddressSearchStatus, AddressSearchTimers, AddressSuggestion, BillingMetadata, BillingSnapshot, MatchedSubstring, RetrieveRequest, RetrieveResult, RetrieveTransport, SuggestRequest, SuggestResult, SuggestTransport, TimerHandle, } from "./types.js";
8
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/address-search/index.ts"],"names":[],"mappings":"AAyBA,OAAO,EAAE,mBAAmB,EAAE,MAAM,iBAAiB,CAAC;AACtD,YAAY,EAAE,SAAS,EAAE,mBAAmB,EAAE,sBAAsB,EAAE,YAAY,EAAE,MAAM,yBAAyB,CAAC;AACpH,OAAO,EACL,sBAAsB,EACtB,2BAA2B,EAC3B,mBAAmB,GACpB,MAAM,yBAAyB,CAAC;AACjC,OAAO,EAAE,kBAAkB,EAAE,MAAM,aAAa,CAAC;AACjD,OAAO,EAAE,QAAQ,EAAE,MAAM,gBAAgB,CAAC;AAC1C,OAAO,EAAE,oBAAoB,EAAE,iBAAiB,EAAE,cAAc,EAAE,QAAQ,EAAE,MAAM,aAAa,CAAC;AAChG,YAAY,EACV,uBAAuB,EACvB,qBAAqB,EACrB,oBAAoB,EACpB,kBAAkB,EAClB,mBAAmB,EACnB,mBAAmB,EACnB,iBAAiB,EACjB,eAAe,EACf,eAAe,EACf,gBAAgB,EAChB,eAAe,EACf,cAAc,EACd,iBAAiB,EACjB,cAAc,EACd,aAAa,EACb,gBAAgB,EAChB,WAAW,GACZ,MAAM,YAAY,CAAC"}
@@ -0,0 +1,30 @@
1
+ /*
2
+ * Headless address autocomplete (SV2-C1). Hand-written, generator-safe: this
3
+ * directory is not tracked in .speakeasy/gen.lock, so `speakeasy run` never
4
+ * touches it (same contract as src/hooks/registration.ts).
5
+ *
6
+ * Typical wiring:
7
+ *
8
+ * ```ts
9
+ * import { SDKCore } from "@vepler/sdk/core.js";
10
+ * import {
11
+ * createAddressSearch,
12
+ * createSuggestTransport,
13
+ * createUprnRetrieveTransport,
14
+ * } from "@vepler/sdk/address-search";
15
+ *
16
+ * const core = new SDKCore({ apiKeyAuth: "..." });
17
+ * const search = createAddressSearch({
18
+ * suggest: createSuggestTransport({ apiKey: "..." }),
19
+ * retrieve: createUprnRetrieveTransport(core),
20
+ * });
21
+ * const unsubscribe = search.subscribe((state) => render(state));
22
+ * input.addEventListener("input", () => search.input(input.value));
23
+ * ```
24
+ */
25
+ export { createAddressSearch } from "./controller.js";
26
+ export { createSuggestTransport, createUprnRetrieveTransport, parseBillingHeaders, } from "./default-transports.js";
27
+ export { AddressSearchError } from "./errors.js";
28
+ export { LruCache } from "./lru-cache.js";
29
+ export { extendsTriggerPrefix, narrowSuggestions, normaliseQuery, tokenise } from "./narrow.js";
30
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/address-search/index.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;GAuBG;AAEH,OAAO,EAAE,mBAAmB,EAAE,MAAM,iBAAiB,CAAC;AAEtD,OAAO,EACL,sBAAsB,EACtB,2BAA2B,EAC3B,mBAAmB,GACpB,MAAM,yBAAyB,CAAC;AACjC,OAAO,EAAE,kBAAkB,EAAE,MAAM,aAAa,CAAC;AACjD,OAAO,EAAE,QAAQ,EAAE,MAAM,gBAAgB,CAAC;AAC1C,OAAO,EAAE,oBAAoB,EAAE,iBAAiB,EAAE,cAAc,EAAE,QAAQ,EAAE,MAAM,aAAa,CAAC"}
@@ -0,0 +1,13 @@
1
+ /**
2
+ * Minimal least-recently-used cache over an insertion-ordered Map: reads
3
+ * refresh recency by re-inserting; writes beyond capacity evict the oldest
4
+ * entry (the Map's first key).
5
+ */
6
+ export declare class LruCache<K, V> {
7
+ #private;
8
+ constructor(capacity: number);
9
+ get(key: K): V | undefined;
10
+ set(key: K, value: V): void;
11
+ get size(): number;
12
+ }
13
+ //# sourceMappingURL=lru-cache.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"lru-cache.d.ts","sourceRoot":"","sources":["../../../src/address-search/lru-cache.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AACH,qBAAa,QAAQ,CAAC,CAAC,EAAE,CAAC;;gBAIZ,QAAQ,EAAE,MAAM;IAI5B,GAAG,CAAC,GAAG,EAAE,CAAC,GAAG,CAAC,GAAG,SAAS;IAQ1B,GAAG,CAAC,GAAG,EAAE,CAAC,EAAE,KAAK,EAAE,CAAC,GAAG,IAAI;IAS3B,IAAI,IAAI,IAAI,MAAM,CAEjB;CACF"}
@@ -0,0 +1,46 @@
1
+ var __classPrivateFieldSet = (this && this.__classPrivateFieldSet) || function (receiver, state, value, kind, f) {
2
+ if (kind === "m") throw new TypeError("Private method is not writable");
3
+ if (kind === "a" && !f) throw new TypeError("Private accessor was defined without a setter");
4
+ if (typeof state === "function" ? receiver !== state || !f : !state.has(receiver)) throw new TypeError("Cannot write private member to an object whose class did not declare it");
5
+ return (kind === "a" ? f.call(receiver, value) : f ? f.value = value : state.set(receiver, value)), value;
6
+ };
7
+ var __classPrivateFieldGet = (this && this.__classPrivateFieldGet) || function (receiver, state, kind, f) {
8
+ if (kind === "a" && !f) throw new TypeError("Private accessor was defined without a getter");
9
+ if (typeof state === "function" ? receiver !== state || !f : !state.has(receiver)) throw new TypeError("Cannot read private member from an object whose class did not declare it");
10
+ return kind === "m" ? f : kind === "a" ? f.call(receiver) : f ? f.value : state.get(receiver);
11
+ };
12
+ var _LruCache_capacity, _LruCache_entries;
13
+ /**
14
+ * Minimal least-recently-used cache over an insertion-ordered Map: reads
15
+ * refresh recency by re-inserting; writes beyond capacity evict the oldest
16
+ * entry (the Map's first key).
17
+ */
18
+ export class LruCache {
19
+ constructor(capacity) {
20
+ _LruCache_capacity.set(this, void 0);
21
+ _LruCache_entries.set(this, new Map());
22
+ __classPrivateFieldSet(this, _LruCache_capacity, Math.max(1, Math.floor(capacity)), "f");
23
+ }
24
+ get(key) {
25
+ const value = __classPrivateFieldGet(this, _LruCache_entries, "f").get(key);
26
+ if (value === undefined)
27
+ return undefined;
28
+ __classPrivateFieldGet(this, _LruCache_entries, "f").delete(key);
29
+ __classPrivateFieldGet(this, _LruCache_entries, "f").set(key, value);
30
+ return value;
31
+ }
32
+ set(key, value) {
33
+ __classPrivateFieldGet(this, _LruCache_entries, "f").delete(key);
34
+ __classPrivateFieldGet(this, _LruCache_entries, "f").set(key, value);
35
+ if (__classPrivateFieldGet(this, _LruCache_entries, "f").size > __classPrivateFieldGet(this, _LruCache_capacity, "f")) {
36
+ const oldest = __classPrivateFieldGet(this, _LruCache_entries, "f").keys().next();
37
+ if (!oldest.done)
38
+ __classPrivateFieldGet(this, _LruCache_entries, "f").delete(oldest.value);
39
+ }
40
+ }
41
+ get size() {
42
+ return __classPrivateFieldGet(this, _LruCache_entries, "f").size;
43
+ }
44
+ }
45
+ _LruCache_capacity = new WeakMap(), _LruCache_entries = new WeakMap();
46
+ //# sourceMappingURL=lru-cache.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"lru-cache.js","sourceRoot":"","sources":["../../../src/address-search/lru-cache.ts"],"names":[],"mappings":";;;;;;;;;;;;AAAA;;;;GAIG;AACH,MAAM,OAAO,QAAQ;IAInB,YAAY,QAAgB;QAHnB,qCAAkB;QAClB,4BAAW,IAAI,GAAG,EAAQ,EAAC;QAGlC,uBAAA,IAAI,sBAAa,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,IAAI,CAAC,KAAK,CAAC,QAAQ,CAAC,CAAC,MAAA,CAAC;IACrD,CAAC;IAED,GAAG,CAAC,GAAM;QACR,MAAM,KAAK,GAAG,uBAAA,IAAI,yBAAS,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC;QACrC,IAAI,KAAK,KAAK,SAAS;YAAE,OAAO,SAAS,CAAC;QAC1C,uBAAA,IAAI,yBAAS,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC;QAC1B,uBAAA,IAAI,yBAAS,CAAC,GAAG,CAAC,GAAG,EAAE,KAAK,CAAC,CAAC;QAC9B,OAAO,KAAK,CAAC;IACf,CAAC;IAED,GAAG,CAAC,GAAM,EAAE,KAAQ;QAClB,uBAAA,IAAI,yBAAS,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC;QAC1B,uBAAA,IAAI,yBAAS,CAAC,GAAG,CAAC,GAAG,EAAE,KAAK,CAAC,CAAC;QAC9B,IAAI,uBAAA,IAAI,yBAAS,CAAC,IAAI,GAAG,uBAAA,IAAI,0BAAU,EAAE,CAAC;YACxC,MAAM,MAAM,GAAG,uBAAA,IAAI,yBAAS,CAAC,IAAI,EAAE,CAAC,IAAI,EAAE,CAAC;YAC3C,IAAI,CAAC,MAAM,CAAC,IAAI;gBAAE,uBAAA,IAAI,yBAAS,CAAC,MAAM,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC;QACvD,CAAC;IACH,CAAC;IAED,IAAI,IAAI;QACN,OAAO,uBAAA,IAAI,yBAAS,CAAC,IAAI,CAAC;IAC5B,CAAC;CACF"}
@@ -0,0 +1,21 @@
1
+ /** Lower-case alphanumeric tokens; everything else is a separator. */
2
+ export declare function tokenise(text: string): string[];
3
+ /**
4
+ * A row survives when EVERY token of the query is a case-insensitive prefix
5
+ * of at least one token of the row's title. Order-preserving. An empty query
6
+ * narrows nothing (the whole set survives).
7
+ */
8
+ export declare function narrowSuggestions<T extends {
9
+ readonly title: string;
10
+ }>(rows: readonly T[], query: string): T[];
11
+ /** Lower-case, collapse whitespace runs and trim — the cache and prefix key form. */
12
+ export declare function normaliseQuery(text: string): string;
13
+ /**
14
+ * True when `query` still extends the prefix a candidate set was fetched for,
15
+ * meaning the set is guaranteed to contain every match for `query` and local
16
+ * narrowing stays sound. Backspacing past the trigger (or editing inside it)
17
+ * fails this check, which forces a fresh counted fetch — the set no longer
18
+ * bounds the true match set.
19
+ */
20
+ export declare function extendsTriggerPrefix(query: string, triggerPrefix: string): boolean;
21
+ //# sourceMappingURL=narrow.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"narrow.d.ts","sourceRoot":"","sources":["../../../src/address-search/narrow.ts"],"names":[],"mappings":"AAQA,sEAAsE;AACtE,wBAAgB,QAAQ,CAAC,IAAI,EAAE,MAAM,GAAG,MAAM,EAAE,CAK/C;AAED;;;;GAIG;AACH,wBAAgB,iBAAiB,CAAC,CAAC,SAAS;IAAE,QAAQ,CAAC,KAAK,EAAE,MAAM,CAAA;CAAE,EAAE,IAAI,EAAE,SAAS,CAAC,EAAE,EAAE,KAAK,EAAE,MAAM,GAAG,CAAC,EAAE,CAO9G;AAED,qFAAqF;AACrF,wBAAgB,cAAc,CAAC,IAAI,EAAE,MAAM,GAAG,MAAM,CAEnD;AAED;;;;;;GAMG;AACH,wBAAgB,oBAAoB,CAAC,KAAK,EAAE,MAAM,EAAE,aAAa,EAAE,MAAM,GAAG,OAAO,CAElF"}
@@ -0,0 +1,43 @@
1
+ /*
2
+ * Client-side narrowing for candidate sets. Deliberately mirrors the server's
3
+ * narrowing semantics — same tokenisation, same every-token-prefix rule — so
4
+ * client and server always agree on which rows survive a keystroke. Any
5
+ * divergence here would make the client claim a set is exhausted (an extra
6
+ * counted fetch) or show rows the server would not.
7
+ */
8
+ /** Lower-case alphanumeric tokens; everything else is a separator. */
9
+ export function tokenise(text) {
10
+ return text
11
+ .toLowerCase()
12
+ .split(/[^a-z0-9]+/)
13
+ .filter(Boolean);
14
+ }
15
+ /**
16
+ * A row survives when EVERY token of the query is a case-insensitive prefix
17
+ * of at least one token of the row's title. Order-preserving. An empty query
18
+ * narrows nothing (the whole set survives).
19
+ */
20
+ export function narrowSuggestions(rows, query) {
21
+ const queryTokens = tokenise(query);
22
+ if (queryTokens.length === 0)
23
+ return [...rows];
24
+ return rows.filter((row) => {
25
+ const titleTokens = tokenise(row.title);
26
+ return queryTokens.every((queryToken) => titleTokens.some((titleToken) => titleToken.startsWith(queryToken)));
27
+ });
28
+ }
29
+ /** Lower-case, collapse whitespace runs and trim — the cache and prefix key form. */
30
+ export function normaliseQuery(text) {
31
+ return text.toLowerCase().replace(/\s+/g, " ").trim();
32
+ }
33
+ /**
34
+ * True when `query` still extends the prefix a candidate set was fetched for,
35
+ * meaning the set is guaranteed to contain every match for `query` and local
36
+ * narrowing stays sound. Backspacing past the trigger (or editing inside it)
37
+ * fails this check, which forces a fresh counted fetch — the set no longer
38
+ * bounds the true match set.
39
+ */
40
+ export function extendsTriggerPrefix(query, triggerPrefix) {
41
+ return normaliseQuery(query).startsWith(normaliseQuery(triggerPrefix));
42
+ }
43
+ //# sourceMappingURL=narrow.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"narrow.js","sourceRoot":"","sources":["../../../src/address-search/narrow.ts"],"names":[],"mappings":"AAAA;;;;;;GAMG;AAEH,sEAAsE;AACtE,MAAM,UAAU,QAAQ,CAAC,IAAY;IACnC,OAAO,IAAI;SACR,WAAW,EAAE;SACb,KAAK,CAAC,YAAY,CAAC;SACnB,MAAM,CAAC,OAAO,CAAC,CAAC;AACrB,CAAC;AAED;;;;GAIG;AACH,MAAM,UAAU,iBAAiB,CAAuC,IAAkB,EAAE,KAAa;IACvG,MAAM,WAAW,GAAG,QAAQ,CAAC,KAAK,CAAC,CAAC;IACpC,IAAI,WAAW,CAAC,MAAM,KAAK,CAAC;QAAE,OAAO,CAAC,GAAG,IAAI,CAAC,CAAC;IAC/C,OAAO,IAAI,CAAC,MAAM,CAAC,CAAC,GAAG,EAAE,EAAE;QACzB,MAAM,WAAW,GAAG,QAAQ,CAAC,GAAG,CAAC,KAAK,CAAC,CAAC;QACxC,OAAO,WAAW,CAAC,KAAK,CAAC,CAAC,UAAU,EAAE,EAAE,CAAC,WAAW,CAAC,IAAI,CAAC,CAAC,UAAU,EAAE,EAAE,CAAC,UAAU,CAAC,UAAU,CAAC,UAAU,CAAC,CAAC,CAAC,CAAC;IAChH,CAAC,CAAC,CAAC;AACL,CAAC;AAED,qFAAqF;AACrF,MAAM,UAAU,cAAc,CAAC,IAAY;IACzC,OAAO,IAAI,CAAC,WAAW,EAAE,CAAC,OAAO,CAAC,MAAM,EAAE,GAAG,CAAC,CAAC,IAAI,EAAE,CAAC;AACxD,CAAC;AAED;;;;;;GAMG;AACH,MAAM,UAAU,oBAAoB,CAAC,KAAa,EAAE,aAAqB;IACvE,OAAO,cAAc,CAAC,KAAK,CAAC,CAAC,UAAU,CAAC,cAAc,CAAC,aAAa,CAAC,CAAC,CAAC;AACzE,CAAC"}