{"version":3,"sources":["webpack:///./modules/HighlightedTeaser.ts"],"names":["__webpack_require__","r","__webpack_exports__","HighlightedTeaser","element","_this","this","highlightedTeaser","teaser","querySelector","header","document","site","closest","body","Eucerin","isDesktop","style","overflow","overflowX","stickyHighlightedTeaser","addEventListener","setup","selector","Array","from","querySelectorAll","filter","node","dataset","moduleInitialized","forEach","prototype","boundingClientRect","getBoundingClientRect","classList","contains","topOfTeaser","top","initSticky"],"mappings":"2FAAAA,EAAAC,EAAAC,GAAA,IAEAC,EAAA,WAmBI,SAAAA,EAAmBC,GAAnB,IAAAC,EAAAC,KAAmBA,KAAAF,UACfE,KAAKC,kBAAoBD,KAAKF,QAC9BE,KAAKE,OAASF,KAAKF,QAAQK,cAAc,+BACzCH,KAAKI,OAASC,SAASF,cAAc,YAAcE,SAASF,cAAc,UAC1EH,KAAKM,KAAON,KAAKF,QAAQS,QAAQ,SACjCP,KAAKQ,KAAOR,KAAKF,QAAQS,QAAQ,QAC7BP,KAAKE,QAAUO,QAAQC,YACvBV,KAAKM,KAAKK,MAAMC,SAAW,UAC3BZ,KAAKQ,KAAKG,MAAME,UAAY,SAC5Bb,KAAKC,kBAAkBM,QAAQ,aAAeP,KAAKC,kBAAkBM,QAAQ,WAAWI,MAAQ,2BAChGX,KAAKc,0BACLT,SAASU,iBAAiB,SAAU,WAChChB,EAAKe,6BAsBrB,OA1CWjB,EAAAmB,MAAP,SAAaC,QAAA,IAAAA,MAbM,qCAefC,MAAMC,KAAKd,SAASe,iBAAiBH,IAAWI,OAAO,SAACC,GAAsB,OAACA,EAAKC,QAAQC,oBAAmBC,QAAQ,SAAC3B,GACpH,IAAID,EAAkBC,GACtBA,EAAQyB,QAAQC,kBAAoB,UAqBpC3B,EAAA6B,UAAAZ,wBAAR,WACId,KAAK2B,mBAAqB3B,KAAKC,kBAAkB2B,wBAC7C5B,KAAKI,OAAOyB,UAAUC,SAAS,kBAC/B9B,KAAK+B,YAAc/B,KAAK2B,mBAAmBK,IAAM,GACjDhC,KAAKgC,IAAM,KAEXhC,KAAK+B,YAAc/B,KAAK2B,mBAAmBK,IAAM,GACjDhC,KAAKgC,IAAM,IAEfhC,KAAKiC,cAGDpC,EAAA6B,UAAAO,WAAR,WACQjC,KAAK+B,YAAc,IACnB/B,KAAKC,kBAAkBU,MAAMqB,IAAMhC,KAAKgC,IAAM,OAG1DnC,EArDA,eAuDA,IAAIA,EAAkBmB","file":"./modules/HighlightedTeaser.c2b9a12c.js","sourcesContent":["const moduleSelector = '[data-module=\"HighlightedTeaser\"]';\r\n\r\nexport default class HighlightedTeaser {\r\n    header: HTMLElement;\r\n    offsetHeader: number;\r\n    teaser: HTMLElement;\r\n    highlightedTeaser;\r\n    boundingClientRect\r\n    topOfTeaser;\r\n    top;\r\n    site;\r\n    body;\r\n\r\n    static setup(selector: string = moduleSelector): void {\r\n\r\n        Array.from(document.querySelectorAll(selector)).filter((node: HTMLElement) => !node.dataset.moduleInitialized).forEach((element: HTMLElement) => {\r\n            new HighlightedTeaser(element);\r\n            element.dataset.moduleInitialized = 'true';\r\n        });\r\n    }\r\n\r\n    constructor(public element: HTMLElement) {\r\n        this.highlightedTeaser = this.element;\r\n        this.teaser = this.element.querySelector('.highlighted-teaser .teaser');\r\n        this.header = document.querySelector('.header') || document.querySelector('header');\r\n        this.site = this.element.closest(\"#site\");\r\n        this.body = this.element.closest(\"body\");\r\n        if (this.teaser && Eucerin.isDesktop) {\r\n            this.site.style.overflow = \"visible\";\r\n            this.body.style.overflowX = \"hidden\";\r\n            this.highlightedTeaser.closest(\".cp-row\") && (this.highlightedTeaser.closest(\".cp-row\").style = \"align-items: flex-start\");\r\n            this.stickyHighlightedTeaser();\r\n            document.addEventListener('scroll', () => {\r\n                this.stickyHighlightedTeaser();\r\n            });\r\n        }\r\n    }\r\n\r\n    private stickyHighlightedTeaser() {\r\n        this.boundingClientRect = this.highlightedTeaser.getBoundingClientRect();\r\n        if (this.header.classList.contains('legacy-header')) {\r\n            this.topOfTeaser = this.boundingClientRect.top - 62;\r\n            this.top = 62\r\n        } else {\r\n            this.topOfTeaser = this.boundingClientRect.top - 10;\r\n            this.top = 10\r\n        }\r\n        this.initSticky()\r\n\r\n    }\r\n    private initSticky() {\r\n        if (this.topOfTeaser < 0) {\r\n            this.highlightedTeaser.style.top = this.top + 'px';\r\n        }\r\n    }\r\n}\r\n\r\nnew HighlightedTeaser.setup();\r\n\r\n\r\n"],"sourceRoot":""}