{"version":3,"file":"js/group-title-banner-17bf5a03ea5a0bd7211c.chunk.js","mappings":"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","sources":["webpack://agra/./app/javascript/components/maplibre-map.vue","webpack://agra/./app/javascript/components/maplibre-map.vue?c361","webpack://agra/./app/javascript/components/header-banner-layout.vue","webpack://agra/./app/javascript/components/header-banner-layout.vue?64e5","webpack://agra/./app/javascript/local-chapters/title-banner.vue","webpack://agra/./app/javascript/local-chapters/header.vue","webpack://agra/./app/javascript/local-chapters/header.vue?5efd","webpack://agra/./app/javascript/local-chapters/title-banner.vue?6f4f","webpack://agra/./node_modules/vue-loader/dist/exportHelper.js","webpack://agra/./app/javascript/components/map-banner.vue","webpack://agra/./app/javascript/components/map-banner.vue?da31"],"sourcesContent":["<template>\n  <div :id=\"mapWrapperId\" class=\"map-wrapper\" dir=\"ltr\">\n    <!-- We are setting the direction to ltr, regardless of the direction of the rest of the content,\n         to ensure that maplibre's CSS around positioning and popups works correctly. -->\n    <slot :map=\"map\" />\n  </div>\n</template>\n\n<script>\nimport { GeolocateControl, Map, NavigationControl, setRTLTextPlugin } from 'maplibre-gl'\nimport 'maplibre-gl/dist/maplibre-gl.css'\n\nconst DEFAULT_GEOAPIFY_STYLE = 'https://api-eu.geoapify.com/v1/styles/klokantech-basic/style.json'\n\nexport default {\n  props: {\n    bounds: {\n      type: Array,\n      required: true\n    },\n    center: {\n      type: Object,\n      required: false,\n      default: () => { return  { lat: 0, lng: 0 } }\n    },\n    initialZoom: {\n      type: Number,\n      required: false\n    },\n    mapWrapperId: {\n      type: String,\n      required: false,\n      default: 'map'\n    },\n    maxZoom: {\n      type: Number,\n      required: false\n    },\n    navigationOptions: {\n      type: Object,\n      required: false,\n      default: () => ({})\n    },\n    showGeolocateControl: {\n      type: Boolean,\n      required: false,\n      default: false\n    },\n    style: {\n      type: String,\n      required: false\n    }\n  },\n\n  emits: ['loaded'],\n\n  data() {\n    return {\n      map: null\n    }\n  },\n\n  computed: {\n    defaultStyle() {\n      switch (this.agraConfiguration.mapTilesProvider.kind) {\n      case 'aws_location_service':\n        return `https://maps.geo.${this.agraConfiguration.awsRegion}.amazonaws.com/maps/v0/maps/esri_navigation/style-descriptor`\n      case 'geoapify':\n        return DEFAULT_GEOAPIFY_STYLE\n      default:\n        return null\n      }\n    },\n\n    mapOptions() {\n      return {\n        bounds: this.bounds,\n        center: this.center,\n        container: 'map',\n        maxZoom: this.maxZoom,\n        style: this.style || this.defaultStyle,\n        transformRequest: this.mapStyleUrlTransformFunction,\n        zoom: this.initialZoom || this.maxZoom || 0\n      }\n    },\n\n    mapStyleUrlTransformFunction() {\n      switch (this.agraConfiguration.mapTilesProvider.kind) {\n      case 'aws_location_service': {\n        const apiKey = this.agraConfiguration.mapTilesProvider.clientApiToken\n        return function(url) {\n          const urlObj = new URL(url)\n          urlObj.searchParams.set('key', apiKey)\n          return { url: urlObj.toString() }\n        }\n      }\n      case 'geoapify': {\n        // Use this method to plug the API key into the style URL\n        const apiKey = this.agraConfiguration.mapTilesProvider.clientApiToken\n        return function(url) {\n          const urlObj = new URL(url)\n          urlObj.searchParams.set('apiKey', apiKey)\n          return { url: urlObj.toString() }\n        }\n      }\n      default:\n        return function(url) {\n          return { url }\n        }\n      }\n    }\n  },\n\n  mounted() {\n    this.map = new Map(this.mapOptions)\n\n    let nav = new NavigationControl(this.navigationOptions)\n    this.map.addControl(nav, 'top-right')\n\n    if (this.showGeolocateControl) {\n      let geolocate = new GeolocateControl()\n      this.map.addControl(geolocate, 'top-right')\n    }\n\n    this.map.on('load', () => {\n      this.setMapLanguage()\n      this.$emit('loaded', {map: this.map})\n    })\n  },\n\n  methods: {\n    setMapLanguage() {\n      if (this.i18n.isRtl()) {\n        // Load the plugin so that RTL text labels on the map are displayed in the right direction.\n        // This is the approach recommended in https://maplibre.org/maplibre-gl-js/docs/examples/mapbox-gl-rtl-text/\n        // Q: Could we install https://github.com/mapbox/mapbox-gl-rtl-text instead of passing a string here?\n        // A: Sadly, it seems setRTLTextPlugin can only handle a URL; there doesn't seem to be any way to hook it up\n        //    to a yarn package.\n        setRTLTextPlugin('https://unpkg.com/@mapbox/mapbox-gl-rtl-text@0.2.3/mapbox-gl-rtl-text.js', false)\n      }\n\n      const desiredLanguage = this.i18n.locale().split('-')[0] // if locale is e.g., de-CH, we ignore '-CH'\n\n      // For both map providers, we're going to set properties on relevant map layers to specify\n      // what language should be used.\n      let layers = this.map.getStyle().layers\n\n      // AWS Location Service and Geoapify have different syntax for specifying the language on a layer.\n      switch (this.agraConfiguration.mapTilesProvider.kind) {\n      case 'aws_location_service': {\n        const layoutLayers = layers.filter((layer) => layer.layout && layer.layout['text-field'] && ['{_name_global}', '{_name}'].includes(layer.layout['text-field']))\n        for (let layer of layoutLayers) {\n          this.map.setLayoutProperty(layer.id, 'text-field', ['case', ['has', `_name_${desiredLanguage}`],\n                                                              ['get', `_name_${desiredLanguage}`],\n                                                              ['get', '_name']])\n        }\n        return\n      }\n      case 'geoapify': {\n        let labelLayers = layers.filter((layer) => layer.type === 'symbol')\n        for (let layer of labelLayers) {\n          // See https://www.geoapify.com/map-language-localize-labels-on-the-map for discussion of this syntax.\n          this.map.setLayoutProperty(layer.id, 'text-field', ['case', ['has', `name:${desiredLanguage}`],\n                                                              ['get', `name:${desiredLanguage}`],\n                                                              ['get', 'name:latin']])\n        }\n        return\n      }\n      }\n    }\n  }\n}\n</script>\n\n<style scoped lang=\"scss\">\n.map-wrapper {\n  height: 100%;\n  width: 100%;\n}\n</style>\n","import { render } from \"./maplibre-map.vue?vue&type=template&id=04adf530&scoped=true\"\nimport script from \"./maplibre-map.vue?vue&type=script&lang=js\"\nexport * from \"./maplibre-map.vue?vue&type=script&lang=js\"\n\nimport \"./maplibre-map.vue?vue&type=style&index=0&id=04adf530&scoped=true&lang=scss\"\n\nimport exportComponent from \"../../../node_modules/vue-loader/dist/exportHelper.js\"\nconst __exports__ = /*#__PURE__*/exportComponent(script, [['render',render],['__scopeId',\"data-v-04adf530\"]])\n\nexport default __exports__","<template>\n  <div class=\"title-banner-wrapper\">\n    <div class=\"overlay\" />\n    <div class=\"title-banner\">\n      <slot />\n    </div>\n  </div>\n</template>\n\n<script>\nexport default {\n}\n</script>\n\n<style lang=\"scss\" scoped>\n@use \"~common_styles/breakpoints\" as breakpoints;\n\n.title-banner-wrapper {\n  position: relative;\n  z-index: 0;\n  background-position-x: center;\n\n  .overlay {\n    position: absolute;\n    width: 100%;\n    height: 100%;\n    z-index: -1;\n    background: rgba(255, 255, 255, 0.6);\n  }\n\n  .title-banner {\n    min-height: 165px;\n    text-align: center;\n    color: #333;\n\n    @include breakpoints.screen-mobile-only {\n      padding: 10px;\n    }\n  }\n}\n\n::v-deep(.foreground-content-wrapper) {\n  @include breakpoints.screen-md-up {\n    padding: 0 150px;\n  }\n}\n\n::v-deep(.foreground-content) {\n  padding: 50px;\n  margin-bottom: 40px;\n  z-index: 1;\n  background: rgba(255, 255, 255, 0.7);\n  border-radius: 6px;\n\n  h1 {\n    max-width: 800px;\n    margin: auto auto 38px auto;\n    color: #333;\n    font-size: 2em;\n    font-weight: bold;\n    margin-top: 0;\n  }\n}\n</style>\n","import { render } from \"./header-banner-layout.vue?vue&type=template&id=04d3308e&scoped=true\"\nimport script from \"./header-banner-layout.vue?vue&type=script&lang=js\"\nexport * from \"./header-banner-layout.vue?vue&type=script&lang=js\"\n\nimport \"./header-banner-layout.vue?vue&type=style&index=0&id=04d3308e&lang=scss&scoped=true\"\n\nimport exportComponent from \"../../../node_modules/vue-loader/dist/exportHelper.js\"\nconst __exports__ = /*#__PURE__*/exportComponent(script, [['render',render],['__scopeId',\"data-v-04d3308e\"]])\n\nexport default __exports__","<template>\n  <header-banner-layout>\n    <div v-if=\"hideMap\" class=\"my-4\">\n      <group-header :title=\"title\" :description-html=\"descriptionHtml\" :join-local-chapter-url=\"joinLocalChapterUrl\"\n                    :show-join=\"showJoin\" :show-login=\"showLogin\" />\n    </div>\n    <map-banner v-else :map-center=\"mapCenter\" :map-zoom=\"mapZoom\">\n      <template #content>\n        <group-header :title=\"title\" :description-html=\"descriptionHtml\" :join-local-chapter-url=\"joinLocalChapterUrl\"\n                      :show-join=\"showJoin\" :show-login=\"showLogin\" />\n      </template>\n    </map-banner>\n  </header-banner-layout>\n</template>\n\n<script>\nimport GroupHeader from '@/local-chapters/header'\nimport HeaderBannerLayout from '@/components/header-banner-layout'\nimport MapBanner from '@/components/map-banner'\n\nexport default {\n  components: { GroupHeader, HeaderBannerLayout, MapBanner },\n\n  props: {\n    descriptionHtml: {\n      type: String,\n      required: true\n    },\n    hideMap: {\n      type: Boolean,\n      required: false,\n      default: false\n    },\n    joinLocalChapterUrl: {\n      type: String,\n      required: true\n    },\n    mapCenter: {\n      type: Object,\n      required: true\n    },\n    mapZoom: {\n      type: Number,\n      required: false\n    },\n    showJoin: {\n      type: Boolean,\n      required: true\n    },\n    showLogin: {\n      type: Boolean,\n      required: true\n    },\n    title: {\n      type: String,\n      required: true\n    }\n  }\n}\n</script>\n","<template>\n  <div class=\"row\">\n    <div class=\"col-md-8 offset-md-2 foreground-content\">\n      <h1 class=\"mb-5\">\n        {{ title }}\n      </h1>\n      <div class=\"description\" v-html=\"descriptionHtml\" />\n      <div class=\"mt-4 mb-2\">\n        <a v-if=\"showJoin\" class=\"btn btn-lg btn-success\" :href=\"joinLocalChapterUrl\">\n          {{ i18n.t('local_chapters.show.join') }}\n        </a>\n        <div v-if=\"showLogin\" class=\"mt-2\">\n          <span>{{ i18n.t('local_chapters.show.already_member') }}</span>\n          <a :href=\"signInUrl\">\n            {{ i18n.t('local_chapters.show.log_in') }}\n          </a>\n        </div>\n      </div>\n    </div>\n  </div>\n</template>\n\n<script>\nconst SIGN_IN_URL = '/users/sign_in'\n\nexport default {\n  props: {\n    descriptionHtml: {\n      type: String,\n      required: true\n    },\n    joinLocalChapterUrl: {\n      type: String,\n      required: true\n    },\n    showJoin: {\n      type: Boolean,\n      required: true\n    },\n    showLogin: {\n      type: Boolean,\n      required: true\n    },\n    title: {\n      type: String,\n      required: true\n    }\n  },\n\n  data() {\n    return {\n      signInUrl: SIGN_IN_URL\n    }\n  }\n}\n</script>\n","import { render } from \"./header.vue?vue&type=template&id=054bc926\"\nimport script from \"./header.vue?vue&type=script&lang=js\"\nexport * from \"./header.vue?vue&type=script&lang=js\"\n\nimport exportComponent from \"../../../node_modules/vue-loader/dist/exportHelper.js\"\nconst __exports__ = /*#__PURE__*/exportComponent(script, [['render',render]])\n\nexport default __exports__","import { render } from \"./title-banner.vue?vue&type=template&id=d8229300\"\nimport script from \"./title-banner.vue?vue&type=script&lang=js\"\nexport * from \"./title-banner.vue?vue&type=script&lang=js\"\n\nimport exportComponent from \"../../../node_modules/vue-loader/dist/exportHelper.js\"\nconst __exports__ = /*#__PURE__*/exportComponent(script, [['render',render]])\n\nexport default __exports__","\"use strict\";\nObject.defineProperty(exports, \"__esModule\", { value: true });\n// runtime helper for setting properties on components\n// in a tree-shakable way\nexports.default = (sfc, props) => {\n    const target = sfc.__vccOpts || sfc;\n    for (const [key, val] of props) {\n        target[key] = val;\n    }\n    return target;\n};\n","<template>\n  <div class=\"map-banner\">\n    <div class=\"background-map\">\n      <maplibre-map :center=\"mapCenter\" :initial-zoom=\"mapZoom\" :navigation-options=\"{showCompass: false, showZoom: false, visualizePitch: false}\" />\n    </div>\n    <div class=\"foreground-content-wrapper\">\n      <slot name=\"content\" />\n    </div>\n  </div>\n</template>\n\n<script>\nimport MaplibreMap from '@/components/maplibre-map'\n\nexport default {\n  components: { MaplibreMap },\n\n  props: {\n    mapCenter: {\n      type: Object,\n      required: true\n    },\n    mapZoom: {\n      type: Number,\n      required: false,\n      default: 12\n    }\n  }\n}\n</script>\n\n<style lang=\"scss\" scoped>\n.map-banner {\n  min-height: 280px;\n\n  .background-map {\n    width: 100%;\n    height: 100%;\n    position: absolute;\n    top: 0;\n    left: 0;\n    z-index: -2;\n  }\n}\n</style>\n","import { render } from \"./map-banner.vue?vue&type=template&id=f31023b8&scoped=true\"\nimport script from \"./map-banner.vue?vue&type=script&lang=js\"\nexport * from \"./map-banner.vue?vue&type=script&lang=js\"\n\nimport \"./map-banner.vue?vue&type=style&index=0&id=f31023b8&lang=scss&scoped=true\"\n\nimport exportComponent from \"../../../node_modules/vue-loader/dist/exportHelper.js\"\nconst __exports__ = /*#__PURE__*/exportComponent(script, [['render',render],['__scopeId',\"data-v-f31023b8\"]])\n\nexport default __exports__"],"names":["props","bounds","type","Array","required","center","Object","default","lat","lng","initialZoom","Number","mapWrapperId","String","maxZoom","navigationOptions","showGeolocateControl","Boolean","style","emits","data","map","computed","defaultStyle","this","agraConfiguration","mapTilesProvider","kind","awsRegion","mapOptions","container","transformRequest","mapStyleUrlTransformFunction","zoom","apiKey","clientApiToken","url","urlObj","URL","searchParams","set","toString","mounted","Map","nav","NavigationControl","addControl","geolocate","GeolocateControl","on","setMapLanguage","$emit","methods","i18n","isRtl","setRTLTextPlugin","desiredLanguage","locale","split","layers","getStyle","layoutLayers","filter","layer","layout","includes","setLayoutProperty","id","labelLayers","_createElementBlock","$props","class","dir","_renderSlot","_ctx","$slots","$data","undefined","_hoisted_1","_createElementVNode","_createTextVNode","_hoisted_2","key","descriptionHtml","joinLocalChapterUrl","showJoin","showLogin","title","signInUrl","_hoisted_3","_toDisplayString","innerHTML","_hoisted_4","_hoisted_5","href","t","_hoisted_6","_createCommentVNode","_hoisted_7","_hoisted_8","components","GroupHeader","HeaderBannerLayout","MapBanner","hideMap","mapCenter","mapZoom","_createBlock","_component_header_banner_layout","_withCtx","_createVNode","_component_group_header","_component_map_banner","content","_","exports","sfc","target","__vccOpts","val","MaplibreMap","_component_maplibre_map","showCompass","showZoom","visualizePitch"],"sourceRoot":""}