{"version":3,"sources":["webpack:///webpack/bootstrap","webpack:///./src/store/index.ts","webpack:///./src/lang/da.ts","webpack:///./src/lang/en.ts","webpack:///./src/lang/index.ts","webpack:///./src/utils/storage.ts","webpack:///./src/store/modules/app.ts","webpack:///./src/views/App.vue?5922","webpack:///./src/views/App.vue","webpack:///./src/views/App.vue?cae9","webpack:///./src/views/App.vue?003b","webpack:///./src/router/index.ts","webpack:///./src/plugins/mediaqueries.js","webpack:///./src/main.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","jsonpScriptSrc","p","exports","module","l","e","promises","installedChunkData","promise","Promise","resolve","reject","onScriptComplete","script","document","createElement","charset","timeout","nc","setAttribute","src","error","Error","event","onerror","onload","clearTimeout","chunk","errorType","type","realSrc","target","message","name","request","undefined","setTimeout","head","appendChild","all","m","c","d","getter","o","defineProperty","enumerable","get","r","Symbol","toStringTag","value","t","mode","__esModule","ns","create","key","bind","n","object","property","oe","err","console","jsonpArray","window","oldJsonpFunction","slice","use","Store","routes","frontpage","menu","path","features","about","prices","parents","institutions","terms","privacypolicy","cookies","datasafety","contact","header","login","footer","support","supportemail","route","start","customers","agreements","orders","produkter","logOut","myprofile","title","messages","da","en","getLocale","i18n","locale","languageKey","language","set","modalIsShowing","headerMenu","showing","scrollPosition","device","client","os","bot","deviceDetector","parse","navigator","userAgent","model","getElementsByTagName","classList","add","this","remove","isShowing","SET_LANGUAGE","TOGGLE_HEADERMENU","HIDE_HEADERMENU","SET_MODAL_IS_SHOWING","SET_SCROLLPOSITION","dynamic","store","AppModule","_vm","_h","$createElement","_c","_self","attrs","staticRenderFns","component","baseRoutes","toString","scrollBehavior","to","from","savedPosition","x","y","base","router","afterEach","HideHeaderMenu","isArray","arg","convertBreakpointsToMediaQueries","breakpoints","keys","values","map","breakpointValues","mediaQueries","reduce","sum","index","options","assign","minWidth","maxWidth","mediaQuery","json2mq","transformValuesFromBreakpoints","currentBreakpoint","findClosestValue","findIndex","b","newBreakpoint","selectBreakpoints","subscribeToMediaQuery","enter","mql","matchMedia","cb","matches","addListener","mqComponent","props","mq","required","String","Array","computed","plusModifier","activeBreakpoints","$mqAvailableBreakpoints","render","h","shouldRenderChildren","includes","$mq","$slots","default","DEFAULT_BREAKPOINT","mobilesmall","mobile","tablet","tablethori","desktop","Infinity","install","Vue","defaultBreakpoint","hasSetupListeners","reactorComponent","filter","mixin","isMobileSmall","isMobile","isTablet","isTabletHori","isDesktop","created","$isServer","mounted","mediaqueries","config","productionTip","$mount"],"mappings":"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","file":"js/app.6b3a056b.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 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/\" + ({\"about\":\"about\",\"aboutinstitutions\":\"aboutinstitutions\",\"aboutparents\":\"aboutparents\",\"contact\":\"contact\",\"cookies\":\"cookies\",\"datasafety\":\"datasafety\",\"features\":\"features\",\"frontpage\":\"frontpage\",\"prices\":\"prices\",\"privacypolicy\":\"privacypolicy\",\"terms\":\"terms\"}[chunkId]||chunkId) + \".\" + {\"about\":\"e72a9ac9\",\"aboutinstitutions\":\"22db7ac2\",\"aboutparents\":\"785897a6\",\"contact\":\"e708d4f2\",\"cookies\":\"7725aef9\",\"datasafety\":\"58fbd3c0\",\"features\":\"e11a55ba\",\"frontpage\":\"0aefb504\",\"prices\":\"c7486f65\",\"privacypolicy\":\"a5523371\",\"terms\":\"983eea92\"}[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// 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([\"cd49\",\"chunk-vendors\"]);\n \t// run deferred modules when ready\n \treturn checkDeferredModules();\n","import Vue from \"vue\"\nimport Vuex, { Store } from \"vuex\"\nimport { IAppState } from \"./modules/app\"\n\nVue.use(Vuex)\n\nexport interface IRootState\r\n{\n\tapp: IAppState\n}\n\nexport default new Vuex.Store({})\n","export default {\r\n\troutes:\r\n\t{\r\n\t\tfrontpage:\r\n\t\t{\r\n\t\t\tmenu: \"Forside\",\r\n\t\t\tpath: \"\"\r\n\t\t},\r\n\t\tfeatures:\r\n\t\t{\r\n\t\t\tmenu: \"Features\",\r\n\t\t\tpath: \"Features\"\r\n\t\t},\r\n\t\tabout:\r\n\t\t{\r\n\t\t\tmenu: \"Om Skolefoto\",\r\n\t\t\tpath: \"OmSkolefoto\"\r\n\t\t},\r\n\t\tprices:\r\n\t\t{\r\n\t\t\tmenu: \"Priser\",\r\n\t\t\tpath: \"Priser\"\r\n\t\t},\r\n\t\tparents:\r\n\t\t{\r\n\t\t\tmenu: \"Forældre\",\r\n\t\t\tpath: \"Foraeldre\"\r\n\t\t},\r\n\t\tinstitutions:\r\n\t\t{\r\n\t\t\tmenu: \"Institutioner\",\r\n\t\t\tpath: \"Institutioner\"\r\n\t\t},\r\n\t\tterms:\r\n\t\t{\r\n\t\t\tmenu: \"Handelsbetingelser\",\r\n\t\t\tpath: \"Handelsbetingelser\"\r\n\t\t},\r\n\t\tprivacypolicy:\r\n\t\t{\r\n\t\t\tmenu: \"Privatlivs politk\",\r\n\t\t\tpath: \"PrivatlivsPolitik\"\r\n\t\t},\r\n\t\tcookies:\r\n\t\t{\r\n\t\t\tmenu: \"Cookies\",\r\n\t\t\tpath: \"Cookies\"\r\n\t\t},\r\n\t\tdatasafety:\r\n\t\t{\r\n\t\t\tmenu: \"Datasikkerhed og GDPR\",\r\n\t\t\tpath: \"Datasikkerhed\"\r\n\t\t},\r\n\t\tcontact:\r\n\t\t{\r\n\t\t\tmenu: \"Kontakt\",\r\n\t\t\tpath: \"Kontakt\"\r\n\t\t}\r\n\t},\r\n\theader:\r\n\t{\r\n\t\tlogin: \"Log ind\"\r\n\t},\r\n\tfooter:\r\n\t{\r\n\t\tsupport: \"Support\",\r\n\t\tsupportemail: \"info@skolefoto.net\"\r\n\t}\r\n}\r\n","export default {\r\n\troute:\r\n\t{\r\n\t\tstart: \"Start\",\r\n\t\tcustomers: \"Institutions\",\r\n\t\tagreements: \"Agreements\",\r\n\t\torders: \"Orders\",\r\n\t\tprodukter: \"Products\"\r\n\t},\r\n\theader:\r\n\t{\r\n\t\tlogOut: \"Log out\",\r\n\t\tmyprofile: \"My profile\"\r\n\t},\r\n\tlogin:\r\n\t{\r\n\t\ttitle: \"Login\"\r\n\t}\r\n}\r\n","import Vue from \"vue\"\r\nimport VueI18n from \"vue-i18n\"\r\n\r\nimport daLang from \"./da\"\r\nimport enLang from \"./en\"\r\n\r\nVue.use(VueI18n)\r\n\r\nconst messages = {\r\n\tda: {\r\n\t\t...daLang\r\n\t},\r\n\ten: {\r\n\t\t...enLang\r\n\t}\r\n}\r\n\r\nexport const getLocale = () =>\r\n{\r\n\t// TODO: Get language from user settings\r\n\t/*\r\n\tconst cookieLanguage = getLanguage()\r\n\tif (cookieLanguage)\r\n\t{\r\n\t\treturn cookieLanguage\r\n\t}\r\n\r\n\tconst language = navigator.language.toLowerCase()\r\n\tconst locales = Object.keys(messages)\r\n\tfor (const locale of locales)\r\n\t{\r\n\t\tif (language.indexOf(locale) > -1)\r\n\t\t{\r\n\t\t\treturn locale\r\n\t\t}\r\n\t}\r\n\t*/\r\n\r\n\t// Default language is danish\r\n\treturn \"da\"\r\n}\r\n\r\nconst i18n = new VueI18n({\r\n\tlocale: getLocale(),\r\n\tmessages\r\n})\r\n\r\nexport default i18n\r\n","import Cookies from \"js-cookie\"\r\n\r\n// Local language override\r\nconst languageKey = \"language\"\r\nexport const getLanguage = () => Cookies.get(languageKey)\r\nexport const setLanguage = (language: string) => Cookies.set(languageKey, language)\r\n","import { VuexModule, Module, Mutation, Action, getModule } from \"vuex-module-decorators\"\r\nimport { setLanguage } from \"@/utils/storage\"\r\nimport { getLocale } from \"@/lang\"\r\nimport DeviceDetector, { DeviceDetectorResult, DeviceDetectorOptions } from \"device-detector-js\"\r\nimport store from \"@/store\"\r\n\r\nexport interface IAppState\r\n{\r\n\tlanguage: string,\r\n\theaderMenu:\r\n\t{\r\n\t\tshowing: boolean\r\n\t},\r\n\tmodalIsShowing: boolean,\r\n\tscrollPosition: number\r\n}\r\n\r\n@Module({ dynamic: true, store, name: \"app\" })\r\nclass App extends VuexModule implements IAppState\r\n{\r\n\tpublic language = getLocale()\r\n\tpublic modalIsShowing = false\r\n\tpublic headerMenu =\r\n\t\t{\r\n\t\t\tshowing: false\r\n\t\t}\r\n\r\n\tpublic scrollPosition = 0\r\n\tpublic device: DeviceDetectorResult = {\r\n\t\tclient: null,\r\n\t\tdevice: null,\r\n\t\tos: null,\r\n\t\tbot: null\r\n\t}\r\n\r\n\tconstructor()\r\n\t{\r\n\t\tsuper(VuexModule)\r\n\t\tconst deviceDetector = new DeviceDetector()\r\n\t\tconst device = deviceDetector.parse(navigator.userAgent)\r\n\t\tthis.device = device\r\n\r\n\t\t// device.device.model is empty on real devices, but not on emulators.\r\n\t\tif (device.os && device.os.name === \"iOS\" && device.device && device.device.model === \"\")\r\n\t\t{\r\n\t\t\t(document.getElementsByTagName(\"body\")[0] as HTMLBodyElement).classList.add(\"isios\")\r\n\t\t}\r\n\t}\r\n\r\n\t@Mutation\r\n\tprivate SET_LANGUAGE(language: string)\r\n\t{\r\n\t\tthis.language = language\r\n\t\tsetLanguage(this.language)\r\n\t}\r\n\r\n\t@Mutation\r\n\tprivate TOGGLE_HEADERMENU()\r\n\t{\r\n\t\tthis.headerMenu.showing = !this.headerMenu.showing\r\n\r\n\t\tif (this.headerMenu.showing)\r\n\t\t{\r\n\t\t\t(document.getElementsByTagName(\"body\")[0] as HTMLBodyElement).classList.add(\"menutoggled\")\r\n\t\t}\r\n\t\telse\r\n\t\t{\r\n\t\t\t(document.getElementsByTagName(\"body\")[0] as HTMLBodyElement).classList.remove(\"menutoggled\")\r\n\t\t}\r\n\t}\r\n\r\n\t@Mutation\r\n\tprivate HIDE_HEADERMENU()\r\n\t{\r\n\t\tthis.headerMenu.showing = false\r\n\r\n\t\tif (!this.headerMenu.showing)\r\n\t\t{\r\n\t\t\t(document.getElementsByTagName(\"body\")[0] as HTMLBodyElement).classList.remove(\"menutoggled\")\r\n\t\t}\r\n\t}\r\n\r\n\t@Mutation\r\n\tprivate SET_MODAL_IS_SHOWING(isShowing: boolean)\r\n\t{\r\n\t\tthis.modalIsShowing = isShowing\r\n\r\n\t\tif (isShowing)\r\n\t\t{\r\n\t\t\t(document.getElementsByTagName(\"body\")[0] as HTMLBodyElement).classList.add(\"modaloverflow\")\r\n\t\t}\r\n\t\telse\r\n\t\t{\r\n\t\t\t(document.getElementsByTagName(\"body\")[0] as HTMLBodyElement).classList.remove(\"modaloverflow\")\r\n\t\t}\r\n\t}\r\n\r\n\t@Mutation\r\n\tprivate SET_SCROLLPOSITION(scrollPosition: number)\r\n\t{\r\n\t\tthis.scrollPosition = scrollPosition\r\n\t}\r\n\r\n\t@Action\r\n\tpublic SetLanguage(language: string)\r\n\t{\r\n\t\tthis.SET_LANGUAGE(language)\r\n\t}\r\n\r\n\t@Action\r\n\tpublic ToggleHeaderMenu()\r\n\t{\r\n\t\tthis.TOGGLE_HEADERMENU()\r\n\t}\r\n\r\n\t@Action\r\n\tpublic HideHeaderMenu()\r\n\t{\r\n\t\tthis.HIDE_HEADERMENU()\r\n\t}\r\n\r\n\t@Action\r\n\tpublic SetModalIsShowing(isShowing: boolean)\r\n\t{\r\n\t\tthis.SET_MODAL_IS_SHOWING(isShowing)\r\n\t}\r\n\r\n\t@Action\r\n\tpublic SetScrollPosition(scrollPosition: number)\r\n\t{\r\n\t\tthis.SET_SCROLLPOSITION(scrollPosition)\r\n\t}\r\n}\r\n\r\nexport const AppModule = getModule(App)\r\n","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('div',{attrs:{\"id\":\"app\"}},[_c('router-view')],1)}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","\n\n\n\n\n\n\nimport { Component, Vue } from \"vue-property-decorator\"\n\n@Component({\n\tname: \"App\"\n})\n\nexport default class App extends Vue\n{\n}\n\n","import mod from \"-!../../node_modules/cache-loader/dist/cjs.js??ref--14-0!../../node_modules/thread-loader/dist/cjs.js!../../node_modules/babel-loader/lib/index.js!../../node_modules/ts-loader/index.js??ref--14-3!../../node_modules/cache-loader/dist/cjs.js??ref--0-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--14-0!../../node_modules/thread-loader/dist/cjs.js!../../node_modules/babel-loader/lib/index.js!../../node_modules/ts-loader/index.js??ref--14-3!../../node_modules/cache-loader/dist/cjs.js??ref--0-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=7578052c&\"\nimport script from \"./App.vue?vue&type=script&lang=ts&\"\nexport * from \"./App.vue?vue&type=script&lang=ts&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n null,\n null\n \n)\n\nexport default component.exports","import Vue from \"vue\"\nimport VueRouter, { Route, RouteConfig } from \"vue-router\"\nimport { AppModule } from \"@/store/modules/app\"\nimport i18n from \"@/lang\"\n\nVue.use(VueRouter)\n\nexport const baseRoutes: RouteConfig[] =\n\t[\n\t\t{\n\t\t\tpath: \"/\" + i18n.t(\"routes.frontpage.path\"),\n\t\t\tname: \"Frontpage\",\n\t\t\tcomponent: () => import(/* webpackChunkName: \"frontpage\" */ \"@/views/frontpage/Frontpage.vue\")\n\t\t},\n\t\t{\n\t\t\tpath: \"/\" + i18n.t(\"routes.about.path\"),\n\t\t\tname: \"About\",\n\t\t\tcomponent: () => import(/* webpackChunkName: \"about\" */ \"@/views/about/About.vue\")\n\t\t},\n\t\t{\r\n\t\t\tpath: \"/\" + i18n.t(\"routes.parents.path\").toString(),\r\n\t\t\tname: \"AboutParents\",\r\n\t\t\tcomponent: () => import(/* webpackChunkName: \"aboutparents\" */ \"@/views/about/Parents.vue\")\r\n\t\t},\n\t\t{\r\n\t\t\tpath: \"/\" + i18n.t(\"routes.institutions.path\").toString(),\r\n\t\t\tname: \"AboutInstitutions\",\r\n\t\t\tcomponent: () => import(/* webpackChunkName: \"aboutinstitutions\" */ \"@/views/about/Institutions.vue\")\r\n\t\t},\n\t\t{\n\t\t\tpath: \"/\" + i18n.t(\"routes.features.path\"),\n\t\t\tname: \"Features\",\n\t\t\tcomponent: () => import(/* webpackChunkName: \"features\" */ \"@/views/features/Features.vue\")\n\t\t},\n\t\t{\n\t\t\tpath: \"/\" + i18n.t(\"routes.prices.path\"),\n\t\t\tname: \"Prices\",\n\t\t\tcomponent: () => import(/* webpackChunkName: \"prices\" */ \"@/views/prices/Prices.vue\")\n\t\t},\n\t\t{\n\t\t\tpath: \"/\" + i18n.t(\"routes.terms.path\"),\n\t\t\tname: \"Terms\",\n\t\t\tcomponent: () => import(/* webpackChunkName: \"terms\" */ \"@/views/terms/Terms.vue\")\n\t\t},\n\t\t{\n\t\t\tpath: \"/\" + i18n.t(\"routes.privacypolicy.path\"),\n\t\t\tname: \"Privacypolicy\",\n\t\t\tcomponent: () => import(/* webpackChunkName: \"privacypolicy\" */ \"@/views/terms/Privacypolicy.vue\")\n\t\t},\n\t\t{\n\t\t\tpath: \"/\" + i18n.t(\"routes.cookies.path\"),\n\t\t\tname: \"Cookies\",\n\t\t\tcomponent: () => import(/* webpackChunkName: \"cookies\" */ \"@/views/terms/Cookies.vue\")\n\t\t},\n\t\t{\n\t\t\tpath: \"/\" + i18n.t(\"routes.datasafety.path\"),\n\t\t\tname: \"Datasafety\",\n\t\t\tcomponent: () => import(/* webpackChunkName: \"datasafety\" */ \"@/views/terms/Datasafety.vue\")\n\t\t},\n\t\t{\n\t\t\tpath: \"/\" + i18n.t(\"routes.contact.path\"),\n\t\t\tname: \"Contact\",\n\t\t\tcomponent: () => import(/* webpackChunkName: \"contact\" */ \"@/views/support/Contact.vue\")\n\t\t}\n\t]\n\nexport const asyncRoutes: RouteConfig[] = []\n\nconst createRouter = () => new VueRouter({\n\tmode: \"history\",\n\tscrollBehavior: (to, from, savedPosition) =>\r\n\t{\n\t\tif (savedPosition)\r\n\t\t{\n\t\t\treturn savedPosition\n\t\t}\r\n\t\telse\r\n\t\t{\n\t\t\treturn { x: 0, y: 0 }\n\t\t}\n\t},\n\tbase: process.env.BASE_URL,\n\troutes: baseRoutes\n})\n\nconst router = createRouter()\n\nrouter.afterEach((to: Route) =>\r\n{\r\n\tAppModule.HideHeaderMenu()\r\n})\n\r\nexport function resetRouter()\r\n{\r\n\tconst newRouter = createRouter();\r\n\t(router as any).matcher = (newRouter as any).matcher\r\n}\n\nexport default router\n","/*\r\n * Note: Code copied and adapted to typescript from vue-mq plugin: https://www.npmjs.com/package/vue-mq\r\n * Should to be a custom implementation.\r\n */\r\n\r\nimport json2mq from \"json2mq\"\r\n\r\n// utils.js from vue-mq\r\nfunction isArray(arg)\r\n{\r\n\treturn Object.prototype.toString.call(arg) === \"[object Array]\"\r\n}\r\n\r\n// helpers.js from vue-mq\r\nfunction convertBreakpointsToMediaQueries(breakpoints)\r\n{\r\n\tconst keys = Object.keys(breakpoints)\r\n\tconst values = keys.map(key => breakpoints[key])\r\n\tconst breakpointValues = [0, ...values.slice(0, -1)]\r\n\tconst mediaQueries = breakpointValues.reduce((sum, value, index) =>\r\n\t{\r\n\t\tconst options = Object.assign(\r\n\t\t\t{\r\n\t\t\t\tminWidth: value\r\n\t\t\t},\r\n\t\t\tindex < keys.length - 1 ? { maxWidth: breakpointValues[index + 1] - 1 } : {}\r\n\t\t)\r\n\t\tconst mediaQuery = json2mq(options)\r\n\t\treturn Object.assign(\r\n\t\t\tsum,\r\n\t\t\t{\r\n\t\t\t\t[keys[index]]: mediaQuery\r\n\t\t\t}\r\n\t\t)\r\n\t}, {})\r\n\treturn mediaQueries\r\n}\r\n\r\nfunction transformValuesFromBreakpoints(breakpoints, values, currentBreakpoint)\r\n{\r\n\tconst findClosestValue = (currentBreakpoint) =>\r\n\t{\r\n\t\tif (values[currentBreakpoint] !== undefined) return values[currentBreakpoint]\r\n\t\tconst index = breakpoints.findIndex(b => b === currentBreakpoint)\r\n\t\tconst newBreakpoint = index !== -1 || index !== 0 ? breakpoints[index - 1] : null\r\n\t\tif (!newBreakpoint) return values[index]\r\n\t\treturn values[newBreakpoint] !== undefined ? values[newBreakpoint] : findClosestValue(newBreakpoint)\r\n\t}\r\n\treturn findClosestValue(currentBreakpoint)\r\n}\r\n\r\nfunction selectBreakpoints(breakpoints, currentBreakpoint)\r\n{\r\n\tconst index = breakpoints.findIndex(b => b === currentBreakpoint)\r\n\treturn breakpoints.slice(index)\r\n}\r\n\r\nfunction subscribeToMediaQuery(mediaQuery, enter)\r\n{\r\n\tconst mql = window.matchMedia(mediaQuery)\r\n\tconst cb = ({ matches }) =>\r\n\t{\r\n\t\tif (matches) enter()\r\n\t}\r\n\tmql.addListener(cb) // subscribing\r\n\tcb(mql) // initial trigger\r\n}\r\n\r\n// component.js from vue-mq\r\nconst mqComponent = {\r\n\tprops: {\r\n\t\tmq: {\r\n\t\t\trequired: true,\r\n\t\t\ttype: [String, Array]\r\n\t\t}\r\n\t},\r\n\tcomputed: {\r\n\t\tplusModifier()\r\n\t\t{\r\n\t\t\treturn !isArray(this.mq) && this.mq.slice(-1) === \"+\"\r\n\t\t},\r\n\r\n\t\tactiveBreakpoints()\r\n\t\t{\r\n\t\t\tconst breakpoints = Object.keys(this.$mqAvailableBreakpoints)\r\n\t\t\tconst mq = this.plusModifier ? this.mq.slice(0, -1) : (isArray(this.mq) ? this.mq : [this.mq])\r\n\t\t\treturn this.plusModifier\r\n\t\t\t\t? selectBreakpoints(breakpoints, mq)\r\n\t\t\t\t: mq\r\n\t\t}\r\n\t},\r\n\trender(h, props)\r\n\t{\r\n\t\tconst shouldRenderChildren = this.activeBreakpoints.includes(this.$mq)\r\n\t\treturn shouldRenderChildren ? h(\"div\", this.$slots.default) : h()\r\n\t}\r\n}\r\n\r\n// index.js from vue-mq\r\nconst DEFAULT_BREAKPOINT = {\r\n\tmobilesmall: 375,\r\n\tmobile: 768,\r\n\ttablet: 1024,\r\n\ttablethori: 1200,\r\n\tdesktop: Infinity\r\n}\r\n\r\nconst install = function (Vue, { breakpoints = DEFAULT_BREAKPOINT, defaultBreakpoint = \"mobile\" } = {})\r\n{\r\n\tlet hasSetupListeners = false\r\n\t// Init reactive component\r\n\tconst reactorComponent = new Vue({\r\n\t\tdata: () => ({\r\n\t\t\tcurrentBreakpoint: defaultBreakpoint\r\n\t\t})\r\n\t})\r\n\tVue.filter(\"mq\", (currentBreakpoint, values) =>\r\n\t{\r\n\t\treturn transformValuesFromBreakpoints(Object.keys(breakpoints), values, currentBreakpoint)\r\n\t})\r\n\tVue.mixin({\r\n\t\tcomputed: {\r\n\t\t\t$mq()\r\n\t\t\t{\r\n\t\t\t\treturn reactorComponent.currentBreakpoint\r\n\t\t\t},\r\n\t\t\tisMobileSmall()\r\n\t\t\t{\r\n\t\t\t\treturn reactorComponent.currentBreakpoint === \"mobilesmall\"\r\n\t\t\t},\r\n\t\t\tisMobile()\r\n\t\t\t{\r\n\t\t\t\treturn reactorComponent.currentBreakpoint === \"mobile\"\r\n\t\t\t},\r\n\t\t\tisTablet()\r\n\t\t\t{\r\n\t\t\t\treturn reactorComponent.currentBreakpoint === \"tablet\"\r\n\t\t\t},\r\n\t\t\tisTabletHori()\r\n\t\t\t{\r\n\t\t\t\treturn reactorComponent.currentBreakpoint === \"tablethori\"\r\n\t\t\t},\r\n\t\t\tisDesktop()\r\n\t\t\t{\r\n\t\t\t\treturn reactorComponent.currentBreakpoint === \"desktop\"\r\n\t\t\t}\r\n\t\t},\r\n\t\tcreated()\r\n\t\t{\r\n\t\t\tif (this.$isServer) reactorComponent.currentBreakpoint = defaultBreakpoint\r\n\t\t},\r\n\t\tmounted()\r\n\t\t{\r\n\t\t\tif (!hasSetupListeners)\r\n\t\t\t{\r\n\t\t\t\tconst mediaQueries = convertBreakpointsToMediaQueries(breakpoints)\r\n\t\t\t\t// setup listeners\r\n\t\t\t\tfor (const key in mediaQueries)\r\n\t\t\t\t{\r\n\t\t\t\t\tconst mediaQuery = mediaQueries[key]\r\n\t\t\t\t\tconst enter = () =>\r\n\t\t\t\t\t{\r\n\t\t\t\t\t\treactorComponent.currentBreakpoint = key\r\n\t\t\t\t\t}\r\n\t\t\t\t\tsubscribeToMediaQuery(mediaQuery, enter)\r\n\t\t\t\t}\r\n\t\t\t\thasSetupListeners = true\r\n\t\t\t}\r\n\t\t}\r\n\t})\r\n\tVue.prototype.$mqAvailableBreakpoints = breakpoints\r\n\tVue.component(\"MqLayout\", mqComponent)\r\n}\r\n\r\nexport default { install }\r\n","import Vue from \"vue\"\r\nimport App from \"@/views/App.vue\"\r\nimport store from \"@/store\"\r\nimport router from \"@/router\"\r\nimport i18n from \"@/lang\"\r\n\r\nimport \"@/scss/global.scss\"\r\n// import \"@/scss2/main.scss\"\r\n// import \"@/scss3/main.scss\"\r\n\r\n// @ts-ignore\r\nimport mediaqueries from \"./plugins/mediaqueries\"\r\nVue.use(mediaqueries)\r\n\r\nVue.config.productionTip = false\r\n\r\nnew Vue({\r\n\trouter,\r\n\tstore,\r\n\ti18n,\r\n\trender: h => h(App)\r\n}).$mount(\"#app\")\r\n"],"sourceRoot":""}