{"version":3,"sources":["../../../../src/app/js/components/Map.js"],"names":[],"mappings":"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","file":"Map.js","sourcesContent":["import React, { Component } from 'react';\nimport BasemapGallery from 'esri/dijit/BasemapGallery';\nimport Measurement from 'esri/dijit/Measurement';\nimport BasemapLayer from 'esri/dijit/BasemapLayer';\nimport Basemap from 'esri/dijit/Basemap';\nimport Clipboard from 'clipboard';\nimport { mapActions } from 'actions/MapActions';\nimport { mapStore } from 'stores/MapStore';\nimport { defaultStrings } from 'js/config/config';\nimport {\n USA_TOPO_BASEMAP_URL,\n USA_TOPO_BASEMAP_THUMBNAIL_URL,\n USA_TOPO_BASEMAP_TITLE,\n ESRI_BASEMAPS_TITLES,\n} from 'js/config/basemaps.config';\n\nexport class Map extends Component {\n constructor(props) {\n super(props);\n this.state = mapStore.getState();\n mapStore.listen(this.onChange.bind(this));\n this.state.showLink = true;\n this.state.measurementInstructions = '';\n this.measurementTool = {};\n }\n\n onChange() {\n this.setState(mapStore.getState());\n }\n\n componentDidUpdate() {\n if (!this.state.showMeasureTool && typeof this.measurementTool.setTool !== 'undefined') {\n this.measurementTool.setTool('area', false);\n this.measurementTool.setTool('distance', false);\n this.measurementTool.setTool('location', false);\n if (this.measurementTool.result !== null) {\n this.measurementTool.clearResult();\n }\n }\n }\n\n componentDidMount() {\n // if hash set new state immediately\n if (Object.keys(this.props.hash).length !== 0 && this.props.hash.constructor === Object) {\n mapActions.createMap(this.props.hash.z, this.props.hash.lat, this.props.hash.lon, this.props.hash.v);\n if (this.props.hash.v !== '') {\n mapActions.toggleLegend();\n }\n } else {\n mapActions.createMap();\n }\n\n mapActions.mapContainerLoaded();\n new Clipboard('.btn');\n\n let basemapGallery = (window.bmg = new BasemapGallery(\n {\n title: 'Basemap Gallery',\n map: mapStore.getState().map,\n },\n 'basemapGallery'\n ));\n\n basemapGallery.on('load', () => {\n const basemapTitles = ESRI_BASEMAPS_TITLES;\n\n const filteredEsriBasemaps = basemapGallery.basemaps.filter((basemap) => {\n return basemapTitles.includes(basemap.title);\n });\n\n basemapGallery.basemaps = filteredEsriBasemaps;\n\n const basemapLayer = new BasemapLayer({\n url: USA_TOPO_BASEMAP_URL,\n });\n\n const usaTopoBasemap = new Basemap({\n layers: [basemapLayer],\n title: USA_TOPO_BASEMAP_TITLE,\n thumbnailUrl: USA_TOPO_BASEMAP_THUMBNAIL_URL,\n });\n\n basemapGallery.basemaps.push(usaTopoBasemap);\n basemapGallery.basemaps.sort((a, b) => (a.title > b.title ? 1 : -1));\n basemapGallery.startup();\n\n mapActions.saveBasemapGallery(basemapGallery);\n });\n\n let measurement = new Measurement(\n {\n map: mapStore.getState().map,\n },\n 'measurementDiv'\n );\n\n measurement.on('tool-change', (args) => {\n switch (args.toolName) {\n case 'area':\n this.setState({\n measurementInstructions: defaultStrings.measureAreaInstruction,\n });\n break;\n case 'distance':\n this.setState({\n measurementInstructions: defaultStrings.measureDistanceInstruction,\n });\n break;\n default:\n this.setState({ measurementInstructions: '' });\n break;\n }\n });\n\n measurement.startup();\n this.measurementTool = measurement;\n }\n\n closeMeasure() {\n mapActions.closeMeasure();\n }\n\n closeBasemap() {\n mapActions.closeBasemap();\n }\n\n toggleLegend() {\n mapActions.toggleLegend();\n }\n\n homeButton() {\n mapActions.goToSite();\n }\n\n render() {\n return (\n
\n
\n
\n\n \n \n Manage My Account\n \n \n Logout\n \n
\n\n
\n \n
\n
\n\n
\n
\n
Measurement
\n \n
\n
\n
Area
\n
Distance
\n
Lat/Long
\n
\n
\n
{this.state.measurementInstructions}
\n
\n\n
\n
\n
Share
\n
\n
\n \n \n
\n
\n
\n\n
\n
\n Legend\n
\n
\n
\n
\n
\n );\n }\n}\n"]}