{"version":3,"file":"js/4932-3c3abb004b5846ffcc38.js","mappings":"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","sources":["webpack://app/../usr/local/bundle/gems/decidim-core-0.27.4/app/packs/src/decidim/map/svg-icon.js","webpack://app/../usr/local/bundle/gems/decidim-core-0.27.4/app/packs/src/decidim/map/icon.js","webpack://app/../usr/local/bundle/gems/decidim-core-0.27.4/app/packs/src/decidim/map/controller/static.js","webpack://app/../usr/local/bundle/gems/decidim-core-0.27.4/app/packs/src/decidim/map/controller/drag_marker.js","webpack://app/../usr/local/bundle/gems/decidim-core-0.27.4/app/packs/src/decidim/map/factory.js","webpack://app/../usr/local/bundle/gems/decidim-core-0.27.4/app/packs/src/decidim/map.js"],"sourcesContent":["/* eslint prefer-reflect: 0 */\n\n// Leaflet-SVGIcon\n// SVG icon for any marker class\n//\n// Copyright (c) 2016 University of New Hampshire - The MIT License\n// Author: Ilya Atkin <ilya.atkin@unh.edu>\n// Originally copied from https://github.com/iatkin/leaflet-svgicon\n//\n\nlet SVGIcon = L.DivIcon.extend({\n  options: {\n    \"circleText\": \"\",\n    \"className\": \"svg-icon\",\n    // defaults to [iconSize.x/2, iconSize.x/2]\n    \"circleAnchor\": null,\n    // defaults to color\n    \"circleColor\": null,\n    // defaults to opacity\n    \"circleOpacity\": null,\n    \"circleFillColor\": \"rgb(255,255,255)\",\n    // default to opacity\n    \"circleFillOpacity\": null,\n    \"circleRatio\": 0.5,\n    // defaults to weight\n    \"circleWeight\": null,\n    \"color\": \"rgb(0,102,255)\",\n    // defaults to color\n    \"fillColor\": null,\n    \"fillOpacity\": 0.4,\n    \"fontColor\": \"rgb(0, 0, 0)\",\n    \"fontOpacity\": \"1\",\n    // defaults to iconSize.x/4\n    \"fontSize\": null,\n    \"fontWeight\": \"normal\",\n    // defaults to [iconSize.x/2, iconSize.y] (point tip)\n    \"iconAnchor\": null,\n    \"iconSize\": L.point(32, 48),\n    \"opacity\": 1,\n    \"popupAnchor\": null,\n    \"shadowAngle\": 45,\n    \"shadowBlur\": 1,\n    \"shadowColor\": \"rgb(0,0,10)\",\n    \"shadowEnable\": false,\n    \"shadowLength\": 0.75,\n    \"shadowOpacity\": 0.5,\n    \"shadowTranslate\": L.point(0, 0),\n    \"weight\": 2\n  },\n  initialize: function(_options) {\n    let options = L.Util.setOptions(this, _options)\n\n    // iconSize needs to be converted to a Point object if it is not passed as one\n    options.iconSize = L.point(options.iconSize)\n\n    // in addition to setting option dependant defaults, Point-based options are converted to Point objects\n    if (options.circleAnchor) {\n      options.circleAnchor = L.point(options.circleAnchor)\n    } else {\n      options.circleAnchor = L.point(Number(options.iconSize.x) / 2, Number(options.iconSize.x) / 2)\n    }\n    if (!options.circleColor) {\n      options.circleColor = options.color\n    }\n    if (!options.circleFillOpacity) {\n      options.circleFillOpacity = options.opacity\n    }\n    if (!options.circleOpacity) {\n      options.circleOpacity = options.opacity\n    }\n    if (!options.circleWeight) {\n      options.circleWeight = options.weight\n    }\n    if (!options.fillColor) {\n      options.fillColor = options.color\n    }\n    if (!options.fontSize) {\n      options.fontSize = Number(options.iconSize.x / 4)\n    }\n    if (options.iconAnchor) {\n      options.iconAnchor = L.point(options.iconAnchor)\n    }\n    else {\n      options.iconAnchor = L.point(Number(options.iconSize.x) / 2, Number(options.iconSize.y))\n    }\n    if (options.popupAnchor) {\n      options.popupAnchor = L.point(options.popupAnchor)\n    }\n    else {\n      options.popupAnchor = L.point(0, (-0.75) * (options.iconSize.y))\n    }\n\n    options.html = this._createSVG()\n  },\n  _createCircle: function() {\n    let cx = Number(this.options.circleAnchor.x)\n    let cy = Number(this.options.circleAnchor.y)\n    let radius = this.options.iconSize.x / 2 * Number(this.options.circleRatio)\n    let fill = this.options.circleFillColor\n    let fillOpacity = this.options.circleFillOpacity\n    let stroke = this.options.circleColor\n    let strokeOpacity = this.options.circleOpacity\n    let strokeWidth = this.options.circleWeight\n    let className = `${this.options.className}-circle`\n\n    let circle = `<circle class=\"${className}\" cx=\"${cx}\" cy=\"${cy}\" r=\"${radius\n    }\" fill=\"${fill}\" fill-opacity=\"${fillOpacity\n    }\" stroke=\"${stroke}\" stroke-opacity=${strokeOpacity}\" stroke-width=\"${strokeWidth}\"/>`\n\n    return circle\n  },\n  _createPathDescription: function() {\n    let height = Number(this.options.iconSize.y)\n    let width = Number(this.options.iconSize.x)\n    let weight = Number(this.options.weight)\n    let margin = weight / 2\n\n    let startPoint = `M ${margin} ${width / 2} `\n    let leftLine = `L ${width / 2} ${height - weight} `\n    let rightLine = `L ${width - margin} ${width / 2} `\n    let arc = `A ${width / 4} ${width / 4} 0 0 0 ${margin} ${width / 2} Z`\n\n    let description = startPoint + leftLine + rightLine + arc\n\n    return description\n  },\n  _createPath: function() {\n    let pathDescription = this._createPathDescription()\n    let strokeWidth = this.options.weight\n    let stroke = this.options.color\n    let strokeOpacity = this.options.opacity\n    let fill = this.options.fillColor\n    let fillOpacity = this.options.fillOpacity\n    let className = `${this.options.className}-path`\n\n    let path = `<path class=\"${className}\" d=\"${pathDescription\n    }\" stroke-width=\"${strokeWidth}\" stroke=\"${stroke}\" stroke-opacity=\"${strokeOpacity\n    }\" fill=\"${fill}\" fill-opacity=\"${fillOpacity}\"/>`\n\n    return path\n  },\n  _createShadow: function() {\n    let pathDescription = this._createPathDescription()\n    let strokeWidth = this.options.weight\n    let stroke = this.options.shadowColor\n    let fill = this.options.shadowColor\n    let className = `${this.options.className}-shadow`\n\n    let origin = `${this.options.iconSize.x / 2}px ${this.options.iconSize.y}px`\n    let rotation = this.options.shadowAngle\n    let height = this.options.shadowLength\n    let opacity = this.options.shadowOpacity\n    let blur = this.options.shadowBlur\n    let translate = `${this.options.shadowTranslate.x}px, ${this.options.shadowTranslate.y}px`\n\n    let blurFilter = `<filter id='iconShadowBlur'><feGaussianBlur in='SourceGraphic' stdDeviation='${blur}'/></filter>`\n\n    let shadow = `<path filter=\"url(#iconShadowBlur\") class=\"${className}\" d=\"${pathDescription}\" fill=\"${fill}\" stroke-width=\"${strokeWidth}\" stroke=\"${stroke}\" style=\"opacity: ${opacity}; transform-origin: ${origin}; transform: rotate(${rotation}deg) translate(${translate}) scale(1, ${height})\" />`\n\n    return blurFilter + shadow\n  },\n  _createSVG: function() {\n    let path = this._createPath()\n    let circle = this._createCircle()\n    let text = this._createText()\n    let shadow = \"\"\n    if (this.options.shadowEnable) {\n      shadow = this._createShadow()\n    }\n\n    let className = `${this.options.className}-svg`\n    let width = this.options.iconSize.x\n    let height = this.options.iconSize.y\n\n    if (this.options.shadowEnable) {\n      width += this.options.iconSize.y * this.options.shadowLength - (this.options.iconSize.x / 2)\n      width = Math.max(width, 32)\n      height += this.options.iconSize.y * this.options.shadowLength\n    }\n\n    let style = `width:${width}px; height:${height}`\n    let svg = `<svg xmlns=\"http://www.w3.org/2000/svg\" version=\"1.1\" class=\"${className}\" style=\"${style}\">${shadow}${path}${circle}${text}</svg>`\n\n    return svg\n  },\n  _createText: function() {\n    let fontSize = `${this.options.fontSize}px`\n    let fontWeight = this.options.fontWeight\n    let lineHeight = Number(this.options.fontSize)\n\n    let coordX = this.options.circleAnchor.x\n    // 35% was found experimentally\n    let coordY = this.options.circleAnchor.y + (lineHeight * 0.35)\n    let circleText = this.options.circleText\n    let textColor = this.options.fontColor.replace(\"rgb(\", \"rgba(\").replace(\")\", `,${this.options.fontOpacity})`)\n\n    let text = `<text text-anchor=\"middle\" x=\"${coordX}\" y=\"${coordY}\" style=\"font-size: ${fontSize}; font-weight: ${fontWeight}\" fill=\"${textColor}\">${circleText}</text>`\n\n    return text\n  }\n})\n\nlet SVGMarker = L.Marker.extend({\n  options: {\n    \"iconFactory\": L.divIcon.svgIcon,\n    \"iconOptions\": {}\n  },\n  initialize: function(latlng, _options) {\n    let options = L.Util.setOptions(this, _options)\n    options.icon = options.iconFactory(options.iconOptions)\n    this._latlng = latlng\n  },\n  onAdd: function(map) {\n    L.Marker.prototype.onAdd.call(this, map)\n  },\n  setStyle: function(style) {\n    if (this._icon) {\n      //      let svg = this._icon.children[0]\n      let iconBody = this._icon.children[0].children[0]\n      let iconCircle = this._icon.children[0].children[1]\n\n      if (style.color && !style.iconOptions) {\n        let stroke = style.color.replace(\"rgb\", \"rgba\").replace(\")\", `,${this.options.icon.options.opacity})`)\n        let fill = style.color.replace(\"rgb\", \"rgba\").replace(\")\", `,${this.options.icon.options.fillOpacity})`)\n        iconBody.setAttribute(\"stroke\", stroke)\n        iconBody.setAttribute(\"fill\", fill)\n        iconCircle.setAttribute(\"stroke\", stroke)\n\n        this.options.icon.fillColor = fill\n        this.options.icon.color = stroke\n        this.options.icon.circleColor = stroke\n      }\n      if (style.opacity) {\n        this.setOpacity(style.opacity)\n      }\n      if (style.iconOptions) {\n        if (style.color) {\n          style.iconOptions.color = style.color\n        }\n        let iconOptions = L.Util.setOptions(this.options.icon, style.iconOptions)\n        this.setIcon(L.divIcon.svgIcon(iconOptions))\n      }\n    }\n  }\n});\n\nexport { SVGMarker, SVGIcon }\n\n","import { SVGIcon } from \"src/decidim/map/svg-icon\";\n\nL.DivIcon.SVGIcon = SVGIcon;\nL.DivIcon.SVGIcon.DecidimIcon = L.DivIcon.SVGIcon.extend({\n  options: {\n    fillColor: \"#ef604d\",\n    fillOpacity: 1,\n    opacity: 0\n  },\n  _createPathDescription: function() {\n    return \"M14 1.17a11.685 11.685 0 0 0-11.685 11.685c0 11.25 10.23 20.61 10.665 21a1.5 1.5 0 0 0 2.025 0c0.435-.435 10.665-9.81 10.665-21A11.685 11.685 0 0 0 14 1.17Zm0 17.415A5.085 5.085 0 1 1 19.085 13.5 5.085 5.085 0 0 1 14 18.585Z\";\n  },\n  _createCircle: function() {\n    return \"\"\n  },\n  // Improved version of the _createSVG, essentially the same as in later\n  // versions of Leaflet. It adds the `px` values after the width and height\n  // CSS making the focus borders work correctly across all browsers.\n  _createSVG: function() {\n    const path = this._createPath();\n    const circle = this._createCircle();\n    const text = this._createText();\n    const className = `${this.options.className}-svg`;\n\n    const style = `width:${this.options.iconSize.x}px; height:${this.options.iconSize.y}px;`;\n\n    const svg = `<svg xmlns=\"http://www.w3.org/2000/svg\" version=\"1.1\" class=\"${className}\" style=\"${style}\">${path}${circle}${text}</svg>`;\n\n    return svg;\n  }\n});\n","import MapController from \"src/decidim/map/controller\"\n\nconst openLink = window.open;\n\nexport default class MapStaticController extends MapController {\n  start() {\n    this.map.removeControl(this.map.zoomControl);\n    this.map.dragging.disable();\n    this.map.touchZoom.disable();\n    this.map.doubleClickZoom.disable();\n    this.map.scrollWheelZoom.disable();\n    this.map.boxZoom.disable();\n    this.map.keyboard.disable();\n    if (this.map.tap) {\n      this.map.tap.disable();\n    }\n\n    if (this.config.zoom) {\n      this.map.setZoom(this.config.zoom);\n    } else {\n      this.map.setZoom(15);\n    }\n\n    if (this.config.latitude && this.config.longitude) {\n      const coordinates = [this.config.latitude, this.config.longitude];\n\n      this.map.panTo(coordinates);\n      const marker = L.marker(coordinates, {\n        icon: this.createIcon(),\n        keyboard: true,\n        title: this.config.title\n      }).addTo(this.map);\n      marker._icon.removeAttribute(\"tabindex\");\n    }\n\n    if (this.config.link) {\n      this.map._container.addEventListener(\"click\", (ev) => {\n        ev.preventDefault();\n        this.map._container.focus();\n        openLink(this.config.link, \"_blank\");\n      });\n    }\n  }\n}\n","import MapController from \"src/decidim/map/controller\"\n\nexport default class MapDragMarkerController extends MapController {\n  start() {\n    if (this.config.marker) {\n      this.addMarker(this.config.marker);\n    } else {\n      this.map.fitWorld();\n    }\n  }\n\n  addMarker(markerData) {\n    if (markerData.latitude === null || markerData.longitude === null) {\n      return;\n    }\n\n    const coordinates = {\n      lat: markerData.latitude,\n      lng: markerData.longitude\n    };\n    this.triggerEvent(\"coordinates\", [coordinates]);\n\n    this.marker = L.marker(coordinates, {\n      icon: this.createIcon(),\n      keyboard: true,\n      title: markerData.title,\n      draggable: true\n    });\n    this.marker.on(\"drag\", (ev) => {\n      this.triggerEvent(\"coordinates\", [ev.target.getLatLng()]);\n    });\n    this.marker.addTo(this.map);\n\n    const zoom = parseInt(this.config.zoom, 10) || 14;\n    this.map.setView(coordinates, zoom);\n  }\n\n  getMarker() {\n    return this.marker;\n  }\n\n  removeMarker() {\n    if (this.marker) {\n      this.marker.remove();\n      this.marker = null;\n    }\n  }\n}\n","import \"src/decidim/map/icon\"\n\nimport MapMarkersController from \"src/decidim/map/controller/markers\"\nimport MapStaticController from \"src/decidim/map/controller/static\"\nimport MapDragMarkerController from \"src/decidim/map/controller/drag_marker\"\n\n/**\n * A factory method that creates a new map controller instance. This method\n * can be overridden in order to return different types of maps for\n * differently configured map elements.\n *\n * For instance, one map could pass an extra `type` configuration with the\n * value \"custom\" for the map element, this factory method would identify\n * it and then return a different controller for that map than the default.\n * This would allow this types of maps to function differently.\n *\n * An example how to use in the ERB view:\n *   <%= dynamic_map_for type: \"custom\" do %>\n *     <%= javascript_pack_tag \"map_customization\" %>\n *   <% end %>\n *\n * And then the actual customization at `map_customization.js.es6`:\n *   var originalCreateMapController = window.Decidim.createMapController;\n *   window.Decidim.createMapController = (mapId, config) => {\n *     if (config.type === \"custom\") {\n *       // Obviously you need to implement CustomMapController for this to\n *       // work. You can find an example at:\n *       // decidim-dev/app/packs/src/decidim/dev/test/custom_map_factory.js\n *       return new window.Decidim.CustomMapController(mapId, config);\n *     }\n *\n *     return originalCreateMapController(mapId, config);\n *   }\n *\n * @param {string} mapId The ID of the map element.\n * @param {Object} config The map configuration object.\n * @returns {MapController} The controller for the map.\n */\nconst createMapController = function(mapId, config) {\n  if (config.type === \"static\") {\n    return new MapStaticController(mapId, config);\n  } else if (config.type === \"drag-marker\") {\n    return new MapDragMarkerController(mapId, config);\n  }\n\n  return new MapMarkersController(mapId, config);\n}\n\nwindow.Decidim.createMapController = createMapController;\n","import \"src/decidim/map/factory\"\n\n$(() => {\n  // Load the map controller factory method in the document.ready handler to\n  // allow overriding it by any script that is loaded before the document is\n  // ready.\n  let $mapElements = $(\"[data-decidim-map]\");\n  if ($mapElements.length < 1 && $(\"#map\").length > 0) {\n    throw new Error(\n      \"DEPRECATION: Please update your maps customizations or include 'decidim/map/legacy.js' for legacy support!\"\n    );\n  }\n\n  $mapElements.each((_i, el) => {\n    const $map = $(el);\n    let mapId = $map.attr(\"id\");\n    if (!mapId) {\n      mapId = `map-${Math.random().toString(36).substr(2, 9)}`;\n      $map.attr(\"id\", mapId);\n    }\n\n    const mapConfig = $map.data(\"decidim-map\");\n    const ctrl = window.Decidim.createMapController(mapId, mapConfig);\n    const map = ctrl.load();\n\n    $map.data(\"map\", map);\n    $map.data(\"map-controller\", ctrl);\n\n    $map.trigger(\"configure.decidim\", [map, mapConfig]);\n\n    ctrl.start();\n\n    // Indicates the map is loaded with the map objects initialized and ready\n    // to be used.\n    $map.trigger(\"ready.decidim\", [map, mapConfig]);\n  });\n});\n"],"names":["SVGIcon","L","DivIcon","extend","options","point","initialize","_options","Util","setOptions","this","iconSize","circleAnchor","Number","x","circleColor","color","circleFillOpacity","opacity","circleOpacity","circleWeight","weight","fillColor","fontSize","iconAnchor","y","popupAnchor","html","_createSVG","_createCircle","cx","cy","radius","circleRatio","fill","circleFillColor","fillOpacity","stroke","strokeOpacity","strokeWidth","className","_createPathDescription","height","width","margin","_createPath","pathDescription","_createShadow","shadowColor","origin","rotation","shadowAngle","shadowLength","shadowOpacity","blur","shadowBlur","translate","shadowTranslate","path","circle","text","_createText","shadow","shadowEnable","Math","max","style","fontWeight","lineHeight","coordX","coordY","circleText","textColor","fontColor","replace","fontOpacity","Marker","divIcon","svgIcon","latlng","icon","iconFactory","iconOptions","_latlng","onAdd","map","prototype","call","setStyle","_icon","iconBody","children","iconCircle","setAttribute","setOpacity","setIcon","DecidimIcon","openLink","window","open","MapStaticController","removeControl","zoomControl","dragging","disable","touchZoom","doubleClickZoom","scrollWheelZoom","boxZoom","keyboard","tap","config","zoom","setZoom","latitude","longitude","coordinates","panTo","marker","createIcon","title","addTo","removeAttribute","link","_container","addEventListener","ev","preventDefault","_this","focus","MapController","MapDragMarkerController","addMarker","fitWorld","markerData","lat","lng","triggerEvent","draggable","on","target","getLatLng","parseInt","setView","remove","Decidim","createMapController","mapId","type","MapMarkersController","$","$mapElements","length","Error","each","_i","el","$map","attr","random","toString","substr","mapConfig","data","ctrl","load","trigger","start"],"sourceRoot":""}