{"version":3,"sources":["webpack://ftfa/webpack/runtime/load script","webpack://ftfa/./Src/Scripts/architecture/componentRepository.js","webpack://ftfa/./Src/Scripts/helpers/ScrollHelper.js","webpack://ftfa/./Src/Scripts/helpers/gtm.js","webpack://ftfa/webpack/bootstrap","webpack://ftfa/webpack/runtime/define property getters","webpack://ftfa/webpack/runtime/ensure chunk","webpack://ftfa/webpack/runtime/get javascript chunk filename","webpack://ftfa/webpack/runtime/global","webpack://ftfa/webpack/runtime/hasOwnProperty shorthand","webpack://ftfa/webpack/runtime/make namespace object","webpack://ftfa/webpack/runtime/publicPath","webpack://ftfa/webpack/runtime/jsonp chunk loading","webpack://ftfa/./Src/Scripts/index.js"],"names":["inProgress","dataWebpackPrefix","constructor","componentSourceMap","this","componentClassPromiseMap","globalInstances","loadedComponents","initializedPromiseResolve","initializedPromiseReject","initializedPromise","Promise","resolve","reject","componentKey","document","querySelector","loadComponentClass","load","loadComponentsPromiseArray","querySelectorAll","forEach","c","getAttribute","componentId","componentArgs","loadPromise","then","Component","args","JSON","parse","newComponentInstance","push","catch","error","console","warn","all","key","componentLoad","default","getGlobalInstance","instanceId","undefined","getInstancesOfType","elm","nug","window","location","hash","init","event","scrollTo","focus","classList","contains","remove","ariaExpanded","dataset","gtmEvent","add","offsetTop","addEventListener","item","cr","search","close","e","old","scrollY","currentTarget","parentNode","id","setTimeout","select","getSelection","getId","nodeName","itemAnchor","baseNode","type","parent","extentNode","pos","getRangeAt","getBoundingClientRect","child","createElement","style","cssText","left","width","innerHTML","preventDefault","el","value","href","setAttribute","position","body","appendChild","execCommand","removeChild","dataLayer","length","uforms","accordion","top","referrer","toLowerCase","includes","target","uformGtmTracking","formName","FormName","formId","FormId","formIdNormalized","replace","getElementsByClassName","getElementsByTagName","checked","templateName","uform","onsubmit","__webpack_module_cache__","__webpack_require__","moduleId","exports","module","__webpack_modules__","call","m","d","definition","o","Object","defineProperty","enumerable","get","f","chunkId","keys","reduce","promises","u","g","globalThis","Function","obj","prop","prototype","hasOwnProperty","l","url","done","script","needAttach","scripts","i","s","charset","timeout","nc","src","onScriptComplete","prev","onerror","onload","clearTimeout","doneFns","fn","bind","head","r","Symbol","toStringTag","p","installedChunks","j","installedChunkData","promise","Error","errorType","realSrc","message","name","request","chunkLoadingGlobal","parentChunkLoadingFunction","data","chunkIds","moreModules","runtime","resolves","shift","ComponentRepository","header","accordions","video","share","chat","calculator","ScrollHelper","GtmHelper"],"mappings":"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","file":"ftfa.bundle.js","sourcesContent":["var inProgress = {};\nvar dataWebpackPrefix = \"ftfa:\";\n// loadScript function to load a script via script tag\n__webpack_require__.l = (url, done, key) => {\n\tif(inProgress[url]) { inProgress[url].push(done); return; }\n\tvar script, needAttach;\n\tif(key !== undefined) {\n\t\tvar scripts = document.getElementsByTagName(\"script\");\n\t\tfor(var i = 0; i < scripts.length; i++) {\n\t\t\tvar s = scripts[i];\n\t\t\tif(s.getAttribute(\"src\") == url || s.getAttribute(\"data-webpack\") == dataWebpackPrefix + key) { script = s; break; }\n\t\t}\n\t}\n\tif(!script) {\n\t\tneedAttach = true;\n\t\tscript = document.createElement('script');\n\n\t\tscript.charset = 'utf-8';\n\t\tscript.timeout = 120;\n\t\tif (__webpack_require__.nc) {\n\t\t\tscript.setAttribute(\"nonce\", __webpack_require__.nc);\n\t\t}\n\t\tscript.setAttribute(\"data-webpack\", dataWebpackPrefix + key);\n\t\tscript.src = url;\n\t}\n\tinProgress[url] = [done];\n\tvar onScriptComplete = (prev, event) => {\n\t\t// avoid mem leaks in IE.\n\t\tscript.onerror = script.onload = null;\n\t\tclearTimeout(timeout);\n\t\tvar doneFns = inProgress[url];\n\t\tdelete inProgress[url];\n\t\tscript.parentNode && script.parentNode.removeChild(script);\n\t\tdoneFns && doneFns.forEach((fn) => fn(event));\n\t\tif(prev) return prev(event);\n\t}\n\t;\n\tvar timeout = setTimeout(onScriptComplete.bind(null, undefined, { type: 'timeout', target: script }), 120000);\n\tscript.onerror = onScriptComplete.bind(null, script.onerror);\n\tscript.onload = onScriptComplete.bind(null, script.onload);\n\tneedAttach && document.head.appendChild(script);\n};","export default class ComponentRepository {\r\n constructor(componentSourceMap) {\r\n // The property name is the key used to instantiate the component.\r\n // The property value is the path of the file (navigated from the scripts folder) excluded the file ending.\r\n // The order they appear in the sourcemap will affect the order they are instantiated in.\r\n // Shared components should generally be instantiated before controllers.\r\n this.componentSourceMap = componentSourceMap;\r\n\r\n this.componentClassPromiseMap = {}; // Will hold promises for all for classes needed to instantiate components\r\n this.globalInstances = {}; // Will hold components with a data-component-id, that can be queried globally\r\n this.loadedComponents = {}; // Will hold all loaded component instances\r\n\r\n // initializedPromise will resolve when the load function has run and all components have been initialized.\r\n this.initializedPromiseResolve = null;\r\n this.initializedPromiseReject = null;\r\n this.initializedPromise = new Promise((resolve, reject) => {\r\n this.initializedPromiseResolve = resolve;\r\n this.initializedPromiseReject = reject;\r\n });\r\n\r\n // Load all classes required for the components on the current page.\r\n for (const componentKey in this.componentSourceMap) {\r\n if (document.querySelector('[data-component=\"' + componentKey + '\"]')) {\r\n this.loadComponentClass(componentKey);\r\n }\r\n }\r\n\r\n this.load();\r\n }\r\n\r\n /*\r\n * Iterates all elements in the DOM with the 'data-component' attribute,\r\n * and instantiates the corresponding component.\r\n * Returns a promise that will resolve when all components have been instantiated or have failed.\r\n */\r\n load() {\r\n const loadComponentsPromiseArray = [];\r\n\r\n document.querySelectorAll('[data-component]').forEach(c => {\r\n const componentKey = c.getAttribute('data-component');\r\n const componentId = c.getAttribute('data-component-id');\r\n const componentArgs = c.getAttribute('data-component-args');\r\n\r\n\r\n\r\n if (this.componentClassPromiseMap[componentKey]) {\r\n const loadPromise = new Promise((resolve, reject) => {\r\n this.componentClassPromiseMap[componentKey]\r\n .then(Component => {\r\n let args = null;\r\n if (componentArgs) {\r\n args = JSON.parse(componentArgs);\r\n }\r\n\r\n const newComponentInstance = new Component(c, args);\r\n\r\n if (!this.loadedComponents[componentKey]) {\r\n this.loadedComponents[componentKey] = [];\r\n }\r\n this.loadedComponents[componentKey].push(newComponentInstance);\r\n\r\n // If the component has a component ID, add it to globalInstances\r\n if (componentId) {\r\n this.globalInstances[componentId] = newComponentInstance;\r\n }\r\n\r\n resolve(newComponentInstance);\r\n })\r\n .catch(error => {\r\n console.error('Error instantiating component: ', componentKey, error);\r\n reject();\r\n });\r\n });\r\n loadComponentsPromiseArray.push(loadPromise);\r\n } else {\r\n console.warn('unable to find component: ', componentKey);\r\n console.warn(c);\r\n }\r\n });\r\n\r\n return Promise.all(loadComponentsPromiseArray)\r\n .then(() => {\r\n this.initializedPromiseResolve();\r\n });\r\n }\r\n\r\n /**\r\n * Returns a promise that will eventually resolve with\r\n * the class corresponsing the component key.\r\n */\r\n loadComponentClass(key) {\r\n if (this.componentClassPromiseMap[key]) {\r\n return this.componentClassPromiseMap[key];\r\n }\r\n\r\n this.componentClassPromiseMap[key] = this.componentSourceMap[key]()\r\n .then(componentLoad => {\r\n return componentLoad.default;\r\n });\r\n return this.componentClassPromiseMap[key];\r\n }\r\n\r\n\r\n /**\r\n * Returns a promise that will eventually resolve with\r\n * a specific instance of a component, based on its ID.\r\n */\r\n getGlobalInstance(instanceId) {\r\n return this.initializedPromise\r\n .then(() => {\r\n return instanceId ? this.globalInstances[instanceId] : undefined;\r\n });\r\n }\r\n\r\n\r\n /**\r\n * Returns a promise that will eventually resolve with\r\n * all instances of a specific type.\r\n */\r\n getInstancesOfType(key) {\r\n return this.initializedPromise\r\n .then(() => {\r\n return this.loadedComponents[key];\r\n });\r\n }\r\n}\r\n","export default class ScrollHelper {\r\n constructor() {\r\n this.elm = undefined;\r\n this.nug = 300;\r\n\r\n if (window.location.hash !== '') {\r\n this.init();\r\n }\r\n \r\n this.event();\r\n }\r\n\r\n init() {\r\n this.elm = document.querySelector(window.location.hash);\r\n\r\n if (!this.elm) {\r\n return;\r\n }\r\n\r\n window.scrollTo(0, 0);\r\n this.elm.focus();\r\n\r\n if (this.elm.classList.contains('accordion-item')) {\r\n this.elm.querySelector('.accordion-button').classList.remove('collapsed');\r\n this.elm.querySelector('.accordion-button').ariaExpanded = true;\r\n this.elm.querySelector('.accordion-button').dataset.gtmEvent = 'faq-section-closed';\r\n this.elm.querySelector('.accordion-collapse').classList.add('show');\r\n }\r\n\r\n window.scrollTo(0, this.elm.offsetTop - this.nug);\r\n\r\n window.addEventListener('hashchange', () => {\r\n this.elm = document.querySelector(window.location.hash);\r\n\r\n if (!this.elm) {\r\n return;\r\n }\r\n\r\n window.scrollTo(0, 0);\r\n this.elm.focus();\r\n\r\n if (this.elm.classList.contains('accordion-item')) {\r\n document.querySelectorAll('.accordion-item').forEach(item => {\r\n item.querySelector('.accordion-button').classList.add('collapsed');\r\n item.querySelector('.accordion-button').ariaExpanded = false;\r\n item.querySelector('.accordion-button').dataset.gtmEvent = 'faq-section-open';\r\n item.querySelector('.accordion-collapse').classList.remove('show');\r\n });\r\n\r\n this.elm.querySelector('.accordion-button').classList.remove('collapsed');\r\n this.elm.querySelector('.accordion-button').ariaExpanded = true;\r\n this.elm.querySelector('.accordion-button').dataset.gtmEvent = 'faq-section-closed';\r\n this.elm.querySelector('.accordion-collapse').classList.add('show');\r\n\r\n window.cr.loadedComponents['header'][0].search.close();\r\n window.cr.loadedComponents['mobile-header'][0].search.close();\r\n }\r\n\r\n window.scrollTo(0, this.elm.offsetTop - this.nug);\r\n });\r\n }\r\n\r\n event() {\r\n document.querySelectorAll('.accordion-button').forEach(item => {\r\n item.addEventListener('click', e => {\r\n const old = window.scrollY;\r\n\r\n window.location.hash = e.currentTarget.parentNode.parentNode.id;\r\n\r\n window.scrollTo(0, old);\r\n\r\n this.elm = document.querySelector(window.location.hash);\r\n\r\n setTimeout(() => window.scrollTo(0, this.elm.offsetTop - this.nug), 300);\r\n });\r\n });\r\n\r\n document.addEventListener('selectionchange', () => {\r\n const select = document.getSelection();\r\n const getId = (elm) => {\r\n if (!elm) return undefined;\r\n if (elm.nodeName && elm.nodeName === 'SECTION') return undefined;\r\n\r\n if (elm.dataset && elm.dataset.itemAnchor && elm.dataset.itemAnchor !== '') {\r\n return elm.dataset.itemAnchor;\r\n }\r\n\r\n return getId(elm.parentNode);\r\n };\r\n\r\n if (getId(select.baseNode) === 'selction-helper') {\r\n return;\r\n } else if (document.querySelector('#selction-helper')) {\r\n setTimeout(function () {\r\n if (document.querySelector('#selction-helper')) document.querySelector('#selction-helper').remove() }, 200);\r\n }\r\n\r\n if (select.baseNode === undefined || select.type !== 'Range') return;\r\n\r\n const id = getId(select.baseNode);\r\n if (id === undefined) return;\r\n\r\n const parent = select.extentNode.parentNode;\r\n const pos = select.getRangeAt(0).getBoundingClientRect();\r\n const child = document.createElement('DIV');\r\n child.style.cssText = 'position: absolute;top:'+(parent.offsetTop-58)+'px;left:'+(pos.left + (pos.width / 2)) +'px;background: black;color: #FFF;padding: 10px';\r\n child.id = 'selction-helper';\r\n child.innerHTML = 'Kopier link';\r\n child.addEventListener('click', e => {\r\n e.preventDefault();\r\n window.location.hash = id;\r\n this.elm = document.querySelector(window.location.hash);\r\n setTimeout(() => window.scrollTo(0, this.elm.offsetTop - this.nug), 300);\r\n\r\n const el = document.createElement('textarea');\r\n el.value = window.location.href;\r\n el.setAttribute('readonly', '');\r\n el.style.position = 'absolute';\r\n el.style.left = '-9999px';\r\n document.body.appendChild(el);\r\n el.select();\r\n document.execCommand('copy');\r\n document.body.removeChild(el);\r\n\r\n document.querySelector('#selction-helper').remove();\r\n });\r\n\r\n document.body.appendChild(child);\r\n });\r\n }\r\n}\r\n","export default class GtmHelper {\r\n constructor() {\r\n if (!window.dataLayer) {\r\n window.dataLayer = [];\r\n\r\n }\r\n\r\n if (document.querySelectorAll('form').length) {\r\n\r\n this.uforms();\r\n\r\n }\r\n\r\n if (document.querySelector('.accordion')) {\r\n this.accordion();\r\n }\r\n\r\n // checking if a membership has been successful\r\n if (top.window.document.referrer.toLowerCase().includes('dms.ftfa.dk')) {\r\n window.dataLayer.push({ 'event': 'new_member' });\r\n }\r\n }\r\n\r\n\r\n accordion() {\r\n document.querySelectorAll('.accordion-button').forEach(item => {\r\n item.addEventListener('click', e => {\r\n if (e.target.dataset.gtmEvent === 'faq-section-opened') {\r\n e.target.dataset.gtmEvent = 'faq-section-closed';\r\n } else {\r\n e.target.dataset.gtmEvent = 'faq-section-opened';\r\n }\r\n });\r\n });\r\n }\r\n\r\n // umbraco forms tracking\r\n uforms() {\r\n document.querySelectorAll('form').forEach(uform => {\r\n\r\n uform.onsubmit = uformGtmTracking;\r\n \r\n });\r\n\r\n function uformGtmTracking(e)\r\n {\r\n e.preventDefault();\r\n var formName = e.target.FormName.value;\r\n var formId = e.target.FormId.value\r\n var formIdNormalized = document.querySelector(\"#umbraco_form_\" + formId.replace(/-/g, ''));\r\n // check if there are validation errors\r\n if (formIdNormalized.getElementsByClassName('dataconsent')[0].getElementsByTagName('input')[0].checked && !formIdNormalized.getElementsByClassName('field-validation-error').length) { \r\n \r\n var templateName = formIdNormalized.getElementsByClassName(\"templatename\")[0].getElementsByClassName(\"hidden\")[0].value;\r\n // var name = formIdNormalized.getElementsByClassName(\"name\")[0].getElementsByClassName(\"text\")[0].value;\r\n\r\n // pushing which form is submitted\r\n window.dataLayer.push({\r\n 'event': templateName,\r\n 'formVariant': formName\r\n });\r\n \r\n // rest of tracking\r\n }\r\n \r\n\r\n\r\n }\r\n\r\n\r\n }\r\n}\r\n","// The module cache\nvar __webpack_module_cache__ = {};\n\n// The require function\nfunction __webpack_require__(moduleId) {\n\t// Check if module is in cache\n\tif(__webpack_module_cache__[moduleId]) {\n\t\treturn __webpack_module_cache__[moduleId].exports;\n\t}\n\t// Create a new module (and put it into the cache)\n\tvar module = __webpack_module_cache__[moduleId] = {\n\t\t// no module.id needed\n\t\t// no module.loaded needed\n\t\texports: {}\n\t};\n\n\t// Execute the module function\n\t__webpack_modules__[moduleId].call(module.exports, module, module.exports, __webpack_require__);\n\n\t// Return the exports of the module\n\treturn module.exports;\n}\n\n// expose the modules object (__webpack_modules__)\n__webpack_require__.m = __webpack_modules__;\n\n","// define getter functions for harmony exports\n__webpack_require__.d = (exports, definition) => {\n\tfor(var key in definition) {\n\t\tif(__webpack_require__.o(definition, key) && !__webpack_require__.o(exports, key)) {\n\t\t\tObject.defineProperty(exports, key, { enumerable: true, get: definition[key] });\n\t\t}\n\t}\n};","__webpack_require__.f = {};\n// This file contains only the entry chunk.\n// The chunk loading function for additional chunks\n__webpack_require__.e = (chunkId) => {\n\treturn Promise.all(Object.keys(__webpack_require__.f).reduce((promises, key) => {\n\t\t__webpack_require__.f[key](chunkId, promises);\n\t\treturn promises;\n\t}, []));\n};","// This function allow to reference async chunks\n__webpack_require__.u = (chunkId) => {\n\t// return url for filenames based on template\n\treturn \"\" + chunkId + \".\" + {\"1\":\"ce69b55b7627abdca5a9\",\"27\":\"62e1d6b7c59ec13adb51\",\"29\":\"f495336e63fd7f052410\",\"161\":\"af2f4d663f8755812317\",\"205\":\"0bf7bd89a873c070c86f\",\"253\":\"c59c60f6492cda6e55bf\",\"268\":\"d105c753b87a5a5c71b9\",\"314\":\"2ae7ea0936f5f83f26f3\",\"333\":\"0195cd25be355777147c\",\"358\":\"93e5dc139c31bcd4d6f5\",\"368\":\"c758c3c80c6beee8be6b\",\"461\":\"d711f07bf5622acc3177\",\"489\":\"01f1d12aa9aebe6d29ee\",\"501\":\"c72f95e383f705e68d98\",\"535\":\"357043a25f6549b2db58\",\"580\":\"d6444702f9ca04e40af1\",\"720\":\"26eb289c6704ae4651d2\",\"742\":\"9f26534eca27ee1adf11\",\"743\":\"fe928252c010a43780bb\",\"745\":\"e1bc9d860ec4e9e43502\",\"766\":\"13c1ca964cc1c7ad63dc\",\"790\":\"f17829798ec56eaff9c0\",\"834\":\"0b2aaf643126e0ce33df\",\"847\":\"20462bd9a009bea3bc97\",\"898\":\"b69de56be7e0265d5ac4\",\"974\":\"7bdbcf795dc6abff84df\"}[chunkId] + \".js\";\n};","__webpack_require__.g = (function() {\n\tif (typeof globalThis === 'object') return globalThis;\n\ttry {\n\t\treturn this || new Function('return this')();\n\t} catch (e) {\n\t\tif (typeof window === 'object') return window;\n\t}\n})();","__webpack_require__.o = (obj, prop) => Object.prototype.hasOwnProperty.call(obj, prop)","// define __esModule on exports\n__webpack_require__.r = (exports) => {\n\tif(typeof Symbol !== 'undefined' && Symbol.toStringTag) {\n\t\tObject.defineProperty(exports, Symbol.toStringTag, { value: 'Module' });\n\t}\n\tObject.defineProperty(exports, '__esModule', { value: true });\n};","__webpack_require__.p = \"/Dest/Scripts/\";","// no baseURI\n\n// object to store loaded and loading chunks\n// undefined = chunk not loaded, null = chunk preloaded/prefetched\n// Promise = chunk loading, 0 = chunk loaded\nvar installedChunks = {\n\t746: 0\n};\n\n\n__webpack_require__.f.j = (chunkId, promises) => {\n\t\t// JSONP chunk loading for javascript\n\t\tvar installedChunkData = __webpack_require__.o(installedChunks, chunkId) ? installedChunks[chunkId] : undefined;\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\tif(true) { // all chunks have JS\n\t\t\t\t\t// setup Promise in chunk cache\n\t\t\t\t\tvar promise = new Promise((resolve, reject) => {\n\t\t\t\t\t\tinstalledChunkData = installedChunks[chunkId] = [resolve, reject];\n\t\t\t\t\t});\n\t\t\t\t\tpromises.push(installedChunkData[2] = promise);\n\n\t\t\t\t\t// start chunk loading\n\t\t\t\t\tvar url = __webpack_require__.p + __webpack_require__.u(chunkId);\n\t\t\t\t\t// create error before stack unwound to get useful stacktrace later\n\t\t\t\t\tvar error = new Error();\n\t\t\t\t\tvar loadingEnded = (event) => {\n\t\t\t\t\t\tif(__webpack_require__.o(installedChunks, chunkId)) {\n\t\t\t\t\t\t\tinstalledChunkData = installedChunks[chunkId];\n\t\t\t\t\t\t\tif(installedChunkData !== 0) installedChunks[chunkId] = undefined;\n\t\t\t\t\t\t\tif(installedChunkData) {\n\t\t\t\t\t\t\t\tvar errorType = event && (event.type === 'load' ? 'missing' : event.type);\n\t\t\t\t\t\t\t\tvar realSrc = event && event.target && event.target.src;\n\t\t\t\t\t\t\t\terror.message = 'Loading chunk ' + chunkId + ' failed.\\n(' + errorType + ': ' + realSrc + ')';\n\t\t\t\t\t\t\t\terror.name = 'ChunkLoadError';\n\t\t\t\t\t\t\t\terror.type = errorType;\n\t\t\t\t\t\t\t\terror.request = realSrc;\n\t\t\t\t\t\t\t\tinstalledChunkData[1](error);\n\t\t\t\t\t\t\t}\n\t\t\t\t\t\t}\n\t\t\t\t\t};\n\t\t\t\t\t__webpack_require__.l(url, loadingEnded, \"chunk-\" + chunkId);\n\t\t\t\t} else installedChunks[chunkId] = 0;\n\t\t\t}\n\t\t}\n};\n\n// no prefetching\n\n// no preloaded\n\n// no HMR\n\n// no HMR manifest\n\n// no deferred startup\n\n// install a JSONP callback for chunk loading\nvar webpackJsonpCallback = (data) => {\n\tvar [chunkIds, moreModules, runtime] = data;\n\t// add \"moreModules\" to the modules object,\n\t// then flag all \"chunkIds\" as loaded and fire callback\n\tvar moduleId, chunkId, i = 0, resolves = [];\n\tfor(;i < chunkIds.length; i++) {\n\t\tchunkId = chunkIds[i];\n\t\tif(__webpack_require__.o(installedChunks, chunkId) && installedChunks[chunkId]) {\n\t\t\tresolves.push(installedChunks[chunkId][0]);\n\t\t}\n\t\tinstalledChunks[chunkId] = 0;\n\t}\n\tfor(moduleId in moreModules) {\n\t\tif(__webpack_require__.o(moreModules, moduleId)) {\n\t\t\t__webpack_require__.m[moduleId] = moreModules[moduleId];\n\t\t}\n\t}\n\tif(runtime) runtime(__webpack_require__);\n\tparentChunkLoadingFunction(data);\n\twhile(resolves.length) {\n\t\tresolves.shift()();\n\t}\n\n}\n\nvar chunkLoadingGlobal = globalThis[\"webpackChunkftfa\"] = globalThis[\"webpackChunkftfa\"] || [];\nvar parentChunkLoadingFunction = chunkLoadingGlobal.push.bind(chunkLoadingGlobal);\nchunkLoadingGlobal.push = webpackJsonpCallback;","import ComponentRepository from './architecture/componentRepository';\r\nimport GtmHelper from './helpers/gtm';\r\nimport ScrollHelper from './helpers/ScrollHelper';\r\n\r\ndocument.addEventListener('DOMContentLoaded', function () {\r\n window.cr = new ComponentRepository({\r\n header: () => import('./components/top-navigation'),\r\n 'mobile-header': () => import('./components/mobile-header'),\r\n accordions: () => import('bootstrap/js/src/collapse'),\r\n 'hero-swiper': () => import('./components/hero-swiper'),\r\n 'short-content-swiper': () =>\r\n import('./components/short-content-swiper'),\r\n video: () => import('./components/video'),\r\n 'image-gallery': () => import('./components/image-gallery'),\r\n search: () => import('./components/search'),\r\n 'card-slider': () => import('./components/card-slider'),\r\n 'news-overview': () => import('./components/news-overview'),\r\n 'events-overview': () => import('./components/events-overview'),\r\n share: () => import('./components/share'),\r\n 'signup-event': () => import('./components/signup-event'),\r\n 'annual-index': () => import('./components/annual-index'),\r\n chat: () => import('./components/chat'),\r\n calculator: () => import('./components/calculator'),\r\n 'jobmakker-barba': () =>\r\n import('./components/jobmakker/jobmakker-barba'),\r\n 'jobmakker-jobapplication': () =>\r\n import('./components/jobmakker/jobmakker-jobapplication'),\r\n 'jobmakker-auth-form': () =>\r\n import('./components/jobmakker/jobmakker-auth-form'),\r\n 'jobmakker-instant-feedback-jobapplication': () =>\r\n import(\r\n './components/jobmakker/jobmakker-instant-feedback-jobapplication'\r\n ),\r\n 'jobmakker-competence-profile': () =>\r\n import(\r\n './components/jobmakker/jobmakker-competence-profile'\r\n ),\r\n 'jobmakker-instant-feedback-cv': () =>\r\n import(\r\n './components/jobmakker/jobmakker-instant-feedback-cv'\r\n ),\r\n });\r\n\r\n new ScrollHelper();\r\n new GtmHelper();\r\n});\r\n"],"sourceRoot":""}