@treasuryspatial/map-react 0.1.11 → 0.1.13
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.
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"MapModeViewport.d.ts","sourceRoot":"","sources":["../src/MapModeViewport.tsx"],"names":[],"mappings":"AAEA,OAAO,KAA6F,MAAM,OAAO,CAAC;AAElH,OAAO,KAAK,EAAE,OAAO,EAAE,OAAO,EAAE,MAAM,SAAS,CAAC;AAEhD,OAAO,KAAK,KAAK,MAAM,OAAO,CAAC;AAC/B,OAAO,EASL,KAAK,cAAc,EACnB,KAAK,qBAAqB,EAC3B,MAAM,0BAA0B,CAAC;AAElC,MAAM,MAAM,gBAAgB,GAAG;IAC7B,SAAS,EAAE,qBAAqB,CAAC;IACjC,OAAO,EAAE,OAAO,CAAC,OAAO,CAAC,CAAC;IAC1B,WAAW,EAAE,MAAM,EAAE,EAAE,CAAC;IACxB,KAAK,EAAE,cAAc,CAAC;IACtB,OAAO,CAAC,EAAE,MAAM,CAAC;CAClB,CAAC;AAEF,MAAM,MAAM,qBAAqB,GAAG;IAClC,iBAAiB,EAAE,CAAC,SAAS,EAAE,MAAM,KAAK,IAAI,CAAC;IAC/C,aAAa,EAAE,CAAC,QAAQ,EAAE,MAAM,KAAK,IAAI,CAAC;IAC1C,iBAAiB,EAAE,MAAM,MAAM,CAAC;CACjC,CAAC;AAIF,MAAM,MAAM,mBAAmB,GAAG,CAAC,KAAK,EAAE,KAAK,CAAC,KAAK,EAAE,QAAQ,EAAE,KAAK,CAAC,aAAa,EAAE,SAAS,EAAE,MAAM,KAAK,IAAI,CAAC;AACjH,MAAM,MAAM,gBAAgB,GAAG,CAAC,WAAW,EAAE,MAAM,KAAK,OAAO,CAAC,KAAK,CAAC,KAAK,GAAG,IAAI,CAAC,CAAC;AAEpF,MAAM,MAAM,oBAAoB,GAAG;IACjC,MAAM,EAAE,OAAO,CAAC;IAChB,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,SAAS,CAAC,EAAE,KAAK,CAAC,KAAK,GAAG,IAAI,CAAC;IAC/B,gBAAgB,CAAC,EAAE;QAAE,KAAK,EAAE,MAAM,CAAC;QAAC,UAAU,CAAC,EAAE,MAAM,CAAC;QAAC,aAAa,CAAC,EAAE,MAAM,CAAA;KAAE,CAAC;IAClF,cAAc,CAAC,EAAE,MAAM,CAAC;IACxB,kBAAkB,CAAC,EAAE,qBAAqB,GAAG,IAAI,CAAC;IAClD,gBAAgB,CAAC,EAAE,OAAO,CAAC,OAAO,CAAC,GAAG,IAAI,CAAC;IAC3C,SAAS,CAAC,EAAE,gBAAgB,GAAG,IAAI,CAAC;IACpC,aAAa,EAAE,IAAI,GAAG,KAAK,GAAG,KAAK,CAAC;IACpC,iBAAiB,EAAE,CAAC,SAAS,EAAE,gBAAgB,KAAK,IAAI,CAAC;IACzD,gBAAgB,EAAE,MAAM,IAAI,CAAC;IAC7B,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,mBAAmB,CAAC,EAAE,mBAAmB,CAAC;IAC1C,gBAAgB,CAAC,EAAE,gBAAgB,CAAC;CACrC,CAAC;AAMF,eAAO,MAAM,eAAe,
|
|
1
|
+
{"version":3,"file":"MapModeViewport.d.ts","sourceRoot":"","sources":["../src/MapModeViewport.tsx"],"names":[],"mappings":"AAEA,OAAO,KAA6F,MAAM,OAAO,CAAC;AAElH,OAAO,KAAK,EAAE,OAAO,EAAE,OAAO,EAAE,MAAM,SAAS,CAAC;AAEhD,OAAO,KAAK,KAAK,MAAM,OAAO,CAAC;AAC/B,OAAO,EASL,KAAK,cAAc,EACnB,KAAK,qBAAqB,EAC3B,MAAM,0BAA0B,CAAC;AAElC,MAAM,MAAM,gBAAgB,GAAG;IAC7B,SAAS,EAAE,qBAAqB,CAAC;IACjC,OAAO,EAAE,OAAO,CAAC,OAAO,CAAC,CAAC;IAC1B,WAAW,EAAE,MAAM,EAAE,EAAE,CAAC;IACxB,KAAK,EAAE,cAAc,CAAC;IACtB,OAAO,CAAC,EAAE,MAAM,CAAC;CAClB,CAAC;AAEF,MAAM,MAAM,qBAAqB,GAAG;IAClC,iBAAiB,EAAE,CAAC,SAAS,EAAE,MAAM,KAAK,IAAI,CAAC;IAC/C,aAAa,EAAE,CAAC,QAAQ,EAAE,MAAM,KAAK,IAAI,CAAC;IAC1C,iBAAiB,EAAE,MAAM,MAAM,CAAC;CACjC,CAAC;AAIF,MAAM,MAAM,mBAAmB,GAAG,CAAC,KAAK,EAAE,KAAK,CAAC,KAAK,EAAE,QAAQ,EAAE,KAAK,CAAC,aAAa,EAAE,SAAS,EAAE,MAAM,KAAK,IAAI,CAAC;AACjH,MAAM,MAAM,gBAAgB,GAAG,CAAC,WAAW,EAAE,MAAM,KAAK,OAAO,CAAC,KAAK,CAAC,KAAK,GAAG,IAAI,CAAC,CAAC;AAEpF,MAAM,MAAM,oBAAoB,GAAG;IACjC,MAAM,EAAE,OAAO,CAAC;IAChB,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,SAAS,CAAC,EAAE,KAAK,CAAC,KAAK,GAAG,IAAI,CAAC;IAC/B,gBAAgB,CAAC,EAAE;QAAE,KAAK,EAAE,MAAM,CAAC;QAAC,UAAU,CAAC,EAAE,MAAM,CAAC;QAAC,aAAa,CAAC,EAAE,MAAM,CAAA;KAAE,CAAC;IAClF,cAAc,CAAC,EAAE,MAAM,CAAC;IACxB,kBAAkB,CAAC,EAAE,qBAAqB,GAAG,IAAI,CAAC;IAClD,gBAAgB,CAAC,EAAE,OAAO,CAAC,OAAO,CAAC,GAAG,IAAI,CAAC;IAC3C,SAAS,CAAC,EAAE,gBAAgB,GAAG,IAAI,CAAC;IACpC,aAAa,EAAE,IAAI,GAAG,KAAK,GAAG,KAAK,CAAC;IACpC,iBAAiB,EAAE,CAAC,SAAS,EAAE,gBAAgB,KAAK,IAAI,CAAC;IACzD,gBAAgB,EAAE,MAAM,IAAI,CAAC;IAC7B,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,mBAAmB,CAAC,EAAE,mBAAmB,CAAC;IAC1C,gBAAgB,CAAC,EAAE,gBAAgB,CAAC;CACrC,CAAC;AAMF,eAAO,MAAM,eAAe,oGA0d1B,CAAC"}
|
package/dist/MapModeViewport.js
CHANGED
|
@@ -24,6 +24,7 @@ export const MapModeViewport = forwardRef(function MapModeViewport({ active, geo
|
|
|
24
24
|
const lastGeocodeLabelRef = useRef(null);
|
|
25
25
|
const reverseGeocodeRequestRef = useRef(0);
|
|
26
26
|
const resizeObserverRef = useRef(null);
|
|
27
|
+
const lastOriginRef = useRef(confirmedSelection?.origin ?? null);
|
|
27
28
|
const [mapReady, setMapReady] = useState(false);
|
|
28
29
|
const [mapError, setMapError] = useState('');
|
|
29
30
|
const [threeLayerReady, setThreeLayerReady] = useState(false);
|
|
@@ -43,6 +44,9 @@ export const MapModeViewport = forwardRef(function MapModeViewport({ active, geo
|
|
|
43
44
|
}, [lightingPreset]);
|
|
44
45
|
useEffect(() => {
|
|
45
46
|
confirmedSelectionRef.current = confirmedSelection ?? null;
|
|
47
|
+
if (confirmedSelection?.origin) {
|
|
48
|
+
lastOriginRef.current = confirmedSelection.origin;
|
|
49
|
+
}
|
|
46
50
|
}, [confirmedSelection]);
|
|
47
51
|
useEffect(() => {
|
|
48
52
|
onCandidateSelectRef.current = onCandidateSelect;
|
|
@@ -246,6 +250,9 @@ export const MapModeViewport = forwardRef(function MapModeViewport({ active, geo
|
|
|
246
250
|
return;
|
|
247
251
|
if (candidate?.feature) {
|
|
248
252
|
controller.setSelected(candidate.feature);
|
|
253
|
+
if (candidate.selection?.origin) {
|
|
254
|
+
lastOriginRef.current = candidate.selection.origin;
|
|
255
|
+
}
|
|
249
256
|
}
|
|
250
257
|
else if (confirmedFeature) {
|
|
251
258
|
controller.setSelected(confirmedFeature);
|
|
@@ -260,12 +267,20 @@ export const MapModeViewport = forwardRef(function MapModeViewport({ active, geo
|
|
|
260
267
|
const map = mapRef.current;
|
|
261
268
|
if (!map || !threeLayerRef.current)
|
|
262
269
|
return;
|
|
263
|
-
|
|
264
|
-
|
|
270
|
+
const selectionOrigin = confirmedSelection?.origin ?? candidate?.selection?.origin ?? null;
|
|
271
|
+
if (selectionOrigin) {
|
|
272
|
+
lastOriginRef.current = selectionOrigin;
|
|
273
|
+
threeLayerRef.current.setOrigin(selectionOrigin);
|
|
274
|
+
return;
|
|
275
|
+
}
|
|
276
|
+
const hasGeometry = Boolean(geometry3dm || meshGroup);
|
|
277
|
+
const fallbackOrigin = hasGeometry ? lastOriginRef.current : null;
|
|
278
|
+
if (fallbackOrigin) {
|
|
279
|
+
threeLayerRef.current.setOrigin(fallbackOrigin);
|
|
265
280
|
return;
|
|
266
281
|
}
|
|
267
|
-
threeLayerRef.current.setOrigin(
|
|
268
|
-
}, [mapReady, confirmedSelection, threeLayerReady]);
|
|
282
|
+
threeLayerRef.current.setOrigin(null);
|
|
283
|
+
}, [mapReady, confirmedSelection, candidate, geometry3dm, meshGroup, threeLayerReady]);
|
|
269
284
|
useEffect(() => {
|
|
270
285
|
if (!mapReady)
|
|
271
286
|
return;
|
|
@@ -318,8 +333,10 @@ export const MapModeViewport = forwardRef(function MapModeViewport({ active, geo
|
|
|
318
333
|
map.addLayer(layer);
|
|
319
334
|
}
|
|
320
335
|
const selection = confirmedSelectionRef.current;
|
|
321
|
-
|
|
322
|
-
|
|
336
|
+
const origin = selection?.origin ?? lastOriginRef.current;
|
|
337
|
+
if (origin) {
|
|
338
|
+
lastOriginRef.current = origin;
|
|
339
|
+
threeLayerRef.current?.setOrigin(origin);
|
|
323
340
|
}
|
|
324
341
|
};
|
|
325
342
|
const bindFootprintHandlers = (map) => {
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@treasuryspatial/map-react",
|
|
3
|
-
"version": "0.1.
|
|
3
|
+
"version": "0.1.13",
|
|
4
4
|
"type": "module",
|
|
5
5
|
"license": "UNLICENSED",
|
|
6
6
|
"main": "./dist/index.js",
|
|
@@ -18,7 +18,7 @@
|
|
|
18
18
|
"access": "public"
|
|
19
19
|
},
|
|
20
20
|
"dependencies": {
|
|
21
|
-
"@treasuryspatial/map-kit": "^0.1.
|
|
21
|
+
"@treasuryspatial/map-kit": "^0.1.9"
|
|
22
22
|
},
|
|
23
23
|
"peerDependencies": {
|
|
24
24
|
"react": ">=18",
|