{"version":3,"file":"js/app.ec572336c2eaff227c80.js","mappings":"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","sources":["webpack:///./resources/area/web/default/js/components/stores/StoreLocator.vue?d003","webpack:///./resources/area/web/default/js/components/stores/StoreLocator.vue","webpack:///./resources/area/web/default/js/components/stores/StoreLocator.vue?f618","webpack:///./resources/area/web/default/js/components/stores/StoreLocator.vue?6bc5"],"sourcesContent":["\nimport {Component, Vue, Watch} from 'vue-property-decorator';\nimport ServiceContainer from '@flashpointbv/solar-service-container';\n\n@Component({\n name: 'store-locator',\n components: ServiceContainer().getComponents(),\n})\n\nexport default class extends Vue {\n private isLoading: boolean = false;\n private storeResult = null;\n private headerMap = null;\n private currentStore = null;\n private error = null;\n\n private get searchStoreValue(): string {\n return this.$store.getters['StoreLocator/searchStoreValue'];\n }\n\n private get storesInRange(): object[] {\n return (this.storeResult || []).filter((store: object) => store['distance'] <= 200)\n }\n\n private async drawMap(): Promise {\n document.getElementById('map').style.display = 'block';\n this.headerMap = new google.maps.Map(document.getElementById('map'), {\n center: { lat: 52.370216, lng: 4.895168 },\n scrollwheel: false,\n zoom: 7,\n disableDefaultUI: true\n });\n }\n\n private async drawMapMarkers(stores: object[]): Promise {\n stores.forEach(store => {\n if (store['distance'] > 200) {\n return;\n }\n\n new google.maps.Marker({\n position: new google.maps.LatLng(parseFloat(store['latitude']), parseFloat(store['longitude'])),\n title: store['city'],\n map: this.headerMap,\n icon: '/area/web/default/assets/images/marker.png'\n });\n });\n }\n\n @Watch('searchStoreValue')\n private async handleStoreValue(): Promise {\n this.isLoading = true;\n\n const postcode = this.searchStoreValue.replace(/\\s/g, '');\n\n try {\n const {data} = await this.$solarClient.get(`api/store/closest?query=${postcode}&limit=10`);\n\n if ( ! data.data) {\n this.storeResult = null;\n this.isLoading = false;\n return;\n }\n\n if (data.data == 'location not found') {\n this.isLoading = false;\n this.storeResult = null;\n this.error = 'Geen resultaat gevonden.';\n document.getElementById('map').style.display = 'none';\n return;\n }\n\n this.storeResult = data.data;\n\n this.error = null;\n this.currentStore = this.searchStoreValue;\n } catch (e) {\n this.storeResult = null;\n } finally {\n this.isLoading = false;\n }\n\n if (null !== this.headerMap) {\n await this.drawMap();\n await this.drawMapMarkers(this.storeResult || []);\n }\n }\n}\n","import { render, staticRenderFns } from \"./StoreLocator.vue?vue&type=template&id=bc25b872&\"\nimport script from \"./StoreLocator.vue?vue&type=script&lang=ts&\"\nexport * from \"./StoreLocator.vue?vue&type=script&lang=ts&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../../../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n null,\n null\n \n)\n\nexport default component.exports","import mod from \"-!../../../../../../../node_modules/ts-loader/index.js??clonedRuleSet-6.use[0]!../../../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./StoreLocator.vue?vue&type=script&lang=ts&\"; export default mod; export * from \"-!../../../../../../../node_modules/ts-loader/index.js??clonedRuleSet-6.use[0]!../../../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./StoreLocator.vue?vue&type=script&lang=ts&\"","var render = function render(){var _vm=this,_c=_vm._self._c,_setup=_vm._self._setupProxy;return _c('section',[_c('span',{directives:[{name:\"show\",rawName:\"v-show\",value:(_vm.isLoading),expression:\"isLoading\"}],staticClass:\"route_loading\"},[_c('span')]),_vm._v(\" \"),(_vm.error && !_vm.isLoading)?_c('span',{staticClass:\"route__error\"},[_c('span',{staticClass:\"error__message\"},[_vm._v(_vm._s(_vm.error))])]):_vm._e(),_vm._v(\" \"),(_vm.storeResult && !_vm.isLoading)?_c('div',{staticClass:\"store__search__result\"},[_c('p',[_vm._v(\"Zoekresultaten voor: \"),(_vm.currentStore)?_c('strong',[_vm._v(_vm._s(_vm.currentStore.toUpperCase()))]):_vm._e()]),_vm._v(\" \"),_c('ul',_vm._l((_vm.storesInRange),function(result){return _c('li',[_c('a',{attrs:{\"href\":result['url_key']}},[_vm._v(\"\\n \"+_vm._s(result['city'])+\"\\n \"),_c('span',[_vm._v(_vm._s(result['distance'].toFixed(1))+\" km\")])])])}),0)]):_vm._e()])\n}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }"],"names":["Vue","isLoading","storeResult","headerMap","currentStore","error","searchStoreValue","this","$store","getters","storesInRange","filter","store","drawMap","document","getElementById","style","display","google","maps","Map","center","lat","lng","scrollwheel","zoom","disableDefaultUI","drawMapMarkers","stores","forEach","Marker","position","LatLng","parseFloat","title","map","icon","handleStoreValue","postcode","replace","data","$solarClient","get","e","Watch","Component","name","components","getComponents","render","_vm","_c","_self","_setupProxy","directives","rawName","value","expression","staticClass","_v","_s","_e","toUpperCase","_l","result","attrs","toFixed","staticRenderFns"],"sourceRoot":""}