{"version":3,"file":"javascripts/chunks/276ea6ba7b4800f1c4ca.teaser-regions.js","mappings":"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","sources":["webpack:///./components/button/Button.jsx","webpack:///./components/icon/Icon.jsx","webpack:///./components/image/Image.jsx","webpack:///./components/link/Link.jsx","webpack:///./components/spinner/Spinner.jsx","webpack:///./components/teaser-regions/javascripts/components/TeaserRegionsLocationButton.jsx","webpack:///./components/teaser-regions/javascripts/components/TeaserRegionsFilter.jsx","webpack:///./components/teaser-regions/javascripts/components/TeaserRegionsContainer.jsx","webpack:///./components/teaser-regions/javascripts/teaser-regions.jsx","webpack:///./components/text/Text.jsx","webpack:///./javascripts/dom/select.js","webpack:///./javascripts/helpers/baseModule.js","webpack:///../.yarn/unplugged/core-js-npm-3.19.3-6f11d9f8bc/node_modules/core-js/internals/object-assign.js","webpack:///../.yarn/unplugged/core-js-npm-3.19.3-6f11d9f8bc/node_modules/core-js/internals/string-trim-forced.js","webpack:///../.yarn/unplugged/core-js-npm-3.19.3-6f11d9f8bc/node_modules/core-js/internals/string-trim.js","webpack:///../.yarn/unplugged/core-js-npm-3.19.3-6f11d9f8bc/node_modules/core-js/internals/whitespaces.js","webpack:///../.yarn/unplugged/core-js-npm-3.19.3-6f11d9f8bc/node_modules/core-js/modules/es.object.assign.js","webpack:///../.yarn/unplugged/core-js-npm-3.19.3-6f11d9f8bc/node_modules/core-js/modules/es.string.trim.js","webpack:///./twig-extensions/filter/withModifier.js"],"sourcesContent":["import React from 'react';\nimport PropTypes from 'prop-types';\n\nimport withModifier from '../../twig-extensions/filter/withModifier';\n\nimport Icon from '../icon/Icon.jsx';\nimport Spinner from '../spinner/Spinner.jsx';\nimport Text from '../text/Text.jsx';\n\nconst Button = ({\n label,\n type,\n disabled,\n variant,\n labelVariant,\n className,\n modifiers,\n onClick,\n hiddenLabel,\n icon,\n iconSize,\n isLoading\n}) => (\n <button\n className={`button ${className} ${withModifier(\n 'button',\n variant ? [...modifiers, variant] : modifiers\n )}`}\n // eslint-disable-next-line react/button-has-type\n type={type}\n disabled={disabled}\n aria-disabled={disabled}\n title={label}\n aria-label={label}\n onClick={onClick}\n >\n {icon && !isLoading && (\n <Icon id={icon} size={iconSize} className=\"button__icon\" />\n )}\n {isLoading && <Spinner />}\n {hiddenLabel ? null : (\n <Text variant={labelVariant} tag=\"span\">\n {label}\n </Text>\n )}\n </button>\n);\n\nButton.propTypes = {\n label: PropTypes.string.isRequired,\n type: PropTypes.string,\n disabled: PropTypes.bool,\n variant: PropTypes.string,\n labelVariant: PropTypes.string,\n className: PropTypes.string,\n modifiers: PropTypes.arrayOf(PropTypes.string),\n onClick: PropTypes.func,\n hiddenLabel: PropTypes.bool,\n icon: PropTypes.string,\n iconSize: PropTypes.string,\n isLoading: PropTypes.bool\n};\n\nButton.defaultProps = {\n type: 'button',\n disabled: false,\n variant: undefined,\n labelVariant: 'button',\n className: '',\n modifiers: [],\n onClick: null,\n hiddenLabel: false,\n icon: null,\n iconSize: 'small',\n isLoading: false\n};\n\nexport default Button;\n","import PropTypes from 'prop-types';\nimport React from 'react';\n\nconst Icon = ({ className, size, id }) => (\n <svg\n className={`icon icon--${id} ${size ? `icon--${size}` : ''} ${className}`}\n >\n <use xlinkHref={`#${id}`} />\n </svg>\n);\n\nIcon.propTypes = {\n className: PropTypes.string,\n size: PropTypes.string,\n id: PropTypes.string.isRequired\n};\n\nIcon.defaultProps = {\n className: '',\n size: 'small'\n};\n\nexport default Icon;\n","/* eslint-disable react/jsx-props-no-spreading */\nimport React, { useEffect, useState } from 'react';\nimport PropTypes from 'prop-types';\n\nconst buildImageProps = (obj) => {\n const image = {\n alt: obj.alt,\n media: obj.media,\n sizes: obj.sizes,\n className: obj.className,\n role: obj.role,\n width: obj.width,\n height: obj.height\n };\n\n if (obj.lazy && !obj.hasNativeLazyLoading) {\n Object.assign(image, {\n 'data-src': obj.src,\n 'data-srcset': obj.srcSet,\n className: `${obj.className} lazyload`\n });\n } else if (obj.lazy && obj.hasNativeLazyLoading) {\n Object.assign(image, {\n src: obj.src,\n srcSet: obj.srcSet,\n loading: 'lazy',\n 'data-src': undefined\n });\n } else if (!obj.lazy) {\n Object.assign(image, { src: obj.src, srcSet: obj.srcSet });\n }\n\n return image;\n};\n\nconst Image = ({\n alt,\n src,\n width,\n height,\n srcSet,\n sizes,\n lazy,\n className,\n media,\n as\n}) => {\n const [hasNativeLazyLoading, sethasNativeLazyLoading] = useState(false);\n\n useEffect(() => {\n if (\n typeof window !== 'undefined' &&\n typeof HTMLImageElement !== 'undefined' &&\n 'loading' in HTMLImageElement.prototype\n ) {\n sethasNativeLazyLoading(true);\n }\n }, []);\n\n const imageProps = buildImageProps({\n alt,\n src,\n width,\n height,\n srcSet,\n sizes,\n lazy,\n className,\n media,\n role: !alt ? 'presentation' : undefined,\n hasNativeLazyLoading\n });\n\n if (as === 'source') {\n delete imageProps.alt;\n delete imageProps.lazy;\n delete imageProps.src;\n delete imageProps.className;\n delete imageProps.width;\n delete imageProps.height;\n\n return <source {...imageProps} />;\n }\n\n // eslint-disable-next-line jsx-a11y/alt-text\n return <img {...imageProps} />;\n};\n\nImage.propTypes = {\n alt: PropTypes.string,\n src: PropTypes.string.isRequired,\n width: PropTypes.number,\n height: PropTypes.number,\n srcSet: PropTypes.string,\n sizes: PropTypes.string,\n role: PropTypes.string,\n lazy: PropTypes.bool,\n className: PropTypes.string,\n media: PropTypes.string,\n as: PropTypes.oneOf(['img', 'source'])\n};\n\nImage.defaultProps = {\n alt: '',\n width: null,\n height: null,\n srcSet: '',\n sizes: '',\n role: '',\n lazy: false,\n className: '',\n media: '',\n as: 'img'\n};\n\nexport default Image;\n","import PropTypes from 'prop-types';\nimport React from 'react';\n\nimport withModifier from '../../twig-extensions/filter/withModifier';\n\nimport Text from '../text/Text.jsx';\nimport Icon from '../icon/Icon.jsx';\n\nconst Link = ({\n className,\n modifiers,\n href,\n label,\n html,\n icon,\n hiddenLabel,\n target,\n variant,\n hasArrow,\n externalIcon\n}) => {\n const Tag = href ? 'a' : 'span';\n\n return (\n <Tag\n href={href}\n target={target}\n title={label}\n className={`link ${className} ${withModifier('link', modifiers)}`}\n >\n {icon && (\n <span className=\"link__icon-wrapper\">\n <Icon id={icon} className=\"link__icon\" aria-hidden=\"true\" />\n </span>\n )}\n\n {!hiddenLabel && (\n <>\n {html ? (\n <Text html={html} variant={variant} tag=\"span\" />\n ) : (\n <Text variant={variant} tag=\"span\">\n {label}\n </Text>\n )}\n </>\n )}\n\n {externalIcon && target === '_blank' &&\n <span className=\"link__icon-wrapper\">\n \n <Icon id=\"external\" className=\"link__arrow-icon\"/>\n </span>\n }\n\n {hasArrow && (\n <span className=\"link__icon-wrapper\">\n \n <Icon id=\"arrowRight\" className=\"link__arrow-icon\"/>\n </span>\n )}\n </Tag>\n );\n};\n\nLink.propTypes = {\n className: PropTypes.string,\n modifiers: PropTypes.arrayOf(PropTypes.string),\n href: PropTypes.string,\n label: PropTypes.string.isRequired,\n icon: PropTypes.string,\n hiddenLabel: PropTypes.bool,\n target: PropTypes.string,\n hasArrow: PropTypes.bool,\n externalIcon: PropTypes.bool,\n variant: PropTypes.string\n};\n\nLink.defaultProps = {\n className: '',\n modifiers: [],\n href: null,\n icon: null,\n hiddenLabel: false,\n target: undefined,\n variant: 'button',\n hasArrow: false,\n externalIcon: false,\n};\n\nexport default Link;\n","import React from 'react';\nimport PropTypes from 'prop-types';\n\nconst Spinner = ({ className }) => (\n <div className={`spinner ${className}`}>\n <svg\n width=\"52\"\n height=\"52\"\n xmlns=\"http://www.w3.org/2000/svg\"\n viewBox=\"0 0 52 52\"\n >\n <g fill=\"none\">\n <path\n d=\"m5.486 10.05-.078.077c.164-.23.58-.729 1.246-1.498.999-1.154 2.134-2.437 3.507-3.466 4.319-3.235 9.56-5.179 15.754-5.2 13.834-.046 25.82 11.648 26.08 25.566.27 14.468-11.584 26.815-26.448 26.425a4.526 4.526 0 0 1-4.414-4.637 4.528 4.528 0 0 1 4.652-4.4c9.59.251 17.32-7.8 17.144-17.22-.168-8.98-8.105-16.723-16.983-16.693-4.128.013-7.422 1.406-10.251 3.525-.912.683-1.69 1.42-2.408 2.193l-.248.295-1.044 1.197-.123.132c-1.77 1.765-4.773 1.633-6.544-.132-1.77-1.765-1.612-4.4.158-6.165Z\"\n fill=\"#e30613\"\n />\n <path\n d=\"M25.915-.037a24.626 24.626 0 0 1 5.294.56C43.072 2.933 52 13.424 52 26l-.001.253-.002.141L52 26a26.463 26.463 0 0 1-.049 1.6c-.452 7.447-4.038 14.048-9.457 18.5a25.535 25.535 0 0 1-10.634 5.238 14.438 14.438 0 0 1-.342.075A26.073 26.073 0 0 1 26 52C11.64 52 0 40.36 0 26a25.88 25.88 0 0 1 4.616-14.794c.188-.347.425-.68.709-.989l.065-.07.018-.02.076-.076-.094.096c-.266.347-.524.7-.774 1.06-.886 1.632-.702 3.597.712 5.007 1.77 1.765 4.774 1.897 6.544.132l.123-.132.765-.878a17.008 17.008 0 0 1 9.118-5.833l.132-.032c.467-.114.948-.209 1.441-.282l.102-.014A17.198 17.198 0 0 1 26 9c9.389 0 17 7.611 17 17s-7.611 17-17 17c-.346 0-.69-.01-1.03-.03.265-.043.537-.06.815-.053 9.59.251 17.32-7.8 17.144-17.22-.168-8.98-8.105-16.723-16.983-16.693a17.504 17.504 0 0 0-2.495.185l.102-.014a16.922 16.922 0 0 0-1.675.328l.132-.032-.235.058.103-.026c-2.323.586-4.35 1.654-6.183 3.026-.912.683-1.69 1.42-2.408 2.193l-.248.295-.279.319A16.929 16.929 0 0 0 9 26c0 9.043 7.06 16.436 15.97 16.97a4.524 4.524 0 0 0-3.837 4.347 4.526 4.526 0 0 0 4.414 4.637 25.581 25.581 0 0 0 6.258-.604l-.287.063.342-.075-.055.012a25.909 25.909 0 0 0 10.689-5.25c5.434-4.488 9.005-11.143 9.457-18.5a25.26 25.26 0 0 0 .036-.775l.01-.395.002-.177c.002-.241.001-.482-.004-.724C51.77 13.425 42.675 3.004 31.21.522A26.083 26.083 0 0 0 26 0C18.295 0 11.372 3.352 6.611 8.677c-.408.472-.718.84-.932 1.102l-.18.228-.091.12a26.075 26.075 0 0 1 1.203-1.45l.043-.048c.999-1.154 2.134-2.437 3.507-3.466 4.319-3.235 9.56-5.179 15.754-5.2Z\"\n fill=\"#F3F3F3\"\n />\n </g>\n </svg>\n </div>\n);\n\nSpinner.propTypes = {\n className: PropTypes.string\n};\n\nSpinner.defaultProps = {\n className: ''\n};\n\nexport default Spinner;\n","import React from 'react';\nimport PropTypes from 'prop-types';\n\nimport Button from '../../../button/Button.jsx';\n\nconst geoLocationSupport = 'geolocation' in navigator;\n\nconst TeaserRegionsLocationButton = ({ geoLocationLabel, onLocation }) => {\n const [isLoading, setIsLoading] = React.useState(false);\n\n const handleGeoLocation = React.useCallback(\n (e) => {\n setIsLoading(true);\n\n navigator.geolocation.getCurrentPosition(\n (position) => {\n onLocation(e, position);\n setIsLoading(false);\n },\n (error) => {\n setIsLoading(false);\n\n // eslint-disable-next-line no-alert\n alert(error.message);\n }\n );\n },\n [setIsLoading, onLocation]\n );\n\n return geoLocationSupport ? (\n <Button\n onClick={(e) => handleGeoLocation(e)}\n label={geoLocationLabel}\n icon=\"geoLocation\"\n iconSize=\"large\"\n isLoading={isLoading}\n labelVariant=\"copy-label\"\n className=\"regions-filter__geo-button\"\n modifiers={['tertiary', 'direction-column']}\n />\n ) : null;\n};\n\nTeaserRegionsLocationButton.propTypes = {\n geoLocationLabel: PropTypes.string.isRequired,\n onLocation: PropTypes.func.isRequired\n};\n\nexport default TeaserRegionsLocationButton;\n","import React, { useRef } from 'react';\nimport PropTypes from 'prop-types';\n\nimport Icon from '../../../icon/Icon.jsx';\n\nimport TeaserRegionsLocationButton from './TeaserRegionsLocationButton.jsx';\n\nconst TeaserRegionsFilter = ({\n geoLocationLabel,\n searchHandle,\n searchLabel,\n searchValue,\n radiusLabel,\n radiusDefault,\n radiusOptions,\n className\n}) => {\n const formRef = useRef();\n\n const [inputValue, setInputValue] = React.useState(searchValue);\n\n React.useEffect(() => {\n setInputValue(searchValue);\n }, [searchValue, setInputValue]);\n\n const handleGeoLocation = (e, position) => {\n searchHandle(e, formRef.current, position);\n };\n\n return (\n <div className={`regions-filter ${className}`}>\n <TeaserRegionsLocationButton\n geoLocationLabel={geoLocationLabel}\n onLocation={handleGeoLocation}\n />\n\n <form\n ref={formRef}\n className=\"regions-filter__search\"\n onSubmit={(e) => searchHandle(e, formRef.current)}\n >\n <Icon id=\"search\" className=\"regions-filter__search-input-icon\" />\n <input\n type=\"search\"\n name=\"location\"\n value={inputValue}\n onChange={(e) => setInputValue(e.target.value)}\n defaultValue={searchValue}\n placeholder={searchLabel}\n className=\"regions-filter__search-input\"\n />\n\n <select\n aria-label={radiusLabel}\n name=\"radius\"\n onChange={(e) => searchHandle(e, formRef.current)}\n className=\"regions-filter__search-select\"\n >\n <option value=\"\">{radiusDefault}</option>\n {radiusOptions.map((radius) => (\n <option key={radius} value={radius}>\n +{radius} KM\n </option>\n ))}\n </select>\n <Icon id=\"angleDown\" className=\"regions-filter__search-select-icon\" />\n </form>\n </div>\n );\n};\n\nTeaserRegionsFilter.propTypes = {\n geoLocationLabel: PropTypes.string.isRequired,\n searchHandle: PropTypes.func.isRequired,\n searchLabel: PropTypes.string.isRequired,\n searchValue: PropTypes.string,\n radiusLabel: PropTypes.string.isRequired,\n radiusDefault: PropTypes.string.isRequired,\n radiusOptions: PropTypes.arrayOf(PropTypes.number).isRequired,\n className: PropTypes.string\n};\n\nTeaserRegionsFilter.defaultProps = {\n searchValue: '',\n className: ''\n};\n\nexport default TeaserRegionsFilter;\n","import React, { useState } from 'react';\nimport PropTypes from 'prop-types';\n\nimport Text from '../../../text/Text.jsx';\nimport Icon from '../../../icon/Icon.jsx';\nimport Image from '../../../image/Image.jsx';\nimport Link from '../../../link/Link.jsx';\n\nimport TeaserRegionsFilter from './TeaserRegionsFilter.jsx';\nimport Spinner from '../../../spinner/Spinner.jsx';\n\nconst TeaserRegionsContainer = ({ data }) => {\n const { filter, teasers } = data;\n const [loading, setLoading] = useState(false);\n\n const [state, setState] = useState({\n searchValue: '',\n error: false,\n errorMessage: '',\n teasers\n });\n\n const handleFetch = async (formData) => {\n setLoading(true);\n\n try {\n const response = await fetch(filter.formAction, {\n method: 'POST',\n mode: 'cors',\n cache: 'no-cache',\n credentials: 'same-origin',\n headers: {\n Accept: 'application/json'\n },\n body: formData\n });\n\n const json = await response.json();\n\n if (json.state === 'success') {\n setLoading(false);\n setState({\n searchValue: json.searchValue,\n teasers: json.teasers\n });\n } else if (json.state === 'error') {\n setLoading(false);\n setState({\n error: true,\n errorMessage: json.message\n });\n }\n } catch (err) {\n setLoading(false);\n setState({\n error: true,\n errorMessage: 'Hier ist leider etwas schief gelaufen.'\n });\n }\n };\n\n const handleSearch = (e, form, position) => {\n e.preventDefault();\n\n const formData = new FormData(form);\n\n // BVMW-252 reset to the initial teasers when an empty search is submitted\n if (!position && formData.get('location').trim().length === 0) {\n setLoading(false);\n setState({\n teasers\n });\n return;\n }\n\n if (position) {\n formData.append('latitude', position.coords.latitude);\n formData.append('longitude', position.coords.longitude);\n }\n\n handleFetch(formData);\n };\n\n return (\n <>\n {/* {filter && (\n <TeaserRegionsFilter\n formAction={filter.formAction}\n geoLocationLabel={filter.geoLocationLabel}\n searchHandle={handleSearch}\n searchLabel={filter.searchLabel}\n searchValue={state.searchValue}\n radiusLabel={filter.radiusLabel}\n radiusDefault={filter.radiusDefault}\n radiusOptions={filter.radiusOptions}\n />\n )} */}\n\n {loading && (\n <div className=\"teaser-regions__error\">\n <Spinner />\n </div>\n )}\n\n {!loading && state.error && state.errorMessage && (\n <Text className=\"teaser-regions__error\">{state.errorMessage}</Text>\n )}\n\n {!state.error && !loading && state.teasers && (\n <div className=\"teaser-regions__teasers\">\n {Object.keys(state.teasers).map((letter) => (\n <React.Fragment key={letter}>\n <Text\n tag=\"h3\"\n variant=\"copy-bold\"\n className=\"teaser-regions__headline\"\n >\n {letter}\n </Text>\n\n {state.teasers[letter].map((teaser) => (\n <a\n key={teaser.label}\n href={teaser.href}\n title={teaser.label}\n target={teaser.target}\n className=\"teaser-regions__teaser\"\n >\n {teaser.image && teaser.image.asset && (\n <Image\n src={teaser.image.asset.url}\n srcSet={teaser.image.srcSet}\n sizes=\"142px\"\n alt={teaser.image.alt}\n className=\"teaser-regions__teaser-image\"\n lazy\n />\n )}\n <Link\n label={teaser.label}\n hasArrow\n variant=\"headline-5\"\n modifiers={['tertiary', 'no-transform']}\n />\n </a>\n ))}\n </React.Fragment>\n ))}\n </div>\n )}\n </>\n );\n};\n\nTeaserRegionsContainer.propTypes = {\n data: PropTypes.shape({\n filter: PropTypes.shape({\n formAction: PropTypes.string,\n geoLocationLabel: PropTypes.string,\n searchLabel: PropTypes.string,\n radiusLabel: PropTypes.string,\n radiusDefault: PropTypes.string,\n radiusOptions: PropTypes.arrayOf(PropTypes.number)\n }),\n teasers: PropTypes.objectOf(\n PropTypes.arrayOf(\n PropTypes.shape({\n href: PropTypes.string,\n label: PropTypes.string,\n image: PropTypes.shape()\n })\n )\n )\n }).isRequired\n};\n\nexport default TeaserRegionsContainer;\n","import React from 'react';\nimport { createRoot } from 'react-dom/client';\n\nimport BaseModule from '../../../javascripts/helpers/baseModule';\n\nimport TeaserRegionsContainer from './components/TeaserRegionsContainer.jsx';\n\nexport default class TeaserRegions extends BaseModule {\n constructor(element) {\n super(element, 'teaser-regions');\n\n this.init();\n }\n\n init() {\n const config = JSON.parse(this.elements.self.dataset.jsModuleConfig);\n const root = createRoot(this.elements.self);\n root.render(<TeaserRegionsContainer data={config} />);\n }\n}\n","import PropTypes from 'prop-types';\nimport React from 'react';\n\nimport withModifier from '../../twig-extensions/filter/withModifier';\n\nconst Text = React.forwardRef(\n ({ className, modifiers = [], children, html, tag, variant }, ref) => {\n const Tag = tag;\n\n if (html) {\n return (\n <Tag\n ref={ref}\n className={`${withModifier('text', [\n ...modifiers,\n variant\n ])} ${className}`}\n dangerouslySetInnerHTML={{ __html: html }}\n />\n );\n }\n\n return (\n <Tag\n ref={ref}\n className={`${withModifier('text', [\n ...modifiers,\n variant\n ])} ${className}`}\n >\n {children}\n </Tag>\n );\n }\n);\n\nText.propTypes = {\n className: PropTypes.string,\n modifiers: PropTypes.arrayOf(PropTypes.string),\n children: PropTypes.node,\n html: PropTypes.string,\n variant: PropTypes.string,\n tag: PropTypes.oneOf([\n 'p',\n 'h1',\n 'h2',\n 'h3',\n 'h4',\n 'h5',\n 'h5',\n 'h6',\n 'span',\n 'figcaption',\n 'cite',\n 'label',\n 'legend',\n 'small',\n 'div'\n ])\n};\n\nText.defaultProps = {\n className: '',\n modifiers: [],\n children: null,\n html: null,\n variant: 'copy',\n tag: 'p'\n};\n\nexport default Text;\n","/**\n * This methods selects Elements from a specific context by a selector\n * @param {string} selector Selector of the element to find\n * @param {Element|HTMLDocument} [element] Context of the selectable\n * @returns {Array<Element>} Am array with selected Elements\n */\nexport default (selector, element = window.document) =>\n [].slice.call(element.querySelectorAll(selector));\n","import select from '../dom/select';\n\nclass BaseModule {\n constructor(element, id) {\n this.id = id;\n this.elements = {\n self: element\n };\n\n this.setInitialized();\n }\n\n setInitialized() {\n if (this.elements.self) {\n this.elements.self.setAttribute('data-js-module-initialized', true);\n }\n }\n\n setUnInitialized() {\n if (this.elements.self) {\n this.elements.self.removeAttribute('data-js-module-initialized');\n }\n }\n\n /**\n * Selects DOMElements of a module with a specific data attribute (`data-js-element=\"${module}__${selector}\"`)\n * Receives an object where the id param is the key in the elements cache\n * The selector param of the config is the selector part in the query-selector described above\n * @param {Object} config Configuration object in a key value format\n * @returns {void}\n */\n getElements(config) {\n const elementsConfig = config.map((elementConfig) => ({\n ...elementConfig,\n selector: `${this.id}__${elementConfig.selector}`\n }));\n\n const domElements = select('[data-js-element]', this.elements.self);\n\n for (let i = 0; i < domElements.length; i += 1) {\n const domElement = domElements[i];\n const elementConfigCandidates = elementsConfig.filter(\n (singleConfig) =>\n domElement.getAttribute('data-js-element') === singleConfig.selector\n );\n\n const [elementConfig] = elementConfigCandidates;\n\n if (elementConfig) {\n if (typeof this.elements[elementConfig.id] === 'undefined') {\n this.elements[elementConfig.id] = domElement;\n } else {\n if (typeof this.elements[elementConfig.id].push === 'undefined') {\n this.elements[elementConfig.id] = [this.elements[elementConfig.id]];\n }\n this.elements[elementConfig.id].push(domElement);\n }\n }\n }\n\n /*\n * Append a attribute \"asList\" to each element/s in this.elements\n * which is always an array no matter if element/s is an array\n * or a single HTMLElement\n */\n\n const asList = (obj) => (typeof obj.push === 'undefined' ? [obj] : obj);\n Object.values(this.elements).forEach((obj) => {\n obj.asList = asList(obj); // eslint-disable-line no-param-reassign\n });\n }\n}\n\nexport default BaseModule;\n","'use strict';\nvar DESCRIPTORS = require('../internals/descriptors');\nvar uncurryThis = require('../internals/function-uncurry-this');\nvar call = require('../internals/function-call');\nvar fails = require('../internals/fails');\nvar objectKeys = require('../internals/object-keys');\nvar getOwnPropertySymbolsModule = require('../internals/object-get-own-property-symbols');\nvar propertyIsEnumerableModule = require('../internals/object-property-is-enumerable');\nvar toObject = require('../internals/to-object');\nvar IndexedObject = require('../internals/indexed-object');\n\n// eslint-disable-next-line es/no-object-assign -- safe\nvar $assign = Object.assign;\n// eslint-disable-next-line es/no-object-defineproperty -- required for testing\nvar defineProperty = Object.defineProperty;\nvar concat = uncurryThis([].concat);\n\n// `Object.assign` method\n// https://tc39.es/ecma262/#sec-object.assign\nmodule.exports = !$assign || fails(function () {\n // should have correct order of operations (Edge bug)\n if (DESCRIPTORS && $assign({ b: 1 }, $assign(defineProperty({}, 'a', {\n enumerable: true,\n get: function () {\n defineProperty(this, 'b', {\n value: 3,\n enumerable: false\n });\n }\n }), { b: 2 })).b !== 1) return true;\n // should work with symbols and should have deterministic property order (V8 bug)\n var A = {};\n var B = {};\n // eslint-disable-next-line es/no-symbol -- safe\n var symbol = Symbol();\n var alphabet = 'abcdefghijklmnopqrst';\n A[symbol] = 7;\n alphabet.split('').forEach(function (chr) { B[chr] = chr; });\n return $assign({}, A)[symbol] != 7 || objectKeys($assign({}, B)).join('') != alphabet;\n}) ? function assign(target, source) { // eslint-disable-line no-unused-vars -- required for `.length`\n var T = toObject(target);\n var argumentsLength = arguments.length;\n var index = 1;\n var getOwnPropertySymbols = getOwnPropertySymbolsModule.f;\n var propertyIsEnumerable = propertyIsEnumerableModule.f;\n while (argumentsLength > index) {\n var S = IndexedObject(arguments[index++]);\n var keys = getOwnPropertySymbols ? concat(objectKeys(S), getOwnPropertySymbols(S)) : objectKeys(S);\n var length = keys.length;\n var j = 0;\n var key;\n while (length > j) {\n key = keys[j++];\n if (!DESCRIPTORS || call(propertyIsEnumerable, S, key)) T[key] = S[key];\n }\n } return T;\n} : $assign;\n","var PROPER_FUNCTION_NAME = require('../internals/function-name').PROPER;\nvar fails = require('../internals/fails');\nvar whitespaces = require('../internals/whitespaces');\n\nvar non = '\\u200B\\u0085\\u180E';\n\n// check that a method works with the correct list\n// of whitespaces and has a correct name\nmodule.exports = function (METHOD_NAME) {\n return fails(function () {\n return !!whitespaces[METHOD_NAME]()\n || non[METHOD_NAME]() !== non\n || (PROPER_FUNCTION_NAME && whitespaces[METHOD_NAME].name !== METHOD_NAME);\n });\n};\n","var uncurryThis = require('../internals/function-uncurry-this');\nvar requireObjectCoercible = require('../internals/require-object-coercible');\nvar toString = require('../internals/to-string');\nvar whitespaces = require('../internals/whitespaces');\n\nvar replace = uncurryThis(''.replace);\nvar whitespace = '[' + whitespaces + ']';\nvar ltrim = RegExp('^' + whitespace + whitespace + '*');\nvar rtrim = RegExp(whitespace + whitespace + '*$');\n\n// `String.prototype.{ trim, trimStart, trimEnd, trimLeft, trimRight }` methods implementation\nvar createMethod = function (TYPE) {\n return function ($this) {\n var string = toString(requireObjectCoercible($this));\n if (TYPE & 1) string = replace(string, ltrim, '');\n if (TYPE & 2) string = replace(string, rtrim, '');\n return string;\n };\n};\n\nmodule.exports = {\n // `String.prototype.{ trimLeft, trimStart }` methods\n // https://tc39.es/ecma262/#sec-string.prototype.trimstart\n start: createMethod(1),\n // `String.prototype.{ trimRight, trimEnd }` methods\n // https://tc39.es/ecma262/#sec-string.prototype.trimend\n end: createMethod(2),\n // `String.prototype.trim` method\n // https://tc39.es/ecma262/#sec-string.prototype.trim\n trim: createMethod(3)\n};\n","// a string of all valid unicode whitespaces\nmodule.exports = '\\u0009\\u000A\\u000B\\u000C\\u000D\\u0020\\u00A0\\u1680\\u2000\\u2001\\u2002' +\n '\\u2003\\u2004\\u2005\\u2006\\u2007\\u2008\\u2009\\u200A\\u202F\\u205F\\u3000\\u2028\\u2029\\uFEFF';\n","var $ = require('../internals/export');\nvar assign = require('../internals/object-assign');\n\n// `Object.assign` method\n// https://tc39.es/ecma262/#sec-object.assign\n// eslint-disable-next-line es/no-object-assign -- required for testing\n$({ target: 'Object', stat: true, forced: Object.assign !== assign }, {\n assign: assign\n});\n","'use strict';\nvar $ = require('../internals/export');\nvar $trim = require('../internals/string-trim').trim;\nvar forcedStringTrimMethod = require('../internals/string-trim-forced');\n\n// `String.prototype.trim` method\n// https://tc39.es/ecma262/#sec-string.prototype.trim\n$({ target: 'String', proto: true, forced: forcedStringTrimMethod('trim') }, {\n trim: function trim() {\n return $trim(this);\n }\n});\n","/**\n * Creates a class-set with BEM modifiers for a component\n * @param {string} prefix Prefix classname for the component\n * @param {Array} modifier Array with modifiers\n * @return {string} Classnames in BEM format\n */\nexport default function myFunctionName(prefix, modifier) {\n const flattenArray = (arr) => {\n return arr.reduce(\n (acc, val) =>\n Array.isArray(val) ? acc.concat(flattenArray(val)) : acc.concat(val),\n []\n );\n };\n\n let classes = [prefix];\n const modifiers = flattenArray(modifier || []);\n\n const uniqueModifiers = modifiers.filter((m, i) => {\n return modifiers.indexOf(m) === i;\n });\n\n classes = [\n ...classes,\n ...uniqueModifiers\n .filter((suffix) => suffix)\n .map((suffix) => `${prefix}--${suffix}`)\n ];\n\n return classes.join(' ');\n}\n"],"names":["Button","label","type","disabled","variant","labelVariant","className","modifiers","onClick","hiddenLabel","icon","iconSize","isLoading","withModifier","title","id","size","tag","propTypes","PropTypes","defaultProps","undefined","Icon","xlinkHref","Image","alt","src","width","height","srcSet","sizes","lazy","media","as","useState","hasNativeLazyLoading","sethasNativeLazyLoading","useEffect","window","HTMLImageElement","prototype","obj","image","imageProps","role","Object","assign","loading","Link","href","html","target","hasArrow","externalIcon","Tag","Spinner","xmlns","viewBox","fill","d","geoLocationSupport","navigator","TeaserRegionsLocationButton","geoLocationLabel","onLocation","React","setIsLoading","handleGeoLocation","e","geolocation","getCurrentPosition","position","error","alert","message","TeaserRegionsFilter","searchHandle","searchLabel","searchValue","radiusLabel","radiusDefault","radiusOptions","formRef","useRef","inputValue","setInputValue","current","ref","onSubmit","name","value","onChange","defaultValue","placeholder","map","radius","key","isRequired","TeaserRegionsContainer","data","teasers","filter","errorMessage","state","Text","keys","letter","teaser","asset","url","formAction","TeaserRegions","element","init","config","JSON","parse","this","elements","self","dataset","jsModuleConfig","createRoot","render","BaseModule","children","dangerouslySetInnerHTML","__html","selector","document","slice","call","querySelectorAll","setInitialized","setAttribute","removeAttribute","elementsConfig","elementConfig","domElements","select","i","domElement","singleConfig","getAttribute","push","length","values","forEach","asList","DESCRIPTORS","uncurryThis","fails","objectKeys","getOwnPropertySymbolsModule","propertyIsEnumerableModule","toObject","IndexedObject","$assign","defineProperty","concat","module","exports","b","enumerable","get","A","B","symbol","Symbol","alphabet","split","chr","join","source","T","argumentsLength","arguments","index","getOwnPropertySymbols","f","propertyIsEnumerable","S","j","PROPER_FUNCTION_NAME","whitespaces","METHOD_NAME","requireObjectCoercible","toString","replace","whitespace","ltrim","RegExp","rtrim","createMethod","TYPE","$this","string","start","end","trim","$","stat","forced","$trim","proto","forcedStringTrimMethod","myFunctionName","prefix","modifier","flattenArray","arr","reduce","acc","val","Array","isArray","classes","uniqueModifiers","m","indexOf","suffix"],"sourceRoot":""}