{"version":3,"file":"Map.mjs","names":["React","useRef","useState","useEffect","makeStyles","MapContext","ol","DragRotateAndZoom","defaults","defaultInteractions","useStyles","theme","root","minWidth","height","Map","t0","$","_c","children","zoom","projection","classes","mapRef","map","setMap","t1","Symbol","for","center","t2","options","view","View","interactions","extend","layers","controls","overlays","mapObject","setTarget","current","undefined","t3","t4","getView","setZoom","t5","t6","setCenter","t7","t8","getview","getprojection","t9","t10","t11","t12"],"sources":["../../../../src/maps/openLayerMaps/Map/Map.jsx"],"sourcesContent":["import React, { useRef, useState, useEffect } from 'react'\nimport { makeStyles } from '@material-ui/core'\nimport './Map.css'\nimport MapContext from './MapContext'\nimport * as ol from 'ol'\nimport {\n  DragRotateAndZoom,\n  defaults as defaultInteractions\n} from 'ol/interaction'\n\nconst useStyles = makeStyles((theme) => ({\n  root: {\n    minWidth: 600,\n    height: '85vh'\n  }\n}))\n\nconst Map = ({ children, zoom, projection }) => {\n  const classes = useStyles()\n  const mapRef = useRef()\n  const [map, setMap] = useState(null)\n  const center = [-73.975535, 40.691783]\n  // on component mount\n  useEffect(() => {\n    const options = {\n      view: new ol.View({ zoom, center, projection }),\n      interactions: defaultInteractions().extend([new DragRotateAndZoom()]),\n      layers: [],\n      controls: [],\n      overlays: []\n    }\n\n    const mapObject = new ol.Map(options)\n    mapObject.setTarget(mapRef.current)\n    setMap(mapObject)\n\n    return () => mapObject.setTarget(undefined)\n  }, [])\n\n  // zoom change handler\n  useEffect(() => {\n    if (!map) return\n\n    map.getView().setZoom(zoom)\n  }, [zoom])\n\n  // center change handler\n  useEffect(() => {\n    if (!map) return\n\n    map.getView().setCenter(center)\n  }, [center])\n\n  useEffect(() => {\n    if (!map) return\n    map.getview().getprojection(projection)\n  }, [projection])\n\n  return (\n    <MapContext.Provider value={{ map }}>\n      <div ref={mapRef} className={classes.root}>\n        {children}\n      </div>\n    </MapContext.Provider>\n  )\n}\n\nexport default Map\n"],"mappings":"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"}