{"version":3,"names":["sewWsEventsCss","SewWsEvents","constructor","hostRef","this","noGrid","noMargin","render","h","Host","key","class","headline","innerHTML","text","sewWsEventsItemCss","SewWsEventsItem","location","date","size","sewWsTabsCss","SewWsTabs","noContent","scrollLeftAriaLabel","scrollRightAriaLabel","activeTab","isScrollableToLeft","isScrollableToRight","activeItem","Array","from","host","children","filter","node","nodeName","map","item","index","isActiveTab","active","changeButtonHref","tab","anchorLink","tabId","saveButtonHref","linkElement","querySelector","buttonHref","getAttribute","itemButtonHref","setAttribute","checkScrollable","maxScrollLeft","tabNavRef","scrollWidth","clientWidth","scrollLeft","scrollToRight","rightEdgeOfScrollArea","scrollAreaElementRef","getBoundingClientRect","right","tabsArray","querySelectorAll","i","length","isNotVisible","scrollIntoView","block","inline","behavior","scrollToLeft","leftEdgeOfScrollArea","left","getHostChildren","hostChildren","getAnchorLink","url","window","href","hashtag","split","anchorLinkExists","some","setTimeout","yOffset","getHeaderHeight","scrolledHeight","y","top","scrollY","scrollTo","activeTabHandler","event","rectTabNav","rectTabItem","target","Math","round","width","componentDidUpdate","componentDidLoad","addEventListener","componentWillRender","ref","el","onClick","icon","height","onScroll","name","onSlotchange","sewWsTabsItemCss","SewWsTabsItem","watchActiveHandler","style","setProperty","scrollHeight","activated","emit"],"sources":["src/components/website-components/sew-ws-events/sew-ws-events.scss?tag=sew-ws-events&encapsulation=shadow","src/components/website-components/sew-ws-events/sew-ws-events.tsx","src/components/website-components/sew-ws-events/sew-ws-events-item.scss?tag=sew-ws-events-item&encapsulation=shadow","src/components/website-components/sew-ws-events/sew-ws-events-item.tsx","src/components/website-components/sew-ws-tabs/sew-ws-tabs.scss?tag=sew-ws-tabs&encapsulation=shadow","src/components/website-components/sew-ws-tabs/sew-ws-tabs.tsx","src/components/website-components/sew-ws-tabs-item/sew-ws-tabs-item.scss?tag=sew-ws-tabs-item&encapsulation=shadow","src/components/website-components/sew-ws-tabs-item/sew-ws-tabs-item.tsx"],"sourcesContent":["@include component-spacing-and-grid;\n\n:host {\n display: block;\n\n h2 {\n @include typo-ws-h2;\n\n margin: 0;\n }\n\n p {\n @include typo-ws-paragraph;\n\n margin: 24px 0 0;\n }\n\n .items-wrapper:not(.no-intro) {\n border-top: 5px solid currentColor;\n margin-top: 32px;\n }\n}\n\n:host(.inside-tab) {\n ::slotted(sew-ws-events-item:last-of-type) {\n border-bottom: 0;\n }\n}\n\n@include mq-1 {\n :host {\n p {\n margin-top: 32px;\n }\n\n .items-wrapper:not(.no-intro) {\n margin-top: 40px;\n }\n }\n}\n\n::slotted(sew-ws-button) {\n margin-top: 40px;\n}\n","import { Component, ComponentInterface, h, Host, Prop } from '@stencil/core';\n\n@Component({\n tag: 'sew-ws-events',\n styleUrl: 'sew-ws-events.scss',\n shadow: true,\n})\nexport class SewWsEvents implements ComponentInterface {\n @Prop({ reflect: true }) noGrid = false;\n @Prop({ reflect: true }) noMargin = false;\n\n /**\n * Headline\n */\n @Prop() headline: string;\n\n /**\n * Intro text\n */\n @Prop() text: string;\n\n render() {\n return (\n \n
\n {this.headline &&

}\n {this.text &&

{this.text}

}\n
\n \n
\n
\n
\n );\n }\n}\n","/* stylelint-disable selector-max-compound-selectors, max-nesting-depth */\n\n:host {\n border-bottom: 1px solid currentColor;\n display: block;\n padding: 32px 0;\n\n > .location-date {\n @include typo-ws-paragraph;\n\n margin: 0;\n }\n\n .link {\n margin: 8px 0 0;\n }\n\n ::slotted(a) {\n text-decoration: none;\n }\n}\n\n@include mq-1 {\n :host {\n padding: 24px 0;\n }\n}\n","import { Component, h, Host, Prop } from '@stencil/core';\n\n@Component({\n tag: 'sew-ws-events-item',\n styleUrl: 'sew-ws-events-item.scss',\n shadow: true,\n})\nexport class SewWsEventsItem {\n /**\n * Location\n */\n @Prop() location: string;\n /**\n * Date\n */\n @Prop() date: string;\n\n render() {\n return (\n \n
\n {this.location}, {this.date}\n
\n \n \n \n
\n );\n }\n}\n","/* stylelint-disable max-nesting-depth, selector-max-compound-selectors */\n@include component-spacing-and-grid;\n\n:host {\n display: block;\n position: relative;\n\n h2 {\n @include typo-ws-h2;\n\n margin: 0;\n\n + .tabs-nav-container {\n margin-top: 40px;\n }\n }\n\n .main-content-container {\n display: grid;\n grid-template-columns: 1fr;\n }\n\n // Preventing a Grid Blowout\n // https://css-tricks.com/preventing-a-grid-blowout/\n .tabs-wrapper {\n min-width: 0;\n }\n\n .tabs-nav-container {\n position: relative;\n overflow: hidden;\n\n > .scroll-btn {\n position: absolute;\n top: 0;\n border-width: 0;\n z-index: 1;\n padding: 0;\n color: $color-grey-01-dark;\n background-color: transparent;\n cursor: pointer;\n\n &.--hide {\n display: none;\n }\n\n &--left {\n left: -9px;\n\n &::before {\n content: '';\n pointer-events: none;\n position: absolute;\n top: 0;\n left: 18px;\n width: 50px;\n height: 100%;\n background: linear-gradient(to left, rgba($color-white, 0) 0%, rgba($color-white, 1) 80%);\n }\n }\n\n &--right {\n right: -9px;\n\n &::before {\n content: '';\n pointer-events: none;\n position: absolute;\n top: 0;\n right: 18px;\n width: 50px;\n height: 100%;\n background: linear-gradient(\n to right,\n rgba($color-white, 0) 0%,\n rgba($color-white, 1) 80%\n );\n }\n }\n\n .svg {\n background-color: $color-white;\n display: block;\n }\n }\n }\n\n .tabs-nav {\n @include typo-ws-h4;\n\n display: flex;\n gap: 40px;\n position: relative;\n scroll-behavior: smooth;\n list-style: none;\n margin: 0;\n padding: 0;\n overflow-x: scroll;\n white-space: nowrap;\n user-select: none;\n -ms-overflow-style: none;\n scrollbar-width: none;\n scroll-snap-type: inline mandatory;\n\n &::-webkit-scrollbar {\n display: none;\n }\n\n .tab {\n display: inline-block;\n scroll-snap-align: center;\n cursor: pointer;\n\n &.--active {\n color: $color-red;\n }\n }\n }\n\n .tab-content {\n margin-top: 20px;\n border-top: 5px solid $color-grey-01-dark;\n border-bottom: 2px solid $color-grey-01-dark;\n }\n\n slot[name='button'] {\n display: flex;\n gap: 20px;\n }\n\n ::slotted(sew-ws-button) {\n margin-top: 40px;\n }\n}\n\n:host([no-content]) {\n .tabs-nav {\n gap: 20px;\n }\n\n .tab-content {\n display: none;\n }\n}\n\n@include mq-1 {\n :host {\n > h2 {\n margin-bottom: 32px;\n }\n slot[name='button'] {\n flex-direction: column;\n }\n\n ::slotted(sew-ws-button) {\n margin-top: 0;\n }\n\n ::slotted(sew-ws-button:first-of-type) {\n margin-top: 40px;\n }\n }\n}\n\n@media print {\n :host {\n .tab-content {\n margin-top: 0;\n border-top: 0;\n border-bottom: 0;\n }\n\n slot[name='button'] {\n display: none;\n }\n }\n\n .tabs-nav-container {\n display: none;\n }\n\n ::slotted(sew-ws-tabs-item:first-child) {\n margin-top: 40px;\n }\n\n ::slotted(sew-ws-tabs-item) {\n margin-top: 60px;\n }\n}\n","import { Component, Host, h, State, Element, Prop } from '@stencil/core';\nimport { getHeaderHeight } from '../../../utils/getHeaderHeight';\n\n@Component({\n tag: 'sew-ws-tabs',\n styleUrl: 'sew-ws-tabs.scss',\n shadow: true,\n})\nexport class SewWsTabs {\n @Element() host: HTMLSewWsTabsElement;\n\n @Prop({ reflect: true }) noGrid = false;\n @Prop({ reflect: true }) noMargin = false;\n @Prop({ reflect: true }) noContent = false;\n @Prop() headline: string;\n @Prop() scrollLeftAriaLabel = 'scroll to left';\n @Prop() scrollRightAriaLabel = 'scroll to right';\n\n @State() activeTab = 0;\n @State() isScrollableToLeft = false;\n @State() isScrollableToRight = false;\n @State() hostChildren: HTMLSewWsTabsItemElement[];\n @State() anchorLink: string;\n\n private tabNavRef: HTMLElement;\n private scrollAreaElementRef: HTMLElement;\n private buttonHref: string;\n\n private activeItem = (): void => {\n Array.from(this.host.children)\n .filter(node => {\n return node.nodeName === 'SEW-WS-TABS-ITEM';\n })\n .map((item: HTMLSewWsTabsItemElement, index) => {\n if (this.isActiveTab(item, index)) {\n item.active = true;\n } else {\n item.active = false;\n }\n });\n\n this.changeButtonHref();\n };\n\n private isActiveTab = (tab: HTMLSewWsTabsItemElement, index): boolean => {\n return (\n (this.activeTab === index && !this.anchorLink) ||\n (this.anchorLink && tab.tabId === this.anchorLink)\n );\n };\n\n private activeTabHandler(index: number, event: Event): void {\n const rectTabNav = this.tabNavRef.getBoundingClientRect();\n const rectTabItem = (event.target as HTMLElement).getBoundingClientRect();\n\n if (rectTabNav.right < Math.round(rectTabItem.right)) {\n this.tabNavRef.scrollLeft += rectTabItem.width;\n } else if (rectTabNav.left > rectTabItem.left) {\n this.tabNavRef.scrollLeft -= rectTabItem.width;\n }\n\n this.activeTab = index;\n // reset anchor link for manual tab change\n this.anchorLink = null;\n this.activeItem();\n }\n\n private saveButtonHref = (): void => {\n const linkElement = this.host.querySelector('sew-ws-button:first-of-type a');\n\n if (linkElement) {\n this.buttonHref = linkElement.getAttribute('href');\n }\n };\n\n private changeButtonHref = (): void => {\n const itemButtonHref = this.host.querySelector(\n 'sew-ws-tabs-item:nth-child(' + (this.activeTab + 1) + ')'\n );\n const buttonHref = itemButtonHref.getAttribute('button-href');\n const linkElement = this.host.querySelector('sew-ws-button:first-of-type a');\n\n if (buttonHref && linkElement) {\n linkElement.setAttribute('href', this.buttonHref + buttonHref);\n }\n };\n\n private checkScrollable = () => {\n const maxScrollLeft = this.tabNavRef.scrollWidth - this.tabNavRef.clientWidth;\n\n if (this.tabNavRef.scrollLeft === 0) {\n this.isScrollableToLeft = false;\n } else {\n this.isScrollableToLeft = true;\n }\n\n if (this.tabNavRef.scrollLeft >= maxScrollLeft) {\n this.isScrollableToRight = false;\n } else {\n this.isScrollableToRight = true;\n }\n };\n\n private scrollToRight = () => {\n const rightEdgeOfScrollArea = this.scrollAreaElementRef.getBoundingClientRect().right;\n const tabsArray = this.scrollAreaElementRef.querySelectorAll('div');\n\n for (let i = 0; i < tabsArray.length; i++) {\n const tab = tabsArray[i];\n const isNotVisible = tab.getBoundingClientRect().right - 1 > rightEdgeOfScrollArea;\n\n if (isNotVisible) {\n tab.scrollIntoView({ block: 'nearest', inline: 'end', behavior: 'smooth' });\n break;\n }\n }\n };\n\n private scrollToLeft = () => {\n const leftEdgeOfScrollArea = this.scrollAreaElementRef.getBoundingClientRect().left;\n const tabsArray = this.scrollAreaElementRef.querySelectorAll('div');\n\n for (let i = tabsArray.length - 1; i >= 0; i--) {\n const tab = tabsArray[i];\n const isNotVisible = tab.getBoundingClientRect().left + 1 < leftEdgeOfScrollArea;\n\n if (isNotVisible) {\n tab.scrollIntoView({ block: 'nearest', inline: 'start', behavior: 'smooth' });\n break;\n }\n }\n };\n\n componentDidUpdate(): void {\n this.checkScrollable();\n }\n\n componentDidLoad(): void {\n this.saveButtonHref();\n this.getAnchorLink();\n this.activeItem();\n this.checkScrollable();\n window.addEventListener('hashchange', () => this.getAnchorLink(), false);\n }\n\n private getHostChildren = (): void => {\n this.hostChildren = [...Array.from(this.host.children)] as HTMLSewWsTabsItemElement[];\n };\n\n private getAnchorLink = (): void => {\n const url = window.location.href;\n const hashtag = url.split('#')[1];\n\n // check if anchorLink is in hostChildren\n const anchorLinkExists = this.hostChildren.some(item => {\n return item.tabId && item.tabId === hashtag;\n });\n\n if (anchorLinkExists) {\n this.anchorLink = hashtag;\n this.activeItem();\n setTimeout(() => {\n const yOffset = getHeaderHeight().scrolledHeight + 30;\n const y = this.host.getBoundingClientRect().top + window.scrollY - yOffset;\n\n window.scrollTo({ top: y, behavior: 'smooth' });\n }, 300);\n }\n };\n\n componentWillRender(): void {\n this.getHostChildren();\n }\n\n render() {\n return (\n \n
\n
\n {this.headline &&

}\n
(this.scrollAreaElementRef = el)}>\n \n \n \n\n (this.tabNavRef = ref)}\n class=\"tabs-nav\"\n >\n {this.hostChildren.map((tab: HTMLSewWsTabsItemElement, index) => {\n return (\n this.activeTabHandler(index, event)}\n innerHTML={tab.name}\n data-sew-trackme-event-category={tab.getAttribute(\n 'data-sew-trackme-event-category'\n )}\n data-sew-trackme-event-object={tab.getAttribute(\n 'data-sew-trackme-event-object'\n )}\n data-sew-trackme-event-action={tab.getAttribute(\n 'data-sew-trackme-event-action'\n )}\n >
\n );\n })}\n
\n\n \n \n \n
\n\n
\n \n
\n\n \n \n \n
\n );\n }\n}\n",":host {\n display: block;\n height: 0;\n overflow: hidden;\n position: relative;\n z-index: 1;\n}\n\n:host([active]) {\n animation: open 500ms forwards;\n}\n\n::slotted(sew-ws-image-text),\n::slotted(sew-ws-table) {\n margin: 60px 0;\n}\n::slotted(sew-ws-richtext),\n::slotted(sew-ws-linklist),\n::slotted(sew-ws-teaser) {\n margin: 40px 0;\n}\n\n::slotted(sew-ws-richtext) {\n width: 66%;\n}\n\n@include mq-2 {\n ::slotted(sew-ws-image-text),\n ::slotted(sew-ws-table) {\n margin: 40px 0;\n }\n ::slotted(sew-ws-richtext),\n ::slotted(sew-ws-linklist),\n ::slotted(sew-ws-teaser) {\n margin: 32px 0;\n width: auto;\n }\n}\n\n@keyframes open {\n from {\n opacity: 0;\n height: var(--tab-item-height);\n }\n\n to {\n overflow: visible;\n height: auto;\n opacity: 1;\n }\n}\n\n.print-headline {\n display: none;\n}\n\n@media print {\n .print-headline {\n @include typo-ws-h4;\n\n display: block;\n border-bottom: 5px solid $color-grey-01-dark;\n padding-bottom: 12px;\n margin: 0;\n page-break-after: avoid;\n }\n\n :host {\n height: auto;\n }\n}\n","import { Component, Host, h, Prop, Watch, Element, Event, EventEmitter } from '@stencil/core';\n\n@Component({\n tag: 'sew-ws-tabs-item',\n styleUrl: 'sew-ws-tabs-item.scss',\n shadow: true,\n})\nexport class SewWsTabsItem {\n @Element() host: HTMLSewWsTabsItemElement;\n\n @Prop() name: string;\n @Prop({ reflect: true }) active: boolean;\n @Prop() tabId: string;\n @Prop({ reflect: true }) buttonHref: string;\n\n @Event() activated: EventEmitter;\n\n @Watch('active')\n watchActiveHandler(): void {\n this.host.style.setProperty('--tab-item-height', this.host.scrollHeight + 'px');\n\n if (this.active) {\n this.activated.emit(this.name);\n }\n }\n\n render() {\n return (\n \n

\n \n
\n );\n }\n}\n"],"mappings":"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","ignoreList":[]}