{"version":3,"sources":["webpack:///./src/components/SystemMessage/ModalSystemMessageInfo.vue?ac9e","webpack:///./src/components/MainSiteElements/Manage/TopBar.vue","webpack:///src/components/MainSiteElements/Manage/TopBar.vue","webpack:///./src/components/MainSiteElements/Manage/TopBar.vue?a295","webpack:///./src/components/MainSiteElements/Manage/TopBar.vue?970c","webpack:///./src/eventbus/event-bus.js","webpack:///./src/components/MainSiteElements/Manage/TopBar.vue?f592","webpack:///./node_modules/bulma-toast/dist/bulma-toast.min.js","webpack:///./src/components/SystemMessage/SystemMessage.vue","webpack:///./src/providers/systemmessage.js","webpack:///./src/components/SystemMessage/ModalSystemMessageInfo.vue","webpack:///src/components/SystemMessage/ModalSystemMessageInfo.vue","webpack:///./src/components/SystemMessage/ModalSystemMessageInfo.vue?6e01","webpack:///./src/components/SystemMessage/ModalSystemMessageInfo.vue?e91b","webpack:///src/components/SystemMessage/SystemMessage.vue","webpack:///./src/components/SystemMessage/SystemMessage.vue?d862","webpack:///./src/components/SystemMessage/SystemMessage.vue?b121","webpack:///./src/providers/notification.js","webpack:///./src/components/MainSiteElements/Manage/SiteMenu.vue","webpack:///src/components/MainSiteElements/Manage/SiteMenu.vue","webpack:///./src/components/MainSiteElements/Manage/SiteMenu.vue?babb","webpack:///./src/components/MainSiteElements/Manage/SiteMenu.vue?0553","webpack:///./src/components/MainSiteElements/Manage/SiteMenu.vue?da37","webpack:///./src/views/Manage.vue?a6fd","webpack:///./src/components/SystemMessage/SystemMessage.vue?9eb6","webpack:///./src/components/UI/Components/Tutorial.vue?50cd","webpack:///./src/components/UI/Components/Tutorial.vue","webpack:///src/components/UI/Components/Tutorial.vue","webpack:///./src/components/UI/Components/Tutorial.vue?0d4b","webpack:///./src/components/UI/Components/Tutorial.vue?9a7a","webpack:///./src/views/Manage.vue","webpack:///src/views/Manage.vue","webpack:///./src/views/Manage.vue?429b","webpack:///./src/views/Manage.vue?4d50","webpack:///./src/components/UI/Message.vue","webpack:///src/components/UI/Message.vue","webpack:///./src/components/UI/Message.vue?5d20","webpack:///./src/components/UI/Message.vue?fb09"],"names":["render","_vm","this","_c","_self","staticClass","showMenu","attrs","showLeftDrawer","drawerTitle","hideDrawer","_e","showRightDrawer","drawerSize","scopedSlots","_u","key","fn","showCreateReservation","showNotificationsDrawer","on","showPinDrawer","showSchedule","showTodos","locationState","Id","proxy","FirstRun","showMobileMenu","setShowMenuDrawer","_v","_s","Name","Locked","isAdmin","BackendCreateReservation","setShowCreateReservation","$t","setShowSchedule","setShowTodos","setShowPinDrawer","setShowNotificationsDrawer","notifications","length","profile","staticRenderFns","name","components","CreateReservation","DrawerMobileMenu","LoggedInProfile","Notifications","PinList","SearchInput","Schedule","ToDos","data","onLine","navigator","drawerTitles","pin","mobile","window","innerWidth","computed","_objectSpread","mapState","profileState","IsAdmin","watch","v","_this","showBackOnline","setTimeout","created","_this2","self","EventBus","$on","val","width","mounted","addEventListener","updateOnlineStatus","beforeDestroy","removeEventListener","$off","methods","mapMutations","e","type","goToCreateReservation","$router","push","goToSchedule","goToTasks","sethowDrawer","component","Vue","a","b","exports","c","Object","keys","getOwnPropertySymbols","d","filter","getOwnPropertyDescriptor","enumerable","apply","arguments","forEach","g","getOwnPropertyDescriptors","defineProperties","defineProperty","TypeError","configurable","writable","f","prototype","value","h","o","document","i","n","position","createElement","setAttribute","p","appendChild","j","remove","k","message","Error","m","q","appendTo","body","offsetTop","offsetBottom","offsetLeft","offsetRight","single","lastElementChild","removeChild","element","l","duration","closeOnClick","opacity","extraClasses","concat","animate","dismissible","pauseOnHover","speed","onAnimationEnd","classList","className","join","destroy","insertAdjacentElement","insertAdjacentHTML","r","pause","resume","out","add","removeParent","parentNode","children","animation","OAnimation","MozAnimation","WebkitAnimation","style","timer","start","remaining","callback","clearTimeout","Date","resetDefaults","setDefaults","setDoc","toast","filteredMessages","showMessageInfo","hideModal","modalSize","selectedMessage","enter","leave","displayIndex","MessageType","toLowerCase","nativeOn","$event","stopAutoScroll","loopMessages","Message","_l","counter","index","goToMessage","openMessageInfoModal","getSystemMessage","_asyncToGenerator","_regenerator","_callee","response","w","_context","axios","get","process","headers","apiToken","profileToken","store","getters","onClickCancel","showModal","class","domProps","statusText","updates","$options","filters","nl2br","Update","dateFormat","convertTimeStampToIsoDateTimeString","CreatedOn","$i18n","locale","_f","showAllUpdates","slice","update","showUpdates","LastUpdateOn","props","default","Boolean","String","Function","required","Updates","result","ModalSystemMessageInfo","systemMessages","autoScrollTimer","getSystemMessages","results","MessageStatus","systemmessageProvider","then","status","originalMessages","JSON","stringify","newMessages","catch","msgIndex","getProfileLocationNotifications","locationId","getProfileLocationNotificationRules","_callee2","_context2","saveProfileLocationNotificationRules","notificationRules","_callee3","_context3","post","markAllAsRead","_callee4","_context4","put","params","deleteNotification","notificationId","_callee5","_context5","delete","Number","Menu","MenuFooter","mapGetters","selectedMenuItems","_this$menu","menu","Categories","mapActions","clearDetailPageSubMenu","currentTutorialItem","afterEnter","afterLeave","activeIndex","ref","tutorialItemRelativePos","title","isWelcome","currentStep","totalSteps","undefined","linkHref","showPreviousButton","previousTutorialItem","showSkipButton","skipTutorial","showNextButton","nextTutorialItem","showStartButton","showFinishButton","closeTutorial","refPageWrapper","scrollPosition","pageHeight","startupReady","scrollByValue","hasWelcome","currentTutorialItems","updateGroupIndex","show","count","startup","positionCard","clearTutorialItems","tutorialReopened","tutorialItems","mergeAllTutorialArrays","$localforge","tutorialPage","lastSeenIndex","t","output","screen","browserWidth","browserHeight","innerHeight","cardHeight","$refs","tutorialBox","clientHeight","cardWidth","clientWidth","tutorialPointerUp","tutorialPointerDown","tutorialPointerLeft","tutorialPointerRight","tutorialCard","DOMelement","getElementById","pos","getBoundingClientRect","setTutorialItemPosition","scrollTop","scrollHeight","top","bottom","Math","abs","$emit","dif","y","left","height","right","set","resetTutorial","appStartupLoadReady","isLoggedIn","isInitiated","isLoading","showTutorial","pageWrapper","scrollToTutorialItem","scrollToTop","scrollFunction","$route","bulmaToast","SiteMenu","UiTutorial","TopBar","SystemMessage","isDashboardView","cssPagedMedia","tutorialItemPosition","checkHasLocationAccess","handler","meta","deep","printPageOrientation","el","size","setPrintPageOrientation","beforeCreate","$nextTick","$store","documentElement","error","generateCssPageMedia","showToast","pageScollTo","getScreenproperties","commit","_ref","_ref$top","_ref$left","scrollTo","_this3","getHasLocationAccess","all","checkLocationState","getMenuItems","spread","locationStateResponse","setLocationState","getProfileNotifications","loadSupportWidget","DOMContentLoaded_event","createEvent","initEvent","dispatchEvent","finally","widgetScript","src","async","onload","head","rule","innerHTML","pageMargin","siteTopBar","siteMainWrapper","offsetHeight","pageWrapperScroll","posValue","scrollBy","behavior","clearLocationState","getLocationState","locationProvider","getLocationData","getLocationMenu","_this4","notificationProvider","setNotifications","in","combindedClass","_t"],"mappings":"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","file":"js/manage.js?id=0223ce272609e93c6e1b","sourcesContent":["export * from \"-!../../../node_modules/mini-css-extract-plugin/dist/loader.js??ref--9-oneOf-1-0!../../../node_modules/css-loader/dist/cjs.js??ref--9-oneOf-1-1!../../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../../node_modules/postcss-loader/src/index.js??ref--9-oneOf-1-2!../../../node_modules/sass-loader/dist/cjs.js??ref--9-oneOf-1-3!../../../node_modules/cache-loader/dist/cjs.js??ref--1-0!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./ModalSystemMessageInfo.vue?vue&type=style&index=0&id=7693b954&prod&lang=scss&scoped=true\"","var render = function render(){var _vm=this,_c=_vm._self._c;return _c('div',{staticClass:\"site-topbar\"},[(_vm.showMenu)?_c('DrawerMobileMenu',{attrs:{\"showDrawer\":_vm.showLeftDrawer,\"drawerTitle\":_vm.drawerTitle,\"onClickClose\":_vm.hideDrawer,\"position\":\"left\"}}):_vm._e(),(_vm.showRightDrawer)?_c('ui-component-drawer',{attrs:{\"drawerTitle\":_vm.drawerTitle,\"showDrawer\":_vm.showRightDrawer,\"drawerSize\":_vm.drawerSize,\"onClickClose\":_vm.hideDrawer,\"position\":\"right\"},scopedSlots:_vm._u([{key:\"content\",fn:function(){return [(_vm.showCreateReservation)?_c('CreateReservation'):_vm._e(),(_vm.showNotificationsDrawer)?_c('Notifications',{on:{\"settingsClicked\":_vm.hideDrawer,\"notificationClicked\":_vm.hideDrawer}}):_vm._e(),(_vm.showPinDrawer)?_c('PinList',{on:{\"pinClicked\":_vm.hideDrawer}}):_vm._e(),(_vm.showSchedule)?_c('Schedule',{attrs:{\"openedInDrawer\":true}}):_vm._e(),(_vm.showTodos)?_c('ToDos',{key:\"toDos\",attrs:{\"locationId\":_vm.locationState.Id,\"showLink\":true}}):_vm._e()]},proxy:true}],null,false,2037493381)}):_vm._e(),_c('nav',{staticClass:\"navbar has-shadow\",attrs:{\"role\":\"navigation\",\"aria-label\":\"main navigation\"}},[_c('div',{staticClass:\"navbar-brand\"},[(_vm.locationState && !_vm.locationState.FirstRun && _vm.showMobileMenu)?_c('div',{staticClass:\"navbar-item\"},[_c('a',{staticClass:\"button is-small\",on:{\"click\":_vm.setShowMenuDrawer}},[_c('font-awesome-icon',{attrs:{\"icon\":['far', 'bars']}})],1)]):_vm._e(),(_vm.locationState)?_c('div',{staticClass:\"navbar-item\"},[_c('div',[_c('strong',[_vm._v(_vm._s(_vm.locationState.Name))])])]):_vm._e()]),_c('div',{staticClass:\"navbar-end\"},[(_vm.locationState && !_vm.locationState.FirstRun && !_vm.locationState.Locked)?[(_vm.locationState && _vm.isAdmin)?_c('div',{staticClass:\"navbar-item mr-6\"},[_c('SearchInput',{attrs:{\"locationId\":_vm.locationState.Id}})],1):_vm._e(),(_vm.locationState)?_c('div',{staticClass:\"navbar-item\"},[(_vm.locationState.BackendCreateReservation)?_c('a',{staticClass:\"navbar-item button is-primary is-small\",on:{\"click\":_vm.setShowCreateReservation}},[_c('span',{staticClass:\"icon\"},[_c('font-awesome-icon',{attrs:{\"icon\":['fas', 'plus']}})],1),_c('span',[_vm._v(_vm._s(_vm.$t('Components.MainSiteElements.TopBar.Icon_NewReservation')))])]):_vm._e()]):_vm._e(),(_vm.locationState)?_c('div',{staticClass:\"navbar-item\"},[_c('a',{staticClass:\"navbar-item button is-small\",on:{\"click\":_vm.setShowSchedule}},[_c('span',{staticClass:\"icon\"},[_c('font-awesome-icon',{attrs:{\"icon\":['fas', 'calendar-alt']}})],1),_c('span',[_vm._v(_vm._s(_vm.$t('Components.MainSiteElements.TopBar.Icon_Schedule')))])])]):_vm._e(),(_vm.locationState)?_c('div',{staticClass:\"navbar-item\"},[_c('a',{staticClass:\"navbar-item button is-small\",on:{\"click\":_vm.setShowTodos}},[_c('span',{staticClass:\"icon\"},[_c('font-awesome-icon',{attrs:{\"icon\":['fas', 'tasks']}})],1),_c('span',[_vm._v(_vm._s(_vm.$t('General.ToDos')))])])]):_vm._e(),(_vm.locationState)?_c('div',{staticClass:\"navbar-item\"},[_c('a',{staticClass:\"navbar-item button is-small\",on:{\"click\":_vm.setShowPinDrawer}},[_c('span',{staticClass:\"icon\"},[_c('font-awesome-icon',{attrs:{\"icon\":['fas', 'thumbtack']}})],1),_c('span',[_vm._v(_vm._s(_vm.$t('Components.MainSiteElements.TopBar.Icon_Pins')))])])]):_vm._e(),_c('div',{staticClass:\"navbar-item\"},[_c('a',{staticClass:\"navbar-item button is-small\",on:{\"click\":_vm.setShowNotificationsDrawer}},[(_vm.notifications.length === 0)?_c('span',{staticClass:\"icon\"},[_c('font-awesome-icon',{attrs:{\"icon\":['fas', 'bell']}})],1):_vm._e(),(_vm.notifications.length !== 0)?_c('span',{staticClass:\"icon has-badge-rounded\",attrs:{\"data-badge\":_vm.notifications.length}},[_c('font-awesome-icon',{attrs:{\"icon\":['fas', 'bell']}})],1):_vm._e()])])]:_vm._e(),(_vm.profile)?_c('div',{staticClass:\"navbar-item\"},[_c('LoggedInProfile',{attrs:{\"size\":\"is-small\"}})],1):_vm._e()],2)])],1)\n}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","<template>\n  <div class=\"site-topbar\">\n    <DrawerMobileMenu\n      v-if=\"showMenu\"\n      :showDrawer=\"showLeftDrawer\"\n      :drawerTitle=\"drawerTitle\"\n      :onClickClose=\"hideDrawer\"\n      position=\"left\"\n    />\n\n    <ui-component-drawer\n      v-if=\"showRightDrawer\"\n      :drawerTitle=\"drawerTitle\"\n      :showDrawer=\"showRightDrawer\"\n      :drawerSize=\"drawerSize\"\n      :onClickClose=\"hideDrawer\"\n      position=\"right\"\n    >\n      <template v-slot:content>\n        <CreateReservation v-if=\"showCreateReservation\" />\n\n        <Notifications\n          v-if=\"showNotificationsDrawer\"\n          @settingsClicked=\"hideDrawer\"\n          @notificationClicked=\"hideDrawer\"\n        />\n\n        <PinList\n          v-if=\"showPinDrawer\"\n          @pinClicked=\"hideDrawer\"\n        />\n\n        <Schedule\n          v-if=\"showSchedule\"\n          :openedInDrawer=\"true\"\n        />\n\n        <ToDos\n          v-if=\"showTodos\"\n          key=\"toDos\"\n          :locationId=\"locationState.Id\"\n          :showLink=\"true\"\n        />\n      </template>\n    </ui-component-drawer>\n\n    <nav\n      class=\"navbar has-shadow\"\n      role=\"navigation\"\n      aria-label=\"main navigation\"\n    >\n      <div class=\"navbar-brand\">\n        <div\n          v-if=\"locationState && !locationState.FirstRun && showMobileMenu\"\n          class=\"navbar-item\"\n        >\n          <a\n            class=\"button is-small\"\n            @click=\"setShowMenuDrawer\"\n          >\n            <font-awesome-icon :icon=\"['far', 'bars']\" />\n          </a>\n        </div>\n        <div\n          v-if=\"locationState\"\n          class=\"navbar-item\"\n        >\n          <div>\n            <strong>{{ locationState.Name }}</strong>\n            <!-- <location-picker /> -->\n          </div>\n        </div>\n      </div>\n\n      <div class=\"navbar-end\">\n        <template v-if=\"locationState && !locationState.FirstRun && !locationState.Locked\">\n          <div\n            v-if=\"locationState && isAdmin\"\n            class=\"navbar-item mr-6\"\n          >\n            <SearchInput :locationId=\"locationState.Id\" />\n          </div>\n\n          <div\n            v-if=\"locationState\"\n            class=\"navbar-item\"\n          >\n            <a\n              @click=\"setShowCreateReservation\"\n              class=\"navbar-item button is-primary is-small\"\n              v-if=\"locationState.BackendCreateReservation\"\n            >\n              <span class=\"icon\">\n                <font-awesome-icon :icon=\"['fas', 'plus']\" />\n              </span>\n              <span>{{ $t('Components.MainSiteElements.TopBar.Icon_NewReservation') }}</span>\n            </a>\n          </div>\n\n          <div\n            v-if=\"locationState\"\n            class=\"navbar-item\"\n          >\n            <a\n              @click=\"setShowSchedule\"\n              class=\"navbar-item button is-small\"\n            >\n              <span class=\"icon\">\n                <font-awesome-icon :icon=\"['fas', 'calendar-alt']\" />\n              </span>\n              <span>{{ $t('Components.MainSiteElements.TopBar.Icon_Schedule') }}</span>\n            </a>\n          </div>\n\n          <div\n            v-if=\"locationState\"\n            class=\"navbar-item\"\n          >\n            <a\n              @click=\"setShowTodos\"\n              class=\"navbar-item button is-small\"\n            >\n              <span class=\"icon\">\n                <font-awesome-icon :icon=\"['fas', 'tasks']\" />\n              </span>\n              <span>{{ $t('General.ToDos') }}</span>\n            </a>\n          </div>\n\n          <div\n            v-if=\"locationState\"\n            class=\"navbar-item\"\n          >\n            <a\n              @click=\"setShowPinDrawer\"\n              class=\"navbar-item button is-small\"\n            >\n              <span class=\"icon\">\n                <font-awesome-icon :icon=\"['fas', 'thumbtack']\" />\n              </span>\n              <span>{{ $t('Components.MainSiteElements.TopBar.Icon_Pins') }}</span>\n            </a>\n          </div>\n\n          <div class=\"navbar-item\">\n            <a\n              @click=\"setShowNotificationsDrawer\"\n              class=\"navbar-item button is-small\"\n            >\n              <span\n                class=\"icon\"\n                v-if=\"notifications.length === 0\"\n              >\n                <font-awesome-icon :icon=\"['fas', 'bell']\" />\n              </span>\n\n              <span\n                v-if=\"notifications.length !== 0\"\n                class=\"icon has-badge-rounded\"\n                :data-badge=\"notifications.length\"\n              >\n                <font-awesome-icon :icon=\"['fas', 'bell']\" />\n              </span>\n            </a>\n          </div>\n        </template>\n\n        <div\n          v-if=\"profile\"\n          class=\"navbar-item\"\n        >\n          <LoggedInProfile size=\"is-small\" />\n        </div>\n      </div>\n    </nav>\n  </div>\n</template>\n\n<script>\nimport { mapState, mapMutations } from 'vuex';\nimport EventBus from '@/eventbus/event-bus';\n\nexport default {\n  name: 'manage-TopBar',\n\n  components: {\n    CreateReservation: () => import(/* webpackChunkName: \"topbar\" */ '@/components/Reservations/CreateReservation'),\n    DrawerMobileMenu: () => import(/* webpackChunkName: \"topbar\" */ '@/components/MainSiteElements/DrawerMobileMenu'),\n    LoggedInProfile: () => import(/* webpackChunkName: \"topbar\" */ '@/components/MainSiteElements/LoggedInProfile'),\n    Notifications: () => import(/* webpackChunkName: \"topbar\" */ '@/components/Notifications/Notifications'),\n    PinList: () => import(/* webpackChunkName: \"topbar\" */ '@/components/Pins/PinList'),\n    SearchInput: () => import(/* webpackChunkName: \"topbar\" */ '@/components/Search/SearchInput'),\n    Schedule: () => import(/* webpackChunkName: \"topbar\" */ '@/components/Schedule/Schedule'),\n    ToDos: () => import(/* webpackChunkName: \"topbar\" */ '@/components/ToDos/ToDos')\n  },\n\n  data() {\n    return {\n      drawerTitle: '',\n      onLine: navigator.onLine,\n      drawerTitles: {\n        pin: '',\n        mobile: ''\n      },\n      drawerSize: 'normal',\n      showMobileMenu: window.innerWidth < 1120,\n      showLeftDrawer: false,\n      showRightDrawer: false,\n      showMenu: false,\n      showNotificationsDrawer: false,\n      showPinDrawer: false,\n      showSchedule: false,\n      showTodos: false,\n      showCreateReservation: false\n    };\n  },\n\n  computed: {\n    ...mapState(['appStartupLoadReady']),\n    ...mapState('notificationStore', ['notifications']),\n    ...mapState('profileStore', ['profile', 'profileState']),\n    ...mapState('locationStore', ['locationState']),\n\n    isAdmin() {\n      let isAdmin = false;\n\n      if (this.profileState) {\n        isAdmin = this.profileState.IsAdmin;\n      }\n\n      return isAdmin;\n    }\n  },\n\n  watch: {\n    onLine(v) {\n      if (v) {\n        this.showBackOnline = true;\n        setTimeout(() => {\n          this.showBackOnline = false;\n        }, 1000);\n      }\n    }\n  },\n\n  created() {\n    let self = this;\n    EventBus.$on('windowResizeListener', (val) => {\n      self.showMobileMenu = val.width < 1120;\n    });\n\n    EventBus.$on('showSchedule', () => {\n      this.setShowSchedule();\n    });\n\n    EventBus.$on('navigated', () => {\n      this.hideDrawer();\n    });\n  },\n\n  mounted() {\n    window.addEventListener('online', this.updateOnlineStatus);\n    window.addEventListener('offline', this.updateOnlineStatus);\n  },\n\n  beforeDestroy() {\n    window.removeEventListener('online', this.updateOnlineStatus);\n    window.removeEventListener('offline', this.updateOnlineStatus);\n\n    EventBus.$off('showSchedule');\n    EventBus.$off('navigated');\n  },\n\n  methods: {\n    ...mapMutations('notificationStore', ['setNotifications']),\n\n    updateOnlineStatus(e) {\n      const { type } = e;\n      this.onLine = type === 'online';\n    },\n\n    goToCreateReservation() {\n      this.$router.push({ name: `reservations-create` });\n    },\n\n    goToSchedule() {\n      this.$router.push({ name: `reservations-dayview` });\n    },\n\n    goToTasks() {\n      this.$router.push({ name: `todos` });\n    },\n\n    setShowMenuDrawer() {\n      this.showMenu = true;\n      this.showLeftDrawer = true;\n      this.sethowDrawer('Menu');\n    },\n\n    setShowNotificationsDrawer() {\n      this.showNotificationsDrawer = true;\n      this.showRightDrawer = true;\n      this.drawerSize = 'large';\n    },\n\n    setShowPinDrawer() {\n      this.showPinDrawer = true;\n      this.showRightDrawer = true;\n    },\n\n    setShowSchedule() {\n      this.showSchedule = true;\n      this.showRightDrawer = true;\n      this.drawerTitle = this.$t('Views.Reservations.Scheduler.Main_Title');\n      this.drawerSize = 'extra-extra-large';\n    },\n\n    setShowTodos() {\n      this.showTodos = true;\n      this.showRightDrawer = true;\n      this.drawerTitle = this.$t('Views.ToDos.ToDos.Main_Title');\n      this.drawerSize = 'extra-large';\n    },\n\n    setShowCreateReservation() {\n      this.showCreateReservation = true;\n      this.showRightDrawer = true;\n      this.drawerTitle = '';\n      this.drawerSize = 'extra-large';\n    },\n\n    hideDrawer() {\n      this.showLeftDrawer = false;\n      this.showRightDrawer = false;\n      this.showMenu = false;\n      this.showNotificationsDrawer = false;\n      this.showPinDrawer = false;\n      this.showSchedule = false;\n      this.showTodos = false;\n      this.showCreateReservation = false;\n\n      this.drawerTitle = '';\n      this.drawerSize = 'normal';\n    }\n  }\n};\n</script>\n\n<style lang=\"scss\" scoped>\n.navbar {\n  padding: 5px;\n  align-items: stretch;\n  display: flex;\n  .navbar-end {\n    display: flex;\n    justify-content: flex-end;\n    margin-left: auto;\n  }\n  .navbar-item {\n    display: flex;\n    align-items: center;\n  }\n}\n</style>\n","import mod from \"-!../../../../node_modules/cache-loader/dist/cjs.js??ref--13-0!../../../../node_modules/thread-loader/dist/cjs.js!../../../../node_modules/babel-loader/lib/index.js!../../../../node_modules/cache-loader/dist/cjs.js??ref--1-0!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./TopBar.vue?vue&type=script&lang=js\"; export default mod; export * from \"-!../../../../node_modules/cache-loader/dist/cjs.js??ref--13-0!../../../../node_modules/thread-loader/dist/cjs.js!../../../../node_modules/babel-loader/lib/index.js!../../../../node_modules/cache-loader/dist/cjs.js??ref--1-0!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./TopBar.vue?vue&type=script&lang=js\"","import { render, staticRenderFns } from \"./TopBar.vue?vue&type=template&id=012ac75e&scoped=true\"\nimport script from \"./TopBar.vue?vue&type=script&lang=js\"\nexport * from \"./TopBar.vue?vue&type=script&lang=js\"\nimport style0 from \"./TopBar.vue?vue&type=style&index=0&id=012ac75e&prod&lang=scss&scoped=true\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n  script,\n  render,\n  staticRenderFns,\n  false,\n  null,\n  \"012ac75e\",\n  null\n  \n)\n\nexport default component.exports","import Vue from 'vue'\nexport const EventBus = new Vue()\n\nexport default EventBus\n","export * from \"-!../../../../node_modules/mini-css-extract-plugin/dist/loader.js??ref--9-oneOf-1-0!../../../../node_modules/css-loader/dist/cjs.js??ref--9-oneOf-1-1!../../../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../../../node_modules/postcss-loader/src/index.js??ref--9-oneOf-1-2!../../../../node_modules/sass-loader/dist/cjs.js??ref--9-oneOf-1-3!../../../../node_modules/cache-loader/dist/cjs.js??ref--1-0!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./TopBar.vue?vue&type=style&index=0&id=012ac75e&prod&lang=scss&scoped=true\"","/*!\n * bulma-toast 2.4.4 \n * (c) 2018-present @rfoel <rafaelfr@outlook.com> \n * Released under the MIT License.\n */\n(function(a,b){\"object\"==typeof exports&&\"undefined\"!=typeof module?b(exports):\"function\"==typeof define&&define.amd?define([\"exports\"],b):(a=\"undefined\"==typeof globalThis?a||self:globalThis,b(a.bulmaToast={}))})(this,function(a){'use strict';function b(a,b){var c=Object.keys(a);if(Object.getOwnPropertySymbols){var d=Object.getOwnPropertySymbols(a);b&&(d=d.filter(function(b){return Object.getOwnPropertyDescriptor(a,b).enumerable})),c.push.apply(c,d)}return c}function c(a){for(var c,d=1;d<arguments.length;d++)c=null==arguments[d]?{}:arguments[d],d%2?b(Object(c),!0).forEach(function(b){g(a,b,c[b])}):Object.getOwnPropertyDescriptors?Object.defineProperties(a,Object.getOwnPropertyDescriptors(c)):b(Object(c)).forEach(function(b){Object.defineProperty(a,b,Object.getOwnPropertyDescriptor(c,b))});return a}function d(a,b){if(!(a instanceof b))throw new TypeError(\"Cannot call a class as a function\")}function e(a,b){for(var c,d=0;d<b.length;d++)c=b[d],c.enumerable=c.enumerable||!1,c.configurable=!0,\"value\"in c&&(c.writable=!0),Object.defineProperty(a,c.key,c)}function f(a,b,c){return b&&e(a.prototype,b),c&&e(a,c),a}function g(a,b,c){return b in a?Object.defineProperty(a,b,{value:c,enumerable:!0,configurable:!0,writable:!0}):a[b]=c,a}function h(){var a;return null!==(a=o)&&void 0!==a?a:document}function i(a,b,c,d,e,f){if(n.position)return n.position;var g=h().createElement(\"div\");return g.setAttribute(\"style\",\"width:100%;z-index:99999;position:fixed;pointer-events:none;display:flex;flex-direction:column;padding:15px;\"+p(b,c,d,e,f)),a.appendChild(g),n.position=g,g}function j(a){for(var b in n)n[b].remove();n={},o=a}function k(a){if(!a.message)throw new Error(\"message is required\");var b=c(c({},m),a),d=new q(b),e=i(b.appendTo||h().body,b.position||m.position,b.offsetTop||m.offsetTop,b.offsetBottom||m.offsetBottom,b.offsetLeft||m.offsetLeft,b.offsetRight||m.offsetRight);if(b.single)for(var f=e.lastElementChild;f;)e.removeChild(f),f=e.lastElementChild;e.appendChild(d.element)}var l={duration:2e3,position:\"top-right\",closeOnClick:!0,opacity:1,single:!1,offsetTop:0,offsetBottom:0,offsetLeft:0,offsetRight:0,extraClasses:\"\"},m=c({},l),n={},o=null,p=function(a,b,c,d,e){return\"top-left\"===a?\"left:\".concat(d,\";top:\").concat(b,\";text-align:left;align-items:flex-start;\"):\"top-right\"===a?\"right:\".concat(e,\";top:\").concat(b,\";text-align:right;align-items:flex-end;\"):\"top-center\"===a?\"top:\".concat(b,\";left:0;right:0;text-align:center;align-items:center;\"):\"bottom-left\"===a?\"left:\".concat(d,\";bottom:\").concat(c,\";text-align:left;align-items:flex-start;\"):\"bottom-right\"===a?\"right:\".concat(e,\";bottom:\").concat(c,\";text-align:right;align-items:flex-end;\"):\"bottom-center\"===a?\"bottom:\".concat(c,\";left:0;right:0;text-align:center;align-items:center;\"):\"center\"===a?\"top:0;left:0;right:0;bottom:0;flex-flow:column;justify-content:center;align-items:center;\":void 0},q=/*#__PURE__*/function(){function a(b){var c=this;d(this,a),this.element=h().createElement(\"div\"),this.opacity=b.opacity,this.type=b.type,this.animate=b.animate,this.dismissible=b.dismissible,this.closeOnClick=b.closeOnClick,this.message=b.message,this.duration=b.duration,this.pauseOnHover=b.pauseOnHover,this.offsetTop=b.offsetTop,this.offsetBottom=b.offsetBottom,this.offsetLeft=b.offsetLeft,this.offsetRight=b.offsetRight,this.extraClasses=b.extraClasses;var e=\"width:auto;pointer-events:auto;display:inline-flex;white-space:pre-wrap;opacity:\".concat(this.opacity,\";\"),f=[\"notification\",this.extraClasses];if(this.type&&f.push(this.type),this.animate&&this.animate[\"in\"]){var g=\"animate__\".concat(this.animate[\"in\"]),i=this.animate.speed?\"animate__\".concat(this.animate.speed):\"animate__faster\";f.push(\"animate__animated \".concat(g,\" \").concat(i)),this.onAnimationEnd(function(){return c.element.classList.remove(g)})}if(this.element.className=f.join(\" \"),this.dismissible){var j=h().createElement(\"button\");j.className=\"delete\",j.addEventListener(\"click\",function(){c.destroy()}),this.element.insertAdjacentElement(\"afterbegin\",j)}else e+=\"padding: 1.25rem 1.5rem\";this.closeOnClick&&this.element.addEventListener(\"click\",function(){c.destroy()}),this.element.setAttribute(\"style\",e),\"string\"==typeof this.message?this.element.insertAdjacentHTML(\"beforeend\",this.message):this.element.appendChild(this.message);var k=new r(function(){c.destroy()},this.duration);this.pauseOnHover&&(this.element.addEventListener(\"mouseover\",function(){k.pause()}),this.element.addEventListener(\"mouseout\",function(){k.resume()}))}return f(a,[{key:\"destroy\",value:function(){var a=this;this.animate&&this.animate.out?(this.element.classList.add(\"animate__\".concat(this.animate.out)),this.onAnimationEnd(function(){a.removeParent(a.element.parentNode),a.element.remove()})):(this.removeParent(this.element.parentNode),this.element.remove())}},{key:\"removeParent\",value:function(a){a&&1>=a.children.length&&(a.remove(),delete n.position)}},{key:\"onAnimationEnd\",value:function(){var a=0<arguments.length&&void 0!==arguments[0]?arguments[0]:function(){},b={animation:\"animationend\",OAnimation:\"oAnimationEnd\",MozAnimation:\"mozAnimationEnd\",WebkitAnimation:\"webkitAnimationEnd\"};for(var c in b)if(void 0!==this.element.style[c]){this.element.addEventListener(b[c],function(){return a()});break}}}]),a}(),r=/*#__PURE__*/function(){function a(b,c){d(this,a),this.timer,this.start,this.remaining=c,this.callback=b,this.resume()}return f(a,[{key:\"pause\",value:function(){\"undefined\"==typeof document||(window.clearTimeout(this.timer),this.remaining-=new Date-this.start)}},{key:\"resume\",value:function(){\"undefined\"==typeof document||(this.start=new Date,window.clearTimeout(this.timer),this.timer=window.setTimeout(this.callback,this.remaining))}}]),a}();a.resetDefaults=function(){m=c({},l)},a.setDefaults=function(a){m=c(c({},l),a)},a.setDoc=j,a.toast=k,Object.defineProperty(a,\"__esModule\",{value:!0})});\n","var render = function render(){var _vm=this,_c=_vm._self._c;return (_vm.filteredMessages.length)?_c('div',[(_vm.showMessageInfo)?_c('modal-system-message-info',{attrs:{\"showModal\":_vm.showMessageInfo,\"onClickCancel\":_vm.hideModal,\"modalSize\":_vm.modalSize,\"message\":_vm.selectedMessage}}):_vm._e(),_c('transition',{attrs:{\"name\":\"slide-fade\",\"mode\":\"out-in\",\"duration\":{ enter: 100, leave: 50 }}},[(_vm.filteredMessages[_vm.displayIndex])?_c('message',{key:'sm' + _vm.displayIndex,staticClass:\"has-text-centered\",attrs:{\"type\":`is-${_vm.message.MessageType.toLowerCase()}`},nativeOn:{\"mouseenter\":function($event){return _vm.stopAutoScroll.apply(null, arguments)},\"mouseleave\":function($event){return _vm.loopMessages.apply(null, arguments)}},scopedSlots:_vm._u([{key:\"content\",fn:function(){return [_c('div',{staticClass:\"is-flex message-container\"},[_c('div',{staticClass:\"message-content\"},[_c('div',[_vm._v(\" \"+_vm._s(_vm.message.Message)+\" \")]),(_vm.filteredMessages.length > 1)?_c('div',_vm._l((_vm.filteredMessages.length),function(counter,index){return _c('a',{key:'c' + index,on:{\"click\":function($event){return _vm.goToMessage(index)}}},[_c('span',{staticClass:\"icon is-small has-margin-top ml-1\"},[_c('font-awesome-icon',{attrs:{\"icon\":index === _vm.displayIndex\n                        ? ['fas', 'circle']\n                        : ['far', 'circle']}})],1)])}),0):_vm._e()]),_c('div',{staticClass:\"moreInfoButton has-padding-left\"},[_c('a',{staticClass:\"has-icon\",on:{\"click\":function($event){return _vm.openMessageInfoModal(_vm.message)}}},[_c('span',{staticClass:\"icon\"},[_c('font-awesome-icon',{attrs:{\"icon\":['fas', 'info-circle']}})],1),_c('span',[_vm._v(\" \"+_vm._s(_vm.$t('Components.SystemMessage.Button_MoreInfo'))+\" \")])])])])]},proxy:true}],null,false,1079650811)}):_vm._e()],1)],1):_vm._e()\n}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","import axios from 'axios'\nimport store from '../store'\n\nexport default {\n  methods: {\n    async getSystemMessage() {\n      const response = await axios.get(\n        `${process.env.VUE_APP_API_BASE_URL}/api/v1/SystemMessage`,\n        {\n          headers: {\n            'Content-type': 'application/json',\n            apiToken: process.env.VUE_APP_API_KEY,\n            profileToken: store.getters['profileStore/getProfileToken']\n          }\n        }\n      )\n      return response\n    },\n\n    // async createSystemMessage(message) {\n    //   const response = await axios.post(\n    //     `${process.env.VUE_APP_API_BASE_URL}/api/v1/application`,\n    //     JSON.stringify(message),\n    //     {\n    //       headers: {\n    //         'Content-type': 'application/json',\n    //         apiToken: process.env.VUE_APP_API_KEY,\n    //         profileToken: store.getters['profileStore/getProfileToken']\n    //       }\n    //     }\n    //   )\n    //   return response\n    // },\n\n    // async updateSystemMessage(message) {\n    //   const response = await axios.put(\n    //     `${process.env.VUE_APP_API_BASE_URL}/api/v1/application`,\n    //     JSON.stringify(message),\n    //     {\n    //       headers: {\n    //         'Content-type': 'application/json',\n    //         apiToken: process.env.VUE_APP_API_KEY,\n    //         profileToken: store.getters['profileStore/getProfileToken']\n    //       }\n    //     }\n    //   )\n    //   return response\n    // },\n\n    // async updateSystemMessageStatus(message) {\n    //   const response = await axios.put(\n    //     `${process.env.VUE_APP_API_BASE_URL}/api/v1/application`,\n    //     JSON.stringify(message),\n    //     {\n    //       headers: {\n    //         'Content-type': 'application/json',\n    //         apiToken: process.env.VUE_APP_API_KEY,\n    //         profileToken: store.getters['profileStore/getProfileToken']\n    //       }\n    //     }\n    //   )\n    //   return response\n    // },\n\n    // async deleteSystemMessage(message) {\n    //   const response = await axios.put(\n    //     `${process.env.VUE_APP_API_BASE_URL}/api/v1/application`,\n    //     JSON.stringify(message),\n    //     {\n    //       headers: {\n    //         'Content-type': 'application/json',\n    //         apiToken: process.env.VUE_APP_API_KEY,\n    //         profileToken: store.getters['profileStore/getProfileToken']\n    //       }\n    //     }\n    //   )\n    //   return response\n    // },\n  }\n}\n","var render = function render(){var _vm=this,_c=_vm._self._c;return _c('div',[_c('ui-component-modal',{attrs:{\"modalTitle\":\"\",\"onClickCancel\":_vm.onClickCancel,\"hideSaveButton\":true,\"showModal\":_vm.showModal,\"modalSize\":_vm.modalSize,\"buttonLabelCancel\":_vm.$t(`Form.Control.Close`)},on:{\"closeModal\":_vm.onClickCancel},scopedSlots:_vm._u([{key:\"content\",fn:function(){return [_c('div',{staticClass:\"is-pulled-right\"},[_c('span',{class:`tag is-${_vm.message.MessageType.toLowerCase()}`,domProps:{\"innerHTML\":_vm._s(_vm.statusText)}})]),(_vm.updates.length > 0)?_c('div',[_c('div',{staticClass:\"title has-text-weight-bold\"},[_vm._v(\" \"+_vm._s(_vm.message.Message)+\" \")]),_c('div',{staticClass:\"card mt-2\"},[_c('p',{key:\"most-recent-update\",domProps:{\"innerHTML\":_vm._s(_vm.$options.filters.nl2br(_vm.updates[0].Update))}}),_c('p',{staticClass:\"mb-2 has-text-grey is-italic is-pulled-right\"},[_vm._v(\" - \"+_vm._s(_vm.$options.filters.dateFormat(_vm.$options.filters.convertTimeStampToIsoDateTimeString(_vm.updates[0].CreatedOn), _vm.$i18n.locale, 'fullDateFormat'))+\", AT \"+_vm._s(_vm._f(\"timeFromDateTimeStamp\")(_vm.updates[0].CreatedOn))+\"H\")])]),_c('ul',[(_vm.showAllUpdates)?_c('transition-group',{attrs:{\"name\":\"fade\",\"mode\":\"out-in\"}},[_vm._l((_vm.updates.slice(1)),function(update,index){return [_c('li',{key:index},[_c('div',{key:index,staticClass:\"card mt-2\"},[_c('p',{key:index,domProps:{\"innerHTML\":_vm._s(_vm.$options.filters.nl2br(update.Update))}}),_c('p',{staticClass:\"mb-2 has-text-grey is-italic is-pulled-right\"},[_vm._v(\" - \"+_vm._s(_vm.$options.filters.dateFormat(_vm.$options.filters.convertTimeStampToIsoDateTimeString(update.CreatedOn), _vm.$i18n.locale, 'fullDateFormat'))+\", AT \"+_vm._s(_vm._f(\"timeFromDateTimeStamp\")(update.CreatedOn))+\"H\")])])])]})],2):_vm._e()],1)]):_vm._e(),(_vm.updates.length > 1)?_c('div',{staticClass:\"has-text-centered mt-2\"},[_c('button',{staticClass:\"button is-info\",on:{\"click\":_vm.showUpdates}},[_c('span',{staticClass:\"icon is-small\"},[_c('font-awesome-icon',{attrs:{\"icon\":!_vm.showAllUpdates ? ['fas', 'chevron-down'] : ['fas', 'chevron-up'],\"aria-hidden\":\"true\"}})],1),_c('span',[_vm._v(\" \"+_vm._s(!_vm.showAllUpdates ? \"Show all previous updates\" : \"Show less \")+\" \")])])]):_vm._e(),(!_vm.updates.length)?_c('div',[_c('div',{staticClass:\"title has-text-weight-bold\"},[_vm._v(\" \"+_vm._s(_vm.message.Message)+\" \")]),_c('div',{staticClass:\"card mt-2\"},[_c('p',{staticClass:\"mb-2 has-text-grey is-italic is-pulled-right\"},[_vm._v(_vm._s(_vm.$options.filters.dateFormat(_vm.$options.filters.convertTimeStampToIsoDateTimeString(_vm.message.CreatedOn), _vm.$i18n.locale, 'fullDateFormat'))+\", AT \"+_vm._s(_vm._f(\"timeFromDateTimeStamp\")(_vm.message.LastUpdateOn))+\"H\")])])]):_vm._e()]},proxy:true}])})],1)\n}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","<template>\n  <div>\n    <ui-component-modal\n      modalTitle=\"\"\n      :onClickCancel=\"onClickCancel\"\n      :hideSaveButton=\"true\"\n      :showModal=\"showModal\"\n      :modalSize=\"modalSize\"\n      :buttonLabelCancel=\"$t(`Form.Control.Close`)\"\n      @closeModal=\"onClickCancel\"\n    >\n      <template v-slot:content>\n          <div class=\"is-pulled-right\">\n            <span\n            v-html=\"statusText\"\n            :class=\"`tag is-${message.MessageType.toLowerCase()}`\" \n            ></span>\n          </div>\n\n          \n        <div v-if=\"updates.length > 0\">\n          <div class=\"title has-text-weight-bold\">\n            {{message.Message}}\n          </div>\n\n          <div class=\"card mt-2\">\n            <p key=\"most-recent-update\" v-html=\"$options.filters.nl2br(updates[0].Update)\"></p>\n            <p class=\"mb-2 has-text-grey is-italic is-pulled-right\"> - {{ $options.filters.dateFormat($options.filters.convertTimeStampToIsoDateTimeString(updates[0].CreatedOn), $i18n.locale, 'fullDateFormat')}}, AT {{updates[0].CreatedOn | timeFromDateTimeStamp}}H</p>\n          </div>\n               \n          <ul>\n             <transition-group        \n              v-if=\"showAllUpdates\"\n              name=\"fade\" mode=\"out-in\">\n              <template v-for=\"(update, index) in updates.slice(1)\">\n                <li :key=\"index\">\n                  <div class=\"card mt-2\" :key=\"index\">\n                    <p :key=\"index\" v-html=\"$options.filters.nl2br(update.Update)\"></p>\n                    <p class=\"mb-2 has-text-grey is-italic is-pulled-right\"> - {{ $options.filters.dateFormat($options.filters.convertTimeStampToIsoDateTimeString(update.CreatedOn), $i18n.locale, 'fullDateFormat')}}, AT {{update.CreatedOn | timeFromDateTimeStamp}}H</p>\n                  </div>\n                </li>\n              </template>\n            </transition-group>\n          </ul>\n        </div>\n\n        <div \n          v-if=\"updates.length > 1\"\n          class=\"has-text-centered mt-2\">\n          <button\n            @click=\"showUpdates\"\n            class=\"button is-info\">\n            <span class=\"icon is-small\">\n              <font-awesome-icon\n                :icon=\"!showAllUpdates ? ['fas', 'chevron-down'] : ['fas', 'chevron-up']\"\n                aria-hidden=\"true\"\n              />\n            </span> \n            <span>  \n              {{!showAllUpdates ? \"Show all previous updates\" : \"Show less \"}}\n            </span>\n          </button>\n        </div>\n\n        <div v-if=\"!updates.length\"> \n          <div class=\"title has-text-weight-bold\">\n            {{message.Message}}\n          </div>\n          <div class=\"card mt-2\">\n            <p class=\"mb-2 has-text-grey is-italic is-pulled-right\">{{ $options.filters.dateFormat($options.filters.convertTimeStampToIsoDateTimeString(message.CreatedOn), $i18n.locale, 'fullDateFormat')}}, AT {{message.LastUpdateOn | timeFromDateTimeStamp}}H</p>\n          </div>\n        </div>\n      </template>\n    </ui-component-modal>\n  </div>\n</template>\n\n<script>\n  export default {\n    props: {\n      message: {\n        type: Object,\n        default: null,\n      },\n\n      showModal: {\n        type: Boolean,\n        default: false,\n      },\n\n      modalSize: {\n        type: String,\n        default: 'normal'\n      },\n\n      onClickCancel: {\n        type: Function,\n        required: true,\n      },\n    },\n\n    data() {\n      return {\n        updates: null,\n        showAllUpdates: false\n      }\n    },\n\n    created() {\n      this.updates = this.message.Updates\n    },\n\n    computed: {\n\n      statusText() {\n        let result = ''\n        let self = this\n\n        if (self.message.MessageType === 'Danger') {\n          result = 'Critical issue'\n        }\n        if (self.message.MessageType === 'Warning') {\n          result = 'Important notice'\n        }\n        if (self.message.MessageType === 'Info') {\n          result = 'Information'\n        }\n        return result\n      }\n    },\n\n    methods: {\n\n      showUpdates() {\n        this.showAllUpdates = !this.showAllUpdates\n      }\n    }\n  }\n</script>\n\n<style lang=\"scss\" scoped>\n\n.card {\n  padding: 20px\n}\n.showMoreButton {\n   align-content: center;\n}\n\n</style>","import mod from \"-!../../../node_modules/cache-loader/dist/cjs.js??ref--13-0!../../../node_modules/thread-loader/dist/cjs.js!../../../node_modules/babel-loader/lib/index.js!../../../node_modules/cache-loader/dist/cjs.js??ref--1-0!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./ModalSystemMessageInfo.vue?vue&type=script&lang=js\"; export default mod; export * from \"-!../../../node_modules/cache-loader/dist/cjs.js??ref--13-0!../../../node_modules/thread-loader/dist/cjs.js!../../../node_modules/babel-loader/lib/index.js!../../../node_modules/cache-loader/dist/cjs.js??ref--1-0!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./ModalSystemMessageInfo.vue?vue&type=script&lang=js\"","import { render, staticRenderFns } from \"./ModalSystemMessageInfo.vue?vue&type=template&id=7693b954&scoped=true\"\nimport script from \"./ModalSystemMessageInfo.vue?vue&type=script&lang=js\"\nexport * from \"./ModalSystemMessageInfo.vue?vue&type=script&lang=js\"\nimport style0 from \"./ModalSystemMessageInfo.vue?vue&type=style&index=0&id=7693b954&prod&lang=scss&scoped=true\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n  script,\n  render,\n  staticRenderFns,\n  false,\n  null,\n  \"7693b954\",\n  null\n  \n)\n\nexport default component.exports","<template>\n  <div v-if=\"filteredMessages.length\">\n    <modal-system-message-info\n      v-if=\"showMessageInfo\"\n      :showModal=\"showMessageInfo\"\n      :onClickCancel=\"hideModal\"\n      :modalSize=\"modalSize\"\n      :message=\"selectedMessage\"\n    ></modal-system-message-info>\n\n    <transition\n      name=\"slide-fade\"\n      mode=\"out-in\"\n      :duration=\"{ enter: 100, leave: 50 }\"\n    >\n      <message\n        v-if=\"filteredMessages[displayIndex]\"\n        :key=\"'sm' + displayIndex\"\n        :type=\"`is-${message.MessageType.toLowerCase()}`\"\n        class=\"has-text-centered\"\n        @mouseenter.native=\"stopAutoScroll\"\n        @mouseleave.native=\"loopMessages\"\n      >\n        <template v-slot:content>\n          <div class=\"is-flex message-container\">\n            <div class=\"message-content\">\n              <div>\n                {{ message.Message }}\n              </div>\n              <div v-if=\"filteredMessages.length > 1\">\n                <a\n                  v-for=\"(counter, index) in filteredMessages.length\"\n                  :key=\"'c' + index\"\n                  @click=\"goToMessage(index)\"\n                >\n                  <span class=\"icon is-small has-margin-top ml-1\">\n                    <font-awesome-icon\n                      :icon=\"\n                        index === displayIndex\n                          ? ['fas', 'circle']\n                          : ['far', 'circle']\n                      \"\n                    />\n                  </span>\n                </a>\n              </div>\n            </div>\n            <div class=\"moreInfoButton has-padding-left\">\n              <a @click=\"openMessageInfoModal(message)\" class=\"has-icon\">\n                <span class=\"icon\">\n                  <font-awesome-icon :icon=\"['fas', 'info-circle']\" />\n                </span>\n                <span>\n                  {{ $t('Components.SystemMessage.Button_MoreInfo') }}\n                </span>\n              </a>\n            </div>\n          </div>\n        </template>\n      </message>\n    </transition>\n  </div>\n</template>\n\n<script>\nimport Message from '@/components/UI/Message'\nimport systemmessageProvider from '@/providers/systemmessage'\nimport ModalSystemMessageInfo from '@/components/SystemMessage/ModalSystemMessageInfo'\n\nexport default {\n  components: {\n    message: Message,\n    'modal-system-message-info': ModalSystemMessageInfo,\n  },\n\n  data() {\n    return {\n      systemMessages: null,\n      showMessageInfo: false,\n      selectedMessage: null,\n      modalSize: 'normal',\n      displayIndex: 0,\n      autoScrollTimer: null,\n    }\n  },\n\n  created() {\n    this.getSystemMessages()\n\n    if (this.filteredMessages) {\n      this.loopMessages()\n    }\n  },\n\n  computed: {\n    filteredMessages() {\n      let self = this\n      let results = []\n      if (self.systemMessages) {\n        for (let i = 0; i < this.systemMessages.length; i++) {\n          if (self.systemMessages[i].MessageStatus !== 'Closed') {\n            results.push(self.systemMessages[i])\n          }\n        }\n      }\n      return results\n    },\n\n    message() {\n      return this.filteredMessages[this.displayIndex]\n    },\n  },\n\n  mounted() {\n    let self = this\n\n    // self.$systemMessageHub.connection.on(\n    //   self.$systemMessageHub.listeners.systemMessageAdded,\n    //   (response) => {\n    //     let message = JSON.parse(response)\n\n    //     self.systemMessages.push(message)\n    //     self.displayIndex = 0\n    //   }\n    // )\n\n    // self.$systemMessageHub.connection.on(\n    //   self.$systemMessageHub.listeners.systemMessageUpdated,\n    //   (response) => {\n    //     let message = JSON.parse(response)\n\n    //     if (message.MessageStatus === 0 ){\n    //       message.MessageStatus = 'UnderInvestigation'\n    //     }\n    //     if (message.MessageStatus === 1 ){\n    //       message.MessageStatus = 'Open'\n    //     }\n    //     if (message.MessageStatus === 2 ){\n    //       message.MessageStatus = 'Closed'\n    //     }\n    //     if (message.MessageStatus === 3 ){\n    //       message.MessageStatus = 'ReOpened'\n    //     }\n\n    //     let messageIndex = self.systemMessages.findIndex((m) => m.Id === message.Id)\n\n    //     if (messageIndex > -1 && message.MessageStatus === 'Closed') {\n    //         self.systemMessages.splice(messageIndex, 1, message)\n    //         self.displayIndex = 0\n    //     }\n    //     if (messageIndex > -1 && message.MessageStatus !== 'Closed') {\n    //         self.systemMessages.splice(messageIndex, 1, message)\n    //         self.displayIndex = 0\n    //     }\n\n    //   }\n    // )\n\n    // self.$systemMessageHub.connection.on(\n    //   self.$systemMessageHub.listeners.systemMessageDeleted, response => {\n    //     let resp = JSON.parse(response)\n\n    //     let systemMessageIndex = self.systemMessages.findIndex(\n    //       (m) => m.Id === resp.Id\n    //     )\n\n    //     if (systemMessageIndex > -1) {\n    //       self.systemMessages.splice(systemMessageIndex, 1)\n    //       self.displayIndex = 0\n    //     }\n    //   }\n    // )\n  },\n\n  beforeDestroy() {\n    let self = this\n\n    //self.$systemMessageHub.leaveSystemMessageGroup()\n  },\n\n  methods: {\n    getSystemMessages() {\n      let self = this\n\n      systemmessageProvider.methods\n        .getSystemMessage()\n        .then((response) => {\n          if (response.status === 200) {\n            if (self.systemMessages === null) {\n              self.systemMessages = response.data\n            } else {\n              let originalMessages = JSON.stringify(self.systemMessages)\n              let newMessages = JSON.stringify(response.data)\n\n              if (originalMessages !== newMessages) {\n                self.systemMessages = response.data\n              }\n            }\n          }\n        })\n        .catch((e) => {\n          // console.log(e)\n        })\n    },\n\n    loopMessages() {\n      let self = this\n      self.autoScrollTimer = setTimeout(() => {\n        if (self.displayIndex === self.filteredMessages.length - 1) {\n          self.displayIndex = 0\n        } else {\n          self.displayIndex++\n        }\n        self.loopMessages()\n      }, 10000)\n    },\n\n    stopAutoScroll() {\n      let self = this\n      clearTimeout(self.autoScrollTimer)\n    },\n\n    hideModal() {\n      this.showMessageInfo = false\n    },\n\n    goToMessage(msgIndex) {\n      this.displayIndex = msgIndex\n    },\n\n    openMessageInfoModal(message) {\n      this.selectedMessage = message\n\n      if (this.selectedMessage.Updates.length > 0) {\n        this.modalSize = 'large'\n      } else {\n        this.modalSize = 'normal'\n      }\n      this.showMessageInfo = true\n    },\n  },\n}\n</script>\n\n<style lang=\"scss\" scoped>\n.message-container {\n  .moreInfoButton {\n    white-space: nowrap;\n  }\n  .message-content {\n    flex-grow: 1;\n    flex-shrink: 1;\n    width: 100%;\n    align-self: center;\n  }\n}\n</style>\n","import mod from \"-!../../../node_modules/cache-loader/dist/cjs.js??ref--13-0!../../../node_modules/thread-loader/dist/cjs.js!../../../node_modules/babel-loader/lib/index.js!../../../node_modules/cache-loader/dist/cjs.js??ref--1-0!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./SystemMessage.vue?vue&type=script&lang=js\"; export default mod; export * from \"-!../../../node_modules/cache-loader/dist/cjs.js??ref--13-0!../../../node_modules/thread-loader/dist/cjs.js!../../../node_modules/babel-loader/lib/index.js!../../../node_modules/cache-loader/dist/cjs.js??ref--1-0!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./SystemMessage.vue?vue&type=script&lang=js\"","import { render, staticRenderFns } from \"./SystemMessage.vue?vue&type=template&id=1c9c52f5&scoped=true\"\nimport script from \"./SystemMessage.vue?vue&type=script&lang=js\"\nexport * from \"./SystemMessage.vue?vue&type=script&lang=js\"\nimport style0 from \"./SystemMessage.vue?vue&type=style&index=0&id=1c9c52f5&prod&lang=scss&scoped=true\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n  script,\n  render,\n  staticRenderFns,\n  false,\n  null,\n  \"1c9c52f5\",\n  null\n  \n)\n\nexport default component.exports","import axios from 'axios'\nimport store from '@/store'\n\nexport default {\n  methods: {\n    async getProfileLocationNotifications(locationId) {\n      const response = await axios.get(\n        `${process.env.VUE_APP_API_BASE_URL}/api/v1/notification/location/${locationId}`,\n        {\n          headers: {\n            'Content-type': 'application/json',\n            apiToken: process.env.VUE_APP_API_KEY,\n            profileToken: store.getters['profileStore/getProfileToken']\n          }\n        }\n      )\n      return response\n    },\n\n    async getProfileLocationNotificationRules(locationId) {\n      const response = await axios.get(\n        `${process.env.VUE_APP_API_BASE_URL}/api/v1/notification/rules/location/${locationId}`,\n        {\n          headers: {\n            'Content-type': 'application/json',\n            apiToken: process.env.VUE_APP_API_KEY,\n            profileToken: store.getters['profileStore/getProfileToken']\n          }\n        }\n      )\n      return response\n    },\n\n    async saveProfileLocationNotificationRules(locationId, notificationRules) {\n      const response = await axios.post(\n        `${process.env.VUE_APP_API_BASE_URL}/api/v1/notification/rules/location/${locationId}`,\n        JSON.stringify(notificationRules),\n        {\n          headers: {\n            'Content-type': 'application/json',\n            apiToken: process.env.VUE_APP_API_KEY,\n            profileToken: store.getters['profileStore/getProfileToken']\n          }\n        }\n      )\n      return response\n    },\n\n    async markAllAsRead(locationId) {\n      const response = await axios.put(\n        `${process.env.VUE_APP_API_BASE_URL}/api/v1/notification/read/all`,\n        null,\n        {\n          params: {\n            locationId: locationId\n          },\n          headers: {\n            'Content-type': 'application/json',\n            apiToken: process.env.VUE_APP_API_KEY,\n            profileToken: store.getters['profileStore/getProfileToken']\n          }\n        }\n      )\n      return response\n    },\n\n    async deleteNotification(notificationId) {\n      const response = await axios.delete(\n        `${process.env.VUE_APP_API_BASE_URL}/api/v1/notification/${notificationId}`,\n        {\n          headers: {\n            'Content-type': 'application/json',\n            apiToken: process.env.VUE_APP_API_KEY,\n            profileToken: store.getters['profileStore/getProfileToken']\n          }\n        }\n      )\n      return response\n    },\n  }\n}","var render = function render(){var _vm=this,_c=_vm._self._c;return _c('div',{staticClass:\"menu-wrapper\"},[_c('div',{staticClass:\"main-menu has-shadow has-padding-top has-background-grey-light\"},[(_vm.showMenu)?_c('Menu',{staticClass:\"has-padding-bottom\"}):_vm._e(),_c('MenuFooter')],1)])\n}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","<template>\n  <div class=\"menu-wrapper\">\n    <div class=\"main-menu has-shadow has-padding-top has-background-grey-light\">\n      <Menu\n        v-if=\"showMenu\"\n        class=\"has-padding-bottom\"\n      />\n      <MenuFooter />\n    </div>\n  </div>\n</template>\n\n<script>\nimport { mapGetters, mapState, mapActions, mapMutations } from 'vuex'\n\nexport default {\n  props: {\n    locationId: {\n      default: 0,\n      type: Number,\n    },\n  },\n\n  components: {\n    Menu: () => import('@/components/UI/Menu'),\n    MenuFooter: () => import('@/components/UI/MenuFooter'),\n  },\n\n  data() {\n    return {}\n  },\n\n  beforeDestroy() { },\n\n  computed: {\n    ...mapState('menuStore', ['menu']),\n    ...mapGetters({\n      selectedMenuItems: 'menuStore/getSelectedMenuItems',\n    }),\n    ...mapState('locationStore', ['locationState']),\n    showMenu: function() {\n      return !this.locationState.Locked && (\n        this.menu &&\n        this.menu?.Categories?.length > 0\n      )\n    },\n  },\n\n  methods: {\n    ...mapMutations('menuStore', ['setSelectedMenuItemIndex']),\n    ...mapActions({\n      clearDetailPageSubMenu: 'menuStore/clearDetailPageSubMenu',\n    }),\n  },\n}\n</script>\n\n<style lang=\"scss\" scoped>\n.menu-wrapper {\n  display: flex;\n  width: auto;\n  transition: 0.75s;\n  animation-duration: 0.5s;\n  overflow: hidden;\n\n  @media screen and (max-width: 1120px) {\n    overflow: hidden;\n    width: 0;\n    opacity: 0;\n  }\n\n  .main-menu {\n    display: flex;\n    flex-direction: column;\n    width: 240px;\n    .menu {\n      width: 100%;\n      flex-grow: 1;\n      overflow-x: hidden;\n      overflow-y: auto;\n    }\n  }\n}\n</style>\n","import mod from \"-!../../../../node_modules/cache-loader/dist/cjs.js??ref--13-0!../../../../node_modules/thread-loader/dist/cjs.js!../../../../node_modules/babel-loader/lib/index.js!../../../../node_modules/cache-loader/dist/cjs.js??ref--1-0!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./SiteMenu.vue?vue&type=script&lang=js\"; export default mod; export * from \"-!../../../../node_modules/cache-loader/dist/cjs.js??ref--13-0!../../../../node_modules/thread-loader/dist/cjs.js!../../../../node_modules/babel-loader/lib/index.js!../../../../node_modules/cache-loader/dist/cjs.js??ref--1-0!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./SiteMenu.vue?vue&type=script&lang=js\"","import { render, staticRenderFns } from \"./SiteMenu.vue?vue&type=template&id=0e0d6f82&scoped=true\"\nimport script from \"./SiteMenu.vue?vue&type=script&lang=js\"\nexport * from \"./SiteMenu.vue?vue&type=script&lang=js\"\nimport style0 from \"./SiteMenu.vue?vue&type=style&index=0&id=0e0d6f82&prod&lang=scss&scoped=true\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n  script,\n  render,\n  staticRenderFns,\n  false,\n  null,\n  \"0e0d6f82\",\n  null\n  \n)\n\nexport default component.exports","export * from \"-!../../../../node_modules/mini-css-extract-plugin/dist/loader.js??ref--9-oneOf-1-0!../../../../node_modules/css-loader/dist/cjs.js??ref--9-oneOf-1-1!../../../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../../../node_modules/postcss-loader/src/index.js??ref--9-oneOf-1-2!../../../../node_modules/sass-loader/dist/cjs.js??ref--9-oneOf-1-3!../../../../node_modules/cache-loader/dist/cjs.js??ref--1-0!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./SiteMenu.vue?vue&type=style&index=0&id=0e0d6f82&prod&lang=scss&scoped=true\"","export * from \"-!../../node_modules/mini-css-extract-plugin/dist/loader.js??ref--9-oneOf-1-0!../../node_modules/css-loader/dist/cjs.js??ref--9-oneOf-1-1!../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../node_modules/postcss-loader/src/index.js??ref--9-oneOf-1-2!../../node_modules/sass-loader/dist/cjs.js??ref--9-oneOf-1-3!../../node_modules/cache-loader/dist/cjs.js??ref--1-0!../../node_modules/vue-loader/lib/index.js??vue-loader-options!./Manage.vue?vue&type=style&index=0&id=03012b50&prod&lang=scss&scoped=true\"","export * from \"-!../../../node_modules/mini-css-extract-plugin/dist/loader.js??ref--9-oneOf-1-0!../../../node_modules/css-loader/dist/cjs.js??ref--9-oneOf-1-1!../../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../../node_modules/postcss-loader/src/index.js??ref--9-oneOf-1-2!../../../node_modules/sass-loader/dist/cjs.js??ref--9-oneOf-1-3!../../../node_modules/cache-loader/dist/cjs.js??ref--1-0!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./SystemMessage.vue?vue&type=style&index=0&id=1c9c52f5&prod&lang=scss&scoped=true\"","export * from \"-!../../../../node_modules/mini-css-extract-plugin/dist/loader.js??ref--9-oneOf-1-0!../../../../node_modules/css-loader/dist/cjs.js??ref--9-oneOf-1-1!../../../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../../../node_modules/postcss-loader/src/index.js??ref--9-oneOf-1-2!../../../../node_modules/sass-loader/dist/cjs.js??ref--9-oneOf-1-3!../../../../node_modules/cache-loader/dist/cjs.js??ref--1-0!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./Tutorial.vue?vue&type=style&index=0&id=6f7a1039&prod&lang=scss&scoped=true\"","var render = function render(){var _vm=this,_c=_vm._self._c;return _c('div',{staticClass:\"tutorial-page-wrapper\",class:{'is-active' : _vm.currentTutorialItem}},[_c('transition',{attrs:{\"name\":\"fade\",\"mode\":\"out-in\"},on:{\"after-enter\":_vm.afterEnter,\"enter\":_vm.enter,\"after-leave\":_vm.afterLeave,\"leave\":_vm.leave}},[(_vm.currentTutorialItem)?_c('div',{key:'tutorialTip_' + _vm.activeIndex,ref:\"tutorialCard\",staticClass:\"tutorial-wrapper\",class:'tutorial-item-relative-pos-' + this.tutorialItemRelativePos},[_c('div',{ref:\"tutorialPointerUp\",staticClass:\"pointer up\"}),_c('div',{ref:\"tutorialPointerDown\",staticClass:\"pointer down\"}),_c('div',{ref:\"tutorialPointerRight\",staticClass:\"pointer right\"}),_c('div',{ref:\"tutorialPointerLeft\",staticClass:\"pointer left\"}),_c('div',{ref:\"tutorialBox\",staticClass:\"box tutorial-card has-background-white\"},[_c('header',{staticClass:\"tutorial-card-head\"},[_c('span',{staticClass:\"tutorial-card-title title is-5\"},[_vm._v(\" \"+_vm._s(_vm.currentTutorialItem.title)+\" \")]),(!_vm.currentTutorialItem.isWelcome)?_c('span',{staticClass:\"tutorial-card-title is-pulled-right\"},[_vm._v(\"(\"+_vm._s(_vm.currentStep)+\"/\"+_vm._s(_vm.totalSteps)+\")\")]):_vm._e()]),_c('section',{staticClass:\"tutorial-card-body has-margin-bottom\"},[_vm._v(\" \"+_vm._s(_vm.currentTutorialItem.message)+\" \")]),_c('footer',{staticClass:\"tutorial-card-footer\"},[(_vm.currentTutorialItem.linkHref !== undefined)?_c('a',{staticClass:\"is-pulled-left is-vcentered\",attrs:{\"id\":\"vertically-centered\",\"href\":_vm.currentTutorialItem.linkHref,\"target\":\"_blank\"}},[_c('span',[_c('span',[_vm._v(\" \"+_vm._s(_vm.$t('Components.UI.Components.Tutorial.More_info_Text'))+\" \")]),_c('span',[_c('font-awesome-icon',{attrs:{\"icon\":['fas', 'info-circle']}})],1)])]):_vm._e(),_c('div',{staticClass:\"buttons is-right has-margin-bottom\"},[(_vm.showPreviousButton)?_c('button',{staticClass:\"button has-margin-right\",on:{\"~click\":function($event){return _vm.previousTutorialItem()}}},[_vm._v(\" \"+_vm._s(_vm.$t('Form.Control.Previous')))]):_vm._e(),(_vm.showSkipButton)?_c('button',{staticClass:\"button has-margin-right\",on:{\"click\":function($event){return _vm.skipTutorial()}}},[_vm._v(_vm._s(_vm.$t('Form.Control.Skip')))]):_vm._e(),(_vm.showNextButton)?_c('button',{staticClass:\"button is-primary\",on:{\"~click\":function($event){return _vm.nextTutorialItem()}}},[_vm._v(_vm._s(_vm.$t('Form.Control.Next'))+\" \")]):_vm._e(),(_vm.showStartButton)?_c('button',{staticClass:\"button is-primary\",on:{\"~click\":function($event){return _vm.nextTutorialItem()}}},[_vm._v(_vm._s(_vm.$t('Form.Control.StartTutorial')))]):_vm._e(),(_vm.showFinishButton)?_c('button',{staticClass:\"button is-primary\",on:{\"click\":function($event){return _vm.closeTutorial()}}},[_vm._v(_vm._s(_vm.$t('Form.Control.Finish')))]):_vm._e()])])])]):_vm._e()])],1)\n}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","<template>\n  <div\n    class=\"tutorial-page-wrapper\"\n    :class=\"{'is-active' : currentTutorialItem}\"\n  >\n    <transition\n      name=\"fade\"\n      mode=\"out-in\"\n      v-on:after-enter=\"afterEnter\"\n      v-on:enter=\"enter\"\n      v-on:after-leave=\"afterLeave\"\n      v-on:leave=\"leave\"\n    >\n      <div\n        v-if=\"currentTutorialItem\"\n        ref=\"tutorialCard\"\n        :key=\"'tutorialTip_' + activeIndex\"\n        class=\"tutorial-wrapper\"\n        :class=\"'tutorial-item-relative-pos-' + this.tutorialItemRelativePos\"\n      >\n        <div\n          ref=\"tutorialPointerUp\"\n          class=\"pointer up\"\n        ></div>\n        <div\n          ref=\"tutorialPointerDown\"\n          class=\"pointer down\"\n        ></div>\n        <div\n          ref=\"tutorialPointerRight\"\n          class=\"pointer right\"\n        ></div>\n        <div\n          ref=\"tutorialPointerLeft\"\n          class=\"pointer left\"\n        ></div>\n        <div\n          ref=\"tutorialBox\"\n          class=\"box tutorial-card has-background-white\"\n        >\n\n          <header class=\"tutorial-card-head\">\n            <span class=\"tutorial-card-title title is-5\">\n              {{currentTutorialItem.title}}\n            </span>\n            <span\n              class=\"tutorial-card-title is-pulled-right\"\n              v-if=\"!currentTutorialItem.isWelcome\"\n            >({{currentStep}}/{{totalSteps}})</span>\n          </header>\n\n          <section class=\"tutorial-card-body has-margin-bottom\">\n            {{currentTutorialItem.message}}\n          </section>\n          <footer class=\"tutorial-card-footer\">\n            <a\n              v-if=\"currentTutorialItem.linkHref !== undefined\"\n              id=\"vertically-centered\"\n              class=\"is-pulled-left is-vcentered\"\n              :href=\"currentTutorialItem.linkHref\"\n              target=\"_blank\"\n            >\n              <span>\n                <span>\n                  {{$t('Components.UI.Components.Tutorial.More_info_Text')}}\n                </span>\n                <span>\n                  <font-awesome-icon :icon=\"['fas', 'info-circle']\" />\n                </span>\n              </span>\n            </a>\n            <div class=\"buttons is-right has-margin-bottom\">\n              <button\n                v-if=\"showPreviousButton\"\n                class=\"button has-margin-right\"\n                @click.once=\"previousTutorialItem()\"\n              >\n                {{$t('Form.Control.Previous')}}</button>\n              <button\n                v-if=\"showSkipButton\"\n                class=\"button has-margin-right\"\n                @click=\"skipTutorial()\"\n              >{{$t('Form.Control.Skip')}}</button>\n              <button\n                v-if=\"showNextButton\"\n                class=\"button is-primary\"\n                @click.once=\"nextTutorialItem()\"\n              >{{$t('Form.Control.Next')}}\n              </button>\n              <button\n                v-if=\"showStartButton\"\n                class=\"button is-primary\"\n                @click.once=\"nextTutorialItem()\"\n              >{{$t('Form.Control.StartTutorial')}}</button>\n              <button\n                v-if=\"showFinishButton\"\n                class=\"button is-primary\"\n                @click=\"closeTutorial()\"\n              >{{$t('Form.Control.Finish')}}</button>\n            </div>\n          </footer>\n        </div>\n      </div>\n    </transition>\n  </div>\n</template>\n\n<script>\nimport { mapState, mapMutations, mapActions } from 'vuex'\nexport default {\n  name: 'tutorial',\n\n  props: {\n    refPageWrapper: null,\n    scrollPosition: Number,\n    pageHeight: Number\n  },\n\n  data() {\n    return {\n      startupReady: false,\n      activeIndex: -1,\n      scrollByValue: 0,\n      tutorialItemRelativePos: '',\n      hasWelcome: false,\n      currentTutorialItems: [],\n      updateGroupIndex: 0\n    }\n  },\n\n  computed: {\n    ...mapState('tutorialStore', ['showTutorial', 'tutorialReopened', 'tutorialPage', 'tutorialItems', 'tutorialItemPosition']),\n\n    currentTutorialItem() {\n      return this.activeIndex === -1 ? null : this.currentTutorialItems[this.activeIndex]\n    },\n\n    showNextButton() {\n      let show = true\n\n      if (this.activeIndex >= (this.currentTutorialItems.length - 1)) {\n        show = false\n      }\n\n      if (this.currentTutorialItems[this.activeIndex].isWelcome) {\n        show = false\n      }\n\n      return show\n    },\n    showStartButton() {\n      let show = false\n\n      if (this.currentTutorialItems[this.activeIndex].isWelcome) {\n        show = true\n      }\n\n      return show\n    },\n    showPreviousButton() {\n      let show = false\n\n      if (this.activeIndex > 0) {\n        show = true\n      }\n\n      return show\n    },\n    showSkipButton() {\n      let show = false\n\n      if (this.activeIndex === 0) {\n        show = true\n      }\n\n      return show\n    },\n    showFinishButton() {\n      let show = false\n\n      if ((this.activeIndex + 1) === this.currentTutorialItems.length) {\n        show = true\n      }\n\n      return show\n    },\n    currentStep() {\n      let count = this.activeIndex\n\n      if (!this.hasWelcome) {\n        count = count + 1\n      }\n\n      return count\n    },\n    totalSteps() {\n      let count = this.currentTutorialItems.length\n\n      if (this.hasWelcome) {\n        count = count - 1\n      }\n\n      return count\n    }\n  },\n\n  watch: {\n    'refPageWrapper.scrollTop': function(val) {\n    }\n  },\n  mounted() {\n    this.startup()\n  },\n\n  beforeDestroy() {\n    window.removeEventListener('resize', this.positionCard)\n    this.clearTutorialItems()\n  },\n\n  methods: {\n    ...mapMutations('tutorialStore', ['setTutorialItemPosition', 'setShowTutorial']),\n    ...mapActions('tutorialStore', ['clearTutorialItems', 'resetTutorial']),\n\n    startup() {\n      let self = this\n\n      if (!this.tutorialReopened) {\n        // Get data from local storage\n        this.$localforge.get(this.tutorialPage).then(lastSeenIndex => {\n          self.activeIndex = 0\n          if (lastSeenIndex === null) {\n            // Start from first and show all\n            self.updateGroupIndex = self.tutorialItems.length - 1\n            self.currentTutorialItems = self.mergeAllTutorialArrays()\n          } else {\n            if (lastSeenIndex < self.tutorialItems.length - 1) {\n              self.updateGroupIndex = lastSeenIndex + 1\n              self.currentTutorialItems = self.tutorialItems[self.updateGroupIndex]\n            } else {\n              // Close tutorial tips\n              self.updateGroupIndex = self.tutorialItems.length - 1\n              self.closeTutorial()\n            }\n          }\n        })\n      } else {\n        // Tutorial is resopend by user. Do nothing with local storage\n        this.activeIndex = 0\n        this.updateGroupIndex = this.tutorialItems.length - 1\n        this.currentTutorialItems = this.mergeAllTutorialArrays()\n      }\n\n      let t = setTimeout(() => {\n        self.startupReady = true\n        window.addEventListener('resize', self.positionCard)\n        self.positionCard()\n        clearTimeout(t)\n      }, 1000)\n    },\n\n    /**\n     * Merge all arrays update arrays to one\n     */\n    mergeAllTutorialArrays() {\n      let output = []\n      for (let i in this.tutorialItems) {\n        output = output.concat(this.tutorialItems[i])\n      }\n      return output\n    },\n\n    positionCard() {\n      if (screen.width > 1120) {\n        if (this.currentTutorialItems.length && this.activeIndex !== -1) {\n        this.tutorialItemRelativePos = this.currentTutorialItems[this.activeIndex].tutorialItemRelativePos\n        let browserWidth = window.innerWidth;\n        let browserHeight = window.innerHeight;\n        let cardHeight = this.$refs.tutorialBox.clientHeight;\n        let cardWidth = this.$refs.tutorialBox.clientWidth;\n\n        this.$refs.tutorialPointerUp.style = `visibility: hidden`\n        this.$refs.tutorialPointerDown.style = `visibility: hidden`\n        this.$refs.tutorialPointerLeft.style = `visibility: hidden`\n        this.$refs.tutorialPointerRight.style = `visibility: hidden`\n\n        // Check if item is welcome pop up and position in center without pointer\n        if (this.tutorialItemRelativePos === 'welcome') {\n          this.$refs.tutorialCard.style = `left: ${(browserWidth / 2) - (cardWidth / 2)}px; top: ${(browserHeight / 2) - (cardHeight / 2)}px;`\n          this.hasWelcome = true\n        } else {\n          // Position tutorial tip\n          let DOMelement = document.getElementById(this.currentTutorialItems[this.activeIndex].ref)\n          if (DOMelement !== null) {\n            let pos = DOMelement.getBoundingClientRect()\n            this.setTutorialItemPosition(pos)\n            let scrollPosition = this.refPageWrapper.scrollTop;\n            let pageHeight = this.refPageWrapper.scrollHeight;\n\n            // scroll 1 - check if element is out of view (bottom) and scroll accordingly\n            if (this.refPageWrapper.clientHeight < pos.top && this.tutorialItemRelativePos !== 'welcome') {\n              this.scrollByValue = pos.bottom - this.refPageWrapper.clientHeight + cardHeight\n              this.scrollByValue = Math.abs(this.scrollByValue)\n              this.$emit('scrollToTutorialItem', this.scrollByValue)\n\n              // if scrollByValue exceeds bottom of page\n              if (browserHeight + this.scrollByValue + scrollPosition > pageHeight) {\n                let dif = (browserHeight + this.scrollByValue + scrollPosition) - pageHeight\n                this.scrollByValue = this.scrollByValue - dif + 58\n              }\n            }\n\n            // scroll 2 - check if element is out of view (top) and scroll accordingly\n            if (pos.y < 150 && this.tutorialItemRelativePos !== 'welcome') {\n              this.scrollByValue = pos.y - cardHeight\n              this.$emit('scrollToTutorialItem', this.scrollByValue)\n\n              // if scrollByValue exceeds top of page\n              if (browserHeight - this.scrollByValue > pageHeight) {\n                let dif = scrollPosition + this.scrollByValue\n                this.scrollByValue = this.scrollByValue - dif\n              }\n            }\n\n            // positioning 1 - check for relative position and place bottom + align horizontal center\n            if (this.tutorialItemRelativePos === 'bottom') {\n              // set position\n              this.$refs.tutorialCard.style = `left: ${pos.left + ((pos.width - cardWidth) / 2)}px; top: ${pos.top + pos.height - this.scrollByValue}px;`\n              this.$refs.tutorialPointerUp.style = `left: ${(cardWidth / 2) - 15}px; visibility: visible`\n\n              // if element is near right edge, align on right side of tutorial card\n              if (browserWidth - pos.right < ((cardWidth / 2) + 30)) {\n                this.$refs.tutorialCard.style = `left: ${pos.right - cardWidth}px; top: ${pos.top + pos.height - this.scrollByValue}px;`\n                this.$refs.tutorialPointerUp.style = `right: ${(pos.width / 2 - 15)}px; visibility: visible`\n              }\n\n              // reset scroll by value\n              this.scrollByValue = 0\n            }\n\n            // positioning 2 - check for relative position and place top + align horizontal center\n            if (this.tutorialItemRelativePos === 'top') {\n              // set position\n              this.$refs.tutorialCard.style = `left: ${pos.left + ((pos.width - cardWidth) / 2)}px; top: ${pos.top - cardHeight - 15 - this.scrollByValue}px;`\n              this.$refs.tutorialPointerDown.style = `left: ${(cardWidth / 2) - 15}px; visibility: visible`\n\n              // if element is near right edge, align on right side of tutorial card\n              if (browserWidth - pos.right < ((cardWidth / 2) + 30)) {\n                this.$refs.tutorialCard.style = `left: ${pos.right - cardWidth}px; top: ${pos.top - cardHeight - 15 - this.scrollByValue}px;`\n                this.$refs.tutorialPointerDown.style = `right: ${(pos.width / 2 - 15)}px; visibility: visible`\n              }\n\n              // reset scroll by value\n              this.scrollByValue = 0\n            }\n\n            // positioning 3 - check for relative position and place left + align vertical center\n            if (this.tutorialItemRelativePos === 'left') {\n              // set position\n              this.$refs.tutorialCard.style = `left: ${pos.left - cardWidth - 15}px; top: ${pos.top - (cardHeight / 2) + (pos.height / 2) - this.scrollByValue}px;`\n              this.$refs.tutorialPointerRight.style = `top: ${(cardHeight / 2) - 15}px; visibility: visible`\n              // reset scroll by value\n              this.scrollByValue = 0\n            }\n\n            // positioning 4 - check for relative position and place right + align vertical center\n            if (this.tutorialItemRelativePos === 'right') {\n              // set position\n              this.$refs.tutorialCard.style = `left: ${pos.left + pos.width}px; top: ${pos.top - (cardHeight / 2) + (pos.height / 2) - this.scrollByValue}px;`\n              this.$refs.tutorialPointerLeft.style = `bottom: ${(cardHeight / 2) - 15}px; visibility: visible`\n              // reset scroll by value\n              this.scrollByValue = 0\n            }\n          }\n        }\n\n      }\n      }\n    },\n\n    nextTutorialItem() {\n      this.activeIndex = this.activeIndex + 1\n    },\n    previousTutorialItem() {\n      this.activeIndex = this.activeIndex - 1\n    },\n    closeTutorial() {\n      this.$localforge.set(this.tutorialPage, this.updateGroupIndex)\n      this.resetTutorial()\n      this.$emit('scrollToTop')\n    },\n    skipTutorial() {\n      this.closeTutorial()\n    },\n\n    /**\n     * TRANSITION methods\n     */\n    afterEnter() {\n    },\n    enter() {\n      this.positionCard()\n    },\n    afterLeave() {\n    },\n    leave() {\n    }\n  }\n}\n</script>\n\n<style lang=\"scss\" scoped>\n.tutorial-page-wrapper {\n  position: fixed;\n  top: 0;\n  bottom: 0;\n  left: 0;\n  right: 0;\n  opacity: 0;\n  transition: 0.75s;\n  animation-duration: 0.5s;\n  overflow: hidden;\n  z-index: 22;\n  z-index: 10001;\n  background: rgba(60, 60, 59, 0.2);\n  &.is-active {\n    opacity: 1;\n  }\n\n  .tutorial-wrapper {\n    z-index: 10002;\n    min-width: 250px;\n    max-width: 500px;\n    min-height: 100px;\n    position: absolute;\n    &.tutorial-item-relative-pos {\n      &-top {\n        padding-bottom: 15px;\n      }\n      &-bottom {\n        padding-top: 15px;\n      }\n      &-left {\n        padding-right: 15px;\n      }\n      &-right {\n        padding-left: 15px;\n      }\n    }\n    // pointer\n    .pointer {\n      position: absolute;\n      width: 0;\n      height: 0;\n\n      &.up {\n        border-bottom: 15px solid white;\n        border-left: 15px solid transparent;\n        border-right: 15px solid transparent;\n        top: 0;\n      }\n\n      &.down {\n        border-top: 15px solid white;\n        border-left: 15px solid transparent;\n        border-right: 15px solid transparent;\n        bottom: 0;\n      }\n\n      &.left {\n        border-right: 15px solid white;\n        border-top: 15px solid transparent;\n        border-bottom: 15px solid transparent;\n        left: 0;\n      }\n\n      &.right {\n        border-left: 15px solid white;\n        border-top: 15px solid transparent;\n        border-bottom: 15px solid transparent;\n        right: 0;\n      }\n    }\n\n    .tutorial-card {\n      .tutorial-card-head {\n        tutorial-card-title {\n          color: #363636;\n        }\n      }\n\n      .tutorial-card-body {\n        max-height: 100px;\n        overflow-y: auto;\n      }\n\n      .tutorial-card-footer {\n        #vertically-centered {\n          padding-top: 8px;\n        }\n      }\n    }\n  }\n\n  .tutorial-welcome-wrapper {\n    z-index: 10002;\n    width: 400px;\n    height: 100px;\n    position: absolute;\n    left: 0;\n    right: 0;\n    top: 0;\n    bottom: 0;\n    margin: auto;\n  }\n\n  // fade transition\n  .fade-enter-active,\n  .fade-leave-active {\n    transition: opacity 0.25s;\n  }\n  .fade-enter,\n  .fade-leave-to {\n    opacity: 0;\n  }\n}\n</style>","import mod from \"-!../../../../node_modules/cache-loader/dist/cjs.js??ref--13-0!../../../../node_modules/thread-loader/dist/cjs.js!../../../../node_modules/babel-loader/lib/index.js!../../../../node_modules/cache-loader/dist/cjs.js??ref--1-0!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./Tutorial.vue?vue&type=script&lang=js\"; export default mod; export * from \"-!../../../../node_modules/cache-loader/dist/cjs.js??ref--13-0!../../../../node_modules/thread-loader/dist/cjs.js!../../../../node_modules/babel-loader/lib/index.js!../../../../node_modules/cache-loader/dist/cjs.js??ref--1-0!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./Tutorial.vue?vue&type=script&lang=js\"","import { render, staticRenderFns } from \"./Tutorial.vue?vue&type=template&id=6f7a1039&scoped=true\"\nimport script from \"./Tutorial.vue?vue&type=script&lang=js\"\nexport * from \"./Tutorial.vue?vue&type=script&lang=js\"\nimport style0 from \"./Tutorial.vue?vue&type=style&index=0&id=6f7a1039&prod&lang=scss&scoped=true\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n  script,\n  render,\n  staticRenderFns,\n  false,\n  null,\n  \"6f7a1039\",\n  null\n  \n)\n\nexport default component.exports","var render = function render(){var _vm=this,_c=_vm._self._c;return _c('transition',{attrs:{\"name\":\"fade\",\"mode\":\"out-in\"}},[(!_vm.appStartupLoadReady)?_c('ui-loader',{key:\"loading\"}):(_vm.appStartupLoadReady && _vm.isLoggedIn)?_c('div',{staticClass:\"site-wrapper\"},[_c('TopBar',{staticClass:\"site-topBar\",attrs:{\"id\":\"siteTopbar\"}}),_c('div',{staticClass:\"site-main-wrapper\",attrs:{\"id\":\"siteMainWrapper\"}},[(_vm.isInitiated && !_vm.isLoading)?_c('div',{staticClass:\"main-wrapper\"},[(!_vm.locationState.FirstRun)?[(_vm.showTutorial)?_c('UiTutorial',{staticClass:\"is-hidden-touch is-hidden-desktop-only\",attrs:{\"refPageWrapper\":_vm.$refs.pageWrapper},on:{\"scrollToTutorialItem\":_vm.scrollToTutorialItem,\"scrollToTop\":_vm.scrollToTop}}):_vm._e(),_c('SiteMenu',{staticClass:\"main-menu\"})]:_vm._e(),_c('div',{ref:\"pageWrapper\",staticClass:\"page-wrapper page-manage-wrapper\",on:{\"scroll\":_vm.scrollFunction}},[_c('div',{staticClass:\"page-content\"},[(_vm.locationState.Locked)?_c('div',{staticClass:\"manage-page-content pt-6 pr-6 pl-6\"},[_c('Message',{attrs:{\"type\":'is-danger',\"message\":'Location is locked!'}})],1):_vm._e(),_c('SystemMessage'),_c('transition',{attrs:{\"name\":\"slide-fade-left\",\"mode\":\"out-in\"}},[(!_vm.locationState.Locked)?_c('router-view',{key:_vm.$route.name,class:{\n                  'manage-page-content pt-6': !_vm.locationState.FirstRun\n                }}):_vm._e()],1)],1)])],2):_vm._e()])],1):_vm._e()],1)\n}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","<template>\n  <transition\n    name=\"fade\"\n    mode=\"out-in\"\n  >\n    <ui-loader\n      key=\"loading\"\n      v-if=\"!appStartupLoadReady\"\n    />\n    <div\n      v-else-if=\"appStartupLoadReady && isLoggedIn\"\n      class=\"site-wrapper\"\n    >\n      <TopBar\n        id=\"siteTopbar\"\n        class=\"site-topBar\"\n      />\n      <div\n        id=\"siteMainWrapper\"\n        class=\"site-main-wrapper\"\n      >\n        <div\n          v-if=\"isInitiated && !isLoading\"\n          class=\"main-wrapper\"\n        >\n          <template v-if=\"!locationState.FirstRun\">\n            <UiTutorial\n              v-if=\"showTutorial\"\n              :refPageWrapper=\"$refs.pageWrapper\"\n              @scrollToTutorialItem=\"scrollToTutorialItem\"\n              @scrollToTop=\"scrollToTop\"\n              class=\"is-hidden-touch is-hidden-desktop-only\"\n            />\n            <SiteMenu class=\"main-menu\" />\n          </template>\n\n          <div\n            ref=\"pageWrapper\"\n            class=\"page-wrapper page-manage-wrapper\"\n            v-on:scroll=\"scrollFunction\"\n          >\n            <div class=\"page-content\">\n              <div\n                v-if=\"locationState.Locked\"\n                class=\"manage-page-content pt-6 pr-6 pl-6\"\n              >\n                <Message\n                  :type=\"'is-danger'\"\n                  :message=\"'Location is locked!'\"\n                />\n              </div>\n\n              <SystemMessage />\n\n              <transition\n                name=\"slide-fade-left\"\n                mode=\"out-in\"\n              >\n                <router-view\n                  v-if=\"!locationState.Locked\"\n                  :key=\"$route.name\"\n                  :class=\"{\n                    'manage-page-content pt-6': !locationState.FirstRun\n                  }\"\n                />\n              </transition>\n            </div>\n          </div>\n        </div>\n      </div>\n    </div>\n  </transition>\n</template>\n\n<script>\nimport axios from 'axios';\nimport { EventBus } from '@/eventbus/event-bus';\nimport { mapState, mapGetters, mapMutations, mapActions } from 'vuex';\nimport locationProvider from '@/providers/location';\nimport * as bulmaToast from 'bulma-toast';\nimport notificationProvider from '@/providers/notification';\n\nbulmaToast.setDoc(window.document);\n\nexport default {\n  components: {\n    SiteMenu: () => import(/* webpackChunkName: \"manage\" */ '@/components/MainSiteElements/Manage/SiteMenu'),\n    UiTutorial: () => import(/* webpackChunkName: \"manage\" */ '@/components/UI/Components/Tutorial'),\n    TopBar: () => import(/* webpackChunkName: \"manage\" */ '@/components/MainSiteElements/Manage/TopBar.vue'),\n    SystemMessage: () => import(/* webpackChunkName: \"manage\" */ '@/components/SystemMessage/SystemMessage.vue'),\n    Message: () => import(/* webpackChunkName: \"manage\" */ '@/components/UI/Message')\n  },\n\n  data() {\n    return {\n      isDashboardView: false,\n      locationId: Number(this.$route.params.locationId),\n      isLoading: true,\n      cssPagedMedia: null\n    };\n  },\n\n  computed: {\n    ...mapState(['printPageOrientation']),\n    ...mapState('locationStore', ['locationState']),\n    ...mapState('menuStore', ['menu']),\n    ...mapState('tutorialStore', ['showTutorial']),\n    ...mapState('notificationStore', ['notifications']),\n    ...mapState('profileStore', ['profile']),\n    ...mapGetters({\n      appStartupLoadReady: 'getAppStartupLoadReady',\n      isInitiated: 'getIsInitiated',\n      isLoggedIn: 'profileStore/getIsLoggedIn',\n      tutorialItemPosition: 'tutorialStore/getTutorialItemPosition'\n    })\n  },\n\n  watch: {\n    appStartupLoadReady() {\n      this.checkHasLocationAccess();\n    },\n\n    /**\n     * Watch route meta data\n     */\n    '$route.meta': {\n      handler: function () {\n        // Check if view is dashboard\n        this.isDashboardView = typeof this.$route.meta.isDashboardView !== 'undefined' ? this.$route.meta.isDashboardView : false;\n      },\n      deep: true\n    },\n\n    printPageOrientation(val) {\n      const el = document.body;\n      el.classList.remove(val === 'portrait' ? 'landscape' : 'portrait');\n      val = val !== '' ? val : 'portrait';\n      el.classList.add(val);\n      if (this.cssPagedMedia) {\n        this.cssPagedMedia.size(val);\n      }\n    },\n\n    '$route.name': function () {\n      this.setPrintPageOrientation();\n    }\n  },\n\n  beforeCreate() {\n    this.$nextTick()\n      .then(() => {\n        if (this.$store.getters['getAppStartupLoadReady'] && !this.$store.getters['profileStore/getIsLoggedIn']) {\n          this.$router.push({ name: 'my-account-login' });\n          return;\n        }\n        document.documentElement.style = 'overflow: hidden;';\n        document.documentElement.classList.remove('frontend-environment');\n        document.documentElement.classList.add('manage-environment');\n      })\n      .catch((error) => {});\n  },\n\n  async created() {\n    this.checkHasLocationAccess();\n\n    this.cssPagedMedia = this.generateCssPageMedia();\n    this.setPrintPageOrientation();\n\n    EventBus.$on('showToast', (toast) => {\n      this.showToast(toast);\n    });\n\n    EventBus.$on('pageScollTo', this.pageScollTo);\n  },\n\n  mounted() {\n    let self = this;\n    // Window listener\n    window.addEventListener('resize', (val) => {\n      self.getScreenproperties();\n    });\n    let t = setTimeout(() => {\n      self.getScreenproperties();\n      clearTimeout(t);\n    }, 150);\n  },\n\n  beforeDestroy() {\n    EventBus.$off('showToast');\n    EventBus.$off('scrollTo', this.pageScollTo);\n\n    this.$store.commit('locationStore/setLocationState', null);\n\n    this.$nextTick()\n      .then(() => {\n        document.documentElement.style = '';\n        document.documentElement.classList.remove('manage-environment');\n        document.documentElement.classList.add('frontend-environment');\n      })\n      .catch((error) => {});\n  },\n\n  methods: {\n    ...mapMutations(['setPrintPageOrientation']),\n    ...mapActions('locationStore', ['clearLocationState']),\n    ...mapActions('menuStore', ['getLocationMenu']),\n    ...mapMutations('locationStore', ['setLocationState', 'setLocation']),\n    ...mapMutations('menuStore', ['setMenu']),\n    ...mapMutations('notificationStore', ['setNotifications']),\n\n    pageScollTo({ top = 0, left = 0 }) {\n      this.$refs.pageWrapper.scrollTo(top, left);\n    },\n\n    /**\n     * Check if user has location access\n     */\n    checkHasLocationAccess() {\n      if (this.appStartupLoadReady) {\n        if (!this.isLoggedIn) {\n          this.$nextTick(() => this.$router.push({ name: 'home' }));\n          return;\n        }\n\n        let self = this;\n        this.getHasLocationAccess()\n          .then((response) => {\n            if (response.data) {\n              // Get location state if this is not set\n              axios\n                .all([self.checkLocationState(), self.getMenuItems()])\n                .then(\n                  axios.spread((locationStateResponse) => {\n                    if (locationStateResponse) {\n                      // Store location state\n                      this.setLocationState(locationStateResponse.data);\n\n                      self.getProfileNotifications();\n                    }\n\n                    self.loadSupportWidget(function () {\n                      let DOMContentLoaded_event = document.createEvent('Event');\n                      DOMContentLoaded_event.initEvent('DOMContentLoaded', true, true);\n                      window.document.dispatchEvent(DOMContentLoaded_event);\n                    });\n                  })\n                )\n                .finally(() => {\n                  if (self.locationState.FirstRun && this.$route.name !== 'firstrun') {\n                    this.$router.push({ name: 'firstrun' });\n                    self.isLoading = false;\n                  } else {\n                    if (this.$route.name === 'manage') {\n                      this.$router.push({ name: 'manage-home' });\n                    }\n                    self.isLoading = false;\n                  }\n                });\n            } else {\n              this.$router.push({ name: 'my-account-dashboard' }); // ToDo: No access view\n            }\n          })\n          .catch((e) => {\n            this.$router.push({ name: 'my-account-dashboard' });\n          })\n          .finally(() => {});\n      }\n    },\n\n    loadSupportWidget(callback) {\n      let widgetScript = document.createElement('script');\n      widgetScript.type = 'text/javascript';\n      widgetScript.src = 'https://jsd-widget.atlassian.com/assets/embed.js';\n      widgetScript.setAttribute('data-jsd-embedded', null);\n      widgetScript.setAttribute('data-key', 'd677c6e5-c14b-4070-823f-8cca41d2589d');\n      widgetScript.setAttribute('data-base-url', 'https://jsd-widget.atlassian.com');\n      widgetScript.async = true;\n      widgetScript.onload = () => {\n        callback();\n      };\n\n      document.head.appendChild(widgetScript);\n    },\n\n    // Generate css page media\n    generateCssPageMedia() {\n      let cssPagedMedia = (function () {\n        let style = document.createElement('style');\n        style.setAttribute('media', 'print');\n        document.head.appendChild(style);\n        return function (rule) {\n          style.innerHTML = rule;\n        };\n      })();\n\n      cssPagedMedia.size = function (size) {\n        var pageMargin = size === 'landscape' ? '70px 28px 28px 13px' : '28px 28px 28px 70px';\n        cssPagedMedia(`@page {size: ${size}; margin: ${pageMargin};}`);\n      };\n      return cssPagedMedia;\n    },\n\n    // Get screen properties and calculate mange content height\n    getScreenproperties() {\n      let siteTopBar = document.getElementById('siteTopbar');\n      let siteMainWrapper = document.getElementById('siteMainWrapper');\n      if (siteTopBar) {\n        siteMainWrapper.style = `height: calc(100vh - ${siteTopBar.offsetHeight}px);`;\n      }\n\n      EventBus.$emit('windowResizeListener', {\n        width: window.innerWidth,\n        height: window.innerHeight\n      });\n    },\n\n    scrollFunction(val) {\n      // console.log(val.target.scrollTop)\n      this.pageWrapperScroll;\n    },\n\n    scrollToTutorialItem(posValue) {\n      let browserHeight = window.innerHeight;\n      if (browserHeight > 200) {\n        this.$refs.pageWrapper.scrollBy({\n          top: posValue,\n          behavior: 'smooth'\n        });\n      }\n    },\n    scrollToTop() {\n      this.$refs.pageWrapper.scrollTo({ top: 0, behavior: 'smooth' });\n    },\n\n    checkLocationState() {\n      if ((this.locationState && this.locationState.Id !== this.locationId) || !this.locationState) {\n        this.clearLocationState();\n        return this.getLocationState();\n      } else {\n        return { data: this.locationState };\n      }\n    },\n\n    getHasLocationAccess() {\n      return locationProvider.methods.getHasLocationAccess(this.locationId);\n    },\n\n    getLocationState() {\n      return locationProvider.methods.getLocationState(this.locationId);\n    },\n\n    getLocationData() {\n      return locationProvider.methods.getLocationData(this.locationId);\n    },\n\n    getMenuItems() {\n      this.getLocationMenu(this.locationId);\n    },\n\n    getProfileNotifications() {\n      notificationProvider.methods.getProfileLocationNotifications(this.locationState.Id).then((response) => {\n        if (response.status === 200) {\n          this.setNotifications(response.data);\n        }\n      });\n    },\n\n    showToast(toast) {\n      bulmaToast.toast({\n        message: toast.message,\n        duration: 3000,\n        type: toast.type === 'info' ? 'is-dark' : 'is-warning',\n        position: 'bottom-center',\n        dismissible: true,\n        closeOnClick: true,\n        pauseOnHover: true,\n        animate: { in: 'fadeInUp', out: 'fadeOutDown' }\n      });\n    }\n  }\n};\n</script>\n\n<style lang=\"scss\" scoped>\n.site-wrapper {\n  display: flex;\n  flex-direction: column;\n  justify-content: flex-start;\n  align-items: stretch;\n\n  .site-main-wrapper {\n    height: calc(100vh - 55.5px);\n  }\n}\n</style>\n","import mod from \"-!../../node_modules/cache-loader/dist/cjs.js??ref--13-0!../../node_modules/thread-loader/dist/cjs.js!../../node_modules/babel-loader/lib/index.js!../../node_modules/cache-loader/dist/cjs.js??ref--1-0!../../node_modules/vue-loader/lib/index.js??vue-loader-options!./Manage.vue?vue&type=script&lang=js\"; export default mod; export * from \"-!../../node_modules/cache-loader/dist/cjs.js??ref--13-0!../../node_modules/thread-loader/dist/cjs.js!../../node_modules/babel-loader/lib/index.js!../../node_modules/cache-loader/dist/cjs.js??ref--1-0!../../node_modules/vue-loader/lib/index.js??vue-loader-options!./Manage.vue?vue&type=script&lang=js\"","import { render, staticRenderFns } from \"./Manage.vue?vue&type=template&id=03012b50&scoped=true\"\nimport script from \"./Manage.vue?vue&type=script&lang=js\"\nexport * from \"./Manage.vue?vue&type=script&lang=js\"\nimport style0 from \"./Manage.vue?vue&type=style&index=0&id=03012b50&prod&lang=scss&scoped=true\"\n\n\n/* normalize component */\nimport normalizer from \"!../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n  script,\n  render,\n  staticRenderFns,\n  false,\n  null,\n  \"03012b50\",\n  null\n  \n)\n\nexport default component.exports","var render = function render(){var _vm=this,_c=_vm._self._c;return _c('article',{staticClass:\"message\",class:_vm.combindedClass},[_c('div',{staticClass:\"message-body\"},[(_vm.message)?[_vm._v(\" \"+_vm._s(_vm.message)+\" \")]:_vm._e(),_vm._t(\"content\")],2)])\n}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","<template>\n  <article\n    class=\"message\"\n    :class=\"combindedClass\"\n  >\n    <div class=\"message-body\">\n      <template v-if=\"message\">\n        {{ message }}\n      </template>\n      <slot name=\"content\"></slot>\n    </div>\n  </article>\n</template>\n\n<script>\nexport default {\n  props: {\n    /**\n     * For what'll be shown inside of the message box.\n     */\n    message: {\n      type: String,\n      default: ''\n    },\n\n    size: {\n      type: String,\n      default: ''\n    },\n\n    /**\n     * type bepaalt het type weergave\n     * eq. is-info = for information style. It defines the style of the message\n     */\n    type: {\n      type: String,\n      default: 'is-info'\n    }\n  },\n  data() {\n    return {};\n  },\n\n  computed: {\n    combindedClass() {\n      let c = this.type;\n\n      if (this.size.length > 0) {\n        c = c + ' ' + this.size;\n      }\n\n      return c;\n    }\n  }\n};\n</script>\n\n<style lang=\"scss\" scoped></style>\n","import mod from \"-!../../../node_modules/cache-loader/dist/cjs.js??ref--13-0!../../../node_modules/thread-loader/dist/cjs.js!../../../node_modules/babel-loader/lib/index.js!../../../node_modules/cache-loader/dist/cjs.js??ref--1-0!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./Message.vue?vue&type=script&lang=js\"; export default mod; export * from \"-!../../../node_modules/cache-loader/dist/cjs.js??ref--13-0!../../../node_modules/thread-loader/dist/cjs.js!../../../node_modules/babel-loader/lib/index.js!../../../node_modules/cache-loader/dist/cjs.js??ref--1-0!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./Message.vue?vue&type=script&lang=js\"","import { render, staticRenderFns } from \"./Message.vue?vue&type=template&id=509443f1&scoped=true\"\nimport script from \"./Message.vue?vue&type=script&lang=js\"\nexport * from \"./Message.vue?vue&type=script&lang=js\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n  script,\n  render,\n  staticRenderFns,\n  false,\n  null,\n  \"509443f1\",\n  null\n  \n)\n\nexport default component.exports"],"sourceRoot":""}