{"version":3,"file":"google-tag-manager.min.js","names":["GoogleTagManager","Component","constructor","el","_defineProperty","consentTypes","JSON","parse","$el","dataset","registerEventListeners","EventBus","getInstance","addEventListener","e","sendPromotionClick","detail","name","id","onCookiesConsentStored","translateBoolToConsent","bool","ev","consents","forEach","t","consent","sendEvent","toArguments","event","arguments","location","ecommerce","window","dataLayer","push"],"sources":["components/analytics/google-tag-manager/google-tag-manager.js"],"sourcesContent":["class GoogleTagManager extends Component {\n\n /**\n * @type {{id: number, name: string}[]}\n */\n consentTypes = []\n\n constructor(el) {\n super(el);\n\n this.consentTypes = JSON.parse(this.$el.dataset.consentTypes);\n this.registerEventListeners();\n }\n\n registerEventListeners() {\n EventBus.getInstance().addEventListener('homeSliderClicked', (e) => this.sendPromotionClick(e.detail.name, e.detail.id, 'HOMEPAGE'));\n EventBus.getInstance().addEventListener('cookiesConsentStored', (e) => this.onCookiesConsentStored(e.detail));\n }\n\n translateBoolToConsent(bool) {\n return bool ? 'granted' : 'denied';\n }\n\n /**\n * @param {{consent: number}} ev\n */\n onCookiesConsentStored(ev) {\n const consents = {};\n this.consentTypes.forEach(t => consents[t.name] = this.translateBoolToConsent(t.id === (t.id & ev.consent)));\n this.sendEvent(this.toArguments('consent', 'update', consents));\n this.sendEvent({event: 'consent_updated'})\n }\n\n toArguments() {\n return arguments;\n }\n\n sendPromotionClick(name, id, location) {\n const event = {\n 'event': 'ecc_promotion_click',\n 'ecommerce': {\n 'promoClick': {\n 'promotions': [\n {\n 'id': id,\n 'name': name,\n 'position': location\n }]\n }\n },\n };\n this.sendEvent({ecommerce: null});\n this.sendEvent(event);\n }\n\n sendEvent(event) {\n window.dataLayer = window.dataLayer || [];\n window.dataLayer.push(event);\n }\n\n}\n"],"mappings":"mpBAAA,KAAM,CAAAA,gBAAgB,QAAS,CAAAC,SAAU,CAOrCC,WAAWA,CAACC,EAAE,CAAE,CACZ,KAAK,CAACA,EAAE,CAAC,CAACC,eAAA,qBAHC,EAAE,EAKb,IAAI,CAACC,YAAY,CAAGC,IAAI,CAACC,KAAK,CAAC,IAAI,CAACC,GAAG,CAACC,OAAO,CAACJ,YAAY,CAAC,CAC7D,IAAI,CAACK,sBAAsB,EAC/B,CAEAA,sBAAsBA,CAAA,CAAG,CACrBC,QAAQ,CAACC,WAAW,EAAE,CAACC,gBAAgB,CAAC,mBAAmB,CAAGC,CAAC,EAAK,IAAI,CAACC,kBAAkB,CAACD,CAAC,CAACE,MAAM,CAACC,IAAI,CAAEH,CAAC,CAACE,MAAM,CAACE,EAAE,CAAE,UAAU,CAAC,CAAC,CACpIP,QAAQ,CAACC,WAAW,EAAE,CAACC,gBAAgB,CAAC,sBAAsB,CAAGC,CAAC,EAAK,IAAI,CAACK,sBAAsB,CAACL,CAAC,CAACE,MAAM,CAAC,CAChH,CAEAI,sBAAsBA,CAACC,IAAI,CAAE,CACzB,MAAO,CAAAA,IAAI,CAAG,SAAS,CAAG,QAC9B,CAKAF,sBAAsBA,CAACG,EAAE,CAAE,CACvB,KAAM,CAAAC,QAAQ,CAAG,CAAC,CAAC,CACnB,IAAI,CAAClB,YAAY,CAACmB,OAAO,CAACC,CAAC,EAAIF,QAAQ,CAACE,CAAC,CAACR,IAAI,CAAC,CAAG,IAAI,CAACG,sBAAsB,CAACK,CAAC,CAACP,EAAE,IAAMO,CAAC,CAACP,EAAE,CAAGI,EAAE,CAACI,OAAO,CAAC,CAAC,CAAC,CAC5G,IAAI,CAACC,SAAS,CAAC,IAAI,CAACC,WAAW,CAAC,SAAS,CAAE,QAAQ,CAAEL,QAAQ,CAAC,CAAC,CAC/D,IAAI,CAACI,SAAS,CAAC,CAACE,KAAK,CAAE,iBAAiB,CAAC,CAC7C,CAEAD,WAAWA,CAAA,CAAG,CACV,MAAO,CAAAE,SACX,CAEAf,kBAAkBA,CAACE,IAAI,CAAEC,EAAE,CAAEa,QAAQ,CAAE,CACnC,KAAM,CAAAF,KAAK,CAAG,CACV,OAAO,CAAE,qBAAqB,CAC9B,WAAW,CAAE,CACT,YAAY,CAAE,CACV,YAAY,CAAE,CACV,CACI,IAAI,CAAEX,EAAE,CACR,MAAM,CAAED,IAAI,CACZ,UAAU,CAAEc,QAChB,CAAC,CACT,CACJ,CACJ,CAAC,CACD,IAAI,CAACJ,SAAS,CAAC,CAACK,SAAS,CAAE,IAAI,CAAC,CAAC,CACjC,IAAI,CAACL,SAAS,CAACE,KAAK,CACxB,CAEAF,SAASA,CAACE,KAAK,CAAE,CACbI,MAAM,CAACC,SAAS,CAAGD,MAAM,CAACC,SAAS,EAAI,EAAE,CACzCD,MAAM,CAACC,SAAS,CAACC,IAAI,CAACN,KAAK,CAC/B,CAEJ"}