{"version":3,"sources":["webpack:///webpack/bootstrap","webpack:///./src/store/modules/authentication.store.ts","webpack:///./src/store/modules/user.store.ts","webpack:///./src/store/modules/alert.store.ts","webpack:///./src/store/modules/occurrence.store.ts","webpack:///./src/store/modules/realEstate.store.ts","webpack:///./src/store/modules/document.store.ts","webpack:///./src/store/modules/task.store.ts","webpack:///./src/store/modules/role.store.ts","webpack:///./src/store/index.ts","webpack:///./src/services/authenticationService.ts","webpack:///./src/services/occurrenceService.ts","webpack:///./src/services/documentService.ts","webpack:///./src/services/taskService.ts","webpack:///./src/services/userService.ts","webpack:///./src/services/loggerService.ts","webpack:///./src/services/roleService.ts","webpack:///./src/authHeader.ts","webpack:///./src/services/api.ts","webpack:///./src/views lazy ^\\.\\/.*\\.vue$ namespace object","webpack:///./node_modules/moment/locale sync ^\\.\\/.*$","webpack:///./src/router.ts","webpack:///./src/assets/ics_briefpapier.jpg","webpack:///./src/services/realEstateService.ts","webpack:///./src/mixins.ts","webpack:///./src/plugins/vuetify.ts","webpack:///./src/App.vue","webpack:///./src/components/ConfirmationDialogue.vue","webpack:///src/components/ConfirmationDialogue.vue","webpack:///./src/components/ConfirmationDialogue.vue?0109","webpack:///./src/components/ConfirmationDialogue.vue?11d3","webpack:///./src/components/PasswordChangeModal.vue","webpack:///./src/components/PasswordChangeModal.vue?e926","webpack:///./src/components/PasswordChangeModal.vue?82a8","webpack:///./src/components/PasswordChangeModal.vue?decf","webpack:///./src/App.vue?9844","webpack:///./src/App.vue?5eb4","webpack:///./src/App.vue?315a","webpack:///./src/registerServiceWorker.ts","webpack:///./src/main.ts","webpack:///./src/components/BaseDialog.vue?22f4","webpack:///./src/services/pdfService.ts","webpack:///./src/App.vue?eaaa","webpack:///./src/components/BaseDialog.vue","webpack:///./src/components/BaseDialog.vue?cca9","webpack:///./src/components/BaseDialog.vue?5529","webpack:///./src/components/BaseDialog.vue?261d","webpack:///./src/plugins/i18n.ts"],"names":["webpackJsonpCallback","data","moduleId","chunkId","chunkIds","moreModules","executeModules","i","resolves","length","Object","prototype","hasOwnProperty","call","installedChunks","push","modules","parentJsonpFunction","shift","deferredModules","apply","checkDeferredModules","result","deferredModule","fulfilled","j","depId","splice","__webpack_require__","s","installedModules","installedCssChunks","jsonpScriptSrc","p","exports","module","l","e","promises","cssChunks","Promise","resolve","reject","href","fullhref","existingLinkTags","document","getElementsByTagName","tag","dataHref","getAttribute","rel","existingStyleTags","linkTag","createElement","type","onload","onerror","event","request","target","src","err","Error","code","parentNode","removeChild","head","appendChild","then","installedChunkData","promise","onScriptComplete","script","charset","timeout","nc","setAttribute","error","clearTimeout","chunk","errorType","realSrc","message","name","undefined","setTimeout","all","m","c","d","getter","o","defineProperty","enumerable","get","r","Symbol","toStringTag","value","t","mode","__esModule","ns","create","key","bind","n","object","property","oe","console","jsonpArray","window","oldJsonpFunction","slice","userAuthItem","state","users","loading","actions","getAllUsers","_ref","_asyncToGenerator","_regeneratorRuntime","mark","_callee","dispatch","commit","wrap","_context","prev","next","UserService","sent","t0","i18n","root","stop","removeUser","_ref2","userId","_callee2","_context2","addUser","_ref3","user","_callee3","_context3","updateUser","_ref4","_callee4","_context4","mutations","setLoading","setUsers","getters","usersFiltered","filters","filtered","keys","filter","_i","_Object$keys","column","filterValue","toString","indexOf","toLowerCase","isLoading","namespaced","keepMeSignedIn","JSON","parse","localStorage","getItem","userAuth","userName","firstName","lastName","id","icsId","email","roles","active","activatedAt","Date","createdAt","lastLogin","initialState","status","loggedIn","requestingRefresh","authentication","changePassword","AuthenticationService","abrupt","confirmAccount","router","resetPassword","requestNewPassword","login","_ref5","_callee5","_userAuth","_context5","refreshToken","_ref6","_callee6","_context6","refreshAccessToken","refreshPromise","logout","_ref7","register","_ref8","payload","_callee7","_context7","getAuthenticatedUser","_ref9","_callee8","_user","_context8","refreshRequest","_objectSpread","loginSuccess","loginFailure","setUser","alert","success","info","clear","Vue","set","occurrences","dateFilteredOccurrences","getAllOccurrences","Occurrenceservice","t1","freeze","t2","getDateFilteredOccurrences","dateRange","occurrence","moment","date","isBetween","from","to","addOccurrence","setOccurrences","pstate","setDateFilteredOccurrences","occurrencesFiltered","format","realEstates","getAllRealEstates","realEstateService","setRealEstates","realEstate","documents","getAllDocuments","occurrenceId","DocumentService","setDocuments","tasks","dateFilteredTasks","getAllTasks","TaskService","getDateFilteredTasks","task","creationDate","setTasks","setDateFilteredTasks","tasksFiltered","getRoles","RoleService","setRoles","role","use","Vuex","store","locales","locale","SET_LANG","setItem","setLang","Store","hashPassword","password","hashObj","jsSHA","numRounds","update","getHash","addTokenToStorage","jwt","stringify","getTokenFromStorage","token","removeTokenFromStorage","removeItem","response","Api","post","put","Email","newPassword","confirmPassword","oldPassword","newPasswordRepeat","_this","uriEncodedData","encodeURIComponent","username","headers","Accept","handleResponse","_this2","userItem","refresh_token","this","location","pathname","reload","getOccurrenceExcel","params","occurrencesTranslation","fetch_limit","responseType","saveAs","map","elem","occurrenceData","splittedId","isHttpOrigin","protocol","replace","modificationDate","path","concat","idx","getUserData","log","delete","userData","postLogMessage","Action","action","Message","Level","level","x","authHeader","access_token","timeOutHandle","baseURL","process","isTokenValid","expires","now","getTime","axiosInstance","axios","Authorization","interceptors","config","webpackAsyncContext","req","ids","webpackContext","webpackContextResolve","routerOptions","component","routes","route","Router","beforeEach","publicPages","userPages","authRequired","includes","needsAdminRole","getPostalCode","arguments","_ref$Id","Id","_ref$location","_ref$postal_code","postal_code","_ref$ref_country","ref_country","realestates","postalCode","_postalCode","fullName","obj","separator","properties","Array","isArray","split","erg","reduce","curr","Vuetify","icons","iconfont","theme","dark","themes","light","primary","accent","secondary","ref","attrs","model","_vm","callback","expression","on","notification","$t","_c","layout","dialog","staticClass","style","options","directives","rawName","click","nativeOn","render","title","color","width","zIndex","methods","open","assign","agree","cancel","scopedSlots","$event","preventDefault","passwordConfirm","_v","$$v","staticRenderFns","extend","computed","comparePasswords","minlengthPassword","$refs","form","validate","$store","$nextTick","reset","components","BaseDialog","Component","acceptCookies","cookiesNotConfirmed","created","watch","$route","appTitle","confirm","ConfirmationDialogue","passwordChange","PasswordChangeModal","mounted","$confirm","$changePassword","ready","registered","cached","updatefound","updated","offline","productionTip","mixin","formRules","pattern","test","required","username_required","password_required","vuetify","h","App","$mount","reportFields","Number","RealEstate","BuildingName","ResponsiblePersonName","ResponsiblePersonEmail","ResponsiblePersonMobilePhoneNumber","OccurrenceType","TradeType","ErrorCauseType","InstallationName","InstallationLevel","InstallationLocation","OccurrenceStatus","Note","ErrorCauseDetails","count_imgs","convertFileXHR","url","xhr","XMLHttpRequest","reader","FileReader","onloadend","readAsDataURL","send","pdfMake","pdfFonts","getPdf","fileName","pdfFontsMod","pdfMakeMod","firstColWidth","secondColWidth","briefpapier","a","docImages","listImages","_iterator","_step","installation","errorCauseDetails","docDefinition","tmp","first","margin","cols","_iterator2","_step2","_listImages","_value","default","vfs","require","_createForOfIteratorHelper","done","base64","f","finish","tradeType","columns","text","bold","ebene","background","content","number","buildingName","occurrenceType","errorCauseType","occurrenceStatus","description","responsiblePerson","mobilePhoneNumber","pageSize","defaultStyle","fontSize","styles","header","pageBreak","image","currentPage","height","createPdf","download","props","String","Boolean","_width","$emit","VueI18n","messages","en","de"],"mappings":"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,aAAc,OACd,UAAW,OACX,aAAc,OACd,UAAW,OACX,aAAc,OACd,OAAQ,OACR,UAAW,OACX,OAAQ,OACR,UAAW,OACX,aAAc,OACd,UAAW,OACX,aAAc,OACd,UAAW,OACX,OAAQ,OACR,UAAW,OACX,OAAQ,OACR,UAAW,OACX,OAAQ,OACR,UAAW,OACX,OAAQ,OACR,UAAW,OACX,OAAQ,OACR,UAAW,OACX,OAAQ,OACR,UAAW,OACX,aAAc,OACd,UAAW,OACX,aAAc,OACd,UAAW,OACX,OAAQ,OACR,UAAW,OACX,OAAQ,OACR,UAAW,OACX,OAAQ,OACR,UAAW,OACX,OAAQ,OACR,UAAW,OACX,aAAc,OACd,gBAAiB,OACjB,OAAQ,OACR,UAAW,OACX,OAAQ,OACR,UAAW,OACX,OAAQ,OACR,UAAW,OACX,OAAQ,OACR,UAAW,OACX,OAAQ,OACR,UAAW,OACX,UAAW,OACX,aAAc,OACd,OAAQ,OACR,UAAW,OACX,OAAQ,OACR,UAAW,OACX,OAAQ,OACR,UAAW,OACX,aAAc,OACd,UAAW,OACX,OAAQ,OACR,UAAW,OACX,OAAQ,OACR,UAAW,OACX,OAAQ,OACR,UAAW,OACX,OAAQ,OACR,UAAW,OACX,OAAQ,OACR,UAAW,OACX,OAAQ,OACR,UAAW,OACX,OAAQ,OACR,UAAW,OACX,OAAQ,OACR,UAAW,OACX,OAAQ,OACR,UAAW,OACX,OAAQ,OACR,UAAW,OACX,OAAQ,OACR,UAAW,OACX,OAAQ,OACR,UAAW,OACX,OAAQ,OACR,UAAW,OACX,OAAQ,OACR,UAAW,OACX,OAAQ,OACR,UAAW,OACX,OAAQ,OACR,UAAW,OACX,OAAQ,OACR,UAAW,OACX,OAAQ,OACR,UAAW,OACX,OAAQ,OACR,UAAW,OACX,OAAQ,OACR,UAAW,OACX,aAAc,OACd,UAAW,OACX,OAAQ,OACR,UAAW,OACX,OAAQ,OACR,UAAW,OACX,OAAQ,OACR,UAAW,OACX,OAAQ,OACR,UAAW,OACX,OAAQ,OACR,UAAW,OACX,aAAc,OACd,UAAW,OACX,OAAQ,OACR,UAAW,OACX,UAAW,OACX,aAAc,OACd,OAAQ,OACR,UAAW,OACX,OAAQ,O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","file":"js/app.abd265a4.js","sourcesContent":[" \t// install a JSONP callback for chunk loading\n \tfunction webpackJsonpCallback(data) {\n \t\tvar chunkIds = data[0];\n \t\tvar moreModules = data[1];\n \t\tvar executeModules = data[2];\n\n \t\t// add \"moreModules\" to the modules object,\n \t\t// then flag all \"chunkIds\" as loaded and fire callback\n \t\tvar moduleId, chunkId, i = 0, resolves = [];\n \t\tfor(;i < chunkIds.length; i++) {\n \t\t\tchunkId = chunkIds[i];\n \t\t\tif(Object.prototype.hasOwnProperty.call(installedChunks, chunkId) && installedChunks[chunkId]) {\n \t\t\t\tresolves.push(installedChunks[chunkId][0]);\n \t\t\t}\n \t\t\tinstalledChunks[chunkId] = 0;\n \t\t}\n \t\tfor(moduleId in moreModules) {\n \t\t\tif(Object.prototype.hasOwnProperty.call(moreModules, moduleId)) {\n \t\t\t\tmodules[moduleId] = moreModules[moduleId];\n \t\t\t}\n \t\t}\n \t\tif(parentJsonpFunction) parentJsonpFunction(data);\n\n \t\twhile(resolves.length) {\n \t\t\tresolves.shift()();\n \t\t}\n\n \t\t// add entry modules from loaded chunk to deferred list\n \t\tdeferredModules.push.apply(deferredModules, executeModules || []);\n\n \t\t// run deferred modules when all chunks ready\n \t\treturn checkDeferredModules();\n \t};\n \tfunction checkDeferredModules() {\n \t\tvar result;\n \t\tfor(var i = 0; i < deferredModules.length; i++) {\n \t\t\tvar deferredModule = deferredModules[i];\n \t\t\tvar fulfilled = true;\n \t\t\tfor(var j = 1; j < deferredModule.length; j++) {\n \t\t\t\tvar depId = deferredModule[j];\n \t\t\t\tif(installedChunks[depId] !== 0) fulfilled = false;\n \t\t\t}\n \t\t\tif(fulfilled) {\n \t\t\t\tdeferredModules.splice(i--, 1);\n \t\t\t\tresult = __webpack_require__(__webpack_require__.s = deferredModule[0]);\n \t\t\t}\n \t\t}\n\n \t\treturn result;\n \t}\n\n \t// The module cache\n \tvar installedModules = {};\n\n \t// object to store loaded CSS chunks\n \tvar installedCssChunks = {\n \t\t\"app\": 0\n \t}\n\n \t// object to store loaded and loading chunks\n \t// undefined = chunk not loaded, null = chunk preloaded/prefetched\n \t// Promise = chunk loading, 0 = chunk loaded\n \tvar installedChunks = {\n \t\t\"app\": 0\n \t};\n\n \tvar deferredModules = [];\n\n \t// script path function\n \tfunction jsonpScriptSrc(chunkId) {\n \t\treturn __webpack_require__.p + \"js/\" + ({\"pdfmake\":\"pdfmake\",\"vfs_fonts\":\"vfs_fonts\"}[chunkId]||chunkId) + \".\" + {\"chunk-08ae3b2d\":\"d8d0f44e\",\"chunk-2d21a3d2\":\"af22ec12\",\"chunk-2d22d746\":\"44bb23a3\",\"chunk-5e147950\":\"1e6ec2f6\",\"chunk-173db906\":\"baf1a375\",\"chunk-343876fb\":\"d6fd363b\",\"chunk-1c35ef46\":\"e5dba8a2\",\"chunk-6d808eaa\":\"62883290\",\"chunk-8d001132\":\"10fdd9f0\",\"chunk-2d226718\":\"6414f7a0\",\"chunk-09b9fbc7\":\"242b4ed1\",\"chunk-0d12a190\":\"a8ac37ec\",\"chunk-41a03d50\":\"a398316c\",\"chunk-4a58cd14\":\"924507a3\",\"pdfmake\":\"35f43343\",\"vfs_fonts\":\"40e5915c\"}[chunkId] + \".js\"\n \t}\n\n \t// The require function\n \tfunction __webpack_require__(moduleId) {\n\n \t\t// Check if module is in cache\n \t\tif(installedModules[moduleId]) {\n \t\t\treturn installedModules[moduleId].exports;\n \t\t}\n \t\t// Create a new module (and put it into the cache)\n \t\tvar module = installedModules[moduleId] = {\n \t\t\ti: moduleId,\n \t\t\tl: false,\n \t\t\texports: {}\n \t\t};\n\n \t\t// Execute the module function\n \t\tmodules[moduleId].call(module.exports, module, module.exports, __webpack_require__);\n\n \t\t// Flag the module as loaded\n \t\tmodule.l = true;\n\n \t\t// Return the exports of the module\n \t\treturn module.exports;\n \t}\n\n \t// This file contains only the entry chunk.\n \t// The chunk loading function for additional chunks\n \t__webpack_require__.e = function requireEnsure(chunkId) {\n \t\tvar promises = [];\n\n\n \t\t// mini-css-extract-plugin CSS loading\n \t\tvar cssChunks = {\"chunk-08ae3b2d\":1,\"chunk-5e147950\":1,\"chunk-173db906\":1,\"chunk-343876fb\":1,\"chunk-1c35ef46\":1,\"chunk-8d001132\":1,\"chunk-09b9fbc7\":1,\"chunk-0d12a190\":1,\"chunk-41a03d50\":1,\"chunk-4a58cd14\":1};\n \t\tif(installedCssChunks[chunkId]) promises.push(installedCssChunks[chunkId]);\n \t\telse if(installedCssChunks[chunkId] !== 0 && cssChunks[chunkId]) {\n \t\t\tpromises.push(installedCssChunks[chunkId] = new Promise(function(resolve, reject) {\n \t\t\t\tvar href = \"css/\" + ({\"pdfmake\":\"pdfmake\",\"vfs_fonts\":\"vfs_fonts\"}[chunkId]||chunkId) + \".\" + {\"chunk-08ae3b2d\":\"c27bcd58\",\"chunk-2d21a3d2\":\"31d6cfe0\",\"chunk-2d22d746\":\"31d6cfe0\",\"chunk-5e147950\":\"e72ed723\",\"chunk-173db906\":\"0b632a51\",\"chunk-343876fb\":\"8e01f19e\",\"chunk-1c35ef46\":\"173761d0\",\"chunk-6d808eaa\":\"31d6cfe0\",\"chunk-8d001132\":\"38142e0b\",\"chunk-2d226718\":\"31d6cfe0\",\"chunk-09b9fbc7\":\"9bb9970f\",\"chunk-0d12a190\":\"0ec24a84\",\"chunk-41a03d50\":\"01f5433a\",\"chunk-4a58cd14\":\"0ec24a84\",\"pdfmake\":\"31d6cfe0\",\"vfs_fonts\":\"31d6cfe0\"}[chunkId] + \".css\";\n \t\t\t\tvar fullhref = __webpack_require__.p + href;\n \t\t\t\tvar existingLinkTags = document.getElementsByTagName(\"link\");\n \t\t\t\tfor(var i = 0; i < existingLinkTags.length; i++) {\n \t\t\t\t\tvar tag = existingLinkTags[i];\n \t\t\t\t\tvar dataHref = tag.getAttribute(\"data-href\") || tag.getAttribute(\"href\");\n \t\t\t\t\tif(tag.rel === \"stylesheet\" && (dataHref === href || dataHref === fullhref)) return resolve();\n \t\t\t\t}\n \t\t\t\tvar existingStyleTags = document.getElementsByTagName(\"style\");\n \t\t\t\tfor(var i = 0; i < existingStyleTags.length; i++) {\n \t\t\t\t\tvar tag = existingStyleTags[i];\n \t\t\t\t\tvar dataHref = tag.getAttribute(\"data-href\");\n \t\t\t\t\tif(dataHref === href || dataHref === fullhref) return resolve();\n \t\t\t\t}\n \t\t\t\tvar linkTag = document.createElement(\"link\");\n \t\t\t\tlinkTag.rel = \"stylesheet\";\n \t\t\t\tlinkTag.type = \"text/css\";\n \t\t\t\tlinkTag.onload = resolve;\n \t\t\t\tlinkTag.onerror = function(event) {\n \t\t\t\t\tvar request = event && event.target && event.target.src || fullhref;\n \t\t\t\t\tvar err = new Error(\"Loading CSS chunk \" + chunkId + \" failed.\\n(\" + request + \")\");\n \t\t\t\t\terr.code = \"CSS_CHUNK_LOAD_FAILED\";\n \t\t\t\t\terr.request = request;\n \t\t\t\t\tdelete installedCssChunks[chunkId]\n \t\t\t\t\tlinkTag.parentNode.removeChild(linkTag)\n \t\t\t\t\treject(err);\n \t\t\t\t};\n \t\t\t\tlinkTag.href = fullhref;\n\n \t\t\t\tvar head = document.getElementsByTagName(\"head\")[0];\n \t\t\t\thead.appendChild(linkTag);\n \t\t\t}).then(function() {\n \t\t\t\tinstalledCssChunks[chunkId] = 0;\n \t\t\t}));\n \t\t}\n\n \t\t// JSONP chunk loading for javascript\n\n \t\tvar installedChunkData = installedChunks[chunkId];\n \t\tif(installedChunkData !== 0) { // 0 means \"already installed\".\n\n \t\t\t// a Promise means \"currently loading\".\n \t\t\tif(installedChunkData) {\n \t\t\t\tpromises.push(installedChunkData[2]);\n \t\t\t} else {\n \t\t\t\t// setup Promise in chunk cache\n \t\t\t\tvar promise = new Promise(function(resolve, reject) {\n \t\t\t\t\tinstalledChunkData = installedChunks[chunkId] = [resolve, reject];\n \t\t\t\t});\n \t\t\t\tpromises.push(installedChunkData[2] = promise);\n\n \t\t\t\t// start chunk loading\n \t\t\t\tvar script = document.createElement('script');\n \t\t\t\tvar onScriptComplete;\n\n \t\t\t\tscript.charset = 'utf-8';\n \t\t\t\tscript.timeout = 120;\n \t\t\t\tif (__webpack_require__.nc) {\n \t\t\t\t\tscript.setAttribute(\"nonce\", __webpack_require__.nc);\n \t\t\t\t}\n \t\t\t\tscript.src = jsonpScriptSrc(chunkId);\n\n \t\t\t\t// create error before stack unwound to get useful stacktrace later\n \t\t\t\tvar error = new Error();\n \t\t\t\tonScriptComplete = function (event) {\n \t\t\t\t\t// avoid mem leaks in IE.\n \t\t\t\t\tscript.onerror = script.onload = null;\n \t\t\t\t\tclearTimeout(timeout);\n \t\t\t\t\tvar chunk = installedChunks[chunkId];\n \t\t\t\t\tif(chunk !== 0) {\n \t\t\t\t\t\tif(chunk) {\n \t\t\t\t\t\t\tvar errorType = event && (event.type === 'load' ? 'missing' : event.type);\n \t\t\t\t\t\t\tvar realSrc = event && event.target && event.target.src;\n \t\t\t\t\t\t\terror.message = 'Loading chunk ' + chunkId + ' failed.\\n(' + errorType + ': ' + realSrc + ')';\n \t\t\t\t\t\t\terror.name = 'ChunkLoadError';\n \t\t\t\t\t\t\terror.type = errorType;\n \t\t\t\t\t\t\terror.request = realSrc;\n \t\t\t\t\t\t\tchunk[1](error);\n \t\t\t\t\t\t}\n \t\t\t\t\t\tinstalledChunks[chunkId] = undefined;\n \t\t\t\t\t}\n \t\t\t\t};\n \t\t\t\tvar timeout = setTimeout(function(){\n \t\t\t\t\tonScriptComplete({ type: 'timeout', target: script });\n \t\t\t\t}, 120000);\n \t\t\t\tscript.onerror = script.onload = onScriptComplete;\n \t\t\t\tdocument.head.appendChild(script);\n \t\t\t}\n \t\t}\n \t\treturn Promise.all(promises);\n \t};\n\n \t// expose the modules object (__webpack_modules__)\n \t__webpack_require__.m = modules;\n\n \t// expose the module cache\n \t__webpack_require__.c = installedModules;\n\n \t// define getter function for harmony exports\n \t__webpack_require__.d = function(exports, name, getter) {\n \t\tif(!__webpack_require__.o(exports, name)) {\n \t\t\tObject.defineProperty(exports, name, { enumerable: true, get: getter });\n \t\t}\n \t};\n\n \t// define __esModule on exports\n \t__webpack_require__.r = function(exports) {\n \t\tif(typeof Symbol !== 'undefined' && Symbol.toStringTag) {\n \t\t\tObject.defineProperty(exports, Symbol.toStringTag, { value: 'Module' });\n \t\t}\n \t\tObject.defineProperty(exports, '__esModule', { value: true });\n \t};\n\n \t// create a fake namespace object\n \t// mode & 1: value is a module id, require it\n \t// mode & 2: merge all properties of value into the ns\n \t// mode & 4: return value when already ns object\n \t// mode & 8|1: behave like require\n \t__webpack_require__.t = function(value, mode) {\n \t\tif(mode & 1) value = __webpack_require__(value);\n \t\tif(mode & 8) return value;\n \t\tif((mode & 4) && typeof value === 'object' && value && value.__esModule) return value;\n \t\tvar ns = Object.create(null);\n \t\t__webpack_require__.r(ns);\n \t\tObject.defineProperty(ns, 'default', { enumerable: true, value: value });\n \t\tif(mode & 2 && typeof value != 'string') for(var key in value) __webpack_require__.d(ns, key, function(key) { return value[key]; }.bind(null, key));\n \t\treturn ns;\n \t};\n\n \t// getDefaultExport function for compatibility with non-harmony modules\n \t__webpack_require__.n = function(module) {\n \t\tvar getter = module && module.__esModule ?\n \t\t\tfunction getDefault() { return module['default']; } :\n \t\t\tfunction getModuleExports() { return module; };\n \t\t__webpack_require__.d(getter, 'a', getter);\n \t\treturn getter;\n \t};\n\n \t// Object.prototype.hasOwnProperty.call\n \t__webpack_require__.o = function(object, property) { return Object.prototype.hasOwnProperty.call(object, property); };\n\n \t// __webpack_public_path__\n \t__webpack_require__.p = \"/\";\n\n \t// on error function for async loading\n \t__webpack_require__.oe = function(err) { console.error(err); throw err; };\n\n \tvar jsonpArray = window[\"webpackJsonp\"] = window[\"webpackJsonp\"] || [];\n \tvar oldJsonpFunction = jsonpArray.push.bind(jsonpArray);\n \tjsonpArray.push = webpackJsonpCallback;\n \tjsonpArray = jsonpArray.slice();\n \tfor(var i = 0; i < jsonpArray.length; i++) webpackJsonpCallback(jsonpArray[i]);\n \tvar parentJsonpFunction = oldJsonpFunction;\n\n\n \t// add entry module to deferred list\n \tdeferredModules.push([0,\"chunk-vendors\"]);\n \t// run deferred modules when ready\n \treturn checkDeferredModules();\n","import router from \"@/router\";\r\nimport { Module } from \"vuex\";\r\nimport { AuthenticationState, RootState, User } from \"@/types\";\r\nimport i18n from \"@/plugins/i18n\";\r\nimport { AuthenticationService } from \"@/services\";\r\n\r\nconst keepMeSignedIn = JSON.parse(localStorage.getItem(\r\n \"keepMeSignedIn\"\r\n) as string);\r\nlet userAuthItem;\r\nif (keepMeSignedIn) {\r\n userAuthItem = localStorage.getItem(\"user\");\r\n} else {\r\n userAuthItem = localStorage.getItem(\"user\");\r\n}\r\nconst userAuth = userAuthItem ? JSON.parse(userAuthItem) : undefined;\r\nconst user = {\r\n userName: \"\",\r\n firstName: \"\",\r\n lastName: \"\",\r\n id: -1,\r\n icsId: \"\",\r\n email: \"\",\r\n roles: [],\r\n active: false,\r\n activatedAt: new Date(),\r\n createdAt: new Date(),\r\n lastLogin: new Date()\r\n};\r\nconst initialState: AuthenticationState = userAuth\r\n ? { status: { loggedIn: true, requestingRefresh: false }, userAuth, user }\r\n : { status: { loggedIn: false, requestingRefresh: false }, userAuth, user };\r\n\r\nexport const authentication: Module = {\r\n namespaced: true,\r\n state: initialState,\r\n actions: {\r\n async changePassword(\r\n { dispatch },\r\n data: {\r\n oldPassword: string;\r\n newPassword: string;\r\n newPasswordRepeat: string;\r\n }\r\n ): Promise {\r\n try {\r\n await AuthenticationService.changePassword(data);\r\n dispatch(\r\n \"alert/success\",\r\n i18n.t(\"NOTIFICATION.PASSWORD_CHANGE_SUCCESS\"),\r\n { root: true }\r\n );\r\n return true;\r\n } catch (err) {\r\n dispatch(\"alert/error\", i18n.t(\"NOTIFICATION.PASSWORD_CHANGE_FAIL\"), {\r\n root: true\r\n });\r\n return false;\r\n }\r\n },\r\n async confirmAccount(\r\n { dispatch },\r\n data: {\r\n email: string;\r\n newPassword: string;\r\n confirmPassword: string;\r\n token: string;\r\n }\r\n ): Promise {\r\n try {\r\n await AuthenticationService.confirmAccount(data);\r\n dispatch(\r\n \"alert/success\",\r\n i18n.t(\"NOTIFICATION.PASSWORD_RESET_SUCCESS\"),\r\n { root: true }\r\n );\r\n router.push(\"/\");\r\n } catch (err) {\r\n dispatch(\"alert/error\", i18n.t(\"NOTIFICATION.PASSWORD_RESET_FAIL\"), {\r\n root: true\r\n });\r\n }\r\n },\r\n async resetPassword(\r\n { dispatch },\r\n data: {\r\n email: string;\r\n newPassword: string;\r\n confirmPassword: string;\r\n token: string;\r\n }\r\n ): Promise {\r\n try {\r\n await AuthenticationService.resetPassword(data);\r\n dispatch(\r\n \"alert/success\",\r\n i18n.t(\"NOTIFICATION.PASSWORD_RESET_SUCCESS\"),\r\n { root: true }\r\n );\r\n router.push(\"/\");\r\n } catch (err) {\r\n dispatch(\"alert/error\", i18n.t(\"NOTIFICATION.PASSWORD_RESET_FAIL\"), {\r\n root: true\r\n });\r\n }\r\n },\r\n async requestNewPassword({ dispatch }, email: string): Promise {\r\n try {\r\n await AuthenticationService.requestNewPassword(email);\r\n return true;\r\n } catch (err) {\r\n dispatch(\"alert/error\", i18n.t(\"NOTIFICATION.PASSWORD_REQUEST_FAIL\"), {\r\n root: true\r\n });\r\n return false;\r\n }\r\n },\r\n async login(\r\n { dispatch, commit },\r\n data: { username: string; password: string; keepMeSignedIn: boolean }\r\n ) {\r\n try {\r\n const userAuth = await AuthenticationService.login(data);\r\n dispatch(\"alert/success\", i18n.t(\"NOTIFICATION.LOGIN_SUCCESS\"), {\r\n root: true\r\n });\r\n dispatch(\"getAuthenticatedUser\");\r\n commit(\"loginSuccess\", userAuth);\r\n router.push(\"/\");\r\n } catch (error) {\r\n commit(\"loginFailure\", error);\r\n dispatch(\"alert/error\", i18n.t(\"NOTIFICATION.LOGIN_FAIL\"), {\r\n root: true\r\n });\r\n }\r\n },\r\n async refreshToken({ dispatch, commit, state }) {\r\n if (!state.status.requestingRefresh) {\r\n try {\r\n commit(\"refreshRequest\", AuthenticationService.refreshAccessToken());\r\n await state.refreshPromise;\r\n commit(\"loginSuccess\", userAuth);\r\n } catch (error) {\r\n commit(\"loginFailure\", error);\r\n }\r\n } else if (state.refreshPromise) {\r\n return state.refreshPromise;\r\n }\r\n },\r\n logout({ dispatch, commit }) {\r\n AuthenticationService.logout();\r\n commit(\"logout\");\r\n },\r\n async register(\r\n { commit },\r\n payload: { username: string; email: string; password: string }\r\n ) {\r\n const user: User = await AuthenticationService.register(payload);\r\n commit(\"setUser\", user);\r\n },\r\n async getAuthenticatedUser({ commit }) {\r\n try {\r\n const user: User = await AuthenticationService.getAuthenticatedUser();\r\n commit(\"setUser\", user);\r\n } catch (err) {\r\n return;\r\n }\r\n }\r\n },\r\n mutations: {\r\n refreshRequest(state, refreshPromise) {\r\n state.status = { ...state.status, requestingRefresh: true };\r\n state.refreshPromise = refreshPromise;\r\n },\r\n loginSuccess(state, userAuth) {\r\n state.status = { requestingRefresh: false, loggedIn: true };\r\n state.userAuth = userAuth;\r\n },\r\n loginFailure(state) {\r\n state.status = { ...state.status };\r\n state.userAuth = undefined;\r\n },\r\n logout(state) {\r\n state.status = { loggedIn: false, requestingRefresh: false };\r\n state.userAuth = undefined;\r\n },\r\n setUser(state, user: User) {\r\n state.user = user;\r\n }\r\n },\r\n getters: {\r\n user(state) {\r\n return state[\"user\"];\r\n },\r\n keepMeSignedIn() {\r\n return keepMeSignedIn;\r\n }\r\n }\r\n};\r\n","import { UserService } from \"@/services/\";\r\nimport { Module, ActionTree, MutationTree, GetterTree } from \"vuex\";\r\nimport { User, UserState, RootState } from \"@/types\";\r\nimport { resolve } from \"@/mixins\";\r\nimport i18n from \"@/plugins/i18n\";\r\n\r\nconst state: UserState = {\r\n users: [],\r\n loading: false\r\n};\r\nconst actions: ActionTree = {\r\n async getAllUsers({ dispatch, commit, state }): Promise {\r\n if (!state.loading) {\r\n commit(\"setLoading\");\r\n try {\r\n const users: User[] = await UserService.getAllUsers();\r\n commit(\"setUsers\", users);\r\n } catch (err) {\r\n dispatch(\"alert/error\", i18n.t(\"NOTIFICATION.REQUEST_FAILED\"), {\r\n root: true\r\n });\r\n }\r\n }\r\n },\r\n async removeUser({ dispatch }, userId: number): Promise {\r\n try {\r\n await UserService.removeUser(userId);\r\n dispatch(\"alert/success\", i18n.t(\"NOTIFICATION.USER_DELETE_SUCCESS\"), {\r\n root: true\r\n });\r\n dispatch(\"getAllUsers\");\r\n } catch (err) {\r\n dispatch(\"alert/error\", i18n.t(\"NOTIFICATION.REQUEST_FAILED\"), {\r\n root: true\r\n });\r\n }\r\n },\r\n async addUser({ dispatch }, user: User): Promise {\r\n try {\r\n await UserService.addUser(user);\r\n dispatch(\"alert/success\", i18n.t(\"NOTIFICATION.USER_ADD_SUCCESS\"), {\r\n root: true\r\n });\r\n dispatch(\"getAllUsers\");\r\n } catch (err) {\r\n dispatch(\"alert/error\", i18n.t(\"NOTIFICATION.REQUEST_FAILED\"), {\r\n root: true\r\n });\r\n }\r\n },\r\n async updateUser({ dispatch }, user: User): Promise {\r\n try {\r\n await UserService.updateUser(user);\r\n dispatch(\"alert/success\", i18n.t(\"NOTIFICATION.USER_UPDATE_SUCCESS\"), {\r\n root: true\r\n });\r\n dispatch(\"getAllUsers\");\r\n } catch (err) {\r\n dispatch(\"alert/error\", i18n.t(\"NOTIFICATION.REQUEST_FAILED\"), {\r\n root: true\r\n });\r\n }\r\n }\r\n};\r\nconst mutations: MutationTree = {\r\n setLoading(state) {\r\n state.loading = true;\r\n },\r\n setUsers(state, users: User[]) {\r\n state.loading = false;\r\n state.users = users;\r\n }\r\n};\r\nconst getters: GetterTree = {\r\n users(state) {\r\n return state[\"users\"];\r\n },\r\n usersFiltered(state) {\r\n return (filters: any) => {\r\n let filtered: User[] = state.users;\r\n if (Object.keys(filters).length > 0) {\r\n filtered = filtered.filter(user => {\r\n for (const column of Object.keys(filters)) {\r\n const filterValue = filters[column];\r\n if (filterValue !== \"\" && column === \"id\") {\r\n const value = resolve(column, user);\r\n if (value.toString().indexOf(filterValue.toLowerCase()) <= -1) {\r\n return false;\r\n }\r\n } else if (filterValue !== \"\") {\r\n let value = resolve(column, user) || \"\";\r\n value = value.toLowerCase();\r\n if (value.indexOf(filterValue.toLowerCase()) <= -1) {\r\n return false;\r\n }\r\n }\r\n }\r\n return true;\r\n });\r\n }\r\n return filtered;\r\n };\r\n },\r\n isLoading(state) {\r\n return state[\"loading\"];\r\n }\r\n};\r\nexport const user: Module = {\r\n namespaced: true,\r\n state,\r\n getters,\r\n actions,\r\n mutations\r\n};\r\n","import Vue from \"vue\";\r\nimport { Module } from \"vuex\";\r\nimport { RootState, AlertState } from \"@/types\";\r\nexport const alert: Module = {\r\n namespaced: true,\r\n state: {\r\n type: undefined,\r\n message: undefined\r\n },\r\n actions: {\r\n success({ commit }, message) {\r\n commit(\"success\", message);\r\n },\r\n error({ commit }, message) {\r\n commit(\"error\", message);\r\n },\r\n info({ commit }, message) {\r\n commit(\"info\", message);\r\n },\r\n clear({ commit }) {\r\n commit(\"clear\");\r\n }\r\n },\r\n mutations: {\r\n success(state, message) {\r\n Vue.set(state, \"type\", \"success\");\r\n Vue.set(state, \"message\", message);\r\n },\r\n error(state, message) {\r\n Vue.set(state, \"type\", \"error\");\r\n Vue.set(state, \"message\", message);\r\n },\r\n info(state, message) {\r\n state.type = \"info\";\r\n state.message = message;\r\n },\r\n clear(state) {\r\n state.type = undefined;\r\n state.message = undefined;\r\n }\r\n }\r\n};\r\n","import { Occurrenceservice } from \"@/services/\";\r\nimport { Module, ActionTree, MutationTree, GetterTree } from \"vuex\";\r\nimport { Occurrence, OccurrenceState, RootState } from \"@/types\";\r\nimport { resolve } from \"@/mixins\";\r\nimport moment from \"moment\";\r\nimport i18n from \"@/plugins/i18n\";\r\n\r\nconst state: OccurrenceState = {\r\n occurrences: [],\r\n dateFilteredOccurrences: [],\r\n loading: false\r\n};\r\nconst actions: ActionTree = {\r\n async getAllOccurrences({ dispatch, commit, state }) {\r\n if (!state.loading) {\r\n commit(\"setLoading\");\r\n try {\r\n const occurrences: readonly Occurrence[] = Object.freeze(\r\n await Occurrenceservice.getAllOccurrences()\r\n );\r\n commit(\"setOccurrences\", occurrences);\r\n } catch (err) {\r\n dispatch(\"alert/error\", i18n.t(\"NOTIFICATION.REQUEST_FAILED\"), {\r\n root: true\r\n });\r\n }\r\n }\r\n },\r\n async getDateFilteredOccurrences(\r\n { dispatch, commit, state },\r\n dateRange: { from: Date; to: Date }\r\n ) {\r\n if (state.occurrences.length === 0) {\r\n await dispatch(\"getAllOccurrences\");\r\n }\r\n const occurrences = state.occurrences;\r\n const dateFilteredOccurrences = occurrences.filter(occurrence => {\r\n return moment(occurrence.date).isBetween(\r\n moment(dateRange.from),\r\n moment(dateRange.to)\r\n );\r\n });\r\n commit(\"setDateFilteredOccurrences\", dateFilteredOccurrences);\r\n },\r\n async addOccurrence({ dispatch, commit, state }, occurrence: any) {\r\n try {\r\n await Occurrenceservice.addOccurrence(occurrence);\r\n // Add (returned) occurrence or reload occurrences\r\n } catch (err) {\r\n dispatch(\"alert/error\", i18n.t(\"NOTIFICATION.REQUEST_FAILED\"), {\r\n root: true\r\n });\r\n }\r\n }\r\n};\r\nconst mutations: MutationTree = {\r\n setOccurrences(pstate, occurrences: Occurrence[]) {\r\n pstate.occurrences = Object.freeze(occurrences);\r\n pstate.loading = false;\r\n },\r\n setDateFilteredOccurrences(pstate, occurrences: Occurrence[]) {\r\n pstate.dateFilteredOccurrences = Object.freeze(occurrences);\r\n },\r\n setLoading(pstate) {\r\n pstate.loading = true;\r\n }\r\n};\r\nconst getters: GetterTree = {\r\n occurrences(pstate) {\r\n return pstate[\"occurrences\"];\r\n },\r\n occurrencesFiltered(pstate) {\r\n return (filters: any) => {\r\n let filtered: readonly Occurrence[] = pstate.dateFilteredOccurrences;\r\n if (Object.keys(filters).length > 0) {\r\n filtered = filtered.filter(occurrence => {\r\n for (const column of Object.keys(filters)) {\r\n const filterValue = filters[column];\r\n if (filterValue !== \"\") {\r\n if (column === \"realEstateId\") {\r\n if (filterValue.length > 0) {\r\n const value = resolve(column, occurrence);\r\n if (filterValue.indexOf(value) <= -1) {\r\n return false;\r\n }\r\n }\r\n } else if (column === \"date\") {\r\n const value = moment(resolve(column, occurrence)).format(\r\n \"DD.MM.YYYY\"\r\n );\r\n if (value.indexOf(filterValue.toLowerCase()) <= -1) {\r\n return false;\r\n }\r\n } else if (\r\n column === \"occurrenceType.name\" ||\r\n column === \"occurrenceStatus.name\"\r\n ) {\r\n const value = resolve(column, occurrence).toLowerCase();\r\n if (value !== filterValue.toLowerCase()) {\r\n return false;\r\n }\r\n } else {\r\n const value = resolve(column, occurrence).toLowerCase();\r\n if (value.indexOf(filterValue.toLowerCase()) <= -1) {\r\n return false;\r\n }\r\n }\r\n }\r\n }\r\n return true;\r\n });\r\n }\r\n return filtered;\r\n };\r\n },\r\n isLoading(pstate) {\r\n return pstate[\"loading\"];\r\n }\r\n};\r\nexport const occurrence: Module = {\r\n namespaced: true,\r\n state,\r\n getters,\r\n actions,\r\n mutations\r\n};\r\n","import { Module, ActionTree, MutationTree, GetterTree } from \"vuex\";\r\nimport { RootState, RealEstate, RealEstateState } from \"@/types\";\r\nimport realEstateService from \"@/services/realEstateService\";\r\nimport i18n from \"@/plugins/i18n\";\r\n\r\nconst state: RealEstateState = {\r\n realEstates: [],\r\n loading: false\r\n};\r\nconst actions: ActionTree = {\r\n async getAllRealEstates({ dispatch, commit, state }) {\r\n if (!state.loading) {\r\n commit(\"setLoading\");\r\n try {\r\n const realEstates: RealEstate[] = await realEstateService.getAllRealEstates();\r\n commit(\"setRealEstates\", realEstates);\r\n } catch (err) {\r\n dispatch(\"alert/error\", i18n.t(\"NOTIFICATION.REQUEST_FAILED\"), {\r\n root: true\r\n });\r\n }\r\n }\r\n }\r\n};\r\nconst mutations: MutationTree = {\r\n setRealEstates(pstate, realEstates: RealEstate[]) {\r\n pstate.realEstates = realEstates;\r\n pstate.loading = false;\r\n },\r\n setLoading(pstate) {\r\n pstate.loading = true;\r\n }\r\n};\r\nconst getters: GetterTree = {\r\n realEstates(pstate) {\r\n return pstate[\"realEstates\"];\r\n },\r\n isLoading(pstate) {\r\n return pstate[\"loading\"];\r\n }\r\n};\r\nexport const realEstate: Module = {\r\n namespaced: true,\r\n state,\r\n getters,\r\n actions,\r\n mutations\r\n};\r\n","import { DocumentService } from \"@/services\";\r\nimport { Module, ActionTree, MutationTree, GetterTree } from \"vuex\";\r\nimport { Document, DocumentState, RootState } from \"@/types\";\r\n\r\nimport Vue from \"vue\";\r\nimport i18n from \"@/plugins/i18n\";\r\n\r\nconst state: DocumentState = {\r\n documents: {},\r\n loading: false\r\n};\r\nconst actions: ActionTree = {\r\n async getAllDocuments(\r\n { dispatch, commit, state },\r\n occurrenceId: string\r\n ): Promise {\r\n if (!state.loading) {\r\n commit(\"setLoading\");\r\n try {\r\n const documents: Document[] = await DocumentService.getAllDocuments(\r\n occurrenceId\r\n );\r\n commit(\"setDocuments\", { documents, occurrenceId });\r\n } catch (err) {\r\n dispatch(\"alert/error\", i18n.t(\"NOTIFICATION.REQUEST_FAILED\"), {\r\n root: true\r\n });\r\n }\r\n }\r\n }\r\n};\r\nconst mutations: MutationTree = {\r\n setDocuments(state, { documents, occurrenceId }) {\r\n Vue.set(state.documents, occurrenceId, documents);\r\n state.loading = false;\r\n },\r\n setLoading(state) {\r\n state.loading = true;\r\n }\r\n};\r\nconst getters: GetterTree = {\r\n documents(state) {\r\n return (occurrenceId: string) => {\r\n return state[\"documents\"][occurrenceId] || [];\r\n };\r\n },\r\n isLoading(state) {\r\n return state[\"loading\"];\r\n }\r\n};\r\nexport const document: Module = {\r\n namespaced: true,\r\n state,\r\n getters,\r\n actions,\r\n mutations\r\n};\r\n","import { Module, ActionTree, MutationTree, GetterTree } from \"vuex\";\r\nimport { RootState, Task, TaskState } from \"@/types\";\r\nimport { TaskService } from \"@/services\";\r\nimport moment from \"moment\";\r\nimport { resolve } from \"@/mixins\";\r\nimport i18n from \"@/plugins/i18n\";\r\n\r\nconst state: TaskState = {\r\n tasks: [],\r\n dateFilteredTasks: [],\r\n loading: false\r\n};\r\nconst actions: ActionTree = {\r\n async getAllTasks({ dispatch, commit, state }) {\r\n if (!state.loading) {\r\n commit(\"setLoading\");\r\n try {\r\n const tasks: readonly Task[] = await TaskService.getAllTasks();\r\n commit(\"setTasks\", tasks);\r\n } catch (err) {\r\n dispatch(\"alert/error\", i18n.t(\"NOTIFICATION.REQUEST_FAILED\"), {\r\n root: true\r\n });\r\n }\r\n }\r\n },\r\n async getDateFilteredTasks(\r\n { dispatch, commit, state },\r\n dateRange: { from: Date; to: Date }\r\n ) {\r\n if (state.tasks.length === 0) {\r\n await dispatch(\"getAllTasks\");\r\n }\r\n const tasks = state.tasks;\r\n const dateFilteredTasks = tasks.filter(task => {\r\n return moment(task.creationDate).isBetween(\r\n moment(dateRange.from),\r\n moment(dateRange.to)\r\n );\r\n });\r\n commit(\"setDateFilteredTasks\", dateFilteredTasks);\r\n }\r\n};\r\nconst mutations: MutationTree = {\r\n setTasks(pstate, tasks: Task[]) {\r\n pstate.tasks = tasks;\r\n pstate.loading = false;\r\n },\r\n setDateFilteredTasks(pstate, tasks: Task[]) {\r\n pstate.dateFilteredTasks = tasks;\r\n },\r\n setLoading(pstate) {\r\n pstate.loading = true;\r\n }\r\n};\r\nconst getters: GetterTree = {\r\n tasks(pstate) {\r\n return pstate[\"tasks\"];\r\n },\r\n tasksFiltered(pstate) {\r\n return (filters: any) => {\r\n let filtered: readonly Task[] = pstate.dateFilteredTasks;\r\n if (Object.keys(filters).length > 0) {\r\n filtered = filtered.filter(task => {\r\n for (const column of Object.keys(filters)) {\r\n const filterValue = filters[column];\r\n if (filterValue !== \"\") {\r\n if (column === \"realEstate.id\") {\r\n if (filterValue.length > 0) {\r\n const value = resolve(column, task);\r\n if (filterValue.indexOf(value) <= -1) {\r\n return false;\r\n }\r\n }\r\n } else if (column === \"creationDate\") {\r\n const value = moment(resolve(column, task)).format(\r\n \"DD.MM.YYYY\"\r\n );\r\n if (value.indexOf(filterValue.toLowerCase()) <= -1) {\r\n return false;\r\n }\r\n } else if (\r\n column === \"taskType.name\" ||\r\n column === \"taskStatus.name\"\r\n ) {\r\n const value = resolve(column, task).toLowerCase();\r\n if (value !== filterValue.toLowerCase()) {\r\n return false;\r\n }\r\n } else {\r\n const value = resolve(column, task).toLowerCase();\r\n if (value.indexOf(filterValue.toLowerCase()) <= -1) {\r\n return false;\r\n }\r\n }\r\n }\r\n }\r\n return true;\r\n });\r\n }\r\n return filtered;\r\n };\r\n },\r\n isLoading(pstate) {\r\n return pstate[\"loading\"];\r\n }\r\n};\r\nexport const task: Module = {\r\n namespaced: true,\r\n state,\r\n getters,\r\n actions,\r\n mutations\r\n};\r\n","import { RoleService } from \"@/services/\";\r\nimport { Module, ActionTree, MutationTree, GetterTree } from \"vuex\";\r\nimport { RoleState, RootState } from \"@/types\";\r\nimport { resolve } from \"@/mixins\";\r\nimport i18n from \"@/plugins/i18n\";\r\n\r\nconst state: RoleState = {\r\n roles: [],\r\n loading: false\r\n};\r\nconst actions: ActionTree = {\r\n async getRoles({ dispatch, commit, state }): Promise {\r\n if (!state.loading) {\r\n commit(\"setLoading\");\r\n try {\r\n const roles: string[] = await RoleService.getRoles();\r\n commit(\"setRoles\", roles);\r\n } catch (err) {\r\n dispatch(\"alert/error\", i18n.t(\"NOTIFICATION.REQUEST_FAILED\"), {\r\n root: true\r\n });\r\n }\r\n }\r\n }\r\n};\r\nconst mutations: MutationTree = {\r\n setLoading(state) {\r\n state.loading = true;\r\n },\r\n setRoles(state, roles: string[]) {\r\n state.loading = false;\r\n state.roles = roles;\r\n }\r\n};\r\nconst getters: GetterTree = {\r\n roles(state) {\r\n return state[\"roles\"];\r\n },\r\n isLoading(state) {\r\n return state[\"loading\"];\r\n }\r\n};\r\nexport const role: Module = {\r\n namespaced: true,\r\n state,\r\n getters,\r\n actions,\r\n mutations\r\n};\r\n","import Vue from \"vue\";\r\nimport Vuex, { StoreOptions } from \"vuex\";\r\nimport i18n from \"../plugins/i18n\";\r\nimport { RootState } from \"@/types\";\r\nimport { user } from \"./modules/user.store\";\r\nimport { authentication } from \"./modules/authentication.store\";\r\nimport { alert } from \"./modules/alert.store\";\r\nimport { occurrence } from \"./modules/occurrence.store\";\r\nimport { realEstate } from \"./modules/realEstate.store\";\r\nimport { document } from \"./modules/document.store\";\r\nimport { task } from \"./modules/task.store\";\r\nimport { role } from \"./modules/role.store\";\r\n\r\nVue.use(Vuex);\r\n\r\nconst store: StoreOptions = {\r\n modules: {\r\n user,\r\n alert,\r\n authentication,\r\n occurrence,\r\n realEstate,\r\n document,\r\n task,\r\n role\r\n },\r\n state: {\r\n locales: [\"en\", \"de\"],\r\n locale: i18n.locale\r\n },\r\n mutations: {\r\n SET_LANG(state, locale) {\r\n if (state.locales.indexOf(locale) !== -1) {\r\n state.locale = locale;\r\n i18n.locale = locale;\r\n window.localStorage.setItem(\"lang\", locale);\r\n }\r\n }\r\n },\r\n actions: {\r\n setLang({ commit }, payload) {\r\n commit(\"SET_LANG\", payload);\r\n }\r\n }\r\n};\r\n\r\nexport default new Vuex.Store(store);\r\n","import { Api } from \"@/services/api\";\r\nimport { User } from \"@/types\";\r\nimport jsSHA from \"jssha\";\r\n\r\nconst hashPassword = (password: string): string => {\r\n const hashObj = new jsSHA(\"SHA-512\", \"TEXT\", { numRounds: 1 });\r\n hashObj.update(password);\r\n return hashObj.getHash(\"HEX\");\r\n};\r\n\r\nexport default {\r\n addTokenToStorage(jwt: any) {\r\n const keepMeSignedIn = JSON.parse(localStorage.getItem(\r\n \"keepMeSignedIn\"\r\n ) as string);\r\n if (keepMeSignedIn) {\r\n localStorage.setItem(\"user\", JSON.stringify(jwt));\r\n } else {\r\n localStorage.setItem(\"user\", JSON.stringify(jwt));\r\n }\r\n },\r\n getTokenFromStorage() {\r\n const keepMeSignedIn = JSON.parse(localStorage.getItem(\r\n \"keepMeSignedIn\"\r\n ) as string);\r\n let token;\r\n if (keepMeSignedIn) {\r\n token = localStorage.getItem(\"user\");\r\n } else {\r\n token = localStorage.getItem(\"user\");\r\n }\r\n return token;\r\n },\r\n removeTokenFromStorage() {\r\n const keepMeSignedIn = JSON.parse(localStorage.getItem(\r\n \"keepMeSignedIn\"\r\n ) as string);\r\n if (keepMeSignedIn) {\r\n localStorage.removeItem(\"user\");\r\n } else {\r\n localStorage.removeItem(\"user\");\r\n }\r\n },\r\n async register(data: {\r\n username: string;\r\n email: string;\r\n password: string;\r\n }): Promise {\r\n let response;\r\n try {\r\n response = await Api.request().post(\"/register\", data);\r\n } catch (err) {\r\n throw err;\r\n }\r\n return response.data;\r\n },\r\n async requestNewPassword(email: string): Promise {\r\n try {\r\n await Api.request().put(\"/api/accounts/me/password/request\", {\r\n Email: email\r\n });\r\n } catch (err) {\r\n throw err;\r\n }\r\n },\r\n async resetPassword(data: {\r\n email: string;\r\n newPassword: string;\r\n confirmPassword: string;\r\n token: string;\r\n }): Promise {\r\n data.newPassword = hashPassword(data.newPassword);\r\n data.confirmPassword = hashPassword(data.confirmPassword);\r\n try {\r\n await Api.request().put(\"/api/accounts/me/password/reset\", data);\r\n } catch (err) {\r\n throw err;\r\n }\r\n },\r\n async confirmAccount(data: {\r\n email: string;\r\n newPassword: string;\r\n confirmPassword: string;\r\n token: string;\r\n }): Promise {\r\n data.newPassword = hashPassword(data.newPassword);\r\n data.confirmPassword = hashPassword(data.confirmPassword);\r\n try {\r\n await Api.request().put(\"/api/accounts/me/password/confirm\", data);\r\n } catch (err) {\r\n throw err;\r\n }\r\n },\r\n async changePassword(data: {\r\n oldPassword: string;\r\n newPassword: string;\r\n newPasswordRepeat: string;\r\n }): Promise {\r\n data.oldPassword = hashPassword(data.oldPassword);\r\n data.newPassword = hashPassword(data.newPassword);\r\n data.newPasswordRepeat = hashPassword(data.newPasswordRepeat);\r\n try {\r\n await Api.request().put(\"/api/accounts/me/password\", data);\r\n } catch (err) {\r\n throw err;\r\n }\r\n },\r\n async login(data: {\r\n username: string;\r\n password: string;\r\n keepMeSignedIn: boolean;\r\n }): Promise {\r\n data.password = hashPassword(data.password);\r\n const uriEncodedData =\r\n \"grant_type=password&username=\" +\r\n encodeURIComponent(data.username) +\r\n \"&password=\" +\r\n encodeURIComponent(data.password);\r\n let response;\r\n let jwt: any;\r\n try {\r\n response = await Api.request().post(\"/api/auth/login\", uriEncodedData, {\r\n headers: {\r\n Accept: \"application/json\",\r\n \"Content-Type\": \"application/x-www-form-urlencoded\"\r\n }\r\n });\r\n jwt = Api.handleResponse(response);\r\n } catch (err) {\r\n throw err;\r\n }\r\n localStorage.setItem(\"keepMeSignedIn\", JSON.stringify(data.keepMeSignedIn));\r\n this.addTokenToStorage(jwt);\r\n return jwt;\r\n },\r\n async refreshAccessToken(): Promise {\r\n const userItem = this.getTokenFromStorage();\r\n if (!userItem) {\r\n return { success: false, token: \"\" };\r\n }\r\n const user = JSON.parse(userItem);\r\n if (user && user.refresh_token) {\r\n const uriEncodedData =\r\n \"grant_type=refresh_token&refresh_token=\" + user.refresh_token;\r\n let response;\r\n let jwt: any;\r\n try {\r\n response = await Api.request().post(\"/api/auth/login\", uriEncodedData, {\r\n headers: {\r\n Accept: \"application/json\",\r\n \"Content-Type\": \"application/x-www-form-urlencoded\"\r\n }\r\n });\r\n jwt = Api.handleResponse(response);\r\n } catch (err) {\r\n throw err;\r\n }\r\n this.addTokenToStorage(jwt);\r\n return jwt;\r\n }\r\n return { success: false, token: \"\" };\r\n },\r\n async getAuthenticatedUser(): Promise {\r\n let response;\r\n let data;\r\n try {\r\n response = await Api.request().get(\"/api/accounts/me\");\r\n data = Api.handleResponse(response);\r\n } catch (err) {\r\n throw err;\r\n }\r\n // const user: User = {\r\n // id: data.ID,\r\n // icsId: data.ICS_ID || \"\",\r\n // email: data.EMail,\r\n // firstName: data.FirstName,\r\n // lastName: data.LastName,\r\n // roles: data.Roles,\r\n // userName: data.UserName,\r\n // active: data.Active || false,\r\n // activatedAt: data.ActivatedAt || null,\r\n // createdAt: data.CreatedAt || null,\r\n // lastLogin: data.LastLogin || null\r\n // };\r\n // console.log(\"usredata api:\", data);\r\n return data;\r\n },\r\n logout() {\r\n // remove user from local storage to log user out\r\n this.removeTokenFromStorage();\r\n if (\r\n location.pathname !== \"/signin\" &&\r\n location.pathname !== \"/password/reset\" &&\r\n location.pathname !== \"/registration/confirm\"\r\n ) {\r\n location.reload();\r\n }\r\n }\r\n};\r\n","import { Api } from \"@/services/api\";\r\nimport {\r\n Occurrence,\r\n Building,\r\n OccurrenceType,\r\n ErrorCauseType,\r\n TradeType,\r\n OccurrenceStatus,\r\n Installation,\r\n ResponsiblePerson\r\n} from \"@/types\";\r\nimport i18n from \"@/plugins/i18n\";\r\nimport { saveAs } from \"file-saver\";\r\nimport moment from \"moment\";\r\n\r\nconst getBuilding = ({ id = \"\", name = \"\", name2 = \"\" } = {}): Building => {\r\n return {\r\n id: id,\r\n name: name,\r\n name2: name2,\r\n fullName: name + \" \" + name2\r\n };\r\n};\r\n\r\nconst getOccurrenceType = ({ id = \"\", name = \"\" } = {}): OccurrenceType => {\r\n return {\r\n id: id,\r\n name: name\r\n };\r\n};\r\n\r\nconst getTradeType = ({ id = \"\", name = \"\" } = {}): TradeType => {\r\n return {\r\n id: id,\r\n name: name\r\n };\r\n};\r\n\r\nconst getErrorCauseType = ({ id = \"\", name = \"\" } = {}): ErrorCauseType => {\r\n return {\r\n id: id,\r\n name: name\r\n };\r\n};\r\nconst getOccurrenceStatus = ({ id = \"\", name = \"\" } = {}): OccurrenceStatus => {\r\n return {\r\n id: id,\r\n name: name\r\n };\r\n};\r\n\r\nconst getInstallation = ({\r\n id = \"\",\r\n ebene = \"\",\r\n location = \"\",\r\n description = \"\",\r\n name = \"\"\r\n} = {}): Installation => {\r\n return {\r\n id: id,\r\n name: name,\r\n ebene: ebene,\r\n location: location,\r\n description: description\r\n };\r\n};\r\n\r\nconst getResponsiblePerson = ({\r\n ID = \"\",\r\n LastName = \"\",\r\n FirstName = \"\",\r\n MobilePhoneNumber = \"\",\r\n Email = \"\",\r\n IsContactPerson = false\r\n} = {}): ResponsiblePerson => {\r\n return {\r\n id: ID,\r\n lastName: LastName,\r\n firstName: FirstName,\r\n mobilePhoneNumber: MobilePhoneNumber,\r\n email: Email,\r\n isContactPerson: IsContactPerson\r\n };\r\n};\r\n\r\nexport default {\r\n async getOccurrenceExcel(\r\n locale: string,\r\n params: {\r\n date_from?: string;\r\n date_to?: string;\r\n status?: string;\r\n realEstateId?: string;\r\n number?: string;\r\n realEstate?: string;\r\n buildingName?: string;\r\n occurrenceType?: string;\r\n date?: string;\r\n tradeType?: string;\r\n errorCause?: string;\r\n fetch_limit?: number;\r\n }\r\n ): Promise {\r\n let response;\r\n let data;\r\n try {\r\n params.fetch_limit = 0;\r\n response = await Api.request().get(\r\n \"/api/occurrences/GetReport/\" + locale,\r\n {\r\n responseType: \"blob\",\r\n params\r\n }\r\n );\r\n data = Api.handleResponse(response);\r\n const occurrencesTranslation =\r\n (i18n.t(\"OCCURRENCE.TITLE\") as string) || \"Occurrences\";\r\n saveAs(\r\n data,\r\n occurrencesTranslation + \"_\" + moment().format(\"YYYY_MM_DD\") + \".xlsx\"\r\n );\r\n } catch (err) {\r\n throw err;\r\n }\r\n },\r\n async getAllOccurrences(): Promise {\r\n let response;\r\n let data;\r\n try {\r\n response = await Api.request().get(\"/api/occurrences/GetAll\");\r\n data = Api.handleResponse(response);\r\n } catch (err) {\r\n throw err;\r\n }\r\n const occurrences: Occurrence[] = data.map((elem: any) => {\r\n // const building = getBuilding(elem.building);\r\n // const occurrenceType = getOccurrenceType(elem.occurrenceType);\r\n // const tradeType = getTradeType(elem.tradeType);\r\n // const errorCauseType = getErrorCauseType(elem.errorCauseType);\r\n // const occurrenceStatus = getOccurrenceStatus(elem.occurrenceStatus);\r\n // const installation = getInstallation(elem.installation);\r\n // const responsiblePerson = getResponsiblePerson(elem.responsiblePerson);\r\n // const occurrence: Occurrence = {\r\n // id: elem.id,\r\n // number: elem.number,\r\n // realEstate: elem.realEstate,\r\n // realEstateId: elem.realEstateId,\r\n // building,\r\n // date: new Date(elem.date),\r\n // occurrenceType,\r\n // tradeType,\r\n // errorCauseType,\r\n // occurrenceStatus,\r\n // installation,\r\n // description: elem.description || \"\",\r\n // responsiblePerson,\r\n // errorCauseDetails: elem.errorCauseDetails || \"\",\r\n // buildingName: elem.buildingName,\r\n // responsiblePersonName: elem.responsiblePersonName\r\n // };\r\n // console.log(\"elem.date\", elem.date);\r\n // elem.dateNew = moment(elem.date);\r\n return elem;\r\n });\r\n return occurrences;\r\n },\r\n\r\n async addOccurrence(occurrenceData: any): Promise {\r\n try {\r\n const response = await Api.request().post(\r\n \"/api/occurrences/insert\",\r\n occurrenceData\r\n );\r\n Api.handleResponse(response);\r\n } catch (err) {\r\n throw err;\r\n }\r\n }\r\n};\r\n","import { Api } from \"@/services/api\";\r\nimport { Document } from \"@/types\";\r\n\r\nexport default {\r\n async getAllDocuments(occurrenceId: string): Promise {\r\n const splittedId = occurrenceId.replace(\":\", \"/\");\r\n let response;\r\n let data;\r\n try {\r\n response = await Api.request().get(\"/api/documents/GetAll/\" + splittedId);\r\n data = Api.handleResponse(response);\r\n } catch (err) {\r\n throw err;\r\n }\r\n const isHttpOrigin = location.protocol === \"http:\";\r\n const protocol = isHttpOrigin ? \"http\" : \"https\";\r\n const documents: Document[] = data.map((elem: any) => {\r\n const document: Document = {\r\n id: elem.id,\r\n creationDate: elem.creationDate,\r\n modificationDate: elem.modificationDate,\r\n path: `${protocol}://helpdesk.ics-fs.at${elem.path}`,\r\n type: elem.type\r\n };\r\n return document;\r\n });\r\n return documents;\r\n }\r\n};\r\n","import { Api } from \"@/services/api\";\r\nimport {\r\n ResponsiblePerson,\r\n Task,\r\n TaskStatus,\r\n RealEstate,\r\n TaskDocument,\r\n} from \"@/types\";\r\n\r\nconst getResponsiblePerson = ({\r\n ID = \"\",\r\n LastName = \"\",\r\n FirstName = \"\",\r\n MobilePhoneNumber = \"\",\r\n Email = \"\",\r\n IsContactPerson = false,\r\n} = {}): ResponsiblePerson => {\r\n return {\r\n id: ID,\r\n lastName: LastName,\r\n firstName: FirstName,\r\n mobilePhoneNumber: MobilePhoneNumber,\r\n email: Email,\r\n isContactPerson: IsContactPerson,\r\n };\r\n};\r\nconst getRealEstate = ({ ID = \"\", Street = \"\" } = {}): RealEstate => {\r\n return {\r\n id: ID,\r\n aks: \"\",\r\n city: \"\",\r\n creationDate: new Date(),\r\n modificationDate: new Date(),\r\n name: \"\",\r\n fullName: \"\",\r\n postalCode: \"\",\r\n realEstateNumber: \"\",\r\n street: Street,\r\n _postalCode: {\r\n id: \"\",\r\n location: \"\",\r\n postal_code: \"\",\r\n ref_country: \"\",\r\n },\r\n };\r\n};\r\n\r\nconst getDocument = ({\r\n Path = \"\",\r\n Title = \"\",\r\n DocumentTypeId = \"\",\r\n} = {}): TaskDocument => {\r\n if (!DocumentTypeId) {\r\n DocumentTypeId = \"\";\r\n }\r\n const isHttpOrigin = location.protocol === \"http:\";\r\n const protocol = isHttpOrigin ? \"http\" : \"https\";\r\n\r\n return {\r\n path: `${protocol}://helpdesk.ics-fs.at${Path}`,\r\n title: Title,\r\n documentTypeId: DocumentTypeId,\r\n };\r\n};\r\nconst getTaskStatus = ({ ID = \"\", Name = \"\" } = {}): TaskStatus => {\r\n return {\r\n id: ID,\r\n name: Name,\r\n };\r\n};\r\nexport default {\r\n async getAllTasks(): Promise {\r\n let response;\r\n let data;\r\n try {\r\n response = await Api.request().get(\"/api/tasks/GetAll\");\r\n data = Api.handleResponse(response);\r\n } catch (err) {\r\n throw err;\r\n }\r\n const tasks: Task[] = data.map((elem: any, idx: number) => {\r\n // const taskStatus = getTaskStatus(elem.TaskStatus);\r\n // const personCreated = getResponsiblePerson(elem.ResponsiblePerson);\r\n // const realEstate = getRealEstate(elem.RealEstate);\r\n // const document = getDocument(elem.Document);\r\n // const task: Task = {\r\n // id: idx,\r\n // realEstate,\r\n // modificationDate: new Date(elem.ModificationDate),\r\n // creationDate: new Date(elem.CreationDate),\r\n // taskStatus,\r\n // personCreated,\r\n // document\r\n // };\r\n elem.modificationDate = new Date(elem.modificationDate);\r\n elem.creationDate = new Date(elem.creationDate);\r\n return elem;\r\n });\r\n\r\n return tasks;\r\n },\r\n};\r\n","import { Api } from \"@/services/api\";\r\nimport { User } from \"@/types\";\r\n\r\nconst getUserData = (user: User) => {\r\n console.log(\"user\", user);\r\n const data: any = user;\r\n // for (const prop of Object.keys(data)) {\r\n // if (data[prop] === undefined || data[prop] === \"\") {\r\n // delete data[prop];\r\n // }\r\n // }\r\n return data;\r\n};\r\nexport default {\r\n async getAllUsers(): Promise {\r\n let response;\r\n let data;\r\n try {\r\n response = await Api.request().get(\"/api/accounts/get\");\r\n data = Api.handleResponse(response);\r\n } catch (err) {\r\n throw err;\r\n }\r\n\r\n return data;\r\n },\r\n async addUser(user: User): Promise {\r\n // const userData = getUserData(user);\r\n console.log(\"USERDATA add\", user);\r\n try {\r\n const response = await Api.request().post(\"/api/auth/register\", user);\r\n Api.handleResponse(response);\r\n } catch (err) {\r\n throw err;\r\n }\r\n },\r\n async removeUser(id: number): Promise {\r\n try {\r\n const response = await Api.request().delete(`/api/accounts/${id}`);\r\n Api.handleResponse(response);\r\n } catch (err) {\r\n throw err;\r\n }\r\n },\r\n async updateUser(user: User): Promise {\r\n const userData = getUserData(user);\r\n try {\r\n const response = await Api.request().put(\r\n `/api/accounts/${user.id}`,\r\n userData\r\n );\r\n Api.handleResponse(response);\r\n } catch (err) {\r\n throw err;\r\n }\r\n },\r\n};\r\n","import { Api } from \"@/services/api\";\r\nimport { LogMessage } from \"@/types\";\r\nexport default {\r\n async postLogMessage(log: LogMessage): Promise {\r\n let response;\r\n try {\r\n response = await Api.request().post(\"/api/log\", {\r\n Action: log.action,\r\n Message: log.message,\r\n Level: log.level\r\n });\r\n Api.handleResponse(response);\r\n } catch (err) {\r\n throw err;\r\n }\r\n }\r\n};\r\n","import { Api } from \"@/services/api\";\r\n\r\nexport default {\r\n async getRoles(): Promise {\r\n let response;\r\n let data;\r\n try {\r\n response = await Api.request().get(\"/api/roles/get\");\r\n data = Api.handleResponse(response).map((x: string) => { return { 'name': x } });\r\n } catch (err) {\r\n throw err;\r\n }\r\n return data;\r\n }\r\n};\r\n","import { AuthenticationService } from \"./services\";\r\n\r\nexport function authHeader(): string {\r\n // return authorization header with jwt token\r\n const userItem = AuthenticationService.getTokenFromStorage();\r\n if (!userItem) {\r\n return \"\";\r\n }\r\n const user = JSON.parse(userItem);\r\n if (user && user.access_token) {\r\n return \"bearer \" + user.access_token; // TODO: Add tokenExtractor for reusability\r\n } else {\r\n return \"\";\r\n }\r\n}\r\n","import axios, { AxiosResponse } from \"axios\";\r\nimport { authHeader } from \"@/authHeader\";\r\nimport store from \"@/store\";\r\nimport { AuthenticationService } from \".\";\r\nimport { now } from \"moment\";\r\n\r\nconst baseURL = process.env.VUE_APP_BASE_URL;\r\nlet timeOutHandle: number | undefined;\r\n\r\nconst isTokenValid = () => {\r\n const token = JSON.parse(\r\n AuthenticationService.getTokenFromStorage() as string\r\n );\r\n const expires = new Date(token[\"expires\"]);\r\n const now = new Date();\r\n return expires.getTime() > now.getTime();\r\n};\r\n\r\nexport const Api = {\r\n baseURL,\r\n request: () => {\r\n const axiosInstance = axios.create({\r\n baseURL,\r\n headers: {\r\n Accept: \"application/json\",\r\n \"Content-Type\": \"application/json\",\r\n Authorization: authHeader()\r\n }\r\n });\r\n axiosInstance.interceptors.response.use(\r\n response => response,\r\n error => {\r\n const status = error.response ? error.response.status : null;\r\n if (\r\n status === 401 &&\r\n location.pathname !== \"/signin\" &&\r\n location.pathname !== \"/password/reset\" &&\r\n location.pathname !== \"/registration/confirm\" &&\r\n AuthenticationService.getTokenFromStorage()\r\n ) {\r\n return store.dispatch(\"authentication/refreshToken\").then(jwt => {\r\n error.config.headers[\"Authorization\"] = authHeader();\r\n error.config.baseURL = baseURL;\r\n return axios.request(error.config);\r\n });\r\n }\r\n return Promise.reject(error);\r\n }\r\n );\r\n axiosInstance.interceptors.request.use(config => {\r\n if (\r\n !store.getters[\"authentication/keepMeSignedIn\"] &&\r\n location.pathname !== \"/signin\" &&\r\n location.pathname !== \"/password/reset\" &&\r\n location.pathname !== \"/registration/confirm\"\r\n ) {\r\n if (isTokenValid()) {\r\n clearTimeout(timeOutHandle);\r\n timeOutHandle = setTimeout(() => {\r\n store.dispatch(\"authentication/logout\");\r\n }, 20 * 60 * 1000);\r\n } else {\r\n store.dispatch(\"authentication/logout\");\r\n }\r\n }\r\n return config;\r\n });\r\n return axiosInstance;\r\n },\r\n handleResponse: (response: AxiosResponse) => {\r\n return response.data;\r\n }\r\n};\r\n","var map = {\n\t\"./About.vue\": [\n\t\t\"f820\",\n\t\t\"chunk-08ae3b2d\",\n\t\t\"chunk-2d22d746\"\n\t],\n\t\"./ConfirmAccount.vue\": [\n\t\t\"ebde\",\n\t\t\"chunk-4a58cd14\"\n\t],\n\t\"./Debug.vue\": [\n\t\t\"e94b\",\n\t\t\"chunk-08ae3b2d\",\n\t\t\"chunk-6d808eaa\",\n\t\t\"chunk-2d226718\"\n\t],\n\t\"./Home.vue\": [\n\t\t\"bb51\",\n\t\t\"chunk-08ae3b2d\",\n\t\t\"chunk-2d21a3d2\"\n\t],\n\t\"./Occurrences.vue\": [\n\t\t\"65cb\",\n\t\t\"chunk-08ae3b2d\",\n\t\t\"chunk-5e147950\",\n\t\t\"chunk-343876fb\",\n\t\t\"chunk-6d808eaa\",\n\t\t\"chunk-8d001132\"\n\t],\n\t\"./Reports.vue\": [\n\t\t\"c11b\",\n\t\t\"chunk-08ae3b2d\",\n\t\t\"chunk-5e147950\",\n\t\t\"chunk-343876fb\",\n\t\t\"chunk-1c35ef46\"\n\t],\n\t\"./ResetPassword.vue\": [\n\t\t\"0813\",\n\t\t\"chunk-0d12a190\"\n\t],\n\t\"./Signin.vue\": [\n\t\t\"4a33\",\n\t\t\"chunk-09b9fbc7\"\n\t],\n\t\"./Signup.vue\": [\n\t\t\"34c3\",\n\t\t\"chunk-41a03d50\"\n\t],\n\t\"./Users.vue\": [\n\t\t\"ed81\",\n\t\t\"chunk-08ae3b2d\",\n\t\t\"chunk-5e147950\",\n\t\t\"chunk-173db906\"\n\t]\n};\nfunction webpackAsyncContext(req) {\n\tif(!__webpack_require__.o(map, req)) {\n\t\treturn Promise.resolve().then(function() {\n\t\t\tvar e = new Error(\"Cannot find module '\" + req + \"'\");\n\t\t\te.code = 'MODULE_NOT_FOUND';\n\t\t\tthrow e;\n\t\t});\n\t}\n\n\tvar ids = map[req], id = ids[0];\n\treturn Promise.all(ids.slice(1).map(__webpack_require__.e)).then(function() {\n\t\treturn __webpack_require__(id);\n\t});\n}\nwebpackAsyncContext.keys = function webpackAsyncContextKeys() {\n\treturn Object.keys(map);\n};\nwebpackAsyncContext.id = \"1a5d\";\nmodule.exports = webpackAsyncContext;","var map = {\n\t\"./af\": \"2bfb\",\n\t\"./af.js\": \"2bfb\",\n\t\"./ar\": \"8e73\",\n\t\"./ar-dz\": \"a356\",\n\t\"./ar-dz.js\": \"a356\",\n\t\"./ar-kw\": \"423e\",\n\t\"./ar-kw.js\": \"423e\",\n\t\"./ar-ly\": \"1cfd\",\n\t\"./ar-ly.js\": \"1cfd\",\n\t\"./ar-ma\": \"0a84\",\n\t\"./ar-ma.js\": \"0a84\",\n\t\"./ar-sa\": \"8230\",\n\t\"./ar-sa.js\": \"8230\",\n\t\"./ar-tn\": \"6d83\",\n\t\"./ar-tn.js\": \"6d83\",\n\t\"./ar.js\": \"8e73\",\n\t\"./az\": \"485c\",\n\t\"./az.js\": \"485c\",\n\t\"./be\": \"1fc1\",\n\t\"./be.js\": \"1fc1\",\n\t\"./bg\": \"84aa\",\n\t\"./bg.js\": \"84aa\",\n\t\"./bm\": \"a7fa\",\n\t\"./bm.js\": \"a7fa\",\n\t\"./bn\": \"9043\",\n\t\"./bn.js\": \"9043\",\n\t\"./bo\": \"d26a\",\n\t\"./bo.js\": \"d26a\",\n\t\"./br\": \"6887\",\n\t\"./br.js\": \"6887\",\n\t\"./bs\": \"2554\",\n\t\"./bs.js\": \"2554\",\n\t\"./ca\": \"d716\",\n\t\"./ca.js\": \"d716\",\n\t\"./cs\": \"3c0d\",\n\t\"./cs.js\": \"3c0d\",\n\t\"./cv\": \"03ec\",\n\t\"./cv.js\": \"03ec\",\n\t\"./cy\": \"9797\",\n\t\"./cy.js\": \"9797\",\n\t\"./da\": \"0f14\",\n\t\"./da.js\": \"0f14\",\n\t\"./de\": \"b469\",\n\t\"./de-at\": \"b3eb\",\n\t\"./de-at.js\": \"b3eb\",\n\t\"./de-ch\": \"bb71\",\n\t\"./de-ch.js\": \"bb71\",\n\t\"./de.js\": \"b469\",\n\t\"./dv\": \"598a\",\n\t\"./dv.js\": \"598a\",\n\t\"./el\": \"8d47\",\n\t\"./el.js\": \"8d47\",\n\t\"./en-SG\": \"cdab\",\n\t\"./en-SG.js\": \"cdab\",\n\t\"./en-au\": \"0e6b\",\n\t\"./en-au.js\": \"0e6b\",\n\t\"./en-ca\": \"3886\",\n\t\"./en-ca.js\": \"3886\",\n\t\"./en-gb\": \"39a6\",\n\t\"./en-gb.js\": \"39a6\",\n\t\"./en-ie\": \"e1d3\",\n\t\"./en-ie.js\": \"e1d3\",\n\t\"./en-il\": \"7333\",\n\t\"./en-il.js\": \"7333\",\n\t\"./en-nz\": \"6f50\",\n\t\"./en-nz.js\": \"6f50\",\n\t\"./eo\": \"65db\",\n\t\"./eo.js\": \"65db\",\n\t\"./es\": \"898b\",\n\t\"./es-do\": \"0a3c\",\n\t\"./es-do.js\": \"0a3c\",\n\t\"./es-us\": \"55c9\",\n\t\"./es-us.js\": \"55c9\",\n\t\"./es.js\": \"898b\",\n\t\"./et\": \"ec18\",\n\t\"./et.js\": \"ec18\",\n\t\"./eu\": \"0ff2\",\n\t\"./eu.js\": \"0ff2\",\n\t\"./fa\": \"8df4\",\n\t\"./fa.js\": \"8df4\",\n\t\"./fi\": \"81e9\",\n\t\"./fi.js\": \"81e9\",\n\t\"./fo\": \"0721\",\n\t\"./fo.js\": \"0721\",\n\t\"./fr\": \"9f26\",\n\t\"./fr-ca\": \"d9f8\",\n\t\"./fr-ca.js\": \"d9f8\",\n\t\"./fr-ch\": \"0e49\",\n\t\"./fr-ch.js\": \"0e49\",\n\t\"./fr.js\": \"9f26\",\n\t\"./fy\": \"7118\",\n\t\"./fy.js\": \"7118\",\n\t\"./ga\": \"5120\",\n\t\"./ga.js\": \"5120\",\n\t\"./gd\": \"f6b4\",\n\t\"./gd.js\": \"f6b4\",\n\t\"./gl\": \"8840\",\n\t\"./gl.js\": \"8840\",\n\t\"./gom-latn\": \"0caa\",\n\t\"./gom-latn.js\": \"0caa\",\n\t\"./gu\": \"e0c5\",\n\t\"./gu.js\": \"e0c5\",\n\t\"./he\": \"c7aa\",\n\t\"./he.js\": \"c7aa\",\n\t\"./hi\": \"dc4d\",\n\t\"./hi.js\": \"dc4d\",\n\t\"./hr\": \"4ba9\",\n\t\"./hr.js\": \"4ba9\",\n\t\"./hu\": \"5b14\",\n\t\"./hu.js\": \"5b14\",\n\t\"./hy-am\": \"d6b6\",\n\t\"./hy-am.js\": \"d6b6\",\n\t\"./id\": \"5038\",\n\t\"./id.js\": \"5038\",\n\t\"./is\": \"0558\",\n\t\"./is.js\": \"0558\",\n\t\"./it\": \"6e98\",\n\t\"./it-ch\": \"6f12\",\n\t\"./it-ch.js\": \"6f12\",\n\t\"./it.js\": \"6e98\",\n\t\"./ja\": \"079e\",\n\t\"./ja.js\": \"079e\",\n\t\"./jv\": \"b540\",\n\t\"./jv.js\": \"b540\",\n\t\"./ka\": \"201b\",\n\t\"./ka.js\": \"201b\",\n\t\"./kk\": \"6d79\",\n\t\"./kk.js\": \"6d79\",\n\t\"./km\": \"e81d\",\n\t\"./km.js\": \"e81d\",\n\t\"./kn\": \"3e92\",\n\t\"./kn.js\": \"3e92\",\n\t\"./ko\": \"22f8\",\n\t\"./ko.js\": \"22f8\",\n\t\"./ku\": \"2421\",\n\t\"./ku.js\": \"2421\",\n\t\"./ky\": \"9609\",\n\t\"./ky.js\": \"9609\",\n\t\"./lb\": \"440c\",\n\t\"./lb.js\": \"440c\",\n\t\"./lo\": \"b29d\",\n\t\"./lo.js\": \"b29d\",\n\t\"./lt\": \"26f9\",\n\t\"./lt.js\": \"26f9\",\n\t\"./lv\": \"b97c\",\n\t\"./lv.js\": \"b97c\",\n\t\"./me\": \"293c\",\n\t\"./me.js\": \"293c\",\n\t\"./mi\": \"688b\",\n\t\"./mi.js\": \"688b\",\n\t\"./mk\": \"6909\",\n\t\"./mk.js\": \"6909\",\n\t\"./ml\": \"02fb\",\n\t\"./ml.js\": \"02fb\",\n\t\"./mn\": \"958b\",\n\t\"./mn.js\": \"958b\",\n\t\"./mr\": \"39bd\",\n\t\"./mr.js\": \"39bd\",\n\t\"./ms\": \"ebe4\",\n\t\"./ms-my\": \"6403\",\n\t\"./ms-my.js\": \"6403\",\n\t\"./ms.js\": \"ebe4\",\n\t\"./mt\": \"1b45\",\n\t\"./mt.js\": \"1b45\",\n\t\"./my\": \"8689\",\n\t\"./my.js\": \"8689\",\n\t\"./nb\": \"6ce3\",\n\t\"./nb.js\": \"6ce3\",\n\t\"./ne\": \"3a39\",\n\t\"./ne.js\": \"3a39\",\n\t\"./nl\": \"facd\",\n\t\"./nl-be\": \"db29\",\n\t\"./nl-be.js\": \"db29\",\n\t\"./nl.js\": \"facd\",\n\t\"./nn\": \"b84c\",\n\t\"./nn.js\": \"b84c\",\n\t\"./pa-in\": \"f3ff\",\n\t\"./pa-in.js\": \"f3ff\",\n\t\"./pl\": \"8d57\",\n\t\"./pl.js\": \"8d57\",\n\t\"./pt\": \"f260\",\n\t\"./pt-br\": \"d2d4\",\n\t\"./pt-br.js\": \"d2d4\",\n\t\"./pt.js\": \"f260\",\n\t\"./ro\": \"972c\",\n\t\"./ro.js\": \"972c\",\n\t\"./ru\": \"957c\",\n\t\"./ru.js\": \"957c\",\n\t\"./sd\": \"6784\",\n\t\"./sd.js\": \"6784\",\n\t\"./se\": \"ffff\",\n\t\"./se.js\": \"ffff\",\n\t\"./si\": \"eda5\",\n\t\"./si.js\": \"eda5\",\n\t\"./sk\": \"7be6\",\n\t\"./sk.js\": \"7be6\",\n\t\"./sl\": \"8155\",\n\t\"./sl.js\": \"8155\",\n\t\"./sq\": \"c8f3\",\n\t\"./sq.js\": \"c8f3\",\n\t\"./sr\": \"cf1e\",\n\t\"./sr-cyrl\": \"13e9\",\n\t\"./sr-cyrl.js\": \"13e9\",\n\t\"./sr.js\": \"cf1e\",\n\t\"./ss\": \"52bd\",\n\t\"./ss.js\": \"52bd\",\n\t\"./sv\": \"5fbd\",\n\t\"./sv.js\": \"5fbd\",\n\t\"./sw\": \"74dc\",\n\t\"./sw.js\": \"74dc\",\n\t\"./ta\": \"3de5\",\n\t\"./ta.js\": \"3de5\",\n\t\"./te\": \"5cbb\",\n\t\"./te.js\": \"5cbb\",\n\t\"./tet\": \"576c\",\n\t\"./tet.js\": \"576c\",\n\t\"./tg\": \"3b1b\",\n\t\"./tg.js\": \"3b1b\",\n\t\"./th\": \"10e8\",\n\t\"./th.js\": \"10e8\",\n\t\"./tl-ph\": \"0f38\",\n\t\"./tl-ph.js\": \"0f38\",\n\t\"./tlh\": \"cf75\",\n\t\"./tlh.js\": \"cf75\",\n\t\"./tr\": \"0e81\",\n\t\"./tr.js\": \"0e81\",\n\t\"./tzl\": \"cf51\",\n\t\"./tzl.js\": \"cf51\",\n\t\"./tzm\": \"c109\",\n\t\"./tzm-latn\": \"b53d\",\n\t\"./tzm-latn.js\": \"b53d\",\n\t\"./tzm.js\": \"c109\",\n\t\"./ug-cn\": \"6117\",\n\t\"./ug-cn.js\": \"6117\",\n\t\"./uk\": \"ada2\",\n\t\"./uk.js\": \"ada2\",\n\t\"./ur\": \"5294\",\n\t\"./ur.js\": \"5294\",\n\t\"./uz\": \"2e8c\",\n\t\"./uz-latn\": \"010e\",\n\t\"./uz-latn.js\": \"010e\",\n\t\"./uz.js\": \"2e8c\",\n\t\"./vi\": \"2921\",\n\t\"./vi.js\": \"2921\",\n\t\"./x-pseudo\": \"fd7e\",\n\t\"./x-pseudo.js\": \"fd7e\",\n\t\"./yo\": \"7f33\",\n\t\"./yo.js\": \"7f33\",\n\t\"./zh-cn\": \"5c3a\",\n\t\"./zh-cn.js\": \"5c3a\",\n\t\"./zh-hk\": \"49ab\",\n\t\"./zh-hk.js\": \"49ab\",\n\t\"./zh-tw\": \"90ea\",\n\t\"./zh-tw.js\": \"90ea\"\n};\n\n\nfunction webpackContext(req) {\n\tvar id = webpackContextResolve(req);\n\treturn __webpack_require__(id);\n}\nfunction webpackContextResolve(req) {\n\tif(!__webpack_require__.o(map, req)) {\n\t\tvar e = new Error(\"Cannot find module '\" + req + \"'\");\n\t\te.code = 'MODULE_NOT_FOUND';\n\t\tthrow e;\n\t}\n\treturn map[req];\n}\nwebpackContext.keys = function webpackContextKeys() {\n\treturn Object.keys(map);\n};\nwebpackContext.resolve = webpackContextResolve;\nmodule.exports = webpackContext;\nwebpackContext.id = \"4678\";","import Vue from \"vue\";\r\nimport Router from \"vue-router\";\r\nimport { AuthenticationService } from \"./services\";\r\n\r\nconst routerOptions = [\r\n { path: \"/\", component: \"Occurrences\" },\r\n { path: \"/ereignis\", component: \"Occurrences\" },\r\n { path: \"/report\", component: \"Reports\" },\r\n { path: \"/users\", component: \"Users\" },\r\n { path: \"/signin\", component: \"Signin\" },\r\n { path: \"/password/reset\", component: \"ResetPassword\" },\r\n { path: \"/registration/confirm\", component: \"ConfirmAccount\" },\r\n { path: \"/debug\", component: \"Debug\" }\r\n];\r\n\r\nconst routes = routerOptions.map(route => {\r\n return {\r\n ...route,\r\n component: () => import(`@/views/${route.component}.vue`)\r\n };\r\n});\r\n\r\nVue.use(Router);\r\nconst router = new Router({\r\n mode: \"history\",\r\n routes\r\n});\r\nrouter.beforeEach((to, from, next) => {\r\n // redirect to login page if not logged in and trying to access a restricted page\r\n const publicPages = [\"/signin\", \"/signup\", \"/password/reset\", \"/registration/confirm\"];\r\n const userPages = [\"/\", \"/ereignis\", \"/report\"];\r\n\r\n const authRequired = !publicPages.includes(to.path);\r\n const needsAdminRole = authRequired && !userPages.includes(to.path);\r\n\r\n const loggedIn = AuthenticationService.getTokenFromStorage();\r\n if (authRequired && !loggedIn) {\r\n return next(\"/signin\");\r\n } else if (authRequired && needsAdminRole) {\r\n if (!loggedIn) {\r\n return next(\"/signin\");\r\n }\r\n const user = JSON.parse(loggedIn);\r\n // user.roles = JSON.parse(user.roles);\r\n if (!user.roles.includes(\"Administrator\")) {\r\n return next(\"/signin\");\r\n }\r\n }\r\n next();\r\n});\r\nexport default router;\r\n","module.exports = __webpack_public_path__ + \"img/ics_briefpapier.d028cda5.jpg\";","import { Api } from \"@/services/api\";\r\nimport { RealEstate, PostalCode } from \"@/types\";\r\n\r\nconst getPostalCode = ({\r\n Id = \"\",\r\n location = \"\",\r\n postal_code = \"\",\r\n ref_country = \"\"\r\n} = {}): PostalCode => {\r\n return {\r\n id: Id,\r\n location,\r\n postal_code,\r\n ref_country\r\n };\r\n};\r\nexport default {\r\n async getAllRealEstates(): Promise {\r\n let response;\r\n let data;\r\n try {\r\n response = await Api.request().get(\"/api/realestates/GetAll/true\");\r\n data = Api.handleResponse(response);\r\n } catch (err) {\r\n throw err;\r\n }\r\n const realestates: RealEstate[] = data.map((elem: any) => {\r\n const postalCode = getPostalCode(elem._postalCode); \r\n elem.fullName = elem.name + \", \" + elem.postalCode,\r\n elem._postalCode = postalCode;\r\n return elem;\r\n });\r\n return realestates;\r\n }\r\n};\r\n","export function resolve(\r\n path: string | string[],\r\n obj: any,\r\n separator = \".\"\r\n): T | string {\r\n if (!path) {\r\n return \"\";\r\n }\r\n const properties = Array.isArray(path) ? path : path.split(separator);\r\n const erg = properties.reduce((prev, curr) => {\r\n return prev && prev[curr] ? prev[curr] : \"\";\r\n }, obj);\r\n // console.log(erg);\r\n return erg;\r\n}\r\n","import Vue from \"vue\";\r\nimport Vuetify from \"vuetify/lib\";\r\nimport \"@mdi/font/css/materialdesignicons.css\"; // Ensure you are using css-loader\r\n\r\nVue.use(Vuetify);\r\n\r\nexport default new Vuetify({\r\n icons: {\r\n iconfont: \"mdi\"\r\n },\r\n theme: {\r\n dark: false,\r\n themes: {\r\n light: {\r\n primary: \"#009688\",\r\n accent: \"#009688\",\r\n secondary: \"#2196f3\"\r\n }\r\n }\r\n }\r\n});\r\n","var render = function render(){var _vm=this,_c=_vm._self._c,_setup=_vm._self._setupProxy;return _c('v-app',[_c('confirm',{ref:\"confirm\"}),_c('password-change',{ref:\"password\"}),_c('v-snackbar',{attrs:{\"color\":_vm.alert.type,\"multi-line\":\"\",\"right\":\"\",\"top\":\"\"},model:{value:(_vm.notification),callback:function ($$v) {_vm.notification=$$v},expression:\"notification\"}},[_vm._v(\" \"+_vm._s(_vm.alert.message)+\" \"),_c('v-btn',{attrs:{\"text\":\"\"},on:{\"click\":function($event){_vm.notification = false}}},[_vm._v(\" \"+_vm._s(_vm.$t(\"GENERAL.CLOSE\"))+\" \")])],1),_c('v-snackbar',{attrs:{\"color\":\"#dfdfdf\",\"bottom\":\"\",\"timeout\":-1,\"id\":\"cookies\",\"multi-line\":\"\"},model:{value:(_vm.cookiesNotConfirmed),callback:function ($$v) {_vm.cookiesNotConfirmed=$$v},expression:\"cookiesNotConfirmed\"}},[_vm._v(\" \"+_vm._s(_vm.$t(\"COOKIES.PART_1\"))+\" \"),_c('a',{attrs:{\"href\":\"https://www.ics-fs.at/datenschutz/\",\"title\":\"Datenschutz\",\"target\":\"_blank\"}},[_vm._v(_vm._s(_vm.$t(\"GENERAL.DATENSCHUTZ\")))]),_vm._v(\" . \"+_vm._s(_vm.$t(\"COOKIES.PART_2\"))+\" \"),_c('v-btn',{attrs:{\"color\":\"primary\"},on:{\"click\":_vm.acceptCookies}},[_vm._v(\" \"+_vm._s(_vm.$t(\"GENERAL.ACCEPT\"))+\" \")])],1),_c(_vm.layout,{tag:\"component\"},[_c('router-view',{attrs:{\"layout\":_vm.layout},on:{\"update:layout\":function($event){_vm.layout=$event}}})],1)],1)\n}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","var render = function render(){var _vm=this,_c=_vm._self._c;return _c('v-dialog',{style:({ zIndex: _vm.options.zIndex }),attrs:{\"max-width\":_vm.options.width},on:{\"keydown\":function($event){if(!$event.type.indexOf('key')&&_vm._k($event.keyCode,\"esc\",27,$event.key,[\"Esc\",\"Escape\"]))return null;return _vm.cancel.apply(null, arguments)}},model:{value:(_vm.dialog),callback:function ($$v) {_vm.dialog=$$v},expression:\"dialog\"}},[_c('v-card',[_c('v-card-title',{staticClass:\"white--text\",style:({ 'background-color': _vm.options.color })},[_vm._v(_vm._s(_vm.title))]),_c('v-card-text',{directives:[{name:\"show\",rawName:\"v-show\",value:(!!_vm.message),expression:\"!!message\"}]},[_vm._v(_vm._s(_vm.message))]),_c('v-card-actions',{staticClass:\"pt-0\"},[_c('v-spacer'),_c('v-btn',{attrs:{\"color\":\"grey\",\"text\":\"\"},nativeOn:{\"click\":function($event){return _vm.cancel.apply(null, arguments)}}},[_vm._v(_vm._s(_vm.$t(\"GENERAL.NO\")))]),_c('v-btn',{attrs:{\"color\":\"primary darken-1\",\"text\":\"\"},nativeOn:{\"click\":function($event){return _vm.agree.apply(null, arguments)}}},[_vm._v(_vm._s(_vm.$t(\"GENERAL.YES\")))])],1)],1)],1)\n}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","\r\n\r\n\r\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!./ConfirmationDialogue.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!./ConfirmationDialogue.vue?vue&type=script&lang=js&\"","import { render, staticRenderFns } from \"./ConfirmationDialogue.vue?vue&type=template&id=5bcdfc9e&\"\nimport script from \"./ConfirmationDialogue.vue?vue&type=script&lang=js&\"\nexport * from \"./ConfirmationDialogue.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 null,\n null\n \n)\n\nexport default component.exports","var render = function render(){var _vm=this,_c=_vm._self._c,_setup=_vm._self._setupProxy;return _c('base-dialog',{attrs:{\"title\":_vm.$t('GENERAL.CHANGEPASSWORD')},scopedSlots:_vm._u([{key:\"content\",fn:function(){return [_c('v-container',{staticClass:\"ma-0 pa-0\"},[_c('v-form',{ref:\"form\",attrs:{\"id\":\"reqpassword\"},on:{\"submit\":function($event){$event.preventDefault();}}},[_c('v-row',[_c('v-col',[_c('v-text-field',{attrs:{\"name\":\"oldPassword\",\"label\":\"Altes Passwort\",\"id\":\"oldPassword\",\"type\":\"password\",\"rules\":[_vm.formRules.required]},model:{value:(_vm.oldPassword),callback:function ($$v) {_vm.oldPassword=$$v},expression:\"oldPassword\"}})],1),_c('v-col',[_c('v-text-field',{attrs:{\"name\":\"password\",\"label\":\"Passwort\",\"id\":\"password\",\"type\":\"password\",\"rules\":[_vm.minlengthPassword, _vm.formRules.required]},model:{value:(_vm.password),callback:function ($$v) {_vm.password=$$v},expression:\"password\"}})],1),_c('v-col',[_c('v-text-field',{attrs:{\"name\":\"confirmPassword\",\"label\":\"Passwort wiederholen\",\"id\":\"confirmPassword\",\"type\":\"password\",\"rules\":[_vm.comparePasswords, _vm.formRules.required]},model:{value:(_vm.passwordConfirm),callback:function ($$v) {_vm.passwordConfirm=$$v},expression:\"passwordConfirm\"}})],1)],1)],1)],1)]},proxy:true},{key:\"actions\",fn:function(){return [_c('v-btn',{attrs:{\"color\":\"primary\"},on:{\"click\":_vm.changePassword}},[_vm._v(_vm._s(_vm.$t(\"GENERAL.CHANGEPASSWORD\")))])]},proxy:true}]),model:{value:(_vm.dialog),callback:function ($$v) {_vm.dialog=$$v},expression:\"dialog\"}})\n}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","\r\nimport Vue from \"vue\";\r\nimport BaseDialog from \"@/components/BaseDialog.vue\";\r\n\r\nexport default Vue.extend({\r\n data() {\r\n return {\r\n dialog: false,\r\n oldPassword: \"\",\r\n password: \"\",\r\n passwordConfirm: \"\"\r\n };\r\n },\r\n computed: {\r\n comparePasswords(): true | string {\r\n if (!this.password) {\r\n return true;\r\n }\r\n\r\n return this.password === this.passwordConfirm\r\n ? true\r\n : \"Passwörter stimmen nicht überein\";\r\n },\r\n minlengthPassword(): true | string {\r\n if (!this.password) {\r\n return true;\r\n }\r\n return this.password.length >= 5 ? true : \"Password zu kurz\";\r\n }\r\n },\r\n methods: {\r\n async changePassword() {\r\n if (\r\n !(this.$refs.form as any).validate() ||\r\n this.password !== this.passwordConfirm ||\r\n !this.oldPassword\r\n ) {\r\n return;\r\n }\r\n if (\r\n await this.$store.dispatch(\"authentication/changePassword\", {\r\n newPassword: this.password,\r\n newPasswordRepeat: this.passwordConfirm,\r\n oldPassword: this.oldPassword\r\n })\r\n ) {\r\n this.dialog = false;\r\n }\r\n },\r\n open() {\r\n this.oldPassword = \"\";\r\n this.password = \"\";\r\n this.passwordConfirm = \"\";\r\n this.dialog = true;\r\n this.$nextTick(function(this: any) {\r\n (this.$refs.form as any).reset();\r\n });\r\n }\r\n },\r\n components: {\r\n \"base-dialog\": BaseDialog\r\n }\r\n});\r\n","import mod from \"-!../../node_modules/cache-loader/dist/cjs.js??ref--15-0!../../node_modules/thread-loader/dist/cjs.js!../../node_modules/babel-loader/lib/index.js!../../node_modules/ts-loader/index.js??ref--15-3!../../node_modules/cache-loader/dist/cjs.js??ref--1-0!../../node_modules/vue-loader/lib/index.js??vue-loader-options!./PasswordChangeModal.vue?vue&type=script&lang=ts&\"; export default mod; export * from \"-!../../node_modules/cache-loader/dist/cjs.js??ref--15-0!../../node_modules/thread-loader/dist/cjs.js!../../node_modules/babel-loader/lib/index.js!../../node_modules/ts-loader/index.js??ref--15-3!../../node_modules/cache-loader/dist/cjs.js??ref--1-0!../../node_modules/vue-loader/lib/index.js??vue-loader-options!./PasswordChangeModal.vue?vue&type=script&lang=ts&\"","import { render, staticRenderFns } from \"./PasswordChangeModal.vue?vue&type=template&id=52b4a02f&\"\nimport script from \"./PasswordChangeModal.vue?vue&type=script&lang=ts&\"\nexport * from \"./PasswordChangeModal.vue?vue&type=script&lang=ts&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n null,\n null\n \n)\n\nexport default component.exports","\r\nimport Vue from \"vue\";\r\nimport ConfirmationDialogue from \"@/components/ConfirmationDialogue.vue\";\r\nimport PasswordChangeModal from \"@/components/PasswordChangeModal.vue\";\r\nimport { AuthenticationService } from \"./services\";\r\n\r\nconst Component = Vue.extend({\r\n name: \"App\",\r\n methods: {\r\n acceptCookies(): void {\r\n window.localStorage.setItem(\"useCookiesConfirmed\", \"true\");\r\n this.cookiesNotConfirmed = false;\r\n }\r\n },\r\n created(): void {\r\n this.$store.dispatch(\"authentication/getAuthenticatedUser\");\r\n },\r\n computed: {\r\n alert(): string {\r\n return this.$store.state.alert;\r\n },\r\n notification: {\r\n get(): boolean {\r\n return !!this.$store.state.alert.message;\r\n },\r\n set(): void {\r\n this.$store.dispatch(\"alert/clear\");\r\n }\r\n },\r\n loggedIn(): boolean {\r\n return this.$store.state.authentication.status.loggedIn;\r\n }\r\n },\r\n watch: {\r\n $route(to, from) {\r\n // clear alert on location change\r\n // this.$store.dispatch('alert/clear');\r\n }\r\n },\r\n data() {\r\n const cookiesNotConfirmed = !window.localStorage.getItem(\r\n \"useCookiesConfirmed\"\r\n );\r\n return {\r\n cookiesNotConfirmed,\r\n appTitle: \"ICS FS-Helpdesk\",\r\n layout: \"div\"\r\n };\r\n },\r\n components: {\r\n confirm: ConfirmationDialogue,\r\n passwordChange: PasswordChangeModal\r\n },\r\n mounted() {\r\n Vue.prototype.$confirm = (this.$refs.confirm as any).open;\r\n Vue.prototype.$changePassword = (this.$refs.password as any).open;\r\n }\r\n});\r\nexport default Component;\r\n","import mod from \"-!../node_modules/cache-loader/dist/cjs.js??ref--15-0!../node_modules/thread-loader/dist/cjs.js!../node_modules/babel-loader/lib/index.js!../node_modules/ts-loader/index.js??ref--15-3!../node_modules/cache-loader/dist/cjs.js??ref--1-0!../node_modules/vue-loader/lib/index.js??vue-loader-options!./App.vue?vue&type=script&lang=ts&\"; export default mod; export * from \"-!../node_modules/cache-loader/dist/cjs.js??ref--15-0!../node_modules/thread-loader/dist/cjs.js!../node_modules/babel-loader/lib/index.js!../node_modules/ts-loader/index.js??ref--15-3!../node_modules/cache-loader/dist/cjs.js??ref--1-0!../node_modules/vue-loader/lib/index.js??vue-loader-options!./App.vue?vue&type=script&lang=ts&\"","import { render, staticRenderFns } from \"./App.vue?vue&type=template&id=15811e02&\"\nimport script from \"./App.vue?vue&type=script&lang=ts&\"\nexport * from \"./App.vue?vue&type=script&lang=ts&\"\nimport style0 from \"./App.vue?vue&type=style&index=0&id=15811e02&prod&lang=less&\"\n\n\n/* normalize component */\nimport normalizer from \"!../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n null,\n null\n \n)\n\nexport default component.exports","/* tslint:disable:no-console */\r\n\r\nimport { register } from \"register-service-worker\";\r\n\r\nif (process.env.NODE_ENV === \"production\") {\r\n register(`${process.env.BASE_URL}service-worker.js`, {\r\n ready() {\r\n // console.log(\r\n // \"App is being served from cache by a service worker.\\n\" +\r\n // \"For more details, visit https://goo.gl/AFskqB\"\r\n // );\r\n },\r\n registered() {\r\n // console.log(\"Service worker has been registered.\");\r\n },\r\n cached() {\r\n // console.log(\"Content has been cached for offline use.\");\r\n },\r\n updatefound() {\r\n // console.log(\"New content is downloading.\");\r\n },\r\n updated() {\r\n // console.log(\"New content is available; please refresh.\");\r\n },\r\n offline() {\r\n // console.log(\r\n // \"No internet connection found. App is running in offline mode.\"\r\n // );\r\n },\r\n error(error) {\r\n // console.error(\"Error during service worker registration:\", error);\r\n }\r\n });\r\n}\r\n","import Vue from \"vue\";\r\nimport moment from \"moment\";\r\nimport vuetify from \"./plugins/vuetify\";\r\nimport App from \"./App.vue\";\r\nimport i18n from \"./plugins/i18n\";\r\nimport router from \"./router\";\r\nimport store from \"./store/\";\r\nimport \"./registerServiceWorker\";\r\nimport \"./less/main.less\";\r\nVue.config.productionTip = false;\r\n\r\nVue.filter(\"formatDate\", (value: string) => {\r\n if (value) {\r\n return moment(value).format(\"DD.MM.YYYY\");\r\n }\r\n});\r\nVue.mixin({\r\n data() {\r\n return {\r\n formRules: {\r\n email: (value: string) => {\r\n // tslint:disable-next-line:max-line-length\r\n const pattern = /^(([^<>()[\\]\\\\.,;:\\s@\"]+(\\.[^<>()[\\]\\\\.,;:\\s@\"]+)*)|(\".+\"))@((\\[[0-9]{1,3}\\.[0-9]{1,3}\\.[0-9]{1,3}\\.[0-9]{1,3}])|(([a-zA-Z\\-0-9]+\\.)+[a-zA-Z]{2,}))$/;\r\n return pattern.test(value) || i18n.t(\"VALIDATION.EMAIL\");\r\n },\r\n required: (value: any) => !!value || i18n.t(\"VALIDATION.REQUIRED\"),\r\n username_required: (value: any) =>\r\n !!value || i18n.t(\"VALIDATION.USERNAME_REQUIRED\"),\r\n password_required: (value: any) =>\r\n !!value || i18n.t(\"VALIDATION.PASSWORD_REQUIRED\")\r\n }\r\n };\r\n }\r\n});\r\n\r\nnew Vue({\r\n router,\r\n store,\r\n vuetify,\r\n\r\n i18n,\r\n render: h => h(App)\r\n}).$mount(\"#app\");\r\n","export * from \"-!../../node_modules/mini-css-extract-plugin/dist/loader.js??ref--11-oneOf-1-0!../../node_modules/css-loader/dist/cjs.js??ref--11-oneOf-1-1!../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../node_modules/postcss-loader/src/index.js??ref--11-oneOf-1-2!../../node_modules/less-loader/dist/cjs.js??ref--11-oneOf-1-3!../../node_modules/cache-loader/dist/cjs.js??ref--1-0!../../node_modules/vue-loader/lib/index.js??vue-loader-options!./BaseDialog.vue?vue&type=style&index=0&id=28fe2152&prod&lang=less&\"","import { Occurrence, Document } from \"@/types\";\r\nimport i18n from \"@/plugins/i18n\";\r\nimport moment from \"moment\";\r\n\r\nconst reportFields = {\r\n Number: i18n.t(\"OCCURRENCE.NUMBER\"),\r\n RealEstate: i18n.t(\"OCCURRENCE.REAL_ESTATE\"),\r\n BuildingName: i18n.t(\"OCCURRENCE.BUILDING\"),\r\n Date: i18n.t(\"FILTER.RECORDED\"),\r\n ResponsiblePersonName: i18n.t(\"OCCURRENCE.RESPONSIBLE_PERSON\"),\r\n ResponsiblePersonEmail: i18n.t(\"GENERAL.EMAIL\"),\r\n ResponsiblePersonMobilePhoneNumber: i18n.t(\"GENERAL.MOBILEPHONE\"),\r\n OccurrenceType: i18n.t(\"OCCURRENCE.OCCURRENCE_TYPE\"),\r\n TradeType: i18n.t(\"OCCURRENCE.TRADE\"),\r\n ErrorCauseType: i18n.t(\"OCCURRENCE.ERROR_TYPE\"),\r\n InstallationName: i18n.t(\"OCCURRENCE.INSTALLATION\"),\r\n InstallationLevel: i18n.t(\"OCCURRENCE.LEVEL\"),\r\n InstallationLocation: i18n.t(\"OCCURRENCE.LOCATION\"),\r\n OccurrenceStatus: i18n.t(\"OCCURRENCE.STATUS\"),\r\n Note: i18n.t(\"OCCURRENCE.DETAIL\"),\r\n ErrorCauseDetails: i18n.t(\"OCCURRENCE.NOTE\"),\r\n count_imgs: i18n.t(\"GENERAL.COUNT_IMAGES\"),\r\n occurrence: i18n.t(\"OCCURRENCE.TITLESINGULAR\")\r\n};\r\nconst convertFileXHR = (url: string) => {\r\n return new Promise((resolve, reject) => {\r\n const xhr = new XMLHttpRequest();\r\n xhr.onload = () => {\r\n if (xhr.status === 404) {\r\n // console.error(\"File not found. URL: \" + url);\r\n resolve(\"File Missing\");\r\n return;\r\n }\r\n const reader = new FileReader();\r\n reader.onloadend = () => {\r\n resolve(reader.result);\r\n };\r\n reader.readAsDataURL(xhr.response);\r\n };\r\n xhr.open(\"GET\", url);\r\n xhr.responseType = \"blob\";\r\n xhr.send();\r\n });\r\n};\r\nconst pdfMake = () =>\r\n import(/* webpackChunkName: \"pdfmake\" */ \"pdfmake-lite/build/pdfmake.min.js\");\r\nconst pdfFonts = () =>\r\n import(/* webpackChunkName: \"vfs_fonts\" */ \"pdfmake-lite/build/vfs_fonts.js\");\r\nexport default {\r\n async getPdf(\r\n occurrence: Occurrence,\r\n documents: Document[],\r\n fileName: string\r\n ): Promise {\r\n const pdfFontsMod = await pdfFonts();\r\n const pdfMakeMod = await pdfMake();\r\n pdfMakeMod.default.vfs = pdfFontsMod.default.pdfMake.vfs;\r\n const firstColWidth = \"30%\";\r\n const secondColWidth = \"70%\";\r\n const briefpapier = await convertFileXHR(\r\n require(\"@/assets/ics_briefpapier.jpg\")\r\n );\r\n let a = {};\r\n const docImages: Array<{ base64: string }> = [];\r\n const listImages: Array<{ base64: string }> = [];\r\n for (const document of documents) {\r\n const data = (await convertFileXHR(document.path)) as string;\r\n if (data && data !== \"File Missing\") {\r\n listImages.push({\r\n base64: data\r\n });\r\n }\r\n }\r\n\r\n if (occurrence.tradeType.name && occurrence.tradeType.name === \"\") {\r\n a = {};\r\n } else {\r\n a = {\r\n columns: [\r\n {\r\n width: firstColWidth,\r\n text: reportFields.TradeType,\r\n bold: true,\r\n margin: [35, 0, 0, 10]\r\n },\r\n {\r\n width: secondColWidth,\r\n text: occurrence.tradeType.name,\r\n margin: [45, 0, 0, 10]\r\n }\r\n ]\r\n };\r\n }\r\n\r\n let installation = {\r\n name: {},\r\n level: {},\r\n location: {}\r\n };\r\n\r\n if (occurrence.installation.name && occurrence.installation.name !== \"\") {\r\n installation = {\r\n name: {\r\n columns: [\r\n {\r\n width: firstColWidth,\r\n text: reportFields.InstallationName,\r\n bold: true,\r\n margin: [35, 0, 0, 10]\r\n },\r\n {\r\n width: secondColWidth,\r\n text: occurrence.installation.name,\r\n margin: [45, 0, 0, 10]\r\n }\r\n ]\r\n },\r\n level: {\r\n columns: [\r\n {\r\n width: firstColWidth,\r\n text: reportFields.InstallationLevel,\r\n bold: true,\r\n margin: [35, 0, 0, 10]\r\n },\r\n {\r\n width: secondColWidth,\r\n text: occurrence.installation.ebene,\r\n margin: [45, 0, 0, 10]\r\n }\r\n ]\r\n },\r\n location: {\r\n columns: [\r\n {\r\n width: firstColWidth,\r\n text: reportFields.InstallationLocation,\r\n bold: true,\r\n margin: [35, 0, 0, 10]\r\n },\r\n {\r\n width: secondColWidth,\r\n text: occurrence.installation.location,\r\n margin: [45, 0, 0, 10]\r\n }\r\n ]\r\n }\r\n };\r\n }\r\n\r\n let errorCauseDetails = {};\r\n if (occurrence.errorCauseDetails != null) {\r\n errorCauseDetails = {\r\n columns: [\r\n {\r\n width: firstColWidth,\r\n text: reportFields.ErrorCauseDetails,\r\n bold: true,\r\n margin: [35, 0, 0, 10]\r\n },\r\n {\r\n width: secondColWidth,\r\n text: occurrence.errorCauseDetails,\r\n margin: [45, 0, 0, 10]\r\n }\r\n ]\r\n };\r\n }\r\n const docDefinition = {\r\n background: {},\r\n content: [\r\n {\r\n text: reportFields.occurrence + \" \" + occurrence.number,\r\n style: \"header\",\r\n margin: [20, 70, 0, 30]\r\n },\r\n {\r\n columns: [\r\n {\r\n width: firstColWidth,\r\n text: reportFields.RealEstate,\r\n bold: true,\r\n margin: [35, 0, 0, 10]\r\n },\r\n {\r\n width: secondColWidth,\r\n text: occurrence.realEstate,\r\n margin: [45, 0, 0, 10]\r\n }\r\n ]\r\n },\r\n {\r\n columns: [\r\n {\r\n width: firstColWidth,\r\n text: reportFields.BuildingName,\r\n bold: true,\r\n margin: [35, 0, 0, 10]\r\n },\r\n {\r\n width: secondColWidth,\r\n text: occurrence.buildingName,\r\n margin: [45, 0, 0, 10]\r\n }\r\n ]\r\n },\r\n {\r\n columns: [\r\n {\r\n width: firstColWidth,\r\n text: reportFields.Date,\r\n bold: true,\r\n margin: [35, 0, 0, 10]\r\n },\r\n {\r\n width: secondColWidth,\r\n text: moment(occurrence.date).format(\"DD.MM.YYYY\"),\r\n margin: [45, 0, 0, 10]\r\n }\r\n ]\r\n },\r\n {\r\n columns: [\r\n {\r\n width: firstColWidth,\r\n text: reportFields.OccurrenceType,\r\n bold: true,\r\n margin: [35, 0, 0, 10]\r\n },\r\n {\r\n width: secondColWidth,\r\n text: occurrence.occurrenceType.name,\r\n margin: [45, 0, 0, 10]\r\n }\r\n ]\r\n },\r\n {\r\n columns: [\r\n {\r\n width: firstColWidth,\r\n text: reportFields.ErrorCauseType,\r\n bold: true,\r\n margin: [35, 0, 0, 10]\r\n },\r\n {\r\n width: secondColWidth,\r\n text: occurrence.errorCauseType.name,\r\n margin: [45, 0, 0, 10]\r\n }\r\n ]\r\n },\r\n installation.name,\r\n installation.level,\r\n installation.location,\r\n {\r\n columns: [\r\n {\r\n width: firstColWidth,\r\n text: reportFields.OccurrenceStatus,\r\n bold: true,\r\n margin: [35, 0, 0, 10]\r\n },\r\n {\r\n width: secondColWidth,\r\n text: occurrence.occurrenceStatus.name,\r\n margin: [45, 0, 0, 10]\r\n }\r\n ]\r\n },\r\n a,\r\n {\r\n columns: [\r\n {\r\n width: firstColWidth,\r\n text: reportFields.Note,\r\n bold: true,\r\n margin: [35, 0, 0, 10]\r\n },\r\n {\r\n width: secondColWidth,\r\n text: occurrence.description,\r\n margin: [45, 0, 0, 10]\r\n }\r\n ]\r\n },\r\n errorCauseDetails,\r\n {\r\n columns: [\r\n {\r\n width: firstColWidth,\r\n text: reportFields.count_imgs,\r\n bold: true,\r\n margin: [35, 0, 0, 10]\r\n },\r\n {\r\n width: secondColWidth,\r\n text: listImages.length.toString(),\r\n margin: [45, 0, 0, 10]\r\n }\r\n ]\r\n },\r\n {\r\n columns: [\r\n {\r\n width: firstColWidth,\r\n text: reportFields.ResponsiblePersonName,\r\n bold: true,\r\n margin: [35, 30, 0, 10]\r\n },\r\n {\r\n width: secondColWidth,\r\n text: `${occurrence.responsiblePerson.firstName} ${occurrence.responsiblePerson.lastName}`,\r\n margin: [45, 30, 0, 10]\r\n }\r\n ]\r\n },\r\n {\r\n columns: [\r\n {\r\n width: firstColWidth,\r\n text: reportFields.ResponsiblePersonMobilePhoneNumber,\r\n bold: true,\r\n margin: [35, 0, 0, 10]\r\n },\r\n {\r\n width: secondColWidth,\r\n text: occurrence.responsiblePerson.mobilePhoneNumber,\r\n margin: [45, 0, 0, 10]\r\n }\r\n ]\r\n },\r\n {\r\n columns: [\r\n {\r\n width: firstColWidth,\r\n text: reportFields.ResponsiblePersonEmail,\r\n bold: true,\r\n margin: [35, 0, 0, 30]\r\n },\r\n {\r\n width: secondColWidth,\r\n text: occurrence.responsiblePerson.email,\r\n margin: [45, 0, 0, 30]\r\n }\r\n ]\r\n }\r\n ],\r\n pageSize: \"A4\",\r\n defaultStyle: {\r\n fontSize: 14\r\n },\r\n styles: {\r\n header: {\r\n fontSize: 23\r\n }\r\n }\r\n };\r\n\r\n const tmp = listImages.slice();\r\n if (tmp.length > 0) {\r\n docDefinition.content.push({\r\n text: \"\",\r\n width: 595,\r\n pageBreak: \"before\"\r\n });\r\n }\r\n let first = true;\r\n while (tmp.length) {\r\n const margin = first ? [35, 70, 0, 10] : [35, 10, 0, 10];\r\n first = false;\r\n const x = tmp.splice(0, 4);\r\n const cols = [];\r\n for (const value of x) {\r\n cols.push({\r\n image: value.base64,\r\n width: 100,\r\n margin\r\n });\r\n cols.push({\r\n text: \"\",\r\n width: 10\r\n });\r\n }\r\n docDefinition.content.push({\r\n columns: cols\r\n });\r\n }\r\n for (const value of listImages) {\r\n docDefinition.content.push({\r\n text: \"\",\r\n width: 595,\r\n pageBreak: \"before\"\r\n });\r\n docImages.push({\r\n base64: value.base64\r\n });\r\n }\r\n\r\n docDefinition.background = (currentPage: any) => {\r\n if (currentPage <= 2) {\r\n return {\r\n image: briefpapier,\r\n height: 841.4,\r\n width: 595\r\n };\r\n } else {\r\n const image = docImages[currentPage - 3];\r\n return {\r\n image: image.base64,\r\n width: 595\r\n };\r\n }\r\n };\r\n pdfMakeMod.createPdf(docDefinition).download(fileName + \".pdf\");\r\n }\r\n};\r\n","export * from \"-!../node_modules/mini-css-extract-plugin/dist/loader.js??ref--11-oneOf-1-0!../node_modules/css-loader/dist/cjs.js??ref--11-oneOf-1-1!../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../node_modules/postcss-loader/src/index.js??ref--11-oneOf-1-2!../node_modules/less-loader/dist/cjs.js??ref--11-oneOf-1-3!../node_modules/cache-loader/dist/cjs.js??ref--1-0!../node_modules/vue-loader/lib/index.js??vue-loader-options!./App.vue?vue&type=style&index=0&id=15811e02&prod&lang=less&\"","var render = function render(){var _vm=this,_c=_vm._self._c,_setup=_vm._self._setupProxy;return _c('v-dialog',{attrs:{\"width\":_vm.width,\"scrollable\":\"\"},model:{value:(_vm.dialog),callback:function ($$v) {_vm.dialog=$$v},expression:\"dialog\"}},[_c('v-card',[_c('v-card-title',{staticClass:\"text-h5\",attrs:{\"id\":\"base-dialog-header\",\"primary-title\":\"\"}},[_vm._v(\" \"+_vm._s(_vm.title)+\" \"),_c('v-spacer'),_vm._t(\"menu\")],2),_c('v-card-text',{attrs:{\"id\":\"card-content\"}},[_c('v-container',[_vm._t(\"content\")],2)],1),_c('v-card-actions',[_c('v-spacer'),_vm._t(\"actions\"),_c('v-btn',{attrs:{\"color\":\"primary\",\"text\":\"\"},on:{\"click\":function($event){_vm.dialog = false}}},[_vm._v(_vm._s(_vm.$t(\"GENERAL.CLOSE\")))])],2)],1)],1)\n}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","\r\nimport Vue from \"vue\";\r\nexport default Vue.extend({\r\n props: { title: String, value: Boolean, _width: String },\r\n computed: {\r\n width() {\r\n return this._width || 900;\r\n },\r\n dialog: {\r\n get(this: any): boolean {\r\n return this.value;\r\n },\r\n set(this: any, value: boolean): void {\r\n this.$emit(\"input\", value);\r\n }\r\n }\r\n }\r\n});\r\n","import mod from \"-!../../node_modules/cache-loader/dist/cjs.js??ref--15-0!../../node_modules/thread-loader/dist/cjs.js!../../node_modules/babel-loader/lib/index.js!../../node_modules/ts-loader/index.js??ref--15-3!../../node_modules/cache-loader/dist/cjs.js??ref--1-0!../../node_modules/vue-loader/lib/index.js??vue-loader-options!./BaseDialog.vue?vue&type=script&lang=ts&\"; export default mod; export * from \"-!../../node_modules/cache-loader/dist/cjs.js??ref--15-0!../../node_modules/thread-loader/dist/cjs.js!../../node_modules/babel-loader/lib/index.js!../../node_modules/ts-loader/index.js??ref--15-3!../../node_modules/cache-loader/dist/cjs.js??ref--1-0!../../node_modules/vue-loader/lib/index.js??vue-loader-options!./BaseDialog.vue?vue&type=script&lang=ts&\"","import { render, staticRenderFns } from \"./BaseDialog.vue?vue&type=template&id=28fe2152&\"\nimport script from \"./BaseDialog.vue?vue&type=script&lang=ts&\"\nexport * from \"./BaseDialog.vue?vue&type=script&lang=ts&\"\nimport style0 from \"./BaseDialog.vue?vue&type=style&index=0&id=28fe2152&prod&lang=less&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n null,\n null\n \n)\n\nexport default component.exports","import Vue from \"vue\";\r\nimport VueI18n from \"vue-i18n\";\r\nVue.use(VueI18n);\r\n\r\nconst locale = window.localStorage.getItem(\"lang\") || \"de\";\r\n\r\nconst messages = {\r\n en: require(\"./../i18n/locale-en.json\"),\r\n de: require(\"./../i18n/locale-de.json\")\r\n};\r\n\r\nconst i18n = new VueI18n({\r\n locale,\r\n messages\r\n});\r\n\r\nexport default i18n;\r\n"],"sourceRoot":""}