{"version":3,"file":"js/app.04815d48.js","mappings":"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","sources":["webpack://iris/./src/App.vue","webpack://iris/./src/components/Error.vue","webpack://iris/./src/components/Error.vue?9575","webpack://iris/./src/components/Error.vue?4c16","webpack://iris/./src/components/Error.vue?759d","webpack://iris/./src/App.vue?38a5","webpack://iris/./src/App.vue?f4f7","webpack://iris/./src/App.vue?0e40","webpack://iris/./src/plugins/vuetify.ts","webpack://iris/./src/plugins/msal.ts","webpack://iris/./src/store/main/getters.ts","webpack://iris/./src/store/shared.ts","webpack://iris/./src/store/main/actions.ts","webpack://iris/./src/store/main/mutations.ts","webpack://iris/./src/store/main/index.ts","webpack://iris/./src/store/admin/getters.ts","webpack://iris/./src/store/admin/actions.ts","webpack://iris/./src/store/admin/mutations.ts","webpack://iris/./src/store/admin/index.ts","webpack://iris/./src/store/index.ts","webpack://iris/./src/messages/index.js","webpack://iris/./src/components/LoginMenu.vue","webpack://iris/./src/components/LoginMenu.vue?fb26","webpack://iris/./src/components/LoginMenu.vue?6e27","webpack://iris/./src/components/LoginMenu.vue?0128","webpack://iris/./src/components/main/ModelMenu.vue","webpack://iris/./src/components/main/ModelMenu.vue?df1a","webpack://iris/./src/components/main/ModelMenu.vue?1057","webpack://iris/./src/components/main/ModelMenu.vue?bfcb","webpack://iris/./src/components/main/ModelLogo.vue","webpack://iris/./src/components/main/ModelLogo.vue?7c9d","webpack://iris/./src/components/main/ModelLogo.vue?ded7","webpack://iris/./src/components/main/ModelLogo.vue?ca80","webpack://iris/./src/components/NotFound.vue","webpack://iris/./src/components/NotFound.vue?91df","webpack://iris/./src/components/NotFound.vue?8e4c","webpack://iris/./src/components/NotFound.vue?05ba","webpack://iris/./src/components/main/Main.vue","webpack://iris/./src/components/main/FloatingMenu.vue","webpack://iris/./src/components/main/ScenarioStatus.vue","webpack://iris/./src/components/main/ScenarioStatus.vue?da03","webpack://iris/./src/components/main/ScenarioStatus.vue?a35f","webpack://iris/./src/components/main/ScenarioStatus.vue?4f45","webpack://iris/./src/components/main/MapLegend.vue","webpack://iris/./src/components/main/MapLegend.vue?352d","webpack://iris/./src/components/main/MapLegend.vue?dcf0","webpack://iris/./src/components/main/MapLegend.vue?bf86","webpack://iris/./src/components/main/FloatingMenu.vue?9916","webpack://iris/./src/components/main/FloatingMenu.vue?1801","webpack://iris/./src/components/main/FloatingMenu.vue?2830","webpack://iris/./src/components/main/EditModelParameters.vue","webpack://iris/./src/components/main/EditModelParameters.vue?a871","webpack://iris/./src/components/main/EditModelParameters.vue?9c70","webpack://iris/./src/components/main/EditModelParameters.vue?30ca","webpack://iris/./src/components/main/LocationInformation.vue","webpack://iris/./src/components/main/Properties.vue","webpack://iris/./src/components/main/PropertyValue.vue","webpack://iris/./src/components/main/PropertyValue.vue?edd9","webpack://iris/./src/components/main/PropertyValue.vue?4bad","webpack://iris/./src/components/main/PropertyValue.vue?c04d","webpack://iris/./src/mdi.ts","webpack://iris/./src/components/main/Properties.vue?6c29","webpack://iris/./src/components/main/Properties.vue?e86c","webpack://iris/./src/components/main/Properties.vue?756c","webpack://iris/./src/components/main/LocationInformation.vue?08af","webpack://iris/./src/components/main/LocationInformation.vue?e0f9","webpack://iris/./src/components/main/LocationInformation.vue?6bf9","webpack://iris/./src/components/main/EditDrivers.vue","webpack://iris/./src/components/main/EditDrivers.vue?35ae","webpack://iris/./src/components/main/EditDrivers.vue?9beb","webpack://iris/./src/components/main/EditDrivers.vue?f432","webpack://iris/./src/components/main/LocationScores.vue","webpack://iris/./src/components/main/LocationScores.vue?87f4","webpack://iris/./src/components/main/LocationScores.vue?6348","webpack://iris/./src/components/main/LocationScores.vue?bf2a","webpack://iris/./src/components/main/Dialog.vue","webpack://iris/./src/components/main/Dialog.vue?6280","webpack://iris/./src/components/main/Dialog.vue?e1f0","webpack://iris/./src/components/main/Dialog.vue?35f6","webpack://iris/./src/components/main/GoogleMap.vue","webpack://iris/./src/components/main/GoogleMap.vue?99a0","webpack://iris/./src/components/main/GoogleMap.vue?baf8","webpack://iris/./src/components/main/GoogleMap.vue?ee53","webpack://iris/./src/components/main/ModelOutput.vue","webpack://iris/./src/components/main/ModelOutput.vue?4c75","webpack://iris/./src/components/main/ModelOutput.vue?7a8b","webpack://iris/./src/components/main/ModelOutput.vue?625f","webpack://iris/./src/components/main/ScenarioProcessingLog.vue","webpack://iris/./src/components/main/ScenarioProcessingLog.vue?cd06","webpack://iris/./src/components/main/ScenarioProcessingLog.vue?4a9e","webpack://iris/./src/components/main/ScenarioProcessingLog.vue?7691","webpack://iris/./src/components/main/CatchmentAreaInformation.vue","webpack://iris/./src/components/main/Loading.vue","webpack://iris/./src/components/main/Loading.vue?1ecb","webpack://iris/./src/components/main/Loading.vue?3253","webpack://iris/./src/components/main/Loading.vue?5b2e","webpack://iris/./src/components/main/CatchmentAreaInformation.vue?4891","webpack://iris/./src/components/main/CatchmentAreaInformation.vue?2746","webpack://iris/./src/components/main/CatchmentAreaInformation.vue?3d53","webpack://iris/./src/components/main/MatchingLocations.vue","webpack://iris/./src/components/main/MatchingLocations.vue?e546","webpack://iris/./src/components/main/MatchingLocations.vue?dc28","webpack://iris/./src/components/main/MatchingLocations.vue?d581","webpack://iris/./src/components/main/EditLocation.vue","webpack://iris/./src/components/main/EditLocation.vue?e511","webpack://iris/./src/components/main/EditLocation.vue?4d8f","webpack://iris/./src/components/main/EditLocation.vue?9fad","webpack://iris/./src/components/main/AreaInformation.vue","webpack://iris/./src/components/main/AreaInformation.vue?dd99","webpack://iris/./src/components/main/AreaInformation.vue?048a","webpack://iris/./src/components/main/AreaInformation.vue?d914","webpack://iris/./src/components/main/EditScenario.vue","webpack://iris/./src/components/main/EditScenario.vue?7c8d","webpack://iris/./src/components/main/EditScenario.vue?3b59","webpack://iris/./src/components/main/EditScenario.vue?23a3","webpack://iris/./src/components/main/CloseLocation.vue","webpack://iris/./src/components/main/CloseLocation.vue?d9a7","webpack://iris/./src/components/main/CloseLocation.vue?7700","webpack://iris/./src/components/main/CloseLocation.vue?21d7","webpack://iris/./src/components/main/EditScenarioName.vue","webpack://iris/./src/components/main/EditScenarioName.vue?055f","webpack://iris/./src/components/main/EditScenarioName.vue?2414","webpack://iris/./src/components/main/EditScenarioName.vue?902d","webpack://iris/./src/components/main/CopyChanges.vue","webpack://iris/./src/components/main/CopyChanges.vue?2be7","webpack://iris/./src/components/main/CopyChanges.vue?0699","webpack://iris/./src/components/main/CopyChanges.vue?3779","webpack://iris/./src/components/main/AreaScores.vue","webpack://iris/./src/components/main/AreaScores.vue?5127","webpack://iris/./src/components/main/AreaScores.vue?b0f5","webpack://iris/./src/components/main/AreaScores.vue?4776","webpack://iris/./src/components/main/EditNormalizedScoresFunctions.vue","webpack://iris/./src/components/main/EditNormalizedScoresFunctions.vue?49fb","webpack://iris/./src/components/main/EditNormalizedScoresFunctions.vue?f294","webpack://iris/./src/components/main/EditNormalizedScoresFunctions.vue?7b71","webpack://iris/./src/components/main/MatchingLocationsOutputChart.vue","webpack://iris/./src/components/main/MatchingLocationsOutputChart.vue?1069","webpack://iris/./src/components/main/MatchingLocationsOutputChart.vue?f2e2","webpack://iris/./src/components/main/MatchingLocationsOutputChart.vue?d3f9","webpack://iris/./src/components/main/MatchingLocationsRadarChart.vue","webpack://iris/./src/components/main/MatchingLocationsRadarChart.vue?972c","webpack://iris/./src/components/main/MatchingLocationsRadarChart.vue?60d3","webpack://iris/./src/components/main/MatchingLocationsRadarChart.vue?8be6","webpack://iris/./src/components/main/DriversChart.vue","webpack://iris/./src/components/main/DriversChart.vue?5f68","webpack://iris/./src/components/main/DriversChart.vue?0a27","webpack://iris/./src/components/main/DriversChart.vue?3442","webpack://iris/./src/components/main/PropertiesChart.vue","webpack://iris/./src/components/main/PropertiesChart.vue?844a","webpack://iris/./src/components/main/PropertiesChart.vue?898e","webpack://iris/./src/components/main/PropertiesChart.vue?946b","webpack://iris/./src/components/main/LocationReport.vue","webpack://iris/./src/components/main/LocationReport.vue?e369","webpack://iris/./src/components/main/LocationReport.vue?eb0a","webpack://iris/./src/components/main/LocationReport.vue?d768","webpack://iris/./src/components/main/ScenarioReport.vue","webpack://iris/./src/components/main/ModelPropertyValue.vue","webpack://iris/./src/components/main/ModelPropertyValue.vue?2d62","webpack://iris/./src/components/main/ModelPropertyValue.vue?c457","webpack://iris/./src/components/main/ModelPropertyValue.vue?fc42","webpack://iris/./src/components/main/ScenarioReport.vue?4f91","webpack://iris/./src/components/main/ScenarioReport.vue?479b","webpack://iris/./src/components/main/ScenarioReport.vue?bc0f","webpack://iris/./src/components/main/Log.vue","webpack://iris/./src/components/main/Log.vue?b8a8","webpack://iris/./src/components/main/Log.vue?67a2","webpack://iris/./src/components/main/Log.vue?38e1","webpack://iris/./src/components/main/Main.vue?3b34","webpack://iris/./src/components/main/Main.vue?8af8","webpack://iris/./src/components/main/Main.vue?cf37","webpack://iris/./src/components/admin/Main.vue","webpack://iris/./src/components/admin/Main.vue?7982","webpack://iris/./src/components/admin/Main.vue?f335","webpack://iris/./src/components/admin/Main.vue?5715","webpack://iris/./src/components/main/TopLeftMenu.vue","webpack://iris/./src/components/main/TopLeftMenu.vue?dbe0","webpack://iris/./src/components/main/TopLeftMenu.vue?84f5","webpack://iris/./src/components/main/TopLeftMenu.vue?1f66","webpack://iris/./src/components/admin/AddLogin.vue","webpack://iris/./src/components/admin/AddLogin.vue?d416","webpack://iris/./src/components/admin/AddLogin.vue?10ee","webpack://iris/./src/components/admin/AddLogin.vue?b9cf","webpack://iris/./src/components/admin/UsersList.vue","webpack://iris/./src/components/admin/UsersList.vue?cbe6","webpack://iris/./src/components/admin/UsersList.vue?e7d8","webpack://iris/./src/components/admin/UsersList.vue?39ad","webpack://iris/./src/components/admin/LoginsList.vue","webpack://iris/./src/components/admin/LoginsList.vue?799f","webpack://iris/./src/components/admin/LoginsList.vue?249c","webpack://iris/./src/components/admin/LoginsList.vue?3595","webpack://iris/./src/components/admin/User.vue","webpack://iris/./src/components/admin/User.vue?cb01","webpack://iris/./src/components/admin/User.vue?7d20","webpack://iris/./src/components/admin/User.vue?d959","webpack://iris/./src/components/admin/ScenariosList.vue","webpack://iris/./src/components/admin/ScenariosList.vue?9f07","webpack://iris/./src/components/admin/ScenariosList.vue?64fa","webpack://iris/./src/components/admin/ScenariosList.vue?e443","webpack://iris/./src/components/admin/Scenario.vue","webpack://iris/./src/components/admin/Scenario.vue?cf36","webpack://iris/./src/components/admin/Scenario.vue?d497","webpack://iris/./src/components/admin/Scenario.vue?433e","webpack://iris/./src/components/admin/ModelsList.vue","webpack://iris/./src/components/admin/ModelsList.vue?6ab8","webpack://iris/./src/components/admin/ModelsList.vue?0b53","webpack://iris/./src/components/admin/ModelsList.vue?c303","webpack://iris/./src/components/admin/Model.vue","webpack://iris/./src/components/admin/Model.vue?940c","webpack://iris/./src/components/admin/Model.vue?213e","webpack://iris/./src/components/admin/Model.vue?9a89","webpack://iris/./src/components/admin/TopLeftMenu.vue","webpack://iris/./src/components/admin/TopLeftMenu.vue?855f","webpack://iris/./src/components/admin/TopLeftMenu.vue?bc03","webpack://iris/./src/components/admin/TopLeftMenu.vue?84d1","webpack://iris/./src/filters/date.filter.ts","webpack://iris/./src/filters/time.filter.ts","webpack://iris/./src/filters/datetime.filter.ts","webpack://iris/./src/filters/currency.filter.ts","webpack://iris/./src/filters/rounding.filter.ts","webpack://iris/./src/filters/fixedNumber.filter.ts","webpack://iris/./src/filters/percentage.filter.ts","webpack://iris/./src/main.ts","webpack://iris/webpack/bootstrap","webpack://iris/webpack/runtime/chunk loaded","webpack://iris/webpack/runtime/compat get default export","webpack://iris/webpack/runtime/define property getters","webpack://iris/webpack/runtime/global","webpack://iris/webpack/runtime/hasOwnProperty shorthand","webpack://iris/webpack/runtime/make namespace object","webpack://iris/webpack/runtime/publicPath","webpack://iris/webpack/runtime/jsonp chunk loading","webpack://iris/webpack/startup"],"sourcesContent":["var render = function render(){var _vm=this,_c=_vm._self._c,_setup=_vm._self._setupProxy;return _c('v-app',{attrs:{\"id\":\"app\"}},[(_vm.environment != 'Production' && _vm.environment != 'Demo')?_c('div',{staticClass:\"tbdc-environment\"},[_vm._v(\" \"+_vm._s(_vm.environment)+\" \")]):_vm._e(),_c('v-app-bar',{staticClass:\"d-print-none tbdc-elevation-5\",attrs:{\"app\":\"\",\"clipped-left\":\"\",\"clipped-right\":\"\",\"height\":\"64\"}},[_c('router-view',{attrs:{\"name\":\"topLeftMenu\"},on:{\"disableMenu\":_vm.updateStatus}}),_c('router-view',{attrs:{\"name\":\"modelLogo\"}}),_c('v-spacer'),_c('router-view',{attrs:{\"name\":\"modelMenu\"}}),_c('router-view',{attrs:{\"name\":\"loginMenu\"}}),_c('div',{staticClass:\"ml-1\",staticStyle:{\"background-color\":\"#009cbb\",\"height\":\"64px\",\"margin-right\":\"-16px\"}},[_c('a',{attrs:{\"href\":\"https://www.thebigdatacompany.nl\",\"target\":\"_blank\"}},[_c('v-img',{class:{ spin: (_vm.inProgress > 0 || _vm.busy > 0 || _vm.databaseStatus == 1), 'mt-4': true, 'mx-4': true },attrs:{\"src\":require('./assets/TBDC_icon.svg'),\"max-height\":\"32\",\"max-width\":\"32\",\"contain\":\"\",\"width\":\"32\"}})],1)])],1),_c('router-view',{scopedSlots:_vm._u([{key:\"adminLeft\",fn:function(){return [_c('router-view',{attrs:{\"name\":\"adminLeft\"}})]},proxy:true},{key:\"adminRight\",fn:function(){return [_c('router-view',{attrs:{\"name\":\"adminRight\"}})]},proxy:true}])}),_c('v-overlay',{staticClass:\"tbdc-overlay\",attrs:{\"light\":\"\",\"value\":_vm.error == null && _vm.busy > 0}}),_c('v-overlay',{staticStyle:{\"z-index\":\"250\"},attrs:{\"light\":\"\",\"value\":_vm.error == null && _vm.databaseStatus == 1}},[_c('div',{staticStyle:{\"position\":\"fixed\",\"left\":\"50%\",\"top\":\"50%\",\"transform\":\"translate(-50%,-50%)\"}},[_c('v-img',{attrs:{\"max-width\":\"600\",\"src\":require('./assets/loading.png')}})],1)]),_c('Error',{staticClass:\"d-print-none\"})],1)\n}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","var render = function render(){var _vm=this,_c=_vm._self._c,_setup=_vm._self._setupProxy;return _c('v-dialog',{attrs:{\"width\":\"800\"},model:{value:(_vm.modalShow),callback:function ($$v) {_vm.modalShow=$$v},expression:\"modalShow\"}},[_c('v-card',[_c('v-card-title',{attrs:{\"primary-title\":\"\"}},[_vm._v(\" \"+_vm._s(_vm.$t(\"message.error\"))+\" \")]),_c('v-card-text',[(!_vm.debug)?_c('div',{staticClass:\"d-flex mb-2\"},[_vm._v(\" \"+_vm._s(_vm.$t(\"message.errorOccured\"))+\" \")]):_vm._e(),(_vm.debug && _vm.getError && _vm.getError.response)?_c('div',{staticClass:\"mb-2\"},[_vm._v(\" \"+_vm._s(_vm.getError.response.data)+\" \")]):_vm._e()]),_c('v-card-actions',[_c('div',{staticClass:\"flex-grow-1\"}),_c('v-btn',{attrs:{\"color\":\"primary\",\"text\":\"\"},on:{\"click\":function($event){return _vm.setError(null)}}},[_vm._v(\" \"+_vm._s(_vm.$t(\"message.close\"))+\" \")])],1)],1)],1)\n}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","\r\n import { Component, Vue, Watch } from 'vue-property-decorator';\r\n import { Getter, Mutation } from 'vuex-class';\r\n @Component({\r\n components: {\r\n },\r\n })\r\n export default class Error extends Vue {\r\n\r\n private modalShow = false;\r\n\r\n @Mutation('SET_ERROR') setError: any;\r\n @Getter('getError') getError!: any;\r\n @Getter('getDebug') debug: any;\r\n\r\n @Watch('getError')\r\n private getErrorChanged() {\r\n if (this.getError != null) this.modalShow = true; else this.modalShow = false;\r\n }\r\n \r\n }\r\n","import mod from \"-!../../node_modules/thread-loader/dist/cjs.js!../../node_modules/babel-loader/lib/index.js!../../node_modules/ts-loader/index.js??clonedRuleSet-41.use[2]!../../node_modules/@vue/vue-loader-v15/lib/index.js??vue-loader-options!./Error.vue?vue&type=script&lang=ts&\"; export default mod; export * from \"-!../../node_modules/thread-loader/dist/cjs.js!../../node_modules/babel-loader/lib/index.js!../../node_modules/ts-loader/index.js??clonedRuleSet-41.use[2]!../../node_modules/@vue/vue-loader-v15/lib/index.js??vue-loader-options!./Error.vue?vue&type=script&lang=ts&\"","import { render, staticRenderFns } from \"./Error.vue?vue&type=template&id=4756c766&\"\nimport script from \"./Error.vue?vue&type=script&lang=ts&\"\nexport * from \"./Error.vue?vue&type=script&lang=ts&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../node_modules/@vue/vue-loader-v15/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","\r\n import { Component, Vue } from 'vue-property-decorator';\r\n import { Getter } from 'vuex-class';\r\n import Error from '@/components/Error.vue';\r\n // @ts-ignore\r\n import Loading from 'vue-full-loading';\r\n @Component({\r\n components: {\r\n Error,\r\n Loading\r\n },\r\n })\r\n export default class App extends Vue {\r\n \r\n @Getter('getBusy') busy!: number;\r\n @Getter('getDatabaseStatus') databaseStatus!: number;\r\n @Getter('getError') error!: any;\r\n @Getter('getEnvironment') environment!: any;\r\n @Getter('getVersion') version!: any;\r\n @Getter('getInProgress') inProgress!: number;\r\n \r\n updateStatus(disabled: any) {\r\n alert(disabled);\r\n }\r\n\r\n \r\n \r\n\r\n }\r\n","import mod from \"-!../node_modules/thread-loader/dist/cjs.js!../node_modules/babel-loader/lib/index.js!../node_modules/ts-loader/index.js??clonedRuleSet-41.use[2]!../node_modules/@vue/vue-loader-v15/lib/index.js??vue-loader-options!./App.vue?vue&type=script&lang=ts&\"; export default mod; export * from \"-!../node_modules/thread-loader/dist/cjs.js!../node_modules/babel-loader/lib/index.js!../node_modules/ts-loader/index.js??clonedRuleSet-41.use[2]!../node_modules/@vue/vue-loader-v15/lib/index.js??vue-loader-options!./App.vue?vue&type=script&lang=ts&\"","import { render, staticRenderFns } from \"./App.vue?vue&type=template&id=3fda5488&\"\nimport script from \"./App.vue?vue&type=script&lang=ts&\"\nexport * from \"./App.vue?vue&type=script&lang=ts&\"\nimport style0 from \"./App.vue?vue&type=style&index=0&id=3fda5488&prod&lang=css&\"\n\n\n/* normalize component */\nimport normalizer from \"!../node_modules/@vue/vue-loader-v15/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 Vue from 'vue';\r\nimport Vuetify, {\r\n VInput,\r\n VAlert,\r\n VApp,\r\n VNavigationDrawer,\r\n VFooter,\r\n VList,\r\n VBtn,\r\n VIcon,\r\n VToolbar,\r\n VDataTable,\r\n VProgressLinear,\r\n VCol,\r\n VTooltip,\r\n VListItem,\r\n VListItemAction,\r\n VRow,\r\n VContent,\r\n VToolbarTitle,\r\n VContainer,\r\n VListItemContent,\r\n VListItemTitle,\r\n VAppBar,\r\n VAppBarNavIcon,\r\n VTreeview,\r\n VSelect,\r\n VDialog,\r\n VCard,\r\n VCardTitle,\r\n VOverlay,\r\n VProgressCircular,\r\n VCardText,\r\n VSpacer,\r\n VTextField,\r\n VAutocomplete,\r\n VChip,\r\n VExpansionPanel,\r\n VExpansionPanels,\r\n VExpansionPanelContent,\r\n VExpansionPanelHeader,\r\n VCardActions,\r\n VMenu,\r\n VRadioGroup,\r\n VRadio,\r\n VCardSubtitle,\r\n VSwitch,\r\n VImg,\r\n VSimpleTable,\r\n VLayout,\r\n VFlex,\r\n VSlider,\r\n VListItemIcon,\r\n VListItemGroup,\r\n VForm,\r\n VCheckbox,\r\n VSubheader,\r\n VFileInput,\r\n VDivider,\r\n VListItemAvatar,\r\n VCombobox,\r\n VTextarea,\r\n} from 'vuetify/lib';\r\n\r\n// vue-cli a-la-carte installation\r\nVue.use(Vuetify, {\r\n components: {\r\n VInput,\r\n VAlert,\r\n VApp,\r\n VNavigationDrawer,\r\n VFooter,\r\n VList,\r\n VBtn,\r\n VIcon,\r\n VToolbar,\r\n VDataTable,\r\n VProgressLinear,\r\n VCol,\r\n VTooltip,\r\n VListItem,\r\n VListItemAction,\r\n VRow,\r\n VContent,\r\n VToolbarTitle,\r\n VContainer,\r\n VListItemContent,\r\n VListItemTitle,\r\n VAppBar,\r\n VAppBarNavIcon,\r\n VTreeview,\r\n VSelect,\r\n VDialog,\r\n VCard,\r\n VCardTitle,\r\n VOverlay,\r\n VProgressCircular,\r\n VCardText,\r\n VSpacer,\r\n VTextField,\r\n VAutocomplete,\r\n VChip,\r\n VExpansionPanel,\r\n VExpansionPanels,\r\n VExpansionPanelContent,\r\n VExpansionPanelHeader,\r\n VMenu,\r\n VCardActions,\r\n VRadioGroup,\r\n VRadio,\r\n VCardSubtitle,\r\n VSwitch,\r\n VImg,\r\n VSimpleTable,\r\n VLayout,\r\n VFlex,\r\n VSlider,\r\n VDivider,\r\n VListItemIcon,\r\n VListItemGroup,\r\n VForm,\r\n VCheckbox,\r\n VSubheader,\r\n VFileInput,\r\n VListItemAvatar,\r\n VCombobox,\r\n VTextarea,\r\n },\r\n});\r\n\r\nconst opts = {\r\n theme: {\r\n themes: {\r\n light: {\r\n primary: '#009cbb',\r\n secondary: '#424242',\r\n accent: '#82B1FF',\r\n error: '#FF5252',\r\n info: '#2196F3',\r\n success: '#4CAF50',\r\n },\r\n \r\n },\r\n },\r\n};\r\n\r\nexport default new Vuetify(opts);\r\n","import * as msal from \"@azure/msal-browser\";\r\nimport Vue, { PluginObject, VueConstructor } from \"vue\";\r\n\r\ndeclare module \"vue/types/vue\" {\r\n interface Vue {\r\n $msal: MsalPlugin;\r\n }\r\n}\r\n\r\nexport interface MsalPluginOptions {\r\n clientId: string;\r\n loginAuthority: string;\r\n passwordAuthority: string;\r\n knownAuthority: string;\r\n}\r\n\r\nlet msalInstance: msal.PublicClientApplication;\r\n\r\nexport let msalPluginInstance: MsalPlugin;\r\n\r\nexport class MsalPlugin implements PluginObject {\r\n\r\n constructor(scope: string) {\r\n this._scope = scope;\r\n }\r\n\r\n private _scope: any;\r\n private pluginOptions: MsalPluginOptions = {\r\n clientId: \"\",\r\n loginAuthority: \"\",\r\n passwordAuthority: \"\",\r\n knownAuthority: \"\"\r\n };\r\n\r\n public isAuthenticated = false;\r\n\r\n public install(vue: VueConstructor, options?: MsalPluginOptions): void {\r\n if (!options) {\r\n throw new Error(\"MsalPluginOptions must be specified\");\r\n }\r\n this.pluginOptions = options;\r\n this.initialize(options);\r\n msalPluginInstance = this;\r\n vue.prototype.$msal = Vue.observable(msalPluginInstance);\r\n }\r\n\r\n private async initialize(options: MsalPluginOptions) {\r\n const msalConfig: msal.Configuration = {\r\n auth: {\r\n clientId: options.clientId,\r\n authority: options.loginAuthority,\r\n knownAuthorities: [options.knownAuthority]\r\n }\r\n };\r\n msalInstance = new msal.PublicClientApplication(msalConfig);\r\n msalInstance.handleRedirectPromise().then((authResult: any) => {\r\n this.isAuthenticated = this.getIsAuthenticated();\r\n \r\n }).catch((err: any) => {\r\n if (err.errorMessage && err.errorMessage.indexOf(\"AADB2C90118\") > -1) {\r\n msalInstance.loginRedirect({\r\n scopes: [\"openid\", \"profile\", \"offline_access\"],\r\n authority: this.pluginOptions.passwordAuthority\r\n });\r\n } else {\r\n if (err.errorCode == 'user_cancelled') {\r\n //User cancelled the login\r\n }\r\n this.isAuthenticated = false;\r\n }\r\n });\r\n this.isAuthenticated = this.getIsAuthenticated();\r\n }\r\n\r\n public account() {\r\n return msalInstance.getAllAccounts()[0];\r\n }\r\n\r\n public async signIn() {\r\n const loginRequest: msal.PopupRequest = {\r\n scopes: [\"openid\", \"profile\", \"offline_access\",this._scope],\r\n };\r\n await msalInstance.loginRedirect(loginRequest);\r\n }\r\n\r\n public async signOut() {\r\n await msalInstance.logout();\r\n this.isAuthenticated = false;\r\n }\r\n\r\n public async acquireToken() {\r\n const request = {\r\n account: msalInstance.getAllAccounts()[0],\r\n scopes: [this._scope]\r\n };\r\n try {\r\n const response = await msalInstance.acquireTokenSilent(request);\r\n return response.accessToken;\r\n } catch (error) {\r\n if (error instanceof msal.InteractionRequiredAuthError) {\r\n msalInstance.acquireTokenRedirect(request)\r\n }\r\n return false;\r\n }\r\n }\r\n\r\n private getIsAuthenticated(): boolean {\r\n const accounts: msal.AccountInfo[] = msalInstance.getAllAccounts();\r\n return accounts && accounts.length > 0;\r\n }\r\n}","import { localeIncludes } from 'locale-includes';\r\n\r\nexport const getters = {\r\n getModels(state: any): object {\r\n return state.models;\r\n },\r\n getModel(state: any): object {\r\n return state.model;\r\n }, \r\n getSubModels(state: any): object {\r\n return state.subModels;\r\n },\r\n getSubModel(state: any): object {\r\n return state.subModel;\r\n },\r\n getFoundScenarioIds(state: any): object {\r\n return state.foundScenarioIds;\r\n },\r\n getScenarios(state: any): object {\r\n return state.scenarios;\r\n },\r\n getLocationPhoto(state: any): object {\r\n return state.locationPhoto;\r\n },\r\n getScenarioLocations(state: any): object {\r\n return state.scenarioLocations;\r\n },\r\n getAreaSetsVisible(state: any): object {\r\n return state.areaSetsVisible;\r\n },\r\n getPoiSetsVisible(state: any): object {\r\n return state.poiSetsVisible;\r\n },\r\n getHeatMapSetsVisible(state: any): object {\r\n return state.heatMapSetsVisible;\r\n },\r\n getDrivers(state: any): object {\r\n return state.drivers;\r\n },\r\n getLog(state: any): object {\r\n return state.log;\r\n },\r\n getScenario(state: any): object {\r\n return state.scenario;\r\n },\r\n getScenarioDifferences(state: any): object {\r\n return state.scenarioDifferences;\r\n },\r\n getOnlinePois(state: any): object {\r\n return state.onlinePois;\r\n },\r\n isDefaultScenario(state: any): boolean {\r\n if (state.scenarios == null) return false;\r\n if (state.scenario == null) return false;\r\n return (state.scenarios[0].id == state.scenario.id)\r\n },\r\n getLocations(state: any): object {\r\n return state.locations;\r\n },\r\n getLocationsNotExcluded(state: any): object {\r\n return state.locationsNotExcluded;\r\n },\r\n getFilteredLocations(state: any): object {\r\n if (state.filterLocations == null) return state.locationsNotExcluded;\r\n const fLocations = state.locationsNotExcluded.filter((location: any) => localeIncludes(location.name, state.filterLocations, { usage: \"search\", sensitivity: \"base\" }) || (location.locationGroup != null && localeIncludes(location.locationGroup, state.filterLocations, { usage: \"search\", sensitivity: \"base\" })));\r\n return fLocations;\r\n },\r\n getMatchingLocations(state: any): object {\r\n return state.matchingLocations;\r\n },\r\n getMatchingScores(state: any): object {\r\n return state.matchingScores;\r\n },\r\n getLocationDrivers(state: any): object {\r\n return state.locationDrivers;\r\n },\r\n getPropertiesChart(state: any): object {\r\n return state.propertiesChart;\r\n },\r\n getLocation(state: any): object {\r\n return state.location;\r\n },\r\n getLocationProperties(state: any): object {\r\n return state.locationProperties;\r\n },\r\n getLocationPropertiesOld(state: any): object {\r\n return state.locationPropertiesOld;\r\n },\r\n getLocationScores(state: any): object {\r\n return state.locationScores;\r\n },\r\n getLocationIsoLines(state: any): object {\r\n return state.locationIsoLines;\r\n },\r\n \r\n getLocationCatchmentArea(state: any): object {\r\n return state.locationCatchmentArea;\r\n },\r\n \r\n getArea(state: any): object {\r\n return state.area;\r\n },\r\n getModelParameters(state: any): object {\r\n return state.modelParameters;\r\n },\r\n getScenarioProcessingLog(state: any): object {\r\n return state.scenarioProcessingLog;\r\n },\r\n getNormalizedScoresFunctions(state: any): object {\r\n return state.normalizedScoresFunctions;\r\n },\r\n getLocationEditing(state: any): object {\r\n return state.locationEditing;\r\n },\r\n getLocationClosing(state: any): object {\r\n return state.locationClosing;\r\n },\r\n getScenarioEditing(state: any): object {\r\n return state.scenarioEditing;\r\n },\r\n getScenarioNameEditing(state: any): object {\r\n return state.scenarioNameEditing;\r\n },\r\n getScenarioMerging(state: any): object {\r\n return state.scenarioMerging;\r\n },\r\n getFilterLocations(state: any): any {\r\n return state.filterLocations;\r\n },\r\n getFilterScenarios(state: any): any {\r\n return state.filterScenarios;\r\n },\r\n getStandByFilterLocations(state: any): any {\r\n return state.standByFilterLocations;\r\n },\r\n getStandByFilterScenarios(state: any): any {\r\n return state.standByFilterScenarios;\r\n },\r\n getSearchResults(state: any): any {\r\n return state.searchResults;\r\n },\r\n getMapBounds(state: any): any {\r\n return state.mapBounds;\r\n },\r\n getPois(state: any): any {\r\n return state.pois;\r\n },\r\n getHeatMapPoints(state: any): any {\r\n return state.heatMapPoints;\r\n },\r\n getReadOnly(state: any): any {\r\n return state.readOnly;\r\n },\r\n getMatchingColors(state: any): any {\r\n return state.matchingColors;\r\n },\r\n getIsoLineParameters(state: any): any {\r\n return state.isoLineParameters;\r\n },\r\n\r\n getScenarioLocationsVisible(state: any): any {\r\n return state.scenarioLocationsVisible;\r\n },\r\n getIsoLineSet(state: any): any {\r\n return state.isoLineSet;\r\n },\r\n getIsoLineMinutes(state: any): any {\r\n return state.isoLineMinutes;\r\n },\r\n getCatchmentArea(state: any): any {\r\n return state.catchmentArea;\r\n }\r\n \r\n \r\n};\r\n\r\nfunction isoLine(isoLine: any, arg1: (any: any) => void) {\r\n throw new Error(\"Function not implemented.\");\r\n}\r\n","export function filterPointTypeGeometries(features: any) {\r\n features.forEach(function (feature: any) {\r\n const geometryType = feature.geometry.type;\r\n if (geometryType === \"GeometryCollection\") {\r\n //Filter out point type geometries from the geometrycolleciton\r\n feature.geometry.geometries = feature.geometry.geometries.filter(function (geometry: any) {\r\n return geometry.type !== \"Point\";\r\n });\r\n }\r\n });\r\n return features.filter(function (feature: any) {\r\n return feature.geometry.type !== \"Point\";\r\n });\r\n}\r\n\r\nexport function cloneLocation(location: any) {\r\n const newLocation = Object.assign({}, location);\r\n newLocation.marker = null;\r\n return newLocation;\r\n}","import { ActionTree } from 'vuex';\r\nimport axios from 'axios';\r\nimport { Expression } from 'ncalcjs';\r\nimport { MainState } from './types';\r\nimport { RootState } from '../types';\r\nimport Vue from 'vue'\r\nimport { router } from \"../../main\";\r\nimport { filterPointTypeGeometries, cloneLocation } from '../shared';\r\nimport i18n from '../../main';\r\n\r\n\r\nexport const actions: ActionTree = {\r\n async fetchModelParameters(context) {\r\n context.commit('SET_STARTBUSY', null, { root: true });\r\n axios.get('/api/models/' + context.state.subModel.id + '/model-parameters').then(async response => {\r\n context.commit('SET_MODELPARAMETERS', response.data);\r\n context.commit('SET_ENDBUSY', null, { root: true });\r\n }).catch((error) => {\r\n context.commit('SET_ERROR', error, { root: true })\r\n })\r\n },\r\n async saveMergingScenario(context) {\r\n context.commit('SET_STARTBUSY', null, { root: true });\r\n let locations = '';\r\n context.state.scenarioMerging.selectedLocations.forEach((location: any) => {\r\n locations += '&locations=' + location;\r\n });\r\n await axios.put('/api/models/scenarios/' + context.state.scenarioMerging.scenarioId + '/copy-changes/' + context.state.scenarioMerging.destinationScenarioId + '?deleteSourceScenario=' + context.state.scenarioMerging.deleteSourceScenario + locations).then(async response => {\r\n \r\n await context.dispatch('fetchScenarios');\r\n context.dispatch('setScenarioById', context.state.scenarioMerging.destinationScenarioId);\r\n context.commit('SET_SCENARIOMERGING', null);\r\n context.commit('SET_ENDBUSY', null, { root: true });\r\n }).catch((error) => {\r\n context.commit('SET_ERROR', error, { root: true });\r\n })\r\n },\r\n async mergeScenario(context, payload) {\r\n context.commit('SET_STARTBUSY', null, { root: true });\r\n context.commit('SET_SCENARIOMERGING', payload);\r\n context.commit('SET_ENDBUSY', null, { root: true });\r\n },\r\n async fetchScenarioProcessingLog(context) { \r\n context.commit('SET_STARTBUSY', null, { root: true });\r\n axios.get('/api/models/' + context.state.model.id + '/processing-log').then(async response => {\r\n context.commit('SET_SCENARIOPROCESSINGLOG', response.data);\r\n context.commit('SET_ENDBUSY', null, { root: true });\r\n }).catch((error) => {\r\n context.commit('SET_ERROR', error, { root: true })\r\n })\r\n },\r\n async fetchLog(context, filter) { \r\n if (filter == null) filter = { eventType: 255, source: '' }\r\n context.commit('SET_STARTBUSY', null, { root: true });\r\n axios.get('/api/admin/log?eventType=' + filter.eventType + \"&source=\" + filter.source).then(async response => {\r\n context.commit('SET_LOG', response.data);\r\n context.commit('SET_ENDBUSY', null, { root: true });\r\n }).catch((error) => {\r\n context.commit('SET_ERROR', error, { root: true })\r\n })\r\n },\r\n async fetchNormalizedScoresFunctions(context) { //, onlyStatus\r\n context.commit('SET_STARTBUSY', null, { root: true });\r\n axios.get('/api/models/' + context.state.model.id + '/normalized-scores-functions').then(async response => {\r\n context.commit('SET_NORMALIZEDSCORESFUNCTIONS', response.data);\r\n context.commit('SET_ENDBUSY', null, { root: true });\r\n }).catch((error) => {\r\n context.commit('SET_ERROR', error, { root: true })\r\n })\r\n },\r\n async saveModelParameters(context) {\r\n context.commit('SET_STARTBUSY', null, { root: true });\r\n const functions = context.state.modelParameters.functions.map(function (f: any) {\r\n return f.function;\r\n });\r\n await axios.put('/api/functions/validate', functions).then(async response => {\r\n if (response.data.length > 0) {\r\n context.commit('SET_ERROR', response.data[0], { root: true })\r\n }\r\n else {\r\n await axios.put('/api/models/' + context.state.subModel.id + '/model-parameters', context.state.modelParameters).then(function () {\r\n context.commit('SET_MODELPARAMETERS', null);\r\n context.commit('SET_ENDBUSY', null, { root: true });\r\n }).catch((error) => {\r\n context.commit('SET_ERROR', error, { root: true })\r\n })\r\n }\r\n });\r\n },\r\n async saveNormalizedScoresFunctions(context) {\r\n context.commit('SET_STARTBUSY', null, { root: true });\r\n const functions = context.state.normalizedScoresFunctions.map(function (f: any) {\r\n return f.function;\r\n });\r\n await axios.put('/api/functions/validate', functions).then(async response => {\r\n if (response.data.length > 0) {\r\n context.commit('SET_ERROR', response.data[0], { root: true })\r\n }\r\n else {\r\n await axios.put('/api/models/' + context.state.model.id + '/normalized-scores-functions', context.state.normalizedScoresFunctions).then(function () {\r\n context.commit('SET_NORMALIZEDSCORESFUNCTIONS', null);\r\n context.commit('SET_ENDBUSY', null, { root: true });\r\n }).catch((error) => {\r\n context.commit('SET_ERROR', error, { root: true })\r\n })\r\n }\r\n }).catch((error) => {\r\n context.commit('SET_ERROR', error, { root: true })\r\n })\r\n },\r\n async fetchDrivers(context) {\r\n context.commit('SET_STARTBUSY', null, { root: true });\r\n axios.get('/api/models/' + context.state.model.id + '/drivers').then(async response => {\r\n context.commit('SET_DRIVERS', response.data);\r\n context.commit('SET_ENDBUSY', null, { root: true });\r\n }).catch((error) => {\r\n context.commit('SET_ERROR', error, { root: true })\r\n })\r\n },\r\n async saveDrivers(context) {\r\n context.commit('SET_STARTBUSY', null, { root: true });\r\n const functions = context.state.drivers.map(function (f: any) {\r\n return f.function;\r\n });\r\n await axios.put('/api/functions/validate', functions).then(async response => {\r\n if (response.data.length > 0) {\r\n context.commit('SET_ERROR', response.data[0], { root: true })\r\n }\r\n else {\r\n await axios.put('/api/models/' + context.state.model.id + '/drivers', context.state.drivers).then(function () {\r\n context.commit('SET_DRIVERS', null);\r\n context.commit('SET_ENDBUSY', null, { root: true });\r\n }).catch((error) => {\r\n context.commit('SET_ERROR', error, { root: true })\r\n })\r\n }\r\n }).catch((error) => {\r\n context.commit('SET_ERROR', error, { root: true })\r\n })\r\n },\r\n async searchByBoundingBox(context, payload) {\r\n context.commit('SET_STARTBUSY', null, { root: true });\r\n if (payload == null || payload.trim() == '') {\r\n context.commit('SET_SEARCHRESULTS', []);\r\n context.commit('SET_ENDBUSY', null, { root: true });\r\n }\r\n else {\r\n await axios.get('/api/search/' + context.state.mapBounds.north + '/' + context.state.mapBounds.west + '/' + context.state.mapBounds.south + '/' + context.state.mapBounds.east + '/' + payload).then(async response => {\r\n context.commit('SET_SEARCHRESULTS', response.data);\r\n context.commit('SET_ENDBUSY', null, { root: true });\r\n }).catch((error) => {\r\n context.commit('SET_ERROR', error, { root: true })\r\n })\r\n }\r\n },\r\n async filterLocations(context, payload) {\r\n context.state.filterLocations = payload;\r\n },\r\n async filterScenarios(context, payload) {\r\n context.state.filterScenarios = payload;\r\n },\r\n async fetchPois(context) {\r\n context.commit('SET_STARTBUSY', null, { root: true });\r\n const promises = context.state.poiSetsVisible.filter(function (poiSet: any) { return poiSet > 0 } ).map(async function (poiSet: any) {\r\n try {\r\n const response = await axios.get('/api/models/' + context.state.model.id + '/poisets/' + poiSet + '/pois');\r\n response.data.forEach(function (point: any) {\r\n point[\"lat\"] = point.latitude;\r\n point[\"lng\"] = point.longitude;\r\n point[\"coords\"] = [point.longitude, point.latitude];\r\n })\r\n return response.data;\r\n } catch (error) {\r\n context.commit('SET_ERROR', error, { root: true });\r\n }\r\n })\r\n const results = await Promise.all(promises);\r\n context.commit('SET_POIS', results.flat() ?? []);\r\n context.commit('SET_ENDBUSY', null, { root: true });\r\n },\r\n async fetchHeatMapPoints(context,) {\r\n context.commit('SET_STARTBUSY', null, { root: true });\r\n const heatMapPoints: any = [];\r\n await context.state.heatMapSetsVisible.forEach(async function (heatMapSet: any) {\r\n if (heatMapSet > 0) {\r\n context.commit('SET_STARTBUSY', null, { root: true });\r\n await axios.get('/api/models/' + context.state.model.id + '/heatmapsets/' + heatMapSet + '/points').then(async response => {\r\n heatMapPoints.push(response.data);\r\n context.commit('SET_ENDBUSY', null, { root: true });\r\n }).catch((error) => {\r\n context.commit('SET_ERROR', error, { root: true })\r\n })\r\n }\r\n\r\n });\r\n context.commit('SET_HEATMAPPOINTS', heatMapPoints);\r\n context.commit('SET_ENDBUSY', null, { root: true });\r\n },\r\n async fetchModels(context) {\r\n \r\n \r\n context.commit('SET_STARTBUSY', null, { root: true });\r\n return axios.get('/api/models').then(async response => {\r\n if (response.data.length == 0) {\r\n //No models found\r\n context.commit('SET_DATABASESTATUS', 2, { root: true });\r\n }\r\n else {\r\n context.commit('SET_MODELS', response.data);\r\n\r\n if (router.currentRoute.query.subModelId != null) {\r\n await context.dispatch('setModelById', router.currentRoute.query.modelId);\r\n } else if (context.state.subModel == null) {\r\n await context.dispatch('setModel', response.data[0]);\r\n }\r\n setInterval(function () {\r\n if ((Date.now() - context.rootState.lastUserActionDateTime) > 5000) {\r\n context.dispatch('fetchScenarios', true)\r\n }\r\n }, 10000)\r\n }\r\n context.commit('SET_ENDBUSY', null, { root: true });\r\n }).catch((error) => {\r\n console.error(error);\r\n context.commit('SET_ERROR', error, { root: true })\r\n })\r\n },\r\n async setModel(context, model) {\r\n\r\n context.commit('SET_STARTBUSY', null, { root: true });\r\n await axios.get('/api/models/' + model.id + '/location-groups').then(response => {\r\n model['locationGroups'] = response.data;\r\n \r\n }).catch((error) => {\r\n context.commit('SET_ERROR', error, { root: true })\r\n })\r\n await axios.get('/api/models/' + model.id + '/isolines-parameters').then(response => {\r\n context.commit('SET_ISOLINEPARAMETERS', response.data);\r\n }).catch((error) => {\r\n context.commit('SET_ERROR', error, { root: true })\r\n })\r\n context.commit('SET_LOCATIONCATCHMENTAREA', null);\r\n context.commit('SET_MATCHINGLOCATIONS', null);\r\n context.commit('SET_LOCATION', null);\r\n context.commit('SET_SCENARIO', null);\r\n context.commit('SET_SUBMODELS', null);\r\n context.commit('SET_SUBMODEL', null);\r\n context.commit('SET_AREA', null);\r\n context.commit('SET_AREASETSVISIBLE', []);\r\n context.commit('SET_POISETSVISIBLE', []);\r\n context.commit('SET_HEATMAPSETSVISIBLE', []);\r\n context.commit('SET_STANDBYFILTERLOCATIONS', null);\r\n context.commit('SET_STANDBYFILTERSCENARIOS', null);\r\n context.commit('SET_POIS', []);\r\n context.commit('SET_HEATMAPPOINTS', []);\r\n context.commit(\"SET_CATCHMENTAREA\", null);\r\n context.state.filterLocations = '';\r\n context.state.filterScenarios = '';\r\n\r\n \r\n\r\n model[\"catchmentAreasOnMap\"] = model.catchmentAreas.filter(function (catchmentArea: any) {\r\n return catchmentArea.onMap == true;\r\n });\r\n context.commit('SET_MODEL', model);\r\n if (model.catchmentAreaMode == 0) {\r\n context.commit(\"SET_CATCHMENTAREA\", { coverage: 1.0, catchmentAreaId: model.catchmentAreas[0].id, areaSetId: model.catchmentAreas[0].areaSetId, isoLineSetId: model.catchmentAreas[0].isoLineSetId });\r\n\r\n } else {\r\n if (model.catchmentAreasOnMap.length > 0) {\r\n context.commit(\"SET_CATCHMENTAREA\", { coverage: 1.0, catchmentAreaId: model.catchmentAreasOnMap[0].id, areaSetId: model.catchmentAreasOnMap[0].areaSetId, isoLineSetId: model.catchmentAreasOnMap[0].isoLineSetId });\r\n }\r\n }\r\n context.commit('SET_ISOLINESET', model.isoLineSets[0]);\r\n context.commit('SET_ISOLINEMINUTES', 0);\r\n await context.dispatch('fetchSubModels');\r\n await context.dispatch('fetchScenarios');\r\n context.commit('SET_ENDBUSY', null, { root: true });\r\n },\r\n async fetchSubModels(context, onlyStatus) {\r\n if (!onlyStatus) context.commit('SET_STARTBUSY', null, { root: true });\r\n await axios.get('/api/models/' + context.getters.getModel.id + '/submodels').then(async response => {\r\n context.commit('SET_SUBMODELS', response.data);\r\n if (router.currentRoute.query.subModelId != null) {\r\n context.dispatch('setSubModelById', router.currentRoute.query.subModelId);\r\n } else if (context.state.subModel == null) {\r\n await context.dispatch('setSubModel', response.data[0]);\r\n }\r\n context.commit('SET_ENDBUSY', null, { root: true });\r\n }).catch((error) => {\r\n context.commit('SET_ERROR', error, { root: true })\r\n })\r\n },\r\n async setSubModel(context, subModel) {\r\n context.commit('SET_SUBMODEL', subModel);\r\n context.commit('SET_LOCATIONCATCHMENTAREA', null);\r\n if (context.state.scenario?.status == 9) {\r\n context.dispatch('fetchCatchmentArea')\r\n }\r\n context.dispatch('updatePath');\r\n },\r\n async setSubModelById(context, subModelId) {\r\n let subModelToSet: any = null;\r\n context.state.subModels.forEach(function (subModel: any) {\r\n if (subModelToSet == null) subModelToSet = subModel;\r\n if (subModel.id == subModelId) {\r\n subModelToSet = subModel;\r\n return;\r\n }\r\n });\r\n context.dispatch('setSubModel', subModelToSet);\r\n },\r\n async setModelById(context, modelId) {\r\n let modelToSet: any = null;\r\n context.state.models.forEach(function (model: any) {\r\n if (modelToSet == null) modelToSet = model;\r\n if (model.id == modelId) {\r\n modelToSet = model;\r\n return;\r\n }\r\n });\r\n context.dispatch('setModel', modelToSet);\r\n },\r\n async fetchScenarios(context, onlyStatus = false) {\r\n if (onlyStatus == true && context.state.scenario) {\r\n await axios.get('/api/models/' + context.getters.getModel.id + \"/scenarios/only-status\").then(async response => {\r\n response.data.forEach(function (scenario: any) {\r\n let setLocation = false;\r\n if (context.state.scenario != null) {\r\n if (scenario.id == context.state.scenario.id && scenario.status != context.state.scenario.status && scenario.status == 9) {\r\n if (context.state.location != null) setLocation = true;\r\n }\r\n }\r\n context.state.scenarios.forEach(function (existingScenario: any) {\r\n if (existingScenario.id == scenario.id) {\r\n existingScenario.status = scenario.status;\r\n context.state.readOnly = !(scenario.status == 0 || scenario.status == 9 || scenario.status == 10);\r\n }\r\n\r\n });\r\n //The location needs to be set after the status of the scenario is set.\r\n if (setLocation) context.dispatch('setLocation', context.state.location);\r\n });\r\n \r\n }).catch((error) => {\r\n context.commit('SET_ERROR', error, { root: true })\r\n })\r\n }\r\n if (onlyStatus == false) {\r\n context.commit('SET_STARTBUSY', null, { root: true });\r\n await axios.get('/api/models/' + context.getters.getModel.id + \"/scenarios\").then(async response => {\r\n \r\n context.commit('SET_SCENARIOS', response.data);\r\n\r\n \r\n if (router.currentRoute.query.scenarioId != null) { // && router.currentRoute.query.scenarioId != '-1'\r\n await context.dispatch('setScenarioById', router.currentRoute.query.scenarioId);\r\n } else if (context.state.scenario == null) {\r\n context.state.scenarios.forEach(async function (scenario: any) {\r\n \r\n if (scenario.parentScenarioId == null) {\r\n await context.dispatch('setScenario', scenario);\r\n }\r\n });\r\n }\r\n \r\n \r\n\r\n context.commit('SET_ENDBUSY', null, { root: true });\r\n }).catch((error) => {\r\n context.commit('SET_ERROR', error, { root: true })\r\n })\r\n }\r\n },\r\n \r\n async fetchScenarioLocations(context, scenario) {\r\n context.commit('SET_STARTBUSY', null, { root: true });\r\n await axios.get('/api/models/scenarios/' + scenario.id + '/locations-of-scenarios').then(async response => {\r\n response.data.forEach(function (location: any) {\r\n location[\"lat\"] = location.latitude;\r\n location[\"lng\"] = location.longitude;\r\n location[\"coords\"] = [location.longitude, location.latitude];\r\n });\r\n context.commit('SET_SCENARIOLOCATIONS', response.data);\r\n context.commit('SET_ENDBUSY', null, { root: true });\r\n }).catch((error) => {\r\n context.commit('SET_ERROR', error, { root: true })\r\n })\r\n },\r\n\r\n async fetchAndSetScenarioChanges(context, scenario) {\r\n await axios.get('/api/models/scenarios/' + scenario.id + '/changes').then(async response => {\r\n scenario.changes = response.data;\r\n })\r\n },\r\n\r\n async setScenario(context, scenario) {\r\n context.commit('SET_SCENARIO', scenario);\r\n if (context.state.fetchCatchmentAreaBusy != null) {\r\n context.state.fetchCatchmentAreaBusy.cancel();\r\n }\r\n context.state.readOnly = !(scenario.status == 0 || scenario.status == 9 || scenario.status == 10);\r\n context.dispatch('updatePath');\r\n await context.dispatch('fetchLocations');\r\n await context.dispatch('fetchScenarioLocations', scenario);\r\n //for (const location of context.state.locations as any[]) {\r\n // if (location.changeType !== 0) {\r\n // console.log('setting location', location);\r\n // await context.dispatch('setLocationById', location.id);\r\n // break; // Stop the loop after setting the location\r\n // }\r\n //}\r\n if (scenario.changeCount == 1) {\r\n context.state.locations.forEach(async function (location: any) {\r\n if (location.changeType != 0) await context.dispatch('setLocationByIdWithFocus', location.id);\r\n });\r\n }\r\n },\r\n async setScenarioById(context, scenarioId) {\r\n let scenarioToSet: any = null;\r\n context.state.scenarios.forEach(function (scenario: any) {\r\n if (scenarioToSet == null) scenarioToSet = scenario;\r\n if (scenario.id == scenarioId) {\r\n scenarioToSet = scenario;\r\n return;\r\n }\r\n });\r\n if (scenarioToSet != null) await context.dispatch('setScenario', scenarioToSet);\r\n },\r\n async fetchLocations(context) {\r\n if (context.state.scenario != null) {\r\n context.commit('SET_STARTBUSY', null, { root: true });\r\n await axios.get('/api/models/scenarios/' + context.state.scenario.id + '/locations').then(async response => {\r\n response.data.forEach(function (location: any) {\r\n location[\"lat\"] = location.latitude;\r\n location[\"lng\"] = location.longitude;\r\n location[\"coords\"] = [location.longitude, location.latitude];\r\n location[\"values\"] = null;\r\n })\r\n context.commit('SET_LOCATIONS', response.data.sort(function (a: any, b: any) {\r\n const nameA = a.name.toUpperCase(); // ignore upper and lowercase\r\n const nameB = b.name.toUpperCase(); // ignore upper and lowercase\r\n return nameA.localeCompare(nameB);\r\n\r\n }));\r\n if (router.currentRoute.query.locationId != null) {\r\n await context.dispatch('setLocationById', router.currentRoute.query.locationId);\r\n }\r\n context.commit('SET_ENDBUSY', null, { root: true });\r\n context.commit('SET_DATABASESTATUS', 2, { root: true });\r\n }).catch((error) => {\r\n context.commit('SET_ERROR', error, { root: true })\r\n })\r\n }\r\n },\r\n async fetchMatchingLocations(context) {\r\n if (context.state.location != null && context.state.scenario != null) {\r\n context.commit('SET_STARTBUSY', null, { root: true });\r\n return axios.get('/api/models/' + context.state.subModel.id + '/scenarios/' + context.state.scenario.id + '/locations/' + context.state.location.id + \"/matching-locations?topN=11\").then(response => {\r\n context.commit('SET_MATCHINGLOCATIONS', response.data);\r\n context.commit('SET_ENDBUSY', null, { root: true });\r\n }).catch((error) => {\r\n context.commit('SET_ERROR', error, { root: true })\r\n })\r\n }\r\n else {\r\n context.commit('SET_MATCHINGLOCATIONS', null);\r\n }\r\n },\r\n async fetchMatchingScores(context) {\r\n if (context.state.location != null && context.state.scenario != null) {\r\n context.commit('SET_STARTBUSY', null, { root: true });\r\n return axios.get('/api/models/' + context.state.subModel.id + '/scenarios/' + context.state.scenario.id + '/locations/' + context.state.location.id + \"/matching-scores?topN=6\").then(response => {\r\n context.commit('SET_MATCHINGSCORES', response.data);\r\n context.commit('SET_ENDBUSY', null, { root: true });\r\n }).catch((error) => {\r\n context.commit('SET_ERROR', error, { root: true })\r\n })\r\n }\r\n else {\r\n context.commit('SET_MATCHINGSCORES', null);\r\n }\r\n },\r\n async fetchOnlinePois(context) {\r\n return; //skip this part now\r\n if (context.state.location != null && context.state.scenario != null) {\r\n context.commit('SET_STARTBUSY', null, { root: true });\r\n return axios.get('/api/models/onlinepois/' + context.state.location.id).then(response => {\r\n response.data.forEach(function (point: any) {\r\n point[\"lat\"] = point.latitude;\r\n point[\"lng\"] = point.longitude;\r\n point[\"coords\"] = [point.longitude, point.latitude];\r\n })\r\n context.commit('SET_LOCATIONONLINEPOIS', response.data);\r\n context.commit('SET_ENDBUSY', null, { root: true });\r\n }).catch((error) => {\r\n context.commit('SET_ERROR', error, { root: true })\r\n })\r\n }\r\n else {\r\n context.commit('SET_LOCATIONONLINEPOIS', null);\r\n }\r\n },\r\n async fetchLocationScores(context) {\r\n context.commit('SET_STARTBUSY', null, { root: true });\r\n axios.get('/api/models/' + context.state.subModel.id + '/scenarios/' + context.state.scenario.id + '/locations/' + context.state.location.id + '/scores').then(response => {\r\n context.commit('SET_LOCATIONSCORES', response.data);\r\n context.commit('SET_ENDBUSY', null, { root: true });\r\n }).catch((error) => {\r\n context.commit('SET_ERROR', error, { root: true })\r\n })\r\n },\r\n async fetchDriversForLocation(context) {\r\n if (context.state.location != null && context.state.scenario != null) {\r\n context.commit('SET_STARTBUSY', null, { root: true });\r\n return axios.get('/api/models/scenarios/' + context.state.scenario.id + '/locations/' + context.state.location.id + '/drivers').then(response => {\r\n context.commit('SET_LOCATIONDRIVERS', response.data);\r\n context.commit('SET_ENDBUSY', null, { root: true });\r\n }).catch((error) => {\r\n context.commit('SET_ERROR', error, { root: true })\r\n })\r\n }\r\n else {\r\n context.commit('SET_LOCATIONDRIVERS', null);\r\n }\r\n },\r\n async updatePath(context) {\r\n\r\n let path = '/';\r\n if (context.state.model != null) path += '?modelId=' + context.state.model.id; else if (router.currentRoute.query.modelId != null) path += \"?modelId=\" + router.currentRoute.query.modelId; else path += '?modelId=-1';\r\n if (context.state.subModel != null) path += '&subModelId=' + context.state.subModel.id; else if (router.currentRoute.query.subModelId != null) path += \"&subModelId=\" + router.currentRoute.query.subModelId; //else path += '&subModelId=-1';\r\n if (context.state.scenario != null) path += '&scenarioId=' + context.state.scenario.id; else if (router.currentRoute.query.scenarioId != null) path += \"&scenarioId=\" + router.currentRoute.query.scenarioId; //else path += '&scenarioId=-1';\r\n if (context.state.location != null) path += '&locationId=' + context.state.location.id; else if (router.currentRoute.query.locationId != null) path += \"&locationId=\" + router.currentRoute.query.locationId; //else path += '&locationId=-1';\r\n router.push(path).catch(err => {\r\n // Ignore the vuex err regarding navigating to the page they are already on.\r\n if (err.name != \"NavigationDuplicated\") {\r\n // But print any other errors to the console\r\n console.error(err);\r\n }\r\n })\r\n },\r\n async setLocationByIdWithFocus(context, locationId) {\r\n let locationToSet: any = null;\r\n if (context.state.locations != null && locationId != null) {\r\n context.state.locations.forEach(function (location: any) {\r\n if (location.id == locationId) {\r\n locationToSet = location;\r\n locationToSet[\"zoomTo\"] = true;\r\n return;\r\n }\r\n });\r\n }\r\n await context.dispatch('setLocation', locationToSet);\r\n },\r\n async setLocationById(context, locationId) {\r\n let locationToSet: any = null;\r\n if (context.state.locations != null && locationId != null) {\r\n context.state.locations.forEach(function (location: any) {\r\n if (location.id == locationId) {\r\n locationToSet = location;\r\n return;\r\n }\r\n });\r\n }\r\n await context.dispatch('setLocation', locationToSet);\r\n },\r\n async setLocation(context, location) {\r\n context.commit('SET_STARTBUSY', null, { root: true });\r\n if (context.state.location == location) {\r\n location = null; \r\n if (context.state.fetchCatchmentAreaBusy != null) {\r\n context.state.fetchCatchmentAreaBusy.cancel();\r\n }\r\n }\r\n context.commit('SET_LOCATION', location);\r\n context.commit('SET_LOCATIONPHOTO', null);\r\n context.commit('SET_LOCATIONONLINEPOIS', null);\r\n context.commit('SET_LOCATIONISOLINES', null);\r\n context.commit('SET_ISOLINEMINUTES', 0);\r\n context.commit('SET_LOCATIONPROPERTIES', null);\r\n context.commit('SET_LOCATIONCATCHMENTAREA', null);\r\n context.commit('SET_MATCHINGLOCATIONS', null);\r\n if (location != null && location.visibility == 0) {\r\n context.dispatch('fetchMatchingLocations');\r\n context.dispatch('fetchMatchingScores');\r\n context.dispatch('fetchOnlinePois');\r\n if (context.state.scenario.status == 9) {\r\n\r\n context.dispatch('fetchCatchmentArea')\r\n }\r\n context.commit('SET_STARTBUSY', null, { root: true });\r\n await axios.get('/api/models/scenarios/' + context.state.scenario.id + '/locations/' + location.id + '/properties').then(response => {\r\n context.dispatch('setLocationPropertiesVisibility', response.data);\r\n context.commit('SET_LOCATIONPROPERTIES', response.data);\r\n context.dispatch('updatePath');\r\n context.commit('SET_ENDBUSY', null, { root: true });\r\n }).catch((error) => {\r\n context.commit('SET_ERROR', error, { root: true })\r\n })\r\n if (context.state.model.displayLocationPhoto) {\r\n context.commit('SET_STARTBUSY', null, { root: true });\r\n axios.get('/api/models/scenarios/locations/' + location.id + '/photo').then(response => {\r\n context.state.locationPhoto = response.data;\r\n context.commit('SET_ENDBUSY', null, { root: true });\r\n }).catch((error) => {\r\n context.commit('SET_ERROR', error, { root: true })\r\n })\r\n }\r\n }\r\n context.commit('SET_ENDBUSY', null, { root: true });\r\n },\r\n async setLocationPropertiesVisibility(context, properties) {\r\n let locationGroup = null;\r\n if (context.state.locationEditing != null) {\r\n locationGroup = context.state.model.locationGroups.find(\r\n (group: any) => group.id == context.state.locationEditing.locationGroup\r\n );\r\n } else if (context.state.location != null) {\r\n locationGroup = context.state.model.locationGroups.find(\r\n (group: any) => group.id == context.state.location.locationGroupId\r\n );\r\n }\r\n const locationGroupCode = locationGroup ? locationGroup.code : null;\r\n if (properties != null) {\r\n const extendedProperties = [...properties, { name: 'LocationGroupCode', numberValue: null, stringValue: locationGroupCode }];\r\n properties.forEach(function (property: any) {\r\n\r\n\r\n if (property.dependencyExpression != null) {\r\n let expression: any = property.dependencyExpression.replace(/\\[[a-zA-Z0-9_\\s]*\\]*/g, function (v: any) { return v.toUpperCase(); });\r\n extendedProperties.forEach(function (subproperty: any) {\r\n expression = expression.replace('[' + subproperty.name.toUpperCase() + ']', ['\\'' + subproperty.stringValue + '\\'', subproperty.numberValue].join(''));\r\n });\r\n try {\r\n property['visible'] = new Expression(expression).Evaluate();\r\n }\r\n catch (error) {\r\n\r\n console.error('An error occured with the NCalc expression : ' + property.dependencyExpression, error, extendedProperties);\r\n property['visible'] = true;\r\n }\r\n }\r\n else {\r\n property['visible'] = true;\r\n }\r\n });\r\n }\r\n \r\n },\r\n async fetchLocationIsoLines(context) {\r\n if (context.state.location != null && (context.state.isoLinesFetchingBusy == null || context.state.isoLinesFetchingBusy != context.state.location.id)) {\r\n context.state.isoLinesFetchingBusy = context.state.location.id;\r\n if (context.state.locationIsoLines == null) {\r\n context.commit('SET_STARTINPROGRESS', null, { root: true });\r\n axios.get('/api/models/scenarios/locations/' + context.state.location.id + '/isolines').then(response => {\r\n if (context.state.isoLinesFetchingBusy == context.state.location.id) {\r\n response.data.features.forEach(function (feature: any) {\r\n feature.properties['zIndex'] = 3\r\n feature.properties['fillOpacity'] = 0\r\n feature.properties['strokeOpacity'] = 0.5\r\n feature.properties['strokeColor'] = '#0000CC'\r\n feature.properties['strokeWeight'] = 5\r\n });\r\n context.commit('SET_LOCATIONISOLINES', response.data)\r\n }\r\n context.state.isoLinesFetchingBusy = context.state.location.id;\r\n context.commit('SET_ENDINPROGRESS', null, { root: true });\r\n }).catch((error) => {\r\n context.state.isoLinesFetchingBusy = null;\r\n context.commit('SET_ENDINPROGRESS', error, { root: true });\r\n \r\n })\r\n }\r\n \r\n }\r\n },\r\n async fetchIsoLine(context, payload) {\r\n context.commit('SET_STARTBUSY', null, { root: true });\r\n axios.get('/api/isoline/' + payload.isoLineSetId + '?longitude=' + context.state.location.lng + '&latitude=' + context.state.location.lat + '&minutes=' + payload.minutes + '&profile=' + payload.profile + '&baseUrl=' + encodeURIComponent(payload.baseUrl) + '¶meters=' + encodeURIComponent(payload.parameters)).then(async response => {\r\n response.data.features.forEach(function (feature: any) {\r\n feature.properties['zIndex'] = 3\r\n feature.properties['fillOpacity'] = 0\r\n feature.properties['strokeOpacity'] = 0.5\r\n feature.properties['strokeColor'] = '#0000CC'\r\n feature.properties['strokeWeight'] = 5\r\n });\r\n context.commit('SET_LOCATIONISOLINES', response.data);\r\n context.commit('SET_ENDBUSY', null, { root: true });\r\n }).catch((error) => {\r\n context.commit('SET_ERROR', error, { root: true })\r\n })\r\n },\r\n \r\n async fetchCatchmentArea(context) {\r\n if (context.state.locationCatchmentArea?.catchmentAreaId != context.state.catchmentArea?.catchmentAreaId) {\r\n\r\n context.commit('SET_LOCATIONCATCHMENTAREA', null);\r\n if (context.state.fetchCatchmentAreaBusy != null) {\r\n context.state.fetchCatchmentAreaBusy.cancel();\r\n context.state.fetchCatchmentAreaBusy = null;\r\n\r\n }\r\n if (context.state.catchmentArea != null) {\r\n (async () => {\r\n while (context.state.fetchCatchmentAreaBusy != null)\r\n await new Promise(resolve => setTimeout(resolve, 1000));\r\n context.state.fetchCatchmentAreaBusy = axios.CancelToken.source();\r\n if (context.state.location == null) {\r\n context.state.fetchCatchmentAreaBusy = null;\r\n }\r\n else {\r\n if (context.state.location.changeType != 2) {\r\n // Only fetch the catchment area if the location is not removed.\r\n context.commit('SET_STARTINPROGRESS', null, { root: true });\r\n axios.get('/api/models/' + context.state.subModel.id + '/scenarios/' + context.state.scenario.id + '/locations/' + context.state.location.id + '/catchment-areas/' + context.state.catchmentArea.catchmentAreaId, {\r\n cancelToken: context.state.fetchCatchmentAreaBusy.token\r\n }).then(async (response) => {\r\n if (response.data.featureCollection != null) response.data.featureCollection.features = filterPointTypeGeometries(response.data.featureCollection.features);\r\n context.commit('SET_LOCATIONCATCHMENTAREA', response.data);\r\n context.state.fetchCatchmentAreaBusy = null;\r\n context.commit('SET_ENDINPROGRESS', null, { root: true });\r\n }).catch((error) => {\r\n if (!axios.isCancel(error)) {\r\n context.commit('SET_ERROR', error, { root: true })\r\n }\r\n else {\r\n context.commit('SET_ENDINPROGRESS', null, { root: true });\r\n context.state.fetchCatchmentAreaBusy = null;\r\n }\r\n })\r\n }\r\n else {\r\n context.state.fetchCatchmentAreaBusy = null;\r\n }\r\n }\r\n })();\r\n }\r\n }\r\n },\r\n async fetchArea(context, payload) {\r\n context.commit('SET_STARTINPROGRESS', null, { root: true });\r\n let url = '/api/models/' + context.state.model.id + '/areasets/' + payload.areaSetId + '/areas/';\r\n if (payload.arguments && payload.arguments.latitude) {\r\n url += payload.arguments.longitude + '/' + payload.arguments.latitude;\r\n }\r\n else {\r\n url += payload.areaCode\r\n }\r\n url += '/properties'\r\n axios.get(url).then(response => {\r\n if (response.data.areaCode == null) {\r\n context.commit('SET_AREA', null)\r\n }\r\n else {\r\n if (response.data.featureCollection != null) response.data.featureCollection = filterPointTypeGeometries(response.data.featureCollection.features);\r\n context.commit('SET_AREA', response.data)\r\n }\r\n context.commit('SET_ENDINPROGRESS', null, { root: true });\r\n }).catch((error) => {\r\n if (error.response.status != 404) {\r\n context.commit('SET_ERROR', error, { root: true });\r\n }\r\n else {\r\n context.commit('SET_ENDINPROGRESS', null, { root: true });\r\n }\r\n })\r\n },\r\n async fetchAreaWithLocations(context, payload) {\r\n context.commit('SET_STARTBUSY', null, { root: true });\r\n let url = '/api/models/' + context.state.subModel.id + '/scenarios/' + context.state.scenario.id + '/catchment-areas/' + context.state.catchmentArea.catchmentAreaId + '/areas/';\r\n if (payload.arguments && payload.arguments.latitude) {\r\n url += payload.arguments.longitude + '/' + payload.arguments.latitude;\r\n }\r\n else {\r\n url += payload.areaCode\r\n }\r\n url += '/properties'\r\n axios.get(url).then(response => {\r\n if (response.data.areaCode == null) {\r\n context.commit('SET_AREA', null)\r\n }\r\n else {\r\n if (response.data.featureCollection != null) response.data.featureCollection = filterPointTypeGeometries(response.data.featureCollection.features);\r\n context.commit('SET_AREA', response.data)\r\n }\r\n context.commit('SET_ENDBUSY', null, { root: true });\r\n }).catch((error) => {\r\n if (error.response.status != 404) {\r\n context.commit('SET_ERROR', error, { root: true });\r\n }\r\n else {\r\n\r\n context.commit('SET_ENDBUSY', null, { root: true });\r\n }\r\n })\r\n },\r\n async clearArea(context, payload) {\r\n context.commit('SET_STARTBUSY', null, { root: true });\r\n context.commit('SET_AREA', null);\r\n context.commit('SET_ENDBUSY', null, { root: true });\r\n },\r\n async editExistingLocation(context, payload) {\r\n context.commit('SET_STARTBUSY', null, { root: true });\r\n const locationProperties: any = [];\r\n context.state.locationProperties.forEach(function (locationProperty: any) {\r\n if (locationProperty.type == 1) { //locatie en dus geen groep of cluster\r\n if (context.state.location.changeType == 1) {\r\n //nieuwe vestiging die bewerkt wordt\r\n if (locationProperty.autoCalculateType == null && locationProperty.propertyType != 4 && locationProperty.propertyType != 5 && locationProperty.propertyType != 6 && locationProperty.propertyType != 1 && locationProperty.propertyType != 3) {\r\n locationProperties.push(Object.assign({}, locationProperty)); \r\n }\r\n }\r\n else {\r\n //bestaande vestiging (changetype 0 of 3)\r\n if (locationProperty.autoCalculateType == null && locationProperty.propertyType != 4 && locationProperty.propertyType != 5 && locationProperty.propertyType != 6 && locationProperty.propertyType != 2 && locationProperty.propertyType != 1) { // property type 4 = output, property type 2 = read only existing, 1 = readolny\r\n locationProperties.push(Object.assign({}, locationProperty)); \r\n }\r\n }\r\n }\r\n });\r\n const newLocation = cloneLocation(context.state.location);\r\n newLocation.locationGroup = newLocation.locationGroupId;\r\n newLocation.locationCluster = newLocation.locationClusterId;\r\n const location = { ...newLocation, locationProperties: locationProperties };\r\n await axios.get('/api/models/' + context.state.model.id + '/location-clusters/near-by/5?latitude=' + location.lat + '&longitude=' + location.lng).then(response => {\r\n location['locationClusters'] = response.data;\r\n }).catch((error) => {\r\n context.commit('SET_ERROR', error, { root: true })\r\n })\r\n context.commit('SET_LOCATIONEDITING', location);\r\n context.commit('SET_ENDBUSY', null, { root: true });\r\n },\r\n async fetchPropertiesChartData(context, payload) {\r\n if (payload != null && payload.locationProperty1 != null && payload.locationProperty2 != null) {\r\n context.commit('SET_STARTBUSY', null, { root: true });\r\n await axios.get('/api/models/scenarios/' + context.state.scenario.id + '/locations/' + context.state.location.id + '/property-values/' + payload.locationProperty1.id + '/' + payload.locationProperty2.id).then(response => {\r\n context.state.propertiesChart.data = response.data;\r\n }).catch((error) => {\r\n context.commit('SET_ERROR', error, { root: true })\r\n })\r\n context.commit('SET_ENDBUSY', null, { root: true });\r\n }\r\n },\r\n async findScenarios(context, searchString) {\r\n context.commit('SET_STARTBUSY', null, { root: true });\r\n if (searchString == null) {\r\n context.state.foundScenarioIds = null;\r\n }\r\n else {\r\n await axios.get('/api/models/' + context.state.model.id + '/find-scenarios/' + encodeURIComponent(searchString)).then(response => {\r\n context.state.foundScenarioIds = new Set(response.data);\r\n }).catch((error) => {\r\n context.commit('SET_ERROR', error, { root: true })\r\n })\r\n }\r\n context.commit('SET_ENDBUSY', null, { root: true });\r\n \r\n },\r\n async showPropertiesChart(context) {\r\n context.commit('SET_STARTBUSY', null, { root: true });\r\n await axios.get('/api/models/' + context.state.model.id + '/location-properties').then(response => {\r\n context.commit('SET_PROPERTIESCHART', { properties: response.data, data: null });\r\n context.commit('SET_ENDBUSY', null, { root: true });\r\n }).catch((error) => {\r\n context.commit('SET_ERROR', error, { root: true })\r\n })\r\n },\r\n async editNewLocation(context, payload) {\r\n context.commit('SET_STARTBUSY', null, { root: true });\r\n await axios.get('/api/models/' + + context.state.model.id + '/new-location-properties').then(response => {\r\n response.data.forEach(function (scenario: any) {\r\n scenario['value'] = null;\r\n });\r\n const locationProperties: any = [];\r\n response.data.forEach(function (locationProperty: any) {\r\n if (locationProperty.autoCalculateType == null && locationProperty.propertyType != 4 && locationProperty.propertyType != 1 && locationProperty.propertyType != 3) {\r\n if (locationProperty.defaultValue != null) {\r\n if (locationProperty.dataType == 0) locationProperty.stringValue = locationProperty.defaultValue;\r\n if (locationProperty.dataType > 0) locationProperty.numberValue = Number(locationProperty.defaultValue);\r\n }\r\n locationProperties.push(locationProperty)\r\n }\r\n if (locationProperty.choices != null) {\r\n locationProperty.choices.forEach(function (choice: any) {\r\n if (locationProperty.dataType > 0) choice.key = Number(choice.key);\r\n })\r\n }\r\n });\r\n payload['locationProperties'] = locationProperties;\r\n }).catch((error) => {\r\n context.commit('SET_ERROR', error, { root: true })\r\n })\r\n await axios.get('/api/models/' + context.state.model.id + '/location-clusters/near-by/5?latitude=' + payload.latitude + '&longitude=' + payload.longitude).then(response => {\r\n payload['locationClusters'] = response.data;\r\n }).catch((error) => {\r\n context.commit('SET_ERROR', error, { root: true })\r\n })\r\n //If there is only 1 location group, set it.\r\n if (context.state.model.locationGroups.length == 1 || (context.state.model.locationGroupMandatory && context.state.model.locationGroups.length > 0)) {\r\n payload['locationGroup'] = context.state.model.locationGroups.find((x: any) => x.selectable)?.id; \r\n }\r\n context.commit('SET_LOCATIONEDITING', payload);\r\n context.commit('SET_ENDBUSY', null, { root: true });\r\n },\r\n \r\n\r\n\r\n async saveLocationEditing(context, payload) {\r\n \r\n const locationEditing = context.state.locationEditing;\r\n context.commit('SET_LOCATIONEDITING', null);\r\n\r\n \r\n //if payload.id is set and changetype = 1 then it is and edit of an new location so don't ask scenario name.\r\n const scenarioName = payload.id && payload.changeType == 1 ? null : await context.dispatch('requestScenarioNameFromUser', locationEditing.scenarioCreation);\r\n context.commit('SET_STARTBUSY', null, { root: true });\r\n const scenarioId = (payload.scenarioCreation == null ? context.state.scenario.id : payload.scenarioCreation);\r\n\r\n if (payload.id) {\r\n await axios.put('api/models/' + context.state.model.id + '/scenarios/' + scenarioId + '/locations/' + context.state.location.id + '?createScenario=' + (payload.scenarioCreation != null) + (scenarioName != null ? '&overrideScenarioName=' + encodeURIComponent(scenarioName) : ''), locationEditing).then(async (response) => {\r\n await context.dispatch('fetchLocations', response.data.scenarioId);\r\n await context.dispatch('fetchScenarios', false);\r\n await context.dispatch('setScenarioById', response.data.scenarioId);\r\n await context.dispatch('setLocationById', response.data.locationId);\r\n context.commit('SET_ENDBUSY', null, { root: true });\r\n }).catch((error) => {\r\n context.commit('SET_ERROR', error, { root: true })\r\n })\r\n }\r\n else {\r\n await axios.post('api/models/scenarios/' + scenarioId + '/locations?createScenario=' + (payload.scenarioCreation != null) + (scenarioName != null ? '&overrideScenarioName=' + encodeURIComponent(scenarioName) : ''), locationEditing).then(async (response) => {\r\n await context.dispatch('fetchLocations', response.data.scenarioId);\r\n await context.dispatch('fetchScenarios', false);\r\n await context.dispatch('setScenarioById', response.data.scenarioId);\r\n await context.dispatch('setLocationById', response.data.locationId);\r\n context.commit('SET_ENDBUSY', null, { root: true });\r\n }).catch((error) => {\r\n context.commit('SET_ERROR', error, { root: true })\r\n })\r\n }\r\n await context.dispatch('requestCalculateScenarioFromUser');\r\n },\r\n \r\n \r\n async closeLocation(context, location) {\r\n context.state.locationClosing = { id: location.id, name: location.name };\r\n },\r\n\r\n async requestCalculateScenarioFromUser(context) {\r\n \r\n const res = await Vue.prototype.$confirm(i18n.t('message.confirmCalculateScenario'), { buttonTrueText: 'yes', buttonFalseText: 'no' });\r\n if (res) {\r\n await context.dispatch('calculateScenario',context.state.scenario);\r\n }\r\n },\r\n\r\n async requestScenarioNameFromUser(context,scenarioCreation) {\r\n let scenarioName = null;\r\n if (scenarioCreation == null && context.state.scenario.changeCount == 1) {\r\n context.commit('SET_SCENARIONAMEEDITING', { id: context.state.scenario.id, name: '' });\r\n while (!context.state.scenarioNameEditing.save) {\r\n await new Promise(resolve => setTimeout(resolve, 100)); // Adjust delay as needed\r\n }\r\n scenarioName = context.state.scenarioNameEditing.name;\r\n context.commit('SET_SCENARIONAMEEDITING', null);\r\n }\r\n return scenarioName;\r\n },\r\n\r\n async saveLocationClosing(context) {\r\n const locationClosing = context.state.locationClosing;\r\n context.state.locationClosing = null;\r\n const scenarioName = await context.dispatch('requestScenarioNameFromUser', locationClosing.scenarioCreation);\r\n context.commit('SET_STARTBUSY', null, { root: true });\r\n const scenarioId = (locationClosing.scenarioCreation == null ? context.state.scenario.id : locationClosing.scenarioCreation);\r\n await axios.delete('/api/models/scenarios/' + scenarioId + '/locations/' + locationClosing.id + '/close' + '?createScenario=' + (locationClosing.scenarioCreation != null) + (scenarioName != null ? '&overrideScenarioName=' + encodeURIComponent(scenarioName) : '')).then(async (response) => {\r\n await context.dispatch('fetchScenarios', false);\r\n await context.dispatch('setScenarioById', response.data.scenarioId);\r\n await context.dispatch('fetchLocations', response.data.scenarioId);\r\n await context.dispatch('setLocationById', response.data.locationId);\r\n context.commit('SET_ENDBUSY', null, { root: true });\r\n\r\n \r\n }).catch((error) => {\r\n context.commit('SET_ERROR', error, { root: true })\r\n })\r\n \r\n await context.dispatch('requestCalculateScenarioFromUser');\r\n },\r\n async undoCloseLocation(context, location) {\r\n let skipCalculate = false;\r\n context.commit('SET_STARTBUSY', null, { root: true });\r\n const scenarioId = context.state.scenario.id;\r\n await axios.put('/api/models/scenarios/' + context.state.scenario.id + '/locations/' + location.id + '/undo-close').then(async () => {\r\n await context.dispatch('fetchScenarios', false);\r\n if (context.state.scenario.changeCount == 1) context.commit('SET_NOTIFICATIONTEXT', i18n.t('message.scenarioNameAutomaticallyChangedNotificaton'), { root: true });\r\n if (scenarioId != context.state.scenario.id) {\r\n context.commit('SET_NOTIFICATIONTEXT', i18n.t('message.scenarioDeletedBecauseEmptyNotificaton'), { root: true });\r\n skipCalculate = true;\r\n }\r\n await context.dispatch('fetchLocations', null);\r\n context.commit('SET_ENDBUSY', null, { root: true });\r\n }).catch((error) => {\r\n context.commit('SET_ERROR', error, { root: true })\r\n })\r\n if (!skipCalculate) await context.dispatch('requestCalculateScenarioFromUser');\r\n },\r\n async undoEditLocation(context, location) {\r\n let skipCalculate = false;\r\n context.commit('SET_STARTBUSY', null, { root: true });\r\n const scenarioId = context.state.scenario.id;\r\n await axios.put('/api/models/scenarios/' + context.state.scenario.id + '/locations/' + location.id + '/undo-edit').then(async () => {\r\n await context.dispatch('fetchScenarios', false);\r\n if (context.state.scenario.changeCount == 1) context.commit('SET_NOTIFICATIONTEXT', i18n.t('message.scenarioNameAutomaticallyChangedNotificaton'), { root: true });\r\n if (scenarioId != context.state.scenario.id) {\r\n context.commit('SET_NOTIFICATIONTEXT', i18n.t('message.scenarioDeletedBecauseEmptyNotificaton'), { root: true });\r\n skipCalculate = true;\r\n }\r\n await context.dispatch('fetchLocations', null);\r\n //if (context.state.location != null && context.state.location.id == location.id) await context.dispatch('setLocationById', location.id);\r\n //await context.dispatch('setScenarioById', context.state.scenario.id);\r\n context.commit('SET_ENDBUSY', null, { root: true });\r\n }).catch((error) => {\r\n context.commit('SET_ERROR', error, { root: true })\r\n })\r\n if (!skipCalculate) await context.dispatch('requestCalculateScenarioFromUser');\r\n },\r\n\r\n async removeLocation(context, location) {\r\n let skipCalculate = false;\r\n context.commit('SET_STARTBUSY', null, { root: true });\r\n const scenarioId = context.state.scenario.id;\r\n await axios.delete('/api/models/scenarios/' + context.state.scenario.id + '/locations/' + location.id).then(async () => {\r\n await context.dispatch('fetchScenarios', false);\r\n if (context.state.scenario.changeCount == 1) context.commit('SET_NOTIFICATIONTEXT', i18n.t('message.scenarioNameAutomaticallyChangedNotificaton'), { root: true });\r\n if (scenarioId != context.state.scenario.id) {\r\n context.commit('SET_NOTIFICATIONTEXT', i18n.t('message.scenarioDeletedBecauseEmptyNotificaton'), { root: true });\r\n skipCalculate = true;\r\n }\r\n await context.dispatch('fetchLocations', null);\r\n context.commit('SET_ENDBUSY', null, { root: true });\r\n }).catch((error) => {\r\n context.commit('SET_ERROR', error, { root: true });\r\n })\r\n if (!skipCalculate) await context.dispatch('requestCalculateScenarioFromUser');\r\n },\r\n async calculateScenario(context,scenario) {\r\n context.commit('SET_STARTBUSY', null, { root: true });\r\n await axios.put('/api/models/scenarios/' + scenario.id + '/start-processing').then(function () {\r\n context.state.scenario.status = 1;\r\n context.commit('SET_ENDBUSY', null, { root: true });\r\n }).catch((error) => {\r\n context.commit('SET_ERROR', error, { root: true });\r\n })\r\n },\r\n \r\n async editScenario(context, payload) {\r\n context.commit('SET_STARTBUSY', null, { root: true });\r\n context.commit('SET_SCENARIOEDITING', payload);\r\n context.commit('SET_ENDBUSY', null, { root: true });\r\n },\r\n async editScenarioName(context, payload) {\r\n context.commit('SET_STARTBUSY', null, { root: true });\r\n context.commit('SET_SCENARIONAMEEDITING', payload);\r\n context.commit('SET_ENDBUSY', null, { root: true });\r\n },\r\n async saveScenarioEditing(context, payload) {\r\n context.commit('SET_STARTBUSY', null, { root: true });\r\n const scenarioEditing = payload != null ? payload : context.state.scenarioEditing;\r\n context.commit('SET_SCENARIOEDITING', null);\r\n context.commit('SET_SCENARIONAMEEDITING', null);\r\n if (scenarioEditing.id) {\r\n await axios.put('/api/models/' + context.state.model.id + '/scenarios', scenarioEditing).then(function () {\r\n null;\r\n }).catch((error) => {\r\n context.commit('SET_ERROR', error, { root: true });\r\n })\r\n }\r\n else {\r\n scenarioEditing.created = new Date();\r\n scenarioEditing.modified = new Date();\r\n await axios.post('/api/models/' + context.state.model.id + '/scenarios', scenarioEditing).then(response => {\r\n scenarioEditing.id = response.data;\r\n }).catch((error) => {\r\n context.commit('SET_ERROR', error, { root: true });\r\n })\r\n }\r\n await context.dispatch('fetchScenarios');\r\n context.dispatch('setScenarioById', scenarioEditing.id);\r\n \r\n context.commit('SET_ENDBUSY', null, { root: true });\r\n },\r\n async removeScenario(context,scenario) {\r\n context.commit('SET_STARTBUSY', null, { root: true });\r\n await axios.delete('/api/models/' + context.state.model.id + '/scenarios/' + scenario.id).then(async function () {\r\n context.state.scenario = null;\r\n await context.dispatch('fetchScenarios');\r\n context.commit('SET_ENDBUSY', null, { root: true });\r\n }).catch((error) => {\r\n context.commit('SET_ERROR', error, { root: true });\r\n })\r\n },\r\n async clearScenarioDifferences(context) {\r\n context.commit('SET_SCENARIODIFFERENCES', null);\r\n },\r\n async fetchScenarioDifferences(context) {\r\n context.commit('SET_STARTBUSY', null, { root: true });\r\n axios.get('/api/models/' + context.state.subModel.id + '/scenarios/' + context.state.scenario.id + '/differences?thresholdPercentage=0.001').then(response => {\r\n context.commit('SET_ENDBUSY', null, { root: true });\r\n const scenarioDifferences = response.data;\r\n //scenarioDifferences['locations'] = context.state.locations;\r\n context.commit('SET_SCENARIODIFFERENCES', scenarioDifferences);\r\n }).catch((error) => {\r\n context.commit('SET_ERROR', error, { root: true })\r\n })\r\n },\r\n async fetchScenarioParents(context) {\r\n context.commit('SET_STARTBUSY', null, { root: true });\r\n axios.get('/api/models/scenarios/' + context.state.scenario.id + '/parents').then(response => {\r\n context.commit('SET_ENDBUSY', null, { root: true });\r\n context.state.scenario[\"parents\"] = response.data;\r\n }).catch((error) => {\r\n context.commit('SET_ERROR', error, { root: true })\r\n })\r\n },\r\n};","import currencyFilter from '@/filters/currency.filter';\r\nimport fixedNumberFilter from '@/filters/fixedNumber.filter';\r\n\r\nexport const mutations = {\r\n SET_MODELS(state: any, models: any) {\r\n state.models = models;\r\n },\r\n SET_MODEL(state: any, model: any) {\r\n state.model = model;\r\n },\r\n SET_FILTER(state: any, filterLocations: any) {\r\n state.filterLocations = filterLocations;\r\n },\r\n SET_FILTERSCENARIOS(state: any, filterScenarios: any) {\r\n state.filterScenarios = filterScenarios;\r\n },\r\n SET_STANDBYFILTERLOCATIONS(state: any, standByFilterLocations: any) {\r\n state.standByFilterLocations = standByFilterLocations;\r\n },\r\n SET_STANDBYFILTERSCENARIOS(state: any, standByFilterScenarios: any) {\r\n state.standByFilterScenarios = standByFilterScenarios;\r\n },\r\n SET_SCENARIOLOCATIONSVISIBLE(state: any, scenarioLocationsVisible: boolean) {\r\n state.scenarioLocationsVisible = scenarioLocationsVisible;\r\n },\r\n SET_SUBMODELS(state: any, subModels: any) {\r\n state.subModels = subModels;\r\n },\r\n SET_SUBMODEL(state: any, subModel: any) {\r\n state.subModel = subModel;\r\n },\r\n SET_SCENARIOS(state: any, scenarios: any) {\r\n state.scenarios = scenarios;\r\n },\r\n SET_SCENARIOLOCATIONS(state: any, scenarioLocations: any) {\r\n state.scenarioLocations = scenarioLocations;\r\n },\r\n SET_LOG(state: any, log: any) {\r\n state.log = log;\r\n },\r\n SET_AREASETSVISIBLE(state: any, areaSetsVisible: any) {\r\n state.areaSetsVisible = areaSetsVisible;\r\n },\r\n SET_POISETSVISIBLE(state: any, poiSetsVisible: any) {\r\n state.poiSetsVisible = poiSetsVisible;\r\n },\r\n SET_HEATMAPSETSVISIBLE(state: any, heatMapSetsVisible: any) {\r\n state.heatMapSetsVisible = heatMapSetsVisible;\r\n },\r\n SET_SCENARIO(state: any, scenario: any) {\r\n state.scenario = scenario;\r\n },\r\n SET_DRIVERS(state: any, drivers: any) {\r\n state.drivers = drivers;\r\n },\r\n SET_SCENARIODIFFERENCES(state: any, scenarioDifferences: any) {\r\n state.scenarioDifferences = scenarioDifferences;\r\n },\r\n SET_LOCATIONS(state: any, locations: any) {\r\n state.locations = locations;\r\n \r\n state.locationsNotExcluded = locations?.filter((location: any) => !location.excluded).sort((a: any, b: any) => {\r\n if (a.changeType == 0) return 1;\r\n if (a.changeType > 0) return -1;\r\n return 0;\r\n });\r\n },\r\n SET_LOCATIONDRIVERS(state: any, locationDrivers: any) {\r\n state.locationDrivers = locationDrivers;\r\n },\r\n SET_LOCATIONPHOTO(state: any, locationPhoto: any) {\r\n state.locationPhoto = locationPhoto;\r\n },\r\n SET_MATCHINGLOCATIONS(state: any, matchingLocations: any) {\r\n state.matchingLocations = matchingLocations;\r\n },\r\n SET_MATCHINGSCORES(state: any, matchingScores: any) {\r\n state.matchingScores = matchingScores;\r\n },\r\n SET_PROPERTIESCHART(state: any, propertiesChart: any) {\r\n state.propertiesChart = propertiesChart;\r\n },\r\n SET_LOCATION(state: any, location: any) {\r\n state.location = location;\r\n },\r\n SET_LOCATIONPROPERTIES(state: any, locationProperties: any) {\r\n state.locationProperties = locationProperties;\r\n },\r\n SET_LOCATIONPROPERTIESOLD(state: any, locationProperties: any) {\r\n state.locationPropertiesOld = locationProperties;\r\n },\r\n SET_LOCATIONSCORES(state: any, locationScores: any) {\r\n state.locationScores = locationScores;\r\n },\r\n SET_LOCATIONISOLINES(state: any, locationIsoLines: any) {\r\n state.locationIsoLines = locationIsoLines;\r\n },\r\n \r\n SET_LOCATIONCATCHMENTAREA(state: any, locationCatchmentArea: any) {\r\n state.locationCatchmentArea = locationCatchmentArea;\r\n },\r\n \r\n SET_LOCATIONONLINEPOIS(state: any, onlinePois: any) {\r\n state.onlinePois = onlinePois;\r\n },\r\n SET_AREA(state: any, area: any) {\r\n state.area = area;\r\n },\r\n SET_MODELPARAMETERS(state: any, modelParameters: any) {\r\n state.modelParameters = modelParameters;\r\n },\r\n SET_SCENARIOPROCESSINGLOG(state: any, scenarioProcessingLog: any) {\r\n state.scenarioProcessingLog = scenarioProcessingLog;\r\n },\r\n SET_NORMALIZEDSCORESFUNCTIONS(state: any, normalizedScoresFunctions: any) {\r\n state.normalizedScoresFunctions = normalizedScoresFunctions;\r\n },\r\n SET_LOCATIONEDITING(state: any, locationEditing: any) {\r\n state.locationEditing = locationEditing;\r\n },\r\n SET_SCENARIOEDITING(state: any, scenarioEditing: any) {\r\n state.scenarioEditing = scenarioEditing;\r\n },\r\n SET_SCENARIONAMEEDITING(state: any, scenarioNameEditing: any) {\r\n state.scenarioNameEditing = scenarioNameEditing;\r\n },\r\n SET_SCENARIOMERGING(state: any, scenarioMerging: any) {\r\n state.scenarioMerging = scenarioMerging;\r\n },\r\n SET_SEARCHRESULTS(state: any, searchResults: any) {\r\n state.searchResults = searchResults;\r\n },\r\n SET_MAPBOUNDS(state: any, mapBounds: any) {\r\n state.mapBounds = mapBounds;\r\n },\r\n SET_POIS(state: any, pois: any) {\r\n state.pois = pois;\r\n },\r\n SET_HEATMAPPOINTS(state: any, heatMapPoints: any) {\r\n state.heatMapPoints = heatMapPoints;\r\n },\r\n SET_ISOLINEPARAMETERS(state: any, isoLineParameters: any) {\r\n state.isoLineParameters = isoLineParameters;\r\n },\r\n \r\n SET_ISOLINESET(state: any, isoLineSet: any) {\r\n state.isoLineSet = isoLineSet;\r\n \r\n },\r\n SET_ISOLINEMINUTES(state: any, isoLineMinutes: any) {\r\n state.isoLineMinutes = isoLineMinutes;\r\n },\r\n SET_CATCHMENTAREA(state: any, catchmentArea: any) {\r\n state.catchmentArea = catchmentArea;\r\n }\r\n\r\n\r\n \r\n};","import { Module } from 'vuex';\r\nimport { getters } from './getters';\r\nimport { actions } from './actions';\r\nimport { mutations } from './mutations';\r\nimport { MainState } from './types';\r\nimport { RootState } from '../types';\r\n\r\nexport const state: MainState = {\r\n filterLocations: '',\r\n standByFilterLocations: '',\r\n filterScenarios: '',\r\n standByFilterScenarios: '',\r\n scenarioLocationsVisible: false,\r\n searchResults: [],\r\n mapBounds: null,\r\n locationPhoto: null,\r\n models: [],\r\n model: null,\r\n subModels: [],\r\n subModel: null,\r\n areaSetsVisible: [],\r\n poiSetsVisible: [],\r\n heatMapSetsVisible: [],\r\n scenarios: [],\r\n foundScenarioIds: null,\r\n scenarioLocations: [],\r\n scenario: null,\r\n drivers: [],\r\n scenarioDifferences: null,\r\n locations: [],\r\n locationsNotExcluded: [],\r\n onlinePois: [],\r\n propertiesChart: null,\r\n matchingLocations: [],\r\n matchingScores: [],\r\n locationDrivers: null,\r\n location: null,\r\n locationProperties: null,\r\n locationPropertiesOld: null,\r\n locationScores: null,\r\n \r\n locationIsoLines: null,\r\n locationCatchmentArea: null,\r\n \r\n area: null,\r\n modelParameters: null,\r\n scenarioProcessingLog: null,\r\n normalizedScoresFunctions: null,\r\n locationEditing: null,\r\n locationClosing: null,\r\n scenarioEditing: null,\r\n scenarioNameEditing: null,\r\n scenarioMerging: null,\r\n fetchCatchmentAreaBusy: null,\r\n pois: [],\r\n heatMapPoints: [],\r\n readOnly: false,\r\n isoLinesFetchingBusy: null,\r\n log: null,\r\n isoLineParameters: null,\r\n matchingColors: ['#009CBB', '#00E396', '#FEB019', '#FF4560', '#775DD0', '#008FFB'],\r\n isoLineSet: null,\r\n isoLineMinutes: 0,\r\n catchmentArea: null,\r\n};\r\n\r\nconst namespaced = true;\r\n\r\nexport const main: Module = {\r\n namespaced,\r\n state,\r\n getters,\r\n actions,\r\n mutations,\r\n};\r\n","export const getters = {\r\n getUsers(state: any): object {\r\n return state.users;\r\n },\r\n getLogins(state: any): object {\r\n return state.logins;\r\n },\r\n getSelectedUser(state: any): object {\r\n return state.selectedUser;\r\n },\r\n getUserModels(state: any): object {\r\n return state.userModels;\r\n },\r\n getSelectedModel(state: any): object {\r\n return state.selectedModel;\r\n },\r\n getSelectedScenario(state: any): object {\r\n return state.selectedScenario;\r\n },\r\n getModelUsers(state: any): object {\r\n return state.modelUsers;\r\n },\r\n getModels(state: any): object {\r\n return state.models;\r\n },\r\n getScenarioStatus(state: any): object {\r\n return state.scenarioStatus;\r\n },\r\n getLoginEditing(state: any): object {\r\n return state.loginEditing;\r\n },\r\n};\r\n","import { ActionTree } from 'vuex';\r\nimport axios from 'axios';\r\nimport { AdminState } from './types';\r\nimport { RootState } from '../types';\r\nimport Vue from 'vue'\r\nimport { router } from \"../../main\";\r\n\r\nexport const actions: ActionTree = {\r\n\r\n async init(context) {\r\n \r\n \r\n context.commit('SET_DATABASESTATUS', 2, { root: true });\r\n context.commit('SET_DEBUG', true, { root: true });\r\n },\r\n\r\n async fetchUsers(context) {\r\n context.commit('SET_STARTBUSY', null, { root: true });\r\n axios.get('/api/admin/users').then(response => {\r\n context.commit('SET_ENDBUSY', null, { root: true });\r\n context.commit('SET_USERS', response.data);\r\n context.dispatch('setSelectedUser', null);\r\n }).catch((error) => {\r\n context.commit('SET_ERROR', error, { root: true })\r\n })\r\n },\r\n\r\n async fetchScenarioStatus(context) {\r\n context.commit('SET_STARTBUSY', null, { root: true });\r\n axios.get('/api/admin/scenarioStatus').then(response => {\r\n context.commit('SET_ENDBUSY', null, { root: true });\r\n context.commit('SET_SCENARIOSTATUS', response.data);\r\n \r\n }).catch((error) => {\r\n context.commit('SET_ERROR', error, { root: true })\r\n })\r\n },\r\n\r\n async fetchLogins(context) {\r\n context.commit('SET_STARTBUSY', null, { root: true });\r\n axios.get('/api/admin/logins').then(response => {\r\n context.commit('SET_ENDBUSY', null, { root: true });\r\n context.commit('SET_LOGINS', response.data);\r\n \r\n }).catch((error) => {\r\n context.commit('SET_ERROR', error, { root: true })\r\n })\r\n },\r\n\r\n async syncLogins(context) {\r\n context.commit('SET_STARTBUSY', null, { root: true });\r\n await axios.put('/api/admin/logins').then(async () => {\r\n context.dispatch('fetchUsers', null);\r\n if (context.state.selectedModel != null) {\r\n context.dispatch('fetchModelUsers', context.state.selectedModel.id);\r\n }\r\n context.commit('SET_ENDBUSY', null, { root: true });\r\n\r\n }).catch((error) => {\r\n context.commit('SET_ERROR', error, { root: true })\r\n })\r\n },\r\n async deleteLogin(context, id) {\r\n context.commit('SET_STARTBUSY', null, { root: true });\r\n await axios.delete('/api/admin/logins/' + id).then(async () => {\r\n context.dispatch('fetchLogins', null);\r\n context.commit('SET_ENDBUSY', null, { root: true });\r\n\r\n }).catch((error) => {\r\n context.commit('SET_ERROR', error, { root: true })\r\n })\r\n },\r\n\r\n async addLogin(context) {\r\n context.commit('SET_STARTBUSY', null, { root: true });\r\n await axios.post('/api/admin/logins/',context.state.loginEditing).then(response => {\r\n context.commit('SET_LOGINEDITING', response.data);\r\n context.dispatch('fetchLogins', null);\r\n context.commit('SET_ENDBUSY', null, { root: true });\r\n }).catch((error) => {\r\n context.commit('SET_ERROR', error, { root: true })\r\n })\r\n },\r\n\r\n\r\n async newLogin(context) {\r\n context.commit('SET_LOGINEDITING', {\r\n displayName: '',\r\n email: '',\r\n });\r\n },\r\n\r\n\r\n\r\n async fetchModels(context) {\r\n context.commit('SET_STARTBUSY', null, { root: true });\r\n axios.get('/api/admin/models').then(response => {\r\n context.commit('SET_ENDBUSY', null, { root: true });\r\n context.commit('SET_MODELS', response.data);\r\n context.dispatch('setSelectedModel', null);\r\n }).catch((error) => {\r\n context.commit('SET_ERROR', error, { root: true })\r\n })\r\n },\r\n\r\n async setSelectedUser(context, selectedUser) {\r\n context.commit('SET_SELECTEDUSER', selectedUser);\r\n if (selectedUser == null) {\r\n context.commit('SET_USERMODELS', null);\r\n } else {\r\n context.dispatch('fetchUserModels', selectedUser.id);\r\n }\r\n },\r\n\r\n async setSelectedModel(context, selectedModel) {\r\n context.commit('SET_SELECTEDMODEL', selectedModel);\r\n if (selectedModel == null) {\r\n context.commit('SET_MODELUSERS', null);\r\n } else {\r\n context.dispatch('fetchModelUsers', selectedModel.id);\r\n }\r\n },\r\n\r\n\r\n async setSelectedScenario(context, selectedScenario) {\r\n context.commit('SET_SELECTEDSCENARIO', selectedScenario);\r\n \r\n },\r\n\r\n async fetchUserModels(context, userId) {\r\n context.commit('SET_STARTBUSY', null, { root: true });\r\n axios.get('/api/admin/models/' + userId).then(response => {\r\n context.commit('SET_USERMODELS', response.data);\r\n context.commit('SET_ENDBUSY', null, { root: true });\r\n \r\n \r\n }).catch((error) => {\r\n context.commit('SET_ERROR', error, { root: true })\r\n })\r\n },\r\n\r\n async fetchModelUsers(context, modelId) {\r\n context.commit('SET_STARTBUSY', null, { root: true });\r\n axios.get('/api/admin/users/' + modelId).then(response => {\r\n context.commit('SET_ENDBUSY', null, { root: true });\r\n context.commit('SET_MODELUSERS', response.data);\r\n }).catch((error) => {\r\n context.commit('SET_ERROR', error, { root: true })\r\n })\r\n },\r\n\r\n async saveSelectedModel(context) {\r\n await axios.put('/api/admin/models', { model: context.state.selectedModel, users: context.state.modelUsers }).then(async () => {\r\n context.dispatch('fetchModelUsers', context.state.selectedModel.id);\r\n context.dispatch('fetchModels');\r\n context.commit('SET_ENDBUSY', null, { root: true });\r\n }).catch((error) => {\r\n context.commit('SET_ERROR', error, { root: true })\r\n })\r\n \r\n },\r\n\r\n async saveSelectedUser(context) {\r\n await axios.put('/api/admin/users', { user: context.state.selectedUser, models: context.state.userModels }).then(async () => {\r\n context.dispatch('fetchUserModels', context.state.selectedUser.id);\r\n context.dispatch('fetchUsers');\r\n context.commit('SET_ENDBUSY', null, { root: true });\r\n }).catch((error) => {\r\n context.commit('SET_ERROR', error, { root: true })\r\n })\r\n },\r\n async calculateUnprocessedScenarios(context, modelId) {\r\n context.commit('SET_STARTBUSY', null, { root: true });\r\n await axios.put('/api/admin/' + modelId + '/start-processing-unprocessed').then(function () {\r\n context.dispatch('fetchScenarioStatus');\r\n context.commit('SET_ENDBUSY', null, { root: true });\r\n }).catch((error) => {\r\n context.commit('SET_ERROR', error, { root: true });\r\n })\r\n },\r\n};\r\n","export const mutations = {\r\n SET_USERS(state: any, users: any) {\r\n state.users = users;\r\n },\r\n SET_LOGINS(state: any, logins: any) {\r\n state.logins = logins;\r\n },\r\n SET_USERMODELS(state: any, userModels: any) {\r\n state.userModels = userModels;\r\n },\r\n SET_MODELUSERS(state: any, modelUsers: any) {\r\n state.modelUsers = modelUsers;\r\n },\r\n SET_MODELS(state: any, models: any) {\r\n state.models = models;\r\n },\r\n SET_SELECTEDUSER(state: any, selectedUser: any) {\r\n state.selectedUser = selectedUser;\r\n },\r\n SET_SELECTEDMODEL(state: any, selectedModel: any) {\r\n state.selectedModel = selectedModel;\r\n },\r\n SET_SELECTEDSCENARIO(state: any, selectedScenario: any) {\r\n state.selectedScenario = selectedScenario;\r\n },\r\n SET_LOGINEDITING(state: any, loginEditing: any) {\r\n state.loginEditing = loginEditing;\r\n },\r\n SET_SCENARIOSTATUS(state: any, scenarioStatus: any) {\r\n state.scenarioStatus = scenarioStatus;\r\n },\r\n};\r\n","import { Module } from 'vuex';\r\nimport { getters } from './getters';\r\nimport { actions } from './actions';\r\nimport { mutations } from './mutations';\r\nimport { AdminState } from './types';\r\nimport { RootState } from '../types';\r\n\r\nexport const state: AdminState = {\r\n users: [],\r\n selectedUser: null,\r\n userModels: [],\r\n selectedModel: null,\r\n modelUsers: [],\r\n models: [],\r\n logins: [],\r\n scenarioStatus: [],\r\n selectedScenario: null,\r\n loginEditing: { \r\n displayName: '',\r\n email: '',\r\n },\r\n};\r\n\r\nconst namespaced = true;\r\n\r\nexport const admin: Module = {\r\n namespaced,\r\n state,\r\n getters,\r\n actions,\r\n mutations,\r\n};\r\n","import Vue from 'vue';\r\nimport Vuex, { StoreOptions } from 'vuex';\r\nimport { RootState } from './types';\r\nimport axios from 'axios';\r\nimport { msalPluginInstance } from \"@/plugins/msal\";\r\nimport createPersistedState from 'vuex-persistedstate';\r\n// @ts-ignore\r\nimport Cookies from 'js-cookie';\r\nimport { main } from './main/index';\r\nimport { admin } from './admin/index';\r\n\r\nVue.use(Vuex);\r\n\r\nconst store: StoreOptions = {\r\n state: {\r\n lastUserActionDateTime: Date.now(),\r\n error: null,\r\n debug: false,\r\n busy: 0,\r\n inProgress: 0,\r\n user: null,\r\n databaseStatus: 0,\r\n fileFormatCulture: 'nl',\r\n isLoggedIn: false,\r\n bearerToken: '',\r\n environment: '',\r\n version: '',\r\n notificationText: null\r\n \r\n },\r\n modules: {\r\n main,\r\n admin\r\n },\r\n plugins: [createPersistedState({\r\n paths: ['fileFormatCulture'],\r\n storage: {\r\n getItem: key => Cookies.get(key),\r\n setItem: (key: any, value: any ) => Cookies.set(key, value, { expires: 3, secure: true }),\r\n removeItem: key => Cookies.remove(key)\r\n }\r\n })],\r\n getters: {\r\n getBusy(state: any): object {\r\n return state.busy;\r\n },\r\n getDebug(state: any): object {\r\n return state.debug;\r\n },\r\n getInProgress(state: any): object {\r\n return state.inProgress;\r\n },\r\n getDatabaseStatus(state: any): object {\r\n return state.databaseStatus;\r\n },\r\n getError(state: any): object {\r\n return state.error;\r\n },\r\n getUser(state: any): object {\r\n return state.user;\r\n },\r\n getLastUserActionDateTime(state: any): object {\r\n return state.lastUserActionDateTime;\r\n },\r\n getLanguages(state: any): object {\r\n return state.languages;\r\n },\r\n getFileFormatCulture(state: any): object {\r\n return state.fileFormatCulture;\r\n },\r\n getIsLoggedIn(state: any): object {\r\n return state.isLoggedIn;\r\n },\r\n getBearerToken(state: any): object {\r\n return state.bearerToken;\r\n },\r\n getEnvironment(state: any): object {\r\n return state.environment;\r\n },\r\n getVersion(state: any): object {\r\n return state.version;\r\n },\r\n getNotificationText(state: any): object {\r\n return state.notificationText;\r\n },\r\n \r\n },\r\n mutations: {\r\n SET_VERSION(state, version) {\r\n state.version = version\r\n },\r\n SET_DEBUG(state, debug) {\r\n state.debug = debug\r\n },\r\n SET_DATABASESTATUS(state, databaseStatus) {\r\n state.databaseStatus = databaseStatus\r\n },\r\n SET_ERROR(state: any, payload: any) {\r\n if (payload != null) {\r\n state.busy = 0;\r\n state.inProgress = 0;\r\n \r\n console.error(payload);\r\n }\r\n state.error = payload;\r\n },\r\n SET_FILEFORMATCULTURE(state: any, payload: any) {\r\n state.fileFormatCulture = payload;\r\n },\r\n SET_USER(state: any, payload: any) {\r\n state.user = payload;\r\n },\r\n\r\n SET_STARTBUSY(state: any) {\r\n if (state.busy == null) {\r\n state.busy = 0;\r\n }\r\n state.busy++;\r\n \r\n \r\n },\r\n SET_STARTINPROGRESS(state: any) {\r\n if (state.inProgress == null) {\r\n state.inProgress = 0;\r\n }\r\n state.inProgress++;\r\n \r\n },\r\n SET_ENDBUSY(state: any) {\r\n if (state.busy == null) {\r\n state.busy = 0;\r\n }\r\n else {\r\n state.busy--;\r\n }\r\n state.lastUserActionDateTime = Date.now();\r\n \r\n \r\n },\r\n SET_ENDINPROGRESS(state: any) {\r\n if (state.inProgress == null) {\r\n state.inProgress = 0;\r\n }\r\n else {\r\n state.inProgress--;\r\n }\r\n state.lastUserActionDateTime = Date.now();\r\n \r\n \r\n },\r\n SET_NOTIFICATIONTEXT(state: any, text: string) {\r\n state.notificationText = text == null ? null : text;\r\n setTimeout(() => {\r\n state.notificationText = null;\r\n }, 10000); \r\n }\r\n \r\n \r\n },\r\n actions: {\r\n async loggedIn({ commit, dispatch }): Promise {\r\n try {\r\n await dispatch('waitForDatabase')\r\n const _self = this;\r\n axios.interceptors.request.use(async function (config: any) {\r\n const token = await msalPluginInstance.acquireToken();\r\n if (token != null) {\r\n config.headers.Authorization = `Bearer ${token}`;\r\n config.headers.Accept = 'application/json';\r\n _self.state.bearerToken = token as string;\r\n }\r\n \r\n return config;\r\n }, function (err) {\r\n return Promise.reject(err);\r\n });\r\n \r\n this.state.isLoggedIn = true;\r\n } finally {\r\n }\r\n },\r\n\r\n async downloadCsv(context: any, file: any) {\r\n context.commit('SET_STARTBUSY', null, { root: true });\r\n return axios.get(file.url).then(async response => {\r\n //only add the BOM if the content is not empty.\r\n const blob = response.data == '' ? new Blob([response.data], { type: 'application/pdf' }) : new Blob(['\\ufeff' + response.data], { type: 'text/csv' });\r\n const link = document.createElement('a');\r\n link.href = URL.createObjectURL(blob);\r\n link.download = file.name;\r\n link.click();\r\n URL.revokeObjectURL(link.href);\r\n context.commit('SET_ENDBUSY', null, { root: true });\r\n }).catch((error) => {\r\n context.commit('SET_ERROR', error, { root: true })\r\n })\r\n },\r\n\r\n\r\n \r\n\r\n async downloadFile(context: any, file: any) {\r\n \r\n context.commit('SET_STARTBUSY', null, { root: true });\r\n return axios.get(file.url, {\r\n responseType: 'arraybuffer',\r\n headers: {\r\n 'Accept': 'application/pdf'\r\n }\r\n }).then(async response => {\r\n const link = document.createElement('a');\r\n link.href = URL.createObjectURL(new Blob([response.data]));\r\n link.download = file.name;\r\n link.click();\r\n URL.revokeObjectURL(link.href);\r\n context.commit('SET_ENDBUSY', null, { root: true });\r\n }).catch((error) => {\r\n context.commit('SET_ERROR', error, { root: true })\r\n })\r\n },\r\n\r\n async waitForDatabase(context: any) {\r\n context.commit('SET_DATABASESTATUS', 1);\r\n \r\n axios.get('/api/system/environment').then(response => {\r\n this.state.environment = response.data;\r\n });\r\n axios.get('/api/system/version').then(response => {\r\n this.state.version = response.data;\r\n });\r\n return axios.get('/api/system/status').then(response => {\r\n if (response.data == true) {\r\n \r\n \r\n \r\n return;\r\n }\r\n setTimeout(function () {\r\n\r\n context.dispatch('waitForDatabase')\r\n }, 1000)\r\n\r\n }).catch(() => { //error\r\n // console.error(error);\r\n setTimeout(function () {\r\n\r\n context.dispatch('waitForDatabase')\r\n }, 1000)\r\n\r\n\r\n })\r\n\r\n },\r\n }\r\n};\r\n\r\nexport default new Vuex.Store(store);\r\n\r\n\r\n","const messages = {\r\n nl: {\r\n message: {\r\n selectedScenario: 'Geselecteerde scenario',\r\n submodel: 'Submodel',\r\n confirmCalculateScenario: 'Het scenario is gewijzigd. Wilt u het scenario doorrekenen?',\r\n search: 'Zoeken op de kaart',\r\n scenarioNameAutomaticallyChangedNotificaton: 'De naam van het scenario is automatisch aangepast omdat er nog maar 1 wijziging was.',\r\n scenarioDeletedBecauseEmptyNotificaton: 'Het scenario had geen wijzigingen meer en is daarom verwijderd.',\r\n setScenarioNameMessage: 'Omdat je een meervoudig scenario maakt, is het verplicht de naam van het scenario op te geven.',\r\n setScenarioName: 'Scenario naam',\r\n saveAddToNewScenario: 'Opslaan (in nieuw scenario)',\r\n saveAddToThisScenario: 'Opslaan (in huidige scenario)',\r\n saveAddToNewNestedScenario: 'Opslaan (in nieuw genest scenario)',\r\n saveEditInNewScenario: 'Opslaan (in nieuw scenario)',\r\n saveEditInThisScenario: 'Opslaan (in huidige scenario)',\r\n saveEditInNewNestedScenario: 'Opslaan (in nieuw genest scenario)',\r\n cancel: 'Annuleren',\r\n closeMessage: 'Je staat op het punt de locatie te sluiten.',\r\n closeLocation: 'Locatie sluiten',\r\n closeLocationInNewScenario: 'Locatie sluiten (in nieuw scenario)',\r\n closeLocationInThisScenario: 'Locatie sluiten (in huidig scenario)',\r\n closeLocationInNewNestedScenario: 'Locatie sluiten (in nieuw genest scenario)',\r\n calculateThisScenario: \"Doorrekenen huidige scenario\",\r\n\r\n\r\n nameRequired: 'Naam is verplicht',\r\n scenarioLocationsVisibleOnMap: 'Locaties van scenarios',\r\n scenarios: 'Scenarios',\r\n errorOccured: 'Nou, er is iets misgegaan. Er heeft zich een onverwachte fout voorgedaan, mogelijk als gevolg van een slechte internetverbinding. Sluit dit bericht en probeer de actie opnieuw. Als het probleem aanhoudt, vernieuw dan de pagina. Blijft de fout zich voordoen, controleer dan je internetverbinding of neem contact op met de ondersteuning voor hulp.',\r\n noTopScenariosFound: 'Er zijn geen top scenarios gevonden. Maak een nieuwe top scenario aan of pas een bestaand scenario aan zodat deze top scenario is.',\r\n filterScenarios: 'Zoeken naar/binnen scenarios',\r\n locationInDefaultScenario: 'U kunt het default scenario niet aanpassen. Als u doorgaat wordt de locatie aangemaakt in een nieuw scenario met dezelfde naam als de locatie. Wilt u doorgaan?',\r\n generatedOn: 'Gegenereerd op',\r\n foundLocations: 'Gevonden locaties',\r\n of: 'van',\r\n page: 'Pagina',\r\n selectAll: 'alles',\r\n selectNone: 'geen',\r\n heatMaps: 'Warmtekaart',\r\n print: 'Afdrukken',\r\n no: 'Nee',\r\n yes: 'Ja',\r\n copyChangesInformation: 'Hieronder kunt u aangeven welke locaties worden gekopieerd naar het doel scenario.',\r\n locations: 'Locaties',\r\n copyChanges: 'Wijzigingen kopiëren',\r\n nonShared: 'Niet gedeeld',\r\n sharedWith: 'Gedeeld met',\r\n otherLocations: 'andere locaties',\r\n mergeScenarioSource: 'De volgende wijzigingen zullen worden samengevoegd in het opgegeven scenario.',\r\n targetScenario: 'Doel scenario',\r\n deleteSourceScenario: 'Verwijder het bron scenario',\r\n isTopScenarioDescription: 'Een top scenario zorgt er voor dat het scenario als eerste en vet gedrukt wordt weergegeven in de lijst met scenarios.',\r\n mergeScenario: 'Scenario samenvoegen',\r\n isTopScenario: 'Top scenario',\r\n confirmClose: 'Weet u zeker dat u dit scherm wilt sluiten?',\r\n displayName: 'Weergave naam',\r\n email: 'E-mail adres',\r\n mobilePhone: 'Mobiel telefoonnummer',\r\n calculationModel: 'Calculation model',\r\n calculateUnprocessedScenarios: 'Doorrekenen onverwerkte scenarios',\r\n log: 'Log',\r\n warning: 'Waarschuwing',\r\n eventType: 'Type',\r\n source: 'Bron',\r\n message: 'Bericht',\r\n fetchIsoLine: 'Isolijn ophalen',\r\n isoLine: 'Isolijn',\r\n scheduledDateTimeUtc: 'Gepland',\r\n isoLinesMissingDateTimeUtc: 'Missende rijtijden',\r\n startedDateTimeUtc: 'Start',\r\n endedDateTimeUtc: 'Einde',\r\n noMatchingLocations: 'Geen overeenkomstige locaties',\r\n scenarioNameIsRequired: 'Scenario naam is verplicht',\r\n parentScenario: 'Bron scenario',\r\n sourceLocations: 'Bron locaties',\r\n sourceLocationsAllScenarios: 'Bron locaties alle scenarios',\r\n driverFilterFunction: 'Functie',\r\n driverFilterTitle: 'Titel',\r\n addDriver: 'Verklaring toevoegen',\r\n addDriverFilter: 'Groep toevoegen',\r\n confirmRemoveScenario: 'Weet u zeker dat u dit scenario wilt verwijderen?',\r\n confirmRemoveLocation: 'Weet u zeker dat u deze locatie wilt verwijderen?',\r\n confirmUndoCloseLocation: 'Weet u zeker dat u de sluiting van deze locatie ongedaan wilt maken?',\r\n confirmUndoEditLocation: 'Weet u zeker dat u de bewerkingen van deze locatie ongedaan wilt maken?',\r\n editScenario: 'Bewerken',\r\n removeScenario: 'Verwijderen',\r\n calculateScenario: 'Doorrekenen',\r\n filterAndSearch: 'Locaties',\r\n map: 'Kaart',\r\n matchingPercentage: '% Overeenkomst',\r\n drawerNotCalculated: 'Het model is niet doorgerekend. Daardoor zijn de resultaten niet zichtbaar.',\r\n drawerCalculating: 'Het model is aan het rekenen. Wacht tot de resultaten zichtbaar worden.',\r\n legend: 'Legenda',\r\n modelAdmin: 'Model beheerder',\r\n globalAdmin: 'Hoofd beheerder',\r\n noChanges: 'Er zijn nog geen openingen of sluitingen.',\r\n name: 'Naam',\r\n query: 'Zoek-tekst',\r\n export: 'Exporteer',\r\n noDrivers: 'Er zijn geen verklaringen gedefinieerd voor dit model.',\r\n condition: 'Voorwaarde',\r\n roundingDigits: 'Decimalen',\r\n inverse: 'Achterstevoren',\r\n drivers: 'Verklaringen',\r\n report: 'rapport',\r\n matchingLocationsOutputChart: 'Resultaten diagram',\r\n matchingLocationsSimilarityChart: 'Overeenkomsten diagram',\r\n driversChart: 'Verklaring diagram',\r\n disclaimer: 'Disclaimer',\r\n disclaimerContent: 'De ontwikkeling van IRIS is gebaseerd op wetenschappelijke methoden, actuele verkooppunt informatie en zorgvuldig onderzochte en up-to-date klantinformatie. Het model wordt zo goed mogelijk gevalideerd op basis van de actuele omzetten die in de markt worden gerealiseerd en informatie over het functioneren van de markt. Ieder wiskundig model, hoe gedetailleerd ook in de uitwerking, is een vereenvoudigde weergave van de werkelijkheid en zal nooit 100% correct zijn. Aan de uitkomsten kunnen daarom geen rechten worden ontleend.',\r\n help: 'Handleiding',\r\n csvExport: 'Export data',\r\n fileFormatCulture: 'CSV taalinstelling',\r\n dutchFormat: 'Nederlands formaat',\r\n englishFormat: 'Engels formaat',\r\n areaInformation: 'Gebiedsinformatie',\r\n areaInformationCatchmentArea: 'Gebiedsinformatie verzorgingsgebied',\r\n adminPages: 'Admin',\r\n locationAreas: 'Gebieden van de locatie',\r\n adminOnly: 'Alleen voor beheerders (WERKT NOG NIET)',\r\n scenarioCompetition: 'Locaties in dit scenario concureren met elkaar.',\r\n scenarioProcessingLog: 'Verwerkingslogboek',\r\n calculationScheduled: 'Verwerking ingepland',\r\n calculationWaitingForIsolines: 'Verwerking wacht op isochronen',\r\n calculationStarted: 'Verwerking start',\r\n calculationEnded:'Verwerking einde',\r\n calculationScenarioError: 'Verwerking fout (scenario)',\r\n calculationModelError: 'Verwerking fout (model)',\r\n isolinesStarted: 'Isochronen ophalen start',\r\n isolinesEnded: 'Isochronen ophalen einde',\r\n isolinesError: 'Isochronen ophalen fout',\r\n isolinesBusy: 'Isochronen ophalen bezig',\r\n dateAndTime: 'Datum en tijd',\r\n action: 'Actie',\r\n model: 'Model',\r\n user: 'Gebruiker',\r\n last100records: 'Laatste 100 records',\r\n propertiesChart: 'XY grafiek',\r\n propertyX: 'Eigenschap op X as',\r\n propertyY: 'Eigenschap op Y as',\r\n tree: 'boom | bomen',\r\n applicationTitle: 'IRIS',\r\n title: 'Titel',\r\n logout: 'Afmelden',\r\n login: 'Aanmelden',\r\n share: 'Aandeel',\r\n area: 'Gebied | Gebieden',\r\n personType: 'Persona',\r\n inhabitants: 'Inwoners',\r\n houseHolds: 'Huishoudens',\r\n income: 'Inkomen',\r\n areaRevenuePerYear: 'Besteding in postcode per jaar',\r\n areaRevenuePerPeriod: 'Besteding in postcode per periode',\r\n areaStandardConsumers: 'Standaard consumenten in postcode',\r\n total: 'Totaal',\r\n travelTimeScores: 'Aantrekkelijkheden reistijd',\r\n from: 'vanaf',\r\n calculation: 'Berekening',\r\n perYear: 'Per jaar',\r\n catchmentArea: 'Verzorgingsgebied',\r\n outputSpending: 'Besteding',\r\n outputNumber: 'Aantal',\r\n car: 'Auto',\r\n pedestrian: 'Voetganger',\r\n scorePersonType: 'Aantrekkelijkheid persona',\r\n calculated: 'Berekend',\r\n location: 'Locatie',\r\n value: 'Waarde',\r\n defaultValue: 'Standaard waarde',\r\n expression: 'Functie',\r\n format: 'Formule',\r\n scoresLocationGroup: 'Aantrekkelijkheden formule',\r\n scoresShop: 'Aantrekkelijkheden winkel',\r\n scoresRetailArea: 'Aantrekkelijkheden winkelgebied',\r\n retailArea: 'Winkelgebied',\r\n changedLocations: 'Wijzigingen',\r\n opening: 'Opening',\r\n closure: 'Sluiting',\r\n edited: \"Aangepast\",\r\n edit: \"Bewerk\",\r\n addScenario: 'Scenario toevoegen',\r\n infoScenario: 'Scenario informatie',\r\n calculate: 'Doorrekenen',\r\n add: 'Toevoegen',\r\n info: 'Informatie',\r\n scenarioCreated: 'Aanmaakdatum',\r\n scenarioModified: 'Bewerkdatum',\r\n scenarioCreatedBy: 'Aangemaakt door',\r\n scenarioModifiedBy: 'Bewerkt door',\r\n scenario: 'Scenario',\r\n scenarioReport: 'Impact rapport',\r\n scenarioName: 'Scenario naam',\r\n save: 'Opslaan',\r\n error: 'Fout',\r\n url: 'URL',\r\n status: 'Status',\r\n description: 'Omschrijving',\r\n settings: 'Instellingen',\r\n new: 'Nieuw',\r\n modelParameters: 'Model parameters',\r\n none: 'Geen',\r\n editModelParameters: 'Bewerk model parameters',\r\n editDrivers: 'Bewerk verklaringen',\r\n propertyType: 'Type',\r\n drawerEmptyText: 'Klik op een locatie op de kaart om informatie weer te geven.',\r\n score: 'Aantrekkelijkheid | Aantrekkelijkheden',\r\n information: 'Informatie',\r\n graphics: 'Grafieken',\r\n layers: 'Lagen',\r\n all: 'Alles',\r\n primary: 'Primair (50%)',\r\n secondary: 'Secundair (80%)',\r\n impact: 'Impact',\r\n impactCar: 'Impact auto',\r\n impactPedestrian: 'Impact voetganger',\r\n display: 'Weergave',\r\n top10: 'Top 10',\r\n top25: 'Top 25',\r\n top: 'Top',\r\n fraction: 'Aandeel',\r\n fractionCumulative: 'Aandeel (cumulatief)',\r\n showTravelTimes: 'Reistijd weergeven',\r\n travelTimes: 'Reistijd',\r\n minutes: 'Minuten',\r\n group: 'Group',\r\n property: 'Eigenschap',\r\n expressions: 'Formules',\r\n powerFactor: 'Machtsfactor',\r\n constant: 'Constante',\r\n scale: 'Schaal',\r\n max: 'Maximum',\r\n by: \"door\",\r\n fractionCutOffThreshold: 'Fractie drempel waarde',\r\n differenceDefaultScenario: 'Verschil t.o.v. standaard scenario',\r\n reports: 'Rapportage',\r\n locationsType1Name: 'Vestiging | Vestigingen',\r\n locationsType2Name: 'Winkelgebied | Winkelgebieden',\r\n locationsType1FilterLocations: 'Filter op vestiging van het scenario',\r\n locationsType2FilterLocations: 'Filter op winkelgebied van het scenario',\r\n googleSearch: 'Zoeken op de kaart',\r\n locationType1Scores: 'Aantrekkelijkheden vestiging',\r\n locationType2Scores: 'Aantrekkelijkheden winkelgebied',\r\n areaScores: 'Aantrekkelijkheden reistijd',\r\n locationsType1Impact: 'Impact per vestiging (top 25)',\r\n locationsType2Impact: 'Impact per winkelgebied (top 25)',\r\n locationGroupsType1Name: 'Formule',\r\n locationGroupsType2Name: 'Winkelgebied soort',\r\n locationsGroupsType1Impact: 'Impact per formule (top 10)',\r\n locationsGroupsType2Impact: 'Impact per winkelgebied soort (top 10)',\r\n locationsClustersType1Impact: 'Impact per winkelgebied (top 10)',\r\n locationsClustersType2Impact: 'Impact per gemeente (top 10)',\r\n locationsClustersType1EmptyName: '',\r\n locationsClustersType2EmptyName: '',\r\n locationsGroupsType1EmptyName: 'Zelfstandig',\r\n locationsGroupsType2EmptyName: '',\r\n locationClustersType1Name: 'Winkelgebied',\r\n locationClustersType2Name: 'Gemeente',\r\n outputType1Name: \"Omzet per week\",\r\n outputType2Name: \"Standaard consumenten\",\r\n outputType3Name: \"Omzet per jaar\",\r\n outputType4Name: \"Standaard consumenten\",\r\n areasType1Name: \"Postcode | Postcodes\",\r\n areasType2Name: \"Statistische sector | Statisische sectoren\",\r\n locationsType1New: \"Nieuwe vestiging hier\",\r\n locationsType2New: \"Nieuwe winkelgebied hier\",\r\n close: \"Sluiten\",\r\n delete: \"Verwijderen\",\r\n undoClose: \"Sluiten ongedaan maken\",\r\n undoEdit: \"Bewerking ongedaan maken\",\r\n modelFunctionTypeToUse: \"Het is mogelijk de volgende velden te gebruiken:\",\r\n ncalcMessage: \"De functies maken gebruik van de NCalc bibliotheek. Kijk op https://github.com/ncalc/ncalc voor meer informatie.\",\r\n calculationModelOutput: \"Model resultaten\",\r\n locationsOutput: 'Locations',\r\n scenarioLocationsOutput: 'Resultaten',\r\n scenarioLocations: 'Locaties',\r\n scenarioLocationsAllScenarios: 'Locaties van alle scenarios',\r\n scenarioLocationsOutputDescription: 'Resultaten van het geselecteerde scenario',\r\n scenarioLocationsOutputDescriptionWithHidden: 'Resultaten van het geselecteerde scenario alle velden',\r\n locationsOutputDescription: 'Locations.csv',\r\n catchmentAreaInformationExport: \"Verzorgingsgebied van de geselecteerde locatie\",\r\n areaInformationExport: \"Gebied resultaat\",\r\n areaInformationExportDescription: \"Gebied resultaat van het geselecteerde gebied\",\r\n weight: \"Gewicht\",\r\n editNormalizedScoresFunctions: \"Bewerk functies genormaliseerde waarden\",\r\n normalizedScoresFunctions: \"Functies genormaliseerde waarden\",\r\n before: \"Voor\",\r\n after: \"Na\",\r\n difference: \"Verschil\",\r\n localSituation: \"Lokale situatie\",\r\n dontShow: \"Niet weergeven\",\r\n pois: \"POI's\",\r\n matchingLocations: \"Vergelijkbare locaties\",\r\n scenarioStatusEdited: \"Bewerkt\",\r\n scenarioStatusWaiting: \"Wachten op verwerking\",\r\n scenarioStatusProcessing: \"Bezig met verwerken\",\r\n scenarioStatusCompleted: \"Verwerkt\",\r\n scenarioStatusCompletedWithErrors: \"Verwerkt met fouten\",\r\n pleaseLogin: \"Meld u aan via de knop aan de rechterbovenkant.\",\r\n busyLoading: \"Bezig met laden...\",\r\n searchMap: \"Zoeken op de kaart\",\r\n \r\n }\r\n },\r\n en: {\r\n message: {\r\n submodel: 'Submodel',\r\n confirmCalculateScenario: 'The scenario has changed. Do you want to calculate the scenario?',\r\n search: 'Search on the map',\r\n scenarioNameAutomaticallyChangedNotificaton: 'The name of the scenario is automatically changed because there was only 1 change left.',\r\n scenarioDeletedBecauseEmptyNotificaton: 'The scenario did not have any changes left so is deleted.',\r\n calculateThisScenario: \"Calculate this scenario\",\r\n setScenarioNameMessage: 'Since you are creating a multiple scenario, if it required to specify the name of the scenario.',\r\n setScenarioName: 'Scenario name',\r\n saveAddToNewScenario: 'Save (in new scenario)',\r\n saveEditInNewScenario: 'Save (in new scenario)',\r\n saveAddToThisScenario: 'Save (in current scenario)',\r\n saveEditInThisScenario: 'Save (in current scenario)',\r\n saveAddToNewNestedScenario: 'Save (in new nested scenario)',\r\n saveEditInNewNestedScenario: 'Save (in new nested scenario)',\r\n cancel: 'Cancel',\r\n closeMessage: 'You are about to close the selected location.',\r\n closeLocation: 'Close location',\r\n closeLocationInNewScenario: 'Close location (in new scenario)',\r\n closeLocationInThisScenario: 'Close location (in current scenario)',\r\n closeLocationInNewNestedScenario: 'Close location (in new nested scenario)',\r\n selectedScenario: 'Selected scenario',\r\n\r\n nameRequired: 'Name is required',\r\n scenarioLocationsVisibleOnMap: 'Locations of scenarios',\r\n scenarios: 'Scenarios',\r\n errorOccured: 'Oops! Something went wrong. An unexpected error has occurred, possibly due to a poor internet connection. Please close this message and attempt the action again. If the issue persists, kindly refresh the page. If the problem continues, consider checking your internet connection or contacting support for assistance.',\r\n noTopScenariosFound: 'There are no top scenarios found. Create a new top scenario or edit an existing scenario to be a top scenario.',\r\n filterScenarios: 'Search on/within scenarios',\r\n locationInDefaultScenario: 'You cannot modify the default scenario. If you continue the location will be created in a new scenario with the same name as the location. Do you want to continue?',\r\n foundLocations: 'Found locations',\r\n generatedOn: 'Generated on',\r\n of: 'of',\r\n page: 'Page',\r\n selectAll: 'all',\r\n selectNone: 'none',\r\n heatMaps: 'Heat maps',\r\n print: 'Print',\r\n no: 'No',\r\n yes: 'Yes',\r\n copyChangesInformation: 'Please specify which changes you want to copy to the target scenario.',\r\n locations:'Locations',\r\n copyChanges: 'Copy changes',\r\n nonShared: 'Non shared',\r\n sharedWith: 'Shared with',\r\n otherLocations: 'other locations',\r\n mergeScenarioSource: 'The following changes will be merged into the selected scenario.',\r\n targetScenario: 'Target scenario',\r\n deleteSourceScenario: 'Delete source scenario',\r\n isTopScenarioDescription: 'A top scenario specifies the scenario is listed first in the list of scenarios and is highlighted bold.',\r\n isTopScenario: 'Top scenario',\r\n mergeScenario: 'Merge scenario',\r\n confirmClose: 'Are you sure you want to close this dialog?',\r\n displayName: 'Displayname',\r\n email: 'E-mail address',\r\n mobilePhone: 'Mobile phone',\r\n calculationModel: 'Calculation model',\r\n calculateUnprocessedScenarios: 'Process unprocessed scenarios',\r\n log: 'Log',\r\n eventType: 'Type',\r\n source: 'Source',\r\n message: 'Message',\r\n warning: 'Warning',\r\n fetchIsoLine: 'Fetch isoline',\r\n isoLine: 'Isoline',\r\n scheduledDateTimeUtc: 'Scheduled',\r\n isoLinesMissingDateTimeUtc: 'Missing drive times',\r\n startedDateTimeUtc: 'Start',\r\n endedDateTimeUtc: 'End',\r\n noMatchingLocations: 'No matching locations',\r\n scenarioNameIsRequired: 'Scenario name is required',\r\n parentScenario: 'Parent scenario',\r\n sourceLocations: 'Source locations',\r\n sourceLocationsAllScenarios: 'Source locations all scenarios',\r\n driverFilterFunction: 'Function',\r\n driverFilterTitle: 'Title',\r\n addDriver: 'Add driver',\r\n addDriverFilter: 'Add group',\r\n confirmRemoveScenario: 'Are you sure you want to delete this scenario?',\r\n confirmRemoveLocation: 'Are you sure you want to delete this location?',\r\n confirmUndoCloseLocation: 'Are you sure you want to undo the closing of this location?',\r\n confirmUndoEditLocation: 'Are you sure you want to undo the editing of this location?',\r\n editScenario: 'Edit',\r\n removeScenario: 'Remove',\r\n calculateScenario: 'Calculate',\r\n\r\n filterAndSearch: 'Locations',\r\n map: 'Map',\r\n matchingPercentage: 'Matching %',\r\n drawerNotCalculated: 'The model is not calculated. Model results are unavailable.',\r\n drawerCalculating: 'The model is calculating. Wait for the results to be available.',\r\n legend: 'Legend',\r\n modelAdmin: 'Model administrator',\r\n globalAdmin: 'Global administrator',\r\n noChanges: 'The are no openings or closures.',\r\n name: 'Name',\r\n query: 'Search text',\r\n export: 'Export',\r\n noDrivers: 'There are no drivers defined for this model.',\r\n condition: 'Condition',\r\n roundingDigits: 'Decimals',\r\n inverse: 'Inverse',\r\n drivers: 'Drivers',\r\n report: 'report',\r\n matchingLocationsOutputChart: 'Output diagram',\r\n matchingLocationsSimilarityChart: 'Radar diagram',\r\n driversChart: 'Drivers diagram',\r\n disclaimer :'Disclaimer',\r\n disclaimerContent: 'IRIS draws on the latest scientific methods, current point of sale information, market data, and consumer insights. Our predictive models are estimated with, and validated against, historical revenue data. Any predictive model, no matter how advanced, is a simplified representation of reality and thus will never achieve 100% accuracy. No rights can be derived from the model outputs.',\r\n help: 'Manual',\r\n csvExport: 'Export data',\r\n fileFormatCulture: 'CSV language settings',\r\n dutchFormat: 'Dutch format',\r\n englishFormat: 'English format',\r\n areaInformation: 'Area information',\r\n areaInformationCatchmentArea: 'Area information catchment area',\r\n locationAreas: 'Areas of the location',\r\n adminPages: 'Admin',\r\n graphics: 'Charts',\r\n adminOnly: 'Only for administrators',\r\n scenarioCompetition: 'Locations created in this scenario compete with eachother.',\r\n scenarioProcessingLog: 'Processing log',\r\n calculationScheduled: 'Processing scheduled',\r\n calculationWaitingForIsolines: 'Processing waiting for isolines',\r\n calculationStarted: 'Processing started',\r\n calculationEnded: 'Processing ended',\r\n calculationScenarioError: 'Processing error (scenario)',\r\n calculationModelError: 'Processing error (model)',\r\n isolinesStarted: 'Isolines retrieval started',\r\n isolinesEnded: 'Isolines retrieval ended',\r\n isolinesError: 'Isolines retrieval error',\r\n isolinesBusy: 'Isolines retrieval busy',\r\n dateAndTime: 'Date and time',\r\n action: 'Action',\r\n model: 'Model',\r\n user: 'User',\r\n last100records: 'Last 100 records',\r\n propertiesChart: 'XY chart',\r\n propertyX: 'Property on X axis',\r\n propertyY: 'Property on Y axis',\r\n applicationTitle: 'IRIS',\r\n title: 'Title',\r\n logout: 'Logout',\r\n login:'Login',\r\n share: 'Share',\r\n area: 'Zipcode | Zipcodes',\r\n personType: 'Person type',\r\n inhabitants: 'Inhabitants',\r\n houseHolds: 'Housholds',\r\n income: 'Income',\r\n areaRevenuePerYear: 'Expense in zipcode per year',\r\n areaRevenuePerPeriod: 'Expense in zipcode per period',\r\n areaStandardConsumers: 'Standard consumers in zipcode',\r\n total: 'Total',\r\n travelTimeScores: 'Attractions travel time',\r\n from: 'from',\r\n calculation: 'Calculation',\r\n perYear: 'Per year',\r\n catchmentArea: 'Catchment area',\r\n outputSpending: 'Expense',\r\n outputNumber: 'Number',\r\n car: 'Car',\r\n pedestrian: 'Pedestrian',\r\n scorePersonType: 'Attraction person type',\r\n calculated: 'Calculated',\r\n location: 'Location',\r\n value: 'Value',\r\n defaultValue: 'Default value',\r\n expression: 'Function',\r\n format: 'Format',\r\n scoresLocationGroup: 'Attractions format',\r\n scoresShop: 'Attractions shop',\r\n scoresRetailArea: 'Attractions retail area',\r\n retailArea: 'Retail area',\r\n changedLocations: 'Changes',\r\n opening: 'Opening',\r\n closure: 'Closure',\r\n add:'Add',\r\n edit: \"Edit\",\r\n edited: \"Edited\",\r\n addScenario: 'Add scenario',\r\n infoScenario: 'Scenario information',\r\n info:'Information',\r\n calculate: 'Calculate',\r\n scenarioCreated: 'Creation date',\r\n scenarioModified: 'Edit date',\r\n scenarioCreatedBy: 'Created by',\r\n scenarioModifiedBy: 'Edited by',\r\n scenario: 'Scenario',\r\n scenarioName: 'Scenario name',\r\n save: 'Save',\r\n error: 'Error',\r\n url: 'URL',\r\n status: 'Status',\r\n description: 'Description',\r\n settings: 'Settings',\r\n new: 'New',\r\n modelParameters: 'Model parameters',\r\n scenarioReport: 'Impact report',\r\n editModelParameters: 'Edit model parameters',\r\n editDrivers: 'Edit drivers',\r\n propertyType: 'Type',\r\n drawerEmptyText: 'Click a location on the map to display information.',\r\n score: 'Attraction | Attractions',\r\n information: 'Information',\r\n layers: 'Layers',\r\n all: 'Everything',\r\n primary: 'Primary (50%)',\r\n secondary: 'Secondary (80%)',\r\n impact: 'Impact',\r\n impactCar: 'Impact car',\r\n impactPedestrian: 'Impact pedestrian',\r\n display: 'Display',\r\n top10: 'Top 10',\r\n top25: 'Top 25',\r\n top: 'Top',\r\n fraction: 'Share',\r\n fractionCumulative: 'Share (cumulative)',\r\n showTravelTimes: 'Show travel times',\r\n travelTimes: 'Travel times',\r\n minutes: 'Minutes',\r\n group: 'Group',\r\n property: 'Property',\r\n expressions: 'Expressions',\r\n powerFactor: 'Power factor',\r\n constant: 'Constant',\r\n scale: 'Scale',\r\n max: 'Maximum',\r\n fractionCutOffThreshold: 'Fraction cut off threshold',\r\n differenceDefaultScenario: 'Difference default scenario',\r\n reports: 'Reports',\r\n none: 'None',\r\n locationsType1Name: 'Location | Locations',\r\n locationsType2Name: 'Retail area | Retail areas',\r\n locationsType1FilterLocations: 'Filter on location of the scenario',\r\n locationsType2FilterLocations: 'Filter on retail area of the scenario',\r\n googleSearch: 'Search the map',\r\n locationType1Scores: 'Attractions location',\r\n locationType2Scores: 'Attractions retail area',\r\n areaScores: 'Attractions travel times',\r\n locationsType1Impact: 'Impact per location (top 25)',\r\n locationsType2Impact: 'Impact per retail area (top 25)',\r\n locationsGroupsType1Impact: 'Impact per format',\r\n locationsGroupsType2Impact: 'Impact per retail area type',\r\n locationsClustersType1Impact: 'Impact per retail area',\r\n locationsClustersType2Impact: 'Impact per municipality',\r\n locationsGroupsType1EmptyName: 'Independent',\r\n locationsGroupsType2EmptyName: '',\r\n locationsClustersType1EmptyName: '',\r\n locationsClustersType2EmptyName: '',\r\n locationGroupsType1Name: 'Format',\r\n locationGroupsType2Name: 'Retail area type',\r\n locationClustersType1Name: 'Retail area',\r\n locationClustersType2Name: 'Municipality',\r\n outputType1Name: \"Turnover per week\",\r\n outputType2Name: \"Standard consumers\",\r\n outputType3Name: \"Turnover per year\",\r\n outputType4Name: \"Standard consumers\",\r\n areasType1Name: \"Zipcode | Zipcodes\",\r\n areasType2Name: \"Statistical sector | Statistical sectors\",\r\n locationsType1New: \"New location here\",\r\n locationsType2New: \"New retail area here\",\r\n close: \"Close\",\r\n delete: \"Delete\",\r\n undoClose: \"Undo close\",\r\n undoEdit: \"Undo edit\",\r\n modelFunctionTypeToUse: \"The following fields are possible to use:\",\r\n ncalcMessage: \"The functions are using the NCalc library. See https://github.com/ncalc/ncalc for more information.\",\r\n calculationModelOutput: \"Model results\",\r\n locationsOutput: 'Locations',\r\n scenarioLocations: 'Locations',\r\n scenarioLocationsAllScenarios: 'Locations of all scenarios',\r\n scenarioLocationsOutput: 'Results',\r\n scenarioLocationsOutputDescription: 'Results of the selected scenario',\r\n scenarioLocationsOutputDescriptionWithHidden: 'Results of the selected scenario all fields',\r\n locationsOutputDescription: 'Locations.csv',\r\n catchmentAreaInformationExport: \"Catchment area\",\r\n catchmentAreaInformationExportCarDescription: \"Catchment area car of the selected location\",\r\n catchmentAreaInformationExportPedestrianDescription: \"Catchment area pedestrian of the selected location\",\r\n areaInformationExport: \"Area result\",\r\n areaInformationExportDescription: \"Area result of the selected area\",\r\n weight: \"Weight\",\r\n editNormalizedScoresFunctions: \"Edit normalized scores functions\",\r\n normalizedScoresFunctions: \"Normalized scores functions\",\r\n before: \"Before\",\r\n after: \"After\",\r\n difference: \"Difference\",\r\n localSituation: \"Local situation\",\r\n dontShow: \"Don't show\",\r\n pois: \"POI's\",\r\n by:\"by\",\r\n matchingLocations: \"Matching locations\",\r\n scenarioStatusEdited: \"Edited\",\r\n scenarioStatusWaiting: \"Waiting for processing\",\r\n scenarioStatusProcessing: \"Processing\",\r\n scenarioStatusCompleted: \"Completed\",\r\n scenarioStatusCompletedWithErrors: \"Completed with errors\",\r\n pleaseLogin: \"Please login using the upper right menu.\",\r\n busyLoading: \"Busy loading...\",\r\n searchMap: \"Search the map\",\r\n }\r\n },\r\n de: {\r\n message: {\r\n selectedScenario: \"Ausgewähltes Szenario\",\r\n submodel: \"Submodell\",\r\n confirmCalculateScenario:\r\n \"Das Szenario wurde geändert. Möchten Sie das Szenario berechnen?\",\r\n search: \"Auf der Karte suchen\",\r\n scenarioNameAutomaticallyChangedNotificaton:\r\n \"Der Name des Szenarios wurde automatisch angepasst, da nur noch eine Änderung vorhanden war.\",\r\n scenarioDeletedBecauseEmptyNotificaton:\r\n \"Das Szenario enthielt keine Änderungen mehr und wurde daher gelöscht.\",\r\n setScenarioNameMessage:\r\n \"Da Sie ein Szenario mit mehreren Änderungen erstellen, müssen Sie den Namen des Szenarios angeben.\",\r\n setScenarioName: \"Szenario Name\",\r\n saveAddToNewScenario: \"Speichern (in neuem Szenario)\",\r\n saveAddToThisScenario: \"Speichern (im aktuellen Szenario)\",\r\n saveAddToNewNestedScenario:\r\n \"Speichern (in neuem verschachteltem Szenario)\",\r\n saveEditInNewScenario: \"Speichern (in neuem Szenario)\",\r\n saveEditInThisScenario: \"Speichern (im aktuellen Szenario)\",\r\n saveEditInNewNestedScenario:\r\n \"Speichern (in neuem verschachteltem Szenario)\",\r\n cancel: \"Abbrechen\",\r\n closeMessage: \"Sie sind dabei, den Standort zu schließen.\",\r\n closeLocation: \"Standort schließen\",\r\n closeLocationInNewScenario: \"Standort schließen (in neuem Szenario)\",\r\n closeLocationInThisScenario: \"Standort schließen (im aktuellen Szenario)\",\r\n closeLocationInNewNestedScenario:\r\n \"Standort schließen (in neuem verschachteltem Szenario)\",\r\n\r\n nameRequired: \"Name ist erforderlich\",\r\n scenarioLocationsVisibleOnMap: \"Standorte der Szenarien\",\r\n scenarios: \"Szenarien\",\r\n errorOccured:\r\n \"Ups! Etwas ist schiefgelaufen. Ein unerwarteter Fehler ist aufgetreten, möglicherweise aufgrund einer schlechten Internetverbindung. Bitte schließen Sie diese Meldung und versuchen Sie die Aktion erneut. Wenn das Problem weiterhin besteht, aktualisieren Sie bitte die Seite. Wenn der Fehler weiterhin auftritt, überprüfen Sie Ihre Internetverbindung oder wenden Sie sich an den Support.\",\r\n noTopScenariosFound:\r\n \"Es wurden keine Top-Szenarien gefunden. Erstellen Sie ein neues Top-Szenario oder bearbeiten Sie ein bestehendes Szenario als Top-Szenario.\",\r\n filterScenarios: \"Nach/in Szenarien suchen\",\r\n locationInDefaultScenario:\r\n \"Sie können das Standardszenario nicht ändern. Wenn Sie fortfahren, wird der Standort in einem neuen Szenario mit demselben Namen wie der Standort erstellt. Möchten Sie fortfahren?\",\r\n generatedOn: \"Generiert am\",\r\n foundLocations: \"Gefundene Standorte\",\r\n of: \"von\",\r\n page: \"Seite\",\r\n selectAll: \"Alle\",\r\n selectNone: \"Keine\",\r\n heatMaps: \"Wärmekarte\",\r\n print: \"Drucken\",\r\n no: \"Nein\",\r\n yes: \"Ja\",\r\n copyChangesInformation:\r\n \"Bitte geben Sie an, welche Änderungen in das Zielszenario kopiert werden sollen.\",\r\n locations: \"Standorte\",\r\n copyChanges: \"Änderungen kopieren\",\r\n nonShared: \"Nicht geteilt\",\r\n sharedWith: \"Geteilt mit\",\r\n otherLocations: \"andere Standorte\",\r\n mergeScenarioSource:\r\n \"Die folgenden Änderungen werden mit dem angegebenen Szenario zusammengeführt.\",\r\n targetScenario: \"Zielszenario\",\r\n deleteSourceScenario: \"Quellenszenario löschen\",\r\n isTopScenarioDescription:\r\n \"Ein Top-Szenario wird in der Liste der Szenarien zuerst und fett dargestellt.\",\r\n mergeScenario: \"Szenario zusammenführen\",\r\n isTopScenario: \"Top-Szenario\",\r\n confirmClose:\r\n \"Sind Sie sicher, dass Sie diesen Dialog schließen möchten?\",\r\n displayName: \"Anzeigename\",\r\n email: \"E-Mail-Adresse\",\r\n mobilePhone: \"Mobiltelefonnummer\",\r\n calculationModel: \"Berechnungsmodell\",\r\n calculateUnprocessedScenarios: \"Unverarbeitete Szenarien berechnen\",\r\n log: \"Protokoll\",\r\n warning: \"Warnung\",\r\n eventType: \"Typ\",\r\n source: \"Quelle\",\r\n message: \"Nachricht\",\r\n fetchIsoLine: \"Isochronen abrufen\",\r\n isoLine: \"Isochrone\",\r\n scheduledDateTimeUtc: \"Geplant\",\r\n isoLinesMissingDateTimeUtc: \"Fehlende Fahrzeiten\",\r\n startedDateTimeUtc: \"Start\",\r\n endedDateTimeUtc: \"Ende\",\r\n noMatchingLocations: \"Keine übereinstimmenden Standorte\",\r\n scenarioNameIsRequired: \"Szenario-Name ist erforderlich\",\r\n parentScenario: \"Quellenszenario\",\r\n sourceLocations: \"Quellstandorte\",\r\n sourceLocationsAllScenarios: \"Quellstandorte aller Szenarien\",\r\n driverFilterFunction: \"Funktion\",\r\n driverFilterTitle: \"Titel\",\r\n addDriver: \"Faktor hinzufügen\",\r\n addDriverFilter: \"Gruppe hinzufügen\",\r\n confirmRemoveScenario:\r\n \"Sind Sie sicher, dass Sie dieses Szenario löschen möchten?\",\r\n confirmRemoveLocation:\r\n \"Sind Sie sicher, dass Sie diesen Standort löschen möchten?\",\r\n confirmUndoCloseLocation:\r\n \"Sind Sie sicher, dass Sie das Schließen dieses Standorts rückgängig machen möchten?\",\r\n confirmUndoEditLocation:\r\n \"Sind Sie sicher, dass Sie die Bearbeitung dieses Standorts rückgängig machen möchten?\",\r\n editScenario: \"Bearbeiten\",\r\n removeScenario: \"Entfernen\",\r\n calculateScenario: \"Berechnen\",\r\n calculateThisScenario: \"Berechnen szenario\",\r\n filterAndSearch: \"Standorte\",\r\n map: \"Karte\",\r\n matchingPercentage: \"Ãœbereinstimmung %\",\r\n drawerNotCalculated:\r\n \"Das Modell wurde nicht berechnet. Die Modellergebnisse sind nicht verfügbar.\",\r\n drawerCalculating:\r\n \"Das Modell wird berechnet. Warten Sie, bis die Ergebnisse verfügbar sind.\",\r\n legend: \"Legende\",\r\n modelAdmin: \"Modelladministrator\",\r\n globalAdmin: \"Globaler Administrator\",\r\n noChanges: \"Es gibt keine Öffnungen oder Schließungen.\",\r\n name: \"Name\",\r\n query: \"Suchtext\",\r\n export: \"Exportieren\",\r\n noDrivers: \"Für dieses Modell sind keine Faktoren definiert.\",\r\n condition: \"Bedingung\",\r\n roundingDigits: \"Dezimalstellen\",\r\n inverse: \"Invers\",\r\n drivers: \"Faktoren\",\r\n report: \"Bericht\",\r\n matchingLocationsOutputChart: \"Ergebnisdiagramm\",\r\n matchingLocationsSimilarityChart: \"Radar-Diagramm\",\r\n driversChart: \"Faktordiagramm\",\r\n disclaimer: \"Haftungsausschluss\",\r\n disclaimerContent:\r\n \"Die Entwicklung von IRIS basiert auf wissenschaftlichen Methoden, aktuellen Verkaufsstelleninformationen und sorgfältig recherchierten und aktuellen Kundeninformationen. Das Modell wird so gut wie möglich anhand der tatsächlich am Markt erzielten Umsätze und Informationen über das Funktionieren des Marktes validiert. Jedes mathematische Modell, wie detailliert es auch ausgearbeitet sein mag, ist eine vereinfachte Darstellung der Realität und wird niemals 100 % korrekt sein. Aus den Ergebnissen können daher keine Rechte abgeleitet werden.\",\r\n help: \"Handbuch\",\r\n csvExport: \"Daten exportieren\",\r\n fileFormatCulture: \"CSV-Spracheinstellungen\",\r\n dutchFormat: \"Niederländisches Format\",\r\n englishFormat: \"Englisches Format\",\r\n areaInformation: \"Gebietsinformationen\",\r\n areaInformationCatchmentArea: \"Gebietsinformationen Einzugsgebiet\",\r\n\r\n adminPages: \"Admin\",\r\n locationAreas: \"Gebiete des Standorts\",\r\n adminOnly: \"Nur für Administratoren (FUNKTIONIERT NOCH NICHT)\",\r\n scenarioCompetition:\r\n \"Standorte in diesem Szenario konkurrieren miteinander.\",\r\n scenarioProcessingLog: \"Verarbeitungsprotokoll\",\r\n calculationScheduled: \"Verarbeitung geplant\",\r\n calculationWaitingForIsolines: \"Verarbeitung wartet auf Isochronen\",\r\n calculationStarted: \"Verarbeitung gestartet\",\r\n calculationEnded: \"Verarbeitung beendet\",\r\n calculationScenarioError: \"Verarbeitungsfehler (Szenario)\",\r\n calculationModelError: \"Verarbeitungsfehler (Modell)\",\r\n isolinesStarted: \"Isochronenabruf gestartet\",\r\n isolinesEnded: \"Isochronenabruf beendet\",\r\n isolinesError: \"Isochronenabruf fehlgeschlagen\",\r\n isolinesBusy: \"Isochronenabruf läuft\",\r\n dateAndTime: \"Datum und Uhrzeit\",\r\n action: \"Aktion\",\r\n model: \"Modell\",\r\n user: \"Benutzer\",\r\n last100records: \"Letzte 100 Einträge\",\r\n propertiesChart: \"XY-Diagramm\",\r\n propertyX: \"Eigenschaft auf X-Achse\",\r\n propertyY: \"Eigenschaft auf Y-Achse\",\r\n tree: \"Baum\",\r\n applicationTitle: \"IRIS\",\r\n title: \"Titel\",\r\n logout: \"Abmelden\",\r\n login: \"Anmelden\",\r\n share: \"Anteil\",\r\n area: \"Gebiet | Gebiete\",\r\n personType: \"Persona\",\r\n inhabitants: \"Einwohner\",\r\n houseHolds: \"Haushalte\",\r\n income: \"Einkommen\",\r\n areaRevenuePerYear: \"Ausgaben in Postleitzahl pro Jahr\",\r\n areaRevenuePerPeriod: \"Ausgaben in Postleitzahl pro Zeitraum\",\r\n areaStandardConsumers: \"Standardkonsumenten in Postleitzahl\",\r\n total: \"Gesamt\",\r\n travelTimeScores: \"Attraktivität Reisezeit\",\r\n from: \"von\",\r\n calculation: \"Berechnung\",\r\n perYear: \"Pro Jahr\",\r\n catchmentArea: \"Einzugsgebiet\",\r\n outputSpending: \"Ausgaben\",\r\n outputNumber: \"Anzahl\",\r\n car: \"Auto\",\r\n pedestrian: \"Fußgänger\",\r\n scorePersonType: \"Attraktivität Persona\",\r\n calculated: \"Berechnet\",\r\n location: \"Standort\",\r\n value: \"Wert\",\r\n defaultValue: \"Standardwert\",\r\n expression: \"Funktion\",\r\n format: \"Format\",\r\n scoresLocationGroup: \"Attraktivität Format\",\r\n scoresShop: \"Attraktivität Geschäft\",\r\n scoresRetailArea: \"Attraktivität Einzelhandelsgebiet\",\r\n retailArea: \"Einzelhandelsgebiet\",\r\n changedLocations: \"Änderungen\",\r\n opening: \"Eröffnung\",\r\n closure: \"Schließung\",\r\n edited: \"Bearbeitet\",\r\n edit: \"Bearbeiten\",\r\n addScenario: \"Szenario hinzufügen\",\r\n infoScenario: \"Szenarioinformationen\",\r\n calculate: \"Berechnen\",\r\n add: \"Hinzufügen\",\r\n info: \"Information\",\r\n scenarioCreated: \"Erstellungsdatum\",\r\n scenarioModified: \"Bearbeitungsdatum\",\r\n scenarioCreatedBy: \"Erstellt von\",\r\n scenarioModifiedBy: \"Bearbeitet von\",\r\n scenario: \"Szenario\",\r\n scenarioReport: \"Auswirkungsbericht\",\r\n scenarioName: \"Szenarioname\",\r\n save: \"Speichern\",\r\n error: \"Fehler\",\r\n url: \"URL\",\r\n status: \"Status\",\r\n description: \"Beschreibung\",\r\n settings: \"Einstellungen\",\r\n new: \"Neu\",\r\n modelParameters: \"Modellparameter\",\r\n none: \"Keine\",\r\n editModelParameters: \"Modellparameter bearbeiten\",\r\n editDrivers: \"Faktoren bearbeiten\",\r\n propertyType: \"Typ\",\r\n drawerEmptyText:\r\n \"Klicken Sie auf einen Standort auf der Karte, um Informationen anzuzeigen.\",\r\n score: \"Attraktivität | Attraktivitäten\",\r\n information: \"Informationen\",\r\n graphics: \"Diagramme\",\r\n layers: \"Ebenen\",\r\n all: \"Alle\",\r\n primary: \"Primär (50%)\",\r\n secondary: \"Sekundär (80%)\",\r\n impact: \"Auswirkung\",\r\n impactCar: \"Auswirkung Auto\",\r\n impactPedestrian: \"Auswirkung Fußgänger\",\r\n display: \"Anzeige\",\r\n top10: \"Top 10\",\r\n top25: \"Top 25\",\r\n top: \"Top\",\r\n fraction: \"Anteil\",\r\n fractionCumulative: \"Anteil (kumulativ)\",\r\n showTravelTimes: \"Reisezeiten anzeigen\",\r\n travelTimes: \"Reisezeiten\",\r\n minutes: \"Minuten\",\r\n group: \"Gruppe\",\r\n property: \"Eigenschaft\",\r\n expressions: \"Funktionen\",\r\n powerFactor: \"Potenzfaktor\",\r\n constant: \"Konstante\",\r\n scale: \"Skala\",\r\n max: \"Maximum\",\r\n by: \"von\", // Or \"durch\", depending on context\r\n fractionCutOffThreshold: \"Schwellenwert für den Anteil\",\r\n differenceDefaultScenario: \"Unterschied zum Standardszenario\",\r\n reports: \"Berichte\",\r\n locationsType1Name: \"Standort | Standorte\",\r\n locationsType2Name: \"Einzelhandelsgebiet | Einzelhandelsgebiete\",\r\n locationsType1FilterLocations: \"Nach Standort des Szenarios filtern\",\r\n locationsType2FilterLocations:\r\n \"Nach Einzelhandelsgebiet des Szenarios filtern\",\r\n googleSearch: \"Auf der Karte suchen\",\r\n locationType1Scores: \"Attraktivität Standort\",\r\n locationType2Scores: \"Attraktivität Einzelhandelsgebiet\",\r\n areaScores: \"Attraktivität Reisezeiten\",\r\n locationsType1Impact: \"Auswirkung pro Standort (Top 25)\",\r\n locationsType2Impact: \"Auswirkung pro Einzelhandelsgebiet (Top 25)\",\r\n locationGroupsType1Name: \"Format\",\r\n locationGroupsType2Name: \"Art des Einzelhandelsgebiets\",\r\n locationsGroupsType1Impact: \"Auswirkung pro Format (Top 10)\",\r\n locationsGroupsType2Impact:\r\n \"Auswirkung pro Art des Einzelhandelsgebiets (Top 10)\",\r\n locationsClustersType1Impact:\r\n \"Auswirkung pro Einzelhandelsgebiet (Top 10)\",\r\n locationsClustersType2Impact: \"Auswirkung pro Gemeinde (Top 10)\",\r\n locationsClustersType1EmptyName: \"\",\r\n locationsClustersType2EmptyName: \"\",\r\n locationsGroupsType1EmptyName: \"Unabhängig\",\r\n locationsGroupsType2EmptyName: \"\",\r\n locationClustersType1Name: \"Einzelhandelsgebiet\",\r\n locationClustersType2Name: \"Gemeinde\",\r\n outputType1Name: \"Umsatz pro Woche\",\r\n outputType2Name: \"Standardkonsumenten\",\r\n outputType3Name: \"Umsatz pro Jahr\",\r\n outputType4Name: \"Standardkonsumenten\",\r\n areasType1Name: \"Postleitzahl | Postleitzahlen\",\r\n areasType2Name: \"Statistischer Sektor | Statistische Sektoren\",\r\n locationsType1New: \"Neuer Standort hier\",\r\n locationsType2New: \"Neues Einzelhandelsgebiet hier\",\r\n close: \"Schließen\",\r\n delete: \"Löschen\",\r\n undoClose: \"Schließen rückgängig machen\",\r\n undoEdit: \"Bearbeitung rückgängig machen\",\r\n modelFunctionTypeToUse: \"Die folgenden Felder können verwendet werden:\",\r\n ncalcMessage:\r\n \"Die Funktionen verwenden die NCalc-Bibliothek. Weitere Informationen finden Sie unter https://github.com/ncalc/ncalc.\",\r\n calculationModelOutput: \"Modellergebnisse\",\r\n locationsOutput: \"Standorte\",\r\n scenarioLocationsOutput: \"Ergebnisse\",\r\n scenarioLocations: \"Standorte\",\r\n scenarioLocationsAllScenarios: \"Standorte aller Szenarien\",\r\n scenarioLocationsOutputDescription:\r\n \"Ergebnisse des ausgewählten Szenarios\",\r\n scenarioLocationsOutputDescriptionWithHidden:\r\n \"Ergebnisse des ausgewählten Szenarios (alle Felder)\",\r\n locationsOutputDescription: \"Locations.csv\",\r\n catchmentAreaInformationExport: \"Einzugsgebiet\",\r\n catchmentAreaInformationExportCarDescription:\r\n \"Einzugsgebiet Auto des ausgewählten Standorts\",\r\n catchmentAreaInformationExportPedestrianDescription:\r\n \"Einzugsgebiet Fußgänger des ausgewählten Standorts\",\r\n areaInformationExport: \"Gebietsergebnis\",\r\n areaInformationExportDescription:\r\n \"Gebietsergebnis des ausgewählten Gebiets\",\r\n weight: \"Gewichtung\",\r\n editNormalizedScoresFunctions:\r\n \"Funktionen für normalisierte Werte bearbeiten\",\r\n normalizedScoresFunctions: \"Funktionen für normalisierte Werte\",\r\n before: \"Vorher\",\r\n after: \"Nachher\",\r\n difference: \"Differenz\",\r\n localSituation: \"Lokale Situation\",\r\n dontShow: \"Nicht anzeigen\",\r\n pois: \"POIs\",\r\n matchingLocations: \"Ãœbereinstimmende Standorte\",\r\n scenarioStatusEdited: \"Bearbeitet\",\r\n scenarioStatusWaiting: \"Wartend auf Verarbeitung\",\r\n scenarioStatusProcessing: \"In Bearbeitung\",\r\n scenarioStatusCompleted: \"Abgeschlossen\",\r\n scenarioStatusCompletedWithErrors: \"Abgeschlossen mit Fehlern\",\r\n pleaseLogin: \"Bitte melden Sie sich über das Menü oben rechts an.\",\r\n busyLoading: \"Laden...\",\r\n searchMap: \"Karte durchsuchen\",\r\n },\r\n }\r\n}\r\nexport default messages;","var render = function render(){var _vm=this,_c=_vm._self._c,_setup=_vm._self._setupProxy;return _c('fragment',[_c('v-divider',{staticClass:\"mr-2 ml-2\",attrs:{\"vertical\":\"\"}}),(_vm.loaded)?_c('v-menu',{attrs:{\"close-on-content-click\":true,\"offset-y\":\"\"},scopedSlots:_vm._u([{key:\"activator\",fn:function({ on }){return [_c('v-btn',_vm._g({staticClass:\"mr-1\",attrs:{\"icon\":\"\"}},on),[_c('v-icon',[_vm._v(\"mdi-account\")])],1)]}}],null,false,3702837349)},[_c('v-list',[(_vm.isAuthenticated)?_c('v-list-item',{on:{\"click\":function($event){return _vm.signOut()}}},[_c('v-list-item-action',[_c('v-icon',[_vm._v(\"mdi-account\")])],1),_c('v-list-item-content',[_c('v-list-item-title',[_vm._v(_vm._s(_vm.$t(\"message.logout\"))+\" \"+_vm._s(_vm.account.name))])],1)],1):_vm._e(),(!_vm.isAuthenticated)?_c('v-list-item',{on:{\"click\":function($event){return _vm.signIn()}}},[_c('v-list-item-action',[_c('v-icon',[_vm._v(\"mdi-account\")])],1),_c('v-list-item-content',[_c('v-list-item-title',[_vm._v(_vm._s(_vm.$t(\"message.login\")))])],1)],1):_vm._e()],1)],1):_vm._e()],1)\n}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","\r\n import { Component, Vue, Watch } from 'vue-property-decorator';\r\n import { Action } from 'vuex-class';\r\n // @ts-ignore\r\n import { MsalPlugin } from '@/plugins/msal';\r\n import axios from 'axios';\r\n\r\n \r\n \r\n\r\n \r\n \r\n \r\n\r\n \r\n\r\n @Component({\r\n components: {\r\n },\r\n })\r\n export default class LoginMenu extends Vue {\r\n\r\n @Action('loggedIn') private loggedIn: any;\r\n \r\n public get isAuthenticated(): boolean {\r\n if (!this.loaded) return false;\r\n return this.$msal.isAuthenticated;\r\n }\r\n public async signIn() {\r\n await this.$msal.signIn();\r\n }\r\n public async signOut() {\r\n await this.$msal.signOut();\r\n }\r\n public get account() {\r\n return this.$msal.account();\r\n }\r\n\r\n private loaded: any = false;\r\n\r\n @Watch('isAuthenticated')\r\n private onIsAuthenticated(value: any, oldValue: any) {\r\n if (value == true && oldValue == false) this.loggedIn(this.$msal.account());\r\n }\r\n private mounted() {\r\n const _self = this;\r\n axios.get('/api/system/msal-configuration').then(async response => {\r\n Vue.use(new MsalPlugin(response.data.scope), response.data.options);\r\n if (_self.$msal.isAuthenticated) _self.loggedIn(_self.$msal.account());\r\n if (!_self.$msal.isAuthenticated) _self.signIn();\r\n _self.loaded = true;\r\n\r\n }).catch(() => {\r\n \r\n })\r\n }\r\n \r\n\r\n }\r\n","import mod from \"-!../../node_modules/thread-loader/dist/cjs.js!../../node_modules/babel-loader/lib/index.js!../../node_modules/ts-loader/index.js??clonedRuleSet-41.use[2]!../../node_modules/@vue/vue-loader-v15/lib/index.js??vue-loader-options!./LoginMenu.vue?vue&type=script&lang=ts&\"; export default mod; export * from \"-!../../node_modules/thread-loader/dist/cjs.js!../../node_modules/babel-loader/lib/index.js!../../node_modules/ts-loader/index.js??clonedRuleSet-41.use[2]!../../node_modules/@vue/vue-loader-v15/lib/index.js??vue-loader-options!./LoginMenu.vue?vue&type=script&lang=ts&\"","import { render, staticRenderFns } from \"./LoginMenu.vue?vue&type=template&id=4489cb61&\"\nimport script from \"./LoginMenu.vue?vue&type=script&lang=ts&\"\nexport * from \"./LoginMenu.vue?vue&type=script&lang=ts&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../node_modules/@vue/vue-loader-v15/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","var render = function render(){var _vm=this,_c=_vm._self._c,_setup=_vm._self._setupProxy;return _c('fragment',[(_vm.isAuthenticated && _vm.model && _vm.models && _vm.models.length > 1)?_c('fragment',[_c('v-menu',{attrs:{\"offset-y\":\"\"},scopedSlots:_vm._u([{key:\"activator\",fn:function({ on: onMenu }){return [_c('v-tooltip',{attrs:{\"bottom\":\"\",\"open-delay\":\"250\",\"open-on-hover\":true},scopedSlots:_vm._u([{key:\"activator\",fn:function({ on: onTooltip }){return [_c('v-toolbar',_vm._g({staticClass:\"tbdc-dropdownmenu\",staticStyle:{\"flex\":\"none\"},attrs:{\"dense\":\"\",\"flat\":\"\"}},{ ...onMenu, ...onTooltip }),[_c('v-toolbar-title',[_c('span',{staticStyle:{\"position\":\"absolute\",\"top\":\"1px\",\"font-size\":\"11px\",\"font-weight\":\"normal\",\"opacity\":\"0.6\"}},[_vm._v(_vm._s(_vm.$t(\"message.model\")))]),_c('h3',{staticStyle:{\"margin-top\":\"11px\",\"font-size\":\"16px\",\"font-weight\":\"normal\"}},[_vm._v(_vm._s(_vm.model.name))])])],1)]}}],null,true)},[_c('span',[_vm._v(_vm._s(_vm.$t(\"message.model\")))])])]}}],null,false,1658050152)},[_c('v-list',{staticClass:\"overflow-y-auto\",staticStyle:{\"max-height\":\"95vh\"}},_vm._l((_vm.models),function(model){return _c('v-list-item',{key:model.id,on:{\"click\":function($event){return _vm.setModel(model);}}},[_c('v-list-item-icon',{staticClass:\"mr-2\"},[_c('v-icon',[_vm._v(\"mdi-domain\")])],1),_c('v-list-item-content',[_vm._v(\" \"+_vm._s(model.name)+\" \")])],1)}),1)],1),_c('v-divider',{staticClass:\"ml-2 mr-2\",attrs:{\"vertical\":\"\"}})],1):_vm._e(),(_vm.isAuthenticated && _vm.subModel && _vm.subModels && _vm.subModels.length > 1)?_c('fragment',[_c('v-menu',{attrs:{\"offset-y\":\"\"},scopedSlots:_vm._u([{key:\"activator\",fn:function({ on: onMenu }){return [_c('v-tooltip',{attrs:{\"bottom\":\"\",\"open-delay\":\"250\",\"open-on-hover\":true},scopedSlots:_vm._u([{key:\"activator\",fn:function({ on: onTooltip }){return [_c('v-toolbar',_vm._g({staticClass:\"tbdc-dropdownmenu\",staticStyle:{\"flex\":\"none\"},attrs:{\"dense\":\"\",\"flat\":\"\"}},{ ...onMenu, ...onTooltip }),[_c('v-toolbar-title',[_c('span',{staticStyle:{\"position\":\"absolute\",\"top\":\"1px\",\"font-size\":\"11px\",\"font-weight\":\"normal\",\"opacity\":\"0.6\"}},[_vm._v(_vm._s(_vm.$t(\"message.submodel\")))]),_c('h3',{staticStyle:{\"margin-top\":\"11px\",\"font-size\":\"16px\",\"font-weight\":\"normal\"}},[_vm._v(_vm._s(_vm.subModel.name))])])],1)]}}],null,true)},[_c('span',[_vm._v(_vm._s(_vm.$t(\"message.submodel\")))])])]}}],null,false,612385388)},[_c('v-list',{staticClass:\"overflow-y-auto\",staticStyle:{\"max-height\":\"95vh\"}},_vm._l((_vm.subModels),function(subModel){return _c('v-list-item',{key:subModel.id,on:{\"click\":function($event){return _vm.setSubModel(subModel)}}},[_vm._v(\" \"+_vm._s(subModel.name)+\" \")])}),1)],1),_c('v-divider',{staticClass:\"ml-2 mr-2\",attrs:{\"vertical\":\"\"}})],1):_vm._e(),_c('v-btn',{attrs:{\"icon\":\"\",\"target\":\"_blank\"},on:{\"click\":function($event){return _vm.downloadFile({ url: '/api/help/' + _vm.$i18n.locale, name: 'IRIS-Help.pdf' })}}},[_c('v-icon',[_vm._v(\"mdi-help-circle\")])],1)],1)\n}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","\r\n import { Component, Vue } from 'vue-property-decorator';\r\n import { Action, Getter } from 'vuex-class';\r\n\r\n const namespace = 'main';\r\n @Component\r\n export default class ModelMenu extends Vue {\r\n @Getter('getModel', { namespace }) getModel: any;\r\n @Action('setModel', { namespace }) setModel: any;\r\n @Getter('getScenarios', { namespace }) getScenarios: any;\r\n @Getter('getSubModels', { namespace }) getSubModels: any;\r\n @Getter('getSubModel', { namespace }) getSubModel: any;\r\n @Action('setSubModel', { namespace }) setSubModel: any;\r\n @Getter('getModels', { namespace }) getModels: any;\r\n @Action('downloadFile') downloadFile: any;\r\n\r\n private get isAuthenticated(): boolean {\r\n if (this.$msal == null) return true;\r\n return this.$msal.isAuthenticated;\r\n }\r\n\r\n private get models(): any {\r\n return this.getModels;\r\n }\r\n\r\n private get model(): any {\r\n const model = this.getModel;\r\n if (model != null) this.$i18n.locale = model.language;\r\n return model;\r\n }\r\n\r\n private set model(value: any) {\r\n this.setModel(value);\r\n }\r\n\r\n private get subModels(): any {\r\n return this.getSubModels;\r\n }\r\n\r\n private get subModel(): any {\r\n return this.getSubModel;\r\n }\r\n private set subModel(value: any) {\r\n this.setSubModel(value);\r\n }\r\n }\r\n","import mod from \"-!../../../node_modules/thread-loader/dist/cjs.js!../../../node_modules/babel-loader/lib/index.js!../../../node_modules/ts-loader/index.js??clonedRuleSet-41.use[2]!../../../node_modules/@vue/vue-loader-v15/lib/index.js??vue-loader-options!./ModelMenu.vue?vue&type=script&lang=ts&\"; export default mod; export * from \"-!../../../node_modules/thread-loader/dist/cjs.js!../../../node_modules/babel-loader/lib/index.js!../../../node_modules/ts-loader/index.js??clonedRuleSet-41.use[2]!../../../node_modules/@vue/vue-loader-v15/lib/index.js??vue-loader-options!./ModelMenu.vue?vue&type=script&lang=ts&\"","import { render, staticRenderFns } from \"./ModelMenu.vue?vue&type=template&id=01015b32&\"\nimport script from \"./ModelMenu.vue?vue&type=script&lang=ts&\"\nexport * from \"./ModelMenu.vue?vue&type=script&lang=ts&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../node_modules/@vue/vue-loader-v15/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","var render = function render(){var _vm=this,_c=_vm._self._c,_setup=_vm._self._setupProxy;return _c('span',[(_vm.getModel != null && _vm.getModel.mainLogoUrl == null && _vm.getModel.hasMainLogo)?_c('img',{staticStyle:{\"margin-top\":\"2px\",\"max-height\":\"24px\",\"margin-left\":\"10px\",\"margin-right\":\"10px\"},attrs:{\"src\":'/api/models/' + _vm.getModel.id + '/main-logo'}}):_vm._e(),(_vm.getModel != null && _vm.getModel.mainLogoUrl != null && _vm.getModel.hasMainLogo)?_c('a',{attrs:{\"target\":\"_blank\",\"href\":_vm.getModel.mainLogoUrl}},[_c('img',{staticStyle:{\"margin-top\":\"2px\",\"max-height\":\"24px\",\"margin-left\":\"10px\",\"margin-right\":\"10px\"},attrs:{\"src\":'/api/models/' + _vm.getModel.id + '/main-logo'}})]):_vm._e(),(_vm.getModel != null && _vm.getModel.secondaryLogoUrl == null && _vm.getModel.hasSecondaryLogo)?_c('img',{staticStyle:{\"margin-top\":\"2px\",\"max-height\":\"24px\",\"margin-left\":\"10px\",\"margin-right\":\"10px\"},attrs:{\"src\":'/api/models/' + _vm.getModel.id + '/secondary-logo'}}):_vm._e(),(_vm.getModel != null && _vm.getModel.secondaryLogoUrl != null && _vm.getModel.hasSecondaryLogo)?_c('a',{attrs:{\"target\":\"_blank\",\"href\":_vm.getModel.secondaryLogoUrl}},[_c('img',{staticStyle:{\"margin-top\":\"2px\",\"max-height\":\"24px\",\"margin-left\":\"10px\",\"margin-right\":\"10px\"},attrs:{\"src\":'/api/models/' + _vm.getModel.id + '/secondary-logo'}})]):_vm._e()])\n}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","\r\n import { Component, Vue } from 'vue-property-decorator';\r\n import { Getter } from 'vuex-class';\r\n \r\n const namespace = 'main';\r\n @Component({\r\n components: {\r\n },\r\n })\r\n export default class ModelLogo extends Vue {\r\n @Getter('getModel', { namespace }) getModel: any;\r\n }\r\n","import mod from \"-!../../../node_modules/thread-loader/dist/cjs.js!../../../node_modules/babel-loader/lib/index.js!../../../node_modules/ts-loader/index.js??clonedRuleSet-41.use[2]!../../../node_modules/@vue/vue-loader-v15/lib/index.js??vue-loader-options!./ModelLogo.vue?vue&type=script&lang=ts&\"; export default mod; export * from \"-!../../../node_modules/thread-loader/dist/cjs.js!../../../node_modules/babel-loader/lib/index.js!../../../node_modules/ts-loader/index.js??clonedRuleSet-41.use[2]!../../../node_modules/@vue/vue-loader-v15/lib/index.js??vue-loader-options!./ModelLogo.vue?vue&type=script&lang=ts&\"","import { render, staticRenderFns } from \"./ModelLogo.vue?vue&type=template&id=d3516530&\"\nimport script from \"./ModelLogo.vue?vue&type=script&lang=ts&\"\nexport * from \"./ModelLogo.vue?vue&type=script&lang=ts&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../node_modules/@vue/vue-loader-v15/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","var render = function render(){var _vm=this,_c=_vm._self._c,_setup=_vm._self._setupProxy;return _c('v-content',{staticClass:\"tbdc-fullwidthpage\"},[_c('v-col',[_c('h2',[_vm._v(\"We are sorry, the page you requested cannot be found.\")]),_c('p',{staticClass:\"grey--text\"},[_vm._v(\"The URL may be misspelled or the page you're looking for is no longer available.\")])])],1)\n}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","\r\n import { Component, Vue } from 'vue-property-decorator';\r\n @Component\r\n export default class NotFound extends Vue {\r\n }\r\n","import mod from \"-!../../node_modules/thread-loader/dist/cjs.js!../../node_modules/babel-loader/lib/index.js!../../node_modules/ts-loader/index.js??clonedRuleSet-41.use[2]!../../node_modules/@vue/vue-loader-v15/lib/index.js??vue-loader-options!./NotFound.vue?vue&type=script&lang=ts&\"; export default mod; export * from \"-!../../node_modules/thread-loader/dist/cjs.js!../../node_modules/babel-loader/lib/index.js!../../node_modules/ts-loader/index.js??clonedRuleSet-41.use[2]!../../node_modules/@vue/vue-loader-v15/lib/index.js??vue-loader-options!./NotFound.vue?vue&type=script&lang=ts&\"","import { render, staticRenderFns } from \"./NotFound.vue?vue&type=template&id=a63be602&\"\nimport script from \"./NotFound.vue?vue&type=script&lang=ts&\"\nexport * from \"./NotFound.vue?vue&type=script&lang=ts&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../node_modules/@vue/vue-loader-v15/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","var render = function render(){var _vm=this,_c=_vm._self._c,_setup=_vm._self._setupProxy;return (_vm.getModel)?_c('v-main',{staticClass:\"tbdc-fullwidthpage\"},[_c('LocationReport',{staticClass:\"d-print-block tbdc-fullwidthpage\",attrs:{\"location\":_vm.getLocation,\"locations\":_vm.getLocations,\"locationProperties\":_vm.getLocationProperties,\"scenario\":_vm.getScenario,\"environment\":_vm.getEnvironment,\"locationCatchmentArea\":_vm.getLocationCatchmentArea,\"catchmentArea\":_vm.getCatchmentArea,\"matchingLocations\":_vm.getMatchingLocations,\"matchingScores\":_vm.getMatchingScores,\"matchingColors\":_vm.getMatchingColors,\"locationDrivers\":_vm.getLocationDrivers,\"model\":_vm.getModel,\"subModel\":_vm.getSubModel,\"show\":_vm.locationReportVisible},on:{\"startBusy\":_vm.setStartBusy,\"endBusy\":_vm.setEndBusy,\"showChanged\":function($event){_vm.setLocationDrivers(null); _vm.locationReportVisible = false;}}}),_c('ScenarioReport',{staticClass:\"d-print-block tbdc-fullwidthpage\",attrs:{\"scenarioDifferences\":_vm.getScenarioDifferences,\"environment\":_vm.getEnvironment,\"model\":_vm.getModel,\"scenario\":_vm.getScenario,\"locations\":_vm.getLocations,\"show\":_vm.scenarioReportVisible},on:{\"showChanged\":function($event){_vm.clearScenarioDifferences(); _vm.scenarioReportVisible = false;}}}),_c('Dialog',{attrs:{\"show\":_vm.getLocationScores != null && _vm.locationScoresVisible},on:{\"showChanged\":function($event){_vm.locationScoresVisible = false;}},scopedSlots:_vm._u([{key:\"title\",fn:function(){return [_vm._v(\" \"+_vm._s(_vm.$tc(\"message.locationType\" + _vm.getModel.locationsType + \"Scores\"))+\" \")]},proxy:true},{key:\"content\",fn:function(){return [_c('LocationScores',{attrs:{\"model\":_vm.getModel,\"locationScores\":_vm.getLocationScores}})]},proxy:true}],null,false,1155273484)}),_c('Dialog',{attrs:{\"show\":_vm.areaScoresVisible},on:{\"showChanged\":function($event){_vm.areaScoresVisible = false;}},scopedSlots:_vm._u([{key:\"title\",fn:function(){return [_vm._v(\" \"+_vm._s(_vm.$t(\"message.areaScores\"))+\" \")]},proxy:true},{key:\"content\",fn:function(){return [_c('AreaScores',{attrs:{\"area\":_vm.getArea,\"model\":_vm.getModel}})]},proxy:true}],null,false,3347880310)}),_c('Dialog',{attrs:{\"show\":_vm.matchingLocationsOutputChartVisible},on:{\"showChanged\":function($event){_vm.matchingLocationsOutputChartVisible = false;}},scopedSlots:_vm._u([{key:\"title\",fn:function(){return [_vm._v(\" \"+_vm._s(_vm.$t(\"message.matchingLocationsOutputChart\"))+\" \")]},proxy:true},{key:\"content\",fn:function(){return [_c('MatchingLocationsOutputChart',{attrs:{\"matchingLocations\":_vm.getMatchingLocations,\"location\":_vm.getLocation,\"model\":_vm.getModel,\"matchingColors\":_vm.getMatchingColors}})]},proxy:true}],null,false,2671454614)}),_c('Dialog',{attrs:{\"show\":_vm.matchingLocationsRadarChartVisible},on:{\"showChanged\":function($event){_vm.matchingLocationsRadarChartVisible = false;}},scopedSlots:_vm._u([{key:\"title\",fn:function(){return [_vm._v(\" \"+_vm._s(_vm.$t(\"message.matchingLocationsSimilarityChart\"))+\" \")]},proxy:true},{key:\"content\",fn:function(){return [_c('MatchingLocationsRadarChart',{attrs:{\"matchingScores\":_vm.getMatchingScores,\"matchingColors\":_vm.getMatchingColors,\"location\":_vm.getLocation}})]},proxy:true}],null,false,3607662615)}),_c('Dialog',{attrs:{\"show\":_vm.getLog != null},on:{\"showChanged\":function($event){return _vm.setLog(null)}},scopedSlots:_vm._u([{key:\"title\",fn:function(){return [_vm._v(\" \"+_vm._s(_vm.$t(\"message.log\"))+\" \")]},proxy:true},{key:\"content\",fn:function(){return [_c('Log',{attrs:{\"data\":_vm.getLog},on:{\"fetchLog\":_vm.fetchLog}})]},proxy:true}],null,false,3616101385)}),_c('Dialog',{attrs:{\"show\":_vm.getLocationDrivers != null && _vm.driversChartVisible},on:{\"showChanged\":function($event){_vm.driversChartVisible = false; _vm.setLocationDrivers(null);}},scopedSlots:_vm._u([{key:\"title\",fn:function(){return [_vm._v(\" \"+_vm._s(_vm.$t(\"message.driversChart\"))+\" \")]},proxy:true},{key:\"content\",fn:function(){return [_c('DriversChart',{attrs:{\"location\":_vm.getLocation,\"locationDrivers\":_vm.getLocationDrivers}})]},proxy:true}],null,false,19682870)}),_c('Dialog',{attrs:{\"show\":_vm.propertiesChartVisible},on:{\"showChanged\":function($event){_vm.propertiesChartVisible = false; _vm.getPropertiesChart.data = null}},scopedSlots:_vm._u([{key:\"title\",fn:function(){return [_vm._v(\" \"+_vm._s(_vm.$t(\"message.propertiesChart\"))+\" \")]},proxy:true},{key:\"content\",fn:function(){return [_c('PropertiesChart',{attrs:{\"propertiesChartData\":_vm.getPropertiesChart,\"location\":_vm.getLocation,\"scenario\":_vm.getScenario,\"matchingColors\":_vm.getMatchingColors},on:{\"locationPropertyChanged\":_vm.fetchPropertiesChartData}})]},proxy:true}],null,false,24002324)}),_c('v-container',{staticClass:\"fill-height d-print-none\",staticStyle:{\"width\":\"100%\",\"position\":\"absolute\",\"margin-left\":\"0\",\"margin-right\":\"0\",\"max-width\":\"unset\"},attrs:{\"fluid\":\"\",\"pa-0\":\"\"}},[_c('div',{staticClass:\"home\",staticStyle:{\"width\":\"100%\",\"height\":\"100%\"}},[_c('GoogleMap',{attrs:{\"leftPadding\":_vm.$refs?.leftDrawer?.offsetWidth,\"rightPadding\":_vm.$refs?.rightDrawer?.offsetWidth,\"scenarioLocationsVisible\":_vm.getScenarioLocationsVisible,\"zoom\":8,\"area\":_vm.getArea,\"mapTypeControl\":true,\"pois\":_vm.getPois,\"heatMapPoints\":_vm.getHeatMapPoints,\"searchResults\":_vm.getSearchResults,\"filter\":_vm.getFilterLocations,\"streetViewControl\":true,\"locationCatchmentArea\":_vm.getLocationCatchmentArea,\"catchmentArea\":_vm.getCatchmentArea,\"locations\":_vm.locations,\"scenarioLocations\":_vm.scenarioLocations,\"locationIsoLines\":_vm.getLocationIsoLines,\"isoLineSet\":_vm.getIsoLineSet,\"isoLineMinutes\":_vm.getIsoLineMinutes,\"model\":_vm.getModel,\"location\":_vm.getLocation,\"onlinePois\":_vm.getOnlinePois,\"areaSetsVisible\":_vm.getAreaSetsVisible,\"scenario\":_vm.getScenario},on:{\"startBusy\":_vm.setStartBusy,\"endBusy\":_vm.setEndBusy,\"startInProgress\":_vm.setStartInProgress,\"endInProgress\":_vm.setEndInProgress,\"legendChanged\":_vm.legendChanged,\"mapBoundsChanged\":_vm.setMapBounds,\"deselect\":function($event){return _vm.setLocation(null);},\"rightClick\":_vm.rightClick,\"locationLeftClick\":_vm.leftClickLocation,\"scenarioLocationLeftClick\":_vm.leftClickScenarioLocation,\"locationRightClick\":_vm.rightClickLocation}})],1),_vm._t(\"fill\")],2),_c('div',{staticClass:\"tbdc-floatingtoolbarcontainer\"},[_c('div',{staticClass:\"tbdc-floatingtoolbar tbdc-elevation-5 d-print-none\"},[_c('FloatingMenu',{attrs:{\"legendData\":_vm.legendData},on:{\"showMatchingLocationsOutputChart\":function($event){_vm.matchingLocationsOutputChartVisible = true},\"showMatchingLocationsRadarChart\":function($event){return _vm.showMatchingScores();},\"showDriversChart\":function($event){return _vm.showDriversChart()},\"showPropertiesChart\":function($event){_vm.propertiesChartVisible = true; _vm.showPropertiesChart();},\"showLocationReport\":function($event){return _vm.showLocationReport();},\"showScenarioReport\":function($event){_vm.fetchScenarioDifferences(); _vm.scenarioReportVisible = false; _vm.scenarioReportVisible = true;},\"showLocationScores\":function($event){return _vm.showLocationScores();},\"showAreaScores\":function($event){_vm.areaScoresVisible = false; _vm.areaScoresVisible = true}}})],1),(_vm.getNotificationText)?_c('div',{staticClass:\"tbdc-floatingtoolbar tbdc-elevation-5 d-print-none\",staticStyle:{\"position\":\"relative\",\"width\":\"100%\",\"height\":\"auto\",\"margin-top\":\"1em\",\"font-size\":\"13px\",\"background-color\":\"#666666\",\"opacity\":\"0.9\",\"color\":\"white\",\"padding-left\":\"16px\",\"padding-right\":\"16px\",\"padding-top\":\"8px\",\"padding-bottom\":\"8px\"}},[_c('v-btn',{staticStyle:{\"float\":\"right\"},attrs:{\"icon\":\"\",\"small\":\"\"},on:{\"click\":function($event){return _vm.setNotificationText(null)}}},[_c('v-icon',{attrs:{\"color\":\"white\"}},[_vm._v(\"mdi-close\")])],1),_c('div',{staticStyle:{\"margin-top\":\"4px\"}},[_vm._v(_vm._s(_vm.getNotificationText))])],1):_vm._e()]),_c('div',{staticClass:\"tbdc-drawercontainer tbdc-drawercontainerleft\"},[_c('div',{staticClass:\"tbdc-elevation-5\",staticStyle:{\"overflow\":\"hidden\",\"height\":\"100%\"}},[(_vm.model)?_c('div',{ref:\"leftDrawer\",staticClass:\"tbdc-drawer d-print-none\",style:({ 'width': _vm.leftDrawer.width + 'px' })},[_c('div',{staticClass:\"tbdc-drawerborder\"}),_c('v-container',[_c('h2',[_vm._v(_vm._s(_vm.$tc(\"message.locationsType\" + _vm.getModel.locationsType + \"Name\")))]),(_vm.location)?_c('h3',[_vm._v(\" \"+_vm._s(_vm.location.name)+\" \")]):_vm._e(),(_vm.location && _vm.location.changeType != 2)?[(!_vm.getLocation)?_c('p',{staticClass:\"grey--text\"},[_vm._v(_vm._s(_vm.$t(\"message.drawerEmptyText\")))]):_vm._e(),(_vm.getLocationPhoto != null)?_c('div',[_c('a',{attrs:{\"href\":_vm.getLocationPhoto.googleMapsUrl,\"target\":\"_blank\"}},[_c('v-img',{staticClass:\"mb-2\",attrs:{\"src\":_vm.getLocationPhoto.url,\"max-height\":\"300\"}})],1)]):_vm._e(),(_vm.getLocation && _vm.getLocation.visibility == 0)?_c('LocationInformation',{attrs:{\"model\":_vm.getModel,\"subModel\":_vm.getSubModel,\"location\":_vm.location,\"locationProperties\":_vm.getLocationProperties,\"locationPropertiesOld\":_vm.getLocationPropertiesOld}}):_vm._e()]:_vm._e()],2)],1):_vm._e()])]),_c('div',{staticClass:\"tbdc-drawercontainer tbdc-drawercontainerright\"},[_c('div',{staticClass:\"tbdc-elevation-5\",staticStyle:{\"overflow\":\"hidden\",\"height\":\"100%\"}},[(_vm.model)?_c('div',{ref:\"rightDrawer\",staticClass:\"tbdc-drawer tbdc-drawerright d-print-none\",style:({ 'width': _vm.rightDrawer.width + 'px' })},[_c('div',{staticClass:\"tbdc-drawerborder\"}),(_vm.getLocation && _vm.getLocation.visibility == 0)?_c('v-container',[_c('h2',[_vm._v(_vm._s(_vm.$t(\"message.calculationModelOutput\")))]),(_vm.getLocation)?_c('h3',[_vm._v(_vm._s(_vm.getLocation.name))]):_vm._e(),(_vm.getLocation == null)?_c('p',{staticClass:\"grey--text\"},[_vm._v(_vm._s(_vm.$t(\"message.drawerEmptyText\")))]):_c('div',[(_vm.getScenario.status == 9)?_c('div',[_c('ModelOutput',{attrs:{\"model\":_vm.getModel,\"subModel\":_vm.getSubModel,\"locationProperties\":_vm.getLocationProperties,\"location\":_vm.getLocation}}),(_vm.getModel.hasNormalizedScoresFunctions)?_c('MatchingLocations',{attrs:{\"matchingLocations\":_vm.getMatchingLocations,\"location\":_vm.getLocation},on:{\"locationIdChanged\":_vm.setLocationByIdWithFocus}}):_vm._e(),_c('CatchmentAreaInformation',{attrs:{\"model\":_vm.getModel,\"locationProperties\":_vm.getLocationProperties,\"location\":_vm.getLocation,\"locationCatchmentArea\":_vm.getLocationCatchmentArea},on:{\"areaSelected\":function($event){if (_vm.getModel.catchmentAreaMode == 0) _vm.fetchAreaWithLocations({ areaCode: $event, areaSetId: _vm.getCatchmentArea.areaSetId } ); else _vm.fetchArea({ areaCode: $event, areaSetId: _vm.getCatchmentArea.areaSetId });}}})],1):(_vm.getScenario.status > 0)?_c('p',{staticClass:\"grey--text\"},[_vm._v(_vm._s(_vm.$t(\"message.drawerCalculating\")))]):_c('p',{staticClass:\"grey--text\"},[_vm._v(\" \"+_vm._s(_vm.$t(\"message.drawerNotCalculated\"))+\" \"),_c('v-btn',{staticStyle:{\"display\":\"block\",\"position\":\"absolute\",\"left\":\"50%\",\"top\":\"50%\",\"transform\":\"translate(-50%)\"},attrs:{\"text\":\"\",\"color\":\"primary\"},on:{\"click\":function($event){return _vm.calculateScenario(_vm.getScenario);}}},[_vm._v(\" \"+_vm._s(_vm.$t(\"message.calculateScenario\"))+\" \")])],1)]),_c('AreaInformation',{attrs:{\"model\":_vm.getModel,\"area\":_vm.getArea,\"scenario\":_vm.scenario},on:{\"locationChanged\":_vm.setLocation,\"areaCleared\":_vm.clearArea},scopedSlots:_vm._u([{key:\"actions\",fn:function(){return [_c('v-btn',{attrs:{\"icon\":\"\"},on:{\"click\":_vm.clearArea}},[_c('v-icon',[_vm._v(\"mdi-close\")])],1)]},proxy:true}],null,false,3400223689)})],1):_vm._e()],1):_vm._e()])]),_c('CopyChanges',{attrs:{\"model\":_vm.getModel,\"scenarios\":_vm.getScenarios,\"scenario\":_vm.getScenarioMerging},on:{\"save\":_vm.saveMergingScenarioLocal}}),_c('EditScenario',{attrs:{\"model\":_vm.getModel,\"scenarios\":_vm.getScenarios,\"scenario\":_vm.getScenarioEditing,\"originalScenario\":_vm.getScenario},on:{\"save\":_vm.saveScenarioEditing}}),_c('EditScenarioName',{attrs:{\"scenario\":_vm.getScenarioNameEditing},on:{\"save\":_vm.saveScenarioEditing}}),_c('EditLocation',{attrs:{\"model\":_vm.getModel,\"scenario\":_vm.getScenario,\"location\":_vm.getLocationEditing},on:{\"save\":_vm.saveLocationEditing,\"changed\":_vm.editLocationChanged}}),_c('CloseLocation',{attrs:{\"model\":_vm.getModel,\"scenario\":_vm.getScenario,\"location\":_vm.getLocationClosing},on:{\"save\":_vm.saveLocationClosing}}),_c('EditModelParameters',{attrs:{\"model\":_vm.getModel,\"modelParameters\":_vm.getModelParameters},on:{\"save\":_vm.saveModelParameters}}),_c('EditDrivers',{attrs:{\"model\":_vm.getModel,\"driverFilters\":_vm.getDrivers},on:{\"save\":_vm.saveDrivers}}),_c('EditNormalizedScoresFunctions',{attrs:{\"model\":_vm.getModel,\"normalizedScoresFunctions\":_vm.getNormalizedScoresFunctions},on:{\"save\":_vm.saveNormalizedScoresFunctions}}),_c('ScenarioProcessingLog',{attrs:{\"model\":_vm.getModel,\"scenarioProcessingLog\":_vm.getScenarioProcessingLog,\"scenario\":_vm.getScenario}}),(_vm.locationContextMenuArguments && _vm.locationContextMenuArguments.location && _vm.locationContextMenuArguments.location.visibility == 0)?_c('div',{staticClass:\"pa-4 tbdc-tooltip\",style:({'z-index': '10','background-color': 'white',position: 'absolute',top:_vm.locationContextMenuArguments.y - 5 + 'px',left:_vm.locationContextMenuArguments.x - 5 +'px'}),attrs:{\"oncontextmenu\":\"return false;\"},on:{\"mouseleave\":function($event){_vm.mapContextMenuArguments = null; _vm.locationContextMenuArguments = null}}},[_c('h3',{staticClass:\"mb-2 tbdc-clickable\",on:{\"click\":function($event){return _vm.navigateTo('https://www.google.com/maps?q=' + _vm.locationContextMenuArguments.location.latitude + ',' + _vm.locationContextMenuArguments.location.longitude);}}},[_vm._v(_vm._s(_vm.locationContextMenuArguments.location.name))]),_c('v-list',{staticClass:\"pa-0\",attrs:{\"dense\":\"\"}},[_c('v-list-item-group',{attrs:{\"color\":\"primary\"}},[(_vm.locationContextMenuArguments.location.changeType == 0 || _vm.locationContextMenuArguments.location.changeType == 1 || _vm.locationContextMenuArguments.location.changeType == 3)?_c('v-list-item',{staticStyle:{\"padding\":\"0\"},attrs:{\"disabled\":_vm.getReadOnly},on:{\"click\":function($event){return _vm.editLocation(_vm.locationContextMenuArguments.location)}}},[_c('v-list-item-action',[_c('v-icon',[_vm._v(\"mdi-pencil-outline\")])],1),_c('v-list-item-content',[_c('v-list-item-title',[_vm._v(_vm._s(_vm.$t(\"message.edit\")))])],1)],1):_vm._e(),(_vm.locationContextMenuArguments.location.changeType == 0)?_c('v-list-item',{staticStyle:{\"padding\":\"0\"},attrs:{\"disabled\":_vm.getReadOnly},on:{\"click\":function($event){return _vm.closeLocation(_vm.locationContextMenuArguments.location)}}},[_c('v-list-item-action',[_c('v-icon',[_vm._v(\"mdi-close-outline\")])],1),_c('v-list-item-content',[_c('v-list-item-title',[_vm._v(_vm._s(_vm.$t(\"message.close\")))])],1)],1):_vm._e(),(_vm.locationContextMenuArguments.location.changeType == 1 )?_c('v-list-item',{staticStyle:{\"padding\":\"0\"},attrs:{\"disabled\":_vm.getScenario.parentScenarioId == null || _vm.getReadOnly},on:{\"click\":function($event){return _vm.confirmRemoveLocation(_vm.locationContextMenuArguments.location)}}},[_c('v-list-item-action',[_c('v-icon',[_vm._v(\"mdi-delete-outline\")])],1),_c('v-list-item-content',[_c('v-list-item-title',[_vm._v(_vm._s(_vm.$t(\"message.delete\")))])],1)],1):_vm._e(),(_vm.locationContextMenuArguments.location.changeType == 2)?_c('v-list-item',{staticStyle:{\"padding\":\"0\"},attrs:{\"disabled\":_vm.getScenario.parentScenarioId == null || _vm.getReadOnly},on:{\"click\":function($event){return _vm.undoCloseLocation(_vm.locationContextMenuArguments.location)}}},[_c('v-list-item-action',[_c('v-icon',[_vm._v(\"mdi-undo-variant\")])],1),_c('v-list-item-content',[_c('v-list-item-title',[_vm._v(_vm._s(_vm.$t(\"message.undoClose\")))])],1)],1):_vm._e(),(_vm.locationContextMenuArguments.location.changeType == 3)?_c('v-list-item',{staticStyle:{\"padding\":\"0\"},attrs:{\"disabled\":_vm.getScenario.parentScenarioId == null || _vm.getReadOnly},on:{\"click\":function($event){return _vm.confirmUndoEditLocation(_vm.locationContextMenuArguments.location)}}},[_c('v-list-item-action',[_c('v-icon',[_vm._v(\"mdi-undo-variant\")])],1),_c('v-list-item-content',[_c('v-list-item-title',[_vm._v(_vm._s(_vm.$t(\"message.undoEdit\")))])],1)],1):_vm._e()],1)],1)],1):_vm._e(),(_vm.mapContextMenuArguments)?_c('div',{staticClass:\"pa-4 tbdc-tooltip\",style:({'z-index': '10','background-color': 'white',position: 'absolute',top:_vm.mapContextMenuArguments.y - 5 + 'px',left:_vm.mapContextMenuArguments.x - 5 +'px'}),attrs:{\"oncontextmenu\":\"return false;\"},on:{\"mouseleave\":function($event){_vm.mapContextMenuArguments = null; _vm.locationContextMenuArguments = null}}},[_c('h3',{staticClass:\"mb-2 tbdc-clickable\",on:{\"click\":function($event){return _vm.navigateTo('https://www.google.com/maps?q=' + _vm.mapContextMenuArguments.latitude + ',' + _vm.mapContextMenuArguments.longitude);}}},[_vm._v(_vm._s(_vm.formatCoordinates(_vm.mapContextMenuArguments.latitude,_vm.mapContextMenuArguments.longitude)))]),_c('v-list',{staticClass:\"pa-0\",attrs:{\"dense\":\"\"}},[_c('v-list-item-group',{attrs:{\"color\":\"primary\"}},[_c('v-list-item',{staticStyle:{\"padding\":\"0\"},attrs:{\"disabled\":_vm.getReadOnly},on:{\"click\":function($event){return _vm.editNewLocationWithDefaultCheck({ createScenarioParentId: _vm.getScenario.parentScenarioId, parentScenarioId: _vm.getScenario.parentScenarioId, scenarioId: _vm.getScenario.id , name: '', locationGroup: null, locationCluster: null, latitude: _vm.mapContextMenuArguments.latitude, longitude: _vm.mapContextMenuArguments.longitude })}}},[_c('v-list-item-action',[_c('v-icon',[_vm._v(\"mdi-plus\")])],1),_c('v-list-item-content',[_c('v-list-item-title',[_vm._v(_vm._s(_vm.$t(\"message.locationsType\" + _vm.model.locationsType + \"New\")))])],1)],1),(_vm.getModel.catchmentAreaMode == 0)?[_c('v-list-item',{staticStyle:{\"padding\":\"0\"},on:{\"click\":function($event){return _vm.fetchAreaWithLocations({ arguments: _vm.mapContextMenuArguments, areaSetId: _vm.getModel.areaSets[0].id })}}},[_c('v-list-item-action',[_c('v-icon',[_vm._v(\"mdi-land-fields\")])],1),_c('v-list-item-content',[_c('v-list-item-title',[_vm._v(_vm._s(_vm.$t(\"message.areaInformationCatchmentArea\")))])],1)],1)]:_vm._e(),_vm._l((_vm.visibleAreaSets),function(areaSet){return _c('div',{key:'as2' + areaSet.id},[_c('v-list-item',{key:areaSet.id,staticStyle:{\"padding\":\"0\"},on:{\"click\":function($event){return _vm.fetchArea( { arguments: _vm.mapContextMenuArguments , areaSetId: areaSet.id })}}},[_c('v-list-item-action',[_c('v-icon',[_vm._v(\"mdi-land-fields\")])],1),_c('v-list-item-content',[_c('v-list-item-title',[_vm._v(_vm._s(_vm.$t(\"message.areaInformation\"))+\" (\"+_vm._s(areaSet.title)+\")\")])],1)],1)],1)})],2)],1)],1):_vm._e()],1):_vm._e()\n}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","var render = function render(){var _vm=this,_c=_vm._self._c,_setup=_vm._self._setupProxy;return (_vm.getModel && _vm.getScenario)?_c('fragment',[_c('div',{staticClass:\"tbdc-floatingmenu\"},[(_vm.isAuthenticated && _vm.scenario && _vm.scenarios)?_c('v-menu',{attrs:{\"max-height\":\"none\",\"close-on-content-click\":false,\"offset-y\":\"\",\"content-class\":\"tbdc-floatingmenucontent\"},scopedSlots:_vm._u([{key:\"activator\",fn:function({ on: onMenu }){return [_c('v-tooltip',{attrs:{\"bottom\":\"\",\"open-delay\":\"250\",\"open-on-hover\":true},scopedSlots:_vm._u([{key:\"activator\",fn:function({ on: onTooltip }){return [_c('div',_vm._g({staticClass:\"tbdc-floatingmenubutton tbdc-dropdownmenu\",staticStyle:{\"padding\":\"10px\",\"padding-top\":\"12px\",\"margin-left\":\"10px\",\"margin-right\":\"48px\",\"width\":\"calc(100% - 64px)\"}},{ ...onMenu, ...onTooltip }),[_c('span',{staticStyle:{\"position\":\"absolute\",\"margin-left\":\"6px\",\"top\":\"-1px\",\"font-size\":\"11px\",\"font-weight\":\"normal\",\"opacity\":\"0.6\"}},[_vm._v(_vm._s(_vm.$t(\"message.scenario\")))]),_c('h3',{staticStyle:{\"position\":\"absolute\",\"margin-left\":\"6px\",\"font-size\":\"16px\",\"font-weight\":\"normal\",\"white-space\":\"nowrap\",\"overflow\":\"hidden\",\"text-overflow\":\"ellipsis\",\"width\":\"97%\"}},[_vm._v(_vm._s(_vm.getScenario.name))])])]}}],null,true)},[_c('span',[_vm._v(_vm._s(_vm.$t(\"message.scenarios\")))])])]}}],null,false,189357599),model:{value:(_vm.scenariosMenuVisible),callback:function ($$v) {_vm.scenariosMenuVisible=$$v},expression:\"scenariosMenuVisible\"}},[_c('v-list',[_c('v-subheader',[_vm._v(_vm._s(_vm.$t(\"message.filterScenarios\")))]),_c('v-form',{on:{\"submit\":function($event){$event.preventDefault();}}},[_c('v-list-item',[_c('v-list-item-content',[_c('v-text-field',{staticClass:\"text-field-icon\",attrs:{\"dense\":\"\",\"outlined\":\"\",\"append-icon\":_vm.getFilterScenarios!= null && _vm.getFilterScenarios != '' ? 'mdi-exclamation' : '',\"hide-details\":\"\",\"single-line\":\"\",\"label\":_vm.$t('message.name'),\"clearable\":\"\"},on:{\"click:clear\":function($event){return _vm.findScenarios(null)}},model:{value:(_vm.standByFilterScenarios),callback:function ($$v) {_vm.standByFilterScenarios=$$v},expression:\"standByFilterScenarios\"}})],1),_c('v-list-item-action',[_c('v-btn',{attrs:{\"type\":\"submit\",\"icon\":\"\"},on:{\"click\":function($event){return _vm.findScenarios(_vm.standByFilterScenarios);}}},[_c('v-icon',[_vm._v(\"mdi-magnify\")])],1)],1)],1)],1),_c('v-virtual-scroll',{attrs:{\"bench\":\"20\",\"height\":Math.min(384,_vm.scenariosLeveled.length * 48),\"item-height\":\"48\",\"items\":_vm.scenariosLeveled,\"min-width\":Math.max(_vm.maxLengthScenarioName?.length*8,400)},scopedSlots:_vm._u([{key:\"default\",fn:function({ item }){return [(item.scenario.changes && item.scenario.changes.length > 0 && item.scenario.parentScenarioId != null)?_c('v-tooltip',{attrs:{\"open-delay\":\"250\",\"open-on-hover\":true,\"bottom\":\"\"},scopedSlots:_vm._u([{key:\"activator\",fn:function({ on, attrs }){return [_c('v-list-item',_vm._g(_vm._b({on:{\"click\":function($event){return _vm.setScenarioAndCloseMenu(item.scenario)}}},'v-list-item',attrs,false),on),[_c('v-list-item-action',{style:({ marginLeft: (item.level) * 20 + 'px' })},[_c('ScenarioStatus',{attrs:{\"status\":item.scenario.status,\"scenario\":item.scenario,\"changes\":item.scenario.changeCount}})],1),_c('v-list-item-content',{style:({ 'font-weight': item.scenario.isTop ? 'bold' : 'normal' })},[_c('v-list-item-title',{style:({ marginLeft: (item.level) * 20 + 'px' })},[_vm._v(\"  \"+_vm._s(item.scenario.name)+\" \")])],1)],1)]}}],null,true)},[(item.scenario.changes && item.scenario.changes.length > 0 && item.scenario.parentScenarioId != null)?_c('div',_vm._l((item.scenario.changes),function(change){return _c('div',{key:change.locationId},[(change.changeType == 1)?_c('img',{staticClass:\"tbdc-changetypeimage\",attrs:{\"src\":require('../../assets/opening.png')}}):_vm._e(),(change.changeType == 2)?_c('img',{staticClass:\"tbdc-changetypeimage\",attrs:{\"src\":require('../../assets/closure.png')}}):_vm._e(),(change.changeType == 3)?_c('img',{staticClass:\"tbdc-changetypeimage\",attrs:{\"src\":require('../../assets/edit.png')}}):_vm._e(),_vm._v(\" \"+_vm._s(change.locationName)+\" \")])}),0):_vm._e()]):_c('v-list-item',{on:{\"click\":function($event){return _vm.setScenarioAndCloseMenu(item.scenario)},\"mouseenter\":function($event){return _vm.fetchAndSetScenarioChanges(item.scenario)}}},[_c('v-list-item-action',{style:({ marginLeft: (item.level) * 20 + 'px' })},[_c('ScenarioStatus',{attrs:{\"status\":item.scenario.status,\"scenario\":item.scenario,\"changes\":item.scenario.changeCount}})],1),_c('v-list-item-content',{style:({ 'font-weight': item.scenario.isTop ? 'bold' : 'normal' })},[_c('v-list-item-title',{style:({ marginLeft: (item.level) * 20 + 'px' })},[_vm._v(\"  \"+_vm._s(item.scenario.name)+\" \")])],1)],1)]}}],null,false,2365834265)})],1)],1):_vm._e(),(_vm.isAuthenticated && _vm.scenario && _vm.scenarios)?_c('v-menu',{attrs:{\"offset-y\":\"\",\"content-class\":\"tbdc-floatingmenucontent\"},scopedSlots:_vm._u([{key:\"activator\",fn:function({ on: onMenu }){return [_c('v-tooltip',{attrs:{\"bottom\":\"\",\"open-delay\":\"250\",\"open-on-hover\":true},scopedSlots:_vm._u([{key:\"activator\",fn:function({ on: onTooltip }){return [_c('div',{staticClass:\"tbdc-floatingmenubutton\",staticStyle:{\"position\":\"absolute\",\"right\":\"0\"}},[_c('v-btn',_vm._g({staticStyle:{\"padding\":\"8\"},attrs:{\"icon\":\"\"}},{ ...onMenu, ...onTooltip }),[_c('v-icon',[_vm._v(\"mdi-menu\")])],1)],1)]}}],null,true)},[_c('span',[_vm._v(_vm._s(_vm.$t(\"message.selectedScenario\")))])])]}}],null,false,1554071836)},[_c('v-list',[_c('v-subheader',[_vm._v(_vm._s(_vm.$t(\"message.selectedScenario\")))]),_c('v-list-item',{attrs:{\"disabled\":_vm.getScenario == null || (_vm.getScenario.status > 0 && _vm.getScenario.status < 9)},on:{\"click\":function($event){return _vm.calculateScenario(_vm.getScenario);}}},[_c('v-list-item-action',[_c('v-icon',[_vm._v(\"mdi-play-outline\")])],1),_c('v-list-item-content',[_c('v-list-item-title',[_vm._v(\" \"+_vm._s(_vm.$t(\"message.calculateScenario\"))+\" \")])],1)],1),(true)?_c('v-list-item',{attrs:{\"disabled\":_vm.getScenario.parentScenarioId == null},on:{\"click\":function($event){return _vm.editScenario({ id: _vm.getScenario.id, name: _vm.getScenario.name, competition: _vm.getScenario.competition, isTop: _vm.getScenario.isTop, parentScenarioId: _vm.getScenario.parentScenarioId, changeCount: _vm.getScenario.changeCount });}}},[_c('v-list-item-action',[_c('v-icon',[_vm._v(\"mdi-pencil-outline\")])],1),_c('v-list-item-content',[_c('v-list-item-title',[_vm._v(\" \"+_vm._s(_vm.$t(\"message.editScenario\"))+\" \")])],1)],1):_vm._e(),_c('v-list-item',{attrs:{\"disabled\":_vm.getScenario.parentScenarioId == null || _vm.scenarioHasChildren},on:{\"click\":function($event){return _vm.confirmRemoveScenario(_vm.getScenario);}}},[_c('v-list-item-action',[_c('v-icon',[_vm._v(\"mdi-delete-outline\")])],1),_c('v-list-item-content',[_c('v-list-item-title',[_vm._v(\" \"+_vm._s(_vm.$t(\"message.removeScenario\"))+\" \")])],1)],1),_c('v-list-item',{on:{\"click\":function($event){return _vm.fetchScenarioProcessingLog(_vm.getScenario);}}},[_c('v-list-item-action',[_c('v-icon',[_vm._v(\"mdi-view-list-outline\")])],1),_c('v-list-item-content',[_c('v-list-item-title',[_vm._v(\" \"+_vm._s(_vm.$t(\"message.scenarioProcessingLog\"))+\" \")])],1)],1),(true)?_c('v-list-item',{attrs:{\"disabled\":_vm.scenarioHasChildren},on:{\"click\":function($event){_vm.mergeScenarioLocal(); _vm.scenariosMenuVisible = false}}},[_c('v-list-item-action',[_c('v-icon',[_vm._v(\"mdi-merge\")])],1),_c('v-list-item-content',[_c('v-list-item-title',[_vm._v(\" \"+_vm._s(_vm.$t(\"message.copyChanges\"))+\" \")])],1)],1):_vm._e()],1)],1):_vm._e()],1),(_vm.scenario.status != 10)?_c('v-progress-linear',{staticStyle:{\"background-color\":\"#E8F5E9\"},attrs:{\"buffer-value\":Math.round(100 / 8 * (_vm.scenario.status - 1)),\"indeterminate\":_vm.scenario.status > 0 && _vm.scenario.status < 9,\"color\":\"green lighten-2\",\"background-color\":\"green\"}}):_vm._e(),(_vm.scenario.status >= 10)?_c('v-progress-linear',{attrs:{\"value\":\"100\",\"color\":\"red darken-1\"}}):_vm._e(),_c('div',{staticClass:\"tbdc-floatingmenu\"},[_c('v-menu',{staticClass:\"tbdc-floatingmenu\",attrs:{\"offset-y\":\"\",\"close-on-click\":true,\"max-height\":\"none\",\"close-on-content-click\":false,\"content-class\":\"tbdc-floatingmenucontent\"},scopedSlots:_vm._u([{key:\"activator\",fn:function({ on: onMenu }){return [_c('v-tooltip',{attrs:{\"bottom\":\"\",\"open-delay\":\"250\",\"open-on-hover\":true},scopedSlots:_vm._u([{key:\"activator\",fn:function({ on: onTooltip }){return [_c('div',{staticClass:\"tbdc-floatingmenubutton\"},[_c('v-btn',{attrs:{\"icon\":\"\"}},[_c('div',{staticClass:\"tbdc-scenariostatus\"},[_c('v-icon',_vm._g({},{ ...onMenu, ...onTooltip }),[_vm._v(\"mdi-map-marker-outline\")])],1)]),(_vm.getFilterLocations!= null && _vm.getFilterLocations != '')?_c('div',{staticStyle:{\"position\":\"absolute\",\"font-size\":\"24px\",\"right\":\"10px\",\"top\":\"-1px\",\"color\":\"orange\",\"text-align\":\"right\",\"padding-top\":\"2px\",\"padding-left\":\"0px\",\"border-radius\":\"50%\"}},[_c('div',{staticStyle:{\"text-align\":\"center\"}},[_vm._v(\" ! \")])]):_vm._e()],1)]}}],null,true)},[_c('span',[_vm._v(_vm._s(_vm.$t(\"message.filterAndSearch\")))])])]}}],null,false,3351924149),model:{value:(_vm.filterMenuVisible),callback:function ($$v) {_vm.filterMenuVisible=$$v},expression:\"filterMenuVisible\"}},[_c('v-list',[_c('v-subheader',[_vm._v(_vm._s(_vm.$t(\"message.locationsType\" + _vm.getModel.locationsType + \"FilterLocations\")))]),_c('v-form',{on:{\"submit\":function($event){$event.preventDefault();}}},[_c('v-list-item',[_c('v-list-item-content',[_c('v-text-field',{staticClass:\"text-field-icon\",attrs:{\"dense\":\"\",\"outlined\":\"\",\"append-icon\":_vm.getFilterLocations!= null && _vm.getFilterLocations != '' ? 'mdi-exclamation' : '',\"hide-details\":\"\",\"single-line\":\"\",\"label\":_vm.$t('message.name'),\"clearable\":\"\"},on:{\"click:clear\":function($event){return _vm.setFilterLocations('')}},model:{value:(_vm.standByFilterLocations),callback:function ($$v) {_vm.standByFilterLocations=$$v},expression:\"standByFilterLocations\"}})],1),_c('v-list-item-action',[_c('v-btn',{attrs:{\"type\":\"submit\",\"icon\":\"\"},on:{\"click\":function($event){return _vm.setFilterLocations(_vm.standByFilterLocations);}}},[_c('v-icon',[_vm._v(\"mdi-filter-outline\")])],1)],1)],1)],1),(_vm.getLocations != null && _vm.getFilteredLocations != null)?_c('v-virtual-scroll',{attrs:{\"bench\":\"20\",\"height\":Math.min(384,_vm.getFilteredLocations.length * 48),\"min-width\":Math.max(_vm.maxLengthLocationName?.length*8,400),\"item-height\":\"48\",\"items\":_vm.getFilteredLocations},scopedSlots:_vm._u([{key:\"default\",fn:function({ item }){return [_c('v-list-item',{on:{\"click\":function($event){item['zoomTo'] = true; _vm.setLocation(item); _vm.filterMenuVisible = false}}},[_c('v-list-item-action',[_c('v-icon',[_vm._v(\"mdi-map-marker-outline\")]),(item.changeType == 1)?_c('img',{staticClass:\"tbdc-listitemoverlayimage\",attrs:{\"src\":require('../../assets/opening.png')}}):_vm._e(),(item.changeType == 2)?_c('img',{staticClass:\"tbdc-listitemoverlayimage\",attrs:{\"src\":require('../../assets/closure.png')}}):_vm._e(),(item.changeType == 3)?_c('img',{staticClass:\"tbdc-listitemoverlayimage\",attrs:{\"src\":require('../../assets/edit.png')}}):_vm._e()],1),_c('v-list-item-content',[_c('v-list-item-title',[_vm._v(\" \"+_vm._s(item.name)),(_vm.getModel.locationGroups.length > 1)?_c('span',[_vm._v(\" (\"+_vm._s(item.locationGroup)+\")\")]):_vm._e()])],1)],1)]}}],null,false,2088352392)}):_vm._e()],1)],1),_c('v-divider',{staticClass:\"tbdc-floatingmenudivider\",attrs:{\"vertical\":\"\"}}),_c('v-menu',{attrs:{\"offset-y\":\"\",\"close-on-click\":true,\"close-on-content-click\":false,\"content-class\":\"tbdc-floatingmenucontent\"},scopedSlots:_vm._u([{key:\"activator\",fn:function({ on: onMenu }){return [_c('v-tooltip',{attrs:{\"bottom\":\"\",\"open-delay\":\"250\",\"open-on-hover\":true},scopedSlots:_vm._u([{key:\"activator\",fn:function({ on: onTooltip }){return [_c('div',{staticClass:\"tbdc-floatingmenubutton\"},[_c('v-btn',_vm._g({attrs:{\"icon\":\"\"}},{ ...onMenu, ...onTooltip }),[_c('v-icon',[_vm._v(\"mdi-layers-outline\")])],1)],1)]}}],null,true)},[_c('span',[_vm._v(_vm._s(_vm.$t(\"message.map\")))])])]}}],null,false,551435368)},[_c('v-list',[_c('v-subheader',[_vm._v(_vm._s(_vm.$t(\"message.scenarios\")))]),_c('v-list-item',[_c('v-list-item-content',{staticStyle:{\"display\":\"block\",\"padding-top\":\"0\"}},[_c('v-checkbox',{staticClass:\"ml-2\",attrs:{\"dense\":\"\",\"hide-details\":\"\",\"label\":_vm.$t(\"message.scenarioLocationsVisibleOnMap\"),\"value\":true,\"disabled\":_vm.getScenarioLocations == null || _vm.getScenarioLocations.length == 0},model:{value:(_vm.scenarioLocationsVisible),callback:function ($$v) {_vm.scenarioLocationsVisible=$$v},expression:\"scenarioLocationsVisible\"}})],1)],1),_c('v-subheader',[_vm._v(_vm._s(_vm.$t(\"message.layers\")))]),_c('v-list-item',[_c('v-list-item-content',{staticStyle:{\"display\":\"block\",\"padding-top\":\"0\"}},[(_vm.getModel.allowMultipleAreaSets == true)?_c('fragment',_vm._l((_vm.getModel.areaSets),function(areaSet){return _c('v-checkbox',{key:'AS' + areaSet.id,staticClass:\"ml-2\",attrs:{\"dense\":\"\",\"hide-details\":\"\",\"label\":areaSet.title == null?areaSet.name:areaSet.title,\"value\":areaSet.id,\"disabled\":_vm.getModel.allowMultipleAreaSets == false && _vm.areaSetsVisible.length > 0 && _vm.areaSetsVisible[0]!= areaSet.id},model:{value:(_vm.areaSetsVisible),callback:function ($$v) {_vm.areaSetsVisible=$$v},expression:\"areaSetsVisible\"}})}),1):_vm._e(),(_vm.getModel.allowMultipleAreaSets == false)?_c('fragment',[_c('v-radio-group',{staticClass:\"ml-2 mt-0\",model:{value:(_vm.areaSetVisible),callback:function ($$v) {_vm.areaSetVisible=$$v},expression:\"areaSetVisible\"}},[_c('v-radio',{attrs:{\"label\":_vm.$t(\"message.dontShow\"),\"value\":0}}),_vm._l((_vm.getModel.areaSets),function(areaSet){return _c('v-radio',{key:areaSet.id,attrs:{\"label\":areaSet.title == null?areaSet.name:areaSet.title,\"value\":areaSet.id}})})],2)],1):_vm._e()],1)],1),_c('v-divider'),(_vm.getModel.heatMapSets && _vm.getModel.heatMapSets.length > 0)?_c('div',[_c('v-subheader',[_vm._v(_vm._s(_vm.$t(\"message.heatMaps\")))]),_c('v-list-item',[_c('v-list-item-content',{staticStyle:{\"display\":\"block\",\"padding-top\":\"0\"}},[(_vm.getModel.allowMultipleHeatMapSets == true)?_c('fragment',_vm._l((_vm.getModel.heatMapSets),function(heatMapSet){return _c('v-checkbox',{key:heatMapSet.id,staticClass:\"ml-2\",attrs:{\"dense\":\"\",\"hide-details\":\"\",\"label\":heatMapSet.title == null?heatMapSet.name:heatMapSet.title,\"value\":heatMapSet.id},model:{value:(_vm.heatMapSetsVisible),callback:function ($$v) {_vm.heatMapSetsVisible=$$v},expression:\"heatMapSetsVisible\"}})}),1):_vm._e(),(_vm.getModel.allowMultipleHeatMapSets == false)?_c('fragment',[_c('v-radio-group',{staticClass:\"ml-2 mt-0\",model:{value:(_vm.heatMapSetVisible),callback:function ($$v) {_vm.heatMapSetVisible=$$v},expression:\"heatMapSetVisible\"}},[_c('v-radio',{attrs:{\"label\":_vm.$t(\"message.dontShow\"),\"value\":0}}),_vm._l((_vm.getModel.heatMapSets),function(heatMapSet){return _c('v-radio',{key:heatMapSet.id,attrs:{\"label\":heatMapSet.title == null?heatMapSet.name:heatMapSet.title,\"value\":heatMapSet.id}})})],2)],1):_vm._e()],1)],1),_c('v-divider')],1):_vm._e(),(_vm.getModel.poiSets && _vm.getModel.poiSets.length > 0)?_c('div',[_c('v-subheader',[_vm._v(_vm._s(_vm.$t(\"message.pois\"))),(_vm.getModel.allowMultiplePOISets == true)?_c('div',{staticStyle:{\"position\":\"absolute\",\"right\":\"1em\"}},[_c('v-btn',{staticClass:\"tbdc-floatingmenusubheaderbutton\",attrs:{\"plain\":\"\",\"small\":\"\"},on:{\"click\":_vm.selectAllPoiSets}},[_vm._v(_vm._s(_vm.$t(\"message.selectAll\")))]),_vm._v(\"/\"),_c('v-btn',{staticClass:\"tbdc-floatingmenusubheaderbutton\",attrs:{\"plain\":\"\",\"small\":\"\"},on:{\"click\":_vm.selectNoPoiSets}},[_vm._v(_vm._s(_vm.$t(\"message.selectNone\")))])],1):_vm._e()]),_c('v-list-item',[_c('v-list-item-content',{staticStyle:{\"display\":\"block\",\"padding-top\":\"0\"}},[(_vm.getModel.allowMultiplePOISets == true)?_c('fragment',_vm._l((_vm.getModel.poiSets),function(poiSet){return _c('v-checkbox',{key:poiSet.id,staticClass:\"ml-2\",attrs:{\"dense\":\"\",\"hide-details\":\"\",\"label\":poiSet.title == null?poiSet.name:poiSet.title,\"value\":poiSet.id},model:{value:(_vm.poiSetsVisible),callback:function ($$v) {_vm.poiSetsVisible=$$v},expression:\"poiSetsVisible\"}})}),1):_vm._e(),(_vm.getModel.allowMultiplePOISets == false)?_c('fragment',[_c('v-radio-group',{staticClass:\"ml-2 mt-0\",model:{value:(_vm.poiSetVisible),callback:function ($$v) {_vm.poiSetVisible=$$v},expression:\"poiSetVisible\"}},[_c('v-radio',{attrs:{\"label\":_vm.$t(\"message.dontShow\"),\"value\":0}}),_vm._l((_vm.getModel.poiSets),function(poiSet){return _c('v-radio',{key:poiSet.id,attrs:{\"label\":poiSet.title == null?poiSet.name:poiSet.title,\"value\":poiSet.id}})})],2)],1):_vm._e()],1)],1),_c('v-divider')],1):_vm._e(),_c('v-subheader',[_vm._v(_vm._s(_vm.$t(\"message.catchmentArea\")))]),_c('v-list-item',[_c('v-list-item-content',[(_vm.getModel.catchmentAreaMode == 0)?_c('v-radio-group',{staticClass:\"ml-2 mt-0\",attrs:{\"disabled\":_vm.getScenario.status != 9},model:{value:(_vm.catchmentArea),callback:function ($$v) {_vm.catchmentArea=$$v},expression:\"catchmentArea\"}},[_c('v-radio',{attrs:{\"label\":_vm.$t('message.all'),\"value\":{ coverage: 1,catchmentAreaId: _vm.getModel.catchmentAreas[0].id, areaSetId: _vm.getModel.catchmentAreas[0].areaSetId, isoLineSetId: _vm.getModel.catchmentAreas[0].isoLineSetId }}}),_c('v-radio',{attrs:{\"label\":_vm.$t('message.secondary'),\"value\":{ coverage: 0.8,catchmentAreaId: _vm.getModel.catchmentAreas[0].id, areaSetId: _vm.getModel.catchmentAreas[0].areaSetId, isoLineSetId: _vm.getModel.catchmentAreas[0].isoLineSetId }}}),_c('v-radio',{attrs:{\"label\":_vm.$t('message.primary'),\"value\":{ coverage: 0.5,catchmentAreaId: _vm.getModel.catchmentAreas[0].id, areaSetId: _vm.getModel.catchmentAreas[0].areaSetId, isoLineSetId: _vm.getModel.catchmentAreas[0].isoLineSetId }}}),_c('v-radio',{attrs:{\"label\":_vm.$t('message.none'),\"value\":{ coverage: 0 ,catchmentAreaId: _vm.getModel.catchmentAreas[0].id, areaSetId: _vm.getModel.catchmentAreas[0].areaSetId, isoLineSetId: _vm.getModel.catchmentAreas[0].isoLineSetId }}})],1):_vm._e(),(_vm.getModel.catchmentAreaMode == 1)?_c('v-radio-group',{staticClass:\"ml-2 mt-0\",attrs:{\"disabled\":_vm.getScenario.status != 9},model:{value:(_vm.catchmentArea),callback:function ($$v) {_vm.catchmentArea=$$v},expression:\"catchmentArea\"}},[_vm._l((_vm.getModel.catchmentAreasOnMap),function(c){return _c('v-radio',{key:c.id,attrs:{\"label\":c.title,\"value\":{ coverage: 1.0, catchmentAreaId: c.id, areaSetId: c.areaSetId, isoLineSetId: c.isoLineSetId }}})}),_c('v-radio',{attrs:{\"label\":_vm.$t('message.none'),\"value\":null}})],2):_vm._e()],1)],1),_c('v-divider'),_c('v-subheader',[_vm._v(\" \"+_vm._s(_vm.$t(\"message.travelTimes\"))+\" \")]),(_vm.getModel.isoLineSets.length == 1)?_c('v-subheader',[_vm._v(\" \"+_vm._s(_vm.getModel.isoLineSets[0].title)+\" \")]):_vm._e(),_c('v-list-item',{attrs:{\"disabled\":_vm.getLocation == null}},[_c('v-list-item-content',[(_vm.getModel.isoLineSets.length > 1)?_c('v-radio-group',{staticClass:\"ml-2 mt-0\",model:{value:(_vm.isoLineSet),callback:function ($$v) {_vm.isoLineSet=$$v},expression:\"isoLineSet\"}},_vm._l((_vm.getModel.isoLineSets),function(i){return _c('v-radio',{key:i.name,attrs:{\"label\":i.title,\"value\":i}})}),1):_vm._e(),_c('p',[(_vm.isoLineSet)?_c('v-slider',{staticClass:\"ml-3 mt-2\",attrs:{\"disabled\":_vm.getLocation == null,\"max\":_vm.isoLineSet.maximumMinutes,\"min\":\"0\",\"thumb-label\":\"always\",\"thumb-size\":18,\"label\":_vm.$t('message.minutes'),\"inverse-label\":true,\"hide-details\":\"\"},model:{value:(_vm.isoLineMinutes),callback:function ($$v) {_vm.isoLineMinutes=$$v},expression:\"isoLineMinutes\"}}):_vm._e()],1)],1)],1)],1)],1),_c('v-divider',{staticClass:\"tbdc-floatingmenudivider\",attrs:{\"vertical\":\"\"}}),_c('v-menu',{staticClass:\"tbdc-floatingmenu\",attrs:{\"offset-y\":\"\",\"close-on-click\":true,\"close-on-content-click\":false,\"content-class\":\"tbdc-floatingmenucontent\"},scopedSlots:_vm._u([{key:\"activator\",fn:function({ on: onMenu }){return [_c('v-tooltip',{attrs:{\"bottom\":\"\",\"open-delay\":\"250\",\"open-on-hover\":true},scopedSlots:_vm._u([{key:\"activator\",fn:function({ on: onTooltip }){return [_c('div',{staticClass:\"tbdc-floatingmenubutton\"},[_c('v-btn',{attrs:{\"icon\":\"\"}},[_c('v-icon',_vm._g({},{ ...onMenu, ...onTooltip }),[_vm._v(\"mdi-magnify\")])],1)],1)]}}],null,true)},[_c('span',[_vm._v(_vm._s(_vm.$t(\"message.search\")))])])]}}],null,false,912813534),model:{value:(_vm.searchMenuVisible),callback:function ($$v) {_vm.searchMenuVisible=$$v},expression:\"searchMenuVisible\"}},[_c('v-list',[_c('v-subheader',[_vm._v(_vm._s(_vm.$t(\"message.searchMap\")))]),_c('v-form',{on:{\"submit\":function($event){$event.preventDefault();}}},[_c('v-list-item',[_c('v-list-item-content',[_c('v-text-field',{attrs:{\"dense\":\"\",\"outlined\":\"\",\"hide-details\":\"\",\"single-line\":\"\",\"label\":_vm.$t('message.query'),\"clearable\":\"\"},on:{\"click:clear\":function($event){_vm.searchLocal = ''; _vm.searchByBoundingBox(_vm.searchLocal)}},model:{value:(_vm.searchLocal),callback:function ($$v) {_vm.searchLocal=$$v},expression:\"searchLocal\"}})],1),_c('v-list-item-action',[_c('v-btn',{attrs:{\"type\":\"submit\",\"icon\":\"\"},on:{\"click\":function($event){_vm.searchByBoundingBox(_vm.searchLocal); _vm.searchMenuVisible = false}}},[_c('v-icon',[_vm._v(\"mdi-magnify\")])],1)],1)],1)],1)],1)],1),_c('v-divider',{staticClass:\"tbdc-floatingmenudivider\",attrs:{\"vertical\":\"\"}}),(_vm.getModel.userIsGlobalAdmin)?_c('fragment',[_c('v-menu',{attrs:{\"offset-y\":\"\",\"close-on-click\":true,\"close-on-content-click\":false,\"content-class\":\"tbdc-floatingmenucontent\"},scopedSlots:_vm._u([{key:\"activator\",fn:function({ on: onMenu }){return [_c('v-tooltip',{attrs:{\"bottom\":\"\",\"open-delay\":\"250\",\"open-on-hover\":true},scopedSlots:_vm._u([{key:\"activator\",fn:function({ on: onTooltip }){return [_c('div',{staticClass:\"tbdc-floatingmenubutton\"},[_c('v-btn',_vm._g({attrs:{\"icon\":\"\",\"disabled\":_vm.getLocation == null}},{ ...onMenu, ...onTooltip }),[_c('v-icon',[_vm._v(\"mdi-vector-polygon\")])],1)],1)]}}],null,true)},[_c('span',[_vm._v(_vm._s(_vm.$t(\"message.isoLine\")))])])]}}],null,false,3160768668)},_vm._l((_vm.getIsoLineParameters),function(isoLineParameter){return _c('fragment',{key:isoLineParameter.url},[_c('v-list',[_c('v-subheader',[_vm._v(_vm._s(isoLineParameter.profile))]),_c('v-list-item',{attrs:{\"disabled\":_vm.getLocation == null}},[_c('v-list-item-content',[_c('v-text-field',{attrs:{\"append-icon\":\"mdi-help-circle-outline\",\"outlined\":\"\",\"dense\":\"\"},on:{\"click:append\":function($event){return _vm.showIsoLineHelp(isoLineParameter)}},model:{value:(isoLineParameter.parameters),callback:function ($$v) {_vm.$set(isoLineParameter, \"parameters\", $$v)},expression:\"isoLineParameter.parameters\"}}),_c('v-slider',{attrs:{\"dense\":\"\",\"label\":\"Minutes\",\"min\":1,\"max\":isoLineParameter.maximumMinutes},scopedSlots:_vm._u([{key:\"append\",fn:function(){return [_vm._v(\" \"+_vm._s(isoLineParameter.minutes)+\" \")]},proxy:true}],null,true),model:{value:(isoLineParameter.minutes),callback:function ($$v) {_vm.$set(isoLineParameter, \"minutes\", $$v)},expression:\"isoLineParameter.minutes\"}}),_c('div',{staticStyle:{\"display\":\"flex\",\"justify-content\":\"flex-start\"}},[_c('v-btn',{attrs:{\"color\":\"primary\",\"dense\":\"\"},on:{\"click\":function($event){return _vm.fetchIsoLine({ profile: isoLineParameter.profile,minutes: isoLineParameter.minutes, isoLineSetId: isoLineParameter.isoLineSetId, baseUrl: isoLineParameter.baseUrl,parameters: isoLineParameter.parameters})}}},[_vm._v(\" \"+_vm._s(_vm.$t(\"message.fetchIsoLine\"))+\" \")])],1)],1)],1)],1),_c('v-divider')],1)}),1),_c('v-divider',{staticClass:\"tbdc-floatingmenudivider\",attrs:{\"vertical\":\"\"}})],1):_vm._e(),_c('v-menu',{attrs:{\"offset-y\":\"\",\"close-on-click\":true,\"close-on-content-click\":true,\"content-class\":\"tbdc-floatingmenucontent\"},scopedSlots:_vm._u([{key:\"activator\",fn:function({ on: onMenu }){return [_c('v-tooltip',{attrs:{\"bottom\":\"\",\"open-delay\":\"250\",\"open-on-hover\":true},scopedSlots:_vm._u([{key:\"activator\",fn:function({ on: onTooltip }){return [_c('div',{staticClass:\"tbdc-floatingmenubutton\"},[_c('v-btn',_vm._g({attrs:{\"icon\":\"\",\"disabled\":_vm.getLocation == null || _vm.getLocation.visibility != 0}},{ ...onMenu, ...onTooltip }),[_c('v-icon',[_vm._v(\"mdi-chart-box-outline\")])],1)],1)]}}],null,true)},[_c('span',[_vm._v(_vm._s(_vm.$t(\"message.graphics\")))])])]}}],null,false,3020819804)},[_c('v-list',[_c('v-subheader',[_vm._v(_vm._s(_vm.$t(\"message.graphics\")))]),_c('v-list-item',{attrs:{\"disabled\":_vm.getLocation == null || _vm.getMatchingLocations == null || _vm.getScenario.status != 9},on:{\"click\":_vm.showMatchingLocationsOutputChart}},[_c('v-list-item-action',[_c('v-icon',[_vm._v(\"mdi-chart-bar\")])],1),_c('v-list-item-content',[_c('v-list-item-title',[_vm._v(\" \"+_vm._s(_vm.$t(\"message.matchingLocationsOutputChart\"))+\" \")])],1)],1),_c('v-list-item',{attrs:{\"disabled\":_vm.getLocation == null || _vm.getMatchingLocations == null || _vm.getScenario.status != 9},on:{\"click\":_vm.showMatchingLocationsRadarChart}},[_c('v-list-item-action',[_c('v-icon',[_vm._v(\"mdi-spider-web\")])],1),_c('v-list-item-content',[_c('v-list-item-title',[_vm._v(\" \"+_vm._s(_vm.$t(\"message.matchingLocationsSimilarityChart\"))+\" \")])],1)],1),_c('v-list-item',{attrs:{\"disabled\":!_vm.getModel.hasDriverFilters || _vm.getLocation == null || _vm.getScenario.status != 9},on:{\"click\":_vm.showDriversChart}},[_c('v-list-item-action',[_c('v-icon',[_vm._v(\"mdi-chart-gantt\")])],1),_c('v-list-item-content',[_c('v-list-item-title',[_vm._v(\" \"+_vm._s(_vm.$t(\"message.driversChart\"))+\" \")])],1)],1),_c('v-list-item',{attrs:{\"disabled\":_vm.getLocation == null || _vm.getScenario.status != 9},on:{\"click\":function($event){_vm.showPropertiesChart; _vm.showPropertiesChart();}}},[_c('v-list-item-action',[_c('v-icon',[_vm._v(\"mdi-chart-scatter-plot\")])],1),_c('v-list-item-content',[_c('v-list-item-title',[_vm._v(\" \"+_vm._s(_vm.$t(\"message.propertiesChart\"))+\" \")])],1)],1)],1)],1),_c('v-divider',{staticClass:\"tbdc-floatingmenudivider\",attrs:{\"vertical\":\"\"}}),_c('v-menu',{attrs:{\"offset-y\":\"\",\"close-on-click\":true,\"close-on-content-click\":true,\"content-class\":\"tbdc-floatingmenucontent\"},scopedSlots:_vm._u([{key:\"activator\",fn:function({ on: onMenu }){return [_c('v-tooltip',{attrs:{\"bottom\":\"\",\"open-delay\":\"250\",\"open-on-hover\":true},scopedSlots:_vm._u([{key:\"activator\",fn:function({ on: onTooltip }){return [_c('div',{staticClass:\"tbdc-floatingmenubutton\"},[_c('v-btn',_vm._g({attrs:{\"icon\":\"\",\"disabled\":_vm.getScenario.status != 9}},{ ...onMenu, ...onTooltip }),[_c('v-icon',[_vm._v(\"mdi-file-document-outline\")])],1)],1)]}}],null,true)},[_c('span',[_vm._v(_vm._s(_vm.$t(\"message.reports\")))])])]}}],null,false,1702028284)},[_c('v-list',[_c('v-subheader',[_vm._v(_vm._s(_vm.$t(\"message.reports\")))]),_c('v-list-item',{attrs:{\"disabled\":!_vm.getLocationCatchmentArea || _vm.getScenario.status != 9 || _vm.getLocation == null || _vm.getLocation.visibility != 0},on:{\"click\":_vm.showLocationReport}},[_c('v-list-item-action',[_c('v-icon',[_vm._v(\"mdi-printer\")])],1),_c('v-list-item-content',[_c('v-list-item-title',[_vm._v(\" \"+_vm._s(_vm.$tc(\"message.locationsType\" + _vm.getModel.locationsType + \"Name\"))+\" \"+_vm._s(_vm.$tc(\"message.report\"))+\" \")])],1)],1),_c('v-list-item',{attrs:{\"disabled\":_vm.getScenario == null || _vm.getScenario.status != 9 || _vm.getScenario.parentScenarioId == null},on:{\"click\":_vm.showScenarioReport}},[_c('v-list-item-action',[_c('v-icon',[_vm._v(\"mdi-printer\")])],1),_c('v-list-item-content',[_c('v-list-item-title',[_vm._v(\" \"+_vm._s(_vm.$t(\"message.scenarioReport\"))+\" \")])],1)],1)],1)],1),_c('v-divider',{staticClass:\"tbdc-floatingmenudivider\",attrs:{\"vertical\":\"\"}}),(_vm.getModel != null && _vm.getSubModel.functionCount > 0)?_c('v-menu',{attrs:{\"offset-y\":\"\",\"close-on-click\":true,\"close-on-content-click\":true,\"content-class\":\"tbdc-floatingmenucontent\"},scopedSlots:_vm._u([{key:\"activator\",fn:function({ on: onMenu }){return [_c('v-tooltip',{attrs:{\"bottom\":\"\",\"open-delay\":\"250\",\"open-on-hover\":true},scopedSlots:_vm._u([{key:\"activator\",fn:function({ on: onTooltip }){return [_c('div',{staticClass:\"tbdc-floatingmenubutton\"},[_c('v-btn',_vm._g({attrs:{\"icon\":\"\"}},{ ...onMenu, ...onTooltip }),[_c('v-icon',[_vm._v(\"mdi-calculator\")])],1)],1)]}}],null,true)},[_c('span',[_vm._v(_vm._s(_vm.$tc(\"message.score\",2)))])])]}}],null,false,503500576)},[_c('v-list',[_c('v-subheader',[_vm._v(_vm._s(_vm.$tc(\"message.score\",2)))]),_c('v-list-item',{attrs:{\"disabled\":!(_vm.getLocation && _vm.getModel != null && _vm.getSubModel.functionCount > 0)},on:{\"click\":_vm.showLocationScores}},[_c('v-list-item-action',[_c('v-icon',[_vm._v(\"mdi-printer\")])],1),_c('v-list-item-content',[_c('v-list-item-title',[_vm._v(\" \"+_vm._s(_vm.$tc(\"message.locationType\" + _vm.getModel.locationsType + \"Scores\"))+\" \")])],1)],1),_c('v-list-item',{attrs:{\"disabled\":!(_vm.getArea && _vm.getModel != null && _vm.getSubModel.functionCount > 0)},on:{\"click\":_vm.showAreaScores}},[_c('v-list-item-action',[_c('v-icon',[_vm._v(\"mdi-printer\")])],1),_c('v-list-item-content',[_c('v-list-item-title',[_vm._v(\" \"+_vm._s(_vm.$tc(\"message.areaScores\"))+\" \")])],1)],1)],1)],1):_vm._e(),_c('v-divider',{staticClass:\"tbdc-floatingmenudivider\",attrs:{\"vertical\":\"\"}}),_c('v-menu',{attrs:{\"offset-y\":\"\",\"close-on-click\":true,\"close-on-content-click\":false,\"content-class\":\"tbdc-floatingmenucontent\"},scopedSlots:_vm._u([{key:\"activator\",fn:function({ on: onMenu }){return [_c('v-tooltip',{attrs:{\"bottom\":\"\",\"open-delay\":\"250\",\"open-on-hover\":true},scopedSlots:_vm._u([{key:\"activator\",fn:function({ on: onTooltip }){return [_c('div',{staticClass:\"tbdc-floatingmenubutton\"},[_c('v-btn',_vm._g({attrs:{\"icon\":\"\"}},{ ...onMenu, ...onTooltip }),[_c('v-icon',[_vm._v(\"mdi-export\")])],1)],1)]}}],null,true)},[_c('span',[_vm._v(_vm._s(_vm.$t(\"message.export\")))])])]}}],null,false,1406523657)},[_c('v-list',[_c('v-subheader',[_vm._v(_vm._s(_vm.$t(\"message.export\")))]),_c('v-list-item',[_c('v-list-item-action',[_c('v-icon',[_vm._v(\"mdi-flag\")])],1),_c('v-list-item-content',{staticStyle:{\"padding\":\"0\"}},[_c('v-list-item-title',[_c('v-select',{staticStyle:{\"margin-top\":\"5px\"},attrs:{\"dense\":\"\",\"outlined\":\"\",\"items\":_vm.languages,\"item-text\":\"text\",\"label\":_vm.$t('message.fileFormatCulture'),\"item-value\":\"key\"},model:{value:(_vm.fileFormatCulture),callback:function ($$v) {_vm.fileFormatCulture=$$v},expression:\"fileFormatCulture\"}})],1)],1)],1),_c('v-list-item',{attrs:{\"disabled\":_vm.getScenario == null},on:{\"click\":function($event){_vm.downloadCsv({ url: '/api/models/scenarios/' + _vm.getScenario.id + '/locations/export?culture=' + _vm.getFileFormatCulture, name: _vm.$t('message.scenarioLocations') + ' ' + _vm.getModel.name + ' - ' + _vm.getScenario.name + '.csv' })}}},[_c('v-list-item-action',[_c('v-icon',[_vm._v(\"mdi-microsoft-excel\")])],1),_c('v-list-item-content',[_c('v-list-item-title',[_vm._v(\" \"+_vm._s(_vm.$t('message.sourceLocations'))+\" \")])],1)],1),(_vm.getModel.userIsGlobalAdmin)?_c('v-list-item',{attrs:{\"disabled\":_vm.getScenario == null},on:{\"click\":function($event){_vm.downloadCsv({ url: '/api/models/' + _vm.getModel.id + '/scenarios/locations/export?culture=' + _vm.getFileFormatCulture, name: _vm.$t('message.scenarioLocationsAllScenarios') + ' ' + _vm.getModel.name + '.csv' })}}},[_c('v-list-item-action',[_c('v-icon',[_vm._v(\"mdi-microsoft-excel\")])],1),_c('v-list-item-content',[_c('v-list-item-title',[_vm._v(\" \"+_vm._s(_vm.$t('message.sourceLocationsAllScenarios'))+\" (\"+_vm._s(_vm.$t(\"message.globalAdmin\"))+\") \")])],1)],1):_vm._e(),(_vm.getModel.userIsGlobalAdmin)?_c('v-list-item',{attrs:{\"disabled\":_vm.getScenario == null || !_vm.getModel.hasCalculationModel || _vm.getLocation == null || _vm.getLocation.visibility > 0},on:{\"click\":function($event){_vm.downloadFile({ url: '/api/models/scenarios/' + _vm.getScenario.id + '/locations/' + _vm.getLocation.id + '/calculation-model', name: _vm.$t('message.calculationModel') + ' ' + _vm.getModel.name + ' - ' + _vm.getScenario.name + ' - ' + _vm.getLocation.name + '.xlsx' })}}},[_c('v-list-item-action',[_c('v-icon',[_vm._v(\"mdi-microsoft-excel\")])],1),_c('v-list-item-content',[_c('v-list-item-title',[_vm._v(\" \"+_vm._s(_vm.$t('message.calculationModel'))+\" (\"+_vm._s(_vm.$t(\"message.globalAdmin\"))+\") \")])],1)],1):_vm._e(),_c('v-list-item',{attrs:{\"disabled\":_vm.getScenario == null || _vm.getScenario.status != 9},on:{\"click\":function($event){_vm.downloadCsv({ url: '/api/models/scenarios/' + _vm.getScenario.id + '/output/export?culture=' + _vm.getFileFormatCulture, name: _vm.$t('message.scenarioLocationsOutput') + ' ' + _vm.getModel.name + ' - ' + _vm.getScenario.name + '.csv' })}}},[_c('v-list-item-action',[_c('v-icon',[_vm._v(\"mdi-microsoft-excel\")])],1),_c('v-list-item-content',[_c('v-list-item-title',[_vm._v(\" \"+_vm._s(_vm.$t('message.scenarioLocationsOutputDescription'))+\" \")])],1)],1),(_vm.getModel.userIsGlobalAdmin)?_c('v-list-item',{attrs:{\"disabled\":_vm.getScenario == null || _vm.getScenario.status != 9},on:{\"click\":function($event){_vm.downloadCsv({ url: '/api/models/scenarios/' + _vm.getScenario.id + '/output/export?culture=' + _vm.getFileFormatCulture + '&includeHidden=true', name: _vm.$t('message.scenarioLocationsOutput') + ' ' + _vm.getModel.name + ' - ' + _vm.getScenario.name + '.csv' })}}},[_c('v-list-item-action',[_c('v-icon',[_vm._v(\"mdi-microsoft-excel\")])],1),_c('v-list-item-content',[_c('v-list-item-title',[_vm._v(\" \"+_vm._s(_vm.$t('message.scenarioLocationsOutputDescriptionWithHidden'))+\" (\"+_vm._s(_vm.$t(\"message.globalAdmin\"))+\") \")])],1)],1):_vm._e(),(_vm.getModel.catchmentAreaMode == 0)?[_c('v-list-item',{attrs:{\"disabled\":_vm.getArea == null || _vm.getScenario == null || _vm.getScenario.status != 9},on:{\"click\":function($event){_vm.downloadCsv({ url: '/api/models/' + _vm.getSubModel.id + '/scenarios/' + _vm.getScenario.id + '/areas/' + _vm.getArea.areaCode + '/export/?culture=' + _vm.getFileFormatCulture, name: _vm.$t('message.areaInformationExport') + ' ' + _vm.getModel.name + ' - ' + _vm.getScenario.name + ' - ' + _vm.getArea.areaCode + '.csv' })}}},[_c('v-list-item-action',[_c('v-icon',[_vm._v(\"mdi-microsoft-excel\")])],1),_c('v-list-item-content',[_c('v-list-item-title',[_vm._v(\" \"+_vm._s(_vm.$t(\"message.areaInformationExportDescription\"))+\" \")])],1)],1),_c('v-list-item',{attrs:{\"disabled\":_vm.getLocation == null|| _vm.getScenario == null || _vm.getScenario.status != 9 || _vm.getLocation.visibility > 0},on:{\"click\":function($event){_vm.downloadCsv({ url: '/api/models/' + _vm.getSubModel.id + '/scenarios/' + _vm.getScenario.id + '/locations/' + _vm.getLocation.id + '/catchment-area/export?culture=' + _vm.getFileFormatCulture, name: _vm.$t('message.catchmentAreaInformationExport') + ' ' + _vm.getModel.name + ' - ' + _vm.getScenario.name + ' - ' + _vm.getLocation.name + '.csv' })}}},[_c('v-list-item-action',[_c('v-icon',[_vm._v(\"mdi-microsoft-excel\")])],1),_c('v-list-item-content',[_c('v-list-item-title',[_vm._v(\" \"+_vm._s(_vm.$t(\"message.catchmentAreaInformationExport\"))+\" \")])],1)],1)]:_vm._e(),(_vm.getModel.catchmentAreaMode == 1)?_vm._l((_vm.getModel.catchmentAreasOnMap),function(c){return _c('v-list-item',{key:'1-' + c.name + 'catchmentAreaInformationExport',attrs:{\"disabled\":_vm.getLocation == null || _vm.getScenario == null || _vm.getScenario.status != 9 || _vm.getLocation.visibility > 0},on:{\"click\":function($event){_vm.downloadCsv({ url: '/api/models/' + _vm.getSubModel.id + '/scenarios/' + _vm.getScenario.id + '/locations/' + _vm.getLocation.id + '/catchment-area/export/' + c.name + '?culture=' + _vm.getFileFormatCulture, name: _vm.$t('message.catchmentAreaInformationExport') + ' ' + _vm.getModel.name + ' - ' + _vm.getScenario.name + ' - ' + _vm.getLocation.name + '.csv' })}}},[_c('v-list-item-action',[_c('v-icon',[_vm._v(\"mdi-microsoft-excel\")])],1),_c('v-list-item-content',[_c('v-list-item-title',[_vm._v(\" \"+_vm._s(_vm.$t(\"message.catchmentAreaInformationExport\"))+\" (\"+_vm._s(c.title)+\") \")])],1)],1)}):_vm._e(),_vm._l((_vm.getModel.catchmentAreas),function(c){return _c('v-list-item',{key:'1-' + c.name + 'locationAreas',attrs:{\"disabled\":_vm.getLocation == null || _vm.getLocation.visibility > 0},on:{\"click\":function($event){_vm.downloadCsv({ url: '/api/models/scenarios/locations/' + _vm.getLocation.id + '/areas/export/' + c.name + '?culture=' + _vm.getFileFormatCulture, name: _vm.$t('message.locationAreas') + ' ' + _vm.getLocation.name + ' - ' + c.name + '.csv' })}}},[_c('v-list-item-action',[_c('v-icon',[_vm._v(\"mdi-microsoft-excel\")])],1),_c('v-list-item-content',[_c('v-list-item-title',[_vm._v(\" \"+_vm._s(_vm.$t(\"message.locationAreas\"))+\" (\"+_vm._s(c.title)+\") \")])],1)],1)})],2)],1),_c('v-divider',{staticClass:\"tbdc-floatingmenudivider\",attrs:{\"vertical\":\"\"}}),_c('v-menu',{attrs:{\"offset-y\":\"\",\"close-on-click\":true,\"close-on-content-click\":false,\"content-class\":\"tbdc-floatingmenucontent\"},scopedSlots:_vm._u([{key:\"activator\",fn:function({ on: onMenu }){return [_c('v-tooltip',{attrs:{\"bottom\":\"\",\"open-delay\":\"250\",\"open-on-hover\":true},scopedSlots:_vm._u([{key:\"activator\",fn:function({ on: onTooltip }){return [_c('div',{staticClass:\"tbdc-floatingmenubutton\"},[_c('v-btn',_vm._g({attrs:{\"icon\":\"\",\"disabled\":_vm.legendData == null || _vm.legendData.length == 0}},{ ...onMenu, ...onTooltip }),[_c('v-icon',{attrs:{\"color\":\"primary\"}},[_vm._v(\"mdi-layers-search-outline\")])],1)],1)]}}],null,true)},[_c('span',[_vm._v(_vm._s(_vm.$t(\"message.legend\")))])])]}}],null,false,3151228052)},[_c('MapLegend',{attrs:{\"data\":_vm.legendData}})],1)],1)],1):_vm._e()\n}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","var render = function render(){var _vm=this,_c=_vm._self._c,_setup=_vm._self._setupProxy;return _c('div',{staticClass:\"tbdc-scenariostatus\",attrs:{\"icon\":\"\"}},[_c('v-icon',_vm._g({},_vm.on),[_vm._v(\"mdi-map-marker-multiple-outline\")]),(_vm.status == 9)?_c('div',{staticClass:\"tbdc-scenariostatusnumber\",staticStyle:{\"background-color\":\"forestgreen\",\"color\":\"white\"}},[_c('div',{staticStyle:{\"text-align\":\"center\"}},[_vm._v(\" \"+_vm._s(_vm.scenario.parentScenarioId == null ? '0' : _vm.changes > 250 ? 250 : _vm.changes)+\" \")])]):_vm._e(),(_vm.status < 9 && _vm.status > 0)?_c('div',{staticClass:\"tbdc-scenariostatusnumber\",staticStyle:{\"background-color\":\"darkorange\",\"color\":\"white\"}},[_c('div',{staticStyle:{\"text-align\":\"center\"}},[_vm._v(\" \"+_vm._s(_vm.scenario.parentScenarioId == null ? '0' : _vm.changes > 250 ? 250 : _vm.changes)+\" \")])]):_vm._e(),(_vm.status == 0)?_c('div',{staticClass:\"tbdc-scenariostatusnumber\",staticStyle:{\"background-color\":\"#eeeeee\",\"color\":\"black\"}},[_c('div',{staticStyle:{\"text-align\":\"center\"}},[_vm._v(\" \"+_vm._s(_vm.scenario.parentScenarioId == null ? '0' : _vm.changes > 250 ? 250 : _vm.changes)+\" \")])]):_vm._e(),(_vm.status == 10)?_c('div',{staticClass:\"tbdc-scenariostatusnumber\",staticStyle:{\"background-color\":\"red\",\"color\":\"black\"}},[_c('div',{staticStyle:{\"text-align\":\"center\"}},[_vm._v(\" \"+_vm._s(_vm.scenario.parentScenarioId == null ? '0' : _vm.changes > 250 ? 250 : _vm.changes)+\" \")])]):_vm._e(),(_vm.status > 0 && _vm.status < 9)?_c('v-progress-linear',{staticStyle:{\"position\":\"absolute\",\"bottom\":\"-8px\"},attrs:{\"background-color\":\"green\",\"buffer-value\":Math.round(100 / 8 * (_vm.status - 1)),\"indeterminate\":\"\",\"color\":\"yellow darken-2\"}}):_vm._e()],1)\n}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","\r\n import { Component, Vue, Prop } from 'vue-property-decorator';\r\n \r\n @Component({\r\n components: {\r\n },\r\n })\r\n export default class ScenarioStatus extends Vue {\r\n private modalShow = false;\r\n\r\n @Prop({ default: 0 }) public status: any;\r\n @Prop({ default: true }) public scenario: any;\r\n @Prop({ default: null }) public changes: any;\r\n @Prop({ default: null }) public on: any;\r\n @Prop({ default: null }) public tooltip: any;\r\n\r\n get statusTooltip(): any {\r\n if (this.status > 0 && this.status < 9) return this.$t(\"message.scenarioStatusProcessing\") + ' (' + (this.status * 11) + '%)';\r\n if (this.status == 0) return this.$t(\"message.scenarioStatusEdited\");\r\n if (this.status == 9) return this.$t(\"message.scenarioStatusCompleted\");\r\n if (this.status == 10) return this.$t(\"message.scenarioStatusCompletedWithErrors\");\r\n return 'Error';\r\n }\r\n }\r\n","import mod from \"-!../../../node_modules/thread-loader/dist/cjs.js!../../../node_modules/babel-loader/lib/index.js!../../../node_modules/ts-loader/index.js??clonedRuleSet-41.use[2]!../../../node_modules/@vue/vue-loader-v15/lib/index.js??vue-loader-options!./ScenarioStatus.vue?vue&type=script&lang=ts&\"; export default mod; export * from \"-!../../../node_modules/thread-loader/dist/cjs.js!../../../node_modules/babel-loader/lib/index.js!../../../node_modules/ts-loader/index.js??clonedRuleSet-41.use[2]!../../../node_modules/@vue/vue-loader-v15/lib/index.js??vue-loader-options!./ScenarioStatus.vue?vue&type=script&lang=ts&\"","import { render, staticRenderFns } from \"./ScenarioStatus.vue?vue&type=template&id=638725fc&\"\nimport script from \"./ScenarioStatus.vue?vue&type=script&lang=ts&\"\nexport * from \"./ScenarioStatus.vue?vue&type=script&lang=ts&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../node_modules/@vue/vue-loader-v15/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","var render = function render(){var _vm=this,_c=_vm._self._c,_setup=_vm._self._setupProxy;return (_vm.data)?_c('div',{staticStyle:{\"background-color\":\"white\"}},_vm._l((_vm.data),function(legendItem){return _c('div',{key:legendItem.ID,style:({ 'background-color': legendItem.color })},[_c('div',{staticStyle:{\"padding\":\"10px\"}},[_c('span',{style:({ 'color': _vm.getTextColorForBackground(legendItem.color) })},[_vm._v(_vm._s(legendItem.title))])])])}),0):_vm._e()\n}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","\r\n import { Component, Vue, Prop } from 'vue-property-decorator';\r\n \r\n @Component({\r\n components: {\r\n },\r\n })\r\n export default class MapLegend extends Vue {\r\n @Prop({ default: null }) public data: any;\r\n\r\n private getBrightness(r: number, g: number, b: number): number {\r\n // Convert the RGB values to the range [0, 1]\r\n const rNorm = r / 255;\r\n const gNorm = g / 255;\r\n const bNorm = b / 255;\r\n\r\n // Apply the luminance formula\r\n const luminance = 0.2126 * rNorm + 0.7152 * gNorm + 0.0722 * bNorm;\r\n\r\n return luminance;\r\n }\r\n\r\n // Function to determine if the text should be dark or light\r\n private getTextColorForBackground(backgroundColor: string) {\r\n let r: number, g: number, b: number;\r\n\r\n // If backgroundColor is in hex format, convert to RGB\r\n if (backgroundColor.startsWith('#')) {\r\n const hex = backgroundColor.replace('#', '');\r\n r = parseInt(hex.substring(0, 2), 16);\r\n g = parseInt(hex.substring(2, 4), 16);\r\n b = parseInt(hex.substring(4, 6), 16);\r\n } else if (backgroundColor.startsWith('rgb')) {\r\n // Extract RGB values from the string in the format rgb(r, g, b)\r\n const rgb = backgroundColor.match(/\\d+/g);\r\n if (rgb) {\r\n r = parseInt(rgb[0], 10);\r\n g = parseInt(rgb[1], 10);\r\n b = parseInt(rgb[2], 10);\r\n } else {\r\n throw new Error(\"Invalid RGB color format\");\r\n }\r\n } else {\r\n throw new Error(\"Invalid color format\");\r\n }\r\n\r\n const brightness = this.getBrightness(r, g, b);\r\n\r\n // If brightness is greater than 0.5, return dark text, otherwise return light text\r\n return brightness > 0.5 ? '#333333' : '#dddddd';\r\n }\r\n \r\n }\r\n","import mod from \"-!../../../node_modules/thread-loader/dist/cjs.js!../../../node_modules/babel-loader/lib/index.js!../../../node_modules/ts-loader/index.js??clonedRuleSet-41.use[2]!../../../node_modules/@vue/vue-loader-v15/lib/index.js??vue-loader-options!./MapLegend.vue?vue&type=script&lang=ts&\"; export default mod; export * from \"-!../../../node_modules/thread-loader/dist/cjs.js!../../../node_modules/babel-loader/lib/index.js!../../../node_modules/ts-loader/index.js??clonedRuleSet-41.use[2]!../../../node_modules/@vue/vue-loader-v15/lib/index.js??vue-loader-options!./MapLegend.vue?vue&type=script&lang=ts&\"","import { render, staticRenderFns } from \"./MapLegend.vue?vue&type=template&id=467d6654&\"\nimport script from \"./MapLegend.vue?vue&type=script&lang=ts&\"\nexport * from \"./MapLegend.vue?vue&type=script&lang=ts&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../node_modules/@vue/vue-loader-v15/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","\r\n import { Component, Vue, Prop, Watch } from 'vue-property-decorator';\r\n import { Action, Getter, Mutation } from 'vuex-class';\r\n import ScenarioStatus from '@/components/main/ScenarioStatus.vue';\r\n import MapLegend from '@/components/main/MapLegend.vue';\r\n \r\n\r\n const namespace = 'main';\r\n\r\n @Component({\r\n components: {\r\n ScenarioStatus,\r\n MapLegend,\r\n },\r\n })\r\n export default class FloatingMenu extends Vue {\r\n @Prop({ default: null }) public legendData: any;\r\n\r\n @Getter('getArea', { namespace }) getArea: any;\r\n @Getter('getAreaSetsVisible', { namespace }) getAreaSetsVisible: any;\r\n @Getter('getCatchmentArea', { namespace }) getCatchmentArea: any;\r\n @Getter('getFileFormatCulture') getFileFormatCulture!: any;\r\n @Getter('getFilterLocations', { namespace }) getFilterLocations: any;\r\n @Getter('getFilterScenarios', { namespace }) getFilterScenarios: any;\r\n @Getter('getFilteredLocations', { namespace }) getFilteredLocations: any;\r\n @Getter('getFilteredScenarios', { namespace }) getFilteredScenarios: any;\r\n @Getter('getHeatMapSetsVisible', { namespace }) getHeatMapSetsVisible: any;\r\n @Getter('getIsoLineMinutes', { namespace }) getIsoLineMinutes: any;\r\n @Getter('getIsoLineParameters', { namespace }) getIsoLineParameters: any;\r\n @Getter('getIsoLineSet', { namespace }) getIsoLineSet: any;\r\n @Getter('getLocation', { namespace }) getLocation: any;\r\n @Getter('getLocationCatchmentArea', { namespace }) getLocationCatchmentArea: any;\r\n @Getter('getLocationDrivers', { namespace }) getLocationDrivers: any;\r\n @Getter('getLocations', { namespace }) getLocations: any;\r\n @Getter('getLocationsNotExcluded', { namespace }) getLocationsNotExcluded: any;\r\n @Getter('getMatchingLocations', { namespace }) getMatchingLocations: any;\r\n @Getter('getModel', { namespace }) getModel: any;\r\n @Getter('getPoiSetsVisible', { namespace }) getPoiSetsVisible: any;\r\n @Getter('getReadOnly', { namespace }) getReadOnly: any;\r\n @Getter('getScenario', { namespace }) getScenario: any;\r\n @Getter('getScenarioLocations', { namespace }) getScenarioLocations: any;\r\n @Getter('getScenarioLocationsVisible', { namespace }) getScenarioLocationsVisible: any;\r\n @Getter('getScenarios', { namespace }) getScenarios: any;\r\n @Getter('getFoundScenarioIds', { namespace }) getFoundScenarioIds: any;\r\n @Action('fetchAndSetScenarioChanges', { namespace }) fetchAndSetScenarioChanges: any;\r\n @Getter('getStandByFilterLocations', { namespace }) getStandByFilterLocations: any;\r\n @Getter('getStandByFilterScenarios', { namespace }) getStandByFilterScenarios: any;\r\n @Getter('getSubModel', { namespace }) getSubModel: any;\r\n @Action('searchByBoundingBox', { namespace }) searchByBoundingBox: any;\r\n @Action('calculateScenario', { namespace }) calculateScenario: any;\r\n @Action('downloadCsv') downloadCsv: any;\r\n @Action('downloadFile') downloadFile: any;\r\n @Action('editScenario', { namespace }) editScenario: any;\r\n @Action('fetchCatchmentArea', { namespace }) fetchCatchmentArea: any;\r\n @Action('fetchHeatMapPoints', { namespace }) fetchHeatMapPoints: any;\r\n @Action('fetchIsoLine', { namespace }) fetchIsoLine: any;\r\n @Action('fetchLocationIsoLines', { namespace }) fetchLocationIsoLines: any;\r\n @Action('fetchPois', { namespace }) fetchPois: any;\r\n @Action('fetchScenarioProcessingLog', { namespace }) fetchScenarioProcessingLog: any;\r\n @Action('filterLocations', { namespace }) filterLocations: any;\r\n @Action('filterScenarios', { namespace }) filterScenarios: any;\r\n @Action('mergeScenario', { namespace }) mergeScenario: any;\r\n @Action('removeLocation', { namespace }) removeLocation: any;\r\n @Action('removeScenario', { namespace }) removeScenario: any;\r\n @Action('setLocation', { namespace }) setLocation: any;\r\n @Action('setScenario', { namespace }) setScenario: any;\r\n @Action('undoCloseLocation', { namespace }) undoCloseLocation: any;\r\n @Action('undoEditLocation', { namespace }) undoEditLocation: any;\r\n @Action('findScenarios', { namespace }) findScenarios: any;\r\n @Mutation('SET_AREASETSVISIBLE', { namespace }) setAreaSetsVisible: any;\r\n @Mutation('SET_CATCHMENTAREA', { namespace }) setCatchmentArea: any;\r\n @Mutation('SET_FILEFORMATCULTURE') setFileFormatCulture: any;\r\n @Mutation('SET_HEATMAPSETSVISIBLE', { namespace }) setHeatMapSetsVisible: any;\r\n @Mutation('SET_ISOLINEMINUTES', { namespace }) setIsoLineMinutes: any;\r\n @Mutation('SET_ISOLINESET', { namespace }) setIsoLineSet: any;\r\n @Mutation('SET_POISETSVISIBLE', { namespace }) setPoiSetsVisible: any;\r\n @Mutation('SET_SCENARIOLOCATIONSVISIBLE', { namespace }) setScenarioLocationsVisible: any;\r\n @Mutation('SET_STANDBYFILTERLOCATIONS', { namespace }) setStandByFilterLocations: any;\r\n @Mutation('SET_STANDBYFILTERSCENARIOS', { namespace }) setStandByFilterScenarios: any;\r\n\r\n private searchLocal: any = '';\r\n private filterMenuVisible: boolean = false;\r\n private searchMenuVisible: boolean = false;\r\n private scenariosMenuVisible: boolean = false;\r\n\r\n private setScenarioAndCloseMenu(scenario: any) {\r\n this.setScenario(scenario);\r\n this.scenariosMenuVisible = false;\r\n }\r\n\r\n private get standByFilterScenarios(): any {\r\n return this.getStandByFilterScenarios;\r\n }\r\n\r\n private set standByFilterScenarios(value: any) {\r\n this.setStandByFilterScenarios(value);\r\n }\r\n\r\n\r\n private get catchmentArea(): any {\r\n return this.getCatchmentArea;\r\n }\r\n\r\n private set catchmentArea(value: any) {\r\n\r\n this.setCatchmentArea(value);\r\n this.fetchCatchmentArea();\r\n }\r\n\r\n private get isoLineSet(): any {\r\n return this.getIsoLineSet;\r\n }\r\n\r\n private set isoLineSet(value: any) {\r\n this.setIsoLineSet(value);\r\n this.fetchLocationIsoLines();\r\n }\r\n\r\n private get isoLineMinutes(): any {\r\n return this.getIsoLineMinutes;\r\n }\r\n\r\n private set isoLineMinutes(value: any) {\r\n this.setIsoLineMinutes(value);\r\n this.fetchLocationIsoLines();\r\n }\r\n\r\n private get scenarioLocationsVisible(): any {\r\n return this.getScenarioLocationsVisible;\r\n }\r\n\r\n private set scenarioLocationsVisible(value: any) {\r\n this.setScenarioLocationsVisible(value);\r\n }\r\n\r\n private get standByFilterLocations(): any {\r\n return this.getStandByFilterLocations;\r\n }\r\n\r\n private set standByFilterLocations(value: any) {\r\n this.setStandByFilterLocations(value);\r\n }\r\n\r\n private get areaSetsVisible(): any {\r\n return this.getAreaSetsVisible;\r\n }\r\n\r\n private set areaSetsVisible(value: any) {\r\n this.setAreaSetsVisible(value);\r\n }\r\n\r\n private get poiSetsVisible(): any {\r\n return this.getPoiSetsVisible;\r\n }\r\n\r\n private set poiSetsVisible(value: any) {\r\n\r\n this.setPoiSetsVisible(value);\r\n this.fetchPois();\r\n }\r\n\r\n private get heatMapSetsVisible(): any {\r\n return this.getHeatMapSetsVisible;\r\n\r\n }\r\n\r\n private set heatMapSetsVisible(value: any) {\r\n this.setHeatMapSetsVisible(value);\r\n this.fetchHeatMapPoints();\r\n }\r\n\r\n private get fileFormatCulture(): any {\r\n return this.getFileFormatCulture;\r\n }\r\n\r\n private set fileFormatCulture(value: any) {\r\n this.setFileFormatCulture(value);\r\n }\r\n\r\n private get noWhiteSpotAreaSets() {\r\n const _filteredAreaSets = this.getModel.areaSets.filter(function (areaSet: any) {\r\n return areaSet.isWhiteSpot == 0;\r\n });\r\n return _filteredAreaSets;\r\n }\r\n\r\n private get changedLocations() {\r\n if (this.getLocations != null) {\r\n return this.getLocations.filter(function (location: any) {\r\n return location.changeType != 0;\r\n });\r\n }\r\n else {\r\n return [];\r\n }\r\n }\r\n\r\n private get languages() {\r\n return [\r\n { key: 'nl', text: this.$t('message.dutchFormat'), helpUrl: 'https://thebigdatacompany.sharepoint.com/:b:/s/BrancheOmzetModel/Eeg_BD_zaH1ArWdD59Z7awwBnLIgxFJtZ8wyAeDWzC-zHQ?e=4PQV0g' },\r\n { key: 'en', text: this.$t('message.englishFormat'), helpUrl: 'https://thebigdatacompany.sharepoint.com/:b:/s/BrancheOmzetModel/EQvrt3v6utZFsXKDDoMdbkkBpuSD3R13bVYzZduQIl2xdQ?e=tIkHF2' }\r\n ]\r\n }\r\n\r\n private get maxLengthLocationName() {\r\n let locationWithMaxName: any = null;\r\n let maxLength = 0;\r\n this.getFilteredLocations.forEach((location: any) => {\r\n if (location.name.length > maxLength) {\r\n maxLength = location.name.length;\r\n locationWithMaxName = location.name;\r\n }\r\n });\r\n return locationWithMaxName;\r\n }\r\n\r\n private get maxLengthScenarioName() {\r\n let scenarioWithMaxName: any = null;\r\n let maxLength = 0;\r\n this.getScenarios.forEach((scenario: any) => {\r\n if (scenario.name.length > maxLength) {\r\n maxLength = scenario.name.length;\r\n scenarioWithMaxName = scenario.name;\r\n }\r\n });\r\n return scenarioWithMaxName;\r\n }\r\n\r\n private get topScenarios() {\r\n var _self = this;\r\n return this.getScenarios.filter(function (scenario: any) {\r\n if (scenario.isTop && _self.getScenario.id != scenario.id) return true;\r\n });\r\n\r\n }\r\n\r\n\r\n private get poiSetVisible(): any {\r\n if (this.poiSetsVisible.length == 0) return 0; else return this.poiSetsVisible[0];\r\n }\r\n private set poiSetVisible(value: any) {\r\n if (value == null) this.poiSetsVisible = [0]; else this.poiSetsVisible = [value];\r\n }\r\n\r\n private get areaSetVisible(): any {\r\n if (this.areaSetsVisible.length == 0) return 0; else return this.areaSetsVisible[0];\r\n }\r\n private set areaSetVisible(value: any) {\r\n if (value == null) this.areaSetsVisible = [0]; else this.areaSetsVisible = [value];\r\n }\r\n\r\n private get heatMapSetVisible(): any {\r\n if (this.heatMapSetsVisible.length == 0) return 0; else return this.heatMapSetsVisible[0];\r\n }\r\n private set heatMapSetVisible(value: any) {\r\n if (value == null) this.heatMapSetsVisible = [0]; else this.heatMapSetsVisible = [value];\r\n }\r\n\r\n private async removeLocationLocal(location: any) {\r\n const res = await this.$confirm(this.$t('message.confirmRemoveLocation') + '', { buttonTrueText: String(this.$t('message.yes')), buttonFalseText: String(this.$t('message.no')) });\r\n if (res) this.removeLocation(location);\r\n }\r\n private async undoCloseLocationLocal(location: any) {\r\n const res = await this.$confirm(this.$t('confirmUndoCloseLocation') + '', { buttonTrueText: String(this.$t('message.yes')), buttonFalseText: String(this.$t('message.no')) });\r\n if (res) this.undoCloseLocation(location);\r\n }\r\n private async undoEditLocationLocal(location: any) {\r\n const res = await this.$confirm(this.$t('confirmUndoEditLocation') + '', { buttonTrueText: String(this.$t('message.yes')), buttonFalseText: String(this.$t('message.no')) });\r\n if (res) this.undoEditLocation(location);\r\n }\r\n private async mergeScenarioLocal() {\r\n if (this.topScenarios.length == 0) {\r\n await this.$confirm(this.$t('message.noTopScenariosFound') + '', { color: \"error\", buttonFalseText: null as any, buttonTrueText: String(this.$t('message.close')) });\r\n }\r\n else {\r\n this.mergeScenario({ scenarioId: this.getScenario.id, changedLocations: this.changedLocations, selectedLocations: [], deleteSourceScenario: false, destinationScenarioId: this.topScenarios[0].id });\r\n }\r\n }\r\n\r\n private async showMatchingLocationsOutputChart() {\r\n this.$emit('showMatchingLocationsOutputChart');\r\n }\r\n private async showMatchingLocationsRadarChart() {\r\n\r\n this.$emit('showMatchingLocationsRadarChart');\r\n }\r\n private async showDriversChart() {\r\n this.$emit('showDriversChart');\r\n }\r\n private async showPropertiesChart() {\r\n this.$emit('showPropertiesChart');\r\n }\r\n private async showLocationReport() {\r\n this.$emit('showLocationReport');\r\n }\r\n private async showScenarioReport() {\r\n this.$emit('showScenarioReport');\r\n }\r\n private async showLocationScores() {\r\n this.$emit('showLocationScores');\r\n }\r\n private async showAreaScores() {\r\n this.$emit('showAreaScores');\r\n }\r\n private async showIsoLineHelp(isoLineParameter: any) {\r\n if (isoLineParameter.provider == 1) window.open('https://developer.here.com/documentation/isoline-routing-api/api-reference-swagger.html', '_blank');\r\n\r\n if (isoLineParameter.provider == 4) window.open('https://valhalla.github.io/valhalla/api/isochrone/api-reference/', '_blank');\r\n }\r\n\r\n private selectAllPoiSets() {\r\n\r\n let visible = [0];\r\n this.getModel.poiSets.forEach(function (poiSet: any) {\r\n visible.push(poiSet.id);\r\n });\r\n this.poiSetsVisible = visible;\r\n }\r\n\r\n private selectNoPoiSets() {\r\n this.poiSetsVisible = [0];\r\n }\r\n\r\n public get isAuthenticated(): boolean {\r\n if (this.$msal == null) return true;\r\n return this.$msal.isAuthenticated;\r\n }\r\n\r\n private get scenarios(): any {\r\n return this.getScenarios;\r\n }\r\n\r\n private get scenario(): any {\r\n return this.getScenario;\r\n }\r\n private set scenario(value: any) {\r\n this.setScenario(value);\r\n }\r\n\r\n @Watch('getScenario')\r\n private onScenarioChanged() {\r\n \r\n }\r\n private get scenariosLeveled(): any[] {\r\n const nodesArray: any[] = [];\r\n const parentMap = new Map();\r\n\r\n // Build a parent-child map and sort by isTop and name in descending order\r\n this.scenarios\r\n .sort((a: any, b: any) => {\r\n if (a.isTop === b.isTop) {\r\n return b.name.localeCompare(a.name); // Sort by name descending if isTop is the same\r\n }\r\n return a.isTop ? -1 : 1; // Sort isTop true first\r\n })\r\n .forEach((scenario: any) => {\r\n const parentId = scenario.parentScenarioId ?? null;\r\n if (!parentMap.has(parentId)) {\r\n parentMap.set(parentId, []);\r\n }\r\n parentMap.get(parentId)!.push(scenario);\r\n });\r\n\r\n // Use a stack to simulate recursion\r\n const stack: { node: any; level: number }[] = (parentMap.get(null) || []).map((scenario: any) => ({\r\n node: {\r\n id: scenario.id,\r\n name: scenario.name,\r\n scenario: scenario,\r\n level: 0,\r\n },\r\n level: 0,\r\n }));\r\n\r\n while (stack.length > 0) {\r\n const { node, level } = stack.pop()!;\r\n const children = parentMap.get(node.scenario.id) || [];\r\n\r\n // Include the node if it has children or is in this.getFoundScenarioIds (or if this.getFoundScenarioIds is null)\r\n if (\r\n children.length > 0 ||\r\n this.getFoundScenarioIds == null ||\r\n this.getFoundScenarioIds.has(node.scenario.id)\r\n ) {\r\n nodesArray.push(node);\r\n }\r\n\r\n // Push children to the stack (sorted by isTop and name descending)\r\n children\r\n .sort((a: any, b: any) => {\r\n if (a.isTop === b.isTop) {\r\n return b.name.localeCompare(a.name); // Sort by name descending\r\n }\r\n return a.isTop ? -1 : 1; // Sort isTop true first\r\n })\r\n .forEach((child: any) => {\r\n stack.push({\r\n node: {\r\n id: child.id,\r\n name: child.name,\r\n scenario: child,\r\n level: level + 1,\r\n },\r\n level: level + 1,\r\n });\r\n });\r\n }\r\n\r\n return nodesArray;\r\n }\r\n\r\n \r\n\r\n\r\n private get scenarioHasChildren() {\r\n var self = this;\r\n var found = false;\r\n this.getScenarios.forEach(function (childScenario: any) {\r\n if (childScenario.parentScenarioId == self.getScenario.id) found = true;\r\n });\r\n return found;\r\n }\r\n\r\n \r\n\r\n private setFilterLocations(value: any) {\r\n this.filterLocations(value);\r\n }\r\n\r\n\r\n\r\n private async confirmRemoveScenario() {\r\n const res = await this.$confirm(this.$t('message.confirmRemoveScenario') + '', { buttonTrueText: String(this.$t('message.yes')), buttonFalseText: String(this.$t('message.no')) })\r\n if (res) this.removeScenario(this.getScenario);\r\n }\r\n }\r\n","import mod from \"-!../../../node_modules/thread-loader/dist/cjs.js!../../../node_modules/babel-loader/lib/index.js!../../../node_modules/ts-loader/index.js??clonedRuleSet-41.use[2]!../../../node_modules/@vue/vue-loader-v15/lib/index.js??vue-loader-options!./FloatingMenu.vue?vue&type=script&lang=ts&\"; export default mod; export * from \"-!../../../node_modules/thread-loader/dist/cjs.js!../../../node_modules/babel-loader/lib/index.js!../../../node_modules/ts-loader/index.js??clonedRuleSet-41.use[2]!../../../node_modules/@vue/vue-loader-v15/lib/index.js??vue-loader-options!./FloatingMenu.vue?vue&type=script&lang=ts&\"","import { render, staticRenderFns } from \"./FloatingMenu.vue?vue&type=template&id=02066b84&\"\nimport script from \"./FloatingMenu.vue?vue&type=script&lang=ts&\"\nexport * from \"./FloatingMenu.vue?vue&type=script&lang=ts&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../node_modules/@vue/vue-loader-v15/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","var render = function render(){var _vm=this,_c=_vm._self._c,_setup=_vm._self._setupProxy;return (_vm.modalShow)?_c('v-dialog',{attrs:{\"width\":\"1000\",\"persistent\":\"\"},model:{value:(_vm.modalShow),callback:function ($$v) {_vm.modalShow=$$v},expression:\"modalShow\"}},[(_vm.modelParameters)?_c('v-card',[_c('v-card-title',{attrs:{\"primary-title\":\"\"}},[_vm._v(\" \"+_vm._s(_vm.$t(\"message.modelParameters\"))+\" \")]),(_vm.modelParameters)?_c('v-card-text',{attrs:{\"id\":\"modelParametersPrint\"}},[_c('v-text-field',{attrs:{\"dense\":\"\",\"outlined\":\"\",\"label\":_vm.$t('message.fractionCutOffThreshold')},model:{value:(_vm.modelParameters.fractionCutOffThreshold),callback:function ($$v) {_vm.$set(_vm.modelParameters, \"fractionCutOffThreshold\", $$v)},expression:\"modelParameters.fractionCutOffThreshold\"}}),_c('h3',[_vm._v(_vm._s(_vm.$t(\"message.car\")))]),_c('v-row',[_c('v-col',[_c('v-text-field',{attrs:{\"dense\":\"\",\"outlined\":\"\",\"label\":_vm.$t('message.max')},model:{value:(_vm.modelParameters.maximumMinutesTravelTimeCar),callback:function ($$v) {_vm.$set(_vm.modelParameters, \"maximumMinutesTravelTimeCar\", $$v)},expression:\"modelParameters.maximumMinutesTravelTimeCar\"}})],1),_c('v-col',[_c('v-text-field',{attrs:{\"dense\":\"\",\"outlined\":\"\",\"label\":_vm.$t('message.scale')},model:{value:(_vm.modelParameters.travelTimeCarScale),callback:function ($$v) {_vm.$set(_vm.modelParameters, \"travelTimeCarScale\", $$v)},expression:\"modelParameters.travelTimeCarScale\"}})],1),_c('v-col',[_c('v-text-field',{attrs:{\"dense\":\"\",\"outlined\":\"\",\"label\":_vm.$t('message.constant')},model:{value:(_vm.modelParameters.travelTimeCarConstant),callback:function ($$v) {_vm.$set(_vm.modelParameters, \"travelTimeCarConstant\", $$v)},expression:\"modelParameters.travelTimeCarConstant\"}})],1),_c('v-col',[_c('v-text-field',{attrs:{\"dense\":\"\",\"outlined\":\"\",\"label\":_vm.$t('message.powerFactor')},model:{value:(_vm.modelParameters.travelTimeCarPower),callback:function ($$v) {_vm.$set(_vm.modelParameters, \"travelTimeCarPower\", $$v)},expression:\"modelParameters.travelTimeCarPower\"}})],1)],1),_c('h3',[_vm._v(_vm._s(_vm.$t(\"message.pedestrian\")))]),_c('v-row',[_c('v-col',[_c('v-text-field',{attrs:{\"dense\":\"\",\"outlined\":\"\",\"label\":_vm.$t('message.max')},model:{value:(_vm.modelParameters.maximumMinutesTravelTimePedestrian),callback:function ($$v) {_vm.$set(_vm.modelParameters, \"maximumMinutesTravelTimePedestrian\", $$v)},expression:\"modelParameters.maximumMinutesTravelTimePedestrian\"}})],1),(true)?_c('v-col',[_c('v-text-field',{attrs:{\"dense\":\"\",\"outlined\":\"\",\"label\":_vm.$t('message.scale')},model:{value:(_vm.modelParameters.travelTimePedestrianScale),callback:function ($$v) {_vm.$set(_vm.modelParameters, \"travelTimePedestrianScale\", $$v)},expression:\"modelParameters.travelTimePedestrianScale\"}})],1):_vm._e(),(true)?_c('v-col',[_c('v-text-field',{attrs:{\"dense\":\"\",\"outlined\":\"\",\"label\":_vm.$t('message.constant')},model:{value:(_vm.modelParameters.travelTimePedestrianConstant),callback:function ($$v) {_vm.$set(_vm.modelParameters, \"travelTimePedestrianConstant\", $$v)},expression:\"modelParameters.travelTimePedestrianConstant\"}})],1):_vm._e(),_c('v-col',[_c('v-text-field',{attrs:{\"dense\":\"\",\"outlined\":\"\",\"label\":_vm.$t('message.powerFactor')},model:{value:(_vm.modelParameters.travelTimePedestrianPower),callback:function ($$v) {_vm.$set(_vm.modelParameters, \"travelTimePedestrianPower\", $$v)},expression:\"modelParameters.travelTimePedestrianPower\"}})],1)],1),_c('h3',[_vm._v(_vm._s(_vm.$t(\"message.expressions\")))]),_c('h4',[_vm._v(_vm._s(_vm.$t(\"message.modelFunctionTypeToUse\")))]),_c('br'),(_vm.modelParameters.locationProperties.length > 0)?_c('div',[_c('h5',[_vm._v(_vm._s(_vm.$tc(\"message.locationsType\" + this.model.locationsType + \"Name\", 0))+\" \")]),_c('code',[_vm._v(\"LocationCode\")]),_c('code',[_vm._v(\"LocationGroupCode\")]),_c('code',[_vm._v(\"LocationClusterCode\")]),_vm._l((_vm.modelParameters.locationProperties),function(f,index){return _c('code',{key:index},[_vm._v(\" \"+_vm._s(f)+\" \")])})],2):_vm._e(),(_vm.modelParameters.locationGroupProperties.length > 0)?_c('div',[_c('h5',[_vm._v(_vm._s(_vm.$tc(\"message.locationGroupsType\" + this.model.locationGroupsType + \"Name\", 0))+\" \")]),_vm._l((_vm.modelParameters.locationGroupProperties),function(f,index){return _c('code',{key:index},[_vm._v(\" \"+_vm._s(f)+\" \")])})],2):_vm._e(),(_vm.modelParameters.locationClusterProperties.length > 0)?_c('div',[_c('h5',[_vm._v(_vm._s(_vm.$tc(\"message.locationClustersType\" + this.model.locationClustersType + \"Name\", 0))+\" \")]),_vm._l((_vm.modelParameters.locationClusterProperties),function(f,index){return _c('code',{key:index},[_vm._v(\" \"+_vm._s(f)+\" \")])})],2):_vm._e(),_c('br'),_c('br'),_c('p',[_vm._v(_vm._s(_vm.$t(\"message.ncalcMessage\")))]),_c('v-simple-table',{attrs:{\"dense\":\"\"},scopedSlots:_vm._u([{key:\"default\",fn:function(){return [_c('thead',[_c('tr',[_c('th',{staticClass:\"text-left\"}),_c('th',{staticClass:\"text-left\"},[_vm._v(_vm._s(_vm.$t(\"message.description\")))]),_c('th',{staticClass:\"text-left\"},[_vm._v(_vm._s(_vm.$t(\"message.expression\")))]),_c('th',{staticClass:\"text-left\"},[_vm._v(_vm._s(_vm.$t(\"message.defaultValue\")))])])]),_c('tbody',_vm._l((_vm.modelParameters.functions),function(f,index){return _c('tr',{key:index},[_c('td',[_c('v-icon',{on:{\"click\":function($event){return _vm.removeLine(f)}}},[_vm._v(\"mdi-delete-circle-outline\")])],1),_c('td',[_c('v-text-field',{staticClass:\"parameterText\",attrs:{\"hide-details\":\"\",\"flat\":\"\",\"single-line\":\"\",\"solo\":\"\",\"full-width\":\"\",\"dense\":\"\"},model:{value:(f.description),callback:function ($$v) {_vm.$set(f, \"description\", $$v)},expression:\"f.description\"}})],1),_c('td',[_c('v-text-field',{staticClass:\"parameterText\",attrs:{\"hide-details\":\"\",\"flat\":\"\",\"single-line\":\"\",\"solo\":\"\",\"full-width\":\"\",\"dense\":\"\"},model:{value:(f.function),callback:function ($$v) {_vm.$set(f, \"function\", $$v)},expression:\"f.function\"}})],1),_c('td',[_c('v-text-field',{staticClass:\"parameterNumber\",attrs:{\"hide-details\":\"\",\"flat\":\"\",\"single-line\":\"\",\"solo\":\"\",\"full-width\":\"\",\"dense\":\"\"},model:{value:(f.defaultValue),callback:function ($$v) {_vm.$set(f, \"defaultValue\", $$v)},expression:\"f.defaultValue\"}})],1)])}),0)]},proxy:true}],null,false,1868588365)}),_c('v-icon',{on:{\"click\":function($event){return _vm.addLine()}}},[_vm._v(\"mdi-plus-circle-outline\")]),_c('v-expansion-panels',{staticStyle:{\"margin-top\":\"1em\"}},[_c('v-expansion-panel',[_c('v-expansion-panel-header',[_c('p',[_c('v-icon',[_vm._v(\"mdi-code-json\")]),_vm._v(\" JSON\")],1)]),_c('v-expansion-panel-content',[_c('pre',[_vm._v(_vm._s(this.encode()))])])],1)],1)],1):_vm._e(),_c('v-divider'),_c('v-card-actions',[_c('div',{staticClass:\"flex-grow-1\"}),_c('v-btn',{attrs:{\"color\":\"primary\",\"text\":\"\"},on:{\"click\":_vm.save}},[_vm._v(\" \"+_vm._s(_vm.$t(\"message.save\"))+\" \")]),_c('v-btn',{attrs:{\"color\":\"primary\",\"text\":\"\"},on:{\"click\":_vm.close}},[_vm._v(\" \"+_vm._s(_vm.$t(\"message.cancel\"))+\" \")])],1)],1):_vm._e()],1):_vm._e()\n}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","\r\n import { Component, Vue, Prop, Watch } from 'vue-property-decorator';\r\n \r\n @Component\r\n export default class EditModelParameters extends Vue {\r\n @Prop({ default: null }) public modelParameters: any;\r\n @Prop({ default: null }) public model: any;\r\n\r\n private modalShow = false;\r\n\r\n private mounted() {\r\n this.$on('escKey' + this.$options.name, () => {\r\n if (this.modalShow) this.close();\r\n });\r\n document.addEventListener(\"keydown\", (e) => {\r\n if (e.key === \"Escape\") {\r\n this.$emit('escKey' + this.$options.name);\r\n }\r\n });\r\n }\r\n\r\n @Watch('modelParameters')\r\n private onModelParametersChanged(value: any) {\r\n if (value) {\r\n this.modalShow = true;\r\n }\r\n else {\r\n this.modalShow = false;\r\n }\r\n }\r\n\r\n private async close() {\r\n const res = await this.$confirm(String(this.$t('message.confirmClose')), { buttonTrueText: String(this.$t('message.yes')), buttonFalseText: String(this.$t('message.no')) });\r\n if (res) { this.modalShow = false }\r\n }\r\n\r\n private save() {\r\n this.$emit('save', this.modelParameters);\r\n }\r\n\r\n private async removeLine(row: any) {\r\n const res = await this.$confirm('Weet u zeker dat u deze rij wilt verwijderen?', { buttonTrueText: String(this.$t('message.yes')), buttonFalseText: String(this.$t('message.no')) })\r\n if (res) {\r\n for (let i = 0; i < this.modelParameters.functions.length; i++) {\r\n if (this.modelParameters.functions[i] === row) {\r\n this.modelParameters.functions.splice(i, 1);\r\n }\r\n }\r\n }\r\n }\r\n\r\n private addLine() {\r\n this.modelParameters.functions.push({ id: -1, defaultValue: 1, type: 1});\r\n }\r\n\r\n private encode() {\r\n if (this.modelParameters.functions != null) {\r\n const f1 = this.modelParameters.functions.map(function (f: any) {\r\n return { Description: f.description, Function: f.function, DefaultValue: f.defaultValue }\r\n });\r\n return f1;\r\n }\r\n else {\r\n return null;\r\n }\r\n }\r\n }\r\n","import mod from \"-!../../../node_modules/thread-loader/dist/cjs.js!../../../node_modules/babel-loader/lib/index.js!../../../node_modules/ts-loader/index.js??clonedRuleSet-41.use[2]!../../../node_modules/@vue/vue-loader-v15/lib/index.js??vue-loader-options!./EditModelParameters.vue?vue&type=script&lang=ts&\"; export default mod; export * from \"-!../../../node_modules/thread-loader/dist/cjs.js!../../../node_modules/babel-loader/lib/index.js!../../../node_modules/ts-loader/index.js??clonedRuleSet-41.use[2]!../../../node_modules/@vue/vue-loader-v15/lib/index.js??vue-loader-options!./EditModelParameters.vue?vue&type=script&lang=ts&\"","import { render, staticRenderFns } from \"./EditModelParameters.vue?vue&type=template&id=5f46d4e4&\"\nimport script from \"./EditModelParameters.vue?vue&type=script&lang=ts&\"\nexport * from \"./EditModelParameters.vue?vue&type=script&lang=ts&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../node_modules/@vue/vue-loader-v15/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","var render = function render(){var _vm=this,_c=_vm._self._c,_setup=_vm._self._setupProxy;return _c('div',[_c('Properties',{attrs:{\"location\":_vm.location,\"model\":_vm.model,\"subModel\":_vm.subModel,\"locationProperties\":_vm.locationProperties != null ? _vm.locationProperties.filter(_vm.selectViewLocation) : null}})],1)\n}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","var render = function render(){var _vm=this,_c=_vm._self._c,_setup=_vm._self._setupProxy;return (_vm.location && _vm.locationProperties)?_c('div',_vm._l((Object.entries(_vm.groupedBySectionViewOrder)),function([sectionViewOrder, items]){return _c('div',{key:sectionViewOrder},[_c('div',[(items[0].sectionViewSize > 0)?_c('div',[(items[0].sectionViewSize > 0)?_c('h4',[_vm._v(\" \"+_vm._s(items[0].sectionTitle)+\" \")]):_vm._e()]):_vm._e(),(items.some((item) => item.rangeColor != null))?_c('div',{staticClass:\"tbdc-grid\"},_vm._l((items),function(item){return _c('div',{key:item.name,staticClass:\"tbdc-row\"},[_c('v-tooltip',{attrs:{\"bottom\":\"\",\"disabled\":item.description == null,\"open-delay\":\"250\",\"open-on-hover\":true},scopedSlots:_vm._u([{key:\"activator\",fn:function({ on, attrs }){return [_c('div',_vm._g(_vm._b({domProps:{\"innerHTML\":_vm._s(_vm.convertMdiBracketToIcon(item.title))}},'div',attrs,false),on)),_c('div',_vm._g(_vm._b({staticStyle:{\"text-align\":\"right\"}},'div',attrs,false),on),[_c('PropertyValue',{attrs:{\"onlyImpact\":false,\"property\":item,\"output\":item.propertyType == 4,\"currency\":_vm.model.currency}})],1),_c('div',_vm._g(_vm._b({staticStyle:{\"text-align\":\"right\"}},'div',attrs,false),on),[_c('PropertyValue',{attrs:{\"onlyImpact\":true,\"property\":item,\"output\":item.propertyType == 4,\"currency\":_vm.model.currency}})],1)]}}],null,true)},[_c('span',[_vm._v(_vm._s(item.description))])])],1)}),0):_vm._l((items),function(item){return _c('div',{key:item.name,staticClass:\"tbdc-grid\"},[_c('div',{staticClass:\"tbdc-row\"},[_c('v-tooltip',{attrs:{\"bottom\":\"\",\"disabled\":item.description == null,\"open-delay\":\"250\",\"open-on-hover\":true},scopedSlots:_vm._u([{key:\"activator\",fn:function({ on, attrs }){return [_c('div',_vm._g(_vm._b({domProps:{\"innerHTML\":_vm._s(_vm.convertMdiBracketToIcon(item.title))}},'div',attrs,false),on)),_c('div',_vm._g(_vm._b({staticStyle:{\"text-align\":\"right\"}},'div',attrs,false),on),[_c('PropertyValue',{attrs:{\"onlyImpact\":false,\"property\":item,\"output\":item.propertyType == 4,\"currency\":_vm.model.currency}})],1),_c('div',_vm._g(_vm._b({staticStyle:{\"text-align\":\"right\"}},'div',attrs,false),on),[_c('PropertyValue',{attrs:{\"onlyImpact\":true,\"property\":item,\"output\":item.propertyType == 4,\"currency\":_vm.model.currency}})],1)]}}],null,true)},[_c('span',[_vm._v(_vm._s(item.description))])])],1)])})],2),_c('v-spacer',{staticClass:\"mb-1 mt-3\"})],1)}),0):_vm._e()\n}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","var render = function render(){var _vm=this,_c=_vm._self._c,_setup=_vm._self._setupProxy;return _c('fragment',[(_vm.property.choices == null)?_c('fragment',[(_vm.onlyImpact)?_c('span',{class:{ changedResult: _vm.property.oldNumberValue != null && _vm.property.choices != null && (Math.abs(_vm.property.numberValue - _vm.property.oldNumberValue) > 0 && !_vm.onlyCurrentValue), positiveResult: _vm.property.oldNumberValue != null && _vm.property.choices == null && (Math.abs(_vm.property.numberValue - _vm.property.oldNumberValue) >= 1 && _vm.property.oldNumberValue - _vm.property.numberValue < 0 && !_vm.onlyCurrentValue), negativeResult: _vm.property.oldNumberValue != null && _vm.property.choices == null && (Math.abs(_vm.property.numberValue - _vm.property.oldNumberValue) >= 1 && _vm.property.numberValue - _vm.property.oldNumberValue < 0 && !_vm.onlyCurrentValue) }},[(_vm.property.oldNumberValue != null && Math.abs(Math.round(_vm.property.numberValue - _vm.property.oldNumberValue,0)) > 0 && !_vm.onlyCurrentValue )?_c('span',[_c('span',{staticStyle:{\"white-space\":\"nowrap\"}},[(_vm.property.dataType == 1)?_c('span',[_vm._v(_vm._s(((_vm.property.numberValue - _vm.property.oldNumberValue) > 0 ? \"+\" : ((_vm.property.numberValue - _vm.property.oldNumberValue) < 0 ? \"-\" : \"\")))+_vm._s(_vm._f(\"rounding\")(Math.abs(_vm.property.numberValue - _vm.property.oldNumberValue),_vm.$i18n.locale, _vm.property.roundingDigits)))]):_vm._e(),(_vm.property.dataType == 2)?_c('span',[_vm._v(_vm._s(((_vm.property.numberValue - _vm.property.oldNumberValue) > 0 ? \"+\" : ((_vm.property.numberValue - _vm.property.oldNumberValue) < 0 ? \"-\" : \"\")))+_vm._s(_vm._f(\"percentage\")(Math.abs(_vm.property.numberValue - _vm.property.oldNumberValue),_vm.$i18n.locale, _vm.property.roundingDigits)))]):_vm._e(),(_vm.property.dataType == 3)?_c('span',[_vm._v(_vm._s(((_vm.property.numberValue - _vm.property.oldNumberValue) > 0 ? \"+\" : ((_vm.property.numberValue - _vm.property.oldNumberValue) < 0 ? \"-\" : \"\")))+_vm._s(_vm._f(\"currency\")(Math.abs(_vm.property.numberValue - _vm.property.oldNumberValue),_vm.$i18n.locale, _vm.currency)))]):_vm._e(),(_vm.property.dataType == 4)?_c('span',[_vm._v(_vm._s(((_vm.property.numberValue - _vm.property.oldNumberValue) > 0 ? \"+\" : ((_vm.property.numberValue - _vm.property.oldNumberValue) < 0 ? \"-\" : \"\")))+_vm._s((_vm.property.numberValue - _vm.property.oldNumberValue)))]):_vm._e()])]):_vm._e(),(_vm.property.oldStringValue != null && _vm.property.stringValue != _vm.property.oldStringValue && !_vm.onlyCurrentValue )?_c('span',[_vm._v(\" * \")]):_vm._e(),_vm._v(\"   \")]):_vm._e(),(!_vm.onlyImpact)?_c('span',{class:_vm.property.rangeColor != null ? 'tbdc-colorfield' : '',style:({ backgroundColor: _vm.property.rangeColor != null ? _vm.getRangeColor(_vm.property.rangeColor,_vm.property.numberValue) : 'unset' })},[((_vm.property.autoCalculateType != null || _vm.output == true) && _vm.property.numberValue == null)?_c('span',[_vm._v(\"0\")]):_vm._e(),_vm._v(\" \"+_vm._s(_vm.property.stringValue)+\" \"),(_vm.property.dataType == 1)?_c('span',[_vm._v(_vm._s(_vm._f(\"rounding\")(_vm.property.numberValue,_vm.$i18n.locale, _vm.property.roundingDigits)))]):_vm._e(),(_vm.property.dataType == 2)?_c('span',[_vm._v(_vm._s(_vm._f(\"percentage\")(_vm.property.numberValue,_vm.$i18n.locale, _vm.property.roundingDigits)))]):_vm._e(),(_vm.property.dataType == 3)?_c('span',[_vm._v(_vm._s(_vm._f(\"currency\")(_vm.property.numberValue,_vm.$i18n.locale, _vm.currency)))]):_vm._e(),(_vm.property.dataType == 4)?_c('span',[_vm._v(_vm._s(_vm.property.numberValue))]):_vm._e(),(_vm.property.dataType == 5)?_c('span',[_vm._v(_vm._s(_vm.property.numberValue == 1 ? _vm.$t(\"message.yes\") : _vm.$t(\"message.no\")))]):_vm._e()]):_vm._e()]):_vm._e(),(_vm.property.choices != null)?_c('fragment',[_vm._v(\"   \"),(!_vm.onlyImpact && _vm.property.dataType == 0)?_c('span',[_vm._v(_vm._s(_vm.getChoice(_vm.property.choices,_vm.property.stringValue)))]):_vm._e(),(!_vm.onlyImpact && _vm.property.dataType != 0)?_c('span',[_vm._v(_vm._s(_vm.getChoice(_vm.property.choices,_vm.property.numberValue)))]):_vm._e(),(_vm.onlyImpact && _vm.property.oldNumberValue != null && Math.abs(_vm.property.numberValue - _vm.property.oldNumberValue) > 0 && !_vm.onlyCurrentValue )?_c('span',[_vm._v(\" * \")]):_vm._e(),(_vm.onlyImpact && _vm.property.oldStringValue != null && _vm.property.stringValue != _vm.property.oldStringValue && !_vm.onlyCurrentValue )?_c('span',[_vm._v(\" * \")]):_vm._e()]):_vm._e()],1)\n}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","\r\n import { Component, Vue, Prop } from 'vue-property-decorator';\r\n\r\n @Component\r\n export default class PropertyValue extends Vue {\r\n @Prop({ default: false }) public output: any;\r\n @Prop({ default: false }) public onlyCurrentValue: any;\r\n @Prop({ default: false }) public onlyImpact: any;\r\n @Prop({ default: null }) public property: any;\r\n @Prop({ default: 'EUR' }) public currency: any;\r\n \r\n getChoice(choices: any, value: any) {\r\n if (choices) {\r\n let choice = null;\r\n choices.forEach(function (item: any) {\r\n if (item.key == value) choice = item.value;\r\n });\r\n if (choice == null) choice = value;\r\n return choice;\r\n }\r\n return null;\r\n }\r\n\r\n getRangeColor(rangeColor: any, value: any): string {\r\n // Ensure the value is within bounds\r\n const valueLocal = Math.max(rangeColor.minimumValue, Math.min(rangeColor.maximumValue, value));\r\n // Calculate the ratio of the value within the range\r\n const ratio = (valueLocal - rangeColor.minimumValue) / (rangeColor.maximumValue - rangeColor.minimumValue);\r\n // Convert hex colors to RGB\r\n const hexToRgb = (hex: string): { r: number; g: number; b: number } => {\r\n const bigint = parseInt(hex.slice(1), 16);\r\n return {\r\n r: (bigint >> 16) & 255,\r\n g: (bigint >> 8) & 255,\r\n b: bigint & 255,\r\n };\r\n };\r\n const minRgb = hexToRgb(rangeColor.minimumColor);\r\n const maxRgb = hexToRgb(rangeColor.maximumColor);\r\n // Interpolate between minColor and maxColor\r\n const r = Math.round(minRgb.r + ratio * (maxRgb.r - minRgb.r));\r\n const g = Math.round(minRgb.g + ratio * (maxRgb.g - minRgb.g));\r\n const b = Math.round(minRgb.b + ratio * (maxRgb.b - minRgb.b));\r\n // Convert back to hex\r\n const rgbToHex = (r: number, g: number, b: number): string =>\r\n `#${((1 << 24) + (r << 16) + (g << 8) + b).toString(16).slice(1)}`;\r\n return rgbToHex(r, g, b);\r\n }\r\n }\r\n","import mod from \"-!../../../node_modules/thread-loader/dist/cjs.js!../../../node_modules/babel-loader/lib/index.js!../../../node_modules/ts-loader/index.js??clonedRuleSet-41.use[2]!../../../node_modules/@vue/vue-loader-v15/lib/index.js??vue-loader-options!./PropertyValue.vue?vue&type=script&lang=ts&\"; export default mod; export * from \"-!../../../node_modules/thread-loader/dist/cjs.js!../../../node_modules/babel-loader/lib/index.js!../../../node_modules/ts-loader/index.js??clonedRuleSet-41.use[2]!../../../node_modules/@vue/vue-loader-v15/lib/index.js??vue-loader-options!./PropertyValue.vue?vue&type=script&lang=ts&\"","import { render, staticRenderFns } from \"./PropertyValue.vue?vue&type=template&id=7e573adf&\"\nimport script from \"./PropertyValue.vue?vue&type=script&lang=ts&\"\nexport * from \"./PropertyValue.vue?vue&type=script&lang=ts&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../node_modules/@vue/vue-loader-v15/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","export function convertMdiBracketToIcon(input : string) {\r\n return input.replace(/\\[([a-z-]+)\\]/g, (match, iconName) => {\r\n return ``;\r\n });\r\n}\r\n\r\nexport function removeMdiBracketToIcon(input: string) {\r\n return input.replace(/\\[([a-z-]+)\\]/g, (match, iconName) => {\r\n return ``;\r\n });\r\n}\r\n","\r\n import { Component, Vue, Prop } from 'vue-property-decorator';\r\n import PropertyValue from '@/components/main/PropertyValue.vue'\r\n import { convertMdiBracketToIcon } from '@/mdi';\r\n\r\n @Component({\r\n components: {\r\n PropertyValue,\r\n },\r\n })\r\n export default class Properties extends Vue {\r\n\r\n @Prop({ default: null }) public locationProperties: any;\r\n @Prop({ default: null }) public location: any;\r\n @Prop({ default: null }) public subModel: any;\r\n @Prop({ default: null }) public model: any;\r\n\r\n private convertMdiBracketToIcon = convertMdiBracketToIcon;\r\n\r\n get groupedBySectionViewOrder() {\r\n return this.filteredLocationProperties?.reduce((acc: any, property: any) => {\r\n const key = property.sectionViewOrder;\r\n if (!acc[key]) {\r\n acc[key] = [];\r\n }\r\n acc[key].push(property);\r\n return acc;\r\n }, {} as Record);\r\n }\r\n \r\n get filteredLocationProperties() {\r\n const _self = this;\r\n return this.locationProperties.filter(function (locationProperty: any) {\r\n \r\n if ((locationProperty.subModelId == null || locationProperty.subModelId == _self.subModel.id) && locationProperty.visible) return (locationProperty.title != null)\r\n //&& (locationProperty.propertyType != 5 || _self.location.changeType == 1 || _self.location.changeType == 0) \r\n //&& (locationProperty.propertyType != 6 || _self.location.changeType == 0 || _self.location.changeType == 2)\r\n\r\n ;\r\n });\r\n }\r\n\r\n getChoice(choices: any, value: any) {\r\n let choice = null;\r\n choices.forEach(function (item: any) {\r\n if (item.key == value) choice = item.value;\r\n });\r\n if (choice == null) choice = value;\r\n return choice;\r\n }\r\n\r\n }\r\n","import mod from \"-!../../../node_modules/thread-loader/dist/cjs.js!../../../node_modules/babel-loader/lib/index.js!../../../node_modules/ts-loader/index.js??clonedRuleSet-41.use[2]!../../../node_modules/@vue/vue-loader-v15/lib/index.js??vue-loader-options!./Properties.vue?vue&type=script&lang=ts&\"; export default mod; export * from \"-!../../../node_modules/thread-loader/dist/cjs.js!../../../node_modules/babel-loader/lib/index.js!../../../node_modules/ts-loader/index.js??clonedRuleSet-41.use[2]!../../../node_modules/@vue/vue-loader-v15/lib/index.js??vue-loader-options!./Properties.vue?vue&type=script&lang=ts&\"","import { render, staticRenderFns } from \"./Properties.vue?vue&type=template&id=2a5a520a&\"\nimport script from \"./Properties.vue?vue&type=script&lang=ts&\"\nexport * from \"./Properties.vue?vue&type=script&lang=ts&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../node_modules/@vue/vue-loader-v15/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","\r\n import { Component, Vue, Prop } from 'vue-property-decorator';\r\n import Properties from '@/components/main/Properties.vue'\r\n\r\n @Component({\r\n components: {\r\n Properties\r\n },\r\n })\r\n export default class LocationInformation extends Vue {\r\n @Prop({ default: null }) public model: any;\r\n @Prop({ default: null }) public subModel: any;\r\n @Prop({ default: null }) public location: any;\r\n @Prop({ default: null }) public locationProperties: any;\r\n @Prop({ default: null }) public locationPropertiesOld: any;\r\n \r\n private selectViewLocation(value: any) {\r\n return value.viewLocation == 0;\r\n }\r\n }\r\n","import mod from \"-!../../../node_modules/thread-loader/dist/cjs.js!../../../node_modules/babel-loader/lib/index.js!../../../node_modules/ts-loader/index.js??clonedRuleSet-41.use[2]!../../../node_modules/@vue/vue-loader-v15/lib/index.js??vue-loader-options!./LocationInformation.vue?vue&type=script&lang=ts&\"; export default mod; export * from \"-!../../../node_modules/thread-loader/dist/cjs.js!../../../node_modules/babel-loader/lib/index.js!../../../node_modules/ts-loader/index.js??clonedRuleSet-41.use[2]!../../../node_modules/@vue/vue-loader-v15/lib/index.js??vue-loader-options!./LocationInformation.vue?vue&type=script&lang=ts&\"","import { render, staticRenderFns } from \"./LocationInformation.vue?vue&type=template&id=108955d9&\"\nimport script from \"./LocationInformation.vue?vue&type=script&lang=ts&\"\nexport * from \"./LocationInformation.vue?vue&type=script&lang=ts&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../node_modules/@vue/vue-loader-v15/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","var render = function render(){var _vm=this,_c=_vm._self._c,_setup=_vm._self._setupProxy;return (_vm.modalShow)?_c('v-dialog',{attrs:{\"width\":\"1000\",\"persistent\":\"\"},model:{value:(_vm.modalShow),callback:function ($$v) {_vm.modalShow=$$v},expression:\"modalShow\"}},[_c('v-card',[_c('v-card-title',{attrs:{\"primary-title\":\"\"}},[_vm._v(\" \"+_vm._s(_vm.$t(\"message.editDrivers\"))+\" \")]),_c('v-card-text',[_c('v-expansion-panels',_vm._l((_vm.driverFilters),function(df,index){return _c('v-expansion-panel',{key:index},[_c('v-expansion-panel-header',[_vm._v(\" \"+_vm._s(df.title)+\" \"),_c('div',{staticStyle:{\"text-align\":\"right\"}},[_c('v-btn',{attrs:{\"icon\":\"\"},on:{\"click\":function($event){return _vm.removeDriverFilter(df)}}},[_c('v-icon',[_vm._v(\"mdi-delete-circle-outline\")])],1)],1)]),_c('v-expansion-panel-content',[_c('v-text-field',{staticClass:\"parameterText\",attrs:{\"outlined\":\"\",\"label\":_vm.$t('message.driverFilterTitle'),\"dense\":\"\"},model:{value:(df.title),callback:function ($$v) {_vm.$set(df, \"title\", $$v)},expression:\"df.title\"}}),_c('v-textarea',{staticClass:\"parameterText\",attrs:{\"outlined\":\"\",\"label\":_vm.$t('message.driverFilterFunction'),\"dense\":\"\"},model:{value:(df.function),callback:function ($$v) {_vm.$set(df, \"function\", $$v)},expression:\"df.function\"}}),_c('table',[_c('thead',[_c('tr',[_c('th',{staticClass:\"text-left\"}),_c('th',{staticClass:\"text-left\"},[_vm._v(_vm._s(_vm.$t(\"message.title\")))]),_c('th',{staticClass:\"text-left\"},[_vm._v(_vm._s(_vm.$t(\"message.expression\")))]),_c('th',{staticClass:\"test-left\",staticStyle:{\"width\":\"10em\",\"text-align\":\"left\"}},[_vm._v(_vm._s(_vm.$t(\"message.weight\")))]),_c('th',{staticClass:\"text-left\"},[_vm._v(_vm._s(_vm.$t(\"message.roundingDigits\")))]),_c('th',{staticClass:\"text-left\"},[_vm._v(_vm._s(_vm.$t(\"message.inverse\")))])])]),_c('tbody',_vm._l((df.drivers),function(d,index){return _c('tr',{key:index},[_c('td',[_c('v-icon',{on:{\"click\":function($event){return _vm.removeDriver(df,d)}}},[_vm._v(\"mdi-delete-circle-outline\")])],1),_c('td',[_c('v-text-field',{staticClass:\"parameterText\",attrs:{\"hide-details\":\"\",\"flat\":\"\",\"single-line\":\"\",\"solo\":\"\",\"full-width\":\"\",\"dense\":\"\"},model:{value:(d.title),callback:function ($$v) {_vm.$set(d, \"title\", $$v)},expression:\"d.title\"}})],1),_c('td',[_c('v-text-field',{staticClass:\"parameterText\",attrs:{\"hide-details\":\"\",\"flat\":\"\",\"single-line\":\"\",\"solo\":\"\",\"full-width\":\"\",\"dense\":\"\"},model:{value:(d.function),callback:function ($$v) {_vm.$set(d, \"function\", $$v)},expression:\"d.function\"}})],1),_c('td',[_c('v-slider',{attrs:{\"dense\":\"\",\"min\":\"50\",\"max\":\"100\"},scopedSlots:_vm._u([{key:\"append\",fn:function(){return [_vm._v(\" \"+_vm._s(d.weight)+\" \")]},proxy:true}],null,true),model:{value:(d.weight),callback:function ($$v) {_vm.$set(d, \"weight\", $$v)},expression:\"d.weight\"}})],1),_c('td',[_c('v-text-field',{staticClass:\"parameterText\",attrs:{\"hide-details\":\"\",\"flat\":\"\",\"single-line\":\"\",\"solo\":\"\",\"full-width\":\"\",\"dense\":\"\"},model:{value:(d.roundingDigits),callback:function ($$v) {_vm.$set(d, \"roundingDigits\", $$v)},expression:\"d.roundingDigits\"}})],1),_c('td',[_c('v-checkbox',{attrs:{\"label\":\"Inverse\"},model:{value:(d.inverse),callback:function ($$v) {_vm.$set(d, \"inverse\", $$v)},expression:\"d.inverse\"}})],1)])}),0)]),_c('v-btn',{on:{\"click\":function($event){return _vm.addDriver(df)}}},[_c('v-icon',[_vm._v(\"mdi-plus-circle-outline\")]),_vm._v(\" \"+_vm._s(_vm.$t(\"message.addDriver\"))+\" \")],1)],1)],1)}),1),_c('v-btn',{staticClass:\"mt-4\"},[_c('v-icon',{attrs:{\"text\":\"\"},on:{\"click\":function($event){return _vm.addDriverFilter()}}},[_vm._v(\"mdi-plus-circle-outline\")]),_vm._v(\" \"+_vm._s(_vm.$t(\"message.addDriverFilter\"))+\" \")],1),_c('v-expansion-panels',{staticStyle:{\"margin-top\":\"1em\"}},[_c('v-expansion-panel',[_c('v-expansion-panel-header',[_c('p',[_c('v-icon',[_vm._v(\"mdi-code-json\")]),_vm._v(\" JSON\")],1)]),_c('v-expansion-panel-content',[_c('pre',[_vm._v(_vm._s(this.encode()))])])],1)],1)],1),_c('v-divider'),_c('v-card-actions',[_c('div',{staticClass:\"flex-grow-1\"}),_c('v-btn',{attrs:{\"color\":\"primary\",\"text\":\"\"},on:{\"click\":_vm.save}},[_vm._v(\" \"+_vm._s(_vm.$t(\"message.save\"))+\" \")]),_c('v-btn',{attrs:{\"color\":\"primary\",\"text\":\"\"},on:{\"click\":_vm.close}},[_vm._v(\" \"+_vm._s(_vm.$t(\"message.cancel\"))+\" \")])],1)],1)],1):_vm._e()\n}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","\r\n import { Component, Vue, Prop, Watch } from 'vue-property-decorator';\r\n \r\n @Component\r\n export default class EditDrivers extends Vue {\r\n @Prop({ default: null }) public driverFilters: any;\r\n @Prop({ default: null }) public model: any;\r\n\r\n private modalShow = false;\r\n\r\n private mounted() {\r\n this.$on('escKey' + this.$options.name, () => {\r\n if (this.modalShow) this.close();\r\n });\r\n document.addEventListener(\"keydown\", (e) => {\r\n if (e.key === \"Escape\") {\r\n this.$emit('escKey' + this.$options.name);\r\n }\r\n });\r\n }\r\n\r\n @Watch('driverFilters')\r\n private onDriversChanged(value: any) {\r\n if (value) {\r\n this.modalShow = true;\r\n }\r\n else {\r\n this.modalShow = false;\r\n }\r\n }\r\n\r\n private async close() {\r\n const res = await this.$confirm(String(this.$t('message.confirmClose')), { buttonTrueText: String(this.$t('message.yes')), buttonFalseText: String(this.$t('message.no')) });\r\n if (res) { this.modalShow = false }\r\n }\r\n\r\n private save() {\r\n this.$emit('save', this.driverFilters);\r\n }\r\n\r\n private async removeDriverFilter(driverFilter: any) {\r\n const res = await this.$confirm('Weet u zeker dat u deze rij wilt verwijderen?', { buttonTrueText: String(this.$t('message.yes')), buttonFalseText: String(this.$t('message.no')) })\r\n if (res) {\r\n for (let i = 0; i < this.driverFilters.length; i++) {\r\n if (this.driverFilters[i] === driverFilter) {\r\n this.driverFilters.splice(i, 1);\r\n }\r\n }\r\n }\r\n }\r\n\r\n private addDriverFilter() {\r\n this.driverFilters.push({ id: -1, function: '', title: '', drivers: [] });\r\n }\r\n\r\n private async removeDriver(driverFilter: any, driver: any) {\r\n const res = await this.$confirm('Weet u zeker dat u deze rij wilt verwijderen?', { buttonTrueText: String(this.$t('message.yes')), buttonFalseText: String(this.$t('message.no')) })\r\n if (res) {\r\n for (let i = 0; i < driverFilter.drivers.length; i++) {\r\n if (driverFilter.drivers[i] === driver) {\r\n driverFilter.drivers.splice(i, 1);\r\n }\r\n }\r\n }\r\n }\r\n\r\n private addDriver(driverFilter: any) {\r\n driverFilter.drivers.push({ id: -1, function: '', title: '', roundingDigits: 2, inverse: false });\r\n }\r\n\r\n private encode() {\r\n if (this.driverFilters != null) {\r\n const f1 = this.driverFilters.map(function (f: any) {\r\n return {\r\n Title: f.title,\r\n Function: f.function,\r\n Drivers: f.drivers.map(function (f: any) {\r\n return { Title: f.title, Function: f.function, Weight: f.weight, RoundingDigits: f.roundingDigits, Inverse: f.inverse };\r\n })\r\n };\r\n });\r\n return f1;\r\n }\r\n else {\r\n return null;\r\n }\r\n }\r\n }\r\n","import mod from \"-!../../../node_modules/thread-loader/dist/cjs.js!../../../node_modules/babel-loader/lib/index.js!../../../node_modules/ts-loader/index.js??clonedRuleSet-41.use[2]!../../../node_modules/@vue/vue-loader-v15/lib/index.js??vue-loader-options!./EditDrivers.vue?vue&type=script&lang=ts&\"; export default mod; export * from \"-!../../../node_modules/thread-loader/dist/cjs.js!../../../node_modules/babel-loader/lib/index.js!../../../node_modules/ts-loader/index.js??clonedRuleSet-41.use[2]!../../../node_modules/@vue/vue-loader-v15/lib/index.js??vue-loader-options!./EditDrivers.vue?vue&type=script&lang=ts&\"","import { render, staticRenderFns } from \"./EditDrivers.vue?vue&type=template&id=70a0ce61&\"\nimport script from \"./EditDrivers.vue?vue&type=script&lang=ts&\"\nexport * from \"./EditDrivers.vue?vue&type=script&lang=ts&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../node_modules/@vue/vue-loader-v15/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","var render = function render(){var _vm=this,_c=_vm._self._c,_setup=_vm._self._setupProxy;return _c('v-simple-table',{attrs:{\"dense\":\"\"},scopedSlots:_vm._u([{key:\"default\",fn:function(){return [_c('thead',[_c('tr',[_c('th',{staticClass:\"text-left text-no-wrap\"},[_vm._v(_vm._s(_vm.$t(\"message.description\")))]),(_vm.model.userIsAdmin)?_c('th',{staticClass:\"text-left text-no-wrap\"},[_vm._v(_vm._s(_vm.$t(\"message.expression\")))]):_vm._e(),(_vm.model.userIsAdmin)?_c('th',{staticClass:\"text-left text-no-wrap\"},[_vm._v(_vm._s(_vm.$t(\"message.calculation\")))]):_vm._e(),_c('th',{staticClass:\"text-right text-no-wrap\"},[_vm._v(_vm._s(_vm.$t(\"message.defaultValue\")))]),_c('th',{staticClass:\"text-right text-no-wrap\"},[_vm._v(_vm._s(_vm.$tc(\"message.score\",1)))])])]),_c('tbody',_vm._l((_vm.locationScores),function(locationScore,index){return _c('tr',{key:index},[_c('td',{staticClass:\"text-left\"},[_vm._v(_vm._s(locationScore.description))]),(_vm.model.userIsAdmin)?_c('td',{staticClass:\"text-left\"},[_vm._v(_vm._s(locationScore.function))]):_vm._e(),(_vm.model.userIsAdmin)?_c('td',{staticClass:\"text-left\"},[_vm._v(_vm._s(locationScore.calculation))]):_vm._e(),_c('td',{staticClass:\"text-right\"},[_vm._v(_vm._s(locationScore.defaultValue))]),_c('td',{staticClass:\"text-right\"},[_vm._v(_vm._s(_vm._f(\"fixed\")(locationScore.score,2,_vm.$i18n.locale)))])])}),0),_c('tfoot',[_c('tr',[_c('td',{staticClass:\"font-weight-bold\"},[_vm._v(_vm._s(_vm.$t(\"message.total\")))]),(_vm.model.userIsAdmin)?_c('td',{staticClass:\"text-left\"}):_vm._e(),(_vm.model.userIsAdmin)?_c('td',{staticClass:\"text-left\"}):_vm._e(),_c('td',{staticClass:\"text-left\"}),_c('td',{staticClass:\"text-right font-weight-bold\"},[_vm._v(_vm._s(_vm._f(\"fixed\")(_vm.totalScore,2,_vm.$i18n.locale)))])])])]},proxy:true}])})\n}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","\r\n import { Component, Vue, Prop } from 'vue-property-decorator';\r\n \r\n @Component\r\n export default class LocationScores extends Vue {\r\n @Prop({ default: null }) public model: any;\r\n @Prop({ default: null }) public locationScores: any;\r\n\r\n get totalScore() {\r\n let score = 1;\r\n if (this.locationScores.length == 0) return 0;\r\n this.locationScores.forEach(function (item: any) {\r\n score *= item.score;\r\n });\r\n \r\n return score;\r\n }\r\n }\r\n","import mod from \"-!../../../node_modules/thread-loader/dist/cjs.js!../../../node_modules/babel-loader/lib/index.js!../../../node_modules/ts-loader/index.js??clonedRuleSet-41.use[2]!../../../node_modules/@vue/vue-loader-v15/lib/index.js??vue-loader-options!./LocationScores.vue?vue&type=script&lang=ts&\"; export default mod; export * from \"-!../../../node_modules/thread-loader/dist/cjs.js!../../../node_modules/babel-loader/lib/index.js!../../../node_modules/ts-loader/index.js??clonedRuleSet-41.use[2]!../../../node_modules/@vue/vue-loader-v15/lib/index.js??vue-loader-options!./LocationScores.vue?vue&type=script&lang=ts&\"","import { render, staticRenderFns } from \"./LocationScores.vue?vue&type=template&id=91d6e536&\"\nimport script from \"./LocationScores.vue?vue&type=script&lang=ts&\"\nexport * from \"./LocationScores.vue?vue&type=script&lang=ts&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../node_modules/@vue/vue-loader-v15/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","var render = function render(){var _vm=this,_c=_vm._self._c,_setup=_vm._self._setupProxy;return _c('v-dialog',{attrs:{\"width\":\"65%\",\"persistent\":_vm.persistent},model:{value:(_vm.localShow),callback:function ($$v) {_vm.localShow=$$v},expression:\"localShow\"}},[_c('v-card',[_c('v-card-title',{attrs:{\"primary-title\":\"\"}},[_c('h2',[_vm._t(\"title\")],2)]),_c('v-card-text',[_vm._t(\"content\")],2),_c('v-card-actions',[_c('div',{staticClass:\"flex-grow-1\"}),_c('v-btn',{attrs:{\"color\":\"primary\",\"text\":\"\"},on:{\"click\":function($event){_vm.localShow = false}}},[_vm._v(\" \"+_vm._s(_vm.$t(\"message.close\"))+\" \")])],1)],1)],1)\n}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","\r\n import { Component, Vue, Prop } from 'vue-property-decorator';\r\n\r\n @Component\r\n export default class Dialog extends Vue {\r\n @Prop({ default: null }) public show: any;\r\n @Prop({ default: false }) public persistent: any;\r\n\r\n private get localShow() {\r\n return this.show;\r\n }\r\n\r\n private set localShow(value: any) {\r\n this.$emit(\"showChanged\", value);\r\n }\r\n }\r\n","import mod from \"-!../../../node_modules/thread-loader/dist/cjs.js!../../../node_modules/babel-loader/lib/index.js!../../../node_modules/ts-loader/index.js??clonedRuleSet-41.use[2]!../../../node_modules/@vue/vue-loader-v15/lib/index.js??vue-loader-options!./Dialog.vue?vue&type=script&lang=ts&\"; export default mod; export * from \"-!../../../node_modules/thread-loader/dist/cjs.js!../../../node_modules/babel-loader/lib/index.js!../../../node_modules/ts-loader/index.js??clonedRuleSet-41.use[2]!../../../node_modules/@vue/vue-loader-v15/lib/index.js??vue-loader-options!./Dialog.vue?vue&type=script&lang=ts&\"","import { render, staticRenderFns } from \"./Dialog.vue?vue&type=template&id=45c0c5a8&\"\nimport script from \"./Dialog.vue?vue&type=script&lang=ts&\"\nexport * from \"./Dialog.vue?vue&type=script&lang=ts&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../node_modules/@vue/vue-loader-v15/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","var render = function render(){var _vm=this,_c=_vm._self._c,_setup=_vm._self._setupProxy;return _c('v-container',{staticClass:\"fill-height\",staticStyle:{\"position\":\"relative\"},attrs:{\"id\":'googleMapContainer' + this._uid,\"fluid\":\"\",\"pa-0\":\"\"}},[_c('div',{staticClass:\"googleMap\",staticStyle:{\"width\":\"100%\",\"height\":\"100%\"},attrs:{\"id\":'googleMap' + this._uid}})])\n}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","\r\n declare const google: any;\r\n import { Component, Vue, Prop, Watch } from 'vue-property-decorator';\r\n import MarkerClusterer from '@googlemaps/markerclustererplus';\r\n import { localeIncludes } from 'locale-includes';\r\n import { convertMdiBracketToIcon } from '@/mdi';\r\n\r\n @Component\r\n export default class GoogleMap extends Vue {\r\n @Prop({ default: null }) public model: any;\r\n @Prop({ default: null }) public scenario: any;\r\n @Prop({ default: null }) public location: any;\r\n @Prop({ default: null }) public locations: any;\r\n @Prop({ default: null }) public scenarioLocations: any;\r\n @Prop({ default: 15 }) public zoom: any;\r\n @Prop({ default: false }) public showAreaSetID: any;\r\n @Prop({ default: null }) public areaSetsVisible: any;\r\n @Prop({ default: null }) public locationIsoLines: any;\r\n @Prop({ default: null }) public isoLineSet: any;\r\n @Prop({ default: null }) public isoLineMinutes: any;\r\n @Prop({ default: null }) public locationCatchmentArea: any;\r\n @Prop({ default: null }) public catchmentArea: any;\r\n @Prop({ default: null }) public area: any;\r\n @Prop({ default: null }) public refresh: any;\r\n @Prop({ default: 'greedy' }) public gestureHandling: any;\r\n @Prop({ default: false }) public mapTypeControl: any;\r\n @Prop({ default: false }) public streetViewControl: any;\r\n @Prop({ default: false }) public zoomControl: any;\r\n @Prop({ default: false }) public fullscreenControl: any;\r\n @Prop({ default: true }) public scaleControl: any;\r\n @Prop({ default: '' }) public filter: any;\r\n @Prop({ default: '' }) public searchResults: any;\r\n @Prop({ default: null }) public pois: any;\r\n @Prop({ default: null }) public heatMapPoints: any;\r\n\t\t@Prop({ default: null }) public scenarioLocationsVisible: any;\r\n @Prop({ default: null }) public onlinePois: any;\r\n @Prop({ type: Number, default: 0 }) public leftPadding!: number;\r\n @Prop({ type: Number, default: 0 }) public rightPadding!: number;\r\n @Prop({ type: Boolean, default: false }) public report!: boolean;\r\n \r\n private heatMapRadius = 1500;\r\n private map: any;\r\n \r\n private areasLayer: any;\r\n \r\n private clusterMaxZoom = 11;\r\n private clusterPoiMaxZoom = 11;\r\n private clusterGridSize = 64;\r\n\r\n private locationsCount = 0;\r\n private scenarioLocationsCount = 0;\r\n private poiCount = 0;\r\n\r\n\r\n private ZINDEXLOCATION = 30;\r\n private ZINDEXSCENARIOLOCATION = 40;\r\n private ZINDEXPOI = 20\r\n private ZINDEXSEARCHRESULT = 10\r\n\r\n \r\n private markersLocations: any;\r\n private markersScenarioLocations: any;\r\n private markersPois: any;\r\n private markersSearchResults: any;\r\n\r\n private markerClustererLocations: any;\r\n private markerClustererScenarioLocations: any;\r\n private markerClustererPois: any;\r\n\r\n private omsLocations: any;\r\n private omsScenarioLocations: any;\r\n\r\n private heatmaps: any = [];\r\n private locationIsoLinesFeatures: any;\r\n private locationCatchmentAreaFeatures: any;\r\n private circles: any;\r\n private areaLines: any;\r\n private areaFeatures: any;\r\n private legend: any = [];\r\n private touchTimer: any;\r\n private mouseoverTimeoutId = null;\r\n private modelIsChanged: boolean = false;\r\n\r\n private getHeatmapRadius() {\r\n const metersPerPx = 156543.03392 * Math.cos(35.726332 * Math.PI / 180) / Math.pow(2, this.map.getZoom());\r\n return this.heatMapRadius / metersPerPx;\r\n }\r\n\r\n \r\n private mounted() {\r\n const _self = (this as any);\r\n const options = {\r\n zoom: _self.zoom,\r\n center: new google.maps.LatLng(52.3749, 4.897),\r\n scaleControl: this.scaleControl,\r\n gestureHandling: this.gestureHandling,\r\n mapTypeControl: this.mapTypeControl,\r\n mapTypeControlOptions: {\r\n position: google.maps.ControlPosition.BOTTOM_CENTER\r\n },\r\n streetViewControl: this.streetViewControl,\r\n streetViewControlOptions: {\r\n position: google.maps.ControlPosition.BOTTOM_CENTER\r\n },\r\n rotateControl: false,\r\n fullscreenControl: this.fullscreenControl,\r\n zoomControl: this.zoomControl,\r\n mapId: 'fbb927c9dc70d35b'\r\n }\r\n\r\n // @ts-ignore\r\n _self.map = new google.maps.Map(document.getElementById('googleMap' + this._uid), options);\r\n _self.map.data.setStyle(function (feature: any) {\r\n return _self.getFeatureStyle(feature);\r\n });\r\n google.maps.event.addListener(_self.map, \"click\", function (event: any) {\r\n _self.$emit('leftClick', { x: event.pixel?.x, y: event.pixel?.y, latitude: event.latLng.lat(), longitude: event.latLng.lng() });\r\n });\r\n google.maps.event.addListener(_self.map, \"bounds_changed\", function () {\r\n // send the new bounds back to your server\r\n const bounds = _self.map.getBounds();\r\n const northEast = bounds.getNorthEast();\r\n const southWest = bounds.getSouthWest();\r\n _self.$emit('mapBoundsChanged', { west: southWest.lng(), south: southWest.lat(), east: northEast.lng(), north: northEast.lat() });\r\n });\r\n\r\n google.maps.event.addListener(_self.map, 'zoom_changed', function () {\r\n //_self.zoom = _self.map.getZoom();\r\n _self.heatmaps.forEach(async function (heatMap: any) {\r\n heatMap.set(\"radius\", _self.getHeatmapRadius());\r\n });\r\n \r\n });\r\n\r\n\r\n var tooltipElement = document.createElement('div');\r\n tooltipElement.className = 'tbdc-tooltip';\r\n tooltipElement.style.display = 'none';\r\n document.getElementById('googleMapContainer' + _self._uid)?.appendChild(tooltipElement);\r\n\r\n\r\n const overlay = new google.maps.OverlayView();\r\n overlay.setMap(_self.map);\r\n\r\n _self.map.data.addListener('mouseover', function (event: any) {\r\n if (event.feature.getProperty('tooltip') ) {\r\n const point = overlay.getProjection().fromLatLngToContainerPixel(event.latLng)\r\n tooltipElement.style.left = `${point.x + 5}px`;\r\n tooltipElement.style.top = `${point.y + 5}px`;\r\n tooltipElement.innerHTML = event.feature.getProperty('tooltip');\r\n tooltipElement.style.display = 'block';\r\n }\r\n else {\r\n tooltipElement.style.display = 'none';\r\n }\r\n _self.map.data.setStyle(function (feature: any) {\r\n //Deze functie wordt voor elke feature aangeroepen.\r\n if (feature == event.feature) {\r\n return _self.getFeatureStyle(feature, true,true);\r\n } else if (feature.getProperty('locationPropertyId') == event.feature.getProperty('locationPropertyId') && feature.getProperty('locationPropertyId') != null)\r\n {\r\n return _self.getFeatureStyle(feature,true);\r\n }\r\n else if (feature.getProperty('areaCode') == event.feature.getProperty('areaCode') && feature.getProperty('locationPropertyId') == null )\r\n {\r\n return _self.getFeatureStyle(feature, true);\r\n }\r\n else\r\n {\r\n return _self.getFeatureStyle(feature,false);\r\n }\r\n });\r\n });\r\n _self.map.data.addListener('mouseout', function () {\r\n tooltipElement.style.display = 'none';\r\n _self.map.data.setStyle(function (feature: any) {\r\n return _self.getFeatureStyle(feature);\r\n });\r\n });\r\n _self.map.data.addListener(\"click\", function (event: any) {\r\n const point = overlay.getProjection().fromLatLngToContainerPixel(event.latLng)\r\n _self.$emit('leftClick', { x: point.x, y: point.y, latitude: event.latLng.lat(), longitude: event.latLng.lng() });\r\n });\r\n google.maps.event.addListener(_self.map, \"rightclick\", function (event: any) {\r\n \r\n _self.$emit('rightClick', { x: event.pixel.x, y: event.pixel.y, latitude: event.latLng.lat(), longitude: event.latLng.lng() });\r\n });\r\n _self.map.data.addListener(\"rightclick\", function (event: any) {\r\n \r\n const point = overlay.getProjection().fromLatLngToContainerPixel(event.latLng)\r\n _self.$emit('rightClick', { x: point.x, y: point.y, latitude: event.latLng.lat(), longitude: event.latLng.lng() });\r\n });\r\n google.maps.event.addListener(_self.map, \"mousedown\", function (event: any) {\r\n if (!_self.touchTimer && event.domEvent.pointerType == \"touch\") {\r\n _self.touchTimer = setTimeout(_self.onlongtouch, 1000, event);\r\n }\r\n });\r\n google.maps.event.addListener(_self.map, \"mouseup\", function () {\r\n \r\n if (_self.touchTimer) {\r\n clearTimeout(_self.touchTimer);\r\n _self.touchTimer = null;\r\n }\r\n });\r\n google.maps.event.addListener(_self.map, \"click\", function (event: any) {\r\n //Prevent point of interest on the map from being clicked else the popup can not be closed.\r\n if (event.placeId) event.stop();\r\n });\r\n\r\n //@ts-ignore\r\n _self.omsLocations = new OverlappingMarkerSpiderfier(_self.map, { markersWontMove: true, markersWontHide: true, legWeight: 2 });\r\n //@ts-ignore\r\n _self.omsScenarioLocations = new OverlappingMarkerSpiderfier(_self.map, { markersWontMove: true, markersWontHide: true, legWeight: 2 });\r\n\r\n\r\n _self.markerClustererPois = new MarkerClusterer(_self.map, [], {\r\n zIndex: this.ZINDEXPOI - 1,\r\n clusterClass: 'tbdc-markerClusterer',\r\n enableRetinaIcons: true,\r\n styles: [{\r\n textColor: '#AAAAAA',\r\n width: 40,\r\n height: 40,\r\n url: require('../../assets/clusterOfPois.png'),\r\n }]\r\n });\r\n\r\n _self.markerClustererLocations = new MarkerClusterer(_self.map, [], {\r\n zIndex: this.ZINDEXLOCATION - 1,\r\n clusterClass: 'tbdc-markerClusterer',\r\n enableRetinaIcons: true,\r\n styles: [{\r\n textColor: '#333333',\r\n width: 40,\r\n height: 40,\r\n url: require('../../assets/clusterOfLocations.png'),\r\n }]\r\n });\r\n\r\n _self.markerClustererScenarioLocations = new MarkerClusterer(_self.map, [], {\r\n zIndex: this.ZINDEXSCENARIOLOCATION - 1,\r\n clusterClass: 'tbdc-markerClusterer',\r\n enableRetinaIcons: true,\r\n styles: [{\r\n textColor: '#009cbb',\r\n width: 40,\r\n height: 40,\r\n url: require('../../assets/clusterOfScenarioLocations.png'),\r\n }]\r\n });\r\n\r\n this.onRefresh();\r\n }\r\n \r\n private onlongtouch(event: any) {\r\n const _self = (this as any);\r\n _self.touchTimer = null;\r\n _self.$emit('rightClick', { x: event.pixel.x, y: event.pixel.y, latitude: event.latLng.lat(), longitude: event.latLng.lng() });\r\n }\r\n @Watch('refresh')\r\n private onRefresh() {\r\n const _self = (this as any);\r\n _self.$emit('startBusy');\r\n setTimeout(function () {\r\n if (_self.model) _self.onModelChanged(_self.locations, null);\r\n if (_self.locations) _self.onLocationsChanged(_self.locations, null);\r\n if (_self.locationCatchmentArea) _self.onLocationCatchmentAreaChanged();\r\n if (_self.location) {\r\n //_self.map.setCenter(_self.location);\r\n _self.onLocationChanged(_self.location, null);\r\n }\r\n _self.$emit('refresh', _self.map);\r\n _self.$emit('endBusy');\r\n }, 100);\r\n }\r\n @Watch('model')\r\n private onModelChanged() {\r\n const _self = this;\r\n this.onLocationCatchmentAreaChanged();\r\n this.onLocationChanged(null, _self.location);\r\n this.onAreaSetsVisibleChanged();\r\n\r\n this.modelIsChanged = true;\r\n }\r\n \r\n @Watch('areaSetsVisible')\r\n private onAreaSetsVisibleChanged() {\r\n const _self = this;\r\n \r\n this.map.overlayMapTypes.clear();\r\n _self.model.areaSets.forEach(function (areaSet: any) {\r\n if (_self.areaSetsVisible != null && _self.areaSetsVisible.includes(areaSet.id)) {\r\n _self.areasLayer = new google.maps.ImageMapType({\r\n getTileUrl(coord: any, zoom: any) {\r\n if (areaSet.mapTilesZoomLevelsAvailable >= zoom) {\r\n const regex = /([^0-9a-zA-Z]+)/g;\r\n const areaSetBlobName = areaSet.name.replace(regex, '-').toLowerCase();\r\n const url = \"https://tbdcirismaptiles.blob.core.windows.net/{a}/{z}/{x}_{y}.png\".replace('{a}', areaSetBlobName).replace('{z}', zoom).replace('{x}', coord.x).replace('{y}', coord.y) + (areaSet.modified == null ? '' : \"?\" + areaSet.modified);\r\n return url;\r\n }\r\n else {\r\n return null;\r\n }\r\n },\r\n tileSize: new google.maps.Size(256, 256),\r\n });\r\n _self.map.overlayMapTypes.insertAt(0, _self.areasLayer);\r\n }\r\n });\r\n\r\n\r\n \r\n }\r\n\r\n private findLocationById(id: any)\r\n {\r\n let foundLocation = null;\r\n this.locations.forEach(function (location: any) {\r\n if (location.id == id) \r\n { \r\n foundLocation = location;\r\n return;\r\n }\r\n });\r\n return foundLocation;\r\n }\r\n\r\n @Watch('location')\r\n private onLocationChanged(value: any, oldValue: any) {\r\n const _self = this;\r\n const oldLocation : any = oldValue == null ? null : this.findLocationById(oldValue.id);\r\n const newLocation : any = value == null ? null : this.findLocationById(value.id);\r\n const oldLocationMarker = oldLocation?.marker;\r\n const newLocationMarker = newLocation?.marker;\r\n if (oldLocationMarker)\r\n {\r\n oldLocationMarker.setIcon(_self.getIcon(oldLocation, false));\r\n }\r\n if (newLocationMarker)\r\n {\r\n newLocationMarker.setIcon(_self.getIcon(newLocation, true))\r\n if (value['zoomTo'] == true) {\r\n value['zoomTo'] = null;\r\n _self.map.setZoom(12);\r\n \r\n if (oldValue == null || value.id != oldValue.id) _self.map.setCenter(newLocationMarker.getPosition());\r\n }\r\n if (_self.report == true) _self.map.setCenter(newLocationMarker.getPosition());\r\n }\r\n \r\n if (this.circles != null) {\r\n this.circles.forEach(function (circle: any) {\r\n circle.setMap(null);\r\n });\r\n }\r\n this.circles = [];\r\n if (value != null)\r\n {\r\n this.model.mapRanges.forEach(function (mapRange: any) {\r\n _self.circles.push(new google.maps.Circle({\r\n strokeColor: \"#333333\",\r\n strokeOpacity: 1,\r\n strokeWeight: 2,\r\n zIndex: 4,\r\n fillColor: \"#AAAAAA\",\r\n fillOpacity: 0.1,\r\n map: _self.map,\r\n center: value,\r\n radius: mapRange,\r\n clickable: false\r\n }));\r\n });\r\n }\r\n \r\n }\r\n private fromLatLngToPoint(latLng: any, map: any) {\r\n const topRight = map.getProjection().fromLatLngToPoint(map.getBounds().getNorthEast());\r\n const bottomLeft = map.getProjection().fromLatLngToPoint(map.getBounds().getSouthWest());\r\n const scale = Math.pow(2, map.getZoom());\r\n const worldPoint = map.getProjection().fromLatLngToPoint(latLng);\r\n return new google.maps.Point((worldPoint.x - bottomLeft.x) * scale, (worldPoint.y - topRight.y) * scale);\r\n }\r\n @Watch('searchResults')\r\n private async onSearchResultsChanged(value: any) {\r\n await google.maps.importLibrary(\"marker\");\r\n const _self = this;\r\n if (_self.markersSearchResults) {\r\n _self.markersSearchResults.forEach(function (markerSearchResult: any) {\r\n markerSearchResult.setMap(null);\r\n });\r\n }\r\n const bounds = new google.maps.LatLngBounds();\r\n _self.markersSearchResults = value.map(function (poi: any) {\r\n const customMarker = document.createElement('div');\r\n customMarker.style.position = 'relative';\r\n customMarker.style.width = '24px';\r\n customMarker.style.height = '24px';\r\n // Add the PNG image\r\n const pngImage = document.createElement('img');\r\n pngImage.src = '/api/search/logo';\r\n pngImage.style.width = '100%';\r\n pngImage.style.height = '100%';\r\n customMarker.appendChild(pngImage);\r\n // Add the MDI icon\r\n const iconElement = document.createElement('div');\r\n iconElement.innerHTML = '';\r\n iconElement.style.position = 'absolute';\r\n iconElement.style.top = '50%';\r\n iconElement.style.left = '50%';\r\n iconElement.style.transform = 'translate(-50%, -50%)';\r\n iconElement.style.color = '#0063FF'; // Change color as needed\r\n iconElement.style.fontSize = '16px'; // Adjust icon size as needed\r\n customMarker.appendChild(iconElement);\r\n bounds.extend(new google.maps.LatLng(poi.latitude, poi.longitude));\r\n const marker = new google.maps.marker.AdvancedMarkerElement({\r\n position: new google.maps.LatLng(poi.latitude, poi.longitude),\r\n map: _self.map,\r\n content: customMarker,\r\n zIndex: _self.ZINDEXSEARCHRESULT,\r\n title: poi.title + ' (' + poi.category + ')'\r\n });\r\n return marker;\r\n \r\n });\r\n if (!bounds.isEmpty()) {\r\n _self.map.fitBounds(bounds, { top: 30, right: this.rightPadding + 30, left: this.leftPadding + 30, bottom: 30 });\r\n }\r\n \r\n }\r\n\r\n private addPoisToMap() {\r\n const _self = this;\r\n if (this.markerClustererPois) this.markerClustererPois.clearMarkers();\r\n // Create an empty array\r\n let allPois: any[] = [];\r\n // Check if _self.pois is not null and add the items to the array\r\n if (_self.pois !== null) {\r\n allPois = allPois.concat(_self.pois);\r\n }\r\n // Check if _self.onlinePois is not null and add the items to the array\r\n if (_self.onlinePois !== null) {\r\n allPois = allPois.concat(_self.onlinePois);\r\n }\r\n this.markersPois = allPois.map(function (poi: any) {\r\n let icon =\r\n {\r\n url: '/api/models/' + _self.model.id + '/poisets/logo',\r\n origin: new google.maps.Point(0, 0), // origin\r\n scaledSize: new google.maps.Size(24, 24), // scaled size\r\n anchor: new google.maps.Point(12, 12)\r\n };\r\n if (poi.poiSetId != null) {\r\n icon = {\r\n url: '/api/models/' + _self.model.id + '/poisets/' + poi.poiSetId + '/logo?r=' + poi.logoHash,\r\n origin: new google.maps.Point(0, 0), // origin\r\n scaledSize: new google.maps.Size(24, 24), // scaled size\r\n anchor: new google.maps.Point(12, 12)\r\n };\r\n }\r\n const marker = new google.maps.Marker({\r\n zIndex: _self.ZINDEXPOI,\r\n position: poi,\r\n title: poi.name,\r\n location: poi,\r\n icon: icon,\r\n cursor: 'hand'\r\n });\r\n return marker;\r\n });\r\n this.markerClustererPois.setMaxZoom(this.clusterPoiMaxZoom);\r\n this.markerClustererPois.setGridSize(this.clusterGridSize);\r\n this.markerClustererPois.addMarkers(_self.markersPois);\r\n }\r\n\r\n @Watch('onlinePois')\r\n @Watch('pois')\r\n private onOnlinePoisChanged() {\r\n this.calculateClusterMaxZoom();\r\n this.addPoisToMap();\r\n }\r\n\r\n private heatMap : any;\r\n\r\n @Watch('heatMapPoints')\r\n private onHeatMapPointsChanged(value: any) {\r\n const _self = this;\r\n _self.heatmaps.forEach(async function (heatMap: any) {\r\n heatMap.data.clear();\r\n });\r\n _self.heatmaps = [];\r\n let index = 0;\r\n value.forEach(async function (heatMapSetPoints: any) {\r\n const heatMapData = new google.maps.MVCArray(heatMapSetPoints.map(function (heatmap: any) {\r\n return { location: new google.maps.LatLng(heatmap.latitude, heatmap.longitude), weight: heatmap.weight };\r\n }));\r\n const heatMap = new google.maps.visualization.HeatmapLayer({\r\n data: heatMapData\r\n });\r\n _self.heatMapRadius = _self.model.heatMapSets[index].radius;\r\n if (_self.model.heatMapSets[index].radiusInMeters) {\r\n heatMap.set(\"radius\", _self.getHeatmapRadius());\r\n }\r\n else {\r\n heatMap.set(\"radius\", _self.model.heatMapSets[index].radius);\r\n }\r\n heatMap.set(\"dissipating\", _self.model.heatMapSets[index].dissipating);\r\n heatMap.set(\"opacity\", _self.model.heatMapSets[index].opacity);\r\n heatMap.set(\"maxIntensity\", _self.model.heatMapSets[index].maxIntensity);\r\n heatMap.setMap(_self.map);\r\n _self.heatmaps.push(heatMap);\r\n index++;\r\n });\r\n }\r\n \r\n private calculateClusterMaxZoom()\r\n {\r\n const _self = this;\r\n _self.locationsCount = this.locations == null ? 0 : this.locations.length;\r\n _self.poiCount = this.pois == null ? 0 : this.pois.length;\r\n _self.scenarioLocationsCount = this.scenarioLocations == null?0:this.scenarioLocations.length;\r\n if (this.locationsCount >= 5000) this.clusterMaxZoom = 9;\r\n if (this.locationsCount < 5000) this.clusterMaxZoom = 8;\r\n if (this.locationsCount < 2000) this.clusterMaxZoom = 7;\r\n if (this.locationsCount < 1000) this.clusterMaxZoom = 6;\r\n }\r\n \r\n @Watch('locations')\r\n private onLocationsChanged(value: any) {\r\n const _self = this;\r\n this.calculateClusterMaxZoom();\r\n if (this.omsLocations) this.omsLocations.removeAllMarkers();\r\n if (this.markerClustererLocations) this.markerClustererLocations.clearMarkers();\r\n const bounds = new google.maps.LatLngBounds();\r\n const boundsChanged = new google.maps.LatLngBounds();\r\n this.markersLocations = value.filter(function (location: any) { return location.visibility != 2 }).map(function (location: any) {\r\n if (location.changeType > 0) boundsChanged.extend(location); \r\n bounds.extend(location);\r\n const marker = new google.maps.Marker({\r\n position: location,\r\n location: location,\r\n icon: _self.getIcon(location, location == _self.location),\r\n title: location.name,\r\n zIndex: _self.ZINDEXLOCATION + (location.type == 0?1:0)\r\n });\r\n marker.addListener('click', function (event: any) {\r\n const point = _self.fromLatLngToPoint(event.latLng, _self.map);\r\n _self.$emit('locationLeftClick', { x: point.x, y: point.y, latitude: event.latLng.lat(), longitude: event.latLng.lng(), location });\r\n });\r\n marker.addListener('rightclick', function (event: any) {\r\n const point = _self.fromLatLngToPoint(event.latLng, _self.map);\r\n _self.$emit('locationRightClick', { x: point.x, y: point.y, latitude: event.latLng.lat(), longitude: event.latLng.lng(), location });\r\n });\r\n _self.omsLocations.addMarker(marker);\r\n location['marker'] = marker;\r\n return marker; \r\n });\r\n this.markerClustererLocations.setMaxZoom(this.clusterMaxZoom);\r\n this.markerClustererLocations.setGridSize(this.clusterGridSize);\r\n this.markerClustererLocations.addMarkers(_self.markersLocations);\r\n if (!this.report) {\r\n if (this.modelIsChanged == true && this.locations != null && this.locations.length > 0) {\r\n this.modelIsChanged = false;\r\n _self.map.fitBounds(bounds, { top: 30, right: this.rightPadding + 30, left: this.leftPadding + 30, bottom: 30 });\r\n }\r\n else if (!boundsChanged.isEmpty()) {\r\n _self.map.fitBounds(boundsChanged, { top: 30, right: this.rightPadding + 30, left: this.leftPadding + 30, bottom: 30 });\r\n }\r\n }\r\n }\r\n \r\n @Watch('scenarioLocationsVisible')\r\n @Watch('scenarioLocations')\r\n private onScenarioLocationsChanged() {\r\n const _self = this;\r\n this.calculateClusterMaxZoom();\r\n if (this.omsScenarioLocations) this.omsScenarioLocations.removeAllMarkers();\r\n if (this.markerClustererScenarioLocations) this.markerClustererScenarioLocations.clearMarkers();\r\n if (this.scenarioLocationsVisible) {\r\n this.markersScenarioLocations = _self.scenarioLocations.map(function (scenarioLocation: any) {\r\n const marker = new google.maps.Marker({\r\n position: scenarioLocation,\r\n title: scenarioLocation.scenarioName + ' - ' + scenarioLocation.locationName,\r\n scenarioLocation: scenarioLocation,\r\n icon: _self.getIcon(scenarioLocation, false, true),\r\n zIndex: _self.ZINDEXSCENARIOLOCATION\r\n });\r\n marker.addListener('click', function () {\r\n marker.setIcon(_self.getIcon(scenarioLocation, true, true));\r\n _self.$emit('scenarioLocationLeftClick', { scenarioLocation: scenarioLocation });\r\n });\r\n _self.omsLocations.addMarker(marker);\r\n return marker;\r\n });\r\n\r\n this.markerClustererScenarioLocations.setMaxZoom(this.clusterMaxZoom);\r\n this.markerClustererScenarioLocations.setGridSize(this.clusterGridSize);\r\n this.markerClustererScenarioLocations.addMarkers(_self.markersScenarioLocations);\r\n\r\n }\r\n //this.onFilterChanged();\r\n }\r\n\r\n @Watch('filter')\r\n private onFilterChanged() {\r\n \r\n const _self = this;\r\n _self.$emit('startBusy');\r\n setTimeout(function () {\r\n \r\n if (_self.omsLocations) _self.omsLocations.forgetAllMarkers();\r\n let longitudeTotal = 0;\r\n let latitudeTotal = 0;\r\n let found = 0;\r\n _self.markersLocations.forEach(function (marker: any) {\r\n\r\n const filter = _self.filter == null?'':_self.filter.toLowerCase();\r\n\r\n\r\n if (localeIncludes(marker.location.name, filter, { usage: \"search\", sensitivity: \"base\" }) || (marker.location.locationGroup != null && localeIncludes(marker.location.locationGroup, filter, { usage: \"search\", sensitivity: \"base\" }))) {\r\n if (_self.omsLocations) _self.omsLocations.trackMarker(marker);\r\n marker.setVisible(true);\r\n found++;\r\n longitudeTotal += marker.position.lng();\r\n latitudeTotal += marker.position.lat();\r\n }\r\n else {\r\n marker.setVisible(false);\r\n if (marker.location == _self.location) _self.$emit('deselect');\r\n }\r\n });\r\n if (found > 0 && _self.filter != null && _self.filter != '') {\r\n _self.map.setCenter({ lat: latitudeTotal / found, lng: longitudeTotal / found });\r\n\r\n\r\n }\r\n _self.$emit('endBusy');\r\n }, 0);\r\n }\r\n\r\n private getIcon(location: any, selected: boolean = false, isScenario: boolean = false) {\r\n let overlay1 = '';\r\n if (selected) overlay1 = '/Selected';\r\n \r\n \r\n let overlay2 = '';\r\n if (location.changeType == 3) {\r\n overlay2 = '/Edit';\r\n }\r\n if (location.changeType == 2) {\r\n overlay2 = '/Closing';\r\n }\r\n if (location.changeType == 1) {\r\n overlay2 = '/Opening';\r\n }\r\n \r\n let round = '';\r\n if (location.type == 1 || location.type == 4 || location.type == 5) {\r\n if (isScenario)\r\n {\r\n overlay1 = '/ScenarioRound';\r\n round = 'round';\r\n }\r\n else\r\n {\r\n round = 'round';\r\n }\r\n }\r\n else\r\n {\r\n if (isScenario) overlay1 = '/Scenario';\r\n }\r\n const icon = {\r\n url: '/api/models/location-groups/' + (location.locationGroupId === null ? -1 : location.locationGroupId) + '/logo/' + round + overlay1 + overlay2 + '?r=' + this.model.modified,\r\n scaledSize: new google.maps.Size(40, 58),\r\n origin: new google.maps.Point(0,0),\r\n anchor: new google.maps.Point(20, 56)\r\n };\r\n if (location.type == 1) {\r\n icon.scaledSize = new google.maps.Size(20, 20);\r\n icon.origin = new google.maps.Point(0, 0);\r\n icon.anchor = new google.maps.Point(10, 10);\r\n } else if (location.type == 4) {\r\n icon.scaledSize = new google.maps.Size(30, 30);\r\n icon.origin = new google.maps.Point(0, 0);\r\n icon.anchor = new google.maps.Point(15, 15);\r\n } else if (location.type == 5) {\r\n icon.scaledSize = new google.maps.Size(40, 40);\r\n icon.origin = new google.maps.Point(0, 0);\r\n icon.anchor = new google.maps.Point(20, 20);\r\n }\r\n return icon\r\n }\r\n @Watch('locationIsoLines')\r\n @Watch('isoLineSet')\r\n @Watch('isoLineMinutes')\r\n private onSelectedLocationIsoLines() {\r\n const _self = this;\r\n if (this.locationIsoLinesFeatures != null) {\r\n this.locationIsoLinesFeatures.forEach(function (feature: any) {\r\n _self.map.data.remove(feature);\r\n });\r\n }\r\n \r\n if (this.locationIsoLines) {\r\n const features = this.locationIsoLines.features.filter(function (isoLine: any) {\r\n return isoLine.properties.minutes == null || (isoLine.properties.minutes == _self.isoLineMinutes && isoLine.properties.isoLineSet == _self.isoLineSet.name);\r\n });\r\n this.locationIsoLinesFeatures = _self.map.data.addGeoJson({ \"type\": \"FeatureCollection\", \"features\": features });\r\n }\r\n else {\r\n this.locationIsoLinesFeatures = null\r\n }\r\n }\r\n\r\n private darkenColor(hex: string, percent: number) {\r\n // Remove the \"#\" if it's there\r\n hex = hex.replace(/^#/, '');\r\n\r\n // Parse the hex color\r\n const r = parseInt(hex.substring(0, 2), 16);\r\n const g = parseInt(hex.substring(2, 4), 16);\r\n const b = parseInt(hex.substring(4, 6), 16);\r\n\r\n // Calculate the new RGB values, reducing by the percentage\r\n const newR = Math.max(0, Math.min(255, r - (r * percent)));\r\n const newG = Math.max(0, Math.min(255, g - (g * percent)));\r\n const newB = Math.max(0, Math.min(255, b - (b * percent)));\r\n\r\n // Convert back to hex\r\n const darkenedHex =\r\n '#' +\r\n Math.round(newR).toString(16).padStart(2, '0') +\r\n Math.round(newG).toString(16).padStart(2, '0') +\r\n Math.round(newB).toString(16).padStart(2, '0');\r\n\r\n return darkenedHex;\r\n }\r\n\r\n private getFeatureStyle(feature: any, highlight: any, active: any) {\r\n if (feature.getProperty('type') == 'c') { // catchment area\r\n return {\r\n fillColor: highlight ? this.darkenColor(feature.getProperty('color'),0.5) : feature.getProperty('color'),\r\n fillOpacity: feature.getProperty('fraction') == 0 && feature.getProperty('valueDelta') == 0 && !highlight ? 0 : 0.9,\r\n strokeOpacity: 0.8,\r\n strokeWeight: active ? 4: 1,\r\n strokeColor: 'black',\r\n zIndex: highlight || feature.getProperty('valueDelta') != 0 ? 2 : 1,\r\n }\r\n }\r\n else if (feature.getProperty('type') == 'i') { // isoline\r\n return {\r\n fillOpacity: 0,\r\n clickable: false,\r\n strokeOpacity: 1,\r\n strokeWeight: 5,\r\n strokeColor: 'rgb(0, 96, 127)',\r\n zIndex: 5,\r\n }\r\n } else if (feature.getProperty('type') == 'a') { // area\r\n return {\r\n fillColor: 'darkgreen',\r\n clickable: false,\r\n fillOpacity: 0.8,\r\n strokeOpacity: 1,\r\n strokeWeight: 1,\r\n strokeColor: 'black',\r\n zIndex: 3,\r\n }\r\n } else {\r\n return null;\r\n }\r\n }\r\n formatNumberAsCurrency(numberValue: number,currency: string): string {\r\n const locale: string = this.$i18n.locale;\r\n const formattedCurrency: string = this.$options.filters!.currency(\r\n numberValue,\r\n locale,\r\n currency\r\n );\r\n return formattedCurrency;\r\n }\r\n @Watch('catchmentArea')\r\n @Watch('locationCatchmentArea')\r\n private onLocationCatchmentAreaChanged() {\r\n const _self = this;\r\n let maximumFractionDiff = 0;\r\n if (this.locationCatchmentAreaFeatures != null) {\r\n this.locationCatchmentAreaFeatures.forEach(function (feature: any) {\r\n _self.map.data.remove(feature);\r\n });\r\n }\r\n if (this.catchmentArea == null || this.locationCatchmentArea == null || _self.locationCatchmentArea.featureCollection == null) {\r\n this.locationCatchmentAreaFeatures = null;\r\n } else {\r\n const maximumDelta = this.locationCatchmentArea.featureCollection.features.reduce((maxDelta : number, feature: any) => { return Math.max(maxDelta, Math.abs(feature.properties.fraction)); }, 0);\r\n const locationCatchmentAreaFeatures: any[] = [];\r\n const total = this.locationCatchmentArea.featureCollection.features.reduce((accumulator : number, feature : any) => accumulator + feature.properties.value,0);\r\n this.locationCatchmentArea.featureCollection.features.forEach(function (feature: any) {\r\n if (feature.properties.valueSharePrevious <= _self.catchmentArea.coverage) {\r\n let fractionDiff = 1 / (maximumDelta / Math.abs(feature.properties.fraction))\r\n if (fractionDiff > 1) fractionDiff = 1.0;\r\n if (fractionDiff > maximumFractionDiff) maximumFractionDiff = fractionDiff;\r\n if (feature.properties.catchmentAreaZoneColor != null) \r\n {\r\n feature.properties.color = feature.properties.catchmentAreaZoneColor;\r\n }\r\n else\r\n {\r\n feature.properties.color = _self.pickHex([0, 96, 127], [75, 225, 255], fractionDiff);\r\n }\r\n let deltaString: string = '';\r\n feature.properties['valueDelta'] = 0;\r\n \r\n if (_self.location.changeType == 0 && _self.scenario.parentScenarioId != null && !_self.locationCatchmentArea.sameAsParent && feature.properties.value != feature.properties.valueDefault) {\r\n let impact = feature.properties.value - feature.properties.valueDefault;\r\n if (impact != 0) {\r\n let impactString: any = impact;\r\n if (_self.model.outputType == 1 || _self.model.outputType == 3) impactString = _self.formatNumberAsCurrency(impact, _self.model.currency);\r\n deltaString = '
' + _self.$t('message.impact') + ' (' + feature.properties['areaCode'] + ') : ' + impactString + '
';\r\n feature.properties['valueDelta'] = impact;\r\n feature.properties['impactPercentage'] = 1 / (total / Math.max(Math.abs(impact), 1));\r\n if (feature.properties.catchmentAreaZoneColor != null) \r\n {\r\n //NOI\r\n if (impact < 0 ) feature.properties.color = '#ff5555';\r\n if (impact > 0 ) feature.properties.color = '#55ff55'; \r\n }\r\n else\r\n {\r\n //Gravitatie\r\n const belowThreshold = (1 / (total / Math.max(Math.abs(impact), 1)) < 0.00025);\r\n if (impact < 0 && !belowThreshold) feature.properties.color = _self.pickHex([255, 85, 85], [255, 200, 200], fractionDiff);\r\n if (impact > 0 && !belowThreshold) feature.properties.color = _self.pickHex([85, 255, 85], [200, 255, 200], fractionDiff);\r\n }\r\n }\r\n }\r\n if (feature.properties.locationPropertyId == null) {\r\n //Gravitatie\r\n feature.properties['tooltip'] = '

' + feature.properties['areaCode'] + '


' + _self.$t('message.fraction') + ' : ' + Math.round(feature.properties['fraction'] * 100) / 100 + '
' + (deltaString != '' ? deltaString : '');\r\n }\r\n else {\r\n let title : string = '';\r\n let nonShared = '';\r\n let shared = '';\r\n let total = 0;\r\n _self.locationCatchmentArea.locationProperties.forEach(function (locationProperty: any) {\r\n if (feature.properties.locationPropertyId == locationProperty.id) {\r\n if (title == '') title = '

' + convertMdiBracketToIcon(locationProperty.title) + '

';\r\n if (locationProperty.fraction == 1) nonShared += '
' + _self.$t('message.nonShared') + ' : ' + Math.round(locationProperty.output) + '
';\r\n if (locationProperty.fraction < 1 && locationProperty.fraction > 0) shared += '
' + _self.$t('message.sharedWith') + ' ' + ((1 / locationProperty.fraction) - 1) + ' ' + _self.$t('message.otherLocations') + ' : ' + Math.round(locationProperty.output) + ' (' + locationProperty.originalOutput + ')
';\r\n total += locationProperty.output;\r\n }\r\n });\r\n feature.properties['tooltip'] = title + '
' + '
' + _self.$t('message.total') + ' : ' + Math.round(total) + '
' + (nonShared != '' ? nonShared : '') + (shared != '' ? shared : '') + (deltaString != '' ? deltaString : '');\r\n }\r\n \r\n \r\n\r\n //Add to collection\r\n locationCatchmentAreaFeatures.push(feature);\r\n }\r\n });\r\n this.locationCatchmentAreaFeatures = this.map.data.addGeoJson({ \"type\": \"FeatureCollection\", \"features\": locationCatchmentAreaFeatures });\r\n if (_self.report) {\r\n const bounds = new google.maps.LatLngBounds();\r\n this.map.data.forEach((feature : any) => {\r\n const geometry = feature.getGeometry();\r\n if (geometry) {\r\n _self.processGeometry(geometry, bounds);\r\n }\r\n });\r\n this.map.fitBounds(bounds);\r\n }\r\n\r\n \r\n }\r\n this.createLegend(maximumFractionDiff);\r\n }\r\n\r\n private processGeometry(geometry : any, bounds : any) {\r\n switch (geometry.getType()) {\r\n case 'Point':\r\n bounds.extend(geometry.get());\r\n break;\r\n case 'MultiPoint':\r\n case 'LineString':\r\n case 'MultiLineString':\r\n case 'LinearRing':\r\n case 'Polygon':\r\n case 'MultiPolygon':\r\n geometry.forEachLatLng((latLng : any) => {\r\n bounds.extend(latLng);\r\n });\r\n break;\r\n case 'GeometryCollection':\r\n geometry.getArray().forEach((geo : any) => {\r\n this.processGeometry(geo, bounds);\r\n });\r\n break;\r\n }\r\n }\r\n\r\n private createLegend(maximumFractionDiff: number) {\r\n this.legend = [];\r\n const _self = this;\r\n if (_self.catchmentArea != null) {\r\n \r\n if (this.model.catchmentAreaZones.length > 0) {\r\n this.model.catchmentAreaZones.forEach(function (catchmentAreaZone: any) {\r\n _self.model.catchmentAreas.forEach(function (catchmentArea: any) {\r\n if (catchmentArea.name == catchmentAreaZone.catchmentAreaName && catchmentArea.id == _self.catchmentArea.catchmentAreaId) {\r\n _self.legend.push(catchmentAreaZone);\r\n }\r\n });\r\n })\r\n } else {\r\n _self.legend.push({ title: '100%', color: _self.pickHex([0, 96, 127], [75, 225, 255], maximumFractionDiff) });\r\n _self.legend.push({ title: '80%', color: _self.pickHex([0, 96, 127], [75, 225, 255], maximumFractionDiff * 0.8) });\r\n _self.legend.push({ title: '60%', color: _self.pickHex([0, 96, 127], [75, 225, 255], maximumFractionDiff * 0.6) });\r\n _self.legend.push({ title: '40%', color: _self.pickHex([0, 96, 127], [75, 225, 255], maximumFractionDiff * 0.4) });\r\n _self.legend.push({ title: '20%', color: _self.pickHex([0, 96, 127], [75, 225, 255], maximumFractionDiff * 0.2) });\r\n }\r\n\r\n }\r\n this.$emit('legendChanged', this.legend);\r\n }\r\n\r\n private pickHex(color1: any, color2: any, weight: any) {\r\n const w1 = weight;\r\n const w2 = 1 - w1;\r\n const rgb = [Math.round(color1[0] * w1 + color2[0] * w2),\r\n Math.round(color1[1] * w1 + color2[1] * w2),\r\n Math.round(color1[2] * w1 + color2[2] * w2)];\r\n const h = rgb[0] * 0x10000 + rgb[1] * 0x100 + rgb[2] * 0x1;\r\n return '#' + ('000000' + h.toString(16)).slice(-6);\r\n\t\t}\r\n \r\n @Watch('area')\r\n private onAreaChanged() {\r\n const _self = this;\r\n if (_self.areaLines == null) _self.areaLines = [];\r\n //remove lines from map\r\n _self.areaLines.forEach(function (line: any) {\r\n line.setMap(null);\r\n })\r\n //remove features from map\r\n if (this.areaFeatures != null) {\r\n this.areaFeatures.forEach(function (feature: any) {\r\n _self.map.data.remove(feature);\r\n });\r\n }\r\n if (_self.area != null) {\r\n _self.areaFeatures = _self.map.data.addGeoJson({ \"type\": \"FeatureCollection\", \"features\": _self.area.featureCollection });\r\n if (_self.area.locations != null) {\r\n _self.area.locations.forEach(function (arrow: any) {\r\n const line = new google.maps.Polyline({\r\n path: [{ lng: arrow.areaPoint.longitude, lat: arrow.areaPoint.latitude }, { lng: arrow.locationPoint.longitude, lat: arrow.locationPoint.latitude }],\r\n strokeWeight: 1.5,\r\n strokeOpacity: 0.5,\r\n zIndex: 4,\r\n map: _self.map\r\n });\r\n const cityCircle = new google.maps.Circle({\r\n center: arrow.locationPoint,\r\n strokeOpacity: 1,\r\n strokeColor: 'black',\r\n fillColor: '#97a5de',\r\n fillOpacity: 0.8,\r\n zIndex: 4,\r\n map: _self.map,\r\n radius: (1 / (_self.area.totalValue / arrow.value)) * 300\r\n });\r\n _self.areaLines.push(cityCircle);\r\n _self.areaLines.push(line);\r\n });\r\n }\r\n }\r\n }\r\n }\r\n","import mod from \"-!../../../node_modules/thread-loader/dist/cjs.js!../../../node_modules/babel-loader/lib/index.js!../../../node_modules/ts-loader/index.js??clonedRuleSet-41.use[2]!../../../node_modules/@vue/vue-loader-v15/lib/index.js??vue-loader-options!./GoogleMap.vue?vue&type=script&lang=ts&\"; export default mod; export * from \"-!../../../node_modules/thread-loader/dist/cjs.js!../../../node_modules/babel-loader/lib/index.js!../../../node_modules/ts-loader/index.js??clonedRuleSet-41.use[2]!../../../node_modules/@vue/vue-loader-v15/lib/index.js??vue-loader-options!./GoogleMap.vue?vue&type=script&lang=ts&\"","import { render, staticRenderFns } from \"./GoogleMap.vue?vue&type=template&id=34136169&\"\nimport script from \"./GoogleMap.vue?vue&type=script&lang=ts&\"\nexport * from \"./GoogleMap.vue?vue&type=script&lang=ts&\"\nimport style0 from \"./GoogleMap.vue?vue&type=style&index=0&id=34136169&prod&lang=css&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../node_modules/@vue/vue-loader-v15/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","var render = function render(){var _vm=this,_c=_vm._self._c,_setup=_vm._self._setupProxy;return (_vm.location)?_c('div',[_c('Properties',{attrs:{\"subModel\":_vm.subModel,\"model\":_vm.model,\"location\":_vm.location,\"locationProperties\":_vm.locationProperties != null ? _vm.locationProperties.filter(_vm.selectViewLocation) : null}})],1):_vm._e()\n}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","\r\n import { Component, Vue, Prop } from 'vue-property-decorator';\r\n import Properties from '@/components/main/Properties.vue'\r\n\r\n @Component({\r\n components: {\r\n Properties,\r\n },\r\n })\r\n export default class CalculationModelOutput extends Vue {\r\n @Prop({ default: null }) public model: any;\r\n @Prop({ default: null }) public subModel: any;\r\n @Prop({ default: null }) public location: any;\r\n @Prop({ default: null }) public locationProperties: any;\r\n\r\n private selectViewLocation(value: any) {\r\n return value.viewLocation == 1;\r\n }\r\n }\r\n","import mod from \"-!../../../node_modules/thread-loader/dist/cjs.js!../../../node_modules/babel-loader/lib/index.js!../../../node_modules/ts-loader/index.js??clonedRuleSet-41.use[2]!../../../node_modules/@vue/vue-loader-v15/lib/index.js??vue-loader-options!./ModelOutput.vue?vue&type=script&lang=ts&\"; export default mod; export * from \"-!../../../node_modules/thread-loader/dist/cjs.js!../../../node_modules/babel-loader/lib/index.js!../../../node_modules/ts-loader/index.js??clonedRuleSet-41.use[2]!../../../node_modules/@vue/vue-loader-v15/lib/index.js??vue-loader-options!./ModelOutput.vue?vue&type=script&lang=ts&\"","import { render, staticRenderFns } from \"./ModelOutput.vue?vue&type=template&id=5c190260&\"\nimport script from \"./ModelOutput.vue?vue&type=script&lang=ts&\"\nexport * from \"./ModelOutput.vue?vue&type=script&lang=ts&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../node_modules/@vue/vue-loader-v15/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","var render = function render(){var _vm=this,_c=_vm._self._c,_setup=_vm._self._setupProxy;return _c('v-dialog',{attrs:{\"width\":\"1000\"},model:{value:(_vm.modalShow),callback:function ($$v) {_vm.modalShow=$$v},expression:\"modalShow\"}},[(_vm.scenarioProcessingLog && _vm.scenario && _vm.model)?_c('v-card',[_c('v-card-title',{attrs:{\"primary-title\":\"\"}},[_vm._v(\" \"+_vm._s(_vm.$t(\"message.scenarioProcessingLog\"))+\" (\"+_vm._s(_vm.scenario.name)+\") (\"+_vm._s(_vm.$t(\"message.last100records\"))+\") \")]),(_vm.scenarioProcessingLog)?_c('v-card-text',[_c('v-data-table',{attrs:{\"headers\":_vm.headers,\"items\":_vm.scenarioProcessingLog,\"items-per-page\":10},scopedSlots:_vm._u([{key:`item.scheduledDateTimeUtc`,fn:function({ item }){return [(item.scheduledDateTimeUtc != null)?_c('span',[_vm._v(_vm._s(_vm._f(\"datetime\")(item.scheduledDateTimeUtc))+\" UTC\")]):_vm._e()]}},{key:`item.startedDateTimeUtc`,fn:function({ item }){return [(item.startedDateTimeUtc != null)?_c('span',[_vm._v(_vm._s(_vm._f(\"datetime\")(item.startedDateTimeUtc))+\" UTC\")]):_vm._e()]}},{key:`item.isoLinesMissingDateTimeUtc`,fn:function({ item }){return [(item.isolinesMissingDateTimeUtc != null)?_c('span',[_vm._v(_vm._s(_vm._f(\"datetime\")(item.isolinesMissingDateTimeUtc))+\" UTC\")]):_vm._e()]}},{key:`item.endedDateTimeUtc`,fn:function({ item }){return [(item.endedDateTimeUtc != null)?_c('span',[_vm._v(_vm._s(_vm._f(\"datetime\")(item.endedDateTimeUtc))+\" UTC\")]):_vm._e()]}}],null,true)})],1):_vm._e(),_c('v-divider'),_c('v-card-actions',[_c('div',{staticClass:\"flex-grow-1\"}),_c('v-btn',{attrs:{\"color\":\"primary\",\"text\":\"\"},on:{\"click\":_vm.close}},[_vm._v(\" \"+_vm._s(_vm.$t(\"message.close\"))+\" \")])],1)],1):_vm._e()],1)\n}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","\r\n import { Component, Vue, Prop, Watch } from 'vue-property-decorator';\r\n\r\n @Component\r\n export default class ScenarioProcessingLog extends Vue {\r\n\r\n private modalShow = false;\r\n\r\n @Prop({ default: null }) public scenarioProcessingLog: any;\r\n @Prop({ default: null }) public scenario: any;\r\n @Prop({ default: null }) public model: any;\r\n \r\n @Watch('scenarioProcessingLog')\r\n private onModelParametersChanged(value: any) {\r\n if (value) {\r\n this.modalShow = true;\r\n }\r\n else {\r\n this.modalShow = false;\r\n }\r\n }\r\n\r\n get headers(): any {\r\n const h = [\r\n {\r\n text: this.$t(\"message.scenario\"),\r\n align: 'start',\r\n sortable: false,\r\n value: 'scenarioName',\r\n },\r\n {\r\n text: this.$t(\"message.scheduledDateTimeUtc\"),\r\n align: 'start',\r\n sortable: false,\r\n value: 'scheduledDateTimeUtc',\r\n },\r\n {\r\n text: this.$t(\"message.startedDateTimeUtc\"),\r\n align: 'start',\r\n sortable: false,\r\n value: 'startedDateTimeUtc',\r\n },\r\n {\r\n text: this.$t(\"message.isoLinesMissingDateTimeUtc\"),\r\n align: 'start',\r\n sortable: false,\r\n value: 'isoLinesMissingDateTimeUtc',\r\n },\r\n \r\n {\r\n text: this.$t(\"message.endedDateTimeUtc\"),\r\n align: 'start',\r\n sortable: false,\r\n value: 'endedDateTimeUtc',\r\n },\r\n {\r\n text: this.$t(\"message.user\"),\r\n align: 'start',\r\n sortable: false,\r\n value: 'userName',\r\n }\r\n \r\n ];\r\n if (this.model.userIsGlobalAdmin) {\r\n h.push({\r\n text: this.$t(\"message.error\"),\r\n align: 'start',\r\n sortable: false,\r\n value: 'error',\r\n }\r\n )\r\n }\r\n return h;\r\n }\r\n\r\n private close() {\r\n this.modalShow = false;\r\n }\r\n }\r\n","import mod from \"-!../../../node_modules/thread-loader/dist/cjs.js!../../../node_modules/babel-loader/lib/index.js!../../../node_modules/ts-loader/index.js??clonedRuleSet-41.use[2]!../../../node_modules/@vue/vue-loader-v15/lib/index.js??vue-loader-options!./ScenarioProcessingLog.vue?vue&type=script&lang=ts&\"; export default mod; export * from \"-!../../../node_modules/thread-loader/dist/cjs.js!../../../node_modules/babel-loader/lib/index.js!../../../node_modules/ts-loader/index.js??clonedRuleSet-41.use[2]!../../../node_modules/@vue/vue-loader-v15/lib/index.js??vue-loader-options!./ScenarioProcessingLog.vue?vue&type=script&lang=ts&\"","import { render, staticRenderFns } from \"./ScenarioProcessingLog.vue?vue&type=template&id=f980ee3c&\"\nimport script from \"./ScenarioProcessingLog.vue?vue&type=script&lang=ts&\"\nexport * from \"./ScenarioProcessingLog.vue?vue&type=script&lang=ts&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../node_modules/@vue/vue-loader-v15/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","var render = function render(){var _vm=this,_c=_vm._self._c,_setup=_vm._self._setupProxy;return (_vm.location)?_c('div',{attrs:{\"id\":\"locationCatchmentArea\"}},[_c('h4',[_vm._v(_vm._s(_vm.$t(\"message.top10\"))+\" \"+_vm._s(_vm.$tc(\"message.areasType\" + _vm.model.areasType + \"Name\",2).toLowerCase()))]),(_vm.locationCatchmentArea != null && _vm.locationCatchmentArea.areas != null && _vm.locationCatchmentArea.areas.length > 1)?_c('div',_vm._l((_vm.filteredAreas.slice(0, 10)),function(item){return _c('div',{key:item.areaCode,staticClass:\"tbdc-grid tbdc-hover\"},[_c('div',{staticClass:\"tbdc-row tbdc-hover\",on:{\"click\":function($event){return _vm.setArea(item.areaCode)}}},[_c('div',{staticStyle:{\"cursor\":\"pointer\"}},[_c('v-icon',{staticClass:\"mr-3\"},[_vm._v(\"mdi-land-fields\")]),_vm._v(\" \"+_vm._s(item.areaCode))],1),_c('div',{staticStyle:{\"float\":\"right\",\"cursor\":\"pointer\",\"text-align\":\"right\"}},[(_vm.model.outputType == 1)?_c('span',[_c('PropertyValue',{attrs:{\"property\":{numberValue: item.output, dataType: 3},\"onlyCurrentValue\":true}})],1):_vm._e(),(_vm.model.outputType == 2)?_c('span',[_c('PropertyValue',{attrs:{\"property\":{numberValue: item.output, dataType: 1, roundingDigits: 0 },\"onlyCurrentValue\":true}})],1):_vm._e(),(_vm.model.outputType == 3)?_c('span',[_c('PropertyValue',{attrs:{\"property\":{numberValue: item.output, dataType: 3},\"onlyCurrentValue\":true,\"currency\":_vm.model.currency}})],1):_vm._e(),(_vm.model.outputType == 4)?_c('span',[_c('PropertyValue',{attrs:{\"property\":{numberValue: item.output, dataType: 1, roundingDigits: 0},\"onlyCurrentValue\":true}})],1):_vm._e()]),_c('div')])])}),0):_c('div',[_c('Loading')],1)]):_vm._e()\n}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","var render = function render(){var _vm=this,_c=_vm._self._c,_setup=_vm._self._setupProxy;return _c('div',{staticStyle:{\"text-align\":\"center\",\"margin\":\"8px\"}},[_c('v-img',{class:{ spin: true },staticStyle:{\"display\":\"inline-block\"},attrs:{\"src\":require('../../assets/TBDC_icon_grey.svg'),\"width\":\"32\",\"height\":\"32\"}})],1)\n}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","\r\n import { Component, Vue } from 'vue-property-decorator';\r\n\r\n @Component\r\n export default class Loading extends Vue {\r\n\r\n }\r\n","import mod from \"-!../../../node_modules/thread-loader/dist/cjs.js!../../../node_modules/babel-loader/lib/index.js!../../../node_modules/ts-loader/index.js??clonedRuleSet-41.use[2]!../../../node_modules/@vue/vue-loader-v15/lib/index.js??vue-loader-options!./Loading.vue?vue&type=script&lang=ts&\"; export default mod; export * from \"-!../../../node_modules/thread-loader/dist/cjs.js!../../../node_modules/babel-loader/lib/index.js!../../../node_modules/ts-loader/index.js??clonedRuleSet-41.use[2]!../../../node_modules/@vue/vue-loader-v15/lib/index.js??vue-loader-options!./Loading.vue?vue&type=script&lang=ts&\"","import { render, staticRenderFns } from \"./Loading.vue?vue&type=template&id=123d9265&\"\nimport script from \"./Loading.vue?vue&type=script&lang=ts&\"\nexport * from \"./Loading.vue?vue&type=script&lang=ts&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../node_modules/@vue/vue-loader-v15/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","\r\n import { Component, Vue, Prop } from 'vue-property-decorator';\r\n import PropertyValue from '@/components/main/PropertyValue.vue'\r\n import Properties from '@/components/main/Properties.vue'\r\n import Loading from '@/components/main/Loading.vue';\r\n\r\n @Component({\r\n components: {\r\n PropertyValue,\r\n Properties,\r\n Loading,\r\n },\r\n })\r\n export default class CatchmentAreaInformation extends Vue {\r\n @Prop({ default: null }) public model: any;\r\n @Prop({ default: null }) public location: any;\r\n @Prop({ default: null }) public locationCatchmentArea: any;\r\n @Prop({ default: null }) public locationProperties: any;\r\n \r\n private setArea(areaCode: any) {\r\n this.$emit('areaSelected', areaCode);\r\n }\r\n \r\n get filteredAreas() {\r\n const _self = this;\r\n if (this.locationCatchmentArea?.areas == null) return [];\r\n const _filteredAreas = this.locationCatchmentArea.areas.filter(function (area: any) {\r\n return area.locationPropertyId + 0 == _self.model.outputLocationPropertyId + 0;\r\n });\r\n if (_filteredAreas.length == 0) return this.locationCatchmentArea.areas; else return _filteredAreas;\r\n }\r\n\r\n \r\n }\r\n","import mod from \"-!../../../node_modules/thread-loader/dist/cjs.js!../../../node_modules/babel-loader/lib/index.js!../../../node_modules/ts-loader/index.js??clonedRuleSet-41.use[2]!../../../node_modules/@vue/vue-loader-v15/lib/index.js??vue-loader-options!./CatchmentAreaInformation.vue?vue&type=script&lang=ts&\"; export default mod; export * from \"-!../../../node_modules/thread-loader/dist/cjs.js!../../../node_modules/babel-loader/lib/index.js!../../../node_modules/ts-loader/index.js??clonedRuleSet-41.use[2]!../../../node_modules/@vue/vue-loader-v15/lib/index.js??vue-loader-options!./CatchmentAreaInformation.vue?vue&type=script&lang=ts&\"","import { render, staticRenderFns } from \"./CatchmentAreaInformation.vue?vue&type=template&id=7ca7b1a2&\"\nimport script from \"./CatchmentAreaInformation.vue?vue&type=script&lang=ts&\"\nexport * from \"./CatchmentAreaInformation.vue?vue&type=script&lang=ts&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../node_modules/@vue/vue-loader-v15/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","var render = function render(){var _vm=this,_c=_vm._self._c,_setup=_vm._self._setupProxy;return _c('div',{staticClass:\"mb-3\"},[_c('h4',[_vm._v(_vm._s(_vm.$t(\"message.matchingLocations\")))]),(_vm.matchingLocations != null && _vm.matchingLocations.length > 1)?_c('div',_vm._l((_vm.filteredMatchingLocations),function(item){return _c('div',{key:item.id,staticClass:\"tbdc-grid\"},[_c('div',{staticClass:\"tbdc-row tbdc-hover\"},[_c('div',{staticClass:\"tbdc-overflow\",staticStyle:{\"cursor\":\"pointer\"},on:{\"click\":function($event){item['zoomTo'] = true; _vm.setLocation(item)}}},[_c('v-icon',{staticClass:\"mr-3\"},[_vm._v(\"mdi-map-marker-outline\")]),_vm._v(\" \"+_vm._s(item.name))],1),_c('div',{staticStyle:{\"cursor\":\"pointer\",\"text-align\":\"right\"},on:{\"click\":function($event){item['zoomTo'] = true; _vm.setLocation(item)}}},[_vm._v(_vm._s(_vm._f(\"percentage\")(item.score,_vm.$i18n.locale, 1)))]),_c('div')])])}),0):_vm._e(),(_vm.matchingLocations != null && _vm.matchingLocations.length <= 1)?_c('div',[_vm._v(_vm._s(_vm.$t(\"message.noMatchingLocations\")))]):_vm._e(),(_vm.matchingLocations == null)?_c('div',[_c('Loading')],1):_vm._e()])\n}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","\r\n import { Component, Vue, Prop } from 'vue-property-decorator';\r\n import Loading from '@/components/main/Loading.vue';\r\n \r\n @Component({\r\n components: {\r\n Loading\r\n },\r\n })\r\n export default class MatchingLocations extends Vue {\r\n\r\n @Prop({ default: null }) public matchingLocations: any;\r\n @Prop({ default: null }) public show: any;\r\n @Prop({ default: null }) public location: any;\r\n\r\n \r\n\r\n private setLocation(location: any) {\r\n this.$emit('locationIdChanged', location.id);\r\n }\r\n \r\n \r\n get filteredMatchingLocations() {\r\n return this.matchingLocations?.slice(1);\r\n }\r\n\r\n\r\n private showDialog = false;\r\n\r\n private get localShow() {\r\n return this.show;\r\n }\r\n\r\n private set localShow(value: any) {\r\n this.$emit(\"showChanged\", value);\r\n }\r\n }\r\n","import mod from \"-!../../../node_modules/thread-loader/dist/cjs.js!../../../node_modules/babel-loader/lib/index.js!../../../node_modules/ts-loader/index.js??clonedRuleSet-41.use[2]!../../../node_modules/@vue/vue-loader-v15/lib/index.js??vue-loader-options!./MatchingLocations.vue?vue&type=script&lang=ts&\"; export default mod; export * from \"-!../../../node_modules/thread-loader/dist/cjs.js!../../../node_modules/babel-loader/lib/index.js!../../../node_modules/ts-loader/index.js??clonedRuleSet-41.use[2]!../../../node_modules/@vue/vue-loader-v15/lib/index.js??vue-loader-options!./MatchingLocations.vue?vue&type=script&lang=ts&\"","import { render, staticRenderFns } from \"./MatchingLocations.vue?vue&type=template&id=617d8a48&\"\nimport script from \"./MatchingLocations.vue?vue&type=script&lang=ts&\"\nexport * from \"./MatchingLocations.vue?vue&type=script&lang=ts&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../node_modules/@vue/vue-loader-v15/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","var render = function render(){var _vm=this,_c=_vm._self._c,_setup=_vm._self._setupProxy;return (_vm.modalShow)?_c('v-dialog',{attrs:{\"width\":\"800\",\"persistent\":\"\"},model:{value:(_vm.modalShow),callback:function ($$v) {_vm.modalShow=$$v},expression:\"modalShow\"}},[(_vm.location)?_c('v-form',{ref:\"form\",on:{\"submit\":function($event){$event.preventDefault();}},model:{value:(_vm.valid),callback:function ($$v) {_vm.valid=$$v},expression:\"valid\"}},[_c('v-card',[_c('v-card-title',{attrs:{\"primary-title\":\"\"}},[_c('div',{staticStyle:{\"width\":\"100%\",\"display\":\"block\"}},[(!_vm.location.id)?_c('span',[_vm._v(_vm._s(_vm.$t(\"message.new\") + ' ' + _vm.$tc(\"message.locationsType\" + _vm.model.locationsType + \"Name\",1).toLowerCase()))]):_vm._e(),(_vm.location.id)?_c('span',[_vm._v(_vm._s(_vm.$t(\"message.edit\") + ' ' + _vm.$tc(\"message.locationsType\" + _vm.model.locationsType + \"Name\",1).toLowerCase()))]):_vm._e()])]),_c('v-card-text',[_c('v-spacer'),(_vm.location.changeType == 1 || !_vm.location.id)?_c('div',[_c('v-text-field',{ref:\"locationname\",attrs:{\"dense\":\"\",\"outlined\":\"\",\"label\":_vm.$t('message.name'),\"rules\":_vm.nameRules,\"required\":\"\"},on:{\"change\":_vm.changed},model:{value:(_vm.location.name),callback:function ($$v) {_vm.$set(_vm.location, \"name\", $$v)},expression:\"location.name\"}}),(_vm.location != null && _vm.model.locationGroups != null && _vm.model.locationGroups.length > 1)?_c('v-select',{attrs:{\"dense\":\"\",\"clearable\":_vm.model.locationGroupMandatory == false,\"label\":_vm.$tc('message.locationGroupsType' + _vm.model.locationGroupsType + 'Name'),\"outlined\":\"\",\"items\":_vm.selectableLocationGroups,\"item-value\":\"id\",\"item-text\":\"name\"},on:{\"change\":_vm.changed},model:{value:(_vm.location.locationGroup),callback:function ($$v) {_vm.$set(_vm.location, \"locationGroup\", $$v)},expression:\"location.locationGroup\"}}):_vm._e(),(_vm.location != null && _vm.location.locationClusters != null && _vm.location.locationClusters.length > 0)?_c('v-select',{attrs:{\"dense\":\"\",\"clearable\":\"\",\"label\":_vm.$tc('message.locationClustersType' + _vm.model.locationClustersType + 'Name'),\"outlined\":\"\",\"items\":_vm.location.locationClusters,\"item-value\":\"id\",\"item-text\":\"name\"},on:{\"change\":_vm.changed},model:{value:(_vm.location.locationCluster),callback:function ($$v) {_vm.$set(_vm.location, \"locationCluster\", $$v)},expression:\"location.locationCluster\"}}):_vm._e()],1):_vm._e(),(_vm.location.changeType != 1 && _vm.location.id)?_c('div',[_c('v-text-field',{ref:\"locationname\",attrs:{\"dense\":\"\",\"readonly\":\"\",\"disabled\":\"\",\"outlined\":\"\",\"label\":_vm.$t('message.name'),\"rules\":_vm.nameRules,\"required\":\"\"},on:{\"change\":_vm.changed},model:{value:(_vm.location.name),callback:function ($$v) {_vm.$set(_vm.location, \"name\", $$v)},expression:\"location.name\"}}),(_vm.location != null && _vm.model.locationGroups != null && _vm.model.locationGroups.length > 1)?_c('v-select',{attrs:{\"dense\":\"\",\"readonly\":\"\",\"disabled\":\"\",\"label\":_vm.$tc('message.locationGroupsType' + _vm.model.locationGroupsType + 'Name'),\"outlined\":\"\",\"items\":_vm.model.locationGroups,\"item-value\":\"id\",\"item-text\":\"name\"},on:{\"change\":_vm.changed},model:{value:(_vm.location.locationGroup),callback:function ($$v) {_vm.$set(_vm.location, \"locationGroup\", $$v)},expression:\"location.locationGroup\"}}):_vm._e(),(_vm.location != null && _vm.location.locationClusters != null && _vm.location.locationClusters.length > 0)?_c('v-select',{attrs:{\"dense\":\"\",\"readonly\":\"\",\"disabled\":\"\",\"label\":_vm.$tc('message.locationClustersType' + _vm.model.locationClustersType + 'Name'),\"outlined\":\"\",\"items\":_vm.location.locationClusters,\"item-value\":\"id\",\"item-text\":\"name\"},on:{\"change\":_vm.changed},model:{value:(_vm.location.locationCluster),callback:function ($$v) {_vm.$set(_vm.location, \"locationCluster\", $$v)},expression:\"location.locationCluster\"}}):_vm._e()],1):_vm._e(),_vm._l((_vm.locationPropertiesBySection),function(section,index){return [(section[1][0].sectionViewSize > 0)?_c('div',{key:'section' + index},[_c('v-row',[_c('v-col',{staticClass:\"text-h6\",staticStyle:{\"cursor\":\"pointer\",\"color\":\"#009cbb\"},on:{\"click\":function($event){section[1][0].sectionSecondary = !section[1][0].sectionSecondary}}},[_vm._v(\" \"+_vm._s(section[1][0].sectionTitle)+\" \")]),_c('v-spacer'),_c('v-col',{staticClass:\"text-right\"},[_c('v-btn',{attrs:{\"icon\":\"\"},on:{\"click\":function($event){section[1][0].sectionSecondary = !section[1][0].sectionSecondary}}},[_c('v-icon',[_vm._v(_vm._s(section[1][0].sectionSecondary ? 'mdi-chevron-down' : 'mdi-chevron-up'))])],1)],1)],1),(section[1][0].sectionLabel)?_c('div',{staticClass:\"text-body-1 mb-6\"},[_vm._v(_vm._s(section[1][0].sectionLabel))]):_c('div',{staticClass:\"mb-2\"})],1):_vm._e(),_vm._l((section[1]),function(locationProperty,indexProperty){return _c('div',{key:'section' + index + 'property' + indexProperty},[(locationProperty.title != null)?_c('v-expand-transition',[_c('div',{directives:[{name:\"show\",rawName:\"v-show\",value:(!section[1][0].sectionSecondary),expression:\"!section[1][0].sectionSecondary\"}],key:'section' + index + 'property' + indexProperty},[(locationProperty.label)?_c('div',{staticClass:\"text-body-1 mb-6\"},[_vm._v(_vm._s(locationProperty.label))]):_vm._e(),(locationProperty.dataType == 0 && locationProperty.choices == null)?_c('v-text-field',{attrs:{\"dense\":\"\",\"disabled\":!locationProperty.visible,\"hint\":locationProperty.description,\"outlined\":\"\",\"label\":_vm.removeMdiBracketToIcon(locationProperty.title)},on:{\"change\":_vm.changed},model:{value:(locationProperty.stringValue),callback:function ($$v) {_vm.$set(locationProperty, \"stringValue\", $$v)},expression:\"locationProperty.stringValue\"}}):_vm._e(),(locationProperty.minimumValue != null && locationProperty.maximumValue != null && locationProperty.dataType != 0 && locationProperty.choices ==null)?[_c('v-slider',{attrs:{\"dense\":\"\",\"disabled\":!locationProperty.visible,\"hint\":locationProperty.description,\"label\":_vm.removeMdiBracketToIcon(locationProperty.title),\"min\":locationProperty.minimumValue,\"max\":locationProperty.maximumValue},on:{\"change\":_vm.changed},scopedSlots:_vm._u([{key:\"append\",fn:function(){return [_vm._v(\" \"+_vm._s(locationProperty.numberValue)+\" \")]},proxy:true}],null,true),model:{value:(locationProperty.numberValue),callback:function ($$v) {_vm.$set(locationProperty, \"numberValue\", $$v)},expression:\"locationProperty.numberValue\"}})]:_vm._e(),((locationProperty.minimumValue == null || locationProperty.maximumValue == null) && locationProperty.dataType != 0 && locationProperty.choices ==null)?[((locationProperty.dataType == 1 || locationProperty.dataType == 3 || locationProperty.dataType == 4) && locationProperty.choices == null)?_c('v-text-field',{attrs:{\"dense\":\"\",\"disabled\":!locationProperty.visible,\"hint\":locationProperty.description,\"value\":locationProperty.numberValue,\"outlined\":\"\",\"label\":_vm.removeMdiBracketToIcon(locationProperty.title),\"type\":\"number\"},on:{\"change\":_vm.changed,\"input\":($value) => (locationProperty.numberValue = parseFloat($value) || null)}}):_vm._e(),((locationProperty.dataType == 2) && locationProperty.choices == null)?_c('v-text-field',{attrs:{\"dense\":\"\",\"disabled\":!locationProperty.visible,\"hint\":locationProperty.description,\"value\":locationProperty.percentageValue,\"outlined\":\"\",\"label\":_vm.removeMdiBracketToIcon(locationProperty.title),\"type\":\"number\"},on:{\"change\":_vm.changed,\"input\":($value) => (locationProperty.percentageValue = parseFloat($value) || null)}}):_vm._e(),(locationProperty.dataType == 5)?_c('v-checkbox',{attrs:{\"dense\":\"\",\"disabled\":!locationProperty.visible,\"hint\":locationProperty.description,\"label\":_vm.removeMdiBracketToIcon(locationProperty.title),\"true-value\":1,\"false-value\":0},on:{\"change\":_vm.changed},model:{value:(locationProperty.numberValue),callback:function ($$v) {_vm.$set(locationProperty, \"numberValue\", $$v)},expression:\"locationProperty.numberValue\"}}):_vm._e()]:_vm._e(),(locationProperty.dataType == 0 && locationProperty.choices !=null)?_c('v-select',{attrs:{\"dense\":\"\",\"disabled\":!locationProperty.visible,\"hint\":locationProperty.description,\"outlined\":\"\",\"items\":locationProperty.choices,\"label\":_vm.removeMdiBracketToIcon(locationProperty.title),\"item-text\":\"value\",\"item-value\":\"key\"},on:{\"change\":_vm.changed},model:{value:(locationProperty.stringValue),callback:function ($$v) {_vm.$set(locationProperty, \"stringValue\", $$v)},expression:\"locationProperty.stringValue\"}}):_vm._e(),(locationProperty.dataType != 0 && locationProperty.choices !=null)?_c('v-select',{attrs:{\"dense\":\"\",\"disabled\":!locationProperty.visible,\"hint\":locationProperty.description,\"outlined\":\"\",\"items\":locationProperty.choices,\"label\":_vm.removeMdiBracketToIcon(locationProperty.title),\"item-text\":\"value\",\"item-value\":\"key\"},on:{\"change\":_vm.changed},model:{value:(locationProperty.numberValue),callback:function ($$v) {_vm.$set(locationProperty, \"numberValue\", $$v)},expression:\"locationProperty.numberValue\"}}):_vm._e()],2)]):_vm._e()],1)})]})],2),_c('v-divider'),_c('v-card-actions',[_c('div',{staticClass:\"flex-grow-1\"}),_c('v-menu',{attrs:{\"color\":\"primary\",\"offset-y\":\"\",\"bottom\":\"\",\"close-on-content-click\":false},scopedSlots:_vm._u([{key:\"activator\",fn:function({ attrs }){return [_c('v-btn',_vm._b({attrs:{\"text\":\"\",\"color\":\"primary\"},on:{\"click\":function($event){$event.stopPropagation();return _vm.toggleMenu.apply(null, arguments)}}},'v-btn',attrs,false),[_vm._v(\" \"+_vm._s(_vm.$t(\"message.save\"))+\" \"),_c('v-icon',{attrs:{\"right\":\"\"}},[_vm._v(\"mdi-chevron-down\")])],1)]}}],null,false,2019000164),model:{value:(_vm.menu),callback:function ($$v) {_vm.menu=$$v},expression:\"menu\"}},[_c('v-list',[_c('v-list-item',[_c('v-btn',{attrs:{\"text\":\"\",\"color\":\"primary\",\"disabled\":_vm.location.changeType == 3 || _vm.location.changeType == 1},on:{\"click\":function($event){return _vm.save(_vm.scenario.parentScenarioId == null? _vm.scenario.id : _vm.scenario.parentScenarioId)}}},[_vm._v(\" \"+_vm._s(!_vm.location.id ? _vm.$t(\"message.saveAddToNewScenario\") : _vm.$t(\"message.saveEditInNewScenario\"))+\" \")])],1),_c('v-list-item',[_c('v-btn',{attrs:{\"text\":\"\",\"color\":\"primary\",\"disabled\":_vm.scenario.parentScenarioId == null},on:{\"click\":function($event){return _vm.save(null)}}},[_vm._v(\" \"+_vm._s(!_vm.location.id ? _vm.$t(\"message.saveAddToThisScenario\") : _vm.$t(\"message.saveEditInThisScenario\"))+\" \")])],1),(_vm.model.scenarioHierarchy)?_c('v-list-item',[_c('v-btn',{attrs:{\"text\":\"\",\"color\":\"primary\",\"disabled\":_vm.scenario.parentScenarioId == null || _vm.location.changeType == 3 || _vm.location.changeType == 1},on:{\"click\":function($event){return _vm.save(_vm.scenario.id)}}},[_vm._v(\" \"+_vm._s(!_vm.location.id ? _vm.$t(\"message.saveAddToNewNestedScenario\") : _vm.$t(\"message.saveEditInNewNestedScenario\"))+\" \")])],1):_vm._e()],1)],1),_c('v-btn',{attrs:{\"color\":\"primary\",\"text\":\"\"},on:{\"click\":_vm.close}},[_vm._v(\" \"+_vm._s(_vm.$t(\"message.cancel\"))+\" \")])],1)],1)],1):_vm._e()],1):_vm._e()\n}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","\r\n import { Component, Vue, Prop, Watch } from 'vue-property-decorator';\r\n import { removeMdiBracketToIcon } from '@/mdi';\r\n\r\n @Component\r\n export default class EditLocation extends Vue {\r\n @Prop({ default: null }) public location: any;\r\n @Prop({ default: null }) public model: any;\r\n @Prop({ default: null }) public scenario: any;\r\n\r\n private removeMdiBracketToIcon = removeMdiBracketToIcon;\r\n private modalShow = false;\r\n private valid = false;\r\n private menu = false;\r\n private nameRules: (any)[] = [(v: string) => !!v || this.$t('message.nameRequired')];\r\n \r\n private mounted() {\r\n this.$on('escKey' + this.$options.name, () => {\r\n if (this.modalShow) this.close();\r\n });\r\n document.addEventListener(\"keydown\", (e) => {\r\n if (e.key === \"Escape\") {\r\n this.$emit('escKey' + this.$options.name);\r\n }\r\n });\r\n }\r\n\r\n private changed() {\r\n this.$emit('changed', this.location?.locationProperties);\r\n }\r\n \r\n @Watch('location')\r\n private onLocationChanged(value: any) {\r\n if (value) this.modalShow = true; else this.modalShow = false;\r\n if (this.location != null) {\r\n\r\n this.location.locationProperties.forEach(function (locationProperty: any) {\r\n if (locationProperty.dataType == 2) {\r\n locationProperty[\"percentageValue\"] = locationProperty.numberValue * 100;\r\n }\r\n });\r\n }\r\n this.changed();\r\n }\r\n\r\n private save(scenarioCreation: any) {\r\n const fieldsToValidate = ['locationname']; // List of your ref names\r\n (this.$refs.form as any).validate()\r\n fieldsToValidate.forEach((fieldRef) => {\r\n const field = this.$refs[fieldRef] as any;\r\n if (field && field.validate) {\r\n const isValid = field.validate();\r\n if (!isValid) field.$el.scrollIntoView({ behavior: 'smooth' });\r\n }\r\n });\r\n if (this.valid) {\r\n this.location['scenarioCreation'] = scenarioCreation;\r\n this.location.locationProperties.forEach(function (locationProperty: any) {\r\n if (locationProperty.dataType == 2) {\r\n locationProperty.numberValue = locationProperty.percentageValue / 100;\r\n }\r\n });\r\n this.$emit('save', this.location );\r\n }\r\n }\r\n\r\n private async close() {\r\n const res = await this.$confirm(String(this.$t('message.confirmClose')), { buttonTrueText: String(this.$t('message.yes')), buttonFalseText: String(this.$t('message.no')) });\r\n if (res) { this.modalShow = false }\r\n }\r\n\r\n private toggleMenu() {\r\n this.menu = !this.menu;\r\n }\r\n\r\n private groupBy(list :any, keyGetter:any) {\r\n const map = new Map();\r\n list.forEach((item: any) => {\r\n const key = keyGetter(item);\r\n const collection = map.get(key);\r\n if (!collection) {\r\n map.set(key, [item]);\r\n } else {\r\n collection.push(item);\r\n }\r\n });\r\n return map;\r\n }\r\n \r\n private get locationPropertiesBySection() {\r\n return this.groupBy(this.location.locationProperties, function (locationProperty: any) { return locationProperty.sectionTitle } );\r\n }\r\n\r\n private get selectableLocationGroups() {\r\n const _self = this;\r\n return this.model.locationGroups.filter(function (locationGroup: any) {\r\n return locationGroup.selectable || _self.location.locationGroup == locationGroup;\r\n });\r\n }\r\n }\r\n","import mod from \"-!../../../node_modules/thread-loader/dist/cjs.js!../../../node_modules/babel-loader/lib/index.js!../../../node_modules/ts-loader/index.js??clonedRuleSet-41.use[2]!../../../node_modules/@vue/vue-loader-v15/lib/index.js??vue-loader-options!./EditLocation.vue?vue&type=script&lang=ts&\"; export default mod; export * from \"-!../../../node_modules/thread-loader/dist/cjs.js!../../../node_modules/babel-loader/lib/index.js!../../../node_modules/ts-loader/index.js??clonedRuleSet-41.use[2]!../../../node_modules/@vue/vue-loader-v15/lib/index.js??vue-loader-options!./EditLocation.vue?vue&type=script&lang=ts&\"","import { render, staticRenderFns } from \"./EditLocation.vue?vue&type=template&id=3aae38db&\"\nimport script from \"./EditLocation.vue?vue&type=script&lang=ts&\"\nexport * from \"./EditLocation.vue?vue&type=script&lang=ts&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../node_modules/@vue/vue-loader-v15/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","var render = function render(){var _vm=this,_c=_vm._self._c,_setup=_vm._self._setupProxy;return (_vm.area != null)?_c('div',{attrs:{\"id\":\"areaInformation\"}},[_c('h2',[_vm._v(_vm._s(_vm.$t(\"message.areaInformation\"))),_vm._t(\"actions\")],2),_c('h3',[_vm._v(_vm._s(_vm.area.areaCode)),_c('v-btn',{attrs:{\"icon\":\"\",\"disabled\":\"\"}},[_c('v-icon')],1)],1),_c('div',{staticClass:\"tbdc-grid\"},[(_vm.area.personType)?_c('div',{staticClass:\"tbdc-row\"},[_c('div',[_vm._v(_vm._s(_vm.$t(\"message.personType\")))]),_c('div',{staticClass:\"text-right\"},[_vm._v(_vm._s(_vm.area.personType))]),_c('div')]):_vm._e(),_vm._l((_vm.area.properties),function(areaProperty){return _c('div',{key:areaProperty.name,staticClass:\"tbdc-row\"},[_c('div',[_vm._v(_vm._s(areaProperty.title))]),_c('div',{staticClass:\"text-right\"},[_c('PropertyValue',{attrs:{\"property\":{ roundingDigits: areaProperty.roundingDigits, stringValue: areaProperty.stringValue, numberValue: areaProperty.numberValue, dataType: areaProperty.dataType},\"onlyCurrentValue\":true}})],1),_c('div')])})],2),(_vm.area.locations != null && _vm.area.locations.length > 0 && _vm.scenario.status == 9)?_c('div',{staticClass:\"mt-2\"},[_c('h4',[_vm._v(_vm._s(_vm.$t(\"message.outputType\" + _vm.model.outputType + \"Name\"))+\" / \"+_vm._s(_vm.$tc(\"message.locationsType\" + _vm.model.locationsType + \"Name\",1))+\" \")]),_c('div',{staticClass:\"tbdc-grid\"},_vm._l((_vm.area.locations),function(locationForArea){return _c('div',{key:locationForArea.location.ID,staticClass:\"tbdc-row tbdc-hover\",on:{\"click\":function($event){return _vm.setLocation(locationForArea.location)}}},[_c('div',[_c('v-icon',[_vm._v(\"mdi-image-filter-center-focus\")]),_vm._v(\" \"+_vm._s(locationForArea.location.name))],1),_c('div',{staticClass:\"text-right\"},[(_vm.model.outputType == 1)?_c('span',[_c('PropertyValue',{attrs:{\"property\":{numberValue: locationForArea.value, dataType: 3},\"onlyCurrentValue\":true,\"currency\":_vm.model.currency}})],1):_vm._e(),(_vm.model.outputType == 2)?_c('span',[_c('PropertyValue',{attrs:{\"property\":{numberValue: locationForArea.value, dataType: 1, roundingDigits: 0 },\"onlyCurrentValue\":true}})],1):_vm._e(),(_vm.model.outputType == 4)?_c('span',[_c('PropertyValue',{attrs:{\"property\":{numberValue: locationForArea.value, dataType: 1, roundingDigits: 0 },\"onlyCurrentValue\":true}})],1):_vm._e()]),_c('div',{staticClass:\"text-right\"},[_vm._v(\" \"+_vm._s(_vm._f(\"percentage\")((locationForArea.value == 0 ? 0 : (1 / (_vm.area.totalValue / locationForArea.value))),_vm.$i18n.locale))+\" \")])])}),0)]):_vm._e()]):_vm._e()\n}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","\r\n import { Component, Vue, Prop } from 'vue-property-decorator';\r\n import PropertyValue from '@/components/main/PropertyValue.vue'\r\n\r\n @Component({\r\n components: {\r\n PropertyValue,\r\n },\r\n })\r\n export default class AreaInforamtion extends Vue {\r\n\r\n @Prop({ default: null }) public model: any;\r\n @Prop({ default: null }) public area: any;\r\n @Prop({ default: null }) public scenario: any;\r\n \r\n private setLocation(location: any) {\r\n this.$emit('locationChanged', location);\r\n }\r\n }\r\n","import mod from \"-!../../../node_modules/thread-loader/dist/cjs.js!../../../node_modules/babel-loader/lib/index.js!../../../node_modules/ts-loader/index.js??clonedRuleSet-41.use[2]!../../../node_modules/@vue/vue-loader-v15/lib/index.js??vue-loader-options!./AreaInformation.vue?vue&type=script&lang=ts&\"; export default mod; export * from \"-!../../../node_modules/thread-loader/dist/cjs.js!../../../node_modules/babel-loader/lib/index.js!../../../node_modules/ts-loader/index.js??clonedRuleSet-41.use[2]!../../../node_modules/@vue/vue-loader-v15/lib/index.js??vue-loader-options!./AreaInformation.vue?vue&type=script&lang=ts&\"","import { render, staticRenderFns } from \"./AreaInformation.vue?vue&type=template&id=0ee87b9a&\"\nimport script from \"./AreaInformation.vue?vue&type=script&lang=ts&\"\nexport * from \"./AreaInformation.vue?vue&type=script&lang=ts&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../node_modules/@vue/vue-loader-v15/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","var render = function render(){var _vm=this,_c=_vm._self._c,_setup=_vm._self._setupProxy;return (_vm.modalShow)?_c('v-dialog',{attrs:{\"width\":\"800\",\"persistent\":\"\"},model:{value:(_vm.modalShow),callback:function ($$v) {_vm.modalShow=$$v},expression:\"modalShow\"}},[_c('v-form',{ref:\"form\",on:{\"submit\":function($event){$event.preventDefault();}}},[(_vm.scenario && _vm.model)?_c('v-card',[_c('v-card-title',{attrs:{\"primary-title\":\"\"}},[(_vm.originalScenario.id == _vm.scenario.id)?_c('span',[_vm._v(_vm._s(_vm.$t(\"message.editScenario\")))]):_vm._e()]),_c('v-card-text',[_c('v-text-field',{attrs:{\"dense\":\"\",\"outlined\":\"\",\"label\":_vm.$t('message.scenarioName'),\"rules\":_vm.nameRules,\"disabled\":_vm.scenario.changeCount == 1},model:{value:(_vm.scenario.name),callback:function ($$v) {_vm.$set(_vm.scenario, \"name\", $$v)},expression:\"scenario.name\"}}),(_vm.model.userIsAdmin && 1==2)?_c('v-card',[_c('v-card-text',[_vm._v(\" \"+_vm._s(_vm.$t(\"message.adminOnly\"))+\" \"),_c('v-checkbox',{attrs:{\"dense\":\"\",\"label\":_vm.$t('message.scenarioCompetition')},model:{value:(_vm.scenario.competition),callback:function ($$v) {_vm.$set(_vm.scenario, \"competition\", $$v)},expression:\"scenario.competition\"}})],1)],1):_vm._e(),_vm._v(\" \"+_vm._s(_vm.$t(\"message.isTopScenarioDescription\"))+\" \"),_c('v-checkbox',{attrs:{\"dense\":\"\",\"label\":_vm.$t('message.isTopScenario')},model:{value:(_vm.scenario.isTop),callback:function ($$v) {_vm.$set(_vm.scenario, \"isTop\", $$v)},expression:\"scenario.isTop\"}})],1),_c('v-divider'),_c('v-card-actions',[_c('div',{staticClass:\"flex-grow-1\"}),_c('v-btn',{attrs:{\"color\":\"primary\",\"text\":\"\",\"type\":\"submit\"},on:{\"click\":_vm.save}},[_vm._v(\" \"+_vm._s(_vm.$t(\"message.save\"))+\" \")]),_c('v-btn',{attrs:{\"color\":\"primary\",\"text\":\"\"},on:{\"click\":_vm.close}},[_vm._v(\" \"+_vm._s(_vm.$t(\"message.cancel\"))+\" \")])],1)],1):_vm._e()],1)],1):_vm._e()\n}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","\r\n import { Component, Vue, Prop, Watch } from 'vue-property-decorator';\r\n \r\n @Component\r\n export default class EditScenario extends Vue {\r\n @Prop({ default: null }) public scenario: any;\r\n @Prop({ default: null }) public originalScenario: any;\r\n @Prop({ default: null }) public model: any;\r\n @Prop({ default: null }) public scenarios: any;\r\n\r\n private modalShow = false;\r\n\r\n @Watch('scenario')\r\n private onScenarioChanged(value: any) {\r\n if (value) {\r\n this.modalShow = true;\r\n }\r\n else this.modalShow = false;\r\n }\r\n\r\n private mounted() {\r\n this.$on('escKey' + this.$options.name, () => {\r\n if (this.modalShow) this.close();\r\n });\r\n document.addEventListener(\"keydown\", (e) => {\r\n if (e.key === \"Escape\") {\r\n this.$emit('escKey' + this.$options.name);\r\n }\r\n });\r\n }\r\n\r\n private async close() \r\n {\r\n const res = await this.$confirm(String(this.$t('message.confirmClose')), { buttonTrueText: String(this.$t('message.yes')), buttonFalseText: String(this.$t('message.no')) });\r\n if (res) { this.modalShow = false }\r\n }\r\n\r\n private save() {\r\n const valid = (this.$refs.form as any).validate();\r\n if (valid) this.$emit('save', this.scenario);\r\n }\r\n\r\n private nameRules = [(value: any) => !!value || this.$t(\"message.scenarioNameIsRequired\")]\r\n\r\n \r\n }\r\n","import mod from \"-!../../../node_modules/thread-loader/dist/cjs.js!../../../node_modules/babel-loader/lib/index.js!../../../node_modules/ts-loader/index.js??clonedRuleSet-41.use[2]!../../../node_modules/@vue/vue-loader-v15/lib/index.js??vue-loader-options!./EditScenario.vue?vue&type=script&lang=ts&\"; export default mod; export * from \"-!../../../node_modules/thread-loader/dist/cjs.js!../../../node_modules/babel-loader/lib/index.js!../../../node_modules/ts-loader/index.js??clonedRuleSet-41.use[2]!../../../node_modules/@vue/vue-loader-v15/lib/index.js??vue-loader-options!./EditScenario.vue?vue&type=script&lang=ts&\"","import { render, staticRenderFns } from \"./EditScenario.vue?vue&type=template&id=045fde9c&\"\nimport script from \"./EditScenario.vue?vue&type=script&lang=ts&\"\nexport * from \"./EditScenario.vue?vue&type=script&lang=ts&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../node_modules/@vue/vue-loader-v15/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","var render = function render(){var _vm=this,_c=_vm._self._c,_setup=_vm._self._setupProxy;return (_vm.modalShow)?_c('v-dialog',{attrs:{\"width\":\"800\",\"persistent\":\"\"},model:{value:(_vm.modalShow),callback:function ($$v) {_vm.modalShow=$$v},expression:\"modalShow\"}},[(_vm.location)?_c('v-form',{ref:\"form\",on:{\"submit\":function($event){$event.preventDefault();}},model:{value:(_vm.valid),callback:function ($$v) {_vm.valid=$$v},expression:\"valid\"}},[_c('v-card',[_c('v-card-title',{attrs:{\"primary-title\":\"\"}},[_c('div',{staticStyle:{\"width\":\"100%\",\"display\":\"block\"}},[(_vm.location.id)?_c('span',[_vm._v(_vm._s(_vm.$t(\"message.close\") + ' ' + _vm.$tc(\"message.locationsType\" + _vm.model.locationsType + \"Name\",1).toLowerCase()))]):_vm._e()])]),_c('v-card-text',[_c('v-spacer'),_vm._v(\" \"+_vm._s(_vm.$t(\"message.closeMessage\"))+\" \")],1),_c('v-divider'),_c('v-card-actions',[_c('div',{staticClass:\"flex-grow-1\"}),_c('v-menu',{attrs:{\"color\":\"primary\",\"offset-y\":\"\",\"bottom\":\"\",\"close-on-content-click\":false},scopedSlots:_vm._u([{key:\"activator\",fn:function({ attrs }){return [_c('v-btn',_vm._b({attrs:{\"text\":\"\",\"color\":\"primary\"},on:{\"click\":function($event){$event.stopPropagation();return _vm.toggleMenu.apply(null, arguments)}}},'v-btn',attrs,false),[_vm._v(\" \"+_vm._s(_vm.$t(\"message.closeLocation\"))+\" \"),_c('v-icon',{attrs:{\"right\":\"\"}},[_vm._v(\"mdi-chevron-down\")])],1)]}}],null,false,4108774958),model:{value:(_vm.menu),callback:function ($$v) {_vm.menu=$$v},expression:\"menu\"}},[_c('v-list',[_c('v-list-item',[_c('v-btn',{attrs:{\"text\":\"\",\"color\":\"primary\",\"disabled\":_vm.location.changeType == 3},on:{\"click\":function($event){return _vm.save(_vm.scenario.parentScenarioId == null? _vm.scenario.id : _vm.scenario.parentScenarioId)}}},[_vm._v(\" \"+_vm._s(_vm.$t(\"message.closeLocationInNewScenario\"))+\" \")])],1),_c('v-list-item',[_c('v-btn',{attrs:{\"text\":\"\",\"color\":\"primary\",\"disabled\":_vm.scenario.parentScenarioId == null},on:{\"click\":function($event){return _vm.save(null)}}},[_vm._v(\" \"+_vm._s(_vm.$t(\"message.closeLocationInThisScenario\"))+\" \")])],1),(_vm.model.scenarioHierarchy)?_c('v-list-item',[_c('v-btn',{attrs:{\"text\":\"\",\"color\":\"primary\",\"disabled\":_vm.scenario.parentScenarioId == null},on:{\"click\":function($event){return _vm.save(_vm.scenario.id)}}},[_vm._v(\" \"+_vm._s(_vm.$t(\"message.closeLocationInNewNestedScenario\"))+\" \")])],1):_vm._e()],1)],1),_c('v-btn',{attrs:{\"color\":\"primary\",\"text\":\"\"},on:{\"click\":_vm.cancel}},[_vm._v(\" \"+_vm._s(_vm.$t(\"message.cancel\"))+\" \")])],1)],1)],1):_vm._e()],1):_vm._e()\n}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","\r\n import { Component, Vue, Prop, Watch } from 'vue-property-decorator';\r\n \r\n @Component\r\n export default class CloseLocation extends Vue {\r\n @Prop({ default: null }) public location: any;\r\n @Prop({ default: null }) public model: any;\r\n @Prop({ default: null }) public scenario: any;\r\n\r\n private modalShow = false;\r\n private menu = false;\r\n private valid = false;\r\n \r\n private mounted() {\r\n this.$on('escKey' + this.$options.name, () => {\r\n if (this.modalShow) this.cancel();\r\n });\r\n document.addEventListener(\"keydown\", (e) => {\r\n if (e.key === \"Escape\") {\r\n this.$emit('escKey' + this.$options.name);\r\n }\r\n });\r\n }\r\n\r\n @Watch('location')\r\n private onLocationChanged(value: any) {\r\n if (value) this.modalShow = true; else this.modalShow = false;\r\n }\r\n\r\n private save(scenarioCreation: any) {\r\n const fieldsToValidate: Array = [];\r\n (this.$refs.form as any).validate();\r\n fieldsToValidate.forEach((fieldRef) => {\r\n const field = this.$refs[fieldRef] as any;\r\n if (field && field.validate) {\r\n const isValid = field.validate();\r\n if (!isValid) field.$el.scrollIntoView({ behavior: 'smooth' });\r\n }\r\n });\r\n if (this.valid) {\r\n this.location['scenarioCreation'] = scenarioCreation;\r\n this.$emit('save', this.location );\r\n }\r\n }\r\n\r\n private async cancel() {\r\n this.modalShow = false;\r\n }\r\n\r\n private toggleMenu() {\r\n this.menu = !this.menu;\r\n }\r\n }\r\n","import mod from \"-!../../../node_modules/thread-loader/dist/cjs.js!../../../node_modules/babel-loader/lib/index.js!../../../node_modules/ts-loader/index.js??clonedRuleSet-41.use[2]!../../../node_modules/@vue/vue-loader-v15/lib/index.js??vue-loader-options!./CloseLocation.vue?vue&type=script&lang=ts&\"; export default mod; export * from \"-!../../../node_modules/thread-loader/dist/cjs.js!../../../node_modules/babel-loader/lib/index.js!../../../node_modules/ts-loader/index.js??clonedRuleSet-41.use[2]!../../../node_modules/@vue/vue-loader-v15/lib/index.js??vue-loader-options!./CloseLocation.vue?vue&type=script&lang=ts&\"","import { render, staticRenderFns } from \"./CloseLocation.vue?vue&type=template&id=851f7654&\"\nimport script from \"./CloseLocation.vue?vue&type=script&lang=ts&\"\nexport * from \"./CloseLocation.vue?vue&type=script&lang=ts&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../node_modules/@vue/vue-loader-v15/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","var render = function render(){var _vm=this,_c=_vm._self._c,_setup=_vm._self._setupProxy;return (_vm.modalShow)?_c('v-dialog',{attrs:{\"width\":\"800\",\"persistent\":\"\"},model:{value:(_vm.modalShow),callback:function ($$v) {_vm.modalShow=$$v},expression:\"modalShow\"}},[_c('v-form',{ref:\"form\",on:{\"submit\":function($event){$event.preventDefault();}}},[(_vm.scenario)?_c('v-card',[_c('v-card-title',{attrs:{\"primary-title\":\"\"}},[_vm._v(\" \"+_vm._s(_vm.$t(\"message.setScenarioName\"))+\" \")]),_c('v-card-text',[_c('p',[_vm._v(\" \"+_vm._s(_vm.$t(\"message.setScenarioNameMessage\")))]),_c('v-text-field',{attrs:{\"dense\":\"\",\"outlined\":\"\",\"label\":_vm.$t('message.scenarioName'),\"rules\":_vm.nameRules},model:{value:(_vm.scenario.name),callback:function ($$v) {_vm.$set(_vm.scenario, \"name\", $$v)},expression:\"scenario.name\"}})],1),_c('v-divider'),_c('v-card-actions',[_c('div',{staticClass:\"flex-grow-1\"}),_c('v-btn',{attrs:{\"color\":\"primary\",\"text\":\"\",\"type\":\"submit\"},on:{\"click\":_vm.save}},[_vm._v(\" \"+_vm._s(_vm.$t(\"message.save\"))+\" \")])],1)],1):_vm._e()],1)],1):_vm._e()\n}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","\r\n import { Component, Vue, Prop, Watch } from 'vue-property-decorator';\r\n \r\n @Component\r\n export default class EditScenarioName extends Vue {\r\n @Prop({ default: null }) public scenario: any;\r\n\r\n private modalShow = false;\r\n private valid = true;\r\n private nameRules = [(value: any) => !!value || this.$t(\"message.scenarioNameIsRequired\")]\r\n\r\n @Watch('scenario')\r\n private onScenarioChanged(value: any) {\r\n if (value) {\r\n this.modalShow = true;\r\n }\r\n else this.modalShow = false;\r\n }\r\n\r\n private save() {\r\n const valid = (this.$refs.form as any).validate();\r\n if (valid) this.scenario['save'] = true;\r\n }\r\n }\r\n","import mod from \"-!../../../node_modules/thread-loader/dist/cjs.js!../../../node_modules/babel-loader/lib/index.js!../../../node_modules/ts-loader/index.js??clonedRuleSet-41.use[2]!../../../node_modules/@vue/vue-loader-v15/lib/index.js??vue-loader-options!./EditScenarioName.vue?vue&type=script&lang=ts&\"; export default mod; export * from \"-!../../../node_modules/thread-loader/dist/cjs.js!../../../node_modules/babel-loader/lib/index.js!../../../node_modules/ts-loader/index.js??clonedRuleSet-41.use[2]!../../../node_modules/@vue/vue-loader-v15/lib/index.js??vue-loader-options!./EditScenarioName.vue?vue&type=script&lang=ts&\"","import { render, staticRenderFns } from \"./EditScenarioName.vue?vue&type=template&id=2fb0ba09&\"\nimport script from \"./EditScenarioName.vue?vue&type=script&lang=ts&\"\nexport * from \"./EditScenarioName.vue?vue&type=script&lang=ts&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../node_modules/@vue/vue-loader-v15/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","var render = function render(){var _vm=this,_c=_vm._self._c,_setup=_vm._self._setupProxy;return _c('v-dialog',{attrs:{\"width\":\"800\",\"persistent\":\"\"},model:{value:(_vm.modalShow),callback:function ($$v) {_vm.modalShow=$$v},expression:\"modalShow\"}},[_c('form',{ref:\"form\",attrs:{\"lazy-validation\":\"\"}},[(_vm.scenario && _vm.model)?_c('v-card',[_c('v-card-title',{attrs:{\"primary-title\":\"\"}},[_vm._v(\" \"+_vm._s(_vm.$t(\"message.copyChanges\"))+\" \")]),_c('v-card-text',[_c('p',[_vm._v(_vm._s(_vm.$t(\"message.copyChangesInformation\")))]),_c('v-select',{attrs:{\"multiple\":\"\",\"outlined\":\"\",\"items\":_vm.scenario.changedLocations,\"item-value\":\"id\",\"label\":_vm.$t('message.locations')},scopedSlots:_vm._u([{key:\"selection\",fn:function({ item }){return [_c('v-chip',[_vm._v(_vm._s(item.name))])]}},{key:\"item\",fn:function({ item, attrs, on }){return [_c('v-list-item',_vm._g(_vm._b({scopedSlots:_vm._u([{key:\"default\",fn:function({ active }){return [_c('v-list-item-action',[_c('v-checkbox',{attrs:{\"input-value\":active}})],1),_c('v-list-item-content',[_c('v-list-item-title',[_vm._v(\" \"+_vm._s(item.name)+\" \")]),_c('v-list-item-subtitle',[(item.changeType == 1)?_c('span',[_vm._v(\" \"+_vm._s(_vm.$t(\"message.opening\")))]):_vm._e(),(item.changeType == 2)?_c('span',[_vm._v(\" \"+_vm._s(_vm.$t(\"message.closure\")))]):_vm._e(),(item.changeType == 3)?_c('span',[_vm._v(\" \"+_vm._s(_vm.$t(\"message.edited\")))]):_vm._e()])],1)]}}],null,true)},'v-list-item',attrs,false),on))]}}],null,false,3170486934),model:{value:(_vm.scenario.selectedLocations),callback:function ($$v) {_vm.$set(_vm.scenario, \"selectedLocations\", $$v)},expression:\"scenario.selectedLocations\"}}),_c('v-select',{attrs:{\"outlined\":\"\",\"items\":_vm.scenariosSorted,\"item-text\":\"name\",\"label\":_vm.$t('message.targetScenario'),\"item-value\":\"id\"},scopedSlots:_vm._u([{key:\"item\",fn:function({ item }){return [_c('span',{style:({ 'font-weight': item.isTop ? 'bold' : 'normal' })},[_vm._v(_vm._s(item.name))])]}}],null,false,471884672),model:{value:(_vm.scenario.destinationScenarioId),callback:function ($$v) {_vm.$set(_vm.scenario, \"destinationScenarioId\", $$v)},expression:\"scenario.destinationScenarioId\"}}),_c('v-checkbox',{attrs:{\"dense\":\"\",\"disabled\":_vm.scenario.selectedLocations.length != _vm.scenario.changedLocations.length,\"label\":_vm.$t('message.deleteSourceScenario')},model:{value:(_vm.scenario.deleteSourceScenario),callback:function ($$v) {_vm.$set(_vm.scenario, \"deleteSourceScenario\", $$v)},expression:\"scenario.deleteSourceScenario\"}})],1),_c('v-divider'),_c('v-card-actions',[_c('div',{staticClass:\"flex-grow-1\"}),_c('v-btn',{attrs:{\"color\":\"primary\",\"text\":\"\"},on:{\"click\":_vm.submit}},[_vm._v(\" \"+_vm._s(_vm.$t(\"message.copyChanges\"))+\" \")]),_c('v-btn',{attrs:{\"color\":\"primary\",\"text\":\"\"},on:{\"click\":_vm.close}},[_vm._v(\" \"+_vm._s(_vm.$t(\"message.cancel\"))+\" \")])],1)],1):_vm._e()],1)])\n}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","\r\n import { Component, Vue, Prop, Watch } from 'vue-property-decorator';\r\n\r\n @Component\r\n export default class CopyChanges extends Vue {\r\n @Prop({ default: null }) public scenario: any;\r\n @Prop({ default: null }) public model: any;\r\n @Prop({ default: null }) public scenarios: any;\r\n\r\n private modalShow = false;\r\n\r\n private mounted() {\r\n this.$on('escKey' + this.$options.name, () => {\r\n if (this.modalShow) this.close();\r\n });\r\n document.addEventListener(\"keydown\", (e) => {\r\n if (e.key === \"Escape\") {\r\n this.$emit('escKey' + this.$options.name);\r\n }\r\n });\r\n }\r\n\r\n @Watch('scenario')\r\n private onScenarioChanged(value: any) {\r\n var self = this;\r\n if (value) {\r\n self.scenario.selectedLocations = [];\r\n this.scenario.changedLocations.forEach((location : any) => {\r\n self.scenario.selectedLocations.push(location.id);\r\n })\r\n this.modalShow = true;\r\n }\r\n else this.modalShow = false;\r\n }\r\n\r\n private async close() \r\n {\r\n const res = await this.$confirm(String(this.$t('message.confirmClose')), { buttonTrueText: String(this.$t('message.yes')), buttonFalseText: String(this.$t('message.no')) });\r\n if (res) { this.modalShow = false }\r\n }\r\n \r\n private submit() {\r\n this.$emit('save', this.scenario);\r\n }\r\n\r\n private get scenariosSorted() {\r\n const sorted = this.scenarios.sort((a: any, b: any) => {\r\n return b.isTop - a.isTop;\r\n });\r\n var filtered = sorted.filter((a: any) => {\r\n return a.parentScenarioId != null && a.isTop && this.scenario.scenarioId != a.id;\r\n });\r\n return filtered;\r\n }\r\n }\r\n","import mod from \"-!../../../node_modules/thread-loader/dist/cjs.js!../../../node_modules/babel-loader/lib/index.js!../../../node_modules/ts-loader/index.js??clonedRuleSet-41.use[2]!../../../node_modules/@vue/vue-loader-v15/lib/index.js??vue-loader-options!./CopyChanges.vue?vue&type=script&lang=ts&\"; export default mod; export * from \"-!../../../node_modules/thread-loader/dist/cjs.js!../../../node_modules/babel-loader/lib/index.js!../../../node_modules/ts-loader/index.js??clonedRuleSet-41.use[2]!../../../node_modules/@vue/vue-loader-v15/lib/index.js??vue-loader-options!./CopyChanges.vue?vue&type=script&lang=ts&\"","import { render, staticRenderFns } from \"./CopyChanges.vue?vue&type=template&id=0d4e1588&\"\nimport script from \"./CopyChanges.vue?vue&type=script&lang=ts&\"\nexport * from \"./CopyChanges.vue?vue&type=script&lang=ts&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../node_modules/@vue/vue-loader-v15/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","var render = function render(){var _vm=this,_c=_vm._self._c,_setup=_vm._self._setupProxy;return _c('v-simple-table',{attrs:{\"dense\":\"\"},scopedSlots:_vm._u([{key:\"default\",fn:function(){return [_c('thead',[_c('tr',[_c('th',{staticClass:\"text-left text-no-wrap\"},[_vm._v(_vm._s(_vm.$tc(\"message.locationsType\" + _vm.model.locationsType + \"Name\",1)))]),_c('th',{staticClass:\"text-right text-no-wrap\"},[_vm._v(_vm._s(_vm.$t(\"message.car\")))]),_c('th',{staticClass:\"text-right text-no-wrap\"},[_vm._v(_vm._s(_vm.$t(\"message.pedestrian\")))]),_c('th',{staticClass:\"text-right text-no-wrap\"},[_vm._v(_vm._s(_vm.$tc(\"message.score\",1)))])])]),_c('tbody',_vm._l((_vm.area.locations),function(locationForArea){return _c('tr',{key:locationForArea.location.ID},[_c('td',{staticClass:\"text-left\"},[_vm._v(_vm._s(locationForArea.location.name))]),_c('td',{staticClass:\"text-right\"},[_vm._v(_vm._s(locationForArea.minutesCar))]),_c('td',{staticClass:\"text-right\"},[_vm._v(_vm._s(locationForArea.minutesPedestrian))]),_c('td',{staticClass:\"text-right\"},[_vm._v(\" \"+_vm._s(_vm._f(\"fixed\")(locationForArea.score,4,_vm.$i18n.locale))+\" \")])])}),0)]},proxy:true}])})\n}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","\r\n import { Component, Vue, Prop } from 'vue-property-decorator';\r\n \r\n @Component({\r\n components: {\r\n },\r\n })\r\n export default class AreaScores extends Vue {\r\n @Prop({ default: null }) public area: any;\r\n @Prop({ default: null }) public model: any;\r\n }\r\n","import mod from \"-!../../../node_modules/thread-loader/dist/cjs.js!../../../node_modules/babel-loader/lib/index.js!../../../node_modules/ts-loader/index.js??clonedRuleSet-41.use[2]!../../../node_modules/@vue/vue-loader-v15/lib/index.js??vue-loader-options!./AreaScores.vue?vue&type=script&lang=ts&\"; export default mod; export * from \"-!../../../node_modules/thread-loader/dist/cjs.js!../../../node_modules/babel-loader/lib/index.js!../../../node_modules/ts-loader/index.js??clonedRuleSet-41.use[2]!../../../node_modules/@vue/vue-loader-v15/lib/index.js??vue-loader-options!./AreaScores.vue?vue&type=script&lang=ts&\"","import { render, staticRenderFns } from \"./AreaScores.vue?vue&type=template&id=4c131083&\"\nimport script from \"./AreaScores.vue?vue&type=script&lang=ts&\"\nexport * from \"./AreaScores.vue?vue&type=script&lang=ts&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../node_modules/@vue/vue-loader-v15/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","var render = function render(){var _vm=this,_c=_vm._self._c,_setup=_vm._self._setupProxy;return (_vm.modalShow)?_c('v-dialog',{attrs:{\"width\":\"1000\",\"persistent\":\"\"},model:{value:(_vm.modalShow),callback:function ($$v) {_vm.modalShow=$$v},expression:\"modalShow\"}},[_c('v-card',[_c('v-card-title',{attrs:{\"primary-title\":\"\"}},[_vm._v(\" \"+_vm._s(_vm.$t(\"message.normalizedScoresFunctions\"))+\" \")]),_c('v-card-text',[_c('p',[_vm._v(_vm._s(_vm.$t(\"message.ncalcMessage\")))]),_c('v-simple-table',{attrs:{\"dense\":\"\"},scopedSlots:_vm._u([{key:\"default\",fn:function(){return [_c('thead',[_c('tr',[_c('th',{staticClass:\"text-left\"}),_c('th',{staticClass:\"text-left\"},[_vm._v(_vm._s(_vm.$t(\"message.title\")))]),_c('th',{staticClass:\"text-left\"},[_vm._v(_vm._s(_vm.$t(\"message.expression\")))]),_c('th',{staticClass:\"text-left\"},[_vm._v(_vm._s(_vm.$t(\"message.weight\")))])])]),_c('tbody',_vm._l((_vm.normalizedScoresFunctions),function(f,index){return _c('tr',{key:index},[_c('td',[_c('v-icon',{on:{\"click\":function($event){return _vm.removeLine(f)}}},[_vm._v(\"mdi-delete-circle-outline\")])],1),_c('td',[_c('v-text-field',{staticClass:\"parameterText\",attrs:{\"hide-details\":\"\",\"flat\":\"\",\"single-line\":\"\",\"solo\":\"\",\"full-width\":\"\",\"dense\":\"\"},model:{value:(f.title),callback:function ($$v) {_vm.$set(f, \"title\", $$v)},expression:\"f.title\"}})],1),_c('td',[_c('v-text-field',{staticClass:\"parameterText\",attrs:{\"hide-details\":\"\",\"flat\":\"\",\"single-line\":\"\",\"solo\":\"\",\"full-width\":\"\",\"dense\":\"\"},model:{value:(f.function),callback:function ($$v) {_vm.$set(f, \"function\", $$v)},expression:\"f.function\"}})],1),_c('td',[_c('v-text-field',{staticClass:\"parameterNumber\",attrs:{\"hide-details\":\"\",\"flat\":\"\",\"single-line\":\"\",\"solo\":\"\",\"full-width\":\"\",\"dense\":\"\"},model:{value:(f.weight),callback:function ($$v) {_vm.$set(f, \"weight\", $$v)},expression:\"f.weight\"}})],1)])}),0)]},proxy:true}],null,false,1017814700)}),_c('v-icon',{on:{\"click\":function($event){return _vm.addLine()}}},[_vm._v(\"mdi-plus-circle-outline\")]),_c('v-expansion-panels',{staticStyle:{\"margin-top\":\"1em\"}},[_c('v-expansion-panel',[_c('v-expansion-panel-header',[_c('p',[_c('v-icon',[_vm._v(\"mdi-code-json\")]),_vm._v(\" JSON\")],1)]),_c('v-expansion-panel-content',[_c('pre',[_vm._v(_vm._s(this.encode()))])])],1)],1)],1),_c('v-divider'),_c('v-card-actions',[_c('div',{staticClass:\"flex-grow-1\"}),_c('v-btn',{attrs:{\"color\":\"primary\",\"text\":\"\"},on:{\"click\":_vm.save}},[_vm._v(\" \"+_vm._s(_vm.$t(\"message.save\"))+\" \")]),_c('v-btn',{attrs:{\"color\":\"primary\",\"text\":\"\"},on:{\"click\":_vm.close}},[_vm._v(\" \"+_vm._s(_vm.$t(\"message.cancel\"))+\" \")])],1)],1)],1):_vm._e()\n}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","\r\n import { Component, Vue, Prop, Watch } from 'vue-property-decorator';\r\n \r\n @Component\r\n export default class EditNormalizedScoresFunctions extends Vue {\r\n @Prop({ default: null }) public normalizedScoresFunctions: any;\r\n @Prop({ default: null }) public model: any;\r\n \r\n private modalShow = false;\r\n\r\n private mounted() {\r\n this.$on('escKey' + this.$options.name, () => {\r\n if (this.modalShow) this.close();\r\n });\r\n document.addEventListener(\"keydown\", (e) => {\r\n if (e.key === \"Escape\") {\r\n this.$emit('escKey' + this.$options.name);\r\n }\r\n });\r\n }\r\n\r\n @Watch('normalizedScoresFunctions')\r\n private onNormalizedScoresFunctionsChanged(value: any) {\r\n if (value) {\r\n this.modalShow = true;\r\n }\r\n else {\r\n this.modalShow = false;\r\n }\r\n }\r\n\r\n private async close() {\r\n const res = await this.$confirm(String(this.$t('message.confirmClose')), { buttonTrueText: String(this.$t('message.yes')), buttonFalseText: String(this.$t('message.no')) });\r\n if (res) { this.modalShow = false }\r\n }\r\n\r\n private save() {\r\n this.$emit('save', this.normalizedScoresFunctions);\r\n }\r\n\r\n private async removeLine(row: any) {\r\n const res = await this.$confirm('Weet u zeker dat u deze rij wilt verwijderen?', { buttonTrueText: String(this.$t('message.yes')), buttonFalseText: String(this.$t('message.no')) })\r\n if (res) {\r\n for (let i = 0; i < this.normalizedScoresFunctions.length; i++) {\r\n if (this.normalizedScoresFunctions[i] === row) {\r\n this.normalizedScoresFunctions.splice(i, 1);\r\n }\r\n }\r\n }\r\n }\r\n\r\n private addLine() {\r\n this.normalizedScoresFunctions.push({ id: -1, defaultValue: 1, type: 1});\r\n }\r\n\r\n private encode() {\r\n if (this.normalizedScoresFunctions != null) {\r\n const f1 = this.normalizedScoresFunctions.map(function (f: any) {\r\n return { Title: f.title, Function: f.function, Weight: f.weight }\r\n });\r\n return f1;\r\n }\r\n else {\r\n return null;\r\n }\r\n }\r\n }\r\n","import mod from \"-!../../../node_modules/thread-loader/dist/cjs.js!../../../node_modules/babel-loader/lib/index.js!../../../node_modules/ts-loader/index.js??clonedRuleSet-41.use[2]!../../../node_modules/@vue/vue-loader-v15/lib/index.js??vue-loader-options!./EditNormalizedScoresFunctions.vue?vue&type=script&lang=ts&\"; export default mod; export * from \"-!../../../node_modules/thread-loader/dist/cjs.js!../../../node_modules/babel-loader/lib/index.js!../../../node_modules/ts-loader/index.js??clonedRuleSet-41.use[2]!../../../node_modules/@vue/vue-loader-v15/lib/index.js??vue-loader-options!./EditNormalizedScoresFunctions.vue?vue&type=script&lang=ts&\"","import { render, staticRenderFns } from \"./EditNormalizedScoresFunctions.vue?vue&type=template&id=00587f1a&\"\nimport script from \"./EditNormalizedScoresFunctions.vue?vue&type=script&lang=ts&\"\nexport * from \"./EditNormalizedScoresFunctions.vue?vue&type=script&lang=ts&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../node_modules/@vue/vue-loader-v15/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","var render = function render(){var _vm=this,_c=_vm._self._c,_setup=_vm._self._setupProxy;return (_vm.matchingLocations != null && _vm.matchingLocations.length > 0)?_c('div',[(_vm.location)?_c('h3',[_vm._v(_vm._s(_vm.location.name))]):_vm._e(),_c('div',{staticStyle:{\"width\":\"100%\",\"height\":\"400px\"}},[_c('Bar',{attrs:{\"options\":_vm.chartOptions,\"data\":_vm.chartData}})],1),_c('div',[_c('div',{staticClass:\"legend-item\"},[_c('div',{staticClass:\"legend-color\",style:({ background: 'linear-gradient(to right,' + this.matchingColors.join(',') + ')' })}),_c('span',[_vm._v(_vm._s(this.matchingLocations[0].outputLocationPropertyTitle))])]),(this.matchingLocations[0].actualOutputLocationPropertyValue != null)?_c('div',{staticClass:\"legend-item\"},[_c('div',{staticClass:\"legend-color\",staticStyle:{\"background-color\":\"#cccccc\"}}),_c('span',[_vm._v(_vm._s(this.matchingLocations[0].actualOutputLocationPropertyTitle))])]):_vm._e()])]):_vm._e()\n}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","\r\n import { Component, Vue, Prop } from 'vue-property-decorator';\r\n import { Bar } from 'vue-chartjs'\r\n @Component({\r\n components: {\r\n Bar\r\n },\r\n })\r\n export default class MatchingLocationsOutputChart extends Vue {\r\n @Prop({ default: null }) public matchingLocations: any;\r\n @Prop({ default: null }) public location: any;\r\n @Prop({ default: null }) public model: any;\r\n @Prop({ default: null }) public matchingColors: any;\r\n private setLocation(location: any) {\r\n this.$emit('locationChanged', location);\r\n }\r\n get chartData() {\r\n const self = this;\r\n if (this.matchingLocations != null && this.matchingLocations.length > 0) {\r\n const data: any = [];\r\n const dataActual: any = [];\r\n const labels: any = [];\r\n this.matchingLocations.slice(0, 6).forEach(function (output: any) {\r\n labels.push(output.name + ' ' + Math.round(output.score * 1000) / 10 + \"%\");\r\n data.push(output.outputLocationPropertyValue);\r\n dataActual.push(output.actualOutputLocationPropertyValue);\r\n });\r\n\r\n const dataSets: any = [];\r\n dataSets.push(\r\n {\r\n axis: 'y',\r\n label: this.matchingLocations[0].outputLocationPropertyTitle,\r\n data: data,\r\n backgroundColor: self.matchingColors,\r\n barPercentage: 0.1,\r\n barThickness: 28,\r\n categoryPercentage: 0.15,\r\n borderWidth: 1\r\n }\r\n );\r\n if (this.matchingLocations[0].actualOutputLocationPropertyValue != null) {\r\n dataSets.push(\r\n {\r\n axis: 'y',\r\n label: this.matchingLocations[0].actualOutputLocationPropertyTitle,\r\n data: dataActual,\r\n datalabels: {\r\n color: '#000000',\r\n align: 'right'\r\n },\r\n backgroundColor: '#cccccc',\r\n barThickness: 28,\r\n barPercentage: 0.1,\r\n categoryPercentage: 0.15,\r\n borderWidth: 1\r\n //borderWidth: 10,\r\n //: 'transparent'\r\n }\r\n )\r\n }\r\n\r\n return {\r\n labels: labels,\r\n datasets: dataSets\r\n }\r\n }\r\n else {\r\n return null;\r\n }\r\n }\r\n get chartOptions() {\r\n const self = this;\r\n return {\r\n responsive: true,\r\n maintainAspectRatio: false,\r\n indexAxis: 'y',\r\n animation: {\r\n duration: 0\r\n },\r\n scales: {\r\n x: {\r\n border: {\r\n display: false\r\n },\r\n grid: {\r\n display: false\r\n },\r\n ticks: {\r\n display: false\r\n }\r\n },\r\n y: {\r\n border: {\r\n display: false\r\n },\r\n grid: {\r\n display: false\r\n },\r\n ticks: {\r\n crossAlign: \"far\",\r\n font: {\r\n size: '14px',\r\n }\r\n },\r\n }\r\n },\r\n scale: {\r\n ticks: {\r\n maxTicksLimit: 0\r\n },\r\n },\r\n plugins: {\r\n tooltip: {\r\n enabled: false\r\n },\r\n legend: {\r\n display: false,\r\n },\r\n datalabels: {\r\n color: '#ffffff',\r\n formatter: function (value: any) {\r\n if (self.model.outputType != 4) {\r\n return self.$options.filters.currency(value, self.model.language, self.model.currency);\r\n }\r\n else {\r\n return self.$options.filters.fixed(value, 0, self.model.language);\r\n }\r\n },\r\n }\r\n }\r\n }\r\n }\r\n }\r\n","import mod from \"-!../../../node_modules/thread-loader/dist/cjs.js!../../../node_modules/babel-loader/lib/index.js!../../../node_modules/ts-loader/index.js??clonedRuleSet-41.use[2]!../../../node_modules/@vue/vue-loader-v15/lib/index.js??vue-loader-options!./MatchingLocationsOutputChart.vue?vue&type=script&lang=ts&\"; export default mod; export * from \"-!../../../node_modules/thread-loader/dist/cjs.js!../../../node_modules/babel-loader/lib/index.js!../../../node_modules/ts-loader/index.js??clonedRuleSet-41.use[2]!../../../node_modules/@vue/vue-loader-v15/lib/index.js??vue-loader-options!./MatchingLocationsOutputChart.vue?vue&type=script&lang=ts&\"","import { render, staticRenderFns } from \"./MatchingLocationsOutputChart.vue?vue&type=template&id=17337a1a&scoped=true&\"\nimport script from \"./MatchingLocationsOutputChart.vue?vue&type=script&lang=ts&\"\nexport * from \"./MatchingLocationsOutputChart.vue?vue&type=script&lang=ts&\"\nimport style0 from \"./MatchingLocationsOutputChart.vue?vue&type=style&index=0&id=17337a1a&prod&scoped=true&lang=css&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../node_modules/@vue/vue-loader-v15/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n \"17337a1a\",\n null\n \n)\n\nexport default component.exports","var render = function render(){var _vm=this,_c=_vm._self._c,_setup=_vm._self._setupProxy;return (_vm.matchingScores != null)?_c('div',[(_vm.location)?_c('h3',[_vm._v(_vm._s(_vm.location.name))]):_vm._e(),_c('div',{staticClass:\"mt-4 mb-2\",staticStyle:{\"width\":\"100%\",\"height\":\"45%\"}},[_c('Radar',{attrs:{\"options\":_vm.chartOptions,\"data\":_vm.chartData}})],1),(_vm.matchingScores.length > 3)?_c('div',{staticStyle:{\"float\":\"right\"}},_vm._l((_vm.matchingScores.slice(3,6)),function(item,index){return _c('div',{key:item.id},[_c('v-icon',{style:({ 'color': _vm.matchingColors[index+3] }),attrs:{\"medium\":\"\"}},[_vm._v(\"mdi-circle\")]),_vm._v(\" \"+_vm._s(item.name)+\" (\"+_vm._s(_vm._f(\"percentage\")(item.score,_vm.$i18n.locale, 0))+\") \")],1)}),0):_vm._e(),_vm._l((_vm.matchingScores.slice(0,3)),function(item,index){return _c('div',{key:item.id},[_c('v-icon',{style:({ 'color': _vm.matchingColors[index] }),attrs:{\"medium\":\"\"}},[_vm._v(\"mdi-circle\")]),_vm._v(\" \"+_vm._s(item.name)+\" (\"+_vm._s(_vm._f(\"percentage\")(item.score,_vm.$i18n.locale, 0))+\") \")],1)})],2):_vm._e()\n}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","\r\n import { Component, Vue, Prop } from 'vue-property-decorator';\r\n import { Radar } from 'vue-chartjs'\r\n \r\n @Component({\r\n components: {\r\n Radar\r\n },\r\n })\r\n export default class MatchingLocationsRadarChart extends Vue {\r\n @Prop({ default: null }) public matchingScores: any;\r\n @Prop({ default: null }) public location: any;\r\n @Prop({ default: null }) public matchingColors: any;\r\n\r\n private setLocation(location: any) {\r\n this.$emit('locationChanged', location);\r\n } \r\n\r\n get chartData() {\r\n const self = this;\r\n if (self.matchingScores != null) {\r\n const datasets: any = [];\r\n const labels: any = [];\r\n self.matchingScores.slice(0, 6).forEach(function (output: any) {\r\n let color = \"#aaaaaa\";\r\n if (datasets.length <= self.matchingColors.length) color = self.matchingColors[datasets.length];\r\n\r\n const dataset = { label: output.name + ' ' + Math.round(output.score * 1000) / 10 + \"%\", pointBackgroundColor: color, borderColor: color, pointBorderColor: 'white', pointBorderWidth: 1, pointRadius: 5, data: [0], borderWidth: 3 };\r\n datasets.push(dataset)\r\n dataset.data = [];\r\n \r\n output.normalizedScores.forEach(function (normalizedScore: any) {\r\n if (datasets.length == 1) {\r\n labels.push(normalizedScore.title.split('\\\\n'));\r\n }\r\n dataset.data.push((Math.round(normalizedScore.score * 100) / 100));\r\n })\r\n });\r\n \r\n return {\r\n labels: labels,\r\n datasets: datasets\r\n }\r\n \r\n }\r\n else\r\n {\r\n return null;\r\n }\r\n }\r\n\r\n get chartOptions() {\r\n return {\r\n responsive: true,\r\n maintainAspectRatio: false,\r\n \r\n indexAxis: 'y',\r\n animation: {\r\n duration: 0\r\n },\r\n \r\n scale: {\r\n ticks: {\r\n maxTicksLimit: 10,\r\n stepSize: 0.2, // Adjust the step between ticks\r\n suggestedMax: 1, // Set the maximum value on the scale\r\n suggestedMin: 0, // Set the minimum value on the scale\r\n beginAtZero: true,\r\n color: '#ff0000',\r\n backdropColor: '#00ff00'\r\n\r\n },\r\n\r\n \r\n },\r\n scales: {\r\n r: {\r\n pointLabels: {\r\n font: {\r\n size: '14px'\r\n \r\n }\r\n },\r\n ticks: {\r\n display: false,\r\n \r\n \r\n },\r\n grid: {\r\n color: ['#cccccc']\r\n }\r\n \r\n }\r\n },\r\n\r\n plugins: {\r\n \r\n legend: {\r\n display: false,\r\n position: 'bottom',\r\n align:'center',\r\n labels: {\r\n \r\n padding: 15,\r\n usePointStyle: true,\r\n },\r\n \r\n },\r\n datalabels: {\r\n display: false,\r\n color: '#FFFFFF'\r\n }\r\n }\r\n }\r\n }\r\n\r\n }\r\n","import mod from \"-!../../../node_modules/thread-loader/dist/cjs.js!../../../node_modules/babel-loader/lib/index.js!../../../node_modules/ts-loader/index.js??clonedRuleSet-41.use[2]!../../../node_modules/@vue/vue-loader-v15/lib/index.js??vue-loader-options!./MatchingLocationsRadarChart.vue?vue&type=script&lang=ts&\"; export default mod; export * from \"-!../../../node_modules/thread-loader/dist/cjs.js!../../../node_modules/babel-loader/lib/index.js!../../../node_modules/ts-loader/index.js??clonedRuleSet-41.use[2]!../../../node_modules/@vue/vue-loader-v15/lib/index.js??vue-loader-options!./MatchingLocationsRadarChart.vue?vue&type=script&lang=ts&\"","import { render, staticRenderFns } from \"./MatchingLocationsRadarChart.vue?vue&type=template&id=081ad0ff&\"\nimport script from \"./MatchingLocationsRadarChart.vue?vue&type=script&lang=ts&\"\nexport * from \"./MatchingLocationsRadarChart.vue?vue&type=script&lang=ts&\"\nimport style0 from \"./MatchingLocationsRadarChart.vue?vue&type=style&index=0&id=081ad0ff&prod&lang=css&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../node_modules/@vue/vue-loader-v15/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","var render = function render(){var _vm=this,_c=_vm._self._c,_setup=_vm._self._setupProxy;return (_vm.locationDrivers)?_c('div',[(_vm.location)?_c('h3',[_vm._v(_vm._s(_vm.location.name))]):_vm._e(),_c('table',{staticClass:\"driverChart mt-4\",staticStyle:{\"width\":\"90%\"}},_vm._l((_vm.filteredLocationDrivers),function(d,index){return _c('tr',{key:index},[_c('td',{staticStyle:{\"padding\":\"0px\",\"font-size\":\"14px\",\"color\":\"rgba(0,0,0,0.6)\"}},[_vm._v(\" \"+_vm._s(d.title)+\" \")]),_c('td',{staticStyle:{\"width\":\"75%\",\"height\":\"48px\"}},[_c('div',{style:({ 'margin-left': 'auto', 'margin-right': 'auto', width: d.width + '%', height: '32px', position: 'relative', display: 'block' })},[(d.inverse == false)?_c('div',{style:({ position: 'absolute', top: 0, left: '0%', height: '100%', width: '100%', 'background-image': 'linear-gradient(to right, rgb(255, 69, 96) ' + (d.minPos + 20) + '%, rgb(0, 227, 150) ' + (d.maxPos - 20) + '%)'})}):_vm._e(),(d.inverse == true)?_c('div',{style:({ position: 'absolute', top: 0, left: '0%', height: '100%', width: '100%', 'background-image': 'linear-gradient(to right, rgb(0, 227, 150) ' + (d.minPos + 20) + '%, rgb(255, 69, 96) ' + (d.maxPos - 20) + '%)'})}):_vm._e(),_c('v-tooltip',{attrs:{\"bottom\":\"\"},scopedSlots:_vm._u([{key:\"activator\",fn:function({ on, attrs }){return [_c('div',_vm._g(_vm._b({style:({ 'padding-left': '5px', 'font-size': '10px', position: 'absolute', top: '-10px', left: d.avgPos + '%', height: '64px', width: '0px', 'border-left': '3px dashed #FEB019'})},'div',attrs,false),on))]}}],null,true)},[_c('span',[_vm._v(_vm._s(d.average))])]),_c('div',{style:({ position: 'absolute', top: 0, left: '0%', height: '100%', width: d.minPos + '%', 'background-color': 'white' })}),_c('div',{style:({ position: 'absolute', top: 0, left: d.minPos + d.maxPos + '%', height: '100%', width: 100 - d.minPos - d.maxPos + '%', 'background-color': 'white' })}),_c('div',{style:({ 'background-color': 'white', 'padding': '3px', 'font-size': '12px', position: 'absolute', height: '40px', top: '-4px', right: '-1%', width: 100- d.maxPos + 1 + '%'})}),_c('div',{style:({ 'background-color': 'white', 'padding': '3px', 'font-size': '12px', position: 'absolute', height: '40px', top: '-4px', left: '-1%', width: d.minPos + 1 + '%'})}),_c('div',{style:({ 'background-color': 'white', 'padding': '9px', 'font-size': '12px', position: 'absolute', height: '40px', top: '-4px', right: 100- d.minPos + '%'})},[_vm._v(_vm._s(_vm._f(\"rounding\")(d.minimum,_vm.$i18n.locale, d.roundingDigits)))]),_c('div',{style:({ 'background-color': 'white', 'padding': '9px', 'font-size': '12px', position: 'absolute', height: '40px', top: '-4px', left: d.maxPos + '%'})},[_vm._v(_vm._s(_vm._f(\"rounding\")(d.maximum,_vm.$i18n.locale, d.roundingDigits)))]),(d.value > d.average)?_c('div',{style:({'font-size':'12px', 'padding': '5px','padding-right': '1px',color: '#FFFFFF', 'font-weight': 'normal', position: 'absolute', top: 0, right: 100 - d.valPos + '%', height: '100%', 'border-right': '3px solid #775DD0'})},[_vm._v(_vm._s(_vm._f(\"rounding\")(d.value,_vm.$i18n.locale, d.roundingDigits)))]):_vm._e(),(d.value < d.average)?_c('div',{style:({'font-size':'12px','padding': '5px', 'padding-left': '1px', color: '#FFFFFF', 'font-weight': 'normal', position: 'absolute', top: 0, left: d.valPos + '%', height: '100%', 'border-left': '3px solid #775DD0'})},[_vm._v(_vm._s(_vm._f(\"rounding\")(d.value,_vm.$i18n.locale, d.roundingDigits)))]):_vm._e()],1)])])}),0)]):_vm._e()\n}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","\r\n import { Component, Vue, Prop } from 'vue-property-decorator';\r\n \r\n @Component\r\n export default class DriversChart extends Vue {\r\n @Prop({ default: null }) public locationDrivers: any;\r\n @Prop({ default: null }) public location: any;\r\n\r\n get filteredLocationDrivers() {\r\n const widthPx = 100;\r\n const halfWidthPx = widthPx / 2;\r\n return this.locationDrivers.filter(function (locationDriver: any) {\r\n const maxAboveAvg = locationDriver.maximum - locationDriver.average;\r\n const minBelowAvg = locationDriver.average - locationDriver.minimum;\r\n const width = Math.max(maxAboveAvg, minBelowAvg) * 2;\r\n const ratio = widthPx / width;\r\n const avgPos = width / 2 * ratio;\r\n const minPos = halfWidthPx - (minBelowAvg * ratio);\r\n const maxPos = (maxAboveAvg * ratio) + halfWidthPx;\r\n const valPos = halfWidthPx - ((locationDriver.average - locationDriver.value) * ratio);\r\n locationDriver[\"avgPos\"] = avgPos;\r\n locationDriver[\"minPos\"] = minPos;\r\n locationDriver[\"maxPos\"] = maxPos;\r\n locationDriver[\"valPos\"] = valPos;\r\n locationDriver[\"width\"] = locationDriver.weight;\r\n return locationDriver;\r\n });\r\n }\r\n }\r\n","import mod from \"-!../../../node_modules/thread-loader/dist/cjs.js!../../../node_modules/babel-loader/lib/index.js!../../../node_modules/ts-loader/index.js??clonedRuleSet-41.use[2]!../../../node_modules/@vue/vue-loader-v15/lib/index.js??vue-loader-options!./DriversChart.vue?vue&type=script&lang=ts&\"; export default mod; export * from \"-!../../../node_modules/thread-loader/dist/cjs.js!../../../node_modules/babel-loader/lib/index.js!../../../node_modules/ts-loader/index.js??clonedRuleSet-41.use[2]!../../../node_modules/@vue/vue-loader-v15/lib/index.js??vue-loader-options!./DriversChart.vue?vue&type=script&lang=ts&\"","import { render, staticRenderFns } from \"./DriversChart.vue?vue&type=template&id=dcd94b18&\"\nimport script from \"./DriversChart.vue?vue&type=script&lang=ts&\"\nexport * from \"./DriversChart.vue?vue&type=script&lang=ts&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../node_modules/@vue/vue-loader-v15/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","var render = function render(){var _vm=this,_c=_vm._self._c,_setup=_vm._self._setupProxy;return _c('div',[(_vm.location)?_c('h3',[_vm._v(_vm._s(_vm.location.name))]):_vm._e(),_c('p',{staticClass:\"mt-4\"},[_c('v-select',{attrs:{\"label\":_vm.$t('message.propertyX'),\"dense\":\"\",\"outlined\":\"\",\"items\":_vm.filteredProperties,\"hide-details\":\"\",\"item-value\":\"id\",\"item-text\":\"title\",\"return-object\":\"\"},scopedSlots:_vm._u([{key:\"selection\",fn:function(data){return [_c('div',[_vm._v(_vm._s(data.item.sectionTitle)+\" - \"+_vm._s(_vm.removeMdiBracketToIcon(data.item.title)))])]}},{key:\"item\",fn:function(data){return [_c('div',[_vm._v(_vm._s(data.item.sectionTitle)+\" - \"+_vm._s(_vm.removeMdiBracketToIcon(data.item.title)))])]}}]),model:{value:(_vm.locationProperty1),callback:function ($$v) {_vm.locationProperty1=$$v},expression:\"locationProperty1\"}})],1),_c('p',[_c('v-select',{attrs:{\"label\":_vm.$t('message.propertyY'),\"dense\":\"\",\"outlined\":\"\",\"items\":_vm.filteredProperties,\"hide-details\":\"\",\"item-value\":\"id\",\"item-text\":\"title\",\"return-object\":\"\"},scopedSlots:_vm._u([{key:\"selection\",fn:function(data){return [_c('div',[_vm._v(_vm._s(data.item.sectionTitle)+\" - \"+_vm._s(_vm.removeMdiBracketToIcon(data.item.title)))])]}},{key:\"item\",fn:function(data){return [_c('div',[_vm._v(_vm._s(data.item.sectionTitle)+\" - \"+_vm._s(_vm.removeMdiBracketToIcon(data.item.title)))])]}}]),model:{value:(_vm.locationProperty2),callback:function ($$v) {_vm.locationProperty2=$$v},expression:\"locationProperty2\"}})],1),_c('Scatter',{attrs:{\"options\":_vm.chartOptions,\"data\":_vm.chartData}})],1)\n}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","\r\n import { Component, Vue, Prop,Watch } from 'vue-property-decorator';\r\n import { Scatter } from 'vue-chartjs'\r\n import { removeMdiBracketToIcon } from '@/mdi';\r\n\r\n @Component({\r\n components: {\r\n Scatter\r\n },\r\n })\r\n export default class PropertiesChart extends Vue {\r\n\r\n @Prop({ default: null }) public propertiesChartData: any;\r\n @Prop({ default: null }) public scenario: any;\r\n @Prop({ default: null }) public location: any;\r\n @Prop({ default: null }) public matchingColors: any;\r\n\r\n private removeMdiBracketToIcon = removeMdiBracketToIcon;\r\n\r\n public locationProperty1: any = null;\r\n public locationProperty2: any = null;\r\n \r\n public datasets: any = [];\r\n public theModel: any = '';\r\n\r\n get filteredProperties() {\r\n if (this.propertiesChartData != null) {\r\n return this.propertiesChartData.properties.filter(function (locationProperty: any) {\r\n return locationProperty.title != null && locationProperty.dataType != 0;\r\n });\r\n }\r\n else {\r\n return [];\r\n }\r\n }\r\n\r\n get chartData() {\r\n\r\n return {\r\n datasets: this.datasets\r\n };\r\n }\r\n\r\n get chartOptions() {\r\n return {\r\n responsive: true,\r\n plugins: {\r\n datalabels: {\r\n display: false,\r\n },\r\n legend: {\r\n display: false,\r\n }\r\n }\r\n }\r\n }\r\n \r\n\r\n \r\n\r\n @Watch('propertiesChartData.data')\r\n private onPropertiesChartDataChanged()\r\n {\r\n this.datasets = [];\r\n \r\n \r\n \r\n \r\n const self = this;\r\n if (this.propertiesChartData != null && this.propertiesChartData.data != null) {\r\n this.propertiesChartData.data.forEach(function (row: any) {\r\n let color = \"#aaaaaa\";\r\n if (self.datasets.length <= self.matchingColors.length) color = self.matchingColors[self.datasets.length];\r\n self.datasets.push({ label: row.locationName, backgroundColor: color, pointRadius: 5, data: [{ x: row.numberValue1, y: row.numberValue2 }] });\r\n \r\n })\r\n }\r\n \r\n \r\n }\r\n \r\n\r\n @Watch('propertiesChartData')\r\n @Watch('locationProperty1')\r\n @Watch('locationProperty2')\r\n private onLocationPropertyChanged() {\r\n this.$emit('locationPropertyChanged', { locationProperty1: this.locationProperty1, locationProperty2: this.locationProperty2 });\r\n }\r\n }\r\n","import mod from \"-!../../../node_modules/thread-loader/dist/cjs.js!../../../node_modules/babel-loader/lib/index.js!../../../node_modules/ts-loader/index.js??clonedRuleSet-41.use[2]!../../../node_modules/@vue/vue-loader-v15/lib/index.js??vue-loader-options!./PropertiesChart.vue?vue&type=script&lang=ts&\"; export default mod; export * from \"-!../../../node_modules/thread-loader/dist/cjs.js!../../../node_modules/babel-loader/lib/index.js!../../../node_modules/ts-loader/index.js??clonedRuleSet-41.use[2]!../../../node_modules/@vue/vue-loader-v15/lib/index.js??vue-loader-options!./PropertiesChart.vue?vue&type=script&lang=ts&\"","import { render, staticRenderFns } from \"./PropertiesChart.vue?vue&type=template&id=3500d011&\"\nimport script from \"./PropertiesChart.vue?vue&type=script&lang=ts&\"\nexport * from \"./PropertiesChart.vue?vue&type=script&lang=ts&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../node_modules/@vue/vue-loader-v15/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","var render = function render(){var _vm=this,_c=_vm._self._c,_setup=_vm._self._setupProxy;return _c('v-dialog',{attrs:{\"width\":\"21cm\"},model:{value:(_vm.localShow),callback:function ($$v) {_vm.localShow=$$v},expression:\"localShow\"}},[_c('div',{staticClass:\"report\"},[(_vm.location && _vm.scenario && _vm.model && _vm.locationCatchmentArea)?_c('v-card',{attrs:{\"id\":\"locationReport\"}},[_c('v-card-title',{attrs:{\"primary-title\":\"\"}},[_c('div',{staticClass:\"tbdc-report-header\"},[_c('h2',[_vm._v(_vm._s(_vm.$tc(\"message.locationsType\" + _vm.model.locationsType + \"Name\"))+\" \"+_vm._s(_vm.$tc(\"message.report\")))]),(_vm.model.hasMainLogo)?_c('div',{staticClass:\"tbdc-report-header-block\",staticStyle:{\"float\":\"right\"}},[(_vm.model != null)?_c('img',{staticClass:\"tbdc-report-header-image\",attrs:{\"src\":'/api/models/' + _vm.model.id + '/main-logo'}}):_vm._e()]):_vm._e(),(_vm.model.hasSecondaryLogo)?_c('div',{staticClass:\"tbdc-report-header-block\",staticStyle:{\"float\":\"right\"}},[(_vm.model != null)?_c('img',{staticClass:\"tbdc-report-header-image\",attrs:{\"src\":'/api/models/' + _vm.model.id + '/secondary-logo'}}):_vm._e()]):_vm._e()])]),_c('v-card-text',[_c('section',[_c('h3',[_vm._v(_vm._s(_vm.location.name)+\" (\"+_vm._s(_vm.scenario.name)+_vm._s(_vm.subModel.name != 'Default'?' ' + _vm.subModel.name:'')+\")\")]),_c('p',{staticClass:\"mb-0\"},[_vm._v(_vm._s(_vm.$t(\"message.generatedOn\"))+\" \"+_vm._s(_vm._f(\"datetime\")(new Date(),_vm.$i18n.locale))+\" \"+_vm._s(_vm.$t(\"message.by\"))+\" \"+_vm._s(_vm.account.name))])]),(!_vm.model.locationReportFormat)?[_c('section',[_c('v-container',[_c('v-layout',{attrs:{\"row\":\"\"}},[_c('v-flex',{staticStyle:{\"max-width\":\"50%\"},attrs:{\"pr-4\":\"\"}},[_c('Properties',{attrs:{\"subModel\":_vm.subModel,\"model\":_vm.model,\"location\":_vm.location,\"locationProperties\":_vm.locationProperties != null ? _vm.locationProperties.filter(_vm.selectViewLocation) : null}})],1),_c('v-flex',{staticStyle:{\"max-width\":\"50%\"},attrs:{\"pl-4\":\"\"}},[_c('Properties',{attrs:{\"subModel\":_vm.subModel,\"model\":_vm.model,\"location\":_vm.location,\"locationProperties\":_vm.locationProperties != null ? _vm.locationProperties.filter(_vm.selectViewLocationOutput) : null}})],1)],1)],1)],1),_c('section',[_c('h4',[_vm._v(_vm._s(_vm.$t(\"message.localSituation\")))]),_c('div',{staticStyle:{\"height\":\"400px\",\"width\":\"100%\",\"margin-bottom\":\"0em\",\"pointer-events\":\"none\"}},[_c('GoogleMap',{staticStyle:{\"width\":\"100%\",\"height\":\"400px\"},attrs:{\"zoom\":16,\"report\":true,\"refresh\":_vm.refresh,\"locations\":_vm.locations,\"scenario\":_vm.scenario,\"model\":_vm.model,\"location\":_vm.location},on:{\"startBusy\":_vm.startBusy,\"endBusy\":_vm.endBusy}})],1)]),_c('section',[_c('h4',[_vm._v(_vm._s(_vm.$t(\"message.catchmentArea\") + ' ' + (_vm.model.catchmentAreaMode == 0 ? _vm.$t('message.secondary') : '')))]),_c('div',{staticStyle:{\"height\":\"400px\",\"width\":\"100%\",\"margin-bottom\":\"1em\",\"pointer-events\":\"none\"}},[_c('GoogleMap',{staticStyle:{\"width\":\"100%\",\"height\":\"400px\"},attrs:{\"zoom\":11,\"report\":true,\"refresh\":_vm.refresh,\"locationCatchmentArea\":_vm.locationCatchmentArea,\"scenario\":_vm.scenario,\"catchmentArea\":_vm.catchmentArea,\"locations\":_vm.locations,\"model\":_vm.model,\"showAreas\":true,\"location\":_vm.location},on:{\"startBusy\":_vm.startBusy,\"endBusy\":_vm.endBusy}})],1)]),(_vm.locationCatchmentArea != null && _vm.locationCatchmentArea.areas != null && _vm.locationCatchmentArea.areas.length > 0)?_c('section',[_c('h4',[_vm._v(_vm._s(_vm.$t(\"message.top25\"))+\" \"+_vm._s(_vm.$tc(\"message.areasType\" + _vm.model.areasType + \"Name\",0).toLowerCase()))]),_c('v-simple-table',{staticStyle:{\"margin-bottom\":\"1em\"},attrs:{\"dense\":\"\"},scopedSlots:_vm._u([{key:\"default\",fn:function(){return [_c('thead',[_c('tr',[_c('th',[_vm._v(_vm._s(_vm.$tc(\"message.areasType\" + _vm.model.areasType + \"Name\",1)))]),_c('th',{staticClass:\"text-right\"},[_vm._v(_vm._s(_vm.$t(\"message.share\")))]),_vm._l((_vm.locationCatchmentArea.areas[0].areaProperties),function(areaProperty){return [(areaProperty.titleShort != null)?_c('th',{key:areaProperty.name,staticClass:\"text-right\"},[_vm._v(\" \"+_vm._s(areaProperty.titleShort)+\" \")]):_vm._e()]})],2)]),_c('tbody',_vm._l((_vm.locationCatchmentArea.areas.slice(0,25)),function(area){return _c('tr',{key:area.areaCode},[_c('td',[_vm._v(_vm._s(area.areaCode))]),_c('td',{staticClass:\"text-right\"},[(_vm.model.outputType == 1)?_c('span',[_c('PropertyValue',{attrs:{\"property\":{ numberValue: area.output, dataType: 3 },\"onlyCurrentValue\":true}})],1):_vm._e(),(_vm.model.outputType == 2)?_c('span',[_c('PropertyValue',{attrs:{\"property\":{ numberValue: area.output, dataType: 1, roundingDigits: 0 },\"onlyCurrentValue\":true}})],1):_vm._e(),(_vm.model.outputType == 3)?_c('span',[_c('PropertyValue',{attrs:{\"property\":{ numberValue: area.output, dataType: 3 },\"onlyCurrentValue\":true}})],1):_vm._e(),(_vm.model.outputType == 4)?_c('span',[_c('PropertyValue',{attrs:{\"property\":{ numberValue: area.output, dataType: 1, roundingDigits: 0 },\"onlyCurrentValue\":true}})],1):_vm._e()]),_vm._l((area.areaProperties),function(areaProperty){return [(areaProperty.titleShort != null)?_c('td',{key:areaProperty.name,staticClass:\"text-right\"},[_c('PropertyValue',{attrs:{\"property\":{stringValue: areaProperty.stringValue, numberValue: areaProperty.numberValue, dataType: areaProperty.dataType, roundingDigits: areaProperty.roundingDigits},\"onlyCurrentValue\":true}})],1):_vm._e()]})],2)}),0)]},proxy:true}],null,false,2885973555)})],1):_vm._e(),(_vm.matchingLocations != null && _vm.matchingLocations.length > 1)?_c('section',[_c('h4',[_vm._v(_vm._s(_vm.$t(\"message.matchingLocationsOutputChart\")))]),_c('MatchingLocationsOutputChart',{staticStyle:{\"width\":\"100%\",\"overflow\":\"hidden\"},attrs:{\"matchingLocations\":_vm.matchingLocations,\"matchingColors\":_vm.matchingColors,\"model\":_vm.model}})],1):_vm._e(),(_vm.matchingScores != null && _vm.matchingScores.length > 1)?_c('section',[_c('h4',[_vm._v(_vm._s(_vm.$t(\"message.matchingLocationsSimilarityChart\")))]),_c('MatchingLocationsRadarChart',{staticStyle:{\"width\":\"100%\",\"overflow\":\"hidden\"},attrs:{\"matchingScores\":_vm.matchingScores,\"matchingColors\":_vm.matchingColors}})],1):_vm._e(),(_vm.locationDrivers != null && _vm.locationDrivers.length > 0)?_c('section',[_c('h4',[_vm._v(_vm._s(_vm.$t(\"message.driversChart\")))]),_c('DriversChart',{attrs:{\"locationDrivers\":_vm.locationDrivers}})],1):_vm._e(),_c('section',[_c('h4',[_vm._v(_vm._s(_vm.$t(\"message.disclaimer\")))]),_c('p',{staticClass:\"font-weight-thin\"},[_vm._v(_vm._s(_vm.$t(\"message.disclaimerContent\")))])])]:_vm._e(),(_vm.model.locationReportFormat)?[_vm._l((JSON.parse(_vm.model.locationReportFormat).components),function(component,index){return [(component.name == 'mapLocations')?_c('section',{key:index},[_c('h4',[_vm._v(_vm._s(_vm.$t(\"message.localSituation\")))]),_c('div',{staticStyle:{\"height\":\"400px\",\"width\":\"100%\",\"margin-bottom\":\"1em\"}},[_c('GoogleMap',{staticStyle:{\"width\":\"100%\",\"height\":\"400px\"},attrs:{\"report\":true,\"zoom\":component.zoom,\"refresh\":_vm.refresh,\"scenario\":_vm.scenario,\"locations\":_vm.locations,\"model\":_vm.model,\"location\":_vm.location},on:{\"startBusy\":_vm.startBusy,\"endBusy\":_vm.endBusy}})],1)]):_vm._e(),(component.name == 'mapCatchmentArea')?_c('section',{key:index},[_c('h4',[_vm._v(_vm._s(_vm.$t(\"message.catchmentArea\")))]),_c('div',{staticStyle:{\"height\":\"400px\",\"width\":\"100%\",\"margin-bottom\":\"0em\",\"pointer-events\":\"none\"}},[_c('GoogleMap',{staticStyle:{\"width\":\"100%\",\"height\":\"400px\"},attrs:{\"report\":true,\"zoom\":component.zoom,\"refresh\":_vm.refresh,\"scenario\":_vm.scenario,\"locationCatchmentArea\":_vm.locationCatchmentArea,\"catchmentArea\":_vm.catchmentArea,\"locations\":_vm.locations,\"model\":_vm.model,\"showAreas\":true,\"location\":_vm.location},on:{\"startBusy\":_vm.startBusy,\"endBusy\":_vm.endBusy}})],1)]):_vm._e(),(component.name == 'mapCatchmentAreaPrimary')?_c('section',{key:index},[_c('h4',[_vm._v(_vm._s(_vm.$t(\"message.catchmentArea\") + ' ' + _vm.$t('message.primary').toLowerCase()))]),_c('div',{staticStyle:{\"height\":\"400px\",\"width\":\"100%\",\"margin-bottom\":\"0em\",\"pointer-events\":\"none\"}},[_c('GoogleMap',{staticStyle:{\"width\":\"100%\",\"height\":\"400px\"},attrs:{\"zoom\":component.zoom,\"refresh\":_vm.refresh,\"scenario\":_vm.scenario,\"locationCatchmentArea\":_vm.locationCatchmentArea,\"catchmentArea\":_vm.catchmentArea,\"locations\":_vm.locations,\"model\":_vm.model,\"showAreas\":true,\"location\":_vm.location},on:{\"startBusy\":_vm.startBusy,\"endBusy\":_vm.endBusy}})],1)]):_vm._e(),(component.name == 'mapCatchmentAreaSecondary')?_c('section',{key:index},[_c('h4',[_vm._v(_vm._s(_vm.$t(\"message.catchmentArea\") + ' ' + _vm.$t('message.secondary').toLowerCase()))]),_c('div',{staticStyle:{\"height\":\"400px\",\"width\":\"100%\",\"margin-bottom\":\"0em\",\"pointer-events\":\"none\"}},[_c('GoogleMap',{staticStyle:{\"width\":\"100%\",\"height\":\"400px\"},attrs:{\"report\":true,\"zoom\":component.zoom,\"refresh\":_vm.refresh,\"scenario\":_vm.scenario,\"locationCatchmentArea\":_vm.locationCatchmentArea,\"catchmentArea\":_vm.catchmentArea,\"locations\":_vm.locations,\"model\":_vm.model,\"showAreas\":true,\"location\":_vm.location},on:{\"startBusy\":_vm.startBusy,\"endBusy\":_vm.endBusy}})],1)]):_vm._e(),(component.name == 'properties')?_c('section',{key:index},_vm._l((component.sections),function(section,index2){return _c('div',{key:index2},[_c('Properties',{attrs:{\"subModel\":_vm.subModel,\"model\":_vm.model,\"location\":_vm.location,\"locationProperties\":_vm.filterItems(_vm.locationProperties, section)}})],1)}),0):_vm._e(),(component.name == 'properties2Columns')?_c('section',{key:index},[_c('v-container',[_c('v-layout',{attrs:{\"row\":\"\"}},[_vm._l((component.sectionsLeft),function(section,index2){return _c('v-flex',{key:'left' + index2,staticStyle:{\"max-width\":\"50%\"},attrs:{\"pr-4\":\"\"}},[_c('Properties',{attrs:{\"subModel\":_vm.subModel,\"model\":_vm.model,\"location\":_vm.location,\"locationProperties\":_vm.filterItems(_vm.locationProperties, section)}})],1)}),_vm._l((component.sectionsRight),function(section,index2){return _c('v-flex',{key:'right' + index2,staticStyle:{\"max-width\":\"50%\"},attrs:{\"pl-4\":\"\"}},[_c('Properties',{attrs:{\"subModel\":_vm.subModel,\"model\":_vm.model,\"location\":_vm.location,\"locationProperties\":_vm.filterItems(_vm.locationProperties, section)}})],1)})],2)],1)],1):_vm._e(),(component.name == 'topAreas' && _vm.locationCatchmentArea != null && _vm.locationCatchmentArea.areas != null && _vm.locationCatchmentArea.areas.length > 0)?_c('section',{key:index},[_c('h4',[_vm._v(_vm._s(_vm.$t(\"message.top\"))+\" \"+_vm._s(component.numberOfAreas)+\" \"+_vm._s(_vm.$tc(\"message.areasType\" + _vm.model.areasType + \"Name\",0).toLowerCase()))]),_c('v-simple-table',{attrs:{\"dense\":\"\"},scopedSlots:_vm._u([{key:\"default\",fn:function(){return [_c('thead',[_c('tr',[_c('th',[_vm._v(_vm._s(_vm.$tc(\"message.areasType\" + _vm.model.areasType + \"Name\",1)))]),_c('th',{staticClass:\"text-right\"},[_vm._v(_vm._s(_vm.$t(\"message.share\")))]),_vm._l((_vm.locationCatchmentArea.areas[0].areaProperties),function(areaProperty){return [(areaProperty.titleShort != null)?_c('th',{key:areaProperty.name,staticClass:\"text-right\"},[_vm._v(\" \"+_vm._s(areaProperty.titleShort)+\" \")]):_vm._e()]})],2)]),_c('tbody',_vm._l((_vm.locationCatchmentArea.areas.slice(0,component.numberOfAreas)),function(area){return _c('tr',{key:area.areaCode},[_c('td',[_vm._v(_vm._s(area.areaCode))]),_c('td',{staticClass:\"text-right\"},[(_vm.model.outputType == 1)?_c('span',[_c('PropertyValue',{attrs:{\"property\":{ numberValue: area.output, dataType: 3 },\"onlyCurrentValue\":true}})],1):_vm._e(),(_vm.model.outputType == 2)?_c('span',[_c('PropertyValue',{attrs:{\"property\":{ numberValue: area.output, dataType: 1, roundingDigits: 0 },\"onlyCurrentValue\":true}})],1):_vm._e(),(_vm.model.outputType == 3)?_c('span',[_c('PropertyValue',{attrs:{\"property\":{ numberValue: area.output, dataType: 3 },\"onlyCurrentValue\":true}})],1):_vm._e(),(_vm.model.outputType == 4)?_c('span',[_c('PropertyValue',{attrs:{\"property\":{ numberValue: area.output, dataType: 1, roundingDigits: 0 },\"onlyCurrentValue\":true}})],1):_vm._e()]),_vm._l((area.areaProperties),function(areaProperty){return [(areaProperty.titleShort != null)?_c('td',{key:areaProperty.name,staticClass:\"text-right\"},[_c('PropertyValue',{attrs:{\"property\":{stringValue: areaProperty.stringValue, numberValue: areaProperty.numberValue, dataType: areaProperty.dataType, roundingDigits: areaProperty.roundingDigits},\"onlyCurrentValue\":true}})],1):_vm._e()]})],2)}),0)]},proxy:true}],null,true)})],1):_vm._e(),(component.name == 'matchingLocations' && _vm.matchingLocations != null && _vm.matchingLocations.length > 1)?_c('section',{key:index},[_c('h4',[_vm._v(_vm._s(_vm.$t(\"message.matchingLocationsOutputChart\")))]),_c('MatchingLocationsOutputChart',{staticStyle:{\"width\":\"100%\",\"overflow\":\"hidden\"},attrs:{\"matchingLocations\":_vm.matchingLocations,\"matchingColors\":_vm.matchingColors,\"model\":_vm.model}})],1):_vm._e(),(component.name == 'matchingScores' && _vm.matchingScores != null && _vm.matchingScores.length > 1)?_c('section',{key:index},[_c('h4',[_vm._v(_vm._s(_vm.$t(\"message.matchingLocationsSimilarityChart\")))]),_c('MatchingLocationsRadarChart',{staticStyle:{\"width\":\"100%\",\"overflow\":\"hidden\"},attrs:{\"matchingScores\":_vm.matchingScores,\"matchingColors\":_vm.matchingColors}})],1):_vm._e(),(component.name == 'drivers' && _vm.locationDrivers != null && _vm.locationDrivers.length > 0)?_c('section',{key:index},[_c('h4',[_vm._v(_vm._s(_vm.$t(\"message.driversChart\")))]),_c('DriversChart',{attrs:{\"locationDrivers\":_vm.locationDrivers}})],1):_vm._e(),(component.name == 'disclaimer')?_c('section',{key:index},[_c('h4',[_vm._v(_vm._s(_vm.$t(\"message.disclaimer\")))]),_c('p',{staticClass:\"font-weight-thin\"},[_vm._v(_vm._s(_vm.$t(\"message.disclaimerContent\")))])]):_vm._e(),(component.name == 'textSection')?_c('section',{key:index},[_c('h4',[_vm._v(_vm._s(component.title))]),_vm._l((component.paragraphs),function(paragraph,index){return _c('p',{key:index,class:paragraph.class},[_vm._v(_vm._s(paragraph.content))])})],2):_vm._e()]})]:_vm._e(),_c('p',{staticClass:\"font-weight-thin\"},[_vm._v(_vm._s(_vm.model.name)+\" (\"+_vm._s(_vm.model.id)+\"/\"+_vm._s(_vm.scenario.id)+\"/\"+_vm._s(_vm.location.id)+\") \"+_vm._s(_vm.environment == 'Production' ? '' : _vm.environment))])],2),_c('v-card-actions',{staticClass:\"d-print-none\"},[_c('div',{staticClass:\"flex-grow-1\"}),_c('v-btn',{attrs:{\"color\":\"primary\",\"text\":\"\"},on:{\"click\":function($event){return _vm.Window.print();}}},[_vm._v(_vm._s(_vm.$t(\"message.print\")))]),_c('v-btn',{attrs:{\"color\":\"primary\",\"text\":\"\"},on:{\"click\":_vm.close}},[_vm._v(\" \"+_vm._s(_vm.$t(\"message.cancel\"))+\" \")])],1)],1):_vm._e()],1)])\n}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","\r\n import { Component, Vue, Prop } from 'vue-property-decorator';\r\n import GoogleMap from '@/components/main/GoogleMap.vue'\r\n import Properties from '@/components/main/Properties.vue'\r\n import DriversChart from '@/components/main/DriversChart.vue';\r\n import MatchingLocationsOutputChart from '@/components/main/MatchingLocationsOutputChart.vue';\r\n import MatchingLocationsRadarChart from '@/components/main/MatchingLocationsRadarChart.vue';\r\n import PropertyValue from '@/components/main/PropertyValue.vue'\r\n \r\n @Component({\r\n components: {\r\n GoogleMap,\r\n Properties,\r\n PropertyValue,\r\n DriversChart,\r\n MatchingLocationsOutputChart,\r\n MatchingLocationsRadarChart,\r\n },\r\n })\r\n export default class LocationReport extends Vue {\r\n @Prop({ default: false }) public disabled: any;\r\n @Prop({ default: null }) public model: any;\r\n @Prop({ default: null }) public subModel: any;\r\n @Prop({ default: null }) public location: any;\r\n @Prop({ default: null }) public locations: any;\r\n @Prop({ default: null }) public scenario: any;\r\n @Prop({ default: null }) public locationProperties: any;\r\n @Prop({ default: null }) public locationGroupProperties: any;\r\n @Prop({ default: null }) public locationCluster: any;\r\n @Prop({ default: null }) public locationCatchmentArea: any;\r\n @Prop({ default: null }) public catchmentArea: any;\r\n @Prop({ default: null }) public show: any;\r\n @Prop({ default: null }) public matchingLocations: any;\r\n @Prop({ default: null }) public matchingScores: any;\r\n @Prop({ default: null }) public matchingColors: any;\r\n @Prop({ default: null }) public locationDrivers: any;\r\n @Prop({ default: null }) public environment: any;\r\n\r\n private refresh = 1;\r\n\r\n private startBusy() {\r\n this.$emit('startBusy');\r\n }\r\n\r\n private endBusy() {\r\n this.$emit('endBusy');\r\n }\r\n\r\n private get localShow() {\r\n return this.show;\r\n }\r\n\r\n private async close() {\r\n this.localShow = false;\r\n }\r\n\r\n\r\n private set localShow(value: any) {\r\n this.$emit(\"showChanged\", value);\r\n this.refresh++;\r\n }\r\n \r\n private get totalOutput() {\r\n let value = 0;\r\n if (!this.locationCatchmentArea || !this.locationCatchmentArea.areas) return 0;\r\n this.locationCatchmentArea.areas.forEach(function (area: any) {\r\n value += area.output;\r\n });\r\n return value;\r\n }\r\n private get totalOutputDefault() {\r\n let value = 0;\r\n if (!this.locationCatchmentArea || !this.locationCatchmentArea.areas) return 0;\r\n this.locationCatchmentArea.areas.forEach(function (area: any) {\r\n value += area.outputDefaultScenario;\r\n });\r\n return value;\r\n }\r\n\r\n private selectViewLocation(value: any) {\r\n return value.viewLocation == 0;\r\n }\r\n private selectViewLocationOutput(value: any) {\r\n \r\n return value.viewLocation == 1;\r\n }\r\n \r\n private filterItems(arr: [], sectionName: any) {\r\n if (arr == null) return [];\r\n return arr.filter((el : any) => el.sectionName == sectionName);\r\n }\r\n\r\n public get account() {\r\n return this.$msal.account();\r\n }\r\n }\r\n","import mod from \"-!../../../node_modules/thread-loader/dist/cjs.js!../../../node_modules/babel-loader/lib/index.js!../../../node_modules/ts-loader/index.js??clonedRuleSet-41.use[2]!../../../node_modules/@vue/vue-loader-v15/lib/index.js??vue-loader-options!./LocationReport.vue?vue&type=script&lang=ts&\"; export default mod; export * from \"-!../../../node_modules/thread-loader/dist/cjs.js!../../../node_modules/babel-loader/lib/index.js!../../../node_modules/ts-loader/index.js??clonedRuleSet-41.use[2]!../../../node_modules/@vue/vue-loader-v15/lib/index.js??vue-loader-options!./LocationReport.vue?vue&type=script&lang=ts&\"","import { render, staticRenderFns } from \"./LocationReport.vue?vue&type=template&id=07d96c4c&\"\nimport script from \"./LocationReport.vue?vue&type=script&lang=ts&\"\nexport * from \"./LocationReport.vue?vue&type=script&lang=ts&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../node_modules/@vue/vue-loader-v15/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","var render = function render(){var _vm=this,_c=_vm._self._c,_setup=_vm._self._setupProxy;return _c('v-dialog',{attrs:{\"width\":\"21cm\"},model:{value:(_vm.localShow),callback:function ($$v) {_vm.localShow=$$v},expression:\"localShow\"}},[_c('div',{staticClass:\"report\"},[(_vm.scenario && _vm.model)?_c('v-card',{attrs:{\"id\":\"scenarioReport\"}},[_c('v-card-title',{attrs:{\"primary-title\":\"\"}},[_c('div',{staticClass:\"tbdc-report-header\"},[_c('h2',[_vm._v(_vm._s(_vm.$tc(\"message.scenarioReport\")))]),(_vm.model.hasMainLogo)?_c('div',{staticClass:\"tbdc-report-header-block\",staticStyle:{\"float\":\"right\"}},[(_vm.model != null)?_c('img',{staticClass:\"tbdc-report-header-image\",attrs:{\"src\":'/api/models/' + _vm.model.id + '/main-logo'}}):_vm._e()]):_vm._e(),(_vm.model.hasSecondaryLogo)?_c('div',{staticClass:\"tbdc-report-header-block\",staticStyle:{\"float\":\"right\"}},[(_vm.model != null)?_c('img',{staticClass:\"tbdc-report-header-image\",attrs:{\"src\":'/api/models/' + _vm.model.id + '/secondary-logo'}}):_vm._e()]):_vm._e()])]),_c('v-card-text',[(!_vm.scenarioDifferences)?[_c('section',[_vm._v(\" \"+_vm._s(_vm.$tc(\"message.busyLoading\"))+\" \")])]:_vm._e(),(!_vm.model.scenarioReportFormat && _vm.scenarioDifferences)?[(_vm.scenario)?_c('section',[_c('h3',[_vm._v(_vm._s(_vm.scenario.name))]),_c('p',{staticClass:\"mb-0\"},[_vm._v(\"Gegenereerd op \"+_vm._s(_vm._f(\"datetime\")(new Date(),_vm.$i18n.locale))+\" door \"+_vm._s(_vm.account.name))])]):_vm._e(),_c('section',[_c('h4',[_vm._v(_vm._s(_vm.$tc(\"message.locationsType\" + _vm.model.locationsType + \"Impact\")))]),_c('p',[_vm._v(_vm._s(_vm.scenarioDifferences.impactOutputLocationPropertyTitle))]),_c('v-simple-table',{attrs:{\"dense\":\"\"},scopedSlots:_vm._u([{key:\"default\",fn:function(){return [_c('thead',[_c('th',{staticClass:\"text-left tbdc-impact-col1\"},[_vm._v(_vm._s(_vm.$tc(\"message.locationsType\" + _vm.model.locationsType + \"Name\")))]),_c('th',{staticClass:\"text-right tbdc-impact-col2\"},[_vm._v(_vm._s(_vm.$tc(\"message.before\")))]),_c('th',{staticClass:\"text-right tbdc-impact-col3\"},[_vm._v(_vm._s(_vm.$tc(\"message.after\")))]),_c('th',{staticClass:\"text-right tbdc-impact-col4\"},[_vm._v(_vm._s(_vm.$tc(\"message.difference\")))])]),_c('tbody',_vm._l((_vm.scenarioDifferences.locations.slice(0,25)),function(scenarioDifference){return _c('tr',{key:scenarioDifference.locationID},[_c('td',[_vm._v(\" \"+_vm._s(scenarioDifference.locationName)+\" \")]),_c('td',{staticClass:\"text-right\"},[_c('ModelPropertyValue',{attrs:{\"numberValue\":(scenarioDifference.outputDefault == null ? 0 : scenarioDifference.outputDefault),\"model\":_vm.model}})],1),_c('td',{staticClass:\"text-right\"},[_c('ModelPropertyValue',{attrs:{\"numberValue\":(scenarioDifference.output == null ? 0 : scenarioDifference.output),\"model\":_vm.model}})],1),_c('td',{staticClass:\"text-right\",class:{ positiveResult: (scenarioDifference.outputDifference > 0), negativeResult: (scenarioDifference.outputDifference < 0) },staticStyle:{\"white-space\":\"nowrap\"}},[_vm._v(\" \"+_vm._s(scenarioDifference.outputDifference > 0 ? '+':'')+\" \"),_c('ModelPropertyValue',{attrs:{\"numberValue\":scenarioDifference.outputDifference,\"model\":_vm.model}}),_vm._v(\" (\"+_vm._s(_vm._f(\"percentage\")((scenarioDifference.outputDefault == 0 ? 1 : 1 / (scenarioDifference.outputDefault / scenarioDifference.outputDifference))))+\") \")],1)])}),0),_c('tfoot',[_c('tr',[_c('td',[_vm._v(_vm._s(_vm.$tc(\"message.total\")))]),_c('td'),_c('td'),_c('td',{staticClass:\"text-right\"},[_c('ModelPropertyValue',{attrs:{\"numberValue\":_vm.calculateTotelDifference(_vm.scenarioDifferences.locations.slice(0,25)),\"model\":_vm.model}})],1)])])]},proxy:true}],null,false,733875515)})],1),(_vm.model.locationGroupsType == 1 && _vm.scenarioDifferences.locationGroups.length > 1)?_c('section',[_c('h4',[_vm._v(_vm._s(_vm.$tc(\"message.locationsGroupsType\" + _vm.model.locationGroupsType + \"Impact\")))]),_c('v-simple-table',{attrs:{\"dense\":\"\"},scopedSlots:_vm._u([{key:\"default\",fn:function(){return [_c('thead',[_c('th',{staticClass:\"text-left tbdc-impact-col1\"},[_vm._v(_vm._s(_vm.$tc(\"message.locationGroupsType\" + _vm.model.locationGroupsType + \"Name\")))]),_c('th',{staticClass:\"text-right tbdc-impact-col2\"},[_vm._v(_vm._s(_vm.$tc(\"message.before\")))]),_c('th',{staticClass:\"text-right tbdc-impact-col3\"},[_vm._v(_vm._s(_vm.$tc(\"message.after\")))]),_c('th',{staticClass:\"text-right tbdc-impact-col4\"},[_vm._v(_vm._s(_vm.$tc(\"message.difference\")))])]),_c('tbody',_vm._l((_vm.scenarioDifferences.locationGroups),function(scenarioDifference){return _c('tr',{key:scenarioDifference.locationGroupName},[_c('td',[_vm._v(\" \"+_vm._s(scenarioDifference.locationGroupName == null ? _vm.$tc(\"message.locationsGroupsType\" + _vm.model.locationGroupsType + \"EmptyName\") : scenarioDifference.locationGroupName)+\" \")]),_c('td',{staticClass:\"text-right\"},[_c('ModelPropertyValue',{attrs:{\"numberValue\":(scenarioDifference.outputDefault == null ? 0 : scenarioDifference.outputDefault),\"model\":_vm.model}})],1),_c('td',{staticClass:\"text-right\"},[_c('ModelPropertyValue',{attrs:{\"numberValue\":(scenarioDifference.output == null ? 0 : scenarioDifference.output),\"model\":_vm.model}})],1),_c('td',{staticClass:\"text-right\",class:{ positiveResult: (scenarioDifference.outputDifference > 0), negativeResult: (scenarioDifference.outputDifference < 0) },staticStyle:{\"white-space\":\"nowrap\"}},[_vm._v(\" \"+_vm._s(scenarioDifference.outputDifference > 0 ? '+':'')+\" \"),_c('ModelPropertyValue',{attrs:{\"numberValue\":scenarioDifference.outputDifference,\"model\":_vm.model}}),_vm._v(\" (\"+_vm._s(_vm._f(\"percentage\")((scenarioDifference.outputDefault == 0 ? 1 : 1 / (scenarioDifference.outputDefault / scenarioDifference.outputDifference))))+\") \")],1)])}),0)]},proxy:true}],null,false,155961948)})],1):_vm._e(),(_vm.model.locationClustersType == 2 && _vm.scenarioDifferences.locationClusters.length > 1)?_c('section',[_c('h4',[_vm._v(_vm._s(_vm.$tc(\"message.locationsClustersType\" + _vm.model.locationClustersType + \"Impact\")))]),_c('v-simple-table',{attrs:{\"dense\":\"\"},scopedSlots:_vm._u([{key:\"default\",fn:function(){return [_c('thead',[_c('th',{staticClass:\"text-left tbdc-impact-col1\"},[_vm._v(_vm._s(_vm.$tc(\"message.locationClustersType\" + _vm.model.locationClustersType + \"Name\")))]),_c('th',{staticClass:\"text-right tbdc-impact-col2\"},[_vm._v(_vm._s(_vm.$tc(\"message.before\")))]),_c('th',{staticClass:\"text-right tbdc-impact-col3\"},[_vm._v(_vm._s(_vm.$tc(\"message.after\")))]),_c('th',{staticClass:\"text-right tbdc-impact-col4\"},[_vm._v(_vm._s(_vm.$tc(\"message.difference\")))])]),_c('tbody',_vm._l((_vm.scenarioDifferences.locationClusters),function(scenarioDifference){return _c('tr',{key:scenarioDifference.locationClusterName},[_c('td',[_vm._v(\" \"+_vm._s(scenarioDifference.locationClusterName == null ? _vm.$tc(\"message.locationsClustersType\" + _vm.model.locationClustersType + \"EmptyName\") : scenarioDifference.locationClusterName)+\" \")]),_c('td',{staticClass:\"text-right\"},[_c('ModelPropertyValue',{attrs:{\"numberValue\":(scenarioDifference.outputDefault == null ? 0 : scenarioDifference.outputDefault),\"model\":_vm.model}})],1),_c('td',{staticClass:\"text-right\"},[_c('ModelPropertyValue',{attrs:{\"numberValue\":(scenarioDifference.output == null ? 0 : scenarioDifference.output),\"model\":_vm.model}})],1),_c('td',{staticClass:\"text-right\",class:{ positiveResult: (scenarioDifference.outputDifference > 0), negativeResult: (scenarioDifference.outputDifference < 0) },staticStyle:{\"white-space\":\"nowrap\"}},[_vm._v(\" \"+_vm._s(scenarioDifference.outputDifference > 0 ? '+':'')+\" \"),_c('ModelPropertyValue',{attrs:{\"numberValue\":scenarioDifference.outputDifference,\"model\":_vm.model}}),_vm._v(\" (\"+_vm._s(_vm._f(\"percentage\")((scenarioDifference.outputDefault == 0 ? 1 : 1 / (scenarioDifference.outputDefault / scenarioDifference.outputDifference))))+\") \")],1)])}),0)]},proxy:true}],null,false,2173734268)})],1):_vm._e(),_c('section',{staticStyle:{\"pointer-events\":\"none\",\"margin-top\":\"0.5em\"}},[_c('GoogleMap',{staticStyle:{\"width\":\"100%\",\"height\":\"400px\"},attrs:{\"zoom\":11,\"refresh\":_vm.refresh,\"locations\":_vm.differentLocations,\"location\":_vm.centerLocation,\"model\":_vm.model},on:{\"startBusy\":_vm.startBusy,\"endBusy\":_vm.endBusy}})],1),_c('section',[_c('h4',[_vm._v(_vm._s(_vm.$t(\"message.disclaimer\")))]),_c('p',{staticClass:\"font-weight-thin\"},[_vm._v(_vm._s(_vm.$t(\"message.disclaimerContent\")))])])]:_vm._e(),(_vm.model.scenarioReportFormat && _vm.scenarioDifferences)?[(_vm.scenario)?_c('section',[_c('h3',[_vm._v(_vm._s(_vm.scenario.name))])]):_vm._e(),_vm._l((JSON.parse(_vm.model.scenarioReportFormat).components),function(component,index){return [(component.name == 'mapImpact')?_c('section',{key:index,staticStyle:{\"pointer-events\":\"none\",\"margin-top\":\"0.5em\"}},[_c('GoogleMap',{staticStyle:{\"width\":\"100%\",\"height\":\"400px\"},attrs:{\"zoom\":11,\"refresh\":_vm.refresh,\"locations\":_vm.differentLocations,\"location\":_vm.centerLocation,\"model\":_vm.model},on:{\"startBusy\":_vm.startBusy,\"endBusy\":_vm.endBusy}})],1):_vm._e(),(component.name == 'changedlocations')?_c('section',{key:index},[_c('h4',[_vm._v(_vm._s(_vm.$t(\"message.changedLocations\")))]),(_vm.changedLocations.length> 0)?_c('v-simple-table',{attrs:{\"dense\":\"\"},scopedSlots:_vm._u([{key:\"default\",fn:function(){return [_c('thead'),_c('tbody',_vm._l((_vm.changedLocations),function(location){return _c('tr',{key:location.id},[_c('td',[_vm._v(\" \"+_vm._s(location.name)+\" \")]),_c('td',{staticClass:\"text-right\"},[(location.changeType == 1)?_c('span',[_vm._v(\" \"+_vm._s(_vm.$t(\"message.opening\")))]):_vm._e(),(location.changeType == 2)?_c('span',[_vm._v(\" \"+_vm._s(_vm.$t(\"message.closure\")))]):_vm._e(),(location.changeType == 3)?_c('span',[_vm._v(\" \"+_vm._s(_vm.$t(\"message.edited\")))]):_vm._e()])])}),0)]},proxy:true}],null,true)}):_vm._e()],1):_vm._e(),(component.name == 'locationDifferences')?_c('section',{key:index},[_c('h4',[_vm._v(_vm._s(_vm.$tc(\"message.locationsType\" + _vm.model.locationsType + \"Impact\")))]),_c('v-simple-table',{attrs:{\"dense\":\"\"},scopedSlots:_vm._u([{key:\"default\",fn:function(){return [_c('thead',[_c('th',{staticClass:\"text-left tbdc-impact-col1\"},[_vm._v(_vm._s(_vm.$tc(\"message.locationsType\" + _vm.model.locationsType + \"Name\")))]),_c('th',{staticClass:\"text-right tbdc-impact-col2\"},[_vm._v(_vm._s(_vm.$tc(\"message.before\")))]),_c('th',{staticClass:\"text-right tbdc-impact-col3\"},[_vm._v(_vm._s(_vm.$tc(\"message.after\")))]),_c('th',{staticClass:\"text-right tbdc-impact-col4\"},[_vm._v(_vm._s(_vm.$tc(\"message.difference\")))])]),_c('tbody',_vm._l((_vm.scenarioDifferences.locations.slice(0,25)),function(scenarioDifference){return _c('tr',{key:scenarioDifference.locationID},[_c('td',[_vm._v(\" \"+_vm._s(scenarioDifference.locationName)+\" \")]),_c('td',{staticClass:\"text-right\"},[_c('ModelPropertyValue',{attrs:{\"numberValue\":(scenarioDifference.outputDefault == null ? 0 : scenarioDifference.outputDefault),\"model\":_vm.model}})],1),_c('td',{staticClass:\"text-right\"},[_c('ModelPropertyValue',{attrs:{\"numberValue\":(scenarioDifference.output == null ? 0 : scenarioDifference.output),\"model\":_vm.model}})],1),_c('td',{staticClass:\"text-right\",class:{ positiveResult: (scenarioDifference.outputDifference > 0), negativeResult: (scenarioDifference.outputDifference < 0) },staticStyle:{\"white-space\":\"nowrap\"}},[_vm._v(\" \"+_vm._s(scenarioDifference.outputDifference > 0 ? '+':'')+\" \"),_c('ModelPropertyValue',{attrs:{\"numberValue\":scenarioDifference.outputDifference,\"model\":_vm.model}}),_vm._v(\" (\"+_vm._s(_vm._f(\"percentage\")((scenarioDifference.outputDefault == 0 ? 1 : 1 / (scenarioDifference.outputDefault / scenarioDifference.outputDifference))))+\") \")],1)])}),0),_c('tfoot',[_c('tr',[_c('td',[_vm._v(_vm._s(_vm.$tc(\"message.total\")))]),_c('td'),_c('td'),_c('td',{staticClass:\"text-right\"},[_c('ModelPropertyValue',{attrs:{\"numberValue\":_vm.calculateTotelDifference(_vm.scenarioDifferences.locations.slice(0,25)),\"model\":_vm.model}})],1)])])]},proxy:true}],null,true)})],1):_vm._e(),(component.name == 'locationGroupDifferences')?_c('section',{key:index},[_c('h4',[_vm._v(_vm._s(_vm.$tc(\"message.locationsGroupsType\" + _vm.model.locationGroupsType + \"Impact\")))]),_c('v-simple-table',{attrs:{\"dense\":\"\"},scopedSlots:_vm._u([{key:\"default\",fn:function(){return [_c('thead',[_c('th',{staticClass:\"text-left tbdc-impact-col1\"},[_vm._v(_vm._s(_vm.$tc(\"message.locationGroupsType\" + _vm.model.locationGroupsType + \"Name\")))]),_c('th',{staticClass:\"text-right tbdc-impact-col2\"},[_vm._v(_vm._s(_vm.$tc(\"message.before\")))]),_c('th',{staticClass:\"text-right tbdc-impact-col3\"},[_vm._v(_vm._s(_vm.$tc(\"message.after\")))]),_c('th',{staticClass:\"text-right tbdc-impact-col4\"},[_vm._v(_vm._s(_vm.$tc(\"message.difference\")))])]),_c('tbody',_vm._l((_vm.scenarioDifferences.locationGroups),function(scenarioDifference){return _c('tr',{key:scenarioDifference.locationGroupName},[_c('td',[_vm._v(\" \"+_vm._s(scenarioDifference.locationGroupName == null ? _vm.$tc(\"message.locationsGroupsType\" + _vm.model.locationGroupsType + \"EmptyName\") : scenarioDifference.locationGroupName)+\" \")]),_c('td',{staticClass:\"text-right\"},[_c('ModelPropertyValue',{attrs:{\"numberValue\":(scenarioDifference.outputDefault == null ? 0 : scenarioDifference.outputDefault),\"model\":_vm.model}})],1),_c('td',{staticClass:\"text-right\"},[_c('ModelPropertyValue',{attrs:{\"numberValue\":(scenarioDifference.output == null ? 0 : scenarioDifference.output),\"model\":_vm.model}})],1),_c('td',{staticClass:\"text-right\",class:{ positiveResult: (scenarioDifference.outputDifference > 0), negativeResult: (scenarioDifference.outputDifference < 0) },staticStyle:{\"white-space\":\"nowrap\"}},[_vm._v(\" \"+_vm._s(scenarioDifference.outputDifference > 0 ? '+':'')+\" \"),_c('ModelPropertyValue',{attrs:{\"numberValue\":scenarioDifference.outputDifference,\"model\":_vm.model}}),_vm._v(\" (\"+_vm._s(_vm._f(\"percentage\")((scenarioDifference.outputDefault == 0 ? 1 : 1 / (scenarioDifference.outputDefault / scenarioDifference.outputDifference))))+\") \")],1)])}),0)]},proxy:true}],null,true)})],1):_vm._e(),(component.name == 'locationClusterDifferences')?_c('section',{key:index},[_c('h4',[_vm._v(_vm._s(_vm.$tc(\"message.locationsClustersType\" + _vm.model.locationClustersType + \"Impact\")))]),_c('v-simple-table',{attrs:{\"dense\":\"\"},scopedSlots:_vm._u([{key:\"default\",fn:function(){return [_c('thead',[_c('th',{staticClass:\"text-left tbdc-impact-col1\"},[_vm._v(_vm._s(_vm.$tc(\"message.locationClustersType\" + _vm.model.locationClustersType + \"Name\")))]),_c('th',{staticClass:\"text-right tbdc-impact-col2\"},[_vm._v(_vm._s(_vm.$tc(\"message.before\")))]),_c('th',{staticClass:\"text-right tbdc-impact-col3\"},[_vm._v(_vm._s(_vm.$tc(\"message.after\")))]),_c('th',{staticClass:\"text-right tbdc-impact-col4\"},[_vm._v(_vm._s(_vm.$tc(\"message.difference\")))])]),_c('tbody',_vm._l((_vm.scenarioDifferences.locationClusters),function(scenarioDifference){return _c('tr',{key:scenarioDifference.locationClusterName},[_c('td',[_vm._v(\" \"+_vm._s(scenarioDifference.locationClusterName == null ? _vm.$tc(\"message.locationsClustersType\" + _vm.model.locationClustersType + \"EmptyName\") : scenarioDifference.locationClusterName)+\" \")]),_c('td',{staticClass:\"text-right\"},[_c('ModelPropertyValue',{attrs:{\"numberValue\":(scenarioDifference.outputDefault == null ? 0 : scenarioDifference.outputDefault),\"model\":_vm.model}})],1),_c('td',{staticClass:\"text-right\"},[_c('ModelPropertyValue',{attrs:{\"numberValue\":(scenarioDifference.output == null ? 0 : scenarioDifference.output),\"model\":_vm.model}})],1),_c('td',{staticClass:\"text-right\",class:{ positiveResult: (scenarioDifference.outputDifference > 0), negativeResult: (scenarioDifference.outputDifference < 0) },staticStyle:{\"white-space\":\"nowrap\"}},[_vm._v(\" \"+_vm._s(scenarioDifference.outputDifference > 0 ? '+':'')+\" \"),_c('ModelPropertyValue',{attrs:{\"numberValue\":scenarioDifference.outputDifference,\"model\":_vm.model}}),_vm._v(\" (\"+_vm._s(_vm._f(\"percentage\")((scenarioDifference.outputDefault == 0 ? 1 : 1 / (scenarioDifference.outputDefault / scenarioDifference.outputDifference))))+\") \")],1)])}),0)]},proxy:true}],null,true)})],1):_vm._e(),(component.name == 'disclaimer')?_c('section',{key:index},[_c('h4',[_vm._v(_vm._s(_vm.$t(\"message.disclaimer\")))]),_c('p',{staticClass:\"font-weight-thin\"},[_vm._v(_vm._s(_vm.$t(\"message.disclaimerContent\")))])]):_vm._e(),(component.name == 'textSection')?_c('section',{key:index},[_c('h4',[_vm._v(_vm._s(component.title))]),_vm._l((component.paragraphs),function(paragraph,index){return _c('p',{key:index,class:paragraph.class},[_vm._v(_vm._s(paragraph.content))])})],2):_vm._e()]})]:_vm._e(),_c('p',{staticClass:\"font-weight-thin\"},[_vm._v(_vm._s(_vm.model.name)+\" (\"+_vm._s(_vm.model.id)+\"/\"+_vm._s(_vm.scenario.id)+\") \"+_vm._s(_vm.environment == 'Production' ? '' : _vm.environment))])],2),_c('v-card-actions',{staticClass:\"d-print-none\"},[_c('div',{staticClass:\"flex-grow-1\"}),_c('v-btn',{attrs:{\"color\":\"primary\",\"text\":\"\"},on:{\"click\":function($event){return _vm.Window.print();}}},[_vm._v(_vm._s(_vm.$t(\"message.print\")))]),_c('v-btn',{attrs:{\"color\":\"primary\",\"text\":\"\"},on:{\"click\":_vm.close}},[_vm._v(\" \"+_vm._s(_vm.$t(\"message.close\"))+\" \")])],1)],1):_vm._e()],1)])\n}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","var render = function render(){var _vm=this,_c=_vm._self._c,_setup=_vm._self._setupProxy;return _c('span',[(_vm.model.outputType == 1)?_c('span',[_c('PropertyValue',{attrs:{\"property\":{numberValue: _vm.numberValue, dataType: 3 },\"currency\":_vm.model.currency,\"onlyCurrentValue\":true}})],1):_vm._e(),(_vm.model.outputType == 2)?_c('span',[_c('PropertyValue',{attrs:{\"property\":{numberValue: _vm.numberValue, dataType: 1, roundingDigits: 0 },\"onlyCurrentValue\":true}})],1):_vm._e(),(_vm.model.outputType == 3)?_c('span',[_c('PropertyValue',{attrs:{\"property\":{numberValue: _vm.numberValue, dataType: 3 },\"currency\":_vm.model.currency,\"onlyCurrentValue\":true}})],1):_vm._e(),(_vm.model.outputType == 4)?_c('span',[_c('PropertyValue',{attrs:{\"property\":{numberValue: _vm.numberValue, dataType: 3, roundingDigits: 0 },\"onlyCurrentValue\":true}})],1):_vm._e()])\n}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","\r\n import { Component, Vue, Prop } from 'vue-property-decorator';\r\n import PropertyValue from '@/components/main/PropertyValue.vue'\r\n\r\n @Component({\r\n components: {\r\n PropertyValue\r\n },\r\n })\r\n export default class ModelPropertyValue extends Vue {\r\n @Prop({ default: null }) public model: any;\r\n @Prop({ default: null }) public numberValue: any;\r\n \r\n }\r\n","import mod from \"-!../../../node_modules/thread-loader/dist/cjs.js!../../../node_modules/babel-loader/lib/index.js!../../../node_modules/ts-loader/index.js??clonedRuleSet-41.use[2]!../../../node_modules/@vue/vue-loader-v15/lib/index.js??vue-loader-options!./ModelPropertyValue.vue?vue&type=script&lang=ts&\"; export default mod; export * from \"-!../../../node_modules/thread-loader/dist/cjs.js!../../../node_modules/babel-loader/lib/index.js!../../../node_modules/ts-loader/index.js??clonedRuleSet-41.use[2]!../../../node_modules/@vue/vue-loader-v15/lib/index.js??vue-loader-options!./ModelPropertyValue.vue?vue&type=script&lang=ts&\"","import { render, staticRenderFns } from \"./ModelPropertyValue.vue?vue&type=template&id=6284766e&\"\nimport script from \"./ModelPropertyValue.vue?vue&type=script&lang=ts&\"\nexport * from \"./ModelPropertyValue.vue?vue&type=script&lang=ts&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../node_modules/@vue/vue-loader-v15/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","\r\n import { Component, Vue, Prop } from 'vue-property-decorator';\r\n import GoogleMap from '@/components/main/GoogleMap.vue'\r\n import ModelPropertyValue from '@/components/main/ModelPropertyValue.vue'\r\n @Component({\r\n components: {\r\n ModelPropertyValue,\r\n GoogleMap\r\n \r\n },\r\n })\r\n export default class ScenarioReport extends Vue {\r\n private refresh = 1;\r\n @Prop({ default: false }) public disabled: any;\r\n @Prop({ default: null }) public model: any;\r\n @Prop({ default: null }) public locations: any;\r\n @Prop({ default: null }) public scenario: any;\r\n @Prop({ default: null }) public scenarioDifferences: any;\r\n @Prop({ default: null }) public show: any;\r\n @Prop({ default: null }) public environment: any;\r\n\r\n get changedLocations() {\r\n return this.locations.filter(function (location: any) {\r\n return location.changeType != 0;\r\n });\r\n }\r\n\r\n private async close() {\r\n this.localShow = false;\r\n }\r\n\r\n\r\n private calculateTotelDifference(locations : any) {\r\n let sumOutputDifference = locations.reduce((sum : any, location : any) => {\r\n return sum + location.outputDifference;\r\n }, 0);\r\n return sumOutputDifference;\r\n }\r\n \r\n\r\n \r\n\r\n get differentLocations() {\r\n const _self = this;\r\n return this.locations.filter(function (location: any) {\r\n let returnValue = false;\r\n if (_self.scenarioDifferences) {\r\n _self.scenarioDifferences.locations.forEach(function (differentLocation: any) {\r\n if (differentLocation.locationId == location.id) {\r\n returnValue = true;\r\n }\r\n });\r\n }\r\n return returnValue;\r\n });\r\n }\r\n\r\n get centerLocation() {\r\n return this.changedLocations[0];\r\n }\r\n\r\n private startBusy() {\r\n this.$emit('startBusy');\r\n }\r\n\r\n private endBusy() {\r\n this.$emit('endBusy');\r\n }\r\n\r\n private get localShow() {\r\n return this.show;\r\n }\r\n\r\n private set localShow(value: any) {\r\n this.$emit(\"showChanged\", value);\r\n }\r\n\r\n public get account() {\r\n return this.$msal.account();\r\n }\r\n }\r\n","import mod from \"-!../../../node_modules/thread-loader/dist/cjs.js!../../../node_modules/babel-loader/lib/index.js!../../../node_modules/ts-loader/index.js??clonedRuleSet-41.use[2]!../../../node_modules/@vue/vue-loader-v15/lib/index.js??vue-loader-options!./ScenarioReport.vue?vue&type=script&lang=ts&\"; export default mod; export * from \"-!../../../node_modules/thread-loader/dist/cjs.js!../../../node_modules/babel-loader/lib/index.js!../../../node_modules/ts-loader/index.js??clonedRuleSet-41.use[2]!../../../node_modules/@vue/vue-loader-v15/lib/index.js??vue-loader-options!./ScenarioReport.vue?vue&type=script&lang=ts&\"","import { render, staticRenderFns } from \"./ScenarioReport.vue?vue&type=template&id=3e0c159c&\"\nimport script from \"./ScenarioReport.vue?vue&type=script&lang=ts&\"\nexport * from \"./ScenarioReport.vue?vue&type=script&lang=ts&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../node_modules/@vue/vue-loader-v15/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","var render = function render(){var _vm=this,_c=_vm._self._c,_setup=_vm._self._setupProxy;return (_vm.data != null)?_c('div',[_c('v-row',[_c('v-col',{attrs:{\"cols\":\"4\"}},[_c('v-checkbox',{attrs:{\"value\":\"8\",\"label\":_vm.$t(\"message.information\")},model:{value:(_vm.eventType),callback:function ($$v) {_vm.eventType=$$v},expression:\"eventType\"}})],1),_c('v-col',{attrs:{\"cols\":\"4\"}},[_c('v-checkbox',{attrs:{\"value\":\"4\",\"label\":_vm.$t(\"message.warning\")},model:{value:(_vm.eventType),callback:function ($$v) {_vm.eventType=$$v},expression:\"eventType\"}})],1),_c('v-col',{attrs:{\"cols\":\"4\"}},[_c('v-checkbox',{attrs:{\"value\":\"2\",\"label\":_vm.$t(\"message.error\")},model:{value:(_vm.eventType),callback:function ($$v) {_vm.eventType=$$v},expression:\"eventType\"}})],1)],1),_c('v-row',[_c('v-col',{attrs:{\"cols\":\"11\"}},[_c('v-select',{attrs:{\"label\":_vm.$t(\"message.source\"),\"items\":_vm.getSources()},model:{value:(_vm.source),callback:function ($$v) {_vm.source=$$v},expression:\"source\"}})],1),_c('v-col',{attrs:{\"cols\":\"1\"}},[_c('v-btn',{attrs:{\"icon\":\"\"},on:{\"click\":_vm.onEventTypeChanged}},[_c('v-icon',{attrs:{\"color\":\"#009cbb\"}},[_vm._v(\"mdi-refresh\")])],1)],1)],1),_c('v-data-table',{attrs:{\"headers\":_vm.headers,\"items\":_vm.data,\"items-per-page\":10},scopedSlots:_vm._u([{key:`item.eventType`,fn:function({ item }){return [(item.eventType == 8)?_c('span',[_vm._v(_vm._s(_vm.$t(\"message.information\")))]):_vm._e(),(item.eventType == 4)?_c('span',[_vm._v(_vm._s(_vm.$t(\"message.warning\")))]):_vm._e(),(item.eventType == 2)?_c('span',[_vm._v(_vm._s(_vm.$t(\"message.error\")))]):_vm._e()]}}],null,true)})],1):_vm._e()\n}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","\r\n import { Component, Vue, Prop, Watch } from 'vue-property-decorator';\r\n\r\n @Component\r\n export default class Log extends Vue {\r\n\r\n \r\n\r\n private eventType: any[] = [\"2\", \"4\", \"8\"];\r\n private source: any = '';\r\n\r\n private getSources() {\r\n var sources: any = [''];\r\n sources.push('TheBigDataCompany.IRIS.Web.Backend');\r\n sources.push('TheBigDataCompany.IRIS.Processing.Scenarios');\r\n sources.push('TheBigDataCompany.IRIS.Processing.IsoLines');\r\n return sources;\r\n }\r\n\r\n @Watch('eventType')\r\n @Watch('source')\r\n private onEventTypeChanged() {\r\n let eventType = 0;\r\n if (this.eventType) {\r\n this.eventType.forEach(function (singleValue: any) { \r\n \r\n eventType = eventType | singleValue; \r\n \r\n });\r\n }\r\n this.$emit(\"fetchLog\", { eventType: eventType, source: this.source });\r\n }\r\n \r\n @Prop({ default: null }) public data: any;\r\n\r\n @Watch('data')\r\n private onDataChanged(value: any, oldValue: any)\r\n {\r\n if (oldValue == null && value != null) {\r\n this.eventType = [\"2\", \"4\", \"8\"];\r\n this.source = '';\r\n }\r\n }\r\n \r\n\r\n get headers(): any {\r\n const h = [\r\n {\r\n text: this.$t(\"message.dateAndTime\"),\r\n align: 'start',\r\n sortable: false,\r\n value: 'dateTimeUtc',\r\n },\r\n {\r\n text: this.$t(\"message.user\"),\r\n align: 'start',\r\n sortable: false,\r\n value: 'user',\r\n },\r\n {\r\n text: this.$t(\"message.source\"),\r\n align: 'start',\r\n sortable: false,\r\n value: 'source',\r\n },\r\n {\r\n text: this.$t(\"message.eventType\"),\r\n align: 'start',\r\n sortable: false,\r\n value: 'eventType',\r\n },\r\n {\r\n text: this.$t(\"message.message\"),\r\n align: 'start',\r\n sortable: false,\r\n value: 'message',\r\n }\r\n \r\n ];\r\n \r\n return h;\r\n }\r\n }\r\n","import mod from \"-!../../../node_modules/thread-loader/dist/cjs.js!../../../node_modules/babel-loader/lib/index.js!../../../node_modules/ts-loader/index.js??clonedRuleSet-41.use[2]!../../../node_modules/@vue/vue-loader-v15/lib/index.js??vue-loader-options!./Log.vue?vue&type=script&lang=ts&\"; export default mod; export * from \"-!../../../node_modules/thread-loader/dist/cjs.js!../../../node_modules/babel-loader/lib/index.js!../../../node_modules/ts-loader/index.js??clonedRuleSet-41.use[2]!../../../node_modules/@vue/vue-loader-v15/lib/index.js??vue-loader-options!./Log.vue?vue&type=script&lang=ts&\"","import { render, staticRenderFns } from \"./Log.vue?vue&type=template&id=20fcdf8c&\"\nimport script from \"./Log.vue?vue&type=script&lang=ts&\"\nexport * from \"./Log.vue?vue&type=script&lang=ts&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../node_modules/@vue/vue-loader-v15/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","\r\n import { Component, Vue,Watch } from 'vue-property-decorator';\r\n import { Action, Getter, Mutation } from 'vuex-class';\r\n import FloatingMenu from '@/components/main/FloatingMenu.vue';\r\n import EditModelParameters from '@/components/main/EditModelParameters.vue';\r\n import LocationInformation from '@/components/main/LocationInformation.vue';\r\n import EditDrivers from '@/components/main/EditDrivers.vue';\r\n import LocationScores from '@/components/main/LocationScores.vue';\r\n import Dialog from '@/components/main/Dialog.vue';\r\n import GoogleMap from '@/components/main/GoogleMap.vue';\r\n import ModelOutput from '@/components/main/ModelOutput.vue';\r\n import ScenarioProcessingLog from '@/components/main/ScenarioProcessingLog.vue';\r\n import CatchmentAreaInformation from '@/components/main/CatchmentAreaInformation.vue';\r\n import MatchingLocations from '@/components/main/MatchingLocations.vue';\r\n import EditLocation from '@/components/main/EditLocation.vue';\r\n import AreaInformation from '@/components/main/AreaInformation.vue';\r\n import EditScenario from '@/components/main/EditScenario.vue';\r\n import CloseLocation from '@/components/main/CloseLocation.vue';\r\n import EditScenarioName from '@/components/main/EditScenarioName.vue';\r\n import CopyChanges from '@/components/main/CopyChanges.vue';\r\n import AreaScores from '@/components/main/AreaScores.vue';\r\n import EditNormalizedScoresFunctions from '@/components/main/EditNormalizedScoresFunctions.vue';\r\n import MatchingLocationsOutputChart from '@/components/main/MatchingLocationsOutputChart.vue';\r\n import MatchingLocationsRadarChart from '@/components/main/MatchingLocationsRadarChart.vue';\r\n import DriversChart from '@/components/main/DriversChart.vue';\r\n import PropertiesChart from '@/components/main/PropertiesChart.vue';\r\n import LocationReport from '@/components/main/LocationReport.vue';\r\n import ScenarioReport from '@/components/main/ScenarioReport.vue';\r\n import Log from '@/components/main/Log.vue';\r\n const namespace = 'main';\r\n\r\n @Component({\r\n components: {\r\n AreaScores,\r\n FloatingMenu,\r\n EditModelParameters,\r\n EditDrivers,\r\n EditLocation,\r\n CloseLocation,\r\n EditScenario,\r\n CopyChanges,\r\n EditNormalizedScoresFunctions,\r\n GoogleMap,\r\n LocationInformation,\r\n ModelOutput,\r\n CatchmentAreaInformation,\r\n ScenarioProcessingLog,\r\n LocationScores,\r\n Dialog,\r\n AreaInformation,\r\n MatchingLocations,\r\n MatchingLocationsOutputChart,\r\n MatchingLocationsRadarChart,\r\n DriversChart,\r\n PropertiesChart,\r\n LocationReport,\r\n ScenarioReport,\r\n EditScenarioName,\r\n Log\r\n },\r\n })\r\n export default class Home extends Vue {\r\n\r\n @Getter('getDrivers', { namespace }) getDrivers: any;\r\n @Getter('getModelParameters', { namespace }) getModelParameters: any;\r\n @Getter('getNormalizedScoresFunctions', { namespace }) getNormalizedScoresFunctions: any;\r\n @Action('calculateScenario', { namespace }) calculateScenario: any;\r\n \r\n private rightClick(args: any) {\r\n this.mapContextMenuArguments = args;\r\n this.locationContextMenuArguments = null;\r\n }\r\n\r\n private leftClickLocation(args: any) {\r\n \r\n this.setLocation(args.location);\r\n }\r\n\r\n private async leftClickScenarioLocation(args: any) {\r\n \r\n await this.setScenarioById(args.scenarioLocation.scenarioId);\r\n await this.setLocationById(args.scenarioLocation.locationId);\r\n }\r\n\r\n private rightClickLocation(args: any) {\r\n this.mapContextMenuArguments = null;\r\n this.locationContextMenuArguments = args;\r\n }\r\n\r\n\r\n private navigateTo(url: any) {\r\n window.open(url, \"_blank\");\r\n }\r\n\r\n private locationContextMenuArguments: any = null;\r\n private mapContextMenuArguments: any = null;\r\n\r\n private leftDrawer = {\r\n width: window.innerWidth > 1200 ? 400 : window.innerWidth / 3\r\n };\r\n private rightDrawer = {\r\n width: window.innerWidth > 1200 ? 400 : window.innerWidth / 3\r\n };\r\n \r\n private convertToDMS(degree) {\r\n const absolute = Math.abs(degree);\r\n const degrees = Math.floor(absolute);\r\n const minutesNotTruncated = (absolute - degrees) * 60;\r\n const minutes = Math.floor(minutesNotTruncated);\r\n const seconds = ((minutesNotTruncated - minutes) * 60).toFixed(2);\r\n \r\n return { degrees, minutes, seconds };\r\n }\r\n private formatCoordinates(latitude, longitude) {\r\n const latDMS = this.convertToDMS(latitude);\r\n const lonDMS = this.convertToDMS(longitude);\r\n \r\n // Determine the direction (N/S/E/W) based on the sign of the coordinates\r\n const latDirection = latitude >= 0 ? 'N' : 'S';\r\n const lonDirection = longitude >= 0 ? 'E' : 'W';\r\n \r\n // Format the coordinates with degrees, minutes, and seconds\r\n const formattedLat = `${latDMS.degrees}° ${latDMS.minutes}′ ${latDMS.seconds}″ ${latDirection}`;\r\n const formattedLon = `${lonDMS.degrees}° ${lonDMS.minutes}′ ${lonDMS.seconds}″ ${lonDirection}`;\r\n \r\n // Return the formatted coordinates\r\n return `${formattedLat}, ${formattedLon}`;\r\n }\r\n\r\n\r\n private locationReportVisible: any = false;\r\n private scenarioReportVisible: any = false;\r\n private matchingLocationsOutputChartVisible: any = false;\r\n private matchingLocationsRadarChartVisible: any = false;\r\n private driversChartVisible: any = false;\r\n private propertiesChartVisible: any = false;\r\n private locationScoresVisible: any = false;\r\n private areaScoresVisible: any = false;\r\n private logVisible: any = false;\r\n @Getter('getNotificationText') getNotificationText!: string;\r\n @Mutation('SET_NOTIFICATIONTEXT') setNotificationText: any;\r\n @Getter('getFilterLocations', { namespace }) getFilterLocations: any;\r\n @Getter('getSearchResults', { namespace }) getSearchResults: any;\r\n @Getter('getCatchmentArea', { namespace }) getCatchmentArea: any;\r\n @Getter('getReadOnly', { namespace }) getReadOnly: any;\r\n @Getter('getPois', { namespace }) getPois: any;\r\n @Getter('getHeatMapPoints', { namespace }) getHeatMapPoints: any;\r\n @Getter('getEnvironment') getEnvironment!: any;\r\n @Getter('getModels', { namespace }) getModels: any;\r\n @Getter('getArea', { namespace }) getArea: any;\r\n @Getter('getModel', { namespace }) getModel: any;\r\n @Getter('getSubModel', { namespace }) getSubModel: any;\r\n @Action('setModel', { namespace }) setModel: any;\r\n @Getter('getScenarios', { namespace }) getScenarios: any;\r\n @Getter('getScenarioLocationsVisible', { namespace }) getScenarioLocationsVisible: any;\r\n @Getter('getScenarioLocations', { namespace }) getScenarioLocations: any;\r\n @Getter('getScenario', { namespace }) getScenario: any;\r\n @Getter('getAreaSetsVisible', { namespace }) getAreaSetsVisible: any;\r\n @Getter('getLocation', { namespace }) getLocation: any;\r\n @Getter('getLocationPhoto', { namespace }) getLocationPhoto: any;\r\n @Getter('getLocations', { namespace }) getLocations: any;\r\n @Action('setScenario', { namespace }) setScenario: any;\r\n @Action('setScenarioById', { namespace }) setScenarioById: any;\r\n @Action('setLocationById', { namespace }) setLocationById: any;\r\n @Action('setLocationByIdWithFocus', { namespace }) setLocationByIdWithFocus: any;\r\n @Getter('getScenarioDifferences', { namespace }) getScenarioDifferences: any;\r\n @Getter('getMatchingLocations', { namespace }) getMatchingLocations: any;\r\n @Getter('getMatchingScores', { namespace }) getMatchingScores: any;\r\n @Getter('getLocationDrivers', { namespace }) getLocationDrivers: any;\r\n @Getter('getPropertiesChart', { namespace }) getPropertiesChart: any;\r\n @Getter('getMatchingColors', { namespace }) getMatchingColors: any;\r\n @Getter('getLog', { namespace }) getLog: any;\r\n @Action('setLocation', { namespace }) setLocation: any;\r\n @Getter('getLocationProperties', { namespace }) getLocationProperties: any;\r\n @Getter('getLocationPropertiesOld', { namespace }) getLocationPropertiesOld: any;\r\n \r\n @Getter('getLocationScores', { namespace }) getLocationScores: any;\r\n @Getter('getLocationGroupProperties', { namespace }) getLocationGroupProperties: any;\r\n @Getter('getLocationCluster', { namespace }) getLocationCluster: any;\r\n @Getter('getLocationIsoLines', { namespace }) getLocationIsoLines: any;\r\n @Getter('getLocationCatchmentArea', { namespace }) getLocationCatchmentArea: any;\r\n @Getter('getProcessingLog', { namespace }) getProcessingLog: any;\r\n @Getter('getScenarioProcessingLog', { namespace }) getScenarioProcessingLog: any;\r\n @Getter('getIsoLineSet', { namespace }) getIsoLineSet: any;\r\n @Getter('getIsoLineMinutes', { namespace }) getIsoLineMinutes: any;\r\n @Mutation('SET_LOCATIONDRIVERS', { namespace }) setLocationDrivers: any;\r\n @Mutation('SET_LOG', { namespace }) setLog: any;\r\n @Mutation('SET_MAPBOUNDS', { namespace }) setMapBounds: any;\r\n @Action('fetchAreaWithLocations', { namespace }) fetchAreaWithLocations: any;\r\n @Action('showPropertiesChart', { namespace }) showPropertiesChart: any;\r\n @Action('fetchPropertiesChartData', { namespace }) fetchPropertiesChartData: any;\r\n @Action('fetchArea', { namespace }) fetchArea: any;\r\n @Action('fetchLocationScores', { namespace }) fetchLocationScores: any;\r\n @Action('fetchDriversForLocation', { namespace }) fetchDriversForLocation: any;\r\n @Action('fetchMatchingScores', { namespace }) fetchMatchingScores: any;\r\n @Action('fetchScenarioParents', { namespace }) fetchScenarioParents: any;\r\n @Action('clearModelArea', { namespace }) clearModelArea: any;\r\n @Action('clearArea', { namespace }) clearArea: any;\r\n @Getter('getLocationTravelTimeMode', { namespace }) getLocationTravelTimeMode: any;\r\n @Getter('getLocationTravelTimeMinutes', { namespace }) getLocationTravelTimeMinutes: any;\r\n @Action('saveModelParameters', { namespace }) saveModelParameters: any;\r\n @Action('saveNormalizedScoresFunctions', { namespace }) saveNormalizedScoresFunctions: any;\r\n @Action('saveDrivers', { namespace }) saveDrivers: any;\r\n @Action('editNewLocation', { namespace }) editNewLocation: any;\r\n @Getter('getLocationEditing', { namespace }) getLocationEditing: any;\r\n @Getter('getLocationClosing', { namespace }) getLocationClosing: any;\r\n @Action('saveLocationEditing', { namespace }) saveLocationEditing: any;\r\n @Action('saveLocationClosing', { namespace }) saveLocationClosing: any;\r\n \r\n @Getter('getScenarioEditing', { namespace }) getScenarioEditing: any;\r\n @Getter('getScenarioNameEditing', { namespace }) getScenarioNameEditing: any;\r\n @Getter('getScenarioMerging', { namespace }) getScenarioMerging: any;\r\n\t\t@Getter('getOnlinePois', { namespace }) getOnlinePois: any;\r\n @Action('saveScenarioEditing', { namespace }) saveScenarioEditing: any;\r\n @Action('saveScenarioNameEditing', { namespace }) saveScenarioNameEditing: any;\r\n @Action('closeLocation', { namespace }) closeLocation: any;\r\n @Action('undoCloseLocation', { namespace }) undoCloseLocation: any;\r\n @Action('undoEditLocation', { namespace }) undoEditLocation: any;\r\n @Action('removeLocation', { namespace }) removeLocation: any;\r\n @Action('fetchScenarioDifferences', { namespace }) fetchScenarioDifferences: any;\r\n @Action('clearScenarioDifferences', { namespace }) clearScenarioDifferences: any;\r\n @Action('setLocationPropertiesVisibility', { namespace }) setLocationPropertiesVisibility: any;\r\n @Mutation('SET_STARTBUSY') setStartBusy: any;\r\n @Mutation('SET_ENDBUSY') setEndBusy: any;\r\n @Mutation('SET_STARTINPROGRESS') setStartInProgress: any;\r\n @Mutation('SET_ENDINPROGRESS') setEndInProgress: any;\r\n \r\n @Getter('getActiveCatchmentAreaId', { namespace }) getActiveCatchmentAreaId: any;\r\n @Action('editExistingLocation', { namespace }) editExistingLocation: any;\r\n @Action('fetchModels', { namespace }) fetchModels: any;\r\n @Getter('getIsLoggedIn') getIsLoggedIn: any;\r\n @Action('fetchLog', { namespace }) fetchLog: any;\r\n @Action('saveMergingScenario',{ namespace}) saveMergingScenario: any;\r\n\r\n @Watch('getIsLoggedIn')\r\n private onGetIsLoggedInChanged() {\r\n this.fetchModels();\r\n }\r\n\r\n private async editNewLocationWithDefaultCheck(payload: any) {\r\n this.editNewLocation(payload);\r\n }\r\n\r\n private async editLocation(payload: any) {\r\n if (this.getLocation == null || payload.id != this.getLocation.id) await this.setLocation(payload);\r\n this.editExistingLocation();\r\n }\r\n\r\n private async confirmRemoveLocation(location : any) {\r\n const res = await this.$confirm(String(this.$t('message.confirmRemoveLocation')), { buttonTrueText: String(this.$t('message.yes')), buttonFalseText: String(this.$t('message.no')) });\r\n if (res) this.removeLocation(location);\r\n }\r\n\r\n private async confirmUndoEditLocation(location: any) {\r\n const res = await this.$confirm(String(this.$t('message.confirmUndoEditLocation')), { buttonTrueText: String(this.$t('message.yes')), buttonFalseText: String(this.$t('message.no')) });\r\n if (res) this.undoEditLocation(location);\r\n }\r\n\r\n \r\n get models(): any {\r\n return this.getModels;\r\n }\r\n\r\n get model(): any {\r\n return this.getModel;\r\n }\r\n\r\n set model(value: any) {\r\n this.setModel(value);\r\n }\r\n\r\n get scenarios(): any {\r\n return this.getScenarios;\r\n }\r\n\r\n get scenarioLocations(): any {\r\n return this.getScenarioLocations;\r\n }\r\n\r\n get scenario(): any {\r\n return this.getScenario;\r\n }\r\n\r\n set scenario(value: any) {\r\n this.setScenario(value);\r\n }\r\n\r\n get locations(): any {\r\n return this.getLocations;\r\n }\r\n\r\n get location(): any {\r\n return this.getLocation;\r\n }\r\n\r\n set location(value: any) {\r\n this.setLocation(value);\r\n }\r\n\r\n get changedLocations() {\r\n return this.locations.filter(function (location: any) {\r\n return location.changeType != 0;\r\n });\r\n }\r\n\r\n get visibleAreaSets() {\r\n const _self = this;\r\n return _self.getModel.areaSets.filter(function (areaSet: any) {\r\n return _self.getAreaSetsVisible.includes(areaSet.id);\r\n });\r\n }\r\n\r\n private editLocationChanged(properties: any) {\r\n this.setLocationPropertiesVisibility(properties);\r\n }\r\n\r\n private async showDriversChart() {\r\n await this.fetchDriversForLocation();\r\n this.driversChartVisible = true;\r\n }\r\n\r\n private async saveMergingScenarioLocal() {\r\n\r\n \r\n await this.saveMergingScenario();\r\n \r\n }\r\n\r\n\r\n private async showMatchingScores() {\r\n await this.fetchMatchingScores();\r\n this.matchingLocationsRadarChartVisible = true;\r\n }\r\n\r\n private async showLocationReport() {\r\n await this.fetchDriversForLocation();\r\n await this.fetchMatchingScores();\r\n this.locationReportVisible = false;\r\n this.locationReportVisible = true\r\n }\r\n\r\n private async showLocationScores() {\r\n await this.fetchLocationScores();\r\n this.locationScoresVisible = false;\r\n this.locationScoresVisible = true\r\n }\r\n\r\n private mounted() {\r\n const leftDrawerInterval = setInterval(() => {\r\n if (this.$refs.leftDrawer == null) return;\r\n const ld = (this.$refs.leftDrawer as HTMLElement);\r\n \r\n if (ld != null) {\r\n this.setEvents(ld, this.leftDrawer);\r\n clearInterval(leftDrawerInterval)\r\n }\r\n }, 50)\r\n const rightDrawerInterval = setInterval(() => {\r\n if (this.$refs.rightDrawer == null) return;\r\n const ld = (this.$refs.rightDrawer as HTMLElement);\r\n if (ld != null) {\r\n this.setEvents(ld, this.rightDrawer);\r\n clearInterval(rightDrawerInterval)\r\n }\r\n }, 50)\r\n if (this.getIsLoggedIn) this.fetchModels();\r\n }\r\n\r\n private legendData: any = null;\r\n\r\n private legendChanged(legendData: any) {\r\n this.legendData = legendData;\r\n }\r\n\r\n private setEvents(el: any, struct: any) {\r\n\r\n \r\n\r\n\r\n\r\n const drawerBorder = el.querySelector(\".tbdc-drawerborder\");\r\n const direction = el.classList.contains(\"tbdc-drawerright\") ? \"right\" : \"left\";\r\n function resize(e: any) {\r\n document.body.style.cursor = \"ew-resize\";\r\n const f =\r\n direction === \"right\"\r\n ? document.body.scrollWidth - e.clientX\r\n : e.clientX;\r\n el.style.width = f + \"px\";\r\n }\r\n drawerBorder.addEventListener(\r\n \"mousedown\",\r\n (e: any) => {\r\n if (e.offsetX < drawerBorder.getBoundingClientRect().width) {\r\n el.style.transition = \"initial\";\r\n document.addEventListener(\"mousemove\", resize, false);\r\n }\r\n },\r\n false\r\n );\r\n\r\n document.addEventListener(\r\n \"mouseup\",\r\n () => {\r\n el.style.transition = \"\";\r\n struct.width = el.style.width;\r\n document.body.style.cursor = \"\";\r\n document.removeEventListener(\"mousemove\", resize, false);\r\n\r\n },\r\n false\r\n );\r\n }\r\n }\r\n","import mod from \"-!../../../node_modules/thread-loader/dist/cjs.js!../../../node_modules/babel-loader/lib/index.js!../../../node_modules/ts-loader/index.js??clonedRuleSet-41.use[2]!../../../node_modules/@vue/vue-loader-v15/lib/index.js??vue-loader-options!./Main.vue?vue&type=script&lang=ts&\"; export default mod; export * from \"-!../../../node_modules/thread-loader/dist/cjs.js!../../../node_modules/babel-loader/lib/index.js!../../../node_modules/ts-loader/index.js??clonedRuleSet-41.use[2]!../../../node_modules/@vue/vue-loader-v15/lib/index.js??vue-loader-options!./Main.vue?vue&type=script&lang=ts&\"","import { render, staticRenderFns } from \"./Main.vue?vue&type=template&id=1b27a575&\"\nimport script from \"./Main.vue?vue&type=script&lang=ts&\"\nexport * from \"./Main.vue?vue&type=script&lang=ts&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../node_modules/@vue/vue-loader-v15/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","var render = function render(){var _vm=this,_c=_vm._self._c,_setup=_vm._self._setupProxy;return _c('v-content',{staticClass:\"tbdc-fullwidthpage\"},[_c('v-navigation-drawer',{ref:\"leftDrawer\",attrs:{\"touchless\":\"\",\"width\":_vm.leftDrawer.width,\"app\":\"\",\"permanent\":\"\",\"clipped\":\"\"}},[_c('v-container',[_vm._t(\"adminLeft\")],2)],1),_c('v-container',{attrs:{\"fluid\":\"\"}},[_vm._t(\"adminRight\")],2)],1)\n}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","\r\n \r\n import { Action, Getter } from 'vuex-class';\r\n import { Component, Vue, Watch } from 'vue-property-decorator';\r\n const namespace = 'admin';\r\n\r\n @Component({\r\n components: {\r\n \r\n },\r\n })\r\n export default class AdminMain extends Vue {\r\n\r\n @Getter('getUsers', { namespace }) getUsers: any;\r\n \r\n @Getter('getModels', { namespace }) getModels: any;\r\n @Getter('getUserModels', { namespace }) getUserModels: any;\r\n @Getter('getIsLoggedIn') getIsLoggedIn: any;\r\n @Action('init', { namespace }) init: any;\r\n @Getter('getSelectedUser', { namespace }) getSelectedUser: any;\r\n @Action('setSelectedUser', { namespace }) setSelectedUser: any;\r\n @Action('saveSelectedUser', { namespace }) saveSelectedUser: any;\r\n\r\n private leftDrawer= {\r\n width: window.innerWidth > 1200 ? 900 : window.innerWidth / 1.5,\r\n borderSize: 3\r\n };\r\n\r\n @Watch('$route', { immediate: true, deep: true })\r\n onUrlChange() {\r\n if (this.getIsLoggedIn) this.init();\r\n }\r\n\r\n\r\n @Watch('getIsLoggedIn')\r\n private onGetIsLoggedInChanged() {\r\n this.init();\r\n }\r\n\r\n private mounted() {\r\n const leftDrawerInterval = setInterval(() => {\r\n if (this.$refs.leftDrawer == null) return;\r\n const ld = ((this.$refs.leftDrawer as Vue).$el as HTMLElement);\r\n if (ld != null) {\r\n this.setEvents(ld,this.leftDrawer);\r\n clearInterval(leftDrawerInterval)\r\n }\r\n }, 50)\r\n //if (this.getIsLoggedIn) this.init();\r\n }\r\n\r\n \r\n\r\n \r\n private setEvents(el: any, struct: any) {\r\n\r\n\r\n const i = el.querySelector(\r\n \".v-navigation-drawer__border\"\r\n );\r\n\r\n i.style.width = struct.borderSize + \"px\";\r\n i.style.cursor = \"ew-resize\";\r\n i.style.backgroundColor = \"rgb(245,245,245)\";\r\n\r\n\r\n const minSize = struct.borderSize;\r\n const drawerBorder = el.querySelector(\".v-navigation-drawer__border\");\r\n const direction = el.classList.contains(\"v-navigation-drawer--right\")?\"right\":\"left\";\r\n\r\n function resize(e: any) {\r\n document.body.style.cursor = \"ew-resize\";\r\n const f =\r\n direction === \"right\"\r\n ? document.body.scrollWidth - e.clientX\r\n : e.clientX;\r\n el.style.width = f + \"px\";\r\n }\r\n\r\n drawerBorder.addEventListener(\r\n \"mousedown\",\r\n (e: any) => {\r\n if (e.offsetX < minSize) {\r\n el.style.transition = \"initial\";\r\n document.addEventListener(\"mousemove\", resize, false);\r\n \r\n }\r\n },\r\n false\r\n );\r\n\r\n \r\n\r\n document.addEventListener(\r\n \"mouseup\",\r\n () => {\r\n el.style.transition = \"\";\r\n struct.width = el.style.width;\r\n document.body.style.cursor = \"\";\r\n document.removeEventListener(\"mousemove\", resize, false);\r\n \r\n },\r\n false\r\n );\r\n\r\n \r\n }\r\n }\r\n \r\n","import mod from \"-!../../../node_modules/thread-loader/dist/cjs.js!../../../node_modules/babel-loader/lib/index.js!../../../node_modules/ts-loader/index.js??clonedRuleSet-41.use[2]!../../../node_modules/@vue/vue-loader-v15/lib/index.js??vue-loader-options!./Main.vue?vue&type=script&lang=ts&\"; export default mod; export * from \"-!../../../node_modules/thread-loader/dist/cjs.js!../../../node_modules/babel-loader/lib/index.js!../../../node_modules/ts-loader/index.js??clonedRuleSet-41.use[2]!../../../node_modules/@vue/vue-loader-v15/lib/index.js??vue-loader-options!./Main.vue?vue&type=script&lang=ts&\"","import { render, staticRenderFns } from \"./Main.vue?vue&type=template&id=70a59645&\"\nimport script from \"./Main.vue?vue&type=script&lang=ts&\"\nexport * from \"./Main.vue?vue&type=script&lang=ts&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../node_modules/@vue/vue-loader-v15/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","var render = function render(){var _vm=this,_c=_vm._self._c,_setup=_vm._self._setupProxy;return _c('v-menu',{attrs:{\"close-on-content-click\":true},scopedSlots:_vm._u([{key:\"activator\",fn:function({ on }){return [_c('div',_vm._g({staticStyle:{\"background-color\":\"#009cbb\",\"height\":\"64px\",\"margin-left\":\"-16px\",\"margin-right\":\"1em\"}},on),[_c('v-img',{staticClass:\"mt-4 mx-4\",attrs:{\"src\":require('../../assets/IRIS_logo.svg'),\"max-height\":\"32\",\"max-width\":\"128\",\"contain\":\"\"}})],1)]}}])},[_c('v-list',{staticStyle:{\"padding\":\"0\"}},[_c('v-subheader',[_vm._v(\"IRIS Platform \"+_vm._s(_vm.getVersion))])],1),(_vm.getModel && (_vm.getModel.userIsAdmin || _vm.getModel.userIsGlobalAdmin))?_c('v-list',{staticClass:\"overflow-y-auto\",staticStyle:{\"max-height\":\"95vh\"}},[[(_vm.getModel.userIsAdmin)?_c('v-divider'):_vm._e(),(_vm.getModel.userIsAdmin)?_c('div',[_c('v-subheader',[_vm._v(_vm._s(_vm.$t(\"message.modelAdmin\")))]),_c('v-list-item',{on:{\"click\":_vm.fetchModelParameters}},[_c('v-list-item-action',[_c('v-icon',[_vm._v(\"mdi-wrench\")])],1),_c('v-list-item-content',[_c('v-list-item-title',[_vm._v(_vm._s(_vm.$t(\"message.editModelParameters\")))])],1)],1),_c('v-list-item',{on:{\"click\":_vm.fetchNormalizedScoresFunctions}},[_c('v-list-item-action',[_c('v-icon',[_vm._v(\"mdi-wrench\")])],1),_c('v-list-item-content',[_c('v-list-item-title',[_vm._v(_vm._s(_vm.$t(\"message.editNormalizedScoresFunctions\")))])],1)],1),_c('v-list-item',{on:{\"click\":_vm.fetchDrivers}},[_c('v-list-item-action',[_c('v-icon',[_vm._v(\"mdi-wrench\")])],1),_c('v-list-item-content',[_c('v-list-item-title',[_vm._v(_vm._s(_vm.$t(\"message.editDrivers\")))])],1)],1)],1):_vm._e(),(_vm.getModel.userIsGlobalAdmin)?_c('div',[(_vm.getModel.userIsAdmin)?_c('v-divider'):_vm._e(),_c('v-subheader',[_vm._v(_vm._s(_vm.$t(\"message.globalAdmin\")))]),_c('v-list-item',{on:{\"click\":function($event){return _vm.fetchLog()}}},[_c('v-list-item-action',[_c('v-icon',[_vm._v(\"mdi-text-box-outline\")])],1),_c('v-list-item-content',[_c('v-list-item-title',[_vm._v(_vm._s(_vm.$t(\"message.log\")))])],1)],1),_c('v-list-item',{attrs:{\"disabled\":this.$route.path == '/Admin/Logins'},on:{\"click\":function($event){return _vm.router.push({ name: 'AdminLogins'})}}},[_c('v-list-item-action',[_c('v-icon',[_vm._v(\"mdi-account-key\")])],1),_c('v-list-item-content',[_c('v-list-item-title',[_vm._v(\" Logins \")])],1)],1),_c('v-list-item',{attrs:{\"disabled\":this.$route.path == '/Admin/Models'},on:{\"click\":function($event){return _vm.router.push({ name: 'AdminModels'})}}},[_c('v-list-item-action',[_c('v-icon',[_vm._v(\"mdi-file-multiple\")])],1),_c('v-list-item-content',[_c('v-list-item-title',[_vm._v(\" Models \")])],1)],1),_c('v-list-item',{attrs:{\"disabled\":this.$route.path == '/Admin/Users'},on:{\"click\":function($event){return _vm.router.push({ name: 'AdminUsers'})}}},[_c('v-list-item-action',[_c('v-icon',[_vm._v(\"mdi-account-multiple\")])],1),_c('v-list-item-content',[_c('v-list-item-title',[_vm._v(\" Users \")])],1)],1),_c('v-list-item',{attrs:{\"disabled\":this.$route.path == '/Admin/ScenarioStatus'},on:{\"click\":function($event){return _vm.router.push({ name: 'ScenarioStatus'})}}},[_c('v-list-item-action',[_c('v-icon',[_vm._v(\"mdi-account-multiple\")])],1),_c('v-list-item-content',[_c('v-list-item-title',[_vm._v(\" Scenario's status \")])],1)],1)],1):_vm._e()]],2):_vm._e()],1)\n}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","\r\n import { Component, Vue } from 'vue-property-decorator';\r\n import { Action, Getter } from 'vuex-class';\r\n\r\n const namespace = 'main';\r\n\r\n @Component\r\n export default class TopLeftMenu extends Vue {\r\n private namespace = 'main';\r\n\r\n @Getter('getModel', { namespace }) getModel: any;\r\n @Getter('getLocation', { namespace }) getLocation: any;\r\n @Action('fetchModelParameters', { namespace }) fetchModelParameters: any;\r\n @Action('fetchProcessingLog', { namespace }) fetchProcessingLog: any;\r\n @Action('fetchNormalizedScoresFunctions', { namespace }) fetchNormalizedScoresFunctions: any;\r\n @Action('fetchDrivers', { namespace }) fetchDrivers: any;\r\n @Action('fetchLog', { namespace }) fetchLog: any;\r\n @Getter('getScenario', { namespace }) getScenario: any;\r\n @Getter('getArea', { namespace }) getArea: any;\r\n @Getter('getVersion') getVersion: any;\r\n\r\n private router: any;\r\n private mounted() {\r\n this.router = this.$router;\r\n }\r\n \r\n }\r\n","import mod from \"-!../../../node_modules/thread-loader/dist/cjs.js!../../../node_modules/babel-loader/lib/index.js!../../../node_modules/ts-loader/index.js??clonedRuleSet-41.use[2]!../../../node_modules/@vue/vue-loader-v15/lib/index.js??vue-loader-options!./TopLeftMenu.vue?vue&type=script&lang=ts&\"; export default mod; export * from \"-!../../../node_modules/thread-loader/dist/cjs.js!../../../node_modules/babel-loader/lib/index.js!../../../node_modules/ts-loader/index.js??clonedRuleSet-41.use[2]!../../../node_modules/@vue/vue-loader-v15/lib/index.js??vue-loader-options!./TopLeftMenu.vue?vue&type=script&lang=ts&\"","import { render, staticRenderFns } from \"./TopLeftMenu.vue?vue&type=template&id=8f40f302&\"\nimport script from \"./TopLeftMenu.vue?vue&type=script&lang=ts&\"\nexport * from \"./TopLeftMenu.vue?vue&type=script&lang=ts&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../node_modules/@vue/vue-loader-v15/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","var render = function render(){var _vm=this,_c=_vm._self._c,_setup=_vm._self._setupProxy;return _c('form',{staticStyle:{\"width\":\"100%\"},attrs:{\"lazy-validation\":\"\"}},[(!_vm.getLoginEditing.id)?_c('v-container',{staticClass:\"ml-0\"},[_c('h3',{staticClass:\"mb-2\"},[_vm._v(\"Add login \"),_c('v-btn',{attrs:{\"icon\":\"\"},on:{\"click\":_vm.addLogin}},[_c('v-icon',[_vm._v(\"mdi-content-save\")])],1)],1),_c('v-text-field',{attrs:{\"outlined\":\"\",\"label\":\"Display name\",\"rules\":_vm.displayNameRules},model:{value:(_vm.getLoginEditing.displayName),callback:function ($$v) {_vm.$set(_vm.getLoginEditing, \"displayName\", $$v)},expression:\"getLoginEditing.displayName\"}}),_c('v-text-field',{attrs:{\"outlined\":\"\",\"label\":\"Email\",\"hint\":\"user@domain.com\",\"rules\":_vm.emailRules},model:{value:(_vm.getLoginEditing.email),callback:function ($$v) {_vm.$set(_vm.getLoginEditing, \"email\", $$v)},expression:\"getLoginEditing.email\"}})],1):_vm._e(),(_vm.getLoginEditing.id)?_c('v-container',{staticClass:\"ml-0\"},[_c('h3',{staticClass:\"mb-2\"},[_vm._v(\"Login created \"),_c('v-btn',{attrs:{\"icon\":\"\"},on:{\"click\":_vm.newLogin}},[_c('v-icon',[_vm._v(\"mdi-restart\")])],1)],1),_c('v-text-field',{attrs:{\"disabled\":\"\",\"outlined\":\"\",\"label\":\"Password\"},model:{value:(_vm.getLoginEditing.password),callback:function ($$v) {_vm.$set(_vm.getLoginEditing, \"password\", $$v)},expression:\"getLoginEditing.password\"}}),_c('v-textarea',{attrs:{\"readonly\":true,\"outlined\":\"\",\"value\":this.email(),\"rows\":\"2\"}}),_c('v-expansion-panels',{staticStyle:{\"margin-top\":\"1em\"},attrs:{\"multiple\":\"\"},model:{value:(_vm.panel),callback:function ($$v) {_vm.panel=$$v},expression:\"panel\"}},[_c('v-expansion-panel',[_c('v-expansion-panel-header',[_c('p',[_c('v-icon',[_vm._v(\"mdi-code-json\")]),_vm._v(\" JSON\")],1)]),_c('v-expansion-panel-content',[_c('pre',[_vm._v(_vm._s(this.encode()))])])],1)],1)],1):_vm._e()],1)\n}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","\r\n\r\n import { Action, Getter } from 'vuex-class';\r\n import { Component, Vue } from 'vue-property-decorator';\r\n\r\n\r\n const namespace = 'admin';\r\n\r\n @Component({\r\n components: {\r\n },\r\n })\r\n export default class AdminAddLogin extends Vue {\r\n @Action('addLogin', { namespace }) addLogin: any;\r\n @Action('newLogin', { namespace }) newLogin: any;\r\n @Getter('getLoginEditing', { namespace }) getLoginEditing: any;\r\n\r\n \r\n private panel: any = [0];\r\n\r\n private displayNameRules = [\r\n // @ts-ignore\r\n value => !!value || 'Displayname is required'\r\n ]\r\n\r\n private emailRules = [\r\n // @ts-ignore\r\n value => !!value || 'E-mail address is required',\r\n // @ts-ignore\r\n v => !v || /^\\w+([.-]?\\w+)*@\\w+([.-]?\\w+)*(\\.\\w{2,3})+$/.test(v) || 'E-mail address is invalid'\r\n \r\n ]\r\n\r\n private email() {\r\n if (this.getLoginEditing != null) {\r\n\r\n return \"Login/email: \" + this.getLoginEditing.email + \"\\r\\n\" + \"Password: \" + this.getLoginEditing.password;\r\n\r\n }\r\n else {\r\n return null;\r\n }\r\n\r\n }\r\n\r\n private encode() {\r\n if (this.getLoginEditing != null) {\r\n \r\n return { ID: this.getLoginEditing.id, IsAdmin: false, DisplayName: this.getLoginEditing.displayName, Email: this.getLoginEditing.email, Password: this.getLoginEditing.password }\r\n \r\n }\r\n else {\r\n return null;\r\n }\r\n }\r\n }\r\n\r\n","import mod from \"-!../../../node_modules/thread-loader/dist/cjs.js!../../../node_modules/babel-loader/lib/index.js!../../../node_modules/ts-loader/index.js??clonedRuleSet-41.use[2]!../../../node_modules/@vue/vue-loader-v15/lib/index.js??vue-loader-options!./AddLogin.vue?vue&type=script&lang=ts&\"; export default mod; export * from \"-!../../../node_modules/thread-loader/dist/cjs.js!../../../node_modules/babel-loader/lib/index.js!../../../node_modules/ts-loader/index.js??clonedRuleSet-41.use[2]!../../../node_modules/@vue/vue-loader-v15/lib/index.js??vue-loader-options!./AddLogin.vue?vue&type=script&lang=ts&\"","import { render, staticRenderFns } from \"./AddLogin.vue?vue&type=template&id=a17e59f8&\"\nimport script from \"./AddLogin.vue?vue&type=script&lang=ts&\"\nexport * from \"./AddLogin.vue?vue&type=script&lang=ts&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../node_modules/@vue/vue-loader-v15/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","var render = function render(){var _vm=this,_c=_vm._self._c,_setup=_vm._self._setupProxy;return _c('v-container',[_c('h3',{staticClass:\"mb-2\"},[_vm._v(\"Users \"),_c('v-btn',{attrs:{\"icon\":\"\"},on:{\"click\":function($event){return _vm.syncLogins()}}},[_c('v-icon',[_vm._v(\"mdi-cloud-sync\")])],1)],1),_c('p',[_vm._v(\"This is a list of all users in IRIS. Use the sync button on top of this page to synchronize users between Azure AD and this IRIS environment if users are not available yet.\")]),_c('p',[_vm._v(\"Click on the pencil behind a user to edit the models the users has access to.\")]),_c('v-text-field',{attrs:{\"dense\":\"\",\"outlined\":\"\",\"label\":\"Filter\",\"clearable\":\"\"},model:{value:(_vm.filter),callback:function ($$v) {_vm.filter=$$v},expression:\"filter\"}}),_vm._l((_vm.filteredUsers),function(user){return _c('v-list',{key:user.id},[_c('v-list-item-group',[_c('v-list-item',[_c('v-list-item-title',[_vm._v(_vm._s(user.title))]),_c('v-list-item-icon',[_c('v-btn',{attrs:{\"icon\":\"\"},on:{\"click\":function($event){return _vm.setSelectedUser(user)}}},[_c('v-icon',[_vm._v(\"mdi-pencil\")])],1)],1)],1)],1)],1)})],2)\n}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","\r\n\r\n import { Action, Getter } from 'vuex-class';\r\n import { Component, Vue, Watch } from 'vue-property-decorator';\r\n\r\n\r\n const namespace = 'admin';\r\n\r\n @Component({\r\n components: {\r\n },\r\n })\r\n export default class AdminUsers extends Vue {\r\n\r\n @Getter('getUsers', { namespace }) getUsers: any;\r\n @Action('init', { namespace }) init: any;\r\n @Action('syncLogins', { namespace }) syncLogins: any;\r\n @Action('fetchUsers', { namespace }) fetchUsers: any;\r\n @Action('setSelectedUser', { namespace }) setSelectedUser: any;\r\n @Getter('getIsLoggedIn') getIsLoggedIn: any;\r\n @Watch('getIsLoggedIn')\r\n private onGetIsLoggedInChanged() {\r\n this.fetchUsers();\r\n }\r\n mounted()\r\n{\r\n if (this.getIsLoggedIn) this.onGetIsLoggedInChanged();\r\n}\r\n private filter = '';\r\n\r\n \r\n\r\n get filteredUsers() {\r\n const _self = this;\r\n const _filteredUsers = this.getUsers.filter(function (user: any) {\r\n return _self.filter == '' || _self.filter == null || user.title.toLowerCase().includes(_self.filter.toLowerCase());\r\n });\r\n\r\n return _filteredUsers;\r\n }\r\n\r\n }\r\n\r\n","import mod from \"-!../../../node_modules/thread-loader/dist/cjs.js!../../../node_modules/babel-loader/lib/index.js!../../../node_modules/ts-loader/index.js??clonedRuleSet-41.use[2]!../../../node_modules/@vue/vue-loader-v15/lib/index.js??vue-loader-options!./UsersList.vue?vue&type=script&lang=ts&\"; export default mod; export * from \"-!../../../node_modules/thread-loader/dist/cjs.js!../../../node_modules/babel-loader/lib/index.js!../../../node_modules/ts-loader/index.js??clonedRuleSet-41.use[2]!../../../node_modules/@vue/vue-loader-v15/lib/index.js??vue-loader-options!./UsersList.vue?vue&type=script&lang=ts&\"","import { render, staticRenderFns } from \"./UsersList.vue?vue&type=template&id=4f077d2e&\"\nimport script from \"./UsersList.vue?vue&type=script&lang=ts&\"\nexport * from \"./UsersList.vue?vue&type=script&lang=ts&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../node_modules/@vue/vue-loader-v15/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","var render = function render(){var _vm=this,_c=_vm._self._c,_setup=_vm._self._setupProxy;return _c('v-container',[_c('h3',{staticClass:\"mb-2\"},[_vm._v(\"Logins\")]),_c('p',[_vm._v(\"This is a list of all users in Azure AD. Be carefull deleting users from Azure AD because this can not be undone and the user immediately loses access. \")]),_c('v-text-field',{attrs:{\"dense\":\"\",\"outlined\":\"\",\"label\":\"Filter\",\"clearable\":\"\"},model:{value:(_vm.filter),callback:function ($$v) {_vm.filter=$$v},expression:\"filter\"}}),_vm._l((_vm.filteredLogins),function(login){return _c('v-list',{key:login.id},[_c('v-list-item-group',[_c('v-list-item',[_c('v-list-item-title',[_vm._v(_vm._s(login.displayName)+\" (\"+_vm._s(login.identity)+\")\")]),_c('v-list-item-icon',[(login.mfa)?_c('v-btn',{attrs:{\"icon\":\"\"}},[_c('v-icon',[_vm._v(\"mdi-lock\")])],1):_vm._e(),_c('v-btn',{attrs:{\"icon\":\"\"},on:{\"click\":function($event){return _vm.confirmRemoveScenario(login)}}},[_c('v-icon',[_vm._v(\"mdi-account-remove\")])],1)],1)],1)],1)],1)})],2)\n}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","\r\n\r\n import { Action, Getter } from 'vuex-class';\r\n import { Component, Vue, Watch } from 'vue-property-decorator';\r\n \r\n\r\n const namespace = 'admin';\r\n\r\n @Component({\r\n components: {\r\n },\r\n })\r\n export default class AdminLogins extends Vue {\r\n\r\n @Getter('getLogins', { namespace }) getLogins: any;\r\n @Action('deleteLogin', { namespace }) deleteLogin: any;\r\n @Action('syncLogins', { namespace }) syncLogins: any;\r\n @Action('fetchLogins', { namespace }) fetchLogins: any;\r\n @Getter('getIsLoggedIn') getIsLoggedIn: any;\r\n @Watch('getIsLoggedIn')\r\n private onGetIsLoggedInChanged() {\r\n this.fetchLogins();\r\n }\r\n mounted() {\r\n if (this.getIsLoggedIn) this.onGetIsLoggedInChanged();\r\n }\r\n\r\n private filter = '';\r\n\r\n \r\n private async confirmRemoveScenario(login: any) {\r\n const res = await this.$confirm('If you delete this login, the user can not login anymore. This also applies for the other environments. Are you sure you want to delete the login \"' + login.displayName + ' (' + login.identity + ')\"?', { buttonTrueText: String(this.$t('message.yes')), buttonFalseText: String(this.$t('message.no')), title: String(this.$t('message.warning')) });\r\n if (res) this.deleteLogin(login.id);\r\n }\r\n\r\n get filteredLogins() {\r\n const _self = this;\r\n const _filteredLogins = this.getLogins.filter(function (login: any) {\r\n return _self.filter == '' || _self.filter == null || login.displayName.toLowerCase().includes(_self.filter.toLowerCase());\r\n });\r\n\r\n return _filteredLogins;\r\n }\r\n\r\n }\r\n\r\n","import mod from \"-!../../../node_modules/thread-loader/dist/cjs.js!../../../node_modules/babel-loader/lib/index.js!../../../node_modules/ts-loader/index.js??clonedRuleSet-41.use[2]!../../../node_modules/@vue/vue-loader-v15/lib/index.js??vue-loader-options!./LoginsList.vue?vue&type=script&lang=ts&\"; export default mod; export * from \"-!../../../node_modules/thread-loader/dist/cjs.js!../../../node_modules/babel-loader/lib/index.js!../../../node_modules/ts-loader/index.js??clonedRuleSet-41.use[2]!../../../node_modules/@vue/vue-loader-v15/lib/index.js??vue-loader-options!./LoginsList.vue?vue&type=script&lang=ts&\"","import { render, staticRenderFns } from \"./LoginsList.vue?vue&type=template&id=de445f7a&\"\nimport script from \"./LoginsList.vue?vue&type=script&lang=ts&\"\nexport * from \"./LoginsList.vue?vue&type=script&lang=ts&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../node_modules/@vue/vue-loader-v15/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","var render = function render(){var _vm=this,_c=_vm._self._c,_setup=_vm._self._setupProxy;return (_vm.getSelectedUser != null)?_c('form',{staticStyle:{\"width\":\"100%\"}},[_c('v-container',{staticClass:\"ml-0\"},[_c('h3',{staticClass:\"mb-2\"},[_vm._v(_vm._s(_vm.getSelectedUser.title)+\" \"),_c('v-btn',{attrs:{\"icon\":\"\"},on:{\"click\":_vm.saveSelectedUser}},[_c('v-icon',[_vm._v(\"mdi-content-save\")])],1),_vm._v(\" \"),_c('v-btn',{attrs:{\"icon\":\"\"},on:{\"click\":function($event){return _vm.setSelectedUser(null)}}},[_c('v-icon',[_vm._v(\"mdi-close\")])],1)],1),_c('v-simple-table',{attrs:{\"dense\":\"\"},scopedSlots:_vm._u([{key:\"default\",fn:function(){return [_c('thead',[_c('tr',[_c('th',{staticClass:\"text-left\"},[_vm._v(\"Name\")]),_c('th',{staticClass:\"text-left\"},[_vm._v(\"Has access\")]),_c('th',{staticClass:\"text-left\"},[_vm._v(\"Admin\")])])]),_c('tbody',_vm._l((_vm.getUserModels),function(model){return _c('tr',{key:model.id},[_c('td',[_vm._v(_vm._s(model.name))]),_c('td',[_c('v-checkbox',{model:{value:(model.hasAccess),callback:function ($$v) {_vm.$set(model, \"hasAccess\", $$v)},expression:\"model.hasAccess\"}})],1),_c('td',[_c('v-checkbox',{attrs:{\"disabled\":!model.hasAccess},model:{value:(model.isAdmin),callback:function ($$v) {_vm.$set(model, \"isAdmin\", $$v)},expression:\"model.isAdmin\"}})],1)])}),0)]},proxy:true}],null,false,1554977772)})],1)],1):_vm._e()\n}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","\r\n \r\n import { Action, Getter } from 'vuex-class';\r\n import { Component, Vue } from 'vue-property-decorator';\r\n\r\n \r\n const namespace = 'admin';\r\n\r\n @Component({\r\n components: {\r\n },\r\n })\r\n export default class AdminUsers extends Vue {\r\n\r\n \r\n \r\n @Getter('getUserModels', { namespace }) getUserModels: any;\r\n @Getter('getSelectedUser', { namespace }) getSelectedUser: any;\r\n @Action('setSelectedUser', { namespace }) setSelectedUser: any;\r\n @Action('saveSelectedUser', { namespace }) saveSelectedUser: any;\r\n\r\n \r\n\r\n \r\n\r\n \r\n\r\n }\r\n \r\n","import mod from \"-!../../../node_modules/thread-loader/dist/cjs.js!../../../node_modules/babel-loader/lib/index.js!../../../node_modules/ts-loader/index.js??clonedRuleSet-41.use[2]!../../../node_modules/@vue/vue-loader-v15/lib/index.js??vue-loader-options!./User.vue?vue&type=script&lang=ts&\"; export default mod; export * from \"-!../../../node_modules/thread-loader/dist/cjs.js!../../../node_modules/babel-loader/lib/index.js!../../../node_modules/ts-loader/index.js??clonedRuleSet-41.use[2]!../../../node_modules/@vue/vue-loader-v15/lib/index.js??vue-loader-options!./User.vue?vue&type=script&lang=ts&\"","import { render, staticRenderFns } from \"./User.vue?vue&type=template&id=00cbcd2f&\"\nimport script from \"./User.vue?vue&type=script&lang=ts&\"\nexport * from \"./User.vue?vue&type=script&lang=ts&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../node_modules/@vue/vue-loader-v15/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","var render = function render(){var _vm=this,_c=_vm._self._c,_setup=_vm._self._setupProxy;return (_vm.getScenarioStatus != null && _vm.fetchScenarioStatus != null)?_c('form',{staticStyle:{\"width\":\"100%\"}},[_c('v-container',{staticClass:\"ml-0\"},[_c('h3',{staticClass:\"mb-2\"},[_vm._v(\"Scenario status \"),_c('v-btn',{attrs:{\"icon\":\"\"},on:{\"click\":function($event){return _vm.fetchScenarioStatus()}}},[_c('v-icon',[_vm._v(\"mdi-cloud-sync\")])],1)],1),_c('v-simple-table',{attrs:{\"dense\":\"\"},scopedSlots:_vm._u([{key:\"default\",fn:function(){return [_c('thead',[_c('tr',[_c('th',{staticClass:\"text-left\"},[_vm._v(\"Name\")]),_c('th',{staticClass:\"text-left\"},[_vm._v(\"Total\")]),_c('th',{staticClass:\"text-left\"},[_vm._v(\"Unprocessed\")]),_c('th',{staticClass:\"text-left\"},[_vm._v(\"Processing\")]),_c('th',{staticClass:\"text-left\"},[_vm._v(\"Completed\")]),_c('th',{staticClass:\"text-left\"},[_vm._v(\"Failed\")]),_c('th')])]),_c('tbody',[_vm._l((_vm.getScenarioStatus),function(s){return _c('tr',{key:s.name},[_c('td',[_vm._v(_vm._s(s.name))]),_c('td',[_vm._v(_vm._s(s.unprocessed + s.processing + s.completed + s.failed))]),_c('td',[_vm._v(_vm._s(s.unprocessed))]),_c('td',[_vm._v(_vm._s(s.processing))]),_c('td',[_vm._v(_vm._s(s.completed))]),_c('td',[_vm._v(_vm._s(s.failed))]),_c('td',[_c('v-btn',{attrs:{\"icon\":\"\"},on:{\"click\":function($event){return _vm.setSelectedScenario(s)}}},[_c('v-icon',[_vm._v(\"mdi-pencil\")])],1)],1)])}),_c('tr',[_c('td',[_c('strong',[_vm._v(\"Total\")])]),_c('td',[_vm._v(_vm._s(_vm.totalSum))]),_c('td',[_vm._v(_vm._s(_vm.totalUnprocessed))]),_c('td',[_vm._v(_vm._s(_vm.totalProcessing))]),_c('td',[_vm._v(_vm._s(_vm.totalCompleted))]),_c('td',[_vm._v(_vm._s(_vm.totalFailed))])])],2)]},proxy:true}],null,false,3996165950)})],1)],1):_vm._e()\n}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","\r\n \r\n import { Action, Getter } from 'vuex-class';\r\n import { Component, Vue, Watch } from 'vue-property-decorator';\r\n\r\n\r\n const namespace = 'admin';\r\n\r\n @Component({\r\n components: {\r\n },\r\n })\r\n export default class AdminScenarios extends Vue {\r\n\r\n \r\n @Getter('getScenarioStatus', { namespace }) getScenarioStatus: any;\r\n @Action('fetchScenarioStatus', { namespace }) fetchScenarioStatus: any;\r\n @Action('setSelectedScenario', { namespace }) setSelectedScenario: any;\r\n @Getter('getIsLoggedIn') getIsLoggedIn: any;\r\n \r\n @Watch('getIsLoggedIn')\r\n private onGetIsLoggedInChanged() {\r\n this.fetchScenarioStatus();\r\n }\r\n \r\n mounted()\r\n {\r\n if (this.getIsLoggedIn) this.onGetIsLoggedInChanged();\r\n }\r\n\r\n // Computed properties to calculate the totals\r\n get totalUnprocessed() {\r\n return this.getScenarioStatus.reduce((sum: number, s: any) => sum + s.unprocessed, 0);\r\n }\r\n\r\n get totalProcessing() {\r\n return this.getScenarioStatus.reduce((sum: number, s: any) => sum + s.processing, 0);\r\n }\r\n\r\n get totalCompleted() {\r\n return this.getScenarioStatus.reduce((sum: number, s: any) => sum + s.completed, 0);\r\n }\r\n\r\n get totalFailed() {\r\n return this.getScenarioStatus.reduce((sum: number, s: any) => sum + s.failed, 0);\r\n }\r\n\r\n get totalSum() {\r\n return this.totalUnprocessed + this.totalProcessing + this.totalCompleted + this.totalFailed;\r\n }\r\n\r\n }\r\n \r\n","import mod from \"-!../../../node_modules/thread-loader/dist/cjs.js!../../../node_modules/babel-loader/lib/index.js!../../../node_modules/ts-loader/index.js??clonedRuleSet-41.use[2]!../../../node_modules/@vue/vue-loader-v15/lib/index.js??vue-loader-options!./ScenariosList.vue?vue&type=script&lang=ts&\"; export default mod; export * from \"-!../../../node_modules/thread-loader/dist/cjs.js!../../../node_modules/babel-loader/lib/index.js!../../../node_modules/ts-loader/index.js??clonedRuleSet-41.use[2]!../../../node_modules/@vue/vue-loader-v15/lib/index.js??vue-loader-options!./ScenariosList.vue?vue&type=script&lang=ts&\"","import { render, staticRenderFns } from \"./ScenariosList.vue?vue&type=template&id=49d7b9ca&\"\nimport script from \"./ScenariosList.vue?vue&type=script&lang=ts&\"\nexport * from \"./ScenariosList.vue?vue&type=script&lang=ts&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../node_modules/@vue/vue-loader-v15/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","var render = function render(){var _vm=this,_c=_vm._self._c,_setup=_vm._self._setupProxy;return (_vm.getSelectedScenario != null)?_c('form',{staticStyle:{\"width\":\"100%\"}},[_c('v-container',{staticClass:\"ml-0\"},[_c('h3',{staticClass:\"mb-2\"},[_vm._v(_vm._s(_vm.getSelectedScenario.name)+\" \")]),_c('v-btn',{on:{\"click\":function($event){return _vm.calculateUnprocessedScenarios(_vm.getSelectedScenario.id)}}},[_vm._v(\"Calculate unprocess scenarios\")])],1)],1):_vm._e()\n}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","\r\n\r\n import { Action, Getter } from 'vuex-class';\r\n import { Component, Vue } from 'vue-property-decorator';\r\n\r\n\r\n const namespace = 'admin';\r\n\r\n @Component({\r\n components: {\r\n },\r\n })\r\n export default class AdminUsers extends Vue {\r\n\r\n\r\n\r\n \r\n @Getter('getSelectedScenario', { namespace }) getSelectedScenario: any;\r\n \r\n @Action('setSelectedScenario', { namespace }) setSelectedScenario: any;\r\n \r\n\r\n @Action('calculateUnprocessedScenarios', { namespace }) calculateUnprocessedScenarios: any;\r\n \r\n\r\n\r\n\r\n }\r\n\r\n","import mod from \"-!../../../node_modules/thread-loader/dist/cjs.js!../../../node_modules/babel-loader/lib/index.js!../../../node_modules/ts-loader/index.js??clonedRuleSet-41.use[2]!../../../node_modules/@vue/vue-loader-v15/lib/index.js??vue-loader-options!./Scenario.vue?vue&type=script&lang=ts&\"; export default mod; export * from \"-!../../../node_modules/thread-loader/dist/cjs.js!../../../node_modules/babel-loader/lib/index.js!../../../node_modules/ts-loader/index.js??clonedRuleSet-41.use[2]!../../../node_modules/@vue/vue-loader-v15/lib/index.js??vue-loader-options!./Scenario.vue?vue&type=script&lang=ts&\"","import { render, staticRenderFns } from \"./Scenario.vue?vue&type=template&id=4f48d544&\"\nimport script from \"./Scenario.vue?vue&type=script&lang=ts&\"\nexport * from \"./Scenario.vue?vue&type=script&lang=ts&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../node_modules/@vue/vue-loader-v15/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","var render = function render(){var _vm=this,_c=_vm._self._c,_setup=_vm._self._setupProxy;return _c('v-container',[_c('h3',{staticClass:\"mb-2\"},[_vm._v(\"Models\")]),_c('p',[_vm._v(\"This is the list of all model in IRIS\")]),_c('p',[_vm._v(\"Click on the pencil behind a model to edit the users who have access to the model.\")]),_c('v-text-field',{attrs:{\"dense\":\"\",\"outlined\":\"\",\"label\":\"Filter\",\"clearable\":\"\"},model:{value:(_vm.filter),callback:function ($$v) {_vm.filter=$$v},expression:\"filter\"}}),_vm._l((_vm.filteredModels),function(model){return _c('v-list',{key:model.id},[_c('v-list-item-group',[_c('v-list-item',{attrs:{\"selectable\":false}},[_c('v-list-item-title',[_vm._v(_vm._s(model.name))]),_c('v-list-item-icon',[_c('v-btn',{attrs:{\"icon\":\"\"},on:{\"click\":function($event){return _vm.setSelectedModel(model)}}},[_c('v-icon',[_vm._v(\"mdi-pencil\")])],1)],1)],1)],1)],1)})],2)\n}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","\r\n\r\n import { Action, Getter } from 'vuex-class';\r\n import { Component, Vue, Watch } from 'vue-property-decorator';\r\n\r\n\r\n const namespace = 'admin';\r\n\r\n @Component({\r\n components: {\r\n },\r\n })\r\n export default class AdminUsers extends Vue {\r\n\r\n @Getter('getModels', { namespace }) getModels: any;\r\n @Getter('getIsLoggedIn') getIsLoggedIn: any;\r\n @Action('fetchModels', { namespace }) fetchModels: any;\r\n @Action('setSelectedModel', { namespace }) setSelectedModel: any;\r\n\r\n private filter = '';\r\n\r\n\r\n @Watch('getIsLoggedIn')\r\n private onGetIsLoggedInChanged() {\r\n this.fetchModels();\r\n }\r\n mounted() {\r\n if (this.getIsLoggedIn) this.onGetIsLoggedInChanged();\r\n }\r\n\r\n get filteredModels() {\r\n const _self = this;\r\n const _filteredModels = this.getModels.filter(function (model: any) {\r\n return _self.filter == '' || _self.filter == null || model.name.toLowerCase().includes(_self.filter.toLowerCase());\r\n });\r\n\r\n return _filteredModels;\r\n }\r\n\r\n }\r\n\r\n","import mod from \"-!../../../node_modules/thread-loader/dist/cjs.js!../../../node_modules/babel-loader/lib/index.js!../../../node_modules/ts-loader/index.js??clonedRuleSet-41.use[2]!../../../node_modules/@vue/vue-loader-v15/lib/index.js??vue-loader-options!./ModelsList.vue?vue&type=script&lang=ts&\"; export default mod; export * from \"-!../../../node_modules/thread-loader/dist/cjs.js!../../../node_modules/babel-loader/lib/index.js!../../../node_modules/ts-loader/index.js??clonedRuleSet-41.use[2]!../../../node_modules/@vue/vue-loader-v15/lib/index.js??vue-loader-options!./ModelsList.vue?vue&type=script&lang=ts&\"","import { render, staticRenderFns } from \"./ModelsList.vue?vue&type=template&id=041f0ada&\"\nimport script from \"./ModelsList.vue?vue&type=script&lang=ts&\"\nexport * from \"./ModelsList.vue?vue&type=script&lang=ts&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../node_modules/@vue/vue-loader-v15/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","var render = function render(){var _vm=this,_c=_vm._self._c,_setup=_vm._self._setupProxy;return (_vm.getSelectedModel != null)?_c('form',{staticStyle:{\"width\":\"100%\"}},[_c('v-container',{staticClass:\"ml-0\"},[_c('h3',{staticClass:\"mb-2\"},[_vm._v(_vm._s(_vm.getSelectedModel.name)+\" \"),_c('v-btn',{attrs:{\"icon\":\"\"},on:{\"click\":_vm.saveSelectedModel}},[_c('v-icon',[_vm._v(\"mdi-content-save\")])],1),_vm._v(\" \"),_c('v-btn',{attrs:{\"icon\":\"\"},on:{\"click\":function($event){return _vm.setSelectedModel(null)}}},[_c('v-icon',[_vm._v(\"mdi-close\")])],1),_vm._v(\" \"),_c('v-btn',{attrs:{\"icon\":\"\"},on:{\"click\":function($event){return _vm.syncLogins()}}},[_c('v-icon',[_vm._v(\"mdi-cloud-sync\")])],1)],1),_c('p',[_vm._v(\"Below is a list of all users in IRIS and the access rights they have on this model.\")]),_c('v-simple-table',{attrs:{\"dense\":\"\"},scopedSlots:_vm._u([{key:\"default\",fn:function(){return [_c('thead',[_c('tr',[_c('th',{staticClass:\"text-left\"},[_vm._v(\"Name\")]),_c('th',{staticClass:\"text-left\"},[_vm._v(\"Has access\")]),_c('th',{staticClass:\"text-left\"},[_vm._v(\"Admin\")])])]),_c('tbody',[_vm._l((_vm.normalUsers),function(user){return _c('tr',{key:user.id},[_c('td',[_vm._v(_vm._s(user.title))]),_c('td',[_c('v-checkbox',{attrs:{\"dense\":\"\"},model:{value:(user.hasAccess),callback:function ($$v) {_vm.$set(user, \"hasAccess\", $$v)},expression:\"user.hasAccess\"}})],1),_c('td',[_c('v-checkbox',{attrs:{\"dense\":\"\",\"disabled\":!user.hasAccess},model:{value:(user.isAdmin),callback:function ($$v) {_vm.$set(user, \"isAdmin\", $$v)},expression:\"user.isAdmin\"}})],1)])}),(_vm.deletedUsers != null && _vm.deletedUsers.length > 0)?_c('tr',[_c('th',{attrs:{\"colspan\":\"3\"}},[_vm._v(\"Orphaned users:\")])]):_vm._e(),_vm._l((_vm.deletedUsers),function(user){return _c('tr',{key:user.id},[_c('td',{staticClass:\"text-left\"},[_vm._v(_vm._s(user.title))]),_c('td',[_c('v-checkbox',{attrs:{\"dense\":\"\"},model:{value:(user.hasAccess),callback:function ($$v) {_vm.$set(user, \"hasAccess\", $$v)},expression:\"user.hasAccess\"}})],1),_c('td',[_c('v-checkbox',{attrs:{\"dense\":\"\",\"disabled\":!user.hasAccess},model:{value:(user.isAdmin),callback:function ($$v) {_vm.$set(user, \"isAdmin\", $$v)},expression:\"user.isAdmin\"}})],1)])})],2)]},proxy:true}],null,false,1976696296)})],1)],1):_vm._e()\n}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","\r\n \r\n import { Action, Getter } from 'vuex-class';\r\n import { Component, Vue } from 'vue-property-decorator';\r\n\r\n \r\n const namespace = 'admin';\r\n\r\n @Component({\r\n components: {\r\n },\r\n })\r\n export default class AdminUsers extends Vue {\r\n\r\n \r\n \r\n @Getter('getModelUsers', { namespace }) getModelUsers: any;\r\n @Getter('getSelectedModel', { namespace }) getSelectedModel: any;\r\n @Action('syncLogins', { namespace }) syncLogins: any;\r\n @Action('setSelectedModel', { namespace }) setSelectedModel: any;\r\n @Action('saveSelectedModel', { namespace }) saveSelectedModel: any;\r\n\r\n\r\n get normalUsers() {\r\n if (this.getModelUsers == null) return null;\r\n return this.getModelUsers.filter(function (user: any) {\r\n return user.deletedFromAzureAd == false;\r\n });\r\n \r\n }\r\n\r\n get deletedUsers() {\r\n if (this.getModelUsers == null) return null;\r\n return this.getModelUsers.filter(function (user: any) {\r\n return user.deletedFromAzureAd == true;\r\n });\r\n \r\n }\r\n \r\n\r\n \r\n\r\n }\r\n \r\n","import mod from \"-!../../../node_modules/thread-loader/dist/cjs.js!../../../node_modules/babel-loader/lib/index.js!../../../node_modules/ts-loader/index.js??clonedRuleSet-41.use[2]!../../../node_modules/@vue/vue-loader-v15/lib/index.js??vue-loader-options!./Model.vue?vue&type=script&lang=ts&\"; export default mod; export * from \"-!../../../node_modules/thread-loader/dist/cjs.js!../../../node_modules/babel-loader/lib/index.js!../../../node_modules/ts-loader/index.js??clonedRuleSet-41.use[2]!../../../node_modules/@vue/vue-loader-v15/lib/index.js??vue-loader-options!./Model.vue?vue&type=script&lang=ts&\"","import { render, staticRenderFns } from \"./Model.vue?vue&type=template&id=7297ca5b&\"\nimport script from \"./Model.vue?vue&type=script&lang=ts&\"\nexport * from \"./Model.vue?vue&type=script&lang=ts&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../node_modules/@vue/vue-loader-v15/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","var render = function render(){var _vm=this,_c=_vm._self._c,_setup=_vm._self._setupProxy;return _c('v-menu',{attrs:{\"close-on-content-click\":true},scopedSlots:_vm._u([{key:\"activator\",fn:function({ on }){return [_c('div',_vm._g({staticStyle:{\"background-color\":\"#009cbb\",\"height\":\"64px\",\"margin-left\":\"-16px\",\"margin-right\":\"1em\"}},on),[_c('v-img',{staticClass:\"mt-4 mx-4\",attrs:{\"src\":require('../../assets/IRIS_logo.svg'),\"max-height\":\"32\",\"max-width\":\"128\",\"contain\":\"\"}})],1)]}}])},[_c('v-list',{staticClass:\"overflow-y-auto\",staticStyle:{\"max-height\":\"95vh\"}},[[_c('div',[_c('v-list-item',{attrs:{\"disabled\":this.$route.name == 'defaultRoute'},on:{\"click\":function($event){return _vm.router.push({ name: 'Default'})}}},[_c('v-list-item-action',[_c('v-icon',[_vm._v(\"mdi-application\")])],1),_c('v-list-item-content',[_c('v-list-item-title',[_vm._v(\" Main application \")])],1)],1),_c('v-list-item',{attrs:{\"disabled\":this.$route.name == 'AdminLogins'},on:{\"click\":function($event){return _vm.router.push({ name: 'AdminLogins'})}}},[_c('v-list-item-action',[_c('v-icon',[_vm._v(\"mdi-account-key\")])],1),_c('v-list-item-content',[_c('v-list-item-title',[_vm._v(\" Logins \")])],1)],1),_c('v-list-item',{attrs:{\"disabled\":this.$route.name == 'AdminModels'},on:{\"click\":function($event){return _vm.router.push({ name: 'AdminModels'})}}},[_c('v-list-item-action',[_c('v-icon',[_vm._v(\"mdi-file-multiple\")])],1),_c('v-list-item-content',[_c('v-list-item-title',[_vm._v(\" Models \")])],1)],1),_c('v-list-item',{attrs:{\"disabled\":this.$route.name == 'AdminUsers'},on:{\"click\":function($event){return _vm.router.push({ name: 'AdminUsers'})}}},[_c('v-list-item-action',[_c('v-icon',[_vm._v(\"mdi-account-multiple\")])],1),_c('v-list-item-content',[_c('v-list-item-title',[_vm._v(\" Users \")])],1)],1),_c('v-list-item',{attrs:{\"disabled\":this.$route.name == 'ScenarioStatus'},on:{\"click\":function($event){return _vm.router.push({ name: 'ScenarioStatus'})}}},[_c('v-list-item-action',[_c('v-icon',[_vm._v(\"mdi-account-multiple\")])],1),_c('v-list-item-content',[_c('v-list-item-title',[_vm._v(\" Scenario's status \")])],1)],1)],1)]],2)],1)\n}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","\r\n import { Component, Vue } from 'vue-property-decorator';\r\n import { Action, Getter } from 'vuex-class';\r\n\r\n const namespace = 'main';\r\n\r\n @Component({\r\n components: {\r\n },\r\n })\r\n export default class TopLeftMenu extends Vue {\r\n private namespace = 'main';\r\n\r\n @Getter('getModel', { namespace }) getModel: any;\r\n @Getter('getLocation', { namespace }) getLocation: any;\r\n @Action('fetchModelParameters', { namespace }) fetchModelParameters: any;\r\n @Action('fetchProcessingLog', { namespace }) fetchProcessingLog: any;\r\n @Action('fetchNormalizedScoresFunctions', { namespace }) fetchNormalizedScoresFunctions: any;\r\n @Action('fetchDrivers', { namespace }) fetchDrivers: any;\r\n @Getter('getScenario', { namespace }) getScenario: any;\r\n @Getter('getArea', { namespace }) getArea: any;\r\n\r\n private router: any;\r\n private mounted() {\r\n this.router = this.$router;\r\n }\r\n }\r\n","import mod from \"-!../../../node_modules/thread-loader/dist/cjs.js!../../../node_modules/babel-loader/lib/index.js!../../../node_modules/ts-loader/index.js??clonedRuleSet-41.use[2]!../../../node_modules/@vue/vue-loader-v15/lib/index.js??vue-loader-options!./TopLeftMenu.vue?vue&type=script&lang=ts&\"; export default mod; export * from \"-!../../../node_modules/thread-loader/dist/cjs.js!../../../node_modules/babel-loader/lib/index.js!../../../node_modules/ts-loader/index.js??clonedRuleSet-41.use[2]!../../../node_modules/@vue/vue-loader-v15/lib/index.js??vue-loader-options!./TopLeftMenu.vue?vue&type=script&lang=ts&\"","import { render, staticRenderFns } from \"./TopLeftMenu.vue?vue&type=template&id=5cf9c1e4&\"\nimport script from \"./TopLeftMenu.vue?vue&type=script&lang=ts&\"\nexport * from \"./TopLeftMenu.vue?vue&type=script&lang=ts&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../node_modules/@vue/vue-loader-v15/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 { format } from 'date-fns';\r\nimport { nl, enUS, fr, es } from 'date-fns/locale';\r\n\r\nexport default (date: Date, locale: any) => {\r\n let localeObject = nl;\r\n if (locale === 'nl') {\r\n localeObject = nl;\r\n }\r\n if (locale === 'en') {\r\n localeObject = enUS;\r\n }\r\n if (locale === 'es') {\r\n localeObject = es;\r\n }\r\n if (locale === 'fr') {\r\n localeObject = fr;\r\n }\r\n const returnValue = format(new Date(date), 'd MMMM yyyy', { locale: localeObject });\r\n return returnValue.charAt(0).toUpperCase() + returnValue.slice(1);\r\n};\r\n","import { format } from 'date-fns';\r\nimport { nl, enUS, fr, es } from 'date-fns/locale';\r\n\r\nexport default (date: Date, locale: any) => {\r\n let localeObject = nl;\r\n if (locale === 'nl') {\r\n localeObject = nl;\r\n }\r\n if (locale === 'en') {\r\n localeObject = enUS;\r\n }\r\n if (locale === 'es') {\r\n localeObject = es;\r\n }\r\n if (locale === 'fr') {\r\n localeObject = fr;\r\n }\r\n const returnValue = format(new Date(date), 'HH:mm', { locale: localeObject });\r\n return returnValue.charAt(0).toUpperCase() + returnValue.slice(1);\r\n};\r\n","import { format } from 'date-fns';\r\nimport { nl, enUS, fr, es } from 'date-fns/locale';\r\n\r\nexport default (date: Date, locale: any) => {\r\n let localeObject = nl;\r\n if (locale === 'nl') {\r\n localeObject = nl;\r\n }\r\n if (locale === 'en') {\r\n localeObject = enUS;\r\n }\r\n if (locale === 'es') {\r\n localeObject = es;\r\n }\r\n if (locale === 'fr') {\r\n localeObject = fr;\r\n }\r\n const returnValue = format(new Date(date), 'd MMMM yyyy HH:mm', { locale: localeObject });\r\n return returnValue.charAt(0).toUpperCase() + returnValue.slice(1);\r\n};\r\n","export default (value: any, locale: any, currency: any) => {\r\n if (typeof value !== \"number\") {\r\n return value;\r\n }\r\n const formatter = new Intl.NumberFormat(locale, {\r\n style: 'currency',\r\n currency: currency == null?\"EUR\":currency,\r\n minimumFractionDigits: 0,\r\n maximumFractionDigits: 0\r\n });\r\n return formatter.format(value);\r\n};\r\n","export default (value: any, locale: any, digits: number) => {\r\n if (typeof value !== \"number\") {\r\n return value;\r\n }\r\n const formatter = new Intl.NumberFormat(locale, {\r\n \r\n minimumFractionDigits: digits,\r\n maximumFractionDigits: digits\r\n\r\n });\r\n return formatter.format(value);\r\n};\r\n","export default (value: any, digits: any,locale: any) => {\r\n if (typeof value !== \"number\") {\r\n return value;\r\n }\r\n \r\n const formatter = new Intl.NumberFormat(locale, {\r\n \r\n minimumFractionDigits: digits,\r\n maximumFractionDigits: digits\r\n\r\n });\r\n return formatter.format(value);\r\n};\r\n","export default (value: any, locale: any, digits: number) => {\r\n if (typeof value !== \"number\") {\r\n return value;\r\n }\r\n const formatter = new Intl.NumberFormat(locale, {\r\n style: 'percent',\r\n\r\n minimumFractionDigits: digits,\r\n maximumFractionDigits: digits\r\n\r\n });\r\n return formatter.format(value);\r\n};\r\n","import Vue from 'vue'\r\nVue.nextTick();\r\nimport App from './App.vue'\r\nimport vuetify from './plugins/vuetify'\r\nimport store from './store'\r\n// @ts-ignore\r\nimport Fragment from 'vue-fragment'\r\nimport VueI18n from 'vue-i18n'\r\n// @ts-ignore\r\nimport messages from './messages'\r\nimport VueRouter from 'vue-router'\r\nimport LoginMenu from './components/LoginMenu.vue'\r\nimport ModelMenu from './components/main/ModelMenu.vue'\r\nimport ModelLogo from './components/main/ModelLogo.vue'\r\nimport NotFound from './components/NotFound.vue'\r\nimport BearerToken from './components/BearerToken.vue'\r\nimport Main from './components/main/Main.vue'\r\nimport AdminMain from './components/admin/Main.vue'\r\nimport TopLeftMenu from './components/main/TopLeftMenu.vue'\r\nimport AddLogin from './components/admin/AddLogin.vue'\r\nimport UsersList from '@/components/admin/UsersList.vue';\r\nimport LoginsList from '@/components/admin/LoginsList.vue';\r\nimport User from '@/components/admin/User.vue';\r\nimport ScenariosList from '@/components/admin/ScenariosList.vue';\r\nimport Scenario from '@/components/admin/Scenario.vue';\r\nimport ModelsList from '@/components/admin/ModelsList.vue';\r\nimport Model from '@/components/admin/Model.vue';\r\nimport AdminTopLeftMenu from './components/admin/TopLeftMenu.vue'\r\nimport VuetifyConfirm from 'vuetify-confirm'\r\n\r\nVue.use(VuetifyConfirm, {\r\n vuetify,\r\n buttonTrueText: 'Ja',\r\n buttonFalseText: 'Nee',\r\n //color: 'warning',\r\n color: null,\r\n icon: '',\r\n //title: 'Waarschuwing',\r\n width: 350,\r\n property: '$confirm'\r\n})\r\n\r\nimport { Chart as ChartJS, Title, Tooltip, Legend, BarElement, CategoryScale, LinearScale, PointElement, RadialLinearScale, LineElement, LineController } from 'chart.js'\r\nChartJS.register(Title, Tooltip, Legend, BarElement, CategoryScale, LinearScale, PointElement, RadialLinearScale, LineElement, LineController)\r\nimport ChartDataLabels from 'chartjs-plugin-datalabels';\r\nChartJS.register(ChartDataLabels);\r\n\r\n\r\n\r\nVue.prototype.Window = window;\r\n\r\nVue.use(Fragment.Plugin);\r\nVue.use(VueI18n);\r\nVue.use(VueRouter);\r\n\r\nconst i18n = new VueI18n({\r\n locale: 'nl', // set locale\r\n messages, // set locale messages\r\n})\r\n\r\nconst defaultRoute = {\r\n path: '/',\r\n name: 'Default',\r\n components: {\r\n default: Main,\r\n loginMenu: LoginMenu,\r\n modelMenu: ModelMenu,\r\n modelLogo: ModelLogo,\r\n topLeftMenu: TopLeftMenu,\r\n\r\n }\r\n}\r\n\r\n\r\n\r\nconst adminRoute = {\r\n path: '/admin',\r\n name: 'Admin',\r\n components: {\r\n default: AdminMain,\r\n loginMenu: LoginMenu,\r\n \r\n\r\n topLeftMenu: AdminTopLeftMenu\r\n }\r\n}\r\n\r\nconst adminUsersRoute = {\r\n path: '/admin/users',\r\n name: 'AdminUsers',\r\n components: {\r\n default: AdminMain,\r\n adminLeft: UsersList,\r\n adminRight: User,\r\n loginMenu: LoginMenu,\r\n topLeftMenu: AdminTopLeftMenu\r\n }\r\n}\r\n\r\n\r\nconst adminLoginsRoute = {\r\n path: '/admin/logins',\r\n name: 'AdminLogins',\r\n components: {\r\n default: AdminMain,\r\n adminLeft: LoginsList,\r\n adminRight: AddLogin,\r\n loginMenu: LoginMenu,\r\n topLeftMenu: AdminTopLeftMenu\r\n }\r\n}\r\n\r\nconst adminModelsRoute = {\r\n path: '/admin/models',\r\n name: 'AdminModels',\r\n components: {\r\n default: AdminMain,\r\n adminLeft: ModelsList,\r\n adminRight: Model,\r\n loginMenu: LoginMenu,\r\n topLeftMenu: AdminTopLeftMenu\r\n }\r\n}\r\n\r\n\r\nconst adminScenarioStatusRoute = {\r\n path: '/admin/scenarioStatus',\r\n name: 'ScenarioStatus',\r\n components: {\r\n default: AdminMain,\r\n adminLeft: ScenariosList,\r\n adminRight: Scenario,\r\n loginMenu: LoginMenu,\r\n topLeftMenu: AdminTopLeftMenu\r\n }\r\n}\r\n\r\nconst notFoundRoute = {\r\n path: '*',\r\n components: {\r\n default: NotFound,\r\n }\r\n}\r\n\r\nexport const router = new VueRouter({\r\n mode: 'history',\r\n routes: [\r\n defaultRoute, adminRoute, adminUsersRoute, adminModelsRoute, adminLoginsRoute, adminScenarioStatusRoute,notFoundRoute\r\n ]\r\n})\r\n\r\n\r\nimport dateFilter from '@/filters/date.filter';\r\nimport timeFilter from '@/filters/time.filter';\r\nimport datetimeFilter from '@/filters/datetime.filter';\r\nimport currencyFilter from '@/filters/currency.filter';\r\nimport roundingFilter from '@/filters/rounding.filter';\r\nimport fixedNumberFilter from '@/filters/fixedNumber.filter';\r\nimport percentageFilter from '@/filters/percentage.filter';\r\n\r\nVue.filter('date', dateFilter);\r\nVue.filter('time', timeFilter);\r\nVue.filter('datetime', datetimeFilter);\r\nVue.filter('currency', currencyFilter);\r\nVue.filter('percentage', percentageFilter);\r\nVue.filter('rounding', roundingFilter);\r\nVue.filter('fixed', fixedNumberFilter);\r\n\r\nVue.config.productionTip = false\r\n\r\n\r\nexport default i18n;\r\n\r\nnew Vue({\r\n router,\r\n i18n,\r\n vuetify,\r\n store,\r\n \r\n render: h => h(App)\r\n}).$mount('#app')\r\n","// The module cache\nvar __webpack_module_cache__ = {};\n\n// The require function\nfunction __webpack_require__(moduleId) {\n\t// Check if module is in cache\n\tvar cachedModule = __webpack_module_cache__[moduleId];\n\tif (cachedModule !== undefined) {\n\t\treturn cachedModule.exports;\n\t}\n\t// Create a new module (and put it into the cache)\n\tvar module = __webpack_module_cache__[moduleId] = {\n\t\t// no module.id needed\n\t\t// no module.loaded needed\n\t\texports: {}\n\t};\n\n\t// Execute the module function\n\t__webpack_modules__[moduleId].call(module.exports, module, module.exports, __webpack_require__);\n\n\t// Return the exports of the module\n\treturn module.exports;\n}\n\n// expose the modules object (__webpack_modules__)\n__webpack_require__.m = __webpack_modules__;\n\n","var deferred = [];\n__webpack_require__.O = function(result, chunkIds, fn, priority) {\n\tif(chunkIds) {\n\t\tpriority = priority || 0;\n\t\tfor(var i = deferred.length; i > 0 && deferred[i - 1][2] > priority; i--) deferred[i] = deferred[i - 1];\n\t\tdeferred[i] = [chunkIds, fn, priority];\n\t\treturn;\n\t}\n\tvar notFulfilled = Infinity;\n\tfor (var i = 0; i < deferred.length; i++) {\n\t\tvar chunkIds = deferred[i][0];\n\t\tvar fn = deferred[i][1];\n\t\tvar priority = deferred[i][2];\n\t\tvar fulfilled = true;\n\t\tfor (var j = 0; j < chunkIds.length; j++) {\n\t\t\tif ((priority & 1 === 0 || notFulfilled >= priority) && Object.keys(__webpack_require__.O).every(function(key) { return __webpack_require__.O[key](chunkIds[j]); })) {\n\t\t\t\tchunkIds.splice(j--, 1);\n\t\t\t} else {\n\t\t\t\tfulfilled = false;\n\t\t\t\tif(priority < notFulfilled) notFulfilled = priority;\n\t\t\t}\n\t\t}\n\t\tif(fulfilled) {\n\t\t\tdeferred.splice(i--, 1)\n\t\t\tvar r = fn();\n\t\t\tif (r !== undefined) result = r;\n\t\t}\n\t}\n\treturn result;\n};","// getDefaultExport function for compatibility with non-harmony modules\n__webpack_require__.n = function(module) {\n\tvar getter = module && module.__esModule ?\n\t\tfunction() { return module['default']; } :\n\t\tfunction() { return module; };\n\t__webpack_require__.d(getter, { a: getter });\n\treturn getter;\n};","// define getter functions for harmony exports\n__webpack_require__.d = function(exports, definition) {\n\tfor(var key in definition) {\n\t\tif(__webpack_require__.o(definition, key) && !__webpack_require__.o(exports, key)) {\n\t\t\tObject.defineProperty(exports, key, { enumerable: true, get: definition[key] });\n\t\t}\n\t}\n};","__webpack_require__.g = (function() {\n\tif (typeof globalThis === 'object') return globalThis;\n\ttry {\n\t\treturn this || new Function('return this')();\n\t} catch (e) {\n\t\tif (typeof window === 'object') return window;\n\t}\n})();","__webpack_require__.o = function(obj, prop) { return Object.prototype.hasOwnProperty.call(obj, prop); }","// define __esModule on exports\n__webpack_require__.r = function(exports) {\n\tif(typeof Symbol !== 'undefined' && Symbol.toStringTag) {\n\t\tObject.defineProperty(exports, Symbol.toStringTag, { value: 'Module' });\n\t}\n\tObject.defineProperty(exports, '__esModule', { value: true });\n};","__webpack_require__.p = \"/\";","// no baseURI\n\n// object to store loaded and loading chunks\n// undefined = chunk not loaded, null = chunk preloaded/prefetched\n// [resolve, reject, Promise] = chunk loading, 0 = chunk loaded\nvar installedChunks = {\n\t143: 0\n};\n\n// no chunk on demand loading\n\n// no prefetching\n\n// no preloaded\n\n// no HMR\n\n// no HMR manifest\n\n__webpack_require__.O.j = function(chunkId) { return installedChunks[chunkId] === 0; };\n\n// install a JSONP callback for chunk loading\nvar webpackJsonpCallback = function(parentChunkLoadingFunction, data) {\n\tvar chunkIds = data[0];\n\tvar moreModules = data[1];\n\tvar runtime = data[2];\n\t// add \"moreModules\" to the modules object,\n\t// then flag all \"chunkIds\" as loaded and fire callback\n\tvar moduleId, chunkId, i = 0;\n\tif(chunkIds.some(function(id) { return installedChunks[id] !== 0; })) {\n\t\tfor(moduleId in moreModules) {\n\t\t\tif(__webpack_require__.o(moreModules, moduleId)) {\n\t\t\t\t__webpack_require__.m[moduleId] = moreModules[moduleId];\n\t\t\t}\n\t\t}\n\t\tif(runtime) var result = runtime(__webpack_require__);\n\t}\n\tif(parentChunkLoadingFunction) parentChunkLoadingFunction(data);\n\tfor(;i < chunkIds.length; i++) {\n\t\tchunkId = chunkIds[i];\n\t\tif(__webpack_require__.o(installedChunks, chunkId) && installedChunks[chunkId]) {\n\t\t\tinstalledChunks[chunkId][0]();\n\t\t}\n\t\tinstalledChunks[chunkId] = 0;\n\t}\n\treturn __webpack_require__.O(result);\n}\n\nvar chunkLoadingGlobal = self[\"webpackChunkiris\"] = self[\"webpackChunkiris\"] || [];\nchunkLoadingGlobal.forEach(webpackJsonpCallback.bind(null, 0));\nchunkLoadingGlobal.push = webpackJsonpCallback.bind(null, chunkLoadingGlobal.push.bind(chunkLoadingGlobal));","// startup\n// Load entry module and return exports\n// This entry module depends on other loaded chunks and execution need to be delayed\nvar __webpack_exports__ = __webpack_require__.O(undefined, [998], function() { return __webpack_require__(2512); })\n__webpack_exports__ = __webpack_require__.O(__webpack_exports__);\n"],"names":["attrs","environment","staticClass","_c","staticStyle","class","scopedSlots","key","fn","proxy","error","require","render","staticRenderFns","model","_vm","modalShow","expression","_v","on","Object","__extends","this","getError","__decorate","Mutation","Getter","Watch","Error","Component","components","Vue","component","disabled","alert","App","Loading","Vuetify","VInput","VAlert","VApp","VNavigationDrawer","VFooter","VList","VBtn","VIcon","VToolbar","VDataTable","VProgressLinear","VCol","VTooltip","VListItem","VListItemAction","VRow","VContent","VToolbarTitle","VContainer","VListItemContent","VListItemTitle","VAppBar","VAppBarNavIcon","VTreeview","VSelect","VDialog","VCard","VCardTitle","VOverlay","VProgressCircular","VCardText","VSpacer","VTextField","VAutocomplete","VChip","VExpansionPanel","VExpansionPanels","VExpansionPanelContent","VExpansionPanelHeader","VMenu","VCardActions","VRadioGroup","VRadio","VCardSubtitle","VSwitch","VImg","VSimpleTable","VLayout","VFlex","VSlider","VDivider","VListItemIcon","VListItemGroup","VForm","VCheckbox","VSubheader","VFileInput","VListItemAvatar","VCombobox","VTextarea","msalInstance","msalPluginInstance","opts","theme","themes","light","primary","secondary","accent","info","success","scope","clientId","loginAuthority","passwordAuthority","knownAuthority","_scope","vue","options","pluginOptions","initialize","prototype","$msal","msalConfig","auth","authority","knownAuthorities","msal","handleRedirectPromise","then","authResult","_this","isAuthenticated","getIsAuthenticated","catch","err","errorMessage","indexOf","loginRedirect","scopes","errorCode","getAllAccounts","loginRequest","_a","logout","request","account","acquireTokenSilent","response","accessToken","error_1","acquireTokenRedirect","accounts","length","getters","getModels","state","models","getModel","getSubModels","subModels","getSubModel","subModel","getFoundScenarioIds","foundScenarioIds","getScenarios","scenarios","getLocationPhoto","locationPhoto","getScenarioLocations","scenarioLocations","getAreaSetsVisible","areaSetsVisible","getPoiSetsVisible","poiSetsVisible","getHeatMapSetsVisible","heatMapSetsVisible","getDrivers","drivers","getLog","log","getScenario","scenario","getScenarioDifferences","scenarioDifferences","getOnlinePois","onlinePois","isDefaultScenario","id","getLocations","locations","getLocationsNotExcluded","locationsNotExcluded","getFilteredLocations","filterLocations","fLocations","filter","location","name","usage","sensitivity","locationGroup","localeIncludes","getMatchingLocations","matchingLocations","getMatchingScores","matchingScores","getLocationDrivers","locationDrivers","getPropertiesChart","propertiesChart","getLocation","getLocationProperties","locationProperties","getLocationPropertiesOld","locationPropertiesOld","getLocationScores","locationScores","getLocationIsoLines","locationIsoLines","getLocationCatchmentArea","locationCatchmentArea","getArea","area","getModelParameters","modelParameters","getScenarioProcessingLog","scenarioProcessingLog","getNormalizedScoresFunctions","normalizedScoresFunctions","getLocationEditing","locationEditing","getLocationClosing","locationClosing","getScenarioEditing","scenarioEditing","getScenarioNameEditing","scenarioNameEditing","getScenarioMerging","scenarioMerging","getFilterLocations","getFilterScenarios","filterScenarios","getStandByFilterLocations","standByFilterLocations","getStandByFilterScenarios","standByFilterScenarios","getSearchResults","searchResults","getMapBounds","mapBounds","getPois","pois","getHeatMapPoints","heatMapPoints","getReadOnly","readOnly","getMatchingColors","matchingColors","getIsoLineParameters","isoLineParameters","getScenarioLocationsVisible","scenarioLocationsVisible","getIsoLineSet","isoLineSet","getIsoLineMinutes","isoLineMinutes","getCatchmentArea","catchmentArea","filterPointTypeGeometries","features","forEach","feature","geometryType","geometry","type","geometries","cloneLocation","newLocation","assign","marker","actions","fetchModelParameters","context","commit","root","axios","data","saveMergingScenario","selectedLocations","scenarioId","destinationScenarioId","deleteSourceScenario","dispatch","mergeScenario","payload","fetchScenarioProcessingLog","fetchLog","eventType","source","fetchNormalizedScoresFunctions","saveModelParameters","functions","map","f","function","saveNormalizedScoresFunctions","fetchDrivers","saveDrivers","searchByBoundingBox","trim","north","west","south","east","fetchPois","promises","poiSet","point","latitude","longitude","Promise","all","results","_b","flat","fetchHeatMapPoints","heatMapSet","push","fetchModels","router","currentRoute","query","subModelId","modelId","setInterval","Date","now","rootState","lastUserActionDateTime","console","setModel","catchmentAreas","onMap","catchmentAreaMode","coverage","catchmentAreaId","areaSetId","isoLineSetId","catchmentAreasOnMap","isoLineSets","fetchSubModels","onlyStatus","setSubModel","status","setSubModelById","subModelToSet","setModelById","modelToSet","fetchScenarios","setLocation","existingScenario","parentScenarioId","fetchScenarioLocations","fetchAndSetScenarioChanges","changes","setScenario","fetchCatchmentAreaBusy","cancel","changeCount","changeType","setScenarioById","scenarioToSet","fetchLocations","sort","a","b","nameA","toUpperCase","nameB","localeCompare","locationId","fetchMatchingLocations","fetchMatchingScores","fetchOnlinePois","fetchLocationScores","fetchDriversForLocation","updatePath","path","setLocationByIdWithFocus","locationToSet","setLocationById","visibility","displayLocationPhoto","setLocationPropertiesVisibility","properties","locationGroups","find","group","locationGroupId","locationGroupCode","code","extendedProperties_1","numberValue","stringValue","property","dependencyExpression","expression_1","replace","v","subproperty","join","Expression","Evaluate","fetchLocationIsoLines","isoLinesFetchingBusy","fetchIsoLine","lng","lat","minutes","profile","encodeURIComponent","baseUrl","parameters","fetchCatchmentArea","resolve","setTimeout","cancelToken","token","featureCollection","fetchArea","url","arguments","areaCode","fetchAreaWithLocations","clearArea","editExistingLocation","locationProperty","autoCalculateType","propertyType","locationCluster","locationClusterId","fetchPropertiesChartData","locationProperty1","locationProperty2","findScenarios","searchString","Set","showPropertiesChart","editNewLocation","defaultValue","dataType","Number","choices","choice","locationGroupMandatory","x","selectable","saveLocationEditing","scenarioCreation","scenarioName","closeLocation","requestCalculateScenarioFromUser","i18n","buttonTrueText","buttonFalseText","res","requestScenarioNameFromUser","save","saveLocationClosing","undoCloseLocation","skipCalculate","undoEditLocation","removeLocation","calculateScenario","editScenario","editScenarioName","saveScenarioEditing","created","modified","removeScenario","clearScenarioDifferences","fetchScenarioDifferences","fetchScenarioParents","mutations","SET_MODELS","SET_MODEL","SET_FILTER","SET_FILTERSCENARIOS","SET_STANDBYFILTERLOCATIONS","SET_STANDBYFILTERSCENARIOS","SET_SCENARIOLOCATIONSVISIBLE","SET_SUBMODELS","SET_SUBMODEL","SET_SCENARIOS","SET_SCENARIOLOCATIONS","SET_LOG","SET_AREASETSVISIBLE","SET_POISETSVISIBLE","SET_HEATMAPSETSVISIBLE","SET_SCENARIO","SET_DRIVERS","SET_SCENARIODIFFERENCES","SET_LOCATIONS","excluded","SET_LOCATIONDRIVERS","SET_LOCATIONPHOTO","SET_MATCHINGLOCATIONS","SET_MATCHINGSCORES","SET_PROPERTIESCHART","SET_LOCATION","SET_LOCATIONPROPERTIES","SET_LOCATIONPROPERTIESOLD","SET_LOCATIONSCORES","SET_LOCATIONISOLINES","SET_LOCATIONCATCHMENTAREA","SET_LOCATIONONLINEPOIS","SET_AREA","SET_MODELPARAMETERS","SET_SCENARIOPROCESSINGLOG","SET_NORMALIZEDSCORESFUNCTIONS","SET_LOCATIONEDITING","SET_SCENARIOEDITING","SET_SCENARIONAMEEDITING","SET_SCENARIOMERGING","SET_SEARCHRESULTS","SET_MAPBOUNDS","SET_POIS","SET_HEATMAPPOINTS","SET_ISOLINEPARAMETERS","SET_ISOLINESET","SET_ISOLINEMINUTES","SET_CATCHMENTAREA","namespaced","main","getUsers","users","getLogins","logins","getSelectedUser","selectedUser","getUserModels","userModels","getSelectedModel","selectedModel","getSelectedScenario","selectedScenario","getModelUsers","modelUsers","getScenarioStatus","scenarioStatus","getLoginEditing","loginEditing","init","fetchUsers","fetchScenarioStatus","fetchLogins","syncLogins","deleteLogin","addLogin","newLogin","displayName","email","setSelectedUser","setSelectedModel","setSelectedScenario","fetchUserModels","userId","fetchModelUsers","saveSelectedModel","saveSelectedUser","user","calculateUnprocessedScenarios","SET_USERS","SET_LOGINS","SET_USERMODELS","SET_MODELUSERS","SET_SELECTEDUSER","SET_SELECTEDMODEL","SET_SELECTEDSCENARIO","SET_LOGINEDITING","SET_SCENARIOSTATUS","admin","Vuex","store","debug","busy","inProgress","databaseStatus","fileFormatCulture","isLoggedIn","bearerToken","version","notificationText","modules","plugins","createPersistedState","paths","storage","getItem","setItem","value","expires","secure","removeItem","getBusy","getDebug","getInProgress","getDatabaseStatus","getUser","getLastUserActionDateTime","getLanguages","languages","getFileFormatCulture","getIsLoggedIn","getBearerToken","getEnvironment","getVersion","getNotificationText","SET_VERSION","SET_DEBUG","SET_DATABASESTATUS","SET_ERROR","SET_FILEFORMATCULTURE","SET_USER","SET_STARTBUSY","SET_STARTINPROGRESS","SET_ENDBUSY","SET_ENDINPROGRESS","SET_NOTIFICATIONTEXT","text","loggedIn","_self_1","config","acquireToken","headers","Authorization","Accept","reject","downloadCsv","file","blob","Blob","link","document","createElement","href","URL","createObjectURL","download","click","revokeObjectURL","downloadFile","responseType","waitForDatabase","messages","nl","message","submodel","confirmCalculateScenario","search","scenarioNameAutomaticallyChangedNotificaton","scenarioDeletedBecauseEmptyNotificaton","setScenarioNameMessage","setScenarioName","saveAddToNewScenario","saveAddToThisScenario","saveAddToNewNestedScenario","saveEditInNewScenario","saveEditInThisScenario","saveEditInNewNestedScenario","closeMessage","closeLocationInNewScenario","closeLocationInThisScenario","closeLocationInNewNestedScenario","calculateThisScenario","nameRequired","scenarioLocationsVisibleOnMap","errorOccured","noTopScenariosFound","locationInDefaultScenario","generatedOn","foundLocations","of","page","selectAll","selectNone","heatMaps","print","no","yes","copyChangesInformation","copyChanges","nonShared","sharedWith","otherLocations","mergeScenarioSource","targetScenario","isTopScenarioDescription","isTopScenario","confirmClose","mobilePhone","calculationModel","warning","isoLine","scheduledDateTimeUtc","isoLinesMissingDateTimeUtc","startedDateTimeUtc","endedDateTimeUtc","noMatchingLocations","scenarioNameIsRequired","parentScenario","sourceLocations","sourceLocationsAllScenarios","driverFilterFunction","driverFilterTitle","addDriver","addDriverFilter","confirmRemoveScenario","confirmRemoveLocation","confirmUndoCloseLocation","confirmUndoEditLocation","filterAndSearch","matchingPercentage","drawerNotCalculated","drawerCalculating","legend","modelAdmin","globalAdmin","noChanges","export","noDrivers","condition","roundingDigits","inverse","report","matchingLocationsOutputChart","matchingLocationsSimilarityChart","driversChart","disclaimer","disclaimerContent","help","csvExport","dutchFormat","englishFormat","areaInformation","areaInformationCatchmentArea","adminPages","locationAreas","adminOnly","scenarioCompetition","calculationScheduled","calculationWaitingForIsolines","calculationStarted","calculationEnded","calculationScenarioError","calculationModelError","isolinesStarted","isolinesEnded","isolinesError","isolinesBusy","dateAndTime","action","last100records","propertyX","propertyY","tree","applicationTitle","title","login","share","personType","inhabitants","houseHolds","income","areaRevenuePerYear","areaRevenuePerPeriod","areaStandardConsumers","total","travelTimeScores","from","calculation","perYear","outputSpending","outputNumber","car","pedestrian","scorePersonType","calculated","format","scoresLocationGroup","scoresShop","scoresRetailArea","retailArea","changedLocations","opening","closure","edited","edit","addScenario","infoScenario","calculate","add","scenarioCreated","scenarioModified","scenarioCreatedBy","scenarioModifiedBy","scenarioReport","description","settings","new","none","editModelParameters","editDrivers","drawerEmptyText","score","information","graphics","layers","impact","impactCar","impactPedestrian","display","top10","top25","top","fraction","fractionCumulative","showTravelTimes","travelTimes","expressions","powerFactor","constant","scale","max","by","fractionCutOffThreshold","differenceDefaultScenario","reports","locationsType1Name","locationsType2Name","locationsType1FilterLocations","locationsType2FilterLocations","googleSearch","locationType1Scores","locationType2Scores","areaScores","locationsType1Impact","locationsType2Impact","locationGroupsType1Name","locationGroupsType2Name","locationsGroupsType1Impact","locationsGroupsType2Impact","locationsClustersType1Impact","locationsClustersType2Impact","locationsClustersType1EmptyName","locationsClustersType2EmptyName","locationsGroupsType1EmptyName","locationsGroupsType2EmptyName","locationClustersType1Name","locationClustersType2Name","outputType1Name","outputType2Name","outputType3Name","outputType4Name","areasType1Name","areasType2Name","locationsType1New","locationsType2New","close","delete","undoClose","undoEdit","modelFunctionTypeToUse","ncalcMessage","calculationModelOutput","locationsOutput","scenarioLocationsOutput","scenarioLocationsAllScenarios","scenarioLocationsOutputDescription","scenarioLocationsOutputDescriptionWithHidden","locationsOutputDescription","catchmentAreaInformationExport","areaInformationExport","areaInformationExportDescription","weight","editNormalizedScoresFunctions","before","after","difference","localSituation","dontShow","scenarioStatusEdited","scenarioStatusWaiting","scenarioStatusProcessing","scenarioStatusCompleted","scenarioStatusCompletedWithErrors","pleaseLogin","busyLoading","searchMap","en","catchmentAreaInformationExportCarDescription","catchmentAreaInformationExportPedestrianDescription","de","loaded","$event","signOut","signIn","LoginMenu","oldValue","_self","MsalPlugin","Action","onMenu","_s","_e","namespace","ModelMenu","$i18n","locale","language","_setupProxy","mainLogoUrl","hasMainLogo","secondaryLogoUrl","hasSecondaryLogo","ModelLogo","NotFound","locationReportVisible","setStartBusy","setLocationDrivers","locationScoresVisible","areaScoresVisible","matchingLocationsOutputChartVisible","matchingLocationsRadarChartVisible","setLog","driversChartVisible","_u","$t","propertiesChartVisible","setEndBusy","setStartInProgress","legendChanged","showDriversChart","scenarioReportVisible","setNotificationText","ref","leftDrawer","rightDrawer","width","locationContextMenuArguments","navigateTo","mapContextMenuArguments","style","position","left","formatCoordinates","createScenarioParentId","visibleAreaSets","areaSet","onTooltip","scenariosMenuVisible","preventDefault","callback","item","marginLeft","change","locationName","setScenarioAndCloseMenu","isTop","competition","scenarioHasChildren","mergeScenarioLocal","filterMenuVisible","setFilterLocations","allowMultipleAreaSets","areaSetVisible","$$v","heatMapSetVisible","selectNoPoiSets","poiSetVisible","_l","i","maximumMinutes","searchMenuVisible","searchLocal","userIsGlobalAdmin","isoLineParameter","showIsoLineHelp","$set","legendData","ScenarioStatus","Prop","default","legendItem","ID","color","getTextColorForBackground","r","g","rNorm","gNorm","bNorm","luminance","backgroundColor","startsWith","hex","parseInt","substring","rgb","match","brightness","getBrightness","MapLegend","FloatingMenu","setStandByFilterScenarios","setCatchmentArea","setIsoLineSet","setIsoLineMinutes","setScenarioLocationsVisible","setStandByFilterLocations","setAreaSetsVisible","setPoiSetsVisible","setHeatMapSetsVisible","setFileFormatCulture","_filteredAreaSets","areaSets","isWhiteSpot","helpUrl","locationWithMaxName","maxLength","scenarioWithMaxName","$confirm","String","topScenarios","$emit","provider","window","open","visible","poiSets","nodesArray","parentMap","Map","parentId","has","set","get","stack","node","level","pop","children","this_1","child","self","found","childScenario","index","locationGroupProperties","addLine","$on","$options","addEventListener","e","row","splice","f1","Description","Function","DefaultValue","EditModelParameters","selectViewLocation","sectionViewSize","items","onlyImpact","changedResult","oldNumberValue","Math","abs","onlyCurrentValue","positiveResult","negativeResult","round","_f","currency","oldStringValue","rangeColor","getRangeColor","output","getChoice","choice_1","valueLocal","minimumValue","min","maximumValue","ratio","hexToRgb","bigint","slice","minRgb","minimumColor","maxRgb","maximumColor","rgbToHex","toString","PropertyValue","convertMdiBracketToIcon","input","iconName","removeMdiBracketToIcon","Properties","filteredLocationProperties","reduce","acc","sectionViewOrder","viewLocation","LocationInformation","removeDriverFilter","d","driverFilters","driverFilter","driver","Title","Drivers","Weight","RoundingDigits","Inverse","EditDrivers","_setup","userIsAdmin","$tc","locationScore","LocationScores","localShow","Dialog","show","metersPerPx","cos","PI","pow","getZoom","heatMapRadius","zoom","center","google","maps","LatLng","scaleControl","gestureHandling","mapTypeControl","mapTypeControlOptions","ControlPosition","BOTTOM_CENTER","streetViewControl","streetViewControlOptions","rotateControl","fullscreenControl","zoomControl","mapId","getElementById","_uid","setStyle","getFeatureStyle","event","addListener","pixel","y","latLng","bounds","getBounds","northEast","getNorthEast","southWest","getSouthWest","heatmaps","heatMap","getHeatmapRadius","tooltipElement","className","appendChild","overlay","OverlayView","setMap","getProperty","getProjection","fromLatLngToContainerPixel","innerHTML","touchTimer","domEvent","pointerType","onlongtouch","clearTimeout","placeId","stop","omsLocations","OverlappingMarkerSpiderfier","markersWontMove","markersWontHide","legWeight","omsScenarioLocations","markerClustererPois","MarkerClusterer","zIndex","ZINDEXPOI","clusterClass","enableRetinaIcons","styles","textColor","height","markerClustererLocations","ZINDEXLOCATION","markerClustererScenarioLocations","ZINDEXSCENARIOLOCATION","onRefresh","onModelChanged","onLocationsChanged","onLocationCatchmentAreaChanged","onLocationChanged","onAreaSetsVisibleChanged","modelIsChanged","overlayMapTypes","clear","includes","areasLayer","ImageMapType","getTileUrl","coord","mapTilesZoomLevelsAvailable","regex","areaSetBlobName","toLowerCase","tileSize","Size","insertAt","foundLocation","oldLocation","findLocationById","oldLocationMarker","newLocationMarker","setIcon","getIcon","setZoom","setCenter","getPosition","circles","circle","mapRanges","mapRange","Circle","strokeColor","strokeOpacity","strokeWeight","fillColor","fillOpacity","radius","clickable","topRight","fromLatLngToPoint","bottomLeft","worldPoint","Point","importLibrary","markersSearchResults","markerSearchResult","LatLngBounds","poi","customMarker","pngImage","src","iconElement","icon","transform","fontSize","extend","AdvancedMarkerElement","content","ZINDEXSEARCHRESULT","category","isEmpty","fitBounds","right","rightPadding","leftPadding","bottom","clearMarkers","allPois","concat","markersPois","origin","scaledSize","anchor","poiSetId","logoHash","Marker","cursor","setMaxZoom","clusterPoiMaxZoom","setGridSize","clusterGridSize","addMarkers","calculateClusterMaxZoom","addPoisToMap","heatMapSetPoints","heatMapData","MVCArray","heatmap","visualization","HeatmapLayer","heatMapSets","radiusInMeters","dissipating","opacity","maxIntensity","locationsCount","poiCount","scenarioLocationsCount","clusterMaxZoom","removeAllMarkers","boundsChanged","markersLocations","addMarker","markersScenarioLocations","scenarioLocation","forgetAllMarkers","longitudeTotal","latitudeTotal","trackMarker","setVisible","selected","isScenario","overlay1","overlay2","locationIsoLinesFeatures","remove","addGeoJson","percent","newR","newG","newB","darkenedHex","padStart","highlight","active","darkenColor","formattedCurrency","filters","maximumFractionDiff","locationCatchmentAreaFeatures","maximumDelta_1","maxDelta","locationCatchmentAreaFeatures_1","total_1","accumulator","valueSharePrevious","fractionDiff","catchmentAreaZoneColor","pickHex","deltaString","sameAsParent","valueDefault","impactString","outputType","formatNumberAsCurrency","belowThreshold","locationPropertyId","title_1","nonShared_1","shared_1","total_2","originalOutput","bounds_1","getGeometry","processGeometry","createLegend","getType","forEachLatLng","getArray","geo","catchmentAreaZones","catchmentAreaZone","catchmentAreaName","color1","color2","w1","w2","h","areaLines","line","areaFeatures","arrow","Polyline","areaPoint","locationPoint","cityCircle","totalValue","Boolean","GoogleMap","CalculationModelOutput","ScenarioProcessingLog","align","sortable","spin","CatchmentAreaInformation","areas","_filteredAreas","outputLocationPropertyId","MatchingLocations","nameRules","changed","locationClusters","locationClustersType","locationPropertiesBySection","section","sectionSecondary","directives","rawName","$value","stopPropagation","menu","fieldsToValidate","$refs","form","validate","fieldRef","field","isValid","$el","scrollIntoView","behavior","valid","percentageValue","list","keyGetter","collection","EditLocation","groupBy","sectionTitle","areaProperty","locationForArea","AreaInforamtion","originalScenario","EditScenario","CloseLocation","EditScenarioName","scenariosSorted","CopyChanges","sorted","filtered","minutesCar","minutesPedestrian","AreaScores","EditNormalizedScoresFunctions","chartOptions","chartData","background","outputLocationPropertyTitle","actualOutputLocationPropertyValue","actualOutputLocationPropertyTitle","MatchingLocationsOutputChart","data_1","dataActual_1","labels_1","outputLocationPropertyValue","dataSets","axis","label","barPercentage","barThickness","categoryPercentage","borderWidth","datalabels","labels","datasets","responsive","maintainAspectRatio","indexAxis","animation","duration","scales","border","grid","ticks","crossAlign","font","size","maxTicksLimit","tooltip","enabled","formatter","fixed","Bar","MatchingLocationsRadarChart","datasets_1","dataset","pointBackgroundColor","borderColor","pointBorderColor","pointBorderWidth","pointRadius","normalizedScores","normalizedScore","split","stepSize","suggestedMax","suggestedMin","beginAtZero","backdropColor","pointLabels","padding","usePointStyle","Radar","avgPos","minPos","maxPos","valPos","DriversChart","widthPx","halfWidthPx","locationDriver","maxAboveAvg","maximum","average","minBelowAvg","minimum","PropertiesChart","propertiesChartData","numberValue1","numberValue2","Scatter","refresh","endBusy","startBusy","sections","index2","areaProperties","Window","LocationReport","outputDefaultScenario","arr","sectionName","el","scenarioDifference","locationID","outputDifference","calculateTotelDifference","locationGroupName","locationClusterName","paragraph","ModelPropertyValue","ScenarioReport","sumOutputDifference","sum","returnValue","differentLocation","sources","singleValue","Log","innerWidth","args","degree","absolute","degrees","floor","minutesNotTruncated","seconds","toFixed","latDMS","convertToDMS","lonDMS","latDirection","lonDirection","formattedLat","formattedLon","Home","leftDrawerInterval","ld","setEvents","clearInterval","rightDrawerInterval","struct","drawerBorder","querySelector","direction","classList","contains","resize","body","scrollWidth","clientX","offsetX","getBoundingClientRect","transition","removeEventListener","ModelOutput","AreaInformation","borderSize","minSize","immediate","deep","AdminMain","$route","$router","TopLeftMenu","emailRules","test","password","IsAdmin","DisplayName","Email","Password","AdminAddLogin","onGetIsLoggedInChanged","AdminUsers","_filteredUsers","identity","AdminLogins","_filteredLogins","hasAccess","s","AdminScenarios","unprocessed","processing","completed","failed","totalUnprocessed","totalProcessing","totalCompleted","totalFailed","_filteredModels","isAdmin","deletedUsers","deletedFromAzureAd","date","localeObject","enUS","es","fr","charAt","Intl","NumberFormat","minimumFractionDigits","maximumFractionDigits","digits","VuetifyConfirm","vuetify","ChartJS","Tooltip","Legend","BarElement","CategoryScale","LinearScale","PointElement","RadialLinearScale","LineElement","LineController","ChartDataLabels","Fragment","VueI18n","VueRouter","defaultRoute","Main","loginMenu","modelMenu","modelLogo","topLeftMenu","adminRoute","AdminTopLeftMenu","adminUsersRoute","adminLeft","UsersList","adminRight","User","adminLoginsRoute","LoginsList","AddLogin","adminModelsRoute","ModelsList","Model","adminScenarioStatusRoute","ScenariosList","Scenario","notFoundRoute","mode","routes","dateFilter","timeFilter","datetimeFilter","currencyFilter","percentageFilter","roundingFilter","fixedNumberFilter","$mount","__webpack_module_cache__","__webpack_require__","moduleId","cachedModule","undefined","exports","module","__webpack_modules__","call","m","deferred","O","result","chunkIds","priority","notFulfilled","Infinity","fulfilled","j","keys","every","n","getter","__esModule","definition","o","defineProperty","enumerable","globalThis","obj","prop","hasOwnProperty","Symbol","toStringTag","p","installedChunks","chunkId","webpackJsonpCallback","parentChunkLoadingFunction","moreModules","runtime","some","chunkLoadingGlobal","bind","__webpack_exports__"],"sourceRoot":""}