@mailwoman/react 9.4.0 → 10.1.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (370) hide show
  1. package/README.md +17 -16
  2. package/fonts.css +97 -22
  3. package/lib/common/About.tsx +87 -71
  4. package/lib/common/ClientOnly.tsx +2 -14
  5. package/lib/common/CopyButton.tsx +3 -1
  6. package/lib/common/LoadingIndicator.tsx +4 -2
  7. package/lib/common/PresetChips.tsx +9 -8
  8. package/lib/common/confidence-tiers.ts +7 -6
  9. package/lib/common/cx.ts +3 -1
  10. package/lib/common/text-tokens.ts +7 -4
  11. package/lib/common/useBuildInfo.ts +54 -0
  12. package/lib/common/useClipboard.ts +2 -11
  13. package/lib/common.ts +22 -0
  14. package/lib/index.ts +27 -112
  15. package/lib/map/AppIdentity.tsx +85 -0
  16. package/lib/map/BackendControl.tsx +16 -13
  17. package/lib/map/CompareToggle.tsx +11 -33
  18. package/lib/map/DebugInfo.tsx +88 -0
  19. package/lib/map/Geocoder.tsx +92 -58
  20. package/lib/map/GeocoderControls.tsx +582 -127
  21. package/lib/map/GraticuleLayer.tsx +54 -0
  22. package/lib/map/MapCanvas.tsx +23 -12
  23. package/lib/map/MapChipRow.tsx +73 -0
  24. package/lib/map/MapCompass.tsx +68 -0
  25. package/lib/map/MapControlStack.tsx +97 -0
  26. package/lib/map/MapFooter.tsx +101 -0
  27. package/lib/map/MapProgressBar.tsx +55 -0
  28. package/lib/map/MapSearchBar.tsx +82 -0
  29. package/lib/map/MapSheet.tsx +71 -0
  30. package/lib/map/OverlayLayers.tsx +1 -1
  31. package/lib/map/PlaceAutocomplete.tsx +10 -21
  32. package/lib/map/PlaceMarker.tsx +4 -2
  33. package/lib/map/ResolvedPlaceLayers.tsx +5 -14
  34. package/lib/map/ResultCamera.tsx +8 -31
  35. package/lib/map/ResultOverlay.tsx +2 -12
  36. package/lib/map/ResultPanel.tsx +1 -20
  37. package/lib/map/VersionPicker.tsx +10 -19
  38. package/lib/map/fake-runtime.ts +10 -12
  39. package/lib/map/geometry.ts +14 -47
  40. package/lib/map/graticule.ts +80 -0
  41. package/lib/map/map-debug.ts +1 -1
  42. package/lib/map/place-render.ts +28 -60
  43. package/lib/map/types.ts +65 -97
  44. package/lib/map/useCompareState.ts +5 -4
  45. package/lib/map/useGeocode.ts +7 -5
  46. package/lib/map/useMapBearing.ts +56 -0
  47. package/lib/map/useMapLabelPick.ts +114 -0
  48. package/lib/map/useMapPlaceRender.ts +2 -6
  49. package/lib/map/usePlaceAutocomplete.ts +44 -50
  50. package/lib/map.ts +95 -0
  51. package/lib/pipeline/CandidatePicker.tsx +13 -5
  52. package/lib/pipeline/ConfidenceCell.tsx +1 -1
  53. package/lib/pipeline/FailureDiagnostic.tsx +8 -2
  54. package/lib/pipeline/QueryForm.tsx +5 -2
  55. package/lib/pipeline/ResolvedPlace.tsx +1 -1
  56. package/lib/pipeline/SpanHighlight.tsx +7 -5
  57. package/lib/pipeline/TimingPanel.tsx +1 -1
  58. package/lib/pipeline/TreeView.tsx +1 -1
  59. package/lib/pipeline/copy.ts +22 -25
  60. package/lib/pipeline/presets.ts +15 -13
  61. package/lib/pipeline/types.ts +21 -14
  62. package/lib/pipeline/useParsePipeline.ts +38 -24
  63. package/lib/pipeline.ts +36 -0
  64. package/lib/poi/AbstainPanel.tsx +1 -1
  65. package/lib/poi/LiveResultsBlock.tsx +2 -1
  66. package/lib/poi/POIExplorer.tsx +24 -15
  67. package/lib/poi/QueryInput.tsx +1 -1
  68. package/lib/poi/SubjectPanel.tsx +4 -3
  69. package/lib/poi/runtime.ts +5 -16
  70. package/lib/poi/types.ts +39 -27
  71. package/lib/poi/usePOISearch.ts +39 -44
  72. package/lib/poi.ts +39 -0
  73. package/lib/runtime/useReleaseRuntime.ts +125 -74
  74. package/lib/runtime.ts +16 -0
  75. package/lib/search/SearchModal.tsx +317 -0
  76. package/lib/search/search.css +144 -0
  77. package/lib/search/types.ts +67 -0
  78. package/lib/search.ts +11 -0
  79. package/out/common/About.d.ts +13 -4
  80. package/out/common/About.d.ts.map +1 -1
  81. package/out/common/About.js +5 -2
  82. package/out/common/About.js.map +1 -1
  83. package/out/common/ClientOnly.d.ts +2 -11
  84. package/out/common/ClientOnly.d.ts.map +1 -1
  85. package/out/common/ClientOnly.js +1 -13
  86. package/out/common/ClientOnly.js.map +1 -1
  87. package/out/common/CopyButton.d.ts +3 -1
  88. package/out/common/CopyButton.d.ts.map +1 -1
  89. package/out/common/CopyButton.js.map +1 -1
  90. package/out/common/LoadingIndicator.d.ts +4 -2
  91. package/out/common/LoadingIndicator.d.ts.map +1 -1
  92. package/out/common/LoadingIndicator.js.map +1 -1
  93. package/out/common/PresetChips.d.ts +9 -8
  94. package/out/common/PresetChips.d.ts.map +1 -1
  95. package/out/common/PresetChips.js.map +1 -1
  96. package/out/common/confidence-tiers.d.ts +7 -6
  97. package/out/common/confidence-tiers.d.ts.map +1 -1
  98. package/out/common/confidence-tiers.js +7 -6
  99. package/out/common/confidence-tiers.js.map +1 -1
  100. package/out/common/cx.d.ts +3 -1
  101. package/out/common/cx.d.ts.map +1 -1
  102. package/out/common/cx.js +3 -1
  103. package/out/common/cx.js.map +1 -1
  104. package/out/common/text-tokens.d.ts +4 -3
  105. package/out/common/text-tokens.d.ts.map +1 -1
  106. package/out/common/text-tokens.js +6 -3
  107. package/out/common/text-tokens.js.map +1 -1
  108. package/out/common/useBuildInfo.d.ts +27 -0
  109. package/out/common/useBuildInfo.d.ts.map +1 -0
  110. package/out/common/useBuildInfo.js +32 -0
  111. package/out/common/useBuildInfo.js.map +1 -0
  112. package/out/common/useClipboard.d.ts +1 -3
  113. package/out/common/useClipboard.d.ts.map +1 -1
  114. package/out/common/useClipboard.js +2 -11
  115. package/out/common/useClipboard.js.map +1 -1
  116. package/out/common.d.ts +22 -0
  117. package/out/common.d.ts.map +1 -0
  118. package/out/common.js +15 -0
  119. package/out/common.js.map +1 -0
  120. package/out/index.d.ts +26 -71
  121. package/out/index.d.ts.map +1 -1
  122. package/out/index.js +21 -47
  123. package/out/index.js.map +1 -1
  124. package/out/map/AppIdentity.d.ts +42 -0
  125. package/out/map/AppIdentity.d.ts.map +1 -0
  126. package/out/map/AppIdentity.js +16 -0
  127. package/out/map/AppIdentity.js.map +1 -0
  128. package/out/map/BackendControl.d.ts +9 -10
  129. package/out/map/BackendControl.d.ts.map +1 -1
  130. package/out/map/BackendControl.js +2 -2
  131. package/out/map/BackendControl.js.map +1 -1
  132. package/out/map/CompareToggle.d.ts +8 -31
  133. package/out/map/CompareToggle.d.ts.map +1 -1
  134. package/out/map/CompareToggle.js +5 -2
  135. package/out/map/CompareToggle.js.map +1 -1
  136. package/out/map/DebugInfo.d.ts +34 -0
  137. package/out/map/DebugInfo.d.ts.map +1 -0
  138. package/out/map/DebugInfo.js +39 -0
  139. package/out/map/DebugInfo.js.map +1 -0
  140. package/out/map/Geocoder.d.ts +47 -26
  141. package/out/map/Geocoder.d.ts.map +1 -1
  142. package/out/map/Geocoder.js +34 -50
  143. package/out/map/Geocoder.js.map +1 -1
  144. package/out/map/GeocoderControls.d.ts +23 -33
  145. package/out/map/GeocoderControls.d.ts.map +1 -1
  146. package/out/map/GeocoderControls.js +277 -16
  147. package/out/map/GeocoderControls.js.map +1 -1
  148. package/out/map/GraticuleLayer.d.ts +28 -0
  149. package/out/map/GraticuleLayer.d.ts.map +1 -0
  150. package/out/map/GraticuleLayer.js +25 -0
  151. package/out/map/GraticuleLayer.js.map +1 -0
  152. package/out/map/MapCanvas.d.ts +23 -12
  153. package/out/map/MapCanvas.d.ts.map +1 -1
  154. package/out/map/MapCanvas.js +5 -2
  155. package/out/map/MapCanvas.js.map +1 -1
  156. package/out/map/MapChipRow.d.ts +43 -0
  157. package/out/map/MapChipRow.d.ts.map +1 -0
  158. package/out/map/MapChipRow.js +12 -0
  159. package/out/map/MapChipRow.js.map +1 -0
  160. package/out/map/MapCompass.d.ts +33 -0
  161. package/out/map/MapCompass.d.ts.map +1 -0
  162. package/out/map/MapCompass.js +15 -0
  163. package/out/map/MapCompass.js.map +1 -0
  164. package/out/map/MapControlStack.d.ts +56 -0
  165. package/out/map/MapControlStack.d.ts.map +1 -0
  166. package/out/map/MapControlStack.js +18 -0
  167. package/out/map/MapControlStack.js.map +1 -0
  168. package/out/map/MapFooter.d.ts +27 -0
  169. package/out/map/MapFooter.d.ts.map +1 -0
  170. package/out/map/MapFooter.js +37 -0
  171. package/out/map/MapFooter.js.map +1 -0
  172. package/out/map/MapProgressBar.d.ts +31 -0
  173. package/out/map/MapProgressBar.d.ts.map +1 -0
  174. package/out/map/MapProgressBar.js +8 -0
  175. package/out/map/MapProgressBar.js.map +1 -0
  176. package/out/map/MapSearchBar.d.ts +48 -0
  177. package/out/map/MapSearchBar.d.ts.map +1 -0
  178. package/out/map/MapSearchBar.js +12 -0
  179. package/out/map/MapSearchBar.js.map +1 -0
  180. package/out/map/MapSheet.d.ts +35 -0
  181. package/out/map/MapSheet.d.ts.map +1 -0
  182. package/out/map/MapSheet.js +29 -0
  183. package/out/map/MapSheet.js.map +1 -0
  184. package/out/map/OverlayLayers.d.ts +1 -1
  185. package/out/map/OverlayLayers.js +2 -2
  186. package/out/map/PlaceAutocomplete.d.ts +10 -21
  187. package/out/map/PlaceAutocomplete.d.ts.map +1 -1
  188. package/out/map/PlaceAutocomplete.js +2 -1
  189. package/out/map/PlaceAutocomplete.js.map +1 -1
  190. package/out/map/PlaceMarker.d.ts +4 -2
  191. package/out/map/PlaceMarker.d.ts.map +1 -1
  192. package/out/map/PlaceMarker.js +3 -1
  193. package/out/map/PlaceMarker.js.map +1 -1
  194. package/out/map/ResolvedPlaceLayers.d.ts +5 -14
  195. package/out/map/ResolvedPlaceLayers.d.ts.map +1 -1
  196. package/out/map/ResolvedPlaceLayers.js +2 -2
  197. package/out/map/ResolvedPlaceLayers.js.map +1 -1
  198. package/out/map/ResultCamera.d.ts +8 -31
  199. package/out/map/ResultCamera.d.ts.map +1 -1
  200. package/out/map/ResultCamera.js +3 -28
  201. package/out/map/ResultCamera.js.map +1 -1
  202. package/out/map/ResultOverlay.d.ts +2 -12
  203. package/out/map/ResultOverlay.d.ts.map +1 -1
  204. package/out/map/ResultOverlay.js +1 -2
  205. package/out/map/ResultOverlay.js.map +1 -1
  206. package/out/map/ResultPanel.d.ts +1 -20
  207. package/out/map/ResultPanel.d.ts.map +1 -1
  208. package/out/map/ResultPanel.js +1 -1
  209. package/out/map/ResultPanel.js.map +1 -1
  210. package/out/map/VersionPicker.d.ts +7 -19
  211. package/out/map/VersionPicker.d.ts.map +1 -1
  212. package/out/map/VersionPicker.js +5 -2
  213. package/out/map/VersionPicker.js.map +1 -1
  214. package/out/map/fake-runtime.d.ts +9 -11
  215. package/out/map/fake-runtime.d.ts.map +1 -1
  216. package/out/map/fake-runtime.js +9 -12
  217. package/out/map/fake-runtime.js.map +1 -1
  218. package/out/map/geometry.d.ts +13 -34
  219. package/out/map/geometry.d.ts.map +1 -1
  220. package/out/map/geometry.js +9 -34
  221. package/out/map/geometry.js.map +1 -1
  222. package/out/map/graticule.d.ts +17 -0
  223. package/out/map/graticule.d.ts.map +1 -0
  224. package/out/map/graticule.js +67 -0
  225. package/out/map/graticule.js.map +1 -0
  226. package/out/map/map-debug.d.ts +1 -1
  227. package/out/map/map-debug.d.ts.map +1 -1
  228. package/out/map/map-debug.js +1 -1
  229. package/out/map/map-debug.js.map +1 -1
  230. package/out/map/place-render.d.ts +23 -43
  231. package/out/map/place-render.d.ts.map +1 -1
  232. package/out/map/place-render.js +4 -39
  233. package/out/map/place-render.js.map +1 -1
  234. package/out/map/types.d.ts +67 -95
  235. package/out/map/types.d.ts.map +1 -1
  236. package/out/map/types.js +1 -10
  237. package/out/map/types.js.map +1 -1
  238. package/out/map/useCompareState.d.ts +5 -4
  239. package/out/map/useCompareState.d.ts.map +1 -1
  240. package/out/map/useCompareState.js +3 -3
  241. package/out/map/useCompareState.js.map +1 -1
  242. package/out/map/useGeocode.d.ts +5 -3
  243. package/out/map/useGeocode.d.ts.map +1 -1
  244. package/out/map/useGeocode.js +4 -4
  245. package/out/map/useGeocode.js.map +1 -1
  246. package/out/map/useMapBearing.d.ts +28 -0
  247. package/out/map/useMapBearing.d.ts.map +1 -0
  248. package/out/map/useMapBearing.js +30 -0
  249. package/out/map/useMapBearing.js.map +1 -0
  250. package/out/map/useMapLabelPick.d.ts +13 -0
  251. package/out/map/useMapLabelPick.d.ts.map +1 -0
  252. package/out/map/useMapLabelPick.js +95 -0
  253. package/out/map/useMapLabelPick.js.map +1 -0
  254. package/out/map/useMapPlaceRender.d.ts +2 -6
  255. package/out/map/useMapPlaceRender.d.ts.map +1 -1
  256. package/out/map/useMapPlaceRender.js +2 -6
  257. package/out/map/useMapPlaceRender.js.map +1 -1
  258. package/out/map/usePlaceAutocomplete.d.ts +30 -28
  259. package/out/map/usePlaceAutocomplete.d.ts.map +1 -1
  260. package/out/map/usePlaceAutocomplete.js +6 -33
  261. package/out/map/usePlaceAutocomplete.js.map +1 -1
  262. package/out/map.d.ts +69 -0
  263. package/out/map.d.ts.map +1 -0
  264. package/out/map.js +46 -0
  265. package/out/map.js.map +1 -0
  266. package/out/pipeline/CandidatePicker.d.ts +12 -2
  267. package/out/pipeline/CandidatePicker.d.ts.map +1 -1
  268. package/out/pipeline/CandidatePicker.js +2 -2
  269. package/out/pipeline/CandidatePicker.js.map +1 -1
  270. package/out/pipeline/ConfidenceCell.d.ts +1 -1
  271. package/out/pipeline/ConfidenceCell.js +1 -1
  272. package/out/pipeline/FailureDiagnostic.d.ts +8 -2
  273. package/out/pipeline/FailureDiagnostic.d.ts.map +1 -1
  274. package/out/pipeline/FailureDiagnostic.js +3 -0
  275. package/out/pipeline/FailureDiagnostic.js.map +1 -1
  276. package/out/pipeline/PipelineExplorer.js +1 -1
  277. package/out/pipeline/QueryForm.d.ts +5 -2
  278. package/out/pipeline/QueryForm.d.ts.map +1 -1
  279. package/out/pipeline/QueryForm.js +1 -1
  280. package/out/pipeline/QueryForm.js.map +1 -1
  281. package/out/pipeline/ResolvedPlace.js +1 -1
  282. package/out/pipeline/SpanHighlight.d.ts +4 -3
  283. package/out/pipeline/SpanHighlight.d.ts.map +1 -1
  284. package/out/pipeline/SpanHighlight.js +3 -2
  285. package/out/pipeline/SpanHighlight.js.map +1 -1
  286. package/out/pipeline/TimingPanel.d.ts +1 -1
  287. package/out/pipeline/TimingPanel.js +1 -1
  288. package/out/pipeline/TreeView.d.ts +1 -1
  289. package/out/pipeline/copy.d.ts +1 -1
  290. package/out/pipeline/copy.d.ts.map +1 -1
  291. package/out/pipeline/copy.js +4 -3
  292. package/out/pipeline/copy.js.map +1 -1
  293. package/out/pipeline/presets.d.ts +5 -4
  294. package/out/pipeline/presets.d.ts.map +1 -1
  295. package/out/pipeline/presets.js +15 -13
  296. package/out/pipeline/presets.js.map +1 -1
  297. package/out/pipeline/types.d.ts +21 -14
  298. package/out/pipeline/types.d.ts.map +1 -1
  299. package/out/pipeline/types.js +2 -4
  300. package/out/pipeline/types.js.map +1 -1
  301. package/out/pipeline/useParsePipeline.d.ts +15 -7
  302. package/out/pipeline/useParsePipeline.d.ts.map +1 -1
  303. package/out/pipeline/useParsePipeline.js +10 -7
  304. package/out/pipeline/useParsePipeline.js.map +1 -1
  305. package/out/pipeline.d.ts +33 -0
  306. package/out/pipeline.d.ts.map +1 -0
  307. package/out/pipeline.js +21 -0
  308. package/out/pipeline.js.map +1 -0
  309. package/out/poi/AbstainPanel.d.ts +1 -1
  310. package/out/poi/LiveResultsBlock.d.ts +2 -1
  311. package/out/poi/LiveResultsBlock.d.ts.map +1 -1
  312. package/out/poi/LiveResultsBlock.js +1 -1
  313. package/out/poi/LiveResultsBlock.js.map +1 -1
  314. package/out/poi/POIExplorer.d.ts +22 -12
  315. package/out/poi/POIExplorer.d.ts.map +1 -1
  316. package/out/poi/POIExplorer.js +10 -9
  317. package/out/poi/POIExplorer.js.map +1 -1
  318. package/out/poi/QueryInput.d.ts +1 -1
  319. package/out/poi/SubjectPanel.d.ts +2 -2
  320. package/out/poi/SubjectPanel.d.ts.map +1 -1
  321. package/out/poi/SubjectPanel.js +3 -2
  322. package/out/poi/SubjectPanel.js.map +1 -1
  323. package/out/poi/runtime.d.ts +5 -14
  324. package/out/poi/runtime.d.ts.map +1 -1
  325. package/out/poi/runtime.js +5 -16
  326. package/out/poi/runtime.js.map +1 -1
  327. package/out/poi/types.d.ts +39 -27
  328. package/out/poi/types.d.ts.map +1 -1
  329. package/out/poi/types.js +2 -4
  330. package/out/poi/types.js.map +1 -1
  331. package/out/poi/usePOISearch.d.ts +28 -17
  332. package/out/poi/usePOISearch.d.ts.map +1 -1
  333. package/out/poi/usePOISearch.js +6 -32
  334. package/out/poi/usePOISearch.js.map +1 -1
  335. package/out/poi.d.ts +23 -0
  336. package/out/poi.d.ts.map +1 -0
  337. package/out/poi.js +15 -0
  338. package/out/poi.js.map +1 -0
  339. package/out/runtime/useReleaseRuntime.d.ts +64 -65
  340. package/out/runtime/useReleaseRuntime.d.ts.map +1 -1
  341. package/out/runtime/useReleaseRuntime.js +31 -26
  342. package/out/runtime/useReleaseRuntime.js.map +1 -1
  343. package/out/runtime.d.ts +9 -0
  344. package/out/runtime.d.ts.map +1 -0
  345. package/out/runtime.js +8 -0
  346. package/out/runtime.js.map +1 -0
  347. package/out/search/SearchModal.d.ts +33 -0
  348. package/out/search/SearchModal.d.ts.map +1 -0
  349. package/out/search/SearchModal.js +187 -0
  350. package/out/search/SearchModal.js.map +1 -0
  351. package/out/search/types.d.ts +64 -0
  352. package/out/search/types.d.ts.map +1 -0
  353. package/out/search/types.js +13 -0
  354. package/out/search/types.js.map +1 -0
  355. package/out/search.d.ts +11 -0
  356. package/out/search.d.ts.map +1 -0
  357. package/out/search.js +9 -0
  358. package/out/search.js.map +1 -0
  359. package/package.json +132 -133
  360. package/styles.css +1340 -202
  361. package/tokens/index.css +26 -7
  362. package/tokens/tokens.json +121 -6
  363. package/tokens/tokens.resolver.json +1 -1
  364. package/lib/map/index.ts +0 -76
  365. package/out/map/index.d.ts +0 -52
  366. package/out/map/index.d.ts.map +0 -1
  367. package/out/map/index.js +0 -36
  368. package/out/map/index.js.map +0 -1
  369. package/styleframe.config.ts +0 -321
  370. package/vitest.node.config.ts +0 -20
package/out/index.js CHANGED
@@ -2,53 +2,27 @@
2
2
  * @copyright Sister Software
3
3
  * @license AGPL-3.0
4
4
  * @author Teffen Ellis, et al.
5
+ */
6
+ /**
7
+ * Re-exports the shared presentational components and hooks that both explorers are built from.
5
8
  *
6
- * `@mailwoman/react` — React components + headless hooks for mailwoman.
7
- *
8
- * Two composed explorers plus the small presentational units and headless hooks they decompose into:
9
- *
10
- * - `POIExplorer` — a self-contained POI-intent tester (classify → subject → OverpassQL), with an
11
- * optional injected live poi.db search. No weights, no network on the intent path.
12
- * - `PipelineExplorer` — a parse+resolve tester driven by an INJECTED `PipelineRuntime`, so the
13
- * model/gazetteer plumbing (ONNX, httpvfs, node builtins) stays in the host, never in this graph.
14
- *
15
- * Styling ships separately as `@mailwoman/react/styles.css` (plain, `mw-`-prefixed, Infima-token
16
- * aware) — no CSS is imported by the component modules, so the bare package import is node-safe.
9
+ * No module in the root graph imports CSS, so the bare package import is Node-safe
10
+ * and hosts load `@mailwoman/react/styles.css` themselves.
11
+ */
12
+ export * from "#common";
13
+ /**
14
+ * Re-exports `POIExplorer`, a POI-intent tester that needs no weights or network, with its related exports.
15
+ */
16
+ export * from "#poi";
17
+ /**
18
+ * Re-exports `PipelineExplorer`, a parse-and-resolve tester with model
19
+ * and gazetteer access injected by the host.
20
+ * It also exports the explorer's related declarations.
21
+ */
22
+ export * from "#pipeline";
23
+ /**
24
+ * Re-exports `useReleaseRuntime`, the Node-safe hook that loads a release manifest
25
+ * and each selected version's assets through a host-injected loader.
17
26
  */
18
- // ── Common primitives ──────────────────────────────────────────────────────
19
- export { ClientOnly } from "./common/ClientOnly.js";
20
- export { CopyButton } from "./common/CopyButton.js";
21
- export { cx } from "#common/cx";
22
- export { KindBadge } from "./common/KindBadge.js";
23
- export { LoadingIndicator } from "./common/LoadingIndicator.js";
24
- export { PresetChips } from "./common/PresetChips.js";
25
- export { useClipboard } from "#common/useClipboard";
26
- export { useDebouncedValue } from "#common/useDebouncedValue";
27
- // ── POI explorer ───────────────────────────────────────────────────────────
28
- export { AbstainPanel } from "./poi/AbstainPanel.js";
29
- export { LiveResultsBlock } from "./poi/LiveResultsBlock.js";
30
- export { OverpassBlock } from "./poi/OverpassBlock.js";
31
- export { POIExplorer } from "./poi/POIExplorer.js";
32
- export { QueryInput } from "./poi/QueryInput.js";
33
- export { formatDistance, loadPOIRuntime, POI_DEFAULT_TEXT, POI_PRESETS } from "#poi/runtime";
34
- export { SubjectPanel } from "./poi/SubjectPanel.js";
35
- export { usePOISearch } from "#poi/usePOISearch";
36
- // ── Result visualizers ─────────────────────────────────────────────────────
37
- export { About } from "./common/About.js";
38
- export { FailureDiagnostic } from "./pipeline/FailureDiagnostic.js";
39
- export { SpanHighlight } from "./pipeline/SpanHighlight.js";
40
- export { TimingPanel } from "./pipeline/TimingPanel.js";
41
- export { TreeView } from "./pipeline/TreeView.js";
42
- // ── Pipeline explorer ──────────────────────────────────────────────────────
43
- export { CandidatePicker } from "./pipeline/CandidatePicker.js";
44
- export { ComponentTable } from "./pipeline/ComponentTable.js";
45
- export { ConfidenceCell } from "./pipeline/ConfidenceCell.js";
46
- export { buildParsePayload } from "#pipeline/copy";
47
- export { PIPELINE_DEFAULT_ADDRESS, PIPELINE_PRESETS } from "#pipeline/presets";
48
- export { PipelineExplorer } from "./pipeline/PipelineExplorer.js";
49
- export { QueryForm } from "./pipeline/QueryForm.js";
50
- export { ResolvedPlace } from "./pipeline/ResolvedPlace.js";
51
- export { useParsePipeline } from "#pipeline/useParsePipeline";
52
- // ── Release runtime (shared load orchestration; node-safe — no onnx/httpvfs/maplibre) ──
53
- export { useReleaseRuntime } from "#runtime/useReleaseRuntime";
27
+ export * from "#runtime";
54
28
  //# sourceMappingURL=index.js.map
package/out/index.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../lib/index.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;GAgBG;AAEH,8EAA8E;AAC9E,OAAO,EAAE,UAAU,EAAE,MAAM,wBAAyB,CAAA;AAEpD,OAAO,EAAE,UAAU,EAAE,MAAM,wBAAyB,CAAA;AAEpD,OAAO,EAAE,EAAE,EAAE,MAAM,YAAY,CAAA;AAE/B,OAAO,EAAE,SAAS,EAAE,MAAM,uBAAwB,CAAA;AAElD,OAAO,EAAE,gBAAgB,EAAE,MAAM,8BAA+B,CAAA;AAEhE,OAAO,EAAE,WAAW,EAAE,MAAM,yBAA0B,CAAA;AAEtD,OAAO,EAAE,YAAY,EAAE,MAAM,sBAAsB,CAAA;AAEnD,OAAO,EAAE,iBAAiB,EAAE,MAAM,2BAA2B,CAAA;AAE7D,8EAA8E;AAC9E,OAAO,EAAE,YAAY,EAAE,MAAM,uBAAwB,CAAA;AAErD,OAAO,EAAE,gBAAgB,EAAE,MAAM,2BAA4B,CAAA;AAE7D,OAAO,EAAE,aAAa,EAAE,MAAM,wBAAyB,CAAA;AAEvD,OAAO,EAAE,WAAW,EAAE,MAAM,sBAAuB,CAAA;AAEnD,OAAO,EAAE,UAAU,EAAE,MAAM,qBAAsB,CAAA;AAEjD,OAAO,EAAE,cAAc,EAAE,cAAc,EAAE,gBAAgB,EAAE,WAAW,EAAE,MAAM,cAAc,CAAA;AAC5F,OAAO,EAAE,YAAY,EAAE,MAAM,uBAAwB,CAAA;AAmBrD,OAAO,EAAE,YAAY,EAAE,MAAM,mBAAmB,CAAA;AAGhD,8EAA8E;AAE9E,OAAO,EAAE,KAAK,EAAE,MAAM,mBAAoB,CAAA;AAC1C,OAAO,EAAE,iBAAiB,EAAE,MAAM,iCAAkC,CAAA;AAEpE,OAAO,EAAE,aAAa,EAAE,MAAM,6BAA8B,CAAA;AAE5D,OAAO,EAAE,WAAW,EAAE,MAAM,2BAA4B,CAAA;AAExD,OAAO,EAAE,QAAQ,EAAE,MAAM,wBAAyB,CAAA;AAGlD,8EAA8E;AAC9E,OAAO,EAAE,eAAe,EAAE,MAAM,+BAAgC,CAAA;AAEhE,OAAO,EAAE,cAAc,EAAE,MAAM,8BAA+B,CAAA;AAE9D,OAAO,EAAE,cAAc,EAAE,MAAM,8BAA+B,CAAA;AAE9D,OAAO,EAAE,iBAAiB,EAAE,MAAM,gBAAgB,CAAA;AAClD,OAAO,EAAE,wBAAwB,EAAE,gBAAgB,EAAE,MAAM,mBAAmB,CAAA;AAC9E,OAAO,EAAE,gBAAgB,EAAE,MAAM,gCAAiC,CAAA;AAElE,OAAO,EAAE,SAAS,EAAE,MAAM,yBAA0B,CAAA;AAEpD,OAAO,EAAE,aAAa,EAAE,MAAM,6BAA8B,CAAA;AAK5D,OAAO,EAAE,gBAAgB,EAAE,MAAM,4BAA4B,CAAA;AAG7D,0FAA0F;AAC1F,OAAO,EAAE,iBAAiB,EAAE,MAAM,4BAA4B,CAAA"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../lib/index.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH;;;;;GAKG;AACH,cAAc,SAAS,CAAA;AACvB;;GAEG;AACH,cAAc,MAAM,CAAA;AACpB;;;;GAIG;AACH,cAAc,WAAW,CAAA;AACzB;;;GAGG;AACH,cAAc,UAAU,CAAA"}
@@ -0,0 +1,42 @@
1
+ /**
2
+ * @copyright Sister Software
3
+ * @license AGPL-3.0
4
+ * @author Teffen Ellis, et al.
5
+ *
6
+ * Renders the footer identity with the app name, an optional documentation link and the build
7
+ * commit. This component does not depend on the map.
8
+ */
9
+ import type { ReactNode } from "react";
10
+ /**
11
+ * Props for {@link AppIdentity}.
12
+ */
13
+ export interface AppIdentityProps {
14
+ /**
15
+ * The app's display name, such as `Mailwoman Earth`.
16
+ */
17
+ name: ReactNode;
18
+ /**
19
+ * The documentation link's target.
20
+ * The link is omitted when this is unset.
21
+ */
22
+ docsURL?: string;
23
+ /**
24
+ * The documentation link's text. @default "Developer Documentation"
25
+ */
26
+ docsLabel?: string;
27
+ /**
28
+ * The URL of the build record. @default "/build.json"
29
+ */
30
+ buildInfoURL?: string;
31
+ /**
32
+ * Builds the commit link.
33
+ * Without it, the commit is shown as plain text.
34
+ */
35
+ commitHref?: (commit: string) => string;
36
+ }
37
+ /**
38
+ * Renders the app name, documentation link and short build commit.
39
+ * The commit is omitted when no build record loads.
40
+ */
41
+ export declare function AppIdentity({ name, docsURL, docsLabel, buildInfoURL, commitHref, }: AppIdentityProps): ReactNode;
42
+ //# sourceMappingURL=AppIdentity.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"AppIdentity.d.ts","sourceRoot":"","sources":["../../lib/map/AppIdentity.tsx"],"names":[],"mappings":"AAAA;;;;;;;GAOG;AAEH,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,OAAO,CAAA;AAStC;;GAEG;AACH,MAAM,WAAW,gBAAgB;IAChC;;OAEG;IACH,IAAI,EAAE,SAAS,CAAA;IACf;;;OAGG;IACH,OAAO,CAAC,EAAE,MAAM,CAAA;IAChB;;OAEG;IACH,SAAS,CAAC,EAAE,MAAM,CAAA;IAClB;;OAEG;IACH,YAAY,CAAC,EAAE,MAAM,CAAA;IACrB;;;OAGG;IACH,UAAU,CAAC,EAAE,CAAC,MAAM,EAAE,MAAM,KAAK,MAAM,CAAA;CACvC;AAED;;;GAGG;AACH,wBAAgB,WAAW,CAAC,EAC3B,IAAI,EACJ,OAAO,EACP,SAAqC,EACrC,YAAY,EACZ,UAAU,GACV,EAAE,gBAAgB,GAAG,SAAS,CA4B9B"}
@@ -0,0 +1,16 @@
1
+ import { Fragment as _Fragment, jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
2
+ import { useBuildInfo } from "#common/useBuildInfo";
3
+ /**
4
+ * The number of commit characters shown in the footer.
5
+ */
6
+ const DISPLAYED_LENGTH = 6;
7
+ /**
8
+ * Renders the app name, documentation link and short build commit.
9
+ * The commit is omitted when no build record loads.
10
+ */
11
+ export function AppIdentity({ name, docsURL, docsLabel = "Developer Documentation", buildInfoURL, commitHref, }) {
12
+ const build = useBuildInfo(buildInfoURL);
13
+ const commit = build?.commit;
14
+ return (_jsxs(_Fragment, { children: [_jsx("strong", { children: name }), docsURL ? (_jsxs(_Fragment, { children: [" ", _jsx("a", { href: docsURL, children: docsLabel })] })) : null, commit ? (_jsxs(_Fragment, { children: [" (", commitHref ? (_jsx("a", { href: commitHref(commit), title: `Built from ${commit}`, children: _jsx("code", { children: commit.slice(0, DISPLAYED_LENGTH) }) })) : (_jsx("code", { title: `Built from ${commit}`, children: commit.slice(0, DISPLAYED_LENGTH) })), ")"] })) : null] }));
15
+ }
16
+ //# sourceMappingURL=AppIdentity.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"AppIdentity.js","sourceRoot":"","sources":["../../lib/map/AppIdentity.tsx"],"names":[],"mappings":";AAWA,OAAO,EAAE,YAAY,EAAE,MAAM,sBAAsB,CAAA;AAEnD;;GAEG;AACH,MAAM,gBAAgB,GAAG,CAAC,CAAA;AA8B1B;;;GAGG;AACH,MAAM,UAAU,WAAW,CAAC,EAC3B,IAAI,EACJ,OAAO,EACP,SAAS,GAAG,yBAAyB,EACrC,YAAY,EACZ,UAAU,GACQ;IAClB,MAAM,KAAK,GAAG,YAAY,CAAC,YAAY,CAAC,CAAA;IACxC,MAAM,MAAM,GAAG,KAAK,EAAE,MAAM,CAAA;IAE5B,OAAO,CACN,8BACC,2BAAS,IAAI,GAAU,EACtB,OAAO,CAAC,CAAC,CAAC,CACV,8BACE,GAAG,EACJ,YAAG,IAAI,EAAE,OAAO,YAAG,SAAS,GAAK,IAC/B,CACH,CAAC,CAAC,CAAC,IAAI,EACP,MAAM,CAAC,CAAC,CAAC,CACT,8BACE,IAAI,EACJ,UAAU,CAAC,CAAC,CAAC,CACb,YAAG,IAAI,EAAE,UAAU,CAAC,MAAM,CAAC,EAAE,KAAK,EAAE,cAAc,MAAM,EAAE,YACzD,yBAAO,MAAM,CAAC,KAAK,CAAC,CAAC,EAAE,gBAAgB,CAAC,GAAQ,GAC7C,CACJ,CAAC,CAAC,CAAC,CACH,eAAM,KAAK,EAAE,cAAc,MAAM,EAAE,YAAG,MAAM,CAAC,KAAK,CAAC,CAAC,EAAE,gBAAgB,CAAC,GAAQ,CAC/E,EACA,GAAG,IACF,CACH,CAAC,CAAC,CAAC,IAAI,IACN,CACH,CAAA;AACF,CAAC"}
@@ -3,30 +3,29 @@
3
3
  * @license AGPL-3.0
4
4
  * @author Teffen Ellis, et al.
5
5
  *
6
- * `<BackendControl>` — the neural-backend indicator + "Force WASM" checkbox from the demo's control
7
- * panel (`_app.tsx:1255-1280`), as a dumb presentational unit. It shows which backend the runtime
8
- * resolved to (WebGPU / WASM, with the int8 size the host formats into the label) and lets the visitor
9
- * opt out of WebGPU. Props in, one boolean event out — the host re-loads the bundle on the toggle.
10
- *
11
- * NODE-SAFE: pure React, no maplibre.
6
+ * Shows the active inference backend and a checkbox that forces WASM. The host applies the change.
12
7
  */
13
8
  import type { ReactNode } from "react";
9
+ /**
10
+ * Props for {@link BackendControl}.
11
+ */
14
12
  export interface BackendControlProps {
15
13
  /**
16
- * The backend the runtime resolved to (e.g. `webgpu (28 MB int8)`); empty before it is known.
14
+ * The backend the runtime chose, such as `webgpu (28 MB int8)`.
15
+ * It is empty until known.
17
16
  */
18
17
  activeBackend?: string;
19
18
  /**
20
- * Whether the CPU/WASM backend is currently forced.
19
+ * Whether the WASM backend is forced.
21
20
  */
22
21
  forceWASM: boolean;
23
22
  /**
24
- * Fired when the visitor toggles the "Force WASM" checkbox.
23
+ * Called when the visitor toggles the "Force WASM" checkbox.
25
24
  */
26
25
  onForceWASMChange: (forceWASM: boolean) => void;
27
26
  }
28
27
  /**
29
- * The backend indicator + WASM opt-out.
28
+ * Renders the backend indicator and the "Force WASM" checkbox.
30
29
  */
31
30
  export declare function BackendControl({ activeBackend, forceWASM, onForceWASMChange }: BackendControlProps): ReactNode;
32
31
  //# sourceMappingURL=BackendControl.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"BackendControl.d.ts","sourceRoot":"","sources":["../../lib/map/BackendControl.tsx"],"names":[],"mappings":"AAAA;;;;;;;;;;;GAWG;AAEH,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,OAAO,CAAA;AAEtC,MAAM,WAAW,mBAAmB;IACnC;;OAEG;IACH,aAAa,CAAC,EAAE,MAAM,CAAA;IACtB;;OAEG;IACH,SAAS,EAAE,OAAO,CAAA;IAClB;;OAEG;IACH,iBAAiB,EAAE,CAAC,SAAS,EAAE,OAAO,KAAK,IAAI,CAAA;CAC/C;AAED;;GAEG;AACH,wBAAgB,cAAc,CAAC,EAAE,aAAa,EAAE,SAAS,EAAE,iBAAiB,EAAE,EAAE,mBAAmB,GAAG,SAAS,CAa9G"}
1
+ {"version":3,"file":"BackendControl.d.ts","sourceRoot":"","sources":["../../lib/map/BackendControl.tsx"],"names":[],"mappings":"AAAA;;;;;;GAMG;AAEH,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,OAAO,CAAA;AAEtC;;GAEG;AACH,MAAM,WAAW,mBAAmB;IACnC;;;OAGG;IACH,aAAa,CAAC,EAAE,MAAM,CAAA;IACtB;;OAEG;IACH,SAAS,EAAE,OAAO,CAAA;IAClB;;OAEG;IACH,iBAAiB,EAAE,CAAC,SAAS,EAAE,OAAO,KAAK,IAAI,CAAA;CAC/C;AAED;;GAEG;AACH,wBAAgB,cAAc,CAAC,EAAE,aAAa,EAAE,SAAS,EAAE,iBAAiB,EAAE,EAAE,mBAAmB,GAAG,SAAS,CAiB9G"}
@@ -1,8 +1,8 @@
1
1
  import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
2
2
  /**
3
- * The backend indicator + WASM opt-out.
3
+ * Renders the backend indicator and the "Force WASM" checkbox.
4
4
  */
5
5
  export function BackendControl({ activeBackend, forceWASM, onForceWASMChange }) {
6
- return (_jsxs("div", { className: "mw-demo-backend", children: [activeBackend ? (_jsxs("span", { className: "mw-demo-backend__active", children: ["Backend: ", _jsx("code", { children: activeBackend })] })) : null, _jsxs("label", { className: "mw-demo-backend__toggle", children: [_jsx("input", { type: "checkbox", checked: forceWASM, onChange: (e) => onForceWASMChange(e.target.checked) }), " Force WASM"] })] }));
6
+ return (_jsxs("div", { className: "mw-demo-backend", children: [_jsx("span", { className: "mw-map-sheet__label", children: "Inference backend" }), activeBackend ? (_jsxs("span", { className: "mw-demo-backend__active", children: ["Running on ", _jsx("code", { children: activeBackend })] })) : null, _jsxs("label", { className: "mw-map-sheet__check mw-demo-backend__toggle", children: [_jsx("input", { type: "checkbox", checked: forceWASM, onChange: (event) => onForceWASMChange(event.target.checked) }), "Force WASM"] })] }));
7
7
  }
8
8
  //# sourceMappingURL=BackendControl.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"BackendControl.js","sourceRoot":"","sources":["../../lib/map/BackendControl.tsx"],"names":[],"mappings":";AA8BA;;GAEG;AACH,MAAM,UAAU,cAAc,CAAC,EAAE,aAAa,EAAE,SAAS,EAAE,iBAAiB,EAAuB;IAClG,OAAO,CACN,eAAK,SAAS,EAAC,iBAAiB,aAC9B,aAAa,CAAC,CAAC,CAAC,CAChB,gBAAM,SAAS,EAAC,yBAAyB,0BAC/B,yBAAO,aAAa,GAAQ,IAC/B,CACP,CAAC,CAAC,CAAC,IAAI,EACR,iBAAO,SAAS,EAAC,yBAAyB,aACzC,gBAAO,IAAI,EAAC,UAAU,EAAC,OAAO,EAAE,SAAS,EAAE,QAAQ,EAAE,CAAC,CAAC,EAAE,EAAE,CAAC,iBAAiB,CAAC,CAAC,CAAC,MAAM,CAAC,OAAO,CAAC,GAAI,mBAC5F,IACH,CACN,CAAA;AACF,CAAC"}
1
+ {"version":3,"file":"BackendControl.js","sourceRoot":"","sources":["../../lib/map/BackendControl.tsx"],"names":[],"mappings":";AA6BA;;GAEG;AACH,MAAM,UAAU,cAAc,CAAC,EAAE,aAAa,EAAE,SAAS,EAAE,iBAAiB,EAAuB;IAClG,OAAO,CACN,eAAK,SAAS,EAAC,iBAAiB,aAC/B,eAAM,SAAS,EAAC,qBAAqB,kCAAyB,EAE7D,aAAa,CAAC,CAAC,CAAC,CAChB,gBAAM,SAAS,EAAC,yBAAyB,4BAC7B,yBAAO,aAAa,GAAQ,IACjC,CACP,CAAC,CAAC,CAAC,IAAI,EAER,iBAAO,SAAS,EAAC,6CAA6C,aAC7D,gBAAO,IAAI,EAAC,UAAU,EAAC,OAAO,EAAE,SAAS,EAAE,QAAQ,EAAE,CAAC,KAAK,EAAE,EAAE,CAAC,iBAAiB,CAAC,KAAK,CAAC,MAAM,CAAC,OAAO,CAAC,GAAI,kBAEpG,IACH,CACN,CAAA;AACF,CAAC"}
@@ -3,51 +3,28 @@
3
3
  * @license AGPL-3.0
4
4
  * @author Teffen Ellis, et al.
5
5
  *
6
- * `<CompareToggle>` — the "Compare" checkbox plus the compare-version `<select>` from the demo's
7
- * control panel (`_app.tsx:1281-1339`), as a dumb presentational unit. Turning it on reveals a second
8
- * version picker (the primary version filtered out); the actual second parse is a host concern the
9
- * composed demo surfaces through `panels.compare`. Props in, two events out.
10
- *
11
- * NODE-SAFE: pure React, no maplibre.
6
+ * Renders a compare-mode checkbox and a selector for the second model version, leaving the comparison itself to the host.
12
7
  */
13
8
  import type { ReactNode } from "react";
14
9
  import type { VersionOption } from "#map/types";
10
+ /**
11
+ * Props for {@link CompareToggle}.
12
+ */
15
13
  export interface CompareToggleProps {
16
- /**
17
- * The selectable model bundles (the primary version is filtered out of the compare list).
18
- */
19
14
  versions: ReadonlyArray<VersionOption>;
20
- /**
21
- * The primary version, excluded from the compare options.
22
- */
23
15
  primaryVersion: string | null;
24
- /**
25
- * Whether compare mode is on.
26
- */
27
16
  compareMode: boolean;
28
- /**
29
- * Fired when the visitor flips compare mode.
30
- */
31
17
  onCompareModeChange: (compareMode: boolean) => void;
32
- /**
33
- * The version chosen to compare against, or `null` when none is chosen.
34
- */
35
18
  compareVersion: string | null;
36
- /**
37
- * Fired with the chosen compare version (or `null` when the empty option is picked).
38
- */
39
19
  onCompareVersionChange: (version: string | null) => void;
40
- /**
41
- * Disable the compare-version select (e.g. while a parse or compare load runs).
42
- */
43
20
  disabled?: boolean;
44
- /**
45
- * A status line rendered under the select (e.g. the compare backend, or a "Loading…" line).
46
- */
47
21
  status?: ReactNode;
48
22
  }
49
23
  /**
50
- * The compare toggle + (when on) the compare-version selector. Renders `null` with fewer than two versions.
24
+ * Renders the compare checkbox.
25
+ *
26
+ * In compare mode, it also renders the version selector. and no control at all
27
+ * when fewer than two versions exist.
51
28
  */
52
29
  export declare function CompareToggle({ versions, primaryVersion, compareMode, onCompareModeChange, compareVersion, onCompareVersionChange, disabled, status, }: CompareToggleProps): ReactNode;
53
30
  //# sourceMappingURL=CompareToggle.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"CompareToggle.d.ts","sourceRoot":"","sources":["../../lib/map/CompareToggle.tsx"],"names":[],"mappings":"AAAA;;;;;;;;;;;GAWG;AAEH,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,OAAO,CAAA;AAEtC,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,YAAY,CAAA;AAE/C,MAAM,WAAW,kBAAkB;IAClC;;OAEG;IACH,QAAQ,EAAE,aAAa,CAAC,aAAa,CAAC,CAAA;IACtC;;OAEG;IACH,cAAc,EAAE,MAAM,GAAG,IAAI,CAAA;IAC7B;;OAEG;IACH,WAAW,EAAE,OAAO,CAAA;IACpB;;OAEG;IACH,mBAAmB,EAAE,CAAC,WAAW,EAAE,OAAO,KAAK,IAAI,CAAA;IACnD;;OAEG;IACH,cAAc,EAAE,MAAM,GAAG,IAAI,CAAA;IAC7B;;OAEG;IACH,sBAAsB,EAAE,CAAC,OAAO,EAAE,MAAM,GAAG,IAAI,KAAK,IAAI,CAAA;IACxD;;OAEG;IACH,QAAQ,CAAC,EAAE,OAAO,CAAA;IAClB;;OAEG;IACH,MAAM,CAAC,EAAE,SAAS,CAAA;CAClB;AAED;;GAEG;AACH,wBAAgB,aAAa,CAAC,EAC7B,QAAQ,EACR,cAAc,EACd,WAAW,EACX,mBAAmB,EACnB,cAAc,EACd,sBAAsB,EACtB,QAAQ,EACR,MAAM,GACN,EAAE,kBAAkB,GAAG,SAAS,CAkChC"}
1
+ {"version":3,"file":"CompareToggle.d.ts","sourceRoot":"","sources":["../../lib/map/CompareToggle.tsx"],"names":[],"mappings":"AAAA;;;;;;GAMG;AAEH,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,OAAO,CAAA;AAEtC,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,YAAY,CAAA;AAE/C;;GAEG;AACH,MAAM,WAAW,kBAAkB;IAClC,QAAQ,EAAE,aAAa,CAAC,aAAa,CAAC,CAAA;IACtC,cAAc,EAAE,MAAM,GAAG,IAAI,CAAA;IAC7B,WAAW,EAAE,OAAO,CAAA;IACpB,mBAAmB,EAAE,CAAC,WAAW,EAAE,OAAO,KAAK,IAAI,CAAA;IACnD,cAAc,EAAE,MAAM,GAAG,IAAI,CAAA;IAC7B,sBAAsB,EAAE,CAAC,OAAO,EAAE,MAAM,GAAG,IAAI,KAAK,IAAI,CAAA;IACxD,QAAQ,CAAC,EAAE,OAAO,CAAA;IAClB,MAAM,CAAC,EAAE,SAAS,CAAA;CAClB;AAED;;;;;GAKG;AACH,wBAAgB,aAAa,CAAC,EAC7B,QAAQ,EACR,cAAc,EACd,WAAW,EACX,mBAAmB,EACnB,cAAc,EACd,sBAAsB,EACtB,QAAQ,EACR,MAAM,GACN,EAAE,kBAAkB,GAAG,SAAS,CAmChC"}
@@ -1,11 +1,14 @@
1
1
  import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
2
2
  /**
3
- * The compare toggle + (when on) the compare-version selector. Renders `null` with fewer than two versions.
3
+ * Renders the compare checkbox.
4
+ *
5
+ * In compare mode, it also renders the version selector. and no control at all
6
+ * when fewer than two versions exist.
4
7
  */
5
8
  export function CompareToggle({ versions, primaryVersion, compareMode, onCompareModeChange, compareVersion, onCompareVersionChange, disabled, status, }) {
6
9
  if (versions.length < 2)
7
10
  return null;
8
11
  const options = versions.filter((v) => v.version !== primaryVersion);
9
- return (_jsxs("div", { className: "mw-demo-compare", children: [_jsxs("label", { className: "mw-demo-compare__toggle", children: [_jsx("input", { type: "checkbox", checked: compareMode, onChange: (e) => onCompareModeChange(e.target.checked) }), " Compare"] }), compareMode ? (_jsxs("div", { className: "mw-demo-control", children: [_jsx("label", { className: "mw-demo-control__label", htmlFor: "mw-demo-compare-version", children: "Compare with" }), _jsxs("select", { id: "mw-demo-compare-version", className: "mw-demo-control__select", value: compareVersion ?? "", onChange: (e) => onCompareVersionChange(e.target.value || null), disabled: disabled, children: [_jsx("option", { value: "", children: "Select version\u2026" }), options.map((v) => (_jsx("option", { value: v.version, children: v.label ?? v.version }, v.version)))] }), status ? _jsx("p", { className: "mw-demo-compare__status", children: status }) : null] })) : null] }));
12
+ return (_jsxs("div", { className: "mw-demo-compare", children: [_jsxs("label", { className: "mw-map-sheet__check mw-demo-compare__toggle", children: [_jsx("input", { type: "checkbox", checked: compareMode, onChange: (event) => onCompareModeChange(event.target.checked) }), "Compare two model versions"] }), compareMode ? (_jsxs("div", { className: "mw-demo-control", children: [_jsx("label", { className: "mw-demo-control__label", htmlFor: "mw-demo-compare-version", children: "Compare with" }), _jsxs("select", { id: "mw-demo-compare-version", className: "mw-demo-control__select", value: compareVersion ?? "", onChange: (e) => onCompareVersionChange(e.target.value || null), disabled: disabled, children: [_jsx("option", { value: "", children: "Select version\u2026" }), options.map((v) => (_jsx("option", { value: v.version, children: v.label ?? v.version }, v.version)))] }), status ? _jsx("p", { className: "mw-demo-compare__status", children: status }) : null] })) : null] }));
10
13
  }
11
14
  //# sourceMappingURL=CompareToggle.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"CompareToggle.js","sourceRoot":"","sources":["../../lib/map/CompareToggle.tsx"],"names":[],"mappings":";AAoDA;;GAEG;AACH,MAAM,UAAU,aAAa,CAAC,EAC7B,QAAQ,EACR,cAAc,EACd,WAAW,EACX,mBAAmB,EACnB,cAAc,EACd,sBAAsB,EACtB,QAAQ,EACR,MAAM,GACc;IACpB,IAAI,QAAQ,CAAC,MAAM,GAAG,CAAC;QAAE,OAAO,IAAI,CAAA;IAEpC,MAAM,OAAO,GAAG,QAAQ,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,OAAO,KAAK,cAAc,CAAC,CAAA;IAEpE,OAAO,CACN,eAAK,SAAS,EAAC,iBAAiB,aAC/B,iBAAO,SAAS,EAAC,yBAAyB,aACzC,gBAAO,IAAI,EAAC,UAAU,EAAC,OAAO,EAAE,WAAW,EAAE,QAAQ,EAAE,CAAC,CAAC,EAAE,EAAE,CAAC,mBAAmB,CAAC,CAAC,CAAC,MAAM,CAAC,OAAO,CAAC,GAAI,gBAChG,EACP,WAAW,CAAC,CAAC,CAAC,CACd,eAAK,SAAS,EAAC,iBAAiB,aAC/B,gBAAO,SAAS,EAAC,wBAAwB,EAAC,OAAO,EAAC,yBAAyB,6BAEnE,EACR,kBACC,EAAE,EAAC,yBAAyB,EAC5B,SAAS,EAAC,yBAAyB,EACnC,KAAK,EAAE,cAAc,IAAI,EAAE,EAC3B,QAAQ,EAAE,CAAC,CAAC,EAAE,EAAE,CAAC,sBAAsB,CAAC,CAAC,CAAC,MAAM,CAAC,KAAK,IAAI,IAAI,CAAC,EAC/D,QAAQ,EAAE,QAAQ,aAElB,iBAAQ,KAAK,EAAC,EAAE,qCAAyB,EACxC,OAAO,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CACnB,iBAAwB,KAAK,EAAE,CAAC,CAAC,OAAO,YACtC,CAAC,CAAC,KAAK,IAAI,CAAC,CAAC,OAAO,IADT,CAAC,CAAC,OAAO,CAEb,CACT,CAAC,IACM,EACR,MAAM,CAAC,CAAC,CAAC,YAAG,SAAS,EAAC,yBAAyB,YAAE,MAAM,GAAK,CAAC,CAAC,CAAC,IAAI,IAC/D,CACN,CAAC,CAAC,CAAC,IAAI,IACH,CACN,CAAA;AACF,CAAC"}
1
+ {"version":3,"file":"CompareToggle.js","sourceRoot":"","sources":["../../lib/map/CompareToggle.tsx"],"names":[],"mappings":";AA0BA;;;;;GAKG;AACH,MAAM,UAAU,aAAa,CAAC,EAC7B,QAAQ,EACR,cAAc,EACd,WAAW,EACX,mBAAmB,EACnB,cAAc,EACd,sBAAsB,EACtB,QAAQ,EACR,MAAM,GACc;IACpB,IAAI,QAAQ,CAAC,MAAM,GAAG,CAAC;QAAE,OAAO,IAAI,CAAA;IAEpC,MAAM,OAAO,GAAG,QAAQ,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,OAAO,KAAK,cAAc,CAAC,CAAA;IAEpE,OAAO,CACN,eAAK,SAAS,EAAC,iBAAiB,aAC/B,iBAAO,SAAS,EAAC,6CAA6C,aAC7D,gBAAO,IAAI,EAAC,UAAU,EAAC,OAAO,EAAE,WAAW,EAAE,QAAQ,EAAE,CAAC,KAAK,EAAE,EAAE,CAAC,mBAAmB,CAAC,KAAK,CAAC,MAAM,CAAC,OAAO,CAAC,GAAI,kCAExG,EACP,WAAW,CAAC,CAAC,CAAC,CACd,eAAK,SAAS,EAAC,iBAAiB,aAC/B,gBAAO,SAAS,EAAC,wBAAwB,EAAC,OAAO,EAAC,yBAAyB,6BAEnE,EACR,kBACC,EAAE,EAAC,yBAAyB,EAC5B,SAAS,EAAC,yBAAyB,EACnC,KAAK,EAAE,cAAc,IAAI,EAAE,EAC3B,QAAQ,EAAE,CAAC,CAAC,EAAE,EAAE,CAAC,sBAAsB,CAAC,CAAC,CAAC,MAAM,CAAC,KAAK,IAAI,IAAI,CAAC,EAC/D,QAAQ,EAAE,QAAQ,aAElB,iBAAQ,KAAK,EAAC,EAAE,qCAAyB,EACxC,OAAO,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CACnB,iBAAwB,KAAK,EAAE,CAAC,CAAC,OAAO,YACtC,CAAC,CAAC,KAAK,IAAI,CAAC,CAAC,OAAO,IADT,CAAC,CAAC,OAAO,CAEb,CACT,CAAC,IACM,EACR,MAAM,CAAC,CAAC,CAAC,YAAG,SAAS,EAAC,yBAAyB,YAAE,MAAM,GAAK,CAAC,CAAC,CAAC,IAAI,IAC/D,CACN,CAAC,CAAC,CAAC,IAAI,IACH,CACN,CAAA;AACF,CAAC"}
@@ -0,0 +1,34 @@
1
+ /**
2
+ * @copyright Sister Software
3
+ * @license AGPL-3.0
4
+ * @author Teffen Ellis, et al.
5
+ *
6
+ * Display and log build, model and runtime details for bug reports.
7
+ * Report the actual execution backend because successful loading does not imply WebGPU ran.
8
+ */
9
+ import { type ReactNode } from "react";
10
+ export interface DebugInfoProps {
11
+ /**
12
+ * The backend the runtime resolved to (e.g. `webgpu (28 MB int8)`); empty before it is known.
13
+ */
14
+ activeBackend?: string;
15
+ /**
16
+ * Whether the CPU/wasm backend is currently forced.
17
+ *
18
+ * This explains a `wasm` backend that would otherwise indicate a WebGPU failure.
19
+ */
20
+ forceWASM?: boolean;
21
+ /**
22
+ * The model version the runtime loaded.
23
+ *
24
+ * The training series.
25
+ * It differs from the npm version.
26
+ */
27
+ selectedVersion?: string | null;
28
+ /**
29
+ * Whether the asset bundle finished loading.
30
+ */
31
+ ready?: boolean;
32
+ }
33
+ export declare function DebugInfo({ activeBackend, forceWASM, selectedVersion, ready }: DebugInfoProps): ReactNode;
34
+ //# sourceMappingURL=DebugInfo.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"DebugInfo.d.ts","sourceRoot":"","sources":["../../lib/map/DebugInfo.tsx"],"names":[],"mappings":"AAAA;;;;;;;GAOG;AAEH,OAAO,EAAE,KAAK,SAAS,EAAsB,MAAM,OAAO,CAAA;AAI1D,MAAM,WAAW,cAAc;IAC9B;;OAEG;IACH,aAAa,CAAC,EAAE,MAAM,CAAA;IACtB;;;;OAIG;IACH,SAAS,CAAC,EAAE,OAAO,CAAA;IACnB;;;;;OAKG;IACH,eAAe,CAAC,EAAE,MAAM,GAAG,IAAI,CAAA;IAC/B;;OAEG;IACH,KAAK,CAAC,EAAE,OAAO,CAAA;CACf;AAcD,wBAAgB,SAAS,CAAC,EAAE,aAAa,EAAE,SAAS,EAAE,eAAe,EAAE,KAAK,EAAE,EAAE,cAAc,GAAG,SAAS,CAsCzG"}
@@ -0,0 +1,39 @@
1
+ import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
2
+ /**
3
+ * @copyright Sister Software
4
+ * @license AGPL-3.0
5
+ * @author Teffen Ellis, et al.
6
+ *
7
+ * Display and log build, model and runtime details for bug reports.
8
+ * Report the actual execution backend because successful loading does not imply WebGPU ran.
9
+ */
10
+ import { useEffect, useMemo } from "react";
11
+ import { useBuildInfo } from "#common/useBuildInfo";
12
+ /**
13
+ * One row of the record, as a label and a value.
14
+ */
15
+ function Row({ label, value }) {
16
+ return (_jsxs("div", { className: "mw-debug-info__row", children: [_jsx("span", { className: "mw-debug-info__label", children: label }), _jsx("code", { className: "mw-debug-info__value", children: value })] }));
17
+ }
18
+ export function DebugInfo({ activeBackend, forceWASM, selectedVersion, ready }) {
19
+ const build = useBuildInfo();
20
+ // Memoized on the primitives it reads, so the log below fires when a value changes
21
+ // rather than on every render.
22
+ // A record rebuilt each render would be a new object each time and log continuously.
23
+ const record = useMemo(() => ({
24
+ app: build?.app ?? "—",
25
+ commit: build?.commit ?? build?.revision ?? "—",
26
+ buildTime: build?.buildTime ?? "—",
27
+ model: selectedVersion ?? "—",
28
+ backend: activeBackend || (ready ? "unknown" : "loading…"),
29
+ forceWASM: Boolean(forceWASM),
30
+ webgpuInBrowser: typeof navigator !== "undefined" && "gpu" in navigator,
31
+ userAgent: typeof navigator !== "undefined" ? navigator.userAgent : "—",
32
+ }), [build?.app, build?.commit, build?.revision, build?.buildTime, selectedVersion, activeBackend, forceWASM, ready]);
33
+ useEffect(() => {
34
+ // eslint-disable-next-line no-console -- this is the feature: the record has to reach the console a reporter copies.
35
+ console.info("[mailwoman] debug info", record);
36
+ }, [record]);
37
+ return (_jsxs("div", { className: "mw-debug-info", children: [_jsx(Row, { label: "Build", value: record.app }), _jsx(Row, { label: "Commit", value: record.commit.slice(0, 12) }), _jsx(Row, { label: "Built", value: record.buildTime }), _jsx(Row, { label: "Model", value: record.model }), _jsx(Row, { label: "Backend", value: record.backend }), _jsx(Row, { label: "WebGPU available", value: record.webgpuInBrowser ? "yes" : "no" }), _jsx(Row, { label: "Force WASM", value: record.forceWASM ? "on" : "off" })] }));
38
+ }
39
+ //# sourceMappingURL=DebugInfo.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"DebugInfo.js","sourceRoot":"","sources":["../../lib/map/DebugInfo.tsx"],"names":[],"mappings":";AAAA;;;;;;;GAOG;AAEH,OAAO,EAAkB,SAAS,EAAE,OAAO,EAAE,MAAM,OAAO,CAAA;AAE1D,OAAO,EAAE,YAAY,EAAE,MAAM,sBAAsB,CAAA;AA0BnD;;GAEG;AACH,SAAS,GAAG,CAAC,EAAE,KAAK,EAAE,KAAK,EAAoC;IAC9D,OAAO,CACN,eAAK,SAAS,EAAC,oBAAoB,aAClC,eAAM,SAAS,EAAC,sBAAsB,YAAE,KAAK,GAAQ,EACrD,eAAM,SAAS,EAAC,sBAAsB,YAAE,KAAK,GAAQ,IAChD,CACN,CAAA;AACF,CAAC;AAED,MAAM,UAAU,SAAS,CAAC,EAAE,aAAa,EAAE,SAAS,EAAE,eAAe,EAAE,KAAK,EAAkB;IAC7F,MAAM,KAAK,GAAG,YAAY,EAAE,CAAA;IAE5B,mFAAmF;IACnF,+BAA+B;IAC/B,qFAAqF;IACrF,MAAM,MAAM,GAAG,OAAO,CACrB,GAAG,EAAE,CAAC,CAAC;QACN,GAAG,EAAE,KAAK,EAAE,GAAG,IAAI,GAAG;QACtB,MAAM,EAAE,KAAK,EAAE,MAAM,IAAI,KAAK,EAAE,QAAQ,IAAI,GAAG;QAC/C,SAAS,EAAE,KAAK,EAAE,SAAS,IAAI,GAAG;QAClC,KAAK,EAAE,eAAe,IAAI,GAAG;QAC7B,OAAO,EAAE,aAAa,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,UAAU,CAAC;QAC1D,SAAS,EAAE,OAAO,CAAC,SAAS,CAAC;QAC7B,eAAe,EAAE,OAAO,SAAS,KAAK,WAAW,IAAI,KAAK,IAAI,SAAS;QACvE,SAAS,EAAE,OAAO,SAAS,KAAK,WAAW,CAAC,CAAC,CAAC,SAAS,CAAC,SAAS,CAAC,CAAC,CAAC,GAAG;KACvE,CAAC,EACF,CAAC,KAAK,EAAE,GAAG,EAAE,KAAK,EAAE,MAAM,EAAE,KAAK,EAAE,QAAQ,EAAE,KAAK,EAAE,SAAS,EAAE,eAAe,EAAE,aAAa,EAAE,SAAS,EAAE,KAAK,CAAC,CAChH,CAAA;IAED,SAAS,CAAC,GAAG,EAAE;QACd,qHAAqH;QACrH,OAAO,CAAC,IAAI,CAAC,wBAAwB,EAAE,MAAM,CAAC,CAAA;IAC/C,CAAC,EAAE,CAAC,MAAM,CAAC,CAAC,CAAA;IAEZ,OAAO,CACN,eAAK,SAAS,EAAC,eAAe,aAC7B,KAAC,GAAG,IAAC,KAAK,EAAC,OAAO,EAAC,KAAK,EAAE,MAAM,CAAC,GAAG,GAAI,EACxC,KAAC,GAAG,IAAC,KAAK,EAAC,QAAQ,EAAC,KAAK,EAAE,MAAM,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC,EAAE,EAAE,CAAC,GAAI,EACzD,KAAC,GAAG,IAAC,KAAK,EAAC,OAAO,EAAC,KAAK,EAAE,MAAM,CAAC,SAAS,GAAI,EAC9C,KAAC,GAAG,IAAC,KAAK,EAAC,OAAO,EAAC,KAAK,EAAE,MAAM,CAAC,KAAK,GAAI,EAC1C,KAAC,GAAG,IAAC,KAAK,EAAC,SAAS,EAAC,KAAK,EAAE,MAAM,CAAC,OAAO,GAAI,EAG9C,KAAC,GAAG,IAAC,KAAK,EAAC,kBAAkB,EAAC,KAAK,EAAE,MAAM,CAAC,eAAe,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,IAAI,GAAI,EAC9E,KAAC,GAAG,IAAC,KAAK,EAAC,YAAY,EAAC,KAAK,EAAE,MAAM,CAAC,SAAS,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,KAAK,GAAI,IAC7D,CACN,CAAA;AACF,CAAC"}
@@ -2,56 +2,77 @@
2
2
  * @copyright Sister Software
3
3
  * @license AGPL-3.0
4
4
  * @author Teffen Ellis, et al.
5
- *
6
- * `<Geocoder>` — the WHOLE geocoder, composed. It is the map analogue of `PipelineExplorer`
7
- * and takes the SAME DI shape: an injected {@link GeocoderRuntime} (the host owns ONNX / httpvfs / R2 /
8
- * the composed map style) plus a {@link GeocoderPanels} bag (the host's ModelVisualizer / VersionCompare /
9
- * About / Permalink). Everything here is composition + a `ClientOnly` boundary:
10
- *
11
- * - the floating {@link GeocoderControls} panel (version / compare / backend / query+autocomplete / result),
12
- * - the declarative {@link MapCanvas} with the phase-2 overlays ({@link OverlayLayers}) and the
13
- * resolved-place marker/outline/camera ({@link ResolvedPlaceLayers}) driven by the parse state,
14
- * - the hooks that wire them: {@link useGeocode} (parse + viewport bias + map place),
15
- * {@link usePlaceAutocomplete}, {@link useCompareState}.
16
- *
17
- * Because it pulls {@link MapCanvas} (→ `react-map-gl` → `maplibre-gl`, WebGL + DOM at import), it lives on
18
- * the `@mailwoman/react/map` subpath ONLY — never the package root. The whole thing renders in Storybook
19
- * over a fake runtime (offline stub style + canned geocode) with no network, no ONNX, no gazetteer.
20
5
  */
21
6
  import { type ReactNode } from "react";
22
7
  import type { GeocoderPanels, GeocoderRuntime } from "#map/types";
23
8
  import type { Preset } from "../common/PresetChips.tsx";
9
+ /**
10
+ * Props for {@linkcode Geocoder}.
11
+ */
24
12
  export interface GeocoderProps {
25
13
  /**
26
- * The injected geocoder runtime (map style + overlays + parse + version/backend).
14
+ * The geocoder runtime supplies the map style and overlays.
15
+ *
16
+ * It also supplies the parser and version and backend controls.
27
17
  */
28
18
  runtime: GeocoderRuntime;
29
19
  /**
30
- * Host-injected panels (about, release blurb, compare, permalink, debug drawer, map controls, …).
20
+ * Panels supplied by the host.
31
21
  */
32
22
  panels?: GeocoderPanels;
33
23
  /**
34
- * Address to pre-fill.
24
+ * The address that pre-fills the search field.
25
+ * It is not run automatically.
35
26
  */
36
27
  defaultAddress?: string;
37
28
  /**
38
- * Example chips. @default the empty set (host supplies its own).
29
+ * A query to run once when the runtime is ready, such as a permalink's `?q=` value.
30
+ *
31
+ * Unlike {@link GeocoderProps.defaultAddress}, this query is submitted,
32
+ * so a shared link reproduces its result.
33
+ */
34
+ initialQuery?: string | null;
35
+ /**
36
+ * The example chips.
37
+ *
38
+ * @default []
39
39
  */
40
40
  presets?: ReadonlyArray<Preset>;
41
41
  /**
42
- * Only hint the viewport bias once the visitor has zoomed past the global view — a whole-globe center is noise.
43
- * Matches the `map.getZoom() >= 4` threshold. @default 4
42
+ * Whether the developer panel starts open.
43
+ *
44
+ * @default false
45
+ */
46
+ developer?: boolean;
47
+ /**
48
+ * Called with each user-submitted query.
49
+ *
50
+ * The host decides how to write the query to its URL.
51
+ * This package never touches `location`.
52
+ */
53
+ onSubmitQuery?: (query: string) => void;
54
+ /**
55
+ * The minimum map zoom at which the viewport is sent as a location bias.
56
+ *
57
+ * @default 4
44
58
  */
45
59
  minBiasZoom?: number;
46
60
  /**
47
- * Fly/fit the map to the resolved place on each result (via {@link ResolvedPlaceLayers}). @default true. Set false
48
- * for a host that drives the camera itself (a controlled `<MapCanvas viewState>`), or to keep a headless test
49
- * deterministic — the marker + outline still render, only the animated camera move is skipped.
61
+ * Whether the map moves to each resolved place.
62
+ *
63
+ * Set it to false when the host controls the camera or a test needs a fixed view.
64
+ * The marker and outline render either way.
65
+ *
66
+ * @default true
50
67
  */
51
68
  applyResultCamera?: boolean;
52
69
  }
53
70
  /**
54
- * The composed geocoder, behind a `ClientOnly` SSR boundary (the map is intrinsically a client component).
71
+ * Renders the map and search controls as one geocoder.
72
+ * It also renders host panels.
73
+ *
74
+ * It renders only on the client because MapLibre needs browser APIs.
75
+ * Import it from `@mailwoman/react/map`.
55
76
  */
56
- export declare function Geocoder({ runtime, panels, defaultAddress, presets, minBiasZoom, applyResultCamera, }: GeocoderProps): ReactNode;
77
+ export declare function Geocoder({ runtime, panels, defaultAddress, presets, minBiasZoom, applyResultCamera, developer, initialQuery, onSubmitQuery, }: GeocoderProps): ReactNode;
57
78
  //# sourceMappingURL=Geocoder.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"Geocoder.d.ts","sourceRoot":"","sources":["../../lib/map/Geocoder.tsx"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;GAmBG;AAEH,OAAO,EAAE,KAAK,SAAS,EAAkC,MAAM,OAAO,CAAA;AAGtE,OAAO,KAAK,EAAE,cAAc,EAAE,eAAe,EAAW,MAAM,YAAY,CAAA;AAO1E,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,2BAA2B,CAAA;AAMvD,MAAM,WAAW,aAAa;IAC7B;;OAEG;IACH,OAAO,EAAE,eAAe,CAAA;IACxB;;OAEG;IACH,MAAM,CAAC,EAAE,cAAc,CAAA;IACvB;;OAEG;IACH,cAAc,CAAC,EAAE,MAAM,CAAA;IACvB;;OAEG;IACH,OAAO,CAAC,EAAE,aAAa,CAAC,MAAM,CAAC,CAAA;IAC/B;;;OAGG;IACH,WAAW,CAAC,EAAE,MAAM,CAAA;IACpB;;;;OAIG;IACH,iBAAiB,CAAC,EAAE,OAAO,CAAA;CAC3B;AA0HD;;GAEG;AACH,wBAAgB,QAAQ,CAAC,EACxB,OAAO,EACP,MAAkB,EAClB,cAAmB,EACnB,OAAoB,EACpB,WAAe,EACf,iBAAwB,GACxB,EAAE,aAAa,GAAG,SAAS,CAqB3B"}
1
+ {"version":3,"file":"Geocoder.d.ts","sourceRoot":"","sources":["../../lib/map/Geocoder.tsx"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH,OAAO,EAAE,KAAK,SAAS,EAA4C,MAAM,OAAO,CAAA;AAGhF,OAAO,KAAK,EAAE,cAAc,EAAE,eAAe,EAAW,MAAM,YAAY,CAAA;AAO1E,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,2BAA2B,CAAA;AAOvD;;GAEG;AACH,MAAM,WAAW,aAAa;IAC7B;;;;OAIG;IACH,OAAO,EAAE,eAAe,CAAA;IACxB;;OAEG;IACH,MAAM,CAAC,EAAE,cAAc,CAAA;IACvB;;;OAGG;IACH,cAAc,CAAC,EAAE,MAAM,CAAA;IACvB;;;;;OAKG;IACH,YAAY,CAAC,EAAE,MAAM,GAAG,IAAI,CAAA;IAC5B;;;;OAIG;IACH,OAAO,CAAC,EAAE,aAAa,CAAC,MAAM,CAAC,CAAA;IAC/B;;;;OAIG;IACH,SAAS,CAAC,EAAE,OAAO,CAAA;IACnB;;;;;OAKG;IACH,aAAa,CAAC,EAAE,CAAC,KAAK,EAAE,MAAM,KAAK,IAAI,CAAA;IACvC;;;;OAIG;IACH,WAAW,CAAC,EAAE,MAAM,CAAA;IACpB;;;;;;;OAOG;IACH,iBAAiB,CAAC,EAAE,OAAO,CAAA;CAC3B;AAgID;;;;;;GAMG;AACH,wBAAgB,QAAQ,CAAC,EACxB,OAAO,EACP,MAAkB,EAClB,cAAmB,EACnB,OAAoB,EACpB,WAAe,EACf,iBAAwB,EACxB,SAAiB,EACjB,YAAmB,EACnB,aAAa,GACb,EAAE,aAAa,GAAG,SAAS,CAwB3B"}