@mailwoman/react 9.0.0 → 9.2.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +1 -1
- package/common/ClientOnly.tsx +18 -6
- package/map/GeocoderDemo.tsx +24 -1
- package/map/geometry.ts +7 -7
- package/map/usePlaceAutocomplete.ts +37 -25
- package/out/common/ClientOnly.d.ts +5 -2
- package/out/common/ClientOnly.d.ts.map +1 -1
- package/out/common/ClientOnly.js +13 -5
- package/out/common/ClientOnly.js.map +1 -1
- package/out/map/GeocoderDemo.d.ts.map +1 -1
- package/out/map/GeocoderDemo.js +20 -1
- package/out/map/GeocoderDemo.js.map +1 -1
- package/out/map/geometry.js +7 -7
- package/out/map/usePlaceAutocomplete.d.ts.map +1 -1
- package/out/map/usePlaceAutocomplete.js +33 -22
- package/out/map/usePlaceAutocomplete.js.map +1 -1
- package/out/poi/usePOISearch.d.ts.map +1 -1
- package/out/poi/usePOISearch.js +71 -44
- package/out/poi/usePOISearch.js.map +1 -1
- package/out/runtime/useDemoRuntime.d.ts.map +1 -1
- package/out/runtime/useDemoRuntime.js +5 -3
- package/out/runtime/useDemoRuntime.js.map +1 -1
- package/package.json +249 -6
- package/poi/usePOISearch.ts +72 -46
- package/runtime/useDemoRuntime.ts +6 -3
- package/styles.css +49 -19
package/out/poi/usePOISearch.js
CHANGED
|
@@ -11,7 +11,7 @@
|
|
|
11
11
|
import { matchPOISubject } from "@mailwoman/kind-classifier";
|
|
12
12
|
import { emitOverpassQL } from "@mailwoman/poi-taxonomy/overpass";
|
|
13
13
|
import { computeQueryShape } from "@mailwoman/query-shape";
|
|
14
|
-
import { useCallback, useEffect,
|
|
14
|
+
import { useCallback, useEffect, useEffectEvent, useState } from "react";
|
|
15
15
|
import { useDebouncedValue } from "../common/useDebouncedValue.js";
|
|
16
16
|
import { loadPOIRuntime } from "./runtime.js";
|
|
17
17
|
/**
|
|
@@ -35,17 +35,27 @@ function buildOverpass(runtime, categoryID, matchedPhrase, remainder) {
|
|
|
35
35
|
}
|
|
36
36
|
export function usePOISearch({ text, loadRuntime = loadPOIRuntime, runLiveSearch, brandLiveSearch = false, debounceMs = 250, }) {
|
|
37
37
|
const [runtime, setRuntime] = useState(null);
|
|
38
|
-
|
|
39
|
-
|
|
38
|
+
/**
|
|
39
|
+
* The classify result KEYED BY the query that produced it. The visible result is derived during render
|
|
40
|
+
* (`storedResult.query === trimmedText ? … : null`), so a new query invalidates the old answer by derivation — the
|
|
41
|
+
* effect never writes state synchronously to "reset", which is the react(set-state-in-effect) shape the lint bump
|
|
42
|
+
* rightly flags.
|
|
43
|
+
*/
|
|
44
|
+
const [storedResult, setStoredResult] = useState(null);
|
|
45
|
+
/**
|
|
46
|
+
* Live-search state, keyed the same way: launched FOR a query, visible only while that query stands.
|
|
47
|
+
*/
|
|
48
|
+
const [storedLive, setStoredLive] = useState(null);
|
|
40
49
|
const debouncedText = useDebouncedValue(text, debounceMs);
|
|
41
|
-
|
|
42
|
-
//
|
|
43
|
-
//
|
|
44
|
-
|
|
45
|
-
|
|
50
|
+
const trimmedText = debouncedText.trim();
|
|
51
|
+
// The load fires exactly ONCE on mount regardless of whether the caller passes a fresh `loadRuntime`
|
|
52
|
+
// closure each render (an inline `async () => …` would otherwise retrigger the effect → reload →
|
|
53
|
+
// re-render loop). `useEffectEvent` reads the LATEST closure without joining the dependency list —
|
|
54
|
+
// the runtime is a load-once resource.
|
|
55
|
+
const loadRuntimeEvent = useEffectEvent(() => loadRuntime());
|
|
46
56
|
useEffect(() => {
|
|
47
57
|
let cancelled = false;
|
|
48
|
-
|
|
58
|
+
void loadRuntimeEvent().then((loaded) => {
|
|
49
59
|
if (!cancelled) {
|
|
50
60
|
setRuntime(loaded);
|
|
51
61
|
}
|
|
@@ -55,17 +65,15 @@ export function usePOISearch({ text, loadRuntime = loadPOIRuntime, runLiveSearch
|
|
|
55
65
|
};
|
|
56
66
|
}, []);
|
|
57
67
|
// Classify the debounced query and derive the subject + OverpassQL (async, so it lives in an effect).
|
|
68
|
+
// Every state write below happens after an await — invalidation on query change is handled by the
|
|
69
|
+
// key derivation above, not by a synchronous reset here.
|
|
58
70
|
useEffect(() => {
|
|
59
71
|
if (!runtime)
|
|
60
72
|
return;
|
|
61
|
-
|
|
62
|
-
|
|
63
|
-
// A new query invalidates live results from the previous one.
|
|
64
|
-
setLiveSearch({ status: "idle" });
|
|
65
|
-
if (!trimmed) {
|
|
66
|
-
setResult(null);
|
|
73
|
+
const trimmed = trimmedText;
|
|
74
|
+
if (!trimmed)
|
|
67
75
|
return;
|
|
68
|
-
|
|
76
|
+
let cancelled = false;
|
|
69
77
|
const input = { raw: trimmed, normalized: trimmed };
|
|
70
78
|
const shape = computeQueryShape(trimmed);
|
|
71
79
|
runtime.classify(input, shape).then((kindResult) => {
|
|
@@ -73,47 +81,57 @@ export function usePOISearch({ text, loadRuntime = loadPOIRuntime, runLiveSearch
|
|
|
73
81
|
return;
|
|
74
82
|
const matched = kindResult.kind === "poi_query" ? matchPOISubject(trimmed, undefined, runtime.lexicon) : null;
|
|
75
83
|
if (!matched) {
|
|
76
|
-
|
|
84
|
+
setStoredResult({ query: trimmed, value: { kindResult } });
|
|
77
85
|
return;
|
|
78
86
|
}
|
|
79
87
|
// Brand subject: the lexicon carries the brand's canonical name as `categoryID` + its Wikidata QID. No category
|
|
80
88
|
// record, no OverpassQL (brands are searched by QID against the layer's `brand_wikidata` index, not OSM tags).
|
|
81
89
|
if ((matched.match.kind ?? "category") === "brand") {
|
|
82
|
-
|
|
83
|
-
|
|
84
|
-
|
|
85
|
-
|
|
86
|
-
|
|
87
|
-
|
|
88
|
-
|
|
89
|
-
|
|
90
|
-
|
|
90
|
+
setStoredResult({
|
|
91
|
+
query: trimmed,
|
|
92
|
+
value: {
|
|
93
|
+
kindResult,
|
|
94
|
+
subject: {
|
|
95
|
+
kind: "brand",
|
|
96
|
+
name: matched.match.categoryID,
|
|
97
|
+
...(matched.match.wikidata ? { wikidata: matched.match.wikidata } : {}),
|
|
98
|
+
matchedPhrase: matched.match.matchedPhrase,
|
|
99
|
+
confidence: matched.match.confidence,
|
|
100
|
+
remainder: matched.remainder,
|
|
101
|
+
},
|
|
91
102
|
},
|
|
92
103
|
});
|
|
93
104
|
return;
|
|
94
105
|
}
|
|
95
106
|
const category = runtime.lookup.getPOICategory(matched.match.categoryID);
|
|
96
107
|
if (!category) {
|
|
97
|
-
|
|
108
|
+
setStoredResult({ query: trimmed, value: { kindResult } });
|
|
98
109
|
return;
|
|
99
110
|
}
|
|
100
|
-
|
|
101
|
-
|
|
102
|
-
|
|
103
|
-
|
|
104
|
-
|
|
105
|
-
|
|
106
|
-
|
|
107
|
-
|
|
108
|
-
|
|
111
|
+
setStoredResult({
|
|
112
|
+
query: trimmed,
|
|
113
|
+
value: {
|
|
114
|
+
kindResult,
|
|
115
|
+
subject: {
|
|
116
|
+
kind: "category",
|
|
117
|
+
category,
|
|
118
|
+
matchedPhrase: matched.match.matchedPhrase,
|
|
119
|
+
confidence: matched.match.confidence,
|
|
120
|
+
remainder: matched.remainder,
|
|
121
|
+
buildLocal: runtime.lookup.requiresBuildLocalLayer(category),
|
|
122
|
+
},
|
|
123
|
+
...buildOverpass(runtime, matched.match.categoryID, matched.match.matchedPhrase, matched.remainder),
|
|
109
124
|
},
|
|
110
|
-
...buildOverpass(runtime, matched.match.categoryID, matched.match.matchedPhrase, matched.remainder),
|
|
111
125
|
});
|
|
112
126
|
});
|
|
113
127
|
return () => {
|
|
114
128
|
cancelled = true;
|
|
115
129
|
};
|
|
116
|
-
}, [
|
|
130
|
+
}, [trimmedText, runtime]);
|
|
131
|
+
// Derived visibility: an answer stands only while its query does. A new query reads as null/idle
|
|
132
|
+
// with no reset write anywhere.
|
|
133
|
+
const result = storedResult?.query === trimmedText ? storedResult.value : null;
|
|
134
|
+
const liveSearch = storedLive?.query === trimmedText ? storedLive.state : { status: "idle" };
|
|
117
135
|
const subject = result?.subject;
|
|
118
136
|
// A subject is live-searchable when a probe is wired, it has an anchor, and: a CATEGORY that isn't build-local, or a
|
|
119
137
|
// BRAND with a QID AND a brand-capable probe (`brandLiveSearch`). Brands without a QID / without a brand probe show
|
|
@@ -126,7 +144,7 @@ export function usePOISearch({ text, loadRuntime = loadPOIRuntime, runLiveSearch
|
|
|
126
144
|
return;
|
|
127
145
|
if (subject.kind === "category" ? subject.buildLocal : !(brandLiveSearch && subject.wikidata))
|
|
128
146
|
return;
|
|
129
|
-
|
|
147
|
+
setStoredLive({ query: trimmedText, state: { status: "loading" } });
|
|
130
148
|
try {
|
|
131
149
|
const outcome = await runLiveSearch(subject.kind === "brand"
|
|
132
150
|
? {
|
|
@@ -142,19 +160,28 @@ export function usePOISearch({ text, loadRuntime = loadPOIRuntime, runLiveSearch
|
|
|
142
160
|
anchor: subject.remainder,
|
|
143
161
|
});
|
|
144
162
|
if (outcome.status === "success") {
|
|
145
|
-
|
|
163
|
+
setStoredLive({
|
|
164
|
+
query: trimmedText,
|
|
165
|
+
state: { status: "success", hits: outcome.hits, centerName: outcome.centerName },
|
|
166
|
+
});
|
|
146
167
|
}
|
|
147
168
|
else if (outcome.status === "unplaced") {
|
|
148
|
-
|
|
169
|
+
setStoredLive({ query: trimmedText, state: { status: "error", message: `couldn't place "${outcome.anchor}"` } });
|
|
149
170
|
}
|
|
150
171
|
else {
|
|
151
|
-
|
|
172
|
+
setStoredLive({
|
|
173
|
+
query: trimmedText,
|
|
174
|
+
state: { status: "error", message: "the published POI layer isn't reachable" },
|
|
175
|
+
});
|
|
152
176
|
}
|
|
153
177
|
}
|
|
154
178
|
catch {
|
|
155
|
-
|
|
179
|
+
setStoredLive({
|
|
180
|
+
query: trimmedText,
|
|
181
|
+
state: { status: "error", message: "the published POI layer isn't reachable" },
|
|
182
|
+
});
|
|
156
183
|
}
|
|
157
|
-
}, [runLiveSearch, runtime, subject, brandLiveSearch]);
|
|
184
|
+
}, [runLiveSearch, runtime, subject, brandLiveSearch, trimmedText]);
|
|
158
185
|
return { runtimeReady: runtime !== null, result, liveSearch, canSearchLive, searchLive };
|
|
159
186
|
}
|
|
160
187
|
//# sourceMappingURL=usePOISearch.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"usePOISearch.js","sourceRoot":"","sources":["../../poi/usePOISearch.ts"],"names":[],"mappings":"AAAA;;;;;;;;;GASG;AAEH,OAAO,EAAE,eAAe,EAAE,MAAM,4BAA4B,CAAA;AAC5D,OAAO,EAAE,cAAc,EAAE,MAAM,kCAAkC,CAAA;AAEjE,OAAO,EAAE,iBAAiB,EAAE,MAAM,wBAAwB,CAAA;AAC1D,OAAO,EAAE,WAAW,EAAE,SAAS,EAAE,
|
|
1
|
+
{"version":3,"file":"usePOISearch.js","sourceRoot":"","sources":["../../poi/usePOISearch.ts"],"names":[],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"useDemoRuntime.d.ts","sourceRoot":"","sources":["../../runtime/useDemoRuntime.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;GAiBG;AAIH;;GAEG;AACH,MAAM,WAAW,eAAe;IAC/B;;OAEG;IACH,OAAO,EAAE,MAAM,CAAA;IACf;;OAEG;IACH,KAAK,CAAC,EAAE,MAAM,CAAA;CACd;AAED;;GAEG;AACH,MAAM,WAAW,YAAY,CAAC,QAAQ,SAAS,eAAe,GAAG,eAAe;IAC/E;;OAEG;IACH,cAAc,EAAE,MAAM,CAAA;IACtB;;OAEG;IACH,QAAQ,EAAE,QAAQ,EAAE,CAAA;CACpB;AAED;;;;GAIG;AACH,MAAM,WAAW,qBAAqB;IACrC;;OAEG;IACH,MAAM,EAAE,WAAW,CAAA;IACnB;;OAEG;IACH,SAAS,EAAE,OAAO,CAAA;IAClB;;OAEG;IACH,WAAW,EAAE,CAAC,QAAQ,EAAE,MAAM,KAAK,IAAI,CAAA;IACvC;;OAEG;IACH,aAAa,EAAE,CAAC,MAAM,EAAE,MAAM,EAAE,KAAK,IAAI,CAAA;IACzC;;OAEG;IACH,YAAY,EAAE,CAAC,KAAK,EAAE,MAAM,KAAK,IAAI,CAAA;IACrC;;OAEG;IACH,UAAU,EAAE,CAAC,OAAO,EAAE,MAAM,KAAK,IAAI,CAAA;CACrC;AAED;;GAEG;AACH,MAAM,WAAW,iBAAiB,CAAC,OAAO,EAAE,QAAQ,SAAS,eAAe,GAAG,eAAe;IAC7F;;;OAGG;IACH,YAAY,EAAE,CAAC,MAAM,EAAE,WAAW,KAAK,OAAO,CAAC,YAAY,CAAC,QAAQ,CAAC,GAAG,IAAI,CAAC,CAAA;IAC7E;;;;OAIG;IACH,UAAU,EAAE,CAAC,OAAO,EAAE,QAAQ,EAAE,GAAG,EAAE,qBAAqB,KAAK,OAAO,CAAC,OAAO,CAAC,CAAA;IAC/E;;OAEG;IACH,eAAe,CAAC,EAAE,MAAM,CAAA;CACxB;AAED;;;;;;;;GAQG;AACH,MAAM,WAAW,eAAe,CAAC,OAAO,EAAE,QAAQ,SAAS,eAAe,GAAG,eAAe;IAC3F;;OAEG;IACH,QAAQ,EAAE,YAAY,CAAC,QAAQ,CAAC,GAAG,IAAI,CAAA;IACvC;;OAEG;IACH,eAAe,EAAE,MAAM,GAAG,IAAI,CAAA;IAC9B;;OAEG;IACH,eAAe,EAAE,QAAQ,GAAG,IAAI,CAAA;IAChC;;OAEG;IACH,MAAM,EAAE,OAAO,GAAG,IAAI,CAAA;IACtB;;OAEG;IACH,KAAK,EAAE,OAAO,CAAA;IACd;;OAEG;IACH,eAAe,EAAE,MAAM,CAAA;IACvB;;OAEG;IACH,gBAAgB,EAAE,MAAM,CAAA;IACxB;;OAEG;IACH,iBAAiB,EAAE,MAAM,EAAE,CAAA;IAC3B;;OAEG;IACH,YAAY,EAAE,MAAM,GAAG,IAAI,CAAA;IAC3B;;OAEG;IACH,aAAa,EAAE,MAAM,CAAA;IACrB;;OAEG;IACH,SAAS,EAAE,OAAO,CAAA;IAClB;;OAEG;IACH,aAAa,EAAE,CAAC,OAAO,EAAE,MAAM,KAAK,IAAI,CAAA;IACxC;;OAEG;IACH,YAAY,EAAE,CAAC,SAAS,EAAE,OAAO,KAAK,IAAI,CAAA;CAC1C;AAED;;;;;;GAMG;AACH,wBAAgB,cAAc,CAAC,OAAO,EAAE,QAAQ,SAAS,eAAe,GAAG,eAAe,EACzF,MAAM,EAAE,iBAAiB,CAAC,OAAO,EAAE,QAAQ,CAAC,GAC1C,eAAe,CAAC,OAAO,EAAE,QAAQ,CAAC,
|
|
1
|
+
{"version":3,"file":"useDemoRuntime.d.ts","sourceRoot":"","sources":["../../runtime/useDemoRuntime.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;GAiBG;AAIH;;GAEG;AACH,MAAM,WAAW,eAAe;IAC/B;;OAEG;IACH,OAAO,EAAE,MAAM,CAAA;IACf;;OAEG;IACH,KAAK,CAAC,EAAE,MAAM,CAAA;CACd;AAED;;GAEG;AACH,MAAM,WAAW,YAAY,CAAC,QAAQ,SAAS,eAAe,GAAG,eAAe;IAC/E;;OAEG;IACH,cAAc,EAAE,MAAM,CAAA;IACtB;;OAEG;IACH,QAAQ,EAAE,QAAQ,EAAE,CAAA;CACpB;AAED;;;;GAIG;AACH,MAAM,WAAW,qBAAqB;IACrC;;OAEG;IACH,MAAM,EAAE,WAAW,CAAA;IACnB;;OAEG;IACH,SAAS,EAAE,OAAO,CAAA;IAClB;;OAEG;IACH,WAAW,EAAE,CAAC,QAAQ,EAAE,MAAM,KAAK,IAAI,CAAA;IACvC;;OAEG;IACH,aAAa,EAAE,CAAC,MAAM,EAAE,MAAM,EAAE,KAAK,IAAI,CAAA;IACzC;;OAEG;IACH,YAAY,EAAE,CAAC,KAAK,EAAE,MAAM,KAAK,IAAI,CAAA;IACrC;;OAEG;IACH,UAAU,EAAE,CAAC,OAAO,EAAE,MAAM,KAAK,IAAI,CAAA;CACrC;AAED;;GAEG;AACH,MAAM,WAAW,iBAAiB,CAAC,OAAO,EAAE,QAAQ,SAAS,eAAe,GAAG,eAAe;IAC7F;;;OAGG;IACH,YAAY,EAAE,CAAC,MAAM,EAAE,WAAW,KAAK,OAAO,CAAC,YAAY,CAAC,QAAQ,CAAC,GAAG,IAAI,CAAC,CAAA;IAC7E;;;;OAIG;IACH,UAAU,EAAE,CAAC,OAAO,EAAE,QAAQ,EAAE,GAAG,EAAE,qBAAqB,KAAK,OAAO,CAAC,OAAO,CAAC,CAAA;IAC/E;;OAEG;IACH,eAAe,CAAC,EAAE,MAAM,CAAA;CACxB;AAED;;;;;;;;GAQG;AACH,MAAM,WAAW,eAAe,CAAC,OAAO,EAAE,QAAQ,SAAS,eAAe,GAAG,eAAe;IAC3F;;OAEG;IACH,QAAQ,EAAE,YAAY,CAAC,QAAQ,CAAC,GAAG,IAAI,CAAA;IACvC;;OAEG;IACH,eAAe,EAAE,MAAM,GAAG,IAAI,CAAA;IAC9B;;OAEG;IACH,eAAe,EAAE,QAAQ,GAAG,IAAI,CAAA;IAChC;;OAEG;IACH,MAAM,EAAE,OAAO,GAAG,IAAI,CAAA;IACtB;;OAEG;IACH,KAAK,EAAE,OAAO,CAAA;IACd;;OAEG;IACH,eAAe,EAAE,MAAM,CAAA;IACvB;;OAEG;IACH,gBAAgB,EAAE,MAAM,CAAA;IACxB;;OAEG;IACH,iBAAiB,EAAE,MAAM,EAAE,CAAA;IAC3B;;OAEG;IACH,YAAY,EAAE,MAAM,GAAG,IAAI,CAAA;IAC3B;;OAEG;IACH,aAAa,EAAE,MAAM,CAAA;IACrB;;OAEG;IACH,SAAS,EAAE,OAAO,CAAA;IAClB;;OAEG;IACH,aAAa,EAAE,CAAC,OAAO,EAAE,MAAM,KAAK,IAAI,CAAA;IACxC;;OAEG;IACH,YAAY,EAAE,CAAC,SAAS,EAAE,OAAO,KAAK,IAAI,CAAA;CAC1C;AAED;;;;;;GAMG;AACH,wBAAgB,cAAc,CAAC,OAAO,EAAE,QAAQ,SAAS,eAAe,GAAG,eAAe,EACzF,MAAM,EAAE,iBAAiB,CAAC,OAAO,EAAE,QAAQ,CAAC,GAC1C,eAAe,CAAC,OAAO,EAAE,QAAQ,CAAC,CA+HpC"}
|
|
@@ -38,14 +38,16 @@ export function useDemoRuntime(config) {
|
|
|
38
38
|
// Latest-ref the injected loaders: a host that re-creates them each render (an inline arrow) must NOT retrigger the
|
|
39
39
|
// load effects, which key ONLY on version/backend. The effects read `.current` at run time.
|
|
40
40
|
const loadManifestRef = useRef(config.loadManifest);
|
|
41
|
-
loadManifestRef.current = config.loadManifest;
|
|
42
41
|
const loadAssetsRef = useRef(config.loadAssets);
|
|
43
|
-
loadAssetsRef.current = config.loadAssets;
|
|
44
42
|
// Latest manifest for the version-load effect, so it can resolve the release WITHOUT depending on `manifest`
|
|
45
43
|
// identity — which would double-fire the load the instant the manifest first arrives (the selection transition
|
|
46
44
|
// null → defaultVersion already fires it once).
|
|
47
45
|
const manifestRef = useRef(null);
|
|
48
|
-
|
|
46
|
+
useEffect(() => {
|
|
47
|
+
loadManifestRef.current = config.loadManifest;
|
|
48
|
+
loadAssetsRef.current = config.loadAssets;
|
|
49
|
+
manifestRef.current = manifest;
|
|
50
|
+
}, [config.loadAssets, config.loadManifest, manifest]);
|
|
49
51
|
// Mount: fetch the manifest, then select the default version.
|
|
50
52
|
useEffect(() => {
|
|
51
53
|
const controller = new AbortController();
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"useDemoRuntime.js","sourceRoot":"","sources":["../../runtime/useDemoRuntime.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;GAiBG;AAEH,OAAO,EAAE,WAAW,EAAE,SAAS,EAAE,OAAO,EAAE,MAAM,EAAE,QAAQ,EAAE,MAAM,OAAO,CAAA;AAmJzE;;;;;;GAMG;AACH,MAAM,UAAU,cAAc,CAC7B,MAA4C;IAE5C,MAAM,EAAE,eAAe,GAAG,mBAAmB,EAAE,GAAG,MAAM,CAAA;IAExD,MAAM,CAAC,QAAQ,EAAE,WAAW,CAAC,GAAG,QAAQ,CAAgC,IAAI,CAAC,CAAA;IAC7E,MAAM,CAAC,eAAe,EAAE,kBAAkB,CAAC,GAAG,QAAQ,CAAgB,IAAI,CAAC,CAAA;IAC3E,MAAM,CAAC,MAAM,EAAE,SAAS,CAAC,GAAG,QAAQ,CAAiB,IAAI,CAAC,CAAA;IAC1D,MAAM,CAAC,eAAe,EAAE,kBAAkB,CAAC,GAAG,QAAQ,CAAS,eAAe,CAAC,CAAA;IAC/E,MAAM,CAAC,gBAAgB,EAAE,mBAAmB,CAAC,GAAG,QAAQ,CAAC,CAAC,CAAC,CAAC,CAAA;IAC5D,MAAM,CAAC,iBAAiB,EAAE,oBAAoB,CAAC,GAAG,QAAQ,CAAW,EAAE,CAAC,CAAA;IACxE,MAAM,CAAC,YAAY,EAAE,eAAe,CAAC,GAAG,QAAQ,CAAgB,IAAI,CAAC,CAAA;IACrE,MAAM,CAAC,aAAa,EAAE,gBAAgB,CAAC,GAAG,QAAQ,CAAS,EAAE,CAAC,CAAA;IAC9D,MAAM,CAAC,SAAS,EAAE,iBAAiB,CAAC,GAAG,QAAQ,CAAC,KAAK,CAAC,CAAA;IAEtD,oHAAoH;IACpH,4FAA4F;IAC5F,MAAM,eAAe,GAAG,MAAM,CAAC,MAAM,CAAC,YAAY,CAAC,CAAA;IACnD,
|
|
1
|
+
{"version":3,"file":"useDemoRuntime.js","sourceRoot":"","sources":["../../runtime/useDemoRuntime.ts"],"names":[],"mappings":"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"}
|
package/package.json
CHANGED
|
@@ -1,12 +1,12 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@mailwoman/react",
|
|
3
|
-
"version": "9.
|
|
3
|
+
"version": "9.2.0",
|
|
4
4
|
"description": "React components + headless hooks for mailwoman — parse/geocode/POI explorers, Storybook-tested, Docusaurus-independent.",
|
|
5
5
|
"license": "AGPL-3.0-only OR LicenseRef-Commercial",
|
|
6
6
|
"repository": {
|
|
7
7
|
"type": "git",
|
|
8
8
|
"url": "https://github.com/sister-software/mailwoman.git",
|
|
9
|
-
"directory": "react"
|
|
9
|
+
"directory": "packages/react"
|
|
10
10
|
},
|
|
11
11
|
"files": [
|
|
12
12
|
"out/**/*.js",
|
|
@@ -33,6 +33,16 @@
|
|
|
33
33
|
"!storybook-static/**"
|
|
34
34
|
],
|
|
35
35
|
"type": "module",
|
|
36
|
+
"imports": {
|
|
37
|
+
"#index": {
|
|
38
|
+
"types": "./out/index.d.ts",
|
|
39
|
+
"default": "./out/index.js"
|
|
40
|
+
},
|
|
41
|
+
"#map": {
|
|
42
|
+
"types": "./out/map/index.d.ts",
|
|
43
|
+
"default": "./out/map/index.js"
|
|
44
|
+
}
|
|
45
|
+
},
|
|
36
46
|
"exports": {
|
|
37
47
|
"./package.json": "./package.json",
|
|
38
48
|
"./styles.css": "./styles.css",
|
|
@@ -43,6 +53,118 @@
|
|
|
43
53
|
"./map": {
|
|
44
54
|
"types": "./out/map/index.d.ts",
|
|
45
55
|
"default": "./out/map/index.js"
|
|
56
|
+
},
|
|
57
|
+
"./common/CopyButton": {
|
|
58
|
+
"types": "./out/common/CopyButton.d.ts",
|
|
59
|
+
"default": "./out/common/CopyButton.js"
|
|
60
|
+
},
|
|
61
|
+
"./common/KindBadge": {
|
|
62
|
+
"types": "./out/common/KindBadge.d.ts",
|
|
63
|
+
"default": "./out/common/KindBadge.js"
|
|
64
|
+
},
|
|
65
|
+
"./common/LoadingIndicator": {
|
|
66
|
+
"types": "./out/common/LoadingIndicator.d.ts",
|
|
67
|
+
"default": "./out/common/LoadingIndicator.js"
|
|
68
|
+
},
|
|
69
|
+
"./common/PresetChips": {
|
|
70
|
+
"types": "./out/common/PresetChips.d.ts",
|
|
71
|
+
"default": "./out/common/PresetChips.js"
|
|
72
|
+
},
|
|
73
|
+
"./map/DemoMap": {
|
|
74
|
+
"types": "./out/map/DemoMap.d.ts",
|
|
75
|
+
"default": "./out/map/DemoMap.js"
|
|
76
|
+
},
|
|
77
|
+
"./map/GeocoderDemo": {
|
|
78
|
+
"types": "./out/map/GeocoderDemo.d.ts",
|
|
79
|
+
"default": "./out/map/GeocoderDemo.js"
|
|
80
|
+
},
|
|
81
|
+
"./map/place-render": {
|
|
82
|
+
"types": "./out/map/place-render.d.ts",
|
|
83
|
+
"default": "./out/map/place-render.js"
|
|
84
|
+
},
|
|
85
|
+
"./map/ResultCamera": {
|
|
86
|
+
"types": "./out/map/ResultCamera.d.ts",
|
|
87
|
+
"default": "./out/map/ResultCamera.js"
|
|
88
|
+
},
|
|
89
|
+
"./map/geometry": {
|
|
90
|
+
"types": "./out/map/geometry.d.ts",
|
|
91
|
+
"default": "./out/map/geometry.js"
|
|
92
|
+
},
|
|
93
|
+
"./map/OverlayLayers": {
|
|
94
|
+
"types": "./out/map/OverlayLayers.d.ts",
|
|
95
|
+
"default": "./out/map/OverlayLayers.js"
|
|
96
|
+
},
|
|
97
|
+
"./map/ResolvedPlaceLayers": {
|
|
98
|
+
"types": "./out/map/ResolvedPlaceLayers.d.ts",
|
|
99
|
+
"default": "./out/map/ResolvedPlaceLayers.js"
|
|
100
|
+
},
|
|
101
|
+
"./map/types": {
|
|
102
|
+
"types": "./out/map/types.d.ts",
|
|
103
|
+
"default": "./out/map/types.js"
|
|
104
|
+
},
|
|
105
|
+
"./map/BackendControl": {
|
|
106
|
+
"types": "./out/map/BackendControl.d.ts",
|
|
107
|
+
"default": "./out/map/BackendControl.js"
|
|
108
|
+
},
|
|
109
|
+
"./map/CompareToggle": {
|
|
110
|
+
"types": "./out/map/CompareToggle.d.ts",
|
|
111
|
+
"default": "./out/map/CompareToggle.js"
|
|
112
|
+
},
|
|
113
|
+
"./map/PlaceAutocomplete": {
|
|
114
|
+
"types": "./out/map/PlaceAutocomplete.d.ts",
|
|
115
|
+
"default": "./out/map/PlaceAutocomplete.js"
|
|
116
|
+
},
|
|
117
|
+
"./map/ResultPanel": {
|
|
118
|
+
"types": "./out/map/ResultPanel.d.ts",
|
|
119
|
+
"default": "./out/map/ResultPanel.js"
|
|
120
|
+
},
|
|
121
|
+
"./map/usePlaceAutocomplete": {
|
|
122
|
+
"types": "./out/map/usePlaceAutocomplete.d.ts",
|
|
123
|
+
"default": "./out/map/usePlaceAutocomplete.js"
|
|
124
|
+
},
|
|
125
|
+
"./map/VersionPicker": {
|
|
126
|
+
"types": "./out/map/VersionPicker.d.ts",
|
|
127
|
+
"default": "./out/map/VersionPicker.js"
|
|
128
|
+
},
|
|
129
|
+
"./pipeline/ComponentTable": {
|
|
130
|
+
"types": "./out/pipeline/ComponentTable.d.ts",
|
|
131
|
+
"default": "./out/pipeline/ComponentTable.js"
|
|
132
|
+
},
|
|
133
|
+
"./pipeline/PipelineExplorer": {
|
|
134
|
+
"types": "./out/pipeline/PipelineExplorer.d.ts",
|
|
135
|
+
"default": "./out/pipeline/PipelineExplorer.js"
|
|
136
|
+
},
|
|
137
|
+
"./pipeline/ResolvedPlace": {
|
|
138
|
+
"types": "./out/pipeline/ResolvedPlace.d.ts",
|
|
139
|
+
"default": "./out/pipeline/ResolvedPlace.js"
|
|
140
|
+
},
|
|
141
|
+
"./poi/LiveResultsBlock": {
|
|
142
|
+
"types": "./out/poi/LiveResultsBlock.d.ts",
|
|
143
|
+
"default": "./out/poi/LiveResultsBlock.js"
|
|
144
|
+
},
|
|
145
|
+
"./poi/types": {
|
|
146
|
+
"types": "./out/poi/types.d.ts",
|
|
147
|
+
"default": "./out/poi/types.js"
|
|
148
|
+
},
|
|
149
|
+
"./poi/OverpassBlock": {
|
|
150
|
+
"types": "./out/poi/OverpassBlock.d.ts",
|
|
151
|
+
"default": "./out/poi/OverpassBlock.js"
|
|
152
|
+
},
|
|
153
|
+
"./poi/POIExplorer": {
|
|
154
|
+
"types": "./out/poi/POIExplorer.d.ts",
|
|
155
|
+
"default": "./out/poi/POIExplorer.js"
|
|
156
|
+
},
|
|
157
|
+
"./poi/SubjectPanel": {
|
|
158
|
+
"types": "./out/poi/SubjectPanel.d.ts",
|
|
159
|
+
"default": "./out/poi/SubjectPanel.js"
|
|
160
|
+
},
|
|
161
|
+
"./poi/usePOISearch": {
|
|
162
|
+
"types": "./out/poi/usePOISearch.d.ts",
|
|
163
|
+
"default": "./out/poi/usePOISearch.js"
|
|
164
|
+
},
|
|
165
|
+
"./runtime/useDemoRuntime": {
|
|
166
|
+
"types": "./out/runtime/useDemoRuntime.d.ts",
|
|
167
|
+
"default": "./out/runtime/useDemoRuntime.js"
|
|
46
168
|
}
|
|
47
169
|
},
|
|
48
170
|
"publishConfig": {
|
|
@@ -57,6 +179,128 @@
|
|
|
57
179
|
"./map": {
|
|
58
180
|
"types": "./out/map/index.d.ts",
|
|
59
181
|
"default": "./out/map/index.js"
|
|
182
|
+
},
|
|
183
|
+
"./common/CopyButton": {
|
|
184
|
+
"types": "./out/common/CopyButton.d.ts",
|
|
185
|
+
"default": "./out/common/CopyButton.js"
|
|
186
|
+
},
|
|
187
|
+
"./common/KindBadge": {
|
|
188
|
+
"types": "./out/common/KindBadge.d.ts",
|
|
189
|
+
"default": "./out/common/KindBadge.js"
|
|
190
|
+
},
|
|
191
|
+
"./common/LoadingIndicator": {
|
|
192
|
+
"types": "./out/common/LoadingIndicator.d.ts",
|
|
193
|
+
"default": "./out/common/LoadingIndicator.js"
|
|
194
|
+
},
|
|
195
|
+
"./common/PresetChips": {
|
|
196
|
+
"types": "./out/common/PresetChips.d.ts",
|
|
197
|
+
"default": "./out/common/PresetChips.js"
|
|
198
|
+
},
|
|
199
|
+
"./map/DemoMap": {
|
|
200
|
+
"types": "./out/map/DemoMap.d.ts",
|
|
201
|
+
"default": "./out/map/DemoMap.js"
|
|
202
|
+
},
|
|
203
|
+
"./map/GeocoderDemo": {
|
|
204
|
+
"types": "./out/map/GeocoderDemo.d.ts",
|
|
205
|
+
"default": "./out/map/GeocoderDemo.js"
|
|
206
|
+
},
|
|
207
|
+
"./map/place-render": {
|
|
208
|
+
"types": "./out/map/place-render.d.ts",
|
|
209
|
+
"default": "./out/map/place-render.js"
|
|
210
|
+
},
|
|
211
|
+
"./map/ResultCamera": {
|
|
212
|
+
"types": "./out/map/ResultCamera.d.ts",
|
|
213
|
+
"default": "./out/map/ResultCamera.js"
|
|
214
|
+
},
|
|
215
|
+
"./map/geometry": {
|
|
216
|
+
"types": "./out/map/geometry.d.ts",
|
|
217
|
+
"default": "./out/map/geometry.js"
|
|
218
|
+
},
|
|
219
|
+
"./map/OverlayLayers": {
|
|
220
|
+
"types": "./out/map/OverlayLayers.d.ts",
|
|
221
|
+
"default": "./out/map/OverlayLayers.js"
|
|
222
|
+
},
|
|
223
|
+
"./map/ResolvedPlaceLayers": {
|
|
224
|
+
"types": "./out/map/ResolvedPlaceLayers.d.ts",
|
|
225
|
+
"default": "./out/map/ResolvedPlaceLayers.js"
|
|
226
|
+
},
|
|
227
|
+
"./map/types": {
|
|
228
|
+
"types": "./out/map/types.d.ts",
|
|
229
|
+
"default": "./out/map/types.js"
|
|
230
|
+
},
|
|
231
|
+
"./map/BackendControl": {
|
|
232
|
+
"types": "./out/map/BackendControl.d.ts",
|
|
233
|
+
"default": "./out/map/BackendControl.js"
|
|
234
|
+
},
|
|
235
|
+
"./map/CompareToggle": {
|
|
236
|
+
"types": "./out/map/CompareToggle.d.ts",
|
|
237
|
+
"default": "./out/map/CompareToggle.js"
|
|
238
|
+
},
|
|
239
|
+
"./map/PlaceAutocomplete": {
|
|
240
|
+
"types": "./out/map/PlaceAutocomplete.d.ts",
|
|
241
|
+
"default": "./out/map/PlaceAutocomplete.js"
|
|
242
|
+
},
|
|
243
|
+
"./map/ResultPanel": {
|
|
244
|
+
"types": "./out/map/ResultPanel.d.ts",
|
|
245
|
+
"default": "./out/map/ResultPanel.js"
|
|
246
|
+
},
|
|
247
|
+
"./map/usePlaceAutocomplete": {
|
|
248
|
+
"types": "./out/map/usePlaceAutocomplete.d.ts",
|
|
249
|
+
"default": "./out/map/usePlaceAutocomplete.js"
|
|
250
|
+
},
|
|
251
|
+
"./map/VersionPicker": {
|
|
252
|
+
"types": "./out/map/VersionPicker.d.ts",
|
|
253
|
+
"default": "./out/map/VersionPicker.js"
|
|
254
|
+
},
|
|
255
|
+
"./pipeline/ComponentTable": {
|
|
256
|
+
"types": "./out/pipeline/ComponentTable.d.ts",
|
|
257
|
+
"default": "./out/pipeline/ComponentTable.js"
|
|
258
|
+
},
|
|
259
|
+
"./pipeline/PipelineExplorer": {
|
|
260
|
+
"types": "./out/pipeline/PipelineExplorer.d.ts",
|
|
261
|
+
"default": "./out/pipeline/PipelineExplorer.js"
|
|
262
|
+
},
|
|
263
|
+
"./pipeline/ResolvedPlace": {
|
|
264
|
+
"types": "./out/pipeline/ResolvedPlace.d.ts",
|
|
265
|
+
"default": "./out/pipeline/ResolvedPlace.js"
|
|
266
|
+
},
|
|
267
|
+
"./poi/LiveResultsBlock": {
|
|
268
|
+
"types": "./out/poi/LiveResultsBlock.d.ts",
|
|
269
|
+
"default": "./out/poi/LiveResultsBlock.js"
|
|
270
|
+
},
|
|
271
|
+
"./poi/types": {
|
|
272
|
+
"types": "./out/poi/types.d.ts",
|
|
273
|
+
"default": "./out/poi/types.js"
|
|
274
|
+
},
|
|
275
|
+
"./poi/OverpassBlock": {
|
|
276
|
+
"types": "./out/poi/OverpassBlock.d.ts",
|
|
277
|
+
"default": "./out/poi/OverpassBlock.js"
|
|
278
|
+
},
|
|
279
|
+
"./poi/POIExplorer": {
|
|
280
|
+
"types": "./out/poi/POIExplorer.d.ts",
|
|
281
|
+
"default": "./out/poi/POIExplorer.js"
|
|
282
|
+
},
|
|
283
|
+
"./poi/SubjectPanel": {
|
|
284
|
+
"types": "./out/poi/SubjectPanel.d.ts",
|
|
285
|
+
"default": "./out/poi/SubjectPanel.js"
|
|
286
|
+
},
|
|
287
|
+
"./poi/usePOISearch": {
|
|
288
|
+
"types": "./out/poi/usePOISearch.d.ts",
|
|
289
|
+
"default": "./out/poi/usePOISearch.js"
|
|
290
|
+
},
|
|
291
|
+
"./runtime/useDemoRuntime": {
|
|
292
|
+
"types": "./out/runtime/useDemoRuntime.d.ts",
|
|
293
|
+
"default": "./out/runtime/useDemoRuntime.js"
|
|
294
|
+
}
|
|
295
|
+
},
|
|
296
|
+
"imports": {
|
|
297
|
+
"#index": {
|
|
298
|
+
"types": "./out/index.d.ts",
|
|
299
|
+
"default": "./out/index.js"
|
|
300
|
+
},
|
|
301
|
+
"#map": {
|
|
302
|
+
"types": "./out/map/index.d.ts",
|
|
303
|
+
"default": "./out/map/index.js"
|
|
60
304
|
}
|
|
61
305
|
}
|
|
62
306
|
},
|
|
@@ -67,9 +311,9 @@
|
|
|
67
311
|
"test:node": "vitest run --config vitest.node.config.ts"
|
|
68
312
|
},
|
|
69
313
|
"dependencies": {
|
|
70
|
-
"@mailwoman/kind-classifier": "9.
|
|
71
|
-
"@mailwoman/poi-taxonomy": "9.
|
|
72
|
-
"@mailwoman/query-shape": "9.
|
|
314
|
+
"@mailwoman/kind-classifier": "9.2.0",
|
|
315
|
+
"@mailwoman/poi-taxonomy": "9.2.0",
|
|
316
|
+
"@mailwoman/query-shape": "9.2.0"
|
|
73
317
|
},
|
|
74
318
|
"devDependencies": {
|
|
75
319
|
"@storybook/addon-docs": "^10.5.5",
|
|
@@ -77,7 +321,6 @@
|
|
|
77
321
|
"@types/react": "^19.2.17",
|
|
78
322
|
"@types/react-dom": "^19.2.3",
|
|
79
323
|
"@vitejs/plugin-react": "^6.0.5",
|
|
80
|
-
"@vitest/browser": "4.1.10",
|
|
81
324
|
"@vitest/browser-playwright": "4.1.10",
|
|
82
325
|
"maplibre-gl": "^5.24.0",
|
|
83
326
|
"playwright": "^1.62.1",
|