mirror of
https://github.com/DOI-DO/j40-cejst-2.git
synced 2025-08-04 00:54:19 -07:00
Add Zoom/Lat/Lng to the URL (#293)
* mandatory eslint fix * Addresses #286 - Adding lat/lng to the URL * setting zoom on map load * adding integration tests for zoom
This commit is contained in:
parent
11d13e034e
commit
27d9472326
4 changed files with 54 additions and 27 deletions
|
@ -14,6 +14,13 @@ import ReactDOM from 'react-dom';
|
|||
import 'mapbox-gl/dist/mapbox-gl.css';
|
||||
import * as styles from './mapboxMap.module.scss';
|
||||
|
||||
declare global {
|
||||
interface Window {
|
||||
Cypress?: object;
|
||||
mapboxGlMap: Map;
|
||||
}
|
||||
}
|
||||
|
||||
type ClickEvent = mapboxgl.MapMouseEvent & mapboxgl.EventData;
|
||||
|
||||
const MapboxMap = () => {
|
||||
|
@ -33,6 +40,7 @@ const MapboxMap = () => {
|
|||
minZoom: constants.GLOBAL_MIN_ZOOM,
|
||||
maxZoom: constants.GLOBAL_MAX_ZOOM,
|
||||
maxBounds: constants.GLOBAL_MAX_BOUNDS as LngLatBoundsLike,
|
||||
hash: true, // Adds hash of zoom/lat/long to the url
|
||||
});
|
||||
// disable map rotation using right click + drag
|
||||
initialMap.dragRotate.disable();
|
||||
|
@ -40,6 +48,14 @@ const MapboxMap = () => {
|
|||
// disable map rotation using touch rotation gesture
|
||||
initialMap.touchZoomRotate.disableRotation();
|
||||
|
||||
setZoom(initialMap.getZoom());
|
||||
|
||||
initialMap.on('load', () => {
|
||||
if (window.Cypress) {
|
||||
window.mapboxGlMap = initialMap;
|
||||
}
|
||||
});
|
||||
|
||||
initialMap.on('click', handleClick);
|
||||
initialMap.addControl(new NavigationControl({showCompass: false}), 'top-left');
|
||||
map.current = initialMap;
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue