{"version":3,"sources":["webpack:///./modules/ReadMore.ts"],"names":["__webpack_require__","r","__webpack_exports__","ReadMore","element","_this","this","readMoreBtn","querySelector","shouldReadMoreInit","classList","add","addEventListener","showText","document","reinintOnResize","setup","selector","Array","from","querySelectorAll","filter","node","dataset","moduleInitialized","forEach","prototype","Eucerin","isDesktop","contains","initReadMoreButton","disableReadMoreBtn","offsetHeight","btn","remove"],"mappings":"2FAAAA,EAAAC,EAAAC,GAAA,IAEAC,EAAA,WASI,SAAAA,EAAmBC,GAAnB,IAAAC,EAAAC,KAAmBA,KAAAF,UACfE,KAAKC,YAAcD,KAAKF,QAAQI,cAAc,mBAE1CF,KAAKG,mBAAmBH,KAAKF,UAC7BE,KAAKC,YAAYG,UAAUC,IAAI,kBAE/BL,KAAKC,aACLD,KAAKC,YAAYK,iBAAiB,QAAS,WAAM,OAAAP,EAAKQ,aAE1DC,SAASF,iBAAiB,oBAAqB,WAAM,OAAAP,EAAKU,oBA4ClE,OA5DWZ,EAAAa,MAAP,SAAaC,QAAA,IAAAA,MAJM,4BAKfC,MAAMC,KAAKL,SAASM,iBAAiBH,IAAWI,OAAO,SAACC,GAAsB,OAACA,EAAKC,QAAQC,oBAAmBC,QAAQ,SAACrB,GACpH,IAAID,EAASC,GACbA,EAAQmB,QAAQC,kBAAoB,UAkB5CrB,EAAAuB,UAAAb,SAAA,WACIP,KAAKF,QAAQM,UAAUC,IAAI,wBAG/BR,EAAAuB,UAAAX,gBAAA,eAAAV,EAAAC,KACSqB,QAAQC,WACTV,MAAMC,KAAKL,SAASM,iBA/BT,6BA+B2CC,OAAO,SAACC,GAAsB,OAACA,EAAKZ,UAAUmB,SAAS,yBAAwBJ,QAAQ,SAACrB,GACtIC,EAAKI,mBAAmBL,GACxBC,EAAKyB,mBAAmB1B,GAExBC,EAAK0B,mBAAmB3B,MAOxCD,EAAAuB,UAAAjB,mBAAA,SAAmBL,GAIf,OAH6BA,EAAQI,cAAc,mBAC5BwB,aAEV,IAQjB7B,EAAAuB,UAAAI,mBAAA,SAAmB1B,GACQA,EAAQI,cAAc,mBACzCE,UAAUC,IAAI,mBAGtBR,EAAAuB,UAAAK,mBAAA,SAAmB3B,GACf,IAAI6B,EAAmB7B,EAAQI,cAAc,mBACzCyB,EAAIvB,UAAUmB,SAAS,mBACvBI,EAAIvB,UAAUwB,OAAO,mBAEjC/B,EA9DA,eAgEA,IAAIA,EAASa","file":"./modules/ReadMore.cdb2dde1.js","sourcesContent":["const moduleSelector = '[data-module=\"ReadMore\"]';\r\n\r\nexport default class ReadMore {\r\n    readMoreBtn: HTMLElement;\r\n    static setup(selector: string = moduleSelector): void {\r\n        Array.from(document.querySelectorAll(selector)).filter((node: HTMLElement) => !node.dataset.moduleInitialized).forEach((element: HTMLElement) => {\r\n            new ReadMore(element);\r\n            element.dataset.moduleInitialized = 'true';\r\n        });\r\n    }\r\n\r\n    constructor(public element: HTMLElement) {\r\n        this.readMoreBtn = this.element.querySelector('.read-more-info');\r\n\r\n        if (this.shouldReadMoreInit(this.element))\r\n            this.readMoreBtn.classList.add('read-more-init');\r\n\r\n        if (this.readMoreBtn)\r\n            this.readMoreBtn.addEventListener('click', () => this.showText());\r\n\r\n        document.addEventListener('Eucerin:resizeEnd', () => this.reinintOnResize())\r\n\r\n\r\n    }\r\n\r\n    showText() {\r\n        this.element.classList.add('show-more-text-open');\r\n    }\r\n\r\n    reinintOnResize() {\r\n        if (!Eucerin.isDesktop) {\r\n            Array.from(document.querySelectorAll(moduleSelector)).filter((node: HTMLElement) => !node.classList.contains('show-more-text-open')).forEach((element: HTMLElement) => {\r\n                if (this.shouldReadMoreInit(element)) {\r\n                    this.initReadMoreButton(element);\r\n                } else {\r\n                    this.disableReadMoreBtn(element);\r\n                }\r\n            });\r\n        }\r\n\r\n    }\r\n\r\n    shouldReadMoreInit(element) {\r\n        var textFiled = <HTMLElement>element.querySelector('.read-more-text');\r\n        var height = textFiled.offsetHeight;\r\n\r\n        if (height > 44) {\r\n            return true;\r\n        } else {\r\n            return false;\r\n        }\r\n\r\n    }\r\n\r\n    initReadMoreButton(element: HTMLElement) {\r\n        var btn = <HTMLElement>element.querySelector('.read-more-info');\r\n        btn.classList.add('read-more-init');\r\n    }\r\n\r\n    disableReadMoreBtn(element) {\r\n        var btn = <HTMLElement>element.querySelector('.read-more-info');\r\n        if (btn.classList.contains('read-more-init'))\r\n            btn.classList.remove('read-more-init');\r\n    }\r\n}\r\n\r\nnew ReadMore.setup();"],"sourceRoot":""}