@mailwoman/react 9.3.0 → 10.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.
- package/fonts.css +59 -0
- package/lib/common/About.tsx +105 -0
- package/lib/common/KindBadge.tsx +2 -7
- package/lib/common/confidence-tiers.ts +50 -0
- package/lib/common/index.ts +22 -0
- package/lib/common/text-tokens.ts +88 -0
- package/lib/index.ts +10 -103
- package/lib/map/BackendControl.tsx +7 -3
- package/lib/map/CompareToggle.tsx +5 -4
- package/lib/map/{GeocoderDemo.tsx → Geocoder.tsx} +81 -61
- package/lib/map/GeocoderControls.tsx +352 -0
- package/lib/map/{DemoMap.tsx → MapCanvas.tsx} +15 -15
- package/lib/map/MapChipRow.tsx +77 -0
- package/lib/map/MapCompass.tsx +77 -0
- package/lib/map/MapControlStack.tsx +98 -0
- package/lib/map/MapFooter.tsx +115 -0
- package/lib/map/MapProgressBar.tsx +58 -0
- package/lib/map/MapSearchBar.tsx +68 -0
- package/lib/map/MapSheet.tsx +62 -0
- package/lib/map/PlaceMarker.tsx +1 -1
- package/lib/map/ResolvedPlaceLayers.tsx +3 -3
- package/lib/map/ResultCamera.tsx +1 -1
- package/lib/map/ResultPanel.tsx +2 -2
- package/lib/map/VersionPicker.tsx +3 -3
- package/lib/map/fake-runtime.ts +122 -0
- package/lib/map/index.ts +35 -16
- package/lib/map/map-debug.ts +51 -0
- package/lib/map/place-render.ts +3 -2
- package/lib/map/types.ts +58 -42
- package/lib/map/{useDemoGeocode.ts → useGeocode.ts} +8 -8
- package/lib/map/useMapBearing.ts +56 -0
- package/lib/map/useMapLabelPick.ts +123 -0
- package/lib/pipeline/CandidatePicker.tsx +1 -1
- package/lib/pipeline/ComponentTable.tsx +1 -2
- package/lib/pipeline/ConfidenceCell.tsx +7 -19
- package/lib/pipeline/FailureDiagnostic.tsx +56 -0
- package/lib/pipeline/ResolvedPlace.tsx +17 -4
- package/lib/pipeline/SpanHighlight.tsx +97 -0
- package/lib/pipeline/TimingPanel.tsx +65 -0
- package/lib/pipeline/TreeView.tsx +55 -0
- package/lib/pipeline/copy.ts +1 -1
- package/lib/pipeline/index.ts +36 -0
- package/lib/pipeline/types.ts +2 -75
- package/lib/pipeline/useParsePipeline.ts +31 -19
- package/lib/poi/index.ts +39 -0
- package/lib/poi/types.ts +2 -1
- package/lib/runtime/index.ts +16 -0
- package/lib/runtime/{useDemoRuntime.ts → useReleaseRuntime.ts} +22 -24
- package/out/common/About.d.ts +21 -0
- package/out/common/About.d.ts.map +1 -0
- package/out/common/About.js +8 -0
- package/out/common/About.js.map +1 -0
- package/out/common/KindBadge.d.ts +2 -9
- package/out/common/KindBadge.d.ts.map +1 -1
- package/out/common/KindBadge.js.map +1 -1
- package/out/common/confidence-tiers.d.ts +36 -0
- package/out/common/confidence-tiers.d.ts.map +1 -0
- package/out/common/confidence-tiers.js +42 -0
- package/out/common/confidence-tiers.js.map +1 -0
- package/out/common/index.d.ts +22 -0
- package/out/common/index.d.ts.map +1 -0
- package/out/common/index.js +15 -0
- package/out/common/index.js.map +1 -0
- package/out/common/text-tokens.d.ts +46 -0
- package/out/common/text-tokens.d.ts.map +1 -0
- package/out/common/text-tokens.js +52 -0
- package/out/common/text-tokens.js.map +1 -0
- package/out/index.d.ts +5 -51
- package/out/index.d.ts.map +1 -1
- package/out/index.js +4 -30
- package/out/index.js.map +1 -1
- package/out/map/BackendControl.d.ts.map +1 -1
- package/out/map/BackendControl.js +1 -1
- package/out/map/BackendControl.js.map +1 -1
- package/out/map/CompareToggle.d.ts +2 -2
- package/out/map/CompareToggle.d.ts.map +1 -1
- package/out/map/CompareToggle.js +1 -1
- package/out/map/CompareToggle.js.map +1 -1
- package/out/map/Geocoder.d.ts +67 -0
- package/out/map/Geocoder.d.ts.map +1 -0
- package/out/map/Geocoder.js +98 -0
- package/out/map/Geocoder.js.map +1 -0
- package/out/map/GeocoderControls.d.ts +81 -0
- package/out/map/GeocoderControls.d.ts.map +1 -0
- package/out/map/GeocoderControls.js +79 -0
- package/out/map/GeocoderControls.js.map +1 -0
- package/out/map/{DemoMap.d.ts → MapCanvas.d.ts} +15 -15
- package/out/map/MapCanvas.d.ts.map +1 -0
- package/out/map/{DemoMap.js → MapCanvas.js} +2 -2
- package/out/map/MapCanvas.js.map +1 -0
- package/out/map/MapChipRow.d.ts +47 -0
- package/out/map/MapChipRow.d.ts.map +1 -0
- package/out/map/MapChipRow.js +12 -0
- package/out/map/MapChipRow.js.map +1 -0
- package/out/map/MapCompass.d.ts +42 -0
- package/out/map/MapCompass.d.ts.map +1 -0
- package/out/map/MapCompass.js +11 -0
- package/out/map/MapCompass.js.map +1 -0
- package/out/map/MapControlStack.d.ts +57 -0
- package/out/map/MapControlStack.d.ts.map +1 -0
- package/out/map/MapControlStack.js +15 -0
- package/out/map/MapControlStack.js.map +1 -0
- package/out/map/MapFooter.d.ts +40 -0
- package/out/map/MapFooter.d.ts.map +1 -0
- package/out/map/MapFooter.js +51 -0
- package/out/map/MapFooter.js.map +1 -0
- package/out/map/MapProgressBar.d.ts +34 -0
- package/out/map/MapProgressBar.d.ts.map +1 -0
- package/out/map/MapProgressBar.js +8 -0
- package/out/map/MapProgressBar.js.map +1 -0
- package/out/map/MapSearchBar.d.ts +49 -0
- package/out/map/MapSearchBar.d.ts.map +1 -0
- package/out/map/MapSearchBar.js +6 -0
- package/out/map/MapSearchBar.js.map +1 -0
- package/out/map/MapSheet.d.ts +32 -0
- package/out/map/MapSheet.d.ts.map +1 -0
- package/out/map/MapSheet.js +33 -0
- package/out/map/MapSheet.js.map +1 -0
- package/out/map/OverlayLayers.js +1 -1
- package/out/map/PlaceMarker.d.ts +1 -1
- package/out/map/ResolvedPlaceLayers.d.ts +3 -3
- package/out/map/ResolvedPlaceLayers.js +1 -1
- package/out/map/ResultCamera.d.ts +1 -1
- package/out/map/ResultCamera.js +1 -1
- package/out/map/ResultPanel.d.ts +2 -2
- package/out/map/ResultPanel.d.ts.map +1 -1
- package/out/map/ResultPanel.js +1 -1
- package/out/map/ResultPanel.js.map +1 -1
- package/out/map/VersionPicker.d.ts +3 -3
- package/out/map/VersionPicker.d.ts.map +1 -1
- package/out/map/fake-runtime.d.ts +38 -0
- package/out/map/fake-runtime.d.ts.map +1 -0
- package/out/map/fake-runtime.js +107 -0
- package/out/map/fake-runtime.js.map +1 -0
- package/out/map/index.d.ts +27 -10
- package/out/map/index.d.ts.map +1 -1
- package/out/map/index.js +16 -6
- package/out/map/index.js.map +1 -1
- package/out/map/map-debug.d.ts +31 -0
- package/out/map/map-debug.d.ts.map +1 -0
- package/out/map/map-debug.js +31 -0
- package/out/map/map-debug.js.map +1 -0
- package/out/map/place-render.d.ts +2 -2
- package/out/map/place-render.d.ts.map +1 -1
- package/out/map/place-render.js +1 -1
- package/out/map/place-render.js.map +1 -1
- package/out/map/types.d.ts +60 -42
- package/out/map/types.d.ts.map +1 -1
- package/out/map/types.js +5 -5
- package/out/map/{useDemoGeocode.d.ts → useGeocode.d.ts} +9 -9
- package/out/map/useGeocode.d.ts.map +1 -0
- package/out/map/{useDemoGeocode.js → useGeocode.js} +4 -4
- package/out/map/useGeocode.js.map +1 -0
- package/out/map/useMapBearing.d.ts +28 -0
- package/out/map/useMapBearing.d.ts.map +1 -0
- package/out/map/useMapBearing.js +35 -0
- package/out/map/useMapBearing.js.map +1 -0
- package/out/map/useMapLabelPick.d.ts +23 -0
- package/out/map/useMapLabelPick.d.ts.map +1 -0
- package/out/map/useMapLabelPick.js +104 -0
- package/out/map/useMapLabelPick.js.map +1 -0
- package/out/pipeline/CandidatePicker.d.ts +1 -1
- package/out/pipeline/CandidatePicker.d.ts.map +1 -1
- package/out/pipeline/CandidatePicker.js +1 -1
- package/out/pipeline/CandidatePicker.js.map +1 -1
- package/out/pipeline/ComponentTable.d.ts +1 -1
- package/out/pipeline/ComponentTable.d.ts.map +1 -1
- package/out/pipeline/ComponentTable.js.map +1 -1
- package/out/pipeline/ConfidenceCell.d.ts +2 -2
- package/out/pipeline/ConfidenceCell.d.ts.map +1 -1
- package/out/pipeline/ConfidenceCell.js +4 -16
- package/out/pipeline/ConfidenceCell.js.map +1 -1
- package/out/pipeline/FailureDiagnostic.d.ts +15 -0
- package/out/pipeline/FailureDiagnostic.d.ts.map +1 -0
- package/out/pipeline/FailureDiagnostic.js +21 -0
- package/out/pipeline/FailureDiagnostic.js.map +1 -0
- package/out/pipeline/PipelineExplorer.js +1 -1
- package/out/pipeline/QueryForm.js +1 -1
- package/out/pipeline/ResolvedPlace.d.ts +1 -1
- package/out/pipeline/ResolvedPlace.d.ts.map +1 -1
- package/out/pipeline/ResolvedPlace.js +4 -10
- package/out/pipeline/ResolvedPlace.js.map +1 -1
- package/out/pipeline/SpanHighlight.d.ts +23 -0
- package/out/pipeline/SpanHighlight.d.ts.map +1 -0
- package/out/pipeline/SpanHighlight.js +31 -0
- package/out/pipeline/SpanHighlight.js.map +1 -0
- package/out/pipeline/TimingPanel.d.ts +16 -0
- package/out/pipeline/TimingPanel.d.ts.map +1 -0
- package/out/pipeline/TimingPanel.js +20 -0
- package/out/pipeline/TimingPanel.js.map +1 -0
- package/out/pipeline/TreeView.d.ts +17 -0
- package/out/pipeline/TreeView.d.ts.map +1 -0
- package/out/pipeline/TreeView.js +15 -0
- package/out/pipeline/TreeView.js.map +1 -0
- package/out/pipeline/copy.d.ts +1 -1
- package/out/pipeline/copy.d.ts.map +1 -1
- package/out/pipeline/index.d.ts +33 -0
- package/out/pipeline/index.d.ts.map +1 -0
- package/out/pipeline/index.js +21 -0
- package/out/pipeline/index.js.map +1 -0
- package/out/pipeline/types.d.ts +2 -68
- package/out/pipeline/types.d.ts.map +1 -1
- package/out/pipeline/types.js +1 -1
- package/out/pipeline/useParsePipeline.d.ts +7 -3
- package/out/pipeline/useParsePipeline.d.ts.map +1 -1
- package/out/pipeline/useParsePipeline.js +6 -2
- package/out/pipeline/useParsePipeline.js.map +1 -1
- package/out/poi/LiveResultsBlock.js +1 -1
- package/out/poi/POIExplorer.js +1 -1
- package/out/poi/SubjectPanel.js +1 -1
- package/out/poi/index.d.ts +23 -0
- package/out/poi/index.d.ts.map +1 -0
- package/out/poi/index.js +15 -0
- package/out/poi/index.js.map +1 -0
- package/out/poi/runtime.d.ts.map +1 -1
- package/out/poi/types.d.ts +2 -1
- package/out/poi/types.d.ts.map +1 -1
- package/out/runtime/index.d.ts +9 -0
- package/out/runtime/index.d.ts.map +1 -0
- package/out/runtime/index.js +8 -0
- package/out/runtime/index.js.map +1 -0
- package/out/runtime/{useDemoRuntime.d.ts → useReleaseRuntime.d.ts} +18 -20
- package/out/runtime/useReleaseRuntime.d.ts.map +1 -0
- package/out/runtime/{useDemoRuntime.js → useReleaseRuntime.js} +4 -4
- package/out/runtime/useReleaseRuntime.js.map +1 -0
- package/package.json +222 -31
- package/styleframe.config.ts +329 -0
- package/styles.css +1995 -663
- package/tokens/index.css +116 -0
- package/tokens/tokens.json +528 -0
- package/tokens/tokens.resolver.json +185 -0
- package/lib/map/DemoControls.tsx +0 -194
- package/out/map/DemoControls.d.ts +0 -64
- package/out/map/DemoControls.d.ts.map +0 -1
- package/out/map/DemoControls.js +0 -30
- package/out/map/DemoControls.js.map +0 -1
- package/out/map/DemoMap.d.ts.map +0 -1
- package/out/map/DemoMap.js.map +0 -1
- package/out/map/GeocoderDemo.d.ts +0 -57
- package/out/map/GeocoderDemo.d.ts.map +0 -1
- package/out/map/GeocoderDemo.js +0 -98
- package/out/map/GeocoderDemo.js.map +0 -1
- package/out/map/useDemoGeocode.d.ts.map +0 -1
- package/out/map/useDemoGeocode.js.map +0 -1
- package/out/runtime/useDemoRuntime.d.ts.map +0 -1
- package/out/runtime/useDemoRuntime.js.map +0 -1
package/out/map/PlaceMarker.d.ts
CHANGED
|
@@ -6,7 +6,7 @@
|
|
|
6
6
|
* `<PlaceMarker>` — the resolved-place pin, as a declarative `react-map-gl/maplibre` `<Marker>`. This
|
|
7
7
|
* replaces the old imperative `new maplibre.Marker(...).setLngLat(...).addTo(map)` (+ the manual
|
|
8
8
|
* `markerRef.current.remove()` teardown) from the demo's redraw effect: mounting/unmounting the marker
|
|
9
|
-
* is now React's job, keyed on the resolved candidate. Renders as a child of `<
|
|
9
|
+
* is now React's job, keyed on the resolved candidate. Renders as a child of `<MapCanvas>`.
|
|
10
10
|
*
|
|
11
11
|
* NODE-IMPORT SAFETY: imports `react-map-gl/maplibre` at module scope, so it is reachable ONLY through
|
|
12
12
|
* the `@mailwoman/react/map` subpath, never the package root.
|
|
@@ -3,10 +3,10 @@
|
|
|
3
3
|
* @license AGPL-3.0
|
|
4
4
|
* @author Teffen Ellis, et al.
|
|
5
5
|
*
|
|
6
|
-
* `<ResolvedPlaceLayers>` — the drop-in that renders a whole {@link MapPlaceRenderSpec} as `<
|
|
6
|
+
* `<ResolvedPlaceLayers>` — the drop-in that renders a whole {@link MapPlaceRenderSpec} as `<MapCanvas>`
|
|
7
7
|
* children: the marker(s), the outline, and (optionally) the camera move. This is the declarative
|
|
8
8
|
* replacement for the demo's imperative marker/bbox/camera redraw effect — a consumer computes the spec
|
|
9
|
-
* with `useMapPlaceRender(place)` and drops `<ResolvedPlaceLayers spec={spec} />` inside `<
|
|
9
|
+
* with `useMapPlaceRender(place)` and drops `<ResolvedPlaceLayers spec={spec} />` inside `<MapCanvas>`.
|
|
10
10
|
*
|
|
11
11
|
* `spec = null` (no result / no candidate) renders nothing, which also unmounts the previous marker +
|
|
12
12
|
* outline — the teardown the old effect did by hand (`markerRef.remove()`, `clearBbox`) is now just
|
|
@@ -21,7 +21,7 @@ export interface ResolvedPlaceLayersProps {
|
|
|
21
21
|
spec: MapPlaceRenderSpec | null;
|
|
22
22
|
/**
|
|
23
23
|
* Apply the computed camera target via {@link ResultCamera}. @default true. Set false when the consumer drives the
|
|
24
|
-
* camera itself (e.g. a controlled `<
|
|
24
|
+
* camera itself (e.g. a controlled `<MapCanvas viewState>` fed by {@link cameraToViewState}).
|
|
25
25
|
*/
|
|
26
26
|
applyCamera?: boolean;
|
|
27
27
|
/**
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import {
|
|
1
|
+
import { Fragment as _Fragment, jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
|
|
2
2
|
import { PlaceMarker } from "./PlaceMarker.js";
|
|
3
3
|
import { ResultCamera } from "./ResultCamera.js";
|
|
4
4
|
import { ResultOverlay } from "./ResultOverlay.js";
|
|
@@ -11,7 +11,7 @@
|
|
|
11
11
|
* `useMap()` (exactly as `DashboardMap`/`GeoJSONClipboardLayer` reach the map), never a threaded handle.
|
|
12
12
|
*
|
|
13
13
|
* A consumer that prefers a hard, declarative jump can instead feed the target through
|
|
14
|
-
* {@link cameraToViewState} into a controlled `<
|
|
14
|
+
* {@link cameraToViewState} into a controlled `<MapCanvas viewState>` and skip this component — the
|
|
15
15
|
* `center` case has that declarative path; only `bounds` strictly requires this. Renders nothing.
|
|
16
16
|
*
|
|
17
17
|
* `target` is expected to be the STABLE, memoized `camera` off a `useMapPlaceRender` spec, so listing it
|
package/out/map/ResultCamera.js
CHANGED
|
@@ -11,7 +11,7 @@
|
|
|
11
11
|
* `useMap()` (exactly as `DashboardMap`/`GeoJSONClipboardLayer` reach the map), never a threaded handle.
|
|
12
12
|
*
|
|
13
13
|
* A consumer that prefers a hard, declarative jump can instead feed the target through
|
|
14
|
-
* {@link cameraToViewState} into a controlled `<
|
|
14
|
+
* {@link cameraToViewState} into a controlled `<MapCanvas viewState>` and skip this component — the
|
|
15
15
|
* `center` case has that declarative path; only `bounds` strictly requires this. Renders nothing.
|
|
16
16
|
*
|
|
17
17
|
* `target` is expected to be the STABLE, memoized `camera` off a `useMapPlaceRender` spec, so listing it
|
package/out/map/ResultPanel.d.ts
CHANGED
|
@@ -7,14 +7,14 @@
|
|
|
7
7
|
* presentational units (it does not re-implement any of them): `KindBadge`, `ComponentTable`,
|
|
8
8
|
* `ResolvedPlace`, `CandidatePicker`, plus the `CopyButton` + `buildParsePayload` copy affordance. This
|
|
9
9
|
* is the standalone, story-testable unit the demo's floating panel renders (the map analogue of the
|
|
10
|
-
* result block PipelineExplorer inlines), so `
|
|
10
|
+
* result block PipelineExplorer inlines), so `Geocoder` composes ONE panel instead of duplicating
|
|
11
11
|
* the marker/table/candidate glue. Heavy host visualizers (span highlight, tree, timing) slot in via
|
|
12
12
|
* `extras`; the no-resolve diagnostic via `failure`.
|
|
13
13
|
*
|
|
14
14
|
* NODE-SAFE: pure React + the shared units, no maplibre.
|
|
15
15
|
*/
|
|
16
|
+
import type { ParseResult, ResolvedPlaceView } from "@mailwoman/core/pipeline/client-result";
|
|
16
17
|
import type { ReactNode } from "react";
|
|
17
|
-
import type { ParseResult, ResolvedPlaceView } from "#pipeline/types";
|
|
18
18
|
export interface ResultPanelProps {
|
|
19
19
|
/**
|
|
20
20
|
* The parse+resolve result to render.
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ResultPanel.d.ts","sourceRoot":"","sources":["../../lib/map/ResultPanel.tsx"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;GAcG;AAEH,OAAO,KAAK,EAAE,
|
|
1
|
+
{"version":3,"file":"ResultPanel.d.ts","sourceRoot":"","sources":["../../lib/map/ResultPanel.tsx"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;GAcG;AAEH,OAAO,KAAK,EAAE,WAAW,EAAE,iBAAiB,EAAE,MAAM,wCAAwC,CAAA;AAC5F,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,OAAO,CAAA;AAUtC,MAAM,WAAW,gBAAgB;IAChC;;OAEG;IACH,MAAM,EAAE,WAAW,CAAA;IACnB;;OAEG;IACH,iBAAiB,EAAE,iBAAiB,GAAG,IAAI,CAAA;IAC3C;;OAEG;IACH,sBAAsB,EAAE,MAAM,CAAA;IAC9B;;OAEG;IACH,iBAAiB,EAAE,CAAC,KAAK,EAAE,MAAM,KAAK,IAAI,CAAA;IAC1C;;OAEG;IACH,MAAM,CAAC,EAAE,CAAC,MAAM,EAAE,WAAW,KAAK,SAAS,CAAA;IAC3C;;OAEG;IACH,OAAO,CAAC,EAAE,CAAC,MAAM,EAAE,WAAW,KAAK,SAAS,CAAA;CAC5C;AAED;;GAEG;AACH,wBAAgB,WAAW,CAAC,EAC3B,MAAM,EACN,iBAAiB,EACjB,sBAAsB,EACtB,iBAAiB,EACjB,MAAM,EACN,OAAO,GACP,EAAE,gBAAgB,GAAG,SAAS,CAkC9B"}
|
package/out/map/ResultPanel.js
CHANGED
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import {
|
|
1
|
+
import { Fragment as _Fragment, jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
|
|
2
2
|
import { buildParsePayload } from "#pipeline/copy";
|
|
3
3
|
import { CopyButton } from "../common/CopyButton.js";
|
|
4
4
|
import { KindBadge } from "../common/KindBadge.js";
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ResultPanel.js","sourceRoot":"","sources":["../../lib/map/ResultPanel.tsx"],"names":[],"mappings":";
|
|
1
|
+
{"version":3,"file":"ResultPanel.js","sourceRoot":"","sources":["../../lib/map/ResultPanel.tsx"],"names":[],"mappings":";AAmBA,OAAO,EAAE,iBAAiB,EAAE,MAAM,gBAAgB,CAAA;AAElD,OAAO,EAAE,UAAU,EAAE,MAAM,yBAA0B,CAAA;AACrD,OAAO,EAAE,SAAS,EAAE,MAAM,wBAAyB,CAAA;AACnD,OAAO,EAAE,eAAe,EAAE,MAAM,gCAAiC,CAAA;AACjE,OAAO,EAAE,cAAc,EAAE,MAAM,+BAAgC,CAAA;AAC/D,OAAO,EAAE,aAAa,EAAE,MAAM,8BAA+B,CAAA;AA6B7D;;GAEG;AACH,MAAM,UAAU,WAAW,CAAC,EAC3B,MAAM,EACN,iBAAiB,EACjB,sBAAsB,EACtB,iBAAiB,EACjB,MAAM,EACN,OAAO,GACW;IAClB,OAAO,CACN,eAAK,SAAS,EAAC,WAAW,aACzB,eAAK,SAAS,EAAC,mBAAmB,aACjC,6CAA0B,EAC1B,KAAC,UAAU,IACV,KAAK,EAAE,GAAG,EAAE,CAAC,iBAAiB,CAAC,MAAM,EAAE,iBAAiB,CAAC,EACzD,KAAK,EAAC,WAAW,EACjB,WAAW,EAAC,eAAU,GACrB,IACG,EAEL,MAAM,CAAC,UAAU,CAAC,CAAC,CAAC,KAAC,SAAS,IAAC,UAAU,EAAE,MAAM,CAAC,UAAU,GAAI,CAAC,CAAC,CAAC,IAAI,EAEvE,MAAM,CAAC,CAAC,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,IAAI,EAE/B,KAAC,cAAc,IAAC,KAAK,EAAE,MAAM,CAAC,KAAK,GAAI,EAEtC,iBAAiB,CAAC,CAAC,CAAC,CACpB,8BACC,KAAC,aAAa,IAAC,KAAK,EAAE,iBAAiB,EAAE,SAAS,EAAE,MAAM,CAAC,SAAS,GAAI,EACvE,MAAM,CAAC,UAAU,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,CAAC,CAC/B,KAAC,eAAe,IACf,UAAU,EAAE,MAAM,CAAC,UAAU,EAC7B,aAAa,EAAE,sBAAsB,EACrC,QAAQ,EAAE,iBAAiB,GAC1B,CACF,CAAC,CAAC,CAAC,IAAI,IACN,CACH,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,CACb,OAAO,CAAC,MAAM,CAAC,CACf,CAAC,CAAC,CAAC,IAAI,IACH,CACN,CAAA;AACF,CAAC"}
|
|
@@ -5,19 +5,19 @@
|
|
|
5
5
|
*
|
|
6
6
|
* `<VersionPicker>` — the model-version `<select>` from the demo's control panel (`_app.tsx:1230-1254`),
|
|
7
7
|
* as a dumb presentational unit: the available bundles + current selection come in as props, the choice
|
|
8
|
-
* goes out through `onSelect`. No load state, no manifest fetch — the host (via `
|
|
8
|
+
* goes out through `onSelect`. No load state, no manifest fetch — the host (via `useReleaseRuntime`) owns
|
|
9
9
|
* that. Renders nothing when there is fewer than two versions to choose between.
|
|
10
10
|
*
|
|
11
11
|
* NODE-SAFE: pure React + a `<select>`, no maplibre. It rides the `@mailwoman/react/map` subpath only
|
|
12
12
|
* because it is a demo-specific control, not because it needs WebGL.
|
|
13
13
|
*/
|
|
14
14
|
import type { ReactNode } from "react";
|
|
15
|
-
import type {
|
|
15
|
+
import type { VersionOption } from "#map/types";
|
|
16
16
|
export interface VersionPickerProps {
|
|
17
17
|
/**
|
|
18
18
|
* The selectable model bundles.
|
|
19
19
|
*/
|
|
20
|
-
versions: ReadonlyArray<
|
|
20
|
+
versions: ReadonlyArray<VersionOption>;
|
|
21
21
|
/**
|
|
22
22
|
* The currently-selected version tag.
|
|
23
23
|
*/
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"VersionPicker.d.ts","sourceRoot":"","sources":["../../lib/map/VersionPicker.tsx"],"names":[],"mappings":"AAAA;;;;;;;;;;;;GAYG;AAEH,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,OAAO,CAAA;AAEtC,OAAO,KAAK,EAAE,
|
|
1
|
+
{"version":3,"file":"VersionPicker.d.ts","sourceRoot":"","sources":["../../lib/map/VersionPicker.tsx"],"names":[],"mappings":"AAAA;;;;;;;;;;;;GAYG;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,QAAQ,EAAE,MAAM,GAAG,IAAI,CAAA;IACvB;;OAEG;IACH,QAAQ,EAAE,CAAC,OAAO,EAAE,MAAM,KAAK,IAAI,CAAA;IACnC;;OAEG;IACH,QAAQ,CAAC,EAAE,OAAO,CAAA;IAClB;;OAEG;IACH,KAAK,CAAC,EAAE,MAAM,CAAA;CACd;AAED;;GAEG;AACH,wBAAgB,aAAa,CAAC,EAC7B,QAAQ,EACR,QAAQ,EACR,QAAQ,EACR,QAAQ,EACR,KAAuB,GACvB,EAAE,kBAAkB,GAAG,SAAS,CAuBhC"}
|
|
@@ -0,0 +1,38 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* @copyright Sister Software
|
|
3
|
+
* @license AGPL-3.0
|
|
4
|
+
* @author Teffen Ellis, et al.
|
|
5
|
+
*
|
|
6
|
+
* A fake geocoder runtime: canned parse + resolve, an offline stub map style, canned autocomplete, a version list.
|
|
7
|
+
* No network, no ONNX, no maplibre at run time — everything is data. It is what the stories and component tests
|
|
8
|
+
* mount, and what a host mounts to show the UI without the model.
|
|
9
|
+
*/
|
|
10
|
+
import type { ParseResult } from "@mailwoman/core/pipeline/client-result";
|
|
11
|
+
import type { GeocoderRuntime, Suggestion } from "#map/types";
|
|
12
|
+
import type { PipelineRuntime } from "#pipeline/types";
|
|
13
|
+
import type { MapCanvasStyle } from "./MapCanvas.tsx";
|
|
14
|
+
/**
|
|
15
|
+
* An offline stub map style — one solid `background` layer, zero sources, zero network. Safe for headless Storybook.
|
|
16
|
+
*/
|
|
17
|
+
export declare const STUB_MAP_STYLE: MapCanvasStyle;
|
|
18
|
+
/**
|
|
19
|
+
* Canned place-autocomplete suggestions — a synchronous fake for the FST prefix-walk.
|
|
20
|
+
*/
|
|
21
|
+
export declare const FAKE_SUGGESTIONS: Suggestion[];
|
|
22
|
+
/**
|
|
23
|
+
* A fake DEMO runtime — the map analogue of {@link makePipelineRuntime}. It composes the pipeline fake (canned
|
|
24
|
+
* parse+resolve) with the map surface: the offline stub style, a version list, a backend, an injected autocomplete, and
|
|
25
|
+
* a `resolveMapPlace` that hands the selected candidate a bbox so the declarative overlays draw a marker + outline. No
|
|
26
|
+
* network, no ONNX, no maplibre-at-runtime — everything is data. `runParseWithBias` delegates to the base parse (the
|
|
27
|
+
* bias is ignored by the fake but present so the parameter is exercised).
|
|
28
|
+
*/
|
|
29
|
+
export declare function makeFakeGeocoderRuntime(overrides?: Partial<GeocoderRuntime>): GeocoderRuntime;
|
|
30
|
+
/**
|
|
31
|
+
* A fixed, fully-populated parse+resolve result — the shared fixture behind the pipeline runtime + the result panel.
|
|
32
|
+
*/
|
|
33
|
+
export declare function makeFakeParseResult(input?: string): ParseResult;
|
|
34
|
+
/**
|
|
35
|
+
* A fake parse+resolve runtime that returns a fixed, fully-populated result.
|
|
36
|
+
*/
|
|
37
|
+
export declare function makePipelineRuntime(overrides?: Partial<PipelineRuntime>): PipelineRuntime;
|
|
38
|
+
//# sourceMappingURL=fake-runtime.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"fake-runtime.d.ts","sourceRoot":"","sources":["../../lib/map/fake-runtime.ts"],"names":[],"mappings":"AAAA;;;;;;;;GAQG;AAEH,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,wCAAwC,CAAA;AAGzE,OAAO,KAAK,EAAE,eAAe,EAAE,UAAU,EAAE,MAAM,YAAY,CAAA;AAC7D,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,iBAAiB,CAAA;AAEtD,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,iBAAiB,CAAA;AAErD;;GAEG;AACH,eAAO,MAAM,cAAc,EAAE,cAK5B,CAAA;AAED;;GAEG;AACH,eAAO,MAAM,gBAAgB,EAAE,UAAU,EAIxC,CAAA;AAED;;;;;;GAMG;AACH,wBAAgB,uBAAuB,CAAC,SAAS,GAAE,OAAO,CAAC,eAAe,CAAM,GAAG,eAAe,CAkCjG;AAED;;GAEG;AACH,wBAAgB,mBAAmB,CAAC,KAAK,SAAoC,GAAG,WAAW,CAmB1F;AAED;;GAEG;AACH,wBAAgB,mBAAmB,CAAC,SAAS,GAAE,OAAO,CAAC,eAAe,CAAM,GAAG,eAAe,CAc7F"}
|
|
@@ -0,0 +1,107 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* @copyright Sister Software
|
|
3
|
+
* @license AGPL-3.0
|
|
4
|
+
* @author Teffen Ellis, et al.
|
|
5
|
+
*
|
|
6
|
+
* A fake geocoder runtime: canned parse + resolve, an offline stub map style, canned autocomplete, a version list.
|
|
7
|
+
* No network, no ONNX, no maplibre at run time — everything is data. It is what the stories and component tests
|
|
8
|
+
* mount, and what a host mounts to show the UI without the model.
|
|
9
|
+
*/
|
|
10
|
+
/**
|
|
11
|
+
* An offline stub map style — one solid `background` layer, zero sources, zero network. Safe for headless Storybook.
|
|
12
|
+
*/
|
|
13
|
+
export const STUB_MAP_STYLE = {
|
|
14
|
+
version: 8,
|
|
15
|
+
name: "demo-runtime-stub",
|
|
16
|
+
sources: {},
|
|
17
|
+
layers: [{ id: "background", type: "background", paint: { "background-color": "#dfe7ee" } }],
|
|
18
|
+
};
|
|
19
|
+
/**
|
|
20
|
+
* Canned place-autocomplete suggestions — a synchronous fake for the FST prefix-walk.
|
|
21
|
+
*/
|
|
22
|
+
export const FAKE_SUGGESTIONS = [
|
|
23
|
+
{ value: "New York", placetype: "locality" },
|
|
24
|
+
{ value: "New Orleans", placetype: "locality" },
|
|
25
|
+
{ value: "Newark", placetype: "locality" },
|
|
26
|
+
];
|
|
27
|
+
/**
|
|
28
|
+
* A fake DEMO runtime — the map analogue of {@link makePipelineRuntime}. It composes the pipeline fake (canned
|
|
29
|
+
* parse+resolve) with the map surface: the offline stub style, a version list, a backend, an injected autocomplete, and
|
|
30
|
+
* a `resolveMapPlace` that hands the selected candidate a bbox so the declarative overlays draw a marker + outline. No
|
|
31
|
+
* network, no ONNX, no maplibre-at-runtime — everything is data. `runParseWithBias` delegates to the base parse (the
|
|
32
|
+
* bias is ignored by the fake but present so the parameter is exercised).
|
|
33
|
+
*/
|
|
34
|
+
export function makeFakeGeocoderRuntime(overrides = {}) {
|
|
35
|
+
const base = makePipelineRuntime();
|
|
36
|
+
return {
|
|
37
|
+
...base,
|
|
38
|
+
mapStyle: STUB_MAP_STYLE,
|
|
39
|
+
initialCenter: [-74.006, 40.7128],
|
|
40
|
+
initialZoom: 3,
|
|
41
|
+
overlays: [],
|
|
42
|
+
runParseWithBias: (input, _bias, hooks) => base.runParse(input, hooks),
|
|
43
|
+
autocomplete: async (query) => FAKE_SUGGESTIONS.filter((s) => s.value.toLowerCase().startsWith(query.toLowerCase())),
|
|
44
|
+
availableVersions: [
|
|
45
|
+
{ version: "v7.2.0", label: "v7.2.0 (latest)" },
|
|
46
|
+
{ version: "v7.1.0", label: "v7.1.0" },
|
|
47
|
+
{ version: "v6.4.0", label: "v6.4.0" },
|
|
48
|
+
],
|
|
49
|
+
selectedVersion: "v7.2.0",
|
|
50
|
+
selectVersion: () => { },
|
|
51
|
+
activeBackend: "webgpu (28 MB int8)",
|
|
52
|
+
forceWASM: false,
|
|
53
|
+
setForceWASM: () => { },
|
|
54
|
+
// Enrich the selected candidate with a bbox so an outline renders (case 4: bbox → approximate circle + fit).
|
|
55
|
+
resolveMapPlace: (candidate) => ({
|
|
56
|
+
...candidate,
|
|
57
|
+
bbox: {
|
|
58
|
+
minLat: candidate.lat - 0.15,
|
|
59
|
+
maxLat: candidate.lat + 0.15,
|
|
60
|
+
minLon: candidate.lon - 0.15,
|
|
61
|
+
maxLon: candidate.lon + 0.15,
|
|
62
|
+
},
|
|
63
|
+
}),
|
|
64
|
+
...overrides,
|
|
65
|
+
};
|
|
66
|
+
}
|
|
67
|
+
/**
|
|
68
|
+
* A fixed, fully-populated parse+resolve result — the shared fixture behind the pipeline runtime + the result panel.
|
|
69
|
+
*/
|
|
70
|
+
export function makeFakeParseResult(input = "350 5th Ave, New York, NY 10118") {
|
|
71
|
+
return {
|
|
72
|
+
input,
|
|
73
|
+
tree: { roots: [{ tag: "locality", value: "New York" }] },
|
|
74
|
+
nodes: [
|
|
75
|
+
{ tag: "house_number", value: "350", confidence: 0.97, start: 0, end: 3 },
|
|
76
|
+
{ tag: "street", value: "5th Ave", confidence: 0.88, start: 4, end: 11 },
|
|
77
|
+
{ tag: "locality", value: "New York", confidence: 0.71 },
|
|
78
|
+
],
|
|
79
|
+
kindResult: { kind: "structured_address", confidence: 0.95, alternatives: [] },
|
|
80
|
+
timing: { shape: 0.4, classify: 12.1, resolve: 4.2 },
|
|
81
|
+
resolved: { id: 85_977_539, name: "New York", placetype: "locality", lat: 40.7128, lon: -74.006, score: 0.82 },
|
|
82
|
+
candidates: [
|
|
83
|
+
{ id: 85_977_539, name: "New York", placetype: "locality", lat: 40.7128, lon: -74.006, score: 0.82 },
|
|
84
|
+
{ id: 101_715_829, name: "New York", placetype: "region", lat: 43, lon: -75, score: 0.55 },
|
|
85
|
+
],
|
|
86
|
+
fstActive: true,
|
|
87
|
+
fstProvenance: { builtAt: "2026-07-01T00:00:00Z", stateCount: 51, placeCount: 94_000, importanceMatches: 12_000 },
|
|
88
|
+
};
|
|
89
|
+
}
|
|
90
|
+
/**
|
|
91
|
+
* A fake parse+resolve runtime that returns a fixed, fully-populated result.
|
|
92
|
+
*/
|
|
93
|
+
export function makePipelineRuntime(overrides = {}) {
|
|
94
|
+
return {
|
|
95
|
+
ready: true,
|
|
96
|
+
parseStageLabels: ["Analyzing input shape…", "Running neural classifier…", "Resolving in gazetteer…"],
|
|
97
|
+
errorMessage: null,
|
|
98
|
+
loading: null,
|
|
99
|
+
runParse: async (input, { onStage }) => {
|
|
100
|
+
onStage(1);
|
|
101
|
+
onStage(2);
|
|
102
|
+
return makeFakeParseResult(input);
|
|
103
|
+
},
|
|
104
|
+
...overrides,
|
|
105
|
+
};
|
|
106
|
+
}
|
|
107
|
+
//# sourceMappingURL=fake-runtime.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"fake-runtime.js","sourceRoot":"","sources":["../../lib/map/fake-runtime.ts"],"names":[],"mappings":"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"}
|
package/out/map/index.d.ts
CHANGED
|
@@ -3,7 +3,7 @@
|
|
|
3
3
|
* @license AGPL-3.0
|
|
4
4
|
* @author Teffen Ellis, et al.
|
|
5
5
|
*
|
|
6
|
-
* `@mailwoman/react/map` — the geocoder
|
|
6
|
+
* `@mailwoman/react/map` — the geocoder map surface, kept behind its OWN subpath so `maplibre-gl`
|
|
7
7
|
* / `react-map-gl` (WebGL + DOM at import) never enter the package-root graph. Importing this subpath
|
|
8
8
|
* pulls the map deps; importing `@mailwoman/react` (root) does not. Consumers who only want the
|
|
9
9
|
* parse/POI explorers never pay for maplibre.
|
|
@@ -11,9 +11,26 @@
|
|
|
11
11
|
* The host must supply `maplibre-gl` + `react-map-gl` (peer deps) and import
|
|
12
12
|
* `maplibre-gl/dist/maplibre-gl.css` + `@mailwoman/react/styles.css` itself.
|
|
13
13
|
*/
|
|
14
|
-
export {
|
|
15
|
-
export type {
|
|
16
|
-
export
|
|
14
|
+
export { MapCanvas } from "./MapCanvas.tsx";
|
|
15
|
+
export type { MapCanvasExtraProps, MapCanvasProps, MapCanvasStyle } from "./MapCanvas.tsx";
|
|
16
|
+
export { MapChipRow } from "./MapChipRow.tsx";
|
|
17
|
+
export type { MapChip, MapChipRowProps } from "./MapChipRow.tsx";
|
|
18
|
+
export { MapCompass } from "./MapCompass.tsx";
|
|
19
|
+
export type { MapCompassProps } from "./MapCompass.tsx";
|
|
20
|
+
export { useMapBearing } from "./useMapBearing.ts";
|
|
21
|
+
export type { UseMapBearing } from "./useMapBearing.ts";
|
|
22
|
+
export { useMapLabelPick } from "./useMapLabelPick.ts";
|
|
23
|
+
export { MapControlButton, MapControlGroup, MapControlStack } from "./MapControlStack.tsx";
|
|
24
|
+
export type { MapControlButtonProps, MapControlGroupProps, MapControlStackProps } from "./MapControlStack.tsx";
|
|
25
|
+
export { MapFooter } from "./MapFooter.tsx";
|
|
26
|
+
export type { MapFooterProps } from "./MapFooter.tsx";
|
|
27
|
+
export { MapProgressBar } from "./MapProgressBar.tsx";
|
|
28
|
+
export type { MapProgressBarProps } from "./MapProgressBar.tsx";
|
|
29
|
+
export { MapSheet } from "./MapSheet.tsx";
|
|
30
|
+
export type { MapSheetProps } from "./MapSheet.tsx";
|
|
31
|
+
export { MapSearchBar } from "./MapSearchBar.tsx";
|
|
32
|
+
export type { MapSearchBarProps } from "./MapSearchBar.tsx";
|
|
33
|
+
export type { CompareContext, GeocoderPanels, GeocoderRuntime, InferenceBackend, LngLatTuple, MapBias, OverlaySpec, ResultContext, Suggestion, VersionOption, } from "#map/types";
|
|
17
34
|
export { approxCircleGeometry, bboxToBounds, geomBounds, radiusCircleGeometry } from "#map/geometry";
|
|
18
35
|
export type { BoundsTuple, PlaceBBox, PlaceGeometry } from "#map/geometry";
|
|
19
36
|
export { cameraToViewState, computeMapPlaceRenderSpec } from "#map/place-render";
|
|
@@ -33,18 +50,18 @@ export { BackendControl } from "./BackendControl.tsx";
|
|
|
33
50
|
export type { BackendControlProps } from "./BackendControl.tsx";
|
|
34
51
|
export { CompareToggle } from "./CompareToggle.tsx";
|
|
35
52
|
export type { CompareToggleProps } from "./CompareToggle.tsx";
|
|
36
|
-
export {
|
|
37
|
-
export type {
|
|
38
|
-
export {
|
|
39
|
-
export type {
|
|
53
|
+
export { Geocoder } from "./Geocoder.tsx";
|
|
54
|
+
export type { GeocoderProps } from "./Geocoder.tsx";
|
|
55
|
+
export { GeocoderControls } from "./GeocoderControls.tsx";
|
|
56
|
+
export type { GeocoderControlsProps } from "./GeocoderControls.tsx";
|
|
40
57
|
export { PlaceAutocomplete } from "./PlaceAutocomplete.tsx";
|
|
41
58
|
export type { PlaceAutocompleteProps } from "./PlaceAutocomplete.tsx";
|
|
42
59
|
export { ResultPanel } from "./ResultPanel.tsx";
|
|
43
60
|
export type { ResultPanelProps } from "./ResultPanel.tsx";
|
|
44
61
|
export { useCompareState } from "#map/useCompareState";
|
|
45
62
|
export type { UseCompareState } from "#map/useCompareState";
|
|
46
|
-
export {
|
|
47
|
-
export type {
|
|
63
|
+
export { useGeocode } from "#map/useGeocode";
|
|
64
|
+
export type { UseGeocode, UseGeocodeOptions } from "#map/useGeocode";
|
|
48
65
|
export { usePlaceAutocomplete } from "#map/usePlaceAutocomplete";
|
|
49
66
|
export type { AutocompleteInputProps, UsePlaceAutocomplete, UsePlaceAutocompleteOptions, } from "#map/usePlaceAutocomplete";
|
|
50
67
|
export { VersionPicker } from "./VersionPicker.tsx";
|
package/out/map/index.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../lib/map/index.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;GAYG;AAEH,OAAO,EAAE,
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../lib/map/index.ts"],"names":[],"mappings":"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"}
|
package/out/map/index.js
CHANGED
|
@@ -3,7 +3,7 @@
|
|
|
3
3
|
* @license AGPL-3.0
|
|
4
4
|
* @author Teffen Ellis, et al.
|
|
5
5
|
*
|
|
6
|
-
* `@mailwoman/react/map` — the geocoder
|
|
6
|
+
* `@mailwoman/react/map` — the geocoder map surface, kept behind its OWN subpath so `maplibre-gl`
|
|
7
7
|
* / `react-map-gl` (WebGL + DOM at import) never enter the package-root graph. Importing this subpath
|
|
8
8
|
* pulls the map deps; importing `@mailwoman/react` (root) does not. Consumers who only want the
|
|
9
9
|
* parse/POI explorers never pay for maplibre.
|
|
@@ -11,7 +11,17 @@
|
|
|
11
11
|
* The host must supply `maplibre-gl` + `react-map-gl` (peer deps) and import
|
|
12
12
|
* `maplibre-gl/dist/maplibre-gl.css` + `@mailwoman/react/styles.css` itself.
|
|
13
13
|
*/
|
|
14
|
-
export {
|
|
14
|
+
export { MapCanvas } from "./MapCanvas.js";
|
|
15
|
+
// ── Map chrome (node-safe presentation; the host supplies the input and reads its own map) ──
|
|
16
|
+
export { MapChipRow } from "./MapChipRow.js";
|
|
17
|
+
export { MapCompass } from "./MapCompass.js";
|
|
18
|
+
export { useMapBearing } from "./useMapBearing.js";
|
|
19
|
+
export { useMapLabelPick } from "./useMapLabelPick.js";
|
|
20
|
+
export { MapControlButton, MapControlGroup, MapControlStack } from "./MapControlStack.js";
|
|
21
|
+
export { MapFooter } from "./MapFooter.js";
|
|
22
|
+
export { MapProgressBar } from "./MapProgressBar.js";
|
|
23
|
+
export { MapSheet } from "./MapSheet.js";
|
|
24
|
+
export { MapSearchBar } from "./MapSearchBar.js";
|
|
15
25
|
// ── Pure geometry + render spec (node-safe; no react-map-gl at runtime) ──────
|
|
16
26
|
export { approxCircleGeometry, bboxToBounds, geomBounds, radiusCircleGeometry } from "#map/geometry";
|
|
17
27
|
export { cameraToViewState, computeMapPlaceRenderSpec } from "#map/place-render";
|
|
@@ -22,15 +32,15 @@ export { PlaceMarker } from "./PlaceMarker.js";
|
|
|
22
32
|
export { ResolvedPlaceLayers } from "./ResolvedPlaceLayers.js";
|
|
23
33
|
export { ResultCamera } from "./ResultCamera.js";
|
|
24
34
|
export { ResultOverlay } from "./ResultOverlay.js";
|
|
25
|
-
// ──
|
|
35
|
+
// ── Geocoder controls + the composed geocoder ────────────────────────────────
|
|
26
36
|
export { BackendControl } from "./BackendControl.js";
|
|
27
37
|
export { CompareToggle } from "./CompareToggle.js";
|
|
28
|
-
export {
|
|
29
|
-
export {
|
|
38
|
+
export { Geocoder } from "./Geocoder.js";
|
|
39
|
+
export { GeocoderControls } from "./GeocoderControls.js";
|
|
30
40
|
export { PlaceAutocomplete } from "./PlaceAutocomplete.js";
|
|
31
41
|
export { ResultPanel } from "./ResultPanel.js";
|
|
32
42
|
export { useCompareState } from "#map/useCompareState";
|
|
33
|
-
export {
|
|
43
|
+
export { useGeocode } from "#map/useGeocode";
|
|
34
44
|
export { usePlaceAutocomplete } from "#map/usePlaceAutocomplete";
|
|
35
45
|
export { VersionPicker } from "./VersionPicker.js";
|
|
36
46
|
//# sourceMappingURL=index.js.map
|
package/out/map/index.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../lib/map/index.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;GAYG;AAEH,OAAO,EAAE,OAAO,EAAE,MAAM,
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../lib/map/index.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;GAYG;AAEH,OAAO,EAAE,SAAS,EAAE,MAAM,gBAAiB,CAAA;AAG3C,+FAA+F;AAC/F,OAAO,EAAE,UAAU,EAAE,MAAM,iBAAkB,CAAA;AAE7C,OAAO,EAAE,UAAU,EAAE,MAAM,iBAAkB,CAAA;AAE7C,OAAO,EAAE,aAAa,EAAE,MAAM,oBAAoB,CAAA;AAElD,OAAO,EAAE,eAAe,EAAE,MAAM,sBAAsB,CAAA;AACtD,OAAO,EAAE,gBAAgB,EAAE,eAAe,EAAE,eAAe,EAAE,MAAM,sBAAuB,CAAA;AAE1F,OAAO,EAAE,SAAS,EAAE,MAAM,gBAAiB,CAAA;AAE3C,OAAO,EAAE,cAAc,EAAE,MAAM,qBAAsB,CAAA;AAErD,OAAO,EAAE,QAAQ,EAAE,MAAM,eAAgB,CAAA;AAEzC,OAAO,EAAE,YAAY,EAAE,MAAM,mBAAoB,CAAA;AAgBjD,gFAAgF;AAChF,OAAO,EAAE,oBAAoB,EAAE,YAAY,EAAE,UAAU,EAAE,oBAAoB,EAAE,MAAM,eAAe,CAAA;AAEpG,OAAO,EAAE,iBAAiB,EAAE,yBAAyB,EAAE,MAAM,mBAAmB,CAAA;AAEhF,OAAO,EAAE,iBAAiB,EAAE,MAAM,wBAAwB,CAAA;AAE1D,gFAAgF;AAChF,OAAO,EAAE,aAAa,EAAE,MAAM,oBAAqB,CAAA;AAEnD,OAAO,EAAE,WAAW,EAAE,MAAM,kBAAmB,CAAA;AAE/C,OAAO,EAAE,mBAAmB,EAAE,MAAM,0BAA2B,CAAA;AAE/D,OAAO,EAAE,YAAY,EAAE,MAAM,mBAAoB,CAAA;AAEjD,OAAO,EAAE,aAAa,EAAE,MAAM,oBAAqB,CAAA;AAGnD,gFAAgF;AAChF,OAAO,EAAE,cAAc,EAAE,MAAM,qBAAsB,CAAA;AAErD,OAAO,EAAE,aAAa,EAAE,MAAM,oBAAqB,CAAA;AAEnD,OAAO,EAAE,QAAQ,EAAE,MAAM,eAAgB,CAAA;AAEzC,OAAO,EAAE,gBAAgB,EAAE,MAAM,uBAAwB,CAAA;AAEzD,OAAO,EAAE,iBAAiB,EAAE,MAAM,wBAAyB,CAAA;AAE3D,OAAO,EAAE,WAAW,EAAE,MAAM,kBAAmB,CAAA;AAE/C,OAAO,EAAE,eAAe,EAAE,MAAM,sBAAsB,CAAA;AAEtD,OAAO,EAAE,UAAU,EAAE,MAAM,iBAAiB,CAAA;AAE5C,OAAO,EAAE,oBAAoB,EAAE,MAAM,2BAA2B,CAAA;AAQhE,OAAO,EAAE,aAAa,EAAE,MAAM,oBAAqB,CAAA"}
|
|
@@ -0,0 +1,31 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* @copyright Sister Software
|
|
3
|
+
* @license AGPL-3.0
|
|
4
|
+
* @author Teffen Ellis, et al.
|
|
5
|
+
* @file The bare MapLibre control both debug panels portal into.
|
|
6
|
+
*
|
|
7
|
+
* `DashboardMap`'s inspector and the demo page's `_debug.tsx` panel each need an `IControl` whose
|
|
8
|
+
* only job is to own a container element for `createPortal`. The class was duplicated in both;
|
|
9
|
+
* the position and container class are the only differences, so they are parameters here.
|
|
10
|
+
*/
|
|
11
|
+
import type { ControlPosition } from "maplibre-gl";
|
|
12
|
+
import type { IControl, MapInstance } from "react-map-gl/maplibre";
|
|
13
|
+
export interface DebugControlBaseOptions {
|
|
14
|
+
/**
|
|
15
|
+
* Class applied to the portal container.
|
|
16
|
+
*/
|
|
17
|
+
className?: string;
|
|
18
|
+
/**
|
|
19
|
+
* Where MapLibre docks the control. @default "bottom-left"
|
|
20
|
+
*/
|
|
21
|
+
position?: ControlPosition;
|
|
22
|
+
}
|
|
23
|
+
export declare class DebugControlBase implements IControl {
|
|
24
|
+
#private;
|
|
25
|
+
readonly container: HTMLElement;
|
|
26
|
+
constructor({ className, position }?: DebugControlBaseOptions);
|
|
27
|
+
onAdd(_map: MapInstance): HTMLElement;
|
|
28
|
+
onRemove(_map: MapInstance): void;
|
|
29
|
+
getDefaultPosition(): ControlPosition;
|
|
30
|
+
}
|
|
31
|
+
//# sourceMappingURL=map-debug.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"map-debug.d.ts","sourceRoot":"","sources":["../../lib/map/map-debug.ts"],"names":[],"mappings":"AAAA;;;;;;;;;GASG;AAEH,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,aAAa,CAAA;AAClD,OAAO,KAAK,EAAE,QAAQ,EAAE,WAAW,EAAE,MAAM,uBAAuB,CAAA;AAElE,MAAM,WAAW,uBAAuB;IACvC;;OAEG;IACH,SAAS,CAAC,EAAE,MAAM,CAAA;IAClB;;OAEG;IACH,QAAQ,CAAC,EAAE,eAAe,CAAA;CAC1B;AAED,qBAAa,gBAAiB,YAAW,QAAQ;;IAChD,SAAgB,SAAS,EAAE,WAAW,CAAA;IAGtC,YAAY,EAAE,SAAS,EAAE,QAAwB,EAAE,GAAE,uBAA4B,EAQhF;IAEM,KAAK,CAAC,IAAI,EAAE,WAAW,GAAG,WAAW,CAE3C;IAEM,QAAQ,CAAC,IAAI,EAAE,WAAW,GAAG,IAAI,CAEvC;IAEM,kBAAkB,IAAI,eAAe,CAE3C;CACD"}
|
|
@@ -0,0 +1,31 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* @copyright Sister Software
|
|
3
|
+
* @license AGPL-3.0
|
|
4
|
+
* @author Teffen Ellis, et al.
|
|
5
|
+
* @file The bare MapLibre control both debug panels portal into.
|
|
6
|
+
*
|
|
7
|
+
* `DashboardMap`'s inspector and the demo page's `_debug.tsx` panel each need an `IControl` whose
|
|
8
|
+
* only job is to own a container element for `createPortal`. The class was duplicated in both;
|
|
9
|
+
* the position and container class are the only differences, so they are parameters here.
|
|
10
|
+
*/
|
|
11
|
+
export class DebugControlBase {
|
|
12
|
+
container;
|
|
13
|
+
#position;
|
|
14
|
+
constructor({ className, position = "bottom-left" } = {}) {
|
|
15
|
+
this.container = document.createElement("div");
|
|
16
|
+
if (className) {
|
|
17
|
+
this.container.classList.add(className);
|
|
18
|
+
}
|
|
19
|
+
this.#position = position;
|
|
20
|
+
}
|
|
21
|
+
onAdd(_map) {
|
|
22
|
+
return this.container;
|
|
23
|
+
}
|
|
24
|
+
onRemove(_map) {
|
|
25
|
+
this.container.remove();
|
|
26
|
+
}
|
|
27
|
+
getDefaultPosition() {
|
|
28
|
+
return this.#position;
|
|
29
|
+
}
|
|
30
|
+
}
|
|
31
|
+
//# sourceMappingURL=map-debug.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"map-debug.js","sourceRoot":"","sources":["../../lib/map/map-debug.ts"],"names":[],"mappings":"AAAA;;;;;;;;;GASG;AAgBH,MAAM,OAAO,gBAAgB;IACZ,SAAS,CAAa;IAC7B,SAAS,CAAiB;IAEnC,YAAY,EAAE,SAAS,EAAE,QAAQ,GAAG,aAAa,EAAE,GAA4B,EAAE;QAChF,IAAI,CAAC,SAAS,GAAG,QAAQ,CAAC,aAAa,CAAC,KAAK,CAAC,CAAA;QAE9C,IAAI,SAAS,EAAE,CAAC;YACf,IAAI,CAAC,SAAS,CAAC,SAAS,CAAC,GAAG,CAAC,SAAS,CAAC,CAAA;QACxC,CAAC;QAED,IAAI,CAAC,SAAS,GAAG,QAAQ,CAAA;IAC1B,CAAC;IAEM,KAAK,CAAC,IAAiB;QAC7B,OAAO,IAAI,CAAC,SAAS,CAAA;IACtB,CAAC;IAEM,QAAQ,CAAC,IAAiB;QAChC,IAAI,CAAC,SAAS,CAAC,MAAM,EAAE,CAAA;IACxB,CAAC;IAEM,kBAAkB;QACxB,OAAO,IAAI,CAAC,SAAS,CAAA;IACtB,CAAC;CACD"}
|
|
@@ -18,8 +18,8 @@
|
|
|
18
18
|
* 4. bbox with real extent → bbox-sized approximate circle, fit the bbox
|
|
19
19
|
* 5. bare point → no outline, fly to zoom 12
|
|
20
20
|
*/
|
|
21
|
+
import type { ResolvedPlaceView } from "@mailwoman/core/pipeline/client-result";
|
|
21
22
|
import type { BoundsTuple, PlaceBBox, PlaceGeometry } from "#map/geometry";
|
|
22
|
-
import type { ResolvedPlaceView } from "#pipeline/types";
|
|
23
23
|
/**
|
|
24
24
|
* `[longitude, latitude]`.
|
|
25
25
|
*/
|
|
@@ -90,7 +90,7 @@ export interface MapPlaceRenderSpec {
|
|
|
90
90
|
*/
|
|
91
91
|
export declare function computeMapPlaceRenderSpec(place: ResolvedMapPlace): MapPlaceRenderSpec;
|
|
92
92
|
/**
|
|
93
|
-
* The DECLARATIVE camera path: reshape a `center` target into a `viewState` patch a controlled `<
|
|
93
|
+
* The DECLARATIVE camera path: reshape a `center` target into a `viewState` patch a controlled `<MapCanvas viewState>`
|
|
94
94
|
* can apply directly (a hard jump, no animation). Returns `null` for a `bounds` target — fitting a box to the viewport
|
|
95
95
|
* needs the map's pixel dimensions, which only the live map has, so that case is applied imperatively by
|
|
96
96
|
* `<ResultCamera>`. Pure + node-testable.
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"place-render.d.ts","sourceRoot":"","sources":["../../lib/map/place-render.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;GAmBG;
|
|
1
|
+
{"version":3,"file":"place-render.d.ts","sourceRoot":"","sources":["../../lib/map/place-render.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;GAmBG;AAEH,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,wCAAwC,CAAA;AAG/E,OAAO,KAAK,EAAE,WAAW,EAAE,SAAS,EAAE,aAAa,EAAE,MAAM,eAAe,CAAA;AAE1E;;GAEG;AACH,MAAM,MAAM,MAAM,GAAG,CAAC,MAAM,EAAE,MAAM,CAAC,CAAA;AAErC;;GAEG;AACH,MAAM,MAAM,SAAS,GAAG,eAAe,GAAG,cAAc,CAAA;AAExD;;;;GAIG;AACH,MAAM,WAAW,gBAAiB,SAAQ,iBAAiB;IAC1D;;OAEG;IACH,IAAI,CAAC,EAAE,SAAS,CAAA;IAChB;;OAEG;IACH,IAAI,CAAC,EAAE,SAAS,CAAA;IAChB;;OAEG;IACH,YAAY,CAAC,EAAE,MAAM,CAAA;IACrB;;;OAGG;IACH,QAAQ,CAAC,EAAE,aAAa,CAAA;CACxB;AAED;;;;GAIG;AACH,MAAM,MAAM,eAAe,GACxB;IAAE,IAAI,EAAE,QAAQ,CAAC;IAAC,MAAM,EAAE,MAAM,CAAC;IAAC,IAAI,EAAE,MAAM,CAAA;CAAE,GAChD;IAAE,IAAI,EAAE,QAAQ,CAAC;IAAC,MAAM,EAAE,WAAW,CAAC;IAAC,OAAO,EAAE,MAAM,CAAA;CAAE,CAAA;AAE3D;;GAEG;AACH,MAAM,WAAW,kBAAkB;IAClC;;OAEG;IACH,OAAO,EAAE,MAAM,EAAE,CAAA;IACjB;;OAEG;IACH,OAAO,EAAE,aAAa,GAAG,IAAI,CAAA;IAC7B;;OAEG;IACH,MAAM,EAAE,eAAe,CAAA;CACvB;AAsBD;;;;GAIG;AACH,wBAAgB,yBAAyB,CAAC,KAAK,EAAE,gBAAgB,GAAG,kBAAkB,CAsDrF;AAED;;;;;GAKG;AACH,wBAAgB,iBAAiB,CAChC,MAAM,EAAE,eAAe,GACrB;IAAE,SAAS,EAAE,MAAM,CAAC;IAAC,QAAQ,EAAE,MAAM,CAAC;IAAC,IAAI,EAAE,MAAM,CAAA;CAAE,GAAG,IAAI,CAI9D"}
|
package/out/map/place-render.js
CHANGED
|
@@ -91,7 +91,7 @@ export function computeMapPlaceRenderSpec(place) {
|
|
|
91
91
|
};
|
|
92
92
|
}
|
|
93
93
|
/**
|
|
94
|
-
* The DECLARATIVE camera path: reshape a `center` target into a `viewState` patch a controlled `<
|
|
94
|
+
* The DECLARATIVE camera path: reshape a `center` target into a `viewState` patch a controlled `<MapCanvas viewState>`
|
|
95
95
|
* can apply directly (a hard jump, no animation). Returns `null` for a `bounds` target — fitting a box to the viewport
|
|
96
96
|
* needs the map's pixel dimensions, which only the live map has, so that case is applied imperatively by
|
|
97
97
|
* `<ResultCamera>`. Pure + node-testable.
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"place-render.js","sourceRoot":"","sources":["../../lib/map/place-render.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;GAmBG;
|
|
1
|
+
{"version":3,"file":"place-render.js","sourceRoot":"","sources":["../../lib/map/place-render.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;GAmBG;AAIH,OAAO,EAAE,oBAAoB,EAAE,YAAY,EAAE,UAAU,EAAE,oBAAoB,EAAE,MAAM,eAAe,CAAA;AAiEpG;;GAEG;AACH,MAAM,IAAI,GAAG;IACZ,YAAY,EAAE,EAAE;IAChB,YAAY,EAAE,EAAE;IAChB,QAAQ,EAAE,EAAE;IACZ,KAAK,EAAE,EAAE;CACA,CAAA;AAEV;;GAEG;AACH,MAAM,WAAW,GAAG,EAAE,CAAA;AAEtB;;GAEG;AACH,MAAM,cAAc,GAAG,KAAK,CAAA;AAE5B;;;;GAIG;AACH,MAAM,UAAU,yBAAyB,CAAC,KAAuB;IAChE,MAAM,OAAO,GAAa,CAAC,CAAC,KAAK,CAAC,GAAG,EAAE,KAAK,CAAC,GAAG,CAAC,CAAC,CAAA;IAElD,kHAAkH;IAClH,4EAA4E;IAC5E,IAAI,KAAK,CAAC,IAAI,IAAI,KAAK,CAAC,YAAY,IAAI,IAAI,EAAE,CAAC;QAC9C,OAAO;YACN,OAAO;YACP,OAAO,EAAE,oBAAoB,CAAC,KAAK,CAAC,GAAG,EAAE,KAAK,CAAC,GAAG,EAAE,KAAK,CAAC,YAAY,CAAC;YACvE,MAAM,EAAE;gBACP,IAAI,EAAE,QAAQ;gBACd,MAAM,EAAE,CAAC,KAAK,CAAC,GAAG,EAAE,KAAK,CAAC,GAAG,CAAC;gBAC9B,IAAI,EAAE,KAAK,CAAC,IAAI,KAAK,eAAe,CAAC,CAAC,CAAC,IAAI,CAAC,YAAY,CAAC,CAAC,CAAC,IAAI,CAAC,YAAY;aAC5E;SACD,CAAA;IACF,CAAC;IAED,wGAAwG;IACxG,IAAI,KAAK,CAAC,QAAQ,EAAE,CAAC;QACpB,OAAO;YACN,OAAO;YACP,OAAO,EAAE,KAAK,CAAC,QAAQ;YACvB,MAAM,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE,MAAM,EAAE,YAAY,CAAC,UAAU,CAAC,KAAK,CAAC,QAAQ,CAAC,CAAC,EAAE,OAAO,EAAE,WAAW,EAAE;SAClG,CAAA;IACF,CAAC;IAED,8GAA8G;IAC9G,2BAA2B;IAC3B,IAAI,CAAC,KAAK,CAAC,IAAI,IAAI,KAAK,CAAC,SAAS,KAAK,UAAU,EAAE,CAAC;QACnD,OAAO;YACN,OAAO;YACP,OAAO,EAAE,oBAAoB,CAAC,KAAK,CAAC,GAAG,EAAE,KAAK,CAAC,GAAG,CAAC;YACnD,MAAM,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE,MAAM,EAAE,CAAC,KAAK,CAAC,GAAG,EAAE,KAAK,CAAC,GAAG,CAAC,EAAE,IAAI,EAAE,IAAI,CAAC,QAAQ,EAAE;SAC/E,CAAA;IACF,CAAC;IAED,kHAAkH;IAClH,sCAAsC;IACtC,MAAM,IAAI,GAAG,KAAK,CAAC,IAAI,CAAA;IAEvB,IAAI,IAAI,IAAI,IAAI,CAAC,GAAG,CAAC,IAAI,CAAC,MAAM,GAAG,IAAI,CAAC,MAAM,EAAE,IAAI,CAAC,MAAM,GAAG,IAAI,CAAC,MAAM,CAAC,GAAG,cAAc,EAAE,CAAC;QAC7F,OAAO;YACN,OAAO;YACP,OAAO,EAAE,oBAAoB,CAAC,KAAK,CAAC,GAAG,EAAE,KAAK,CAAC,GAAG,EAAE,IAAI,CAAC;YACzD,MAAM,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE,MAAM,EAAE,YAAY,CAAC,IAAI,CAAC,EAAE,OAAO,EAAE,WAAW,EAAE;SAC5E,CAAA;IACF,CAAC;IAED,4FAA4F;IAC5F,OAAO;QACN,OAAO;QACP,OAAO,EAAE,IAAI;QACb,MAAM,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE,MAAM,EAAE,CAAC,KAAK,CAAC,GAAG,EAAE,KAAK,CAAC,GAAG,CAAC,EAAE,IAAI,EAAE,IAAI,CAAC,KAAK,EAAE;KAC5E,CAAA;AACF,CAAC;AAED;;;;;GAKG;AACH,MAAM,UAAU,iBAAiB,CAChC,MAAuB;IAEvB,IAAI,MAAM,CAAC,IAAI,KAAK,QAAQ;QAAE,OAAO,IAAI,CAAA;IAEzC,OAAO,EAAE,SAAS,EAAE,MAAM,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,QAAQ,EAAE,MAAM,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,IAAI,EAAE,MAAM,CAAC,IAAI,EAAE,CAAA;AACtF,CAAC"}
|