{"version":3,"sources":["webpack:///./src/pages/MapPage/Map/MapPopupInfoWindow.vue?541f","webpack:///./src/pages/MapPage/Map/MapPopupInfoWindow.vue","webpack:///src/pages/MapPage/Map/MapPopupInfoWindow.vue","webpack:///./src/pages/MapPage/Map/MapPopupInfoWindow.vue?e3cf","webpack:///./src/pages/MapPage/Map/MapPopupInfoWindow.vue?b9ce"],"names":["render","_vm","this","_c","_self","staticStyle","staticRenderFns","component"],"mappings":"uIAAA,W,yCCAA,IAAIA,EAAS,WAAkB,IAAIC,EAAIC,KAAKC,EAAGF,EAAIG,MAAMD,GAAG,OAAOA,EAAG,MAAM,CAACE,YAAY,CAAC,QAAU,WAEhGC,EAAkB,G,4JCKtB,GACA,0BACA,2BACA,gBACA,OACA,oBACA,kBACA,eACA,2BAGA,gBACA,gBACA,OACA,kBACA,kBACA,oBACA,wBACA,mBACA,iCAEA,wBACA,oBACA,iCACA,iCAEA,0BACA,4BACA,iCACA,oCAEA,mCACA,2BACA,oCACA,kCAEA,oBACA,iBACA,kCACA,yBACA,uBAIA,OACA,8BACA,IACA,yBACA,sBACA,6BAIA,4BACA,GACA,qCAIA,mBACA,2BAEA,yCACA,gBACA,uBACA,yBACA,oBACA,iBACA,sBACA,kBACA,cACA,WACA,qBACA,IACA,8BACA,uDACA,0BAEA,wCACA,oGACA,gCACA,uCACA,YACA,UACA,YAEA,0BAEA,oDACA,uDACA,wBAEA,6BACA,iBACA,0BAIA,uCACA,yDACA,4BAEA,0CACA,oGACA,kCACA,yCACA,YACA,UACA,YAEA,0BAEA,sDACA,yDACA,wBAEA,+BACA,iBACA,0BAIA,+BACA,8BACA,oBACA,2CACA,gCACA,8CACA,mCACA,4CACA,iCACA,qCACA,kCAGA,uCACA,gBACA,yBACA,uBACA,mCACA,gBACA,qBACA,iCACA,2BACA,oBAEA,sBAEA,yLACA,YACA,yBACA,uBACA,mCACA,gBACA,qBACA,yBACA,2BACA,oBAEA,qEACA,SAZA,+CAaA,yCACA,YACA,yBACA,uBACA,qCACA,8BACA,iCACA,oBACA,eACA,YACA,IAEA,sBAGA,oCACA,gBACA,yBACA,uBAEA,gBACA,qBACA,wBACA,oBACA,uCAGA,sBAEA,wBACA,gBACA,yBACA,uBACA,mCACA,gBACA,0BACA,uCAEA,+GACA,kBAEA,UACA,GACA,wDAIA,8BACA,iCAEA,2BAEA,SAcA,GAZA,YAIA,8BACA,sCACA,4BACA,gDAKA,GACA,iBACA,yCAEA,WACA,UAEA,gCACA,YACA,mBAEA,sCACA,wBACA,mFACA,2DAEA,SACA,sBACA,oBAEA,KACA,OACA,2BACA,EACA,WACA,SACA,mCACA,gCAGA,kBACA,SACA,mBACA,+BACA,mCACA,WAGA,0BACA,SACA,oCACA,oCACA,QAIA,kBACA,2BAMA,wBACA,qBAGA,MAEA,QAEA,mBACA,YAKA,mCAEA,gBACA,SAmBA,OAjBA,mBAEA,WACA,oCACA,iCAEA,aAGA,wBACA,iCACA,WACA,WAKA,EAGA,uBACA,2BAMA,IALA,SACA,yCACA,MAGA,oCACA,2BACA,WACA,QAMA,IAFA,SAEA,uCACA,8BACA,gCACA,mBACA,wBAIA,gBACA,OAGA,OACA,cACA,aACA,wBACA,qBACA,6EACA,gBACA,kBACA,6BACA,qBACA,oBACA,WACA,0CACA,gCACA,mCACA,cAGA,sBAEA,qBAEA,mBAEA,eACA,gCACA,iCAEA,iBAIA,YAEA,OACA,iBACA,OACA,uCACA,kBACA,qBAEA,0BAOA,IANA,oBAEA,mBACA,sBACA,eAEA,oBACA,iBACA,sBAKA,kBAEA,sCACA,GACA,yCACA,sBACA,CACA,2BACA,0BACA,GACA,0BACA,SAGA,gCACA,GACA,yCACA,mBAGA,wBACA,0BACA,uBAEA,8BACA,YACA,kCARA,+BAcA,+BAEA,iBACA,cACA,yBAIA,qCACA,6BACA,wCAEA,2CACA,IAGA,YACA,cACA,oBAGA,2BAGA,mCACA,EACA,GAEA,OAGA,oBAOA,aAKA,KACA,MACA,YACA,uDAIA,IAFA,SAEA,mBACA,iBAGA,eACA,SACA,KAEA,uBACA,0CACA,OACA,kBACA,qBAEA,eAEA,aAKA,YACA,cAEA,cACA,qBACA,sBAEA,sBAGA,aACA,2BACA,0BACA,+BAIA,YACA,uDACA,oBAGA,mBACA,iBACA,0DAEA,aACA,yDA3DA,8DCheyX,I,wBCQrXC,EAAY,eACd,EACAP,EACAM,GACA,EACA,KACA,KACA,MAIa,aAAAC,E","file":"js/chunk-158694a0.c535c12d.js","sourcesContent":["export * from \"-!../../../../node_modules/mini-css-extract-plugin/dist/loader.js??ref--6-oneOf-1-0!../../../../node_modules/css-loader/index.js??ref--6-oneOf-1-1!../../../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../../../node_modules/postcss-loader/src/index.js??ref--6-oneOf-1-2!../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./MapPopupInfoWindow.vue?vue&type=style&index=0&id=dcaea710&prod&lang=css\"","var render = function render(){var _vm=this,_c=_vm._self._c;return _c('div',{staticStyle:{\"display\":\"none\"}})\n}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","<template>\r\n  <div style=\"display: none\"></div>\r\n</template>\r\n<script>\r\nimport { loadModules } from \"esri-loader\";\r\nimport MappingMixin from \"@/mixins/mappingMixin\";\r\nimport { mapState, mapActions } from \"vuex\";\r\nexport default {\r\n  name: \"MapPopupInfoWindow\",\r\n  computed: {\r\n    ...mapState([\r\n      \"is3d\",\r\n      \"showPopupsOnClick\",\r\n      \"sceneViewLoaded\",\r\n      \"userSettings\",\r\n      \"isConnectedToIntranet\"\r\n    ])\r\n  },\r\n  mixins: [MappingMixin],\r\n  data() {\r\n    return {\r\n      basemapsLoaded: false,\r\n      loadedBasemaps: [],\r\n      copyGeometryAction: {\r\n        title: \"Kopier geometri\",\r\n        id: \"copy-geometry\",\r\n        className: \"esri-icon-duplicate\"\r\n      },\r\n      elevationProfileAction: {\r\n        title: \"Høydeprofil\",\r\n        className: \"esri-icon-line-chart\",\r\n        id: \"generate-elevation-profile\"\r\n      },\r\n      consequenceFactorsAction: {\r\n        title: \"Konsekvensberegning\",\r\n        className: \"esri-icon-line-chart\",\r\n        id: \"calculate-consequence-factors\"\r\n      },\r\n      arealplanInnspillGenerationAction: {\r\n        title: \"Arealplan innspill\",\r\n        className: \"esri-icon-documentation\",\r\n        id: \"generate-arealplan-innspill\"\r\n      },\r\n      relatedTableAction: {\r\n        title: \"Mer info\",\r\n        className: \"esri-icon-description\",\r\n        id: \"open-related-tables\",\r\n        test: \"funker dette\"\r\n      }\r\n    };\r\n  },\r\n  watch: {\r\n    showPopupsOnClick: function(newVal) {\r\n      if (newVal) {\r\n        this.setupMapViewPopup();\r\n        if (this.sceneViewLoaded) {\r\n          this.setupSceneViewPopup();\r\n        }\r\n      }\r\n    },\r\n    sceneViewLoaded: function(newVal) {\r\n      if (newVal) {\r\n        this.setupSceneViewEventHandlers();\r\n      }\r\n    }\r\n  },\r\n  mounted: function() {\r\n    this.setupEventHandlers();\r\n  },\r\n  methods: {\r\n    ...mapActions([\r\n      \"setImageGalleryItems\",\r\n      \"clearImageGalleryItems\",\r\n      \"setCopiedGeometry\",\r\n      \"addBottomSheet\",\r\n      \"setShowImageGallery\",\r\n      \"setPopupVisible\",\r\n      \"setShowTabs\",\r\n      \"setSnack\",\r\n      \"setLoadingSnack\"\r\n    ]),\r\n    setupEventHandlers: function() {\r\n      this.$theMapViewObject.on(\"click\", this.getFeatureData);\r\n      this.setupMapViewPopup();\r\n    },\r\n    setupMapViewPopup: function() {\r\n      loadModules([\"esri/widgets/Popup\"]).then(([Popup]) => {\r\n        this.$theMapViewObject.popup = new Popup();\r\n        this.$theMapViewObject.popup.dockOptions = {\r\n          breakpoint: {\r\n            width: 600,\r\n            height: 544\r\n          },\r\n          position: \"bottom-center\"\r\n        };\r\n        this.enablePopupGeometryHighlight(this.$theMapViewObject);\r\n        this.$theMapViewObject.popup.watch(\"visible\", newVal => {\r\n          this.setPopupVisible(newVal);\r\n        });\r\n        this.$theMapViewObject.popup.on(\r\n          \"trigger-action\",\r\n          this.triggerPopupAction\r\n        );\r\n      });\r\n    },\r\n    setupSceneViewEventHandlers: function() {\r\n      this.$theSceneViewObject.on(\"click\", this.getFeatureData);\r\n      this.setupSceneViewPopup();\r\n    },\r\n    setupSceneViewPopup: function() {\r\n      loadModules([\"esri/widgets/Popup\"]).then(([Popup]) => {\r\n        this.$theSceneViewObject.popup = new Popup();\r\n        this.$theSceneViewObject.popup.dockOptions = {\r\n          breakpoint: {\r\n            width: 600,\r\n            height: 544\r\n          },\r\n          position: \"bottom-center\"\r\n        };\r\n        this.enablePopupGeometryHighlight(this.$theSceneViewObject);\r\n        this.$theSceneViewObject.popup.watch(\"visible\", newVal => {\r\n          this.setPopupVisible(newVal);\r\n        });\r\n        this.$theSceneViewObject.popup.on(\r\n          \"trigger-action\",\r\n          this.triggerPopupAction\r\n        );\r\n      });\r\n    },\r\n    triggerPopupAction: function(event) {\r\n      if (event.action.id === \"copy-geometry\") {\r\n        this.copyGeometry();\r\n      } else if (event.action.id === \"generate-elevation-profile\") {\r\n        this.generateElevationProfile();\r\n      } else if (event.action.id === \"calculate-consequence-factors\") {\r\n        this.calculateConsequenceFactors();\r\n      } else if (event.action.id === \"generate-arealplan-innspill\") {\r\n        this.generateArealplanInnspill();\r\n      } else if (event.action.id === \"open-related-tables\") {\r\n        this.openRelatedTables(event.action);\r\n      }\r\n    },\r\n    calculateConsequenceFactors: function() {\r\n      let currentView = this.is3d\r\n        ? this.$theSceneViewObject\r\n        : this.$theMapViewObject;\r\n      let geom = currentView.popup.selectedFeature.geometry;\r\n      currentView.popup.close();\r\n      this.addBottomSheet({\r\n        type: \"consequenceFactorAnalysis\",\r\n        title: \"Konsekvensfaktorer\",\r\n        polygonGeometry: geom\r\n      });\r\n      this.setShowTabs(true);\r\n    },\r\n    generateArealplanInnspill: async function() {\r\n      let currentView = this.is3d\r\n        ? this.$theSceneViewObject\r\n        : this.$theMapViewObject;\r\n      const geom = currentView.popup.selectedFeature.geometry;\r\n      currentView.popup.close();\r\n      this.addBottomSheet({\r\n        type: \"arealplanAnalysis\",\r\n        title: \"Arealplan innspill\",\r\n        polygonGeometry: geom\r\n      });\r\n      this.setShowTabs(true);\r\n    },\r\n    openRelatedTables: function(action) {\r\n      let currentView = this.is3d\r\n        ? this.$theSceneViewObject\r\n        : this.$theMapViewObject;\r\n      let attributes = currentView.popup.selectedFeature.attributes;\r\n      action.tables.forEach(table => {\r\n        this.addBottomSheet({\r\n          type: \"featureTable\",\r\n          value: attributes[table.key],\r\n          isTable: true,\r\n          ...table\r\n        });\r\n        this.setShowTabs(true);\r\n      });\r\n    },\r\n    generateElevationProfile: function() {\r\n      let currentView = this.is3d\r\n        ? this.$theSceneViewObject\r\n        : this.$theMapViewObject;\r\n      // let geom = currentView.popup.selectedFeature.geometry;\r\n      currentView.popup.close();\r\n      this.addBottomSheet({\r\n        type: \"elevationProfile\",\r\n        title: \"Høydeprofil\",\r\n        lineGeometry: currentView.popup.selectedFeature //<- kommenter inn denne når man går over til ny elevationprofile\r\n        // lineGeometry: geom\r\n      });\r\n      this.setShowTabs(true);\r\n    },\r\n    copyGeometry: function() {\r\n      let currentView = this.is3d\r\n        ? this.$theSceneViewObject\r\n        : this.$theMapViewObject;\r\n      let geom = currentView.popup.selectedFeature.geometry;\r\n      currentView.popup.close();\r\n      this.setCopiedGeometry(geom);\r\n      this.setSnack(\"Geometri ble kopiert\");\r\n    },\r\n    addActionsToGraphicPopupTemplate: function(graphic, relatedTables = null) {\r\n      let popupTemplate = graphic.popupTemplate;\r\n\r\n      if (popupTemplate == null) {\r\n        popupTemplate = {\r\n          title: graphic.attributes.name ? graphic.attributes.name : \"Uten navn\"\r\n        };\r\n      }\r\n      if (\r\n        (popupTemplate.title === null || popupTemplate.title == \"\") &&\r\n        graphic.hasOwnProperty(\"attributes\")\r\n      ) {\r\n        popupTemplate.title = graphic.attributes.name;\r\n      }\r\n      let actions = [];\r\n\r\n      if (graphic.geometry) {\r\n        // if (graphic.geometry.type === \"polyline\") {\r\n        //   actions.push(this.elevationProfileAction);\r\n        // }\r\n        if (graphic.geometry.type === \"polygon\") {\r\n          actions.push(this.consequenceFactorsAction);\r\n          if (this.isConnectedToIntranet) {\r\n            actions.push(this.arealplanInnspillGenerationAction);\r\n          }\r\n        }\r\n      }\r\n\r\n      if (relatedTables) {\r\n        let relatedTableAction = JSON.parse(\r\n          JSON.stringify(this.relatedTableAction)\r\n        );\r\n        relatedTableAction.tables = relatedTables;\r\n        actions.push(relatedTableAction);\r\n      }\r\n      actions.push(this.copyGeometryAction);\r\n      popupTemplate.actions = actions;\r\n      graphic.popupTemplate = popupTemplate;\r\n    },\r\n    getFeatureData: function(event) {\r\n      if (this.showPopupsOnClick) {\r\n        loadModules([\"esri/Graphic\", \"esri/request\", \"dojo/promise/all\"]).then(\r\n          ([Graphic, esriRequest, all]) => {\r\n            // Search for graphics at the clicked location\r\n            let view = this.is3d\r\n              ? this.$theSceneViewObject\r\n              : this.$theMapViewObject;\r\n\r\n            let promises = [];\r\n            promises.push(\r\n              new Promise((resolve, reject) => {\r\n                view\r\n                  .hitTest(event, {\r\n                    exclude: [\r\n                      this.$theMapObject.basemap.baseLayers,\r\n                      this.$theMapViewObject.graphics\r\n                    ]\r\n                  })\r\n                  .then(response => {\r\n                    let graphics = [];\r\n                    if (response.results.length) {\r\n                      response.results.forEach(hitTestResult => {\r\n                        this.addActionsToGraphicPopupTemplate(\r\n                          hitTestResult.graphic\r\n                        );\r\n\r\n                        let existingGraphic = graphics.find(graphic => {\r\n                          if (\r\n                            graphic.attributes.hasOwnProperty(\"id\") &&\r\n                            hitTestResult.graphic.attributes.hasOwnProperty(\r\n                              \"id\"\r\n                            )\r\n                          ) {\r\n                            return (\r\n                              graphic.attributes.id ===\r\n                              hitTestResult.graphic.attributes.id\r\n                            );\r\n                          } else {\r\n                            return false;\r\n                          }\r\n                        });\r\n                        if (typeof existingGraphic === \"undefined\") {\r\n                          graphics.push(hitTestResult.graphic);\r\n                        }\r\n                      });\r\n                      resolve(graphics);\r\n                    }\r\n                    resolve(graphics);\r\n                  })\r\n                  .catch(error => {\r\n                    reject(error);\r\n                  });\r\n              })\r\n            );\r\n\r\n            let layers = this.$theMapObject.layers.items;\r\n\r\n            function findVisibleLayerIds(sublayer, profile) {\r\n              let visibleLayers = [];\r\n\r\n              if (sublayer.sublayers === null) {\r\n                if (\r\n                  sublayer.visible &&\r\n                  (profile.hasOwnProperty(\"IdentifyLayers\") &&\r\n                    profile.IdentifyLayers.includes(sublayer.id))\r\n                ) {\r\n                  visibleLayers.push(sublayer.id);\r\n                }\r\n              } else {\r\n                if (sublayer.visible && sublayer.sublayers) {\r\n                  sublayer.sublayers.forEach(sl => {\r\n                    visibleLayers = visibleLayers.concat(\r\n                      findVisibleLayerIds(sl, profile)\r\n                    );\r\n                  });\r\n                }\r\n              }\r\n              return visibleLayers;\r\n            }\r\n\r\n            layers.forEach(layer => {\r\n              if (layer.visible && layer.sublayers) {\r\n                let visibleLayers = [];\r\n                let profile = this.$store.getters[\"getAddedMapProfile\"](\r\n                  layer.id\r\n                );\r\n\r\n                for (let s = 0; s < layer.sublayers.items.length; s++) {\r\n                  let sublayer = layer.sublayers.items[s];\r\n                  visibleLayers = visibleLayers.concat(\r\n                    findVisibleLayerIds(sublayer, profile)\r\n                  );\r\n                }\r\n\r\n                let layerDefs = {};\r\n\r\n                for (let s = 0; s < layer.allSublayers.items.length; s++) {\r\n                  let sublayer = layer.allSublayers.items[s];\r\n                  if (sublayer.definitionExpression !== null) {\r\n                    layerDefs[sublayer.id.toString()] =\r\n                      sublayer.definitionExpression;\r\n                  }\r\n                }\r\n\r\n                if (visibleLayers.length === 0) {\r\n                  return;\r\n                }\r\n                // Set the parameters for the Identify\r\n                let params = {};\r\n                params.tolerance = 10;\r\n                params.layerIds = visibleLayers;\r\n                params.layerOption = \"visible\";\r\n                params.returnFieldName = true;\r\n                params.maxAllowableOffset = this.userSettings.identifyResultMaxAllowableOffsetInMeters;\r\n                params.width = view.width;\r\n                params.height = view.height;\r\n                params.returnUnformattedValues = false;\r\n                params.returnFieldName = true;\r\n                params.returnGeometry = true;\r\n                params.f = \"json\";\r\n                params.imageDisplay = view.width + \",\" + view.height + \",\" + 96;\r\n                params.layers = \"visible:\" + visibleLayers.join(\",\");\r\n                params.geometryType = \"esriGeometryPoint\";\r\n                params.layerDefs = layerDefs;\r\n\r\n                // Set the geometry to the location of the view click\r\n                params.geometry = event.mapPoint;\r\n\r\n                params.mapExtent = view.extent;\r\n\r\n                var form_data = new FormData();\r\n\r\n                for (var key in params) {\r\n                  if (typeof params[key] === \"object\") {\r\n                    form_data.append(key, JSON.stringify(params[key]));\r\n                  } else {\r\n                    form_data.append(key, params[key]);\r\n                  }\r\n                }\r\n\r\n                let url = layer.url;\r\n\r\n                promises.push(\r\n                  esriRequest(url + \"/identify\", {\r\n                    body: form_data,\r\n                    useProxy: profile.OnlyAccessibleViaIntranet\r\n                  }).then(response => {\r\n                    let results = response.data.results;\r\n\r\n                    return results.map(result => {\r\n                      let feature = Graphic.fromJSON(result);\r\n\r\n                      let identifyTemplates = this.$store.getters[\r\n                        \"getAddedMapProfile\"\r\n                      ](layer.id).identify;\r\n\r\n                      for (let j = 0; j < identifyTemplates.length; j++) {\r\n                        let template = JSON.parse(\r\n                          JSON.stringify(identifyTemplates[j])\r\n                        );\r\n\r\n                        // let template = identifyTemplates[j];\r\n\r\n                        let relatedTables = template.relatedTables;\r\n\r\n                        if (template.LayerIDList.includes(result.layerId)) {\r\n                          if (\r\n                            template.hasOwnProperty(\"useFunctionTemplate\") &&\r\n                            template.useFunctionTemplate\r\n                          ) {\r\n                            feature.popupTemplate = template.template;\r\n                            feature.popupTemplate.content = identifyTemplates[\r\n                              j\r\n                            ].template.content.bind({});\r\n                            continue;\r\n                          }\r\n\r\n                          if (template.template instanceof Array) {\r\n                            if (\r\n                              template.fjernRaderSomHarNullVerdierFraTemplate\r\n                            ) {\r\n                              for (let key in feature.attributes) {\r\n                                if (\r\n                                  feature.attributes[key] === null ||\r\n                                  feature.attributes[key] === \"Null\" ||\r\n                                  feature.attributes[key] === \"\"\r\n                                ) {\r\n                                  template.template = template.template.filter(\r\n                                    item => {\r\n                                      return !item.includes(\"{\" + key + \"}\");\r\n                                    }\r\n                                  );\r\n                                }\r\n                              }\r\n                            }\r\n                            template.template = template.template.join(\"\");\r\n\r\n                            feature.popupTemplate = {\r\n                              title: template.title,\r\n                              content: template.template\r\n                            };\r\n                          } else {\r\n                            if (\r\n                              template.template.content instanceof Array &&\r\n                              template.template.content.length > 0 &&\r\n                              typeof template.template.content[0] === \"string\"\r\n                            ) {\r\n                              template.template.content = template.template.content.join(\r\n                                \"\"\r\n                              );\r\n                            } else {\r\n                              template.template = {\r\n                                title: template.title,\r\n                                content: template.template\r\n                              };\r\n                            }\r\n                            feature.popupTemplate = template.template;\r\n                          }\r\n\r\n                          this.addActionsToGraphicPopupTemplate(\r\n                            feature,\r\n                            relatedTables\r\n                          );\r\n                          break;\r\n                        }\r\n                      }\r\n                      return feature;\r\n                    });\r\n                  })\r\n                );\r\n              }\r\n            });\r\n\r\n            if (promises.length == 0) {\r\n              document.getElementById(\"viewDiv\").style.cursor = \"auto\";\r\n              return;\r\n            }\r\n\r\n            all(promises)\r\n              .then(\r\n                results => {\r\n                  document.getElementById(\"viewDiv\").style.cursor = \"auto\";\r\n\r\n                  let features = [];\r\n\r\n                  for (let i = 0; i < results.length; i++) {\r\n                    features = features.concat(results[i]);\r\n                  }\r\n\r\n                  if (features.length > 0) {\r\n                    let imageGalleryItems = [];\r\n                    let popupItems = [];\r\n\r\n                    features.forEach(feature => {\r\n                      if (feature.attributes.hasOwnProperty(\"webUrl\")) {\r\n                        let attributes = {\r\n                          attr: feature.attributes,\r\n                          geometry: feature.geometry\r\n                        };\r\n                        imageGalleryItems.push(attributes);\r\n                      } else {\r\n                        popupItems.push(feature);\r\n                      }\r\n                    });\r\n\r\n                    if (\r\n                      popupItems.length > 0 &&\r\n                      imageGalleryItems.length == 0\r\n                    ) {\r\n                      view.popup.open({\r\n                        features: popupItems.reverse(),\r\n                        location: event.mapPoint\r\n                      });\r\n                      view.popup.collapsed = false;\r\n                    }\r\n\r\n                    if (imageGalleryItems.length > 0) {\r\n                      this.clearImageGalleryItems();\r\n                      this.setImageGalleryItems(imageGalleryItems);\r\n                      this.setShowImageGallery(true);\r\n                    }\r\n                  }\r\n                },\r\n                error => {\r\n                  document.getElementById(\"viewDiv\").style.cursor = \"auto\";\r\n                  console.error(error);\r\n                }\r\n              )\r\n              .catch(error => {\r\n                console.error(error);\r\n                document.getElementById(\"viewDiv\").style.cursor = \"auto\";\r\n              });\r\n            if (promises.length > 0) {\r\n              document.getElementById(\"viewDiv\").style.cursor = \"wait\";\r\n            }\r\n          }\r\n        );\r\n      }\r\n    }\r\n  }\r\n};\r\n</script>\r\n<style>\r\n.esri-popup__content {\r\n  font-size: 14px !important;\r\n}\r\n\r\n.esri-popup__header-title {\r\n  font-size: 14px;\r\n  padding: 12px 24px;\r\n}\r\n\r\n.esri-popup__feature-buttons,\r\n.esri-popup__feature-buttons [role=\"button\"] {\r\n  font-weight: 400;\r\n  font-size: 12px;\r\n}\r\n\r\n.esri-popup__button {\r\n  padding: 12px 10px;\r\n}\r\n\r\ntable {\r\n  font-family: \"Roboto\", sans-serif;\r\n  border-collapse: collapse;\r\n  width: 100%;\r\n}\r\n\r\n.esri-widget tbody td {\r\n  padding: 5px;\r\n  font-size: 12px;\r\n}\r\n\r\n.esri-feature__main-container tbody tr:nth-child(odd) {\r\n  background-color: whitesmoke;\r\n  color: black;\r\n}\r\n\r\n.esri-popup__header-title {\r\n  padding-left: 8px;\r\n}\r\n\r\n.esri-view-width-xsmall\r\n  .esri-popup--is-docked-bottom-center\r\n  .esri-popup__main-container {\r\n  max-height: 50%;\r\n}\r\n</style>\r\n","import mod from \"-!../../../../node_modules/cache-loader/dist/cjs.js??ref--12-0!../../../../node_modules/thread-loader/dist/cjs.js!../../../../node_modules/babel-loader/lib/index.js!../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./MapPopupInfoWindow.vue?vue&type=script&lang=js\"; export default mod; export * from \"-!../../../../node_modules/cache-loader/dist/cjs.js??ref--12-0!../../../../node_modules/thread-loader/dist/cjs.js!../../../../node_modules/babel-loader/lib/index.js!../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./MapPopupInfoWindow.vue?vue&type=script&lang=js\"","import { render, staticRenderFns } from \"./MapPopupInfoWindow.vue?vue&type=template&id=dcaea710\"\nimport script from \"./MapPopupInfoWindow.vue?vue&type=script&lang=js\"\nexport * from \"./MapPopupInfoWindow.vue?vue&type=script&lang=js\"\nimport style0 from \"./MapPopupInfoWindow.vue?vue&type=style&index=0&id=dcaea710&prod&lang=css\"\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"],"sourceRoot":""}