{"version":3,"sources":["webpack:///./modules/TagCloud.ts","webpack:///./helpers/domhelpers.ts"],"names":["__webpack_require__","r","__webpack_exports__","_helpers_domhelpers__WEBPACK_IMPORTED_MODULE_0__","TagCloud","element","this","renderCloudLinks","setup","selector","Array","from","document","querySelectorAll","filter","node","dataset","moduleInitialized","forEach","prototype","getAllLinks","links","item","children","length","outerText","outerHTML","createMarkup","Object","getAttribute","appendChild","createElement","createElementFromString","str","wrapper","className","addClassName","createDiv","innerHTML","firstElementChild","value","addClass","classList","add","removeClass","remove","createScriptTag","script","domScript","type","src","textContent","innerText","defer","injectScriptsFromAjaxResponse","scripts","getElementsByTagName","exist","shouldScriptNotBeMoved","hasAttribute","indexOf","isScriptTagRendered","map","Promise","all","resolve","reject","onload","onerror","console","error","event","target","head","listenToLoad$","_functional__WEBPACK_IMPORTED_MODULE_3__","arg","img","rxjs__WEBPACK_IMPORTED_MODULE_0__","pipe","rxjs_operators__WEBPACK_IMPORTED_MODULE_1__","rxjs_operators__WEBPACK_IMPORTED_MODULE_2__","e","removeDataAttr","hideSpinner","dispatchEvent","CustomEvent","srcset","Eucerin","supportWebP","tagName","includes","setAttribute","replace","addSpinnerToImage","parentElement","removeAttribute"],"mappings":"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","file":"./modules/TagCloud.a8738f32.js","sourcesContent":["const moduleSelector = '[data-module=\"TagCloud\"]';\r\nimport { createElementFromString } from '../helpers/domhelpers';\r\n\r\nexport default class TagCloud {\r\n    getLinks;\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 TagCloud(element);\r\n            element.dataset.moduleInitialized = 'true';\r\n        });\r\n    }\r\n\r\n    constructor(public element: HTMLElement) {\r\n        this.renderCloudLinks();\r\n    }\r\n\r\n    private getAllLinks() {\r\n        let links = '';\r\n\r\n        this.element.querySelectorAll('a').forEach((item) => {\r\n            if (item.children.length) {\r\n                return;\r\n            }\r\n            const outerText = item.outerHTML;\r\n            links += `${outerText}`\r\n        })\r\n\r\n        return links\r\n    }\r\n\r\n    private renderCloudLinks() {\r\n        const links = this.getAllLinks(),\r\n            createMarkup = createElementFromString(`\r\n            <section class=\"eucerin-cp cp-section cp-container uk-section tag-cloud-section\">\r\n              <div class=\"cp-row cp-row-center\">\r\n                <div class=\"cp-section-content\">\r\n                    <p class=\"hdl-3\">${this.element.getAttribute('data-tag-cloud-title')}</p>\r\n                    <div class=\"cloud-links\"> ${links} </div>\r\n              </div>\r\n             </div>\r\n           </section>\r\n        `)\r\n\r\n        if (links) {\r\n            this.element.appendChild(createMarkup);\r\n        }\r\n    }\r\n}\r\n\r\nnew TagCloud.setup();","/// <reference path=\"../typings/facelift.d.ts\" />\r\nimport {\r\n    fromEvent,\r\n    Observable,\r\n} from 'rxjs';\r\n\r\nimport {\r\n    first,\r\n    map,\r\n} from 'rxjs/operators';\r\n\r\nimport {\r\n    pipe,\r\n    fork,\r\n    alt,\r\n    not,\r\n    tap,\r\n} from './functional';\r\n\r\nimport { isIOS } from '../helpers/helperFunctions';\r\n\r\nexport function bindFunctions(element: any, ...funcs: Array<(target: any, ...args: any[]) => void>) {\r\n    return function (...args) {\r\n        funcs.forEach((f, i) => f(element, args[i]));\r\n        return element;\r\n    }\r\n}\r\n\r\nexport function createElement(selector: string): HTMLElement {\r\n    return document.createElement(selector);\r\n}\r\n\r\nexport function createAnchor(href: string = '', text: string = '', className: string = ''): HTMLAnchorElement {\r\n    return bindFunctions(\r\n        createElement('a'),\r\n        addHref,\r\n        addTextContent,\r\n        addClassName\r\n    )(href, text, className);\r\n}\r\n\r\nexport function createSpan(className: string): HTMLElement {\r\n    return addClassName(createElement('span'), className);\r\n};\r\n\r\nexport function createDiv(className: string): HTMLElement {\r\n    return addClassName(createElement('div'), className);\r\n};\r\n\r\nexport function createNav(className: string): HTMLElement {\r\n    return addClassName(createElement('nav'), className);\r\n};\r\n\r\nexport function createUList(className: string): HTMLElement {\r\n    return addClassName(createElement('ul'), className);\r\n};\r\n\r\nexport function createListItem(className: string): HTMLElement {\r\n    return addClassName(createElement('li'), className);\r\n};\r\n\r\nexport function createButton(className: string): HTMLElement {\r\n    return addClassName(createElement('button'), className);\r\n};\r\n\r\nexport function createElementFromString(str: string): HTMLElement {\r\n    const wrapper = createDiv('');\r\n    wrapper.innerHTML = str;\r\n    return <HTMLElement>wrapper.firstElementChild || wrapper;\r\n}\r\n\r\nexport function createSVG(inner: string): HTMLElement {\r\n    const svg = document.createElement('svg');\r\n    svg.setAttribute('xmlns', 'http://www.w3.org/2000/svg');\r\n    svg.setAttribute('viewBox', '0 0 86 86');\r\n    svg.innerHTML = inner;\r\n\r\n    return svg;\r\n}\r\n\r\nexport function addTextContent(element: HTMLElement, value: string): HTMLElement {\r\n    element.textContent = value;\r\n    return element;\r\n}\r\n\r\nexport function addInnerHTML(element: HTMLElement, value: string): HTMLElement {\r\n    element.innerHTML = value;\r\n    return element;\r\n}\r\n\r\nexport function addClassName(element: HTMLElement, value: string): HTMLElement {\r\n    element.className = value;\r\n    return element;\r\n}\r\n\r\nexport function addClass(element: HTMLElement, value: string): HTMLElement {\r\n    element.classList.add(value);\r\n    return element;\r\n}\r\n\r\nexport function addClasses(element: HTMLElement, ...classes: string[]): HTMLElement {\r\n    classes.forEach(cls => addClass(element, cls));\r\n    return element;\r\n}\r\n\r\nexport function removeClass(node: HTMLElement, className: string): HTMLElement {\r\n    node.classList.remove(className);\r\n    return node;\r\n}\r\n\r\nexport function removeClasses(node: HTMLElement, ...classes: string[]): HTMLElement {\r\n    classes.forEach(cls => removeClass(node, cls));\r\n    return node;\r\n}\r\n\r\nexport function addClassToList(list: Element[] | HTMLElement[] | HTMLCollection | NodeList, className: string) {\r\n    Array.from(list).forEach(itm => addClass(<HTMLElement>itm, className));\r\n    return list;\r\n}\r\n\r\nexport function removeClassFromList(list: Element[] | HTMLElement[] | HTMLCollection | NodeList, className: string) {\r\n    Array.from(list).forEach(itm => removeClass(<HTMLElement>itm, className));\r\n    return list;\r\n}\r\n\r\nexport function hasClass(\r\n    element: HTMLElement | Element | EventTarget,\r\n    value: string\r\n): boolean {\r\n    return (<HTMLElement>element).classList.contains(value);\r\n}\r\n\r\nexport function addHref(element: HTMLAnchorElement, value: string): HTMLAnchorElement {\r\n    element.href = value;\r\n    return element;\r\n}\r\n\r\nexport function addToElement(element: HTMLElement, ...items: HTMLElement[]): HTMLElement {\r\n    items.filter(i => i).forEach(i => element.appendChild(i));\r\n    return element;\r\n}\r\n\r\nexport function addToElementAtTheBeginning(element: HTMLElement, ...items: HTMLElement[]): HTMLElement {\r\n    const children = <HTMLElement[]>Array.from(element.children);\r\n    return addToElement(element, ...items.concat(children));\r\n}\r\n\r\nexport function addElementsFromArray(target: HTMLElement, arr: HTMLElement[]) {\r\n    arr.forEach(e => addToElement(target, e));\r\n    return arr;\r\n}\r\n\r\nexport function getElementHeight(element: HTMLElement): number {\r\n    return element.offsetHeight;\r\n}\r\n\r\nexport function setElementHeight(element: HTMLElement, height: number) {\r\n    element.style.height = height ? height + 'px' : '';\r\n    return this;\r\n}\r\n\r\nexport function isInViewPort(element: HTMLElement): boolean {\r\n    const elementRect = element.getBoundingClientRect();\r\n    let offsetHeight = window.innerHeight + 250;\r\n\r\n    return elementRect.top < 0 && elementRect.bottom > 0\r\n        || elementRect.top >= 0 && elementRect.top < offsetHeight\r\n        || elementRect.bottom > 0 && elementRect.bottom < offsetHeight\r\n        || elementRect.bottom <= (offsetHeight || document.documentElement.clientHeight) &&\r\n        elementRect.right <= (window.innerWidth || document.documentElement.clientWidth);\r\n}\r\n\r\nexport function getSibling(element: HTMLElement, selector: string): HTMLElement {\r\n    return <HTMLElement>element.parentElement.querySelector(selector);\r\n}\r\n\r\nexport function getClosest(element: HTMLElement, selector: string): HTMLElement {\r\n    do {\r\n        if (element.matches(selector)) {\r\n            return element;\r\n        }\r\n        element = <HTMLElement>element.parentElement || <HTMLElement>element.parentNode;\r\n    } while (element !== null && element.nodeType === 1);\r\n\r\n    return null;\r\n}\r\n\r\nexport function createScriptTag(script: HTMLScriptElement): HTMLScriptElement {\r\n    let domScript = document.createElement('script');\r\n    domScript.type = 'text/javascript';\r\n\r\n    if (script.src) {\r\n        domScript.src = script.src;\r\n    } else {\r\n        domScript.textContent = script.innerText;\r\n    }\r\n\r\n    if (script.defer) {\r\n        domScript.defer = true;\r\n    }\r\n\r\n    return domScript;\r\n}\r\n\r\nexport function insertScript(script: HTMLScriptElement): HTMLScriptElement {\r\n    let domScript = document.createElement('script');\r\n    domScript.type = 'text/javascript';\r\n\r\n    if (script.src) {\r\n        domScript.src = script.src;\r\n    } else {\r\n        domScript.textContent = script.innerText;\r\n    }\r\n\r\n    if (script.defer) {\r\n        domScript.defer = true;\r\n    }\r\n\r\n    return document.head.appendChild(domScript);\r\n}\r\n\r\nexport function addScriptToHead(url: string, callback: Callback) {\r\n    var newScript = document.createElement(\"script\");\r\n    newScript.onerror = loadError;\r\n\r\n    if (callback) {\r\n        newScript.onload = callback;\r\n    }\r\n\r\n    newScript.src = url;\r\n\r\n    return document.head.appendChild(newScript);\r\n}\r\n\r\nexport function loadError(oError) {\r\n    throw new URIError(\"The script \" + oError.target.src + \" didn't load correctly.\");\r\n}\r\n\r\nexport function injectScriptsFromAjaxResponse(element: HTMLElement): Promise<any[]> {\r\n\r\n    const scripts = Array.from(element.getElementsByTagName('script'))\r\n        .filter(script => !isScriptTagRendered(script))\r\n        .map(createScriptTag);\r\n\r\n    return Promise.all(scripts.map(script => new Promise((resolve, reject) => {\r\n        if (script.src) {\r\n            script.onload = () => resolve();\r\n            script.onerror = () => {\r\n                console.error(`Layer script was not loaded: URL ${(<HTMLScriptElement>event.target).src}`);\r\n                resolve();\r\n            };\r\n        } else {\r\n            resolve();\r\n        }\r\n\r\n        document.head.appendChild(script);\r\n    })));\r\n}\r\n\r\nexport function isScriptTagRendered(script: HTMLScriptElement): boolean {\r\n    var exist: boolean = false;\r\n    const shouldScriptNotBeMoved = script.hasAttribute('data-dont-move-script-from-layer');\r\n    \r\n    if (script.src) {\r\n        (document.querySelectorAll(`[src=\"${script.src}\"]`).length > 0 && script.src.indexOf(\"recaptcha\") == -1 && script.src.indexOf(\"friendly-challenge\") == -1) ? exist = true : exist = false;\r\n    }\r\n\r\n    if (shouldScriptNotBeMoved) {\r\n        exist = true;\r\n    }\r\n\r\n    return exist;\r\n}\r\n\r\nexport function toggleClass(node: HTMLElement, className: string, force?: boolean): HTMLElement {\r\n    if (typeof force === undefined) {\r\n        node.classList.toggle(className);\r\n    } else {\r\n        force\r\n            ? node.classList.add(className)\r\n            : node.classList.remove(className);\r\n    }\r\n\r\n    return node;\r\n}\r\n\r\nexport function getChildren(node: HTMLElement, selector?: string): HTMLElement[] {\r\n    let children = <HTMLElement[]>Array.from(node.children);\r\n\r\n    if (selector) {\r\n        children = children.filter(ch => hasClass(ch, selector));\r\n    }\r\n\r\n    return children;\r\n}\r\n\r\nexport function dispatchEvent(element: HTMLElement, event: Event): HTMLElement {\r\n    element.dispatchEvent(event);\r\n    return element;\r\n}\r\n\r\n/*\r\n *\r\n * Helper Functions for ImageLoad\r\n *\r\n */\r\n\r\nexport const listenToLoad$ = fork(arg => arg, loadPicture$, setSourceAttr);\r\nexport const addSpinnerToImage = alt(not(isImage), showSpinner);\r\nexport const loadImageLazy$ = pipe(tap(addSpinnerToImage), listenToLoad$);\r\n\r\nexport function isImage(element: HTMLElement): HTMLImageElement | false {\r\n    return element.tagName === 'IMG' ? <HTMLImageElement>element : false;\r\n}\r\n\r\nexport function isImageLoaded(img: HTMLImageElement): boolean {\r\n    return (img.hasAttribute('src') || img.hasAttribute('srcset'))\r\n        || (!isIOS && img.complete && img.naturalHeight !== 0);\r\n}\r\n\r\nexport function hasImageToBeLoaded(img: HTMLImageElement): boolean {\r\n    if (!isImageLoaded(img) && isInViewPort(img)) {\r\n        addClass(img.parentElement, 'image-loaded');\r\n    }\r\n    return !isImageLoaded(img) && isInViewPort(img) && Eucerin.supportWebP != undefined;\r\n}\r\n\r\nexport function loadPicture$(img: HTMLImageElement): Observable<HTMLImageElement> {\r\n    return fromEvent(img, 'load').pipe(\r\n        first(),\r\n        map(e => <HTMLImageElement>e.target),\r\n        map(removeDataAttr),\r\n        map(hideSpinner),\r\n        tap(() => document.dispatchEvent(new CustomEvent('Eucerin:lazyimageloaded'))));\r\n}\r\n\r\nexport function setSourceAttr(img: HTMLImageElement): HTMLImageElement {\r\n    let src = img.dataset.src,\r\n        srcset = img.dataset.srcset;\r\n\r\n    if (Eucerin.supportWebP && img.tagName == \"SOURCE\") {\r\n        if (src && src.includes('.webp')) img.setAttribute('src', src);\r\n\r\n\r\n        if (srcset && srcset.includes('.webp')) img.setAttribute('srcset', srcset);\r\n\r\n    } else {\r\n        if (src && !src.includes('.webp')) img.setAttribute('src', src);\r\n\r\n\r\n        if (srcset && !srcset.includes('.webp')) img.setAttribute('srcset', srcset);\r\n    }\r\n\r\n    if (img.tagName == \"IMG\") {\r\n        if (Eucerin.supportWebP) {\r\n            if (src) {\r\n                src = src.replace(/(.jpg$|.jpeg$|.png$)/g, \".webp\");\r\n                src = src.replace(/(.jpg\\?|.jpeg\\?|.png\\?)/g, \".webp?\");\r\n            }\r\n\r\n            if (srcset) {\r\n                srcset = srcset.replace(/(.jpg$|.jpeg$|.png$)/g, \".webp\");\r\n                srcset = srcset.replace(/(.jpg\\?|.jpg\\?|.png\\?)/g, \".webp?\");\r\n            }\r\n        }\r\n\r\n\r\n        srcset && img.setAttribute('srcset', srcset);\r\n        src && img.setAttribute('src', src);\r\n    }\r\n\r\n    return img;\r\n}\r\n\r\nexport function removeDataAttr(img: HTMLImageElement): HTMLImageElement {\r\n    img.removeAttribute('data-src');\r\n    img.removeAttribute('data-srcset');\r\n\r\n    return img;\r\n}\r\n\r\nexport function showSpinner(img: HTMLImageElement) {\r\n    addClass(img.parentElement, 'lazy-spinner');\r\n    return img;\r\n}\r\n\r\nexport function hideSpinner(img: HTMLImageElement) {\r\n    removeClass(img.parentElement, 'lazy-spinner');\r\n    return img;\r\n}\r\n\r\nexport function checkWebPSupport() {\r\n    return new Promise((resolve, reject) => {\r\n        var img = new Image();\r\n        img.onload = function () { resolve(); };\r\n        img.onerror = function () { reject(); };\r\n        img.src = 'data:image/webp;base64,UklGRjoAAABXRUJQVlA4IC4AAACyAgCdASoCAAIALmk0mk0iIiIiIgBoSygABc6WWgAA/veff/0PP8bA//LwYAAA';\r\n    })\r\n}\r\n\r\nexport function isEmpty(value) {\r\n    return (value === undefined || value == null || value.length <= 0) ? true : false;\r\n}\r\n\r\nexport function scrollToElement(element, to, duration) {\r\n    var start = element.scrollTop,\r\n        change = to - start,\r\n        currentTime = 0,\r\n        increment = 20;\r\n\r\n    var animateScroll = function () {\r\n        currentTime += increment;\r\n\r\n        var val = Math.easeInOutQuad(currentTime, start, change, duration);\r\n\r\n        element.scrollTop = val;\r\n\r\n        if (currentTime < duration) {\r\n            setTimeout(animateScroll, increment);\r\n        }\r\n    };\r\n\r\n    animateScroll();\r\n\r\n    return;\r\n}\r\nexport function adjustLayerMarkUp(html: string, overlayTitle?, getLayerTitleFromContent?): HTMLElement {\r\n    let node = createElementFromString(`<div>${html}</div>`),\r\n        layerTitle = (overlayTitle) ? overlayTitle : '';\r\n\r\n    if (getLayerTitleFromContent) {\r\n        let title: HTMLElement = node.querySelector('h2') || node.querySelector('.hdl-3') || node.querySelector('.hdl-4');\r\n        if (title) {\r\n            layerTitle = title.innerHTML;\r\n            title.remove();\r\n        } else {\r\n            layerTitle = '';\r\n        }\r\n\r\n    }\r\n\r\n    return createElementFromString(`\r\n        <div class=\"content-wrapper\">\r\n            ${(overlayTitle || getLayerTitleFromContent) ?\r\n            `<div class=\"overlay-header\">\r\n                <p class=\"overlay-title hdl-3\">${layerTitle}</p>\r\n            </div>`\r\n            : \"\"}\r\n            <div class=\"overlay-content\">${node.innerHTML}</div>\r\n        </div>`);\r\n}\r\n\r\nexport function isObjectLiteral(a) {\r\n    return (!!a) && (a.constructor === Object);\r\n};\r\n\r\nexport function isObject(a) {\r\n    return typeof a === 'object' && a !== null;\r\n}\r\n\r\nexport function isArray(a) {\r\n    return (!!a) && (a.constructor === Array);\r\n};\r\n\r\nexport function objectToStyleString(styleObject): string {\r\n    return Object.entries(styleObject).map(([k, v]) => `${k}: ${v}`).join(';');\r\n};"],"sourceRoot":""}